@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,42 +1,17 @@
1
1
  import { useDateAdapter as e, useDateAdapterContext as t } from "../../../Adapters/Date/useDateAdapter.js";
2
2
  import { hasNamedSlot as n } from "../../../Utils/slotOrProp.js";
3
3
  import { useBreakpoint as r } from "../../../Utils/useBreakpoint.js";
4
- import { mergePartBind as i, resolveFieldAdornmentIconSize as a, useFieldShowFooter as o } from "../../../Utils/index.js";
5
- import { formFieldBridgeKeys as s, useFormField as c } from "../../FormField/composables/useFormField.js";
6
- import { computed as l, ref as u, useAttrs as d, useSlots as f } from "vue";
7
- import { get as p, isNil as m, omit as h } from "es-toolkit/compat";
8
- import { isDateRangeValue as g, isFieldOverlayDialog as _, resolveFieldOverlay as v, resolveRangePickerOrientation as y } from "@bridge-ui/core/Domain";
4
+ import { mergePartBind as i, resolveFieldAdornmentIconSize as a, useFieldShowFooter as o, usePickerFill as s } from "../../../Utils/index.js";
5
+ import { formFieldBridgeKeys as c, useFormField as l } from "../../FormField/composables/useFormField.js";
6
+ import { computed as u, ref as d, useAttrs as f, useSlots as p } from "vue";
7
+ import { get as m, isNil as h, omit as ee } from "es-toolkit/compat";
8
+ import { isDateRangeValue as g, resolveFieldOverlay as _, resolveFieldPickerClassName as v, resolveRangePickerOrientation as y } from "@bridge-ui/core/Domain";
9
9
  import { listboxColorProps as b } from "@bridge-ui/core/Tokens";
10
10
  import { cn as x, splitComponentProps as S } from "@bridge-ui/core/Utils";
11
11
  //#region src/Components/DateTimeRangeField/composables/useDateTimeRangeField.ts
12
- var ee = [
13
- "ampm",
14
- "classes",
15
- "maxDate",
16
- "maxTime",
17
- "minDate",
18
- "minTime",
19
- "overlay",
20
- "interval",
21
- "timeZone",
22
- "clearable",
23
- "hideYears",
24
- "hideMonths",
25
- "showFooter",
26
- "customProps",
27
- "orientation",
28
- "showSeconds",
29
- "startOfWeek",
30
- "defaultValue",
31
- "disableDates",
32
- "disableTimes",
33
- "disableYears",
34
- "hideWeekdays",
35
- "disableMonths",
36
- "hideOutsideDays"
37
- ];
38
- function C(e, t, n, r, i) {
39
- return m(e) || !g(e) ? "" : `${`${t.format(e[0], n)} ${t.formatTime(e[0], n, {
12
+ var C = /* @__PURE__ */ "ampm.fill.classes.maxDate.maxTime.minDate.minTime.overlay.editable.interval.timeZone.clearable.hideYears.hideMonths.showFooter.customProps.orientation.showSeconds.startOfWeek.defaultValue.disableDates.disableTimes.disableYears.hideWeekdays.disableMonths.hideOutsideDays".split(".");
13
+ function w(e, t, n, r, i) {
14
+ return h(e) || !g(e) ? "" : `${`${t.format(e[0], n)} ${t.formatTime(e[0], n, {
40
15
  ampm: r,
41
16
  showSeconds: i
42
17
  })}`.trim()} – ${`${t.format(e[1], n)} ${t.formatTime(e[1], n, {
@@ -44,31 +19,31 @@ function C(e, t, n, r, i) {
44
19
  showSeconds: i
45
20
  })}`.trim()}`;
46
21
  }
47
- function w(g, w, T) {
48
- let E = d(), D = f(), O = e(), k = r(), A = t(), j = u(!1), M = u(null), N = l(() => S({
22
+ function T(g, T, E) {
23
+ let D = f(), te = p(), O = e(), k = r(), A = t(), j = d(!1), M = d(null), N = u(() => S({
49
24
  props: {
50
- ...E,
25
+ ...D,
51
26
  ...g
52
27
  },
53
- bridgeKeys: ee
54
- })), P = l(() => N.value.componentProps), F = l(() => A(P.value.timeZone)), I = l(() => w.value ?? null), L = l(() => P.value.clearable !== !1), R = l(() => !m(I.value)), z = (e) => {
28
+ bridgeKeys: C
29
+ })), P = u(() => N.value.componentProps), F = u(() => A(P.value.timeZone)), I = u(() => T.value ?? null), L = u(() => P.value.clearable !== !1), R = u(() => !h(I.value)), z = (e) => {
55
30
  M.value = e instanceof HTMLElement ? e : null;
56
31
  };
57
32
  function B(e) {
58
- j.value !== e && (j.value = e, T(e ? "open" : "close"));
33
+ j.value !== e && (j.value = e, E(e ? "open" : "close"));
59
34
  }
60
- let V = l(() => h(N.value.inheritedAttrs, ["class"])), H = l(() => {
35
+ let V = u(() => ee(N.value.inheritedAttrs, ["class"])), H = u(() => {
61
36
  let e = S({
62
- bridgeKeys: s,
37
+ bridgeKeys: c,
63
38
  props: V.value
64
- }).componentProps, t = e.endIcon ?? (n(D, "end") ? void 0 : "calendar"), { menu: r, clearIcon: a, dateTimeRangePicker: o, ...c } = P.value.customProps ?? {};
39
+ }).componentProps, t = e.endIcon ?? (n(te, "end") ? void 0 : "calendar"), { menu: r, clearIcon: a, dateTimeRangePicker: o, ...s } = P.value.customProps ?? {};
65
40
  return {
66
41
  ...e,
67
42
  endIcon: t,
68
43
  classes: P.value.classes,
69
44
  customProps: {
70
- ...c,
71
- container: i(c.container, {}, {
45
+ ...s,
46
+ container: i(s.container, {}, {
72
47
  ref: z,
73
48
  class: x({ "cursor-pointer": !g.disabled && !g.readonly }),
74
49
  onClick: (e) => {
@@ -77,43 +52,43 @@ function w(g, w, T) {
77
52
  })
78
53
  }
79
54
  };
80
- }), U = c(() => H.value, {
55
+ }), U = l(() => H.value, {
81
56
  size: "md",
82
57
  rounded: "md",
83
58
  color: "primary",
84
59
  variant: "outline",
85
60
  showErrorIcon: !0
86
- }, { componentName: "DateTimeRangeField" }), W = l(() => R.value && L.value && !g.readonly && !U.isDisabled.value), G = l(() => C(I.value, O.value, F.value, P.value.ampm, P.value.showSeconds));
61
+ }, { componentName: "DateTimeRangeField" }), W = u(() => R.value && L.value && !g.readonly && !U.isDisabled.value), G = u(() => w(I.value, O.value, F.value, P.value.ampm, P.value.showSeconds));
87
62
  function K(e) {
88
- w.value = e, T("change", e);
63
+ T.value = e, E("change", e);
89
64
  }
90
- let q = l(() => v(P.value.overlay, k.mobile)), J = l(() => y(P.value.orientation, q.value, k.mobile)), Y = o({
65
+ let q = u(() => _(P.value.overlay, k.mobile)), J = u(() => y(P.value.orientation, q.value, k.mobile)), Y = o({
91
66
  overlay: q,
92
67
  componentName: "DateTimeRangeField",
93
68
  showFooter: () => P.value.showFooter
94
69
  });
95
70
  function X(e) {
96
- K(e), Y.value && T("apply");
71
+ K(e), Y.value && E("apply");
97
72
  }
98
73
  function Z() {
99
- T("cancel");
74
+ E("cancel");
100
75
  }
101
76
  function Q(e) {
102
- e?.preventDefault(), e?.stopPropagation(), !(g.disabled || g.readonly) && (K(null), T("clear"), B(!1));
77
+ e?.preventDefault(), e?.stopPropagation(), !(g.disabled || g.readonly) && (K(null), E("clear"), B(!1));
103
78
  }
104
- function $(e) {
79
+ function ne(e) {
105
80
  e.preventDefault();
106
81
  }
107
- let te = l(() => i({
108
- readonly: !0,
82
+ let re = u(() => i({
109
83
  value: G.value,
84
+ readonly: !P.value.editable || U.inputBind.value.readonly,
110
85
  onFocus: (e) => {
111
86
  U.inputBind.value.onFocus?.(e), B(!0);
112
87
  },
113
88
  onKeydown: (e) => {
114
89
  U.inputBind.value.onKeydown?.(e), e.key === "Escape" && B(!1);
115
90
  }
116
- }, void 0, U.inputBind.value)), ne = l(() => P.value.overlay), re = l(() => ({
91
+ }, void 0, U.inputBind.value)), ie = u(() => P.value.overlay), ae = u(() => ({
117
92
  modal: P.value.customProps?.modal,
118
93
  drawer: P.value.customProps?.drawer,
119
94
  menu: {
@@ -121,22 +96,27 @@ function w(g, w, T) {
121
96
  placement: "bottom-start",
122
97
  ...P.value.customProps?.menu
123
98
  }
124
- })), ie = l(() => P.value.customProps?.dateTimeRangePicker), ae = l(() => _(q.value) ? "w-full shadow-none" : void 0), oe = l(() => a(U.merged.value.size)), se = l(() => p(b, [U.merged.value.color ?? "primary", "clear"]) ?? "text-dark-400 hover:text-dark-600 dark:text-dark-500 dark:hover:text-dark-300");
99
+ })), oe = u(() => P.value.customProps?.dateTimeRangePicker), $ = s({
100
+ overlay: q,
101
+ componentName: "DateTimeRangeField",
102
+ fill: () => P.value.fill
103
+ }), se = u(() => v($.value, q.value)), ce = u(() => a(U.merged.value.size)), le = u(() => m(b, [U.merged.value.color ?? "primary", "clear"]) ?? "text-dark-400 hover:text-dark-600 dark:text-dark-500 dark:hover:text-dark-300");
125
104
  return {
126
105
  open: j,
127
- overlay: ne,
106
+ fill: $,
107
+ overlay: ie,
128
108
  hasValue: R,
129
109
  formField: U,
130
- inputBind: te,
110
+ inputBind: re,
131
111
  clearable: L,
132
- clearBind: l(() => i({}, {}, {
112
+ clearBind: u(() => i({}, {}, {
133
113
  tabindex: 0,
134
114
  role: "button",
135
115
  "data-field-clear": !0,
136
- onMousedown: $,
116
+ onMousedown: ne,
137
117
  class: x({
138
118
  "inline-flex shrink-0 cursor-pointer items-center justify-center rounded-sm transition-colors duration-150": !0,
139
- [se.value]: !0,
119
+ [le.value]: !0,
140
120
  [P.value.classes?.clear ?? ""]: !0
141
121
  })
142
122
  })),
@@ -144,17 +124,17 @@ function w(g, w, T) {
144
124
  modelValue: I,
145
125
  showFooter: Y,
146
126
  orientation: J,
147
- pickerClass: ae,
127
+ pickerClass: se,
148
128
  dateTimeOnly: P,
149
129
  containerRef: M,
150
- clearIconSize: oe,
130
+ clearIconSize: ce,
151
131
  showClearIcon: W,
152
132
  handleOpenChange: B,
153
133
  handlePickerChange: X,
154
134
  handlePickerCancel: Z,
155
- overlayCustomProps: re,
156
- dateTimeRangePickerCustomProps: ie
135
+ overlayCustomProps: ae,
136
+ dateTimeRangePickerCustomProps: oe
157
137
  };
158
138
  }
159
139
  //#endregion
160
- export { w as useDateTimeRangeField };
140
+ export { T as useDateTimeRangeField };
@@ -128,6 +128,22 @@ export interface DateTimeRangeFieldOwnProps extends Omit<FormFieldOwnProps, "fie
128
128
  * @default undefined
129
129
  */
130
130
  disableYears?: number[];
131
+ /**
132
+ * Unlocks the input for typing. The field does not parse or commit typed
133
+ * text; use the picker (or your own component) to update the value. When
134
+ * unset, the input is read-only.
135
+ *
136
+ * @default false
137
+ */
138
+ editable?: boolean;
139
+ /**
140
+ * When `true`, the picker fills the overlay width.
141
+ * When `false`, it stays at its minimum width.
142
+ * Unset: `true` for `drawer`, `false` for `menu` and `modal`.
143
+ *
144
+ * @default undefined
145
+ */
146
+ fill?: boolean;
131
147
  /**
132
148
  * Hides month navigation / panel.
133
149
  *
@@ -19,6 +19,8 @@ var b = /*@__PURE__*/ u({
19
19
  disableMonths: {},
20
20
  disableTimes: {},
21
21
  disableYears: {},
22
+ error: { type: Boolean },
23
+ fill: { type: Boolean },
22
24
  hideMonths: { type: Boolean },
23
25
  hideOutsideDays: { type: Boolean },
24
26
  hideWeekdays: { type: Boolean },
@@ -57,7 +59,9 @@ var b = /*@__PURE__*/ u({
57
59
  orientation: "horizontal"
58
60
  }, b);
59
61
  return (i, u) => (h(), o("div", m(d(v(S))), [s("div", { class: p(v(A)) }, [s("div", { class: p(v(N)) }, [l(t, {
62
+ fill: v(x).fill,
60
63
  color: v(x).color,
64
+ error: v(x).error,
61
65
  value: v(j),
62
66
  tokens: v(L),
63
67
  rounded: v(x).rounded,
@@ -99,8 +103,10 @@ var b = /*@__PURE__*/ u({
99
103
  }, null, 2)) : a("", !0)
100
104
  ], 2), s("div", { class: p(v(P)) }, [l(v(r), {
101
105
  ampm: v(x).ampm,
106
+ fill: v(x).fill,
102
107
  tokens: v(D),
103
108
  color: v(x).color,
109
+ error: v(x).error,
104
110
  value: v(R),
105
111
  rounded: v(x).rounded,
106
112
  "max-time": v(x).maxTime,
@@ -115,8 +121,10 @@ var b = /*@__PURE__*/ u({
115
121
  "custom-props": v(U)
116
122
  }, null, 8, [
117
123
  "ampm",
124
+ "fill",
118
125
  "tokens",
119
126
  "color",
127
+ "error",
120
128
  "value",
121
129
  "rounded",
122
130
  "max-time",
@@ -146,9 +154,11 @@ var b = /*@__PURE__*/ u({
146
154
  }, null, 2)) : a("", !0)
147
155
  ], 2), s("div", { class: p(v(P)) }, [l(v(r), {
148
156
  ampm: v(x).ampm,
157
+ fill: v(x).fill,
149
158
  tokens: v(D),
150
159
  color: v(x).color,
151
160
  value: v(F),
161
+ error: v(x).error,
152
162
  rounded: v(x).rounded,
153
163
  "max-time": v(x).maxTime,
154
164
  "min-time": v(x).minTime,
@@ -162,9 +172,11 @@ var b = /*@__PURE__*/ u({
162
172
  "custom-props": v(U)
163
173
  }, null, 8, [
164
174
  "ampm",
175
+ "fill",
165
176
  "tokens",
166
177
  "color",
167
178
  "value",
179
+ "error",
168
180
  "rounded",
169
181
  "max-time",
170
182
  "min-time",
@@ -179,7 +191,9 @@ var b = /*@__PURE__*/ u({
179
191
  ])], 2)], 2)]),
180
192
  _: 3
181
193
  }, 8, [
194
+ "fill",
182
195
  "color",
196
+ "error",
183
197
  "value",
184
198
  "tokens",
185
199
  "rounded",
@@ -9,7 +9,7 @@ type DateTimeRangePickerMerged = MergeLibDefaults<DateTimeRangePickerOwnProps, D
9
9
  */
10
10
  export declare function useDateTimeRangePicker(props: MaybeRefOrGetter<DateTimeRangePickerOwnProps>, libDefaults: DateTimeRangePickerLibDefaults, emit: SetupContext<DateTimeRangePickerEmits>["emit"]): {
11
11
  merged: import('vue').ComputedRef<DateTimeRangePickerMerged>;
12
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<DateTimeRangePickerOwnProps, "color" | "orientation" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "startOfWeek" | "timeZone" | "hideMonths" | "hideYears" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>>>;
12
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<DateTimeRangePickerOwnProps, "error" | "color" | "fill" | "orientation" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "startOfWeek" | "timeZone" | "hideMonths" | "hideYears" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>>>;
13
13
  timeBind: import('vue').ComputedRef<string>;
14
14
  footerBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
15
15
  showFooter: import('vue').ComputedRef<boolean>;
@@ -8,7 +8,7 @@ import { combineDateAndTime as g } from "@bridge-ui/core/Domain";
8
8
  import { menuRoundedProps as _ } from "@bridge-ui/core/Tokens";
9
9
  import { cn as v, splitComponentProps as y } from "@bridge-ui/core/Utils";
10
10
  //#region src/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.ts
11
- var b = /* @__PURE__ */ "ampm.color.value.tokens.classes.maxDate.maxTime.minDate.minTime.rounded.disabled.interval.readOnly.timeZone.hideYears.hideMonths.showFooter.customProps.orientation.showSeconds.startOfWeek.defaultValue.disableDates.disableTimes.disableYears.hideWeekdays.disableMonths.hideOutsideDays".split(".");
11
+ var b = /* @__PURE__ */ "ampm.fill.color.error.value.tokens.classes.maxDate.maxTime.minDate.minTime.rounded.disabled.interval.readOnly.timeZone.hideYears.hideMonths.showFooter.customProps.orientation.showSeconds.startOfWeek.defaultValue.disableDates.disableTimes.disableYears.hideWeekdays.disableMonths.hideOutsideDays".split(".");
12
12
  function x(e, t, n) {
13
13
  let [r, i] = e;
14
14
  return t.isAfter(r, i, n) ? [i, r] : e;
@@ -81,12 +81,15 @@ function S(S, C, w) {
81
81
  }, ee = s(() => {
82
82
  let e = p(_, j.value.rounded ?? "md");
83
83
  return r(N.value?.root, P.value, v({
84
- "flex w-fit flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
84
+ "flex flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
85
+ "w-full": j.value.fill,
86
+ "w-fit": !j.value.fill,
85
87
  [e]: !0,
86
88
  [F.value.root ?? ""]: !0
87
89
  }));
88
- }), te = s(() => v({ "flex min-w-0 flex-col": !0 })), ne = s(() => v({
89
- "min-w-0": !0,
90
+ }), te = s(() => v({ "flex w-full min-w-max flex-col": !0 })), ne = s(() => v({
91
+ "min-w-max": !0,
92
+ "w-full": j.value.fill,
90
93
  [F.value.calendar ?? ""]: !0
91
94
  })), re = s(() => v({
92
95
  "relative isolate shrink-0 self-stretch overflow-hidden border-l border-dark-100 dark:border-dark-800": !0,
@@ -126,6 +126,19 @@ export interface DateTimeRangePickerOwnProps {
126
126
  * @default undefined
127
127
  */
128
128
  disableYears?: number[];
129
+ /**
130
+ * When `true`, applies the error color palette to tiles.
131
+ *
132
+ * @default false
133
+ */
134
+ error?: boolean;
135
+ /**
136
+ * When `true`, fills the container width.
137
+ * When `false` or unset, stays at the minimum width.
138
+ *
139
+ * @default false
140
+ */
141
+ fill?: boolean;
129
142
  /**
130
143
  * Hides month navigation / panel.
131
144
  *
@@ -82,13 +82,14 @@ var g = /*@__PURE__*/ s({
82
82
  });
83
83
  l({ stackId: n(() => v.stackId ?? D.value) });
84
84
  let O = n(() => b.value.teleportTo === !1), k = n(() => b.value.teleportTo === !1 ? "body" : b.value.teleportTo), A = n(() => v.hideBackdrop !== !0 && b.value.hideBackdrop !== !0);
85
- return (e, n) => (f(), r(t, {
85
+ return (e, n) => m(x) ? (f(), r(t, {
86
+ key: 0,
86
87
  to: k.value,
87
88
  disabled: O.value
88
- }, [m(x) ? (f(), a("div", d(u({ key: 0 }, m(S))), [A.value ? (f(), a("div", u({
89
+ }, [o("div", d(c(m(S))), [A.value ? (f(), a("div", u({
89
90
  key: 0,
90
91
  "aria-hidden": "true"
91
- }, m(w)), null, 16)) : i("", !0), o("div", d(c(m(T))), [o("div", u({ ref: m(E) }, m(C)), [p(e.$slots, "default")], 16)], 16)], 16)) : i("", !0)], 8, ["to", "disabled"]));
92
+ }, m(w)), null, 16)) : i("", !0), o("div", d(c(m(T))), [o("div", u({ ref: m(E) }, m(C)), [p(e.$slots, "default")], 16)], 16)], 16)], 8, ["to", "disabled"])) : i("", !0);
92
93
  }
93
94
  });
94
95
  //#endregion
@@ -26,14 +26,15 @@ function o(r) {
26
26
  align: "middle-center",
27
27
  disableRestoreFocus: !0,
28
28
  ...r.customProps?.modal
29
- }, "flex w-fit max-w-full flex-col items-stretch p-0")),
29
+ }, "flex w-fit max-w-full sm:max-w-full flex-col items-stretch p-0")),
30
30
  drawerBind: t(() => a({
31
31
  size: "md",
32
+ scroll: "paper",
32
33
  placement: "bottom",
33
34
  closeOnOverlay: !0,
34
35
  disableRestoreFocus: !0,
35
36
  ...r.customProps?.drawer
36
- }, "flex h-auto max-h-[90dvh] flex-col items-stretch p-0")),
37
+ }, "flex h-auto max-h-[90dvh] w-full flex-col items-stretch overflow-x-auto p-0")),
37
38
  resolvedOverlay: o
38
39
  };
39
40
  }
@@ -2,10 +2,10 @@ import { hasSlotOrProp as e } from "../../../Utils/slotOrProp.js";
2
2
  import { mergeNestedComponentProps as t, mergePartBind as n, useBridgeUIComponent as r, useBridgeUIMergedRegistryClasses as i } from "../../../Utils/index.js";
3
3
  import { computed as a, toValue as o, useAttrs as s, useId as c, useSlots as l } from "vue";
4
4
  import { get as u, omit as d } from "es-toolkit/compat";
5
- import { formControlInvalidatedProps as f, labelSizeProps as p } from "@bridge-ui/core/Tokens";
6
- import { cn as m, mergeBridgeUILayeredClasses as h, splitComponentProps as g } from "@bridge-ui/core/Utils";
5
+ import { labelSizeProps as f } from "@bridge-ui/core/Tokens";
6
+ import { cn as p, splitComponentProps as m } from "@bridge-ui/core/Utils";
7
7
  //#region src/Components/FormControl/composables/useFormControl.ts
8
- var _ = [
8
+ var h = [
9
9
  "size",
10
10
  "error",
11
11
  "classes",
@@ -20,88 +20,84 @@ var _ = [
20
20
  "errorMessage",
21
21
  "hideErrorMessage"
22
22
  ];
23
- function v(v, y, b = {}) {
24
- let x = c(), S = l(), C = s(), w = a(() => g({
25
- bridgeKeys: _,
23
+ function g(g, _, v = {}) {
24
+ let y = c(), b = l(), x = s(), S = a(() => m({
25
+ bridgeKeys: h,
26
26
  props: {
27
- ...C,
28
- ...o(v)
27
+ ...x,
28
+ ...o(g)
29
29
  }
30
- })), { merged: T, entry: E } = r({
31
- libDefaults: y,
32
- componentName: b.componentName,
33
- props: () => w.value.componentProps
34
- }), D = a(() => T.value.customProps), O = i({
35
- entry: E,
36
- props: () => w.value.componentProps
37
- }), k = a(() => T.value.error === !0), A = a(() => !!T.value.disabled), j = a(() => !!T.value.readonly), M = a(() => {
38
- let e = w.value.inheritedAttrs.id;
39
- return T.value.controlId ?? e ?? x;
40
- }), N = a(() => !T.value.hideErrorMessage), P = a(() => k.value && e(S, "errorMessage", T.value.errorMessage)), F = a(() => {
30
+ })), { merged: C, entry: w } = r({
31
+ libDefaults: _,
32
+ componentName: v.componentName,
33
+ props: () => S.value.componentProps
34
+ }), T = a(() => C.value.customProps), E = i({
35
+ entry: w,
36
+ props: () => S.value.componentProps
37
+ }), D = a(() => C.value.error === !0), O = a(() => !!C.value.disabled), k = a(() => !!C.value.readonly), A = a(() => {
38
+ let e = S.value.inheritedAttrs.id;
39
+ return C.value.controlId ?? e ?? y;
40
+ }), j = a(() => !C.value.hideErrorMessage), M = a(() => D.value && e(b, "errorMessage", C.value.errorMessage)), N = a(() => {
41
41
  let t = [];
42
- return !k.value && e(S, "description", T.value.description) && t.push(`${M.value}-description`), k.value && N.value && e(S, "errorMessage", T.value.errorMessage) && t.push(`${M.value}-error`), t.length > 0 ? t.join(" ") : void 0;
43
- }), I = a(() => u(p, T.value.size ?? "md")), L = a(() => h(f, u(E.value, [
44
- "tokens",
45
- "formControl",
46
- "invalidated"
47
- ]), T.value.customProps?.invalidated)), R = a(() => n(D.value?.root, d(w.value.inheritedAttrs, ["class"]), m({
42
+ return !D.value && e(b, "description", C.value.description) && t.push(`${A.value}-description`), D.value && j.value && e(b, "errorMessage", C.value.errorMessage) && t.push(`${A.value}-error`), t.length > 0 ? t.join(" ") : void 0;
43
+ }), P = a(() => u(f, C.value.size ?? "md")), F = a(() => n(T.value?.root, d(S.value.inheritedAttrs, ["class"]), p({
48
44
  "group/form-control relative w-full": !0,
49
45
  "aria-disabled:pointer-events-none aria-disabled:select-none aria-disabled:opacity-60 aria-disabled:cursor-not-allowed": !0,
50
46
  "aria-readonly:pointer-events-none aria-readonly:select-none": !0,
51
- [O.value.root ?? ""]: !0,
52
- [C.class]: !!C.class
53
- }))), z = a(() => n(D.value?.row, {}, m({
47
+ [E.value.root ?? ""]: !0,
48
+ [x.class]: !!x.class
49
+ }))), I = a(() => n(T.value?.row, {}, p({
54
50
  "flex flex-row items-center gap-x-2": !0,
55
- [O.value.row ?? ""]: !0
56
- }))), B = a(() => {
57
- let e = (e) => t(D.value?.[e], {
58
- for: M.value,
59
- size: T.value.size,
60
- error: k.value,
61
- required: T.value.required,
62
- classes: { root: m({
51
+ [E.value.row ?? ""]: !0
52
+ }))), L = a(() => {
53
+ let e = (e) => t(T.value?.[e], {
54
+ for: A.value,
55
+ size: C.value.size,
56
+ error: D.value,
57
+ required: C.value.required,
58
+ classes: { root: p({
63
59
  "cursor-pointer": !0,
64
- [O.value[e] ?? ""]: !0
60
+ [E.value[e] ?? ""]: !0
65
61
  }) }
66
62
  });
67
63
  return {
68
64
  endLabel: e("endLabel"),
69
65
  startLabel: e("startLabel")
70
66
  };
71
- }), V = a(() => n(D.value?.description, { id: `${M.value}-description` }, m({
67
+ }), R = a(() => n(T.value?.description, { id: `${A.value}-description` }, p({
72
68
  "mt-2 text-dark-500 dark:text-dark-400": !0,
73
- [I.value ?? ""]: !0,
74
- [O.value.description ?? ""]: !0
75
- }))), H = a(() => n(D.value?.errorMessage, { id: `${M.value}-error` }, m({
69
+ [P.value ?? ""]: !0,
70
+ [E.value.description ?? ""]: !0
71
+ }))), z = a(() => n(T.value?.errorMessage, { id: `${A.value}-error` }, p({
76
72
  "mt-2": !0,
77
- "min-h-[1lh]": N.value,
78
- [L.value.errorMessage ?? ""]: !0,
79
- [I.value ?? ""]: !0,
80
- [O.value.errorMessage ?? ""]: !0
73
+ "min-h-[1lh]": j.value,
74
+ "text-error-600 dark:text-error-400": !0,
75
+ [P.value ?? ""]: !0,
76
+ [E.value.errorMessage ?? ""]: !0
81
77
  })));
82
78
  return {
83
- slots: S,
84
- merged: T,
85
- rowBind: z,
86
- rootBind: R,
87
- controlId: M,
88
- isDisabled: A,
89
- isReadonly: j,
79
+ slots: b,
80
+ merged: C,
81
+ rowBind: I,
82
+ rootBind: F,
83
+ controlId: A,
84
+ isDisabled: O,
85
+ isReadonly: k,
90
86
  controlBind: a(() => ({
91
- id: M.value,
92
- disabled: A.value,
93
- readonly: j.value,
94
- "aria-describedby": F.value,
95
- required: T.value.required || void 0,
96
- "aria-invalid": k.value || void 0
87
+ id: A.value,
88
+ disabled: O.value,
89
+ readonly: k.value,
90
+ "aria-describedby": N.value,
91
+ required: C.value.required || void 0,
92
+ "aria-invalid": D.value || void 0
97
93
  })),
98
- invalidated: k,
99
- fieldLabelProps: B,
100
- descriptionBind: V,
101
- errorMessageBind: H,
102
- showErrorMessageContent: P,
103
- reservesErrorMessageSpace: N
94
+ invalidated: D,
95
+ fieldLabelProps: L,
96
+ descriptionBind: R,
97
+ errorMessageBind: z,
98
+ showErrorMessageContent: M,
99
+ reservesErrorMessageSpace: j
104
100
  };
105
101
  }
106
102
  //#endregion
107
- export { _ as formControlBridgeKeys, v as useFormControl };
103
+ export { h as formControlBridgeKeys, g as useFormControl };
@@ -1,5 +1,5 @@
1
1
  import { HTMLAttributes, Slot } from 'vue';
2
- import { FormControlInvalidated, LabelSize } from '@bridge-ui/core/Tokens';
2
+ import { LabelSize } from '@bridge-ui/core/Tokens';
3
3
  import { MergeHtmlProps, MergeProps } from '@bridge-ui/core/Utils';
4
4
  import { UseFormControlReturn } from './composables/useFormControl';
5
5
  import { LabelProps } from '../Label/label.types';
@@ -45,12 +45,6 @@ export interface FormControlCustomProps {
45
45
  * Props forwarded to the error message element.
46
46
  */
47
47
  errorMessage?: HTMLAttributes;
48
- /**
49
- * Error-state message colors (`errorMessage`). Label colors come from `Label` when `error` is set.
50
- *
51
- * @default undefined
52
- */
53
- invalidated?: Partial<FormControlInvalidated>;
54
48
  /**
55
49
  * Props forwarded to the root wrapper.
56
50
  */