@mattermost/compass-ui 0.1.0-alpha.24 → 0.1.0-alpha.26

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 (54) hide show
  1. package/dist/components/admin-panel-footer/AdminPanelFooter.css +1 -1
  2. package/dist/components/admin-panel-footer/AdminPanelFooter.module.scss.cjs +1 -1
  3. package/dist/components/admin-panel-footer/AdminPanelFooter.module.scss.js +5 -5
  4. package/dist/components/combobox/Combobox.cjs +1 -1
  5. package/dist/components/combobox/Combobox.cjs.map +1 -1
  6. package/dist/components/combobox/Combobox.d.ts +11 -2
  7. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  8. package/dist/components/combobox/Combobox.js +240 -232
  9. package/dist/components/combobox/Combobox.js.map +1 -1
  10. package/dist/components/dropdown/Dropdown.cjs +1 -1
  11. package/dist/components/dropdown/Dropdown.cjs.map +1 -1
  12. package/dist/components/dropdown/Dropdown.css +1 -1
  13. package/dist/components/dropdown/Dropdown.d.ts +2 -2
  14. package/dist/components/dropdown/Dropdown.d.ts.map +1 -1
  15. package/dist/components/dropdown/Dropdown.js +15 -15
  16. package/dist/components/dropdown/Dropdown.js.map +1 -1
  17. package/dist/components/dropdown/Dropdown.module.scss.cjs +1 -1
  18. package/dist/components/dropdown/Dropdown.module.scss.js +19 -18
  19. package/dist/components/dropdown/Dropdown.module.scss.js.map +1 -1
  20. package/dist/components/empty-state/EmptyState.css +1 -1
  21. package/dist/components/empty-state/EmptyState.module.scss.cjs +1 -1
  22. package/dist/components/empty-state/EmptyState.module.scss.js +7 -7
  23. package/dist/components/icon-button/IconButton.css +1 -1
  24. package/dist/components/icon-button/IconButton.module.scss.cjs +1 -1
  25. package/dist/components/icon-button/IconButton.module.scss.js +16 -16
  26. package/dist/components/modal-header/ModalHeader.cjs +1 -1
  27. package/dist/components/modal-header/ModalHeader.cjs.map +1 -1
  28. package/dist/components/modal-header/ModalHeader.css +1 -1
  29. package/dist/components/modal-header/ModalHeader.d.ts.map +1 -1
  30. package/dist/components/modal-header/ModalHeader.js +50 -46
  31. package/dist/components/modal-header/ModalHeader.js.map +1 -1
  32. package/dist/components/modal-header/ModalHeader.module.scss.cjs +1 -1
  33. package/dist/components/modal-header/ModalHeader.module.scss.js +18 -17
  34. package/dist/components/modal-header/ModalHeader.module.scss.js.map +1 -1
  35. package/dist/components/password-input/PasswordInput.cjs +1 -1
  36. package/dist/components/password-input/PasswordInput.cjs.map +1 -1
  37. package/dist/components/password-input/PasswordInput.d.ts +11 -3
  38. package/dist/components/password-input/PasswordInput.d.ts.map +1 -1
  39. package/dist/components/password-input/PasswordInput.js +68 -67
  40. package/dist/components/password-input/PasswordInput.js.map +1 -1
  41. package/dist/components/right-sidebar-header/RightSidebarHeader.cjs +1 -1
  42. package/dist/components/right-sidebar-header/RightSidebarHeader.cjs.map +1 -1
  43. package/dist/components/right-sidebar-header/RightSidebarHeader.css +1 -1
  44. package/dist/components/right-sidebar-header/RightSidebarHeader.d.ts +10 -3
  45. package/dist/components/right-sidebar-header/RightSidebarHeader.d.ts.map +1 -1
  46. package/dist/components/right-sidebar-header/RightSidebarHeader.js +88 -66
  47. package/dist/components/right-sidebar-header/RightSidebarHeader.js.map +1 -1
  48. package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.cjs +1 -1
  49. package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.js +13 -12
  50. package/dist/components/right-sidebar-header/RightSidebarHeader.module.scss.js.map +1 -1
  51. package/dist/components/tile-button/TileButton.css +1 -1
  52. package/dist/components/tile-button/TileButton.module.scss.cjs +1 -1
  53. package/dist/components/tile-button/TileButton.module.scss.js +6 -6
  54. package/package.json +3 -3
@@ -1,14 +1,14 @@
1
- import { jsxs as M, jsx as a } from "react/jsx-runtime";
2
- import { forwardRef as Mr, useId as Ir, useRef as O, useCallback as d, useState as I, useMemo as V, useEffect as de } from "react";
3
- import __Vr from "@mattermost/compass-icons/components/chevron-down.js";const Vr=__Vr&&__Vr.default?__Vr.default:__Vr;
4
- import __Rr from "@mattermost/compass-icons/components/close-circle.js";const Rr=__Rr&&__Rr.default?__Rr.default:__Rr;
5
- import __Sr from "@mattermost/compass-icons/components/plus.js";const Sr=__Sr&&__Sr.default?__Sr.default:__Sr;
6
- import Er from "../chip/Chip.js";
1
+ import { jsxs as M, jsx as l } from "react/jsx-runtime";
2
+ import { forwardRef as Mr, useId as Er, useRef as O, useCallback as d, useState as E, useMemo as I, useEffect as de } from "react";
3
+ import __Ir from "@mattermost/compass-icons/components/chevron-down.js";const Ir=__Ir&&__Ir.default?__Ir.default:__Ir;
4
+ import __Vr from "@mattermost/compass-icons/components/close-circle.js";const Vr=__Vr&&__Vr.default?__Vr.default:__Vr;
5
+ import __Rr from "@mattermost/compass-icons/components/plus.js";const Rr=__Rr&&__Rr.default?__Rr.default:__Rr;
6
+ import Sr from "../chip/Chip.js";
7
7
  import Tr from "../chip/ChipGroup.js";
8
8
  import me, { IconSlotContext as Lr } from "../icon/Icon.js";
9
9
  import Te from "../menu-item/MenuItem.js";
10
- import Fr, { PopoverMenuScroll as zr } from "../popover-menu/PopoverMenu.js";
11
- import Cr from "../spinner/Spinner.js";
10
+ import Cr, { PopoverMenuScroll as Fr } from "../popover-menu/PopoverMenu.js";
11
+ import zr from "../spinner/Spinner.js";
12
12
  import Hr from "../team-avatar/TeamAvatar.js";
13
13
  import $r from "../user-avatar/UserAvatar.js";
14
14
  import { useAnchoredPopupPortal as Or } from "../../hooks/use-anchored-popup-portal.js";
@@ -16,18 +16,18 @@ import { useOutsideClose as jr } from "../../hooks/use-outside-close.js";
16
16
  import { usePopoverTransition as Ur } from "../../hooks/use-popover-transition.js";
17
17
  import { mergeMenuItemProps as qr } from "../../utils/menuItemProps.js";
18
18
  import { mergeClassNames as Gr } from "../../utils/props.js";
19
- import { toKebab as Qr } from "../../utils/string.js";
19
+ import { toKebab as Kr } from "../../utils/string.js";
20
20
  import o from "./Combobox.module.scss.js";
21
- const Le = 280, Xr = {
21
+ const Le = 280, Qr = {
22
22
  small: "small",
23
23
  medium: "medium",
24
24
  large: "large"
25
- }, Zr = {
25
+ }, Xr = {
26
26
  small: "12",
27
27
  medium: "16",
28
28
  large: "16"
29
29
  };
30
- function Pr(n) {
30
+ function Zr(n) {
31
31
  return typeof n == "string" ? `${n} selections` : "Selected";
32
32
  }
33
33
  function Wr(n) {
@@ -36,19 +36,19 @@ function Wr(n) {
36
36
  function W(n) {
37
37
  return n.kind === "option" && n.option.disabled === !0;
38
38
  }
39
- function Yr(n, b) {
40
- return b ? n.label.toLowerCase().includes(b.toLowerCase()) : !0;
39
+ function Yr(n, v) {
40
+ return v ? n.label.toLowerCase().includes(v.toLowerCase()) : !0;
41
41
  }
42
42
  function Jr(n) {
43
43
  return n == null ? null : Array.isArray(n) ? n[0] ?? null : n === "" ? null : n;
44
44
  }
45
- function Kr(n) {
45
+ function Pr(n) {
46
46
  return n == null ? [] : Array.isArray(n) ? n : n === "" ? [] : [n];
47
47
  }
48
48
  function Br(n) {
49
49
  if (n.leadingVisual != null) return n.leadingVisual;
50
50
  if (n.leadingAvatar != null)
51
- return /* @__PURE__ */ a(
51
+ return /* @__PURE__ */ l(
52
52
  $r,
53
53
  {
54
54
  src: n.leadingAvatar.src,
@@ -57,7 +57,7 @@ function Br(n) {
57
57
  }
58
58
  );
59
59
  if (n.leadingTeamAvatar != null)
60
- return /* @__PURE__ */ a(
60
+ return /* @__PURE__ */ l(
61
61
  Hr,
62
62
  {
63
63
  src: n.leadingTeamAvatar.src,
@@ -68,227 +68,228 @@ function Br(n) {
68
68
  }
69
69
  );
70
70
  }
71
- const yn = Mr(function({
72
- options: b,
73
- menuItemProps: Fe,
71
+ const pn = Mr(function({
72
+ options: v,
73
+ menuItemProps: Ce,
74
74
  multiple: t = !1,
75
75
  value: be,
76
76
  defaultValue: ve,
77
77
  onChange: j,
78
78
  inputValue: Y,
79
- defaultInputValue: ze = "",
79
+ defaultInputValue: Fe = "",
80
80
  onInputChange: u,
81
- label: w,
82
- placeholder: Ce,
81
+ label: N,
82
+ placeholder: ze,
83
83
  leadingIcon: J,
84
- size: K = "medium",
84
+ size: P = "medium",
85
85
  invalid: he = !1,
86
- disabled: g = !1,
86
+ disabled: _ = !1,
87
87
  filter: U = !0,
88
88
  emptyMessage: He = "No results",
89
89
  loading: xe = !1,
90
90
  loadingMessage: $e = "Loading…",
91
- selectedOptions: k,
92
- creatable: R = !1,
91
+ selectedOptions: A,
92
+ creatable: V = !1,
93
93
  onCreateOption: B,
94
94
  formatCreateLabel: Oe = Wr,
95
95
  clearable: je = !1,
96
96
  openOnFocus: Ue = !1,
97
- clearLabel: qe = "Clear",
98
- clearButtonProps: p,
99
- selectionsLabel: Ge,
97
+ submitOnEnter: qe = !0,
98
+ clearLabel: Ge = "Clear",
99
+ clearButtonProps: m,
100
+ selectionsLabel: Ke,
100
101
  listboxLabel: Qe = "Options",
101
102
  className: Xe = "",
102
103
  id: Ze,
103
- "aria-label": _e,
104
- "aria-describedby": Pe,
105
- required: We = !1,
104
+ "aria-label": ge,
105
+ "aria-describedby": We,
106
+ required: Ye = !1,
106
107
  onFocus: ee,
107
108
  onBlur: re,
108
109
  onKeyDown: ne,
109
- portalContainer: Ye = null,
110
- zIndex: Je,
111
- ...Ke
112
- }, S) {
113
- const Be = Ir(), te = Ze ?? Be, E = `${te}-listbox`, le = O(null), ge = O(null), N = O(null), er = d(
110
+ portalContainer: Je = null,
111
+ zIndex: Pe,
112
+ ...Be
113
+ }, R) {
114
+ const er = Er(), te = Ze ?? er, S = `${te}-listbox`, ae = O(null), _e = O(null), D = O(null), rr = d(
114
115
  (e) => {
115
- N.current = e, typeof S == "function" ? S(e) : S && (S.current = e);
116
+ D.current = e, typeof R == "function" ? R(e) : R && (R.current = e);
116
117
  },
117
- [S]
118
- ), ae = be !== void 0, [rr, nr] = I(() => ve !== void 0 ? ve : t ? [] : null), oe = ae ? be : rr, v = t ? null : Jr(oe), s = V(
119
- () => t ? Kr(oe) : [],
118
+ [R]
119
+ ), le = be !== void 0, [nr, tr] = E(() => ve !== void 0 ? ve : t ? [] : null), oe = le ? be : nr, h = t ? null : Jr(oe), i = I(
120
+ () => t ? Pr(oe) : [],
120
121
  [t, oe]
121
- ), m = Y !== void 0, [se, T] = I(ze), [c, pe] = I(!1), [tr, ye] = I(!1), [h, y] = I(-1), q = O(!1), L = O(null), Ae = d(
122
+ ), b = Y !== void 0, [ie, T] = E(Fe), [c, ye] = E(!1), [ar, pe] = E(!1), [x, y] = E(-1), q = O(!1), L = O(null), ke = d(
122
123
  (e) => {
123
- e !== h && (q.current = !0, y(e));
124
+ e !== x && (q.current = !0, y(e));
124
125
  },
125
- [h]
126
- ), [G, F] = I(null), Q = d(
127
- (e) => b.find((r) => r.value === e) ?? (k == null ? void 0 : k.find((r) => r.value === e)) ?? (R ? { value: e, label: e } : void 0),
128
- [b, k, R]
129
- ), X = V(
130
- () => v == null ? void 0 : Q(v),
131
- [Q, v]
132
- ), ie = m ? Y : t ? se : G !== null ? G : (X == null ? void 0 : X.label) ?? se, ce = m ? Y : t ? se : G !== null ? G : "", z = d(
126
+ [x]
127
+ ), [G, C] = E(null), K = d(
128
+ (e) => v.find((r) => r.value === e) ?? (A == null ? void 0 : A.find((r) => r.value === e)) ?? (V ? { value: e, label: e } : void 0),
129
+ [v, A, V]
130
+ ), Q = I(
131
+ () => h == null ? void 0 : K(h),
132
+ [K, h]
133
+ ), se = b ? Y : t ? ie : G !== null ? G : (Q == null ? void 0 : Q.label) ?? ie, ce = b ? Y : t ? ie : G !== null ? G : "", F = d(
133
134
  (e) => {
134
- m || (T(e), t || F(e)), u == null || u(e);
135
+ b || (T(e), t || C(e)), u == null || u(e);
135
136
  },
136
- [m, t, u]
137
- ), x = d(
137
+ [b, t, u]
138
+ ), g = d(
138
139
  (e) => {
139
- ae || nr(e), j == null || j(e);
140
+ le || tr(e), j == null || j(e);
140
141
  },
141
- [ae, j]
142
- ), ke = V(() => {
143
- if (U === !1) return b;
142
+ [le, j]
143
+ ), Ae = I(() => {
144
+ if (U === !1) return v;
144
145
  const e = typeof U == "function" ? U : Yr;
145
- return b.filter((r) => e(r, ce));
146
- }, [b, U, ce]), C = R ? ce.trim() : "", Ne = V(() => {
147
- if (C === "") return !1;
148
- const e = C.toLowerCase(), r = (f) => f.toLowerCase() === e;
149
- return [...b, ...k ?? []].some((f) => r(f.label) || r(f.value)) ? !1 : !(t ? s : v != null ? [v] : []).some(r);
146
+ return v.filter((r) => e(r, ce));
147
+ }, [v, U, ce]), z = V ? ce.trim() : "", De = I(() => {
148
+ if (z === "") return !1;
149
+ const e = z.toLowerCase(), r = (k) => k.toLowerCase() === e;
150
+ return [...v, ...A ?? []].some((k) => r(k.label) || r(k.value)) ? !1 : !(t ? i : h != null ? [h] : []).some(r);
150
151
  }, [
151
- C,
152
- b,
153
- k,
152
+ z,
153
+ v,
154
+ A,
154
155
  t,
155
- s,
156
- v
157
- ]), i = V(
156
+ i,
157
+ h
158
+ ]), s = I(
158
159
  () => [
159
- ...ke.map((e) => ({ kind: "option", option: e })),
160
- ...Ne ? [{ kind: "create", inputValue: C }] : []
160
+ ...Ae.map((e) => ({ kind: "option", option: e })),
161
+ ...De ? [{ kind: "create", inputValue: z }] : []
161
162
  ],
162
- [ke, Ne, C]
163
- ), D = d(
164
- (e) => e.kind === "option" ? `${E}-option-${e.option.value}` : `${E}-create`,
165
- [E]
166
- ), { mounted: we, visible: lr } = Ur(c), {
167
- placement: ar,
168
- maxHeight: or,
163
+ [Ae, De, z]
164
+ ), w = d(
165
+ (e) => e.kind === "option" ? `${S}-option-${e.option.value}` : `${S}-create`,
166
+ [S]
167
+ ), { mounted: Ne, visible: lr } = Ur(c), {
168
+ placement: or,
169
+ maxHeight: ir,
169
170
  style: sr,
170
- portalRef: De,
171
- renderPortal: ir
172
- } = Or(ge, we, {
171
+ portalRef: we,
172
+ renderPortal: cr
173
+ } = Or(_e, Ne, {
173
174
  preferredHeight: Le,
174
175
  maxHeightCap: Le,
175
- portalContainer: Ye,
176
- zIndex: Je
177
- }), A = d(() => {
178
- pe(!1), y(-1), !t && !m && (F(null), T(""));
179
- }, [t, m]), H = d(() => {
180
- g || pe(!0);
181
- }, [g]);
182
- jr(le, c, A, De), de(() => {
176
+ portalContainer: Je,
177
+ zIndex: Pe
178
+ }), p = d(() => {
179
+ ye(!1), y(-1), !t && !b && (C(null), T(""));
180
+ }, [t, b]), H = d(() => {
181
+ _ || ye(!0);
182
+ }, [_]);
183
+ jr(ae, c, p, we), de(() => {
183
184
  c && y((e) => {
184
- if (i.length === 0) return -1;
185
- if (e >= 0 && e < i.length) return e;
186
- const r = i.findIndex(
187
- (l) => l.kind === "option" && (t ? s.includes(l.option.value) : l.option.value === v)
185
+ if (s.length === 0) return -1;
186
+ if (e >= 0 && e < s.length) return e;
187
+ const r = s.findIndex(
188
+ (a) => a.kind === "option" && (t ? i.includes(a.option.value) : a.option.value === h)
188
189
  );
189
190
  return r >= 0 ? r : 0;
190
191
  });
191
- }, [c, i, t, s, v]);
192
- const cr = d(
193
- (e) => t ? s.includes(e) : v === e,
194
- [t, s, v]
192
+ }, [c, s, t, i, h]);
193
+ const ur = d(
194
+ (e) => t ? i.includes(e) : h === e,
195
+ [t, i, h]
195
196
  ), ue = d(
196
197
  (e) => {
197
198
  var r;
198
199
  if (!e.disabled) {
199
200
  if (t) {
200
- const l = s.includes(e.value) ? s.filter((_) => _ !== e.value) : [...s, e.value];
201
- x(l), z(""), A(), (r = N.current) == null || r.focus();
201
+ const a = i.includes(e.value) ? i.filter((f) => f !== e.value) : [...i, e.value];
202
+ g(a), F(""), p(), (r = D.current) == null || r.focus();
202
203
  return;
203
204
  }
204
- x(e.value), m ? u == null || u(e.label) : (T(""), F(null)), A();
205
+ g(e.value), b ? u == null || u(e.label) : (T(""), C(null)), p();
205
206
  }
206
207
  },
207
208
  [
208
209
  t,
209
- s,
210
- x,
211
- z,
212
- m,
210
+ i,
211
+ g,
212
+ F,
213
+ b,
213
214
  u,
214
- A
215
+ p
215
216
  ]
216
217
  ), fe = d(
217
218
  (e) => {
218
219
  var r;
219
- if (B ? B(e) : x(t ? [...s, e] : e), t) {
220
- z(""), A(), (r = N.current) == null || r.focus();
220
+ if (B ? B(e) : g(t ? [...i, e] : e), t) {
221
+ F(""), p(), (r = D.current) == null || r.focus();
221
222
  return;
222
223
  }
223
- m ? u == null || u(e) : (T(""), F(null)), A();
224
+ b ? u == null || u(e) : (T(""), C(null)), p();
224
225
  },
225
226
  [
226
227
  B,
227
228
  t,
228
- s,
229
- x,
230
- z,
231
- m,
229
+ i,
230
+ g,
231
+ F,
232
+ b,
232
233
  u,
233
- A
234
+ p
234
235
  ]
235
- ), ur = d(
236
+ ), fr = d(
236
237
  (e) => {
237
238
  e.kind === "create" ? fe(e.inputValue) : ue(e.option);
238
239
  },
239
240
  [fe, ue]
240
- ), fr = d(() => {
241
+ ), Me = d(() => {
241
242
  var e;
242
- x(null), m ? u == null || u("") : (T(""), F(null)), (e = N.current) == null || e.focus();
243
- }, [x, m, u]), Me = d(
243
+ g(null), b ? u == null || u("") : (T(""), C(null)), (e = D.current) == null || e.focus();
244
+ }, [g, b, u]), Ee = d(
244
245
  (e) => {
245
- t && x(s.filter((r) => r !== e));
246
+ t && g(i.filter((r) => r !== e));
246
247
  },
247
- [t, s, x]
248
+ [t, i, g]
248
249
  ), Ie = d(
249
250
  (e) => {
250
251
  q.current = !1;
251
- const r = i.map((l, _) => ({ row: l, i: _ })).filter(({ row: l }) => !W(l));
252
+ const r = s.map((a, f) => ({ row: a, i: f })).filter(({ row: a }) => !W(a));
252
253
  if (r.length === 0) {
253
254
  y(-1);
254
255
  return;
255
256
  }
256
- y((l) => {
257
- const _ = r.findIndex(({ i: P }) => P === l), f = _ < 0 ? e > 0 ? 0 : r.length - 1 : (_ + e + r.length) % r.length;
258
- return r[f].i;
257
+ y((a) => {
258
+ const f = r.findIndex(({ i: Z }) => Z === a), k = f < 0 ? e > 0 ? 0 : r.length - 1 : (f + e + r.length) % r.length;
259
+ return r[k].i;
259
260
  });
260
261
  },
261
- [i]
262
+ [s]
262
263
  );
263
264
  de(() => {
264
- var r, l;
265
- if (!c || h < 0) return;
265
+ var r, a;
266
+ if (!c || x < 0) return;
266
267
  if (q.current) {
267
268
  q.current = !1;
268
269
  return;
269
270
  }
270
- const e = i[h];
271
- e && ((l = (r = document.getElementById(D(e))) == null ? void 0 : r.scrollIntoView) == null || l.call(r, { block: "nearest" }));
272
- }, [c, h, i, D]);
271
+ const e = s[x];
272
+ e && ((a = (r = document.getElementById(w(e))) == null ? void 0 : r.scrollIntoView) == null || a.call(r, { block: "nearest" }));
273
+ }, [c, x, s, w]);
273
274
  const dr = (e) => {
274
275
  $();
275
276
  const r = e.target.value;
276
- z(r), c || H(), y(0);
277
+ F(r), c || H(), y(0);
277
278
  }, $ = () => {
278
279
  L.current !== null && (cancelAnimationFrame(L.current), L.current = null);
279
280
  };
280
281
  de(() => $, []);
281
282
  const mr = () => {
282
- ye(!0), Ue && H(), !t && !m && X && ($(), L.current = requestAnimationFrame(() => {
283
+ pe(!0), Ue && H(), !t && !b && Q && ($(), L.current = requestAnimationFrame(() => {
283
284
  var e;
284
- L.current = null, (e = N.current) == null || e.select();
285
+ L.current = null, (e = D.current) == null || e.select();
285
286
  }));
286
287
  }, Ve = (e) => {
287
- var l;
288
+ var a;
288
289
  const r = e.relatedTarget;
289
- r && ((l = le.current) != null && l.contains(r)) || ($(), ye(!1));
290
+ r && ((a = ae.current) != null && a.contains(r)) || ($(), pe(!1));
290
291
  }, br = (e) => {
291
- if (!g)
292
+ if (!_)
292
293
  switch ($(), e.key) {
293
294
  case "ArrowDown":
294
295
  e.preventDefault(), c ? Ie(1) : H();
@@ -297,8 +298,8 @@ const yn = Mr(function({
297
298
  if (e.preventDefault(), c)
298
299
  Ie(-1);
299
300
  else {
300
- for (let r = i.length - 1; r >= 0; r--)
301
- if (!W(i[r])) {
301
+ for (let r = s.length - 1; r >= 0; r--)
302
+ if (!W(s[r])) {
302
303
  y(r);
303
304
  break;
304
305
  }
@@ -306,34 +307,35 @@ const yn = Mr(function({
306
307
  }
307
308
  break;
308
309
  case "Home":
309
- c && i.length > 0 && (e.preventDefault(), y(
310
+ c && s.length > 0 && (e.preventDefault(), y(
310
311
  Math.max(
311
312
  0,
312
- i.findIndex((r) => !W(r))
313
+ s.findIndex((r) => !W(r))
313
314
  )
314
315
  ));
315
316
  break;
316
317
  case "End":
317
- if (c && i.length > 0) {
318
+ if (c && s.length > 0) {
318
319
  e.preventDefault();
319
- for (let r = i.length - 1; r >= 0; r--)
320
- if (!W(i[r])) {
320
+ for (let r = s.length - 1; r >= 0; r--)
321
+ if (!W(s[r])) {
321
322
  y(r);
322
323
  break;
323
324
  }
324
325
  }
325
326
  break;
326
327
  case "Enter":
327
- c && h >= 0 && i[h] && (e.preventDefault(), ur(i[h]));
328
+ if (e.nativeEvent.isComposing || e.keyCode === 229) break;
329
+ (c || !qe) && (e.preventDefault(), e.stopPropagation()), c && x >= 0 && s[x] && fr(s[x]);
328
330
  break;
329
331
  case "Escape":
330
- c && (e.preventDefault(), A());
332
+ c && (e.preventDefault(), e.stopPropagation(), p());
331
333
  break;
332
334
  case "Backspace":
333
- t && ie === "" && s.length > 0 && (e.preventDefault(), Me(s[s.length - 1]));
335
+ t && se === "" && i.length > 0 && (e.preventDefault(), Ee(i[i.length - 1]));
334
336
  break;
335
337
  case "Tab":
336
- A();
338
+ p();
337
339
  break;
338
340
  }
339
341
  }, vr = (e) => {
@@ -342,63 +344,67 @@ const yn = Mr(function({
342
344
  Ve(e), re == null || re(e);
343
345
  }, xr = (e) => {
344
346
  br(e), ne == null || ne(e);
345
- }, _r = (e) => {
347
+ }, gr = (e) => {
346
348
  var r;
347
- g || e.target.closest("[data-chip], [data-combobox-clear]") || (e.target !== N.current && (e.preventDefault(), (r = N.current) == null || r.focus()), c || H());
348
- }, Re = t ? s.length > 0 : v != null && v !== "", gr = ie.length > 0, pr = je && !t && Re && !g, yr = tr || c || Re || gr, Se = h >= 0 ? i[h] : void 0, Ar = Se != null ? D(Se) : void 0, Z = V(() => {
349
+ _ || e.target.closest("[data-chip], [data-combobox-clear]") || (e.target !== D.current && (e.preventDefault(), (r = D.current) == null || r.focus()), c || H());
350
+ }, _r = (e) => {
351
+ e.target.closest(
352
+ 'input, textarea, select, [contenteditable="true"]'
353
+ ) || e.preventDefault();
354
+ }, Re = t ? i.length > 0 : h != null && h !== "", yr = se.length > 0, pr = je && !t && Re && !_, kr = ar || c || Re || yr, Se = x >= 0 ? s[x] : void 0, Ar = Se != null ? w(Se) : void 0, X = I(() => {
349
355
  if (!t) return [];
350
- if (k == null) {
351
- const e = b.filter((l) => s.includes(l.value));
352
- if (!R) return e;
353
- const r = new Set(e.map((l) => l.value));
356
+ if (A == null) {
357
+ const e = v.filter((a) => i.includes(a.value));
358
+ if (!V) return e;
359
+ const r = new Set(e.map((a) => a.value));
354
360
  return [
355
361
  ...e,
356
- ...s.filter((l) => !r.has(l)).map((l) => ({ value: l, label: l }))
362
+ ...i.filter((a) => !r.has(a)).map((a) => ({ value: a, label: a }))
357
363
  ];
358
364
  }
359
- return s.map(Q).filter((e) => e != null);
365
+ return i.map(K).filter((e) => e != null);
360
366
  }, [
361
367
  t,
362
- k,
363
- b,
364
- s,
365
- R,
366
- Q
367
- ]), kr = o[`combobox--size-${Qr(K)}`], Nr = t && Z.length > 0, wr = [
368
+ A,
369
+ v,
370
+ i,
371
+ V,
372
+ K
373
+ ]), Dr = o[`combobox--size-${Kr(P)}`], Nr = t && X.length > 0, wr = [
368
374
  o.combobox,
369
- kr,
375
+ Dr,
370
376
  he ? o["combobox--invalid"] : "",
371
- w != null && yr ? o["combobox--label-floated"] : "",
377
+ N != null && kr ? o["combobox--label-floated"] : "",
372
378
  J != null ? o["combobox--has-leading-icon"] : "",
373
379
  Nr ? o["combobox--has-chips"] : "",
374
380
  c ? o["combobox--open"] : "",
375
- g ? o["combobox--disabled"] : "",
381
+ _ ? o["combobox--disabled"] : "",
376
382
  Xe
377
383
  ].filter(Boolean).join(" ");
378
- return /* @__PURE__ */ M("div", { className: wr, ref: le, children: [
379
- /* @__PURE__ */ M("div", { className: o.combobox__wrapper, ref: ge, children: [
380
- w != null && /* @__PURE__ */ a("label", { className: o.combobox__label, htmlFor: te, children: w }),
384
+ return /* @__PURE__ */ M("div", { className: wr, ref: ae, children: [
385
+ /* @__PURE__ */ M("div", { className: o.combobox__wrapper, ref: _e, children: [
386
+ N != null && /* @__PURE__ */ l("label", { className: o.combobox__label, htmlFor: te, children: N }),
381
387
  /* @__PURE__ */ M(
382
388
  "div",
383
389
  {
384
390
  className: o.combobox__inner,
385
- onMouseDown: _r,
391
+ onMouseDown: gr,
386
392
  children: [
387
- J != null && /* @__PURE__ */ a("span", { className: o["combobox__leading-icon"], "aria-hidden": !0, children: /* @__PURE__ */ a(Lr.Provider, { value: { size: "16" }, children: J }) }),
393
+ J != null && /* @__PURE__ */ l("span", { className: o["combobox__leading-icon"], "aria-hidden": !0, children: /* @__PURE__ */ l(Lr.Provider, { value: { size: "16" }, children: J }) }),
388
394
  /* @__PURE__ */ M("div", { className: o.combobox__value, children: [
389
- t && Z.length > 0 && /* @__PURE__ */ a(
395
+ t && X.length > 0 && /* @__PURE__ */ l(
390
396
  Tr,
391
397
  {
392
- "aria-label": Ge ?? Pr(w),
393
- disabled: g,
394
- children: Z.map((e) => /* @__PURE__ */ a(
395
- Er,
398
+ "aria-label": Ke ?? Zr(N),
399
+ disabled: _,
400
+ children: X.map((e) => /* @__PURE__ */ l(
401
+ Sr,
396
402
  {
397
- size: Xr[K],
403
+ size: Qr[P],
398
404
  leadingAvatar: e.leadingAvatar,
399
405
  leadingIcon: e.leadingAvatar == null ? e.leadingVisual : void 0,
400
- onRemove: g ? void 0 : (r) => {
401
- r.stopPropagation(), Me(e.value);
406
+ onRemove: _ ? void 0 : (r) => {
407
+ r.stopPropagation(), Ee(e.value);
402
408
  },
403
409
  children: e.label
404
410
  },
@@ -406,26 +412,26 @@ const yn = Mr(function({
406
412
  ))
407
413
  }
408
414
  ),
409
- /* @__PURE__ */ a(
415
+ /* @__PURE__ */ l(
410
416
  "input",
411
417
  {
412
- ...Ke,
413
- ref: er,
418
+ ...Be,
419
+ ref: rr,
414
420
  id: te,
415
421
  className: o.combobox__control,
416
422
  type: "text",
417
423
  role: "combobox",
418
424
  autoComplete: "off",
419
425
  spellCheck: !1,
420
- disabled: g,
421
- placeholder: t && Z.length > 0 ? void 0 : Ce,
422
- value: ie,
423
- "aria-label": _e,
424
- "aria-describedby": Pe || void 0,
425
- "aria-required": We ? !0 : void 0,
426
+ disabled: _,
427
+ placeholder: t && X.length > 0 ? void 0 : ze,
428
+ value: se,
429
+ "aria-label": ge,
430
+ "aria-describedby": We || void 0,
431
+ "aria-required": Ye ? !0 : void 0,
426
432
  "aria-invalid": he ? !0 : void 0,
427
433
  "aria-expanded": c,
428
- "aria-controls": E,
434
+ "aria-controls": S,
429
435
  "aria-autocomplete": "list",
430
436
  "aria-activedescendant": Ar,
431
437
  "aria-busy": xe || void 0,
@@ -436,102 +442,104 @@ const yn = Mr(function({
436
442
  }
437
443
  )
438
444
  ] }),
439
- pr && /* @__PURE__ */ a(
445
+ pr && /* @__PURE__ */ l(
440
446
  "button",
441
447
  {
442
- ...p,
448
+ ...m,
443
449
  type: "button",
444
450
  className: Gr(
445
451
  o.combobox__clear,
446
- p == null ? void 0 : p.className
452
+ m == null ? void 0 : m.className
447
453
  ),
448
- "aria-label": qe,
454
+ "aria-label": Ge,
449
455
  "data-combobox-clear": "",
450
- onClick: fr,
456
+ onClick: Me,
457
+ onKeyDown: (e) => {
458
+ var r;
459
+ e.key === "Enter" && (e.preventDefault(), e.stopPropagation(), Me()), (r = m == null ? void 0 : m.onKeyDown) == null || r.call(m, e);
460
+ },
451
461
  onBlur: (e) => {
452
462
  var r;
453
- (r = p == null ? void 0 : p.onBlur) == null || r.call(p, e), Ve(e);
463
+ (r = m == null ? void 0 : m.onBlur) == null || r.call(m, e), Ve(e);
454
464
  },
455
- children: /* @__PURE__ */ a(me, { size: Zr[K], glyph: /* @__PURE__ */ a(Rr, {}) })
465
+ children: /* @__PURE__ */ l(me, { size: Xr[P], glyph: /* @__PURE__ */ l(Vr, {}) })
456
466
  }
457
467
  ),
458
- /* @__PURE__ */ a("span", { className: o["combobox__trailing-icon"], "aria-hidden": !0, children: /* @__PURE__ */ a(me, { size: "12", glyph: /* @__PURE__ */ a(Vr, {}) }) })
468
+ /* @__PURE__ */ l("span", { className: o["combobox__trailing-icon"], "aria-hidden": !0, children: /* @__PURE__ */ l(me, { size: "12", glyph: /* @__PURE__ */ l(Ir, {}) }) })
459
469
  ]
460
470
  }
461
471
  )
462
472
  ] }),
463
- we && ir(
464
- /* @__PURE__ */ a(
473
+ Ne && cr(
474
+ // eslint-disable-next-line jsx-a11y/no-static-element-interactions -- keeps focus on the input for presses anywhere in the menu
475
+ /* @__PURE__ */ l(
465
476
  "div",
466
477
  {
467
- ref: De,
478
+ ref: we,
468
479
  className: [
469
480
  o.combobox__popup,
470
- ar === "above" ? o["combobox__popup--above"] : "",
481
+ or === "above" ? o["combobox__popup--above"] : "",
471
482
  lr ? o["combobox__popup--visible"] : ""
472
483
  ].filter(Boolean).join(" "),
473
484
  style: sr,
474
- children: /* @__PURE__ */ a(Fr, { className: o.combobox__menu, children: /* @__PURE__ */ M(zr, { maxHeight: or, children: [
475
- i.length > 0 && /* @__PURE__ */ a(
485
+ onMouseDown: _r,
486
+ children: /* @__PURE__ */ l(Cr, { className: o.combobox__menu, children: /* @__PURE__ */ M(Fr, { maxHeight: ir, children: [
487
+ s.length > 0 && /* @__PURE__ */ l(
476
488
  "ul",
477
489
  {
478
- id: E,
490
+ id: S,
479
491
  className: o.combobox__list,
480
492
  role: "listbox",
481
493
  "aria-multiselectable": t || void 0,
482
- "aria-label": typeof w == "string" ? w : _e ?? Qe,
483
- children: i.map((e, r) => {
484
- const l = r === h, _ = (Dr) => {
485
- Dr.preventDefault();
486
- };
494
+ "aria-label": typeof N == "string" ? N : ge ?? Qe,
495
+ children: s.map((e, r) => {
496
+ const a = r === x;
487
497
  if (e.kind === "create")
488
- return /* @__PURE__ */ a(
498
+ return /* @__PURE__ */ l(
489
499
  "li",
490
500
  {
491
501
  className: o.combobox__option,
492
502
  role: "presentation",
493
- children: /* @__PURE__ */ a(
503
+ children: /* @__PURE__ */ l(
494
504
  Te,
495
505
  {
496
- id: D(e),
506
+ id: w(e),
497
507
  role: "option",
498
508
  label: Oe(e.inputValue),
499
- leadingVisual: /* @__PURE__ */ a(me, { glyph: /* @__PURE__ */ a(Sr, {}) }),
500
- active: l,
509
+ leadingVisual: /* @__PURE__ */ l(me, { glyph: /* @__PURE__ */ l(Rr, {}) }),
510
+ active: a,
501
511
  "aria-selected": !1,
502
- onMouseDown: _,
503
- onMouseEnter: () => Ae(r),
512
+ onMouseEnter: () => ke(r),
504
513
  onClick: () => fe(e.inputValue)
505
514
  }
506
515
  )
507
516
  },
508
- D(e)
517
+ w(e)
509
518
  );
510
- const { option: f } = e, P = cr(f.value), Ee = Br(f);
511
- return /* @__PURE__ */ a(
519
+ const { option: f } = e, k = ur(f.value), Z = Br(f);
520
+ return /* @__PURE__ */ l(
512
521
  "li",
513
522
  {
514
523
  className: o.combobox__option,
515
524
  role: "presentation",
516
- children: /* @__PURE__ */ a(
525
+ children: /* @__PURE__ */ l(
517
526
  Te,
518
527
  {
519
528
  ...qr(
520
- Fe,
529
+ Ce,
521
530
  f.menuItemProps
522
531
  ),
523
- id: D(e),
532
+ id: w(e),
524
533
  role: "option",
525
534
  label: f.label,
526
535
  secondaryLabel: f.secondaryLabel,
527
- leadingElement: Ee != null,
528
- leadingVisual: Ee,
529
- trailingElement: P,
530
- active: l,
536
+ leadingElement: Z != null,
537
+ leadingVisual: Z,
538
+ trailingElement: k,
539
+ active: a,
531
540
  disabled: f.disabled,
532
- "aria-selected": P,
533
- onMouseDown: _,
534
- onMouseEnter: () => Ae(r),
541
+ "aria-selected": k,
542
+ onMouseEnter: () => ke(r),
535
543
  onClick: () => ue(f)
536
544
  }
537
545
  )
@@ -542,9 +550,9 @@ const yn = Mr(function({
542
550
  }
543
551
  ),
544
552
  xe ? /* @__PURE__ */ M("div", { className: o.combobox__loading, role: "status", children: [
545
- /* @__PURE__ */ a(Cr, { size: "16", "aria-hidden": !0 }),
546
- /* @__PURE__ */ a("span", { children: $e })
547
- ] }) : i.length === 0 && /* @__PURE__ */ a("p", { className: o.combobox__empty, children: He })
553
+ /* @__PURE__ */ l(zr, { size: "16", "aria-hidden": !0 }),
554
+ /* @__PURE__ */ l("span", { children: $e })
555
+ ] }) : s.length === 0 && /* @__PURE__ */ l("p", { className: o.combobox__empty, children: He })
548
556
  ] }) })
549
557
  }
550
558
  )
@@ -552,6 +560,6 @@ const yn = Mr(function({
552
560
  ] });
553
561
  });
554
562
  export {
555
- yn as default
563
+ pn as default
556
564
  };
557
565
  //# sourceMappingURL=Combobox.js.map