@epam/ai-dial-ui-kit 0.15.0-dev.36 → 0.15.0-dev.37
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.
- package/dist/CHANGELOG.md +8 -0
- package/dist/DateCellRenderer-D3WA9Jzg.cjs +1 -0
- package/dist/components/New/Select/CollapsedSelectTags.js +127 -0
- package/dist/components/New/Select/MultiSelectTags.js +18 -15
- package/dist/components/New/Select/Select.js +184 -173
- package/dist/components/New/constants/overlay.js +7 -5
- package/dist/components-manifest.json +15 -2
- package/dist/dial-ui-kit.cjs +2 -2
- package/dist/grid.cjs +1 -1
- package/dist/src/components/New/Select/CollapsedSelectTags.d.ts +22 -0
- package/dist/src/components/New/Select/MultiSelectTags.d.ts +5 -0
- package/dist/src/components/New/Select/Select.d.ts +9 -0
- package/package.json +1 -1
- package/dist/DateCellRenderer-DABG5c2F.cjs +0 -1
|
@@ -1,89 +1,92 @@
|
|
|
1
|
-
import { jsx as l, jsxs as
|
|
2
|
-
import { IconChevronDown as
|
|
3
|
-
import { useId as
|
|
4
|
-
import { Checkbox as
|
|
5
|
-
import { Dropdown as
|
|
6
|
-
import { EllipsisTooltip as
|
|
7
|
-
import { InteractiveTooltip as
|
|
8
|
-
import { ErrorText as
|
|
9
|
-
import { GhostIconButton as
|
|
10
|
-
import { Input as
|
|
11
|
-
import { Label as
|
|
12
|
-
import { DialNoDataContent as
|
|
13
|
-
import { DIAL_KIT_ICON_STROKE as
|
|
14
|
-
import { DIAL_ICON_SIZE as
|
|
15
|
-
import { MenuItem as
|
|
16
|
-
import { MenuItemMark as
|
|
17
|
-
import { ElementSize as
|
|
18
|
-
import {
|
|
1
|
+
import { jsx as l, jsxs as g, Fragment as je } from "react/jsx-runtime";
|
|
2
|
+
import { IconChevronDown as ze } from "@tabler/icons-react";
|
|
3
|
+
import { useId as Ue, useState as z, useCallback as f, useMemo as m, useEffect as Ve, useImperativeHandle as qe, Fragment as Ge } from "react";
|
|
4
|
+
import { Checkbox as He } from "../Checkbox/Checkbox.js";
|
|
5
|
+
import { Dropdown as Qe } from "../Dropdown/Dropdown.js";
|
|
6
|
+
import { EllipsisTooltip as We } from "../EllipsisTooltip/EllipsisTooltip.js";
|
|
7
|
+
import { InteractiveTooltip as Ze } from "../InteractiveTooltip/InteractiveTooltip.js";
|
|
8
|
+
import { ErrorText as Je, CaptionText as Re } from "../CaptionText/CaptionText.js";
|
|
9
|
+
import { GhostIconButton as Xe } from "../IconButton/IconButtonWrappers.js";
|
|
10
|
+
import { Input as re } from "../Input/Input.js";
|
|
11
|
+
import { Label as Ye } from "../Label/Label.js";
|
|
12
|
+
import { DialNoDataContent as Pe } from "../../NoDataContent/NoDataContent.js";
|
|
13
|
+
import { DIAL_KIT_ICON_STROKE as el } from "../constants/icon.js";
|
|
14
|
+
import { DIAL_ICON_SIZE as ae } from "../../../constants/icon.js";
|
|
15
|
+
import { MenuItem as ie } from "../MenuItem/MenuItem.js";
|
|
16
|
+
import { MenuItemMark as U } from "../../../types/menu-item.js";
|
|
17
|
+
import { ElementSize as O } from "../../../types/size.js";
|
|
18
|
+
import { useIsMobileScreen as ll } from "../../../hooks/use-is-mobile-screen.js";
|
|
19
|
+
import { resolveAccessibleName as oe } from "../../../utils/accessible-name.js";
|
|
19
20
|
import { mergeClasses as p } from "../../../utils/merge-classes.js";
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
|
|
21
|
+
import { CollapsedSelectTags as tl } from "./CollapsedSelectTags.js";
|
|
22
|
+
import { MultiSelectTags as nl } from "./MultiSelectTags.js";
|
|
23
|
+
import { SelectSubMenuItem as rl } from "./SelectSubMenuItem.js";
|
|
24
|
+
import { selectFieldIconClassName as al, selectListWidthClassName as il, selectOverlayBaseClassName as ol, selectSearchThreshold as sl, selectSearchIcon as cl, selectCloseIcon as dl, selectOptionBaseClassName as fl, selectOptionsScrollClassName as ml, selectEmptyStateIcon as ul } from "./constants.js";
|
|
25
|
+
import { DIAL_KIT_CLASS as hl } from "../../../constants/public-class-names.js";
|
|
26
|
+
const zl = ({
|
|
25
27
|
options: a,
|
|
26
28
|
multiple: n = !1,
|
|
27
|
-
id:
|
|
28
|
-
value:
|
|
29
|
-
defaultValue:
|
|
30
|
-
size:
|
|
31
|
-
prefix:
|
|
32
|
-
customSelectedValue:
|
|
33
|
-
placeholder:
|
|
34
|
-
labelProps:
|
|
35
|
-
error:
|
|
36
|
-
caption:
|
|
37
|
-
ariaLabel:
|
|
38
|
-
searchable:
|
|
39
|
-
searchSize:
|
|
40
|
-
searchPlaceholder:
|
|
41
|
-
selectAll:
|
|
42
|
-
invalid:
|
|
43
|
-
selectAllLabel:
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
29
|
+
id: se,
|
|
30
|
+
value: D,
|
|
31
|
+
defaultValue: ce,
|
|
32
|
+
size: V = O.Standard,
|
|
33
|
+
prefix: q,
|
|
34
|
+
customSelectedValue: G,
|
|
35
|
+
placeholder: de = "Select...",
|
|
36
|
+
labelProps: N,
|
|
37
|
+
error: H,
|
|
38
|
+
caption: fe,
|
|
39
|
+
ariaLabel: Q,
|
|
40
|
+
searchable: W = !1,
|
|
41
|
+
searchSize: me = O.Standard,
|
|
42
|
+
searchPlaceholder: Z,
|
|
43
|
+
selectAll: ue = !1,
|
|
44
|
+
invalid: he,
|
|
45
|
+
selectAllLabel: pe = "Select all",
|
|
46
|
+
collapseTagOverflow: be = !1,
|
|
47
|
+
selectedOptionMark: J = U.Tint,
|
|
48
|
+
emptyStateTitle: ve = "No options available",
|
|
49
|
+
emptyStateDescription: Ce,
|
|
50
|
+
emptyStateIcon: Se,
|
|
51
|
+
disabled: b = !1,
|
|
52
|
+
className: ge,
|
|
50
53
|
fieldClassName: Ne,
|
|
51
|
-
listClassName:
|
|
52
|
-
closable:
|
|
54
|
+
listClassName: Ie,
|
|
55
|
+
closable: F = !1,
|
|
53
56
|
header: I,
|
|
54
57
|
footer: x,
|
|
55
|
-
onClose:
|
|
56
|
-
onChange:
|
|
57
|
-
dismissRef:
|
|
58
|
-
onFooterClick:
|
|
59
|
-
open:
|
|
60
|
-
onOpenChange:
|
|
61
|
-
onSearchQueryChange:
|
|
62
|
-
customMultiSelectTagsRenderer:
|
|
58
|
+
onClose: R,
|
|
59
|
+
onChange: X,
|
|
60
|
+
dismissRef: xe,
|
|
61
|
+
onFooterClick: Y,
|
|
62
|
+
open: P,
|
|
63
|
+
onOpenChange: ee,
|
|
64
|
+
onSearchQueryChange: le,
|
|
65
|
+
customMultiSelectTagsRenderer: L
|
|
63
66
|
}) => {
|
|
64
|
-
const
|
|
67
|
+
const we = Ue(), u = se || we, te = `list-${u}`, ne = V === O.Small, [ye, Te] = z(!1), E = P !== void 0, d = E ? !!P : ye, c = f(
|
|
65
68
|
(e) => {
|
|
66
|
-
|
|
69
|
+
E || Te(e), ee?.(e);
|
|
67
70
|
},
|
|
68
|
-
[
|
|
69
|
-
), [h,
|
|
71
|
+
[E, ee]
|
|
72
|
+
), [h, Ae] = z(""), M = f(
|
|
70
73
|
(e) => {
|
|
71
|
-
e !== h && (
|
|
74
|
+
e !== h && (Ae(e || ""), le?.(e || ""));
|
|
72
75
|
},
|
|
73
|
-
[
|
|
74
|
-
),
|
|
76
|
+
[le, h]
|
|
77
|
+
), $ = D !== void 0, [ke, Oe] = z(ce), v = $ ? D : ke, r = m(() => n ? Array.isArray(v) ? v : [] : typeof v == "string" ? [v] : [], [v, n]), w = m(() => {
|
|
75
78
|
const e = h.trim().toLowerCase();
|
|
76
79
|
return e ? a.filter((t) => t.label.toLowerCase().includes(e)) : a;
|
|
77
80
|
}, [a, h]);
|
|
78
|
-
|
|
79
|
-
d ||
|
|
80
|
-
}, [d,
|
|
81
|
+
Ve(() => {
|
|
82
|
+
d || M("");
|
|
83
|
+
}, [d, M]);
|
|
81
84
|
const s = f(
|
|
82
85
|
(e) => {
|
|
83
|
-
|
|
86
|
+
$ || Oe(e), X?.(e);
|
|
84
87
|
},
|
|
85
|
-
[
|
|
86
|
-
),
|
|
88
|
+
[$, X]
|
|
89
|
+
), _ = f(
|
|
87
90
|
(e) => {
|
|
88
91
|
if (n) {
|
|
89
92
|
const t = new Set(r);
|
|
@@ -93,31 +96,31 @@ const El = ({
|
|
|
93
96
|
s(e), c(!1);
|
|
94
97
|
},
|
|
95
98
|
[n, s, c, r]
|
|
96
|
-
),
|
|
99
|
+
), y = f(
|
|
97
100
|
(e, t) => {
|
|
98
101
|
if (e.stopPropagation(), !n) {
|
|
99
102
|
s("");
|
|
100
103
|
return;
|
|
101
104
|
}
|
|
102
|
-
const
|
|
103
|
-
s(
|
|
105
|
+
const k = r.filter((Ke) => Ke !== t);
|
|
106
|
+
s(k);
|
|
104
107
|
},
|
|
105
108
|
[n, r, s]
|
|
106
109
|
), o = m(
|
|
107
110
|
() => w.filter((e) => !e.disabled),
|
|
108
111
|
[w]
|
|
109
|
-
),
|
|
112
|
+
), B = m(
|
|
110
113
|
() => o.filter((e) => r.includes(e.value)).length,
|
|
111
114
|
[o, r]
|
|
112
|
-
), { allSelectedInFiltered:
|
|
113
|
-
const e = o.length > 0 &&
|
|
115
|
+
), { allSelectedInFiltered: K, someSelectedInFiltered: De } = m(() => {
|
|
116
|
+
const e = o.length > 0 && B === o.length;
|
|
114
117
|
return {
|
|
115
118
|
allSelectedInFiltered: e,
|
|
116
|
-
someSelectedInFiltered:
|
|
119
|
+
someSelectedInFiltered: B > 0 && !e
|
|
117
120
|
};
|
|
118
|
-
}, [o,
|
|
121
|
+
}, [o, B]), Fe = f(() => {
|
|
119
122
|
if (!(!n || o.length === 0))
|
|
120
|
-
if (
|
|
123
|
+
if (K) {
|
|
121
124
|
const e = new Set(o.map((t) => t.value));
|
|
122
125
|
s(r.filter((t) => !e.has(t)));
|
|
123
126
|
} else {
|
|
@@ -125,123 +128,131 @@ const El = ({
|
|
|
125
128
|
o.forEach((t) => e.add(t.value)), s(Array.from(e));
|
|
126
129
|
}
|
|
127
130
|
}, [
|
|
128
|
-
|
|
131
|
+
K,
|
|
129
132
|
n,
|
|
130
133
|
o,
|
|
131
134
|
r,
|
|
132
135
|
s
|
|
133
|
-
]),
|
|
134
|
-
() =>
|
|
135
|
-
[a,
|
|
136
|
-
), C = i ?
|
|
136
|
+
]), T = r.length > 0, A = !n && T ? r[0] : void 0, i = m(
|
|
137
|
+
() => A ? a.find((e) => e.value === A) ?? a.flatMap((e) => e.children ?? []).find((e) => e.value === A) : void 0,
|
|
138
|
+
[a, A]
|
|
139
|
+
), C = i ? q ? `${q} ${i.label}` : i.label : void 0, Le = ll(), j = n && be && !L && !Le, S = m(() => n ? T ? j ? /* @__PURE__ */ l(
|
|
140
|
+
tl,
|
|
141
|
+
{
|
|
142
|
+
options: a,
|
|
143
|
+
selectedValues: r,
|
|
144
|
+
handleRemoveTag: y
|
|
145
|
+
}
|
|
146
|
+
) : /* @__PURE__ */ l("span", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2", children: L?.(
|
|
137
147
|
a,
|
|
138
148
|
r,
|
|
139
|
-
|
|
149
|
+
y
|
|
140
150
|
) ?? /* @__PURE__ */ l(
|
|
141
|
-
|
|
151
|
+
nl,
|
|
142
152
|
{
|
|
143
153
|
options: a,
|
|
144
154
|
selectedValues: r,
|
|
145
|
-
handleRemoveTag:
|
|
155
|
+
handleRemoveTag: y
|
|
146
156
|
}
|
|
147
|
-
) }) : null : !i || !i.labelNode && !i.description ? null : /* @__PURE__ */
|
|
157
|
+
) }) : null : !i || !i.labelNode && !i.description ? null : /* @__PURE__ */ g("span", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
148
158
|
/* @__PURE__ */ l(
|
|
149
|
-
|
|
159
|
+
We,
|
|
150
160
|
{
|
|
151
161
|
text: i.labelNode ?? C
|
|
152
162
|
}
|
|
153
163
|
),
|
|
154
164
|
i.description && /* @__PURE__ */ l("span", { className: "truncate text-secondary dial-tiny-text", children: i.description })
|
|
155
165
|
] }), [
|
|
156
|
-
|
|
157
|
-
|
|
166
|
+
j,
|
|
167
|
+
L,
|
|
158
168
|
y,
|
|
169
|
+
T,
|
|
159
170
|
n,
|
|
160
171
|
a,
|
|
161
172
|
C,
|
|
162
173
|
r,
|
|
163
174
|
i
|
|
164
|
-
]),
|
|
165
|
-
|
|
175
|
+
]), Ee = n || S ? "" : C || (G && D ? G : ""), Me = typeof N?.label == "string" ? N.label : void 0, $e = S ? [
|
|
176
|
+
oe(Q, Me),
|
|
166
177
|
n ? r.map((e) => a.find((t) => t.value === e)?.label ?? e).join(", ") : C
|
|
167
|
-
].filter(Boolean).join(", ") || void 0 :
|
|
168
|
-
|
|
178
|
+
].filter(Boolean).join(", ") || void 0 : oe(Q);
|
|
179
|
+
qe(xe, () => ({
|
|
169
180
|
dismiss: () => {
|
|
170
181
|
c(!1);
|
|
171
182
|
}
|
|
172
183
|
}));
|
|
173
|
-
const
|
|
184
|
+
const _e = f(
|
|
174
185
|
(e) => {
|
|
175
|
-
|
|
186
|
+
b || (e.key === "ArrowDown" || e.key === "ArrowUp") && (e.preventDefault(), d || c(!0));
|
|
176
187
|
},
|
|
177
|
-
[
|
|
178
|
-
),
|
|
188
|
+
[b, d, c]
|
|
189
|
+
), Be = () => /* @__PURE__ */ g(
|
|
179
190
|
"div",
|
|
180
191
|
{
|
|
181
|
-
id:
|
|
192
|
+
id: te,
|
|
182
193
|
role: "listbox",
|
|
183
194
|
"aria-multiselectable": n || void 0,
|
|
184
|
-
className:
|
|
195
|
+
className: ol,
|
|
185
196
|
children: [
|
|
186
|
-
I && /* @__PURE__ */ l(
|
|
187
|
-
(
|
|
188
|
-
|
|
189
|
-
|
|
197
|
+
I && /* @__PURE__ */ l(je, { children: typeof I == "function" ? I() : I }),
|
|
198
|
+
(W || F) && (a.length > sl || !!h) && /* @__PURE__ */ g("div", { className: "flex items-center gap-2 px-2 pt-2", children: [
|
|
199
|
+
W && /* @__PURE__ */ l(
|
|
200
|
+
re,
|
|
190
201
|
{
|
|
191
202
|
id: `search-${u}`,
|
|
192
|
-
size:
|
|
193
|
-
placeholder:
|
|
194
|
-
"aria-label":
|
|
195
|
-
onChange: (e) =>
|
|
203
|
+
size: me,
|
|
204
|
+
placeholder: Z,
|
|
205
|
+
"aria-label": Z || "Search options",
|
|
206
|
+
onChange: (e) => M(e),
|
|
196
207
|
value: h,
|
|
197
|
-
iconBefore:
|
|
208
|
+
iconBefore: cl,
|
|
198
209
|
containerClassName: "w-full"
|
|
199
210
|
}
|
|
200
211
|
),
|
|
201
|
-
|
|
202
|
-
|
|
212
|
+
F && /* @__PURE__ */ l(
|
|
213
|
+
Xe,
|
|
203
214
|
{
|
|
204
215
|
"aria-label": "Close select",
|
|
205
216
|
className: "shrink-0",
|
|
206
|
-
size:
|
|
207
|
-
icon:
|
|
217
|
+
size: O.Small,
|
|
218
|
+
icon: dl,
|
|
208
219
|
onClick: (e) => {
|
|
209
|
-
|
|
220
|
+
R?.(e), c(!1);
|
|
210
221
|
}
|
|
211
222
|
}
|
|
212
223
|
)
|
|
213
224
|
] }),
|
|
214
|
-
n &&
|
|
215
|
-
|
|
225
|
+
n && ue && o.length > 0 && /* @__PURE__ */ l("div", { className: p(fl, "mt-2"), children: /* @__PURE__ */ l(
|
|
226
|
+
He,
|
|
216
227
|
{
|
|
217
228
|
id: `${u}-selectAll`,
|
|
218
|
-
labelProps: { label:
|
|
219
|
-
isSelected:
|
|
220
|
-
isIndeterminate:
|
|
221
|
-
onChange:
|
|
229
|
+
labelProps: { label: pe },
|
|
230
|
+
isSelected: K,
|
|
231
|
+
isIndeterminate: De,
|
|
232
|
+
onChange: Fe
|
|
222
233
|
}
|
|
223
234
|
) }),
|
|
224
|
-
/* @__PURE__ */ l("div", { role: "none", className:
|
|
225
|
-
|
|
235
|
+
/* @__PURE__ */ l("div", { role: "none", className: ml, children: w.length === 0 ? /* @__PURE__ */ l("div", { className: "px-2 py-3", children: /* @__PURE__ */ l(
|
|
236
|
+
Pe,
|
|
226
237
|
{
|
|
227
|
-
icon:
|
|
228
|
-
title:
|
|
229
|
-
description:
|
|
238
|
+
icon: Se ?? ul,
|
|
239
|
+
title: ve,
|
|
240
|
+
description: Ce
|
|
230
241
|
}
|
|
231
242
|
) }) : w.map((e) => {
|
|
232
243
|
const t = r.includes(e.value);
|
|
233
244
|
if (e.children?.length)
|
|
234
245
|
return /* @__PURE__ */ l(
|
|
235
|
-
|
|
246
|
+
rl,
|
|
236
247
|
{
|
|
237
248
|
opt: e,
|
|
238
249
|
selectedValues: r,
|
|
239
|
-
mark: n ?
|
|
240
|
-
onSelect:
|
|
250
|
+
mark: n ? U.Checkbox : J,
|
|
251
|
+
onSelect: _
|
|
241
252
|
},
|
|
242
253
|
e.value
|
|
243
254
|
);
|
|
244
|
-
const
|
|
255
|
+
const k = n ? (
|
|
245
256
|
/*
|
|
246
257
|
The row itself is the control: one `option` whose state rides on
|
|
247
258
|
`aria-selected`, with a decorative box drawing the check. A real
|
|
@@ -250,55 +261,55 @@ const El = ({
|
|
|
250
261
|
has the whole row selecting the option.
|
|
251
262
|
*/
|
|
252
263
|
/* @__PURE__ */ l(
|
|
253
|
-
|
|
264
|
+
ie,
|
|
254
265
|
{
|
|
255
266
|
id: `${u}-${e.value}`,
|
|
256
267
|
role: "option",
|
|
257
268
|
"aria-selected": t,
|
|
258
269
|
"aria-disabled": !!e.disabled,
|
|
259
270
|
disabled: e.disabled,
|
|
260
|
-
mark:
|
|
271
|
+
mark: U.Checkbox,
|
|
261
272
|
selected: t,
|
|
262
273
|
icon: e.icon,
|
|
263
274
|
label: e.labelNode ?? e.label,
|
|
264
275
|
description: e.description,
|
|
265
276
|
rightControl: e.rightControl,
|
|
266
|
-
onClick: () =>
|
|
277
|
+
onClick: () => _(e.value)
|
|
267
278
|
}
|
|
268
279
|
)
|
|
269
280
|
) : /* @__PURE__ */ l(
|
|
270
|
-
|
|
281
|
+
ie,
|
|
271
282
|
{
|
|
272
283
|
role: "option",
|
|
273
284
|
"aria-selected": t,
|
|
274
285
|
"aria-disabled": !!e.disabled,
|
|
275
286
|
disabled: e.disabled,
|
|
276
|
-
mark:
|
|
287
|
+
mark: J,
|
|
277
288
|
selected: t,
|
|
278
289
|
ellipsisLabel: !0,
|
|
279
290
|
icon: e.icon,
|
|
280
291
|
label: e.labelNode ?? e.label,
|
|
281
292
|
description: e.description,
|
|
282
293
|
rightControl: e.rightControl,
|
|
283
|
-
onClick: () => !e.disabled &&
|
|
294
|
+
onClick: () => !e.disabled && _(e.value)
|
|
284
295
|
}
|
|
285
296
|
);
|
|
286
|
-
return /* @__PURE__ */ l(
|
|
287
|
-
|
|
297
|
+
return /* @__PURE__ */ l(Ge, { children: e.interactiveTooltip ? /* @__PURE__ */ l(
|
|
298
|
+
Ze,
|
|
288
299
|
{
|
|
289
300
|
asChild: !0,
|
|
290
301
|
placement: e.interactiveTooltip.placement,
|
|
291
302
|
content: e.interactiveTooltip.content,
|
|
292
303
|
contentClassName: e.interactiveTooltip.contentClassName,
|
|
293
|
-
children:
|
|
304
|
+
children: k
|
|
294
305
|
}
|
|
295
|
-
) :
|
|
306
|
+
) : k }, e.value);
|
|
296
307
|
}) }),
|
|
297
308
|
x && /* @__PURE__ */ l(
|
|
298
309
|
"div",
|
|
299
310
|
{
|
|
300
311
|
onClick: (e) => {
|
|
301
|
-
|
|
312
|
+
Y?.(e), Y && c(!1);
|
|
302
313
|
},
|
|
303
314
|
children: typeof x == "function" ? x() : x
|
|
304
315
|
}
|
|
@@ -306,49 +317,49 @@ const El = ({
|
|
|
306
317
|
]
|
|
307
318
|
}
|
|
308
319
|
);
|
|
309
|
-
return /* @__PURE__ */
|
|
320
|
+
return /* @__PURE__ */ g(
|
|
310
321
|
"div",
|
|
311
322
|
{
|
|
312
323
|
className: p(
|
|
313
324
|
"flex w-full flex-col gap-2",
|
|
314
|
-
|
|
315
|
-
|
|
325
|
+
ge,
|
|
326
|
+
hl.select
|
|
316
327
|
),
|
|
317
328
|
children: [
|
|
318
|
-
|
|
319
|
-
/* @__PURE__ */
|
|
329
|
+
N && /* @__PURE__ */ l(Ye, { ...N, htmlFor: u }),
|
|
330
|
+
/* @__PURE__ */ g("div", { className: "flex flex-col gap-1", children: [
|
|
320
331
|
/* @__PURE__ */ l(
|
|
321
|
-
|
|
332
|
+
Qe,
|
|
322
333
|
{
|
|
323
334
|
open: d,
|
|
324
335
|
onOpenChange: c,
|
|
325
|
-
disabled:
|
|
326
|
-
closable:
|
|
327
|
-
onClose:
|
|
336
|
+
disabled: b,
|
|
337
|
+
closable: F,
|
|
338
|
+
onClose: R,
|
|
328
339
|
placement: "bottom-start",
|
|
329
340
|
allowedPlacements: ["bottom-start", "top-start"],
|
|
330
|
-
listClassName: p(
|
|
341
|
+
listClassName: p(il, Ie),
|
|
331
342
|
className: "w-full",
|
|
332
|
-
renderOverlay:
|
|
343
|
+
renderOverlay: Be,
|
|
333
344
|
children: /* @__PURE__ */ l(
|
|
334
|
-
|
|
345
|
+
re,
|
|
335
346
|
{
|
|
336
347
|
id: u,
|
|
337
|
-
size:
|
|
338
|
-
disabled:
|
|
339
|
-
invalid:
|
|
340
|
-
value:
|
|
341
|
-
placeholder:
|
|
348
|
+
size: V,
|
|
349
|
+
disabled: b,
|
|
350
|
+
invalid: he,
|
|
351
|
+
value: Ee,
|
|
352
|
+
placeholder: S ? void 0 : de,
|
|
342
353
|
readOnly: !0,
|
|
343
354
|
iconBefore: n ? void 0 : i?.icon,
|
|
344
355
|
iconAfter: /* @__PURE__ */ l(
|
|
345
|
-
|
|
356
|
+
ze,
|
|
346
357
|
{
|
|
347
|
-
size:
|
|
348
|
-
stroke:
|
|
358
|
+
size: ne ? ae.SM : ae.MD,
|
|
359
|
+
stroke: el,
|
|
349
360
|
"aria-hidden": "true",
|
|
350
361
|
className: p(
|
|
351
|
-
|
|
362
|
+
al,
|
|
352
363
|
d && "rotate-180"
|
|
353
364
|
)
|
|
354
365
|
}
|
|
@@ -356,35 +367,35 @@ const El = ({
|
|
|
356
367
|
role: "combobox",
|
|
357
368
|
"aria-haspopup": "listbox",
|
|
358
369
|
"aria-expanded": d,
|
|
359
|
-
"aria-controls":
|
|
370
|
+
"aria-controls": te,
|
|
360
371
|
"aria-autocomplete": "none",
|
|
361
|
-
"aria-label":
|
|
372
|
+
"aria-label": $e,
|
|
362
373
|
containerClassName: "w-full",
|
|
363
374
|
wrapperClassName: p(
|
|
364
|
-
!
|
|
365
|
-
n &&
|
|
366
|
-
"!h-auto flex-wrap py-
|
|
367
|
-
|
|
375
|
+
!b && "cursor-pointer",
|
|
376
|
+
n && T && !j && [
|
|
377
|
+
"!h-auto flex-wrap py-2",
|
|
378
|
+
ne ? "min-h-[24px]" : "min-h-[40px]"
|
|
368
379
|
],
|
|
369
380
|
Ne
|
|
370
381
|
),
|
|
371
382
|
className: p(
|
|
372
383
|
"cursor-pointer",
|
|
373
|
-
|
|
384
|
+
S && "w-0 min-w-0 flex-none p-0"
|
|
374
385
|
),
|
|
375
|
-
onKeyDown:
|
|
376
|
-
children:
|
|
386
|
+
onKeyDown: _e,
|
|
387
|
+
children: S
|
|
377
388
|
}
|
|
378
389
|
)
|
|
379
390
|
}
|
|
380
391
|
),
|
|
381
|
-
/* @__PURE__ */ l(
|
|
382
|
-
!
|
|
392
|
+
/* @__PURE__ */ l(Je, { text: H }),
|
|
393
|
+
!H && /* @__PURE__ */ l(Re, { text: fe })
|
|
383
394
|
] })
|
|
384
395
|
]
|
|
385
396
|
}
|
|
386
397
|
);
|
|
387
398
|
};
|
|
388
399
|
export {
|
|
389
|
-
|
|
400
|
+
zl as Select
|
|
390
401
|
};
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { mergeClasses as e } from "../../../utils/merge-classes.js";
|
|
2
|
-
const a = "rounded-xl bg-layer-raised p-1 shadow-md",
|
|
2
|
+
const a = "rounded-xl bg-layer-raised p-1 shadow-md", s = "flex flex-col gap-0.5", l = e(
|
|
3
3
|
a,
|
|
4
4
|
"w-max"
|
|
5
5
|
), r = e(
|
|
6
|
-
s,
|
|
7
6
|
l,
|
|
7
|
+
s,
|
|
8
8
|
"py-2"
|
|
9
9
|
), n = e(
|
|
10
|
-
|
|
10
|
+
// `shrink-0` keeps the 40px: a column squeezed by the panel's height cap
|
|
11
|
+
// would otherwise collapse the rows to their content.
|
|
12
|
+
"flex w-full shrink-0 cursor-pointer items-center gap-2 px-3 h-[40px] rounded-lg",
|
|
11
13
|
"dial-small-text text-primary truncate",
|
|
12
14
|
// Hover sits one step up the accent-alpha ramp from the selected tint, so a
|
|
13
15
|
// hovered row reads as hovered whether or not it is also selected.
|
|
@@ -26,8 +28,8 @@ export {
|
|
|
26
28
|
m as overlayItemDisabledClassName,
|
|
27
29
|
c as overlayItemHighlightClassName,
|
|
28
30
|
t as overlayItemSelectedClassName,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
s as overlayListClassName,
|
|
32
|
+
l as overlaySubMenuClassName,
|
|
31
33
|
r as overlaySubMenuListClassName,
|
|
32
34
|
a as overlaySurfaceClassName
|
|
33
35
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.15.0-dev.
|
|
3
|
-
"generatedAt": "2026-10-
|
|
2
|
+
"version": "0.15.0-dev.37",
|
|
3
|
+
"generatedAt": "2026-10-05T11:16:33.468Z",
|
|
4
4
|
"kit": {
|
|
5
5
|
"name": "@epam/ai-dial-ui-kit",
|
|
6
6
|
"description": "A modern UI kit for building AI DIAL interfaces with React",
|
|
@@ -1250,6 +1250,13 @@
|
|
|
1250
1250
|
"defaultValue": "'Select all'",
|
|
1251
1251
|
"description": "Label for the \"Select All\" checkbox."
|
|
1252
1252
|
},
|
|
1253
|
+
{
|
|
1254
|
+
"name": "collapseTagOverflow",
|
|
1255
|
+
"type": "boolean",
|
|
1256
|
+
"required": false,
|
|
1257
|
+
"defaultValue": "false",
|
|
1258
|
+
"description": "Keep a multi-select's tags on one row, folding those that do not fit into a `+N` counter by the width available; the hover panel lists them and removes them."
|
|
1259
|
+
},
|
|
1253
1260
|
{
|
|
1254
1261
|
"name": "selectedOptionMark",
|
|
1255
1262
|
"type": "| MenuItemMark.Tint\n | MenuItemMark.Check\n | MenuItemMark.Highlight",
|
|
@@ -1403,6 +1410,12 @@
|
|
|
1403
1410
|
"type": "(\n event: MouseEvent<HTMLButtonElement, globalThis.MouseEvent>,\n val: string,\n ) => void",
|
|
1404
1411
|
"required": false,
|
|
1405
1412
|
"description": "Called with the value whose tag was removed; when omitted the tags are not removable"
|
|
1413
|
+
},
|
|
1414
|
+
{
|
|
1415
|
+
"name": "tagClassName",
|
|
1416
|
+
"type": "string",
|
|
1417
|
+
"required": false,
|
|
1418
|
+
"description": "Additional classes for every tag"
|
|
1406
1419
|
}
|
|
1407
1420
|
],
|
|
1408
1421
|
"examples": [],
|