@hgdc/docs 0.4.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs.schema.json +59 -0
- package/package.json +1 -1
- package/src/core/config.ts +47 -1
- package/src/overrides/Header.astro +14 -2
- package/src/overrides/Sidebar.astro +11 -2
- package/src/overrides/SiteFooter.astro +67 -23
- package/src/overrides/sections.ts +5 -0
- package/src/styles/theme.css +106 -9
- package/template/.build/404.html +4 -4
- package/template/.build/_astro/common.D2jViLgF.css +3 -0
- package/template/.build/_hgdc/corpus.json +1 -1
- package/template/.build/demarrer/premiere-doc/index.html +5 -5
- package/template/.build/explications/donnees/index.html +5 -5
- package/template/.build/explications/fonctionnement/index.html +5 -5
- package/template/.build/guides/agents/index.html +5 -5
- package/template/.build/guides/assistant/index.html +5 -5
- package/template/.build/guides/composants/index.html +6 -6
- package/template/.build/guides/ecrire/index.html +5 -5
- package/template/.build/guides/navigation/index.html +5 -5
- package/template/.build/guides/publier/index.html +5 -5
- package/template/.build/guides/theme/index.html +5 -5
- package/template/.build/images/famille/account.svg +1 -0
- package/template/.build/images/famille/analytics.svg +1 -0
- package/template/.build/images/famille/docs.svg +1 -0
- package/template/.build/images/famille/host.svg +1 -0
- package/template/.build/images/famille/mail.svg +1 -0
- package/template/.build/images/famille/portal.svg +1 -0
- package/template/.build/images/famille/status.svg +1 -0
- package/template/.build/index.html +5 -5
- package/template/.build/llms-full.txt +4 -0
- package/template/.build/pagefind/fragment/fr-ch_1a9a1fc.pf_fragment +0 -0
- package/template/.build/pagefind/index/fr-ch_1c27d4e.pf_index +0 -0
- package/template/.build/pagefind/pagefind-entry.json +1 -1
- package/template/.build/pagefind/pagefind.fr-ch_6bf31b937df47.pf_meta +0 -0
- package/template/.build/reference/api-assistant/index.html +5 -5
- package/template/.build/reference/cli/index.html +5 -5
- package/template/.build/reference/docs-json/index.html +30 -6
- package/template/.build/reference/docs-json.md +4 -0
- package/template/.build/reference/mcp/index.html +5 -5
- package/template/node_modules/.vite/deps/_metadata.json +7 -7
- package/template/.build/_astro/common.Ixp7olnv.css +0 -3
- package/template/.build/pagefind/fragment/fr-ch_a4b68e2.pf_fragment +0 -0
- package/template/.build/pagefind/index/fr-ch_481c81a.pf_index +0 -0
- package/template/.build/pagefind/pagefind.fr-ch_46a632d8eba7e.pf_meta +0 -0
package/docs.schema.json
CHANGED
|
@@ -233,6 +233,21 @@
|
|
|
233
233
|
}
|
|
234
234
|
}
|
|
235
235
|
},
|
|
236
|
+
"app": {
|
|
237
|
+
"type": "object",
|
|
238
|
+
"properties": {
|
|
239
|
+
"href": {
|
|
240
|
+
"type": "string",
|
|
241
|
+
"format": "uri"
|
|
242
|
+
},
|
|
243
|
+
"label": {
|
|
244
|
+
"type": "string",
|
|
245
|
+
"minLength": 1,
|
|
246
|
+
"maxLength": 40
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
"required": ["href"]
|
|
250
|
+
},
|
|
236
251
|
"footer": {
|
|
237
252
|
"type": "object",
|
|
238
253
|
"properties": {
|
|
@@ -245,6 +260,50 @@
|
|
|
245
260
|
"type": "string",
|
|
246
261
|
"format": "uri"
|
|
247
262
|
}
|
|
263
|
+
},
|
|
264
|
+
"links": {
|
|
265
|
+
"maxItems": 6,
|
|
266
|
+
"type": "array",
|
|
267
|
+
"items": {
|
|
268
|
+
"type": "object",
|
|
269
|
+
"properties": {
|
|
270
|
+
"header": {
|
|
271
|
+
"type": "string",
|
|
272
|
+
"minLength": 1,
|
|
273
|
+
"maxLength": 40
|
|
274
|
+
},
|
|
275
|
+
"items": {
|
|
276
|
+
"minItems": 1,
|
|
277
|
+
"maxItems": 12,
|
|
278
|
+
"type": "array",
|
|
279
|
+
"items": {
|
|
280
|
+
"type": "object",
|
|
281
|
+
"properties": {
|
|
282
|
+
"label": {
|
|
283
|
+
"type": "string",
|
|
284
|
+
"minLength": 1,
|
|
285
|
+
"maxLength": 60
|
|
286
|
+
},
|
|
287
|
+
"href": {
|
|
288
|
+
"type": "string",
|
|
289
|
+
"minLength": 1
|
|
290
|
+
},
|
|
291
|
+
"icon": {
|
|
292
|
+
"type": "string",
|
|
293
|
+
"pattern": "^\\/(?!\\/)[\\w./-]+$"
|
|
294
|
+
}
|
|
295
|
+
},
|
|
296
|
+
"required": ["label", "href"]
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
},
|
|
300
|
+
"required": ["items"]
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
"copyright": {
|
|
304
|
+
"type": "string",
|
|
305
|
+
"minLength": 1,
|
|
306
|
+
"maxLength": 80
|
|
248
307
|
}
|
|
249
308
|
}
|
|
250
309
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hgdc/docs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Modèle de site de HGDC Docs : documentation MDX (docs.json) construite avec Astro Starlight, recherche, versions, llms.txt et assistant.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"type": "module",
|
package/src/core/config.ts
CHANGED
|
@@ -82,6 +82,25 @@ export function socialNetwork(key: string): (typeof SOCIAL_NETWORKS)[keyof typeo
|
|
|
82
82
|
return SOCIAL_NETWORKS[name] ?? null
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
+
/**
|
|
86
|
+
* Lien du pied de page : un chemin du site (« /guides/publier », préfixé par `base`), une
|
|
87
|
+
* adresse https:// ou mailto:. `icon` : image du site (« /images/x.svg ») affichée devant.
|
|
88
|
+
*/
|
|
89
|
+
const footerLink = z.object({
|
|
90
|
+
label: z.string().min(1).max(60),
|
|
91
|
+
href: z
|
|
92
|
+
.string()
|
|
93
|
+
.min(1)
|
|
94
|
+
.refine(
|
|
95
|
+
(value) => /^\/(?!\/)/.test(value) || /^https:\/\/[^\s]+$/.test(value) || /^mailto:[^\s@]+@[^\s@]+$/.test(value),
|
|
96
|
+
"lien attendu : un chemin du site (« /… »), une adresse https:// ou mailto:",
|
|
97
|
+
),
|
|
98
|
+
icon: z
|
|
99
|
+
.string()
|
|
100
|
+
.regex(/^\/(?!\/)[\w./-]+$/, "image attendue : un chemin du site (ex. /images/logo.svg)")
|
|
101
|
+
.optional(),
|
|
102
|
+
})
|
|
103
|
+
|
|
85
104
|
const REDIRECT_SOURCE = /^\/(?!\/)[A-Za-z0-9._~\-/%]*$/
|
|
86
105
|
|
|
87
106
|
/** Ancienne adresse vers la nouvelle (champ `redirects` de Mintlify), sans motif. */
|
|
@@ -126,7 +145,34 @@ export const docsConfigSchema = z.object({
|
|
|
126
145
|
primary: z.object({ label: z.string(), href: z.url() }).optional(),
|
|
127
146
|
})
|
|
128
147
|
.optional(),
|
|
129
|
-
|
|
148
|
+
/**
|
|
149
|
+
* Application que la doc accompagne (champ HGDC) : bouton « Ouvrir <name> » dans l'en-tête
|
|
150
|
+
* et en tête du menu de téléphone. Sans lui, la lectrice n'a aucun chemin vers le produit.
|
|
151
|
+
*/
|
|
152
|
+
app: z
|
|
153
|
+
.object({
|
|
154
|
+
href: z.url({ protocol: /^https$/, error: "adresse attendue, en https://" }),
|
|
155
|
+
/** Libellé du bouton ; « Ouvrir <name> » par défaut. */
|
|
156
|
+
label: z.string().min(1).max(40).optional(),
|
|
157
|
+
})
|
|
158
|
+
.optional(),
|
|
159
|
+
footer: z
|
|
160
|
+
.object({
|
|
161
|
+
socials: z.record(z.string(), z.url()).optional(),
|
|
162
|
+
/** Colonnes de liens (champ `footer.links` de Mintlify), plus une `icon` facultative par lien. */
|
|
163
|
+
links: z
|
|
164
|
+
.array(
|
|
165
|
+
z.object({
|
|
166
|
+
header: z.string().min(1).max(40).optional(),
|
|
167
|
+
items: z.array(footerLink).min(1, "une colonne contient au moins un lien").max(12),
|
|
168
|
+
}),
|
|
169
|
+
)
|
|
170
|
+
.max(6, "6 colonnes au plus")
|
|
171
|
+
.optional(),
|
|
172
|
+
/** Titulaire affiché après « © <année> » au bas du pied (champ HGDC) ; `name` par défaut. */
|
|
173
|
+
copyright: z.string().min(1).max(80).optional(),
|
|
174
|
+
})
|
|
175
|
+
.optional(),
|
|
130
176
|
redirects: z.array(redirect).max(500, "500 redirections au plus").optional(),
|
|
131
177
|
assistant: z
|
|
132
178
|
.object({
|
|
@@ -2,14 +2,17 @@
|
|
|
2
2
|
import Search from "virtual:starlight/components/Search"
|
|
3
3
|
import data from "virtual:hgdc-docs/config"
|
|
4
4
|
|
|
5
|
-
import { assistantEnabled, docsSections, sectionHref } from "./sections.ts"
|
|
5
|
+
import { appLink, assistantEnabled, docsSections, sectionHref } from "./sections.ts"
|
|
6
6
|
import Icon from "./Icon.astro"
|
|
7
7
|
import ThemeToggle from "./ThemeToggle.astro"
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* En-tête, comme chez Mintlify : produit à gauche, onglets de docs.json au centre, puis la
|
|
11
11
|
* recherche, l'assistant, les liens de `navbar` et le thème. Sur téléphone, le menu, le
|
|
12
|
-
* produit, la recherche
|
|
12
|
+
* produit, la recherche, l'assistant et « Ouvrir <produit> » : le reste passe dans le menu.
|
|
13
|
+
*
|
|
14
|
+
* Le nom du produit mène à l'accueil de la doc (on reste dans le site qu'on lit, comme le
|
|
15
|
+
* logo de tout site) ; le chemin vers l'application est le bouton « Ouvrir <produit> » (`app`).
|
|
13
16
|
*/
|
|
14
17
|
const { tabs, current } = docsSections(data.tree, Astro.locals.hgdcSection ?? 0)
|
|
15
18
|
const home = `${data.base}/`
|
|
@@ -18,6 +21,7 @@ const src = (path: string) => `${data.base}${path.startsWith("/") ? path : `/${p
|
|
|
18
21
|
const links = data.config.navbar?.links ?? []
|
|
19
22
|
const primary = data.config.navbar?.primary
|
|
20
23
|
const assistant = assistantEnabled(data.config)
|
|
24
|
+
const app = appLink(data.config)
|
|
21
25
|
---
|
|
22
26
|
|
|
23
27
|
<div class="hd-header">
|
|
@@ -88,5 +92,13 @@ const assistant = assistantEnabled(data.config)
|
|
|
88
92
|
)
|
|
89
93
|
}
|
|
90
94
|
<ThemeToggle variant="button" />
|
|
95
|
+
{
|
|
96
|
+
app && (
|
|
97
|
+
<a class="hd-pill hd-pill--primary hd-app-button" href={app.href}>
|
|
98
|
+
{app.label}
|
|
99
|
+
<Icon name="arrow-up-right" size={16} />
|
|
100
|
+
</a>
|
|
101
|
+
)
|
|
102
|
+
}
|
|
91
103
|
</div>
|
|
92
104
|
</div>
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
import data from "virtual:hgdc-docs/config"
|
|
3
3
|
|
|
4
4
|
import Icon from "./Icon.astro"
|
|
5
|
-
import { docsSections, sectionHref } from "./sections.ts"
|
|
5
|
+
import { appLink, docsSections, sectionHref } from "./sections.ts"
|
|
6
6
|
import SidebarList from "./SidebarList.astro"
|
|
7
7
|
import ThemeToggle from "./ThemeToggle.astro"
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Barre latérale : la version (s'il y en a plusieurs), puis les groupes de docs.json. Sur
|
|
11
11
|
* téléphone, le même panneau sert de menu : il reprend les onglets et les liens de
|
|
12
|
-
* l'en-tête, et le choix du thème.
|
|
12
|
+
* l'en-tête, le bouton vers l'application et le choix du thème.
|
|
13
13
|
*/
|
|
14
14
|
const { tabs, versions, current } = docsSections(data.tree, Astro.locals.hgdcSection ?? 0)
|
|
15
15
|
const tabPosition = current.version.tabs.indexOf(current.tab)
|
|
@@ -17,6 +17,7 @@ const versionHref = (version: (typeof versions)[number]) =>
|
|
|
17
17
|
sectionHref(data.base, (version.tabs[tabPosition] ?? version.tabs[0]!).items)
|
|
18
18
|
const links = data.config.navbar?.links ?? []
|
|
19
19
|
const primary = data.config.navbar?.primary
|
|
20
|
+
const app = appLink(data.config)
|
|
20
21
|
---
|
|
21
22
|
|
|
22
23
|
<div class="hd-mobile-only hd-sidebar-head">
|
|
@@ -25,6 +26,14 @@ const primary = data.config.navbar?.primary
|
|
|
25
26
|
<Icon name="x" />
|
|
26
27
|
</button>
|
|
27
28
|
</div>
|
|
29
|
+
{
|
|
30
|
+
app && (
|
|
31
|
+
<a class="hd-mobile-only hd-pill hd-pill--primary hd-sidebar-app" href={app.href}>
|
|
32
|
+
{app.label}
|
|
33
|
+
<Icon name="arrow-up-right" size={16} />
|
|
34
|
+
</a>
|
|
35
|
+
)
|
|
36
|
+
}
|
|
28
37
|
|
|
29
38
|
{
|
|
30
39
|
versions.length > 1 && (
|
|
@@ -3,49 +3,93 @@ import { Icon as StarlightIcon } from "@astrojs/starlight/components"
|
|
|
3
3
|
import data from "virtual:hgdc-docs/config"
|
|
4
4
|
|
|
5
5
|
import { socialNetwork } from "../core/config.ts"
|
|
6
|
+
import { withBase } from "../core/navigation.ts"
|
|
7
|
+
import Icon from "./Icon.astro"
|
|
8
|
+
import { appLink } from "./sections.ts"
|
|
6
9
|
import ThemeToggle from "./ThemeToggle.astro"
|
|
7
10
|
|
|
8
11
|
/**
|
|
9
|
-
* Pied de page du site, à droite de la barre latérale
|
|
10
|
-
*
|
|
12
|
+
* Pied de page du site, à droite de la barre latérale. En haut, le produit (logo, phrase,
|
|
13
|
+
* bouton vers l'application, réseaux) et les colonnes de `footer.links` ; en bas, « © année
|
|
14
|
+
* titulaire » et le choix du thème. Tout vient de docs.json : le modèle n'invente aucun lien.
|
|
11
15
|
*/
|
|
12
16
|
const logo = typeof data.config.logo === "string" ? { light: data.config.logo } : data.config.logo
|
|
13
|
-
const src = (path: string) =>
|
|
17
|
+
const src = (path: string) => withBase(data.base, path.startsWith("/") ? path : `/${path}`)
|
|
14
18
|
const socials = Object.entries(data.config.footer?.socials ?? {}).flatMap(([key, href]) => {
|
|
15
19
|
const network = socialNetwork(key)
|
|
16
20
|
return network ? [{ ...network, href }] : []
|
|
17
21
|
})
|
|
22
|
+
const columns = data.config.footer?.links ?? []
|
|
23
|
+
const app = appLink(data.config)
|
|
24
|
+
const owner = data.config.footer?.copyright ?? data.config.name
|
|
25
|
+
const year = new Date().getFullYear()
|
|
18
26
|
---
|
|
19
27
|
|
|
20
28
|
<footer class="hd-site-footer" data-pagefind-ignore>
|
|
21
|
-
<div class="hd-site-
|
|
22
|
-
<
|
|
29
|
+
<div class="hd-site-footer__top">
|
|
30
|
+
<div class="hd-site-footer__about">
|
|
31
|
+
<a class="hd-brand hd-brand--footer" href={`${data.base}/`}>
|
|
32
|
+
{
|
|
33
|
+
logo && (
|
|
34
|
+
<span class="hd-brand__mark">
|
|
35
|
+
<img class="hd-brand__light" src={src(logo.light)} alt="" width="20" height="20" loading="lazy" />
|
|
36
|
+
<img class="hd-brand__dark" src={src(logo.dark ?? logo.light)} alt="" width="20" height="20" loading="lazy" />
|
|
37
|
+
</span>
|
|
38
|
+
)
|
|
39
|
+
}
|
|
40
|
+
<span class="hd-brand__name">{data.config.name}</span>
|
|
41
|
+
</a>
|
|
42
|
+
{data.config.description && <p class="hd-site-footer__lede">{data.config.description}</p>}
|
|
23
43
|
{
|
|
24
|
-
|
|
25
|
-
<
|
|
26
|
-
|
|
27
|
-
<
|
|
28
|
-
</
|
|
44
|
+
app && (
|
|
45
|
+
<a class="hd-pill hd-pill--ghost hd-site-footer__app" href={app.href}>
|
|
46
|
+
{app.label}
|
|
47
|
+
<Icon name="arrow-up-right" size={16} />
|
|
48
|
+
</a>
|
|
29
49
|
)
|
|
30
50
|
}
|
|
31
|
-
|
|
32
|
-
|
|
51
|
+
{
|
|
52
|
+
socials.length > 0 && (
|
|
53
|
+
<ul class="hd-socials" aria-label="Réseaux">
|
|
54
|
+
{socials.map((social) => (
|
|
55
|
+
<li>
|
|
56
|
+
<a class="hd-icon-button" href={social.href} rel="me noopener" aria-label={social.label} title={social.label}>
|
|
57
|
+
<StarlightIcon name={social.icon as "github"} size="1.1rem" />
|
|
58
|
+
</a>
|
|
59
|
+
</li>
|
|
60
|
+
))}
|
|
61
|
+
</ul>
|
|
62
|
+
)
|
|
63
|
+
}
|
|
64
|
+
</div>
|
|
33
65
|
{
|
|
34
|
-
|
|
35
|
-
<
|
|
36
|
-
{
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
66
|
+
columns.length > 0 && (
|
|
67
|
+
<nav class="hd-site-footer__columns" aria-label="Pied de page">
|
|
68
|
+
{columns.map((column, index) => (
|
|
69
|
+
<div class="hd-site-footer__column">
|
|
70
|
+
{column.header && (
|
|
71
|
+
<h2 class="hd-site-footer__heading" id={`hd-footer-col-${index}`}>
|
|
72
|
+
{column.header}
|
|
73
|
+
</h2>
|
|
74
|
+
)}
|
|
75
|
+
<ul aria-labelledby={column.header ? `hd-footer-col-${index}` : undefined}>
|
|
76
|
+
{column.items.map((item) => (
|
|
77
|
+
<li>
|
|
78
|
+
<a class="hd-site-footer__link" href={withBase(data.base, item.href)}>
|
|
79
|
+
{item.icon && <img src={src(item.icon)} alt="" width="18" height="18" loading="lazy" />}
|
|
80
|
+
<span>{item.label}</span>
|
|
81
|
+
</a>
|
|
82
|
+
</li>
|
|
83
|
+
))}
|
|
84
|
+
</ul>
|
|
85
|
+
</div>
|
|
42
86
|
))}
|
|
43
|
-
</
|
|
87
|
+
</nav>
|
|
44
88
|
)
|
|
45
89
|
}
|
|
46
90
|
</div>
|
|
47
|
-
<div class="hd-site-
|
|
48
|
-
|
|
91
|
+
<div class="hd-site-footer__bottom">
|
|
92
|
+
<p class="hd-site-footer__legal">© {year} {owner}</p>
|
|
49
93
|
<ThemeToggle variant="segmented" />
|
|
50
94
|
</div>
|
|
51
95
|
</footer>
|
|
@@ -27,3 +27,8 @@ export function sectionHref(base: string, items: Array<NavItem>): string {
|
|
|
27
27
|
export function assistantEnabled(config: DocsConfig): boolean {
|
|
28
28
|
return Boolean(config.project) && config.assistant?.enabled !== false
|
|
29
29
|
}
|
|
30
|
+
|
|
31
|
+
/** Bouton vers l'application (`app`) : « Ouvrir <name> » sauf libellé donné. */
|
|
32
|
+
export function appLink(config: DocsConfig): { href: string; label: string } | null {
|
|
33
|
+
return config.app ? { href: config.app.href, label: config.app.label ?? `Ouvrir ${config.name}` } : null
|
|
34
|
+
}
|
package/src/styles/theme.css
CHANGED
|
@@ -326,6 +326,30 @@ body {
|
|
|
326
326
|
.hd-header__links {
|
|
327
327
|
display: none;
|
|
328
328
|
}
|
|
329
|
+
/* « Ouvrir <produit> » : toujours visible, le seul chemin vers l'application. Sur un
|
|
330
|
+
téléphone étroit, le logo seul tient lieu de nom pour lui laisser la place. */
|
|
331
|
+
.hd-app-button {
|
|
332
|
+
height: 2.25rem;
|
|
333
|
+
padding: 0 0.75rem 0 0.875rem;
|
|
334
|
+
gap: 0.25rem;
|
|
335
|
+
margin-inline-start: 0.25rem;
|
|
336
|
+
font-size: 0.8125rem;
|
|
337
|
+
}
|
|
338
|
+
@media (max-width: 29.99em) {
|
|
339
|
+
.hd-header:has(.hd-app-button) .hd-brand:has(.hd-brand__mark) .hd-brand__name {
|
|
340
|
+
display: none;
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
@media (min-width: 50em) {
|
|
344
|
+
.hd-app-button {
|
|
345
|
+
padding: 0 0.875rem 0 1rem;
|
|
346
|
+
font-size: 0.875rem;
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
.hd-sidebar-app {
|
|
350
|
+
align-self: stretch;
|
|
351
|
+
height: 2.75rem;
|
|
352
|
+
}
|
|
329
353
|
|
|
330
354
|
.hd-brand {
|
|
331
355
|
display: inline-flex;
|
|
@@ -1814,25 +1838,75 @@ starlight-tabs [role="tabpanel"] {
|
|
|
1814
1838
|
/* --- Pied de page du site --- */
|
|
1815
1839
|
|
|
1816
1840
|
.hd-site-footer {
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
margin: 2rem var(--hd-gutter) 0;
|
|
1820
|
-
padding: 2rem 0 2.5rem;
|
|
1841
|
+
margin: 3rem var(--hd-gutter) 0;
|
|
1842
|
+
padding: 2.5rem 0 2rem;
|
|
1821
1843
|
border-top: 1px solid var(--hd-border);
|
|
1822
1844
|
}
|
|
1823
|
-
.hd-site-
|
|
1845
|
+
.hd-site-footer__top {
|
|
1846
|
+
display: grid;
|
|
1847
|
+
gap: 2.5rem;
|
|
1848
|
+
}
|
|
1849
|
+
.hd-site-footer__about {
|
|
1850
|
+
display: grid;
|
|
1851
|
+
align-content: start;
|
|
1852
|
+
justify-items: start;
|
|
1853
|
+
gap: 0.875rem;
|
|
1854
|
+
}
|
|
1855
|
+
.hd-site-footer__lede {
|
|
1856
|
+
max-width: 22rem;
|
|
1857
|
+
margin: 0;
|
|
1858
|
+
color: var(--hd-muted-fg);
|
|
1859
|
+
font-size: 0.875rem;
|
|
1860
|
+
line-height: 1.55;
|
|
1861
|
+
}
|
|
1862
|
+
.hd-site-footer__columns {
|
|
1863
|
+
display: grid;
|
|
1864
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
1865
|
+
gap: 2rem 1.5rem;
|
|
1866
|
+
}
|
|
1867
|
+
.hd-site-footer__heading {
|
|
1868
|
+
margin: 0 0 0.625rem;
|
|
1869
|
+
color: var(--hd-fg);
|
|
1870
|
+
font: 600 0.8125rem/1.3 var(--hd-font-heading);
|
|
1871
|
+
letter-spacing: -0.005em;
|
|
1872
|
+
}
|
|
1873
|
+
.hd-site-footer__column ul {
|
|
1874
|
+
display: grid;
|
|
1875
|
+
margin: 0;
|
|
1876
|
+
padding: 0;
|
|
1877
|
+
list-style: none;
|
|
1878
|
+
}
|
|
1879
|
+
.hd-site-footer__link {
|
|
1880
|
+
display: inline-flex;
|
|
1881
|
+
align-items: center;
|
|
1882
|
+
gap: 0.5rem;
|
|
1883
|
+
min-height: 2rem;
|
|
1884
|
+
color: var(--hd-muted-fg);
|
|
1885
|
+
font-size: 0.875rem;
|
|
1886
|
+
line-height: 1.35;
|
|
1887
|
+
text-decoration: none;
|
|
1888
|
+
transition: color 150ms ease;
|
|
1889
|
+
}
|
|
1890
|
+
.hd-site-footer__link:hover {
|
|
1891
|
+
color: var(--hd-fg);
|
|
1892
|
+
}
|
|
1893
|
+
.hd-site-footer__link img {
|
|
1894
|
+
flex-shrink: 0;
|
|
1895
|
+
width: 1.125rem;
|
|
1896
|
+
height: 1.125rem;
|
|
1897
|
+
}
|
|
1898
|
+
.hd-site-footer__bottom {
|
|
1824
1899
|
display: flex;
|
|
1825
1900
|
flex-wrap: wrap;
|
|
1826
1901
|
align-items: center;
|
|
1827
1902
|
justify-content: space-between;
|
|
1828
1903
|
gap: 1rem;
|
|
1904
|
+
margin-top: 2.5rem;
|
|
1829
1905
|
}
|
|
1830
|
-
.hd-site-
|
|
1831
|
-
max-width: 32rem;
|
|
1906
|
+
.hd-site-footer__legal {
|
|
1832
1907
|
margin: 0;
|
|
1833
1908
|
color: var(--hd-muted-fg);
|
|
1834
|
-
font-size: 0.
|
|
1835
|
-
line-height: 1.55;
|
|
1909
|
+
font-size: 0.8125rem;
|
|
1836
1910
|
}
|
|
1837
1911
|
.hd-brand--footer {
|
|
1838
1912
|
margin-inline-start: -0.5rem;
|
|
@@ -1840,6 +1914,21 @@ starlight-tabs [role="tabpanel"] {
|
|
|
1840
1914
|
.hd-brand--footer .hd-brand__name {
|
|
1841
1915
|
font-size: 0.9375rem;
|
|
1842
1916
|
}
|
|
1917
|
+
/* Trois colonnes au plus tant que le produit est au-dessus : 3 + 2 plutôt que 4 + 1. */
|
|
1918
|
+
@media (min-width: 40em) {
|
|
1919
|
+
.hd-site-footer__columns {
|
|
1920
|
+
grid-template-columns: repeat(auto-fit, minmax(max(8.5rem, 30%), 1fr));
|
|
1921
|
+
}
|
|
1922
|
+
}
|
|
1923
|
+
@media (min-width: 72em) {
|
|
1924
|
+
.hd-site-footer__columns {
|
|
1925
|
+
grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
|
|
1926
|
+
}
|
|
1927
|
+
.hd-site-footer__top {
|
|
1928
|
+
grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr);
|
|
1929
|
+
gap: 3rem;
|
|
1930
|
+
}
|
|
1931
|
+
}
|
|
1843
1932
|
.hd-socials {
|
|
1844
1933
|
display: flex;
|
|
1845
1934
|
gap: 0.25rem;
|
|
@@ -2388,6 +2477,14 @@ hgdc-assistant::before {
|
|
|
2388
2477
|
|
|
2389
2478
|
/* Cibles tactiles de 44 px au doigt, sans changer le dessin à la souris. */
|
|
2390
2479
|
@media (pointer: coarse) {
|
|
2480
|
+
.hd-pill,
|
|
2481
|
+
.hd-site-footer__link {
|
|
2482
|
+
min-height: 2.75rem;
|
|
2483
|
+
}
|
|
2484
|
+
.hd-theme-choice button {
|
|
2485
|
+
width: 2.75rem;
|
|
2486
|
+
height: 2.75rem;
|
|
2487
|
+
}
|
|
2391
2488
|
.hd-nav__link {
|
|
2392
2489
|
min-height: 2.75rem;
|
|
2393
2490
|
}
|
package/template/.build/404.html
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="fr-CH" dir="ltr" data-theme="dark" data-has-hero class="astro-
|
|
1
|
+
<!DOCTYPE html><html lang="fr-CH" dir="ltr" data-theme="dark" data-has-hero class="astro-usuo27fo"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/><title>404 | Docs</title><style>:root{--sl-color-accent-low:#282041;--sl-color-accent:#aa73ff;--sl-color-accent-high:#e8b7ff;--hgdc-on-accent:#000000;}:root:not([data-hd-theme="dark"]){--sl-color-accent-low:#f1e9ff;--sl-color-accent:#7c3aed;--sl-color-accent-high:#4e00ae;--hgdc-on-accent:#ffffff;}</style><link rel="shortcut icon" href="/images/favicon.svg" type="image/svg+xml"/><meta name="generator" content="Astro v7.3.8"/><meta name="generator" content="Starlight v0.42.6"/><meta property="og:title" content="404"/><meta property="og:type" content="article"/><meta property="og:locale" content="fr-CH"/><meta property="og:description" content="Écrire une documentation en MDX, la publier avec Host et y brancher un assistant IA qui cite ses sources."/><meta property="og:site_name" content="Docs"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="Écrire une documentation en MDX, la publier avec Host et y brancher un assistant IA qui cite ses sources."/><link rel="alternate" type="text/markdown" href="/404.md"><link rel="describedby" type="text/markdown" href="/llms.txt"><script>
|
|
2
2
|
;(() => {
|
|
3
3
|
let stored = null
|
|
4
4
|
try {
|
|
@@ -11,6 +11,6 @@
|
|
|
11
11
|
document.documentElement.dataset.hdTheme = theme
|
|
12
12
|
window.StarlightThemeProvider = { updatePickers() {} }
|
|
13
13
|
})()
|
|
14
|
-
</script><link rel="stylesheet" href="/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/_astro/common.
|
|
15
|
-
@layer starlight.components{starlight-tabs:where(.astro-
|
|
16
|
-
</style><script type="module" src="/_astro/page.cNngjUgL.js"></script></head><body class="astro-wgg3zgff"><a class="sl-skip-link astro-mdf5cdqa" href="#_top">Aller au contenu</a><div class="hd-page"><header class="hd-topbar"><div class="hd-header"><div class="hd-header__start"><button type="button" class="hd-icon-button hd-menu-button" popovertarget="starlight__sidebar" aria-label="Menu de la documentation" aria-controls="starlight__sidebar"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 7h16M4 12h16M4 17h10"></path></svg></button><a class="hd-brand" href="/"><span class="hd-brand__mark"><img class="hd-brand__light" src="/images/logo-clair.svg" alt="" width="24" height="24"><img class="hd-brand__dark" src="/images/logo-sombre.svg" alt="" width="24" height="24"></span><span class="hd-brand__name">Docs</span></a></div><nav class="hd-header__tabs" aria-label="Sections de la documentation"><a href="/" aria-current="page">Guides</a><a href="/reference/docs-json/">Référence</a><a href="/explications/fonctionnement/">Explications</a></nav><div class="hd-header__end"><hd-search data-base data-assistant><button type="button" class="hd-search-trigger" data-open aria-haspopup="dialog" aria-label="Rechercher (Ctrl K)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14Zm5-2 4 4"></path></svg><span class="hd-search-trigger__label">Rechercher</span><kbd class="hd-kbd" data-shortcut>Ctrl K</kbd></button><dialog class="hd-palette" aria-label="Rechercher dans la documentation"><div class="hd-palette__box"><div class="hd-palette__field"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14Zm5-2 4 4"></path></svg><input type="text" data-input placeholder="Rechercher dans la documentation" autocomplete="off" spellcheck="false" role="combobox" aria-expanded="false" aria-controls="hd-palette-results" aria-autocomplete="list"><button type="button" class="hd-kbd hd-kbd--button" data-close>Échap</button></div><div class="hd-palette__results" id="hd-palette-results" role="listbox" aria-label="Résultats" data-results></div><p class="hd-palette__status" data-status role="status">Tape un mot pour chercher dans les pages.</p><footer class="hd-palette__hints" aria-hidden="true"><span><kbd class="hd-kbd">↑</kbd><kbd class="hd-kbd">↓</kbd> Choisir</span><span><kbd class="hd-kbd">↵</kbd> Ouvrir</span><span><kbd class="hd-kbd">Échap</kbd> Fermer</span></footer></div></dialog></hd-search><script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.VKDD8r2I.js"></script><button type="button" class="hd-icon-button" data-hgdc-ask aria-label="Demander à l'assistant" title="Demander à l'assistant (Ctrl I)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3.5 13.6 8a3 3 0 0 0 1.9 1.9L20 11.5l-4.5 1.6a3 3 0 0 0-1.9 1.9L12 19.5 10.4 15a3 3 0 0 0-1.9-1.9L4 11.5 8.5 9.9A3 3 0 0 0 10.4 8ZM19 3v3M20.5 4.5h-3"></path></svg></button><nav class="hd-header__links" aria-label="Liens"><a class="hd-pill hd-pill--ghost" href="https://hgdc.ch">HGDC</a><a class="hd-pill hd-pill--primary" href="https://docs.hgdc.ch">Console</a></nav><button type="button" class="hd-icon-button hd-theme-button" data-hd-theme-toggle aria-label="Passer au thème sombre"><svg class="hd-icon hd-theme-button__moon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5Z"></path></svg><svg class="hd-icon hd-theme-button__sun" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 16a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4"></path></svg></button><script type="module">var e=`starlight-theme`,t=()=>{try{return localStorage.getItem(e)||`light`}catch{return`light`}},n=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`,r=t=>{try{localStorage.setItem(e,t)}catch{}let r=t===`auto`?n():t;document.documentElement.dataset.theme=r,document.documentElement.dataset.hdTheme=r,i()},i=()=>{let e=t(),n=document.documentElement.dataset.theme===`dark`;for(let e of document.querySelectorAll(`[data-hd-theme-toggle]`))e.setAttribute(`aria-label`,n?`Passer au thème clair`:`Passer au thème sombre`);for(let t of document.querySelectorAll(`[data-hd-theme-choice]`)){let n=t.dataset.hdThemeChoice===e;t.setAttribute(`aria-checked`,String(n)),t.tabIndex=n?0:-1}};for(let e of document.querySelectorAll(`[data-hd-theme-toggle]`))e.addEventListener(`click`,()=>r(document.documentElement.dataset.theme===`dark`?`light`:`dark`));for(let e of document.querySelectorAll(`.hd-theme-choice`)){let t=[...e.querySelectorAll(`[data-hd-theme-choice]`)];for(let e of t)e.addEventListener(`click`,()=>r(e.dataset.hdThemeChoice));e.addEventListener(`keydown`,e=>{let n=e.key===`ArrowRight`||e.key===`ArrowDown`?1:e.key===`ArrowLeft`||e.key===`ArrowUp`?-1:0;if(!n)return;e.preventDefault();let i=t.findIndex(e=>e.getAttribute(`aria-checked`)===`true`),a=t[(i+n+t.length)%t.length];r(a.dataset.hdThemeChoice),a.focus()})}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{t()===`auto`&&r(`auto`)}),i();</script></div></div></header><div class="hd-main-frame main-frame"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="hd-columns"><div class="hd-columns__main main-pane"><main class="astro-wgg3zgff" lang="fr-CH" dir="ltr"><div class="content-panel astro-5uqqnepj"><div class="sl-container astro-5uqqnepj"><div class="hero astro-6yp6gyb3"><div class="sl-flex stack astro-6yp6gyb3"><div class="sl-flex copy astro-6yp6gyb3"><h1 id="_top" data-page-title class="astro-6yp6gyb3">404</h1><div class="tagline astro-6yp6gyb3">Page non trouvée. Vérifiez l’URL ou essayez d’utiliser la barre de recherche.</div></div></div></div><div class="sl-markdown-content"></div><hgdc-feedback class="hgdc-feedback not-content" data-endpoint="https://docs.hgdc.ch/api/v1/feedback" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-pagefind-ignore="true"><div data-step="ask"><p class="hgdc-feedback__question">Cette page t'a aidé ?</p><div class="hgdc-feedback__choices"><button type="button" data-helpful="true"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10v11M15 5.9 14 10h5.8a2 2 0 0 1 1.9 2.5l-2.3 7A2 2 0 0 1 17.5 21H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1h2.8a2 2 0 0 0 1.8-1.1L12 2a3.1 3.1 0 0 1 3 3.9Z"></path></svg>Oui</button><button type="button" data-helpful="false"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M17 14V3M9 18.1 10 14H4.2a2 2 0 0 1-1.9-2.5l2.3-7A2 2 0 0 1 6.5 3H20a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1h-2.8a2 2 0 0 0-1.8 1.1L12 22a3.1 3.1 0 0 1-3-3.9Z"></path></svg>Non</button></div></div><form data-step="comment" hidden><label for="hgdc-feedback-comment">Qu'est-ce qui manquait ou pourrait être plus clair ? (facultatif)</label><textarea id="hgdc-feedback-comment" name="comment" rows="3" maxlength="1000"></textarea><div class="hgdc-feedback__choices"><button type="submit">Envoyer</button><button type="button" data-skip>Passer</button></div></form><p data-step="done" class="hgdc-feedback__done" role="status" hidden>Merci, c'est noté.</p></hgdc-feedback><script type="module" src="/_astro/Footer.astro_astro_type_script_index_0_lang.DzCnn3OT.js"></script></div></div></main><form class="hd-askbar" data-askbar data-pagefind-ignore><label class="sr-only" for="hd-askbar-input">Pose une question à l'assistant</label><input id="hd-askbar-input" data-askbar-input type="text" maxlength="1000" placeholder="Pose une question…" autocomplete="off"><kbd class="hd-kbd" data-shortcut aria-hidden="true">Ctrl I</kbd><button type="submit" class="hd-send" aria-label="Envoyer la question"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19V5m-6 6 6-6 6 6"></path></svg></button></form></div></div><footer class="hd-site-footer" data-pagefind-ignore><div class="hd-site-footer__row"><a class="hd-brand hd-brand--footer" href="/"><span class="hd-brand__mark"><img class="hd-brand__light" src="/images/logo-clair.svg" alt="" width="20" height="20" loading="lazy"><img class="hd-brand__dark" src="/images/logo-sombre.svg" alt="" width="20" height="20" loading="lazy"></span><span class="hd-brand__name">Docs</span></a></div><div class="hd-site-footer__row hd-site-footer__row--meta"><p>Écrire une documentation en MDX, la publier avec Host et y brancher un assistant IA qui cite ses sources.</p><div class="hd-theme-choice" role="radiogroup" aria-label="Thème"><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="auto" aria-label="Système" title="Système"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 5h16a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Zm4 15h8m-4-3v3"></path></svg></button><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="light" aria-label="Clair" title="Clair"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 16a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4"></path></svg></button><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="dark" aria-label="Sombre" title="Sombre"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5Z"></path></svg></button></div></div></footer></div><hgdc-assistant data-endpoint="https://docs.hgdc.ch/api/v1/ask" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-name="Docs"><section class="hgdc-panel" role="dialog" aria-modal="false" aria-labelledby="hgdc-assistant-title" data-panel inert><div class="hgdc-panel__grip" aria-hidden="true"></div><header class="hgdc-panel__header"><h2 id="hgdc-assistant-title"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3.5 13.6 8a3 3 0 0 0 1.9 1.9L20 11.5l-4.5 1.6a3 3 0 0 0-1.9 1.9L12 19.5 10.4 15a3 3 0 0 0-1.9-1.9L4 11.5 8.5 9.9A3 3 0 0 0 10.4 8ZM19 3v3M20.5 4.5h-3"></path></svg>Assistant</h2><div class="hgdc-panel__tools"><button type="button" class="hd-icon-button" data-reset aria-label="Nouvelle conversation" title="Nouvelle conversation" hidden><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12a8 8 0 1 0 2.3-5.7M4 4v4h4"></path></svg></button><button type="button" class="hd-icon-button" data-close aria-label="Fermer l'assistant" title="Fermer (Échap)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M6 6l12 12M18 6 6 18"></path></svg></button></div></header><div class="hgdc-panel__body" data-log aria-live="polite"><div class="hgdc-empty" data-empty><p class="hgdc-empty__title">Pose ta question sur Docs.</p><p>Je cherche dans les pages de cette documentation et je cite mes sources. Si la réponse n'y est pas, je te le dis.</p></div></div><form class="hgdc-panel__form" data-form><label class="sr-only" for="hgdc-question">Ta question</label><textarea id="hgdc-question" data-input rows="1" maxlength="1000" placeholder="Pose une question…" required></textarea><button type="submit" class="hd-send" data-send aria-label="Envoyer la question"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19V5m-6 6 6-6 6 6"></path></svg></button></form><p class="hgdc-panel__note">Réponses générées par IA (Claude, d'Anthropic), à vérifier. Les questions sont conservées 90 jours pour améliorer cette documentation.</p></section></hgdc-assistant><script type="module" src="/_astro/Assistant.astro_astro_type_script_index_0_lang.C1pz7yK1.js"></script></div><script type="module">var e=class extends HTMLElement{connectedCallback(){let e=matchMedia(`(min-width: 50em)`),t=()=>{e.matches&&this.matches(`:popover-open`)&&this.hidePopover(),this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,t),this.addEventListener(`toggle`,e=>{let t=e.newState===`open`;for(let e of document.querySelectorAll(`.hd-main-frame, .hd-askbar`))e.toggleAttribute(`inert`,t);document.documentElement.toggleAttribute(`data-hd-menu`,t)}),this.addEventListener(`click`,e=>{e.target.closest(`a`)&&this.matches(`:popover-open`)&&this.hidePopover()})}};customElements.define(`hd-sidebar-pane`,e);</script></body></html>
|
|
14
|
+
</script><link rel="stylesheet" href="/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/_astro/common.D2jViLgF.css"><style>@layer starlight.components{svg:where(.astro-bemzhrvp){color:var(--sl-icon-color);font-size:var(--sl-icon-size,1em);width:1em;height:1em;overflow:visible}}
|
|
15
|
+
@layer starlight.components{starlight-tabs:where(.astro-hc7kf7b5){display:block}.tablist-wrapper:where(.astro-hc7kf7b5){overflow-x:auto}:where(.astro-hc7kf7b5)[role=tablist]{border-bottom:2px solid var(--sl-color-gray-5);padding:0;list-style:none;display:flex}.tab:where(.astro-hc7kf7b5){display:flex}.tab:where(.astro-hc7kf7b5)>:where(.astro-hc7kf7b5)[role=tab]{--sl-tab-color-border:var(--sl-color-gray-5);line-height:var(--sl-line-height-headings);box-shadow:0 2px 0 var(--sl-tab-color-border);color:var(--sl-color-gray-3);outline-offset:var(--sl-outline-offset-inside);overflow-wrap:initial;align-items:center;gap:.5rem;padding:.275rem 1.25rem;text-decoration:none;display:flex}.tab:where(.astro-hc7kf7b5) :where(.astro-hc7kf7b5)[role=tab][aria-selected=true]{--sl-tab-color-border:var(--sl-color-text-accent);color:var(--sl-color-white);font-weight:600}.tablist-wrapper:where(.astro-hc7kf7b5)~[role=tabpanel]{margin-top:1rem}}
|
|
16
|
+
</style><script type="module" src="/_astro/page.cNngjUgL.js"></script></head><body class="astro-usuo27fo"><a class="sl-skip-link astro-cinj7w7m" href="#_top">Aller au contenu</a><div class="hd-page"><header class="hd-topbar"><div class="hd-header"><div class="hd-header__start"><button type="button" class="hd-icon-button hd-menu-button" popovertarget="starlight__sidebar" aria-label="Menu de la documentation" aria-controls="starlight__sidebar"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 7h16M4 12h16M4 17h10"></path></svg></button><a class="hd-brand" href="/"><span class="hd-brand__mark"><img class="hd-brand__light" src="/images/logo-clair.svg" alt="" width="24" height="24"><img class="hd-brand__dark" src="/images/logo-sombre.svg" alt="" width="24" height="24"></span><span class="hd-brand__name">Docs</span></a></div><nav class="hd-header__tabs" aria-label="Sections de la documentation"><a href="/" aria-current="page">Guides</a><a href="/reference/docs-json/">Référence</a><a href="/explications/fonctionnement/">Explications</a></nav><div class="hd-header__end"><hd-search data-base data-assistant><button type="button" class="hd-search-trigger" data-open aria-haspopup="dialog" aria-label="Rechercher (Ctrl K)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14Zm5-2 4 4"></path></svg><span class="hd-search-trigger__label">Rechercher</span><kbd class="hd-kbd" data-shortcut>Ctrl K</kbd></button><dialog class="hd-palette" aria-label="Rechercher dans la documentation"><div class="hd-palette__box"><div class="hd-palette__field"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14Zm5-2 4 4"></path></svg><input type="text" data-input placeholder="Rechercher dans la documentation" autocomplete="off" spellcheck="false" role="combobox" aria-expanded="false" aria-controls="hd-palette-results" aria-autocomplete="list"><button type="button" class="hd-kbd hd-kbd--button" data-close>Échap</button></div><div class="hd-palette__results" id="hd-palette-results" role="listbox" aria-label="Résultats" data-results></div><p class="hd-palette__status" data-status role="status">Tape un mot pour chercher dans les pages.</p><footer class="hd-palette__hints" aria-hidden="true"><span><kbd class="hd-kbd">↑</kbd><kbd class="hd-kbd">↓</kbd> Choisir</span><span><kbd class="hd-kbd">↵</kbd> Ouvrir</span><span><kbd class="hd-kbd">Échap</kbd> Fermer</span></footer></div></dialog></hd-search><script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.VKDD8r2I.js"></script><button type="button" class="hd-icon-button" data-hgdc-ask aria-label="Demander à l'assistant" title="Demander à l'assistant (Ctrl I)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3.5 13.6 8a3 3 0 0 0 1.9 1.9L20 11.5l-4.5 1.6a3 3 0 0 0-1.9 1.9L12 19.5 10.4 15a3 3 0 0 0-1.9-1.9L4 11.5 8.5 9.9A3 3 0 0 0 10.4 8ZM19 3v3M20.5 4.5h-3"></path></svg></button><nav class="hd-header__links" aria-label="Liens"><a class="hd-pill hd-pill--ghost" href="https://hgdc.ch">HGDC</a></nav><button type="button" class="hd-icon-button hd-theme-button" data-hd-theme-toggle aria-label="Passer au thème sombre"><svg class="hd-icon hd-theme-button__moon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5Z"></path></svg><svg class="hd-icon hd-theme-button__sun" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 16a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4"></path></svg></button><script type="module">var e=`starlight-theme`,t=()=>{try{return localStorage.getItem(e)||`light`}catch{return`light`}},n=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`,r=t=>{try{localStorage.setItem(e,t)}catch{}let r=t===`auto`?n():t;document.documentElement.dataset.theme=r,document.documentElement.dataset.hdTheme=r,i()},i=()=>{let e=t(),n=document.documentElement.dataset.theme===`dark`;for(let e of document.querySelectorAll(`[data-hd-theme-toggle]`))e.setAttribute(`aria-label`,n?`Passer au thème clair`:`Passer au thème sombre`);for(let t of document.querySelectorAll(`[data-hd-theme-choice]`)){let n=t.dataset.hdThemeChoice===e;t.setAttribute(`aria-checked`,String(n)),t.tabIndex=n?0:-1}};for(let e of document.querySelectorAll(`[data-hd-theme-toggle]`))e.addEventListener(`click`,()=>r(document.documentElement.dataset.theme===`dark`?`light`:`dark`));for(let e of document.querySelectorAll(`.hd-theme-choice`)){let t=[...e.querySelectorAll(`[data-hd-theme-choice]`)];for(let e of t)e.addEventListener(`click`,()=>r(e.dataset.hdThemeChoice));e.addEventListener(`keydown`,e=>{let n=e.key===`ArrowRight`||e.key===`ArrowDown`?1:e.key===`ArrowLeft`||e.key===`ArrowUp`?-1:0;if(!n)return;e.preventDefault();let i=t.findIndex(e=>e.getAttribute(`aria-checked`)===`true`),a=t[(i+n+t.length)%t.length];r(a.dataset.hdThemeChoice),a.focus()})}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{t()===`auto`&&r(`auto`)}),i();</script><a class="hd-pill hd-pill--primary hd-app-button" href="https://docs.hgdc.ch">Ouvrir Docs<svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M7 17 17 7M8 7h9v9"></path></svg></a></div></div></header><div class="hd-main-frame main-frame"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="hd-columns"><div class="hd-columns__main main-pane"><main class="astro-usuo27fo" lang="fr-CH" dir="ltr"><div class="content-panel astro-354kzhd4"><div class="sl-container astro-354kzhd4"><div class="hero astro-hv5tv5qn"><div class="sl-flex stack astro-hv5tv5qn"><div class="sl-flex copy astro-hv5tv5qn"><h1 id="_top" data-page-title class="astro-hv5tv5qn">404</h1><div class="tagline astro-hv5tv5qn">Page non trouvée. Vérifiez l’URL ou essayez d’utiliser la barre de recherche.</div></div></div></div><div class="sl-markdown-content"></div><hgdc-feedback class="hgdc-feedback not-content" data-endpoint="https://docs.hgdc.ch/api/v1/feedback" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-pagefind-ignore="true"><div data-step="ask"><p class="hgdc-feedback__question">Cette page t'a aidé ?</p><div class="hgdc-feedback__choices"><button type="button" data-helpful="true"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M7 10v11M15 5.9 14 10h5.8a2 2 0 0 1 1.9 2.5l-2.3 7A2 2 0 0 1 17.5 21H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1h2.8a2 2 0 0 0 1.8-1.1L12 2a3.1 3.1 0 0 1 3 3.9Z"></path></svg>Oui</button><button type="button" data-helpful="false"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M17 14V3M9 18.1 10 14H4.2a2 2 0 0 1-1.9-2.5l2.3-7A2 2 0 0 1 6.5 3H20a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1h-2.8a2 2 0 0 0-1.8 1.1L12 22a3.1 3.1 0 0 1-3-3.9Z"></path></svg>Non</button></div></div><form data-step="comment" hidden><label for="hgdc-feedback-comment">Qu'est-ce qui manquait ou pourrait être plus clair ? (facultatif)</label><textarea id="hgdc-feedback-comment" name="comment" rows="3" maxlength="1000"></textarea><div class="hgdc-feedback__choices"><button type="submit">Envoyer</button><button type="button" data-skip>Passer</button></div></form><p data-step="done" class="hgdc-feedback__done" role="status" hidden>Merci, c'est noté.</p></hgdc-feedback><script type="module" src="/_astro/Footer.astro_astro_type_script_index_0_lang.DzCnn3OT.js"></script></div></div></main><form class="hd-askbar" data-askbar data-pagefind-ignore><label class="sr-only" for="hd-askbar-input">Pose une question à l'assistant</label><input id="hd-askbar-input" data-askbar-input type="text" maxlength="1000" placeholder="Pose une question…" autocomplete="off"><kbd class="hd-kbd" data-shortcut aria-hidden="true">Ctrl I</kbd><button type="submit" class="hd-send" aria-label="Envoyer la question"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19V5m-6 6 6-6 6 6"></path></svg></button></form></div></div><footer class="hd-site-footer" data-pagefind-ignore><div class="hd-site-footer__top"><div class="hd-site-footer__about"><a class="hd-brand hd-brand--footer" href="/"><span class="hd-brand__mark"><img class="hd-brand__light" src="/images/logo-clair.svg" alt="" width="20" height="20" loading="lazy"><img class="hd-brand__dark" src="/images/logo-sombre.svg" alt="" width="20" height="20" loading="lazy"></span><span class="hd-brand__name">Docs</span></a><p class="hd-site-footer__lede">Écrire une documentation en MDX, la publier avec Host et y brancher un assistant IA qui cite ses sources.</p><a class="hd-pill hd-pill--ghost hd-site-footer__app" href="https://docs.hgdc.ch">Ouvrir Docs<svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M7 17 17 7M8 7h9v9"></path></svg></a></div><nav class="hd-site-footer__columns" aria-label="Pied de page"><div class="hd-site-footer__column"><h2 class="hd-site-footer__heading" id="hd-footer-col-0">Documentation</h2><ul aria-labelledby="hd-footer-col-0"><li><a class="hd-site-footer__link" href="/"><span>Démarrer</span></a></li><li><a class="hd-site-footer__link" href="/guides/ecrire/"><span>Écrire une page</span></a></li><li><a class="hd-site-footer__link" href="/reference/docs-json/"><span>Référence de docs.json</span></a></li><li><a class="hd-site-footer__link" href="/reference/cli/"><span>CLI</span></a></li><li><a class="hd-site-footer__link" href="/reference/api-assistant/"><span>API de l'assistant</span></a></li><li><a class="hd-site-footer__link" href="/llms.txt"><span>llms.txt</span></a></li></ul></div><div class="hd-site-footer__column"><h2 class="hd-site-footer__heading" id="hd-footer-col-1">Aide</h2><ul aria-labelledby="hd-footer-col-1"><li><a class="hd-site-footer__link" href="https://status.hgdc.ch/documentation"><span>État du service</span></a></li><li><a class="hd-site-footer__link" href="mailto:support@hgdc.ch"><span>Écrire au support</span></a></li><li><a class="hd-site-footer__link" href="https://hgdc.ch/.well-known/security.txt"><span>Signaler une faille</span></a></li></ul></div><div class="hd-site-footer__column"><h2 class="hd-site-footer__heading" id="hd-footer-col-2">La H Collection</h2><ul aria-labelledby="hd-footer-col-2"><li><a class="hd-site-footer__link" href="https://account.hgdc.ch"><img src="/images/famille/account.svg" alt="" width="18" height="18" loading="lazy"><span>Account</span></a></li><li><a class="hd-site-footer__link" href="https://host.hgdc.ch"><img src="/images/famille/host.svg" alt="" width="18" height="18" loading="lazy"><span>Host</span></a></li><li><a class="hd-site-footer__link" href="https://mail.hgdc.ch"><img src="/images/famille/mail.svg" alt="" width="18" height="18" loading="lazy"><span>Mail</span></a></li><li><a class="hd-site-footer__link" href="https://portal.hgdc.ch"><img src="/images/famille/portal.svg" alt="" width="18" height="18" loading="lazy"><span>Portal</span></a></li><li><a class="hd-site-footer__link" href="https://status.hgdc.ch"><img src="/images/famille/status.svg" alt="" width="18" height="18" loading="lazy"><span>Status</span></a></li><li><a class="hd-site-footer__link" href="https://analytics.hgdc.ch"><img src="/images/famille/analytics.svg" alt="" width="18" height="18" loading="lazy"><span>Analytics</span></a></li></ul></div><div class="hd-site-footer__column"><h2 class="hd-site-footer__heading" id="hd-footer-col-3">HGDC</h2><ul aria-labelledby="hd-footer-col-3"><li><a class="hd-site-footer__link" href="https://hgdc.ch"><span>L'entreprise</span></a></li><li><a class="hd-site-footer__link" href="https://hgdc.ch/contact"><span>Contact</span></a></li><li><a class="hd-site-footer__link" href="https://hgdc.ch/mentions-legales"><span>Mentions légales</span></a></li><li><a class="hd-site-footer__link" href="https://hgdc.ch/confidentialite"><span>Confidentialité</span></a></li></ul></div></nav></div><div class="hd-site-footer__bottom"><p class="hd-site-footer__legal">© 2026 HGDC, Lausanne</p><div class="hd-theme-choice" role="radiogroup" aria-label="Thème"><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="auto" aria-label="Système" title="Système"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 5h16a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Zm4 15h8m-4-3v3"></path></svg></button><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="light" aria-label="Clair" title="Clair"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 16a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4"></path></svg></button><button type="button" role="radio" aria-checked="false" data-hd-theme-choice="dark" aria-label="Sombre" title="Sombre"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5Z"></path></svg></button></div></div></footer></div><hgdc-assistant data-endpoint="https://docs.hgdc.ch/api/v1/ask" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-name="Docs"><section class="hgdc-panel" role="dialog" aria-modal="false" aria-labelledby="hgdc-assistant-title" data-panel inert><div class="hgdc-panel__grip" aria-hidden="true"></div><header class="hgdc-panel__header"><h2 id="hgdc-assistant-title"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3.5 13.6 8a3 3 0 0 0 1.9 1.9L20 11.5l-4.5 1.6a3 3 0 0 0-1.9 1.9L12 19.5 10.4 15a3 3 0 0 0-1.9-1.9L4 11.5 8.5 9.9A3 3 0 0 0 10.4 8ZM19 3v3M20.5 4.5h-3"></path></svg>Assistant</h2><div class="hgdc-panel__tools"><button type="button" class="hd-icon-button" data-reset aria-label="Nouvelle conversation" title="Nouvelle conversation" hidden><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12a8 8 0 1 0 2.3-5.7M4 4v4h4"></path></svg></button><button type="button" class="hd-icon-button" data-close aria-label="Fermer l'assistant" title="Fermer (Échap)"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M6 6l12 12M18 6 6 18"></path></svg></button></div></header><div class="hgdc-panel__body" data-log aria-live="polite"><div class="hgdc-empty" data-empty><p class="hgdc-empty__title">Pose ta question sur Docs.</p><p>Je cherche dans les pages de cette documentation et je cite mes sources. Si la réponse n'y est pas, je te le dis.</p></div></div><form class="hgdc-panel__form" data-form><label class="sr-only" for="hgdc-question">Ta question</label><textarea id="hgdc-question" data-input rows="1" maxlength="1000" placeholder="Pose une question…" required></textarea><button type="submit" class="hd-send" data-send aria-label="Envoyer la question"><svg class="hd-icon" aria-hidden="true" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19V5m-6 6 6-6 6 6"></path></svg></button></form><p class="hgdc-panel__note">Réponses générées par IA (Claude, d'Anthropic), à vérifier. Les questions sont conservées 90 jours pour améliorer cette documentation.</p></section></hgdc-assistant><script type="module" src="/_astro/Assistant.astro_astro_type_script_index_0_lang.C1pz7yK1.js"></script></div><script type="module">var e=class extends HTMLElement{connectedCallback(){let e=matchMedia(`(min-width: 50em)`),t=()=>{e.matches&&this.matches(`:popover-open`)&&this.hidePopover(),this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,t),this.addEventListener(`toggle`,e=>{let t=e.newState===`open`;for(let e of document.querySelectorAll(`.hd-main-frame, .hd-askbar`))e.toggleAttribute(`inert`,t);document.documentElement.toggleAttribute(`data-hd-menu`,t)}),this.addEventListener(`click`,e=>{e.target.closest(`a`)&&this.matches(`:popover-open`)&&this.hidePopover()})}};customElements.define(`hd-sidebar-pane`,e);</script></body></html>
|