@prezly/theme-kit-nextjs 1.3.1 → 1.4.0
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.
- package/README.md +15 -11
- package/build/adapter-nextjs/getNewsroomServerSideProps.d.ts +6 -0
- package/build/adapter-nextjs/getNewsroomServerSideProps.js +5 -1
- package/build/adapter-nextjs/getNewsroomServerSideProps.js.map +1 -1
- package/build/adapter-nextjs/processRequest.d.ts +10 -1
- package/build/adapter-nextjs/processRequest.js +9 -0
- package/build/adapter-nextjs/processRequest.js.map +1 -1
- package/build/data-fetching/api/PrezlyApi.d.ts +12 -4
- package/build/data-fetching/api/PrezlyApi.js +13 -2
- package/build/data-fetching/api/PrezlyApi.js.map +1 -1
- package/build/data-fetching/api/getPrezlyApi.d.ts +1 -1
- package/build/data-fetching/api/getPrezlyApi.js +5 -5
- package/build/data-fetching/api/getPrezlyApi.js.map +1 -1
- package/build/data-fetching/api/languages.d.ts +9 -0
- package/build/data-fetching/api/languages.js +9 -0
- package/build/data-fetching/api/languages.js.map +1 -1
- package/build/data-fetching/api/queries.d.ts +5 -5
- package/build/data-fetching/api/queries.js +22 -16
- package/build/data-fetching/api/queries.js.map +1 -1
- package/build/data-fetching/getAssetsUrl.d.ts +4 -0
- package/build/data-fetching/getAssetsUrl.js +4 -0
- package/build/data-fetching/getAssetsUrl.js.map +1 -1
- package/build/data-fetching/getLocalizedCategoryData.d.ts +2 -2
- package/build/data-fetching/getPrivacyPortalUrl.d.ts +1 -1
- package/build/data-fetching/getStoryPublicationDate.d.ts +1 -1
- package/build/data-fetching/getUploadcareGroupUrl.d.ts +7 -0
- package/build/data-fetching/getUploadcareGroupUrl.js +7 -0
- package/build/data-fetching/getUploadcareGroupUrl.js.map +1 -1
- package/build/data-fetching/lib/getAlgoliaSettings.d.ts +2 -2
- package/build/data-fetching/lib/getAlgoliaSettings.js +3 -3
- package/build/data-fetching/lib/getAlgoliaSettings.js.map +1 -1
- package/build/data-fetching/lib/getEnvVariables.d.ts +1 -1
- package/build/data-fetching/lib/getEnvVariables.js +7 -7
- package/build/data-fetching/lib/getEnvVariables.js.map +1 -1
- package/build/data-fetching/types.d.ts +1 -0
- package/build/intl/lang.d.ts +5 -3
- package/build/intl/lang.js +4 -2
- package/build/intl/lang.js.map +1 -1
- package/build/intl/locale.d.ts +5 -1
- package/build/intl/locale.js +9 -0
- package/build/intl/locale.js.map +1 -1
- package/build/intl/localeConfig.js +7 -2
- package/build/intl/localeConfig.js.map +1 -1
- package/build/intl/localeObject.d.ts +23 -0
- package/build/intl/localeObject.js +23 -0
- package/build/intl/localeObject.js.map +1 -1
- package/build/newsroom-context/context.d.ts +40 -3
- package/build/newsroom-context/context.js +6 -2
- package/build/newsroom-context/context.js.map +1 -1
- package/build/newsroom-context/hooks/useAlgoliaSettings.d.ts +1 -1
- package/build/newsroom-context/hooks/useAlgoliaSettings.js +2 -2
- package/build/newsroom-context/hooks/useAlgoliaSettings.js.map +1 -1
- package/build/newsroom-context/hooks/useCategories.d.ts +1 -1
- package/build/newsroom-context/hooks/useCategories.js +2 -2
- package/build/newsroom-context/hooks/useCategories.js.map +1 -1
- package/build/newsroom-context/hooks/useCompanyInformation.d.ts +1 -1
- package/build/newsroom-context/hooks/useCompanyInformation.js +2 -2
- package/build/newsroom-context/hooks/useCompanyInformation.js.map +1 -1
- package/build/newsroom-context/hooks/useCurrentCategory.d.ts +1 -1
- package/build/newsroom-context/hooks/useCurrentCategory.js +2 -2
- package/build/newsroom-context/hooks/useCurrentCategory.js.map +1 -1
- package/build/newsroom-context/hooks/useCurrentLocale.d.ts +1 -1
- package/build/newsroom-context/hooks/useCurrentLocale.js +2 -2
- package/build/newsroom-context/hooks/useCurrentLocale.js.map +1 -1
- package/build/newsroom-context/hooks/useCurrentStory.d.ts +1 -1
- package/build/newsroom-context/hooks/useCurrentStory.js +2 -2
- package/build/newsroom-context/hooks/useCurrentStory.js.map +1 -1
- package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js +6 -1
- package/build/newsroom-context/hooks/useGetLinkLocaleSlug.js.map +1 -1
- package/build/newsroom-context/hooks/useGetTranslationUrl.d.ts +5 -1
- package/build/newsroom-context/hooks/useGetTranslationUrl.js +10 -1
- package/build/newsroom-context/hooks/useGetTranslationUrl.js.map +1 -1
- package/build/newsroom-context/hooks/useLanguages.d.ts +1 -1
- package/build/newsroom-context/hooks/useLanguages.js +2 -2
- package/build/newsroom-context/hooks/useLanguages.js.map +1 -1
- package/build/newsroom-context/hooks/useNewsroom.d.ts +1 -1
- package/build/newsroom-context/hooks/useNewsroom.js +2 -2
- package/build/newsroom-context/hooks/useNewsroom.js.map +1 -1
- package/build/newsroom-context/hooks/useNewsroomContext.d.ts +2 -2
- package/build/newsroom-context/hooks/useNewsroomContext.js +2 -2
- package/build/newsroom-context/hooks/useNewsroomContext.js.map +1 -1
- package/build/types.d.ts +14 -1
- package/package.json +2 -10
- package/src/adapter-nextjs/getNewsroomServerSideProps.ts +7 -1
- package/src/adapter-nextjs/processRequest.ts +10 -1
- package/src/data-fetching/api/PrezlyApi.ts +19 -4
- package/src/data-fetching/api/getPrezlyApi.ts +5 -5
- package/src/data-fetching/api/languages.ts +9 -0
- package/src/data-fetching/api/queries.ts +25 -18
- package/src/data-fetching/getAssetsUrl.ts +4 -0
- package/src/data-fetching/getLocalizedCategoryData.ts +2 -2
- package/src/data-fetching/getPrivacyPortalUrl.ts +1 -1
- package/src/data-fetching/getStoryPublicationDate.tsx +1 -1
- package/src/data-fetching/getUploadcareGroupUrl.ts +7 -0
- package/src/data-fetching/lib/getAlgoliaSettings.ts +4 -4
- package/src/data-fetching/lib/getEnvVariables.ts +7 -7
- package/src/data-fetching/types.ts +1 -0
- package/src/intl/lang.ts +5 -3
- package/src/intl/locale.ts +11 -1
- package/src/intl/localeConfig.js +7 -2
- package/src/intl/localeObject.ts +23 -0
- package/src/newsroom-context/context.tsx +43 -5
- package/src/newsroom-context/hooks/useAlgoliaSettings.ts +2 -2
- package/src/newsroom-context/hooks/useCategories.ts +2 -2
- package/src/newsroom-context/hooks/useCompanyInformation.ts +2 -2
- package/src/newsroom-context/hooks/useCurrentCategory.ts +2 -2
- package/src/newsroom-context/hooks/useCurrentLocale.ts +2 -2
- package/src/newsroom-context/hooks/useCurrentStory.ts +2 -2
- package/src/newsroom-context/hooks/useGetLinkLocaleSlug.ts +6 -1
- package/src/newsroom-context/hooks/useGetTranslationUrl.ts +11 -2
- package/src/newsroom-context/hooks/useLanguages.ts +2 -2
- package/src/newsroom-context/hooks/useNewsroom.ts +2 -2
- package/src/newsroom-context/hooks/useNewsroomContext.ts +4 -3
- package/src/types.ts +14 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { IncomingMessage } from 'http';
|
|
3
3
|
import type { PrezlyEnv } from '../types';
|
|
4
|
-
export declare
|
|
4
|
+
export declare function getEnvVariables(req?: IncomingMessage): PrezlyEnv;
|
|
@@ -16,7 +16,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.getEnvVariables = void 0;
|
|
18
18
|
var parse_data_url_1 = __importDefault(require("parse-data-url"));
|
|
19
|
-
|
|
19
|
+
function decodeJson(json) {
|
|
20
20
|
try {
|
|
21
21
|
var decoded = JSON.parse(json);
|
|
22
22
|
if (decoded && typeof decoded === 'object') {
|
|
@@ -27,8 +27,8 @@ var decodeJson = function (json) {
|
|
|
27
27
|
// passthru
|
|
28
28
|
}
|
|
29
29
|
return {};
|
|
30
|
-
}
|
|
31
|
-
|
|
30
|
+
}
|
|
31
|
+
function decodeHttpEnv(header) {
|
|
32
32
|
if (header.startsWith('data:')) {
|
|
33
33
|
var parsed = (0, parse_data_url_1.default)(header);
|
|
34
34
|
if (parsed && parsed.contentType === 'application/json') {
|
|
@@ -38,9 +38,9 @@ var decodeHttpEnv = function (header) {
|
|
|
38
38
|
return {}; // unsupported data-uri
|
|
39
39
|
}
|
|
40
40
|
return decodeJson(header);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
if (
|
|
41
|
+
}
|
|
42
|
+
function getEnvVariables(req) {
|
|
43
|
+
if (typeof window !== 'undefined') {
|
|
44
44
|
throw new Error('"getEnvVariables" should only be used on back-end side.');
|
|
45
45
|
}
|
|
46
46
|
var headerName = (process.env.HTTP_ENV_HEADER || '').toLowerCase();
|
|
@@ -50,6 +50,6 @@ var getEnvVariables = function (req) {
|
|
|
50
50
|
return __assign(__assign({}, process.env), httpEnv);
|
|
51
51
|
}
|
|
52
52
|
return __assign({}, process.env);
|
|
53
|
-
}
|
|
53
|
+
}
|
|
54
54
|
exports.getEnvVariables = getEnvVariables;
|
|
55
55
|
//# sourceMappingURL=getEnvVariables.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEnvVariables.js","sourceRoot":"","sources":["../../../src/data-fetching/lib/getEnvVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,kEAA0C;AAI1C,
|
|
1
|
+
{"version":3,"file":"getEnvVariables.js","sourceRoot":"","sources":["../../../src/data-fetching/lib/getEnvVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,kEAA0C;AAI1C,SAAS,UAAU,CAAC,IAAY;IAC5B,IAAI;QACA,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACxC,OAAO,OAAO,CAAC;SAClB;KACJ;IAAC,WAAM;QACJ,WAAW;KACd;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACjC,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAM,MAAM,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAC;QACpC,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,KAAK,kBAAkB,EAAE;YACrD,IAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjD,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;SAC3B;QACD,OAAO,EAAE,CAAC,CAAC,uBAAuB;KACrC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,eAAe,CAAC,GAAqB;IACjD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;KAC9E;IAED,IAAM,UAAU,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAErE,IAAI,UAAU,IAAI,GAAG,EAAE;QACnB,IAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAuB,CAAC;QAC7D,IAAM,OAAO,GAAG,aAAa,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QAC5C,6BAAY,OAAO,CAAC,GAAG,GAAK,OAAO,EAAG;KACzC;IAED,oBAAY,OAAO,CAAC,GAAG,EAAG;AAC9B,CAAC;AAdD,0CAcC"}
|
package/build/intl/lang.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { NewsroomLanguageSettings } from '@prezly/sdk';
|
|
1
|
+
import type { NewsroomLanguageSettings } from '@prezly/sdk';
|
|
2
2
|
/**
|
|
3
|
+
* @returns the display name of the locale in its native language
|
|
4
|
+
*
|
|
3
5
|
* If there's only one culture used in a specific language,
|
|
4
6
|
* we strip the culture name completely.
|
|
5
7
|
*
|
|
6
8
|
* Examples:
|
|
7
9
|
* - English (Global), Spanish (Spain)
|
|
8
|
-
*
|
|
10
|
+
* - -> English, Spanish
|
|
9
11
|
* - English (Global), English (UK), Spanish (Spain)
|
|
10
|
-
*
|
|
12
|
+
* - -> English (Global), English (UK), Spanish
|
|
11
13
|
*/
|
|
12
14
|
export declare function getLanguageDisplayName(language: NewsroomLanguageSettings, languages: NewsroomLanguageSettings[]): string;
|
package/build/intl/lang.js
CHANGED
|
@@ -9,14 +9,16 @@ function isOnlyCulture(culture, languages) {
|
|
|
9
9
|
return numberOfLanguages === 1;
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
+
* @returns the display name of the locale in its native language
|
|
13
|
+
*
|
|
12
14
|
* If there's only one culture used in a specific language,
|
|
13
15
|
* we strip the culture name completely.
|
|
14
16
|
*
|
|
15
17
|
* Examples:
|
|
16
18
|
* - English (Global), Spanish (Spain)
|
|
17
|
-
*
|
|
19
|
+
* - -> English, Spanish
|
|
18
20
|
* - English (Global), English (UK), Spanish (Spain)
|
|
19
|
-
*
|
|
21
|
+
* - -> English (Global), English (UK), Spanish
|
|
20
22
|
*/
|
|
21
23
|
function getLanguageDisplayName(language, languages) {
|
|
22
24
|
var locale = language.locale;
|
package/build/intl/lang.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/intl/lang.ts"],"names":[],"mappings":";;;AAEA,SAAS,aAAa,CAAC,OAAmB,EAAE,SAAqC;IAC7E,IAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CACtC,UAAC,EAA6B;YAAjB,aAAa,0BAAA;QAAS,OAAA,aAAa,KAAK,OAAO,CAAC,aAAa;IAAvC,CAAuC,CAC7E,CAAC,MAAM,CAAC;IAET,OAAO,iBAAiB,KAAK,CAAC,CAAC;AACnC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/intl/lang.ts"],"names":[],"mappings":";;;AAEA,SAAS,aAAa,CAAC,OAAmB,EAAE,SAAqC;IAC7E,IAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CACtC,UAAC,EAA6B;YAAjB,aAAa,0BAAA;QAAS,OAAA,aAAa,KAAK,OAAO,CAAC,aAAa;IAAvC,CAAuC,CAC7E,CAAC,MAAM,CAAC;IAET,OAAO,iBAAiB,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,sBAAsB,CAClC,QAAkC,EAClC,SAAqC;IAE7B,IAAA,MAAM,GAAK,QAAQ,OAAb,CAAc;IAE5B,IAAI,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;QAClC,IAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEzD,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE;YACzB,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAAC,CAAC;SAC5D;KACJ;IAED,OAAO,MAAM,CAAC,WAAW,CAAC;AAC9B,CAAC;AAfD,wDAeC"}
|
package/build/intl/locale.d.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { Redirect } from 'next';
|
|
3
|
-
import { ParsedUrlQuery } from 'querystring';
|
|
3
|
+
import type { ParsedUrlQuery } from 'querystring';
|
|
4
4
|
import { LocaleObject } from './localeObject';
|
|
5
5
|
export declare const DEFAULT_LOCALE = "en";
|
|
6
6
|
export declare const DUMMY_DEFAULT_LOCALE = "qps-ploc";
|
|
7
|
+
/**
|
|
8
|
+
* Use this function to determine which translations file you should load from `@prezly/themes-intl-mesages` package.
|
|
9
|
+
* See https://github.com/prezly/theme-nextjs-bea/blob/main/utils/lang.ts for a usage example.
|
|
10
|
+
*/
|
|
7
11
|
export declare function getSupportedLocaleIsoCode(locale: LocaleObject): string;
|
|
8
12
|
export declare function getRedirectToCanonicalLocale(shortestLocaleCode: string | false, nextLocaleIsoCode: string | undefined, redirectPath: string, query?: ParsedUrlQuery): Redirect | undefined;
|
|
9
13
|
export declare function getLocaleDirection(locale: LocaleObject): 'ltr' | 'rtl';
|
package/build/intl/locale.js
CHANGED
|
@@ -4,7 +4,12 @@ exports.getLocaleDirection = exports.getRedirectToCanonicalLocale = exports.getS
|
|
|
4
4
|
var querystring_1 = require("querystring");
|
|
5
5
|
var localeObject_1 = require("./localeObject");
|
|
6
6
|
exports.DEFAULT_LOCALE = 'en';
|
|
7
|
+
// We use pseudo locale used for localization testing, to reliably determine if we need to fallback to the default newsroom language
|
|
7
8
|
exports.DUMMY_DEFAULT_LOCALE = 'qps-ploc';
|
|
9
|
+
/**
|
|
10
|
+
* This a list of locales that Prezly has translations for. Each code represents a language file in the `@prezly/themes-intl-messages` package.
|
|
11
|
+
* See https://github.com/prezly/themes-intl-messages for more info.
|
|
12
|
+
*/
|
|
8
13
|
var SUPPORTED_LOCALES = [
|
|
9
14
|
'af',
|
|
10
15
|
'ar',
|
|
@@ -53,6 +58,10 @@ var SUPPORTED_LOCALES = [
|
|
|
53
58
|
'zh-CN',
|
|
54
59
|
'zh-TW',
|
|
55
60
|
];
|
|
61
|
+
/**
|
|
62
|
+
* Use this function to determine which translations file you should load from `@prezly/themes-intl-mesages` package.
|
|
63
|
+
* See https://github.com/prezly/theme-nextjs-bea/blob/main/utils/lang.ts for a usage example.
|
|
64
|
+
*/
|
|
56
65
|
function getSupportedLocaleIsoCode(locale) {
|
|
57
66
|
var localeIsoCode = locale.toHyphenCode();
|
|
58
67
|
var isSupportedLocale = localeIsoCode.length >= 2 && SUPPORTED_LOCALES.includes(localeIsoCode);
|
package/build/intl/locale.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/intl/locale.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/intl/locale.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,11 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
24
24
|
}
|
|
25
25
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
26
|
};
|
|
27
|
-
|
|
27
|
+
/**
|
|
28
|
+
* This list is pulled from the main Prezly application. The underscores are replaced with dashes.
|
|
29
|
+
* Together with permutation performed lower in the code,
|
|
30
|
+
* the exported list represents all of the possible locale codes that Next.js theme application might accept.
|
|
31
|
+
*/
|
|
28
32
|
var supportedLocales = [
|
|
29
33
|
'af-ZA',
|
|
30
34
|
'ar',
|
|
@@ -59,6 +63,7 @@ var supportedLocales = [
|
|
|
59
63
|
'en-IE',
|
|
60
64
|
'en-IL',
|
|
61
65
|
'en-IN',
|
|
66
|
+
'en-JM',
|
|
62
67
|
'en-JP',
|
|
63
68
|
'en-KH',
|
|
64
69
|
'en-KR',
|
|
@@ -128,7 +133,7 @@ var supportedLocales = [
|
|
|
128
133
|
'zh-CN',
|
|
129
134
|
];
|
|
130
135
|
var lowercaseLocales = supportedLocales.map(function (l) { return l.toLowerCase(); });
|
|
131
|
-
// Get all permutations for the shorter locale codes supported by Prezly (e.g. short region codes)
|
|
136
|
+
// Get all permutations for the shorter locale codes supported by Prezly (e.g. short region codes and neutral language codes)
|
|
132
137
|
var lowercaseLocalPermutations = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], __read(lowercaseLocales), false), __read(lowercaseLocales.map(function (code) { return code.split('-')[0]; })), false), __read(lowercaseLocales.map(function (code) { return code.split('-')[1]; }).filter(Boolean)), false))).sort();
|
|
133
138
|
module.exports = lowercaseLocalPermutations;
|
|
134
139
|
//# sourceMappingURL=localeConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localeConfig.js","sourceRoot":"","sources":["../../src/intl/localeConfig.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"localeConfig.js","sourceRoot":"","sources":["../../src/intl/localeConfig.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,IAAM,gBAAgB,GAAG;IACrB,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,KAAK;IACL,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,OAAO;IACP,SAAS;IACT,OAAO;IACP,OAAO;IACP,OAAO;CACV,CAAC;AAEF,IAAM,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,WAAW,EAAE,EAAf,CAAe,CAAC,CAAC;AAEtE,6HAA6H;AAC7H,IAAM,0BAA0B,GAAG,KAAK,CAAC,IAAI,CACzC,IAAI,GAAG,sDACA,gBAAgB,kBAChB,gBAAgB,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,kBAClD,gBAAgB,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UACvE,CACL,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,OAAO,GAAG,0BAA0B,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This class is created to simplify working with locales and transforming between different locale code formats.
|
|
3
|
+
* Prezly API uses underscore-codes, while most frontend application tend to use hyphen-codes or slugs.
|
|
4
|
+
* Note that `fromAnyCode` constructor only accepts locales supported by Prezly backend. See `localeConfig` for reference.
|
|
5
|
+
*/
|
|
1
6
|
export declare class LocaleObject {
|
|
2
7
|
/**
|
|
3
8
|
* Hyphen-separated locale code.
|
|
@@ -13,10 +18,28 @@ export declare class LocaleObject {
|
|
|
13
18
|
* - Slugs: `nl-be`, `en-us`, `fr`, `fil`
|
|
14
19
|
*/
|
|
15
20
|
static fromAnyCode(localeCode: string): LocaleObject;
|
|
21
|
+
/**
|
|
22
|
+
* @returns Code formatted into hyphen format: `nl-BE`, `en-US`, `fr`, `fil`
|
|
23
|
+
*/
|
|
16
24
|
toHyphenCode(): string;
|
|
25
|
+
/**
|
|
26
|
+
* @returns Code formatted into underscore format, as expected by Prezly API: `nl_BE`, `en_US`, `fr`, `fil`
|
|
27
|
+
*/
|
|
17
28
|
toUnderscoreCode(): string;
|
|
29
|
+
/**
|
|
30
|
+
* @returns Code formatted to a URL-friendly lowercase slug format: `nl-be`, `en-us`, `fr`, `fil`
|
|
31
|
+
*/
|
|
18
32
|
toUrlSlug(): string;
|
|
33
|
+
/**
|
|
34
|
+
* @returns Only the language part of the code without culture/region part: `nl`, `en`, `fr`
|
|
35
|
+
*/
|
|
19
36
|
toNeutralLanguageCode(): string;
|
|
37
|
+
/**
|
|
38
|
+
* @returns Only the culture/regtion part without the language part: `be`, `us`, `fr`
|
|
39
|
+
*/
|
|
20
40
|
toRegionCode(): string;
|
|
41
|
+
/**
|
|
42
|
+
* Check if two LocaleObject instances are representing the same locale code.
|
|
43
|
+
*/
|
|
21
44
|
isEqual(anotherLocale: LocaleObject): boolean;
|
|
22
45
|
}
|
|
@@ -21,6 +21,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.LocaleObject = void 0;
|
|
23
23
|
var localeConfig_1 = __importDefault(require("./localeConfig"));
|
|
24
|
+
/**
|
|
25
|
+
* This class is created to simplify working with locales and transforming between different locale code formats.
|
|
26
|
+
* Prezly API uses underscore-codes, while most frontend application tend to use hyphen-codes or slugs.
|
|
27
|
+
* Note that `fromAnyCode` constructor only accepts locales supported by Prezly backend. See `localeConfig` for reference.
|
|
28
|
+
*/
|
|
24
29
|
var LocaleObject = /** @class */ (function () {
|
|
25
30
|
function LocaleObject(localeCode) {
|
|
26
31
|
if (localeCode.indexOf('_') !== -1) {
|
|
@@ -49,19 +54,34 @@ var LocaleObject = /** @class */ (function () {
|
|
|
49
54
|
}
|
|
50
55
|
return new LocaleObject(foundCode);
|
|
51
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* @returns Code formatted into hyphen format: `nl-BE`, `en-US`, `fr`, `fil`
|
|
59
|
+
*/
|
|
52
60
|
LocaleObject.prototype.toHyphenCode = function () {
|
|
53
61
|
return this.localeCode;
|
|
54
62
|
};
|
|
63
|
+
/**
|
|
64
|
+
* @returns Code formatted into underscore format, as expected by Prezly API: `nl_BE`, `en_US`, `fr`, `fil`
|
|
65
|
+
*/
|
|
55
66
|
LocaleObject.prototype.toUnderscoreCode = function () {
|
|
56
67
|
return this.localeCode.replace('-', '_');
|
|
57
68
|
};
|
|
69
|
+
/**
|
|
70
|
+
* @returns Code formatted to a URL-friendly lowercase slug format: `nl-be`, `en-us`, `fr`, `fil`
|
|
71
|
+
*/
|
|
58
72
|
LocaleObject.prototype.toUrlSlug = function () {
|
|
59
73
|
return this.localeCode.toLowerCase();
|
|
60
74
|
};
|
|
75
|
+
/**
|
|
76
|
+
* @returns Only the language part of the code without culture/region part: `nl`, `en`, `fr`
|
|
77
|
+
*/
|
|
61
78
|
LocaleObject.prototype.toNeutralLanguageCode = function () {
|
|
62
79
|
var _a = __read(this.localeCode.split('-'), 1), language = _a[0];
|
|
63
80
|
return language;
|
|
64
81
|
};
|
|
82
|
+
/**
|
|
83
|
+
* @returns Only the culture/regtion part without the language part: `be`, `us`, `fr`
|
|
84
|
+
*/
|
|
65
85
|
LocaleObject.prototype.toRegionCode = function () {
|
|
66
86
|
var _a = __read(this.localeCode.split('-'), 2), language = _a[0], region = _a[1];
|
|
67
87
|
if (!region) {
|
|
@@ -69,6 +89,9 @@ var LocaleObject = /** @class */ (function () {
|
|
|
69
89
|
}
|
|
70
90
|
return region.toUpperCase();
|
|
71
91
|
};
|
|
92
|
+
/**
|
|
93
|
+
* Check if two LocaleObject instances are representing the same locale code.
|
|
94
|
+
*/
|
|
72
95
|
LocaleObject.prototype.isEqual = function (anotherLocale) {
|
|
73
96
|
return anotherLocale.toHyphenCode() === this.localeCode;
|
|
74
97
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localeObject.js","sourceRoot":"","sources":["../../src/intl/localeObject.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gEAA0C;AAE1C;IAOI,sBAAoB,UAAkB;QAClC,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SACpD;QAEK,IAAA,KAAA,OAAqB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAA,EAAzC,QAAQ,QAAA,EAAE,MAAM,QAAyB,CAAC;QAEjD,IAAI,MAAM,EAAE;YACR,IAAI,CAAC,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChE;aAAM;YACH,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC9B;IACL,CAAC;IAED;;;;;;OAMG;IACW,wBAAW,GAAzB,UAA0B,UAAkB;QACxC,IAAM,aAAa,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjE,IAAM,SAAS,GAAG,sBAAY,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,aAAa,EAAtB,CAAsB,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,8CAAsC,aAAa,OAAG,CAAC,CAAC;SAC3E;QAED,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;
|
|
1
|
+
{"version":3,"file":"localeObject.js","sourceRoot":"","sources":["../../src/intl/localeObject.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gEAA0C;AAE1C;;;;GAIG;AACH;IAOI,sBAAoB,UAAkB;QAClC,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SACpD;QAEK,IAAA,KAAA,OAAqB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAA,EAAzC,QAAQ,QAAA,EAAE,MAAM,QAAyB,CAAC;QAEjD,IAAI,MAAM,EAAE;YACR,IAAI,CAAC,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChE;aAAM;YACH,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;SAC9B;IACL,CAAC;IAED;;;;;;OAMG;IACW,wBAAW,GAAzB,UAA0B,UAAkB;QACxC,IAAM,aAAa,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjE,IAAM,SAAS,GAAG,sBAAY,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,aAAa,EAAtB,CAAsB,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,8CAAsC,aAAa,OAAG,CAAC,CAAC;SAC3E;QAED,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,mCAAY,GAAnB;QACI,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,uCAAgB,GAAvB;QACI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACI,gCAAS,GAAhB;QACI,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,4CAAqB,GAA5B;QACU,IAAA,KAAA,OAAa,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAA,EAAtC,QAAQ,QAA8B,CAAC;QAE9C,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;OAEG;IACI,mCAAY,GAAnB;QACU,IAAA,KAAA,OAAqB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAA,EAA9C,QAAQ,QAAA,EAAE,MAAM,QAA8B,CAAC;QAEtD,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;SACjC;QAED,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,8BAAO,GAAd,UAAe,aAA2B;QACtC,OAAO,aAAa,CAAC,YAAY,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC;IAC5D,CAAC;IACL,mBAAC;AAAD,CAAC,AAxFD,IAwFC;AAxFY,oCAAY"}
|
|
@@ -1,21 +1,58 @@
|
|
|
1
1
|
import type { Category, ExtendedStory, Newsroom, NewsroomCompanyInformation, NewsroomContact, NewsroomLanguageSettings, NewsroomThemePreset } from '@prezly/sdk';
|
|
2
|
-
import {
|
|
2
|
+
import type { PropsWithChildren } from 'react';
|
|
3
3
|
import type { AlgoliaSettings } from '../data-fetching';
|
|
4
4
|
import { LocaleObject } from '../intl';
|
|
5
5
|
export interface NewsroomContextType {
|
|
6
|
+
/**
|
|
7
|
+
* Basic newsroom information: newsroom logos, settings, etc.
|
|
8
|
+
*/
|
|
6
9
|
newsroom: Newsroom;
|
|
10
|
+
/**
|
|
11
|
+
* Contact information of the newsroom in the default language, usually displayed in the "About" section
|
|
12
|
+
*/
|
|
7
13
|
companyInformation: NewsroomCompanyInformation;
|
|
14
|
+
/**
|
|
15
|
+
* List of all categories enabled on the newsroom
|
|
16
|
+
*/
|
|
8
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
|
+
*/
|
|
9
22
|
contacts?: NewsroomContact[];
|
|
23
|
+
/**
|
|
24
|
+
* Optional: Refers to a currently selected category when navigated to `/category/[slug]` page.
|
|
25
|
+
*/
|
|
10
26
|
currentCategory?: Category;
|
|
27
|
+
/**
|
|
28
|
+
* Optional: Refers to a currently selected story when navigated to `/[slug]` page.
|
|
29
|
+
*/
|
|
11
30
|
currentStory?: ExtendedStory;
|
|
31
|
+
/**
|
|
32
|
+
* List of currently enabled newsroom languages, as well as company information translated for each language
|
|
33
|
+
*/
|
|
12
34
|
languages: NewsroomLanguageSettings[];
|
|
35
|
+
/**
|
|
36
|
+
* Currently chosen locale
|
|
37
|
+
*/
|
|
13
38
|
locale: LocaleObject;
|
|
14
|
-
|
|
39
|
+
/**
|
|
40
|
+
* Theme settings as set in the Prezly app.
|
|
41
|
+
* You need to provide `PREZLY_THEME_UUID` in environment variables in order for the preset to be loaded.
|
|
42
|
+
* Only applicable to themes hosted on the Prezly infrastructure.
|
|
43
|
+
*/
|
|
44
|
+
themePreset: NewsroomThemePreset | null;
|
|
45
|
+
/**
|
|
46
|
+
* Environment variables required for Algolia search to work.
|
|
47
|
+
*/
|
|
15
48
|
algoliaSettings: AlgoliaSettings;
|
|
16
49
|
}
|
|
17
50
|
export interface NewsroomContextProps extends Omit<NewsroomContextType, 'locale'> {
|
|
18
51
|
localeCode: string;
|
|
19
52
|
}
|
|
20
53
|
export declare const NewsroomContext: import("react").Context<NewsroomContextType | undefined>;
|
|
21
|
-
|
|
54
|
+
/**
|
|
55
|
+
* This context provides common Newsroom information retrieved by `getNewsroomServerSideProps` helper.
|
|
56
|
+
* Please refer to the `NewsroomContextType` definition for more info on what's exposed from the context.
|
|
57
|
+
*/
|
|
58
|
+
export declare function NewsroomContextProvider({ categories, contacts, newsroom, currentCategory, currentStory, companyInformation, languages, localeCode, themePreset, algoliaSettings, children, }: PropsWithChildren<NewsroomContextProps>): JSX.Element;
|
|
@@ -16,7 +16,11 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
16
16
|
var react_1 = require("react");
|
|
17
17
|
var intl_1 = require("../intl");
|
|
18
18
|
exports.NewsroomContext = (0, react_1.createContext)(undefined);
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* This context provides common Newsroom information retrieved by `getNewsroomServerSideProps` helper.
|
|
21
|
+
* Please refer to the `NewsroomContextType` definition for more info on what's exposed from the context.
|
|
22
|
+
*/
|
|
23
|
+
function NewsroomContextProvider(_a) {
|
|
20
24
|
var categories = _a.categories, contacts = _a.contacts, newsroom = _a.newsroom, currentCategory = _a.currentCategory, currentStory = _a.currentStory, companyInformation = _a.companyInformation, languages = _a.languages, localeCode = _a.localeCode, themePreset = _a.themePreset, algoliaSettings = _a.algoliaSettings, children = _a.children;
|
|
21
25
|
var locale = (0, react_1.useMemo)(function () { return intl_1.LocaleObject.fromAnyCode(localeCode || intl_1.DEFAULT_LOCALE); }, [localeCode]);
|
|
22
26
|
return ((0, jsx_runtime_1.jsx)(exports.NewsroomContext.Provider, __assign({ value: {
|
|
@@ -31,6 +35,6 @@ var NewsroomContextProvider = function (_a) {
|
|
|
31
35
|
themePreset: themePreset,
|
|
32
36
|
algoliaSettings: algoliaSettings,
|
|
33
37
|
} }, { children: children }), void 0));
|
|
34
|
-
}
|
|
38
|
+
}
|
|
35
39
|
exports.NewsroomContextProvider = NewsroomContextProvider;
|
|
36
40
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/newsroom-context/context.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/newsroom-context/context.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAUA,+BAA+C;AAG/C,gCAAuD;AAoD1C,QAAA,eAAe,GAAG,IAAA,qBAAa,EAAkC,SAAS,CAAC,CAAC;AAEzF;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,EAYE;QAXtC,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,kBAAkB,wBAAA,EAClB,SAAS,eAAA,EACT,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,eAAe,qBAAA,EACf,QAAQ,cAAA;IAER,IAAM,MAAM,GAAG,IAAA,eAAO,EAClB,cAAM,OAAA,mBAAY,CAAC,WAAW,CAAC,UAAU,IAAI,qBAAc,CAAC,EAAtD,CAAsD,EAC5D,CAAC,UAAU,CAAC,CACf,CAAC;IAEF,OAAO,CACH,uBAAC,uBAAe,CAAC,QAAQ,aACrB,KAAK,EAAE;YACH,UAAU,YAAA;YACV,QAAQ,UAAA;YACR,QAAQ,UAAA;YACR,eAAe,iBAAA;YACf,YAAY,cAAA;YACZ,kBAAkB,oBAAA;YAClB,SAAS,WAAA;YACT,MAAM,QAAA;YACN,WAAW,aAAA;YACX,eAAe,iBAAA;SAClB,gBAEA,QAAQ,YACc,CAC9B,CAAC;AACN,CAAC;AApCD,0DAoCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useAlgoliaSettings(): import("../..").AlgoliaSettings;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useAlgoliaSettings = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useAlgoliaSettings() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.algoliaSettings;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useAlgoliaSettings = useAlgoliaSettings;
|
|
10
10
|
//# sourceMappingURL=useAlgoliaSettings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAlgoliaSettings.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useAlgoliaSettings.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useAlgoliaSettings.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useAlgoliaSettings.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,kBAAkB;IAC9B,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,eAAe,CAAC;AACnC,CAAC;AAJD,gDAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useCategories(): import("@prezly/sdk").Category[];
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCategories = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useCategories() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.categories;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useCategories = useCategories;
|
|
10
10
|
//# sourceMappingURL=useCategories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCategories.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCategories.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useCategories.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCategories.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,aAAa;IACzB,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,UAAU,CAAC;AAC9B,CAAC;AAJD,sCAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useCompanyInformation(): import("@prezly/sdk").NewsroomCompanyInformation;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCompanyInformation = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useCompanyInformation() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.companyInformation;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useCompanyInformation = useCompanyInformation;
|
|
10
10
|
//# sourceMappingURL=useCompanyInformation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCompanyInformation.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCompanyInformation.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useCompanyInformation.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCompanyInformation.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,qBAAqB;IACjC,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,kBAAkB,CAAC;AACtC,CAAC;AAJD,sDAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useCurrentCategory(): import("@prezly/sdk").Category | undefined;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCurrentCategory = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useCurrentCategory() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.currentCategory;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useCurrentCategory = useCurrentCategory;
|
|
10
10
|
//# sourceMappingURL=useCurrentCategory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentCategory.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentCategory.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useCurrentCategory.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentCategory.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,kBAAkB;IAC9B,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,eAAe,CAAC;AACnC,CAAC;AAJD,gDAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useCurrentLocale(): import("../..").LocaleObject;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCurrentLocale = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useCurrentLocale() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.locale;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useCurrentLocale = useCurrentLocale;
|
|
10
10
|
//# sourceMappingURL=useCurrentLocale.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentLocale.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentLocale.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useCurrentLocale.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentLocale.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,gBAAgB;IAC5B,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,MAAM,CAAC;AAC1B,CAAC;AAJD,4CAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useCurrentStory(): import("@prezly/sdk").ExtendedStory | undefined;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCurrentStory = void 0;
|
|
4
4
|
var useNewsroomContext_1 = require("./useNewsroomContext");
|
|
5
|
-
|
|
5
|
+
function useCurrentStory() {
|
|
6
6
|
var context = (0, useNewsroomContext_1.useNewsroomContext)();
|
|
7
7
|
return context.currentStory;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
exports.useCurrentStory = useCurrentStory;
|
|
10
10
|
//# sourceMappingURL=useCurrentStory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentStory.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentStory.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;
|
|
1
|
+
{"version":3,"file":"useCurrentStory.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useCurrentStory.ts"],"names":[],"mappings":";;;AAAA,2DAA0D;AAE1D,SAAgB,eAAe;IAC3B,IAAM,OAAO,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAErC,OAAO,OAAO,CAAC,YAAY,CAAC;AAChC,CAAC;AAJD,0CAIC"}
|
|
@@ -6,7 +6,12 @@ var data_fetching_1 = require("../../data-fetching");
|
|
|
6
6
|
var intl_1 = require("../../intl");
|
|
7
7
|
var useCurrentLocale_1 = require("./useCurrentLocale");
|
|
8
8
|
var useLanguages_1 = require("./useLanguages");
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Determines correct locale slug for the link (trying to shorten the locale code if possible).
|
|
11
|
+
* E.g. if newsroom has a single locale for Dutch (`nl_BE`), it will be shortened to `nl`.
|
|
12
|
+
* If there are more than one locale with the same language part, a full locale code will be used instead.
|
|
13
|
+
* `false` means that a default locale should be used (no locale in URL required).
|
|
14
|
+
*/
|
|
10
15
|
function getLinkLocaleSlug(languages, locale) {
|
|
11
16
|
var shortestLocaleCode = (0, data_fetching_1.getShortestLocaleCode)(languages, locale);
|
|
12
17
|
// When navigating to default language, we don't append the locale to the URL.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGetLinkLocaleSlug.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useGetLinkLocaleSlug.ts"],"names":[],"mappings":";;;AACA,+BAAoC;AAEpC,qDAA4D;AAC5D,mCAA0C;AAE1C,uDAAsD;AACtD,+CAA8C;AAE9C
|
|
1
|
+
{"version":3,"file":"useGetLinkLocaleSlug.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useGetLinkLocaleSlug.ts"],"names":[],"mappings":";;;AACA,+BAAoC;AAEpC,qDAA4D;AAC5D,mCAA0C;AAE1C,uDAAsD;AACtD,+CAA8C;AAE9C;;;;;GAKG;AACH,SAAS,iBAAiB,CACtB,SAAqC,EACrC,MAAoB;IAEpB,IAAM,kBAAkB,GAAG,IAAA,qCAAqB,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACpE,8EAA8E;IAC9E,IAAI,CAAC,kBAAkB,EAAE;QACrB,OAAO,kBAAkB,CAAC;KAC7B;IAED,OAAO,mBAAY,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,SAAS,EAAE,CAAC;AACpE,CAAC;AAED,SAAgB,oBAAoB;IAChC,IAAM,aAAa,GAAG,IAAA,mCAAgB,GAAE,CAAC;IACzC,IAAM,SAAS,GAAG,IAAA,2BAAY,GAAE,CAAC;IAEjC,8DAA8D;IAC9D,OAAO,IAAA,mBAAW,EACd,UAAC,MAAqB,IAAK,OAAA,iBAAiB,CAAC,SAAS,EAAE,MAAM,IAAI,aAAa,CAAC,EAArD,CAAqD,EAChF,CAAC,SAAS,EAAE,aAAa,CAAC,CAC7B,CAAC;AACN,CAAC;AATD,oDASC"}
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
import { LocaleObject } from '../../intl';
|
|
1
|
+
import type { LocaleObject } from '../../intl';
|
|
2
|
+
/**
|
|
3
|
+
* This hook returns a function that is meant to be used in language pickers and alternate locales list for the pages.
|
|
4
|
+
* `noFallback` parameter is useful for alternate language links in the `head` section of the document (so that there are no unwanted links to the homepage).
|
|
5
|
+
*/
|
|
2
6
|
export declare function useGetTranslationUrl(): (locale: LocaleObject, noFallback?: boolean | undefined) => string;
|
|
@@ -6,7 +6,12 @@ var react_1 = require("react");
|
|
|
6
6
|
var data_fetching_1 = require("../../data-fetching");
|
|
7
7
|
var useCurrentCategory_1 = require("./useCurrentCategory");
|
|
8
8
|
var useCurrentStory_1 = require("./useCurrentStory");
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Determine correct URL for translated stories/categories with a fallback to homepage.
|
|
11
|
+
* E.g. if a story has a translation, the function will return the localized slug URL.
|
|
12
|
+
* If there is no translation for the story, it will return the index page URL (`/`),
|
|
13
|
+
* or empty string, if `noFallback` is set to `true` (this is useful for alternate locale links).
|
|
14
|
+
*/
|
|
10
15
|
function getTranslationUrl(locale, path, currentCategory, currentStory, noFallback) {
|
|
11
16
|
if (currentCategory) {
|
|
12
17
|
if ((0, data_fetching_1.getCategoryHasTranslation)(currentCategory, locale)) {
|
|
@@ -33,6 +38,10 @@ function getTranslationUrl(locale, path, currentCategory, currentStory, noFallba
|
|
|
33
38
|
}
|
|
34
39
|
return path;
|
|
35
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* This hook returns a function that is meant to be used in language pickers and alternate locales list for the pages.
|
|
43
|
+
* `noFallback` parameter is useful for alternate language links in the `head` section of the document (so that there are no unwanted links to the homepage).
|
|
44
|
+
*/
|
|
36
45
|
function useGetTranslationUrl() {
|
|
37
46
|
var asPath = (0, router_1.useRouter)().asPath;
|
|
38
47
|
var currentCategory = (0, useCurrentCategory_1.useCurrentCategory)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGetTranslationUrl.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useGetTranslationUrl.ts"],"names":[],"mappings":";;;AACA,sCAAwC;AACxC,+BAAoC;AAEpC,qDAAgF;AAGhF,2DAA0D;AAC1D,qDAAoD;AAEpD
|
|
1
|
+
{"version":3,"file":"useGetTranslationUrl.js","sourceRoot":"","sources":["../../../src/newsroom-context/hooks/useGetTranslationUrl.ts"],"names":[],"mappings":";;;AACA,sCAAwC;AACxC,+BAAoC;AAEpC,qDAAgF;AAGhF,2DAA0D;AAC1D,qDAAoD;AAEpD;;;;;GAKG;AACH,SAAS,iBAAiB,CACtB,MAAoB,EACpB,IAAY,EACZ,eAA0B,EAC1B,YAA4B,EAC5B,UAAoB;IAEpB,IAAI,eAAe,EAAE;QACjB,IAAI,IAAA,yCAAyB,EAAC,eAAe,EAAE,MAAM,CAAC,EAAE;YACpD,OAAO,IAAA,8BAAc,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC;SAClD;QAED,IAAI,UAAU,EAAE;YACZ,OAAO,EAAE,CAAC;SACb;QAED,OAAO,GAAG,CAAC;KACd;IAED,IAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAE7C,IAAI,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE;QAC5D,IAAM,eAAe,GAAG,YAAY,CAAC,YAAY,CAAC,IAAI,CAClD,UAAC,EAAW;gBAAT,OAAO,aAAA;YAAO,OAAA,OAAO,CAAC,MAAM,KAAK,UAAU;QAA7B,CAA6B,CACjD,CAAC;QACF,IAAI,eAAe,EAAE;YACjB,OAAO,WAAI,eAAe,CAAC,IAAI,CAAE,CAAC;SACrC;QAED,IAAI,UAAU,EAAE;YACZ,OAAO,EAAE,CAAC;SACb;QAED,OAAO,GAAG,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB;IACxB,IAAA,MAAM,GAAK,IAAA,kBAAS,GAAE,OAAhB,CAAiB;IAC/B,IAAM,eAAe,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAC7C,IAAM,YAAY,GAAG,IAAA,iCAAe,GAAE,CAAC;IAEvC,OAAO,IAAA,mBAAW,EACd,UAAC,MAAoB,EAAE,UAAoB;QACvC,OAAA,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC;IAA5E,CAA4E,EAChF,CAAC,MAAM,EAAE,eAAe,EAAE,YAAY,CAAC,CAC1C,CAAC;AACN,CAAC;AAVD,oDAUC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function useLanguages(): import("@prezly/sdk").NewsroomLanguageSettings[];
|