@lets-events/react 11.3.0 → 11.4.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.
Files changed (58) hide show
  1. package/.eslintrc.json +2 -2
  2. package/.turbo/turbo-build.log +18 -20
  3. package/CHANGELOG.md +6 -0
  4. package/dist/index.d.mts +967 -207
  5. package/dist/index.d.ts +967 -207
  6. package/dist/index.js +265 -54
  7. package/dist/index.mjs +261 -48
  8. package/package.json +1 -1
  9. package/src/components/Alert.tsx +303 -303
  10. package/src/components/Avatar.tsx +55 -55
  11. package/src/components/Badge.tsx +125 -128
  12. package/src/components/Box.tsx +3 -3
  13. package/src/components/Button/index.tsx +16 -16
  14. package/src/components/Button/styledComponents.ts +287 -287
  15. package/src/components/ButtonGroup.tsx +484 -484
  16. package/src/components/Calendar/index.tsx +136 -136
  17. package/src/components/Calendar/styledComponents.ts +209 -209
  18. package/src/components/Card.tsx +48 -48
  19. package/src/components/CheckboxGroup.tsx +196 -214
  20. package/src/components/Container.tsx +39 -39
  21. package/src/components/Drawer/index.tsx +48 -48
  22. package/src/components/Drawer/styledComponents.ts +46 -46
  23. package/src/components/Dropdown.tsx +167 -167
  24. package/src/components/Filter.tsx +164 -164
  25. package/src/components/Flex.tsx +118 -118
  26. package/src/components/FormFields/ErrorFormMessage.tsx +36 -36
  27. package/src/components/FormFields/Form.tsx +25 -25
  28. package/src/components/FormFields/FormLabel.tsx +29 -29
  29. package/src/components/FormFields/MultiSelectFormField.tsx +65 -0
  30. package/src/components/FormFields/TextAreaFormField.tsx +46 -46
  31. package/src/components/FormFields/TextFormField.tsx +46 -46
  32. package/src/components/Grid.tsx +137 -137
  33. package/src/components/Icon.tsx +47 -47
  34. package/src/components/MenuDropdown/index.tsx +30 -30
  35. package/src/components/MenuDropdown/styledComponents.ts +31 -31
  36. package/src/components/Modal.tsx +90 -90
  37. package/src/components/MultiSelect.tsx +216 -0
  38. package/src/components/RadioGroup.tsx +210 -210
  39. package/src/components/Section.tsx +33 -33
  40. package/src/components/Step.tsx +164 -164
  41. package/src/components/Switch.tsx +108 -108
  42. package/src/components/Text.tsx +38 -39
  43. package/src/components/TextField.tsx +315 -315
  44. package/src/components/TextareaField.tsx +128 -128
  45. package/src/components/TimePicker.tsx +298 -298
  46. package/src/components/Toast/components/ToastItem.tsx +41 -41
  47. package/src/components/Toast/components/ToastProvider.tsx +63 -63
  48. package/src/components/Toast/hooks/useToast.ts +12 -12
  49. package/src/components/Toast/index.tsx +5 -5
  50. package/src/components/Toast/styles/index.ts +135 -135
  51. package/src/components/Toast/types/index.ts +46 -46
  52. package/src/components/Tooltip/index.tsx +66 -66
  53. package/src/components/Tooltip/styles.ts +77 -77
  54. package/src/hooks/useOnClickOutside.tsx +20 -20
  55. package/src/index.tsx +44 -42
  56. package/src/styles/index.ts +38 -38
  57. package/src/types/typographyValues.ts +178 -178
  58. package/tsconfig.json +3 -3
package/dist/index.js CHANGED
@@ -1053,6 +1053,8 @@ __export(index_exports, {
1053
1053
  InputStyled: () => InputStyled,
1054
1054
  MenuDropdown: () => MenuDropdown,
1055
1055
  Modal: () => Modal,
1056
+ MultiSelect: () => MultiSelect,
1057
+ MultiSelectFormField: () => MultiSelectFormField,
1056
1058
  RadioGroup: () => RadioGroup,
1057
1059
  RadioGroupStyled: () => RadioGroupStyled,
1058
1060
  RadioItem: () => RadioItem,
@@ -1650,7 +1652,6 @@ var import_jsx_runtime2 = require("react/jsx-runtime");
1650
1652
  var TextStyle = styled(import_themes.Text, {
1651
1653
  fontFamily: "$default",
1652
1654
  lineHeight: "$base",
1653
- color: "$grey950",
1654
1655
  variants: {
1655
1656
  typography: typographyValues,
1656
1657
  fontWeight: {
@@ -1667,7 +1668,7 @@ function Text(_a) {
1667
1668
  TextStyle,
1668
1669
  __spreadProps(__spreadValues({}, props), {
1669
1670
  css: __spreadValues({
1670
- color: color ? "$" + color : "$grey950"
1671
+ color: color ? "$" + color : "$dark600"
1671
1672
  }, props.css)
1672
1673
  })
1673
1674
  );
@@ -3079,10 +3080,10 @@ var import_themes9 = require("@radix-ui/themes");
3079
3080
  var import_jsx_runtime9 = require("react/jsx-runtime");
3080
3081
  var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3081
3082
  fontFamily: "$default",
3082
- "svg": {
3083
+ svg: {
3083
3084
  display: "none"
3084
3085
  },
3085
- "label": {
3086
+ label: {
3086
3087
  display: "flex",
3087
3088
  alignItems: "center",
3088
3089
  gap: "$8",
@@ -3125,7 +3126,7 @@ var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3125
3126
  variants: {
3126
3127
  color: {
3127
3128
  success: {
3128
- "label": {
3129
+ label: {
3129
3130
  "&:focus button, &:hover button": {
3130
3131
  boxShadow: "0px 0px 0px 4px rgba(38, 167, 67, 0.50)"
3131
3132
  }
@@ -3140,7 +3141,7 @@ var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3140
3141
  },
3141
3142
  blue: {},
3142
3143
  error: {
3143
- "label": {
3144
+ label: {
3144
3145
  "&:focus button, &:hover button": {
3145
3146
  boxShadow: "0px 0px 0px 4px rgba(225, 86, 98, 0.50)"
3146
3147
  }
@@ -3156,7 +3157,7 @@ var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3156
3157
  },
3157
3158
  disabled: {
3158
3159
  true: {
3159
- "label": {
3160
+ label: {
3160
3161
  cursor: "not-allowed",
3161
3162
  opacity: 0.5,
3162
3163
  "&:focus button, &:hover button": {
@@ -3182,7 +3183,7 @@ var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3182
3183
  color: "blue",
3183
3184
  disabled: false,
3184
3185
  css: {
3185
- "label": {
3186
+ label: {
3186
3187
  "&:focus button, &:hover button": {
3187
3188
  boxShadow: "0px 0px 0px 4px rgba(56, 129, 255, 0.50)"
3188
3189
  }
@@ -3240,21 +3241,14 @@ var CheckboxGroupStyled = styled(import_themes9.CheckboxGroup.Root, {
3240
3241
  disabled: false
3241
3242
  }
3242
3243
  });
3244
+ var StyledItem = styled(import_themes9.CheckboxGroup.Item, {});
3243
3245
  function CheckboxGroup(_a) {
3244
- var _b = _a, {
3245
- children
3246
- } = _b, props = __objRest(_b, [
3247
- "children"
3248
- ]);
3246
+ var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
3249
3247
  return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(CheckboxGroupStyled, __spreadProps(__spreadValues({}, props), { children }));
3250
3248
  }
3251
3249
  function CheckboxItem(_a) {
3252
- var _b = _a, {
3253
- children
3254
- } = _b, props = __objRest(_b, [
3255
- "children"
3256
- ]);
3257
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_themes9.CheckboxGroup.Item, __spreadProps(__spreadValues({}, props), { children }));
3250
+ var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
3251
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StyledItem, __spreadProps(__spreadValues({}, props), { children }));
3258
3252
  }
3259
3253
 
3260
3254
  // src/components/Filter.tsx
@@ -3549,9 +3543,6 @@ var BadgeStyled = styled(import_themes12.Badge, {
3549
3543
  fontFamily: "$default",
3550
3544
  borderRadius: "$sm",
3551
3545
  verticalAlign: "middle",
3552
- "svg": {
3553
- marginRight: "10px"
3554
- },
3555
3546
  variants: {
3556
3547
  color: {
3557
3548
  primary: {
@@ -9259,10 +9250,175 @@ function Tooltip({
9259
9250
  ] }) });
9260
9251
  }
9261
9252
 
9262
- // src/components/Grid.tsx
9253
+ // src/components/MultiSelect.tsx
9263
9254
  var import_themes19 = require("@radix-ui/themes");
9255
+ var import_react_fontawesome2 = require("@fortawesome/react-fontawesome");
9256
+ var import_free_solid_svg_icons2 = require("@fortawesome/free-solid-svg-icons");
9257
+ var import_react14 = require("react");
9258
+ var import_react15 = __toESM(require("react"));
9264
9259
  var import_jsx_runtime26 = require("react/jsx-runtime");
9265
- var GridStyled = styled(import_themes19.Grid, {
9260
+ var StyledContent = styled(import_themes19.DropdownMenu.Content, {
9261
+ backgroundColor: "$dark50",
9262
+ borderRadius: "$sm",
9263
+ padding: "$8 0",
9264
+ boxShadow: "0px 2px 4px 0px #23354329, 0px 4px 4px 0px #23354314",
9265
+ boxSizing: "border-box",
9266
+ border: "1px solid $dark300"
9267
+ });
9268
+ var StyledTrigger = styled("div", {
9269
+ minHeight: "40px",
9270
+ borderRadius: "$sm",
9271
+ cursor: "pointer",
9272
+ display: "flex",
9273
+ justifyContent: "start",
9274
+ alignItems: "center",
9275
+ padding: "$6 $14",
9276
+ boxSizing: "border-box",
9277
+ gap: "4px",
9278
+ variants: {
9279
+ color: {
9280
+ default: {
9281
+ border: "1px solid $dark300"
9282
+ },
9283
+ error: {
9284
+ border: "1px solid $error400"
9285
+ }
9286
+ }
9287
+ },
9288
+ defaultVariants: {
9289
+ color: "default"
9290
+ }
9291
+ });
9292
+ var itemStyle = {
9293
+ padding: "$4 $16",
9294
+ minHeight: "$32",
9295
+ height: "32px",
9296
+ boxSizing: "border-box",
9297
+ backgroundColor: "$dark50",
9298
+ display: "block",
9299
+ "&:hover": {
9300
+ backgroundColor: "$dark100"
9301
+ }
9302
+ };
9303
+ var BadgeWrapper = styled("div", {
9304
+ flex: "1",
9305
+ display: "flex",
9306
+ justifyContent: "start",
9307
+ flexWrap: "wrap",
9308
+ gap: "4px"
9309
+ });
9310
+ var BadgeCloseBtn = styled("div", {
9311
+ borderRadius: "100%",
9312
+ width: "16px",
9313
+ height: "16px",
9314
+ minWidth: "16px",
9315
+ minHeight: "16px",
9316
+ display: "flex",
9317
+ justifyContent: "center",
9318
+ alignItems: "center",
9319
+ "&:hover": {
9320
+ backgroundColor: "$dark600"
9321
+ }
9322
+ });
9323
+ var MultiSelect = import_react15.default.forwardRef(
9324
+ ({
9325
+ placeholder,
9326
+ value: selectedValues = [],
9327
+ onValueChange,
9328
+ options,
9329
+ color,
9330
+ width = "100%"
9331
+ }, fowardedRef) => {
9332
+ var _a;
9333
+ const [isOpen, setIsOpen] = (0, import_react14.useState)(false);
9334
+ const triggerRef = (0, import_react14.useRef)(null);
9335
+ const labelByValue = (0, import_react14.useMemo)(() => {
9336
+ return options.reduce((prev, curr) => {
9337
+ return __spreadProps(__spreadValues({}, prev), {
9338
+ [curr.value]: curr.label
9339
+ });
9340
+ }, {});
9341
+ }, [options]);
9342
+ const handleRemove = (0, import_react14.useCallback)(
9343
+ (value) => {
9344
+ const newValue = selectedValues.filter((v) => v !== value);
9345
+ onValueChange == null ? void 0 : onValueChange(newValue);
9346
+ },
9347
+ [selectedValues, onValueChange]
9348
+ );
9349
+ const menuWidth = (_a = triggerRef.current) == null ? void 0 : _a.offsetWidth;
9350
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_themes19.Theme, { children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_themes19.DropdownMenu.Root, { open: isOpen, onOpenChange: () => setIsOpen(false), children: [
9351
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_themes19.DropdownMenu.Trigger, { onClick: () => setIsOpen(true), children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
9352
+ StyledTrigger,
9353
+ {
9354
+ css: {
9355
+ width
9356
+ },
9357
+ ref: (r) => {
9358
+ if (!r) return;
9359
+ triggerRef.current = r;
9360
+ if (fowardedRef) {
9361
+ if (typeof fowardedRef === "function") fowardedRef(r);
9362
+ else {
9363
+ fowardedRef.current = r;
9364
+ }
9365
+ }
9366
+ },
9367
+ color,
9368
+ children: [
9369
+ selectedValues.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Text, { typography: "labelMedium", css: { flex: 1 }, children: placeholder != null ? placeholder : "Selecione" }) : /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(BadgeWrapper, { children: selectedValues.map((value) => {
9370
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Badge, { size: "sm", color: "dark", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(Flex2, { justify: "between", align: "center", children: [
9371
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Text, { typography: "badgeSmall", color: "dark100", children: labelByValue[value] }),
9372
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
9373
+ BadgeCloseBtn,
9374
+ {
9375
+ onClick: (e) => {
9376
+ e.stopPropagation();
9377
+ handleRemove(value);
9378
+ },
9379
+ role: "button",
9380
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react_fontawesome2.FontAwesomeIcon, { icon: import_free_solid_svg_icons2.faX, size: "xs" })
9381
+ }
9382
+ )
9383
+ ] }) }, value);
9384
+ }) }),
9385
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
9386
+ import_react_fontawesome2.FontAwesomeIcon,
9387
+ {
9388
+ icon: isOpen ? import_free_solid_svg_icons2.faChevronUp : import_free_solid_svg_icons2.faChevronDown,
9389
+ size: "sm",
9390
+ color: colors.dark600
9391
+ }
9392
+ )
9393
+ ]
9394
+ }
9395
+ ) }),
9396
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
9397
+ StyledContent,
9398
+ {
9399
+ css: {
9400
+ width: menuWidth ? menuWidth + "px" : width
9401
+ },
9402
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
9403
+ CheckboxGroup,
9404
+ {
9405
+ value: selectedValues,
9406
+ onValueChange: (v) => {
9407
+ onValueChange == null ? void 0 : onValueChange(v);
9408
+ },
9409
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Flex2, { direction: "column", gap: 8, children: options.map(({ value, label }, i) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(CheckboxItem, { value, css: itemStyle, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Text, { typography: "labelSmall", children: label }) }, i)) })
9410
+ }
9411
+ )
9412
+ }
9413
+ )
9414
+ ] }) });
9415
+ }
9416
+ );
9417
+
9418
+ // src/components/Grid.tsx
9419
+ var import_themes20 = require("@radix-ui/themes");
9420
+ var import_jsx_runtime27 = require("react/jsx-runtime");
9421
+ var GridStyled = styled(import_themes20.Grid, {
9266
9422
  display: "grid",
9267
9423
  variants: {
9268
9424
  display: {
@@ -9383,13 +9539,13 @@ var GridStyled = styled(import_themes19.Grid, {
9383
9539
  });
9384
9540
  function Grid(_a) {
9385
9541
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9386
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(GridStyled, __spreadProps(__spreadValues({}, props), { children }));
9542
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(GridStyled, __spreadProps(__spreadValues({}, props), { children }));
9387
9543
  }
9388
9544
 
9389
9545
  // src/components/Container.tsx
9390
- var import_themes20 = require("@radix-ui/themes");
9391
- var import_jsx_runtime27 = require("react/jsx-runtime");
9392
- var ContainerStyled = styled(import_themes20.Container, {
9546
+ var import_themes21 = require("@radix-ui/themes");
9547
+ var import_jsx_runtime28 = require("react/jsx-runtime");
9548
+ var ContainerStyled = styled(import_themes21.Container, {
9393
9549
  variants: {
9394
9550
  size: {
9395
9551
  xs: { maxWidth: "576px" },
@@ -9418,13 +9574,13 @@ var ContainerStyled = styled(import_themes20.Container, {
9418
9574
  });
9419
9575
  function Container(_a) {
9420
9576
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9421
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ContainerStyled, __spreadProps(__spreadValues({}, props), { children }));
9577
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ContainerStyled, __spreadProps(__spreadValues({}, props), { children }));
9422
9578
  }
9423
9579
 
9424
9580
  // src/components/Section.tsx
9425
- var import_themes21 = require("@radix-ui/themes");
9426
- var import_jsx_runtime28 = require("react/jsx-runtime");
9427
- var SectionStyled = styled(import_themes21.Section, {
9581
+ var import_themes22 = require("@radix-ui/themes");
9582
+ var import_jsx_runtime29 = require("react/jsx-runtime");
9583
+ var SectionStyled = styled(import_themes22.Section, {
9428
9584
  variants: {
9429
9585
  size: {
9430
9586
  xs: { maxWidth: "576px" },
@@ -9447,26 +9603,26 @@ var SectionStyled = styled(import_themes21.Section, {
9447
9603
  });
9448
9604
  function Section(_a) {
9449
9605
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9450
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SectionStyled, __spreadProps(__spreadValues({}, props), { children }));
9606
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SectionStyled, __spreadProps(__spreadValues({}, props), { children }));
9451
9607
  }
9452
9608
 
9453
9609
  // src/components/FormFields/ErrorFormMessage.tsx
9454
- var import_free_solid_svg_icons2 = require("@fortawesome/free-solid-svg-icons");
9455
- var import_react_fontawesome2 = require("@fortawesome/react-fontawesome");
9456
- var import_jsx_runtime29 = require("react/jsx-runtime");
9610
+ var import_free_solid_svg_icons3 = require("@fortawesome/free-solid-svg-icons");
9611
+ var import_react_fontawesome3 = require("@fortawesome/react-fontawesome");
9612
+ var import_jsx_runtime30 = require("react/jsx-runtime");
9457
9613
  var ErrorFormMessage = ({ message: message2 }) => {
9458
9614
  if (!message2) return null;
9459
9615
  if (typeof message2 !== "string") {
9460
9616
  return null;
9461
9617
  }
9462
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(Flex2, { justify: "start", align: "center", gap: 6, children: [
9463
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_react_fontawesome2.FontAwesomeIcon, { icon: import_free_solid_svg_icons2.faXmarkCircle, color: colors.error600, size: "1x" }),
9464
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Text, { typography: "bodyXS", fontWeight: "medium", color: "error600", children: message2 })
9618
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(Flex2, { justify: "start", align: "center", gap: 6, children: [
9619
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react_fontawesome3.FontAwesomeIcon, { icon: import_free_solid_svg_icons3.faXmarkCircle, color: colors.error600, size: "1x" }),
9620
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Text, { typography: "bodyXS", fontWeight: "medium", color: "error600", children: message2 })
9465
9621
  ] });
9466
9622
  };
9467
9623
 
9468
9624
  // src/components/FormFields/FormLabel.tsx
9469
- var import_jsx_runtime30 = require("react/jsx-runtime");
9625
+ var import_jsx_runtime31 = require("react/jsx-runtime");
9470
9626
  var FormLabel = ({
9471
9627
  name,
9472
9628
  label,
@@ -9474,7 +9630,7 @@ var FormLabel = ({
9474
9630
  required
9475
9631
  }) => {
9476
9632
  if (!label) return null;
9477
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
9633
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
9478
9634
  Text,
9479
9635
  {
9480
9636
  typography: "labelMedium",
@@ -9483,7 +9639,7 @@ var FormLabel = ({
9483
9639
  id: `${name}-label`,
9484
9640
  children: [
9485
9641
  label,
9486
- !required && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Text, { color: "dark500", children: " (opcional)" })
9642
+ !required && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Text, { color: "dark500", children: " (opcional)" })
9487
9643
  ]
9488
9644
  }
9489
9645
  );
@@ -9491,7 +9647,7 @@ var FormLabel = ({
9491
9647
 
9492
9648
  // src/components/FormFields/TextAreaFormField.tsx
9493
9649
  var import_react_hook_form = require("react-hook-form");
9494
- var import_jsx_runtime31 = require("react/jsx-runtime");
9650
+ var import_jsx_runtime32 = require("react/jsx-runtime");
9495
9651
  var TextAreaFormField = ({
9496
9652
  name,
9497
9653
  label,
@@ -9505,8 +9661,8 @@ var TextAreaFormField = ({
9505
9661
  } = (0, import_react_hook_form.useFormContext)();
9506
9662
  const haveError = !!errors[name];
9507
9663
  const errorMsg = (_a = errors[name]) == null ? void 0 : _a.message;
9508
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(Flex2, { direction: "column", children: [
9509
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
9664
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Flex2, { direction: "column", children: [
9665
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
9510
9666
  FormLabel,
9511
9667
  {
9512
9668
  name,
@@ -9515,7 +9671,7 @@ var TextAreaFormField = ({
9515
9671
  haveError
9516
9672
  }
9517
9673
  ),
9518
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
9674
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
9519
9675
  TextareaField,
9520
9676
  __spreadProps(__spreadValues({}, register(name, { required })), {
9521
9677
  placeholder,
@@ -9523,13 +9679,13 @@ var TextAreaFormField = ({
9523
9679
  "aria-labelledby": `${name}-label`
9524
9680
  })
9525
9681
  ),
9526
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ErrorFormMessage, { message: errorMsg })
9682
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ErrorFormMessage, { message: errorMsg })
9527
9683
  ] });
9528
9684
  };
9529
9685
 
9530
9686
  // src/components/FormFields/TextFormField.tsx
9531
9687
  var import_react_hook_form2 = require("react-hook-form");
9532
- var import_jsx_runtime32 = require("react/jsx-runtime");
9688
+ var import_jsx_runtime33 = require("react/jsx-runtime");
9533
9689
  var TextFormField = ({
9534
9690
  name,
9535
9691
  label,
@@ -9543,8 +9699,8 @@ var TextFormField = ({
9543
9699
  } = (0, import_react_hook_form2.useFormContext)();
9544
9700
  const haveError = !!errors[name];
9545
9701
  const errorMsg = (_a = errors[name]) == null ? void 0 : _a.message;
9546
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Flex2, { direction: "column", children: [
9547
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
9702
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(Flex2, { direction: "column", children: [
9703
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
9548
9704
  FormLabel,
9549
9705
  {
9550
9706
  name,
@@ -9553,7 +9709,7 @@ var TextFormField = ({
9553
9709
  haveError
9554
9710
  }
9555
9711
  ),
9556
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
9712
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
9557
9713
  TextField,
9558
9714
  __spreadProps(__spreadValues({}, register(name, { required })), {
9559
9715
  placeholder,
@@ -9561,18 +9717,71 @@ var TextFormField = ({
9561
9717
  "aria-labelledby": `${name}-label`
9562
9718
  })
9563
9719
  ),
9564
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ErrorFormMessage, { message: errorMsg })
9720
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ErrorFormMessage, { message: errorMsg })
9565
9721
  ] });
9566
9722
  };
9567
9723
 
9568
9724
  // src/components/FormFields/Form.tsx
9569
9725
  var import_react_hook_form3 = require("react-hook-form");
9570
- var import_jsx_runtime33 = require("react/jsx-runtime");
9726
+ var import_jsx_runtime34 = require("react/jsx-runtime");
9571
9727
  var Form = (_a) => {
9572
9728
  var _b = _a, { onSubmit, children } = _b, props = __objRest(_b, ["onSubmit", "children"]);
9573
9729
  const methods = (0, import_react_hook_form3.useForm)(props);
9574
9730
  const { handleSubmit } = methods;
9575
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react_hook_form3.FormProvider, __spreadProps(__spreadValues({}, methods), { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("form", { onSubmit: handleSubmit(onSubmit), children }) }));
9731
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react_hook_form3.FormProvider, __spreadProps(__spreadValues({}, methods), { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("form", { onSubmit: handleSubmit(onSubmit), children }) }));
9732
+ };
9733
+
9734
+ // src/components/FormFields/MultiSelectFormField.tsx
9735
+ var import_react_hook_form4 = require("react-hook-form");
9736
+ var import_jsx_runtime35 = require("react/jsx-runtime");
9737
+ var MultiSelectFormField = (_a) => {
9738
+ var _b = _a, {
9739
+ name,
9740
+ label,
9741
+ required
9742
+ } = _b, rest = __objRest(_b, [
9743
+ "name",
9744
+ "label",
9745
+ "required"
9746
+ ]);
9747
+ var _a2;
9748
+ const {
9749
+ formState: { errors }
9750
+ } = (0, import_react_hook_form4.useFormContext)();
9751
+ const { field } = (0, import_react_hook_form4.useController)({
9752
+ name,
9753
+ rules: {
9754
+ required
9755
+ },
9756
+ defaultValue: []
9757
+ });
9758
+ const { value, onChange, ref, onBlur, disabled } = field;
9759
+ const haveError = !!errors[name];
9760
+ const errorMsg = (_a2 = errors[name]) == null ? void 0 : _a2.message;
9761
+ const handleChange = (v) => {
9762
+ onChange(v);
9763
+ };
9764
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Flex2, { direction: "column", children: [
9765
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
9766
+ FormLabel,
9767
+ {
9768
+ name,
9769
+ label,
9770
+ required,
9771
+ haveError
9772
+ }
9773
+ ),
9774
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
9775
+ MultiSelect,
9776
+ __spreadValues({
9777
+ value,
9778
+ onValueChange: handleChange,
9779
+ ref,
9780
+ color: haveError ? "error" : "default"
9781
+ }, rest)
9782
+ ),
9783
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ErrorFormMessage, { message: errorMsg })
9784
+ ] });
9576
9785
  };
9577
9786
  // Annotate the CommonJS export names for ESM import in node:
9578
9787
  0 && (module.exports = {
@@ -9618,6 +9827,8 @@ var Form = (_a) => {
9618
9827
  InputStyled,
9619
9828
  MenuDropdown,
9620
9829
  Modal,
9830
+ MultiSelect,
9831
+ MultiSelectFormField,
9621
9832
  RadioGroup,
9622
9833
  RadioGroupStyled,
9623
9834
  RadioItem,