langie 1.9.25 → 1.10.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/dist/components/InterfaceLanguageSelect.vue.d.ts +65 -0
- package/dist/components/LanguageSelect.vue.d.ts +59 -0
- package/dist/components/index.cjs +94 -56
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.css +84 -116
- package/dist/components/index.css.map +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.mjs +94 -56
- package/dist/components/index.mjs.map +1 -1
- package/dist/components/lt.vue.d.ts +37 -0
- package/dist/components/types.d.ts +20 -0
- package/dist/composables/types.d.ts +8 -0
- package/dist/composables/useLangie-batching.d.ts +54 -0
- package/dist/composables/useLangie-core.d.ts +21 -0
- package/dist/constants/colors.d.ts +82 -0
- package/dist/constants.d.ts +30 -0
- package/dist/core.cjs +21 -9
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +10 -85
- package/dist/core.mjs +20 -9
- package/dist/core.mjs.map +1 -1
- package/dist/index.cjs +83 -63
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +84 -81
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +19 -163
- package/dist/index.mjs +83 -63
- package/dist/index.mjs.map +1 -1
- package/dist/language-aliases/african.d.ts +2 -0
- package/dist/language-aliases/asian.d.ts +2 -0
- package/dist/language-aliases/european.d.ts +2 -0
- package/dist/language-aliases/index.d.ts +3 -0
- package/dist/language-aliases/types.d.ts +5 -0
- package/dist/language-aliases.d.ts +1 -0
- package/dist/search-utils.d.ts +4 -0
- package/dist/{core.d.cts → types.d.ts} +11 -39
- package/dist/useLangie.d.ts +55 -0
- package/dist/utils/cache.d.ts +33 -0
- package/dist/utils/debug.d.ts +1 -0
- package/dist/utils/getCountryCode.d.ts +3 -0
- package/dist/utils/languageMapping.d.ts +13 -0
- package/dist/utils/regionMapping.d.ts +18 -0
- package/dist/utils/theme.d.ts +9 -0
- package/package.json +9 -5
- package/src/index.d.ts +2 -0
- package/dist/index.d.cts +0 -165
- package/dist/teleport.d.cts +0 -2
- package/dist/teleport.d.ts +0 -2
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { TranslatorLanguage } from '../types';
|
|
2
|
+
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
3
|
+
placeholder: {
|
|
4
|
+
type: StringConstructor;
|
|
5
|
+
default: string;
|
|
6
|
+
};
|
|
7
|
+
disabled: {
|
|
8
|
+
type: BooleanConstructor;
|
|
9
|
+
default: boolean;
|
|
10
|
+
};
|
|
11
|
+
isDark: {
|
|
12
|
+
type: BooleanConstructor;
|
|
13
|
+
default: boolean;
|
|
14
|
+
};
|
|
15
|
+
translatorHost: {
|
|
16
|
+
type: StringConstructor;
|
|
17
|
+
default: string;
|
|
18
|
+
};
|
|
19
|
+
apiKey: {
|
|
20
|
+
type: StringConstructor;
|
|
21
|
+
default: string;
|
|
22
|
+
};
|
|
23
|
+
languages: {
|
|
24
|
+
type: () => TranslatorLanguage[];
|
|
25
|
+
default: () => never[];
|
|
26
|
+
};
|
|
27
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
28
|
+
"update:modelValue": (...args: any[]) => void;
|
|
29
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
30
|
+
placeholder: {
|
|
31
|
+
type: StringConstructor;
|
|
32
|
+
default: string;
|
|
33
|
+
};
|
|
34
|
+
disabled: {
|
|
35
|
+
type: BooleanConstructor;
|
|
36
|
+
default: boolean;
|
|
37
|
+
};
|
|
38
|
+
isDark: {
|
|
39
|
+
type: BooleanConstructor;
|
|
40
|
+
default: boolean;
|
|
41
|
+
};
|
|
42
|
+
translatorHost: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
default: string;
|
|
45
|
+
};
|
|
46
|
+
apiKey: {
|
|
47
|
+
type: StringConstructor;
|
|
48
|
+
default: string;
|
|
49
|
+
};
|
|
50
|
+
languages: {
|
|
51
|
+
type: () => TranslatorLanguage[];
|
|
52
|
+
default: () => never[];
|
|
53
|
+
};
|
|
54
|
+
}>> & Readonly<{
|
|
55
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
56
|
+
}>, {
|
|
57
|
+
translatorHost: string;
|
|
58
|
+
languages: TranslatorLanguage[];
|
|
59
|
+
placeholder: string;
|
|
60
|
+
disabled: boolean;
|
|
61
|
+
isDark: boolean;
|
|
62
|
+
apiKey: string;
|
|
63
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
64
|
+
declare const _default: typeof __VLS_export;
|
|
65
|
+
export default _default;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import '@vueform/multiselect/themes/default.css';
|
|
2
|
+
import '../styles/teleport.css';
|
|
3
|
+
import type { PropType } from 'vue';
|
|
4
|
+
import type { TranslatorLanguage } from '../types';
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
6
|
+
modelValue: {
|
|
7
|
+
type: PropType<TranslatorLanguage | null | undefined>;
|
|
8
|
+
default: undefined;
|
|
9
|
+
};
|
|
10
|
+
languages: {
|
|
11
|
+
type: PropType<TranslatorLanguage[]>;
|
|
12
|
+
default: () => never[];
|
|
13
|
+
};
|
|
14
|
+
placeholder: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
default: string;
|
|
17
|
+
};
|
|
18
|
+
disabled: {
|
|
19
|
+
type: BooleanConstructor;
|
|
20
|
+
default: boolean;
|
|
21
|
+
};
|
|
22
|
+
isDark: {
|
|
23
|
+
type: BooleanConstructor;
|
|
24
|
+
default: boolean;
|
|
25
|
+
};
|
|
26
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
27
|
+
"update:modelValue": (...args: any[]) => void;
|
|
28
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
29
|
+
modelValue: {
|
|
30
|
+
type: PropType<TranslatorLanguage | null | undefined>;
|
|
31
|
+
default: undefined;
|
|
32
|
+
};
|
|
33
|
+
languages: {
|
|
34
|
+
type: PropType<TranslatorLanguage[]>;
|
|
35
|
+
default: () => never[];
|
|
36
|
+
};
|
|
37
|
+
placeholder: {
|
|
38
|
+
type: StringConstructor;
|
|
39
|
+
default: string;
|
|
40
|
+
};
|
|
41
|
+
disabled: {
|
|
42
|
+
type: BooleanConstructor;
|
|
43
|
+
default: boolean;
|
|
44
|
+
};
|
|
45
|
+
isDark: {
|
|
46
|
+
type: BooleanConstructor;
|
|
47
|
+
default: boolean;
|
|
48
|
+
};
|
|
49
|
+
}>> & Readonly<{
|
|
50
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
51
|
+
}>, {
|
|
52
|
+
modelValue: TranslatorLanguage | null | undefined;
|
|
53
|
+
languages: TranslatorLanguage[];
|
|
54
|
+
placeholder: string;
|
|
55
|
+
disabled: boolean;
|
|
56
|
+
isDark: boolean;
|
|
57
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
58
|
+
declare const _default: typeof __VLS_export;
|
|
59
|
+
export default _default;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* langie v1.
|
|
2
|
+
* langie v1.10.0
|
|
3
3
|
* (c) 2026 nlit
|
|
4
4
|
* @license Apache-2.0
|
|
5
|
-
*
|
|
5
|
+
*
|
|
6
6
|
* Licensed under the Apache License, Version 2.0
|
|
7
7
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8
8
|
*/
|
|
@@ -44,10 +44,37 @@ __export(components_exports, {
|
|
|
44
44
|
});
|
|
45
45
|
module.exports = __toCommonJS(components_exports);
|
|
46
46
|
|
|
47
|
-
// vue-script:/
|
|
47
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/LanguageSelect.vue?type=script
|
|
48
48
|
var import_vue = require("vue");
|
|
49
49
|
var import_vue2 = require("vue");
|
|
50
50
|
var import_default = require("@vueform/multiselect/themes/default.css");
|
|
51
|
+
|
|
52
|
+
// #style-inject:#style-inject
|
|
53
|
+
function styleInject(css, { insertAt } = {}) {
|
|
54
|
+
if (!css || typeof document === "undefined") return;
|
|
55
|
+
const head = document.head || document.getElementsByTagName("head")[0];
|
|
56
|
+
const style = document.createElement("style");
|
|
57
|
+
style.type = "text/css";
|
|
58
|
+
if (insertAt === "top") {
|
|
59
|
+
if (head.firstChild) {
|
|
60
|
+
head.insertBefore(style, head.firstChild);
|
|
61
|
+
} else {
|
|
62
|
+
head.appendChild(style);
|
|
63
|
+
}
|
|
64
|
+
} else {
|
|
65
|
+
head.appendChild(style);
|
|
66
|
+
}
|
|
67
|
+
if (style.styleSheet) {
|
|
68
|
+
style.styleSheet.cssText = css;
|
|
69
|
+
} else {
|
|
70
|
+
style.appendChild(document.createTextNode(css));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// src/styles/teleport.css
|
|
75
|
+
styleInject(".multiselect-single-label,\n.multiselect-option {\n display: flex;\n align-items: center;\n}\n.lang-flag {\n width: 20px;\n height: 15px;\n margin-right: 10px;\n border: 1px solid var(--langie-flag-border, #eee);\n border-radius: 2px;\n object-fit: cover;\n}\n.is-dark .lang-flag {\n border-color: var(--langie-flag-border-dark, #4b5563);\n}\n.native-name {\n color: var(--langie-text-secondary, #6b7280);\n margin-left: 0.5rem;\n font-size: 0.9em;\n}\n.is-dark .native-name {\n color: var(--langie-text-secondary-dark, #9ca3af);\n}\n.multiselect-no-results,\n.multiselect-no-options {\n padding: 0.5rem 0.875rem;\n color: var(--langie-text-secondary, #6b7280);\n}\n.is-dark .multiselect-no-results,\n.is-dark .multiselect-no-options {\n color: var(--langie-text-secondary-dark, #9ca3af);\n}\n");
|
|
76
|
+
|
|
77
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/LanguageSelect.vue?type=script
|
|
51
78
|
var import_vue3 = require("vue");
|
|
52
79
|
var import_multiselect = __toESM(require("@vueform/multiselect"));
|
|
53
80
|
var import_fuse = __toESM(require("fuse.js"));
|
|
@@ -593,7 +620,7 @@ var THEME_COLORS = {
|
|
|
593
620
|
}
|
|
594
621
|
};
|
|
595
622
|
|
|
596
|
-
// vue-script:/
|
|
623
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/LanguageSelect.vue?type=script
|
|
597
624
|
var _hoisted_1 = {
|
|
598
625
|
key: 0,
|
|
599
626
|
class: "multiselect-single-label"
|
|
@@ -633,35 +660,35 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
633
660
|
emits: ["update:modelValue"],
|
|
634
661
|
setup(__props, { emit: __emit }) {
|
|
635
662
|
(0, import_vue.useCssVars)((_ctx) => ({
|
|
636
|
-
"
|
|
637
|
-
"
|
|
638
|
-
"
|
|
639
|
-
"
|
|
640
|
-
"
|
|
641
|
-
"
|
|
642
|
-
"
|
|
643
|
-
"
|
|
644
|
-
"
|
|
645
|
-
"
|
|
646
|
-
"
|
|
647
|
-
"
|
|
648
|
-
"
|
|
649
|
-
"
|
|
650
|
-
"
|
|
651
|
-
"
|
|
652
|
-
"
|
|
653
|
-
"
|
|
654
|
-
"
|
|
655
|
-
"
|
|
656
|
-
"
|
|
657
|
-
"
|
|
658
|
-
"
|
|
659
|
-
"
|
|
660
|
-
"
|
|
661
|
-
"
|
|
662
|
-
"
|
|
663
|
-
"
|
|
664
|
-
"
|
|
663
|
+
"5b09cc17-THEME_COLORS.light.background": (0, import_vue2.unref)(THEME_COLORS).light.background,
|
|
664
|
+
"5b09cc17-THEME_COLORS.light.backgroundDisabled": (0, import_vue2.unref)(THEME_COLORS).light.backgroundDisabled,
|
|
665
|
+
"5b09cc17-THEME_COLORS.light.border": (0, import_vue2.unref)(THEME_COLORS).light.border,
|
|
666
|
+
"5b09cc17-THEME_COLORS.light.ring": (0, import_vue2.unref)(THEME_COLORS).light.ring,
|
|
667
|
+
"5b09cc17-THEME_COLORS.light.placeholder": (0, import_vue2.unref)(THEME_COLORS).light.placeholder,
|
|
668
|
+
"5b09cc17-THEME_COLORS.light.optionPointed": (0, import_vue2.unref)(THEME_COLORS).light.optionPointed,
|
|
669
|
+
"5b09cc17-THEME_COLORS.light.optionPointedText": (0, import_vue2.unref)(THEME_COLORS).light.optionPointedText,
|
|
670
|
+
"5b09cc17-THEME_COLORS.light.optionSelected": (0, import_vue2.unref)(THEME_COLORS).light.optionSelected,
|
|
671
|
+
"5b09cc17-THEME_COLORS.light.optionSelectedText": (0, import_vue2.unref)(THEME_COLORS).light.optionSelectedText,
|
|
672
|
+
"5b09cc17-THEME_COLORS.light.dropdownBackground": (0, import_vue2.unref)(THEME_COLORS).light.dropdownBackground,
|
|
673
|
+
"5b09cc17-THEME_COLORS.light.dropdownBorder": (0, import_vue2.unref)(THEME_COLORS).light.dropdownBorder,
|
|
674
|
+
"5b09cc17-THEME_COLORS.light.dropdownText": (0, import_vue2.unref)(THEME_COLORS).light.dropdownText,
|
|
675
|
+
"5b09cc17-THEME_COLORS.light.tagBackground": (0, import_vue2.unref)(THEME_COLORS).light.tagBackground,
|
|
676
|
+
"5b09cc17-THEME_COLORS.dark.background": (0, import_vue2.unref)(THEME_COLORS).dark.background,
|
|
677
|
+
"5b09cc17-THEME_COLORS.dark.backgroundDisabled": (0, import_vue2.unref)(THEME_COLORS).dark.backgroundDisabled,
|
|
678
|
+
"5b09cc17-THEME_COLORS.dark.border": (0, import_vue2.unref)(THEME_COLORS).dark.border,
|
|
679
|
+
"5b09cc17-THEME_COLORS.dark.placeholder": (0, import_vue2.unref)(THEME_COLORS).dark.placeholder,
|
|
680
|
+
"5b09cc17-THEME_COLORS.dark.ring": (0, import_vue2.unref)(THEME_COLORS).dark.ring,
|
|
681
|
+
"5b09cc17-THEME_COLORS.dark.optionPointed": (0, import_vue2.unref)(THEME_COLORS).dark.optionPointed,
|
|
682
|
+
"5b09cc17-THEME_COLORS.dark.optionPointedText": (0, import_vue2.unref)(THEME_COLORS).dark.optionPointedText,
|
|
683
|
+
"5b09cc17-THEME_COLORS.dark.optionSelected": (0, import_vue2.unref)(THEME_COLORS).dark.optionSelected,
|
|
684
|
+
"5b09cc17-THEME_COLORS.dark.optionSelectedText": (0, import_vue2.unref)(THEME_COLORS).dark.optionSelectedText,
|
|
685
|
+
"5b09cc17-THEME_COLORS.dark.dropdownBackground": (0, import_vue2.unref)(THEME_COLORS).dark.dropdownBackground,
|
|
686
|
+
"5b09cc17-THEME_COLORS.dark.dropdownBorder": (0, import_vue2.unref)(THEME_COLORS).dark.dropdownBorder,
|
|
687
|
+
"5b09cc17-THEME_COLORS.dark.dropdownText": (0, import_vue2.unref)(THEME_COLORS).dark.dropdownText,
|
|
688
|
+
"5b09cc17-COLORS.border.flag": (0, import_vue2.unref)(COLORS).border.flag,
|
|
689
|
+
"5b09cc17-COLORS.border.dark": (0, import_vue2.unref)(COLORS).border.dark,
|
|
690
|
+
"5b09cc17-COLORS.text.secondary": (0, import_vue2.unref)(COLORS).text.secondary,
|
|
691
|
+
"5b09cc17-COLORS.neutral.gray400": (0, import_vue2.unref)(COLORS).neutral.gray400
|
|
665
692
|
}));
|
|
666
693
|
const getFlagCode = (lang) => {
|
|
667
694
|
const flagCode = lang.flag_country || lang.code;
|
|
@@ -935,9 +962,9 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
935
962
|
|
|
936
963
|
// src/components/LanguageSelect.vue
|
|
937
964
|
var LanguageSelect_default2 = LanguageSelect_default;
|
|
938
|
-
LanguageSelect_default.__scopeId = "data-v-
|
|
965
|
+
LanguageSelect_default.__scopeId = "data-v-5b09cc17";
|
|
939
966
|
|
|
940
|
-
// vue-script:/
|
|
967
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/InterfaceLanguageSelect.vue?type=script
|
|
941
968
|
var import_vue6 = require("vue");
|
|
942
969
|
var import_vue7 = require("vue");
|
|
943
970
|
var import_vue8 = require("vue");
|
|
@@ -956,6 +983,7 @@ var API_FIELD_TO = "to";
|
|
|
956
983
|
var API_FIELD_CTX = "ctx";
|
|
957
984
|
var API_FIELD_TRANSLATIONS = "translations";
|
|
958
985
|
var API_FIELD_ERROR = "error";
|
|
986
|
+
var API_FIELD_TURNSTILE = "turnstileToken";
|
|
959
987
|
|
|
960
988
|
// src/utils/debug.ts
|
|
961
989
|
var import_meta = {};
|
|
@@ -1533,21 +1561,29 @@ var TranslationBatching = class {
|
|
|
1533
1561
|
"items",
|
|
1534
1562
|
batchRequests
|
|
1535
1563
|
);
|
|
1536
|
-
const
|
|
1564
|
+
const buildBody = (turnstileToken) => JSON.stringify({
|
|
1565
|
+
translations: batchRequests.map((req) => ({
|
|
1566
|
+
[API_FIELD_TEXT]: req[API_FIELD_TEXT],
|
|
1567
|
+
...useGlobalContext ? {} : { [API_FIELD_CTX]: req[API_FIELD_CTX] }
|
|
1568
|
+
})),
|
|
1569
|
+
[API_FIELD_FROM]: from,
|
|
1570
|
+
[API_FIELD_TO]: to,
|
|
1571
|
+
...useGlobalContext ? { [API_FIELD_CTX]: "ui" } : {},
|
|
1572
|
+
...turnstileToken ? { [API_FIELD_TURNSTILE]: turnstileToken } : {}
|
|
1573
|
+
});
|
|
1574
|
+
const postTranslate = (turnstileToken) => fetch(`${this.translatorHost}/translate`, {
|
|
1537
1575
|
method: "POST",
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
[API_FIELD_TEXT]: req[API_FIELD_TEXT],
|
|
1544
|
-
...useGlobalContext ? {} : { [API_FIELD_CTX]: req[API_FIELD_CTX] }
|
|
1545
|
-
})),
|
|
1546
|
-
[API_FIELD_FROM]: from,
|
|
1547
|
-
[API_FIELD_TO]: to,
|
|
1548
|
-
...useGlobalContext ? { [API_FIELD_CTX]: "ui" } : {}
|
|
1549
|
-
})
|
|
1576
|
+
// Carry the /frontend session cookie the proxy issues after one
|
|
1577
|
+
// Turnstile check, so we don't solve a challenge on every request.
|
|
1578
|
+
credentials: "include",
|
|
1579
|
+
headers: { "Content-Type": "application/json" },
|
|
1580
|
+
body: buildBody(turnstileToken)
|
|
1550
1581
|
});
|
|
1582
|
+
let response = await postTranslate();
|
|
1583
|
+
if ((response.status === 401 || response.status === 400) && this.options.getTurnstileToken) {
|
|
1584
|
+
const turnstileToken = await this.options.getTurnstileToken();
|
|
1585
|
+
response = await postTranslate(turnstileToken);
|
|
1586
|
+
}
|
|
1551
1587
|
let result;
|
|
1552
1588
|
try {
|
|
1553
1589
|
result = await response.json();
|
|
@@ -1737,7 +1773,8 @@ function createLangieInstance(options = {}) {
|
|
|
1737
1773
|
initialBatchDelay: options.initialBatchDelay,
|
|
1738
1774
|
followupBatchDelay: options.followupBatchDelay,
|
|
1739
1775
|
maxBatchSize: options.maxBatchSize,
|
|
1740
|
-
maxWaitTime: options.maxWaitTime
|
|
1776
|
+
maxWaitTime: options.maxWaitTime,
|
|
1777
|
+
getTurnstileToken: options.getTurnstileToken
|
|
1741
1778
|
},
|
|
1742
1779
|
translatorHost,
|
|
1743
1780
|
() => currentLanguage2.value,
|
|
@@ -1799,7 +1836,7 @@ function createLangieInstance(options = {}) {
|
|
|
1799
1836
|
return;
|
|
1800
1837
|
}
|
|
1801
1838
|
const effectiveCtx = originalCtx;
|
|
1802
|
-
const cacheKey = `${originalText}|${effectiveCtx}`;
|
|
1839
|
+
const cacheKey = request.cacheKey || `${originalText}|${effectiveCtx}`;
|
|
1803
1840
|
const cache = effectiveCtx === "ui" ? uiTranslations2 : translations2;
|
|
1804
1841
|
cache[cacheKey] = translatedText;
|
|
1805
1842
|
devDebug("[useLangie] Cached translation:", {
|
|
@@ -1827,7 +1864,8 @@ function createLangieInstance(options = {}) {
|
|
|
1827
1864
|
return text;
|
|
1828
1865
|
}
|
|
1829
1866
|
const effectiveCtx = ctx !== void 0 ? ctx : ltDefaults.ctx || "ui";
|
|
1830
|
-
const
|
|
1867
|
+
const baseKey = `${text}|${effectiveCtx}`;
|
|
1868
|
+
const cacheKey = to !== currentLanguage2.value ? `${baseKey}|${from}|${to}` : baseKey;
|
|
1831
1869
|
const cache = effectiveCtx === "ui" ? uiTranslations2 : translations2;
|
|
1832
1870
|
if (cache[cacheKey]) {
|
|
1833
1871
|
return cache[cacheKey];
|
|
@@ -1836,7 +1874,7 @@ function createLangieInstance(options = {}) {
|
|
|
1836
1874
|
if (translationErrors.has(errorKey)) {
|
|
1837
1875
|
return text;
|
|
1838
1876
|
}
|
|
1839
|
-
const languageCacheKey = `${
|
|
1877
|
+
const languageCacheKey = `${baseKey}|${from}|${to}`;
|
|
1840
1878
|
if (recentlyQueued.has(languageCacheKey)) {
|
|
1841
1879
|
return text;
|
|
1842
1880
|
}
|
|
@@ -2040,7 +2078,7 @@ function useLangie(options = {}) {
|
|
|
2040
2078
|
return instance;
|
|
2041
2079
|
}
|
|
2042
2080
|
|
|
2043
|
-
// vue-script:/
|
|
2081
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/InterfaceLanguageSelect.vue?type=script
|
|
2044
2082
|
var _hoisted_12 = { class: "interface-language-select-wrapper" };
|
|
2045
2083
|
var _hoisted_22 = { class: "loader-text" };
|
|
2046
2084
|
var InterfaceLanguageSelect_default = /* @__PURE__ */ (0, import_vue6.defineComponent)({
|
|
@@ -2223,9 +2261,9 @@ var InterfaceLanguageSelect_default = /* @__PURE__ */ (0, import_vue6.defineComp
|
|
|
2223
2261
|
|
|
2224
2262
|
// src/components/InterfaceLanguageSelect.vue
|
|
2225
2263
|
var InterfaceLanguageSelect_default2 = InterfaceLanguageSelect_default;
|
|
2226
|
-
InterfaceLanguageSelect_default.__scopeId = "data-v-
|
|
2264
|
+
InterfaceLanguageSelect_default.__scopeId = "data-v-258d337a";
|
|
2227
2265
|
|
|
2228
|
-
// vue-script:/
|
|
2266
|
+
// vue-script:/builds/codelits/langie-sdk/src/components/lt.vue?type=script
|
|
2229
2267
|
var import_vue9 = require("vue");
|
|
2230
2268
|
var import_vue10 = require("vue");
|
|
2231
2269
|
var import_vue11 = require("vue");
|
|
@@ -2317,7 +2355,7 @@ var lt_default = /* @__PURE__ */ (0, import_vue9.defineComponent)({
|
|
|
2317
2355
|
|
|
2318
2356
|
// src/components/lt.vue
|
|
2319
2357
|
var lt_default2 = lt_default;
|
|
2320
|
-
lt_default.__scopeId = "data-v-
|
|
2358
|
+
lt_default.__scopeId = "data-v-3341698b";
|
|
2321
2359
|
// Annotate the CommonJS export names for ESM import in node:
|
|
2322
2360
|
0 && (module.exports = {
|
|
2323
2361
|
InterfaceLanguageSelect,
|