@bridge-ui/vue 0.7.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/ai/skills/bridge-ui-components/SKILL.md +2 -1
  2. package/ai/skills/bridge-ui-forms/SKILL.md +1 -1
  3. package/dist/Components/Accordion/composables/useAccordion.d.ts +1 -1
  4. package/dist/Components/ActionFooter/ActionFooter.js +5 -0
  5. package/dist/Components/ActionFooter/ActionFooter.vue.d.ts +10 -0
  6. package/dist/Components/ActionFooter/ActionFooter.vue_vue_type_script_setup_true_lang.js +35 -0
  7. package/dist/Components/ActionFooter/actionFooter.types.d.ts +107 -0
  8. package/dist/Components/ActionFooter/composables/useActionFooter.d.ts +35 -0
  9. package/dist/Components/ActionFooter/composables/useActionFooter.js +53 -0
  10. package/dist/Components/ActionFooter/index.d.ts +3 -0
  11. package/dist/Components/ActionFooter/index.js +3 -0
  12. package/dist/Components/Alert/Alert.vue_vue_type_script_setup_true_lang.js +13 -13
  13. package/dist/Components/Alert/alert.types.d.ts +7 -4
  14. package/dist/Components/Alert/composables/useAlert.d.ts +2 -1
  15. package/dist/Components/Alert/composables/useAlert.js +60 -57
  16. package/dist/Components/Autocomplete/Autocomplete.vue.d.ts +3 -3
  17. package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +2 -1
  18. package/dist/Components/Autocomplete/autocomplete.types.d.ts +1 -1
  19. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +5 -3
  20. package/dist/Components/Autocomplete/composables/useAutocomplete.js +1 -1
  21. package/dist/Components/Badge/composables/useBadge.d.ts +1 -1
  22. package/dist/Components/BaseField/BaseField.vue_vue_type_script_setup_true_lang.js +9 -9
  23. package/dist/Components/BaseField/baseField.types.d.ts +15 -4
  24. package/dist/Components/BaseField/composables/useBaseField.d.ts +6 -2
  25. package/dist/Components/BaseField/composables/useBaseField.js +67 -67
  26. package/dist/Components/BreadcrumbItem/composables/useBreadcrumbItem.d.ts +3 -3
  27. package/dist/Components/Button/Button.vue_vue_type_script_setup_true_lang.js +24 -25
  28. package/dist/Components/Button/composables/useButton.d.ts +4 -2
  29. package/dist/Components/Button/composables/useButton.js +46 -40
  30. package/dist/Components/ButtonGroup/composables/useButtonGroup.d.ts +1 -1
  31. package/dist/Components/Calendar/composables/useCalendar.d.ts +1 -1
  32. package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +1 -1
  33. package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +1 -1
  34. package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +1 -1
  35. package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +1 -1
  36. package/dist/Components/Card/composables/useCard.d.ts +1 -1
  37. package/dist/Components/Chip/Chip.vue.d.ts +1 -1
  38. package/dist/Components/Chip/composables/useChip.d.ts +1 -1
  39. package/dist/Components/ColorField/ColorField.vue.d.ts +1 -1
  40. package/dist/Components/ColorField/ColorField.vue_vue_type_script_setup_true_lang.js +2 -1
  41. package/dist/Components/ColorField/colorField.types.d.ts +1 -1
  42. package/dist/Components/ColorField/composables/useColorField.d.ts +5 -3
  43. package/dist/Components/ColorField/composables/useColorField.js +1 -1
  44. package/dist/Components/ColorPicker/ColorPicker.vue_vue_type_script_setup_true_lang.js +41 -40
  45. package/dist/Components/ColorPicker/composables/useColorPicker.d.ts +1 -3
  46. package/dist/Components/ColorPicker/composables/useColorPicker.js +0 -2
  47. package/dist/Components/DataTable/DataTable.vue_vue_type_script_setup_true_lang.js +8 -0
  48. package/dist/Components/DataTable/DataTableFilterMenu.vue_vue_type_script_setup_true_lang.js +1 -1
  49. package/dist/Components/DataTable/composables/useDataTable.d.ts +1 -1
  50. package/dist/Components/DataTable/composables/useDataTable.js +86 -86
  51. package/dist/Components/DataTable/composables/useDataTablePagination.d.ts +1 -1
  52. package/dist/Components/DataTable/dataTable.types.d.ts +22 -4
  53. package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +2 -1
  54. package/dist/Components/DateField/composables/useDateField.d.ts +5 -3
  55. package/dist/Components/DateField/composables/useDateField.js +1 -1
  56. package/dist/Components/DateField/dateField.types.d.ts +1 -1
  57. package/dist/Components/DatePicker/DatePicker.vue_vue_type_script_setup_true_lang.js +18 -17
  58. package/dist/Components/DatePicker/composables/useDatePicker.d.ts +1 -3
  59. package/dist/Components/DatePicker/composables/useDatePicker.js +45 -48
  60. package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +2 -1
  61. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +5 -3
  62. package/dist/Components/DateRangeField/composables/useDateRangeField.js +1 -1
  63. package/dist/Components/DateRangeField/dateRangeField.types.d.ts +1 -1
  64. package/dist/Components/DateRangePicker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +18 -17
  65. package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +1 -3
  66. package/dist/Components/DateRangePicker/composables/useDateRangePicker.js +45 -48
  67. package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +2 -1
  68. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +5 -3
  69. package/dist/Components/DateTimeField/composables/useDateTimeField.js +1 -1
  70. package/dist/Components/DateTimeField/dateTimeField.types.d.ts +1 -1
  71. package/dist/Components/DateTimePicker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +25 -24
  72. package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +1 -3
  73. package/dist/Components/DateTimePicker/composables/useDateTimePicker.js +75 -78
  74. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +2 -1
  75. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +5 -3
  76. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.js +1 -1
  77. package/dist/Components/DateTimeRangeField/dateTimeRangeField.types.d.ts +1 -1
  78. package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +29 -28
  79. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +1 -3
  80. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.js +84 -87
  81. package/dist/Components/Drawer/composables/useDrawer.js +75 -72
  82. package/dist/Components/FormControl/composables/useFormControl.d.ts +3 -1
  83. package/dist/Components/FormControl/composables/useFormControl.js +39 -38
  84. package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +3 -3
  85. package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +31 -31
  86. package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +3 -3
  87. package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +34 -34
  88. package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +3 -3
  89. package/dist/Components/FormField/composables/useFormField.d.ts +7 -3
  90. package/dist/Components/FormField/composables/useFormField.js +148 -144
  91. package/dist/Components/FormField/formField.types.d.ts +14 -4
  92. package/dist/Components/ListItem/ListItem.vue.d.ts +1 -1
  93. package/dist/Components/ListItem/composables/useListItem.d.ts +1 -1
  94. package/dist/Components/Listbox/Listbox.vue.d.ts +4 -4
  95. package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +69 -71
  96. package/dist/Components/Listbox/composables/useListbox.d.ts +0 -2
  97. package/dist/Components/Listbox/composables/useListbox.js +63 -66
  98. package/dist/Components/Menu/composables/useMenu.js +125 -121
  99. package/dist/Components/Modal/composables/useModal.js +117 -114
  100. package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +1 -0
  101. package/dist/Components/NumberField/composables/useNumberField.d.ts +4 -2
  102. package/dist/Components/OtpField/OtpField.vue.d.ts +1 -8
  103. package/dist/Components/OtpField/OtpField.vue_vue_type_script_setup_true_lang.js +7 -6
  104. package/dist/Components/OtpField/composables/useOtpField.d.ts +3 -1
  105. package/dist/Components/Pagination/composables/usePagination.d.ts +1 -1
  106. package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +1 -0
  107. package/dist/Components/PasswordField/composables/usePasswordField.d.ts +4 -2
  108. package/dist/Components/Select/Select.vue.d.ts +2 -2
  109. package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +2 -1
  110. package/dist/Components/Select/composables/useSelect.d.ts +5 -3
  111. package/dist/Components/Select/composables/useSelect.js +1 -1
  112. package/dist/Components/Select/select.types.d.ts +1 -1
  113. package/dist/Components/Sidebar/composables/useSidebarList.js +1 -1
  114. package/dist/Components/Sidebar/composables/useSidebarShell.js +1 -1
  115. package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +1 -0
  116. package/dist/Components/Slider/composables/useSlider.d.ts +5 -3
  117. package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +31 -28
  118. package/dist/Components/Snackbar/composables/useSnackbar.d.ts +2 -1
  119. package/dist/Components/Snackbar/composables/useSnackbar.js +135 -128
  120. package/dist/Components/Step/composables/useStep.d.ts +1 -1
  121. package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +1 -0
  122. package/dist/Components/TextField/composables/useTextField.d.ts +4 -2
  123. package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +1 -0
  124. package/dist/Components/Textarea/composables/useTextarea.d.ts +4 -2
  125. package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +2 -1
  126. package/dist/Components/TimeField/composables/useTimeField.d.ts +5 -3
  127. package/dist/Components/TimeField/composables/useTimeField.js +1 -1
  128. package/dist/Components/TimeField/timeField.types.d.ts +1 -1
  129. package/dist/Components/TimePanel/composables/useTimePanel.d.ts +1 -1
  130. package/dist/Components/TimePicker/TimePicker.vue_vue_type_script_setup_true_lang.js +38 -37
  131. package/dist/Components/TimePicker/composables/useTimePicker.d.ts +1 -3
  132. package/dist/Components/TimePicker/composables/useTimePicker.js +54 -57
  133. package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +2 -1
  134. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +5 -3
  135. package/dist/Components/TimeRangeField/composables/useTimeRangeField.js +1 -1
  136. package/dist/Components/TimeRangeField/timeRangeField.types.d.ts +1 -1
  137. package/dist/Components/TimeRangePicker/TimeRangePicker.vue_vue_type_script_setup_true_lang.js +61 -60
  138. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +1 -3
  139. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.js +41 -43
  140. package/dist/Components/ToggleGroup/composables/useToggleGroup.d.ts +1 -1
  141. package/dist/Components/Tooltip/Tooltip.vue.d.ts +1 -1
  142. package/dist/Components/Tooltip/composables/useTooltip.d.ts +1 -1
  143. package/dist/Components/Tooltip/composables/useTooltip.js +6 -1
  144. package/dist/Utils/index.d.ts +11 -2
  145. package/dist/Utils/index.js +31 -27
  146. package/dist/augments.d.ts +13 -8
  147. package/dist/index.d.ts +2 -0
  148. package/dist/index.js +162 -160
  149. package/docs/README.md +1 -0
  150. package/docs/components/ActionFooter.md +85 -0
  151. package/docs/components/Alert.md +4 -2
  152. package/docs/components/Autocomplete.md +2 -2
  153. package/docs/components/BaseField.md +19 -18
  154. package/docs/components/BridgeUIProvider.md +30 -7
  155. package/docs/components/ColorField.md +1 -1
  156. package/docs/components/ColorPicker.md +1 -1
  157. package/docs/components/DataTable.md +16 -4
  158. package/docs/components/DateField.md +1 -1
  159. package/docs/components/DatePicker.md +1 -1
  160. package/docs/components/DateRangeField.md +1 -1
  161. package/docs/components/DateRangePicker.md +1 -1
  162. package/docs/components/DateTimeField.md +1 -1
  163. package/docs/components/DateTimePicker.md +1 -1
  164. package/docs/components/DateTimeRangeField.md +1 -1
  165. package/docs/components/DateTimeRangePicker.md +1 -1
  166. package/docs/components/FormControl.md +1 -1
  167. package/docs/components/FormField.md +28 -27
  168. package/docs/components/Select.md +2 -2
  169. package/docs/components/TimeField.md +1 -1
  170. package/docs/components/TimePicker.md +1 -1
  171. package/docs/components/TimeRangeField.md +1 -1
  172. package/docs/components/TimeRangePicker.md +1 -1
  173. package/package.json +2 -2
@@ -436,7 +436,7 @@ export declare function useAutocomplete(props: AutocompleteOwnProps, model: Ref<
436
436
  onTransitionend?: ((payload: TransitionEvent) => void) | undefined;
437
437
  onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
438
438
  onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
439
- }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "rounded" | "variant" | "label" | "disabled" | "required" | "corner" | "description" | "errorMessage" | "start" | "endIcon" | "errorIcon" | "hideErrorMessage" | "readonly" | "showErrorIcon" | "startIcon">>>>;
439
+ }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "disabled" | "endIcon" | "rounded" | "startIcon" | "variant" | "label" | "start" | "required" | "corner" | "description" | "errorMessage" | "errorIcon" | "hideErrorMessage" | "readonly" | "showDescriptionOnError" | "showErrorIcon">>>>;
440
440
  isNotched: import('vue').ComputedRef<boolean>;
441
441
  isStacked: import('vue').ComputedRef<boolean>;
442
442
  startBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
@@ -461,6 +461,8 @@ export declare function useAutocomplete(props: AutocompleteOwnProps, model: Ref<
461
461
  hasInsetLabelRow: import('vue').ComputedRef<boolean>;
462
462
  insetLabelRowBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
463
463
  stackedInputRowBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, {}>>;
464
+ showErrorMessageRow: import('vue').ComputedRef<boolean>;
465
+ showDescriptionContent: import('vue').ComputedRef<boolean>;
464
466
  showErrorMessageContent: import('vue').ComputedRef<boolean>;
465
467
  reservesErrorMessageSpace: import('vue').ComputedRef<boolean>;
466
468
  };
@@ -720,7 +722,7 @@ export declare function useAutocomplete(props: AutocompleteOwnProps, model: Ref<
720
722
  onTransitionend?: ((payload: TransitionEvent) => void) | undefined;
721
723
  onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
722
724
  onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
723
- }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "rounded" | "variant" | "label" | "disabled" | "required" | "corner" | "description" | "errorMessage" | "start" | "endIcon" | "errorIcon" | "hideErrorMessage" | "readonly" | "showErrorIcon" | "startIcon">>>>>;
725
+ }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "disabled" | "endIcon" | "rounded" | "startIcon" | "variant" | "label" | "start" | "required" | "corner" | "description" | "errorMessage" | "errorIcon" | "hideErrorMessage" | "readonly" | "showDescriptionOnError" | "showErrorIcon">>>>>;
724
726
  handleApply: () => void;
725
727
  selectOption: (option: SelectOption) => void;
726
728
  handleCancel: () => void;
@@ -747,7 +749,7 @@ export declare function useAutocomplete(props: AutocompleteOwnProps, model: Ref<
747
749
  options: import('@bridge-ui/core/Domain').ListboxOption[];
748
750
  overlay: import('@bridge-ui/core/Domain').FieldOverlayMode;
749
751
  placement?: import('@floating-ui/utils').Placement;
750
- rounded: "2xl" | "lg" | "md" | "sm" | "xl" | "xs" | "none" | "3xl" | "4xl" | "full";
752
+ rounded: "2xl" | "lg" | "md" | "sm" | "xl" | "xs" | "3xl" | "4xl" | "full" | "none";
751
753
  showCheckmark?: boolean;
752
754
  showFooter: boolean;
753
755
  size: "2xl" | "2xs" | "lg" | "md" | "sm" | "xl" | "xs";
@@ -94,7 +94,7 @@ function m(m, h, g, _, Me) {
94
94
  value: t,
95
95
  label: String(t)
96
96
  });
97
- }), V = a(() => R.value.length > 0), Ke = a(() => k.value.clearable !== !1), H = a(() => !!k.value.asyncData), U = a(() => {
97
+ }), V = a(() => R.value.length > 0), Ke = a(() => k.value.clearable === !0), H = a(() => !!k.value.asyncData), U = a(() => {
98
98
  if (H.value || (k.value.searchable ?? !0)) return !0;
99
99
  let e = k.value.minItemsForSearch ?? 11;
100
100
  return ze.value.length >= e;
@@ -4,6 +4,6 @@ type BadgeLibDefaults = LibDefaultsShape<BadgeOwnProps, "size" | "color" | "dens
4
4
  type BadgeMerged = MergeLibDefaults<BadgeOwnProps, BadgeLibDefaults>;
5
5
  export declare function useBadge(props: BadgeOwnProps, libDefaults: BadgeLibDefaults): {
6
6
  merged: import('vue').ComputedRef<BadgeMerged>;
7
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, Omit<BadgeProps, "color" | "size" | "classes" | "full" | "rounded" | "variant" | "density">>>;
7
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, Omit<BadgeProps, "color" | "size" | "classes" | "full" | "density" | "rounded" | "variant">>>;
8
8
  };
9
9
  export {};
@@ -19,30 +19,30 @@ var C = [
19
19
  ...D
20
20
  }
21
21
  })), k = o(() => t(D, "label", O.value.merged.value.label) || t(D, "corner", O.value.merged.value.corner));
22
- return (o, p) => (_(), c("div", h(O.value.rootBind.value, {
22
+ return (t, o) => (_(), c("div", h(O.value.rootBind.value, {
23
23
  "data-invalid": O.value.invalidated.value || void 0,
24
24
  "aria-disabled": O.value.isDisabled.value || void 0,
25
25
  "aria-readonly": O.value.isReadonly.value || void 0
26
26
  }), [
27
27
  k.value ? (_(), c("div", g(h({ key: 0 }, O.value.headerBind.value)), [f(i, { api: O.value }, u({ _: 2 }, [b(e)(b(D), "label") ? {
28
28
  name: "label",
29
- fn: S(() => [v(o.$slots, "label")]),
29
+ fn: S(() => [v(t.$slots, "label")]),
30
30
  key: "0"
31
31
  } : void 0]), 1032, ["api"]), f(r, { api: O.value }, u({ _: 2 }, [b(e)(b(D), "corner") ? {
32
32
  name: "corner",
33
- fn: S(() => [v(o.$slots, "corner")]),
33
+ fn: S(() => [v(t.$slots, "corner")]),
34
34
  key: "0"
35
35
  } : void 0]), 1032, ["api"])], 16)) : s("", !0),
36
36
  l("div", g(m(O.value.groupBind.value)), [
37
- b(e)(b(D), "start") ? (_(), c("div", g(h({ key: 0 }, O.value.startSlotBind.value)), [v(o.$slots, "start")], 16)) : s("", !0),
38
- v(o.$slots, "default"),
39
- b(e)(b(D), "end") ? (_(), c("div", g(h({ key: 1 }, O.value.endSlotBind.value)), [v(o.$slots, "end")], 16)) : s("", !0)
37
+ b(e)(b(D), "start") ? (_(), c("div", g(h({ key: 0 }, O.value.startSlotBind.value)), [v(t.$slots, "start")], 16)) : s("", !0),
38
+ v(t.$slots, "default"),
39
+ b(e)(b(D), "end") ? (_(), c("div", g(h({ key: 1 }, O.value.endSlotBind.value)), [v(t.$slots, "end")], 16)) : s("", !0)
40
40
  ], 16),
41
- !O.value.invalidated.value && b(t)(b(D), "description", O.value.merged.value.description) ? (_(), c("p", h({ key: 1 }, O.value.descriptionBind.value, { id: `${O.value.controlId.value}-description` }), [b(e)(b(D), "description") ? v(o.$slots, "description", {}, void 0, void 0, 0) : b(n)(O.value.merged.value.description) ? (_(), c(a, { key: 1 }, [d(y(O.value.merged.value.description), 1)], 64)) : s("", !0)], 16, w)) : s("", !0),
42
- O.value.merged.value.hideErrorMessage ? s("", !0) : (_(), c("p", h({ key: 2 }, O.value.errorBind.value, {
41
+ O.value.showDescriptionContent.value ? (_(), c("p", h({ key: 1 }, O.value.descriptionBind.value, { id: `${O.value.controlId.value}-description` }), [b(e)(b(D), "description") ? v(t.$slots, "description", {}, void 0, void 0, 0) : b(n)(O.value.merged.value.description) ? (_(), c(a, { key: 1 }, [d(y(O.value.merged.value.description), 1)], 64)) : s("", !0)], 16, w)) : s("", !0),
42
+ O.value.showErrorMessageRow.value ? (_(), c("p", h({ key: 2 }, O.value.errorBind.value, {
43
43
  id: `${O.value.controlId.value}-error`,
44
44
  "aria-hidden": !O.value.showErrorMessageContent.value || void 0
45
- }), [O.value.showErrorMessageContent.value ? (_(), c(a, { key: 0 }, [b(e)(b(D), "errorMessage") ? v(o.$slots, "errorMessage", {}, void 0, void 0, 0) : b(n)(O.value.merged.value.errorMessage) ? (_(), c(a, { key: 1 }, [d(y(O.value.merged.value.errorMessage), 1)], 64)) : s("", !0)], 64)) : s("", !0)], 16, T))
45
+ }), [O.value.showErrorMessageContent.value ? (_(), c(a, { key: 0 }, [b(e)(b(D), "errorMessage") ? v(t.$slots, "errorMessage", {}, void 0, void 0, 0) : b(n)(O.value.merged.value.errorMessage) ? (_(), c(a, { key: 1 }, [d(y(O.value.merged.value.errorMessage), 1)], 64)) : s("", !0)], 64)) : s("", !0)], 16, T)) : s("", !0)
46
46
  ], 16, C));
47
47
  }
48
48
  });
@@ -115,7 +115,8 @@ export interface BaseFieldOwnProps {
115
115
  */
116
116
  customProps?: BaseFieldCustomProps;
117
117
  /**
118
- * Helper text below the control group (hidden when the field is invalid).
118
+ * Helper text below the control group. Hidden when `error` is true and an
119
+ * error message is shown, unless `showDescriptionOnError` is true.
119
120
  *
120
121
  * @default undefined
121
122
  */
@@ -127,7 +128,9 @@ export interface BaseFieldOwnProps {
127
128
  */
128
129
  disabled?: boolean;
129
130
  /**
130
- * When `true`, applies invalid styling on the label and control group.
131
+ * When `true`, applies invalid styling on the label and control group. Hides
132
+ * description when an error message is shown, unless `showDescriptionOnError`
133
+ * is true.
131
134
  *
132
135
  * @default false
133
136
  */
@@ -148,7 +151,8 @@ export interface BaseFieldOwnProps {
148
151
  */
149
152
  field?: UseBaseFieldReturn;
150
153
  /**
151
- * When `true`, does not reserve space below the group for error messages.
154
+ * When `true`, does not reserve the error row. That row is also omitted
155
+ * while a description is shown.
152
156
  *
153
157
  * @default false
154
158
  */
@@ -171,6 +175,12 @@ export interface BaseFieldOwnProps {
171
175
  * @default false
172
176
  */
173
177
  required?: boolean;
178
+ /**
179
+ * When `true`, keeps the description visible while the field is invalid.
180
+ *
181
+ * @default false
182
+ */
183
+ showDescriptionOnError?: boolean;
174
184
  /**
175
185
  * Label typography and control group gap scale.
176
186
  *
@@ -195,7 +205,8 @@ export interface BaseFieldSlots {
195
205
  */
196
206
  default?: Slot<undefined>;
197
207
  /**
198
- * Helper text below the control group.
208
+ * Helper text below the control group. Hidden when the field is invalid and
209
+ * an error message is shown, unless `showDescriptionOnError` is true.
199
210
  */
200
211
  description?: Slot;
201
212
  /**
@@ -5,14 +5,16 @@ import { LabelProps } from '../../Label/label.types';
5
5
  export type BaseFieldOptions = {
6
6
  /**
7
7
  * Public registry key that owns BaseField chrome defaults/tokens.
8
+ * Defaults to `BaseField`; Slider / OtpField pass their own key so chrome
9
+ * cascades (`BaseField` → parent).
8
10
  */
9
- componentName?: "Slider" | "OtpField";
11
+ componentName?: "Slider" | "OtpField" | "BaseField";
10
12
  /**
11
13
  * Resolve `Label` `for` from `controlId`. Defaults to the control id itself.
12
14
  */
13
15
  labelHtmlFor?: (controlId: string) => string;
14
16
  };
15
- export declare const baseFieldBridgeKeys: readonly ["size", "error", "label", "corner", "classes", "disabled", "readonly", "required", "controlId", "customProps", "description", "errorMessage", "hideErrorMessage"];
17
+ export declare const baseFieldBridgeKeys: readonly ["size", "error", "label", "corner", "classes", "disabled", "readonly", "required", "controlId", "customProps", "description", "errorMessage", "hideErrorMessage", "showDescriptionOnError"];
16
18
  type BaseFieldLibDefaults = LibDefaultsShape<Omit<BaseFieldOwnProps, "field">, "size" | "error" | "hideErrorMessage">;
17
19
  type BaseFieldMerged = MergeLibDefaults<Omit<BaseFieldOwnProps, "field">, BaseFieldLibDefaults>;
18
20
  /**
@@ -49,6 +51,8 @@ export declare function useBaseField(props: MaybeRefOrGetter<Omit<BaseFieldOwnPr
49
51
  fieldLabelProps: import('vue').ComputedRef<LabelProps>;
50
52
  descriptionBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
51
53
  fieldCornerProps: import('vue').ComputedRef<LabelProps>;
54
+ showErrorMessageRow: import('vue').ComputedRef<boolean>;
55
+ showDescriptionContent: import('vue').ComputedRef<boolean>;
52
56
  showErrorMessageContent: import('vue').ComputedRef<boolean>;
53
57
  };
54
58
  export type UseBaseFieldReturn = ReturnType<typeof useBaseField>;
@@ -18,7 +18,8 @@ var g = [
18
18
  "customProps",
19
19
  "description",
20
20
  "errorMessage",
21
- "hideErrorMessage"
21
+ "hideErrorMessage",
22
+ "showDescriptionOnError"
22
23
  ];
23
24
  function _(_, v = {
24
25
  size: "md",
@@ -31,102 +32,101 @@ function _(_, v = {
31
32
  ...b,
32
33
  ...o(_)
33
34
  }
34
- })), { merged: w, entry: T } = r({
35
+ })), w = y.componentName ?? "BaseField", { merged: T, entry: E, chromeEntry: D } = r({
35
36
  libDefaults: v,
36
- componentName: y.componentName,
37
+ componentName: w,
37
38
  props: () => C.value.componentProps
38
- }), E = i({
39
- entry: T,
39
+ }), O = i({
40
+ entry: E,
41
+ chromeEntry: D,
40
42
  props: () => C.value.componentProps
41
- }), D = a(() => w.value.customProps), O = a(() => w.value.error === !0), k = a(() => !!w.value.disabled), A = a(() => !!w.value.readonly), j = a(() => w.value.controlId ?? C.value.inheritedAttrs.id ?? S), M = a(() => {
42
- let e = m(f, u(T.value, [
43
- "tokens",
44
- "baseField",
45
- "size"
46
- ]));
47
- return u(e, w.value.size ?? "md");
48
- }), N = a(() => !w.value.hideErrorMessage), P = a(() => O.value && e(x, "errorMessage", w.value.errorMessage)), F = a(() => {
49
- let t = [];
50
- return !O.value && e(x, "description", w.value.description) && t.push(`${j.value}-description`), O.value && !w.value.hideErrorMessage && e(x, "errorMessage", w.value.errorMessage) && t.push(`${j.value}-error`), t.length > 0 ? t.join(" ") : void 0;
51
- }), I = a(() => n(D.value?.root, {
43
+ }), k = a(() => T.value.customProps), A = a(() => T.value.error === !0), j = a(() => !!T.value.disabled), M = a(() => !!T.value.readonly), N = a(() => T.value.controlId ?? C.value.inheritedAttrs.id ?? S), P = a(() => {
44
+ let e = w !== "BaseField", t = m(f, u(D.value, ["tokens", "size"]), e ? void 0 : u(E.value, ["tokens", "size"]));
45
+ return u(t, T.value.size ?? "md");
46
+ }), F = a(() => !T.value.hideErrorMessage && !e(x, "description", T.value.description)), I = a(() => A.value && !T.value.hideErrorMessage && e(x, "errorMessage", T.value.errorMessage)), L = a(() => e(x, "description", T.value.description) ? !I.value || T.value.showDescriptionOnError === !0 : !1), R = a(() => I.value || F.value), z = a(() => {
47
+ let e = [];
48
+ return L.value && e.push(`${N.value}-description`), I.value && e.push(`${N.value}-error`), e.length > 0 ? e.join(" ") : void 0;
49
+ }), B = a(() => n(k.value?.root, {
52
50
  class: p(C.value.inheritedAttrs.class),
53
51
  ...d(C.value.inheritedAttrs, ["class", "id"])
54
52
  }, p({
55
53
  "group w-full relative": !0,
56
54
  "aria-disabled:pointer-events-none aria-disabled:select-none aria-disabled:opacity-60": !0,
57
55
  "aria-readonly:pointer-events-none aria-readonly:select-none": !0,
58
- [E.value.root ?? ""]: !0
59
- }))), L = a(() => n(D.value?.header, {}, p({
56
+ [O.value.root ?? ""]: !0
57
+ }))), V = a(() => n(k.value?.header, {}, p({
60
58
  "flex w-full gap-x-2 mb-1.5": !0,
61
- "justify-between items-end": e(x, "label", w.value.label),
62
- "justify-end": !e(x, "label", w.value.label),
63
- [E.value.header ?? ""]: !0
64
- }))), R = a(() => {
59
+ "justify-between items-end": e(x, "label", T.value.label),
60
+ "justify-end": !e(x, "label", T.value.label),
61
+ [O.value.header ?? ""]: !0
62
+ }))), H = a(() => {
65
63
  let e = y.labelHtmlFor ?? ((e) => e);
66
- return t(D.value?.corner, {
67
- size: w.value.size,
68
- for: e(j.value),
69
- classes: { root: p({ [E.value.corner ?? ""]: !0 }) }
64
+ return t(k.value?.corner, {
65
+ size: T.value.size,
66
+ for: e(N.value),
67
+ classes: { root: p({ [O.value.corner ?? ""]: !0 }) }
70
68
  });
71
- }), z = a(() => n(D.value?.group, {
69
+ }), U = a(() => n(k.value?.group, {
72
70
  role: "group",
73
- id: j.value,
74
- "aria-describedby": F.value,
75
- "aria-disabled": k.value || void 0,
76
- "aria-invalid": O.value || void 0
71
+ id: N.value,
72
+ "aria-describedby": z.value,
73
+ "aria-disabled": j.value || void 0,
74
+ "aria-invalid": A.value || void 0
77
75
  }, p({
78
76
  "flex flex-wrap items-center": !0,
79
- [M.value?.group ?? ""]: !0,
80
- [E.value.group ?? ""]: !0
81
- }))), B = a(() => n(D.value?.start, {}, p({
77
+ [P.value?.group ?? ""]: !0,
78
+ [O.value.group ?? ""]: !0
79
+ }))), W = a(() => n(k.value?.start, {}, p({
82
80
  "group/start wrapper-start-slot shrink-0 flex items-center [&>*]:min-h-0": !0,
83
- [E.value.start ?? ""]: !0
84
- }))), V = a(() => n(D.value?.end, {}, p({
81
+ [O.value.start ?? ""]: !0
82
+ }))), G = a(() => n(k.value?.end, {}, p({
85
83
  "group/end wrapper-end-slot shrink-0 flex items-center [&>*]:min-h-0": !0,
86
- [E.value.end ?? ""]: !0
87
- }))), H = a(() => n(D.value?.description, {}, p({
84
+ [O.value.end ?? ""]: !0
85
+ }))), K = a(() => n(k.value?.description, {}, p({
88
86
  "mt-1 px-1 text-dark-500 dark:text-dark-400": !0,
89
- [M.value?.text ?? ""]: !0,
90
- [E.value.description ?? ""]: !0
87
+ [P.value?.text ?? ""]: !0,
88
+ [O.value.description ?? ""]: !0
91
89
  })));
92
90
  return {
93
91
  slots: x,
94
- merged: w,
95
- rootBind: I,
96
- errorBind: a(() => n(D.value?.errorMessage, {}, p({
92
+ merged: T,
93
+ rootBind: B,
94
+ errorBind: a(() => n(k.value?.errorMessage, {}, p({
97
95
  "mt-1 px-1": !0,
98
- "min-h-[1lh]": N.value,
96
+ "min-h-[1lh]": F.value,
99
97
  "text-error-600 dark:text-error-400": !0,
100
- [M.value?.text ?? ""]: !0,
101
- [E.value.errorMessage ?? ""]: !0
98
+ [P.value?.text ?? ""]: !0,
99
+ [O.value.errorMessage ?? ""]: !0
102
100
  }))),
103
- groupBind: z,
104
- controlId: j,
105
- headerBind: L,
106
- isDisabled: k,
107
- isReadonly: A,
108
- sizeClasses: M,
109
- endSlotBind: V,
110
- invalidated: O,
111
- startSlotBind: B,
112
- mergedClasses: E,
113
- ariaDescribedBy: F,
101
+ groupBind: U,
102
+ controlId: N,
103
+ headerBind: V,
104
+ isDisabled: j,
105
+ isReadonly: M,
106
+ sizeClasses: P,
107
+ endSlotBind: G,
108
+ invalidated: A,
109
+ startSlotBind: W,
110
+ mergedClasses: O,
111
+ ariaDescribedBy: z,
114
112
  fieldLabelProps: a(() => {
115
113
  let e = y.labelHtmlFor ?? ((e) => e);
116
- return t(D.value?.label, {
117
- size: w.value.size,
118
- error: O.value,
119
- required: w.value.required,
120
- for: e(j.value),
114
+ return t(k.value?.label, {
115
+ size: T.value.size,
116
+ error: A.value,
117
+ required: T.value.required,
118
+ for: e(N.value),
121
119
  classes: {
122
- required: E.value.required,
123
- root: p({ [E.value.label ?? ""]: !0 })
120
+ required: O.value.required,
121
+ root: p({ [O.value.label ?? ""]: !0 })
124
122
  }
125
123
  });
126
124
  }),
127
- descriptionBind: H,
128
- fieldCornerProps: R,
129
- showErrorMessageContent: P
125
+ descriptionBind: K,
126
+ fieldCornerProps: H,
127
+ showErrorMessageRow: R,
128
+ showDescriptionContent: L,
129
+ showErrorMessageContent: I
130
130
  };
131
131
  }
132
132
  //#endregion
@@ -5,16 +5,16 @@ export declare function useBreadcrumbItem(props: BreadcrumbItemOwnProps): {
5
5
  [name: string]: import('vue').Slot<any> | undefined;
6
6
  }>;
7
7
  merged: import('vue').ComputedRef<BreadcrumbItemOwnProps>;
8
- crumbAs: import('vue').ComputedRef<"a" | "button" | "span">;
8
+ crumbAs: import('vue').ComputedRef<"a" | "span" | "button">;
9
9
  rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
10
10
  class: string;
11
- }, "class", import('vue').HTMLAttributes | undefined, Omit<Omit<BreadcrumbItemProps, "href" | "classes" | "customProps" | "disabled" | "endIcon" | "startIcon" | "as" | "current">, "aria-label" | "aria-labelledby">>>;
11
+ }, "class", import('vue').HTMLAttributes | undefined, Omit<Omit<BreadcrumbItemProps, "href" | "classes" | "customProps" | "as" | "disabled" | "endIcon" | "startIcon" | "current">, "aria-label" | "aria-labelledby">>>;
12
12
  linkBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
13
13
  "aria-disabled": true | undefined;
14
14
  "aria-current": "page" | undefined;
15
15
  href: string | undefined;
16
16
  class: string;
17
- }, "class", import('vue').HTMLAttributes | undefined, Pick<Omit<BreadcrumbItemProps, "href" | "classes" | "customProps" | "disabled" | "endIcon" | "startIcon" | "as" | "current">, "aria-label" | "aria-labelledby">>>;
17
+ }, "class", import('vue').HTMLAttributes | undefined, Pick<Omit<BreadcrumbItemProps, "href" | "classes" | "customProps" | "as" | "disabled" | "endIcon" | "startIcon" | "current">, "aria-label" | "aria-labelledby">>>;
18
18
  iconSize: import('vue').ComputedRef<keyof IconSize>;
19
19
  endIconBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
20
20
  size: keyof IconSize;
@@ -1,9 +1,9 @@
1
1
  import { hasNamedSlot as e, isPropPresent as t } from "../../Utils/slotOrProp.js";
2
2
  import n from "../Icon/Icon.js";
3
3
  import { useButton as r } from "./composables/useButton.js";
4
- import { Fragment as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createTextVNode as c, defineComponent as l, mergeProps as u, normalizeProps as d, openBlock as f, renderSlot as p, resolveDynamicComponent as m, toDisplayString as h, unref as g, useSlots as _, withCtx as v } from "vue";
4
+ import { Fragment as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as l, createVNode as u, defineComponent as d, guardReactiveProps as f, mergeProps as p, normalizeProps as m, openBlock as h, renderSlot as g, resolveDynamicComponent as _, toDisplayString as v, unref as y, useSlots as b, withCtx as x } from "vue";
5
5
  //#region src/Components/Button/Button.vue?vue&type=script&setup=true&lang.ts
6
- var y = /*@__PURE__*/ l({
6
+ var S = /*@__PURE__*/ d({
7
7
  inheritAttrs: !1,
8
8
  __name: "Button",
9
9
  props: {
@@ -25,8 +25,8 @@ var y = /*@__PURE__*/ l({
25
25
  text: {},
26
26
  variant: {}
27
27
  },
28
- setup(l) {
29
- let y = l, b = _(), { tag: x, merged: S, isMini: C, iconBind: w, rootBind: T, rootHref: E, rootType: D, endIconBind: O, endSlotBind: k, rootAriaBusy: A, rootDisabled: j, startIconBind: M, startSlotBind: N, loadingIconBind: P, rootAriaDisabled: F } = r(y, {
28
+ setup(d) {
29
+ let S = d, C = b(), { tag: w, merged: T, isMini: E, iconBind: D, rootBind: O, rootHref: k, rootType: A, endIconBind: j, contentBind: M, endSlotBind: N, rootAriaBusy: P, rootDisabled: F, startIconBind: I, startSlotBind: L, loadingIconBind: R, loadingWrapBind: z, rootAriaDisabled: B } = r(S, {
30
30
  size: "md",
31
31
  as: "button",
32
32
  rounded: "md",
@@ -34,30 +34,29 @@ var y = /*@__PURE__*/ l({
34
34
  variant: "solid",
35
35
  density: "default"
36
36
  });
37
- return (r, l) => (f(), a(m(g(x)), u({ href: g(E) }, g(T), {
38
- type: g(D),
39
- disabled: g(j),
40
- "aria-busy": g(A),
41
- "aria-disabled": g(F)
37
+ return (r, d) => (h(), a(_(y(w)), p({ href: y(k) }, y(O), {
38
+ type: y(A),
39
+ disabled: y(F),
40
+ "aria-busy": y(P),
41
+ "aria-disabled": y(B)
42
42
  }), {
43
- default: v(() => [g(S).loading ? (f(), a(g(n), u({
44
- key: 0,
43
+ default: x(() => [y(T).loading ? (h(), s("span", m(p({ key: 0 }, y(z))), [u(y(n), p({
45
44
  icon: "loader",
46
- size: g(S).size
47
- }, g(P)), null, 16, ["size"])) : g(C) ? (f(), s(i, { key: 1 }, [g(e)(g(b), "default") ? p(r.$slots, "default", {}, void 0, void 0, 0) : g(S).icon ? (f(), a(g(n), u({ key: 1 }, g(w), {
48
- icon: g(S).icon,
49
- size: g(S).size
50
- }), null, 16, ["icon", "size"])) : o("", !0)], 64)) : (f(), s(i, { key: 2 }, [
51
- g(S).startIcon ? (f(), a(g(n), u({
45
+ size: y(T).size
46
+ }, y(R)), null, 16, ["size"])], 16)) : o("", !0), c("span", m(f(y(M))), [y(E) ? (h(), s(i, { key: 0 }, [y(e)(y(C), "default") ? g(r.$slots, "default", {}, void 0, void 0, 0) : y(T).icon ? (h(), a(y(n), p({ key: 1 }, y(D), {
47
+ icon: y(T).icon,
48
+ size: y(T).size
49
+ }), null, 16, ["icon", "size"])) : o("", !0)], 64)) : (h(), s(i, { key: 1 }, [
50
+ y(T).startIcon ? (h(), a(y(n), p({
52
51
  key: 0,
53
- size: g(S).size
54
- }, g(M), { icon: g(S).startIcon }), null, 16, ["size", "icon"])) : g(e)(g(b), "start") ? (f(), s("div", d(u({ key: 1 }, g(N))), [p(r.$slots, "start")], 16)) : o("", !0),
55
- g(t)(g(S).text) ? (f(), s(i, { key: 2 }, [c(h(g(S).text), 1)], 64)) : g(e)(g(b), "default") ? p(r.$slots, "default", {}, void 0, void 0, 3) : o("", !0),
56
- g(S).endIcon ? (f(), a(g(n), u({
52
+ size: y(T).size
53
+ }, y(I), { icon: y(T).startIcon }), null, 16, ["size", "icon"])) : y(e)(y(C), "start") ? (h(), s("div", m(p({ key: 1 }, y(L))), [g(r.$slots, "start")], 16)) : o("", !0),
54
+ y(t)(y(T).text) ? (h(), s(i, { key: 2 }, [l(v(y(T).text), 1)], 64)) : y(e)(y(C), "default") ? g(r.$slots, "default", {}, void 0, void 0, 3) : o("", !0),
55
+ y(T).endIcon ? (h(), a(y(n), p({
57
56
  key: 4,
58
- size: g(S).size
59
- }, g(O), { icon: g(S).endIcon }), null, 16, ["size", "icon"])) : g(e)(g(b), "end") ? (f(), s("div", d(u({ key: 5 }, g(k))), [p(r.$slots, "end")], 16)) : o("", !0)
60
- ], 64))]),
57
+ size: y(T).size
58
+ }, y(j), { icon: y(T).endIcon }), null, 16, ["size", "icon"])) : y(e)(y(C), "end") ? (h(), s("div", m(p({ key: 5 }, y(N))), [g(r.$slots, "end")], 16)) : o("", !0)
59
+ ], 64))], 16)]),
61
60
  _: 3
62
61
  }, 16, [
63
62
  "href",
@@ -69,4 +68,4 @@ var y = /*@__PURE__*/ l({
69
68
  }
70
69
  });
71
70
  //#endregion
72
- export { y as default };
71
+ export { S as default };
@@ -3,23 +3,25 @@ import { ButtonOwnProps, ButtonProps } from '../button.types';
3
3
  type ButtonLibDefaults = LibDefaultsShape<ButtonOwnProps, "as" | "size" | "color" | "density" | "rounded" | "variant">;
4
4
  type ButtonMerged = MergeLibDefaults<ButtonOwnProps, ButtonLibDefaults>;
5
5
  export declare function useButton(props: ButtonOwnProps, libDefaults: ButtonLibDefaults): {
6
- tag: import('vue').ComputedRef<NonNullable<"a" | "button" | "span" | undefined>>;
6
+ tag: import('vue').ComputedRef<NonNullable<"a" | "span" | "button" | undefined>>;
7
7
  merged: import('vue').ComputedRef<ButtonMerged>;
8
8
  isMini: import('vue').ComputedRef<boolean>;
9
9
  iconBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", Partial<Omit<import('../../Icon').IconProps, "icon">> | undefined, {}>>;
10
10
  rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
11
11
  "aria-pressed": boolean | undefined;
12
12
  class: string;
13
- }, "class", import('vue').HTMLAttributes | undefined, Omit<ButtonProps, "color" | "href" | "icon" | "size" | "classes" | "customProps" | "full" | "rounded" | "variant" | "text" | "disabled" | "endIcon" | "startIcon" | "as" | "density" | "loading" | "selected">>>;
13
+ }, "class", import('vue').HTMLAttributes | undefined, Omit<ButtonProps, "color" | "href" | "icon" | "size" | "classes" | "customProps" | "full" | "as" | "density" | "disabled" | "endIcon" | "loading" | "rounded" | "selected" | "startIcon" | "text" | "variant">>>;
14
14
  rootHref: import('vue').ComputedRef<string | undefined>;
15
15
  rootType: import('vue').ComputedRef<"button" | undefined>;
16
16
  endIconBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", Partial<Omit<import('../../Icon').IconProps, "icon">> | undefined, {}>>;
17
+ contentBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, {}>>;
17
18
  endSlotBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
18
19
  rootAriaBusy: import('vue').ComputedRef<true | undefined>;
19
20
  rootDisabled: import('vue').ComputedRef<boolean | undefined>;
20
21
  startIconBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", Partial<Omit<import('../../Icon').IconProps, "icon">> | undefined, {}>>;
21
22
  startSlotBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
22
23
  loadingIconBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", Partial<Omit<import('../../Icon').IconProps, "icon">> | undefined, {}>>;
24
+ loadingWrapBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, {}>>;
23
25
  rootAriaDisabled: import('vue').ComputedRef<true | undefined>;
24
26
  };
25
27
  export {};
@@ -67,59 +67,65 @@ function _(_, v) {
67
67
  }), B = i(() => {
68
68
  let e = m(d, w.value?.tokens?.rounded);
69
69
  return s(e, C.value.rounded);
70
- });
70
+ }), V = i(() => e(T.value?.icon, {}, p({
71
+ "shrink-0": !0,
72
+ [E.value.icon ?? ""]: !0
73
+ }))), H = i(() => e(T.value?.root, x.value.inheritedAttrs, {
74
+ "aria-pressed": l(C.value.selected) ? void 0 : C.value.selected,
75
+ class: p({
76
+ "inline-flex items-center justify-center": !0,
77
+ "cursor-pointer outline-none outline-hidden": !0,
78
+ "shrink-0": A.value,
79
+ [L.value ?? ""]: !0,
80
+ [B.value ?? ""]: !0,
81
+ "h-auto": A.value && !l(b) && b.value?.density !== "mini",
82
+ "border border-transparent": !l(b) && R.value !== "outline",
83
+ "w-full": !A.value && C.value.full,
84
+ "w-fit": !A.value && !C.value.full,
85
+ "group hover:shadow-xs": !A.value,
86
+ [s(z.value, "base") ?? ""]: !0,
87
+ [s(z.value, "hover") ?? ""]: !0,
88
+ [s(z.value, "focus") ?? ""]: !0,
89
+ [s(z.value, "selected") ?? ""]: C.value.selected === !0,
90
+ relative: !0,
91
+ "z-10": C.value.selected === !0,
92
+ "transition-all ease-in-out duration-200": !0,
93
+ "focus:ring-2": !0,
94
+ "focus:ring-offset-background-white dark:focus:ring-offset-background-dark": !0,
95
+ "disabled:opacity-80 disabled:cursor-not-allowed": !0,
96
+ "aria-disabled:opacity-80 aria-disabled:cursor-not-allowed aria-disabled:pointer-events-none": !0,
97
+ [E.value.root ?? ""]: !0
98
+ })
99
+ })), U = i(() => e(T.value?.endIcon, {}, p({
100
+ "shrink-0": !0,
101
+ [E.value.endIcon ?? ""]: !0
102
+ }))), W = i(() => e(T.value?.end, {}, "inline-flex shrink-0 items-center")), G = i(() => e(T.value?.startIcon, {}, p({
103
+ "shrink-0": !0,
104
+ [E.value.startIcon ?? ""]: !0
105
+ }))), K = i(() => e(T.value?.start, {}, "inline-flex shrink-0 items-center")), q = i(() => e({}, {}, "pointer-events-none absolute inset-0 flex items-center justify-center"));
71
106
  return {
72
107
  tag: D,
73
108
  merged: C,
74
109
  isMini: A,
75
- iconBind: i(() => e(T.value?.icon, {}, p({
76
- "shrink-0": !0,
77
- [E.value.icon ?? ""]: !0
78
- }))),
79
- rootBind: i(() => e(T.value?.root, x.value.inheritedAttrs, {
80
- "aria-pressed": l(C.value.selected) ? void 0 : C.value.selected,
81
- class: p({
82
- "inline-flex items-center justify-center": !0,
83
- "cursor-pointer outline-none outline-hidden": !0,
84
- "shrink-0": A.value,
85
- [L.value ?? ""]: !0,
86
- [B.value ?? ""]: !0,
87
- "h-auto": A.value && !l(b) && b.value?.density !== "mini",
88
- "border border-transparent": !l(b) && R.value !== "outline",
89
- "w-full": !A.value && C.value.full,
90
- "w-fit": !A.value && !C.value.full,
91
- "group hover:shadow-xs": !A.value,
92
- [s(z.value, "base") ?? ""]: !0,
93
- [s(z.value, "hover") ?? ""]: !0,
94
- [s(z.value, "focus") ?? ""]: !0,
95
- [s(z.value, "selected") ?? ""]: C.value.selected === !0,
96
- "relative z-10": C.value.selected === !0,
97
- "transition-all ease-in-out duration-200": !0,
98
- "focus:ring-2": !0,
99
- "focus:ring-offset-background-white dark:focus:ring-offset-background-dark": !0,
100
- "disabled:opacity-80 disabled:cursor-not-allowed": !0,
101
- "aria-disabled:opacity-80 aria-disabled:cursor-not-allowed aria-disabled:pointer-events-none": !0,
102
- [E.value.root ?? ""]: !0
103
- })
104
- })),
110
+ iconBind: V,
111
+ rootBind: H,
105
112
  rootHref: F,
106
113
  rootType: I,
107
- endIconBind: i(() => e(T.value?.endIcon, {}, p({
108
- "shrink-0": !0,
109
- [E.value.endIcon ?? ""]: !0
114
+ endIconBind: U,
115
+ contentBind: i(() => e({}, {}, p({
116
+ contents: !0,
117
+ invisible: C.value.loading
110
118
  }))),
111
- endSlotBind: i(() => e(T.value?.end, {}, "inline-flex shrink-0 items-center")),
119
+ endSlotBind: W,
112
120
  rootAriaBusy: N,
113
121
  rootDisabled: M,
114
- startIconBind: i(() => e(T.value?.startIcon, {}, p({
115
- "shrink-0": !0,
116
- [E.value.startIcon ?? ""]: !0
117
- }))),
118
- startSlotBind: i(() => e(T.value?.start, {}, "inline-flex shrink-0 items-center")),
122
+ startIconBind: G,
123
+ startSlotBind: K,
119
124
  loadingIconBind: i(() => e(T.value?.loading, {}, p({
120
125
  "shrink-0 animate-spin": !0,
121
126
  [E.value.loading ?? ""]: !0
122
127
  }))),
128
+ loadingWrapBind: q,
123
129
  rootAriaDisabled: P
124
130
  };
125
131
  }
@@ -11,6 +11,6 @@ export declare function useButtonGroup(props: ButtonGroupOwnProps, libDefaults:
11
11
  role: string;
12
12
  "data-slot": string;
13
13
  class: string;
14
- }, "class", import('vue').HTMLAttributes | undefined, Omit<ButtonGroupProps, "color" | "orientation" | "size" | "classes" | "customProps" | "full" | "rounded" | "variant" | "density" | "separator">>>;
14
+ }, "class", import('vue').HTMLAttributes | undefined, Omit<ButtonGroupProps, "color" | "orientation" | "size" | "classes" | "customProps" | "full" | "density" | "rounded" | "variant" | "separator">>>;
15
15
  };
16
16
  export {};