@bridge-ui/vue 0.0.11 → 0.1.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 (131) hide show
  1. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +1 -1
  2. package/dist/Components/Autocomplete/composables/useAutocomplete.js +112 -113
  3. package/dist/Components/BaseField/baseField.types.d.ts +1 -8
  4. package/dist/Components/BaseField/composables/useBaseField.js +79 -83
  5. package/dist/Components/Calendar/Calendar.vue_vue_type_script_setup_true_lang.js +2 -0
  6. package/dist/Components/Calendar/calendar.types.d.ts +13 -0
  7. package/dist/Components/Calendar/composables/useCalendar.d.ts +2 -1
  8. package/dist/Components/Calendar/composables/useCalendar.js +5 -2
  9. package/dist/Components/CalendarDate/CalendarDate.vue_vue_type_script_setup_true_lang.js +1 -0
  10. package/dist/Components/CalendarDate/calendarDate.types.d.ts +6 -0
  11. package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +1 -1
  12. package/dist/Components/CalendarDate/composables/useCalendarDate.js +95 -87
  13. package/dist/Components/CalendarMonth/CalendarMonth.vue_vue_type_script_setup_true_lang.js +1 -0
  14. package/dist/Components/CalendarMonth/calendarMonth.types.d.ts +6 -0
  15. package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +1 -1
  16. package/dist/Components/CalendarMonth/composables/useCalendarMonth.js +51 -43
  17. package/dist/Components/CalendarRange/CalendarRange.vue_vue_type_script_setup_true_lang.js +4 -2
  18. package/dist/Components/CalendarRange/calendarRange.types.d.ts +13 -0
  19. package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +3 -2
  20. package/dist/Components/CalendarRange/composables/useCalendarRange.js +14 -12
  21. package/dist/Components/CalendarYear/CalendarYear.vue_vue_type_script_setup_true_lang.js +1 -0
  22. package/dist/Components/CalendarYear/calendarYear.types.d.ts +6 -0
  23. package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +1 -1
  24. package/dist/Components/CalendarYear/composables/useCalendarYear.js +53 -45
  25. package/dist/Components/Checkbox/composables/useCheckbox.js +23 -19
  26. package/dist/Components/DateField/DateField.vue.d.ts +1 -0
  27. package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +13 -31
  28. package/dist/Components/DateField/composables/useDateField.d.ts +3 -4
  29. package/dist/Components/DateField/composables/useDateField.js +95 -107
  30. package/dist/Components/DateField/dateField.types.d.ts +16 -0
  31. package/dist/Components/DatePicker/DatePicker.vue_vue_type_script_setup_true_lang.js +6 -0
  32. package/dist/Components/DatePicker/composables/useDatePicker.d.ts +1 -1
  33. package/dist/Components/DatePicker/composables/useDatePicker.js +4 -27
  34. package/dist/Components/DatePicker/datePicker.types.d.ts +13 -0
  35. package/dist/Components/DateRangeField/DateRangeField.vue.d.ts +1 -0
  36. package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +39 -30
  37. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +4 -3
  38. package/dist/Components/DateRangeField/composables/useDateRangeField.js +55 -48
  39. package/dist/Components/DateRangeField/dateRangeField.types.d.ts +16 -0
  40. package/dist/Components/DateRangePicker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +6 -0
  41. package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +1 -1
  42. package/dist/Components/DateRangePicker/composables/useDateRangePicker.js +5 -1
  43. package/dist/Components/DateRangePicker/dateRangePicker.types.d.ts +13 -0
  44. package/dist/Components/DateTimeField/DateTimeField.vue.d.ts +1 -0
  45. package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +13 -6
  46. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +4 -3
  47. package/dist/Components/DateTimeField/composables/useDateTimeField.js +64 -84
  48. package/dist/Components/DateTimeField/dateTimeField.types.d.ts +16 -0
  49. package/dist/Components/DateTimePicker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +10 -0
  50. package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +1 -1
  51. package/dist/Components/DateTimePicker/composables/useDateTimePicker.js +4 -2
  52. package/dist/Components/DateTimePicker/dateTimePicker.types.d.ts +13 -0
  53. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue.d.ts +1 -0
  54. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +44 -37
  55. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +4 -3
  56. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.js +46 -66
  57. package/dist/Components/DateTimeRangeField/dateTimeRangeField.types.d.ts +16 -0
  58. package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +14 -0
  59. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +1 -1
  60. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.js +7 -4
  61. package/dist/Components/DateTimeRangePicker/dateTimeRangePicker.types.d.ts +13 -0
  62. package/dist/Components/Drawer/Drawer.vue_vue_type_script_setup_true_lang.js +4 -3
  63. package/dist/Components/FieldOverlay/composables/useFieldOverlay.js +3 -2
  64. package/dist/Components/FormControl/composables/useFormControl.js +61 -65
  65. package/dist/Components/FormControl/formControl.types.d.ts +1 -7
  66. package/dist/Components/FormField/composables/useFormField.js +115 -116
  67. package/dist/Components/FormField/formField.types.d.ts +1 -7
  68. package/dist/Components/Label/composables/useLabel.js +28 -28
  69. package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +1 -1
  70. package/dist/Components/Listbox/composables/useListbox.d.ts +4 -4
  71. package/dist/Components/Listbox/composables/useListbox.js +28 -24
  72. package/dist/Components/Listbox/listbox.types.d.ts +6 -6
  73. package/dist/Components/Menu/Menu.vue_vue_type_script_setup_true_lang.js +3 -5
  74. package/dist/Components/Modal/Modal.vue_vue_type_script_setup_true_lang.js +4 -3
  75. package/dist/Components/OtpField/composables/useOtpField.js +95 -94
  76. package/dist/Components/OtpField/otpField.types.d.ts +2 -9
  77. package/dist/Components/Radio/composables/useRadio.js +24 -20
  78. package/dist/Components/Select/composables/useSelect.d.ts +1 -1
  79. package/dist/Components/Select/composables/useSelect.js +21 -22
  80. package/dist/Components/Slider/composables/useSlider.js +167 -163
  81. package/dist/Components/Slider/slider.types.d.ts +2 -9
  82. package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +3 -2
  83. package/dist/Components/Switch/composables/useSwitch.js +28 -24
  84. package/dist/Components/TimeField/TimeField.vue.d.ts +1 -0
  85. package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +34 -25
  86. package/dist/Components/TimeField/composables/useTimeField.d.ts +4 -3
  87. package/dist/Components/TimeField/composables/useTimeField.js +67 -60
  88. package/dist/Components/TimeField/timeField.types.d.ts +16 -0
  89. package/dist/Components/TimePanel/TimePanel.vue_vue_type_script_setup_true_lang.js +2 -0
  90. package/dist/Components/TimePanel/composables/useTimePanel.d.ts +1 -1
  91. package/dist/Components/TimePanel/composables/useTimePanel.js +71 -60
  92. package/dist/Components/TimePanel/timePanel.types.d.ts +13 -0
  93. package/dist/Components/TimePicker/TimePicker.vue_vue_type_script_setup_true_lang.js +6 -0
  94. package/dist/Components/TimePicker/composables/useTimePicker.d.ts +1 -1
  95. package/dist/Components/TimePicker/composables/useTimePicker.js +5 -1
  96. package/dist/Components/TimePicker/timePicker.types.d.ts +13 -0
  97. package/dist/Components/TimeRangeField/TimeRangeField.vue.d.ts +1 -0
  98. package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +34 -25
  99. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +4 -3
  100. package/dist/Components/TimeRangeField/composables/useTimeRangeField.js +88 -81
  101. package/dist/Components/TimeRangeField/timeRangeField.types.d.ts +16 -0
  102. package/dist/Components/TimeRangePicker/TimeRangePicker.vue_vue_type_script_setup_true_lang.js +10 -0
  103. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +1 -1
  104. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.js +5 -1
  105. package/dist/Components/TimeRangePicker/timeRangePicker.types.d.ts +13 -0
  106. package/dist/Components/Tooltip/Tooltip.vue_vue_type_script_setup_true_lang.js +4 -6
  107. package/dist/Utils/index.d.ts +9 -0
  108. package/dist/Utils/index.js +23 -12
  109. package/docs/components/BaseField.md +1 -1
  110. package/docs/components/BridgeUIProvider.md +3 -3
  111. package/docs/components/Calendar.md +2 -0
  112. package/docs/components/CalendarDate.md +1 -0
  113. package/docs/components/CalendarMonth.md +1 -0
  114. package/docs/components/CalendarRange.md +2 -0
  115. package/docs/components/CalendarYear.md +17 -16
  116. package/docs/components/DateField.md +9 -0
  117. package/docs/components/DatePicker.md +2 -0
  118. package/docs/components/DateRangeField.md +30 -22
  119. package/docs/components/DateRangePicker.md +2 -0
  120. package/docs/components/DateTimeField.md +35 -28
  121. package/docs/components/DateTimePicker.md +2 -0
  122. package/docs/components/DateTimeRangeField.md +36 -28
  123. package/docs/components/DateTimeRangePicker.md +2 -0
  124. package/docs/components/FieldOverlay.md +4 -3
  125. package/docs/components/FormControl.md +1 -1
  126. package/docs/components/TimeField.md +24 -17
  127. package/docs/components/TimePanel.md +2 -0
  128. package/docs/components/TimePicker.md +2 -0
  129. package/docs/components/TimeRangeField.md +25 -17
  130. package/docs/components/TimeRangePicker.md +2 -0
  131. package/package.json +2 -2
@@ -3,11 +3,11 @@ import { mergePartBind as t, useBridgeUIComponent as n, useBridgeUIMergedRegistr
3
3
  import { baseFieldBridgeKeys as i, useBaseField as a } from "../../BaseField/composables/useBaseField.js";
4
4
  import { computed as o, ref as s, toValue as ee, useAttrs as te, watch as ne } from "vue";
5
5
  import { get as c, omit as l, pick as u } from "es-toolkit/compat";
6
- import { getSliderBarGeometry as re, getSliderPointerClientX as d, isSliderStopCovered as ie, normalizeSliderStops as ae, percentFromSliderPointer as f, percentToValue as p, pickClosestSliderThumb as oe, resolveSliderBounds as se, snapSliderValue as m, sortSliderRangeValue as ce, stepSliderValue as h, valueToPercent as g, writeSliderRangeThumb as _ } from "@bridge-ui/core/Domain";
7
- import { sliderColorProps as le, sliderInvalidatedProps as ue, sliderRoundedProps as de, sliderSizeProps as fe } from "@bridge-ui/core/Tokens";
8
- import { cn as v, mergeBridgeUILayeredClasses as y, splitComponentProps as pe } from "@bridge-ui/core/Utils";
6
+ import { getSliderBarGeometry as re, getSliderPointerClientX as d, isSliderStopCovered as ie, normalizeSliderStops as ae, percentFromSliderPointer as f, percentToValue as p, pickClosestSliderThumb as oe, resolveSliderBounds as m, snapSliderValue as h, sortSliderRangeValue as se, stepSliderValue as g, valueToPercent as _, writeSliderRangeThumb as v } from "@bridge-ui/core/Domain";
7
+ import { sliderColorProps as ce, sliderRoundedProps as le, sliderSizeProps as ue } from "@bridge-ui/core/Tokens";
8
+ import { cn as y, getColorToken as de, mergeBridgeUILayeredClasses as b, splitComponentProps as fe } from "@bridge-ui/core/Utils";
9
9
  //#region src/Components/Slider/composables/useSlider.ts
10
- var b = [
10
+ var x = [
11
11
  "max",
12
12
  "min",
13
13
  "step",
@@ -18,113 +18,117 @@ var b = [
18
18
  "showStops",
19
19
  "showTooltip",
20
20
  "defaultValue"
21
- ], x = [...i, ...b];
22
- function S(e, t, n) {
21
+ ], S = [...i, ...x];
22
+ function C(e, t, n) {
23
23
  return n && Array.isArray(e) ? e[t] : Array.isArray(e) ? e[0] : e;
24
24
  }
25
- function C(e, t, n, r) {
25
+ function w(e, t, n, r) {
26
26
  return !r || !Array.isArray(e) ? {
27
27
  thumbIndex: t,
28
28
  value: n
29
- } : _(e, t, n);
29
+ } : v(e, t, n);
30
30
  }
31
- function w(_, w, T, me = {}) {
32
- let he = te(), ge = e(), E = s(null), D = s(null), O = s(null), k = s(null), A = o(() => pe({
33
- bridgeKeys: x,
31
+ function T(v, T, E, pe = {}) {
32
+ let me = te(), he = e(), D = s(null), O = s(null), k = s(null), A = s(null), j = o(() => fe({
33
+ bridgeKeys: S,
34
34
  props: {
35
- ...he,
36
- ...ee(_)
35
+ ...me,
36
+ ...ee(v)
37
37
  }
38
- })), _e = o(() => u(A.value.componentProps, i)), j = a(_e, {
38
+ })), ge = o(() => u(j.value.componentProps, i)), M = a(ge, {
39
39
  error: !1,
40
40
  hideErrorMessage: !1,
41
- size: w.size ?? "md"
41
+ size: T.size ?? "md"
42
42
  }, {
43
43
  componentName: "Slider",
44
44
  labelHtmlFor: (e) => `${e}-thumb-0`
45
- }), { merged: M, entry: N } = n({
46
- libDefaults: w,
45
+ }), { merged: N, entry: P } = n({
46
+ libDefaults: T,
47
47
  componentName: "Slider",
48
48
  props: () => ({
49
- ...u(A.value.componentProps, b),
50
- size: j.merged.value.size,
51
- classes: A.value.componentProps.classes,
52
- customProps: A.value.componentProps.customProps
49
+ ...u(j.value.componentProps, x),
50
+ size: M.merged.value.size,
51
+ classes: j.value.componentProps.classes,
52
+ customProps: j.value.componentProps.customProps
53
53
  })
54
- }), P = o(() => M.value.customProps), F = r({
55
- entry: N,
56
- props: () => A.value.componentProps
57
- }), I = o(() => se({
58
- min: M.value.min,
59
- max: M.value.max,
60
- step: M.value.step
61
- })), L = o(() => !!M.value.range), R = o(() => M.value.showTooltip !== !1), z = o(() => ge?.global.value.direction === "rtl"), { controlId: B, isDisabled: V, isReadonly: H, invalidated: U, ariaDescribedBy: ve } = j, W = o(() => {
62
- let e = T.value, t = I.value;
63
- if (L.value) {
64
- if (Array.isArray(e)) return ce(m(e[0], t.min, t.max, t.step), m(e[1], t.min, t.max, t.step));
65
- let n = m(typeof e == "number" ? e : t.min, t.min, t.max, t.step);
54
+ }), F = o(() => N.value.customProps), I = r({
55
+ entry: P,
56
+ props: () => j.value.componentProps
57
+ }), L = o(() => m({
58
+ min: N.value.min,
59
+ max: N.value.max,
60
+ step: N.value.step
61
+ })), 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: _e } = M, G = o(() => {
62
+ let e = E.value, t = L.value;
63
+ if (R.value) {
64
+ if (Array.isArray(e)) return se(h(e[0], t.min, t.max, t.step), h(e[1], t.min, t.max, t.step));
65
+ let n = h(typeof e == "number" ? e : t.min, t.min, t.max, t.step);
66
66
  return [n, n];
67
67
  }
68
- return m(Array.isArray(e) ? e[0] : typeof e == "number" ? e : t.min, t.min, t.max, t.step);
69
- }), G = o(() => ae({
70
- min: I.value.min,
71
- max: I.value.max,
72
- step: I.value.step,
73
- stops: M.value.stops,
74
- showStops: M.value.showStops
75
- })), K = o(() => re({
76
- range: L.value,
77
- min: I.value.min,
78
- max: I.value.max,
79
- value: W.value
80
- })), ye = o(() => {
81
- let e = y(le, N.value?.tokens?.color);
82
- return c(e, M.value.color ?? "primary");
83
- }), q = o(() => y(ue, N.value?.tokens?.invalidated, M.value.customProps?.invalidated)), J = o(() => U.value ? q.value : ye.value), Y = o(() => {
84
- let e = y(fe, N.value?.tokens?.size);
85
- return c(e, M.value.size ?? "md");
68
+ return h(Array.isArray(e) ? e[0] : typeof e == "number" ? e : t.min, t.min, t.max, t.step);
69
+ }), K = o(() => ae({
70
+ min: L.value.min,
71
+ max: L.value.max,
72
+ step: L.value.step,
73
+ stops: N.value.stops,
74
+ showStops: N.value.showStops
75
+ })), q = o(() => re({
76
+ range: R.value,
77
+ min: L.value.min,
78
+ max: L.value.max,
79
+ value: G.value
80
+ })), J = o(() => {
81
+ let e = b(ce, P.value?.tokens?.color);
82
+ return de({
83
+ tokens: e,
84
+ color: N.value.color,
85
+ invalid: W.value
86
+ });
87
+ }), Y = o(() => {
88
+ let e = b(ue, P.value?.tokens?.size);
89
+ return c(e, N.value.size ?? "md");
86
90
  }), X = o(() => {
87
- let e = y(de, N.value?.tokens?.rounded);
88
- return c(e, M.value.rounded ?? "full");
89
- }), be = o(() => G.value.some((e) => !!e.label)), Z = (e) => {
90
- T.value = e, me.onChange?.(e);
91
- }, xe = (e) => {
92
- E.value &&= { thumbIndex: e }, D.value !== null && (D.value = e);
93
- }, Se = (e, t) => {
94
- if (V.value || H.value) return;
95
- let n = I.value, r = p(t, n.min, n.max, n.step), i = C(W.value, e, r, L.value);
96
- i.thumbIndex !== e && xe(i.thumbIndex), Z(i.value);
91
+ let e = b(le, P.value?.tokens?.rounded);
92
+ return c(e, N.value.rounded ?? "full");
93
+ }), ve = o(() => K.value.some((e) => !!e.label)), Z = (e) => {
94
+ E.value = e, pe.onChange?.(e);
95
+ }, ye = (e) => {
96
+ D.value &&= { thumbIndex: e }, O.value !== null && (O.value = e);
97
+ }, be = (e, t) => {
98
+ if (H.value || U.value) return;
99
+ let n = L.value, r = p(t, n.min, n.max, n.step), i = w(G.value, e, r, R.value);
100
+ i.thumbIndex !== e && ye(i.thumbIndex), Z(i.value);
97
101
  }, Q = (e, t) => {
98
- V.value || H.value || (e.preventDefault(), E.value = { thumbIndex: t }, D.value = t);
99
- }, Ce = (e) => {
100
- if (V.value || H.value || e.target.closest("[data-bridge-slider-thumb]")) return;
101
- let t = k.value?.getBoundingClientRect();
102
+ H.value || U.value || (e.preventDefault(), D.value = { thumbIndex: t }, O.value = t);
103
+ }, xe = (e) => {
104
+ if (H.value || U.value || e.target.closest("[data-bridge-slider-thumb]")) return;
105
+ let t = A.value?.getBoundingClientRect();
102
106
  if (!t) return;
103
107
  let n = f({
104
108
  rect: t,
105
- isRtl: z.value,
109
+ isRtl: B.value,
106
110
  clientX: d(e)
107
- }), r = I.value, i = p(n, r.min, r.max, r.step), a = 0, o = W.value;
108
- L.value && Array.isArray(o) && (a = oe(i, o[0], o[1]));
109
- let s = C(o, a, i, L.value);
111
+ }), r = L.value, i = p(n, r.min, r.max, r.step), a = 0, o = G.value;
112
+ R.value && Array.isArray(o) && (a = oe(i, o[0], o[1]));
113
+ let s = w(o, a, i, R.value);
110
114
  Z(s.value), Q(e, s.thumbIndex);
111
- }, we = (e) => (t) => {
115
+ }, Se = (e) => (t) => {
112
116
  Q(t, e);
113
- }, Te = (e) => (t) => {
114
- if (V.value || H.value) return;
115
- let n = I.value, r = S(W.value, e, L.value), i = null, a = z.value;
117
+ }, Ce = (e) => (t) => {
118
+ if (H.value || U.value) return;
119
+ let n = L.value, r = C(G.value, e, R.value), i = null, a = B.value;
116
120
  switch (t.key) {
117
121
  case "ArrowRight":
118
- i = h(r, a ? -1 : 1, n.min, n.max, n.step);
122
+ i = g(r, a ? -1 : 1, n.min, n.max, n.step);
119
123
  break;
120
124
  case "ArrowLeft":
121
- i = h(r, a ? 1 : -1, n.min, n.max, n.step);
125
+ i = g(r, a ? 1 : -1, n.min, n.max, n.step);
122
126
  break;
123
127
  case "ArrowUp":
124
- i = h(r, 1, n.min, n.max, n.step);
128
+ i = g(r, 1, n.min, n.max, n.step);
125
129
  break;
126
130
  case "ArrowDown":
127
- i = h(r, -1, n.min, n.max, n.step);
131
+ i = g(r, -1, n.min, n.max, n.step);
128
132
  break;
129
133
  case "Home":
130
134
  i = n.min;
@@ -133,161 +137,161 @@ function w(_, w, T, me = {}) {
133
137
  i = n.max;
134
138
  break;
135
139
  case "PageUp":
136
- i = h(r, 1, n.min, n.max, n.step * 10);
140
+ i = g(r, 1, n.min, n.max, n.step * 10);
137
141
  break;
138
- case "PageDown": i = h(r, -1, n.min, n.max, n.step * 10);
142
+ case "PageDown": i = g(r, -1, n.min, n.max, n.step * 10);
139
143
  }
140
144
  if (i === null) return;
141
145
  t.preventDefault();
142
- let o = C(W.value, e, i, L.value);
143
- Z(o.value), o.thumbIndex !== e && document.getElementById(`${B.value}-thumb-${o.thumbIndex}`)?.focus();
146
+ let o = w(G.value, e, i, R.value);
147
+ Z(o.value), o.thumbIndex !== e && document.getElementById(`${V.value}-thumb-${o.thumbIndex}`)?.focus();
144
148
  };
145
- ne(D, (e, t, n) => {
149
+ ne(O, (e, t, n) => {
146
150
  if (e === null) return;
147
151
  let r = (e) => {
148
- let t = k.value?.getBoundingClientRect();
149
- if (!t || E.value === null) return;
152
+ let t = A.value?.getBoundingClientRect();
153
+ if (!t || D.value === null) return;
150
154
  let n = f({
151
155
  rect: t,
152
- isRtl: z.value,
156
+ isRtl: B.value,
153
157
  clientX: d(e)
154
158
  });
155
- Se(E.value.thumbIndex, n);
159
+ be(D.value.thumbIndex, n);
156
160
  }, i = () => {
157
- E.value = null, D.value = null;
161
+ D.value = null, O.value = null;
158
162
  };
159
163
  window.addEventListener("pointermove", r), window.addEventListener("pointerup", i), window.addEventListener("pointercancel", i), n(() => {
160
164
  window.removeEventListener("pointermove", r), window.removeEventListener("pointerup", i), window.removeEventListener("pointercancel", i);
161
165
  });
162
166
  });
163
- let Ee = o(() => t({}, {}, v("relative w-full min-w-0 flex-1"))), $ = o(() => t({
164
- ...l(P.value?.track ?? {}, ["style"]),
165
- onPointerdown: Ce
166
- }, {}, v({
167
+ let we = o(() => t({}, {}, y("relative w-full min-w-0 flex-1"))), Te = o(() => t({
168
+ ...l(F.value?.track ?? {}, ["style"]),
169
+ onPointerdown: xe
170
+ }, {}, y({
167
171
  "relative w-full select-none touch-none": !0,
168
- "cursor-pointer": !V.value && !H.value,
169
- "cursor-not-allowed": V.value,
172
+ "cursor-pointer": !H.value && !U.value,
173
+ "cursor-not-allowed": H.value,
170
174
  [Y.value?.track ?? ""]: !0,
171
175
  [X.value ?? ""]: !0,
172
176
  [J.value?.track ?? ""]: !0,
173
- [F.value.track ?? ""]: !0
174
- }))), De = o(() => t(l(P.value?.bar ?? {}, ["style"]), {
177
+ [I.value.track ?? ""]: !0
178
+ }))), Ee = o(() => t(l(F.value?.bar ?? {}, ["style"]), {
175
179
  "aria-hidden": !0,
176
180
  style: {
177
- width: K.value.width,
178
- insetInlineStart: K.value.start
181
+ width: q.value.width,
182
+ insetInlineStart: q.value.start
179
183
  }
180
- }, v({
184
+ }, y({
181
185
  "absolute top-0 h-full": !0,
182
186
  [X.value ?? ""]: !0,
183
187
  [J.value?.bar ?? ""]: !0,
184
- [F.value.bar ?? ""]: !0
185
- }))), Oe = (e) => {
186
- let n = S(W.value, e, L.value), r = g(n, I.value.min, I.value.max), i = D.value === e;
188
+ [I.value.bar ?? ""]: !0
189
+ }))), $ = (e) => {
190
+ let n = C(G.value, e, R.value), r = _(n, L.value.min, L.value.max), i = O.value === e;
187
191
  return t({
188
- ...l(P.value?.thumb ?? {}, ["style"]),
192
+ ...l(F.value?.thumb ?? {}, ["style"]),
189
193
  role: "slider",
190
194
  type: "button",
191
195
  "aria-valuenow": n,
192
- "aria-valuemin": I.value.min,
193
- "aria-valuemax": I.value.max,
194
- tabIndex: V.value ? -1 : 0,
196
+ "aria-valuemin": L.value.min,
197
+ "aria-valuemax": L.value.max,
198
+ tabIndex: H.value ? -1 : 0,
195
199
  "data-bridge-slider-thumb": e,
196
- disabled: V.value || void 0,
200
+ disabled: H.value || void 0,
197
201
  "aria-orientation": "horizontal",
198
- "aria-describedby": ve.value,
199
- onKeydown: Te(e),
200
- id: `${B.value}-thumb-${e}`,
201
- "aria-disabled": V.value || void 0,
202
- "aria-readonly": H.value || void 0,
203
- "aria-invalid": U.value || void 0,
204
- onPointerdown: we(e),
202
+ "aria-describedby": _e.value,
203
+ onKeydown: Ce(e),
204
+ id: `${V.value}-thumb-${e}`,
205
+ "aria-disabled": H.value || void 0,
206
+ "aria-readonly": U.value || void 0,
207
+ "aria-invalid": W.value || void 0,
208
+ onPointerdown: Se(e),
205
209
  style: { insetInlineStart: `${r}%` },
206
210
  onFocus: () => {
207
- O.value = e;
211
+ k.value = e;
208
212
  },
209
213
  onPointerenter: () => {
210
- O.value = e;
214
+ k.value = e;
211
215
  },
212
216
  onBlur: () => {
213
- D.value !== e && (O.value = O.value === e ? null : O.value);
217
+ O.value !== e && (k.value = k.value === e ? null : k.value);
214
218
  },
215
219
  onPointerleave: () => {
216
- D.value !== e && (O.value = O.value === e ? null : O.value);
220
+ O.value !== e && (k.value = k.value === e ? null : k.value);
217
221
  },
218
- "aria-label": P.value?.thumb?.["aria-label"] ?? (L.value ? e === 0 ? "Minimum" : "Maximum" : j.merged.value.label || "Slider")
219
- }, {}, v({
222
+ "aria-label": F.value?.thumb?.["aria-label"] ?? (R.value ? e === 0 ? "Minimum" : "Maximum" : M.merged.value.label || "Slider")
223
+ }, {}, y({
220
224
  "group/thumb absolute z-10 flex -translate-x-1/2 items-center justify-center bg-transparent leading-none outline-none": !0,
221
- "cursor-grab": !V.value && !H.value,
225
+ "cursor-grab": !H.value && !U.value,
222
226
  "cursor-grabbing": i,
223
- "cursor-not-allowed": V.value,
227
+ "cursor-not-allowed": H.value,
224
228
  [Y.value?.thumb ?? ""]: !0,
225
- [F.value.thumb ?? ""]: !0
229
+ [I.value.thumb ?? ""]: !0
226
230
  }));
227
- }, ke = (e) => {
228
- let n = D.value === e;
229
- return t(P.value?.thumbKnob, { "aria-hidden": !0 }, v({
231
+ }, De = (e) => {
232
+ let n = O.value === e;
233
+ return t(F.value?.thumbKnob, { "aria-hidden": !0 }, y({
230
234
  "block rounded-full border-2 shadow-sm transition-transform duration-100": !0,
231
235
  "group-focus-visible/thumb:ring-2 group-focus-visible/thumb:ring-offset-2": !0,
232
236
  "scale-120": n,
233
237
  [J.value?.focus ?? ""]: !0,
234
238
  [Y.value?.thumbKnob ?? ""]: !0,
235
239
  [J.value?.thumb ?? ""]: !0,
236
- [F.value.thumbKnob ?? ""]: !0
240
+ [I.value.thumbKnob ?? ""]: !0
237
241
  }));
238
- }, Ae = (e) => {
239
- let n = g(e.value, I.value.min, I.value.max), r = ie({
240
- range: L.value,
241
- min: I.value.min,
242
- max: I.value.max,
242
+ }, Oe = (e) => {
243
+ let n = _(e.value, L.value.min, L.value.max), r = ie({
244
+ range: R.value,
245
+ min: L.value.min,
246
+ max: L.value.max,
243
247
  stopValue: e.value,
244
- value: W.value
248
+ value: G.value
245
249
  });
246
- return t(l(P.value?.stop ?? {}, ["style"]), {
250
+ return t(l(F.value?.stop ?? {}, ["style"]), {
247
251
  "aria-hidden": !0,
248
252
  style: {
249
253
  insetInlineStart: `${n}%`,
250
254
  display: r ? "none" : void 0
251
255
  }
252
- }, v({
256
+ }, y({
253
257
  "absolute top-1/2 h-2 w-2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-white dark:bg-dark-400": !0,
254
- [F.value.stop ?? ""]: !0
258
+ [I.value.stop ?? ""]: !0
255
259
  }));
256
- }, je = o(() => t(P.value?.stopLabels, { "aria-hidden": !0 }, v({
260
+ }, ke = o(() => t(F.value?.stopLabels, { "aria-hidden": !0 }, y({
257
261
  "relative h-[1lh] w-full text-xs": !0,
258
- [F.value.stopLabels ?? ""]: !0
262
+ [I.value.stopLabels ?? ""]: !0
259
263
  })));
260
264
  return {
261
- bounds: I,
262
- merged: M,
263
- barBind: De,
264
- isRange: L,
265
- trackRef: k,
266
- baseField: j,
267
- trackBind: $,
268
- controlBind: Ee,
269
- showTooltip: R,
270
- getStopBind: Ae,
271
- thumbIndexes: o(() => L.value ? [0, 1] : [0]),
272
- getThumbBind: Oe,
273
- resolvedStops: G,
274
- resolvedValue: W,
275
- isTooltipOpen: (e) => R.value && (D.value === e || O.value === e),
276
- hasStopLabels: be,
277
- stopLabelsBind: je,
265
+ bounds: L,
266
+ merged: N,
267
+ barBind: Ee,
268
+ isRange: R,
269
+ trackRef: A,
270
+ baseField: M,
271
+ trackBind: Te,
272
+ controlBind: we,
273
+ showTooltip: z,
274
+ getStopBind: Oe,
275
+ thumbIndexes: o(() => R.value ? [0, 1] : [0]),
276
+ getThumbBind: $,
277
+ resolvedStops: K,
278
+ resolvedValue: G,
279
+ isTooltipOpen: (e) => z.value && (O.value === e || k.value === e),
280
+ hasStopLabels: ve,
281
+ stopLabelsBind: ke,
278
282
  getStopLabelBind: (e) => {
279
- let n = g(e.value, I.value.min, I.value.max);
280
- return t(l(P.value?.stopLabel ?? {}, ["style"]), { style: { insetInlineStart: `${n}%` } }, v({
283
+ let n = _(e.value, L.value.min, L.value.max);
284
+ return t(l(F.value?.stopLabel ?? {}, ["style"]), { style: { insetInlineStart: `${n}%` } }, y({
281
285
  "absolute top-0 -translate-x-1/2 whitespace-nowrap": !0,
282
- "text-dark-700 dark:text-dark-400": !U.value,
283
- [q.value.stopLabel ?? ""]: U.value,
284
- [F.value.stopLabel ?? ""]: !0
286
+ "text-dark-700 dark:text-dark-400": !W.value,
287
+ "text-error-600 dark:text-error-400": W.value,
288
+ [I.value.stopLabel ?? ""]: !0
285
289
  }));
286
290
  },
287
- getThumbKnobBind: ke,
288
- tooltipProps: o(() => P.value?.tooltip),
289
- readThumbValue: (e) => S(W.value, e, L.value)
291
+ getThumbKnobBind: De,
292
+ tooltipProps: o(() => F.value?.tooltip),
293
+ readThumbValue: (e) => C(G.value, e, R.value)
290
294
  };
291
295
  }
292
296
  //#endregion
293
- export { x as sliderBridgeKeys, w as useSlider };
297
+ export { S as sliderBridgeKeys, T as useSlider };
@@ -1,6 +1,6 @@
1
1
  import { ButtonHTMLAttributes, HTMLAttributes, Slot } from 'vue';
2
2
  import { SliderRangeValue, SliderStopInput } from '@bridge-ui/core/Domain';
3
- import { BaseFieldInvalidated, SliderColor, SliderInvalidated, SliderRounded } from '@bridge-ui/core/Tokens';
3
+ import { SliderColor, SliderRounded } from '@bridge-ui/core/Tokens';
4
4
  import { MergeHtmlProps, MergeProps } from '@bridge-ui/core/Utils';
5
5
  import { BaseFieldClasses, BaseFieldCustomProps, BaseFieldOwnProps, BaseFieldSlots } from '../BaseField/baseField.types';
6
6
  import { TooltipOwnProps } from '../Tooltip/tooltip.types';
@@ -38,18 +38,11 @@ export interface SliderClasses extends BaseFieldClasses {
38
38
  */
39
39
  track?: string;
40
40
  }
41
- export interface SliderCustomProps extends Omit<BaseFieldCustomProps, "invalidated"> {
41
+ export interface SliderCustomProps extends BaseFieldCustomProps {
42
42
  /**
43
43
  * Props forwarded to the filled bar.
44
44
  */
45
45
  bar?: HTMLAttributes;
46
- /**
47
- * Control error chrome (`bar`, `thumb`, `track`, …). Error message color comes
48
- * from {@link BaseField}; pass `errorMessage` here to override.
49
- *
50
- * @default undefined
51
- */
52
- invalidated?: Partial<SliderInvalidated & BaseFieldInvalidated>;
53
46
  /**
54
47
  * Props forwarded to stop markers.
55
48
  */
@@ -66,7 +66,8 @@ var w = { class: "w-full max-w-sm pointer-events-auto" }, T = ["src"], E = { cla
66
66
  onLeaveComplete: () => M("leave-complete"),
67
67
  onShowChange: (e) => M("show-change", e)
68
68
  }), Y = i(() => !!(j.icon || K.value || I.value.img)), X = i(() => !!(j.title || I.value.title)), Z = i(() => !!(j.description || I.value.description)), Q = i(() => !!j.right), $ = i(() => I.value.teleportTo === !1), ee = i(() => I.value.teleportTo === !1 ? "body" : I.value.teleportTo);
69
- return (e, n) => (_(), a(r, {
69
+ return (e, n) => b(L) ? (_(), a(r, {
70
+ key: 0,
70
71
  to: ee.value,
71
72
  disabled: $.value
72
73
  }, [b(L) && b(V) ? (_(), s("div", g(m({ key: 0 }, b(H))), [c("div", w, [c("div", m(b(z), { class: b(C)(b(z).class, { flex: Q.value }) }), [
@@ -155,7 +156,7 @@ var w = { class: "w-full max-w-sm pointer-events-auto" }, T = ["src"], E = { cla
155
156
  ], 2)], 16),
156
157
  v(e.$slots, "right"),
157
158
  b(W) ? (_(), s("div", g(m({ key: 0 }, b(G))), null, 16)) : o("", !0)
158
- ], 16)) : o("", !0)], 8, ["to", "disabled"]));
159
+ ], 16)) : o("", !0)], 8, ["to", "disabled"])) : o("", !0);
159
160
  }
160
161
  });
161
162
  //#endregion
@@ -2,8 +2,8 @@ import { mergePartBind as e, useBridgeUIComponent as t, useBridgeUIMergedRegistr
2
2
  import { useFormControl as r } from "../../FormControl/composables/useFormControl.js";
3
3
  import { computed as i, toValue as a, useAttrs as o } from "vue";
4
4
  import { get as s, omit as c } from "es-toolkit/compat";
5
- import { switchColorProps as l, switchInvalidatedProps as u, switchRoundedProps as d, switchSizeProps as f } from "@bridge-ui/core/Tokens";
6
- import { cn as p, mergeBridgeUILayeredClasses as m, splitComponentProps as h } from "@bridge-ui/core/Utils";
5
+ import { switchColorProps as l, switchRoundedProps as u, switchSizeProps as d } from "@bridge-ui/core/Tokens";
6
+ import { cn as f, getColorToken as p, mergeBridgeUILayeredClasses as m, splitComponentProps as h } from "@bridge-ui/core/Utils";
7
7
  //#region src/Components/Switch/composables/useSwitch.ts
8
8
  var g = [
9
9
  "size",
@@ -36,46 +36,50 @@ function _(_, v, y) {
36
36
  props: () => S.value.componentProps
37
37
  }), D = i(() => !!a(y)), O = i(() => {
38
38
  let e = m(l, w.value?.tokens?.color);
39
- return s(e, C.value.color ?? "primary");
40
- }), k = i(() => m(u, w.value?.tokens?.invalidated)), A = i(() => x.invalidated.value ? k.value : O.value), j = i(() => {
41
- let e = m(f, w.value?.tokens?.size);
39
+ return p({
40
+ tokens: e,
41
+ color: C.value.color,
42
+ invalid: x.invalidated.value
43
+ });
44
+ }), k = i(() => {
45
+ let e = m(d, w.value?.tokens?.size);
42
46
  return s(e, C.value.size ?? "sm");
43
- }), M = i(() => {
44
- let e = m(d, w.value?.tokens?.rounded);
47
+ }), A = i(() => {
48
+ let e = m(u, w.value?.tokens?.rounded);
45
49
  return s(e, C.value.rounded ?? "full");
46
- }), N = i(() => e({
50
+ }), j = i(() => e({
47
51
  ...T.value?.input,
48
52
  ...x.controlBind.value,
49
53
  role: "switch",
50
54
  type: "checkbox"
51
- }, c(S.value.inheritedAttrs, ["class"]), p({
55
+ }, c(S.value.inheritedAttrs, ["class"]), f({
52
56
  "sr-only": !0,
53
57
  [E.value.input ?? ""]: !0
54
- }))), P = i(() => e(T.value?.track, { "aria-hidden": !0 }, p({
58
+ }))), M = i(() => e(T.value?.track, { "aria-hidden": !0 }, f({
55
59
  "block cursor-pointer transition ease-in-out duration-100": !0,
56
- [j.value?.track ?? ""]: !0,
57
- [M.value ?? ""]: !0,
58
- [A.value?.track ?? ""]: !D.value,
59
- [A.value?.trackChecked ?? ""]: D.value,
60
+ [k.value?.track ?? ""]: !0,
61
+ [A.value ?? ""]: !0,
62
+ [O.value?.track ?? ""]: !D.value,
63
+ [O.value?.trackChecked ?? ""]: D.value,
60
64
  [E.value.track ?? ""]: !0
61
- }))), F = i(() => e(T.value?.thumb, { "aria-hidden": !0 }, p({
65
+ }))), N = i(() => e(T.value?.thumb, { "aria-hidden": !0 }, f({
62
66
  "pointer-events-none absolute start-0.5 top-1/2 -translate-y-1/2 rounded-full shadow-sm transition ease-in-out duration-200": !0,
63
- [j.value?.thumb ?? ""]: !0,
64
- [j.value?.thumbCheckedTranslate ?? ""]: D.value,
65
- [A.value?.thumb ?? ""]: !0,
67
+ [k.value?.thumb ?? ""]: !0,
68
+ [k.value?.thumbCheckedTranslate ?? ""]: D.value,
69
+ [O.value?.thumb ?? ""]: !0,
66
70
  [E.value.thumb ?? ""]: !0
67
71
  })));
68
72
  return {
69
- fieldBind: i(() => e({}, {}, p({
73
+ fieldBind: i(() => e({}, {}, f({
70
74
  "relative inline-flex shrink-0 select-none": !0,
71
75
  "has-[:focus-visible]:ring-2 has-[:focus-visible]:ring-offset-2": !0,
72
- [M.value ?? ""]: !0,
73
- [A.value?.focus ?? ""]: !0
76
+ [A.value ?? ""]: !0,
77
+ [O.value?.focus ?? ""]: !0
74
78
  }))),
75
- inputBind: N,
79
+ inputBind: j,
76
80
  isChecked: D,
77
- thumbBind: F,
78
- trackBind: P,
81
+ thumbBind: N,
82
+ trackBind: M,
79
83
  formControl: x
80
84
  };
81
85
  }
@@ -23,6 +23,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {
23
23
  onOpen?: (() => any) | undefined;
24
24
  "onUpdate:modelValue"?: ((value: Date | null | undefined) => any) | undefined;
25
25
  }>, {
26
+ fill: boolean;
26
27
  showFooter: boolean;
27
28
  showErrorIcon: boolean;
28
29
  clearable: boolean;