langie 1.12.0 → 1.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/index.cjs +14 -7
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.css.map +1 -1
- package/dist/components/index.mjs +15 -8
- package/dist/components/index.mjs.map +1 -1
- package/dist/core.cjs +1 -1
- package/dist/core.mjs +1 -1
- package/dist/index.cjs +14 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.mjs +15 -8
- package/dist/index.mjs.map +1 -1
- package/dist/utils/flagUrl.d.ts +12 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* langie v1.12.
|
|
2
|
+
* langie v1.12.1
|
|
3
3
|
* (c) 2026 nlit
|
|
4
4
|
* @license Apache-2.0
|
|
5
5
|
*
|
|
@@ -595,6 +595,10 @@ function displayNative(name = "", native = "") {
|
|
|
595
595
|
return name !== native && TRAILING_PAREN.test(name) && TRAILING_PAREN.test(native) ? native.replace(TRAILING_PAREN, "") : native;
|
|
596
596
|
}
|
|
597
597
|
|
|
598
|
+
// src/utils/flagUrl.ts
|
|
599
|
+
var isReadyFlagUrl = (flagCode) => flagCode.startsWith("/") || /^https?:\/\//i.test(flagCode);
|
|
600
|
+
var flagImageUrl = (flagCode) => isReadyFlagUrl(flagCode) ? flagCode : `/flags/${flagCode}.svg`;
|
|
601
|
+
|
|
598
602
|
// src/constants/colors.ts
|
|
599
603
|
var COLORS = {
|
|
600
604
|
// Primary colors
|
|
@@ -671,14 +675,14 @@ var _hoisted_1 = {
|
|
|
671
675
|
key: 0,
|
|
672
676
|
class: "multiselect-single-label"
|
|
673
677
|
};
|
|
674
|
-
var _hoisted_2 = ["src", "alt"];
|
|
678
|
+
var _hoisted_2 = ["src", "alt", "data-custom-flag"];
|
|
675
679
|
var _hoisted_3 = { class: "language-text" };
|
|
676
680
|
var _hoisted_4 = {
|
|
677
681
|
key: 0,
|
|
678
682
|
class: "native-name"
|
|
679
683
|
};
|
|
680
684
|
var _hoisted_5 = ["data-lang-code"];
|
|
681
|
-
var _hoisted_6 = ["src", "alt"];
|
|
685
|
+
var _hoisted_6 = ["src", "alt", "data-custom-flag"];
|
|
682
686
|
var _hoisted_7 = { class: "language-text" };
|
|
683
687
|
var _hoisted_8 = {
|
|
684
688
|
key: 0,
|
|
@@ -746,10 +750,7 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
746
750
|
const flagCode = lang.flag_country || lang.code;
|
|
747
751
|
return flagCode;
|
|
748
752
|
};
|
|
749
|
-
const getFlagImageUrl = (lang) =>
|
|
750
|
-
const flagCode = getFlagCode(lang);
|
|
751
|
-
return `/flags/${flagCode}.svg`;
|
|
752
|
-
};
|
|
753
|
+
const getFlagImageUrl = (lang) => flagImageUrl(getFlagCode(lang));
|
|
753
754
|
const props = __props;
|
|
754
755
|
const emit = __emit;
|
|
755
756
|
const multiselectRef = (0, import_vue3.ref)(null);
|
|
@@ -874,6 +875,10 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
874
875
|
const onFlagError = (event) => {
|
|
875
876
|
const target = event.target;
|
|
876
877
|
const currentSrc = target.src;
|
|
878
|
+
if (target.dataset.customFlag) {
|
|
879
|
+
target.style.display = "none";
|
|
880
|
+
return;
|
|
881
|
+
}
|
|
877
882
|
if (currentSrc && currentSrc.includes("/flags/")) {
|
|
878
883
|
const match = currentSrc.match(/\/flags\/([a-z]{2})\.svg/);
|
|
879
884
|
if (match) {
|
|
@@ -923,6 +928,7 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
923
928
|
src: getFlagImageUrl(value),
|
|
924
929
|
class: "lang-flag",
|
|
925
930
|
alt: `${value.native_name || value.name} flag`,
|
|
931
|
+
"data-custom-flag": (0, import_vue2.unref)(isReadyFlagUrl)(getFlagCode(value)) || void 0,
|
|
926
932
|
onError: onFlagError
|
|
927
933
|
}, null, 40, _hoisted_2)) : (0, import_vue2.createCommentVNode)("v-if", true),
|
|
928
934
|
(0, import_vue2.createElementVNode)("span", _hoisted_3, [
|
|
@@ -951,6 +957,7 @@ var LanguageSelect_default = /* @__PURE__ */ (0, import_vue.defineComponent)({
|
|
|
951
957
|
src: getFlagImageUrl(option),
|
|
952
958
|
class: "lang-flag",
|
|
953
959
|
alt: `${option.name} flag`,
|
|
960
|
+
"data-custom-flag": (0, import_vue2.unref)(isReadyFlagUrl)(getFlagCode(option)) || void 0,
|
|
954
961
|
onError: onFlagError
|
|
955
962
|
}, null, 40, _hoisted_6)),
|
|
956
963
|
(0, import_vue2.createElementVNode)("span", _hoisted_7, [
|