@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
@@ -1,12 +1,12 @@
1
1
  import { mergePartBind as e, useBridgeUIComponent as t, useBridgeUIMergedRegistryClasses as n } from "../../../Utils/index.js";
2
2
  import { baseFieldBridgeKeys as r, useBaseField as i } from "../../BaseField/composables/useBaseField.js";
3
- import { computed as a, nextTick as o, onMounted as s, ref as c, toValue as l, useAttrs as ee } from "vue";
4
- import { get as u, isUndefined as d, omit as f, pick as p } from "es-toolkit/compat";
5
- import { applyOtpInput as m, applyOtpKeyNavigation as h, applyOtpPaste as g, isOtpComplete as _, joinOtpDigits as te, normalizeOtpValue as v, resolveOtpLength as ne, splitOtpValue as y } from "@bridge-ui/core/Domain";
6
- import { otpFieldColorProps as b, otpFieldInvalidatedProps as x, otpFieldRoundedProps as re, otpFieldSizeProps as ie, otpFieldVariantProps as ae } from "@bridge-ui/core/Tokens";
7
- import { cn as S, mergeBridgeUILayeredClasses as C, splitComponentProps as w } from "@bridge-ui/core/Utils";
3
+ import { computed as a, nextTick as o, onMounted as ee, ref as s, toValue as c, useAttrs as te } from "vue";
4
+ import { get as l, isUndefined as ne, omit as re, pick as ie } from "es-toolkit/compat";
5
+ import { applyOtpInput as u, applyOtpKeyNavigation as d, applyOtpPaste as f, isOtpComplete as p, joinOtpDigits as m, normalizeOtpValue as h, resolveOtpLength as g, splitOtpValue as _ } from "@bridge-ui/core/Domain";
6
+ import { otpFieldColorProps as v, otpFieldRoundedProps as y, otpFieldSizeProps as b, otpFieldVariantProps as x } from "@bridge-ui/core/Tokens";
7
+ import { cn as S, getColorToken as ae, mergeBridgeUILayeredClasses as C, splitComponentProps as oe } from "@bridge-ui/core/Utils";
8
8
  //#region src/Components/OtpField/composables/useOtpField.ts
9
- var T = [
9
+ var w = [
10
10
  "mask",
11
11
  "type",
12
12
  "color",
@@ -18,15 +18,12 @@ var T = [
18
18
  "defaultValue",
19
19
  ...r
20
20
  ];
21
- function oe(e) {
21
+ function se(e) {
22
22
  if (!e) return;
23
- let { pin: t, invalidated: n, input: r, ...i } = e;
24
- return {
25
- ...i,
26
- ...n?.errorMessage ? { invalidated: { errorMessage: n.errorMessage } } : {}
27
- };
23
+ let { pin: t, input: n, ...r } = e;
24
+ return r;
28
25
  }
29
- function E(E, D, O = {}, se = {
26
+ function T(T, E, D = {}, O = {
30
27
  length: 6,
31
28
  size: "md",
32
29
  rounded: "md",
@@ -34,134 +31,138 @@ function E(E, D, O = {}, se = {
34
31
  color: "primary",
35
32
  variant: "outline"
36
33
  }) {
37
- let ce = ee(), k = c([]), A = a(() => w({
38
- bridgeKeys: T,
34
+ let k = te(), A = s([]), j = a(() => oe({
35
+ bridgeKeys: w,
39
36
  props: {
40
- ...ce,
41
- ...l(E)
37
+ ...k,
38
+ ...c(T)
42
39
  }
43
- })), { merged: j, entry: M } = t({
44
- libDefaults: se,
40
+ })), { merged: M, entry: N } = t({
41
+ libDefaults: O,
45
42
  componentName: "OtpField",
46
- props: () => A.value.componentProps
47
- }), N = n({
48
- entry: M,
49
- props: () => A.value.componentProps
50
- }), P = a(() => j.value.customProps), F = a(() => oe(j.value.customProps)), I = a(() => ({
51
- ...p(A.value.componentProps, r),
52
- customProps: F.value,
53
- id: A.value.inheritedAttrs.id,
54
- class: A.value.inheritedAttrs.class,
55
- ...f(A.value.inheritedAttrs, ["class", "id"])
56
- })), L = i(() => I.value, {
43
+ props: () => j.value.componentProps
44
+ }), P = n({
45
+ entry: N,
46
+ props: () => j.value.componentProps
47
+ }), F = a(() => M.value.customProps), I = a(() => se(M.value.customProps)), L = a(() => ({
48
+ ...ie(j.value.componentProps, r),
49
+ customProps: I.value,
50
+ id: j.value.inheritedAttrs.id,
51
+ class: j.value.inheritedAttrs.class,
52
+ ...re(j.value.inheritedAttrs, ["class", "id"])
53
+ })), R = i(() => L.value, {
57
54
  size: "md",
58
55
  hideErrorMessage: !1
59
56
  }, {
60
57
  componentName: "OtpField",
61
58
  labelHtmlFor: (e) => `${e}-0`
62
- }), { controlId: R, isDisabled: z, isReadonly: B, invalidated: V, ariaDescribedBy: H } = L, U = a(() => ne(j.value.length)), W = a(() => j.value.type ?? "numeric"), G = a(() => j.value.variant ?? "outline"), K = a(() => G.value === "underlined"), q = a(() => !d(D.value)), J = c(v(l(E).defaultValue, U.value, W.value)), le = a(() => q.value ? v(D.value, U.value, W.value) : J.value), Y = a(() => y(le.value, U.value));
63
- s(() => {
64
- if (!j.value.autoFocus || z.value || B.value) return;
65
- let e = Y.value.findIndex((e) => e === ""), t = e === -1 ? 0 : e;
66
- k.value[t]?.focus();
59
+ }), { controlId: z, isDisabled: B, isReadonly: V, invalidated: H, ariaDescribedBy: U } = R, W = a(() => g(M.value.length)), G = a(() => M.value.type ?? "numeric"), K = a(() => M.value.variant ?? "outline"), q = a(() => K.value === "underlined"), J = a(() => !ne(E.value)), Y = s(h(c(T).defaultValue, W.value, G.value)), ce = a(() => J.value ? h(E.value, W.value, G.value) : Y.value), X = a(() => _(ce.value, W.value));
60
+ ee(() => {
61
+ if (!M.value.autoFocus || B.value || V.value) return;
62
+ let e = X.value.findIndex((e) => e === ""), t = e === -1 ? 0 : e;
63
+ A.value[t]?.focus();
67
64
  });
68
- let X = (e, t) => {
69
- let n = te(e);
70
- q.value || (J.value = n), D.value = n, O.onChange?.(n), _(n, U.value) && O.onComplete?.(n), t != null && o(() => {
71
- k.value[t]?.focus(), k.value[t]?.select();
65
+ let Z = (e, t) => {
66
+ let n = m(e);
67
+ J.value || (Y.value = n), E.value = n, D.onChange?.(n), p(n, W.value) && D.onComplete?.(n), t != null && o(() => {
68
+ A.value[t]?.focus(), A.value[t]?.select();
69
+ });
70
+ }, Q = a(() => {
71
+ let e = C(b, N.value?.tokens?.size);
72
+ return l(e, M.value.size ?? "md");
73
+ }), $ = a(() => {
74
+ let e = C(v, N.value?.tokens?.color);
75
+ return ae({
76
+ tokens: e,
77
+ color: M.value.color,
78
+ invalid: H.value
72
79
  });
73
- }, Z = a(() => {
74
- let e = C(ie, M.value?.tokens?.size);
75
- return u(e, j.value.size ?? "md");
76
- }), Q = a(() => {
77
- let e = C(b, M.value?.tokens?.color);
78
- return u(e, j.value.color ?? "primary");
79
- }), ue = a(() => C(x, M.value?.tokens?.invalidated, j.value.customProps?.invalidated)), $ = a(() => V.value ? ue.value : void 0), de = a(() => {
80
- let e = C(re, M.value?.tokens?.rounded);
81
- return u(e, j.value.rounded ?? "md");
82
- }), fe = a(() => {
83
- let e = C(ae, M.value?.tokens?.variant);
84
- return u(e, G.value);
80
+ }), le = a(() => {
81
+ let e = C(y, N.value?.tokens?.rounded);
82
+ return l(e, M.value.rounded ?? "md");
83
+ }), ue = a(() => {
84
+ let e = C(x, N.value?.tokens?.variant);
85
+ return l(e, K.value);
85
86
  });
86
87
  return {
87
- merged: j,
88
- digits: Y,
89
- length: U,
90
- pinBind: (t) => e(P.value?.pin, {}, S({
88
+ merged: M,
89
+ digits: X,
90
+ length: W,
91
+ pinBind: (t) => e(F.value?.pin, {}, S({
91
92
  "relative flex shrink-0 items-center justify-center overflow-hidden": !0,
92
- [Z.value?.pin ?? ""]: !0,
93
- [fe.value?.pin ?? ""]: !0,
94
- [de.value?.pin ?? ""]: !K.value,
95
- [Q.value?.pin ?? ""]: !V.value && !K.value,
96
- [Q.value?.underlined ?? ""]: !V.value && K.value,
97
- [$.value?.pin ?? ""]: V.value && !K.value,
98
- [$.value?.pinUnderlined ?? ""]: V.value && K.value,
99
- [N.value.pin ?? ""]: !0
93
+ [Q.value?.pin ?? ""]: !0,
94
+ [ue.value?.pin ?? ""]: !0,
95
+ [le.value?.pin ?? ""]: !q.value,
96
+ [$.value?.pin ?? ""]: !q.value,
97
+ [$.value?.underlined ?? ""]: q.value,
98
+ "bg-error-50 ring-error-500 dark:bg-error-700/10 dark:ring-error-600": H.value && !q.value,
99
+ "border-error-500 dark:border-error-600": H.value && q.value,
100
+ [P.value.pin ?? ""]: !0
100
101
  })),
101
102
  pinsBind: a(() => e({}, {}, S({
102
103
  "flex flex-wrap items-center": !0,
103
- [L.sizeClasses.value?.group ?? ""]: !0
104
+ [R.sizeClasses.value?.group ?? ""]: !0
104
105
  }))),
105
- baseField: L,
106
+ baseField: R,
106
107
  inputBind: (t) => {
107
- let n = W.value === "numeric" ? "numeric" : "text";
108
+ let n = G.value === "numeric" ? "numeric" : "text";
108
109
  return e({
109
- ...P.value?.input,
110
+ ...F.value?.input,
110
111
  inputmode: n,
111
- maxlength: U.value,
112
- disabled: z.value,
113
- readOnly: B.value,
114
- value: Y.value[t] ?? "",
115
- id: `${R.value}-${t}`,
116
- placeholder: j.value.placeholder,
117
- "aria-describedby": H.value,
118
- type: j.value.mask ? "password" : "text",
119
- "aria-invalid": V.value || void 0,
112
+ maxlength: W.value,
113
+ disabled: B.value,
114
+ readOnly: V.value,
115
+ value: X.value[t] ?? "",
116
+ id: `${z.value}-${t}`,
117
+ placeholder: M.value.placeholder,
118
+ "aria-describedby": U.value,
119
+ type: M.value.mask ? "password" : "text",
120
+ "aria-invalid": H.value || void 0,
120
121
  autocomplete: t === 0 ? "one-time-code" : "off",
121
- "aria-label": `Digit ${t + 1} of ${U.value}`
122
+ "aria-label": `Digit ${t + 1} of ${W.value}`
122
123
  }, {}, S({
123
124
  "h-full w-full min-w-0 bg-transparent border-0 shadow-none text-center": !0,
124
125
  "text-dark-900 dark:text-dark-100 placeholder:text-dark-400": !0,
125
126
  "outline-none ring-0 focus:outline-none focus:ring-0": !0,
126
127
  "disabled:cursor-not-allowed": !0,
127
- [Z.value?.input ?? ""]: !0,
128
- [N.value.input ?? ""]: !0
128
+ [Q.value?.input ?? ""]: !0,
129
+ [P.value.input ?? ""]: !0
129
130
  }));
130
131
  },
131
132
  setPinRef: (e, t) => {
132
- k.value[e] = t;
133
+ A.value[e] = t;
133
134
  },
134
- inputType: W,
135
+ inputType: G,
135
136
  handlePinInput: (e, t) => {
136
- let n = t.target.value, r = m({
137
+ let n = t.target.value, r = u({
137
138
  index: e,
138
139
  input: n,
139
- digits: Y.value,
140
- type: W.value
140
+ digits: X.value,
141
+ type: G.value
141
142
  });
142
- X(r.digits, r.focusIndex);
143
+ Z(r.digits, r.focusIndex);
143
144
  },
144
145
  handlePinFocus: (e) => {
145
- k.value[e]?.select();
146
+ A.value[e]?.select();
146
147
  },
147
148
  handlePinPaste: (e, t) => {
148
- let n = t.clipboardData?.getData("text") ?? "", r = g({
149
+ let n = t.clipboardData?.getData("text") ?? "", r = f({
149
150
  index: e,
150
151
  pasted: n,
151
- digits: Y.value,
152
- type: W.value
152
+ digits: X.value,
153
+ type: G.value
153
154
  });
154
- r.focusIndex == null && r.digits.every((e, t) => e === Y.value[t]) || (t.preventDefault(), X(r.digits, r.focusIndex));
155
+ r.focusIndex == null && r.digits.every((e, t) => e === X.value[t]) || (t.preventDefault(), Z(r.digits, r.focusIndex));
155
156
  },
156
157
  handlePinKeyDown: (e, t) => {
157
- let n = h({
158
+ let n = d({
158
159
  index: e,
159
160
  key: t.key,
160
- digits: Y.value
161
+ digits: X.value
161
162
  });
162
- n && (t.preventDefault(), X(n.digits, n.focusIndex));
163
+ n && (t.preventDefault(), Z(n.digits, n.focusIndex));
163
164
  }
164
165
  };
165
166
  }
166
167
  //#endregion
167
- export { T as otpFieldBridgeKeys, E as useOtpField };
168
+ export { w as otpFieldBridgeKeys, T as useOtpField };
@@ -1,6 +1,6 @@
1
1
  import { HTMLAttributes, InputHTMLAttributes } from 'vue';
2
2
  import { OtpInputType } from '@bridge-ui/core/Domain';
3
- import { BaseFieldInvalidated, OtpFieldColor, OtpFieldInvalidated, OtpFieldRounded, OtpFieldVariant } from '@bridge-ui/core/Tokens';
3
+ import { OtpFieldColor, OtpFieldRounded, OtpFieldVariant } 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
  export interface OtpFieldColorOverrides {}
@@ -17,18 +17,11 @@ export interface OtpFieldClasses extends BaseFieldClasses {
17
17
  */
18
18
  pin?: string;
19
19
  }
20
- export interface OtpFieldCustomProps extends Omit<BaseFieldCustomProps, "invalidated"> {
20
+ export interface OtpFieldCustomProps extends BaseFieldCustomProps {
21
21
  /**
22
22
  * Props forwarded to each pin `<input>`.
23
23
  */
24
24
  input?: Partial<InputHTMLAttributes>;
25
- /**
26
- * Pin error chrome (`pin` / `pinUnderlined`). Error message color comes from
27
- * {@link BaseField} (`Tokens/BaseField`); pass `errorMessage` here to override.
28
- *
29
- * @default undefined
30
- */
31
- invalidated?: Partial<OtpFieldInvalidated & BaseFieldInvalidated>;
32
25
  /**
33
26
  * Props forwarded to each pin cell wrapper.
34
27
  */
@@ -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 { radioColorProps as l, radioInvalidatedProps as u, radioRoundedProps as d, radioSizeProps 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 { radioColorProps as l, radioRoundedProps as u, radioSizeProps 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/Radio/composables/useRadio.ts
8
8
  var g = [
9
9
  "name",
@@ -38,50 +38,54 @@ function _(_, v, y) {
38
38
  props: () => S.value.componentProps
39
39
  }), D = i(() => a(y) === C.value.value), O = i(() => {
40
40
  let e = m(l, w.value?.tokens?.color);
41
- return s(e, C.value.color ?? "primary");
42
- }), k = i(() => m(u, w.value?.tokens?.invalidated)), A = i(() => x.invalidated.value ? k.value : O.value), j = i(() => {
43
- let e = m(f, w.value?.tokens?.size);
41
+ return p({
42
+ tokens: e,
43
+ color: C.value.color,
44
+ invalid: x.invalidated.value
45
+ });
46
+ }), k = i(() => {
47
+ let e = m(d, w.value?.tokens?.size);
44
48
  return s(e, C.value.size ?? "sm");
45
- }), M = i(() => {
46
- let e = m(d, w.value?.tokens?.rounded);
49
+ }), A = i(() => {
50
+ let e = m(u, w.value?.tokens?.rounded);
47
51
  return s(e, C.value.rounded ?? "full");
48
- }), N = i(() => e({
52
+ }), j = i(() => e({
49
53
  ...T.value?.input,
50
54
  ...x.controlBind.value,
51
55
  type: "radio",
52
56
  name: C.value.name,
53
57
  value: C.value.value
54
- }, c(S.value.inheritedAttrs, ["class"]), p({
58
+ }, c(S.value.inheritedAttrs, ["class"]), f({
55
59
  "sr-only": !0,
56
60
  [E.value.input ?? ""]: !0
57
- }))), P = i(() => e(T.value?.control, { "aria-hidden": !0 }, p({
61
+ }))), M = i(() => e(T.value?.control, { "aria-hidden": !0 }, f({
58
62
  "inline-flex shrink-0 items-center justify-center border shadow-sm transition ease-in-out duration-100": !0,
59
63
  "pointer-events-none": !0,
60
- [j.value ?? ""]: !0,
61
- [M.value ?? ""]: !0,
62
- [A.value?.base ?? ""]: !D.value,
63
- [A.value?.checked ?? ""]: D.value,
64
+ [k.value ?? ""]: !0,
65
+ [A.value ?? ""]: !0,
66
+ [O.value?.base ?? ""]: !D.value,
67
+ [O.value?.checked ?? ""]: D.value,
64
68
  [E.value.control ?? ""]: !0
65
69
  })));
66
70
  return {
67
71
  merged: C,
68
- dotBind: i(() => e(T.value?.dot, {}, p({
72
+ dotBind: i(() => e(T.value?.dot, {}, f({
69
73
  "rounded-full bg-white transition-transform duration-100": !0,
70
74
  "scale-0": !D.value,
71
75
  "scale-100": D.value,
72
76
  "h-[42%] w-[42%]": !0,
73
77
  [E.value.dot ?? ""]: !0
74
78
  }))),
75
- fieldBind: i(() => e({}, {}, p({
79
+ fieldBind: i(() => e({}, {}, f({
76
80
  "relative inline-flex shrink-0 cursor-pointer items-center": !0,
77
81
  "has-[:focus-visible]:ring-2 has-[:focus-visible]:ring-offset-2": !0,
78
- [M.value ?? ""]: !0,
79
- [A.value?.focus ?? ""]: !0
82
+ [A.value ?? ""]: !0,
83
+ [O.value?.focus ?? ""]: !0
80
84
  }))),
81
- inputBind: N,
85
+ inputBind: j,
82
86
  isChecked: D,
83
87
  formControl: x,
84
- controlBind: P
88
+ controlBind: M
85
89
  };
86
90
  }
87
91
  //#endregion
@@ -735,9 +735,9 @@ export declare function useSelect(props: SelectOwnProps, model: Ref<null | undef
735
735
  disableMaxHeight: boolean;
736
736
  emptyMessage: string;
737
737
  entries: ListboxEntry[];
738
+ error: boolean;
738
739
  hideEmptyMessage: boolean;
739
740
  highlightedIndex: number;
740
- invalidated: boolean;
741
741
  isSelected: (value: import('@bridge-ui/core/Domain').ListboxValue) => boolean;
742
742
  labelledBy: string;
743
743
  listboxId: string;
@@ -5,10 +5,10 @@ import { mergePartBind as r, resolveFieldAdornmentIconSize as ee, useBridgeUICom
5
5
  import { formFieldBridgeKeys as re, useFormField as ie } from "../../FormField/composables/useFormField.js";
6
6
  import { useListboxNavigation as ae } from "../../Listbox/composables/useListboxNavigation.js";
7
7
  import { Comment as oe, Text as se, computed as a, nextTick as o, onBeforeUnmount as ce, onMounted as le, ref as s, useAttrs as ue, useId as de, useSlots as fe, watch as c } from "vue";
8
- import { get as l, isNil as pe, omit as me } from "es-toolkit/compat";
9
- import { createSelectAsyncSearch as he, filterListboxEntries as ge, flattenListboxOptions as u, normalizeListboxEntries as _e, normalizeSelectOptions as ve, resolveFieldOverlay as ye, resolveSelectAsyncDebounce as be, resolveSelectAsyncOptions as xe, selectValuesEqual as d } from "@bridge-ui/core/Domain";
10
- import { listboxColorProps as Se, listboxInvalidatedProps as Ce } from "@bridge-ui/core/Tokens";
11
- import { adjustAutosizeTextareaHeight as we, cn as f, mergeBridgeUILayeredClasses as Te, splitComponentProps as Ee } from "@bridge-ui/core/Utils";
8
+ import { get as pe, isNil as me, omit as he } from "es-toolkit/compat";
9
+ import { createSelectAsyncSearch as ge, filterListboxEntries as _e, flattenListboxOptions as l, normalizeListboxEntries as u, normalizeSelectOptions as ve, resolveFieldOverlay as ye, resolveSelectAsyncDebounce as be, resolveSelectAsyncOptions as xe, selectValuesEqual as d } from "@bridge-ui/core/Domain";
10
+ import { listboxColorProps as Se } from "@bridge-ui/core/Tokens";
11
+ import { adjustAutosizeTextareaHeight as Ce, cn as f, getColorToken as we, mergeBridgeUILayeredClasses as Te, splitComponentProps as Ee } from "@bridge-ui/core/Utils";
12
12
  //#region src/Components/Select/composables/useSelect.ts
13
13
  var De = [
14
14
  "classes",
@@ -53,7 +53,7 @@ function p(p, m, h, g, Oe) {
53
53
  })), P = a(() => Oe.value.length > 0 ? Oe.value.map((e) => ({
54
54
  option: e,
55
55
  type: "option"
56
- })) : _e(A.value.options, N.value)), Pe = a(() => u(P.value)), F = s([]);
56
+ })) : u(A.value.options, N.value)), Pe = a(() => l(P.value)), F = s([]);
57
57
  function Fe(e) {
58
58
  if (!e || typeof e != "object") return !1;
59
59
  let t = e.type;
@@ -71,16 +71,16 @@ function p(p, m, h, g, Oe) {
71
71
  let I = a(() => Ie() && !A.value.options?.length), L = a(() => {
72
72
  if (I.value) return [];
73
73
  if (T.value.length > 0) {
74
- let e = _e(T.value, N.value);
74
+ let e = u(T.value, N.value);
75
75
  return A.value.flipOptions ? [...e].reverse() : e;
76
76
  }
77
77
  return A.value.flipOptions ? [...P.value].reverse().map((e) => e.type === "section" ? {
78
78
  ...e,
79
79
  options: [...e.options].reverse()
80
80
  } : e) : P.value;
81
- }), Le = a(() => I.value ? F.value : u(L.value)), R = a(() => {
81
+ }), Le = a(() => I.value ? F.value : l(L.value)), R = a(() => {
82
82
  let e = m.value;
83
- return M.value ? Array.isArray(e) ? e : [] : !pe(e) && e !== "" ? [e] : [];
83
+ return M.value ? Array.isArray(e) ? e : [] : !me(e) && e !== "" ? [e] : [];
84
84
  }), Re = a(() => ye(A.value.overlay, Ae.mobile)), z = ne({
85
85
  componentName: "Select",
86
86
  overlay: Re,
@@ -100,8 +100,8 @@ function p(p, m, h, g, Oe) {
100
100
  if (I.value) return [];
101
101
  if (!W.value || !x.value.trim()) return L.value;
102
102
  let e = x.value.trim().toLowerCase();
103
- return ge(L.value, (t) => t.label.toLowerCase().includes(e));
104
- }), G = a(() => I.value ? F.value : u(He.value)), K = ae(() => G.value, C, v), Ue = a(() => p.readonly || p.disabled ? !0 : !W.value), We = a(() => W.value || M.value ? x.value : B.value[0]?.label ?? ""), Ge = (e) => {
103
+ return _e(L.value, (t) => t.label.toLowerCase().includes(e));
104
+ }), G = a(() => I.value ? F.value : l(He.value)), K = ae(() => G.value, C, v), Ue = a(() => p.readonly || p.disabled ? !0 : !W.value), We = a(() => W.value || M.value ? x.value : B.value[0]?.label ?? ""), Ge = (e) => {
105
105
  D.value = e instanceof HTMLElement ? e : null;
106
106
  };
107
107
  function Ke(e) {
@@ -119,7 +119,7 @@ function p(p, m, h, g, Oe) {
119
119
  }
120
120
  }
121
121
  let Je = a(() => {
122
- let e = me(k.value.inheritedAttrs, ["class"]), n = Ee({
122
+ let e = he(k.value.inheritedAttrs, ["class"]), n = Ee({
123
123
  bridgeKeys: re,
124
124
  props: e
125
125
  }).componentProps, ee = n.endIcon ?? (t(_, "end") ? void 0 : "chevronUpDown"), { listbox: te, ...i } = n.customProps ?? {};
@@ -147,7 +147,7 @@ function p(p, m, h, g, Oe) {
147
147
  likeInput: () => M.value,
148
148
  control: () => M.value ? "textarea" : "input"
149
149
  }), Xe = a(() => V.value && Be.value && !p.readonly && !q.isDisabled.value), J = (e) => {
150
- !e || !M.value || we(e);
150
+ !e || !M.value || Ce(e);
151
151
  };
152
152
  function Ze(e) {
153
153
  return ze.value.some((t) => d(t, e));
@@ -267,18 +267,17 @@ function p(p, m, h, g, Oe) {
267
267
  !e?.resolve || R.value.length === 0 || (E.value = ve(await e.resolve(R.value), N.value));
268
268
  }
269
269
  let $ = a(() => {
270
- let e = Te(Se, l(Me.value, [
270
+ let e = Te(Se, pe(Me.value, [
271
271
  "Select",
272
272
  "tokens",
273
273
  "listbox",
274
274
  "color"
275
- ])), t = l(e, q.merged.value.color ?? "primary");
276
- return q.invalidated.value ? Te(Ce, l(Me.value, [
277
- "Select",
278
- "tokens",
279
- "listbox",
280
- "invalidated"
281
- ])) : t;
275
+ ]));
276
+ return we({
277
+ tokens: e,
278
+ color: q.merged.value.color,
279
+ invalid: q.invalidated.value
280
+ });
282
281
  }), ct = a(() => $.value?.value), lt = a(() => {
283
282
  let e = !p.disabled && !p.readonly && !W.value, t = !p.disabled && !p.readonly && W.value && U.value, n = V.value && !M.value && !W.value;
284
283
  return r({
@@ -317,7 +316,7 @@ function p(p, m, h, g, Oe) {
317
316
  O = null;
318
317
  return;
319
318
  }
320
- O = he((e) => void ot(e), be(e));
319
+ O = ge((e) => void ot(e), be(e));
321
320
  }, { immediate: !0 }), ce(() => {
322
321
  O?.cancel();
323
322
  }), le(() => {
@@ -346,10 +345,10 @@ function p(p, m, h, g, Oe) {
346
345
  options: G.value,
347
346
  componentName: "Select",
348
347
  size: q.merged.value.size,
348
+ error: q.invalidated.value,
349
349
  color: q.merged.value.color,
350
350
  labelledBy: q.controlId.value,
351
351
  rounded: q.merged.value.rounded,
352
- invalidated: q.invalidated.value,
353
352
  highlightedIndex: C.value,
354
353
  disableMaxHeight: p.disableMaxHeight === !0,
355
354
  hideEmptyMessage: A.value.hideEmptyMessage === !0,