@trsys-tech/matrix-library 0.3.3 → 0.3.4

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 (38) hide show
  1. package/dist/command.es.js +52 -47
  2. package/dist/command.es.js.map +1 -1
  3. package/dist/components/text-field/TextField.d.ts +2 -2
  4. package/dist/components/text-field/TextField.d.ts.map +1 -1
  5. package/dist/datagrid.es.js +41 -41
  6. package/dist/datagrid.es.js.map +1 -1
  7. package/dist/formcheckbox.es.js +4 -4
  8. package/dist/formcheckbox.es.js.map +1 -1
  9. package/dist/formcombobox.es.js +6 -6
  10. package/dist/formcombobox.es.js.map +1 -1
  11. package/dist/formdatepicker.es.js +11 -11
  12. package/dist/formdatepicker.es.js.map +1 -1
  13. package/dist/formdaterangepicker.es.js +12 -12
  14. package/dist/formdaterangepicker.es.js.map +1 -1
  15. package/dist/forminput.es.js +8 -8
  16. package/dist/forminput.es.js.map +1 -1
  17. package/dist/formmultiselect.es.js +10 -10
  18. package/dist/formmultiselect.es.js.map +1 -1
  19. package/dist/formrating.es.js +21 -21
  20. package/dist/formrating.es.js.map +1 -1
  21. package/dist/formselect.es.js +11 -11
  22. package/dist/formselect.es.js.map +1 -1
  23. package/dist/formswitch.es.js +7 -7
  24. package/dist/formswitch.es.js.map +1 -1
  25. package/dist/formtextarea.es.js +5 -5
  26. package/dist/formtextarea.es.js.map +1 -1
  27. package/dist/formtimepicker.es.js +5 -5
  28. package/dist/formtimepicker.es.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.es.js +203 -193
  32. package/dist/index.es.js.map +1 -1
  33. package/dist/select.es.js +1 -1
  34. package/dist/select.es.js.map +1 -1
  35. package/dist/style.css +1 -1
  36. package/dist/textfield.es.js +12 -11
  37. package/dist/textfield.es.js.map +1 -1
  38. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"formcombobox.es.js","sources":["../src/components/form-combobox/FormCombobox.tsx"],"sourcesContent":["import { useMemo, useState } from \"react\";\r\nimport { Check, ChevronDown, Spinner } from \"@trsys-tech/matrix-icons\";\r\nimport { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button, ButtonProps } from \"../button/Button\";\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { Combobox, ComboboxContent, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxList, ComboboxTrigger } from \"../combobox/Combobox\";\r\n\r\ntype FormComboboxProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n options: { value: string | number; label: string | number }[];\r\n loading?: boolean;\r\n loadingText?: string;\r\n emptyOptionsText?: string;\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n comboboxProps?: React.ComponentProps<typeof Combobox>;\r\n comboboxTriggerProps?: React.ComponentProps<typeof ComboboxTrigger>;\r\n comboboxValueProps?: ButtonProps;\r\n comboboxContentProps?: React.ComponentProps<typeof ComboboxContent>;\r\n comboboxItemProps?: React.ComponentProps<typeof ComboboxItem>;\r\n };\r\n };\r\n\r\nconst FormCombobox = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormComboboxProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n emptyOptionsText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleChange = (value: string | number) => {\r\n field.onChange(value);\r\n setOpen(false);\r\n };\r\n\r\n const value = useMemo(() => options.find(option => option.value === field.value), [field.value, options]);\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <Combobox {...(slotProps?.comboboxProps ?? {})} open={open} onOpenChange={setOpen}>\r\n <FormControl>\r\n <ComboboxTrigger\r\n className={cn(\"*:truncate [&>span]:inline-block\", slotProps?.comboboxTriggerProps?.className)}\r\n disabled={disabled ?? loading}\r\n asChild\r\n aria-required={required}\r\n {...(slotProps?.comboboxTriggerProps ?? {})}\r\n >\r\n <Button\r\n variant=\"text\"\r\n {...(slotProps?.comboboxValueProps ?? {})}\r\n className={cn(\r\n \"group flex h-9 w-full border text-sm border-gray-300 disabled:bg-gray-100\",\r\n slotProps?.comboboxValueProps?.className,\r\n )}\r\n endIcon={\r\n <ChevronDown\r\n role=\"button\"\r\n aria-label=\"Expand dropdown\"\r\n className=\"ms-auto h-5 w-5 !text-muted-foreground cursor-pointer group-data-[state=open]:rotate-180 transition-transform\"\r\n />\r\n }\r\n loading={loading}\r\n >\r\n {loading && loadingText ? (\r\n <span className=\"text-muted-foreground\">{loadingText}</span>\r\n ) : (\r\n value?.label || <span className=\"text-muted-foreground\">{placeholder || label}</span>\r\n )}\r\n </Button>\r\n </ComboboxTrigger>\r\n </FormControl>\r\n <ComboboxContent {...(slotProps?.comboboxContentProps ?? {})}>\r\n <ComboboxInput placeholder=\"Search for a car...\" />\r\n <ComboboxList>\r\n {loading && (\r\n <ComboboxEmpty>\r\n <Spinner className=\"inline-block mb-0.5\" /> {loadingText || \"Loading...\"}\r\n </ComboboxEmpty>\r\n )}\r\n {!loading && !options.length ? (\r\n <ComboboxItem\r\n {...(slotProps?.comboboxItemProps ?? {})}\r\n value=\"8fdcaeb67c8ad943c80fe54c3b1059b700d9254389a38a4a1fc39a6eee7564623\"\r\n disabled\r\n >\r\n {emptyOptionsText || \"No Items\"}\r\n </ComboboxItem>\r\n ) : null}\r\n {options?.map(({ value, label }, index) => (\r\n <ComboboxItem\r\n {...(slotProps?.comboboxItemProps ?? {})}\r\n value={String(value)}\r\n key={index + \"_\" + label}\r\n onSelect={() => handleChange(value)}\r\n >\r\n {label}\r\n <Check className={cn(\"ml-auto\", value === field.value ? \"opacity-100\" : \"opacity-0\")} />\r\n </ComboboxItem>\r\n ))}\r\n </ComboboxList>\r\n </ComboboxContent>\r\n </Combobox>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormCombobox, type FormComboboxProps };\r\n"],"names":["FormCombobox","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","emptyOptionsText","placeholder","slotProps","required","formItemProps","field","useController","open","setOpen","useState","handleChange","value","useMemo","option","jsx","FormField","jsxs","FormItem","FormLabel","Combobox","FormControl","ComboboxTrigger","cn","Button","ChevronDown","ComboboxContent","ComboboxInput","ComboboxList","ComboboxEmpty","Spinner","ComboboxItem","index","createElement","Check","FormMessage"],"mappings":";;;;;;;;AAgCM,MAAAA,KAAe,CACnBC,MACG;AACG,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,aAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACDf,GAEE,EAAE,OAAAgB,EAAM,IAAIC,EAAc,EAAE,MAAAhB,GAAM,SAAAC,GAAS,OAAAG,GAAO,cAAAF,GAAc,UAAAC,GAAU,kBAAAE,GAAkB,GAC5F,CAACY,GAAMC,CAAO,IAAIC,EAAS,EAAK,GAEhCC,IAAe,CAACC,MAA2B;AAC/C,IAAAN,EAAM,SAASM,CAAK,GACpBH,EAAQ,EAAK;AAAA,EACf,GAEMG,IAAQC,EAAQ,MAAMf,EAAQ,KAAK,CAAUgB,MAAAA,EAAO,UAAUR,EAAM,KAAK,GAAG,CAACA,EAAM,OAAOR,CAAO,CAAC;AAGtG,SAAA,gBAAAiB;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAxB;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAU,QAEP,gBAAAW,EAACC,GAAU,EAAA,GAAGb,GACZ,UAAA;AAAA,QAAA,gBAAAY,EAACE,GAAW,EAAA,GAAIhB,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAN;AAAA,UACAO,KAAY,gBAAAW,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,QACA,gBAAAE,EAACG,KAAU,GAAIjB,GAAW,iBAAiB,CAAC,GAAI,MAAAK,GAAY,cAAcC,GACxE,UAAA;AAAA,UAAA,gBAAAM,EAACM,GACC,EAAA,UAAA,gBAAAN;AAAA,YAACO;AAAA,YAAA;AAAA,cACC,WAAWC,EAAG,oCAAoCpB,GAAW,sBAAsB,SAAS;AAAA,cAC5F,UAAUT,KAAYK;AAAA,cACtB,SAAO;AAAA,cACP,iBAAeK;AAAA,cACd,GAAID,GAAW,wBAAwB,CAAC;AAAA,cAEzC,UAAA,gBAAAY;AAAA,gBAACS;AAAA,gBAAA;AAAA,kBACC,SAAQ;AAAA,kBACP,GAAIrB,GAAW,sBAAsB,CAAC;AAAA,kBACvC,WAAWoB;AAAA,oBACT;AAAA,oBACApB,GAAW,oBAAoB;AAAA,kBACjC;AAAA,kBACA,SACE,gBAAAY;AAAA,oBAACU;AAAA,oBAAA;AAAA,sBACC,MAAK;AAAA,sBACL,cAAW;AAAA,sBACX,WAAU;AAAA,oBAAA;AAAA,kBACZ;AAAA,kBAEF,SAAA1B;AAAA,kBAEC,UAAWA,KAAAC,IACT,gBAAAe,EAAA,QAAA,EAAK,WAAU,yBAAyB,UAAAf,EAAA,CAAY,IAErDY,GAAO,SAAU,gBAAAG,EAAA,QAAA,EAAK,WAAU,yBAAyB,eAAelB,EAAM,CAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,YAElF;AAAA,UAAA,GAEJ;AAAA,4BACC6B,GAAiB,EAAA,GAAIvB,GAAW,wBAAwB,CACvD,GAAA,UAAA;AAAA,YAAC,gBAAAY,EAAAY,GAAA,EAAc,aAAY,sBAAsB,CAAA;AAAA,8BAChDC,GACE,EAAA,UAAA;AAAA,cAAA7B,uBACE8B,GACC,EAAA,UAAA;AAAA,gBAAC,gBAAAd,EAAAe,GAAA,EAAQ,WAAU,sBAAsB,CAAA;AAAA,gBAAE;AAAA,gBAAE9B,KAAe;AAAA,cAAA,GAC9D;AAAA,cAED,CAACD,KAAW,CAACD,EAAQ,SACpB,gBAAAiB;AAAA,gBAACgB;AAAA,gBAAA;AAAA,kBACE,GAAI5B,GAAW,qBAAqB,CAAC;AAAA,kBACtC,OAAM;AAAA,kBACN,UAAQ;AAAA,kBAEP,UAAoBF,KAAA;AAAA,gBAAA;AAAA,cAAA,IAErB;AAAA,cACHH,GAAS,IAAI,CAAC,EAAE,OAAAc,GAAO,OAAAf,KAASmC,MAC/B,gBAAAC;AAAA,gBAACF;AAAA,gBAAA;AAAA,kBACE,GAAI5B,GAAW,qBAAqB,CAAC;AAAA,kBACtC,OAAO,OAAOS,CAAK;AAAA,kBACnB,KAAKoB,IAAQ,MAAMnC;AAAAA,kBACnB,UAAU,MAAMc,EAAaC,CAAK;AAAA,gBAAA;AAAA,gBAEjCf;AAAAA,gBACD,gBAAAkB,EAACmB,GAAM,EAAA,WAAWX,EAAG,WAAWX,MAAUN,EAAM,QAAQ,gBAAgB,WAAW,EAAG,CAAA;AAAA,cAEzF,CAAA;AAAA,YAAA,EACH,CAAA;AAAA,UAAA,EACF,CAAA;AAAA,QAAA,GACF;AAAA,0BACC6B,GAAa,EAAA,GAAIhC,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formcombobox.es.js","sources":["../src/components/form-combobox/FormCombobox.tsx"],"sourcesContent":["import { useMemo, useState } from \"react\";\r\nimport { Check, ChevronDown, Spinner } from \"@trsys-tech/matrix-icons\";\r\nimport { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button, ButtonProps } from \"../button/Button\";\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { Combobox, ComboboxContent, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxList, ComboboxTrigger } from \"../combobox/Combobox\";\r\n\r\ntype FormComboboxProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n options: { value: string | number; label: string | number }[];\r\n loading?: boolean;\r\n loadingText?: string;\r\n emptyOptionsText?: string;\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n comboboxProps?: React.ComponentProps<typeof Combobox>;\r\n comboboxTriggerProps?: React.ComponentProps<typeof ComboboxTrigger>;\r\n comboboxValueProps?: ButtonProps;\r\n comboboxContentProps?: React.ComponentProps<typeof ComboboxContent>;\r\n comboboxItemProps?: React.ComponentProps<typeof ComboboxItem>;\r\n };\r\n };\r\n\r\nconst FormCombobox = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormComboboxProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n emptyOptionsText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n const [open, setOpen] = useState(false);\r\n\r\n const handleChange = (value: string | number) => {\r\n field.onChange(value);\r\n setOpen(false);\r\n };\r\n\r\n const value = useMemo(() => options.find(option => option.value === field.value), [field.value, options]);\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <Combobox {...(slotProps?.comboboxProps ?? {})} open={open} onOpenChange={setOpen}>\r\n <FormControl>\r\n <ComboboxTrigger\r\n className={cn(\"*:truncate [&>span]:inline-block\", slotProps?.comboboxTriggerProps?.className)}\r\n disabled={disabled ?? loading}\r\n asChild\r\n aria-required={required}\r\n {...(slotProps?.comboboxTriggerProps ?? {})}\r\n >\r\n <Button\r\n variant=\"text\"\r\n {...(slotProps?.comboboxValueProps ?? {})}\r\n className={cn(\r\n \"group flex h-9 w-full border text-sm border-gray-300 disabled:bg-gray-100\",\r\n slotProps?.comboboxValueProps?.className,\r\n )}\r\n endIcon={\r\n <ChevronDown\r\n role=\"button\"\r\n aria-label=\"Expand dropdown\"\r\n className=\"ms-auto h-5 w-5 !text-muted-foreground cursor-pointer group-data-[state=open]:rotate-180 transition-transform\"\r\n />\r\n }\r\n loading={loading}\r\n >\r\n {loading && loadingText ? (\r\n <span className=\"text-muted-foreground\">{loadingText}</span>\r\n ) : (\r\n value?.label || <span className=\"text-muted-foreground\">{placeholder || label}</span>\r\n )}\r\n </Button>\r\n </ComboboxTrigger>\r\n </FormControl>\r\n <ComboboxContent {...(slotProps?.comboboxContentProps ?? {})}>\r\n <ComboboxInput placeholder=\"Search for a car...\" />\r\n <ComboboxList>\r\n {loading && (\r\n <ComboboxEmpty>\r\n <Spinner className=\"inline-block mb-0.5\" /> {loadingText || \"Loading...\"}\r\n </ComboboxEmpty>\r\n )}\r\n {!loading && !options.length ? (\r\n <ComboboxItem\r\n {...(slotProps?.comboboxItemProps ?? {})}\r\n value=\"8fdcaeb67c8ad943c80fe54c3b1059b700d9254389a38a4a1fc39a6eee7564623\"\r\n disabled\r\n >\r\n {emptyOptionsText || \"No Items\"}\r\n </ComboboxItem>\r\n ) : null}\r\n {options?.map(({ value, label }, index) => (\r\n <ComboboxItem\r\n {...(slotProps?.comboboxItemProps ?? {})}\r\n value={String(value)}\r\n key={index + \"_\" + label}\r\n onSelect={() => handleChange(value)}\r\n >\r\n {label}\r\n <Check className={cn(\"ml-auto\", value === field.value ? \"opacity-100\" : \"opacity-0\")} />\r\n </ComboboxItem>\r\n ))}\r\n </ComboboxList>\r\n </ComboboxContent>\r\n </Combobox>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormCombobox, type FormComboboxProps };\r\n"],"names":["FormCombobox","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","emptyOptionsText","placeholder","slotProps","required","formItemProps","field","useController","open","setOpen","useState","handleChange","value","useMemo","option","jsx","FormField","jsxs","FormItem","FormLabel","Combobox","FormControl","ComboboxTrigger","cn","Button","ChevronDown","ComboboxContent","ComboboxInput","ComboboxList","ComboboxEmpty","Spinner","ComboboxItem","index","createElement","Check","FormMessage"],"mappings":"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"}
@@ -1,24 +1,24 @@
1
- import { jsx as r, jsxs as t } from "react/jsx-runtime";
2
- import { FormField as P, FormItem as f, FormLabel as F, FormControl as h, FormMessage as g } from "./form.es.js";
1
+ import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
+ import { FormField as P, FormItem as f, FormLabel as F, FormControl as g, FormMessage as h } from "./form.es.js";
3
3
  import { DatePicker as x } from "./datepicker.es.js";
4
4
  const j = (l) => {
5
- const { name: m, control: n, defaultValue: a, disabled: o, rules: c, shouldUnregister: d, label: i, slotProps: e, required: p, ...u } = l;
6
- return /* @__PURE__ */ r(
5
+ const { name: m, control: n, defaultValue: a, disabled: o, rules: d, shouldUnregister: i, label: c, slotProps: r, required: p, ...u } = l;
6
+ return /* @__PURE__ */ e(
7
7
  P,
8
8
  {
9
9
  control: n,
10
10
  name: m,
11
11
  defaultValue: a,
12
12
  disabled: o,
13
- rules: c,
14
- shouldUnregister: d,
13
+ rules: d,
14
+ shouldUnregister: i,
15
15
  render: ({ field: s }) => /* @__PURE__ */ t(f, { ...u, children: [
16
- /* @__PURE__ */ t(F, { ...e?.formLabelProps ?? {}, children: [
17
- i,
18
- p && /* @__PURE__ */ r("span", { className: "text-danger text-sm", children: "*" })
16
+ /* @__PURE__ */ t(F, { ...r?.formLabelProps ?? {}, children: [
17
+ c,
18
+ p && /* @__PURE__ */ e("span", { className: "text-danger text-sm leading-4", children: "*" })
19
19
  ] }),
20
- /* @__PURE__ */ r(h, { ...e?.formControlProps ?? {}, children: /* @__PURE__ */ r(x, { ...e?.datepickerProps ?? {}, selected: s.value, onSelect: s.onChange, disabled: o }) }),
21
- /* @__PURE__ */ r(g, { ...e?.formMessageProps ?? {} })
20
+ /* @__PURE__ */ e(g, { ...r?.formControlProps ?? {}, children: /* @__PURE__ */ e(x, { ...r?.datepickerProps ?? {}, selected: s.value, onSelect: s.onChange, disabled: o }) }),
21
+ /* @__PURE__ */ e(h, { ...r?.formMessageProps ?? {} })
22
22
  ] })
23
23
  }
24
24
  );
@@ -1 +1 @@
1
- {"version":3,"file":"formdatepicker.es.js","sources":["../src/components/form-date-picker/FormDatePicker.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\nimport { DatePicker, type DatePickerProps } from \"../date-picker/DatePicker\";\r\n\r\ntype FormDatePickerProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n disabled?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n datepickerProps?: DatePickerProps;\r\n };\r\n };\r\n\r\nconst FormDatePicker = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormDatePickerProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <DatePicker {...(slotProps?.datepickerProps ?? {})} selected={field.value} onSelect={field.onChange} disabled={disabled} />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormDatePicker, type FormDatePickerProps };\r\n"],"names":["FormDatePicker","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","DatePicker","FormMessage"],"mappings":";;;AAsBM,MAAAA,IAAiB,CAA0EC,MAAoD;AACnJ,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,QACA,gBAAAA,EAACM,KAAa,GAAIT,GAAW,oBAAoB,CAAC,GAChD,4BAACU,GAAY,EAAA,GAAIV,GAAW,mBAAmB,IAAK,UAAUK,EAAM,OAAO,UAAUA,EAAM,UAAU,UAAAT,EAAoB,CAAA,GAC3H;AAAA,0BACCe,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formdatepicker.es.js","sources":["../src/components/form-date-picker/FormDatePicker.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\nimport { DatePicker, type DatePickerProps } from \"../date-picker/DatePicker\";\r\n\r\ntype FormDatePickerProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n disabled?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n datepickerProps?: DatePickerProps;\r\n };\r\n };\r\n\r\nconst FormDatePicker = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormDatePickerProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <DatePicker {...(slotProps?.datepickerProps ?? {})} selected={field.value} onSelect={field.onChange} disabled={disabled} />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormDatePicker, type FormDatePickerProps };\r\n"],"names":["FormDatePicker","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","DatePicker","FormMessage"],"mappings":";;;AAsBM,MAAAA,IAAiB,CAA0EC,MAAoD;AACnJ,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,QACA,gBAAAA,EAACM,KAAa,GAAIT,GAAW,oBAAoB,CAAC,GAChD,4BAACU,GAAY,EAAA,GAAIV,GAAW,mBAAmB,IAAK,UAAUK,EAAM,OAAO,UAAUA,EAAM,UAAU,UAAAT,EAAoB,CAAA,GAC3H;AAAA,0BACCe,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -1,21 +1,21 @@
1
1
  import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
- import { FormField as P, FormItem as f, FormLabel as g, FormControl as F, FormMessage as h } from "./form.es.js";
2
+ import { FormField as u, FormItem as P, FormLabel as f, FormControl as F, FormMessage as h } from "./form.es.js";
3
3
  import { DateRangePicker as x } from "./daterangepicker.es.js";
4
4
  const j = (l) => {
5
- const { name: m, control: n, defaultValue: a, disabled: o, rules: c, shouldUnregister: d, label: i, slotProps: r, required: p, ...u } = l;
5
+ const { name: n, control: a, defaultValue: m, disabled: o, rules: d, shouldUnregister: i, label: c, slotProps: r, required: p, ...g } = l;
6
6
  return /* @__PURE__ */ e(
7
- P,
7
+ u,
8
8
  {
9
- control: n,
10
- name: m,
11
- defaultValue: a,
9
+ control: a,
10
+ name: n,
11
+ defaultValue: m,
12
12
  disabled: o,
13
- rules: c,
14
- shouldUnregister: d,
15
- render: ({ field: s }) => /* @__PURE__ */ t(f, { ...u, children: [
16
- /* @__PURE__ */ t(g, { ...r?.formLabelProps ?? {}, children: [
17
- i,
18
- p && /* @__PURE__ */ e("span", { className: "text-danger text-sm", children: "*" })
13
+ rules: d,
14
+ shouldUnregister: i,
15
+ render: ({ field: s }) => /* @__PURE__ */ t(P, { ...g, children: [
16
+ /* @__PURE__ */ t(f, { ...r?.formLabelProps ?? {}, children: [
17
+ c,
18
+ p && /* @__PURE__ */ e("span", { className: "text-danger text-sm leading-4", children: "*" })
19
19
  ] }),
20
20
  /* @__PURE__ */ e(F, { ...r?.formControlProps ?? {}, children: /* @__PURE__ */ e(x, { ...r?.datepickerProps ?? {}, selected: s.value, onSelect: s.onChange, disabled: o }) }),
21
21
  /* @__PURE__ */ e(h, { ...r?.formMessageProps ?? {} })
@@ -1 +1 @@
1
- {"version":3,"file":"formdaterangepicker.es.js","sources":["../src/components/form-date-range-picker/FormDateRangePicker.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\n\r\nimport { DateRangePicker, DateRangePickerProps } from \"../date-picker/DateRangePicker\";\r\n\r\ntype FormDateRangePickerProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n datepickerProps?: DateRangePickerProps;\r\n };\r\n };\r\n\r\nconst FormDateRangePicker = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(\r\n props: FormDateRangePickerProps<TFieldValues, TName>,\r\n) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <DateRangePicker {...(slotProps?.datepickerProps ?? {})} selected={field.value} onSelect={field.onChange} disabled={disabled} />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormDateRangePicker, type FormDateRangePickerProps };\r\n"],"names":["FormDateRangePicker","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","DateRangePicker","FormMessage"],"mappings":";;;AAsBM,MAAAA,IAAsB,CAC1BC,MACG;AACH,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,QACA,gBAAAA,EAACM,KAAa,GAAIT,GAAW,oBAAoB,CAAC,GAChD,4BAACU,GAAiB,EAAA,GAAIV,GAAW,mBAAmB,IAAK,UAAUK,EAAM,OAAO,UAAUA,EAAM,UAAU,UAAAT,EAAoB,CAAA,GAChI;AAAA,0BACCe,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formdaterangepicker.es.js","sources":["../src/components/form-date-range-picker/FormDateRangePicker.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\n\r\nimport { DateRangePicker, DateRangePickerProps } from \"../date-picker/DateRangePicker\";\r\n\r\ntype FormDateRangePickerProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n datepickerProps?: DateRangePickerProps;\r\n };\r\n };\r\n\r\nconst FormDateRangePicker = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(\r\n props: FormDateRangePickerProps<TFieldValues, TName>,\r\n) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <DateRangePicker {...(slotProps?.datepickerProps ?? {})} selected={field.value} onSelect={field.onChange} disabled={disabled} />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormDateRangePicker, type FormDateRangePickerProps };\r\n"],"names":["FormDateRangePicker","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","DateRangePicker","FormMessage"],"mappings":";;;AAsBM,MAAAA,IAAsB,CAC1BC,MACG;AACH,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,QACA,gBAAAA,EAACM,KAAa,GAAIT,GAAW,oBAAoB,CAAC,GAChD,4BAACU,GAAiB,EAAA,GAAIV,GAAW,mBAAmB,IAAK,UAAUK,EAAM,OAAO,UAAUA,EAAM,UAAU,UAAAT,EAAoB,CAAA,GAChI;AAAA,0BACCe,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -1,30 +1,30 @@
1
1
  import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
- import { FormField as F, FormItem as c, FormLabel as f, FormControl as x, FormMessage as h } from "./form.es.js";
3
- import { TextField as b } from "./textfield.es.js";
2
+ import { FormField as F, FormItem as c, FormLabel as f, FormControl as x, FormMessage as g } from "./form.es.js";
3
+ import { TextField as h } from "./textfield.es.js";
4
4
  const q = (l) => {
5
- const { name: m, control: n, defaultValue: p, disabled: o, rules: i, shouldUnregister: d, label: a, slotProps: r, required: s, ...u } = l;
5
+ const { name: m, control: n, defaultValue: i, disabled: o, rules: p, shouldUnregister: d, label: a, slotProps: r, required: s, ...u } = l;
6
6
  return /* @__PURE__ */ e(
7
7
  F,
8
8
  {
9
9
  control: n,
10
10
  name: m,
11
- defaultValue: p,
11
+ defaultValue: i,
12
12
  disabled: o,
13
- rules: i,
13
+ rules: p,
14
14
  shouldUnregister: d,
15
15
  render: ({ field: P }) => /* @__PURE__ */ t(c, { ...u, children: [
16
16
  /* @__PURE__ */ t(f, { ...r?.formLabelProps ?? {}, children: [
17
17
  a,
18
- s && /* @__PURE__ */ e("span", { className: "text-danger text-sm", children: "*" })
18
+ s && /* @__PURE__ */ e("span", { className: "text-danger text-sm leading-4", children: "*" })
19
19
  ] }),
20
20
  /* @__PURE__ */ e(x, { ...r?.formControlProps ?? {}, children: /* @__PURE__ */ e(
21
- b,
21
+ h,
22
22
  {
23
23
  ...r?.textFieldProps ?? {},
24
24
  slotProps: { inputProps: { ...r?.textFieldProps?.slotProps?.inputProps, ...P, disabled: o, "aria-required": s } }
25
25
  }
26
26
  ) }),
27
- /* @__PURE__ */ e(h, { ...r?.formMessageProps ?? {} })
27
+ /* @__PURE__ */ e(g, { ...r?.formMessageProps ?? {} })
28
28
  ] })
29
29
  }
30
30
  );
@@ -1 +1 @@
1
- {"version":3,"file":"forminput.es.js","sources":["../src/components/form-input/FormInput.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\nimport { TextField, TextFieldProps } from \"../text-field/TextField\";\r\n\r\ntype FormInputProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n textFieldProps?: TextFieldProps & React.RefAttributes<HTMLInputElement>;\r\n };\r\n };\r\n\r\nconst FormInput = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormInputProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <TextField\r\n {...(slotProps?.textFieldProps ?? {})}\r\n slotProps={{ inputProps: { ...slotProps?.textFieldProps?.slotProps?.inputProps, ...field, disabled, \"aria-required\": required } }}\r\n />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormInput, type FormInputProps };\r\n"],"names":["FormInput","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","TextField","FormMessage"],"mappings":";;;AAkBM,MAAAA,IAAY,CAA0EC,MAA+C;AACzI,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,0BACCM,GAAa,EAAA,GAAIT,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAG;AAAA,UAACO;AAAA,UAAA;AAAA,YACE,GAAIV,GAAW,kBAAkB,CAAC;AAAA,YACnC,WAAW,EAAE,YAAY,EAAE,GAAGA,GAAW,gBAAgB,WAAW,YAAY,GAAGK,GAAO,UAAAT,GAAU,iBAAiBK,EAAW,EAAA;AAAA,UAAA;AAAA,QAAA,GAEpI;AAAA,0BACCU,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"forminput.es.js","sources":["../src/components/form-input/FormInput.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\nimport { TextField, TextFieldProps } from \"../text-field/TextField\";\r\n\r\ntype FormInputProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n textFieldProps?: TextFieldProps & React.RefAttributes<HTMLInputElement>;\r\n };\r\n };\r\n\r\nconst FormInput = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormInputProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <TextField\r\n {...(slotProps?.textFieldProps ?? {})}\r\n slotProps={{ inputProps: { ...slotProps?.textFieldProps?.slotProps?.inputProps, ...field, disabled, \"aria-required\": required } }}\r\n />\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormInput, type FormInputProps };\r\n"],"names":["FormInput","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","TextField","FormMessage"],"mappings":";;;AAkBM,MAAAA,IAAY,CAA0EC,MAA+C;AACzI,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV;AAGvH,SAAA,gBAAAW;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAV;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAO,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIR,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAE,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,0BACCM,GAAa,EAAA,GAAIT,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAG;AAAA,UAACO;AAAA,UAAA;AAAA,YACE,GAAIV,GAAW,kBAAkB,CAAC;AAAA,YACnC,WAAW,EAAE,YAAY,EAAE,GAAGA,GAAW,gBAAgB,WAAW,YAAY,GAAGK,GAAO,UAAAT,GAAU,iBAAiBK,EAAW,EAAA;AAAA,UAAA;AAAA,QAAA,GAEpI;AAAA,0BACCU,GAAa,EAAA,GAAIX,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -9,16 +9,16 @@ const T = (u) => {
9
9
  defaultValue: s,
10
10
  disabled: r,
11
11
  rules: a,
12
- shouldUnregister: m,
12
+ shouldUnregister: i,
13
13
  label: c,
14
14
  options: p,
15
15
  loading: f,
16
- loadingText: h,
17
- placeholder: g,
16
+ loadingText: g,
17
+ placeholder: h,
18
18
  slotProps: o,
19
- required: i,
19
+ required: m,
20
20
  ...F
21
- } = u, { field: x } = P({ name: t, control: n, rules: a, defaultValue: s, disabled: r, shouldUnregister: m }), C = (l) => {
21
+ } = u, { field: x } = P({ name: t, control: n, rules: a, defaultValue: s, disabled: r, shouldUnregister: i }), C = (l) => {
22
22
  x.onChange(l);
23
23
  };
24
24
  return /* @__PURE__ */ e(
@@ -29,22 +29,22 @@ const T = (u) => {
29
29
  defaultValue: s,
30
30
  disabled: r,
31
31
  rules: a,
32
- shouldUnregister: m,
32
+ shouldUnregister: i,
33
33
  render: ({ field: l }) => /* @__PURE__ */ d(M, { ...F, children: [
34
34
  /* @__PURE__ */ d(S, { ...o?.formLabelProps ?? {}, children: [
35
35
  c,
36
- i && /* @__PURE__ */ e("span", { className: "text-danger text-sm", children: "*" })
36
+ m && /* @__PURE__ */ e("span", { className: "text-danger text-sm leading-4", children: "*" })
37
37
  ] }),
38
38
  /* @__PURE__ */ e(j, { children: /* @__PURE__ */ e(
39
39
  v,
40
40
  {
41
- "aria-required": i,
41
+ "aria-required": m,
42
42
  options: p,
43
43
  onValueChange: C,
44
- placeholder: g,
44
+ placeholder: h,
45
45
  value: l.value,
46
46
  loading: f,
47
- loadingText: h,
47
+ loadingText: g,
48
48
  disabled: r,
49
49
  ...o?.multiSelectProps ?? {}
50
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"formmultiselect.es.js","sources":["../src/components/form-multi-select/FormMultiSelect.tsx"],"sourcesContent":["import { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { MultiSelect, MultiSelectProps } from \"../multi-select/MultiSelect\";\r\n\r\ntype FormMultiSelectProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n loading?: boolean;\r\n loadingText?: string;\r\n options: MultiSelectProps[\"options\"];\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n multiSelectProps?: Partial<MultiSelectProps>;\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n };\r\n };\r\n\r\nconst FormMultiSelect = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormMultiSelectProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const handleChange = (value: string[]) => {\r\n field.onChange(value);\r\n };\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormControl>\r\n <MultiSelect\r\n aria-required={required}\r\n options={options}\r\n onValueChange={handleChange}\r\n placeholder={placeholder}\r\n value={field.value}\r\n loading={loading}\r\n loadingText={loadingText}\r\n disabled={disabled}\r\n {...(slotProps?.multiSelectProps ?? {})}\r\n />\r\n </FormControl>\r\n\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormMultiSelect, type FormMultiSelectProps };\r\n"],"names":["FormMultiSelect","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","placeholder","slotProps","required","formItemProps","field","useController","handleChange","value","jsx","FormField","jsxs","FormItem","FormLabel","FormControl","MultiSelect","FormMessage"],"mappings":";;;;AAuBM,MAAAA,IAAkB,CACtBC,MACG;AACG,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,aAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACDd,GAEE,EAAE,OAAAe,EAAM,IAAIC,EAAc,EAAE,MAAAf,GAAM,SAAAC,GAAS,OAAAG,GAAO,cAAAF,GAAc,UAAAC,GAAU,kBAAAE,GAAkB,GAE5FW,IAAe,CAACC,MAAoB;AACxC,IAAAH,EAAM,SAASG,CAAK;AAAA,EACtB;AAGE,SAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAlB;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAS,QAEP,gBAAAM,EAACC,GAAU,EAAA,GAAGR,GACZ,UAAA;AAAA,QAAA,gBAAAO,EAACE,GAAW,EAAA,GAAIX,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAL;AAAA,UACAM,KAAY,gBAAAM,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,0BACCK,GACC,EAAA,UAAA,gBAAAL;AAAA,UAACM;AAAA,UAAA;AAAA,YACC,iBAAeZ;AAAA,YACf,SAAAL;AAAA,YACA,eAAeS;AAAA,YACf,aAAAN;AAAA,YACA,OAAOI,EAAM;AAAA,YACb,SAAAN;AAAA,YACA,aAAAC;AAAA,YACA,UAAAN;AAAA,YACC,GAAIQ,GAAW,oBAAoB,CAAA;AAAA,UAAC;AAAA,QAAA,GAEzC;AAAA,0BAECc,GAAa,EAAA,GAAId,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formmultiselect.es.js","sources":["../src/components/form-multi-select/FormMultiSelect.tsx"],"sourcesContent":["import { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { MultiSelect, MultiSelectProps } from \"../multi-select/MultiSelect\";\r\n\r\ntype FormMultiSelectProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n loading?: boolean;\r\n loadingText?: string;\r\n options: MultiSelectProps[\"options\"];\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n multiSelectProps?: Partial<MultiSelectProps>;\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n };\r\n };\r\n\r\nconst FormMultiSelect = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormMultiSelectProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const handleChange = (value: string[]) => {\r\n field.onChange(value);\r\n };\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormControl>\r\n <MultiSelect\r\n aria-required={required}\r\n options={options}\r\n onValueChange={handleChange}\r\n placeholder={placeholder}\r\n value={field.value}\r\n loading={loading}\r\n loadingText={loadingText}\r\n disabled={disabled}\r\n {...(slotProps?.multiSelectProps ?? {})}\r\n />\r\n </FormControl>\r\n\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormMultiSelect, type FormMultiSelectProps };\r\n"],"names":["FormMultiSelect","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","placeholder","slotProps","required","formItemProps","field","useController","handleChange","value","jsx","FormField","jsxs","FormItem","FormLabel","FormControl","MultiSelect","FormMessage"],"mappings":";;;;AAuBM,MAAAA,IAAkB,CACtBC,MACG;AACG,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,aAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACDd,GAEE,EAAE,OAAAe,EAAM,IAAIC,EAAc,EAAE,MAAAf,GAAM,SAAAC,GAAS,OAAAG,GAAO,cAAAF,GAAc,UAAAC,GAAU,kBAAAE,GAAkB,GAE5FW,IAAe,CAACC,MAAoB;AACxC,IAAAH,EAAM,SAASG,CAAK;AAAA,EACtB;AAGE,SAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAlB;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAS,QAEP,gBAAAM,EAACC,GAAU,EAAA,GAAGR,GACZ,UAAA;AAAA,QAAA,gBAAAO,EAACE,GAAW,EAAA,GAAIX,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAL;AAAA,UACAM,KAAY,gBAAAM,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,0BACCK,GACC,EAAA,UAAA,gBAAAL;AAAA,UAACM;AAAA,UAAA;AAAA,YACC,iBAAeZ;AAAA,YACf,SAAAL;AAAA,YACA,eAAeS;AAAA,YACf,aAAAN;AAAA,YACA,OAAOI,EAAM;AAAA,YACb,SAAAN;AAAA,YACA,aAAAC;AAAA,YACA,UAAAN;AAAA,YACC,GAAIQ,GAAW,oBAAoB,CAAA;AAAA,UAAC;AAAA,QAAA,GAEzC;AAAA,0BAECc,GAAa,EAAA,GAAId,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -1,44 +1,44 @@
1
- import { jsx as r, jsxs as m } from "react/jsx-runtime";
1
+ import { jsx as r, jsxs as t } from "react/jsx-runtime";
2
2
  import { Star as h } from "@trsys-tech/matrix-icons";
3
3
  import { Rating as F } from "./rating.es.js";
4
4
  import { FormField as x, FormItem as P, FormLabel as b, FormControl as C, FormMessage as I } from "./form.es.js";
5
- const R = (n) => {
5
+ const R = (a) => {
6
6
  const {
7
- name: s,
8
- control: a,
7
+ name: m,
8
+ control: s,
9
9
  defaultValue: l,
10
10
  disabled: e,
11
11
  rules: i,
12
- shouldUnregister: p,
13
- label: d,
12
+ shouldUnregister: d,
13
+ label: p,
14
14
  slotProps: o,
15
- required: u,
16
- Icon: c = h,
17
- max: g = 5,
15
+ required: g,
16
+ Icon: u = h,
17
+ max: c = 5,
18
18
  ...f
19
- } = n;
19
+ } = a;
20
20
  return /* @__PURE__ */ r(
21
21
  x,
22
22
  {
23
- control: a,
24
- name: s,
23
+ control: s,
24
+ name: m,
25
25
  defaultValue: l,
26
26
  disabled: e,
27
27
  rules: i,
28
- shouldUnregister: p,
29
- render: ({ field: t }) => /* @__PURE__ */ m(P, { ...f, children: [
30
- /* @__PURE__ */ m(b, { ...o?.formLabelProps ?? {}, children: [
31
- d,
32
- u && /* @__PURE__ */ r("span", { className: "text-danger text-sm", children: "*" })
28
+ shouldUnregister: d,
29
+ render: ({ field: n }) => /* @__PURE__ */ t(P, { ...f, children: [
30
+ /* @__PURE__ */ t(b, { ...o?.formLabelProps ?? {}, children: [
31
+ p,
32
+ g && /* @__PURE__ */ r("span", { className: "text-danger text-sm leading-4", children: "*" })
33
33
  ] }),
34
34
  /* @__PURE__ */ r(C, { ...o?.formControlProps ?? {}, children: /* @__PURE__ */ r(
35
35
  F,
36
36
  {
37
37
  ...o?.ratingProps ?? {},
38
- value: t.value,
39
- max: g,
40
- Icon: c,
41
- onValueChange: t.onChange,
38
+ value: n.value,
39
+ max: c,
40
+ Icon: u,
41
+ onValueChange: n.onChange,
42
42
  disabled: e
43
43
  }
44
44
  ) }),
@@ -1 +1 @@
1
- {"version":3,"file":"formrating.es.js","sources":["../src/components/form-rating/FormRating.tsx"],"sourcesContent":["import { Star } from \"@trsys-tech/matrix-icons\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\n\r\nimport { Rating, RatingProps } from \"../rating/Rating\";\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\n\r\ntype FormRatingProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n Icon?: React.JSXElementConstructor<React.SVGProps<SVGSVGElement>>;\r\n max?: number;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n ratingProps?: RatingProps;\r\n };\r\n };\r\n\r\nconst FormRating = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormRatingProps<TFieldValues, TName>) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n slotProps,\r\n required,\r\n Icon = Star,\r\n max = 5,\r\n ...formItemProps\r\n } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <Rating\r\n {...(slotProps?.ratingProps ?? {})}\r\n value={field.value}\r\n max={max}\r\n Icon={Icon}\r\n onValueChange={field.onChange}\r\n disabled={disabled}\r\n ></Rating>\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormRating, type FormRatingProps };\r\n"],"names":["FormRating","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","Icon","Star","max","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","Rating","FormMessage"],"mappings":";;;;AAsBM,MAAAA,IAAa,CAA0EC,MAAgD;AACrI,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,MAAAC,IAAOC;AAAA,IACP,KAAAC,IAAM;AAAA,IACN,GAAGC;AAAA,EAAA,IACDb;AAGF,SAAA,gBAAAc;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAb;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAU,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIX,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAK,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,0BACCM,GAAa,EAAA,GAAIZ,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAM;AAAA,UAACO;AAAA,UAAA;AAAA,YACE,GAAIb,GAAW,eAAe,CAAC;AAAA,YAChC,OAAOQ,EAAM;AAAA,YACb,KAAAJ;AAAA,YACA,MAAAF;AAAA,YACA,eAAeM,EAAM;AAAA,YACrB,UAAAZ;AAAA,UAAA;AAAA,QAAA,GAEJ;AAAA,0BACCkB,GAAa,EAAA,GAAId,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formrating.es.js","sources":["../src/components/form-rating/FormRating.tsx"],"sourcesContent":["import { Star } from \"@trsys-tech/matrix-icons\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues } from \"react-hook-form\";\r\n\r\nimport { Rating, RatingProps } from \"../rating/Rating\";\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\n\r\ntype FormRatingProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n Icon?: React.JSXElementConstructor<React.SVGProps<SVGSVGElement>>;\r\n max?: number;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n ratingProps?: RatingProps;\r\n };\r\n };\r\n\r\nconst FormRating = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormRatingProps<TFieldValues, TName>) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n slotProps,\r\n required,\r\n Icon = Star,\r\n max = 5,\r\n ...formItemProps\r\n } = props;\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <Rating\r\n {...(slotProps?.ratingProps ?? {})}\r\n value={field.value}\r\n max={max}\r\n Icon={Icon}\r\n onValueChange={field.onChange}\r\n disabled={disabled}\r\n ></Rating>\r\n </FormControl>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormRating, type FormRatingProps };\r\n"],"names":["FormRating","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","Icon","Star","max","formItemProps","jsx","FormField","field","jsxs","FormItem","FormLabel","FormControl","Rating","FormMessage"],"mappings":";;;;AAsBM,MAAAA,IAAa,CAA0EC,MAAgD;AACrI,QAAA;AAAA,IACJ,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,MAAAC,IAAOC;AAAA,IACP,KAAAC,IAAM;AAAA,IACN,GAAGC;AAAA,EAAA,IACDb;AAGF,SAAA,gBAAAc;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAb;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAU,QAEP,gBAAAC,EAACC,GAAU,EAAA,GAAGL,GACZ,UAAA;AAAA,QAAA,gBAAAI,EAACE,GAAW,EAAA,GAAIX,GAAW,kBAAkB,CAC1C,GAAA,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAK,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,0BACCM,GAAa,EAAA,GAAIZ,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAM;AAAA,UAACO;AAAA,UAAA;AAAA,YACE,GAAIb,GAAW,eAAe,CAAC;AAAA,YAChC,OAAOQ,EAAM;AAAA,YACb,KAAAJ;AAAA,YACA,MAAAF;AAAA,YACA,eAAeM,EAAM;AAAA,YACrB,UAAAZ;AAAA,UAAA;AAAA,QAAA,GAEJ;AAAA,0BACCkB,GAAa,EAAA,GAAId,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -4,7 +4,7 @@ import { Spinner as T } from "@trsys-tech/matrix-icons";
4
4
  import { useController as V } from "react-hook-form";
5
5
  import { cn as k } from "./utils.es.js";
6
6
  import { FormField as y, FormItem as L, FormLabel as j, FormControl as q, FormMessage as M } from "./form.es.js";
7
- import { Select as E, SelectTrigger as O, SelectValue as U, SelectContent as _, SelectItem as n } from "./select.es.js";
7
+ import { Select as E, SelectTrigger as O, SelectValue as U, SelectContent as _, SelectItem as s } from "./select.es.js";
8
8
  const J = (b) => {
9
9
  const {
10
10
  name: c,
@@ -13,8 +13,8 @@ const J = (b) => {
13
13
  disabled: t,
14
14
  rules: d,
15
15
  shouldUnregister: p,
16
- label: s,
17
- options: a,
16
+ label: a,
17
+ options: n,
18
18
  loading: u,
19
19
  loadingText: P,
20
20
  emptyOptionsText: v,
@@ -22,7 +22,7 @@ const J = (b) => {
22
22
  slotProps: e,
23
23
  required: g,
24
24
  ...C
25
- } = b, { field: h } = V({ name: c, control: i, rules: d, defaultValue: m, disabled: t, shouldUnregister: p }), x = typeof a[0]?.value == "number", F = (l) => {
25
+ } = b, { field: h } = V({ name: c, control: i, rules: d, defaultValue: m, disabled: t, shouldUnregister: p }), x = typeof n[0]?.value == "number", F = (l) => {
26
26
  x ? h.onChange(Number(l)) : h.onChange(l);
27
27
  };
28
28
  return /* @__PURE__ */ r(
@@ -36,8 +36,8 @@ const J = (b) => {
36
36
  shouldUnregister: p,
37
37
  render: ({ field: l }) => /* @__PURE__ */ o(L, { ...C, children: [
38
38
  /* @__PURE__ */ o(j, { ...e?.formLabelProps ?? {}, children: [
39
- s,
40
- g && /* @__PURE__ */ r("span", { className: "text-danger text-sm", children: "*" })
39
+ a,
40
+ g && /* @__PURE__ */ r("span", { className: "text-danger text-sm leading-4", children: "*" })
41
41
  ] }),
42
42
  /* @__PURE__ */ o(
43
43
  E,
@@ -54,17 +54,17 @@ const J = (b) => {
54
54
  disabled: t,
55
55
  ...e?.selectTriggerProps ?? {},
56
56
  className: k("*:truncate [&>span]:inline-block", e?.selectTriggerProps?.className),
57
- children: /* @__PURE__ */ r(U, { ...e?.selectValueProps ?? {}, placeholder: S ?? s })
57
+ children: /* @__PURE__ */ r(U, { ...e?.selectValueProps ?? {}, placeholder: S ?? a })
58
58
  }
59
59
  ) }),
60
60
  /* @__PURE__ */ o(_, { ...e?.selectContentProps ?? {}, children: [
61
- u && /* @__PURE__ */ o(n, { ...e?.selectItemProps ?? {}, value: "-1", disabled: !0, children: [
61
+ u && /* @__PURE__ */ o(s, { ...e?.selectItemProps ?? {}, value: "-1", disabled: !0, children: [
62
62
  /* @__PURE__ */ r(T, { className: "inline-block mb-0.5" }),
63
63
  " ",
64
64
  P || "Loading..."
65
65
  ] }),
66
- !u && !a.length ? /* @__PURE__ */ r(
67
- n,
66
+ !u && !n.length ? /* @__PURE__ */ r(
67
+ s,
68
68
  {
69
69
  ...e?.selectItemProps ?? {},
70
70
  value: "8fdcaeb67c8ad943c80fe54c3b1059b700d9254389a38a4a1fc39a6eee728623",
@@ -72,7 +72,7 @@ const J = (b) => {
72
72
  children: v || "No Items"
73
73
  }
74
74
  ) : null,
75
- a?.map((f, I) => /* @__PURE__ */ N(n, { ...e?.selectItemProps ?? {}, value: String(f.value), key: I + "_" + s }, f.label))
75
+ n?.map((f, I) => /* @__PURE__ */ N(s, { ...e?.selectItemProps ?? {}, value: String(f.value), key: I + "_" + a }, f.label))
76
76
  ] })
77
77
  ]
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"formselect.es.js","sources":["../src/components/form-select/FormSelect.tsx"],"sourcesContent":["import { Spinner } from \"@trsys-tech/matrix-icons\";\r\nimport { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\nimport { SelectContentProps, SelectItemProps, SelectProps, SelectTriggerProps, SelectValueProps } from \"@radix-ui/react-select\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from \"../select/Select\";\r\n\r\ntype FormSelectProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n options: { value: string | number; label: string | number }[];\r\n loading?: boolean;\r\n loadingText?: string;\r\n emptyOptionsText?: string;\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n selectProps?: SelectProps;\r\n selectTriggerProps?: SelectTriggerProps;\r\n selectValueProps?: Omit<SelectValueProps, \"placeholder\">;\r\n selectContentProps?: SelectContentProps;\r\n selectItemProps?: SelectItemProps;\r\n };\r\n };\r\n\r\nconst FormSelect = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormSelectProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n emptyOptionsText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const isNumericValue = typeof options[0]?.value === \"number\";\r\n\r\n const handleChange = (value: string) => {\r\n if (isNumericValue) {\r\n field.onChange(Number(value));\r\n } else {\r\n field.onChange(value);\r\n }\r\n };\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <Select\r\n {...(slotProps?.selectProps ?? {})}\r\n disabled={disabled}\r\n onValueChange={handleChange}\r\n value={field.value !== undefined ? String(field.value) : undefined}\r\n >\r\n <FormControl>\r\n <SelectTrigger\r\n aria-required={required}\r\n disabled={disabled}\r\n {...(slotProps?.selectTriggerProps ?? {})}\r\n className={cn(\"*:truncate [&>span]:inline-block\", slotProps?.selectTriggerProps?.className)}\r\n >\r\n <SelectValue {...(slotProps?.selectValueProps ?? {})} placeholder={placeholder ?? label} />\r\n </SelectTrigger>\r\n </FormControl>\r\n <SelectContent {...(slotProps?.selectContentProps ?? {})}>\r\n {loading && (\r\n <SelectItem {...(slotProps?.selectItemProps ?? {})} value=\"-1\" disabled>\r\n <Spinner className=\"inline-block mb-0.5\" /> {loadingText || \"Loading...\"}\r\n </SelectItem>\r\n )}\r\n {!loading && !options.length ? (\r\n <SelectItem\r\n {...(slotProps?.selectItemProps ?? {})}\r\n value=\"8fdcaeb67c8ad943c80fe54c3b1059b700d9254389a38a4a1fc39a6eee728623\"\r\n disabled\r\n >\r\n {emptyOptionsText || \"No Items\"}\r\n </SelectItem>\r\n ) : null}\r\n {options?.map((option, index) => (\r\n <SelectItem {...(slotProps?.selectItemProps ?? {})} value={String(option.value)} key={index + \"_\" + label}>\r\n {option.label}\r\n </SelectItem>\r\n ))}\r\n </SelectContent>\r\n </Select>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormSelect, type FormSelectProps };\r\n"],"names":["FormSelect","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","emptyOptionsText","placeholder","slotProps","required","formItemProps","field","useController","isNumericValue","handleChange","value","jsx","FormField","jsxs","FormItem","FormLabel","Select","FormControl","SelectTrigger","cn","SelectValue","SelectContent","SelectItem","Spinner","option","index","createElement","FormMessage"],"mappings":"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"}
1
+ {"version":3,"file":"formselect.es.js","sources":["../src/components/form-select/FormSelect.tsx"],"sourcesContent":["import { Spinner } from \"@trsys-tech/matrix-icons\";\r\nimport { ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\nimport { SelectContentProps, SelectItemProps, SelectProps, SelectTriggerProps, SelectValueProps } from \"@radix-ui/react-select\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nimport { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from \"../select/Select\";\r\n\r\ntype FormSelectProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = Omit<\r\n ControllerProps<TFieldValues, TName>,\r\n \"render\"\r\n> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n options: { value: string | number; label: string | number }[];\r\n loading?: boolean;\r\n loadingText?: string;\r\n emptyOptionsText?: string;\r\n placeholder?: string;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n selectProps?: SelectProps;\r\n selectTriggerProps?: SelectTriggerProps;\r\n selectValueProps?: Omit<SelectValueProps, \"placeholder\">;\r\n selectContentProps?: SelectContentProps;\r\n selectItemProps?: SelectItemProps;\r\n };\r\n };\r\n\r\nconst FormSelect = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(\r\n props: FormSelectProps<TFieldValues, TName>,\r\n) => {\r\n const {\r\n name,\r\n control,\r\n defaultValue,\r\n disabled,\r\n rules,\r\n shouldUnregister,\r\n label,\r\n options,\r\n loading,\r\n loadingText,\r\n emptyOptionsText,\r\n placeholder,\r\n slotProps,\r\n required,\r\n ...formItemProps\r\n } = props;\r\n\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const isNumericValue = typeof options[0]?.value === \"number\";\r\n\r\n const handleChange = (value: string) => {\r\n if (isNumericValue) {\r\n field.onChange(Number(value));\r\n } else {\r\n field.onChange(value);\r\n }\r\n };\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps}>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <Select\r\n {...(slotProps?.selectProps ?? {})}\r\n disabled={disabled}\r\n onValueChange={handleChange}\r\n value={field.value !== undefined ? String(field.value) : undefined}\r\n >\r\n <FormControl>\r\n <SelectTrigger\r\n aria-required={required}\r\n disabled={disabled}\r\n {...(slotProps?.selectTriggerProps ?? {})}\r\n className={cn(\"*:truncate [&>span]:inline-block\", slotProps?.selectTriggerProps?.className)}\r\n >\r\n <SelectValue {...(slotProps?.selectValueProps ?? {})} placeholder={placeholder ?? label} />\r\n </SelectTrigger>\r\n </FormControl>\r\n <SelectContent {...(slotProps?.selectContentProps ?? {})}>\r\n {loading && (\r\n <SelectItem {...(slotProps?.selectItemProps ?? {})} value=\"-1\" disabled>\r\n <Spinner className=\"inline-block mb-0.5\" /> {loadingText || \"Loading...\"}\r\n </SelectItem>\r\n )}\r\n {!loading && !options.length ? (\r\n <SelectItem\r\n {...(slotProps?.selectItemProps ?? {})}\r\n value=\"8fdcaeb67c8ad943c80fe54c3b1059b700d9254389a38a4a1fc39a6eee728623\"\r\n disabled\r\n >\r\n {emptyOptionsText || \"No Items\"}\r\n </SelectItem>\r\n ) : null}\r\n {options?.map((option, index) => (\r\n <SelectItem {...(slotProps?.selectItemProps ?? {})} value={String(option.value)} key={index + \"_\" + label}>\r\n {option.label}\r\n </SelectItem>\r\n ))}\r\n </SelectContent>\r\n </Select>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormSelect, type FormSelectProps };\r\n"],"names":["FormSelect","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","options","loading","loadingText","emptyOptionsText","placeholder","slotProps","required","formItemProps","field","useController","isNumericValue","handleChange","value","jsx","FormField","jsxs","FormItem","FormLabel","Select","FormControl","SelectTrigger","cn","SelectValue","SelectContent","SelectItem","Spinner","option","index","createElement","FormMessage"],"mappings":"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"}
@@ -1,26 +1,26 @@
1
1
  import { jsx as r, jsxs as d } from "react/jsx-runtime";
2
- import { FormField as C, FormItem as g, FormControl as x, FormLabel as F, FormMessage as P } from "./form.es.js";
2
+ import { FormField as g, FormItem as C, FormControl as x, FormLabel as F, FormMessage as P } from "./form.es.js";
3
3
  import { useController as b } from "react-hook-form";
4
4
  import { useCallback as k } from "react";
5
5
  import { cn as N } from "./utils.es.js";
6
6
  import { Switch as j } from "./switch.es.js";
7
7
  const S = (p) => {
8
- const { name: t, control: a, defaultValue: m, disabled: s, rules: l, shouldUnregister: n, label: f, slotProps: e, required: c, ...h } = p, { field: i } = b({ name: t, control: a, rules: l, defaultValue: m, disabled: s, shouldUnregister: n }), u = k(
8
+ const { name: t, control: a, defaultValue: l, disabled: s, rules: m, shouldUnregister: n, label: f, slotProps: e, required: c, ...h } = p, { field: i } = b({ name: t, control: a, rules: m, defaultValue: l, disabled: s, shouldUnregister: n }), u = k(
9
9
  (o) => {
10
10
  i.onChange(o);
11
11
  },
12
12
  [i]
13
13
  );
14
14
  return /* @__PURE__ */ r(
15
- C,
15
+ g,
16
16
  {
17
17
  control: a,
18
18
  name: t,
19
- defaultValue: m,
19
+ defaultValue: l,
20
20
  disabled: s,
21
- rules: l,
21
+ rules: m,
22
22
  shouldUnregister: n,
23
- render: ({ field: o }) => /* @__PURE__ */ d(g, { ...h, className: "flex items-center gap-2 justify-start space-y-0", children: [
23
+ render: ({ field: o }) => /* @__PURE__ */ d(C, { ...h, className: "flex items-center gap-2 justify-start space-y-0", children: [
24
24
  /* @__PURE__ */ r(x, { ...e?.formControlProps ?? {}, children: /* @__PURE__ */ r(
25
25
  j,
26
26
  {
@@ -34,7 +34,7 @@ const S = (p) => {
34
34
  ) }),
35
35
  /* @__PURE__ */ d(F, { ...e?.formLabelProps ?? {}, className: N("text-text", e?.formLabelProps?.className), children: [
36
36
  f,
37
- c && /* @__PURE__ */ r("span", { className: "text-danger text-sm", children: "*" })
37
+ c && /* @__PURE__ */ r("span", { className: "text-danger text-sm leading-4", children: "*" })
38
38
  ] }),
39
39
  /* @__PURE__ */ r(P, { ...e?.formMessageProps ?? {} })
40
40
  ] })
@@ -1 +1 @@
1
- {"version":3,"file":"formswitch.es.js","sources":["../src/components/form-switch/FormSwitch.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { useCallback } from \"react\";\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Switch, SwitchProps } from \"../switch/Switch\";\r\n\r\ntype FormSwitchProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n switchProps?: SwitchProps;\r\n };\r\n };\r\n\r\nconst FormSwitch = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormSwitchProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const handleCheckChanged = useCallback(\r\n (checked: boolean) => {\r\n field.onChange(checked);\r\n },\r\n [field],\r\n );\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps} className=\"flex items-center gap-2 justify-start space-y-0\">\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <Switch\r\n {...(slotProps?.switchProps ?? {})}\r\n {...field}\r\n checked={field.value}\r\n onCheckedChange={handleCheckChanged}\r\n aria-required={required}\r\n disabled={disabled}\r\n />\r\n </FormControl>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})} className={cn(\"text-text\", slotProps?.formLabelProps?.className)}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm\">*</span>}\r\n </FormLabel>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormSwitch, type FormSwitchProps };\r\n"],"names":["FormSwitch","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","field","useController","handleCheckChanged","useCallback","checked","jsx","FormField","jsxs","FormItem","FormControl","Switch","FormLabel","cn","FormMessage"],"mappings":";;;;;;AAqBM,MAAAA,IAAa,CAA0EC,MAAgD;AAC3I,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV,GACnH,EAAE,OAAAW,EAAM,IAAIC,EAAc,EAAE,MAAAX,GAAM,SAAAC,GAAS,OAAAG,GAAO,cAAAF,GAAc,UAAAC,GAAU,kBAAAE,GAAkB,GAE5FO,IAAqBC;AAAA,IACzB,CAACC,MAAqB;AACpB,MAAAJ,EAAM,SAASI,CAAO;AAAA,IACxB;AAAA,IACA,CAACJ,CAAK;AAAA,EACR;AAGE,SAAA,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAf;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAK,QAEN,gBAAAO,EAAAC,GAAA,EAAU,GAAGT,GAAe,WAAU,mDACrC,UAAA;AAAA,QAAA,gBAAAM,EAACI,GAAa,EAAA,GAAIZ,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAQ;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,GAAIb,GAAW,eAAe,CAAC;AAAA,YAC/B,GAAGG;AAAAA,YACJ,SAASA,EAAM;AAAA,YACf,iBAAiBE;AAAA,YACjB,iBAAeJ;AAAA,YACf,UAAAL;AAAA,UAAA;AAAA,QAAA,GAEJ;AAAA,QACC,gBAAAc,EAAAI,GAAA,EAAW,GAAId,GAAW,kBAAkB,CAAA,GAAK,WAAWe,EAAG,aAAaf,GAAW,gBAAgB,SAAS,GAC9G,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAO,EAAC,QAAK,EAAA,WAAU,uBAAsB,UAAC,IAAA,CAAA;AAAA,QAAA,GACtD;AAAA,0BACCQ,GAAa,EAAA,GAAIhB,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"formswitch.es.js","sources":["../src/components/form-switch/FormSwitch.tsx"],"sourcesContent":["import { FormControl, FormField, FormItem, FormLabel, FormMessage } from \"../form/Form\";\r\nimport { SlotProps } from \"@radix-ui/react-slot\";\r\nimport { Control, ControllerProps, FieldPath, FieldValues, useController } from \"react-hook-form\";\r\n\r\nimport { useCallback } from \"react\";\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Switch, SwitchProps } from \"../switch/Switch\";\r\n\r\ntype FormSwitchProps<TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>> = Omit<ControllerProps<TFieldValues, TName>, \"render\"> &\r\n React.ComponentProps<typeof FormItem> & {\r\n label: string;\r\n control: Control<TFieldValues>;\r\n required?: boolean;\r\n slotProps?: {\r\n formLabelProps?: React.HTMLAttributes<HTMLLabelElement> & React.RefAttributes<HTMLLabelElement>;\r\n formMessageProps?: React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>;\r\n formControlProps?: Omit<SlotProps & React.RefAttributes<HTMLElement>, \"ref\"> & React.RefAttributes<HTMLElement>;\r\n switchProps?: SwitchProps;\r\n };\r\n };\r\n\r\nconst FormSwitch = <TFieldValues extends FieldValues, TName extends FieldPath<TFieldValues>>(props: FormSwitchProps<TFieldValues, TName>) => {\r\n const { name, control, defaultValue, disabled, rules, shouldUnregister, label, slotProps, required, ...formItemProps } = props;\r\n const { field } = useController({ name, control, rules, defaultValue, disabled, shouldUnregister });\r\n\r\n const handleCheckChanged = useCallback(\r\n (checked: boolean) => {\r\n field.onChange(checked);\r\n },\r\n [field],\r\n );\r\n\r\n return (\r\n <FormField\r\n control={control}\r\n name={name}\r\n defaultValue={defaultValue}\r\n disabled={disabled}\r\n rules={rules}\r\n shouldUnregister={shouldUnregister}\r\n render={({ field }) => {\r\n return (\r\n <FormItem {...formItemProps} className=\"flex items-center gap-2 justify-start space-y-0\">\r\n <FormControl {...(slotProps?.formControlProps ?? {})}>\r\n <Switch\r\n {...(slotProps?.switchProps ?? {})}\r\n {...field}\r\n checked={field.value}\r\n onCheckedChange={handleCheckChanged}\r\n aria-required={required}\r\n disabled={disabled}\r\n />\r\n </FormControl>\r\n <FormLabel {...(slotProps?.formLabelProps ?? {})} className={cn(\"text-text\", slotProps?.formLabelProps?.className)}>\r\n {label}\r\n {required && <span className=\"text-danger text-sm leading-4\">*</span>}\r\n </FormLabel>\r\n <FormMessage {...(slotProps?.formMessageProps ?? {})} />\r\n </FormItem>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\nexport { FormSwitch, type FormSwitchProps };\r\n"],"names":["FormSwitch","props","name","control","defaultValue","disabled","rules","shouldUnregister","label","slotProps","required","formItemProps","field","useController","handleCheckChanged","useCallback","checked","jsx","FormField","jsxs","FormItem","FormControl","Switch","FormLabel","cn","FormMessage"],"mappings":";;;;;;AAqBM,MAAAA,IAAa,CAA0EC,MAAgD;AAC3I,QAAM,EAAE,MAAAC,GAAM,SAAAC,GAAS,cAAAC,GAAc,UAAAC,GAAU,OAAAC,GAAO,kBAAAC,GAAkB,OAAAC,GAAO,WAAAC,GAAW,UAAAC,GAAU,GAAGC,EAAkB,IAAAV,GACnH,EAAE,OAAAW,EAAM,IAAIC,EAAc,EAAE,MAAAX,GAAM,SAAAC,GAAS,OAAAG,GAAO,cAAAF,GAAc,UAAAC,GAAU,kBAAAE,GAAkB,GAE5FO,IAAqBC;AAAA,IACzB,CAACC,MAAqB;AACpB,MAAAJ,EAAM,SAASI,CAAO;AAAA,IACxB;AAAA,IACA,CAACJ,CAAK;AAAA,EACR;AAGE,SAAA,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAAf;AAAA,MACA,MAAAD;AAAA,MACA,cAAAE;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,QAAQ,CAAC,EAAE,OAAAK,QAEN,gBAAAO,EAAAC,GAAA,EAAU,GAAGT,GAAe,WAAU,mDACrC,UAAA;AAAA,QAAA,gBAAAM,EAACI,GAAa,EAAA,GAAIZ,GAAW,oBAAoB,CAAA,GAC/C,UAAA,gBAAAQ;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,GAAIb,GAAW,eAAe,CAAC;AAAA,YAC/B,GAAGG;AAAAA,YACJ,SAASA,EAAM;AAAA,YACf,iBAAiBE;AAAA,YACjB,iBAAeJ;AAAA,YACf,UAAAL;AAAA,UAAA;AAAA,QAAA,GAEJ;AAAA,QACC,gBAAAc,EAAAI,GAAA,EAAW,GAAId,GAAW,kBAAkB,CAAA,GAAK,WAAWe,EAAG,aAAaf,GAAW,gBAAgB,SAAS,GAC9G,UAAA;AAAA,UAAAD;AAAA,UACAE,KAAY,gBAAAO,EAAC,QAAK,EAAA,WAAU,iCAAgC,UAAC,IAAA,CAAA;AAAA,QAAA,GAChE;AAAA,0BACCQ,GAAa,EAAA,GAAIhB,GAAW,oBAAoB,CAAA,EAAK,CAAA;AAAA,MAAA,GACxD;AAAA,IAEJ;AAAA,EACF;AAEJ;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as r, jsxs as t } from "react/jsx-runtime";
2
- import { FormField as u, FormItem as x, FormLabel as F, FormControl as P, FormMessage as h } from "./form.es.js";
3
- import { Textarea as b } from "./textarea.es.js";
2
+ import { FormField as u, FormItem as x, FormLabel as F, FormControl as P, FormMessage as g } from "./form.es.js";
3
+ import { Textarea as h } from "./textarea.es.js";
4
4
  const C = (a) => {
5
5
  const { name: m, control: l, defaultValue: n, disabled: o, rules: d, shouldUnregister: i, label: p, slotProps: e, required: s, ...c } = a;
6
6
  return /* @__PURE__ */ r(
@@ -15,10 +15,10 @@ const C = (a) => {
15
15
  render: ({ field: f }) => /* @__PURE__ */ t(x, { ...c, children: [
16
16
  /* @__PURE__ */ t(F, { ...e?.formLabelProps ?? {}, children: [
17
17
  p,
18
- s && /* @__PURE__ */ r("span", { className: "text-danger text-sm", children: "*" })
18
+ s && /* @__PURE__ */ r("span", { className: "text-danger text-sm leading-4", children: "*" })
19
19
  ] }),
20
- /* @__PURE__ */ r(P, { ...e?.formControlProps ?? {}, children: /* @__PURE__ */ r(b, { "aria-required": s, disabled: o, ...e?.textareaProps ?? {}, ...f }) }),
21
- /* @__PURE__ */ r(h, { ...e?.formMessageProps ?? {} })
20
+ /* @__PURE__ */ r(P, { ...e?.formControlProps ?? {}, children: /* @__PURE__ */ r(h, { "aria-required": s, disabled: o, ...e?.textareaProps ?? {}, ...f }) }),
21
+ /* @__PURE__ */ r(g, { ...e?.formMessageProps ?? {} })
22
22
  ] })
23
23
  }
24
24
  );