@fkui/vue 6.3.1 → 6.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cypress.cjs.js +40 -8
- package/dist/cjs/cypress.cjs.js.map +2 -2
- package/dist/cjs/index.cjs.js +439 -269
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/esm/cypress.esm.js +40 -8
- package/dist/esm/cypress.esm.js.map +2 -2
- package/dist/esm/index.esm.js +441 -271
- package/dist/esm/index.esm.js.map +1 -1
- package/dist/types/cypress.d.ts +16 -6
- package/dist/types/index.d.ts +328 -188
- package/dist/types/tsdoc-metadata.json +1 -1
- package/htmlvalidate/configs/recommended.js +1 -0
- package/htmlvalidate/elements/components.js +2 -2
- package/htmlvalidate/rules/ftablecolumn-name.rule.js +58 -0
- package/htmlvalidate/rules/index.js +2 -0
- package/package.json +5 -5
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1972,17 +1972,17 @@ const _export_sfc = (sfc, props) => {
|
|
|
1972
1972
|
return target;
|
|
1973
1973
|
};
|
|
1974
1974
|
const _hoisted_1$X = ["aria-hidden"];
|
|
1975
|
-
const _hoisted_2$G = ["
|
|
1976
|
-
function _sfc_render$
|
|
1975
|
+
const _hoisted_2$G = ["href"];
|
|
1976
|
+
function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1977
1977
|
return vue.openBlock(), vue.createElementBlock("svg", vue.mergeProps(_ctx.$attrs, {
|
|
1978
1978
|
focusable: "false",
|
|
1979
1979
|
class: ["icon", [_ctx.spriteKey, ..._ctx.modifiers]],
|
|
1980
1980
|
"aria-hidden": _ctx.ariaHidden
|
|
1981
1981
|
}), [vue.renderSlot(_ctx.$slots, "default"), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("use", {
|
|
1982
|
-
|
|
1982
|
+
href: _ctx.spriteId
|
|
1983
1983
|
}, null, 8, _hoisted_2$G)], 16, _hoisted_1$X);
|
|
1984
1984
|
}
|
|
1985
|
-
const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1d, [["render", _sfc_render$
|
|
1985
|
+
const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1d, [["render", _sfc_render$Q]]);
|
|
1986
1986
|
const DATA_TEST_ATTRIBUTE_NAME = "data-test";
|
|
1987
1987
|
function throwErrorIfEmpty(value) {
|
|
1988
1988
|
if (!value) {
|
|
@@ -4604,7 +4604,7 @@ const _hoisted_1$W = ["id"];
|
|
|
4604
4604
|
const _hoisted_2$F = {
|
|
4605
4605
|
class: "modal__backdrop"
|
|
4606
4606
|
};
|
|
4607
|
-
const _hoisted_3$
|
|
4607
|
+
const _hoisted_3$x = {
|
|
4608
4608
|
class: "modal__inner-container"
|
|
4609
4609
|
};
|
|
4610
4610
|
const _hoisted_4$q = {
|
|
@@ -4616,7 +4616,7 @@ const _hoisted_5$l = {
|
|
|
4616
4616
|
const _hoisted_6$g = {
|
|
4617
4617
|
class: "modal__header"
|
|
4618
4618
|
};
|
|
4619
|
-
const _hoisted_7$
|
|
4619
|
+
const _hoisted_7$c = {
|
|
4620
4620
|
key: 0,
|
|
4621
4621
|
ref: "modalTitle",
|
|
4622
4622
|
class: "modal__title",
|
|
@@ -4634,7 +4634,7 @@ const _hoisted_10$3 = {
|
|
|
4634
4634
|
class: "modal__shelf"
|
|
4635
4635
|
};
|
|
4636
4636
|
const _hoisted_11$3 = ["aria-label"];
|
|
4637
|
-
function _sfc_render$
|
|
4637
|
+
function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4638
4638
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
4639
4639
|
return _ctx.isOpen ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
4640
4640
|
key: 0,
|
|
@@ -4646,13 +4646,13 @@ function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4646
4646
|
role: "dialog",
|
|
4647
4647
|
"aria-modal": "true",
|
|
4648
4648
|
onKeyup: _cache[3] || (_cache[3] = vue.withKeys((...args) => _ctx.onClose && _ctx.onClose(...args), ["esc"]))
|
|
4649
|
-
}, [vue.createElementVNode("div", _hoisted_3$
|
|
4649
|
+
}, [vue.createElementVNode("div", _hoisted_3$x, [vue.createElementVNode("div", {
|
|
4650
4650
|
ref: "modalDialogContainer",
|
|
4651
4651
|
class: vue.normalizeClass(["modal__dialog-container", _ctx.containerClasses])
|
|
4652
4652
|
}, [vue.createElementVNode("div", _hoisted_4$q, [vue.createElementVNode("div", _hoisted_5$l, [vue.createElementVNode("div", _hoisted_6$g, [vue.createElementVNode("div", {
|
|
4653
4653
|
tabindex: "0",
|
|
4654
4654
|
onFocus: _cache[0] || (_cache[0] = (...args) => _ctx.onFocusFirst && _ctx.onFocusFirst(...args))
|
|
4655
|
-
}, null, 32), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.hasHeaderSlot ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_7$
|
|
4655
|
+
}, null, 32), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.hasHeaderSlot ? (vue.openBlock(), vue.createElementBlock("h1", _hoisted_7$c, [vue.renderSlot(_ctx.$slots, "header")], 512)) : vue.createCommentVNode("", true)]), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_8$8, [vue.renderSlot(_ctx.$slots, "content")], 512), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_9$6, [vue.renderSlot(_ctx.$slots, "footer")])]), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_10$3, [vue.createElementVNode("button", {
|
|
4656
4656
|
type: "button",
|
|
4657
4657
|
class: "close-button",
|
|
4658
4658
|
"aria-label": _ctx.ariaCloseText,
|
|
@@ -4664,9 +4664,9 @@ function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4664
4664
|
onFocus: _cache[2] || (_cache[2] = (...args) => _ctx.onFocusLast && _ctx.onFocusLast(...args))
|
|
4665
4665
|
}, null, 32)])])], 2)])], 32)])], 10, _hoisted_1$W)) : vue.createCommentVNode("", true);
|
|
4666
4666
|
}
|
|
4667
|
-
const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$1c, [["render", _sfc_render$
|
|
4668
|
-
function prepareButtonList(src
|
|
4669
|
-
|
|
4667
|
+
const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$1c, [["render", _sfc_render$P]]);
|
|
4668
|
+
function prepareButtonList(src) {
|
|
4669
|
+
return src.map((it) => {
|
|
4670
4670
|
var _it$event, _ref, _it$reason, _it$type;
|
|
4671
4671
|
return {
|
|
4672
4672
|
label: it.label,
|
|
@@ -4677,12 +4677,6 @@ function prepareButtonList(src, buttonOrder = config.buttonOrder) {
|
|
|
4677
4677
|
buttonType: it.submitButton ? "submit" : "button"
|
|
4678
4678
|
};
|
|
4679
4679
|
});
|
|
4680
|
-
switch (buttonOrder) {
|
|
4681
|
-
case FKUIConfigButtonOrder.LEFT_TO_RIGHT:
|
|
4682
|
-
return list;
|
|
4683
|
-
case FKUIConfigButtonOrder.RIGHT_TO_LEFT:
|
|
4684
|
-
return list.reverse();
|
|
4685
|
-
}
|
|
4686
4680
|
}
|
|
4687
4681
|
const defaultButtons = [{
|
|
4688
4682
|
label: "Primärknapp",
|
|
@@ -4780,7 +4774,8 @@ const _sfc_main$1b = vue.defineComponent({
|
|
|
4780
4774
|
})],
|
|
4781
4775
|
computed: {
|
|
4782
4776
|
preparedButtons() {
|
|
4783
|
-
|
|
4777
|
+
const preparedButtonList = prepareButtonList(this.buttons);
|
|
4778
|
+
return config.buttonOrder === FKUIConfigButtonOrder.RIGHT_TO_LEFT ? preparedButtonList.reverse() : preparedButtonList;
|
|
4784
4779
|
}
|
|
4785
4780
|
},
|
|
4786
4781
|
methods: {
|
|
@@ -4801,11 +4796,11 @@ const _hoisted_1$V = {
|
|
|
4801
4796
|
class: "button-group"
|
|
4802
4797
|
};
|
|
4803
4798
|
const _hoisted_2$E = ["onClick"];
|
|
4804
|
-
const _hoisted_3$
|
|
4799
|
+
const _hoisted_3$w = {
|
|
4805
4800
|
key: 0,
|
|
4806
4801
|
class: "sr-only"
|
|
4807
4802
|
};
|
|
4808
|
-
function _sfc_render$
|
|
4803
|
+
function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4809
4804
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
4810
4805
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
4811
4806
|
fullscreen: _ctx.fullscreen,
|
|
@@ -4824,12 +4819,12 @@ function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4824
4819
|
type: "button",
|
|
4825
4820
|
class: vue.normalizeClass([button.classlist, "button-group__item"]),
|
|
4826
4821
|
onClick: ($event) => _ctx.onClick(button)
|
|
4827
|
-
}, [vue.createElementVNode("span", null, vue.toDisplayString(button.label), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), button.screenreader ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
4822
|
+
}, [vue.createElementVNode("span", null, vue.toDisplayString(button.label), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), button.screenreader ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$w, " " + vue.toDisplayString(button.screenreader), 1)) : vue.createCommentVNode("", true)], 10, _hoisted_2$E);
|
|
4828
4823
|
}), 128))])]),
|
|
4829
4824
|
_: 3
|
|
4830
4825
|
}, 8, ["fullscreen", "is-open", "aria-close-text", "size", "focus", "onClose"]);
|
|
4831
4826
|
}
|
|
4832
|
-
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$
|
|
4827
|
+
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$O]]);
|
|
4833
4828
|
const GAP = ["1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x"];
|
|
4834
4829
|
const ALIGNMENT = ["top", "center", "bottom"];
|
|
4835
4830
|
const FLOAT = ["left", "center", "right"];
|
|
@@ -4908,12 +4903,12 @@ const _sfc_main$1a = vue.defineComponent({
|
|
|
4908
4903
|
}
|
|
4909
4904
|
}
|
|
4910
4905
|
});
|
|
4911
|
-
function _sfc_render$
|
|
4906
|
+
function _sfc_render$N(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4912
4907
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4913
4908
|
class: vue.normalizeClass(["iflex", _ctx.classList])
|
|
4914
4909
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4915
4910
|
}
|
|
4916
|
-
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$
|
|
4911
|
+
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$N]]);
|
|
4917
4912
|
const _sfc_main$19 = vue.defineComponent({
|
|
4918
4913
|
name: "IFlexItem",
|
|
4919
4914
|
inheritAttrs: true,
|
|
@@ -4961,12 +4956,12 @@ const _sfc_main$19 = vue.defineComponent({
|
|
|
4961
4956
|
}
|
|
4962
4957
|
}
|
|
4963
4958
|
});
|
|
4964
|
-
function _sfc_render$
|
|
4959
|
+
function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4965
4960
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4966
4961
|
class: vue.normalizeClass(["iflex__item", _ctx.classList])
|
|
4967
4962
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4968
4963
|
}
|
|
4969
|
-
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$
|
|
4964
|
+
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$M]]);
|
|
4970
4965
|
function focusError(item) {
|
|
4971
4966
|
const element = document.querySelector(`#${item.id}`);
|
|
4972
4967
|
if (!element) {
|
|
@@ -5038,14 +5033,14 @@ const _hoisted_1$U = {
|
|
|
5038
5033
|
const _hoisted_2$D = {
|
|
5039
5034
|
key: 0
|
|
5040
5035
|
};
|
|
5041
|
-
const _hoisted_3$
|
|
5036
|
+
const _hoisted_3$v = {
|
|
5042
5037
|
class: "error-list__list error-list--list-style-none"
|
|
5043
5038
|
};
|
|
5044
5039
|
const _hoisted_4$p = ["onClick"];
|
|
5045
5040
|
const _hoisted_5$k = {
|
|
5046
5041
|
class: "error-list__link"
|
|
5047
5042
|
};
|
|
5048
|
-
function _sfc_render$
|
|
5043
|
+
function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5049
5044
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
5050
5045
|
const _component_i_flex_item = vue.resolveComponent("i-flex-item");
|
|
5051
5046
|
const _component_i_flex = vue.resolveComponent("i-flex");
|
|
@@ -5068,7 +5063,7 @@ function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5068
5063
|
})) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(_component_i_flex_item, {
|
|
5069
5064
|
grow: ""
|
|
5070
5065
|
}, {
|
|
5071
|
-
default: vue.withCtx(() => [_ctx.hasTitleSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$D, [vue.renderSlot(_ctx.$slots, "title")])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("ul", _hoisted_3$
|
|
5066
|
+
default: vue.withCtx(() => [_ctx.hasTitleSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$D, [vue.renderSlot(_ctx.$slots, "title")])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("ul", _hoisted_3$v, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item) => {
|
|
5072
5067
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
5073
5068
|
key: item.id,
|
|
5074
5069
|
class: vue.normalizeClass(_ctx.liClasses(item))
|
|
@@ -5099,7 +5094,7 @@ function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5099
5094
|
_: 3
|
|
5100
5095
|
})]);
|
|
5101
5096
|
}
|
|
5102
|
-
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$
|
|
5097
|
+
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$L]]);
|
|
5103
5098
|
var es_iterator_every = {};
|
|
5104
5099
|
var hasRequiredEs_iterator_every;
|
|
5105
5100
|
function requireEs_iterator_every() {
|
|
@@ -5257,13 +5252,13 @@ const _sfc_main$17 = vue.defineComponent({
|
|
|
5257
5252
|
}
|
|
5258
5253
|
}
|
|
5259
5254
|
});
|
|
5260
|
-
function _sfc_render$
|
|
5255
|
+
function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5261
5256
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
5262
5257
|
onComponentValidity: _cache[0] || (_cache[0] = (...args) => _ctx.onComponentValidity && _ctx.onComponentValidity(...args)),
|
|
5263
5258
|
onComponentUnmount: _cache[1] || (_cache[1] = (...args) => _ctx.onComponentUnmount && _ctx.onComponentUnmount(...args))
|
|
5264
5259
|
}, [vue.renderSlot(_ctx.$slots, "default")], 32);
|
|
5265
5260
|
}
|
|
5266
|
-
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$
|
|
5261
|
+
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$K]]);
|
|
5267
5262
|
var FValidationFormAction = /* @__PURE__ */ ((FValidationFormAction2) => {
|
|
5268
5263
|
FValidationFormAction2[FValidationFormAction2["CONTINUE"] = 0] = "CONTINUE";
|
|
5269
5264
|
FValidationFormAction2[FValidationFormAction2["CANCEL"] = 1] = "CANCEL";
|
|
@@ -5415,7 +5410,7 @@ const _hoisted_2$C = {
|
|
|
5415
5410
|
tabindex: "-1",
|
|
5416
5411
|
role: "group"
|
|
5417
5412
|
};
|
|
5418
|
-
function _sfc_render$
|
|
5413
|
+
function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5419
5414
|
const _component_f_error_list = vue.resolveComponent("f-error-list");
|
|
5420
5415
|
const _component_f_validation_group = vue.resolveComponent("f-validation-group");
|
|
5421
5416
|
return vue.openBlock(), vue.createBlock(_component_f_validation_group, {
|
|
@@ -5441,7 +5436,7 @@ function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5441
5436
|
_: 3
|
|
5442
5437
|
}, 8, ["modelValue"]);
|
|
5443
5438
|
}
|
|
5444
|
-
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$
|
|
5439
|
+
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$J]]);
|
|
5445
5440
|
const _sfc_main$15 = vue.defineComponent({
|
|
5446
5441
|
name: "FFormModal",
|
|
5447
5442
|
components: {
|
|
@@ -5540,6 +5535,14 @@ const _sfc_main$15 = vue.defineComponent({
|
|
|
5540
5535
|
default() {
|
|
5541
5536
|
}
|
|
5542
5537
|
},
|
|
5538
|
+
/**
|
|
5539
|
+
* List of buttons to display in the modal.
|
|
5540
|
+
* Each button is defined as an FModalButtonDescriptor with the following properties:
|
|
5541
|
+
* - `label` (String): The text displayed on the button.
|
|
5542
|
+
* - `event` (String): The event emitted when the button is clicked.
|
|
5543
|
+
* - `type` (String): The button type. Valid values are: "primary" or "secondary".
|
|
5544
|
+
* - `submitButton` (Boolean): Whether the button is a submit button.
|
|
5545
|
+
*/
|
|
5543
5546
|
buttons: {
|
|
5544
5547
|
type: Array,
|
|
5545
5548
|
required: false,
|
|
@@ -5561,7 +5564,7 @@ const _sfc_main$15 = vue.defineComponent({
|
|
|
5561
5564
|
},
|
|
5562
5565
|
computed: {
|
|
5563
5566
|
preparedButtons() {
|
|
5564
|
-
return prepareButtonList(this.buttons
|
|
5567
|
+
return prepareButtonList(this.buttons);
|
|
5565
5568
|
}
|
|
5566
5569
|
},
|
|
5567
5570
|
methods: {
|
|
@@ -5595,11 +5598,11 @@ const _hoisted_1$S = {
|
|
|
5595
5598
|
class: "button-group"
|
|
5596
5599
|
};
|
|
5597
5600
|
const _hoisted_2$B = ["type", "form", "onClick"];
|
|
5598
|
-
const _hoisted_3$
|
|
5601
|
+
const _hoisted_3$u = {
|
|
5599
5602
|
key: 0,
|
|
5600
5603
|
class: "sr-only"
|
|
5601
5604
|
};
|
|
5602
|
-
function _sfc_render$
|
|
5605
|
+
function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5603
5606
|
const _component_f_validation_form = vue.resolveComponent("f-validation-form");
|
|
5604
5607
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
5605
5608
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
@@ -5630,12 +5633,12 @@ function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5630
5633
|
class: vue.normalizeClass([button.classlist, "button-group__item"]),
|
|
5631
5634
|
form: button.buttonType === "submit" ? _ctx.formId : void 0,
|
|
5632
5635
|
onClick: ($event) => button.buttonType === "button" ? _ctx.onCancel() : false
|
|
5633
|
-
}, [vue.createElementVNode("span", null, vue.toDisplayString(button.label), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), button.screenreader ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
5636
|
+
}, [vue.createElementVNode("span", null, vue.toDisplayString(button.label), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), button.screenreader ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$u, " " + vue.toDisplayString(button.screenreader), 1)) : vue.createCommentVNode("", true)], 10, _hoisted_2$B);
|
|
5634
5637
|
}), 128))])]),
|
|
5635
5638
|
_: 3
|
|
5636
5639
|
}, 8, ["data-test", "fullscreen", "is-open", "size", "aria-close-text", "onClose"]);
|
|
5637
5640
|
}
|
|
5638
|
-
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$
|
|
5641
|
+
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$I]]);
|
|
5639
5642
|
async function confirmModal(callingInstance, texts) {
|
|
5640
5643
|
const buttons = [{
|
|
5641
5644
|
label: texts.confirm,
|
|
@@ -5952,6 +5955,9 @@ const ValidationPrefixDirective = {
|
|
|
5952
5955
|
};
|
|
5953
5956
|
const ValidationPlugin = {
|
|
5954
5957
|
install(app) {
|
|
5958
|
+
for (const validator of logic.availableValidators) {
|
|
5959
|
+
logic.ValidationService.registerValidator(validator);
|
|
5960
|
+
}
|
|
5955
5961
|
app.directive("validation", ValidationDirective);
|
|
5956
5962
|
app.directive("validationPrefix", ValidationPrefixDirective);
|
|
5957
5963
|
}
|
|
@@ -6008,12 +6014,12 @@ const _sfc_main$14 = vue.defineComponent({
|
|
|
6008
6014
|
const _hoisted_1$R = {
|
|
6009
6015
|
"data-test": "f-error-page"
|
|
6010
6016
|
};
|
|
6011
|
-
function _sfc_render$
|
|
6017
|
+
function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6012
6018
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$R, _cache[0] || (_cache[0] = [vue.createElementVNode("h1", null, "Fel", -1), vue.createTextVNode(), vue.createElementVNode("p", null, "Ett fel har uppstått.", -1), vue.createTextVNode(), vue.createElementVNode("a", {
|
|
6013
6019
|
href: "/"
|
|
6014
6020
|
}, "Gå till startsidan", -1)]));
|
|
6015
6021
|
}
|
|
6016
|
-
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$
|
|
6022
|
+
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$H]]);
|
|
6017
6023
|
const _sfc_main$13 = vue.defineComponent({
|
|
6018
6024
|
name: "FErrorHandlingApp",
|
|
6019
6025
|
props: {
|
|
@@ -6043,7 +6049,7 @@ const _sfc_main$13 = vue.defineComponent({
|
|
|
6043
6049
|
});
|
|
6044
6050
|
}
|
|
6045
6051
|
});
|
|
6046
|
-
function _sfc_render$
|
|
6052
|
+
function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6047
6053
|
return vue.openBlock(), vue.createElementBlock("div", null, [_ctx.hasError ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.errorComponent), {
|
|
6048
6054
|
key: 0,
|
|
6049
6055
|
payload: _ctx.payload
|
|
@@ -6053,7 +6059,7 @@ function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6053
6059
|
key: 2
|
|
6054
6060
|
})]);
|
|
6055
6061
|
}
|
|
6056
|
-
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$
|
|
6062
|
+
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$G]]);
|
|
6057
6063
|
function isMonthBefore(date2, minDate) {
|
|
6058
6064
|
return Boolean(minDate && date2.isBefore(minDate.startOfMonth()));
|
|
6059
6065
|
}
|
|
@@ -6214,7 +6220,7 @@ const _hoisted_2$A = {
|
|
|
6214
6220
|
class: "calendar-navbar__month",
|
|
6215
6221
|
tabindex: "-1"
|
|
6216
6222
|
};
|
|
6217
|
-
const _hoisted_3$
|
|
6223
|
+
const _hoisted_3$t = ["aria-disabled", "aria-live"];
|
|
6218
6224
|
const _hoisted_4$o = {
|
|
6219
6225
|
class: "sr-only"
|
|
6220
6226
|
};
|
|
@@ -6222,7 +6228,7 @@ const _hoisted_5$j = ["aria-disabled", "aria-live"];
|
|
|
6222
6228
|
const _hoisted_6$f = {
|
|
6223
6229
|
class: "sr-only"
|
|
6224
6230
|
};
|
|
6225
|
-
function _sfc_render$
|
|
6231
|
+
function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6226
6232
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
6227
6233
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$Q, [vue.createElementVNode("div", _hoisted_2$A, vue.toDisplayString(_ctx.currentText), 1), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("button", {
|
|
6228
6234
|
ref: "previousButton",
|
|
@@ -6234,7 +6240,7 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6234
6240
|
}, [vue.createElementVNode("span", _hoisted_4$o, vue.toDisplayString(_ctx.previousSrText), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
6235
6241
|
class: vue.normalizeClass(_ctx.previousIconClasses),
|
|
6236
6242
|
name: "arrow-right"
|
|
6237
|
-
}, null, 8, ["class"])], 8, _hoisted_3$
|
|
6243
|
+
}, null, 8, ["class"])], 8, _hoisted_3$t), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("button", {
|
|
6238
6244
|
ref: "nextButton",
|
|
6239
6245
|
class: "calendar-navbar__arrow calendar-navbar__arrow--next",
|
|
6240
6246
|
type: "button",
|
|
@@ -6246,7 +6252,7 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6246
6252
|
name: "arrow-right"
|
|
6247
6253
|
}, null, 8, ["class"])], 8, _hoisted_5$j)]);
|
|
6248
6254
|
}
|
|
6249
|
-
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$
|
|
6255
|
+
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$F]]);
|
|
6250
6256
|
function getDayStartOffset(days) {
|
|
6251
6257
|
return days[0].weekDay - 1;
|
|
6252
6258
|
}
|
|
@@ -6332,7 +6338,7 @@ const _hoisted_2$z = {
|
|
|
6332
6338
|
key: 0,
|
|
6333
6339
|
class: "calendar-month__col--week"
|
|
6334
6340
|
};
|
|
6335
|
-
const _hoisted_3$
|
|
6341
|
+
const _hoisted_3$s = {
|
|
6336
6342
|
key: 0,
|
|
6337
6343
|
scope: "col",
|
|
6338
6344
|
"aria-hidden": "true",
|
|
@@ -6347,7 +6353,7 @@ const _hoisted_6$e = {
|
|
|
6347
6353
|
class: "calendar-month__cell calendar-month__cell--week-number",
|
|
6348
6354
|
"aria-hidden": "true"
|
|
6349
6355
|
};
|
|
6350
|
-
const _hoisted_7$
|
|
6356
|
+
const _hoisted_7$b = ["colspan"];
|
|
6351
6357
|
const _hoisted_8$7 = ["colspan"];
|
|
6352
6358
|
const _hoisted_9$5 = {
|
|
6353
6359
|
key: 0,
|
|
@@ -6359,7 +6365,7 @@ const _hoisted_11$2 = {
|
|
|
6359
6365
|
"aria-hidden": "true"
|
|
6360
6366
|
};
|
|
6361
6367
|
const _hoisted_12$2 = ["colspan"];
|
|
6362
|
-
function _sfc_render$
|
|
6368
|
+
function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6363
6369
|
return vue.openBlock(), vue.createElementBlock("table", {
|
|
6364
6370
|
class: "calendar-month__table",
|
|
6365
6371
|
role: "grid",
|
|
@@ -6380,7 +6386,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6380
6386
|
class: "calendar-month__col--day"
|
|
6381
6387
|
}, null, -1)), _cache[14] || (_cache[14] = vue.createTextVNode()), _cache[15] || (_cache[15] = vue.createElementVNode("col", {
|
|
6382
6388
|
class: "calendar-month__col--day"
|
|
6383
|
-
}, null, -1))]), _cache[22] || (_cache[22] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", null, [!_ctx.internalHideWeekNumbers ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_3$
|
|
6389
|
+
}, null, -1))]), _cache[22] || (_cache[22] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", null, [!_ctx.internalHideWeekNumbers ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_3$s)) : vue.createCommentVNode("", true), _cache[16] || (_cache[16] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.weekdays, (weekday) => {
|
|
6384
6390
|
return vue.openBlock(), vue.createElementBlock("th", {
|
|
6385
6391
|
key: weekday.name,
|
|
6386
6392
|
scope: "col",
|
|
@@ -6397,7 +6403,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6397
6403
|
key: 1,
|
|
6398
6404
|
class: "calendar-month__cell",
|
|
6399
6405
|
colspan: _ctx.getDayStartOffset(week.days)
|
|
6400
|
-
}, null, 8, _hoisted_7$
|
|
6406
|
+
}, null, 8, _hoisted_7$b)) : vue.createCommentVNode("", true), _cache[18] || (_cache[18] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(week.days, (day) => {
|
|
6401
6407
|
return vue.openBlock(), vue.createElementBlock("td", {
|
|
6402
6408
|
key: day.toString(),
|
|
6403
6409
|
class: "calendar-month__cell",
|
|
@@ -6422,7 +6428,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6422
6428
|
"aria-hidden": "true"
|
|
6423
6429
|
}, null, 8, _hoisted_12$2)])) : vue.createCommentVNode("", true)])], 40, _hoisted_1$P);
|
|
6424
6430
|
}
|
|
6425
|
-
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$
|
|
6431
|
+
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$E]]);
|
|
6426
6432
|
const DayStep = {
|
|
6427
6433
|
ArrowRight: 1,
|
|
6428
6434
|
ArrowLeft: -1,
|
|
@@ -6537,7 +6543,7 @@ const _sfc_main$10 = vue.defineComponent({
|
|
|
6537
6543
|
}
|
|
6538
6544
|
});
|
|
6539
6545
|
const _hoisted_1$O = ["data-date", "tabindex", "onClick", "onKeydown"];
|
|
6540
|
-
function _sfc_render$
|
|
6546
|
+
function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6541
6547
|
const _component_i_calendar_month_grid = vue.resolveComponent("i-calendar-month-grid");
|
|
6542
6548
|
return vue.openBlock(), vue.createBlock(_component_i_calendar_month_grid, {
|
|
6543
6549
|
value: _ctx.modelValue
|
|
@@ -6560,7 +6566,7 @@ function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6560
6566
|
_: 3
|
|
6561
6567
|
}, 8, ["value"]);
|
|
6562
6568
|
}
|
|
6563
|
-
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$
|
|
6569
|
+
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$D]]);
|
|
6564
6570
|
const _sfc_main$$ = vue.defineComponent({
|
|
6565
6571
|
name: "FCalendar",
|
|
6566
6572
|
components: {
|
|
@@ -6615,7 +6621,7 @@ const _sfc_main$$ = vue.defineComponent({
|
|
|
6615
6621
|
const _hoisted_1$N = {
|
|
6616
6622
|
class: "calendar__wrapper"
|
|
6617
6623
|
};
|
|
6618
|
-
function _sfc_render$
|
|
6624
|
+
function _sfc_render$C(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6619
6625
|
const _component_i_calendar_navbar = vue.resolveComponent("i-calendar-navbar");
|
|
6620
6626
|
const _component_i_calendar_month = vue.resolveComponent("i-calendar-month");
|
|
6621
6627
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [vue.createVNode(_component_i_calendar_navbar, {
|
|
@@ -6641,7 +6647,7 @@ function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6641
6647
|
_: 3
|
|
6642
6648
|
}, 8, ["model-value", "min-date", "max-date", "tab-date", "onClick", "onUpdate:modelValue"])]);
|
|
6643
6649
|
}
|
|
6644
|
-
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$
|
|
6650
|
+
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$C]]);
|
|
6645
6651
|
function getCalendarDaySrText(day, enabled, selected, t) {
|
|
6646
6652
|
const parts = [];
|
|
6647
6653
|
if (!enabled) {
|
|
@@ -6731,12 +6737,12 @@ const _hoisted_1$M = {
|
|
|
6731
6737
|
const _hoisted_2$y = {
|
|
6732
6738
|
class: "sr-only"
|
|
6733
6739
|
};
|
|
6734
|
-
function _sfc_render$
|
|
6740
|
+
function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6735
6741
|
return vue.openBlock(), vue.createElementBlock("span", {
|
|
6736
6742
|
class: vue.normalizeClass(_ctx.dayClasses)
|
|
6737
6743
|
}, [vue.createElementVNode("span", _hoisted_1$M, vue.toDisplayString(_ctx.day.day), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_2$y, vue.toDisplayString(_ctx.srText), 1)], 2);
|
|
6738
6744
|
}
|
|
6739
|
-
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$
|
|
6745
|
+
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$B]]);
|
|
6740
6746
|
function useEventListener$1(target, event, callback) {
|
|
6741
6747
|
vue.onMounted(() => {
|
|
6742
6748
|
var _a;
|
|
@@ -6762,7 +6768,7 @@ const _hoisted_2$x = {
|
|
|
6762
6768
|
key: 0,
|
|
6763
6769
|
class: "card__header"
|
|
6764
6770
|
};
|
|
6765
|
-
const _hoisted_3$
|
|
6771
|
+
const _hoisted_3$r = {
|
|
6766
6772
|
class: "card__content"
|
|
6767
6773
|
};
|
|
6768
6774
|
const _hoisted_4$m = {
|
|
@@ -6807,6 +6813,9 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
|
6807
6813
|
if (!isMounted.value) {
|
|
6808
6814
|
return;
|
|
6809
6815
|
}
|
|
6816
|
+
if (detail.elementId !== props.id) {
|
|
6817
|
+
return;
|
|
6818
|
+
}
|
|
6810
6819
|
if (!props.focusRef) {
|
|
6811
6820
|
throw new Error("Element to focus on when card is invalid (`focusRef`) is required when using card validation.");
|
|
6812
6821
|
}
|
|
@@ -6852,7 +6861,7 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
|
6852
6861
|
_: 1
|
|
6853
6862
|
})]),
|
|
6854
6863
|
_: 1
|
|
6855
|
-
})) : vue.createCommentVNode("", true)]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$
|
|
6864
|
+
})) : vue.createCommentVNode("", true)]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$r, [vue.renderSlot(_ctx.$slots, "default")]), _cache[3] || (_cache[3] = vue.createTextVNode()), hasFooterSlot.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$m, [vue.renderSlot(_ctx.$slots, "footer", vue.normalizeProps(vue.guardReactiveProps({
|
|
6856
6865
|
hasError: hasError.value,
|
|
6857
6866
|
validationMessage: validationMessage.value
|
|
6858
6867
|
})))])) : vue.createCommentVNode("", true)], 42, _hoisted_1$L);
|
|
@@ -6913,7 +6922,7 @@ const _sfc_main$Y = vue.defineComponent({
|
|
|
6913
6922
|
}
|
|
6914
6923
|
}
|
|
6915
6924
|
});
|
|
6916
|
-
function _sfc_render$
|
|
6925
|
+
function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6917
6926
|
return vue.openBlock(), vue.createBlock(vue.Transition, {
|
|
6918
6927
|
onEnter: _ctx.enter,
|
|
6919
6928
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -6925,7 +6934,7 @@ function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6925
6934
|
_: 3
|
|
6926
6935
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"]);
|
|
6927
6936
|
}
|
|
6928
|
-
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$
|
|
6937
|
+
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$A]]);
|
|
6929
6938
|
function offset(page, el) {
|
|
6930
6939
|
const rect = el.getBoundingClientRect();
|
|
6931
6940
|
return {
|
|
@@ -7491,7 +7500,7 @@ const _sfc_main$X = vue.defineComponent({
|
|
|
7491
7500
|
}
|
|
7492
7501
|
}
|
|
7493
7502
|
});
|
|
7494
|
-
function _sfc_render$
|
|
7503
|
+
function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7495
7504
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
7496
7505
|
key: 0,
|
|
7497
7506
|
to: _ctx.teleportTarget,
|
|
@@ -7512,7 +7521,7 @@ function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7512
7521
|
placement: _ctx.placement
|
|
7513
7522
|
})))], 544)], 16)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
7514
7523
|
}
|
|
7515
|
-
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$
|
|
7524
|
+
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$z]]);
|
|
7516
7525
|
function computeArrowOffset(placement, inputIconRect, wrapperRect) {
|
|
7517
7526
|
switch (placement) {
|
|
7518
7527
|
case Placement.A: {
|
|
@@ -7718,7 +7727,7 @@ const _hoisted_1$K = {
|
|
|
7718
7727
|
ref: "wrapper",
|
|
7719
7728
|
class: "popup-error__wrapper"
|
|
7720
7729
|
};
|
|
7721
|
-
function _sfc_render$
|
|
7730
|
+
function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7722
7731
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
7723
7732
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
7724
7733
|
key: 0,
|
|
@@ -7742,7 +7751,7 @@ function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7742
7751
|
class: "button__icon"
|
|
7743
7752
|
})])], 6)], 512)], 2)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
7744
7753
|
}
|
|
7745
|
-
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$
|
|
7754
|
+
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$y]]);
|
|
7746
7755
|
function numItems(itemHeight, availableHeight, verticalSpacing) {
|
|
7747
7756
|
const itemsFit = Math.floor((availableHeight - verticalSpacing) / itemHeight);
|
|
7748
7757
|
return Math.min(itemsFit, 7);
|
|
@@ -8272,13 +8281,13 @@ const _hoisted_2$v = {
|
|
|
8272
8281
|
role: "menu",
|
|
8273
8282
|
class: "ipopupmenu__list"
|
|
8274
8283
|
};
|
|
8275
|
-
const _hoisted_3$
|
|
8284
|
+
const _hoisted_3$q = ["onClick"];
|
|
8276
8285
|
const _hoisted_4$l = ["data-ref-index", "href", "target"];
|
|
8277
8286
|
const _hoisted_5$h = {
|
|
8278
8287
|
key: 0,
|
|
8279
8288
|
class: "sr-only"
|
|
8280
8289
|
};
|
|
8281
|
-
function _sfc_render$
|
|
8290
|
+
function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8282
8291
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
8283
8292
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
8284
8293
|
class: "ipopupmenu",
|
|
@@ -8309,12 +8318,12 @@ function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8309
8318
|
role: "menuitem",
|
|
8310
8319
|
target: item.target,
|
|
8311
8320
|
tabindex: "0"
|
|
8312
|
-
}, [_ctx.isSelected(index) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$h, [vue.createElementVNode("span", null, vue.toDisplayString(_ctx.selectedMenuItemScreenReaderText) + " ", 1)])) : vue.createCommentVNode("", true), vue.createTextVNode(" " + vue.toDisplayString(item.label), 1)], 8, _hoisted_4$l)], 10, _hoisted_3$
|
|
8321
|
+
}, [_ctx.isSelected(index) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$h, [vue.createElementVNode("span", null, vue.toDisplayString(_ctx.selectedMenuItemScreenReaderText) + " ", 1)])) : vue.createCommentVNode("", true), vue.createTextVNode(" " + vue.toDisplayString(item.label), 1)], 8, _hoisted_4$l)], 10, _hoisted_3$q);
|
|
8313
8322
|
}), 128))])], 8, _hoisted_1$I)]),
|
|
8314
8323
|
_: 1
|
|
8315
8324
|
}, 8, ["is-open", "anchor", "focus-element", "onKeyup", "onKeydown"]);
|
|
8316
8325
|
}
|
|
8317
|
-
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$
|
|
8326
|
+
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$x]]);
|
|
8318
8327
|
const ANIMATION_DURATION = 500;
|
|
8319
8328
|
const NO_CSS_CLASSES = "";
|
|
8320
8329
|
const CLOSED_CSS_CLASS_OPACITY = "animate-expand animate-expand--opacity";
|
|
@@ -8517,13 +8526,13 @@ const _hoisted_1$H = {
|
|
|
8517
8526
|
ref: "content",
|
|
8518
8527
|
"data-test": "animation-content"
|
|
8519
8528
|
};
|
|
8520
|
-
function _sfc_render$
|
|
8529
|
+
function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8521
8530
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
8522
8531
|
class: vue.normalizeClass(_ctx.animationClasses),
|
|
8523
8532
|
style: vue.normalizeStyle(_ctx.heightStyle)
|
|
8524
8533
|
}, [_ctx.shouldVIf ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_1$H, [vue.renderSlot(_ctx.$slots, "default")], 512)), [[vue.vShow, _ctx.shouldVShow]]) : vue.createCommentVNode("", true)], 6);
|
|
8525
8534
|
}
|
|
8526
|
-
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$
|
|
8535
|
+
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$w]]);
|
|
8527
8536
|
const _sfc_main$S = vue.defineComponent({
|
|
8528
8537
|
name: "ISkipLink",
|
|
8529
8538
|
mixins: [TranslationMixin],
|
|
@@ -8539,13 +8548,13 @@ const _sfc_main$S = vue.defineComponent({
|
|
|
8539
8548
|
}
|
|
8540
8549
|
});
|
|
8541
8550
|
const _hoisted_1$G = ["href"];
|
|
8542
|
-
function _sfc_render$
|
|
8551
|
+
function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8543
8552
|
return vue.openBlock(), vue.createElementBlock("a", {
|
|
8544
8553
|
class: "iskiplink",
|
|
8545
8554
|
href: _ctx.href
|
|
8546
8555
|
}, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.skip-link.text", "Gå direkt till innehåll")), 1)])], 8, _hoisted_1$G);
|
|
8547
8556
|
}
|
|
8548
|
-
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$
|
|
8557
|
+
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$v]]);
|
|
8549
8558
|
function filterOptions(options, filter2, selectMode) {
|
|
8550
8559
|
if (logic.isEmpty(filter2) || selectMode) {
|
|
8551
8560
|
return options;
|
|
@@ -8795,7 +8804,7 @@ const _hoisted_1$F = {
|
|
|
8795
8804
|
class: "combobox"
|
|
8796
8805
|
};
|
|
8797
8806
|
const _hoisted_2$u = ["id"];
|
|
8798
|
-
const _hoisted_3$
|
|
8807
|
+
const _hoisted_3$p = ["id", "aria-selected", "onClick"];
|
|
8799
8808
|
const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
8800
8809
|
__name: "IComboboxDropdown",
|
|
8801
8810
|
props: {
|
|
@@ -8857,7 +8866,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
|
8857
8866
|
"combobox__listbox__option--highlight": isOptionActive(item)
|
|
8858
8867
|
}]),
|
|
8859
8868
|
onClick: vue.withModifiers(($event) => onOptionClick(item), ["stop", "prevent"])
|
|
8860
|
-
}, vue.toDisplayString(item), 11, _hoisted_3$
|
|
8869
|
+
}, vue.toDisplayString(item), 11, _hoisted_3$p);
|
|
8861
8870
|
}), 128))], 8, _hoisted_2$u)]),
|
|
8862
8871
|
_: 1
|
|
8863
8872
|
}, 8, ["is-open", "anchor", "num-of-items", "active-element"])]);
|
|
@@ -9149,7 +9158,7 @@ const _hoisted_1$D = ["aria-expanded"];
|
|
|
9149
9158
|
const _hoisted_2$t = {
|
|
9150
9159
|
class: "icon-stack icon-stack--tooltip"
|
|
9151
9160
|
};
|
|
9152
|
-
const _hoisted_3$
|
|
9161
|
+
const _hoisted_3$o = {
|
|
9153
9162
|
class: "sr-only"
|
|
9154
9163
|
};
|
|
9155
9164
|
const _hoisted_4$k = {
|
|
@@ -9163,7 +9172,7 @@ const _hoisted_5$g = {
|
|
|
9163
9172
|
const _hoisted_6$d = {
|
|
9164
9173
|
class: "tooltip__footer"
|
|
9165
9174
|
};
|
|
9166
|
-
function _sfc_render$
|
|
9175
|
+
function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9167
9176
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9168
9177
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [(vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
9169
9178
|
disabled: _ctx.iconTarget === null,
|
|
@@ -9178,7 +9187,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9178
9187
|
name: "circle"
|
|
9179
9188
|
}), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
9180
9189
|
name: "i"
|
|
9181
|
-
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$
|
|
9190
|
+
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$o, vue.toDisplayString(_ctx.screenReaderText), 1)])], 8, _hoisted_1$D)], 8, ["disabled", "to"])), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createElementVNode("div", vue.mergeProps({
|
|
9182
9191
|
ref: "wrapper",
|
|
9183
9192
|
class: "tooltip"
|
|
9184
9193
|
}, _ctx.$attrs), [_ctx.ready ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$k, [_ctx.hasHeader ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.headerTag), {
|
|
@@ -9196,7 +9205,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9196
9205
|
name: "close"
|
|
9197
9206
|
})])])])) : vue.createCommentVNode("", true)], 16)], 64);
|
|
9198
9207
|
}
|
|
9199
|
-
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$
|
|
9208
|
+
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$u]]);
|
|
9200
9209
|
function* labelClasses(options) {
|
|
9201
9210
|
const {
|
|
9202
9211
|
labelClass
|
|
@@ -9470,7 +9479,7 @@ const _hoisted_2$s = {
|
|
|
9470
9479
|
key: 0,
|
|
9471
9480
|
class: "sr-only"
|
|
9472
9481
|
};
|
|
9473
|
-
const _hoisted_3$
|
|
9482
|
+
const _hoisted_3$n = {
|
|
9474
9483
|
key: 0,
|
|
9475
9484
|
class: "label__message label__message--error"
|
|
9476
9485
|
};
|
|
@@ -9486,7 +9495,7 @@ const _hoisted_5$f = {
|
|
|
9486
9495
|
const _hoisted_6$c = {
|
|
9487
9496
|
key: 1
|
|
9488
9497
|
};
|
|
9489
|
-
const _hoisted_7$
|
|
9498
|
+
const _hoisted_7$a = {
|
|
9490
9499
|
ref: "tooltipAttachTo",
|
|
9491
9500
|
class: "label"
|
|
9492
9501
|
};
|
|
@@ -9497,7 +9506,7 @@ const _hoisted_9$4 = {
|
|
|
9497
9506
|
key: 0,
|
|
9498
9507
|
class: "label__message label__message--error"
|
|
9499
9508
|
};
|
|
9500
|
-
function _sfc_render$
|
|
9509
|
+
function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9501
9510
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9502
9511
|
return vue.openBlock(), vue.createElementBlock("fieldset", {
|
|
9503
9512
|
id: _ctx.id,
|
|
@@ -9512,12 +9521,12 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9512
9521
|
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "error-message", vue.normalizeProps(vue.guardReactiveProps({
|
|
9513
9522
|
hasError: _ctx.hasError,
|
|
9514
9523
|
validationMessage: _ctx.validity.validationMessage
|
|
9515
|
-
})), () => [_ctx.hasError ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
9524
|
+
})), () => [_ctx.hasError ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$n, [vue.createVNode(_component_f_icon, {
|
|
9516
9525
|
class: "label__icon--left",
|
|
9517
9526
|
name: "error"
|
|
9518
9527
|
}), vue.createTextVNode(" " + vue.toDisplayString(_ctx.validity.validationMessage), 1)])) : vue.createCommentVNode("", true)])], 2)), _cache[7] || (_cache[7] = vue.createTextVNode()), _ctx.hasCheckbox ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$j, [_ctx.children.length === 1 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$f, vue.toDisplayString(_ctx.checkboxCheckedScreenReaderText), 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$c, vue.toDisplayString(_ctx.numberOfCheckedCheckboxesScreenText), 1))])) : vue.createCommentVNode("", true), _cache[8] || (_cache[8] = vue.createTextVNode()), _ctx.hasTooltipSlot ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
9519
9528
|
key: 1
|
|
9520
|
-
}, [vue.createElementVNode("div", _hoisted_7$
|
|
9529
|
+
}, [vue.createElementVNode("div", _hoisted_7$a, [vue.createElementVNode("span", _hoisted_8$6, [vue.renderSlot(_ctx.$slots, "label")])], 512), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "tooltip"), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.hasDescriptionSlot || _ctx.hasErrorMessageSlot || _ctx.hasError ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
9521
9530
|
key: 0,
|
|
9522
9531
|
class: vue.normalizeClass(["label", _ctx.groupLabelClass]),
|
|
9523
9532
|
"aria-hidden": "true"
|
|
@@ -9534,7 +9543,7 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9534
9543
|
class: vue.normalizeClass(_ctx.groupContentClass)
|
|
9535
9544
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2)], 42, _hoisted_1$C);
|
|
9536
9545
|
}
|
|
9537
|
-
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$
|
|
9546
|
+
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$t]]);
|
|
9538
9547
|
const anyType$1 = [String, Object, Array, Number, Date, Boolean];
|
|
9539
9548
|
const _sfc_main$N = vue.defineComponent({
|
|
9540
9549
|
name: "FCheckboxField",
|
|
@@ -9724,7 +9733,7 @@ const _sfc_main$N = vue.defineComponent({
|
|
|
9724
9733
|
});
|
|
9725
9734
|
const _hoisted_1$B = ["id", "disabled"];
|
|
9726
9735
|
const _hoisted_2$r = ["for"];
|
|
9727
|
-
const _hoisted_3$
|
|
9736
|
+
const _hoisted_3$m = {
|
|
9728
9737
|
key: 0,
|
|
9729
9738
|
class: "checkbox__details"
|
|
9730
9739
|
};
|
|
@@ -9732,7 +9741,7 @@ const _hoisted_4$i = {
|
|
|
9732
9741
|
key: 0,
|
|
9733
9742
|
class: "checkbox__details"
|
|
9734
9743
|
};
|
|
9735
|
-
function _sfc_render$
|
|
9744
|
+
function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9736
9745
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
9737
9746
|
class: vue.normalizeClass(["checkbox", _ctx.disabledClass]),
|
|
9738
9747
|
onValidity: _cache[2] || (_cache[2] = (...args) => _ctx.onValidity && _ctx.onValidity(...args))
|
|
@@ -9750,7 +9759,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9750
9759
|
for: _ctx.id
|
|
9751
9760
|
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[8] || (_cache[8] = vue.createTextVNode()), _ctx.$slots.details ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
9752
9761
|
key: 0
|
|
9753
|
-
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
9762
|
+
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$m, [_cache[3] || (_cache[3] = vue.createElementVNode("br", null, null, -1)), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "details")])) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), _ctx.showDetails === "when-selected" ? (vue.openBlock(), vue.createBlock(vue.Transition, {
|
|
9754
9763
|
key: 1,
|
|
9755
9764
|
onEnter: _ctx.enter,
|
|
9756
9765
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -9762,7 +9771,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9762
9771
|
_: 3
|
|
9763
9772
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"])) : vue.createCommentVNode("", true)], 64)) : vue.createCommentVNode("", true)], 10, _hoisted_2$r)], 34);
|
|
9764
9773
|
}
|
|
9765
|
-
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$
|
|
9774
|
+
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$s]]);
|
|
9766
9775
|
var es_iterator_some = {};
|
|
9767
9776
|
var hasRequiredEs_iterator_some;
|
|
9768
9777
|
function requireEs_iterator_some() {
|
|
@@ -10012,13 +10021,13 @@ const _hoisted_2$q = {
|
|
|
10012
10021
|
tabindex: "-1",
|
|
10013
10022
|
class: "contextmenu__list"
|
|
10014
10023
|
};
|
|
10015
|
-
const _hoisted_3$
|
|
10024
|
+
const _hoisted_3$l = ["onClick"];
|
|
10016
10025
|
const _hoisted_4$h = ["tabindex"];
|
|
10017
10026
|
const _hoisted_5$e = {
|
|
10018
10027
|
key: 0,
|
|
10019
10028
|
class: "contextmenu__separator"
|
|
10020
10029
|
};
|
|
10021
|
-
function _sfc_render$
|
|
10030
|
+
function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10022
10031
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10023
10032
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
10024
10033
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
@@ -10053,12 +10062,12 @@ function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10053
10062
|
}, null, 8, ["name", "library"])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("a", {
|
|
10054
10063
|
ref_for: true,
|
|
10055
10064
|
ref: "anchors"
|
|
10056
|
-
}, vue.toDisplayString(item.label), 513)], 8, _hoisted_4$h), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.hasSeparatorAfterItemAt(index) ? (vue.openBlock(), vue.createElementBlock("hr", _hoisted_5$e)) : vue.createCommentVNode("", true)], 8, _hoisted_3$
|
|
10065
|
+
}, vue.toDisplayString(item.label), 513)], 8, _hoisted_4$h), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.hasSeparatorAfterItemAt(index) ? (vue.openBlock(), vue.createElementBlock("hr", _hoisted_5$e)) : vue.createCommentVNode("", true)], 8, _hoisted_3$l);
|
|
10057
10066
|
}), 128))], 512)], 40, _hoisted_1$A)]),
|
|
10058
10067
|
_: 1
|
|
10059
10068
|
}, 8, ["is-open", "anchor", "focus-element"]);
|
|
10060
10069
|
}
|
|
10061
|
-
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$
|
|
10070
|
+
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$r]]);
|
|
10062
10071
|
var Operation = /* @__PURE__ */ ((Operation2) => {
|
|
10063
10072
|
Operation2[Operation2["ADD"] = 0] = "ADD";
|
|
10064
10073
|
Operation2[Operation2["DELETE"] = 1] = "DELETE";
|
|
@@ -10302,7 +10311,7 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10302
10311
|
isFormModalOpen.value = true;
|
|
10303
10312
|
}
|
|
10304
10313
|
return (_ctx, _cache) => {
|
|
10305
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [vue.renderSlot(_ctx.$slots, "default"), _cache[
|
|
10314
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [vue.renderSlot(_ctx.$slots, "default"), _cache[6] || (_cache[6] = vue.createTextVNode()), hasAddSlot.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$p, [vue.createElementVNode("button", {
|
|
10306
10315
|
"data-test": "f-crud-dataset-add-button",
|
|
10307
10316
|
type: "button",
|
|
10308
10317
|
class: "button button--tertiary crud-dataset__add-button",
|
|
@@ -10310,7 +10319,9 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10310
10319
|
}, [vue.createVNode(vue.unref(FIcon), {
|
|
10311
10320
|
class: "button__icon",
|
|
10312
10321
|
name: "plus"
|
|
10313
|
-
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "add-button", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.crud-dataset.button.add", "Lägg till ny")), 1)])])
|
|
10322
|
+
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "add-button", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.crud-dataset.button.add", "Lägg till ny")), 1)])]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "buttons", vue.normalizeProps(vue.guardReactiveProps({
|
|
10323
|
+
buttonClasses: ["button", "button--tertiary", "crud-dataset__add-button"]
|
|
10324
|
+
})))])) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(vue.unref(FFormModal), {
|
|
10314
10325
|
"is-open": isFormModalOpen.value,
|
|
10315
10326
|
"aria-close-text": vue.unref($t2)("fkui.crud-dataset.modal.close", "Stäng"),
|
|
10316
10327
|
buttons: formModalButtons.value,
|
|
@@ -10327,13 +10338,13 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10327
10338
|
key: 0
|
|
10328
10339
|
}, {
|
|
10329
10340
|
item: item.value
|
|
10330
|
-
}))) : vue.createCommentVNode("", true), _cache[
|
|
10341
|
+
}))) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), operation.value === vue.unref(Operation).MODIFY ? vue.renderSlot(_ctx.$slots, "modify", vue.normalizeProps(vue.mergeProps({
|
|
10331
10342
|
key: 1
|
|
10332
10343
|
}, {
|
|
10333
10344
|
item: item.value
|
|
10334
10345
|
}))) : vue.createCommentVNode("", true)]),
|
|
10335
10346
|
_: 3
|
|
10336
|
-
}, 8, ["is-open", "aria-close-text", "buttons", "before-submit", "before-validation", "on-cancel", "onCancel"]), _cache[
|
|
10347
|
+
}, 8, ["is-open", "aria-close-text", "buttons", "before-submit", "before-validation", "on-cancel", "onCancel"]), _cache[8] || (_cache[8] = vue.createTextVNode()), vue.createVNode(vue.unref(FConfirmModal), {
|
|
10337
10348
|
"is-open": isConfirmModalOpen.value,
|
|
10338
10349
|
buttons: confirmDeleteButtons.value,
|
|
10339
10350
|
onConfirm: onDeleteConfirm,
|
|
@@ -10361,6 +10372,10 @@ const _sfc_main$K = vue.defineComponent({
|
|
|
10361
10372
|
},
|
|
10362
10373
|
mixins: [TranslationMixin],
|
|
10363
10374
|
props: {
|
|
10375
|
+
/**
|
|
10376
|
+
* The action to be performed by the button.
|
|
10377
|
+
* Must be one of the following values: "delete" or "modify".
|
|
10378
|
+
*/
|
|
10364
10379
|
action: {
|
|
10365
10380
|
type: String,
|
|
10366
10381
|
required: true,
|
|
@@ -10368,14 +10383,24 @@ const _sfc_main$K = vue.defineComponent({
|
|
|
10368
10383
|
return ["delete", "modify"].includes(value);
|
|
10369
10384
|
}
|
|
10370
10385
|
},
|
|
10386
|
+
/**
|
|
10387
|
+
* Determines if an icon should be displayed on the button.
|
|
10388
|
+
*/
|
|
10371
10389
|
icon: {
|
|
10372
10390
|
type: Boolean,
|
|
10373
10391
|
default: false
|
|
10374
10392
|
},
|
|
10393
|
+
/**
|
|
10394
|
+
* The item that the action will be performed on.
|
|
10395
|
+
*/
|
|
10375
10396
|
item: {
|
|
10376
10397
|
type: Object,
|
|
10377
10398
|
required: true
|
|
10378
10399
|
},
|
|
10400
|
+
/**
|
|
10401
|
+
* Determines if the button should display a label.
|
|
10402
|
+
* If false, the button will use a visually hidden text for accessibility.
|
|
10403
|
+
*/
|
|
10379
10404
|
label: {
|
|
10380
10405
|
type: Boolean,
|
|
10381
10406
|
default: false
|
|
@@ -10414,7 +10439,7 @@ const _hoisted_1$y = {
|
|
|
10414
10439
|
key: 1,
|
|
10415
10440
|
class: "sr-only"
|
|
10416
10441
|
};
|
|
10417
|
-
function _sfc_render$
|
|
10442
|
+
function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10418
10443
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10419
10444
|
return vue.openBlock(), vue.createElementBlock("button", {
|
|
10420
10445
|
type: "button",
|
|
@@ -10428,7 +10453,7 @@ function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10428
10453
|
key: 2
|
|
10429
10454
|
}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)]) : vue.createCommentVNode("", true)]);
|
|
10430
10455
|
}
|
|
10431
|
-
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$
|
|
10456
|
+
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$q]]);
|
|
10432
10457
|
function ActivateItemInjected() {
|
|
10433
10458
|
return {
|
|
10434
10459
|
registerCallbackAfterItemAdd: vue.inject("registerCallbackAfterItemAdd", () => void 0),
|
|
@@ -11019,13 +11044,19 @@ var FTableColumnSort = /* @__PURE__ */ ((FTableColumnSort2) => {
|
|
|
11019
11044
|
return FTableColumnSort2;
|
|
11020
11045
|
})(FTableColumnSort || {});
|
|
11021
11046
|
function addColumn(src, column) {
|
|
11022
|
-
if (
|
|
11047
|
+
if (column.name) {
|
|
11048
|
+
const hasDuplicateName = src.some((it) => it.name === column.name);
|
|
11049
|
+
if (hasDuplicateName) {
|
|
11050
|
+
throw new Error(`Expected FTableColumn to have a unique name but encountered duplicate of "${column.name}"`);
|
|
11051
|
+
}
|
|
11052
|
+
}
|
|
11053
|
+
if (!src.some((col) => col.id === column.id)) {
|
|
11023
11054
|
return [...src, column];
|
|
11024
11055
|
}
|
|
11025
11056
|
return src;
|
|
11026
11057
|
}
|
|
11027
11058
|
function setVisibilityColumn(src, id, visible) {
|
|
11028
|
-
const column = src.find((col) => col.
|
|
11059
|
+
const column = src.find((col) => col.id === id);
|
|
11029
11060
|
if (column) {
|
|
11030
11061
|
column.visible = visible;
|
|
11031
11062
|
}
|
|
@@ -11077,19 +11108,21 @@ function FTableInjected() {
|
|
|
11077
11108
|
renderColumns: vue.inject("renderColumns", false)
|
|
11078
11109
|
};
|
|
11079
11110
|
}
|
|
11080
|
-
const _sfc_main$J = vue.defineComponent({
|
|
11081
|
-
|
|
11082
|
-
|
|
11111
|
+
const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
11112
|
+
...{
|
|
11113
|
+
inheritAttrs: false
|
|
11114
|
+
},
|
|
11115
|
+
__name: "FTableColumn",
|
|
11083
11116
|
props: {
|
|
11084
11117
|
/**
|
|
11085
|
-
* Unique (per-table) identifier.
|
|
11118
|
+
* Unique (per-table) identifier. Typically set to the row
|
|
11119
|
+
* property displayed but any unique string can be used.
|
|
11086
11120
|
*
|
|
11087
|
-
*
|
|
11088
|
-
* be used.
|
|
11121
|
+
* Only required when used with `FSortFilterDataset`.
|
|
11089
11122
|
*/
|
|
11090
11123
|
name: {
|
|
11091
11124
|
type: String,
|
|
11092
|
-
|
|
11125
|
+
default: void 0
|
|
11093
11126
|
},
|
|
11094
11127
|
/**
|
|
11095
11128
|
* If set to true, display the column, set to false to hide it.
|
|
@@ -11166,71 +11199,80 @@ const _sfc_main$J = vue.defineComponent({
|
|
|
11166
11199
|
}
|
|
11167
11200
|
}
|
|
11168
11201
|
},
|
|
11169
|
-
setup() {
|
|
11202
|
+
setup(__props) {
|
|
11170
11203
|
const {
|
|
11171
11204
|
renderColumns,
|
|
11172
11205
|
setVisibilityColumn: setVisibilityColumn2,
|
|
11173
11206
|
addColumn: addColumn2
|
|
11174
11207
|
} = FTableInjected();
|
|
11175
|
-
|
|
11176
|
-
|
|
11177
|
-
|
|
11178
|
-
|
|
11179
|
-
|
|
11180
|
-
|
|
11181
|
-
|
|
11182
|
-
|
|
11183
|
-
|
|
11184
|
-
|
|
11185
|
-
|
|
11186
|
-
|
|
11187
|
-
|
|
11188
|
-
tagName() {
|
|
11189
|
-
if (this.rowHeader) {
|
|
11208
|
+
const internalVisible = vue.ref(true);
|
|
11209
|
+
const renderElement = vue.ref(true);
|
|
11210
|
+
const id = logic.ElementIdService.generateElementId("column");
|
|
11211
|
+
const el = vue.useTemplateRef("element");
|
|
11212
|
+
const props = __props;
|
|
11213
|
+
const classes = vue.computed(() => {
|
|
11214
|
+
return ["table__column", `table__column--${props.type}`];
|
|
11215
|
+
});
|
|
11216
|
+
const scope = vue.computed(() => {
|
|
11217
|
+
return props.rowHeader ? "row" : null;
|
|
11218
|
+
});
|
|
11219
|
+
const tagName2 = vue.computed(() => {
|
|
11220
|
+
if (props.rowHeader) {
|
|
11190
11221
|
return "th";
|
|
11191
11222
|
} else {
|
|
11192
11223
|
return "td";
|
|
11193
11224
|
}
|
|
11194
|
-
}
|
|
11195
|
-
|
|
11196
|
-
|
|
11197
|
-
|
|
11198
|
-
|
|
11199
|
-
|
|
11225
|
+
});
|
|
11226
|
+
vue.watch(() => props.visible, () => {
|
|
11227
|
+
internalVisible.value = props.visible;
|
|
11228
|
+
setVisibilityColumn2(id, props.visible);
|
|
11229
|
+
});
|
|
11230
|
+
vue.onMounted(() => {
|
|
11231
|
+
if (props.shrink && props.expand) {
|
|
11232
|
+
throw new Error("Table cannot have both shrink and expand enabled at the same time");
|
|
11233
|
+
}
|
|
11234
|
+
const size = props.shrink ? FTableColumnSize.SHRINK : FTableColumnSize.EXPAND;
|
|
11235
|
+
const header = isHeader();
|
|
11236
|
+
if (header) {
|
|
11237
|
+
addColumn2({
|
|
11238
|
+
name: props.name,
|
|
11239
|
+
title: props.title,
|
|
11240
|
+
description: props.description || void 0,
|
|
11241
|
+
id,
|
|
11242
|
+
size,
|
|
11243
|
+
type: props.type,
|
|
11244
|
+
visible: props.visible,
|
|
11245
|
+
sortable: false,
|
|
11246
|
+
sort: FTableColumnSort.UNSORTED
|
|
11247
|
+
});
|
|
11200
11248
|
}
|
|
11201
|
-
|
|
11202
|
-
|
|
11203
|
-
created() {
|
|
11204
|
-
if (this.shrink && this.expand) {
|
|
11205
|
-
throw new Error("Table cannot have both shrink and expand enabled at the same time");
|
|
11206
|
-
}
|
|
11207
|
-
const size = this.shrink ? FTableColumnSize.SHRINK : FTableColumnSize.EXPAND;
|
|
11208
|
-
this.addColumn({
|
|
11209
|
-
name: this.name,
|
|
11210
|
-
title: this.title,
|
|
11211
|
-
description: this.description || void 0,
|
|
11212
|
-
id: logic.ElementIdService.generateElementId("column"),
|
|
11213
|
-
size,
|
|
11214
|
-
type: this.type,
|
|
11215
|
-
visible: this.visible,
|
|
11216
|
-
sortable: false,
|
|
11217
|
-
sort: FTableColumnSort.UNSORTED
|
|
11249
|
+
renderElement.value = renderColumns && !header;
|
|
11250
|
+
internalVisible.value = props.visible;
|
|
11218
11251
|
});
|
|
11252
|
+
function isHeader() {
|
|
11253
|
+
if (!el.value || !(el.value instanceof HTMLElement)) {
|
|
11254
|
+
return false;
|
|
11255
|
+
}
|
|
11256
|
+
const closest = el.value.closest("thead, tbody");
|
|
11257
|
+
return (closest == null ? void 0 : closest.tagName) === "THEAD";
|
|
11258
|
+
}
|
|
11259
|
+
return (_ctx, _cache) => {
|
|
11260
|
+
return renderElement.value && internalVisible.value ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName2.value), vue.mergeProps({
|
|
11261
|
+
key: 0,
|
|
11262
|
+
ref: "element",
|
|
11263
|
+
class: classes.value,
|
|
11264
|
+
scope: scope.value
|
|
11265
|
+
}, _ctx.$attrs), {
|
|
11266
|
+
default: vue.withCtx(() => [vue.unref(renderColumns) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
11267
|
+
key: 0
|
|
11268
|
+
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[0] || (_cache[0] = vue.createTextVNode()), _cache[1] || (_cache[1] = vue.createElementVNode("span", {
|
|
11269
|
+
class: "sr-only"
|
|
11270
|
+
}, " ", -1))], 64)) : vue.createCommentVNode("", true)]),
|
|
11271
|
+
_: 3
|
|
11272
|
+
}, 16, ["class", "scope"])) : vue.createCommentVNode("", true);
|
|
11273
|
+
};
|
|
11219
11274
|
}
|
|
11220
11275
|
});
|
|
11221
|
-
function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11222
|
-
return _ctx.renderColumns && _ctx.visible ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.tagName), vue.mergeProps({
|
|
11223
|
-
key: 0,
|
|
11224
|
-
class: _ctx.classes,
|
|
11225
|
-
scope: _ctx.scope
|
|
11226
|
-
}, _ctx.$attrs), {
|
|
11227
|
-
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default"), _cache[0] || (_cache[0] = vue.createTextVNode()), _cache[1] || (_cache[1] = vue.createElementVNode("span", {
|
|
11228
|
-
class: "sr-only"
|
|
11229
|
-
}, " ", -1))]),
|
|
11230
|
-
_: 3
|
|
11231
|
-
}, 16, ["class", "scope"])) : vue.createCommentVNode("", true);
|
|
11232
|
-
}
|
|
11233
|
-
const FTableColumn = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$q]]);
|
|
11234
11276
|
function FSortFilterDatasetInjected() {
|
|
11235
11277
|
return {
|
|
11236
11278
|
sort: vue.inject("sort", () => void 0),
|
|
@@ -11284,14 +11326,14 @@ const _hoisted_2$o = {
|
|
|
11284
11326
|
key: 0,
|
|
11285
11327
|
ref: "tooltipAttachTo"
|
|
11286
11328
|
};
|
|
11287
|
-
const _hoisted_3$
|
|
11329
|
+
const _hoisted_3$k = ["for"];
|
|
11288
11330
|
const _hoisted_4$g = ["for"];
|
|
11289
11331
|
const _hoisted_5$d = {
|
|
11290
11332
|
key: 0,
|
|
11291
11333
|
class: "label__message label__message--error"
|
|
11292
11334
|
};
|
|
11293
11335
|
const _hoisted_6$b = ["for"];
|
|
11294
|
-
const _hoisted_7$
|
|
11336
|
+
const _hoisted_7$9 = {
|
|
11295
11337
|
key: 0,
|
|
11296
11338
|
class: "label__message label__message--error"
|
|
11297
11339
|
};
|
|
@@ -11300,7 +11342,7 @@ function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11300
11342
|
return _ctx.$slots.tooltip ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$x, [_ctx.hasDefaultSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [vue.createElementVNode("label", {
|
|
11301
11343
|
class: "label",
|
|
11302
11344
|
for: _ctx.forProperty
|
|
11303
|
-
}, [vue.renderSlot(_ctx.$slots, "default")], 8, _hoisted_3$
|
|
11345
|
+
}, [vue.renderSlot(_ctx.$slots, "default")], 8, _hoisted_3$k)], 512)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "tooltip"), _cache[3] || (_cache[3] = vue.createTextVNode()), _ctx.hasDescriptionSlot || _ctx.hasErrorMessageSlot ? (vue.openBlock(), vue.createElementBlock("label", {
|
|
11304
11346
|
key: 1,
|
|
11305
11347
|
class: "label sr-separator",
|
|
11306
11348
|
for: _ctx.forProperty
|
|
@@ -11317,7 +11359,7 @@ function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11317
11359
|
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "description", {
|
|
11318
11360
|
descriptionClass: _ctx.descriptionClass,
|
|
11319
11361
|
formatDescriptionClass: _ctx.formatDescriptionClass
|
|
11320
|
-
}), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.hasErrorMessageSlot ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$
|
|
11362
|
+
}), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.hasErrorMessageSlot ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$9, [vue.createVNode(_component_f_icon, {
|
|
11321
11363
|
class: "label__icon--left",
|
|
11322
11364
|
name: "error"
|
|
11323
11365
|
}), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "error-message")])) : vue.createCommentVNode("", true)], 8, _hoisted_6$b));
|
|
@@ -11895,7 +11937,7 @@ const _hoisted_2$n = {
|
|
|
11895
11937
|
key: 0,
|
|
11896
11938
|
class: "sr-only"
|
|
11897
11939
|
};
|
|
11898
|
-
const _hoisted_3$
|
|
11940
|
+
const _hoisted_3$j = {
|
|
11899
11941
|
key: 0,
|
|
11900
11942
|
class: "sr-only"
|
|
11901
11943
|
};
|
|
@@ -11907,7 +11949,7 @@ const _hoisted_6$a = {
|
|
|
11907
11949
|
key: 2,
|
|
11908
11950
|
class: "text-field__append-inner"
|
|
11909
11951
|
};
|
|
11910
|
-
const _hoisted_7$
|
|
11952
|
+
const _hoisted_7$8 = {
|
|
11911
11953
|
key: 3,
|
|
11912
11954
|
class: "text-field__append-inner"
|
|
11913
11955
|
};
|
|
@@ -11938,7 +11980,7 @@ function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11938
11980
|
}, [_ctx.descriptionScreenReaderText ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$n, vue.toDisplayString(_ctx.descriptionScreenReaderText), 1)) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createElementVNode("span", null, vue.toDisplayString(_ctx.descriptionText), 1)], 2)) : vue.createCommentVNode("", true), _cache[9] || (_cache[9] = vue.createTextVNode()), _ctx.discreteDescriptionText ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
11939
11981
|
key: 1,
|
|
11940
11982
|
class: vue.normalizeClass(formatDescriptionClass)
|
|
11941
|
-
}, [_ctx.discreteDescriptionScreenReaderText ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
11983
|
+
}, [_ctx.discreteDescriptionScreenReaderText ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$j, vue.toDisplayString(_ctx.discreteDescriptionScreenReaderText), 1)) : vue.createCommentVNode("", true), _cache[8] || (_cache[8] = vue.createTextVNode()), vue.createElementVNode("span", null, vue.toDisplayString(_ctx.discreteDescriptionText), 1)], 2)) : vue.createCommentVNode("", true)])]),
|
|
11942
11984
|
"error-message": vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "error-message", vue.normalizeProps(vue.guardReactiveProps({
|
|
11943
11985
|
hasError: _ctx.hasError,
|
|
11944
11986
|
validationMessage: _ctx.validationMessage
|
|
@@ -11977,7 +12019,7 @@ function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11977
12019
|
"is-open": _ctx.showPopupError,
|
|
11978
12020
|
"error-message": _ctx.validationMessage,
|
|
11979
12021
|
onClose: _ctx.closePopupError
|
|
11980
|
-
}, null, 8, ["anchor", "is-open", "error-message", "onClose"])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = vue.createTextVNode()), _ctx.$slots["append-inner"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$a, [vue.renderSlot(_ctx.$slots, "append-inner")])) : vue.createCommentVNode("", true), _cache[16] || (_cache[16] = vue.createTextVNode()), _ctx.options ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$
|
|
12022
|
+
}, null, 8, ["anchor", "is-open", "error-message", "onClose"])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = vue.createTextVNode()), _ctx.$slots["append-inner"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$a, [vue.renderSlot(_ctx.$slots, "append-inner")])) : vue.createCommentVNode("", true), _cache[16] || (_cache[16] = vue.createTextVNode()), _ctx.options ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$8, [vue.createVNode(_component_i_combobox_toggle_button, {
|
|
11981
12023
|
disabled: _ctx.disabled,
|
|
11982
12024
|
"aria-controls": _ctx.dropdownIsOpen ? _ctx.dropdownId : void 0,
|
|
11983
12025
|
"aria-expanded": _ctx.dropdownIsOpen,
|
|
@@ -12825,20 +12867,14 @@ const _hoisted_1$s = {
|
|
|
12825
12867
|
const _hoisted_2$m = {
|
|
12826
12868
|
class: "sort-filter-dataset__search"
|
|
12827
12869
|
};
|
|
12828
|
-
const _hoisted_3$
|
|
12870
|
+
const _hoisted_3$i = {
|
|
12829
12871
|
class: "sr-only"
|
|
12830
12872
|
};
|
|
12831
12873
|
const _hoisted_4$e = ["title"];
|
|
12832
12874
|
const _hoisted_5$b = {
|
|
12833
12875
|
class: "sr-only"
|
|
12834
12876
|
};
|
|
12835
|
-
const _hoisted_6$9 =
|
|
12836
|
-
value: {
|
|
12837
|
-
attribute: "",
|
|
12838
|
-
ascending: false
|
|
12839
|
-
}
|
|
12840
|
-
};
|
|
12841
|
-
const _hoisted_7$8 = ["value"];
|
|
12877
|
+
const _hoisted_6$9 = ["value"];
|
|
12842
12878
|
const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
12843
12879
|
__name: "FSortFilterDataset",
|
|
12844
12880
|
props: {
|
|
@@ -12906,13 +12942,14 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
12906
12942
|
}) {
|
|
12907
12943
|
const $t2 = useTranslate();
|
|
12908
12944
|
const searchString = vue.ref("");
|
|
12909
|
-
const
|
|
12945
|
+
const defaultSortValue = {
|
|
12910
12946
|
attribute: "",
|
|
12911
12947
|
name: "",
|
|
12912
12948
|
ascendingName: "",
|
|
12913
12949
|
ascending: false,
|
|
12914
12950
|
id: 0
|
|
12915
|
-
}
|
|
12951
|
+
};
|
|
12952
|
+
const sortAttribute = vue.ref(defaultSortValue);
|
|
12916
12953
|
const sortFilterResult = vue.ref([]);
|
|
12917
12954
|
const debouncedFilterResultset = logic.debounce(filterResultset, 250);
|
|
12918
12955
|
let tableCallbackOnSort = () => {
|
|
@@ -13062,7 +13099,7 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
13062
13099
|
maxlength: "64",
|
|
13063
13100
|
onInput: onSearchInput
|
|
13064
13101
|
}, {
|
|
13065
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$
|
|
13102
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$i, vue.toDisplayString(__props.placeholderFilter), 1)]),
|
|
13066
13103
|
_: 1
|
|
13067
13104
|
}, 8, ["modelValue", "placeholder"]), _cache[4] || (_cache[4] = vue.createTextVNode()), showClearButton.value ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
13068
13105
|
key: 0,
|
|
@@ -13087,11 +13124,13 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
13087
13124
|
onChange: onChangeSortAttribute
|
|
13088
13125
|
}, {
|
|
13089
13126
|
label: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.sort-filter-dataset.label.sort", "Sortera på")), 1)]),
|
|
13090
|
-
default: vue.withCtx(() => [_cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("option",
|
|
13127
|
+
default: vue.withCtx(() => [_cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("option", {
|
|
13128
|
+
value: defaultSortValue
|
|
13129
|
+
}, vue.toDisplayString(vue.unref($t2)("fkui.sort-filter-dataset.label.unsorted", "Välj")), 1), _cache[6] || (_cache[6] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(sortOrders.value, (sortOrder) => {
|
|
13091
13130
|
return vue.openBlock(), vue.createElementBlock("option", {
|
|
13092
13131
|
key: sortOrder.id,
|
|
13093
13132
|
value: sortOrder
|
|
13094
|
-
}, vue.toDisplayString(sortOrder.name) + " (" + vue.toDisplayString(sortOrder.ascendingName) + ")\n ", 9,
|
|
13133
|
+
}, vue.toDisplayString(sortOrder.name) + " (" + vue.toDisplayString(sortOrder.ascendingName) + ")\n ", 9, _hoisted_6$9);
|
|
13095
13134
|
}), 128))]),
|
|
13096
13135
|
_: 1
|
|
13097
13136
|
}, 8, ["modelValue"])]),
|
|
@@ -13112,7 +13151,7 @@ const _hoisted_1$r = ["tabindex"];
|
|
|
13112
13151
|
const _hoisted_2$l = {
|
|
13113
13152
|
key: 0
|
|
13114
13153
|
};
|
|
13115
|
-
const _hoisted_3$
|
|
13154
|
+
const _hoisted_3$h = {
|
|
13116
13155
|
class: "table__row"
|
|
13117
13156
|
};
|
|
13118
13157
|
const _hoisted_4$d = ["innerHTML"];
|
|
@@ -13259,6 +13298,9 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
13259
13298
|
return;
|
|
13260
13299
|
}
|
|
13261
13300
|
let columnName = column.name;
|
|
13301
|
+
if (!columnName) {
|
|
13302
|
+
throw new Error("`FTableColumn` must have a unique `name` when used with `FSortFilterDataset`");
|
|
13303
|
+
}
|
|
13262
13304
|
if (column.sort === FTableColumnSort.DESCENDING) {
|
|
13263
13305
|
columnName = "";
|
|
13264
13306
|
column.sort = FTableColumnSort.UNSORTED;
|
|
@@ -13280,12 +13322,14 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
13280
13322
|
}, [vue.createElementVNode("table", vue.mergeProps({
|
|
13281
13323
|
class: ["table", tableClasses.value],
|
|
13282
13324
|
tabindex: tabindex.value
|
|
13283
|
-
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$l, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[
|
|
13325
|
+
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$l, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(columns.value, (column) => {
|
|
13284
13326
|
return vue.openBlock(), vue.createElementBlock("col", {
|
|
13285
13327
|
key: column.id,
|
|
13286
13328
|
class: vue.normalizeClass(column.size)
|
|
13287
13329
|
}, null, 2);
|
|
13288
|
-
}), 128))]), _cache[
|
|
13330
|
+
}), 128))]), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_3$h, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
13331
|
+
row: {}
|
|
13332
|
+
}))), _cache[2] || (_cache[2] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleColumns.value, (column) => {
|
|
13289
13333
|
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
13290
13334
|
key: column.id,
|
|
13291
13335
|
scope: "col",
|
|
@@ -13299,12 +13343,12 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
13299
13343
|
class: vue.normalizeClass(iconClasses2(column)),
|
|
13300
13344
|
name: iconName(column)
|
|
13301
13345
|
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$a, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
13302
|
-
}), 128))])]), _cache[
|
|
13346
|
+
}), 128))])]), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createElementVNode("tbody", null, [isEmpty.value && columns.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_6$8, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
13303
13347
|
row: {}
|
|
13304
|
-
})))])) : vue.createCommentVNode("", true), _cache[
|
|
13348
|
+
})))])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_7$7, [vue.createElementVNode("td", {
|
|
13305
13349
|
class: "table__column table__column--action",
|
|
13306
13350
|
colspan: columns.value.length
|
|
13307
|
-
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.data-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_8$5)])) : vue.createCommentVNode("", true), _cache[
|
|
13351
|
+
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.data-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_8$5)])) : vue.createCommentVNode("", true), _cache[4] || (_cache[4] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(internalRows.value, (row) => {
|
|
13308
13352
|
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
13309
13353
|
key: rowKey(row),
|
|
13310
13354
|
class: "table__row"
|
|
@@ -13655,7 +13699,7 @@ const _hoisted_1$q = {
|
|
|
13655
13699
|
class: "datepicker-field"
|
|
13656
13700
|
};
|
|
13657
13701
|
const _hoisted_2$k = ["disabled", "aria-expanded"];
|
|
13658
|
-
const _hoisted_3$
|
|
13702
|
+
const _hoisted_3$g = {
|
|
13659
13703
|
class: "sr-only"
|
|
13660
13704
|
};
|
|
13661
13705
|
const _hoisted_4$c = {
|
|
@@ -13706,7 +13750,7 @@ function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13706
13750
|
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.onClickCalendarButton())
|
|
13707
13751
|
}, [vue.createVNode(_component_f_icon, {
|
|
13708
13752
|
name: "calendar"
|
|
13709
|
-
}), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$
|
|
13753
|
+
}), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$g, vue.toDisplayString(_ctx.calendarButtonText), 1)], 8, _hoisted_2$k)]),
|
|
13710
13754
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.datepicker-field.label", "Datum")), 1)]), _cache[7] || (_cache[7] = vue.createTextVNode()), _cache[8] || (_cache[8] = vue.createTextVNode()), _cache[9] || (_cache[9] = vue.createTextVNode()), _cache[10] || (_cache[10] = vue.createTextVNode())]),
|
|
13711
13755
|
_: 2
|
|
13712
13756
|
}, [_ctx.$slots.tooltip ? {
|
|
@@ -13846,7 +13890,7 @@ const _hoisted_2$j = {
|
|
|
13846
13890
|
key: 0,
|
|
13847
13891
|
class: "dialogue-tree__list"
|
|
13848
13892
|
};
|
|
13849
|
-
const _hoisted_3$
|
|
13893
|
+
const _hoisted_3$f = ["onClick"];
|
|
13850
13894
|
function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
13851
13895
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
13852
13896
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$p, [_ctx.options.length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_2$j, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (option, index) => {
|
|
@@ -13860,7 +13904,7 @@ function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13860
13904
|
onClick: ($event) => _ctx.onClickedOption(option, index)
|
|
13861
13905
|
}, [vue.createElementVNode("span", null, vue.toDisplayString(option.label), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
13862
13906
|
name: "arrow-right"
|
|
13863
|
-
})], 8, _hoisted_3$
|
|
13907
|
+
})], 8, _hoisted_3$f)]);
|
|
13864
13908
|
}), 128))])) : vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.mergeProps({
|
|
13865
13909
|
key: 1
|
|
13866
13910
|
}, {
|
|
@@ -13915,6 +13959,10 @@ const _sfc_main$o = vue.defineComponent({
|
|
|
13915
13959
|
required: false,
|
|
13916
13960
|
default: 0
|
|
13917
13961
|
},
|
|
13962
|
+
/**
|
|
13963
|
+
* Text template for the screen reader notification text.
|
|
13964
|
+
* Use `%VALUE%` as a placeholder for the number of notifications.
|
|
13965
|
+
*/
|
|
13918
13966
|
screenReaderNotificationTemplate: {
|
|
13919
13967
|
type: String,
|
|
13920
13968
|
required: false,
|
|
@@ -13946,7 +13994,7 @@ const _hoisted_1$o = ["aria-expanded", "aria-controls"];
|
|
|
13946
13994
|
const _hoisted_2$i = {
|
|
13947
13995
|
class: "expandable-panel__icon"
|
|
13948
13996
|
};
|
|
13949
|
-
const _hoisted_3$
|
|
13997
|
+
const _hoisted_3$e = {
|
|
13950
13998
|
class: "icon-stack"
|
|
13951
13999
|
};
|
|
13952
14000
|
const _hoisted_4$b = ["title"];
|
|
@@ -13975,7 +14023,7 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13975
14023
|
"aria-controls": _ctx.id
|
|
13976
14024
|
}, _ctx.$attrs, {
|
|
13977
14025
|
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClickHeadingButton && _ctx.onClickHeadingButton(...args))
|
|
13978
|
-
}), [vue.createElementVNode("span", _hoisted_2$i, [vue.createElementVNode("span", _hoisted_3$
|
|
14026
|
+
}), [vue.createElementVNode("span", _hoisted_2$i, [vue.createElementVNode("span", _hoisted_3$e, [vue.createVNode(_component_f_icon, {
|
|
13979
14027
|
name: "dash"
|
|
13980
14028
|
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
13981
14029
|
name: "dash"
|
|
@@ -14085,7 +14133,7 @@ const _hoisted_1$n = ["aria-expanded", "aria-controls"];
|
|
|
14085
14133
|
const _hoisted_2$h = {
|
|
14086
14134
|
class: "expandable-paragraph__icon"
|
|
14087
14135
|
};
|
|
14088
|
-
const _hoisted_3$
|
|
14136
|
+
const _hoisted_3$d = {
|
|
14089
14137
|
class: "icon-stack"
|
|
14090
14138
|
};
|
|
14091
14139
|
const _hoisted_4$a = {
|
|
@@ -14117,7 +14165,7 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14117
14165
|
"aria-controls": _ctx.id
|
|
14118
14166
|
}, _ctx.$attrs, {
|
|
14119
14167
|
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClickMinimize && _ctx.onClickMinimize(...args))
|
|
14120
|
-
}), [vue.createElementVNode("span", _hoisted_2$h, [vue.createElementVNode("span", _hoisted_3$
|
|
14168
|
+
}), [vue.createElementVNode("span", _hoisted_2$h, [vue.createElementVNode("span", _hoisted_3$d, [vue.createVNode(_component_f_icon, {
|
|
14121
14169
|
name: "dash"
|
|
14122
14170
|
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
14123
14171
|
name: "dash"
|
|
@@ -14225,7 +14273,7 @@ const _hoisted_1$m = {
|
|
|
14225
14273
|
const _hoisted_2$g = {
|
|
14226
14274
|
class: "file-item__row"
|
|
14227
14275
|
};
|
|
14228
|
-
const _hoisted_3$
|
|
14276
|
+
const _hoisted_3$c = ["id"];
|
|
14229
14277
|
const _hoisted_4$9 = {
|
|
14230
14278
|
class: "icon-stack button__icon icon-stack--new-window"
|
|
14231
14279
|
};
|
|
@@ -14248,7 +14296,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14248
14296
|
name: "new-window"
|
|
14249
14297
|
}), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
14250
14298
|
name: _ctx.iconName
|
|
14251
|
-
}, null, 8, ["name"])]), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_5$7, vue.toDisplayString(_ctx.fileName), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_6$5, " " + vue.toDisplayString(_ctx.$t("fkui.file-item.file-open", "öppnas i nytt fönster")), 1)], 16, _hoisted_3$
|
|
14299
|
+
}, null, 8, ["name"])]), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_5$7, vue.toDisplayString(_ctx.fileName), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_6$5, " " + vue.toDisplayString(_ctx.$t("fkui.file-item.file-open", "öppnas i nytt fönster")), 1)], 16, _hoisted_3$c), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "row")]), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.isMimeTypeChanged ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$4, vue.toDisplayString(_ctx.mimeTypeChangedText), 1)) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), _cache[7] || (_cache[7] = vue.createElementVNode("hr", {
|
|
14252
14300
|
class: "file-item__separator"
|
|
14253
14301
|
}, null, -1))]);
|
|
14254
14302
|
}
|
|
@@ -14274,6 +14322,9 @@ const _sfc_main$l = vue.defineComponent({
|
|
|
14274
14322
|
required: false,
|
|
14275
14323
|
default: () => logic.ElementIdService.generateElementId()
|
|
14276
14324
|
},
|
|
14325
|
+
/**
|
|
14326
|
+
* Disables the file selector.
|
|
14327
|
+
*/
|
|
14277
14328
|
disabled: {
|
|
14278
14329
|
type: Boolean,
|
|
14279
14330
|
required: false,
|
|
@@ -14318,7 +14369,7 @@ const _hoisted_1$l = {
|
|
|
14318
14369
|
class: "file-selector"
|
|
14319
14370
|
};
|
|
14320
14371
|
const _hoisted_2$f = ["id", "aria-labelledby", "aria-disabled"];
|
|
14321
|
-
const _hoisted_3$
|
|
14372
|
+
const _hoisted_3$b = ["id", "for"];
|
|
14322
14373
|
function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
14323
14374
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
14324
14375
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$l, [vue.createElementVNode("input", vue.mergeProps({
|
|
@@ -14338,7 +14389,7 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14338
14389
|
}, [vue.createVNode(_component_f_icon, {
|
|
14339
14390
|
class: "button__icon",
|
|
14340
14391
|
name: "paper-clip"
|
|
14341
|
-
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$
|
|
14392
|
+
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$b)]);
|
|
14342
14393
|
}
|
|
14343
14394
|
const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$e]]);
|
|
14344
14395
|
const keybindings = {
|
|
@@ -14456,7 +14507,7 @@ const _hoisted_1$k = ["role"];
|
|
|
14456
14507
|
const _hoisted_2$e = {
|
|
14457
14508
|
key: 0
|
|
14458
14509
|
};
|
|
14459
|
-
const _hoisted_3$
|
|
14510
|
+
const _hoisted_3$a = {
|
|
14460
14511
|
key: 0,
|
|
14461
14512
|
class: "table__column--shrink"
|
|
14462
14513
|
};
|
|
@@ -14658,7 +14709,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14658
14709
|
expandableRows,
|
|
14659
14710
|
hasExpandableContent
|
|
14660
14711
|
} = expandableTable;
|
|
14661
|
-
const
|
|
14712
|
+
const tbody = vue.useTemplateRef("tbodyElement");
|
|
14662
14713
|
const hasCaption = vue.computed(() => {
|
|
14663
14714
|
return hasSlot2("caption", {}, {
|
|
14664
14715
|
stripClasses: []
|
|
@@ -14740,21 +14791,21 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14740
14791
|
immediate: true,
|
|
14741
14792
|
deep: true
|
|
14742
14793
|
});
|
|
14743
|
-
function updateTr(
|
|
14744
|
-
const trElements = [].slice.call(
|
|
14794
|
+
function updateTr(tbodyElement) {
|
|
14795
|
+
const trElements = [].slice.call(tbodyElement.children);
|
|
14745
14796
|
const trInteractableElements = trElements.filter((tr2) => {
|
|
14746
14797
|
return tr2.tabIndex === 0;
|
|
14747
14798
|
});
|
|
14748
14799
|
tr.value = trInteractableElements;
|
|
14749
14800
|
}
|
|
14750
14801
|
vue.onUpdated(() => {
|
|
14751
|
-
if (
|
|
14752
|
-
updateTr(
|
|
14802
|
+
if (tbody.value) {
|
|
14803
|
+
updateTr(tbody.value);
|
|
14753
14804
|
}
|
|
14754
14805
|
});
|
|
14755
14806
|
vue.onMounted(() => {
|
|
14756
|
-
if (
|
|
14757
|
-
updateTr(
|
|
14807
|
+
if (tbody.value) {
|
|
14808
|
+
updateTr(tbody.value);
|
|
14758
14809
|
}
|
|
14759
14810
|
registerCallbackOnSort(callbackOnSort);
|
|
14760
14811
|
registerCallbackOnMount(callbackSortableColumns);
|
|
@@ -14868,6 +14919,9 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14868
14919
|
return;
|
|
14869
14920
|
}
|
|
14870
14921
|
let columnName = column.name;
|
|
14922
|
+
if (!columnName) {
|
|
14923
|
+
throw new Error("`FTableColumn` must have a unique `name` when used with `FSortFilterDataset`");
|
|
14924
|
+
}
|
|
14871
14925
|
if (column.sort === FTableColumnSort.DESCENDING) {
|
|
14872
14926
|
columnName = "";
|
|
14873
14927
|
column.sort = FTableColumnSort.UNSORTED;
|
|
@@ -14912,15 +14966,17 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14912
14966
|
return (_ctx, _cache) => {
|
|
14913
14967
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
14914
14968
|
class: vue.normalizeClass(wrapperClasses.value)
|
|
14915
|
-
}, [vue.createCommentVNode("", true), _cache[
|
|
14969
|
+
}, [vue.createCommentVNode("", true), _cache[19] || (_cache[19] = vue.createTextVNode()), vue.createElementVNode("table", vue.mergeProps({
|
|
14916
14970
|
class: ["table", tableClasses.value],
|
|
14917
14971
|
role: tableRole.value
|
|
14918
|
-
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$e, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[
|
|
14972
|
+
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$e, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[16] || (_cache[16] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_3$a)) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_4$8)) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(columns.value, (column) => {
|
|
14919
14973
|
return vue.openBlock(), vue.createElementBlock("col", {
|
|
14920
14974
|
key: column.id,
|
|
14921
14975
|
class: vue.normalizeClass(column.size)
|
|
14922
14976
|
}, null, 2);
|
|
14923
|
-
}), 128))]), _cache[
|
|
14977
|
+
}), 128))]), _cache[17] || (_cache[17] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_5$6, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
14978
|
+
row: {}
|
|
14979
|
+
}))), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_6$4, [vue.createElementVNode("span", _hoisted_7$3, vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.select", "Expandera")), 1)])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_8$3, [vue.createElementVNode("span", _hoisted_9$3, vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.select", "Markera")), 1)])) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleColumns.value, (column) => {
|
|
14924
14980
|
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
14925
14981
|
key: column.id,
|
|
14926
14982
|
scope: "col",
|
|
@@ -14934,9 +14990,8 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14934
14990
|
class: vue.normalizeClass(iconClasses2(column)),
|
|
14935
14991
|
name: iconName(column)
|
|
14936
14992
|
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_11$1, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
14937
|
-
}), 128))])]), _cache[
|
|
14938
|
-
|
|
14939
|
-
ref: tbodyElement,
|
|
14993
|
+
}), 128))])]), _cache[18] || (_cache[18] = vue.createTextVNode()), (vue.openBlock(), vue.createElementBlock("tbody", {
|
|
14994
|
+
ref: "tbodyElement",
|
|
14940
14995
|
key: tbodyKey.value
|
|
14941
14996
|
}, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(internalRows.value, (row, index) => {
|
|
14942
14997
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
@@ -14953,7 +15008,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14953
15008
|
}, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_13, [vue.unref(hasExpandableContent)(row) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14, [vue.createVNode(vue.unref(FIcon), {
|
|
14954
15009
|
name: "arrow-right",
|
|
14955
15010
|
rotate: vue.unref(isExpanded)(row) ? "270" : "90"
|
|
14956
|
-
}, null, 8, ["rotate"])])) : vue.createCommentVNode("", true)])) : vue.createCommentVNode("", true), _cache[
|
|
15011
|
+
}, null, 8, ["rotate"])])) : vue.createCommentVNode("", true)])) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_15, [vue.createElementVNode("div", _hoisted_16, [vue.createVNode(vue.unref(FCheckboxField), {
|
|
14957
15012
|
value: true,
|
|
14958
15013
|
"model-value": isSelected(row),
|
|
14959
15014
|
onClick: vue.withModifiers(($event) => onSelect(row), ["self"])
|
|
@@ -14964,20 +15019,20 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14964
15019
|
row
|
|
14965
15020
|
}))])) : vue.createCommentVNode("", true)]),
|
|
14966
15021
|
_: 2
|
|
14967
|
-
}, 1032, ["model-value", "onClick"])])])) : vue.createCommentVNode("", true), _cache[
|
|
15022
|
+
}, 1032, ["model-value", "onClick"])])])) : vue.createCommentVNode("", true), _cache[8] || (_cache[8] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14968
15023
|
ref_for: true
|
|
14969
15024
|
}, {
|
|
14970
15025
|
row
|
|
14971
|
-
}))], 42, _hoisted_12$1), _cache[
|
|
15026
|
+
}))], 42, _hoisted_12$1), _cache[12] || (_cache[12] = vue.createTextVNode()), vue.unref(isExpandableTable) && vue.unref(hasExpandableContent)(row) ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, {
|
|
14972
15027
|
key: 0
|
|
14973
15028
|
}, vue.renderList(vue.unref(expandableRows)(row), (expandableRow, expandableIndex) => {
|
|
14974
15029
|
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
14975
15030
|
key: rowKey(expandableRow),
|
|
14976
15031
|
"aria-level": "2",
|
|
14977
15032
|
class: vue.normalizeClass(vue.unref(expandableRowClasses)(row, expandableIndex))
|
|
14978
|
-
}, [_cache[
|
|
15033
|
+
}, [_cache[9] || (_cache[9] = vue.createElementVNode("td", {
|
|
14979
15034
|
class: "table__column--placeholder"
|
|
14980
|
-
}, null, -1)), _cache[
|
|
15035
|
+
}, null, -1)), _cache[10] || (_cache[10] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_18)) : vue.createCommentVNode("", true), _cache[11] || (_cache[11] = vue.createTextVNode()), !vue.unref(hasExpandableSlot) ? vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14981
15036
|
key: 1,
|
|
14982
15037
|
ref_for: true
|
|
14983
15038
|
}, {
|
|
@@ -14993,12 +15048,12 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14993
15048
|
parentRow: row
|
|
14994
15049
|
}))], 8, _hoisted_19))], 2);
|
|
14995
15050
|
}), 128)) : vue.createCommentVNode("", true)], 64);
|
|
14996
|
-
}), 128)), _cache[
|
|
15051
|
+
}), 128)), _cache[14] || (_cache[14] = vue.createTextVNode()), isEmpty.value && columns.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_20, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
14997
15052
|
row: {}
|
|
14998
|
-
})))])) : vue.createCommentVNode("", true), _cache[
|
|
15053
|
+
})))])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_21, [vue.createElementVNode("td", {
|
|
14999
15054
|
class: "table__column table__column--action",
|
|
15000
15055
|
colspan: nbOfColumns.value
|
|
15001
|
-
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_22), _cache[
|
|
15056
|
+
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_22), _cache[13] || (_cache[13] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
15002
15057
|
row: {}
|
|
15003
15058
|
})))])) : vue.createCommentVNode("", true)]))], 16, _hoisted_1$k)], 2);
|
|
15004
15059
|
};
|
|
@@ -15037,7 +15092,7 @@ const _hoisted_2$d = {
|
|
|
15037
15092
|
ref: "header",
|
|
15038
15093
|
class: "layout-application-template__header"
|
|
15039
15094
|
};
|
|
15040
|
-
const _hoisted_3$
|
|
15095
|
+
const _hoisted_3$9 = {
|
|
15041
15096
|
key: 1
|
|
15042
15097
|
};
|
|
15043
15098
|
const _hoisted_4$7 = {
|
|
@@ -15051,7 +15106,7 @@ const _hoisted_5$5 = {
|
|
|
15051
15106
|
function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
15052
15107
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$j, [_ctx.showHeader || _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("header", _hoisted_2$d, [_ctx.showHeader ? vue.renderSlot(_ctx.$slots, "header", {
|
|
15053
15108
|
key: 0
|
|
15054
|
-
}) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_3$
|
|
15109
|
+
}) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_3$9, [vue.renderSlot(_ctx.$slots, "top-navigation")])) : vue.createCommentVNode("", true)], 512)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("main", _hoisted_4$7, [vue.renderSlot(_ctx.$slots, "default"), _cache[1] || (_cache[1] = vue.createTextVNode()), _ctx.showFooter ? (vue.openBlock(), vue.createElementBlock("footer", _hoisted_5$5, [vue.renderSlot(_ctx.$slots, "footer")])) : vue.createCommentVNode("", true)], 512)]);
|
|
15055
15110
|
}
|
|
15056
15111
|
const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$d]]);
|
|
15057
15112
|
function getGridClasses(target) {
|
|
@@ -15243,7 +15298,7 @@ const _hoisted_1$i = {
|
|
|
15243
15298
|
class: "layout-navigation"
|
|
15244
15299
|
};
|
|
15245
15300
|
const _hoisted_2$c = ["aria-expanded"];
|
|
15246
|
-
const _hoisted_3$
|
|
15301
|
+
const _hoisted_3$8 = {
|
|
15247
15302
|
class: "layout-navigation__navigation__inner"
|
|
15248
15303
|
};
|
|
15249
15304
|
const _hoisted_4$6 = {
|
|
@@ -15257,7 +15312,7 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
15257
15312
|
class: "layout-navigation__navigation",
|
|
15258
15313
|
style: vue.normalizeStyle(_ctx.navigationStyle),
|
|
15259
15314
|
"aria-expanded": _ctx.isOpen
|
|
15260
|
-
}, [vue.createElementVNode("div", _hoisted_3$
|
|
15315
|
+
}, [vue.createElementVNode("div", _hoisted_3$8, [_ctx.isOpen ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
15261
15316
|
key: 0
|
|
15262
15317
|
}, [vue.createElementVNode("div", {
|
|
15263
15318
|
class: "layout-navigation__navigation__inner__title",
|
|
@@ -15502,7 +15557,7 @@ const _hoisted_2$a = {
|
|
|
15502
15557
|
key: 0,
|
|
15503
15558
|
class: "list__item"
|
|
15504
15559
|
};
|
|
15505
|
-
const _hoisted_3$
|
|
15560
|
+
const _hoisted_3$7 = {
|
|
15506
15561
|
class: "list__item__itempane"
|
|
15507
15562
|
};
|
|
15508
15563
|
const _hoisted_4$5 = ["id", "aria-labelledby", "tabindex", "onKeydown"];
|
|
@@ -15762,7 +15817,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
|
15762
15817
|
}, {
|
|
15763
15818
|
item
|
|
15764
15819
|
}))], 512)]);
|
|
15765
|
-
}), 128)), _cache[0] || (_cache[0] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$a, [vue.createElementVNode("div", _hoisted_3$
|
|
15820
|
+
}), 128)), _cache[0] || (_cache[0] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$a, [vue.createElementVNode("div", _hoisted_3$7, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createElementVNode("em", null, vue.toDisplayString(vue.unref($t2)("fkui.list.empty", "Listan är tom")), 1)])])])) : vue.createCommentVNode("", true)])) : (vue.openBlock(), vue.createElementBlock("ul", {
|
|
15766
15821
|
key: 1,
|
|
15767
15822
|
ref_key: "ulElement",
|
|
15768
15823
|
ref: ulElement,
|
|
@@ -16561,7 +16616,7 @@ const _sfc_main$c = vue.defineComponent({
|
|
|
16561
16616
|
});
|
|
16562
16617
|
const _hoisted_1$c = ["aria-label"];
|
|
16563
16618
|
const _hoisted_2$8 = ["data-ref-index", "onClick"];
|
|
16564
|
-
const _hoisted_3$
|
|
16619
|
+
const _hoisted_3$6 = {
|
|
16565
16620
|
class: "imenu__list__anchor-container"
|
|
16566
16621
|
};
|
|
16567
16622
|
const _hoisted_4$4 = ["data-ref-index", "href", "target"];
|
|
@@ -16602,7 +16657,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16602
16657
|
class: vue.normalizeClass(_ctx.itemClasses(item, index)),
|
|
16603
16658
|
role: "none",
|
|
16604
16659
|
onClick: (event) => _ctx.onClickItem(event, item)
|
|
16605
|
-
}, [vue.createElementVNode("div", _hoisted_3$
|
|
16660
|
+
}, [vue.createElementVNode("div", _hoisted_3$6, [vue.createElementVNode("a", {
|
|
16606
16661
|
ref_for: true,
|
|
16607
16662
|
ref: "anchors",
|
|
16608
16663
|
"data-ref-index": index,
|
|
@@ -16697,7 +16752,7 @@ const _hoisted_2$7 = {
|
|
|
16697
16752
|
key: 0,
|
|
16698
16753
|
class: "offline"
|
|
16699
16754
|
};
|
|
16700
|
-
const _hoisted_3$
|
|
16755
|
+
const _hoisted_3$5 = {
|
|
16701
16756
|
class: "icon-stack icon-stack--error"
|
|
16702
16757
|
};
|
|
16703
16758
|
const _hoisted_4$3 = {
|
|
@@ -16720,7 +16775,7 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16720
16775
|
shrink: "",
|
|
16721
16776
|
align: "center"
|
|
16722
16777
|
}, {
|
|
16723
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$
|
|
16778
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$5, [vue.createVNode(_component_f_icon, {
|
|
16724
16779
|
name: "triangle"
|
|
16725
16780
|
}), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
16726
16781
|
name: "alert"
|
|
@@ -16849,7 +16904,7 @@ const _hoisted_1$9 = {
|
|
|
16849
16904
|
const _hoisted_2$5 = {
|
|
16850
16905
|
key: 0
|
|
16851
16906
|
};
|
|
16852
|
-
const _hoisted_3$
|
|
16907
|
+
const _hoisted_3$4 = {
|
|
16853
16908
|
ref: "header",
|
|
16854
16909
|
class: "page-header"
|
|
16855
16910
|
};
|
|
@@ -16870,7 +16925,7 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16870
16925
|
}, {
|
|
16871
16926
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "skip-link-text")]),
|
|
16872
16927
|
_: 3
|
|
16873
|
-
}, 8, ["href"])])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$
|
|
16928
|
+
}, 8, ["href"])])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$4, [_ctx.hasLogo ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$2, [vue.renderSlot(_ctx.$slots, "logo")])) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.headerTag), {
|
|
16874
16929
|
class: "page-header__app-name"
|
|
16875
16930
|
}, {
|
|
16876
16931
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default")]),
|
|
@@ -17015,7 +17070,7 @@ registerLayout({
|
|
|
17015
17070
|
}
|
|
17016
17071
|
}
|
|
17017
17072
|
});
|
|
17018
|
-
const styleContent = ':host {\n display: block;\n}\n\n.page-layout {\n display: grid;\n height: 100cqh;\n width: min(100%, 100cqw);\n\n &[part~="simple"] {\n grid-template:\n "header" min-content\n "content" 1fr\n "footer" min-content\n / 1fr;\n\n [part="area header"],\n [part="area footer"] {\n background: var(--f-background-pageheader-primary);\n color: var(--fkds-color-text-inverted);\n }\n\n [part="area content"] {\n background: var(--fkds-color-background-primary);\n color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="left-panel"] {\n grid-template:\n "header header" min-content\n "left content" 1fr\n "footer footer" min-content\n / min-content 1fr;\n\n [part="area header"],\n [part="area footer"] {\n background: var(--f-background-pageheader-primary);\n color: var(--fkds-color-text-inverted);\n }\n\n [part="area left"] {\n background: var(--fkds-color-background-secondary);\n }\n\n [part="area content"] {\n background: var(--fkds-color-background-primary);\n color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="right-panel"] {\n grid-template:\n "header header" min-content\n "content right" 1fr\n "footer footer" min-content\n / 1fr min-content;\n\n [part="area header"],\n [part="area footer"] {\n background: var(--f-background-pageheader-primary);\n color: var(--fkds-color-text-inverted);\n }\n\n [part="area right"] {\n background: var(--fkds-color-background-secondary);\n color: var(--fkds-color-text-primary);\n }\n\n [part="area content"] {\n background: var(--fkds-color-background-primary);\n color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="three-column"] {\n grid-template:\n "header header header" min-content\n "left content right" 1fr\n "footer footer footer" min-content\n / min-content 1fr min-content;\n\n [part="area header"],\n [part="area footer"] {\n background: var(--f-background-pageheader-primary);\n color: var(--fkds-color-text-inverted);\n }\n\n [part="area left"],\n [part="area right"] {\n background: var(--fkds-color-background-secondary);\n color: var(--fkds-color-text-primary);\n }\n\n [part="area content"] {\n background: var(--fkds-color-background-primary);\n color: var(--fkds-color-text-primary);\n }\n }\n}\n\n.page-layout__area {\n display: flex;\n position: relative;\n\n &[data-direction="column"] {\n flex-direction: column;\n }\n\n &[data-direction="row"] {\n flex-direction: row;\n }\n\n &[data-scroll] {\n overflow-y: auto;\n }\n\n &:empty {\n display: none;\n }\n}\n\n:host ::slotted(*) {\n display: contents;\n}\n';
|
|
17073
|
+
const styleContent = ':host {\n display: block;\n}\n\n.page-layout {\n display: grid;\n height: 100cqh;\n width: min(100%, 100cqw);\n\n &[part~="simple"] {\n grid-template:\n "header" min-content\n "content" 1fr\n "footer" min-content\n / 1fr;\n\n [part="area header"],\n [part="area footer"] {\n --f-page-layout-background: var(--f-background-pageheader-primary);\n --f-page-layout-color: var(--fkds-color-text-inverted);\n }\n\n [part="area content"] {\n --f-page-layout-background: var(--fkds-color-background-primary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="left-panel"] {\n grid-template:\n "header header" min-content\n "left content" 1fr\n "footer footer" min-content\n / min-content 1fr;\n\n [part="area header"],\n [part="area footer"] {\n --f-page-layout-background: var(--f-background-pageheader-primary);\n --f-page-layout-color: var(--fkds-color-text-inverted);\n }\n\n [part="area left"] {\n --f-page-layout-background: var(--fkds-color-background-secondary);\n }\n\n [part="area content"] {\n --f-page-layout-background: var(--fkds-color-background-primary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="right-panel"] {\n grid-template:\n "header header" min-content\n "content right" 1fr\n "footer footer" min-content\n / 1fr min-content;\n\n [part="area header"],\n [part="area footer"] {\n --f-page-layout-background: var(--f-background-pageheader-primary);\n --f-page-layout-color: var(--fkds-color-text-inverted);\n }\n\n [part="area right"] {\n --f-page-layout-background: var(--fkds-color-background-secondary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n\n [part="area content"] {\n --f-page-layout-background: var(--fkds-color-background-primary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n }\n\n &[part~="three-column"] {\n grid-template:\n "header header header" min-content\n "left content right" 1fr\n "footer footer footer" min-content\n / min-content 1fr min-content;\n\n [part="area header"],\n [part="area footer"] {\n --f-page-layout-background: var(--f-background-pageheader-primary);\n --f-page-layout-color: var(--fkds-color-text-inverted);\n }\n\n [part="area left"],\n [part="area right"] {\n --f-page-layout-background: var(--fkds-color-background-secondary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n\n [part="area content"] {\n --f-page-layout-background: var(--fkds-color-background-primary);\n --f-page-layout-color: var(--fkds-color-text-primary);\n }\n }\n}\n\n.page-layout__area {\n display: flex;\n position: relative;\n background: var(--f-page-layout-background);\n color: var(--f-page-layout-color);\n\n &[data-direction="column"] {\n flex-direction: column;\n }\n\n &[data-direction="row"] {\n flex-direction: row;\n }\n\n &[data-scroll] {\n overflow-y: auto;\n }\n\n &:empty {\n display: none;\n }\n}\n\n:host ::slotted(*) {\n display: contents;\n}\n';
|
|
17019
17074
|
const stubLayout = defineLayout({
|
|
17020
17075
|
name: "",
|
|
17021
17076
|
areas: {}
|
|
@@ -17292,7 +17347,7 @@ const _hoisted_1$7 = {
|
|
|
17292
17347
|
class: "progress"
|
|
17293
17348
|
};
|
|
17294
17349
|
const _hoisted_2$4 = ["aria-label", "aria-valuenow", "aria-valuetext"];
|
|
17295
|
-
const _hoisted_3$
|
|
17350
|
+
const _hoisted_3$3 = {
|
|
17296
17351
|
class: "sr-only"
|
|
17297
17352
|
};
|
|
17298
17353
|
const MIN_VALUE = 0;
|
|
@@ -17363,7 +17418,7 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17363
17418
|
"aria-valuenow": progressValueNow.value,
|
|
17364
17419
|
"aria-valuetext": progressText.value,
|
|
17365
17420
|
style: vue.normalizeStyle(cssWidth.value)
|
|
17366
|
-
}, [vue.createElementVNode("span", _hoisted_3$
|
|
17421
|
+
}, [vue.createElementVNode("span", _hoisted_3$3, vue.toDisplayString(progressText.value), 1)], 14, _hoisted_2$4)]);
|
|
17367
17422
|
};
|
|
17368
17423
|
}
|
|
17369
17424
|
});
|
|
@@ -17526,7 +17581,7 @@ const _sfc_main$6 = vue.defineComponent({
|
|
|
17526
17581
|
});
|
|
17527
17582
|
const _hoisted_1$6 = ["id", "disabled"];
|
|
17528
17583
|
const _hoisted_2$3 = ["for"];
|
|
17529
|
-
const _hoisted_3$
|
|
17584
|
+
const _hoisted_3$2 = {
|
|
17530
17585
|
key: 0,
|
|
17531
17586
|
class: "radio-button__details"
|
|
17532
17587
|
};
|
|
@@ -17548,7 +17603,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
17548
17603
|
for: _ctx.id
|
|
17549
17604
|
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.$slots.details ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
17550
17605
|
key: 0
|
|
17551
|
-
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
17606
|
+
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$2, [_cache[1] || (_cache[1] = vue.createElementVNode("br", null, null, -1)), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "details")])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.showDetails === "when-selected" ? (vue.openBlock(), vue.createBlock(vue.Transition, {
|
|
17552
17607
|
key: 1,
|
|
17553
17608
|
onEnter: _ctx.enter,
|
|
17554
17609
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -17679,7 +17734,7 @@ function computeCssValue(raw, total, auto) {
|
|
|
17679
17734
|
return percent * total;
|
|
17680
17735
|
} else if (raw === "0") {
|
|
17681
17736
|
return 0;
|
|
17682
|
-
} else if (raw === "auto") {
|
|
17737
|
+
} else if (raw === "auto" || raw === "") {
|
|
17683
17738
|
return auto;
|
|
17684
17739
|
} else {
|
|
17685
17740
|
throw new Error(`Cant parse size from "${raw}"`);
|
|
@@ -17727,10 +17782,17 @@ function useStorage(options) {
|
|
|
17727
17782
|
loaded.value = true;
|
|
17728
17783
|
});
|
|
17729
17784
|
}
|
|
17730
|
-
const _hoisted_1$5 =
|
|
17785
|
+
const _hoisted_1$5 = {
|
|
17786
|
+
key: 0,
|
|
17787
|
+
class: "resize__offset"
|
|
17788
|
+
};
|
|
17731
17789
|
const _hoisted_2$2 = ["aria-orientation"];
|
|
17790
|
+
const _hoisted_3$1 = ["aria-orientation"];
|
|
17732
17791
|
const STEP_SIZE = 10;
|
|
17733
17792
|
const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
17793
|
+
...{
|
|
17794
|
+
inheritAttrs: false
|
|
17795
|
+
},
|
|
17734
17796
|
__name: "FResizePane.ce",
|
|
17735
17797
|
props: {
|
|
17736
17798
|
disabled: {
|
|
@@ -17748,10 +17810,22 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17748
17810
|
initial: {
|
|
17749
17811
|
default: "50%",
|
|
17750
17812
|
type: String
|
|
17813
|
+
},
|
|
17814
|
+
overlay: {
|
|
17815
|
+
type: Boolean,
|
|
17816
|
+
default: false
|
|
17817
|
+
},
|
|
17818
|
+
offset: {
|
|
17819
|
+
default: 0,
|
|
17820
|
+
type: Number
|
|
17751
17821
|
}
|
|
17752
17822
|
},
|
|
17753
|
-
|
|
17823
|
+
emits: ["resize"],
|
|
17824
|
+
setup(__props, {
|
|
17825
|
+
emit: __emit
|
|
17826
|
+
}) {
|
|
17754
17827
|
const props = __props;
|
|
17828
|
+
const emit = __emit;
|
|
17755
17829
|
const root = vue.shallowRef();
|
|
17756
17830
|
const content = vue.ref();
|
|
17757
17831
|
const separator = vue.ref();
|
|
@@ -17760,11 +17834,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17760
17834
|
max: -1,
|
|
17761
17835
|
current: -1
|
|
17762
17836
|
});
|
|
17763
|
-
const separatorSize = vue.ref(0);
|
|
17764
17837
|
const layoutSize = vue.ref(0);
|
|
17765
17838
|
const storageKey = vue.computed(() => area.value ? `layout/${area.value}/size` : null);
|
|
17766
17839
|
const {
|
|
17767
17840
|
attachPanel: attachment,
|
|
17841
|
+
direction,
|
|
17768
17842
|
area
|
|
17769
17843
|
} = useAreaData(root);
|
|
17770
17844
|
useKeyboardHandler({
|
|
@@ -17797,11 +17871,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17797
17871
|
});
|
|
17798
17872
|
const minSize = vue.computed(() => {
|
|
17799
17873
|
const total = layoutSize.value;
|
|
17800
|
-
return Math.floor(aggregateCssValue(props.min, total, 0, Math.max)
|
|
17874
|
+
return Math.floor(aggregateCssValue(props.min, total, 0, Math.max));
|
|
17801
17875
|
});
|
|
17802
17876
|
const maxSize = vue.computed(() => {
|
|
17803
17877
|
const total = layoutSize.value;
|
|
17804
|
-
return Math.floor(aggregateCssValue(props.max, total, total, Math.min)
|
|
17878
|
+
return Math.max(Math.floor(aggregateCssValue(props.max, total, total, Math.min)), minSize.value);
|
|
17805
17879
|
});
|
|
17806
17880
|
const initialSize = vue.computed(() => {
|
|
17807
17881
|
const total = layoutSize.value;
|
|
@@ -17814,6 +17888,9 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17814
17888
|
return "vertical";
|
|
17815
17889
|
}
|
|
17816
17890
|
});
|
|
17891
|
+
const classes = vue.computed(() => {
|
|
17892
|
+
return [`resize--${attachment.value}`, `resize--${direction.value}`, props.overlay ? "resize--overlay" : void 0, props.disabled ? "resize--disabled" : void 0];
|
|
17893
|
+
});
|
|
17817
17894
|
const layoutElement = vue.computed(() => {
|
|
17818
17895
|
var _host$closest;
|
|
17819
17896
|
if (!root.value) {
|
|
@@ -17823,6 +17900,8 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17823
17900
|
const host = shadow.host;
|
|
17824
17901
|
return (_host$closest = host.closest("ce-page-layout")) !== null && _host$closest !== void 0 ? _host$closest : void 0;
|
|
17825
17902
|
});
|
|
17903
|
+
vue.watch(() => props.min, onResize);
|
|
17904
|
+
vue.watch(() => props.max, onResize);
|
|
17826
17905
|
vue.watchEffect(() => {
|
|
17827
17906
|
const {
|
|
17828
17907
|
min,
|
|
@@ -17830,23 +17909,23 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17830
17909
|
current: value
|
|
17831
17910
|
} = state.value;
|
|
17832
17911
|
if (root.value) {
|
|
17833
|
-
root.value.
|
|
17834
|
-
|
|
17835
|
-
|
|
17912
|
+
const shadowRoot = root.value.getRootNode();
|
|
17913
|
+
const host = shadowRoot.host;
|
|
17914
|
+
host.style.setProperty("--size", `${String(value)}px`);
|
|
17915
|
+
host.style.setProperty("--min", `${min}px`);
|
|
17916
|
+
host.style.setProperty("--max", `${max}px`);
|
|
17917
|
+
host.style.setProperty("--offset", `${props.offset}px`);
|
|
17836
17918
|
}
|
|
17837
17919
|
if (separator.value) {
|
|
17838
17920
|
separator.value.setAttribute("aria-valuemin", String(Math.floor(min)));
|
|
17839
17921
|
separator.value.setAttribute("aria-valuemax", String(Math.floor(max)));
|
|
17840
17922
|
separator.value.setAttribute("aria-valuenow", String(Math.floor(value)));
|
|
17841
17923
|
}
|
|
17924
|
+
if (value >= 0) {
|
|
17925
|
+
emit("resize", value);
|
|
17926
|
+
}
|
|
17842
17927
|
});
|
|
17843
17928
|
vue.onMounted(() => {
|
|
17844
|
-
if (separator.value) {
|
|
17845
|
-
const {
|
|
17846
|
-
flexBasis
|
|
17847
|
-
} = getComputedStyle(separator.value);
|
|
17848
|
-
separatorSize.value = computeCssValue(flexBasis, 0, 0);
|
|
17849
|
-
}
|
|
17850
17929
|
layoutSize.value = getLayoutSize();
|
|
17851
17930
|
state.value = {
|
|
17852
17931
|
min: minSize.value,
|
|
@@ -17877,11 +17956,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17877
17956
|
}
|
|
17878
17957
|
}
|
|
17879
17958
|
return (_ctx, _cache) => {
|
|
17880
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17959
|
+
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [_ctx.overlay && _ctx.offset ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5)) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("div", vue.mergeProps({
|
|
17881
17960
|
ref_key: "root",
|
|
17882
17961
|
ref: root,
|
|
17883
|
-
class:
|
|
17884
|
-
}, [vue.createElementVNode("div", {
|
|
17962
|
+
class: ["resize", classes.value]
|
|
17963
|
+
}, _ctx.$attrs), [vue.createElementVNode("div", {
|
|
17885
17964
|
ref_key: "content",
|
|
17886
17965
|
ref: content,
|
|
17887
17966
|
class: "resize__content"
|
|
@@ -17893,17 +17972,36 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17893
17972
|
class: "resize__handle",
|
|
17894
17973
|
tabindex: "0",
|
|
17895
17974
|
"aria-orientation": orientation.value
|
|
17896
|
-
}, null, 8,
|
|
17975
|
+
}, null, 8, _hoisted_2$2)) : (vue.openBlock(), vue.createElementBlock("div", {
|
|
17897
17976
|
key: 1,
|
|
17898
17977
|
role: "separator",
|
|
17899
17978
|
class: "resize__handle disabled",
|
|
17900
17979
|
"aria-orientation": orientation.value
|
|
17901
|
-
}, null, 8,
|
|
17980
|
+
}, null, 8, _hoisted_3$1))], 16)], 64);
|
|
17902
17981
|
};
|
|
17903
17982
|
}
|
|
17904
17983
|
});
|
|
17905
|
-
const _style_0 = '/* background color */\n/* highlight color */\n/* the width of the visible handle */\n/* how much extra click/hover area the handle has */\n/* how much extra space the handle occupies when hovering (not counting the click area) */\n/* how long before visually indicating the hover state */\n/* how long the animation for the visual indicator is */\n:host {\n display: contents;\n}\n.resize {\n flex-grow: 1;\n display: flex;\n align-items: stretch;\n}\n.resize--left {\n flex-direction: row;\n width: var(--size);\n}\n.resize--right {\n flex-direction: row-reverse;\n width: var(--size);\n}\n.resize--top {\n flex-direction: column;\n height: var(--size);\n}\n.resize--bottom {\n flex-direction: column-reverse;\n height: var(--size);\n}\n.resize__content {\n flex: 1 1 auto;\n overflow: auto;\n box-sizing: border-box;\n display: flex;\n}\n.resize--left .resize__content, .resize--right .resize__content {\n min-width:
|
|
17984
|
+
const _style_0 = '/* background color */\n/* highlight color */\n/* the width of the visible handle */\n/* how much extra click/hover area the handle has */\n/* how much extra space the handle occupies when hovering (not counting the click area) */\n/* how long before visually indicating the hover state */\n/* how long the animation for the visual indicator is */\n:host {\n display: contents;\n}\n:host([hidden]) {\n display: none;\n}\n:host ::slotted(*) {\n display: contents;\n}\n.resize {\n flex-grow: 1;\n display: flex;\n align-items: stretch;\n}\n.resize--overlay {\n position: absolute;\n z-index: 1;\n background: var(--f-page-layout-background);\n}\n.resize--left {\n flex-direction: row;\n}\n.resize--left:not(.resize--disabled) {\n width: calc(var(--size) + 2px);\n}\n.resize--left .resize__content {\n flex-direction: row;\n}\n.resize--left.resize--overlay {\n left: 0;\n top: 0;\n bottom: 0;\n}\n.resize--right {\n flex-direction: row-reverse;\n}\n.resize--right:not(.resize--disabled) {\n width: calc(var(--size) + 2px);\n}\n.resize--right .resize__content {\n flex-direction: row;\n}\n.resize--right.resize--overlay {\n right: 0;\n top: 0;\n bottom: 0;\n}\n.resize--top {\n flex-direction: column;\n}\n.resize--top:not(.resize--disabled) {\n height: calc(var(--size) + 2px);\n}\n.resize--bottom {\n flex-direction: column-reverse;\n}\n.resize--bottom:not(.resize--disabled) {\n height: calc(var(--size) + 2px);\n}\n.resize__offset {\n width: calc(var(--offset) + 2px);\n}\n.resize__content {\n flex: 1 1 auto;\n overflow: auto;\n box-sizing: border-box;\n display: flex;\n}\n.resize--column .resize__content {\n flex-direction: column;\n}\n.resize--row .resize__content {\n flex-direction: row;\n}\n.resize--left:not(.resize--disabled) .resize__content, .resize--right:not(.resize--disabled) .resize__content {\n min-width: var(--min);\n max-width: var(--max);\n flex-basis: var(--size);\n}\n.resize--top:not(.resize--disabled) .resize__content, .resize--bottom:not(.resize--disabled) .resize__content {\n min-height: var(--min);\n max-height: var(--max);\n flex-basis: var(--size);\n}\n.resize__handle {\n flex: 0 0 2px;\n background: var(--fkds-color-border-primary);\n touch-action: none;\n user-select: none;\n z-index: 1;\n position: relative;\n transition: z-index 0s 200ms;\n /* disable regular focus indicator as this component has its own */\n /* when focus by keyboard we dont want the delay or transition */\n /* as the handle area expand we increase z-index for the handle to make sure it covers other separators */\n}\n@media (forced-colors: active) {\n.resize__handle {\n background: CanvasText;\n}\n}\n.resize__handle[aria-orientation=horizontal] {\n cursor: row-resize;\n height: 2px;\n}\n.resize__handle[aria-orientation=horizontal]::before {\n inset: -2px 0;\n}\n.resize__handle[aria-orientation=horizontal]::after {\n inset: -4px 0;\n}\n.resize__handle[aria-orientation=vertical] {\n cursor: col-resize;\n width: 2px;\n}\n.resize__handle[aria-orientation=vertical]::before {\n inset: 0 -2px;\n}\n.resize__handle[aria-orientation=vertical]::after {\n inset: 0 -4px;\n}\n.resize__handle::before {\n content: "";\n pointer-events: none;\n position: absolute;\n background-color: transparent;\n transition: background-color 200ms ease-in;\n}\n.resize__handle::after {\n content: "";\n position: absolute;\n}\n.resize__handle:focus::before, .resize__handle:hover::before, .resize__handle.drag::before {\n background-color: var(--fkds-color-action-border-primary-hover);\n transition-delay: 200ms;\n}\n@media (forced-colors: active) {\n.resize__handle:focus::before, .resize__handle:hover::before, .resize__handle.drag::before {\n background-color: Highlight;\n}\n}\n.resize__handle:focus {\n outline: none;\n box-shadow: none;\n}\n.resize__handle:focus::before {\n transition: none;\n}\n.resize__handle:hover, .resize__handle:focus, .resize__handle.drag {\n z-index: 2;\n transition: z-index 0s 0s;\n}\n.resize__handle.disabled {\n cursor: auto;\n}\n.resize__handle.disabled::before {\n display: none;\n}';
|
|
17906
17985
|
const FResizePane = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["styles", [_style_0]]]);
|
|
17986
|
+
const injectionKey = Symbol("FResizePane");
|
|
17987
|
+
function useResize(options = {}) {
|
|
17988
|
+
const api = vue.inject(injectionKey, {
|
|
17989
|
+
register() {
|
|
17990
|
+
return () => void 0;
|
|
17991
|
+
},
|
|
17992
|
+
size: vue.ref(0)
|
|
17993
|
+
});
|
|
17994
|
+
const unregister = api.register({
|
|
17995
|
+
enabled: options.enabled,
|
|
17996
|
+
visible: options.visible,
|
|
17997
|
+
overlay: options.overlay,
|
|
17998
|
+
offset: options.offset
|
|
17999
|
+
});
|
|
18000
|
+
vue.onUnmounted(unregister);
|
|
18001
|
+
return {
|
|
18002
|
+
size: api.size
|
|
18003
|
+
};
|
|
18004
|
+
}
|
|
17907
18005
|
const _hoisted_1$4 = {
|
|
17908
18006
|
slot: "content"
|
|
17909
18007
|
};
|
|
@@ -17911,10 +18009,6 @@ const tagName = "ce-resize-pane";
|
|
|
17911
18009
|
const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
17912
18010
|
__name: "FResizePane",
|
|
17913
18011
|
props: {
|
|
17914
|
-
disabled: {
|
|
17915
|
-
type: Boolean,
|
|
17916
|
-
default: false
|
|
17917
|
-
},
|
|
17918
18012
|
min: {
|
|
17919
18013
|
default: "0"
|
|
17920
18014
|
},
|
|
@@ -17929,12 +18023,83 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17929
18023
|
if (!customElements.get(tagName)) {
|
|
17930
18024
|
customElements.define(tagName, vue.defineCustomElement(FResizePane));
|
|
17931
18025
|
}
|
|
18026
|
+
const anyEnabled = vue.ref(true);
|
|
18027
|
+
const anyVisible = vue.ref(true);
|
|
18028
|
+
const anyOverlay = vue.ref(false);
|
|
18029
|
+
const size = vue.ref(-1);
|
|
18030
|
+
const offset2 = vue.ref(0);
|
|
18031
|
+
let components = [];
|
|
18032
|
+
let n = 0;
|
|
18033
|
+
function any(src, predicate) {
|
|
18034
|
+
return src.length === 0 || src.some(predicate);
|
|
18035
|
+
}
|
|
18036
|
+
vue.provide(injectionKey, {
|
|
18037
|
+
register(options) {
|
|
18038
|
+
const component = {
|
|
18039
|
+
...options,
|
|
18040
|
+
id: n++
|
|
18041
|
+
};
|
|
18042
|
+
components.push(component);
|
|
18043
|
+
const scope = vue.effectScope();
|
|
18044
|
+
scope.run(() => {
|
|
18045
|
+
vue.watchEffect(() => {
|
|
18046
|
+
anyEnabled.value = any(components, (it) => {
|
|
18047
|
+
var _a;
|
|
18048
|
+
var _it$enabled$value;
|
|
18049
|
+
return (_it$enabled$value = (_a = it.enabled) == null ? void 0 : _a.value) !== null && _it$enabled$value !== void 0 ? _it$enabled$value : true;
|
|
18050
|
+
});
|
|
18051
|
+
});
|
|
18052
|
+
vue.watchEffect(() => {
|
|
18053
|
+
anyVisible.value = any(components, (it) => {
|
|
18054
|
+
var _a;
|
|
18055
|
+
var _it$visible$value;
|
|
18056
|
+
return (_it$visible$value = (_a = it.visible) == null ? void 0 : _a.value) !== null && _it$visible$value !== void 0 ? _it$visible$value : true;
|
|
18057
|
+
});
|
|
18058
|
+
});
|
|
18059
|
+
vue.watchEffect(() => {
|
|
18060
|
+
anyOverlay.value = any(components, (it) => {
|
|
18061
|
+
var _a;
|
|
18062
|
+
var _it$overlay$value;
|
|
18063
|
+
return (_it$overlay$value = (_a = it.overlay) == null ? void 0 : _a.value) !== null && _it$overlay$value !== void 0 ? _it$overlay$value : false;
|
|
18064
|
+
});
|
|
18065
|
+
});
|
|
18066
|
+
vue.watchEffect(() => {
|
|
18067
|
+
if (components.length === 0) {
|
|
18068
|
+
return 0;
|
|
18069
|
+
}
|
|
18070
|
+
const offsets = components.map((it) => {
|
|
18071
|
+
var _a;
|
|
18072
|
+
return (_a = it.offset) == null ? void 0 : _a.value;
|
|
18073
|
+
}).filter((it) => typeof it === "number");
|
|
18074
|
+
offset2.value = Math.max(0, ...offsets);
|
|
18075
|
+
});
|
|
18076
|
+
});
|
|
18077
|
+
return () => {
|
|
18078
|
+
components = components.filter((it) => it.id !== component.id);
|
|
18079
|
+
scope.stop();
|
|
18080
|
+
};
|
|
18081
|
+
},
|
|
18082
|
+
size
|
|
18083
|
+
});
|
|
18084
|
+
const disabled = vue.computed(() => anyEnabled.value === false);
|
|
18085
|
+
const hidden = vue.computed(() => anyVisible.value === false);
|
|
18086
|
+
const overlay = vue.computed(() => anyOverlay.value === true);
|
|
17932
18087
|
const props = __props;
|
|
18088
|
+
function onResize(event) {
|
|
18089
|
+
size.value = event.detail[0];
|
|
18090
|
+
}
|
|
17933
18091
|
return (_ctx, _cache) => {
|
|
17934
|
-
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName), vue.
|
|
18092
|
+
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName), vue.mergeProps({
|
|
18093
|
+
disabled: disabled.value,
|
|
18094
|
+
hidden: hidden.value,
|
|
18095
|
+
overlay: overlay.value,
|
|
18096
|
+
offset: offset2.value
|
|
18097
|
+
}, props, {
|
|
18098
|
+
onResize
|
|
18099
|
+
}), {
|
|
17935
18100
|
default: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$4, [vue.renderSlot(_ctx.$slots, "default")])]),
|
|
17936
18101
|
_: 3
|
|
17937
|
-
}, 16);
|
|
18102
|
+
}, 16, ["disabled", "hidden", "overlay", "offset"]);
|
|
17938
18103
|
};
|
|
17939
18104
|
}
|
|
17940
18105
|
});
|
|
@@ -18372,6 +18537,10 @@ const _sfc_main = vue.defineComponent({
|
|
|
18372
18537
|
mixins: [TranslationMixin],
|
|
18373
18538
|
inheritAttrs: true,
|
|
18374
18539
|
props: {
|
|
18540
|
+
/**
|
|
18541
|
+
* The title of the wizard step.
|
|
18542
|
+
* This will be displayed as the step's header.
|
|
18543
|
+
*/
|
|
18375
18544
|
title: {
|
|
18376
18545
|
type: String,
|
|
18377
18546
|
required: true
|
|
@@ -18769,7 +18938,7 @@ exports.FSelectField = FSelectField;
|
|
|
18769
18938
|
exports.FSortFilterDataset = _sfc_main$s;
|
|
18770
18939
|
exports.FSortFilterDatasetInjected = FSortFilterDatasetInjected;
|
|
18771
18940
|
exports.FStaticField = FStaticField;
|
|
18772
|
-
exports.FTableColumn =
|
|
18941
|
+
exports.FTableColumn = _sfc_main$J;
|
|
18773
18942
|
exports.FTableColumnSize = FTableColumnSize;
|
|
18774
18943
|
exports.FTableColumnSort = FTableColumnSort;
|
|
18775
18944
|
exports.FTableColumnType = FTableColumnType;
|
|
@@ -18850,6 +19019,7 @@ exports.tooltipAttachTo = tooltipAttachTo;
|
|
|
18850
19019
|
exports.useAreaData = useAreaData;
|
|
18851
19020
|
exports.useCombobox = useCombobox;
|
|
18852
19021
|
exports.useModal = useModal;
|
|
19022
|
+
exports.useResize = useResize;
|
|
18853
19023
|
exports.useSlotUtils = useSlotUtils;
|
|
18854
19024
|
exports.useTextFieldSetup = useTextFieldSetup;
|
|
18855
19025
|
exports.useTranslate = useTranslate;
|