fds-vue-core 2.1.11 → 2.1.16

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.
Files changed (59) hide show
  1. package/dist/fds-vue-core.cjs.js +372 -284
  2. package/dist/fds-vue-core.cjs.js.map +1 -1
  3. package/dist/fds-vue-core.es.js +373 -285
  4. package/dist/fds-vue-core.es.js.map +1 -1
  5. package/package.json +9 -11
  6. package/src/components/Blocks/FdsBlockAlert/FdsBlockAlert.stories.ts +60 -33
  7. package/src/components/Blocks/FdsBlockAlert/FdsBlockAlert.vue +5 -1
  8. package/src/components/Blocks/FdsBlockContent/FdsBlockContent.stories.ts +44 -41
  9. package/src/components/Blocks/FdsBlockExpander/FdsBlockExpander.stories.ts +33 -30
  10. package/src/components/Blocks/FdsBlockExpander/FdsBlockExpander.vue +51 -16
  11. package/src/components/Blocks/FdsBlockExpander/types.ts +2 -0
  12. package/src/components/Blocks/FdsBlockInfo/FdsBlockInfo.stories.ts +42 -39
  13. package/src/components/Blocks/FdsBlockLink/FdsBlockLink.stories.ts +42 -39
  14. package/src/components/Blocks/FdsBlockLink/FdsBlockLink.vue +7 -2
  15. package/src/components/Blocks/FdsBlockLink/types.ts +1 -0
  16. package/src/components/Buttons/ButtonBaseProps.ts +4 -0
  17. package/src/components/Buttons/FdsButtonCopy/FdsButtonCopy.stories.ts +1 -1
  18. package/src/components/Buttons/FdsButtonDownload/FdsButtonDownload.stories.ts +4 -4
  19. package/src/components/Buttons/FdsButtonDownload/FdsButtonDownload.vue +12 -2
  20. package/src/components/Buttons/FdsButtonDownload/types.ts +2 -0
  21. package/src/components/Buttons/FdsButtonIcon/FdsButtonIcon.stories.ts +2 -2
  22. package/src/components/Buttons/FdsButtonMinor/FdsButtonMinor.stories.ts +2 -2
  23. package/src/components/Buttons/FdsButtonMinor/FdsButtonMinor.vue +3 -0
  24. package/src/components/Buttons/FdsButtonPrimary/FdsButtonPrimary.stories.ts +4 -4
  25. package/src/components/Buttons/FdsButtonPrimary/FdsButtonPrimary.vue +0 -5
  26. package/src/components/Buttons/FdsButtonSecondary/FdsButtonSecondary.stories.ts +2 -2
  27. package/src/components/FdsIcon/FdsIcon.stories.ts +1 -1
  28. package/src/components/FdsModal/FdsModal.stories.ts +7 -7
  29. package/src/components/FdsModal/FdsModal.vue +6 -1
  30. package/src/components/FdsPagination/FdsPagination.stories.ts +5 -5
  31. package/src/components/FdsSearchSelect/FdsSearchSelect.stories.ts +9 -9
  32. package/src/components/FdsSpinner/FdsSpinner.stories.ts +1 -1
  33. package/src/components/FdsSticker/FdsSticker.stories.ts +23 -20
  34. package/src/components/FdsSticker/FdsSticker.vue +8 -6
  35. package/src/components/FdsSticker/types.ts +1 -0
  36. package/src/components/FdsTreeView/FdsTreeView.stories.ts +1 -1
  37. package/src/components/FdsTruncatedText/FdsTruncatedText.stories.ts +4 -4
  38. package/src/components/FdsTruncatedText/FdsTruncatedText.vue +6 -7
  39. package/src/components/Form/FdsCheckbox/FdsCheckbox.stories.ts +4 -4
  40. package/src/components/Form/FdsCheckbox/FdsCheckbox.vue +6 -6
  41. package/src/components/Form/FdsInput/FdsInput.stories.ts +5 -5
  42. package/src/components/Form/FdsInput/FdsInput.vue +14 -19
  43. package/src/components/Form/FdsRadio/FdsRadio.stories.ts +1 -1
  44. package/src/components/Form/FdsRadio/FdsRadio.vue +19 -6
  45. package/src/components/Form/FdsRadio/types.ts +2 -0
  46. package/src/components/Form/FdsSelect/FdsSelect.stories.ts +4 -4
  47. package/src/components/Form/FdsSelect/FdsSelect.vue +5 -1
  48. package/src/components/Form/FdsTextarea/FdsTextarea.stories.ts +2 -2
  49. package/src/components/Table/FdsTable/FdsTable.stories.ts +3 -3
  50. package/src/components/Table/FdsTableHead/FdsTableHead.stories.ts +6 -6
  51. package/src/components/Table/FdsTableHead/FdsTableHead.vue +9 -15
  52. package/src/components/Table/FdsTableHead/types.ts +1 -0
  53. package/src/components/Tabs/FdsTabs/FdsTabs.stories.ts +9 -9
  54. package/src/components/Tabs/FdsTabs/FdsTabs.vue +5 -1
  55. package/src/components/Tabs/FdsTabsItem/FdsTabsItem.vue +28 -2
  56. package/src/components/Tabs/FdsTabsItem/types.ts +4 -0
  57. package/src/components/Typography/FdsText/FdsText.stories.ts +14 -14
  58. package/src/components/Typography/FdsText/FdsText.vue +18 -2
  59. package/src/components/Typography/FdsText/types.ts +1 -0
@@ -1,4 +1,4 @@
1
- import { useSlots, computed, Comment, defineComponent, createElementBlock, openBlock, normalizeStyle, normalizeClass, createBlock, ref, watch, createCommentVNode, createElementVNode, unref, createVNode, toDisplayString, renderSlot, withDirectives, vShow, useAttrs, resolveDynamicComponent, mergeProps, withCtx, onMounted, createTextVNode, nextTick, onBeforeUnmount, Teleport, withModifiers, mergeModels, useModel, vModelDynamic, Fragment, renderList, withKeys, reactive, vModelCheckbox, vModelRadio, inject, resolveComponent, Transition, watchEffect, provide, vModelSelect, vModelText, getCurrentInstance } from "vue";
1
+ import { useSlots, computed, Comment, defineComponent, createElementBlock, openBlock, normalizeStyle, normalizeClass, createBlock, ref, watch, createCommentVNode, createElementVNode, unref, createVNode, toDisplayString, renderSlot, useAttrs, withDirectives, mergeProps, vShow, resolveDynamicComponent, withCtx, onMounted, createTextVNode, nextTick, onBeforeUnmount, Teleport, withModifiers, mergeModels, useModel, vModelDynamic, Fragment, renderList, withKeys, reactive, vModelCheckbox, vModelRadio, inject, resolveComponent, Transition, watchEffect, provide, vModelSelect, vModelText, getCurrentInstance } from "vue";
2
2
  function useHasSlot(name = "default") {
3
3
  const slots = useSlots();
4
4
  return computed(() => {
@@ -520,7 +520,7 @@ const icons = {
520
520
  </defs>
521
521
  </svg>`
522
522
  };
523
- const _hoisted_1$q = ["innerHTML"];
523
+ const _hoisted_1$r = ["innerHTML"];
524
524
  const _sfc_main$w = /* @__PURE__ */ defineComponent({
525
525
  __name: "FdsIcon",
526
526
  props: {
@@ -547,11 +547,11 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
547
547
  class: "inline-flex items-center justify-center align-middle",
548
548
  style: normalizeStyle({ width: pixelSize.value, height: pixelSize.value }),
549
549
  innerHTML: svgHtml.value
550
- }, null, 12, _hoisted_1$q);
550
+ }, null, 12, _hoisted_1$r);
551
551
  };
552
552
  }
553
553
  });
554
- const _hoisted_1$p = ["id", "type", "disabled", "aria-label", "aria-disabled"];
554
+ const _hoisted_1$q = ["id", "type", "disabled", "aria-label", "aria-disabled"];
555
555
  const _sfc_main$v = /* @__PURE__ */ defineComponent({
556
556
  __name: "FdsButtonIcon",
557
557
  props: {
@@ -583,29 +583,29 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
583
583
  };
584
584
  return (_ctx, _cache) => {
585
585
  return openBlock(), createElementBlock("button", {
586
- id: _ctx.id,
587
- type: _ctx.type,
588
- disabled: _ctx.disabled,
589
- "aria-label": _ctx.ariaLabel,
590
- "aria-disabled": _ctx.ariaDisabled,
586
+ id: __props.id,
587
+ type: __props.type,
588
+ disabled: __props.disabled,
589
+ "aria-label": __props.ariaLabel,
590
+ "aria-disabled": __props.ariaDisabled,
591
591
  class: normalizeClass(buttonClasses.value),
592
592
  onClick
593
593
  }, [
594
- !_ctx.loading ? (openBlock(), createBlock(_sfc_main$w, {
594
+ !__props.loading ? (openBlock(), createBlock(_sfc_main$w, {
595
595
  key: 0,
596
596
  size: iconSize.value,
597
- name: _ctx.icon
597
+ name: __props.icon
598
598
  }, null, 8, ["size", "name"])) : (openBlock(), createBlock(_sfc_main$w, {
599
599
  key: 1,
600
600
  size: iconSize.value,
601
601
  name: "spinner",
602
602
  class: "animate-spin"
603
603
  }, null, 8, ["size"]))
604
- ], 10, _hoisted_1$p);
604
+ ], 10, _hoisted_1$q);
605
605
  };
606
606
  }
607
607
  });
608
- const _hoisted_1$o = ["id"];
608
+ const _hoisted_1$p = ["id"];
609
609
  const _hoisted_2$k = { class: "flex items-center gap-2" };
610
610
  const _hoisted_3$b = { class: "relative" };
611
611
  const _hoisted_4$a = {
@@ -663,9 +663,9 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
663
663
  }, [
664
664
  createElementVNode("div", null, [
665
665
  createElementVNode("div", null, [
666
- _ctx.label ? (openBlock(), createElementBlock("div", {
666
+ __props.label ? (openBlock(), createElementBlock("div", {
667
667
  key: 0,
668
- class: normalizeClass(["font-bold w-full justify-between items-center h-[24px] flex gap-2", { "mb-4": (isExpanded.value || !_ctx.collapsable) && unref(hasSlot) }])
668
+ class: normalizeClass(["font-bold w-full justify-between items-center h-[24px] flex gap-2", { "mb-4": (isExpanded.value || !__props.collapsable) && unref(hasSlot) }])
669
669
  }, [
670
670
  createElementVNode("div", _hoisted_2$k, [
671
671
  createVNode(_sfc_main$w, {
@@ -673,10 +673,10 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
673
673
  size: 24,
674
674
  class: "fill-yellow-700"
675
675
  }),
676
- createElementVNode("span", null, toDisplayString(_ctx.label), 1)
676
+ createElementVNode("span", null, toDisplayString(__props.label), 1)
677
677
  ]),
678
678
  createElementVNode("div", _hoisted_3$b, [
679
- _ctx.closeable ? (openBlock(), createBlock(_sfc_main$v, {
679
+ __props.closeable ? (openBlock(), createBlock(_sfc_main$v, {
680
680
  key: 0,
681
681
  icon: "cross",
682
682
  size: 24,
@@ -684,7 +684,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
684
684
  ariaLabel: closeLabel.value,
685
685
  class: normalizeClass(["fill-gray-900! hover:bg-gray-100 active:bg-gray-200"])
686
686
  }, null, 8, ["ariaLabel"])) : createCommentVNode("", true),
687
- _ctx.collapsable ? (openBlock(), createBlock(_sfc_main$v, {
687
+ __props.collapsable ? (openBlock(), createBlock(_sfc_main$v, {
688
688
  key: 1,
689
689
  icon: "arrowDown",
690
690
  size: 24,
@@ -698,23 +698,23 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
698
698
  }, null, 8, ["ariaLabel", "class"])) : createCommentVNode("", true)
699
699
  ])
700
700
  ], 2)) : createCommentVNode("", true),
701
- isExpanded.value || !_ctx.collapsable ? (openBlock(), createElementBlock("div", _hoisted_4$a, [
701
+ isExpanded.value || !__props.collapsable ? (openBlock(), createElementBlock("div", _hoisted_4$a, [
702
702
  renderSlot(_ctx.$slots, "default")
703
703
  ])) : createCommentVNode("", true)
704
704
  ])
705
705
  ])
706
- ], 10, _hoisted_1$o)) : createCommentVNode("", true);
706
+ ], 10, _hoisted_1$p)) : createCommentVNode("", true);
707
707
  };
708
708
  }
709
709
  });
710
- const _hoisted_1$n = ["id"];
710
+ const _hoisted_1$o = ["id"];
711
711
  const _hoisted_2$j = {
712
712
  key: 0,
713
713
  class: "flex items-start justify-between gap-4"
714
714
  };
715
715
  const _hoisted_3$a = { class: "flex items-center gap-3" };
716
716
  const _hoisted_4$9 = { class: "flex items-start gap-3" };
717
- const _hoisted_5$8 = { class: "mb-0-last-child" };
717
+ const _hoisted_5$9 = { class: "mb-0-last-child" };
718
718
  const _sfc_main$t = /* @__PURE__ */ defineComponent({
719
719
  __name: "FdsBlockContent",
720
720
  props: {
@@ -751,43 +751,57 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
751
751
  class: normalizeClass(contentClasses.value),
752
752
  style: normalizeStyle(borderLeftStyle.value)
753
753
  }, [
754
- _ctx.heading ? (openBlock(), createElementBlock("header", _hoisted_2$j, [
754
+ __props.heading ? (openBlock(), createElementBlock("header", _hoisted_2$j, [
755
755
  createElementVNode("div", _hoisted_3$a, [
756
756
  createElementVNode("h3", {
757
757
  class: normalizeClass(headerClasses.value)
758
- }, toDisplayString(_ctx.heading), 3)
758
+ }, toDisplayString(__props.heading), 3)
759
759
  ]),
760
760
  createElementVNode("div", _hoisted_4$9, [
761
761
  renderSlot(_ctx.$slots, "headerInfo")
762
762
  ])
763
763
  ])) : createCommentVNode("", true),
764
- createElementVNode("div", _hoisted_5$8, [
764
+ createElementVNode("div", _hoisted_5$9, [
765
765
  renderSlot(_ctx.$slots, "default")
766
766
  ])
767
- ], 14, _hoisted_1$n);
767
+ ], 14, _hoisted_1$o);
768
768
  };
769
769
  }
770
770
  });
771
- const _hoisted_1$m = { class: "inline-flex items-center" };
772
- const _hoisted_2$i = {
771
+ const _hoisted_1$n = { class: "w-full flex justify-between items-start" };
772
+ const _hoisted_2$i = { class: "inline-flex items-center" };
773
+ const _hoisted_3$9 = {
773
774
  key: 0,
774
775
  class: "flex items-center mr-4"
775
776
  };
776
- const _hoisted_3$9 = { class: "inline-flex items-center" };
777
- const _hoisted_4$8 = ["aria-hidden"];
777
+ const _hoisted_4$8 = { class: "inline-flex items-center" };
778
+ const _hoisted_5$8 = {
779
+ key: 0,
780
+ class: "w-full flex mt-2"
781
+ };
782
+ const _hoisted_6$5 = ["aria-hidden"];
778
783
  const _sfc_main$s = /* @__PURE__ */ defineComponent({
784
+ ...{
785
+ inheritAttrs: false
786
+ },
779
787
  __name: "FdsBlockExpander",
780
788
  props: {
781
789
  disabled: { type: Boolean, default: false },
782
790
  label: { default: "" },
783
791
  open: { type: Boolean, default: false },
784
- preIcon: { default: void 0 }
792
+ preIcon: { default: void 0 },
793
+ id: { default: void 0 },
794
+ dataTestid: { default: void 0 }
785
795
  },
786
796
  emits: ["toggle"],
787
797
  setup(__props, { emit: __emit }) {
798
+ const attrs = useAttrs();
788
799
  const props = __props;
800
+ const hasExtraRowSlot = useHasSlot("extra-row");
789
801
  const emit = __emit;
790
802
  const isOpen = ref(props.open);
803
+ const autoId = `fds-block-expander-${Math.random().toString(36).slice(2, 9)}`;
804
+ const blockExpanderId = computed(() => props.id ?? autoId);
791
805
  watch(
792
806
  () => props.open,
793
807
  (newValue) => {
@@ -799,10 +813,17 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
799
813
  props.disabled && "shadow-none border-2 border-gray-200 border-dashed"
800
814
  ]);
801
815
  const headerClasses = computed(() => [
802
- "flex w-full items-start text-left justify-between bg-white text-blue-600 rounded-2xl p-[calc(1rem-2px)] border-2 border-white transition-colors border-2 border-white hover:border-blue-500 active:bg-blue_t-100 active:border-white focus-visible:border-blue-500 focus-visible:border-dashed focus-visible:outline-0",
816
+ "flex w-full flex-col text-left bg-white text-blue-600 rounded-2xl p-[calc(1rem-2px)] border-2 border-white transition-colors border-2 border-white hover:border-blue-500 active:bg-blue_t-100 active:border-white focus-visible:border-blue-500 focus-visible:border-dashed focus-visible:outline-0",
803
817
  props.disabled ? "cursor-not-allowed hover:border-2 hover:border-transparent active:bg-white" : "cursor-pointer",
804
- isOpen.value ? "rounded-b-none" : "rounded-b-2xl"
818
+ isOpen.value ? "rounded-b-none" : "rounded-b-2xl",
819
+ hasExtraRowSlot.value ? "" : ""
805
820
  ]);
821
+ const buttonRowClasses = computed(() => ["flex justify-between items-start w-full", hasExtraRowSlot.value ? "" : ""]);
822
+ const buttonAttrs = computed(() => ({
823
+ ...attrs,
824
+ "data-testid": props.dataTestid,
825
+ id: blockExpanderId.value
826
+ }));
806
827
  function handleToggle() {
807
828
  if (props.disabled) return;
808
829
  isOpen.value = !isOpen.value;
@@ -812,44 +833,53 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
812
833
  return openBlock(), createElementBlock("div", {
813
834
  class: normalizeClass(expanderClasses.value)
814
835
  }, [
815
- createElementVNode("button", {
836
+ createElementVNode("button", mergeProps(buttonAttrs.value, {
816
837
  type: "button",
817
- class: normalizeClass(headerClasses.value),
838
+ class: headerClasses.value,
818
839
  onClick: handleToggle
819
- }, [
820
- createElementVNode("span", _hoisted_1$m, [
821
- _ctx.preIcon ? (openBlock(), createElementBlock("span", _hoisted_2$i, [
840
+ }), [
841
+ createElementVNode("span", {
842
+ class: normalizeClass(buttonRowClasses.value)
843
+ }, [
844
+ createElementVNode("span", _hoisted_1$n, [
845
+ createElementVNode("span", _hoisted_2$i, [
846
+ __props.preIcon ? (openBlock(), createElementBlock("span", _hoisted_3$9, [
847
+ createVNode(_sfc_main$w, {
848
+ name: __props.preIcon,
849
+ size: 24,
850
+ class: normalizeClass(["fill-blue-500", { "fill-gray-500": __props.disabled }])
851
+ }, null, 8, ["name", "class"])
852
+ ])) : createCommentVNode("", true),
853
+ createElementVNode("span", _hoisted_4$8, [
854
+ createElementVNode("span", {
855
+ class: normalizeClass(["font-bold font-heading text-lg leading-md", { "text-gray-500": __props.disabled }])
856
+ }, toDisplayString(__props.label), 3)
857
+ ])
858
+ ]),
822
859
  createVNode(_sfc_main$w, {
823
- name: _ctx.preIcon,
860
+ name: "arrowDown",
824
861
  size: 24,
825
- class: normalizeClass(["fill-blue-500", { "fill-gray-500": _ctx.disabled }])
826
- }, null, 8, ["name", "class"])
827
- ])) : createCommentVNode("", true),
828
- createElementVNode("span", _hoisted_3$9, [
829
- createElementVNode("span", {
830
- class: normalizeClass(["font-bold font-heading text-lg leading-md", { "text-gray-500": _ctx.disabled }])
831
- }, toDisplayString(_ctx.label), 3)
862
+ class: normalizeClass(["ml-4 transition-transform duration-200 fill-blue-500 min-w-6 min-h-6", { "rotate-180": isOpen.value, "fill-gray-500": __props.disabled }])
863
+ }, null, 8, ["class"])
832
864
  ])
833
- ]),
834
- createVNode(_sfc_main$w, {
835
- name: "arrowDown",
836
- size: 24,
837
- class: normalizeClass(["ml-4 transition-transform duration-200 fill-blue-500 min-w-6 min-h-6", { "rotate-180": isOpen.value, "fill-gray-500": _ctx.disabled }])
838
- }, null, 8, ["class"])
839
- ], 2),
865
+ ], 2),
866
+ unref(hasExtraRowSlot) && !isOpen.value ? (openBlock(), createElementBlock("span", _hoisted_5$8, [
867
+ renderSlot(_ctx.$slots, "extra-row")
868
+ ])) : createCommentVNode("", true)
869
+ ], 16),
840
870
  withDirectives(createElementVNode("div", {
841
871
  "aria-hidden": !isOpen.value,
842
872
  class: "mb-0-last-child block px-4 pb-6 rounded-b-2xl bg-white"
843
873
  }, [
844
874
  renderSlot(_ctx.$slots, "default")
845
- ], 8, _hoisted_4$8), [
875
+ ], 8, _hoisted_6$5), [
846
876
  [vShow, isOpen.value]
847
877
  ])
848
878
  ], 2);
849
879
  };
850
880
  }
851
881
  });
852
- const _hoisted_1$l = ["id"];
882
+ const _hoisted_1$m = ["id"];
853
883
  const _hoisted_2$h = {
854
884
  key: 0,
855
885
  class: "flex items-start gap-4"
@@ -900,16 +930,16 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
900
930
  id: contentBlockId.value,
901
931
  class: normalizeClass(contentClasses.value)
902
932
  }, [
903
- _ctx.size === "large" && _ctx.icon ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
933
+ __props.size === "large" && __props.icon ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
904
934
  createVNode(_sfc_main$w, {
905
- name: _ctx.icon,
935
+ name: __props.icon,
906
936
  size: largeIconSize,
907
937
  class: "fill-blue-500"
908
938
  }, null, 8, ["name"]),
909
939
  createElementVNode("div", _hoisted_3$8, [
910
- _ctx.heading ? (openBlock(), createElementBlock("div", _hoisted_4$7, [
940
+ __props.heading ? (openBlock(), createElementBlock("div", _hoisted_4$7, [
911
941
  createElementVNode("header", _hoisted_5$7, [
912
- createElementVNode("h3", _hoisted_6$4, toDisplayString(_ctx.heading), 1),
942
+ createElementVNode("h3", _hoisted_6$4, toDisplayString(__props.heading), 1),
913
943
  createElementVNode("div", _hoisted_7$4, [
914
944
  renderSlot(_ctx.$slots, "headerInfo")
915
945
  ])
@@ -920,19 +950,19 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
920
950
  ])) : createCommentVNode("", true)
921
951
  ])
922
952
  ])) : (openBlock(), createElementBlock("div", _hoisted_9$3, [
923
- _ctx.heading ? (openBlock(), createElementBlock("div", {
953
+ __props.heading ? (openBlock(), createElementBlock("div", {
924
954
  key: 0,
925
955
  class: normalizeClass({ "mb-4": unref(hasSlot) })
926
956
  }, [
927
957
  createElementVNode("header", _hoisted_10$1, [
928
958
  createElementVNode("div", _hoisted_11$1, [
929
- _ctx.icon && _ctx.size === "small" ? (openBlock(), createBlock(_sfc_main$w, {
959
+ __props.icon && __props.size === "small" ? (openBlock(), createBlock(_sfc_main$w, {
930
960
  key: 0,
931
- name: _ctx.icon,
961
+ name: __props.icon,
932
962
  size: smallIconSize,
933
963
  class: "fill-blue-500"
934
964
  }, null, 8, ["name"])) : createCommentVNode("", true),
935
- createElementVNode("h3", _hoisted_12$1, toDisplayString(_ctx.heading), 1)
965
+ createElementVNode("h3", _hoisted_12$1, toDisplayString(__props.heading), 1)
936
966
  ]),
937
967
  createElementVNode("div", _hoisted_13$1, [
938
968
  renderSlot(_ctx.$slots, "headerInfo")
@@ -943,11 +973,11 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
943
973
  renderSlot(_ctx.$slots, "default")
944
974
  ])
945
975
  ]))
946
- ], 10, _hoisted_1$l);
976
+ ], 10, _hoisted_1$m);
947
977
  };
948
978
  }
949
979
  });
950
- const _hoisted_1$k = { class: "mb-0-last-child" };
980
+ const _hoisted_1$l = { class: "mb-0-last-child" };
951
981
  const _hoisted_2$g = {
952
982
  key: 0,
953
983
  class: "flex items-end"
@@ -969,7 +999,8 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
969
999
  icon: { default: void 0 },
970
1000
  interactive: { type: Boolean, default: true },
971
1001
  dataTestid: { default: void 0 },
972
- as: { default: "router-link" }
1002
+ as: { default: "router-link" },
1003
+ onClick: {}
973
1004
  },
974
1005
  emits: ["click"],
975
1006
  setup(__props, { emit: __emit }) {
@@ -1019,7 +1050,8 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
1019
1050
  });
1020
1051
  const componentAttrs = computed(() => ({
1021
1052
  ...linkAttrs.value,
1022
- ...attrs
1053
+ ...attrs,
1054
+ "data-testid": props.dataTestid
1023
1055
  }));
1024
1056
  const componentType = computed(() => {
1025
1057
  if (props.as) return props.as;
@@ -1029,22 +1061,21 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
1029
1061
  return openBlock(), createBlock(resolveDynamicComponent(componentType.value), mergeProps(componentAttrs.value, {
1030
1062
  id: blockLinkId.value,
1031
1063
  class: ["box-border appearance-none text-left w-full flex items-start bg-white p-[calc(1rem-2px)] mb-3 text-blue-600 shadow-lg shadow-blue-200 rounded-2xl no-underline border-2 border-transparent transition-all duration-200 hover:border-blue-600 hover:border-2 active:border-transparent active:shadow-none active:bg-blue_t-100 focus-visible:border-blue-500 focus-visible:border-dashed focus-visible:outline-0", innerClasses.value],
1032
- target: componentType.value === "a" ? _ctx.target : void 0,
1033
- rel: componentType.value === "a" ? _ctx.rel : void 0,
1034
- download: componentType.value === "a" ? _ctx.download : void 0,
1035
- disabled: componentType.value === "button" ? _ctx.disabled : void 0,
1036
- "aria-disabled": _ctx.disabled,
1064
+ target: componentType.value === "a" ? __props.target : void 0,
1065
+ rel: componentType.value === "a" ? __props.rel : void 0,
1066
+ download: componentType.value === "a" ? __props.download : void 0,
1067
+ disabled: componentType.value === "button" ? __props.disabled : void 0,
1068
+ "aria-disabled": __props.disabled,
1037
1069
  onClick: handleClick,
1038
- onKeydown: handleKeydown,
1039
- "data-testid": _ctx.dataTestid
1070
+ onKeydown: handleKeydown
1040
1071
  }), {
1041
1072
  default: withCtx(() => [
1042
1073
  createElementVNode("div", {
1043
1074
  class: normalizeClass(["flex w-full flex-1", contentClasses.value])
1044
1075
  }, [
1045
- _ctx.icon ? (openBlock(), createBlock(_sfc_main$w, {
1076
+ __props.icon ? (openBlock(), createBlock(_sfc_main$w, {
1046
1077
  key: 0,
1047
- name: _ctx.icon,
1078
+ name: __props.icon,
1048
1079
  size: 24,
1049
1080
  class: normalizeClass(["flex items-center justify-center w-6 h-6 fill-blue-500", iconClasses.value])
1050
1081
  }, null, 8, ["name", "class"])) : createCommentVNode("", true),
@@ -1056,12 +1087,12 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
1056
1087
  }, [
1057
1088
  createElementVNode("h3", {
1058
1089
  class: normalizeClass(["flex-1 font-heading text-lg tracking-normal m-0 leading-md", headerTextClasses.value])
1059
- }, toDisplayString(_ctx.label), 3)
1090
+ }, toDisplayString(__props.label), 3)
1060
1091
  ], 2),
1061
1092
  createElementVNode("div", {
1062
1093
  class: normalizeClass(slotWrapperClasses.value)
1063
1094
  }, [
1064
- createElementVNode("div", _hoisted_1$k, [
1095
+ createElementVNode("div", _hoisted_1$l, [
1065
1096
  renderSlot(_ctx.$slots, "default")
1066
1097
  ]),
1067
1098
  unref(hasStickerSlot) ? (openBlock(), createElementBlock("div", _hoisted_2$g, [
@@ -1070,7 +1101,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
1070
1101
  ], 2)
1071
1102
  ], 2)
1072
1103
  ], 2),
1073
- _ctx.arrow ? (openBlock(), createBlock(_sfc_main$w, {
1104
+ __props.arrow ? (openBlock(), createBlock(_sfc_main$w, {
1074
1105
  key: 0,
1075
1106
  name: "arrowRight",
1076
1107
  size: 20,
@@ -1078,11 +1109,11 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
1078
1109
  }, null, 8, ["class"])) : createCommentVNode("", true)
1079
1110
  ]),
1080
1111
  _: 3
1081
- }, 16, ["id", "class", "target", "rel", "download", "disabled", "aria-disabled", "data-testid"]);
1112
+ }, 16, ["id", "class", "target", "rel", "download", "disabled", "aria-disabled"]);
1082
1113
  };
1083
1114
  }
1084
1115
  });
1085
- const _hoisted_1$j = ["aria-label"];
1116
+ const _hoisted_1$k = ["aria-label"];
1086
1117
  const _sfc_main$p = /* @__PURE__ */ defineComponent({
1087
1118
  __name: "FdsSpinner",
1088
1119
  props: {
@@ -1114,7 +1145,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
1114
1145
  return openBlock(), createElementBlock("div", {
1115
1146
  class: normalizeClass(wrapperClasses.value),
1116
1147
  role: "status",
1117
- "aria-label": _ctx.label || "Laddar"
1148
+ "aria-label": __props.label || "Laddar"
1118
1149
  }, [
1119
1150
  createElementVNode("div", {
1120
1151
  class: "relative",
@@ -1151,15 +1182,15 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
1151
1182
  }, null, -1)
1152
1183
  ])], 2))
1153
1184
  ], 4),
1154
- _ctx.label ? (openBlock(), createElementBlock("div", {
1185
+ __props.label ? (openBlock(), createElementBlock("div", {
1155
1186
  key: 0,
1156
- class: normalizeClass(_ctx.labelPosition === "bottom" ? "font-bold" : "")
1157
- }, toDisplayString(_ctx.label), 3)) : createCommentVNode("", true)
1158
- ], 10, _hoisted_1$j);
1187
+ class: normalizeClass(__props.labelPosition === "bottom" ? "font-bold" : "")
1188
+ }, toDisplayString(__props.label), 3)) : createCommentVNode("", true)
1189
+ ], 10, _hoisted_1$k);
1159
1190
  };
1160
1191
  }
1161
1192
  });
1162
- const _hoisted_1$i = ["aria-disabled"];
1193
+ const _hoisted_1$j = ["aria-disabled"];
1163
1194
  const _hoisted_2$f = { class: "pt-0.5" };
1164
1195
  const elBase$2 = "box-border appearance-none inline-flex items-start justify-center w-fit cursor-pointer shadow-none p-0.5 text-base select-none m-0 rounded-md text-left align-start no-underline transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
1165
1196
  const _sfc_main$o = /* @__PURE__ */ defineComponent({
@@ -1183,6 +1214,9 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
1183
1214
  target: { default: void 0 },
1184
1215
  rel: { default: void 0 },
1185
1216
  type: { default: "button" },
1217
+ dataTestid: { default: void 0 },
1218
+ ariaLabel: { default: void 0 },
1219
+ ariaExpanded: { type: Boolean, default: void 0 },
1186
1220
  onClick: {}
1187
1221
  },
1188
1222
  emits: ["click"],
@@ -1228,42 +1262,42 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
1228
1262
  return (_ctx, _cache) => {
1229
1263
  return openBlock(), createElementBlock("div", {
1230
1264
  class: normalizeClass(rootClasses.value),
1231
- "aria-disabled": _ctx.disabled ? "true" : void 0
1265
+ "aria-disabled": __props.disabled ? "true" : void 0
1232
1266
  }, [
1233
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.as), mergeProps(componentAttrs.value, {
1234
- type: _ctx.as === "button" ? _ctx.type : void 0,
1235
- disabled: _ctx.as === "button" ? _ctx.disabled : void 0,
1236
- target: _ctx.as === "a" ? _ctx.target : void 0,
1237
- rel: _ctx.as === "a" ? _ctx.rel : void 0,
1267
+ (openBlock(), createBlock(resolveDynamicComponent(__props.as), mergeProps(componentAttrs.value, {
1268
+ type: __props.as === "button" ? __props.type : void 0,
1269
+ disabled: __props.as === "button" ? __props.disabled : void 0,
1270
+ target: __props.as === "a" ? __props.target : void 0,
1271
+ rel: __props.as === "a" ? __props.rel : void 0,
1238
1272
  class: buttonClasses.value,
1239
1273
  onClick
1240
1274
  }), {
1241
1275
  default: withCtx(() => [
1242
- _ctx.loading ? (openBlock(), createBlock(_sfc_main$p, {
1276
+ __props.loading ? (openBlock(), createBlock(_sfc_main$p, {
1243
1277
  key: 0,
1244
1278
  class: "mr-2",
1245
1279
  size: "24px",
1246
1280
  color: "inherit"
1247
- })) : _ctx.icon ? (openBlock(), createElementBlock("span", {
1281
+ })) : __props.icon ? (openBlock(), createElementBlock("span", {
1248
1282
  key: 1,
1249
1283
  class: normalizeClass(iconOrderClasses.value),
1250
1284
  "aria-hidden": "true"
1251
1285
  }, [
1252
1286
  createVNode(_sfc_main$w, {
1253
1287
  class: normalizeClass(iconFillClass2.value),
1254
- name: _ctx.icon,
1288
+ name: __props.icon,
1255
1289
  size: 24
1256
1290
  }, null, 8, ["class", "name"])
1257
1291
  ], 2)) : createCommentVNode("", true),
1258
- createElementVNode("span", _hoisted_2$f, toDisplayString(_ctx.text), 1)
1292
+ createElementVNode("span", _hoisted_2$f, toDisplayString(__props.text), 1)
1259
1293
  ]),
1260
1294
  _: 1
1261
1295
  }, 16, ["type", "disabled", "target", "rel", "class"]))
1262
- ], 10, _hoisted_1$i);
1296
+ ], 10, _hoisted_1$j);
1263
1297
  };
1264
1298
  }
1265
1299
  });
1266
- const _hoisted_1$h = {
1300
+ const _hoisted_1$i = {
1267
1301
  key: 0,
1268
1302
  class: "flex items-center gap-2 h-7"
1269
1303
  };
@@ -1330,7 +1364,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
1330
1364
  }
1331
1365
  });
1332
1366
  return (_ctx, _cache) => {
1333
- return isCopied.value ? (openBlock(), createElementBlock("div", _hoisted_1$h, [
1367
+ return isCopied.value ? (openBlock(), createElementBlock("div", _hoisted_1$i, [
1334
1368
  createVNode(_sfc_main$w, { name: "bigSuccess" }),
1335
1369
  createElementVNode("span", null, toDisplayString(props.copiedLabel), 1)
1336
1370
  ])) : (openBlock(), createBlock(_sfc_main$o, {
@@ -1344,7 +1378,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
1344
1378
  };
1345
1379
  }
1346
1380
  });
1347
- const _hoisted_1$g = ["aria-disabled"];
1381
+ const _hoisted_1$h = ["aria-disabled"];
1348
1382
  const _hoisted_2$e = ["disabled"];
1349
1383
  const _sfc_main$m = /* @__PURE__ */ defineComponent({
1350
1384
  ...{
@@ -1358,10 +1392,13 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
1358
1392
  href: { default: void 0 },
1359
1393
  downloadOptions: { default: void 0 },
1360
1394
  text: { default: "" },
1395
+ ariaLabel: { default: void 0 },
1396
+ dataTestid: { default: void 0 },
1361
1397
  onClick: {}
1362
1398
  },
1363
1399
  emits: ["click"],
1364
1400
  setup(__props, { emit: __emit }) {
1401
+ const attrs = useAttrs();
1365
1402
  const props = __props;
1366
1403
  const emit = __emit;
1367
1404
  const isDownloading = ref(false);
@@ -1387,6 +1424,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
1387
1424
  isDownloading.value ? "cursor-not-allowed text-gray-500" : "cursor-pointer text-blue-600"
1388
1425
  ]);
1389
1426
  const iconFillClass2 = computed(() => isDownloading.value ? "fill-gray-500" : "fill-blue-500");
1427
+ const buttonAttrs = computed(() => ({
1428
+ ...attrs,
1429
+ "data-testid": props.dataTestid,
1430
+ "aria-label": props.ariaLabel
1431
+ }));
1390
1432
  async function handleDownload(ev) {
1391
1433
  if (props.disabled || props.loading || isDownloading.value) {
1392
1434
  ev.preventDefault();
@@ -1466,11 +1508,11 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
1466
1508
  return (_ctx, _cache) => {
1467
1509
  return openBlock(), createElementBlock("div", {
1468
1510
  class: normalizeClass(rootClasses.value),
1469
- "aria-disabled": _ctx.disabled ? "true" : void 0
1511
+ "aria-disabled": __props.disabled ? "true" : void 0
1470
1512
  }, [
1471
- createElementVNode("button", mergeProps(_ctx.$attrs, {
1513
+ createElementVNode("button", mergeProps(buttonAttrs.value, {
1472
1514
  class: buttonClasses.value,
1473
- disabled: _ctx.disabled || _ctx.loading || isDownloading.value,
1515
+ disabled: __props.disabled || __props.loading || isDownloading.value,
1474
1516
  type: "button",
1475
1517
  onClick
1476
1518
  }), [
@@ -1484,13 +1526,13 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
1484
1526
  size: 24
1485
1527
  }, null, 8, ["class"])
1486
1528
  ], 2),
1487
- createTextVNode(" " + toDisplayString(_ctx.text), 1)
1529
+ createTextVNode(" " + toDisplayString(__props.text), 1)
1488
1530
  ], 16, _hoisted_2$e)
1489
- ], 10, _hoisted_1$g);
1531
+ ], 10, _hoisted_1$h);
1490
1532
  };
1491
1533
  }
1492
1534
  });
1493
- const _hoisted_1$f = ["aria-disabled"];
1535
+ const _hoisted_1$g = ["aria-disabled"];
1494
1536
  const _hoisted_2$d = { key: 2 };
1495
1537
  const elBase$1 = "box-border appearance-none inline-flex items-center justify-center cursor-pointer select-none w-full min-h-0 min-w-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
1496
1538
  const variantClasses$1 = "bg-red-600 border border-red-700 text-white hover:bg-red-700 active:bg-red-800 active:border-red-800";
@@ -1512,6 +1554,10 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
1512
1554
  target: {},
1513
1555
  rel: {},
1514
1556
  type: { default: "button" },
1557
+ invert: { type: Boolean },
1558
+ dataTestid: {},
1559
+ ariaLabel: {},
1560
+ ariaExpanded: { type: Boolean },
1515
1561
  onClick: {}
1516
1562
  },
1517
1563
  emits: ["click"],
@@ -1543,10 +1589,6 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
1543
1589
  ev.preventDefault();
1544
1590
  return;
1545
1591
  }
1546
- if (props.onClick) {
1547
- const handlers = Array.isArray(props.onClick) ? props.onClick : [props.onClick];
1548
- handlers.forEach((handler) => handler(ev));
1549
- }
1550
1592
  emit("click", ev);
1551
1593
  }
1552
1594
  const linkAttrs = computed(() => {
@@ -1557,39 +1599,39 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
1557
1599
  return (_ctx, _cache) => {
1558
1600
  return openBlock(), createElementBlock("div", {
1559
1601
  class: normalizeClass(rootClasses.value),
1560
- "aria-disabled": _ctx.disabled ? "true" : void 0
1602
+ "aria-disabled": __props.disabled ? "true" : void 0
1561
1603
  }, [
1562
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.as), mergeProps(linkAttrs.value, {
1563
- type: _ctx.as === "button" ? _ctx.type : void 0,
1564
- disabled: _ctx.as === "button" ? _ctx.disabled : void 0,
1604
+ (openBlock(), createBlock(resolveDynamicComponent(__props.as), mergeProps(linkAttrs.value, {
1605
+ type: __props.as === "button" ? __props.type : void 0,
1606
+ disabled: __props.as === "button" ? __props.disabled : void 0,
1565
1607
  class: buttonClasses.value,
1566
1608
  onClick
1567
1609
  }), {
1568
1610
  default: withCtx(() => [
1569
- _ctx.loading ? (openBlock(), createBlock(_sfc_main$p, {
1611
+ __props.loading ? (openBlock(), createBlock(_sfc_main$p, {
1570
1612
  key: 0,
1571
1613
  size: "24px",
1572
1614
  color: "inherit"
1573
- })) : _ctx.icon ? (openBlock(), createElementBlock("span", {
1615
+ })) : __props.icon ? (openBlock(), createElementBlock("span", {
1574
1616
  key: 1,
1575
1617
  class: normalizeClass(iconOrderClasses.value),
1576
1618
  "aria-hidden": "true"
1577
1619
  }, [
1578
1620
  createVNode(_sfc_main$w, {
1579
1621
  class: normalizeClass(iconFillClass$1),
1580
- name: _ctx.icon,
1622
+ name: __props.icon,
1581
1623
  size: 24
1582
1624
  }, null, 8, ["name"])
1583
1625
  ], 2)) : createCommentVNode("", true),
1584
- _ctx.text ? (openBlock(), createElementBlock("span", _hoisted_2$d, toDisplayString(_ctx.text), 1)) : createCommentVNode("", true)
1626
+ __props.text ? (openBlock(), createElementBlock("span", _hoisted_2$d, toDisplayString(__props.text), 1)) : createCommentVNode("", true)
1585
1627
  ]),
1586
1628
  _: 1
1587
1629
  }, 16, ["type", "disabled", "class"]))
1588
- ], 10, _hoisted_1$f);
1630
+ ], 10, _hoisted_1$g);
1589
1631
  };
1590
1632
  }
1591
1633
  });
1592
- const _hoisted_1$e = ["aria-disabled"];
1634
+ const _hoisted_1$f = ["aria-disabled"];
1593
1635
  const _hoisted_2$c = { key: 2 };
1594
1636
  const elBase = "box-border appearance-none inline-flex items-center justify-center cursor-pointer select-none w-full min-h-0 min-w-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
1595
1637
  const variantClasses = "bg-white border-2 border-blue-500 text-blue-600 hover:border-blue-600 active:bg-blue-600 active:border-blue-600 active:text-white";
@@ -1611,6 +1653,10 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
1611
1653
  target: {},
1612
1654
  rel: {},
1613
1655
  type: { default: "button" },
1656
+ invert: { type: Boolean },
1657
+ dataTestid: {},
1658
+ ariaLabel: {},
1659
+ ariaExpanded: { type: Boolean },
1614
1660
  onClick: {}
1615
1661
  },
1616
1662
  emits: ["click"],
@@ -1652,39 +1698,39 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
1652
1698
  return (_ctx, _cache) => {
1653
1699
  return openBlock(), createElementBlock("div", {
1654
1700
  class: normalizeClass(rootClasses.value),
1655
- "aria-disabled": _ctx.disabled ? "true" : void 0
1701
+ "aria-disabled": __props.disabled ? "true" : void 0
1656
1702
  }, [
1657
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.as), mergeProps(linkAttrs.value, {
1658
- type: _ctx.as === "button" ? _ctx.type : void 0,
1659
- disabled: _ctx.as === "button" ? _ctx.disabled : void 0,
1703
+ (openBlock(), createBlock(resolveDynamicComponent(__props.as), mergeProps(linkAttrs.value, {
1704
+ type: __props.as === "button" ? __props.type : void 0,
1705
+ disabled: __props.as === "button" ? __props.disabled : void 0,
1660
1706
  class: buttonClasses.value,
1661
1707
  onClick
1662
1708
  }), {
1663
1709
  default: withCtx(() => [
1664
- _ctx.loading ? (openBlock(), createBlock(_sfc_main$p, {
1710
+ __props.loading ? (openBlock(), createBlock(_sfc_main$p, {
1665
1711
  key: 0,
1666
1712
  size: "24px",
1667
1713
  color: "inherit"
1668
- })) : _ctx.icon ? (openBlock(), createElementBlock("span", {
1714
+ })) : __props.icon ? (openBlock(), createElementBlock("span", {
1669
1715
  key: 1,
1670
1716
  class: normalizeClass(iconOrderClasses.value),
1671
1717
  "aria-hidden": "true"
1672
1718
  }, [
1673
1719
  createVNode(_sfc_main$w, {
1674
1720
  class: normalizeClass(iconFillClass),
1675
- name: _ctx.icon,
1721
+ name: __props.icon,
1676
1722
  size: 24
1677
1723
  }, null, 8, ["name"])
1678
1724
  ], 2)) : createCommentVNode("", true),
1679
- _ctx.text ? (openBlock(), createElementBlock("span", _hoisted_2$c, toDisplayString(_ctx.text), 1)) : createCommentVNode("", true)
1725
+ __props.text ? (openBlock(), createElementBlock("span", _hoisted_2$c, toDisplayString(__props.text), 1)) : createCommentVNode("", true)
1680
1726
  ]),
1681
1727
  _: 1
1682
1728
  }, 16, ["type", "disabled", "class"]))
1683
- ], 10, _hoisted_1$e);
1729
+ ], 10, _hoisted_1$f);
1684
1730
  };
1685
1731
  }
1686
1732
  });
1687
- const _hoisted_1$d = { class: "flex justify-between mb-4" };
1733
+ const _hoisted_1$e = { class: "flex justify-between mb-4" };
1688
1734
  const _hoisted_2$b = { class: "mb-0-last-child" };
1689
1735
  const _sfc_main$j = /* @__PURE__ */ defineComponent({
1690
1736
  __name: "FdsModal",
@@ -1865,7 +1911,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
1865
1911
  onClick: _cache[1] || (_cache[1] = withModifiers(() => {
1866
1912
  }, ["stop"]))
1867
1913
  }, [
1868
- createElementVNode("div", _hoisted_1$d, [
1914
+ createElementVNode("div", _hoisted_1$e, [
1869
1915
  createElementVNode("h3", {
1870
1916
  tabindex: "-1",
1871
1917
  class: normalizeClass(headerTitleClasses.value)
@@ -1876,9 +1922,9 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
1876
1922
  size: 24,
1877
1923
  class: normalizeClass(iconClasses.value)
1878
1924
  }, null, 8, ["name", "class"])) : createCommentVNode("", true),
1879
- createTextVNode(" " + toDisplayString(_ctx.heading), 1)
1925
+ createTextVNode(" " + toDisplayString(__props.heading), 1)
1880
1926
  ], 2),
1881
- !_ctx.strict ? (openBlock(), createBlock(_sfc_main$v, {
1927
+ !__props.strict ? (openBlock(), createBlock(_sfc_main$v, {
1882
1928
  key: 0,
1883
1929
  icon: "cross",
1884
1930
  size: 28,
@@ -5073,7 +5119,7 @@ try {
5073
5119
  globalThis.IMask = IMask;
5074
5120
  } catch {
5075
5121
  }
5076
- const _hoisted_1$c = { class: "w-full mb-4" };
5122
+ const _hoisted_1$d = { class: "w-full mb-4" };
5077
5123
  const _hoisted_2$a = ["for"];
5078
5124
  const _hoisted_3$7 = { class: "relative" };
5079
5125
  const _hoisted_4$6 = ["id", "name", "type", "disabled", "required", "size", "maxlength", "aria-invalid"];
@@ -5111,7 +5157,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
5111
5157
  "modelValue": { default: void 0, required: false },
5112
5158
  "modelModifiers": {}
5113
5159
  }),
5114
- emits: /* @__PURE__ */ mergeModels(["input", "clearInput", "update:value"], ["update:modelValue"]),
5160
+ emits: /* @__PURE__ */ mergeModels(["input", "clearInput", "update:value", "keyup", "keyup.enter"], ["update:modelValue"]),
5115
5161
  setup(__props, { emit: __emit }) {
5116
5162
  const modelValue = useModel(__props, "modelValue");
5117
5163
  const props = __props;
@@ -5213,40 +5259,44 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
5213
5259
  }
5214
5260
  );
5215
5261
  return (_ctx, _cache) => {
5216
- return openBlock(), createElementBlock("div", _hoisted_1$c, [
5262
+ return openBlock(), createElementBlock("div", _hoisted_1$d, [
5217
5263
  createElementVNode("div", {
5218
- class: normalizeClass({ "flex flex-row gap-4": _ctx.labelLeft })
5264
+ class: normalizeClass({ "flex flex-row gap-4": __props.labelLeft })
5219
5265
  }, [
5220
5266
  createElementVNode("div", null, [
5221
- _ctx.label ? (openBlock(), createElementBlock("label", {
5267
+ __props.label ? (openBlock(), createElementBlock("label", {
5222
5268
  key: 0,
5223
5269
  for: inputId.value,
5224
- class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
5225
- }, toDisplayString(_ctx.label), 11, _hoisted_2$a)) : createCommentVNode("", true),
5226
- _ctx.meta ? (openBlock(), createElementBlock("div", {
5270
+ class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": __props.meta, "mb-1": !__props.meta }])
5271
+ }, toDisplayString(__props.label), 11, _hoisted_2$a)) : createCommentVNode("", true),
5272
+ __props.meta ? (openBlock(), createElementBlock("div", {
5227
5273
  key: 1,
5228
- class: normalizeClass(["font-thin", { "mb-1": !_ctx.labelLeft }])
5229
- }, toDisplayString(_ctx.meta), 3)) : createCommentVNode("", true)
5274
+ class: normalizeClass(["font-thin", { "mb-1": !__props.labelLeft }])
5275
+ }, toDisplayString(__props.meta), 3)) : createCommentVNode("", true)
5230
5276
  ]),
5231
5277
  createElementVNode("div", {
5232
- class: normalizeClass({ "flex-1": _ctx.labelLeft })
5278
+ class: normalizeClass({ "flex-1": __props.labelLeft })
5233
5279
  }, [
5234
5280
  createElementVNode("div", _hoisted_3$7, [
5235
5281
  withDirectives(createElementVNode("input", mergeProps({
5236
5282
  ref_key: "inputRef",
5237
5283
  ref: inputRef,
5238
5284
  id: inputId.value,
5239
- name: _ctx.name || void 0,
5240
- type: isPasswordType.value ? showPassword.value ? "text" : "password" : _ctx.type,
5241
- disabled: _ctx.disabled,
5242
- required: _ctx.required,
5243
- size: _ctx.size,
5244
- maxlength: _ctx.maxlength,
5285
+ name: __props.name || void 0,
5286
+ type: isPasswordType.value ? showPassword.value ? "text" : "password" : __props.type,
5287
+ disabled: __props.disabled,
5288
+ required: __props.required,
5289
+ size: __props.size,
5290
+ maxlength: __props.maxlength,
5245
5291
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => internalValue.value = $event),
5246
- "aria-invalid": _ctx.valid === "false" ? "true" : void 0,
5292
+ "aria-invalid": __props.valid === "false" ? "true" : void 0,
5247
5293
  class: inputClasses.value
5248
5294
  }, _ctx.$attrs, {
5249
- onInput: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("input", $event))
5295
+ onInput: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("input", $event)),
5296
+ onKeyup: _cache[2] || (_cache[2] = (ev) => {
5297
+ _ctx.$emit("keyup", ev);
5298
+ if (ev.key === "Enter") _ctx.$emit("keyup.enter", ev);
5299
+ })
5250
5300
  }), null, 16, _hoisted_4$6), [
5251
5301
  [vModelDynamic, internalValue.value]
5252
5302
  ]),
@@ -5262,7 +5312,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
5262
5312
  key: 1,
5263
5313
  name: "bigSuccess"
5264
5314
  })) : createCommentVNode("", true),
5265
- _ctx.clearButton && !!internalValue.value && !_ctx.disabled ? (openBlock(), createBlock(_sfc_main$v, {
5315
+ __props.clearButton && !!internalValue.value && !__props.disabled ? (openBlock(), createBlock(_sfc_main$v, {
5266
5316
  key: 2,
5267
5317
  icon: "cross",
5268
5318
  ariaLabel: clearButtonLabel.value,
@@ -5278,12 +5328,12 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
5278
5328
  ])
5279
5329
  ], 2)
5280
5330
  ], 2),
5281
- showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_5$6, toDisplayString(_ctx.invalidMessage), 1)) : createCommentVNode("", true)
5331
+ showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_5$6, toDisplayString(__props.invalidMessage), 1)) : createCommentVNode("", true)
5282
5332
  ]);
5283
5333
  };
5284
5334
  }
5285
5335
  });
5286
- const _hoisted_1$b = ["id"];
5336
+ const _hoisted_1$c = ["id"];
5287
5337
  const _hoisted_2$9 = { class: "flex items-center justify-start gap-1 w-[100px]" };
5288
5338
  const _hoisted_3$6 = { class: "flex items-center justify-center w-auto gap-2 order-0 sm:order-0" };
5289
5339
  const _hoisted_4$5 = { class: "whitespace-nowrap" };
@@ -5372,7 +5422,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5372
5422
  id: inputId.value
5373
5423
  }, [
5374
5424
  createElementVNode("div", _hoisted_2$9, [
5375
- _ctx.loading && loadingIndicator.value === "start" ? (openBlock(), createBlock(_sfc_main$p, {
5425
+ __props.loading && loadingIndicator.value === "start" ? (openBlock(), createBlock(_sfc_main$p, {
5376
5426
  key: 0,
5377
5427
  size: "32px",
5378
5428
  color: "blue"
@@ -5380,12 +5430,12 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5380
5430
  key: 1,
5381
5431
  icon: "first",
5382
5432
  size: 28,
5383
- disabled: _ctx.current === 1,
5384
- ariaDisabled: _ctx.current === 1,
5385
- class: normalizeClass([{ "hidden!": _ctx.current === 1 }, "w-8 h-8 sm:w-12 sm:h-12"]),
5433
+ disabled: __props.current === 1,
5434
+ ariaDisabled: __props.current === 1,
5435
+ class: normalizeClass([{ "hidden!": __props.current === 1 }, "w-8 h-8 sm:w-12 sm:h-12"]),
5386
5436
  onClick: _cache[0] || (_cache[0] = ($event) => handlePagination("start"))
5387
5437
  }, null, 8, ["disabled", "ariaDisabled", "class"])),
5388
- _ctx.loading && loadingIndicator.value === "prev" ? (openBlock(), createBlock(_sfc_main$p, {
5438
+ __props.loading && loadingIndicator.value === "prev" ? (openBlock(), createBlock(_sfc_main$p, {
5389
5439
  key: 2,
5390
5440
  size: "24px",
5391
5441
  color: "blue"
@@ -5393,14 +5443,14 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5393
5443
  key: 3,
5394
5444
  icon: "arrowLeft",
5395
5445
  size: 28,
5396
- disabled: _ctx.current === 1,
5397
- ariaDisabled: _ctx.current === 1,
5398
- class: normalizeClass([{ "hidden!": _ctx.current === 1 }, "w-8 h-8 sm:w-12 sm:h-12"]),
5446
+ disabled: __props.current === 1,
5447
+ ariaDisabled: __props.current === 1,
5448
+ class: normalizeClass([{ "hidden!": __props.current === 1 }, "w-8 h-8 sm:w-12 sm:h-12"]),
5399
5449
  onClick: _cache[1] || (_cache[1] = ($event) => handlePagination("prev"))
5400
5450
  }, null, 8, ["disabled", "ariaDisabled", "class"]))
5401
5451
  ]),
5402
5452
  createElementVNode("div", _hoisted_3$6, [
5403
- _ctx.loading && loadingIndicator.value === "input" ? (openBlock(), createBlock(_sfc_main$p, {
5453
+ __props.loading && loadingIndicator.value === "input" ? (openBlock(), createBlock(_sfc_main$p, {
5404
5454
  key: 0,
5405
5455
  size: "24px",
5406
5456
  color: "blue",
@@ -5410,16 +5460,16 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5410
5460
  createVNode(_sfc_main$i, {
5411
5461
  value: inputValue.value,
5412
5462
  type: "text",
5413
- size: _ctx.max.toString().length,
5414
- maxlength: _ctx.max.toString().length,
5463
+ size: __props.max.toString().length,
5464
+ maxlength: __props.max.toString().length,
5415
5465
  onInput: unref(handlePageChange),
5416
5466
  class: "mb-0! text-center"
5417
5467
  }, null, 8, ["value", "size", "maxlength", "onInput"]),
5418
- createElementVNode("div", _hoisted_4$5, "/ " + toDisplayString(_ctx.max), 1)
5468
+ createElementVNode("div", _hoisted_4$5, "/ " + toDisplayString(__props.max), 1)
5419
5469
  ], 64))
5420
5470
  ]),
5421
5471
  createElementVNode("div", _hoisted_5$5, [
5422
- _ctx.loading && loadingIndicator.value === "next" ? (openBlock(), createBlock(_sfc_main$p, {
5472
+ __props.loading && loadingIndicator.value === "next" ? (openBlock(), createBlock(_sfc_main$p, {
5423
5473
  key: 0,
5424
5474
  size: "24px",
5425
5475
  color: "blue"
@@ -5427,12 +5477,12 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5427
5477
  key: 1,
5428
5478
  icon: "arrowRight",
5429
5479
  size: 28,
5430
- disabled: _ctx.current === _ctx.max,
5431
- ariaDisabled: _ctx.current === _ctx.max,
5432
- class: normalizeClass([{ "hidden!": _ctx.current === _ctx.max }, "w-8 h-8 sm:w-12 sm:h-12"]),
5480
+ disabled: __props.current === __props.max,
5481
+ ariaDisabled: __props.current === __props.max,
5482
+ class: normalizeClass([{ "hidden!": __props.current === __props.max }, "w-8 h-8 sm:w-12 sm:h-12"]),
5433
5483
  onClick: _cache[2] || (_cache[2] = ($event) => handlePagination("next"))
5434
5484
  }, null, 8, ["disabled", "ariaDisabled", "class"])),
5435
- _ctx.loading && loadingIndicator.value === "end" ? (openBlock(), createBlock(_sfc_main$p, {
5485
+ __props.loading && loadingIndicator.value === "end" ? (openBlock(), createBlock(_sfc_main$p, {
5436
5486
  key: 2,
5437
5487
  size: "24px",
5438
5488
  color: "blue"
@@ -5440,13 +5490,13 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
5440
5490
  key: 3,
5441
5491
  icon: "last",
5442
5492
  size: 28,
5443
- disabled: _ctx.current === _ctx.max,
5444
- ariaDisabled: _ctx.current === _ctx.max,
5445
- class: normalizeClass([{ "hidden!": _ctx.current === _ctx.max }, "w-8 h-8 sm:w-12 sm:h-12"]),
5493
+ disabled: __props.current === __props.max,
5494
+ ariaDisabled: __props.current === __props.max,
5495
+ class: normalizeClass([{ "hidden!": __props.current === __props.max }, "w-8 h-8 sm:w-12 sm:h-12"]),
5446
5496
  onClick: _cache[3] || (_cache[3] = ($event) => handlePagination("end"))
5447
5497
  }, null, 8, ["disabled", "ariaDisabled", "class"]))
5448
5498
  ])
5449
- ], 8, _hoisted_1$b);
5499
+ ], 8, _hoisted_1$c);
5450
5500
  };
5451
5501
  }
5452
5502
  });
@@ -5489,7 +5539,7 @@ function useIsPid(value) {
5489
5539
  isPid
5490
5540
  };
5491
5541
  }
5492
- const _hoisted_1$a = { class: "relative block" };
5542
+ const _hoisted_1$b = { class: "relative block" };
5493
5543
  const _hoisted_2$8 = {
5494
5544
  key: 0,
5495
5545
  class: "relative"
@@ -5894,18 +5944,18 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5894
5944
  ref: componentRef,
5895
5945
  class: "fds-search-select block mb-6"
5896
5946
  }, [
5897
- createElementVNode("div", _hoisted_1$a, [
5947
+ createElementVNode("div", _hoisted_1$b, [
5898
5948
  !singleItemName.value.length ? (openBlock(), createElementBlock("div", _hoisted_2$8, [
5899
5949
  createElementVNode("div", _hoisted_3$5, [
5900
5950
  createVNode(_sfc_main$i, {
5901
- label: _ctx.label,
5902
- meta: _ctx.meta ?? void 0,
5903
- labelLeft: _ctx.labelLeft,
5951
+ label: __props.label,
5952
+ meta: __props.meta ?? void 0,
5953
+ labelLeft: __props.labelLeft,
5904
5954
  class: "relative mb-0! w-full!",
5905
5955
  valid: valid.value,
5906
- invalidMessage: _ctx.invalidMessage,
5907
- disabled: _ctx.disabled,
5908
- locale: _ctx.locale,
5956
+ invalidMessage: __props.invalidMessage,
5957
+ disabled: __props.disabled,
5958
+ locale: __props.locale,
5909
5959
  type: "search",
5910
5960
  value: searchTerm.value,
5911
5961
  id: inputId,
@@ -5915,7 +5965,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5915
5965
  onInput: handleInput,
5916
5966
  onClearInput: handleClear
5917
5967
  }, null, 8, ["label", "meta", "labelLeft", "valid", "invalidMessage", "disabled", "locale", "value", "clearButton", "mask"]),
5918
- !_ctx.disabled && !hasInputValue.value ? (openBlock(), createBlock(_sfc_main$w, {
5968
+ !__props.disabled && !hasInputValue.value ? (openBlock(), createBlock(_sfc_main$w, {
5919
5969
  key: 0,
5920
5970
  name: "search",
5921
5971
  size: 24,
@@ -5923,10 +5973,10 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5923
5973
  })) : createCommentVNode("", true)
5924
5974
  ])
5925
5975
  ])) : (openBlock(), createElementBlock("div", _hoisted_4$4, [
5926
- createElementVNode("div", _hoisted_5$4, toDisplayString(_ctx.singleItemLabel), 1),
5976
+ createElementVNode("div", _hoisted_5$4, toDisplayString(__props.singleItemLabel), 1),
5927
5977
  createElementVNode("div", null, toDisplayString(singleItemName.value), 1)
5928
5978
  ])),
5929
- dropdownVisible.value && !singleItemName.value.length && !_ctx.disabled ? (openBlock(), createElementBlock("div", {
5979
+ dropdownVisible.value && !singleItemName.value.length && !__props.disabled ? (openBlock(), createElementBlock("div", {
5930
5980
  key: 2,
5931
5981
  class: normalizeClass(listWrapperClasses.value),
5932
5982
  style: normalizeStyle(listWrapperStyle.value),
@@ -5934,13 +5984,13 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5934
5984
  "aria-expanded": "false",
5935
5985
  "aria-controls": "select-dropdown"
5936
5986
  }, [
5937
- _ctx.loading ? (openBlock(), createElementBlock("div", _hoisted_6$3, [
5987
+ __props.loading ? (openBlock(), createElementBlock("div", _hoisted_6$3, [
5938
5988
  createVNode(_sfc_main$p, {
5939
5989
  color: "blue",
5940
5990
  size: "48px"
5941
5991
  })
5942
5992
  ])) : displayedItems.value && displayedItems.value.length ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
5943
- searchTerm.value && searchTerm.value.length ? (openBlock(), createElementBlock("div", _hoisted_7$3, toDisplayString(displayedItems.value.length) + " " + toDisplayString(_ctx.searchContext.linkWord) + " " + toDisplayString(totalCount.value) + " " + toDisplayString(_ctx.searchContext.context), 1)) : !searchTerm.value.length ? (openBlock(), createElementBlock("div", _hoisted_8$2, toDisplayString(totalCount.value) + " " + toDisplayString(_ctx.searchContext.context), 1)) : createCommentVNode("", true),
5993
+ searchTerm.value && searchTerm.value.length ? (openBlock(), createElementBlock("div", _hoisted_7$3, toDisplayString(displayedItems.value.length) + " " + toDisplayString(__props.searchContext.linkWord) + " " + toDisplayString(totalCount.value) + " " + toDisplayString(__props.searchContext.context), 1)) : !searchTerm.value.length ? (openBlock(), createElementBlock("div", _hoisted_8$2, toDisplayString(totalCount.value) + " " + toDisplayString(__props.searchContext.context), 1)) : createCommentVNode("", true),
5944
5994
  createElementVNode("ul", {
5945
5995
  class: "block m-0 list-none p-0",
5946
5996
  role: "listbox",
@@ -5979,15 +6029,15 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5979
6029
  ], 42, _hoisted_9$2);
5980
6030
  }), 128))
5981
6031
  ], 32),
5982
- _ctx.page !== void 0 && totalPages.value !== null && totalPages.value > 1 ? (openBlock(), createBlock(_sfc_main$h, {
6032
+ __props.page !== void 0 && totalPages.value !== null && totalPages.value > 1 ? (openBlock(), createBlock(_sfc_main$h, {
5983
6033
  key: 2,
5984
- current: _ctx.page,
6034
+ current: __props.page,
5985
6035
  max: totalPages.value,
5986
6036
  onPaginate: handlePagination,
5987
6037
  class: "my-4! px-2"
5988
6038
  }, null, 8, ["current", "max"])) : createCommentVNode("", true)
5989
- ], 64)) : !_ctx.loading ? (openBlock(), createElementBlock("ul", _hoisted_12, [
5990
- createElementVNode("li", _hoisted_13, toDisplayString(_ctx.noResultPrompt), 1)
6039
+ ], 64)) : !__props.loading ? (openBlock(), createElementBlock("ul", _hoisted_12, [
6040
+ createElementVNode("li", _hoisted_13, toDisplayString(__props.noResultPrompt), 1)
5991
6041
  ])) : createCommentVNode("", true)
5992
6042
  ], 6)) : createCommentVNode("", true)
5993
6043
  ])
@@ -5995,11 +6045,13 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
5995
6045
  };
5996
6046
  }
5997
6047
  });
6048
+ const _hoisted_1$a = ["aria-live"];
5998
6049
  const _sfc_main$f = /* @__PURE__ */ defineComponent({
5999
6050
  __name: "FdsSticker",
6000
6051
  props: {
6001
6052
  variant: { default: "blue" },
6002
- bullet: { type: Boolean, default: false }
6053
+ bullet: { type: Boolean, default: false },
6054
+ ariaLive: { default: void 0 }
6003
6055
  },
6004
6056
  setup(__props) {
6005
6057
  const props = __props;
@@ -6026,14 +6078,15 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
6026
6078
  ]);
6027
6079
  return (_ctx, _cache) => {
6028
6080
  return openBlock(), createElementBlock("span", {
6029
- class: normalizeClass(stickerClasses.value)
6081
+ class: normalizeClass(stickerClasses.value),
6082
+ "aria-live": __props.ariaLive
6030
6083
  }, [
6031
- _ctx.bullet ? (openBlock(), createElementBlock("span", {
6084
+ __props.bullet ? (openBlock(), createElementBlock("span", {
6032
6085
  key: 0,
6033
6086
  class: normalizeClass(bulletDotClasses.value)
6034
6087
  }, null, 2)) : createCommentVNode("", true),
6035
6088
  renderSlot(_ctx.$slots, "default")
6036
- ], 2);
6089
+ ], 10, _hoisted_1$a);
6037
6090
  };
6038
6091
  }
6039
6092
  });
@@ -6548,26 +6601,26 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
6548
6601
  }, [
6549
6602
  createElementVNode("label", mergeProps({
6550
6603
  for: inputId.value,
6551
- class: [innerWrapperClasses.value, { "cursor-not-allowed": _ctx.disabled }]
6604
+ class: [innerWrapperClasses.value, { "cursor-not-allowed": __props.disabled }]
6552
6605
  }, _ctx.$attrs), [
6553
6606
  withDirectives(createElementVNode("input", {
6554
6607
  id: inputId.value,
6555
- name: _ctx.name,
6556
- value: _ctx.value,
6608
+ name: __props.name,
6609
+ value: __props.value,
6557
6610
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => internalChecked.value = $event),
6558
- disabled: _ctx.disabled,
6559
- required: _ctx.required,
6611
+ disabled: __props.disabled,
6612
+ required: __props.required,
6560
6613
  type: "checkbox",
6561
6614
  class: normalizeClass([checkboxClasses.value])
6562
6615
  }, null, 10, _hoisted_2$7), [
6563
6616
  [vModelCheckbox, internalChecked.value]
6564
6617
  ]),
6565
- unref(hasLabelSlot) || _ctx.label ? (openBlock(), createElementBlock("span", {
6618
+ unref(hasLabelSlot) || __props.label ? (openBlock(), createElementBlock("span", {
6566
6619
  key: 0,
6567
- class: normalizeClass(["relative inline-block leading-6 pl-1 select-none", { "cursor-not-allowed": _ctx.disabled }])
6620
+ class: normalizeClass(["relative inline-block leading-6 pl-1 select-none", { "cursor-not-allowed": __props.disabled }])
6568
6621
  }, [
6569
- unref(hasLabelSlot) ? renderSlot(_ctx.$slots, "default", { key: 0 }) : _ctx.label ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
6570
- createTextVNode(toDisplayString(_ctx.label), 1)
6622
+ unref(hasLabelSlot) ? renderSlot(_ctx.$slots, "default", { key: 0 }) : __props.label ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
6623
+ createTextVNode(toDisplayString(__props.label), 1)
6571
6624
  ], 64)) : createCommentVNode("", true)
6572
6625
  ], 2)) : createCommentVNode("", true)
6573
6626
  ], 16, _hoisted_1$9)
@@ -6578,6 +6631,9 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
6578
6631
  const _hoisted_1$8 = ["for"];
6579
6632
  const _hoisted_2$6 = ["id", "name", "value", "disabled", "required"];
6580
6633
  const _sfc_main$d = /* @__PURE__ */ defineComponent({
6634
+ ...{
6635
+ inheritAttrs: false
6636
+ },
6581
6637
  __name: "FdsRadio",
6582
6638
  props: /* @__PURE__ */ mergeModels({
6583
6639
  label: { default: void 0 },
@@ -6590,13 +6646,16 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
6590
6646
  modelValue: {},
6591
6647
  onKeydown: {},
6592
6648
  onBlur: {},
6593
- onChange: {}
6649
+ onChange: {},
6650
+ onInput: {},
6651
+ dataTestid: { default: void 0 }
6594
6652
  }, {
6595
6653
  "modelValue": { default: void 0, required: false },
6596
6654
  "modelModifiers": {}
6597
6655
  }),
6598
6656
  emits: /* @__PURE__ */ mergeModels(["update:modelValue", "change", "input"], ["update:modelValue"]),
6599
6657
  setup(__props, { emit: __emit }) {
6658
+ const attrs = useAttrs();
6600
6659
  const modelValue = useModel(__props, "modelValue");
6601
6660
  const props = __props;
6602
6661
  const emit = __emit;
@@ -6624,35 +6683,39 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
6624
6683
  "peer z-2 bg-white min-w-[20px] min-h-[20px] focus-visible:outline-none rounded-full accent-blue-500",
6625
6684
  props.disabled && "cursor-not-allowed"
6626
6685
  ]);
6686
+ const inputAttrs = computed(() => ({
6687
+ ...attrs,
6688
+ "data-testid": props.dataTestid ?? attrs["data-testid"]
6689
+ }));
6627
6690
  return (_ctx, _cache) => {
6628
6691
  return openBlock(), createElementBlock("div", {
6629
6692
  class: normalizeClass(wrapperClasses.value)
6630
6693
  }, [
6631
- createElementVNode("label", mergeProps({
6694
+ createElementVNode("label", {
6632
6695
  for: inputId.value,
6633
- class: [innerWrapperClasses.value, { "cursor-not-allowed": _ctx.disabled }]
6634
- }, _ctx.$attrs), [
6635
- withDirectives(createElementVNode("input", {
6696
+ class: normalizeClass([innerWrapperClasses.value, { "cursor-not-allowed": __props.disabled }])
6697
+ }, [
6698
+ withDirectives(createElementVNode("input", mergeProps(inputAttrs.value, {
6636
6699
  id: inputId.value,
6637
- name: _ctx.name,
6638
- value: _ctx.value,
6700
+ name: __props.name,
6701
+ value: __props.value,
6639
6702
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => radioModel.value = $event),
6640
- disabled: _ctx.disabled,
6641
- required: _ctx.required,
6703
+ disabled: __props.disabled,
6704
+ required: __props.required,
6642
6705
  type: "radio",
6643
- class: normalizeClass([inputClasses.value, "m-[2px]"])
6644
- }, null, 10, _hoisted_2$6), [
6706
+ class: [inputClasses.value, "m-[2px]"]
6707
+ }), null, 16, _hoisted_2$6), [
6645
6708
  [vModelRadio, radioModel.value]
6646
6709
  ]),
6647
- unref(hasLabelSlot) || _ctx.label ? (openBlock(), createElementBlock("span", {
6710
+ unref(hasLabelSlot) || __props.label ? (openBlock(), createElementBlock("span", {
6648
6711
  key: 0,
6649
- class: normalizeClass(["relative inline-block leading-6 pl-1 select-none", { "cursor-not-allowed": _ctx.disabled }])
6712
+ class: normalizeClass(["relative inline-block leading-6 pl-1 select-none", { "cursor-not-allowed": __props.disabled }])
6650
6713
  }, [
6651
- unref(hasLabelSlot) ? renderSlot(_ctx.$slots, "default", { key: 0 }) : _ctx.label ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
6652
- createTextVNode(toDisplayString(_ctx.label), 1)
6714
+ unref(hasLabelSlot) ? renderSlot(_ctx.$slots, "default", { key: 0 }) : __props.label ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
6715
+ createTextVNode(toDisplayString(__props.label), 1)
6653
6716
  ], 64)) : createCommentVNode("", true)
6654
6717
  ], 2)) : createCommentVNode("", true)
6655
- ], 16, _hoisted_1$8)
6718
+ ], 10, _hoisted_1$8)
6656
6719
  ], 2);
6657
6720
  };
6658
6721
  }
@@ -6883,21 +6946,21 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
6883
6946
  }, null, 8, ["ariaLabel", "icon"])) : createCommentVNode("", true),
6884
6947
  !hasChildrenNodes.value ? (openBlock(), createElementBlock("div", {
6885
6948
  key: 1,
6886
- style: normalizeStyle({ minWidth: `${_ctx.indentation}px` })
6949
+ style: normalizeStyle({ minWidth: `${__props.indentation}px` })
6887
6950
  }, null, 4)) : createCommentVNode("", true),
6888
6951
  createElementVNode("div", _hoisted_2$5, [
6889
6952
  createVNode(_sfc_main$e, {
6890
6953
  id: `checkbox-${props.nodeId}`,
6891
6954
  checked: unref(treeState)?.isNodeSelected(props.nodeId),
6892
- indeterminate: _ctx.showIndeterminate && (unref(treeState)?.isNodeIndeterminateById(props.nodeId) ?? false),
6955
+ indeterminate: __props.showIndeterminate && (unref(treeState)?.isNodeIndeterminateById(props.nodeId) ?? false),
6893
6956
  onChange: _cache[1] || (_cache[1] = ($event) => unref(treeState)?.toggleSelectNode(props.nodeId, props.title, props.data))
6894
6957
  }, {
6895
6958
  default: withCtx(() => [
6896
6959
  createElementVNode("span", null, [
6897
- shouldHighlightSearch.value && _ctx.title ? (openBlock(), createElementBlock("span", {
6960
+ shouldHighlightSearch.value && __props.title ? (openBlock(), createElementBlock("span", {
6898
6961
  key: 0,
6899
- innerHTML: unref(treeState)?.highlightText(_ctx.title, unref(treeState)?.searchTerm?.value)
6900
- }, null, 8, _hoisted_3$4)) : (openBlock(), createElementBlock("span", _hoisted_4$3, toDisplayString(_ctx.title), 1))
6962
+ innerHTML: unref(treeState)?.highlightText(__props.title, unref(treeState)?.searchTerm?.value)
6963
+ }, null, 8, _hoisted_3$4)) : (openBlock(), createElementBlock("span", _hoisted_4$3, toDisplayString(__props.title), 1))
6901
6964
  ]),
6902
6965
  childCount.value !== null ? (openBlock(), createElementBlock("span", _hoisted_5$3, " (+" + toDisplayString(childCount.value) + ")", 1)) : createCommentVNode("", true)
6903
6966
  ]),
@@ -6911,7 +6974,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
6911
6974
  icon: "more",
6912
6975
  size: 24,
6913
6976
  onClick: togglePopover,
6914
- ariaLabel: `Fler val för ${_ctx.title}`,
6977
+ ariaLabel: `Fler val för ${__props.title}`,
6915
6978
  class: "items-center"
6916
6979
  }, null, 8, ["ariaLabel"]),
6917
6980
  createVNode(Transition, {
@@ -6995,17 +7058,17 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
6995
7058
  indentation: props.indentation,
6996
7059
  nodeExpandIcon: props.nodeExpandIcon,
6997
7060
  nodeCollapseIcon: props.nodeCollapseIcon,
6998
- showNodeDescription: _ctx.showNodeDescription,
6999
- showChildrenCount: _ctx.showChildrenCount,
7000
- expandChildrenOnSelect: _ctx.expandChildrenOnSelect,
7001
- showIndeterminate: _ctx.showIndeterminate,
7002
- showIndeterminateOnlyOnChildrenSelection: _ctx.showIndeterminateOnlyOnChildrenSelection,
7003
- expandChildrenOnParentCheck: _ctx.expandChildrenOnParentCheck,
7004
- expandAllChildrenOnParentCheck: _ctx.expandAllChildrenOnParentCheck,
7005
- searchEnabled: _ctx.searchEnabled,
7006
- searchExpandNodes: _ctx.searchExpandNodes,
7007
- searchMatchParams: _ctx.searchMatchParams,
7008
- searchHighlighting: _ctx.searchHighlighting,
7061
+ showNodeDescription: __props.showNodeDescription,
7062
+ showChildrenCount: __props.showChildrenCount,
7063
+ expandChildrenOnSelect: __props.expandChildrenOnSelect,
7064
+ showIndeterminate: __props.showIndeterminate,
7065
+ showIndeterminateOnlyOnChildrenSelection: __props.showIndeterminateOnlyOnChildrenSelection,
7066
+ expandChildrenOnParentCheck: __props.expandChildrenOnParentCheck,
7067
+ expandAllChildrenOnParentCheck: __props.expandAllChildrenOnParentCheck,
7068
+ searchEnabled: __props.searchEnabled,
7069
+ searchExpandNodes: __props.searchExpandNodes,
7070
+ searchMatchParams: __props.searchMatchParams,
7071
+ searchHighlighting: __props.searchHighlighting,
7009
7072
  titleTemplate: props.titleTemplate,
7010
7073
  popoverLabels: props.popoverLabels
7011
7074
  }, null, 8, ["nodes", "title", "nodeId", "data", "depth", "indentation", "nodeExpandIcon", "nodeCollapseIcon", "showNodeDescription", "showChildrenCount", "expandChildrenOnSelect", "showIndeterminate", "showIndeterminateOnlyOnChildrenSelection", "expandChildrenOnParentCheck", "expandAllChildrenOnParentCheck", "searchEnabled", "searchExpandNodes", "searchMatchParams", "searchHighlighting", "titleTemplate", "popoverLabels"]);
@@ -7031,11 +7094,16 @@ function useElementFinalSize(elementRef, onFinalSize, delay = 100) {
7031
7094
  });
7032
7095
  }
7033
7096
  const _sfc_main$b = /* @__PURE__ */ defineComponent({
7097
+ ...{
7098
+ inheritAttrs: false
7099
+ },
7034
7100
  __name: "FdsText",
7035
7101
  props: {
7036
- type: { default: "default" }
7102
+ type: { default: "default" },
7103
+ dataTestid: { default: void 0 }
7037
7104
  },
7038
7105
  setup(__props) {
7106
+ const attrs = useAttrs();
7039
7107
  const props = __props;
7040
7108
  const textClasses = computed(() => {
7041
7109
  const baseClasses = "inline-block";
@@ -7047,12 +7115,14 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
7047
7115
  }
7048
7116
  return baseClasses;
7049
7117
  });
7118
+ const spanAttrs = computed(() => ({
7119
+ ...attrs,
7120
+ "data-testid": props.dataTestid
7121
+ }));
7050
7122
  return (_ctx, _cache) => {
7051
- return openBlock(), createElementBlock("span", {
7052
- class: normalizeClass(textClasses.value)
7053
- }, [
7123
+ return openBlock(), createElementBlock("span", mergeProps(spanAttrs.value, { class: textClasses.value }), [
7054
7124
  renderSlot(_ctx.$slots, "default")
7055
- ], 2);
7125
+ ], 16);
7056
7126
  };
7057
7127
  }
7058
7128
  });
@@ -7277,12 +7347,12 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
7277
7347
  ref: contentRef,
7278
7348
  class: normalizeClass(["content", { open: isOpen.value }]),
7279
7349
  style: normalizeStyle({ maxWidth: `${containerWidth.value}px` })
7280
- }, toDisplayString(_ctx.content), 7)),
7350
+ }, toDisplayString(__props.content), 7)),
7281
7351
  shouldShowButton.value ? (openBlock(), createBlock(_sfc_main$o, {
7282
7352
  key: 2,
7283
7353
  icon: isOpen.value ? "arrowUp" : "arrowDown",
7284
7354
  iconPos: "right",
7285
- text: isOpen.value ? _ctx.btnCollapse : _ctx.btnExpand,
7355
+ text: isOpen.value ? __props.btnCollapse : __props.btnExpand,
7286
7356
  onClick: toggleComponent
7287
7357
  }, null, 8, ["icon", "text"])) : createCommentVNode("", true)
7288
7358
  ]);
@@ -7361,26 +7431,26 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
7361
7431
  }
7362
7432
  return (_ctx, _cache) => {
7363
7433
  return openBlock(), createElementBlock("div", _hoisted_1$4, [
7364
- _ctx.label ? (openBlock(), createElementBlock("label", {
7434
+ __props.label ? (openBlock(), createElementBlock("label", {
7365
7435
  key: 0,
7366
7436
  for: selectId.value,
7367
- class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
7368
- }, toDisplayString(_ctx.label), 11, _hoisted_2$3)) : createCommentVNode("", true),
7369
- _ctx.meta ? (openBlock(), createElementBlock("div", _hoisted_3$2, toDisplayString(_ctx.meta), 1)) : createCommentVNode("", true),
7437
+ class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": __props.meta, "mb-1": !__props.meta }])
7438
+ }, toDisplayString(__props.label), 11, _hoisted_2$3)) : createCommentVNode("", true),
7439
+ __props.meta ? (openBlock(), createElementBlock("div", _hoisted_3$2, toDisplayString(__props.meta), 1)) : createCommentVNode("", true),
7370
7440
  createElementVNode("div", _hoisted_4$2, [
7371
7441
  withDirectives(createElementVNode("select", mergeProps({
7372
7442
  id: selectId.value,
7373
- name: _ctx.name || void 0,
7374
- disabled: _ctx.disabled,
7443
+ name: __props.name || void 0,
7444
+ disabled: __props.disabled,
7375
7445
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => internalValue.value = $event),
7376
- "aria-invalid": _ctx.valid === "false" ? "true" : void 0,
7446
+ "aria-invalid": __props.valid === "false" ? "true" : void 0,
7377
7447
  class: selectClasses.value
7378
7448
  }, _ctx.$attrs, {
7379
7449
  onChange: handleChange,
7380
7450
  onInput: _cache[1] || (_cache[1] = (e) => emit("input", e))
7381
7451
  }), [
7382
- _ctx.placeholder && !hasDefaultSlot.value ? (openBlock(), createElementBlock("option", _hoisted_6$1, toDisplayString(_ctx.placeholder), 1)) : createCommentVNode("", true),
7383
- !hasDefaultSlot.value && _ctx.options ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(_ctx.options, (option) => {
7452
+ __props.placeholder && !hasDefaultSlot.value ? (openBlock(), createElementBlock("option", _hoisted_6$1, toDisplayString(__props.placeholder), 1)) : createCommentVNode("", true),
7453
+ !hasDefaultSlot.value && __props.options ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(__props.options, (option) => {
7384
7454
  return openBlock(), createElementBlock("option", {
7385
7455
  key: option.value,
7386
7456
  value: option.value,
@@ -7395,14 +7465,14 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
7395
7465
  name: "arrowDown",
7396
7466
  size: 24,
7397
7467
  class: normalizeClass({
7398
- "fill-gray-500": _ctx.disabled,
7399
- "fill-red-500": isInvalid.value && !_ctx.disabled,
7400
- "fill-blue-500": !_ctx.disabled && !isInvalid.value
7468
+ "fill-gray-500": __props.disabled,
7469
+ "fill-red-500": isInvalid.value && !__props.disabled,
7470
+ "fill-blue-500": !__props.disabled && !isInvalid.value
7401
7471
  })
7402
7472
  }, null, 8, ["class"])
7403
7473
  ])
7404
7474
  ]),
7405
- showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_9, toDisplayString(_ctx.invalidMessage), 1)) : createCommentVNode("", true)
7475
+ showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_9, toDisplayString(__props.invalidMessage), 1)) : createCommentVNode("", true)
7406
7476
  ]);
7407
7477
  };
7408
7478
  }
@@ -7469,20 +7539,20 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
7469
7539
  return (_ctx, _cache) => {
7470
7540
  return openBlock(), createElementBlock(Fragment, null, [
7471
7541
  createElementVNode("div", _hoisted_1$3, [
7472
- _ctx.label ? (openBlock(), createElementBlock("label", {
7542
+ __props.label ? (openBlock(), createElementBlock("label", {
7473
7543
  key: 0,
7474
7544
  for: textareaId.value,
7475
- class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
7476
- }, toDisplayString(_ctx.label), 11, _hoisted_2$2)) : createCommentVNode("", true),
7477
- _ctx.meta ? (openBlock(), createElementBlock("div", _hoisted_3$1, toDisplayString(_ctx.meta), 1)) : createCommentVNode("", true),
7545
+ class: normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": __props.meta, "mb-1": !__props.meta }])
7546
+ }, toDisplayString(__props.label), 11, _hoisted_2$2)) : createCommentVNode("", true),
7547
+ __props.meta ? (openBlock(), createElementBlock("div", _hoisted_3$1, toDisplayString(__props.meta), 1)) : createCommentVNode("", true),
7478
7548
  createElementVNode("div", _hoisted_4$1, [
7479
7549
  withDirectives(createElementVNode("textarea", mergeProps({
7480
7550
  id: textareaId.value,
7481
- name: _ctx.name || void 0,
7482
- disabled: _ctx.disabled,
7483
- rows: _ctx.rows,
7551
+ name: __props.name || void 0,
7552
+ disabled: __props.disabled,
7553
+ rows: __props.rows,
7484
7554
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => internalValue.value = $event),
7485
- "aria-invalid": _ctx.valid === "false" ? "true" : void 0,
7555
+ "aria-invalid": __props.valid === "false" ? "true" : void 0,
7486
7556
  class: inputClasses.value
7487
7557
  }, _ctx.$attrs, {
7488
7558
  onInput: _cache[1] || (_cache[1] = (e) => emit("input", e))
@@ -7503,7 +7573,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
7503
7573
  })) : createCommentVNode("", true)
7504
7574
  ], 2)
7505
7575
  ]),
7506
- showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_6, toDisplayString(_ctx.invalidMessage), 1)) : createCommentVNode("", true)
7576
+ showInvalidMessage.value ? (openBlock(), createElementBlock("div", _hoisted_6, toDisplayString(__props.invalidMessage), 1)) : createCommentVNode("", true)
7507
7577
  ]),
7508
7578
  isValid.value ? (openBlock(), createElementBlock("div", _hoisted_7, "OK")) : createCommentVNode("", true)
7509
7579
  ], 64);
@@ -7542,9 +7612,10 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
7542
7612
  props: {
7543
7613
  heading: { default: void 0 },
7544
7614
  align: { default: "left" },
7545
- icon: { default: void 0 }
7615
+ icon: { default: void 0 },
7616
+ onClick: {}
7546
7617
  },
7547
- emits: ["sort"],
7618
+ emits: ["sort", "click"],
7548
7619
  setup(__props) {
7549
7620
  const props = __props;
7550
7621
  const hasSlot = useHasSlot();
@@ -7564,7 +7635,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
7564
7635
  }, [
7565
7636
  unref(hasSlot) ? (openBlock(), createElementBlock("span", _hoisted_2$1, [
7566
7637
  renderSlot(_ctx.$slots, "default")
7567
- ])) : (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(_ctx.heading), 1)),
7638
+ ])) : (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.heading), 1)),
7568
7639
  createVNode(_sfc_main$w, {
7569
7640
  name: iconName.value,
7570
7641
  size: "24px",
@@ -7576,7 +7647,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
7576
7647
  }, [
7577
7648
  unref(hasSlot) ? (openBlock(), createElementBlock("span", _hoisted_4, [
7578
7649
  renderSlot(_ctx.$slots, "default")
7579
- ])) : (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(_ctx.heading), 1))
7650
+ ])) : (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(__props.heading), 1))
7580
7651
  ], 2))
7581
7652
  ]);
7582
7653
  };
@@ -7621,10 +7692,26 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
7621
7692
  active: { type: Boolean, default: void 0 },
7622
7693
  exact: { type: Boolean, default: false },
7623
7694
  disabled: { type: Boolean, default: false },
7624
- label: { default: void 0 }
7695
+ label: { default: void 0 },
7696
+ onClick: {},
7697
+ dataTestid: { default: void 0 }
7625
7698
  },
7626
- setup(__props) {
7699
+ emits: ["click"],
7700
+ setup(__props, { emit: __emit }) {
7627
7701
  const attrs = useAttrs();
7702
+ const emit = __emit;
7703
+ const onClick = (ev) => {
7704
+ if (props.disabled) {
7705
+ ev.preventDefault();
7706
+ return;
7707
+ }
7708
+ emit("click", ev);
7709
+ };
7710
+ const handleClick = (ev) => {
7711
+ if (componentType.value === "button" && !props.disabled) {
7712
+ onClick(ev);
7713
+ }
7714
+ };
7628
7715
  const instance = getCurrentInstance();
7629
7716
  const route = computed(() => {
7630
7717
  try {
@@ -7668,7 +7755,8 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
7668
7755
  });
7669
7756
  const componentAttrs = computed(() => ({
7670
7757
  ...linkAttrs.value,
7671
- ...attrs
7758
+ ...attrs,
7759
+ "data-testid": props.dataTestid
7672
7760
  }));
7673
7761
  const baseClasses = computed(() => {
7674
7762
  const blockClasses = block ? "flex flex-1" : "";
@@ -7699,14 +7787,14 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
7699
7787
  return (_ctx, _cache) => {
7700
7788
  return openBlock(), createBlock(resolveDynamicComponent(componentType.value), mergeProps(componentAttrs.value, {
7701
7789
  class: buttonClasses.value,
7702
- disabled: componentType.value === "button" ? _ctx.disabled : void 0,
7703
- "aria-disabled": _ctx.disabled,
7704
- "aria-current": isActive.value ? "page" : void 0
7790
+ disabled: componentType.value === "button" ? __props.disabled : void 0,
7791
+ "aria-disabled": __props.disabled,
7792
+ "aria-current": isActive.value ? "page" : void 0,
7793
+ onClick: handleClick
7705
7794
  }), {
7706
7795
  default: withCtx(() => [
7707
- renderSlot(_ctx.$slots, "default", {}, () => [
7708
- createTextVNode(toDisplayString(_ctx.label), 1)
7709
- ])
7796
+ createTextVNode(toDisplayString(__props.label) + " ", 1),
7797
+ renderSlot(_ctx.$slots, "default")
7710
7798
  ]),
7711
7799
  _: 3
7712
7800
  }, 16, ["class", "disabled", "aria-disabled", "aria-current"]);
@@ -7752,11 +7840,11 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
7752
7840
  return responsiveMap[element];
7753
7841
  }
7754
7842
  return (_ctx, _cache) => {
7755
- return openBlock(), createBlock(resolveDynamicComponent(_ctx.type), {
7843
+ return openBlock(), createBlock(resolveDynamicComponent(__props.type), {
7756
7844
  class: normalizeClass(headingClasses.value)
7757
7845
  }, {
7758
7846
  default: withCtx(() => [
7759
- createTextVNode(toDisplayString(_ctx.text), 1)
7847
+ createTextVNode(toDisplayString(__props.text), 1)
7760
7848
  ]),
7761
7849
  _: 1
7762
7850
  }, 8, ["class"]);
@@ -7806,7 +7894,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
7806
7894
  };
7807
7895
  return (_ctx, _cache) => {
7808
7896
  return openBlock(), createElementBlock("div", _hoisted_1$1, [
7809
- _ctx.loading ? (openBlock(), createBlock(_sfc_main$p, {
7897
+ __props.loading ? (openBlock(), createBlock(_sfc_main$p, {
7810
7898
  key: 0,
7811
7899
  size: "24px",
7812
7900
  color: "blue",