@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
@@ -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 { baseFieldInvalidatedProps as f, baseFieldSizeProps 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 { baseFieldSizeProps as f } from "@bridge-ui/core/Tokens";
6
+ import { cn as p, mergeBridgeUILayeredClasses as m, splitComponentProps as h } from "@bridge-ui/core/Utils";
7
7
  //#region src/Components/BaseField/composables/useBaseField.ts
8
- var _ = [
8
+ var g = [
9
9
  "size",
10
10
  "error",
11
11
  "label",
@@ -20,115 +20,111 @@ var _ = [
20
20
  "errorMessage",
21
21
  "hideErrorMessage"
22
22
  ];
23
- function v(v, y = {
23
+ function _(_, v = {
24
24
  size: "md",
25
25
  error: !1,
26
26
  hideErrorMessage: !1
27
- }, b = {}) {
28
- let x = s(), S = l(), C = c(), w = a(() => g({
29
- bridgeKeys: _,
27
+ }, y = {}) {
28
+ let b = s(), x = l(), S = c(), C = a(() => h({
29
+ bridgeKeys: g,
30
30
  props: {
31
- ...x,
32
- ...o(v)
31
+ ...b,
32
+ ...o(_)
33
33
  }
34
- })), { merged: T, entry: E } = r({
35
- libDefaults: y,
36
- componentName: b.componentName,
37
- props: () => w.value.componentProps
38
- }), D = i({
39
- entry: E,
40
- props: () => w.value.componentProps
41
- }), O = a(() => T.value.customProps), k = a(() => T.value.error === !0), A = a(() => !!T.value.disabled), j = a(() => !!T.value.readonly), M = a(() => T.value.controlId ?? w.value.inheritedAttrs.id ?? C), N = a(() => {
42
- let e = h(p, u(E.value, [
34
+ })), { merged: w, entry: T } = r({
35
+ libDefaults: v,
36
+ componentName: y.componentName,
37
+ props: () => C.value.componentProps
38
+ }), E = i({
39
+ entry: T,
40
+ props: () => C.value.componentProps
41
+ }), D = a(() => w.value.customProps), O = a(() => w.value.error === !0), k = a(() => !!w.value.disabled), A = a(() => !!w.value.readonly), j = a(() => w.value.controlId ?? C.value.inheritedAttrs.id ?? S), M = a(() => {
42
+ let e = m(f, u(T.value, [
43
43
  "tokens",
44
44
  "baseField",
45
45
  "size"
46
46
  ]));
47
- return u(e, T.value.size ?? "md");
48
- }), P = a(() => h(f, u(E.value, [
49
- "tokens",
50
- "baseField",
51
- "invalidated"
52
- ]), T.value.customProps?.invalidated)), F = a(() => k.value ? P.value : void 0), I = a(() => !T.value.hideErrorMessage), L = a(() => k.value && e(S, "errorMessage", T.value.errorMessage)), R = a(() => {
47
+ return u(e, w.value.size ?? "md");
48
+ }), N = a(() => !w.value.hideErrorMessage), P = a(() => O.value && e(x, "errorMessage", w.value.errorMessage)), F = a(() => {
53
49
  let t = [];
54
- return !k.value && e(S, "description", T.value.description) && t.push(`${M.value}-description`), k.value && !T.value.hideErrorMessage && e(S, "errorMessage", T.value.errorMessage) && t.push(`${M.value}-error`), t.length > 0 ? t.join(" ") : void 0;
55
- }), z = a(() => n(O.value?.root, {
56
- class: m(w.value.inheritedAttrs.class),
57
- ...d(w.value.inheritedAttrs, ["class", "id"])
58
- }, m({
50
+ return !O.value && e(x, "description", w.value.description) && t.push(`${j.value}-description`), O.value && !w.value.hideErrorMessage && e(x, "errorMessage", w.value.errorMessage) && t.push(`${j.value}-error`), t.length > 0 ? t.join(" ") : void 0;
51
+ }), I = a(() => n(D.value?.root, {
52
+ class: p(C.value.inheritedAttrs.class),
53
+ ...d(C.value.inheritedAttrs, ["class", "id"])
54
+ }, p({
59
55
  "group w-full relative": !0,
60
56
  "aria-disabled:pointer-events-none aria-disabled:select-none aria-disabled:opacity-60": !0,
61
57
  "aria-readonly:pointer-events-none aria-readonly:select-none": !0,
62
- [D.value.root ?? ""]: !0
63
- }))), B = a(() => n(O.value?.header, {}, m({
58
+ [E.value.root ?? ""]: !0
59
+ }))), L = a(() => n(D.value?.header, {}, p({
64
60
  "flex w-full gap-x-2 mb-1.5": !0,
65
- "justify-between items-end": e(S, "label", T.value.label),
66
- "justify-end": !e(S, "label", T.value.label),
67
- [D.value.header ?? ""]: !0
68
- }))), V = a(() => n(O.value?.corner, {}, m({
61
+ "justify-between items-end": e(x, "label", w.value.label),
62
+ "justify-end": !e(x, "label", w.value.label),
63
+ [E.value.header ?? ""]: !0
64
+ }))), R = a(() => n(D.value?.corner, {}, p({
69
65
  "text-dark-500 dark:text-dark-400": !0,
70
- [N.value?.text ?? ""]: !0,
71
- [D.value.corner ?? ""]: !0
72
- }))), H = a(() => n(O.value?.group, {
66
+ [M.value?.text ?? ""]: !0,
67
+ [E.value.corner ?? ""]: !0
68
+ }))), z = a(() => n(D.value?.group, {
73
69
  role: "group",
74
- id: M.value,
75
- "aria-describedby": R.value,
76
- "aria-disabled": A.value || void 0,
77
- "aria-invalid": k.value || void 0
78
- }, m({
70
+ id: j.value,
71
+ "aria-describedby": F.value,
72
+ "aria-disabled": k.value || void 0,
73
+ "aria-invalid": O.value || void 0
74
+ }, p({
79
75
  "flex flex-wrap items-center": !0,
80
- [N.value?.group ?? ""]: !0,
81
- [D.value.group ?? ""]: !0
82
- }))), U = a(() => n(O.value?.start, {}, m({
76
+ [M.value?.group ?? ""]: !0,
77
+ [E.value.group ?? ""]: !0
78
+ }))), B = a(() => n(D.value?.start, {}, p({
83
79
  "group/start wrapper-start-slot shrink-0 flex items-center [&>*]:min-h-0": !0,
84
- [D.value.start ?? ""]: !0
85
- }))), W = a(() => n(O.value?.end, {}, m({
80
+ [E.value.start ?? ""]: !0
81
+ }))), V = a(() => n(D.value?.end, {}, p({
86
82
  "group/end wrapper-end-slot shrink-0 flex items-center [&>*]:min-h-0": !0,
87
- [D.value.end ?? ""]: !0
88
- }))), G = a(() => n(O.value?.description, {}, m({
83
+ [E.value.end ?? ""]: !0
84
+ }))), H = a(() => n(D.value?.description, {}, p({
89
85
  "mt-2 text-dark-500 dark:text-dark-400": !0,
90
- [N.value?.text ?? ""]: !0,
91
- [D.value.description ?? ""]: !0
86
+ [M.value?.text ?? ""]: !0,
87
+ [E.value.description ?? ""]: !0
92
88
  })));
93
89
  return {
94
- slots: S,
95
- merged: T,
96
- rootBind: z,
97
- errorBind: a(() => n(O.value?.errorMessage, {}, m({
90
+ slots: x,
91
+ merged: w,
92
+ rootBind: I,
93
+ errorBind: a(() => n(D.value?.errorMessage, {}, p({
98
94
  "mt-2": !0,
99
- "min-h-[1lh]": I.value,
100
- [F.value?.errorMessage ?? ""]: !0,
101
- [N.value?.text ?? ""]: !0,
102
- [D.value.errorMessage ?? ""]: !0
95
+ "min-h-[1lh]": N.value,
96
+ "text-error-600 dark:text-error-400": !0,
97
+ [M.value?.text ?? ""]: !0,
98
+ [E.value.errorMessage ?? ""]: !0
103
99
  }))),
104
- groupBind: H,
105
- controlId: M,
106
- headerBind: B,
107
- cornerBind: V,
108
- isDisabled: A,
109
- isReadonly: j,
110
- sizeClasses: N,
111
- endSlotBind: W,
112
- invalidated: k,
113
- startSlotBind: U,
114
- mergedClasses: D,
115
- ariaDescribedBy: R,
100
+ groupBind: z,
101
+ controlId: j,
102
+ headerBind: L,
103
+ cornerBind: R,
104
+ isDisabled: k,
105
+ isReadonly: A,
106
+ sizeClasses: M,
107
+ endSlotBind: V,
108
+ invalidated: O,
109
+ startSlotBind: B,
110
+ mergedClasses: E,
111
+ ariaDescribedBy: F,
116
112
  fieldLabelProps: a(() => {
117
- let e = b.labelHtmlFor ?? ((e) => e);
118
- return t(O.value?.label, {
119
- size: T.value.size,
120
- error: k.value,
121
- required: T.value.required,
122
- for: e(M.value),
113
+ let e = y.labelHtmlFor ?? ((e) => e);
114
+ return t(D.value?.label, {
115
+ size: w.value.size,
116
+ error: O.value,
117
+ required: w.value.required,
118
+ for: e(j.value),
123
119
  classes: {
124
- required: D.value.required,
125
- root: m({ [D.value.label ?? ""]: !0 })
120
+ required: E.value.required,
121
+ root: p({ [E.value.label ?? ""]: !0 })
126
122
  }
127
123
  });
128
124
  }),
129
- descriptionBind: G,
130
- showErrorMessageContent: L
125
+ descriptionBind: H,
126
+ showErrorMessageContent: P
131
127
  };
132
128
  }
133
129
  //#endregion
134
- export { _ as baseFieldBridgeKeys, v as useBaseField };
130
+ export { g as baseFieldBridgeKeys, _ as useBaseField };
@@ -23,6 +23,8 @@ var ee = { class: "flex w-full min-w-0 items-center gap-x-2" }, C = {
23
23
  disableDates: {},
24
24
  disableMonths: {},
25
25
  disableYears: {},
26
+ error: { type: Boolean },
27
+ fill: { type: Boolean },
26
28
  hideMonths: { type: Boolean },
27
29
  hideOutsideDays: { type: Boolean },
28
30
  hideWeekdays: { type: Boolean },
@@ -180,6 +180,19 @@ export interface CalendarOwnProps {
180
180
  * @default undefined
181
181
  */
182
182
  disableYears?: number[];
183
+ /**
184
+ * When `true`, applies the error color palette to tiles.
185
+ *
186
+ * @default false
187
+ */
188
+ error?: boolean;
189
+ /**
190
+ * When `true`, fills the container width.
191
+ * When `false` or unset, stays at the minimum width.
192
+ *
193
+ * @default false
194
+ */
195
+ fill?: boolean;
183
196
  /**
184
197
  * Hides the month selector and month panel.
185
198
  *
@@ -16,6 +16,7 @@ export declare function useCalendar(props: MaybeRefOrGetter<CalendarOwnProps>, l
16
16
  merged: import('vue').ComputedRef<CalendarMerged>;
17
17
  shared: import('vue').ComputedRef<{
18
18
  color: NonNullable<keyof import('@bridge-ui/core/Tokens').CalendarColor | undefined>;
19
+ error: boolean | undefined;
19
20
  tokens: import('../calendar.types').CalendarTokens | undefined;
20
21
  rounded: NonNullable<keyof import('@bridge-ui/core/Tokens').CalendarRounded | undefined>;
21
22
  maxDate: Date | undefined;
@@ -26,7 +27,7 @@ export declare function useCalendar(props: MaybeRefOrGetter<CalendarOwnProps>, l
26
27
  }>;
27
28
  context: import('vue').ComputedRef<DateAdapterContext>;
28
29
  showNav: import('vue').ComputedRef<boolean>;
29
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarOwnProps, "color" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "view" | "disabled" | "multiple" | "range" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "previewDate" | "startOfWeek" | "timeZone" | "viewDate" | "defaultView" | "hideMonths" | "hideYears">>>>;
30
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarOwnProps, "error" | "color" | "fill" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "view" | "disabled" | "multiple" | "range" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "previewDate" | "startOfWeek" | "timeZone" | "viewDate" | "defaultView" | "hideMonths" | "hideYears">>>>;
30
31
  viewDate: import('vue').ComputedRef<Date>;
31
32
  viewYear: import('vue').ComputedRef<number>;
32
33
  bodyBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
@@ -7,7 +7,7 @@ import { isDateRangeValue as m, resolveDatePickerMode as ne } from "@bridge-ui/c
7
7
  import { calendarRoundedProps as h } from "@bridge-ui/core/Tokens";
8
8
  import { cn as g, mergeBridgeUILayeredClasses as _, splitComponentProps as v } from "@bridge-ui/core/Utils";
9
9
  //#region src/Components/Calendar/composables/useCalendar.ts
10
- var y = /* @__PURE__ */ "view.color.range.value.tokens.classes.maxDate.minDate.rounded.disabled.multiple.readOnly.timeZone.viewDate.hideYears.hideMonths.customProps.defaultView.previewDate.startOfWeek.defaultValue.disableDates.disableYears.hideWeekdays.disableMonths.hideOutsideDays".split(".");
10
+ var y = /* @__PURE__ */ "fill.view.color.error.range.value.tokens.classes.maxDate.minDate.rounded.disabled.multiple.readOnly.timeZone.viewDate.hideYears.hideMonths.customProps.defaultView.previewDate.startOfWeek.defaultValue.disableDates.disableYears.hideWeekdays.disableMonths.hideOutsideDays".split(".");
11
11
  function b(e, t, n) {
12
12
  return p(e) ? t.now(n) : m(e) ? e[0] : d(e) ? e[0] ?? t.now(n) : e;
13
13
  }
@@ -74,6 +74,7 @@ function x(d, m, x) {
74
74
  Z(C.value.setMonth(H.value, e, A.value)), Y("date");
75
75
  }, ue = a(() => ({
76
76
  color: D.value.color,
77
+ error: D.value.error,
77
78
  tokens: D.value.tokens,
78
79
  rounded: D.value.rounded,
79
80
  maxDate: D.value.maxDate,
@@ -82,7 +83,9 @@ function x(d, m, x) {
82
83
  readOnly: D.value.readOnly,
83
84
  timeZone: D.value.timeZone
84
85
  })), de = a(() => r(O.value?.root, re.value, g({
85
- "flex w-full min-w-72 flex-col overflow-hidden": !0,
86
+ "flex flex-col overflow-hidden": !0,
87
+ "w-full min-w-72": D.value.fill,
88
+ "w-72": !D.value.fill,
86
89
  [k.value.root ?? ""]: !0
87
90
  }))), fe = a(() => r(O.value?.header, {}, g({
88
91
  "flex items-center justify-between p-2.5": !0,
@@ -17,6 +17,7 @@ var h = {
17
17
  disableDates: {},
18
18
  disableMonths: {},
19
19
  disableYears: {},
20
+ error: { type: Boolean },
20
21
  hideOutsideDays: { type: Boolean },
21
22
  hideWeekdays: { type: Boolean },
22
23
  maxDate: {},
@@ -170,6 +170,12 @@ export interface CalendarDateOwnProps {
170
170
  * @default undefined
171
171
  */
172
172
  disableYears?: number[];
173
+ /**
174
+ * When `true`, applies the error color palette to tiles.
175
+ *
176
+ * @default false
177
+ */
178
+ error?: boolean;
173
179
  /**
174
180
  * Hides days that fall outside the displayed month.
175
181
  *
@@ -15,7 +15,7 @@ export declare function useCalendarDate(props: MaybeRefOrGetter<CalendarDateOwnP
15
15
  value: import('vue').ComputedRef<DatePickerModel>;
16
16
  merged: import('vue').ComputedRef<CalendarDateMerged>;
17
17
  context: import('vue').ComputedRef<DateAdapterContext>;
18
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarDateOwnProps, "color" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "disabled" | "multiple" | "range" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "previewDate" | "startOfWeek" | "timeZone" | "viewDate">>>>;
18
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarDateOwnProps, "error" | "color" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "disabled" | "multiple" | "range" | "defaultValue" | "readOnly" | "disableDates" | "disableMonths" | "disableYears" | "hideOutsideDays" | "hideWeekdays" | "maxDate" | "minDate" | "previewDate" | "startOfWeek" | "timeZone" | "viewDate">>>>;
19
19
  gridBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {
20
20
  role: string;
21
21
  onMouseleave: () => void;
@@ -1,13 +1,14 @@
1
1
  import { useDateAdapter as e, useDateAdapterContext as t } from "../../../Adapters/Date/useDateAdapter.js";
2
2
  import { mergePartBind as n, useBridgeUIComponent as r, useBridgeUIMergedRegistryClasses as i } from "../../../Utils/index.js";
3
3
  import { computed as a, getCurrentInstance as o, ref as s, toValue as c, useAttrs as l } from "vue";
4
- import { get as u, isFunction as d, isNil as f, omit as ee } from "es-toolkit/compat";
5
- import { applyDateSelection as p, isDateDisabled as m, isDateInRangePreview as te, isDateRangeValue as h, isDateSelected as g, resolveCalendarDayInteractionState as _, resolveDatePickerMode as v, resolveStartOfWeek as y } from "@bridge-ui/core/Domain";
6
- import { calendarColorProps as ne, calendarDayProps as re, calendarRoundedProps as b } from "@bridge-ui/core/Tokens";
7
- import { cn as x, mergeBridgeUILayeredClasses as S, splitComponentProps as C } from "@bridge-ui/core/Utils";
4
+ import { get as ee, isFunction as u, isNil as d, omit as f } from "es-toolkit/compat";
5
+ import { applyDateSelection as te, isDateDisabled as p, isDateInRangePreview as m, isDateRangeValue as h, isDateSelected as g, resolveCalendarDayInteractionState as _, resolveDatePickerMode as v, resolveStartOfWeek as y } from "@bridge-ui/core/Domain";
6
+ import { calendarColorProps as b, calendarDayProps as x, calendarRoundedProps as S } from "@bridge-ui/core/Tokens";
7
+ import { cn as C, getColorToken as w, mergeBridgeUILayeredClasses as T, splitComponentProps as E } from "@bridge-ui/core/Utils";
8
8
  //#region src/Components/CalendarDate/composables/useCalendarDate.ts
9
- var w = [
9
+ var D = [
10
10
  "color",
11
+ "error",
11
12
  "range",
12
13
  "value",
13
14
  "tokens",
@@ -30,124 +31,131 @@ var w = [
30
31
  "disableMonths",
31
32
  "hideOutsideDays"
32
33
  ];
33
- function T(T, E, D) {
34
- let O = l(), k = e(), A = t(), j = a(() => C({
35
- bridgeKeys: w,
34
+ function O(O, k, A) {
35
+ let ne = l(), j = e(), re = t(), M = a(() => E({
36
+ bridgeKeys: D,
36
37
  props: {
37
- ...O,
38
- ...c(T)
38
+ ...ne,
39
+ ...c(O)
39
40
  }
40
- })), { merged: M } = r({
41
- libDefaults: E,
42
- props: () => j.value.componentProps
43
- }), N = a(() => M.value.customProps), P = a(() => ee(j.value.inheritedAttrs, [
41
+ })), { merged: N } = r({
42
+ libDefaults: k,
43
+ props: () => M.value.componentProps
44
+ }), P = a(() => N.value.customProps), F = a(() => f(M.value.inheritedAttrs, [
44
45
  "onChange",
45
46
  "onViewDateChange",
46
47
  "onPreviewDateChange"
47
- ])), F = i({
48
- props: () => j.value.componentProps,
48
+ ])), I = i({
49
+ props: () => M.value.componentProps,
49
50
  entry: a(() => {})
50
- }), I = a(() => A(M.value.timeZone)), L = a(() => v({
51
- range: M.value.range,
52
- multiple: M.value.multiple
53
- })), R = a(() => c(T)), z = a(() => !f(R.value.value)), B = a(() => !f(R.value.previewDate)), V = a(() => {
54
- let e = o()?.vnode.props ?? {}, t = d(e.onViewDateChange) || d(e["onUpdate:viewDate"]);
55
- return !f(R.value.viewDate) && t;
56
- }), H = s(M.value.defaultValue ?? null), U = s(null), W = s(R.value.viewDate ?? M.value.viewDate ?? k.value.startOfMonth(k.value.now(I.value), I.value)), G = a(() => z.value ? R.value.value ?? null : H.value), K = a(() => B.value ? R.value.previewDate : U.value), q = a(() => V.value ? R.value.viewDate : W.value), J = a(() => y(M.value.startOfWeek)), Y = a(() => S(ne, M.value.tokens?.color)), X = a(() => S(re, M.value.tokens?.day)), ie = a(() => {
57
- let e = S(b, M.value.tokens?.rounded);
58
- return u(e, M.value.rounded);
59
- }), ae = a(() => u(Y.value, M.value.color)), oe = a(() => {
60
- let e = k.value.getWeekdayNames(I.value), t = J.value;
51
+ }), L = a(() => re(N.value.timeZone)), R = a(() => v({
52
+ range: N.value.range,
53
+ multiple: N.value.multiple
54
+ })), z = a(() => c(O)), B = a(() => !d(z.value.value)), V = a(() => !d(z.value.previewDate)), H = a(() => {
55
+ let e = o()?.vnode.props ?? {}, t = u(e.onViewDateChange) || u(e["onUpdate:viewDate"]);
56
+ return !d(z.value.viewDate) && t;
57
+ }), U = s(N.value.defaultValue ?? null), W = s(null), G = s(z.value.viewDate ?? N.value.viewDate ?? j.value.startOfMonth(j.value.now(L.value), L.value)), K = a(() => B.value ? z.value.value ?? null : U.value), q = a(() => V.value ? z.value.previewDate : W.value), J = a(() => H.value ? z.value.viewDate : G.value), Y = a(() => y(N.value.startOfWeek)), X = a(() => T(x, N.value.tokens?.day)), ie = a(() => {
58
+ let e = T(S, N.value.tokens?.rounded);
59
+ return ee(e, N.value.rounded);
60
+ }), ae = a(() => {
61
+ let e = T(b, N.value.tokens?.color);
62
+ return w({
63
+ tokens: e,
64
+ color: N.value.color,
65
+ invalid: N.value.error
66
+ });
67
+ }), oe = a(() => {
68
+ let e = j.value.getWeekdayNames(L.value), t = Y.value;
61
69
  return Array.from({ length: 7 }, (n, r) => e[(t + r) % 7] ?? "");
62
70
  }), se = a(() => {
63
- let e = k.value.getCalendarDays(q.value, J.value, I.value), t = k.value.now(I.value);
71
+ let e = j.value.getCalendarDays(J.value, Y.value, L.value), t = j.value.now(L.value);
64
72
  return e.map((e) => {
65
- let n = !!M.value.disabled || m(e, {
66
- adapter: k.value,
67
- context: I.value,
68
- maxDate: M.value.maxDate,
69
- minDate: M.value.minDate,
70
- disableDates: M.value.disableDates,
71
- disableYears: M.value.disableYears,
72
- disableMonths: M.value.disableMonths
73
+ let n = !!N.value.disabled || p(e, {
74
+ adapter: j.value,
75
+ context: L.value,
76
+ maxDate: N.value.maxDate,
77
+ minDate: N.value.minDate,
78
+ disableDates: N.value.disableDates,
79
+ disableYears: N.value.disableYears,
80
+ disableMonths: N.value.disableMonths
73
81
  }), r = g({
74
82
  date: e,
75
- mode: L.value,
76
- value: G.value,
77
- adapter: k.value,
78
- context: I.value
79
- }), i = L.value === "range" && te({
83
+ mode: R.value,
84
+ value: K.value,
85
+ adapter: j.value,
86
+ context: L.value
87
+ }), i = R.value === "range" && m({
80
88
  date: e,
81
- value: G.value,
82
- adapter: k.value,
83
- context: I.value,
84
- previewDate: K.value
89
+ value: K.value,
90
+ adapter: j.value,
91
+ context: L.value,
92
+ previewDate: q.value
85
93
  });
86
94
  return {
87
95
  date: e,
88
96
  state: _({
89
97
  disabled: n,
90
98
  selected: r,
91
- readOnly: M.value.readOnly
99
+ readOnly: N.value.readOnly
92
100
  }),
93
101
  preview: i,
94
102
  selected: r,
95
- disabled: n || !!M.value.readOnly,
96
- label: String(k.value.getDate(e, I.value)),
97
- today: k.value.isSameDay(e, t, I.value),
98
- outside: !k.value.isSameMonth(e, q.value, I.value)
103
+ disabled: n || !!N.value.readOnly,
104
+ label: String(j.value.getDate(e, L.value)),
105
+ today: j.value.isSameDay(e, t, L.value),
106
+ outside: !j.value.isSameMonth(e, J.value, L.value)
99
107
  };
100
108
  });
101
109
  }), Z = (e) => {
102
- if (M.value.disabled || M.value.readOnly || m(e, {
103
- adapter: k.value,
104
- context: I.value,
105
- maxDate: M.value.maxDate,
106
- minDate: M.value.minDate,
107
- disableDates: M.value.disableDates,
108
- disableYears: M.value.disableYears,
109
- disableMonths: M.value.disableMonths
110
+ if (N.value.disabled || N.value.readOnly || p(e, {
111
+ adapter: j.value,
112
+ context: L.value,
113
+ maxDate: N.value.maxDate,
114
+ minDate: N.value.minDate,
115
+ disableDates: N.value.disableDates,
116
+ disableYears: N.value.disableYears,
117
+ disableMonths: N.value.disableMonths
110
118
  })) return;
111
- let t = p({
119
+ let t = te({
112
120
  next: e,
113
- mode: L.value,
114
- value: G.value,
115
- adapter: k.value,
116
- context: I.value
121
+ mode: R.value,
122
+ value: K.value,
123
+ adapter: j.value,
124
+ context: L.value
117
125
  });
118
- z.value || (H.value = t), D("change", t), L.value === "range" && Q(null);
126
+ B.value || (U.value = t), A("change", t), R.value === "range" && Q(null);
119
127
  }, Q = (e) => {
120
- B.value || (U.value = e), D("previewDateChange", e);
128
+ V.value || (W.value = e), A("previewDateChange", e);
121
129
  }, $ = a(() => {
122
- if (L.value !== "range" || !h(G.value)) return !1;
123
- let [e, t] = G.value;
124
- return k.value.isSameDay(e, t, I.value);
130
+ if (R.value !== "range" || !h(K.value)) return !1;
131
+ let [e, t] = K.value;
132
+ return j.value.isSameDay(e, t, L.value);
125
133
  });
126
134
  return {
127
135
  days: se,
128
- mode: L,
129
- value: G,
130
- merged: M,
131
- context: I,
132
- rootBind: a(() => n(N.value?.root, P.value, x({
136
+ mode: R,
137
+ value: K,
138
+ merged: N,
139
+ context: L,
140
+ rootBind: a(() => n(P.value?.root, F.value, C({
133
141
  "flex flex-col": !0,
134
- [F.value.root ?? ""]: !0
142
+ [I.value.root ?? ""]: !0
135
143
  }))),
136
- gridBind: a(() => n(N.value?.grid, {
144
+ gridBind: a(() => n(P.value?.grid, {
137
145
  role: "grid",
138
146
  onMouseleave: () => {
139
147
  $.value && Q(null);
140
148
  }
141
- }, x({
149
+ }, C({
142
150
  "grid grid-cols-7 gap-1": !0,
143
- [F.value.grid ?? ""]: !0
151
+ [I.value.grid ?? ""]: !0
144
152
  }))),
145
153
  weekdays: oe,
146
- viewDate: q,
154
+ viewDate: J,
147
155
  selectDay: Z,
148
156
  getDayBind: (e) => {
149
157
  let t = ae.value;
150
- return n(N.value?.day, {
158
+ return n(P.value?.day, {
151
159
  type: "button",
152
160
  disabled: e.disabled,
153
161
  "aria-pressed": e.selected,
@@ -157,7 +165,7 @@ function T(T, E, D) {
157
165
  onMouseenter: () => {
158
166
  $.value && !e.disabled && Q(e.date);
159
167
  }
160
- }, x({
168
+ }, C({
161
169
  "relative flex h-8 w-full cursor-pointer items-center justify-center text-sm focus:outline-none disabled:cursor-not-allowed disabled:opacity-50": !0,
162
170
  [ie.value ?? ""]: !0,
163
171
  [t?.base ?? ""]: e.state === "base",
@@ -166,17 +174,17 @@ function T(T, E, D) {
166
174
  [t?.disabled ?? ""]: e.state === "disabled",
167
175
  [X.value.outside ?? ""]: e.outside && e.state !== "selected",
168
176
  [X.value.today ?? ""]: e.today && e.state !== "selected" && e.state !== "disabled",
169
- [F.value.day ?? ""]: !0
177
+ [I.value.day ?? ""]: !0
170
178
  }));
171
179
  },
172
- previewDate: K,
173
- hideWeekdays: a(() => !!M.value.hideWeekdays),
174
- getWeekdayBind: (e) => n(N.value?.weekday, {}, x({
180
+ previewDate: q,
181
+ hideWeekdays: a(() => !!N.value.hideWeekdays),
182
+ getWeekdayBind: (e) => n(P.value?.weekday, {}, C({
175
183
  [X.value.weekday ?? ""]: !0,
176
- [F.value.weekday ?? ""]: !0
184
+ [I.value.weekday ?? ""]: !0
177
185
  })),
178
- hideOutsideDays: a(() => !!M.value.hideOutsideDays)
186
+ hideOutsideDays: a(() => !!N.value.hideOutsideDays)
179
187
  };
180
188
  }
181
189
  //#endregion
182
- export { T as useCalendarDate };
190
+ export { O as useCalendarDate };
@@ -10,6 +10,7 @@ var f = /*@__PURE__*/ i({
10
10
  customProps: {},
11
11
  disabled: { type: Boolean },
12
12
  disableMonths: {},
13
+ error: { type: Boolean },
13
14
  maxDate: {},
14
15
  minDate: {},
15
16
  readOnly: { type: Boolean },
@@ -84,6 +84,12 @@ export interface CalendarMonthOwnProps {
84
84
  * @default undefined
85
85
  */
86
86
  disableMonths?: number[];
87
+ /**
88
+ * When `true`, applies the error color palette to tiles.
89
+ *
90
+ * @default false
91
+ */
92
+ error?: boolean;
87
93
  /**
88
94
  * Latest selectable date (bounds month availability for `year`).
89
95
  *
@@ -15,7 +15,7 @@ export declare function useCalendarMonth(props: MaybeRefOrGetter<CalendarMonthOw
15
15
  year: import('vue').ComputedRef<number>;
16
16
  merged: import('vue').ComputedRef<CalendarMonthMerged>;
17
17
  months: import('vue').ComputedRef<CalendarMonthCell[]>;
18
- rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarMonthOwnProps, "color" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "disabled" | "readOnly" | "disableMonths" | "maxDate" | "minDate" | "timeZone" | "year">>>>;
18
+ rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<CalendarMonthOwnProps, "error" | "color" | "value" | "classes" | "tokens" | "customProps" | "rounded" | "disabled" | "readOnly" | "disableMonths" | "maxDate" | "minDate" | "timeZone" | "year">>>>;
19
19
  gridBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {
20
20
  role: string;
21
21
  }>>;