UNPKG

@vyxos/astro-i18next

Version:

I18next integration for Astro with dynamic namespace loading.

40 lines (38 loc) 1.17 kB
'use strict'; // src/router-integration.ts function isBrowser() { return typeof globalThis !== "undefined" && "window" in globalThis; } function getGlobalWindow() { return isBrowser() ? window : void 0; } async function loadNamespacesForRoute(namespaces) { const win = getGlobalWindow(); if (win?.__i18nLoadNamespaces) { try { await win.__i18nLoadNamespaces(namespaces); } catch (error) { console.warn("[i18next] Failed to load namespaces:", namespaces, error); } } } async function useLoadNamespaces(namespaces) { const win = getGlobalWindow(); if (win?.__i18nLoadNamespaces) { return win.__i18nLoadNamespaces(namespaces); } return Promise.resolve(); } function preloadNamespaces(namespaces) { const win = getGlobalWindow(); if (win?.__i18nLoadNamespaces) { win.__i18nLoadNamespaces(namespaces).catch( (error) => console.warn("[i18next] Preload failed:", namespaces, error) ); } } exports.loadNamespacesForRoute = loadNamespacesForRoute; exports.preloadNamespaces = preloadNamespaces; exports.useLoadNamespaces = useLoadNamespaces; //# sourceMappingURL=client.cjs.map //# sourceMappingURL=client.cjs.map