@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
@@ -14,6 +14,8 @@ var v = /*@__PURE__*/ c({
14
14
  defaultValue: {},
15
15
  disabled: { type: Boolean },
16
16
  disableTimes: {},
17
+ error: { type: Boolean },
18
+ fill: { type: Boolean },
17
19
  interval: {},
18
20
  maxTime: {},
19
21
  minTime: {},
@@ -43,9 +45,11 @@ var v = /*@__PURE__*/ c({
43
45
  }, v);
44
46
  return (n, c) => (p(), i("div", f(l(g(b))), [a("div", { class: d(g(T)) }, [s(g(t), {
45
47
  ampm: g(y).ampm,
48
+ fill: g(y).fill,
46
49
  tokens: g(w),
47
50
  color: g(y).color,
48
51
  value: g(O),
52
+ error: g(y).error,
49
53
  rounded: g(y).rounded,
50
54
  "max-time": g(y).maxTime,
51
55
  "min-time": g(y).minTime,
@@ -58,9 +62,11 @@ var v = /*@__PURE__*/ c({
58
62
  "disable-times": g(y).disableTimes
59
63
  }, null, 8, [
60
64
  "ampm",
65
+ "fill",
61
66
  "tokens",
62
67
  "color",
63
68
  "value",
69
+ "error",
64
70
  "rounded",
65
71
  "max-time",
66
72
  "min-time",
@@ -9,7 +9,7 @@ type TimePickerMerged = MergeLibDefaults<TimePickerOwnProps, TimePickerLibDefaul
9
9
  */
10
10
  export declare function useTimePicker(props: MaybeRefOrGetter<TimePickerOwnProps>, libDefaults: TimePickerLibDefaults, emit: SetupContext<TimePickerEmits>["emit"]): {
11
11
  merged: import('vue').ComputedRef<TimePickerMerged>;
12
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<TimePickerOwnProps, "color" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "timeZone" | "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<TimePickerOwnProps, "error" | "color" | "fill" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "timeZone" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>>>;
13
13
  footerBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
14
14
  showFooter: import('vue').ComputedRef<boolean>;
15
15
  timeTokens: import('vue').ComputedRef<{
@@ -8,7 +8,9 @@ import { cn as h, splitComponentProps as g } from "@bridge-ui/core/Utils";
8
8
  //#region src/Components/TimePicker/composables/useTimePicker.ts
9
9
  var _ = [
10
10
  "ampm",
11
+ "fill",
11
12
  "color",
13
+ "error",
12
14
  "value",
13
15
  "tokens",
14
16
  "classes",
@@ -68,7 +70,9 @@ function v(v, y, b) {
68
70
  }, V = a(() => {
69
71
  let e = d(m, T.value.rounded ?? "md");
70
72
  return t(D.value?.root, O.value, h({
71
- "flex w-fit flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
73
+ "flex flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
74
+ "w-full": T.value.fill,
75
+ "w-fit": !T.value.fill,
72
76
  [e]: !0,
73
77
  [k.value.root ?? ""]: !0
74
78
  }));
@@ -98,6 +98,19 @@ export interface TimePickerOwnProps {
98
98
  * @default undefined
99
99
  */
100
100
  disableTimes?: DisableTimesInput;
101
+ /**
102
+ * When `true`, applies the error color palette to tiles.
103
+ *
104
+ * @default false
105
+ */
106
+ error?: boolean;
107
+ /**
108
+ * When `true`, fills the container width.
109
+ * When `false` or unset, stays at the minimum width.
110
+ *
111
+ * @default false
112
+ */
113
+ fill?: boolean;
101
114
  /**
102
115
  * Minute step between options.
103
116
  *
@@ -23,6 +23,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {
23
23
  onOpen?: (() => any) | undefined;
24
24
  "onUpdate:modelValue"?: ((value: TimeRangeValue | null | undefined) => any) | undefined;
25
25
  }>, {
26
+ fill: boolean;
26
27
  showFooter: boolean;
27
28
  showErrorIcon: boolean;
28
29
  clearable: boolean;
@@ -22,6 +22,11 @@ var j = { class: "flex min-w-0 flex-1 items-center gap-1" }, M = ["aria-label"],
22
22
  customProps: {},
23
23
  defaultValue: {},
24
24
  disableTimes: {},
25
+ editable: { type: Boolean },
26
+ fill: {
27
+ type: Boolean,
28
+ default: void 0
29
+ },
25
30
  interval: {},
26
31
  maxTime: {},
27
32
  minTime: {},
@@ -74,49 +79,52 @@ var j = { class: "flex min-w-0 flex-1 items-center gap-1" }, M = ["aria-label"],
74
79
  N.value = e, L.value = e;
75
80
  },
76
81
  get: () => A(N.value) ? L.value : N.value
77
- }), { open: z, overlay: B, timeOnly: V, formField: H, inputBind: U, clearBind: W, clearValue: G, modelValue: K, showFooter: q, pickerClass: J, clearIconSize: Y, showClearIcon: X, handleOpenChange: Z, handlePickerChange: Q, handlePickerCancel: $, overlayCustomProps: ee, timeRangePickerCustomProps: te } = o(P, R, F);
78
- return (e, o) => (x(), d(c, null, [m(T(i), { field: T(H) }, p({
79
- default: D(() => [f("div", j, [f("input", b(g(T(U))), null, 16), T(X) ? (x(), d("span", v({ key: 0 }, T(W), {
80
- onClick: o[0] ||= (...e) => T(G) && T(G)(...e),
82
+ }), { open: z, fill: B, overlay: V, timeOnly: H, formField: U, inputBind: W, clearBind: G, clearValue: K, modelValue: q, showFooter: J, pickerClass: Y, clearIconSize: X, showClearIcon: Z, handleOpenChange: Q, handlePickerChange: $, handlePickerCancel: ee, overlayCustomProps: te, timeRangePickerCustomProps: ne } = o(P, R, F);
83
+ return (e, o) => (x(), d(c, null, [m(T(i), { field: T(U) }, p({
84
+ default: D(() => [f("div", j, [f("input", b(g(T(W))), null, 16), T(Z) ? (x(), d("span", v({ key: 0 }, T(G), {
85
+ onClick: o[0] ||= (...e) => T(K) && T(K)(...e),
81
86
  "aria-label": T(I)("Clear"),
82
- onKeydown: [o[1] ||= O(k((...e) => T(G) && T(G)(...e), ["prevent"]), ["enter"]), o[2] ||= O(k((...e) => T(G) && T(G)(...e), ["prevent"]), ["space"])]
87
+ onKeydown: [o[1] ||= O(k((...e) => T(K) && T(K)(...e), ["prevent"]), ["enter"]), o[2] ||= O(k((...e) => T(K) && T(K)(...e), ["prevent"]), ["space"])]
83
88
  }), [m(T(n), v({
84
89
  icon: "clear",
85
- size: T(Y)
90
+ size: T(X)
86
91
  }, P.customProps?.clearIcon), null, 16, ["size"])], 16, M)) : u("", !0)])]),
87
92
  _: 2
88
93
  }, [C(T(t)(T(r), e.$slots), (t) => ({
89
94
  name: t,
90
95
  fn: D((n) => [w(e.$slots, t, b(g(n || {})))])
91
96
  }))]), 1032, ["field"]), m(T(a), {
92
- overlay: T(B),
97
+ overlay: T(V),
93
98
  "model-value": T(z),
94
- "custom-props": T(ee),
95
- "onUpdate:modelValue": T(Z)
99
+ "custom-props": T(te),
100
+ "onUpdate:modelValue": T(Q)
96
101
  }, {
97
102
  default: D(() => [m(T(s), {
98
- value: T(K),
99
- class: y(T(J)),
100
- ampm: T(V).ampm,
101
- "show-footer": T(q),
103
+ fill: T(B),
104
+ value: T(q),
105
+ class: y(T(Y)),
106
+ ampm: T(H).ampm,
107
+ "show-footer": T(J),
102
108
  "read-only": P.readonly,
103
- "max-time": T(V).maxTime,
104
- "min-time": T(V).minTime,
105
- interval: T(V).interval,
106
- "time-zone": T(V).timeZone,
107
- onChange: T(Q),
108
- onCancel: T($),
109
- "show-seconds": T(V).showSeconds,
110
- color: T(H).merged.value.color,
111
- disabled: T(H).isDisabled.value,
112
- "disable-times": T(V).disableTimes,
113
- rounded: T(H).merged.value.rounded,
114
- "custom-props": T(te)
109
+ "max-time": T(H).maxTime,
110
+ "min-time": T(H).minTime,
111
+ interval: T(H).interval,
112
+ "time-zone": T(H).timeZone,
113
+ onChange: T($),
114
+ onCancel: T(ee),
115
+ "show-seconds": T(H).showSeconds,
116
+ error: T(U).invalidated.value,
117
+ color: T(U).merged.value.color,
118
+ disabled: T(U).isDisabled.value,
119
+ "disable-times": T(H).disableTimes,
120
+ rounded: T(U).merged.value.rounded,
121
+ "custom-props": T(ne)
115
122
  }, p({ _: 2 }, [e.$slots.footer ? {
116
123
  name: "footer",
117
124
  fn: D((t) => [w(e.$slots, "footer", b(g(t)))]),
118
125
  key: "0"
119
126
  } : void 0]), 1032, [
127
+ "fill",
120
128
  "value",
121
129
  "class",
122
130
  "ampm",
@@ -129,6 +137,7 @@ var j = { class: "flex min-w-0 flex-1 items-center gap-1" }, M = ["aria-label"],
129
137
  "onChange",
130
138
  "onCancel",
131
139
  "show-seconds",
140
+ "error",
132
141
  "color",
133
142
  "disabled",
134
143
  "disable-times",
@@ -7,9 +7,10 @@ import { TimeRangeFieldEmits, TimeRangeFieldOwnProps } from '../timeRangeField.t
7
7
  */
8
8
  export declare function useTimeRangeField(props: TimeRangeFieldOwnProps, model: Ref<null | undefined | TimeRangeValue>, emit: SetupContext<TimeRangeFieldEmits>["emit"]): {
9
9
  open: Ref<boolean, boolean>;
10
+ fill: import('vue').ComputedRef<boolean>;
10
11
  overlay: import('vue').ComputedRef<import('@bridge-ui/core/Domain').FieldOverlayMode | undefined>;
11
12
  hasValue: import('vue').ComputedRef<boolean>;
12
- timeOnly: import('vue').ComputedRef<Pick<TimeRangeFieldOwnProps & Record<string, unknown>, "classes" | "overlay" | "showFooter" | "customProps" | "clearable" | "defaultValue" | "timeZone" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>;
13
+ timeOnly: import('vue').ComputedRef<Pick<TimeRangeFieldOwnProps & Record<string, unknown>, "fill" | "classes" | "overlay" | "showFooter" | "customProps" | "clearable" | "defaultValue" | "timeZone" | "editable" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>;
13
14
  formField: {
14
15
  slots: Readonly<{
15
16
  [name: string]: import('vue').Slot<any> | undefined;
@@ -686,8 +687,8 @@ export declare function useTimeRangeField(props: TimeRangeFieldOwnProps, model:
686
687
  onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
687
688
  onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
688
689
  }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "rounded" | "variant" | "label" | "disabled" | "required" | "corner" | "description" | "errorMessage" | "start" | "endIcon" | "errorIcon" | "hideErrorMessage" | "readonly" | "showErrorIcon" | "startIcon">>>, "class", {
689
- readonly: boolean;
690
690
  value: string;
691
+ readonly: boolean;
691
692
  onFocus: (event: FocusEvent) => void;
692
693
  onKeydown: (event: KeyboardEvent) => void;
693
694
  }, undefined>>;
@@ -702,7 +703,7 @@ export declare function useTimeRangeField(props: TimeRangeFieldOwnProps, model:
702
703
  clearValue: (event?: Event) => void;
703
704
  modelValue: import('vue').ComputedRef<TimeRangeValue | null>;
704
705
  showFooter: import('vue').ComputedRef<boolean>;
705
- pickerClass: import('vue').ComputedRef<"w-full shadow-none" | undefined>;
706
+ pickerClass: import('vue').ComputedRef<string | undefined>;
706
707
  containerRef: Ref<HTMLElement | null, HTMLElement | null>;
707
708
  clearIconSize: import('vue').ComputedRef<keyof import('@bridge-ui/core/Tokens').IconSize>;
708
709
  showClearIcon: import('vue').ComputedRef<boolean>;
@@ -1,20 +1,22 @@
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 { isFieldOverlayDialog as g, isTimeRangeValue as _, resolveFieldOverlay as v } from "@bridge-ui/core/Domain";
9
- import { listboxColorProps as y } from "@bridge-ui/core/Tokens";
10
- import { cn as b, splitComponentProps as x } from "@bridge-ui/core/Utils";
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 g } from "es-toolkit/compat";
8
+ import { isTimeRangeValue as _, resolveFieldOverlay as v, resolveFieldPickerClassName as y } from "@bridge-ui/core/Domain";
9
+ import { listboxColorProps as b } from "@bridge-ui/core/Tokens";
10
+ import { cn as x, splitComponentProps as S } from "@bridge-ui/core/Utils";
11
11
  //#region src/Components/TimeRangeField/composables/useTimeRangeField.ts
12
- var S = [
12
+ var C = [
13
13
  "ampm",
14
+ "fill",
14
15
  "classes",
15
16
  "maxTime",
16
17
  "minTime",
17
18
  "overlay",
19
+ "editable",
18
20
  "interval",
19
21
  "timeZone",
20
22
  "clearable",
@@ -24,8 +26,8 @@ var S = [
24
26
  "defaultValue",
25
27
  "disableTimes"
26
28
  ];
27
- function C(e, t, n, r, i) {
28
- return m(e) || !_(e) ? "" : `${t.formatTime(e[0], n, {
29
+ function w(e, t, n, r, i) {
30
+ return h(e) || !_(e) ? "" : `${t.formatTime(e[0], n, {
29
31
  ampm: r,
30
32
  showSeconds: i
31
33
  })} – ${t.formatTime(e[1], n, {
@@ -33,120 +35,125 @@ function C(e, t, n, r, i) {
33
35
  showSeconds: i
34
36
  })}`;
35
37
  }
36
- function w(_, w, T) {
37
- let E = d(), D = f(), O = e(), k = r(), A = t(), j = u(!1), M = u(null), N = l(() => x({
38
+ function T(_, T, E) {
39
+ let D = f(), ee = p(), te = e(), O = r(), k = t(), A = d(!1), j = d(null), M = u(() => S({
38
40
  props: {
39
- ...E,
41
+ ...D,
40
42
  ..._
41
43
  },
42
- bridgeKeys: S
43
- })), 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) => {
44
- M.value = e instanceof HTMLElement ? e : null;
44
+ bridgeKeys: C
45
+ })), N = u(() => M.value.componentProps), P = u(() => k(N.value.timeZone)), F = u(() => T.value ?? null), I = u(() => N.value.clearable !== !1), L = u(() => !h(F.value)), R = (e) => {
46
+ j.value = e instanceof HTMLElement ? e : null;
45
47
  };
46
- function B(e) {
47
- j.value !== e && (j.value = e, T(e ? "open" : "close"));
48
+ function z(e) {
49
+ A.value !== e && (A.value = e, E(e ? "open" : "close"));
48
50
  }
49
- let V = l(() => h(N.value.inheritedAttrs, ["class"])), H = l(() => {
50
- let e = x({
51
- bridgeKeys: s,
52
- props: V.value
53
- }).componentProps, t = e.endIcon ?? (n(D, "end") ? void 0 : "clock"), { menu: r, clearIcon: a, timeRangePicker: o, ...c } = P.value.customProps ?? {};
51
+ let B = u(() => g(M.value.inheritedAttrs, ["class"])), V = u(() => {
52
+ let e = S({
53
+ bridgeKeys: c,
54
+ props: B.value
55
+ }).componentProps, t = e.endIcon ?? (n(ee, "end") ? void 0 : "clock"), { menu: r, clearIcon: a, timeRangePicker: o, ...s } = N.value.customProps ?? {};
54
56
  return {
55
57
  ...e,
56
58
  endIcon: t,
57
- classes: P.value.classes,
59
+ classes: N.value.classes,
58
60
  customProps: {
59
- ...c,
60
- container: i(c.container, {}, {
61
- ref: z,
62
- class: b({ "cursor-pointer": !_.disabled && !_.readonly }),
61
+ ...s,
62
+ container: i(s.container, {}, {
63
+ ref: R,
64
+ class: x({ "cursor-pointer": !_.disabled && !_.readonly }),
63
65
  onClick: (e) => {
64
- _.disabled || _.readonly || e.target.closest("[data-field-clear]") || B(!0);
66
+ _.disabled || _.readonly || e.target.closest("[data-field-clear]") || z(!0);
65
67
  }
66
68
  })
67
69
  }
68
70
  };
69
- }), U = c(() => H.value, {
71
+ }), H = l(() => V.value, {
70
72
  size: "md",
71
73
  rounded: "md",
72
74
  color: "primary",
73
75
  variant: "outline",
74
76
  showErrorIcon: !0
75
- }, { componentName: "TimeRangeField" }), W = l(() => R.value && L.value && !_.readonly && !U.isDisabled.value), G = l(() => C(I.value, O.value, F.value, P.value.ampm, P.value.showSeconds));
76
- function K(e) {
77
- w.value = e, T("change", e);
77
+ }, { componentName: "TimeRangeField" }), U = u(() => L.value && I.value && !_.readonly && !H.isDisabled.value), W = u(() => w(F.value, te.value, P.value, N.value.ampm, N.value.showSeconds));
78
+ function G(e) {
79
+ T.value = e, E("change", e);
78
80
  }
79
- let q = o({
81
+ let K = o({
80
82
  componentName: "TimeRangeField",
81
- showFooter: () => P.value.showFooter,
82
- overlay: () => v(P.value.overlay, k.mobile)
83
+ showFooter: () => N.value.showFooter,
84
+ overlay: () => v(N.value.overlay, O.mobile)
83
85
  });
84
- function J(e) {
85
- if (K(e), q.value) {
86
- T("apply");
86
+ function q(e) {
87
+ if (G(e), K.value) {
88
+ E("apply");
87
89
  return;
88
90
  }
89
- B(!1);
91
+ z(!1);
90
92
  }
91
- function Y() {
92
- T("cancel");
93
+ function J() {
94
+ E("cancel");
93
95
  }
94
- function X(e) {
95
- e?.preventDefault(), e?.stopPropagation(), !(_.disabled || _.readonly) && (K(null), T("clear"), B(!1));
96
+ function Y(e) {
97
+ e?.preventDefault(), e?.stopPropagation(), !(_.disabled || _.readonly) && (G(null), E("clear"), z(!1));
96
98
  }
97
- function Z(e) {
99
+ function X(e) {
98
100
  e.preventDefault();
99
101
  }
100
- let Q = l(() => i({
101
- readonly: !0,
102
- value: G.value,
102
+ let Z = u(() => i({
103
+ value: W.value,
104
+ readonly: !N.value.editable || H.inputBind.value.readonly,
103
105
  onFocus: (e) => {
104
- U.inputBind.value.onFocus?.(e), B(!0);
106
+ H.inputBind.value.onFocus?.(e), z(!0);
105
107
  },
106
108
  onKeydown: (e) => {
107
- U.inputBind.value.onKeydown?.(e), e.key === "Escape" && B(!1);
109
+ H.inputBind.value.onKeydown?.(e), e.key === "Escape" && z(!1);
108
110
  }
109
- }, void 0, U.inputBind.value)), $ = l(() => P.value.overlay), ee = l(() => ({
110
- modal: P.value.customProps?.modal,
111
- drawer: P.value.customProps?.drawer,
111
+ }, void 0, H.inputBind.value)), ne = u(() => N.value.overlay), re = u(() => ({
112
+ modal: N.value.customProps?.modal,
113
+ drawer: N.value.customProps?.drawer,
112
114
  menu: {
113
- anchorEl: M.value,
115
+ anchorEl: j.value,
114
116
  placement: "bottom-start",
115
- ...P.value.customProps?.menu
117
+ ...N.value.customProps?.menu
116
118
  }
117
- })), te = l(() => P.value.customProps?.timeRangePicker), ne = l(() => v(P.value.overlay, k.mobile)), re = l(() => g(ne.value) ? "w-full shadow-none" : void 0), ie = l(() => a(U.merged.value.size)), ae = l(() => p(y, [U.merged.value.color ?? "primary", "clear"]) ?? "text-dark-400 hover:text-dark-600 dark:text-dark-500 dark:hover:text-dark-300");
119
+ })), ie = u(() => N.value.customProps?.timeRangePicker), Q = u(() => v(N.value.overlay, O.mobile)), $ = s({
120
+ overlay: Q,
121
+ componentName: "TimeRangeField",
122
+ fill: () => N.value.fill
123
+ }), ae = u(() => y($.value, Q.value)), oe = u(() => a(H.merged.value.size)), se = u(() => m(b, [H.merged.value.color ?? "primary", "clear"]) ?? "text-dark-400 hover:text-dark-600 dark:text-dark-500 dark:hover:text-dark-300");
118
124
  return {
119
- open: j,
120
- overlay: $,
121
- hasValue: R,
122
- timeOnly: P,
123
- formField: U,
124
- inputBind: Q,
125
- clearable: L,
126
- clearBind: l(() => i({}, {}, {
125
+ open: A,
126
+ fill: $,
127
+ overlay: ne,
128
+ hasValue: L,
129
+ timeOnly: N,
130
+ formField: H,
131
+ inputBind: Z,
132
+ clearable: I,
133
+ clearBind: u(() => i({}, {}, {
127
134
  tabindex: 0,
128
135
  role: "button",
129
136
  "data-field-clear": !0,
130
- onMousedown: Z,
131
- class: b({
137
+ onMousedown: X,
138
+ class: x({
132
139
  "inline-flex shrink-0 cursor-pointer items-center justify-center rounded-sm transition-colors duration-150": !0,
133
- [ae.value]: !0,
134
- [P.value.classes?.clear ?? ""]: !0
140
+ [se.value]: !0,
141
+ [N.value.classes?.clear ?? ""]: !0
135
142
  })
136
143
  })),
137
- clearValue: X,
138
- modelValue: I,
139
- showFooter: q,
140
- pickerClass: re,
141
- containerRef: M,
142
- clearIconSize: ie,
143
- showClearIcon: W,
144
- handleOpenChange: B,
145
- handlePickerChange: J,
146
- handlePickerCancel: Y,
147
- overlayCustomProps: ee,
148
- timeRangePickerCustomProps: te
144
+ clearValue: Y,
145
+ modelValue: F,
146
+ showFooter: K,
147
+ pickerClass: ae,
148
+ containerRef: j,
149
+ clearIconSize: oe,
150
+ showClearIcon: U,
151
+ handleOpenChange: z,
152
+ handlePickerChange: q,
153
+ handlePickerCancel: J,
154
+ overlayCustomProps: re,
155
+ timeRangePickerCustomProps: ie
149
156
  };
150
157
  }
151
158
  //#endregion
152
- export { w as useTimeRangeField };
159
+ export { T as useTimeRangeField };
@@ -108,6 +108,22 @@ export interface TimeRangeFieldOwnProps extends Omit<FormFieldOwnProps, "field"
108
108
  * @default undefined
109
109
  */
110
110
  disableTimes?: DisableTimesInput;
111
+ /**
112
+ * Unlocks the input for typing. The field does not parse or commit typed
113
+ * text; use the picker (or your own component) to update the value. When
114
+ * unset, the input is read-only.
115
+ *
116
+ * @default false
117
+ */
118
+ editable?: boolean;
119
+ /**
120
+ * When `true`, the picker fills the overlay width.
121
+ * When `false`, it stays at its minimum width.
122
+ * Unset: `true` for `drawer`, `false` for `menu` and `modal`.
123
+ *
124
+ * @default undefined
125
+ */
126
+ fill?: boolean;
111
127
  /**
112
128
  * Minute step between options.
113
129
  *
@@ -15,6 +15,8 @@ var v = /*@__PURE__*/ c({
15
15
  disabled: { type: Boolean },
16
16
  disableTimes: {},
17
17
  endTitle: {},
18
+ error: { type: Boolean },
19
+ fill: { type: Boolean },
18
20
  interval: {},
19
21
  maxTime: {},
20
22
  minTime: {},
@@ -47,8 +49,10 @@ var v = /*@__PURE__*/ c({
47
49
  }, v);
48
50
  return (n, c) => (p(), i("div", f(l(g(x))), [a("div", f(l(g(E))), [a("div", f(l(g(C))), [a("p", { class: d(g(P)) }, h(g(w)), 3), s(g(t), {
49
51
  ampm: g(y).ampm,
52
+ fill: g(y).fill,
50
53
  tokens: g(k),
51
54
  color: g(y).color,
55
+ error: g(y).error,
52
56
  rounded: g(y).rounded,
53
57
  value: g(R),
54
58
  "max-time": g(y).maxTime,
@@ -62,8 +66,10 @@ var v = /*@__PURE__*/ c({
62
66
  "disable-times": g(y).disableTimes
63
67
  }, null, 8, [
64
68
  "ampm",
69
+ "fill",
65
70
  "tokens",
66
71
  "color",
72
+ "error",
67
73
  "rounded",
68
74
  "value",
69
75
  "max-time",
@@ -77,8 +83,10 @@ var v = /*@__PURE__*/ c({
77
83
  "disable-times"
78
84
  ])], 16), a("div", f(l(g(b))), [a("p", { class: d(g(M)) }, h(g(S)), 3), s(g(t), {
79
85
  ampm: g(y).ampm,
86
+ fill: g(y).fill,
80
87
  tokens: g(k),
81
88
  color: g(y).color,
89
+ error: g(y).error,
82
90
  value: g(F),
83
91
  rounded: g(y).rounded,
84
92
  "max-time": g(y).maxTime,
@@ -92,8 +100,10 @@ var v = /*@__PURE__*/ c({
92
100
  "disable-times": g(y).disableTimes
93
101
  }, null, 8, [
94
102
  "ampm",
103
+ "fill",
95
104
  "tokens",
96
105
  "color",
106
+ "error",
97
107
  "value",
98
108
  "rounded",
99
109
  "max-time",
@@ -10,7 +10,7 @@ type TimeRangePickerMerged = MergeLibDefaults<TimeRangePickerOwnProps, TimeRange
10
10
  export declare function useTimeRangePicker(props: MaybeRefOrGetter<TimeRangePickerOwnProps>, libDefaults: TimeRangePickerLibDefaults, emit: SetupContext<TimeRangePickerEmits>["emit"]): {
11
11
  merged: import('vue').ComputedRef<TimeRangePickerMerged>;
12
12
  endBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
13
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<TimeRangePickerOwnProps, "color" | "orientation" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "timeZone" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds" | "endTitle" | "startTitle">>>>;
13
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<TimeRangePickerOwnProps, "error" | "color" | "fill" | "orientation" | "value" | "classes" | "tokens" | "showFooter" | "customProps" | "rounded" | "disabled" | "defaultValue" | "readOnly" | "timeZone" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds" | "endTitle" | "startTitle">>>>;
14
14
  startBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
15
15
  footerBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
16
16
  panelsBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
@@ -10,7 +10,9 @@ import { cn as _, splitComponentProps as v } from "@bridge-ui/core/Utils";
10
10
  //#region src/Components/TimeRangePicker/composables/useTimeRangePicker.ts
11
11
  var y = [
12
12
  "ampm",
13
+ "fill",
13
14
  "color",
15
+ "error",
14
16
  "value",
15
17
  "tokens",
16
18
  "classes",
@@ -82,7 +84,9 @@ function b(b, x, S) {
82
84
  }, X = o(() => {
83
85
  let e = f(g, k.value.rounded ?? "md");
84
86
  return r(j.value?.root, M.value, _({
85
- "flex w-fit flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
87
+ "flex flex-col overflow-hidden bg-white shadow-lg dark:bg-dark-900": !0,
88
+ "w-full": k.value.fill,
89
+ "w-fit": !k.value.fill,
86
90
  [e]: !0,
87
91
  [N.value.root ?? ""]: !0
88
92
  }));
@@ -142,6 +142,19 @@ export interface TimeRangePickerOwnProps {
142
142
  * @default "End time"
143
143
  */
144
144
  endTitle?: string;
145
+ /**
146
+ * When `true`, applies the error color palette to tiles.
147
+ *
148
+ * @default false
149
+ */
150
+ error?: boolean;
151
+ /**
152
+ * When `true`, fills the container width.
153
+ * When `false` or unset, stays at the minimum width.
154
+ *
155
+ * @default false
156
+ */
157
+ fill?: boolean;
145
158
  /**
146
159
  * Minute step between options.
147
160
  *
@@ -57,16 +57,14 @@ var x = /*@__PURE__*/ d({
57
57
  C.onShowChange?.(e), S("show-change", e);
58
58
  }
59
59
  }), P = a(() => T.value.teleportTo === !1), F = a(() => T.value.teleportTo === !1 ? "body" : T.value.teleportTo);
60
- return (n, a) => (h(), c(r, null, [v(e)(v(x), "trigger") ? (h(), c("div", m(p({ key: 0 }, v(D))), [l("div", p({ ref: v(M) }, v(k)), [g(n.$slots, "trigger")], 16)], 16)) : s("", !0), (h(), o(i, {
60
+ return (n, a) => (h(), c(r, null, [v(e)(v(x), "trigger") ? (h(), c("div", m(p({ key: 0 }, v(D))), [l("div", p({ ref: v(M) }, v(k)), [g(n.$slots, "trigger")], 16)], 16)) : s("", !0), v(E) ? (h(), o(i, {
61
+ key: 1,
61
62
  to: F.value,
62
63
  disabled: P.value
63
- }, [v(E) ? (h(), c("div", p({
64
- key: 0,
65
- ref: v(N)
66
- }, v(A)), [v(e)(v(x), "default") ? g(n.$slots, "default", {}, void 0, void 0, 0) : v(t)(v(T).content) ? (h(), c(r, { key: 1 }, [u(_(v(T).content), 1)], 64)) : s("", !0), v(O) ? (h(), c("div", p({
64
+ }, [l("div", p({ ref: v(N) }, v(A)), [v(e)(v(x), "default") ? g(n.$slots, "default", {}, void 0, void 0, 0) : v(t)(v(T).content) ? (h(), c(r, { key: 1 }, [u(_(v(T).content), 1)], 64)) : s("", !0), v(O) ? (h(), c("div", p({
67
65
  key: 2,
68
66
  ref: v(j)
69
- }, v(O)), null, 16)) : s("", !0)], 16)) : s("", !0)], 8, ["to", "disabled"]))], 64));
67
+ }, v(O)), null, 16)) : s("", !0)], 16)], 8, ["to", "disabled"])) : s("", !0)], 64));
70
68
  }
71
69
  });
72
70
  //#endregion
@@ -42,6 +42,15 @@ export declare function useFieldShowFooter({ overlay, showFooter, componentName,
42
42
  overlay: MaybeRefOrGetter<ResolvedFieldOverlay>;
43
43
  showFooter: MaybeRefOrGetter<boolean | undefined>;
44
44
  }): ComputedRef<boolean>;
45
+ /**
46
+ * Resolves picker fill: instance prop, then registry `defaultProps.fill`,
47
+ * then the overlay default from core.
48
+ */
49
+ export declare function usePickerFill({ fill, overlay, componentName, }: {
50
+ componentName: undefined | keyof BridgeUIComponentsConfig;
51
+ fill: MaybeRefOrGetter<boolean | undefined>;
52
+ overlay?: MaybeRefOrGetter<undefined | ResolvedFieldOverlay>;
53
+ }): ComputedRef<boolean>;
45
54
  /**
46
55
  * Merges `entry.classes` (Bridge provider) with `props.classes` (instance).
47
56
  */