asheeui 0.6.8 → 0.6.9

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 (107) hide show
  1. package/dist/components/autocomplete/Autocomplete.d.ts +34 -17
  2. package/dist/components/autocomplete/Autocomplete.d.ts.map +1 -1
  3. package/dist/components/autocomplete/Autocomplete.js +86 -102
  4. package/dist/components/autocomplete/autocomplete-config.d.ts +2 -20
  5. package/dist/components/autocomplete/autocomplete-config.d.ts.map +1 -1
  6. package/dist/components/autocomplete/autocomplete-config.js +9 -13
  7. package/dist/components/button/Button.d.ts +31 -5
  8. package/dist/components/button/Button.d.ts.map +1 -1
  9. package/dist/components/button/Button.js +68 -64
  10. package/dist/components/card/Card.d.ts +58 -54
  11. package/dist/components/card/Card.d.ts.map +1 -1
  12. package/dist/components/card/Card.js +152 -158
  13. package/dist/components/card/card-config.d.ts +66 -33
  14. package/dist/components/card/card-config.d.ts.map +1 -1
  15. package/dist/components/card/card-config.js +9 -9
  16. package/dist/components/date-picker/Calendar.d.ts +57 -0
  17. package/dist/components/date-picker/Calendar.d.ts.map +1 -0
  18. package/dist/components/date-picker/Calendar.js +224 -0
  19. package/dist/components/date-picker/DatePicker.d.ts +68 -155
  20. package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
  21. package/dist/components/date-picker/DatePicker.js +194 -466
  22. package/dist/components/date-picker/TimeSpinner.d.ts +46 -0
  23. package/dist/components/date-picker/TimeSpinner.d.ts.map +1 -0
  24. package/dist/components/date-picker/TimeSpinner.js +84 -0
  25. package/dist/components/date-picker/date-picker-config.d.ts +21 -1
  26. package/dist/components/date-picker/date-picker-config.d.ts.map +1 -1
  27. package/dist/components/date-picker/date-picker-config.js +10 -14
  28. package/dist/components/date-picker/date-picker-styles.d.ts.map +1 -1
  29. package/dist/components/date-picker/date-picker-styles.js +4 -11
  30. package/dist/components/date-picker/date-picker.helpers.d.ts +111 -0
  31. package/dist/components/date-picker/date-picker.helpers.d.ts.map +1 -0
  32. package/dist/components/date-picker/date-picker.helpers.js +110 -0
  33. package/dist/components/date-picker/index.js +3 -0
  34. package/dist/components/input/Input.d.ts +13 -7
  35. package/dist/components/input/Input.d.ts.map +1 -1
  36. package/dist/components/input/Input.js +96 -91
  37. package/dist/components/keyboard/KeyboardContext.d.ts +130 -0
  38. package/dist/components/keyboard/KeyboardContext.d.ts.map +1 -0
  39. package/dist/components/keyboard/KeyboardContext.js +13 -0
  40. package/dist/components/keyboard/KeyboardProvider.d.ts +78 -0
  41. package/dist/components/keyboard/KeyboardProvider.d.ts.map +1 -0
  42. package/dist/components/keyboard/KeyboardProvider.js +183 -0
  43. package/dist/components/keyboard/OnScreenKeyboard.d.ts +65 -43
  44. package/dist/components/keyboard/OnScreenKeyboard.d.ts.map +1 -1
  45. package/dist/components/keyboard/OnScreenKeyboard.js +119 -113
  46. package/dist/components/keyboard/index.d.ts +2 -1
  47. package/dist/components/keyboard/index.d.ts.map +1 -1
  48. package/dist/components/keyboard/index.js +2 -1
  49. package/dist/components/keyboard/keyboard-config.d.ts +40 -36
  50. package/dist/components/keyboard/keyboard-config.d.ts.map +1 -1
  51. package/dist/components/keyboard/keyboard-config.js +15 -10
  52. package/dist/components/keyboard/use-keyboard-field.d.ts +6 -4
  53. package/dist/components/keyboard/use-keyboard-field.d.ts.map +1 -1
  54. package/dist/components/keyboard/use-keyboard-field.js +12 -12
  55. package/dist/components/multi-select/MultiSelect.d.ts +75 -40
  56. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  57. package/dist/components/multi-select/MultiSelect.js +188 -188
  58. package/dist/components/multi-select/multi-select-config.d.ts +2 -20
  59. package/dist/components/multi-select/multi-select-config.d.ts.map +1 -1
  60. package/dist/components/multi-select/multi-select-config.js +10 -14
  61. package/dist/components/select/Select.d.ts +60 -45
  62. package/dist/components/select/Select.d.ts.map +1 -1
  63. package/dist/components/select/Select.js +147 -159
  64. package/dist/components/select/select-config.d.ts +3 -29
  65. package/dist/components/select/select-config.d.ts.map +1 -1
  66. package/dist/components/select/select-config.js +6 -14
  67. package/dist/components/select/select-styles.js +1 -6
  68. package/dist/components/select-menu/SelectMenu.d.ts +45 -30
  69. package/dist/components/select-menu/SelectMenu.d.ts.map +1 -1
  70. package/dist/components/select-menu/SelectMenu.js +125 -124
  71. package/dist/components/select-menu/select-menu-config.d.ts +25 -2
  72. package/dist/components/select-menu/select-menu-config.d.ts.map +1 -1
  73. package/dist/components/select-menu/select-menu-config.js +4 -3
  74. package/dist/components/switch/Switch.d.ts +9 -33
  75. package/dist/components/switch/Switch.d.ts.map +1 -1
  76. package/dist/components/switch/Switch.js +68 -74
  77. package/dist/components/switch/switch-styles.d.ts +1 -6
  78. package/dist/components/switch/switch-styles.d.ts.map +1 -1
  79. package/dist/components/switch/switch-styles.js +6 -12
  80. package/dist/components/textarea/Textarea.d.ts +19 -1
  81. package/dist/components/textarea/Textarea.d.ts.map +1 -1
  82. package/dist/components/textarea/Textarea.js +95 -90
  83. package/dist/components/toast/ToastContext.d.ts +122 -0
  84. package/dist/components/toast/ToastContext.d.ts.map +1 -0
  85. package/dist/components/toast/ToastContext.js +28 -0
  86. package/dist/components/toast/ToastProvider.d.ts +98 -0
  87. package/dist/components/toast/ToastProvider.d.ts.map +1 -0
  88. package/dist/components/toast/ToastProvider.js +188 -0
  89. package/dist/components/toast/index.d.ts +2 -1
  90. package/dist/components/toast/index.d.ts.map +1 -1
  91. package/dist/components/toast/index.js +2 -1
  92. package/dist/components/toast/toast-config.d.ts +36 -0
  93. package/dist/components/toast/toast-config.d.ts.map +1 -1
  94. package/dist/icons/ChevronUpIcon.d.ts +3 -0
  95. package/dist/icons/ChevronUpIcon.d.ts.map +1 -0
  96. package/dist/icons/ChevronUpIcon.js +21 -0
  97. package/dist/icons/index.d.ts +2 -0
  98. package/dist/icons/index.d.ts.map +1 -1
  99. package/dist/index.js +62 -59
  100. package/dist/theme/color.js +2 -2
  101. package/package.json +1 -1
  102. package/dist/components/keyboard/keyboard-context.d.ts +0 -118
  103. package/dist/components/keyboard/keyboard-context.d.ts.map +0 -1
  104. package/dist/components/keyboard/keyboard-context.js +0 -90
  105. package/dist/components/toast/toast-context.d.ts +0 -163
  106. package/dist/components/toast/toast-context.d.ts.map +0 -1
  107. package/dist/components/toast/toast-context.js +0 -177
@@ -1,250 +1,250 @@
1
1
  "use client";
2
- import { jsx as l, jsxs as S } from "react/jsx-runtime";
3
- import { useClick as Ue, useDismiss as Ve, useRole as je, useInteractions as Be } from "@floating-ui/react";
4
- import { forwardRef as Ge, useId as He, useState as P, useMemo as R, useCallback as L } from "react";
5
- import { ChevronDownIcon as Qe } from "../../icons/ChevronDownIcon.js";
6
- import { CloseIcon as $e } from "../../icons/CloseIcon.js";
7
- import { useAsheeConfig as qe } from "../../libs/context.js";
8
- import { resolveCascade as c, resolveRadiusKey as U, resolveClassKey as g } from "../../utils/resolve-token.js";
9
- import { Button as Je } from "../button/Button.js";
2
+ import { jsx as l, jsxs as S, Fragment as Pe } from "react/jsx-runtime";
3
+ import { useClick as Re, useDismiss as Ue, useRole as je, useInteractions as Ve } from "@floating-ui/react";
4
+ import { forwardRef as $e, useId as Be, useState as B, useMemo as A, useCallback as z } from "react";
5
+ import { ChevronDownIcon as Ge } from "../../icons/ChevronDownIcon.js";
6
+ import { CloseIcon as He } from "../../icons/CloseIcon.js";
7
+ import { useAsheeConfig as Qe } from "../../libs/context.js";
8
+ import { resolveCascade as m, resolveRadiusKey as G, resolveClassKey as N } from "../../utils/resolve-token.js";
9
+ import { Button as he } from "../button/Button.js";
10
10
  import { Chip as We } from "../chip/Chip.js";
11
- import { FieldShell as Xe } from "../field/FieldShell.js";
12
- import { SelectMenu as Ye } from "../select-menu/SelectMenu.js";
11
+ import { FieldShell as qe } from "../field/FieldShell.js";
12
+ import { SelectMenu as Je } from "../select-menu/SelectMenu.js";
13
13
  import { FALLBACK_MULTI_SELECT_CONFIG as s } from "./multi-select-config.js";
14
- import { MULTI_SELECT_HEIGHT_CLASS as Ze, MULTI_SELECT_PADDING_CLASS as he, MULTI_SELECT_FONT_CLASS as Ce, STATUS_BORDER_CLASS as er } from "./multi-select-styles.js";
15
- import { RADIUS_CLASS as rr } from "../../shared/radius.js";
16
- import { useSelectFloating as sr } from "../select-menu/use-select-floating.js";
17
- import { cn as T } from "../../utils/cn.js";
18
- const tr = Ge(
14
+ import { MULTI_SELECT_HEIGHT_CLASS as Xe, MULTI_SELECT_PADDING_CLASS as Ye, MULTI_SELECT_FONT_CLASS as Ze, STATUS_BORDER_CLASS as Ce } from "./multi-select-styles.js";
15
+ import { RADIUS_CLASS as er } from "../../shared/radius.js";
16
+ import { useSelectFloating as rr } from "../select-menu/use-select-floating.js";
17
+ import { cn as v } from "../../utils/cn.js";
18
+ const sr = $e(
19
19
  ({
20
- options: I = [],
21
- value: o,
22
- onChange: m,
23
- InputLabel: V = "Select Options...",
24
- isSearch: j = !0,
25
- searchPlaceholder: B = "Search...",
26
- searchInputName: G = "multiselect-search",
27
- belowList: H,
28
- chipOptions: N,
29
- handleRemoveChip: n,
20
+ options: _ = [],
21
+ value: n,
22
+ onChange: u,
23
+ InputLabel: T = "Select Options...",
24
+ isSearch: H = !0,
25
+ searchPlaceholder: Q = "Search...",
26
+ searchInputName: h = "multiselect-search",
27
+ belowList: W,
28
+ chipOptions: L,
29
+ handleRemoveChip: i,
30
30
  handleAddChip: f,
31
- chipLabel: _,
32
- disableChipDisplay: Q = !1,
33
- variant: $,
34
- color: q,
35
- size: J,
36
- radius: W,
37
- status: X,
38
- label: Y,
39
- labelAlign: Z,
40
- description: h,
41
- message: C,
42
- required: ee,
43
- isLoading: re,
44
- disabled: u,
45
- containerClassName: se,
46
- dropdownClassName: te,
31
+ chipLabel: E,
32
+ disableChipDisplay: q = !1,
33
+ variant: J,
34
+ color: X,
35
+ size: Y,
36
+ radius: Z,
37
+ status: C,
38
+ label: ee,
39
+ labelAlign: re,
40
+ description: w,
41
+ message: k,
42
+ required: se,
43
+ isLoading: M,
44
+ disabled: c,
45
+ containerClassName: te,
47
46
  id: le,
48
- className: ae,
49
- menu: oe,
47
+ className: oe,
48
+ menu: ae,
50
49
  chip: a,
51
- portal: ne,
52
- portalTarget: ie,
53
- style: ce,
54
- ...ue
55
- }, p) => {
56
- var M, D, K, F;
57
- const v = qe(), e = (M = v.components) == null ? void 0 : M.multiSelect, me = He(), de = le ?? me, [x, fe] = P(!1), [Se, pe] = P(""), y = c(
58
- J,
50
+ style: ne,
51
+ startContent: ie,
52
+ endContent: ce
53
+ }, x) => {
54
+ var R, U, j, V;
55
+ const p = Qe(), e = (R = p.components) == null ? void 0 : R.multiSelect, ue = Be(), y = le ?? ue, [b, de] = B(!1), [me, fe] = B(""), g = m(
56
+ Y,
59
57
  e == null ? void 0 : e.size,
60
58
  void 0,
61
59
  s.size
62
- ), ve = c(
63
- $,
60
+ ), Se = m(
61
+ J,
64
62
  e == null ? void 0 : e.variant,
65
- v.defaultVariant,
63
+ p.defaultVariant,
66
64
  s.variant
67
- ), w = c(
68
- q,
65
+ ), D = m(
66
+ X,
69
67
  e == null ? void 0 : e.color,
70
- v.defaultColor,
68
+ p.defaultColor,
71
69
  s.color
72
- ), A = U(
73
- W,
70
+ ), F = G(
71
+ Z,
74
72
  e == null ? void 0 : e.radius,
75
- v.defaultRadius,
73
+ p.defaultRadius,
76
74
  s.radius
77
- ), xe = c(
75
+ ), ve = m(
78
76
  a == null ? void 0 : a.color,
79
- (D = e == null ? void 0 : e.chip) == null ? void 0 : D.color,
80
- w,
77
+ (U = e == null ? void 0 : e.chip) == null ? void 0 : U.color,
78
+ D,
81
79
  s.chip.color
82
- ), ye = c(
80
+ ), xe = m(
83
81
  a == null ? void 0 : a.size,
84
- (K = e == null ? void 0 : e.chip) == null ? void 0 : K.size,
82
+ (j = e == null ? void 0 : e.chip) == null ? void 0 : j.size,
85
83
  void 0,
86
84
  s.chip.size
87
- ), be = U(
85
+ ), pe = G(
88
86
  a == null ? void 0 : a.radius,
89
- (F = e == null ? void 0 : e.chip) == null ? void 0 : F.radius,
90
- A,
87
+ (V = e == null ? void 0 : e.chip) == null ? void 0 : V.radius,
88
+ F,
91
89
  s.chip.radius
92
- ), d = X ?? "default", ge = d === "error" ? "danger" : d === "success" ? "success" : d === "warning" ? "warning" : w, Te = c(
93
- Z,
90
+ ), d = C ?? s.status, ye = d === "error" ? "danger" : d === "success" ? "success" : d === "warning" ? "warning" : D, be = m(
91
+ re,
94
92
  e == null ? void 0 : e.labelAlign,
95
93
  void 0,
96
94
  s.labelAlign
97
- ), Ie = c(
98
- ne,
99
- e == null ? void 0 : e.portal,
100
- void 0,
101
- s.portal
102
- ), Ne = c(
103
- ie,
104
- e == null ? void 0 : e.portalTarget,
105
- void 0,
106
- s.portalTarget
107
- ), Le = g(
108
- y,
109
- Ze,
95
+ ), ge = N(
96
+ g,
97
+ Xe,
110
98
  s.size
111
- ), _e = g(
112
- y,
113
- he,
99
+ ), Ie = N(
100
+ g,
101
+ Ye,
114
102
  s.size
115
- ), we = g(
116
- y,
117
- Ce,
103
+ ), Ne = N(
104
+ g,
105
+ Ze,
118
106
  s.size
119
- ), Ae = g(
120
- be,
121
- rr,
107
+ ), _e = N(
108
+ pe,
109
+ er,
122
110
  s.chip.radius
123
- ), { refs: z, floatingStyles: ze, context: b } = sr({
124
- isOpen: x,
125
- onOpenChange: fe,
126
- disabled: u
127
- }), Ee = Ue(b, { enabled: !u }), ke = Ve(b), Me = je(b, { role: "listbox" }), { getReferenceProps: De, getFloatingProps: Ke } = Be([
128
- Ee,
129
- ke,
130
- Me
131
- ]), i = R(() => N !== void 0 ? N : Array.isArray(o) ? I.filter((r) => o.includes(r.value)) : [], [N, o, I]), E = L(
132
- (r) => i.some((t) => t.value === r),
133
- [i]
134
- ), Fe = L(
111
+ ), { refs: K, floatingStyles: Le, context: I } = rr({
112
+ isOpen: b,
113
+ onOpenChange: de,
114
+ disabled: c
115
+ }), we = Re(I, { enabled: !c }), Ae = Ue(I), ze = je(I, { role: "listbox" }), { getReferenceProps: Te, getFloatingProps: Ee } = Ve([
116
+ we,
117
+ Ae,
118
+ ze
119
+ ]), o = A(() => L !== void 0 ? L : Array.isArray(n) ? _.filter((r) => n.includes(r.value)) : [], [L, n, _]), O = z(
120
+ (r) => o.some((t) => t.value === r),
121
+ [o]
122
+ ), ke = z(
135
123
  (r) => {
136
- const t = E(r.value);
137
- if (f || n)
138
- t ? n == null || n(r.value) : f == null || f(r);
139
- else if (m) {
140
- const O = o ?? [], Pe = t ? O.filter((Re) => Re !== r.value) : [...O, r.value];
141
- m(Pe);
124
+ const t = O(r.value);
125
+ if (f || i)
126
+ t ? i == null || i(r.value) : f == null || f(r);
127
+ else if (u) {
128
+ const $ = n ?? [], Ke = t ? $.filter((Oe) => Oe !== r.value) : [...$, r.value];
129
+ u(Ke);
142
130
  }
143
131
  },
144
- [E, f, n, m, o]
145
- ), k = L(
132
+ [O, f, i, u, n]
133
+ ), P = z(
146
134
  (r) => {
147
- n ? n(r) : m && Array.isArray(o) && m(o.filter((t) => t !== r));
135
+ i ? i(r) : u && Array.isArray(n) && u(n.filter((t) => t !== r));
148
136
  },
149
- [n, m, o]
150
- ), Oe = R(
151
- () => i.map((r) => r.value),
152
- [i]
153
- );
137
+ [i, u, n]
138
+ ), Me = A(
139
+ () => o.map((r) => r.value),
140
+ [o]
141
+ ), De = A(() => o.length > 0 ? `${o.length} selected` : T, [o.length, T]), Fe = Te();
154
142
  return /* @__PURE__ */ l(
155
- Xe,
143
+ qe,
156
144
  {
157
- id: de,
158
- label: Y,
159
- labelAlign: Te,
160
- description: h,
161
- message: C,
145
+ id: y,
146
+ label: ee,
147
+ labelAlign: be,
148
+ description: w,
149
+ descriptionId: w ? `${y}-description` : void 0,
150
+ message: k,
151
+ messageId: k ? `${y}-message` : void 0,
162
152
  status: d,
163
- required: ee,
164
- isLoading: re,
153
+ required: se,
154
+ isLoading: M,
165
155
  children: /* @__PURE__ */ S(
166
156
  "div",
167
157
  {
168
- className: T("w-full flex flex-col gap-3", se),
169
- style: ce,
170
- ...ue,
158
+ className: v("w-full flex flex-col gap-3", te),
159
+ style: ne,
171
160
  children: [
172
161
  /* @__PURE__ */ S("div", { className: "relative w-full", children: [
173
- /* @__PURE__ */ S(
174
- Je,
162
+ /* @__PURE__ */ l(
163
+ he,
175
164
  {
176
165
  ref: (r) => {
177
- z.setReference(r), typeof p == "function" ? p(r) : p && (p.current = r);
166
+ K.setReference(r), typeof x == "function" ? x(r) : x && (x.current = r);
178
167
  },
179
- variant: ve,
180
- color: ge,
181
- radius: A,
182
- animate: !1,
183
- size: y,
184
- isDisabled: u,
185
- "aria-expanded": x,
168
+ type: "button",
169
+ variant: Se,
170
+ color: ye,
171
+ size: g,
172
+ radius: F,
173
+ isDisabled: c,
174
+ isLoading: M,
175
+ fullWidth: !0,
176
+ "aria-expanded": b,
186
177
  "aria-haspopup": "listbox",
187
178
  "aria-invalid": d === "error",
188
- className: T(
189
- "w-full flex items-center justify-between font-normal text-left transition-all duration-200 outline-none select-none",
190
- er[d],
191
- Le,
192
- _e,
193
- we,
194
- ae
179
+ "aria-describedby": [w ? `${y}-description` : void 0].filter(Boolean).join(" ") || void 0,
180
+ className: v(
181
+ "font-normal text-left justify-between",
182
+ Ce[d],
183
+ ge,
184
+ Ie,
185
+ Ne,
186
+ oe
195
187
  ),
196
- ...De(),
197
- children: [
198
- /* @__PURE__ */ l("span", { children: i.length > 0 ? `${i.length} selected` : V }),
188
+ startContent: ie,
189
+ endContent: /* @__PURE__ */ S(Pe, { children: [
190
+ ce,
199
191
  /* @__PURE__ */ l(
200
- Qe,
192
+ Ge,
201
193
  {
202
- className: T(
203
- "ml-2 shrink-0 transition-transform duration-200",
204
- x && "rotate-180"
194
+ className: v(
195
+ "shrink-0 text-foreground/70 transition-transform duration-200",
196
+ b && "rotate-180"
205
197
  )
206
198
  }
207
199
  )
208
- ]
200
+ ] }),
201
+ ...Fe,
202
+ children: /* @__PURE__ */ l(
203
+ "span",
204
+ {
205
+ className: v(
206
+ "truncate",
207
+ o.length > 0 ? "text-foreground" : "text-foreground/70"
208
+ ),
209
+ children: De
210
+ }
211
+ )
209
212
  }
210
213
  ),
211
214
  /* @__PURE__ */ l(
212
- Ye,
215
+ Je,
213
216
  {
214
- isOpen: x,
215
- context: b,
216
- floatingStyles: ze,
217
- getFloatingProps: Ke,
218
- setFloatingRef: z.setFloating,
219
- options: I,
220
- selectedValues: Oe,
221
- onSelectMenuOption: Fe,
222
- isSearch: j,
223
- searchPlaceholder: B,
224
- searchInputName: G,
225
- searchQuery: Se,
226
- onSearchChange: pe,
227
- belowList: H,
228
- dropdownClassName: te,
229
- menuProps: oe,
230
- menuConfig: e == null ? void 0 : e.menu,
231
- portal: Ie,
232
- portalTarget: Ne
217
+ isOpen: b,
218
+ context: I,
219
+ floatingStyles: Le,
220
+ getFloatingProps: Ee,
221
+ setFloatingRef: K.setFloating,
222
+ options: _,
223
+ selectedValues: Me,
224
+ onSelectMenuOption: ke,
225
+ isSearch: H,
226
+ searchPlaceholder: Q,
227
+ searchInputName: h,
228
+ searchQuery: me,
229
+ onSearchChange: fe,
230
+ belowList: W,
231
+ menuProps: ae,
232
+ menuConfig: e == null ? void 0 : e.menu
233
233
  }
234
234
  )
235
235
  ] }),
236
- !Q && /* @__PURE__ */ S("div", { className: "flex flex-col gap-1.5", children: [
237
- _ && /* @__PURE__ */ l("span", { className: "text-xs font-medium text-foreground/70", children: _ }),
238
- /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-1.5 p-2 min-h-12 bg-secondary/20 border border-dashed border-border rounded-lg items-center", children: i.length === 0 ? /* @__PURE__ */ l("span", { className: "text-xs text-foreground/70 px-2 py-1", children: "No selections made" }) : i.map((r) => /* @__PURE__ */ S(
236
+ !q && /* @__PURE__ */ S("div", { className: "flex flex-col gap-1.5", children: [
237
+ E && /* @__PURE__ */ l("span", { className: "text-xs font-medium text-foreground/70", children: E }),
238
+ /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-1.5 p-2 min-h-12 bg-secondary/20 border border-dashed border-border rounded-lg items-center", children: o.length === 0 ? /* @__PURE__ */ l("span", { className: "text-xs text-foreground/70 px-2 py-1", children: "No selections made" }) : o.map((r) => /* @__PURE__ */ S(
239
239
  We,
240
240
  {
241
241
  variant: "bordered",
242
- color: xe,
243
- size: ye,
244
- isDisabled: u,
245
- className: T(
242
+ color: ve,
243
+ size: xe,
244
+ isDisabled: c,
245
+ className: v(
246
246
  "inline-flex items-center gap-1.5 font-medium shadow-xs",
247
- Ae
247
+ _e
248
248
  ),
249
249
  children: [
250
250
  /* @__PURE__ */ l("span", { children: r.label }),
@@ -252,16 +252,16 @@ const tr = Ge(
252
252
  "button",
253
253
  {
254
254
  type: "button",
255
- tabIndex: u ? -1 : 0,
255
+ tabIndex: c ? -1 : 0,
256
256
  onClick: (t) => {
257
- t.stopPropagation(), u || k(r.value);
257
+ t.stopPropagation(), c || P(r.value);
258
258
  },
259
259
  onKeyDown: (t) => {
260
- (t.key === "Enter" || t.key === " ") && !u && (t.stopPropagation(), k(r.value));
260
+ (t.key === "Enter" || t.key === " ") && !c && (t.stopPropagation(), P(r.value));
261
261
  },
262
262
  "aria-label": `Remove ${r.label}`,
263
263
  className: "inline-flex items-center justify-center h-3.5 w-3.5 rounded-full hover:bg-black/20 dark:hover:bg-white/20 transition-colors cursor-pointer shrink-0",
264
- children: /* @__PURE__ */ l($e, { className: "w-3 h-3" })
264
+ children: /* @__PURE__ */ l(He, { className: "w-3 h-3" })
265
265
  }
266
266
  )
267
267
  ]
@@ -276,7 +276,7 @@ const tr = Ge(
276
276
  );
277
277
  }
278
278
  );
279
- tr.displayName = "MultiSelect";
279
+ sr.displayName = "MultiSelect";
280
280
  export {
281
- tr as MultiSelect
281
+ sr as MultiSelect
282
282
  };
@@ -1,6 +1,6 @@
1
1
  import { Color, Radius, Size, Variant } from '../../shared';
2
2
  import { FieldConfig } from '../field/field-config';
3
- import { SelectMenuConfig } from '../select-menu';
3
+ import { MenuConfig } from '../select-menu';
4
4
  /**
5
5
  * Theme configuration options for the MultiSelect component.
6
6
  *
@@ -12,7 +12,7 @@ export interface MultiSelectConfig extends FieldConfig {
12
12
  * Configuration for the dropdown menu.
13
13
  * Controls the menu's visual appearance and behavior.
14
14
  */
15
- menu?: SelectMenuConfig;
15
+ menu?: MenuConfig;
16
16
  /**
17
17
  * Configuration for selected value chips.
18
18
  * Controls the appearance of chips in the selected values section.
@@ -35,22 +35,6 @@ export interface MultiSelectConfig extends FieldConfig {
35
35
  */
36
36
  size?: Size;
37
37
  };
38
- /**
39
- * Whether to render the dropdown menu in a React portal.
40
- * When true, the menu is rendered at the document body level,
41
- * escaping any parent DOM hierarchy. This prevents CSS containment
42
- * and stacking context issues. Defaults to true because dropdowns
43
- * should always appear above other content.
44
- *
45
- * @default true
46
- */
47
- portal?: boolean;
48
- /**
49
- * Custom portal target element for the dropdown menu.
50
- * When portal is enabled, the menu is rendered into this element.
51
- * Defaults to document.body.
52
- */
53
- portalTarget?: HTMLElement | null;
54
38
  }
55
39
  /**
56
40
  * Default config values registered for the MultiSelect component.
@@ -69,8 +53,6 @@ export declare const FALLBACK_MULTI_SELECT_CONFIG: {
69
53
  readonly radius: "sm";
70
54
  readonly variant: "solid";
71
55
  };
72
- readonly portal: true;
73
- readonly portalTarget: null;
74
56
  readonly size: import('../field').FieldSizeKey;
75
57
  readonly radius: Radius;
76
58
  readonly variant: Variant;
@@ -1 +1 @@
1
- {"version":3,"file":"multi-select-config.d.ts","sourceRoot":"","sources":["../../../src/components/multi-select/multi-select-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD;;;OAGG;IACH,IAAI,CAAC,EAAE,gBAAgB,CAAC;IAExB;;;OAGG;IACH,IAAI,CAAC,EAAE;QACL;;WAEG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB;;WAEG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC;QAEd;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC;IAEF;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACnC;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,iBAOtC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;CAU/B,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,WAAW,EAAE,iBAAiB,CAAC;KAChC;CACF"}
1
+ {"version":3,"file":"multi-select-config.d.ts","sourceRoot":"","sources":["../../../src/components/multi-select/multi-select-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE;QACL;;WAEG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB;;WAEG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC;QAEd;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC;CACH;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,iBAKtC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;CAQ/B,CAAC;AAEX,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,WAAW,EAAE,iBAAiB,CAAC;KAChC;CACF"}
@@ -1,26 +1,22 @@
1
1
  "use client";
2
- import { registerComponentDefaults as t } from "../../libs/registry.js";
3
- import { FALLBACK_FIELD_CONFIG as e, defaultFieldConfig as r } from "../field/field-config.js";
4
- const l = {
5
- ...r,
2
+ import { registerComponentDefaults as i } from "../../libs/registry.js";
3
+ import { FALLBACK_FIELD_CONFIG as e, defaultFieldConfig as t } from "../field/field-config.js";
4
+ const o = {
5
+ ...t,
6
6
  chip: {
7
7
  size: "sm"
8
- },
9
- portal: !0,
10
- portalTarget: null
11
- }, a = {
8
+ }
9
+ }, l = {
12
10
  ...e,
13
11
  chip: {
14
12
  size: "sm",
15
13
  color: "primary",
16
14
  radius: "sm",
17
15
  variant: "solid"
18
- },
19
- portal: !0,
20
- portalTarget: null
16
+ }
21
17
  };
22
- t("multiSelect", l);
18
+ i("multiSelect", o);
23
19
  export {
24
- a as FALLBACK_MULTI_SELECT_CONFIG,
25
- l as defaultMultiSelectConfig
20
+ l as FALLBACK_MULTI_SELECT_CONFIG,
21
+ o as defaultMultiSelectConfig
26
22
  };