@fkui/vue 6.3.1 → 6.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cypress.cjs.js +40 -8
- package/dist/cjs/cypress.cjs.js.map +2 -2
- package/dist/cjs/index.cjs.js +350 -209
- 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 +352 -211
- package/dist/esm/index.esm.js.map +1 -1
- package/dist/types/cypress.d.ts +16 -6
- package/dist/types/index.d.ts +314 -185
- package/dist/types/tsdoc-metadata.json +1 -1
- package/htmlvalidate/elements/components.js +1 -1
- 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 = {
|
|
@@ -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,7 +4646,7 @@ 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", {
|
|
@@ -4664,7 +4664,7 @@ 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$
|
|
4667
|
+
const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$1c, [["render", _sfc_render$P]]);
|
|
4668
4668
|
function prepareButtonList(src, buttonOrder = config.buttonOrder) {
|
|
4669
4669
|
const list = src.map((it) => {
|
|
4670
4670
|
var _it$event, _ref, _it$reason, _it$type;
|
|
@@ -4801,11 +4801,11 @@ const _hoisted_1$V = {
|
|
|
4801
4801
|
class: "button-group"
|
|
4802
4802
|
};
|
|
4803
4803
|
const _hoisted_2$E = ["onClick"];
|
|
4804
|
-
const _hoisted_3$
|
|
4804
|
+
const _hoisted_3$w = {
|
|
4805
4805
|
key: 0,
|
|
4806
4806
|
class: "sr-only"
|
|
4807
4807
|
};
|
|
4808
|
-
function _sfc_render$
|
|
4808
|
+
function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4809
4809
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
4810
4810
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
4811
4811
|
fullscreen: _ctx.fullscreen,
|
|
@@ -4824,12 +4824,12 @@ function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4824
4824
|
type: "button",
|
|
4825
4825
|
class: vue.normalizeClass([button.classlist, "button-group__item"]),
|
|
4826
4826
|
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$
|
|
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$w, " " + vue.toDisplayString(button.screenreader), 1)) : vue.createCommentVNode("", true)], 10, _hoisted_2$E);
|
|
4828
4828
|
}), 128))])]),
|
|
4829
4829
|
_: 3
|
|
4830
4830
|
}, 8, ["fullscreen", "is-open", "aria-close-text", "size", "focus", "onClose"]);
|
|
4831
4831
|
}
|
|
4832
|
-
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$
|
|
4832
|
+
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$O]]);
|
|
4833
4833
|
const GAP = ["1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x"];
|
|
4834
4834
|
const ALIGNMENT = ["top", "center", "bottom"];
|
|
4835
4835
|
const FLOAT = ["left", "center", "right"];
|
|
@@ -4908,12 +4908,12 @@ const _sfc_main$1a = vue.defineComponent({
|
|
|
4908
4908
|
}
|
|
4909
4909
|
}
|
|
4910
4910
|
});
|
|
4911
|
-
function _sfc_render$
|
|
4911
|
+
function _sfc_render$N(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4912
4912
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4913
4913
|
class: vue.normalizeClass(["iflex", _ctx.classList])
|
|
4914
4914
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4915
4915
|
}
|
|
4916
|
-
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$
|
|
4916
|
+
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$N]]);
|
|
4917
4917
|
const _sfc_main$19 = vue.defineComponent({
|
|
4918
4918
|
name: "IFlexItem",
|
|
4919
4919
|
inheritAttrs: true,
|
|
@@ -4961,12 +4961,12 @@ const _sfc_main$19 = vue.defineComponent({
|
|
|
4961
4961
|
}
|
|
4962
4962
|
}
|
|
4963
4963
|
});
|
|
4964
|
-
function _sfc_render$
|
|
4964
|
+
function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4965
4965
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4966
4966
|
class: vue.normalizeClass(["iflex__item", _ctx.classList])
|
|
4967
4967
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4968
4968
|
}
|
|
4969
|
-
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$
|
|
4969
|
+
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$M]]);
|
|
4970
4970
|
function focusError(item) {
|
|
4971
4971
|
const element = document.querySelector(`#${item.id}`);
|
|
4972
4972
|
if (!element) {
|
|
@@ -5038,14 +5038,14 @@ const _hoisted_1$U = {
|
|
|
5038
5038
|
const _hoisted_2$D = {
|
|
5039
5039
|
key: 0
|
|
5040
5040
|
};
|
|
5041
|
-
const _hoisted_3$
|
|
5041
|
+
const _hoisted_3$v = {
|
|
5042
5042
|
class: "error-list__list error-list--list-style-none"
|
|
5043
5043
|
};
|
|
5044
5044
|
const _hoisted_4$p = ["onClick"];
|
|
5045
5045
|
const _hoisted_5$k = {
|
|
5046
5046
|
class: "error-list__link"
|
|
5047
5047
|
};
|
|
5048
|
-
function _sfc_render$
|
|
5048
|
+
function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5049
5049
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
5050
5050
|
const _component_i_flex_item = vue.resolveComponent("i-flex-item");
|
|
5051
5051
|
const _component_i_flex = vue.resolveComponent("i-flex");
|
|
@@ -5068,7 +5068,7 @@ function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5068
5068
|
})) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(_component_i_flex_item, {
|
|
5069
5069
|
grow: ""
|
|
5070
5070
|
}, {
|
|
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$
|
|
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$v, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item) => {
|
|
5072
5072
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
5073
5073
|
key: item.id,
|
|
5074
5074
|
class: vue.normalizeClass(_ctx.liClasses(item))
|
|
@@ -5099,7 +5099,7 @@ function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5099
5099
|
_: 3
|
|
5100
5100
|
})]);
|
|
5101
5101
|
}
|
|
5102
|
-
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$
|
|
5102
|
+
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$L]]);
|
|
5103
5103
|
var es_iterator_every = {};
|
|
5104
5104
|
var hasRequiredEs_iterator_every;
|
|
5105
5105
|
function requireEs_iterator_every() {
|
|
@@ -5257,13 +5257,13 @@ const _sfc_main$17 = vue.defineComponent({
|
|
|
5257
5257
|
}
|
|
5258
5258
|
}
|
|
5259
5259
|
});
|
|
5260
|
-
function _sfc_render$
|
|
5260
|
+
function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5261
5261
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
5262
5262
|
onComponentValidity: _cache[0] || (_cache[0] = (...args) => _ctx.onComponentValidity && _ctx.onComponentValidity(...args)),
|
|
5263
5263
|
onComponentUnmount: _cache[1] || (_cache[1] = (...args) => _ctx.onComponentUnmount && _ctx.onComponentUnmount(...args))
|
|
5264
5264
|
}, [vue.renderSlot(_ctx.$slots, "default")], 32);
|
|
5265
5265
|
}
|
|
5266
|
-
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$
|
|
5266
|
+
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$K]]);
|
|
5267
5267
|
var FValidationFormAction = /* @__PURE__ */ ((FValidationFormAction2) => {
|
|
5268
5268
|
FValidationFormAction2[FValidationFormAction2["CONTINUE"] = 0] = "CONTINUE";
|
|
5269
5269
|
FValidationFormAction2[FValidationFormAction2["CANCEL"] = 1] = "CANCEL";
|
|
@@ -5415,7 +5415,7 @@ const _hoisted_2$C = {
|
|
|
5415
5415
|
tabindex: "-1",
|
|
5416
5416
|
role: "group"
|
|
5417
5417
|
};
|
|
5418
|
-
function _sfc_render$
|
|
5418
|
+
function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5419
5419
|
const _component_f_error_list = vue.resolveComponent("f-error-list");
|
|
5420
5420
|
const _component_f_validation_group = vue.resolveComponent("f-validation-group");
|
|
5421
5421
|
return vue.openBlock(), vue.createBlock(_component_f_validation_group, {
|
|
@@ -5441,7 +5441,7 @@ function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5441
5441
|
_: 3
|
|
5442
5442
|
}, 8, ["modelValue"]);
|
|
5443
5443
|
}
|
|
5444
|
-
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$
|
|
5444
|
+
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$J]]);
|
|
5445
5445
|
const _sfc_main$15 = vue.defineComponent({
|
|
5446
5446
|
name: "FFormModal",
|
|
5447
5447
|
components: {
|
|
@@ -5540,6 +5540,14 @@ const _sfc_main$15 = vue.defineComponent({
|
|
|
5540
5540
|
default() {
|
|
5541
5541
|
}
|
|
5542
5542
|
},
|
|
5543
|
+
/**
|
|
5544
|
+
* List of buttons to display in the modal.
|
|
5545
|
+
* Each button is defined as an FModalButtonDescriptor with the following properties:
|
|
5546
|
+
* - `label` (String): The text displayed on the button.
|
|
5547
|
+
* - `event` (String): The event emitted when the button is clicked.
|
|
5548
|
+
* - `type` (String): The button type. Valid values are: "primary" or "secondary".
|
|
5549
|
+
* - `submitButton` (Boolean): Whether the button is a submit button.
|
|
5550
|
+
*/
|
|
5543
5551
|
buttons: {
|
|
5544
5552
|
type: Array,
|
|
5545
5553
|
required: false,
|
|
@@ -5595,11 +5603,11 @@ const _hoisted_1$S = {
|
|
|
5595
5603
|
class: "button-group"
|
|
5596
5604
|
};
|
|
5597
5605
|
const _hoisted_2$B = ["type", "form", "onClick"];
|
|
5598
|
-
const _hoisted_3$
|
|
5606
|
+
const _hoisted_3$u = {
|
|
5599
5607
|
key: 0,
|
|
5600
5608
|
class: "sr-only"
|
|
5601
5609
|
};
|
|
5602
|
-
function _sfc_render$
|
|
5610
|
+
function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5603
5611
|
const _component_f_validation_form = vue.resolveComponent("f-validation-form");
|
|
5604
5612
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
5605
5613
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
@@ -5630,12 +5638,12 @@ function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5630
5638
|
class: vue.normalizeClass([button.classlist, "button-group__item"]),
|
|
5631
5639
|
form: button.buttonType === "submit" ? _ctx.formId : void 0,
|
|
5632
5640
|
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$
|
|
5641
|
+
}, [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
5642
|
}), 128))])]),
|
|
5635
5643
|
_: 3
|
|
5636
5644
|
}, 8, ["data-test", "fullscreen", "is-open", "size", "aria-close-text", "onClose"]);
|
|
5637
5645
|
}
|
|
5638
|
-
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$
|
|
5646
|
+
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$I]]);
|
|
5639
5647
|
async function confirmModal(callingInstance, texts) {
|
|
5640
5648
|
const buttons = [{
|
|
5641
5649
|
label: texts.confirm,
|
|
@@ -5952,6 +5960,9 @@ const ValidationPrefixDirective = {
|
|
|
5952
5960
|
};
|
|
5953
5961
|
const ValidationPlugin = {
|
|
5954
5962
|
install(app) {
|
|
5963
|
+
for (const validator of logic.availableValidators) {
|
|
5964
|
+
logic.ValidationService.registerValidator(validator);
|
|
5965
|
+
}
|
|
5955
5966
|
app.directive("validation", ValidationDirective);
|
|
5956
5967
|
app.directive("validationPrefix", ValidationPrefixDirective);
|
|
5957
5968
|
}
|
|
@@ -6008,12 +6019,12 @@ const _sfc_main$14 = vue.defineComponent({
|
|
|
6008
6019
|
const _hoisted_1$R = {
|
|
6009
6020
|
"data-test": "f-error-page"
|
|
6010
6021
|
};
|
|
6011
|
-
function _sfc_render$
|
|
6022
|
+
function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6012
6023
|
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
6024
|
href: "/"
|
|
6014
6025
|
}, "Gå till startsidan", -1)]));
|
|
6015
6026
|
}
|
|
6016
|
-
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$
|
|
6027
|
+
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$H]]);
|
|
6017
6028
|
const _sfc_main$13 = vue.defineComponent({
|
|
6018
6029
|
name: "FErrorHandlingApp",
|
|
6019
6030
|
props: {
|
|
@@ -6043,7 +6054,7 @@ const _sfc_main$13 = vue.defineComponent({
|
|
|
6043
6054
|
});
|
|
6044
6055
|
}
|
|
6045
6056
|
});
|
|
6046
|
-
function _sfc_render$
|
|
6057
|
+
function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6047
6058
|
return vue.openBlock(), vue.createElementBlock("div", null, [_ctx.hasError ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.errorComponent), {
|
|
6048
6059
|
key: 0,
|
|
6049
6060
|
payload: _ctx.payload
|
|
@@ -6053,7 +6064,7 @@ function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6053
6064
|
key: 2
|
|
6054
6065
|
})]);
|
|
6055
6066
|
}
|
|
6056
|
-
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$
|
|
6067
|
+
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$G]]);
|
|
6057
6068
|
function isMonthBefore(date2, minDate) {
|
|
6058
6069
|
return Boolean(minDate && date2.isBefore(minDate.startOfMonth()));
|
|
6059
6070
|
}
|
|
@@ -6214,7 +6225,7 @@ const _hoisted_2$A = {
|
|
|
6214
6225
|
class: "calendar-navbar__month",
|
|
6215
6226
|
tabindex: "-1"
|
|
6216
6227
|
};
|
|
6217
|
-
const _hoisted_3$
|
|
6228
|
+
const _hoisted_3$t = ["aria-disabled", "aria-live"];
|
|
6218
6229
|
const _hoisted_4$o = {
|
|
6219
6230
|
class: "sr-only"
|
|
6220
6231
|
};
|
|
@@ -6222,7 +6233,7 @@ const _hoisted_5$j = ["aria-disabled", "aria-live"];
|
|
|
6222
6233
|
const _hoisted_6$f = {
|
|
6223
6234
|
class: "sr-only"
|
|
6224
6235
|
};
|
|
6225
|
-
function _sfc_render$
|
|
6236
|
+
function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6226
6237
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
6227
6238
|
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
6239
|
ref: "previousButton",
|
|
@@ -6234,7 +6245,7 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6234
6245
|
}, [vue.createElementVNode("span", _hoisted_4$o, vue.toDisplayString(_ctx.previousSrText), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
6235
6246
|
class: vue.normalizeClass(_ctx.previousIconClasses),
|
|
6236
6247
|
name: "arrow-right"
|
|
6237
|
-
}, null, 8, ["class"])], 8, _hoisted_3$
|
|
6248
|
+
}, null, 8, ["class"])], 8, _hoisted_3$t), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("button", {
|
|
6238
6249
|
ref: "nextButton",
|
|
6239
6250
|
class: "calendar-navbar__arrow calendar-navbar__arrow--next",
|
|
6240
6251
|
type: "button",
|
|
@@ -6246,7 +6257,7 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6246
6257
|
name: "arrow-right"
|
|
6247
6258
|
}, null, 8, ["class"])], 8, _hoisted_5$j)]);
|
|
6248
6259
|
}
|
|
6249
|
-
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$
|
|
6260
|
+
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$F]]);
|
|
6250
6261
|
function getDayStartOffset(days) {
|
|
6251
6262
|
return days[0].weekDay - 1;
|
|
6252
6263
|
}
|
|
@@ -6332,7 +6343,7 @@ const _hoisted_2$z = {
|
|
|
6332
6343
|
key: 0,
|
|
6333
6344
|
class: "calendar-month__col--week"
|
|
6334
6345
|
};
|
|
6335
|
-
const _hoisted_3$
|
|
6346
|
+
const _hoisted_3$s = {
|
|
6336
6347
|
key: 0,
|
|
6337
6348
|
scope: "col",
|
|
6338
6349
|
"aria-hidden": "true",
|
|
@@ -6359,7 +6370,7 @@ const _hoisted_11$2 = {
|
|
|
6359
6370
|
"aria-hidden": "true"
|
|
6360
6371
|
};
|
|
6361
6372
|
const _hoisted_12$2 = ["colspan"];
|
|
6362
|
-
function _sfc_render$
|
|
6373
|
+
function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6363
6374
|
return vue.openBlock(), vue.createElementBlock("table", {
|
|
6364
6375
|
class: "calendar-month__table",
|
|
6365
6376
|
role: "grid",
|
|
@@ -6380,7 +6391,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6380
6391
|
class: "calendar-month__col--day"
|
|
6381
6392
|
}, null, -1)), _cache[14] || (_cache[14] = vue.createTextVNode()), _cache[15] || (_cache[15] = vue.createElementVNode("col", {
|
|
6382
6393
|
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$
|
|
6394
|
+
}, 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
6395
|
return vue.openBlock(), vue.createElementBlock("th", {
|
|
6385
6396
|
key: weekday.name,
|
|
6386
6397
|
scope: "col",
|
|
@@ -6422,7 +6433,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6422
6433
|
"aria-hidden": "true"
|
|
6423
6434
|
}, null, 8, _hoisted_12$2)])) : vue.createCommentVNode("", true)])], 40, _hoisted_1$P);
|
|
6424
6435
|
}
|
|
6425
|
-
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$
|
|
6436
|
+
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$E]]);
|
|
6426
6437
|
const DayStep = {
|
|
6427
6438
|
ArrowRight: 1,
|
|
6428
6439
|
ArrowLeft: -1,
|
|
@@ -6537,7 +6548,7 @@ const _sfc_main$10 = vue.defineComponent({
|
|
|
6537
6548
|
}
|
|
6538
6549
|
});
|
|
6539
6550
|
const _hoisted_1$O = ["data-date", "tabindex", "onClick", "onKeydown"];
|
|
6540
|
-
function _sfc_render$
|
|
6551
|
+
function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6541
6552
|
const _component_i_calendar_month_grid = vue.resolveComponent("i-calendar-month-grid");
|
|
6542
6553
|
return vue.openBlock(), vue.createBlock(_component_i_calendar_month_grid, {
|
|
6543
6554
|
value: _ctx.modelValue
|
|
@@ -6560,7 +6571,7 @@ function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6560
6571
|
_: 3
|
|
6561
6572
|
}, 8, ["value"]);
|
|
6562
6573
|
}
|
|
6563
|
-
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$
|
|
6574
|
+
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$D]]);
|
|
6564
6575
|
const _sfc_main$$ = vue.defineComponent({
|
|
6565
6576
|
name: "FCalendar",
|
|
6566
6577
|
components: {
|
|
@@ -6615,7 +6626,7 @@ const _sfc_main$$ = vue.defineComponent({
|
|
|
6615
6626
|
const _hoisted_1$N = {
|
|
6616
6627
|
class: "calendar__wrapper"
|
|
6617
6628
|
};
|
|
6618
|
-
function _sfc_render$
|
|
6629
|
+
function _sfc_render$C(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6619
6630
|
const _component_i_calendar_navbar = vue.resolveComponent("i-calendar-navbar");
|
|
6620
6631
|
const _component_i_calendar_month = vue.resolveComponent("i-calendar-month");
|
|
6621
6632
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [vue.createVNode(_component_i_calendar_navbar, {
|
|
@@ -6641,7 +6652,7 @@ function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6641
6652
|
_: 3
|
|
6642
6653
|
}, 8, ["model-value", "min-date", "max-date", "tab-date", "onClick", "onUpdate:modelValue"])]);
|
|
6643
6654
|
}
|
|
6644
|
-
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$
|
|
6655
|
+
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$C]]);
|
|
6645
6656
|
function getCalendarDaySrText(day, enabled, selected, t) {
|
|
6646
6657
|
const parts = [];
|
|
6647
6658
|
if (!enabled) {
|
|
@@ -6731,12 +6742,12 @@ const _hoisted_1$M = {
|
|
|
6731
6742
|
const _hoisted_2$y = {
|
|
6732
6743
|
class: "sr-only"
|
|
6733
6744
|
};
|
|
6734
|
-
function _sfc_render$
|
|
6745
|
+
function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6735
6746
|
return vue.openBlock(), vue.createElementBlock("span", {
|
|
6736
6747
|
class: vue.normalizeClass(_ctx.dayClasses)
|
|
6737
6748
|
}, [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
6749
|
}
|
|
6739
|
-
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$
|
|
6750
|
+
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$B]]);
|
|
6740
6751
|
function useEventListener$1(target, event, callback) {
|
|
6741
6752
|
vue.onMounted(() => {
|
|
6742
6753
|
var _a;
|
|
@@ -6762,7 +6773,7 @@ const _hoisted_2$x = {
|
|
|
6762
6773
|
key: 0,
|
|
6763
6774
|
class: "card__header"
|
|
6764
6775
|
};
|
|
6765
|
-
const _hoisted_3$
|
|
6776
|
+
const _hoisted_3$r = {
|
|
6766
6777
|
class: "card__content"
|
|
6767
6778
|
};
|
|
6768
6779
|
const _hoisted_4$m = {
|
|
@@ -6807,6 +6818,9 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
|
6807
6818
|
if (!isMounted.value) {
|
|
6808
6819
|
return;
|
|
6809
6820
|
}
|
|
6821
|
+
if (detail.elementId !== props.id) {
|
|
6822
|
+
return;
|
|
6823
|
+
}
|
|
6810
6824
|
if (!props.focusRef) {
|
|
6811
6825
|
throw new Error("Element to focus on when card is invalid (`focusRef`) is required when using card validation.");
|
|
6812
6826
|
}
|
|
@@ -6852,7 +6866,7 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
|
6852
6866
|
_: 1
|
|
6853
6867
|
})]),
|
|
6854
6868
|
_: 1
|
|
6855
|
-
})) : vue.createCommentVNode("", true)]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$
|
|
6869
|
+
})) : 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
6870
|
hasError: hasError.value,
|
|
6857
6871
|
validationMessage: validationMessage.value
|
|
6858
6872
|
})))])) : vue.createCommentVNode("", true)], 42, _hoisted_1$L);
|
|
@@ -6913,7 +6927,7 @@ const _sfc_main$Y = vue.defineComponent({
|
|
|
6913
6927
|
}
|
|
6914
6928
|
}
|
|
6915
6929
|
});
|
|
6916
|
-
function _sfc_render$
|
|
6930
|
+
function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6917
6931
|
return vue.openBlock(), vue.createBlock(vue.Transition, {
|
|
6918
6932
|
onEnter: _ctx.enter,
|
|
6919
6933
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -6925,7 +6939,7 @@ function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6925
6939
|
_: 3
|
|
6926
6940
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"]);
|
|
6927
6941
|
}
|
|
6928
|
-
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$
|
|
6942
|
+
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$A]]);
|
|
6929
6943
|
function offset(page, el) {
|
|
6930
6944
|
const rect = el.getBoundingClientRect();
|
|
6931
6945
|
return {
|
|
@@ -7491,7 +7505,7 @@ const _sfc_main$X = vue.defineComponent({
|
|
|
7491
7505
|
}
|
|
7492
7506
|
}
|
|
7493
7507
|
});
|
|
7494
|
-
function _sfc_render$
|
|
7508
|
+
function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7495
7509
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
7496
7510
|
key: 0,
|
|
7497
7511
|
to: _ctx.teleportTarget,
|
|
@@ -7512,7 +7526,7 @@ function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7512
7526
|
placement: _ctx.placement
|
|
7513
7527
|
})))], 544)], 16)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
7514
7528
|
}
|
|
7515
|
-
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$
|
|
7529
|
+
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$z]]);
|
|
7516
7530
|
function computeArrowOffset(placement, inputIconRect, wrapperRect) {
|
|
7517
7531
|
switch (placement) {
|
|
7518
7532
|
case Placement.A: {
|
|
@@ -7718,7 +7732,7 @@ const _hoisted_1$K = {
|
|
|
7718
7732
|
ref: "wrapper",
|
|
7719
7733
|
class: "popup-error__wrapper"
|
|
7720
7734
|
};
|
|
7721
|
-
function _sfc_render$
|
|
7735
|
+
function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7722
7736
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
7723
7737
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
7724
7738
|
key: 0,
|
|
@@ -7742,7 +7756,7 @@ function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7742
7756
|
class: "button__icon"
|
|
7743
7757
|
})])], 6)], 512)], 2)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
7744
7758
|
}
|
|
7745
|
-
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$
|
|
7759
|
+
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$y]]);
|
|
7746
7760
|
function numItems(itemHeight, availableHeight, verticalSpacing) {
|
|
7747
7761
|
const itemsFit = Math.floor((availableHeight - verticalSpacing) / itemHeight);
|
|
7748
7762
|
return Math.min(itemsFit, 7);
|
|
@@ -8272,13 +8286,13 @@ const _hoisted_2$v = {
|
|
|
8272
8286
|
role: "menu",
|
|
8273
8287
|
class: "ipopupmenu__list"
|
|
8274
8288
|
};
|
|
8275
|
-
const _hoisted_3$
|
|
8289
|
+
const _hoisted_3$q = ["onClick"];
|
|
8276
8290
|
const _hoisted_4$l = ["data-ref-index", "href", "target"];
|
|
8277
8291
|
const _hoisted_5$h = {
|
|
8278
8292
|
key: 0,
|
|
8279
8293
|
class: "sr-only"
|
|
8280
8294
|
};
|
|
8281
|
-
function _sfc_render$
|
|
8295
|
+
function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8282
8296
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
8283
8297
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
8284
8298
|
class: "ipopupmenu",
|
|
@@ -8309,12 +8323,12 @@ function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8309
8323
|
role: "menuitem",
|
|
8310
8324
|
target: item.target,
|
|
8311
8325
|
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$
|
|
8326
|
+
}, [_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
8327
|
}), 128))])], 8, _hoisted_1$I)]),
|
|
8314
8328
|
_: 1
|
|
8315
8329
|
}, 8, ["is-open", "anchor", "focus-element", "onKeyup", "onKeydown"]);
|
|
8316
8330
|
}
|
|
8317
|
-
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$
|
|
8331
|
+
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$x]]);
|
|
8318
8332
|
const ANIMATION_DURATION = 500;
|
|
8319
8333
|
const NO_CSS_CLASSES = "";
|
|
8320
8334
|
const CLOSED_CSS_CLASS_OPACITY = "animate-expand animate-expand--opacity";
|
|
@@ -8517,13 +8531,13 @@ const _hoisted_1$H = {
|
|
|
8517
8531
|
ref: "content",
|
|
8518
8532
|
"data-test": "animation-content"
|
|
8519
8533
|
};
|
|
8520
|
-
function _sfc_render$
|
|
8534
|
+
function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8521
8535
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
8522
8536
|
class: vue.normalizeClass(_ctx.animationClasses),
|
|
8523
8537
|
style: vue.normalizeStyle(_ctx.heightStyle)
|
|
8524
8538
|
}, [_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
8539
|
}
|
|
8526
|
-
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$
|
|
8540
|
+
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$w]]);
|
|
8527
8541
|
const _sfc_main$S = vue.defineComponent({
|
|
8528
8542
|
name: "ISkipLink",
|
|
8529
8543
|
mixins: [TranslationMixin],
|
|
@@ -8539,13 +8553,13 @@ const _sfc_main$S = vue.defineComponent({
|
|
|
8539
8553
|
}
|
|
8540
8554
|
});
|
|
8541
8555
|
const _hoisted_1$G = ["href"];
|
|
8542
|
-
function _sfc_render$
|
|
8556
|
+
function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8543
8557
|
return vue.openBlock(), vue.createElementBlock("a", {
|
|
8544
8558
|
class: "iskiplink",
|
|
8545
8559
|
href: _ctx.href
|
|
8546
8560
|
}, [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
8561
|
}
|
|
8548
|
-
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$
|
|
8562
|
+
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$v]]);
|
|
8549
8563
|
function filterOptions(options, filter2, selectMode) {
|
|
8550
8564
|
if (logic.isEmpty(filter2) || selectMode) {
|
|
8551
8565
|
return options;
|
|
@@ -8795,7 +8809,7 @@ const _hoisted_1$F = {
|
|
|
8795
8809
|
class: "combobox"
|
|
8796
8810
|
};
|
|
8797
8811
|
const _hoisted_2$u = ["id"];
|
|
8798
|
-
const _hoisted_3$
|
|
8812
|
+
const _hoisted_3$p = ["id", "aria-selected", "onClick"];
|
|
8799
8813
|
const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
8800
8814
|
__name: "IComboboxDropdown",
|
|
8801
8815
|
props: {
|
|
@@ -8857,7 +8871,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
|
8857
8871
|
"combobox__listbox__option--highlight": isOptionActive(item)
|
|
8858
8872
|
}]),
|
|
8859
8873
|
onClick: vue.withModifiers(($event) => onOptionClick(item), ["stop", "prevent"])
|
|
8860
|
-
}, vue.toDisplayString(item), 11, _hoisted_3$
|
|
8874
|
+
}, vue.toDisplayString(item), 11, _hoisted_3$p);
|
|
8861
8875
|
}), 128))], 8, _hoisted_2$u)]),
|
|
8862
8876
|
_: 1
|
|
8863
8877
|
}, 8, ["is-open", "anchor", "num-of-items", "active-element"])]);
|
|
@@ -9149,7 +9163,7 @@ const _hoisted_1$D = ["aria-expanded"];
|
|
|
9149
9163
|
const _hoisted_2$t = {
|
|
9150
9164
|
class: "icon-stack icon-stack--tooltip"
|
|
9151
9165
|
};
|
|
9152
|
-
const _hoisted_3$
|
|
9166
|
+
const _hoisted_3$o = {
|
|
9153
9167
|
class: "sr-only"
|
|
9154
9168
|
};
|
|
9155
9169
|
const _hoisted_4$k = {
|
|
@@ -9163,7 +9177,7 @@ const _hoisted_5$g = {
|
|
|
9163
9177
|
const _hoisted_6$d = {
|
|
9164
9178
|
class: "tooltip__footer"
|
|
9165
9179
|
};
|
|
9166
|
-
function _sfc_render$
|
|
9180
|
+
function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9167
9181
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9168
9182
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [(vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
9169
9183
|
disabled: _ctx.iconTarget === null,
|
|
@@ -9178,7 +9192,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9178
9192
|
name: "circle"
|
|
9179
9193
|
}), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
9180
9194
|
name: "i"
|
|
9181
|
-
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$
|
|
9195
|
+
}), _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
9196
|
ref: "wrapper",
|
|
9183
9197
|
class: "tooltip"
|
|
9184
9198
|
}, _ctx.$attrs), [_ctx.ready ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$k, [_ctx.hasHeader ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.headerTag), {
|
|
@@ -9196,7 +9210,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9196
9210
|
name: "close"
|
|
9197
9211
|
})])])])) : vue.createCommentVNode("", true)], 16)], 64);
|
|
9198
9212
|
}
|
|
9199
|
-
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$
|
|
9213
|
+
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$u]]);
|
|
9200
9214
|
function* labelClasses(options) {
|
|
9201
9215
|
const {
|
|
9202
9216
|
labelClass
|
|
@@ -9470,7 +9484,7 @@ const _hoisted_2$s = {
|
|
|
9470
9484
|
key: 0,
|
|
9471
9485
|
class: "sr-only"
|
|
9472
9486
|
};
|
|
9473
|
-
const _hoisted_3$
|
|
9487
|
+
const _hoisted_3$n = {
|
|
9474
9488
|
key: 0,
|
|
9475
9489
|
class: "label__message label__message--error"
|
|
9476
9490
|
};
|
|
@@ -9497,7 +9511,7 @@ const _hoisted_9$4 = {
|
|
|
9497
9511
|
key: 0,
|
|
9498
9512
|
class: "label__message label__message--error"
|
|
9499
9513
|
};
|
|
9500
|
-
function _sfc_render$
|
|
9514
|
+
function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9501
9515
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9502
9516
|
return vue.openBlock(), vue.createElementBlock("fieldset", {
|
|
9503
9517
|
id: _ctx.id,
|
|
@@ -9512,7 +9526,7 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9512
9526
|
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "error-message", vue.normalizeProps(vue.guardReactiveProps({
|
|
9513
9527
|
hasError: _ctx.hasError,
|
|
9514
9528
|
validationMessage: _ctx.validity.validationMessage
|
|
9515
|
-
})), () => [_ctx.hasError ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
9529
|
+
})), () => [_ctx.hasError ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$n, [vue.createVNode(_component_f_icon, {
|
|
9516
9530
|
class: "label__icon--left",
|
|
9517
9531
|
name: "error"
|
|
9518
9532
|
}), 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, {
|
|
@@ -9534,7 +9548,7 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9534
9548
|
class: vue.normalizeClass(_ctx.groupContentClass)
|
|
9535
9549
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2)], 42, _hoisted_1$C);
|
|
9536
9550
|
}
|
|
9537
|
-
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$
|
|
9551
|
+
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$t]]);
|
|
9538
9552
|
const anyType$1 = [String, Object, Array, Number, Date, Boolean];
|
|
9539
9553
|
const _sfc_main$N = vue.defineComponent({
|
|
9540
9554
|
name: "FCheckboxField",
|
|
@@ -9724,7 +9738,7 @@ const _sfc_main$N = vue.defineComponent({
|
|
|
9724
9738
|
});
|
|
9725
9739
|
const _hoisted_1$B = ["id", "disabled"];
|
|
9726
9740
|
const _hoisted_2$r = ["for"];
|
|
9727
|
-
const _hoisted_3$
|
|
9741
|
+
const _hoisted_3$m = {
|
|
9728
9742
|
key: 0,
|
|
9729
9743
|
class: "checkbox__details"
|
|
9730
9744
|
};
|
|
@@ -9732,7 +9746,7 @@ const _hoisted_4$i = {
|
|
|
9732
9746
|
key: 0,
|
|
9733
9747
|
class: "checkbox__details"
|
|
9734
9748
|
};
|
|
9735
|
-
function _sfc_render$
|
|
9749
|
+
function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9736
9750
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
9737
9751
|
class: vue.normalizeClass(["checkbox", _ctx.disabledClass]),
|
|
9738
9752
|
onValidity: _cache[2] || (_cache[2] = (...args) => _ctx.onValidity && _ctx.onValidity(...args))
|
|
@@ -9750,7 +9764,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9750
9764
|
for: _ctx.id
|
|
9751
9765
|
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[8] || (_cache[8] = vue.createTextVNode()), _ctx.$slots.details ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
9752
9766
|
key: 0
|
|
9753
|
-
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
9767
|
+
}, [_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
9768
|
key: 1,
|
|
9755
9769
|
onEnter: _ctx.enter,
|
|
9756
9770
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -9762,7 +9776,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9762
9776
|
_: 3
|
|
9763
9777
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"])) : vue.createCommentVNode("", true)], 64)) : vue.createCommentVNode("", true)], 10, _hoisted_2$r)], 34);
|
|
9764
9778
|
}
|
|
9765
|
-
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$
|
|
9779
|
+
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$s]]);
|
|
9766
9780
|
var es_iterator_some = {};
|
|
9767
9781
|
var hasRequiredEs_iterator_some;
|
|
9768
9782
|
function requireEs_iterator_some() {
|
|
@@ -10012,13 +10026,13 @@ const _hoisted_2$q = {
|
|
|
10012
10026
|
tabindex: "-1",
|
|
10013
10027
|
class: "contextmenu__list"
|
|
10014
10028
|
};
|
|
10015
|
-
const _hoisted_3$
|
|
10029
|
+
const _hoisted_3$l = ["onClick"];
|
|
10016
10030
|
const _hoisted_4$h = ["tabindex"];
|
|
10017
10031
|
const _hoisted_5$e = {
|
|
10018
10032
|
key: 0,
|
|
10019
10033
|
class: "contextmenu__separator"
|
|
10020
10034
|
};
|
|
10021
|
-
function _sfc_render$
|
|
10035
|
+
function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10022
10036
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10023
10037
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
10024
10038
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
@@ -10053,12 +10067,12 @@ function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10053
10067
|
}, null, 8, ["name", "library"])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("a", {
|
|
10054
10068
|
ref_for: true,
|
|
10055
10069
|
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$
|
|
10070
|
+
}, 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
10071
|
}), 128))], 512)], 40, _hoisted_1$A)]),
|
|
10058
10072
|
_: 1
|
|
10059
10073
|
}, 8, ["is-open", "anchor", "focus-element"]);
|
|
10060
10074
|
}
|
|
10061
|
-
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$
|
|
10075
|
+
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$r]]);
|
|
10062
10076
|
var Operation = /* @__PURE__ */ ((Operation2) => {
|
|
10063
10077
|
Operation2[Operation2["ADD"] = 0] = "ADD";
|
|
10064
10078
|
Operation2[Operation2["DELETE"] = 1] = "DELETE";
|
|
@@ -10302,7 +10316,7 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10302
10316
|
isFormModalOpen.value = true;
|
|
10303
10317
|
}
|
|
10304
10318
|
return (_ctx, _cache) => {
|
|
10305
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [vue.renderSlot(_ctx.$slots, "default"), _cache[
|
|
10319
|
+
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
10320
|
"data-test": "f-crud-dataset-add-button",
|
|
10307
10321
|
type: "button",
|
|
10308
10322
|
class: "button button--tertiary crud-dataset__add-button",
|
|
@@ -10310,7 +10324,9 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10310
10324
|
}, [vue.createVNode(vue.unref(FIcon), {
|
|
10311
10325
|
class: "button__icon",
|
|
10312
10326
|
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)])])
|
|
10327
|
+
}), _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({
|
|
10328
|
+
buttonClasses: ["button", "button--tertiary", "crud-dataset__add-button"]
|
|
10329
|
+
})))])) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(vue.unref(FFormModal), {
|
|
10314
10330
|
"is-open": isFormModalOpen.value,
|
|
10315
10331
|
"aria-close-text": vue.unref($t2)("fkui.crud-dataset.modal.close", "Stäng"),
|
|
10316
10332
|
buttons: formModalButtons.value,
|
|
@@ -10327,13 +10343,13 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
|
10327
10343
|
key: 0
|
|
10328
10344
|
}, {
|
|
10329
10345
|
item: item.value
|
|
10330
|
-
}))) : vue.createCommentVNode("", true), _cache[
|
|
10346
|
+
}))) : 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
10347
|
key: 1
|
|
10332
10348
|
}, {
|
|
10333
10349
|
item: item.value
|
|
10334
10350
|
}))) : vue.createCommentVNode("", true)]),
|
|
10335
10351
|
_: 3
|
|
10336
|
-
}, 8, ["is-open", "aria-close-text", "buttons", "before-submit", "before-validation", "on-cancel", "onCancel"]), _cache[
|
|
10352
|
+
}, 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
10353
|
"is-open": isConfirmModalOpen.value,
|
|
10338
10354
|
buttons: confirmDeleteButtons.value,
|
|
10339
10355
|
onConfirm: onDeleteConfirm,
|
|
@@ -10361,6 +10377,10 @@ const _sfc_main$K = vue.defineComponent({
|
|
|
10361
10377
|
},
|
|
10362
10378
|
mixins: [TranslationMixin],
|
|
10363
10379
|
props: {
|
|
10380
|
+
/**
|
|
10381
|
+
* The action to be performed by the button.
|
|
10382
|
+
* Must be one of the following values: "delete" or "modify".
|
|
10383
|
+
*/
|
|
10364
10384
|
action: {
|
|
10365
10385
|
type: String,
|
|
10366
10386
|
required: true,
|
|
@@ -10368,14 +10388,24 @@ const _sfc_main$K = vue.defineComponent({
|
|
|
10368
10388
|
return ["delete", "modify"].includes(value);
|
|
10369
10389
|
}
|
|
10370
10390
|
},
|
|
10391
|
+
/**
|
|
10392
|
+
* Determines if an icon should be displayed on the button.
|
|
10393
|
+
*/
|
|
10371
10394
|
icon: {
|
|
10372
10395
|
type: Boolean,
|
|
10373
10396
|
default: false
|
|
10374
10397
|
},
|
|
10398
|
+
/**
|
|
10399
|
+
* The item that the action will be performed on.
|
|
10400
|
+
*/
|
|
10375
10401
|
item: {
|
|
10376
10402
|
type: Object,
|
|
10377
10403
|
required: true
|
|
10378
10404
|
},
|
|
10405
|
+
/**
|
|
10406
|
+
* Determines if the button should display a label.
|
|
10407
|
+
* If false, the button will use a visually hidden text for accessibility.
|
|
10408
|
+
*/
|
|
10379
10409
|
label: {
|
|
10380
10410
|
type: Boolean,
|
|
10381
10411
|
default: false
|
|
@@ -10414,7 +10444,7 @@ const _hoisted_1$y = {
|
|
|
10414
10444
|
key: 1,
|
|
10415
10445
|
class: "sr-only"
|
|
10416
10446
|
};
|
|
10417
|
-
function _sfc_render$
|
|
10447
|
+
function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10418
10448
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10419
10449
|
return vue.openBlock(), vue.createElementBlock("button", {
|
|
10420
10450
|
type: "button",
|
|
@@ -10428,7 +10458,7 @@ function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10428
10458
|
key: 2
|
|
10429
10459
|
}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)]) : vue.createCommentVNode("", true)]);
|
|
10430
10460
|
}
|
|
10431
|
-
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$
|
|
10461
|
+
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$q]]);
|
|
10432
10462
|
function ActivateItemInjected() {
|
|
10433
10463
|
return {
|
|
10434
10464
|
registerCallbackAfterItemAdd: vue.inject("registerCallbackAfterItemAdd", () => void 0),
|
|
@@ -11077,9 +11107,11 @@ function FTableInjected() {
|
|
|
11077
11107
|
renderColumns: vue.inject("renderColumns", false)
|
|
11078
11108
|
};
|
|
11079
11109
|
}
|
|
11080
|
-
const _sfc_main$J = vue.defineComponent({
|
|
11081
|
-
|
|
11082
|
-
|
|
11110
|
+
const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
11111
|
+
...{
|
|
11112
|
+
inheritAttrs: false
|
|
11113
|
+
},
|
|
11114
|
+
__name: "FTableColumn",
|
|
11083
11115
|
props: {
|
|
11084
11116
|
/**
|
|
11085
11117
|
* Unique (per-table) identifier.
|
|
@@ -11166,71 +11198,58 @@ const _sfc_main$J = vue.defineComponent({
|
|
|
11166
11198
|
}
|
|
11167
11199
|
}
|
|
11168
11200
|
},
|
|
11169
|
-
setup() {
|
|
11201
|
+
setup(__props) {
|
|
11170
11202
|
const {
|
|
11171
11203
|
renderColumns,
|
|
11172
11204
|
setVisibilityColumn: setVisibilityColumn2,
|
|
11173
11205
|
addColumn: addColumn2
|
|
11174
11206
|
} = FTableInjected();
|
|
11175
|
-
|
|
11176
|
-
|
|
11177
|
-
|
|
11178
|
-
|
|
11179
|
-
|
|
11180
|
-
|
|
11181
|
-
|
|
11182
|
-
|
|
11183
|
-
|
|
11184
|
-
},
|
|
11185
|
-
scope() {
|
|
11186
|
-
return this.rowHeader ? "row" : null;
|
|
11187
|
-
},
|
|
11188
|
-
tagName() {
|
|
11189
|
-
if (this.rowHeader) {
|
|
11207
|
+
const props = __props;
|
|
11208
|
+
const classes = vue.computed(() => {
|
|
11209
|
+
return ["table__column", `table__column--${props.type}`];
|
|
11210
|
+
});
|
|
11211
|
+
const scope = vue.computed(() => {
|
|
11212
|
+
return props.rowHeader ? "row" : null;
|
|
11213
|
+
});
|
|
11214
|
+
const tagName2 = vue.computed(() => {
|
|
11215
|
+
if (props.rowHeader) {
|
|
11190
11216
|
return "th";
|
|
11191
11217
|
} else {
|
|
11192
11218
|
return "td";
|
|
11193
11219
|
}
|
|
11194
|
-
}
|
|
11195
|
-
},
|
|
11196
|
-
watch: {
|
|
11197
|
-
visible: {
|
|
11198
|
-
handler: function() {
|
|
11199
|
-
this.setVisibilityColumn(this.name, this.visible);
|
|
11200
|
-
}
|
|
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
|
|
11218
11220
|
});
|
|
11221
|
+
vue.watch(() => props.visible, () => setVisibilityColumn2(props.name, props.visible));
|
|
11222
|
+
vue.onMounted(() => {
|
|
11223
|
+
if (props.shrink && props.expand) {
|
|
11224
|
+
throw new Error("Table cannot have both shrink and expand enabled at the same time");
|
|
11225
|
+
}
|
|
11226
|
+
const size = props.shrink ? FTableColumnSize.SHRINK : FTableColumnSize.EXPAND;
|
|
11227
|
+
addColumn2({
|
|
11228
|
+
name: props.name,
|
|
11229
|
+
title: props.title,
|
|
11230
|
+
description: props.description || void 0,
|
|
11231
|
+
id: logic.ElementIdService.generateElementId("column"),
|
|
11232
|
+
size,
|
|
11233
|
+
type: props.type,
|
|
11234
|
+
visible: props.visible,
|
|
11235
|
+
sortable: false,
|
|
11236
|
+
sort: FTableColumnSort.UNSORTED
|
|
11237
|
+
});
|
|
11238
|
+
});
|
|
11239
|
+
return (_ctx, _cache) => {
|
|
11240
|
+
return vue.unref(renderColumns) && __props.visible ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName2.value), vue.mergeProps({
|
|
11241
|
+
key: 0,
|
|
11242
|
+
class: classes.value,
|
|
11243
|
+
scope: scope.value
|
|
11244
|
+
}, _ctx.$attrs), {
|
|
11245
|
+
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default"), _cache[0] || (_cache[0] = vue.createTextVNode()), _cache[1] || (_cache[1] = vue.createElementVNode("span", {
|
|
11246
|
+
class: "sr-only"
|
|
11247
|
+
}, " ", -1))]),
|
|
11248
|
+
_: 3
|
|
11249
|
+
}, 16, ["class", "scope"])) : vue.createCommentVNode("", true);
|
|
11250
|
+
};
|
|
11219
11251
|
}
|
|
11220
11252
|
});
|
|
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
11253
|
function FSortFilterDatasetInjected() {
|
|
11235
11254
|
return {
|
|
11236
11255
|
sort: vue.inject("sort", () => void 0),
|
|
@@ -11284,7 +11303,7 @@ const _hoisted_2$o = {
|
|
|
11284
11303
|
key: 0,
|
|
11285
11304
|
ref: "tooltipAttachTo"
|
|
11286
11305
|
};
|
|
11287
|
-
const _hoisted_3$
|
|
11306
|
+
const _hoisted_3$k = ["for"];
|
|
11288
11307
|
const _hoisted_4$g = ["for"];
|
|
11289
11308
|
const _hoisted_5$d = {
|
|
11290
11309
|
key: 0,
|
|
@@ -11300,7 +11319,7 @@ function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11300
11319
|
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
11320
|
class: "label",
|
|
11302
11321
|
for: _ctx.forProperty
|
|
11303
|
-
}, [vue.renderSlot(_ctx.$slots, "default")], 8, _hoisted_3$
|
|
11322
|
+
}, [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
11323
|
key: 1,
|
|
11305
11324
|
class: "label sr-separator",
|
|
11306
11325
|
for: _ctx.forProperty
|
|
@@ -11895,7 +11914,7 @@ const _hoisted_2$n = {
|
|
|
11895
11914
|
key: 0,
|
|
11896
11915
|
class: "sr-only"
|
|
11897
11916
|
};
|
|
11898
|
-
const _hoisted_3$
|
|
11917
|
+
const _hoisted_3$j = {
|
|
11899
11918
|
key: 0,
|
|
11900
11919
|
class: "sr-only"
|
|
11901
11920
|
};
|
|
@@ -11938,7 +11957,7 @@ function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11938
11957
|
}, [_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
11958
|
key: 1,
|
|
11940
11959
|
class: vue.normalizeClass(formatDescriptionClass)
|
|
11941
|
-
}, [_ctx.discreteDescriptionScreenReaderText ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
11960
|
+
}, [_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
11961
|
"error-message": vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "error-message", vue.normalizeProps(vue.guardReactiveProps({
|
|
11943
11962
|
hasError: _ctx.hasError,
|
|
11944
11963
|
validationMessage: _ctx.validationMessage
|
|
@@ -12825,7 +12844,7 @@ const _hoisted_1$s = {
|
|
|
12825
12844
|
const _hoisted_2$m = {
|
|
12826
12845
|
class: "sort-filter-dataset__search"
|
|
12827
12846
|
};
|
|
12828
|
-
const _hoisted_3$
|
|
12847
|
+
const _hoisted_3$i = {
|
|
12829
12848
|
class: "sr-only"
|
|
12830
12849
|
};
|
|
12831
12850
|
const _hoisted_4$e = ["title"];
|
|
@@ -13062,7 +13081,7 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
|
13062
13081
|
maxlength: "64",
|
|
13063
13082
|
onInput: onSearchInput
|
|
13064
13083
|
}, {
|
|
13065
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$
|
|
13084
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$i, vue.toDisplayString(__props.placeholderFilter), 1)]),
|
|
13066
13085
|
_: 1
|
|
13067
13086
|
}, 8, ["modelValue", "placeholder"]), _cache[4] || (_cache[4] = vue.createTextVNode()), showClearButton.value ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
13068
13087
|
key: 0,
|
|
@@ -13112,7 +13131,7 @@ const _hoisted_1$r = ["tabindex"];
|
|
|
13112
13131
|
const _hoisted_2$l = {
|
|
13113
13132
|
key: 0
|
|
13114
13133
|
};
|
|
13115
|
-
const _hoisted_3$
|
|
13134
|
+
const _hoisted_3$h = {
|
|
13116
13135
|
class: "table__row"
|
|
13117
13136
|
};
|
|
13118
13137
|
const _hoisted_4$d = ["innerHTML"];
|
|
@@ -13285,7 +13304,7 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
13285
13304
|
key: column.id,
|
|
13286
13305
|
class: vue.normalizeClass(column.size)
|
|
13287
13306
|
}, null, 2);
|
|
13288
|
-
}), 128))]), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_3$
|
|
13307
|
+
}), 128))]), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_3$h, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleColumns.value, (column) => {
|
|
13289
13308
|
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
13290
13309
|
key: column.id,
|
|
13291
13310
|
scope: "col",
|
|
@@ -13655,7 +13674,7 @@ const _hoisted_1$q = {
|
|
|
13655
13674
|
class: "datepicker-field"
|
|
13656
13675
|
};
|
|
13657
13676
|
const _hoisted_2$k = ["disabled", "aria-expanded"];
|
|
13658
|
-
const _hoisted_3$
|
|
13677
|
+
const _hoisted_3$g = {
|
|
13659
13678
|
class: "sr-only"
|
|
13660
13679
|
};
|
|
13661
13680
|
const _hoisted_4$c = {
|
|
@@ -13706,7 +13725,7 @@ function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13706
13725
|
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.onClickCalendarButton())
|
|
13707
13726
|
}, [vue.createVNode(_component_f_icon, {
|
|
13708
13727
|
name: "calendar"
|
|
13709
|
-
}), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$
|
|
13728
|
+
}), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$g, vue.toDisplayString(_ctx.calendarButtonText), 1)], 8, _hoisted_2$k)]),
|
|
13710
13729
|
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
13730
|
_: 2
|
|
13712
13731
|
}, [_ctx.$slots.tooltip ? {
|
|
@@ -13846,7 +13865,7 @@ const _hoisted_2$j = {
|
|
|
13846
13865
|
key: 0,
|
|
13847
13866
|
class: "dialogue-tree__list"
|
|
13848
13867
|
};
|
|
13849
|
-
const _hoisted_3$
|
|
13868
|
+
const _hoisted_3$f = ["onClick"];
|
|
13850
13869
|
function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
13851
13870
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
13852
13871
|
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 +13879,7 @@ function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13860
13879
|
onClick: ($event) => _ctx.onClickedOption(option, index)
|
|
13861
13880
|
}, [vue.createElementVNode("span", null, vue.toDisplayString(option.label), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
13862
13881
|
name: "arrow-right"
|
|
13863
|
-
})], 8, _hoisted_3$
|
|
13882
|
+
})], 8, _hoisted_3$f)]);
|
|
13864
13883
|
}), 128))])) : vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.mergeProps({
|
|
13865
13884
|
key: 1
|
|
13866
13885
|
}, {
|
|
@@ -13915,6 +13934,10 @@ const _sfc_main$o = vue.defineComponent({
|
|
|
13915
13934
|
required: false,
|
|
13916
13935
|
default: 0
|
|
13917
13936
|
},
|
|
13937
|
+
/**
|
|
13938
|
+
* Text template for the screen reader notification text.
|
|
13939
|
+
* Use `%VALUE%` as a placeholder for the number of notifications.
|
|
13940
|
+
*/
|
|
13918
13941
|
screenReaderNotificationTemplate: {
|
|
13919
13942
|
type: String,
|
|
13920
13943
|
required: false,
|
|
@@ -13946,7 +13969,7 @@ const _hoisted_1$o = ["aria-expanded", "aria-controls"];
|
|
|
13946
13969
|
const _hoisted_2$i = {
|
|
13947
13970
|
class: "expandable-panel__icon"
|
|
13948
13971
|
};
|
|
13949
|
-
const _hoisted_3$
|
|
13972
|
+
const _hoisted_3$e = {
|
|
13950
13973
|
class: "icon-stack"
|
|
13951
13974
|
};
|
|
13952
13975
|
const _hoisted_4$b = ["title"];
|
|
@@ -13975,7 +13998,7 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13975
13998
|
"aria-controls": _ctx.id
|
|
13976
13999
|
}, _ctx.$attrs, {
|
|
13977
14000
|
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClickHeadingButton && _ctx.onClickHeadingButton(...args))
|
|
13978
|
-
}), [vue.createElementVNode("span", _hoisted_2$i, [vue.createElementVNode("span", _hoisted_3$
|
|
14001
|
+
}), [vue.createElementVNode("span", _hoisted_2$i, [vue.createElementVNode("span", _hoisted_3$e, [vue.createVNode(_component_f_icon, {
|
|
13979
14002
|
name: "dash"
|
|
13980
14003
|
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
13981
14004
|
name: "dash"
|
|
@@ -14085,7 +14108,7 @@ const _hoisted_1$n = ["aria-expanded", "aria-controls"];
|
|
|
14085
14108
|
const _hoisted_2$h = {
|
|
14086
14109
|
class: "expandable-paragraph__icon"
|
|
14087
14110
|
};
|
|
14088
|
-
const _hoisted_3$
|
|
14111
|
+
const _hoisted_3$d = {
|
|
14089
14112
|
class: "icon-stack"
|
|
14090
14113
|
};
|
|
14091
14114
|
const _hoisted_4$a = {
|
|
@@ -14117,7 +14140,7 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14117
14140
|
"aria-controls": _ctx.id
|
|
14118
14141
|
}, _ctx.$attrs, {
|
|
14119
14142
|
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClickMinimize && _ctx.onClickMinimize(...args))
|
|
14120
|
-
}), [vue.createElementVNode("span", _hoisted_2$h, [vue.createElementVNode("span", _hoisted_3$
|
|
14143
|
+
}), [vue.createElementVNode("span", _hoisted_2$h, [vue.createElementVNode("span", _hoisted_3$d, [vue.createVNode(_component_f_icon, {
|
|
14121
14144
|
name: "dash"
|
|
14122
14145
|
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
14123
14146
|
name: "dash"
|
|
@@ -14225,7 +14248,7 @@ const _hoisted_1$m = {
|
|
|
14225
14248
|
const _hoisted_2$g = {
|
|
14226
14249
|
class: "file-item__row"
|
|
14227
14250
|
};
|
|
14228
|
-
const _hoisted_3$
|
|
14251
|
+
const _hoisted_3$c = ["id"];
|
|
14229
14252
|
const _hoisted_4$9 = {
|
|
14230
14253
|
class: "icon-stack button__icon icon-stack--new-window"
|
|
14231
14254
|
};
|
|
@@ -14248,7 +14271,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14248
14271
|
name: "new-window"
|
|
14249
14272
|
}), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
14250
14273
|
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$
|
|
14274
|
+
}, 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
14275
|
class: "file-item__separator"
|
|
14253
14276
|
}, null, -1))]);
|
|
14254
14277
|
}
|
|
@@ -14274,6 +14297,9 @@ const _sfc_main$l = vue.defineComponent({
|
|
|
14274
14297
|
required: false,
|
|
14275
14298
|
default: () => logic.ElementIdService.generateElementId()
|
|
14276
14299
|
},
|
|
14300
|
+
/**
|
|
14301
|
+
* Disables the file selector.
|
|
14302
|
+
*/
|
|
14277
14303
|
disabled: {
|
|
14278
14304
|
type: Boolean,
|
|
14279
14305
|
required: false,
|
|
@@ -14318,7 +14344,7 @@ const _hoisted_1$l = {
|
|
|
14318
14344
|
class: "file-selector"
|
|
14319
14345
|
};
|
|
14320
14346
|
const _hoisted_2$f = ["id", "aria-labelledby", "aria-disabled"];
|
|
14321
|
-
const _hoisted_3$
|
|
14347
|
+
const _hoisted_3$b = ["id", "for"];
|
|
14322
14348
|
function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
14323
14349
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
14324
14350
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$l, [vue.createElementVNode("input", vue.mergeProps({
|
|
@@ -14338,7 +14364,7 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14338
14364
|
}, [vue.createVNode(_component_f_icon, {
|
|
14339
14365
|
class: "button__icon",
|
|
14340
14366
|
name: "paper-clip"
|
|
14341
|
-
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$
|
|
14367
|
+
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$b)]);
|
|
14342
14368
|
}
|
|
14343
14369
|
const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$e]]);
|
|
14344
14370
|
const keybindings = {
|
|
@@ -14456,7 +14482,7 @@ const _hoisted_1$k = ["role"];
|
|
|
14456
14482
|
const _hoisted_2$e = {
|
|
14457
14483
|
key: 0
|
|
14458
14484
|
};
|
|
14459
|
-
const _hoisted_3$
|
|
14485
|
+
const _hoisted_3$a = {
|
|
14460
14486
|
key: 0,
|
|
14461
14487
|
class: "table__column--shrink"
|
|
14462
14488
|
};
|
|
@@ -14915,7 +14941,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
14915
14941
|
}, [vue.createCommentVNode("", true), _cache[18] || (_cache[18] = vue.createTextVNode()), vue.createElementVNode("table", vue.mergeProps({
|
|
14916
14942
|
class: ["table", tableClasses.value],
|
|
14917
14943
|
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[15] || (_cache[15] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_3$
|
|
14944
|
+
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$e, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = 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
14945
|
return vue.openBlock(), vue.createElementBlock("col", {
|
|
14920
14946
|
key: column.id,
|
|
14921
14947
|
class: vue.normalizeClass(column.size)
|
|
@@ -15037,7 +15063,7 @@ const _hoisted_2$d = {
|
|
|
15037
15063
|
ref: "header",
|
|
15038
15064
|
class: "layout-application-template__header"
|
|
15039
15065
|
};
|
|
15040
|
-
const _hoisted_3$
|
|
15066
|
+
const _hoisted_3$9 = {
|
|
15041
15067
|
key: 1
|
|
15042
15068
|
};
|
|
15043
15069
|
const _hoisted_4$7 = {
|
|
@@ -15051,7 +15077,7 @@ const _hoisted_5$5 = {
|
|
|
15051
15077
|
function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
15052
15078
|
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
15079
|
key: 0
|
|
15054
|
-
}) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_3$
|
|
15080
|
+
}) : 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
15081
|
}
|
|
15056
15082
|
const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$d]]);
|
|
15057
15083
|
function getGridClasses(target) {
|
|
@@ -15243,7 +15269,7 @@ const _hoisted_1$i = {
|
|
|
15243
15269
|
class: "layout-navigation"
|
|
15244
15270
|
};
|
|
15245
15271
|
const _hoisted_2$c = ["aria-expanded"];
|
|
15246
|
-
const _hoisted_3$
|
|
15272
|
+
const _hoisted_3$8 = {
|
|
15247
15273
|
class: "layout-navigation__navigation__inner"
|
|
15248
15274
|
};
|
|
15249
15275
|
const _hoisted_4$6 = {
|
|
@@ -15257,7 +15283,7 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
15257
15283
|
class: "layout-navigation__navigation",
|
|
15258
15284
|
style: vue.normalizeStyle(_ctx.navigationStyle),
|
|
15259
15285
|
"aria-expanded": _ctx.isOpen
|
|
15260
|
-
}, [vue.createElementVNode("div", _hoisted_3$
|
|
15286
|
+
}, [vue.createElementVNode("div", _hoisted_3$8, [_ctx.isOpen ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
15261
15287
|
key: 0
|
|
15262
15288
|
}, [vue.createElementVNode("div", {
|
|
15263
15289
|
class: "layout-navigation__navigation__inner__title",
|
|
@@ -15502,7 +15528,7 @@ const _hoisted_2$a = {
|
|
|
15502
15528
|
key: 0,
|
|
15503
15529
|
class: "list__item"
|
|
15504
15530
|
};
|
|
15505
|
-
const _hoisted_3$
|
|
15531
|
+
const _hoisted_3$7 = {
|
|
15506
15532
|
class: "list__item__itempane"
|
|
15507
15533
|
};
|
|
15508
15534
|
const _hoisted_4$5 = ["id", "aria-labelledby", "tabindex", "onKeydown"];
|
|
@@ -15762,7 +15788,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
|
15762
15788
|
}, {
|
|
15763
15789
|
item
|
|
15764
15790
|
}))], 512)]);
|
|
15765
|
-
}), 128)), _cache[0] || (_cache[0] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$a, [vue.createElementVNode("div", _hoisted_3$
|
|
15791
|
+
}), 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
15792
|
key: 1,
|
|
15767
15793
|
ref_key: "ulElement",
|
|
15768
15794
|
ref: ulElement,
|
|
@@ -16561,7 +16587,7 @@ const _sfc_main$c = vue.defineComponent({
|
|
|
16561
16587
|
});
|
|
16562
16588
|
const _hoisted_1$c = ["aria-label"];
|
|
16563
16589
|
const _hoisted_2$8 = ["data-ref-index", "onClick"];
|
|
16564
|
-
const _hoisted_3$
|
|
16590
|
+
const _hoisted_3$6 = {
|
|
16565
16591
|
class: "imenu__list__anchor-container"
|
|
16566
16592
|
};
|
|
16567
16593
|
const _hoisted_4$4 = ["data-ref-index", "href", "target"];
|
|
@@ -16602,7 +16628,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16602
16628
|
class: vue.normalizeClass(_ctx.itemClasses(item, index)),
|
|
16603
16629
|
role: "none",
|
|
16604
16630
|
onClick: (event) => _ctx.onClickItem(event, item)
|
|
16605
|
-
}, [vue.createElementVNode("div", _hoisted_3$
|
|
16631
|
+
}, [vue.createElementVNode("div", _hoisted_3$6, [vue.createElementVNode("a", {
|
|
16606
16632
|
ref_for: true,
|
|
16607
16633
|
ref: "anchors",
|
|
16608
16634
|
"data-ref-index": index,
|
|
@@ -16697,7 +16723,7 @@ const _hoisted_2$7 = {
|
|
|
16697
16723
|
key: 0,
|
|
16698
16724
|
class: "offline"
|
|
16699
16725
|
};
|
|
16700
|
-
const _hoisted_3$
|
|
16726
|
+
const _hoisted_3$5 = {
|
|
16701
16727
|
class: "icon-stack icon-stack--error"
|
|
16702
16728
|
};
|
|
16703
16729
|
const _hoisted_4$3 = {
|
|
@@ -16720,7 +16746,7 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16720
16746
|
shrink: "",
|
|
16721
16747
|
align: "center"
|
|
16722
16748
|
}, {
|
|
16723
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$
|
|
16749
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$5, [vue.createVNode(_component_f_icon, {
|
|
16724
16750
|
name: "triangle"
|
|
16725
16751
|
}), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
|
|
16726
16752
|
name: "alert"
|
|
@@ -16849,7 +16875,7 @@ const _hoisted_1$9 = {
|
|
|
16849
16875
|
const _hoisted_2$5 = {
|
|
16850
16876
|
key: 0
|
|
16851
16877
|
};
|
|
16852
|
-
const _hoisted_3$
|
|
16878
|
+
const _hoisted_3$4 = {
|
|
16853
16879
|
ref: "header",
|
|
16854
16880
|
class: "page-header"
|
|
16855
16881
|
};
|
|
@@ -16870,7 +16896,7 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16870
16896
|
}, {
|
|
16871
16897
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "skip-link-text")]),
|
|
16872
16898
|
_: 3
|
|
16873
|
-
}, 8, ["href"])])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$
|
|
16899
|
+
}, 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
16900
|
class: "page-header__app-name"
|
|
16875
16901
|
}, {
|
|
16876
16902
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default")]),
|
|
@@ -17015,7 +17041,7 @@ registerLayout({
|
|
|
17015
17041
|
}
|
|
17016
17042
|
}
|
|
17017
17043
|
});
|
|
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';
|
|
17044
|
+
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
17045
|
const stubLayout = defineLayout({
|
|
17020
17046
|
name: "",
|
|
17021
17047
|
areas: {}
|
|
@@ -17292,7 +17318,7 @@ const _hoisted_1$7 = {
|
|
|
17292
17318
|
class: "progress"
|
|
17293
17319
|
};
|
|
17294
17320
|
const _hoisted_2$4 = ["aria-label", "aria-valuenow", "aria-valuetext"];
|
|
17295
|
-
const _hoisted_3$
|
|
17321
|
+
const _hoisted_3$3 = {
|
|
17296
17322
|
class: "sr-only"
|
|
17297
17323
|
};
|
|
17298
17324
|
const MIN_VALUE = 0;
|
|
@@ -17363,7 +17389,7 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17363
17389
|
"aria-valuenow": progressValueNow.value,
|
|
17364
17390
|
"aria-valuetext": progressText.value,
|
|
17365
17391
|
style: vue.normalizeStyle(cssWidth.value)
|
|
17366
|
-
}, [vue.createElementVNode("span", _hoisted_3$
|
|
17392
|
+
}, [vue.createElementVNode("span", _hoisted_3$3, vue.toDisplayString(progressText.value), 1)], 14, _hoisted_2$4)]);
|
|
17367
17393
|
};
|
|
17368
17394
|
}
|
|
17369
17395
|
});
|
|
@@ -17526,7 +17552,7 @@ const _sfc_main$6 = vue.defineComponent({
|
|
|
17526
17552
|
});
|
|
17527
17553
|
const _hoisted_1$6 = ["id", "disabled"];
|
|
17528
17554
|
const _hoisted_2$3 = ["for"];
|
|
17529
|
-
const _hoisted_3$
|
|
17555
|
+
const _hoisted_3$2 = {
|
|
17530
17556
|
key: 0,
|
|
17531
17557
|
class: "radio-button__details"
|
|
17532
17558
|
};
|
|
@@ -17548,7 +17574,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
17548
17574
|
for: _ctx.id
|
|
17549
17575
|
}, [vue.renderSlot(_ctx.$slots, "default"), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.$slots.details ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
17550
17576
|
key: 0
|
|
17551
|
-
}, [_ctx.showDetails === "always" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
17577
|
+
}, [_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
17578
|
key: 1,
|
|
17553
17579
|
onEnter: _ctx.enter,
|
|
17554
17580
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -17679,7 +17705,7 @@ function computeCssValue(raw, total, auto) {
|
|
|
17679
17705
|
return percent * total;
|
|
17680
17706
|
} else if (raw === "0") {
|
|
17681
17707
|
return 0;
|
|
17682
|
-
} else if (raw === "auto") {
|
|
17708
|
+
} else if (raw === "auto" || raw === "") {
|
|
17683
17709
|
return auto;
|
|
17684
17710
|
} else {
|
|
17685
17711
|
throw new Error(`Cant parse size from "${raw}"`);
|
|
@@ -17727,10 +17753,17 @@ function useStorage(options) {
|
|
|
17727
17753
|
loaded.value = true;
|
|
17728
17754
|
});
|
|
17729
17755
|
}
|
|
17730
|
-
const _hoisted_1$5 =
|
|
17756
|
+
const _hoisted_1$5 = {
|
|
17757
|
+
key: 0,
|
|
17758
|
+
class: "resize__offset"
|
|
17759
|
+
};
|
|
17731
17760
|
const _hoisted_2$2 = ["aria-orientation"];
|
|
17761
|
+
const _hoisted_3$1 = ["aria-orientation"];
|
|
17732
17762
|
const STEP_SIZE = 10;
|
|
17733
17763
|
const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
17764
|
+
...{
|
|
17765
|
+
inheritAttrs: false
|
|
17766
|
+
},
|
|
17734
17767
|
__name: "FResizePane.ce",
|
|
17735
17768
|
props: {
|
|
17736
17769
|
disabled: {
|
|
@@ -17748,10 +17781,22 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17748
17781
|
initial: {
|
|
17749
17782
|
default: "50%",
|
|
17750
17783
|
type: String
|
|
17784
|
+
},
|
|
17785
|
+
overlay: {
|
|
17786
|
+
type: Boolean,
|
|
17787
|
+
default: false
|
|
17788
|
+
},
|
|
17789
|
+
offset: {
|
|
17790
|
+
default: 0,
|
|
17791
|
+
type: Number
|
|
17751
17792
|
}
|
|
17752
17793
|
},
|
|
17753
|
-
|
|
17794
|
+
emits: ["resize"],
|
|
17795
|
+
setup(__props, {
|
|
17796
|
+
emit: __emit
|
|
17797
|
+
}) {
|
|
17754
17798
|
const props = __props;
|
|
17799
|
+
const emit = __emit;
|
|
17755
17800
|
const root = vue.shallowRef();
|
|
17756
17801
|
const content = vue.ref();
|
|
17757
17802
|
const separator = vue.ref();
|
|
@@ -17760,11 +17805,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17760
17805
|
max: -1,
|
|
17761
17806
|
current: -1
|
|
17762
17807
|
});
|
|
17763
|
-
const separatorSize = vue.ref(0);
|
|
17764
17808
|
const layoutSize = vue.ref(0);
|
|
17765
17809
|
const storageKey = vue.computed(() => area.value ? `layout/${area.value}/size` : null);
|
|
17766
17810
|
const {
|
|
17767
17811
|
attachPanel: attachment,
|
|
17812
|
+
direction,
|
|
17768
17813
|
area
|
|
17769
17814
|
} = useAreaData(root);
|
|
17770
17815
|
useKeyboardHandler({
|
|
@@ -17797,11 +17842,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17797
17842
|
});
|
|
17798
17843
|
const minSize = vue.computed(() => {
|
|
17799
17844
|
const total = layoutSize.value;
|
|
17800
|
-
return Math.floor(aggregateCssValue(props.min, total, 0, Math.max)
|
|
17845
|
+
return Math.floor(aggregateCssValue(props.min, total, 0, Math.max));
|
|
17801
17846
|
});
|
|
17802
17847
|
const maxSize = vue.computed(() => {
|
|
17803
17848
|
const total = layoutSize.value;
|
|
17804
|
-
return Math.floor(aggregateCssValue(props.max, total, total, Math.min)
|
|
17849
|
+
return Math.max(Math.floor(aggregateCssValue(props.max, total, total, Math.min)), minSize.value);
|
|
17805
17850
|
});
|
|
17806
17851
|
const initialSize = vue.computed(() => {
|
|
17807
17852
|
const total = layoutSize.value;
|
|
@@ -17814,6 +17859,9 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17814
17859
|
return "vertical";
|
|
17815
17860
|
}
|
|
17816
17861
|
});
|
|
17862
|
+
const classes = vue.computed(() => {
|
|
17863
|
+
return [`resize--${attachment.value}`, `resize--${direction.value}`, props.overlay ? "resize--overlay" : void 0, props.disabled ? "resize--disabled" : void 0];
|
|
17864
|
+
});
|
|
17817
17865
|
const layoutElement = vue.computed(() => {
|
|
17818
17866
|
var _host$closest;
|
|
17819
17867
|
if (!root.value) {
|
|
@@ -17823,6 +17871,8 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17823
17871
|
const host = shadow.host;
|
|
17824
17872
|
return (_host$closest = host.closest("ce-page-layout")) !== null && _host$closest !== void 0 ? _host$closest : void 0;
|
|
17825
17873
|
});
|
|
17874
|
+
vue.watch(() => props.min, onResize);
|
|
17875
|
+
vue.watch(() => props.max, onResize);
|
|
17826
17876
|
vue.watchEffect(() => {
|
|
17827
17877
|
const {
|
|
17828
17878
|
min,
|
|
@@ -17830,23 +17880,23 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17830
17880
|
current: value
|
|
17831
17881
|
} = state.value;
|
|
17832
17882
|
if (root.value) {
|
|
17833
|
-
root.value.
|
|
17834
|
-
|
|
17835
|
-
|
|
17883
|
+
const shadowRoot = root.value.getRootNode();
|
|
17884
|
+
const host = shadowRoot.host;
|
|
17885
|
+
host.style.setProperty("--size", `${String(value)}px`);
|
|
17886
|
+
host.style.setProperty("--min", `${min}px`);
|
|
17887
|
+
host.style.setProperty("--max", `${max}px`);
|
|
17888
|
+
host.style.setProperty("--offset", `${props.offset}px`);
|
|
17836
17889
|
}
|
|
17837
17890
|
if (separator.value) {
|
|
17838
17891
|
separator.value.setAttribute("aria-valuemin", String(Math.floor(min)));
|
|
17839
17892
|
separator.value.setAttribute("aria-valuemax", String(Math.floor(max)));
|
|
17840
17893
|
separator.value.setAttribute("aria-valuenow", String(Math.floor(value)));
|
|
17841
17894
|
}
|
|
17895
|
+
if (value >= 0) {
|
|
17896
|
+
emit("resize", value);
|
|
17897
|
+
}
|
|
17842
17898
|
});
|
|
17843
17899
|
vue.onMounted(() => {
|
|
17844
|
-
if (separator.value) {
|
|
17845
|
-
const {
|
|
17846
|
-
flexBasis
|
|
17847
|
-
} = getComputedStyle(separator.value);
|
|
17848
|
-
separatorSize.value = computeCssValue(flexBasis, 0, 0);
|
|
17849
|
-
}
|
|
17850
17900
|
layoutSize.value = getLayoutSize();
|
|
17851
17901
|
state.value = {
|
|
17852
17902
|
min: minSize.value,
|
|
@@ -17877,11 +17927,11 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17877
17927
|
}
|
|
17878
17928
|
}
|
|
17879
17929
|
return (_ctx, _cache) => {
|
|
17880
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17930
|
+
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
17931
|
ref_key: "root",
|
|
17882
17932
|
ref: root,
|
|
17883
|
-
class:
|
|
17884
|
-
}, [vue.createElementVNode("div", {
|
|
17933
|
+
class: ["resize", classes.value]
|
|
17934
|
+
}, _ctx.$attrs), [vue.createElementVNode("div", {
|
|
17885
17935
|
ref_key: "content",
|
|
17886
17936
|
ref: content,
|
|
17887
17937
|
class: "resize__content"
|
|
@@ -17893,17 +17943,36 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17893
17943
|
class: "resize__handle",
|
|
17894
17944
|
tabindex: "0",
|
|
17895
17945
|
"aria-orientation": orientation.value
|
|
17896
|
-
}, null, 8,
|
|
17946
|
+
}, null, 8, _hoisted_2$2)) : (vue.openBlock(), vue.createElementBlock("div", {
|
|
17897
17947
|
key: 1,
|
|
17898
17948
|
role: "separator",
|
|
17899
17949
|
class: "resize__handle disabled",
|
|
17900
17950
|
"aria-orientation": orientation.value
|
|
17901
|
-
}, null, 8,
|
|
17951
|
+
}, null, 8, _hoisted_3$1))], 16)], 64);
|
|
17902
17952
|
};
|
|
17903
17953
|
}
|
|
17904
17954
|
});
|
|
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:
|
|
17955
|
+
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
17956
|
const FResizePane = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["styles", [_style_0]]]);
|
|
17957
|
+
const injectionKey = Symbol("FResizePane");
|
|
17958
|
+
function useResize(options = {}) {
|
|
17959
|
+
const api = vue.inject(injectionKey, {
|
|
17960
|
+
register() {
|
|
17961
|
+
return () => void 0;
|
|
17962
|
+
},
|
|
17963
|
+
size: vue.ref(0)
|
|
17964
|
+
});
|
|
17965
|
+
const unregister = api.register({
|
|
17966
|
+
enabled: options.enabled,
|
|
17967
|
+
visible: options.visible,
|
|
17968
|
+
overlay: options.overlay,
|
|
17969
|
+
offset: options.offset
|
|
17970
|
+
});
|
|
17971
|
+
vue.onUnmounted(unregister);
|
|
17972
|
+
return {
|
|
17973
|
+
size: api.size
|
|
17974
|
+
};
|
|
17975
|
+
}
|
|
17907
17976
|
const _hoisted_1$4 = {
|
|
17908
17977
|
slot: "content"
|
|
17909
17978
|
};
|
|
@@ -17911,10 +17980,6 @@ const tagName = "ce-resize-pane";
|
|
|
17911
17980
|
const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
17912
17981
|
__name: "FResizePane",
|
|
17913
17982
|
props: {
|
|
17914
|
-
disabled: {
|
|
17915
|
-
type: Boolean,
|
|
17916
|
-
default: false
|
|
17917
|
-
},
|
|
17918
17983
|
min: {
|
|
17919
17984
|
default: "0"
|
|
17920
17985
|
},
|
|
@@ -17929,12 +17994,83 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
17929
17994
|
if (!customElements.get(tagName)) {
|
|
17930
17995
|
customElements.define(tagName, vue.defineCustomElement(FResizePane));
|
|
17931
17996
|
}
|
|
17997
|
+
const anyEnabled = vue.ref(true);
|
|
17998
|
+
const anyVisible = vue.ref(true);
|
|
17999
|
+
const anyOverlay = vue.ref(false);
|
|
18000
|
+
const size = vue.ref(-1);
|
|
18001
|
+
const offset2 = vue.ref(0);
|
|
18002
|
+
let components = [];
|
|
18003
|
+
let n = 0;
|
|
18004
|
+
function any(src, predicate) {
|
|
18005
|
+
return src.length === 0 || src.some(predicate);
|
|
18006
|
+
}
|
|
18007
|
+
vue.provide(injectionKey, {
|
|
18008
|
+
register(options) {
|
|
18009
|
+
const component = {
|
|
18010
|
+
...options,
|
|
18011
|
+
id: n++
|
|
18012
|
+
};
|
|
18013
|
+
components.push(component);
|
|
18014
|
+
const scope = vue.effectScope();
|
|
18015
|
+
scope.run(() => {
|
|
18016
|
+
vue.watchEffect(() => {
|
|
18017
|
+
anyEnabled.value = any(components, (it) => {
|
|
18018
|
+
var _a;
|
|
18019
|
+
var _it$enabled$value;
|
|
18020
|
+
return (_it$enabled$value = (_a = it.enabled) == null ? void 0 : _a.value) !== null && _it$enabled$value !== void 0 ? _it$enabled$value : true;
|
|
18021
|
+
});
|
|
18022
|
+
});
|
|
18023
|
+
vue.watchEffect(() => {
|
|
18024
|
+
anyVisible.value = any(components, (it) => {
|
|
18025
|
+
var _a;
|
|
18026
|
+
var _it$visible$value;
|
|
18027
|
+
return (_it$visible$value = (_a = it.visible) == null ? void 0 : _a.value) !== null && _it$visible$value !== void 0 ? _it$visible$value : true;
|
|
18028
|
+
});
|
|
18029
|
+
});
|
|
18030
|
+
vue.watchEffect(() => {
|
|
18031
|
+
anyOverlay.value = any(components, (it) => {
|
|
18032
|
+
var _a;
|
|
18033
|
+
var _it$overlay$value;
|
|
18034
|
+
return (_it$overlay$value = (_a = it.overlay) == null ? void 0 : _a.value) !== null && _it$overlay$value !== void 0 ? _it$overlay$value : false;
|
|
18035
|
+
});
|
|
18036
|
+
});
|
|
18037
|
+
vue.watchEffect(() => {
|
|
18038
|
+
if (components.length === 0) {
|
|
18039
|
+
return 0;
|
|
18040
|
+
}
|
|
18041
|
+
const offsets = components.map((it) => {
|
|
18042
|
+
var _a;
|
|
18043
|
+
return (_a = it.offset) == null ? void 0 : _a.value;
|
|
18044
|
+
}).filter((it) => typeof it === "number");
|
|
18045
|
+
offset2.value = Math.max(0, ...offsets);
|
|
18046
|
+
});
|
|
18047
|
+
});
|
|
18048
|
+
return () => {
|
|
18049
|
+
components = components.filter((it) => it.id !== component.id);
|
|
18050
|
+
scope.stop();
|
|
18051
|
+
};
|
|
18052
|
+
},
|
|
18053
|
+
size
|
|
18054
|
+
});
|
|
18055
|
+
const disabled = vue.computed(() => anyEnabled.value === false);
|
|
18056
|
+
const hidden = vue.computed(() => anyVisible.value === false);
|
|
18057
|
+
const overlay = vue.computed(() => anyOverlay.value === true);
|
|
17932
18058
|
const props = __props;
|
|
18059
|
+
function onResize(event) {
|
|
18060
|
+
size.value = event.detail[0];
|
|
18061
|
+
}
|
|
17933
18062
|
return (_ctx, _cache) => {
|
|
17934
|
-
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName), vue.
|
|
18063
|
+
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName), vue.mergeProps({
|
|
18064
|
+
disabled: disabled.value,
|
|
18065
|
+
hidden: hidden.value,
|
|
18066
|
+
overlay: overlay.value,
|
|
18067
|
+
offset: offset2.value
|
|
18068
|
+
}, props, {
|
|
18069
|
+
onResize
|
|
18070
|
+
}), {
|
|
17935
18071
|
default: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$4, [vue.renderSlot(_ctx.$slots, "default")])]),
|
|
17936
18072
|
_: 3
|
|
17937
|
-
}, 16);
|
|
18073
|
+
}, 16, ["disabled", "hidden", "overlay", "offset"]);
|
|
17938
18074
|
};
|
|
17939
18075
|
}
|
|
17940
18076
|
});
|
|
@@ -18372,6 +18508,10 @@ const _sfc_main = vue.defineComponent({
|
|
|
18372
18508
|
mixins: [TranslationMixin],
|
|
18373
18509
|
inheritAttrs: true,
|
|
18374
18510
|
props: {
|
|
18511
|
+
/**
|
|
18512
|
+
* The title of the wizard step.
|
|
18513
|
+
* This will be displayed as the step's header.
|
|
18514
|
+
*/
|
|
18375
18515
|
title: {
|
|
18376
18516
|
type: String,
|
|
18377
18517
|
required: true
|
|
@@ -18769,7 +18909,7 @@ exports.FSelectField = FSelectField;
|
|
|
18769
18909
|
exports.FSortFilterDataset = _sfc_main$s;
|
|
18770
18910
|
exports.FSortFilterDatasetInjected = FSortFilterDatasetInjected;
|
|
18771
18911
|
exports.FStaticField = FStaticField;
|
|
18772
|
-
exports.FTableColumn =
|
|
18912
|
+
exports.FTableColumn = _sfc_main$J;
|
|
18773
18913
|
exports.FTableColumnSize = FTableColumnSize;
|
|
18774
18914
|
exports.FTableColumnSort = FTableColumnSort;
|
|
18775
18915
|
exports.FTableColumnType = FTableColumnType;
|
|
@@ -18850,6 +18990,7 @@ exports.tooltipAttachTo = tooltipAttachTo;
|
|
|
18850
18990
|
exports.useAreaData = useAreaData;
|
|
18851
18991
|
exports.useCombobox = useCombobox;
|
|
18852
18992
|
exports.useModal = useModal;
|
|
18993
|
+
exports.useResize = useResize;
|
|
18853
18994
|
exports.useSlotUtils = useSlotUtils;
|
|
18854
18995
|
exports.useTextFieldSetup = useTextFieldSetup;
|
|
18855
18996
|
exports.useTranslate = useTranslate;
|