From 689eb33cd4182c40394a81976985f5094699b2ed Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Fri, 16 Jan 2026 17:28:12 +0100 Subject: [PATCH] i18n(fr): update `integrations-reference.mdx` & `adapter-reference.mdx` See #13021 --- .../docs/fr/reference/adapter-reference.mdx | 4 +- .../fr/reference/integrations-reference.mdx | 987 +++++++++++++++++- 2 files changed, 940 insertions(+), 51 deletions(-) diff --git a/src/content/docs/fr/reference/adapter-reference.mdx b/src/content/docs/fr/reference/adapter-reference.mdx index eb665917d2f2f..641cf884346dc 100644 --- a/src/content/docs/fr/reference/adapter-reference.mdx +++ b/src/content/docs/fr/reference/adapter-reference.mdx @@ -254,7 +254,7 @@ Vous devrez créer un fichier qui s'exécute lors des requêtes côté serveur a

-**Type :** `(manifest: SSRManifest, options: any) => Record` +**Type :** (manifest: SSRManifest, options: any) => Record\

Une fonction exportée qui prend un manifeste SSR comme premier argument et un objet contenant les [`args`](#args) de votre adaptateur comme second argument. Elle doit fournir les exportations requises par votre hôte. @@ -314,7 +314,7 @@ export function createExports(manifest, args) {

-**Type :** `(manifest: SSRManifest, options: any) => Record` +**Type :** (manifest: SSRManifest, options: any) => Record\

Une fonction exportée qui prend un manifeste SSR comme premier argument et un objet contenant les [`args`](#args) de votre adaptateur comme deuxième argument. diff --git a/src/content/docs/fr/reference/integrations-reference.mdx b/src/content/docs/fr/reference/integrations-reference.mdx index b53608b3bc32b..d36242a105a08 100644 --- a/src/content/docs/fr/reference/integrations-reference.mdx +++ b/src/content/docs/fr/reference/integrations-reference.mdx @@ -194,7 +194,7 @@ export default {

-**Type :** `(renderer:` [`AstroRenderer`](https://github.com/withastro/astro/blob/fdd607c5755034edf262e7b275732519328a33b2/packages/astro/src/%40types/astro.ts#L872-L883) `) => void;`
+**Type :** (renderer: AstroRenderer) => void;
**Exemples :** [`svelte`](https://github.com/withastro/astro/blob/main/packages/integrations/svelte/src/index.ts), [`react`](https://github.com/withastro/astro/blob/main/packages/integrations/react/src/index.ts), [`preact`](https://github.com/withastro/astro/blob/main/packages/integrations/preact/src/index.ts), [`vue`](https://github.com/withastro/astro/blob/main/packages/integrations/vue/src/index.ts), [`solid`](https://github.com/withastro/astro/blob/main/packages/integrations/solid/src/index.ts)

@@ -215,7 +215,7 @@ Les fonctions `clientEntrypoint` et `serverEntrypoint` acceptent une `URL`.

-Si votre intégration dépend d'un fichier de configuration que Vite ne surveille pas et/ou qui nécessite un redémarrage complet du serveur de développement pour prendre effet, ajoutez-le avec `addWatchFile`. Chaque fois que ce fichier changera, le serveur de développement d'Astro sera rechargé (vous pouvez vérifier quand un rechargement a lieu avec `isRestart`). +Si votre intégration dépend d'un fichier de configuration que Vite ne surveille pas et/ou qui nécessite un redémarrage complet du serveur de développement pour prendre effet, ajoutez-le avec `addWatchFile()`. Chaque fois que ce fichier changera, le serveur de développement d'Astro sera rechargé (vous pouvez vérifier quand un rechargement a lieu avec [`isRestart`](#option-isrestart)). Exemple d'utilisation : @@ -229,7 +229,7 @@ addWatchFile(new URL('./ec.config.mjs', config.root));

-**Type :** `(directive:` [`ClientDirectiveConfig`](https://github.com/withastro/astro/blob/00327c213f74627ac9ca1dec774efa5bf71e9375/packages/astro/src/%40types/astro.ts#L1872-L1875) `) => void;`
+**Type :** (directive: ClientDirectiveConfig) => void;

@@ -352,7 +352,7 @@ export default {

-**Type :** `(middleware:` [`AstroIntegrationMiddleware`](https://github.com/withastro/astro/blob/852ac0f75dfca1b2602e9cdbfa0447d9998e2449/packages/astro/src/%40types/astro.ts#L2124-L2127) `) => void;`
+**Type :** (middleware: AstroIntegrationMiddleware) => void;

@@ -375,7 +375,7 @@ export default () => ({ }); ``` -Le middleware est défini dans un paquet avec une fonction `onRequest`, comme pour le middleware défini par l'utilisateur. +Le middleware est défini dans un paquet avec une [fonction `onRequest()`](/fr/reference/modules/astro-middleware/#onrequest), comme pour le middleware défini par l'utilisateur. ```js title="@mon-paquet/middleware.js" import { defineMiddleware } from 'astro:middleware'; @@ -421,7 +421,7 @@ export default () => ({ Une fonction de rappel pour injecter des routes dans un projet Astro. Les routes injectées peuvent être des [pages `.astro`](/fr/basics/astro-pages/) ou des [gestionnaires de routes `.js` et `.ts`](/fr/guides/endpoints/#points-de-terminaison-des-fichiers-statiques). -`injectRoute` prend un objet avec un modèle (`pattern`) et un point d'entrée (`entrypoint`). +`injectRoute()` prend un objet avec un modèle (`pattern`) et un point d'entrée (`entrypoint`). - `pattern` - où la route doit être affichée dans le navigateur, par exemple `/foo/bar`. Un modèle (`pattern`) peut utiliser la syntaxe de chemin de fichier d'Astro pour indiquer des routes dynamiques, par exemple `/foo/[bar]` ou `/foo/[...bar]`. Notez qu'une extension de fichier n'est **pas** nécessaire dans `pattern`. - `entrypoint` - un spécificateur de module nu pointant vers la page `.astro` ou le gestionnaire de route `.js`/`.ts` qui gère la route indiquée dans `pattern`. @@ -541,7 +541,7 @@ const integration = {

-**Type :** [`RouteOptions`](https://github.com/withastro/astro/blob/3b10b97a4fecd1dfd959b160a07b5b8427fe40a7/packages/astro/src/types/public/integrations.ts#L14-L27) +**Type :** `{ readonly component: string; prerender?: boolean; }`

Un objet avec une propriété `component` pour identifier la route et les valeurs supplémentaires suivantes pour vous permettre de configurer la route générée : `prerender`. @@ -810,43 +810,43 @@ Une fonction qui envoie un message à la barre d'outils de développement qu'une Une fonction permettant aux intégrations de déclencher une mise à jour de la couche de contenu pendant `astro dev`. Cela peut être utilisé, par exemple, pour enregistrer un point de terminaison webhook pendant le développement, ou pour ouvrir un socket vers un CMS pour écouter les modifications. -Par défaut, `refreshContent` actualise toutes les collections. Vous pouvez éventuellement transmettre une propriété `loaders`, qui est un tableau de noms de chargeurs. Si elle est fournie, seules les collections qui utilisent ces chargeurs seront actualisées. Par exemple, une intégration CMS pourrait utiliser cette propriété pour actualiser uniquement ses propres collections. +Par défaut, `refreshContent()` actualise toutes les collections. Vous pouvez éventuellement transmettre une propriété `loaders`, qui est un tableau de noms de chargeurs. Si elle est fournie, seules les collections qui utilisent ces chargeurs seront actualisées. Par exemple, une intégration CMS pourrait utiliser cette propriété pour actualiser uniquement ses propres collections. Vous pouvez également transmettre un objet `context` aux chargeurs. Il peut être utilisé pour transmettre des données arbitraires telles que le corps du webhook ou un événement du websocket. ```ts title=mon-integration.ts {19-22} - { - name: 'mon-integration', - hooks: { - 'astro:server:setup': async ({ server, refreshContent }) => { - // Enregistrer un point de terminaison webhook de serveur de développement - server.middlewares.use('/_refresh', async (req, res) => { - if(req.method !== 'POST') { - res.statusCode = 405 - res.end('Méthode non autorisée'); - return - } - let body = ''; - req.on('data', chunk => { - body += chunk.toString(); - }); - req.on('end', async () => { - try { - const webhookBody = JSON.parse(body); - await refreshContent({ - context: { webhookBody }, - loaders: ['mon-chargeur'] - }); - res.writeHead(200, { 'Content-Type': 'application/json' }); - res.end(JSON.stringify({ message: 'Contenu actualisé avec succès' })); - } catch (error) { - res.writeHead(500, { 'Content-Type': 'application/json' }); - res.end(JSON.stringify({ error: "Échec de l'actualisation du contenu : " + error.message })); - } - }); - }); +{ + name: 'mon-integration', + hooks: { + 'astro:server:setup': async ({ server, refreshContent }) => { + // Enregistrer un point de terminaison webhook de serveur de développement + server.middlewares.use('/_refresh', async (req, res) => { + if(req.method !== 'POST') { + res.statusCode = 405 + res.end('Méthode non autorisée'); + return } + let body = ''; + req.on('data', chunk => { + body += chunk.toString(); + }); + req.on('end', async () => { + try { + const webhookBody = JSON.parse(body); + await refreshContent({ + context: { webhookBody }, + loaders: ['mon-chargeur'] + }); + res.writeHead(200, { 'Content-Type': 'application/json' }); + res.end(JSON.stringify({ message: 'Contenu actualisé avec succès' })); + } catch (error) { + res.writeHead(500, { 'Content-Type': 'application/json' }); + res.end(JSON.stringify({ error: "Échec de l'actualisation du contenu : " + error.message })); + } + }); + }); } + } } ``` @@ -873,10 +873,10 @@ Le chargeur peut ensuite accéder à la propriété `refreshContextData` pour ob

-**Type :** [`AddressInfo`](https://microsoft.github.io/PowerBI-JavaScript/interfaces/_node_modules__types_node_net_d_._net_.addressinfo.html) +**Type :** `AddressInfo`

-L'adresse, la famille et le numéro de port fournis par le [module Net de Node.js](https://nodejs.org/api/net.html). +L'adresse, la famille et le numéro de port fournis par la [méthode `server.address()` du module Net de Node.js](https://nodejs.org/api/net.html#serveraddress). ### `astro:server:done` @@ -955,10 +955,10 @@ export default {

-**Type :** Map\PageBuildData\> +**Type :** `Map`

-Un objet `Map` avec une liste de pages comme nom de propriété et leurs données de compilation comme valeur. +Un objet `Map` avec une liste de pages comme nom de propriété et [leurs données de compilation](#données-de-compilation-dune-page) comme valeur. Cela peut être utilisé pour effectuer une action si une route correspond à un critère : @@ -977,6 +977,57 @@ export default { } ``` +#### Données de compilation d'une page + +Un objet décrivant comment compiler une page. + +###### `key` + +

+ +**Type :** `string`
+ +

+ +Spécifie un identifiant unique pour la page. + +###### `component` + +

+ +**Type :** `string` +

+ +Spécifie l'URL du composant source. + +###### `route` + +

+ +**Type :** [`RouteData`](#routedata) +

+ +Décrit les informations relatives à la route de la page. + +###### `moduleSpecifier` + +

+ +**Type :** `string` +

+ +Définit une chaîne de caractères pouvant être résolue en un chemin d'accès au fichier pour le module. + +###### `styles` + +

+ +**Type :** `Array<{ depth: number; order: number; sheet: { type: 'inline'; content: string } | { type: 'external'; src: string } }>`
+ +

+ +Une liste des styles à afficher dans la page. Chaque style indique sa profondeur dans l'arborescence des composants (`depth`) et son ordre d'affichage sur la page (`order`), ainsi que s'il doit être appliqué en tant que style incorporé à la page ou style externe. + #### Option `target`

@@ -1052,7 +1103,7 @@ export default {

-**Type :** [`SerializedSSRManifest`](https://github.com/withastro/astro/blob/3b10b97a4fecd1dfd959b160a07b5b8427fe40a7/packages/astro/src/core/app/types.ts#L91-L109) +**Type :** [`SerializedSSRManifest`](#propriétés-sérialisées-du-manifeste-ssr)

Vous permet de créer une compilation personnalisée en accédant au manifeste SSR. @@ -1071,6 +1122,77 @@ export default { } ``` +##### Propriétés sérialisées du manifeste SSR + +Une version sérialisée de [`SSRManifest`](#ssrmanifest), accessible via le [hook `astro:build:ssr`](#astrobuildssr). Elle contient les mêmes informations que `SSRManifest`, avec certaines propriétés ayant été converties en formats sérialisables. + +###### `routes` + +

+ +**Type :** `SerializedRouteInfo[]` +

+ +Définit une liste d'informations de routage sérialisées. Chaque route contient les mêmes propriétés que [`SSRManifest.routes`](#routes-1), avec `routeData` converti au format sérialisable JSON. + +###### `assets` + +

+ +**Type :** `string[]` +

+ +Définit une liste de chemins d'accès aux fichiers de ressources sérialisés. + +###### `componentMetadata` + +

+ +**Type :** [string, SSRComponentMetadata][]
+ +

+ +Définit un tableau de paires clé-valeur où le premier élément est l'identifiant du composant et le second est un objet décrivant les métadonnées de compilation. + +###### `inlinedScripts` + +

+ +**Type :** `[string, string][]` +

+ +Définit un tableau de paires clé-valeur où chaque entrée est un tuple. Le premier élément est l'identifiant du script et le second est le contenu du script. + +###### `clientDirectives` + +

+ +**Type :** `[string, string][]`
+ +

+ +Définit un tableau de paires clé-valeur où le premier élément est le nom de la directive (par exemple `load`, `visible`) et le second est le code d'implémentation de la directive. + +###### `serverIslandNameMap` + +

+ +**Type :** `[string, string][]`
+ +

+ +Définit un tableau de paires clé-valeur où chaque entrée est un tuple. Le premier élément est le chemin du composant et le second est le nom attribué. + +###### `key` + +

+ +**Type :** `string`
+ +

+ +Spécifie la clé cryptographique, sérialisée sous forme de chaîne de caractères, utilisée pour chiffrer les propriétés de l'îlôt de serveur. + #### Option `entryPoints`

@@ -1146,7 +1268,9 @@ export default { **Type :** [`URL`](https://developer.mozilla.org/fr/docs/Web/API/URL)

-Un chemin URL vers le répertoire de sortie de la compilation. Notez que si vous avez besoin d'une chaîne de chemin absolu valide, vous devez utiliser l'utilitaire intégré [`fileURLToPath`](https://nodejs.org/api/url.html#urlfileurltopathurl-options) de Node. +Un chemin URL vers le répertoire de sortie de la compilation. + +L'exemple suivant utilise l'utilitaire [`fileURLToPath()`](https://nodejs.org/api/url.html#urlfileurltopathurl-options) intégré à Node pour calculer une chaîne de chemin absolu valide pour un fichier fourni par l'intégration : ```js import { fileURLToPath } from 'node:url'; @@ -1187,7 +1311,9 @@ export default { **Type :** [`URL`](https://developer.mozilla.org/fr/docs/Web/API/URL)

-Un chemin URL vers le répertoire de sortie de la compilation. Notez que si vous avez besoin d'un chemin absolu valide, vous devriez utiliser l'utilitaire intégré [`fileURLToPath`](https://nodejs.org/api/url.html#urlfileurltopathurl-options) de Node. +Un chemin URL vers le répertoire de sortie de la compilation. + +L'exemple suivant utilise l'utilitaire [`fileURLToPath()`](https://nodejs.org/api/url.html#urlfileurltopathurl-options) intégré à Node pour calculer une chaîne de chemin absolu valide pour un fichier fourni par l'intégration avant d'écrire à l'intérieur : ```js import { writeFile } from 'node:fs/promises'; @@ -1242,7 +1368,7 @@ Contient les URL vers les chemins des fichiers de sortie, regroupés par la prop **Type :** `{ pathname: string }[]`

-Une liste de toutes les pages générées. Il s'agit d'un objet avec une propriété. +Une liste de toutes les pages générées. Chaque entrée est un objet possédant une seule propriété : - `pathname` - le chemin finalisé de la page. @@ -1269,12 +1395,21 @@ Les types suivants peuvent être importés depuis le module `astro` : ```ts import type { AstroIntegrationLogger, + AstroIntegrationMiddleware, + AstroMiddlewareInstance, + AstroRenderer, + ClientDirectiveConfig, HookParameters, IntegrationResolvedRoute, RedirectConfig, RouteData, RoutePart, RouteType, + SSRComponentMetadata, + SSRLoadedRenderer, + SSRLoadedRendererValue, + SSRManifest, + SSRManifestCSP, ValidRedirectStatus, // Les éléments suivants sont dépréciés : IntegrationRouteData, @@ -1344,9 +1479,110 @@ L'exemple ci-dessus produira des journaux avec `[astro-format]` par défaut, et [astro-format/build] Compilation terminée. ``` +### `AstroIntegrationMiddleware` + +

+ +**Type :** `{ order: "pre" | "post"; entrypoint: string | URL; }` +

+ +Décrit un [middleware ajouté par une intégration](#option-addmiddleware). + +#### `order` + +

+ +**Type :** `"pre" | "post"` +

+ +Spécifie si le middleware doit s'exécuter avant (`pre`) ou après (`post`) les autres middlewares. + +#### `entrypoint` + +

+ +**Type :** `string | URL` +

+ +Définit le chemin d'importation du middleware. + +### `AstroMiddlewareInstance` + +

+ +**Type :** \{ onRequest?: MiddlewareHandler; \} +

+ +Un objet contenant une propriété [`onRequest()`](/fr/reference/modules/astro-middleware/#onrequest) définie avec la fonction middleware du projet lorsqu'elle existe. + +### `AstroRenderer` + +

+ +**Type :** `{ name: string; clientEntrypoint?: string | URL; serverEntrypoint: string | URL; }` +

+ +Décrit un [moteur de rendu de composants de framework ajouté par une intégration](#option-addrenderer). + +#### `name` + +

+ +**Type :** `string` +

+ +Le nom du moteur de rendu de composants de framework. + +#### `clientEntrypoint` + +

+ +**Type :** `string | URL` +

+ +Définit le chemin d'importation du moteur de rendu qui s'exécute côté client chaque fois que votre composant est utilisé. + +#### `serverEntrypoint` + +

+ +**Type :** `string | URL` +

+ +Définit le chemin d'importation du moteur de rendu qui s'exécute lors des requêtes côté serveur ou des compilations statiques chaque fois que votre composant est utilisé. + +### `ClientDirectiveConfig` + +

+ +**Type :** `{ name: string; entrypoint: string | URL; }` +

+ +Décrit une [directive client personnalisée ajoutée par une intégration](#option-addclientdirective). + +#### `name` + +

+ +**Type :** `string` +

+ +Un nom personnalisé pour l'événement déclenché par la directive. + +#### `entrypoint` + +

+ +**Type :** `string | URL` +

+ +Définit le chemin d'importation du code exécuté chaque fois que la directive est utilisée. + ### `HookParameters` -Vous pouvez obtenir le type des arguments d'un hook en transmettant le nom du hook à l'utilitaire de typage `HookParameters`. Dans l'exemple suivant, l'argument `options` d'une fonction est typé pour correspondre aux paramètres du hook `astro:config:setup` : +Vous pouvez obtenir le type des arguments d'un hook en transmettant le nom du hook à l'utilitaire de typage `HookParameters`. + +Dans l'exemple suivant, l'argument `options` d'une fonction est typé pour correspondre aux paramètres du [hook `astro:config:setup`](#astroconfigsetup) : ```ts /HookParameters(?:<.+>)?/ import type { HookParameters } from 'astro'; @@ -1436,7 +1672,7 @@ Décrit la destination d'une redirection. Il peut s'agir d'une chaîne de caract ### `RouteData` -Décrit les informations à propos d'une route. Ceci contient les propriétés suivantes : +Décrit les informations à propos d'une route. #### `route` @@ -1609,7 +1845,7 @@ Détermine si une route provient du noyau Astro (`internal`), d'une intégration **Type :** `{ content: string; dynamic: boolean; spread: boolean; }`

-Décrit un segment de route. Ceci contient les propriétés suivantes : +Décrit un segment de route. #### `content` @@ -1655,6 +1891,659 @@ Une union des types de route pris en charge : * `redirect` : une route qui pointe vers une autre route qui se trouve dans le système de fichiers * `fallback` : une route qui n'existe pas dans le système de fichiers et qui doit être gérée par d'autres moyens, généralement un middleware +### `SSRComponentMetadata` + +

+ +**Type :** `{ propagation: PropagationHint; containsHead: boolean; }` +

+ +Décrit les métadonnées de compilation d'un composant rendu par le serveur. + +#### `propagation` + +

+ +**Type :** `'none' | 'self' | 'in-tree'` +

+ +Une description de la manière d'afficher le contenu de l'en-tête à partir de ce composant, y compris si l'environnement d'exécution Astro doit attendre un composant : +- `none` : Le composant ne propage pas le contenu de l'en-tête. +- `self` : Ce composant ajoute le contenu de l'en-tête. +- `in-tree` : Un autre composant de l'arbre de dépendances de ce composant ajoute le contenu d'en-tête. + +#### `containsHead` + +

+ +**Type :** `boolean` +

+ +Détermine si le composant contient le contenu de l'en-tête. + +### `SSRLoadedRenderer` + +

+ +**Type :** `{ name: string; clientEntrypoint?: string | URL; ssr: SSRLoadedRendererValue; }` +

+ +Décrit un moteur de rendu disponible pour le serveur. Il s'agit d'un sous-ensemble de [`AstroRenderer`](#astrorenderer) avec des propriétés supplémentaires. + +#### `ssr` + +

+ +**Type :** [`SSRLoadedRendererValue`](#ssrloadedrenderervalue) +

+ +Définit les fonctions et la configuration utilisées par le serveur pour ce framework. + +### `SSRLoadedRendererValue` + +Contient les fonctions et la configuration nécessaires pour générer les composants sur le serveur à partir d'un framework d'interface utilisateur spécifique. + +#### `name` + +

+ +**Type :** `string` +

+ +Spécifie le nom identifiant le moteur de rendu. + +#### `check()` + +

+ +**Type :** `AsyncRendererComponentFn` +

+ +Détermine si le moteur de rendu doit gérer le composant. + +#### `renderToStaticMarkup()` + +

+ +**Type :** `AsyncRendererComponentFn<{ html: string; attrs?: Record; }>` +

+ +Génère un composant de framework sous forme de balisage HTML statique sur le serveur. + +#### `supportsAstroStaticSlot` + +

+ +**Type :** `boolean`
+ +

+ +Indique si le moteur de rendu prend en charge l'optimisation des slots statiques d'Astro. Lorsque cette option est activée, Astro empêche la suppression des slots imbriqués au sein des îlots. + +#### `renderHydrationScript()` + +

+ +**Type :** `() => string`
+ +

+ +Renvoie un script d'hydratation spécifique au framework qui doit être injecté dans le HTML avant le premier composant utilisant ce moteur de rendu. + +### `SSRManifest` + +Un objet contenant la configuration de compilation et les métadonnées du projet que les adaptateurs serveur utilisent au moment de l'exécution pour servir des pages rendues à la demande. + +#### `hrefRoot` + +

+ +**Type :** `string`
+ +

+ +Spécifie le chemin racine utilisé pour générer les URL. + +#### `adapterName` + +

+ +**Type :** `string` +

+ +Définit le nom de l'[adaptateur serveur](/fr/guides/on-demand-rendering/#adaptateurs-de-serveur) utilisé pour le rendu à la demande. + +#### `routes` + +

+ +**Type :** `RouteInfo[]` +

+ +Une liste d'informations à propos des routes disponibles dans ce projet. Chaque entrée contient les propriétés suivantes. + +##### `routeData` + +

+ +**Type :** [`RouteData`](#routedata) +

+ +Un objet décrivant les informations connues concernant une route. + +##### `file` + +

+ +**Type :** `string` +

+ +Spécifie le chemin d'accès au fichier de point d'entrée pour la route générée. + +##### `links` + +

+ +**Type :** `string[]` +

+ +Définit une liste d'[éléments HTML `link`](https://developer.mozilla.org/fr/docs/Web/HTML/Reference/Elements/link) requis par cette route. + +##### `scripts` + +

+ +**Type :** `Array<{ children: string; stage: string } | { type: 'inline' | 'external'; value: string }>` +

+ +Définit une liste des scripts associés à cette route. Cela inclut à la fois les scripts injectés par intégration avec les propriétés `children` et `stage` et les scripts hissés avec les propriétés `type` et `value`. + +##### `styles` + +

+ +**Type :** `Array<{ type: "inline"; content: string; } | { type: "external"; src: string; }>`
+ +

+ +Définit la liste des feuilles de style associées à cette route. Cela inclut à la fois les styles incorporés à la page et les URL de feuilles de style. + +#### `site` + +

+ +**Type :** `string` +

+ +Spécifie le [`site` configuré](/fr/reference/configuration-reference/#site). + +#### `base` + +

+ +**Type :** `string` +

+ +Spécifie le [chemin de `base` configuré](/fr/reference/configuration-reference/#base) vers lequel déployer. + +#### `userAssetsBase` + +

+ +**Type :** `string | undefined`
+ +

+ +Spécifie le chemin de base à utiliser en mode développement pour les ressources générées par l'utilisateur, telles que les scripts et les styles. + +#### `trailingSlash` + +

+ +**Type :** [`AstroConfig['trailingSlash']`](/fr/reference/configuration-reference/#trailingslash)
+ +

+ +Spécifie le [comportement configuré pour les barres obliques finales](/fr/reference/configuration-reference/#trailingslash) en mode développement et pour les pages rendues à la demande. + +#### `buildFormat` + +

+ +**Type :** [`NonNullable['format']`](/fr/reference/configuration-reference/#buildformat)
+ +

+ +Spécifie le [format configuré pour le fichier de sortie](/fr/reference/configuration-reference/#buildformat). + +#### `compressHTML` + +

+ +**Type :** `boolean`
+ +

+ +Détermine si la [minification HTML est activée dans la configuration du projet](/fr/reference/configuration-reference/#compresshtml). + +#### `assetsPrefix` + +

+ +**Type :** `string | ({ fallback: string; } & Record) | undefined`
+ +

+ +Spécifie le [préfixe configuré pour les liens vers les ressources générées par Astro](/fr/reference/configuration-reference/#buildassetsprefix). + +#### `renderers` + +

+ +**Type :** SSRLoadedRenderer[] +

+ +Une liste des moteurs de rendu (par exemple React, Vue, Svelte, MDX) disponibles pour le serveur. + +#### `clientDirectives` + +

+ +**Type :** `Map`
+ +

+ +Définit une correspondance entre les noms des directives client (par exemple, `load`, `visible`) et leur code d'implémentation. Cela inclut à la fois les [directives client intégrées](/fr/reference/directives-reference/#directives-client) et les [directives client personnalisées](/fr/reference/directives-reference/#directives-client-personnalisées). + +#### `entryModules` + +

+ +**Type :** `Record` +

+ +Définit une correspondance entre les points d'entrée et les chemins d'accès de leurs fichiers de sortie. + +#### `inlinedScripts` + +

+ +**Type :** `Map`
+ +

+ +Définit une correspondance entre les identifiants de script et leur contenu pour les scripts qui seront incorporés dans la sortie HTML. + +#### `assets` + +

+ +**Type :** `Set` +

+ +Définit un ensemble de chemins d'accès aux fichiers pour tous les éléments faisant partie de la compilation. + +#### `componentMetadata` + +

+ +**Type :** Map\SSRComponentMetadata\>
+ +

+ +Définit une correspondance entre les identifiants des composants et leurs métadonnées de compilation. Chaque entrée contient des informations sur le comportement de [`propagation`](#propagation) et indique si elle contient des éléments d'en-tête. + +#### `pageModule` + +

+ +**Type :** `{ page: ImportComponentInstance; onRequest?: MiddlewareHandler; renderers: SSRLoadedRenderer[]; }`
+ +

+ +Spécifie les informations relatives à un module de page. + +##### `page()` + +

+ +**Type :** `() => Promise` +

+ +Une fonction permettant de récupérer une instance du composant de page. + +##### `onRequest()` + +

+ +**Type :** [`MiddlewareHandler`](/fr/reference/modules/astro-middleware/#middlewarehandler)
+ +

+ +Une [fonction middleware Astro](/fr/reference/modules/astro-middleware/#onrequest) lorsqu'elle est définie dans le projet utilisateur. + +##### `renderers` + +

+ +**Type :** SSRLoadedRenderer[] +

+ +Une liste des moteurs de rendu qu'un serveur peut utiliser pour cette page. + +#### `pageMap` + +

+ +**Type :** Map\ Promise\<typeof pageModule\>\> +

+ +Définit une correspondance entre les chemins des composants et leurs instances importables. + +#### `serverIslandMap` + +

+ +**Type :** `Map Promise>`
+ +

+ +Définit une correspondance entre les identifiants des îlôts de serveur et leurs instances de composants. + +#### `serverIslandNameMap` + +

+ +**Type :** `Map`
+ +

+ +Définit une correspondance entre les chemins d'accès aux composants d'îlôts de serveur et leurs noms attribués. + +#### `key` + +

+ +**Type :** `Promise`
+ +

+ +Détermine la [clé cryptographique](https://developer.mozilla.org/fr/docs/Web/API/CryptoKey) utilisée pour chiffrer les propriétés des îlôts de serveur. + +#### `i18n` + +

+ +**Type :** `SSRManifestI18n | undefined`
+ +

+ +Spécifie la [configuration `i18n`](/fr/reference/configuration-reference/#i18n) résolue lorsqu'elle est activée dans le projet. + +##### `strategy` + +

+ +**Type :** `"manual" | "pathname-prefix-always" | "pathname-prefix-other-locales" | "pathname-prefix-always-no-redirect" | "domains-prefix-always" | "domains-prefix-other-locales" | "domains-prefix-always-no-redirect"` +

+ +Définit la [stratégie de routage i18n](/fr/reference/configuration-reference/#i18nrouting) configurée. Celle-ci détermine la manière dont les paramètres régionaux sont gérés dans les URL et si des redirections sont effectuées. + +##### `locales` + +

+ +**Type :** `Locales` +

+ +Spécifie une liste des [paramètres régionaux pris en charge et configurés dans le projet](/fr/reference/configuration-reference/#i18nlocales). + +##### `defaultLocale` + +

+ +**Type :** `string` +

+ +Détermine le [paramètre régional par défaut configuré dans le projet](/fr/reference/configuration-reference/#i18ndefaultlocale). + +##### `fallback` + +

+ +**Type :** `Record | undefined` +

+ +Spécifie une correspondance entre des paramètres régionaux et leurs paramètres régionaux de repli tels que [configurés dans `i18n.fallback`](/fr/reference/configuration-reference/#i18nfallback). + +##### `fallbackType` + +

+ +**Type :** `"redirect" | "rewrite"` +

+ +Détermine la [stratégie de repli configurée pour le projet](/fr/reference/configuration-reference/#i18nroutingfallbacktype). + +##### `domainLookupTable` + +

+ +**Type :** `Record` +

+ +Une correspondance entre les [domaines configurés](/fr/reference/configuration-reference/#i18ndomains) et leurs paramètres régionaux associés. + +#### `middleware` + +

+ +**Type :** () => Promise\<AstroMiddlewareInstance\> | AstroMiddlewareInstance
+ +

+ +Définit une instance pour charger le middleware. + +#### `actions` + +

+ +**Type :** () => Promise\<\{ server: Record\ActionClient\>; \}\> | \{ server: Record\ActionClient\>; \}
+ +

+ +Un objet, ou une fonction qui renvoie un objet, avec une propriété `server` qui associe les noms d'actions à leurs fonctions exécutables. + +#### `checkOrigin` + +

+ +**Type :** `boolean`
+ +

+ +Détermine si [la vérification d'origine est activée dans la configuration de sécurité](/fr/reference/configuration-reference/#securitycheckorigin). + +#### `allowedDomains` + +

+ +**Type :** Partial\<RemotePattern\>[] +

+ +Spécifie la [liste configurée des modèles d'hôtes autorisés](/fr/reference/configuration-reference/#securityalloweddomains) pour les requêtes entrantes lors de l'utilisation du rendu à la demande. + +#### `sessionConfig` + +

+ +**Type :** SessionConfig\ & \{ driverModule?: () => Promise\<\{ default: () => unstorage.Driver \}\>; }
+ +

+ +Un objet contenant la [configuration de session résolue](/fr/reference/configuration-reference/#options-des-sessions) et une propriété supplémentaire définissant le pilote utilisé. + +#### `cacheDir` + +

+ +**Type :** `string | URL`
+ +

+ +Spécifie le [répertoire configuré pour la mise en cache des artefacts de compilation](/fr/reference/configuration-reference/#cachedir). + +#### `srcDir` + +

+ +**Type :** `string | URL`
+ +

+ +Spécifie le [répertoire configuré à partir duquel Astro lira le site](/fr/reference/configuration-reference/#srcdir). + +#### `outDir` + +

+ +**Type :** `string | URL`
+ +

+ +Spécifie le [répertoire configuré dans lequel écrire la version compilée](/fr/reference/configuration-reference/#outdir). + +#### `publicDir` + +

+ +**Type :** `string | URL`
+ +

+ +Spécifie le [répertoire configuré pour les ressources statiques](/fr/reference/configuration-reference/#publicdir). + +#### `buildClientDir` + +

+ +**Type :** `string | URL`
+ +

+ +Détermine le chemin d'accès dans le répertoire de compilation où les artefacts de compilation côté client (par exemple, JavaScript, CSS) sont générés. + +#### `buildServerDir` + +

+ +**Type :** `string | URL`
+ +

+ +Détermine le chemin d'accès où les artefacts de compilation côté serveur sont générés dans le répertoire de compilation. + +#### `csp` + +

+ +**Type :** SSRManifestCSP | undefined
+ +

+ +Un objet décrivant la configuration de la stratégie de sécurité du contenu. + +#### `internalFetchHeaders` + +

+ +**Type :** `Record`
+ +

+ +Spécifie les en-têtes qui sont automatiquement ajoutés aux requêtes de récupération internes effectuées lors du rendu. + +### `SSRManifestCSP` + +

+ + +

+ +Décrit la [configuration de la stratégie de sécurité du contenu](/fr/reference/experimental-flags/csp/). + +#### `cspDestination` + +

+ +**Type :** `'adapter' | 'meta' | 'header' | undefined` +

+ +Spécifie si les directives CSP doivent être injectées en tant qu'élément `meta`, en tant qu'en-tête de réponse, ou par l'[`adapter` lorsqu'il prend en charge la définition des en-têtes de réponse](/fr/reference/adapter-reference/#experimentalstaticheaders). + +#### `algorithm` + +

+ +**Type :** `'SHA-256' | 'SHA-384' | 'SHA-512'` +

+ +Spécifie la [fonction de hachage configurée](/fr/reference/experimental-flags/csp/#algorithm). + +#### `scriptHashes` + +

+ +**Type :** `string[]` +

+ +Spécifie une liste des hachages générés pour les scripts du projet et des [hachages fournis par l'utilisateur](/fr/reference/experimental-flags/csp/#hashes) pour les scripts externes. + +#### `scriptResources` + +

+ +**Type :** `string[]` +

+ +Spécifie une liste de sources valides combinant les [ressources de script configurées](/fr/reference/experimental-flags/csp/#resources) et les [ressources de script injectées](/fr/reference/experimental-flags/csp/#cspinsertscriptresource). + +#### `isStrictDynamic` + +

+ +**Type :** `boolean` +

+ +Détermine si la prise en charge de l'[injection de script dynamique est activée dans la configuration](/fr/reference/experimental-flags/csp/#strictdynamic). + +#### `styleHashes` + +

+ +**Type :** `string[]` +

+ +Spécifie une liste des hachages générés pour les styles du projet et des [hachages fournis par l'utilisateur](/fr/reference/experimental-flags/csp/#hashes) pour les styles externes. + +#### `styleResources` + +

+ +**Type :** `string[]` +

+ +Spécifie une liste de sources valides combinant les [ressources de style configurées](/fr/reference/experimental-flags/csp/#resources) et les [ressources de style injectées](/fr/reference/experimental-flags/csp/#cspinsertstyleresource). + +#### `directives` + +

+ +**Type :** `CspDirective[]` +

+ +Spécifie la [liste configurée des sources valides](/fr/reference/experimental-flags/csp/#directives) pour des types de contenu spécifiques. + ### `ValidRedirectStatus`