@whatisboom/boom-ui 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { jsxs as h, jsx as e } from "react/jsx-runtime";
2
2
  import { forwardRef as z, useId as V, useRef as B, useEffect as F } from "react";
3
- function _(...c) {
4
- return c.filter(Boolean).join(" ");
3
+ function _(...n) {
4
+ return n.filter(Boolean).join(" ");
5
5
  }
6
6
  const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr", Y = "Input-module__label___-OEBL", Z = "Input-module__disabled___nzcnQ", M = "Input-module__required___CTss-", K = "Input-module__inputContainer___3edrD", Q = "Input-module__input___WjT81", U = "Input-module__sm___SCPkT", X = "Input-module__md___weRbk", G = "Input-module__lg___ic8a4", ee = "Input-module__hasLeftIcon___xYO-v", le = "Input-module__hasRightIcon___C7uyr", te = "Input-module__error___VLISa", ae = "Input-module__leftIcon___AdasV", se = "Input-module__rightIcon___WpR0p", re = "Input-module__helperText___9eFmv", _e = "Input-module__errorText___xz4xS", r = {
7
7
  wrapper: J,
@@ -23,9 +23,9 @@ const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr"
23
23
  errorText: _e
24
24
  }, ce = z(
25
25
  ({
26
- label: c,
26
+ label: n,
27
27
  size: C = "md",
28
- error: o,
28
+ error: c,
29
29
  helperText: T,
30
30
  leftIcon: t,
31
31
  rightIcon: s,
@@ -46,7 +46,7 @@ const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr"
46
46
  r[C],
47
47
  t ? r.hasLeftIcon : !1,
48
48
  s ? r.hasRightIcon : !1,
49
- o ? r.error : !1,
49
+ c ? r.error : !1,
50
50
  W
51
51
  ), q = _(
52
52
  r.wrapper,
@@ -55,13 +55,13 @@ const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr"
55
55
  L
56
56
  );
57
57
  return /* @__PURE__ */ h("div", { className: q, children: [
58
- c && /* @__PURE__ */ h(
58
+ n && /* @__PURE__ */ h(
59
59
  "label",
60
60
  {
61
61
  htmlFor: i,
62
62
  className: _(r.label, b ? r.disabled : !1),
63
63
  children: [
64
- c,
64
+ n,
65
65
  x && /* @__PURE__ */ e("span", { className: r.required, "aria-label": "required", children: "*" })
66
66
  ]
67
67
  }
@@ -87,8 +87,8 @@ const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr"
87
87
  disabled: b,
88
88
  readOnly: v,
89
89
  className: m,
90
- "aria-invalid": o ? "true" : "false",
91
- "aria-describedby": o ? g : T ? I : void 0,
90
+ "aria-invalid": c ? "true" : "false",
91
+ "aria-describedby": c ? g : T ? I : void 0,
92
92
  ...f
93
93
  }
94
94
  ),
@@ -101,13 +101,13 @@ const J = "Input-module__wrapper___iHNUs", D = "Input-module__fullWidth___kWTRr"
101
101
  }
102
102
  )
103
103
  ] }),
104
- o && /* @__PURE__ */ e("span", { id: g, className: r.errorText, role: "alert", children: o }),
105
- !o && T && /* @__PURE__ */ e("span", { id: I, className: r.helperText, children: T })
104
+ c && /* @__PURE__ */ e("span", { id: g, className: r.errorText, role: "alert", children: c }),
105
+ !c && T && /* @__PURE__ */ e("span", { id: I, className: r.helperText, children: T })
106
106
  ] });
107
107
  }
108
108
  );
109
109
  ce.displayName = "Input";
110
- const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth___-XxGx", de = "Checkbox-module__checkboxLabel___Ci5a6", ie = "Checkbox-module__labelLeft___gqO0m", ue = "Checkbox-module__checkbox___lSeQj", he = "Checkbox-module__checkboxVisual___NL4z7", me = "Checkbox-module__sm___2pjJ9", pe = "Checkbox-module__md___-eE4v", xe = "Checkbox-module__lg___lIue0", be = "Checkbox-module__checked___3yAq6", fe = "Checkbox-module__checkmark___ES9N8", Ne = "Checkbox-module__error___E-bmD", Te = "Checkbox-module__disabled___x7-eg", we = "Checkbox-module__labelText___JO4oC", ke = "Checkbox-module__required___t9DLN", $e = "Checkbox-module__errorText___ARqRg", Ce = "Checkbox-module__helperText___-2pe1", n = {
110
+ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth___-XxGx", de = "Checkbox-module__checkboxLabel___Ci5a6", ie = "Checkbox-module__labelLeft___gqO0m", ue = "Checkbox-module__checkbox___lSeQj", he = "Checkbox-module__checkboxVisual___NL4z7", me = "Checkbox-module__sm___2pjJ9", pe = "Checkbox-module__md___-eE4v", xe = "Checkbox-module__lg___lIue0", be = "Checkbox-module__checked___3yAq6", fe = "Checkbox-module__checkmark___ES9N8", Ne = "Checkbox-module__error___E-bmD", Te = "Checkbox-module__disabled___x7-eg", we = "Checkbox-module__labelText___JO4oC", ke = "Checkbox-module__required___t9DLN", $e = "Checkbox-module__errorText___ARqRg", Ce = "Checkbox-module__helperText___-2pe1", o = {
111
111
  wrapper: oe,
112
112
  fullWidth: ne,
113
113
  checkboxLabel: de,
@@ -127,9 +127,9 @@ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth_
127
127
  helperText: Ce
128
128
  }, ge = z(
129
129
  ({
130
- checked: c,
130
+ checked: n,
131
131
  onChange: C,
132
- label: o,
132
+ label: c,
133
133
  labelPosition: T = "right",
134
134
  size: t = "md",
135
135
  fullWidth: s = !1,
@@ -143,20 +143,20 @@ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth_
143
143
  ...v
144
144
  }, L) => {
145
145
  const W = V(), f = S || W, u = `${f}-error`, k = `${f}-helper`, i = _(
146
- n.wrapper,
147
- s && n.fullWidth,
148
- w && n.disabled,
149
- l && n.hasError,
146
+ o.wrapper,
147
+ s && o.fullWidth,
148
+ w && o.disabled,
149
+ l && o.hasError,
150
150
  b
151
151
  ), g = _(
152
- n.checkboxLabel,
153
- n[t],
154
- T === "left" && n.labelLeft
152
+ o.checkboxLabel,
153
+ o[t],
154
+ T === "left" && o.labelLeft
155
155
  ), I = _(
156
- n.checkboxVisual,
157
- n[t],
158
- c && n.checked,
159
- l && n.error
156
+ o.checkboxVisual,
157
+ o[t],
158
+ n && o.checked,
159
+ l && o.error
160
160
  );
161
161
  return /* @__PURE__ */ h("div", { className: i, children: [
162
162
  /* @__PURE__ */ h("label", { className: g, children: [
@@ -167,17 +167,17 @@ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth_
167
167
  type: "checkbox",
168
168
  id: f,
169
169
  name: x,
170
- checked: c,
170
+ checked: n,
171
171
  onChange: (m) => C(m.target.checked),
172
172
  disabled: w,
173
173
  required: p,
174
174
  "aria-invalid": l ? "true" : "false",
175
175
  "aria-describedby": l ? u : d ? k : void 0,
176
- className: n.checkbox,
176
+ className: o.checkbox,
177
177
  ...v
178
178
  }
179
179
  ),
180
- /* @__PURE__ */ e("span", { className: I, "aria-hidden": "true", children: c && /* @__PURE__ */ e(
180
+ /* @__PURE__ */ e("span", { className: I, "aria-hidden": "true", children: /* @__PURE__ */ e(
181
181
  "svg",
182
182
  {
183
183
  width: "12",
@@ -185,7 +185,7 @@ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth_
185
185
  viewBox: "0 0 12 10",
186
186
  fill: "none",
187
187
  xmlns: "http://www.w3.org/2000/svg",
188
- className: n.checkmark,
188
+ className: o.checkmark,
189
189
  children: /* @__PURE__ */ e(
190
190
  "path",
191
191
  {
@@ -198,13 +198,13 @@ const oe = "Checkbox-module__wrapper___rpthW", ne = "Checkbox-module__fullWidth_
198
198
  )
199
199
  }
200
200
  ) }),
201
- o && /* @__PURE__ */ h("span", { className: n.labelText, children: [
202
- o,
203
- p && /* @__PURE__ */ e("span", { className: n.required, "aria-label": "required", children: "*" })
201
+ c && /* @__PURE__ */ h("span", { className: o.labelText, children: [
202
+ c,
203
+ p && /* @__PURE__ */ e("span", { className: o.required, "aria-label": "required", children: "*" })
204
204
  ] })
205
205
  ] }),
206
- l && /* @__PURE__ */ e("span", { id: u, className: n.errorText, role: "alert", children: l }),
207
- !l && d && /* @__PURE__ */ e("span", { id: k, className: n.helperText, children: d })
206
+ l && /* @__PURE__ */ e("span", { id: u, className: o.errorText, role: "alert", children: l }),
207
+ !l && d && /* @__PURE__ */ e("span", { id: k, className: o.helperText, children: d })
208
208
  ] });
209
209
  }
210
210
  );
@@ -229,9 +229,9 @@ const Ie = "Switch-module__wrapper___kudO9", Se = "Switch-module__fullWidth___Eq
229
229
  helperText: Be
230
230
  }, Fe = z(
231
231
  ({
232
- checked: c,
232
+ checked: n,
233
233
  onChange: C,
234
- label: o,
234
+ label: c,
235
235
  labelPosition: T = "right",
236
236
  size: t = "md",
237
237
  fullWidth: s = !1,
@@ -257,12 +257,12 @@ const Ie = "Switch-module__wrapper___kudO9", Se = "Switch-module__fullWidth___Eq
257
257
  ), I = _(
258
258
  a.track,
259
259
  a[t],
260
- c && a.checked,
260
+ n && a.checked,
261
261
  l && a.error
262
262
  ), m = _(
263
263
  a.thumb,
264
264
  a[t],
265
- c && a.checked
265
+ n && a.checked
266
266
  );
267
267
  return /* @__PURE__ */ h("div", { className: i, children: [
268
268
  /* @__PURE__ */ h("label", { className: g, children: [
@@ -274,7 +274,7 @@ const Ie = "Switch-module__wrapper___kudO9", Se = "Switch-module__fullWidth___Eq
274
274
  role: "switch",
275
275
  id: f,
276
276
  name: x,
277
- checked: c,
277
+ checked: n,
278
278
  onChange: (q) => C(q.target.checked),
279
279
  disabled: w,
280
280
  required: p,
@@ -285,8 +285,8 @@ const Ie = "Switch-module__wrapper___kudO9", Se = "Switch-module__fullWidth___Eq
285
285
  }
286
286
  ),
287
287
  /* @__PURE__ */ e("span", { className: I, "aria-hidden": "true", children: /* @__PURE__ */ e("span", { className: m }) }),
288
- o && /* @__PURE__ */ h("span", { className: a.labelText, children: [
289
- o,
288
+ c && /* @__PURE__ */ h("span", { className: a.labelText, children: [
289
+ c,
290
290
  p && /* @__PURE__ */ e("span", { className: a.required, "aria-label": "required", children: "*" })
291
291
  ] })
292
292
  ] }),
@@ -316,9 +316,9 @@ const Je = "Textarea-module__wrapper___C0gfg", De = "Textarea-module__fullWidth_
316
316
  errorText: _l
317
317
  }, cl = z(
318
318
  ({
319
- value: c,
319
+ value: n,
320
320
  onChange: C,
321
- label: o,
321
+ label: c,
322
322
  size: T = "md",
323
323
  error: t,
324
324
  helperText: s,
@@ -351,7 +351,7 @@ const Je = "Textarea-module__wrapper___C0gfg", De = "Textarea-module__fullWidth_
351
351
  return H(), y.addEventListener("input", H), () => {
352
352
  y.removeEventListener("input", H);
353
353
  };
354
- }, [c, d, p, q]);
354
+ }, [n, d, p, q]);
355
355
  const j = _(
356
356
  $.textarea,
357
357
  $[T],
@@ -365,13 +365,13 @@ const Je = "Textarea-module__wrapper___C0gfg", De = "Textarea-module__fullWidth_
365
365
  L
366
366
  );
367
367
  return /* @__PURE__ */ h("div", { className: E, children: [
368
- o && /* @__PURE__ */ h(
368
+ c && /* @__PURE__ */ h(
369
369
  "label",
370
370
  {
371
371
  htmlFor: i,
372
372
  className: _($.label, b && $.disabled),
373
373
  children: [
374
- o,
374
+ c,
375
375
  x && /* @__PURE__ */ e("span", { className: $.required, "aria-label": "required", children: "*" })
376
376
  ]
377
377
  }
@@ -381,7 +381,7 @@ const Je = "Textarea-module__wrapper___C0gfg", De = "Textarea-module__fullWidth_
381
381
  {
382
382
  ref: q,
383
383
  id: i,
384
- value: c,
384
+ value: n,
385
385
  onChange: (y) => C(y.target.value),
386
386
  rows: w,
387
387
  required: x,
@@ -416,9 +416,9 @@ const ol = "Select-module__wrapper___KS2K3", nl = "Select-module__fullWidth___l-
416
416
  errorText: wl
417
417
  }, kl = z(
418
418
  ({
419
- value: c,
419
+ value: n,
420
420
  onChange: C,
421
- options: o,
421
+ options: c,
422
422
  label: T,
423
423
  size: t = "md",
424
424
  error: s,
@@ -461,7 +461,7 @@ const ol = "Select-module__wrapper___KS2K3", nl = "Select-module__fullWidth___l-
461
461
  {
462
462
  ref: W,
463
463
  id: u,
464
- value: c,
464
+ value: n,
465
465
  onChange: (m) => C(m.target.value),
466
466
  required: S,
467
467
  disabled: x,
@@ -471,7 +471,7 @@ const ol = "Select-module__wrapper___KS2K3", nl = "Select-module__fullWidth___l-
471
471
  ...L,
472
472
  children: [
473
473
  w && /* @__PURE__ */ e("option", { value: "", disabled: !0, children: w }),
474
- o.map((m) => /* @__PURE__ */ e(
474
+ c.map((m) => /* @__PURE__ */ e(
475
475
  "option",
476
476
  {
477
477
  value: m.value,
@@ -510,9 +510,9 @@ kl.displayName = "Select";
510
510
  export {
511
511
  ge as C,
512
512
  ce as I,
513
- Fe as S,
513
+ kl as S,
514
514
  cl as T,
515
- kl as a,
515
+ Fe as a,
516
516
  _ as c
517
517
  };
518
- //# sourceMappingURL=Select-Cr1LWudh.js.map
518
+ //# sourceMappingURL=Select-Cs1S-5z8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select-Cs1S-5z8.js","sources":["../src/utils/classnames.ts","../src/components/Input/Input.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Switch/Switch.tsx","../src/components/Textarea/Textarea.tsx","../src/components/Select/Select.tsx"],"sourcesContent":["type ClassValue = string | number | boolean | null | undefined;\n\nexport function cn(...classes: ClassValue[]): string {\n return classes.filter(Boolean).join(' ');\n}\n","import { forwardRef, useId } from 'react';\nimport { cn } from '@/utils/classnames';\nimport type { InputProps } from './Input.types';\nimport styles from './Input.module.css';\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n label,\n size = 'md',\n error,\n helperText,\n leftIcon,\n rightIcon,\n fullWidth = false,\n type = 'text',\n id: providedId,\n name,\n placeholder,\n required = false,\n disabled = false,\n readOnly = false,\n className,\n inputClassName,\n ...props\n },\n ref\n ) => {\n // Generate unique ID if not provided\n const autoId = useId();\n const id = providedId || autoId;\n const errorId = `${id}-error`;\n const helperTextId = `${id}-helper`;\n\n const inputClassNames = cn(\n styles.input,\n styles[size],\n leftIcon ? styles.hasLeftIcon : false,\n rightIcon ? styles.hasRightIcon : false,\n error ? styles.error : false,\n inputClassName\n );\n\n const wrapperClassNames = cn(\n styles.wrapper,\n fullWidth ? styles.fullWidth : false,\n disabled ? styles.disabled : false,\n className\n );\n\n return (\n <div className={wrapperClassNames}>\n {label && (\n <label\n htmlFor={id}\n className={cn(styles.label, disabled ? styles.disabled : false)}\n >\n {label}\n {required && (\n <span className={styles.required} aria-label=\"required\">\n *\n </span>\n )}\n </label>\n )}\n\n <div className={styles.inputContainer}>\n {leftIcon && (\n <span\n className={cn(styles.leftIcon, styles[size])}\n aria-hidden=\"true\"\n >\n {leftIcon}\n </span>\n )}\n\n <input\n ref={ref}\n id={id}\n name={name}\n type={type}\n placeholder={placeholder}\n required={required}\n disabled={disabled}\n readOnly={readOnly}\n className={inputClassNames}\n aria-invalid={error ? 'true' : 'false'}\n aria-describedby={\n error ? errorId : helperText ? helperTextId : undefined\n }\n {...props}\n />\n\n {rightIcon && (\n <span\n className={cn(styles.rightIcon, styles[size])}\n aria-hidden=\"true\"\n >\n {rightIcon}\n </span>\n )}\n </div>\n\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n\n {!error && helperText && (\n <span id={helperTextId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = 'Input';\n","import { forwardRef, useId } from 'react';\nimport { cn } from '@/utils/classnames';\nimport type { CheckboxProps } from './Checkbox.types';\nimport styles from './Checkbox.module.css';\n\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n (\n {\n checked,\n onChange,\n label,\n labelPosition = 'right',\n size = 'md',\n fullWidth = false,\n error,\n helperText,\n disabled = false,\n required = false,\n id: providedId,\n name,\n className,\n ...props\n },\n ref\n ) => {\n // Generate unique ID if not provided\n const autoId = useId();\n const id = providedId || autoId;\n const errorId = `${id}-error`;\n const helperTextId = `${id}-helper`;\n\n const wrapperClassNames = cn(\n styles.wrapper,\n fullWidth && styles.fullWidth,\n disabled && styles.disabled,\n error && styles.hasError,\n className\n );\n\n const labelClassNames = cn(\n styles.checkboxLabel,\n styles[size],\n labelPosition === 'left' && styles.labelLeft\n );\n\n const checkboxVisualClassNames = cn(\n styles.checkboxVisual,\n styles[size],\n checked && styles.checked,\n error && styles.error\n );\n\n return (\n <div className={wrapperClassNames}>\n <label className={labelClassNames}>\n <input\n ref={ref}\n type=\"checkbox\"\n id={id}\n name={name}\n checked={checked}\n onChange={(e) => onChange(e.target.checked)}\n disabled={disabled}\n required={required}\n aria-invalid={error ? 'true' : 'false'}\n aria-describedby={\n error ? errorId : helperText ? helperTextId : undefined\n }\n className={styles.checkbox}\n {...props}\n />\n\n <span className={checkboxVisualClassNames} aria-hidden=\"true\">\n <svg\n width=\"12\"\n height=\"10\"\n viewBox=\"0 0 12 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={styles.checkmark}\n >\n <path\n d=\"M1 5L4.5 8.5L11 1\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </span>\n\n {label && (\n <span className={styles.labelText}>\n {label}\n {required && (\n <span className={styles.required} aria-label=\"required\">\n *\n </span>\n )}\n </span>\n )}\n </label>\n\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n {!error && helperText && (\n <span id={helperTextId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nCheckbox.displayName = 'Checkbox';\n","import { forwardRef, useId } from 'react';\nimport { cn } from '@/utils/classnames';\nimport type { SwitchProps } from './Switch.types';\nimport styles from './Switch.module.css';\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>(\n (\n {\n checked,\n onChange,\n label,\n labelPosition = 'right',\n size = 'md',\n fullWidth = false,\n error,\n helperText,\n disabled = false,\n required = false,\n id: providedId,\n name,\n className,\n ...props\n },\n ref\n ) => {\n // Generate unique ID if not provided\n const autoId = useId();\n const id = providedId || autoId;\n const errorId = `${id}-error`;\n const helperTextId = `${id}-helper`;\n\n const wrapperClassNames = cn(\n styles.wrapper,\n fullWidth && styles.fullWidth,\n disabled && styles.disabled,\n error && styles.hasError,\n className\n );\n\n const labelClassNames = cn(\n styles.switchLabel,\n styles[size],\n labelPosition === 'left' && styles.labelLeft\n );\n\n const trackClassNames = cn(\n styles.track,\n styles[size],\n checked && styles.checked,\n error && styles.error\n );\n\n const thumbClassNames = cn(\n styles.thumb,\n styles[size],\n checked && styles.checked\n );\n\n return (\n <div className={wrapperClassNames}>\n <label className={labelClassNames}>\n <input\n ref={ref}\n type=\"checkbox\"\n role=\"switch\"\n id={id}\n name={name}\n checked={checked}\n onChange={(e) => onChange(e.target.checked)}\n disabled={disabled}\n required={required}\n aria-invalid={error ? 'true' : 'false'}\n aria-describedby={\n error ? errorId : helperText ? helperTextId : undefined\n }\n className={styles.input}\n {...props}\n />\n\n <span className={trackClassNames} aria-hidden=\"true\">\n <span className={thumbClassNames} />\n </span>\n\n {label && (\n <span className={styles.labelText}>\n {label}\n {required && (\n <span className={styles.required} aria-label=\"required\">\n *\n </span>\n )}\n </span>\n )}\n </label>\n\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n {!error && helperText && (\n <span id={helperTextId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n","import { forwardRef, useId, useEffect, useRef } from 'react';\nimport { cn } from '@/utils/classnames';\nimport type { TextareaProps } from './Textarea.types';\nimport styles from './Textarea.module.css';\n\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n value,\n onChange,\n label,\n size = 'md',\n error,\n helperText,\n fullWidth = false,\n resize = 'vertical',\n minRows = 3,\n maxRows,\n id: providedId,\n required = false,\n disabled = false,\n readOnly = false,\n className,\n textareaClassName,\n ...props\n },\n ref\n ) => {\n const autoId = useId();\n const id = providedId || autoId;\n const errorId = `${id}-error`;\n const helperTextId = `${id}-helper`;\n\n const internalRef = useRef<HTMLTextAreaElement>(null);\n const textareaRef = ref ? (ref as React.RefObject<HTMLTextAreaElement>) : internalRef;\n\n // Auto-resize functionality\n useEffect(() => {\n if (resize !== 'auto' || !textareaRef.current) {return;}\n\n const textarea = textareaRef.current;\n const updateHeight = () => {\n textarea.style.height = 'auto';\n const scrollHeight = textarea.scrollHeight;\n const lineHeight = parseInt(getComputedStyle(textarea).lineHeight);\n\n let newHeight = scrollHeight;\n if (maxRows) {\n const maxHeight = lineHeight * maxRows;\n newHeight = Math.min(scrollHeight, maxHeight);\n }\n\n textarea.style.height = `${newHeight}px`;\n };\n\n updateHeight();\n textarea.addEventListener('input', updateHeight);\n\n return () => {\n textarea.removeEventListener('input', updateHeight);\n };\n }, [value, resize, maxRows, textareaRef]);\n\n const textareaClassNames = cn(\n styles.textarea,\n styles[size],\n styles[`resize${resize.charAt(0).toUpperCase() + resize.slice(1)}`],\n error && styles.error,\n textareaClassName\n );\n\n const wrapperClassNames = cn(\n styles.wrapper,\n fullWidth && styles.fullWidth,\n disabled && styles.disabled,\n className\n );\n\n return (\n <div className={wrapperClassNames}>\n {label && (\n <label\n htmlFor={id}\n className={cn(styles.label, disabled && styles.disabled)}\n >\n {label}\n {required && (\n <span className={styles.required} aria-label=\"required\">\n *\n </span>\n )}\n </label>\n )}\n\n <textarea\n ref={textareaRef}\n id={id}\n value={value}\n onChange={(e) => onChange(e.target.value)}\n rows={minRows}\n required={required}\n disabled={disabled}\n readOnly={readOnly}\n className={textareaClassNames}\n aria-invalid={error ? 'true' : 'false'}\n aria-describedby={\n error ? errorId : helperText ? helperTextId : undefined\n }\n {...props}\n />\n\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n\n {!error && helperText && (\n <span id={helperTextId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nTextarea.displayName = 'Textarea';\n","import { forwardRef, useId } from 'react';\nimport { cn } from '@/utils/classnames';\nimport type { SelectProps } from './Select.types';\nimport styles from './Select.module.css';\n\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n (\n {\n value,\n onChange,\n options,\n label,\n size = 'md',\n error,\n helperText,\n fullWidth = false,\n placeholder,\n id: providedId,\n required = false,\n disabled = false,\n className,\n selectClassName,\n ...props\n },\n ref\n ) => {\n const autoId = useId();\n const id = providedId || autoId;\n const errorId = `${id}-error`;\n const helperTextId = `${id}-helper`;\n\n const selectClassNames = cn(\n styles.select,\n styles[size],\n error && styles.error,\n selectClassName\n );\n\n const wrapperClassNames = cn(\n styles.wrapper,\n fullWidth && styles.fullWidth,\n disabled && styles.disabled,\n className\n );\n\n return (\n <div className={wrapperClassNames}>\n {label && (\n <label\n htmlFor={id}\n className={cn(styles.label, disabled && styles.disabled)}\n >\n {label}\n {required && (\n <span className={styles.required} aria-label=\"required\">\n *\n </span>\n )}\n </label>\n )}\n\n <div className={styles.selectContainer}>\n <select\n ref={ref}\n id={id}\n value={value}\n onChange={(e) => onChange(e.target.value)}\n required={required}\n disabled={disabled}\n className={selectClassNames}\n aria-invalid={error ? 'true' : 'false'}\n aria-describedby={\n error ? errorId : helperText ? helperTextId : undefined\n }\n {...props}\n >\n {placeholder && (\n <option value=\"\" disabled>\n {placeholder}\n </option>\n )}\n {options.map((option) => (\n <option\n key={option.value}\n value={option.value}\n disabled={option.disabled}\n >\n {option.label}\n </option>\n ))}\n </select>\n\n <svg\n className={styles.arrow}\n viewBox=\"0 0 20 20\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </div>\n\n {error && (\n <span id={errorId} className={styles.errorText} role=\"alert\">\n {error}\n </span>\n )}\n\n {!error && helperText && (\n <span id={helperTextId} className={styles.helperText}>\n {helperText}\n </span>\n )}\n </div>\n );\n }\n);\n\nSelect.displayName = 'Select';\n"],"names":["cn","classes","Input","forwardRef","label","size","error","helperText","leftIcon","rightIcon","fullWidth","type","providedId","name","placeholder","required","disabled","readOnly","className","inputClassName","props","ref","autoId","useId","id","errorId","helperTextId","inputClassNames","styles","wrapperClassNames","jsxs","jsx","Checkbox","checked","onChange","labelPosition","labelClassNames","checkboxVisualClassNames","e","Switch","trackClassNames","thumbClassNames","Textarea","value","resize","minRows","maxRows","textareaClassName","internalRef","useRef","textareaRef","useEffect","textarea","updateHeight","scrollHeight","lineHeight","newHeight","maxHeight","textareaClassNames","Select","options","selectClassName","selectClassNames","option"],"mappings":";;AAEO,SAASA,KAAMC,GAA+B;AACnD,SAAOA,EAAQ,OAAO,OAAO,EAAE,KAAK,GAAG;AACzC;;;;;;;;;;;;;;;;;;;GCCaC,KAAQC;AAAA,EACnB,CACE;AAAA,IACE,OAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,WAAAC,IAAY;AAAA,IACZ,MAAAC,IAAO;AAAA,IACP,IAAIC;AAAA,IACJ,MAAAC;AAAA,IACA,aAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,MACG;AAEH,UAAMC,IAASC,EAAA,GACTC,IAAKZ,KAAcU,GACnBG,IAAU,GAAGD,CAAE,UACfE,IAAe,GAAGF,CAAE,WAEpBG,IAAkB3B;AAAA,MACtB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACXG,IAAWoB,EAAO,cAAc;AAAA,MAChCnB,IAAYmB,EAAO,eAAe;AAAA,MAClCtB,IAAQsB,EAAO,QAAQ;AAAA,MACvBT;AAAA,IAAA,GAGIU,IAAoB7B;AAAA,MACxB4B,EAAO;AAAA,MACPlB,IAAYkB,EAAO,YAAY;AAAA,MAC/BZ,IAAWY,EAAO,WAAW;AAAA,MAC7BV;AAAA,IAAA;AAGF,WACE,gBAAAY,EAAC,OAAA,EAAI,WAAWD,GACb,UAAA;AAAA,MAAAzB,KACC,gBAAA0B;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,SAASN;AAAA,UACT,WAAWxB,EAAG4B,EAAO,OAAOZ,IAAWY,EAAO,WAAW,EAAK;AAAA,UAE7D,UAAA;AAAA,YAAAxB;AAAA,YACAW,uBACE,QAAA,EAAK,WAAWa,EAAO,UAAU,cAAW,YAAW,UAAA,IAAA,CAExD;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAKN,gBAAAE,EAAC,OAAA,EAAI,WAAWF,EAAO,gBACpB,UAAA;AAAA,QAAApB,KACC,gBAAAuB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAW/B,EAAG4B,EAAO,UAAUA,EAAOvB,CAAI,CAAC;AAAA,YAC3C,eAAY;AAAA,YAEX,UAAAG;AAAA,UAAA;AAAA,QAAA;AAAA,QAIL,gBAAAuB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAAV;AAAA,YACA,IAAAG;AAAA,YACA,MAAAX;AAAA,YACA,MAAAF;AAAA,YACA,aAAAG;AAAA,YACA,UAAAC;AAAA,YACA,UAAAC;AAAA,YACA,UAAAC;AAAA,YACA,WAAWU;AAAA,YACX,gBAAcrB,IAAQ,SAAS;AAAA,YAC/B,oBACEA,IAAQmB,IAAUlB,IAAamB,IAAe;AAAA,YAE/C,GAAGN;AAAA,UAAA;AAAA,QAAA;AAAA,QAGLX,KACC,gBAAAsB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAW/B,EAAG4B,EAAO,WAAWA,EAAOvB,CAAI,CAAC;AAAA,YAC5C,eAAY;AAAA,YAEX,UAAAI;AAAA,UAAA;AAAA,QAAA;AAAA,MACH,GAEJ;AAAA,MAECH,KACC,gBAAAyB,EAAC,QAAA,EAAK,IAAIN,GAAS,WAAWG,EAAO,WAAW,MAAK,SAClD,UAAAtB,EAAA,CACH;AAAA,MAGD,CAACA,KAASC,KACT,gBAAAwB,EAAC,QAAA,EAAK,IAAIL,GAAc,WAAWE,EAAO,YACvC,UAAArB,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,EAEJ;AACF;AAEAL,GAAM,cAAc;;;;;;;;;;;;;;;;;;;GClHP8B,KAAW7B;AAAA,EACtB,CACE;AAAA,IACE,SAAA8B;AAAA,IACA,UAAAC;AAAA,IACA,OAAA9B;AAAA,IACA,eAAA+B,IAAgB;AAAA,IAChB,MAAA9B,IAAO;AAAA,IACP,WAAAK,IAAY;AAAA,IACZ,OAAAJ;AAAA,IACA,YAAAC;AAAA,IACA,UAAAS,IAAW;AAAA,IACX,UAAAD,IAAW;AAAA,IACX,IAAIH;AAAA,IACJ,MAAAC;AAAA,IACA,WAAAK;AAAA,IACA,GAAGE;AAAA,EAAA,GAELC,MACG;AAEH,UAAMC,IAASC,EAAA,GACTC,IAAKZ,KAAcU,GACnBG,IAAU,GAAGD,CAAE,UACfE,IAAe,GAAGF,CAAE,WAEpBK,IAAoB7B;AAAA,MACxB4B,EAAO;AAAA,MACPlB,KAAakB,EAAO;AAAA,MACpBZ,KAAYY,EAAO;AAAA,MACnBtB,KAASsB,EAAO;AAAA,MAChBV;AAAA,IAAA,GAGIkB,IAAkBpC;AAAA,MACtB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACX8B,MAAkB,UAAUP,EAAO;AAAA,IAAA,GAG/BS,IAA2BrC;AAAA,MAC/B4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACX4B,KAAWL,EAAO;AAAA,MAClBtB,KAASsB,EAAO;AAAA,IAAA;AAGlB,WACE,gBAAAE,EAAC,OAAA,EAAI,WAAWD,GACd,UAAA;AAAA,MAAA,gBAAAC,EAAC,SAAA,EAAM,WAAWM,GAChB,UAAA;AAAA,QAAA,gBAAAL;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAAV;AAAA,YACA,MAAK;AAAA,YACL,IAAAG;AAAA,YACA,MAAAX;AAAA,YACA,SAAAoB;AAAA,YACA,UAAU,CAACK,MAAMJ,EAASI,EAAE,OAAO,OAAO;AAAA,YAC1C,UAAAtB;AAAA,YACA,UAAAD;AAAA,YACA,gBAAcT,IAAQ,SAAS;AAAA,YAC/B,oBACEA,IAAQmB,IAAUlB,IAAamB,IAAe;AAAA,YAEhD,WAAWE,EAAO;AAAA,YACjB,GAAGR;AAAA,UAAA;AAAA,QAAA;AAAA,QAGN,gBAAAW,EAAC,QAAA,EAAK,WAAWM,GAA0B,eAAY,QACrD,UAAA,gBAAAN;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAM;AAAA,YACN,QAAO;AAAA,YACP,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,OAAM;AAAA,YACN,WAAWH,EAAO;AAAA,YAElB,UAAA,gBAAAG;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,GAAE;AAAA,gBACF,QAAO;AAAA,gBACP,aAAY;AAAA,gBACZ,eAAc;AAAA,gBACd,gBAAe;AAAA,cAAA;AAAA,YAAA;AAAA,UACjB;AAAA,QAAA,GAEJ;AAAA,QAEC3B,KACC,gBAAA0B,EAAC,QAAA,EAAK,WAAWF,EAAO,WACrB,UAAA;AAAA,UAAAxB;AAAA,UACAW,uBACE,QAAA,EAAK,WAAWa,EAAO,UAAU,cAAW,YAAW,UAAA,IAAA,CAExD;AAAA,QAAA,EAAA,CAEJ;AAAA,MAAA,GAEJ;AAAA,MAECtB,KACC,gBAAAyB,EAAC,QAAA,EAAK,IAAIN,GAAS,WAAWG,EAAO,WAAW,MAAK,SAClD,UAAAtB,EAAA,CACH;AAAA,MAED,CAACA,KAASC,KACT,gBAAAwB,EAAC,QAAA,EAAK,IAAIL,GAAc,WAAWE,EAAO,YACvC,UAAArB,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,EAEJ;AACF;AAEAyB,GAAS,cAAc;;;;;;;;;;;;;;;;;;;GCjHVO,KAASpC;AAAA,EACpB,CACE;AAAA,IACE,SAAA8B;AAAA,IACA,UAAAC;AAAA,IACA,OAAA9B;AAAA,IACA,eAAA+B,IAAgB;AAAA,IAChB,MAAA9B,IAAO;AAAA,IACP,WAAAK,IAAY;AAAA,IACZ,OAAAJ;AAAA,IACA,YAAAC;AAAA,IACA,UAAAS,IAAW;AAAA,IACX,UAAAD,IAAW;AAAA,IACX,IAAIH;AAAA,IACJ,MAAAC;AAAA,IACA,WAAAK;AAAA,IACA,GAAGE;AAAA,EAAA,GAELC,MACG;AAEH,UAAMC,IAASC,EAAA,GACTC,IAAKZ,KAAcU,GACnBG,IAAU,GAAGD,CAAE,UACfE,IAAe,GAAGF,CAAE,WAEpBK,IAAoB7B;AAAA,MACxB4B,EAAO;AAAA,MACPlB,KAAakB,EAAO;AAAA,MACpBZ,KAAYY,EAAO;AAAA,MACnBtB,KAASsB,EAAO;AAAA,MAChBV;AAAA,IAAA,GAGIkB,IAAkBpC;AAAA,MACtB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACX8B,MAAkB,UAAUP,EAAO;AAAA,IAAA,GAG/BY,IAAkBxC;AAAA,MACtB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACX4B,KAAWL,EAAO;AAAA,MAClBtB,KAASsB,EAAO;AAAA,IAAA,GAGZa,IAAkBzC;AAAA,MACtB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACX4B,KAAWL,EAAO;AAAA,IAAA;AAGpB,WACE,gBAAAE,EAAC,OAAA,EAAI,WAAWD,GACd,UAAA;AAAA,MAAA,gBAAAC,EAAC,SAAA,EAAM,WAAWM,GAChB,UAAA;AAAA,QAAA,gBAAAL;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAAV;AAAA,YACA,MAAK;AAAA,YACL,MAAK;AAAA,YACL,IAAAG;AAAA,YACA,MAAAX;AAAA,YACA,SAAAoB;AAAA,YACA,UAAU,CAACK,MAAMJ,EAASI,EAAE,OAAO,OAAO;AAAA,YAC1C,UAAAtB;AAAA,YACA,UAAAD;AAAA,YACA,gBAAcT,IAAQ,SAAS;AAAA,YAC/B,oBACEA,IAAQmB,IAAUlB,IAAamB,IAAe;AAAA,YAEhD,WAAWE,EAAO;AAAA,YACjB,GAAGR;AAAA,UAAA;AAAA,QAAA;AAAA,QAGN,gBAAAW,EAAC,QAAA,EAAK,WAAWS,GAAiB,eAAY,QAC5C,UAAA,gBAAAT,EAAC,QAAA,EAAK,WAAWU,EAAA,CAAiB,EAAA,CACpC;AAAA,QAECrC,KACC,gBAAA0B,EAAC,QAAA,EAAK,WAAWF,EAAO,WACrB,UAAA;AAAA,UAAAxB;AAAA,UACAW,uBACE,QAAA,EAAK,WAAWa,EAAO,UAAU,cAAW,YAAW,UAAA,IAAA,CAExD;AAAA,QAAA,EAAA,CAEJ;AAAA,MAAA,GAEJ;AAAA,MAECtB,KACC,gBAAAyB,EAAC,QAAA,EAAK,IAAIN,GAAS,WAAWG,EAAO,WAAW,MAAK,SAClD,UAAAtB,EAAA,CACH;AAAA,MAED,CAACA,KAASC,KACT,gBAAAwB,EAAC,QAAA,EAAK,IAAIL,GAAc,WAAWE,EAAO,YACvC,UAAArB,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,EAEJ;AACF;AAEAgC,GAAO,cAAc;;;;;;;;;;;;;;;;;;;GCzGRG,KAAWvC;AAAA,EACtB,CACE;AAAA,IACE,OAAAwC;AAAA,IACA,UAAAT;AAAA,IACA,OAAA9B;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAG,IAAY;AAAA,IACZ,QAAAkC,IAAS;AAAA,IACT,SAAAC,IAAU;AAAA,IACV,SAAAC;AAAA,IACA,IAAIlC;AAAA,IACJ,UAAAG,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,WAAAC;AAAA,IACA,mBAAA6B;AAAA,IACA,GAAG3B;AAAA,EAAA,GAELC,MACG;AACH,UAAMC,IAASC,EAAA,GACTC,IAAKZ,KAAcU,GACnBG,IAAU,GAAGD,CAAE,UACfE,IAAe,GAAGF,CAAE,WAEpBwB,IAAcC,EAA4B,IAAI,GAC9CC,IAAc7B,KAAsD2B;AAG1E,IAAAG,EAAU,MAAM;AACd,UAAIP,MAAW,UAAU,CAACM,EAAY;AAAU;AAEhD,YAAME,IAAWF,EAAY,SACvBG,IAAe,MAAM;AACzB,QAAAD,EAAS,MAAM,SAAS;AACxB,cAAME,IAAeF,EAAS,cACxBG,IAAa,SAAS,iBAAiBH,CAAQ,EAAE,UAAU;AAEjE,YAAII,IAAYF;AAChB,YAAIR,GAAS;AACX,gBAAMW,IAAYF,IAAaT;AAC/B,UAAAU,IAAY,KAAK,IAAIF,GAAcG,CAAS;AAAA,QAC9C;AAEA,QAAAL,EAAS,MAAM,SAAS,GAAGI,CAAS;AAAA,MACtC;AAEA,aAAAH,EAAA,GACAD,EAAS,iBAAiB,SAASC,CAAY,GAExC,MAAM;AACX,QAAAD,EAAS,oBAAoB,SAASC,CAAY;AAAA,MACpD;AAAA,IACF,GAAG,CAACV,GAAOC,GAAQE,GAASI,CAAW,CAAC;AAExC,UAAMQ,IAAqB1D;AAAA,MACzB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACXuB,EAAO,SAASgB,EAAO,OAAO,CAAC,EAAE,YAAA,IAAgBA,EAAO,MAAM,CAAC,CAAC,EAAE;AAAA,MAClEtC,KAASsB,EAAO;AAAA,MAChBmB;AAAA,IAAA,GAGIlB,IAAoB7B;AAAA,MACxB4B,EAAO;AAAA,MACPlB,KAAakB,EAAO;AAAA,MACpBZ,KAAYY,EAAO;AAAA,MACnBV;AAAA,IAAA;AAGF,WACE,gBAAAY,EAAC,OAAA,EAAI,WAAWD,GACb,UAAA;AAAA,MAAAzB,KACC,gBAAA0B;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,SAASN;AAAA,UACT,WAAWxB,EAAG4B,EAAO,OAAOZ,KAAYY,EAAO,QAAQ;AAAA,UAEtD,UAAA;AAAA,YAAAxB;AAAA,YACAW,uBACE,QAAA,EAAK,WAAWa,EAAO,UAAU,cAAW,YAAW,UAAA,IAAA,CAExD;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAKN,gBAAAG;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKmB;AAAA,UACL,IAAA1B;AAAA,UACA,OAAAmB;AAAA,UACA,UAAU,CAACL,MAAMJ,EAASI,EAAE,OAAO,KAAK;AAAA,UACxC,MAAMO;AAAA,UACN,UAAA9B;AAAA,UACA,UAAAC;AAAA,UACA,UAAAC;AAAA,UACA,WAAWyC;AAAA,UACX,gBAAcpD,IAAQ,SAAS;AAAA,UAC/B,oBACEA,IAAQmB,IAAUlB,IAAamB,IAAe;AAAA,UAE/C,GAAGN;AAAA,QAAA;AAAA,MAAA;AAAA,MAGLd,KACC,gBAAAyB,EAAC,QAAA,EAAK,IAAIN,GAAS,WAAWG,EAAO,WAAW,MAAK,SAClD,UAAAtB,EAAA,CACH;AAAA,MAGD,CAACA,KAASC,KACT,gBAAAwB,EAAC,QAAA,EAAK,IAAIL,GAAc,WAAWE,EAAO,YACvC,UAAArB,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,EAEJ;AACF;AAEAmC,GAAS,cAAc;;;;;;;;;;;;;;;;GC1HViB,KAASxD;AAAA,EACpB,CACE;AAAA,IACE,OAAAwC;AAAA,IACA,UAAAT;AAAA,IACA,SAAA0B;AAAA,IACA,OAAAxD;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAG,IAAY;AAAA,IACZ,aAAAI;AAAA,IACA,IAAIF;AAAA,IACJ,UAAAG,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,IACX,WAAAE;AAAA,IACA,iBAAA2C;AAAA,IACA,GAAGzC;AAAA,EAAA,GAELC,MACG;AACH,UAAMC,IAASC,EAAA,GACTC,IAAKZ,KAAcU,GACnBG,IAAU,GAAGD,CAAE,UACfE,IAAe,GAAGF,CAAE,WAEpBsC,IAAmB9D;AAAA,MACvB4B,EAAO;AAAA,MACPA,EAAOvB,CAAI;AAAA,MACXC,KAASsB,EAAO;AAAA,MAChBiC;AAAA,IAAA,GAGIhC,IAAoB7B;AAAA,MACxB4B,EAAO;AAAA,MACPlB,KAAakB,EAAO;AAAA,MACpBZ,KAAYY,EAAO;AAAA,MACnBV;AAAA,IAAA;AAGF,WACE,gBAAAY,EAAC,OAAA,EAAI,WAAWD,GACb,UAAA;AAAA,MAAAzB,KACC,gBAAA0B;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,SAASN;AAAA,UACT,WAAWxB,EAAG4B,EAAO,OAAOZ,KAAYY,EAAO,QAAQ;AAAA,UAEtD,UAAA;AAAA,YAAAxB;AAAA,YACAW,uBACE,QAAA,EAAK,WAAWa,EAAO,UAAU,cAAW,YAAW,UAAA,IAAA,CAExD;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAKN,gBAAAE,EAAC,OAAA,EAAI,WAAWF,EAAO,iBACrB,UAAA;AAAA,QAAA,gBAAAE;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAAT;AAAA,YACA,IAAAG;AAAA,YACA,OAAAmB;AAAA,YACA,UAAU,CAACL,MAAMJ,EAASI,EAAE,OAAO,KAAK;AAAA,YACxC,UAAAvB;AAAA,YACA,UAAAC;AAAA,YACA,WAAW8C;AAAA,YACX,gBAAcxD,IAAQ,SAAS;AAAA,YAC/B,oBACEA,IAAQmB,IAAUlB,IAAamB,IAAe;AAAA,YAE/C,GAAGN;AAAA,YAEH,UAAA;AAAA,cAAAN,uBACE,UAAA,EAAO,OAAM,IAAG,UAAQ,IACtB,UAAAA,GACH;AAAA,cAED8C,EAAQ,IAAI,CAACG,MACZ,gBAAAhC;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,OAAOgC,EAAO;AAAA,kBACd,UAAUA,EAAO;AAAA,kBAEhB,UAAAA,EAAO;AAAA,gBAAA;AAAA,gBAJHA,EAAO;AAAA,cAAA,CAMf;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGH,gBAAAhC;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWH,EAAO;AAAA,YAClB,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,eAAY;AAAA,YAEZ,UAAA,gBAAAG;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,UAAS;AAAA,gBACT,GAAE;AAAA,gBACF,UAAS;AAAA,cAAA;AAAA,YAAA;AAAA,UACX;AAAA,QAAA;AAAA,MACF,GACF;AAAA,MAECzB,KACC,gBAAAyB,EAAC,QAAA,EAAK,IAAIN,GAAS,WAAWG,EAAO,WAAW,MAAK,SAClD,UAAAtB,EAAA,CACH;AAAA,MAGD,CAACA,KAASC,KACT,gBAAAwB,EAAC,QAAA,EAAK,IAAIL,GAAc,WAAWE,EAAO,YACvC,UAAArB,EAAA,CACH;AAAA,IAAA,GAEJ;AAAA,EAEJ;AACF;AAEAoD,GAAO,cAAc;"}