@inspirecn/react 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/README.md +46 -0
  2. package/dist/components/accordion/Accordion.d.ts +19 -0
  3. package/dist/components/accordion/Accordion.d.ts.map +1 -0
  4. package/dist/components/accordion/Accordion.js +90 -0
  5. package/dist/components/alert/Alert.d.ts +13 -0
  6. package/dist/components/alert/Alert.d.ts.map +1 -0
  7. package/dist/components/alert/Alert.js +100 -0
  8. package/dist/components/alert-dialog/AlertDialog.d.ts +44 -0
  9. package/dist/components/alert-dialog/AlertDialog.d.ts.map +1 -0
  10. package/dist/components/alert-dialog/AlertDialog.js +174 -0
  11. package/dist/components/aspect-ratio/AspectRatio.d.ts +4 -0
  12. package/dist/components/aspect-ratio/AspectRatio.d.ts.map +1 -0
  13. package/dist/components/aspect-ratio/AspectRatio.js +13 -0
  14. package/dist/components/avatar/Avatar.d.ts +19 -0
  15. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  16. package/dist/components/avatar/Avatar.js +86 -0
  17. package/dist/components/badge/Badge.d.ts +16 -0
  18. package/dist/components/badge/Badge.d.ts.map +1 -0
  19. package/dist/components/badge/Badge.js +46 -0
  20. package/dist/components/body-text/BodyText.d.ts +17 -0
  21. package/dist/components/body-text/BodyText.d.ts.map +1 -0
  22. package/dist/components/body-text/BodyText.js +51 -0
  23. package/dist/components/breadcrumb/Breadcrumb.d.ts +30 -0
  24. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -0
  25. package/dist/components/breadcrumb/Breadcrumb.js +220 -0
  26. package/dist/components/button/Button.d.ts +24 -0
  27. package/dist/components/button/Button.d.ts.map +1 -0
  28. package/dist/components/button/Button.js +95 -0
  29. package/dist/components/button-group/ButtonGroup.d.ts +12 -0
  30. package/dist/components/button-group/ButtonGroup.d.ts.map +1 -0
  31. package/dist/components/button-group/ButtonGroup.js +59 -0
  32. package/dist/components/calendar/Calendar.d.ts +10 -0
  33. package/dist/components/calendar/Calendar.d.ts.map +1 -0
  34. package/dist/components/calendar/Calendar.js +147 -0
  35. package/dist/components/card/Card.d.ts +10 -0
  36. package/dist/components/card/Card.d.ts.map +1 -0
  37. package/dist/components/card/Card.js +81 -0
  38. package/dist/components/carousel/Carousel.d.ts +20 -0
  39. package/dist/components/carousel/Carousel.d.ts.map +1 -0
  40. package/dist/components/carousel/Carousel.js +153 -0
  41. package/dist/components/chart/Chart.d.ts +43 -0
  42. package/dist/components/chart/Chart.d.ts.map +1 -0
  43. package/dist/components/chart/Chart.js +175 -0
  44. package/dist/components/checkbox/Checkbox.d.ts +11 -0
  45. package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
  46. package/dist/components/checkbox/Checkbox.js +43 -0
  47. package/dist/components/code-box/Codebox.d.ts +11 -0
  48. package/dist/components/code-box/Codebox.d.ts.map +1 -0
  49. package/dist/components/code-box/Codebox.js +251 -0
  50. package/dist/components/collapsible/Collapsible.d.ts +6 -0
  51. package/dist/components/collapsible/Collapsible.d.ts.map +1 -0
  52. package/dist/components/collapsible/Collapsible.js +31 -0
  53. package/dist/components/combobox/Combobox.d.ts +161 -0
  54. package/dist/components/combobox/Combobox.d.ts.map +1 -0
  55. package/dist/components/combobox/Combobox.js +330 -0
  56. package/dist/components/command/Command.d.ts +19 -0
  57. package/dist/components/command/Command.d.ts.map +1 -0
  58. package/dist/components/command/Command.js +128 -0
  59. package/dist/components/container/Container.d.ts +14 -0
  60. package/dist/components/container/Container.d.ts.map +1 -0
  61. package/dist/components/container/Container.js +27 -0
  62. package/dist/components/context-menu/ContextMenu.d.ts +26 -0
  63. package/dist/components/context-menu/ContextMenu.d.ts.map +1 -0
  64. package/dist/components/context-menu/ContextMenu.js +193 -0
  65. package/dist/components/count-animation/CountAnimation.d.ts +5 -0
  66. package/dist/components/count-animation/CountAnimation.d.ts.map +1 -0
  67. package/dist/components/count-animation/CountAnimation.js +19 -0
  68. package/dist/components/date-time-picker/DateTimePicker.d.ts +38 -0
  69. package/dist/components/date-time-picker/DateTimePicker.d.ts.map +1 -0
  70. package/dist/components/date-time-picker/DateTimePicker.js +287 -0
  71. package/dist/components/dialog/Dialog.d.ts +18 -0
  72. package/dist/components/dialog/Dialog.d.ts.map +1 -0
  73. package/dist/components/dialog/Dialog.js +138 -0
  74. package/dist/components/dialog/FilterDropdown.d.ts +7 -0
  75. package/dist/components/dialog/FilterDropdown.d.ts.map +1 -0
  76. package/dist/components/dialog/FilterDropdown.js +38 -0
  77. package/dist/components/display-error/DisplayError.d.ts +11 -0
  78. package/dist/components/display-error/DisplayError.d.ts.map +1 -0
  79. package/dist/components/display-error/DisplayError.js +34 -0
  80. package/dist/components/drawer/Drawer.d.ts +14 -0
  81. package/dist/components/drawer/Drawer.d.ts.map +1 -0
  82. package/dist/components/drawer/Drawer.js +114 -0
  83. package/dist/components/dropdown-menu/DropdownMenu.d.ts +41 -0
  84. package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -0
  85. package/dist/components/dropdown-menu/DropdownMenu.js +282 -0
  86. package/dist/components/empty/Empty.d.ts +12 -0
  87. package/dist/components/empty/Empty.d.ts.map +1 -0
  88. package/dist/components/empty/Empty.js +87 -0
  89. package/dist/components/empty-state/EmptyState.d.ts +12 -0
  90. package/dist/components/empty-state/EmptyState.d.ts.map +1 -0
  91. package/dist/components/empty-state/EmptyState.js +43 -0
  92. package/dist/components/field/Field.d.ts +25 -0
  93. package/dist/components/field/Field.d.ts.map +1 -0
  94. package/dist/components/field/Field.js +164 -0
  95. package/dist/components/file-uploader/FileUploader.d.ts +34 -0
  96. package/dist/components/file-uploader/FileUploader.d.ts.map +1 -0
  97. package/dist/components/file-uploader/FileUploader.js +124 -0
  98. package/dist/components/file-uploader/types.d.ts +32 -0
  99. package/dist/components/file-uploader/types.d.ts.map +1 -0
  100. package/dist/components/file-uploader/types.js +1 -0
  101. package/dist/components/file-uploader/useFileUploader.d.ts +22 -0
  102. package/dist/components/file-uploader/useFileUploader.d.ts.map +1 -0
  103. package/dist/components/file-uploader/useFileUploader.js +115 -0
  104. package/dist/components/form/FieldArray.d.ts +26 -0
  105. package/dist/components/form/FieldArray.d.ts.map +1 -0
  106. package/dist/components/form/FieldArray.js +16 -0
  107. package/dist/components/form/Form.d.ts +25 -0
  108. package/dist/components/form/Form.d.ts.map +1 -0
  109. package/dist/components/form/Form.js +124 -0
  110. package/dist/components/form/GenericForm.d.ts +42 -0
  111. package/dist/components/form/GenericForm.d.ts.map +1 -0
  112. package/dist/components/form/GenericForm.js +55 -0
  113. package/dist/components/form/fields/CheckboxField.d.ts +33 -0
  114. package/dist/components/form/fields/CheckboxField.d.ts.map +1 -0
  115. package/dist/components/form/fields/CheckboxField.js +66 -0
  116. package/dist/components/form/fields/CheckboxGroupField.d.ts +50 -0
  117. package/dist/components/form/fields/CheckboxGroupField.d.ts.map +1 -0
  118. package/dist/components/form/fields/CheckboxGroupField.js +64 -0
  119. package/dist/components/form/fields/ColorPickerField.d.ts +12 -0
  120. package/dist/components/form/fields/ColorPickerField.d.ts.map +1 -0
  121. package/dist/components/form/fields/ColorPickerField.js +140 -0
  122. package/dist/components/form/fields/ComboboxField.d.ts +32 -0
  123. package/dist/components/form/fields/ComboboxField.d.ts.map +1 -0
  124. package/dist/components/form/fields/ComboboxField.js +93 -0
  125. package/dist/components/form/fields/DateTimeField.d.ts +77 -0
  126. package/dist/components/form/fields/DateTimeField.d.ts.map +1 -0
  127. package/dist/components/form/fields/DateTimeField.js +99 -0
  128. package/dist/components/form/fields/FieldDescription.d.ts +10 -0
  129. package/dist/components/form/fields/FieldDescription.d.ts.map +1 -0
  130. package/dist/components/form/fields/FieldDescription.js +30 -0
  131. package/dist/components/form/fields/FileField.d.ts +16 -0
  132. package/dist/components/form/fields/FileField.d.ts.map +1 -0
  133. package/dist/components/form/fields/FileField.js +79 -0
  134. package/dist/components/form/fields/FileUploaderField.d.ts +72 -0
  135. package/dist/components/form/fields/FileUploaderField.d.ts.map +1 -0
  136. package/dist/components/form/fields/FileUploaderField.js +79 -0
  137. package/dist/components/form/fields/InputPhoneField.d.ts +40 -0
  138. package/dist/components/form/fields/InputPhoneField.d.ts.map +1 -0
  139. package/dist/components/form/fields/InputPhoneField.js +48 -0
  140. package/dist/components/form/fields/InputTagsField.d.ts +32 -0
  141. package/dist/components/form/fields/InputTagsField.d.ts.map +1 -0
  142. package/dist/components/form/fields/InputTagsField.js +50 -0
  143. package/dist/components/form/fields/RadioGroupField.d.ts +40 -0
  144. package/dist/components/form/fields/RadioGroupField.d.ts.map +1 -0
  145. package/dist/components/form/fields/RadioGroupField.js +61 -0
  146. package/dist/components/form/fields/ResetButton.d.ts +19 -0
  147. package/dist/components/form/fields/ResetButton.d.ts.map +1 -0
  148. package/dist/components/form/fields/ResetButton.js +25 -0
  149. package/dist/components/form/fields/SelectField.d.ts +44 -0
  150. package/dist/components/form/fields/SelectField.d.ts.map +1 -0
  151. package/dist/components/form/fields/SelectField.js +59 -0
  152. package/dist/components/form/fields/SubmitButton.d.ts +27 -0
  153. package/dist/components/form/fields/SubmitButton.d.ts.map +1 -0
  154. package/dist/components/form/fields/SubmitButton.js +36 -0
  155. package/dist/components/form/fields/SwitchField.d.ts +40 -0
  156. package/dist/components/form/fields/SwitchField.d.ts.map +1 -0
  157. package/dist/components/form/fields/SwitchField.js +77 -0
  158. package/dist/components/form/fields/TextField.d.ts +25 -0
  159. package/dist/components/form/fields/TextField.d.ts.map +1 -0
  160. package/dist/components/form/fields/TextField.js +98 -0
  161. package/dist/components/form/fields/TextareaField.d.ts +44 -0
  162. package/dist/components/form/fields/TextareaField.d.ts.map +1 -0
  163. package/dist/components/form/fields/TextareaField.js +71 -0
  164. package/dist/components/form/fields/UniqueTextField.d.ts +38 -0
  165. package/dist/components/form/fields/UniqueTextField.d.ts.map +1 -0
  166. package/dist/components/form/fields/UniqueTextField.js +171 -0
  167. package/dist/components/form/index.d.ts +20 -0
  168. package/dist/components/form/index.d.ts.map +1 -0
  169. package/dist/components/form/index.js +40 -0
  170. package/dist/components/form/useTriggerForm.d.ts +11 -0
  171. package/dist/components/form/useTriggerForm.d.ts.map +1 -0
  172. package/dist/components/form/useTriggerForm.js +14 -0
  173. package/dist/components/heading/Heading.d.ts +18 -0
  174. package/dist/components/heading/Heading.d.ts.map +1 -0
  175. package/dist/components/heading/Heading.js +71 -0
  176. package/dist/components/hover-card/HoverCard.d.ts +7 -0
  177. package/dist/components/hover-card/HoverCard.d.ts.map +1 -0
  178. package/dist/components/hover-card/HoverCard.js +41 -0
  179. package/dist/components/icon/Icon.d.ts +22 -0
  180. package/dist/components/icon/Icon.d.ts.map +1 -0
  181. package/dist/components/icon/Icon.js +71 -0
  182. package/dist/components/index.d.ts +76 -0
  183. package/dist/components/index.d.ts.map +1 -0
  184. package/dist/components/index.js +426 -0
  185. package/dist/components/input/Input.d.ts +11 -0
  186. package/dist/components/input/Input.d.ts.map +1 -0
  187. package/dist/components/input/Input.js +66 -0
  188. package/dist/components/input-group/InputGroup.d.ts +17 -0
  189. package/dist/components/input-group/InputGroup.d.ts.map +1 -0
  190. package/dist/components/input-group/InputGroup.js +129 -0
  191. package/dist/components/input-otp/input-otp.d.ts +16 -0
  192. package/dist/components/input-otp/input-otp.d.ts.map +1 -0
  193. package/dist/components/input-otp/input-otp.js +72 -0
  194. package/dist/components/input-phone/InputPhone.d.ts +13 -0
  195. package/dist/components/input-phone/InputPhone.d.ts.map +1 -0
  196. package/dist/components/input-phone/InputPhone.js +116 -0
  197. package/dist/components/input-tags/InputTags.d.ts +28 -0
  198. package/dist/components/input-tags/InputTags.d.ts.map +1 -0
  199. package/dist/components/input-tags/InputTags.js +88 -0
  200. package/dist/components/item/Item.d.ts +24 -0
  201. package/dist/components/item/Item.d.ts.map +1 -0
  202. package/dist/components/item/Item.js +162 -0
  203. package/dist/components/kbd/Kbd.d.ts +4 -0
  204. package/dist/components/kbd/Kbd.d.ts.map +1 -0
  205. package/dist/components/kbd/Kbd.js +26 -0
  206. package/dist/components/label/Label.d.ts +11 -0
  207. package/dist/components/label/Label.d.ts.map +1 -0
  208. package/dist/components/label/Label.js +26 -0
  209. package/dist/components/menubar/Menubar.d.ts +27 -0
  210. package/dist/components/menubar/Menubar.d.ts.map +1 -0
  211. package/dist/components/menubar/Menubar.js +212 -0
  212. package/dist/components/native-select/NativeSelect.d.ts +6 -0
  213. package/dist/components/native-select/NativeSelect.d.ts.map +1 -0
  214. package/dist/components/native-select/NativeSelect.js +44 -0
  215. package/dist/components/navbar/Navbar.d.ts +3 -0
  216. package/dist/components/navbar/Navbar.d.ts.map +1 -0
  217. package/dist/components/navbar/Navbar.js +69 -0
  218. package/dist/components/navigation-menu/NavigationMenu.d.ts +15 -0
  219. package/dist/components/navigation-menu/NavigationMenu.d.ts.map +1 -0
  220. package/dist/components/navigation-menu/NavigationMenu.js +112 -0
  221. package/dist/components/open-dialog/OpenDialog.d.ts +9 -0
  222. package/dist/components/open-dialog/OpenDialog.d.ts.map +1 -0
  223. package/dist/components/open-dialog/OpenDialog.js +35 -0
  224. package/dist/components/pagination/Pagination.d.ts +31 -0
  225. package/dist/components/pagination/Pagination.d.ts.map +1 -0
  226. package/dist/components/pagination/Pagination.js +216 -0
  227. package/dist/components/pagination/PaginationProvider.d.ts +33 -0
  228. package/dist/components/pagination/PaginationProvider.d.ts.map +1 -0
  229. package/dist/components/pagination/PaginationProvider.js +65 -0
  230. package/dist/components/pagination/types.d.ts +22 -0
  231. package/dist/components/pagination/types.d.ts.map +1 -0
  232. package/dist/components/pagination/types.js +1 -0
  233. package/dist/components/popover/Popover.d.ts +8 -0
  234. package/dist/components/popover/Popover.d.ts.map +1 -0
  235. package/dist/components/popover/Popover.js +49 -0
  236. package/dist/components/profile-pic-uploader/ProfilePicUploader.d.ts +12 -0
  237. package/dist/components/profile-pic-uploader/ProfilePicUploader.d.ts.map +1 -0
  238. package/dist/components/profile-pic-uploader/ProfilePicUploader.js +233 -0
  239. package/dist/components/profile-pic-uploader/index.d.ts +3 -0
  240. package/dist/components/profile-pic-uploader/index.d.ts.map +1 -0
  241. package/dist/components/profile-pic-uploader/index.js +4 -0
  242. package/dist/components/progress/Progress.d.ts +189 -0
  243. package/dist/components/progress/Progress.d.ts.map +1 -0
  244. package/dist/components/progress/Progress.js +283 -0
  245. package/dist/components/radio-group/RadioGroup.d.ts +16 -0
  246. package/dist/components/radio-group/RadioGroup.d.ts.map +1 -0
  247. package/dist/components/radio-group/RadioGroup.js +50 -0
  248. package/dist/components/resizable-panel/ResizablePanel.d.ts +9 -0
  249. package/dist/components/resizable-panel/ResizablePanel.d.ts.map +1 -0
  250. package/dist/components/resizable-panel/ResizablePanel.js +44 -0
  251. package/dist/components/scroll-area/ScrollArea.d.ts +6 -0
  252. package/dist/components/scroll-area/ScrollArea.d.ts.map +1 -0
  253. package/dist/components/scroll-area/ScrollArea.js +39 -0
  254. package/dist/components/section/Section.d.ts +12 -0
  255. package/dist/components/section/Section.d.ts.map +1 -0
  256. package/dist/components/section/Section.js +84 -0
  257. package/dist/components/select/Select.d.ts +16 -0
  258. package/dist/components/select/Select.d.ts.map +1 -0
  259. package/dist/components/select/Select.js +148 -0
  260. package/dist/components/separator/Separator.d.ts +5 -0
  261. package/dist/components/separator/Separator.d.ts.map +1 -0
  262. package/dist/components/separator/Separator.js +20 -0
  263. package/dist/components/sheet/Sheet.d.ts +16 -0
  264. package/dist/components/sheet/Sheet.d.ts.map +1 -0
  265. package/dist/components/sheet/Sheet.js +127 -0
  266. package/dist/components/sidebar/HeaderDropDown.d.ts +3 -0
  267. package/dist/components/sidebar/HeaderDropDown.d.ts.map +1 -0
  268. package/dist/components/sidebar/HeaderDropDown.js +39 -0
  269. package/dist/components/sidebar/Sidebar.d.ts +70 -0
  270. package/dist/components/sidebar/Sidebar.d.ts.map +1 -0
  271. package/dist/components/sidebar/Sidebar.js +514 -0
  272. package/dist/components/sidebar/SidebarFooterContent.d.ts +3 -0
  273. package/dist/components/sidebar/SidebarFooterContent.d.ts.map +1 -0
  274. package/dist/components/sidebar/SidebarFooterContent.js +66 -0
  275. package/dist/components/sidebar/SidebarHeaderLogo.d.ts +2 -0
  276. package/dist/components/sidebar/SidebarHeaderLogo.d.ts.map +1 -0
  277. package/dist/components/sidebar/SidebarHeaderLogo.js +34 -0
  278. package/dist/components/skeleton/Skeleton.d.ts +3 -0
  279. package/dist/components/skeleton/Skeleton.d.ts.map +1 -0
  280. package/dist/components/skeleton/Skeleton.js +15 -0
  281. package/dist/components/slider/Slider.d.ts +6 -0
  282. package/dist/components/slider/Slider.d.ts.map +1 -0
  283. package/dist/components/slider/Slider.js +39 -0
  284. package/dist/components/sonner/Sonner.d.ts +4 -0
  285. package/dist/components/sonner/Sonner.d.ts.map +1 -0
  286. package/dist/components/sonner/Sonner.js +55 -0
  287. package/dist/components/spinner/Spinner.d.ts +11 -0
  288. package/dist/components/spinner/Spinner.d.ts.map +1 -0
  289. package/dist/components/spinner/Spinner.js +49 -0
  290. package/dist/components/stack/Stack.d.ts +14 -0
  291. package/dist/components/stack/Stack.d.ts.map +1 -0
  292. package/dist/components/stack/Stack.js +29 -0
  293. package/dist/components/subText/SubText.d.ts +13 -0
  294. package/dist/components/subText/SubText.d.ts.map +1 -0
  295. package/dist/components/subText/SubText.js +50 -0
  296. package/dist/components/switch/Switch.d.ts +5 -0
  297. package/dist/components/switch/Switch.d.ts.map +1 -0
  298. package/dist/components/switch/Switch.js +41 -0
  299. package/dist/components/table/Table.d.ts +32 -0
  300. package/dist/components/table/Table.d.ts.map +1 -0
  301. package/dist/components/table/Table.js +243 -0
  302. package/dist/components/table-empty-state/TableEmptyState.d.ts +11 -0
  303. package/dist/components/table-empty-state/TableEmptyState.d.ts.map +1 -0
  304. package/dist/components/table-empty-state/TableEmptyState.js +52 -0
  305. package/dist/components/tabs/Tabs.d.ts +12 -0
  306. package/dist/components/tabs/Tabs.d.ts.map +1 -0
  307. package/dist/components/tabs/Tabs.js +84 -0
  308. package/dist/components/text-link/LinkText.d.ts +14 -0
  309. package/dist/components/text-link/LinkText.d.ts.map +1 -0
  310. package/dist/components/text-link/LinkText.js +42 -0
  311. package/dist/components/textarea/Textarea.d.ts +7 -0
  312. package/dist/components/textarea/Textarea.d.ts.map +1 -0
  313. package/dist/components/textarea/Textarea.js +28 -0
  314. package/dist/components/toggle/Toggle.d.ts +10 -0
  315. package/dist/components/toggle/Toggle.d.ts.map +1 -0
  316. package/dist/components/toggle/Toggle.js +41 -0
  317. package/dist/components/toggle-group/ToggleGroup.d.ts +10 -0
  318. package/dist/components/toggle-group/ToggleGroup.d.ts.map +1 -0
  319. package/dist/components/toggle-group/ToggleGroup.js +78 -0
  320. package/dist/components/tooltip/Tooltip.d.ts +18 -0
  321. package/dist/components/tooltip/Tooltip.d.ts.map +1 -0
  322. package/dist/components/tooltip/Tooltip.js +83 -0
  323. package/dist/fonts/index.css +49 -0
  324. package/dist/hooks/index.d.ts +6 -0
  325. package/dist/hooks/index.d.ts.map +1 -0
  326. package/dist/hooks/index.js +12 -0
  327. package/dist/hooks/use-countdown.d.ts +20 -0
  328. package/dist/hooks/use-countdown.d.ts.map +1 -0
  329. package/dist/hooks/use-countdown.js +21 -0
  330. package/dist/hooks/use-debounce.d.ts +20 -0
  331. package/dist/hooks/use-debounce.d.ts.map +1 -0
  332. package/dist/hooks/use-debounce.js +15 -0
  333. package/dist/hooks/use-mobile.d.ts +2 -0
  334. package/dist/hooks/use-mobile.d.ts.map +1 -0
  335. package/dist/hooks/use-mobile.js +14 -0
  336. package/dist/hooks/useDragScroll.d.ts +6 -0
  337. package/dist/hooks/useDragScroll.d.ts.map +1 -0
  338. package/dist/hooks/useDragScroll.js +26 -0
  339. package/dist/hooks/useImageCrop.d.ts +41 -0
  340. package/dist/hooks/useImageCrop.d.ts.map +1 -0
  341. package/dist/hooks/useImageCrop.js +84 -0
  342. package/dist/index.d.ts +5 -0
  343. package/dist/index.d.ts.map +1 -0
  344. package/dist/index.js +456 -0
  345. package/dist/lib/datetime.d.ts +8 -0
  346. package/dist/lib/datetime.d.ts.map +1 -0
  347. package/dist/lib/datetime.js +44 -0
  348. package/dist/lib/index.d.ts +4 -0
  349. package/dist/lib/index.d.ts.map +1 -0
  350. package/dist/lib/index.js +15 -0
  351. package/dist/lib/string.d.ts +4 -0
  352. package/dist/lib/string.d.ts.map +1 -0
  353. package/dist/lib/string.js +12 -0
  354. package/dist/lib/utils.d.ts +3 -0
  355. package/dist/lib/utils.d.ts.map +1 -0
  356. package/dist/lib/utils.js +8 -0
  357. package/dist/styles/globals.css +60 -0
  358. package/dist/styles/tokens.css +249 -0
  359. package/dist/theme/ThemeProvider.d.ts +5 -0
  360. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  361. package/dist/theme/ThemeProvider.js +17 -0
  362. package/dist/theme/ToggleTheme.d.ts +2 -0
  363. package/dist/theme/ToggleTheme.d.ts.map +1 -0
  364. package/dist/theme/ToggleTheme.js +29 -0
  365. package/dist/theme/index.d.ts +4 -0
  366. package/dist/theme/index.d.ts.map +1 -0
  367. package/dist/theme/index.js +9 -0
  368. package/dist/theme/theme.d.ts +8 -0
  369. package/dist/theme/theme.d.ts.map +1 -0
  370. package/dist/theme/theme.js +15 -0
  371. package/dist/vite.svg +1 -0
  372. package/package.json +156 -0
  373. package/postcss.config.mjs +6 -0
  374. package/src/styles/globals.css +60 -0
  375. package/src/styles/tokens.css +249 -0
  376. package/src/styles/tokens.json +253 -0
@@ -0,0 +1,66 @@
1
+ import { useFormContext as d } from "react-hook-form";
2
+ import { InfoIcon as p } from "lucide-react";
3
+ import { cn as l } from "../../../lib/utils.js";
4
+ import { Checkbox as h } from "../../checkbox/Checkbox.js";
5
+ import { FormField as f, FormItem as F, FormControl as N, FormMessage as C } from "../Form.js";
6
+ import { Tooltip as g } from "../../tooltip/Tooltip.js";
7
+ import { jsx as e, jsxs as t } from "react/jsx-runtime";
8
+ const k = ({
9
+ name: o,
10
+ label: r,
11
+ disabled: s = !1,
12
+ required: m = !1,
13
+ className: a,
14
+ labelInfo: c,
15
+ labelOptional: i
16
+ }) => {
17
+ const {
18
+ control: x
19
+ } = d();
20
+ return /* @__PURE__ */ e(f, {
21
+ control: x,
22
+ name: o,
23
+ render: ({
24
+ field: n
25
+ }) => /* @__PURE__ */ t(F, {
26
+ className: l(a),
27
+ children: [/* @__PURE__ */ e(N, {
28
+ children: /* @__PURE__ */ t("div", {
29
+ className: "flex items-center gap-2",
30
+ children: [/* @__PURE__ */ e(h, {
31
+ checked: n.value,
32
+ onCheckedChange: n.onChange,
33
+ disabled: s,
34
+ id: o
35
+ }), r && /* @__PURE__ */ t("label", {
36
+ htmlFor: o,
37
+ className: l("flex select-none items-center gap-2 text-heading-xs! font-normal text-text-primary cursor-pointer", s && "cursor-not-allowed opacity-50"),
38
+ children: [/* @__PURE__ */ t("span", {
39
+ className: "flex items-center gap-1",
40
+ children: [r, m && /* @__PURE__ */ e("span", {
41
+ className: "text-delete",
42
+ children: "*"
43
+ }), i && /* @__PURE__ */ e("span", {
44
+ className: "text-text-secondary text-xs ml-1",
45
+ children: "(optional)"
46
+ })]
47
+ }), c && /* @__PURE__ */ e(g, {
48
+ text: c,
49
+ side: "top",
50
+ sideOffset: 5,
51
+ children: /* @__PURE__ */ e(p, {
52
+ className: "text-text-secondary size-4 cursor-help shrink-0"
53
+ })
54
+ })]
55
+ })]
56
+ })
57
+ }), /* @__PURE__ */ e(C, {
58
+ className: "mt-1 text-xs text-delete"
59
+ })]
60
+ })
61
+ });
62
+ };
63
+ k.displayName = "CheckboxField";
64
+ export {
65
+ k as CheckboxField
66
+ };
@@ -0,0 +1,50 @@
1
+ import { FieldValues, Path } from 'react-hook-form';
2
+ type Option = {
3
+ text: string;
4
+ value: string;
5
+ };
6
+ type Props<T extends FieldValues> = {
7
+ name: Path<T>;
8
+ label?: string;
9
+ options: Option[];
10
+ className?: string;
11
+ disabled?: boolean;
12
+ column?: boolean;
13
+ required?: boolean;
14
+ labelInfo?: string;
15
+ minRequired?: number;
16
+ };
17
+ /**
18
+ * CheckboxGroupField. A checkbox group field component.
19
+ *
20
+ * @param name - The name of the field.
21
+ * @param label - The label of the field.
22
+ * @param options - The options of the field.
23
+ * @param className - The class name of the field.
24
+ * @param disabled - The disabled flag of the field.
25
+ * @param column - The column flag of the field.
26
+ * @param required - The required flag of the field.
27
+ * @param labelInfo - Additional information for the group label.
28
+ * @param minRequired - The minimum number of checkboxes that must be selected.
29
+ * @returns A checkbox group field component.
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * <CheckboxGroupField
34
+ * name="skills"
35
+ * label="Skills"
36
+ * options={[
37
+ * { text: 'React', value: 'react' },
38
+ * { text: 'Vue', value: 'vue' },
39
+ * { text: 'Angular', value: 'angular' },
40
+ * ]}
41
+ * minRequired={2}
42
+ * />
43
+ * ```
44
+ */
45
+ export declare const CheckboxGroupField: {
46
+ <T extends FieldValues>({ name, label, options, className, disabled, column, required, labelInfo, }: Props<T>): import("react/jsx-runtime").JSX.Element;
47
+ displayName: string;
48
+ };
49
+ export {};
50
+ //# sourceMappingURL=CheckboxGroupField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxGroupField.d.ts","sourceRoot":"","sources":["../../../../src/components/form/fields/CheckboxGroupField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,IAAI,EAAkB,MAAM,iBAAiB,CAAC;AAWpE,KAAK,MAAM,GAAG;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,CAAC,CAAC,SAAS,WAAW,IAAI;IAClC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,eAAO,MAAM,kBAAkB;KAAI,CAAC,SAAS,WAAW,+EASrD,KAAK,CAAC,CAAC,CAAC;;CA0DV,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { useFormContext as f } from "react-hook-form";
2
+ import { cn as C } from "../../../lib/utils.js";
3
+ import { Checkbox as F } from "../../checkbox/Checkbox.js";
4
+ import { FormField as v, FormItem as g, FormLabel as k, FormControl as N, FormMessage as b } from "../Form.js";
5
+ import { jsx as e, jsxs as c } from "react/jsx-runtime";
6
+ const y = ({
7
+ name: t,
8
+ label: o,
9
+ options: n,
10
+ className: u,
11
+ disabled: d = !1,
12
+ column: x = !0,
13
+ required: s = !1,
14
+ labelInfo: m
15
+ }) => {
16
+ const {
17
+ control: i
18
+ } = f();
19
+ return /* @__PURE__ */ e(v, {
20
+ control: i,
21
+ name: t,
22
+ render: ({
23
+ field: l
24
+ }) => {
25
+ const a = Array.isArray(l.value) ? l.value : [];
26
+ return /* @__PURE__ */ c(g, {
27
+ className: u,
28
+ children: [o && /* @__PURE__ */ c(k, {
29
+ children: [/* @__PURE__ */ e("span", {
30
+ children: o
31
+ }), s && /* @__PURE__ */ e("span", {
32
+ className: "ml-1 text-delete",
33
+ "aria-label": "required",
34
+ children: "*"
35
+ }), m && /* @__PURE__ */ e("span", {
36
+ className: "text-muted-foreground ml-1 text-sm",
37
+ children: m
38
+ })]
39
+ }), /* @__PURE__ */ e(N, {
40
+ children: /* @__PURE__ */ e("div", {
41
+ className: C("flex gap-4", x ? "flex-col" : "flex-row flex-wrap"),
42
+ role: "group",
43
+ "aria-required": s,
44
+ children: n.map((r) => /* @__PURE__ */ e(F, {
45
+ id: `${t}-${r.value}`,
46
+ checked: a.includes(r.value),
47
+ onCheckedChange: (h) => {
48
+ h ? l.onChange([...a, r.value]) : l.onChange(a.filter((p) => p !== r.value));
49
+ },
50
+ disabled: d,
51
+ label: r.text
52
+ }, r.value))
53
+ })
54
+ }), /* @__PURE__ */ e(b, {
55
+ className: "mt-1 text-xs text-delete"
56
+ })]
57
+ });
58
+ }
59
+ });
60
+ };
61
+ y.displayName = "CheckboxGroupField";
62
+ export {
63
+ y as CheckboxGroupField
64
+ };
@@ -0,0 +1,12 @@
1
+ import { FieldValues, Path } from 'react-hook-form';
2
+ export type ColorPickerFieldProps<T extends FieldValues> = {
3
+ name: Path<T>;
4
+ label?: string;
5
+ placeholder?: string;
6
+ required?: boolean;
7
+ className?: string;
8
+ disabled?: boolean;
9
+ presetColors?: string[];
10
+ };
11
+ export declare const ColorPickerField: <T extends FieldValues>({ name, label, placeholder, required, className, disabled, presetColors, }: ColorPickerFieldProps<T>) => import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=ColorPickerField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPickerField.d.ts","sourceRoot":"","sources":["../../../../src/components/form/fields/ColorPickerField.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,IAAI,EAAkB,MAAM,iBAAiB,CAAC;AAQpE,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,WAAW,IAAI;IACzD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAsBF,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,WAAW,EAAE,4EAQrD,qBAAqB,CAAC,CAAC,CAAC,4CAqG1B,CAAC"}
@@ -0,0 +1,140 @@
1
+ import { useState as C } from "react";
2
+ import { useFormContext as x } from "react-hook-form";
3
+ import { FormField as N, FormItem as y, FormControl as F, FormMessage as P } from "../Form.js";
4
+ import { cn as t } from "@inspirecn/ui/lib/utils";
5
+ import { Label as d } from "../../label/Label.js";
6
+ import { Button as O } from "../../button/Button.js";
7
+ import { Popover as k, PopoverTrigger as w, PopoverContent as E } from "../../popover/Popover.js";
8
+ import { Input as I } from "../../input/Input.js";
9
+ import { jsx as r, jsxs as a } from "react/jsx-runtime";
10
+ const L = [
11
+ "#0ea5e9",
12
+ // sky-500
13
+ "#06b6d4",
14
+ // cyan-500
15
+ "#10b981",
16
+ // emerald-500
17
+ "#22c55e",
18
+ // green-500
19
+ "#8b5cf6",
20
+ // violet-500
21
+ "#a855f7",
22
+ // purple-500
23
+ "#ec4899",
24
+ // pink-500
25
+ "#ef4444",
26
+ // red-500
27
+ "#f97316",
28
+ // orange-500
29
+ "#f59e0b",
30
+ // amber-500
31
+ "#eab308",
32
+ // yellow-500
33
+ "#84cc16",
34
+ // lime-500
35
+ "#06b6d4",
36
+ // cyan-500
37
+ "#10b981",
38
+ // emerald-500
39
+ "#6b7280",
40
+ // gray-500
41
+ "#374151",
42
+ // gray-700
43
+ "#1f2937"
44
+ // gray-800
45
+ ], D = ({
46
+ name: p,
47
+ label: m,
48
+ placeholder: f = "Select a color",
49
+ required: l = !1,
50
+ className: h,
51
+ disabled: i = !1,
52
+ presetColors: u = L
53
+ }) => {
54
+ const {
55
+ control: b
56
+ } = x(), [v, c] = C(!1), g = (e) => e ? e.startsWith("#") ? e.toUpperCase() : `#${e.toUpperCase()}` : "";
57
+ return /* @__PURE__ */ r(N, {
58
+ control: b,
59
+ name: p,
60
+ render: ({
61
+ field: e,
62
+ fieldState: n
63
+ }) => /* @__PURE__ */ a(y, {
64
+ className: t(h),
65
+ children: [m && /* @__PURE__ */ r(d, {
66
+ htmlFor: e.name,
67
+ required: l,
68
+ optional: !l,
69
+ children: m
70
+ }), /* @__PURE__ */ r(F, {
71
+ children: /* @__PURE__ */ a("div", {
72
+ className: "flex gap-2",
73
+ children: [/* @__PURE__ */ a(k, {
74
+ open: v,
75
+ onOpenChange: c,
76
+ children: [/* @__PURE__ */ r(w, {
77
+ asChild: !0,
78
+ children: /* @__PURE__ */ r(O, {
79
+ type: "button",
80
+ variant: "outline",
81
+ className: t("h-10 w-12 border-2 p-1", n.error && "border-destructive"),
82
+ disabled: i,
83
+ children: /* @__PURE__ */ r("div", {
84
+ className: "border-border h-full w-full rounded-sm border",
85
+ style: {
86
+ backgroundColor: e.value || "#ffffff"
87
+ }
88
+ })
89
+ })
90
+ }), /* @__PURE__ */ r(E, {
91
+ className: "w-64 p-4",
92
+ align: "start",
93
+ children: /* @__PURE__ */ r("div", {
94
+ className: "space-y-4",
95
+ children: /* @__PURE__ */ a("div", {
96
+ children: [/* @__PURE__ */ r(d, {
97
+ className: "text-sm font-medium",
98
+ children: "Preset Colors"
99
+ }), /* @__PURE__ */ r("div", {
100
+ className: "mt-2 grid grid-cols-6 gap-2",
101
+ children: u.map((o, s) => /* @__PURE__ */ r("button", {
102
+ type: "button",
103
+ className: t("h-8 w-8 rounded-sm border-2 transition-all hover:scale-110", e.value === o ? "border-primary ring-primary/20 ring-2" : "border-border hover:border-primary/50"),
104
+ style: {
105
+ backgroundColor: o
106
+ },
107
+ onClick: () => {
108
+ e.onChange(o), c(!1);
109
+ },
110
+ title: o
111
+ }, `${o}-${s}`))
112
+ })]
113
+ })
114
+ })
115
+ })]
116
+ }), /* @__PURE__ */ r("div", {
117
+ className: "flex-1",
118
+ children: /* @__PURE__ */ r(I, {
119
+ type: "text",
120
+ placeholder: f,
121
+ value: e.value || "",
122
+ onChange: (o) => {
123
+ const s = g(o.target.value);
124
+ e.onChange(s);
125
+ },
126
+ className: t("font-mono text-sm", n.error && "border-destructive"),
127
+ disabled: i,
128
+ hasError: !!n.error
129
+ })
130
+ })]
131
+ })
132
+ }), /* @__PURE__ */ r(P, {
133
+ className: "line-clamp-1 text-xs"
134
+ })]
135
+ })
136
+ });
137
+ };
138
+ export {
139
+ D as ColorPickerField
140
+ };
@@ -0,0 +1,32 @@
1
+ import { ReactNode } from 'react';
2
+ import { FieldValues, Path } from 'react-hook-form';
3
+ import { ComboboxOption, FetchOptionsFunction } from '../../combobox/Combobox';
4
+ type ComboboxFieldProps<T extends FieldValues, O extends object = Record<string, unknown>> = {
5
+ name: Path<T>;
6
+ label?: string;
7
+ required?: boolean;
8
+ className?: string;
9
+ inputClass?: string;
10
+ options?: ComboboxOption<O>[];
11
+ fetchOptions?: FetchOptionsFunction<O>;
12
+ async?: boolean;
13
+ multi?: boolean;
14
+ placeholder?: string;
15
+ searchPlaceholder?: string;
16
+ emptyMessage?: string;
17
+ loadingMessage?: string;
18
+ errorMessage?: string;
19
+ debounceMs?: number;
20
+ width?: string;
21
+ allowCreation?: boolean;
22
+ createItemLabel?: string;
23
+ onCreateItem?: (value: string) => void | Promise<void>;
24
+ renderOption?: (option: ComboboxOption<O>, isSelected: boolean) => ReactNode;
25
+ renderCreateItem?: (value: string, onClick: () => void) => ReactNode;
26
+ };
27
+ export declare const ComboboxField: {
28
+ <T extends FieldValues, O extends object = Record<string, unknown>>({ name, label, required, className, inputClass, options, fetchOptions, async, multi, placeholder, searchPlaceholder, emptyMessage, loadingMessage, errorMessage, debounceMs, width, allowCreation, createItemLabel, onCreateItem, renderOption, renderCreateItem, }: ComboboxFieldProps<T, O>): import("react/jsx-runtime").JSX.Element;
29
+ displayName: string;
30
+ };
31
+ export {};
32
+ //# sourceMappingURL=ComboboxField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboboxField.d.ts","sourceRoot":"","sources":["../../../../src/components/form/fields/ComboboxField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAkB,MAAM,iBAAiB,CAAC;AAEpE,OAAO,EAEL,cAAc,EACd,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AASjC,KAAK,kBAAkB,CACrB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACxC;IACF,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAGhB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvD,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,KAAK,SAAS,CAAC;IAC7E,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC;CACtE,CAAC;AAEF,eAAO,MAAM,aAAa;KACxB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,MAAM,iSAuBf,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;;CA2D1B,CAAC"}
@@ -0,0 +1,93 @@
1
+ import { useFormContext as V } from "react-hook-form";
2
+ import { cn as m } from "../../../lib/utils.js";
3
+ import { Combobox as k } from "../../combobox/Combobox.js";
4
+ import { FormField as q, FormItem as z, FormLabel as A, FormControl as B, FormMessage as D } from "../Form.js";
5
+ import { jsx as a, jsxs as c } from "react/jsx-runtime";
6
+ const E = ({
7
+ name: n,
8
+ label: l,
9
+ required: d = !1,
10
+ className: i,
11
+ inputClass: u,
12
+ options: v,
13
+ fetchOptions: x,
14
+ async: f,
15
+ multi: o = !1,
16
+ placeholder: g = "Select an option",
17
+ searchPlaceholder: h,
18
+ emptyMessage: C = "No results found.",
19
+ loadingMessage: F = "Loading options...",
20
+ errorMessage: b = "Something went wrong",
21
+ debounceMs: N = 300,
22
+ width: p,
23
+ allowCreation: y = !1,
24
+ createItemLabel: S = "Create",
25
+ onCreateItem: j,
26
+ renderOption: w,
27
+ renderCreateItem: L
28
+ }) => {
29
+ const {
30
+ control: M
31
+ } = V();
32
+ return /* @__PURE__ */ a(q, {
33
+ control: M,
34
+ name: n,
35
+ render: ({
36
+ field: r,
37
+ fieldState: {
38
+ error: I
39
+ }
40
+ }) => /* @__PURE__ */ c(z, {
41
+ className: m("flex flex-col", i),
42
+ children: [l && /* @__PURE__ */ c(A, {
43
+ htmlFor: n,
44
+ children: [l, d && /* @__PURE__ */ a("span", {
45
+ className: "text-destructive ml-1",
46
+ children: "*"
47
+ })]
48
+ }), /* @__PURE__ */ a(B, {
49
+ children: /* @__PURE__ */ a(k, {
50
+ options: v,
51
+ fetchOptions: x,
52
+ async: f,
53
+ multi: o,
54
+ value: o ? void 0 : r.value,
55
+ multiValue: o ? r.value : void 0,
56
+ onChange: o ? void 0 : (e) => {
57
+ const s = typeof e == "string" ? e : e == null ? void 0 : e.value;
58
+ r.onChange(s);
59
+ },
60
+ onMultiChange: o ? (e) => {
61
+ if (!e) {
62
+ r.onChange([]);
63
+ return;
64
+ }
65
+ const s = e.map((t) => typeof t == "string" ? t : t.value);
66
+ r.onChange(s);
67
+ } : void 0,
68
+ placeholder: g,
69
+ searchPlaceholder: h,
70
+ emptyMessage: C,
71
+ loadingMessage: F,
72
+ errorMessage: b,
73
+ debounceMs: N,
74
+ width: p,
75
+ className: m(u, {
76
+ "border-destructive": I
77
+ }),
78
+ allowCreation: y,
79
+ createItemLabel: S,
80
+ onCreateItem: j,
81
+ renderOption: w,
82
+ renderCreateItem: L
83
+ })
84
+ }), /* @__PURE__ */ a(D, {
85
+ className: "text-delete text-xs"
86
+ })]
87
+ })
88
+ });
89
+ };
90
+ E.displayName = "ComboboxField";
91
+ export {
92
+ E as ComboboxField
93
+ };
@@ -0,0 +1,77 @@
1
+ import { Matcher } from 'react-day-picker';
2
+ import { FieldValues, Path } from 'react-hook-form';
3
+ import { DateTimePickerDisplayMode, DateTimePickerInputMode, DateTimePickerMode } from '../../date-time-picker/DateTimePicker';
4
+ export type DateTimeFieldProps<T extends FieldValues> = {
5
+ name: Path<T>;
6
+ label?: string;
7
+ required?: boolean;
8
+ className?: string;
9
+ mode?: DateTimePickerMode;
10
+ displayMode?: DateTimePickerDisplayMode;
11
+ inputMode?: DateTimePickerInputMode;
12
+ placeholder?: string;
13
+ disabled?: boolean;
14
+ disabledDates?: Matcher | Matcher[];
15
+ minDate?: Date;
16
+ maxDate?: Date;
17
+ timeStep?: number;
18
+ minTime?: string;
19
+ maxTime?: string;
20
+ inputClassName?: string;
21
+ timeInputClassName?: string;
22
+ };
23
+ /**
24
+ * DateTimeField - A form field component for date and time selection.
25
+ *
26
+ * @param name - The name of the field in the form.
27
+ * @param label - The label for the field.
28
+ * @param required - Whether the field is required.
29
+ * @param className - The class name for the form item container.
30
+ * @param mode - Selection mode: 'single', 'multiple', or 'range'.
31
+ * @param displayMode - What to display: 'date', 'time', or 'datetime'.
32
+ * @param inputMode - Input style: 'input' or 'select'.
33
+ * @param placeholder - Placeholder text when no value is selected.
34
+ * @param disabled - Whether the field is disabled.
35
+ * @param disabledDates - Dates that should be disabled in the calendar.
36
+ * @param minDate - Minimum selectable date.
37
+ * @param maxDate - Maximum selectable date.
38
+ * @param timeStep - Time step in seconds (default: 60).
39
+ * @param minTime - Minimum selectable time (HH:mm format).
40
+ * @param maxTime - Maximum selectable time (HH:mm format).
41
+ * @param inputClassName - Class name for the date input.
42
+ * @param timeInputClassName - Class name for the time input.
43
+ *
44
+ * @example
45
+ * // Date only field
46
+ * <DateTimeField
47
+ * name="birthDate"
48
+ * label="Birth Date"
49
+ * displayMode="date"
50
+ * />
51
+ *
52
+ * // Date and time field
53
+ * <DateTimeField
54
+ * name="appointment"
55
+ * label="Appointment"
56
+ * displayMode="datetime"
57
+ * />
58
+ *
59
+ * // Time only field
60
+ * <DateTimeField
61
+ * name="meetingTime"
62
+ * label="Meeting Time"
63
+ * displayMode="time"
64
+ * />
65
+ *
66
+ * // Date range picker
67
+ * <DateTimeField
68
+ * name="vacationPeriod"
69
+ * label="Vacation Period"
70
+ * mode="range"
71
+ * />
72
+ */
73
+ export declare const DateTimeField: {
74
+ <T extends FieldValues>({ name, label, required, className, mode, displayMode, inputMode, placeholder, disabled, disabledDates, minDate, maxDate, timeStep, minTime, maxTime, inputClassName, timeInputClassName, }: DateTimeFieldProps<T>): import("react/jsx-runtime").JSX.Element;
75
+ displayName: string;
76
+ };
77
+ //# sourceMappingURL=DateTimeField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateTimeField.d.ts","sourceRoot":"","sources":["../../../../src/components/form/fields/DateTimeField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAkB,MAAM,iBAAiB,CAAC;AAEpE,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,kBAAkB,EAEnB,MAAM,uCAAuC,CAAC;AAS/C,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,IAAI;IAEtD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,SAAS,CAAC,EAAE,uBAAuB,CAAC;IAGpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IAGf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,aAAa;KAAI,CAAC,SAAS,WAAW,+LA4BhD,kBAAkB,CAAC,CAAC,CAAC;;CA8GvB,CAAC"}
@@ -0,0 +1,99 @@
1
+ import { useFormContext as H } from "react-hook-form";
2
+ import { cn as I } from "../../../lib/utils.js";
3
+ import { DateTimePicker as L } from "../../date-time-picker/DateTimePicker.js";
4
+ import { FormField as S, FormItem as q, FormLabel as z, FormControl as G, FormMessage as J } from "../Form.js";
5
+ import { jsx as e, jsxs as c } from "react/jsx-runtime";
6
+ const K = ({
7
+ name: o,
8
+ label: i,
9
+ required: f = !1,
10
+ className: d,
11
+ // Core configuration
12
+ mode: a = "single",
13
+ displayMode: n = "date",
14
+ inputMode: p = "input",
15
+ // UI Customization
16
+ placeholder: D,
17
+ disabled: F = !1,
18
+ // Validation
19
+ disabledDates: h,
20
+ minDate: x,
21
+ maxDate: y,
22
+ // Time picker specific props
23
+ timeStep: b = 60,
24
+ minTime: g,
25
+ maxTime: j,
26
+ // Styling
27
+ inputClassName: A,
28
+ timeInputClassName: C
29
+ }) => {
30
+ const {
31
+ control: N,
32
+ formState: T
33
+ } = H(), {
34
+ errors: k
35
+ } = T, P = k[o], V = (t) => t ? typeof t == "object" && t !== null && ("date" in t || "time" in t) ? t : t instanceof Date ? {
36
+ date: t
37
+ } : Array.isArray(t) && t.every((r) => r instanceof Date) ? {
38
+ date: t
39
+ } : t && typeof t == "object" && t !== null && "from" in t && "to" in t && (t.from instanceof Date || t.from === void 0) && (t.to instanceof Date || t.to === void 0) ? {
40
+ date: t
41
+ } : {} : {}, w = (t) => {
42
+ if (n === "date")
43
+ return t.date;
44
+ if (n === "time")
45
+ return t.time || "";
46
+ if (n === "datetime") {
47
+ if (t.date && t.time) {
48
+ const r = Array.isArray(t.date) ? t.date[0] : t.date;
49
+ if (r instanceof Date && t.time) {
50
+ const m = t.time.split(":").map(Number), B = m[0] || 0, E = m[1] || 0, s = new Date(r);
51
+ return s.setHours(B, E, 0, 0), s;
52
+ }
53
+ }
54
+ return t.date;
55
+ }
56
+ return t;
57
+ };
58
+ return /* @__PURE__ */ e(S, {
59
+ control: N,
60
+ name: o,
61
+ render: ({
62
+ field: t
63
+ }) => /* @__PURE__ */ c(q, {
64
+ className: I(d),
65
+ children: [i && /* @__PURE__ */ c(z, {
66
+ htmlFor: o,
67
+ children: [/* @__PURE__ */ e("span", {
68
+ children: i
69
+ }), f && /* @__PURE__ */ e("span", {
70
+ className: "ml-1 text-red-500",
71
+ children: "*"
72
+ })]
73
+ }), /* @__PURE__ */ e(G, {
74
+ children: /* @__PURE__ */ e(L, {
75
+ mode: a,
76
+ displayMode: n,
77
+ inputMode: p,
78
+ value: V(t.value),
79
+ onValueChange: (r) => t.onChange(w(r)),
80
+ placeholder: D,
81
+ disabled: F,
82
+ error: !!P,
83
+ disabledDates: h,
84
+ minDate: x,
85
+ maxDate: y,
86
+ timeStep: b,
87
+ minTime: g,
88
+ maxTime: j,
89
+ inputClassName: A,
90
+ timeInputClassName: C
91
+ })
92
+ }), /* @__PURE__ */ e(J, {})]
93
+ })
94
+ });
95
+ };
96
+ K.displayName = "DateTimeField";
97
+ export {
98
+ K as DateTimeField
99
+ };
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ export type FieldDescriptionProps = {
3
+ children?: ReactNode;
4
+ leftIcon?: ReactNode;
5
+ rightIcon?: ReactNode;
6
+ className?: string;
7
+ isError?: boolean;
8
+ };
9
+ export declare const FieldDescription: ({ children, leftIcon, rightIcon, className, isError, }: FieldDescriptionProps) => import("react/jsx-runtime").JSX.Element | null;
10
+ //# sourceMappingURL=FieldDescription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldDescription.d.ts","sourceRoot":"","sources":["../../../../src/components/form/fields/FieldDescription.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,wDAM9B,qBAAqB,mDAuBvB,CAAC"}