@vkzstudio/muza-ui 1.0.17 → 1.0.19

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/Button/buttonVariants.js +1 -1
  2. package/dist/components/Checkbox/Checkbox.d.ts +4 -0
  3. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
  4. package/dist/components/Checkbox/Checkbox.js +36 -29
  5. package/dist/components/Checkbox/Checkbox.stories.d.ts +1 -0
  6. package/dist/components/Checkbox/Checkbox.stories.d.ts.map +1 -1
  7. package/dist/components/DatePicker/DatePicker.d.ts +2 -0
  8. package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
  9. package/dist/components/DatePicker/DatePicker.js +33 -31
  10. package/dist/components/FileUpload/FileItem.d.ts +13 -3
  11. package/dist/components/FileUpload/FileItem.d.ts.map +1 -1
  12. package/dist/components/FileUpload/FileItem.js +94 -80
  13. package/dist/components/FileUpload/FileUpload.d.ts +24 -2
  14. package/dist/components/FileUpload/FileUpload.d.ts.map +1 -1
  15. package/dist/components/FileUpload/FileUpload.js +174 -148
  16. package/dist/components/FileUpload/FileUpload.stories.d.ts +5 -0
  17. package/dist/components/FileUpload/FileUpload.stories.d.ts.map +1 -1
  18. package/dist/components/FileUpload/index.d.ts +1 -1
  19. package/dist/components/FileUpload/index.d.ts.map +1 -1
  20. package/dist/components/Flex/Flex.d.ts +3 -1
  21. package/dist/components/Flex/Flex.d.ts.map +1 -1
  22. package/dist/components/Flex/Flex.js +33 -31
  23. package/dist/components/FormField/FormField.d.ts +30 -0
  24. package/dist/components/FormField/FormField.d.ts.map +1 -0
  25. package/dist/components/FormField/FormField.js +56 -0
  26. package/dist/components/FormField/InputHint.d.ts +13 -0
  27. package/dist/components/FormField/InputHint.d.ts.map +1 -0
  28. package/dist/components/FormField/InputHint.js +26 -0
  29. package/dist/components/FormField/InputLabel.d.ts +20 -0
  30. package/dist/components/FormField/InputLabel.d.ts.map +1 -0
  31. package/dist/components/FormField/InputLabel.js +27 -0
  32. package/dist/components/FormField/index.d.ts +4 -0
  33. package/dist/components/FormField/index.d.ts.map +1 -0
  34. package/dist/components/Input/Input.d.ts.map +1 -1
  35. package/dist/components/Input/Input.js +79 -94
  36. package/dist/components/MultiSelect/MultiSelect.d.ts +2 -0
  37. package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  38. package/dist/components/MultiSelect/MultiSelect.js +125 -131
  39. package/dist/components/Radio/Radio.js +1 -1
  40. package/dist/components/Select/Select.d.ts +2 -0
  41. package/dist/components/Select/Select.d.ts.map +1 -1
  42. package/dist/components/Select/Select.js +126 -131
  43. package/dist/components/TextEditor/TextEditor.d.ts +4 -0
  44. package/dist/components/TextEditor/TextEditor.d.ts.map +1 -1
  45. package/dist/components/TextEditor/TextEditor.js +113 -135
  46. package/dist/components/Textarea/Textarea.d.ts +4 -0
  47. package/dist/components/Textarea/Textarea.d.ts.map +1 -1
  48. package/dist/components/Textarea/Textarea.js +52 -61
  49. package/dist/components/Textarea/Textarea.stories.d.ts +1 -0
  50. package/dist/components/Textarea/Textarea.stories.d.ts.map +1 -1
  51. package/dist/components/TimePicker/TimePicker.d.ts +2 -0
  52. package/dist/components/TimePicker/TimePicker.d.ts.map +1 -1
  53. package/dist/muza-ui.css +1 -1
  54. package/package.json +1 -1
@@ -1,157 +1,151 @@
1
- import { jsx as t, jsxs as i } from "react/jsx-runtime";
2
- import u, { forwardRef as k, useMemo as R, useRef as A, useEffect as I } from "react";
3
- import { triggerWrapperVariants as V } from "../Select/utils.js";
4
- import { useMuzaTranslations as E } from "../../translations/TranslationContext.js";
5
- import { Tag as f } from "../Tag/Tag.js";
6
- import { DropdownMenu as _, DropdownMenuTrigger as B, DropdownMenuContent as F, DropdownMenuCheckboxItem as L } from "../DropdownMenu/DropdownMenu.js";
7
- import { Typography as h } from "../Typography/Typography.js";
8
- import { AltArrowUpOutline as P } from "@solar-icons/react-perf";
9
- import { cn as U } from "../../utils/cn.js";
10
- const $ = k(
11
- (T, x) => {
12
- const z = E(), {
13
- label: g,
14
- hint: b,
15
- error: w,
16
- options: o,
1
+ import { jsx as r, jsxs as u } from "react/jsx-runtime";
2
+ import f, { forwardRef as F, useId as V, useMemo as T, useRef as $, useEffect as E } from "react";
3
+ import { triggerWrapperVariants as _ } from "../Select/utils.js";
4
+ import { useMuzaTranslations as B } from "../../translations/TranslationContext.js";
5
+ import { Tag as p } from "../Tag/Tag.js";
6
+ import { FormField as L } from "../FormField/FormField.js";
7
+ import { DropdownMenu as P, DropdownMenuTrigger as U, DropdownMenuContent as G, DropdownMenuCheckboxItem as H } from "../DropdownMenu/DropdownMenu.js";
8
+ import { Typography as J } from "../Typography/Typography.js";
9
+ import { AltArrowUpOutline as K } from "@solar-icons/react-perf";
10
+ import { cn as Q } from "../../utils/cn.js";
11
+ const X = F(
12
+ (I, h) => {
13
+ const z = B(), {
14
+ label: x,
15
+ hint: g,
16
+ error: b,
17
+ options: c,
17
18
  onChange: s,
18
- value: r,
19
- disabled: d,
20
- prefix: m,
21
- maxNumberOfVisibleTags: c = 2,
19
+ value: t,
20
+ disabled: o,
21
+ prefix: d,
22
+ maxNumberOfVisibleTags: i = 2,
22
23
  size: D,
23
- placeholder: S
24
- } = T, N = S ?? z.select.placeholder, v = R(() => new Map(o.map((e) => [e.value, e.label])), [o]), W = R(() => {
25
- const e = r && r.map((l) => v.get(l));
26
- return e != null && e.length ? e.length <= c ? /* @__PURE__ */ t("div", { className: "flex flex-1 items-start justify-start gap-xs", children: e.map((l, n) => /* @__PURE__ */ t(f, { variant: "info", className: "max-w-[72px]", children: l }, n)) }) : /* @__PURE__ */ t("div", { className: "flex flex-1 items-center gap-xs", children: [
27
- ...e.slice(0, c).map((l, n) => /* @__PURE__ */ t(
28
- f,
24
+ placeholder: S,
25
+ required: v,
26
+ disableRequiredAsterisk: W
27
+ } = I, w = S ?? z.select.placeholder, N = V(), k = x ? `${N}-label` : void 0, A = g ? `${N}-hint` : void 0, M = T(() => new Map(c.map((e) => [e.value, e.label])), [c]), C = T(() => {
28
+ const e = t && t.map((n) => M.get(n));
29
+ return e != null && e.length ? e.length <= i ? /* @__PURE__ */ r("div", { className: "flex flex-1 items-start justify-start gap-xs", children: e.map((n, a) => /* @__PURE__ */ r(p, { variant: "info", className: "max-w-[72px]", children: n }, a)) }) : /* @__PURE__ */ r("div", { className: "flex flex-1 items-center gap-xs", children: [
30
+ ...e.slice(0, i).map((n, a) => /* @__PURE__ */ r(
31
+ p,
29
32
  {
30
33
  variant: "info",
31
34
  className: "max-w-[72px] overflow-hidden",
32
- children: /* @__PURE__ */ t("span", { className: "truncate", children: l })
35
+ children: /* @__PURE__ */ r("span", { className: "truncate", children: n })
33
36
  },
34
- n
37
+ a
35
38
  )),
36
- /* @__PURE__ */ i(f, { variant: "info", children: [
37
- e.length - c,
39
+ /* @__PURE__ */ u(p, { variant: "info", children: [
40
+ e.length - i,
38
41
  "+"
39
42
  ] }, "more")
40
- ] }) : /* @__PURE__ */ t(
41
- h,
43
+ ] }) : /* @__PURE__ */ r(
44
+ J,
42
45
  {
43
46
  size: "input",
44
47
  className: "grow-1 fix-y-text truncate text-left text-comp-select-text-placeholder",
45
48
  weight: "regular",
46
49
  component: "span",
47
- children: N
50
+ children: w
48
51
  }
49
52
  );
50
- }, [r, N, c, v]), [y, C] = u.useState(!1), [M, O] = u.useState(0), p = u.useRef(!1), j = A(null), a = (typeof x == "function" ? null : x) ?? j;
51
- return I(() => {
53
+ }, [t, w, i, M]), [y, O] = f.useState(!1), [R, j] = f.useState(0), m = f.useRef(!1), q = $(null), l = (typeof h == "function" ? null : h) ?? q;
54
+ return E(() => {
52
55
  const e = () => {
53
- a.current && O(a.current.offsetWidth);
56
+ l.current && j(l.current.offsetWidth);
54
57
  };
55
58
  e();
56
- const l = new ResizeObserver(e);
57
- return a.current && l.observe(a.current), () => {
58
- l.disconnect();
59
+ const n = new ResizeObserver(e);
60
+ return l.current && n.observe(l.current), () => {
61
+ n.disconnect();
59
62
  };
60
- }, [a]), /* @__PURE__ */ i("div", { className: "flex flex-col gap-sm", children: [
61
- g && /* @__PURE__ */ t(
62
- h,
63
- {
64
- component: "label",
65
- size: "sm",
66
- weight: "regular",
67
- className: "text-comp-select-text-primary",
68
- children: g
69
- }
70
- ),
71
- /* @__PURE__ */ i(
72
- _,
73
- {
74
- onOpenChange: (e) => {
75
- C(e);
76
- },
77
- children: [
78
- /* @__PURE__ */ t(B, { disabled: d, asChild: !0, children: /* @__PURE__ */ t(
79
- "button",
80
- {
81
- ref: a,
82
- type: "button",
83
- role: "input",
84
- tabIndex: 0,
85
- disabled: d,
86
- className: V({
87
- size: D,
88
- error: w,
89
- expanded: y,
90
- hasIcon: !!m || (r == null ? void 0 : r.length) === 0
91
- }),
92
- children: /* @__PURE__ */ i("div", { className: "flex min-w-0 flex-1 items-center gap-sm", children: [
93
- m && /* @__PURE__ */ t(
94
- "span",
95
- {
96
- className: d ? "text-comp-select-icon-disabled" : "text-comp-select-icon-brand-def",
97
- children: m
98
- }
99
- ),
100
- W,
101
- /* @__PURE__ */ t(
102
- P,
63
+ }, [l]), /* @__PURE__ */ r(
64
+ L,
65
+ {
66
+ label: x,
67
+ hint: g,
68
+ error: b,
69
+ required: v,
70
+ disableRequiredAsterisk: W,
71
+ labelId: k,
72
+ hintId: A,
73
+ children: /* @__PURE__ */ u(
74
+ P,
75
+ {
76
+ onOpenChange: (e) => {
77
+ O(e);
78
+ },
79
+ children: [
80
+ /* @__PURE__ */ r(U, { disabled: o, asChild: !0, children: /* @__PURE__ */ r(
81
+ "button",
82
+ {
83
+ ref: l,
84
+ type: "button",
85
+ role: "input",
86
+ tabIndex: 0,
87
+ disabled: o,
88
+ "aria-required": v,
89
+ className: _({
90
+ size: D,
91
+ error: b,
92
+ expanded: y,
93
+ hasIcon: !!d || (t == null ? void 0 : t.length) === 0
94
+ }),
95
+ children: /* @__PURE__ */ u("div", { className: "flex min-w-0 flex-1 items-center gap-sm", children: [
96
+ d && /* @__PURE__ */ r(
97
+ "span",
98
+ {
99
+ className: o ? "text-comp-select-icon-disabled" : "text-comp-select-icon-brand-def",
100
+ children: d
101
+ }
102
+ ),
103
+ C,
104
+ /* @__PURE__ */ r(
105
+ K,
106
+ {
107
+ className: Q(
108
+ "transition-transform duration-200",
109
+ y ? "rotate-0" : "rotate-180"
110
+ )
111
+ }
112
+ )
113
+ ] })
114
+ }
115
+ ) }),
116
+ /* @__PURE__ */ r(
117
+ G,
118
+ {
119
+ className: "mt-1",
120
+ style: {
121
+ width: R > 0 ? `${R}px` : void 0
122
+ },
123
+ onCloseAutoFocus: (e) => {
124
+ m.current || e.preventDefault(), m.current = !1;
125
+ },
126
+ children: c.map((e) => /* @__PURE__ */ r(
127
+ H,
103
128
  {
104
- className: U(
105
- "transition-transform duration-200",
106
- y ? "rotate-0" : "rotate-180"
107
- )
108
- }
109
- )
110
- ] })
111
- }
112
- ) }),
113
- /* @__PURE__ */ t(
114
- F,
115
- {
116
- className: "mt-1",
117
- style: {
118
- width: M > 0 ? `${M}px` : void 0
119
- },
120
- onCloseAutoFocus: (e) => {
121
- p.current || e.preventDefault(), p.current = !1;
122
- },
123
- children: o.map((e) => /* @__PURE__ */ t(
124
- L,
125
- {
126
- checked: r == null ? void 0 : r.includes(e.value),
127
- disabled: e.disabled,
128
- icon: e.icon,
129
- onCheckedChange: (l) => {
130
- l ? s == null || s([...r || [], e.value]) : s == null || s((r || []).filter((n) => n !== e.value)), p.current = !0;
129
+ checked: t == null ? void 0 : t.includes(e.value),
130
+ disabled: e.disabled,
131
+ icon: e.icon,
132
+ onCheckedChange: (n) => {
133
+ n ? s == null || s([...t || [], e.value]) : s == null || s((t || []).filter((a) => a !== e.value)), m.current = !0;
134
+ },
135
+ children: e.label
131
136
  },
132
- children: e.label
133
- },
134
- e.value
135
- ))
136
- }
137
- )
138
- ]
139
- }
140
- ),
141
- b && /* @__PURE__ */ t(
142
- h,
143
- {
144
- component: "p",
145
- size: "sm",
146
- weight: "regular",
147
- className: w ? "text-comp-select-text-error" : "text-comp-select-text-secondary",
148
- children: b
149
- }
150
- )
151
- ] });
137
+ e.value
138
+ ))
139
+ }
140
+ )
141
+ ]
142
+ }
143
+ )
144
+ }
145
+ );
152
146
  }
153
147
  );
154
- $.displayName = "MultiSelect";
148
+ X.displayName = "MultiSelect";
155
149
  export {
156
- $ as MultiSelect
150
+ X as MultiSelect
157
151
  };
@@ -19,7 +19,7 @@ const x = ({ className: i, ...a }) => /* @__PURE__ */ r(
19
19
  ...l
20
20
  }) => {
21
21
  const f = p.useId(), d = a || f;
22
- return /* @__PURE__ */ n("div", { className: "flex items-start gap-sm", children: [
22
+ return /* @__PURE__ */ n("div", { className: "isolate flex items-start gap-sm", children: [
23
23
  /* @__PURE__ */ r(
24
24
  s.Item,
25
25
  {
@@ -9,6 +9,8 @@ export interface ISelectProps {
9
9
  error?: boolean;
10
10
  /** Marks the field as required. */
11
11
  required?: boolean;
12
+ /** Hides the required asterisk even when `required` is true. @default false */
13
+ disableRequiredAsterisk?: boolean;
12
14
  /** Element displayed after the selected value. */
13
15
  suffix?: ReactNode;
14
16
  /** Icon or element displayed before the selected value. */
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,KAAK,SAAS,EAKf,MAAM,OAAO,CAAA;AAcd,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2FAA2F;IAC3F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,kDAAkD;IAClD,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3B;;;;;;;;;;OAUG;IACH,OAAO,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,SAAS,CAAA;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;QAClB,IAAI,CAAC,EAAE,SAAS,CAAA;KACjB,CAAC,CAAA;IACF,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,8EAA8E;IAC9E,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,gHAAgH;IAChH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,eAAO,MAAM,MAAM,wFA8LlB,CAAA"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,KAAK,SAAS,EAMf,MAAM,OAAO,CAAA;AAed,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2FAA2F;IAC3F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+EAA+E;IAC/E,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,kDAAkD;IAClD,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3B;;;;;;;;;;OAUG;IACH,OAAO,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,SAAS,CAAA;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;QAClB,IAAI,CAAC,EAAE,SAAS,CAAA;KACjB,CAAC,CAAA;IACF,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,8EAA8E;IAC9E,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,gHAAgH;IAChH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,eAAO,MAAM,MAAM,wFAsLlB,CAAA"}
@@ -1,30 +1,33 @@
1
- import { jsx as t, jsxs as p } from "react/jsx-runtime";
2
- import m, { forwardRef as A, useMemo as I, useRef as N, useEffect as R } from "react";
3
- import { triggerWrapperVariants as j } from "./utils.js";
4
- import { useMuzaTranslations as E } from "../../translations/TranslationContext.js";
5
- import { Typography as s } from "../Typography/Typography.js";
6
- import { DropdownMenu as P, DropdownMenuTrigger as _, DropdownMenuContent as k, DropdownMenuRadioGroup as B, DropdownMenuRadioItem as F } from "../DropdownMenu/DropdownMenu.js";
7
- import { AltArrowUpOutline as G } from "@solar-icons/react-perf";
8
- import { cn as L } from "../../utils/cn.js";
9
- const U = A(
10
- (z, f) => {
11
- const S = E(), {
12
- label: h,
13
- hint: x,
14
- error: g,
15
- options: c,
16
- onChange: a,
1
+ import { jsx as t, jsxs as y } from "react/jsx-runtime";
2
+ import u, { forwardRef as j, useId as k, useMemo as E, useRef as N, useEffect as S } from "react";
3
+ import { triggerWrapperVariants as P } from "./utils.js";
4
+ import { useMuzaTranslations as _ } from "../../translations/TranslationContext.js";
5
+ import { FormField as B } from "../FormField/FormField.js";
6
+ import { Typography as I } from "../Typography/Typography.js";
7
+ import { DropdownMenu as G, DropdownMenuTrigger as L, DropdownMenuContent as U, DropdownMenuRadioGroup as H, DropdownMenuRadioItem as J } from "../DropdownMenu/DropdownMenu.js";
8
+ import { AltArrowUpOutline as K } from "@solar-icons/react-perf";
9
+ import { cn as Q } from "../../utils/cn.js";
10
+ const X = j(
11
+ (M, p) => {
12
+ const T = _(), {
13
+ label: f,
14
+ hint: m,
15
+ error: h,
16
+ options: i,
17
+ onChange: s,
17
18
  value: r,
18
- disabled: i,
19
- prefix: b,
20
- size: M,
21
- placeholder: T,
22
- shouldScrollToSelectedOption: w,
23
- collisionPadding: D
24
- } = z, v = T ?? S.select.placeholder, O = I(() => {
25
- const e = r && c.find((l) => l.value === r);
19
+ disabled: a,
20
+ prefix: g,
21
+ size: z,
22
+ placeholder: D,
23
+ shouldScrollToSelectedOption: x,
24
+ collisionPadding: O,
25
+ required: b,
26
+ disableRequiredAsterisk: W
27
+ } = M, w = D ?? T.select.placeholder, v = k(), A = f ? `${v}-label` : void 0, C = m ? `${v}-hint` : void 0, V = E(() => {
28
+ const e = r && i.find((o) => o.value === r);
26
29
  return e ? typeof e.label != "function" ? /* @__PURE__ */ t(
27
- s,
30
+ I,
28
31
  {
29
32
  size: "input",
30
33
  className: "grow-1 fix-y-text truncate text-left text-comp-select-text-primary",
@@ -33,128 +36,120 @@ const U = A(
33
36
  children: e.label
34
37
  }
35
38
  ) : e.label : /* @__PURE__ */ t(
36
- s,
39
+ I,
37
40
  {
38
41
  size: "input",
39
42
  className: "grow-1 fix-y-text truncate text-left text-comp-select-text-placeholder",
40
43
  weight: "regular",
41
44
  component: "span",
42
- children: v
45
+ children: w
43
46
  }
44
47
  );
45
- }, [c, r, v]), [o, W] = m.useState(!1), [y, C] = m.useState(0), d = m.useRef(!1), V = N(null), u = N({}), n = (typeof f == "function" ? null : f) ?? V;
46
- return R(() => {
48
+ }, [i, r, w]), [l, q] = u.useState(!1), [R, F] = u.useState(0), c = u.useRef(!1), $ = N(null), d = N({}), n = (typeof p == "function" ? null : p) ?? $;
49
+ return S(() => {
47
50
  const e = () => {
48
- n.current && C(n.current.offsetWidth);
51
+ n.current && F(n.current.offsetWidth);
49
52
  };
50
53
  e();
51
- const l = new ResizeObserver(e);
52
- return n.current && l.observe(n.current), () => {
53
- l.disconnect();
54
+ const o = new ResizeObserver(e);
55
+ return n.current && o.observe(n.current), () => {
56
+ o.disconnect();
54
57
  };
55
- }, [n]), R(() => {
58
+ }, [n]), S(() => {
56
59
  var e;
57
- o && r && u.current[r] && w && ((e = u.current[r]) == null || e.scrollIntoView({ block: "nearest" }));
58
- }, [o, w, r]), /* @__PURE__ */ p("div", { className: "flex flex-1 flex-col gap-sm", children: [
59
- h && /* @__PURE__ */ t(
60
- s,
61
- {
62
- component: "label",
63
- size: "sm",
64
- weight: "regular",
65
- className: "text-comp-select-text-primary",
66
- children: h
67
- }
68
- ),
69
- /* @__PURE__ */ p(
70
- P,
71
- {
72
- onOpenChange: (e) => {
73
- W(e);
74
- },
75
- children: [
76
- /* @__PURE__ */ t(_, { disabled: i, asChild: !0, children: /* @__PURE__ */ t(
77
- "button",
78
- {
79
- ref: n,
80
- type: "button",
81
- role: "input",
82
- tabIndex: 0,
83
- disabled: i,
84
- className: j({ size: M, error: g, expanded: o }),
85
- children: /* @__PURE__ */ p("div", { className: "flex min-w-0 flex-1 items-center gap-sm", children: [
86
- b && /* @__PURE__ */ t(
87
- "span",
88
- {
89
- className: i ? "text-comp-select-icon-disabled" : "text-comp-select-icon-brand-def",
90
- children: b
91
- }
92
- ),
93
- O,
94
- /* @__PURE__ */ t(
95
- G,
60
+ l && r && d.current[r] && x && ((e = d.current[r]) == null || e.scrollIntoView({ block: "nearest" }));
61
+ }, [l, x, r]), /* @__PURE__ */ t(
62
+ B,
63
+ {
64
+ label: f,
65
+ hint: m,
66
+ error: h,
67
+ required: b,
68
+ disableRequiredAsterisk: W,
69
+ labelId: A,
70
+ hintId: C,
71
+ className: "flex-1",
72
+ children: /* @__PURE__ */ y(
73
+ G,
74
+ {
75
+ onOpenChange: (e) => {
76
+ q(e);
77
+ },
78
+ children: [
79
+ /* @__PURE__ */ t(L, { disabled: a, asChild: !0, children: /* @__PURE__ */ t(
80
+ "button",
81
+ {
82
+ ref: n,
83
+ type: "button",
84
+ role: "input",
85
+ tabIndex: 0,
86
+ disabled: a,
87
+ "aria-required": b,
88
+ className: P({ size: z, error: h, expanded: l }),
89
+ children: /* @__PURE__ */ y("div", { className: "flex min-w-0 flex-1 items-center gap-sm", children: [
90
+ g && /* @__PURE__ */ t(
91
+ "span",
92
+ {
93
+ className: a ? "text-comp-select-icon-disabled" : "text-comp-select-icon-brand-def",
94
+ children: g
95
+ }
96
+ ),
97
+ V,
98
+ /* @__PURE__ */ t(
99
+ K,
100
+ {
101
+ className: Q(
102
+ "transition-transform duration-200",
103
+ l ? "rotate-0" : "rotate-180"
104
+ )
105
+ }
106
+ )
107
+ ] })
108
+ }
109
+ ) }),
110
+ /* @__PURE__ */ t(
111
+ U,
112
+ {
113
+ className: "mt-1",
114
+ style: {
115
+ width: R > 0 ? `${R}px` : void 0
116
+ },
117
+ onCloseAutoFocus: (e) => {
118
+ c.current || e.preventDefault(), c.current = !1;
119
+ },
120
+ collisionPadding: O,
121
+ children: /* @__PURE__ */ t(
122
+ H,
96
123
  {
97
- className: L(
98
- "transition-transform duration-200",
99
- o ? "rotate-0" : "rotate-180"
100
- )
124
+ value: r,
125
+ onValueChange: (e) => {
126
+ c.current = !0, s == null || s(e);
127
+ },
128
+ children: i.map((e) => /* @__PURE__ */ t(
129
+ J,
130
+ {
131
+ value: e.value.toString(),
132
+ disabled: e.disabled,
133
+ icon: e.icon,
134
+ ref: (o) => {
135
+ d.current[e.value] = o;
136
+ },
137
+ children: e.label
138
+ },
139
+ e.value
140
+ ))
101
141
  }
102
142
  )
103
- ] })
104
- }
105
- ) }),
106
- /* @__PURE__ */ t(
107
- k,
108
- {
109
- className: "mt-1",
110
- style: {
111
- width: y > 0 ? `${y}px` : void 0
112
- },
113
- onCloseAutoFocus: (e) => {
114
- d.current || e.preventDefault(), d.current = !1;
115
- },
116
- collisionPadding: D,
117
- children: /* @__PURE__ */ t(
118
- B,
119
- {
120
- value: r,
121
- onValueChange: (e) => {
122
- d.current = !0, a == null || a(e);
123
- },
124
- children: c.map((e) => /* @__PURE__ */ t(
125
- F,
126
- {
127
- value: e.value.toString(),
128
- disabled: e.disabled,
129
- icon: e.icon,
130
- ref: (l) => {
131
- u.current[e.value] = l;
132
- },
133
- children: e.label
134
- },
135
- e.value
136
- ))
137
- }
138
- )
139
- }
140
- )
141
- ]
142
- }
143
- ),
144
- x && /* @__PURE__ */ t(
145
- s,
146
- {
147
- component: "p",
148
- size: "sm",
149
- weight: "regular",
150
- className: g ? "text-comp-select-text-error" : "text-comp-select-text-secondary",
151
- children: x
152
- }
153
- )
154
- ] });
143
+ }
144
+ )
145
+ ]
146
+ }
147
+ )
148
+ }
149
+ );
155
150
  }
156
151
  );
157
- U.displayName = "Select";
152
+ X.displayName = "Select";
158
153
  export {
159
- U as Select
154
+ X as Select
160
155
  };
@@ -98,6 +98,10 @@ export interface TextEditorProps {
98
98
  disabled?: boolean;
99
99
  /** Allows viewing but not editing content */
100
100
  readOnly?: boolean;
101
+ /** Marks the field as required and displays a red asterisk next to the label. @default false */
102
+ required?: boolean;
103
+ /** Hides the required asterisk even when `required` is true. @default false */
104
+ disableRequiredAsterisk?: boolean;
101
105
  /** Error state. String shows as error message, boolean only shows error styling. */
102
106
  error?: string | boolean;
103
107
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/TextEditor/TextEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/TextEditor/TextEditor.tsx"],"names":[],"mappings":"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"}