@auronui/vue 1.0.11 → 1.0.12

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 (56) hide show
  1. package/dist/cjs/index.cjs +514 -410
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/components/autocomplete/Autocomplete.context.js.map +1 -1
  4. package/dist/components/autocomplete/Autocomplete.js.map +1 -1
  5. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +119 -14
  6. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  7. package/dist/components/autocomplete/AutocompleteCreateItem.js +7 -0
  8. package/dist/components/autocomplete/AutocompleteCreateItem.js.map +1 -0
  9. package/dist/components/autocomplete/AutocompleteCreateItem.vue_vue_type_script_setup_true_lang.js +57 -0
  10. package/dist/components/autocomplete/AutocompleteCreateItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  11. package/dist/components/autocomplete/AutocompleteInput.js.map +1 -1
  12. package/dist/components/autocomplete/AutocompleteInput.vue_vue_type_script_setup_true_lang.js +40 -9
  13. package/dist/components/autocomplete/AutocompleteInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  14. package/dist/components/autocomplete/AutocompleteItem.js.map +1 -1
  15. package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js +33 -5
  16. package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  17. package/dist/components/autocomplete/AutocompleteOverflowChips.js +7 -0
  18. package/dist/components/autocomplete/AutocompleteOverflowChips.js.map +1 -0
  19. package/dist/components/autocomplete/AutocompleteOverflowChips.vue_vue_type_script_setup_true_lang.js +88 -0
  20. package/dist/components/autocomplete/AutocompleteOverflowChips.vue_vue_type_script_setup_true_lang.js.map +1 -0
  21. package/dist/components/select/Select.context.js.map +1 -1
  22. package/dist/components/select/Select.js.map +1 -1
  23. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js +12 -1
  24. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  25. package/dist/components/select/SelectOverflowChips.js +7 -0
  26. package/dist/components/select/SelectOverflowChips.js.map +1 -0
  27. package/dist/components/select/SelectOverflowChips.vue_vue_type_script_setup_true_lang.js +85 -0
  28. package/dist/components/select/SelectOverflowChips.vue_vue_type_script_setup_true_lang.js.map +1 -0
  29. package/dist/components/select/SelectValue.js.map +1 -1
  30. package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js +6 -1
  31. package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js.map +1 -1
  32. package/dist/index.d.ts +320 -419
  33. package/dist/index.js +2 -7
  34. package/package.json +4 -4
  35. package/dist/components/tag/Tag.js +0 -7
  36. package/dist/components/tag/Tag.js.map +0 -1
  37. package/dist/components/tag/Tag.vue_vue_type_script_setup_true_lang.js +0 -69
  38. package/dist/components/tag/Tag.vue_vue_type_script_setup_true_lang.js.map +0 -1
  39. package/dist/components/tag/TagDelete.js +0 -7
  40. package/dist/components/tag/TagDelete.js.map +0 -1
  41. package/dist/components/tag/TagDelete.vue_vue_type_script_setup_true_lang.js +0 -49
  42. package/dist/components/tag/TagDelete.vue_vue_type_script_setup_true_lang.js.map +0 -1
  43. package/dist/components/tag/TagText.js +0 -7
  44. package/dist/components/tag/TagText.js.map +0 -1
  45. package/dist/components/tag/TagText.vue_vue_type_script_setup_true_lang.js +0 -18
  46. package/dist/components/tag/TagText.vue_vue_type_script_setup_true_lang.js.map +0 -1
  47. package/dist/components/tag-group/TagGroup.context.js +0 -7
  48. package/dist/components/tag-group/TagGroup.context.js.map +0 -1
  49. package/dist/components/tag-group/TagGroup.js +0 -7
  50. package/dist/components/tag-group/TagGroup.js.map +0 -1
  51. package/dist/components/tag-group/TagGroup.vue_vue_type_script_setup_true_lang.js +0 -142
  52. package/dist/components/tag-group/TagGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
  53. package/dist/components/tag-group/TagGroupInput.js +0 -7
  54. package/dist/components/tag-group/TagGroupInput.js.map +0 -1
  55. package/dist/components/tag-group/TagGroupInput.vue_vue_type_script_setup_true_lang.js +0 -37
  56. package/dist/components/tag-group/TagGroupInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
@@ -373,7 +373,7 @@ function createContext(contextName) {
373
373
  }
374
374
  //#endregion
375
375
  //#region src/components/spinner/Spinner.vue?vue&type=script&setup=true&lang.ts
376
- var _hoisted_1$59 = ["aria-label"];
376
+ var _hoisted_1$61 = ["aria-label"];
377
377
  var _hoisted_2$32 = {
378
378
  "data-slot": "spinner-icon",
379
379
  viewBox: "0 0 24 24",
@@ -381,9 +381,9 @@ var _hoisted_2$32 = {
381
381
  width: "100%",
382
382
  height: "100%"
383
383
  };
384
- var _hoisted_3$21 = { fill: "none" };
385
- var _hoisted_4$14 = ["fill"];
386
- var _hoisted_5$10 = ["fill"];
384
+ var _hoisted_3$20 = { fill: "none" };
385
+ var _hoisted_4$13 = ["fill"];
386
+ var _hoisted_5$9 = ["fill"];
387
387
  //#endregion
388
388
  //#region src/components/spinner/Spinner.vue
389
389
  var Spinner_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -435,25 +435,25 @@ var Spinner_default = /* @__PURE__ */ (0, vue.defineComponent)({
435
435
  offset: "100%",
436
436
  "stop-color": "currentColor",
437
437
  "stop-opacity": "0.55"
438
- }, null, -1)])])]), (0, vue.createElementVNode)("g", _hoisted_3$21, [
438
+ }, null, -1)])])]), (0, vue.createElementVNode)("g", _hoisted_3$20, [
439
439
  _cache[2] || (_cache[2] = (0, vue.createElementVNode)("path", { d: "m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z" }, null, -1)),
440
440
  (0, vue.createElementVNode)("path", {
441
441
  d: "M8.749.021a1.5 1.5 0 0 1 .497 2.958A7.5 7.5 0 0 0 3 10.375a7.5 7.5 0 0 0 7.5 7.5v3c-5.799 0-10.5-4.7-10.5-10.5C0 5.23 3.726.865 8.749.021",
442
442
  fill: `url(#${gradId1})`,
443
443
  transform: "translate(1.5 1.625)"
444
- }, null, 8, _hoisted_4$14),
444
+ }, null, 8, _hoisted_4$13),
445
445
  (0, vue.createElementVNode)("path", {
446
446
  d: "M15.392 2.673a1.5 1.5 0 0 1 2.119-.115A10.48 10.48 0 0 1 21 10.375c0 5.8-4.701 10.5-10.5 10.5v-3a7.5 7.5 0 0 0 5.007-13.084a1.5 1.5 0 0 1-.115-2.118",
447
447
  fill: `url(#${gradId2})`,
448
448
  transform: "translate(1.5 1.625)"
449
- }, null, 8, _hoisted_5$10)
450
- ])]))], 10, _hoisted_1$59);
449
+ }, null, 8, _hoisted_5$9)
450
+ ])]))], 10, _hoisted_1$61);
451
451
  };
452
452
  }
453
453
  });
454
454
  //#endregion
455
455
  //#region src/components/separator/Separator.vue?vue&type=script&setup=true&lang.ts
456
- var _hoisted_1$58 = { class: "separator__content" };
456
+ var _hoisted_1$60 = { class: "separator__content" };
457
457
  //#endregion
458
458
  //#region src/components/separator/Separator.vue
459
459
  var Separator_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -487,7 +487,7 @@ var Separator_default = /* @__PURE__ */ (0, vue.defineComponent)({
487
487
  "aria-orientation": "horizontal"
488
488
  }, [
489
489
  _cache[0] || (_cache[0] = (0, vue.createElementVNode)("div", { class: "separator__line" }, null, -1)),
490
- (0, vue.createElementVNode)("div", _hoisted_1$58, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
490
+ (0, vue.createElementVNode)("div", _hoisted_1$60, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
491
491
  _cache[1] || (_cache[1] = (0, vue.createElementVNode)("div", { class: "separator__line" }, null, -1))
492
492
  ], 2));
493
493
  };
@@ -539,7 +539,7 @@ var Text_default = /* @__PURE__ */ (0, vue.defineComponent)({
539
539
  });
540
540
  //#endregion
541
541
  //#region src/components/label/Label.vue?vue&type=script&setup=true&lang.ts
542
- var _hoisted_1$57 = ["for"];
542
+ var _hoisted_1$59 = ["for"];
543
543
  //#endregion
544
544
  //#region src/components/label/Label.vue
545
545
  var Label_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -571,13 +571,13 @@ var Label_default = /* @__PURE__ */ (0, vue.defineComponent)({
571
571
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("label", {
572
572
  class: (0, vue.normalizeClass)(classes.value),
573
573
  for: props.for
574
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$57);
574
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$59);
575
575
  };
576
576
  }
577
577
  });
578
578
  //#endregion
579
579
  //#region src/components/description/Description.vue?vue&type=script&setup=true&lang.ts
580
- var _hoisted_1$56 = ["id"];
580
+ var _hoisted_1$58 = ["id"];
581
581
  //#endregion
582
582
  //#region src/components/description/Description.vue
583
583
  var Description_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -593,7 +593,7 @@ var Description_default = /* @__PURE__ */ (0, vue.defineComponent)({
593
593
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("p", {
594
594
  id: props.id,
595
595
  class: (0, vue.normalizeClass)(classes.value)
596
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$56);
596
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$58);
597
597
  };
598
598
  }
599
599
  });
@@ -661,7 +661,7 @@ var Badge_default = /* @__PURE__ */ (0, vue.defineComponent)({
661
661
  });
662
662
  //#endregion
663
663
  //#region src/components/chip/Chip.vue?vue&type=script&setup=true&lang.ts
664
- var _hoisted_1$55 = ["aria-label"];
664
+ var _hoisted_1$57 = ["aria-label"];
665
665
  //#endregion
666
666
  //#region src/components/chip/Chip.vue
667
667
  var Chip_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -734,7 +734,7 @@ var Chip_default = /* @__PURE__ */ (0, vue.defineComponent)({
734
734
  y1: "6",
735
735
  x2: "18",
736
736
  y2: "18"
737
- })], -1)])], 10, _hoisted_1$55)) : (0, vue.createCommentVNode)("", true)
737
+ })], -1)])], 10, _hoisted_1$57)) : (0, vue.createCommentVNode)("", true)
738
738
  ], 2);
739
739
  };
740
740
  }
@@ -767,7 +767,7 @@ var Surface_default = /* @__PURE__ */ (0, vue.defineComponent)({
767
767
  var { useProvide: useCardProvide, useInject: useCardInject, key: cardContextKey } = createContext("Card");
768
768
  //#endregion
769
769
  //#region src/components/card/Card.vue?vue&type=script&setup=true&lang.ts
770
- var _hoisted_1$54 = [
770
+ var _hoisted_1$56 = [
771
771
  "role",
772
772
  "tabindex",
773
773
  "aria-disabled",
@@ -843,7 +843,7 @@ var Card_default = /* @__PURE__ */ (0, vue.defineComponent)({
843
843
  "data-disabled": __props.isDisabled || void 0,
844
844
  onClick,
845
845
  onKeydown
846
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 42, _hoisted_1$54);
846
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 42, _hoisted_1$56);
847
847
  };
848
848
  }
849
849
  });
@@ -1068,7 +1068,7 @@ var Button_default = /* @__PURE__ */ (0, vue.defineComponent)({
1068
1068
  });
1069
1069
  //#endregion
1070
1070
  //#region src/components/button/ButtonGroup.vue?vue&type=script&setup=true&lang.ts
1071
- var _hoisted_1$53 = ["data-orientation"];
1071
+ var _hoisted_1$55 = ["data-orientation"];
1072
1072
  //#endregion
1073
1073
  //#region src/components/button/ButtonGroup.vue
1074
1074
  var ButtonGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -1133,7 +1133,7 @@ var ButtonGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
1133
1133
  class: (0, vue.normalizeClass)((0, vue.unref)(composeClassName)(slotFns.value.base(), props.class)),
1134
1134
  "data-orientation": props.orientation,
1135
1135
  role: "group"
1136
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$53);
1136
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$55);
1137
1137
  };
1138
1138
  }
1139
1139
  });
@@ -1205,7 +1205,7 @@ var CloseButton_default = /* @__PURE__ */ (0, vue.defineComponent)({
1205
1205
  var { useProvide: useToggleButtonGroupProvide, useInject: useToggleButtonGroupInject, key: toggleButtonGroupContextKey } = createContext("ToggleButtonGroup");
1206
1206
  //#endregion
1207
1207
  //#region src/components/button/ToggleButton.vue?vue&type=script&setup=true&lang.ts
1208
- var _hoisted_1$52 = ["disabled", "data-orientation"];
1208
+ var _hoisted_1$54 = ["disabled", "data-orientation"];
1209
1209
  //#endregion
1210
1210
  //#region src/components/button/ToggleButton.vue
1211
1211
  var ToggleButton_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -1276,7 +1276,7 @@ var ToggleButton_default = /* @__PURE__ */ (0, vue.defineComponent)({
1276
1276
  disabled: isDisabled.value || void 0,
1277
1277
  "data-orientation": (0, vue.unref)(groupCtx).orientation.value,
1278
1278
  type: "button"
1279
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$52)]),
1279
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$54)]),
1280
1280
  _: 3
1281
1281
  }, 8, [
1282
1282
  "disabled",
@@ -1288,7 +1288,7 @@ var ToggleButton_default = /* @__PURE__ */ (0, vue.defineComponent)({
1288
1288
  });
1289
1289
  //#endregion
1290
1290
  //#region src/components/button/ToggleButtonGroup.vue?vue&type=script&setup=true&lang.ts
1291
- var _hoisted_1$51 = ["data-orientation"];
1291
+ var _hoisted_1$53 = ["data-orientation"];
1292
1292
  //#endregion
1293
1293
  //#region src/components/button/ToggleButtonGroup.vue
1294
1294
  var ToggleButtonGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -1355,7 +1355,7 @@ var ToggleButtonGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
1355
1355
  class: (0, vue.normalizeClass)((0, vue.unref)(composeClassName)(slotFns.value.base(), props.class)),
1356
1356
  "data-orientation": props.orientation,
1357
1357
  role: "group"
1358
- }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$51);
1358
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$53);
1359
1359
  };
1360
1360
  }
1361
1361
  });
@@ -1844,7 +1844,7 @@ var FormField_default = /* @__PURE__ */ (0, vue.defineComponent)({
1844
1844
  });
1845
1845
  //#endregion
1846
1846
  //#region src/components/input/Input.vue?vue&type=script&setup=true&lang.ts
1847
- var _hoisted_1$50 = [
1847
+ var _hoisted_1$52 = [
1848
1848
  "data-invalid",
1849
1849
  "data-disabled",
1850
1850
  "data-readonly",
@@ -1853,13 +1853,13 @@ var _hoisted_1$50 = [
1853
1853
  "data-has-helper"
1854
1854
  ];
1855
1855
  var _hoisted_2$31 = ["for"];
1856
- var _hoisted_3$20 = {
1856
+ var _hoisted_3$19 = {
1857
1857
  key: 0,
1858
1858
  "aria-hidden": "true"
1859
1859
  };
1860
- var _hoisted_4$13 = ["data-filled"];
1861
- var _hoisted_5$9 = ["for"];
1862
- var _hoisted_6$7 = {
1860
+ var _hoisted_4$12 = ["data-filled"];
1861
+ var _hoisted_5$8 = ["for"];
1862
+ var _hoisted_6$6 = {
1863
1863
  key: 0,
1864
1864
  "aria-hidden": "true"
1865
1865
  };
@@ -2014,7 +2014,7 @@ var Input_default = /* @__PURE__ */ (0, vue.defineComponent)({
2014
2014
  key: 0,
2015
2015
  for: inputId.value,
2016
2016
  class: (0, vue.normalizeClass)(slotFns.value.label())
2017
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$20, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$31)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createElementVNode)("div", {
2017
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$19, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$31)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createElementVNode)("div", {
2018
2018
  class: (0, vue.normalizeClass)(slotFns.value.inputWrapper()),
2019
2019
  "data-filled": hasLabel.value ? isFilled.value || void 0 : void 0
2020
2020
  }, [
@@ -2022,7 +2022,7 @@ var Input_default = /* @__PURE__ */ (0, vue.defineComponent)({
2022
2022
  key: 0,
2023
2023
  for: inputId.value,
2024
2024
  class: (0, vue.normalizeClass)(slotFns.value.label())
2025
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_6$7, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_5$9)) : (0, vue.createCommentVNode)("", true),
2025
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_6$6, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_5$8)) : (0, vue.createCommentVNode)("", true),
2026
2026
  _ctx.$slots.startContent ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
2027
2027
  key: 1,
2028
2028
  class: (0, vue.normalizeClass)(slotFns.value.startContent())
@@ -2098,7 +2098,7 @@ var Input_default = /* @__PURE__ */ (0, vue.defineComponent)({
2098
2098
  cy: "12",
2099
2099
  r: "3"
2100
2100
  }, null, -1)])]))], 10, _hoisted_8$1)) : (0, vue.createCommentVNode)("", true)
2101
- ], 10, _hoisted_4$13), hasHelper.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
2101
+ ], 10, _hoisted_4$12), hasHelper.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
2102
2102
  key: 0,
2103
2103
  class: (0, vue.normalizeClass)(slotFns.value.helperWrapper())
2104
2104
  }, [showError.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
@@ -2109,13 +2109,13 @@ var Input_default = /* @__PURE__ */ (0, vue.defineComponent)({
2109
2109
  key: 1,
2110
2110
  id: descriptionId.value,
2111
2111
  class: (0, vue.normalizeClass)(slotFns.value.description())
2112
- }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_12)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$50);
2112
+ }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_12)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$52);
2113
2113
  };
2114
2114
  }
2115
2115
  });
2116
2116
  //#endregion
2117
2117
  //#region src/components/textarea/Textarea.vue?vue&type=script&setup=true&lang.ts
2118
- var _hoisted_1$49 = [
2118
+ var _hoisted_1$51 = [
2119
2119
  "data-invalid",
2120
2120
  "data-disabled",
2121
2121
  "data-readonly",
@@ -2124,13 +2124,13 @@ var _hoisted_1$49 = [
2124
2124
  "data-has-helper"
2125
2125
  ];
2126
2126
  var _hoisted_2$30 = ["for"];
2127
- var _hoisted_3$19 = {
2127
+ var _hoisted_3$18 = {
2128
2128
  key: 0,
2129
2129
  "aria-hidden": "true"
2130
2130
  };
2131
- var _hoisted_4$12 = ["data-filled"];
2132
- var _hoisted_5$8 = ["for"];
2133
- var _hoisted_6$6 = {
2131
+ var _hoisted_4$11 = ["data-filled"];
2132
+ var _hoisted_5$7 = ["for"];
2133
+ var _hoisted_6$5 = {
2134
2134
  key: 0,
2135
2135
  "aria-hidden": "true"
2136
2136
  };
@@ -2254,7 +2254,7 @@ var Textarea_default = /* @__PURE__ */ (0, vue.defineComponent)({
2254
2254
  key: 0,
2255
2255
  for: inputId.value,
2256
2256
  class: (0, vue.normalizeClass)(slotFns.value.label())
2257
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$19, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$30)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createElementVNode)("div", {
2257
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$18, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$30)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createElementVNode)("div", {
2258
2258
  class: (0, vue.normalizeClass)(slotFns.value.inputWrapper()),
2259
2259
  "data-filled": hasLabel.value ? isFilled.value || void 0 : void 0
2260
2260
  }, [
@@ -2262,7 +2262,7 @@ var Textarea_default = /* @__PURE__ */ (0, vue.defineComponent)({
2262
2262
  key: 0,
2263
2263
  for: inputId.value,
2264
2264
  class: (0, vue.normalizeClass)(slotFns.value.label())
2265
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_6$6, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_5$8)) : (0, vue.createCommentVNode)("", true),
2265
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_6$5, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_5$7)) : (0, vue.createCommentVNode)("", true),
2266
2266
  _ctx.$slots.startContent ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
2267
2267
  key: 1,
2268
2268
  class: (0, vue.normalizeClass)(slotFns.value.startContent())
@@ -2321,7 +2321,7 @@ var Textarea_default = /* @__PURE__ */ (0, vue.defineComponent)({
2321
2321
  y2: "15"
2322
2322
  })
2323
2323
  ], -1)])], 2)) : (0, vue.createCommentVNode)("", true)
2324
- ], 10, _hoisted_4$12), hasHelper.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
2324
+ ], 10, _hoisted_4$11), hasHelper.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
2325
2325
  key: 0,
2326
2326
  class: (0, vue.normalizeClass)(slotFns.value.helperWrapper())
2327
2327
  }, [showError.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
@@ -2332,13 +2332,13 @@ var Textarea_default = /* @__PURE__ */ (0, vue.defineComponent)({
2332
2332
  key: 1,
2333
2333
  id: descriptionId.value,
2334
2334
  class: (0, vue.normalizeClass)(slotFns.value.description())
2335
- }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_9)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$49);
2335
+ }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_9)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$51);
2336
2336
  };
2337
2337
  }
2338
2338
  });
2339
2339
  //#endregion
2340
2340
  //#region src/components/number-field/NumberField.vue?vue&type=script&setup=true&lang.ts
2341
- var _hoisted_1$48 = ["for"];
2341
+ var _hoisted_1$50 = ["for"];
2342
2342
  //#endregion
2343
2343
  //#region src/components/number-field/NumberField.vue
2344
2344
  var NumberField_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -2418,7 +2418,7 @@ var NumberField_default = /* @__PURE__ */ (0, vue.defineComponent)({
2418
2418
  for: resolvedInputId.value,
2419
2419
  class: (0, vue.normalizeClass)(isLabelVisible.value ? void 0 : "sr-only"),
2420
2420
  "data-slot": "label"
2421
- }, (0, vue.toDisplayString)(props.label || props.ariaLabel), 11, _hoisted_1$48)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", {
2421
+ }, (0, vue.toDisplayString)(props.label || props.ariaLabel), 11, _hoisted_1$50)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", {
2422
2422
  class: (0, vue.normalizeClass)(slotFns.value.group()),
2423
2423
  "data-slot": "group"
2424
2424
  }, [
@@ -2481,7 +2481,7 @@ var NumberField_default = /* @__PURE__ */ (0, vue.defineComponent)({
2481
2481
  });
2482
2482
  //#endregion
2483
2483
  //#region src/components/fieldset/Fieldset.vue?vue&type=script&setup=true&lang.ts
2484
- var _hoisted_1$47 = ["disabled"];
2484
+ var _hoisted_1$49 = ["disabled"];
2485
2485
  //#endregion
2486
2486
  //#region src/components/fieldset/Fieldset.vue
2487
2487
  var Fieldset_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -2509,7 +2509,7 @@ var Fieldset_default = /* @__PURE__ */ (0, vue.defineComponent)({
2509
2509
  }, [props.legend ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("legend", {
2510
2510
  key: 0,
2511
2511
  class: (0, vue.normalizeClass)((0, vue.unref)(styles).legend())
2512
- }, (0, vue.toDisplayString)(props.legend), 3)) : (0, vue.createCommentVNode)("", true), (0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$47);
2512
+ }, (0, vue.toDisplayString)(props.legend), 3)) : (0, vue.createCommentVNode)("", true), (0, vue.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1$49);
2513
2513
  };
2514
2514
  }
2515
2515
  });
@@ -2518,7 +2518,7 @@ var Fieldset_default = /* @__PURE__ */ (0, vue.defineComponent)({
2518
2518
  var { useProvide: useCheckboxGroupProvide, useInject: useCheckboxGroupInject, key: checkboxGroupContextKey } = createContext("CheckboxGroup");
2519
2519
  //#endregion
2520
2520
  //#region src/components/checkbox/Checkbox.vue?vue&type=script&setup=true&lang.ts
2521
- var _hoisted_1$46 = {
2521
+ var _hoisted_1$48 = {
2522
2522
  key: 0,
2523
2523
  xmlns: "http://www.w3.org/2000/svg",
2524
2524
  width: "12",
@@ -2605,7 +2605,7 @@ var Checkbox_default = /* @__PURE__ */ (0, vue.defineComponent)({
2605
2605
  "onUpdate:modelValue": handleUpdate
2606
2606
  }), {
2607
2607
  default: (0, vue.withCtx)(() => [(0, vue.createElementVNode)("span", { class: (0, vue.normalizeClass)(slotFns.value.control()) }, [(0, vue.createVNode)((0, vue.unref)(reka_ui.CheckboxIndicator), { class: (0, vue.normalizeClass)(slotFns.value.indicator()) }, {
2608
- default: (0, vue.withCtx)(() => [props.isIndeterminate ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$46, [..._cache[0] || (_cache[0] = [(0, vue.createElementVNode)("line", {
2608
+ default: (0, vue.withCtx)(() => [props.isIndeterminate ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$48, [..._cache[0] || (_cache[0] = [(0, vue.createElementVNode)("line", {
2609
2609
  x1: "5",
2610
2610
  y1: "12",
2611
2611
  x2: "19",
@@ -2626,9 +2626,9 @@ var Checkbox_default = /* @__PURE__ */ (0, vue.defineComponent)({
2626
2626
  });
2627
2627
  //#endregion
2628
2628
  //#region src/components/checkbox/CheckboxGroup.vue?vue&type=script&setup=true&lang.ts
2629
- var _hoisted_1$45 = ["aria-labelledby", "data-orientation"];
2629
+ var _hoisted_1$47 = ["aria-labelledby", "data-orientation"];
2630
2630
  var _hoisted_2$28 = { class: "checkbox-group__wrapper" };
2631
- var _hoisted_3$18 = {
2631
+ var _hoisted_3$17 = {
2632
2632
  key: 1,
2633
2633
  class: "checkbox-group__description"
2634
2634
  };
@@ -2683,8 +2683,8 @@ var CheckboxGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
2683
2683
  class: "checkbox-group__label"
2684
2684
  }, (0, vue.toDisplayString)(props.label), 1)) : (0, vue.createCommentVNode)("", true),
2685
2685
  (0, vue.createElementVNode)("div", _hoisted_2$28, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
2686
- props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$18, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)
2687
- ], 10, _hoisted_1$45);
2686
+ props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$17, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)
2687
+ ], 10, _hoisted_1$47);
2688
2688
  };
2689
2689
  }
2690
2690
  });
@@ -2735,7 +2735,7 @@ var Radio_default = /* @__PURE__ */ (0, vue.defineComponent)({
2735
2735
  });
2736
2736
  //#endregion
2737
2737
  //#region src/components/radio/RadioGroup.vue?vue&type=script&setup=true&lang.ts
2738
- var _hoisted_1$44 = { class: "radio-group__wrapper" };
2738
+ var _hoisted_1$46 = { class: "radio-group__wrapper" };
2739
2739
  var _hoisted_2$27 = {
2740
2740
  key: 1,
2741
2741
  class: "radio-group__description"
@@ -2785,7 +2785,7 @@ var RadioGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
2785
2785
  id: labelId,
2786
2786
  class: "radio-group__label"
2787
2787
  }, (0, vue.toDisplayString)(props.label), 1)) : (0, vue.createCommentVNode)("", true),
2788
- (0, vue.createElementVNode)("div", _hoisted_1$44, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
2788
+ (0, vue.createElementVNode)("div", _hoisted_1$46, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
2789
2789
  props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$27, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)
2790
2790
  ]),
2791
2791
  _: 3
@@ -2877,7 +2877,7 @@ var Switch_default = /* @__PURE__ */ (0, vue.defineComponent)({
2877
2877
  });
2878
2878
  //#endregion
2879
2879
  //#region src/components/switch/SwitchGroup.vue?vue&type=script&setup=true&lang.ts
2880
- var _hoisted_1$43 = ["aria-labelledby", "data-orientation"];
2880
+ var _hoisted_1$45 = ["aria-labelledby", "data-orientation"];
2881
2881
  var _hoisted_2$26 = {
2882
2882
  key: 1,
2883
2883
  class: "switch-group__description"
@@ -2934,7 +2934,7 @@ var SwitchGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
2934
2934
  }, (0, vue.toDisplayString)(props.label), 1)) : (0, vue.createCommentVNode)("", true),
2935
2935
  (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(groupSlots.value.items()) }, [(0, vue.renderSlot)(_ctx.$slots, "default")], 2),
2936
2936
  props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$26, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)
2937
- ], 10, _hoisted_1$43);
2937
+ ], 10, _hoisted_1$45);
2938
2938
  };
2939
2939
  }
2940
2940
  });
@@ -12746,7 +12746,7 @@ var AlertDialogOverlay_default = /* @__PURE__ */ (0, vue.defineComponent)({
12746
12746
  });
12747
12747
  //#endregion
12748
12748
  //#region src/components/alert-dialog/AlertDialogContent.vue?vue&type=script&setup=true&lang.ts
12749
- var _hoisted_1$42 = ["data-placement"];
12749
+ var _hoisted_1$44 = ["data-placement"];
12750
12750
  //#endregion
12751
12751
  //#region src/components/alert-dialog/AlertDialogContent.vue
12752
12752
  var AlertDialogContent_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -12781,7 +12781,7 @@ var AlertDialogContent_default = /* @__PURE__ */ (0, vue.defineComponent)({
12781
12781
  }, {
12782
12782
  default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
12783
12783
  _: 3
12784
- }, 8, ["class", "data-placement"])], 10, _hoisted_1$42)]),
12784
+ }, 8, ["class", "data-placement"])], 10, _hoisted_1$44)]),
12785
12785
  _: 3
12786
12786
  });
12787
12787
  };
@@ -12931,7 +12931,7 @@ var AlertDialogDescription_default = /* @__PURE__ */ (0, vue.defineComponent)({
12931
12931
  });
12932
12932
  //#endregion
12933
12933
  //#region src/components/alert-dialog/AlertDialogIcon.vue?vue&type=script&setup=true&lang.ts
12934
- var _hoisted_1$41 = {
12934
+ var _hoisted_1$43 = {
12935
12935
  key: 0,
12936
12936
  "data-slot": "alert-dialog-default-icon",
12937
12937
  viewBox: "0 0 24 24",
@@ -12951,7 +12951,7 @@ var _hoisted_2$25 = {
12951
12951
  "stroke-linecap": "round",
12952
12952
  "stroke-linejoin": "round"
12953
12953
  };
12954
- var _hoisted_3$17 = {
12954
+ var _hoisted_3$16 = {
12955
12955
  key: 2,
12956
12956
  "data-slot": "alert-dialog-default-icon",
12957
12957
  viewBox: "0 0 24 24",
@@ -12961,7 +12961,7 @@ var _hoisted_3$17 = {
12961
12961
  "stroke-linecap": "round",
12962
12962
  "stroke-linejoin": "round"
12963
12963
  };
12964
- var _hoisted_4$11 = {
12964
+ var _hoisted_4$10 = {
12965
12965
  key: 3,
12966
12966
  "data-slot": "alert-dialog-default-icon",
12967
12967
  viewBox: "0 0 24 24",
@@ -12993,7 +12993,7 @@ var AlertDialogIcon_default = /* @__PURE__ */ (0, vue.defineComponent)({
12993
12993
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
12994
12994
  class: (0, vue.normalizeClass)((0, vue.unref)(composeClassName)((0, vue.unref)(styles).icon({ status: resolvedStatus() }), props.class)),
12995
12995
  "aria-hidden": "true"
12996
- }, [(0, vue.renderSlot)(_ctx.$slots, "default", {}, () => [resolvedStatus() === "danger" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$41, [..._cache[0] || (_cache[0] = [
12996
+ }, [(0, vue.renderSlot)(_ctx.$slots, "default", {}, () => [resolvedStatus() === "danger" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$43, [..._cache[0] || (_cache[0] = [
12997
12997
  (0, vue.createElementVNode)("circle", {
12998
12998
  cx: "12",
12999
12999
  cy: "12",
@@ -13005,11 +13005,11 @@ var AlertDialogIcon_default = /* @__PURE__ */ (0, vue.defineComponent)({
13005
13005
  (0, vue.createElementVNode)("path", { d: "M12 3.5 2.8 19.5a1.2 1.2 0 0 0 1 1.8h16.4a1.2 1.2 0 0 0 1-1.8L12 3.5Z" }, null, -1),
13006
13006
  (0, vue.createElementVNode)("path", { d: "M12 10v4" }, null, -1),
13007
13007
  (0, vue.createElementVNode)("path", { d: "M12 17.5h.01" }, null, -1)
13008
- ])])) : resolvedStatus() === "success" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$17, [..._cache[2] || (_cache[2] = [(0, vue.createElementVNode)("circle", {
13008
+ ])])) : resolvedStatus() === "success" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$16, [..._cache[2] || (_cache[2] = [(0, vue.createElementVNode)("circle", {
13009
13009
  cx: "12",
13010
13010
  cy: "12",
13011
13011
  r: "9"
13012
- }, null, -1), (0, vue.createElementVNode)("path", { d: "m8.5 12.5 2.5 2.5 4.5-5" }, null, -1)])])) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_4$11, [..._cache[3] || (_cache[3] = [
13012
+ }, null, -1), (0, vue.createElementVNode)("path", { d: "m8.5 12.5 2.5 2.5 4.5-5" }, null, -1)])])) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_4$10, [..._cache[3] || (_cache[3] = [
13013
13013
  (0, vue.createElementVNode)("circle", {
13014
13014
  cx: "12",
13015
13015
  cy: "12",
@@ -13381,7 +13381,7 @@ var Tabs_default = /* @__PURE__ */ (0, vue.defineComponent)({
13381
13381
  });
13382
13382
  //#endregion
13383
13383
  //#region src/components/tabs/TabList.vue?vue&type=script&setup=true&lang.ts
13384
- var _hoisted_1$40 = {
13384
+ var _hoisted_1$42 = {
13385
13385
  key: 0,
13386
13386
  class: "tabs__overflow-menu",
13387
13387
  role: "menu"
@@ -13643,7 +13643,7 @@ var TabList_default = /* @__PURE__ */ (0, vue.defineComponent)({
13643
13643
  "stroke-linejoin": "round"
13644
13644
  })], -1))]),
13645
13645
  _: 1
13646
- }, 8, ["aria-expanded"]), dropdownOpen.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$40, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(hiddenTabs.value, (tab) => {
13646
+ }, 8, ["aria-expanded"]), dropdownOpen.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$42, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(hiddenTabs.value, (tab) => {
13647
13647
  return (0, vue.openBlock)(), (0, vue.createBlock)(Button_default, {
13648
13648
  key: tab.value,
13649
13649
  variant: "ghost",
@@ -13994,7 +13994,7 @@ var Collapsible_default = /* @__PURE__ */ (0, vue.defineComponent)({
13994
13994
  });
13995
13995
  //#endregion
13996
13996
  //#region src/components/collapsible/CollapsibleTrigger.vue?vue&type=script&setup=true&lang.ts
13997
- var _hoisted_1$39 = ["data-state"];
13997
+ var _hoisted_1$41 = ["data-state"];
13998
13998
  //#endregion
13999
13999
  //#region src/components/collapsible/CollapsibleTrigger.vue
14000
14000
  var CollapsibleTrigger_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -14021,7 +14021,7 @@ var CollapsibleTrigger_default = /* @__PURE__ */ (0, vue.defineComponent)({
14021
14021
  "stroke-linejoin": "round",
14022
14022
  "aria-hidden": "true",
14023
14023
  focusable: "false"
14024
- }, [(0, vue.createElementVNode)("polyline", { points: "6 9 12 15 18 9" })], -1)])], 10, _hoisted_1$39)]),
14024
+ }, [(0, vue.createElementVNode)("polyline", { points: "6 9 12 15 18 9" })], -1)])], 10, _hoisted_1$41)]),
14025
14025
  _: 3
14026
14026
  }, 8, ["class"]);
14027
14027
  };
@@ -14167,9 +14167,9 @@ var Breadcrumbs_default = /* @__PURE__ */ (0, vue.defineComponent)({
14167
14167
  });
14168
14168
  //#endregion
14169
14169
  //#region src/components/breadcrumbs/BreadcrumbItem.vue?vue&type=script&setup=true&lang.ts
14170
- var _hoisted_1$38 = ["aria-current"];
14170
+ var _hoisted_1$40 = ["aria-current"];
14171
14171
  var _hoisted_2$24 = ["href"];
14172
- var _hoisted_3$16 = {
14172
+ var _hoisted_3$15 = {
14173
14173
  key: 1,
14174
14174
  xmlns: "http://www.w3.org/2000/svg",
14175
14175
  viewBox: "0 0 24 24",
@@ -14211,7 +14211,7 @@ var BreadcrumbItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
14211
14211
  key: 2,
14212
14212
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slotFns.value.separator()),
14213
14213
  "aria-hidden": "true"
14214
- }, [SeparatorRenderer.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(SeparatorRenderer.value), { key: 0 })) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$16, [..._cache[0] || (_cache[0] = [(0, vue.createElementVNode)("polyline", { points: "9 6 15 12 9 18" }, null, -1)])]))], 2)) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_1$38);
14214
+ }, [SeparatorRenderer.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(SeparatorRenderer.value), { key: 0 })) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$15, [..._cache[0] || (_cache[0] = [(0, vue.createElementVNode)("polyline", { points: "9 6 15 12 9 18" }, null, -1)])]))], 2)) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_1$40);
14215
14215
  };
14216
14216
  }
14217
14217
  });
@@ -14404,7 +14404,7 @@ var ToolbarToggleItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
14404
14404
  });
14405
14405
  //#endregion
14406
14406
  //#region src/components/alert/Alert.vue?vue&type=script&setup=true&lang.ts
14407
- var _hoisted_1$37 = {
14407
+ var _hoisted_1$39 = {
14408
14408
  key: 0,
14409
14409
  "data-slot": "alert-default-icon",
14410
14410
  viewBox: "0 0 24 24",
@@ -14424,7 +14424,7 @@ var _hoisted_2$23 = {
14424
14424
  "stroke-linecap": "round",
14425
14425
  "stroke-linejoin": "round"
14426
14426
  };
14427
- var _hoisted_3$15 = {
14427
+ var _hoisted_3$14 = {
14428
14428
  key: 2,
14429
14429
  "data-slot": "alert-default-icon",
14430
14430
  viewBox: "0 0 24 24",
@@ -14434,7 +14434,7 @@ var _hoisted_3$15 = {
14434
14434
  "stroke-linecap": "round",
14435
14435
  "stroke-linejoin": "round"
14436
14436
  };
14437
- var _hoisted_4$10 = {
14437
+ var _hoisted_4$9 = {
14438
14438
  key: 3,
14439
14439
  "data-slot": "alert-default-icon",
14440
14440
  viewBox: "0 0 24 24",
@@ -14499,7 +14499,7 @@ var Alert_default = /* @__PURE__ */ (0, vue.defineComponent)({
14499
14499
  (0, vue.renderSlot)(_ctx.$slots, "icon", {}, () => [(0, vue.createElementVNode)("span", {
14500
14500
  class: (0, vue.normalizeClass)(styles.value.indicator()),
14501
14501
  "aria-hidden": "true"
14502
- }, [__props.severity === "default" || __props.severity === "primary" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$37, [..._cache[0] || (_cache[0] = [
14502
+ }, [__props.severity === "default" || __props.severity === "primary" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_1$39, [..._cache[0] || (_cache[0] = [
14503
14503
  (0, vue.createElementVNode)("circle", {
14504
14504
  cx: "12",
14505
14505
  cy: "12",
@@ -14511,11 +14511,11 @@ var Alert_default = /* @__PURE__ */ (0, vue.defineComponent)({
14511
14511
  cx: "12",
14512
14512
  cy: "12",
14513
14513
  r: "9"
14514
- }, null, -1), (0, vue.createElementVNode)("path", { d: "m8.5 12.5 2.5 2.5 4.5-5" }, null, -1)])])) : __props.severity === "warning" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$15, [..._cache[2] || (_cache[2] = [
14514
+ }, null, -1), (0, vue.createElementVNode)("path", { d: "m8.5 12.5 2.5 2.5 4.5-5" }, null, -1)])])) : __props.severity === "warning" ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_3$14, [..._cache[2] || (_cache[2] = [
14515
14515
  (0, vue.createElementVNode)("path", { d: "M12 3.5 2.8 19.5a1.2 1.2 0 0 0 1 1.8h16.4a1.2 1.2 0 0 0 1-1.8L12 3.5Z" }, null, -1),
14516
14516
  (0, vue.createElementVNode)("path", { d: "M12 10v4" }, null, -1),
14517
14517
  (0, vue.createElementVNode)("path", { d: "M12 17.5h.01" }, null, -1)
14518
- ])])) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_4$10, [..._cache[3] || (_cache[3] = [
14518
+ ])])) : ((0, vue.openBlock)(), (0, vue.createElementBlock)("svg", _hoisted_4$9, [..._cache[3] || (_cache[3] = [
14519
14519
  (0, vue.createElementVNode)("circle", {
14520
14520
  cx: "12",
14521
14521
  cy: "12",
@@ -14873,7 +14873,7 @@ function useToast() {
14873
14873
  }
14874
14874
  //#endregion
14875
14875
  //#region src/components/toast/ToastViewport.vue?vue&type=script&setup=true&lang.ts
14876
- var _hoisted_1$36 = { class: "flex shrink-0 items-center gap-1 ml-auto" };
14876
+ var _hoisted_1$38 = { class: "flex shrink-0 items-center gap-1 ml-auto" };
14877
14877
  //#endregion
14878
14878
  //#region src/components/toast/ToastViewport.vue
14879
14879
  var ToastViewport_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -14943,7 +14943,7 @@ var ToastViewport_default = /* @__PURE__ */ (0, vue.defineComponent)({
14943
14943
  }, 1024), toast.description ? ((0, vue.openBlock)(), (0, vue.createBlock)(ToastDescription_default, { key: 0 }, {
14944
14944
  default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(toast.description), 1)]),
14945
14945
  _: 2
14946
- }, 1024)) : (0, vue.createCommentVNode)("", true)], 2), (0, vue.createElementVNode)("div", _hoisted_1$36, [toast.action ? ((0, vue.openBlock)(), (0, vue.createBlock)(ToastAction_default, {
14946
+ }, 1024)) : (0, vue.createCommentVNode)("", true)], 2), (0, vue.createElementVNode)("div", _hoisted_1$38, [toast.action ? ((0, vue.openBlock)(), (0, vue.createBlock)(ToastAction_default, {
14947
14947
  key: 0,
14948
14948
  "alt-text": toast.action.label,
14949
14949
  onClick: toast.action.onClick
@@ -15132,7 +15132,7 @@ var ListBoxSection_default = /* @__PURE__ */ (0, vue.defineComponent)({
15132
15132
  var { useProvide: useSelectProvide, useInject: useSelectInject, key: selectContextKey } = createContext("Select");
15133
15133
  //#endregion
15134
15134
  //#region src/components/select/Select.vue?vue&type=script&setup=true&lang.ts
15135
- var _hoisted_1$35 = [
15135
+ var _hoisted_1$37 = [
15136
15136
  "data-invalid",
15137
15137
  "data-disabled",
15138
15138
  "data-readonly",
@@ -15141,12 +15141,12 @@ var _hoisted_1$35 = [
15141
15141
  "data-has-helper"
15142
15142
  ];
15143
15143
  var _hoisted_2$22 = ["for"];
15144
- var _hoisted_3$14 = {
15144
+ var _hoisted_3$13 = {
15145
15145
  key: 0,
15146
15146
  "aria-hidden": "true"
15147
15147
  };
15148
- var _hoisted_4$9 = ["id"];
15149
- var _hoisted_5$7 = ["id"];
15148
+ var _hoisted_4$8 = ["id"];
15149
+ var _hoisted_5$6 = ["id"];
15150
15150
  //#endregion
15151
15151
  //#region src/components/select/Select.vue
15152
15152
  var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -15185,6 +15185,10 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15185
15185
  class: {},
15186
15186
  modelValue: { default: void 0 },
15187
15187
  defaultValue: { default: void 0 },
15188
+ multiple: {
15189
+ type: Boolean,
15190
+ default: false
15191
+ },
15188
15192
  open: {
15189
15193
  type: Boolean,
15190
15194
  default: void 0
@@ -15232,6 +15236,9 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15232
15236
  if (Array.isArray(value)) return value.map((v) => itemRegistry.get(v) ?? v).filter(Boolean).join(", ");
15233
15237
  return itemRegistry.get(value) ?? value;
15234
15238
  };
15239
+ function removeValue(value) {
15240
+ emit("update:modelValue", (Array.isArray(props.modelValue) ? props.modelValue : []).filter((v) => v !== value));
15241
+ }
15235
15242
  useSelectProvide({
15236
15243
  isDisabled: (0, vue.toRef)(props, "isDisabled"),
15237
15244
  isInvalid: (0, vue.toRef)(props, "isInvalid"),
@@ -15244,8 +15251,10 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15244
15251
  label: (0, vue.toRef)(props, "label"),
15245
15252
  ariaDescribedBy,
15246
15253
  slots: slotFns,
15254
+ multiple: (0, vue.toRef)(props, "multiple"),
15247
15255
  registerItem,
15248
- itemLabel
15256
+ itemLabel,
15257
+ removeValue
15249
15258
  });
15250
15259
  return (_ctx, _cache) => {
15251
15260
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
@@ -15260,9 +15269,10 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15260
15269
  key: 0,
15261
15270
  for: triggerId.value,
15262
15271
  class: (0, vue.normalizeClass)(slotFns.value.label())
15263
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$14, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$22)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createVNode)((0, vue.unref)(reka_ui.SelectRoot), {
15272
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$13, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$22)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createVNode)((0, vue.unref)(reka_ui.SelectRoot), {
15264
15273
  "model-value": props.modelValue,
15265
15274
  "default-value": props.defaultValue,
15275
+ multiple: props.multiple,
15266
15276
  open: props.open,
15267
15277
  "default-open": props.defaultOpen,
15268
15278
  disabled: props.isDisabled,
@@ -15276,6 +15286,7 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15276
15286
  }, 8, [
15277
15287
  "model-value",
15278
15288
  "default-value",
15289
+ "multiple",
15279
15290
  "open",
15280
15291
  "default-open",
15281
15292
  "disabled",
@@ -15288,17 +15299,17 @@ var Select_default = /* @__PURE__ */ (0, vue.defineComponent)({
15288
15299
  key: 0,
15289
15300
  id: errorMessageId.value,
15290
15301
  class: (0, vue.normalizeClass)(slotFns.value.errorMessage())
15291
- }, (0, vue.toDisplayString)(__props.errorMessage), 11, _hoisted_4$9)) : showDescription.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
15302
+ }, (0, vue.toDisplayString)(__props.errorMessage), 11, _hoisted_4$8)) : showDescription.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
15292
15303
  key: 1,
15293
15304
  id: descriptionId.value,
15294
15305
  class: (0, vue.normalizeClass)(slotFns.value.description())
15295
- }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_5$7)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$35);
15306
+ }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_5$6)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$37);
15296
15307
  };
15297
15308
  }
15298
15309
  });
15299
15310
  //#endregion
15300
15311
  //#region src/components/select/SelectTrigger.vue?vue&type=script&setup=true&lang.ts
15301
- var _hoisted_1$34 = ["for"];
15312
+ var _hoisted_1$36 = ["for"];
15302
15313
  var _hoisted_2$21 = {
15303
15314
  key: 0,
15304
15315
  "aria-hidden": "true"
@@ -15334,7 +15345,7 @@ var SelectTrigger_default = /* @__PURE__ */ (0, vue.defineComponent)({
15334
15345
  key: 0,
15335
15346
  for: (0, vue.unref)(ctx).triggerId.value,
15336
15347
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.label())
15337
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)((0, vue.unref)(ctx).label.value), 1), (0, vue.unref)(ctx).isRequired.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$21, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_1$34)) : (0, vue.createCommentVNode)("", true),
15348
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)((0, vue.unref)(ctx).label.value), 1), (0, vue.unref)(ctx).isRequired.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$21, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_1$36)) : (0, vue.createCommentVNode)("", true),
15338
15349
  _ctx.$slots.startContent ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
15339
15350
  key: 1,
15340
15351
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.startContent()),
@@ -15374,6 +15385,87 @@ var SelectTrigger_default = /* @__PURE__ */ (0, vue.defineComponent)({
15374
15385
  }
15375
15386
  });
15376
15387
  //#endregion
15388
+ //#region src/components/select/SelectOverflowChips.vue?vue&type=script&setup=true&lang.ts
15389
+ var _hoisted_1$35 = {
15390
+ ref: "container",
15391
+ style: {
15392
+ "display": "flex",
15393
+ "flex-wrap": "nowrap",
15394
+ "align-items": "center",
15395
+ "gap": "4px",
15396
+ "overflow": "hidden",
15397
+ "flex": "1",
15398
+ "min-width": "0"
15399
+ }
15400
+ };
15401
+ //#endregion
15402
+ //#region src/components/select/SelectOverflowChips.vue
15403
+ var SelectOverflowChips_default = /* @__PURE__ */ (0, vue.defineComponent)({
15404
+ __name: "SelectOverflowChips",
15405
+ props: {
15406
+ values: {},
15407
+ getLabel: { type: Function }
15408
+ },
15409
+ setup(__props) {
15410
+ const props = __props;
15411
+ const containerEl = (0, vue.useTemplateRef)("container");
15412
+ const visibleCount = (0, vue.ref)(props.values.length);
15413
+ const overflowCount = (0, vue.computed)(() => Math.max(0, props.values.length - visibleCount.value));
15414
+ let measuring = false;
15415
+ async function reflow() {
15416
+ if (measuring) return;
15417
+ measuring = true;
15418
+ try {
15419
+ const el = containerEl.value;
15420
+ if (!el) return;
15421
+ visibleCount.value = props.values.length;
15422
+ await (0, vue.nextTick)();
15423
+ const chips = [...el.querySelectorAll("[data-chip-item]")];
15424
+ if (!chips.length) return;
15425
+ const containerW = el.offsetWidth;
15426
+ if (!containerW) return;
15427
+ const BADGE_W = 76;
15428
+ let usedW = 0;
15429
+ let n = 0;
15430
+ for (let i = 0; i < chips.length; i++) {
15431
+ const gap = i > 0 ? 4 : 0;
15432
+ const chipW = chips[i].offsetWidth;
15433
+ const budget = i === chips.length - 1 ? containerW : containerW - BADGE_W;
15434
+ if (usedW + gap + chipW > budget) break;
15435
+ usedW += gap + chipW;
15436
+ n++;
15437
+ }
15438
+ visibleCount.value = Math.max(1, n);
15439
+ } finally {
15440
+ measuring = false;
15441
+ }
15442
+ }
15443
+ (0, vue.onMounted)(reflow);
15444
+ (0, _vueuse_core.useResizeObserver)(containerEl, reflow);
15445
+ (0, vue.watch)(() => props.values.join("\0"), () => reflow(), { flush: "post" });
15446
+ return (_ctx, _cache) => {
15447
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$35, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.values, (val, i) => {
15448
+ return (0, vue.openBlock)(), (0, vue.createBlock)(Chip_default, {
15449
+ key: val,
15450
+ "data-chip-item": "",
15451
+ size: "sm",
15452
+ style: (0, vue.normalizeStyle)(i >= visibleCount.value ? "display: none" : void 0)
15453
+ }, {
15454
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.getLabel(val)), 1)]),
15455
+ _: 2
15456
+ }, 1032, ["style"]);
15457
+ }), 128)), overflowCount.value > 0 ? ((0, vue.openBlock)(), (0, vue.createBlock)(Chip_default, {
15458
+ key: 0,
15459
+ size: "sm",
15460
+ color: "default"
15461
+ }, {
15462
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)(" +" + (0, vue.toDisplayString)(overflowCount.value) + " more ", 1)]),
15463
+ _: 1
15464
+ })) : (0, vue.createCommentVNode)("", true)], 512);
15465
+ };
15466
+ }
15467
+ });
15468
+ //#endregion
15377
15469
  //#region src/components/select/SelectValue.vue
15378
15470
  var SelectValue_default = /* @__PURE__ */ (0, vue.defineComponent)({
15379
15471
  __name: "SelectValue",
@@ -15390,7 +15482,11 @@ var SelectValue_default = /* @__PURE__ */ (0, vue.defineComponent)({
15390
15482
  placeholder: props.placeholder,
15391
15483
  "data-slot": "value"
15392
15484
  }, {
15393
- default: (0, vue.withCtx)(({ selectedLabel, modelValue }) => [selectedLabel && selectedLabel.length > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 0 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(selectedLabel.join(", ")), 1)], 64)) : modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== "") ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)((0, vue.unref)(ctx).itemLabel(Array.isArray(modelValue) ? modelValue : modelValue.toString())), 1)], 64)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.placeholder), 1)], 64))]),
15485
+ default: (0, vue.withCtx)(({ selectedLabel, modelValue }) => [(0, vue.unref)(ctx).multiple.value && Array.isArray(modelValue) && modelValue.length > 0 ? ((0, vue.openBlock)(), (0, vue.createBlock)(SelectOverflowChips_default, {
15486
+ key: 0,
15487
+ values: modelValue,
15488
+ "get-label": (0, vue.unref)(ctx).itemLabel
15489
+ }, null, 8, ["values", "get-label"])) : (0, vue.unref)(ctx).multiple.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.placeholder), 1)], 64)) : selectedLabel && selectedLabel.length > 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(selectedLabel.join(", ")), 1)], 64)) : modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== "") ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 3 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)((0, vue.unref)(ctx).itemLabel(Array.isArray(modelValue) ? modelValue : modelValue.toString())), 1)], 64)) : ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 4 }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.placeholder), 1)], 64))]),
15394
15490
  _: 1
15395
15491
  }, 8, ["class", "placeholder"]);
15396
15492
  };
@@ -15638,13 +15734,13 @@ var DropdownMenu_default = /* @__PURE__ */ (0, vue.defineComponent)({
15638
15734
  });
15639
15735
  //#endregion
15640
15736
  //#region src/components/dropdown/DropdownItem.vue?vue&type=script&setup=true&lang.ts
15641
- var _hoisted_1$33 = { class: "flex flex-1 flex-col" };
15737
+ var _hoisted_1$34 = { class: "flex flex-1 flex-col" };
15642
15738
  var _hoisted_2$20 = { "data-slot": "label" };
15643
- var _hoisted_3$13 = {
15739
+ var _hoisted_3$12 = {
15644
15740
  key: 0,
15645
15741
  "data-slot": "description"
15646
15742
  };
15647
- var _hoisted_4$8 = {
15743
+ var _hoisted_4$7 = {
15648
15744
  key: 0,
15649
15745
  "data-slot": "shortcut",
15650
15746
  class: "ml-auto text-xs text-muted font-mono"
@@ -15678,8 +15774,8 @@ var DropdownItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
15678
15774
  }, {
15679
15775
  default: (0, vue.withCtx)(() => [
15680
15776
  (0, vue.renderSlot)(_ctx.$slots, "startContent"),
15681
- (0, vue.createElementVNode)("div", _hoisted_1$33, [(0, vue.createElementVNode)("span", _hoisted_2$20, [(0, vue.renderSlot)(_ctx.$slots, "default")]), props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$13, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)]),
15682
- props.shortcut ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("kbd", _hoisted_4$8, (0, vue.toDisplayString)(props.shortcut), 1)) : (0, vue.createCommentVNode)("", true),
15777
+ (0, vue.createElementVNode)("div", _hoisted_1$34, [(0, vue.createElementVNode)("span", _hoisted_2$20, [(0, vue.renderSlot)(_ctx.$slots, "default")]), props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$12, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)]),
15778
+ props.shortcut ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("kbd", _hoisted_4$7, (0, vue.toDisplayString)(props.shortcut), 1)) : (0, vue.createCommentVNode)("", true),
15683
15779
  (0, vue.renderSlot)(_ctx.$slots, "endContent")
15684
15780
  ]),
15685
15781
  _: 3
@@ -16013,22 +16109,22 @@ var DropdownSubContent_default = /* @__PURE__ */ (0, vue.defineComponent)({
16013
16109
  var { useProvide: useComboBoxProvide, useInject: useComboBoxInject, key: comboBoxContextKey } = createContext("ComboBox");
16014
16110
  //#endregion
16015
16111
  //#region src/components/combo-box/ComboBox.vue?vue&type=script&setup=true&lang.ts
16016
- var _hoisted_1$32 = ["aria-invalid"];
16112
+ var _hoisted_1$33 = ["aria-invalid"];
16017
16113
  var _hoisted_2$19 = ["id"];
16018
- var _hoisted_3$12 = {
16114
+ var _hoisted_3$11 = {
16019
16115
  key: 0,
16020
16116
  "aria-hidden": "true"
16021
16117
  };
16022
- var _hoisted_4$7 = {
16118
+ var _hoisted_4$6 = {
16023
16119
  key: 1,
16024
16120
  "data-slot": "helper-wrapper"
16025
16121
  };
16026
- var _hoisted_5$6 = {
16122
+ var _hoisted_5$5 = {
16027
16123
  key: 0,
16028
16124
  "data-slot": "error-message",
16029
16125
  "aria-live": "polite"
16030
16126
  };
16031
- var _hoisted_6$5 = {
16127
+ var _hoisted_6$4 = {
16032
16128
  key: 1,
16033
16129
  "data-slot": "description"
16034
16130
  };
@@ -16145,7 +16241,7 @@ var ComboBox_default = /* @__PURE__ */ (0, vue.defineComponent)({
16145
16241
  key: 0,
16146
16242
  id: (0, vue.unref)(labelId),
16147
16243
  "data-slot": "label"
16148
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.label) + " ", 1), props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$12, " *")) : (0, vue.createCommentVNode)("", true)], 8, _hoisted_2$19)) : (0, vue.createCommentVNode)("", true),
16244
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.label) + " ", 1), props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$11, " *")) : (0, vue.createCommentVNode)("", true)], 8, _hoisted_2$19)) : (0, vue.createCommentVNode)("", true),
16149
16245
  (0, vue.createVNode)((0, vue.unref)(reka_ui.ComboboxRoot), {
16150
16246
  modelValue: internalValue.value,
16151
16247
  "onUpdate:modelValue": [_cache[0] || (_cache[0] = ($event) => internalValue.value = $event), _cache[1] || (_cache[1] = ($event) => handleModelValueUpdate($event))],
@@ -16168,8 +16264,8 @@ var ComboBox_default = /* @__PURE__ */ (0, vue.defineComponent)({
16168
16264
  "required",
16169
16265
  "filter-function"
16170
16266
  ]),
16171
- props.description || props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$7, [props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_5$6, (0, vue.toDisplayString)(props.errorMessage), 1)) : props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_6$5, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)])) : (0, vue.createCommentVNode)("", true)
16172
- ], 10, _hoisted_1$32);
16267
+ props.description || props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$6, [props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_5$5, (0, vue.toDisplayString)(props.errorMessage), 1)) : props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_6$4, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)])) : (0, vue.createCommentVNode)("", true)
16268
+ ], 10, _hoisted_1$33);
16173
16269
  };
16174
16270
  }
16175
16271
  });
@@ -16442,7 +16538,7 @@ var ComboBoxEmpty_default = /* @__PURE__ */ (0, vue.defineComponent)({
16442
16538
  var { useProvide: useAutocompleteProvide, useInject: useAutocompleteInject, key: autocompleteContextKey } = createContext("Autocomplete");
16443
16539
  //#endregion
16444
16540
  //#region src/components/autocomplete/Autocomplete.vue?vue&type=script&setup=true&lang.ts
16445
- var _hoisted_1$31 = [
16541
+ var _hoisted_1$32 = [
16446
16542
  "data-invalid",
16447
16543
  "data-disabled",
16448
16544
  "data-readonly",
@@ -16451,12 +16547,12 @@ var _hoisted_1$31 = [
16451
16547
  "data-has-helper"
16452
16548
  ];
16453
16549
  var _hoisted_2$18 = ["for"];
16454
- var _hoisted_3$11 = {
16550
+ var _hoisted_3$10 = {
16455
16551
  key: 0,
16456
16552
  "aria-hidden": "true"
16457
16553
  };
16458
- var _hoisted_4$6 = ["id"];
16459
- var _hoisted_5$5 = ["id"];
16554
+ var _hoisted_4$5 = ["id"];
16555
+ var _hoisted_5$4 = ["id"];
16460
16556
  //#endregion
16461
16557
  //#region src/components/autocomplete/Autocomplete.vue
16462
16558
  var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -16495,6 +16591,11 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16495
16591
  class: {},
16496
16592
  modelValue: { default: void 0 },
16497
16593
  defaultValue: { default: void 0 },
16594
+ multiple: {
16595
+ type: Boolean,
16596
+ default: false
16597
+ },
16598
+ multipleOverflow: { default: "wrap" },
16498
16599
  open: {
16499
16600
  type: Boolean,
16500
16601
  default: void 0
@@ -16518,7 +16619,11 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16518
16619
  default: true
16519
16620
  }
16520
16621
  },
16521
- emits: ["update:modelValue", "update:open"],
16622
+ emits: [
16623
+ "update:modelValue",
16624
+ "update:open",
16625
+ "create"
16626
+ ],
16522
16627
  setup(__props, { emit: __emit }) {
16523
16628
  const props = __props;
16524
16629
  const emit = __emit;
@@ -16539,9 +16644,15 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16539
16644
  }
16540
16645
  const isLoading = (0, vue.ref)(false);
16541
16646
  const internalItems = (0, vue.ref)([...props.items]);
16647
+ const selectedValues = (0, vue.ref)(props.multiple && Array.isArray(props.modelValue) ? [...props.modelValue] : []);
16648
+ const internalOpen = (0, vue.ref)(props.defaultOpen ?? false);
16649
+ let selectingItem = false;
16542
16650
  const isOpen = (0, vue.ref)(props.defaultOpen ?? false);
16543
16651
  const termAtOpen = (0, vue.ref)("");
16544
16652
  const isUserTyping = (0, vue.ref)(false);
16653
+ const singleOpen = (0, vue.ref)(props.open ?? props.defaultOpen ?? false);
16654
+ let blockReopen = false;
16655
+ let blockReopenTimer;
16545
16656
  const effectiveIgnoreFilter = (0, vue.computed)(() => {
16546
16657
  if (props.loadItems) return true;
16547
16658
  if (!props.filterOnOpen && isOpen.value && !isUserTyping.value) return true;
@@ -16560,9 +16671,14 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16560
16671
  for (const [value, label] of slotItemRegistry.value) if (label === displayed) return value;
16561
16672
  return displayed;
16562
16673
  }
16563
- const searchTerm = (0, vue.ref)(labelFor(props.modelValue));
16564
- const isFilled = (0, vue.computed)(() => !!searchTerm.value);
16674
+ const singleModelValue = (0, vue.computed)(() => props.multiple ? void 0 : props.modelValue);
16675
+ const searchTerm = (0, vue.ref)(labelFor(singleModelValue.value));
16676
+ const isFilled = (0, vue.computed)(() => props.multiple ? selectedValues.value.length > 0 || !!searchTerm.value : !!searchTerm.value);
16565
16677
  const hasItems = (0, vue.computed)(() => internalItems.value.length > 0);
16678
+ const selectedLabels = (0, vue.computed)(() => selectedValues.value.map((v) => ({
16679
+ value: v,
16680
+ label: labelFor(v) || v
16681
+ })));
16566
16682
  const descriptionId = (0, vue.computed)(() => `${inputId.value}-description`);
16567
16683
  const errorMessageId = (0, vue.computed)(() => `${inputId.value}-error`);
16568
16684
  const showError = (0, vue.computed)(() => props.isInvalid && !!props.errorMessage);
@@ -16573,22 +16689,96 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16573
16689
  if (showDescription.value) return descriptionId.value;
16574
16690
  });
16575
16691
  (0, vue.watch)(() => props.modelValue, (val) => {
16576
- const next = labelFor(val);
16577
- if (searchTerm.value !== next) searchTerm.value = next;
16692
+ if (props.multiple) {
16693
+ if (Array.isArray(val)) selectedValues.value = [...val];
16694
+ } else {
16695
+ const next = labelFor(val);
16696
+ if (searchTerm.value !== next) searchTerm.value = next;
16697
+ }
16698
+ });
16699
+ (0, vue.watch)(() => props.open, (val) => {
16700
+ if (!props.multiple && val !== void 0) singleOpen.value = val;
16578
16701
  });
16579
16702
  (0, vue.watch)(searchTerm, (displayed) => {
16703
+ if (props.multiple) {
16704
+ if (isOpen.value && displayed !== termAtOpen.value) isUserTyping.value = true;
16705
+ return;
16706
+ }
16580
16707
  const next = valueFor(displayed);
16581
- if (next !== (props.modelValue ?? "")) emit("update:modelValue", next);
16708
+ if (next !== (singleModelValue.value ?? "")) emit("update:modelValue", next);
16582
16709
  if (isOpen.value && displayed !== termAtOpen.value) isUserTyping.value = true;
16583
16710
  });
16584
16711
  function handleOpenChange(val) {
16712
+ if (props.multiple) {
16713
+ isOpen.value = val;
16714
+ internalOpen.value = !val && selectingItem ? true : val;
16715
+ selectingItem = false;
16716
+ if (val) {
16717
+ termAtOpen.value = searchTerm.value;
16718
+ isUserTyping.value = false;
16719
+ } else isUserTyping.value = false;
16720
+ emit("update:open", val);
16721
+ return;
16722
+ }
16723
+ if (val && blockReopen) return;
16585
16724
  isOpen.value = val;
16725
+ singleOpen.value = val;
16586
16726
  if (val) {
16587
16727
  termAtOpen.value = searchTerm.value;
16588
16728
  isUserTyping.value = false;
16589
16729
  } else isUserTyping.value = false;
16590
16730
  emit("update:open", val);
16591
16731
  }
16732
+ function onMultipleSelect(value) {
16733
+ selectingItem = true;
16734
+ const idx = selectedValues.value.indexOf(value);
16735
+ selectedValues.value = idx === -1 ? [...selectedValues.value, value] : selectedValues.value.filter((_, i) => i !== idx);
16736
+ searchTerm.value = "";
16737
+ isUserTyping.value = false;
16738
+ emit("update:modelValue", selectedValues.value);
16739
+ }
16740
+ function removeValue(value) {
16741
+ selectedValues.value = selectedValues.value.filter((v) => v !== value);
16742
+ emit("update:modelValue", selectedValues.value);
16743
+ }
16744
+ function clearAll() {
16745
+ selectedValues.value = [];
16746
+ emit("update:modelValue", []);
16747
+ }
16748
+ function isSelected(value) {
16749
+ return selectedValues.value.includes(value);
16750
+ }
16751
+ const hasExactMatch = (0, vue.computed)(() => {
16752
+ const term = searchTerm.value.trim().toLowerCase();
16753
+ if (!term) return false;
16754
+ if (internalItems.value.some((i) => (i.label ?? i.textValue ?? i.value).toLowerCase() === term)) return true;
16755
+ for (const label of slotItemRegistry.value.values()) if (label.toLowerCase() === term) return true;
16756
+ return false;
16757
+ });
16758
+ function onCreateValue(value) {
16759
+ const trimmed = value.trim();
16760
+ if (!trimmed) return;
16761
+ if (props.multiple) {
16762
+ if (!selectedValues.value.includes(trimmed)) {
16763
+ selectingItem = true;
16764
+ selectedValues.value = [...selectedValues.value, trimmed];
16765
+ emit("update:modelValue", selectedValues.value);
16766
+ }
16767
+ searchTerm.value = "";
16768
+ isUserTyping.value = false;
16769
+ } else {
16770
+ searchTerm.value = trimmed;
16771
+ emit("update:modelValue", trimmed);
16772
+ isOpen.value = false;
16773
+ singleOpen.value = false;
16774
+ blockReopen = true;
16775
+ clearTimeout(blockReopenTimer);
16776
+ blockReopenTimer = setTimeout(() => {
16777
+ blockReopen = false;
16778
+ }, 300);
16779
+ }
16780
+ emit("create", trimmed);
16781
+ }
16592
16782
  let debounceTimer;
16593
16783
  async function runLoadItems(query) {
16594
16784
  if (!props.loadItems) return;
@@ -16615,12 +16805,14 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16615
16805
  if (!props.loadItems) internalItems.value = [...newItems];
16616
16806
  });
16617
16807
  (0, vue.watch)(internalItems, () => {
16618
- const next = labelFor(props.modelValue);
16619
- if (next && searchTerm.value !== next && valueFor(searchTerm.value) === (props.modelValue ?? "")) searchTerm.value = next;
16808
+ if (props.multiple) return;
16809
+ const next = labelFor(singleModelValue.value);
16810
+ if (next && searchTerm.value !== next && valueFor(searchTerm.value) === (singleModelValue.value ?? "")) searchTerm.value = next;
16620
16811
  });
16621
16812
  (0, vue.watch)(slotItemRegistry, () => {
16622
- const next = labelFor(props.modelValue);
16623
- if (next && searchTerm.value !== next && valueFor(searchTerm.value) === (props.modelValue ?? "")) searchTerm.value = next;
16813
+ if (props.multiple) return;
16814
+ const next = labelFor(singleModelValue.value);
16815
+ if (next && searchTerm.value !== next && valueFor(searchTerm.value) === (singleModelValue.value ?? "")) searchTerm.value = next;
16624
16816
  });
16625
16817
  const slotFns = (0, vue.computed)(() => (0, _auronui_styles.autocompleteVariants)({
16626
16818
  variant: props.variant,
@@ -16650,8 +16842,19 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16650
16842
  truncateItems: (0, vue.toRef)(props, "truncateItems"),
16651
16843
  hasItems,
16652
16844
  slots: slotFns,
16845
+ multiple: (0, vue.toRef)(props, "multiple"),
16846
+ multipleOverflow: (0, vue.toRef)(props, "multipleOverflow"),
16847
+ selectedValues,
16848
+ selectedLabels,
16849
+ onMultipleSelect,
16850
+ removeValue,
16851
+ clearAll,
16852
+ isSelected,
16653
16853
  registerItem,
16654
- unregisterItem
16854
+ unregisterItem,
16855
+ searchTerm,
16856
+ hasExactMatch,
16857
+ onCreateValue
16655
16858
  });
16656
16859
  return (_ctx, _cache) => {
16657
16860
  return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
@@ -16666,11 +16869,10 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16666
16869
  key: 0,
16667
16870
  for: inputId.value,
16668
16871
  class: (0, vue.normalizeClass)(slotFns.value.label())
16669
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$11, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$18)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createVNode)((0, vue.unref)(reka_ui.AutocompleteRoot), {
16872
+ }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.label), 1), __props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$10, " *")) : (0, vue.createCommentVNode)("", true)], 10, _hoisted_2$18)) : (0, vue.createCommentVNode)("", true), (0, vue.createElementVNode)("div", { class: (0, vue.normalizeClass)(slotFns.value.mainWrapper()) }, [(0, vue.createVNode)((0, vue.unref)(reka_ui.AutocompleteRoot), {
16670
16873
  "model-value": searchTerm.value,
16671
16874
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchTerm.value = $event),
16672
- open: props.open,
16673
- "default-open": props.defaultOpen,
16875
+ open: props.multiple ? internalOpen.value : singleOpen.value,
16674
16876
  disabled: props.isDisabled,
16675
16877
  required: props.isRequired,
16676
16878
  "ignore-filter": effectiveIgnoreFilter.value,
@@ -16685,7 +16887,6 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16685
16887
  }, 8, [
16686
16888
  "model-value",
16687
16889
  "open",
16688
- "default-open",
16689
16890
  "disabled",
16690
16891
  "required",
16691
16892
  "ignore-filter"
@@ -16696,11 +16897,95 @@ var Autocomplete_default = /* @__PURE__ */ (0, vue.defineComponent)({
16696
16897
  key: 0,
16697
16898
  id: errorMessageId.value,
16698
16899
  class: (0, vue.normalizeClass)(slotFns.value.errorMessage())
16699
- }, (0, vue.toDisplayString)(__props.errorMessage), 11, _hoisted_4$6)) : showDescription.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
16900
+ }, (0, vue.toDisplayString)(__props.errorMessage), 11, _hoisted_4$5)) : showDescription.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
16700
16901
  key: 1,
16701
16902
  id: descriptionId.value,
16702
16903
  class: (0, vue.normalizeClass)(slotFns.value.description())
16703
- }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_5$5)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$31);
16904
+ }, (0, vue.toDisplayString)(__props.description), 11, _hoisted_5$4)) : (0, vue.createCommentVNode)("", true)], 2)) : (0, vue.createCommentVNode)("", true)], 2)], 10, _hoisted_1$32);
16905
+ };
16906
+ }
16907
+ });
16908
+ //#endregion
16909
+ //#region src/components/autocomplete/AutocompleteOverflowChips.vue?vue&type=script&setup=true&lang.ts
16910
+ var _hoisted_1$31 = {
16911
+ ref: "container",
16912
+ style: {
16913
+ "display": "flex",
16914
+ "flex-wrap": "nowrap",
16915
+ "align-items": "center",
16916
+ "gap": "4px",
16917
+ "overflow": "hidden",
16918
+ "flex": "1",
16919
+ "min-width": "0"
16920
+ }
16921
+ };
16922
+ //#endregion
16923
+ //#region src/components/autocomplete/AutocompleteOverflowChips.vue
16924
+ var AutocompleteOverflowChips_default = /* @__PURE__ */ (0, vue.defineComponent)({
16925
+ __name: "AutocompleteOverflowChips",
16926
+ props: {
16927
+ values: {},
16928
+ getLabel: { type: Function },
16929
+ removeValue: { type: Function }
16930
+ },
16931
+ setup(__props) {
16932
+ const props = __props;
16933
+ const containerEl = (0, vue.useTemplateRef)("container");
16934
+ const visibleCount = (0, vue.ref)(props.values.length);
16935
+ const overflowCount = (0, vue.computed)(() => Math.max(0, props.values.length - visibleCount.value));
16936
+ let measuring = false;
16937
+ async function reflow() {
16938
+ if (measuring) return;
16939
+ measuring = true;
16940
+ try {
16941
+ const el = containerEl.value;
16942
+ if (!el) return;
16943
+ visibleCount.value = props.values.length;
16944
+ await (0, vue.nextTick)();
16945
+ const chips = [...el.querySelectorAll("[data-chip-item]")];
16946
+ if (!chips.length) return;
16947
+ const containerW = el.offsetWidth;
16948
+ if (!containerW) return;
16949
+ const BADGE_W = 76;
16950
+ let usedW = 0;
16951
+ let n = 0;
16952
+ for (let i = 0; i < chips.length; i++) {
16953
+ const gap = i > 0 ? 4 : 0;
16954
+ const chipW = chips[i].offsetWidth;
16955
+ const budget = i === chips.length - 1 ? containerW : containerW - BADGE_W;
16956
+ if (usedW + gap + chipW > budget) break;
16957
+ usedW += gap + chipW;
16958
+ n++;
16959
+ }
16960
+ visibleCount.value = Math.max(1, n);
16961
+ } finally {
16962
+ measuring = false;
16963
+ }
16964
+ }
16965
+ (0, vue.onMounted)(reflow);
16966
+ (0, _vueuse_core.useResizeObserver)(containerEl, reflow);
16967
+ (0, vue.watch)(() => props.values.join("\0"), () => reflow(), { flush: "post" });
16968
+ return (_ctx, _cache) => {
16969
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$31, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.values, (val, i) => {
16970
+ return (0, vue.openBlock)(), (0, vue.createBlock)(Chip_default, {
16971
+ key: val,
16972
+ "data-chip-item": "",
16973
+ size: "sm",
16974
+ "is-closable": "",
16975
+ style: (0, vue.normalizeStyle)(i >= visibleCount.value ? "display: none" : void 0),
16976
+ onClose: (0, vue.withModifiers)(($event) => __props.removeValue(val), ["stop"])
16977
+ }, {
16978
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.getLabel(val)), 1)]),
16979
+ _: 2
16980
+ }, 1032, ["style", "onClose"]);
16981
+ }), 128)), overflowCount.value > 0 ? ((0, vue.openBlock)(), (0, vue.createBlock)(Chip_default, {
16982
+ key: 0,
16983
+ size: "sm",
16984
+ color: "default"
16985
+ }, {
16986
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)(" +" + (0, vue.toDisplayString)(overflowCount.value) + " more ", 1)]),
16987
+ _: 1
16988
+ })) : (0, vue.createCommentVNode)("", true)], 512);
16704
16989
  };
16705
16990
  }
16706
16991
  });
@@ -16724,6 +17009,8 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16724
17009
  const ctx = useAutocompleteInject();
16725
17010
  const { focused: isFocused } = (0, _vueuse_core.useFocusWithin)((0, vue.useTemplateRef)("anchor"));
16726
17011
  const showInsideLabel = (0, vue.computed)(() => ctx.hasLabel.value && ctx.labelPlacement.value === "inside");
17012
+ const effectivePlaceholder = (0, vue.computed)(() => ctx.multiple.value && ctx.selectedValues.value.length > 0 ? void 0 : props.placeholder);
17013
+ const getLabel = (v) => ctx.selectedLabels.value.find((l) => l.value === v)?.label ?? v;
16727
17014
  return (_ctx, _cache) => {
16728
17015
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.AutocompleteAnchor), {
16729
17016
  ref: "anchor",
@@ -16733,6 +17020,7 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16733
17020
  "data-invalid": (0, vue.unref)(ctx).isInvalid.value || void 0,
16734
17021
  "data-disabled": (0, vue.unref)(ctx).isDisabled.value || void 0,
16735
17022
  "data-readonly": (0, vue.unref)(ctx).isReadonly.value || void 0,
17023
+ "data-multiple-overflow": (0, vue.unref)(ctx).multiple.value ? (0, vue.unref)(ctx).multipleOverflow.value : void 0,
16736
17024
  "data-slot": "trigger"
16737
17025
  }, {
16738
17026
  default: (0, vue.withCtx)(() => [
@@ -16746,15 +17034,38 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16746
17034
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.startContent()),
16747
17035
  "data-slot": "start-content"
16748
17036
  }, [(0, vue.renderSlot)(_ctx.$slots, "startContent")], 2)) : (0, vue.createCommentVNode)("", true),
17037
+ (0, vue.unref)(ctx).multiple.value && (0, vue.unref)(ctx).multipleOverflow.value === "collapse" && (0, vue.unref)(ctx).selectedValues.value.length > 0 ? ((0, vue.openBlock)(), (0, vue.createBlock)(AutocompleteOverflowChips_default, {
17038
+ key: 2,
17039
+ values: (0, vue.unref)(ctx).selectedValues.value,
17040
+ "get-label": getLabel,
17041
+ "remove-value": (0, vue.unref)(ctx).removeValue
17042
+ }, null, 8, ["values", "remove-value"])) : (0, vue.unref)(ctx).multiple.value && (0, vue.unref)(ctx).multipleOverflow.value === "wrap" ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 3 }, (0, vue.renderList)((0, vue.unref)(ctx).selectedLabels.value, (item) => {
17043
+ return (0, vue.openBlock)(), (0, vue.createBlock)(Chip_default, {
17044
+ key: item.value,
17045
+ size: "sm",
17046
+ "is-closable": "",
17047
+ "close-aria-label": `Remove ${item.label}`,
17048
+ "data-slot": "selected-chip",
17049
+ onClose: (0, vue.withModifiers)(($event) => (0, vue.unref)(ctx).removeValue(item.value), ["stop"])
17050
+ }, {
17051
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(item.label), 1)]),
17052
+ _: 2
17053
+ }, 1032, ["close-aria-label", "onClose"]);
17054
+ }), 128)) : (0, vue.createCommentVNode)("", true),
16749
17055
  (0, vue.createVNode)((0, vue.unref)(reka_ui.AutocompleteInput), {
16750
17056
  id: (0, vue.unref)(ctx).inputId.value,
16751
- placeholder: props.placeholder,
17057
+ placeholder: effectivePlaceholder.value,
16752
17058
  disabled: (0, vue.unref)(ctx).isDisabled.value,
16753
17059
  readonly: (0, vue.unref)(ctx).isReadonly.value,
16754
17060
  required: (0, vue.unref)(ctx).isRequired.value,
16755
17061
  "aria-invalid": (0, vue.unref)(ctx).isInvalid.value || void 0,
16756
17062
  "aria-describedby": (0, vue.unref)(ctx).ariaDescribedBy.value,
16757
17063
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.input()),
17064
+ style: (0, vue.normalizeStyle)((0, vue.unref)(ctx).multiple.value && (0, vue.unref)(ctx).multipleOverflow.value === "collapse" && (0, vue.unref)(ctx).selectedValues.value.length > 0 ? {
17065
+ flex: "0 0 auto",
17066
+ minWidth: "80px",
17067
+ width: "auto"
17068
+ } : void 0),
16758
17069
  "data-slot": "input",
16759
17070
  autocomplete: "off"
16760
17071
  }, null, 8, [
@@ -16765,15 +17076,17 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16765
17076
  "required",
16766
17077
  "aria-invalid",
16767
17078
  "aria-describedby",
16768
- "class"
17079
+ "class",
17080
+ "style"
16769
17081
  ]),
16770
17082
  (0, vue.createVNode)((0, vue.unref)(reka_ui.AutocompleteCancel), {
16771
17083
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.clearButton()),
16772
17084
  "data-empty": !(0, vue.unref)(ctx).isFilled.value || (0, vue.unref)(ctx).isReadonly.value || (0, vue.unref)(ctx).isDisabled.value ? "true" : void 0,
16773
17085
  "data-slot": "clear-button",
16774
- "aria-label": "Clear"
17086
+ "aria-label": "Clear",
17087
+ onClick: _cache[0] || (_cache[0] = ($event) => (0, vue.unref)(ctx).multiple.value ? (0, vue.unref)(ctx).clearAll() : void 0)
16775
17088
  }, {
16776
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "clearIcon", {}, () => [_cache[0] || (_cache[0] = (0, vue.createElementVNode)("svg", {
17089
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "clearIcon", {}, () => [_cache[1] || (_cache[1] = (0, vue.createElementVNode)("svg", {
16777
17090
  xmlns: "http://www.w3.org/2000/svg",
16778
17091
  width: "10",
16779
17092
  height: "10",
@@ -16799,19 +17112,19 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16799
17112
  _: 3
16800
17113
  }, 8, ["class", "data-empty"]),
16801
17114
  (0, vue.unref)(ctx).isLoading.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", {
16802
- key: 2,
17115
+ key: 4,
16803
17116
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.indicator()),
16804
17117
  "data-slot": "autocomplete-loading-indicator",
16805
17118
  role: "status",
16806
17119
  "aria-live": "polite",
16807
17120
  "aria-label": "Loading suggestions"
16808
17121
  }, [(0, vue.createVNode)(Spinner_default, { size: "sm" })], 2)) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.AutocompleteTrigger), {
16809
- key: 3,
17122
+ key: 5,
16810
17123
  class: (0, vue.normalizeClass)((0, vue.unref)(ctx).slots.value.indicator()),
16811
17124
  "data-slot": "autocomplete-default-indicator",
16812
17125
  "aria-label": "Toggle suggestions"
16813
17126
  }, {
16814
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "triggerIcon", {}, () => [_cache[1] || (_cache[1] = (0, vue.createElementVNode)("svg", {
17127
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "triggerIcon", {}, () => [_cache[2] || (_cache[2] = (0, vue.createElementVNode)("svg", {
16815
17128
  xmlns: "http://www.w3.org/2000/svg",
16816
17129
  width: "16",
16817
17130
  height: "16",
@@ -16833,7 +17146,8 @@ var AutocompleteInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
16833
17146
  "data-focused",
16834
17147
  "data-invalid",
16835
17148
  "data-disabled",
16836
- "data-readonly"
17149
+ "data-readonly",
17150
+ "data-multiple-overflow"
16837
17151
  ]);
16838
17152
  };
16839
17153
  }
@@ -16962,6 +17276,11 @@ var _hoisted_1$28 = {
16962
17276
  class: "autocomplete-item__text",
16963
17277
  "data-slot": "item-text"
16964
17278
  };
17279
+ var _hoisted_2$16 = {
17280
+ key: 1,
17281
+ class: "list-box-item__indicator",
17282
+ "data-slot": "list-box-item-indicator"
17283
+ };
16965
17284
  //#endregion
16966
17285
  //#region src/components/autocomplete/AutocompleteItem.vue
16967
17286
  var AutocompleteItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
@@ -16990,25 +17309,35 @@ var AutocompleteItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
16990
17309
  if (!vnodes) return props.value;
16991
17310
  return extractText(vnodes).trim() || props.value;
16992
17311
  });
17312
+ const isChecked = (0, vue.computed)(() => ctx.multiple.value && ctx.isSelected(props.value));
16993
17313
  (0, vue.onMounted)(() => {
16994
17314
  ctx.registerItem(props.value, displayText.value);
16995
17315
  });
16996
17316
  (0, vue.onUnmounted)(() => {
16997
17317
  ctx.unregisterItem(props.value);
16998
17318
  });
17319
+ function handleSelect(event) {
17320
+ if (ctx.multiple.value) {
17321
+ event.preventDefault();
17322
+ ctx.onMultipleSelect(props.value);
17323
+ }
17324
+ }
16999
17325
  return (_ctx, _cache) => {
17000
17326
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.AutocompleteItem), {
17001
17327
  value: displayText.value,
17002
17328
  "text-value": displayText.value,
17003
17329
  disabled: props.isDisabled,
17004
17330
  "data-item-value": props.value,
17331
+ "data-selected": isChecked.value || void 0,
17005
17332
  class: "list-box-item list-box-item--default",
17006
- "data-slot": "list-box-item"
17333
+ "data-slot": "list-box-item",
17334
+ onSelect: handleSelect
17007
17335
  }, {
17008
17336
  default: (0, vue.withCtx)(() => [
17009
17337
  (0, vue.renderSlot)(_ctx.$slots, "startContent"),
17010
17338
  (0, vue.createElementVNode)("span", _hoisted_1$28, [(0, vue.renderSlot)(_ctx.$slots, "default")]),
17011
- (0, vue.createVNode)((0, vue.unref)(reka_ui.ComboboxItemIndicator), {
17339
+ !(0, vue.unref)(ctx).multiple.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.ComboboxItemIndicator), {
17340
+ key: 0,
17012
17341
  class: "list-box-item__indicator",
17013
17342
  "data-slot": "list-box-item-indicator"
17014
17343
  }, {
@@ -17026,7 +17355,19 @@ var AutocompleteItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
17026
17355
  "aria-hidden": "true"
17027
17356
  }, [(0, vue.createElementVNode)("polyline", { points: "20 6 9 17 4 12" })], -1))])]),
17028
17357
  _: 3
17029
- }),
17358
+ })) : isChecked.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_2$16, [(0, vue.renderSlot)(_ctx.$slots, "selectedIcon", {}, () => [_cache[1] || (_cache[1] = (0, vue.createElementVNode)("svg", {
17359
+ xmlns: "http://www.w3.org/2000/svg",
17360
+ width: "12",
17361
+ height: "12",
17362
+ viewBox: "0 0 24 24",
17363
+ fill: "none",
17364
+ stroke: "currentColor",
17365
+ "stroke-width": "3",
17366
+ "stroke-linecap": "round",
17367
+ "stroke-linejoin": "round",
17368
+ "data-slot": "list-box-item-indicator--checkmark",
17369
+ "aria-hidden": "true"
17370
+ }, [(0, vue.createElementVNode)("polyline", { points: "20 6 9 17 4 12" })], -1))])])) : (0, vue.createCommentVNode)("", true),
17030
17371
  (0, vue.renderSlot)(_ctx.$slots, "endContent")
17031
17372
  ]),
17032
17373
  _: 3
@@ -17034,293 +17375,62 @@ var AutocompleteItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
17034
17375
  "value",
17035
17376
  "text-value",
17036
17377
  "disabled",
17037
- "data-item-value"
17038
- ]);
17039
- };
17040
- }
17041
- });
17042
- //#endregion
17043
- //#region src/components/tag-group/TagGroup.context.ts
17044
- var { useProvide: useTagGroupProvide, useInject: useTagGroupInject, key: tagGroupContextKey } = createContext("TagGroup");
17045
- //#endregion
17046
- //#region src/components/tag-group/TagGroupInput.vue
17047
- var TagGroupInput_default = /* @__PURE__ */ (0, vue.defineComponent)({
17048
- __name: "TagGroupInput",
17049
- props: {
17050
- placeholder: { default: void 0 },
17051
- class: { default: void 0 }
17052
- },
17053
- setup(__props) {
17054
- const props = __props;
17055
- const ctx = useTagGroupInject({
17056
- variant: (0, vue.computed)(() => "default"),
17057
- size: (0, vue.computed)(() => "md"),
17058
- isDisabled: (0, vue.computed)(() => false),
17059
- readOnly: (0, vue.computed)(() => false)
17060
- });
17061
- const isDisabled = (0, vue.computed)(() => ctx.isDisabled.value);
17062
- return (_ctx, _cache) => {
17063
- return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.TagsInputInput), {
17064
- placeholder: __props.placeholder,
17065
- disabled: isDisabled.value || void 0,
17066
- class: (0, vue.normalizeClass)(props.class),
17067
- "data-slot": "input"
17068
- }, null, 8, [
17069
- "placeholder",
17070
- "disabled",
17071
- "class"
17378
+ "data-item-value",
17379
+ "data-selected"
17072
17380
  ]);
17073
17381
  };
17074
17382
  }
17075
17383
  });
17076
17384
  //#endregion
17077
- //#region src/components/tag-group/TagGroup.vue?vue&type=script&setup=true&lang.ts
17078
- var _hoisted_1$27 = [
17079
- "data-invalid",
17080
- "data-required",
17081
- "data-disabled",
17082
- "data-readonly"
17083
- ];
17084
- var _hoisted_2$16 = ["id"];
17085
- var _hoisted_3$10 = {
17086
- key: 0,
17087
- "aria-hidden": "true"
17088
- };
17089
- var _hoisted_4$5 = {
17090
- key: 1,
17091
- class: "flex flex-col gap-0.5 px-1",
17092
- "data-slot": "helper-wrapper"
17093
- };
17094
- var _hoisted_5$4 = {
17095
- key: 0,
17096
- class: "text-sm text-danger",
17097
- "data-slot": "error-message",
17098
- "aria-live": "polite"
17099
- };
17100
- var _hoisted_6$4 = {
17101
- key: 1,
17102
- class: "text-sm text-default-400",
17103
- "data-slot": "description"
17385
+ //#region src/components/autocomplete/AutocompleteCreateItem.vue?vue&type=script&setup=true&lang.ts
17386
+ var _hoisted_1$27 = {
17387
+ class: "autocomplete-item__text",
17388
+ "data-slot": "item-text"
17104
17389
  };
17105
17390
  //#endregion
17106
- //#region src/components/tag-group/TagGroup.vue
17107
- var TagGroup_default = /* @__PURE__ */ (0, vue.defineComponent)({
17108
- __name: "TagGroup",
17109
- props: {
17110
- modelValue: { default: void 0 },
17111
- defaultValue: { default: () => [] },
17112
- label: { default: void 0 },
17113
- placeholder: { default: "Add a tag" },
17114
- description: { default: void 0 },
17115
- errorMessage: { default: void 0 },
17116
- isInvalid: {
17117
- type: Boolean,
17118
- default: false
17119
- },
17120
- isDisabled: {
17121
- type: Boolean,
17122
- default: false
17123
- },
17124
- readOnly: {
17125
- type: Boolean,
17126
- default: false
17127
- },
17128
- isRequired: {
17129
- type: Boolean,
17130
- default: false
17131
- },
17132
- allowsDuplicates: {
17133
- type: Boolean,
17134
- default: false
17135
- },
17136
- maxTags: { default: void 0 },
17137
- delimiter: { default: "," },
17138
- variant: { default: "default" },
17139
- size: { default: "md" },
17140
- class: { default: void 0 }
17141
- },
17142
- emits: [
17143
- "update:modelValue",
17144
- "add",
17145
- "remove",
17146
- "invalid"
17147
- ],
17148
- setup(__props, { emit: __emit }) {
17149
- const props = __props;
17150
- const emit = __emit;
17151
- const labelId = (0, vue.useId)();
17152
- const slotFns = (0, _auronui_styles.tagGroupVariants)();
17153
- useTagGroupProvide({
17154
- variant: (0, vue.toRef)(props, "variant"),
17155
- size: (0, vue.toRef)(props, "size"),
17156
- isDisabled: (0, vue.toRef)(props, "isDisabled"),
17157
- readOnly: (0, vue.toRef)(props, "readOnly")
17158
- });
17159
- function onUpdateModelValue(value) {
17160
- emit("update:modelValue", value);
17161
- }
17162
- return (_ctx, _cache) => {
17163
- return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", {
17164
- class: (0, vue.normalizeClass)((0, vue.unref)(slotFns).base()),
17165
- "data-invalid": props.isInvalid || void 0,
17166
- "data-required": props.isRequired || void 0,
17167
- "data-disabled": props.isDisabled || void 0,
17168
- "data-readonly": props.readOnly || void 0,
17169
- "data-slot": "tag-group"
17170
- }, [
17171
- props.label ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("label", {
17172
- key: 0,
17173
- id: (0, vue.unref)(labelId),
17174
- class: "text-sm font-medium text-default-foreground w-fit",
17175
- "data-slot": "label"
17176
- }, [(0, vue.createTextVNode)((0, vue.toDisplayString)(props.label) + " ", 1), props.isRequired ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_3$10, " *")) : (0, vue.createCommentVNode)("", true)], 8, _hoisted_2$16)) : (0, vue.createCommentVNode)("", true),
17177
- (0, vue.createVNode)((0, vue.unref)(reka_ui.TagsInputRoot), {
17178
- "model-value": props.modelValue,
17179
- "default-value": props.defaultValue,
17180
- disabled: props.isDisabled,
17181
- max: props.maxTags ?? 0,
17182
- delimiter: props.delimiter,
17183
- duplicate: props.allowsDuplicates,
17184
- "aria-labelledby": props.label ? (0, vue.unref)(labelId) : void 0,
17185
- "aria-invalid": props.isInvalid || void 0,
17186
- "aria-required": props.isRequired || void 0,
17187
- class: (0, vue.normalizeClass)((0, vue.unref)(slotFns).list()),
17188
- "onUpdate:modelValue": onUpdateModelValue
17189
- }, {
17190
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default"), !props.readOnly ? ((0, vue.openBlock)(), (0, vue.createBlock)(TagGroupInput_default, {
17191
- key: 0,
17192
- placeholder: props.placeholder
17193
- }, null, 8, ["placeholder"])) : (0, vue.createCommentVNode)("", true)]),
17194
- _: 3
17195
- }, 8, [
17196
- "model-value",
17197
- "default-value",
17198
- "disabled",
17199
- "max",
17200
- "delimiter",
17201
- "duplicate",
17202
- "aria-labelledby",
17203
- "aria-invalid",
17204
- "aria-required",
17205
- "class"
17206
- ]),
17207
- props.description || props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_4$5, [props.isInvalid && props.errorMessage ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_5$4, (0, vue.toDisplayString)(props.errorMessage), 1)) : props.description ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_6$4, (0, vue.toDisplayString)(props.description), 1)) : (0, vue.createCommentVNode)("", true)])) : (0, vue.createCommentVNode)("", true)
17208
- ], 10, _hoisted_1$27);
17209
- };
17210
- }
17211
- });
17212
- //#endregion
17213
- //#region src/components/tag/TagText.vue
17214
- var TagText_default = /* @__PURE__ */ (0, vue.defineComponent)({
17215
- __name: "TagText",
17216
- setup(__props) {
17217
- return (_ctx, _cache) => {
17218
- return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.TagsInputItemText), null, {
17219
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default")]),
17220
- _: 3
17221
- });
17222
- };
17223
- }
17224
- });
17225
- //#endregion
17226
- //#region src/components/tag/TagDelete.vue
17227
- var TagDelete_default = /* @__PURE__ */ (0, vue.defineComponent)({
17228
- __name: "TagDelete",
17229
- emits: ["remove"],
17230
- setup(__props, { emit: __emit }) {
17231
- const emit = __emit;
17232
- const slots = (0, _auronui_styles.tagVariants)();
17233
- function handleClick() {
17234
- emit("remove");
17235
- }
17236
- return (_ctx, _cache) => {
17237
- return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.TagsInputItemDelete), {
17238
- class: (0, vue.normalizeClass)((0, vue.unref)(slots).removeButton()),
17239
- "aria-label": "Remove tag",
17240
- onClick: handleClick
17241
- }, {
17242
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default", {}, () => [_cache[0] || (_cache[0] = (0, vue.createElementVNode)("svg", {
17243
- xmlns: "http://www.w3.org/2000/svg",
17244
- viewBox: "0 0 24 24",
17245
- fill: "none",
17246
- stroke: "currentColor",
17247
- "stroke-width": "2",
17248
- "stroke-linecap": "round",
17249
- "stroke-linejoin": "round",
17250
- "aria-hidden": "true",
17251
- focusable: "false"
17252
- }, [(0, vue.createElementVNode)("line", {
17253
- x1: "18",
17254
- y1: "6",
17255
- x2: "6",
17256
- y2: "18"
17257
- }), (0, vue.createElementVNode)("line", {
17258
- x1: "6",
17259
- y1: "6",
17260
- x2: "18",
17261
- y2: "18"
17262
- })], -1))])]),
17263
- _: 3
17264
- }, 8, ["class"]);
17265
- };
17266
- }
17267
- });
17268
- //#endregion
17269
- //#region src/components/tag/Tag.vue
17270
- var Tag_default = /* @__PURE__ */ (0, vue.defineComponent)({
17271
- __name: "Tag",
17391
+ //#region src/components/autocomplete/AutocompleteCreateItem.vue
17392
+ var AutocompleteCreateItem_default = /* @__PURE__ */ (0, vue.defineComponent)({
17393
+ __name: "AutocompleteCreateItem",
17272
17394
  props: {
17273
- value: {},
17274
- textValue: { default: void 0 },
17275
- isDisabled: {
17276
- type: Boolean,
17395
+ label: {
17396
+ type: [String, Function],
17277
17397
  default: void 0
17278
17398
  },
17279
- isReadOnly: {
17280
- type: Boolean,
17281
- default: void 0
17282
- },
17283
- variant: { default: void 0 },
17284
- size: { default: void 0 },
17285
17399
  class: { default: void 0 }
17286
17400
  },
17287
- emits: ["remove"],
17288
- setup(__props, { emit: __emit }) {
17401
+ setup(__props) {
17289
17402
  const props = __props;
17290
- const emit = __emit;
17291
- const groupCtx = (0, vue.inject)(tagGroupContextKey, null);
17292
- const resolvedVariant = (0, vue.computed)(() => props.variant ?? groupCtx?.variant.value ?? "default");
17293
- const resolvedSize = (0, vue.computed)(() => props.size ?? groupCtx?.size.value ?? "md");
17294
- const resolvedIsDisabled = (0, vue.computed)(() => props.isDisabled ?? groupCtx?.isDisabled.value ?? false);
17295
- const resolvedReadOnly = (0, vue.computed)(() => props.isReadOnly ?? groupCtx?.readOnly.value ?? false);
17296
- const slotFns = (0, vue.computed)(() => (0, _auronui_styles.tagVariants)({
17297
- variant: resolvedVariant.value,
17298
- size: resolvedSize.value
17299
- }));
17300
- const showDelete = (0, vue.computed)(() => !resolvedReadOnly.value && !resolvedIsDisabled.value);
17301
- function onRemove() {
17302
- emit("remove", props.value);
17403
+ const ctx = useAutocompleteInject();
17404
+ const comboboxCtx = (0, reka_ui.injectComboboxRootContext)();
17405
+ const term = (0, vue.computed)(() => ctx.searchTerm.value.trim());
17406
+ const isVisible = (0, vue.computed)(() => !!term.value && !ctx.hasExactMatch.value);
17407
+ const displayLabel = (0, vue.computed)(() => {
17408
+ if (typeof props.label === "function") return props.label(term.value);
17409
+ return props.label ?? `Create "${term.value}"`;
17410
+ });
17411
+ function handleSelect(event) {
17412
+ event.preventDefault();
17413
+ ctx.onCreateValue(term.value);
17414
+ if (ctx.multiple.value) comboboxCtx.inputElement.value?.focus();
17415
+ else comboboxCtx.onOpenChange(false);
17303
17416
  }
17304
17417
  return (_ctx, _cache) => {
17305
- return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.TagsInputItem), {
17306
- value: __props.value,
17307
- disabled: resolvedIsDisabled.value || void 0,
17308
- class: (0, vue.normalizeClass)((0, vue.unref)(composeClassName)(slotFns.value.base(), props.class)),
17309
- "data-slot": "tag"
17418
+ return isVisible.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.AutocompleteItem), {
17419
+ key: term.value,
17420
+ value: term.value,
17421
+ "text-value": term.value,
17422
+ class: (0, vue.normalizeClass)(["list-box-item list-box-item--default", props.class]),
17423
+ "data-slot": "list-box-item",
17424
+ "data-create-item": "",
17425
+ onSelect: handleSelect
17310
17426
  }, {
17311
- default: (0, vue.withCtx)(() => [(0, vue.createVNode)(TagText_default, null, {
17312
- default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default", {}, () => [(0, vue.createTextVNode)((0, vue.toDisplayString)(__props.textValue ?? __props.value), 1)])]),
17313
- _: 3
17314
- }), showDelete.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(TagDelete_default, {
17315
- key: 0,
17316
- onRemove
17317
- })) : (0, vue.createCommentVNode)("", true)]),
17427
+ default: (0, vue.withCtx)(() => [(0, vue.renderSlot)(_ctx.$slots, "default", { term: term.value }, () => [(0, vue.createElementVNode)("span", _hoisted_1$27, (0, vue.toDisplayString)(displayLabel.value), 1)])]),
17318
17428
  _: 3
17319
17429
  }, 8, [
17320
17430
  "value",
17321
- "disabled",
17431
+ "text-value",
17322
17432
  "class"
17323
- ]);
17433
+ ])) : (0, vue.createCommentVNode)("", true);
17324
17434
  };
17325
17435
  }
17326
17436
  });
@@ -27039,6 +27149,7 @@ exports.AlertTitle = AlertTitle_default;
27039
27149
  exports.AspectRatio = AspectRatio_default;
27040
27150
  exports.Autocomplete = Autocomplete_default;
27041
27151
  exports.AutocompleteContent = AutocompleteContent_default;
27152
+ exports.AutocompleteCreateItem = AutocompleteCreateItem_default;
27042
27153
  exports.AutocompleteInput = AutocompleteInput_default;
27043
27154
  exports.AutocompleteItem = AutocompleteItem_default;
27044
27155
  exports.Avatar = Avatar_default;
@@ -27181,11 +27292,7 @@ exports.TableHeader = TableHeader_default;
27181
27292
  exports.TableHeaderCell = TableHeaderCell_default;
27182
27293
  exports.TableRow = TableRow_default;
27183
27294
  exports.Tabs = Tabs_default;
27184
- exports.Tag = Tag_default;
27185
- exports.TagDelete = TagDelete_default;
27186
- exports.TagGroup = TagGroup_default;
27187
- exports.TagGroupInput = TagGroupInput_default;
27188
- exports.TagText = TagText_default;
27295
+ exports.Tag = Chip_default;
27189
27296
  exports.Text = Text_default;
27190
27297
  exports.Textarea = Textarea_default;
27191
27298
  exports.TimeField = TimeField_default;
@@ -27230,7 +27337,6 @@ exports.stepperContextKey = stepperContextKey;
27230
27337
  exports.surfaceContextKey = surfaceContextKey;
27231
27338
  exports.switchGroupContextKey = switchGroupContextKey;
27232
27339
  exports.tableContextKey = tableContextKey;
27233
- exports.tagGroupContextKey = tagGroupContextKey;
27234
27340
  exports.treeContextKey = treeContextKey;
27235
27341
  exports.useAutocompleteInject = useAutocompleteInject;
27236
27342
  exports.useAutocompleteProvide = useAutocompleteProvide;
@@ -27258,8 +27364,6 @@ exports.useSwitchGroupProvide = useSwitchGroupProvide;
27258
27364
  exports.useTableInject = useTableInject;
27259
27365
  exports.useTableKeyboardNav = useTableKeyboardNav;
27260
27366
  exports.useTableProvide = useTableProvide;
27261
- exports.useTagGroupInject = useTagGroupInject;
27262
- exports.useTagGroupProvide = useTagGroupProvide;
27263
27367
  exports.useToast = useToast;
27264
27368
 
27265
27369
  //# sourceMappingURL=index.cjs.map