@payloadcms/translations 3.83.0-internal.06ac84e → 3.83.0-internal.86b7bfb
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/dist/clientKeys.d.ts +1 -1
- package/dist/clientKeys.d.ts.map +1 -1
- package/dist/clientKeys.js +1 -0
- package/dist/clientKeys.js.map +1 -1
- package/dist/languages/ar.d.ts.map +1 -1
- package/dist/languages/ar.js +1 -0
- package/dist/languages/ar.js.map +1 -1
- package/dist/languages/az.d.ts.map +1 -1
- package/dist/languages/az.js +1 -0
- package/dist/languages/az.js.map +1 -1
- package/dist/languages/bg.d.ts.map +1 -1
- package/dist/languages/bg.js +1 -0
- package/dist/languages/bg.js.map +1 -1
- package/dist/languages/bnBd.d.ts.map +1 -1
- package/dist/languages/bnBd.js +1 -0
- package/dist/languages/bnBd.js.map +1 -1
- package/dist/languages/bnIn.d.ts.map +1 -1
- package/dist/languages/bnIn.js +1 -0
- package/dist/languages/bnIn.js.map +1 -1
- package/dist/languages/ca.d.ts.map +1 -1
- package/dist/languages/ca.js +1 -0
- package/dist/languages/ca.js.map +1 -1
- package/dist/languages/cs.d.ts.map +1 -1
- package/dist/languages/cs.js +1 -0
- package/dist/languages/cs.js.map +1 -1
- package/dist/languages/da.d.ts.map +1 -1
- package/dist/languages/da.js +1 -0
- package/dist/languages/da.js.map +1 -1
- package/dist/languages/de.d.ts.map +1 -1
- package/dist/languages/de.js +1 -0
- package/dist/languages/de.js.map +1 -1
- package/dist/languages/en.d.ts +1 -0
- package/dist/languages/en.d.ts.map +1 -1
- package/dist/languages/en.js +1 -0
- package/dist/languages/en.js.map +1 -1
- package/dist/languages/es.d.ts.map +1 -1
- package/dist/languages/es.js +46 -45
- package/dist/languages/es.js.map +1 -1
- package/dist/languages/et.d.ts.map +1 -1
- package/dist/languages/et.js +1 -0
- package/dist/languages/et.js.map +1 -1
- package/dist/languages/fa.d.ts.map +1 -1
- package/dist/languages/fa.js +1 -0
- package/dist/languages/fa.js.map +1 -1
- package/dist/languages/fr.d.ts.map +1 -1
- package/dist/languages/fr.js +1 -0
- package/dist/languages/fr.js.map +1 -1
- package/dist/languages/he.d.ts.map +1 -1
- package/dist/languages/he.js +1 -0
- package/dist/languages/he.js.map +1 -1
- package/dist/languages/hr.d.ts.map +1 -1
- package/dist/languages/hr.js +1 -0
- package/dist/languages/hr.js.map +1 -1
- package/dist/languages/hu.d.ts.map +1 -1
- package/dist/languages/hu.js +1 -0
- package/dist/languages/hu.js.map +1 -1
- package/dist/languages/hy.d.ts.map +1 -1
- package/dist/languages/hy.js +1 -0
- package/dist/languages/hy.js.map +1 -1
- package/dist/languages/id.d.ts.map +1 -1
- package/dist/languages/id.js +1 -0
- package/dist/languages/id.js.map +1 -1
- package/dist/languages/is.d.ts.map +1 -1
- package/dist/languages/is.js +1 -0
- package/dist/languages/is.js.map +1 -1
- package/dist/languages/it.d.ts.map +1 -1
- package/dist/languages/it.js +1 -0
- package/dist/languages/it.js.map +1 -1
- package/dist/languages/ja.d.ts.map +1 -1
- package/dist/languages/ja.js +1 -0
- package/dist/languages/ja.js.map +1 -1
- package/dist/languages/ko.d.ts.map +1 -1
- package/dist/languages/ko.js +1 -0
- package/dist/languages/ko.js.map +1 -1
- package/dist/languages/lt.d.ts.map +1 -1
- package/dist/languages/lt.js +1 -0
- package/dist/languages/lt.js.map +1 -1
- package/dist/languages/lv.d.ts.map +1 -1
- package/dist/languages/lv.js +1 -0
- package/dist/languages/lv.js.map +1 -1
- package/dist/languages/my.d.ts.map +1 -1
- package/dist/languages/my.js +1 -0
- package/dist/languages/my.js.map +1 -1
- package/dist/languages/nb.d.ts.map +1 -1
- package/dist/languages/nb.js +1 -0
- package/dist/languages/nb.js.map +1 -1
- package/dist/languages/nl.d.ts.map +1 -1
- package/dist/languages/nl.js +2 -1
- package/dist/languages/nl.js.map +1 -1
- package/dist/languages/pl.d.ts.map +1 -1
- package/dist/languages/pl.js +1 -0
- package/dist/languages/pl.js.map +1 -1
- package/dist/languages/pt.d.ts.map +1 -1
- package/dist/languages/pt.js +1 -0
- package/dist/languages/pt.js.map +1 -1
- package/dist/languages/ro.d.ts.map +1 -1
- package/dist/languages/ro.js +1 -0
- package/dist/languages/ro.js.map +1 -1
- package/dist/languages/rs.d.ts.map +1 -1
- package/dist/languages/rs.js +1 -0
- package/dist/languages/rs.js.map +1 -1
- package/dist/languages/rsLatin.d.ts.map +1 -1
- package/dist/languages/rsLatin.js +1 -0
- package/dist/languages/rsLatin.js.map +1 -1
- package/dist/languages/ru.d.ts.map +1 -1
- package/dist/languages/ru.js +1 -0
- package/dist/languages/ru.js.map +1 -1
- package/dist/languages/sk.d.ts.map +1 -1
- package/dist/languages/sk.js +1 -0
- package/dist/languages/sk.js.map +1 -1
- package/dist/languages/sl.d.ts.map +1 -1
- package/dist/languages/sl.js +1 -0
- package/dist/languages/sl.js.map +1 -1
- package/dist/languages/sv.d.ts.map +1 -1
- package/dist/languages/sv.js +1 -0
- package/dist/languages/sv.js.map +1 -1
- package/dist/languages/ta.d.ts.map +1 -1
- package/dist/languages/ta.js +1 -0
- package/dist/languages/ta.js.map +1 -1
- package/dist/languages/th.d.ts.map +1 -1
- package/dist/languages/th.js +1 -0
- package/dist/languages/th.js.map +1 -1
- package/dist/languages/tr.d.ts.map +1 -1
- package/dist/languages/tr.js +1 -0
- package/dist/languages/tr.js.map +1 -1
- package/dist/languages/uk.d.ts.map +1 -1
- package/dist/languages/uk.js +1 -0
- package/dist/languages/uk.js.map +1 -1
- package/dist/languages/vi.d.ts.map +1 -1
- package/dist/languages/vi.js +1 -0
- package/dist/languages/vi.js.map +1 -1
- package/dist/languages/zh.d.ts.map +1 -1
- package/dist/languages/zh.js +1 -0
- package/dist/languages/zh.js.map +1 -1
- package/dist/languages/zhTw.d.ts.map +1 -1
- package/dist/languages/zhTw.js +1 -0
- package/dist/languages/zhTw.js.map +1 -1
- package/dist/utilities/deepMergeSimple.d.ts.map +1 -1
- package/dist/utilities/deepMergeSimple.js +3 -0
- package/dist/utilities/deepMergeSimple.js.map +1 -1
- package/dist/utilities/deepMergeSimple.spec.js +81 -0
- package/dist/utilities/deepMergeSimple.spec.js.map +1 -0
- package/dist/utilities/getTranslationsByContext.d.ts +1 -0
- package/dist/utilities/getTranslationsByContext.d.ts.map +1 -1
- package/dist/utilities/init.d.ts +2 -1
- package/dist/utilities/init.d.ts.map +1 -1
- package/dist/utilities/languages.d.ts.map +1 -1
- package/dist/utilities/languages.js +10 -1
- package/dist/utilities/languages.js.map +1 -1
- package/dist/utilities/languages.spec.js +42 -0
- package/dist/utilities/languages.spec.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { extractHeaderLanguage } from './languages.js';
|
|
3
|
+
describe('extractHeaderLanguage', ()=>{
|
|
4
|
+
it('should return exact match when base language tag is supported', ()=>{
|
|
5
|
+
expect(extractHeaderLanguage('ja')).toBe('ja');
|
|
6
|
+
expect(extractHeaderLanguage('en')).toBe('en');
|
|
7
|
+
expect(extractHeaderLanguage('de')).toBe('de');
|
|
8
|
+
});
|
|
9
|
+
it('should fall back to base tag when regional tag has no exact match', ()=>{
|
|
10
|
+
expect(extractHeaderLanguage('ja-JP')).toBe('ja');
|
|
11
|
+
expect(extractHeaderLanguage('de-AT')).toBe('de');
|
|
12
|
+
expect(extractHeaderLanguage('fr-BE')).toBe('fr');
|
|
13
|
+
});
|
|
14
|
+
it('should match exact regional tag when it is supported', ()=>{
|
|
15
|
+
// zh-TW is in acceptedLanguages, so it should match directly
|
|
16
|
+
expect(extractHeaderLanguage('zh-TW')).toBe('zh-TW');
|
|
17
|
+
// bn-BD is in acceptedLanguages
|
|
18
|
+
expect(extractHeaderLanguage('bn-BD')).toBe('bn-BD');
|
|
19
|
+
});
|
|
20
|
+
it('should fall back to base tag for unsupported regional variant of a supported regional language', ()=>{
|
|
21
|
+
// zh-CN is not in acceptedLanguages, but zh is
|
|
22
|
+
expect(extractHeaderLanguage('zh-CN')).toBe('zh');
|
|
23
|
+
});
|
|
24
|
+
it('should return undefined for unsupported languages', ()=>{
|
|
25
|
+
expect(extractHeaderLanguage('xx')).toBeUndefined();
|
|
26
|
+
expect(extractHeaderLanguage('xx-XX')).toBeUndefined();
|
|
27
|
+
});
|
|
28
|
+
it('should respect quality ordering and return highest quality supported language', ()=>{
|
|
29
|
+
expect(extractHeaderLanguage('ja-JP;q=0.9, en;q=1.0')).toBe('en');
|
|
30
|
+
expect(extractHeaderLanguage('ja-JP, en;q=0.9')).toBe('ja');
|
|
31
|
+
});
|
|
32
|
+
it('should skip unsupported languages and find the next supported one', ()=>{
|
|
33
|
+
expect(extractHeaderLanguage('xx-XX, ja-JP')).toBe('ja');
|
|
34
|
+
expect(extractHeaderLanguage('xx, yy, de-DE')).toBe('de');
|
|
35
|
+
});
|
|
36
|
+
it('should handle empty string', ()=>{
|
|
37
|
+
// empty string produces one entry with empty language, which won't match
|
|
38
|
+
expect(extractHeaderLanguage('')).toBeUndefined();
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=languages.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/languages.spec.ts"],"sourcesContent":["import { describe, expect, it } from 'vitest'\n\nimport { extractHeaderLanguage } from './languages.js'\n\ndescribe('extractHeaderLanguage', () => {\n it('should return exact match when base language tag is supported', () => {\n expect(extractHeaderLanguage('ja')).toBe('ja')\n expect(extractHeaderLanguage('en')).toBe('en')\n expect(extractHeaderLanguage('de')).toBe('de')\n })\n\n it('should fall back to base tag when regional tag has no exact match', () => {\n expect(extractHeaderLanguage('ja-JP')).toBe('ja')\n expect(extractHeaderLanguage('de-AT')).toBe('de')\n expect(extractHeaderLanguage('fr-BE')).toBe('fr')\n })\n\n it('should match exact regional tag when it is supported', () => {\n // zh-TW is in acceptedLanguages, so it should match directly\n expect(extractHeaderLanguage('zh-TW')).toBe('zh-TW')\n // bn-BD is in acceptedLanguages\n expect(extractHeaderLanguage('bn-BD')).toBe('bn-BD')\n })\n\n it('should fall back to base tag for unsupported regional variant of a supported regional language', () => {\n // zh-CN is not in acceptedLanguages, but zh is\n expect(extractHeaderLanguage('zh-CN')).toBe('zh')\n })\n\n it('should return undefined for unsupported languages', () => {\n expect(extractHeaderLanguage('xx')).toBeUndefined()\n expect(extractHeaderLanguage('xx-XX')).toBeUndefined()\n })\n\n it('should respect quality ordering and return highest quality supported language', () => {\n expect(extractHeaderLanguage('ja-JP;q=0.9, en;q=1.0')).toBe('en')\n expect(extractHeaderLanguage('ja-JP, en;q=0.9')).toBe('ja')\n })\n\n it('should skip unsupported languages and find the next supported one', () => {\n expect(extractHeaderLanguage('xx-XX, ja-JP')).toBe('ja')\n expect(extractHeaderLanguage('xx, yy, de-DE')).toBe('de')\n })\n\n it('should handle empty string', () => {\n // empty string produces one entry with empty language, which won't match\n expect(extractHeaderLanguage('')).toBeUndefined()\n })\n})\n"],"names":["describe","expect","it","extractHeaderLanguage","toBe","toBeUndefined"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,qBAAqB,QAAQ,iBAAgB;AAEtDH,SAAS,yBAAyB;IAChCE,GAAG,iEAAiE;QAClED,OAAOE,sBAAsB,OAAOC,IAAI,CAAC;QACzCH,OAAOE,sBAAsB,OAAOC,IAAI,CAAC;QACzCH,OAAOE,sBAAsB,OAAOC,IAAI,CAAC;IAC3C;IAEAF,GAAG,qEAAqE;QACtED,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;QAC5CH,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;QAC5CH,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;IAC9C;IAEAF,GAAG,wDAAwD;QACzD,6DAA6D;QAC7DD,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;QAC5C,gCAAgC;QAChCH,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;IAC9C;IAEAF,GAAG,kGAAkG;QACnG,+CAA+C;QAC/CD,OAAOE,sBAAsB,UAAUC,IAAI,CAAC;IAC9C;IAEAF,GAAG,qDAAqD;QACtDD,OAAOE,sBAAsB,OAAOE,aAAa;QACjDJ,OAAOE,sBAAsB,UAAUE,aAAa;IACtD;IAEAH,GAAG,iFAAiF;QAClFD,OAAOE,sBAAsB,0BAA0BC,IAAI,CAAC;QAC5DH,OAAOE,sBAAsB,oBAAoBC,IAAI,CAAC;IACxD;IAEAF,GAAG,qEAAqE;QACtED,OAAOE,sBAAsB,iBAAiBC,IAAI,CAAC;QACnDH,OAAOE,sBAAsB,kBAAkBC,IAAI,CAAC;IACtD;IAEAF,GAAG,8BAA8B;QAC/B,yEAAyE;QACzED,OAAOE,sBAAsB,KAAKE,aAAa;IACjD;AACF"}
|