@prezly/theme-kit-nextjs 1.18.2 → 2.0.0-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 (262) hide show
  1. package/build/@types/global.d.js +1 -0
  2. package/build/adapter-nextjs/api-handlers/fetchGalleries.js +27 -23
  3. package/build/adapter-nextjs/api-handlers/fetchGalleries.js.map +1 -1
  4. package/build/adapter-nextjs/api-handlers/fetchStories.js +37 -25
  5. package/build/adapter-nextjs/api-handlers/fetchStories.js.map +1 -1
  6. package/build/adapter-nextjs/api-handlers/index.js +2 -8
  7. package/build/adapter-nextjs/api-handlers/index.js.map +1 -1
  8. package/build/adapter-nextjs/getNewsroomServerSideProps.js +16 -15
  9. package/build/adapter-nextjs/getNewsroomServerSideProps.js.map +1 -1
  10. package/build/adapter-nextjs/getNewsroomStaticProps.js +15 -15
  11. package/build/adapter-nextjs/getNewsroomStaticProps.js.map +1 -1
  12. package/build/adapter-nextjs/index.js +6 -23
  13. package/build/adapter-nextjs/index.js.map +1 -1
  14. package/build/adapter-nextjs/page-props/category.d.ts +2 -2
  15. package/build/adapter-nextjs/page-props/category.js +118 -100
  16. package/build/adapter-nextjs/page-props/category.js.map +1 -1
  17. package/build/adapter-nextjs/page-props/gallery.js +87 -68
  18. package/build/adapter-nextjs/page-props/gallery.js.map +1 -1
  19. package/build/adapter-nextjs/page-props/galleryAlbum.js +64 -53
  20. package/build/adapter-nextjs/page-props/galleryAlbum.js.map +1 -1
  21. package/build/adapter-nextjs/page-props/home.d.ts +2 -2
  22. package/build/adapter-nextjs/page-props/home.js +83 -69
  23. package/build/adapter-nextjs/page-props/home.js.map +1 -1
  24. package/build/adapter-nextjs/page-props/index.js +8 -42
  25. package/build/adapter-nextjs/page-props/index.js.map +1 -1
  26. package/build/adapter-nextjs/page-props/lib/types.js +1 -3
  27. package/build/adapter-nextjs/page-props/search.js +25 -31
  28. package/build/adapter-nextjs/page-props/search.js.map +1 -1
  29. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js +29 -50
  30. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js.map +1 -1
  31. package/build/adapter-nextjs/page-props/sitemap/createPaths.js +13 -19
  32. package/build/adapter-nextjs/page-props/sitemap/createPaths.js.map +1 -1
  33. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js +33 -35
  34. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js.map +1 -1
  35. package/build/adapter-nextjs/page-props/sitemap/index.js +4 -25
  36. package/build/adapter-nextjs/page-props/sitemap/index.js.map +1 -1
  37. package/build/adapter-nextjs/page-props/sitemap/types.js +1 -3
  38. package/build/adapter-nextjs/page-props/story.js +77 -64
  39. package/build/adapter-nextjs/page-props/story.js.map +1 -1
  40. package/build/adapter-nextjs/page-props/storyPreview.js +27 -26
  41. package/build/adapter-nextjs/page-props/storyPreview.js.map +1 -1
  42. package/build/adapter-nextjs/processRequest.js +34 -25
  43. package/build/adapter-nextjs/processRequest.js.map +1 -1
  44. package/build/adapter-nextjs/processStaticRequest.js +19 -16
  45. package/build/adapter-nextjs/processStaticRequest.js.map +1 -1
  46. package/build/components-nextjs/PageSeo/PageSeo.js +84 -78
  47. package/build/components-nextjs/PageSeo/PageSeo.js.map +1 -1
  48. package/build/components-nextjs/PageSeo/index.js +2 -21
  49. package/build/components-nextjs/PageSeo/index.js.map +1 -1
  50. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js +5 -10
  51. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js.map +1 -1
  52. package/build/components-nextjs/PageSeo/lib/types.js +1 -3
  53. package/build/components-nextjs/StorySeo/StorySeo.js +69 -47
  54. package/build/components-nextjs/StorySeo/StorySeo.js.map +1 -1
  55. package/build/components-nextjs/StorySeo/index.js +1 -6
  56. package/build/components-nextjs/StorySeo/index.js.map +1 -1
  57. package/build/components-nextjs/document.js +31 -48
  58. package/build/components-nextjs/document.js.map +1 -1
  59. package/build/components-nextjs/index.js +3 -10
  60. package/build/components-nextjs/index.js.map +1 -1
  61. package/build/data-fetching/api/PrezlyApi.d.ts +4 -5
  62. package/build/data-fetching/api/PrezlyApi.js +207 -192
  63. package/build/data-fetching/api/PrezlyApi.js.map +1 -1
  64. package/build/data-fetching/api/getPrezlyApi.js +21 -21
  65. package/build/data-fetching/api/getPrezlyApi.js.map +1 -1
  66. package/build/data-fetching/api/index.js +1 -18
  67. package/build/data-fetching/api/index.js.map +1 -1
  68. package/build/data-fetching/api/queries.js +76 -47
  69. package/build/data-fetching/api/queries.js.map +1 -1
  70. package/build/data-fetching/index.js +3 -20
  71. package/build/data-fetching/index.js.map +1 -1
  72. package/build/data-fetching/lib/getAlgoliaSettings.js +22 -22
  73. package/build/data-fetching/lib/getAlgoliaSettings.js.map +1 -1
  74. package/build/data-fetching/lib/getEnvVariables.js +35 -38
  75. package/build/data-fetching/lib/getEnvVariables.js.map +1 -1
  76. package/build/data-fetching/lib/index.js +4 -12
  77. package/build/data-fetching/lib/index.js.map +1 -1
  78. package/build/data-fetching/lib/isSdkError.js +3 -8
  79. package/build/data-fetching/lib/isSdkError.js.map +1 -1
  80. package/build/data-fetching/lib/isUuid.js +3 -8
  81. package/build/data-fetching/lib/isUuid.js.map +1 -1
  82. package/build/data-fetching/types.js +1 -3
  83. package/build/index.js +9 -26
  84. package/build/index.js.map +1 -1
  85. package/build/infinite-loading/index.js +4 -25
  86. package/build/infinite-loading/index.js.map +1 -1
  87. package/build/infinite-loading/types.js +1 -3
  88. package/build/infinite-loading/useInfiniteGalleriesLoading.js +42 -37
  89. package/build/infinite-loading/useInfiniteGalleriesLoading.js.map +1 -1
  90. package/build/infinite-loading/useInfiniteLoading.js +50 -43
  91. package/build/infinite-loading/useInfiniteLoading.js.map +1 -1
  92. package/build/infinite-loading/useInfiniteStoriesLoading.d.ts +2 -2
  93. package/build/infinite-loading/useInfiniteStoriesLoading.js +56 -50
  94. package/build/infinite-loading/useInfiniteStoriesLoading.js.map +1 -1
  95. package/build/intl/index.d.ts +1 -1
  96. package/build/intl/index.js +4 -26
  97. package/build/intl/index.js.map +1 -1
  98. package/build/intl/languages.d.ts +1 -1
  99. package/build/intl/languages.js +146 -122
  100. package/build/intl/languages.js.map +1 -1
  101. package/build/intl/locale.js +52 -107
  102. package/build/intl/locale.js.map +1 -1
  103. package/build/intl/localeConfig.d.ts +1 -2
  104. package/build/intl/localeConfig.js +7 -14
  105. package/build/intl/localeConfig.js.map +1 -1
  106. package/build/intl/localeList.d.ts +4 -2
  107. package/build/intl/localeList.js +1 -109
  108. package/build/intl/localeList.js.map +1 -1
  109. package/build/intl/localeObject.js +80 -82
  110. package/build/intl/localeObject.js.map +1 -1
  111. package/build/newsroom-context/context.js +35 -25
  112. package/build/newsroom-context/context.js.map +1 -1
  113. package/build/newsroom-context/hooks/index.js +11 -28
  114. package/build/newsroom-context/hooks/index.js.map +1 -1
  115. package/build/newsroom-context/hooks/useAlgoliaSettings.js +5 -10
  116. package/build/newsroom-context/hooks/useAlgoliaSettings.js.map +1 -1
  117. package/build/newsroom-context/hooks/useCategories.js +5 -10
  118. package/build/newsroom-context/hooks/useCategories.js.map +1 -1
  119. package/build/newsroom-context/hooks/useCompanyInformation.js +5 -10
  120. package/build/newsroom-context/hooks/useCompanyInformation.js.map +1 -1
  121. package/build/newsroom-context/hooks/useCurrentCategory.js +5 -10
  122. package/build/newsroom-context/hooks/useCurrentCategory.js.map +1 -1
  123. package/build/newsroom-context/hooks/useCurrentLocale.js +5 -10
  124. package/build/newsroom-context/hooks/useCurrentLocale.js.map +1 -1
  125. package/build/newsroom-context/hooks/useCurrentStory.js +5 -10
  126. package/build/newsroom-context/hooks/useCurrentStory.js.map +1 -1
  127. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js +17 -21
  128. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js.map +1 -1
  129. package/build/newsroom-context/hooks/useGetTranslationUrl.js +52 -55
  130. package/build/newsroom-context/hooks/useGetTranslationUrl.js.map +1 -1
  131. package/build/newsroom-context/hooks/useLanguages.js +5 -10
  132. package/build/newsroom-context/hooks/useLanguages.js.map +1 -1
  133. package/build/newsroom-context/hooks/useNewsroom.js +5 -10
  134. package/build/newsroom-context/hooks/useNewsroom.js.map +1 -1
  135. package/build/newsroom-context/hooks/useNewsroomContext.js +11 -16
  136. package/build/newsroom-context/hooks/useNewsroomContext.js.map +1 -1
  137. package/build/newsroom-context/index.js +2 -22
  138. package/build/newsroom-context/index.js.map +1 -1
  139. package/build/sentry/client.js +4 -9
  140. package/build/sentry/client.js.map +1 -1
  141. package/build/sentry/common.js +26 -29
  142. package/build/sentry/common.js.map +1 -1
  143. package/build/sentry/index.js +2 -8
  144. package/build/sentry/index.js.map +1 -1
  145. package/build/sentry/server.js +4 -9
  146. package/build/sentry/server.js.map +1 -1
  147. package/build/types.d.ts +2 -2
  148. package/build/types.js +1 -3
  149. package/build/utils/boilerplate.js +7 -22
  150. package/build/utils/boilerplate.js.map +1 -1
  151. package/build/utils/constants.js +3 -7
  152. package/build/utils/constants.js.map +1 -1
  153. package/build/utils/getAssetsUrl.js +4 -9
  154. package/build/utils/getAssetsUrl.js.map +1 -1
  155. package/build/utils/getDataRequestLink.js +6 -12
  156. package/build/utils/getDataRequestLink.js.map +1 -1
  157. package/build/utils/getLocalizedCategoryData.js +33 -33
  158. package/build/utils/getLocalizedCategoryData.js.map +1 -1
  159. package/build/utils/getNewsroomLogoUrl.js +15 -21
  160. package/build/utils/getNewsroomLogoUrl.js.map +1 -1
  161. package/build/utils/getPrivacyPortalUrl.js +11 -13
  162. package/build/utils/getPrivacyPortalUrl.js.map +1 -1
  163. package/build/utils/getStoryPublicationDate.js +9 -14
  164. package/build/utils/getStoryPublicationDate.js.map +1 -1
  165. package/build/utils/getUploadcareGroupUrl.js +5 -10
  166. package/build/utils/getUploadcareGroupUrl.js.map +1 -1
  167. package/build/utils/index.js +10 -27
  168. package/build/utils/index.js.map +1 -1
  169. package/build/utils/isEmbargoStory.js +3 -8
  170. package/build/utils/isEmbargoStory.js.map +1 -1
  171. package/package.json +26 -18
  172. package/build/tsconfig.tsbuildinfo +0 -1
  173. package/src/@types/global.d.ts +0 -7
  174. package/src/__mocks__/languages.ts +0 -417
  175. package/src/__mocks__/story.ts +0 -351
  176. package/src/adapter-nextjs/api-handlers/fetchGalleries.ts +0 -24
  177. package/src/adapter-nextjs/api-handlers/fetchStories.ts +0 -26
  178. package/src/adapter-nextjs/api-handlers/index.ts +0 -2
  179. package/src/adapter-nextjs/getNewsroomServerSideProps.ts +0 -29
  180. package/src/adapter-nextjs/getNewsroomStaticProps.ts +0 -29
  181. package/src/adapter-nextjs/index.ts +0 -6
  182. package/src/adapter-nextjs/page-props/category.ts +0 -157
  183. package/src/adapter-nextjs/page-props/gallery.ts +0 -114
  184. package/src/adapter-nextjs/page-props/galleryAlbum.ts +0 -89
  185. package/src/adapter-nextjs/page-props/home.ts +0 -113
  186. package/src/adapter-nextjs/page-props/index.ts +0 -26
  187. package/src/adapter-nextjs/page-props/lib/types.ts +0 -8
  188. package/src/adapter-nextjs/page-props/search.ts +0 -53
  189. package/src/adapter-nextjs/page-props/sitemap/SitemapBuilder.ts +0 -56
  190. package/src/adapter-nextjs/page-props/sitemap/createPaths.ts +0 -21
  191. package/src/adapter-nextjs/page-props/sitemap/getServerSideProps.ts +0 -43
  192. package/src/adapter-nextjs/page-props/sitemap/index.ts +0 -5
  193. package/src/adapter-nextjs/page-props/sitemap/types.ts +0 -5
  194. package/src/adapter-nextjs/page-props/story.ts +0 -94
  195. package/src/adapter-nextjs/page-props/storyPreview.ts +0 -33
  196. package/src/adapter-nextjs/processRequest.ts +0 -49
  197. package/src/adapter-nextjs/processStaticRequest.ts +0 -32
  198. package/src/components-nextjs/PageSeo/PageSeo.tsx +0 -131
  199. package/src/components-nextjs/PageSeo/index.ts +0 -2
  200. package/src/components-nextjs/PageSeo/lib/getAbsoluteUrl.ts +0 -7
  201. package/src/components-nextjs/PageSeo/lib/types.ts +0 -4
  202. package/src/components-nextjs/StorySeo/StorySeo.tsx +0 -80
  203. package/src/components-nextjs/StorySeo/index.ts +0 -1
  204. package/src/components-nextjs/document.tsx +0 -38
  205. package/src/components-nextjs/index.ts +0 -3
  206. package/src/data-fetching/api/PrezlyApi.ts +0 -302
  207. package/src/data-fetching/api/getPrezlyApi.ts +0 -24
  208. package/src/data-fetching/api/index.ts +0 -1
  209. package/src/data-fetching/api/queries.ts +0 -51
  210. package/src/data-fetching/index.ts +0 -3
  211. package/src/data-fetching/lib/getAlgoliaSettings.ts +0 -29
  212. package/src/data-fetching/lib/getEnvVariables.ts +0 -46
  213. package/src/data-fetching/lib/index.ts +0 -4
  214. package/src/data-fetching/lib/isSdkError.ts +0 -5
  215. package/src/data-fetching/lib/isUuid.ts +0 -5
  216. package/src/data-fetching/types.ts +0 -14
  217. package/src/index.ts +0 -9
  218. package/src/infinite-loading/index.ts +0 -4
  219. package/src/infinite-loading/types.ts +0 -5
  220. package/src/infinite-loading/useInfiniteGalleriesLoading.ts +0 -53
  221. package/src/infinite-loading/useInfiniteLoading.ts +0 -66
  222. package/src/infinite-loading/useInfiniteStoriesLoading.ts +0 -81
  223. package/src/intl/index.ts +0 -4
  224. package/src/intl/languages.test.ts +0 -232
  225. package/src/intl/languages.ts +0 -233
  226. package/src/intl/locale.test.ts +0 -94
  227. package/src/intl/locale.ts +0 -140
  228. package/src/intl/localeConfig.js +0 -23
  229. package/src/intl/localeList.js +0 -110
  230. package/src/intl/localeObject.test.ts +0 -81
  231. package/src/intl/localeObject.ts +0 -99
  232. package/src/newsroom-context/context.tsx +0 -115
  233. package/src/newsroom-context/hooks/index.ts +0 -11
  234. package/src/newsroom-context/hooks/useAlgoliaSettings.ts +0 -7
  235. package/src/newsroom-context/hooks/useCategories.ts +0 -7
  236. package/src/newsroom-context/hooks/useCompanyInformation.ts +0 -7
  237. package/src/newsroom-context/hooks/useCurrentCategory.ts +0 -7
  238. package/src/newsroom-context/hooks/useCurrentLocale.ts +0 -7
  239. package/src/newsroom-context/hooks/useCurrentStory.ts +0 -7
  240. package/src/newsroom-context/hooks/useGetLinkLocaleSlug.ts +0 -37
  241. package/src/newsroom-context/hooks/useGetTranslationUrl.ts +0 -96
  242. package/src/newsroom-context/hooks/useLanguages.ts +0 -7
  243. package/src/newsroom-context/hooks/useNewsroom.ts +0 -7
  244. package/src/newsroom-context/hooks/useNewsroomContext.ts +0 -15
  245. package/src/newsroom-context/index.ts +0 -2
  246. package/src/sentry/client.ts +0 -7
  247. package/src/sentry/common.ts +0 -27
  248. package/src/sentry/index.ts +0 -2
  249. package/src/sentry/server.ts +0 -7
  250. package/src/types.ts +0 -51
  251. package/src/utils/boilerplate.ts +0 -27
  252. package/src/utils/constants.ts +0 -3
  253. package/src/utils/getAssetsUrl.test.ts +0 -9
  254. package/src/utils/getAssetsUrl.ts +0 -9
  255. package/src/utils/getDataRequestLink.ts +0 -14
  256. package/src/utils/getLocalizedCategoryData.ts +0 -47
  257. package/src/utils/getNewsroomLogoUrl.ts +0 -22
  258. package/src/utils/getPrivacyPortalUrl.ts +0 -25
  259. package/src/utils/getStoryPublicationDate.tsx +0 -15
  260. package/src/utils/getUploadcareGroupUrl.ts +0 -13
  261. package/src/utils/index.ts +0 -10
  262. package/src/utils/isEmbargoStory.ts +0 -10
@@ -1,119 +1,64 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLocaleDirection = exports.getRedirectToCanonicalLocale = exports.getSupportedLocaleIsoCode = exports.DUMMY_DEFAULT_LOCALE = exports.DEFAULT_LOCALE = void 0;
4
- const querystring_1 = require("querystring");
5
- const localeObject_1 = require("./localeObject");
6
- exports.DEFAULT_LOCALE = 'en';
1
+ import { stringify } from 'querystring';
2
+ import { LocaleObject } from "./localeObject.js";
3
+ export const DEFAULT_LOCALE = 'en';
7
4
  // We use pseudo locale used for localization testing, to reliably determine if we need to fallback to the default newsroom language
8
- exports.DUMMY_DEFAULT_LOCALE = 'qps-ploc';
5
+ export const DUMMY_DEFAULT_LOCALE = 'qps-ploc';
6
+
9
7
  /**
10
8
  * This a list of locales that Prezly has translations for. Each code represents a language file in the `@prezly/themes-intl-messages` package.
11
9
  * See https://github.com/prezly/themes-intl-messages for more info.
12
10
  */
13
- const SUPPORTED_LOCALES = [
14
- 'af',
15
- 'ar',
16
- 'az',
17
- 'be',
18
- 'bg',
19
- 'cs',
20
- 'da',
21
- 'de',
22
- 'el',
23
- 'en',
24
- 'es',
25
- 'et',
26
- 'fi',
27
- 'fil',
28
- 'fr',
29
- 'ga',
30
- 'he',
31
- 'hi',
32
- 'hr',
33
- 'hu',
34
- 'id',
35
- 'it',
36
- 'ja',
37
- 'kk',
38
- 'ko',
39
- 'lt',
40
- 'lv',
41
- 'mt',
42
- 'nl',
43
- 'no',
44
- 'pl',
45
- 'pt-BR',
46
- 'pt',
47
- 'ro',
48
- 'ru',
49
- 'sk',
50
- 'sl',
51
- 'sv',
52
- 'sw',
53
- 'th',
54
- 'tr',
55
- 'uk',
56
- 'ur',
57
- 'uz',
58
- 'vi',
59
- 'zh-CN',
60
- 'zh-TW',
61
- ];
11
+ const SUPPORTED_LOCALES = ['af', 'ar', 'az', 'be', 'bg', 'cs', 'da', 'de', 'el', 'en', 'es', 'et', 'fi', 'fil', 'fr', 'ga', 'he', 'hi', 'hr', 'hu', 'id', 'it', 'ja', 'kk', 'ko', 'lt', 'lv', 'mt', 'nl', 'no', 'pl', 'pt-BR', 'pt', 'ro', 'ru', 'sk', 'sl', 'sv', 'sw', 'th', 'tr', 'uk', 'ur', 'uz', 'vi', 'zh-CN', 'zh-TW'];
12
+
62
13
  /**
63
14
  * Use this function to determine which translations file you should load from `@prezly/themes-intl-mesages` package.
64
15
  * See https://github.com/prezly/theme-nextjs-bea/blob/main/utils/lang.ts for a usage example.
65
16
  */
66
- function getSupportedLocaleIsoCode(locale) {
67
- const localeIsoCode = locale.toHyphenCode();
68
- const isSupportedLocale = localeIsoCode.length >= 2 && SUPPORTED_LOCALES.includes(localeIsoCode);
69
- if (isSupportedLocale) {
70
- return localeIsoCode;
71
- }
72
- const language = locale.toNeutralLanguageCode();
73
- const isSupportedLanguage = SUPPORTED_LOCALES.includes(language);
74
- if (isSupportedLanguage) {
75
- return language;
76
- }
77
- // Custom mapping for Chinese locales
78
- if (localeIsoCode.toLowerCase() === 'zh-hant') {
79
- return 'zh-TW';
80
- }
81
- if (localeIsoCode.toLowerCase() === 'zh-hk') {
82
- return 'zh-CN';
83
- }
84
- // This code should never be reached, because locale code check is happening in `LocaleObject.fromAnyCode`
85
- // eslint-disable-next-line no-console
86
- console.warn('Unsupported locale provided. Please use `LocaleObject.fromAnyCode` to ensure you are using a correct language code');
87
- return exports.DEFAULT_LOCALE;
17
+ export function getSupportedLocaleIsoCode(locale) {
18
+ const localeIsoCode = locale.toHyphenCode();
19
+ const isSupportedLocale = localeIsoCode.length >= 2 && SUPPORTED_LOCALES.includes(localeIsoCode);
20
+ if (isSupportedLocale) {
21
+ return localeIsoCode;
22
+ }
23
+ const language = locale.toNeutralLanguageCode();
24
+ const isSupportedLanguage = SUPPORTED_LOCALES.includes(language);
25
+ if (isSupportedLanguage) {
26
+ return language;
27
+ }
28
+
29
+ // Custom mapping for Chinese locales
30
+ if (localeIsoCode.toLowerCase() === 'zh-hant') {
31
+ return 'zh-TW';
32
+ }
33
+ if (localeIsoCode.toLowerCase() === 'zh-hk') {
34
+ return 'zh-CN';
35
+ }
36
+
37
+ // This code should never be reached, because locale code check is happening in `LocaleObject.fromAnyCode`
38
+ // eslint-disable-next-line no-console
39
+ console.warn('Unsupported locale provided. Please use `LocaleObject.fromAnyCode` to ensure you are using a correct language code');
40
+ return DEFAULT_LOCALE;
88
41
  }
89
- exports.getSupportedLocaleIsoCode = getSupportedLocaleIsoCode;
90
- function getRedirectToCanonicalLocale(shortestLocaleCode, nextLocaleIsoCode, redirectPath, query) {
91
- // No need to redirect if no particular locale was requested by the application
92
- if (!nextLocaleIsoCode || nextLocaleIsoCode === exports.DUMMY_DEFAULT_LOCALE) {
93
- return undefined;
94
- }
95
- const shortestLocaleSlug = shortestLocaleCode
96
- ? localeObject_1.LocaleObject.fromAnyCode(shortestLocaleCode).toUrlSlug()
97
- : shortestLocaleCode;
98
- if (shortestLocaleSlug !== nextLocaleIsoCode) {
99
- const prefixedPath = redirectPath && !redirectPath.startsWith('/') ? `/${redirectPath}` : redirectPath;
100
- const urlQuery = query ? `?${(0, querystring_1.stringify)(query)}` : '';
101
- return {
102
- destination: shortestLocaleSlug
103
- ? `/${shortestLocaleSlug}${prefixedPath}${urlQuery}`
104
- : `${prefixedPath}${urlQuery}`,
105
- permanent: false,
106
- };
107
- }
42
+ export function getRedirectToCanonicalLocale(shortestLocaleCode, nextLocaleIsoCode, redirectPath, query) {
43
+ // No need to redirect if no particular locale was requested by the application
44
+ if (!nextLocaleIsoCode || nextLocaleIsoCode === DUMMY_DEFAULT_LOCALE) {
108
45
  return undefined;
46
+ }
47
+ const shortestLocaleSlug = shortestLocaleCode ? LocaleObject.fromAnyCode(shortestLocaleCode).toUrlSlug() : shortestLocaleCode;
48
+ if (shortestLocaleSlug !== nextLocaleIsoCode) {
49
+ const prefixedPath = redirectPath && !redirectPath.startsWith('/') ? `/${redirectPath}` : redirectPath;
50
+ const urlQuery = query ? `?${stringify(query)}` : '';
51
+ return {
52
+ destination: shortestLocaleSlug ? `/${shortestLocaleSlug}${prefixedPath}${urlQuery}` : `${prefixedPath}${urlQuery}`,
53
+ permanent: false
54
+ };
55
+ }
56
+ return undefined;
109
57
  }
110
- exports.getRedirectToCanonicalLocale = getRedirectToCanonicalLocale;
111
- function getLocaleDirection(locale) {
112
- const neutralLanguageCode = locale.toNeutralLanguageCode();
113
- if (['ar', 'he', 'ur'].includes(neutralLanguageCode)) {
114
- return 'rtl';
115
- }
116
- return 'ltr';
117
- }
118
- exports.getLocaleDirection = getLocaleDirection;
119
- //# sourceMappingURL=locale.js.map
58
+ export function getLocaleDirection(locale) {
59
+ const neutralLanguageCode = locale.toNeutralLanguageCode();
60
+ if (['ar', 'he', 'ur'].includes(neutralLanguageCode)) {
61
+ return 'rtl';
62
+ }
63
+ return 'ltr';
64
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/intl/locale.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/intl/locale.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1 @@
1
- export = lowercaseLocalPermutations;
2
- declare const lowercaseLocalPermutations: string[];
1
+ export declare const localeConfig: string[];
@@ -1,20 +1,13 @@
1
- "use strict";
2
1
  /**
3
2
  * This list is pulled from the main Prezly application. The underscores are replaced with dashes.
4
3
  * Together with permutation performed lower in the code,
5
4
  * the exported list represents all of the possible locale codes that Next.js theme application might accept.
6
5
  */
7
- const supportedLocales = require('./localeList');
8
- const lowercaseLocales = supportedLocales.map((l) => l.toLowerCase());
6
+ import { localeList } from "./localeList.js";
7
+ const lowercaseLocales = localeList.map(l => l.toLowerCase());
8
+
9
9
  // Get all permutations for the shorter locale codes supported by Prezly (e.g. short region codes and neutral language codes)
10
- const lowercaseLocalPermutations = Array.from(new Set([
11
- ...lowercaseLocales,
12
- ...lowercaseLocales.map((code) => code.split('-')[0]),
13
- ...lowercaseLocales
14
- .map((code) => code.split('-')[1])
15
- .filter(Boolean)
16
- // Remove number-only codes from possible permutations (like `419` for `es-419`)
17
- .filter((code) => Number.isNaN(Number(code))),
18
- ])).sort();
19
- module.exports = lowercaseLocalPermutations;
20
- //# sourceMappingURL=localeConfig.js.map
10
+ const lowercaseLocalPermutations = Array.from(new Set([...lowercaseLocales, ...lowercaseLocales.map(code => code.split('-')[0]), ...lowercaseLocales.map(code => code.split('-')[1]).filter(Boolean)
11
+ // Remove number-only codes from possible permutations (like `419` for `es-419`)
12
+ .filter(code => Number.isNaN(Number(code)))])).sort();
13
+ export const localeConfig = lowercaseLocalPermutations;
@@ -1 +1 @@
1
- {"version":3,"file":"localeConfig.js","sourceRoot":"","sources":["../../src/intl/localeConfig.js"],"names":[],"mappings":";AAAA;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAEjD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AAEtE,6HAA6H;AAC7H,MAAM,0BAA0B,GAAG,KAAK,CAAC,IAAI,CACzC,IAAI,GAAG,CAAC;IACJ,GAAG,gBAAgB;IACnB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,gBAAgB;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC,MAAM,CAAC,OAAO,CAAC;QAChB,gFAAgF;SAC/E,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACpD,CAAC,CACL,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,OAAO,GAAG,0BAA0B,CAAC"}
1
+ {"version":3,"file":"localeConfig.js","sourceRoot":"","sources":["../../src/intl/localeConfig.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AAEhE,6HAA6H;AAC7H,MAAM,0BAA0B,GAAG,KAAK,CAAC,IAAI,CACzC,IAAI,GAAG,CAAC;IACJ,GAAG,gBAAgB;IACnB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,gBAAgB;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC,MAAM,CAAC,OAAO,CAAC;QAChB,gFAAgF;SAC/E,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACpD,CAAC,CACL,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC"}
@@ -1,2 +1,4 @@
1
- declare const _exports: string[];
2
- export = _exports;
1
+ /**
2
+ * This list is pulled from the main Prezly application. The underscores are replaced with dashes.
3
+ */
4
+ export declare const localeList: string[];
@@ -1,112 +1,4 @@
1
- "use strict";
2
1
  /**
3
2
  * This list is pulled from the main Prezly application. The underscores are replaced with dashes.
4
3
  */
5
- module.exports = [
6
- 'af-ZA',
7
- 'ar',
8
- 'ar-AE',
9
- 'ar-BH',
10
- 'ar-QA',
11
- 'ar-SA',
12
- 'az',
13
- 'be',
14
- 'bg-BG',
15
- 'ca',
16
- 'cs-CZ',
17
- 'da-DK',
18
- 'de',
19
- 'de-DE',
20
- 'de-BE',
21
- 'de-AT',
22
- 'de-CH',
23
- 'el-GR',
24
- 'en',
25
- 'en-US',
26
- 'en-AE',
27
- 'en-AU',
28
- 'en-BD',
29
- 'en-BE',
30
- 'en-BH',
31
- 'en-CA',
32
- 'en-CN',
33
- 'en-DE',
34
- 'en-DK',
35
- 'en-GB',
36
- 'en-HK',
37
- 'en-ID',
38
- 'en-IE',
39
- 'en-IL',
40
- 'en-IN',
41
- 'en-JM',
42
- 'en-JP',
43
- 'en-KH',
44
- 'en-KR',
45
- 'en-LK',
46
- 'en-MV',
47
- 'en-MM',
48
- 'en-MY',
49
- 'en-NP',
50
- 'en-NZ',
51
- 'en-PH',
52
- 'en-PK',
53
- 'en-QA',
54
- 'en-SA',
55
- 'en-SG',
56
- 'en-TH',
57
- 'en-TW',
58
- 'en-VN',
59
- 'en-ZA',
60
- 'es',
61
- 'es-ES',
62
- 'es-MX',
63
- 'et-EE',
64
- 'es-419',
65
- 'fi-FI',
66
- 'fil',
67
- 'fr',
68
- 'fr-BE',
69
- 'fr-FR',
70
- 'fr-CA',
71
- 'fr-LU',
72
- 'ga-IE',
73
- 'he-IL',
74
- 'hi-IN',
75
- 'hr-HR',
76
- 'hu-HU',
77
- 'id-ID',
78
- 'it-IT',
79
- 'ja-JP',
80
- 'kk',
81
- 'ko-KR',
82
- 'ky',
83
- 'lt-LT',
84
- 'lv-LV',
85
- 'mt-MT',
86
- 'ms-MY',
87
- 'nb-NO',
88
- 'nl',
89
- 'nl-BE',
90
- 'nl-NL',
91
- 'pl-PL',
92
- 'pt',
93
- 'pt-BR',
94
- 'pt-PT',
95
- 'ro-RO',
96
- 'ru-RU',
97
- 'sk-SK',
98
- 'sl-SI',
99
- 'sv-SE',
100
- 'sw',
101
- 'th-TH',
102
- 'tr-TR',
103
- 'uk-UA',
104
- 'ur-PK',
105
- 'uz',
106
- 'vi-VN',
107
- 'zh-Hant',
108
- 'zh-HK',
109
- 'zh-TW',
110
- 'zh-CN',
111
- ];
112
- //# sourceMappingURL=localeList.js.map
4
+ export const localeList = ['af-ZA', 'ar', 'ar-AE', 'ar-BH', 'ar-QA', 'ar-SA', 'az', 'be', 'bg-BG', 'ca', 'cs-CZ', 'da-DK', 'de', 'de-DE', 'de-BE', 'de-AT', 'de-CH', 'el-GR', 'en', 'en-US', 'en-AE', 'en-AU', 'en-BD', 'en-BE', 'en-BH', 'en-CA', 'en-CN', 'en-DE', 'en-DK', 'en-GB', 'en-HK', 'en-ID', 'en-IE', 'en-IL', 'en-IN', 'en-JM', 'en-JP', 'en-KH', 'en-KR', 'en-LK', 'en-MV', 'en-MM', 'en-MY', 'en-NP', 'en-NZ', 'en-PH', 'en-PK', 'en-QA', 'en-SA', 'en-SG', 'en-TH', 'en-TW', 'en-VN', 'en-ZA', 'es', 'es-ES', 'es-MX', 'et-EE', 'es-419', 'fi-FI', 'fil', 'fr', 'fr-BE', 'fr-FR', 'fr-CA', 'fr-LU', 'ga-IE', 'he-IL', 'hi-IN', 'hr-HR', 'hu-HU', 'id-ID', 'it-IT', 'ja-JP', 'kk', 'ko-KR', 'ky', 'lt-LT', 'lv-LV', 'mt-MT', 'ms-MY', 'nb-NO', 'nl', 'nl-BE', 'nl-NL', 'pl-PL', 'pt', 'pt-BR', 'pt-PT', 'ro-RO', 'ru-RU', 'sk-SK', 'sl-SI', 'sv-SE', 'sw', 'th-TH', 'tr-TR', 'uk-UA', 'ur-PK', 'uz', 'vi-VN', 'zh-Hant', 'zh-HK', 'zh-TW', 'zh-CN'];
@@ -1 +1 @@
1
- {"version":3,"file":"localeList.js","sourceRoot":"","sources":["../../src/intl/localeList.js"],"names":[],"mappings":";AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,GAAG;IACb,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;IACP,KAAK;IACL,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,SAAS;IACT,OAAO;IACP,OAAO;IACP,OAAO;CACV,CAAC"}
1
+ {"version":3,"file":"localeList.js","sourceRoot":"","sources":["../../src/intl/localeList.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;IACP,KAAK;IACL,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,SAAS;IACT,OAAO;IACP,OAAO;IACP,OAAO;CACV,CAAC"}
@@ -1,91 +1,89 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.LocaleObject = void 0;
7
- const localeConfig_1 = __importDefault(require("./localeConfig"));
1
+ import { localeConfig } from "./localeConfig.js";
8
2
  /**
9
3
  * This class is created to simplify working with locales and transforming between different locale code formats.
10
4
  * Prezly API uses underscore-codes, while most frontend application tend to use hyphen-codes or slugs.
11
5
  * Note that `fromAnyCode` constructor only accepts locales supported by Prezly backend. See `localeConfig` for reference.
12
6
  */
13
- class LocaleObject {
14
- /**
15
- * Hyphen-separated locale code.
16
- * Examples: `nl-BE`, `en-US`, `fr`, `fil`
17
- */
18
- localeCode;
19
- constructor(localeCode) {
20
- if (!/^([a-z]{2,3})(-[a-z\d]{1,4})?$/i.test(localeCode)) {
21
- throw new Error('Invalid locale code provided!');
22
- }
23
- const [language, region] = localeCode.split('-');
24
- if (region) {
25
- // Workaround for `zh-Hant` locale, which is the only locale with non-uppercase region part
26
- const regionSuffix = region === 'hant' ? 'Hant' : region.toUpperCase();
27
- this.localeCode = [language, regionSuffix].join('-');
28
- }
29
- else {
30
- this.localeCode = language;
31
- }
7
+ export class LocaleObject {
8
+ /**
9
+ * Hyphen-separated locale code.
10
+ * Examples: `nl-BE`, `en-US`, `fr`, `fil`
11
+ */
12
+
13
+ constructor(localeCode) {
14
+ if (!/^([a-z]{2,3})(-[a-z\d]{1,4})?$/i.test(localeCode)) {
15
+ throw new Error('Invalid locale code provided!');
32
16
  }
33
- /**
34
- * @param localeCode Locale code in any of the formats below.
35
- * Examples:
36
- * - Hyphen-codes: `nl-BE`, `en-US`, `fr`, `fil`
37
- * - Underscore-codes: `nl_BE`, `en_US`, `fr`, `fil`
38
- * - Slugs: `nl-be`, `en-us`, `fr`, `fil`
39
- */
40
- static fromAnyCode(localeCode) {
41
- const lowercaseCode = localeCode.toLowerCase().replace('_', '-');
42
- const foundCode = localeConfig_1.default.find((code) => code === lowercaseCode);
43
- if (!foundCode) {
44
- throw new Error(`Unsupported locale code provided: "${lowercaseCode}"`);
45
- }
46
- return new LocaleObject(foundCode);
17
+ const [language, region] = localeCode.split('-');
18
+ if (region) {
19
+ // Workaround for `zh-Hant` locale, which is the only locale with non-uppercase region part
20
+ const regionSuffix = region === 'hant' ? 'Hant' : region.toUpperCase();
21
+ this.localeCode = [language, regionSuffix].join('-');
22
+ } else {
23
+ this.localeCode = language;
47
24
  }
48
- /**
49
- * @returns Code formatted into hyphen format: `nl-BE`, `en-US`, `fr`, `fil`
50
- */
51
- toHyphenCode() {
52
- return this.localeCode;
25
+ }
26
+
27
+ /**
28
+ * @param localeCode Locale code in any of the formats below.
29
+ * Examples:
30
+ * - Hyphen-codes: `nl-BE`, `en-US`, `fr`, `fil`
31
+ * - Underscore-codes: `nl_BE`, `en_US`, `fr`, `fil`
32
+ * - Slugs: `nl-be`, `en-us`, `fr`, `fil`
33
+ */
34
+ static fromAnyCode(localeCode) {
35
+ const lowercaseCode = localeCode.toLowerCase().replace('_', '-');
36
+ const foundCode = localeConfig.find(code => code === lowercaseCode);
37
+ if (!foundCode) {
38
+ throw new Error(`Unsupported locale code provided: "${lowercaseCode}"`);
53
39
  }
54
- /**
55
- * @returns Code formatted into underscore format, as expected by Prezly API: `nl_BE`, `en_US`, `fr`, `fil`
56
- */
57
- toUnderscoreCode() {
58
- return this.localeCode.replace('-', '_');
40
+ return new LocaleObject(foundCode);
41
+ }
42
+
43
+ /**
44
+ * @returns Code formatted into hyphen format: `nl-BE`, `en-US`, `fr`, `fil`
45
+ */
46
+ toHyphenCode() {
47
+ return this.localeCode;
48
+ }
49
+
50
+ /**
51
+ * @returns Code formatted into underscore format, as expected by Prezly API: `nl_BE`, `en_US`, `fr`, `fil`
52
+ */
53
+ toUnderscoreCode() {
54
+ return this.localeCode.replace('-', '_');
55
+ }
56
+
57
+ /**
58
+ * @returns Code formatted to a URL-friendly lowercase slug format: `nl-be`, `en-us`, `fr`, `fil`
59
+ */
60
+ toUrlSlug() {
61
+ return this.localeCode.toLowerCase();
62
+ }
63
+
64
+ /**
65
+ * @returns Only the language part of the code without culture/region part: `nl`, `en`, `fr`
66
+ */
67
+ toNeutralLanguageCode() {
68
+ const [language] = this.localeCode.split('-');
69
+ return language;
70
+ }
71
+
72
+ /**
73
+ * @returns Only the culture/regtion part without the language part: `be`, `us`, `fr`
74
+ */
75
+ toRegionCode() {
76
+ const [language, region] = this.localeCode.split('-');
77
+ if (!region) {
78
+ return language.toUpperCase();
59
79
  }
60
- /**
61
- * @returns Code formatted to a URL-friendly lowercase slug format: `nl-be`, `en-us`, `fr`, `fil`
62
- */
63
- toUrlSlug() {
64
- return this.localeCode.toLowerCase();
65
- }
66
- /**
67
- * @returns Only the language part of the code without culture/region part: `nl`, `en`, `fr`
68
- */
69
- toNeutralLanguageCode() {
70
- const [language] = this.localeCode.split('-');
71
- return language;
72
- }
73
- /**
74
- * @returns Only the culture/regtion part without the language part: `be`, `us`, `fr`
75
- */
76
- toRegionCode() {
77
- const [language, region] = this.localeCode.split('-');
78
- if (!region) {
79
- return language.toUpperCase();
80
- }
81
- return region.toUpperCase();
82
- }
83
- /**
84
- * Check if two LocaleObject instances are representing the same locale code.
85
- */
86
- isEqual(anotherLocale) {
87
- return anotherLocale.toHyphenCode() === this.localeCode;
88
- }
89
- }
90
- exports.LocaleObject = LocaleObject;
91
- //# sourceMappingURL=localeObject.js.map
80
+ return region.toUpperCase();
81
+ }
82
+
83
+ /**
84
+ * Check if two LocaleObject instances are representing the same locale code.
85
+ */
86
+ isEqual(anotherLocale) {
87
+ return anotherLocale.toHyphenCode() === this.localeCode;
88
+ }
89
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"localeObject.js","sourceRoot":"","sources":["../../src/intl/localeObject.ts"],"names":[],"mappings":";;;;;;AAAA,kEAA0C;AAE1C;;;;GAIG;AACH,MAAa,YAAY;IACrB;;;OAGG;IACK,UAAU,CAAS;IAE3B,YAAoB,UAAkB;QAClC,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACrD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SACpD;QAED,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEjD,IAAI,MAAM,EAAE;YACR,2FAA2F;YAC3F,MAAM,YAAY,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAEvE,IAAI,CAAC,UAAU,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACxD;aAAM;YACH,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC9B;IACL,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,WAAW,CAAC,UAAkB;QACxC,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,sBAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,sCAAsC,aAAa,GAAG,CAAC,CAAC;SAC3E;QAED,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,gBAAgB;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,qBAAqB;QACxB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE9C,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;OAEG;IACI,YAAY;QACf,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;SACjC;QAED,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,aAA2B;QACtC,OAAO,aAAa,CAAC,YAAY,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC;IAC5D,CAAC;CACJ;AA3FD,oCA2FC"}
1
+ {"version":3,"file":"localeObject.js","sourceRoot":"","sources":["../../src/intl/localeObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,OAAO,YAAY;IACrB;;;OAGG;IACK,UAAU,CAAS;IAE3B,YAAoB,UAAkB;QAClC,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACrD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SACpD;QAED,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEjD,IAAI,MAAM,EAAE;YACR,2FAA2F;YAC3F,MAAM,YAAY,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAEvE,IAAI,CAAC,UAAU,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACxD;aAAM;YACH,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC9B;IACL,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,WAAW,CAAC,UAAkB;QACxC,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,sCAAsC,aAAa,GAAG,CAAC,CAAC;SAC3E;QAED,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,gBAAgB;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,qBAAqB;QACxB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE9C,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;OAEG;IACI,YAAY;QACf,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;SACjC;QAED,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,aAA2B;QACtC,OAAO,aAAa,CAAC,YAAY,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC;IAC5D,CAAC;CACJ"}
@@ -1,29 +1,39 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NewsroomContextProvider = exports.NewsroomContext = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const intl_1 = require("../intl");
7
- exports.NewsroomContext = (0, react_1.createContext)(undefined);
1
+ import { createContext, useMemo } from 'react';
2
+ import { DEFAULT_LOCALE, LocaleObject } from "../intl/index.js";
3
+ export const NewsroomContext = /*#__PURE__*/createContext(undefined);
4
+
8
5
  /**
9
6
  * This context provides common Newsroom information retrieved by `getNewsroomServerSideProps` helper.
10
7
  * Please refer to the `NewsroomContextType` definition for more info on what's exposed from the context.
11
8
  */
12
- function NewsroomContextProvider({ categories, contacts, newsroom, currentCategory, currentStory, companyInformation, languages, localeCode, notifications, themePreset, algoliaSettings, children, }) {
13
- const locale = (0, react_1.useMemo)(() => intl_1.LocaleObject.fromAnyCode(localeCode || intl_1.DEFAULT_LOCALE), [localeCode]);
14
- return ((0, jsx_runtime_1.jsx)(exports.NewsroomContext.Provider, { value: {
15
- categories,
16
- contacts,
17
- newsroom,
18
- currentCategory,
19
- currentStory,
20
- companyInformation,
21
- languages,
22
- locale,
23
- notifications,
24
- themePreset,
25
- algoliaSettings,
26
- }, children: children }));
27
- }
28
- exports.NewsroomContextProvider = NewsroomContextProvider;
29
- //# sourceMappingURL=context.js.map
9
+ export function NewsroomContextProvider({
10
+ categories,
11
+ contacts,
12
+ newsroom,
13
+ currentCategory,
14
+ currentStory,
15
+ companyInformation,
16
+ languages,
17
+ localeCode,
18
+ notifications,
19
+ themePreset,
20
+ algoliaSettings,
21
+ children
22
+ }) {
23
+ const locale = useMemo(() => LocaleObject.fromAnyCode(localeCode || DEFAULT_LOCALE), [localeCode]);
24
+ return /*#__PURE__*/React.createElement(NewsroomContext.Provider, {
25
+ value: {
26
+ categories,
27
+ contacts,
28
+ newsroom,
29
+ currentCategory,
30
+ currentStory,
31
+ companyInformation,
32
+ languages,
33
+ locale,
34
+ notifications,
35
+ themePreset,
36
+ algoliaSettings
37
+ }
38
+ }, children);
39
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/newsroom-context/context.tsx"],"names":[],"mappings":";;;;AAWA,iCAA+C;AAG/C,kCAAuD;AAwD1C,QAAA,eAAe,GAAG,IAAA,qBAAa,EAAkC,SAAS,CAAC,CAAC;AAEzF;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,EACpC,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,eAAe,EACf,QAAQ,GAC8B;IACtC,MAAM,MAAM,GAAG,IAAA,eAAO,EAClB,GAAG,EAAE,CAAC,mBAAY,CAAC,WAAW,CAAC,UAAU,IAAI,qBAAc,CAAC,EAC5D,CAAC,UAAU,CAAC,CACf,CAAC;IAEF,OAAO,CACH,uBAAC,uBAAe,CAAC,QAAQ,IACrB,KAAK,EAAE;YACH,UAAU;YACV,QAAQ;YACR,QAAQ;YACR,eAAe;YACf,YAAY;YACZ,kBAAkB;YAClB,SAAS;YACT,MAAM;YACN,aAAa;YACb,WAAW;YACX,eAAe;SAClB,YAEA,QAAQ,GACc,CAC9B,CAAC;AACN,CAAC;AAtCD,0DAsCC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/newsroom-context/context.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAwDvD,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAkC,SAAS,CAAC,CAAC;AAEzF;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,EACpC,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,eAAe,EACf,QAAQ,GAC8B;IACtC,MAAM,MAAM,GAAG,OAAO,CAClB,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,IAAI,cAAc,CAAC,EAC5D,CAAC,UAAU,CAAC,CACf,CAAC;IAEF,OAAO,CACH,KAAC,eAAe,CAAC,QAAQ,IACrB,KAAK,EAAE;YACH,UAAU;YACV,QAAQ;YACR,QAAQ;YACR,eAAe;YACf,YAAY;YACZ,kBAAkB;YAClB,SAAS;YACT,MAAM;YACN,aAAa;YACb,WAAW;YACX,eAAe;SAClB,YAEA,QAAQ,GACc,CAC9B,CAAC;AACN,CAAC"}