gt-react-native 10.19.15 → 10.19.17

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 (175) hide show
  1. package/dist/commonjs/NativeGtReactNative.js +9 -7
  2. package/dist/commonjs/NativeGtReactNative.js.map +1 -1
  3. package/dist/commonjs/_virtual/_rolldown/runtime.js +23 -0
  4. package/dist/commonjs/errors-dir/constants.js +5 -6
  5. package/dist/commonjs/errors-dir/constants.js.map +1 -1
  6. package/dist/commonjs/errors-dir/errors.js +12 -7
  7. package/dist/commonjs/errors-dir/errors.js.map +1 -1
  8. package/dist/commonjs/errors-dir/warnings.js +34 -15
  9. package/dist/commonjs/errors-dir/warnings.js.map +1 -1
  10. package/dist/commonjs/index.js +35 -194
  11. package/dist/commonjs/internal.js +3 -13
  12. package/dist/commonjs/plugin-dir/index.js +35 -51
  13. package/dist/commonjs/plugin-dir/index.js.map +1 -1
  14. package/dist/commonjs/plugin-dir/types.js +24 -9
  15. package/dist/commonjs/plugin-dir/types.js.map +1 -1
  16. package/dist/commonjs/plugin-dir/utils/resolveLocales.js +52 -69
  17. package/dist/commonjs/plugin-dir/utils/resolveLocales.js.map +1 -1
  18. package/dist/commonjs/plugin.js +5 -13
  19. package/dist/commonjs/provider/GTProvider.js +22 -20
  20. package/dist/commonjs/provider/GTProvider.js.map +1 -1
  21. package/dist/commonjs/provider/hooks/locale/useDetermineLocale.js +96 -160
  22. package/dist/commonjs/provider/hooks/locale/useDetermineLocale.js.map +1 -1
  23. package/dist/commonjs/provider/hooks/useRegionState.js +32 -44
  24. package/dist/commonjs/provider/hooks/useRegionState.js.map +1 -1
  25. package/dist/commonjs/tools/testLocalePolyfill.js +125 -146
  26. package/dist/commonjs/tools/testLocalePolyfill.js.map +1 -1
  27. package/dist/commonjs/types/config.js +1 -6
  28. package/dist/commonjs/utils/getNativeLocales.js +36 -51
  29. package/dist/commonjs/utils/getNativeLocales.js.map +1 -1
  30. package/dist/commonjs/utils/nativeStore.js +37 -42
  31. package/dist/commonjs/utils/nativeStore.js.map +1 -1
  32. package/dist/commonjs/utils/utils.js +10 -14
  33. package/dist/commonjs/utils/utils.js.map +1 -1
  34. package/dist/module/NativeGtReactNative.d.ts.map +1 -0
  35. package/dist/module/NativeGtReactNative.js +5 -3
  36. package/dist/module/NativeGtReactNative.js.map +1 -1
  37. package/dist/module/errors-dir/constants.d.ts.map +1 -0
  38. package/dist/module/errors-dir/constants.js +4 -2
  39. package/dist/module/errors-dir/constants.js.map +1 -1
  40. package/dist/module/errors-dir/errors.d.ts.map +1 -0
  41. package/dist/module/errors-dir/errors.js +11 -3
  42. package/dist/module/errors-dir/errors.js.map +1 -1
  43. package/dist/{typescript/commonjs/src → module}/errors-dir/warnings.d.ts +1 -1
  44. package/dist/module/errors-dir/warnings.d.ts.map +1 -0
  45. package/dist/module/errors-dir/warnings.js +31 -11
  46. package/dist/module/errors-dir/warnings.js.map +1 -1
  47. package/dist/module/index.d.ts.map +1 -0
  48. package/dist/module/index.js +2 -5
  49. package/dist/module/internal.d.ts.map +1 -0
  50. package/dist/module/internal.js +2 -4
  51. package/dist/module/plugin-dir/index.d.ts.map +1 -0
  52. package/dist/module/plugin-dir/index.js +28 -45
  53. package/dist/module/plugin-dir/index.js.map +1 -1
  54. package/dist/{typescript/commonjs/src → module}/plugin-dir/types.d.ts +1 -1
  55. package/dist/module/plugin-dir/types.d.ts.map +1 -0
  56. package/dist/module/plugin-dir/types.js +22 -5
  57. package/dist/module/plugin-dir/types.js.map +1 -1
  58. package/dist/{typescript/commonjs/src → module}/plugin-dir/utils/resolveLocales.d.ts +1 -1
  59. package/dist/module/plugin-dir/utils/resolveLocales.d.ts.map +1 -0
  60. package/dist/module/plugin-dir/utils/resolveLocales.js +46 -62
  61. package/dist/module/plugin-dir/utils/resolveLocales.js.map +1 -1
  62. package/dist/module/plugin.d.ts.map +1 -0
  63. package/dist/module/plugin.js +2 -4
  64. package/dist/module/provider/GTProvider.d.ts.map +1 -0
  65. package/dist/module/provider/GTProvider.js +15 -14
  66. package/dist/module/provider/GTProvider.js.map +1 -1
  67. package/dist/module/provider/hooks/locale/useDetermineLocale.d.ts.map +1 -0
  68. package/dist/module/provider/hooks/locale/useDetermineLocale.js +91 -153
  69. package/dist/module/provider/hooks/locale/useDetermineLocale.js.map +1 -1
  70. package/dist/module/provider/hooks/useRegionState.d.ts.map +1 -0
  71. package/dist/module/provider/hooks/useRegionState.js +29 -39
  72. package/dist/module/provider/hooks/useRegionState.js.map +1 -1
  73. package/dist/module/tools/testLocalePolyfill.d.ts.map +1 -0
  74. package/dist/module/tools/testLocalePolyfill.js +124 -143
  75. package/dist/module/tools/testLocalePolyfill.js.map +1 -1
  76. package/dist/{typescript/commonjs/src → module}/types/config.d.ts +4 -4
  77. package/dist/module/types/config.d.ts.map +1 -0
  78. package/dist/module/types/config.js +0 -3
  79. package/dist/module/utils/getNativeLocales.d.ts.map +1 -0
  80. package/dist/module/utils/getNativeLocales.js +35 -48
  81. package/dist/module/utils/getNativeLocales.js.map +1 -1
  82. package/dist/module/utils/nativeStore.d.ts.map +1 -0
  83. package/dist/module/utils/nativeStore.js +35 -38
  84. package/dist/module/utils/nativeStore.js.map +1 -1
  85. package/dist/module/utils/utils.d.ts.map +1 -0
  86. package/dist/module/utils/utils.js +10 -11
  87. package/dist/module/utils/utils.js.map +1 -1
  88. package/package.json +15 -36
  89. package/src/errors-dir/errors.ts +8 -1
  90. package/src/errors-dir/warnings.ts +30 -9
  91. package/src/plugin-dir/types.ts +4 -1
  92. package/src/plugin-dir/utils/resolveLocales.ts +4 -1
  93. package/src/provider/hooks/locale/useDetermineLocale.ts +7 -3
  94. package/src/types/config.ts +4 -3
  95. package/src/utils/getNativeLocales.ts +7 -2
  96. package/dist/commonjs/index.js.map +0 -1
  97. package/dist/commonjs/internal.js.map +0 -1
  98. package/dist/commonjs/package.json +0 -1
  99. package/dist/commonjs/plugin.js.map +0 -1
  100. package/dist/commonjs/types/config.js.map +0 -1
  101. package/dist/module/index.js.map +0 -1
  102. package/dist/module/internal.js.map +0 -1
  103. package/dist/module/package.json +0 -1
  104. package/dist/module/plugin.js.map +0 -1
  105. package/dist/module/types/config.js.map +0 -1
  106. package/dist/typescript/commonjs/package.json +0 -1
  107. package/dist/typescript/commonjs/src/NativeGtReactNative.d.ts.map +0 -1
  108. package/dist/typescript/commonjs/src/errors-dir/constants.d.ts.map +0 -1
  109. package/dist/typescript/commonjs/src/errors-dir/errors.d.ts.map +0 -1
  110. package/dist/typescript/commonjs/src/errors-dir/warnings.d.ts.map +0 -1
  111. package/dist/typescript/commonjs/src/index.d.ts.map +0 -1
  112. package/dist/typescript/commonjs/src/internal.d.ts.map +0 -1
  113. package/dist/typescript/commonjs/src/plugin-dir/index.d.ts.map +0 -1
  114. package/dist/typescript/commonjs/src/plugin-dir/types.d.ts.map +0 -1
  115. package/dist/typescript/commonjs/src/plugin-dir/utils/resolveLocales.d.ts.map +0 -1
  116. package/dist/typescript/commonjs/src/plugin.d.ts.map +0 -1
  117. package/dist/typescript/commonjs/src/provider/GTProvider.d.ts.map +0 -1
  118. package/dist/typescript/commonjs/src/provider/hooks/locale/useDetermineLocale.d.ts.map +0 -1
  119. package/dist/typescript/commonjs/src/provider/hooks/useRegionState.d.ts.map +0 -1
  120. package/dist/typescript/commonjs/src/tools/testLocalePolyfill.d.ts.map +0 -1
  121. package/dist/typescript/commonjs/src/types/config.d.ts.map +0 -1
  122. package/dist/typescript/commonjs/src/utils/getNativeLocales.d.ts.map +0 -1
  123. package/dist/typescript/commonjs/src/utils/nativeStore.d.ts.map +0 -1
  124. package/dist/typescript/commonjs/src/utils/utils.d.ts.map +0 -1
  125. package/dist/typescript/module/package.json +0 -1
  126. package/dist/typescript/module/src/NativeGtReactNative.d.ts +0 -10
  127. package/dist/typescript/module/src/NativeGtReactNative.d.ts.map +0 -1
  128. package/dist/typescript/module/src/errors-dir/constants.d.ts +0 -2
  129. package/dist/typescript/module/src/errors-dir/constants.d.ts.map +0 -1
  130. package/dist/typescript/module/src/errors-dir/errors.d.ts +0 -2
  131. package/dist/typescript/module/src/errors-dir/errors.d.ts.map +0 -1
  132. package/dist/typescript/module/src/errors-dir/warnings.d.ts +0 -5
  133. package/dist/typescript/module/src/errors-dir/warnings.d.ts.map +0 -1
  134. package/dist/typescript/module/src/index.d.ts +0 -5
  135. package/dist/typescript/module/src/index.d.ts.map +0 -1
  136. package/dist/typescript/module/src/internal.d.ts +0 -2
  137. package/dist/typescript/module/src/internal.d.ts.map +0 -1
  138. package/dist/typescript/module/src/plugin-dir/index.d.ts +0 -6
  139. package/dist/typescript/module/src/plugin-dir/index.d.ts.map +0 -1
  140. package/dist/typescript/module/src/plugin-dir/types.d.ts +0 -13
  141. package/dist/typescript/module/src/plugin-dir/types.d.ts.map +0 -1
  142. package/dist/typescript/module/src/plugin-dir/utils/resolveLocales.d.ts +0 -13
  143. package/dist/typescript/module/src/plugin-dir/utils/resolveLocales.d.ts.map +0 -1
  144. package/dist/typescript/module/src/plugin.d.ts +0 -2
  145. package/dist/typescript/module/src/plugin.d.ts.map +0 -1
  146. package/dist/typescript/module/src/provider/GTProvider.d.ts +0 -4
  147. package/dist/typescript/module/src/provider/GTProvider.d.ts.map +0 -1
  148. package/dist/typescript/module/src/provider/hooks/locale/useDetermineLocale.d.ts +0 -4
  149. package/dist/typescript/module/src/provider/hooks/locale/useDetermineLocale.d.ts.map +0 -1
  150. package/dist/typescript/module/src/provider/hooks/useRegionState.d.ts +0 -3
  151. package/dist/typescript/module/src/provider/hooks/useRegionState.d.ts.map +0 -1
  152. package/dist/typescript/module/src/tools/testLocalePolyfill.d.ts +0 -8
  153. package/dist/typescript/module/src/tools/testLocalePolyfill.d.ts.map +0 -1
  154. package/dist/typescript/module/src/types/config.d.ts +0 -30
  155. package/dist/typescript/module/src/types/config.d.ts.map +0 -1
  156. package/dist/typescript/module/src/utils/getNativeLocales.d.ts +0 -10
  157. package/dist/typescript/module/src/utils/getNativeLocales.d.ts.map +0 -1
  158. package/dist/typescript/module/src/utils/nativeStore.d.ts +0 -16
  159. package/dist/typescript/module/src/utils/nativeStore.d.ts.map +0 -1
  160. package/dist/typescript/module/src/utils/utils.d.ts +0 -3
  161. package/dist/typescript/module/src/utils/utils.d.ts.map +0 -1
  162. /package/dist/{typescript/commonjs/src → module}/NativeGtReactNative.d.ts +0 -0
  163. /package/dist/{typescript/commonjs/src → module}/errors-dir/constants.d.ts +0 -0
  164. /package/dist/{typescript/commonjs/src → module}/errors-dir/errors.d.ts +0 -0
  165. /package/dist/{typescript/commonjs/src → module}/index.d.ts +0 -0
  166. /package/dist/{typescript/commonjs/src → module}/internal.d.ts +0 -0
  167. /package/dist/{typescript/commonjs/src → module}/plugin-dir/index.d.ts +0 -0
  168. /package/dist/{typescript/commonjs/src → module}/plugin.d.ts +0 -0
  169. /package/dist/{typescript/commonjs/src → module}/provider/GTProvider.d.ts +0 -0
  170. /package/dist/{typescript/commonjs/src → module}/provider/hooks/locale/useDetermineLocale.d.ts +0 -0
  171. /package/dist/{typescript/commonjs/src → module}/provider/hooks/useRegionState.d.ts +0 -0
  172. /package/dist/{typescript/commonjs/src → module}/tools/testLocalePolyfill.d.ts +0 -0
  173. /package/dist/{typescript/commonjs/src → module}/utils/getNativeLocales.d.ts +0 -0
  174. /package/dist/{typescript/commonjs/src → module}/utils/nativeStore.d.ts +0 -0
  175. /package/dist/{typescript/commonjs/src → module}/utils/utils.d.ts +0 -0
@@ -1,161 +1,99 @@
1
- "use strict";
2
-
3
- import { useEffect, useState } from 'react';
4
- import { determineLocale, resolveAliasLocale } from 'generaltranslation';
5
- import { libraryDefaultLocale } from 'generaltranslation/internal';
6
- import { createUnsupportedLocaleWarning } from '@generaltranslation/react-core/errors';
7
1
  import { PACKAGE_NAME } from "../../../errors-dir/constants.js";
8
2
  import { getNativeLocales } from "../../../utils/getNativeLocales.js";
9
3
  import { nativeStoreGet, nativeStoreSet } from "../../../utils/nativeStore.js";
10
- export function useDetermineLocale({
11
- locale: _locale = '',
12
- defaultLocale = libraryDefaultLocale,
13
- locales = [],
14
- localeCookieName = 'generaltranslation.locale',
15
- ssr = false,
16
- // not relevant
17
- customMapping,
18
- enableI18n
19
- }) {
20
- // resolve alias locale
21
- _locale = resolveAliasLocale(_locale, customMapping);
22
- locales = locales.map(locale => resolveAliasLocale(locale, customMapping));
23
- const initializeLocale = () => {
24
- if (!enableI18n) {
25
- return defaultLocale;
26
- }
27
- const result = resolveAliasLocale(ssr ? _locale ? determineLocale(_locale, locales, customMapping) || '' : '' : getNewLocale({
28
- _locale,
29
- locale: _locale,
30
- locales,
31
- defaultLocale,
32
- localeCookieName,
33
- customMapping,
34
- enableI18n
35
- }), customMapping);
36
- return result;
37
- };
38
-
39
- // maintaining the state of locale
40
- const [locale, _setLocale] = useState(initializeLocale());
41
-
42
- // Functions for setting internal locale state
43
- const [setLocale, setLocaleWithoutPersist] = createSetLocale({
44
- locale,
45
- locales,
46
- defaultLocale,
47
- localeCookieName,
48
- _setLocale,
49
- customMapping,
50
- enableI18n
51
- });
52
-
53
- // check browser for locales
54
- useEffect(() => {
55
- const newLocale = getNewLocale({
56
- _locale,
57
- locale,
58
- locales,
59
- defaultLocale,
60
- localeCookieName,
61
- customMapping,
62
- enableI18n
63
- });
64
- setLocaleWithoutPersist(newLocale);
65
- }, [_locale, locale, locales, defaultLocale, localeCookieName, customMapping, enableI18n]);
66
- return [locale, setLocale];
4
+ import { useEffect, useState } from "react";
5
+ import { determineLocale, resolveAliasLocale } from "@generaltranslation/format";
6
+ import { libraryDefaultLocale } from "generaltranslation/internal";
7
+ import { createUnsupportedLocaleWarning } from "@generaltranslation/react-core/errors";
8
+ //#region src/provider/hooks/locale/useDetermineLocale.ts
9
+ function useDetermineLocale({ locale: _locale = "", defaultLocale = libraryDefaultLocale, locales = [], localeCookieName = "generaltranslation.locale", ssr = false, customMapping, enableI18n }) {
10
+ _locale = resolveAliasLocale(_locale, customMapping);
11
+ locales = locales.map((locale) => resolveAliasLocale(locale, customMapping));
12
+ const initializeLocale = () => {
13
+ if (!enableI18n) return defaultLocale;
14
+ return resolveAliasLocale(ssr ? _locale ? determineLocale(_locale, locales, customMapping) || "" : "" : getNewLocale({
15
+ _locale,
16
+ locale: _locale,
17
+ locales,
18
+ defaultLocale,
19
+ localeCookieName,
20
+ customMapping,
21
+ enableI18n
22
+ }), customMapping);
23
+ };
24
+ const [locale, _setLocale] = useState(initializeLocale());
25
+ const [setLocale, setLocaleWithoutPersist] = createSetLocale({
26
+ locale,
27
+ locales,
28
+ defaultLocale,
29
+ localeCookieName,
30
+ _setLocale,
31
+ customMapping,
32
+ enableI18n
33
+ });
34
+ useEffect(() => {
35
+ setLocaleWithoutPersist(getNewLocale({
36
+ _locale,
37
+ locale,
38
+ locales,
39
+ defaultLocale,
40
+ localeCookieName,
41
+ customMapping,
42
+ enableI18n
43
+ }));
44
+ }, [
45
+ _locale,
46
+ locale,
47
+ locales,
48
+ defaultLocale,
49
+ localeCookieName,
50
+ customMapping,
51
+ enableI18n
52
+ ]);
53
+ return [locale, setLocale];
67
54
  }
68
-
69
- // ----- HELPER FUNCTIONS ---- //
70
-
71
55
  /**
72
- * Choose a locale to use
73
- * (1) use provided locale
74
- * (2) use cookie locale
75
- * (3) use preferred locale
76
- * (5) fallback to defaultLocale
77
- * Update the cookie locale to be correct
78
- */
79
- function getNewLocale({
80
- _locale,
81
- locale,
82
- locales,
83
- defaultLocale,
84
- localeCookieName,
85
- customMapping,
86
- enableI18n
87
- }) {
88
- if (!enableI18n) {
89
- return defaultLocale;
90
- }
91
- // No change, return
92
- if (_locale && _locale === locale && determineLocale(_locale, locales, customMapping) === locale) {
93
- return resolveAliasLocale(_locale, customMapping);
94
- }
95
-
96
- // Check for locale in native store
97
- let storedLocale = nativeStoreGet(localeCookieName);
98
- if (storedLocale) {
99
- storedLocale = resolveAliasLocale(storedLocale, customMapping);
100
- }
101
-
102
- // check user's configured locales
103
- let preferredLocales = getNativeLocales();
104
- if (preferredLocales.length === 0) preferredLocales = [defaultLocale];
105
- preferredLocales = preferredLocales.map(l => resolveAliasLocale(l, customMapping));
106
-
107
- // determine locale
108
- let newLocale = determineLocale([...(_locale ? [_locale] : []),
109
- // prefer user passed locale
110
- ...(storedLocale ? [storedLocale] : []),
111
- // then prefer stored locale
112
- ...preferredLocales // then prefer browser locale
113
- ], locales, customMapping) || defaultLocale;
114
- if (newLocale) {
115
- newLocale = resolveAliasLocale(newLocale, customMapping);
116
- }
117
-
118
- // if stored locale not valid, change it back to whatever we use for fallback
119
- if (storedLocale && storedLocale !== newLocale) {
120
- nativeStoreSet(localeCookieName, newLocale);
121
- }
122
-
123
- // return new locale
124
- return newLocale;
56
+ * Choose a locale to use
57
+ * (1) use provided locale
58
+ * (2) use cookie locale
59
+ * (3) use preferred locale
60
+ * (5) fallback to defaultLocale
61
+ * Update the cookie locale to be correct
62
+ */
63
+ function getNewLocale({ _locale, locale, locales, defaultLocale, localeCookieName, customMapping, enableI18n }) {
64
+ if (!enableI18n) return defaultLocale;
65
+ if (_locale && _locale === locale && determineLocale(_locale, locales, customMapping) === locale) return resolveAliasLocale(_locale, customMapping);
66
+ let storedLocale = nativeStoreGet(localeCookieName);
67
+ if (storedLocale) storedLocale = resolveAliasLocale(storedLocale, customMapping);
68
+ let preferredLocales = getNativeLocales();
69
+ if (preferredLocales.length === 0) preferredLocales = [defaultLocale];
70
+ preferredLocales = preferredLocales.map((l) => resolveAliasLocale(l, customMapping));
71
+ let newLocale = determineLocale([
72
+ ..._locale ? [_locale] : [],
73
+ ...storedLocale ? [storedLocale] : [],
74
+ ...preferredLocales
75
+ ], locales, customMapping) || defaultLocale;
76
+ if (newLocale) newLocale = resolveAliasLocale(newLocale, customMapping);
77
+ if (storedLocale && storedLocale !== newLocale) nativeStoreSet(localeCookieName, newLocale);
78
+ return newLocale;
125
79
  }
126
- function createSetLocale({
127
- locale,
128
- locales,
129
- defaultLocale,
130
- _setLocale,
131
- localeCookieName,
132
- customMapping,
133
- enableI18n
134
- }) {
135
- locale = resolveAliasLocale(locale, customMapping);
136
- // Just update the internal state, don't persist it
137
- const setLocaleWithoutPersist = newLocale => {
138
- if (!enableI18n) {
139
- return defaultLocale;
140
- }
141
- // validate locale
142
- const validatedLocale = resolveAliasLocale(determineLocale(newLocale, locales, customMapping) || locale || defaultLocale, customMapping);
143
- if (validatedLocale !== newLocale) {
144
- console.warn(createUnsupportedLocaleWarning(validatedLocale, newLocale, PACKAGE_NAME));
145
- }
146
- // persist locale
147
- _setLocale(validatedLocale);
148
- return validatedLocale;
149
- };
150
- // update locale and persist it in native store
151
- const setLocale = newLocale => {
152
- if (!enableI18n) {
153
- return;
154
- }
155
- newLocale = resolveAliasLocale(newLocale, customMapping);
156
- const validatedLocale = setLocaleWithoutPersist(newLocale);
157
- nativeStoreSet(localeCookieName, validatedLocale);
158
- };
159
- return [setLocale, setLocaleWithoutPersist];
80
+ function createSetLocale({ locale, locales, defaultLocale, _setLocale, localeCookieName, customMapping, enableI18n }) {
81
+ locale = resolveAliasLocale(locale, customMapping);
82
+ const setLocaleWithoutPersist = (newLocale) => {
83
+ if (!enableI18n) return defaultLocale;
84
+ const validatedLocale = resolveAliasLocale(determineLocale(newLocale, locales, customMapping) || locale || defaultLocale, customMapping);
85
+ if (validatedLocale !== newLocale) console.warn(createUnsupportedLocaleWarning(validatedLocale, newLocale, PACKAGE_NAME));
86
+ _setLocale(validatedLocale);
87
+ return validatedLocale;
88
+ };
89
+ const setLocale = (newLocale) => {
90
+ if (!enableI18n) return;
91
+ newLocale = resolveAliasLocale(newLocale, customMapping);
92
+ nativeStoreSet(localeCookieName, setLocaleWithoutPersist(newLocale));
93
+ };
94
+ return [setLocale, setLocaleWithoutPersist];
160
95
  }
96
+ //#endregion
97
+ export { useDetermineLocale };
98
+
161
99
  //# sourceMappingURL=useDetermineLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","determineLocale","resolveAliasLocale","libraryDefaultLocale","createUnsupportedLocaleWarning","PACKAGE_NAME","getNativeLocales","nativeStoreGet","nativeStoreSet","useDetermineLocale","locale","_locale","defaultLocale","locales","localeCookieName","ssr","customMapping","enableI18n","map","initializeLocale","result","getNewLocale","_setLocale","setLocale","setLocaleWithoutPersist","createSetLocale","newLocale","storedLocale","preferredLocales","length","l","validatedLocale","console","warn"],"sourceRoot":"../../../../../src","sources":["provider/hooks/locale/useDetermineLocale.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useDetermineLocale.js","names":[],"sources":["../../../../../src/provider/hooks/locale/useDetermineLocale.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport type { Dispatch, SetStateAction } from 'react';\nimport {\n determineLocale,\n resolveAliasLocale,\n} from '@generaltranslation/format';\nimport { libraryDefaultLocale } from 'generaltranslation/internal';\nimport type { CustomMapping } from '@generaltranslation/format/types';\nimport type {\n UseDetermineLocaleParams,\n UseDetermineLocaleReturn,\n} from '@generaltranslation/react-core/types';\nimport { createUnsupportedLocaleWarning } from '@generaltranslation/react-core/errors';\nimport { PACKAGE_NAME } from '../../../errors-dir/constants';\nimport { getNativeLocales } from '../../../utils/getNativeLocales';\nimport { nativeStoreGet, nativeStoreSet } from '../../../utils/nativeStore';\n\nexport function useDetermineLocale({\n locale: _locale = '',\n defaultLocale = libraryDefaultLocale,\n locales = [],\n localeCookieName = 'generaltranslation.locale',\n ssr = false, // not relevant\n customMapping,\n enableI18n,\n}: UseDetermineLocaleParams): UseDetermineLocaleReturn {\n // resolve alias locale\n _locale = resolveAliasLocale(_locale, customMapping);\n locales = locales.map((locale) => resolveAliasLocale(locale, customMapping));\n\n const initializeLocale = () => {\n if (!enableI18n) {\n return defaultLocale;\n }\n const result = resolveAliasLocale(\n ssr\n ? _locale\n ? determineLocale(_locale, locales, customMapping) || ''\n : ''\n : getNewLocale({\n _locale,\n locale: _locale,\n locales,\n defaultLocale,\n localeCookieName,\n customMapping,\n enableI18n,\n }),\n customMapping\n );\n return result;\n };\n\n // maintaining the state of locale\n const [locale, _setLocale] = useState<string>(initializeLocale());\n\n // Functions for setting internal locale state\n const [setLocale, setLocaleWithoutPersist] = createSetLocale({\n locale,\n locales,\n defaultLocale,\n localeCookieName,\n _setLocale,\n customMapping,\n enableI18n,\n });\n\n // check browser for locales\n useEffect(() => {\n const newLocale = getNewLocale({\n _locale,\n locale,\n locales,\n defaultLocale,\n localeCookieName,\n customMapping,\n enableI18n,\n });\n setLocaleWithoutPersist(newLocale);\n }, [\n _locale,\n locale,\n locales,\n defaultLocale,\n localeCookieName,\n customMapping,\n enableI18n,\n ]);\n\n return [locale, setLocale];\n}\n\n// ----- HELPER FUNCTIONS ---- //\n\n/**\n * Choose a locale to use\n * (1) use provided locale\n * (2) use cookie locale\n * (3) use preferred locale\n * (5) fallback to defaultLocale\n * Update the cookie locale to be correct\n */\nfunction getNewLocale({\n _locale,\n locale,\n locales,\n defaultLocale,\n localeCookieName,\n customMapping,\n enableI18n,\n}: {\n _locale: string;\n locale: string;\n locales: string[];\n defaultLocale: string;\n localeCookieName: string;\n customMapping?: CustomMapping;\n enableI18n: boolean;\n}): string {\n if (!enableI18n) {\n return defaultLocale;\n }\n // No change, return\n if (\n _locale &&\n _locale === locale &&\n determineLocale(_locale, locales, customMapping) === locale\n ) {\n return resolveAliasLocale(_locale, customMapping);\n }\n\n // Check for locale in native store\n let storedLocale = nativeStoreGet(localeCookieName);\n if (storedLocale) {\n storedLocale = resolveAliasLocale(storedLocale, customMapping);\n }\n\n // check user's configured locales\n let preferredLocales = getNativeLocales();\n if (preferredLocales.length === 0) preferredLocales = [defaultLocale];\n preferredLocales = preferredLocales.map((l) =>\n resolveAliasLocale(l, customMapping)\n );\n\n // determine locale\n let newLocale =\n determineLocale(\n [\n ...(_locale ? [_locale] : []), // prefer user passed locale\n ...(storedLocale ? [storedLocale] : []), // then prefer stored locale\n ...preferredLocales, // then prefer browser locale\n ],\n locales,\n customMapping\n ) || defaultLocale;\n if (newLocale) {\n newLocale = resolveAliasLocale(newLocale, customMapping);\n }\n\n // if stored locale not valid, change it back to whatever we use for fallback\n if (storedLocale && storedLocale !== newLocale) {\n nativeStoreSet(localeCookieName, newLocale);\n }\n\n // return new locale\n return newLocale;\n}\n\nfunction createSetLocale({\n locale,\n locales,\n defaultLocale,\n _setLocale,\n localeCookieName,\n customMapping,\n enableI18n,\n}: {\n locale: string;\n locales: string[];\n defaultLocale: string;\n localeCookieName: string;\n _setLocale: Dispatch<SetStateAction<string>>;\n customMapping?: CustomMapping;\n enableI18n: boolean;\n}): [(newLocale: string) => void, (newLocale: string) => void] {\n locale = resolveAliasLocale(locale, customMapping);\n // Just update the internal state, don't persist it\n const setLocaleWithoutPersist = (newLocale: string): string => {\n if (!enableI18n) {\n return defaultLocale;\n }\n // validate locale\n const validatedLocale = resolveAliasLocale(\n determineLocale(newLocale, locales, customMapping) ||\n locale ||\n defaultLocale,\n customMapping\n );\n if (validatedLocale !== newLocale) {\n console.warn(\n createUnsupportedLocaleWarning(validatedLocale, newLocale, PACKAGE_NAME)\n );\n }\n // persist locale\n _setLocale(validatedLocale);\n\n return validatedLocale;\n };\n // update locale and persist it in native store\n const setLocale = (newLocale: string): void => {\n if (!enableI18n) {\n return;\n }\n newLocale = resolveAliasLocale(newLocale, customMapping);\n const validatedLocale = setLocaleWithoutPersist(newLocale);\n nativeStoreSet(localeCookieName, validatedLocale);\n };\n return [setLocale, setLocaleWithoutPersist];\n}\n"],"mappings":";;;;;;;;AAiBA,SAAgB,mBAAmB,EACjC,QAAQ,UAAU,IAClB,gBAAgB,sBAChB,UAAU,EAAE,EACZ,mBAAmB,6BACnB,MAAM,OACN,eACA,cACqD;AAErD,WAAU,mBAAmB,SAAS,cAAc;AACpD,WAAU,QAAQ,KAAK,WAAW,mBAAmB,QAAQ,cAAc,CAAC;CAE5E,MAAM,yBAAyB;AAC7B,MAAI,CAAC,WACH,QAAO;AAkBT,SAhBe,mBACb,MACI,UACE,gBAAgB,SAAS,SAAS,cAAc,IAAI,KACpD,KACF,aAAa;GACX;GACA,QAAQ;GACR;GACA;GACA;GACA;GACA;GACD,CAAC,EACN,cAEW;;CAIf,MAAM,CAAC,QAAQ,cAAc,SAAiB,kBAAkB,CAAC;CAGjE,MAAM,CAAC,WAAW,2BAA2B,gBAAgB;EAC3D;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAGF,iBAAgB;AAUd,0BATkB,aAAa;GAC7B;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACgC,CAAC;IACjC;EACD;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,QAAO,CAAC,QAAQ,UAAU;;;;;;;;;;AAa5B,SAAS,aAAa,EACpB,SACA,QACA,SACA,eACA,kBACA,eACA,cASS;AACT,KAAI,CAAC,WACH,QAAO;AAGT,KACE,WACA,YAAY,UACZ,gBAAgB,SAAS,SAAS,cAAc,KAAK,OAErD,QAAO,mBAAmB,SAAS,cAAc;CAInD,IAAI,eAAe,eAAe,iBAAiB;AACnD,KAAI,aACF,gBAAe,mBAAmB,cAAc,cAAc;CAIhE,IAAI,mBAAmB,kBAAkB;AACzC,KAAI,iBAAiB,WAAW,EAAG,oBAAmB,CAAC,cAAc;AACrE,oBAAmB,iBAAiB,KAAK,MACvC,mBAAmB,GAAG,cAAc,CACrC;CAGD,IAAI,YACF,gBACE;EACE,GAAI,UAAU,CAAC,QAAQ,GAAG,EAAE;EAC5B,GAAI,eAAe,CAAC,aAAa,GAAG,EAAE;EACtC,GAAG;EACJ,EACD,SACA,cACD,IAAI;AACP,KAAI,UACF,aAAY,mBAAmB,WAAW,cAAc;AAI1D,KAAI,gBAAgB,iBAAiB,UACnC,gBAAe,kBAAkB,UAAU;AAI7C,QAAO;;AAGT,SAAS,gBAAgB,EACvB,QACA,SACA,eACA,YACA,kBACA,eACA,cAS6D;AAC7D,UAAS,mBAAmB,QAAQ,cAAc;CAElD,MAAM,2BAA2B,cAA8B;AAC7D,MAAI,CAAC,WACH,QAAO;EAGT,MAAM,kBAAkB,mBACtB,gBAAgB,WAAW,SAAS,cAAc,IAChD,UACA,eACF,cACD;AACD,MAAI,oBAAoB,UACtB,SAAQ,KACN,+BAA+B,iBAAiB,WAAW,aAAa,CACzE;AAGH,aAAW,gBAAgB;AAE3B,SAAO;;CAGT,MAAM,aAAa,cAA4B;AAC7C,MAAI,CAAC,WACH;AAEF,cAAY,mBAAmB,WAAW,cAAc;AAExD,iBAAe,kBADS,wBAAwB,UACA,CAAC;;AAEnD,QAAO,CAAC,WAAW,wBAAwB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRegionState.d.ts","sourceRoot":"","sources":["../../../../src/provider/hooks/useRegionState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AAsB9C,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,GAAG,EACH,gBAAgB,GACjB,EAAE,oBAAoB,GAAG,oBAAoB,CAoB7C"}
@@ -1,43 +1,33 @@
1
- "use strict";
2
-
3
- import { useEffect, useState } from 'react';
4
1
  import { nativeStoreGet, nativeStoreSet } from "../../utils/nativeStore.js";
5
- function getNewRegion({
6
- _region,
7
- regionCookieName
8
- }) {
9
- // Check for region in native store
10
- const cookieRegion = nativeStoreGet(regionCookieName) || undefined;
11
- const newRegion = _region || cookieRegion;
12
-
13
- // if state not valid, change it to newRegion
14
- if (cookieRegion && cookieRegion !== newRegion) {
15
- nativeStoreSet(regionCookieName, newRegion || '');
16
- }
17
- return newRegion;
2
+ import { useEffect, useState } from "react";
3
+ //#region src/provider/hooks/useRegionState.ts
4
+ function getNewRegion({ _region, regionCookieName }) {
5
+ const cookieRegion = nativeStoreGet(regionCookieName) || void 0;
6
+ const newRegion = _region || cookieRegion;
7
+ if (cookieRegion && cookieRegion !== newRegion) nativeStoreSet(regionCookieName, newRegion || "");
8
+ return newRegion;
18
9
  }
19
- export function useRegionState({
20
- _region,
21
- ssr,
22
- regionCookieName
23
- }) {
24
- const [region, _setRegion] = useState(ssr ? undefined : getNewRegion({
25
- _region,
26
- regionCookieName
27
- }));
28
- const setRegion = newRegion => {
29
- _setRegion(newRegion);
30
- nativeStoreSet(regionCookieName, newRegion || '');
31
- };
32
- useEffect(() => {
33
- _setRegion(getNewRegion({
34
- _region,
35
- regionCookieName
36
- }));
37
- }, [_region, regionCookieName]);
38
- return {
39
- region,
40
- setRegion
41
- };
10
+ function useRegionState({ _region, ssr, regionCookieName }) {
11
+ const [region, _setRegion] = useState(ssr ? void 0 : getNewRegion({
12
+ _region,
13
+ regionCookieName
14
+ }));
15
+ const setRegion = (newRegion) => {
16
+ _setRegion(newRegion);
17
+ nativeStoreSet(regionCookieName, newRegion || "");
18
+ };
19
+ useEffect(() => {
20
+ _setRegion(getNewRegion({
21
+ _region,
22
+ regionCookieName
23
+ }));
24
+ }, [_region, regionCookieName]);
25
+ return {
26
+ region,
27
+ setRegion
28
+ };
42
29
  }
30
+ //#endregion
31
+ export { useRegionState };
32
+
43
33
  //# sourceMappingURL=useRegionState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","nativeStoreGet","nativeStoreSet","getNewRegion","_region","regionCookieName","cookieRegion","undefined","newRegion","useRegionState","ssr","region","_setRegion","setRegion"],"sourceRoot":"../../../../src","sources":["provider/hooks/useRegionState.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAK3C,SAASC,cAAc,EAAEC,cAAc,QAAQ,4BAAyB;AAExE,SAASC,YAAYA,CAAC;EACpBC,OAAO;EACPC;AAIF,CAAC,EAAE;EACD;EACA,MAAMC,YAAY,GAAGL,cAAc,CAACI,gBAAgB,CAAC,IAAIE,SAAS;EAClE,MAAMC,SAAS,GAAGJ,OAAO,IAAIE,YAAY;;EAEzC;EACA,IAAIA,YAAY,IAAIA,YAAY,KAAKE,SAAS,EAAE;IAC9CN,cAAc,CAACG,gBAAgB,EAAEG,SAAS,IAAI,EAAE,CAAC;EACnD;EAEA,OAAOA,SAAS;AAClB;AAEA,OAAO,SAASC,cAAcA,CAAC;EAC7BL,OAAO;EACPM,GAAG;EACHL;AACoB,CAAC,EAAwB;EAC7C,MAAM,CAACM,MAAM,EAAEC,UAAU,CAAC,GAAGZ,QAAQ,CACnCU,GAAG,GACCH,SAAS,GACTJ,YAAY,CAAC;IACXC,OAAO;IACPC;EACF,CAAC,CACP,CAAC;EACD,MAAMQ,SAAS,GAAIL,SAA6B,IAAK;IACnDI,UAAU,CAACJ,SAAS,CAAC;IACrBN,cAAc,CAACG,gBAAgB,EAAEG,SAAS,IAAI,EAAE,CAAC;EACnD,CAAC;EACDT,SAAS,CAAC,MAAM;IACda,UAAU,CAACT,YAAY,CAAC;MAAEC,OAAO;MAAEC;IAAiB,CAAC,CAAC,CAAC;EACzD,CAAC,EAAE,CAACD,OAAO,EAAEC,gBAAgB,CAAC,CAAC;EAC/B,OAAO;IACLM,MAAM;IACNE;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"useRegionState.js","names":[],"sources":["../../../../src/provider/hooks/useRegionState.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport type {\n UseRegionStateParams,\n UseRegionStateReturn,\n} from '@generaltranslation/react-core/types';\nimport { nativeStoreGet, nativeStoreSet } from '../../utils/nativeStore';\n\nfunction getNewRegion({\n _region,\n regionCookieName,\n}: {\n _region: string | undefined;\n regionCookieName: string;\n}) {\n // Check for region in native store\n const cookieRegion = nativeStoreGet(regionCookieName) || undefined;\n const newRegion = _region || cookieRegion;\n\n // if state not valid, change it to newRegion\n if (cookieRegion && cookieRegion !== newRegion) {\n nativeStoreSet(regionCookieName, newRegion || '');\n }\n\n return newRegion;\n}\n\nexport function useRegionState({\n _region,\n ssr,\n regionCookieName,\n}: UseRegionStateParams): UseRegionStateReturn {\n const [region, _setRegion] = useState<string | undefined>(\n ssr\n ? undefined\n : getNewRegion({\n _region,\n regionCookieName,\n })\n );\n const setRegion = (newRegion: string | undefined) => {\n _setRegion(newRegion);\n nativeStoreSet(regionCookieName, newRegion || '');\n };\n useEffect(() => {\n _setRegion(getNewRegion({ _region, regionCookieName }));\n }, [_region, regionCookieName]);\n return {\n region,\n setRegion,\n };\n}\n"],"mappings":";;;AAOA,SAAS,aAAa,EACpB,SACA,oBAIC;CAED,MAAM,eAAe,eAAe,iBAAiB,IAAI,KAAA;CACzD,MAAM,YAAY,WAAW;AAG7B,KAAI,gBAAgB,iBAAiB,UACnC,gBAAe,kBAAkB,aAAa,GAAG;AAGnD,QAAO;;AAGT,SAAgB,eAAe,EAC7B,SACA,KACA,oBAC6C;CAC7C,MAAM,CAAC,QAAQ,cAAc,SAC3B,MACI,KAAA,IACA,aAAa;EACX;EACA;EACD,CAAC,CACP;CACD,MAAM,aAAa,cAAkC;AACnD,aAAW,UAAU;AACrB,iBAAe,kBAAkB,aAAa,GAAG;;AAEnD,iBAAgB;AACd,aAAW,aAAa;GAAE;GAAS;GAAkB,CAAC,CAAC;IACtD,CAAC,SAAS,iBAAiB,CAAC;AAC/B,QAAO;EACL;EACA;EACD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testLocalePolyfill.d.ts","sourceRoot":"","sources":["../../../src/tools/testLocalePolyfill.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,CAAC,MAAM,OAAuB;;;;;;EAiM/D"}