@generaltranslation/react-core 11.0.0-odysseus.13 → 11.0.0-odysseus.15

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.
Files changed (80) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/dist/components/branches/Plural.shared.cjs +1 -1
  3. package/dist/components/branches/Plural.shared.cjs.map +1 -1
  4. package/dist/components/branches/Plural.shared.mjs +1 -1
  5. package/dist/components/branches/Plural.shared.mjs.map +1 -1
  6. package/dist/components-rsc.cjs +1 -1
  7. package/dist/components-rsc.d.ts +2 -2
  8. package/dist/components-rsc.mjs +1 -1
  9. package/dist/condition-store/singleton-operations.cjs +1 -1
  10. package/dist/condition-store/singleton-operations.cjs.map +1 -1
  11. package/dist/condition-store/singleton-operations.d.ts +2 -7
  12. package/dist/condition-store/singleton-operations.d.ts.map +1 -1
  13. package/dist/condition-store/singleton-operations.mjs +1 -1
  14. package/dist/condition-store/singleton-operations.mjs.map +1 -1
  15. package/dist/context/context.cjs +1 -1
  16. package/dist/context/context.cjs.map +1 -1
  17. package/dist/context/context.mjs +1 -1
  18. package/dist/context/context.mjs.map +1 -1
  19. package/dist/functions/translation/t.cjs +1 -1
  20. package/dist/functions/translation/t.cjs.map +1 -1
  21. package/dist/functions/translation/t.d.ts.map +1 -1
  22. package/dist/functions/translation/t.mjs +1 -1
  23. package/dist/functions/translation/t.mjs.map +1 -1
  24. package/dist/hooks/condition-store.cjs +1 -1
  25. package/dist/hooks/condition-store.cjs.map +1 -1
  26. package/dist/hooks/condition-store.mjs +1 -1
  27. package/dist/hooks/condition-store.mjs.map +1 -1
  28. package/dist/hooks/useGT.cjs +1 -1
  29. package/dist/hooks/useGT.cjs.map +1 -1
  30. package/dist/hooks/useGT.mjs +1 -1
  31. package/dist/hooks/useGT.mjs.map +1 -1
  32. package/dist/hooks/useInternalLocaleSelector.cjs +1 -1
  33. package/dist/hooks/useInternalLocaleSelector.cjs.map +1 -1
  34. package/dist/hooks/useInternalLocaleSelector.mjs +1 -1
  35. package/dist/hooks/useInternalLocaleSelector.mjs.map +1 -1
  36. package/dist/hooks/useInternalRegionSelector.cjs +1 -1
  37. package/dist/hooks/useInternalRegionSelector.cjs.map +1 -1
  38. package/dist/hooks/useInternalRegionSelector.mjs +1 -1
  39. package/dist/hooks/useInternalRegionSelector.mjs.map +1 -1
  40. package/dist/hooks/utils/getShouldTranslate.cjs +1 -1
  41. package/dist/hooks/utils/getShouldTranslate.cjs.map +1 -1
  42. package/dist/hooks/utils/getShouldTranslate.mjs +1 -1
  43. package/dist/hooks/utils/getShouldTranslate.mjs.map +1 -1
  44. package/dist/hooks/utils.d.ts +2 -2
  45. package/dist/hooks/utils.d.ts.map +1 -1
  46. package/dist/pure.cjs +1 -1
  47. package/dist/pure.d.ts +4 -5
  48. package/dist/pure.mjs +1 -1
  49. package/dist/setup/i18nConfig.cjs +1 -1
  50. package/dist/setup/i18nConfig.cjs.map +1 -1
  51. package/dist/setup/i18nConfig.d.ts +31 -3
  52. package/dist/setup/i18nConfig.d.ts.map +1 -1
  53. package/dist/setup/i18nConfig.mjs +1 -1
  54. package/dist/setup/i18nConfig.mjs.map +1 -1
  55. package/dist/setup/initializeGTSRA.cjs.map +1 -1
  56. package/dist/setup/initializeGTSRA.d.ts +2 -2
  57. package/dist/setup/initializeGTSRA.d.ts.map +1 -1
  58. package/dist/setup/initializeGTSRA.mjs.map +1 -1
  59. package/dist/utils/rendering/renderDefaultChildren.shared.cjs +1 -1
  60. package/dist/utils/rendering/renderDefaultChildren.shared.cjs.map +1 -1
  61. package/dist/utils/rendering/renderDefaultChildren.shared.mjs +1 -1
  62. package/dist/utils/rendering/renderDefaultChildren.shared.mjs.map +1 -1
  63. package/dist/utils/rendering/renderTranslatedChildren.shared.cjs +1 -1
  64. package/dist/utils/rendering/renderTranslatedChildren.shared.cjs.map +1 -1
  65. package/dist/utils/rendering/renderTranslatedChildren.shared.mjs +1 -1
  66. package/dist/utils/rendering/renderTranslatedChildren.shared.mjs.map +1 -1
  67. package/dist/utils/translation/prepareT.shared.cjs +1 -1
  68. package/dist/utils/translation/prepareT.shared.cjs.map +1 -1
  69. package/dist/utils/translation/prepareT.shared.mjs +1 -1
  70. package/dist/utils/translation/prepareT.shared.mjs.map +1 -1
  71. package/package.json +4 -15
  72. package/dist/cookies.cjs +0 -1
  73. package/dist/cookies.d.ts +0 -2
  74. package/dist/cookies.mjs +0 -1
  75. package/dist/utils/cookies.cjs +0 -2
  76. package/dist/utils/cookies.cjs.map +0 -1
  77. package/dist/utils/cookies.d.ts +0 -16
  78. package/dist/utils/cookies.d.ts.map +0 -1
  79. package/dist/utils/cookies.mjs +0 -2
  80. package/dist/utils/cookies.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useInternalLocaleSelector.mjs","names":[],"sources":["../../src/hooks/useInternalLocaleSelector.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react';\nimport type { LocaleProperties } from '@generaltranslation/format/types';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale } from './condition-store';\nimport { getLocaleProperties } from 'generaltranslation';\n\n// Explicit return type so the inferred type stays portable for downstream\n// packages (e.g. gt-react-native), otherwise the getLocaleProperties callback\n// pulls in generaltranslation's bundled, non-nameable type (TS2742).\nexport type InternalLocaleSelectorResult = {\n locale: string;\n locales: string[];\n getLocaleProperties: (locale: string) => LocaleProperties;\n};\n\nexport function useInternalLocaleSelector(\n locales?: string[]\n): InternalLocaleSelectorResult {\n // Retrieve the locale, locales, and setLocale function\n const contextLocales = useLocales();\n const customMapping = useCustomMapping();\n const locale = useLocale();\n\n // sort\n const sortedLocales = useMemo(() => {\n if (!contextLocales || contextLocales.length === 0) {\n return [];\n }\n const collator = new Intl.Collator();\n return [...contextLocales].sort((a, b) =>\n collator.compare(\n getLocaleProperties(a, locale, customMapping).nativeNameWithRegionCode,\n getLocaleProperties(b, locale, customMapping).nativeNameWithRegionCode\n )\n );\n }, [contextLocales, locale, customMapping]);\n\n // create getLocaleProperties callback\n const getLocalePropertiesCallback = useCallback(\n (locale: string) => {\n return getLocaleProperties(locale, locale, customMapping);\n },\n [locale, customMapping]\n );\n\n return {\n locale,\n locales: locales ? locales : sortedLocales,\n getLocaleProperties: getLocalePropertiesCallback,\n };\n}\n"],"mappings":"iOAeA,SAAgB,EACd,EAC8B,CAE9B,IAAM,EAAiB,GAAY,CAC7B,EAAgB,GAAkB,CAClC,EAAS,GAAW,CAGpB,EAAgB,MAAc,CAClC,GAAI,CAAC,GAAkB,EAAe,SAAW,EAC/C,MAAO,EAAE,CAEX,IAAM,EAAW,IAAI,KAAK,SAC1B,MAAO,CAAC,GAAG,EAAe,CAAC,MAAM,EAAG,IAClC,EAAS,QACP,EAAoB,EAAG,EAAQ,EAAc,CAAC,yBAC9C,EAAoB,EAAG,EAAQ,EAAc,CAAC,yBAC/C,CACF,EACA,CAAC,EAAgB,EAAQ,EAAc,CAAC,CAGrC,EAA8B,EACjC,GACQ,EAAoB,EAAQ,EAAQ,EAAc,CAE3D,CAAC,EAAQ,EAAc,CACxB,CAED,MAAO,CACL,SACA,QAAS,GAAoB,EAC7B,oBAAqB,EACtB"}
1
+ {"version":3,"file":"useInternalLocaleSelector.mjs","names":[],"sources":["../../src/hooks/useInternalLocaleSelector.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react';\nimport type { LocaleProperties } from '@generaltranslation/format/types';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale } from './condition-store';\nimport { getLocaleProperties } from '@generaltranslation/format';\n\n// Explicit return type so the inferred type stays portable for downstream\n// packages (e.g. gt-react-native), otherwise the getLocaleProperties callback\n// pulls in generaltranslation's bundled, non-nameable type (TS2742).\nexport type InternalLocaleSelectorResult = {\n locale: string;\n locales: string[];\n getLocaleProperties: (locale: string) => LocaleProperties;\n};\n\nexport function useInternalLocaleSelector(\n locales?: string[]\n): InternalLocaleSelectorResult {\n // Retrieve the locale, locales, and setLocale function\n const contextLocales = useLocales();\n const customMapping = useCustomMapping();\n const locale = useLocale();\n\n // sort\n const sortedLocales = useMemo(() => {\n if (!contextLocales || contextLocales.length === 0) {\n return [];\n }\n const collator = new Intl.Collator();\n return [...contextLocales].sort((a, b) =>\n collator.compare(\n getLocaleProperties(a, locale, customMapping).nativeNameWithRegionCode,\n getLocaleProperties(b, locale, customMapping).nativeNameWithRegionCode\n )\n );\n }, [contextLocales, locale, customMapping]);\n\n // create getLocaleProperties callback\n const getLocalePropertiesCallback = useCallback(\n (locale: string) => {\n return getLocaleProperties(locale, locale, customMapping);\n },\n [locale, customMapping]\n );\n\n return {\n locale,\n locales: locales ? locales : sortedLocales,\n getLocaleProperties: getLocalePropertiesCallback,\n };\n}\n"],"mappings":"yOAeA,SAAgB,EACd,EAC8B,CAE9B,IAAM,EAAiB,GAAY,CAC7B,EAAgB,GAAkB,CAClC,EAAS,GAAW,CAGpB,EAAgB,MAAc,CAClC,GAAI,CAAC,GAAkB,EAAe,SAAW,EAC/C,MAAO,EAAE,CAEX,IAAM,EAAW,IAAI,KAAK,SAC1B,MAAO,CAAC,GAAG,EAAe,CAAC,MAAM,EAAG,IAClC,EAAS,QACP,EAAoB,EAAG,EAAQ,EAAc,CAAC,yBAC9C,EAAoB,EAAG,EAAQ,EAAc,CAAC,yBAC/C,CACF,EACA,CAAC,EAAgB,EAAQ,EAAc,CAAC,CAGrC,EAA8B,EACjC,GACQ,EAAoB,EAAQ,EAAQ,EAAc,CAE3D,CAAC,EAAQ,EAAc,CACxB,CAED,MAAO,CACL,SACA,QAAS,GAAoB,EAC7B,oBAAqB,EACtB"}
@@ -1,2 +1,2 @@
1
- require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`./condition-store.cjs`),t=require(`./i18n-config.cjs`);let n=require(`react`),r=require(`gt-i18n/internal`),i=require(`generaltranslation`);function a({regions:a,customMapping:o,prioritizeCurrentLocaleRegion:s=!0,sortRegionsAlphabetically:c=!0}={}){let l=t.useLocales(),u=t.useCustomMapping(),d=e.useLocale(),f=e.useRegion(),{regionCode:p}=(0,i.getLocaleProperties)(d,d,u),[m,h]=(0,n.useMemo)(()=>{let e=(0,r.getI18nConfig)().getGTClass(d),t=new Map(l.map(e=>{let t=(0,i.getLocaleProperties)(e,d,u);return[t.regionCode,t]})),n=a?[...a]:Array.from(t?.keys()||[p]),f=new Map(n.map(n=>[n,{locale:t?.get(n)?.code||d,...e.getRegionProperties(n),...typeof o?.[n]==`string`?{name:o?.[n]}:o?.[n]}]));if(c&&n.sort((e,t)=>new Intl.Collator().compare(f.get(e).name,f.get(t).name)),s){let e=n.indexOf(p);e>0&&(n.splice(e,1),n.unshift(p))}return[n,f]},[a,o,d,p,l,u,s,c]);return{region:f,regions:m,regionData:h,locale:d,localeRegion:p}}exports.useInternalRegionSelector=a;
1
+ require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`./condition-store.cjs`),t=require(`./i18n-config.cjs`);let n=require(`react`),r=require(`gt-i18n/internal`),i=require(`@generaltranslation/format`);function a({regions:a,customMapping:o,prioritizeCurrentLocaleRegion:s=!0,sortRegionsAlphabetically:c=!0}={}){let l=t.useLocales(),u=t.useCustomMapping(),d=e.useLocale(),f=e.useRegion(),{regionCode:p}=(0,i.getLocaleProperties)(d,d,u),[m,h]=(0,n.useMemo)(()=>{let e=(0,r.getI18nConfig)().getGTClass(d),t=new Map(l.map(e=>{let t=(0,i.getLocaleProperties)(e,d,u);return[t.regionCode,t]})),n=a?[...a]:Array.from(t?.keys()||[p]),f=new Map(n.map(n=>[n,{locale:t?.get(n)?.code||d,...e.getRegionProperties(n),...typeof o?.[n]==`string`?{name:o?.[n]}:o?.[n]}]));if(c&&n.sort((e,t)=>new Intl.Collator().compare(f.get(e).name,f.get(t).name)),s){let e=n.indexOf(p);e>0&&(n.splice(e,1),n.unshift(p))}return[n,f]},[a,o,d,p,l,u,s,c]);return{region:f,regions:m,regionData:h,locale:d,localeRegion:p}}exports.useInternalRegionSelector=a;
2
2
  //# sourceMappingURL=useInternalRegionSelector.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInternalRegionSelector.cjs","names":["useLocales","useCustomMapping","useLocale","useRegion"],"sources":["../../src/hooks/useInternalRegionSelector.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale, useRegion } from './condition-store';\nimport { getLocaleProperties } from 'generaltranslation';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\nexport type RegionData = {\n code: string;\n name: string;\n emoji: string;\n locale: string;\n};\n\nexport type InternalRegionSelectorOptions = {\n regions?: string[];\n customMapping?: {\n [region: string]:\n | string\n | { name?: string; emoji?: string; locale?: string };\n };\n prioritizeCurrentLocaleRegion?: boolean;\n sortRegionsAlphabetically?: boolean;\n};\n\nexport type InternalRegionSelectorResult = {\n region: string | undefined;\n regions: string[];\n regionData: Map<string, RegionData>;\n locale: string;\n localeRegion: string;\n};\n\n/**\n * Internal logic for region selection in applications supporting multiple regions.\n *\n * Returns the current region, an ordered list of available regions (inferred\n * from the supported locales when not provided), and a map of region codes to\n * their display data (name, emoji, associated locale).\n */\nexport function useInternalRegionSelector({\n regions: _regions,\n customMapping,\n prioritizeCurrentLocaleRegion = true,\n sortRegionsAlphabetically = true,\n}: InternalRegionSelectorOptions = {}): InternalRegionSelectorResult {\n // Retrieve the locale, locales, and region\n const contextLocales = useLocales();\n const localeCustomMapping = useCustomMapping();\n const locale = useLocale();\n const region = useRegion();\n const { regionCode: localeRegion } = getLocaleProperties(\n locale,\n locale,\n localeCustomMapping\n );\n\n const [\n regions, // ordered list of ISO 3166 region codes\n regionData, // map of ISO 3166 region codes to region display data, potentially not ordered\n ] = useMemo<[string[], Map<string, RegionData>]>(() => {\n const gt = getI18nConfig().getGTClass(locale);\n const regionToLocaleMap = new Map(\n contextLocales.map((l) => {\n const lp = getLocaleProperties(l, locale, localeCustomMapping); // has to be directly called so sourceLocale can be in the user's current locale\n return [lp.regionCode, lp];\n })\n );\n\n const regions = _regions\n ? [..._regions]\n : Array.from(regionToLocaleMap?.keys() || [localeRegion]);\n\n const regionData = new Map<string, RegionData>(\n regions.map((r: string) => {\n return [\n r,\n {\n locale: regionToLocaleMap?.get(r)?.code || locale,\n ...gt.getRegionProperties(r),\n ...(typeof customMapping?.[r] === 'string'\n ? { name: customMapping?.[r] }\n : customMapping?.[r]),\n },\n ];\n })\n );\n\n if (sortRegionsAlphabetically) {\n regions.sort((a, b) =>\n new Intl.Collator().compare(\n regionData.get(a)!.name,\n regionData.get(b)!.name\n )\n );\n }\n\n if (prioritizeCurrentLocaleRegion) {\n const localeRegionIndex = regions.indexOf(localeRegion);\n if (localeRegionIndex > 0) {\n // 0 because no action is needed if it's already at the start\n regions.splice(localeRegionIndex, 1);\n regions.unshift(localeRegion);\n }\n }\n\n return [regions, regionData];\n }, [\n _regions,\n customMapping,\n locale,\n localeRegion,\n contextLocales,\n localeCustomMapping,\n prioritizeCurrentLocaleRegion,\n sortRegionsAlphabetically,\n ]);\n\n return {\n region,\n regions,\n regionData,\n locale,\n localeRegion,\n };\n}\n"],"mappings":"0MAuCA,SAAgB,EAA0B,CACxC,QAAS,EACT,gBACA,gCAAgC,GAChC,4BAA4B,IACK,EAAE,CAAgC,CAEnE,IAAM,EAAiBA,EAAAA,YAAY,CAC7B,EAAsBC,EAAAA,kBAAkB,CACxC,EAASC,EAAAA,WAAW,CACpB,EAASC,EAAAA,WAAW,CACpB,CAAE,WAAY,IAAA,EAAA,EAAA,qBAClB,EACA,EACA,EACD,CAEK,CACJ,EACA,IAAA,EAAA,EAAA,aACqD,CACrD,IAAM,GAAA,EAAA,EAAA,gBAAoB,CAAC,WAAW,EAAO,CACvC,EAAoB,IAAI,IAC5B,EAAe,IAAK,GAAM,CACxB,IAAM,GAAA,EAAA,EAAA,qBAAyB,EAAG,EAAQ,EAAoB,CAC9D,MAAO,CAAC,EAAG,WAAY,EAAG,EAC1B,CACH,CAEK,EAAU,EACZ,CAAC,GAAG,EAAS,CACb,MAAM,KAAK,GAAmB,MAAM,EAAI,CAAC,EAAa,CAAC,CAErD,EAAa,IAAI,IACrB,EAAQ,IAAK,GACJ,CACL,EACA,CACE,OAAQ,GAAmB,IAAI,EAAE,EAAE,MAAQ,EAC3C,GAAG,EAAG,oBAAoB,EAAE,CAC5B,GAAI,OAAO,IAAgB,IAAO,SAC9B,CAAE,KAAM,IAAgB,GAAI,CAC5B,IAAgB,GACrB,CACF,CACD,CACH,CAWD,GATI,GACF,EAAQ,MAAM,EAAG,IACf,IAAI,KAAK,UAAU,CAAC,QAClB,EAAW,IAAI,EAAE,CAAE,KACnB,EAAW,IAAI,EAAE,CAAE,KACpB,CACF,CAGC,EAA+B,CACjC,IAAM,EAAoB,EAAQ,QAAQ,EAAa,CACnD,EAAoB,IAEtB,EAAQ,OAAO,EAAmB,EAAE,CACpC,EAAQ,QAAQ,EAAa,EAIjC,MAAO,CAAC,EAAS,EAAW,EAC3B,CACD,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CAAC,CAEF,MAAO,CACL,SACA,UACA,aACA,SACA,eACD"}
1
+ {"version":3,"file":"useInternalRegionSelector.cjs","names":["useLocales","useCustomMapping","useLocale","useRegion"],"sources":["../../src/hooks/useInternalRegionSelector.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale, useRegion } from './condition-store';\nimport { getLocaleProperties } from '@generaltranslation/format';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\nexport type RegionData = {\n code: string;\n name: string;\n emoji: string;\n locale: string;\n};\n\nexport type InternalRegionSelectorOptions = {\n regions?: string[];\n customMapping?: {\n [region: string]:\n | string\n | { name?: string; emoji?: string; locale?: string };\n };\n prioritizeCurrentLocaleRegion?: boolean;\n sortRegionsAlphabetically?: boolean;\n};\n\nexport type InternalRegionSelectorResult = {\n region: string | undefined;\n regions: string[];\n regionData: Map<string, RegionData>;\n locale: string;\n localeRegion: string;\n};\n\n/**\n * Internal logic for region selection in applications supporting multiple regions.\n *\n * Returns the current region, an ordered list of available regions (inferred\n * from the supported locales when not provided), and a map of region codes to\n * their display data (name, emoji, associated locale).\n */\nexport function useInternalRegionSelector({\n regions: _regions,\n customMapping,\n prioritizeCurrentLocaleRegion = true,\n sortRegionsAlphabetically = true,\n}: InternalRegionSelectorOptions = {}): InternalRegionSelectorResult {\n // Retrieve the locale, locales, and region\n const contextLocales = useLocales();\n const localeCustomMapping = useCustomMapping();\n const locale = useLocale();\n const region = useRegion();\n const { regionCode: localeRegion } = getLocaleProperties(\n locale,\n locale,\n localeCustomMapping\n );\n\n const [\n regions, // ordered list of ISO 3166 region codes\n regionData, // map of ISO 3166 region codes to region display data, potentially not ordered\n ] = useMemo<[string[], Map<string, RegionData>]>(() => {\n const gt = getI18nConfig().getGTClass(locale);\n const regionToLocaleMap = new Map(\n contextLocales.map((l) => {\n const lp = getLocaleProperties(l, locale, localeCustomMapping); // has to be directly called so sourceLocale can be in the user's current locale\n return [lp.regionCode, lp];\n })\n );\n\n const regions = _regions\n ? [..._regions]\n : Array.from(regionToLocaleMap?.keys() || [localeRegion]);\n\n const regionData = new Map<string, RegionData>(\n regions.map((r: string) => {\n return [\n r,\n {\n locale: regionToLocaleMap?.get(r)?.code || locale,\n ...gt.getRegionProperties(r),\n ...(typeof customMapping?.[r] === 'string'\n ? { name: customMapping?.[r] }\n : customMapping?.[r]),\n },\n ];\n })\n );\n\n if (sortRegionsAlphabetically) {\n regions.sort((a, b) =>\n new Intl.Collator().compare(\n regionData.get(a)!.name,\n regionData.get(b)!.name\n )\n );\n }\n\n if (prioritizeCurrentLocaleRegion) {\n const localeRegionIndex = regions.indexOf(localeRegion);\n if (localeRegionIndex > 0) {\n // 0 because no action is needed if it's already at the start\n regions.splice(localeRegionIndex, 1);\n regions.unshift(localeRegion);\n }\n }\n\n return [regions, regionData];\n }, [\n _regions,\n customMapping,\n locale,\n localeRegion,\n contextLocales,\n localeCustomMapping,\n prioritizeCurrentLocaleRegion,\n sortRegionsAlphabetically,\n ]);\n\n return {\n region,\n regions,\n regionData,\n locale,\n localeRegion,\n };\n}\n"],"mappings":"kNAuCA,SAAgB,EAA0B,CACxC,QAAS,EACT,gBACA,gCAAgC,GAChC,4BAA4B,IACK,EAAE,CAAgC,CAEnE,IAAM,EAAiBA,EAAAA,YAAY,CAC7B,EAAsBC,EAAAA,kBAAkB,CACxC,EAASC,EAAAA,WAAW,CACpB,EAASC,EAAAA,WAAW,CACpB,CAAE,WAAY,IAAA,EAAA,EAAA,qBAClB,EACA,EACA,EACD,CAEK,CACJ,EACA,IAAA,EAAA,EAAA,aACqD,CACrD,IAAM,GAAA,EAAA,EAAA,gBAAoB,CAAC,WAAW,EAAO,CACvC,EAAoB,IAAI,IAC5B,EAAe,IAAK,GAAM,CACxB,IAAM,GAAA,EAAA,EAAA,qBAAyB,EAAG,EAAQ,EAAoB,CAC9D,MAAO,CAAC,EAAG,WAAY,EAAG,EAC1B,CACH,CAEK,EAAU,EACZ,CAAC,GAAG,EAAS,CACb,MAAM,KAAK,GAAmB,MAAM,EAAI,CAAC,EAAa,CAAC,CAErD,EAAa,IAAI,IACrB,EAAQ,IAAK,GACJ,CACL,EACA,CACE,OAAQ,GAAmB,IAAI,EAAE,EAAE,MAAQ,EAC3C,GAAG,EAAG,oBAAoB,EAAE,CAC5B,GAAI,OAAO,IAAgB,IAAO,SAC9B,CAAE,KAAM,IAAgB,GAAI,CAC5B,IAAgB,GACrB,CACF,CACD,CACH,CAWD,GATI,GACF,EAAQ,MAAM,EAAG,IACf,IAAI,KAAK,UAAU,CAAC,QAClB,EAAW,IAAI,EAAE,CAAE,KACnB,EAAW,IAAI,EAAE,CAAE,KACpB,CACF,CAGC,EAA+B,CACjC,IAAM,EAAoB,EAAQ,QAAQ,EAAa,CACnD,EAAoB,IAEtB,EAAQ,OAAO,EAAmB,EAAE,CACpC,EAAQ,QAAQ,EAAa,EAIjC,MAAO,CAAC,EAAS,EAAW,EAC3B,CACD,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CAAC,CAEF,MAAO,CACL,SACA,UACA,aACA,SACA,eACD"}
@@ -1,2 +1,2 @@
1
- import{useLocale as e,useRegion as t}from"./condition-store.mjs";import{useCustomMapping as n,useLocales as r}from"./i18n-config.mjs";import{useMemo as i}from"react";import{getI18nConfig as a}from"gt-i18n/internal";import{getLocaleProperties as o}from"generaltranslation";function s({regions:s,customMapping:c,prioritizeCurrentLocaleRegion:l=!0,sortRegionsAlphabetically:u=!0}={}){let d=r(),f=n(),p=e(),m=t(),{regionCode:h}=o(p,p,f),[g,_]=i(()=>{let e=a().getGTClass(p),t=new Map(d.map(e=>{let t=o(e,p,f);return[t.regionCode,t]})),n=s?[...s]:Array.from(t?.keys()||[h]),r=new Map(n.map(n=>[n,{locale:t?.get(n)?.code||p,...e.getRegionProperties(n),...typeof c?.[n]==`string`?{name:c?.[n]}:c?.[n]}]));if(u&&n.sort((e,t)=>new Intl.Collator().compare(r.get(e).name,r.get(t).name)),l){let e=n.indexOf(h);e>0&&(n.splice(e,1),n.unshift(h))}return[n,r]},[s,c,p,h,d,f,l,u]);return{region:m,regions:g,regionData:_,locale:p,localeRegion:h}}export{s as useInternalRegionSelector};
1
+ import{useLocale as e,useRegion as t}from"./condition-store.mjs";import{useCustomMapping as n,useLocales as r}from"./i18n-config.mjs";import{useMemo as i}from"react";import{getI18nConfig as a}from"gt-i18n/internal";import{getLocaleProperties as o}from"@generaltranslation/format";function s({regions:s,customMapping:c,prioritizeCurrentLocaleRegion:l=!0,sortRegionsAlphabetically:u=!0}={}){let d=r(),f=n(),p=e(),m=t(),{regionCode:h}=o(p,p,f),[g,_]=i(()=>{let e=a().getGTClass(p),t=new Map(d.map(e=>{let t=o(e,p,f);return[t.regionCode,t]})),n=s?[...s]:Array.from(t?.keys()||[h]),r=new Map(n.map(n=>[n,{locale:t?.get(n)?.code||p,...e.getRegionProperties(n),...typeof c?.[n]==`string`?{name:c?.[n]}:c?.[n]}]));if(u&&n.sort((e,t)=>new Intl.Collator().compare(r.get(e).name,r.get(t).name)),l){let e=n.indexOf(h);e>0&&(n.splice(e,1),n.unshift(h))}return[n,r]},[s,c,p,h,d,f,l,u]);return{region:m,regions:g,regionData:_,locale:p,localeRegion:h}}export{s as useInternalRegionSelector};
2
2
  //# sourceMappingURL=useInternalRegionSelector.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInternalRegionSelector.mjs","names":[],"sources":["../../src/hooks/useInternalRegionSelector.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale, useRegion } from './condition-store';\nimport { getLocaleProperties } from 'generaltranslation';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\nexport type RegionData = {\n code: string;\n name: string;\n emoji: string;\n locale: string;\n};\n\nexport type InternalRegionSelectorOptions = {\n regions?: string[];\n customMapping?: {\n [region: string]:\n | string\n | { name?: string; emoji?: string; locale?: string };\n };\n prioritizeCurrentLocaleRegion?: boolean;\n sortRegionsAlphabetically?: boolean;\n};\n\nexport type InternalRegionSelectorResult = {\n region: string | undefined;\n regions: string[];\n regionData: Map<string, RegionData>;\n locale: string;\n localeRegion: string;\n};\n\n/**\n * Internal logic for region selection in applications supporting multiple regions.\n *\n * Returns the current region, an ordered list of available regions (inferred\n * from the supported locales when not provided), and a map of region codes to\n * their display data (name, emoji, associated locale).\n */\nexport function useInternalRegionSelector({\n regions: _regions,\n customMapping,\n prioritizeCurrentLocaleRegion = true,\n sortRegionsAlphabetically = true,\n}: InternalRegionSelectorOptions = {}): InternalRegionSelectorResult {\n // Retrieve the locale, locales, and region\n const contextLocales = useLocales();\n const localeCustomMapping = useCustomMapping();\n const locale = useLocale();\n const region = useRegion();\n const { regionCode: localeRegion } = getLocaleProperties(\n locale,\n locale,\n localeCustomMapping\n );\n\n const [\n regions, // ordered list of ISO 3166 region codes\n regionData, // map of ISO 3166 region codes to region display data, potentially not ordered\n ] = useMemo<[string[], Map<string, RegionData>]>(() => {\n const gt = getI18nConfig().getGTClass(locale);\n const regionToLocaleMap = new Map(\n contextLocales.map((l) => {\n const lp = getLocaleProperties(l, locale, localeCustomMapping); // has to be directly called so sourceLocale can be in the user's current locale\n return [lp.regionCode, lp];\n })\n );\n\n const regions = _regions\n ? [..._regions]\n : Array.from(regionToLocaleMap?.keys() || [localeRegion]);\n\n const regionData = new Map<string, RegionData>(\n regions.map((r: string) => {\n return [\n r,\n {\n locale: regionToLocaleMap?.get(r)?.code || locale,\n ...gt.getRegionProperties(r),\n ...(typeof customMapping?.[r] === 'string'\n ? { name: customMapping?.[r] }\n : customMapping?.[r]),\n },\n ];\n })\n );\n\n if (sortRegionsAlphabetically) {\n regions.sort((a, b) =>\n new Intl.Collator().compare(\n regionData.get(a)!.name,\n regionData.get(b)!.name\n )\n );\n }\n\n if (prioritizeCurrentLocaleRegion) {\n const localeRegionIndex = regions.indexOf(localeRegion);\n if (localeRegionIndex > 0) {\n // 0 because no action is needed if it's already at the start\n regions.splice(localeRegionIndex, 1);\n regions.unshift(localeRegion);\n }\n }\n\n return [regions, regionData];\n }, [\n _regions,\n customMapping,\n locale,\n localeRegion,\n contextLocales,\n localeCustomMapping,\n prioritizeCurrentLocaleRegion,\n sortRegionsAlphabetically,\n ]);\n\n return {\n region,\n regions,\n regionData,\n locale,\n localeRegion,\n };\n}\n"],"mappings":"gRAuCA,SAAgB,EAA0B,CACxC,QAAS,EACT,gBACA,gCAAgC,GAChC,4BAA4B,IACK,EAAE,CAAgC,CAEnE,IAAM,EAAiB,GAAY,CAC7B,EAAsB,GAAkB,CACxC,EAAS,GAAW,CACpB,EAAS,GAAW,CACpB,CAAE,WAAY,GAAiB,EACnC,EACA,EACA,EACD,CAEK,CACJ,EACA,GACE,MAAmD,CACrD,IAAM,EAAK,GAAe,CAAC,WAAW,EAAO,CACvC,EAAoB,IAAI,IAC5B,EAAe,IAAK,GAAM,CACxB,IAAM,EAAK,EAAoB,EAAG,EAAQ,EAAoB,CAC9D,MAAO,CAAC,EAAG,WAAY,EAAG,EAC1B,CACH,CAEK,EAAU,EACZ,CAAC,GAAG,EAAS,CACb,MAAM,KAAK,GAAmB,MAAM,EAAI,CAAC,EAAa,CAAC,CAErD,EAAa,IAAI,IACrB,EAAQ,IAAK,GACJ,CACL,EACA,CACE,OAAQ,GAAmB,IAAI,EAAE,EAAE,MAAQ,EAC3C,GAAG,EAAG,oBAAoB,EAAE,CAC5B,GAAI,OAAO,IAAgB,IAAO,SAC9B,CAAE,KAAM,IAAgB,GAAI,CAC5B,IAAgB,GACrB,CACF,CACD,CACH,CAWD,GATI,GACF,EAAQ,MAAM,EAAG,IACf,IAAI,KAAK,UAAU,CAAC,QAClB,EAAW,IAAI,EAAE,CAAE,KACnB,EAAW,IAAI,EAAE,CAAE,KACpB,CACF,CAGC,EAA+B,CACjC,IAAM,EAAoB,EAAQ,QAAQ,EAAa,CACnD,EAAoB,IAEtB,EAAQ,OAAO,EAAmB,EAAE,CACpC,EAAQ,QAAQ,EAAa,EAIjC,MAAO,CAAC,EAAS,EAAW,EAC3B,CACD,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CAAC,CAEF,MAAO,CACL,SACA,UACA,aACA,SACA,eACD"}
1
+ {"version":3,"file":"useInternalRegionSelector.mjs","names":[],"sources":["../../src/hooks/useInternalRegionSelector.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useCustomMapping, useLocales } from './i18n-config';\nimport { useLocale, useRegion } from './condition-store';\nimport { getLocaleProperties } from '@generaltranslation/format';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\nexport type RegionData = {\n code: string;\n name: string;\n emoji: string;\n locale: string;\n};\n\nexport type InternalRegionSelectorOptions = {\n regions?: string[];\n customMapping?: {\n [region: string]:\n | string\n | { name?: string; emoji?: string; locale?: string };\n };\n prioritizeCurrentLocaleRegion?: boolean;\n sortRegionsAlphabetically?: boolean;\n};\n\nexport type InternalRegionSelectorResult = {\n region: string | undefined;\n regions: string[];\n regionData: Map<string, RegionData>;\n locale: string;\n localeRegion: string;\n};\n\n/**\n * Internal logic for region selection in applications supporting multiple regions.\n *\n * Returns the current region, an ordered list of available regions (inferred\n * from the supported locales when not provided), and a map of region codes to\n * their display data (name, emoji, associated locale).\n */\nexport function useInternalRegionSelector({\n regions: _regions,\n customMapping,\n prioritizeCurrentLocaleRegion = true,\n sortRegionsAlphabetically = true,\n}: InternalRegionSelectorOptions = {}): InternalRegionSelectorResult {\n // Retrieve the locale, locales, and region\n const contextLocales = useLocales();\n const localeCustomMapping = useCustomMapping();\n const locale = useLocale();\n const region = useRegion();\n const { regionCode: localeRegion } = getLocaleProperties(\n locale,\n locale,\n localeCustomMapping\n );\n\n const [\n regions, // ordered list of ISO 3166 region codes\n regionData, // map of ISO 3166 region codes to region display data, potentially not ordered\n ] = useMemo<[string[], Map<string, RegionData>]>(() => {\n const gt = getI18nConfig().getGTClass(locale);\n const regionToLocaleMap = new Map(\n contextLocales.map((l) => {\n const lp = getLocaleProperties(l, locale, localeCustomMapping); // has to be directly called so sourceLocale can be in the user's current locale\n return [lp.regionCode, lp];\n })\n );\n\n const regions = _regions\n ? [..._regions]\n : Array.from(regionToLocaleMap?.keys() || [localeRegion]);\n\n const regionData = new Map<string, RegionData>(\n regions.map((r: string) => {\n return [\n r,\n {\n locale: regionToLocaleMap?.get(r)?.code || locale,\n ...gt.getRegionProperties(r),\n ...(typeof customMapping?.[r] === 'string'\n ? { name: customMapping?.[r] }\n : customMapping?.[r]),\n },\n ];\n })\n );\n\n if (sortRegionsAlphabetically) {\n regions.sort((a, b) =>\n new Intl.Collator().compare(\n regionData.get(a)!.name,\n regionData.get(b)!.name\n )\n );\n }\n\n if (prioritizeCurrentLocaleRegion) {\n const localeRegionIndex = regions.indexOf(localeRegion);\n if (localeRegionIndex > 0) {\n // 0 because no action is needed if it's already at the start\n regions.splice(localeRegionIndex, 1);\n regions.unshift(localeRegion);\n }\n }\n\n return [regions, regionData];\n }, [\n _regions,\n customMapping,\n locale,\n localeRegion,\n contextLocales,\n localeCustomMapping,\n prioritizeCurrentLocaleRegion,\n sortRegionsAlphabetically,\n ]);\n\n return {\n region,\n regions,\n regionData,\n locale,\n localeRegion,\n };\n}\n"],"mappings":"wRAuCA,SAAgB,EAA0B,CACxC,QAAS,EACT,gBACA,gCAAgC,GAChC,4BAA4B,IACK,EAAE,CAAgC,CAEnE,IAAM,EAAiB,GAAY,CAC7B,EAAsB,GAAkB,CACxC,EAAS,GAAW,CACpB,EAAS,GAAW,CACpB,CAAE,WAAY,GAAiB,EACnC,EACA,EACA,EACD,CAEK,CACJ,EACA,GACE,MAAmD,CACrD,IAAM,EAAK,GAAe,CAAC,WAAW,EAAO,CACvC,EAAoB,IAAI,IAC5B,EAAe,IAAK,GAAM,CACxB,IAAM,EAAK,EAAoB,EAAG,EAAQ,EAAoB,CAC9D,MAAO,CAAC,EAAG,WAAY,EAAG,EAC1B,CACH,CAEK,EAAU,EACZ,CAAC,GAAG,EAAS,CACb,MAAM,KAAK,GAAmB,MAAM,EAAI,CAAC,EAAa,CAAC,CAErD,EAAa,IAAI,IACrB,EAAQ,IAAK,GACJ,CACL,EACA,CACE,OAAQ,GAAmB,IAAI,EAAE,EAAE,MAAQ,EAC3C,GAAG,EAAG,oBAAoB,EAAE,CAC5B,GAAI,OAAO,IAAgB,IAAO,SAC9B,CAAE,KAAM,IAAgB,GAAI,CAC5B,IAAgB,GACrB,CACF,CACD,CACH,CAWD,GATI,GACF,EAAQ,MAAM,EAAG,IACf,IAAI,KAAK,UAAU,CAAC,QAClB,EAAW,IAAI,EAAE,CAAE,KACnB,EAAW,IAAI,EAAE,CAAE,KACpB,CACF,CAGC,EAA+B,CACjC,IAAM,EAAoB,EAAQ,QAAQ,EAAa,CACnD,EAAoB,IAEtB,EAAQ,OAAO,EAAmB,EAAE,CACpC,EAAQ,QAAQ,EAAa,EAIjC,MAAO,CAAC,EAAS,EAAW,EAC3B,CACD,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CAAC,CAEF,MAAO,CACL,SACA,UACA,aACA,SACA,eACD"}
@@ -1,2 +1,2 @@
1
- require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../condition-store/singleton-operations.cjs`);let t=require(`gt-i18n/internal`);function n(){let n=e.getReadonlyConditionStoreWithFallback(),r=(0,t.getI18nConfig)(),i=n.getEnableI18n(),a=n.getLocale();return i&&r.requiresTranslation(a)}exports.getShouldTranslate=n;
1
+ require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../condition-store/singleton-operations.cjs`);let t=require(`gt-i18n/internal`);function n(){let n=e.getConditionStore(),r=(0,t.getI18nConfig)(),i=n.getEnableI18n(),a=n.getLocale();return i&&r.requiresTranslation(a)}exports.getShouldTranslate=n;
2
2
  //# sourceMappingURL=getShouldTranslate.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"getShouldTranslate.cjs","names":["getReadonlyConditionStoreWithFallback"],"sources":["../../../src/hooks/utils/getShouldTranslate.ts"],"sourcesContent":["import { getReadonlyConditionStoreWithFallback } from '../../condition-store/singleton-operations';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\n// Pure helper shared by hook-based and RSC code paths. This module must stay\n// free of hook/context imports so it can be reached from the components-rsc\n// entrypoint.\n\n/**\n * Returns true if (1) i18n enabled and (2) translation is required\n */\nexport function getShouldTranslate(): boolean {\n const conditionStore = getReadonlyConditionStoreWithFallback();\n const i18nConfig = getI18nConfig();\n\n const enableI18n = conditionStore.getEnableI18n();\n const locale = conditionStore.getLocale();\n return enableI18n && i18nConfig.requiresTranslation(locale);\n}\n"],"mappings":"oJAUA,SAAgB,GAA8B,CAC5C,IAAM,EAAiBA,EAAAA,uCAAuC,CACxD,GAAA,EAAA,EAAA,gBAA4B,CAE5B,EAAa,EAAe,eAAe,CAC3C,EAAS,EAAe,WAAW,CACzC,OAAO,GAAc,EAAW,oBAAoB,EAAO"}
1
+ {"version":3,"file":"getShouldTranslate.cjs","names":["getReadonlyConditionStore"],"sources":["../../../src/hooks/utils/getShouldTranslate.ts"],"sourcesContent":["import { getReadonlyConditionStore } from '../../condition-store/singleton-operations';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\n// Pure helper shared by hook-based and RSC code paths. This module must stay\n// free of hook/context imports so it can be reached from the components-rsc\n// entrypoint.\n\n/**\n * Returns true if (1) i18n enabled and (2) translation is required\n */\nexport function getShouldTranslate(): boolean {\n const conditionStore = getReadonlyConditionStore();\n const i18nConfig = getI18nConfig();\n\n const enableI18n = conditionStore.getEnableI18n();\n const locale = conditionStore.getLocale();\n return enableI18n && i18nConfig.requiresTranslation(locale);\n}\n"],"mappings":"oJAUA,SAAgB,GAA8B,CAC5C,IAAM,EAAiBA,EAAAA,mBAA2B,CAC5C,GAAA,EAAA,EAAA,gBAA4B,CAE5B,EAAa,EAAe,eAAe,CAC3C,EAAS,EAAe,WAAW,CACzC,OAAO,GAAc,EAAW,oBAAoB,EAAO"}
@@ -1,2 +1,2 @@
1
- import{getReadonlyConditionStoreWithFallback as e}from"../../condition-store/singleton-operations.mjs";import{getI18nConfig as t}from"gt-i18n/internal";function n(){let n=e(),r=t(),i=n.getEnableI18n(),a=n.getLocale();return i&&r.requiresTranslation(a)}export{n as getShouldTranslate};
1
+ import{getConditionStore as e}from"../../condition-store/singleton-operations.mjs";import{getI18nConfig as t}from"gt-i18n/internal";function n(){let n=e(),r=t(),i=n.getEnableI18n(),a=n.getLocale();return i&&r.requiresTranslation(a)}export{n as getShouldTranslate};
2
2
  //# sourceMappingURL=getShouldTranslate.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"getShouldTranslate.mjs","names":[],"sources":["../../../src/hooks/utils/getShouldTranslate.ts"],"sourcesContent":["import { getReadonlyConditionStoreWithFallback } from '../../condition-store/singleton-operations';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\n// Pure helper shared by hook-based and RSC code paths. This module must stay\n// free of hook/context imports so it can be reached from the components-rsc\n// entrypoint.\n\n/**\n * Returns true if (1) i18n enabled and (2) translation is required\n */\nexport function getShouldTranslate(): boolean {\n const conditionStore = getReadonlyConditionStoreWithFallback();\n const i18nConfig = getI18nConfig();\n\n const enableI18n = conditionStore.getEnableI18n();\n const locale = conditionStore.getLocale();\n return enableI18n && i18nConfig.requiresTranslation(locale);\n}\n"],"mappings":"wJAUA,SAAgB,GAA8B,CAC5C,IAAM,EAAiB,GAAuC,CACxD,EAAa,GAAe,CAE5B,EAAa,EAAe,eAAe,CAC3C,EAAS,EAAe,WAAW,CACzC,OAAO,GAAc,EAAW,oBAAoB,EAAO"}
1
+ {"version":3,"file":"getShouldTranslate.mjs","names":["getReadonlyConditionStore"],"sources":["../../../src/hooks/utils/getShouldTranslate.ts"],"sourcesContent":["import { getReadonlyConditionStore } from '../../condition-store/singleton-operations';\nimport { getI18nConfig } from 'gt-i18n/internal';\n\n// Pure helper shared by hook-based and RSC code paths. This module must stay\n// free of hook/context imports so it can be reached from the components-rsc\n// entrypoint.\n\n/**\n * Returns true if (1) i18n enabled and (2) translation is required\n */\nexport function getShouldTranslate(): boolean {\n const conditionStore = getReadonlyConditionStore();\n const i18nConfig = getI18nConfig();\n\n const enableI18n = conditionStore.getEnableI18n();\n const locale = conditionStore.getLocale();\n return enableI18n && i18nConfig.requiresTranslation(locale);\n}\n"],"mappings":"oIAUA,SAAgB,GAA8B,CAC5C,IAAM,EAAiBA,GAA2B,CAC5C,EAAa,GAAe,CAE5B,EAAa,EAAe,eAAe,CAC3C,EAAS,EAAe,WAAW,CACzC,OAAO,GAAc,EAAW,oBAAoB,EAAO"}
@@ -1,11 +1,11 @@
1
1
  import { getFormatLocales } from "./utils/getFormatLocales.js";
2
2
  import { LocaleProperties } from "@generaltranslation/format/types";
3
- import * as _$generaltranslation from "generaltranslation";
3
+ import * as _$generaltranslation_runtime0 from "generaltranslation/runtime";
4
4
 
5
5
  //#region src/hooks/utils.d.ts
6
6
  declare function useFormatLocales(localesProp?: string[]): string[];
7
7
  declare function useShouldTranslate(): boolean;
8
- declare function useGTClass(): _$generaltranslation.GT;
8
+ declare function useGTClass(): _$generaltranslation_runtime0.GTRuntime;
9
9
  declare function useLocaleProperties(locale: string): LocaleProperties;
10
10
  declare function useLocaleDirection(locale?: string): 'ltr' | 'rtl';
11
11
  declare function useVersionId(): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/hooks/utils.ts"],"mappings":";;;;;iBAUgB,gBAAA,CACd,WAAA;AAAA,iBAec,kBAAA,CAAA;AAAA,iBAMA,UAAA,CAAA,GAAU,oBAAA,CAAA,EAAA;AAAA,iBAIV,mBAAA,CAAoB,MAAA,WAAiB,gBAAA;AAAA,iBAOrC,kBAAA,CAAmB,MAAA;AAAA,iBASnB,YAAA,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/hooks/utils.ts"],"mappings":";;;;;iBAUgB,gBAAA,CACd,WAAA;AAAA,iBAec,kBAAA,CAAA;AAAA,iBAMA,UAAA,CAAA,GAAU,6BAAA,CAAA,SAAA;AAAA,iBAIV,mBAAA,CAAoB,MAAA,WAAiB,gBAAA;AAAA,iBAOrC,kBAAA,CAAmB,MAAA;AAAA,iBASnB,YAAA,CAAA"}
package/dist/pure.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./_virtual/_rolldown/runtime.cjs`);const e=require(`./utils/plurals/getPluralBranch.cjs`),t=require(`./utils/internal/addGTIdentifier.cjs`),n=require(`./utils/variables/getVariableName.cjs`),r=require(`./utils/internal/writeChildrenAsObjects.cjs`),i=require(`./utils/dictionaries/flattenDictionary.cjs`),a=require(`./utils/variables/_getVariableProps.cjs`),o=require(`./hooks/utils/getFormatLocales.cjs`),s=require(`./i18n-cache/singleton-operations.cjs`),c=require(`./functions/helpers/getTranslationsSnapshot.cjs`),l=require(`./setup/i18nConfig.cjs`),u=require(`./condition-store/singleton-operations.cjs`),d=require(`./functions/translation/t.cjs`),f=require(`./utils/rendering/createRenderPipeline.cjs`),p=require(`./utils/cookies.cjs`),m=require(`./utils/dictionaries/getDictionaryEntry.cjs`),h=require(`./utils/dictionaries/getEntryAndMetadata.cjs`),g=require(`./utils/dictionaries/isDictionaryEntry.cjs`),_=require(`./utils/dictionaries/mergeDictionaries.cjs`),v=require(`./utils/rendering/getDefaultRenderSettings.cjs`),y=require(`./i18n-cache/ReactI18nCache.cjs`),b=require(`./setup/initializeGTSRA.cjs`),x=require(`./i18n-store/singleton-operations.cjs`),S=require(`./i18n-store/I18nStore.cjs`);let C=require(`gt-i18n`),w=require(`gt-i18n/internal`);exports.I18nStore=S.I18nStore,exports.ReactI18nCache=y.ReactI18nCache,exports.ReactI18nConfig=l.ReactI18nConfig,Object.defineProperty(exports,`ReadonlyConditionStore`,{enumerable:!0,get:function(){return w.ReadonlyConditionStore}}),Object.defineProperty(exports,`WritableConditionStore`,{enumerable:!0,get:function(){return w.WritableConditionStore}}),exports.addGTIdentifier=t.addGTIdentifier,exports.createRenderPipeline=f.createRenderPipeline,Object.defineProperty(exports,`declareVar`,{enumerable:!0,get:function(){return C.declareVar}}),Object.defineProperty(exports,`decodeMsg`,{enumerable:!0,get:function(){return C.decodeMsg}}),Object.defineProperty(exports,`decodeOptions`,{enumerable:!0,get:function(){return C.decodeOptions}}),Object.defineProperty(exports,`decodeVars`,{enumerable:!0,get:function(){return C.decodeVars}}),exports.defaultEnableI18nCookieName=p.defaultEnableI18nCookieName,exports.defaultLocaleCookieName=p.defaultLocaleCookieName,exports.defaultRegionCookieName=p.defaultRegionCookieName,Object.defineProperty(exports,`derive`,{enumerable:!0,get:function(){return C.derive}}),exports.flattenDictionary=i.flattenDictionary,Object.defineProperty(exports,`getDefaultLocale`,{enumerable:!0,get:function(){return C.getDefaultLocale}}),exports.getDefaultRenderSettings=v.getDefaultRenderSettings,exports.getDictionaryEntry=m.getDictionaryEntry,exports.getEntryAndMetadata=h.getEntryAndMetadata,exports.getFormatLocales=o.getFormatLocales,Object.defineProperty(exports,`getGTClass`,{enumerable:!0,get:function(){return C.getGTClass}}),exports.getI18nConfig=l.getI18nConfig,exports.getI18nStore=x.getI18nStore,Object.defineProperty(exports,`getLocaleProperties`,{enumerable:!0,get:function(){return C.getLocaleProperties}}),Object.defineProperty(exports,`getLocales`,{enumerable:!0,get:function(){return C.getLocales}}),exports.getPluralBranch=e.getPluralBranch,exports.getReactI18nCache=s.getReactI18nCache,exports.getReadonlyConditionStoreWithFallback=u.getReadonlyConditionStoreWithFallback,exports.getTranslationsSnapshot=c.getTranslationsSnapshot,exports.getVariableName=n.getVariableName,exports.getVariableProps=a.getVariableProps,Object.defineProperty(exports,`getVersionId`,{enumerable:!0,get:function(){return C.getVersionId}}),Object.defineProperty(exports,`gtFallback`,{enumerable:!0,get:function(){return C.gtFallback}}),exports.initializeGT=b.internalInitializeGTSRA,exports.initializeI18nConfig=l.initializeI18nConfig,exports.internalInitializeGTSRA=b.internalInitializeGTSRA,exports.isDictionaryEntry=g.isDictionaryEntry,exports.isI18nStoreInitialized=x.isI18nStoreInitialized,exports.isValidDictionaryEntry=m.isValidDictionaryEntry,Object.defineProperty(exports,`mFallback`,{enumerable:!0,get:function(){return C.mFallback}}),exports.mergeDictionaries=_.mergeDictionaries,Object.defineProperty(exports,`msg`,{enumerable:!0,get:function(){return C.msg}}),exports.setI18nConfig=l.setI18nConfig,exports.setI18nStore=x.setI18nStore,exports.setReactI18nCache=s.setReactI18nCache,exports.setReadonlyConditionStore=u.setConditionStore,exports.t=d.t,exports.writeChildrenAsObjects=r.writeChildrenAsObjects;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./_virtual/_rolldown/runtime.cjs`);const e=require(`./utils/plurals/getPluralBranch.cjs`),t=require(`./utils/internal/addGTIdentifier.cjs`),n=require(`./utils/variables/getVariableName.cjs`),r=require(`./utils/internal/writeChildrenAsObjects.cjs`),i=require(`./utils/dictionaries/flattenDictionary.cjs`),a=require(`./utils/variables/_getVariableProps.cjs`),o=require(`./hooks/utils/getFormatLocales.cjs`),s=require(`./i18n-cache/singleton-operations.cjs`),c=require(`./functions/helpers/getTranslationsSnapshot.cjs`),l=require(`./setup/i18nConfig.cjs`),u=require(`./condition-store/singleton-operations.cjs`),d=require(`./functions/translation/t.cjs`),f=require(`./utils/rendering/createRenderPipeline.cjs`),p=require(`./utils/dictionaries/getDictionaryEntry.cjs`),m=require(`./utils/dictionaries/getEntryAndMetadata.cjs`),h=require(`./utils/dictionaries/isDictionaryEntry.cjs`),g=require(`./utils/dictionaries/mergeDictionaries.cjs`),_=require(`./utils/rendering/getDefaultRenderSettings.cjs`),v=require(`./i18n-cache/ReactI18nCache.cjs`),y=require(`./setup/initializeGTSRA.cjs`),b=require(`./i18n-store/singleton-operations.cjs`),x=require(`./i18n-store/I18nStore.cjs`);let S=require(`gt-i18n`),C=require(`gt-i18n/internal`);exports.I18nStore=x.I18nStore,exports.ReactI18nCache=v.ReactI18nCache,exports.ReactI18nConfig=l.ReactI18nConfig,Object.defineProperty(exports,`ReadonlyConditionStore`,{enumerable:!0,get:function(){return C.ReadonlyConditionStore}}),Object.defineProperty(exports,`WritableConditionStore`,{enumerable:!0,get:function(){return C.WritableConditionStore}}),exports.addGTIdentifier=t.addGTIdentifier,exports.createRenderPipeline=f.createRenderPipeline,Object.defineProperty(exports,`declareVar`,{enumerable:!0,get:function(){return S.declareVar}}),Object.defineProperty(exports,`decodeMsg`,{enumerable:!0,get:function(){return S.decodeMsg}}),Object.defineProperty(exports,`decodeOptions`,{enumerable:!0,get:function(){return S.decodeOptions}}),Object.defineProperty(exports,`decodeVars`,{enumerable:!0,get:function(){return S.decodeVars}}),exports.defaultEnableI18nCookieName=l.defaultEnableI18nCookieName,exports.defaultLocaleCookieName=l.defaultLocaleCookieName,exports.defaultRegionCookieName=l.defaultRegionCookieName,exports.defaultResetLocaleCookieName=l.defaultResetLocaleCookieName,Object.defineProperty(exports,`derive`,{enumerable:!0,get:function(){return S.derive}}),exports.flattenDictionary=i.flattenDictionary,Object.defineProperty(exports,`getDefaultLocale`,{enumerable:!0,get:function(){return S.getDefaultLocale}}),exports.getDefaultRenderSettings=_.getDefaultRenderSettings,exports.getDictionaryEntry=p.getDictionaryEntry,exports.getEntryAndMetadata=m.getEntryAndMetadata,exports.getFormatLocales=o.getFormatLocales,Object.defineProperty(exports,`getGTClass`,{enumerable:!0,get:function(){return S.getGTClass}}),exports.getI18nConfig=l.getI18nConfig,exports.getI18nStore=b.getI18nStore,Object.defineProperty(exports,`getLocaleProperties`,{enumerable:!0,get:function(){return S.getLocaleProperties}}),Object.defineProperty(exports,`getLocales`,{enumerable:!0,get:function(){return S.getLocales}}),exports.getPluralBranch=e.getPluralBranch,exports.getReactI18nCache=s.getReactI18nCache,exports.getReadonlyConditionStore=u.getConditionStore,exports.getTranslationsSnapshot=c.getTranslationsSnapshot,exports.getVariableName=n.getVariableName,exports.getVariableProps=a.getVariableProps,Object.defineProperty(exports,`getVersionId`,{enumerable:!0,get:function(){return S.getVersionId}}),Object.defineProperty(exports,`gtFallback`,{enumerable:!0,get:function(){return S.gtFallback}}),exports.initializeGT=y.internalInitializeGTSRA,exports.initializeI18nConfig=l.initializeI18nConfig,exports.internalInitializeGTSRA=y.internalInitializeGTSRA,exports.isDictionaryEntry=h.isDictionaryEntry,exports.isI18nStoreInitialized=b.isI18nStoreInitialized,exports.isValidDictionaryEntry=p.isValidDictionaryEntry,Object.defineProperty(exports,`mFallback`,{enumerable:!0,get:function(){return S.mFallback}}),exports.mergeDictionaries=g.mergeDictionaries,Object.defineProperty(exports,`msg`,{enumerable:!0,get:function(){return S.msg}}),exports.setI18nConfig=l.setI18nConfig,exports.setI18nStore=b.setI18nStore,exports.setReactI18nCache=s.setReactI18nCache,exports.setReadonlyConditionStore=u.setConditionStore,exports.t=d.t,exports.writeChildrenAsObjects=r.writeChildrenAsObjects;
package/dist/pure.d.ts CHANGED
@@ -12,7 +12,7 @@ import { getFormatLocales } from "./hooks/utils/getFormatLocales.js";
12
12
  import { RenderPipeline, createRenderPipeline } from "./utils/rendering/createRenderPipeline.js";
13
13
  import { ReactI18nCache, ReactI18nCacheParams } from "./i18n-cache/ReactI18nCache.js";
14
14
  import { getReactI18nCache, setReactI18nCache } from "./i18n-cache/singleton-operations.js";
15
- import { defaultEnableI18nCookieName, defaultLocaleCookieName, defaultRegionCookieName } from "./utils/cookies.js";
15
+ import { ReactI18nConfig, ReactI18nConfigParams, defaultEnableI18nCookieName, defaultLocaleCookieName, defaultRegionCookieName, defaultResetLocaleCookieName, getI18nConfig, initializeI18nConfig, setI18nConfig } from "./setup/i18nConfig.js";
16
16
  import { getDictionaryEntry, isValidDictionaryEntry } from "./utils/dictionaries/getDictionaryEntry.js";
17
17
  import { getEntryAndMetadata } from "./utils/dictionaries/getEntryAndMetadata.js";
18
18
  import { mergeDictionaries } from "./utils/dictionaries/mergeDictionaries.js";
@@ -22,10 +22,9 @@ import { internalInitializeGTSRA } from "./setup/initializeGTSRA.js";
22
22
  import { DictionaryLookup, TranslateLookup } from "./i18n-store/storeTypes.js";
23
23
  import { I18nStore } from "./i18n-store/I18nStore.js";
24
24
  import { getI18nStore, isI18nStoreInitialized, setI18nStore } from "./i18n-store/singleton-operations.js";
25
- import { ReactI18nConfig, getI18nConfig, initializeI18nConfig, setI18nConfig } from "./setup/i18nConfig.js";
26
- import { getReadonlyConditionStoreWithFallback, setConditionStore } from "./condition-store/singleton-operations.js";
25
+ import { getConditionStore, setConditionStore } from "./condition-store/singleton-operations.js";
27
26
  import { OnMissingDictionaryEntry, OnMissingDictionaryObj, OnMissingTranslation } from "./hooks/utils/missing-translation.js";
28
- import { I18nConfigParams, WritableConditionStoreParams } from "gt-i18n/internal/types";
27
+ import { WritableConditionStoreParams } from "gt-i18n/internal/types";
29
28
  import { declareVar, decodeMsg, decodeOptions, decodeVars, derive, getDefaultLocale, getGTClass, getLocaleProperties, getLocales, getVersionId, gtFallback, mFallback, msg } from "gt-i18n";
30
29
  import { ReadonlyConditionStore, WritableConditionStore } from "gt-i18n/internal";
31
- export { type CustomLoader, type Dictionary, type DictionaryContent, type DictionaryEntry, type DictionaryLookup, type DictionaryObject, type Entry, type FlattenedDictionary, type GTFunctionType, type GTProp, type GTTranslationOptions, type I18nConfigParams, I18nStore, type LocalesDictionary, type MFunctionType, type Metadata, type OnMissingDictionaryEntry, type OnMissingDictionaryObj, type OnMissingTranslation, ReactI18nCache, type ReactI18nCacheParams, ReactI18nConfig, ReadonlyConditionStore, type RelativeTimeFormatOptions, type RenderMethod, type RenderPipeline, type RenderPreparedT, type RenderVariable, type RuntimeTranslationOptions, type TranslateLookup, type TranslatedChildren, type Translations, type VariableProps, WritableConditionStore, type WritableConditionStoreParams, type _Message, type _Messages, addGTIdentifier, createRenderPipeline, declareVar, decodeMsg, decodeOptions, decodeVars, defaultEnableI18nCookieName, defaultLocaleCookieName, defaultRegionCookieName, derive, flattenDictionary, getDefaultLocale, getDefaultRenderSettings, getDictionaryEntry, getEntryAndMetadata, getFormatLocales, getGTClass, getI18nConfig, getI18nStore, getLocaleProperties, getLocales, getPluralBranch, getReactI18nCache, getReadonlyConditionStoreWithFallback, getTranslationsSnapshot, getVariableName, getVariableProps, getVersionId, gtFallback, internalInitializeGTSRA as initializeGT, initializeI18nConfig, internalInitializeGTSRA, isDictionaryEntry, isI18nStoreInitialized, isValidDictionaryEntry, mFallback, mergeDictionaries, msg, setI18nConfig, setI18nStore, setReactI18nCache, setConditionStore as setReadonlyConditionStore, t, writeChildrenAsObjects };
30
+ export { type CustomLoader, type Dictionary, type DictionaryContent, type DictionaryEntry, type DictionaryLookup, type DictionaryObject, type Entry, type FlattenedDictionary, type GTFunctionType, type GTProp, type GTTranslationOptions, type ReactI18nConfigParams as I18nConfigParams, I18nStore, type LocalesDictionary, type MFunctionType, type Metadata, type OnMissingDictionaryEntry, type OnMissingDictionaryObj, type OnMissingTranslation, ReactI18nCache, type ReactI18nCacheParams, ReactI18nConfig, ReadonlyConditionStore, type RelativeTimeFormatOptions, type RenderMethod, type RenderPipeline, type RenderPreparedT, type RenderVariable, type RuntimeTranslationOptions, type TranslateLookup, type TranslatedChildren, type Translations, type VariableProps, WritableConditionStore, type WritableConditionStoreParams, type _Message, type _Messages, addGTIdentifier, createRenderPipeline, declareVar, decodeMsg, decodeOptions, decodeVars, defaultEnableI18nCookieName, defaultLocaleCookieName, defaultRegionCookieName, defaultResetLocaleCookieName, derive, flattenDictionary, getDefaultLocale, getDefaultRenderSettings, getDictionaryEntry, getEntryAndMetadata, getFormatLocales, getGTClass, getI18nConfig, getI18nStore, getLocaleProperties, getLocales, getPluralBranch, getReactI18nCache, getConditionStore as getReadonlyConditionStore, getTranslationsSnapshot, getVariableName, getVariableProps, getVersionId, gtFallback, internalInitializeGTSRA as initializeGT, initializeI18nConfig, internalInitializeGTSRA, isDictionaryEntry, isI18nStoreInitialized, isValidDictionaryEntry, mFallback, mergeDictionaries, msg, setI18nConfig, setI18nStore, setReactI18nCache, setConditionStore as setReadonlyConditionStore, t, writeChildrenAsObjects };
package/dist/pure.mjs CHANGED
@@ -1 +1 @@
1
- import{getPluralBranch as e}from"./utils/plurals/getPluralBranch.mjs";import{addGTIdentifier as t}from"./utils/internal/addGTIdentifier.mjs";import{getVariableName as n}from"./utils/variables/getVariableName.mjs";import{writeChildrenAsObjects as r}from"./utils/internal/writeChildrenAsObjects.mjs";import{flattenDictionary as i}from"./utils/dictionaries/flattenDictionary.mjs";import{getVariableProps as a}from"./utils/variables/_getVariableProps.mjs";import{getFormatLocales as o}from"./hooks/utils/getFormatLocales.mjs";import{getReactI18nCache as s,setReactI18nCache as c}from"./i18n-cache/singleton-operations.mjs";import{getTranslationsSnapshot as l}from"./functions/helpers/getTranslationsSnapshot.mjs";import{ReactI18nConfig as u,getI18nConfig as d,initializeI18nConfig as f,setI18nConfig as p}from"./setup/i18nConfig.mjs";import{getReadonlyConditionStoreWithFallback as m,setConditionStore as h}from"./condition-store/singleton-operations.mjs";import{t as g}from"./functions/translation/t.mjs";import{createRenderPipeline as _}from"./utils/rendering/createRenderPipeline.mjs";import{defaultEnableI18nCookieName as v,defaultLocaleCookieName as y,defaultRegionCookieName as b}from"./utils/cookies.mjs";import{getDictionaryEntry as x,isValidDictionaryEntry as S}from"./utils/dictionaries/getDictionaryEntry.mjs";import{getEntryAndMetadata as C}from"./utils/dictionaries/getEntryAndMetadata.mjs";import{isDictionaryEntry as w}from"./utils/dictionaries/isDictionaryEntry.mjs";import{mergeDictionaries as T}from"./utils/dictionaries/mergeDictionaries.mjs";import{getDefaultRenderSettings as E}from"./utils/rendering/getDefaultRenderSettings.mjs";import{ReactI18nCache as D}from"./i18n-cache/ReactI18nCache.mjs";import{internalInitializeGTSRA as O}from"./setup/initializeGTSRA.mjs";import{getI18nStore as k,isI18nStoreInitialized as A,setI18nStore as j}from"./i18n-store/singleton-operations.mjs";import{I18nStore as M}from"./i18n-store/I18nStore.mjs";import{declareVar as N,decodeMsg as P,decodeOptions as F,decodeVars as I,derive as L,getDefaultLocale as R,getGTClass as z,getLocaleProperties as B,getLocales as V,getVersionId as H,gtFallback as U,mFallback as W,msg as G}from"gt-i18n";import{ReadonlyConditionStore as K,WritableConditionStore as q}from"gt-i18n/internal";export{M as I18nStore,D as ReactI18nCache,u as ReactI18nConfig,K as ReadonlyConditionStore,q as WritableConditionStore,t as addGTIdentifier,_ as createRenderPipeline,N as declareVar,P as decodeMsg,F as decodeOptions,I as decodeVars,v as defaultEnableI18nCookieName,y as defaultLocaleCookieName,b as defaultRegionCookieName,L as derive,i as flattenDictionary,R as getDefaultLocale,E as getDefaultRenderSettings,x as getDictionaryEntry,C as getEntryAndMetadata,o as getFormatLocales,z as getGTClass,d as getI18nConfig,k as getI18nStore,B as getLocaleProperties,V as getLocales,e as getPluralBranch,s as getReactI18nCache,m as getReadonlyConditionStoreWithFallback,l as getTranslationsSnapshot,n as getVariableName,a as getVariableProps,H as getVersionId,U as gtFallback,O as initializeGT,f as initializeI18nConfig,O as internalInitializeGTSRA,w as isDictionaryEntry,A as isI18nStoreInitialized,S as isValidDictionaryEntry,W as mFallback,T as mergeDictionaries,G as msg,p as setI18nConfig,j as setI18nStore,c as setReactI18nCache,h as setReadonlyConditionStore,g as t,r as writeChildrenAsObjects};
1
+ import{getPluralBranch as e}from"./utils/plurals/getPluralBranch.mjs";import{addGTIdentifier as t}from"./utils/internal/addGTIdentifier.mjs";import{getVariableName as n}from"./utils/variables/getVariableName.mjs";import{writeChildrenAsObjects as r}from"./utils/internal/writeChildrenAsObjects.mjs";import{flattenDictionary as i}from"./utils/dictionaries/flattenDictionary.mjs";import{getVariableProps as a}from"./utils/variables/_getVariableProps.mjs";import{getFormatLocales as o}from"./hooks/utils/getFormatLocales.mjs";import{getReactI18nCache as s,setReactI18nCache as c}from"./i18n-cache/singleton-operations.mjs";import{getTranslationsSnapshot as l}from"./functions/helpers/getTranslationsSnapshot.mjs";import{ReactI18nConfig as u,defaultEnableI18nCookieName as d,defaultLocaleCookieName as f,defaultRegionCookieName as p,defaultResetLocaleCookieName as m,getI18nConfig as h,initializeI18nConfig as g,setI18nConfig as _}from"./setup/i18nConfig.mjs";import{getConditionStore as v,setConditionStore as y}from"./condition-store/singleton-operations.mjs";import{t as b}from"./functions/translation/t.mjs";import{createRenderPipeline as x}from"./utils/rendering/createRenderPipeline.mjs";import{getDictionaryEntry as S,isValidDictionaryEntry as C}from"./utils/dictionaries/getDictionaryEntry.mjs";import{getEntryAndMetadata as w}from"./utils/dictionaries/getEntryAndMetadata.mjs";import{isDictionaryEntry as T}from"./utils/dictionaries/isDictionaryEntry.mjs";import{mergeDictionaries as E}from"./utils/dictionaries/mergeDictionaries.mjs";import{getDefaultRenderSettings as D}from"./utils/rendering/getDefaultRenderSettings.mjs";import{ReactI18nCache as O}from"./i18n-cache/ReactI18nCache.mjs";import{internalInitializeGTSRA as k}from"./setup/initializeGTSRA.mjs";import{getI18nStore as A,isI18nStoreInitialized as j,setI18nStore as M}from"./i18n-store/singleton-operations.mjs";import{I18nStore as N}from"./i18n-store/I18nStore.mjs";import{declareVar as P,decodeMsg as F,decodeOptions as I,decodeVars as L,derive as R,getDefaultLocale as z,getGTClass as B,getLocaleProperties as V,getLocales as H,getVersionId as U,gtFallback as W,mFallback as G,msg as K}from"gt-i18n";import{ReadonlyConditionStore as q,WritableConditionStore as J}from"gt-i18n/internal";export{N as I18nStore,O as ReactI18nCache,u as ReactI18nConfig,q as ReadonlyConditionStore,J as WritableConditionStore,t as addGTIdentifier,x as createRenderPipeline,P as declareVar,F as decodeMsg,I as decodeOptions,L as decodeVars,d as defaultEnableI18nCookieName,f as defaultLocaleCookieName,p as defaultRegionCookieName,m as defaultResetLocaleCookieName,R as derive,i as flattenDictionary,z as getDefaultLocale,D as getDefaultRenderSettings,S as getDictionaryEntry,w as getEntryAndMetadata,o as getFormatLocales,B as getGTClass,h as getI18nConfig,A as getI18nStore,V as getLocaleProperties,H as getLocales,e as getPluralBranch,s as getReactI18nCache,v as getReadonlyConditionStore,l as getTranslationsSnapshot,n as getVariableName,a as getVariableProps,U as getVersionId,W as gtFallback,k as initializeGT,g as initializeI18nConfig,k as internalInitializeGTSRA,T as isDictionaryEntry,j as isI18nStoreInitialized,C as isValidDictionaryEntry,G as mFallback,E as mergeDictionaries,K as msg,_ as setI18nConfig,M as setI18nStore,c as setReactI18nCache,y as setReadonlyConditionStore,b as t,r as writeChildrenAsObjects};
@@ -1,2 +1,2 @@
1
- require(`../_virtual/_rolldown/runtime.cjs`);let e=require(`generaltranslation/internal`),t=require(`gt-i18n/internal`);const n=`server-render`,r=Symbol.for(`generaltranslation.react-core.ReactI18nConfig`);var i=class extends t.I18nConfig{renderStrategy;constructor(e={},t=n){super(e),c(t),Object.defineProperty(this,r,{value:!0}),this.renderStrategy=t}getRenderStrategy(){return this.renderStrategy}};function a(){let n=(0,t.getI18nConfig)();if(l(n))return n;throw Error((0,e.createDiagnosticMessage)({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Cannot read ReactI18nConfig after base I18nConfig setup.`,why:`the internal I18nConfig singleton was initialized without react-core render strategy support`,fix:`Initialize GT through gt-react or @generaltranslation/react-core/pure.`}))}function o(e){(0,t.setI18nConfig)(e)}function s(e={},t=n){let r=new i(e,t);return o(r),r}function c(t){if(!(t===`SPA`||t===`server-render`))throw Error((0,e.createDiagnosticMessage)({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Invalid React render strategy.`,why:`the render strategy must be "SPA" or "server-render", but received "${String(t)}"`,fix:`Initialize GT through gt-react or pass a valid render strategy.`}))}function l(e){if(e instanceof i)return!0;let t=e;return t[r]===!0&&typeof t.getRenderStrategy==`function`}exports.ReactI18nConfig=i,exports.getI18nConfig=a,exports.initializeI18nConfig=s,exports.setI18nConfig=o;
1
+ require(`../_virtual/_rolldown/runtime.cjs`);let e=require(`generaltranslation/internal`),t=require(`gt-i18n/internal`);const n=`server-render`,r=Symbol.for(`generaltranslation.react-core.ReactI18nConfig`);var i=class extends t.I18nConfig{renderStrategy;localeCookieName;regionCookieName;enableI18nCookieName;constructor(e={},t=n){super(e),c(t),Object.defineProperty(this,r,{value:!0}),this.renderStrategy=t,this.localeCookieName=e.localeCookieName??`generaltranslation.locale`,this.regionCookieName=e.regionCookieName??`generaltranslation.region`,this.enableI18nCookieName=e.enableI18nCookieName??`generaltranslation.enable-i18n`}getRenderStrategy(){return this.renderStrategy}getLocaleCookieName(){return this.localeCookieName}getRegionCookieName(){return this.regionCookieName}getEnableI18nCookieName(){return this.enableI18nCookieName}};function a(){let n=(0,t.getI18nConfig)();if(l(n))return n;throw Error((0,e.createDiagnosticMessage)({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Cannot read ReactI18nConfig after base I18nConfig setup.`,why:`the internal I18nConfig singleton was initialized without react-core render strategy support`,fix:`Initialize GT through gt-react or @generaltranslation/react-core/pure.`}))}function o(e){(0,t.setI18nConfig)(e)}function s(e={},t=n){let r=new i(e,t);return o(r),r}function c(t){if(!(t===`SPA`||t===`server-render`))throw Error((0,e.createDiagnosticMessage)({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Invalid React render strategy.`,why:`the render strategy must be "SPA" or "server-render", but received "${String(t)}"`,fix:`Initialize GT through gt-react or pass a valid render strategy.`}))}function l(e){if(e instanceof i)return!0;let t=e;return t[r]===!0&&typeof t.getRenderStrategy==`function`&&typeof t.getLocaleCookieName==`function`&&typeof t.getRegionCookieName==`function`&&typeof t.getEnableI18nCookieName==`function`}exports.ReactI18nConfig=i,exports.defaultEnableI18nCookieName=`generaltranslation.enable-i18n`,exports.defaultLocaleCookieName=`generaltranslation.locale`,exports.defaultRegionCookieName=`generaltranslation.region`,exports.defaultResetLocaleCookieName=`generaltranslation.locale-reset`,exports.getI18nConfig=a,exports.initializeI18nConfig=s,exports.setI18nConfig=o;
2
2
  //# sourceMappingURL=i18nConfig.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18nConfig.cjs","names":["I18nConfig"],"sources":["../../src/setup/i18nConfig.ts"],"sourcesContent":["import { createDiagnosticMessage } from 'generaltranslation/internal';\nimport {\n getI18nConfig as getBaseI18nConfig,\n I18nConfig,\n setI18nConfig as setBaseI18nConfig,\n} from 'gt-i18n/internal';\nimport type { I18nConfigParams } from 'gt-i18n/internal/types';\n\n/**\n * Helps us distinguish behavior for SPA vs server-rendered apps.\n * - server-rendered apps must use context\n * - SPA apps can synchronously access the locale\n */\nexport type RenderStrategy = 'SPA' | 'server-render';\n\nconst defaultRenderStrategy: RenderStrategy = 'server-render';\nconst reactI18nConfigBrand = Symbol.for(\n 'generaltranslation.react-core.ReactI18nConfig'\n);\n\nexport class ReactI18nConfig extends I18nConfig {\n private renderStrategy: RenderStrategy;\n\n constructor(\n params: I18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n ) {\n super(params);\n validateRenderStrategy(renderStrategy);\n Object.defineProperty(this, reactI18nConfigBrand, { value: true });\n this.renderStrategy = renderStrategy;\n }\n\n getRenderStrategy(): RenderStrategy {\n return this.renderStrategy;\n }\n}\n\nexport function getI18nConfig(): ReactI18nConfig {\n const i18nConfig = getBaseI18nConfig();\n if (isReactI18nConfig(i18nConfig)) {\n return i18nConfig;\n }\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Cannot read ReactI18nConfig after base I18nConfig setup.',\n why: 'the internal I18nConfig singleton was initialized without react-core render strategy support',\n fix: 'Initialize GT through gt-react or @generaltranslation/react-core/pure.',\n })\n );\n}\n\nexport function setI18nConfig(nextI18nConfig: ReactI18nConfig): void {\n setBaseI18nConfig(nextI18nConfig);\n}\n\nexport function initializeI18nConfig(\n params: I18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n): ReactI18nConfig {\n const nextI18nConfig = new ReactI18nConfig(params, renderStrategy);\n setI18nConfig(nextI18nConfig);\n return nextI18nConfig;\n}\n\nfunction validateRenderStrategy(\n renderStrategy: RenderStrategy\n): asserts renderStrategy is RenderStrategy {\n if (renderStrategy === 'SPA' || renderStrategy === 'server-render') return;\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Invalid React render strategy.',\n why: `the render strategy must be \"SPA\" or \"server-render\", but received \"${String(renderStrategy)}\"`,\n fix: 'Initialize GT through gt-react or pass a valid render strategy.',\n })\n );\n}\n\nfunction isReactI18nConfig(\n i18nConfig: I18nConfig\n): i18nConfig is ReactI18nConfig {\n if (i18nConfig instanceof ReactI18nConfig) return true;\n\n const maybeReactI18nConfig = i18nConfig as I18nConfig &\n Record<PropertyKey, unknown>;\n return (\n maybeReactI18nConfig[reactI18nConfigBrand] === true &&\n typeof maybeReactI18nConfig.getRenderStrategy === 'function'\n );\n}\n"],"mappings":"wHAeA,MAAM,EAAwC,gBACxC,EAAuB,OAAO,IAClC,gDACD,CAED,IAAa,EAAb,cAAqCA,EAAAA,UAAW,CAC9C,eAEA,YACE,EAA2B,EAAE,CAC7B,EAAiC,EACjC,CACA,MAAM,EAAO,CACb,EAAuB,EAAe,CACtC,OAAO,eAAe,KAAM,EAAsB,CAAE,MAAO,GAAM,CAAC,CAClE,KAAK,eAAiB,EAGxB,mBAAoC,CAClC,OAAO,KAAK,iBAIhB,SAAgB,GAAiC,CAC/C,IAAM,GAAA,EAAA,EAAA,gBAAgC,CACtC,GAAI,EAAkB,EAAW,CAC/B,OAAO,EAET,MAAU,OAAA,EAAA,EAAA,yBACgB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,2DACd,IAAK,+FACL,IAAK,yEACN,CAAC,CACH,CAGH,SAAgB,EAAc,EAAuC,EACnE,EAAA,EAAA,eAAkB,EAAe,CAGnC,SAAgB,EACd,EAA2B,EAAE,CAC7B,EAAiC,EAChB,CACjB,IAAM,EAAiB,IAAI,EAAgB,EAAQ,EAAe,CAElE,OADA,EAAc,EAAe,CACtB,EAGT,SAAS,EACP,EAC0C,CACtC,SAAmB,OAAS,IAAmB,iBACnD,MAAU,OAAA,EAAA,EAAA,yBACgB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,iCACd,IAAK,uEAAuE,OAAO,EAAe,CAAC,GACnG,IAAK,kEACN,CAAC,CACH,CAGH,SAAS,EACP,EAC+B,CAC/B,GAAI,aAAsB,EAAiB,MAAO,GAElD,IAAM,EAAuB,EAE7B,OACE,EAAqB,KAA0B,IAC/C,OAAO,EAAqB,mBAAsB"}
1
+ {"version":3,"file":"i18nConfig.cjs","names":["I18nConfig"],"sources":["../../src/setup/i18nConfig.ts"],"sourcesContent":["import { createDiagnosticMessage } from 'generaltranslation/internal';\nimport {\n getI18nConfig as getBaseI18nConfig,\n I18nConfig,\n setI18nConfig as setBaseI18nConfig,\n} from 'gt-i18n/internal';\nimport type { I18nConfigParams as BaseI18nConfigParams } from 'gt-i18n/internal/types';\n\n/**\n * Cookie name for tracking the user's selected locale.\n */\nexport const defaultLocaleCookieName = 'generaltranslation.locale';\n\n/**\n * Cookie name for tracking the user's selected region.\n */\nexport const defaultRegionCookieName = 'generaltranslation.region';\n\n/**\n * Cookie name for persisting the enableI18n feature flag.\n */\nexport const defaultEnableI18nCookieName = 'generaltranslation.enable-i18n';\n\n/**\n * Cookie name for tracking the locale reset.\n */\nexport const defaultResetLocaleCookieName = 'generaltranslation.locale-reset';\n\n/**\n * Helps us distinguish behavior for SPA vs server-rendered apps.\n * - server-rendered apps must use context\n * - SPA apps can synchronously access the locale\n */\nexport type RenderStrategy = 'SPA' | 'server-render';\n\ntype CookieNameConfig = {\n localeCookieName?: string;\n regionCookieName?: string;\n enableI18nCookieName?: string;\n};\n\nexport type ReactI18nConfigParams = BaseI18nConfigParams & CookieNameConfig;\n\nconst defaultRenderStrategy: RenderStrategy = 'server-render';\nconst reactI18nConfigBrand = Symbol.for(\n 'generaltranslation.react-core.ReactI18nConfig'\n);\n\nexport class ReactI18nConfig extends I18nConfig {\n private renderStrategy: RenderStrategy;\n private localeCookieName: string;\n private regionCookieName: string;\n private enableI18nCookieName: string;\n\n constructor(\n params: ReactI18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n ) {\n super(params);\n validateRenderStrategy(renderStrategy);\n Object.defineProperty(this, reactI18nConfigBrand, { value: true });\n this.renderStrategy = renderStrategy;\n this.localeCookieName = params.localeCookieName ?? defaultLocaleCookieName;\n this.regionCookieName = params.regionCookieName ?? defaultRegionCookieName;\n this.enableI18nCookieName =\n params.enableI18nCookieName ?? defaultEnableI18nCookieName;\n }\n\n getRenderStrategy(): RenderStrategy {\n return this.renderStrategy;\n }\n\n getLocaleCookieName(): string {\n return this.localeCookieName;\n }\n\n getRegionCookieName(): string {\n return this.regionCookieName;\n }\n\n getEnableI18nCookieName(): string {\n return this.enableI18nCookieName;\n }\n}\n\nexport function getI18nConfig(): ReactI18nConfig {\n const i18nConfig = getBaseI18nConfig();\n if (isReactI18nConfig(i18nConfig)) {\n return i18nConfig;\n }\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Cannot read ReactI18nConfig after base I18nConfig setup.',\n why: 'the internal I18nConfig singleton was initialized without react-core render strategy support',\n fix: 'Initialize GT through gt-react or @generaltranslation/react-core/pure.',\n })\n );\n}\n\nexport function setI18nConfig(nextI18nConfig: ReactI18nConfig): void {\n setBaseI18nConfig(nextI18nConfig);\n}\n\nexport function initializeI18nConfig(\n params: ReactI18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n): ReactI18nConfig {\n const nextI18nConfig = new ReactI18nConfig(params, renderStrategy);\n setI18nConfig(nextI18nConfig);\n return nextI18nConfig;\n}\n\nfunction validateRenderStrategy(\n renderStrategy: RenderStrategy\n): asserts renderStrategy is RenderStrategy {\n if (renderStrategy === 'SPA' || renderStrategy === 'server-render') return;\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Invalid React render strategy.',\n why: `the render strategy must be \"SPA\" or \"server-render\", but received \"${String(renderStrategy)}\"`,\n fix: 'Initialize GT through gt-react or pass a valid render strategy.',\n })\n );\n}\n\nfunction isReactI18nConfig(\n i18nConfig: I18nConfig\n): i18nConfig is ReactI18nConfig {\n if (i18nConfig instanceof ReactI18nConfig) return true;\n\n const maybeReactI18nConfig = i18nConfig as I18nConfig &\n Record<PropertyKey, unknown>;\n return (\n maybeReactI18nConfig[reactI18nConfigBrand] === true &&\n typeof maybeReactI18nConfig.getRenderStrategy === 'function' &&\n typeof maybeReactI18nConfig.getLocaleCookieName === 'function' &&\n typeof maybeReactI18nConfig.getRegionCookieName === 'function' &&\n typeof maybeReactI18nConfig.getEnableI18nCookieName === 'function'\n );\n}\n"],"mappings":"wHAWA,MAgCM,EAAwC,gBACxC,EAAuB,OAAO,IAClC,gDACD,CAED,IAAa,EAAb,cAAqCA,EAAAA,UAAW,CAC9C,eACA,iBACA,iBACA,qBAEA,YACE,EAAgC,EAAE,CAClC,EAAiC,EACjC,CACA,MAAM,EAAO,CACb,EAAuB,EAAe,CACtC,OAAO,eAAe,KAAM,EAAsB,CAAE,MAAO,GAAM,CAAC,CAClE,KAAK,eAAiB,EACtB,KAAK,iBAAmB,EAAO,kBAAA,4BAC/B,KAAK,iBAAmB,EAAO,kBAAA,4BAC/B,KAAK,qBACH,EAAO,sBAAA,iCAGX,mBAAoC,CAClC,OAAO,KAAK,eAGd,qBAA8B,CAC5B,OAAO,KAAK,iBAGd,qBAA8B,CAC5B,OAAO,KAAK,iBAGd,yBAAkC,CAChC,OAAO,KAAK,uBAIhB,SAAgB,GAAiC,CAC/C,IAAM,GAAA,EAAA,EAAA,gBAAgC,CACtC,GAAI,EAAkB,EAAW,CAC/B,OAAO,EAET,MAAU,OAAA,EAAA,EAAA,yBACgB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,2DACd,IAAK,+FACL,IAAK,yEACN,CAAC,CACH,CAGH,SAAgB,EAAc,EAAuC,EACnE,EAAA,EAAA,eAAkB,EAAe,CAGnC,SAAgB,EACd,EAAgC,EAAE,CAClC,EAAiC,EAChB,CACjB,IAAM,EAAiB,IAAI,EAAgB,EAAQ,EAAe,CAElE,OADA,EAAc,EAAe,CACtB,EAGT,SAAS,EACP,EAC0C,CACtC,SAAmB,OAAS,IAAmB,iBACnD,MAAU,OAAA,EAAA,EAAA,yBACgB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,iCACd,IAAK,uEAAuE,OAAO,EAAe,CAAC,GACnG,IAAK,kEACN,CAAC,CACH,CAGH,SAAS,EACP,EAC+B,CAC/B,GAAI,aAAsB,EAAiB,MAAO,GAElD,IAAM,EAAuB,EAE7B,OACE,EAAqB,KAA0B,IAC/C,OAAO,EAAqB,mBAAsB,YAClD,OAAO,EAAqB,qBAAwB,YACpD,OAAO,EAAqB,qBAAwB,YACpD,OAAO,EAAqB,yBAA4B"}
@@ -2,20 +2,48 @@ import { I18nConfigParams } from "gt-i18n/internal/types";
2
2
  import { I18nConfig } from "gt-i18n/internal";
3
3
 
4
4
  //#region src/setup/i18nConfig.d.ts
5
+ /**
6
+ * Cookie name for tracking the user's selected locale.
7
+ */
8
+ declare const defaultLocaleCookieName = "generaltranslation.locale";
9
+ /**
10
+ * Cookie name for tracking the user's selected region.
11
+ */
12
+ declare const defaultRegionCookieName = "generaltranslation.region";
13
+ /**
14
+ * Cookie name for persisting the enableI18n feature flag.
15
+ */
16
+ declare const defaultEnableI18nCookieName = "generaltranslation.enable-i18n";
17
+ /**
18
+ * Cookie name for tracking the locale reset.
19
+ */
20
+ declare const defaultResetLocaleCookieName = "generaltranslation.locale-reset";
5
21
  /**
6
22
  * Helps us distinguish behavior for SPA vs server-rendered apps.
7
23
  * - server-rendered apps must use context
8
24
  * - SPA apps can synchronously access the locale
9
25
  */
10
26
  type RenderStrategy = 'SPA' | 'server-render';
27
+ type CookieNameConfig = {
28
+ localeCookieName?: string;
29
+ regionCookieName?: string;
30
+ enableI18nCookieName?: string;
31
+ };
32
+ type ReactI18nConfigParams = I18nConfigParams & CookieNameConfig;
11
33
  declare class ReactI18nConfig extends I18nConfig {
12
34
  private renderStrategy;
13
- constructor(params?: I18nConfigParams, renderStrategy?: RenderStrategy);
35
+ private localeCookieName;
36
+ private regionCookieName;
37
+ private enableI18nCookieName;
38
+ constructor(params?: ReactI18nConfigParams, renderStrategy?: RenderStrategy);
14
39
  getRenderStrategy(): RenderStrategy;
40
+ getLocaleCookieName(): string;
41
+ getRegionCookieName(): string;
42
+ getEnableI18nCookieName(): string;
15
43
  }
16
44
  declare function getI18nConfig(): ReactI18nConfig;
17
45
  declare function setI18nConfig(nextI18nConfig: ReactI18nConfig): void;
18
- declare function initializeI18nConfig(params?: I18nConfigParams, renderStrategy?: RenderStrategy): ReactI18nConfig;
46
+ declare function initializeI18nConfig(params?: ReactI18nConfigParams, renderStrategy?: RenderStrategy): ReactI18nConfig;
19
47
  //#endregion
20
- export { ReactI18nConfig, getI18nConfig, initializeI18nConfig, setI18nConfig };
48
+ export { ReactI18nConfig, ReactI18nConfigParams, defaultEnableI18nCookieName, defaultLocaleCookieName, defaultRegionCookieName, defaultResetLocaleCookieName, getI18nConfig, initializeI18nConfig, setI18nConfig };
21
49
  //# sourceMappingURL=i18nConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18nConfig.d.ts","names":[],"sources":["../../src/setup/i18nConfig.ts"],"mappings":";;;;;;AAaA;;;KAAY,cAAA;AAAA,cAOC,eAAA,SAAwB,UAAA;EAAA,QAC3B,cAAA;cAGN,MAAA,GAAQ,gBAAA,EACR,cAAA,GAAgB,cAAA;EAQlB,iBAAA,CAAA,GAAqB,cAAA;AAAA;AAAA,iBAKP,aAAA,CAAA,GAAiB,eAAA;AAAA,iBAgBjB,aAAA,CAAc,cAAA,EAAgB,eAAA;AAAA,iBAI9B,oBAAA,CACd,MAAA,GAAQ,gBAAA,EACR,cAAA,GAAgB,cAAA,GACf,eAAA"}
1
+ {"version":3,"file":"i18nConfig.d.ts","names":[],"sources":["../../src/setup/i18nConfig.ts"],"mappings":";;;;;;AAWA;cAAa,uBAAA;;;;cAKA,uBAAA;;;;cAKA,2BAAA;AAAb;;;AAAA,cAKa,4BAAA;;AAAb;;;;KAOY,cAAA;AAAA,KAEP,gBAAA;EACH,gBAAA;EACA,gBAAA;EACA,oBAAA;AAAA;AAAA,KAGU,qBAAA,GAAwB,gBAAA,GAAuB,gBAAA;AAAA,cAO9C,eAAA,SAAwB,UAAA;EAAA,QAC3B,cAAA;EAAA,QACA,gBAAA;EAAA,QACA,gBAAA;EAAA,QACA,oBAAA;cAGN,MAAA,GAAQ,qBAAA,EACR,cAAA,GAAgB,cAAA;EAYlB,iBAAA,CAAA,GAAqB,cAAA;EAIrB,mBAAA,CAAA;EAIA,mBAAA,CAAA;EAIA,uBAAA,CAAA;AAAA;AAAA,iBAKc,aAAA,CAAA,GAAiB,eAAA;AAAA,iBAgBjB,aAAA,CAAc,cAAA,EAAgB,eAAA;AAAA,iBAI9B,oBAAA,CACd,MAAA,GAAQ,qBAAA,EACR,cAAA,GAAgB,cAAA,GACf,eAAA"}
@@ -1,2 +1,2 @@
1
- import{createDiagnosticMessage as e}from"generaltranslation/internal";import{I18nConfig as t,getI18nConfig as n,setI18nConfig as r}from"gt-i18n/internal";const i=`server-render`,a=Symbol.for(`generaltranslation.react-core.ReactI18nConfig`);var o=class extends t{renderStrategy;constructor(e={},t=i){super(e),u(t),Object.defineProperty(this,a,{value:!0}),this.renderStrategy=t}getRenderStrategy(){return this.renderStrategy}};function s(){let t=n();if(d(t))return t;throw Error(e({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Cannot read ReactI18nConfig after base I18nConfig setup.`,why:`the internal I18nConfig singleton was initialized without react-core render strategy support`,fix:`Initialize GT through gt-react or @generaltranslation/react-core/pure.`}))}function c(e){r(e)}function l(e={},t=i){let n=new o(e,t);return c(n),n}function u(t){if(!(t===`SPA`||t===`server-render`))throw Error(e({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Invalid React render strategy.`,why:`the render strategy must be "SPA" or "server-render", but received "${String(t)}"`,fix:`Initialize GT through gt-react or pass a valid render strategy.`}))}function d(e){if(e instanceof o)return!0;let t=e;return t[a]===!0&&typeof t.getRenderStrategy==`function`}export{o as ReactI18nConfig,s as getI18nConfig,l as initializeI18nConfig,c as setI18nConfig};
1
+ import{createDiagnosticMessage as e}from"generaltranslation/internal";import{I18nConfig as t,getI18nConfig as n,setI18nConfig as r}from"gt-i18n/internal";const i=`generaltranslation.locale`,a=`generaltranslation.region`,o=`generaltranslation.enable-i18n`,s=`generaltranslation.locale-reset`,c=`server-render`,l=Symbol.for(`generaltranslation.react-core.ReactI18nConfig`);var u=class extends t{renderStrategy;localeCookieName;regionCookieName;enableI18nCookieName;constructor(e={},t=c){super(e),m(t),Object.defineProperty(this,l,{value:!0}),this.renderStrategy=t,this.localeCookieName=e.localeCookieName??`generaltranslation.locale`,this.regionCookieName=e.regionCookieName??`generaltranslation.region`,this.enableI18nCookieName=e.enableI18nCookieName??`generaltranslation.enable-i18n`}getRenderStrategy(){return this.renderStrategy}getLocaleCookieName(){return this.localeCookieName}getRegionCookieName(){return this.regionCookieName}getEnableI18nCookieName(){return this.enableI18nCookieName}};function d(){let t=n();if(h(t))return t;throw Error(e({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Cannot read ReactI18nConfig after base I18nConfig setup.`,why:`the internal I18nConfig singleton was initialized without react-core render strategy support`,fix:`Initialize GT through gt-react or @generaltranslation/react-core/pure.`}))}function f(e){r(e)}function p(e={},t=c){let n=new u(e,t);return f(n),n}function m(t){if(!(t===`SPA`||t===`server-render`))throw Error(e({source:`@generaltranslation/react-core`,severity:`Error`,whatHappened:`Invalid React render strategy.`,why:`the render strategy must be "SPA" or "server-render", but received "${String(t)}"`,fix:`Initialize GT through gt-react or pass a valid render strategy.`}))}function h(e){if(e instanceof u)return!0;let t=e;return t[l]===!0&&typeof t.getRenderStrategy==`function`&&typeof t.getLocaleCookieName==`function`&&typeof t.getRegionCookieName==`function`&&typeof t.getEnableI18nCookieName==`function`}export{u as ReactI18nConfig,o as defaultEnableI18nCookieName,i as defaultLocaleCookieName,a as defaultRegionCookieName,s as defaultResetLocaleCookieName,d as getI18nConfig,p as initializeI18nConfig,f as setI18nConfig};
2
2
  //# sourceMappingURL=i18nConfig.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18nConfig.mjs","names":["getI18nConfig","getBaseI18nConfig","setI18nConfig"],"sources":["../../src/setup/i18nConfig.ts"],"sourcesContent":["import { createDiagnosticMessage } from 'generaltranslation/internal';\nimport {\n getI18nConfig as getBaseI18nConfig,\n I18nConfig,\n setI18nConfig as setBaseI18nConfig,\n} from 'gt-i18n/internal';\nimport type { I18nConfigParams } from 'gt-i18n/internal/types';\n\n/**\n * Helps us distinguish behavior for SPA vs server-rendered apps.\n * - server-rendered apps must use context\n * - SPA apps can synchronously access the locale\n */\nexport type RenderStrategy = 'SPA' | 'server-render';\n\nconst defaultRenderStrategy: RenderStrategy = 'server-render';\nconst reactI18nConfigBrand = Symbol.for(\n 'generaltranslation.react-core.ReactI18nConfig'\n);\n\nexport class ReactI18nConfig extends I18nConfig {\n private renderStrategy: RenderStrategy;\n\n constructor(\n params: I18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n ) {\n super(params);\n validateRenderStrategy(renderStrategy);\n Object.defineProperty(this, reactI18nConfigBrand, { value: true });\n this.renderStrategy = renderStrategy;\n }\n\n getRenderStrategy(): RenderStrategy {\n return this.renderStrategy;\n }\n}\n\nexport function getI18nConfig(): ReactI18nConfig {\n const i18nConfig = getBaseI18nConfig();\n if (isReactI18nConfig(i18nConfig)) {\n return i18nConfig;\n }\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Cannot read ReactI18nConfig after base I18nConfig setup.',\n why: 'the internal I18nConfig singleton was initialized without react-core render strategy support',\n fix: 'Initialize GT through gt-react or @generaltranslation/react-core/pure.',\n })\n );\n}\n\nexport function setI18nConfig(nextI18nConfig: ReactI18nConfig): void {\n setBaseI18nConfig(nextI18nConfig);\n}\n\nexport function initializeI18nConfig(\n params: I18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n): ReactI18nConfig {\n const nextI18nConfig = new ReactI18nConfig(params, renderStrategy);\n setI18nConfig(nextI18nConfig);\n return nextI18nConfig;\n}\n\nfunction validateRenderStrategy(\n renderStrategy: RenderStrategy\n): asserts renderStrategy is RenderStrategy {\n if (renderStrategy === 'SPA' || renderStrategy === 'server-render') return;\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Invalid React render strategy.',\n why: `the render strategy must be \"SPA\" or \"server-render\", but received \"${String(renderStrategy)}\"`,\n fix: 'Initialize GT through gt-react or pass a valid render strategy.',\n })\n );\n}\n\nfunction isReactI18nConfig(\n i18nConfig: I18nConfig\n): i18nConfig is ReactI18nConfig {\n if (i18nConfig instanceof ReactI18nConfig) return true;\n\n const maybeReactI18nConfig = i18nConfig as I18nConfig &\n Record<PropertyKey, unknown>;\n return (\n maybeReactI18nConfig[reactI18nConfigBrand] === true &&\n typeof maybeReactI18nConfig.getRenderStrategy === 'function'\n );\n}\n"],"mappings":"0JAeA,MAAM,EAAwC,gBACxC,EAAuB,OAAO,IAClC,gDACD,CAED,IAAa,EAAb,cAAqC,CAAW,CAC9C,eAEA,YACE,EAA2B,EAAE,CAC7B,EAAiC,EACjC,CACA,MAAM,EAAO,CACb,EAAuB,EAAe,CACtC,OAAO,eAAe,KAAM,EAAsB,CAAE,MAAO,GAAM,CAAC,CAClE,KAAK,eAAiB,EAGxB,mBAAoC,CAClC,OAAO,KAAK,iBAIhB,SAAgBA,GAAiC,CAC/C,IAAM,EAAaC,GAAmB,CACtC,GAAI,EAAkB,EAAW,CAC/B,OAAO,EAET,MAAU,MACR,EAAwB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,2DACd,IAAK,+FACL,IAAK,yEACN,CAAC,CACH,CAGH,SAAgBC,EAAc,EAAuC,CACnE,EAAkB,EAAe,CAGnC,SAAgB,EACd,EAA2B,EAAE,CAC7B,EAAiC,EAChB,CACjB,IAAM,EAAiB,IAAI,EAAgB,EAAQ,EAAe,CAElE,OADA,EAAc,EAAe,CACtB,EAGT,SAAS,EACP,EAC0C,CACtC,SAAmB,OAAS,IAAmB,iBACnD,MAAU,MACR,EAAwB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,iCACd,IAAK,uEAAuE,OAAO,EAAe,CAAC,GACnG,IAAK,kEACN,CAAC,CACH,CAGH,SAAS,EACP,EAC+B,CAC/B,GAAI,aAAsB,EAAiB,MAAO,GAElD,IAAM,EAAuB,EAE7B,OACE,EAAqB,KAA0B,IAC/C,OAAO,EAAqB,mBAAsB"}
1
+ {"version":3,"file":"i18nConfig.mjs","names":["getI18nConfig","getBaseI18nConfig","setI18nConfig"],"sources":["../../src/setup/i18nConfig.ts"],"sourcesContent":["import { createDiagnosticMessage } from 'generaltranslation/internal';\nimport {\n getI18nConfig as getBaseI18nConfig,\n I18nConfig,\n setI18nConfig as setBaseI18nConfig,\n} from 'gt-i18n/internal';\nimport type { I18nConfigParams as BaseI18nConfigParams } from 'gt-i18n/internal/types';\n\n/**\n * Cookie name for tracking the user's selected locale.\n */\nexport const defaultLocaleCookieName = 'generaltranslation.locale';\n\n/**\n * Cookie name for tracking the user's selected region.\n */\nexport const defaultRegionCookieName = 'generaltranslation.region';\n\n/**\n * Cookie name for persisting the enableI18n feature flag.\n */\nexport const defaultEnableI18nCookieName = 'generaltranslation.enable-i18n';\n\n/**\n * Cookie name for tracking the locale reset.\n */\nexport const defaultResetLocaleCookieName = 'generaltranslation.locale-reset';\n\n/**\n * Helps us distinguish behavior for SPA vs server-rendered apps.\n * - server-rendered apps must use context\n * - SPA apps can synchronously access the locale\n */\nexport type RenderStrategy = 'SPA' | 'server-render';\n\ntype CookieNameConfig = {\n localeCookieName?: string;\n regionCookieName?: string;\n enableI18nCookieName?: string;\n};\n\nexport type ReactI18nConfigParams = BaseI18nConfigParams & CookieNameConfig;\n\nconst defaultRenderStrategy: RenderStrategy = 'server-render';\nconst reactI18nConfigBrand = Symbol.for(\n 'generaltranslation.react-core.ReactI18nConfig'\n);\n\nexport class ReactI18nConfig extends I18nConfig {\n private renderStrategy: RenderStrategy;\n private localeCookieName: string;\n private regionCookieName: string;\n private enableI18nCookieName: string;\n\n constructor(\n params: ReactI18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n ) {\n super(params);\n validateRenderStrategy(renderStrategy);\n Object.defineProperty(this, reactI18nConfigBrand, { value: true });\n this.renderStrategy = renderStrategy;\n this.localeCookieName = params.localeCookieName ?? defaultLocaleCookieName;\n this.regionCookieName = params.regionCookieName ?? defaultRegionCookieName;\n this.enableI18nCookieName =\n params.enableI18nCookieName ?? defaultEnableI18nCookieName;\n }\n\n getRenderStrategy(): RenderStrategy {\n return this.renderStrategy;\n }\n\n getLocaleCookieName(): string {\n return this.localeCookieName;\n }\n\n getRegionCookieName(): string {\n return this.regionCookieName;\n }\n\n getEnableI18nCookieName(): string {\n return this.enableI18nCookieName;\n }\n}\n\nexport function getI18nConfig(): ReactI18nConfig {\n const i18nConfig = getBaseI18nConfig();\n if (isReactI18nConfig(i18nConfig)) {\n return i18nConfig;\n }\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Cannot read ReactI18nConfig after base I18nConfig setup.',\n why: 'the internal I18nConfig singleton was initialized without react-core render strategy support',\n fix: 'Initialize GT through gt-react or @generaltranslation/react-core/pure.',\n })\n );\n}\n\nexport function setI18nConfig(nextI18nConfig: ReactI18nConfig): void {\n setBaseI18nConfig(nextI18nConfig);\n}\n\nexport function initializeI18nConfig(\n params: ReactI18nConfigParams = {},\n renderStrategy: RenderStrategy = defaultRenderStrategy\n): ReactI18nConfig {\n const nextI18nConfig = new ReactI18nConfig(params, renderStrategy);\n setI18nConfig(nextI18nConfig);\n return nextI18nConfig;\n}\n\nfunction validateRenderStrategy(\n renderStrategy: RenderStrategy\n): asserts renderStrategy is RenderStrategy {\n if (renderStrategy === 'SPA' || renderStrategy === 'server-render') return;\n throw new Error(\n createDiagnosticMessage({\n source: '@generaltranslation/react-core',\n severity: 'Error',\n whatHappened: 'Invalid React render strategy.',\n why: `the render strategy must be \"SPA\" or \"server-render\", but received \"${String(renderStrategy)}\"`,\n fix: 'Initialize GT through gt-react or pass a valid render strategy.',\n })\n );\n}\n\nfunction isReactI18nConfig(\n i18nConfig: I18nConfig\n): i18nConfig is ReactI18nConfig {\n if (i18nConfig instanceof ReactI18nConfig) return true;\n\n const maybeReactI18nConfig = i18nConfig as I18nConfig &\n Record<PropertyKey, unknown>;\n return (\n maybeReactI18nConfig[reactI18nConfigBrand] === true &&\n typeof maybeReactI18nConfig.getRenderStrategy === 'function' &&\n typeof maybeReactI18nConfig.getLocaleCookieName === 'function' &&\n typeof maybeReactI18nConfig.getRegionCookieName === 'function' &&\n typeof maybeReactI18nConfig.getEnableI18nCookieName === 'function'\n );\n}\n"],"mappings":"0JAWA,MAAa,EAA0B,4BAK1B,EAA0B,4BAK1B,EAA8B,iCAK9B,EAA+B,kCAiBtC,EAAwC,gBACxC,EAAuB,OAAO,IAClC,gDACD,CAED,IAAa,EAAb,cAAqC,CAAW,CAC9C,eACA,iBACA,iBACA,qBAEA,YACE,EAAgC,EAAE,CAClC,EAAiC,EACjC,CACA,MAAM,EAAO,CACb,EAAuB,EAAe,CACtC,OAAO,eAAe,KAAM,EAAsB,CAAE,MAAO,GAAM,CAAC,CAClE,KAAK,eAAiB,EACtB,KAAK,iBAAmB,EAAO,kBAAA,4BAC/B,KAAK,iBAAmB,EAAO,kBAAA,4BAC/B,KAAK,qBACH,EAAO,sBAAA,iCAGX,mBAAoC,CAClC,OAAO,KAAK,eAGd,qBAA8B,CAC5B,OAAO,KAAK,iBAGd,qBAA8B,CAC5B,OAAO,KAAK,iBAGd,yBAAkC,CAChC,OAAO,KAAK,uBAIhB,SAAgBA,GAAiC,CAC/C,IAAM,EAAaC,GAAmB,CACtC,GAAI,EAAkB,EAAW,CAC/B,OAAO,EAET,MAAU,MACR,EAAwB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,2DACd,IAAK,+FACL,IAAK,yEACN,CAAC,CACH,CAGH,SAAgBC,EAAc,EAAuC,CACnE,EAAkB,EAAe,CAGnC,SAAgB,EACd,EAAgC,EAAE,CAClC,EAAiC,EAChB,CACjB,IAAM,EAAiB,IAAI,EAAgB,EAAQ,EAAe,CAElE,OADA,EAAc,EAAe,CACtB,EAGT,SAAS,EACP,EAC0C,CACtC,SAAmB,OAAS,IAAmB,iBACnD,MAAU,MACR,EAAwB,CACtB,OAAQ,iCACR,SAAU,QACV,aAAc,iCACd,IAAK,uEAAuE,OAAO,EAAe,CAAC,GACnG,IAAK,kEACN,CAAC,CACH,CAGH,SAAS,EACP,EAC+B,CAC/B,GAAI,aAAsB,EAAiB,MAAO,GAElD,IAAM,EAAuB,EAE7B,OACE,EAAqB,KAA0B,IAC/C,OAAO,EAAqB,mBAAsB,YAClD,OAAO,EAAqB,qBAAwB,YACpD,OAAO,EAAqB,qBAAwB,YACpD,OAAO,EAAqB,yBAA4B"}
@@ -1 +1 @@
1
- {"version":3,"file":"initializeGTSRA.cjs","names":["ReactI18nCache"],"sources":["../../src/setup/initializeGTSRA.ts"],"sourcesContent":["import type { I18nConfigParams } from 'gt-i18n/internal/types';\nimport type { ReactI18nCacheParams } from '../i18n-cache/ReactI18nCache';\nimport { setReactI18nCache } from '../i18n-cache/singleton-operations';\nimport { ReactI18nCache } from '../i18n-cache/ReactI18nCache';\nimport { initializeI18nConfig } from './i18nConfig';\n\n/**\n * Validation and setup for read only properties\n */\nexport function internalInitializeGTSRA(\n config: I18nConfigParams & ReactI18nCacheParams\n): void {\n initializeI18nConfig(config, 'server-render');\n\n const i18nCache = new ReactI18nCache(config);\n setReactI18nCache(i18nCache);\n}\n"],"mappings":"sIASA,SAAgB,EACd,EACM,CACN,EAAA,qBAAqB,EAAQ,gBAAgB,CAG7C,EAAA,kBAAkB,IADIA,EAAAA,eAAe,EACV,CAAC"}
1
+ {"version":3,"file":"initializeGTSRA.cjs","names":["ReactI18nCache"],"sources":["../../src/setup/initializeGTSRA.ts"],"sourcesContent":["import type { ReactI18nCacheParams } from '../i18n-cache/ReactI18nCache';\nimport { setReactI18nCache } from '../i18n-cache/singleton-operations';\nimport { ReactI18nCache } from '../i18n-cache/ReactI18nCache';\nimport { initializeI18nConfig, type ReactI18nConfigParams } from './i18nConfig';\n\n/**\n * Validation and setup for read only properties\n */\nexport function internalInitializeGTSRA(\n config: ReactI18nConfigParams & ReactI18nCacheParams\n): void {\n initializeI18nConfig(config, 'server-render');\n\n const i18nCache = new ReactI18nCache(config);\n setReactI18nCache(i18nCache);\n}\n"],"mappings":"sIAQA,SAAgB,EACd,EACM,CACN,EAAA,qBAAqB,EAAQ,gBAAgB,CAG7C,EAAA,kBAAkB,IADIA,EAAAA,eAAe,EACV,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { ReactI18nCacheParams } from "../i18n-cache/ReactI18nCache.js";
2
- import { I18nConfigParams } from "gt-i18n/internal/types";
2
+ import { ReactI18nConfigParams } from "./i18nConfig.js";
3
3
 
4
4
  //#region src/setup/initializeGTSRA.d.ts
5
5
  /**
6
6
  * Validation and setup for read only properties
7
7
  */
8
- declare function internalInitializeGTSRA(config: I18nConfigParams & ReactI18nCacheParams): void;
8
+ declare function internalInitializeGTSRA(config: ReactI18nConfigParams & ReactI18nCacheParams): void;
9
9
  //#endregion
10
10
  export { internalInitializeGTSRA };
11
11
  //# sourceMappingURL=initializeGTSRA.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initializeGTSRA.d.ts","names":[],"sources":["../../src/setup/initializeGTSRA.ts"],"mappings":";;;;;;AASA;iBAAgB,uBAAA,CACd,MAAA,EAAQ,gBAAA,GAAmB,oBAAA"}
1
+ {"version":3,"file":"initializeGTSRA.d.ts","names":[],"sources":["../../src/setup/initializeGTSRA.ts"],"mappings":";;;;;;AAQA;iBAAgB,uBAAA,CACd,MAAA,EAAQ,qBAAA,GAAwB,oBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"initializeGTSRA.mjs","names":[],"sources":["../../src/setup/initializeGTSRA.ts"],"sourcesContent":["import type { I18nConfigParams } from 'gt-i18n/internal/types';\nimport type { ReactI18nCacheParams } from '../i18n-cache/ReactI18nCache';\nimport { setReactI18nCache } from '../i18n-cache/singleton-operations';\nimport { ReactI18nCache } from '../i18n-cache/ReactI18nCache';\nimport { initializeI18nConfig } from './i18nConfig';\n\n/**\n * Validation and setup for read only properties\n */\nexport function internalInitializeGTSRA(\n config: I18nConfigParams & ReactI18nCacheParams\n): void {\n initializeI18nConfig(config, 'server-render');\n\n const i18nCache = new ReactI18nCache(config);\n setReactI18nCache(i18nCache);\n}\n"],"mappings":"qMASA,SAAgB,EACd,EACM,CACN,EAAqB,EAAQ,gBAAgB,CAG7C,EAAkB,IADI,EAAe,EACV,CAAC"}
1
+ {"version":3,"file":"initializeGTSRA.mjs","names":[],"sources":["../../src/setup/initializeGTSRA.ts"],"sourcesContent":["import type { ReactI18nCacheParams } from '../i18n-cache/ReactI18nCache';\nimport { setReactI18nCache } from '../i18n-cache/singleton-operations';\nimport { ReactI18nCache } from '../i18n-cache/ReactI18nCache';\nimport { initializeI18nConfig, type ReactI18nConfigParams } from './i18nConfig';\n\n/**\n * Validation and setup for read only properties\n */\nexport function internalInitializeGTSRA(\n config: ReactI18nConfigParams & ReactI18nCacheParams\n): void {\n initializeI18nConfig(config, 'server-render');\n\n const i18nCache = new ReactI18nCache(config);\n setReactI18nCache(i18nCache);\n}\n"],"mappings":"qMAQA,SAAgB,EACd,EACM,CACN,EAAqB,EAAQ,gBAAgB,CAG7C,EAAkB,IADI,EAAe,EACV,CAAC"}
@@ -1,2 +1,2 @@
1
- const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../plurals/getPluralBranch.cjs`),n=require(`../variables/_getVariableProps.cjs`),r=require(`./getGTTag.cjs`);let i=require(`generaltranslation/internal`),a=require(`react`);a=e.__toESM(a);function o({renderVariable:e}){return function({children:o,defaultLocale:s=i.libraryDefaultLocale,enableI18n:c}){let l=i=>{let o=r.getGTTag(i);if(n.isVariableElementProps(i.props)){let{variableType:t,variableValue:r,variableOptions:a,injectionType:o}=n.getVariableProps(i.props);return e({variableType:t,variableValue:r,variableOptions:a,locales:[s],enableI18n:c,injectionType:o})}if(o?.transformation===`plural`){let e=o.branches||{};if(typeof i.props.n!=`number`)return i.props.children==null?null:d(i.props.children);let n=t.getPluralBranch(i.props.n,[s],e);return d(n===null?i.props.children:n)}if(o?.transformation===`branch`){let{children:e,branch:t}=i.props,n=o.branches||{},r=t==null||t===``?void 0:t.toString();return d(r&&n[r]!==void 0?n[r]:e)}return o?.transformation===`fragment`?a.default.createElement(a.default.Fragment,{key:i.props.key,children:d(i.props.children)}):i.props.children?a.default.cloneElement(i,{...i.props,"data-_gt":void 0,children:d(i.props.children)}):a.default.cloneElement(i,{...i.props,"data-_gt":void 0})},u=e=>a.default.isValidElement(e)?l(e):e,d=e=>Array.isArray(e)?a.default.Children.map(e,u):u(e);return d(o)}}exports.createRenderDefaultChildren=o;
1
+ const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../plurals/getPluralBranch.cjs`),n=require(`../variables/_getVariableProps.cjs`),r=require(`./getGTTag.cjs`);let i=require(`generaltranslation/internal`),a=require(`react`);a=e.__toESM(a);function o({renderVariable:e}){return function({children:o,defaultLocale:s=i.libraryDefaultLocale,enableI18n:c}){let l=i=>{let o=r.getGTTag(i);if(n.isVariableElementProps(i.props)){let{variableType:t,variableValue:r,variableOptions:a,injectionType:o}=n.getVariableProps(i.props);return e({variableType:t,variableValue:r,variableOptions:a,locales:[s],enableI18n:c,injectionType:o})}if(o?.transformation===`plural`){let e=o.branches||{};return typeof i.props.n==`number`?d(t.getPluralBranch(i.props.n,[s],e)??i.props.children):i.props.children==null?null:d(i.props.children)}if(o?.transformation===`branch`){let{children:e,branch:t}=i.props,n=o.branches||{},r=t==null||t===``?void 0:t.toString();return d(r&&n[r]!==void 0?n[r]:e)}return o?.transformation===`fragment`?a.default.createElement(a.default.Fragment,{key:i.props.key,children:d(i.props.children)}):i.props.children?a.default.cloneElement(i,{...i.props,"data-_gt":void 0,children:d(i.props.children)}):a.default.cloneElement(i,{...i.props,"data-_gt":void 0})},u=e=>a.default.isValidElement(e)?l(e):e,d=e=>Array.isArray(e)?a.default.Children.map(e,u):u(e);return d(o)}}exports.createRenderDefaultChildren=o;
2
2
  //# sourceMappingURL=renderDefaultChildren.shared.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderDefaultChildren.shared.cjs","names":["libraryDefaultLocale","getGTTag","isVariableElementProps","getVariableProps","getPluralBranch","React"],"sources":["../../../src/utils/rendering/renderDefaultChildren.shared.ts"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport {\n getVariableProps,\n isVariableElementProps,\n} from '../variables/_getVariableProps';\nimport { libraryDefaultLocale } from 'generaltranslation/internal';\nimport { TaggedChild, TaggedChildren, TaggedElement } from '../types';\nimport { getGTTag } from './getGTTag';\nimport { getPluralBranch } from '../plurals/getPluralBranch';\nimport type { RenderVariable } from '../types';\n\n// Shared implementation: the variable renderer is dependency-injected by a\n// factory so neither code path statically imports the other's variable\n// components. Callsites use the pre-instantiated renderPipeline /\n// renderPipeline.rsc modules instead of importing this directly.\n\ntype RenderDefaultChildrenArgs = {\n children: TaggedChildren;\n defaultLocale: string;\n enableI18n: boolean;\n};\n\nexport type { RenderDefaultChildrenArgs };\n\nfunction createRenderDefaultChildren({\n renderVariable,\n}: {\n renderVariable: RenderVariable;\n}): (args: RenderDefaultChildrenArgs) => React.ReactNode {\n return function renderDefaultChildren({\n children,\n defaultLocale = libraryDefaultLocale,\n enableI18n,\n }: RenderDefaultChildrenArgs): React.ReactNode {\n const handleSingleChildElement = (child: TaggedElement): ReactNode => {\n const generaltranslation = getGTTag(child);\n\n // Variable\n if (isVariableElementProps(child.props)) {\n const { variableType, variableValue, variableOptions, injectionType } =\n getVariableProps(child.props);\n return renderVariable({\n variableType,\n variableValue,\n variableOptions,\n locales: [defaultLocale],\n enableI18n,\n injectionType,\n });\n }\n\n // Plural\n if (generaltranslation?.transformation === 'plural') {\n const branches = generaltranslation.branches || {};\n if (typeof child.props.n !== 'number') {\n return child.props.children != null\n ? handleChildren(child.props.children)\n : null;\n }\n const resolvedBranch = getPluralBranch(\n child.props.n,\n [defaultLocale],\n branches\n );\n return handleChildren(\n (resolvedBranch !== null\n ? resolvedBranch\n : child.props.children) as TaggedChildren\n );\n }\n\n // Branch\n if (generaltranslation?.transformation === 'branch') {\n const { children, branch } = child.props;\n const branches = generaltranslation.branches || {};\n const branchKey =\n branch == null || branch === '' ? undefined : branch.toString();\n return handleChildren(\n branchKey && branches[branchKey] !== undefined\n ? branches[branchKey]\n : children\n );\n }\n\n // Fragment\n if (generaltranslation?.transformation === 'fragment') {\n return React.createElement(React.Fragment, {\n key: child.props.key,\n children: handleChildren(child.props.children),\n });\n }\n\n // Default\n if (child.props.children) {\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n children: handleChildren(child.props.children) as TaggedChildren,\n });\n }\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n });\n };\n\n const handleSingleChild = (child: TaggedChild): ReactNode => {\n if (React.isValidElement(child)) {\n return handleSingleChildElement(child);\n }\n return child;\n };\n\n const handleChildren = (children: TaggedChildren): ReactNode => {\n return Array.isArray(children)\n ? React.Children.map(children, handleSingleChild)\n : handleSingleChild(children);\n };\n\n return handleChildren(children);\n };\n}\n\nexport { createRenderDefaultChildren };\n"],"mappings":"+PAwBA,SAAS,EAA4B,CACnC,kBAGuD,CACvD,OAAO,SAA+B,CACpC,WACA,gBAAgBA,EAAAA,qBAChB,cAC6C,CAC7C,IAAM,EAA4B,GAAoC,CACpE,IAAM,EAAqBC,EAAAA,SAAS,EAAM,CAG1C,GAAIC,EAAAA,uBAAuB,EAAM,MAAM,CAAE,CACvC,GAAM,CAAE,eAAc,gBAAe,kBAAiB,iBACpDC,EAAAA,iBAAiB,EAAM,MAAM,CAC/B,OAAO,EAAe,CACpB,eACA,gBACA,kBACA,QAAS,CAAC,EAAc,CACxB,aACA,gBACD,CAAC,CAIJ,GAAI,GAAoB,iBAAmB,SAAU,CACnD,IAAM,EAAW,EAAmB,UAAY,EAAE,CAClD,GAAI,OAAO,EAAM,MAAM,GAAM,SAC3B,OAAO,EAAM,MAAM,UAAY,KAE3B,KADA,EAAe,EAAM,MAAM,SAAS,CAG1C,IAAM,EAAiBC,EAAAA,gBACrB,EAAM,MAAM,EACZ,CAAC,EAAc,CACf,EACD,CACD,OAAO,EACJ,IAAmB,KAEhB,EAAM,MAAM,SADZ,EAEL,CAIH,GAAI,GAAoB,iBAAmB,SAAU,CACnD,GAAM,CAAE,WAAU,UAAW,EAAM,MAC7B,EAAW,EAAmB,UAAY,EAAE,CAC5C,EACJ,GAAU,MAAQ,IAAW,GAAK,IAAA,GAAY,EAAO,UAAU,CACjE,OAAO,EACL,GAAa,EAAS,KAAe,IAAA,GACjC,EAAS,GACT,EACL,CAmBH,OAfI,GAAoB,iBAAmB,WAClCC,EAAAA,QAAM,cAAcA,EAAAA,QAAM,SAAU,CACzC,IAAK,EAAM,MAAM,IACjB,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAIA,EAAM,MAAM,SACPA,EAAAA,QAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACZ,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAEGA,EAAAA,QAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACb,CAAC,EAGE,EAAqB,GACrBA,EAAAA,QAAM,eAAe,EAAM,CACtB,EAAyB,EAAM,CAEjC,EAGH,EAAkB,GACf,MAAM,QAAQ,EAAS,CAC1BA,EAAAA,QAAM,SAAS,IAAI,EAAU,EAAkB,CAC/C,EAAkB,EAAS,CAGjC,OAAO,EAAe,EAAS"}
1
+ {"version":3,"file":"renderDefaultChildren.shared.cjs","names":["libraryDefaultLocale","getGTTag","isVariableElementProps","getVariableProps","getPluralBranch","React"],"sources":["../../../src/utils/rendering/renderDefaultChildren.shared.ts"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport {\n getVariableProps,\n isVariableElementProps,\n} from '../variables/_getVariableProps';\nimport { libraryDefaultLocale } from 'generaltranslation/internal';\nimport { TaggedChild, TaggedChildren, TaggedElement } from '../types';\nimport { getGTTag } from './getGTTag';\nimport { getPluralBranch } from '../plurals/getPluralBranch';\nimport type { RenderVariable } from '../types';\n\n// Shared implementation: the variable renderer is dependency-injected by a\n// factory so neither code path statically imports the other's variable\n// components. Callsites use the pre-instantiated renderPipeline /\n// renderPipeline.rsc modules instead of importing this directly.\n\ntype RenderDefaultChildrenArgs = {\n children: TaggedChildren;\n defaultLocale: string;\n enableI18n: boolean;\n};\n\nexport type { RenderDefaultChildrenArgs };\n\nfunction createRenderDefaultChildren({\n renderVariable,\n}: {\n renderVariable: RenderVariable;\n}): (args: RenderDefaultChildrenArgs) => React.ReactNode {\n return function renderDefaultChildren({\n children,\n defaultLocale = libraryDefaultLocale,\n enableI18n,\n }: RenderDefaultChildrenArgs): React.ReactNode {\n const handleSingleChildElement = (child: TaggedElement): ReactNode => {\n const generaltranslation = getGTTag(child);\n\n // Variable\n if (isVariableElementProps(child.props)) {\n const { variableType, variableValue, variableOptions, injectionType } =\n getVariableProps(child.props);\n return renderVariable({\n variableType,\n variableValue,\n variableOptions,\n locales: [defaultLocale],\n enableI18n,\n injectionType,\n });\n }\n\n // Plural\n if (generaltranslation?.transformation === 'plural') {\n const branches = generaltranslation.branches || {};\n if (typeof child.props.n !== 'number') {\n return child.props.children != null\n ? handleChildren(child.props.children)\n : null;\n }\n const resolvedBranch = getPluralBranch(\n child.props.n,\n [defaultLocale],\n branches\n );\n return handleChildren(\n (resolvedBranch != null\n ? resolvedBranch\n : child.props.children) as TaggedChildren\n );\n }\n\n // Branch\n if (generaltranslation?.transformation === 'branch') {\n const { children, branch } = child.props;\n const branches = generaltranslation.branches || {};\n const branchKey =\n branch == null || branch === '' ? undefined : branch.toString();\n return handleChildren(\n branchKey && branches[branchKey] !== undefined\n ? branches[branchKey]\n : children\n );\n }\n\n // Fragment\n if (generaltranslation?.transformation === 'fragment') {\n return React.createElement(React.Fragment, {\n key: child.props.key,\n children: handleChildren(child.props.children),\n });\n }\n\n // Default\n if (child.props.children) {\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n children: handleChildren(child.props.children) as TaggedChildren,\n });\n }\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n });\n };\n\n const handleSingleChild = (child: TaggedChild): ReactNode => {\n if (React.isValidElement(child)) {\n return handleSingleChildElement(child);\n }\n return child;\n };\n\n const handleChildren = (children: TaggedChildren): ReactNode => {\n return Array.isArray(children)\n ? React.Children.map(children, handleSingleChild)\n : handleSingleChild(children);\n };\n\n return handleChildren(children);\n };\n}\n\nexport { createRenderDefaultChildren };\n"],"mappings":"+PAwBA,SAAS,EAA4B,CACnC,kBAGuD,CACvD,OAAO,SAA+B,CACpC,WACA,gBAAgBA,EAAAA,qBAChB,cAC6C,CAC7C,IAAM,EAA4B,GAAoC,CACpE,IAAM,EAAqBC,EAAAA,SAAS,EAAM,CAG1C,GAAIC,EAAAA,uBAAuB,EAAM,MAAM,CAAE,CACvC,GAAM,CAAE,eAAc,gBAAe,kBAAiB,iBACpDC,EAAAA,iBAAiB,EAAM,MAAM,CAC/B,OAAO,EAAe,CACpB,eACA,gBACA,kBACA,QAAS,CAAC,EAAc,CACxB,aACA,gBACD,CAAC,CAIJ,GAAI,GAAoB,iBAAmB,SAAU,CACnD,IAAM,EAAW,EAAmB,UAAY,EAAE,CAWlD,OAVI,OAAO,EAAM,MAAM,GAAM,SAUtB,EALgBC,EAAAA,gBACrB,EAAM,MAAM,EACZ,CAAC,EAAc,CACf,EAGC,EAEG,EAAM,MAAM,SACjB,CAbQ,EAAM,MAAM,UAAY,KAE3B,KADA,EAAe,EAAM,MAAM,SAAS,CAgB5C,GAAI,GAAoB,iBAAmB,SAAU,CACnD,GAAM,CAAE,WAAU,UAAW,EAAM,MAC7B,EAAW,EAAmB,UAAY,EAAE,CAC5C,EACJ,GAAU,MAAQ,IAAW,GAAK,IAAA,GAAY,EAAO,UAAU,CACjE,OAAO,EACL,GAAa,EAAS,KAAe,IAAA,GACjC,EAAS,GACT,EACL,CAmBH,OAfI,GAAoB,iBAAmB,WAClCC,EAAAA,QAAM,cAAcA,EAAAA,QAAM,SAAU,CACzC,IAAK,EAAM,MAAM,IACjB,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAIA,EAAM,MAAM,SACPA,EAAAA,QAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACZ,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAEGA,EAAAA,QAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACb,CAAC,EAGE,EAAqB,GACrBA,EAAAA,QAAM,eAAe,EAAM,CACtB,EAAyB,EAAM,CAEjC,EAGH,EAAkB,GACf,MAAM,QAAQ,EAAS,CAC1BA,EAAAA,QAAM,SAAS,IAAI,EAAU,EAAkB,CAC/C,EAAkB,EAAS,CAGjC,OAAO,EAAe,EAAS"}
@@ -1,2 +1,2 @@
1
- import{getPluralBranch as e}from"../plurals/getPluralBranch.mjs";import{getVariableProps as t,isVariableElementProps as n}from"../variables/_getVariableProps.mjs";import{getGTTag as r}from"./getGTTag.mjs";import{libraryDefaultLocale as i}from"generaltranslation/internal";import a from"react";function o({renderVariable:o}){return function({children:s,defaultLocale:c=i,enableI18n:l}){let u=i=>{let s=r(i);if(n(i.props)){let{variableType:e,variableValue:n,variableOptions:r,injectionType:a}=t(i.props);return o({variableType:e,variableValue:n,variableOptions:r,locales:[c],enableI18n:l,injectionType:a})}if(s?.transformation===`plural`){let t=s.branches||{};if(typeof i.props.n!=`number`)return i.props.children==null?null:f(i.props.children);let n=e(i.props.n,[c],t);return f(n===null?i.props.children:n)}if(s?.transformation===`branch`){let{children:e,branch:t}=i.props,n=s.branches||{},r=t==null||t===``?void 0:t.toString();return f(r&&n[r]!==void 0?n[r]:e)}return s?.transformation===`fragment`?a.createElement(a.Fragment,{key:i.props.key,children:f(i.props.children)}):i.props.children?a.cloneElement(i,{...i.props,"data-_gt":void 0,children:f(i.props.children)}):a.cloneElement(i,{...i.props,"data-_gt":void 0})},d=e=>a.isValidElement(e)?u(e):e,f=e=>Array.isArray(e)?a.Children.map(e,d):d(e);return f(s)}}export{o as createRenderDefaultChildren};
1
+ import{getPluralBranch as e}from"../plurals/getPluralBranch.mjs";import{getVariableProps as t,isVariableElementProps as n}from"../variables/_getVariableProps.mjs";import{getGTTag as r}from"./getGTTag.mjs";import{libraryDefaultLocale as i}from"generaltranslation/internal";import a from"react";function o({renderVariable:o}){return function({children:s,defaultLocale:c=i,enableI18n:l}){let u=i=>{let s=r(i);if(n(i.props)){let{variableType:e,variableValue:n,variableOptions:r,injectionType:a}=t(i.props);return o({variableType:e,variableValue:n,variableOptions:r,locales:[c],enableI18n:l,injectionType:a})}if(s?.transformation===`plural`){let t=s.branches||{};return typeof i.props.n==`number`?f(e(i.props.n,[c],t)??i.props.children):i.props.children==null?null:f(i.props.children)}if(s?.transformation===`branch`){let{children:e,branch:t}=i.props,n=s.branches||{},r=t==null||t===``?void 0:t.toString();return f(r&&n[r]!==void 0?n[r]:e)}return s?.transformation===`fragment`?a.createElement(a.Fragment,{key:i.props.key,children:f(i.props.children)}):i.props.children?a.cloneElement(i,{...i.props,"data-_gt":void 0,children:f(i.props.children)}):a.cloneElement(i,{...i.props,"data-_gt":void 0})},d=e=>a.isValidElement(e)?u(e):e,f=e=>Array.isArray(e)?a.Children.map(e,d):d(e);return f(s)}}export{o as createRenderDefaultChildren};
2
2
  //# sourceMappingURL=renderDefaultChildren.shared.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderDefaultChildren.shared.mjs","names":[],"sources":["../../../src/utils/rendering/renderDefaultChildren.shared.ts"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport {\n getVariableProps,\n isVariableElementProps,\n} from '../variables/_getVariableProps';\nimport { libraryDefaultLocale } from 'generaltranslation/internal';\nimport { TaggedChild, TaggedChildren, TaggedElement } from '../types';\nimport { getGTTag } from './getGTTag';\nimport { getPluralBranch } from '../plurals/getPluralBranch';\nimport type { RenderVariable } from '../types';\n\n// Shared implementation: the variable renderer is dependency-injected by a\n// factory so neither code path statically imports the other's variable\n// components. Callsites use the pre-instantiated renderPipeline /\n// renderPipeline.rsc modules instead of importing this directly.\n\ntype RenderDefaultChildrenArgs = {\n children: TaggedChildren;\n defaultLocale: string;\n enableI18n: boolean;\n};\n\nexport type { RenderDefaultChildrenArgs };\n\nfunction createRenderDefaultChildren({\n renderVariable,\n}: {\n renderVariable: RenderVariable;\n}): (args: RenderDefaultChildrenArgs) => React.ReactNode {\n return function renderDefaultChildren({\n children,\n defaultLocale = libraryDefaultLocale,\n enableI18n,\n }: RenderDefaultChildrenArgs): React.ReactNode {\n const handleSingleChildElement = (child: TaggedElement): ReactNode => {\n const generaltranslation = getGTTag(child);\n\n // Variable\n if (isVariableElementProps(child.props)) {\n const { variableType, variableValue, variableOptions, injectionType } =\n getVariableProps(child.props);\n return renderVariable({\n variableType,\n variableValue,\n variableOptions,\n locales: [defaultLocale],\n enableI18n,\n injectionType,\n });\n }\n\n // Plural\n if (generaltranslation?.transformation === 'plural') {\n const branches = generaltranslation.branches || {};\n if (typeof child.props.n !== 'number') {\n return child.props.children != null\n ? handleChildren(child.props.children)\n : null;\n }\n const resolvedBranch = getPluralBranch(\n child.props.n,\n [defaultLocale],\n branches\n );\n return handleChildren(\n (resolvedBranch !== null\n ? resolvedBranch\n : child.props.children) as TaggedChildren\n );\n }\n\n // Branch\n if (generaltranslation?.transformation === 'branch') {\n const { children, branch } = child.props;\n const branches = generaltranslation.branches || {};\n const branchKey =\n branch == null || branch === '' ? undefined : branch.toString();\n return handleChildren(\n branchKey && branches[branchKey] !== undefined\n ? branches[branchKey]\n : children\n );\n }\n\n // Fragment\n if (generaltranslation?.transformation === 'fragment') {\n return React.createElement(React.Fragment, {\n key: child.props.key,\n children: handleChildren(child.props.children),\n });\n }\n\n // Default\n if (child.props.children) {\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n children: handleChildren(child.props.children) as TaggedChildren,\n });\n }\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n });\n };\n\n const handleSingleChild = (child: TaggedChild): ReactNode => {\n if (React.isValidElement(child)) {\n return handleSingleChildElement(child);\n }\n return child;\n };\n\n const handleChildren = (children: TaggedChildren): ReactNode => {\n return Array.isArray(children)\n ? React.Children.map(children, handleSingleChild)\n : handleSingleChild(children);\n };\n\n return handleChildren(children);\n };\n}\n\nexport { createRenderDefaultChildren };\n"],"mappings":"qSAwBA,SAAS,EAA4B,CACnC,kBAGuD,CACvD,OAAO,SAA+B,CACpC,WACA,gBAAgB,EAChB,cAC6C,CAC7C,IAAM,EAA4B,GAAoC,CACpE,IAAM,EAAqB,EAAS,EAAM,CAG1C,GAAI,EAAuB,EAAM,MAAM,CAAE,CACvC,GAAM,CAAE,eAAc,gBAAe,kBAAiB,iBACpD,EAAiB,EAAM,MAAM,CAC/B,OAAO,EAAe,CACpB,eACA,gBACA,kBACA,QAAS,CAAC,EAAc,CACxB,aACA,gBACD,CAAC,CAIJ,GAAI,GAAoB,iBAAmB,SAAU,CACnD,IAAM,EAAW,EAAmB,UAAY,EAAE,CAClD,GAAI,OAAO,EAAM,MAAM,GAAM,SAC3B,OAAO,EAAM,MAAM,UAAY,KAE3B,KADA,EAAe,EAAM,MAAM,SAAS,CAG1C,IAAM,EAAiB,EACrB,EAAM,MAAM,EACZ,CAAC,EAAc,CACf,EACD,CACD,OAAO,EACJ,IAAmB,KAEhB,EAAM,MAAM,SADZ,EAEL,CAIH,GAAI,GAAoB,iBAAmB,SAAU,CACnD,GAAM,CAAE,WAAU,UAAW,EAAM,MAC7B,EAAW,EAAmB,UAAY,EAAE,CAC5C,EACJ,GAAU,MAAQ,IAAW,GAAK,IAAA,GAAY,EAAO,UAAU,CACjE,OAAO,EACL,GAAa,EAAS,KAAe,IAAA,GACjC,EAAS,GACT,EACL,CAmBH,OAfI,GAAoB,iBAAmB,WAClC,EAAM,cAAc,EAAM,SAAU,CACzC,IAAK,EAAM,MAAM,IACjB,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAIA,EAAM,MAAM,SACP,EAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACZ,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAEG,EAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACb,CAAC,EAGE,EAAqB,GACrB,EAAM,eAAe,EAAM,CACtB,EAAyB,EAAM,CAEjC,EAGH,EAAkB,GACf,MAAM,QAAQ,EAAS,CAC1B,EAAM,SAAS,IAAI,EAAU,EAAkB,CAC/C,EAAkB,EAAS,CAGjC,OAAO,EAAe,EAAS"}
1
+ {"version":3,"file":"renderDefaultChildren.shared.mjs","names":[],"sources":["../../../src/utils/rendering/renderDefaultChildren.shared.ts"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport {\n getVariableProps,\n isVariableElementProps,\n} from '../variables/_getVariableProps';\nimport { libraryDefaultLocale } from 'generaltranslation/internal';\nimport { TaggedChild, TaggedChildren, TaggedElement } from '../types';\nimport { getGTTag } from './getGTTag';\nimport { getPluralBranch } from '../plurals/getPluralBranch';\nimport type { RenderVariable } from '../types';\n\n// Shared implementation: the variable renderer is dependency-injected by a\n// factory so neither code path statically imports the other's variable\n// components. Callsites use the pre-instantiated renderPipeline /\n// renderPipeline.rsc modules instead of importing this directly.\n\ntype RenderDefaultChildrenArgs = {\n children: TaggedChildren;\n defaultLocale: string;\n enableI18n: boolean;\n};\n\nexport type { RenderDefaultChildrenArgs };\n\nfunction createRenderDefaultChildren({\n renderVariable,\n}: {\n renderVariable: RenderVariable;\n}): (args: RenderDefaultChildrenArgs) => React.ReactNode {\n return function renderDefaultChildren({\n children,\n defaultLocale = libraryDefaultLocale,\n enableI18n,\n }: RenderDefaultChildrenArgs): React.ReactNode {\n const handleSingleChildElement = (child: TaggedElement): ReactNode => {\n const generaltranslation = getGTTag(child);\n\n // Variable\n if (isVariableElementProps(child.props)) {\n const { variableType, variableValue, variableOptions, injectionType } =\n getVariableProps(child.props);\n return renderVariable({\n variableType,\n variableValue,\n variableOptions,\n locales: [defaultLocale],\n enableI18n,\n injectionType,\n });\n }\n\n // Plural\n if (generaltranslation?.transformation === 'plural') {\n const branches = generaltranslation.branches || {};\n if (typeof child.props.n !== 'number') {\n return child.props.children != null\n ? handleChildren(child.props.children)\n : null;\n }\n const resolvedBranch = getPluralBranch(\n child.props.n,\n [defaultLocale],\n branches\n );\n return handleChildren(\n (resolvedBranch != null\n ? resolvedBranch\n : child.props.children) as TaggedChildren\n );\n }\n\n // Branch\n if (generaltranslation?.transformation === 'branch') {\n const { children, branch } = child.props;\n const branches = generaltranslation.branches || {};\n const branchKey =\n branch == null || branch === '' ? undefined : branch.toString();\n return handleChildren(\n branchKey && branches[branchKey] !== undefined\n ? branches[branchKey]\n : children\n );\n }\n\n // Fragment\n if (generaltranslation?.transformation === 'fragment') {\n return React.createElement(React.Fragment, {\n key: child.props.key,\n children: handleChildren(child.props.children),\n });\n }\n\n // Default\n if (child.props.children) {\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n children: handleChildren(child.props.children) as TaggedChildren,\n });\n }\n return React.cloneElement(child, {\n ...child.props,\n 'data-_gt': undefined,\n });\n };\n\n const handleSingleChild = (child: TaggedChild): ReactNode => {\n if (React.isValidElement(child)) {\n return handleSingleChildElement(child);\n }\n return child;\n };\n\n const handleChildren = (children: TaggedChildren): ReactNode => {\n return Array.isArray(children)\n ? React.Children.map(children, handleSingleChild)\n : handleSingleChild(children);\n };\n\n return handleChildren(children);\n };\n}\n\nexport { createRenderDefaultChildren };\n"],"mappings":"qSAwBA,SAAS,EAA4B,CACnC,kBAGuD,CACvD,OAAO,SAA+B,CACpC,WACA,gBAAgB,EAChB,cAC6C,CAC7C,IAAM,EAA4B,GAAoC,CACpE,IAAM,EAAqB,EAAS,EAAM,CAG1C,GAAI,EAAuB,EAAM,MAAM,CAAE,CACvC,GAAM,CAAE,eAAc,gBAAe,kBAAiB,iBACpD,EAAiB,EAAM,MAAM,CAC/B,OAAO,EAAe,CACpB,eACA,gBACA,kBACA,QAAS,CAAC,EAAc,CACxB,aACA,gBACD,CAAC,CAIJ,GAAI,GAAoB,iBAAmB,SAAU,CACnD,IAAM,EAAW,EAAmB,UAAY,EAAE,CAWlD,OAVI,OAAO,EAAM,MAAM,GAAM,SAUtB,EALgB,EACrB,EAAM,MAAM,EACZ,CAAC,EAAc,CACf,EAGC,EAEG,EAAM,MAAM,SACjB,CAbQ,EAAM,MAAM,UAAY,KAE3B,KADA,EAAe,EAAM,MAAM,SAAS,CAgB5C,GAAI,GAAoB,iBAAmB,SAAU,CACnD,GAAM,CAAE,WAAU,UAAW,EAAM,MAC7B,EAAW,EAAmB,UAAY,EAAE,CAC5C,EACJ,GAAU,MAAQ,IAAW,GAAK,IAAA,GAAY,EAAO,UAAU,CACjE,OAAO,EACL,GAAa,EAAS,KAAe,IAAA,GACjC,EAAS,GACT,EACL,CAmBH,OAfI,GAAoB,iBAAmB,WAClC,EAAM,cAAc,EAAM,SAAU,CACzC,IAAK,EAAM,MAAM,IACjB,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAIA,EAAM,MAAM,SACP,EAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACZ,SAAU,EAAe,EAAM,MAAM,SAAS,CAC/C,CAAC,CAEG,EAAM,aAAa,EAAO,CAC/B,GAAG,EAAM,MACT,WAAY,IAAA,GACb,CAAC,EAGE,EAAqB,GACrB,EAAM,eAAe,EAAM,CACtB,EAAyB,EAAM,CAEjC,EAGH,EAAkB,GACf,MAAM,QAAQ,EAAS,CAC1B,EAAM,SAAS,IAAI,EAAU,EAAkB,CAC/C,EAAkB,EAAS,CAGjC,OAAO,EAAe,EAAS"}
@@ -1,2 +1,2 @@
1
- const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../plurals/getPluralBranch.cjs`),n=require(`../variables/_getVariableProps.cjs`),r=require(`./getGTTag.cjs`),i=require(`./renderDefaultChildren.shared.cjs`);let a=require(`generaltranslation/internal`),o=require(`react`);o=e.__toESM(o);let s=require(`@generaltranslation/format/types`),c=require(`react/jsx-runtime`);function l({renderVariable:e}){let l=i.createRenderDefaultChildren({renderVariable:e});function u({sourceElement:e,targetElement:n,locales:r=[a.libraryDefaultLocale],enableI18n:i}){let{props:c}=e,u=c[`data-_gt`],f=u?.transformation,p=n.d,m={};if(p&&Object.entries(s.HTML_CONTENT_PROPS).forEach(([e,t])=>{p[e]&&(m[t]=p[e])}),f===`plural`){let a=e.props.n;if(typeof a!=`number`)return l({children:e,defaultLocale:r[0],enableI18n:i});let o=t.getPluralBranch(a,r,u.branches||{}),s=o===null?e.props.children:o,c=t.getPluralBranch(a,r,n.d?.b||{});return d({source:s,target:c===null?n.c:c,locales:r,enableI18n:i})}if(f===`branch`){let{branch:e,children:t}=c,a=e==null||e===``?void 0:e.toString(),o=u.branches||{},s=n.d?.b||{};return d({source:a&&o[a]!==void 0?o[a]:t,target:a&&s[a]!==void 0?s[a]:n.c,locales:r,enableI18n:i})}return f===`fragment`&&n.c?o.default.createElement(o.default.Fragment,{key:e.props.key,children:d({source:c.children,target:n.c,locales:r,enableI18n:i})}):c?.children&&n?.c?o.default.cloneElement(e,{...c,...m,"data-_gt":void 0,children:d({source:c.children,target:n.c,locales:r,enableI18n:i})}):l({children:e,defaultLocale:r[0],enableI18n:i})}function d({source:t,target:i,locales:s=[a.libraryDefaultLocale],enableI18n:d}){if(i==null&&t)return l({children:t,defaultLocale:s[0],enableI18n:d});if(typeof i==`string`)return i;if(Array.isArray(i)&&!Array.isArray(t)&&t&&(t=[t]),Array.isArray(t)&&Array.isArray(i)){let l={},f={},p={},m=t.filter(e=>{if(o.default.isValidElement(e))if(n.isVariableElementProps(e.props)){let{variableName:t,variableValue:r,variableOptions:i,injectionType:a}=n.getVariableProps(e.props);l[t]=r,f[t]=i,p[t]=a}else return!0;return!1}),h=e=>m.find(t=>{let n=r.getGTTag(t);return n?.id===void 0?!1:n.id===e.i})||m.shift();return i.map((t,n)=>{if(typeof t==`string`)return(0,c.jsx)(o.default.Fragment,{children:t},`string_${n}`);if((0,a.isVariable)(t))return(0,c.jsx)(o.default.Fragment,{children:e({variableType:t.v||`v`,variableValue:l[t.k],variableOptions:f[t.k],locales:s,enableI18n:d,injectionType:p[t.k]||`manual`})},`var_${n}`);let r=h(t);return r?(0,c.jsx)(o.default.Fragment,{children:u({sourceElement:r,targetElement:t,locales:s,enableI18n:d})},`element_${n}`):null})}if(i&&typeof i==`object`&&!Array.isArray(i)){let r=(0,a.isVariable)(i)?`variable`:`element`;if(o.default.isValidElement(t)){if(r===`element`)return u({sourceElement:t,targetElement:i,locales:s,enableI18n:d});if(n.isVariableElementProps(t.props)){let{variableValue:r,variableOptions:i,variableType:a,injectionType:o}=n.getVariableProps(t.props);return e({variableType:a,variableValue:r,variableOptions:i,locales:s,enableI18n:d,injectionType:o})}}}return l({children:t,defaultLocale:s[0],enableI18n:d})}return d}exports.createRenderTranslatedChildren=l;
1
+ const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../plurals/getPluralBranch.cjs`),n=require(`../variables/_getVariableProps.cjs`),r=require(`./getGTTag.cjs`),i=require(`./renderDefaultChildren.shared.cjs`);let a=require(`generaltranslation/internal`),o=require(`react`);o=e.__toESM(o);let s=require(`@generaltranslation/format/types`),c=require(`react/jsx-runtime`);function l({renderVariable:e}){let l=i.createRenderDefaultChildren({renderVariable:e});function u({sourceElement:e,targetElement:n,locales:r=[a.libraryDefaultLocale],enableI18n:i}){let{props:c}=e,u=c[`data-_gt`],f=u?.transformation,p=n.d,m={};if(p&&Object.entries(s.HTML_CONTENT_PROPS).forEach(([e,t])=>{p[e]&&(m[t]=p[e])}),f===`plural`){let a=e.props.n;return typeof a==`number`?d({source:t.getPluralBranch(a,r,u.branches||{})??e.props.children,target:t.getPluralBranch(a,r,n.d?.b||{})??n.c,locales:r,enableI18n:i}):l({children:e,defaultLocale:r[0],enableI18n:i})}if(f===`branch`){let{branch:e,children:t}=c,a=e==null||e===``?void 0:e.toString(),o=u.branches||{},s=n.d?.b||{};return d({source:a&&o[a]!==void 0?o[a]:t,target:a&&s[a]!==void 0?s[a]:n.c,locales:r,enableI18n:i})}return f===`fragment`&&n.c?o.default.createElement(o.default.Fragment,{key:e.props.key,children:d({source:c.children,target:n.c,locales:r,enableI18n:i})}):c?.children&&n?.c?o.default.cloneElement(e,{...c,...m,"data-_gt":void 0,children:d({source:c.children,target:n.c,locales:r,enableI18n:i})}):l({children:e,defaultLocale:r[0],enableI18n:i})}function d({source:t,target:i,locales:s=[a.libraryDefaultLocale],enableI18n:d}){if(i==null&&t)return l({children:t,defaultLocale:s[0],enableI18n:d});if(typeof i==`string`)return i;if(Array.isArray(i)&&!Array.isArray(t)&&t&&(t=[t]),Array.isArray(t)&&Array.isArray(i)){let l={},f={},p={},m=t.filter(e=>{if(o.default.isValidElement(e))if(n.isVariableElementProps(e.props)){let{variableName:t,variableValue:r,variableOptions:i,injectionType:a}=n.getVariableProps(e.props);l[t]=r,f[t]=i,p[t]=a}else return!0;return!1}),h=e=>m.find(t=>{let n=r.getGTTag(t);return n?.id===void 0?!1:n.id===e.i})||m.shift();return i.map((t,n)=>{if(typeof t==`string`)return(0,c.jsx)(o.default.Fragment,{children:t},`string_${n}`);if((0,a.isVariable)(t))return(0,c.jsx)(o.default.Fragment,{children:e({variableType:t.v||`v`,variableValue:l[t.k],variableOptions:f[t.k],locales:s,enableI18n:d,injectionType:p[t.k]||`manual`})},`var_${n}`);let r=h(t);return r?(0,c.jsx)(o.default.Fragment,{children:u({sourceElement:r,targetElement:t,locales:s,enableI18n:d})},`element_${n}`):null})}if(i&&typeof i==`object`&&!Array.isArray(i)){let r=(0,a.isVariable)(i)?`variable`:`element`;if(o.default.isValidElement(t)){if(r===`element`)return u({sourceElement:t,targetElement:i,locales:s,enableI18n:d});if(n.isVariableElementProps(t.props)){let{variableValue:r,variableOptions:i,variableType:a,injectionType:o}=n.getVariableProps(t.props);return e({variableType:a,variableValue:r,variableOptions:i,locales:s,enableI18n:d,injectionType:o})}}}return l({children:t,defaultLocale:s[0],enableI18n:d})}return d}exports.createRenderTranslatedChildren=l;
2
2
  //# sourceMappingURL=renderTranslatedChildren.shared.cjs.map