@wix/headless-site 1.13.0 → 1.19.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.
@@ -8,8 +8,8 @@ var _multilingualHeader = require("./multilingual-header");
8
8
  * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts
9
9
  */
10
10
 
11
- const getPassThroughHeaders = essentials => {
12
- const headers = [(0, _commonConfigHeader.getCommonConfigHeader)(), (0, _multilingualHeader.getMultilingualHeader)(essentials)];
11
+ const getPassThroughHeaders = (locale, language) => {
12
+ const headers = [(0, _commonConfigHeader.getCommonConfigHeader)(), (0, _multilingualHeader.getMultilingualHeader)(locale, language)];
13
13
  return headers.reduce((res, header) => {
14
14
  const entries = Object.entries(header).filter(([_, value]) => !!value);
15
15
  res = {
@@ -1 +1 @@
1
- {"version":3,"names":["_commonConfigHeader","require","_multilingualHeader","getPassThroughHeaders","essentials","headers","getCommonConfigHeader","getMultilingualHeader","reduce","res","header","entries","Object","filter","_","value","fromEntries","exports"],"sources":["../../../src/headers/index.ts"],"sourcesContent":["/**\n * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts\n */\n\nimport { getCommonConfigHeader } from './common-config-header';\nimport { getMultilingualHeader } from './multilingual-header';\nimport { Essentials } from '../types';\n\nexport const getPassThroughHeaders = (essentials?: Essentials) => {\n const headers = [getCommonConfigHeader(), getMultilingualHeader(essentials)];\n\n return headers.reduce((res, header) => {\n const entries = Object.entries(header).filter(([_, value]) => !!value);\n\n res = {\n ...res,\n ...Object.fromEntries(entries),\n };\n\n return res;\n }, {} as Record<string, string>);\n};\n"],"mappings":";;;;AAIA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AALA;AACA;AACA;;AAMO,MAAME,qBAAqB,GAAIC,UAAuB,IAAK;EAChE,MAAMC,OAAO,GAAG,CAAC,IAAAC,yCAAqB,EAAC,CAAC,EAAE,IAAAC,yCAAqB,EAACH,UAAU,CAAC,CAAC;EAE5E,OAAOC,OAAO,CAACG,MAAM,CAAC,CAACC,GAAG,EAAEC,MAAM,KAAK;IACrC,MAAMC,OAAO,GAAGC,MAAM,CAACD,OAAO,CAACD,MAAM,CAAC,CAACG,MAAM,CAAC,CAAC,CAACC,CAAC,EAAEC,KAAK,CAAC,KAAK,CAAC,CAACA,KAAK,CAAC;IAEtEN,GAAG,GAAG;MACJ,GAAGA,GAAG;MACN,GAAGG,MAAM,CAACI,WAAW,CAACL,OAAO;IAC/B,CAAC;IAED,OAAOF,GAAG;EACZ,CAAC,EAAE,CAAC,CAA2B,CAAC;AAClC,CAAC;AAACQ,OAAA,CAAAd,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_commonConfigHeader","require","_multilingualHeader","getPassThroughHeaders","locale","language","headers","getCommonConfigHeader","getMultilingualHeader","reduce","res","header","entries","Object","filter","_","value","fromEntries","exports"],"sources":["../../../src/headers/index.ts"],"sourcesContent":["/**\n * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts\n */\n\nimport { getCommonConfigHeader } from './common-config-header';\nimport { getMultilingualHeader } from './multilingual-header';\n\nexport const getPassThroughHeaders = (locale?: string, language?: string) => {\n const headers = [\n getCommonConfigHeader(),\n getMultilingualHeader(locale, language),\n ];\n\n return headers.reduce((res, header) => {\n const entries = Object.entries(header).filter(([_, value]) => !!value);\n\n res = {\n ...res,\n ...Object.fromEntries(entries),\n };\n\n return res;\n }, {} as Record<string, string>);\n};\n"],"mappings":";;;;AAIA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AALA;AACA;AACA;;AAKO,MAAME,qBAAqB,GAAGA,CAACC,MAAe,EAAEC,QAAiB,KAAK;EAC3E,MAAMC,OAAO,GAAG,CACd,IAAAC,yCAAqB,EAAC,CAAC,EACvB,IAAAC,yCAAqB,EAACJ,MAAM,EAAEC,QAAQ,CAAC,CACxC;EAED,OAAOC,OAAO,CAACG,MAAM,CAAC,CAACC,GAAG,EAAEC,MAAM,KAAK;IACrC,MAAMC,OAAO,GAAGC,MAAM,CAACD,OAAO,CAACD,MAAM,CAAC,CAACG,MAAM,CAAC,CAAC,CAACC,CAAC,EAAEC,KAAK,CAAC,KAAK,CAAC,CAACA,KAAK,CAAC;IAEtEN,GAAG,GAAG;MACJ,GAAGA,GAAG;MACN,GAAGG,MAAM,CAACI,WAAW,CAACL,OAAO;IAC/B,CAAC;IAED,OAAOF,GAAG;EACZ,CAAC,EAAE,CAAC,CAA2B,CAAC;AAClC,CAAC;AAACQ,OAAA,CAAAf,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -2,25 +2,17 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.getMultilingualHeader = exports.MULTILINGUAL_HEADER_KEY = exports.DUMMY_INSTANCE_ID = void 0;
5
- var _multilingualUtils = require("../utils/multilingual-utils");
6
5
  const MULTILINGUAL_HEADER_KEY = exports.MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';
7
6
 
8
7
  // Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .
9
8
  const DUMMY_INSTANCE_ID = exports.DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';
10
- const getMultilingualHeader = essentials => {
11
- var _multilingual$support;
12
- const currentLocale = (0, _multilingualUtils.getCurrentLocale)(essentials);
13
- const multilingual = essentials == null ? void 0 : essentials.multilingual;
14
- if (currentLocale && multilingual != null && (_multilingual$support = multilingual.supportedLanguages) != null && _multilingual$support.length) {
15
- var _multilingual$support2;
16
- const language = multilingual == null || (_multilingual$support2 = multilingual.supportedLanguages) == null ? void 0 : _multilingual$support2.find(lang => (0, _multilingualUtils.getLanguageLocale)(lang) === currentLocale);
17
- if (language) {
18
- return {
19
- [MULTILINGUAL_HEADER_KEY]: `${language.languageCode}|${currentLocale.toLowerCase()}|${!!language.isPrimary}|${DUMMY_INSTANCE_ID}`
20
- };
21
- }
9
+ const getMultilingualHeader = (locale, language) => {
10
+ if (!locale || !language) {
11
+ return {};
22
12
  }
23
- return {};
13
+ return {
14
+ [MULTILINGUAL_HEADER_KEY]: `${language}|${locale.toLowerCase()}|false|${DUMMY_INSTANCE_ID}`
15
+ };
24
16
  };
25
17
  exports.getMultilingualHeader = getMultilingualHeader;
26
18
  //# sourceMappingURL=multilingual-header.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_multilingualUtils","require","MULTILINGUAL_HEADER_KEY","exports","DUMMY_INSTANCE_ID","getMultilingualHeader","essentials","_multilingual$support","currentLocale","getCurrentLocale","multilingual","supportedLanguages","length","_multilingual$support2","language","find","lang","getLanguageLocale","languageCode","toLowerCase","isPrimary"],"sources":["../../../src/headers/multilingual-header.ts"],"sourcesContent":["import type { Essentials, SupportedLanguage } from '../types';\nimport {\n getLanguageLocale,\n getCurrentLocale,\n} from '../utils/multilingual-utils';\n\nexport const MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';\n\n// Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .\nexport const DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';\n\nexport const getMultilingualHeader = (essentials?: Essentials) => {\n const currentLocale = getCurrentLocale(essentials);\n const multilingual = essentials?.multilingual;\n\n if (currentLocale && multilingual?.supportedLanguages?.length) {\n const language = multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => getLanguageLocale(lang) === currentLocale,\n );\n if (language) {\n return {\n [MULTILINGUAL_HEADER_KEY]: `${\n language.languageCode\n }|${currentLocale.toLowerCase()}|${!!language.isPrimary}|${DUMMY_INSTANCE_ID}`,\n };\n }\n }\n return {};\n};\n"],"mappings":";;;;AACA,IAAAA,kBAAA,GAAAC,OAAA;AAKO,MAAMC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG,gBAAgB;;AAEvD;AACO,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,sCAAsC;AAEhE,MAAMC,qBAAqB,GAAIC,UAAuB,IAAK;EAAA,IAAAC,qBAAA;EAChE,MAAMC,aAAa,GAAG,IAAAC,mCAAgB,EAACH,UAAU,CAAC;EAClD,MAAMI,YAAY,GAAGJ,UAAU,oBAAVA,UAAU,CAAEI,YAAY;EAE7C,IAAIF,aAAa,IAAIE,YAAY,aAAAH,qBAAA,GAAZG,YAAY,CAAEC,kBAAkB,aAAhCJ,qBAAA,CAAkCK,MAAM,EAAE;IAAA,IAAAC,sBAAA;IAC7D,MAAMC,QAAQ,GAAGJ,YAAY,aAAAG,sBAAA,GAAZH,YAAY,CAAEC,kBAAkB,qBAAhCE,sBAAA,CAAkCE,IAAI,CACpDC,IAAuB,IAAK,IAAAC,oCAAiB,EAACD,IAAI,CAAC,KAAKR,aAC3D,CAAC;IACD,IAAIM,QAAQ,EAAE;MACZ,OAAO;QACL,CAACZ,uBAAuB,GAAG,GACzBY,QAAQ,CAACI,YAAY,IACnBV,aAAa,CAACW,WAAW,CAAC,CAAC,IAAI,CAAC,CAACL,QAAQ,CAACM,SAAS,IAAIhB,iBAAiB;MAC9E,CAAC;IACH;EACF;EACA,OAAO,CAAC,CAAC;AACX,CAAC;AAACD,OAAA,CAAAE,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["MULTILINGUAL_HEADER_KEY","exports","DUMMY_INSTANCE_ID","getMultilingualHeader","locale","language","toLowerCase"],"sources":["../../../src/headers/multilingual-header.ts"],"sourcesContent":["export const MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';\n\n// Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .\nexport const DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';\n\nexport const getMultilingualHeader = (locale?: string, language?: string) => {\n if (!locale || !language) {\n return {};\n }\n\n return {\n [MULTILINGUAL_HEADER_KEY]: `${language}|${locale.toLowerCase()}|false|${DUMMY_INSTANCE_ID}`,\n };\n};\n"],"mappings":";;;;AAAO,MAAMA,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG,gBAAgB;;AAEvD;AACO,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,sCAAsC;AAEhE,MAAMC,qBAAqB,GAAGA,CAACC,MAAe,EAAEC,QAAiB,KAAK;EAC3E,IAAI,CAACD,MAAM,IAAI,CAACC,QAAQ,EAAE;IACxB,OAAO,CAAC,CAAC;EACX;EAEA,OAAO;IACL,CAACL,uBAAuB,GAAG,GAAGK,QAAQ,IAAID,MAAM,CAACE,WAAW,CAAC,CAAC,UAAUJ,iBAAiB;EAC3F,CAAC;AACH,CAAC;AAACD,OAAA,CAAAE,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -18,10 +18,12 @@ const createHostModule = () => {
18
18
  return {
19
19
  essentials: {
20
20
  get passThroughHeaders() {
21
- return (0, _headers.getPassThroughHeaders)(getNormalizedEssentials(essentials));
21
+ const currentLanguage = (0, _multilingualUtils.getCurrentLanguage)(getNormalizedEssentials(essentials));
22
+ const currentLocale = (0, _multilingualUtils.getCurrentLocale)(getNormalizedEssentials(essentials));
23
+ return (0, _headers.getPassThroughHeaders)(currentLocale, currentLanguage);
22
24
  },
23
25
  get language() {
24
- return getNormalizedEssentials(essentials).language ?? 'en';
26
+ return (0, _multilingualUtils.getCurrentLanguage)(getNormalizedEssentials(essentials));
25
27
  },
26
28
  get locale() {
27
29
  return (0, _multilingualUtils.getCurrentLocale)(getNormalizedEssentials(essentials));
@@ -1 +1 @@
1
- {"version":3,"names":["_monitoringVelo","require","_headers","_authUtils","_multilingualUtils","createHostModule","__type","create","host","essentials","passThroughHeaders","getPassThroughHeaders","getNormalizedEssentials","language","locale","getCurrentLocale","timezone","getMonitoringClient","producer","req","document","location","href","Request","createVeloMonitoringClient","namespace","getAuthToken","resolveAuthToken","exports","_window$essentials","_window$essentials2","_window$essentials3","_window$essentials4","window","undefined","timeZone","multilingual"],"sources":["../../src/host-module.ts"],"sourcesContent":["import type { HostModule, Host } from '@wix/sdk-types';\nimport { createVeloMonitoringClient } from '@wix/monitoring-velo';\nimport { getPassThroughHeaders } from './headers';\nimport { resolveAuthToken } from './utils/auth-utils';\nimport type { Essentials, SDK, SDKOptions } from './types';\nimport { getCurrentLocale } from './utils/multilingual-utils';\n\nexport const createHostModule = (): HostModule<SDK, Host> & {\n host: (options: SDKOptions) => Host;\n} => {\n return {\n __type: 'host',\n create: () => {\n return {};\n },\n host: ({ essentials }: SDKOptions = {}) => {\n return {\n essentials: {\n get passThroughHeaders() {\n return getPassThroughHeaders(getNormalizedEssentials(essentials));\n },\n get language() {\n return getNormalizedEssentials(essentials).language ?? 'en';\n },\n get locale() {\n return getCurrentLocale(getNormalizedEssentials(essentials));\n },\n get timezone() {\n return getNormalizedEssentials(essentials).timezone ?? 'UTC';\n },\n },\n getMonitoringClient: () => {\n let producer = 'unknown';\n let req: Request | undefined;\n\n if (typeof document !== 'undefined') {\n producer = document.location.href;\n req = new Request(document.location.href);\n }\n\n return createVeloMonitoringClient({\n namespace: 'Headless',\n producer,\n getAuthToken: async () => resolveAuthToken(),\n req,\n });\n },\n };\n },\n };\n};\n\n// Normalize essentials by merging with window.essentials, handling property name differences\n// Use a function to maintain reactivity to window.essentials changes\nconst getNormalizedEssentials = (essentials?: Essentials): Essentials => ({\n ...essentials,\n ...(typeof window !== 'undefined' ? window.essentials : {}),\n language:\n essentials?.language ??\n (typeof window !== 'undefined' ? window.essentials?.language : undefined) ??\n 'en',\n locale:\n essentials?.locale ??\n (typeof window !== 'undefined' ? window.essentials?.locale : undefined),\n timezone:\n essentials?.timezone ??\n (typeof window !== 'undefined' ? window.essentials?.timeZone : undefined),\n multilingual:\n essentials?.multilingual ??\n (typeof window !== 'undefined'\n ? window.essentials?.multilingual\n : undefined),\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_monitoringVelo","require","_headers","_authUtils","_multilingualUtils","createHostModule","__type","create","host","essentials","passThroughHeaders","currentLanguage","getCurrentLanguage","getNormalizedEssentials","currentLocale","getCurrentLocale","getPassThroughHeaders","language","locale","timezone","getMonitoringClient","producer","req","document","location","href","Request","createVeloMonitoringClient","namespace","getAuthToken","resolveAuthToken","exports","_window$essentials","_window$essentials2","_window$essentials3","_window$essentials4","window","undefined","timeZone","multilingual"],"sources":["../../src/host-module.ts"],"sourcesContent":["import type { HostModule, Host } from '@wix/sdk-types';\nimport { createVeloMonitoringClient } from '@wix/monitoring-velo';\nimport { getPassThroughHeaders } from './headers';\nimport { resolveAuthToken } from './utils/auth-utils';\nimport type { Essentials, SDK, SDKOptions } from './types';\nimport {\n getCurrentLocale,\n getCurrentLanguage,\n} from './utils/multilingual-utils';\n\nexport const createHostModule = (): HostModule<SDK, Host> & {\n host: (options: SDKOptions) => Host;\n} => {\n return {\n __type: 'host',\n create: () => {\n return {};\n },\n host: ({ essentials }: SDKOptions = {}) => {\n return {\n essentials: {\n get passThroughHeaders() {\n const currentLanguage = getCurrentLanguage(\n getNormalizedEssentials(essentials),\n );\n const currentLocale = getCurrentLocale(\n getNormalizedEssentials(essentials),\n );\n\n return getPassThroughHeaders(currentLocale, currentLanguage);\n },\n get language() {\n return getCurrentLanguage(getNormalizedEssentials(essentials));\n },\n get locale() {\n return getCurrentLocale(getNormalizedEssentials(essentials));\n },\n get timezone() {\n return getNormalizedEssentials(essentials).timezone ?? 'UTC';\n },\n },\n getMonitoringClient: () => {\n let producer = 'unknown';\n let req: Request | undefined;\n\n if (typeof document !== 'undefined') {\n producer = document.location.href;\n req = new Request(document.location.href);\n }\n\n return createVeloMonitoringClient({\n namespace: 'Headless',\n producer,\n getAuthToken: async () => resolveAuthToken(),\n req,\n });\n },\n };\n },\n };\n};\n\n// Normalize essentials by merging with window.essentials, handling property name differences\n// Use a function to maintain reactivity to window.essentials changes\nconst getNormalizedEssentials = (essentials?: Essentials): Essentials => ({\n ...essentials,\n ...(typeof window !== 'undefined' ? window.essentials : {}),\n language:\n essentials?.language ??\n (typeof window !== 'undefined' ? window.essentials?.language : undefined) ??\n 'en',\n locale:\n essentials?.locale ??\n (typeof window !== 'undefined' ? window.essentials?.locale : undefined),\n timezone:\n essentials?.timezone ??\n (typeof window !== 'undefined' ? window.essentials?.timeZone : undefined),\n multilingual:\n essentials?.multilingual ??\n (typeof window !== 'undefined'\n ? window.essentials?.multilingual\n : undefined),\n});\n"],"mappings":"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","ignoreList":[]}
package/dist/cjs/types.js CHANGED
@@ -1,2 +1,11 @@
1
+ "use strict";
1
2
 
3
+ exports.__esModule = true;
4
+ exports.ResolutionMethod = void 0;
5
+ let ResolutionMethod = exports.ResolutionMethod = /*#__PURE__*/function (ResolutionMethod) {
6
+ ResolutionMethod["QUERY_PARAM"] = "QUERY_PARAM";
7
+ ResolutionMethod["SUBDOMAIN"] = "SUBDOMAIN";
8
+ ResolutionMethod["SUBDIRECTORY"] = "SUBDIRECTORY";
9
+ return ResolutionMethod;
10
+ }({});
2
11
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../src/types.ts"],"sourcesContent":["export type SDK = {};\n\ndeclare global {\n interface Window {\n essentials: {\n language: string;\n locale?: string;\n timeZone?: string;\n multilingual?: Multilingual;\n };\n }\n}\n\nexport interface SDKOptions {\n essentials?: Essentials;\n}\n\nexport interface Essentials {\n language?: string;\n locale?: string;\n timezone?: string;\n multilingual?: Multilingual;\n}\n\nexport interface Multilingual {\n supportedLanguages?: SupportedLanguage[];\n}\n\nexport interface SupportedLanguage {\n languageCode?: string;\n isPrimary?: boolean;\n countryCode?: string;\n isVisitorPrimary?: boolean;\n locale?: Locale;\n}\n\nexport interface Locale {\n languageCode?: string;\n country?: string;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":["ResolutionMethod","exports"],"sources":["../../src/types.ts"],"sourcesContent":["export type SDK = {};\n\ndeclare global {\n interface Window {\n essentials: {\n language: string;\n locale?: string;\n timeZone?: string;\n multilingual?: Multilingual;\n };\n }\n}\n\nexport interface SDKOptions {\n essentials?: Essentials;\n}\n\nexport interface Essentials {\n language?: string;\n locale?: string;\n timezone?: string;\n multilingual?: Multilingual;\n}\n\nexport interface Multilingual {\n autoRedirect?: boolean;\n supportedLanguages?: SupportedLanguage[];\n}\n\nexport interface SupportedLanguage {\n countryCode?: string;\n isPrimary?: boolean;\n isVisitorPrimary?: boolean;\n languageCode?: string;\n locale?: Locale;\n resolutionMethod?: ResolutionMethod;\n}\n\nexport enum ResolutionMethod {\n QUERY_PARAM = 'QUERY_PARAM',\n SUBDOMAIN = 'SUBDOMAIN',\n SUBDIRECTORY = 'SUBDIRECTORY',\n}\n\nexport interface Locale {\n languageCode?: string;\n country?: string;\n}\n"],"mappings":";;;;IAsCYA,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA","ignoreList":[]}
@@ -1,38 +1,43 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.getCurrentLocale = void 0;
5
- exports.getLanguageLocale = getLanguageLocale;
6
- function getLanguageLocale(language) {
7
- var _language$locale;
8
- if (!(language != null && language.languageCode)) {
9
- return undefined;
10
- }
11
- return [language.languageCode, (_language$locale = language.locale) == null ? void 0 : _language$locale.country].filter(Boolean).join('-');
12
- }
4
+ exports.getCurrentLocale = exports.getCurrentLanguage = void 0;
13
5
  const getCurrentLocale = essentials => {
14
- var _document;
15
- let locale = essentials == null ? void 0 : essentials.locale;
16
- if (typeof document !== 'undefined' && (_document = document) != null && (_document = _document.location) != null && _document.href) {
17
- try {
18
- var _document2;
19
- const url = new URL((_document2 = document) == null || (_document2 = _document2.location) == null ? void 0 : _document2.href);
20
- const localeSearchParam = url.searchParams.get('lang'); // e.g., mysite.com/?lang=en
21
-
22
- if (localeSearchParam) {
23
- var _essentials$multiling;
24
- const language = essentials == null || (_essentials$multiling = essentials.multilingual) == null || (_essentials$multiling = _essentials$multiling.supportedLanguages) == null ? void 0 : _essentials$multiling.find(lang => lang.languageCode === localeSearchParam);
6
+ var _selectedLanguage$loc, _selectedLanguage$loc2;
7
+ const locale = (essentials == null ? void 0 : essentials.locale) ?? 'en-US';
8
+ const currentLanguage = getCurrentLanguage(essentials);
9
+ if (!currentLanguage) {
10
+ return locale;
11
+ }
12
+ const selectedLanguage = getSelectedLanguage(essentials, currentLanguage);
13
+ const maybeLocale = [selectedLanguage == null || (_selectedLanguage$loc = selectedLanguage.locale) == null ? void 0 : _selectedLanguage$loc.languageCode, selectedLanguage == null || (_selectedLanguage$loc2 = selectedLanguage.locale) == null ? void 0 : _selectedLanguage$loc2.country].filter(Boolean).join('-');
14
+ return maybeLocale ? maybeLocale : locale;
15
+ };
16
+ exports.getCurrentLocale = getCurrentLocale;
17
+ const getCurrentLanguage = essentials => {
18
+ const languageFromUrl = getLanguageFromUrl();
19
+ if (languageFromUrl) {
20
+ const selectedLanguage = getSelectedLanguage(essentials, languageFromUrl);
25
21
 
26
- // verify it's a valid locale
27
- if (language != null && language.languageCode) {
28
- locale = getLanguageLocale(language);
29
- }
30
- }
31
- } catch {
32
- // Invalid URL, ignore
22
+ // validate the language is supported
23
+ if (selectedLanguage != null && selectedLanguage.languageCode) {
24
+ return selectedLanguage.languageCode;
33
25
  }
34
26
  }
35
- return locale ?? 'en-US';
27
+ return (essentials == null ? void 0 : essentials.language) ?? 'en';
28
+ };
29
+ exports.getCurrentLanguage = getCurrentLanguage;
30
+ const getLanguageFromUrl = () => {
31
+ var _document;
32
+ if (typeof document !== 'undefined' && (_document = document) != null && (_document = _document.location) != null && _document.href) {
33
+ var _document2;
34
+ const url = new URL((_document2 = document) == null || (_document2 = _document2.location) == null ? void 0 : _document2.href);
35
+ return url.searchParams.get('lang');
36
+ }
37
+ return;
38
+ };
39
+ const getSelectedLanguage = (essentials, language) => {
40
+ var _essentials$multiling;
41
+ return essentials == null || (_essentials$multiling = essentials.multilingual) == null || (_essentials$multiling = _essentials$multiling.supportedLanguages) == null ? void 0 : _essentials$multiling.find(lang => lang.languageCode === language);
36
42
  };
37
- exports.getCurrentLocale = getCurrentLocale;
38
43
  //# sourceMappingURL=multilingual-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getLanguageLocale","language","_language$locale","languageCode","undefined","locale","country","filter","Boolean","join","getCurrentLocale","essentials","_document","document","location","href","_document2","url","URL","localeSearchParam","searchParams","get","_essentials$multiling","multilingual","supportedLanguages","find","lang","exports"],"sources":["../../../src/utils/multilingual-utils.ts"],"sourcesContent":["import type { SupportedLanguage, Essentials } from '../types';\n\nexport function getLanguageLocale(language: SupportedLanguage) {\n if (!language?.languageCode) {\n return undefined;\n }\n\n return [language.languageCode, language.locale?.country]\n .filter(Boolean)\n .join('-');\n}\n\nexport const getCurrentLocale = (essentials: Essentials | undefined) => {\n let locale = essentials?.locale;\n\n if (typeof document !== 'undefined' && document?.location?.href) {\n try {\n const url = new URL(document?.location?.href);\n\n const localeSearchParam = url.searchParams.get('lang'); // e.g., mysite.com/?lang=en\n\n if (localeSearchParam) {\n const language = essentials?.multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => lang.languageCode === localeSearchParam,\n );\n\n // verify it's a valid locale\n if (language?.languageCode) {\n locale = getLanguageLocale(language);\n }\n }\n } catch {\n // Invalid URL, ignore\n }\n }\n\n return locale ?? 'en-US';\n};\n"],"mappings":";;;;;AAEO,SAASA,iBAAiBA,CAACC,QAA2B,EAAE;EAAA,IAAAC,gBAAA;EAC7D,IAAI,EAACD,QAAQ,YAARA,QAAQ,CAAEE,YAAY,GAAE;IAC3B,OAAOC,SAAS;EAClB;EAEA,OAAO,CAACH,QAAQ,CAACE,YAAY,GAAAD,gBAAA,GAAED,QAAQ,CAACI,MAAM,qBAAfH,gBAAA,CAAiBI,OAAO,CAAC,CACrDC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;AACd;AAEO,MAAMC,gBAAgB,GAAIC,UAAkC,IAAK;EAAA,IAAAC,SAAA;EACtE,IAAIP,MAAM,GAAGM,UAAU,oBAAVA,UAAU,CAAEN,MAAM;EAE/B,IAAI,OAAOQ,QAAQ,KAAK,WAAW,KAAAD,SAAA,GAAIC,QAAQ,cAAAD,SAAA,GAARA,SAAA,CAAUE,QAAQ,aAAlBF,SAAA,CAAoBG,IAAI,EAAE;IAC/D,IAAI;MAAA,IAAAC,UAAA;MACF,MAAMC,GAAG,GAAG,IAAIC,GAAG,EAAAF,UAAA,GAACH,QAAQ,cAAAG,UAAA,GAARA,UAAA,CAAUF,QAAQ,qBAAlBE,UAAA,CAAoBD,IAAI,CAAC;MAE7C,MAAMI,iBAAiB,GAAGF,GAAG,CAACG,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;;MAExD,IAAIF,iBAAiB,EAAE;QAAA,IAAAG,qBAAA;QACrB,MAAMrB,QAAQ,GAAGU,UAAU,aAAAW,qBAAA,GAAVX,UAAU,CAAEY,YAAY,cAAAD,qBAAA,GAAxBA,qBAAA,CAA0BE,kBAAkB,qBAA5CF,qBAAA,CAA8CG,IAAI,CAChEC,IAAuB,IAAKA,IAAI,CAACvB,YAAY,KAAKgB,iBACrD,CAAC;;QAED;QACA,IAAIlB,QAAQ,YAARA,QAAQ,CAAEE,YAAY,EAAE;UAC1BE,MAAM,GAAGL,iBAAiB,CAACC,QAAQ,CAAC;QACtC;MACF;IACF,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAOI,MAAM,IAAI,OAAO;AAC1B,CAAC;AAACsB,OAAA,CAAAjB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["getCurrentLocale","essentials","_selectedLanguage$loc","_selectedLanguage$loc2","locale","currentLanguage","getCurrentLanguage","selectedLanguage","getSelectedLanguage","maybeLocale","languageCode","country","filter","Boolean","join","exports","languageFromUrl","getLanguageFromUrl","language","_document","document","location","href","_document2","url","URL","searchParams","get","_essentials$multiling","multilingual","supportedLanguages","find","lang"],"sources":["../../../src/utils/multilingual-utils.ts"],"sourcesContent":["import type { SupportedLanguage, Essentials } from '../types';\n\nexport const getCurrentLocale = (\n essentials: Essentials | undefined,\n): string => {\n const locale = essentials?.locale ?? 'en-US';\n const currentLanguage = getCurrentLanguage(essentials);\n\n if (!currentLanguage) {\n return locale;\n }\n const selectedLanguage = getSelectedLanguage(essentials, currentLanguage);\n\n const maybeLocale = [\n selectedLanguage?.locale?.languageCode,\n selectedLanguage?.locale?.country,\n ]\n .filter(Boolean)\n .join('-');\n\n return maybeLocale ? maybeLocale : locale;\n};\n\nexport const getCurrentLanguage = (\n essentials: Essentials | undefined,\n): string => {\n const languageFromUrl = getLanguageFromUrl();\n if (languageFromUrl) {\n const selectedLanguage = getSelectedLanguage(essentials, languageFromUrl);\n\n // validate the language is supported\n if (selectedLanguage?.languageCode) {\n return selectedLanguage.languageCode;\n }\n }\n\n return essentials?.language ?? 'en';\n};\n\nconst getLanguageFromUrl = () => {\n if (typeof document !== 'undefined' && document?.location?.href) {\n const url = new URL(document?.location?.href);\n\n return url.searchParams.get('lang');\n }\n\n return;\n};\n\nconst getSelectedLanguage = (\n essentials: Essentials | undefined,\n language: string,\n) => {\n return essentials?.multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => lang.languageCode === language,\n );\n};\n"],"mappings":";;;;AAEO,MAAMA,gBAAgB,GAC3BC,UAAkC,IACvB;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EACX,MAAMC,MAAM,GAAG,CAAAH,UAAU,oBAAVA,UAAU,CAAEG,MAAM,KAAI,OAAO;EAC5C,MAAMC,eAAe,GAAGC,kBAAkB,CAACL,UAAU,CAAC;EAEtD,IAAI,CAACI,eAAe,EAAE;IACpB,OAAOD,MAAM;EACf;EACA,MAAMG,gBAAgB,GAAGC,mBAAmB,CAACP,UAAU,EAAEI,eAAe,CAAC;EAEzE,MAAMI,WAAW,GAAG,CAClBF,gBAAgB,aAAAL,qBAAA,GAAhBK,gBAAgB,CAAEH,MAAM,qBAAxBF,qBAAA,CAA0BQ,YAAY,EACtCH,gBAAgB,aAAAJ,sBAAA,GAAhBI,gBAAgB,CAAEH,MAAM,qBAAxBD,sBAAA,CAA0BQ,OAAO,CAClC,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;EAEZ,OAAOL,WAAW,GAAGA,WAAW,GAAGL,MAAM;AAC3C,CAAC;AAACW,OAAA,CAAAf,gBAAA,GAAAA,gBAAA;AAEK,MAAMM,kBAAkB,GAC7BL,UAAkC,IACvB;EACX,MAAMe,eAAe,GAAGC,kBAAkB,CAAC,CAAC;EAC5C,IAAID,eAAe,EAAE;IACnB,MAAMT,gBAAgB,GAAGC,mBAAmB,CAACP,UAAU,EAAEe,eAAe,CAAC;;IAEzE;IACA,IAAIT,gBAAgB,YAAhBA,gBAAgB,CAAEG,YAAY,EAAE;MAClC,OAAOH,gBAAgB,CAACG,YAAY;IACtC;EACF;EAEA,OAAO,CAAAT,UAAU,oBAAVA,UAAU,CAAEiB,QAAQ,KAAI,IAAI;AACrC,CAAC;AAACH,OAAA,CAAAT,kBAAA,GAAAA,kBAAA;AAEF,MAAMW,kBAAkB,GAAGA,CAAA,KAAM;EAAA,IAAAE,SAAA;EAC/B,IAAI,OAAOC,QAAQ,KAAK,WAAW,KAAAD,SAAA,GAAIC,QAAQ,cAAAD,SAAA,GAARA,SAAA,CAAUE,QAAQ,aAAlBF,SAAA,CAAoBG,IAAI,EAAE;IAAA,IAAAC,UAAA;IAC/D,MAAMC,GAAG,GAAG,IAAIC,GAAG,EAAAF,UAAA,GAACH,QAAQ,cAAAG,UAAA,GAARA,UAAA,CAAUF,QAAQ,qBAAlBE,UAAA,CAAoBD,IAAI,CAAC;IAE7C,OAAOE,GAAG,CAACE,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC;EACrC;EAEA;AACF,CAAC;AAED,MAAMnB,mBAAmB,GAAGA,CAC1BP,UAAkC,EAClCiB,QAAgB,KACb;EAAA,IAAAU,qBAAA;EACH,OAAO3B,UAAU,aAAA2B,qBAAA,GAAV3B,UAAU,CAAE4B,YAAY,cAAAD,qBAAA,GAAxBA,qBAAA,CAA0BE,kBAAkB,qBAA5CF,qBAAA,CAA8CG,IAAI,CACtDC,IAAuB,IAAKA,IAAI,CAACtB,YAAY,KAAKQ,QACrD,CAAC;AACH,CAAC","ignoreList":[]}
@@ -4,8 +4,8 @@
4
4
 
5
5
  import { getCommonConfigHeader } from './common-config-header';
6
6
  import { getMultilingualHeader } from './multilingual-header';
7
- export const getPassThroughHeaders = essentials => {
8
- const headers = [getCommonConfigHeader(), getMultilingualHeader(essentials)];
7
+ export const getPassThroughHeaders = (locale, language) => {
8
+ const headers = [getCommonConfigHeader(), getMultilingualHeader(locale, language)];
9
9
  return headers.reduce((res, header) => {
10
10
  const entries = Object.entries(header).filter(_ref => {
11
11
  let [_, value] = _ref;
@@ -1 +1 @@
1
- {"version":3,"names":["getCommonConfigHeader","getMultilingualHeader","getPassThroughHeaders","essentials","headers","reduce","res","header","entries","Object","filter","_ref","_","value","fromEntries"],"sources":["../../../src/headers/index.ts"],"sourcesContent":["/**\n * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts\n */\n\nimport { getCommonConfigHeader } from './common-config-header';\nimport { getMultilingualHeader } from './multilingual-header';\nimport { Essentials } from '../types';\n\nexport const getPassThroughHeaders = (essentials?: Essentials) => {\n const headers = [getCommonConfigHeader(), getMultilingualHeader(essentials)];\n\n return headers.reduce((res, header) => {\n const entries = Object.entries(header).filter(([_, value]) => !!value);\n\n res = {\n ...res,\n ...Object.fromEntries(entries),\n };\n\n return res;\n }, {} as Record<string, string>);\n};\n"],"mappings":"AAAA;AACA;AACA;;AAEA,SAASA,qBAAqB,QAAQ,wBAAwB;AAC9D,SAASC,qBAAqB,QAAQ,uBAAuB;AAG7D,OAAO,MAAMC,qBAAqB,GAAIC,UAAuB,IAAK;EAChE,MAAMC,OAAO,GAAG,CAACJ,qBAAqB,CAAC,CAAC,EAAEC,qBAAqB,CAACE,UAAU,CAAC,CAAC;EAE5E,OAAOC,OAAO,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,MAAM,KAAK;IACrC,MAAMC,OAAO,GAAGC,MAAM,CAACD,OAAO,CAACD,MAAM,CAAC,CAACG,MAAM,CAACC,IAAA;MAAA,IAAC,CAACC,CAAC,EAAEC,KAAK,CAAC,GAAAF,IAAA;MAAA,OAAK,CAAC,CAACE,KAAK;IAAA,EAAC;IAEtEP,GAAG,GAAG;MACJ,GAAGA,GAAG;MACN,GAAGG,MAAM,CAACK,WAAW,CAACN,OAAO;IAC/B,CAAC;IAED,OAAOF,GAAG;EACZ,CAAC,EAAE,CAAC,CAA2B,CAAC;AAClC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getCommonConfigHeader","getMultilingualHeader","getPassThroughHeaders","locale","language","headers","reduce","res","header","entries","Object","filter","_ref","_","value","fromEntries"],"sources":["../../../src/headers/index.ts"],"sourcesContent":["/**\n * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts\n */\n\nimport { getCommonConfigHeader } from './common-config-header';\nimport { getMultilingualHeader } from './multilingual-header';\n\nexport const getPassThroughHeaders = (locale?: string, language?: string) => {\n const headers = [\n getCommonConfigHeader(),\n getMultilingualHeader(locale, language),\n ];\n\n return headers.reduce((res, header) => {\n const entries = Object.entries(header).filter(([_, value]) => !!value);\n\n res = {\n ...res,\n ...Object.fromEntries(entries),\n };\n\n return res;\n }, {} as Record<string, string>);\n};\n"],"mappings":"AAAA;AACA;AACA;;AAEA,SAASA,qBAAqB,QAAQ,wBAAwB;AAC9D,SAASC,qBAAqB,QAAQ,uBAAuB;AAE7D,OAAO,MAAMC,qBAAqB,GAAGA,CAACC,MAAe,EAAEC,QAAiB,KAAK;EAC3E,MAAMC,OAAO,GAAG,CACdL,qBAAqB,CAAC,CAAC,EACvBC,qBAAqB,CAACE,MAAM,EAAEC,QAAQ,CAAC,CACxC;EAED,OAAOC,OAAO,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,MAAM,KAAK;IACrC,MAAMC,OAAO,GAAGC,MAAM,CAACD,OAAO,CAACD,MAAM,CAAC,CAACG,MAAM,CAACC,IAAA;MAAA,IAAC,CAACC,CAAC,EAAEC,KAAK,CAAC,GAAAF,IAAA;MAAA,OAAK,CAAC,CAACE,KAAK;IAAA,EAAC;IAEtEP,GAAG,GAAG;MACJ,GAAGA,GAAG;MACN,GAAGG,MAAM,CAACK,WAAW,CAACN,OAAO;IAC/B,CAAC;IAED,OAAOF,GAAG;EACZ,CAAC,EAAE,CAAC,CAA2B,CAAC;AAClC,CAAC","ignoreList":[]}
@@ -1,21 +1,13 @@
1
- import { getLanguageLocale, getCurrentLocale } from '../utils/multilingual-utils';
2
1
  export const MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';
3
2
 
4
3
  // Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .
5
4
  export const DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';
6
- export const getMultilingualHeader = essentials => {
7
- var _multilingual$support;
8
- const currentLocale = getCurrentLocale(essentials);
9
- const multilingual = essentials == null ? void 0 : essentials.multilingual;
10
- if (currentLocale && multilingual != null && (_multilingual$support = multilingual.supportedLanguages) != null && _multilingual$support.length) {
11
- var _multilingual$support2;
12
- const language = multilingual == null || (_multilingual$support2 = multilingual.supportedLanguages) == null ? void 0 : _multilingual$support2.find(lang => getLanguageLocale(lang) === currentLocale);
13
- if (language) {
14
- return {
15
- [MULTILINGUAL_HEADER_KEY]: `${language.languageCode}|${currentLocale.toLowerCase()}|${!!language.isPrimary}|${DUMMY_INSTANCE_ID}`
16
- };
17
- }
5
+ export const getMultilingualHeader = (locale, language) => {
6
+ if (!locale || !language) {
7
+ return {};
18
8
  }
19
- return {};
9
+ return {
10
+ [MULTILINGUAL_HEADER_KEY]: `${language}|${locale.toLowerCase()}|false|${DUMMY_INSTANCE_ID}`
11
+ };
20
12
  };
21
13
  //# sourceMappingURL=multilingual-header.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getLanguageLocale","getCurrentLocale","MULTILINGUAL_HEADER_KEY","DUMMY_INSTANCE_ID","getMultilingualHeader","essentials","_multilingual$support","currentLocale","multilingual","supportedLanguages","length","_multilingual$support2","language","find","lang","languageCode","toLowerCase","isPrimary"],"sources":["../../../src/headers/multilingual-header.ts"],"sourcesContent":["import type { Essentials, SupportedLanguage } from '../types';\nimport {\n getLanguageLocale,\n getCurrentLocale,\n} from '../utils/multilingual-utils';\n\nexport const MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';\n\n// Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .\nexport const DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';\n\nexport const getMultilingualHeader = (essentials?: Essentials) => {\n const currentLocale = getCurrentLocale(essentials);\n const multilingual = essentials?.multilingual;\n\n if (currentLocale && multilingual?.supportedLanguages?.length) {\n const language = multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => getLanguageLocale(lang) === currentLocale,\n );\n if (language) {\n return {\n [MULTILINGUAL_HEADER_KEY]: `${\n language.languageCode\n }|${currentLocale.toLowerCase()}|${!!language.isPrimary}|${DUMMY_INSTANCE_ID}`,\n };\n }\n }\n return {};\n};\n"],"mappings":"AACA,SACEA,iBAAiB,EACjBC,gBAAgB,QACX,6BAA6B;AAEpC,OAAO,MAAMC,uBAAuB,GAAG,gBAAgB;;AAEvD;AACA,OAAO,MAAMC,iBAAiB,GAAG,sCAAsC;AAEvE,OAAO,MAAMC,qBAAqB,GAAIC,UAAuB,IAAK;EAAA,IAAAC,qBAAA;EAChE,MAAMC,aAAa,GAAGN,gBAAgB,CAACI,UAAU,CAAC;EAClD,MAAMG,YAAY,GAAGH,UAAU,oBAAVA,UAAU,CAAEG,YAAY;EAE7C,IAAID,aAAa,IAAIC,YAAY,aAAAF,qBAAA,GAAZE,YAAY,CAAEC,kBAAkB,aAAhCH,qBAAA,CAAkCI,MAAM,EAAE;IAAA,IAAAC,sBAAA;IAC7D,MAAMC,QAAQ,GAAGJ,YAAY,aAAAG,sBAAA,GAAZH,YAAY,CAAEC,kBAAkB,qBAAhCE,sBAAA,CAAkCE,IAAI,CACpDC,IAAuB,IAAKd,iBAAiB,CAACc,IAAI,CAAC,KAAKP,aAC3D,CAAC;IACD,IAAIK,QAAQ,EAAE;MACZ,OAAO;QACL,CAACV,uBAAuB,GAAG,GACzBU,QAAQ,CAACG,YAAY,IACnBR,aAAa,CAACS,WAAW,CAAC,CAAC,IAAI,CAAC,CAACJ,QAAQ,CAACK,SAAS,IAAId,iBAAiB;MAC9E,CAAC;IACH;EACF;EACA,OAAO,CAAC,CAAC;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["MULTILINGUAL_HEADER_KEY","DUMMY_INSTANCE_ID","getMultilingualHeader","locale","language","toLowerCase"],"sources":["../../../src/headers/multilingual-header.ts"],"sourcesContent":["export const MULTILINGUAL_HEADER_KEY = 'x-wix-linguist';\n\n// Hard coded UUID for multilingual support https://wix.slack.com/archives/C04BFK71QHW/p1676992832913939 .\nexport const DUMMY_INSTANCE_ID = '00000000-0000-0000-0000-000000000000';\n\nexport const getMultilingualHeader = (locale?: string, language?: string) => {\n if (!locale || !language) {\n return {};\n }\n\n return {\n [MULTILINGUAL_HEADER_KEY]: `${language}|${locale.toLowerCase()}|false|${DUMMY_INSTANCE_ID}`,\n };\n};\n"],"mappings":"AAAA,OAAO,MAAMA,uBAAuB,GAAG,gBAAgB;;AAEvD;AACA,OAAO,MAAMC,iBAAiB,GAAG,sCAAsC;AAEvE,OAAO,MAAMC,qBAAqB,GAAGA,CAACC,MAAe,EAAEC,QAAiB,KAAK;EAC3E,IAAI,CAACD,MAAM,IAAI,CAACC,QAAQ,EAAE;IACxB,OAAO,CAAC,CAAC;EACX;EAEA,OAAO;IACL,CAACJ,uBAAuB,GAAG,GAAGI,QAAQ,IAAID,MAAM,CAACE,WAAW,CAAC,CAAC,UAAUJ,iBAAiB;EAC3F,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { createVeloMonitoringClient } from '@wix/monitoring-velo';
2
2
  import { getPassThroughHeaders } from './headers';
3
3
  import { resolveAuthToken } from './utils/auth-utils';
4
- import { getCurrentLocale } from './utils/multilingual-utils';
4
+ import { getCurrentLocale, getCurrentLanguage } from './utils/multilingual-utils';
5
5
  export const createHostModule = () => {
6
6
  return {
7
7
  __type: 'host',
@@ -15,10 +15,12 @@ export const createHostModule = () => {
15
15
  return {
16
16
  essentials: {
17
17
  get passThroughHeaders() {
18
- return getPassThroughHeaders(getNormalizedEssentials(essentials));
18
+ const currentLanguage = getCurrentLanguage(getNormalizedEssentials(essentials));
19
+ const currentLocale = getCurrentLocale(getNormalizedEssentials(essentials));
20
+ return getPassThroughHeaders(currentLocale, currentLanguage);
19
21
  },
20
22
  get language() {
21
- return getNormalizedEssentials(essentials).language ?? 'en';
23
+ return getCurrentLanguage(getNormalizedEssentials(essentials));
22
24
  },
23
25
  get locale() {
24
26
  return getCurrentLocale(getNormalizedEssentials(essentials));
@@ -1 +1 @@
1
- {"version":3,"names":["createVeloMonitoringClient","getPassThroughHeaders","resolveAuthToken","getCurrentLocale","createHostModule","__type","create","host","_temp","essentials","passThroughHeaders","getNormalizedEssentials","language","locale","timezone","getMonitoringClient","producer","req","document","location","href","Request","namespace","getAuthToken","_window$essentials","_window$essentials2","_window$essentials3","_window$essentials4","window","undefined","timeZone","multilingual"],"sources":["../../src/host-module.ts"],"sourcesContent":["import type { HostModule, Host } from '@wix/sdk-types';\nimport { createVeloMonitoringClient } from '@wix/monitoring-velo';\nimport { getPassThroughHeaders } from './headers';\nimport { resolveAuthToken } from './utils/auth-utils';\nimport type { Essentials, SDK, SDKOptions } from './types';\nimport { getCurrentLocale } from './utils/multilingual-utils';\n\nexport const createHostModule = (): HostModule<SDK, Host> & {\n host: (options: SDKOptions) => Host;\n} => {\n return {\n __type: 'host',\n create: () => {\n return {};\n },\n host: ({ essentials }: SDKOptions = {}) => {\n return {\n essentials: {\n get passThroughHeaders() {\n return getPassThroughHeaders(getNormalizedEssentials(essentials));\n },\n get language() {\n return getNormalizedEssentials(essentials).language ?? 'en';\n },\n get locale() {\n return getCurrentLocale(getNormalizedEssentials(essentials));\n },\n get timezone() {\n return getNormalizedEssentials(essentials).timezone ?? 'UTC';\n },\n },\n getMonitoringClient: () => {\n let producer = 'unknown';\n let req: Request | undefined;\n\n if (typeof document !== 'undefined') {\n producer = document.location.href;\n req = new Request(document.location.href);\n }\n\n return createVeloMonitoringClient({\n namespace: 'Headless',\n producer,\n getAuthToken: async () => resolveAuthToken(),\n req,\n });\n },\n };\n },\n };\n};\n\n// Normalize essentials by merging with window.essentials, handling property name differences\n// Use a function to maintain reactivity to window.essentials changes\nconst getNormalizedEssentials = (essentials?: Essentials): Essentials => ({\n ...essentials,\n ...(typeof window !== 'undefined' ? window.essentials : {}),\n language:\n essentials?.language ??\n (typeof window !== 'undefined' ? window.essentials?.language : undefined) ??\n 'en',\n locale:\n essentials?.locale ??\n (typeof window !== 'undefined' ? window.essentials?.locale : undefined),\n timezone:\n essentials?.timezone ??\n (typeof window !== 'undefined' ? window.essentials?.timeZone : undefined),\n multilingual:\n essentials?.multilingual ??\n (typeof window !== 'undefined'\n ? window.essentials?.multilingual\n : undefined),\n});\n"],"mappings":"AACA,SAASA,0BAA0B,QAAQ,sBAAsB;AACjE,SAASC,qBAAqB,QAAQ,WAAW;AACjD,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,SAASC,gBAAgB,QAAQ,4BAA4B;AAE7D,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAE3B;EACH,OAAO;IACLC,MAAM,EAAE,MAAM;IACdC,MAAM,EAAEA,CAAA,KAAM;MACZ,OAAO,CAAC,CAAC;IACX,CAAC;IACDC,IAAI,EAAE,SAAAA,CAAAC,KAAA,EAAqC;MAAA,IAApC;QAAEC;MAAuB,CAAC,GAAAD,KAAA,cAAG,CAAC,CAAC,GAAAA,KAAA;MACpC,OAAO;QACLC,UAAU,EAAE;UACV,IAAIC,kBAAkBA,CAAA,EAAG;YACvB,OAAOT,qBAAqB,CAACU,uBAAuB,CAACF,UAAU,CAAC,CAAC;UACnE,CAAC;UACD,IAAIG,QAAQA,CAAA,EAAG;YACb,OAAOD,uBAAuB,CAACF,UAAU,CAAC,CAACG,QAAQ,IAAI,IAAI;UAC7D,CAAC;UACD,IAAIC,MAAMA,CAAA,EAAG;YACX,OAAOV,gBAAgB,CAACQ,uBAAuB,CAACF,UAAU,CAAC,CAAC;UAC9D,CAAC;UACD,IAAIK,QAAQA,CAAA,EAAG;YACb,OAAOH,uBAAuB,CAACF,UAAU,CAAC,CAACK,QAAQ,IAAI,KAAK;UAC9D;QACF,CAAC;QACDC,mBAAmB,EAAEA,CAAA,KAAM;UACzB,IAAIC,QAAQ,GAAG,SAAS;UACxB,IAAIC,GAAwB;UAE5B,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;YACnCF,QAAQ,GAAGE,QAAQ,CAACC,QAAQ,CAACC,IAAI;YACjCH,GAAG,GAAG,IAAII,OAAO,CAACH,QAAQ,CAACC,QAAQ,CAACC,IAAI,CAAC;UAC3C;UAEA,OAAOpB,0BAA0B,CAAC;YAChCsB,SAAS,EAAE,UAAU;YACrBN,QAAQ;YACRO,YAAY,EAAE,MAAAA,CAAA,KAAYrB,gBAAgB,CAAC,CAAC;YAC5Ce;UACF,CAAC,CAAC;QACJ;MACF,CAAC;IACH;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA,MAAMN,uBAAuB,GAAIF,UAAuB;EAAA,IAAAe,kBAAA,EAAAC,mBAAA,EAAAC,mBAAA,EAAAC,mBAAA;EAAA,OAAkB;IACxE,GAAGlB,UAAU;IACb,IAAI,OAAOmB,MAAM,KAAK,WAAW,GAAGA,MAAM,CAACnB,UAAU,GAAG,CAAC,CAAC,CAAC;IAC3DG,QAAQ,EACN,CAAAH,UAAU,oBAAVA,UAAU,CAAEG,QAAQ,MACnB,OAAOgB,MAAM,KAAK,WAAW,IAAAJ,kBAAA,GAAGI,MAAM,CAACnB,UAAU,qBAAjBe,kBAAA,CAAmBZ,QAAQ,GAAGiB,SAAS,CAAC,IACzE,IAAI;IACNhB,MAAM,EACJ,CAAAJ,UAAU,oBAAVA,UAAU,CAAEI,MAAM,MACjB,OAAOe,MAAM,KAAK,WAAW,IAAAH,mBAAA,GAAGG,MAAM,CAACnB,UAAU,qBAAjBgB,mBAAA,CAAmBZ,MAAM,GAAGgB,SAAS,CAAC;IACzEf,QAAQ,EACN,CAAAL,UAAU,oBAAVA,UAAU,CAAEK,QAAQ,MACnB,OAAOc,MAAM,KAAK,WAAW,IAAAF,mBAAA,GAAGE,MAAM,CAACnB,UAAU,qBAAjBiB,mBAAA,CAAmBI,QAAQ,GAAGD,SAAS,CAAC;IAC3EE,YAAY,EACV,CAAAtB,UAAU,oBAAVA,UAAU,CAAEsB,YAAY,MACvB,OAAOH,MAAM,KAAK,WAAW,IAAAD,mBAAA,GAC1BC,MAAM,CAACnB,UAAU,qBAAjBkB,mBAAA,CAAmBI,YAAY,GAC/BF,SAAS;EACjB,CAAC;AAAA,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createVeloMonitoringClient","getPassThroughHeaders","resolveAuthToken","getCurrentLocale","getCurrentLanguage","createHostModule","__type","create","host","_temp","essentials","passThroughHeaders","currentLanguage","getNormalizedEssentials","currentLocale","language","locale","timezone","getMonitoringClient","producer","req","document","location","href","Request","namespace","getAuthToken","_window$essentials","_window$essentials2","_window$essentials3","_window$essentials4","window","undefined","timeZone","multilingual"],"sources":["../../src/host-module.ts"],"sourcesContent":["import type { HostModule, Host } from '@wix/sdk-types';\nimport { createVeloMonitoringClient } from '@wix/monitoring-velo';\nimport { getPassThroughHeaders } from './headers';\nimport { resolveAuthToken } from './utils/auth-utils';\nimport type { Essentials, SDK, SDKOptions } from './types';\nimport {\n getCurrentLocale,\n getCurrentLanguage,\n} from './utils/multilingual-utils';\n\nexport const createHostModule = (): HostModule<SDK, Host> & {\n host: (options: SDKOptions) => Host;\n} => {\n return {\n __type: 'host',\n create: () => {\n return {};\n },\n host: ({ essentials }: SDKOptions = {}) => {\n return {\n essentials: {\n get passThroughHeaders() {\n const currentLanguage = getCurrentLanguage(\n getNormalizedEssentials(essentials),\n );\n const currentLocale = getCurrentLocale(\n getNormalizedEssentials(essentials),\n );\n\n return getPassThroughHeaders(currentLocale, currentLanguage);\n },\n get language() {\n return getCurrentLanguage(getNormalizedEssentials(essentials));\n },\n get locale() {\n return getCurrentLocale(getNormalizedEssentials(essentials));\n },\n get timezone() {\n return getNormalizedEssentials(essentials).timezone ?? 'UTC';\n },\n },\n getMonitoringClient: () => {\n let producer = 'unknown';\n let req: Request | undefined;\n\n if (typeof document !== 'undefined') {\n producer = document.location.href;\n req = new Request(document.location.href);\n }\n\n return createVeloMonitoringClient({\n namespace: 'Headless',\n producer,\n getAuthToken: async () => resolveAuthToken(),\n req,\n });\n },\n };\n },\n };\n};\n\n// Normalize essentials by merging with window.essentials, handling property name differences\n// Use a function to maintain reactivity to window.essentials changes\nconst getNormalizedEssentials = (essentials?: Essentials): Essentials => ({\n ...essentials,\n ...(typeof window !== 'undefined' ? window.essentials : {}),\n language:\n essentials?.language ??\n (typeof window !== 'undefined' ? window.essentials?.language : undefined) ??\n 'en',\n locale:\n essentials?.locale ??\n (typeof window !== 'undefined' ? window.essentials?.locale : undefined),\n timezone:\n essentials?.timezone ??\n (typeof window !== 'undefined' ? window.essentials?.timeZone : undefined),\n multilingual:\n essentials?.multilingual ??\n (typeof window !== 'undefined'\n ? window.essentials?.multilingual\n : undefined),\n});\n"],"mappings":"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","ignoreList":[]}
package/dist/esm/types.js CHANGED
@@ -1,2 +1,7 @@
1
-
1
+ export let ResolutionMethod = /*#__PURE__*/function (ResolutionMethod) {
2
+ ResolutionMethod["QUERY_PARAM"] = "QUERY_PARAM";
3
+ ResolutionMethod["SUBDOMAIN"] = "SUBDOMAIN";
4
+ ResolutionMethod["SUBDIRECTORY"] = "SUBDIRECTORY";
5
+ return ResolutionMethod;
6
+ }({});
2
7
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../src/types.ts"],"sourcesContent":["export type SDK = {};\n\ndeclare global {\n interface Window {\n essentials: {\n language: string;\n locale?: string;\n timeZone?: string;\n multilingual?: Multilingual;\n };\n }\n}\n\nexport interface SDKOptions {\n essentials?: Essentials;\n}\n\nexport interface Essentials {\n language?: string;\n locale?: string;\n timezone?: string;\n multilingual?: Multilingual;\n}\n\nexport interface Multilingual {\n supportedLanguages?: SupportedLanguage[];\n}\n\nexport interface SupportedLanguage {\n languageCode?: string;\n isPrimary?: boolean;\n countryCode?: string;\n isVisitorPrimary?: boolean;\n locale?: Locale;\n}\n\nexport interface Locale {\n languageCode?: string;\n country?: string;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":["ResolutionMethod"],"sources":["../../src/types.ts"],"sourcesContent":["export type SDK = {};\n\ndeclare global {\n interface Window {\n essentials: {\n language: string;\n locale?: string;\n timeZone?: string;\n multilingual?: Multilingual;\n };\n }\n}\n\nexport interface SDKOptions {\n essentials?: Essentials;\n}\n\nexport interface Essentials {\n language?: string;\n locale?: string;\n timezone?: string;\n multilingual?: Multilingual;\n}\n\nexport interface Multilingual {\n autoRedirect?: boolean;\n supportedLanguages?: SupportedLanguage[];\n}\n\nexport interface SupportedLanguage {\n countryCode?: string;\n isPrimary?: boolean;\n isVisitorPrimary?: boolean;\n languageCode?: string;\n locale?: Locale;\n resolutionMethod?: ResolutionMethod;\n}\n\nexport enum ResolutionMethod {\n QUERY_PARAM = 'QUERY_PARAM',\n SUBDOMAIN = 'SUBDOMAIN',\n SUBDIRECTORY = 'SUBDIRECTORY',\n}\n\nexport interface Locale {\n languageCode?: string;\n country?: string;\n}\n"],"mappings":"AAsCA,WAAYA,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA","ignoreList":[]}
@@ -1,32 +1,37 @@
1
- export function getLanguageLocale(language) {
2
- var _language$locale;
3
- if (!(language != null && language.languageCode)) {
4
- return undefined;
5
- }
6
- return [language.languageCode, (_language$locale = language.locale) == null ? void 0 : _language$locale.country].filter(Boolean).join('-');
7
- }
8
1
  export const getCurrentLocale = essentials => {
9
- var _document;
10
- let locale = essentials == null ? void 0 : essentials.locale;
11
- if (typeof document !== 'undefined' && (_document = document) != null && (_document = _document.location) != null && _document.href) {
12
- try {
13
- var _document2;
14
- const url = new URL((_document2 = document) == null || (_document2 = _document2.location) == null ? void 0 : _document2.href);
15
- const localeSearchParam = url.searchParams.get('lang'); // e.g., mysite.com/?lang=en
16
-
17
- if (localeSearchParam) {
18
- var _essentials$multiling;
19
- const language = essentials == null || (_essentials$multiling = essentials.multilingual) == null || (_essentials$multiling = _essentials$multiling.supportedLanguages) == null ? void 0 : _essentials$multiling.find(lang => lang.languageCode === localeSearchParam);
2
+ var _selectedLanguage$loc, _selectedLanguage$loc2;
3
+ const locale = (essentials == null ? void 0 : essentials.locale) ?? 'en-US';
4
+ const currentLanguage = getCurrentLanguage(essentials);
5
+ if (!currentLanguage) {
6
+ return locale;
7
+ }
8
+ const selectedLanguage = getSelectedLanguage(essentials, currentLanguage);
9
+ const maybeLocale = [selectedLanguage == null || (_selectedLanguage$loc = selectedLanguage.locale) == null ? void 0 : _selectedLanguage$loc.languageCode, selectedLanguage == null || (_selectedLanguage$loc2 = selectedLanguage.locale) == null ? void 0 : _selectedLanguage$loc2.country].filter(Boolean).join('-');
10
+ return maybeLocale ? maybeLocale : locale;
11
+ };
12
+ export const getCurrentLanguage = essentials => {
13
+ const languageFromUrl = getLanguageFromUrl();
14
+ if (languageFromUrl) {
15
+ const selectedLanguage = getSelectedLanguage(essentials, languageFromUrl);
20
16
 
21
- // verify it's a valid locale
22
- if (language != null && language.languageCode) {
23
- locale = getLanguageLocale(language);
24
- }
25
- }
26
- } catch {
27
- // Invalid URL, ignore
17
+ // validate the language is supported
18
+ if (selectedLanguage != null && selectedLanguage.languageCode) {
19
+ return selectedLanguage.languageCode;
28
20
  }
29
21
  }
30
- return locale ?? 'en-US';
22
+ return (essentials == null ? void 0 : essentials.language) ?? 'en';
23
+ };
24
+ const getLanguageFromUrl = () => {
25
+ var _document;
26
+ if (typeof document !== 'undefined' && (_document = document) != null && (_document = _document.location) != null && _document.href) {
27
+ var _document2;
28
+ const url = new URL((_document2 = document) == null || (_document2 = _document2.location) == null ? void 0 : _document2.href);
29
+ return url.searchParams.get('lang');
30
+ }
31
+ return;
32
+ };
33
+ const getSelectedLanguage = (essentials, language) => {
34
+ var _essentials$multiling;
35
+ return essentials == null || (_essentials$multiling = essentials.multilingual) == null || (_essentials$multiling = _essentials$multiling.supportedLanguages) == null ? void 0 : _essentials$multiling.find(lang => lang.languageCode === language);
31
36
  };
32
37
  //# sourceMappingURL=multilingual-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getLanguageLocale","language","_language$locale","languageCode","undefined","locale","country","filter","Boolean","join","getCurrentLocale","essentials","_document","document","location","href","_document2","url","URL","localeSearchParam","searchParams","get","_essentials$multiling","multilingual","supportedLanguages","find","lang"],"sources":["../../../src/utils/multilingual-utils.ts"],"sourcesContent":["import type { SupportedLanguage, Essentials } from '../types';\n\nexport function getLanguageLocale(language: SupportedLanguage) {\n if (!language?.languageCode) {\n return undefined;\n }\n\n return [language.languageCode, language.locale?.country]\n .filter(Boolean)\n .join('-');\n}\n\nexport const getCurrentLocale = (essentials: Essentials | undefined) => {\n let locale = essentials?.locale;\n\n if (typeof document !== 'undefined' && document?.location?.href) {\n try {\n const url = new URL(document?.location?.href);\n\n const localeSearchParam = url.searchParams.get('lang'); // e.g., mysite.com/?lang=en\n\n if (localeSearchParam) {\n const language = essentials?.multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => lang.languageCode === localeSearchParam,\n );\n\n // verify it's a valid locale\n if (language?.languageCode) {\n locale = getLanguageLocale(language);\n }\n }\n } catch {\n // Invalid URL, ignore\n }\n }\n\n return locale ?? 'en-US';\n};\n"],"mappings":"AAEA,OAAO,SAASA,iBAAiBA,CAACC,QAA2B,EAAE;EAAA,IAAAC,gBAAA;EAC7D,IAAI,EAACD,QAAQ,YAARA,QAAQ,CAAEE,YAAY,GAAE;IAC3B,OAAOC,SAAS;EAClB;EAEA,OAAO,CAACH,QAAQ,CAACE,YAAY,GAAAD,gBAAA,GAAED,QAAQ,CAACI,MAAM,qBAAfH,gBAAA,CAAiBI,OAAO,CAAC,CACrDC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;AACd;AAEA,OAAO,MAAMC,gBAAgB,GAAIC,UAAkC,IAAK;EAAA,IAAAC,SAAA;EACtE,IAAIP,MAAM,GAAGM,UAAU,oBAAVA,UAAU,CAAEN,MAAM;EAE/B,IAAI,OAAOQ,QAAQ,KAAK,WAAW,KAAAD,SAAA,GAAIC,QAAQ,cAAAD,SAAA,GAARA,SAAA,CAAUE,QAAQ,aAAlBF,SAAA,CAAoBG,IAAI,EAAE;IAC/D,IAAI;MAAA,IAAAC,UAAA;MACF,MAAMC,GAAG,GAAG,IAAIC,GAAG,EAAAF,UAAA,GAACH,QAAQ,cAAAG,UAAA,GAARA,UAAA,CAAUF,QAAQ,qBAAlBE,UAAA,CAAoBD,IAAI,CAAC;MAE7C,MAAMI,iBAAiB,GAAGF,GAAG,CAACG,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;;MAExD,IAAIF,iBAAiB,EAAE;QAAA,IAAAG,qBAAA;QACrB,MAAMrB,QAAQ,GAAGU,UAAU,aAAAW,qBAAA,GAAVX,UAAU,CAAEY,YAAY,cAAAD,qBAAA,GAAxBA,qBAAA,CAA0BE,kBAAkB,qBAA5CF,qBAAA,CAA8CG,IAAI,CAChEC,IAAuB,IAAKA,IAAI,CAACvB,YAAY,KAAKgB,iBACrD,CAAC;;QAED;QACA,IAAIlB,QAAQ,YAARA,QAAQ,CAAEE,YAAY,EAAE;UAC1BE,MAAM,GAAGL,iBAAiB,CAACC,QAAQ,CAAC;QACtC;MACF;IACF,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAOI,MAAM,IAAI,OAAO;AAC1B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getCurrentLocale","essentials","_selectedLanguage$loc","_selectedLanguage$loc2","locale","currentLanguage","getCurrentLanguage","selectedLanguage","getSelectedLanguage","maybeLocale","languageCode","country","filter","Boolean","join","languageFromUrl","getLanguageFromUrl","language","_document","document","location","href","_document2","url","URL","searchParams","get","_essentials$multiling","multilingual","supportedLanguages","find","lang"],"sources":["../../../src/utils/multilingual-utils.ts"],"sourcesContent":["import type { SupportedLanguage, Essentials } from '../types';\n\nexport const getCurrentLocale = (\n essentials: Essentials | undefined,\n): string => {\n const locale = essentials?.locale ?? 'en-US';\n const currentLanguage = getCurrentLanguage(essentials);\n\n if (!currentLanguage) {\n return locale;\n }\n const selectedLanguage = getSelectedLanguage(essentials, currentLanguage);\n\n const maybeLocale = [\n selectedLanguage?.locale?.languageCode,\n selectedLanguage?.locale?.country,\n ]\n .filter(Boolean)\n .join('-');\n\n return maybeLocale ? maybeLocale : locale;\n};\n\nexport const getCurrentLanguage = (\n essentials: Essentials | undefined,\n): string => {\n const languageFromUrl = getLanguageFromUrl();\n if (languageFromUrl) {\n const selectedLanguage = getSelectedLanguage(essentials, languageFromUrl);\n\n // validate the language is supported\n if (selectedLanguage?.languageCode) {\n return selectedLanguage.languageCode;\n }\n }\n\n return essentials?.language ?? 'en';\n};\n\nconst getLanguageFromUrl = () => {\n if (typeof document !== 'undefined' && document?.location?.href) {\n const url = new URL(document?.location?.href);\n\n return url.searchParams.get('lang');\n }\n\n return;\n};\n\nconst getSelectedLanguage = (\n essentials: Essentials | undefined,\n language: string,\n) => {\n return essentials?.multilingual?.supportedLanguages?.find(\n (lang: SupportedLanguage) => lang.languageCode === language,\n );\n};\n"],"mappings":"AAEA,OAAO,MAAMA,gBAAgB,GAC3BC,UAAkC,IACvB;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EACX,MAAMC,MAAM,GAAG,CAAAH,UAAU,oBAAVA,UAAU,CAAEG,MAAM,KAAI,OAAO;EAC5C,MAAMC,eAAe,GAAGC,kBAAkB,CAACL,UAAU,CAAC;EAEtD,IAAI,CAACI,eAAe,EAAE;IACpB,OAAOD,MAAM;EACf;EACA,MAAMG,gBAAgB,GAAGC,mBAAmB,CAACP,UAAU,EAAEI,eAAe,CAAC;EAEzE,MAAMI,WAAW,GAAG,CAClBF,gBAAgB,aAAAL,qBAAA,GAAhBK,gBAAgB,CAAEH,MAAM,qBAAxBF,qBAAA,CAA0BQ,YAAY,EACtCH,gBAAgB,aAAAJ,sBAAA,GAAhBI,gBAAgB,CAAEH,MAAM,qBAAxBD,sBAAA,CAA0BQ,OAAO,CAClC,CACEC,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC;EAEZ,OAAOL,WAAW,GAAGA,WAAW,GAAGL,MAAM;AAC3C,CAAC;AAED,OAAO,MAAME,kBAAkB,GAC7BL,UAAkC,IACvB;EACX,MAAMc,eAAe,GAAGC,kBAAkB,CAAC,CAAC;EAC5C,IAAID,eAAe,EAAE;IACnB,MAAMR,gBAAgB,GAAGC,mBAAmB,CAACP,UAAU,EAAEc,eAAe,CAAC;;IAEzE;IACA,IAAIR,gBAAgB,YAAhBA,gBAAgB,CAAEG,YAAY,EAAE;MAClC,OAAOH,gBAAgB,CAACG,YAAY;IACtC;EACF;EAEA,OAAO,CAAAT,UAAU,oBAAVA,UAAU,CAAEgB,QAAQ,KAAI,IAAI;AACrC,CAAC;AAED,MAAMD,kBAAkB,GAAGA,CAAA,KAAM;EAAA,IAAAE,SAAA;EAC/B,IAAI,OAAOC,QAAQ,KAAK,WAAW,KAAAD,SAAA,GAAIC,QAAQ,cAAAD,SAAA,GAARA,SAAA,CAAUE,QAAQ,aAAlBF,SAAA,CAAoBG,IAAI,EAAE;IAAA,IAAAC,UAAA;IAC/D,MAAMC,GAAG,GAAG,IAAIC,GAAG,EAAAF,UAAA,GAACH,QAAQ,cAAAG,UAAA,GAARA,UAAA,CAAUF,QAAQ,qBAAlBE,UAAA,CAAoBD,IAAI,CAAC;IAE7C,OAAOE,GAAG,CAACE,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC;EACrC;EAEA;AACF,CAAC;AAED,MAAMlB,mBAAmB,GAAGA,CAC1BP,UAAkC,EAClCgB,QAAgB,KACb;EAAA,IAAAU,qBAAA;EACH,OAAO1B,UAAU,aAAA0B,qBAAA,GAAV1B,UAAU,CAAE2B,YAAY,cAAAD,qBAAA,GAAxBA,qBAAA,CAA0BE,kBAAkB,qBAA5CF,qBAAA,CAA8CG,IAAI,CACtDC,IAAuB,IAAKA,IAAI,CAACrB,YAAY,KAAKO,QACrD,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  /**
2
2
  * Based on https://github.com/wix-private/metro/blob/master/packages/wix-headers/src/index.ts
3
3
  */
4
- import { Essentials } from '../types';
5
- export declare const getPassThroughHeaders: (essentials?: Essentials) => Record<string, string>;
4
+ export declare const getPassThroughHeaders: (locale?: string, language?: string) => Record<string, string>;
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/headers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,eAAO,MAAM,qBAAqB,gBAAiB,UAAU,2BAa5D,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/headers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,qBAAqB,YAAa,MAAM,aAAa,MAAM,2BAgBvE,CAAC"}
@@ -1,9 +1,8 @@
1
- import type { Essentials } from '../types';
2
1
  export declare const MULTILINGUAL_HEADER_KEY = "x-wix-linguist";
3
2
  export declare const DUMMY_INSTANCE_ID = "00000000-0000-0000-0000-000000000000";
4
- export declare const getMultilingualHeader: (essentials?: Essentials) => {
5
- "x-wix-linguist": string;
6
- } | {
3
+ export declare const getMultilingualHeader: (locale?: string, language?: string) => {
7
4
  "x-wix-linguist"?: undefined;
5
+ } | {
6
+ "x-wix-linguist": string;
8
7
  };
9
8
  //# sourceMappingURL=multilingual-header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"multilingual-header.d.ts","sourceRoot":"","sources":["../../../src/headers/multilingual-header.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,UAAU,CAAC;AAM9D,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAGxD,eAAO,MAAM,iBAAiB,yCAAyC,CAAC;AAExE,eAAO,MAAM,qBAAqB,gBAAiB,UAAU;;;;CAiB5D,CAAC"}
1
+ {"version":3,"file":"multilingual-header.d.ts","sourceRoot":"","sources":["../../../src/headers/multilingual-header.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAGxD,eAAO,MAAM,iBAAiB,yCAAyC,CAAC;AAExE,eAAO,MAAM,qBAAqB,YAAa,MAAM,aAAa,MAAM;;;;CAQvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"host-module.d.ts","sourceRoot":"","sources":["../../src/host-module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAIvD,OAAO,KAAK,EAAc,GAAG,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG3D,eAAO,MAAM,gBAAgB;oBACX,UAAU,KAAK,IAAI;CA0CpC,CAAC"}
1
+ {"version":3,"file":"host-module.d.ts","sourceRoot":"","sources":["../../src/host-module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAIvD,OAAO,KAAK,EAAc,GAAG,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAM3D,eAAO,MAAM,gBAAgB;oBACX,UAAU,KAAK,IAAI;CAiDpC,CAAC"}
@@ -19,14 +19,21 @@ export interface Essentials {
19
19
  multilingual?: Multilingual;
20
20
  }
21
21
  export interface Multilingual {
22
+ autoRedirect?: boolean;
22
23
  supportedLanguages?: SupportedLanguage[];
23
24
  }
24
25
  export interface SupportedLanguage {
25
- languageCode?: string;
26
- isPrimary?: boolean;
27
26
  countryCode?: string;
27
+ isPrimary?: boolean;
28
28
  isVisitorPrimary?: boolean;
29
+ languageCode?: string;
29
30
  locale?: Locale;
31
+ resolutionMethod?: ResolutionMethod;
32
+ }
33
+ export declare enum ResolutionMethod {
34
+ QUERY_PARAM = "QUERY_PARAM",
35
+ SUBDOMAIN = "SUBDOMAIN",
36
+ SUBDIRECTORY = "SUBDIRECTORY"
30
37
  }
31
38
  export interface Locale {
32
39
  languageCode?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,GAAG,GAAG,EAAE,CAAC;AAErB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM,CAAC;YACjB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,YAAY,CAAC,EAAE,YAAY,CAAC;SAC7B,CAAC;KACH;CACF;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,MAAM;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,GAAG,GAAG,EAAE,CAAC;AAErB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM,CAAC;YACjB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,YAAY,CAAC,EAAE,YAAY,CAAC;SAC7B,CAAC;KACH;CACF;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,oBAAY,gBAAgB;IAC1B,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,YAAY,iBAAiB;CAC9B;AAED,MAAM,WAAW,MAAM;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -1,4 +1,4 @@
1
- import type { SupportedLanguage, Essentials } from '../types';
2
- export declare function getLanguageLocale(language: SupportedLanguage): string | undefined;
1
+ import type { Essentials } from '../types';
3
2
  export declare const getCurrentLocale: (essentials: Essentials | undefined) => string;
3
+ export declare const getCurrentLanguage: (essentials: Essentials | undefined) => string;
4
4
  //# sourceMappingURL=multilingual-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"multilingual-utils.d.ts","sourceRoot":"","sources":["../../../src/utils/multilingual-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,sBAQ5D;AAED,eAAO,MAAM,gBAAgB,eAAgB,UAAU,GAAG,SAAS,WAyBlE,CAAC"}
1
+ {"version":3,"file":"multilingual-utils.d.ts","sourceRoot":"","sources":["../../../src/utils/multilingual-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,UAAU,CAAC;AAE9D,eAAO,MAAM,gBAAgB,eACf,UAAU,GAAG,SAAS,KACjC,MAiBF,CAAC;AAEF,eAAO,MAAM,kBAAkB,eACjB,UAAU,GAAG,SAAS,KACjC,MAYF,CAAC"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@wix/headless-site",
3
- "version": "1.13.0",
3
+ "version": "1.19.0",
4
4
  "unpkg": true,
5
5
  "license": "UNLICENSED",
6
6
  "author": {
7
7
  "name": "Anton Podolsky",
8
8
  "email": "antonp@wix.com"
9
9
  },
10
+ "sideEffects": false,
10
11
  "main": "dist/cjs/index.js",
11
12
  "module": "dist/esm/index.js",
12
- "sideEffects": false,
13
13
  "types": "dist/types/index.d.ts",
14
14
  "files": [
15
15
  "dist/cjs",
@@ -87,5 +87,5 @@
87
87
  "wallaby": {
88
88
  "autoDetect": true
89
89
  },
90
- "falconPackageHash": "ff023096062746a93526ff21901e3f3d02cca7e4bf3f4a3bbfaafe2a"
90
+ "falconPackageHash": "9e8b40fcdfcf0d5b91ac4cbf47dcb6f46859589ffc8d88c2e614ec61"
91
91
  }