@fkui/vue 6.1.0 → 6.2.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.
@@ -4,7 +4,7 @@ const vue = require("vue");
4
4
  const logic = require("@fkui/logic");
5
5
  const date = require("@fkui/date");
6
6
  const statuses = ["default", "warning", "error", "success", "info"];
7
- const _sfc_main$1b = /* @__PURE__ */ vue.defineComponent({
7
+ const _sfc_main$1c = /* @__PURE__ */ vue.defineComponent({
8
8
  __name: "FBadge",
9
9
  props: {
10
10
  /**
@@ -766,8 +766,8 @@ function requireWeakMapBasicDetection() {
766
766
  hasRequiredWeakMapBasicDetection = 1;
767
767
  var globalThis2 = requireGlobalThis();
768
768
  var isCallable2 = requireIsCallable();
769
- var WeakMap = globalThis2.WeakMap;
770
- weakMapBasicDetection = isCallable2(WeakMap) && /native code/.test(String(WeakMap));
769
+ var WeakMap2 = globalThis2.WeakMap;
770
+ weakMapBasicDetection = isCallable2(WeakMap2) && /native code/.test(String(WeakMap2));
771
771
  return weakMapBasicDetection;
772
772
  }
773
773
  var sharedKey;
@@ -806,7 +806,7 @@ function requireInternalState() {
806
806
  var hiddenKeys2 = requireHiddenKeys();
807
807
  var OBJECT_ALREADY_INITIALIZED = "Object already initialized";
808
808
  var TypeError2 = globalThis2.TypeError;
809
- var WeakMap = globalThis2.WeakMap;
809
+ var WeakMap2 = globalThis2.WeakMap;
810
810
  var set, get, has;
811
811
  var enforce = function(it) {
812
812
  return has(it) ? get(it) : set(it, {});
@@ -821,7 +821,7 @@ function requireInternalState() {
821
821
  };
822
822
  };
823
823
  if (NATIVE_WEAK_MAP || shared2.state) {
824
- var store = shared2.state || (shared2.state = new WeakMap());
824
+ var store = shared2.state || (shared2.state = new WeakMap2());
825
825
  store.get = store.get;
826
826
  store.has = store.has;
827
827
  store.set = store.set;
@@ -1883,7 +1883,7 @@ function requireEs_array_push() {
1883
1883
  requireEs_array_push();
1884
1884
  const Flip = ["horizontal", "vertical"];
1885
1885
  const Rotate = ["90", "180", "270"];
1886
- const _sfc_main$1a = vue.defineComponent({
1886
+ const _sfc_main$1b = vue.defineComponent({
1887
1887
  name: "FIcon",
1888
1888
  inheritAttrs: false,
1889
1889
  props: {
@@ -1971,7 +1971,7 @@ const _export_sfc = (sfc, props) => {
1971
1971
  }
1972
1972
  return target;
1973
1973
  };
1974
- const _hoisted_1$U = ["aria-hidden"];
1974
+ const _hoisted_1$V = ["aria-hidden"];
1975
1975
  const _hoisted_2$F = ["xlink:href"];
1976
1976
  function _sfc_render$R(_ctx, _cache, $props, $setup, $data, $options) {
1977
1977
  return vue.openBlock(), vue.createElementBlock("svg", vue.mergeProps(_ctx.$attrs, {
@@ -1980,9 +1980,9 @@ function _sfc_render$R(_ctx, _cache, $props, $setup, $data, $options) {
1980
1980
  "aria-hidden": _ctx.ariaHidden
1981
1981
  }), [vue.renderSlot(_ctx.$slots, "default"), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("use", {
1982
1982
  "xlink:href": _ctx.spriteId
1983
- }, null, 8, _hoisted_2$F)], 16, _hoisted_1$U);
1983
+ }, null, 8, _hoisted_2$F)], 16, _hoisted_1$V);
1984
1984
  }
1985
- const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$R]]);
1985
+ const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1b, [["render", _sfc_render$R]]);
1986
1986
  const DATA_TEST_ATTRIBUTE_NAME = "data-test";
1987
1987
  function throwErrorIfEmpty(value) {
1988
1988
  if (!value) {
@@ -3873,8 +3873,8 @@ function require_WeakMap() {
3873
3873
  if (hasRequired_WeakMap) return _WeakMap;
3874
3874
  hasRequired_WeakMap = 1;
3875
3875
  var getNative = require_getNative(), root = require_root();
3876
- var WeakMap = getNative(root, "WeakMap");
3877
- _WeakMap = WeakMap;
3876
+ var WeakMap2 = getNative(root, "WeakMap");
3877
+ _WeakMap = WeakMap2;
3878
3878
  return _WeakMap;
3879
3879
  }
3880
3880
  var _getTag;
@@ -3882,12 +3882,12 @@ var hasRequired_getTag;
3882
3882
  function require_getTag() {
3883
3883
  if (hasRequired_getTag) return _getTag;
3884
3884
  hasRequired_getTag = 1;
3885
- var DataView2 = require_DataView(), Map2 = require_Map(), Promise2 = require_Promise(), Set = require_Set(), WeakMap = require_WeakMap(), baseGetTag = require_baseGetTag(), toSource = require_toSource();
3885
+ var DataView2 = require_DataView(), Map2 = require_Map(), Promise2 = require_Promise(), Set = require_Set(), WeakMap2 = require_WeakMap(), baseGetTag = require_baseGetTag(), toSource = require_toSource();
3886
3886
  var mapTag = "[object Map]", objectTag = "[object Object]", promiseTag = "[object Promise]", setTag = "[object Set]", weakMapTag = "[object WeakMap]";
3887
3887
  var dataViewTag = "[object DataView]";
3888
- var dataViewCtorString = toSource(DataView2), mapCtorString = toSource(Map2), promiseCtorString = toSource(Promise2), setCtorString = toSource(Set), weakMapCtorString = toSource(WeakMap);
3888
+ var dataViewCtorString = toSource(DataView2), mapCtorString = toSource(Map2), promiseCtorString = toSource(Promise2), setCtorString = toSource(Set), weakMapCtorString = toSource(WeakMap2);
3889
3889
  var getTag = baseGetTag;
3890
- if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap && getTag(new WeakMap()) != weakMapTag) {
3890
+ if (DataView2 && getTag(new DataView2(new ArrayBuffer(1))) != dataViewTag || Map2 && getTag(new Map2()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap2 && getTag(new WeakMap2()) != weakMapTag) {
3891
3891
  getTag = function(value) {
3892
3892
  var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
3893
3893
  if (ctorString) {
@@ -4420,7 +4420,7 @@ function elementIsRadioButton(element) {
4420
4420
  function isHTMLInputElement(element) {
4421
4421
  return element instanceof HTMLInputElement;
4422
4422
  }
4423
- const _sfc_main$19 = vue.defineComponent({
4423
+ const _sfc_main$1a = vue.defineComponent({
4424
4424
  name: "FModal",
4425
4425
  components: {
4426
4426
  FIcon
@@ -4600,7 +4600,7 @@ const _sfc_main$19 = vue.defineComponent({
4600
4600
  }
4601
4601
  }
4602
4602
  });
4603
- const _hoisted_1$T = ["id"];
4603
+ const _hoisted_1$U = ["id"];
4604
4604
  const _hoisted_2$E = {
4605
4605
  class: "modal__backdrop"
4606
4606
  };
@@ -4662,9 +4662,9 @@ function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) {
4662
4662
  })], 8, _hoisted_11$3), _cache[8] || (_cache[8] = vue.createTextVNode()), vue.createElementVNode("div", {
4663
4663
  tabindex: "0",
4664
4664
  onFocus: _cache[2] || (_cache[2] = (...args) => _ctx.onFocusLast && _ctx.onFocusLast(...args))
4665
- }, null, 32)])])], 2)])], 32)])], 10, _hoisted_1$T)) : vue.createCommentVNode("", true);
4665
+ }, null, 32)])])], 2)])], 32)])], 10, _hoisted_1$U)) : vue.createCommentVNode("", true);
4666
4666
  }
4667
- const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$Q]]);
4667
+ const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$Q]]);
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;
@@ -4693,7 +4693,7 @@ const defaultButtons = [{
4693
4693
  event: "dismiss",
4694
4694
  type: "secondary"
4695
4695
  }];
4696
- const _sfc_main$18 = vue.defineComponent({
4696
+ const _sfc_main$19 = vue.defineComponent({
4697
4697
  name: "FConfirmModal",
4698
4698
  components: {
4699
4699
  FModal
@@ -4797,7 +4797,7 @@ const _sfc_main$18 = vue.defineComponent({
4797
4797
  }
4798
4798
  }
4799
4799
  });
4800
- const _hoisted_1$S = {
4800
+ const _hoisted_1$T = {
4801
4801
  class: "button-group"
4802
4802
  };
4803
4803
  const _hoisted_2$D = ["onClick"];
@@ -4818,7 +4818,7 @@ function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
4818
4818
  }, {
4819
4819
  header: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "heading", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.heading), 1)])]),
4820
4820
  content: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "content", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.content), 1)])]),
4821
- footer: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$S, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.preparedButtons, (button) => {
4821
+ footer: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$T, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.preparedButtons, (button) => {
4822
4822
  return vue.openBlock(), vue.createElementBlock("button", {
4823
4823
  key: button.label,
4824
4824
  type: "button",
@@ -4829,11 +4829,11 @@ function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
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$18, [["render", _sfc_render$P]]);
4832
+ const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$P]]);
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"];
4836
- const _sfc_main$17 = vue.defineComponent({
4836
+ const _sfc_main$18 = vue.defineComponent({
4837
4837
  name: "IFlex",
4838
4838
  inheritAttrs: true,
4839
4839
  props: {
@@ -4913,8 +4913,8 @@ function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) {
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$17, [["render", _sfc_render$O]]);
4917
- const _sfc_main$16 = vue.defineComponent({
4916
+ const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$O]]);
4917
+ const _sfc_main$17 = vue.defineComponent({
4918
4918
  name: "IFlexItem",
4919
4919
  inheritAttrs: true,
4920
4920
  props: {
@@ -4966,7 +4966,7 @@ function _sfc_render$N(_ctx, _cache, $props, $setup, $data, $options) {
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$16, [["render", _sfc_render$N]]);
4969
+ const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$N]]);
4970
4970
  function focusError(item) {
4971
4971
  const element = document.querySelector(`#${item.id}`);
4972
4972
  if (!element) {
@@ -4976,7 +4976,7 @@ function focusError(item) {
4976
4976
  logic.scrollTo(element, window.innerHeight * 0.25);
4977
4977
  logic.focus(focusElement2 ? focusElement2 : element);
4978
4978
  }
4979
- const _sfc_main$15 = vue.defineComponent({
4979
+ const _sfc_main$16 = vue.defineComponent({
4980
4980
  name: "FErrorList",
4981
4981
  components: {
4982
4982
  FIcon,
@@ -5032,7 +5032,7 @@ const _sfc_main$15 = vue.defineComponent({
5032
5032
  }
5033
5033
  }
5034
5034
  });
5035
- const _hoisted_1$R = {
5035
+ const _hoisted_1$S = {
5036
5036
  class: "error-list"
5037
5037
  };
5038
5038
  const _hoisted_2$C = {
@@ -5049,7 +5049,7 @@ function _sfc_render$M(_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");
5052
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$R, [vue.createVNode(_component_i_flex, null, {
5052
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$S, [vue.createVNode(_component_i_flex, null, {
5053
5053
  default: vue.withCtx(() => [_ctx.hasTitleSlot ? (vue.openBlock(), vue.createBlock(_component_i_flex_item, {
5054
5054
  key: 0,
5055
5055
  shrink: ""
@@ -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$15, [["render", _sfc_render$M]]);
5102
+ const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$M]]);
5103
5103
  var es_iterator_every = {};
5104
5104
  var hasRequiredEs_iterator_every;
5105
5105
  function requireEs_iterator_every() {
@@ -5187,7 +5187,7 @@ function cleanUpElements(vm) {
5187
5187
  }, 0);
5188
5188
  });
5189
5189
  }
5190
- const _sfc_main$14 = vue.defineComponent({
5190
+ const _sfc_main$15 = vue.defineComponent({
5191
5191
  name: "FValidationGroup",
5192
5192
  props: {
5193
5193
  /**
@@ -5263,13 +5263,13 @@ function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) {
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$14, [["render", _sfc_render$L]]);
5266
+ const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$L]]);
5267
5267
  var FValidationFormAction = /* @__PURE__ */ ((FValidationFormAction2) => {
5268
5268
  FValidationFormAction2[FValidationFormAction2["CONTINUE"] = 0] = "CONTINUE";
5269
5269
  FValidationFormAction2[FValidationFormAction2["CANCEL"] = 1] = "CANCEL";
5270
5270
  return FValidationFormAction2;
5271
5271
  })(FValidationFormAction || {});
5272
- const _sfc_main$13 = vue.defineComponent({
5272
+ const _sfc_main$14 = vue.defineComponent({
5273
5273
  name: "FValidationForm",
5274
5274
  components: {
5275
5275
  FValidationGroup,
@@ -5408,7 +5408,7 @@ const _sfc_main$13 = vue.defineComponent({
5408
5408
  }
5409
5409
  }
5410
5410
  });
5411
- const _hoisted_1$Q = ["id"];
5411
+ const _hoisted_1$R = ["id"];
5412
5412
  const _hoisted_2$B = {
5413
5413
  key: 0,
5414
5414
  ref: "errors",
@@ -5437,12 +5437,12 @@ function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
5437
5437
  }, {
5438
5438
  title: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "error-message")]),
5439
5439
  _: 3
5440
- }, 8, ["items", "bullets", "before-navigate"])], 512)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 16, _hoisted_1$Q)]),
5440
+ }, 8, ["items", "bullets", "before-navigate"])], 512)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 16, _hoisted_1$R)]),
5441
5441
  _: 3
5442
5442
  }, 8, ["modelValue"]);
5443
5443
  }
5444
- const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$K]]);
5445
- const _sfc_main$12 = vue.defineComponent({
5444
+ const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$K]]);
5445
+ const _sfc_main$13 = vue.defineComponent({
5446
5446
  name: "FFormModal",
5447
5447
  components: {
5448
5448
  FModal,
@@ -5591,7 +5591,7 @@ const _sfc_main$12 = vue.defineComponent({
5591
5591
  }
5592
5592
  }
5593
5593
  });
5594
- const _hoisted_1$P = {
5594
+ const _hoisted_1$Q = {
5595
5595
  class: "button-group"
5596
5596
  };
5597
5597
  const _hoisted_2$A = ["type", "form", "onClick"];
@@ -5623,7 +5623,7 @@ function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
5623
5623
  default: vue.withCtx(() => [_cache[0] || (_cache[0] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "input-text-fields")]),
5624
5624
  _: 3
5625
5625
  }, 8, ["id", "before-submit", "before-validation", "use-error-list", "onSubmit", "onCancel"])]),
5626
- footer: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$P, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.preparedButtons, (button) => {
5626
+ footer: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$Q, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.preparedButtons, (button) => {
5627
5627
  return vue.openBlock(), vue.createElementBlock("button", {
5628
5628
  key: button.label,
5629
5629
  type: button.buttonType,
@@ -5635,7 +5635,7 @@ function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
5635
5635
  _: 3
5636
5636
  }, 8, ["data-test", "fullscreen", "is-open", "size", "aria-close-text", "onClose"]);
5637
5637
  }
5638
- const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$J]]);
5638
+ const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$J]]);
5639
5639
  async function confirmModal(callingInstance, texts) {
5640
5640
  const buttons = [{
5641
5641
  label: texts.confirm,
@@ -5995,7 +5995,7 @@ const ErrorPlugin = {
5995
5995
  }
5996
5996
  }
5997
5997
  };
5998
- const _sfc_main$11 = vue.defineComponent({
5998
+ const _sfc_main$12 = vue.defineComponent({
5999
5999
  name: "FErrorPage",
6000
6000
  props: {
6001
6001
  payload: {
@@ -6005,16 +6005,16 @@ const _sfc_main$11 = vue.defineComponent({
6005
6005
  }
6006
6006
  }
6007
6007
  });
6008
- const _hoisted_1$O = {
6008
+ const _hoisted_1$P = {
6009
6009
  "data-test": "f-error-page"
6010
6010
  };
6011
6011
  function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) {
6012
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, _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", {
6012
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$P, _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
6013
  href: "/"
6014
6014
  }, "Gå till startsidan", -1)]));
6015
6015
  }
6016
- const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$I]]);
6017
- const _sfc_main$10 = vue.defineComponent({
6016
+ const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$I]]);
6017
+ const _sfc_main$11 = vue.defineComponent({
6018
6018
  name: "FErrorHandlingApp",
6019
6019
  props: {
6020
6020
  defaultComponent: {
@@ -6053,7 +6053,7 @@ function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
6053
6053
  key: 2
6054
6054
  })]);
6055
6055
  }
6056
- const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$H]]);
6056
+ const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$H]]);
6057
6057
  function isMonthBefore(date2, minDate) {
6058
6058
  return Boolean(minDate && date2.isBefore(minDate.startOfMonth()));
6059
6059
  }
@@ -6094,7 +6094,7 @@ function getMessage($t2, date2, minDate, maxDate) {
6094
6094
  });
6095
6095
  }
6096
6096
  }
6097
- const _sfc_main$$ = vue.defineComponent({
6097
+ const _sfc_main$10 = vue.defineComponent({
6098
6098
  name: "ICalendarNavbar",
6099
6099
  components: {
6100
6100
  FIcon
@@ -6207,7 +6207,7 @@ const _sfc_main$$ = vue.defineComponent({
6207
6207
  }
6208
6208
  }
6209
6209
  });
6210
- const _hoisted_1$N = {
6210
+ const _hoisted_1$O = {
6211
6211
  class: "calendar-navbar"
6212
6212
  };
6213
6213
  const _hoisted_2$z = {
@@ -6224,7 +6224,7 @@ const _hoisted_6$f = {
6224
6224
  };
6225
6225
  function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
6226
6226
  const _component_f_icon = vue.resolveComponent("f-icon");
6227
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [vue.createElementVNode("div", _hoisted_2$z, vue.toDisplayString(_ctx.currentText), 1), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("button", {
6227
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, [vue.createElementVNode("div", _hoisted_2$z, vue.toDisplayString(_ctx.currentText), 1), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("button", {
6228
6228
  ref: "previousButton",
6229
6229
  class: "calendar-navbar__arrow calendar-navbar__arrow--previous",
6230
6230
  type: "button",
@@ -6246,14 +6246,14 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
6246
6246
  name: "arrow-right"
6247
6247
  }, null, 8, ["class"])], 8, _hoisted_5$j)]);
6248
6248
  }
6249
- const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$G]]);
6249
+ const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$G]]);
6250
6250
  function getDayStartOffset(days) {
6251
6251
  return days[0].weekDay - 1;
6252
6252
  }
6253
6253
  function getDayEndOffset(days) {
6254
6254
  return 7 - days[days.length - 1].weekDay;
6255
6255
  }
6256
- const _sfc_main$_ = vue.defineComponent({
6256
+ const _sfc_main$$ = vue.defineComponent({
6257
6257
  name: "ICalendarMonthGrid",
6258
6258
  props: {
6259
6259
  /**
@@ -6327,7 +6327,7 @@ const _sfc_main$_ = vue.defineComponent({
6327
6327
  }
6328
6328
  }
6329
6329
  });
6330
- const _hoisted_1$M = ["aria-label"];
6330
+ const _hoisted_1$N = ["aria-label"];
6331
6331
  const _hoisted_2$y = {
6332
6332
  key: 0,
6333
6333
  class: "calendar-month__col--week"
@@ -6420,9 +6420,9 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
6420
6420
  class: "calendar-month__cell",
6421
6421
  colspan: _ctx.totalCols,
6422
6422
  "aria-hidden": "true"
6423
- }, null, 8, _hoisted_12$2)])) : vue.createCommentVNode("", true)])], 40, _hoisted_1$M);
6423
+ }, null, 8, _hoisted_12$2)])) : vue.createCommentVNode("", true)])], 40, _hoisted_1$N);
6424
6424
  }
6425
- const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$F]]);
6425
+ const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$F]]);
6426
6426
  const DayStep = {
6427
6427
  ArrowRight: 1,
6428
6428
  ArrowLeft: -1,
@@ -6446,7 +6446,7 @@ function getDayTabindex(date2, active, entry) {
6446
6446
  return date2.day === 1 ? 0 : -1;
6447
6447
  }
6448
6448
  }
6449
- const _sfc_main$Z = vue.defineComponent({
6449
+ const _sfc_main$_ = vue.defineComponent({
6450
6450
  name: "ICalendarMonth",
6451
6451
  components: {
6452
6452
  ICalendarMonthGrid
@@ -6536,7 +6536,7 @@ const _sfc_main$Z = vue.defineComponent({
6536
6536
  }
6537
6537
  }
6538
6538
  });
6539
- const _hoisted_1$L = ["data-date", "tabindex", "onClick", "onKeydown"];
6539
+ const _hoisted_1$M = ["data-date", "tabindex", "onClick", "onKeydown"];
6540
6540
  function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
6541
6541
  const _component_i_calendar_month_grid = vue.resolveComponent("i-calendar-month-grid");
6542
6542
  return vue.openBlock(), vue.createBlock(_component_i_calendar_month_grid, {
@@ -6556,12 +6556,12 @@ function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
6556
6556
  }, [vue.renderSlot(_ctx.$slots, "default", {
6557
6557
  date: date2,
6558
6558
  isFocused: _ctx.isDayFocused(date2)
6559
- })], 40, _hoisted_1$L)]),
6559
+ })], 40, _hoisted_1$M)]),
6560
6560
  _: 3
6561
6561
  }, 8, ["value"]);
6562
6562
  }
6563
- const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["render", _sfc_render$E]]);
6564
- const _sfc_main$Y = vue.defineComponent({
6563
+ const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$E]]);
6564
+ const _sfc_main$Z = vue.defineComponent({
6565
6565
  name: "FCalendar",
6566
6566
  components: {
6567
6567
  ICalendarNavbar,
@@ -6612,13 +6612,13 @@ const _sfc_main$Y = vue.defineComponent({
6612
6612
  }
6613
6613
  }
6614
6614
  });
6615
- const _hoisted_1$K = {
6615
+ const _hoisted_1$L = {
6616
6616
  class: "calendar__wrapper"
6617
6617
  };
6618
6618
  function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
6619
6619
  const _component_i_calendar_navbar = vue.resolveComponent("i-calendar-navbar");
6620
6620
  const _component_i_calendar_month = vue.resolveComponent("i-calendar-month");
6621
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$K, [vue.createVNode(_component_i_calendar_navbar, {
6621
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$L, [vue.createVNode(_component_i_calendar_navbar, {
6622
6622
  "model-value": _ctx.modelValue,
6623
6623
  "min-date": _ctx.minDate,
6624
6624
  "max-date": _ctx.maxDate,
@@ -6641,7 +6641,7 @@ function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
6641
6641
  _: 3
6642
6642
  }, 8, ["model-value", "min-date", "max-date", "tab-date", "onClick", "onUpdate:modelValue"])]);
6643
6643
  }
6644
- const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$D]]);
6644
+ const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["render", _sfc_render$D]]);
6645
6645
  function getCalendarDaySrText(day, enabled, selected, t) {
6646
6646
  const parts = [];
6647
6647
  if (!enabled) {
@@ -6660,7 +6660,7 @@ function getCalendarDaySrText(day, enabled, selected, t) {
6660
6660
  parts.push(day.toString(date.DateFormat.FULL));
6661
6661
  return parts.join(" ");
6662
6662
  }
6663
- const _sfc_main$X = vue.defineComponent({
6663
+ const _sfc_main$Y = vue.defineComponent({
6664
6664
  name: "FCalendarDay",
6665
6665
  mixins: [TranslationMixin],
6666
6666
  props: {
@@ -6725,7 +6725,7 @@ const _sfc_main$X = vue.defineComponent({
6725
6725
  }
6726
6726
  }
6727
6727
  });
6728
- const _hoisted_1$J = {
6728
+ const _hoisted_1$K = {
6729
6729
  "aria-hidden": "true"
6730
6730
  };
6731
6731
  const _hoisted_2$x = {
@@ -6734,9 +6734,9 @@ const _hoisted_2$x = {
6734
6734
  function _sfc_render$C(_ctx, _cache, $props, $setup, $data, $options) {
6735
6735
  return vue.openBlock(), vue.createElementBlock("span", {
6736
6736
  class: vue.normalizeClass(_ctx.dayClasses)
6737
- }, [vue.createElementVNode("span", _hoisted_1$J, vue.toDisplayString(_ctx.day.day), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_2$x, vue.toDisplayString(_ctx.srText), 1)], 2);
6737
+ }, [vue.createElementVNode("span", _hoisted_1$K, vue.toDisplayString(_ctx.day.day), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_2$x, vue.toDisplayString(_ctx.srText), 1)], 2);
6738
6738
  }
6739
- const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$C]]);
6739
+ const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$C]]);
6740
6740
  function useEventListener(target, event, callback) {
6741
6741
  vue.onMounted(() => {
6742
6742
  var _a;
@@ -6757,7 +6757,7 @@ function useSlotUtils() {
6757
6757
  }
6758
6758
  };
6759
6759
  }
6760
- const _hoisted_1$I = ["id"];
6760
+ const _hoisted_1$J = ["id"];
6761
6761
  const _hoisted_2$w = {
6762
6762
  key: 0,
6763
6763
  class: "card__header"
@@ -6769,7 +6769,7 @@ const _hoisted_4$m = {
6769
6769
  key: 1,
6770
6770
  class: "card__footer"
6771
6771
  };
6772
- const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
6772
+ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
6773
6773
  __name: "FCard",
6774
6774
  props: {
6775
6775
  /**
@@ -6855,11 +6855,11 @@ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
6855
6855
  })) : vue.createCommentVNode("", true)]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_3$q, [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
6856
  hasError: hasError.value,
6857
6857
  validationMessage: validationMessage.value
6858
- })))])) : vue.createCommentVNode("", true)], 42, _hoisted_1$I);
6858
+ })))])) : vue.createCommentVNode("", true)], 42, _hoisted_1$J);
6859
6859
  };
6860
6860
  }
6861
6861
  });
6862
- const _sfc_main$V = vue.defineComponent({
6862
+ const _sfc_main$W = vue.defineComponent({
6863
6863
  name: "FExpand",
6864
6864
  data() {
6865
6865
  return {
@@ -6925,7 +6925,7 @@ function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
6925
6925
  _: 3
6926
6926
  }, 8, ["onEnter", "onAfterEnter", "onLeave"]);
6927
6927
  }
6928
- const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["render", _sfc_render$B]]);
6928
+ const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["render", _sfc_render$B]]);
6929
6929
  function offset(page, el) {
6930
6930
  const rect = el.getBoundingClientRect();
6931
6931
  return {
@@ -7210,7 +7210,7 @@ function isTeleportDisabled(options) {
7210
7210
  }
7211
7211
  return disableTeleport;
7212
7212
  }
7213
- const _sfc_main$U = vue.defineComponent({
7213
+ const _sfc_main$V = vue.defineComponent({
7214
7214
  name: "IPopup",
7215
7215
  inheritAttrs: false,
7216
7216
  props: {
@@ -7512,7 +7512,7 @@ function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
7512
7512
  placement: _ctx.placement
7513
7513
  })))], 544)], 16)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
7514
7514
  }
7515
- const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$A]]);
7515
+ const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["render", _sfc_render$A]]);
7516
7516
  function computeArrowOffset(placement, inputIconRect, wrapperRect) {
7517
7517
  switch (placement) {
7518
7518
  case Placement.A: {
@@ -7576,7 +7576,7 @@ function computeArrowOffset(placement, inputIconRect, wrapperRect) {
7576
7576
  }
7577
7577
  }
7578
7578
  const POPUP_SPACING = 10;
7579
- const _sfc_main$T = vue.defineComponent({
7579
+ const _sfc_main$U = vue.defineComponent({
7580
7580
  name: "IPopupError",
7581
7581
  components: {
7582
7582
  FIcon
@@ -7714,7 +7714,7 @@ const _sfc_main$T = vue.defineComponent({
7714
7714
  }
7715
7715
  }
7716
7716
  });
7717
- const _hoisted_1$H = {
7717
+ const _hoisted_1$I = {
7718
7718
  ref: "wrapper",
7719
7719
  class: "popup-error__wrapper"
7720
7720
  };
@@ -7728,7 +7728,7 @@ function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
7728
7728
  ref: "popup",
7729
7729
  class: vue.normalizeClass(_ctx.popupClasses),
7730
7730
  "aria-hidden": "true"
7731
- }, [vue.createElementVNode("div", _hoisted_1$H, [vue.createElementVNode("div", {
7731
+ }, [vue.createElementVNode("div", _hoisted_1$I, [vue.createElementVNode("div", {
7732
7732
  class: vue.normalizeClass(_ctx.arrowClass),
7733
7733
  style: vue.normalizeStyle(_ctx.errorStyle)
7734
7734
  }, [vue.createElementVNode("span", null, vue.toDisplayString(_ctx.errorMessage), 1), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("button", {
@@ -7742,7 +7742,7 @@ function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
7742
7742
  class: "button__icon"
7743
7743
  })])], 6)], 512)], 2)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
7744
7744
  }
7745
- const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$z]]);
7745
+ const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$z]]);
7746
7746
  function numItems(itemHeight, availableHeight, verticalSpacing) {
7747
7747
  const itemsFit = Math.floor((availableHeight - verticalSpacing) / itemHeight);
7748
7748
  return Math.min(itemsFit, 7);
@@ -7809,12 +7809,12 @@ function computeListboxRect(anchor, options, root = document.documentElement, {
7809
7809
  }
7810
7810
  return void 0;
7811
7811
  }
7812
- const _hoisted_1$G = ["onKeyup"];
7812
+ const _hoisted_1$H = ["onKeyup"];
7813
7813
  const _hoisted_2$v = {
7814
7814
  ref: "content"
7815
7815
  };
7816
7816
  const teleportDisabled = false;
7817
- const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
7817
+ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
7818
7818
  __name: "IPopupListbox",
7819
7819
  props: {
7820
7820
  isOpen: {
@@ -7919,7 +7919,11 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
7919
7919
  }
7920
7920
  if (verticalSpacing === void 0) {
7921
7921
  const absWrapper = getAbsolutePosition(wrapperElement);
7922
- const marginTotal = absWrapper.y * 2;
7922
+ const {
7923
+ marginTop,
7924
+ marginBottom
7925
+ } = getComputedStyle(wrapperElement);
7926
+ const marginTotal = parseInt(marginTop, 10) + parseInt(marginBottom, 10);
7923
7927
  verticalSpacing = Math.ceil(absWrapper.height - contentItemHeigth * __props.numOfItems) + marginTotal;
7924
7928
  }
7925
7929
  wrapperElement.style.overflowY = "auto";
@@ -7931,7 +7935,7 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
7931
7935
  verticalSpacing
7932
7936
  });
7933
7937
  if (rect) {
7934
- var _offsetRect$x;
7938
+ var _offsetRect$x, _offsetRect$top;
7935
7939
  const {
7936
7940
  top,
7937
7941
  left,
@@ -7940,7 +7944,8 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
7940
7944
  } = rect;
7941
7945
  const offsetRect = (_a = wrapperElement == null ? void 0 : wrapperElement.offsetParent) == null ? void 0 : _a.getBoundingClientRect();
7942
7946
  const offsetLeft = (_offsetRect$x = offsetRect == null ? void 0 : offsetRect.x) !== null && _offsetRect$x !== void 0 ? _offsetRect$x : 0;
7943
- wrapperElement.style.top = `${top}px`;
7947
+ const offSetTop = Math.floor(((_offsetRect$top = offsetRect == null ? void 0 : offsetRect.top) !== null && _offsetRect$top !== void 0 ? _offsetRect$top : 0) + window.scrollY);
7948
+ wrapperElement.style.top = `${top - offSetTop}px`;
7944
7949
  wrapperElement.style.left = `${left - offsetLeft}px`;
7945
7950
  wrapperElement.style.width = `${width}px`;
7946
7951
  contentWrapper.style.maxHeight = `${height}px`;
@@ -7963,7 +7968,7 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
7963
7968
  onKeyup: vue.withKeys(vue.withModifiers(onKeyEsc, ["stop"]), ["esc"]),
7964
7969
  onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
7965
7970
  }, ["stop"]))
7966
- }), [vue.createElementVNode("div", _hoisted_2$v, [vue.renderSlot(_ctx.$slots, "default")], 512)], 16, _hoisted_1$G)], 512)], 8, ["to"])) : vue.createCommentVNode("", true);
7971
+ }), [vue.createElementVNode("div", _hoisted_2$v, [vue.renderSlot(_ctx.$slots, "default")], 512)], 16, _hoisted_1$H)], 512)], 8, ["to"])) : vue.createCommentVNode("", true);
7967
7972
  };
7968
7973
  }
7969
7974
  });
@@ -8007,7 +8012,7 @@ async function doMenuAction$2(action, target) {
8007
8012
  }
8008
8013
  }
8009
8014
  const preventKeys$2 = ["Tab", "Up", "Down", "ArrowUp", "ArrowDown", "Home", "End", " ", "Spacebar", "Enter"];
8010
- const _sfc_main$R = vue.defineComponent({
8015
+ const _sfc_main$S = vue.defineComponent({
8011
8016
  name: "IPopupMenu",
8012
8017
  components: {
8013
8018
  IPopup
@@ -8262,7 +8267,7 @@ const _sfc_main$R = vue.defineComponent({
8262
8267
  }
8263
8268
  }
8264
8269
  });
8265
- const _hoisted_1$F = ["aria-label"];
8270
+ const _hoisted_1$G = ["aria-label"];
8266
8271
  const _hoisted_2$u = {
8267
8272
  role: "menu",
8268
8273
  class: "ipopupmenu__list"
@@ -8305,17 +8310,17 @@ function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
8305
8310
  target: item.target,
8306
8311
  tabindex: "0"
8307
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$p);
8308
- }), 128))])], 8, _hoisted_1$F)]),
8313
+ }), 128))])], 8, _hoisted_1$G)]),
8309
8314
  _: 1
8310
8315
  }, 8, ["is-open", "anchor", "focus-element", "onKeyup", "onKeydown"]);
8311
8316
  }
8312
- const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["render", _sfc_render$y]]);
8317
+ const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$y]]);
8313
8318
  const ANIMATION_DURATION = 500;
8314
8319
  const NO_CSS_CLASSES = "";
8315
8320
  const CLOSED_CSS_CLASS_OPACITY = "animate-expand animate-expand--opacity";
8316
8321
  const CLOSED_CSS_CLASS = "animate-expand";
8317
8322
  const ANIMATION_CSS_CLASSES = "animate-expand animate-expand--expanded";
8318
- const _sfc_main$Q = vue.defineComponent({
8323
+ const _sfc_main$R = vue.defineComponent({
8319
8324
  name: "IAnimateExpand",
8320
8325
  props: {
8321
8326
  /**
@@ -8507,7 +8512,7 @@ const _sfc_main$Q = vue.defineComponent({
8507
8512
  }
8508
8513
  }
8509
8514
  });
8510
- const _hoisted_1$E = {
8515
+ const _hoisted_1$F = {
8511
8516
  key: 0,
8512
8517
  ref: "content",
8513
8518
  "data-test": "animation-content"
@@ -8516,10 +8521,10 @@ function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) {
8516
8521
  return vue.openBlock(), vue.createElementBlock("div", {
8517
8522
  class: vue.normalizeClass(_ctx.animationClasses),
8518
8523
  style: vue.normalizeStyle(_ctx.heightStyle)
8519
- }, [_ctx.shouldVIf ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [vue.renderSlot(_ctx.$slots, "default")], 512)), [[vue.vShow, _ctx.shouldVShow]]) : vue.createCommentVNode("", true)], 6);
8524
+ }, [_ctx.shouldVIf ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_1$F, [vue.renderSlot(_ctx.$slots, "default")], 512)), [[vue.vShow, _ctx.shouldVShow]]) : vue.createCommentVNode("", true)], 6);
8520
8525
  }
8521
- const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$x]]);
8522
- const _sfc_main$P = vue.defineComponent({
8526
+ const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["render", _sfc_render$x]]);
8527
+ const _sfc_main$Q = vue.defineComponent({
8523
8528
  name: "ISkipLink",
8524
8529
  mixins: [TranslationMixin],
8525
8530
  props: {
@@ -8533,14 +8538,14 @@ const _sfc_main$P = vue.defineComponent({
8533
8538
  }
8534
8539
  }
8535
8540
  });
8536
- const _hoisted_1$D = ["href"];
8541
+ const _hoisted_1$E = ["href"];
8537
8542
  function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) {
8538
8543
  return vue.openBlock(), vue.createElementBlock("a", {
8539
8544
  class: "iskiplink",
8540
8545
  href: _ctx.href
8541
- }, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.skip-link.text", "Gå direkt till innehåll")), 1)])], 8, _hoisted_1$D);
8546
+ }, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.skip-link.text", "Gå direkt till innehåll")), 1)])], 8, _hoisted_1$E);
8542
8547
  }
8543
- const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$w]]);
8548
+ const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$w]]);
8544
8549
  function filterOptions(options, filter2, selectMode) {
8545
8550
  if (logic.isEmpty(filter2) || selectMode) {
8546
8551
  return options;
@@ -8786,12 +8791,12 @@ function useCombobox(inputRef, options, onOptionSelected) {
8786
8791
  }
8787
8792
  }
8788
8793
  }
8789
- const _hoisted_1$C = {
8794
+ const _hoisted_1$D = {
8790
8795
  class: "combobox"
8791
8796
  };
8792
8797
  const _hoisted_2$t = ["id"];
8793
8798
  const _hoisted_3$o = ["id", "aria-selected", "onClick"];
8794
- const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
8799
+ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
8795
8800
  __name: "IComboboxDropdown",
8796
8801
  props: {
8797
8802
  id: {},
@@ -8828,7 +8833,7 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
8828
8833
  }
8829
8834
  });
8830
8835
  return (_ctx, _cache) => {
8831
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$C, [vue.createVNode(vue.unref(_sfc_main$S), {
8836
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D, [vue.createVNode(vue.unref(_sfc_main$T), {
8832
8837
  "is-open": _ctx.isOpen,
8833
8838
  anchor: _ctx.inputNode,
8834
8839
  "num-of-items": _ctx.options.length,
@@ -8859,8 +8864,8 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
8859
8864
  };
8860
8865
  }
8861
8866
  });
8862
- const _hoisted_1$B = ["aria-label"];
8863
- const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
8867
+ const _hoisted_1$C = ["aria-label"];
8868
+ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
8864
8869
  __name: "IComboboxToggleButton",
8865
8870
  emits: ["toggle"],
8866
8871
  setup(__props, {
@@ -8879,7 +8884,7 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
8879
8884
  }, [vue.createVNode(vue.unref(FIcon), {
8880
8885
  name: "arrow-down",
8881
8886
  class: "text-field__icon"
8882
- })], 8, _hoisted_1$B);
8887
+ })], 8, _hoisted_1$C);
8883
8888
  };
8884
8889
  }
8885
8890
  });
@@ -8981,7 +8986,7 @@ function useHorizontalOffset(options) {
8981
8986
  }, 0);
8982
8987
  }
8983
8988
  }
8984
- const _sfc_main$M = vue.defineComponent({
8989
+ const _sfc_main$N = vue.defineComponent({
8985
8990
  name: "FTooltip",
8986
8991
  components: {
8987
8992
  FExpand,
@@ -9140,7 +9145,7 @@ const _sfc_main$M = vue.defineComponent({
9140
9145
  }
9141
9146
  }
9142
9147
  });
9143
- const _hoisted_1$A = ["aria-expanded"];
9148
+ const _hoisted_1$B = ["aria-expanded"];
9144
9149
  const _hoisted_2$s = {
9145
9150
  class: "icon-stack icon-stack--tooltip"
9146
9151
  };
@@ -9173,7 +9178,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
9173
9178
  name: "circle"
9174
9179
  }), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
9175
9180
  name: "i"
9176
- }), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$n, vue.toDisplayString(_ctx.screenReaderText), 1)])], 8, _hoisted_1$A)], 8, ["disabled", "to"])), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createElementVNode("div", vue.mergeProps({
9181
+ }), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_3$n, vue.toDisplayString(_ctx.screenReaderText), 1)])], 8, _hoisted_1$B)], 8, ["disabled", "to"])), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createElementVNode("div", vue.mergeProps({
9177
9182
  ref: "wrapper",
9178
9183
  class: "tooltip"
9179
9184
  }, _ctx.$attrs), [_ctx.ready ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$k, [_ctx.hasHeader ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.headerTag), {
@@ -9191,7 +9196,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
9191
9196
  name: "close"
9192
9197
  })])])])) : vue.createCommentVNode("", true)], 16)], 64);
9193
9198
  }
9194
- const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$v]]);
9199
+ const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$v]]);
9195
9200
  function* labelClasses(options) {
9196
9201
  const {
9197
9202
  labelClass
@@ -9232,7 +9237,7 @@ function isEqual(a, b) {
9232
9237
  }
9233
9238
  return a.every((_, i) => a[i] === b[i]);
9234
9239
  }
9235
- const _sfc_main$L = vue.defineComponent({
9240
+ const _sfc_main$M = vue.defineComponent({
9236
9241
  name: "FFieldset",
9237
9242
  components: {
9238
9243
  FIcon
@@ -9460,7 +9465,7 @@ const _sfc_main$L = vue.defineComponent({
9460
9465
  }
9461
9466
  }
9462
9467
  });
9463
- const _hoisted_1$z = ["id"];
9468
+ const _hoisted_1$A = ["id"];
9464
9469
  const _hoisted_2$r = {
9465
9470
  key: 0,
9466
9471
  class: "sr-only"
@@ -9527,11 +9532,11 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
9527
9532
  name: "error"
9528
9533
  }), vue.createTextVNode(" " + vue.toDisplayString(_ctx.validity.validationMessage), 1)])) : vue.createCommentVNode("", true)])], 2)) : vue.createCommentVNode("", true)], 64)) : vue.createCommentVNode("", true), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.createElementVNode("div", {
9529
9534
  class: vue.normalizeClass(_ctx.groupContentClass)
9530
- }, [vue.renderSlot(_ctx.$slots, "default")], 2)], 42, _hoisted_1$z);
9535
+ }, [vue.renderSlot(_ctx.$slots, "default")], 2)], 42, _hoisted_1$A);
9531
9536
  }
9532
- const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$u]]);
9537
+ const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$u]]);
9533
9538
  const anyType$1 = [String, Object, Array, Number, Date, Boolean];
9534
- const _sfc_main$K = vue.defineComponent({
9539
+ const _sfc_main$L = vue.defineComponent({
9535
9540
  name: "FCheckboxField",
9536
9541
  inheritAttrs: false,
9537
9542
  props: {
@@ -9717,7 +9722,7 @@ const _sfc_main$K = vue.defineComponent({
9717
9722
  }
9718
9723
  }
9719
9724
  });
9720
- const _hoisted_1$y = ["id", "disabled"];
9725
+ const _hoisted_1$z = ["id", "disabled"];
9721
9726
  const _hoisted_2$q = ["for"];
9722
9727
  const _hoisted_3$l = {
9723
9728
  key: 0,
@@ -9740,7 +9745,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
9740
9745
  disabled: _ctx.disabled,
9741
9746
  onKeydown: _cache[0] || (_cache[0] = vue.withKeys((...args) => _ctx.onKeydown && _ctx.onKeydown(...args), ["space"])),
9742
9747
  onChange: _cache[1] || (_cache[1] = ($event) => _ctx.updateExpandedFlag())
9743
- }), null, 16, _hoisted_1$y), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.createElementVNode("label", {
9748
+ }), null, 16, _hoisted_1$z), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.createElementVNode("label", {
9744
9749
  class: vue.normalizeClass(_ctx.$slots.details ? "checkbox__label checkbox__width" : "checkbox__label"),
9745
9750
  for: _ctx.id
9746
9751
  }, [vue.renderSlot(_ctx.$slots, "default"), _cache[8] || (_cache[8] = vue.createTextVNode()), _ctx.$slots.details ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
@@ -9757,7 +9762,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
9757
9762
  _: 3
9758
9763
  }, 8, ["onEnter", "onAfterEnter", "onLeave"])) : vue.createCommentVNode("", true)], 64)) : vue.createCommentVNode("", true)], 10, _hoisted_2$q)], 34);
9759
9764
  }
9760
- const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$t]]);
9765
+ const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$t]]);
9761
9766
  var es_iterator_some = {};
9762
9767
  var hasRequiredEs_iterator_some;
9763
9768
  function requireEs_iterator_some() {
@@ -9836,7 +9841,7 @@ async function doMenuAction$1(action, target) {
9836
9841
  }
9837
9842
  const preventKeys$1 = ["Tab", "Up", "Down", "ArrowUp", "ArrowDown", "Home", "End", " ", "Spacebar", "Enter", "Escape"];
9838
9843
  const keyUp = ["ArrowUp", "Up"];
9839
- const _sfc_main$J = vue.defineComponent({
9844
+ const _sfc_main$K = vue.defineComponent({
9840
9845
  name: "FContextMenu",
9841
9846
  components: {
9842
9847
  IPopup,
@@ -10000,7 +10005,7 @@ const _sfc_main$J = vue.defineComponent({
10000
10005
  }
10001
10006
  }
10002
10007
  });
10003
- const _hoisted_1$x = ["aria-label"];
10008
+ const _hoisted_1$y = ["aria-label"];
10004
10009
  const _hoisted_2$p = {
10005
10010
  ref: "contextmenu",
10006
10011
  role: "menu",
@@ -10049,11 +10054,11 @@ function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
10049
10054
  ref_for: true,
10050
10055
  ref: "anchors"
10051
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$k);
10052
- }), 128))], 512)], 40, _hoisted_1$x)]),
10057
+ }), 128))], 512)], 40, _hoisted_1$y)]),
10053
10058
  _: 1
10054
10059
  }, 8, ["is-open", "anchor", "focus-element"]);
10055
10060
  }
10056
- const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$s]]);
10061
+ const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$s]]);
10057
10062
  var Operation = /* @__PURE__ */ ((Operation2) => {
10058
10063
  Operation2[Operation2["ADD"] = 0] = "ADD";
10059
10064
  Operation2[Operation2["DELETE"] = 1] = "DELETE";
@@ -10061,13 +10066,13 @@ var Operation = /* @__PURE__ */ ((Operation2) => {
10061
10066
  Operation2[Operation2["NONE"] = 3] = "NONE";
10062
10067
  return Operation2;
10063
10068
  })(Operation || {});
10064
- const _hoisted_1$w = {
10069
+ const _hoisted_1$x = {
10065
10070
  class: "crud-dataset"
10066
10071
  };
10067
10072
  const _hoisted_2$o = {
10068
10073
  key: 0
10069
10074
  };
10070
- const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
10075
+ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10071
10076
  __name: "FCrudDataset",
10072
10077
  props: {
10073
10078
  /**
@@ -10297,7 +10302,7 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
10297
10302
  isFormModalOpen.value = true;
10298
10303
  }
10299
10304
  return (_ctx, _cache) => {
10300
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), hasAddSlot.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [vue.createElementVNode("button", {
10305
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$x, [vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), hasAddSlot.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [vue.createElementVNode("button", {
10301
10306
  "data-test": "f-crud-dataset-add-button",
10302
10307
  type: "button",
10303
10308
  class: "button button--tertiary crud-dataset__add-button",
@@ -10349,7 +10354,7 @@ function FCrudDatasetInjected() {
10349
10354
  modify: vue.inject("modify")
10350
10355
  };
10351
10356
  }
10352
- const _sfc_main$H = vue.defineComponent({
10357
+ const _sfc_main$I = vue.defineComponent({
10353
10358
  name: "FCrudButton",
10354
10359
  components: {
10355
10360
  FIcon
@@ -10405,7 +10410,7 @@ const _sfc_main$H = vue.defineComponent({
10405
10410
  }
10406
10411
  }
10407
10412
  });
10408
- const _hoisted_1$v = {
10413
+ const _hoisted_1$w = {
10409
10414
  key: 1,
10410
10415
  class: "sr-only"
10411
10416
  };
@@ -10419,11 +10424,11 @@ function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
10419
10424
  key: 0,
10420
10425
  class: "button__icon",
10421
10426
  name: _ctx.iconName
10422
- }, null, 8, ["name"])) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), !_ctx.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$v, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)])])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), _ctx.label ? vue.renderSlot(_ctx.$slots, "default", {
10427
+ }, null, 8, ["name"])) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), !_ctx.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$w, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)])])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), _ctx.label ? vue.renderSlot(_ctx.$slots, "default", {
10423
10428
  key: 2
10424
10429
  }, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)]) : vue.createCommentVNode("", true)]);
10425
10430
  }
10426
- const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$r]]);
10431
+ const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$r]]);
10427
10432
  function ActivateItemInjected() {
10428
10433
  return {
10429
10434
  registerCallbackAfterItemAdd: vue.inject("registerCallbackAfterItemAdd", () => void 0),
@@ -10507,7 +10512,7 @@ function FTableInjected() {
10507
10512
  renderColumns: vue.inject("renderColumns", false)
10508
10513
  };
10509
10514
  }
10510
- const _sfc_main$G = vue.defineComponent({
10515
+ const _sfc_main$H = vue.defineComponent({
10511
10516
  name: "FTableColumn",
10512
10517
  inheritAttrs: false,
10513
10518
  props: {
@@ -10660,7 +10665,7 @@ function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
10660
10665
  _: 3
10661
10666
  }, 16, ["class", "scope"])) : vue.createCommentVNode("", true);
10662
10667
  }
10663
- const FTableColumn = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$q]]);
10668
+ const FTableColumn = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$q]]);
10664
10669
  function FSortFilterDatasetInjected() {
10665
10670
  return {
10666
10671
  sort: vue.inject("sort", () => void 0),
@@ -10668,7 +10673,7 @@ function FSortFilterDatasetInjected() {
10668
10673
  registerCallbackOnMount: vue.inject("registerCallbackOnMount", () => void 0)
10669
10674
  };
10670
10675
  }
10671
- const _sfc_main$F = vue.defineComponent({
10676
+ const _sfc_main$G = vue.defineComponent({
10672
10677
  name: "FLabel",
10673
10678
  components: {
10674
10679
  FIcon
@@ -10707,7 +10712,7 @@ const _sfc_main$F = vue.defineComponent({
10707
10712
  }
10708
10713
  }
10709
10714
  });
10710
- const _hoisted_1$u = {
10715
+ const _hoisted_1$v = {
10711
10716
  key: 0
10712
10717
  };
10713
10718
  const _hoisted_2$n = {
@@ -10727,7 +10732,7 @@ const _hoisted_7$a = {
10727
10732
  };
10728
10733
  function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
10729
10734
  const _component_f_icon = vue.resolveComponent("f-icon");
10730
- return _ctx.$slots.tooltip ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [_ctx.hasDefaultSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$n, [vue.createElementVNode("label", {
10735
+ return _ctx.$slots.tooltip ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [_ctx.hasDefaultSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$n, [vue.createElementVNode("label", {
10731
10736
  class: "label",
10732
10737
  for: _ctx.forProperty
10733
10738
  }, [vue.renderSlot(_ctx.$slots, "default")], 8, _hoisted_3$j)], 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", {
@@ -10752,11 +10757,11 @@ function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
10752
10757
  name: "error"
10753
10758
  }), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "error-message")])) : vue.createCommentVNode("", true)], 8, _hoisted_6$b));
10754
10759
  }
10755
- const FLabel = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$p]]);
10760
+ const FLabel = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$p]]);
10756
10761
  function resolveWidthClass$1(words, inline) {
10757
10762
  return inline ? void 0 : words.split(" ").map((word) => `i-width-${word}`).join(" ");
10758
10763
  }
10759
- const _sfc_main$E = vue.defineComponent({
10764
+ const _sfc_main$F = vue.defineComponent({
10760
10765
  name: "FSelectField",
10761
10766
  components: {
10762
10767
  FIcon,
@@ -10887,7 +10892,7 @@ const _sfc_main$E = vue.defineComponent({
10887
10892
  }
10888
10893
  }
10889
10894
  });
10890
- const _hoisted_1$t = ["id"];
10895
+ const _hoisted_1$u = ["id"];
10891
10896
  function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) {
10892
10897
  const _component_f_label = vue.resolveComponent("f-label");
10893
10898
  const _component_f_icon = vue.resolveComponent("f-icon");
@@ -10925,7 +10930,7 @@ function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) {
10925
10930
  id: _ctx.id,
10926
10931
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.vModel = $event),
10927
10932
  class: "select-field__select"
10928
- }, _ctx.attrs), [vue.renderSlot(_ctx.$slots, "default")], 16, _hoisted_1$t), [[vue.vModelSelect, _ctx.vModel]]), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.hasError && _ctx.textFieldTableMode ? (vue.openBlock(), vue.createBlock(_component_f_icon, {
10933
+ }, _ctx.attrs), [vue.renderSlot(_ctx.$slots, "default")], 16, _hoisted_1$u), [[vue.vModelSelect, _ctx.vModel]]), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.hasError && _ctx.textFieldTableMode ? (vue.openBlock(), vue.createBlock(_component_f_icon, {
10929
10934
  key: 0,
10930
10935
  ref: "icon",
10931
10936
  class: "text-field__icon input-icon select-field__error-popup-icon",
@@ -10935,7 +10940,7 @@ function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) {
10935
10940
  name: "arrow-down"
10936
10941
  })], 2)], 34);
10937
10942
  }
10938
- const FSelectField = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$o]]);
10943
+ const FSelectField = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$o]]);
10939
10944
  function resolveWidthClass(words, inline) {
10940
10945
  return inline ? void 0 : words.split(" ").map((word) => `i-width-${word}`).join(" ");
10941
10946
  }
@@ -10979,14 +10984,14 @@ function useTextFieldSetup(props) {
10979
10984
  closeDropdown
10980
10985
  };
10981
10986
  }
10982
- const _sfc_main$D = vue.defineComponent({
10987
+ const _sfc_main$E = vue.defineComponent({
10983
10988
  name: "FTextField",
10984
10989
  components: {
10985
10990
  FLabel,
10986
10991
  FIcon,
10987
10992
  IPopupError,
10988
- IComboboxDropdown: _sfc_main$O,
10989
- IComboboxToggleButton: _sfc_main$N
10993
+ IComboboxDropdown: _sfc_main$P,
10994
+ IComboboxToggleButton: _sfc_main$O
10990
10995
  },
10991
10996
  inheritAttrs: false,
10992
10997
  props: {
@@ -11317,7 +11322,7 @@ const _sfc_main$D = vue.defineComponent({
11317
11322
  }
11318
11323
  }
11319
11324
  });
11320
- const _hoisted_1$s = {
11325
+ const _hoisted_1$t = {
11321
11326
  key: 0
11322
11327
  };
11323
11328
  const _hoisted_2$m = {
@@ -11354,7 +11359,7 @@ function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
11354
11359
  for: _ctx.id,
11355
11360
  class: vue.normalizeClass(_ctx.labelClass)
11356
11361
  }, vue.createSlots({
11357
- default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", {}, () => [_ctx.defaultText !== "" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$s, vue.toDisplayString(_ctx.defaultText), 1)) : vue.createCommentVNode("", true)])]),
11362
+ default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", {}, () => [_ctx.defaultText !== "" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$t, vue.toDisplayString(_ctx.defaultText), 1)) : vue.createCommentVNode("", true)])]),
11358
11363
  description: vue.withCtx(({
11359
11364
  descriptionClass,
11360
11365
  formatDescriptionClass
@@ -11423,8 +11428,8 @@ function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
11423
11428
  onClose: _ctx.onDropdownClose
11424
11429
  }, null, 8, ["id", "is-open", "options", "active-option", "active-option-id", "input-node", "onSelect", "onClose"])) : vue.createCommentVNode("", true)], 2);
11425
11430
  }
11426
- const FTextField = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$n]]);
11427
- const _sfc_main$C = vue.defineComponent({
11431
+ const FTextField = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$n]]);
11432
+ const _sfc_main$D = vue.defineComponent({
11428
11433
  name: "FEmailTextField",
11429
11434
  components: {
11430
11435
  FTextField
@@ -11540,7 +11545,7 @@ const _sfc_main$C = vue.defineComponent({
11540
11545
  }
11541
11546
  }
11542
11547
  });
11543
- const _hoisted_1$r = {
11548
+ const _hoisted_1$s = {
11544
11549
  key: 0
11545
11550
  };
11546
11551
  function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
@@ -11557,7 +11562,7 @@ function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
11557
11562
  onValidity: _ctx.onValidity,
11558
11563
  onPendingValidity: _ctx.onPendingValidity
11559
11564
  }), {
11560
- "error-message": vue.withCtx(() => [_ctx.showPasteErrorMessage ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$r, vue.toDisplayString(_ctx.pasteErrorText), 1)) : vue.createCommentVNode("", true)]),
11565
+ "error-message": vue.withCtx(() => [_ctx.showPasteErrorMessage ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$s, vue.toDisplayString(_ctx.pasteErrorText), 1)) : vue.createCommentVNode("", true)]),
11561
11566
  default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.defaultText), 1)]), _cache[2] || (_cache[2] = vue.createTextVNode())]),
11562
11567
  _: 3
11563
11568
  }, 16, ["id", "maxlength", "model-value", "onChange", "onBlur", "onUpdate:modelValue", "onValidity", "onPendingValidity"]), _cache[3] || (_cache[3] = vue.createTextVNode()), _ctx.extendedValidation ? (vue.openBlock(), vue.createBlock(_component_f_text_field, {
@@ -11573,8 +11578,8 @@ function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
11573
11578
  _: 3
11574
11579
  }, 8, ["modelValue", "maxlength", "onPaste"])) : vue.createCommentVNode("", true)]);
11575
11580
  }
11576
- const FEmailTextField = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$m]]);
11577
- const _sfc_main$B = vue.defineComponent({
11581
+ const FEmailTextField = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$m]]);
11582
+ const _sfc_main$C = vue.defineComponent({
11578
11583
  name: "FPhoneTextField",
11579
11584
  components: {
11580
11585
  FTextField
@@ -11701,8 +11706,8 @@ function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) {
11701
11706
  _: 3
11702
11707
  }, 8, ["modelValue", "maxlength"])) : vue.createCommentVNode("", true)]);
11703
11708
  }
11704
- const FPhoneTextField = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$l]]);
11705
- const _sfc_main$A = vue.defineComponent({
11709
+ const FPhoneTextField = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$l]]);
11710
+ const _sfc_main$B = vue.defineComponent({
11706
11711
  name: "FCurrencyTextField",
11707
11712
  extends: FTextField,
11708
11713
  mixins: [TranslationMixin],
@@ -11737,7 +11742,7 @@ const _sfc_main$A = vue.defineComponent({
11737
11742
  logic.ValidationService.validateElement(inputElement);
11738
11743
  }
11739
11744
  });
11740
- const _sfc_main$z = vue.defineComponent({
11745
+ const _sfc_main$A = vue.defineComponent({
11741
11746
  name: "FSearchTextField",
11742
11747
  components: {
11743
11748
  FTextField,
@@ -11797,7 +11802,7 @@ const _sfc_main$z = vue.defineComponent({
11797
11802
  }
11798
11803
  }
11799
11804
  });
11800
- const _hoisted_1$q = {
11805
+ const _hoisted_1$r = {
11801
11806
  class: "sr-only"
11802
11807
  };
11803
11808
  function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) {
@@ -11846,12 +11851,12 @@ function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) {
11846
11851
  }, [vue.createVNode(_component_f_icon, {
11847
11852
  name: "cross",
11848
11853
  class: "clear-button__icon"
11849
- }), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_1$q, vue.toDisplayString(_ctx.clearableScreenReaderText), 1)])]),
11854
+ }), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_1$r, vue.toDisplayString(_ctx.clearableScreenReaderText), 1)])]),
11850
11855
  key: "1"
11851
11856
  } : void 0]), 1040, ["id", "maxlength", "model-value", "onChange", "onInput", "onBlur", "onUpdate"])]);
11852
11857
  }
11853
- const FSearchTextField = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$k]]);
11854
- const _sfc_main$y = vue.defineComponent({
11858
+ const FSearchTextField = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render$k]]);
11859
+ const _sfc_main$z = vue.defineComponent({
11855
11860
  name: "FBankAccountNumberTextField",
11856
11861
  extends: FTextField,
11857
11862
  mixins: [TranslationMixin],
@@ -11880,7 +11885,7 @@ const _sfc_main$y = vue.defineComponent({
11880
11885
  logic.ValidationService.validateElement(inputElement);
11881
11886
  }
11882
11887
  });
11883
- const _sfc_main$x = vue.defineComponent({
11888
+ const _sfc_main$y = vue.defineComponent({
11884
11889
  name: "FBankgiroTextField",
11885
11890
  extends: FTextField,
11886
11891
  mixins: [TranslationMixin],
@@ -11912,7 +11917,7 @@ const _sfc_main$x = vue.defineComponent({
11912
11917
  logic.ValidationService.validateElement(inputElement);
11913
11918
  }
11914
11919
  });
11915
- const _sfc_main$w = vue.defineComponent({
11920
+ const _sfc_main$x = vue.defineComponent({
11916
11921
  name: "FClearingnumberTextField",
11917
11922
  extends: FTextField,
11918
11923
  mixins: [TranslationMixin],
@@ -11944,7 +11949,7 @@ const _sfc_main$w = vue.defineComponent({
11944
11949
  function defaultFormatter$1(modelValue) {
11945
11950
  return logic.formatNumber(modelValue, this.decimals);
11946
11951
  }
11947
- const _sfc_main$v = vue.defineComponent({
11952
+ const _sfc_main$w = vue.defineComponent({
11948
11953
  name: "FNumericTextField",
11949
11954
  extends: FTextField,
11950
11955
  props: {
@@ -11981,7 +11986,7 @@ const _sfc_main$v = vue.defineComponent({
11981
11986
  logic.ValidationService.validateElement(inputElement);
11982
11987
  }
11983
11988
  });
11984
- const _sfc_main$u = vue.defineComponent({
11989
+ const _sfc_main$v = vue.defineComponent({
11985
11990
  name: "FPersonnummerTextField",
11986
11991
  extends: FTextField,
11987
11992
  mixins: [TranslationMixin],
@@ -12021,7 +12026,7 @@ const _sfc_main$u = vue.defineComponent({
12021
12026
  logic.ValidationService.validateElement(inputElement);
12022
12027
  }
12023
12028
  });
12024
- const _sfc_main$t = vue.defineComponent({
12029
+ const _sfc_main$u = vue.defineComponent({
12025
12030
  name: "FPlusgiroTextField",
12026
12031
  extends: FTextField,
12027
12032
  mixins: [TranslationMixin],
@@ -12053,7 +12058,7 @@ const _sfc_main$t = vue.defineComponent({
12053
12058
  logic.ValidationService.validateElement(inputElement);
12054
12059
  }
12055
12060
  });
12056
- const _sfc_main$s = vue.defineComponent({
12061
+ const _sfc_main$t = vue.defineComponent({
12057
12062
  name: "FPostalCodeTextField",
12058
12063
  extends: FTextField,
12059
12064
  mixins: [TranslationMixin],
@@ -12090,7 +12095,7 @@ const _sfc_main$s = vue.defineComponent({
12090
12095
  function defaultFormatter(modelValue) {
12091
12096
  return logic.formatPercent(modelValue, this.decimals);
12092
12097
  }
12093
- const _sfc_main$r = vue.defineComponent({
12098
+ const _sfc_main$s = vue.defineComponent({
12094
12099
  name: "FPercentTextField",
12095
12100
  extends: FTextField,
12096
12101
  mixins: [TranslationMixin],
@@ -12138,7 +12143,7 @@ const _sfc_main$r = vue.defineComponent({
12138
12143
  logic.ValidationService.validateElement(inputElement);
12139
12144
  }
12140
12145
  });
12141
- const _sfc_main$q = vue.defineComponent({
12146
+ const _sfc_main$r = vue.defineComponent({
12142
12147
  name: "FOrganisationsnummerTextField",
12143
12148
  extends: FTextField,
12144
12149
  mixins: [TranslationMixin],
@@ -12246,7 +12251,7 @@ function filter(list, filterAttributes, searchString) {
12246
12251
  const searchTerms = searchString.split(/\s+/).map((word) => word.toLocaleLowerCase());
12247
12252
  return list.filter((item) => includesAllSearchTerms(item, filterAttributes, searchTerms));
12248
12253
  }
12249
- const _hoisted_1$p = {
12254
+ const _hoisted_1$q = {
12250
12255
  class: "sort-filter-dataset"
12251
12256
  };
12252
12257
  const _hoisted_2$l = {
@@ -12266,7 +12271,7 @@ const _hoisted_6$9 = {
12266
12271
  }
12267
12272
  };
12268
12273
  const _hoisted_7$8 = ["value"];
12269
- const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
12274
+ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
12270
12275
  __name: "FSortFilterDataset",
12271
12276
  props: {
12272
12277
  /**
@@ -12452,7 +12457,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
12452
12457
  }
12453
12458
  }
12454
12459
  return (_ctx, _cache) => {
12455
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$p, [vue.createVNode(vue.unref(IFlex), {
12460
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$q, [vue.createVNode(vue.unref(IFlex), {
12456
12461
  collapse: "",
12457
12462
  gap: "3x",
12458
12463
  wrap: ""
@@ -12535,7 +12540,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
12535
12540
  };
12536
12541
  }
12537
12542
  });
12538
- const _hoisted_1$o = ["tabindex"];
12543
+ const _hoisted_1$p = ["tabindex"];
12539
12544
  const _hoisted_2$k = {
12540
12545
  key: 0
12541
12546
  };
@@ -12554,7 +12559,7 @@ const _hoisted_7$7 = {
12554
12559
  key: 1
12555
12560
  };
12556
12561
  const _hoisted_8$5 = ["colspan"];
12557
- const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
12562
+ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
12558
12563
  ...{
12559
12564
  inheritAttrs: false
12560
12565
  },
@@ -12733,7 +12738,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
12733
12738
  }, {
12734
12739
  row
12735
12740
  }))]);
12736
- }), 128))])], 16, _hoisted_1$o)], 2);
12741
+ }), 128))])], 16, _hoisted_1$p)], 2);
12737
12742
  };
12738
12743
  }
12739
12744
  });
@@ -12812,7 +12817,7 @@ function getDisplayMonth(minDate, maxDate, selectedDate, initialMonth) {
12812
12817
  }
12813
12818
  return month || date.FDate.now().startOfMonth();
12814
12819
  }
12815
- const _sfc_main$n = vue.defineComponent({
12820
+ const _sfc_main$o = vue.defineComponent({
12816
12821
  name: "FDatepickerField",
12817
12822
  components: {
12818
12823
  FCalendar,
@@ -13070,7 +13075,7 @@ const _sfc_main$n = vue.defineComponent({
13070
13075
  }
13071
13076
  }
13072
13077
  });
13073
- const _hoisted_1$n = {
13078
+ const _hoisted_1$o = {
13074
13079
  ref: "component",
13075
13080
  class: "datepicker-field"
13076
13081
  };
@@ -13087,7 +13092,7 @@ function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
13087
13092
  const _component_f_calendar_day = vue.resolveComponent("f-calendar-day");
13088
13093
  const _component_f_calendar = vue.resolveComponent("f-calendar");
13089
13094
  const _component_i_popup = vue.resolveComponent("i-popup");
13090
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$n, [vue.createElementVNode("div", {
13095
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [vue.createElementVNode("div", {
13091
13096
  ref: "calendarInputs",
13092
13097
  onFocusout: _cache[2] || (_cache[2] = (...args) => _ctx.onFocusoutTextFieldButton && _ctx.onFocusoutTextFieldButton(...args))
13093
13098
  }, [vue.createVNode(_component_f_text_field, vue.mergeProps(_ctx.$attrs, {
@@ -13177,11 +13182,11 @@ function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
13177
13182
  _: 1
13178
13183
  }, 8, ["is-open", "anchor", "inline", "onOpen", "onClose"])], 512);
13179
13184
  }
13180
- const FDatepickerField = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$j]]);
13185
+ const FDatepickerField = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$j]]);
13181
13186
  function isDialogueTreeEndQuestion(value) {
13182
13187
  return Boolean(value.userData);
13183
13188
  }
13184
- const _sfc_main$m = vue.defineComponent({
13189
+ const _sfc_main$n = vue.defineComponent({
13185
13190
  name: "FDialogueTree",
13186
13191
  components: {
13187
13192
  FIcon
@@ -13259,7 +13264,7 @@ const _sfc_main$m = vue.defineComponent({
13259
13264
  }
13260
13265
  }
13261
13266
  });
13262
- const _hoisted_1$m = {
13267
+ const _hoisted_1$n = {
13263
13268
  class: "dialogue-tree"
13264
13269
  };
13265
13270
  const _hoisted_2$i = {
@@ -13269,7 +13274,7 @@ const _hoisted_2$i = {
13269
13274
  const _hoisted_3$e = ["onClick"];
13270
13275
  function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
13271
13276
  const _component_f_icon = vue.resolveComponent("f-icon");
13272
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$m, [_ctx.options.length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_2$i, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (option, index) => {
13277
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$n, [_ctx.options.length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_2$i, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (option, index) => {
13273
13278
  return vue.openBlock(), vue.createElementBlock("li", {
13274
13279
  key: option.label,
13275
13280
  class: "dialogue-tree__list-item"
@@ -13287,8 +13292,8 @@ function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
13287
13292
  userData: _ctx.userData
13288
13293
  })))]);
13289
13294
  }
13290
- const FDialogueTree = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$i]]);
13291
- const _sfc_main$l = vue.defineComponent({
13295
+ const FDialogueTree = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$i]]);
13296
+ const _sfc_main$m = vue.defineComponent({
13292
13297
  name: "FExpandablePanel",
13293
13298
  components: {
13294
13299
  FIcon,
@@ -13362,7 +13367,7 @@ const _sfc_main$l = vue.defineComponent({
13362
13367
  }
13363
13368
  }
13364
13369
  });
13365
- const _hoisted_1$l = ["aria-expanded", "aria-controls"];
13370
+ const _hoisted_1$m = ["aria-expanded", "aria-controls"];
13366
13371
  const _hoisted_2$h = {
13367
13372
  class: "expandable-panel__icon"
13368
13373
  };
@@ -13408,7 +13413,7 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
13408
13413
  })
13409
13414
  }, [vue.createElementVNode("span", _hoisted_5$9, vue.toDisplayString(_ctx.screenReaderNotificationText), 1), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
13410
13415
  name: "bell"
13411
- })], 8, _hoisted_4$b)) : vue.createCommentVNode("", true)], 16, _hoisted_1$l)]),
13416
+ })], 8, _hoisted_4$b)) : vue.createCommentVNode("", true)], 16, _hoisted_1$m)]),
13412
13417
  _: 3
13413
13418
  })), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createVNode(_component_f_expand, null, {
13414
13419
  default: vue.withCtx(() => [vue.withDirectives(vue.createElementVNode("div", {
@@ -13418,8 +13423,8 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
13418
13423
  _: 3
13419
13424
  })], 2);
13420
13425
  }
13421
- const FExpandablePanel = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$h]]);
13422
- const _sfc_main$k = vue.defineComponent({
13426
+ const FExpandablePanel = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$h]]);
13427
+ const _sfc_main$l = vue.defineComponent({
13423
13428
  name: "FExpandableParagraph",
13424
13429
  components: {
13425
13430
  FIcon,
@@ -13501,7 +13506,7 @@ const _sfc_main$k = vue.defineComponent({
13501
13506
  }
13502
13507
  }
13503
13508
  });
13504
- const _hoisted_1$k = ["aria-expanded", "aria-controls"];
13509
+ const _hoisted_1$l = ["aria-expanded", "aria-controls"];
13505
13510
  const _hoisted_2$g = {
13506
13511
  class: "expandable-paragraph__icon"
13507
13512
  };
@@ -13541,7 +13546,7 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
13541
13546
  name: "dash"
13542
13547
  }), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createVNode(_component_f_icon, {
13543
13548
  name: "dash"
13544
- })])]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "title")], 16, _hoisted_1$k)]),
13549
+ })])]), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "title")], 16, _hoisted_1$l)]),
13545
13550
  _: 3
13546
13551
  }, 8, ["class"])), _cache[3] || (_cache[3] = vue.createTextVNode()), _ctx.hasRelatedSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$a, [vue.renderSlot(_ctx.$slots, "related")])) : vue.createCommentVNode("", true)], 2), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createVNode(_component_f_expand, null, {
13547
13552
  default: vue.withCtx(() => [vue.withDirectives(vue.createElementVNode("div", {
@@ -13551,7 +13556,7 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
13551
13556
  _: 3
13552
13557
  })], 2);
13553
13558
  }
13554
- const FExpandableParagraph = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$g]]);
13559
+ const FExpandableParagraph = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$g]]);
13555
13560
  const DEFAULT_ICON = "file";
13556
13561
  const iconMap = {
13557
13562
  "image/*": "pic",
@@ -13560,7 +13565,7 @@ const iconMap = {
13560
13565
  "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "doc",
13561
13566
  "application/vnd.openxmlformats-officedocument.wordprocessingml.template": "doc"
13562
13567
  };
13563
- const _sfc_main$j = vue.defineComponent({
13568
+ const _sfc_main$k = vue.defineComponent({
13564
13569
  name: "FFileItem",
13565
13570
  components: {
13566
13571
  FIcon
@@ -13639,7 +13644,7 @@ const _sfc_main$j = vue.defineComponent({
13639
13644
  }
13640
13645
  }
13641
13646
  });
13642
- const _hoisted_1$j = {
13647
+ const _hoisted_1$k = {
13643
13648
  class: "file-item"
13644
13649
  };
13645
13650
  const _hoisted_2$f = {
@@ -13661,7 +13666,7 @@ const _hoisted_7$4 = {
13661
13666
  };
13662
13667
  function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
13663
13668
  const _component_f_icon = vue.resolveComponent("f-icon");
13664
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$j, [vue.createElementVNode("div", _hoisted_2$f, [vue.createElementVNode("a", vue.mergeProps({
13669
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$k, [vue.createElementVNode("div", _hoisted_2$f, [vue.createElementVNode("a", vue.mergeProps({
13665
13670
  id: _ctx.id,
13666
13671
  class: "file-item__file-open"
13667
13672
  }, _ctx.$attrs), [vue.createElementVNode("div", _hoisted_4$9, [vue.createVNode(_component_f_icon, {
@@ -13672,8 +13677,8 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
13672
13677
  class: "file-item__separator"
13673
13678
  }, null, -1))]);
13674
13679
  }
13675
- const FFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$f]]);
13676
- const _sfc_main$i = vue.defineComponent({
13680
+ const FFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$f]]);
13681
+ const _sfc_main$j = vue.defineComponent({
13677
13682
  name: "FFileSelector",
13678
13683
  components: {
13679
13684
  FIcon
@@ -13734,14 +13739,14 @@ const _sfc_main$i = vue.defineComponent({
13734
13739
  }
13735
13740
  }
13736
13741
  });
13737
- const _hoisted_1$i = {
13742
+ const _hoisted_1$j = {
13738
13743
  class: "file-selector"
13739
13744
  };
13740
13745
  const _hoisted_2$e = ["id", "aria-labelledby", "aria-disabled"];
13741
13746
  const _hoisted_3$a = ["id", "for"];
13742
13747
  function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
13743
13748
  const _component_f_icon = vue.resolveComponent("f-icon");
13744
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$i, [vue.createElementVNode("input", vue.mergeProps({
13749
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$j, [vue.createElementVNode("input", vue.mergeProps({
13745
13750
  id: _ctx.id,
13746
13751
  ref: "file-selector",
13747
13752
  type: "file",
@@ -13760,7 +13765,7 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
13760
13765
  name: "paper-clip"
13761
13766
  }), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$a)]);
13762
13767
  }
13763
- const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$e]]);
13768
+ const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$e]]);
13764
13769
  const keybindings = {
13765
13770
  Up: focusTrAbove,
13766
13771
  Down: focusTrBelow,
@@ -13869,7 +13874,7 @@ function useExpandableTable(expandableAttribute, keyAttribute, describedby, emit
13869
13874
  hasExpandableContent
13870
13875
  };
13871
13876
  }
13872
- const _hoisted_1$h = ["role"];
13877
+ const _hoisted_1$i = ["role"];
13873
13878
  const _hoisted_2$d = {
13874
13879
  key: 0
13875
13880
  };
@@ -13934,7 +13939,7 @@ const _hoisted_21 = {
13934
13939
  key: 1
13935
13940
  };
13936
13941
  const _hoisted_22 = ["colspan"];
13937
- const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
13942
+ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
13938
13943
  ...{
13939
13944
  inheritAttrs: false
13940
13945
  },
@@ -14401,11 +14406,11 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
14401
14406
  colspan: nbOfColumns.value
14402
14407
  }, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_22), _cache[12] || (_cache[12] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
14403
14408
  row: {}
14404
- })))])) : vue.createCommentVNode("", true)]))], 16, _hoisted_1$h)], 2);
14409
+ })))])) : vue.createCommentVNode("", true)]))], 16, _hoisted_1$i)], 2);
14405
14410
  };
14406
14411
  }
14407
14412
  });
14408
- const _sfc_main$g = vue.defineComponent({
14413
+ const _sfc_main$h = vue.defineComponent({
14409
14414
  name: "FLayoutApplicationTemplate",
14410
14415
  computed: {
14411
14416
  showHeader() {
@@ -14430,7 +14435,7 @@ const _sfc_main$g = vue.defineComponent({
14430
14435
  }
14431
14436
  }
14432
14437
  });
14433
- const _hoisted_1$g = {
14438
+ const _hoisted_1$h = {
14434
14439
  class: "layout-application-template"
14435
14440
  };
14436
14441
  const _hoisted_2$c = {
@@ -14450,11 +14455,11 @@ const _hoisted_5$5 = {
14450
14455
  class: "layout-application-template__footer"
14451
14456
  };
14452
14457
  function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
14453
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [_ctx.showHeader || _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("header", _hoisted_2$c, [_ctx.showHeader ? vue.renderSlot(_ctx.$slots, "header", {
14458
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$h, [_ctx.showHeader || _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("header", _hoisted_2$c, [_ctx.showHeader ? vue.renderSlot(_ctx.$slots, "header", {
14454
14459
  key: 0
14455
14460
  }) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_3$8, [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)]);
14456
14461
  }
14457
- const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$d]]);
14462
+ const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$d]]);
14458
14463
  function getGridClasses(target) {
14459
14464
  if (target === null) {
14460
14465
  return {};
@@ -14555,7 +14560,7 @@ function useLayoutPanel(options) {
14555
14560
  rightPrimaryClasses
14556
14561
  };
14557
14562
  }
14558
- const _sfc_main$f = vue.defineComponent({
14563
+ const _sfc_main$g = vue.defineComponent({
14559
14564
  name: "FLayoutLeftPanel",
14560
14565
  components: {
14561
14566
  FIcon
@@ -14640,7 +14645,7 @@ const _sfc_main$f = vue.defineComponent({
14640
14645
  }
14641
14646
  }
14642
14647
  });
14643
- const _hoisted_1$f = {
14648
+ const _hoisted_1$g = {
14644
14649
  class: "layout-navigation"
14645
14650
  };
14646
14651
  const _hoisted_2$b = ["aria-expanded"];
@@ -14653,7 +14658,7 @@ const _hoisted_4$6 = {
14653
14658
  };
14654
14659
  function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
14655
14660
  const _component_f_icon = vue.resolveComponent("f-icon");
14656
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [vue.createElementVNode("nav", {
14661
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [vue.createElementVNode("nav", {
14657
14662
  id: "layout-navigation__navigation",
14658
14663
  class: "layout-navigation__navigation",
14659
14664
  style: vue.normalizeStyle(_ctx.navigationStyle),
@@ -14702,7 +14707,7 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
14702
14707
  style: vue.normalizeStyle(_ctx.primaryStyle)
14703
14708
  }, [vue.renderSlot(_ctx.$slots, "default")], 6)]);
14704
14709
  }
14705
- const FLayoutLeftPanel = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$c]]);
14710
+ const FLayoutLeftPanel = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$c]]);
14706
14711
  class FRightPanelServiceImpl {
14707
14712
  constructor() {
14708
14713
  _defineProperty(this, "focusedElementBeforeOpenining", null);
@@ -14732,7 +14737,7 @@ class FRightPanelServiceImpl {
14732
14737
  }
14733
14738
  }
14734
14739
  const FLayoutRightPanelService = new FRightPanelServiceImpl();
14735
- const _sfc_main$e = vue.defineComponent({
14740
+ const _sfc_main$f = vue.defineComponent({
14736
14741
  name: "FLayoutRightPanel",
14737
14742
  components: {
14738
14743
  FIcon
@@ -14849,7 +14854,7 @@ const _sfc_main$e = vue.defineComponent({
14849
14854
  }
14850
14855
  }
14851
14856
  });
14852
- const _hoisted_1$e = {
14857
+ const _hoisted_1$f = {
14853
14858
  class: "layout-secondary"
14854
14859
  };
14855
14860
  const _hoisted_2$a = {
@@ -14857,7 +14862,7 @@ const _hoisted_2$a = {
14857
14862
  };
14858
14863
  function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
14859
14864
  const _component_f_icon = vue.resolveComponent("f-icon");
14860
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [vue.createElementVNode("div", {
14865
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [vue.createElementVNode("div", {
14861
14866
  id: "layout-secondary__primary",
14862
14867
  class: vue.normalizeClass(["layout-secondary__primary", _ctx.rightPrimaryClasses]),
14863
14868
  style: vue.normalizeStyle(_ctx.primaryStyle)
@@ -14894,8 +14899,8 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
14894
14899
  name: "close"
14895
14900
  })])], 6)])], 4)) : vue.createCommentVNode("", true)]);
14896
14901
  }
14897
- const FLayoutRightPanel = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$b]]);
14898
- const _hoisted_1$d = {
14902
+ const FLayoutRightPanel = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$b]]);
14903
+ const _hoisted_1$e = {
14899
14904
  key: 0,
14900
14905
  class: "list"
14901
14906
  };
@@ -14920,7 +14925,7 @@ const _hoisted_9$2 = {
14920
14925
  const _hoisted_10$1 = {
14921
14926
  class: "list__item__itempane"
14922
14927
  };
14923
- const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
14928
+ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
14924
14929
  __name: "FList",
14925
14930
  props: {
14926
14931
  /**
@@ -15144,7 +15149,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15144
15149
  return props.checkbox && itemEquals(activeItem.value, item, props.keyAttribute);
15145
15150
  }
15146
15151
  return (_ctx, _cache) => {
15147
- return !__props.selectable ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_1$d, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.items, (item) => {
15152
+ return !__props.selectable ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_1$e, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.items, (item) => {
15148
15153
  return vue.openBlock(), vue.createElementBlock("li", {
15149
15154
  key: itemKey(item),
15150
15155
  class: "list__item"
@@ -15209,7 +15214,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
15209
15214
  };
15210
15215
  }
15211
15216
  });
15212
- const _sfc_main$c = vue.defineComponent({
15217
+ const _sfc_main$d = vue.defineComponent({
15213
15218
  name: "FLoader",
15214
15219
  mixins: [TranslationMixin],
15215
15220
  inheritAttrs: false,
@@ -15321,7 +15326,7 @@ const _sfc_main$c = vue.defineComponent({
15321
15326
  }
15322
15327
  }
15323
15328
  });
15324
- const _hoisted_1$c = {
15329
+ const _hoisted_1$d = {
15325
15330
  class: "loader__backdrop"
15326
15331
  };
15327
15332
  const _hoisted_2$8 = {
@@ -15333,7 +15338,7 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
15333
15338
  disabled: _ctx.teleportDisabled
15334
15339
  }, [vue.withDirectives(vue.createElementVNode("div", vue.mergeProps(_ctx.$attrs, {
15335
15340
  class: ["loader", _ctx.classes]
15336
- }), [vue.createElementVNode("div", _hoisted_1$c, [_cache[0] || (_cache[0] = vue.createElementVNode("div", {
15341
+ }), [vue.createElementVNode("div", _hoisted_1$d, [_cache[0] || (_cache[0] = vue.createElementVNode("div", {
15337
15342
  class: "loader__wrapper"
15338
15343
  }, [vue.createElementVNode("div", {
15339
15344
  class: "loader__spinner-1 loader__spinner"
@@ -15373,8 +15378,8 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
15373
15378
  tabindex: "-1"
15374
15379
  }, [vue.createElementVNode("span", _hoisted_2$8, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.loader.wait.text", _ctx.defaultLoadingText)), 1)])])], 2)])], 16), [[vue.vShow, _ctx.show]])], 8, ["to", "disabled"]);
15375
15380
  }
15376
- const FLoader = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$a]]);
15377
- const _hoisted_1$b = ["aria-label"];
15381
+ const FLoader = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$a]]);
15382
+ const _hoisted_1$c = ["aria-label"];
15378
15383
  const __default__ = vue.defineComponent({
15379
15384
  computed: {
15380
15385
  ariaLabel() {
@@ -15386,7 +15391,7 @@ const __default__ = vue.defineComponent({
15386
15391
  }
15387
15392
  }
15388
15393
  });
15389
- const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
15394
+ const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
15390
15395
  ...__default__,
15391
15396
  __name: "FLogo",
15392
15397
  props: {
@@ -15410,7 +15415,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
15410
15415
  class: vue.normalizeClass(`logo logo--${props.size}`),
15411
15416
  "aria-label": _ctx.ariaLabel,
15412
15417
  role: "img"
15413
- }, null, 10, _hoisted_1$b);
15418
+ }, null, 10, _hoisted_1$c);
15414
15419
  };
15415
15420
  }
15416
15421
  });
@@ -15440,7 +15445,7 @@ const iconClasses = {
15440
15445
  screenReaderContextDefault: "Informationsmeddelande"
15441
15446
  }
15442
15447
  };
15443
- const _sfc_main$a = vue.defineComponent({
15448
+ const _sfc_main$b = vue.defineComponent({
15444
15449
  name: "FMessageBox",
15445
15450
  components: {
15446
15451
  FIcon,
@@ -15530,7 +15535,7 @@ const _sfc_main$a = vue.defineComponent({
15530
15535
  }
15531
15536
  }
15532
15537
  });
15533
- const _hoisted_1$a = {
15538
+ const _hoisted_1$b = {
15534
15539
  key: 0,
15535
15540
  class: "sr-only"
15536
15541
  };
@@ -15540,7 +15545,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
15540
15545
  const _component_i_flex = vue.resolveComponent("i-flex");
15541
15546
  return vue.openBlock(), vue.createElementBlock("div", {
15542
15547
  class: vue.normalizeClass(["message-box", [_ctx.messageBoxType, _ctx.bannerType]])
15543
- }, [_ctx.provideScreenReaderContext ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$a, vue.toDisplayString(_ctx.screenReaderContext()), 1)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_i_flex, {
15548
+ }, [_ctx.provideScreenReaderContext ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$b, vue.toDisplayString(_ctx.screenReaderContext()), 1)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createVNode(_component_i_flex, {
15544
15549
  gap: "2x"
15545
15550
  }, {
15546
15551
  default: vue.withCtx(() => [_ctx.layout === "short" ? (vue.openBlock(), vue.createBlock(_component_i_flex_item, {
@@ -15572,7 +15577,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
15572
15577
  _: 3
15573
15578
  })], 2);
15574
15579
  }
15575
- const FMessageBox = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9]]);
15580
+ const FMessageBox = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$9]]);
15576
15581
  function findOverflowIndex(totalWidth, elements) {
15577
15582
  let sum = 0;
15578
15583
  const index = elements.findIndex((element) => {
@@ -15622,7 +15627,7 @@ const upKeys = ["Up", "ArrowUp"];
15622
15627
  const downKeys = ["Down", "ArrowDown"];
15623
15628
  const verticalKeys = [...upKeys, ...downKeys];
15624
15629
  const preventKeys = ["Tab", "Left", "Right", "ArrowLeft", "ArrowRight", "Home", "End", " ", "Spacebar", "Enter", ...verticalKeys];
15625
- const _sfc_main$9 = vue.defineComponent({
15630
+ const _sfc_main$a = vue.defineComponent({
15626
15631
  name: "FNavigationMenu",
15627
15632
  components: {
15628
15633
  FIcon,
@@ -15955,7 +15960,7 @@ const _sfc_main$9 = vue.defineComponent({
15955
15960
  }
15956
15961
  }
15957
15962
  });
15958
- const _hoisted_1$9 = ["aria-label"];
15963
+ const _hoisted_1$a = ["aria-label"];
15959
15964
  const _hoisted_2$7 = ["data-ref-index", "onClick"];
15960
15965
  const _hoisted_3$5 = {
15961
15966
  class: "imenu__list__anchor-container"
@@ -16036,11 +16041,11 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
16036
16041
  "enable-keyboard-navigation": "",
16037
16042
  onSelect: _ctx.onPopupMenuItemSelected,
16038
16043
  onClose: _cache[5] || (_cache[5] = ($event) => _ctx.togglePopup(false))
16039
- }, null, 8, ["modelValue", "focused-item", "items", "is-open", "anchor", "selected-menu-item-screen-reader-text", "aria-label", "onSelect"])], 10, _hoisted_1$9);
16044
+ }, null, 8, ["modelValue", "focused-item", "items", "is-open", "anchor", "selected-menu-item-screen-reader-text", "aria-label", "onSelect"])], 10, _hoisted_1$a);
16040
16045
  }
16041
- const FNavigationMenu = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8]]);
16046
+ const FNavigationMenu = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$8]]);
16042
16047
  const EVENTS = ["online", "offline"];
16043
- const _sfc_main$8 = vue.defineComponent({
16048
+ const _sfc_main$9 = vue.defineComponent({
16044
16049
  name: "FOffline",
16045
16050
  components: {
16046
16051
  FIcon,
@@ -16088,7 +16093,7 @@ const _sfc_main$8 = vue.defineComponent({
16088
16093
  }
16089
16094
  }
16090
16095
  });
16091
- const _hoisted_1$8 = ["role"];
16096
+ const _hoisted_1$9 = ["role"];
16092
16097
  const _hoisted_2$6 = {
16093
16098
  key: 0,
16094
16099
  class: "offline"
@@ -16134,10 +16139,10 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
16134
16139
  })])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.withDirectives(vue.createElementVNode("span", {
16135
16140
  class: "sr-only",
16136
16141
  "aria-hidden": _ctx.shouldNotRead ? "true" : void 0
16137
- }, "\n Din internetuppkoppling fungerar igen\n ", 8, _hoisted_5$2), [[vue.vShow, _ctx.isOnline]])], 8, _hoisted_1$8);
16142
+ }, "\n Din internetuppkoppling fungerar igen\n ", 8, _hoisted_5$2), [[vue.vShow, _ctx.isOnline]])], 8, _hoisted_1$9);
16138
16143
  }
16139
- const FOffline = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7]]);
16140
- const _sfc_main$7 = vue.defineComponent({
16144
+ const FOffline = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$7]]);
16145
+ const _sfc_main$8 = vue.defineComponent({
16141
16146
  name: "FOutputField",
16142
16147
  components: {
16143
16148
  FLabel
@@ -16170,13 +16175,13 @@ const _sfc_main$7 = vue.defineComponent({
16170
16175
  }
16171
16176
  }
16172
16177
  });
16173
- const _hoisted_1$7 = {
16178
+ const _hoisted_1$8 = {
16174
16179
  class: "output-field"
16175
16180
  };
16176
16181
  const _hoisted_2$5 = ["id", "for"];
16177
16182
  function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
16178
16183
  const _component_f_label = vue.resolveComponent("f-label");
16179
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [vue.createVNode(_component_f_label, {
16184
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$8, [vue.createVNode(_component_f_label, {
16180
16185
  for: _ctx.id
16181
16186
  }, vue.createSlots({
16182
16187
  default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "label")]),
@@ -16191,8 +16196,8 @@ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
16191
16196
  class: "output-field__output"
16192
16197
  }, _ctx.$attrs), [vue.renderSlot(_ctx.$slots, "default")], 16, _hoisted_2$5)]);
16193
16198
  }
16194
- const FOutputField = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6]]);
16195
- const _sfc_main$6 = vue.defineComponent({
16199
+ const FOutputField = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$6]]);
16200
+ const _sfc_main$7 = vue.defineComponent({
16196
16201
  name: "FPageHeader",
16197
16202
  components: {
16198
16203
  ISkipLink
@@ -16239,7 +16244,7 @@ const _sfc_main$6 = vue.defineComponent({
16239
16244
  }
16240
16245
  }
16241
16246
  });
16242
- const _hoisted_1$6 = {
16247
+ const _hoisted_1$7 = {
16243
16248
  class: "page-header__root"
16244
16249
  };
16245
16250
  const _hoisted_2$4 = {
@@ -16261,7 +16266,7 @@ const _hoisted_6$1 = {
16261
16266
  };
16262
16267
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
16263
16268
  const _component_i_skip_link = vue.resolveComponent("i-skip-link");
16264
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [_ctx.skipLinkAnchor ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_2$4, [vue.createVNode(_component_i_skip_link, {
16269
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [_ctx.skipLinkAnchor ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_2$4, [vue.createVNode(_component_i_skip_link, {
16265
16270
  href: _ctx.skipLinkAnchor
16266
16271
  }, {
16267
16272
  default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "skip-link-text")]),
@@ -16273,7 +16278,306 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
16273
16278
  _: 3
16274
16279
  })), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_5$1, [vue.createElementVNode("div", _hoisted_6$1, [vue.renderSlot(_ctx.$slots, "right")])])], 512)]);
16275
16280
  }
16276
- const FPageHeader = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5]]);
16281
+ const FPageHeader = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$5]]);
16282
+ const layoutRegister = {};
16283
+ function getLayout(name) {
16284
+ var _layoutRegister$name;
16285
+ return (_layoutRegister$name = layoutRegister[name]) !== null && _layoutRegister$name !== void 0 ? _layoutRegister$name : null;
16286
+ }
16287
+ function setLayout(name, layout) {
16288
+ layoutRegister[name] = layout;
16289
+ }
16290
+ function defineLayout(definition) {
16291
+ return normalizeDefinition(definition);
16292
+ }
16293
+ function registerLayout(definition) {
16294
+ setLayout(definition.name, normalizeDefinition(definition));
16295
+ }
16296
+ function normalizeDefinition(definition) {
16297
+ return {
16298
+ name: definition.name,
16299
+ areas: normalizeAreasDefinition(definition.areas)
16300
+ };
16301
+ }
16302
+ function normalizeAreasDefinition(areas) {
16303
+ return Object.fromEntries(Object.entries(areas).map(([key, area]) => {
16304
+ var _area$scroll;
16305
+ return [key, {
16306
+ attachPanel: area.attachPanel,
16307
+ direction: area.direction,
16308
+ scroll: (_area$scroll = area.scroll) !== null && _area$scroll !== void 0 ? _area$scroll : false
16309
+ }];
16310
+ }));
16311
+ }
16312
+ function _checkPrivateRedeclaration(e, t) {
16313
+ if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object");
16314
+ }
16315
+ function _classPrivateFieldInitSpec(e, t, a) {
16316
+ _checkPrivateRedeclaration(e, t), t.set(e, a);
16317
+ }
16318
+ function _assertClassBrand(e, t, n) {
16319
+ if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
16320
+ throw new TypeError("Private element is not present on this object");
16321
+ }
16322
+ function _classPrivateFieldGet2(s, a) {
16323
+ return s.get(_assertClassBrand(s, a));
16324
+ }
16325
+ function _classPrivateFieldSet2(s, a, r) {
16326
+ return s.set(_assertClassBrand(s, a), r), r;
16327
+ }
16328
+ const VAR_NAME_AREA = "--f-layout-area";
16329
+ const VAR_NAME_ATTACH_PANEL = "--f-layout-panel";
16330
+ const VAR_NAME_DIRECTION = "--f-layout-direction";
16331
+ registerLayout({
16332
+ name: "simple",
16333
+ areas: {
16334
+ header: {
16335
+ attachPanel: "none",
16336
+ direction: "column"
16337
+ },
16338
+ content: {
16339
+ attachPanel: "none",
16340
+ direction: "column",
16341
+ scroll: true
16342
+ },
16343
+ footer: {
16344
+ attachPanel: "none",
16345
+ direction: "column"
16346
+ }
16347
+ }
16348
+ });
16349
+ registerLayout({
16350
+ name: "left-panel",
16351
+ areas: {
16352
+ header: {
16353
+ attachPanel: "none",
16354
+ direction: "column"
16355
+ },
16356
+ left: {
16357
+ attachPanel: "left",
16358
+ direction: "column"
16359
+ },
16360
+ content: {
16361
+ attachPanel: "none",
16362
+ direction: "column",
16363
+ scroll: true
16364
+ },
16365
+ footer: {
16366
+ attachPanel: "none",
16367
+ direction: "column"
16368
+ }
16369
+ }
16370
+ });
16371
+ registerLayout({
16372
+ name: "right-panel",
16373
+ areas: {
16374
+ header: {
16375
+ attachPanel: "none",
16376
+ direction: "column"
16377
+ },
16378
+ right: {
16379
+ attachPanel: "right",
16380
+ direction: "column"
16381
+ },
16382
+ content: {
16383
+ attachPanel: "none",
16384
+ direction: "column",
16385
+ scroll: true
16386
+ },
16387
+ footer: {
16388
+ attachPanel: "none",
16389
+ direction: "column"
16390
+ }
16391
+ }
16392
+ });
16393
+ registerLayout({
16394
+ name: "three-column",
16395
+ areas: {
16396
+ header: {
16397
+ attachPanel: "top",
16398
+ direction: "column"
16399
+ },
16400
+ left: {
16401
+ attachPanel: "left",
16402
+ direction: "column"
16403
+ },
16404
+ right: {
16405
+ attachPanel: "right",
16406
+ direction: "column"
16407
+ },
16408
+ content: {
16409
+ attachPanel: "none",
16410
+ direction: "column",
16411
+ scroll: true
16412
+ },
16413
+ footer: {
16414
+ attachPanel: "bottom",
16415
+ direction: "column"
16416
+ }
16417
+ }
16418
+ });
16419
+ const styleContent = '.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\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\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\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}\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';
16420
+ const stubLayout = defineLayout({
16421
+ name: "",
16422
+ areas: {}
16423
+ });
16424
+ function getSlotNames(element) {
16425
+ return Array.from(element.querySelectorAll(":scope > [slot]"), (it) => it.slot);
16426
+ }
16427
+ var _wrapper = /* @__PURE__ */ new WeakMap();
16428
+ var _elements = /* @__PURE__ */ new WeakMap();
16429
+ var _layout = /* @__PURE__ */ new WeakMap();
16430
+ var _observer = /* @__PURE__ */ new WeakMap();
16431
+ var _slotNames = /* @__PURE__ */ new WeakMap();
16432
+ class PageLayout extends HTMLElement {
16433
+ constructor() {
16434
+ super();
16435
+ _classPrivateFieldInitSpec(this, _wrapper, void 0);
16436
+ _classPrivateFieldInitSpec(this, _elements, {});
16437
+ _classPrivateFieldInitSpec(this, _layout, stubLayout);
16438
+ _classPrivateFieldInitSpec(this, _observer, void 0);
16439
+ _classPrivateFieldInitSpec(this, _slotNames, []);
16440
+ _classPrivateFieldSet2(_wrapper, this, document.createElement("div"));
16441
+ _classPrivateFieldSet2(_observer, this, new MutationObserver(() => {
16442
+ this.slotNames = getSlotNames(this);
16443
+ }));
16444
+ }
16445
+ /* eslint-disable-next-line @typescript-eslint/explicit-function-return-type -- this one is better to infer or each attribute would have to be duplicated */
16446
+ static get observedAttributes() {
16447
+ return ["layout"];
16448
+ }
16449
+ connectedCallback() {
16450
+ this.slotNames = getSlotNames(this);
16451
+ _classPrivateFieldGet2(_observer, this).observe(this, {
16452
+ childList: true
16453
+ });
16454
+ const shadow = this.attachShadow({
16455
+ mode: "open"
16456
+ });
16457
+ const style = document.createElement("style");
16458
+ style.textContent = styleContent;
16459
+ shadow.append(style);
16460
+ shadow.append(_classPrivateFieldGet2(_wrapper, this));
16461
+ }
16462
+ disconnectedCallback() {
16463
+ _classPrivateFieldGet2(_observer, this).disconnect();
16464
+ }
16465
+ attributeChangedCallback(name, _oldValue, value) {
16466
+ switch (name) {
16467
+ case "layout": {
16468
+ var _getLayout;
16469
+ const part = ["grid", value].filter(Boolean).join(" ");
16470
+ _classPrivateFieldGet2(_wrapper, this).className = "page-layout";
16471
+ _classPrivateFieldGet2(_wrapper, this).setAttribute("part", part);
16472
+ _classPrivateFieldSet2(_layout, this, (_getLayout = getLayout(value)) !== null && _getLayout !== void 0 ? _getLayout : stubLayout);
16473
+ this.updateSlotElements();
16474
+ break;
16475
+ }
16476
+ }
16477
+ }
16478
+ get slotNames() {
16479
+ return _classPrivateFieldGet2(_slotNames, this);
16480
+ }
16481
+ set slotNames(slots) {
16482
+ _classPrivateFieldSet2(_slotNames, this, slots);
16483
+ this.updateSlotElements();
16484
+ }
16485
+ updateSlotElements() {
16486
+ const wrapper = _classPrivateFieldGet2(_wrapper, this);
16487
+ const layout = _classPrivateFieldGet2(_layout, this);
16488
+ for (const slot of _classPrivateFieldGet2(_slotNames, this)) {
16489
+ const existing = _classPrivateFieldGet2(_elements, this)[slot];
16490
+ const element = existing !== null && existing !== void 0 ? existing : document.createElement("div");
16491
+ const area = layout.areas[slot];
16492
+ if (!area) {
16493
+ continue;
16494
+ }
16495
+ const {
16496
+ attachPanel: attach,
16497
+ direction,
16498
+ scroll
16499
+ } = area;
16500
+ element.className = "";
16501
+ element.classList.add("page-layout__area");
16502
+ element.setAttribute("part", ["area", slot].join(" "));
16503
+ element.setAttribute("data-direction", direction);
16504
+ if (scroll) {
16505
+ element.setAttribute("data-scroll", "true");
16506
+ } else {
16507
+ element.removeAttribute("data-scroll");
16508
+ }
16509
+ element.style.setProperty("grid-area", slot);
16510
+ element.style.setProperty(VAR_NAME_AREA, `"${slot}"`);
16511
+ element.style.setProperty(VAR_NAME_ATTACH_PANEL, `"${attach}"`);
16512
+ element.style.setProperty(VAR_NAME_DIRECTION, `"${direction}"`);
16513
+ if (!existing) {
16514
+ const slotElement = document.createElement("slot");
16515
+ slotElement.name = slot;
16516
+ element.append(slotElement);
16517
+ wrapper.append(element);
16518
+ _classPrivateFieldGet2(_elements, this)[slot] = element;
16519
+ }
16520
+ }
16521
+ }
16522
+ }
16523
+ const _hoisted_1$6 = ["slot"];
16524
+ const tagName = `ce-page-layout`;
16525
+ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
16526
+ __name: "FPageLayout",
16527
+ props: {
16528
+ layout: {}
16529
+ },
16530
+ setup(__props) {
16531
+ const slots = vue.useSlots();
16532
+ const slotNames = vue.computed(() => {
16533
+ return Object.keys(slots);
16534
+ });
16535
+ vue.onMounted(() => {
16536
+ if (!customElements.get(tagName)) {
16537
+ customElements.define(tagName, PageLayout);
16538
+ }
16539
+ });
16540
+ return (_ctx, _cache) => {
16541
+ return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(tagName), {
16542
+ layout: _ctx.layout
16543
+ }, {
16544
+ default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(slotNames.value, (slot) => {
16545
+ return vue.openBlock(), vue.createElementBlock("div", {
16546
+ key: slot,
16547
+ slot
16548
+ }, [vue.renderSlot(_ctx.$slots, slot)], 8, _hoisted_1$6);
16549
+ }), 128))]),
16550
+ _: 3
16551
+ }, 8, ["layout"]);
16552
+ };
16553
+ }
16554
+ });
16555
+ function getProperty(style, key) {
16556
+ const value = style.getPropertyValue(key);
16557
+ if (value === "") {
16558
+ return null;
16559
+ } else {
16560
+ return JSON.parse(value);
16561
+ }
16562
+ }
16563
+ function useAreaData(element) {
16564
+ const area = vue.ref(null);
16565
+ const attachPanel = vue.ref(null);
16566
+ const direction = vue.ref(null);
16567
+ vue.watchEffect(() => {
16568
+ if (element.value) {
16569
+ const style = getComputedStyle(element.value);
16570
+ area.value = getProperty(style, VAR_NAME_AREA);
16571
+ attachPanel.value = getProperty(style, VAR_NAME_ATTACH_PANEL);
16572
+ direction.value = getProperty(style, VAR_NAME_DIRECTION);
16573
+ }
16574
+ });
16575
+ return {
16576
+ area,
16577
+ attachPanel,
16578
+ direction
16579
+ };
16580
+ }
16277
16581
  const _hoisted_1$5 = {
16278
16582
  class: "progress"
16279
16583
  };
@@ -17318,20 +17622,20 @@ exports.ErrorData = ErrorData;
17318
17622
  exports.ErrorPlugin = ErrorPlugin;
17319
17623
  exports.ErrorViewData = ErrorViewData;
17320
17624
  exports.EventBus = EventBus;
17321
- exports.FBadge = _sfc_main$1b;
17322
- exports.FBankAccountNumberTextField = _sfc_main$y;
17323
- exports.FBankgiroTextField = _sfc_main$x;
17625
+ exports.FBadge = _sfc_main$1c;
17626
+ exports.FBankAccountNumberTextField = _sfc_main$z;
17627
+ exports.FBankgiroTextField = _sfc_main$y;
17324
17628
  exports.FCalendar = FCalendar;
17325
17629
  exports.FCalendarDay = FCalendarDay;
17326
- exports.FCard = _sfc_main$W;
17630
+ exports.FCard = _sfc_main$X;
17327
17631
  exports.FCheckboxField = FCheckboxField;
17328
- exports.FClearingnumberTextField = _sfc_main$w;
17632
+ exports.FClearingnumberTextField = _sfc_main$x;
17329
17633
  exports.FConfirmModal = FConfirmModal;
17330
17634
  exports.FContextMenu = FContextMenu;
17331
17635
  exports.FCrudButton = FCrudButton;
17332
- exports.FCrudDataset = _sfc_main$I;
17333
- exports.FCurrencyTextField = _sfc_main$A;
17334
- exports.FDataTable = _sfc_main$o;
17636
+ exports.FCrudDataset = _sfc_main$J;
17637
+ exports.FCurrencyTextField = _sfc_main$B;
17638
+ exports.FDataTable = _sfc_main$p;
17335
17639
  exports.FDatepickerField = FDatepickerField;
17336
17640
  exports.FDialogueTree = FDialogueTree;
17337
17641
  exports.FEmailTextField = FEmailTextField;
@@ -17346,34 +17650,35 @@ exports.FFileSelector = FFileSelector;
17346
17650
  exports.FFormModal = FFormModal;
17347
17651
  exports.FFormModalAction = FValidationFormAction;
17348
17652
  exports.FIcon = FIcon;
17349
- exports.FInteractiveTable = _sfc_main$h;
17653
+ exports.FInteractiveTable = _sfc_main$i;
17350
17654
  exports.FKUIConfigButtonOrder = FKUIConfigButtonOrder;
17351
17655
  exports.FLabel = FLabel;
17352
17656
  exports.FLayoutApplicationTemplate = FLayoutApplicationTemplate;
17353
17657
  exports.FLayoutLeftPanel = FLayoutLeftPanel;
17354
17658
  exports.FLayoutRightPanel = FLayoutRightPanel;
17355
17659
  exports.FLayoutRightPanelService = FLayoutRightPanelService;
17356
- exports.FList = _sfc_main$d;
17660
+ exports.FList = _sfc_main$e;
17357
17661
  exports.FLoader = FLoader;
17358
- exports.FLogo = _sfc_main$b;
17662
+ exports.FLogo = _sfc_main$c;
17359
17663
  exports.FMessageBox = FMessageBox;
17360
17664
  exports.FModal = FModal;
17361
17665
  exports.FNavigationMenu = FNavigationMenu;
17362
- exports.FNumericTextField = _sfc_main$v;
17666
+ exports.FNumericTextField = _sfc_main$w;
17363
17667
  exports.FOffline = FOffline;
17364
- exports.FOrganisationsnummerTextField = _sfc_main$q;
17668
+ exports.FOrganisationsnummerTextField = _sfc_main$r;
17365
17669
  exports.FOutputField = FOutputField;
17366
17670
  exports.FPageHeader = FPageHeader;
17367
- exports.FPercentTextField = _sfc_main$r;
17368
- exports.FPersonnummerTextField = _sfc_main$u;
17671
+ exports.FPageLayout = _sfc_main$6;
17672
+ exports.FPercentTextField = _sfc_main$s;
17673
+ exports.FPersonnummerTextField = _sfc_main$v;
17369
17674
  exports.FPhoneTextField = FPhoneTextField;
17370
- exports.FPlusgiroTextField = _sfc_main$t;
17371
- exports.FPostalCodeTextField = _sfc_main$s;
17675
+ exports.FPlusgiroTextField = _sfc_main$u;
17676
+ exports.FPostalCodeTextField = _sfc_main$t;
17372
17677
  exports.FProgressbar = _sfc_main$5;
17373
17678
  exports.FRadioField = FRadioField;
17374
17679
  exports.FSearchTextField = FSearchTextField;
17375
17680
  exports.FSelectField = FSelectField;
17376
- exports.FSortFilterDataset = _sfc_main$p;
17681
+ exports.FSortFilterDataset = _sfc_main$q;
17377
17682
  exports.FSortFilterDatasetInjected = FSortFilterDatasetInjected;
17378
17683
  exports.FStaticField = FStaticField;
17379
17684
  exports.FTableColumn = FTableColumn;
@@ -17394,13 +17699,13 @@ exports.IAnimateExpand = IAnimateExpand;
17394
17699
  exports.ICalendarMonth = ICalendarMonth;
17395
17700
  exports.ICalendarMonthGrid = ICalendarMonthGrid;
17396
17701
  exports.ICalendarNavbar = ICalendarNavbar;
17397
- exports.IComboboxDropdown = _sfc_main$O;
17398
- exports.IComboboxToggleButton = _sfc_main$N;
17702
+ exports.IComboboxDropdown = _sfc_main$P;
17703
+ exports.IComboboxToggleButton = _sfc_main$O;
17399
17704
  exports.IFlex = IFlex;
17400
17705
  exports.IFlexItem = IFlexItem;
17401
17706
  exports.IPopup = IPopup;
17402
17707
  exports.IPopupError = IPopupError;
17403
- exports.IPopupListbox = _sfc_main$S;
17708
+ exports.IPopupListbox = _sfc_main$T;
17404
17709
  exports.IPopupMenu = IPopupMenu;
17405
17710
  exports.ISkipLink = ISkipLink;
17406
17711
  exports.IValidationForm = FValidationForm;
@@ -17449,10 +17754,12 @@ exports.refIsElementArray = refIsElementArray;
17449
17754
  exports.refIsHTMLElementArray = refIsHTMLElementArray;
17450
17755
  exports.refIsVue = refIsVue;
17451
17756
  exports.refIsVueArray = refIsVueArray;
17757
+ exports.registerLayout = registerLayout;
17452
17758
  exports.renderSlotText = renderSlotText;
17453
17759
  exports.setRunningContext = setRunningContext;
17454
17760
  exports.tableScrollClasses = tableScrollClasses;
17455
17761
  exports.tooltipAttachTo = tooltipAttachTo;
17762
+ exports.useAreaData = useAreaData;
17456
17763
  exports.useCombobox = useCombobox;
17457
17764
  exports.useModal = useModal;
17458
17765
  exports.useSlotUtils = useSlotUtils;