Skip to content
Snippets Groups Projects
Verified Commit 67d53488 authored by Volker Schukai's avatar Volker Schukai :alien:
Browse files

fix: missing files

parent a4ddf570
No related branches found
No related tags found
No related merge requests found
Showing
with 2578 additions and 11 deletions
{{ range .Versions }}
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }}
{{ range .CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}{{ end -}}
{{ end -}}
style: gitlab
template: CHANGELOG.tpl.md
info:
title: CHANGELOG
repository_url: https://gitlab.schukai.com/oss/libraries/go/application/configuration
options:
commits:
filters:
Type:
- feat
- fix
- doc
- refactor
- perf
- test
- chore
## deprecated types and typos
- docs
- documentation
- feat
- added
- add
- bugfix
- revert
- update
- updates
- change
- changed
commit_groups:
title_maps:
feat: Add Features
fix: Bug Fixes
doc: Documentation
refactor: Code Refactoring
perf: Performance Improvements
test: Tests
## Chore is used for all other changes that don't fit in the other categories
chore: Changes
## deprecated types and typos
docs: Documentation
documentation: Documentation
added: Add Features
add: Add Features
bugfix: Bug Fixes
revert: Reverts
update: Changes
updates: Changes
change: Changes
changed: Changes
header:
pattern: "^(\\w*)(?:\\(([\\w\\$\\.\\-\\*\\s]*)\\))?\\:\\s(.*)$"
pattern_maps:
- Type
- Scope
- Subject
notes:
keywords:
- BREAKING CHANGE
...@@ -154,3 +154,4 @@ devenv.local.nix ...@@ -154,3 +154,4 @@ devenv.local.nix
/Session.vim /Session.vim
.direnv/ .direnv/
/documentation/manual/de/book/
# RFC: [Titel deines Vorschlags]
Kurze Beschreibung des Inhalts und Ziels dieses RFC.
### Zweig:
In welchem Zweig ist/wird der RFC implementiert?
## Reviewer
Liste Personen oder Teams auf, die für das Review dieses RFC verantwortlich sind.
- [ ] @reviewer1
## Hintergrund
Erläutere den Kontext und die Probleme, die zur Erstellung dieses RFC geführt haben.
## Grundlegende Beispiele
Biete einfache Beispiele, die die vorgeschlagenen Änderungen veranschaulichen.
## Motivation
Beschreibe, warum diese Änderung notwendig ist. Welche Probleme werden gelöst? Was sind die Vorteile?
## Vorgeschlagene Lösung
Detaillierte Beschreibung der vorgeschlagenen Features und Funktionen.
## Detailliertes Design und Umsetzung
Erkläre technische Details, Implementierungsschritte und wie die Lösung integriert werden soll.
## Roadmap und benötigte Ressourcen
Skizziere die geplanten Schritte zur Implementierung und liste benötigte Ressourcen auf.
## Vor- und Nachteile / Einschränkungen
Diskutiere die möglichen Nachteile oder Limitationen des Vorschlags sowie die Risiken.
## Alternativen
Stelle andere überlegte Lösungen vor und erkläre, warum sie verworfen oder nicht berücksichtigt wurden.
## Neue und geänderte Konfigurationswerte
- **Neue Werte**
- **Geänderte Werte**
- **Beispielkonfigurationen**
## Schulungsmaßnahmen
Beschreibe, wie du planst, das Team und die Nutzer über die Änderungen zu informieren und zu schulen.
## Legal und Privacy
Beschreibe die Auswirkungen auf rechtliche und Datenschutzaspekte.
## Risiken
Beschreibe mögliche Risiken und wie sie minimiert werden können.
## Offene Fragen
Diskutiere Aspekte, die noch geklärt werden müssen und bei denen Feedback erforderlich ist.
## Nicht betroffene Funktionalität
Identifiziere Bereiche, die durch diesen RFC nicht beeinflusst werden.
## Zukünftiger Anwendungsbereich
Betrachte zukünftige Erweiterungen oder Verbesserungen, die auf diesem Vorschlag aufbauen könnten.
## Patches und Tests
- **Patch-Verfügbarkeit**
- **Testpläne**
## Implementierung
Nachdem das Projekt implementiert wurde, sollte dieser Abschnitt Folgendes enthalten:
1. Die Version(en), in die das Feature eingefügt wurde.
2. Einen Link zu den entsprechenden Git-Commits.
3. Einen Link zum Handbuch-Eintrag für das Feature.
4. Einen Link zum Abschnitt mit den Sprachspezifikationen (falls vorhanden).
## Referenzen
Verweise auf relevante externe Diskussionen, Dokumente oder andere RFCs.
## Abgelehnte Features
Erläutere, welche Features vorgeschlagen, aber nicht angenommen wurden, und warum.
# Gedanken und Ideen
Beschreibe Deine Gedanken und Ideen, die Du mit anderen teilen möchtest. Dieses Template ist für
allgemeine Diskussionen und Brainstorming gedacht. Wenn Du eine spezifische Änderung oder ein neues
Feature vorschlagen möchtest, verwende bitte das [RFC-Template](./rfc.md).
[book]
title = "Agenor - Handbuch"
authors = ["schukai GmbH"]
language = "de"
src = "source"
[build]
build-dir = "book"
create-missing = false
use-default-preprocessors = true
extra-watch-dirs = []
[preprocessor.graphviz]
command = "mdbook-graphviz"
[output.html.playground]
editable = true
[preprocessor.emojicodes]
[preprocessor.admonish]
command = "mdbook-admonish"
assets_version = "3.0.0" # do not edit: managed by `mdbook-admonish install`
[preprocessor.mermaid]
command = "mdbook-mermaid"
[output.html]
additional-css = ["./mdbook-admonish.css"]
additional-js = ["mermaid.min.js", "mermaid-init.js"]
default-theme = "ayu"
preferred-dark-theme = "navy"
curly-quotes = true
mathjax-support = false
copy-fonts = true
no-section-label = false
site-url = "/example-book/"
cname = "myproject.rs"
input-404 = "404.md"
[preprocessor.d2]
# path to d2 binary.
# optional. default is "d2" (ie. on the path).
path = "d2"
# layout engine for diagrams. See https://github.com/terrastruct/d2#plugins.
# optional. default is "dagre".
layout = "dagre"
# whether to use inline svg when rendering.
# if 'false', separate files will be generated in src/<output-dir> and referenced.
# optional. default is 'true'
inline = true
# output directory relative to `src/` for generated diagrams.
# This is ignored if 'inline' is 'true'.
# optional. default is "d2".
output-dir = "d2"
@charset "UTF-8";
:root {
--md-admonition-icon--admonish-note: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z'/></svg>");
--md-admonition-icon--admonish-abstract: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M17 9H7V7h10m0 6H7v-2h10m-3 6H7v-2h7M12 3a1 1 0 0 1 1 1 1 1 0 0 1-1 1 1 1 0 0 1-1-1 1 1 0 0 1 1-1m7 0h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2z'/></svg>");
--md-admonition-icon--admonish-info: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13 9h-2V7h2m0 10h-2v-6h2m-1-9A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2z'/></svg>");
--md-admonition-icon--admonish-tip: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M17.66 11.2c-.23-.3-.51-.56-.77-.82-.67-.6-1.43-1.03-2.07-1.66C13.33 7.26 13 4.85 13.95 3c-.95.23-1.78.75-2.49 1.32-2.59 2.08-3.61 5.75-2.39 8.9.04.1.08.2.08.33 0 .22-.15.42-.35.5-.23.1-.47.04-.66-.12a.58.58 0 0 1-.14-.17c-1.13-1.43-1.31-3.48-.55-5.12C5.78 10 4.87 12.3 5 14.47c.06.5.12 1 .29 1.5.14.6.41 1.2.71 1.73 1.08 1.73 2.95 2.97 4.96 3.22 2.14.27 4.43-.12 6.07-1.6 1.83-1.66 2.47-4.32 1.53-6.6l-.13-.26c-.21-.46-.77-1.26-.77-1.26m-3.16 6.3c-.28.24-.74.5-1.1.6-1.12.4-2.24-.16-2.9-.82 1.19-.28 1.9-1.16 2.11-2.05.17-.8-.15-1.46-.28-2.23-.12-.74-.1-1.37.17-2.06.19.38.39.76.63 1.06.77 1 1.98 1.44 2.24 2.8.04.14.06.28.06.43.03.82-.33 1.72-.93 2.27z'/></svg>");
--md-admonition-icon--admonish-success: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='m9 20.42-6.21-6.21 2.83-2.83L9 14.77l9.88-9.89 2.83 2.83L9 20.42z'/></svg>");
--md-admonition-icon--admonish-question: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='m15.07 11.25-.9.92C13.45 12.89 13 13.5 13 15h-2v-.5c0-1.11.45-2.11 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41a2 2 0 0 0-2-2 2 2 0 0 0-2 2H8a4 4 0 0 1 4-4 4 4 0 0 1 4 4 3.2 3.2 0 0 1-.93 2.25M13 19h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10c0-5.53-4.5-10-10-10z'/></svg>");
--md-admonition-icon--admonish-warning: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13 14h-2V9h2m0 9h-2v-2h2M1 21h22L12 2 1 21z'/></svg>");
--md-admonition-icon--admonish-failure: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 6.91 17.09 4 12 9.09 6.91 4 4 6.91 9.09 12 4 17.09 6.91 20 12 14.91 17.09 20 20 17.09 14.91 12 20 6.91z'/></svg>");
--md-admonition-icon--admonish-danger: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M11 15H6l7-14v8h5l-7 14v-8z'/></svg>");
--md-admonition-icon--admonish-bug: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M14 12h-4v-2h4m0 6h-4v-2h4m6-6h-2.81a5.985 5.985 0 0 0-1.82-1.96L17 4.41 15.59 3l-2.17 2.17a6.002 6.002 0 0 0-2.83 0L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8z'/></svg>");
--md-admonition-icon--admonish-example: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 13v-2h14v2H7m0 6v-2h14v2H7M7 7V5h14v2H7M3 8V5H2V4h2v4H3m-1 9v-1h3v4H2v-1h2v-.5H3v-1h1V17H2m2.25-7a.75.75 0 0 1 .75.75c0 .2-.08.39-.21.52L3.12 13H5v1H2v-.92L4 11H2v-1h2.25z'/></svg>");
--md-admonition-icon--admonish-quote: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M14 17h3l2-4V7h-6v6h3M6 17h3l2-4V7H5v6h3l-2 4z'/></svg>");
--md-details-icon: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.42Z'/></svg>");
}
:is(.admonition) {
display: flow-root;
margin: 1.5625em 0;
padding: 0 1.2rem;
color: var(--fg);
page-break-inside: avoid;
background-color: var(--bg);
border: 0 solid black;
border-inline-start-width: 0.4rem;
border-radius: 0.2rem;
box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, 0.05), 0 0 0.1rem rgba(0, 0, 0, 0.1);
}
@media print {
:is(.admonition) {
box-shadow: none;
}
}
:is(.admonition) > * {
box-sizing: border-box;
}
:is(.admonition) :is(.admonition) {
margin-top: 1em;
margin-bottom: 1em;
}
:is(.admonition) > .tabbed-set:only-child {
margin-top: 0;
}
html :is(.admonition) > :last-child {
margin-bottom: 1.2rem;
}
a.admonition-anchor-link {
display: none;
position: absolute;
left: -1.2rem;
padding-right: 1rem;
}
a.admonition-anchor-link:link, a.admonition-anchor-link:visited {
color: var(--fg);
}
a.admonition-anchor-link:link:hover, a.admonition-anchor-link:visited:hover {
text-decoration: none;
}
a.admonition-anchor-link::before {
content: "§";
}
:is(.admonition-title, summary.admonition-title) {
position: relative;
min-height: 4rem;
margin-block: 0;
margin-inline: -1.6rem -1.2rem;
padding-block: 0.8rem;
padding-inline: 4.4rem 1.2rem;
font-weight: 700;
background-color: rgba(68, 138, 255, 0.1);
display: flex;
}
:is(.admonition-title, summary.admonition-title) p {
margin: 0;
}
html :is(.admonition-title, summary.admonition-title):last-child {
margin-bottom: 0;
}
:is(.admonition-title, summary.admonition-title)::before {
position: absolute;
top: 0.625em;
inset-inline-start: 1.6rem;
width: 2rem;
height: 2rem;
background-color: #448aff;
mask-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"></svg>');
-webkit-mask-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"></svg>');
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-size: contain;
content: "";
}
:is(.admonition-title, summary.admonition-title):hover a.admonition-anchor-link {
display: initial;
}
details.admonition > summary.admonition-title::after {
position: absolute;
top: 0.625em;
inset-inline-end: 1.6rem;
height: 2rem;
width: 2rem;
background-color: currentcolor;
mask-image: var(--md-details-icon);
-webkit-mask-image: var(--md-details-icon);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-size: contain;
content: "";
transform: rotate(0deg);
transition: transform 0.25s;
}
details[open].admonition > summary.admonition-title::after {
transform: rotate(90deg);
}
:is(.admonition):is(.admonish-note) {
border-color: #448aff;
}
:is(.admonish-note) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(68, 138, 255, 0.1);
}
:is(.admonish-note) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #448aff;
mask-image: var(--md-admonition-icon--admonish-note);
-webkit-mask-image: var(--md-admonition-icon--admonish-note);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-abstract, .admonish-summary, .admonish-tldr) {
border-color: #00b0ff;
}
:is(.admonish-abstract, .admonish-summary, .admonish-tldr) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(0, 176, 255, 0.1);
}
:is(.admonish-abstract, .admonish-summary, .admonish-tldr) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #00b0ff;
mask-image: var(--md-admonition-icon--admonish-abstract);
-webkit-mask-image: var(--md-admonition-icon--admonish-abstract);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-info, .admonish-todo) {
border-color: #00b8d4;
}
:is(.admonish-info, .admonish-todo) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(0, 184, 212, 0.1);
}
:is(.admonish-info, .admonish-todo) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #00b8d4;
mask-image: var(--md-admonition-icon--admonish-info);
-webkit-mask-image: var(--md-admonition-icon--admonish-info);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-tip, .admonish-hint, .admonish-important) {
border-color: #00bfa5;
}
:is(.admonish-tip, .admonish-hint, .admonish-important) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(0, 191, 165, 0.1);
}
:is(.admonish-tip, .admonish-hint, .admonish-important) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #00bfa5;
mask-image: var(--md-admonition-icon--admonish-tip);
-webkit-mask-image: var(--md-admonition-icon--admonish-tip);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-success, .admonish-check, .admonish-done) {
border-color: #00c853;
}
:is(.admonish-success, .admonish-check, .admonish-done) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(0, 200, 83, 0.1);
}
:is(.admonish-success, .admonish-check, .admonish-done) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #00c853;
mask-image: var(--md-admonition-icon--admonish-success);
-webkit-mask-image: var(--md-admonition-icon--admonish-success);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-question, .admonish-help, .admonish-faq) {
border-color: #64dd17;
}
:is(.admonish-question, .admonish-help, .admonish-faq) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(100, 221, 23, 0.1);
}
:is(.admonish-question, .admonish-help, .admonish-faq) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #64dd17;
mask-image: var(--md-admonition-icon--admonish-question);
-webkit-mask-image: var(--md-admonition-icon--admonish-question);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-warning, .admonish-caution, .admonish-attention) {
border-color: #ff9100;
}
:is(.admonish-warning, .admonish-caution, .admonish-attention) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(255, 145, 0, 0.1);
}
:is(.admonish-warning, .admonish-caution, .admonish-attention) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #ff9100;
mask-image: var(--md-admonition-icon--admonish-warning);
-webkit-mask-image: var(--md-admonition-icon--admonish-warning);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-failure, .admonish-fail, .admonish-missing) {
border-color: #ff5252;
}
:is(.admonish-failure, .admonish-fail, .admonish-missing) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(255, 82, 82, 0.1);
}
:is(.admonish-failure, .admonish-fail, .admonish-missing) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #ff5252;
mask-image: var(--md-admonition-icon--admonish-failure);
-webkit-mask-image: var(--md-admonition-icon--admonish-failure);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-danger, .admonish-error) {
border-color: #ff1744;
}
:is(.admonish-danger, .admonish-error) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(255, 23, 68, 0.1);
}
:is(.admonish-danger, .admonish-error) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #ff1744;
mask-image: var(--md-admonition-icon--admonish-danger);
-webkit-mask-image: var(--md-admonition-icon--admonish-danger);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-bug) {
border-color: #f50057;
}
:is(.admonish-bug) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(245, 0, 87, 0.1);
}
:is(.admonish-bug) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #f50057;
mask-image: var(--md-admonition-icon--admonish-bug);
-webkit-mask-image: var(--md-admonition-icon--admonish-bug);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-example) {
border-color: #7c4dff;
}
:is(.admonish-example) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(124, 77, 255, 0.1);
}
:is(.admonish-example) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #7c4dff;
mask-image: var(--md-admonition-icon--admonish-example);
-webkit-mask-image: var(--md-admonition-icon--admonish-example);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
:is(.admonition):is(.admonish-quote, .admonish-cite) {
border-color: #9e9e9e;
}
:is(.admonish-quote, .admonish-cite) > :is(.admonition-title, summary.admonition-title) {
background-color: rgba(158, 158, 158, 0.1);
}
:is(.admonish-quote, .admonish-cite) > :is(.admonition-title, summary.admonition-title)::before {
background-color: #9e9e9e;
mask-image: var(--md-admonition-icon--admonish-quote);
-webkit-mask-image: var(--md-admonition-icon--admonish-quote);
mask-repeat: no-repeat;
-webkit-mask-repeat: no-repeat;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
}
.navy :is(.admonition) {
background-color: var(--sidebar-bg);
}
.ayu :is(.admonition),
.coal :is(.admonition) {
background-color: var(--theme-hover);
}
.rust :is(.admonition) {
background-color: var(--sidebar-bg);
color: var(--sidebar-fg);
}
.rust .admonition-anchor-link:link, .rust .admonition-anchor-link:visited {
color: var(--sidebar-fg);
}
mermaid.initialize({startOnLoad:true});
Source diff could not be displayed: it is too large. Options to address this: view the blob.
# Einleitung
# Erste Schritte
\ No newline at end of file
# 404 Not found
Die angeforderte Seite gibt es nicht. Entweder ist der Link
falsch oder die Seite wurde entfernt.
Hier geht es zur [Startseite](/).
\ No newline at end of file
# Summary
* [Einleitung](01-Einleitung.md)
* [Erste Schritte](02-Erste-Schritte.md)
---
* [imprint](imprint.md)
# Impressum
## Verantwortlich für den Inhalt
schukai GmbH<br>
Eichenstraße 26<br>
82290 Landsberied<br>
Deutschland<br>
<br>
info@schukai.com<br>
+49-8141-5098888<br>
[schukai.com](https://legal.schukai.com/)
\ No newline at end of file
"use strict";
// Fix back button cache problem
window.onunload = function () {};
// Global variable, shared between modules
function playground_text(playground, hidden = true) {
let code_block = playground.querySelector("code");
if (window.ace && code_block.classList.contains("editable")) {
let editor = window.ace.edit(code_block);
return editor.getValue();
} else if (hidden) {
return code_block.textContent;
} else {
return code_block.innerText;
}
}
(function codeSnippets() {
function run_javascript_code(code_block) {
var result_block = code_block.querySelector(".result");
if (!result_block) {
result_block = document.createElement("code");
result_block.className = "result hljs language-bash";
code_block.append(result_block);
}
let text = playground_text(code_block);
let classes = code_block.querySelector("code").classList;
let edition = "2015";
if (classes.contains("edition2018")) {
edition = "2018";
} else if (classes.contains("edition2021")) {
edition = "2021";
}
var params = {
version: "stable",
optimize: "0",
code: text,
edition: edition,
};
if (text.indexOf("#![feature") !== -1) {
params.version = "nightly";
}
result_block.innerText = "Running...";
// NOTE: Actual Code Prasing logic
try {
(() => {
const actual_console_log = console.log;
let out = "";
// NOTE: Overriding the default console.log function
console.log = (...args) => {
args.map((arg) => {
// NOTE: JSON.stringify objects for readability.
if (typeof arg === "object") {
out = out + JSON.stringify(arg, null, 2);
} else {
out = out + arg;
}
});
out = out + "\n";
// NOTE: Returning and also calling the actual_console_log. But it is not required.
return actual_console_log(...args);
};
eval(text);
result_block.innerText = out;
})();
} catch (error) {
result_block.innerText = error;
}
}
// Syntax highlighting Configuration
hljs.configure({
tabReplace: " ", // 4 spaces
languages: [], // Languages used for auto-detection
});
let code_nodes = Array.from(document.querySelectorAll("code"))
// Don't highlight `inline code` blocks in headers.
.filter(function (node) {
return !node.parentElement.classList.contains("header");
});
if (window.ace) {
// language-javascript class needs to be removed for editable
// blocks or highlightjs will capture events
code_nodes
.filter(function (node) {
return node.classList.contains("editable");
})
.forEach(function (block) {
// block.classList.remove("language-javascript");
});
code_nodes
.filter(function (node) {
return !node.classList.contains("editable");
})
.forEach(function (block) {
hljs.highlightBlock(block);
});
} else {
code_nodes.forEach(function (block) {
hljs.highlightBlock(block);
});
}
// Adding the hljs class gives code blocks the color css
// even if highlighting doesn't apply
code_nodes.forEach(function (block) {
block.classList.add("hljs");
});
Array.from(document.querySelectorAll("code.language-javascript")).forEach(
function (block) {
// window.ace.edit(block, {
// mode: "ace/mode/javascript",
// selectionStyle: "text",
// });
var lines = Array.from(block.querySelectorAll(".boring"));
// If no lines were hidden, return
if (!lines.length) {
return;
}
block.classList.add("hide-boring");
var buttons = document.createElement("div");
buttons.className = "buttons";
buttons.innerHTML =
'<button class="fa fa-eye" title="Show hidden lines" aria-label="Show hidden lines"></button>';
// add expand button
var pre_block = block.parentNode;
pre_block.insertBefore(buttons, pre_block.firstChild);
pre_block
.querySelector(".buttons")
.addEventListener("click", function (e) {
if (e.target.classList.contains("fa-eye")) {
e.target.classList.remove("fa-eye");
e.target.classList.add("fa-eye-slash");
e.target.title = "Hide lines";
e.target.setAttribute("aria-label", e.target.title);
block.classList.remove("hide-boring");
} else if (e.target.classList.contains("fa-eye-slash")) {
e.target.classList.remove("fa-eye-slash");
e.target.classList.add("fa-eye");
e.target.title = "Show hidden lines";
e.target.setAttribute("aria-label", e.target.title);
block.classList.add("hide-boring");
}
});
},
);
// NOTE: Adding playground class to code block parent
Array.from(document.querySelectorAll("code.editable")).forEach(function (
editable_code,
) {
editable_code.parentNode.classList.add("playground");
});
if (window.playground_copyable) {
Array.from(document.querySelectorAll("pre code")).forEach(function (block) {
var pre_block = block.parentNode;
// HACK: To make ever code block playable. By adding the `playground` class
// pre_block.classList.add("playground");
if (!pre_block.classList.contains("playground")) {
var buttons = pre_block.querySelector(".buttons");
if (!buttons) {
buttons = document.createElement("div");
buttons.className = "buttons";
pre_block.insertBefore(buttons, pre_block.firstChild);
}
var clipButton = document.createElement("button");
clipButton.className = "fa fa-copy clip-button";
clipButton.title = "Copy to clipboard";
clipButton.setAttribute("aria-label", clipButton.title);
clipButton.innerHTML = '<i class="tooltiptext"></i>';
buttons.insertBefore(clipButton, buttons.firstChild);
}
});
}
// NOTE: Adding the Play button in the Code Block.
// Process playground code blocks
Array.from(document.querySelectorAll(".playground")).forEach(function (
pre_block,
) {
// Add play button
var buttons = pre_block.querySelector(".buttons");
if (!buttons) {
buttons = document.createElement("div");
buttons.className = "buttons";
pre_block.insertBefore(buttons, pre_block.firstChild);
}
var runCodeButton = document.createElement("button");
runCodeButton.className = "fa fa-play play-button";
runCodeButton.hidden = true;
runCodeButton.title = "Run this code";
runCodeButton.setAttribute("aria-label", runCodeButton.title);
buttons.insertBefore(runCodeButton, buttons.firstChild);
runCodeButton.addEventListener("click", function (e) {
run_javascript_code(pre_block);
});
if (window.playground_copyable) {
var copyCodeClipboardButton = document.createElement("button");
copyCodeClipboardButton.className = "fa fa-copy clip-button";
copyCodeClipboardButton.innerHTML = '<i class="tooltiptext"></i>';
copyCodeClipboardButton.title = "Copy to clipboard";
copyCodeClipboardButton.setAttribute(
"aria-label",
copyCodeClipboardButton.title,
);
buttons.insertBefore(copyCodeClipboardButton, buttons.firstChild);
}
let code_block = pre_block.querySelector("code");
if (window.ace && code_block.classList.contains("editable")) {
var undoChangesButton = document.createElement("button");
undoChangesButton.className = "fa fa-history reset-button";
undoChangesButton.title = "Undo changes";
undoChangesButton.setAttribute("aria-label", undoChangesButton.title);
buttons.insertBefore(undoChangesButton, buttons.firstChild);
undoChangesButton.addEventListener("click", function () {
let editor = window.ace.edit(code_block);
editor.setValue(editor.originalCode);
editor.clearSelection();
});
}
});
})();
(function themes() {
var html = document.querySelector("html");
var themeToggleButton = document.getElementById("theme-toggle");
var themePopup = document.getElementById("theme-list");
var themeColorMetaTag = document.querySelector('meta[name="theme-color"]');
var stylesheets = {
ayuHighlight: document.querySelector("[href$='ayu-highlight.css']"),
tomorrowNight: document.querySelector("[href$='tomorrow-night.css']"),
highlight: document.querySelector("[href$='highlight.css']"),
};
function showThemes() {
themePopup.style.display = "block";
themeToggleButton.setAttribute("aria-expanded", true);
themePopup.querySelector("button#" + get_theme()).focus();
}
function updateThemeSelected() {
themePopup.querySelectorAll(".theme-selected").forEach(function (el) {
el.classList.remove("theme-selected");
});
themePopup
.querySelector("button#" + get_theme())
.classList.add("theme-selected");
}
function hideThemes() {
themePopup.style.display = "none";
themeToggleButton.setAttribute("aria-expanded", false);
themeToggleButton.focus();
}
function get_theme() {
var theme;
try {
theme = localStorage.getItem("mdbook-theme");
} catch (e) {}
if (theme === null || theme === undefined) {
return default_theme;
} else {
return theme;
}
}
function set_theme(theme, store = true) {
let ace_theme;
if (theme == "coal" || theme == "navy") {
stylesheets.ayuHighlight.disabled = true;
stylesheets.tomorrowNight.disabled = false;
stylesheets.highlight.disabled = true;
ace_theme = "ace/theme/tomorrow_night";
} else if (theme == "ayu") {
stylesheets.ayuHighlight.disabled = false;
stylesheets.tomorrowNight.disabled = true;
stylesheets.highlight.disabled = true;
ace_theme = "ace/theme/tomorrow_night";
} else {
stylesheets.ayuHighlight.disabled = true;
stylesheets.tomorrowNight.disabled = true;
stylesheets.highlight.disabled = false;
ace_theme = "ace/theme/dawn";
}
setTimeout(function () {
themeColorMetaTag.content = getComputedStyle(
document.body,
).backgroundColor;
}, 1);
if (window.ace && window.editors) {
window.editors.forEach(function (editor) {
editor.setTheme(ace_theme);
});
}
var previousTheme = get_theme();
if (store) {
try {
localStorage.setItem("mdbook-theme", theme);
} catch (e) {}
}
html.classList.remove(previousTheme);
html.classList.add(theme);
updateThemeSelected();
}
// Set theme
var theme = get_theme();
set_theme(theme, false);
themeToggleButton.addEventListener("click", function () {
if (themePopup.style.display === "block") {
hideThemes();
} else {
showThemes();
}
});
themePopup.addEventListener("click", function (e) {
var theme;
if (e.target.className === "theme") {
theme = e.target.id;
} else if (e.target.parentElement.className === "theme") {
theme = e.target.parentElement.id;
} else {
return;
}
set_theme(theme);
});
themePopup.addEventListener("focusout", function (e) {
// e.relatedTarget is null in Safari and Firefox on macOS (see workaround below)
if (
!!e.relatedTarget &&
!themeToggleButton.contains(e.relatedTarget) &&
!themePopup.contains(e.relatedTarget)
) {
hideThemes();
}
});
// Should not be needed, but it works around an issue on macOS & iOS: https://github.com/rust-lang/mdBook/issues/628
document.addEventListener("click", function (e) {
if (
themePopup.style.display === "block" &&
!themeToggleButton.contains(e.target) &&
!themePopup.contains(e.target)
) {
hideThemes();
}
});
document.addEventListener("keydown", function (e) {
if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
return;
}
if (!themePopup.contains(e.target)) {
return;
}
switch (e.key) {
case "Escape":
e.preventDefault();
hideThemes();
break;
case "ArrowUp":
e.preventDefault();
var li = document.activeElement.parentElement;
if (li && li.previousElementSibling) {
li.previousElementSibling.querySelector("button").focus();
}
break;
case "ArrowDown":
e.preventDefault();
var li = document.activeElement.parentElement;
if (li && li.nextElementSibling) {
li.nextElementSibling.querySelector("button").focus();
}
break;
case "Home":
e.preventDefault();
themePopup.querySelector("li:first-child button").focus();
break;
case "End":
e.preventDefault();
themePopup.querySelector("li:last-child button").focus();
break;
}
});
})();
(function sidebar() {
var html = document.querySelector("html");
var sidebar = document.getElementById("sidebar");
var sidebarLinks = document.querySelectorAll("#sidebar a");
var sidebarToggleButton = document.getElementById("sidebar-toggle");
var sidebarResizeHandle = document.getElementById("sidebar-resize-handle");
var firstContact = null;
function showSidebar() {
html.classList.remove("sidebar-hidden");
html.classList.add("sidebar-visible");
Array.from(sidebarLinks).forEach(function (link) {
link.setAttribute("tabIndex", 0);
});
sidebarToggleButton.setAttribute("aria-expanded", true);
sidebar.setAttribute("aria-hidden", false);
try {
localStorage.setItem("mdbook-sidebar", "visible");
} catch (e) {}
}
var sidebarAnchorToggles = document.querySelectorAll("#sidebar a.toggle");
function toggleSection(ev) {
ev.currentTarget.parentElement.classList.toggle("expanded");
}
Array.from(sidebarAnchorToggles).forEach(function (el) {
el.addEventListener("click", toggleSection);
});
function hideSidebar() {
html.classList.remove("sidebar-visible");
html.classList.add("sidebar-hidden");
Array.from(sidebarLinks).forEach(function (link) {
link.setAttribute("tabIndex", -1);
});
sidebarToggleButton.setAttribute("aria-expanded", false);
sidebar.setAttribute("aria-hidden", true);
try {
localStorage.setItem("mdbook-sidebar", "hidden");
} catch (e) {}
}
// Toggle sidebar
sidebarToggleButton.addEventListener("click", function sidebarToggle() {
if (html.classList.contains("sidebar-hidden")) {
var current_width = parseInt(
document.documentElement.style.getPropertyValue("--sidebar-width"),
10,
);
if (current_width < 150) {
document.documentElement.style.setProperty("--sidebar-width", "150px");
}
showSidebar();
} else if (html.classList.contains("sidebar-visible")) {
hideSidebar();
} else {
if (getComputedStyle(sidebar)["transform"] === "none") {
hideSidebar();
} else {
showSidebar();
}
}
});
sidebarResizeHandle.addEventListener("mousedown", initResize, false);
function initResize(e) {
window.addEventListener("mousemove", resize, false);
window.addEventListener("mouseup", stopResize, false);
html.classList.add("sidebar-resizing");
}
function resize(e) {
var pos = e.clientX - sidebar.offsetLeft;
if (pos < 20) {
hideSidebar();
} else {
if (html.classList.contains("sidebar-hidden")) {
showSidebar();
}
pos = Math.min(pos, window.innerWidth - 100);
document.documentElement.style.setProperty("--sidebar-width", pos + "px");
}
}
//on mouseup remove windows functions mousemove & mouseup
function stopResize(e) {
html.classList.remove("sidebar-resizing");
window.removeEventListener("mousemove", resize, false);
window.removeEventListener("mouseup", stopResize, false);
}
document.addEventListener(
"touchstart",
function (e) {
firstContact = {
x: e.touches[0].clientX,
time: Date.now(),
};
},
{ passive: true },
);
document.addEventListener(
"touchmove",
function (e) {
if (!firstContact) return;
var curX = e.touches[0].clientX;
var xDiff = curX - firstContact.x,
tDiff = Date.now() - firstContact.time;
if (tDiff < 250 && Math.abs(xDiff) >= 150) {
if (
xDiff >= 0 &&
firstContact.x < Math.min(document.body.clientWidth * 0.25, 300)
)
showSidebar();
else if (xDiff < 0 && curX < 300) hideSidebar();
firstContact = null;
}
},
{ passive: true },
);
// Scroll sidebar to current active section
var activeSection = document
.getElementById("sidebar")
.querySelector(".active");
if (activeSection) {
// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
activeSection.scrollIntoView({ block: "center" });
}
})();
(function chapterNavigation() {
document.addEventListener("keydown", function (e) {
if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
return;
}
if (window.search && window.search.hasFocus()) {
return;
}
switch (e.key) {
case "ArrowRight":
e.preventDefault();
var nextButton = document.querySelector(".nav-chapters.next");
if (nextButton) {
window.location.href = nextButton.href;
}
break;
case "ArrowLeft":
e.preventDefault();
var previousButton = document.querySelector(".nav-chapters.previous");
if (previousButton) {
window.location.href = previousButton.href;
}
break;
}
});
})();
(function clipboard() {
var clipButtons = document.querySelectorAll(".clip-button");
function hideTooltip(elem) {
elem.firstChild.innerText = "";
elem.className = "fa fa-copy clip-button";
}
function showTooltip(elem, msg) {
elem.firstChild.innerText = msg;
elem.className = "fa fa-copy tooltipped";
}
var clipboardSnippets = new ClipboardJS(".clip-button", {
text: function (trigger) {
hideTooltip(trigger);
let playground = trigger.closest("pre");
return playground_text(playground, false);
},
});
Array.from(clipButtons).forEach(function (clipButton) {
clipButton.addEventListener("mouseout", function (e) {
hideTooltip(e.currentTarget);
});
});
clipboardSnippets.on("success", function (e) {
e.clearSelection();
showTooltip(e.trigger, "Copied!");
});
clipboardSnippets.on("error", function (e) {
showTooltip(e.trigger, "Clipboard error!");
});
})();
(function scrollToTop() {
var menuTitle = document.querySelector(".menu-title");
menuTitle.addEventListener("click", function () {
document.scrollingElement.scrollTo({ top: 0, behavior: "smooth" });
});
})();
(function controllMenu() {
var menu = document.getElementById("menu-bar");
(function controllPosition() {
var scrollTop = document.scrollingElement.scrollTop;
var prevScrollTop = scrollTop;
var minMenuY = -menu.clientHeight - 50;
// When the script loads, the page can be at any scroll (e.g. if you reforesh it).
menu.style.top = scrollTop + "px";
// Same as parseInt(menu.style.top.slice(0, -2), but faster
var topCache = menu.style.top.slice(0, -2);
menu.classList.remove("sticky");
var stickyCache = false; // Same as menu.classList.contains('sticky'), but faster
document.addEventListener(
"scroll",
function () {
scrollTop = Math.max(document.scrollingElement.scrollTop, 0);
// `null` means that it doesn't need to be updated
var nextSticky = null;
var nextTop = null;
var scrollDown = scrollTop > prevScrollTop;
var menuPosAbsoluteY = topCache - scrollTop;
if (scrollDown) {
nextSticky = false;
if (menuPosAbsoluteY > 0) {
nextTop = prevScrollTop;
}
} else {
if (menuPosAbsoluteY > 0) {
nextSticky = true;
} else if (menuPosAbsoluteY < minMenuY) {
nextTop = prevScrollTop + minMenuY;
}
}
if (nextSticky === true && stickyCache === false) {
menu.classList.add("sticky");
stickyCache = true;
} else if (nextSticky === false && stickyCache === true) {
menu.classList.remove("sticky");
stickyCache = false;
}
if (nextTop !== null) {
menu.style.top = nextTop + "px";
topCache = nextTop;
}
prevScrollTop = scrollTop;
},
{ passive: true },
);
})();
(function controllBorder() {
menu.classList.remove("bordered");
document.addEventListener(
"scroll",
function () {
if (menu.offsetTop === 0) {
menu.classList.remove("bordered");
} else {
menu.classList.add("bordered");
}
},
{ passive: true },
);
})();
})();
\ No newline at end of file
...@@ -2,14 +2,14 @@ ...@@ -2,14 +2,14 @@
# this file is generated by nix/scripts/init-project.nix # this file is generated by nix/scripts/init-project.nix
# please don't edit it manually # please don't edit it manually
version = "1.22.1"; version = "1.3.3";
commit = "36d6f93a8f2801323ab8a4e24826e542bfe22c5c"; commit = "a4ddf570c9e1fc41be356a60d81563abaeb91563";
projectURL = "https://gitlab.schukai.com/oss/configuration"; projectURL = "https://gitlab.schukai.com/oss/libraries/go/network/http-negotiation";
name = "negotiation"; name = "Negotiation";
mnemonic = "negotiation"; mnemonic = "negotiation";
projectID = "512"; projectID = "412";
# this file is generated by nix/scripts/init-project.nix # this file is generated by nix/scripts/init-project.nix
# please don't edit it manually # please don't edit it manually
} }
\ No newline at end of file
...@@ -21,7 +21,7 @@ in ...@@ -21,7 +21,7 @@ in
echo_ok "Exiting." echo_ok "Exiting."
exit 0 exit 0
fi fi
if [[ -f "assets/test.env" ]]; then if [[ -f "assets/test.env" ]]; then
echo_hint "Loading test environment variables" echo_hint "Loading test environment variables"
set -a set -a
......
...@@ -17,7 +17,6 @@ type headerParser struct { ...@@ -17,7 +17,6 @@ type headerParser struct {
wildCard string wildCard string
} }
//
func newHeaderParser(header http.Header, hasSlashVal bool) *headerParser { func newHeaderParser(header http.Header, hasSlashVal bool) *headerParser {
hp := &headerParser{header: header, hasSlashVal: hasSlashVal, defaultQ: 1.0} hp := &headerParser{header: header, hasSlashVal: hasSlashVal, defaultQ: 1.0}
...@@ -36,7 +35,7 @@ func (p headerParser) parse(headerName string) specs { ...@@ -36,7 +35,7 @@ func (p headerParser) parse(headerName string) specs {
specs := make(specs, 0, 10) specs := make(specs, 0, 10)
if headerVal == "" { if headerVal == "" {
specs = []spec{spec{val: p.wildCard, q: p.defaultQ}} specs = []spec{{val: p.wildCard, q: p.defaultQ}}
return specs return specs
} }
...@@ -45,7 +44,7 @@ func (p headerParser) parse(headerName string) specs { ...@@ -45,7 +44,7 @@ func (p headerParser) parse(headerName string) specs {
if len(pair) < 1 || len(pair) > 2 { if len(pair) < 1 || len(pair) > 2 {
if p.hasSlashVal { if p.hasSlashVal {
if strings.Index(pair[0], "/") == -1 { if !strings.Contains(pair[0], "/") {
continue continue
} }
} else { } else {
...@@ -137,7 +136,6 @@ func (p headerParser) selectOffer(offers []string, specs specs) string { ...@@ -137,7 +136,6 @@ func (p headerParser) selectOffer(offers []string, specs specs) string {
return bestOffer return bestOffer
} }
//
func formatHeaderVal(val string) string { func formatHeaderVal(val string) string {
return strings.ToLower(strings.Replace(val, " ", "", -1)) return strings.ToLower(strings.Replace(val, " ", "", -1))
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment