@mage-ui/components 0.0.18 → 0.0.20

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 (236) hide show
  1. package/dist/{atoms/buttons → components/buttons/button}/Button.d.ts +4 -4
  2. package/dist/components/buttons/button/Button.d.ts.map +1 -0
  3. package/dist/{atoms/buttons → components/buttons/button}/Button.js +1 -1
  4. package/dist/components/buttons/button/Button.js.map +1 -0
  5. package/dist/components/buttons/button-icon/ButtonIcon.d.ts +23 -0
  6. package/dist/components/buttons/button-icon/ButtonIcon.d.ts.map +1 -0
  7. package/dist/components/buttons/button-icon/ButtonIcon.js +2 -0
  8. package/dist/components/buttons/button-icon/ButtonIcon.js.map +1 -0
  9. package/dist/{atoms/inputs → components/controls/checkbox}/Checkbox.d.ts +6 -4
  10. package/dist/components/controls/checkbox/Checkbox.d.ts.map +1 -0
  11. package/dist/{atoms/inputs → components/controls/checkbox}/Checkbox.js +1 -1
  12. package/dist/components/controls/checkbox/Checkbox.js.map +1 -0
  13. package/dist/components/controls/checkbox/CheckboxGroup.js +2 -0
  14. package/dist/components/controls/checkbox/CheckboxGroup.js.map +1 -0
  15. package/dist/{atoms/inputs → components/controls/date-picker}/DatePicker.d.ts +15 -14
  16. package/dist/components/controls/date-picker/DatePicker.d.ts.map +1 -0
  17. package/dist/components/controls/date-picker/DatePicker.js +2 -0
  18. package/dist/components/controls/date-picker/DatePicker.js.map +1 -0
  19. package/dist/components/controls/dropdown/Combobox.d.ts +39 -0
  20. package/dist/components/controls/dropdown/Combobox.d.ts.map +1 -0
  21. package/dist/components/controls/dropdown/Combobox.js +2 -0
  22. package/dist/components/controls/dropdown/Combobox.js.map +1 -0
  23. package/dist/components/controls/dropdown/DropdownBase.d.ts +23 -0
  24. package/dist/components/controls/dropdown/DropdownBase.d.ts.map +1 -0
  25. package/dist/components/controls/dropdown/DropdownBase.js +2 -0
  26. package/dist/components/controls/dropdown/DropdownBase.js.map +1 -0
  27. package/dist/components/controls/dropdown/DropdownButton.d.ts +34 -0
  28. package/dist/components/controls/dropdown/DropdownButton.d.ts.map +1 -0
  29. package/dist/components/controls/dropdown/DropdownButton.js +2 -0
  30. package/dist/components/controls/dropdown/DropdownButton.js.map +1 -0
  31. package/dist/components/controls/dropdown/Select.d.ts +31 -0
  32. package/dist/components/controls/dropdown/Select.d.ts.map +1 -0
  33. package/dist/components/controls/dropdown/Select.js +2 -0
  34. package/dist/components/controls/dropdown/Select.js.map +1 -0
  35. package/dist/components/controls/input-file/InputFile.d.ts +31 -0
  36. package/dist/components/controls/input-file/InputFile.d.ts.map +1 -0
  37. package/dist/components/controls/input-file/InputFile.js +2 -0
  38. package/dist/components/controls/input-file/InputFile.js.map +1 -0
  39. package/dist/components/controls/input-password/InputPassword.d.ts +33 -0
  40. package/dist/components/controls/input-password/InputPassword.d.ts.map +1 -0
  41. package/dist/components/controls/input-password/InputPassword.js +2 -0
  42. package/dist/components/controls/input-password/InputPassword.js.map +1 -0
  43. package/dist/{atoms/inputs → components/controls/input-text}/InputText.d.ts +6 -7
  44. package/dist/components/controls/input-text/InputText.d.ts.map +1 -0
  45. package/dist/components/controls/input-text/InputText.js +2 -0
  46. package/dist/components/controls/input-text/InputText.js.map +1 -0
  47. package/dist/components/controls/radio/Radio.d.ts +41 -0
  48. package/dist/components/controls/radio/Radio.d.ts.map +1 -0
  49. package/dist/components/controls/radio/Radio.js +2 -0
  50. package/dist/components/controls/radio/Radio.js.map +1 -0
  51. package/dist/components/controls/radio/RadioGroup.d.ts +26 -0
  52. package/dist/components/controls/radio/RadioGroup.d.ts.map +1 -0
  53. package/dist/components/controls/radio/RadioGroup.js +2 -0
  54. package/dist/components/controls/radio/RadioGroup.js.map +1 -0
  55. package/dist/components/controls/textarea/Textarea.d.ts +35 -0
  56. package/dist/components/controls/textarea/Textarea.d.ts.map +1 -0
  57. package/dist/components/controls/textarea/Textarea.js +2 -0
  58. package/dist/components/controls/textarea/Textarea.js.map +1 -0
  59. package/dist/{atoms/avatars → components/data-display/avatar}/Avatar.d.ts +4 -4
  60. package/dist/components/data-display/avatar/Avatar.d.ts.map +1 -0
  61. package/dist/{atoms/avatars → components/data-display/avatar}/Avatar.js +1 -1
  62. package/dist/components/data-display/avatar/Avatar.js.map +1 -0
  63. package/dist/{atoms/badges → components/data-display/badge}/Badge.d.ts +4 -4
  64. package/dist/components/data-display/badge/Badge.d.ts.map +1 -0
  65. package/dist/{atoms/badges → components/data-display/badge}/Badge.js +1 -1
  66. package/dist/components/data-display/badge/Badge.js.map +1 -0
  67. package/dist/{atoms → components/data-display}/carousel/Carousel.d.ts +15 -9
  68. package/dist/components/data-display/carousel/Carousel.d.ts.map +1 -0
  69. package/dist/components/data-display/carousel/Carousel.js +2 -0
  70. package/dist/components/data-display/carousel/Carousel.js.map +1 -0
  71. package/dist/components/data-display/carousel/useEmbla.js +2 -0
  72. package/dist/components/data-display/carousel/useEmbla.js.map +1 -0
  73. package/dist/{atoms/icons → components/data-display/icons/icon}/Icon.d.ts +2 -2
  74. package/dist/components/data-display/icons/icon/Icon.d.ts.map +1 -0
  75. package/dist/components/data-display/icons/icon/Icon.js +2 -0
  76. package/dist/components/data-display/icons/icon/Icon.js.map +1 -0
  77. package/dist/{atoms/icons → components/data-display/icons/icon-raw}/IconRaw.d.ts +2 -2
  78. package/dist/components/data-display/icons/icon-raw/IconRaw.d.ts.map +1 -0
  79. package/dist/components/data-display/icons/icon-raw/IconRaw.js.map +1 -0
  80. package/dist/components/data-display/icons/icon-theme/IconTheme.d.ts +19 -0
  81. package/dist/components/data-display/icons/icon-theme/IconTheme.d.ts.map +1 -0
  82. package/dist/{atoms/icons/IconWrapped.js → components/data-display/icons/icon-theme/IconTheme.js} +2 -2
  83. package/dist/components/data-display/icons/icon-theme/IconTheme.js.map +1 -0
  84. package/dist/components/data-display/tables/table/Table.d.ts +80 -0
  85. package/dist/components/data-display/tables/table/Table.d.ts.map +1 -0
  86. package/dist/components/data-display/tables/table/Table.js +2 -0
  87. package/dist/components/data-display/tables/table/Table.js.map +1 -0
  88. package/dist/components/data-display/tables/table/TableBody.js +2 -0
  89. package/dist/components/data-display/tables/table/TableBody.js.map +1 -0
  90. package/dist/components/data-display/tables/table/TableCell.js +2 -0
  91. package/dist/components/data-display/tables/table/TableCell.js.map +1 -0
  92. package/dist/components/data-display/tables/table/TableFooter.js +2 -0
  93. package/dist/components/data-display/tables/table/TableFooter.js.map +1 -0
  94. package/dist/components/data-display/tables/table/TableHead.js +2 -0
  95. package/dist/components/data-display/tables/table/TableHead.js.map +1 -0
  96. package/dist/components/data-display/tables/table/TableHeader.js +2 -0
  97. package/dist/components/data-display/tables/table/TableHeader.js.map +1 -0
  98. package/dist/components/data-display/tables/table/TableRow.js +2 -0
  99. package/dist/components/data-display/tables/table/TableRow.js.map +1 -0
  100. package/dist/components/data-display/tables/table/TableScroll.js +2 -0
  101. package/dist/components/data-display/tables/table/TableScroll.js.map +1 -0
  102. package/dist/components/forms/form/Form.d.ts +191 -0
  103. package/dist/components/forms/form/Form.d.ts.map +1 -0
  104. package/dist/components/forms/form/Form.js +2 -0
  105. package/dist/components/forms/form/Form.js.map +1 -0
  106. package/dist/components/forms/form/controls/FormCheckbox.d.ts +12 -0
  107. package/dist/components/forms/form/controls/FormCheckbox.d.ts.map +1 -0
  108. package/dist/components/forms/form/controls/FormCheckbox.js +2 -0
  109. package/dist/components/forms/form/controls/FormCheckbox.js.map +1 -0
  110. package/dist/components/forms/form/controls/FormCheckboxGroup.d.ts +17 -0
  111. package/dist/components/forms/form/controls/FormCheckboxGroup.d.ts.map +1 -0
  112. package/dist/components/forms/form/controls/FormCheckboxGroup.js +2 -0
  113. package/dist/components/forms/form/controls/FormCheckboxGroup.js.map +1 -0
  114. package/dist/components/forms/form/controls/FormCombobox.d.ts +12 -0
  115. package/dist/components/forms/form/controls/FormCombobox.d.ts.map +1 -0
  116. package/dist/components/forms/form/controls/FormCombobox.js +2 -0
  117. package/dist/components/forms/form/controls/FormCombobox.js.map +1 -0
  118. package/dist/components/forms/form/controls/FormDatePicker.d.ts +13 -0
  119. package/dist/components/forms/form/controls/FormDatePicker.d.ts.map +1 -0
  120. package/dist/components/forms/form/controls/FormDatePicker.js +2 -0
  121. package/dist/components/forms/form/controls/FormDatePicker.js.map +1 -0
  122. package/dist/components/forms/form/controls/FormInputFile.d.ts +13 -0
  123. package/dist/components/forms/form/controls/FormInputFile.d.ts.map +1 -0
  124. package/dist/components/forms/form/controls/FormInputFile.js +2 -0
  125. package/dist/components/forms/form/controls/FormInputFile.js.map +1 -0
  126. package/dist/components/forms/form/controls/FormInputPassword.d.ts +9 -0
  127. package/dist/components/forms/form/controls/FormInputPassword.d.ts.map +1 -0
  128. package/dist/components/forms/form/controls/FormInputPassword.js +2 -0
  129. package/dist/components/forms/form/controls/FormInputPassword.js.map +1 -0
  130. package/dist/components/forms/form/controls/FormInputText.d.ts +9 -0
  131. package/dist/components/forms/form/controls/FormInputText.d.ts.map +1 -0
  132. package/dist/components/forms/form/controls/FormInputText.js +2 -0
  133. package/dist/components/forms/form/controls/FormInputText.js.map +1 -0
  134. package/dist/components/forms/form/controls/FormRadio.js +2 -0
  135. package/dist/components/forms/form/controls/FormRadio.js.map +1 -0
  136. package/dist/components/forms/form/controls/FormRadioGroup.d.ts +17 -0
  137. package/dist/components/forms/form/controls/FormRadioGroup.d.ts.map +1 -0
  138. package/dist/components/forms/form/controls/FormRadioGroup.js +2 -0
  139. package/dist/components/forms/form/controls/FormRadioGroup.js.map +1 -0
  140. package/dist/components/forms/form/controls/FormSelect.d.ts +12 -0
  141. package/dist/components/forms/form/controls/FormSelect.d.ts.map +1 -0
  142. package/dist/components/forms/form/controls/FormSelect.js +2 -0
  143. package/dist/components/forms/form/controls/FormSelect.js.map +1 -0
  144. package/dist/components/forms/form/controls/FormTextarea.d.ts +9 -0
  145. package/dist/components/forms/form/controls/FormTextarea.d.ts.map +1 -0
  146. package/dist/components/forms/form/controls/FormTextarea.js +2 -0
  147. package/dist/components/forms/form/controls/FormTextarea.js.map +1 -0
  148. package/dist/components/misc/visually-hidden/VisuallyHidden.d.ts +15 -0
  149. package/dist/components/misc/visually-hidden/VisuallyHidden.d.ts.map +1 -0
  150. package/dist/components/misc/visually-hidden/VisuallyHidden.js.map +1 -0
  151. package/dist/{atoms → components/navigation}/breadcrumbs/Breadcrumbs.d.ts +4 -4
  152. package/dist/components/navigation/breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  153. package/dist/components/navigation/breadcrumbs/Breadcrumbs.js +2 -0
  154. package/dist/components/navigation/breadcrumbs/Breadcrumbs.js.map +1 -0
  155. package/dist/components/navigation/tabs/Tabs.d.ts +54 -0
  156. package/dist/components/navigation/tabs/Tabs.d.ts.map +1 -0
  157. package/dist/components/navigation/tabs/Tabs.js +2 -0
  158. package/dist/components/navigation/tabs/Tabs.js.map +1 -0
  159. package/dist/{atoms/tabs/TabList.d.ts → components/navigation/tabs/TabsList.d.ts} +4 -5
  160. package/dist/components/navigation/tabs/TabsList.d.ts.map +1 -0
  161. package/dist/components/navigation/tabs/TabsList.js +2 -0
  162. package/dist/components/navigation/tabs/TabsList.js.map +1 -0
  163. package/dist/{atoms/tabs/TabPanel.d.ts → components/navigation/tabs/TabsPanel.d.ts} +4 -4
  164. package/dist/components/navigation/tabs/TabsPanel.d.ts.map +1 -0
  165. package/dist/components/navigation/tabs/TabsPanel.js +2 -0
  166. package/dist/components/navigation/tabs/TabsPanel.js.map +1 -0
  167. package/dist/{atoms/tabs/Tab.d.ts → components/navigation/tabs/TabsTab.d.ts} +4 -4
  168. package/dist/components/navigation/tabs/TabsTab.d.ts.map +1 -0
  169. package/dist/components/navigation/tabs/TabsTab.js +2 -0
  170. package/dist/components/navigation/tabs/TabsTab.js.map +1 -0
  171. package/dist/index.d.ts +25 -17
  172. package/dist/index.js +1 -1
  173. package/dist/panda.json +101 -48
  174. package/dist/providers/MageUiProvider.d.ts +12 -1
  175. package/dist/providers/MageUiProvider.d.ts.map +1 -1
  176. package/dist/providers/MageUiProvider.js +1 -1
  177. package/dist/providers/MageUiProvider.js.map +1 -1
  178. package/package.json +11 -9
  179. package/dist/atoms/avatars/Avatar.d.ts.map +0 -1
  180. package/dist/atoms/avatars/Avatar.js.map +0 -1
  181. package/dist/atoms/badges/Badge.d.ts.map +0 -1
  182. package/dist/atoms/badges/Badge.js.map +0 -1
  183. package/dist/atoms/breadcrumbs/Breadcrumbs.d.ts.map +0 -1
  184. package/dist/atoms/breadcrumbs/Breadcrumbs.js +0 -2
  185. package/dist/atoms/breadcrumbs/Breadcrumbs.js.map +0 -1
  186. package/dist/atoms/buttons/Button.d.ts.map +0 -1
  187. package/dist/atoms/buttons/Button.js.map +0 -1
  188. package/dist/atoms/buttons/ButtonIcon.d.ts +0 -23
  189. package/dist/atoms/buttons/ButtonIcon.d.ts.map +0 -1
  190. package/dist/atoms/buttons/ButtonIcon.js +0 -2
  191. package/dist/atoms/buttons/ButtonIcon.js.map +0 -1
  192. package/dist/atoms/carousel/Carousel.d.ts.map +0 -1
  193. package/dist/atoms/carousel/Carousel.js +0 -2
  194. package/dist/atoms/carousel/Carousel.js.map +0 -1
  195. package/dist/atoms/forms/FormInputText.d.ts +0 -19
  196. package/dist/atoms/forms/FormInputText.d.ts.map +0 -1
  197. package/dist/atoms/forms/FormInputText.js +0 -2
  198. package/dist/atoms/forms/FormInputText.js.map +0 -1
  199. package/dist/atoms/icons/Icon.d.ts.map +0 -1
  200. package/dist/atoms/icons/Icon.js +0 -2
  201. package/dist/atoms/icons/Icon.js.map +0 -1
  202. package/dist/atoms/icons/IconRaw.d.ts.map +0 -1
  203. package/dist/atoms/icons/IconRaw.js.map +0 -1
  204. package/dist/atoms/icons/IconWrapped.d.ts +0 -19
  205. package/dist/atoms/icons/IconWrapped.d.ts.map +0 -1
  206. package/dist/atoms/icons/IconWrapped.js.map +0 -1
  207. package/dist/atoms/inputs/Checkbox.d.ts.map +0 -1
  208. package/dist/atoms/inputs/Checkbox.js.map +0 -1
  209. package/dist/atoms/inputs/DatePicker.d.ts.map +0 -1
  210. package/dist/atoms/inputs/DatePicker.js +0 -2
  211. package/dist/atoms/inputs/DatePicker.js.map +0 -1
  212. package/dist/atoms/inputs/InputText.d.ts.map +0 -1
  213. package/dist/atoms/inputs/InputText.js +0 -2
  214. package/dist/atoms/inputs/InputText.js.map +0 -1
  215. package/dist/atoms/inputs/combobox/Combobox.d.ts +0 -48
  216. package/dist/atoms/inputs/combobox/Combobox.d.ts.map +0 -1
  217. package/dist/atoms/inputs/combobox/Combobox.js +0 -2
  218. package/dist/atoms/inputs/combobox/Combobox.js.map +0 -1
  219. package/dist/atoms/inputs/combobox/ComboboxBase.js +0 -2
  220. package/dist/atoms/inputs/combobox/ComboboxBase.js.map +0 -1
  221. package/dist/atoms/misc/VisuallyHidden.js.map +0 -1
  222. package/dist/atoms/tabs/Tab.d.ts.map +0 -1
  223. package/dist/atoms/tabs/Tab.js +0 -2
  224. package/dist/atoms/tabs/Tab.js.map +0 -1
  225. package/dist/atoms/tabs/TabList.d.ts.map +0 -1
  226. package/dist/atoms/tabs/TabList.js +0 -2
  227. package/dist/atoms/tabs/TabList.js.map +0 -1
  228. package/dist/atoms/tabs/TabPanel.d.ts.map +0 -1
  229. package/dist/atoms/tabs/TabPanel.js +0 -2
  230. package/dist/atoms/tabs/TabPanel.js.map +0 -1
  231. package/dist/atoms/tabs/Tabs.d.ts +0 -52
  232. package/dist/atoms/tabs/Tabs.d.ts.map +0 -1
  233. package/dist/atoms/tabs/Tabs.js +0 -2
  234. package/dist/atoms/tabs/Tabs.js.map +0 -1
  235. /package/dist/{atoms/icons → components/data-display/icons/icon-raw}/IconRaw.js +0 -0
  236. /package/dist/{atoms/misc → components/misc/visually-hidden}/VisuallyHidden.js +0 -0
@@ -0,0 +1,191 @@
1
+ import { CheckboxProps } from "../../controls/checkbox/Checkbox.js";
2
+ import { RadioProps } from "../../controls/radio/Radio.js";
3
+ import { FormInputTextProps } from "./controls/FormInputText.js";
4
+ import { FormCheckboxProps } from "./controls/FormCheckbox.js";
5
+ import { FormCheckboxGroupProps } from "./controls/FormCheckboxGroup.js";
6
+ import { FormComboboxProps } from "./controls/FormCombobox.js";
7
+ import { FormRadioGroupProps } from "./controls/FormRadioGroup.js";
8
+ import { FormTextareaProps } from "./controls/FormTextarea.js";
9
+ import { FormSelectProps } from "./controls/FormSelect.js";
10
+ import { FormDatePickerProps } from "./controls/FormDatePicker.js";
11
+ import { FormInputFileProps } from "./controls/FormInputFile.js";
12
+ import { FormInputPasswordProps } from "./controls/FormInputPassword.js";
13
+ import * as react_jsx_runtime23 from "react/jsx-runtime";
14
+ import { ReactNode } from "react";
15
+ import { ZodRawShape, z } from "zod";
16
+
17
+ //#region src/components/forms/form/Form.d.ts
18
+ type FormProps = {
19
+ children: React.ReactNode;
20
+ rules?: ZodRawShape;
21
+ defaultValues?: object;
22
+ };
23
+ declare const Form: {
24
+ ({
25
+ defaultValues,
26
+ rules,
27
+ children,
28
+ ...props
29
+ }: FormProps): react_jsx_runtime23.JSX.Element;
30
+ InputText: {
31
+ ({
32
+ ...props
33
+ }: FormInputTextProps): react_jsx_runtime23.JSX.Element;
34
+ displayName: string;
35
+ rules: {
36
+ required: (message?: string, min?: number) => z.ZodString;
37
+ };
38
+ };
39
+ Checkbox: {
40
+ ({
41
+ name,
42
+ control,
43
+ ...props
44
+ }: FormCheckboxProps): react_jsx_runtime23.JSX.Element;
45
+ displayName: string;
46
+ rules: {
47
+ required: (message?: string) => z.ZodEffects<z.ZodBoolean, boolean, boolean>;
48
+ };
49
+ };
50
+ CheckboxGroup: {
51
+ ({
52
+ name,
53
+ control,
54
+ children,
55
+ label,
56
+ description,
57
+ error
58
+ }: FormCheckboxGroupProps): react_jsx_runtime23.JSX.Element;
59
+ rules: {
60
+ required: (message?: string) => z.ZodArray<z.ZodString, "many">;
61
+ };
62
+ Checkbox: ({
63
+ classNames,
64
+ ...props
65
+ }: CheckboxProps) => ReactNode;
66
+ };
67
+ Combobox: {
68
+ ({
69
+ name,
70
+ control,
71
+ ...props
72
+ }: FormComboboxProps): react_jsx_runtime23.JSX.Element;
73
+ displayName: string;
74
+ rules: {
75
+ required: (message?: string, defaultValue?: {
76
+ id: string;
77
+ value: null;
78
+ }) => z.ZodEffects<z.ZodDefault<z.ZodObject<{
79
+ id: z.ZodString;
80
+ value: z.ZodNullable<z.ZodString>;
81
+ }, "strip", z.ZodAny, z.objectOutputType<{
82
+ id: z.ZodString;
83
+ value: z.ZodNullable<z.ZodString>;
84
+ }, z.ZodAny, "strip">, z.objectInputType<{
85
+ id: z.ZodString;
86
+ value: z.ZodNullable<z.ZodString>;
87
+ }, z.ZodAny, "strip">>>, z.objectOutputType<{
88
+ id: z.ZodString;
89
+ value: z.ZodNullable<z.ZodString>;
90
+ }, z.ZodAny, "strip">, z.objectInputType<{
91
+ id: z.ZodString;
92
+ value: z.ZodNullable<z.ZodString>;
93
+ }, z.ZodAny, "strip"> | undefined>;
94
+ };
95
+ };
96
+ RadioGroup: {
97
+ ({
98
+ name,
99
+ control,
100
+ children,
101
+ label,
102
+ description,
103
+ error
104
+ }: FormRadioGroupProps): react_jsx_runtime23.JSX.Element;
105
+ rules: {
106
+ required: (message?: string) => z.ZodEffects<z.ZodString, string, string>;
107
+ };
108
+ Radio: {
109
+ (props: RadioProps): react_jsx_runtime23.JSX.Element;
110
+ displayName: string;
111
+ };
112
+ };
113
+ Radio: {
114
+ (props: RadioProps): react_jsx_runtime23.JSX.Element;
115
+ displayName: string;
116
+ };
117
+ Textarea: {
118
+ ({
119
+ ...props
120
+ }: FormTextareaProps): react_jsx_runtime23.JSX.Element;
121
+ displayName: string;
122
+ rules: {
123
+ required: (message?: string, min?: number) => z.ZodString;
124
+ };
125
+ };
126
+ Select: {
127
+ ({
128
+ name,
129
+ control,
130
+ ...props
131
+ }: FormSelectProps): react_jsx_runtime23.JSX.Element;
132
+ displayName: string;
133
+ rules: {
134
+ required: (message?: string, defaultValue?: {
135
+ id: string;
136
+ value: null;
137
+ }) => z.ZodEffects<z.ZodDefault<z.ZodObject<{
138
+ id: z.ZodString;
139
+ value: z.ZodNullable<z.ZodString>;
140
+ }, "strip", z.ZodAny, z.objectOutputType<{
141
+ id: z.ZodString;
142
+ value: z.ZodNullable<z.ZodString>;
143
+ }, z.ZodAny, "strip">, z.objectInputType<{
144
+ id: z.ZodString;
145
+ value: z.ZodNullable<z.ZodString>;
146
+ }, z.ZodAny, "strip">>>, z.objectOutputType<{
147
+ id: z.ZodString;
148
+ value: z.ZodNullable<z.ZodString>;
149
+ }, z.ZodAny, "strip">, z.objectInputType<{
150
+ id: z.ZodString;
151
+ value: z.ZodNullable<z.ZodString>;
152
+ }, z.ZodAny, "strip"> | undefined>;
153
+ };
154
+ };
155
+ DatePicker: {
156
+ ({
157
+ name,
158
+ control,
159
+ ...props
160
+ }: FormDatePickerProps): react_jsx_runtime23.JSX.Element;
161
+ displayName: string;
162
+ rules: {
163
+ required: (message?: string) => z.ZodEffects<z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodEffects<z.ZodString, string, string>]>, string | Date, string | Date>;
164
+ };
165
+ };
166
+ InputFile: {
167
+ ({
168
+ control,
169
+ name,
170
+ ...props
171
+ }: FormInputFileProps): react_jsx_runtime23.JSX.Element;
172
+ displayName: string;
173
+ rules: {
174
+ required: (message?: string, min?: number) => z.ZodEffects<z.ZodAny, any, any>;
175
+ };
176
+ };
177
+ InputPassword: {
178
+ ({
179
+ ...props
180
+ }: FormInputPasswordProps): react_jsx_runtime23.JSX.Element;
181
+ displayName: string;
182
+ rules: {
183
+ required: (message?: string) => z.ZodString;
184
+ };
185
+ };
186
+ };
187
+ //# sourceMappingURL=Form.d.ts.map
188
+
189
+ //#endregion
190
+ export { Form, FormProps };
191
+ //# sourceMappingURL=Form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.d.ts","names":[],"sources":["../../../../src/components/forms/form/Form.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;KAuBY,SAAA;YACA,KAAA,CAAM;UACR;;;cAIG;;;;;;KAKV,YAAS,mBAAA,CAAA,GAAA,CAAA;;;;OAAA;;;;;;;IAXA,CAAA;MAAA,IAAA;MAAS,OAAA;MAAA,GAAA;IAAA,CAAA,mBAAA,CAAA,iCAAA;IAAA,WAAA,EAAA,MAAA;IACT,KAAM,EAAA;MACR,QAAA,EAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,eAAA,aAAA,EAAA,OAAA,EAAA,OAAA,CAAA;IAAW,CAAA;EAIR,CAAA;EA4BZ,aAAA,EAAA;IAAA,CAAA;MAAA,IAAA;MAAA,OAAA;MAAA,QAAA;MAAA,KAAA;MAAA,WAAA;MAAA;IAAA,CAAA,wBAAA,CAAA,iCAAA;;;IAvBE,CAAA;IAAS,QAAA,EAAA,CAAA;MAAA,UAAA;MAAA,GAAA;IAAA,CAAA,eAAA,EAAA,YAAA;EAAA,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{FormCheckbox as e}from"./controls/FormCheckbox.js";import{FormCheckboxGroup as t}from"./controls/FormCheckboxGroup.js";import{FormCombobox as n}from"./controls/FormCombobox.js";import{FormDatePicker as r}from"./controls/FormDatePicker.js";import{FormInputFile as i}from"./controls/FormInputFile.js";import{FormInputPassword as a}from"./controls/FormInputPassword.js";import{FormInputText as o}from"./controls/FormInputText.js";import{FormRadio as s}from"./controls/FormRadio.js";import{FormRadioGroup as c}from"./controls/FormRadioGroup.js";import{FormSelect as l}from"./controls/FormSelect.js";import{FormTextarea as u}from"./controls/FormTextarea.js";import{jsx as d,jsxs as f}from"react/jsx-runtime";import{Children as p,cloneElement as m,isValidElement as h}from"react";import{FormProvider as g,useForm as _}from"react-hook-form";import{z as v}from"zod";import{zodResolver as y}from"@hookform/resolvers/zod";const b=({defaultValues:e,rules:t={},children:n,...r})=>{let i=_({shouldFocusError:!0,resolver:y(v.object(t)),defaultValues:e}),{register:a,handleSubmit:o,formState:{errors:s}}=i;return d(g,{...i,children:f(`form`,{onSubmit:o(()=>console.log(i.getValues())),...r,children:[S(n,a,s),d(`button`,{type:`submit`,children:`Submit`})]})})},x=[o,t,e,n,c,s,u,l,r,i,a],S=(e,t,n)=>p.map(e,e=>{if(!h(e))return e;let r=e.props;if(x.some(t=>e.type===t)&&r.name){let i={...r,error:n[r.name]?.message,...t(r.name,{setValueAs:e=>e===``||e===null?void 0:e})};return m(e,i)}return r.children?m(e,r,S(r.children,t,n)):e});b.InputText=o,b.Checkbox=e,b.CheckboxGroup=t,b.Combobox=n,b.RadioGroup=c,b.Radio=s,b.Textarea=u,b.Select=l,b.DatePicker=r,b.InputFile=i,b.InputPassword=a;export{b as Form};
2
+ //# sourceMappingURL=Form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.js","names":["children: React.ReactNode","register: UseFormRegister<Record<string, string>>","errors: FieldErrors","value: unknown"],"sources":["../../../../src/components/forms/form/Form.tsx"],"sourcesContent":["import { Children, cloneElement, isValidElement, type ReactNode } from 'react';\nimport {\n type FieldErrors,\n FormProvider,\n type UseFormRegister,\n useForm,\n} from 'react-hook-form';\nimport { type ZodRawShape, z } from 'zod';\n\nimport { zodResolver } from '@hookform/resolvers/zod';\n\nimport { FormCheckbox } from './controls/FormCheckbox';\nimport { FormCheckboxGroup } from './controls/FormCheckboxGroup';\nimport { FormCombobox } from './controls/FormCombobox';\nimport { FormDatePicker } from './controls/FormDatePicker';\nimport { FormInputFile } from './controls/FormInputFile';\nimport { FormInputPassword } from './controls/FormInputPassword';\nimport { FormInputText } from './controls/FormInputText';\nimport { FormRadio } from './controls/FormRadio';\nimport { FormRadioGroup } from './controls/FormRadioGroup';\nimport { FormSelect } from './controls/FormSelect';\nimport { FormTextarea } from './controls/FormTextarea';\n\nexport type FormProps = {\n children: React.ReactNode;\n rules?: ZodRawShape;\n defaultValues?: object;\n};\n\nexport const Form = ({\n defaultValues,\n rules = {},\n children,\n ...props\n}: FormProps) => {\n const form = useForm({\n shouldFocusError: true,\n resolver: zodResolver(z.object(rules)),\n defaultValues,\n });\n const {\n register,\n handleSubmit,\n formState: { errors },\n } = form;\n\n return (\n <FormProvider {...form}>\n <form\n onSubmit={handleSubmit(() => console.log(form.getValues()))}\n {...props}\n >\n {renderChildrenRecursively(children, register, errors)}\n <button type='submit'>Submit</button>\n </form>\n </FormProvider>\n );\n};\n\nconst controlList = [\n FormInputText,\n FormCheckboxGroup,\n FormCheckbox,\n FormCombobox,\n FormRadioGroup,\n FormRadio,\n FormTextarea,\n FormSelect,\n FormDatePicker,\n FormInputFile,\n FormInputPassword,\n];\n\nconst renderChildrenRecursively = (\n children: React.ReactNode,\n register: UseFormRegister<Record<string, string>>,\n errors: FieldErrors,\n): ReactNode => {\n return Children.map(children, (child) => {\n if (!isValidElement(child)) {\n return child;\n }\n\n const props = child.props as {\n name?: string;\n type?: string;\n children?: ReactNode;\n };\n\n if (controlList.some((control) => child.type === control)) {\n if (props.name) {\n const newProps = {\n ...props,\n error: errors[props.name]?.message,\n ...register(props.name, {\n setValueAs: (value: unknown) =>\n value === '' || value === null ? undefined : value,\n }),\n };\n return cloneElement(child, newProps);\n }\n }\n\n if (props.children) {\n return cloneElement(\n child,\n props,\n renderChildrenRecursively(props.children, register, errors),\n );\n }\n\n return child;\n });\n};\n\nForm.InputText = FormInputText;\nForm.Checkbox = FormCheckbox;\nForm.CheckboxGroup = FormCheckboxGroup;\nForm.Combobox = FormCombobox;\nForm.RadioGroup = FormRadioGroup;\nForm.Radio = FormRadio;\nForm.Textarea = FormTextarea;\nForm.Select = FormSelect;\nForm.DatePicker = FormDatePicker;\nForm.InputFile = FormInputFile;\nForm.InputPassword = FormInputPassword;\n"],"mappings":"u5BAyEA,MA5Ca,EAAO,CAAC,CACnB,gBACA,QAAQ,CAAE,EACV,WACA,GAAG,EACO,GAAK,CAMf,IALM,EAAO,EAAQ,CACnB,kBAAkB,EAClB,SAAU,EAAY,EAAE,OAAO,EAAM,CAAC,CACtC,eACD,EAAC,CACI,CACJ,WACA,eACA,UAAW,CAAE,SAAQ,CACtB,CAAG,EAEJ,MACE,GAAC,EAAA,CAAa,GAAI,WAChB,EAAC,OAAA,CACC,SAAU,EAAa,IAAM,QAAQ,IAAI,EAAK,WAAW,CAAC,CAAC,CAC3D,GAAI,YAEH,EAA0B,EAAU,EAAU,EAAO,CACtD,EAAC,SAAA,CAAO,KAAK,kBAAS,UAAe,GAChC,EACM,AAElB,EAEK,EAAc,CAClB,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACD,EAEK,EAA4B,CAChCA,EACAC,EACAC,IAEO,EAAS,IAAI,EAAU,AAAC,GAAU,CACvC,IAAK,EAAe,EAAM,CACxB,OAAO,EAGT,IAAM,EAAQ,EAAM,MAMpB,GAAI,EAAY,KAAK,AAAC,GAAY,EAAM,OAAS,EAAQ,EACnD,EAAM,KAAM,CACd,IAAM,EAAW,CACf,GAAG,EACH,MAAO,EAAO,EAAM,OAAO,QAC3B,GAAG,EAAS,EAAM,KAAM,CACtB,WAAY,AAACC,GACX,IAAU,IAAM,IAAU,SAAA,GAAmB,CAChD,EAAC,AACH,EACD,MAAO,GAAa,EAAO,EAAS,AACrC,CAWH,OARI,EAAM,SACD,EACL,EACA,EACA,EAA0B,EAAM,SAAU,EAAU,EAAO,CAC5D,CAGI,CACR,EAAC,CAaJ,AAVA,EAAK,UAAY,EACjB,EAAK,SAAW,EAChB,EAAK,cAAgB,EACrB,EAAK,SAAW,EAChB,EAAK,WAAa,EAClB,EAAK,MAAQ,EACb,EAAK,SAAW,EAChB,EAAK,OAAS,EACd,EAAK,WAAa,EAClB,EAAK,UAAY,EACjB,EAAK,cAAgB"}
@@ -0,0 +1,12 @@
1
+ import { CheckboxProps } from "../../../controls/checkbox/Checkbox.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormCheckbox.d.ts
7
+ type FormCheckboxProps = Omit<CheckboxProps, 'checked'> & {
8
+ control?: Control;
9
+ };
10
+ //#endregion
11
+ export { FormCheckboxProps };
12
+ //# sourceMappingURL=FormCheckbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCheckbox.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCheckbox.tsx"],"sourcesContent":[],"mappings":";;;;;;KAKY,iBAAA,GAAoB,KAAK;YACzB"}
@@ -0,0 +1,2 @@
1
+ import{Checkbox as e}from"../../../controls/checkbox/Checkbox.js";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";import{z as r}from"zod";const i=({name:r,control:i,...a})=>t(n,{name:r,control:i,render:({field:{value:n,onChange:r}})=>t(e,{...a,onChange:e=>r(e.currentTarget.checked),checked:n})});i.displayName=`Form.Checkbox`;const a=(e=`The field is required`)=>r.boolean({message:e}).refine(e=>e===!0,{message:e});i.rules={required:a};export{i as FormCheckbox};
2
+ //# sourceMappingURL=FormCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCheckbox.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCheckbox.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { Checkbox, type CheckboxProps } from '@/components/controls';\n\nexport type FormCheckboxProps = Omit<CheckboxProps, 'checked'> & {\n control?: Control;\n};\n\nexport const FormCheckbox = ({\n name,\n control,\n ...props\n}: FormCheckboxProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n render={({ field: { value, onChange } }) => {\n return (\n <Checkbox\n {...props}\n onChange={(event) => onChange(event.currentTarget.checked)}\n checked={value}\n />\n );\n }}\n />\n );\n};\n\nFormCheckbox.displayName = 'Form.Checkbox';\n\nexport const required = (message = 'The field is required') => {\n return z.boolean({ message }).refine((value) => value === true, {\n message,\n });\n};\n\nFormCheckbox.rules = { required };\n"],"mappings":"+KASA,MAAa,EAAe,CAAC,CAC3B,OACA,UACA,GAAG,EACe,GAEhB,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,QAAO,WAAU,CAAE,GAEnC,EAAC,EAAA,CACC,GAAI,EACJ,SAAU,AAAC,GAAU,EAAS,EAAM,cAAc,QAAQ,CAC1D,QAAS,GACT,EAGN,CAIN,EAAa,YAAc,gBAE3B,MAAa,EAAW,CAAC,EAAU,0BAC1B,EAAE,QAAQ,CAAE,SAAS,EAAC,CAAC,OAAO,AAAC,GAAU,KAAU,EAAM,CAC9D,SACD,EAAC,CAGJ,EAAa,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,17 @@
1
+ import "react/jsx-runtime";
2
+ import "react";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormCheckboxGroup.d.ts
7
+ type FormCheckboxGroupProps = {
8
+ control?: Control;
9
+ name: string;
10
+ children: React.ReactNode[];
11
+ label?: string;
12
+ description?: string;
13
+ error?: string;
14
+ };
15
+ //#endregion
16
+ export { FormCheckboxGroupProps };
17
+ //# sourceMappingURL=FormCheckboxGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCheckboxGroup.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCheckboxGroup.tsx"],"sourcesContent":[],"mappings":";;;;;;KAMY,sBAAA;YACA;;YAEA,KAAA,CAAM;EAHN,KAAA,CAAA,EAAA,MAAA;EAAsB,WAAA,CAAA,EAAA,MAAA;EAAA,KACtB,CAAA,EAAA,MAAA;CAAO"}
@@ -0,0 +1,2 @@
1
+ import{Checkbox as e}from"../../../controls/checkbox/Checkbox.js";import{CheckboxGroup as t}from"../../../controls/checkbox/CheckboxGroup.js";import{jsx as n}from"react/jsx-runtime";import{Controller as r}from"react-hook-form";import{z as i}from"zod";const a=({name:e,control:i,children:a,label:o,description:s,error:c})=>n(r,{name:e,control:i,render:({field:{value:e,onChange:r}})=>n(t,{label:o,description:s,error:c,value:e??[],onChange:r,children:a})}),o=(e=`Select one option`)=>i.array(i.string()).min(1,e);a.rules={required:o},a.Checkbox=e;export{a as FormCheckboxGroup};
2
+ //# sourceMappingURL=FormCheckboxGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCheckboxGroup.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCheckboxGroup.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { Checkbox } from '@/components/controls';\nimport { CheckboxGroup } from '@/components/controls/checkbox/CheckboxGroup';\n\nexport type FormCheckboxGroupProps = {\n control?: Control;\n name: string;\n children: React.ReactNode[];\n label?: string;\n description?: string;\n error?: string;\n};\n\nexport const FormCheckboxGroup = ({\n name,\n control,\n children,\n label,\n description,\n error,\n}: FormCheckboxGroupProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n render={({ field: { value, onChange } }) => {\n return (\n <CheckboxGroup\n label={label}\n description={description}\n error={error}\n value={value ?? []}\n onChange={onChange}\n >\n {children}\n </CheckboxGroup>\n );\n }}\n />\n );\n};\n\nexport const required = (message = 'Select one option') => {\n return z.array(z.string()).min(1, message);\n};\n\nFormCheckboxGroup.rules = { required };\n\nFormCheckboxGroup.Checkbox = Checkbox;\n"],"mappings":"2PA4CA,MA7Ba,EAAoB,CAAC,CAChC,OACA,UACA,WACA,QACA,cACA,QACuB,GAErB,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,QAAO,WAAU,CAAE,GAEnC,EAAC,EAAA,CACQ,QACM,cACN,QACP,MAAO,GAAS,CAAE,EACR,WAET,YACa,EAGpB,CAIO,EAAW,CAAC,EAAU,sBAC1B,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAG,EAAQ,CAK5C,AAFA,EAAkB,MAAQ,CAAE,UAAU,EAEtC,EAAkB,SAAW"}
@@ -0,0 +1,12 @@
1
+ import { ComboboxProps } from "../../../controls/dropdown/Combobox.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormCombobox.d.ts
7
+ type FormComboboxProps = Omit<ComboboxProps, 'selectedOption' | 'setSelectedOption'> & {
8
+ control?: Control;
9
+ };
10
+ //#endregion
11
+ export { FormComboboxProps };
12
+ //# sourceMappingURL=FormCombobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCombobox.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCombobox.tsx"],"sourcesContent":[],"mappings":";;;;;;KAKY,iBAAA,GAAoB,KAC9B;YAGU"}
@@ -0,0 +1,2 @@
1
+ import{Combobox as e}from"../../../controls/dropdown/Combobox.js";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";import{z as r}from"zod";const i=({name:r,control:i,...a})=>t(n,{name:r,control:i,render:({field:{onChange:n,value:r}})=>t(e,{...a,selectedOption:r,setSelectedOption:n})});i.displayName=`Form.Combobox`;const a=(e=`The field is required`,t={id:``,value:null})=>r.object({id:r.string().min(1,{message:e}),value:r.string().nullable()}).catchall(r.any()).default(t).refine(e=>e.id!==``,{message:e});i.rules={required:a};export{i as FormCombobox};
2
+ //# sourceMappingURL=FormCombobox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormCombobox.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormCombobox.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { Combobox, type ComboboxProps } from '@/components/controls';\n\nexport type FormComboboxProps = Omit<\n ComboboxProps,\n 'selectedOption' | 'setSelectedOption'\n> & {\n control?: Control;\n};\n\nexport const FormCombobox = ({\n name,\n control,\n ...props\n}: FormComboboxProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n render={({ field: { onChange, value } }) => {\n return (\n <Combobox\n {...props}\n selectedOption={value}\n setSelectedOption={onChange}\n />\n );\n }}\n />\n );\n};\n\nFormCombobox.displayName = 'Form.Combobox';\n\nexport const required = (\n message = 'The field is required',\n defaultValue = { id: '', value: null },\n) => {\n return z\n .object({\n id: z.string().min(1, { message }),\n value: z.string().nullable(),\n })\n .catchall(z.any())\n .default(defaultValue)\n .refine((value) => value.id !== '', {\n message,\n });\n};\n\nFormCombobox.rules = { required };\n"],"mappings":"+KAYA,MAAa,EAAe,CAAC,CAC3B,OACA,UACA,GAAG,EACe,GAEhB,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,WAAU,QAAO,CAAE,GAEnC,EAAC,EAAA,CACC,GAAI,EACJ,eAAgB,EAChB,kBAAmB,GACnB,EAGN,CAIN,EAAa,YAAc,gBAE3B,MAAa,EAAW,CACtB,EAAU,wBACV,EAAe,CAAE,GAAI,GAAI,MAAO,IAAM,IAE/B,EACJ,OAAO,CACN,GAAI,EAAE,QAAQ,CAAC,IAAI,EAAG,CAAE,SAAS,EAAC,CAClC,MAAO,EAAE,QAAQ,CAAC,UAAU,AAC7B,EAAC,CACD,SAAS,EAAE,KAAK,CAAC,CACjB,QAAQ,EAAa,CACrB,OAAO,AAAC,GAAU,EAAM,KAAO,GAAI,CAClC,SACD,EAAC,CAGN,EAAa,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,13 @@
1
+ import { DatePickerProps } from "../../../controls/date-picker/DatePicker.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormDatePicker.d.ts
7
+ type FormDatePickerProps = Omit<DatePickerProps, 'value' | 'onChange'> & {
8
+ control?: Control;
9
+ name: string;
10
+ };
11
+ //#endregion
12
+ export { FormDatePickerProps };
13
+ //# sourceMappingURL=FormDatePicker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormDatePicker.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormDatePicker.tsx"],"sourcesContent":[],"mappings":";;;;;;KAKY,mBAAA,GAAsB,KAChC;YAGU;;AAJZ,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{DatePicker as e}from"../../../controls/date-picker/DatePicker.js";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";import{z as r}from"zod";const i=({name:r,control:i,...a})=>t(n,{name:r,control:i,defaultValue:null,render:({field:{value:n,onChange:r}})=>t(e,{...a,value:n,onChange:r})});i.displayName=`Form.DatePicker`;const a=(e=`The date is required`)=>r.union([r.instanceof(Date,{message:e}),r.string().refine(e=>!Number.isNaN(Date.parse(e)),{message:e})]).refine(e=>e!==null,{message:e});i.rules={required:a};export{i as FormDatePicker};
2
+ //# sourceMappingURL=FormDatePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormDatePicker.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormDatePicker.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { DatePicker, type DatePickerProps } from '@/components/controls';\n\nexport type FormDatePickerProps = Omit<\n DatePickerProps,\n 'value' | 'onChange'\n> & {\n control?: Control;\n name: string;\n};\n\nexport const FormDatePicker = ({\n name,\n control,\n ...props\n}: FormDatePickerProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n defaultValue={null}\n render={({ field: { value, onChange } }) => {\n return <DatePicker {...props} value={value} onChange={onChange} />;\n }}\n />\n );\n};\n\nFormDatePicker.displayName = 'Form.DatePicker';\n\nexport const required = (message = 'The date is required') => {\n return z\n .union([\n z.instanceof(Date, { message }),\n z.string().refine((str) => !Number.isNaN(Date.parse(str)), { message }),\n ])\n .refine((date) => date !== null, {\n message,\n });\n};\n\nFormDatePicker.rules = { required };\n"],"mappings":"sLAaA,MAAa,EAAiB,CAAC,CAC7B,OACA,UACA,GAAG,EACiB,GAElB,EAAC,EAAA,CACO,OACG,UACT,aAAc,KACd,OAAQ,CAAC,CAAE,MAAO,CAAE,QAAO,WAAU,CAAE,GAC9B,EAAC,EAAA,CAAW,GAAI,EAAc,QAAiB,YAAY,EAEpE,CAIN,EAAe,YAAc,kBAE7B,MAAa,EAAW,CAAC,EAAU,yBAC1B,EACJ,MAAM,CACL,EAAE,WAAW,KAAM,CAAE,SAAS,EAAC,CAC/B,EAAE,QAAQ,CAAC,OAAO,AAAC,IAAS,OAAO,MAAM,KAAK,MAAM,EAAI,CAAC,CAAE,CAAE,SAAS,EAAC,AACxE,EAAC,CACD,OAAO,AAAC,GAAS,IAAS,KAAM,CAC/B,SACD,EAAC,CAGN,EAAe,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,13 @@
1
+ import { InputFileProps } from "../../../controls/input-file/InputFile.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormInputFile.d.ts
7
+ type FormInputFileProps = InputFileProps & {
8
+ control?: Control;
9
+ name: string;
10
+ };
11
+ //#endregion
12
+ export { FormInputFileProps };
13
+ //# sourceMappingURL=FormInputFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputFile.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputFile.tsx"],"sourcesContent":[],"mappings":";;;;;;KAKY,kBAAA,GAAqB;YACrB;;AADZ,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{InputFile as e}from"../../../controls/input-file/InputFile.js";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";import{z as r}from"zod";const i=({control:r,name:i,...a})=>t(n,{name:i,control:r,render:({field:{onChange:n,value:r}})=>t(e,{...a,value:r,onChange:e=>{n(e)}})});i.displayName=`Form.InputFile`;const a=(e=`Please upload a file`,t=1)=>r.any().refine(e=>Array.isArray(e)?e.length>=t:e!=null,{message:e});i.rules={required:a};export{i as FormInputFile};
2
+ //# sourceMappingURL=FormInputFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputFile.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputFile.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { InputFile, type InputFileProps } from '@/components/controls';\n\nexport type FormInputFileProps = InputFileProps & {\n control?: Control;\n name: string;\n};\n\nexport const FormInputFile = ({\n control,\n name,\n ...props\n}: FormInputFileProps) => {\n return (\n <Controller\n name={name}\n control={control}\n render={({ field: { onChange, value } }) => {\n return (\n <InputFile\n {...props}\n value={value}\n onChange={(files) => {\n onChange(files);\n }}\n />\n );\n }}\n />\n );\n};\n\nFormInputFile.displayName = 'Form.InputFile';\n\nexport const required = (message = 'Please upload a file', min = 1) => {\n return z.any().refine(\n (files) => {\n if (Array.isArray(files)) {\n return files.length >= min;\n }\n return files !== null && files !== undefined;\n },\n { message },\n );\n};\n\nFormInputFile.rules = {\n required,\n};\n"],"mappings":"mLAUA,MAAa,EAAgB,CAAC,CAC5B,UACA,OACA,GAAG,EACgB,GAEjB,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,WAAU,QAAO,CAAE,GAEnC,EAAC,EAAA,CACC,GAAI,EACG,QACP,SAAU,AAAC,GAAU,CACnB,EAAS,EAAM,AAChB,GACD,EAGN,CAIN,EAAc,YAAc,iBAE5B,MAAa,EAAW,CAAC,EAAU,uBAAwB,EAAM,IACxD,EAAE,KAAK,CAAC,OACb,AAAC,GACK,MAAM,QAAQ,EAAM,CACf,EAAM,QAAU,EAElB,GAAU,KAEnB,CAAE,SAAS,EACZ,CAGH,EAAc,MAAQ,CACpB,UACD"}
@@ -0,0 +1,9 @@
1
+ import { InputPasswordProps } from "../../../controls/input-password/InputPassword.js";
2
+ import "react/jsx-runtime";
3
+ import { z } from "zod";
4
+
5
+ //#region src/components/forms/form/controls/FormInputPassword.d.ts
6
+ type FormInputPasswordProps = InputPasswordProps;
7
+ //#endregion
8
+ export { FormInputPasswordProps };
9
+ //# sourceMappingURL=FormInputPassword.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputPassword.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputPassword.tsx"],"sourcesContent":[],"mappings":";;;;;KAIY,sBAAA,GAAyB"}
@@ -0,0 +1,2 @@
1
+ import{InputPassword as e}from"../../../controls/input-password/InputPassword.js";import{jsx as t}from"react/jsx-runtime";import{z as n}from"zod";const r=({...n})=>t(e,{...n});r.displayName=`Forms.InputPassword`;const i=(e=`La contraseña debe contener al menos 8 caracteres, una mayúscula, una minúscula, un número y un carácter especial.`)=>n.string().regex(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]/,e);r.rules={required:i};export{r as FormInputPassword};
2
+ //# sourceMappingURL=FormInputPassword.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputPassword.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputPassword.tsx"],"sourcesContent":["import { z } from 'zod';\n\nimport { InputPassword, type InputPasswordProps } from '@/components/controls';\n\nexport type FormInputPasswordProps = InputPasswordProps;\n\nexport const FormInputPassword = ({ ...props }: FormInputPasswordProps) => {\n return <InputPassword {...props} />;\n};\n\nFormInputPassword.displayName = 'Forms.InputPassword';\n\nexport const required = (\n message = 'La contraseña debe contener al menos 8 caracteres, una mayúscula, una minúscula, un número y un carácter especial.',\n) => {\n return z\n .string()\n .regex(\n /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]/,\n message,\n );\n};\n\nFormInputPassword.rules = { required };\n"],"mappings":"kJAMA,MAAa,EAAoB,CAAC,CAAE,GAAG,EAA+B,GAC7D,EAAC,EAAA,CAAc,GAAI,CAAA,EAAS,CAGrC,EAAkB,YAAc,sBAEhC,MAAa,EAAW,CACtB,EAAU,uHAEH,EACJ,QAAQ,CACR,MACC,kEACA,EACD,CAGL,EAAkB,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,9 @@
1
+ import { InputTextProps } from "../../../controls/input-text/InputText.js";
2
+ import "react/jsx-runtime";
3
+ import { z } from "zod";
4
+
5
+ //#region src/components/forms/form/controls/FormInputText.d.ts
6
+ type FormInputTextProps = InputTextProps;
7
+ //#endregion
8
+ export { FormInputTextProps };
9
+ //# sourceMappingURL=FormInputText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputText.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputText.tsx"],"sourcesContent":[],"mappings":";;;;;KAIY,kBAAA,GAAqB"}
@@ -0,0 +1,2 @@
1
+ import{InputText as e}from"../../../controls/input-text/InputText.js";import{jsx as t}from"react/jsx-runtime";import{z as n}from"zod";const r=({...n})=>t(e,{...n});r.displayName=`Forms.InputText`;const i=(e=`The field is required`,t=1)=>n.string({message:e}).min(t,{message:e});r.rules={required:i};export{r as FormInputText};
2
+ //# sourceMappingURL=FormInputText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormInputText.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormInputText.tsx"],"sourcesContent":["import { z } from 'zod';\n\nimport { InputText, type InputTextProps } from '@/components/controls';\n\nexport type FormInputTextProps = InputTextProps;\n\nexport const FormInputText = ({ ...props }: FormInputTextProps) => {\n return <InputText {...props} />;\n};\n\nFormInputText.displayName = 'Forms.InputText';\n\nexport const required = (message = 'The field is required', min = 1) => {\n return z.string({ message }).min(min, { message });\n};\n\nFormInputText.rules = { required };\n"],"mappings":"sIAMA,MAAa,EAAgB,CAAC,CAAE,GAAG,EAA2B,GACrD,EAAC,EAAA,CAAU,GAAI,CAAA,EAAS,CAGjC,EAAc,YAAc,kBAE5B,MAAa,EAAW,CAAC,EAAU,wBAAyB,EAAM,IACzD,EAAE,OAAO,CAAE,SAAS,EAAC,CAAC,IAAI,EAAK,CAAE,SAAS,EAAC,CAGpD,EAAc,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,2 @@
1
+ import{Radio as e}from"../../../controls/radio/Radio.js";import{jsx as t}from"react/jsx-runtime";const n=n=>t(e,{...n});n.displayName=`FormRadioGroup.Radio`;export{n as FormRadio};
2
+ //# sourceMappingURL=FormRadio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormRadio.js","names":["props: RadioProps"],"sources":["../../../../../src/components/forms/form/controls/FormRadio.tsx"],"sourcesContent":["import { Radio, type RadioProps } from '@/components/controls';\n\nexport const FormRadio = (props: RadioProps) => {\n return <Radio {...props} />;\n};\n\nFormRadio.displayName = 'FormRadioGroup.Radio';\n"],"mappings":"iGAEA,MAAa,EAAY,AAACA,GACjB,EAAC,EAAA,CAAM,GAAI,CAAA,EAAS,CAG7B,EAAU,YAAc"}
@@ -0,0 +1,17 @@
1
+ import { RadioProps } from "../../../controls/radio/Radio.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormRadioGroup.d.ts
7
+ type FormRadioGroupProps = RadioProps & {
8
+ control?: Control;
9
+ name: string;
10
+ children: React.ReactNode[];
11
+ label?: string;
12
+ description?: string;
13
+ error?: string;
14
+ };
15
+ //#endregion
16
+ export { FormRadioGroupProps };
17
+ //# sourceMappingURL=FormRadioGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormRadioGroup.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormRadioGroup.tsx"],"sourcesContent":[],"mappings":";;;;;;KAOY,mBAAA,GAAsB;YACtB;;EADA,QAAA,EAGA,KAAA,CAAM,SAHa,EAAA;EAAA,KAAA,CAAA,EAAA,MAAA;EAAA,WAAG,CAAA,EAAA,MAAA;EAAU,KAChC,CAAA,EAAA,MAAA;CAAO"}
@@ -0,0 +1,2 @@
1
+ import{Radio as e}from"../../../controls/radio/Radio.js";import{FormRadio as t}from"./FormRadio.js";import{jsx as n}from"react/jsx-runtime";import{Controller as r}from"react-hook-form";import{z as i}from"zod";const a=({name:t,control:i,children:a,label:o,description:s,error:c})=>n(r,{name:t,control:i,render:({field:{value:t,onChange:r}})=>n(e.Group,{label:o,description:s,error:c,value:t,onChange:r,children:a})}),o=(e=`The field is required`)=>i.string().refine(e=>e!==``,{message:e});a.rules={required:o},a.Radio=t;export{a as FormRadioGroup};
2
+ //# sourceMappingURL=FormRadioGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormRadioGroup.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormRadioGroup.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { Radio, type RadioProps } from '@/components/controls';\n\nimport { FormRadio } from './FormRadio';\n\nexport type FormRadioGroupProps = RadioProps & {\n control?: Control;\n name: string;\n children: React.ReactNode[];\n label?: string;\n description?: string;\n error?: string;\n};\n\nexport const FormRadioGroup = ({\n name,\n control,\n children,\n label,\n description,\n error,\n}: FormRadioGroupProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n render={({ field: { value, onChange } }) => {\n return (\n <Radio.Group\n label={label}\n description={description}\n error={error}\n value={value}\n onChange={onChange}\n >\n {children}\n </Radio.Group>\n );\n }}\n />\n );\n};\n\nexport const required = (message = 'The field is required') => {\n return z.string().refine((value) => value !== '', {\n message,\n });\n};\n\nFormRadioGroup.rules = { required };\n\nFormRadioGroup.Radio = FormRadio;\n"],"mappings":"iNA6CA,MA7Ba,EAAiB,CAAC,CAC7B,OACA,UACA,WACA,QACA,cACA,QACoB,GAElB,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,QAAO,WAAU,CAAE,GAEnC,EAAC,EAAM,MAAA,CACE,QACM,cACN,QACA,QACG,WAET,YACW,EAGlB,CAIO,EAAW,CAAC,EAAU,0BAC1B,EAAE,QAAQ,CAAC,OAAO,AAAC,GAAU,IAAU,GAAI,CAChD,SACD,EAAC,CAKJ,AAFA,EAAe,MAAQ,CAAE,UAAU,EAEnC,EAAe,MAAQ"}
@@ -0,0 +1,12 @@
1
+ import { SelectProps } from "../../../controls/dropdown/Select.js";
2
+ import "react/jsx-runtime";
3
+ import { Control } from "react-hook-form";
4
+ import { z } from "zod";
5
+
6
+ //#region src/components/forms/form/controls/FormSelect.d.ts
7
+ type FormSelectProps = Omit<SelectProps, 'selectedOption' | 'setSelectedOption'> & {
8
+ control?: Control;
9
+ };
10
+ //#endregion
11
+ export { FormSelectProps };
12
+ //# sourceMappingURL=FormSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormSelect.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormSelect.tsx"],"sourcesContent":[],"mappings":";;;;;;KAKY,eAAA,GAAkB,KAC5B;YAGU"}
@@ -0,0 +1,2 @@
1
+ import{Select as e}from"../../../controls/dropdown/Select.js";import{jsx as t}from"react/jsx-runtime";import{Controller as n}from"react-hook-form";import{z as r}from"zod";const i=({name:r,control:i,...a})=>t(n,{name:r,control:i,render:({field:{onChange:n,value:r}})=>t(e,{...a,selectedOption:r,setSelectedOption:n})});i.displayName=`Form.Select`;const a=(e=`The field is required`,t={id:``,value:null})=>r.object({id:r.string().min(1,{message:e}),value:r.string().nullable()}).catchall(r.any()).default(t).refine(e=>e.id!==``,{message:e});i.rules={required:a};export{i as FormSelect};
2
+ //# sourceMappingURL=FormSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormSelect.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormSelect.tsx"],"sourcesContent":["import { type Control, Controller } from 'react-hook-form';\nimport { z } from 'zod';\n\nimport { Select, type SelectProps } from '@/components/controls';\n\nexport type FormSelectProps = Omit<\n SelectProps,\n 'selectedOption' | 'setSelectedOption'\n> & {\n control?: Control;\n};\n\nexport const FormSelect = ({ name, control, ...props }: FormSelectProps) => {\n return (\n <Controller\n name={name as string}\n control={control}\n render={({ field: { onChange, value } }) => {\n return (\n <Select\n {...props}\n selectedOption={value}\n setSelectedOption={onChange}\n />\n );\n }}\n />\n );\n};\n\nFormSelect.displayName = 'Form.Select';\n\nexport const required = (\n message = 'The field is required',\n defaultValue = { id: '', value: null },\n) => {\n return z\n .object({\n id: z.string().min(1, { message }),\n value: z.string().nullable(),\n })\n .catchall(z.any())\n .default(defaultValue)\n .refine((value) => value.id !== '', {\n message,\n });\n};\n\nFormSelect.rules = { required };\n"],"mappings":"2KAYA,MAAa,EAAa,CAAC,CAAE,OAAM,UAAS,GAAG,EAAwB,GAEnE,EAAC,EAAA,CACO,OACG,UACT,OAAQ,CAAC,CAAE,MAAO,CAAE,WAAU,QAAO,CAAE,GAEnC,EAAC,EAAA,CACC,GAAI,EACJ,eAAgB,EAChB,kBAAmB,GACnB,EAGN,CAIN,EAAW,YAAc,cAEzB,MAAa,EAAW,CACtB,EAAU,wBACV,EAAe,CAAE,GAAI,GAAI,MAAO,IAAM,IAE/B,EACJ,OAAO,CACN,GAAI,EAAE,QAAQ,CAAC,IAAI,EAAG,CAAE,SAAS,EAAC,CAClC,MAAO,EAAE,QAAQ,CAAC,UAAU,AAC7B,EAAC,CACD,SAAS,EAAE,KAAK,CAAC,CACjB,QAAQ,EAAa,CACrB,OAAO,AAAC,GAAU,EAAM,KAAO,GAAI,CAClC,SACD,EAAC,CAGN,EAAW,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,9 @@
1
+ import { TextareaProps } from "../../../controls/textarea/Textarea.js";
2
+ import "react/jsx-runtime";
3
+ import { z } from "zod";
4
+
5
+ //#region src/components/forms/form/controls/FormTextarea.d.ts
6
+ type FormTextareaProps = TextareaProps;
7
+ //#endregion
8
+ export { FormTextareaProps };
9
+ //# sourceMappingURL=FormTextarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextarea.d.ts","names":[],"sources":["../../../../../src/components/forms/form/controls/FormTextarea.tsx"],"sourcesContent":[],"mappings":";;;;;KAIY,iBAAA,GAAoB"}
@@ -0,0 +1,2 @@
1
+ import{Textarea as e}from"../../../controls/textarea/Textarea.js";import{jsx as t}from"react/jsx-runtime";import{z as n}from"zod";const r=({...n})=>t(e,{...n});r.displayName=`Form.Textarea`;const i=(e=`The field is required`,t=1)=>n.string({message:e}).min(t,{message:e});r.rules={required:i};export{r as FormTextarea};
2
+ //# sourceMappingURL=FormTextarea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTextarea.js","names":[],"sources":["../../../../../src/components/forms/form/controls/FormTextarea.tsx"],"sourcesContent":["import { z } from 'zod';\n\nimport { Textarea, type TextareaProps } from '@/components/controls';\n\nexport type FormTextareaProps = TextareaProps;\n\nexport const FormTextarea = ({ ...props }: FormTextareaProps) => {\n return <Textarea {...props} />;\n};\n\nFormTextarea.displayName = 'Form.Textarea';\n\nexport const required = (message = 'The field is required', min = 1) => {\n return z.string({ message }).min(min, { message });\n};\n\nFormTextarea.rules = { required };\n"],"mappings":"kIAMA,MAAa,EAAe,CAAC,CAAE,GAAG,EAA0B,GACnD,EAAC,EAAA,CAAS,GAAI,CAAA,EAAS,CAGhC,EAAa,YAAc,gBAE3B,MAAa,EAAW,CAAC,EAAU,wBAAyB,EAAM,IACzD,EAAE,OAAO,CAAE,SAAS,EAAC,CAAC,IAAI,EAAK,CAAE,SAAS,EAAC,CAGpD,EAAa,MAAQ,CAAE,UAAU"}
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime49 from "react/jsx-runtime";
2
+ import React from "react";
3
+
4
+ //#region src/components/misc/visually-hidden/VisuallyHidden.d.ts
5
+ type VisuallyHiddenProps = {
6
+ children: React.ReactNode;
7
+ };
8
+ declare const VisuallyHidden: ({
9
+ children
10
+ }: VisuallyHiddenProps) => react_jsx_runtime49.JSX.Element;
11
+ //# sourceMappingURL=VisuallyHidden.d.ts.map
12
+
13
+ //#endregion
14
+ export { VisuallyHidden, VisuallyHiddenProps };
15
+ //# sourceMappingURL=VisuallyHidden.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisuallyHidden.d.ts","names":[],"sources":["../../../../src/components/misc/visually-hidden/VisuallyHidden.tsx"],"sourcesContent":[],"mappings":";;;;KAKY,mBAAA;YACA,KAAA,CAAM;;AADN,cAIC,cAJkB,EACnB,CAAA;EAAA;AAAe,CAAT,EAG2B,mBAHlB,EAAA,GAGqC,mBAAA,CAAA,GAAA,CAAA,OAHrC;AAG3B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisuallyHidden.js","names":["VisuallyHidden","MantineVisuallyHidden"],"sources":["../../../../src/components/misc/visually-hidden/VisuallyHidden.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { visuallyHidden } from '@mage-ui/styled-system/patterns';\nimport { VisuallyHidden as MantineVisuallyHidden } from '@mantine/core';\n\nexport type VisuallyHiddenProps = {\n children: React.ReactNode;\n};\n\nexport const VisuallyHidden = ({ children }: VisuallyHiddenProps) => {\n return (\n <MantineVisuallyHidden\n classNames={{\n root: visuallyHidden(),\n }}\n >\n {children}\n </MantineVisuallyHidden>\n );\n};\n"],"mappings":"wJASA,MAAaA,EAAiB,CAAC,CAAE,WAA+B,GAE5D,EAACC,EAAAA,CACC,WAAY,CACV,KAAM,GAAgB,AACvB,EAEA,YACqB"}
@@ -1,7 +1,7 @@
1
- import * as react_jsx_runtime3 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime11 from "react/jsx-runtime";
2
2
  import { ReactNode } from "react";
3
3
 
4
- //#region src/atoms/breadcrumbs/Breadcrumbs.d.ts
4
+ //#region src/components/navigation/breadcrumbs/Breadcrumbs.d.ts
5
5
  type BreadcrumbsProps = {
6
6
  separator?: ReactNode;
7
7
  classNames?: {
@@ -17,7 +17,7 @@ declare const Breadcrumbs: {
17
17
  separator,
18
18
  children,
19
19
  classNames
20
- }: BreadcrumbsProps): react_jsx_runtime3.JSX.Element;
20
+ }: BreadcrumbsProps): react_jsx_runtime11.JSX.Element;
21
21
  Item: {
22
22
  ({
23
23
  children
@@ -29,5 +29,5 @@ type ItemProps = {
29
29
  children: ReactNode;
30
30
  };
31
31
  //#endregion
32
- export { Breadcrumbs as Breadcrumbs$1, BreadcrumbsProps };
32
+ export { Breadcrumbs, BreadcrumbsProps };
33
33
  //# sourceMappingURL=Breadcrumbs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs.d.ts","names":[],"sources":["../../../../src/components/navigation/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":[],"mappings":";;;;KAgBY,gBAAA;cACE;;IADF,IAAA,CAAA,EAAA,MAAA;IAAgB,IAAA,CAAA,EAAA,MAAA;IACd,IAAA,CAAA,EAAA,MAAA;IAOD,SAAA,CAAA,EAAA,MAAA;EAAS,CAAA;EAGT,QAAA,CAAA,EAHA,SA6CZ;CAAA;AAAA,cA1CY,WA0CZ,EAAA;;;;;KAtCE,mBAAgB,mBAAA,CAAA,GAAA,CAAA;;IAAhB,CAAA;MAAA;IAAA,CAAA,EAyDyB,SAzDzB,CAAA,EAyDkC,SAzDlC;IAAgB,WAAA,EAAA,MAAA;EAAA,CAAA;;KAqDd,SAAA,GAIgC;EAAA,QAAA,EAHzB,SAGyB;AAnBnC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{breadcrumbsItem as e,breadcrumbsList as t,breadcrumbsRoot as n,breadcrumbsSeparator as r}from"@mage-ui/styled-system/recipes";import{Fragment as i,jsx as a,jsxs as o}from"react/jsx-runtime";import{Children as s,cloneElement as c,isValidElement as l}from"react";const u=({separator:c=`/`,children:u,classNames:p})=>a(`nav`,{"aria-label":`breadcrumb`,className:p?.root??n(),children:a(`ol`,{className:p?.list??t(),children:s.map(u,(t,n)=>{if(l(t)&&t.type===f)return o(`li`,{className:p?.item??e(),children:[n<s.count(u)-1&&o(i,{children:[t,a(`span`,{"aria-hidden":`true`,className:p?.separator??r(),children:c})]}),n===s.count(u)-1&&d(t)]},t.key)})})}),d=e=>{if(l(e)&&l(e.props.children)){let t=e.props.children;return c(t,{"aria-current":`page`,...t.props??{}})}return a(`span`,{"aria-current":`page`,children:e})},f=({children:e})=>e;f.displayName=`Breadcrumbs.Item`,u.Item=f;export{u as Breadcrumbs};
2
+ //# sourceMappingURL=Breadcrumbs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs.js","names":["child: Child"],"sources":["../../../../src/components/navigation/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import {\n Children,\n cloneElement,\n type HTMLAttributes,\n isValidElement,\n type ReactElement,\n type ReactNode,\n} from 'react';\n\nimport {\n breadcrumbsItem,\n breadcrumbsList,\n breadcrumbsRoot,\n breadcrumbsSeparator,\n} from '@mage-ui/styled-system/recipes';\n\nexport type BreadcrumbsProps = {\n separator?: ReactNode;\n classNames?: {\n root?: string;\n list?: string;\n item?: string;\n separator?: string;\n };\n children?: ReactNode;\n};\n\nexport const Breadcrumbs = ({\n separator = '/',\n children,\n classNames,\n}: BreadcrumbsProps) => {\n return (\n <nav\n aria-label='breadcrumb'\n className={classNames?.root ?? breadcrumbsRoot()}\n >\n <ol className={classNames?.list ?? breadcrumbsList()}>\n {Children.map(children, (child, index) => {\n if (\n isValidElement<{ children: ReactNode }>(child) &&\n child.type === Item\n ) {\n return (\n <li\n key={child.key}\n className={classNames?.item ?? breadcrumbsItem()}\n >\n {index < Children.count(children) - 1 && (\n <>\n {child}\n <span\n aria-hidden='true'\n className={\n classNames?.separator ?? breadcrumbsSeparator()\n }\n >\n {separator}\n </span>\n </>\n )}\n {index === Children.count(children) - 1 && lastItem(child)}\n </li>\n );\n }\n })}\n </ol>\n </nav>\n );\n};\n\ntype Child = ReactElement<{ children?: ReactNode }>;\n\nconst lastItem = (child: Child) => {\n if (isValidElement(child) && isValidElement(child.props.children)) {\n const childChildren = child.props.children as Child;\n return cloneElement(childChildren, {\n 'aria-current': 'page',\n ...(childChildren.props ?? {}),\n } as HTMLAttributes<HTMLElement>);\n }\n return <span aria-current='page'>{child}</span>;\n};\n\ntype ItemProps = {\n children: ReactNode;\n};\n\nconst Item = ({ children }: ItemProps) => {\n return children;\n};\n\nItem.displayName = 'Breadcrumbs.Item';\nBreadcrumbs.Item = Item;\n"],"mappings":"4QAwFA,MA7Da,EAAc,CAAC,CAC1B,YAAY,IACZ,WACA,aACiB,GAEf,EAAC,MAAA,CACC,aAAW,aACX,UAAW,GAAY,MAAQ,GAAiB,UAEhD,EAAC,KAAA,CAAG,UAAW,GAAY,MAAQ,GAAiB,UACjD,EAAS,IAAI,EAAU,CAAC,EAAO,IAAU,CACxC,GACE,EAAwC,EAAM,EAC9C,EAAM,OAAS,EAEf,MACE,GAAC,KAAA,CAEC,UAAW,GAAY,MAAQ,GAAiB,WAE/C,EAAQ,EAAS,MAAM,EAAS,CAAG,GAClC,EAAA,EAAA,CAAA,SAAA,CACG,EACD,EAAC,OAAA,CACC,cAAY,OACZ,UACE,GAAY,WAAa,GAAsB,UAGhD,GACI,CAAA,EACN,CAEJ,IAAU,EAAS,MAAM,EAAS,CAAG,GAAK,EAAS,EAAM,GAhBrD,EAAM,IAiBR,AAGV,EAAC,EACC,EACD,CAMJ,EAAW,AAACA,GAAiB,CACjC,GAAI,EAAe,EAAM,EAAI,EAAe,EAAM,MAAM,SAAS,CAAE,CACjE,IAAM,EAAgB,EAAM,MAAM,SAClC,MAAO,GAAa,EAAe,CACjC,eAAgB,OAChB,GAAI,EAAc,OAAS,CAAE,CAC9B,EAAgC,AAClC,CACD,MAAO,GAAC,OAAA,CAAK,eAAa,gBAAQ,GAAa,AAChD,EAMK,EAAO,CAAC,CAAE,WAAqB,GAC5B,EAIT,AADA,EAAK,YAAc,mBACnB,EAAY,KAAO"}