fds-vue-core 8.3.2 → 8.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components.d.ts +2 -0
- package/dist/components/FdsDrawer/FdsDrawer.vue.d.ts +35 -0
- package/dist/components/FdsDrawer/types.d.ts +11 -0
- package/dist/composables/useRouteFilters.d.ts +73 -0
- package/dist/fds-vue-core.cjs.js +757 -228
- package/dist/fds-vue-core.cjs.js.map +1 -1
- package/dist/fds-vue-core.css +1 -1
- package/dist/fds-vue-core.es.js +758 -229
- package/dist/fds-vue-core.es.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/slot-styles.css +40 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +8 -4
- package/src/components/FdsDrawer/FdsDrawer.stories.ts +155 -0
- package/src/components/FdsDrawer/FdsDrawer.vue +283 -0
- package/src/components/FdsDrawer/types.ts +12 -0
- package/src/composables/useRouteFilters.spec.ts +157 -0
- package/src/composables/useRouteFilters.ts +500 -0
- package/src/index.ts +26 -0
- package/src/lang/en.json +1 -0
- package/src/lang/sv.json +1 -0
- package/src/slot-styles.css +40 -0
- package/src/style.css +45 -1
package/dist/fds-vue-core.es.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { useAttrs, computed, useSlots, Comment, inject, defineComponent, openBlock, createElementBlock, mergeProps, createBlock, ref, watch, createElementVNode, normalizeClass, unref, createVNode, toDisplayString, createCommentVNode, renderSlot, withCtx, createTextVNode, withDirectives, vShow, resolveDynamicComponent, normalizeStyle, onMounted, toValue, onUnmounted, onBeforeUnmount, Fragment, renderList, useModel, nextTick, vModelCheckbox, mergeModels, Teleport, withModifiers, provide, getCurrentInstance, vModelText, withKeys, watchEffect, reactive, resolveComponent,
|
|
1
|
+
import { useAttrs, computed, useSlots, Comment, inject, defineComponent, openBlock, createElementBlock, mergeProps, createBlock, ref, watch, createElementVNode, normalizeClass, unref, createVNode, toDisplayString, createCommentVNode, renderSlot, withCtx, createTextVNode, withDirectives, vShow, resolveDynamicComponent, normalizeStyle, onMounted, toValue, onUnmounted, onBeforeUnmount, Fragment, renderList, useModel, nextTick, vModelCheckbox, mergeModels, Teleport, withModifiers, provide, getCurrentInstance, vModelText, Transition, withKeys, watchEffect, reactive, resolveComponent, normalizeProps, guardReactiveProps, vModelSelect } from "vue";
|
|
2
|
+
import { useRoute, useRouter } from "vue-router";
|
|
2
3
|
function useAttrsWithDefaults(props) {
|
|
3
4
|
const attrs = useAttrs();
|
|
4
5
|
return {
|
|
@@ -75,6 +76,7 @@ const en = {
|
|
|
75
76
|
"FdsInput.today": "(today)",
|
|
76
77
|
"FdsListHeading.loading": "Loading...",
|
|
77
78
|
"FdsListHeading.separator": "of",
|
|
79
|
+
"FdsDrawer.closeDrawer": "Close drawer",
|
|
78
80
|
"FdsModal.closeModal": "Close modal window",
|
|
79
81
|
"FdsPagination.currentPage": "Current page",
|
|
80
82
|
"FdsPagination.firstPage": "Go to first page",
|
|
@@ -150,6 +152,7 @@ const sv = {
|
|
|
150
152
|
"FdsInput.today": "(idag)",
|
|
151
153
|
"FdsListHeading.loading": "Laddar...",
|
|
152
154
|
"FdsListHeading.separator": "av",
|
|
155
|
+
"FdsDrawer.closeDrawer": "Stäng sidopanel",
|
|
153
156
|
"FdsModal.closeModal": "Stäng dialogruta",
|
|
154
157
|
"FdsPagination.currentPage": "Aktuell sida",
|
|
155
158
|
"FdsPagination.firstPage": "Gå till första sidan",
|
|
@@ -752,8 +755,8 @@ const icons = {
|
|
|
752
755
|
</defs>
|
|
753
756
|
</svg>`
|
|
754
757
|
};
|
|
755
|
-
const _hoisted_1$
|
|
756
|
-
const _sfc_main$
|
|
758
|
+
const _hoisted_1$C = ["innerHTML"];
|
|
759
|
+
const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
757
760
|
__name: "FdsIcon",
|
|
758
761
|
props: {
|
|
759
762
|
name: {},
|
|
@@ -786,11 +789,11 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
|
786
789
|
return openBlock(), createElementBlock("span", mergeProps({
|
|
787
790
|
class: "flex items-center justify-center align-middle",
|
|
788
791
|
style: { width: pixelSize.value, height: pixelSize.value }
|
|
789
|
-
}, rootAttrs.value, { innerHTML: svgHtml.value }), null, 16, _hoisted_1$
|
|
792
|
+
}, rootAttrs.value, { innerHTML: svgHtml.value }), null, 16, _hoisted_1$C);
|
|
790
793
|
};
|
|
791
794
|
}
|
|
792
795
|
});
|
|
793
|
-
const _sfc_main$
|
|
796
|
+
const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
794
797
|
__name: "FdsButtonIcon",
|
|
795
798
|
props: {
|
|
796
799
|
icon: {},
|
|
@@ -834,12 +837,12 @@ const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
|
834
837
|
class: buttonClasses.value,
|
|
835
838
|
onClick
|
|
836
839
|
}), [
|
|
837
|
-
!__props.loading ? (openBlock(), createBlock(_sfc_main$
|
|
840
|
+
!__props.loading ? (openBlock(), createBlock(_sfc_main$O, {
|
|
838
841
|
key: 0,
|
|
839
842
|
size: iconSize.value,
|
|
840
843
|
name: __props.icon,
|
|
841
844
|
"aria-hidden": "true"
|
|
842
|
-
}, null, 8, ["size", "name"])) : (openBlock(), createBlock(_sfc_main$
|
|
845
|
+
}, null, 8, ["size", "name"])) : (openBlock(), createBlock(_sfc_main$O, {
|
|
843
846
|
key: 1,
|
|
844
847
|
size: iconSize.value,
|
|
845
848
|
name: "spinner",
|
|
@@ -850,7 +853,7 @@ const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
|
850
853
|
};
|
|
851
854
|
}
|
|
852
855
|
});
|
|
853
|
-
const _hoisted_1$
|
|
856
|
+
const _hoisted_1$B = { class: "flex items-start gap-2" };
|
|
854
857
|
const _hoisted_2$q = { class: "h-7 flex items-center" };
|
|
855
858
|
const _hoisted_3$l = { class: "leading-7" };
|
|
856
859
|
const _hoisted_4$j = { class: "relative h-7" };
|
|
@@ -858,7 +861,7 @@ const _hoisted_5$h = {
|
|
|
858
861
|
key: 1,
|
|
859
862
|
class: "fds-block-alert-slot mb-0-last-child"
|
|
860
863
|
};
|
|
861
|
-
const _sfc_main$
|
|
864
|
+
const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
862
865
|
__name: "FdsBlockAlert",
|
|
863
866
|
props: {
|
|
864
867
|
visible: { type: Boolean, default: true },
|
|
@@ -914,9 +917,9 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
914
917
|
key: 0,
|
|
915
918
|
class: normalizeClass(["font-bold w-full justify-between items-start flex gap-2", { "mb-2": (isExpanded.value || !__props.collapsable) && unref(hasSlot) }])
|
|
916
919
|
}, [
|
|
917
|
-
createElementVNode("div", _hoisted_1$
|
|
920
|
+
createElementVNode("div", _hoisted_1$B, [
|
|
918
921
|
createElementVNode("div", _hoisted_2$q, [
|
|
919
|
-
createVNode(_sfc_main$
|
|
922
|
+
createVNode(_sfc_main$O, {
|
|
920
923
|
name: "alert",
|
|
921
924
|
size: 24,
|
|
922
925
|
class: "fill-yellow-700"
|
|
@@ -925,13 +928,13 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
925
928
|
createElementVNode("span", _hoisted_3$l, toDisplayString(__props.heading), 1)
|
|
926
929
|
]),
|
|
927
930
|
createElementVNode("div", _hoisted_4$j, [
|
|
928
|
-
__props.closeable ? (openBlock(), createBlock(_sfc_main$
|
|
931
|
+
__props.closeable ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
929
932
|
key: 0,
|
|
930
933
|
icon: "cross",
|
|
931
934
|
size: 28,
|
|
932
935
|
onClick: handleClose
|
|
933
936
|
}, { "aria-label": closeLabel.value }, { class: ["fill-gray-900! hover:bg-gray-100 active:bg-gray-200"] }), null, 16)) : createCommentVNode("", true),
|
|
934
|
-
__props.collapsable ? (openBlock(), createBlock(_sfc_main$
|
|
937
|
+
__props.collapsable ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
935
938
|
key: 1,
|
|
936
939
|
icon: "arrowDown",
|
|
937
940
|
size: 28,
|
|
@@ -954,7 +957,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
954
957
|
};
|
|
955
958
|
}
|
|
956
959
|
});
|
|
957
|
-
const _hoisted_1$
|
|
960
|
+
const _hoisted_1$A = ["id"];
|
|
958
961
|
const _hoisted_2$p = {
|
|
959
962
|
key: 0,
|
|
960
963
|
class: "flex items-start justify-between gap-4 mb-4"
|
|
@@ -962,7 +965,7 @@ const _hoisted_2$p = {
|
|
|
962
965
|
const _hoisted_3$k = { class: "flex items-center gap-3" };
|
|
963
966
|
const _hoisted_4$i = { class: "flex items-start gap-3 leading-8" };
|
|
964
967
|
const _hoisted_5$g = { class: "mb-0-last-child" };
|
|
965
|
-
const _sfc_main$
|
|
968
|
+
const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
966
969
|
__name: "FdsBlockContent",
|
|
967
970
|
props: {
|
|
968
971
|
heading: { default: void 0 },
|
|
@@ -1019,11 +1022,11 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
|
1019
1022
|
createElementVNode("div", _hoisted_5$g, [
|
|
1020
1023
|
renderSlot(_ctx.$slots, "default")
|
|
1021
1024
|
])
|
|
1022
|
-
], 16, _hoisted_1$
|
|
1025
|
+
], 16, _hoisted_1$A);
|
|
1023
1026
|
};
|
|
1024
1027
|
}
|
|
1025
1028
|
});
|
|
1026
|
-
const _sfc_main$
|
|
1029
|
+
const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
1027
1030
|
__name: "FdsSticker",
|
|
1028
1031
|
props: {
|
|
1029
1032
|
variant: { default: "blue" },
|
|
@@ -1071,7 +1074,7 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
|
|
|
1071
1074
|
};
|
|
1072
1075
|
}
|
|
1073
1076
|
});
|
|
1074
|
-
const _hoisted_1$
|
|
1077
|
+
const _hoisted_1$z = { class: "leading-6 w-full flex justify-between gap-4" };
|
|
1075
1078
|
const _hoisted_2$o = {
|
|
1076
1079
|
key: 0,
|
|
1077
1080
|
class: "flex items-center mr-4"
|
|
@@ -1083,7 +1086,7 @@ const _hoisted_5$f = {
|
|
|
1083
1086
|
class: "w-full flex mt-2"
|
|
1084
1087
|
};
|
|
1085
1088
|
const _hoisted_6$b = ["aria-hidden"];
|
|
1086
|
-
const _sfc_main$
|
|
1089
|
+
const _sfc_main$J = /* @__PURE__ */ defineComponent({
|
|
1087
1090
|
...{
|
|
1088
1091
|
inheritAttrs: false
|
|
1089
1092
|
},
|
|
@@ -1155,12 +1158,12 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1155
1158
|
createElementVNode("span", {
|
|
1156
1159
|
class: normalizeClass(buttonRowClasses.value)
|
|
1157
1160
|
}, [
|
|
1158
|
-
createElementVNode("span", _hoisted_1$
|
|
1161
|
+
createElementVNode("span", _hoisted_1$z, [
|
|
1159
1162
|
createElementVNode("span", {
|
|
1160
1163
|
class: normalizeClass(["flex items-center", { "inline-flex items-start": __props.icon }])
|
|
1161
1164
|
}, [
|
|
1162
1165
|
__props.icon ? (openBlock(), createElementBlock("span", _hoisted_2$o, [
|
|
1163
|
-
createVNode(_sfc_main$
|
|
1166
|
+
createVNode(_sfc_main$O, {
|
|
1164
1167
|
name: __props.icon,
|
|
1165
1168
|
size: 24,
|
|
1166
1169
|
class: normalizeClass(["fill-blue-500", [{ "fill-gray-500": __props.disabled }, __props.iconClass]])
|
|
@@ -1173,7 +1176,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1173
1176
|
])
|
|
1174
1177
|
], 2),
|
|
1175
1178
|
createElementVNode("span", _hoisted_4$h, [
|
|
1176
|
-
__props.stickerText && __props.stickerColor ? (openBlock(), createBlock(_sfc_main$
|
|
1179
|
+
__props.stickerText && __props.stickerColor ? (openBlock(), createBlock(_sfc_main$K, {
|
|
1177
1180
|
key: 0,
|
|
1178
1181
|
variant: __props.stickerColor
|
|
1179
1182
|
}, {
|
|
@@ -1182,7 +1185,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1182
1185
|
]),
|
|
1183
1186
|
_: 1
|
|
1184
1187
|
}, 8, ["variant"])) : createCommentVNode("", true),
|
|
1185
|
-
createVNode(_sfc_main$
|
|
1188
|
+
createVNode(_sfc_main$O, {
|
|
1186
1189
|
name: "arrowDown",
|
|
1187
1190
|
size: 24,
|
|
1188
1191
|
class: normalizeClass(["transition-transform duration-200 fill-blue-500 min-w-6 min-h-6", { "rotate-180": isOpen.value, "fill-gray-500": __props.disabled }])
|
|
@@ -1206,7 +1209,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1206
1209
|
};
|
|
1207
1210
|
}
|
|
1208
1211
|
});
|
|
1209
|
-
const _hoisted_1$
|
|
1212
|
+
const _hoisted_1$y = ["id"];
|
|
1210
1213
|
const _hoisted_2$n = {
|
|
1211
1214
|
key: 0,
|
|
1212
1215
|
class: "flex items-start gap-4"
|
|
@@ -1231,7 +1234,7 @@ const _hoisted_13$2 = { class: "flex items-start gap-3" };
|
|
|
1231
1234
|
const _hoisted_14$2 = { class: "mb-0-last-child" };
|
|
1232
1235
|
const smallIconSize = 24;
|
|
1233
1236
|
const largeIconSize = 48;
|
|
1234
|
-
const _sfc_main$
|
|
1237
|
+
const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
1235
1238
|
__name: "FdsBlockInfo",
|
|
1236
1239
|
props: {
|
|
1237
1240
|
heading: { default: void 0 },
|
|
@@ -1264,7 +1267,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
1264
1267
|
class: contentClasses.value
|
|
1265
1268
|
}, rootAttrs.value), [
|
|
1266
1269
|
__props.iconSize === "large" && __props.icon ? (openBlock(), createElementBlock("div", _hoisted_2$n, [
|
|
1267
|
-
createVNode(_sfc_main$
|
|
1270
|
+
createVNode(_sfc_main$O, {
|
|
1268
1271
|
name: __props.icon,
|
|
1269
1272
|
size: largeIconSize,
|
|
1270
1273
|
class: "fill-blue-500"
|
|
@@ -1289,7 +1292,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
1289
1292
|
}, [
|
|
1290
1293
|
createElementVNode("header", _hoisted_10$4, [
|
|
1291
1294
|
createElementVNode("div", _hoisted_11$4, [
|
|
1292
|
-
__props.icon && __props.iconSize === "small" ? (openBlock(), createBlock(_sfc_main$
|
|
1295
|
+
__props.icon && __props.iconSize === "small" ? (openBlock(), createBlock(_sfc_main$O, {
|
|
1293
1296
|
key: 0,
|
|
1294
1297
|
name: __props.icon,
|
|
1295
1298
|
size: smallIconSize,
|
|
@@ -1306,16 +1309,16 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
1306
1309
|
renderSlot(_ctx.$slots, "default")
|
|
1307
1310
|
])
|
|
1308
1311
|
]))
|
|
1309
|
-
], 16, _hoisted_1$
|
|
1312
|
+
], 16, _hoisted_1$y);
|
|
1310
1313
|
};
|
|
1311
1314
|
}
|
|
1312
1315
|
});
|
|
1313
|
-
const _hoisted_1$
|
|
1316
|
+
const _hoisted_1$x = { class: "mb-0-last-child" };
|
|
1314
1317
|
const _hoisted_2$m = {
|
|
1315
1318
|
key: 0,
|
|
1316
1319
|
class: "flex items-end"
|
|
1317
1320
|
};
|
|
1318
|
-
const _sfc_main$
|
|
1321
|
+
const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
1319
1322
|
...{
|
|
1320
1323
|
inheritAttrs: false
|
|
1321
1324
|
},
|
|
@@ -1428,7 +1431,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
1428
1431
|
createElementVNode("div", {
|
|
1429
1432
|
class: normalizeClass(["flex w-full flex-1", contentClasses.value])
|
|
1430
1433
|
}, [
|
|
1431
|
-
__props.icon ? (openBlock(), createBlock(_sfc_main$
|
|
1434
|
+
__props.icon ? (openBlock(), createBlock(_sfc_main$O, {
|
|
1432
1435
|
key: 0,
|
|
1433
1436
|
name: __props.icon,
|
|
1434
1437
|
size: 24,
|
|
@@ -1447,7 +1450,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
1447
1450
|
createElementVNode("div", {
|
|
1448
1451
|
class: normalizeClass(slotWrapperClasses.value)
|
|
1449
1452
|
}, [
|
|
1450
|
-
createElementVNode("div", _hoisted_1$
|
|
1453
|
+
createElementVNode("div", _hoisted_1$x, [
|
|
1451
1454
|
renderSlot(_ctx.$slots, "default")
|
|
1452
1455
|
]),
|
|
1453
1456
|
unref(hasStickerSlot) ? (openBlock(), createElementBlock("div", _hoisted_2$m, [
|
|
@@ -1456,7 +1459,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
1456
1459
|
], 2)
|
|
1457
1460
|
], 2)
|
|
1458
1461
|
], 2),
|
|
1459
|
-
__props.variant === "link" ? (openBlock(), createBlock(_sfc_main$
|
|
1462
|
+
__props.variant === "link" ? (openBlock(), createBlock(_sfc_main$O, {
|
|
1460
1463
|
key: 0,
|
|
1461
1464
|
name: "arrowRight",
|
|
1462
1465
|
size: 24,
|
|
@@ -1468,8 +1471,8 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
1468
1471
|
};
|
|
1469
1472
|
}
|
|
1470
1473
|
});
|
|
1471
|
-
const _hoisted_1$
|
|
1472
|
-
const _sfc_main$
|
|
1474
|
+
const _hoisted_1$w = ["aria-label"];
|
|
1475
|
+
const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
1473
1476
|
__name: "FdsSpinner",
|
|
1474
1477
|
props: {
|
|
1475
1478
|
size: { default: "48px" },
|
|
@@ -1549,13 +1552,13 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
1549
1552
|
key: 0,
|
|
1550
1553
|
class: normalizeClass(__props.labelPosition === "bottom" ? "font-bold" : "")
|
|
1551
1554
|
}, toDisplayString(__props.label), 3)) : createCommentVNode("", true)
|
|
1552
|
-
], 16, _hoisted_1$
|
|
1555
|
+
], 16, _hoisted_1$w);
|
|
1553
1556
|
};
|
|
1554
1557
|
}
|
|
1555
1558
|
});
|
|
1556
|
-
const _hoisted_1$
|
|
1559
|
+
const _hoisted_1$v = ["aria-disabled"];
|
|
1557
1560
|
const elBase$2 = "box-border appearance-none inline-flex items-center justify-center w-fit min-h-0 shadow-none p-0.5 text-base select-none m-0 rounded-md text-left align-middle no-underline transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
|
|
1558
|
-
const _sfc_main$
|
|
1561
|
+
const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
1559
1562
|
...{
|
|
1560
1563
|
inheritAttrs: false
|
|
1561
1564
|
},
|
|
@@ -1640,7 +1643,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
1640
1643
|
onClick
|
|
1641
1644
|
}), {
|
|
1642
1645
|
default: withCtx(() => [
|
|
1643
|
-
__props.loading ? (openBlock(), createBlock(_sfc_main$
|
|
1646
|
+
__props.loading ? (openBlock(), createBlock(_sfc_main$G, {
|
|
1644
1647
|
key: 0,
|
|
1645
1648
|
class: "mr-2",
|
|
1646
1649
|
size: "24px",
|
|
@@ -1650,7 +1653,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
1650
1653
|
class: normalizeClass(iconOrderClasses.value),
|
|
1651
1654
|
"aria-hidden": "true"
|
|
1652
1655
|
}, [
|
|
1653
|
-
createVNode(_sfc_main$
|
|
1656
|
+
createVNode(_sfc_main$O, {
|
|
1654
1657
|
class: normalizeClass(iconFillClass2.value),
|
|
1655
1658
|
name: __props.icon,
|
|
1656
1659
|
size: __props.iconSize
|
|
@@ -1660,15 +1663,15 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
1660
1663
|
]),
|
|
1661
1664
|
_: 1
|
|
1662
1665
|
}, 16, ["type", "disabled", "data-testid", "class"]))
|
|
1663
|
-
], 10, _hoisted_1$
|
|
1666
|
+
], 10, _hoisted_1$v);
|
|
1664
1667
|
};
|
|
1665
1668
|
}
|
|
1666
1669
|
});
|
|
1667
|
-
const _hoisted_1$
|
|
1670
|
+
const _hoisted_1$u = {
|
|
1668
1671
|
key: 0,
|
|
1669
1672
|
class: "flex items-center gap-2 h-7"
|
|
1670
1673
|
};
|
|
1671
|
-
const _sfc_main$
|
|
1674
|
+
const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
1672
1675
|
__name: "FdsButtonCopy",
|
|
1673
1676
|
props: {
|
|
1674
1677
|
value: { default: "" },
|
|
@@ -1730,10 +1733,10 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
|
1730
1733
|
}
|
|
1731
1734
|
});
|
|
1732
1735
|
return (_ctx, _cache) => {
|
|
1733
|
-
return isCopied.value ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
1734
|
-
createVNode(_sfc_main$
|
|
1736
|
+
return isCopied.value ? (openBlock(), createElementBlock("div", _hoisted_1$u, [
|
|
1737
|
+
createVNode(_sfc_main$O, { name: "bigSuccess" }),
|
|
1735
1738
|
createElementVNode("span", null, toDisplayString(props.copiedText), 1)
|
|
1736
|
-
])) : (openBlock(), createBlock(_sfc_main$
|
|
1739
|
+
])) : (openBlock(), createBlock(_sfc_main$F, {
|
|
1737
1740
|
key: 1,
|
|
1738
1741
|
type: "button",
|
|
1739
1742
|
disabled: props.disabled,
|
|
@@ -5024,8 +5027,8 @@ function useDownload() {
|
|
|
5024
5027
|
isDownloading
|
|
5025
5028
|
};
|
|
5026
5029
|
}
|
|
5027
|
-
const _hoisted_1$
|
|
5028
|
-
const _sfc_main$
|
|
5030
|
+
const _hoisted_1$t = ["disabled", "aria-disabled"];
|
|
5031
|
+
const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
5029
5032
|
__name: "FdsButtonDownload",
|
|
5030
5033
|
props: {
|
|
5031
5034
|
loading: { type: Boolean, default: false },
|
|
@@ -5126,23 +5129,23 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
|
|
|
5126
5129
|
class: normalizeClass(iconOrderClasses.value),
|
|
5127
5130
|
"aria-hidden": "true"
|
|
5128
5131
|
}, [
|
|
5129
|
-
createVNode(_sfc_main$
|
|
5132
|
+
createVNode(_sfc_main$O, {
|
|
5130
5133
|
class: normalizeClass(iconFillClass2.value),
|
|
5131
5134
|
name: "download",
|
|
5132
5135
|
size: 24
|
|
5133
5136
|
}, null, 8, ["class"])
|
|
5134
5137
|
], 2),
|
|
5135
5138
|
createTextVNode(" " + toDisplayString(__props.text), 1)
|
|
5136
|
-
], 16, _hoisted_1$
|
|
5139
|
+
], 16, _hoisted_1$t);
|
|
5137
5140
|
};
|
|
5138
5141
|
}
|
|
5139
5142
|
});
|
|
5140
|
-
const _hoisted_1$
|
|
5143
|
+
const _hoisted_1$s = ["aria-disabled"];
|
|
5141
5144
|
const _hoisted_2$l = { key: 2 };
|
|
5142
5145
|
const elBase$1 = "fds-button-primary box-border appearance-none inline-flex items-center justify-center select-none w-full min-h-0 min-w-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
|
|
5143
5146
|
const variantClasses$1 = "bg-blue-600 border border-blue-600 text-white hover:bg-blue-700";
|
|
5144
5147
|
const iconFillClass$1 = "fill-white";
|
|
5145
|
-
const _sfc_main$
|
|
5148
|
+
const _sfc_main$C = /* @__PURE__ */ defineComponent({
|
|
5146
5149
|
...{
|
|
5147
5150
|
inheritAttrs: false
|
|
5148
5151
|
},
|
|
@@ -5225,7 +5228,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5225
5228
|
onClick
|
|
5226
5229
|
}), {
|
|
5227
5230
|
default: withCtx(() => [
|
|
5228
|
-
__props.loading ? (openBlock(), createBlock(_sfc_main$
|
|
5231
|
+
__props.loading ? (openBlock(), createBlock(_sfc_main$G, {
|
|
5229
5232
|
key: 0,
|
|
5230
5233
|
size: __props.size === "sm" ? "18px" : "24px",
|
|
5231
5234
|
color: "inherit"
|
|
@@ -5234,7 +5237,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5234
5237
|
class: normalizeClass(iconOrderClasses.value),
|
|
5235
5238
|
"aria-hidden": "true"
|
|
5236
5239
|
}, [
|
|
5237
|
-
createVNode(_sfc_main$
|
|
5240
|
+
createVNode(_sfc_main$O, {
|
|
5238
5241
|
class: normalizeClass(iconFillClass$1),
|
|
5239
5242
|
name: __props.icon,
|
|
5240
5243
|
size: __props.iconSize
|
|
@@ -5244,16 +5247,16 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5244
5247
|
]),
|
|
5245
5248
|
_: 1
|
|
5246
5249
|
}, 16, ["type", "disabled", "data-testid", "class"]))
|
|
5247
|
-
], 10, _hoisted_1$
|
|
5250
|
+
], 10, _hoisted_1$s);
|
|
5248
5251
|
};
|
|
5249
5252
|
}
|
|
5250
5253
|
});
|
|
5251
|
-
const _hoisted_1$
|
|
5254
|
+
const _hoisted_1$r = ["aria-disabled"];
|
|
5252
5255
|
const _hoisted_2$k = { key: 2 };
|
|
5253
5256
|
const elBase = "fds-button-secondary box-border appearance-none inline-flex items-center justify-center select-none w-full min-h-0 min-w-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
|
|
5254
5257
|
const variantClasses = "bg-white border-2 border-blue-500 text-blue-600 hover:bg-blue_t-100 hover:border-blue-500 hover:text-blue-600 active:bg-blue_t-200 active:border-blue-500 active:text-blue-600";
|
|
5255
5258
|
const iconFillClass = "fill-blue-500";
|
|
5256
|
-
const _sfc_main$
|
|
5259
|
+
const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
5257
5260
|
...{
|
|
5258
5261
|
inheritAttrs: false
|
|
5259
5262
|
},
|
|
@@ -5337,7 +5340,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
|
5337
5340
|
onClick
|
|
5338
5341
|
}), {
|
|
5339
5342
|
default: withCtx(() => [
|
|
5340
|
-
__props.loading ? (openBlock(), createBlock(_sfc_main$
|
|
5343
|
+
__props.loading ? (openBlock(), createBlock(_sfc_main$G, {
|
|
5341
5344
|
key: 0,
|
|
5342
5345
|
size: __props.size === "sm" ? "18px" : "24px",
|
|
5343
5346
|
color: "inherit"
|
|
@@ -5346,7 +5349,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
|
5346
5349
|
class: normalizeClass(iconOrderClasses.value),
|
|
5347
5350
|
"aria-hidden": "true"
|
|
5348
5351
|
}, [
|
|
5349
|
-
createVNode(_sfc_main$
|
|
5352
|
+
createVNode(_sfc_main$O, {
|
|
5350
5353
|
class: normalizeClass(iconFillClass),
|
|
5351
5354
|
name: __props.icon,
|
|
5352
5355
|
size: __props.iconSize
|
|
@@ -5356,7 +5359,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
|
5356
5359
|
]),
|
|
5357
5360
|
_: 1
|
|
5358
5361
|
}, 16, ["type", "disabled", "data-testid", "class"]))
|
|
5359
|
-
], 10, _hoisted_1$
|
|
5362
|
+
], 10, _hoisted_1$r);
|
|
5360
5363
|
};
|
|
5361
5364
|
}
|
|
5362
5365
|
});
|
|
@@ -5678,8 +5681,8 @@ function useViewportBreakpoint() {
|
|
|
5678
5681
|
breakpoints
|
|
5679
5682
|
};
|
|
5680
5683
|
}
|
|
5681
|
-
const _hoisted_1$
|
|
5682
|
-
const _sfc_main$
|
|
5684
|
+
const _hoisted_1$q = ["title"];
|
|
5685
|
+
const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
5683
5686
|
__name: "FdsBreakpointIndicator",
|
|
5684
5687
|
props: {
|
|
5685
5688
|
popoverClass: {}
|
|
@@ -5718,7 +5721,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
5718
5721
|
class: "px-2 py-1 rounded text-xs bg-white bg-opacity-20 text-black hover:bg-opacity-30 cursor-pointer",
|
|
5719
5722
|
title: `${unref(windowWidth)}px`,
|
|
5720
5723
|
onClick: toggleBreakpointList
|
|
5721
|
-
}, toDisplayString(unref(currentBreakpoint)), 9, _hoisted_1$
|
|
5724
|
+
}, toDisplayString(unref(currentBreakpoint)), 9, _hoisted_1$q),
|
|
5722
5725
|
showBreakpointList.value ? (openBlock(), createElementBlock("div", {
|
|
5723
5726
|
key: 0,
|
|
5724
5727
|
class: normalizeClass(["absolute bottom-full left-0 mb-2 rounded-lg shadow-lg p-2 text-xs font-mono whitespace-nowrap z-10", __props.popoverClass])
|
|
@@ -5798,9 +5801,9 @@ function useDevModePoEditor() {
|
|
|
5798
5801
|
setI18nKeysVisibility
|
|
5799
5802
|
};
|
|
5800
5803
|
}
|
|
5801
|
-
const _hoisted_1$
|
|
5804
|
+
const _hoisted_1$p = ["for"];
|
|
5802
5805
|
const _hoisted_2$j = ["value", "disabled", "required"];
|
|
5803
|
-
const _sfc_main$
|
|
5806
|
+
const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
5804
5807
|
...{
|
|
5805
5808
|
inheritAttrs: false
|
|
5806
5809
|
},
|
|
@@ -5968,14 +5971,14 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
5968
5971
|
createTextVNode(toDisplayString(props.label), 1)
|
|
5969
5972
|
], 64)) : createCommentVNode("", true)
|
|
5970
5973
|
], 2)) : createCommentVNode("", true)
|
|
5971
|
-
], 16, _hoisted_1$
|
|
5974
|
+
], 16, _hoisted_1$p)
|
|
5972
5975
|
], 2);
|
|
5973
5976
|
};
|
|
5974
5977
|
}
|
|
5975
5978
|
});
|
|
5976
|
-
const _hoisted_1$
|
|
5979
|
+
const _hoisted_1$o = ["for"];
|
|
5977
5980
|
const _hoisted_2$i = ["value", "checked", "disabled", "required"];
|
|
5978
|
-
const _sfc_main$
|
|
5981
|
+
const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
5979
5982
|
...{
|
|
5980
5983
|
inheritAttrs: false
|
|
5981
5984
|
},
|
|
@@ -6106,7 +6109,7 @@ const _sfc_main$x = /* @__PURE__ */ defineComponent({
|
|
|
6106
6109
|
createTextVNode(toDisplayString(props.label), 1)
|
|
6107
6110
|
], 64)) : createCommentVNode("", true)
|
|
6108
6111
|
], 2)) : createCommentVNode("", true)
|
|
6109
|
-
], 16, _hoisted_1$
|
|
6112
|
+
], 16, _hoisted_1$o)
|
|
6110
6113
|
], 2);
|
|
6111
6114
|
};
|
|
6112
6115
|
}
|
|
@@ -6123,7 +6126,7 @@ function classValueToString(value) {
|
|
|
6123
6126
|
}
|
|
6124
6127
|
return String(value);
|
|
6125
6128
|
}
|
|
6126
|
-
const _sfc_main$
|
|
6129
|
+
const _sfc_main$x = /* @__PURE__ */ defineComponent({
|
|
6127
6130
|
...{
|
|
6128
6131
|
inheritAttrs: false
|
|
6129
6132
|
},
|
|
@@ -6154,7 +6157,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
6154
6157
|
};
|
|
6155
6158
|
}
|
|
6156
6159
|
});
|
|
6157
|
-
const _hoisted_1$
|
|
6160
|
+
const _hoisted_1$n = {
|
|
6158
6161
|
key: 0,
|
|
6159
6162
|
class: "absolute bottom-full right-0 mb-3 z-60 flex min-w-54 flex-col font-normal"
|
|
6160
6163
|
};
|
|
@@ -6170,7 +6173,7 @@ const _hoisted_5$d = {
|
|
|
6170
6173
|
};
|
|
6171
6174
|
const _hoisted_6$9 = { key: 2 };
|
|
6172
6175
|
const OVERLAY_OPEN_KEY = "devModeOverlayOpen";
|
|
6173
|
-
const _sfc_main$
|
|
6176
|
+
const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
6174
6177
|
__name: "FdsDevModeOverlay",
|
|
6175
6178
|
props: {
|
|
6176
6179
|
environment: { default: null },
|
|
@@ -6237,11 +6240,11 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6237
6240
|
() => checkToggles.value.length > 0 || radioToggles.value.length > 0 || buttonToggles.value.length > 0 || canToggleI18nKeys.value || showLocaleSwitcher.value
|
|
6238
6241
|
);
|
|
6239
6242
|
return (_ctx, _cache) => {
|
|
6240
|
-
return hasContent.value ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
6243
|
+
return hasContent.value ? (openBlock(), createElementBlock("div", _hoisted_1$n, [
|
|
6241
6244
|
isOpen.value ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
|
|
6242
6245
|
createElementVNode("div", _hoisted_3$h, [
|
|
6243
6246
|
createElementVNode("div", null, [
|
|
6244
|
-
unref(canToggleI18nKeys) ? (openBlock(), createBlock(_sfc_main$
|
|
6247
|
+
unref(canToggleI18nKeys) ? (openBlock(), createBlock(_sfc_main$z, {
|
|
6245
6248
|
key: 0,
|
|
6246
6249
|
checked: unref(showingTranslationKeys),
|
|
6247
6250
|
onChange: unref(setI18nKeysVisibility),
|
|
@@ -6253,7 +6256,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6253
6256
|
_: 1
|
|
6254
6257
|
}, 8, ["checked", "onChange"])) : createCommentVNode("", true),
|
|
6255
6258
|
(openBlock(true), createElementBlock(Fragment, null, renderList(checkToggles.value, (toggle) => {
|
|
6256
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6259
|
+
return openBlock(), createBlock(_sfc_main$z, {
|
|
6257
6260
|
key: `${toggle.key}-${toggle.checked}`,
|
|
6258
6261
|
checked: toggle.checked,
|
|
6259
6262
|
class: "mb-0!",
|
|
@@ -6268,7 +6271,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6268
6271
|
]),
|
|
6269
6272
|
radioToggles.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_4$f, [
|
|
6270
6273
|
(openBlock(true), createElementBlock(Fragment, null, renderList(radioToggles.value, (toggle) => {
|
|
6271
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6274
|
+
return openBlock(), createBlock(_sfc_main$y, {
|
|
6272
6275
|
key: `${toggle.key}-${toggle.checked}`,
|
|
6273
6276
|
name: toggle.group,
|
|
6274
6277
|
value: toggle.value,
|
|
@@ -6285,7 +6288,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6285
6288
|
])) : createCommentVNode("", true),
|
|
6286
6289
|
buttonToggles.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_5$d, [
|
|
6287
6290
|
(openBlock(true), createElementBlock(Fragment, null, renderList(buttonToggles.value, (toggle) => {
|
|
6288
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6291
|
+
return openBlock(), createBlock(_sfc_main$F, {
|
|
6289
6292
|
key: toggle.key,
|
|
6290
6293
|
size: "sm",
|
|
6291
6294
|
block: "",
|
|
@@ -6296,7 +6299,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6296
6299
|
])) : createCommentVNode("", true),
|
|
6297
6300
|
showLocaleSwitcher.value ? (openBlock(), createElementBlock("div", _hoisted_6$9, [
|
|
6298
6301
|
(openBlock(true), createElementBlock(Fragment, null, renderList(localeOptions.value, (localeCode) => {
|
|
6299
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6302
|
+
return openBlock(), createBlock(_sfc_main$y, {
|
|
6300
6303
|
key: localeCode,
|
|
6301
6304
|
name: "fds-dev-mode-locale",
|
|
6302
6305
|
value: localeCode,
|
|
@@ -6320,13 +6323,13 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6320
6323
|
onClick: _cache[0] || (_cache[0] = ($event) => isOpen.value = !isOpen.value),
|
|
6321
6324
|
class: "flex w-full cursor-pointer justify-between gap-2 px-3 py-2 active:bg-gray-100"
|
|
6322
6325
|
}, [
|
|
6323
|
-
createVNode(_sfc_main$
|
|
6326
|
+
createVNode(_sfc_main$x, { class: "mb-0!" }, {
|
|
6324
6327
|
default: withCtx(() => [
|
|
6325
6328
|
createTextVNode(toDisplayString(unref(t)("FdsDevMode.overlay.quickSettings")), 1)
|
|
6326
6329
|
]),
|
|
6327
6330
|
_: 1
|
|
6328
6331
|
}),
|
|
6329
|
-
createVNode(_sfc_main$
|
|
6332
|
+
createVNode(_sfc_main$O, {
|
|
6330
6333
|
name: isOpen.value ? "arrowUp" : "arrowDown",
|
|
6331
6334
|
size: 20,
|
|
6332
6335
|
class: "fill-gray-700"
|
|
@@ -6337,10 +6340,10 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6337
6340
|
};
|
|
6338
6341
|
}
|
|
6339
6342
|
});
|
|
6340
|
-
const _hoisted_1$
|
|
6343
|
+
const _hoisted_1$m = { class: "flex justify-between mb-4" };
|
|
6341
6344
|
const _hoisted_2$g = { class: "flex items-center gap-2" };
|
|
6342
6345
|
const _hoisted_3$g = { class: "mb-0-last-child" };
|
|
6343
|
-
const _sfc_main$
|
|
6346
|
+
const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
6344
6347
|
__name: "FdsModal",
|
|
6345
6348
|
props: {
|
|
6346
6349
|
open: { type: Boolean, default: false },
|
|
@@ -6569,9 +6572,9 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
6569
6572
|
createElementVNode("div", {
|
|
6570
6573
|
class: normalizeClass(__props.resizable ? "overflow-auto flex-1 min-h-0" : "")
|
|
6571
6574
|
}, [
|
|
6572
|
-
createElementVNode("div", _hoisted_1$
|
|
6575
|
+
createElementVNode("div", _hoisted_1$m, [
|
|
6573
6576
|
createElementVNode("div", _hoisted_2$g, [
|
|
6574
|
-
iconName.value ? (openBlock(), createBlock(_sfc_main$
|
|
6577
|
+
iconName.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
6575
6578
|
key: 0,
|
|
6576
6579
|
name: iconName.value,
|
|
6577
6580
|
size: 24,
|
|
@@ -6582,7 +6585,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
6582
6585
|
class: normalizeClass(headerTitleClasses.value)
|
|
6583
6586
|
}, toDisplayString(__props.heading), 3)
|
|
6584
6587
|
]),
|
|
6585
|
-
!__props.strict ? (openBlock(), createBlock(_sfc_main$
|
|
6588
|
+
!__props.strict ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
6586
6589
|
key: 0,
|
|
6587
6590
|
icon: "cross",
|
|
6588
6591
|
size: 28,
|
|
@@ -9844,7 +9847,7 @@ try {
|
|
|
9844
9847
|
globalThis.IMask = IMask;
|
|
9845
9848
|
} catch {
|
|
9846
9849
|
}
|
|
9847
|
-
const _sfc_main$
|
|
9850
|
+
const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
9848
9851
|
...{
|
|
9849
9852
|
inheritAttrs: false
|
|
9850
9853
|
},
|
|
@@ -9875,7 +9878,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
9875
9878
|
};
|
|
9876
9879
|
}
|
|
9877
9880
|
});
|
|
9878
|
-
const _hoisted_1$
|
|
9881
|
+
const _hoisted_1$l = ["for", "id"];
|
|
9879
9882
|
const _hoisted_2$f = { class: "relative" };
|
|
9880
9883
|
const _hoisted_3$f = ["type", "required", "disabled", "tabindex", "aria-invalid", "aria-label", "aria-labelledby", "aria-describedby", "autocomplete", "placeholder", "pattern", "searchIcon"];
|
|
9881
9884
|
const _hoisted_4$e = {
|
|
@@ -9883,7 +9886,7 @@ const _hoisted_4$e = {
|
|
|
9883
9886
|
class: "text-red-700 font-bold mt-1"
|
|
9884
9887
|
};
|
|
9885
9888
|
const inputPaddingClasses = "px-3 py-[calc(0.75rem-1px)]";
|
|
9886
|
-
const _sfc_main$
|
|
9889
|
+
const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
9887
9890
|
...{
|
|
9888
9891
|
inheritAttrs: false
|
|
9889
9892
|
},
|
|
@@ -10183,8 +10186,8 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
10183
10186
|
for: inputId.value,
|
|
10184
10187
|
id: labelId.value,
|
|
10185
10188
|
class: ["block font-bold text-gray-900 cursor-pointer", { "mb-0": props.meta, "mb-1": !props.meta }]
|
|
10186
|
-
}, labelAttrs.value), toDisplayString(props.label), 17, _hoisted_1$
|
|
10187
|
-
props.meta ? (openBlock(), createBlock(_sfc_main$
|
|
10189
|
+
}, labelAttrs.value), toDisplayString(props.label), 17, _hoisted_1$l)) : createCommentVNode("", true),
|
|
10190
|
+
props.meta ? (openBlock(), createBlock(_sfc_main$u, {
|
|
10188
10191
|
key: 1,
|
|
10189
10192
|
id: metaId.value,
|
|
10190
10193
|
class: normalizeClass({ "mb-1": !props.labelLeft })
|
|
@@ -10229,7 +10232,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
10229
10232
|
createElementVNode("div", {
|
|
10230
10233
|
class: normalizeClass(rightIconsContainerClasses.value)
|
|
10231
10234
|
}, [
|
|
10232
|
-
showDateIcon.value ? (openBlock(), createBlock(_sfc_main$
|
|
10235
|
+
showDateIcon.value ? (openBlock(), createBlock(_sfc_main$N, {
|
|
10233
10236
|
key: 0,
|
|
10234
10237
|
"aria-label": dateButtonLabel.value,
|
|
10235
10238
|
onClick: onDateIconClick,
|
|
@@ -10237,29 +10240,29 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
10237
10240
|
size: 28,
|
|
10238
10241
|
class: "fill-blue-500"
|
|
10239
10242
|
}, null, 8, ["aria-label"])) : createCommentVNode("", true),
|
|
10240
|
-
isInvalid.value ? (openBlock(), createBlock(_sfc_main$
|
|
10243
|
+
isInvalid.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
10241
10244
|
key: 1,
|
|
10242
10245
|
name: "alert",
|
|
10243
10246
|
class: "fill-red-700"
|
|
10244
10247
|
})) : createCommentVNode("", true),
|
|
10245
|
-
isValid2.value ? (openBlock(), createBlock(_sfc_main$
|
|
10248
|
+
isValid2.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
10246
10249
|
key: 2,
|
|
10247
10250
|
name: "bigSuccess"
|
|
10248
10251
|
})) : createCommentVNode("", true),
|
|
10249
|
-
props.searchIcon ? (openBlock(), createBlock(_sfc_main$
|
|
10252
|
+
props.searchIcon ? (openBlock(), createBlock(_sfc_main$O, {
|
|
10250
10253
|
key: 3,
|
|
10251
10254
|
name: "search",
|
|
10252
10255
|
size: 24,
|
|
10253
10256
|
class: "fill-blue-500"
|
|
10254
10257
|
})) : createCommentVNode("", true),
|
|
10255
|
-
showClearButton.value ? (openBlock(), createBlock(_sfc_main$
|
|
10258
|
+
showClearButton.value ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
10256
10259
|
key: 4,
|
|
10257
10260
|
icon: "cross"
|
|
10258
10261
|
}, { "aria-label": clearButtonLabel.value }, {
|
|
10259
10262
|
onClick: onClear,
|
|
10260
10263
|
size: 30
|
|
10261
10264
|
}), null, 16)) : createCommentVNode("", true),
|
|
10262
|
-
showPasswordToggle.value ? (openBlock(), createBlock(_sfc_main$
|
|
10265
|
+
showPasswordToggle.value ? (openBlock(), createBlock(_sfc_main$F, {
|
|
10263
10266
|
key: 5,
|
|
10264
10267
|
icon: showPassword.value ? "viewOff" : "viewOn",
|
|
10265
10268
|
text: showPassword.value ? passwordButtonHideLabel.value : passwordButtonShowLabel.value,
|
|
@@ -10279,7 +10282,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
10279
10282
|
};
|
|
10280
10283
|
}
|
|
10281
10284
|
});
|
|
10282
|
-
const _sfc_main$
|
|
10285
|
+
const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
10283
10286
|
__name: "FdsTabs",
|
|
10284
10287
|
props: {
|
|
10285
10288
|
block: { type: Boolean, default: false },
|
|
@@ -10312,7 +10315,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
|
|
|
10312
10315
|
};
|
|
10313
10316
|
}
|
|
10314
10317
|
});
|
|
10315
|
-
const _sfc_main$
|
|
10318
|
+
const _sfc_main$r = /* @__PURE__ */ defineComponent({
|
|
10316
10319
|
...{
|
|
10317
10320
|
inheritAttrs: false
|
|
10318
10321
|
},
|
|
@@ -10427,7 +10430,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
|
10427
10430
|
};
|
|
10428
10431
|
}
|
|
10429
10432
|
});
|
|
10430
|
-
const _hoisted_1$
|
|
10433
|
+
const _hoisted_1$k = { class: "space-y-6" };
|
|
10431
10434
|
const _hoisted_2$e = {
|
|
10432
10435
|
key: 0,
|
|
10433
10436
|
class: "text-sm text-gray-600"
|
|
@@ -10526,7 +10529,7 @@ const _hoisted_59 = {
|
|
|
10526
10529
|
class: "mt-2"
|
|
10527
10530
|
};
|
|
10528
10531
|
const _hoisted_60 = { class: "mt-4 flex justify-end gap-3" };
|
|
10529
|
-
const _sfc_main$
|
|
10532
|
+
const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
10530
10533
|
__name: "FdsDevModeStorage",
|
|
10531
10534
|
props: {
|
|
10532
10535
|
open: { type: Boolean, default: false },
|
|
@@ -10699,7 +10702,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10699
10702
|
loadStorageEntries();
|
|
10700
10703
|
};
|
|
10701
10704
|
return (_ctx, _cache) => {
|
|
10702
|
-
return openBlock(), createBlock(_sfc_main$
|
|
10705
|
+
return openBlock(), createBlock(_sfc_main$v, {
|
|
10703
10706
|
open: isOpen.value,
|
|
10704
10707
|
heading: "DevTools",
|
|
10705
10708
|
size: "xl",
|
|
@@ -10709,31 +10712,31 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10709
10712
|
onClose: _cache[11] || (_cache[11] = () => handleOpenChange(false))
|
|
10710
10713
|
}, {
|
|
10711
10714
|
default: withCtx(() => [
|
|
10712
|
-
createElementVNode("div", _hoisted_1$
|
|
10713
|
-
createVNode(_sfc_main$
|
|
10715
|
+
createElementVNode("div", _hoisted_1$k, [
|
|
10716
|
+
createVNode(_sfc_main$s, {
|
|
10714
10717
|
variant: "secondary",
|
|
10715
10718
|
class: "flex-wrap overflow-visible! *:w-auto!"
|
|
10716
10719
|
}, {
|
|
10717
10720
|
default: withCtx(() => [
|
|
10718
|
-
createVNode(_sfc_main$
|
|
10721
|
+
createVNode(_sfc_main$r, {
|
|
10719
10722
|
label: unref(t)("FdsDevModeStorage.tabs.localStorage"),
|
|
10720
10723
|
active: activeTab.value === "local",
|
|
10721
10724
|
as: "button",
|
|
10722
10725
|
onClick: _cache[0] || (_cache[0] = ($event) => activeTab.value = "local")
|
|
10723
10726
|
}, null, 8, ["label", "active"]),
|
|
10724
|
-
createVNode(_sfc_main$
|
|
10727
|
+
createVNode(_sfc_main$r, {
|
|
10725
10728
|
label: unref(t)("FdsDevModeStorage.tabs.sessionStorage"),
|
|
10726
10729
|
active: activeTab.value === "session",
|
|
10727
10730
|
as: "button",
|
|
10728
10731
|
onClick: _cache[1] || (_cache[1] = ($event) => activeTab.value = "session")
|
|
10729
10732
|
}, null, 8, ["label", "active"]),
|
|
10730
|
-
createVNode(_sfc_main$
|
|
10733
|
+
createVNode(_sfc_main$r, {
|
|
10731
10734
|
label: unref(t)("FdsDevModeStorage.tabs.cookies"),
|
|
10732
10735
|
active: activeTab.value === "cookies",
|
|
10733
10736
|
as: "button",
|
|
10734
10737
|
onClick: _cache[2] || (_cache[2] = ($event) => activeTab.value = "cookies")
|
|
10735
10738
|
}, null, 8, ["label", "active"]),
|
|
10736
|
-
createVNode(_sfc_main$
|
|
10739
|
+
createVNode(_sfc_main$r, {
|
|
10737
10740
|
label: unref(t)("FdsDevModeStorage.tabs.actions"),
|
|
10738
10741
|
active: activeTab.value === "actions",
|
|
10739
10742
|
as: "button",
|
|
@@ -10742,7 +10745,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10742
10745
|
]),
|
|
10743
10746
|
_: 1
|
|
10744
10747
|
}),
|
|
10745
|
-
activeTab.value === "local" ? (openBlock(), createBlock(_sfc_main$
|
|
10748
|
+
activeTab.value === "local" ? (openBlock(), createBlock(_sfc_main$I, {
|
|
10746
10749
|
key: 0,
|
|
10747
10750
|
heading: unref(t)("FdsDevModeStorage.tabs.localStorage"),
|
|
10748
10751
|
icon: "information",
|
|
@@ -10796,12 +10799,12 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10796
10799
|
])
|
|
10797
10800
|
]),
|
|
10798
10801
|
localEditKey.value ? (openBlock(), createElementBlock("div", _hoisted_18, [
|
|
10799
|
-
createVNode(_sfc_main$
|
|
10802
|
+
createVNode(_sfc_main$B, {
|
|
10800
10803
|
text: unref(t)("FdsDevModeStorage.actions.delete"),
|
|
10801
10804
|
size: "sm",
|
|
10802
10805
|
onClick: deleteLocalEntry
|
|
10803
10806
|
}, null, 8, ["text"]),
|
|
10804
|
-
createVNode(_sfc_main$
|
|
10807
|
+
createVNode(_sfc_main$C, {
|
|
10805
10808
|
text: unref(t)("FdsDevModeStorage.actions.save"),
|
|
10806
10809
|
size: "sm",
|
|
10807
10810
|
onClick: saveLocalEntry
|
|
@@ -10810,7 +10813,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10810
10813
|
])
|
|
10811
10814
|
]),
|
|
10812
10815
|
_: 1
|
|
10813
|
-
}, 8, ["heading"])) : activeTab.value === "session" ? (openBlock(), createBlock(_sfc_main$
|
|
10816
|
+
}, 8, ["heading"])) : activeTab.value === "session" ? (openBlock(), createBlock(_sfc_main$I, {
|
|
10814
10817
|
key: 1,
|
|
10815
10818
|
heading: unref(t)("FdsDevModeStorage.tabs.sessionStorage"),
|
|
10816
10819
|
icon: "information",
|
|
@@ -10864,12 +10867,12 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10864
10867
|
])
|
|
10865
10868
|
]),
|
|
10866
10869
|
sessionEditKey.value ? (openBlock(), createElementBlock("div", _hoisted_35, [
|
|
10867
|
-
createVNode(_sfc_main$
|
|
10870
|
+
createVNode(_sfc_main$B, {
|
|
10868
10871
|
text: unref(t)("FdsDevModeStorage.actions.delete"),
|
|
10869
10872
|
size: "sm",
|
|
10870
10873
|
onClick: deleteSessionEntry
|
|
10871
10874
|
}, null, 8, ["text"]),
|
|
10872
|
-
createVNode(_sfc_main$
|
|
10875
|
+
createVNode(_sfc_main$C, {
|
|
10873
10876
|
text: unref(t)("FdsDevModeStorage.actions.save"),
|
|
10874
10877
|
size: "sm",
|
|
10875
10878
|
onClick: saveSessionEntry
|
|
@@ -10878,7 +10881,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10878
10881
|
])
|
|
10879
10882
|
]),
|
|
10880
10883
|
_: 1
|
|
10881
|
-
}, 8, ["heading"])) : activeTab.value === "cookies" ? (openBlock(), createBlock(_sfc_main$
|
|
10884
|
+
}, 8, ["heading"])) : activeTab.value === "cookies" ? (openBlock(), createBlock(_sfc_main$I, {
|
|
10882
10885
|
key: 2,
|
|
10883
10886
|
heading: unref(t)("FdsDevModeStorage.tabs.cookies"),
|
|
10884
10887
|
icon: "information",
|
|
@@ -10932,12 +10935,12 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10932
10935
|
])
|
|
10933
10936
|
]),
|
|
10934
10937
|
cookieEditKey.value ? (openBlock(), createElementBlock("div", _hoisted_52, [
|
|
10935
|
-
createVNode(_sfc_main$
|
|
10938
|
+
createVNode(_sfc_main$B, {
|
|
10936
10939
|
text: unref(t)("FdsDevModeStorage.actions.delete"),
|
|
10937
10940
|
size: "sm",
|
|
10938
10941
|
onClick: deleteCookieEntry
|
|
10939
10942
|
}, null, 8, ["text"]),
|
|
10940
|
-
createVNode(_sfc_main$
|
|
10943
|
+
createVNode(_sfc_main$C, {
|
|
10941
10944
|
text: unref(t)("FdsDevModeStorage.actions.save"),
|
|
10942
10945
|
size: "sm",
|
|
10943
10946
|
onClick: saveCookieEntry
|
|
@@ -10946,7 +10949,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10946
10949
|
])
|
|
10947
10950
|
]),
|
|
10948
10951
|
_: 1
|
|
10949
|
-
}, 8, ["heading"])) : activeTab.value === "actions" ? (openBlock(), createBlock(_sfc_main$
|
|
10952
|
+
}, 8, ["heading"])) : activeTab.value === "actions" ? (openBlock(), createBlock(_sfc_main$I, {
|
|
10950
10953
|
key: 3,
|
|
10951
10954
|
heading: unref(t)("FdsDevModeStorage.tabs.actions"),
|
|
10952
10955
|
icon: "information",
|
|
@@ -10964,14 +10967,14 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10964
10967
|
createElementVNode("div", _hoisted_57, toDisplayString(action.label), 1),
|
|
10965
10968
|
action.description ? (openBlock(), createElementBlock("div", _hoisted_58, toDisplayString(action.description), 1)) : createCommentVNode("", true)
|
|
10966
10969
|
]),
|
|
10967
|
-
createVNode(_sfc_main$
|
|
10970
|
+
createVNode(_sfc_main$B, {
|
|
10968
10971
|
text: action.label,
|
|
10969
10972
|
size: "sm",
|
|
10970
10973
|
onClick: ($event) => runAction(index, action)
|
|
10971
10974
|
}, null, 8, ["text", "onClick"])
|
|
10972
10975
|
]),
|
|
10973
10976
|
action.input ? (openBlock(), createElementBlock("div", _hoisted_59, [
|
|
10974
|
-
createVNode(_sfc_main$
|
|
10977
|
+
createVNode(_sfc_main$t, {
|
|
10975
10978
|
type: action.input.type ?? "text",
|
|
10976
10979
|
modelValue: getActionInputValue(index, action.input.defaultValue),
|
|
10977
10980
|
placeholder: action.input.placeholder,
|
|
@@ -10985,11 +10988,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
10985
10988
|
_: 1
|
|
10986
10989
|
}, 8, ["heading"])) : createCommentVNode("", true),
|
|
10987
10990
|
createElementVNode("div", _hoisted_60, [
|
|
10988
|
-
createVNode(_sfc_main$
|
|
10991
|
+
createVNode(_sfc_main$B, {
|
|
10989
10992
|
text: unref(t)("FdsDevModeStorage.actions.refresh"),
|
|
10990
10993
|
onClick: refreshStorageEntries
|
|
10991
10994
|
}, null, 8, ["text"]),
|
|
10992
|
-
createVNode(_sfc_main$
|
|
10995
|
+
createVNode(_sfc_main$C, {
|
|
10993
10996
|
text: unref(t)("FdsDevModeStorage.actions.close"),
|
|
10994
10997
|
onClick: _cache[10] || (_cache[10] = ($event) => handleOpenChange(false))
|
|
10995
10998
|
}, null, 8, ["text"])
|
|
@@ -11001,11 +11004,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
11001
11004
|
};
|
|
11002
11005
|
}
|
|
11003
11006
|
});
|
|
11004
|
-
const _hoisted_1$
|
|
11007
|
+
const _hoisted_1$j = { class: "relative px-2 py-1" };
|
|
11005
11008
|
const _hoisted_2$d = { class: "flex flex-col sm:flex-row items-center gap-2 sm:gap-1" };
|
|
11006
11009
|
const _hoisted_3$d = { class: "flex items-center gap-1" };
|
|
11007
11010
|
const _hoisted_4$c = { class: "flex items-center gap-1" };
|
|
11008
|
-
const _sfc_main$
|
|
11011
|
+
const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
11009
11012
|
__name: "FdsDevMode",
|
|
11010
11013
|
props: /* @__PURE__ */ mergeModels({
|
|
11011
11014
|
environment: { default: null },
|
|
@@ -11167,8 +11170,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
11167
11170
|
onMousedown: _cache[1] || (_cache[1] = //@ts-ignore
|
|
11168
11171
|
(...args) => unref(onDragStart) && unref(onDragStart)(...args))
|
|
11169
11172
|
}, [
|
|
11170
|
-
createElementVNode("div", _hoisted_1$
|
|
11171
|
-
unref(isDevMode) ? (openBlock(), createBlock(_sfc_main$
|
|
11173
|
+
createElementVNode("div", _hoisted_1$j, [
|
|
11174
|
+
unref(isDevMode) ? (openBlock(), createBlock(_sfc_main$w, {
|
|
11172
11175
|
key: 0,
|
|
11173
11176
|
environment: __props.environment,
|
|
11174
11177
|
toggles: overlayToggles.value,
|
|
@@ -11178,7 +11181,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
11178
11181
|
}, null, 8, ["environment", "toggles"])) : createCommentVNode("", true),
|
|
11179
11182
|
createElementVNode("div", _hoisted_2$d, [
|
|
11180
11183
|
createElementVNode("div", _hoisted_3$d, [
|
|
11181
|
-
createVNode(_sfc_main$
|
|
11184
|
+
createVNode(_sfc_main$A, { "popover-class": envBannerClasses.value }, null, 8, ["popover-class"]),
|
|
11182
11185
|
createElementVNode("span", null, toDisplayString(unref(environmentText)), 1)
|
|
11183
11186
|
]),
|
|
11184
11187
|
createElementVNode("div", _hoisted_4$c, [
|
|
@@ -11187,13 +11190,13 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
11187
11190
|
(...args) => unref(toggleDevMode) && unref(toggleDevMode)(...args)),
|
|
11188
11191
|
class: "py-1 px-2 rounded text-xs font-bold bg-white bg-opacity-20 text-black hover:bg-opacity-30 min-w-[120px] cursor-pointer"
|
|
11189
11192
|
}, toDisplayString(devModeButtonText.value), 1),
|
|
11190
|
-
createVNode(_sfc_main$
|
|
11193
|
+
createVNode(_sfc_main$N, {
|
|
11191
11194
|
icon: "settings",
|
|
11192
11195
|
size: 24,
|
|
11193
11196
|
class: normalizeClass(envBannerFillColor.value),
|
|
11194
11197
|
onClick: openStorageModal
|
|
11195
11198
|
}, null, 8, ["class"]),
|
|
11196
|
-
createVNode(_sfc_main$
|
|
11199
|
+
createVNode(_sfc_main$N, {
|
|
11197
11200
|
onClick: handleEnvBanner,
|
|
11198
11201
|
icon: "cross",
|
|
11199
11202
|
size: 24,
|
|
@@ -11203,7 +11206,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
11203
11206
|
])
|
|
11204
11207
|
])
|
|
11205
11208
|
], 38)) : createCommentVNode("", true),
|
|
11206
|
-
createVNode(_sfc_main$
|
|
11209
|
+
createVNode(_sfc_main$q, {
|
|
11207
11210
|
open: isStorageModalOpen.value,
|
|
11208
11211
|
"onUpdate:open": _cache[2] || (_cache[2] = ($event) => isStorageModalOpen.value = $event),
|
|
11209
11212
|
customActions: __props.customActions
|
|
@@ -11212,8 +11215,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
11212
11215
|
};
|
|
11213
11216
|
}
|
|
11214
11217
|
});
|
|
11215
|
-
const _hoisted_1$
|
|
11216
|
-
const _sfc_main$
|
|
11218
|
+
const _hoisted_1$i = { class: "flex justify-between gap-6 w-full" };
|
|
11219
|
+
const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
11217
11220
|
__name: "FdsExitModal",
|
|
11218
11221
|
props: {
|
|
11219
11222
|
showExitConfirmModal: {},
|
|
@@ -11228,7 +11231,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
11228
11231
|
const props = __props;
|
|
11229
11232
|
const isOpen = computed(() => props.showExitConfirmModal.value);
|
|
11230
11233
|
return (_ctx, _cache) => {
|
|
11231
|
-
return openBlock(), createBlock(_sfc_main$
|
|
11234
|
+
return openBlock(), createBlock(_sfc_main$v, {
|
|
11232
11235
|
heading: props.heading,
|
|
11233
11236
|
size: "sm",
|
|
11234
11237
|
open: isOpen.value,
|
|
@@ -11236,13 +11239,13 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
11236
11239
|
onClose: props.cancelExit
|
|
11237
11240
|
}, {
|
|
11238
11241
|
"modal-footer": withCtx(() => [
|
|
11239
|
-
createElementVNode("div", _hoisted_1$
|
|
11240
|
-
createVNode(_sfc_main$
|
|
11242
|
+
createElementVNode("div", _hoisted_1$i, [
|
|
11243
|
+
createVNode(_sfc_main$B, {
|
|
11241
11244
|
text: props.stayText,
|
|
11242
11245
|
onClick: props.cancelExit,
|
|
11243
11246
|
block: ""
|
|
11244
11247
|
}, null, 8, ["text", "onClick"]),
|
|
11245
|
-
createVNode(_sfc_main$
|
|
11248
|
+
createVNode(_sfc_main$B, {
|
|
11246
11249
|
text: props.leaveText,
|
|
11247
11250
|
onClick: props.confirmExit,
|
|
11248
11251
|
block: ""
|
|
@@ -11257,6 +11260,231 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
11257
11260
|
};
|
|
11258
11261
|
}
|
|
11259
11262
|
});
|
|
11263
|
+
const _hoisted_1$h = { class: "flex items-center gap-2 min-w-0" };
|
|
11264
|
+
const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
11265
|
+
__name: "FdsDrawer",
|
|
11266
|
+
props: {
|
|
11267
|
+
open: { type: Boolean, default: false },
|
|
11268
|
+
heading: { default: "" },
|
|
11269
|
+
size: { default: "md" },
|
|
11270
|
+
strict: { type: Boolean, default: false },
|
|
11271
|
+
lockScroll: { type: Boolean, default: false },
|
|
11272
|
+
info: { default: void 0 },
|
|
11273
|
+
dataTestid: { default: void 0 },
|
|
11274
|
+
onClose: {}
|
|
11275
|
+
},
|
|
11276
|
+
emits: ["close", "update:open"],
|
|
11277
|
+
setup(__props, { emit: __emit }) {
|
|
11278
|
+
const props = __props;
|
|
11279
|
+
const emit = __emit;
|
|
11280
|
+
const isOpen = ref(props.open);
|
|
11281
|
+
let cleanupFocusTrap = null;
|
|
11282
|
+
const previouslyFocusedElement = ref(null);
|
|
11283
|
+
const { t } = useFdsI18n();
|
|
11284
|
+
const drawerOuterClasses = computed(() => ["fixed top-0 left-0 w-full h-full z-100"]);
|
|
11285
|
+
const drawerInnerClasses = computed(() => [
|
|
11286
|
+
"bg-white shadow-lg z-[99999] overflow-hidden flex flex-col",
|
|
11287
|
+
// Mobile: bottom sheet
|
|
11288
|
+
"fixed bottom-0 left-0 right-0 max-h-[90vh] rounded-t-lg",
|
|
11289
|
+
// Desktop: right panel
|
|
11290
|
+
"md:top-0 md:right-0 md:bottom-auto md:left-auto md:h-full md:max-h-none md:rounded-none md:w-full",
|
|
11291
|
+
{
|
|
11292
|
+
"md:max-w-[320px]": props.size === "sm",
|
|
11293
|
+
"md:max-w-[400px]": props.size === "md",
|
|
11294
|
+
"md:max-w-[480px]": props.size === "lg",
|
|
11295
|
+
"md:max-w-[588px]": props.size === "xl"
|
|
11296
|
+
}
|
|
11297
|
+
]);
|
|
11298
|
+
const headerClasses = computed(() => ["shrink-0 flex justify-between bg-white p-6", "rounded-t-lg md:rounded-none"]);
|
|
11299
|
+
const contentClasses = computed(() => ["flex-1 min-h-0 overflow-auto px-6 pb-6 mb-0-last-child"]);
|
|
11300
|
+
const headerTitleClasses = computed(() => ["m-0"]);
|
|
11301
|
+
const iconName = computed(() => {
|
|
11302
|
+
if (props.info === "valid") return "check";
|
|
11303
|
+
if (props.info === "invalid" || props.info === "warning") return "alert";
|
|
11304
|
+
return null;
|
|
11305
|
+
});
|
|
11306
|
+
const iconClasses = computed(() => [
|
|
11307
|
+
{
|
|
11308
|
+
"fill-green-600": props.info === "valid",
|
|
11309
|
+
"fill-red-600": props.info === "invalid",
|
|
11310
|
+
"fill-yellow-600": props.info === "warning"
|
|
11311
|
+
}
|
|
11312
|
+
]);
|
|
11313
|
+
const closeLabel = computed(() => t("FdsDrawer.closeDrawer"));
|
|
11314
|
+
const setHtmlOverflow = (value) => {
|
|
11315
|
+
if (typeof document === "undefined") return;
|
|
11316
|
+
const htmlEl = document.documentElement;
|
|
11317
|
+
if (htmlEl) {
|
|
11318
|
+
htmlEl.style.overflow = value;
|
|
11319
|
+
}
|
|
11320
|
+
};
|
|
11321
|
+
const handleBackdropClick = () => {
|
|
11322
|
+
handleClose();
|
|
11323
|
+
};
|
|
11324
|
+
const restoreFocus = () => {
|
|
11325
|
+
if (previouslyFocusedElement.value) {
|
|
11326
|
+
previouslyFocusedElement.value.focus();
|
|
11327
|
+
previouslyFocusedElement.value = null;
|
|
11328
|
+
}
|
|
11329
|
+
};
|
|
11330
|
+
const handleClose = () => {
|
|
11331
|
+
if (props.strict) {
|
|
11332
|
+
return;
|
|
11333
|
+
}
|
|
11334
|
+
isOpen.value = false;
|
|
11335
|
+
setHtmlOverflow("auto");
|
|
11336
|
+
emit("close");
|
|
11337
|
+
emit("update:open", false);
|
|
11338
|
+
};
|
|
11339
|
+
const handleKeyDown = (e) => {
|
|
11340
|
+
if (isOpen.value && e.code === "Escape") {
|
|
11341
|
+
handleClose();
|
|
11342
|
+
}
|
|
11343
|
+
};
|
|
11344
|
+
const getTabList = (drawer) => drawer.querySelectorAll(
|
|
11345
|
+
'a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type="text"]:not([disabled]), input[type="radio"]:not([disabled]), input[type="checkbox"]:not([disabled]), select:not([disabled])'
|
|
11346
|
+
);
|
|
11347
|
+
const trapFocus = () => {
|
|
11348
|
+
if (!isOpen.value) return;
|
|
11349
|
+
nextTick(() => {
|
|
11350
|
+
const drawer = document.querySelector(".fds-drawer-inner");
|
|
11351
|
+
if (!drawer) return;
|
|
11352
|
+
const tabList = getTabList(drawer);
|
|
11353
|
+
if (tabList.length > 0) {
|
|
11354
|
+
tabList[0].focus();
|
|
11355
|
+
}
|
|
11356
|
+
const handleTabKey = (e) => {
|
|
11357
|
+
if (e.key !== "Tab") return;
|
|
11358
|
+
const currentTabList = getTabList(drawer);
|
|
11359
|
+
if (currentTabList.length === 0) return;
|
|
11360
|
+
const firstFocusableEl = currentTabList[0];
|
|
11361
|
+
const lastFocusableEl = currentTabList[currentTabList.length - 1];
|
|
11362
|
+
const isTabOrderReversed = e.shiftKey;
|
|
11363
|
+
if (isTabOrderReversed && document.activeElement === firstFocusableEl) {
|
|
11364
|
+
lastFocusableEl.focus();
|
|
11365
|
+
e.preventDefault();
|
|
11366
|
+
} else if (!isTabOrderReversed && document.activeElement === lastFocusableEl) {
|
|
11367
|
+
firstFocusableEl.focus();
|
|
11368
|
+
e.preventDefault();
|
|
11369
|
+
}
|
|
11370
|
+
};
|
|
11371
|
+
drawer.addEventListener("keydown", handleTabKey, true);
|
|
11372
|
+
cleanupFocusTrap = () => {
|
|
11373
|
+
drawer.removeEventListener("keydown", handleTabKey, true);
|
|
11374
|
+
};
|
|
11375
|
+
});
|
|
11376
|
+
};
|
|
11377
|
+
watch(
|
|
11378
|
+
() => props.open,
|
|
11379
|
+
(newValue) => {
|
|
11380
|
+
isOpen.value = newValue;
|
|
11381
|
+
if (newValue) {
|
|
11382
|
+
previouslyFocusedElement.value = document.activeElement;
|
|
11383
|
+
if (props.lockScroll) {
|
|
11384
|
+
setHtmlOverflow("hidden");
|
|
11385
|
+
}
|
|
11386
|
+
trapFocus();
|
|
11387
|
+
} else {
|
|
11388
|
+
setHtmlOverflow("auto");
|
|
11389
|
+
if (cleanupFocusTrap) {
|
|
11390
|
+
cleanupFocusTrap();
|
|
11391
|
+
cleanupFocusTrap = null;
|
|
11392
|
+
}
|
|
11393
|
+
}
|
|
11394
|
+
}
|
|
11395
|
+
);
|
|
11396
|
+
onMounted(() => {
|
|
11397
|
+
document.addEventListener("keydown", handleKeyDown, true);
|
|
11398
|
+
if (props.open) {
|
|
11399
|
+
previouslyFocusedElement.value = document.activeElement;
|
|
11400
|
+
if (props.lockScroll) {
|
|
11401
|
+
setHtmlOverflow("hidden");
|
|
11402
|
+
}
|
|
11403
|
+
trapFocus();
|
|
11404
|
+
}
|
|
11405
|
+
});
|
|
11406
|
+
onBeforeUnmount(() => {
|
|
11407
|
+
document.removeEventListener("keydown", handleKeyDown, true);
|
|
11408
|
+
setHtmlOverflow("auto");
|
|
11409
|
+
if (cleanupFocusTrap) {
|
|
11410
|
+
cleanupFocusTrap();
|
|
11411
|
+
}
|
|
11412
|
+
});
|
|
11413
|
+
const drawerAttrs = computed(() => {
|
|
11414
|
+
const attrs = {};
|
|
11415
|
+
if (props.dataTestid) {
|
|
11416
|
+
attrs["data-testid"] = props.dataTestid;
|
|
11417
|
+
}
|
|
11418
|
+
return attrs;
|
|
11419
|
+
});
|
|
11420
|
+
return (_ctx, _cache) => {
|
|
11421
|
+
return openBlock(), createBlock(Teleport, { to: "body" }, [
|
|
11422
|
+
createVNode(Transition, {
|
|
11423
|
+
name: "fds-drawer",
|
|
11424
|
+
duration: { enter: 280, leave: 180 },
|
|
11425
|
+
onAfterLeave: restoreFocus
|
|
11426
|
+
}, {
|
|
11427
|
+
default: withCtx(() => [
|
|
11428
|
+
isOpen.value ? (openBlock(), createElementBlock("div", {
|
|
11429
|
+
key: 0,
|
|
11430
|
+
onClick: handleBackdropClick,
|
|
11431
|
+
class: normalizeClass(drawerOuterClasses.value)
|
|
11432
|
+
}, [
|
|
11433
|
+
_cache[2] || (_cache[2] = createElementVNode("div", { class: "fds-drawer-backdrop fixed top-0 left-0 w-full h-full bg-black/34 z-99" }, null, -1)),
|
|
11434
|
+
createElementVNode("div", mergeProps({
|
|
11435
|
+
class: ["fds-drawer-inner", drawerInnerClasses.value],
|
|
11436
|
+
role: "dialog",
|
|
11437
|
+
"aria-modal": "true"
|
|
11438
|
+
}, drawerAttrs.value, {
|
|
11439
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(() => {
|
|
11440
|
+
}, ["stop"]))
|
|
11441
|
+
}), [
|
|
11442
|
+
createElementVNode("div", {
|
|
11443
|
+
class: normalizeClass(headerClasses.value)
|
|
11444
|
+
}, [
|
|
11445
|
+
createElementVNode("div", _hoisted_1$h, [
|
|
11446
|
+
iconName.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
11447
|
+
key: 0,
|
|
11448
|
+
name: iconName.value,
|
|
11449
|
+
size: 24,
|
|
11450
|
+
class: normalizeClass(iconClasses.value)
|
|
11451
|
+
}, null, 8, ["name", "class"])) : createCommentVNode("", true),
|
|
11452
|
+
createElementVNode("h3", {
|
|
11453
|
+
tabindex: "-1",
|
|
11454
|
+
class: normalizeClass(headerTitleClasses.value)
|
|
11455
|
+
}, toDisplayString(__props.heading), 3)
|
|
11456
|
+
]),
|
|
11457
|
+
createElementVNode("div", null, [
|
|
11458
|
+
!__props.strict ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
11459
|
+
key: 0,
|
|
11460
|
+
icon: "cross",
|
|
11461
|
+
size: 28,
|
|
11462
|
+
onClick: _cache[0] || (_cache[0] = ($event) => handleClose())
|
|
11463
|
+
}, { "aria-label": closeLabel.value }, { class: "ml-4 shrink-0" }), null, 16)) : createCommentVNode("", true)
|
|
11464
|
+
])
|
|
11465
|
+
], 2),
|
|
11466
|
+
createElementVNode("div", {
|
|
11467
|
+
class: normalizeClass(contentClasses.value)
|
|
11468
|
+
}, [
|
|
11469
|
+
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
11470
|
+
], 2)
|
|
11471
|
+
], 16)
|
|
11472
|
+
], 2)) : createCommentVNode("", true)
|
|
11473
|
+
]),
|
|
11474
|
+
_: 3
|
|
11475
|
+
})
|
|
11476
|
+
]);
|
|
11477
|
+
};
|
|
11478
|
+
}
|
|
11479
|
+
});
|
|
11480
|
+
const _export_sfc = (sfc, props) => {
|
|
11481
|
+
const target = sfc.__vccOpts || sfc;
|
|
11482
|
+
for (const [key, val] of props) {
|
|
11483
|
+
target[key] = val;
|
|
11484
|
+
}
|
|
11485
|
+
return target;
|
|
11486
|
+
};
|
|
11487
|
+
const FdsDrawer = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-0a576ce5"]]);
|
|
11260
11488
|
function debounce(fn, delayMs) {
|
|
11261
11489
|
let timeoutId;
|
|
11262
11490
|
const debounced = (...args) => {
|
|
@@ -11372,11 +11600,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
11372
11600
|
id: inputId.value
|
|
11373
11601
|
}, rootAttrs.value), [
|
|
11374
11602
|
createElementVNode("div", _hoisted_2$c, [
|
|
11375
|
-
__props.loading && loadingIndicator.value === "start" ? (openBlock(), createBlock(_sfc_main$
|
|
11603
|
+
__props.loading && loadingIndicator.value === "start" ? (openBlock(), createBlock(_sfc_main$G, {
|
|
11376
11604
|
key: 0,
|
|
11377
11605
|
size: "32px",
|
|
11378
11606
|
color: "blue"
|
|
11379
|
-
})) : (openBlock(), createBlock(_sfc_main$
|
|
11607
|
+
})) : (openBlock(), createBlock(_sfc_main$N, mergeProps({ key: 1 }, { "aria-disabled": __props.current === 1 }, {
|
|
11380
11608
|
type: "button",
|
|
11381
11609
|
"aria-label": firstPageLabel.value,
|
|
11382
11610
|
icon: "first",
|
|
@@ -11385,11 +11613,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
11385
11613
|
class: [{ "hidden!": __props.current === 1 }, "w-8 h-8 sm:w-12 sm:h-12"],
|
|
11386
11614
|
onClick: _cache[0] || (_cache[0] = ($event) => handlePagination("start"))
|
|
11387
11615
|
}), null, 16, ["aria-label", "disabled", "class"])),
|
|
11388
|
-
__props.loading && loadingIndicator.value === "prev" ? (openBlock(), createBlock(_sfc_main$
|
|
11616
|
+
__props.loading && loadingIndicator.value === "prev" ? (openBlock(), createBlock(_sfc_main$G, {
|
|
11389
11617
|
key: 2,
|
|
11390
11618
|
size: "24px",
|
|
11391
11619
|
color: "blue"
|
|
11392
|
-
})) : (openBlock(), createBlock(_sfc_main$
|
|
11620
|
+
})) : (openBlock(), createBlock(_sfc_main$N, mergeProps({ key: 3 }, { "aria-disabled": __props.current === 1 }, {
|
|
11393
11621
|
type: "button",
|
|
11394
11622
|
"aria-label": prevPageLabel.value,
|
|
11395
11623
|
icon: "arrowLeft",
|
|
@@ -11400,14 +11628,14 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
11400
11628
|
}), null, 16, ["aria-label", "disabled", "class"]))
|
|
11401
11629
|
]),
|
|
11402
11630
|
createElementVNode("div", _hoisted_3$c, [
|
|
11403
|
-
__props.loading && loadingIndicator.value === "input" ? (openBlock(), createBlock(_sfc_main$
|
|
11631
|
+
__props.loading && loadingIndicator.value === "input" ? (openBlock(), createBlock(_sfc_main$G, {
|
|
11404
11632
|
key: 0,
|
|
11405
11633
|
size: "24px",
|
|
11406
11634
|
color: "blue",
|
|
11407
11635
|
label: loadingLabel.value,
|
|
11408
11636
|
"label-position": "right"
|
|
11409
11637
|
}, null, 8, ["label"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
11410
|
-
createVNode(_sfc_main$
|
|
11638
|
+
createVNode(_sfc_main$t, {
|
|
11411
11639
|
style: { "text-align": "center" },
|
|
11412
11640
|
value: inputValue.value,
|
|
11413
11641
|
type: "text",
|
|
@@ -11421,11 +11649,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
11421
11649
|
], 64))
|
|
11422
11650
|
]),
|
|
11423
11651
|
createElementVNode("div", _hoisted_5$b, [
|
|
11424
|
-
__props.loading && loadingIndicator.value === "next" ? (openBlock(), createBlock(_sfc_main$
|
|
11652
|
+
__props.loading && loadingIndicator.value === "next" ? (openBlock(), createBlock(_sfc_main$G, {
|
|
11425
11653
|
key: 0,
|
|
11426
11654
|
size: "24px",
|
|
11427
11655
|
color: "blue"
|
|
11428
|
-
})) : (openBlock(), createBlock(_sfc_main$
|
|
11656
|
+
})) : (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
11429
11657
|
key: 1,
|
|
11430
11658
|
type: "button",
|
|
11431
11659
|
"aria-label": nextPageLabel.value,
|
|
@@ -11436,11 +11664,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
11436
11664
|
class: [{ "hidden!": __props.current === __props.max }, "w-8 h-8 sm:w-12 sm:h-12"],
|
|
11437
11665
|
onClick: _cache[2] || (_cache[2] = ($event) => handlePagination("next"))
|
|
11438
11666
|
}), null, 16, ["aria-label", "disabled", "class"])),
|
|
11439
|
-
__props.loading && loadingIndicator.value === "end" ? (openBlock(), createBlock(_sfc_main$
|
|
11667
|
+
__props.loading && loadingIndicator.value === "end" ? (openBlock(), createBlock(_sfc_main$G, {
|
|
11440
11668
|
key: 2,
|
|
11441
11669
|
size: "24px",
|
|
11442
11670
|
color: "blue"
|
|
11443
|
-
})) : (openBlock(), createBlock(_sfc_main$
|
|
11671
|
+
})) : (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
11444
11672
|
key: 3,
|
|
11445
11673
|
type: "button",
|
|
11446
11674
|
"aria-label": lastPageLabel.value,
|
|
@@ -11602,13 +11830,13 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
11602
11830
|
}, { ...popoverAttrs.value, popover: "auto" }), [
|
|
11603
11831
|
__props.label ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
11604
11832
|
createElementVNode("div", _hoisted_4$a, [
|
|
11605
|
-
createVNode(_sfc_main$
|
|
11833
|
+
createVNode(_sfc_main$x, { class: "mb-0! min-w-0 grow balance-text whitespace-normal" }, {
|
|
11606
11834
|
default: withCtx(() => [
|
|
11607
11835
|
createTextVNode(toDisplayString(__props.label), 1)
|
|
11608
11836
|
]),
|
|
11609
11837
|
_: 1
|
|
11610
11838
|
}),
|
|
11611
|
-
createVNode(_sfc_main$
|
|
11839
|
+
createVNode(_sfc_main$N, {
|
|
11612
11840
|
icon: "cross",
|
|
11613
11841
|
size: 28,
|
|
11614
11842
|
"aria-label": __props.closeAriaLabel,
|
|
@@ -11626,7 +11854,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
11626
11854
|
createTextVNode(toDisplayString(__props.body), 1)
|
|
11627
11855
|
])
|
|
11628
11856
|
]),
|
|
11629
|
-
createVNode(_sfc_main$
|
|
11857
|
+
createVNode(_sfc_main$N, {
|
|
11630
11858
|
icon: "cross",
|
|
11631
11859
|
size: 28,
|
|
11632
11860
|
"aria-label": __props.closeAriaLabel,
|
|
@@ -12124,7 +12352,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
12124
12352
|
createElementVNode("div", _hoisted_1$e, [
|
|
12125
12353
|
!singleItemName.value.length ? (openBlock(), createElementBlock("div", _hoisted_2$a, [
|
|
12126
12354
|
createElementVNode("div", _hoisted_3$a, [
|
|
12127
|
-
createVNode(_sfc_main$
|
|
12355
|
+
createVNode(_sfc_main$t, mergeProps({
|
|
12128
12356
|
ref_key: "inputComponentRef",
|
|
12129
12357
|
ref: inputComponentRef,
|
|
12130
12358
|
label: __props.label,
|
|
@@ -12158,7 +12386,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
12158
12386
|
style: normalizeStyle(listWrapperStyle.value)
|
|
12159
12387
|
}, [
|
|
12160
12388
|
__props.loading ? (openBlock(), createElementBlock("div", _hoisted_6$6, [
|
|
12161
|
-
createVNode(_sfc_main$
|
|
12389
|
+
createVNode(_sfc_main$G, {
|
|
12162
12390
|
color: "blue",
|
|
12163
12391
|
size: "48px"
|
|
12164
12392
|
})
|
|
@@ -13233,7 +13461,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13233
13461
|
createElementVNode("div", _hoisted_1$d, [
|
|
13234
13462
|
createElementVNode("div", _hoisted_2$9, [
|
|
13235
13463
|
createElementVNode("div", _hoisted_3$9, [
|
|
13236
|
-
createVNode(_sfc_main$
|
|
13464
|
+
createVNode(_sfc_main$t, mergeProps({
|
|
13237
13465
|
ref_key: "inputComponentRef",
|
|
13238
13466
|
ref: inputComponentRef,
|
|
13239
13467
|
label: __props.label,
|
|
@@ -13269,19 +13497,19 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13269
13497
|
class: normalizeClass([headerClasses.value, "flex items-center justify-between gap-3 min-h-[53px]"])
|
|
13270
13498
|
}, [
|
|
13271
13499
|
createElementVNode("div", _hoisted_4$8, [
|
|
13272
|
-
createVNode(_sfc_main$
|
|
13500
|
+
createVNode(_sfc_main$u, null, {
|
|
13273
13501
|
default: withCtx(() => [
|
|
13274
13502
|
createTextVNode(toDisplayString(searchTerm.value && searchTerm.value.length ? `${totalMatchingItems.value} ${__props.searchContext.linkWord} ${totalCount.value} ${__props.searchContext.context}` : `${totalCount.value} ${__props.searchContext.context}`), 1)
|
|
13275
13503
|
]),
|
|
13276
13504
|
_: 1
|
|
13277
13505
|
}),
|
|
13278
|
-
isSearching.value ? (openBlock(), createBlock(_sfc_main$
|
|
13506
|
+
isSearching.value ? (openBlock(), createBlock(_sfc_main$G, {
|
|
13279
13507
|
key: 0,
|
|
13280
13508
|
color: "blue",
|
|
13281
13509
|
size: "20px"
|
|
13282
13510
|
})) : createCommentVNode("", true)
|
|
13283
13511
|
]),
|
|
13284
|
-
__props.multiple && __props.showSelectedToggle && selectedItems.value.length > 0 ? (openBlock(), createBlock(_sfc_main$
|
|
13512
|
+
__props.multiple && __props.showSelectedToggle && selectedItems.value.length > 0 ? (openBlock(), createBlock(_sfc_main$z, {
|
|
13285
13513
|
key: 0,
|
|
13286
13514
|
label: `${__props.selectedToggleLabel} (${selectedItems.value.length})`,
|
|
13287
13515
|
checked: showSelectedOnly.value,
|
|
@@ -13316,7 +13544,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13316
13544
|
class: normalizeClass([labelClasses.value, listItemClasses.value]),
|
|
13317
13545
|
style: normalizeStyle(unref(optionPaddingStyle)(item))
|
|
13318
13546
|
}, [
|
|
13319
|
-
__props.multiple ? (openBlock(), createBlock(_sfc_main$
|
|
13547
|
+
__props.multiple ? (openBlock(), createBlock(_sfc_main$z, {
|
|
13320
13548
|
key: 0,
|
|
13321
13549
|
id: `search-select-radio-${index}`,
|
|
13322
13550
|
name: `search-select-checkbox-group-${inputId}`,
|
|
@@ -13333,7 +13561,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13333
13561
|
}, null, 8, _hoisted_8$3)
|
|
13334
13562
|
]),
|
|
13335
13563
|
_: 2
|
|
13336
|
-
}, 1032, ["id", "name", "checked", "onChange"])) : (openBlock(), createBlock(_sfc_main$
|
|
13564
|
+
}, 1032, ["id", "name", "checked", "onChange"])) : (openBlock(), createBlock(_sfc_main$y, {
|
|
13337
13565
|
key: 1,
|
|
13338
13566
|
id: `search-select-radio-${index}`,
|
|
13339
13567
|
name: "search-select-radio-group",
|
|
@@ -13368,7 +13596,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13368
13596
|
_cache[2] || (_cache[2] = withKeys(withModifiers(($event) => !__props.loadingMore && handleLoadMore(), ["prevent"]), ["space"]))
|
|
13369
13597
|
]
|
|
13370
13598
|
}, [
|
|
13371
|
-
createVNode(_sfc_main$
|
|
13599
|
+
createVNode(_sfc_main$N, {
|
|
13372
13600
|
icon: "sync",
|
|
13373
13601
|
loading: __props.loadingMore,
|
|
13374
13602
|
"aria-label": __props.loadingMore ? resolvedLoadingMoreLabel.value : resolvedLoadMoreLabel.value,
|
|
@@ -13382,7 +13610,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
13382
13610
|
], 64)) : (openBlock(), createElementBlock("ul", _hoisted_12, [
|
|
13383
13611
|
createElementVNode("li", _hoisted_13, [
|
|
13384
13612
|
!isSearching.value ? (openBlock(), createElementBlock("span", _hoisted_14, toDisplayString(__props.noResultPrompt), 1)) : createCommentVNode("", true),
|
|
13385
|
-
isSearching.value ? (openBlock(), createBlock(_sfc_main$
|
|
13613
|
+
isSearching.value ? (openBlock(), createBlock(_sfc_main$G, {
|
|
13386
13614
|
key: 1,
|
|
13387
13615
|
color: "blue",
|
|
13388
13616
|
size: "20px"
|
|
@@ -14128,7 +14356,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
14128
14356
|
class: normalizeClass("pt-2 pb-2")
|
|
14129
14357
|
}, [
|
|
14130
14358
|
createElementVNode("div", _hoisted_1$c, [
|
|
14131
|
-
hasChildrenNodes.value ? (openBlock(), createBlock(_sfc_main$
|
|
14359
|
+
hasChildrenNodes.value ? (openBlock(), createBlock(_sfc_main$N, mergeProps({
|
|
14132
14360
|
key: 0,
|
|
14133
14361
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(treeState)?.toggleExpandNode(props.nodeId))
|
|
14134
14362
|
}, { "aria-label": props.title ? childrenToggleAriaLabel(props.title) : void 0 }, {
|
|
@@ -14141,7 +14369,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
14141
14369
|
style: normalizeStyle({ minWidth: `${__props.indentation}px` })
|
|
14142
14370
|
}, null, 4)) : createCommentVNode("", true),
|
|
14143
14371
|
createElementVNode("div", _hoisted_2$8, [
|
|
14144
|
-
createVNode(_sfc_main$
|
|
14372
|
+
createVNode(_sfc_main$z, {
|
|
14145
14373
|
id: `checkbox-${props.nodeId}`,
|
|
14146
14374
|
checked: nodeIsSelected.value,
|
|
14147
14375
|
indeterminate: nodeIsIndeterminate.value,
|
|
@@ -14160,7 +14388,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
14160
14388
|
}, 8, ["id", "checked", "indeterminate"])
|
|
14161
14389
|
]),
|
|
14162
14390
|
shouldShowPopoverActions.value ? (openBlock(), createElementBlock("div", _hoisted_6$4, [
|
|
14163
|
-
createVNode(_sfc_main$
|
|
14391
|
+
createVNode(_sfc_main$N, mergeProps({
|
|
14164
14392
|
ref_key: "triggerRef",
|
|
14165
14393
|
ref: triggerRef,
|
|
14166
14394
|
icon: "more",
|
|
@@ -14208,7 +14436,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
14208
14436
|
},
|
|
14209
14437
|
class: "cursor-pointer"
|
|
14210
14438
|
}, [
|
|
14211
|
-
createVNode(_sfc_main$
|
|
14439
|
+
createVNode(_sfc_main$y, {
|
|
14212
14440
|
modelValue: selectedOption.value,
|
|
14213
14441
|
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => selectedOption.value = $event),
|
|
14214
14442
|
id: `tree-popover-${props.nodeId}-${option.value}`,
|
|
@@ -14220,7 +14448,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
14220
14448
|
], 8, _hoisted_8$2);
|
|
14221
14449
|
}), 64))
|
|
14222
14450
|
]),
|
|
14223
|
-
createVNode(_sfc_main$
|
|
14451
|
+
createVNode(_sfc_main$N, mergeProps({
|
|
14224
14452
|
icon: "cross",
|
|
14225
14453
|
id: "tree-popover-close-button",
|
|
14226
14454
|
size: 24,
|
|
@@ -14370,7 +14598,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
14370
14598
|
ref: searchContainerRef,
|
|
14371
14599
|
class: "pb-4"
|
|
14372
14600
|
}, [
|
|
14373
|
-
createVNode(_sfc_main$
|
|
14601
|
+
createVNode(_sfc_main$t, {
|
|
14374
14602
|
value: unref(treeState)?.searchTerm?.value ?? "",
|
|
14375
14603
|
onInput: _cache[0] || (_cache[0] = ($event) => unref(treeState)?.setSearchTerm($event.target.value)),
|
|
14376
14604
|
class: "w-full",
|
|
@@ -14387,7 +14615,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
14387
14615
|
props.searchCountTemplate && unref(treeState)?.searchTerm?.value && String(unref(treeState)?.searchTerm?.value || "").trim().length >= (unref(treeState)?.triggerLength ?? 1) ? (openBlock(), createElementBlock("h2", _hoisted_2$7, toDisplayString(props.searchCountTemplate.replace("[[filteredNodes]]", unref(treeState)?.filteredMatchCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1)) : (openBlock(), createElementBlock("h2", _hoisted_3$7, toDisplayString(props.searchCountTemplateUnfiltered?.replace("[[totalNodes]]", totalNodeCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1))
|
|
14388
14616
|
])) : createCommentVNode("", true)
|
|
14389
14617
|
], 512)) : createCommentVNode("", true),
|
|
14390
|
-
unref(treeState)?.isEmptySearchResult?.value ? (openBlock(), createBlock(_sfc_main$
|
|
14618
|
+
unref(treeState)?.isEmptySearchResult?.value ? (openBlock(), createBlock(_sfc_main$L, {
|
|
14391
14619
|
key: 1,
|
|
14392
14620
|
class: "mt-4"
|
|
14393
14621
|
}, {
|
|
@@ -14395,7 +14623,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
14395
14623
|
createTextVNode(toDisplayString(props.searchResultNoMatchesTitle), 1)
|
|
14396
14624
|
]),
|
|
14397
14625
|
default: withCtx(() => [
|
|
14398
|
-
createVNode(_sfc_main$
|
|
14626
|
+
createVNode(_sfc_main$u, null, {
|
|
14399
14627
|
default: withCtx(() => [
|
|
14400
14628
|
createTextVNode(toDisplayString(props.searchResultNoMatchesBody), 1)
|
|
14401
14629
|
]),
|
|
@@ -14487,7 +14715,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
14487
14715
|
return openBlock(), createElementBlock("div", mergeProps({ class: "block mb-4" }, rootAttrs.value), [
|
|
14488
14716
|
hasContent.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
14489
14717
|
createElementVNode("span", null, toDisplayString(truncatedText.value), 1),
|
|
14490
|
-
isTruncated.value ? (openBlock(), createBlock(_sfc_main$
|
|
14718
|
+
isTruncated.value ? (openBlock(), createBlock(_sfc_main$F, {
|
|
14491
14719
|
key: 0,
|
|
14492
14720
|
icon: isOpen.value ? "arrowUp" : "arrowDown",
|
|
14493
14721
|
iconPos: "right",
|
|
@@ -16142,12 +16370,12 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
16142
16370
|
createElementVNode("span", {
|
|
16143
16371
|
class: normalizeClass(weekdayLabelClasses.value)
|
|
16144
16372
|
}, [
|
|
16145
|
-
__props.isToday ? (openBlock(), createBlock(_sfc_main$
|
|
16373
|
+
__props.isToday ? (openBlock(), createBlock(_sfc_main$u, { key: 0 }, {
|
|
16146
16374
|
default: withCtx(() => [
|
|
16147
16375
|
createTextVNode(toDisplayString(unref(t)("FdsWeekCalendar.today")), 1)
|
|
16148
16376
|
]),
|
|
16149
16377
|
_: 1
|
|
16150
|
-
})) : (openBlock(), createBlock(_sfc_main$
|
|
16378
|
+
})) : (openBlock(), createBlock(_sfc_main$u, { key: 1 }, {
|
|
16151
16379
|
default: withCtx(() => [
|
|
16152
16380
|
createTextVNode(toDisplayString(weekdayLabel.value), 1)
|
|
16153
16381
|
]),
|
|
@@ -16307,13 +16535,13 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
16307
16535
|
createElementVNode("div", _hoisted_3$6, [
|
|
16308
16536
|
createElementVNode("p", _hoisted_4$6, toDisplayString(weekText.value), 1),
|
|
16309
16537
|
createElementVNode("div", _hoisted_5$6, [
|
|
16310
|
-
createVNode(_sfc_main$
|
|
16538
|
+
createVNode(_sfc_main$N, {
|
|
16311
16539
|
icon: "arrowLeft",
|
|
16312
16540
|
disabled: disableLastWeekInteraction.value,
|
|
16313
16541
|
"aria-label": unref(t)("FdsWeekCalendar.previousWeek"),
|
|
16314
16542
|
onClick: decrementWeek
|
|
16315
16543
|
}, null, 8, ["disabled", "aria-label"]),
|
|
16316
|
-
createVNode(_sfc_main$
|
|
16544
|
+
createVNode(_sfc_main$N, {
|
|
16317
16545
|
icon: "arrowRight",
|
|
16318
16546
|
disabled: disableNextWeekInteraction.value,
|
|
16319
16547
|
"aria-label": unref(t)("FdsWeekCalendar.nextWeek"),
|
|
@@ -16349,7 +16577,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
16349
16577
|
}, 8, ["enter-active-class", "leave-active-class", "enter-from-class", "leave-to-class"])
|
|
16350
16578
|
]),
|
|
16351
16579
|
__props.loading?.loading ? (openBlock(), createElementBlock("div", _hoisted_7$3, [
|
|
16352
|
-
createVNode(_sfc_main$
|
|
16580
|
+
createVNode(_sfc_main$G),
|
|
16353
16581
|
createElementVNode("p", _hoisted_8$1, toDisplayString(__props.loading.label), 1)
|
|
16354
16582
|
])) : createCommentVNode("", true)
|
|
16355
16583
|
])
|
|
@@ -16830,7 +17058,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
16830
17058
|
createElementVNode("span", {
|
|
16831
17059
|
class: normalizeClass(["relative mb-6 flex flex-col items-center text-blue-600 font-bold justify-center transition-all duration-200 ease-in-out rounded-full w-[44px] h-[44px] bg-white-solid", setStepClasses(entry.index)])
|
|
16832
17060
|
}, [
|
|
16833
|
-
entry.index >= internalCompletedTo.value + 1 ? (openBlock(), createElementBlock("span", _hoisted_7$2, toDisplayString(entry.index + 1), 1)) : (openBlock(), createBlock(_sfc_main$
|
|
17061
|
+
entry.index >= internalCompletedTo.value + 1 ? (openBlock(), createElementBlock("span", _hoisted_7$2, toDisplayString(entry.index + 1), 1)) : (openBlock(), createBlock(_sfc_main$O, {
|
|
16834
17062
|
key: 1,
|
|
16835
17063
|
name: "checkmark",
|
|
16836
17064
|
size: 24
|
|
@@ -19018,7 +19246,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
19018
19246
|
"aria-hidden": "true",
|
|
19019
19247
|
onMousedown: withModifiers(onArrowPointerDown, ["prevent"])
|
|
19020
19248
|
}, [
|
|
19021
|
-
createVNode(_sfc_main$
|
|
19249
|
+
createVNode(_sfc_main$O, {
|
|
19022
19250
|
name: "arrowDown",
|
|
19023
19251
|
size: 24,
|
|
19024
19252
|
class: normalizeClass(arrowClasses.value)
|
|
@@ -19060,7 +19288,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
19060
19288
|
createElementVNode("span", _hoisted_10, "(" + toDisplayString(unref(t)("common.plus")) + toDisplayString(option.countryCode) + ")", 1)
|
|
19061
19289
|
]),
|
|
19062
19290
|
createElementVNode("span", _hoisted_11, [
|
|
19063
|
-
option.value === country.value ? (openBlock(), createBlock(_sfc_main$
|
|
19291
|
+
option.value === country.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
19064
19292
|
key: 0,
|
|
19065
19293
|
name: "check",
|
|
19066
19294
|
size: 24,
|
|
@@ -19297,7 +19525,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
19297
19525
|
class: normalizeClass(["mb-0! shrink-0", __props.selectClass ?? ""]),
|
|
19298
19526
|
onNoCountryResults
|
|
19299
19527
|
}, null, 8, ["modelValue", "items", "valid", "disabled", "ariaLabel", "data-testid", "class"]),
|
|
19300
|
-
createVNode(_sfc_main$
|
|
19528
|
+
createVNode(_sfc_main$t, mergeProps({
|
|
19301
19529
|
"model-value": unref(nationalNumber),
|
|
19302
19530
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => nationalNumber.value = $event ?? ""),
|
|
19303
19531
|
mask: phoneMask.value,
|
|
@@ -19765,7 +19993,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
19765
19993
|
}
|
|
19766
19994
|
return (_ctx, _cache) => {
|
|
19767
19995
|
return openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
19768
|
-
createVNode(_sfc_main$
|
|
19996
|
+
createVNode(_sfc_main$t, mergeProps({
|
|
19769
19997
|
"model-value": modelValue.value,
|
|
19770
19998
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event ?? ""),
|
|
19771
19999
|
mask: ssnMask.value,
|
|
@@ -19912,7 +20140,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
19912
20140
|
[vModelSelect, internalValue.value]
|
|
19913
20141
|
]),
|
|
19914
20142
|
createElementVNode("div", _hoisted_6, [
|
|
19915
|
-
createVNode(_sfc_main$
|
|
20143
|
+
createVNode(_sfc_main$O, {
|
|
19916
20144
|
name: "arrowDown",
|
|
19917
20145
|
size: 24,
|
|
19918
20146
|
class: normalizeClass({
|
|
@@ -20079,12 +20307,12 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
20079
20307
|
createElementVNode("div", {
|
|
20080
20308
|
class: normalizeClass(validationIconClasses.value)
|
|
20081
20309
|
}, [
|
|
20082
|
-
isInvalid.value ? (openBlock(), createBlock(_sfc_main$
|
|
20310
|
+
isInvalid.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
20083
20311
|
key: 0,
|
|
20084
20312
|
name: "alert",
|
|
20085
20313
|
class: "fill-red-600"
|
|
20086
20314
|
})) : createCommentVNode("", true),
|
|
20087
|
-
isValid2.value ? (openBlock(), createBlock(_sfc_main$
|
|
20315
|
+
isValid2.value ? (openBlock(), createBlock(_sfc_main$O, {
|
|
20088
20316
|
key: 1,
|
|
20089
20317
|
name: "bigSuccess"
|
|
20090
20318
|
})) : createCommentVNode("", true)
|
|
@@ -20175,7 +20403,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
20175
20403
|
unref(hasSlot) ? (openBlock(), createElementBlock("span", _hoisted_2, [
|
|
20176
20404
|
renderSlot(_ctx.$slots, "default")
|
|
20177
20405
|
])) : (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.heading), 1)),
|
|
20178
|
-
createVNode(_sfc_main$
|
|
20406
|
+
createVNode(_sfc_main$O, {
|
|
20179
20407
|
name: iconName.value,
|
|
20180
20408
|
size: "24px",
|
|
20181
20409
|
class: "fill-blue-500 ml-1"
|
|
@@ -20407,7 +20635,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
20407
20635
|
});
|
|
20408
20636
|
return (_ctx, _cache) => {
|
|
20409
20637
|
return openBlock(), createElementBlock("div", mergeProps({ class: wrapperClasses.value }, rootAttrs.value), [
|
|
20410
|
-
__props.loading ? (openBlock(), createBlock(_sfc_main$
|
|
20638
|
+
__props.loading ? (openBlock(), createBlock(_sfc_main$G, {
|
|
20411
20639
|
key: 0,
|
|
20412
20640
|
size: "24px",
|
|
20413
20641
|
color: "blue",
|
|
@@ -20616,6 +20844,302 @@ const teardownRouterLinkInterceptor = () => {
|
|
|
20616
20844
|
}
|
|
20617
20845
|
globalRouter = null;
|
|
20618
20846
|
};
|
|
20847
|
+
const isArr = (v) => Array.isArray(v);
|
|
20848
|
+
const clone = (v) => isArr(v) ? [...v] : v;
|
|
20849
|
+
const cloneRecord = (defaults2) => {
|
|
20850
|
+
const out = {};
|
|
20851
|
+
for (const k in defaults2) {
|
|
20852
|
+
out[k] = clone(defaults2[k]);
|
|
20853
|
+
}
|
|
20854
|
+
return out;
|
|
20855
|
+
};
|
|
20856
|
+
const isDefault = (v, def) => {
|
|
20857
|
+
if (isArr(def)) return isArr(v) && v.length === 0;
|
|
20858
|
+
return v === def;
|
|
20859
|
+
};
|
|
20860
|
+
const parseValue = (key, query, def) => {
|
|
20861
|
+
const raw = query[key];
|
|
20862
|
+
if (isArr(def)) {
|
|
20863
|
+
if (raw === void 0 || raw === null) return [];
|
|
20864
|
+
if (Array.isArray(raw)) return raw.filter((x) => x != null).map(String);
|
|
20865
|
+
return [String(raw)];
|
|
20866
|
+
}
|
|
20867
|
+
if (typeof def === "boolean") return raw === "true";
|
|
20868
|
+
if (typeof def === "number") {
|
|
20869
|
+
if (raw === void 0 || raw === null || raw === "") return def;
|
|
20870
|
+
const n = Number(Array.isArray(raw) ? raw[0] : raw);
|
|
20871
|
+
return Number.isFinite(n) ? n : def;
|
|
20872
|
+
}
|
|
20873
|
+
if (raw === void 0 || raw === null) return def;
|
|
20874
|
+
return String(Array.isArray(raw) ? raw[0] : raw);
|
|
20875
|
+
};
|
|
20876
|
+
const serializeValue = (v, def) => {
|
|
20877
|
+
if (isDefault(v, def)) return void 0;
|
|
20878
|
+
if (isArr(def)) return isArr(v) && v.length > 0 ? v : void 0;
|
|
20879
|
+
if (typeof def === "boolean") return v === true ? "true" : void 0;
|
|
20880
|
+
if (typeof def === "number") return String(v);
|
|
20881
|
+
if (typeof v === "string" && v !== "") return v;
|
|
20882
|
+
return void 0;
|
|
20883
|
+
};
|
|
20884
|
+
const normalizeQuery = (q) => {
|
|
20885
|
+
const out = {};
|
|
20886
|
+
for (const k of Object.keys(q).sort()) {
|
|
20887
|
+
const v = q[k];
|
|
20888
|
+
if (v === void 0 || v === null) continue;
|
|
20889
|
+
if (Array.isArray(v)) {
|
|
20890
|
+
const items = v.filter((x) => x != null).map(String);
|
|
20891
|
+
if (items.length) out[k] = items;
|
|
20892
|
+
} else {
|
|
20893
|
+
out[k] = String(v);
|
|
20894
|
+
}
|
|
20895
|
+
}
|
|
20896
|
+
return out;
|
|
20897
|
+
};
|
|
20898
|
+
const queriesEqual = (a, b) => JSON.stringify(normalizeQuery(a)) === JSON.stringify(normalizeQuery(b));
|
|
20899
|
+
const statesEqual = (a, b) => {
|
|
20900
|
+
for (const k in a) {
|
|
20901
|
+
const av = a[k];
|
|
20902
|
+
const bv = b[k];
|
|
20903
|
+
if (isArr(av)) {
|
|
20904
|
+
if (!isArr(bv) || av.length !== bv.length || av.some((x, i) => x !== bv[i])) return false;
|
|
20905
|
+
} else if (av !== bv) {
|
|
20906
|
+
return false;
|
|
20907
|
+
}
|
|
20908
|
+
}
|
|
20909
|
+
return true;
|
|
20910
|
+
};
|
|
20911
|
+
const applyInPlace = (target, source, defaults2) => {
|
|
20912
|
+
for (const k in defaults2) {
|
|
20913
|
+
const next = source[k];
|
|
20914
|
+
const current = target[k];
|
|
20915
|
+
if (isArr(defaults2[k])) {
|
|
20916
|
+
const na = next;
|
|
20917
|
+
const ca = current;
|
|
20918
|
+
if (na.length !== ca.length || na.some((x, i) => x !== ca[i])) {
|
|
20919
|
+
ca.splice(0, ca.length, ...na);
|
|
20920
|
+
}
|
|
20921
|
+
} else if (current !== next) {
|
|
20922
|
+
target[k] = next;
|
|
20923
|
+
}
|
|
20924
|
+
}
|
|
20925
|
+
};
|
|
20926
|
+
const copyPlain = (source, target, keys) => {
|
|
20927
|
+
for (const k of keys) {
|
|
20928
|
+
const v = source[k];
|
|
20929
|
+
if (isArr(v)) {
|
|
20930
|
+
const ca = target[k];
|
|
20931
|
+
if (Array.isArray(ca)) {
|
|
20932
|
+
ca.splice(0, ca.length, ...v);
|
|
20933
|
+
} else {
|
|
20934
|
+
target[k] = [...v];
|
|
20935
|
+
}
|
|
20936
|
+
} else {
|
|
20937
|
+
target[k] = clone(v);
|
|
20938
|
+
}
|
|
20939
|
+
}
|
|
20940
|
+
};
|
|
20941
|
+
const SEARCH_KEY = "_search";
|
|
20942
|
+
const PAGE_KEY = "_page";
|
|
20943
|
+
const SORT_KEY = "_sort";
|
|
20944
|
+
function useRouteFilters(schema) {
|
|
20945
|
+
const route = useRoute();
|
|
20946
|
+
const router = useRouter();
|
|
20947
|
+
const filterDefaults = schema.filter;
|
|
20948
|
+
const draftDefaults = schema.draft ?? {};
|
|
20949
|
+
const sortDefault = schema.sort ?? {};
|
|
20950
|
+
const searchDefault = schema.search ?? "";
|
|
20951
|
+
const pageDefault = schema.page ?? 0;
|
|
20952
|
+
const draftKeys = Object.keys(draftDefaults);
|
|
20953
|
+
const schemaQueryKeys = /* @__PURE__ */ new Set([...Object.keys(filterDefaults), ...draftKeys, SEARCH_KEY, PAGE_KEY, SORT_KEY]);
|
|
20954
|
+
const filterState = reactive(cloneRecord(filterDefaults));
|
|
20955
|
+
const draftState = reactive(cloneRecord(draftDefaults));
|
|
20956
|
+
const searchRef = ref(searchDefault);
|
|
20957
|
+
const pageRef = ref(pageDefault);
|
|
20958
|
+
const defaultSortValue = sortDefault.field && sortDefault.dir ? `${sortDefault.dir === "desc" ? "-" : "+"}${sortDefault.field}` : "";
|
|
20959
|
+
const sortValueRef = ref(defaultSortValue);
|
|
20960
|
+
const filterRaw = filterState;
|
|
20961
|
+
const draftRaw = draftState;
|
|
20962
|
+
const draftKeyStrings = draftKeys;
|
|
20963
|
+
let syncingFromRoute = false;
|
|
20964
|
+
let syncingToRoute = false;
|
|
20965
|
+
const readFromRoute = () => {
|
|
20966
|
+
const q = route.query;
|
|
20967
|
+
const parsed = cloneRecord(filterDefaults);
|
|
20968
|
+
for (const k in filterDefaults) {
|
|
20969
|
+
parsed[k] = parseValue(k, q, filterDefaults[k]);
|
|
20970
|
+
}
|
|
20971
|
+
if (!statesEqual(filterState, parsed)) {
|
|
20972
|
+
applyInPlace(filterState, parsed, filterDefaults);
|
|
20973
|
+
}
|
|
20974
|
+
const rawSearch = q[SEARCH_KEY];
|
|
20975
|
+
const nextSearch = rawSearch !== void 0 && rawSearch !== null ? String(Array.isArray(rawSearch) ? rawSearch[0] : rawSearch) : searchDefault;
|
|
20976
|
+
if (searchRef.value !== nextSearch) searchRef.value = nextSearch;
|
|
20977
|
+
const rawPage = q[PAGE_KEY];
|
|
20978
|
+
const nextPage = rawPage !== void 0 && rawPage !== null ? Number(Array.isArray(rawPage) ? rawPage[0] : rawPage) || pageDefault : pageDefault;
|
|
20979
|
+
if (pageRef.value !== nextPage) pageRef.value = nextPage;
|
|
20980
|
+
const rawSort = q[SORT_KEY];
|
|
20981
|
+
const nextSort = typeof rawSort === "string" && rawSort !== "" ? rawSort : defaultSortValue;
|
|
20982
|
+
if (sortValueRef.value !== nextSort) sortValueRef.value = nextSort;
|
|
20983
|
+
if (draftKeys.length > 0) {
|
|
20984
|
+
copyPlain(
|
|
20985
|
+
filterState,
|
|
20986
|
+
draftState,
|
|
20987
|
+
draftKeys
|
|
20988
|
+
);
|
|
20989
|
+
}
|
|
20990
|
+
};
|
|
20991
|
+
readFromRoute();
|
|
20992
|
+
const buildQuery = () => {
|
|
20993
|
+
const q = {};
|
|
20994
|
+
for (const k in route.query) {
|
|
20995
|
+
if (!schemaQueryKeys.has(k)) q[k] = route.query[k];
|
|
20996
|
+
}
|
|
20997
|
+
for (const k in filterDefaults) {
|
|
20998
|
+
const s = serializeValue(filterState[k], filterDefaults[k]);
|
|
20999
|
+
if (s !== void 0) q[k] = s;
|
|
21000
|
+
}
|
|
21001
|
+
if (searchRef.value !== searchDefault && searchRef.value !== "") {
|
|
21002
|
+
q[SEARCH_KEY] = searchRef.value;
|
|
21003
|
+
}
|
|
21004
|
+
if (pageRef.value !== pageDefault) {
|
|
21005
|
+
q[PAGE_KEY] = String(pageRef.value);
|
|
21006
|
+
}
|
|
21007
|
+
if (sortValueRef.value !== "" && sortValueRef.value !== defaultSortValue) {
|
|
21008
|
+
q[SORT_KEY] = sortValueRef.value;
|
|
21009
|
+
} else if (defaultSortValue !== "" && sortValueRef.value === defaultSortValue) ;
|
|
21010
|
+
return q;
|
|
21011
|
+
};
|
|
21012
|
+
const pushRoute = () => {
|
|
21013
|
+
if (syncingFromRoute || syncingToRoute) return;
|
|
21014
|
+
const next = buildQuery();
|
|
21015
|
+
if (queriesEqual(route.query, next)) return;
|
|
21016
|
+
syncingToRoute = true;
|
|
21017
|
+
return router.replace({ query: next }).then(() => void 0).finally(() => {
|
|
21018
|
+
syncingToRoute = false;
|
|
21019
|
+
});
|
|
21020
|
+
};
|
|
21021
|
+
watch(
|
|
21022
|
+
() => route.query,
|
|
21023
|
+
() => {
|
|
21024
|
+
if (syncingToRoute) return;
|
|
21025
|
+
syncingFromRoute = true;
|
|
21026
|
+
readFromRoute();
|
|
21027
|
+
syncingFromRoute = false;
|
|
21028
|
+
}
|
|
21029
|
+
);
|
|
21030
|
+
watch(
|
|
21031
|
+
filterState,
|
|
21032
|
+
() => {
|
|
21033
|
+
pushRoute();
|
|
21034
|
+
},
|
|
21035
|
+
{ deep: true }
|
|
21036
|
+
);
|
|
21037
|
+
watch(searchRef, () => {
|
|
21038
|
+
pushRoute();
|
|
21039
|
+
});
|
|
21040
|
+
watch(pageRef, () => {
|
|
21041
|
+
pushRoute();
|
|
21042
|
+
});
|
|
21043
|
+
watch(sortValueRef, () => {
|
|
21044
|
+
pushRoute();
|
|
21045
|
+
});
|
|
21046
|
+
const sort = {
|
|
21047
|
+
get value() {
|
|
21048
|
+
return sortValueRef.value;
|
|
21049
|
+
},
|
|
21050
|
+
get field() {
|
|
21051
|
+
return sortValueRef.value.length > 1 ? sortValueRef.value.slice(1) : "";
|
|
21052
|
+
},
|
|
21053
|
+
get dir() {
|
|
21054
|
+
if (!sortValueRef.value) return "";
|
|
21055
|
+
return sortValueRef.value[0] === "-" ? "desc" : "asc";
|
|
21056
|
+
},
|
|
21057
|
+
toggle(field) {
|
|
21058
|
+
if (sortValueRef.value === `-${field}`) {
|
|
21059
|
+
sortValueRef.value = `+${field}`;
|
|
21060
|
+
} else if (sortValueRef.value === `+${field}`) {
|
|
21061
|
+
sortValueRef.value = "";
|
|
21062
|
+
} else {
|
|
21063
|
+
sortValueRef.value = `-${field}`;
|
|
21064
|
+
}
|
|
21065
|
+
},
|
|
21066
|
+
set(field, dir) {
|
|
21067
|
+
sortValueRef.value = `${dir === "desc" ? "-" : "+"}${field}`;
|
|
21068
|
+
},
|
|
21069
|
+
clear() {
|
|
21070
|
+
sortValueRef.value = "";
|
|
21071
|
+
},
|
|
21072
|
+
iconFor(field) {
|
|
21073
|
+
if (sortValueRef.value.slice(1) !== field) return "sort";
|
|
21074
|
+
return sortValueRef.value[0] === "-" ? "descending" : "ascending";
|
|
21075
|
+
}
|
|
21076
|
+
};
|
|
21077
|
+
const draft = {
|
|
21078
|
+
state: draftState,
|
|
21079
|
+
open() {
|
|
21080
|
+
copyPlain(filterRaw, draftRaw, draftKeyStrings);
|
|
21081
|
+
},
|
|
21082
|
+
apply() {
|
|
21083
|
+
copyPlain(draftRaw, filterRaw, draftKeyStrings);
|
|
21084
|
+
},
|
|
21085
|
+
cancel() {
|
|
21086
|
+
copyPlain(filterRaw, draftRaw, draftKeyStrings);
|
|
21087
|
+
},
|
|
21088
|
+
reset() {
|
|
21089
|
+
const defClone = cloneRecord(draftDefaults);
|
|
21090
|
+
copyPlain(defClone, draftRaw, draftKeyStrings);
|
|
21091
|
+
}
|
|
21092
|
+
};
|
|
21093
|
+
const reset = async () => {
|
|
21094
|
+
syncingFromRoute = true;
|
|
21095
|
+
applyInPlace(filterState, cloneRecord(filterDefaults), filterDefaults);
|
|
21096
|
+
searchRef.value = searchDefault;
|
|
21097
|
+
pageRef.value = pageDefault;
|
|
21098
|
+
sortValueRef.value = defaultSortValue;
|
|
21099
|
+
if (draftKeys.length > 0) {
|
|
21100
|
+
copyPlain(filterRaw, draftRaw, draftKeyStrings);
|
|
21101
|
+
}
|
|
21102
|
+
syncingFromRoute = false;
|
|
21103
|
+
await pushRoute();
|
|
21104
|
+
};
|
|
21105
|
+
const clear = async () => {
|
|
21106
|
+
syncingToRoute = true;
|
|
21107
|
+
applyInPlace(filterState, cloneRecord(filterDefaults), filterDefaults);
|
|
21108
|
+
searchRef.value = searchDefault;
|
|
21109
|
+
pageRef.value = pageDefault;
|
|
21110
|
+
sortValueRef.value = defaultSortValue;
|
|
21111
|
+
if (draftKeys.length > 0) {
|
|
21112
|
+
copyPlain(filterRaw, draftRaw, draftKeyStrings);
|
|
21113
|
+
}
|
|
21114
|
+
await router.replace({ query: {} }).finally(() => {
|
|
21115
|
+
syncingToRoute = false;
|
|
21116
|
+
});
|
|
21117
|
+
};
|
|
21118
|
+
return {
|
|
21119
|
+
filter: filterState,
|
|
21120
|
+
draft,
|
|
21121
|
+
sort,
|
|
21122
|
+
search: searchRef,
|
|
21123
|
+
page: pageRef,
|
|
21124
|
+
reset,
|
|
21125
|
+
clear
|
|
21126
|
+
};
|
|
21127
|
+
}
|
|
21128
|
+
const parseRouteFiltersFromQuery = (query, defaults2) => {
|
|
21129
|
+
const out = cloneRecord(defaults2);
|
|
21130
|
+
for (const k in defaults2) {
|
|
21131
|
+
out[k] = parseValue(k, query, defaults2[k]);
|
|
21132
|
+
}
|
|
21133
|
+
return out;
|
|
21134
|
+
};
|
|
21135
|
+
const serializeRouteFiltersToQuery = (state, defaults2) => {
|
|
21136
|
+
const q = {};
|
|
21137
|
+
for (const k in defaults2) {
|
|
21138
|
+
const s = serializeValue(state[k], defaults2[k]);
|
|
21139
|
+
if (s !== void 0) q[k] = s;
|
|
21140
|
+
}
|
|
21141
|
+
return q;
|
|
21142
|
+
};
|
|
20619
21143
|
function useRouteScrollPositions(currentRoute) {
|
|
20620
21144
|
const scrollPositions = ref({});
|
|
20621
21145
|
watch(
|
|
@@ -20697,33 +21221,34 @@ const FdsVueCorePlugin = {
|
|
|
20697
21221
|
app.provide(FDS_VUE_CORE_I18N_KEY, options.i18n);
|
|
20698
21222
|
}
|
|
20699
21223
|
app.component("FdsTreeView", _sfc_main$h);
|
|
20700
|
-
app.component("FdsButtonPrimary", _sfc_main$
|
|
20701
|
-
app.component("FdsButtonSecondary", _sfc_main$
|
|
20702
|
-
app.component("FdsButtonMinor", _sfc_main$
|
|
20703
|
-
app.component("FdsButtonIcon", _sfc_main$
|
|
20704
|
-
app.component("FdsButtonCopy", _sfc_main$
|
|
20705
|
-
app.component("FdsButtonDownload", _sfc_main$
|
|
20706
|
-
app.component("FdsDevMode", _sfc_main$
|
|
20707
|
-
app.component("FdsIcon", _sfc_main$
|
|
20708
|
-
app.component("FdsSpinner", _sfc_main$
|
|
20709
|
-
app.component("FdsRadio", _sfc_main$
|
|
20710
|
-
app.component("FdsCheckbox", _sfc_main$
|
|
21224
|
+
app.component("FdsButtonPrimary", _sfc_main$C);
|
|
21225
|
+
app.component("FdsButtonSecondary", _sfc_main$B);
|
|
21226
|
+
app.component("FdsButtonMinor", _sfc_main$F);
|
|
21227
|
+
app.component("FdsButtonIcon", _sfc_main$N);
|
|
21228
|
+
app.component("FdsButtonCopy", _sfc_main$E);
|
|
21229
|
+
app.component("FdsButtonDownload", _sfc_main$D);
|
|
21230
|
+
app.component("FdsDevMode", _sfc_main$p);
|
|
21231
|
+
app.component("FdsIcon", _sfc_main$O);
|
|
21232
|
+
app.component("FdsSpinner", _sfc_main$G);
|
|
21233
|
+
app.component("FdsRadio", _sfc_main$y);
|
|
21234
|
+
app.component("FdsCheckbox", _sfc_main$z);
|
|
20711
21235
|
app.component("FdsTextarea", _sfc_main$7);
|
|
20712
21236
|
app.component("FdsPhonenumber", _sfc_main$a);
|
|
20713
21237
|
app.component("FdsSsn", _sfc_main$9);
|
|
20714
21238
|
app.component("FdsSelect", _sfc_main$8);
|
|
20715
21239
|
app.component("FdsTable", _sfc_main$6);
|
|
20716
21240
|
app.component("FdsTableHead", _sfc_main$5);
|
|
20717
|
-
app.component("FdsInput", _sfc_main$
|
|
20718
|
-
app.component("FdsBlockContent", _sfc_main$
|
|
20719
|
-
app.component("FdsBlockInfo", _sfc_main$
|
|
20720
|
-
app.component("FdsBlockAlert", _sfc_main$
|
|
20721
|
-
app.component("FdsBlockExpander", _sfc_main$
|
|
20722
|
-
app.component("FdsBlockLink", _sfc_main$
|
|
20723
|
-
app.component("FdsSticker", _sfc_main$
|
|
20724
|
-
app.component("FdsTabs", _sfc_main$
|
|
20725
|
-
app.component("FdsTabsItem", _sfc_main$
|
|
20726
|
-
app.component("
|
|
21241
|
+
app.component("FdsInput", _sfc_main$t);
|
|
21242
|
+
app.component("FdsBlockContent", _sfc_main$L);
|
|
21243
|
+
app.component("FdsBlockInfo", _sfc_main$I);
|
|
21244
|
+
app.component("FdsBlockAlert", _sfc_main$M);
|
|
21245
|
+
app.component("FdsBlockExpander", _sfc_main$J);
|
|
21246
|
+
app.component("FdsBlockLink", _sfc_main$H);
|
|
21247
|
+
app.component("FdsSticker", _sfc_main$K);
|
|
21248
|
+
app.component("FdsTabs", _sfc_main$s);
|
|
21249
|
+
app.component("FdsTabsItem", _sfc_main$r);
|
|
21250
|
+
app.component("FdsDrawer", FdsDrawer);
|
|
21251
|
+
app.component("FdsModal", _sfc_main$v);
|
|
20727
21252
|
app.component("FdsPagination", _sfc_main$m);
|
|
20728
21253
|
app.component("FdsPopover", _sfc_main$l);
|
|
20729
21254
|
app.component("FdsSearchSelect", _sfc_main$k);
|
|
@@ -20735,53 +21260,54 @@ const FdsVueCorePlugin = {
|
|
|
20735
21260
|
app.component("FdsH2", _sfc_main$3);
|
|
20736
21261
|
app.component("FdsH3", _sfc_main$2);
|
|
20737
21262
|
app.component("FdsHr", _sfc_main$1);
|
|
20738
|
-
app.component("FdsLabel", _sfc_main$
|
|
21263
|
+
app.component("FdsLabel", _sfc_main$x);
|
|
20739
21264
|
app.component("FdsLead", _sfc_main$d);
|
|
20740
|
-
app.component("FdsMeta", _sfc_main$
|
|
21265
|
+
app.component("FdsMeta", _sfc_main$u);
|
|
20741
21266
|
app.component("FdsListHeading", _sfc_main);
|
|
20742
21267
|
}
|
|
20743
21268
|
};
|
|
20744
21269
|
export {
|
|
20745
21270
|
FDS_VUE_CORE_I18N_KEY,
|
|
20746
|
-
_sfc_main$
|
|
20747
|
-
_sfc_main$
|
|
20748
|
-
_sfc_main$
|
|
20749
|
-
_sfc_main$
|
|
20750
|
-
_sfc_main$
|
|
20751
|
-
_sfc_main$
|
|
20752
|
-
_sfc_main$
|
|
20753
|
-
_sfc_main$
|
|
20754
|
-
_sfc_main$
|
|
20755
|
-
_sfc_main$
|
|
20756
|
-
_sfc_main$
|
|
20757
|
-
_sfc_main$
|
|
20758
|
-
_sfc_main$
|
|
20759
|
-
|
|
21271
|
+
_sfc_main$M as FdsBlockAlert,
|
|
21272
|
+
_sfc_main$L as FdsBlockContent,
|
|
21273
|
+
_sfc_main$J as FdsBlockExpander,
|
|
21274
|
+
_sfc_main$I as FdsBlockInfo,
|
|
21275
|
+
_sfc_main$H as FdsBlockLink,
|
|
21276
|
+
_sfc_main$E as FdsButtonCopy,
|
|
21277
|
+
_sfc_main$D as FdsButtonDownload,
|
|
21278
|
+
_sfc_main$N as FdsButtonIcon,
|
|
21279
|
+
_sfc_main$F as FdsButtonMinor,
|
|
21280
|
+
_sfc_main$C as FdsButtonPrimary,
|
|
21281
|
+
_sfc_main$B as FdsButtonSecondary,
|
|
21282
|
+
_sfc_main$z as FdsCheckbox,
|
|
21283
|
+
_sfc_main$p as FdsDevMode,
|
|
21284
|
+
FdsDrawer,
|
|
21285
|
+
_sfc_main$o as FdsExitModal,
|
|
20760
21286
|
_sfc_main$4 as FdsH1,
|
|
20761
21287
|
_sfc_main$3 as FdsH2,
|
|
20762
21288
|
_sfc_main$2 as FdsH3,
|
|
20763
21289
|
_sfc_main$1 as FdsHr,
|
|
20764
|
-
_sfc_main$
|
|
20765
|
-
_sfc_main$
|
|
20766
|
-
_sfc_main$
|
|
21290
|
+
_sfc_main$O as FdsIcon,
|
|
21291
|
+
_sfc_main$t as FdsInput,
|
|
21292
|
+
_sfc_main$x as FdsLabel,
|
|
20767
21293
|
_sfc_main$d as FdsLead,
|
|
20768
21294
|
_sfc_main as FdsListHeading,
|
|
20769
|
-
_sfc_main$
|
|
20770
|
-
_sfc_main$
|
|
21295
|
+
_sfc_main$u as FdsMeta,
|
|
21296
|
+
_sfc_main$v as FdsModal,
|
|
20771
21297
|
_sfc_main$m as FdsPagination,
|
|
20772
21298
|
_sfc_main$a as FdsPhonenumber,
|
|
20773
21299
|
_sfc_main$l as FdsPopover,
|
|
20774
|
-
_sfc_main$
|
|
21300
|
+
_sfc_main$y as FdsRadio,
|
|
20775
21301
|
_sfc_main$k as FdsSearchSelect,
|
|
20776
21302
|
_sfc_main$j as FdsSearchSelectPro,
|
|
20777
21303
|
_sfc_main$8 as FdsSelect,
|
|
20778
|
-
_sfc_main$
|
|
21304
|
+
_sfc_main$G as FdsSpinner,
|
|
20779
21305
|
_sfc_main$9 as FdsSsn,
|
|
20780
|
-
_sfc_main$
|
|
21306
|
+
_sfc_main$K as FdsSticker,
|
|
20781
21307
|
_sfc_main$6 as FdsTable,
|
|
20782
21308
|
_sfc_main$5 as FdsTableHead,
|
|
20783
|
-
_sfc_main$
|
|
20784
|
-
_sfc_main$
|
|
21309
|
+
_sfc_main$s as FdsTabs,
|
|
21310
|
+
_sfc_main$r as FdsTabsItem,
|
|
20785
21311
|
_sfc_main$7 as FdsTextarea,
|
|
20786
21312
|
_sfc_main$h as FdsTreeView,
|
|
20787
21313
|
_sfc_main$g as FdsTruncatedText,
|
|
@@ -20810,7 +21336,9 @@ export {
|
|
|
20810
21336
|
logoFeelgoodColored,
|
|
20811
21337
|
logoFeelgoodLight,
|
|
20812
21338
|
normalizePidSearchValue,
|
|
21339
|
+
parseRouteFiltersFromQuery,
|
|
20813
21340
|
resolveRouterLinkTarget,
|
|
21341
|
+
serializeRouteFiltersToQuery,
|
|
20814
21342
|
setupExitConfirmationGuard,
|
|
20815
21343
|
setupRouterLinkInterceptor,
|
|
20816
21344
|
shouldBlockNavigation,
|
|
@@ -20828,6 +21356,7 @@ export {
|
|
|
20828
21356
|
useFileSizeValidation,
|
|
20829
21357
|
useFileValidation,
|
|
20830
21358
|
useIsPid,
|
|
21359
|
+
useRouteFilters,
|
|
20831
21360
|
useRouteScrollPositions,
|
|
20832
21361
|
useTreeState,
|
|
20833
21362
|
useViewportBreakpoint,
|