@prezly/theme-kit-nextjs 7.1.0 → 8.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 (315) hide show
  1. package/build/adapters/app-helper/server.cjs +29 -0
  2. package/build/adapters/app-helper/server.d.ts +9 -0
  3. package/build/adapters/app-helper/server.mjs +23 -0
  4. package/build/adapters/client.cjs +27 -0
  5. package/build/adapters/client.d.ts +2 -0
  6. package/build/adapters/client.mjs +3 -0
  7. package/build/adapters/intl/server.cjs +108 -0
  8. package/build/adapters/intl/server.d.ts +26 -0
  9. package/build/adapters/intl/server.mjs +100 -0
  10. package/build/adapters/metadata/lib/generateCategoryPageMetadata.cjs +52 -0
  11. package/build/adapters/metadata/lib/generateCategoryPageMetadata.d.ts +12 -0
  12. package/build/adapters/metadata/lib/generateCategoryPageMetadata.mjs +46 -0
  13. package/build/adapters/metadata/lib/generateMediaGalleryPageMetadata.cjs +44 -0
  14. package/build/adapters/metadata/lib/generateMediaGalleryPageMetadata.d.ts +12 -0
  15. package/build/adapters/metadata/lib/generateMediaGalleryPageMetadata.mjs +38 -0
  16. package/build/adapters/metadata/lib/generateMediaPageMetadata.cjs +43 -0
  17. package/build/adapters/metadata/lib/generateMediaPageMetadata.d.ts +12 -0
  18. package/build/adapters/metadata/lib/generateMediaPageMetadata.mjs +37 -0
  19. package/build/adapters/metadata/lib/generateRootMetadata.cjs +51 -0
  20. package/build/adapters/metadata/lib/generateRootMetadata.d.ts +10 -0
  21. package/build/adapters/metadata/lib/generateRootMetadata.mjs +45 -0
  22. package/build/adapters/metadata/lib/generateSearchPageMetadata.cjs +43 -0
  23. package/build/adapters/metadata/lib/generateSearchPageMetadata.d.ts +12 -0
  24. package/build/adapters/metadata/lib/generateSearchPageMetadata.mjs +37 -0
  25. package/build/adapters/metadata/lib/generateStoryPageMetadata.cjs +100 -0
  26. package/build/adapters/metadata/lib/generateStoryPageMetadata.d.ts +14 -0
  27. package/build/adapters/metadata/lib/generateStoryPageMetadata.mjs +94 -0
  28. package/build/adapters/metadata/lib/index.cjs +66 -0
  29. package/build/adapters/metadata/lib/index.d.ts +8 -0
  30. package/build/adapters/metadata/lib/index.mjs +7 -0
  31. package/build/adapters/metadata/lib/types.cjs +1 -0
  32. package/build/adapters/metadata/lib/types.d.ts +30 -0
  33. package/build/adapters/metadata/lib/types.mjs +1 -0
  34. package/build/adapters/metadata/lib/utils/generateAlternateLanguageLinks.cjs +11 -0
  35. package/build/adapters/metadata/lib/utils/generateAlternateLanguageLinks.d.ts +7 -0
  36. package/build/adapters/metadata/lib/utils/generateAlternateLanguageLinks.mjs +5 -0
  37. package/build/adapters/metadata/lib/utils/generatePageMetadata.cjs +75 -0
  38. package/build/adapters/metadata/lib/utils/generatePageMetadata.d.ts +14 -0
  39. package/build/adapters/metadata/lib/utils/generatePageMetadata.mjs +70 -0
  40. package/build/adapters/metadata/lib/utils/index.cjs +26 -0
  41. package/build/adapters/metadata/lib/utils/index.d.ts +3 -0
  42. package/build/adapters/metadata/lib/utils/index.mjs +3 -0
  43. package/build/adapters/metadata/lib/utils/mergePageMetadata.cjs +48 -0
  44. package/build/adapters/metadata/lib/utils/mergePageMetadata.d.ts +2 -0
  45. package/build/adapters/metadata/lib/utils/mergePageMetadata.mjs +43 -0
  46. package/build/adapters/metadata/server.cjs +82 -0
  47. package/build/adapters/metadata/server.d.ts +34 -0
  48. package/build/adapters/metadata/server.mjs +74 -0
  49. package/build/adapters/prezly/cache/configure.cjs +38 -0
  50. package/build/adapters/prezly/cache/configure.d.ts +15 -0
  51. package/build/adapters/prezly/cache/configure.mjs +33 -0
  52. package/build/adapters/prezly/cache/index.cjs +19 -0
  53. package/build/adapters/prezly/cache/index.d.ts +2 -0
  54. package/build/adapters/prezly/cache/index.mjs +2 -0
  55. package/build/adapters/prezly/cache/redis.cjs +60 -0
  56. package/build/adapters/prezly/cache/redis.d.ts +9 -0
  57. package/build/adapters/prezly/cache/redis.mjs +55 -0
  58. package/build/adapters/prezly/server.cjs +55 -0
  59. package/build/adapters/prezly/server.d.ts +48 -0
  60. package/build/adapters/prezly/server.mjs +51 -0
  61. package/build/adapters/routing/client.cjs +10 -0
  62. package/build/adapters/routing/client.d.ts +1 -0
  63. package/build/adapters/routing/client.mjs +3 -0
  64. package/build/adapters/routing/lib/RoutingAdapter.client.cjs +55 -0
  65. package/build/adapters/routing/lib/RoutingAdapter.client.d.ts +39 -0
  66. package/build/adapters/routing/lib/RoutingAdapter.client.mjs +48 -0
  67. package/build/adapters/routing/lib/RoutingAdapter.server.cjs +49 -0
  68. package/build/adapters/routing/lib/RoutingAdapter.server.d.ts +16 -0
  69. package/build/adapters/routing/lib/RoutingAdapter.server.mjs +45 -0
  70. package/build/adapters/routing/server.cjs +29 -0
  71. package/build/adapters/routing/server.d.ts +2 -0
  72. package/build/adapters/routing/server.mjs +5 -0
  73. package/build/adapters/server.cjs +71 -0
  74. package/build/adapters/server.d.ts +6 -0
  75. package/build/adapters/server.mjs +7 -0
  76. package/build/adapters/theme-settings/client.cjs +37 -0
  77. package/build/adapters/theme-settings/client.d.ts +13 -0
  78. package/build/adapters/theme-settings/client.mjs +30 -0
  79. package/build/adapters/theme-settings/server.cjs +34 -0
  80. package/build/adapters/theme-settings/server.d.ts +10 -0
  81. package/build/adapters/theme-settings/server.mjs +28 -0
  82. package/build/index.cjs +49 -0
  83. package/build/index.d.ts +4 -7
  84. package/build/index.mjs +4 -0
  85. package/build/middleware/generate-slugs.d.ts +1 -0
  86. package/build/middleware/index.cjs +10 -0
  87. package/build/middleware/index.d.ts +1 -0
  88. package/build/middleware/index.mjs +2 -0
  89. package/build/middleware/intl-middleware.cjs +113 -0
  90. package/build/middleware/intl-middleware.d.ts +87 -0
  91. package/build/middleware/intl-middleware.mjs +107 -0
  92. package/build/middleware/slugs.cjs +9 -0
  93. package/build/middleware/slugs.d.ts +1 -0
  94. package/build/middleware/slugs.mjs +3 -0
  95. package/build/next-config/index.cjs +63 -0
  96. package/build/next-config/index.d.ts +9 -0
  97. package/build/next-config/index.mjs +57 -0
  98. package/build/playwright/config.cjs +70 -0
  99. package/build/playwright/config.d.ts +7 -1
  100. package/build/playwright/config.mjs +66 -0
  101. package/build/playwright/index.cjs +12 -0
  102. package/build/playwright/index.d.ts +1 -1
  103. package/build/playwright/index.mjs +1 -0
  104. package/build/robots/server.cjs +54 -0
  105. package/build/robots/server.d.ts +12 -0
  106. package/build/robots/server.mjs +48 -0
  107. package/build/sentry/client.cjs +10 -0
  108. package/build/sentry/client.d.ts +1 -2
  109. package/build/sentry/client.mjs +4 -0
  110. package/build/sentry/common.cjs +72 -0
  111. package/build/sentry/common.d.ts +1 -1
  112. package/build/sentry/common.mjs +66 -0
  113. package/build/sentry/index.cjs +19 -0
  114. package/build/sentry/index.d.ts +2 -2
  115. package/build/sentry/index.mjs +2 -0
  116. package/build/sentry/server.cjs +10 -0
  117. package/build/sentry/server.d.ts +1 -2
  118. package/build/sentry/server.mjs +4 -0
  119. package/build/server.cjs +25 -0
  120. package/build/server.d.ts +2 -2
  121. package/build/server.mjs +3 -0
  122. package/package.json +51 -26
  123. package/build/adapter-nextjs/api-handlers/fetchGalleries.d.ts +0 -2
  124. package/build/adapter-nextjs/api-handlers/fetchGalleries.js +0 -29
  125. package/build/adapter-nextjs/api-handlers/fetchGalleries.js.map +0 -1
  126. package/build/adapter-nextjs/api-handlers/fetchStories.d.ts +0 -2
  127. package/build/adapter-nextjs/api-handlers/fetchStories.js +0 -34
  128. package/build/adapter-nextjs/api-handlers/fetchStories.js.map +0 -1
  129. package/build/adapter-nextjs/api-handlers/index.d.ts +0 -2
  130. package/build/adapter-nextjs/api-handlers/index.js +0 -8
  131. package/build/adapter-nextjs/api-handlers/index.js.map +0 -1
  132. package/build/adapter-nextjs/getNewsroomServerSideProps.d.ts +0 -16
  133. package/build/adapter-nextjs/getNewsroomServerSideProps.js +0 -18
  134. package/build/adapter-nextjs/getNewsroomServerSideProps.js.map +0 -1
  135. package/build/adapter-nextjs/getNewsroomStaticProps.d.ts +0 -16
  136. package/build/adapter-nextjs/getNewsroomStaticProps.js +0 -18
  137. package/build/adapter-nextjs/getNewsroomStaticProps.js.map +0 -1
  138. package/build/adapter-nextjs/index.d.ts +0 -6
  139. package/build/adapter-nextjs/index.js +0 -23
  140. package/build/adapter-nextjs/index.js.map +0 -1
  141. package/build/adapter-nextjs/page-props/category.d.ts +0 -16
  142. package/build/adapter-nextjs/page-props/category.js +0 -105
  143. package/build/adapter-nextjs/page-props/category.js.map +0 -1
  144. package/build/adapter-nextjs/page-props/gallery.d.ts +0 -14
  145. package/build/adapter-nextjs/page-props/gallery.js +0 -74
  146. package/build/adapter-nextjs/page-props/gallery.js.map +0 -1
  147. package/build/adapter-nextjs/page-props/galleryAlbum.d.ts +0 -9
  148. package/build/adapter-nextjs/page-props/galleryAlbum.js +0 -56
  149. package/build/adapter-nextjs/page-props/galleryAlbum.js.map +0 -1
  150. package/build/adapter-nextjs/page-props/home.d.ts +0 -21
  151. package/build/adapter-nextjs/page-props/home.js +0 -73
  152. package/build/adapter-nextjs/page-props/home.js.map +0 -1
  153. package/build/adapter-nextjs/page-props/index.d.ts +0 -8
  154. package/build/adapter-nextjs/page-props/index.js +0 -42
  155. package/build/adapter-nextjs/page-props/index.js.map +0 -1
  156. package/build/adapter-nextjs/page-props/lib/types.d.ts +0 -3
  157. package/build/adapter-nextjs/page-props/lib/types.js +0 -3
  158. package/build/adapter-nextjs/page-props/lib/types.js.map +0 -1
  159. package/build/adapter-nextjs/page-props/search.d.ts +0 -4
  160. package/build/adapter-nextjs/page-props/search.js +0 -32
  161. package/build/adapter-nextjs/page-props/search.js.map +0 -1
  162. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.d.ts +0 -22
  163. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js +0 -139
  164. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js.map +0 -1
  165. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.d.ts +0 -7
  166. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js +0 -55
  167. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js.map +0 -1
  168. package/build/adapter-nextjs/page-props/sitemap/index.d.ts +0 -3
  169. package/build/adapter-nextjs/page-props/sitemap/index.js +0 -23
  170. package/build/adapter-nextjs/page-props/sitemap/index.js.map +0 -1
  171. package/build/adapter-nextjs/page-props/sitemap/types.d.ts +0 -9
  172. package/build/adapter-nextjs/page-props/sitemap/types.js +0 -3
  173. package/build/adapter-nextjs/page-props/sitemap/types.js.map +0 -1
  174. package/build/adapter-nextjs/page-props/story.d.ts +0 -13
  175. package/build/adapter-nextjs/page-props/story.js +0 -78
  176. package/build/adapter-nextjs/page-props/story.js.map +0 -1
  177. package/build/adapter-nextjs/page-props/storyPreview.d.ts +0 -4
  178. package/build/adapter-nextjs/page-props/storyPreview.js +0 -28
  179. package/build/adapter-nextjs/page-props/storyPreview.js.map +0 -1
  180. package/build/adapter-nextjs/processRequest.d.ts +0 -12
  181. package/build/adapter-nextjs/processRequest.js +0 -43
  182. package/build/adapter-nextjs/processRequest.js.map +0 -1
  183. package/build/adapter-nextjs/processStaticRequest.d.ts +0 -11
  184. package/build/adapter-nextjs/processStaticRequest.js +0 -28
  185. package/build/adapter-nextjs/processStaticRequest.js.map +0 -1
  186. package/build/components-nextjs/PageSeo/PageSeo.d.ts +0 -16
  187. package/build/components-nextjs/PageSeo/PageSeo.js +0 -87
  188. package/build/components-nextjs/PageSeo/PageSeo.js.map +0 -1
  189. package/build/components-nextjs/PageSeo/index.d.ts +0 -1
  190. package/build/components-nextjs/PageSeo/index.js +0 -6
  191. package/build/components-nextjs/PageSeo/index.js.map +0 -1
  192. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.d.ts +0 -1
  193. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js +0 -14
  194. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js.map +0 -1
  195. package/build/components-nextjs/PageSeo/lib/index.d.ts +0 -1
  196. package/build/components-nextjs/PageSeo/lib/index.js +0 -6
  197. package/build/components-nextjs/PageSeo/lib/index.js.map +0 -1
  198. package/build/components-nextjs/StorySeo/StorySeo.d.ts +0 -11
  199. package/build/components-nextjs/StorySeo/StorySeo.js +0 -56
  200. package/build/components-nextjs/StorySeo/StorySeo.js.map +0 -1
  201. package/build/components-nextjs/StorySeo/index.d.ts +0 -1
  202. package/build/components-nextjs/StorySeo/index.js +0 -6
  203. package/build/components-nextjs/StorySeo/index.js.map +0 -1
  204. package/build/components-nextjs/document.d.ts +0 -5
  205. package/build/components-nextjs/document.js +0 -48
  206. package/build/components-nextjs/document.js.map +0 -1
  207. package/build/components-nextjs/index.d.ts +0 -3
  208. package/build/components-nextjs/index.js +0 -10
  209. package/build/components-nextjs/index.js.map +0 -1
  210. package/build/config.d.ts +0 -17
  211. package/build/config.js +0 -78
  212. package/build/config.js.map +0 -1
  213. package/build/data-fetching/client.d.ts +0 -10
  214. package/build/data-fetching/client.js +0 -51
  215. package/build/data-fetching/client.js.map +0 -1
  216. package/build/data-fetching/index.d.ts +0 -1
  217. package/build/data-fetching/index.js +0 -28
  218. package/build/data-fetching/index.js.map +0 -1
  219. package/build/index.js +0 -24
  220. package/build/index.js.map +0 -1
  221. package/build/infinite-loading/index.d.ts +0 -4
  222. package/build/infinite-loading/index.js +0 -25
  223. package/build/infinite-loading/index.js.map +0 -1
  224. package/build/infinite-loading/lib/index.d.ts +0 -1
  225. package/build/infinite-loading/lib/index.js +0 -6
  226. package/build/infinite-loading/lib/index.js.map +0 -1
  227. package/build/infinite-loading/lib/useAsync.d.ts +0 -44
  228. package/build/infinite-loading/lib/useAsync.js +0 -70
  229. package/build/infinite-loading/lib/useAsync.js.map +0 -1
  230. package/build/infinite-loading/lib/useSyncedRef.d.ts +0 -12
  231. package/build/infinite-loading/lib/useSyncedRef.js +0 -24
  232. package/build/infinite-loading/lib/useSyncedRef.js.map +0 -1
  233. package/build/infinite-loading/types.d.ts +0 -9
  234. package/build/infinite-loading/types.js +0 -3
  235. package/build/infinite-loading/types.js.map +0 -1
  236. package/build/infinite-loading/useInfiniteGalleriesLoading.d.ts +0 -13
  237. package/build/infinite-loading/useInfiniteGalleriesLoading.js +0 -46
  238. package/build/infinite-loading/useInfiniteGalleriesLoading.js.map +0 -1
  239. package/build/infinite-loading/useInfiniteLoading.d.ts +0 -16
  240. package/build/infinite-loading/useInfiniteLoading.js +0 -44
  241. package/build/infinite-loading/useInfiniteLoading.js.map +0 -1
  242. package/build/infinite-loading/useInfiniteStoriesLoading.d.ts +0 -13
  243. package/build/infinite-loading/useInfiniteStoriesLoading.js +0 -62
  244. package/build/infinite-loading/useInfiniteStoriesLoading.js.map +0 -1
  245. package/build/intl/index.d.ts +0 -2
  246. package/build/intl/index.js +0 -19
  247. package/build/intl/index.js.map +0 -1
  248. package/build/intl/languages.d.ts +0 -6
  249. package/build/intl/languages.js +0 -19
  250. package/build/intl/languages.js.map +0 -1
  251. package/build/intl/locale.d.ts +0 -5
  252. package/build/intl/locale.js +0 -31
  253. package/build/intl/locale.js.map +0 -1
  254. package/build/newsroom-context/context.d.ts +0 -62
  255. package/build/newsroom-context/context.js +0 -29
  256. package/build/newsroom-context/context.js.map +0 -1
  257. package/build/newsroom-context/hooks/index.d.ts +0 -11
  258. package/build/newsroom-context/hooks/index.js +0 -28
  259. package/build/newsroom-context/hooks/index.js.map +0 -1
  260. package/build/newsroom-context/hooks/useAlgoliaSettings.d.ts +0 -1
  261. package/build/newsroom-context/hooks/useAlgoliaSettings.js +0 -10
  262. package/build/newsroom-context/hooks/useAlgoliaSettings.js.map +0 -1
  263. package/build/newsroom-context/hooks/useCategories.d.ts +0 -1
  264. package/build/newsroom-context/hooks/useCategories.js +0 -10
  265. package/build/newsroom-context/hooks/useCategories.js.map +0 -1
  266. package/build/newsroom-context/hooks/useCompanyInformation.d.ts +0 -1
  267. package/build/newsroom-context/hooks/useCompanyInformation.js +0 -10
  268. package/build/newsroom-context/hooks/useCompanyInformation.js.map +0 -1
  269. package/build/newsroom-context/hooks/useCurrentCategory.d.ts +0 -1
  270. package/build/newsroom-context/hooks/useCurrentCategory.js +0 -10
  271. package/build/newsroom-context/hooks/useCurrentCategory.js.map +0 -1
  272. package/build/newsroom-context/hooks/useCurrentLocale.d.ts +0 -1
  273. package/build/newsroom-context/hooks/useCurrentLocale.js +0 -10
  274. package/build/newsroom-context/hooks/useCurrentLocale.js.map +0 -1
  275. package/build/newsroom-context/hooks/useCurrentStory.d.ts +0 -1
  276. package/build/newsroom-context/hooks/useCurrentStory.js +0 -10
  277. package/build/newsroom-context/hooks/useCurrentStory.js.map +0 -1
  278. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.d.ts +0 -2
  279. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js +0 -29
  280. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js.map +0 -1
  281. package/build/newsroom-context/hooks/useGetTranslationUrl.d.ts +0 -6
  282. package/build/newsroom-context/hooks/useGetTranslationUrl.js +0 -65
  283. package/build/newsroom-context/hooks/useGetTranslationUrl.js.map +0 -1
  284. package/build/newsroom-context/hooks/useLanguages.d.ts +0 -1
  285. package/build/newsroom-context/hooks/useLanguages.js +0 -10
  286. package/build/newsroom-context/hooks/useLanguages.js.map +0 -1
  287. package/build/newsroom-context/hooks/useNewsroom.d.ts +0 -1
  288. package/build/newsroom-context/hooks/useNewsroom.js +0 -10
  289. package/build/newsroom-context/hooks/useNewsroom.js.map +0 -1
  290. package/build/newsroom-context/hooks/useNewsroomContext.d.ts +0 -2
  291. package/build/newsroom-context/hooks/useNewsroomContext.js +0 -16
  292. package/build/newsroom-context/hooks/useNewsroomContext.js.map +0 -1
  293. package/build/newsroom-context/index.d.ts +0 -2
  294. package/build/newsroom-context/index.js +0 -22
  295. package/build/newsroom-context/index.js.map +0 -1
  296. package/build/playwright/config.js +0 -67
  297. package/build/playwright/config.js.map +0 -1
  298. package/build/playwright/index.js +0 -6
  299. package/build/playwright/index.js.map +0 -1
  300. package/build/sentry/client.js +0 -9
  301. package/build/sentry/client.js.map +0 -1
  302. package/build/sentry/common.js +0 -66
  303. package/build/sentry/common.js.map +0 -1
  304. package/build/sentry/index.js +0 -8
  305. package/build/sentry/index.js.map +0 -1
  306. package/build/sentry/server.js +0 -9
  307. package/build/sentry/server.js.map +0 -1
  308. package/build/server.js +0 -19
  309. package/build/server.js.map +0 -1
  310. package/build/types.d.ts +0 -14
  311. package/build/types.js +0 -3
  312. package/build/types.js.map +0 -1
  313. package/build/utils.d.ts +0 -6
  314. package/build/utils.js +0 -16
  315. package/build/utils.js.map +0 -1
@@ -1,70 +0,0 @@
1
- "use strict";
2
- /**
3
- * This code is ported from `@react-hookz/web` package, to avoid importing the whole package in the client bundle.
4
- * @see https://github.com/react-hookz/web/blob/master/src/useAsync/index.ts
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.useAsync = void 0;
8
- const react_1 = require("react");
9
- const useSyncedRef_1 = require("./useSyncedRef");
10
- /**
11
- * Tracks the result and errors of the provided async function and provides handles to control its execution.
12
- *
13
- * @param asyncFn Function that returns a promise.
14
- * @param initialValue Value that will be set on initialisation before the async function is
15
- * executed.
16
- */
17
- function useAsync(asyncFn, initialValue) {
18
- const [state, setState] = (0, react_1.useState)({
19
- status: 'not-executed',
20
- error: undefined,
21
- result: initialValue,
22
- });
23
- const promiseRef = (0, react_1.useRef)();
24
- const argsRef = (0, react_1.useRef)();
25
- const methods = (0, useSyncedRef_1.useSyncedRef)({
26
- execute: (...params) => {
27
- argsRef.current = params;
28
- const promise = asyncFn(...params);
29
- promiseRef.current = promise;
30
- setState((s) => ({ ...s, status: 'loading' }));
31
- promise.then((result) => {
32
- // we dont want to handle result/error of non-latest function
33
- // this approach helps to avoid race conditions
34
- if (promise === promiseRef.current) {
35
- setState((s) => ({ ...s, status: 'success', error: undefined, result }));
36
- }
37
- }, (error) => {
38
- // we dont want to handle result/error of non-latest function
39
- // this approach helps to avoid race conditions
40
- if (promise === promiseRef.current) {
41
- setState((s) => ({ ...s, status: 'error', error }));
42
- }
43
- });
44
- return promise;
45
- },
46
- reset: () => {
47
- setState({
48
- status: 'not-executed',
49
- error: undefined,
50
- result: initialValue,
51
- });
52
- promiseRef.current = undefined;
53
- argsRef.current = undefined;
54
- },
55
- });
56
- return [
57
- state,
58
- (0, react_1.useMemo)(() => ({
59
- reset: () => {
60
- methods.current.reset();
61
- },
62
- execute: (...params) => methods.current.execute(...params),
63
- }),
64
- // eslint-disable-next-line react-hooks/exhaustive-deps
65
- []),
66
- { promise: promiseRef.current, lastArgs: argsRef.current },
67
- ];
68
- }
69
- exports.useAsync = useAsync;
70
- //# sourceMappingURL=useAsync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAsync.js","sourceRoot":"","sources":["../../../src/infinite-loading/lib/useAsync.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,iCAAkD;AAElD,iDAA8C;AAyD9C;;;;;;GAMG;AACH,SAAgB,QAAQ,CACpB,OAA6C,EAC7C,YAAqB;IAErB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAiC;QAC/D,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,IAAA,cAAM,GAAmB,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAA,cAAM,GAAQ,CAAC;IAE/B,MAAM,OAAO,GAAG,IAAA,2BAAY,EAAC;QACzB,OAAO,EAAE,CAAC,GAAG,MAAY,EAAE,EAAE;YACzB,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;YACzB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;YACnC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;YAE7B,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAE/C,OAAO,CAAC,IAAI,CACR,CAAC,MAAM,EAAE,EAAE;gBACP,6DAA6D;gBAC7D,+CAA+C;gBAC/C,IAAI,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;oBACjC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC7E,CAAC;YACL,CAAC,EACD,CAAC,KAAY,EAAE,EAAE;gBACb,6DAA6D;gBAC7D,+CAA+C;gBAC/C,IAAI,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;oBACjC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;YACL,CAAC,CACJ,CAAC;YAEF,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,KAAK,EAAE,GAAG,EAAE;YACR,QAAQ,CAAC;gBACL,MAAM,EAAE,cAAc;gBACtB,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC;YAC/B,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;QAChC,CAAC;KACJ,CAAC,CAAC;IAEH,OAAO;QACH,KAAK;QACL,IAAA,eAAO,EACH,GAAG,EAAE,CAAC,CAAC;YACH,KAAK,EAAE,GAAG,EAAE;gBACR,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC5B,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,MAAY,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;SACnE,CAAC;QACF,uDAAuD;QACvD,EAAE,CACL;QACD,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE;KAC7D,CAAC;AACN,CAAC;AAhED,4BAgEC"}
@@ -1,12 +0,0 @@
1
- /**
2
- * This code is ported from `@react-hookz/web` package, to avoid importing the whole package in the client bundle.
3
- * @see https://github.com/react-hookz/web/blob/master/src/useSyncedRef/index.ts
4
- */
5
- /**
6
- * Like `useRef`, but it returns immutable ref that contains actual value.
7
- *
8
- * @param value
9
- */
10
- export declare function useSyncedRef<T>(value: T): {
11
- readonly current: T;
12
- };
@@ -1,24 +0,0 @@
1
- "use strict";
2
- /**
3
- * This code is ported from `@react-hookz/web` package, to avoid importing the whole package in the client bundle.
4
- * @see https://github.com/react-hookz/web/blob/master/src/useSyncedRef/index.ts
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.useSyncedRef = void 0;
8
- const react_1 = require("react");
9
- /**
10
- * Like `useRef`, but it returns immutable ref that contains actual value.
11
- *
12
- * @param value
13
- */
14
- function useSyncedRef(value) {
15
- const ref = (0, react_1.useRef)(value);
16
- ref.current = value;
17
- return (0, react_1.useMemo)(() => Object.freeze({
18
- get current() {
19
- return ref.current;
20
- },
21
- }), []);
22
- }
23
- exports.useSyncedRef = useSyncedRef;
24
- //# sourceMappingURL=useSyncedRef.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSyncedRef.js","sourceRoot":"","sources":["../../../src/infinite-loading/lib/useSyncedRef.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,iCAAwC;AAExC;;;;GAIG;AACH,SAAgB,YAAY,CAAI,KAAQ;IACpC,MAAM,GAAG,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IAE1B,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;IAEpB,OAAO,IAAA,eAAO,EACV,GAAG,EAAE,CACD,MAAM,CAAC,MAAM,CAAC;QACV,IAAI,OAAO;YACP,OAAO,GAAG,CAAC,OAAO,CAAC;QACvB,CAAC;KACJ,CAAC,EACN,EAAE,CACL,CAAC;AACN,CAAC;AAdD,oCAcC"}
@@ -1,9 +0,0 @@
1
- export interface PaginationProps {
2
- itemsTotal: number;
3
- currentPage: number;
4
- pageSize: number;
5
- /**
6
- * When set to `true`, the calculated offset will be increased by one to account for the highlighted story
7
- */
8
- withHighlightedStory?: boolean;
9
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/infinite-loading/types.ts"],"names":[],"mappings":""}
@@ -1,13 +0,0 @@
1
- import type { NewsroomGallery } from '@prezly/sdk';
2
- import type { PaginationProps } from './types';
3
- /**
4
- * NOTE: This hook depends on the presence of a Next API route (/api/fetch-galleries)!
5
- * The handler for this route is exported from `apiHandlers/fetchGalleries.ts` file.
6
- * See https://github.com/prezly/theme-nextjs-bea/blob/d381e9878187ca98815d240d3ffdf10a75993c14/pages/media/index.tsx#L23 for usage example
7
- */
8
- export declare function useInfiniteGalleriesLoading(initialGalleries: NewsroomGallery[], pagination: PaginationProps): {
9
- canLoadMore: boolean;
10
- galleries: NewsroomGallery[];
11
- isLoading: boolean;
12
- loadMoreGalleries: () => void;
13
- };
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useInfiniteGalleriesLoading = void 0;
4
- const utils_1 = require("../utils");
5
- const useInfiniteLoading_1 = require("./useInfiniteLoading");
6
- async function fetchGalleries(page, pageSize) {
7
- const result = await fetch((0, utils_1.getResolvedPath)('/api/fetch-galleries'), {
8
- method: 'POST',
9
- headers: {
10
- // eslint-disable-next-line @typescript-eslint/naming-convention
11
- 'Content-Type': 'application/json',
12
- },
13
- body: JSON.stringify({
14
- page,
15
- pageSize,
16
- }),
17
- });
18
- if (!result.ok) {
19
- const { message } = await result.json();
20
- throw new Error(message);
21
- }
22
- return result.json();
23
- }
24
- /**
25
- * NOTE: This hook depends on the presence of a Next API route (/api/fetch-galleries)!
26
- * The handler for this route is exported from `apiHandlers/fetchGalleries.ts` file.
27
- * See https://github.com/prezly/theme-nextjs-bea/blob/d381e9878187ca98815d240d3ffdf10a75993c14/pages/media/index.tsx#L23 for usage example
28
- */
29
- function useInfiniteGalleriesLoading(initialGalleries, pagination) {
30
- const { canLoadMore, data, isLoading, loadMore } = (0, useInfiniteLoading_1.useInfiniteLoading)({
31
- fetchingFn: async (nextPage, pageSize) => {
32
- const { galleries } = await fetchGalleries(nextPage, pageSize);
33
- return galleries;
34
- },
35
- initialData: initialGalleries,
36
- pagination,
37
- });
38
- return {
39
- canLoadMore,
40
- galleries: data,
41
- isLoading,
42
- loadMoreGalleries: loadMore,
43
- };
44
- }
45
- exports.useInfiniteGalleriesLoading = useInfiniteGalleriesLoading;
46
- //# sourceMappingURL=useInfiniteGalleriesLoading.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInfiniteGalleriesLoading.js","sourceRoot":"","sources":["../../src/infinite-loading/useInfiniteGalleriesLoading.ts"],"names":[],"mappings":";;;AAEA,oCAA2C;AAG3C,6DAA0D;AAE1D,KAAK,UAAU,cAAc,CACzB,IAAY,EACZ,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,uBAAe,EAAC,sBAAsB,CAAC,EAAE;QAChE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACL,gEAAgE;YAChE,cAAc,EAAE,kBAAkB;SACrC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACjB,IAAI;YACJ,QAAQ;SACX,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,SAAgB,2BAA2B,CACvC,gBAAmC,EACnC,UAA2B;IAE3B,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAA,uCAAkB,EAAkB;QACnF,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACrC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC/D,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,WAAW,EAAE,gBAAgB;QAC7B,UAAU;KACb,CAAC,CAAC;IAEH,OAAO;QACH,WAAW;QACX,SAAS,EAAE,IAAI;QACf,SAAS;QACT,iBAAiB,EAAE,QAAQ;KAC9B,CAAC;AACN,CAAC;AAnBD,kEAmBC"}
@@ -1,16 +0,0 @@
1
- import type { PaginationProps } from './types';
2
- interface Parameters<T> {
3
- fetchingFn: (page: number, pageSize: number) => Promise<T[]>;
4
- initialData: T[];
5
- pagination: PaginationProps;
6
- }
7
- interface State<T> {
8
- canLoadMore: boolean;
9
- currentPage: number;
10
- data: T[];
11
- isLoading: boolean;
12
- loadMore: () => void;
13
- resetData: () => void;
14
- }
15
- export declare function useInfiniteLoading<T>({ fetchingFn, initialData, pagination, }: Parameters<T>): State<T>;
16
- export {};
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useInfiniteLoading = void 0;
4
- const react_1 = require("react");
5
- const lib_1 = require("./lib");
6
- function useInfiniteLoading({ fetchingFn, initialData, pagination, }) {
7
- const [data, setData] = (0, react_1.useState)(initialData);
8
- const [currentPage, setCurrentPage] = (0, react_1.useState)(pagination.currentPage);
9
- const { itemsTotal, pageSize, withHighlightedStory } = pagination;
10
- const adjustedItemsTotal = withHighlightedStory ? itemsTotal - 1 : itemsTotal;
11
- const pagesTotal = Math.ceil(adjustedItemsTotal / pageSize);
12
- const canLoadMore = currentPage < pagesTotal;
13
- const [{ error, status }, { execute: loadMoreFn }] = (0, lib_1.useAsync)(async () => {
14
- const nextPage = currentPage + 1;
15
- const newData = await fetchingFn(nextPage, pageSize);
16
- setCurrentPage(nextPage);
17
- setData((currentData) => [...currentData, ...newData]);
18
- });
19
- const loadMore = (0, react_1.useCallback)(() => {
20
- if (canLoadMore) {
21
- loadMoreFn();
22
- }
23
- }, [canLoadMore, loadMoreFn]);
24
- const resetData = (0, react_1.useCallback)(() => {
25
- setData(initialData);
26
- setCurrentPage(pagination.currentPage);
27
- }, [pagination.currentPage, initialData]);
28
- (0, react_1.useEffect)(() => {
29
- if (error) {
30
- // eslint-disable-next-line no-console
31
- console.error(error);
32
- }
33
- }, [error]);
34
- return {
35
- canLoadMore,
36
- currentPage,
37
- data,
38
- isLoading: status === 'loading',
39
- loadMore,
40
- resetData,
41
- };
42
- }
43
- exports.useInfiniteLoading = useInfiniteLoading;
44
- //# sourceMappingURL=useInfiniteLoading.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInfiniteLoading.js","sourceRoot":"","sources":["../../src/infinite-loading/useInfiniteLoading.ts"],"names":[],"mappings":";;;AAAA,iCAAyD;AAEzD,+BAAiC;AAkBjC,SAAgB,kBAAkB,CAAI,EAClC,UAAU,EACV,WAAW,EACX,UAAU,GACE;IACZ,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAM,WAAW,CAAC,CAAC;IACnD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAEvE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,oBAAoB,EAAE,GAAG,UAAU,CAAC;IAClE,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IAE7C,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,IAAA,cAAQ,EAAC,KAAK,IAAI,EAAE;QACrE,MAAM,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACrD,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzB,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QAC9B,IAAI,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;QACjB,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;IAE9B,MAAM,SAAS,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QAC/B,OAAO,CAAC,WAAW,CAAC,CAAC;QACrB,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAE1C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,KAAK,EAAE,CAAC;YACR,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACL,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO;QACH,WAAW;QACX,WAAW;QACX,IAAI;QACJ,SAAS,EAAE,MAAM,KAAK,SAAS;QAC/B,QAAQ;QACR,SAAS;KACZ,CAAC;AACN,CAAC;AA9CD,gDA8CC"}
@@ -1,13 +0,0 @@
1
- import type { Category, Story } from '@prezly/sdk';
2
- import type { PaginationProps } from './types';
3
- /**
4
- * NOTE: This hook depends on the presence of a Next API route (/api/fetch-stories)!
5
- * The handler for this route is exported from `apiHandlers/fetchStories.ts` file.
6
- * See https://github.com/prezly/theme-nextjs-bea/blob/d381e9878187ca98815d240d3ffdf10a75993c14/pages/index.tsx#L24 for usage example
7
- */
8
- export declare function useInfiniteStoriesLoading<T extends Story = Story>(initialStories: T[], pagination: PaginationProps, category?: Category, include?: (keyof Story.ExtraFields)[], filterQuery?: Object): {
9
- canLoadMore: boolean;
10
- isLoading: boolean;
11
- loadMoreStories: () => void;
12
- stories: T[];
13
- };
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useInfiniteStoriesLoading = void 0;
4
- const react_1 = require("react");
5
- const newsroom_context_1 = require("../newsroom-context");
6
- const utils_1 = require("../utils");
7
- const useInfiniteLoading_1 = require("./useInfiniteLoading");
8
- async function fetchStories(page, pageSize, withHighlightedStory, category, locale, include, filterQuery) {
9
- const result = await fetch((0, utils_1.getResolvedPath)('/api/fetch-stories'), {
10
- method: 'POST',
11
- headers: {
12
- // eslint-disable-next-line @typescript-eslint/naming-convention
13
- 'Content-Type': 'application/json',
14
- },
15
- body: JSON.stringify({
16
- page,
17
- pageSize,
18
- withHighlightedStory,
19
- category,
20
- include,
21
- ...(locale && {
22
- localeCode: locale.toUnderscoreCode(),
23
- }),
24
- filterQuery,
25
- }),
26
- });
27
- if (!result.ok) {
28
- const { message } = await result.json();
29
- throw new Error(message);
30
- }
31
- return result.json();
32
- }
33
- /**
34
- * NOTE: This hook depends on the presence of a Next API route (/api/fetch-stories)!
35
- * The handler for this route is exported from `apiHandlers/fetchStories.ts` file.
36
- * See https://github.com/prezly/theme-nextjs-bea/blob/d381e9878187ca98815d240d3ffdf10a75993c14/pages/index.tsx#L24 for usage example
37
- */
38
- function useInfiniteStoriesLoading(initialStories, pagination, category, include, filterQuery) {
39
- const currentLocale = (0, newsroom_context_1.useCurrentLocale)();
40
- const { withHighlightedStory = false } = pagination;
41
- const { canLoadMore, data, isLoading, loadMore, resetData } = (0, useInfiniteLoading_1.useInfiniteLoading)({
42
- fetchingFn: async (nextPage, pageSize) => {
43
- const { stories } = await fetchStories(nextPage, pageSize, withHighlightedStory, category, currentLocale, include, filterQuery);
44
- return stories;
45
- },
46
- initialData: initialStories,
47
- pagination,
48
- });
49
- (0, react_1.useEffect)(() => {
50
- if (category?.id) {
51
- resetData();
52
- }
53
- }, [category?.id, resetData]);
54
- return {
55
- canLoadMore,
56
- isLoading,
57
- loadMoreStories: loadMore,
58
- stories: data,
59
- };
60
- }
61
- exports.useInfiniteStoriesLoading = useInfiniteStoriesLoading;
62
- //# sourceMappingURL=useInfiniteStoriesLoading.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInfiniteStoriesLoading.js","sourceRoot":"","sources":["../../src/infinite-loading/useInfiniteStoriesLoading.ts"],"names":[],"mappings":";;;AAEA,iCAAkC;AAElC,0DAAuD;AACvD,oCAA2C;AAG3C,6DAA0D;AAE1D,KAAK,UAAU,YAAY,CACvB,IAAY,EACZ,QAAgB,EAChB,oBAA6B,EAC7B,QAAmB,EACnB,MAAqB,EACrB,OAAqC,EACrC,WAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAA,uBAAe,EAAC,oBAAoB,CAAC,EAAE;QAC9D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACL,gEAAgE;YAChE,cAAc,EAAE,kBAAkB;SACrC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACjB,IAAI;YACJ,QAAQ;YACR,oBAAoB;YACpB,QAAQ;YACR,OAAO;YACP,GAAG,CAAC,MAAM,IAAI;gBACV,UAAU,EAAE,MAAM,CAAC,gBAAgB,EAAE;aACxC,CAAC;YACF,WAAW;SACd,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CACrC,cAAmB,EACnB,UAA2B,EAC3B,QAAmB,EACnB,OAAqC,EACrC,WAAoB;IAEpB,MAAM,aAAa,GAAG,IAAA,mCAAgB,GAAE,CAAC;IACzC,MAAM,EAAE,oBAAoB,GAAG,KAAK,EAAE,GAAG,UAAU,CAAC;IAEpD,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAA,uCAAkB,EAAI;QAChF,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACrC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,YAAY,CAClC,QAAQ,EACR,QAAQ,EACR,oBAAoB,EACpB,QAAQ,EACR,aAAa,EACb,OAAO,EACP,WAAW,CACd,CAAC;YACF,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,WAAW,EAAE,cAAc;QAC3B,UAAU;KACb,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,QAAQ,EAAE,EAAE,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;QAChB,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAE9B,OAAO;QACH,WAAW;QACX,SAAS;QACT,eAAe,EAAE,QAAQ;QACzB,OAAO,EAAE,IAAI;KAChB,CAAC;AACN,CAAC;AAvCD,8DAuCC"}
@@ -1,2 +0,0 @@
1
- export * from './languages';
2
- export * from './locale';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./languages"), exports);
18
- __exportStar(require("./locale"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/intl/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,2CAAyB"}
@@ -1,6 +0,0 @@
1
- import type { NewsroomLanguageSettings } from '@prezly/sdk';
2
- /**
3
- * Retrieve a culture with fallback to legacy codes support.
4
- * Pulled from https://github.com/prezly/prezly/blob/de9900d9890a33502780494aa3fb85c9a732b3c3/lib/model/CulturePeer.php#L91-L114
5
- */
6
- export declare function getLanguageFromNextLocaleIsoCode<Language extends Pick<NewsroomLanguageSettings, 'is_default' | 'code' | 'public_stories_count'>>(languages: Language[], nextLocaleIsoCode?: string): Language | undefined;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLanguageFromNextLocaleIsoCode = void 0;
4
- const theme_kit_core_1 = require("@prezly/theme-kit-core");
5
- const locale_1 = require("./locale");
6
- /**
7
- * Retrieve a culture with fallback to legacy codes support.
8
- * Pulled from https://github.com/prezly/prezly/blob/de9900d9890a33502780494aa3fb85c9a732b3c3/lib/model/CulturePeer.php#L91-L114
9
- */
10
- function getLanguageFromNextLocaleIsoCode(languages, nextLocaleIsoCode) {
11
- const defaultLanguage = (0, theme_kit_core_1.getDefaultLanguage)(languages);
12
- if (!nextLocaleIsoCode || nextLocaleIsoCode === locale_1.DUMMY_DEFAULT_LOCALE) {
13
- return defaultLanguage;
14
- }
15
- const locale = theme_kit_core_1.LocaleObject.fromAnyCode(nextLocaleIsoCode);
16
- return (0, theme_kit_core_1.getLanguageFromLocaleIsoCode)(languages, locale);
17
- }
18
- exports.getLanguageFromNextLocaleIsoCode = getLanguageFromNextLocaleIsoCode;
19
- //# sourceMappingURL=languages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"languages.js","sourceRoot":"","sources":["../../src/intl/languages.ts"],"names":[],"mappings":";;;AACA,2DAIgC;AAEhC,qCAAgD;AAEhD;;;GAGG;AACH,SAAgB,gCAAgC,CAE9C,SAAqB,EAAE,iBAA0B;IAC/C,MAAM,eAAe,GAAG,IAAA,mCAAkB,EAAC,SAAS,CAAC,CAAC;IAEtD,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,6BAAoB,EAAE,CAAC;QACnE,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,MAAM,MAAM,GAAG,6BAAY,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAE3D,OAAO,IAAA,6CAA4B,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAZD,4EAYC"}
@@ -1,5 +0,0 @@
1
- /// <reference types="node" />
2
- import type { Redirect } from 'next';
3
- import type { ParsedUrlQuery } from 'querystring';
4
- export declare const DUMMY_DEFAULT_LOCALE = "qps-ploc";
5
- export declare function getRedirectToCanonicalLocale(shortestLocaleCode: string | false, nextLocaleIsoCode: string | undefined, redirectPath: string, query?: ParsedUrlQuery): Redirect | undefined;
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRedirectToCanonicalLocale = exports.DUMMY_DEFAULT_LOCALE = void 0;
4
- const theme_kit_core_1 = require("@prezly/theme-kit-core");
5
- const querystring_1 = require("querystring");
6
- const utils_1 = require("../utils");
7
- // 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';
9
- function getRedirectToCanonicalLocale(shortestLocaleCode, nextLocaleIsoCode, redirectPath, query) {
10
- // No need to redirect if no particular locale was requested by the application
11
- if (!nextLocaleIsoCode || nextLocaleIsoCode === exports.DUMMY_DEFAULT_LOCALE) {
12
- return undefined;
13
- }
14
- const shortestLocaleSlug = shortestLocaleCode
15
- ? theme_kit_core_1.LocaleObject.fromAnyCode(shortestLocaleCode).toUrlSlug()
16
- : shortestLocaleCode;
17
- if (shortestLocaleSlug !== nextLocaleIsoCode) {
18
- const prefixedPath = redirectPath && !redirectPath.startsWith('/') ? `/${redirectPath}` : redirectPath;
19
- const finalPath = shortestLocaleSlug
20
- ? `/${shortestLocaleSlug}${prefixedPath}`
21
- : prefixedPath;
22
- const urlQuery = query ? `?${(0, querystring_1.stringify)(query)}` : '';
23
- return {
24
- destination: `${(0, utils_1.getResolvedPath)(finalPath)}${urlQuery}`,
25
- permanent: false,
26
- };
27
- }
28
- return undefined;
29
- }
30
- exports.getRedirectToCanonicalLocale = getRedirectToCanonicalLocale;
31
- //# sourceMappingURL=locale.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/intl/locale.ts"],"names":[],"mappings":";;;AAAA,2DAAsD;AAGtD,6CAAwC;AAExC,oCAA2C;AAE3C,oIAAoI;AACvH,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAE/C,SAAgB,4BAA4B,CACxC,kBAAkC,EAClC,iBAAqC,EACrC,YAAoB,EACpB,KAAsB;IAEtB,+EAA+E;IAC/E,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,4BAAoB,EAAE,CAAC;QACnE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,kBAAkB,GAAG,kBAAkB;QACzC,CAAC,CAAC,6BAAY,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,SAAS,EAAE;QAC1D,CAAC,CAAC,kBAAkB,CAAC;IAEzB,IAAI,kBAAkB,KAAK,iBAAiB,EAAE,CAAC;QAC3C,MAAM,YAAY,GACd,YAAY,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QACtF,MAAM,SAAS,GAAG,kBAAkB;YAChC,CAAC,CAAC,IAAI,kBAAkB,GAAG,YAAY,EAAE;YACzC,CAAC,CAAC,YAAY,CAAC;QAEnB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAA,uBAAS,EAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAErD,OAAO;YACH,WAAW,EAAE,GAAG,IAAA,uBAAe,EAAC,SAAS,CAAC,GAAG,QAAQ,EAAE;YACvD,SAAS,EAAE,KAAK;SACnB,CAAC;IACN,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AA/BD,oEA+BC"}
@@ -1,62 +0,0 @@
1
- import type { Category, Culture, ExtendedStory, Newsroom, NewsroomCompanyInformation, NewsroomContact, NewsroomLanguageSettings, NewsroomThemePreset, Notification } from '@prezly/sdk';
2
- import { LocaleObject } from '@prezly/theme-kit-core';
3
- import type { AlgoliaSettings } from '@prezly/theme-kit-core/server';
4
- import type { PropsWithChildren } from 'react';
5
- export interface NewsroomContextType {
6
- /**
7
- * Basic newsroom information: newsroom logos, settings, etc.
8
- */
9
- newsroom: Newsroom;
10
- /**
11
- * Contact information of the newsroom in the default language, usually displayed in the "About" section
12
- */
13
- companyInformation: NewsroomCompanyInformation;
14
- /**
15
- * List of all categories enabled on the newsroom
16
- */
17
- categories: Category[];
18
- /**
19
- * Optional: Contacts set up to be displayed on the newsroom home page.
20
- * Will only be loaded if `loadHomepageContacts` option of `getNewsroomServerSideProps` is set to `true`.
21
- */
22
- contacts?: NewsroomContact[];
23
- /**
24
- * Optional: Refers to a currently selected category when navigated to `/category/[slug]` page.
25
- */
26
- currentCategory?: Category;
27
- /**
28
- * Optional: Refers to a currently selected story when navigated to `/[slug]` page.
29
- */
30
- currentStory?: ExtendedStory;
31
- /**
32
- * List of currently enabled newsroom languages, as well as company information translated for each language
33
- */
34
- languages: NewsroomLanguageSettings[];
35
- /**
36
- * Currently chosen locale
37
- */
38
- locale: LocaleObject;
39
- /**
40
- * Newsroom user-facing notifications (usually displayed as top-edge banners)
41
- */
42
- notifications: Notification[];
43
- /**
44
- * Theme settings as set in the Prezly app.
45
- * You need to provide `PREZLY_THEME_UUID` in environment variables in order for the preset to be loaded.
46
- * Only applicable to themes hosted on the Prezly infrastructure.
47
- */
48
- themePreset: NewsroomThemePreset | null;
49
- /**
50
- * Environment variables required for Algolia search to work.
51
- */
52
- algoliaSettings: AlgoliaSettings;
53
- }
54
- export interface NewsroomContextProps extends Omit<NewsroomContextType, 'locale'> {
55
- localeCode: Culture.Code;
56
- }
57
- export declare const NewsroomContext: import("react").Context<NewsroomContextType | undefined>;
58
- /**
59
- * This context provides common Newsroom information retrieved by `getNewsroomServerSideProps` helper.
60
- * Please refer to the `NewsroomContextType` definition for more info on what's exposed from the context.
61
- */
62
- export declare function NewsroomContextProvider({ categories, contacts, newsroom, currentCategory, currentStory, companyInformation, languages, localeCode, notifications, themePreset, algoliaSettings, children, }: PropsWithChildren<NewsroomContextProps>): import("react/jsx-runtime").JSX.Element;
@@ -1,29 +0,0 @@
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 theme_kit_core_1 = require("@prezly/theme-kit-core");
6
- const react_1 = require("react");
7
- exports.NewsroomContext = (0, react_1.createContext)(undefined);
8
- /**
9
- * This context provides common Newsroom information retrieved by `getNewsroomServerSideProps` helper.
10
- * Please refer to the `NewsroomContextType` definition for more info on what's exposed from the context.
11
- */
12
- function NewsroomContextProvider({ categories, contacts, newsroom, currentCategory, currentStory, companyInformation, languages, localeCode, notifications, themePreset, algoliaSettings, children, }) {
13
- const locale = (0, react_1.useMemo)(() => theme_kit_core_1.LocaleObject.fromAnyCode(localeCode || theme_kit_core_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
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/newsroom-context/context.tsx"],"names":[],"mappings":";;;;AAWA,2DAAsE;AAGtE,iCAA+C;AAwDlC,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,6BAAY,CAAC,WAAW,CAAC,UAAU,IAAI,+BAAc,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,11 +0,0 @@
1
- export * from './useAlgoliaSettings';
2
- export * from './useCategories';
3
- export * from './useCompanyInformation';
4
- export * from './useCurrentCategory';
5
- export * from './useCurrentLocale';
6
- export * from './useCurrentStory';
7
- export * from './useGetLinkLocaleSlug';
8
- export * from './useGetTranslationUrl';
9
- export * from './useLanguages';
10
- export * from './useNewsroom';
11
- export * from './useNewsroomContext';
@@ -1,28 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./useAlgoliaSettings"), exports);
18
- __exportStar(require("./useCategories"), exports);
19
- __exportStar(require("./useCompanyInformation"), exports);
20
- __exportStar(require("./useCurrentCategory"), exports);
21
- __exportStar(require("./useCurrentLocale"), exports);
22
- __exportStar(require("./useCurrentStory"), exports);
23
- __exportStar(require("./useGetLinkLocaleSlug"), exports);
24
- __exportStar(require("./useGetTranslationUrl"), exports);
25
- __exportStar(require("./useLanguages"), exports);
26
- __exportStar(require("./useNewsroom"), exports);
27
- __exportStar(require("./useNewsroomContext"), exports);
28
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,kDAAgC;AAChC,0DAAwC;AACxC,uDAAqC;AACrC,qDAAmC;AACnC,oDAAkC;AAClC,yDAAuC;AACvC,yDAAuC;AACvC,iDAA+B;AAC/B,gDAA8B;AAC9B,uDAAqC"}
@@ -1 +0,0 @@
1
- export declare function useAlgoliaSettings(): import("@prezly/theme-kit-core/server").AlgoliaSettings;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useAlgoliaSettings = void 0;
4
- const useNewsroomContext_1 = require("./useNewsroomContext");
5
- function useAlgoliaSettings() {
6
- const context = (0, useNewsroomContext_1.useNewsroomContext)();
7
- return context.algoliaSettings;
8
- }
9
- exports.useAlgoliaSettings = useAlgoliaSettings;
10
- //# sourceMappingURL=useAlgoliaSettings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAlgoliaSettings.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useAlgoliaSettings.ts"],"names":[],"mappings":";;;AAAA,6DAA0D;AAE1D,SAAgB,kBAAkB;IAC9B,MAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,eAAe,CAAC;AACnC,CAAC;AAJD,gDAIC"}
@@ -1 +0,0 @@
1
- export declare function useCategories(): import("@prezly/sdk").Category[];