@bridge-ui/vue 0.0.6 → 0.0.8

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 (204) hide show
  1. package/ai/AGENTS.md +31 -0
  2. package/ai/README.md +35 -0
  3. package/ai/guidelines/core.md +44 -0
  4. package/ai/llms.txt +38 -0
  5. package/ai/skills/bridge-ui-components/SKILL.md +37 -0
  6. package/ai/skills/bridge-ui-forms/SKILL.md +38 -0
  7. package/ai/skills/bridge-ui-overlays/SKILL.md +37 -0
  8. package/ai/skills/bridge-ui-setup/SKILL.md +38 -0
  9. package/bin/__tests__/ai.test.ts +319 -0
  10. package/bin/ai.mjs +469 -0
  11. package/dist/Actions/Snackbar/BridgeSnackbarAction.vue_vue_type_script_setup_true_lang.js +8 -8
  12. package/dist/Actions/Snackbar/BridgeSnackbarHost.vue_vue_type_script_setup_true_lang.js +5 -5
  13. package/dist/Actions/Snackbar/createBridgeSnackbarApi.js +17 -17
  14. package/dist/Adapters/I18n/index.d.ts +1 -1
  15. package/dist/Adapters/I18n/index.js +2 -2
  16. package/dist/Adapters/I18n/useI18nAdapter.d.ts +7 -3
  17. package/dist/Adapters/I18n/useI18nAdapter.js +12 -7
  18. package/dist/Adapters/Icon/useIconAdapter.d.ts +1 -1
  19. package/dist/Adapters/index.d.ts +1 -1
  20. package/dist/Adapters/index.js +3 -3
  21. package/dist/Components/Alert/composables/useAlert.js +17 -17
  22. package/dist/Components/Autocomplete/Autocomplete.js +5 -0
  23. package/dist/Components/Autocomplete/Autocomplete.vue.d.ts +40 -0
  24. package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +197 -0
  25. package/dist/Components/Autocomplete/AutocompleteOption.js +5 -0
  26. package/dist/Components/Autocomplete/AutocompleteOption.vue.d.ts +4 -0
  27. package/dist/Components/Autocomplete/AutocompleteOption.vue_vue_type_script_setup_true_lang.js +32 -0
  28. package/dist/Components/Autocomplete/autocomplete.types.d.ts +285 -0
  29. package/dist/Components/Autocomplete/autocompleteInjectionKey.d.ts +7 -0
  30. package/dist/Components/Autocomplete/autocompleteInjectionKey.js +4 -0
  31. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +763 -0
  32. package/dist/Components/Autocomplete/composables/useAutocomplete.js +386 -0
  33. package/dist/Components/Autocomplete/index.d.ts +4 -0
  34. package/dist/Components/Autocomplete/index.js +4 -0
  35. package/dist/Components/Avatar/composables/useAvatar.d.ts +1 -1
  36. package/dist/Components/Avatar/composables/useAvatar.js +13 -13
  37. package/dist/Components/Badge/composables/useBadge.js +8 -8
  38. package/dist/Components/BaseField/BaseField.js +5 -0
  39. package/dist/Components/BaseField/BaseField.vue.d.ts +15 -0
  40. package/dist/Components/BaseField/BaseField.vue_vue_type_script_setup_true_lang.js +41 -0
  41. package/dist/Components/BaseField/BaseFieldLabel.js +5 -0
  42. package/dist/Components/BaseField/BaseFieldLabel.vue.d.ts +7 -0
  43. package/dist/Components/BaseField/BaseFieldLabel.vue_vue_type_script_setup_true_lang.js +16 -0
  44. package/dist/Components/BaseField/baseField.types.d.ts +222 -0
  45. package/dist/Components/BaseField/composables/useBaseField.d.ts +55 -0
  46. package/dist/Components/BaseField/composables/useBaseField.js +131 -0
  47. package/dist/Components/BaseField/index.d.ts +4 -0
  48. package/dist/Components/BaseField/index.js +3 -0
  49. package/dist/Components/Button/composables/useButton.d.ts +1 -1
  50. package/dist/Components/Button/composables/useButton.js +14 -14
  51. package/dist/Components/Card/composables/useCard.js +27 -27
  52. package/dist/Components/Checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +2 -2
  53. package/dist/Components/Checkbox/composables/useCheckbox.d.ts +3 -3
  54. package/dist/Components/Checkbox/composables/useCheckbox.js +9 -9
  55. package/dist/Components/Chip/Chip.vue.d.ts +1 -1
  56. package/dist/Components/Chip/composables/useChip.d.ts +1 -1
  57. package/dist/Components/Chip/composables/useChip.js +6 -6
  58. package/dist/Components/Divider/composables/useDivider.js +5 -5
  59. package/dist/Components/Drawer/Drawer.vue.d.ts +2 -2
  60. package/dist/Components/Drawer/composables/useDrawer.d.ts +1 -1
  61. package/dist/Components/Drawer/composables/useDrawer.js +23 -23
  62. package/dist/Components/FormControl/FormControl.vue_vue_type_script_setup_true_lang.js +1 -1
  63. package/dist/Components/FormControl/composables/useFormControl.d.ts +13 -4
  64. package/dist/Components/FormControl/composables/useFormControl.js +63 -59
  65. package/dist/Components/FormControl/formControl.types.d.ts +6 -6
  66. package/dist/Components/FormControl/index.d.ts +1 -1
  67. package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  68. package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  69. package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  70. package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  71. package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +2 -2
  72. package/dist/Components/FormField/composables/useFormField.d.ts +7 -3
  73. package/dist/Components/FormField/composables/useFormField.js +29 -29
  74. package/dist/Components/FormField/formField.types.d.ts +14 -14
  75. package/dist/Components/Icon/composables/useIcon.js +5 -5
  76. package/dist/Components/Label/composables/useLabel.js +5 -5
  77. package/dist/Components/Link/composables/useLink.js +9 -9
  78. package/dist/Components/List/composables/useList.js +6 -6
  79. package/dist/Components/ListItem/ListItem.vue.d.ts +1 -1
  80. package/dist/Components/ListItem/composables/useListItem.d.ts +1 -1
  81. package/dist/Components/ListItem/composables/useListItem.js +20 -20
  82. package/dist/Components/ListSection/composables/useListSection.js +8 -8
  83. package/dist/Components/Listbox/Listbox.vue.d.ts +3 -3
  84. package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +29 -28
  85. package/dist/Components/Listbox/composables/useListbox.d.ts +10 -1
  86. package/dist/Components/Listbox/composables/useListbox.js +23 -23
  87. package/dist/Components/Listbox/index.d.ts +1 -0
  88. package/dist/Components/Listbox/index.js +3 -3
  89. package/dist/Components/Listbox/listbox.types.d.ts +6 -0
  90. package/dist/Components/Menu/Menu.vue.d.ts +2 -2
  91. package/dist/Components/Menu/composables/useMenu.js +43 -43
  92. package/dist/Components/Modal/Modal.vue.d.ts +2 -2
  93. package/dist/Components/Modal/composables/useModal.d.ts +1 -1
  94. package/dist/Components/Modal/composables/useModal.js +18 -18
  95. package/dist/Components/NumberField/NumberField.vue.d.ts +2 -2
  96. package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +34 -34
  97. package/dist/Components/NumberField/composables/useNumberField.d.ts +4 -4
  98. package/dist/Components/NumberField/composables/useNumberField.js +13 -10
  99. package/dist/Components/OtpField/OtpField.js +5 -0
  100. package/dist/Components/OtpField/OtpField.vue.d.ts +31 -0
  101. package/dist/Components/OtpField/OtpField.vue_vue_type_script_setup_true_lang.js +62 -0
  102. package/dist/Components/OtpField/composables/useOtpField.d.ts +287 -0
  103. package/dist/Components/OtpField/composables/useOtpField.js +154 -0
  104. package/dist/Components/OtpField/index.d.ts +4 -0
  105. package/dist/Components/OtpField/index.js +3 -0
  106. package/dist/Components/OtpField/otpField.types.d.ts +120 -0
  107. package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +23 -23
  108. package/dist/Components/PasswordField/composables/usePasswordField.d.ts +4 -4
  109. package/dist/Components/PasswordField/composables/usePasswordField.js +6 -3
  110. package/dist/Components/Progress/composables/useProgress.js +11 -11
  111. package/dist/Components/Radio/Radio.vue_vue_type_script_setup_true_lang.js +2 -2
  112. package/dist/Components/Radio/composables/useRadio.d.ts +3 -3
  113. package/dist/Components/Radio/composables/useRadio.js +9 -9
  114. package/dist/Components/Select/Select.vue.d.ts +5 -5
  115. package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +16 -13
  116. package/dist/Components/Select/composables/useSelect.d.ts +5 -4
  117. package/dist/Components/Select/composables/useSelect.js +167 -163
  118. package/dist/Components/Skeleton/composables/useSkeleton.js +5 -5
  119. package/dist/Components/Slider/Slider.js +5 -0
  120. package/dist/Components/Slider/Slider.vue.d.ts +25 -0
  121. package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +113 -0
  122. package/dist/Components/Slider/composables/useSlider.d.ts +482 -0
  123. package/dist/Components/Slider/composables/useSlider.js +287 -0
  124. package/dist/Components/Slider/index.d.ts +4 -0
  125. package/dist/Components/Slider/index.js +3 -0
  126. package/dist/Components/Slider/slider.types.d.ts +169 -0
  127. package/dist/Components/Snackbar/Snackbar.vue.d.ts +2 -2
  128. package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +54 -54
  129. package/dist/Components/Snackbar/composables/useSnackbar.js +115 -115
  130. package/dist/Components/Spinner/composables/useSpinner.js +11 -11
  131. package/dist/Components/Switch/Switch.vue_vue_type_script_setup_true_lang.js +2 -2
  132. package/dist/Components/Switch/composables/useSwitch.d.ts +3 -3
  133. package/dist/Components/Switch/composables/useSwitch.js +9 -9
  134. package/dist/Components/Tab/composables/useTab.js +11 -11
  135. package/dist/Components/TabList/composables/useTabList.js +7 -7
  136. package/dist/Components/TabPanel/composables/useTabPanel.js +7 -7
  137. package/dist/Components/Tabs/Tabs.vue.d.ts +2 -2
  138. package/dist/Components/Tabs/composables/useTabs.js +22 -22
  139. package/dist/Components/TextField/TextField.vue.d.ts +1 -1
  140. package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +6 -6
  141. package/dist/Components/TextField/composables/useTextField.d.ts +4 -4
  142. package/dist/Components/TextField/composables/useTextField.js +2 -2
  143. package/dist/Components/Textarea/Textarea.vue.d.ts +1 -1
  144. package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +6 -6
  145. package/dist/Components/Textarea/composables/useTextarea.d.ts +4 -4
  146. package/dist/Components/Textarea/composables/useTextarea.js +10 -9
  147. package/dist/Components/Tooltip/composables/useTooltip.js +17 -17
  148. package/dist/Provider/bridgeUITypes.d.ts +4 -1
  149. package/dist/Provider/createBridgeUIApi.js +13 -1
  150. package/dist/Utils/index.d.ts +3 -3
  151. package/dist/Utils/index.js +11 -8
  152. package/dist/Utils/useBreakpoint.js +7 -7
  153. package/dist/augments.d.ts +29 -17
  154. package/dist/index.d.ts +11 -3
  155. package/dist/index.js +88 -80
  156. package/docs/README.md +56 -0
  157. package/docs/components/Alert.md +96 -0
  158. package/docs/components/Autocomplete.md +198 -0
  159. package/docs/components/Avatar.md +60 -0
  160. package/docs/components/Badge.md +47 -0
  161. package/docs/components/BaseField.md +126 -0
  162. package/docs/components/BridgeUIProvider.md +151 -0
  163. package/docs/components/Button.md +93 -0
  164. package/docs/components/Card.md +287 -0
  165. package/docs/components/Checkbox.md +87 -0
  166. package/docs/components/Divider.md +56 -0
  167. package/docs/components/Drawer.md +137 -0
  168. package/docs/components/FormControl.md +66 -0
  169. package/docs/components/FormField.md +71 -0
  170. package/docs/components/I18n.md +125 -0
  171. package/docs/components/Icon.md +88 -0
  172. package/docs/components/Label.md +31 -0
  173. package/docs/components/Link.md +71 -0
  174. package/docs/components/List.md +167 -0
  175. package/docs/components/Menu.md +97 -0
  176. package/docs/components/Modal.md +154 -0
  177. package/docs/components/NumberField.md +80 -0
  178. package/docs/components/OtpField.md +133 -0
  179. package/docs/components/PasswordField.md +82 -0
  180. package/docs/components/Progress.md +68 -0
  181. package/docs/components/Radio.md +91 -0
  182. package/docs/components/Select.md +181 -0
  183. package/docs/components/Skeleton.md +38 -0
  184. package/docs/components/Slider.md +140 -0
  185. package/docs/components/Snackbar.md +99 -0
  186. package/docs/components/Spinner.md +61 -0
  187. package/docs/components/Switch.md +72 -0
  188. package/docs/components/Tabs.md +207 -0
  189. package/docs/components/TextField.md +72 -0
  190. package/docs/components/Textarea.md +80 -0
  191. package/docs/components/Tooltip.md +125 -0
  192. package/docs/components/useBreakpoint.md +100 -0
  193. package/docs/components/useDialogAction.md +97 -0
  194. package/docs/components/useDrawerAction.md +75 -0
  195. package/docs/components/useModalAction.md +75 -0
  196. package/docs/components/useSnackbarAction.md +85 -0
  197. package/docs/examples/i18n-dictionary.ts +48 -0
  198. package/docs/examples/i18n-vue-i18n.ts +34 -0
  199. package/docs/examples/icon-fontawesome.ts +112 -0
  200. package/docs/examples/icon-heroicons.ts +57 -0
  201. package/docs/examples/icon-lucide.ts +57 -0
  202. package/docs/examples/icon-phosphor.ts +57 -0
  203. package/docs/examples/icon-tabler.ts +57 -0
  204. package/package.json +13 -5
@@ -0,0 +1,287 @@
1
+ import { useBridgeUI as e } from "../../../Provider/useBridgeUI.js";
2
+ import { mergePartBind as t, useBridgeUIComponent as n, useBridgeUIMergedRegistryClasses as r } from "../../../Utils/index.js";
3
+ import { baseFieldBridgeKeys as i, useBaseField as a } from "../../BaseField/composables/useBaseField.js";
4
+ import { computed as o, ref as s, toValue as ee, useAttrs as te, watch as ne } from "vue";
5
+ import { cn as c, getSliderBarGeometry as re, getSliderPointerClientX as l, isSliderStopCovered as ie, mergeBridgeUILayeredClasses as u, normalizeSliderStops as ae, percentFromSliderPointer as d, percentToValue as f, pickClosestSliderThumb as oe, resolveSliderBounds as se, snapSliderValue as p, sortSliderRangeValue as ce, splitComponentProps as le, stepSliderValue as m, valueToPercent as h, writeSliderRangeThumb as g } from "@bridge-ui/core";
6
+ import { get as _, omit as v, pick as y } from "es-toolkit/compat";
7
+ import { colorProps as ue, invalidatedProps as de, roundedProps as fe, sizeProps as b } from "@bridge-ui/core/Tokens/Slider";
8
+ //#region src/Components/Slider/composables/useSlider.ts
9
+ var x = [
10
+ "max",
11
+ "min",
12
+ "step",
13
+ "color",
14
+ "range",
15
+ "stops",
16
+ "rounded",
17
+ "showStops",
18
+ "showTooltip",
19
+ "defaultValue"
20
+ ], pe = [...i, ...x];
21
+ function S(e, t, n) {
22
+ return n && Array.isArray(e) ? e[t] : Array.isArray(e) ? e[0] : e;
23
+ }
24
+ function C(e, t, n, r) {
25
+ return !r || !Array.isArray(e) ? {
26
+ thumbIndex: t,
27
+ value: n
28
+ } : g(e, t, n);
29
+ }
30
+ function w(g, w, T, E = {}) {
31
+ let me = te(), he = e(), D = s(null), O = s(null), k = s(null), A = s(null), j = o(() => le({
32
+ bridgeKeys: pe,
33
+ props: {
34
+ ...me,
35
+ ...ee(g)
36
+ }
37
+ })), M = a(o(() => y(j.value.componentProps, i)), {
38
+ error: !1,
39
+ hideErrorMessage: !1,
40
+ size: w.size ?? "md"
41
+ }, {
42
+ componentName: "Slider",
43
+ labelHtmlFor: (e) => `${e}-thumb-0`
44
+ }), { merged: N, entry: P } = n({
45
+ libDefaults: w,
46
+ componentName: "Slider",
47
+ props: () => ({
48
+ ...y(j.value.componentProps, x),
49
+ size: M.merged.value.size,
50
+ classes: j.value.componentProps.classes,
51
+ customProps: j.value.componentProps.customProps
52
+ })
53
+ }), F = o(() => N.value.customProps), I = r({
54
+ entry: P,
55
+ props: () => j.value.componentProps
56
+ }), L = o(() => se({
57
+ min: N.value.min,
58
+ max: N.value.max,
59
+ step: N.value.step
60
+ })), R = o(() => !!N.value.range), z = o(() => N.value.showTooltip !== !1), B = o(() => he?.global.value.direction === "rtl"), { controlId: V, isDisabled: H, isReadonly: U, invalidated: W, ariaDescribedBy: ge } = M, G = o(() => {
61
+ let e = T.value, t = L.value;
62
+ if (R.value) {
63
+ if (Array.isArray(e)) return ce(p(e[0], t.min, t.max, t.step), p(e[1], t.min, t.max, t.step));
64
+ let n = p(typeof e == "number" ? e : t.min, t.min, t.max, t.step);
65
+ return [n, n];
66
+ }
67
+ return p(Array.isArray(e) ? e[0] : typeof e == "number" ? e : t.min, t.min, t.max, t.step);
68
+ }), K = o(() => ae({
69
+ min: L.value.min,
70
+ max: L.value.max,
71
+ step: L.value.step,
72
+ stops: N.value.stops,
73
+ showStops: N.value.showStops
74
+ })), q = o(() => re({
75
+ range: R.value,
76
+ min: L.value.min,
77
+ max: L.value.max,
78
+ value: G.value
79
+ })), _e = o(() => _(u(ue, P.value?.tokens?.color), N.value.color ?? "primary")), J = o(() => u(de, P.value?.tokens?.invalidated, N.value.customProps?.invalidated)), Y = o(() => W.value ? J.value : _e.value), X = o(() => _(u(b, P.value?.tokens?.size), N.value.size ?? "md")), Z = o(() => _(u(fe, P.value?.tokens?.rounded), N.value.rounded ?? "full")), ve = o(() => K.value.some((e) => !!e.label)), Q = (e) => {
80
+ T.value = e, E.onChange?.(e);
81
+ }, ye = (e) => {
82
+ D.value &&= { thumbIndex: e }, O.value !== null && (O.value = e);
83
+ }, be = (e, t) => {
84
+ if (H.value || U.value) return;
85
+ let n = L.value, r = f(t, n.min, n.max, n.step), i = C(G.value, e, r, R.value);
86
+ i.thumbIndex !== e && ye(i.thumbIndex), Q(i.value);
87
+ }, $ = (e, t) => {
88
+ H.value || U.value || (e.preventDefault(), D.value = { thumbIndex: t }, O.value = t);
89
+ }, xe = (e) => {
90
+ if (H.value || U.value || e.target.closest("[data-bridge-slider-thumb]")) return;
91
+ let t = A.value?.getBoundingClientRect();
92
+ if (!t) return;
93
+ let n = d({
94
+ rect: t,
95
+ isRtl: B.value,
96
+ clientX: l(e)
97
+ }), r = L.value, i = f(n, r.min, r.max, r.step), a = 0, o = G.value;
98
+ R.value && Array.isArray(o) && (a = oe(i, o[0], o[1]));
99
+ let s = C(o, a, i, R.value);
100
+ Q(s.value), $(e, s.thumbIndex);
101
+ }, Se = (e) => (t) => {
102
+ $(t, e);
103
+ }, Ce = (e) => (t) => {
104
+ if (H.value || U.value) return;
105
+ let n = L.value, r = S(G.value, e, R.value), i = null, a = B.value;
106
+ switch (t.key) {
107
+ case "ArrowRight":
108
+ i = m(r, a ? -1 : 1, n.min, n.max, n.step);
109
+ break;
110
+ case "ArrowLeft":
111
+ i = m(r, a ? 1 : -1, n.min, n.max, n.step);
112
+ break;
113
+ case "ArrowUp":
114
+ i = m(r, 1, n.min, n.max, n.step);
115
+ break;
116
+ case "ArrowDown":
117
+ i = m(r, -1, n.min, n.max, n.step);
118
+ break;
119
+ case "Home":
120
+ i = n.min;
121
+ break;
122
+ case "End":
123
+ i = n.max;
124
+ break;
125
+ case "PageUp":
126
+ i = m(r, 1, n.min, n.max, n.step * 10);
127
+ break;
128
+ case "PageDown":
129
+ i = m(r, -1, n.min, n.max, n.step * 10);
130
+ break;
131
+ default: break;
132
+ }
133
+ if (i === null) return;
134
+ t.preventDefault();
135
+ let o = C(G.value, e, i, R.value);
136
+ Q(o.value), o.thumbIndex !== e && document.getElementById(`${V.value}-thumb-${o.thumbIndex}`)?.focus();
137
+ };
138
+ ne(O, (e, t, n) => {
139
+ if (e === null) return;
140
+ let r = (e) => {
141
+ let t = A.value?.getBoundingClientRect();
142
+ if (!t || D.value === null) return;
143
+ let n = d({
144
+ rect: t,
145
+ isRtl: B.value,
146
+ clientX: l(e)
147
+ });
148
+ be(D.value.thumbIndex, n);
149
+ }, i = () => {
150
+ D.value = null, O.value = null;
151
+ };
152
+ window.addEventListener("pointermove", r), window.addEventListener("pointerup", i), window.addEventListener("pointercancel", i), n(() => {
153
+ window.removeEventListener("pointermove", r), window.removeEventListener("pointerup", i), window.removeEventListener("pointercancel", i);
154
+ });
155
+ });
156
+ let we = o(() => t({}, {}, c({
157
+ "relative w-full min-w-0 flex-1": !0,
158
+ "mb-6": ve.value
159
+ }))), Te = o(() => t({
160
+ ...v(F.value?.track ?? {}, ["style"]),
161
+ onPointerdown: xe
162
+ }, {}, c({
163
+ "relative w-full select-none touch-none": !0,
164
+ "cursor-pointer": !H.value && !U.value,
165
+ "cursor-not-allowed": H.value,
166
+ [X.value?.track ?? ""]: !0,
167
+ [Z.value ?? ""]: !0,
168
+ [Y.value?.track ?? ""]: !0,
169
+ [I.value.track ?? ""]: !0
170
+ })));
171
+ return {
172
+ bounds: L,
173
+ merged: N,
174
+ barBind: o(() => t(v(F.value?.bar ?? {}, ["style"]), {
175
+ "aria-hidden": !0,
176
+ style: {
177
+ width: q.value.width,
178
+ insetInlineStart: q.value.start
179
+ }
180
+ }, c({
181
+ "absolute top-0 h-full": !0,
182
+ [Z.value ?? ""]: !0,
183
+ [Y.value?.bar ?? ""]: !0,
184
+ [I.value.bar ?? ""]: !0
185
+ }))),
186
+ isRange: R,
187
+ trackRef: A,
188
+ baseField: M,
189
+ trackBind: Te,
190
+ controlBind: we,
191
+ showTooltip: z,
192
+ getStopBind: (e) => {
193
+ let n = h(e.value, L.value.min, L.value.max), r = ie({
194
+ range: R.value,
195
+ min: L.value.min,
196
+ max: L.value.max,
197
+ stopValue: e.value,
198
+ value: G.value
199
+ });
200
+ return t(v(F.value?.stop ?? {}, ["style"]), {
201
+ "aria-hidden": !0,
202
+ style: {
203
+ insetInlineStart: `${n}%`,
204
+ display: r ? "none" : void 0
205
+ }
206
+ }, c({
207
+ "absolute top-1/2 h-2 w-2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-white dark:bg-gray-400": !0,
208
+ [I.value.stop ?? ""]: !0
209
+ }));
210
+ },
211
+ thumbIndexes: o(() => R.value ? [0, 1] : [0]),
212
+ getThumbBind: (e) => {
213
+ let n = S(G.value, e, R.value), r = h(n, L.value.min, L.value.max), i = O.value === e;
214
+ return t({
215
+ ...v(F.value?.thumb ?? {}, ["style"]),
216
+ role: "slider",
217
+ type: "button",
218
+ "aria-valuenow": n,
219
+ "aria-valuemin": L.value.min,
220
+ "aria-valuemax": L.value.max,
221
+ tabIndex: H.value ? -1 : 0,
222
+ "data-bridge-slider-thumb": e,
223
+ disabled: H.value || void 0,
224
+ "aria-orientation": "horizontal",
225
+ "aria-describedby": ge.value,
226
+ onKeydown: Ce(e),
227
+ id: `${V.value}-thumb-${e}`,
228
+ "aria-disabled": H.value || void 0,
229
+ "aria-readonly": U.value || void 0,
230
+ "aria-invalid": W.value || void 0,
231
+ onPointerdown: Se(e),
232
+ style: { insetInlineStart: `${r}%` },
233
+ onFocus: () => {
234
+ k.value = e;
235
+ },
236
+ onPointerenter: () => {
237
+ k.value = e;
238
+ },
239
+ onBlur: () => {
240
+ O.value !== e && (k.value = k.value === e ? null : k.value);
241
+ },
242
+ onPointerleave: () => {
243
+ O.value !== e && (k.value = k.value === e ? null : k.value);
244
+ },
245
+ "aria-label": F.value?.thumb?.["aria-label"] ?? (R.value ? e === 0 ? "Minimum" : "Maximum" : M.merged.value.label || "Slider")
246
+ }, {}, c({
247
+ "absolute z-10 flex -translate-x-1/2 items-center justify-center bg-transparent leading-none outline-none": !0,
248
+ "cursor-grab": !H.value && !U.value,
249
+ "cursor-grabbing": i,
250
+ "cursor-not-allowed": H.value,
251
+ "focus-visible:ring-2 focus-visible:ring-offset-2": !0,
252
+ [Y.value?.focus ?? ""]: !0,
253
+ [X.value?.thumb ?? ""]: !0,
254
+ [I.value.thumb ?? ""]: !0
255
+ }));
256
+ },
257
+ resolvedStops: K,
258
+ resolvedValue: G,
259
+ isTooltipOpen: (e) => z.value && (O.value === e || k.value === e),
260
+ getStopLabelBind: (e) => {
261
+ let n = h(e.value, L.value.min, L.value.max);
262
+ return t(v(F.value?.stopLabel ?? {}, ["style"]), {
263
+ "aria-hidden": !0,
264
+ style: { insetInlineStart: `${n}%` }
265
+ }, c({
266
+ "absolute mt-5 -translate-x-1/2 text-xs whitespace-nowrap": !0,
267
+ "text-gray-700 dark:text-gray-400": !W.value,
268
+ [J.value.stopLabel ?? ""]: W.value,
269
+ [I.value.stopLabel ?? ""]: !0
270
+ }));
271
+ },
272
+ getThumbKnobBind: (e) => {
273
+ let n = O.value === e;
274
+ return t(F.value?.thumbKnob, { "aria-hidden": !0 }, c({
275
+ "block rounded-full border-2 shadow-sm transition-transform duration-100": !0,
276
+ "scale-120": n,
277
+ [X.value?.thumbKnob ?? ""]: !0,
278
+ [Y.value?.thumb ?? ""]: !0,
279
+ [I.value.thumbKnob ?? ""]: !0
280
+ }));
281
+ },
282
+ tooltipProps: o(() => F.value?.tooltip),
283
+ readThumbValue: (e) => S(G.value, e, R.value)
284
+ };
285
+ }
286
+ //#endregion
287
+ export { w as useSlider };
@@ -0,0 +1,4 @@
1
+ export { useSlider } from './composables/useSlider';
2
+ export type { UseSliderOptions, UseSliderReturn, } from './composables/useSlider';
3
+ export type { SliderClasses, SliderColorOverrides, SliderCustomProps, SliderEmits, SliderOwnProps, SliderProps, SliderRangeValue, SliderRoundedOverrides, SliderSizeOverrides, SliderSlots, SliderStop, SliderStopInput, } from './slider.types';
4
+ export { default as Slider } from './Slider.vue';
@@ -0,0 +1,3 @@
1
+ import { useSlider as e } from "./composables/useSlider.js";
2
+ import t from "./Slider.js";
3
+ export { t as Slider, e as useSlider };
@@ -0,0 +1,169 @@
1
+ import { ButtonHTMLAttributes, HTMLAttributes, Slot } from 'vue';
2
+ import { BaseFieldInvalidated, MergeHtmlProps, MergeProps, SliderColor, SliderInvalidated, SliderRangeValue, SliderRounded, SliderStopInput } from '@bridge-ui/core';
3
+ import { BaseFieldClasses, BaseFieldCustomProps, BaseFieldOwnProps, BaseFieldSlots } from '../BaseField/baseField.types';
4
+ import { TooltipOwnProps } from '../Tooltip/tooltip.types';
5
+ export type { SliderRangeValue, SliderStop, SliderStopInput, } from '@bridge-ui/core';
6
+ export interface SliderSizeOverrides {}
7
+ export interface SliderColorOverrides {}
8
+ export interface SliderRoundedOverrides {}
9
+ export interface SliderClasses extends BaseFieldClasses {
10
+ /**
11
+ * Classes for the filled bar.
12
+ */
13
+ bar?: string;
14
+ /**
15
+ * Classes for stop markers.
16
+ */
17
+ stop?: string;
18
+ /**
19
+ * Classes for stop labels.
20
+ */
21
+ stopLabel?: string;
22
+ /**
23
+ * Classes for thumb hit-area wrappers.
24
+ */
25
+ thumb?: string;
26
+ /**
27
+ * Classes for the visible thumb knob.
28
+ */
29
+ thumbKnob?: string;
30
+ /**
31
+ * Classes for the track.
32
+ */
33
+ track?: string;
34
+ }
35
+ export interface SliderCustomProps extends Omit<BaseFieldCustomProps, "invalidated"> {
36
+ /**
37
+ * Props forwarded to the filled bar.
38
+ */
39
+ bar?: HTMLAttributes;
40
+ /**
41
+ * Control error chrome (`bar`, `thumb`, `track`, …). Error message color comes
42
+ * from {@link BaseField}; pass `errorMessage` here to override.
43
+ *
44
+ * @default undefined
45
+ */
46
+ invalidated?: Partial<SliderInvalidated & BaseFieldInvalidated>;
47
+ /**
48
+ * Props forwarded to stop markers.
49
+ */
50
+ stop?: HTMLAttributes;
51
+ /**
52
+ * Props forwarded to stop labels.
53
+ */
54
+ stopLabel?: HTMLAttributes;
55
+ /**
56
+ * Props forwarded to thumb hit-area buttons.
57
+ */
58
+ thumb?: Partial<ButtonHTMLAttributes>;
59
+ /**
60
+ * Props forwarded to the visible thumb knob.
61
+ */
62
+ thumbKnob?: HTMLAttributes;
63
+ /**
64
+ * Props forwarded to each value `Tooltip` (`content` is owned by the slider).
65
+ */
66
+ tooltip?: Partial<Omit<TooltipOwnProps, "slots" | "content" | "anchorEl" | "modelValue">>;
67
+ /**
68
+ * Props forwarded to the track element.
69
+ */
70
+ track?: HTMLAttributes;
71
+ }
72
+ export interface SliderEmits {
73
+ /**
74
+ * Emitted when the slider value changes.
75
+ * Listen with `@change` / `v-on:change`.
76
+ */
77
+ change: [value: number | SliderRangeValue];
78
+ /**
79
+ * Emitted when `v-model` should update.
80
+ */
81
+ "update:modelValue": [value: number | SliderRangeValue];
82
+ }
83
+ export interface SliderOwnProps extends Omit<BaseFieldOwnProps, "field" | "slots" | "classes" | "children" | "customProps"> {
84
+ /**
85
+ * Classes for the field chrome and the slider control.
86
+ *
87
+ * @default undefined
88
+ */
89
+ classes?: SliderClasses;
90
+ /**
91
+ * The color to apply to the slider bar and thumbs.
92
+ *
93
+ * @default "primary"
94
+ */
95
+ color?: MergeProps<SliderColor, SliderColorOverrides>;
96
+ /**
97
+ * Extra props for internal parts (`track`, `thumb`, `tooltip`, …).
98
+ *
99
+ * @default undefined
100
+ */
101
+ customProps?: SliderCustomProps;
102
+ /**
103
+ * Uncontrolled initial value. Use a tuple when `range` is enabled.
104
+ *
105
+ * @default min (or `[min, min]` when `range`)
106
+ */
107
+ defaultValue?: number | SliderRangeValue;
108
+ /**
109
+ * Maximum value of the slider.
110
+ *
111
+ * @default 100
112
+ */
113
+ max?: number;
114
+ /**
115
+ * Minimum value of the slider.
116
+ *
117
+ * @default 0
118
+ */
119
+ min?: number;
120
+ /**
121
+ * When `true`, the slider selects a range with two thumbs.
122
+ *
123
+ * @default false
124
+ */
125
+ range?: boolean;
126
+ /**
127
+ * The roundedness of the track and bar.
128
+ *
129
+ * @default "full"
130
+ */
131
+ rounded?: MergeProps<SliderRounded, SliderRoundedOverrides>;
132
+ /**
133
+ * When `true`, renders stop marks (from `stops`, or every `step` when
134
+ * `stops` is empty).
135
+ *
136
+ * @default false
137
+ */
138
+ showStops?: boolean;
139
+ /**
140
+ * When `true`, shows a Tooltip with the current value on each thumb.
141
+ *
142
+ * @default true
143
+ */
144
+ showTooltip?: boolean;
145
+ /**
146
+ * Step increment between values.
147
+ *
148
+ * @default 1
149
+ */
150
+ step?: number;
151
+ /**
152
+ * Custom stop marks. Numbers are treated as `{ value }`.
153
+ *
154
+ * @default undefined
155
+ */
156
+ stops?: readonly SliderStopInput[];
157
+ }
158
+ export interface SliderSlots extends BaseFieldSlots {
159
+ /**
160
+ * Optional custom thumb content (replaces the default knob).
161
+ */
162
+ thumb?: Slot;
163
+ }
164
+ export type SliderProps = MergeHtmlProps<SliderOwnProps, Omit<HTMLAttributes, "color" | "defaultValue">> & {
165
+ /**
166
+ * Bound with `v-model` on the component (`defineModel` internally).
167
+ */
168
+ modelValue?: number | SliderRangeValue;
169
+ };
@@ -6,13 +6,13 @@ type __VLS_ModelProps = {
6
6
  };
7
7
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
8
8
  declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
9
- "update:modelValue": (value: boolean) => any;
10
9
  close: () => any;
10
+ "update:modelValue": (value: boolean) => any;
11
11
  "show-change": (show: boolean) => any;
12
12
  "leave-complete": () => any;
13
13
  }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
14
- "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
15
14
  onClose?: (() => any) | undefined;
15
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
16
16
  "onShow-change"?: ((show: boolean) => any) | undefined;
17
17
  "onLeave-complete"?: (() => any) | undefined;
18
18
  }>, {
@@ -1,10 +1,10 @@
1
- import { useI18nAdapter as e } from "../../Adapters/I18n/useI18nAdapter.js";
1
+ import { useResolveMessage as e } from "../../Adapters/I18n/useI18nAdapter.js";
2
2
  import t from "../Icon/Icon.js";
3
3
  import { useSnackbar as n } from "./composables/useSnackbar.js";
4
4
  import { Teleport as r, computed 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, mergeModels as p, mergeProps as m, normalizeClass as h, normalizeProps as g, openBlock as _, renderSlot as v, toDisplayString as y, unref as b, useModel as x, useSlots as S } from "vue";
5
- import { cn as C, resolveMessage as w } from "@bridge-ui/core";
5
+ import { cn as C } from "@bridge-ui/core";
6
6
  //#region src/Components/Snackbar/Snackbar.vue?vue&type=script&setup=true&lang.ts
7
- var T = { class: "w-full max-w-sm pointer-events-auto" }, E = ["src"], D = { class: "flex ml-4 shrink-0" }, O = ["aria-label"], k = ["src"], A = { class: "flex ml-4 shrink-0" }, j = ["aria-label"], M = /* @__PURE__ */ d({
7
+ var w = { class: "w-full max-w-sm pointer-events-auto" }, T = ["src"], E = { class: "flex ml-4 shrink-0" }, D = ["aria-label"], O = ["src"], k = { class: "flex ml-4 shrink-0" }, A = ["aria-label"], j = /* @__PURE__ */ d({
8
8
  inheritAttrs: !1,
9
9
  __name: "Snackbar",
10
10
  props: /* @__PURE__ */ p({
@@ -49,7 +49,7 @@ var T = { class: "w-full max-w-sm pointer-events-auto" }, E = ["src"], D = { cla
49
49
  "show-change"
50
50
  ], ["update:modelValue"]),
51
51
  setup(d, { emit: p }) {
52
- let M = S(), N = p, P = d, F = e(), { merged: I, rendered: L, iconBind: R, panelBind: z, titleBind: B, isPortaled: V, portalBind: H, contentBind: U, showProgress: W, progressBind: G, resolvedIcon: K, requestClose: q, descriptionBind: J } = n(P, {
52
+ let j = S(), M = p, N = d, P = e(), { merged: F, rendered: I, iconBind: L, panelBind: R, titleBind: z, isPortaled: B, portalBind: V, contentBind: H, showProgress: U, progressBind: W, resolvedIcon: G, requestClose: K, descriptionBind: q } = n(N, {
53
53
  rounded: "lg",
54
54
  duration: 5e3,
55
55
  color: "primary",
@@ -61,102 +61,102 @@ var T = { class: "w-full max-w-sm pointer-events-auto" }, E = ["src"], D = { cla
61
61
  position: "bottom-center"
62
62
  }, {
63
63
  show: x(d, "modelValue"),
64
- stackId: P.stackId,
65
- onClose: () => N("close"),
66
- onLeaveComplete: () => N("leave-complete"),
67
- onShowChange: (e) => N("show-change", e)
68
- }), Y = i(() => !!(M.icon || K.value || I.value.img)), X = i(() => !!(M.title || I.value.title)), Z = i(() => !!(M.description || I.value.description)), Q = i(() => !!M.right), $ = i(() => I.value.teleportTo === !1), ee = i(() => I.value.teleportTo === !1 ? "body" : I.value.teleportTo);
64
+ stackId: N.stackId,
65
+ onClose: () => M("close"),
66
+ onLeaveComplete: () => M("leave-complete"),
67
+ onShowChange: (e) => M("show-change", e)
68
+ }), J = i(() => !!(j.icon || G.value || F.value.img)), Y = i(() => !!(j.title || F.value.title)), X = i(() => !!(j.description || F.value.description)), Z = i(() => !!j.right), Q = i(() => F.value.teleportTo === !1), $ = i(() => F.value.teleportTo === !1 ? "body" : F.value.teleportTo);
69
69
  return (e, n) => (_(), a(r, {
70
- to: ee.value,
71
- disabled: $.value
72
- }, [b(L) && b(V) ? (_(), s("div", g(m({ key: 0 }, b(H))), [c("div", T, [c("div", m(b(z), { class: b(C)(b(z).class, { flex: Q.value }) }), [
73
- c("div", g(f(b(U)(Q.value))), [c("div", { class: h({
74
- "flex items-start": !Q.value,
75
- "w-full flex": Q.value
70
+ to: $.value,
71
+ disabled: Q.value
72
+ }, [b(I) && b(B) ? (_(), s("div", g(m({ key: 0 }, b(V))), [c("div", w, [c("div", m(b(R), { class: b(C)(b(R).class, { flex: Z.value }) }), [
73
+ c("div", g(f(b(H)(Z.value))), [c("div", { class: h({
74
+ "flex items-start": !Z.value,
75
+ "w-full flex": Z.value
76
76
  }) }, [
77
- Y.value ? (_(), s("div", {
77
+ J.value ? (_(), s("div", {
78
78
  key: 0,
79
79
  class: h(["shrink-0", {
80
- "w-6": !!(b(K) || b(M).icon),
81
- "pt-0.5": !!b(I).img
80
+ "w-6": !!(b(G) || b(j).icon),
81
+ "pt-0.5": !!b(F).img
82
82
  }])
83
83
  }, [
84
84
  v(e.$slots, "icon"),
85
- !b(M).icon && b(I).img ? (_(), s("img", {
85
+ !b(j).icon && b(F).img ? (_(), s("img", {
86
86
  key: 0,
87
87
  alt: "",
88
- src: b(I).img,
88
+ src: b(F).img,
89
89
  class: "w-10 h-10 rounded-full"
90
- }, null, 8, E)) : o("", !0),
91
- !b(M).icon && !b(I).img && b(K) ? (_(), a(b(t), m({ key: 1 }, b(R), { icon: b(K) }), null, 16, ["icon"])) : o("", !0)
90
+ }, null, 8, T)) : o("", !0),
91
+ !b(j).icon && !b(F).img && b(G) ? (_(), a(b(t), m({ key: 1 }, b(L), { icon: b(G) }), null, 16, ["icon"])) : o("", !0)
92
92
  ], 2)) : o("", !0),
93
- c("div", { class: h(["w-0 flex-1 pt-0.5", { "ml-3": Y.value }]) }, [
94
- X.value ? (_(), s("p", g(m({ key: 0 }, b(B))), [v(e.$slots, "title", {}, () => [l(y(b(I).title), 1)])], 16)) : o("", !0),
95
- Z.value ? (_(), s("p", g(m({ key: 1 }, b(J))), [v(e.$slots, "description", {}, () => [l(y(b(I).description), 1)])], 16)) : o("", !0),
93
+ c("div", { class: h(["w-0 flex-1 pt-0.5", { "ml-3": J.value }]) }, [
94
+ Y.value ? (_(), s("p", g(m({ key: 0 }, b(z))), [v(e.$slots, "title", {}, () => [l(y(b(F).title), 1)])], 16)) : o("", !0),
95
+ X.value ? (_(), s("p", g(m({ key: 1 }, b(q))), [v(e.$slots, "description", {}, () => [l(y(b(F).description), 1)])], 16)) : o("", !0),
96
96
  v(e.$slots, "default"),
97
- b(M).actions ? (_(), s("div", {
97
+ b(j).actions ? (_(), s("div", {
98
98
  key: 2,
99
- class: h(["flex mt-3 gap-x-3", b(I).classes?.actions])
99
+ class: h(["flex mt-3 gap-x-3", b(F).classes?.actions])
100
100
  }, [v(e.$slots, "actions")], 2)) : o("", !0)
101
101
  ], 2),
102
- c("div", D, [v(e.$slots, "trailing"), b(I).closeButton === !1 ? o("", !0) : (_(), s("button", {
102
+ c("div", E, [v(e.$slots, "trailing"), b(F).closeButton === !1 ? o("", !0) : (_(), s("button", {
103
103
  key: 0,
104
104
  type: "button",
105
- onClick: n[0] ||= (...e) => b(q) && b(q)(...e),
106
- "aria-label": b(w)("Close", b(F)),
105
+ onClick: n[0] ||= (...e) => b(K) && b(K)(...e),
106
+ "aria-label": b(P)("Close"),
107
107
  class: "cursor-pointer inline-flex rounded-md text-dark-400 hover:text-dark-500 focus:outline-hidden"
108
108
  }, [u(b(t), {
109
109
  size: "lg",
110
110
  icon: "clear"
111
- })], 8, O))])
111
+ })], 8, D))])
112
112
  ], 2)], 16),
113
113
  v(e.$slots, "right"),
114
- b(W) ? (_(), s("div", g(m({ key: 0 }, b(G))), null, 16)) : o("", !0)
115
- ], 16)])], 16)) : b(L) ? (_(), s("div", m({ key: 1 }, b(z), { class: b(C)(b(z).class, { flex: Q.value }) }), [
116
- c("div", g(f(b(U)(Q.value))), [c("div", { class: h({
117
- "flex items-start": !Q.value,
118
- "w-full flex": Q.value
114
+ b(U) ? (_(), s("div", g(m({ key: 0 }, b(W))), null, 16)) : o("", !0)
115
+ ], 16)])], 16)) : b(I) ? (_(), s("div", m({ key: 1 }, b(R), { class: b(C)(b(R).class, { flex: Z.value }) }), [
116
+ c("div", g(f(b(H)(Z.value))), [c("div", { class: h({
117
+ "flex items-start": !Z.value,
118
+ "w-full flex": Z.value
119
119
  }) }, [
120
- Y.value ? (_(), s("div", {
120
+ J.value ? (_(), s("div", {
121
121
  key: 0,
122
122
  class: h(["shrink-0", {
123
- "w-6": !!(b(K) || b(M).icon),
124
- "pt-0.5": !!b(I).img
123
+ "w-6": !!(b(G) || b(j).icon),
124
+ "pt-0.5": !!b(F).img
125
125
  }])
126
126
  }, [
127
127
  v(e.$slots, "icon"),
128
- !b(M).icon && b(I).img ? (_(), s("img", {
128
+ !b(j).icon && b(F).img ? (_(), s("img", {
129
129
  key: 0,
130
130
  alt: "",
131
- src: b(I).img,
131
+ src: b(F).img,
132
132
  class: "w-10 h-10 rounded-full"
133
- }, null, 8, k)) : o("", !0),
134
- !b(M).icon && !b(I).img && b(K) ? (_(), a(b(t), m({ key: 1 }, b(R), { icon: b(K) }), null, 16, ["icon"])) : o("", !0)
133
+ }, null, 8, O)) : o("", !0),
134
+ !b(j).icon && !b(F).img && b(G) ? (_(), a(b(t), m({ key: 1 }, b(L), { icon: b(G) }), null, 16, ["icon"])) : o("", !0)
135
135
  ], 2)) : o("", !0),
136
- c("div", { class: h(["w-0 flex-1 pt-0.5", { "ml-3": Y.value }]) }, [
137
- X.value ? (_(), s("p", g(m({ key: 0 }, b(B))), [v(e.$slots, "title", {}, () => [l(y(b(I).title), 1)])], 16)) : o("", !0),
138
- Z.value ? (_(), s("p", g(m({ key: 1 }, b(J))), [v(e.$slots, "description", {}, () => [l(y(b(I).description), 1)])], 16)) : o("", !0),
136
+ c("div", { class: h(["w-0 flex-1 pt-0.5", { "ml-3": J.value }]) }, [
137
+ Y.value ? (_(), s("p", g(m({ key: 0 }, b(z))), [v(e.$slots, "title", {}, () => [l(y(b(F).title), 1)])], 16)) : o("", !0),
138
+ X.value ? (_(), s("p", g(m({ key: 1 }, b(q))), [v(e.$slots, "description", {}, () => [l(y(b(F).description), 1)])], 16)) : o("", !0),
139
139
  v(e.$slots, "default"),
140
- b(M).actions ? (_(), s("div", {
140
+ b(j).actions ? (_(), s("div", {
141
141
  key: 2,
142
- class: h(["flex mt-3 gap-x-3", b(I).classes?.actions])
142
+ class: h(["flex mt-3 gap-x-3", b(F).classes?.actions])
143
143
  }, [v(e.$slots, "actions")], 2)) : o("", !0)
144
144
  ], 2),
145
- c("div", A, [v(e.$slots, "trailing"), b(I).closeButton === !1 ? o("", !0) : (_(), s("button", {
145
+ c("div", k, [v(e.$slots, "trailing"), b(F).closeButton === !1 ? o("", !0) : (_(), s("button", {
146
146
  key: 0,
147
147
  type: "button",
148
- onClick: n[1] ||= (...e) => b(q) && b(q)(...e),
149
- "aria-label": b(w)("Close", b(F)),
148
+ onClick: n[1] ||= (...e) => b(K) && b(K)(...e),
149
+ "aria-label": b(P)("Close"),
150
150
  class: "cursor-pointer inline-flex rounded-md text-dark-400 hover:text-dark-500 focus:outline-hidden"
151
151
  }, [u(b(t), {
152
152
  size: "lg",
153
153
  icon: "clear"
154
- })], 8, j))])
154
+ })], 8, A))])
155
155
  ], 2)], 16),
156
156
  v(e.$slots, "right"),
157
- b(W) ? (_(), s("div", g(m({ key: 0 }, b(G))), null, 16)) : o("", !0)
157
+ b(U) ? (_(), s("div", g(m({ key: 0 }, b(W))), null, 16)) : o("", !0)
158
158
  ], 16)) : o("", !0)], 8, ["to", "disabled"]));
159
159
  }
160
160
  });
161
161
  //#endregion
162
- export { M as default };
162
+ export { j as default };