@prezly/theme-kit-nextjs 2.0.1-2 → 2.1.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 (260) hide show
  1. package/README.md +15 -15
  2. package/build/adapter-nextjs/api-handlers/fetchGalleries.js +23 -27
  3. package/build/adapter-nextjs/api-handlers/fetchGalleries.js.map +1 -1
  4. package/build/adapter-nextjs/api-handlers/fetchStories.js +25 -37
  5. package/build/adapter-nextjs/api-handlers/fetchStories.js.map +1 -1
  6. package/build/adapter-nextjs/api-handlers/index.js +8 -2
  7. package/build/adapter-nextjs/api-handlers/index.js.map +1 -1
  8. package/build/adapter-nextjs/getNewsroomServerSideProps.js +15 -16
  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 +23 -6
  13. package/build/adapter-nextjs/index.js.map +1 -1
  14. package/build/adapter-nextjs/page-props/category.js +100 -118
  15. package/build/adapter-nextjs/page-props/category.js.map +1 -1
  16. package/build/adapter-nextjs/page-props/gallery.js +68 -87
  17. package/build/adapter-nextjs/page-props/gallery.js.map +1 -1
  18. package/build/adapter-nextjs/page-props/galleryAlbum.js +53 -64
  19. package/build/adapter-nextjs/page-props/galleryAlbum.js.map +1 -1
  20. package/build/adapter-nextjs/page-props/home.js +69 -83
  21. package/build/adapter-nextjs/page-props/home.js.map +1 -1
  22. package/build/adapter-nextjs/page-props/index.js +42 -8
  23. package/build/adapter-nextjs/page-props/index.js.map +1 -1
  24. package/build/adapter-nextjs/page-props/lib/types.js +3 -1
  25. package/build/adapter-nextjs/page-props/search.js +31 -25
  26. package/build/adapter-nextjs/page-props/search.js.map +1 -1
  27. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js +50 -29
  28. package/build/adapter-nextjs/page-props/sitemap/SitemapBuilder.js.map +1 -1
  29. package/build/adapter-nextjs/page-props/sitemap/createPaths.js +19 -13
  30. package/build/adapter-nextjs/page-props/sitemap/createPaths.js.map +1 -1
  31. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js +35 -33
  32. package/build/adapter-nextjs/page-props/sitemap/getServerSideProps.js.map +1 -1
  33. package/build/adapter-nextjs/page-props/sitemap/index.js +25 -4
  34. package/build/adapter-nextjs/page-props/sitemap/index.js.map +1 -1
  35. package/build/adapter-nextjs/page-props/sitemap/types.js +3 -1
  36. package/build/adapter-nextjs/page-props/story.js +64 -77
  37. package/build/adapter-nextjs/page-props/story.js.map +1 -1
  38. package/build/adapter-nextjs/page-props/storyPreview.js +26 -27
  39. package/build/adapter-nextjs/page-props/storyPreview.js.map +1 -1
  40. package/build/adapter-nextjs/processRequest.js +25 -34
  41. package/build/adapter-nextjs/processRequest.js.map +1 -1
  42. package/build/adapter-nextjs/processStaticRequest.js +16 -19
  43. package/build/adapter-nextjs/processStaticRequest.js.map +1 -1
  44. package/build/components-nextjs/PageSeo/PageSeo.js +78 -84
  45. package/build/components-nextjs/PageSeo/PageSeo.js.map +1 -1
  46. package/build/components-nextjs/PageSeo/index.js +21 -2
  47. package/build/components-nextjs/PageSeo/index.js.map +1 -1
  48. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js +10 -5
  49. package/build/components-nextjs/PageSeo/lib/getAbsoluteUrl.js.map +1 -1
  50. package/build/components-nextjs/PageSeo/lib/types.js +3 -1
  51. package/build/components-nextjs/StorySeo/StorySeo.js +49 -69
  52. package/build/components-nextjs/StorySeo/StorySeo.js.map +1 -1
  53. package/build/components-nextjs/StorySeo/index.js +6 -1
  54. package/build/components-nextjs/StorySeo/index.js.map +1 -1
  55. package/build/components-nextjs/document.d.ts +2 -4
  56. package/build/components-nextjs/document.js +48 -34
  57. package/build/components-nextjs/document.js.map +1 -1
  58. package/build/components-nextjs/index.js +10 -3
  59. package/build/components-nextjs/index.js.map +1 -1
  60. package/build/data-fetching/api/PrezlyApi.js +191 -207
  61. package/build/data-fetching/api/PrezlyApi.js.map +1 -1
  62. package/build/data-fetching/api/getPrezlyApi.js +21 -21
  63. package/build/data-fetching/api/getPrezlyApi.js.map +1 -1
  64. package/build/data-fetching/api/index.js +18 -1
  65. package/build/data-fetching/api/index.js.map +1 -1
  66. package/build/data-fetching/api/queries.js +47 -76
  67. package/build/data-fetching/api/queries.js.map +1 -1
  68. package/build/data-fetching/index.js +20 -3
  69. package/build/data-fetching/index.js.map +1 -1
  70. package/build/data-fetching/lib/getAlgoliaSettings.js +22 -22
  71. package/build/data-fetching/lib/getAlgoliaSettings.js.map +1 -1
  72. package/build/data-fetching/lib/getEnvVariables.js +38 -35
  73. package/build/data-fetching/lib/getEnvVariables.js.map +1 -1
  74. package/build/data-fetching/lib/index.js +12 -4
  75. package/build/data-fetching/lib/index.js.map +1 -1
  76. package/build/data-fetching/lib/isSdkError.js +8 -3
  77. package/build/data-fetching/lib/isSdkError.js.map +1 -1
  78. package/build/data-fetching/lib/isUuid.js +8 -3
  79. package/build/data-fetching/lib/isUuid.js.map +1 -1
  80. package/build/data-fetching/types.js +3 -1
  81. package/build/index.js +26 -9
  82. package/build/index.js.map +1 -1
  83. package/build/infinite-loading/index.js +25 -4
  84. package/build/infinite-loading/index.js.map +1 -1
  85. package/build/infinite-loading/types.js +3 -1
  86. package/build/infinite-loading/useInfiniteGalleriesLoading.js +37 -42
  87. package/build/infinite-loading/useInfiniteGalleriesLoading.js.map +1 -1
  88. package/build/infinite-loading/useInfiniteLoading.js +43 -50
  89. package/build/infinite-loading/useInfiniteLoading.js.map +1 -1
  90. package/build/infinite-loading/useInfiniteStoriesLoading.js +50 -56
  91. package/build/infinite-loading/useInfiniteStoriesLoading.js.map +1 -1
  92. package/build/intl/index.d.ts +1 -1
  93. package/build/intl/index.js +26 -4
  94. package/build/intl/index.js.map +1 -1
  95. package/build/intl/languages.js +122 -146
  96. package/build/intl/languages.js.map +1 -1
  97. package/build/intl/locale.d.ts +1 -0
  98. package/build/intl/locale.js +108 -52
  99. package/build/intl/locale.js.map +1 -1
  100. package/build/intl/localeConfig.d.ts +2 -3
  101. package/build/intl/localeConfig.js +14 -20
  102. package/build/intl/localeConfig.js.map +1 -1
  103. package/build/intl/localeList.d.ts +2 -4
  104. package/build/intl/localeList.js +109 -1
  105. package/build/intl/localeList.js.map +1 -1
  106. package/build/intl/localeObject.js +82 -80
  107. package/build/intl/localeObject.js.map +1 -1
  108. package/build/newsroom-context/context.js +25 -35
  109. package/build/newsroom-context/context.js.map +1 -1
  110. package/build/newsroom-context/hooks/index.js +28 -11
  111. package/build/newsroom-context/hooks/index.js.map +1 -1
  112. package/build/newsroom-context/hooks/useAlgoliaSettings.js +10 -5
  113. package/build/newsroom-context/hooks/useAlgoliaSettings.js.map +1 -1
  114. package/build/newsroom-context/hooks/useCategories.js +10 -5
  115. package/build/newsroom-context/hooks/useCategories.js.map +1 -1
  116. package/build/newsroom-context/hooks/useCompanyInformation.js +10 -5
  117. package/build/newsroom-context/hooks/useCompanyInformation.js.map +1 -1
  118. package/build/newsroom-context/hooks/useCurrentCategory.js +10 -5
  119. package/build/newsroom-context/hooks/useCurrentCategory.js.map +1 -1
  120. package/build/newsroom-context/hooks/useCurrentLocale.js +10 -5
  121. package/build/newsroom-context/hooks/useCurrentLocale.js.map +1 -1
  122. package/build/newsroom-context/hooks/useCurrentStory.js +10 -5
  123. package/build/newsroom-context/hooks/useCurrentStory.js.map +1 -1
  124. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js +21 -17
  125. package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js.map +1 -1
  126. package/build/newsroom-context/hooks/useGetTranslationUrl.js +56 -52
  127. package/build/newsroom-context/hooks/useGetTranslationUrl.js.map +1 -1
  128. package/build/newsroom-context/hooks/useLanguages.js +10 -5
  129. package/build/newsroom-context/hooks/useLanguages.js.map +1 -1
  130. package/build/newsroom-context/hooks/useNewsroom.js +10 -5
  131. package/build/newsroom-context/hooks/useNewsroom.js.map +1 -1
  132. package/build/newsroom-context/hooks/useNewsroomContext.js +16 -11
  133. package/build/newsroom-context/hooks/useNewsroomContext.js.map +1 -1
  134. package/build/newsroom-context/index.d.ts +1 -2
  135. package/build/newsroom-context/index.js +22 -2
  136. package/build/newsroom-context/index.js.map +1 -1
  137. package/build/sentry/client.js +9 -4
  138. package/build/sentry/client.js.map +1 -1
  139. package/build/sentry/common.js +29 -26
  140. package/build/sentry/common.js.map +1 -1
  141. package/build/sentry/index.js +8 -2
  142. package/build/sentry/index.js.map +1 -1
  143. package/build/sentry/server.js +9 -4
  144. package/build/sentry/server.js.map +1 -1
  145. package/build/tsconfig.tsbuildinfo +1 -0
  146. package/build/types.js +3 -1
  147. package/build/utils/boilerplate.js +22 -7
  148. package/build/utils/boilerplate.js.map +1 -1
  149. package/build/utils/constants.js +7 -3
  150. package/build/utils/constants.js.map +1 -1
  151. package/build/utils/getAssetsUrl.js +9 -4
  152. package/build/utils/getAssetsUrl.js.map +1 -1
  153. package/build/utils/getDataRequestLink.js +12 -6
  154. package/build/utils/getDataRequestLink.js.map +1 -1
  155. package/build/utils/getLocalizedCategoryData.js +33 -33
  156. package/build/utils/getLocalizedCategoryData.js.map +1 -1
  157. package/build/utils/getNewsroomLogoUrl.js +21 -15
  158. package/build/utils/getNewsroomLogoUrl.js.map +1 -1
  159. package/build/utils/getPrivacyPortalUrl.js +13 -11
  160. package/build/utils/getPrivacyPortalUrl.js.map +1 -1
  161. package/build/utils/getStoryPublicationDate.js +14 -9
  162. package/build/utils/getStoryPublicationDate.js.map +1 -1
  163. package/build/utils/getUploadcareGroupUrl.js +10 -5
  164. package/build/utils/getUploadcareGroupUrl.js.map +1 -1
  165. package/build/utils/index.js +27 -10
  166. package/build/utils/index.js.map +1 -1
  167. package/build/utils/isEmbargoStory.js +8 -3
  168. package/build/utils/isEmbargoStory.js.map +1 -1
  169. package/package.json +13 -28
  170. package/src/@types/global.d.ts +7 -0
  171. package/src/__mocks__/languages.ts +416 -0
  172. package/src/__mocks__/story.ts +359 -0
  173. package/src/adapter-nextjs/api-handlers/fetchGalleries.ts +24 -0
  174. package/src/adapter-nextjs/api-handlers/fetchStories.ts +26 -0
  175. package/src/adapter-nextjs/api-handlers/index.ts +2 -0
  176. package/src/adapter-nextjs/getNewsroomServerSideProps.ts +29 -0
  177. package/src/adapter-nextjs/getNewsroomStaticProps.ts +29 -0
  178. package/src/adapter-nextjs/index.ts +6 -0
  179. package/src/adapter-nextjs/page-props/category.ts +157 -0
  180. package/src/adapter-nextjs/page-props/gallery.ts +114 -0
  181. package/src/adapter-nextjs/page-props/galleryAlbum.ts +89 -0
  182. package/src/adapter-nextjs/page-props/home.ts +113 -0
  183. package/src/adapter-nextjs/page-props/index.ts +26 -0
  184. package/src/adapter-nextjs/page-props/lib/types.ts +8 -0
  185. package/src/adapter-nextjs/page-props/search.ts +53 -0
  186. package/src/adapter-nextjs/page-props/sitemap/SitemapBuilder.ts +56 -0
  187. package/src/adapter-nextjs/page-props/sitemap/createPaths.ts +21 -0
  188. package/src/adapter-nextjs/page-props/sitemap/getServerSideProps.ts +43 -0
  189. package/src/adapter-nextjs/page-props/sitemap/index.ts +5 -0
  190. package/src/adapter-nextjs/page-props/sitemap/types.ts +5 -0
  191. package/src/adapter-nextjs/page-props/story.ts +94 -0
  192. package/src/adapter-nextjs/page-props/storyPreview.ts +33 -0
  193. package/src/adapter-nextjs/processRequest.ts +49 -0
  194. package/src/adapter-nextjs/processStaticRequest.ts +32 -0
  195. package/src/components-nextjs/PageSeo/PageSeo.tsx +131 -0
  196. package/src/components-nextjs/PageSeo/index.ts +2 -0
  197. package/src/components-nextjs/PageSeo/lib/getAbsoluteUrl.ts +7 -0
  198. package/src/components-nextjs/PageSeo/lib/types.ts +4 -0
  199. package/src/components-nextjs/StorySeo/StorySeo.tsx +82 -0
  200. package/src/components-nextjs/StorySeo/index.ts +1 -0
  201. package/src/components-nextjs/document.tsx +38 -0
  202. package/src/components-nextjs/index.ts +3 -0
  203. package/src/data-fetching/api/PrezlyApi.ts +304 -0
  204. package/src/data-fetching/api/getPrezlyApi.ts +24 -0
  205. package/src/data-fetching/api/index.ts +1 -0
  206. package/src/data-fetching/api/queries.ts +51 -0
  207. package/src/data-fetching/index.ts +3 -0
  208. package/src/data-fetching/lib/getAlgoliaSettings.ts +29 -0
  209. package/src/data-fetching/lib/getEnvVariables.ts +46 -0
  210. package/src/data-fetching/lib/index.ts +4 -0
  211. package/src/data-fetching/lib/isSdkError.ts +5 -0
  212. package/src/data-fetching/lib/isUuid.ts +5 -0
  213. package/src/data-fetching/types.ts +14 -0
  214. package/src/index.ts +9 -0
  215. package/src/infinite-loading/index.ts +4 -0
  216. package/src/infinite-loading/types.ts +5 -0
  217. package/src/infinite-loading/useInfiniteGalleriesLoading.ts +53 -0
  218. package/src/infinite-loading/useInfiniteLoading.ts +66 -0
  219. package/src/infinite-loading/useInfiniteStoriesLoading.ts +81 -0
  220. package/src/intl/index.ts +4 -0
  221. package/src/intl/languages.test.ts +232 -0
  222. package/src/intl/languages.ts +233 -0
  223. package/src/intl/locale.test.ts +95 -0
  224. package/src/intl/locale.ts +140 -0
  225. package/src/intl/localeConfig.js +23 -0
  226. package/src/intl/localeList.js +110 -0
  227. package/src/intl/localeObject.test.ts +81 -0
  228. package/src/intl/localeObject.ts +99 -0
  229. package/src/newsroom-context/context.tsx +115 -0
  230. package/src/newsroom-context/hooks/index.ts +11 -0
  231. package/src/newsroom-context/hooks/useAlgoliaSettings.ts +7 -0
  232. package/src/newsroom-context/hooks/useCategories.ts +7 -0
  233. package/src/newsroom-context/hooks/useCompanyInformation.ts +7 -0
  234. package/src/newsroom-context/hooks/useCurrentCategory.ts +7 -0
  235. package/src/newsroom-context/hooks/useCurrentLocale.ts +7 -0
  236. package/src/newsroom-context/hooks/useCurrentStory.ts +7 -0
  237. package/src/newsroom-context/hooks/useGetLinkLocaleSlug.ts +37 -0
  238. package/src/newsroom-context/hooks/useGetTranslationUrl.ts +97 -0
  239. package/src/newsroom-context/hooks/useLanguages.ts +7 -0
  240. package/src/newsroom-context/hooks/useNewsroom.ts +7 -0
  241. package/src/newsroom-context/hooks/useNewsroomContext.ts +15 -0
  242. package/src/newsroom-context/index.ts +2 -0
  243. package/src/sentry/client.ts +7 -0
  244. package/src/sentry/common.ts +27 -0
  245. package/src/sentry/index.ts +2 -0
  246. package/src/sentry/server.ts +7 -0
  247. package/src/types.ts +51 -0
  248. package/src/utils/boilerplate.ts +27 -0
  249. package/src/utils/constants.ts +3 -0
  250. package/src/utils/getAssetsUrl.test.ts +9 -0
  251. package/src/utils/getAssetsUrl.ts +9 -0
  252. package/src/utils/getDataRequestLink.ts +14 -0
  253. package/src/utils/getLocalizedCategoryData.ts +47 -0
  254. package/src/utils/getNewsroomLogoUrl.ts +22 -0
  255. package/src/utils/getPrivacyPortalUrl.ts +25 -0
  256. package/src/utils/getStoryPublicationDate.tsx +15 -0
  257. package/src/utils/getUploadcareGroupUrl.ts +13 -0
  258. package/src/utils/index.ts +10 -0
  259. package/src/utils/isEmbargoStory.ts +10 -0
  260. package/build/@types/global.d.js +0 -1
@@ -1,89 +1,83 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import { NextSeo } from 'next-seo';
3
- import { useRouter } from "next/router.js";
4
- import { useMemo } from 'react';
5
- import { getUsedLanguages, LocaleObject } from "../../intl/index.js";
6
- import { useCompanyInformation, useCurrentLocale, useCurrentStory, useGetLinkLocaleSlug, useGetTranslationUrl, useLanguages, useNewsroom } from "../../newsroom-context/index.js";
7
- import { getNewsroomLogoUrl } from "../../utils/index.js";
8
- import { getAbsoluteUrl } from "./lib/getAbsoluteUrl.js";
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PageSeo = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const next_seo_1 = require("next-seo");
6
+ const router_1 = require("next/router");
7
+ const react_1 = require("react");
8
+ const intl_1 = require("../../intl");
9
+ const newsroom_context_1 = require("../../newsroom-context");
10
+ const utils_1 = require("../../utils");
11
+ const getAbsoluteUrl_1 = require("./lib/getAbsoluteUrl");
9
12
  /**
10
13
  * This component provides base page attributes for every Newsroom page.
11
14
  * It depends on information from NewsroomContext, so the component should be placed inside the `NewsroomContextProvider`.
12
15
  * You can pass additional props expected by NextSeo component to override any info that is provided by the NewsroomContext.
13
16
  */
14
- export function PageSeo({
15
- title,
16
- description,
17
- imageUrl,
18
- canonical,
19
- openGraph,
20
- twitter,
21
- ...nextSeoProps
22
- }) {
23
- const companyInformation = useCompanyInformation();
24
- const newsroom = useNewsroom();
25
- const currentLocale = useCurrentLocale();
26
- const languages = useLanguages();
27
- const getTranslationUrl = useGetTranslationUrl();
28
- const getLinkLocaleSlug = useGetLinkLocaleSlug();
29
- const currentStory = useCurrentStory();
30
- const {
31
- asPath
32
- } = useRouter();
33
- const pageTitle = title || companyInformation.name;
34
- const pageDescription = description || companyInformation.about_plaintext;
35
- const canonicalUrl = canonical || getAbsoluteUrl(asPath, newsroom.url, getLinkLocaleSlug(currentLocale));
36
- const siteName = companyInformation.name;
37
- const logoUrl = imageUrl || getNewsroomLogoUrl(newsroom);
38
- const alternateLanguageLinks = useMemo(() => {
39
- if (!languages.length) {
40
- return [];
41
- }
42
- const alternateLanguages = getUsedLanguages(languages).filter(language => language.code !== currentLocale.toUnderscoreCode());
43
- return alternateLanguages.map(language => {
44
- const locale = LocaleObject.fromAnyCode(language.code);
45
- const translationLink = getTranslationUrl(locale, true);
46
- if (!translationLink) {
47
- return undefined;
48
- }
49
- return {
50
- hrefLang: locale.toHyphenCode(),
51
- href: getAbsoluteUrl(translationLink, newsroom.url, currentStory && translationLink !== '/' ? false : getLinkLocaleSlug(locale))
52
- };
53
- }).filter(Boolean);
54
- }, [currentLocale, getLinkLocaleSlug, getTranslationUrl, languages, newsroom.url, currentStory]);
55
- return /*#__PURE__*/React.createElement(NextSeo, _extends({
56
- title: pageTitle,
57
- description: pageDescription,
58
- canonical: canonicalUrl,
59
- noindex: nextSeoProps.noindex ?? !newsroom.is_indexable,
60
- nofollow: nextSeoProps.nofollow ?? !newsroom.is_indexable,
61
- openGraph: {
62
- url: canonicalUrl,
63
- title: pageTitle,
64
- description: pageDescription,
65
- locale: currentLocale.toUnderscoreCode(),
66
- images: [{
67
- url: logoUrl,
68
- alt: pageTitle
69
- }],
70
- site_name: siteName,
71
- ...openGraph
72
- },
73
- twitter: {
74
- site: siteName,
75
- cardType: 'summary',
76
- ...twitter
77
- },
78
- additionalMetaTags: [{
79
- name: 'twitter:image',
80
- content: logoUrl
81
- }],
82
- additionalLinkTags: [{
83
- rel: 'alternate',
84
- type: 'application/rss+xml',
85
- href: getAbsoluteUrl('/feed', newsroom.url)
86
- }],
87
- languageAlternates: alternateLanguageLinks
88
- }, nextSeoProps));
89
- }
17
+ function PageSeo({ title, description, imageUrl, canonical, openGraph, twitter, ...nextSeoProps }) {
18
+ const companyInformation = (0, newsroom_context_1.useCompanyInformation)();
19
+ const newsroom = (0, newsroom_context_1.useNewsroom)();
20
+ const currentLocale = (0, newsroom_context_1.useCurrentLocale)();
21
+ const languages = (0, newsroom_context_1.useLanguages)();
22
+ const getTranslationUrl = (0, newsroom_context_1.useGetTranslationUrl)();
23
+ const getLinkLocaleSlug = (0, newsroom_context_1.useGetLinkLocaleSlug)();
24
+ const currentStory = (0, newsroom_context_1.useCurrentStory)();
25
+ const { asPath } = (0, router_1.useRouter)();
26
+ const pageTitle = title || companyInformation.name;
27
+ const pageDescription = description || companyInformation.about_plaintext;
28
+ const canonicalUrl = canonical || (0, getAbsoluteUrl_1.getAbsoluteUrl)(asPath, newsroom.url, getLinkLocaleSlug(currentLocale));
29
+ const siteName = companyInformation.name;
30
+ const logoUrl = imageUrl || (0, utils_1.getNewsroomLogoUrl)(newsroom);
31
+ const alternateLanguageLinks = (0, react_1.useMemo)(() => {
32
+ if (!languages.length) {
33
+ return [];
34
+ }
35
+ const alternateLanguages = (0, intl_1.getUsedLanguages)(languages).filter((language) => language.code !== currentLocale.toUnderscoreCode());
36
+ return alternateLanguages
37
+ .map((language) => {
38
+ const locale = intl_1.LocaleObject.fromAnyCode(language.code);
39
+ const translationLink = getTranslationUrl(locale, true);
40
+ if (!translationLink) {
41
+ return undefined;
42
+ }
43
+ return {
44
+ hrefLang: locale.toHyphenCode(),
45
+ href: (0, getAbsoluteUrl_1.getAbsoluteUrl)(translationLink, newsroom.url, currentStory && translationLink !== '/' ? false : getLinkLocaleSlug(locale)),
46
+ };
47
+ })
48
+ .filter(Boolean);
49
+ }, [
50
+ currentLocale,
51
+ getLinkLocaleSlug,
52
+ getTranslationUrl,
53
+ languages,
54
+ newsroom.url,
55
+ currentStory,
56
+ ]);
57
+ return ((0, jsx_runtime_1.jsx)(next_seo_1.NextSeo, { title: pageTitle, description: pageDescription, canonical: canonicalUrl, noindex: nextSeoProps.noindex ?? !newsroom.is_indexable, nofollow: nextSeoProps.nofollow ?? !newsroom.is_indexable, openGraph: {
58
+ url: canonicalUrl,
59
+ title: pageTitle,
60
+ description: pageDescription,
61
+ locale: currentLocale.toUnderscoreCode(),
62
+ images: [
63
+ {
64
+ url: logoUrl,
65
+ alt: pageTitle,
66
+ },
67
+ ],
68
+ site_name: siteName,
69
+ ...openGraph,
70
+ }, twitter: {
71
+ site: siteName,
72
+ cardType: 'summary',
73
+ ...twitter,
74
+ }, additionalMetaTags: [{ name: 'twitter:image', content: logoUrl }], additionalLinkTags: [
75
+ {
76
+ rel: 'alternate',
77
+ type: 'application/rss+xml',
78
+ href: (0, getAbsoluteUrl_1.getAbsoluteUrl)('/feed', newsroom.url),
79
+ },
80
+ ], languageAlternates: alternateLanguageLinks, ...nextSeoProps }));
81
+ }
82
+ exports.PageSeo = PageSeo;
83
+ //# sourceMappingURL=PageSeo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageSeo.js","sourceRoot":"","sources":["../../../src/components-nextjs/PageSeo/PageSeo.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PageSeo.js","sourceRoot":"","sources":["../../../src/components-nextjs/PageSeo/PageSeo.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,21 @@
1
- export { PageSeo } from "./PageSeo.js";
2
- export * from "./lib/types.js";
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
+ exports.PageSeo = void 0;
18
+ var PageSeo_1 = require("./PageSeo");
19
+ Object.defineProperty(exports, "PageSeo", { enumerable: true, get: function () { return PageSeo_1.PageSeo; } });
20
+ __exportStar(require("./lib/types"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components-nextjs/PageSeo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components-nextjs/PageSeo/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,8CAA4B"}
@@ -1,6 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAbsoluteUrl = void 0;
1
4
  // Returns absolute URL based on the path and without any query parameters
2
- export function getAbsoluteUrl(path, origin, localeCode) {
3
- const url = new URL(`${localeCode ? `/${localeCode}` : ''}${path || '/'}`, origin);
4
- url.search = '';
5
- return url.toString();
6
- }
5
+ function getAbsoluteUrl(path, origin, localeCode) {
6
+ const url = new URL(`${localeCode ? `/${localeCode}` : ''}${path || '/'}`, origin);
7
+ url.search = '';
8
+ return url.toString();
9
+ }
10
+ exports.getAbsoluteUrl = getAbsoluteUrl;
11
+ //# sourceMappingURL=getAbsoluteUrl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAbsoluteUrl.js","sourceRoot":"","sources":["../../../../src/components-nextjs/PageSeo/lib/getAbsoluteUrl.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,MAAc,EAAE,UAA2B;IACpF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACnF,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;IAEhB,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"getAbsoluteUrl.js","sourceRoot":"","sources":["../../../../src/components-nextjs/PageSeo/lib/getAbsoluteUrl.ts"],"names":[],"mappings":";;;AAAA,0EAA0E;AAC1E,SAAgB,cAAc,CAAC,IAAY,EAAE,MAAc,EAAE,UAA2B;IACpF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACnF,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;IAEhB,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC1B,CAAC;AALD,wCAKC"}
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -1,73 +1,53 @@
1
- import { Story } from '@prezly/sdk';
2
- import { ArticleJsonLd, NextSeo } from 'next-seo';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StorySeo = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const sdk_1 = require("@prezly/sdk");
6
+ const next_seo_1 = require("next-seo");
3
7
  /**
4
8
  * This components provides additional page attributes for the Story page.
5
9
  * It works in conjunction with `PageSeo` component, overidding some of its attributes.
6
10
  */
7
- export function StorySeo({
8
- story,
9
- noindex
10
- }) {
11
- const {
12
- title,
13
- subtitle,
14
- published_at,
15
- updated_at,
16
- author,
17
- oembed,
18
- newsroom,
19
- summary
20
- } = story;
21
- const authorName = author?.display_name || author?.email || 'Unknown';
22
- const description = subtitle || summary;
23
- const indexable = newsroom.is_indexable && story.visibility === Story.Visibility.PUBLIC;
24
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(NextSeo, {
25
- title: title,
26
- description: description,
27
- canonical: oembed.url,
28
- noindex: noindex ?? !indexable,
29
- nofollow: noindex ?? !indexable,
30
- openGraph: {
31
- title,
32
- description,
33
- url: oembed.url,
34
- site_name: newsroom.display_name,
35
- type: 'article',
36
- article: {
37
- publishedTime: published_at || undefined,
38
- modifiedTime: updated_at,
39
- authors: [authorName]
40
- },
41
- ...(oembed.thumbnail_url && {
42
- images: [{
43
- url: oembed.thumbnail_url,
44
- alt: oembed.title,
45
- width: oembed.thumbnail_width,
46
- height: oembed.thumbnail_height
47
- }]
48
- })
49
- },
50
- additionalMetaTags: oembed.thumbnail_url ? [{
51
- name: 'twitter:card',
52
- content: 'summary_large_image'
53
- }, {
54
- name: 'twitter:image',
55
- content: oembed.thumbnail_url
56
- }] : undefined,
57
- additionalLinkTags: [{
58
- rel: 'alternate',
59
- type: 'application/json',
60
- href: `${oembed.url}.json`
61
- }]
62
- }), /*#__PURE__*/React.createElement(ArticleJsonLd, {
63
- url: oembed.url,
64
- title: title,
65
- images: oembed.thumbnail_url ? [oembed.thumbnail_url] : [],
66
- datePublished: published_at || '',
67
- dateModified: updated_at,
68
- authorName: [authorName],
69
- publisherName: newsroom.display_name,
70
- publisherLogo: newsroom.thumbnail_url,
71
- description: description
72
- }));
73
- }
11
+ function StorySeo({ story, noindex }) {
12
+ const { title, subtitle, published_at, updated_at, author, oembed, newsroom, summary } = story;
13
+ const authorName = author?.display_name || author?.email || 'Unknown';
14
+ const seoTitle = story.seo_settings.meta_title || title;
15
+ const seoDescription = story.seo_settings.meta_description || subtitle || summary;
16
+ const canonical = story.seo_settings.canonical_url || oembed.url;
17
+ const indexable = newsroom.is_indexable && story.visibility === sdk_1.Story.Visibility.PUBLIC;
18
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(next_seo_1.NextSeo, { title: seoTitle, description: seoDescription, canonical: canonical, noindex: noindex ?? !indexable, nofollow: noindex ?? !indexable, openGraph: {
19
+ title,
20
+ description: seoDescription,
21
+ url: oembed.url,
22
+ site_name: newsroom.display_name,
23
+ type: 'article',
24
+ article: {
25
+ publishedTime: published_at || undefined,
26
+ modifiedTime: updated_at,
27
+ authors: [authorName],
28
+ },
29
+ ...(oembed.thumbnail_url && {
30
+ images: [
31
+ {
32
+ url: oembed.thumbnail_url,
33
+ alt: oembed.title,
34
+ width: oembed.thumbnail_width,
35
+ height: oembed.thumbnail_height,
36
+ },
37
+ ],
38
+ }),
39
+ }, additionalMetaTags: oembed.thumbnail_url
40
+ ? [
41
+ { name: 'twitter:card', content: 'summary_large_image' },
42
+ { name: 'twitter:image', content: oembed.thumbnail_url },
43
+ ]
44
+ : undefined, additionalLinkTags: [
45
+ {
46
+ rel: 'alternate',
47
+ type: 'application/json',
48
+ href: `${oembed.url}.json`,
49
+ },
50
+ ] }), (0, jsx_runtime_1.jsx)(next_seo_1.ArticleJsonLd, { url: oembed.url, title: title, images: oembed.thumbnail_url ? [oembed.thumbnail_url] : [], datePublished: published_at || '', dateModified: updated_at, authorName: [authorName], publisherName: newsroom.display_name, publisherLogo: newsroom.thumbnail_url, description: seoDescription })] }));
51
+ }
52
+ exports.StorySeo = StorySeo;
53
+ //# sourceMappingURL=StorySeo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorySeo.js","sourceRoot":"","sources":["../../../src/components-nextjs/StorySeo/StorySeo.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAOlD;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAS;IAC9C,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE/F,MAAM,UAAU,GAAG,MAAM,EAAE,YAAY,IAAI,MAAM,EAAE,KAAK,IAAI,SAAS,CAAC;IACtE,MAAM,WAAW,GAAG,QAAQ,IAAI,OAAO,CAAC;IACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;IAExF,OAAO,CACH,8BACI,KAAC,OAAO,IACJ,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,CAAC,GAAG,EACrB,OAAO,EAAE,OAAO,IAAI,CAAC,SAAS,EAC9B,QAAQ,EAAE,OAAO,IAAI,CAAC,SAAS,EAC/B,SAAS,EAAE;oBACP,KAAK;oBACL,WAAW;oBACX,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,SAAS,EAAE,QAAQ,CAAC,YAAY;oBAChC,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACL,aAAa,EAAE,YAAY,IAAI,SAAS;wBACxC,YAAY,EAAE,UAAU;wBACxB,OAAO,EAAE,CAAC,UAAU,CAAC;qBACxB;oBACD,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI;wBACxB,MAAM,EAAE;4BACJ;gCACI,GAAG,EAAE,MAAM,CAAC,aAAa;gCACzB,GAAG,EAAE,MAAM,CAAC,KAAK;gCACjB,KAAK,EAAE,MAAM,CAAC,eAAe;gCAC7B,MAAM,EAAE,MAAM,CAAC,gBAAgB;6BAClC;yBACJ;qBACJ,CAAC;iBACL,EACD,kBAAkB,EACd,MAAM,CAAC,aAAa;oBAChB,CAAC,CAAC;wBACI,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE;wBACxD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE;qBAC3D;oBACH,CAAC,CAAC,SAAS,EAEnB,kBAAkB,EAAE;oBAChB;wBACI,GAAG,EAAE,WAAW;wBAChB,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,OAAO;qBAC7B;iBACJ,GACH,EACF,KAAC,aAAa,IACV,GAAG,EAAE,MAAM,CAAC,GAAG,EACf,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,EAC1D,aAAa,EAAE,YAAY,IAAI,EAAE,EACjC,YAAY,EAAE,UAAU,EACxB,UAAU,EAAE,CAAC,UAAU,CAAC,EACxB,aAAa,EAAE,QAAQ,CAAC,YAAY,EACpC,aAAa,EAAE,QAAQ,CAAC,aAAa,EACrC,WAAW,EAAE,WAAW,GAC1B,IACH,CACN,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"StorySeo.js","sourceRoot":"","sources":["../../../src/components-nextjs/StorySeo/StorySeo.tsx"],"names":[],"mappings":";;;;AACA,qCAAoC;AACpC,uCAAkD;AAOlD;;;GAGG;AACH,SAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAS;IAC9C,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE/F,MAAM,UAAU,GAAG,MAAM,EAAE,YAAY,IAAI,MAAM,EAAE,KAAK,IAAI,SAAS,CAAC;IACtE,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,IAAI,KAAK,CAAC;IACxD,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,gBAAgB,IAAI,QAAQ,IAAI,OAAO,CAAC;IAClF,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,aAAa,IAAI,MAAM,CAAC,GAAG,CAAC;IACjE,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,IAAI,KAAK,CAAC,UAAU,KAAK,WAAK,CAAC,UAAU,CAAC,MAAM,CAAC;IAExF,OAAO,CACH,6DACI,uBAAC,kBAAO,IACJ,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,cAAc,EAC3B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,IAAI,CAAC,SAAS,EAC9B,QAAQ,EAAE,OAAO,IAAI,CAAC,SAAS,EAC/B,SAAS,EAAE;oBACP,KAAK;oBACL,WAAW,EAAE,cAAc;oBAC3B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,SAAS,EAAE,QAAQ,CAAC,YAAY;oBAChC,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACL,aAAa,EAAE,YAAY,IAAI,SAAS;wBACxC,YAAY,EAAE,UAAU;wBACxB,OAAO,EAAE,CAAC,UAAU,CAAC;qBACxB;oBACD,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI;wBACxB,MAAM,EAAE;4BACJ;gCACI,GAAG,EAAE,MAAM,CAAC,aAAa;gCACzB,GAAG,EAAE,MAAM,CAAC,KAAK;gCACjB,KAAK,EAAE,MAAM,CAAC,eAAe;gCAC7B,MAAM,EAAE,MAAM,CAAC,gBAAgB;6BAClC;yBACJ;qBACJ,CAAC;iBACL,EACD,kBAAkB,EACd,MAAM,CAAC,aAAa;oBAChB,CAAC,CAAC;wBACI,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE;wBACxD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE;qBAC3D;oBACH,CAAC,CAAC,SAAS,EAEnB,kBAAkB,EAAE;oBAChB;wBACI,GAAG,EAAE,WAAW;wBAChB,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,OAAO;qBAC7B;iBACJ,GACH,EACF,uBAAC,wBAAa,IACV,GAAG,EAAE,MAAM,CAAC,GAAG,EACf,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,EAC1D,aAAa,EAAE,YAAY,IAAI,EAAE,EACjC,YAAY,EAAE,UAAU,EACxB,UAAU,EAAE,CAAC,UAAU,CAAC,EACxB,aAAa,EAAE,QAAQ,CAAC,YAAY,EACpC,aAAa,EAAE,QAAQ,CAAC,aAAa,EACrC,WAAW,EAAE,cAAc,GAC7B,IACH,CACN,CAAC;AACN,CAAC;AApED,4BAoEC"}
@@ -1 +1,6 @@
1
- export { StorySeo } from "./StorySeo.js";
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StorySeo = void 0;
4
+ var StorySeo_1 = require("./StorySeo");
5
+ Object.defineProperty(exports, "StorySeo", { enumerable: true, get: function () { return StorySeo_1.StorySeo; } });
6
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components-nextjs/StorySeo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components-nextjs/StorySeo/index.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
@@ -1,8 +1,6 @@
1
- import type { DocumentProps } from 'next/document';
1
+ /// <reference types="react" />
2
2
  import Document from 'next/document';
3
- import { Component } from 'react';
4
- export declare class PrezlyThemeDocument extends Component<DocumentProps> {
5
- static getInitialProps: typeof Document.getInitialProps;
3
+ export declare class PrezlyThemeDocument extends Document {
6
4
  getLocaleCode(): string;
7
5
  render(): JSX.Element;
8
6
  }
@@ -1,34 +1,48 @@
1
- import Document, { Head, Html, Main, NextScript } from "next/document.js";
2
- import { Component } from 'react';
3
- import { DEFAULT_LOCALE, getLocaleDirection, LocaleObject } from "../intl/index.js";
4
- // Somehow extending the default Next Document class messes up with the ESM build of the package.
5
- export class PrezlyThemeDocument extends Component {
6
- static getInitialProps = Document.getInitialProps;
7
- getLocaleCode() {
8
- const {
9
- newsroomContextProps
10
- // eslint-disable-next-line no-underscore-dangle
11
- } = this.props.__NEXT_DATA__.props.pageProps;
12
-
13
- // In some cases (like server errors) the newsroom context props will not be loaded.
14
- // We need to fall back to default locale to keep the app working.
15
- const {
16
- localeCode
17
- } = newsroomContextProps ?? {
18
- localeCode: DEFAULT_LOCALE
19
- };
20
- return localeCode;
21
- }
22
- render() {
23
- const locale = LocaleObject.fromAnyCode(this.getLocaleCode());
24
- // TODO: The direction can be pulled from the Language object
25
- const direction = getLocaleDirection(locale);
26
- return /*#__PURE__*/React.createElement(Html, {
27
- lang: locale.toHyphenCode(),
28
- dir: direction
29
- }, /*#__PURE__*/React.createElement(Head, null, /*#__PURE__*/React.createElement("meta", {
30
- name: "og:locale",
31
- content: locale.toHyphenCode()
32
- })), /*#__PURE__*/React.createElement("body", null, /*#__PURE__*/React.createElement(Main, null), /*#__PURE__*/React.createElement(NextScript, null)));
33
- }
34
- }
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.PrezlyThemeDocument = void 0;
27
+ const jsx_runtime_1 = require("react/jsx-runtime");
28
+ const document_1 = __importStar(require("next/document"));
29
+ const intl_1 = require("../intl");
30
+ class PrezlyThemeDocument extends document_1.default {
31
+ getLocaleCode() {
32
+ const { newsroomContextProps,
33
+ // eslint-disable-next-line no-underscore-dangle
34
+ } = this.props.__NEXT_DATA__.props.pageProps;
35
+ // In some cases (like server errors) the newsroom context props will not be loaded.
36
+ // We need to fall back to default locale to keep the app working.
37
+ const { localeCode } = newsroomContextProps ?? { localeCode: intl_1.DEFAULT_LOCALE };
38
+ return localeCode;
39
+ }
40
+ render() {
41
+ const locale = intl_1.LocaleObject.fromAnyCode(this.getLocaleCode());
42
+ // TODO: The direction can be pulled from the Language object
43
+ const direction = (0, intl_1.getLocaleDirection)(locale);
44
+ return ((0, jsx_runtime_1.jsxs)(document_1.Html, { lang: locale.toHyphenCode(), dir: direction, children: [(0, jsx_runtime_1.jsx)(document_1.Head, { children: (0, jsx_runtime_1.jsx)("meta", { name: "og:locale", content: locale.toHyphenCode() }) }), (0, jsx_runtime_1.jsxs)("body", { children: [(0, jsx_runtime_1.jsx)(document_1.Main, {}), (0, jsx_runtime_1.jsx)(document_1.NextScript, {})] })] }));
45
+ }
46
+ }
47
+ exports.PrezlyThemeDocument = PrezlyThemeDocument;
48
+ //# sourceMappingURL=document.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/components-nextjs/document.tsx"],"names":[],"mappings":";AACA,OAAO,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG3E,iGAAiG;AACjG,MAAM,OAAO,mBAAoB,SAAQ,SAAwB;IAC7D,MAAM,CAAC,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;IAElD,aAAa;QACT,MAAM,EACF,oBAAoB;QACpB,gDAAgD;UACnD,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,SAAsB,CAAC;QAE1D,oFAAoF;QACpF,kEAAkE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,oBAAoB,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;QAE9E,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,MAAM;QACF,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,6DAA6D;QAC7D,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO,CACH,MAAC,IAAI,IAAC,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,SAAS,aAC7C,KAAC,IAAI,cACD,eAAM,IAAI,EAAC,WAAW,EAAC,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,GAAI,GAEtD,EACP,2BACI,KAAC,IAAI,KAAG,EACR,KAAC,UAAU,KAAG,IACX,IACJ,CACV,CAAC;IACN,CAAC"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/components-nextjs/document.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAuE;AAEvE,kCAA2E;AAG3E,MAAa,mBAAoB,SAAQ,kBAAQ;IAC7C,aAAa;QACT,MAAM,EACF,oBAAoB;QACpB,gDAAgD;UACnD,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,SAAsB,CAAC;QAE1D,oFAAoF;QACpF,kEAAkE;QAClE,MAAM,EAAE,UAAU,EAAE,GAAG,oBAAoB,IAAI,EAAE,UAAU,EAAE,qBAAc,EAAE,CAAC;QAE9E,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,MAAM;QACF,MAAM,MAAM,GAAG,mBAAY,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9D,6DAA6D;QAC7D,MAAM,SAAS,GAAG,IAAA,yBAAkB,EAAC,MAAM,CAAC,CAAC;QAE7C,OAAO,CACH,wBAAC,eAAI,IAAC,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,SAAS,aAC7C,uBAAC,eAAI,cACD,iCAAM,IAAI,EAAC,WAAW,EAAC,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,GAAI,GAEtD,EACP,6CACI,uBAAC,eAAI,KAAG,EACR,uBAAC,qBAAU,KAAG,IACX,IACJ,CACV,CAAC;IACN,CAAC;CACJ;AAhCD,kDAgCC"}
@@ -1,3 +1,10 @@
1
- export { PageSeo } from "./PageSeo/index.js";
2
- export { StorySeo } from "./StorySeo/index.js";
3
- export { PrezlyThemeDocument } from "./document.js";
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PrezlyThemeDocument = exports.StorySeo = exports.PageSeo = void 0;
4
+ var PageSeo_1 = require("./PageSeo");
5
+ Object.defineProperty(exports, "PageSeo", { enumerable: true, get: function () { return PageSeo_1.PageSeo; } });
6
+ var StorySeo_1 = require("./StorySeo");
7
+ Object.defineProperty(exports, "StorySeo", { enumerable: true, get: function () { return StorySeo_1.StorySeo; } });
8
+ var document_1 = require("./document");
9
+ Object.defineProperty(exports, "PrezlyThemeDocument", { enumerable: true, get: function () { return document_1.PrezlyThemeDocument; } });
10
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components-nextjs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components-nextjs/index.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,uCAAiD;AAAxC,+GAAA,mBAAmB,OAAA"}