@common.js/next-intl 4.13.1

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 (297) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +5 -0
  3. package/config.d.ts +4 -0
  4. package/dist/cjs/development/ExtractorCodec-D9Tw618d.cjs +7 -0
  5. package/dist/cjs/development/JSONCodec-CzA8ubPy.cjs +55 -0
  6. package/dist/cjs/development/POCodec-CWGHK-Gp.cjs +111 -0
  7. package/dist/cjs/development/plugin-DlFYUFWh.cjs +1613 -0
  8. package/dist/cjs/development/plugin.cjs +13 -0
  9. package/dist/esm/development/config.js +13 -0
  10. package/dist/esm/development/extractor/ExtractionCompiler.js +284 -0
  11. package/dist/esm/development/extractor/catalog/CatalogLocales.js +398 -0
  12. package/dist/esm/development/extractor/catalog/CatalogManager.js +1515 -0
  13. package/dist/esm/development/extractor/catalog/CatalogPersister.js +341 -0
  14. package/dist/esm/development/extractor/catalog/SaveScheduler.js +314 -0
  15. package/dist/esm/development/extractor/catalogLoader.js +288 -0
  16. package/dist/esm/development/extractor/extractMessages.js +180 -0
  17. package/dist/esm/development/extractor/extractionLoader.js +37 -0
  18. package/dist/esm/development/extractor/extractor/LRUCache.js +68 -0
  19. package/dist/esm/development/extractor/extractor/MessageExtractor.js +273 -0
  20. package/dist/esm/development/extractor/format/ExtractorCodec.js +13 -0
  21. package/dist/esm/development/extractor/format/codecs/JSONCodec.js +91 -0
  22. package/dist/esm/development/extractor/format/codecs/POCodec.js +227 -0
  23. package/dist/esm/development/extractor/format/index.js +289 -0
  24. package/dist/esm/development/extractor/normalizeExtractorConfig.js +91 -0
  25. package/dist/esm/development/extractor/source/SourceFileFilter.js +104 -0
  26. package/dist/esm/development/extractor/source/SourceFileScanner.js +297 -0
  27. package/dist/esm/development/extractor/source/SourceFileWatcher.js +610 -0
  28. package/dist/esm/development/extractor/utils.js +133 -0
  29. package/dist/esm/development/extractor.js +25 -0
  30. package/dist/esm/development/index.react-client.js +59 -0
  31. package/dist/esm/development/index.react-server.js +61 -0
  32. package/dist/esm/development/middleware/getAlternateLinksHeaderValue.js +142 -0
  33. package/dist/esm/development/middleware/middleware.js +231 -0
  34. package/dist/esm/development/middleware/resolveLocale.js +150 -0
  35. package/dist/esm/development/middleware/syncCookie.js +87 -0
  36. package/dist/esm/development/middleware/utils.js +403 -0
  37. package/dist/esm/development/middleware.js +16 -0
  38. package/dist/esm/development/navigation/react-client/createNavigation.js +195 -0
  39. package/dist/esm/development/navigation/react-client/useBasePathname.js +46 -0
  40. package/dist/esm/development/navigation/react-server/createNavigation.js +111 -0
  41. package/dist/esm/development/navigation/react-server/getServerLocale.js +167 -0
  42. package/dist/esm/development/navigation/shared/BaseLink.js +115 -0
  43. package/dist/esm/development/navigation/shared/createSharedNavigationFns.js +214 -0
  44. package/dist/esm/development/navigation/shared/syncLocaleCookie.js +139 -0
  45. package/dist/esm/development/navigation/shared/utils.js +352 -0
  46. package/dist/esm/development/navigation.react-client.js +16 -0
  47. package/dist/esm/development/navigation.react-server.js +16 -0
  48. package/dist/esm/development/plugin/config.js +28 -0
  49. package/dist/esm/development/plugin/createNextIntlPlugin.js +66 -0
  50. package/dist/esm/development/plugin/declaration/createMessagesDeclaration.js +91 -0
  51. package/dist/esm/development/plugin/extractor/initExtractionCompiler.js +64 -0
  52. package/dist/esm/development/plugin/getNextConfig.js +355 -0
  53. package/dist/esm/development/plugin/nextFlags.js +47 -0
  54. package/dist/esm/development/plugin/utils.js +43 -0
  55. package/dist/esm/development/plugin/watchFile.js +32 -0
  56. package/dist/esm/development/plugin.js +16 -0
  57. package/dist/esm/development/react-client/index.js +67 -0
  58. package/dist/esm/development/react-server/NextIntlClientProviderServer.js +327 -0
  59. package/dist/esm/development/react-server/useConfig.js +40 -0
  60. package/dist/esm/development/react-server/useExtracted.js +21 -0
  61. package/dist/esm/development/react-server/useFormatter.js +21 -0
  62. package/dist/esm/development/react-server/useLocale.js +20 -0
  63. package/dist/esm/development/react-server/useMessages.js +21 -0
  64. package/dist/esm/development/react-server/useNow.js +25 -0
  65. package/dist/esm/development/react-server/useTimeZone.js +20 -0
  66. package/dist/esm/development/react-server/useTranslations.js +71 -0
  67. package/dist/esm/development/routing/config.js +82 -0
  68. package/dist/esm/development/routing/defineRouting.js +116 -0
  69. package/dist/esm/development/routing.js +16 -0
  70. package/dist/esm/development/server/react-client/index.js +68 -0
  71. package/dist/esm/development/server/react-server/RequestLocale.js +267 -0
  72. package/dist/esm/development/server/react-server/RequestLocaleCache.js +33 -0
  73. package/dist/esm/development/server/react-server/createRequestConfig.js +16 -0
  74. package/dist/esm/development/server/react-server/getConfig.js +283 -0
  75. package/dist/esm/development/server/react-server/getConfigNow.js +166 -0
  76. package/dist/esm/development/server/react-server/getDefaultNow.js +16 -0
  77. package/dist/esm/development/server/react-server/getExtracted.js +176 -0
  78. package/dist/esm/development/server/react-server/getFormats.js +166 -0
  79. package/dist/esm/development/server/react-server/getFormatter.js +186 -0
  80. package/dist/esm/development/server/react-server/getLocale.js +166 -0
  81. package/dist/esm/development/server/react-server/getMessages.js +194 -0
  82. package/dist/esm/development/server/react-server/getNow.js +164 -0
  83. package/dist/esm/development/server/react-server/getRequestConfig.js +15 -0
  84. package/dist/esm/development/server/react-server/getServerExtractor.js +108 -0
  85. package/dist/esm/development/server/react-server/getServerFormatter.js +81 -0
  86. package/dist/esm/development/server/react-server/getServerTranslator.js +70 -0
  87. package/dist/esm/development/server/react-server/getTimeZone.js +180 -0
  88. package/dist/esm/development/server/react-server/getTranslations.js +179 -0
  89. package/dist/esm/development/server/react-server/validateLocale.js +20 -0
  90. package/dist/esm/development/server.react-client.js +40 -0
  91. package/dist/esm/development/server.react-server.js +53 -0
  92. package/dist/esm/development/shared/NextIntlClientProvider.js +79 -0
  93. package/dist/esm/development/shared/constants.js +12 -0
  94. package/dist/esm/development/shared/use.js +59 -0
  95. package/dist/esm/development/shared/utils.js +201 -0
  96. package/dist/esm/production/config.js +13 -0
  97. package/dist/esm/production/extractor/ExtractionCompiler.js +275 -0
  98. package/dist/esm/production/extractor/catalog/CatalogLocales.js +384 -0
  99. package/dist/esm/production/extractor/catalog/CatalogManager.js +1401 -0
  100. package/dist/esm/production/extractor/catalog/CatalogPersister.js +334 -0
  101. package/dist/esm/production/extractor/catalog/SaveScheduler.js +278 -0
  102. package/dist/esm/production/extractor/catalogLoader.js +251 -0
  103. package/dist/esm/production/extractor/extractMessages.js +178 -0
  104. package/dist/esm/production/extractor/extractionLoader.js +27 -0
  105. package/dist/esm/production/extractor/extractor/LRUCache.js +59 -0
  106. package/dist/esm/production/extractor/extractor/MessageExtractor.js +259 -0
  107. package/dist/esm/production/extractor/format/ExtractorCodec.js +13 -0
  108. package/dist/esm/production/extractor/format/codecs/JSONCodec.js +83 -0
  109. package/dist/esm/production/extractor/format/codecs/POCodec.js +210 -0
  110. package/dist/esm/production/extractor/format/index.js +278 -0
  111. package/dist/esm/production/extractor/normalizeExtractorConfig.js +54 -0
  112. package/dist/esm/production/extractor/source/SourceFileFilter.js +99 -0
  113. package/dist/esm/production/extractor/source/SourceFileScanner.js +293 -0
  114. package/dist/esm/production/extractor/source/SourceFileWatcher.js +579 -0
  115. package/dist/esm/production/extractor/utils.js +108 -0
  116. package/dist/esm/production/extractor.js +25 -0
  117. package/dist/esm/production/index.react-client.js +59 -0
  118. package/dist/esm/production/index.react-server.js +61 -0
  119. package/dist/esm/production/middleware/getAlternateLinksHeaderValue.js +104 -0
  120. package/dist/esm/production/middleware/middleware.js +155 -0
  121. package/dist/esm/production/middleware/resolveLocale.js +99 -0
  122. package/dist/esm/production/middleware/syncCookie.js +81 -0
  123. package/dist/esm/production/middleware/utils.js +315 -0
  124. package/dist/esm/production/middleware.js +16 -0
  125. package/dist/esm/production/navigation/react-client/createNavigation.js +174 -0
  126. package/dist/esm/production/navigation/react-client/useBasePathname.js +32 -0
  127. package/dist/esm/production/navigation/react-server/createNavigation.js +110 -0
  128. package/dist/esm/production/navigation/react-server/getServerLocale.js +162 -0
  129. package/dist/esm/production/navigation/shared/BaseLink.js +98 -0
  130. package/dist/esm/production/navigation/shared/createSharedNavigationFns.js +182 -0
  131. package/dist/esm/production/navigation/shared/syncLocaleCookie.js +113 -0
  132. package/dist/esm/production/navigation/shared/utils.js +264 -0
  133. package/dist/esm/production/navigation.react-client.js +16 -0
  134. package/dist/esm/production/navigation.react-server.js +16 -0
  135. package/dist/esm/production/plugin/config.js +22 -0
  136. package/dist/esm/production/plugin/createNextIntlPlugin.js +48 -0
  137. package/dist/esm/production/plugin/declaration/createMessagesDeclaration.js +72 -0
  138. package/dist/esm/production/plugin/extractor/initExtractionCompiler.js +33 -0
  139. package/dist/esm/production/plugin/getNextConfig.js +242 -0
  140. package/dist/esm/production/plugin/nextFlags.js +44 -0
  141. package/dist/esm/production/plugin/utils.js +35 -0
  142. package/dist/esm/production/plugin/watchFile.js +26 -0
  143. package/dist/esm/production/plugin.js +16 -0
  144. package/dist/esm/production/react-client/index.js +57 -0
  145. package/dist/esm/production/react-server/NextIntlClientProviderServer.js +327 -0
  146. package/dist/esm/production/react-server/useConfig.js +35 -0
  147. package/dist/esm/production/react-server/useExtracted.js +21 -0
  148. package/dist/esm/production/react-server/useFormatter.js +21 -0
  149. package/dist/esm/production/react-server/useLocale.js +19 -0
  150. package/dist/esm/production/react-server/useMessages.js +21 -0
  151. package/dist/esm/production/react-server/useNow.js +22 -0
  152. package/dist/esm/production/react-server/useTimeZone.js +19 -0
  153. package/dist/esm/production/react-server/useTranslations.js +71 -0
  154. package/dist/esm/production/routing/config.js +77 -0
  155. package/dist/esm/production/routing/defineRouting.js +13 -0
  156. package/dist/esm/production/routing.js +16 -0
  157. package/dist/esm/production/server/react-client/index.js +51 -0
  158. package/dist/esm/production/server/react-server/RequestLocale.js +246 -0
  159. package/dist/esm/production/server/react-server/RequestLocaleCache.js +30 -0
  160. package/dist/esm/production/server/react-server/createRequestConfig.js +16 -0
  161. package/dist/esm/production/server/react-server/getConfig.js +262 -0
  162. package/dist/esm/production/server/react-server/getConfigNow.js +162 -0
  163. package/dist/esm/production/server/react-server/getDefaultNow.js +14 -0
  164. package/dist/esm/production/server/react-server/getExtracted.js +166 -0
  165. package/dist/esm/production/server/react-server/getFormats.js +157 -0
  166. package/dist/esm/production/server/react-server/getFormatter.js +179 -0
  167. package/dist/esm/production/server/react-server/getLocale.js +157 -0
  168. package/dist/esm/production/server/react-server/getMessages.js +190 -0
  169. package/dist/esm/production/server/react-server/getNow.js +164 -0
  170. package/dist/esm/production/server/react-server/getRequestConfig.js +13 -0
  171. package/dist/esm/production/server/react-server/getServerExtractor.js +20 -0
  172. package/dist/esm/production/server/react-server/getServerFormatter.js +78 -0
  173. package/dist/esm/production/server/react-server/getServerTranslator.js +69 -0
  174. package/dist/esm/production/server/react-server/getTimeZone.js +176 -0
  175. package/dist/esm/production/server/react-server/getTranslations.js +166 -0
  176. package/dist/esm/production/server.react-client.js +40 -0
  177. package/dist/esm/production/server.react-server.js +53 -0
  178. package/dist/esm/production/shared/NextIntlClientProvider.js +77 -0
  179. package/dist/esm/production/shared/constants.js +11 -0
  180. package/dist/esm/production/shared/use.js +51 -0
  181. package/dist/esm/production/shared/utils.js +156 -0
  182. package/dist/types/config.d.ts +1 -0
  183. package/dist/types/extractor/ExtractionCompiler.d.ts +16 -0
  184. package/dist/types/extractor/catalog/CatalogLocales.d.ts +29 -0
  185. package/dist/types/extractor/catalog/CatalogManager.d.ts +76 -0
  186. package/dist/types/extractor/catalog/CatalogPersister.d.ts +20 -0
  187. package/dist/types/extractor/catalog/SaveScheduler.d.ts +18 -0
  188. package/dist/types/extractor/extractMessages.d.ts +2 -0
  189. package/dist/types/extractor/extractor/LRUCache.d.ts +7 -0
  190. package/dist/types/extractor/extractor/MessageExtractor.bench.d.ts +1 -0
  191. package/dist/types/extractor/extractor/MessageExtractor.d.ts +17 -0
  192. package/dist/types/extractor/format/ExtractorCodec.d.ts +33 -0
  193. package/dist/types/extractor/format/codecs/JSONCodec.d.ts +2 -0
  194. package/dist/types/extractor/format/codecs/POCodec.d.ts +2 -0
  195. package/dist/types/extractor/format/codecs/fixtures/JSONCodecStructured.d.ts +2 -0
  196. package/dist/types/extractor/format/codecs/fixtures/POCodecSourceMessageKey.d.ts +2 -0
  197. package/dist/types/extractor/format/index.d.ts +15 -0
  198. package/dist/types/extractor/format/types.d.ts +8 -0
  199. package/dist/types/extractor/index.d.ts +2 -0
  200. package/dist/types/extractor/normalizeExtractorConfig.d.ts +5 -0
  201. package/dist/types/extractor/source/SourceFileFilter.d.ts +8 -0
  202. package/dist/types/extractor/source/SourceFileScanner.d.ts +4 -0
  203. package/dist/types/extractor/source/SourceFileWatcher.d.ts +15 -0
  204. package/dist/types/extractor/types.d.ts +79 -0
  205. package/dist/types/extractor/utils.d.ts +9 -0
  206. package/dist/types/extractor.d.ts +1 -0
  207. package/dist/types/index.react-client.d.ts +8 -0
  208. package/dist/types/index.react-server.d.ts +1 -0
  209. package/dist/types/middleware/getAlternateLinksHeaderValue.d.ts +13 -0
  210. package/dist/types/middleware/index.d.ts +4 -0
  211. package/dist/types/middleware/middleware.d.ts +4 -0
  212. package/dist/types/middleware/resolveLocale.d.ts +9 -0
  213. package/dist/types/middleware/syncCookie.d.ts +7 -0
  214. package/dist/types/middleware/utils.d.ts +26 -0
  215. package/dist/types/middleware.d.ts +1 -0
  216. package/dist/types/navigation/react-client/createNavigation.d.ts +465 -0
  217. package/dist/types/navigation/react-client/index.d.ts +2 -0
  218. package/dist/types/navigation/react-client/useBasePathname.d.ts +5 -0
  219. package/dist/types/navigation/react-server/createNavigation.d.ts +384 -0
  220. package/dist/types/navigation/react-server/getServerLocale.d.ts +5 -0
  221. package/dist/types/navigation/react-server/index.d.ts +2 -0
  222. package/dist/types/navigation/shared/BaseLink.d.ts +11 -0
  223. package/dist/types/navigation/shared/StrictParams.d.ts +8 -0
  224. package/dist/types/navigation/shared/createSharedNavigationFns.d.ts +370 -0
  225. package/dist/types/navigation/shared/syncLocaleCookie.d.ts +8 -0
  226. package/dist/types/navigation/shared/utils.d.ts +53 -0
  227. package/dist/types/navigation.react-client.d.ts +1 -0
  228. package/dist/types/navigation.react-server.d.ts +1 -0
  229. package/dist/types/plugin/catalog/catalogLoader.d.ts +10 -0
  230. package/dist/types/plugin/config.d.ts +3 -0
  231. package/dist/types/plugin/createNextIntlPlugin.d.ts +3 -0
  232. package/dist/types/plugin/declaration/createMessagesDeclaration.d.ts +1 -0
  233. package/dist/types/plugin/declaration/index.d.ts +1 -0
  234. package/dist/types/plugin/extractor/extractionLoader.d.ts +3 -0
  235. package/dist/types/plugin/extractor/initExtractionCompiler.d.ts +2 -0
  236. package/dist/types/plugin/getNextConfig.d.ts +4 -0
  237. package/dist/types/plugin/index.d.ts +1 -0
  238. package/dist/types/plugin/nextFlags.d.ts +2 -0
  239. package/dist/types/plugin/types.d.ts +25 -0
  240. package/dist/types/plugin/utils.d.ts +8 -0
  241. package/dist/types/plugin/watchFile.d.ts +6 -0
  242. package/dist/types/plugin.d.ts +1 -0
  243. package/dist/types/react-client/index.d.ts +16 -0
  244. package/dist/types/react-server/NextIntlClientProviderServer.d.ts +5 -0
  245. package/dist/types/react-server/index.d.ts +16 -0
  246. package/dist/types/react-server/testUtils.d.ts +2 -0
  247. package/dist/types/react-server/useConfig.d.ts +2 -0
  248. package/dist/types/react-server/useExtracted.d.ts +2 -0
  249. package/dist/types/react-server/useFormatter.d.ts +2 -0
  250. package/dist/types/react-server/useLocale.d.ts +2 -0
  251. package/dist/types/react-server/useMessages.d.ts +2 -0
  252. package/dist/types/react-server/useNow.d.ts +2 -0
  253. package/dist/types/react-server/useTimeZone.d.ts +2 -0
  254. package/dist/types/react-server/useTranslations.d.ts +2 -0
  255. package/dist/types/routing/config.d.ts +73 -0
  256. package/dist/types/routing/defineRouting.d.ts +3 -0
  257. package/dist/types/routing/index.d.ts +3 -0
  258. package/dist/types/routing/types.d.ts +25 -0
  259. package/dist/types/routing.d.ts +1 -0
  260. package/dist/types/server/react-client/index.d.ts +10 -0
  261. package/dist/types/server/react-server/RequestLocale.d.ts +1 -0
  262. package/dist/types/server/react-server/RequestLocaleCache.d.ts +3 -0
  263. package/dist/types/server/react-server/createRequestConfig.d.ts +3 -0
  264. package/dist/types/server/react-server/getConfig.d.ts +13 -0
  265. package/dist/types/server/react-server/getConfigNow.d.ts +4 -0
  266. package/dist/types/server/react-server/getDefaultNow.d.ts +3 -0
  267. package/dist/types/server/react-server/getExtracted.d.ts +10 -0
  268. package/dist/types/server/react-server/getFormats.d.ts +3 -0
  269. package/dist/types/server/react-server/getFormatter.d.ts +10 -0
  270. package/dist/types/server/react-server/getLocale.d.ts +4 -0
  271. package/dist/types/server/react-server/getMessages.d.ts +6 -0
  272. package/dist/types/server/react-server/getNow.d.ts +4 -0
  273. package/dist/types/server/react-server/getRequestConfig.d.ts +35 -0
  274. package/dist/types/server/react-server/getServerExtractor.d.ts +5 -0
  275. package/dist/types/server/react-server/getServerFormatter.d.ts +29 -0
  276. package/dist/types/server/react-server/getServerTranslator.d.ts +4 -0
  277. package/dist/types/server/react-server/getTimeZone.d.ts +4 -0
  278. package/dist/types/server/react-server/getTranslations.d.ts +8 -0
  279. package/dist/types/server/react-server/index.d.ts +12 -0
  280. package/dist/types/server/react-server/validateLocale.d.ts +1 -0
  281. package/dist/types/server.react-client.d.ts +1 -0
  282. package/dist/types/server.react-server.d.ts +1 -0
  283. package/dist/types/shared/NextIntlClientProvider.d.ts +9 -0
  284. package/dist/types/shared/constants.d.ts +1 -0
  285. package/dist/types/shared/types.d.ts +5 -0
  286. package/dist/types/shared/use.d.ts +3 -0
  287. package/dist/types/shared/utils.d.ts +20 -0
  288. package/extractor/catalogLoader.d.ts +4 -0
  289. package/extractor/extractionLoader.d.ts +4 -0
  290. package/extractor.d.ts +2 -0
  291. package/middleware.d.ts +4 -0
  292. package/navigation.d.ts +2 -0
  293. package/package.json +60 -0
  294. package/plugin.d.cts +3 -0
  295. package/plugin.d.ts +4 -0
  296. package/routing.d.ts +2 -0
  297. package/server.d.ts +2 -0
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ getLocaleAsPrefix: function() {
13
+ return f;
14
+ },
15
+ getLocalePrefix: function() {
16
+ return o;
17
+ },
18
+ getLocalizedTemplate: function() {
19
+ return u;
20
+ },
21
+ getSortedPathnames: function() {
22
+ return g;
23
+ },
24
+ hasPathnamePrefixed: function() {
25
+ return r;
26
+ },
27
+ isLocalizableHref: function() {
28
+ return n;
29
+ },
30
+ isPromise: function() {
31
+ return x;
32
+ },
33
+ matchesPathname: function() {
34
+ return c;
35
+ },
36
+ normalizeTrailingSlash: function() {
37
+ return i1;
38
+ },
39
+ prefixPathname: function() {
40
+ return e;
41
+ },
42
+ templateToRegex: function() {
43
+ return s;
44
+ },
45
+ unprefixPathname: function() {
46
+ return t;
47
+ }
48
+ });
49
+ function _arrayLikeToArray(arr, len) {
50
+ if (len == null || len > arr.length) len = arr.length;
51
+ for(var i1 = 0, arr2 = new Array(len); i1 < len; i1++)arr2[i1] = arr[i1];
52
+ return arr2;
53
+ }
54
+ function _arrayWithHoles(arr) {
55
+ if (Array.isArray(arr)) return arr;
56
+ }
57
+ function _iterableToArray(iter) {
58
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
59
+ }
60
+ function _nonIterableRest() {
61
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
62
+ }
63
+ function _toArray(arr) {
64
+ return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
65
+ }
66
+ function _unsupportedIterableToArray(o, minLen) {
67
+ if (!o) return;
68
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
69
+ var n = Object.prototype.toString.call(o).slice(8, -1);
70
+ if (n === "Object" && o.constructor) n = o.constructor.name;
71
+ if (n === "Map" || n === "Set") return Array.from(n);
72
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
73
+ }
74
+ function n(n) {
75
+ return function(n) {
76
+ return "object" == typeof n ? null == n.host && null == n.hostname : !/^[a-z]+:/i.test(n);
77
+ }(n) && !function(n) {
78
+ var t = "object" == typeof n ? n.pathname : n;
79
+ return null != t && !t.startsWith("/");
80
+ }(n);
81
+ }
82
+ function t(n, t) {
83
+ return n.replace(new RegExp("^".concat(t)), "") || "/";
84
+ }
85
+ function e(n, t) {
86
+ var e = n;
87
+ return /^\/(\?.*)?$/.test(t) && (t = t.slice(1)), e += t, e;
88
+ }
89
+ function r(n, t) {
90
+ return t === n || t.startsWith("".concat(n, "/"));
91
+ }
92
+ function u(n, t, e) {
93
+ return "string" == typeof n ? n : n[t] || e;
94
+ }
95
+ function i1(n) {
96
+ var t = function() {
97
+ try {
98
+ return "true" === process.env._next_intl_trailing_slash;
99
+ } catch (e) {
100
+ return !1;
101
+ }
102
+ }(), ref = _toArray(n.split("#")), e = ref[0], r = ref.slice(1), u = r.join("#");
103
+ var i1 = e;
104
+ if ("/" !== i1) {
105
+ var _$n = i1.endsWith("/");
106
+ t && !_$n ? i1 += "/" : !t && _$n && (i1 = i1.slice(0, -1));
107
+ }
108
+ return u && (i1 += "#" + u), i1;
109
+ }
110
+ function c(n, t) {
111
+ var e = i1(n), r = i1(t);
112
+ return s(e).test(r);
113
+ }
114
+ function o(n, t) {
115
+ var ref;
116
+ return "never" !== t.mode && ((ref = t.prefixes) === null || ref === void 0 ? void 0 : ref[n]) || f(n);
117
+ }
118
+ function f(n) {
119
+ return "/" + n;
120
+ }
121
+ function s(n) {
122
+ var t = n.replace(/\/\[\[(\.\.\.[^\]]+)\]\]/g, "(?:/(.*))?").replace(/\[\[(\.\.\.[^\]]+)\]\]/g, "(?:/(.*))?").replace(/\[(\.\.\.[^\]]+)\]/g, "(.+)").replace(/\[([^\]]+)\]/g, "([^/]+)");
123
+ return new RegExp("^".concat(t, "$"));
124
+ }
125
+ function l(n) {
126
+ return n.includes("[[...");
127
+ }
128
+ function p(n) {
129
+ return n.includes("[...");
130
+ }
131
+ function a(n) {
132
+ return n.includes("[");
133
+ }
134
+ function h(n, t) {
135
+ var e = n.split("/"), r = t.split("/"), u = Math.max(e.length, r.length);
136
+ for(var _$n = 0; _$n < u; _$n++){
137
+ var _$t = e[_$n], u1 = r[_$n];
138
+ if (!_$t && u1) return -1;
139
+ if (_$t && !u1) return 1;
140
+ if (_$t || u1) {
141
+ if (!a(_$t) && a(u1)) return -1;
142
+ if (a(_$t) && !a(u1)) return 1;
143
+ if (!p(_$t) && p(u1)) return -1;
144
+ if (p(_$t) && !p(u1)) return 1;
145
+ if (!l(_$t) && l(u1)) return -1;
146
+ if (l(_$t) && !l(u1)) return 1;
147
+ }
148
+ }
149
+ return 0;
150
+ }
151
+ function g(n) {
152
+ return n.sort(h);
153
+ }
154
+ function x(n) {
155
+ return "function" == typeof n.then;
156
+ }
@@ -0,0 +1 @@
1
+ export default function getConfig(): void;
@@ -0,0 +1,16 @@
1
+ import MessageExtractor from './extractor/MessageExtractor.js';
2
+ import type { ExtractorConfig } from './types.js';
3
+ export default class ExtractionCompiler implements Disposable {
4
+ private manager;
5
+ constructor(config: ExtractorConfig, opts?: {
6
+ extractor?: MessageExtractor;
7
+ isDevelopment?: boolean;
8
+ projectRoot?: string;
9
+ saveDebounceMs?: number;
10
+ sourceMap?: boolean;
11
+ });
12
+ extractAll(): Promise<void>;
13
+ [Symbol.dispose](): void;
14
+ private installExitHandlers;
15
+ private uninstallExitHandlers;
16
+ }
@@ -0,0 +1,29 @@
1
+ import type { ExtractorConfig, Locale } from '../types.js';
2
+ type LocaleChangeCallback = (params: {
3
+ added: Array<Locale>;
4
+ removed: Array<Locale>;
5
+ }) => unknown;
6
+ type CatalogLocalesParams = {
7
+ messagesDir: string;
8
+ sourceLocale: Locale;
9
+ extension: string;
10
+ locales: ExtractorConfig['extract']['locales'];
11
+ };
12
+ export default class CatalogLocales {
13
+ private messagesDir;
14
+ private extension;
15
+ private sourceLocale;
16
+ private locales;
17
+ private watcher?;
18
+ private targetLocales?;
19
+ private onChangeCallbacks;
20
+ constructor(params: CatalogLocalesParams);
21
+ getTargetLocales(): Promise<Array<Locale>>;
22
+ private readTargetLocales;
23
+ subscribeLocalesChange(callback: LocaleChangeCallback): void;
24
+ unsubscribeLocalesChange(callback: LocaleChangeCallback): void;
25
+ private startWatcher;
26
+ private stopWatcher;
27
+ private onChange;
28
+ }
29
+ export {};
@@ -0,0 +1,76 @@
1
+ import type MessageExtractor from '../extractor/MessageExtractor.js';
2
+ import type { ExtractorConfig } from '../types.js';
3
+ export default class CatalogManager implements Disposable {
4
+ /**
5
+ * Extraction-derived fields aggregated into `ExtractorMessage`.
6
+ * Source code is the source of truth for these fields, only ancillary
7
+ * codec fields may merge from disk (e.g. flags).
8
+ */
9
+ private static readonly extractorOwnedAggregatorKeys;
10
+ private config;
11
+ /**
12
+ * Source of truth for statically extracted source messages,
13
+ * grouped by file and message ID.
14
+ */
15
+ private sourceMessagesByFile;
16
+ /**
17
+ * Reverse index for rebuilding aggregated messages without scanning all files.
18
+ * Contains the same `SourceMessage` arrays as `sourceMessagesByFile` and is
19
+ * kept in sync with it.
20
+ */
21
+ private sourceMessagesById;
22
+ /**
23
+ * Fast lookup for messages by ID, aggregated across all files. This combines
24
+ * metadata from `sourceMessagesById`, e.g. references and descriptions.
25
+ */
26
+ private messagesById;
27
+ /**
28
+ * This potentially also includes outdated ones that were initially available,
29
+ * but are not used anymore. This allows to restore them if they are used again.
30
+ **/
31
+ private translationsByTargetLocale;
32
+ private lastWriteByLocale;
33
+ private saveScheduler;
34
+ private projectRoot;
35
+ private isDevelopment;
36
+ private persister?;
37
+ private codec?;
38
+ private catalogLocales?;
39
+ private extractor;
40
+ private sourceWatcher?;
41
+ private loadCatalogsPromise?;
42
+ private scanCompletePromise?;
43
+ constructor(config: ExtractorConfig, opts: {
44
+ extractor: MessageExtractor;
45
+ isDevelopment?: boolean;
46
+ projectRoot?: string;
47
+ saveDebounceMs?: number;
48
+ sourceMap?: boolean;
49
+ });
50
+ private getCodec;
51
+ private getPersister;
52
+ private getCatalogLocales;
53
+ private getTargetLocales;
54
+ private getSrcPaths;
55
+ loadMessages(): Promise<void>;
56
+ private loadSourceMessages;
57
+ private loadLocaleMessages;
58
+ private loadTargetMessages;
59
+ private reloadLocaleCatalog;
60
+ private mergeSourceDiskMetadata;
61
+ private processFile;
62
+ private extractFile;
63
+ private applyFileMessages;
64
+ private groupSourceMessagesById;
65
+ private rebuildMessageById;
66
+ private mergeDescriptions;
67
+ private haveMessagesChangedForFile;
68
+ private areSourceMessageArraysEqual;
69
+ private areSourceMessagesEqual;
70
+ save(): Promise<void>;
71
+ private saveImpl;
72
+ private saveLocale;
73
+ private onLocalesChange;
74
+ private handleFileEvents;
75
+ [Symbol.dispose](): void;
76
+ }
@@ -0,0 +1,20 @@
1
+ import type ExtractorCodec from '../format/ExtractorCodec.js';
2
+ import type { ExtractorMessage, Locale } from '../types.js';
3
+ export default class CatalogPersister {
4
+ private messagesPath;
5
+ private codec;
6
+ private extension;
7
+ constructor(params: {
8
+ messagesPath: string;
9
+ codec: ExtractorCodec;
10
+ extension: string;
11
+ });
12
+ private getFileName;
13
+ private getFilePath;
14
+ read(locale: Locale): Promise<Array<ExtractorMessage>>;
15
+ write(messages: Array<ExtractorMessage>, context: {
16
+ locale: Locale;
17
+ sourceMessagesById: Map<string, ExtractorMessage>;
18
+ }): Promise<void>;
19
+ getLastModified(locale: Locale): Promise<Date | undefined>;
20
+ }
@@ -0,0 +1,18 @@
1
+ type SaveTask<T> = () => Promise<T>;
2
+ /**
3
+ * De-duplicates excessive save invocations,
4
+ * while keeping a single one instant.
5
+ */
6
+ export default class SaveScheduler<Value> implements Disposable {
7
+ private saveTimeout?;
8
+ private isSaving;
9
+ private delayMs;
10
+ private pendingResolvers;
11
+ private nextSaveTask?;
12
+ constructor(delayMs?: number);
13
+ schedule(saveTask: SaveTask<Value>): Promise<Value>;
14
+ private scheduleSave;
15
+ private executeSave;
16
+ [Symbol.dispose](): void;
17
+ }
18
+ export {};
@@ -0,0 +1,2 @@
1
+ import type { ExtractorConfigInput } from './types.js';
2
+ export default function extractMessages(params: ExtractorConfigInput): Promise<void>;
@@ -0,0 +1,7 @@
1
+ export default class LRUCache<Value> {
2
+ private readonly maxSize;
3
+ private cache;
4
+ constructor(maxSize: number);
5
+ set(key: string, value: Value): void;
6
+ get(key: string): Value | undefined;
7
+ }
@@ -0,0 +1,17 @@
1
+ import type { SourceMessage } from '../types.js';
2
+ export default class MessageExtractor {
3
+ private isDevelopment;
4
+ private projectRoot;
5
+ private sourceMap;
6
+ private compileCache;
7
+ constructor(opts: {
8
+ isDevelopment?: boolean;
9
+ projectRoot?: string;
10
+ sourceMap?: boolean;
11
+ });
12
+ extract(absoluteFilePath: string, source: string): Promise<{
13
+ messages: Array<SourceMessage>;
14
+ code: string;
15
+ map?: string;
16
+ }>;
17
+ }
@@ -0,0 +1,33 @@
1
+ import type { ExtractorMessage, Locale } from '../types.js';
2
+ type ExtractorCodecContext = {
3
+ locale: Locale;
4
+ };
5
+ export default interface ExtractorCodec {
6
+ /**
7
+ * Decode the content of a file into a list of extracted messages. This is used
8
+ * to load existing messages from disk.
9
+ */
10
+ decode(content: string, context: ExtractorCodecContext): Array<ExtractorMessage>;
11
+ /**
12
+ * Encode a list of extracted messages into a string that can be written as
13
+ * file content to the disk.
14
+ */
15
+ encode(messages: Array<ExtractorMessage>, context: ExtractorCodecContext & {
16
+ sourceMessagesById: Map</* ID */ string, ExtractorMessage>;
17
+ }): string;
18
+ /**
19
+ * Turns the content of a file into a JSON string that represents extracted
20
+ * messages. The returned value will be passed to `JSON.parse`.
21
+ *
22
+ * @return E.g. `[{"id":"-YJVTi","message":"Hey!"}]`
23
+ *
24
+ * This is used when loading messages into your application, typically via a
25
+ * dynamic import (e.g. `import(`../messages/${locale}.json`)`).
26
+ *
27
+ * If your file content is JSON and should be used as-is, you can set this to
28
+ * an identity function.
29
+ */
30
+ toJSONString(content: string, context: ExtractorCodecContext): string;
31
+ }
32
+ export declare function defineCodec(factory: () => ExtractorCodec): () => ExtractorCodec;
33
+ export {};
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("../ExtractorCodec.js").default;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("../ExtractorCodec.js").default;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("../../ExtractorCodec.js").default;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: () => import("../../ExtractorCodec.js").default;
2
+ export default _default;
@@ -0,0 +1,15 @@
1
+ import type ExtractorCodec from './ExtractorCodec.js';
2
+ import type { MessagesFormat } from './types.js';
3
+ declare const formats: {
4
+ json: {
5
+ codec: () => Promise<typeof import("./codecs/JSONCodec.js")>;
6
+ extension: ".json";
7
+ };
8
+ po: {
9
+ codec: () => Promise<typeof import("./codecs/POCodec.js")>;
10
+ extension: ".po";
11
+ };
12
+ };
13
+ export default formats;
14
+ export declare function getFormatExtension(format: MessagesFormat): string;
15
+ export declare function resolveCodec(format: MessagesFormat, projectRoot: string): Promise<ExtractorCodec>;
@@ -0,0 +1,8 @@
1
+ import type formats from './index.js';
2
+ export type BuiltInMessagesFormat = keyof typeof formats;
3
+ type CustomMessagesFormat = {
4
+ codec: string;
5
+ extension: `.${string}`;
6
+ };
7
+ export type MessagesFormat = BuiltInMessagesFormat | CustomMessagesFormat;
8
+ export {};
@@ -0,0 +1,2 @@
1
+ export { default as unstable_extractMessages } from './extractMessages.js';
2
+ export { defineCodec } from './format/ExtractorCodec.js';
@@ -0,0 +1,5 @@
1
+ import type { ExtractorConfig, ExtractorConfigInput } from './types.js';
2
+ export declare function normalizeMessagesCatalogPaths(messagesPath: string | Array<string>): Array<string>;
3
+ export default function normalizeExtractorConfig(input: Omit<ExtractorConfigInput, 'messages'> & {
4
+ messages?: ExtractorConfigInput['messages'];
5
+ }): ExtractorConfig;
@@ -0,0 +1,8 @@
1
+ export default class SourceFileFilter {
2
+ static readonly EXTENSIONS: string[];
3
+ static readonly IGNORED_DIRECTORIES: string[];
4
+ static isSourceFile(filePath: string): boolean;
5
+ static shouldEnterDirectory(dirPath: string, srcPaths: Array<string>): boolean;
6
+ private static isIgnoredDirectoryExplicitlyIncluded;
7
+ static isWithinPath(targetPath: string, basePath: string): boolean;
8
+ }
@@ -0,0 +1,4 @@
1
+ export default class SourceFileScanner {
2
+ private static walkSourceFiles;
3
+ static getSourceFiles(srcPaths: Array<string>): Promise<Set<string>>;
4
+ }
@@ -0,0 +1,15 @@
1
+ import { type Event } from '@parcel/watcher';
2
+ type OnChange = (events: Array<Event>) => Promise<void>;
3
+ export type SourceFileWatcherEvent = Event;
4
+ export default class SourceFileWatcher implements Disposable {
5
+ private subscriptions;
6
+ private roots;
7
+ private onChange;
8
+ constructor(roots: Array<string>, onChange: OnChange);
9
+ start(): Promise<void>;
10
+ private normalizeEvents;
11
+ expandDirectoryDeleteEvents(events: Array<Event>, prevKnownFiles: Array<string>): Promise<Array<Event>>;
12
+ stop(): Promise<void>;
13
+ [Symbol.dispose](): void;
14
+ }
15
+ export {};
@@ -0,0 +1,79 @@
1
+ import type { MessagesFormat } from './format/types.js';
2
+ export type Locale = string;
3
+ export type ExtractorMessageReference = {
4
+ path: string;
5
+ line?: number;
6
+ };
7
+ /** A single statically extracted source-code usage before any aggregation. */
8
+ export type SourceMessage = {
9
+ id: string;
10
+ message: string;
11
+ description: string | null;
12
+ reference: ExtractorMessageReference;
13
+ };
14
+ /** An aggregated message that can be read from or written to a catalog. */
15
+ export type ExtractorMessage = {
16
+ id: string;
17
+ message: string;
18
+ /**
19
+ * All unique descriptions attached to messages (e.g. multiple `#.` lines in PO).
20
+ * Ordered by source reference (path, then line).
21
+ */
22
+ description: Array<string>;
23
+ /**
24
+ * Source locations for this message (e.g. `#:` lines in PO). Ordered by path, then line.
25
+ * Empty when the catalog format does not store references or none are known.
26
+ */
27
+ references: Array<ExtractorMessageReference>;
28
+ /** Allows for additional properties like .po flags to be read and later written. */
29
+ [key: string]: unknown;
30
+ };
31
+ /**
32
+ * External extractor configuration (Next.js plugin, `extractMessages`).
33
+ */
34
+ export type ExtractorConfigInput = {
35
+ /**
36
+ * Relative path(s) to your source code files.
37
+ */
38
+ srcPath?: string | Array<string>;
39
+ messages: {
40
+ /** The format of your messages files. */
41
+ format: MessagesFormat;
42
+ /** Relative path(s) to your messages files. */
43
+ path: string | Array<string>;
44
+ /**
45
+ * Locales kept in sync with [`messages.sourceLocale`](https://next-intl.dev/docs/usage/plugin#messages-source-locale).
46
+ */
47
+ locales: 'infer' | ReadonlyArray<Locale>;
48
+ /** Locale to which extracted source strings are written. */
49
+ sourceLocale?: string;
50
+ };
51
+ /**
52
+ * Enables the usage of `useExtracted`.
53
+ */
54
+ extract?: true | {
55
+ /** Defaults to `messages.path` when it is a single path. */
56
+ path?: string;
57
+ /** @deprecated Prefer `messages.sourceLocale`. */
58
+ sourceLocale?: string;
59
+ };
60
+ };
61
+ /** Normalized config used internally after `normalizeExtractorConfig`. */
62
+ export type ExtractorConfig = {
63
+ extract: {
64
+ locales: 'infer' | ReadonlyArray<Locale>;
65
+ path: string;
66
+ sourceLocale: string;
67
+ srcPath: string | Array<string>;
68
+ };
69
+ messages: {
70
+ format: MessagesFormat;
71
+ path: Array<string>;
72
+ };
73
+ };
74
+ export type CatalogLoaderConfig = {
75
+ messages: {
76
+ format: MessagesFormat;
77
+ precompile?: boolean;
78
+ };
79
+ };
@@ -0,0 +1,9 @@
1
+ import type { ExtractorConfig, ExtractorMessage, ExtractorMessageReference } from './types.js';
2
+ export declare function normalizePathToPosix(filePath: string): string;
3
+ export declare function isForbiddenObjectKey(key: string): boolean;
4
+ export declare function hasLocalesToExtract(config: Pick<ExtractorConfig, 'extract'>): boolean;
5
+ export declare function setNestedProperty(obj: Record<string, any>, keyPath: string, value: any): void;
6
+ export declare function getSortedMessages(messages: Array<ExtractorMessage>): Array<ExtractorMessage>;
7
+ export declare function localeCompare(a: string, b: string): number;
8
+ export declare function compareReferences(refA: ExtractorMessageReference, refB: ExtractorMessageReference): number;
9
+ export declare function getDefaultProjectRoot(): string;
@@ -0,0 +1 @@
1
+ export * from './extractor/index.js';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * This is the default entry file when consumers import from
3
+ * 'next-intl'. We use the client APIs in this case.
4
+ *
5
+ * Note that the `react-server` environment (i.e. RSC) imports
6
+ * from `./react-server` instead.
7
+ */
8
+ export * from './react-client/index.js';
@@ -0,0 +1 @@
1
+ export * from './react-server/index.js';
@@ -0,0 +1,13 @@
1
+ import type { NextRequest } from 'next/server.js';
2
+ import type { ResolvedRoutingConfig } from '../routing/config.js';
3
+ import type { DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../routing/types.js';
4
+ /**
5
+ * See https://developers.google.com/search/docs/specialty/international/localized-versions
6
+ */
7
+ export default function getAlternateLinksHeaderValue<AppLocales extends Locales, AppLocalePrefixMode extends LocalePrefixMode, AppPathnames extends Pathnames<AppLocales> | undefined, AppDomains extends DomainsConfig<AppLocales> | undefined>({ internalTemplateName, localizedPathnames, request, resolvedLocale, routing }: {
8
+ routing: Omit<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'pathnames'>;
9
+ request: NextRequest;
10
+ resolvedLocale: AppLocales[number];
11
+ localizedPathnames?: Pathnames<AppLocales>[string];
12
+ internalTemplateName?: string;
13
+ }): string;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * The middleware, available as `next-intl/middleware`.
3
+ */
4
+ export { default } from './middleware.js';
@@ -0,0 +1,4 @@
1
+ import { type NextRequest, NextResponse } from 'next/server.js';
2
+ import { type RoutingConfig } from '../routing/config.js';
3
+ import type { DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../routing/types.js';
4
+ export default function createMiddleware<const AppLocales extends Locales, const AppLocalePrefixMode extends LocalePrefixMode = 'always', const AppPathnames extends Pathnames<AppLocales> = never, const AppDomains extends DomainsConfig<AppLocales> = never>(routing: RoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>): (request: NextRequest) => NextResponse<unknown>;
@@ -0,0 +1,9 @@
1
+ import type { RequestCookies } from 'next/dist/server/web/spec-extension/cookies.js';
2
+ import type { Locale } from 'use-intl';
3
+ import type { ResolvedRoutingConfig } from '../routing/config.js';
4
+ import type { DomainConfig, DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../routing/types.js';
5
+ export declare function getAcceptLanguageLocale<AppLocales extends Locales>(requestHeaders: Headers, locales: AppLocales, defaultLocale: Locale): string | undefined;
6
+ export default function resolveLocale<AppLocales extends Locales, AppLocalePrefixMode extends LocalePrefixMode, AppPathnames extends Pathnames<AppLocales> | undefined, AppDomains extends DomainsConfig<AppLocales> | undefined>(routing: Omit<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'pathnames'>, requestHeaders: Headers, requestCookies: RequestCookies, pathname: string): {
7
+ locale: AppLocales[number];
8
+ domain?: DomainConfig<AppLocales>;
9
+ };
@@ -0,0 +1,7 @@
1
+ import type { NextRequest, NextResponse } from 'next/server.js';
2
+ import type { Locale } from 'use-intl';
3
+ import type { InitializedLocaleCookieConfig, ResolvedRoutingConfig } from '../routing/config.js';
4
+ import type { DomainConfig, DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../routing/types.js';
5
+ export default function syncCookie<AppLocales extends Locales, AppLocalePrefixMode extends LocalePrefixMode, AppPathnames extends Pathnames<AppLocales> | undefined, AppDomains extends DomainsConfig<AppLocales> | undefined>(request: NextRequest, response: NextResponse, locale: Locale, routing: Pick<ResolvedRoutingConfig<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>, 'locales' | 'defaultLocale'> & {
6
+ localeCookie: InitializedLocaleCookieConfig;
7
+ }, domain?: DomainConfig<AppLocales>): void;