Autor:
    Data utworzenia:2026-01-21Ostatnia aktualizacja:2026-09-19

    Pakiet astro-intlayer

    Pakiet astro-intlayer dostarcza narzędzi do integracji Intlayer z aplikacjami Astro. Konfiguruje routing oparty na lokalizacji, zarządzanie słownikami, przepisywanie stron w czasie budowy, middleware zapytań oraz hooki do pobierania wielojęzycznych treści zarówno w komponentach .astro renderowanych po stronie serwera, jak i w skryptach klienta.

    Instalacja

    bash
    npm install astro-intlayer
    

    Eksporty

    Integracja

    Pakiet astro-intlayer dostarcza integrację Astro, która konfiguruje Intlayer w projekcie.

    Import:

    tsx
    import { intlayer } from "astro-intlayer";
    

    lub import domyślny w astro.config.mjs:

    ts
    import { defineConfig } from "astro/config";
    import intlayer from "astro-intlayer";
    
    export default defineConfig({
      integrations: [intlayer()],
    });
    
    FunkcjaOpisPowiązana dokumentacja
    intlayerIntegracja Astro, która przygotowuje słowniki, konfiguruje wtyczki Vite (aliasy, proxy routingu, usuwanie zbędnego kodu), automatycznie rejestruje middleware oraz generuje wstępnie renderowane strony.intlayer

    Hooki (Serwer i Klient)

    Import:

    tsx
    import { useIntlayer, useDictionary, useLocale } from "astro-intlayer";
    
    HookOpisPowiązana dokumentacja
    useIntlayerPobiera słownik na podstawie klucza i zwraca zlokalizowaną treść. W sekcji frontmatter .astro odczytuje lokalizację z Astro.locals. W <script> klienta korzysta z magazynu klienta.useIntlayer
    useDictionaryPrzetwarza obiekt słownika i zwraca treść dla ustalonej lokalizacji. Działa w frontmatter oraz skryptach klienta.useDictionary
    useLocaleZwraca aktualną lokalizację, domyślną lokalizację, dostępne lokalizacje oraz funkcję do aktualizacji lokalizacji.useLocale

    Middleware (astro-intlayer/middleware)

    Import:

    tsx
    import { onRequest } from "astro-intlayer/middleware";
    
    EksportTypOpisPowiązana dokumentacja
    onRequestMiddlewareHandlerMiddleware Astro, które wykrywa lokalizację zapytania i dołącza Astro.locals.intlayer. Rejestrowane automatycznie przez intlayer() lub importowane do kompozycji.onRequest

    Narzędzia pomocnicze

    Import:

    tsx
    import { getIntlayerLocals } from "astro-intlayer";
    
    FunkcjaOpisPowiązana dokumentacja
    getIntlayerLocalsFunkcja pomocnicza do pobierania obiektu IntlayerLocals z kontekstu zapytania poza zakresem Astro.locals.-

    Narzędzia klienta (astro-intlayer/client)

    Import:

    tsx
    import {
      useIntlayer,
      useDictionary,
      useDictionaryDynamic,
      useLocale,
      useLocaleStorage,
      useLocaleCookie,
      getIntlayer,
      getDictionary,
      installIntlayer,
      setLocaleInStorage,
      setLocaleCookie,
      localeInStorage,
      localeCookie,
    } from "astro-intlayer/client";
    

    Po zaimportowaniu w przeglądarce lub wewnątrz tagów <script> klienta, astro-intlayer automatycznie mapuje do astro-intlayer/client (opartego na vanilla-intlayer), zapewniając gettery słowników po stronie klienta, subskrypcje magazynu oraz narzędzia do utrwalania lokalizacji.

    Formatery (astro-intlayer/format)

    Import:

    tsx
    import {
      useIntl,
      useDate,
      useNumber,
      useCurrency,
      usePercentage,
      useRelativeTime,
      useList,
      useUnit,
      useCompact,
    } from "astro-intlayer/format";
    
    HookOpis
    useIntlZwraca instancję Intl powiązaną z lokalizacją zapytania lub klienta, z obsługą pamięci podręcznej.
    useDateZwraca funkcję formatowania daty powiązaną z bieżącą lokalizacją (Intl.DateTimeFormat).
    useNumberZwraca funkcję formatowania liczb powiązaną z bieżącą lokalizacją (Intl.NumberFormat).
    useCurrencyZwraca funkcję formatowania waluty powiązaną z bieżącą lokalizacją.
    usePercentageZwraca funkcję formatowania wartości procentowych powiązaną z bieżącą lokalizacją.
    useRelativeTimeZwraca funkcję formatowania czasu względnego powiązaną z bieżącą lokalizacją (Intl.RelativeTimeFormat).
    useListZwraca funkcję formatowania list powiązaną z bieżącą lokalizacją (Intl.ListFormat).
    useUnitZwraca funkcję formatowania jednostek powiązaną z bieżącą lokalizacją.
    useCompactZwraca funkcję kompaktowego formatowania liczb powiązaną z bieżącą lokalizacją (np. 1.5K).

    Narzędzia HTML (astro-intlayer/html)

    Import:

    tsx
    import { renderHTML, useHTML, useHTMLRenderer } from "astro-intlayer/html";
    
    EksportTypOpis
    renderHTMLFunctionSamodzielna funkcja narzędziowa do renderowania węzłów HTML.
    useHTMLHookHook do pobierania kontekstu dostawcy HTML oraz konfiguracji.
    useHTMLRendererHookHook do uzyskania wstępnie skonfigurowanej funkcji renderera HTML.

    Narzędzia Markdown (astro-intlayer/markdown)

    Import:

    tsx
    import {
      compileMarkdown,
      renderMarkdown,
      parseMarkdown,
      useMarkdown,
      useMarkdownRenderer,
    } from "astro-intlayer/markdown";
    
    EksportTypOpis
    compileMarkdownFunctionKompiluje ciągi znaków markdown do postaci ustrukturyzowanej.
    renderMarkdownFunctionRenderuje zawartość markdown do węzłów wyjściowych.
    parseMarkdownFunctionAnalizuje surową zawartość markdown do drzewa AST.
    useMarkdownHookHook do pobierania kontekstu dostawcy markdown.
    useMarkdownRendererHookHook do uzyskania wstępnie skonfigurowanej funkcji renderera Markdown.

    Typy

    Import:

    tsx
    import type {
      IntlayerLocals,
      UseLocaleProps,
      UseLocaleResult,
    } from "astro-intlayer";
    
    TypOpis
    IntlayerLocalsObiekt dołączony do Astro.locals.intlayer zawierający locale, defaultLocale oraz availableLocales.
    UseLocalePropsOpcjonalne właściwości konfiguracyjne akceptowane przez useLocale().
    UseLocaleResultTyp zwracany przez useLocale(), zapewniający właściwości lokalizacji i metody aktualizacji.