@pismo/marola 1.0.0-beta.7 → 1.0.0-beta.8

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 (43) hide show
  1. package/dist/{Button-2b1peDFT.js → Button-DiLqcAJG.js} +2 -2
  2. package/dist/{ClickAwayListener-BSW-Nd-y.js → ClickAwayListener-BaJ-OV_7.js} +4 -3
  3. package/dist/Input.module-iOYlI_1w.js +405 -0
  4. package/dist/{Popup-B6ZSGIEI.js → Popup-lLWZt2wk.js} +3 -3
  5. package/dist/{Portal-DIeBsWdL.js → Portal-B_Es6eUL.js} +2 -2
  6. package/dist/{Toggle-BWF0-SPB.js → Toggle-BSvvbKBp.js} +2 -2
  7. package/dist/assets/Autocomplete.css +1 -0
  8. package/dist/{combineHooksSlotProps-DVjg9PRh.js → combineHooksSlotProps-BtBYUV_B.js} +1 -1
  9. package/dist/components/Autocomplete/Autocomplete.d.ts +50 -0
  10. package/dist/components/Autocomplete/Autocomplete.js +689 -0
  11. package/dist/components/Autocomplete/Autocomplete.stories.d.ts +45 -0
  12. package/dist/components/Button/Button.js +1 -1
  13. package/dist/components/Chip/Chip.js +3 -3
  14. package/dist/components/Dialog/CloseIconButton.js +1 -1
  15. package/dist/components/Dialog/Dialog.js +12 -11
  16. package/dist/components/Dialog/Dialog.stories.d.ts +42 -42
  17. package/dist/components/EllipsisTooltip/EllipsisTooltip.stories.d.ts +1 -1
  18. package/dist/components/IconButton/IconButton.js +1 -1
  19. package/dist/components/Input/Input.js +74 -471
  20. package/dist/components/RowItem/RowItem.js +2 -2
  21. package/dist/components/Select/Select.js +7 -6
  22. package/dist/components/Snackbar/Snackbar.js +4 -4
  23. package/dist/components/Snackbar/Snackbar.stories.d.ts +3 -3
  24. package/dist/components/Tabs/Tab.js +18 -17
  25. package/dist/components/Tabs/TabPanel.js +27 -26
  26. package/dist/components/Tabs/Tabs.js +25 -25
  27. package/dist/components/Toggle/Toggle.js +1 -1
  28. package/dist/components/ToggleGroup/Toggle.js +2 -2
  29. package/dist/components/ToggleGroup/ToggleGroup.js +1 -1
  30. package/dist/components/Tooltip/Tooltip.js +3 -3
  31. package/dist/{index-CjW42-M-.js → index-D3Wj0eid.js} +1 -1
  32. package/dist/main.d.ts +1 -0
  33. package/dist/main.js +77 -75
  34. package/dist/ownerDocument-B61GUaFs.js +33 -0
  35. package/dist/{useButton-DNk3wrQp.js → useButton-Bn3MNH8I.js} +1 -1
  36. package/dist/useCompoundItem-B7Eo_qZk.js +68 -0
  37. package/dist/useEventCallback-BAQJJ3ye.js +14 -0
  38. package/dist/useId-BW-oWmul.js +19 -0
  39. package/dist/{useList-B0hog_3-.js → useList-BpJT77u3.js} +2 -2
  40. package/dist/{index-CH45lKw7.js → useSlotProps-kRhf7Gil.js} +93 -94
  41. package/package.json +1 -1
  42. package/dist/useCompoundItem-D1iRfg8D.js +0 -84
  43. package/dist/useEventCallback-xTG9piMa.js +0 -45
@@ -1,7 +1,7 @@
1
- import { g as T, a as _, _ as x, b as i, c as B, P as e, d as O, e as D } from "./index-CH45lKw7.js";
1
+ import { g as T, a as _, _ as x, b as i, c as B, P as e, d as O, e as D } from "./useSlotProps-kRhf7Gil.js";
2
2
  import * as c from "react";
3
3
  import { jsx as F } from "react/jsx-runtime";
4
- import { u as S } from "./useButton-DNk3wrQp.js";
4
+ import { u as S } from "./useButton-Bn3MNH8I.js";
5
5
  const m = "Button";
6
6
  function U(s) {
7
7
  return T(m, s);
@@ -1,8 +1,9 @@
1
1
  import * as t from "react";
2
- import { u as C, P as f } from "./index-CH45lKw7.js";
2
+ import { u as C, P as f } from "./useSlotProps-kRhf7Gil.js";
3
3
  import { jsx as w } from "react/jsx-runtime";
4
- import { u as L, o as h, e as b } from "./useEventCallback-xTG9piMa.js";
5
- import { e as g } from "./index-CjW42-M-.js";
4
+ import { u as L } from "./useEventCallback-BAQJJ3ye.js";
5
+ import { o as h, e as b } from "./ownerDocument-B61GUaFs.js";
6
+ import { e as g } from "./index-D3Wj0eid.js";
6
7
  function T(c) {
7
8
  return c.substring(2).toLowerCase();
8
9
  }
@@ -0,0 +1,405 @@
1
+ import './assets/Input.css';
2
+ import { g as ae, a as se, u as le, f as A, b as u, _ as ue, c as Y, i as ie, P as e, d as pe, e as de } from "./useSlotProps-kRhf7Gil.js";
3
+ import * as _ from "react";
4
+ import { jsxs as ce, jsx as _e } from "react/jsx-runtime";
5
+ const W = "Input";
6
+ function be(a) {
7
+ return ae(W, a);
8
+ }
9
+ se(W, ["root", "formControl", "focused", "disabled", "error", "multiline", "input", "inputMultiline", "inputTypeSearch", "adornedStart", "adornedEnd"]);
10
+ function fe(a) {
11
+ let s = "https://mui.com/production-error/?code=" + a;
12
+ for (let i = 1; i < arguments.length; i += 1)
13
+ s += "&args[]=" + encodeURIComponent(arguments[i]);
14
+ return "Minified MUI error #" + a + "; visit " + s + " for the full message.";
15
+ }
16
+ const z = /* @__PURE__ */ _.createContext(void 0);
17
+ process.env.NODE_ENV !== "production" && (z.displayName = "FormControlContext");
18
+ function ye() {
19
+ return _.useContext(z);
20
+ }
21
+ function he(a = {}) {
22
+ const {
23
+ defaultValue: s,
24
+ disabled: i = !1,
25
+ error: y = !1,
26
+ onBlur: p,
27
+ onChange: b,
28
+ onFocus: v,
29
+ required: C = !1,
30
+ value: E,
31
+ inputRef: I
32
+ } = a, t = ye();
33
+ let k, c, h, m, f;
34
+ if (t) {
35
+ var R, d, N;
36
+ if (k = void 0, c = (R = t.disabled) != null ? R : !1, h = (d = t.error) != null ? d : !1, m = (N = t.required) != null ? N : !1, f = t.value, process.env.NODE_ENV !== "production") {
37
+ const o = ["defaultValue", "disabled", "error", "required", "value"].filter((r) => a[r] !== void 0);
38
+ o.length > 0 && console.warn(["MUI: You have set props on an input that is inside a FormControl.", "Set these props on a FormControl instead. Otherwise they will be ignored.", `Ignored props: ${o.join(", ")}`].join(`
39
+ `));
40
+ }
41
+ } else
42
+ k = s, c = i, h = y, m = C, f = E;
43
+ const {
44
+ current: O
45
+ } = _.useRef(f != null), T = _.useCallback((o) => {
46
+ process.env.NODE_ENV !== "production" && o && o.nodeName !== "INPUT" && !o.focus && console.error(["MUI: You have provided a `slots.input` to the input component", "that does not correctly handle the `ref` prop.", "Make sure the `ref` prop is called with a HTMLInputElement."].join(`
47
+ `));
48
+ }, []), g = _.useRef(null), F = le(g, I, T), [w, x] = _.useState(!1);
49
+ _.useEffect(() => {
50
+ !t && c && w && (x(!1), p == null || p());
51
+ }, [t, c, w, p]);
52
+ const B = (o) => (r) => {
53
+ var n;
54
+ if (t != null && t.disabled) {
55
+ r.stopPropagation();
56
+ return;
57
+ }
58
+ if ((n = o.onFocus) == null || n.call(o, r), t && t.onFocus) {
59
+ var l;
60
+ t == null || (l = t.onFocus) == null || l.call(t);
61
+ } else
62
+ x(!0);
63
+ }, S = (o) => (r) => {
64
+ var n;
65
+ (n = o.onBlur) == null || n.call(o, r), t && t.onBlur ? t.onBlur() : x(!1);
66
+ }, U = (o) => (r, ...n) => {
67
+ var l, P;
68
+ if (!O && (r.target || g.current) == null)
69
+ throw new Error(process.env.NODE_ENV !== "production" ? "MUI: Expected valid input target. Did you use a custom `slots.input` and forget to forward refs? See https://mui.com/r/input-component-ref-interface for more info." : fe(17));
70
+ t == null || (l = t.onChange) == null || l.call(t, r), (P = o.onChange) == null || P.call(o, r, ...n);
71
+ }, V = (o) => (r) => {
72
+ var n;
73
+ g.current && r.currentTarget === r.target && g.current.focus(), (n = o.onClick) == null || n.call(o, r);
74
+ };
75
+ return {
76
+ disabled: c,
77
+ error: h,
78
+ focused: w,
79
+ formControlContext: t,
80
+ getInputProps: (o = {}) => {
81
+ const n = u({}, {
82
+ onBlur: p,
83
+ onChange: b,
84
+ onFocus: v
85
+ }, A(o)), l = u({}, n, {
86
+ onBlur: S(n),
87
+ onChange: U(n),
88
+ onFocus: B(n)
89
+ });
90
+ return u({}, l, {
91
+ "aria-invalid": h || void 0,
92
+ defaultValue: k,
93
+ value: f,
94
+ required: m,
95
+ disabled: c
96
+ }, o, {
97
+ ref: F
98
+ }, l);
99
+ },
100
+ getRootProps: (o = {}) => {
101
+ const r = A(a, ["onBlur", "onChange", "onFocus"]), n = u({}, r, A(o));
102
+ return u({}, o, n, {
103
+ onClick: V(n)
104
+ });
105
+ },
106
+ inputRef: F,
107
+ required: m,
108
+ value: f
109
+ };
110
+ }
111
+ const me = ["aria-describedby", "aria-label", "aria-labelledby", "autoComplete", "autoFocus", "className", "defaultValue", "disabled", "endAdornment", "error", "id", "multiline", "name", "onClick", "onChange", "onKeyDown", "onKeyUp", "onFocus", "onBlur", "placeholder", "readOnly", "required", "startAdornment", "value", "type", "rows", "slotProps", "slots", "minRows", "maxRows"], ge = (a) => {
112
+ const {
113
+ disabled: s,
114
+ error: i,
115
+ focused: y,
116
+ formControlContext: p,
117
+ multiline: b,
118
+ startAdornment: v,
119
+ endAdornment: C
120
+ } = a;
121
+ return pe({
122
+ root: ["root", s && "disabled", i && "error", y && "focused", !!p && "formControl", b && "multiline", !!v && "adornedStart", !!C && "adornedEnd"],
123
+ input: ["input", s && "disabled", b && "multiline"]
124
+ }, de(be));
125
+ }, ve = /* @__PURE__ */ _.forwardRef(function(s, i) {
126
+ var y, p, b;
127
+ const {
128
+ "aria-describedby": v,
129
+ "aria-label": C,
130
+ "aria-labelledby": E,
131
+ autoComplete: I,
132
+ autoFocus: t,
133
+ className: k,
134
+ defaultValue: c,
135
+ disabled: h,
136
+ endAdornment: m,
137
+ error: f,
138
+ id: R,
139
+ multiline: d = !1,
140
+ name: N,
141
+ onClick: O,
142
+ onChange: T,
143
+ onKeyDown: g,
144
+ onKeyUp: F,
145
+ onFocus: w,
146
+ onBlur: x,
147
+ placeholder: B,
148
+ readOnly: S,
149
+ required: U,
150
+ startAdornment: V,
151
+ value: H,
152
+ type: M,
153
+ rows: o,
154
+ slotProps: r = {},
155
+ slots: n = {},
156
+ minRows: l,
157
+ maxRows: P
158
+ } = s, q = ue(s, me), {
159
+ getRootProps: G,
160
+ getInputProps: J,
161
+ focused: Q,
162
+ formControlContext: X,
163
+ error: Z,
164
+ disabled: ee
165
+ } = he({
166
+ disabled: h,
167
+ defaultValue: c,
168
+ error: f,
169
+ onBlur: x,
170
+ onClick: O,
171
+ onChange: T,
172
+ onFocus: w,
173
+ required: U,
174
+ value: H
175
+ }), K = d ? void 0 : M ?? "text", D = u({}, s, {
176
+ disabled: ee,
177
+ error: Z,
178
+ focused: Q,
179
+ formControlContext: X,
180
+ multiline: d,
181
+ type: K
182
+ }), L = ge(D), oe = {
183
+ "aria-describedby": v,
184
+ "aria-label": C,
185
+ "aria-labelledby": E,
186
+ autoComplete: I,
187
+ autoFocus: t,
188
+ id: R,
189
+ onKeyDown: g,
190
+ onKeyUp: F,
191
+ name: N,
192
+ placeholder: B,
193
+ readOnly: S,
194
+ type: K
195
+ }, $ = (y = n.root) != null ? y : "div", te = Y({
196
+ elementType: $,
197
+ getSlotProps: G,
198
+ externalSlotProps: r.root,
199
+ externalForwardedProps: q,
200
+ additionalProps: {
201
+ ref: i
202
+ },
203
+ ownerState: D,
204
+ className: [L.root, k]
205
+ }), j = d ? (p = n.textarea) != null ? p : "textarea" : (b = n.input) != null ? b : "input", ne = Y({
206
+ elementType: j,
207
+ getSlotProps: (re) => J(u({}, oe, re)),
208
+ externalSlotProps: r.input,
209
+ additionalProps: u({
210
+ rows: d ? o : void 0
211
+ }, d && !ie(j) && {
212
+ minRows: o || l,
213
+ maxRows: o || P
214
+ }),
215
+ ownerState: D,
216
+ className: L.input
217
+ });
218
+ return process.env.NODE_ENV !== "production" && d && o && (l || P) && console.warn("MUI: You can not use the `minRows` or `maxRows` props when the input `rows` prop is set."), /* @__PURE__ */ ce($, u({}, te, {
219
+ children: [V, /* @__PURE__ */ _e(j, u({}, ne)), m]
220
+ }));
221
+ });
222
+ process.env.NODE_ENV !== "production" && (ve.propTypes = {
223
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
224
+ // │ These PropTypes are generated from the TypeScript type definitions. │
225
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
226
+ // └─────────────────────────────────────────────────────────────────────┘
227
+ /**
228
+ * @ignore
229
+ */
230
+ "aria-describedby": e.string,
231
+ /**
232
+ * @ignore
233
+ */
234
+ "aria-label": e.string,
235
+ /**
236
+ * @ignore
237
+ */
238
+ "aria-labelledby": e.string,
239
+ /**
240
+ * This prop helps users to fill forms faster, especially on mobile devices.
241
+ * The name can be confusing, as it's more like an autofill.
242
+ * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
243
+ */
244
+ autoComplete: e.string,
245
+ /**
246
+ * If `true`, the `input` element is focused during the first mount.
247
+ */
248
+ autoFocus: e.bool,
249
+ /**
250
+ * Class name applied to the root element.
251
+ */
252
+ className: e.string,
253
+ /**
254
+ * The default value. Use when the component is not controlled.
255
+ */
256
+ defaultValue: e.any,
257
+ /**
258
+ * If `true`, the component is disabled.
259
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
260
+ */
261
+ disabled: e.bool,
262
+ /**
263
+ * Trailing adornment for this input.
264
+ */
265
+ endAdornment: e.node,
266
+ /**
267
+ * If `true`, the `input` will indicate an error by setting the `aria-invalid` attribute on the input and the `baseui--error` class on the root element.
268
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
269
+ */
270
+ error: e.bool,
271
+ /**
272
+ * The id of the `input` element.
273
+ */
274
+ id: e.string,
275
+ /**
276
+ * @ignore
277
+ */
278
+ inputRef: e.oneOfType([e.func, e.shape({
279
+ current: e.object
280
+ })]),
281
+ /**
282
+ * Maximum number of rows to display when multiline option is set to true.
283
+ */
284
+ maxRows: e.number,
285
+ /**
286
+ * Minimum number of rows to display when multiline option is set to true.
287
+ */
288
+ minRows: e.number,
289
+ /**
290
+ * If `true`, a `textarea` element is rendered.
291
+ * @default false
292
+ */
293
+ multiline: e.bool,
294
+ /**
295
+ * Name attribute of the `input` element.
296
+ */
297
+ name: e.string,
298
+ /**
299
+ * @ignore
300
+ */
301
+ onBlur: e.func,
302
+ /**
303
+ * @ignore
304
+ */
305
+ onChange: e.func,
306
+ /**
307
+ * @ignore
308
+ */
309
+ onClick: e.func,
310
+ /**
311
+ * @ignore
312
+ */
313
+ onFocus: e.func,
314
+ /**
315
+ * @ignore
316
+ */
317
+ onKeyDown: e.func,
318
+ /**
319
+ * @ignore
320
+ */
321
+ onKeyUp: e.func,
322
+ /**
323
+ * The short hint displayed in the `input` before the user enters a value.
324
+ */
325
+ placeholder: e.string,
326
+ /**
327
+ * It prevents the user from changing the value of the field
328
+ * (not from interacting with the field).
329
+ */
330
+ readOnly: e.bool,
331
+ /**
332
+ * If `true`, the `input` element is required.
333
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
334
+ */
335
+ required: e.bool,
336
+ /**
337
+ * Number of rows to display when multiline option is set to true.
338
+ */
339
+ rows: e.number,
340
+ /**
341
+ * The props used for each slot inside the Input.
342
+ * @default {}
343
+ */
344
+ slotProps: e.shape({
345
+ input: e.oneOfType([e.func, e.object]),
346
+ root: e.oneOfType([e.func, e.object])
347
+ }),
348
+ /**
349
+ * The components used for each slot inside the InputBase.
350
+ * Either a string to use a HTML element or a component.
351
+ * @default {}
352
+ */
353
+ slots: e.shape({
354
+ input: e.elementType,
355
+ root: e.elementType,
356
+ textarea: e.elementType
357
+ }),
358
+ /**
359
+ * Leading adornment for this input.
360
+ */
361
+ startAdornment: e.node,
362
+ /**
363
+ * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).
364
+ * @default 'text'
365
+ */
366
+ type: e.oneOf(["button", "checkbox", "color", "date", "datetime-local", "email", "file", "hidden", "image", "month", "number", "password", "radio", "range", "reset", "search", "submit", "tel", "text", "time", "url", "week"]),
367
+ /**
368
+ * The value of the `input` element, required for a controlled component.
369
+ */
370
+ value: e.any
371
+ });
372
+ const Ce = "_input__label_19vkb_77", ke = "_input_19vkb_56", Pe = {
373
+ "u-typography-h1": "_u-typography-h1_19vkb_1",
374
+ "u-typography-h2": "_u-typography-h2_19vkb_8",
375
+ "u-typography-h3": "_u-typography-h3_19vkb_15",
376
+ "u-typography-h4": "_u-typography-h4_19vkb_22",
377
+ "u-typography-h5": "_u-typography-h5_19vkb_29",
378
+ "u-typography-h6": "_u-typography-h6_19vkb_36",
379
+ "u-typography-base": "_u-typography-base_19vkb_43",
380
+ "u-typography-base--xxl": "_u-typography-base--xxl_19vkb_48",
381
+ "u-typography-base--xl": "_u-typography-base--xl_19vkb_52",
382
+ "u-typography-base--lg": "_u-typography-base--lg_19vkb_56",
383
+ "input__input-el": "_input__input-el_19vkb_56",
384
+ "u-typography-base--sm": "_u-typography-base--sm_19vkb_60",
385
+ "u-typography-base--bold": "_u-typography-base--bold_19vkb_64",
386
+ "u-typography-base--strikethrough": "_u-typography-base--strikethrough_19vkb_67",
387
+ "u-typography-base--underlined": "_u-typography-base--underlined_19vkb_70",
388
+ "u-typography-base--strikethrough-underlined": "_u-typography-base--strikethrough-underlined_19vkb_73",
389
+ input__label: Ce,
390
+ "input__input-el-wrapper": "_input__input-el-wrapper_19vkb_82",
391
+ "input__left-icon": "_input__left-icon_19vkb_100",
392
+ "input__right-icon": "_input__right-icon_19vkb_100",
393
+ "input__messages-wrapper": "_input__messages-wrapper_19vkb_112",
394
+ "input__info-message": "_input__info-message_19vkb_120",
395
+ "input__error-message": "_input__error-message_19vkb_120",
396
+ "input__chars-counter": "_input__chars-counter_19vkb_131",
397
+ "input--disabled": "_input--disabled_19vkb_135",
398
+ input: ke,
399
+ "input--focused": "_input--focused_19vkb_141",
400
+ "input--error": "_input--error_19vkb_144"
401
+ };
402
+ export {
403
+ ve as I,
404
+ Pe as s
405
+ };
@@ -1,10 +1,10 @@
1
- import { g as jt, a as zt, _ as It, u as Ut, b as ut, c as Xt, P as x, d as Yt, e as Kt } from "./index-CH45lKw7.js";
1
+ import { g as jt, a as zt, _ as It, u as Ut, b as ut, c as Xt, P as x, d as Yt, e as Kt } from "./useSlotProps-kRhf7Gil.js";
2
2
  import * as b from "react";
3
3
  import { useLayoutEffect as Gt, useEffect as Jt } from "react";
4
- import { r as Qt } from "./index-CjW42-M-.js";
4
+ import { r as Qt } from "./index-D3Wj0eid.js";
5
5
  import { jsx as Z } from "react/jsx-runtime";
6
6
  import { u as Zt } from "./useEnhancedEffect-CJGo-L3B.js";
7
- import { P as qt, H as gt } from "./Portal-DIeBsWdL.js";
7
+ import { P as qt, H as gt } from "./Portal-B_Es6eUL.js";
8
8
  const et = Math.min, z = Math.max, nt = Math.round, q = Math.floor, H = (t) => ({
9
9
  x: t,
10
10
  y: t
@@ -1,6 +1,6 @@
1
1
  import * as o from "react";
2
- import { r as P, e as y } from "./index-CjW42-M-.js";
3
- import { u as T, s as a, P as i } from "./index-CH45lKw7.js";
2
+ import { r as P, e as y } from "./index-D3Wj0eid.js";
3
+ import { u as T, s as a, P as i } from "./useSlotProps-kRhf7Gil.js";
4
4
  import { jsx as c } from "react/jsx-runtime";
5
5
  import { u as f } from "./useEnhancedEffect-CJGo-L3B.js";
6
6
  function N(t, l, s, n, u) {
@@ -3,10 +3,10 @@ import { jsx as c, jsxs as k } from "react/jsx-runtime";
3
3
  import { forwardRef as y } from "react";
4
4
  import { c as i } from "./clsx-DB4S2d7J.js";
5
5
  import { Icon as N } from "./components/Icon/Icon.js";
6
+ import { Typography as x } from "./components/Typography/Typography.js";
6
7
  import "./components/Button/Button.js";
7
8
  import { Adornment as C } from "./components/Adornment/Adornment.js";
8
9
  import "./components/Dialog/Backdrop.js";
9
- import { Typography as x } from "./components/Typography/Typography.js";
10
10
  import "./components/IconButton/IconButton.js";
11
11
  import "./components/Select/Select.js";
12
12
  import "./components/Table/Table.js";
@@ -14,7 +14,7 @@ import "./components/Tabs/Tabs.js";
14
14
  import { s as g } from "./Group-B3p31ftp.js";
15
15
  import "./contexts/SnackbarProvider/SnackbarProvider.js";
16
16
  import { Skeleton as w } from "./components/Skeleton/Skeleton.js";
17
- import { B as I } from "./Button-2b1peDFT.js";
17
+ import { B as I } from "./Button-DiLqcAJG.js";
18
18
  const P = "_chip_ccpk4_60", S = "_chip__adornment_ccpk4_114", R = "_chip__remove_ccpk4_119", n = {
19
19
  "u-typography-h1": "_u-typography-h1_ccpk4_1",
20
20
  "u-typography-h2": "_u-typography-h2_ccpk4_8",
@@ -0,0 +1 @@
1
+ ._autocomplete_1gluy_1{margin-bottom:16px}._autocomplete__dropdown-list_1gluy_4{border:solid .0625rem var(--gray-25);border-radius:.375rem;margin-top:.1rem}._autocomplete__dropdown-item_1gluy_9{list-style-type:none;padding:.375rem;cursor:pointer}._autocomplete__dropdown-item_1gluy_9:hover{color:var(--accent)}
@@ -1,4 +1,4 @@
1
- import { f as E, b as a } from "./index-CH45lKw7.js";
1
+ import { f as E, b as a } from "./useSlotProps-kRhf7Gil.js";
2
2
  import * as r from "react";
3
3
  const f = {
4
4
  blur: "list:blur",
@@ -0,0 +1,50 @@
1
+ import { InputHTMLAttributes, ReactNode, SyntheticEvent } from 'react';
2
+
3
+ type AutocompleteProps<T> = InputHTMLAttributes<HTMLInputElement> & {
4
+ /** Label text */
5
+ label?: string;
6
+ /** Options array */
7
+ options?: Array<T>;
8
+ /** callback for new option selected */
9
+ onChange?: (event: SyntheticEvent<Element, Event>, newValue: T) => void;
10
+ /** Info message text */
11
+ infoMessage?: string;
12
+ /** Error message text */
13
+ errorMessage?: string;
14
+ /** Left icon element */
15
+ leftIcon?: ReactNode;
16
+ /** Right icon element */
17
+ rightIcon?: ReactNode;
18
+ /** Input type. Default: text */
19
+ type?: 'text' | 'password' | 'search';
20
+ /** Hide the chars counter */
21
+ hideCharsCounter?: boolean;
22
+ /** CSS classes to be applied on the container element */
23
+ classNameWrapper?: string;
24
+ /** CSS classes to be applied on the label element */
25
+ classNameLabel?: string;
26
+ /** CSS classes to be applied on the input element */
27
+ classNameInput?: string;
28
+ /** CSS classes to be applied on the info message element */
29
+ classNameInfoMessage?: string;
30
+ /** CSS classes to be applied on the error message element */
31
+ classNameErrorMessage?: string;
32
+ /** CSS classes to be applied on the chars counter element */
33
+ classNameCharsCounter?: string;
34
+ /** Id to be applied as `data-testid` on the container element */
35
+ 'data-testid-wrapper'?: string;
36
+ /** Id to be applied as `data-testid` on the label element */
37
+ 'data-testid-label'?: string;
38
+ /** Id to be applied as `data-testid` on the input element */
39
+ 'data-testid-input'?: string;
40
+ /** Id to be applied as `data-testid` on the info message element */
41
+ 'data-testid-infoMessage'?: string;
42
+ /** Id to be applied as `data-testid` on the error message element */
43
+ 'data-testid-errorMessage'?: string;
44
+ /** Id to be applied as `data-testid` on the chars counter element */
45
+ 'data-testid-charsCounter'?: string;
46
+ };
47
+ export declare const Autocomplete: <T extends string | (object & {
48
+ label: string;
49
+ })>({ label, type, options, infoMessage, errorMessage, leftIcon, rightIcon, id, disabled, maxLength, onChange, classNameLabel, classNameInput, classNameErrorMessage, classNameInfoMessage, "data-testid-label": testIdLabel, "data-testid-input": testIdInput, "data-testid-infoMessage": testIdInfoMessage, "data-testid-errorMessage": testIdErrorMessage, ...rest }: AutocompleteProps<T>) => import("react/jsx-runtime").JSX.Element;
50
+ export {};