pixelize-design-library 2.3.1-beta.1 → 2.3.1-beta.10

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 (324) hide show
  1. package/.claude/settings.local.json +21 -1
  2. package/dist/Components/Accordion/Accordion.js +26 -5
  3. package/dist/Components/KanbanBoard/AccountCard.js +17 -14
  4. package/dist/Components/KanbanBoard/KanbanBoard.js +93 -78
  5. package/dist/Components/NavigationBar/NavigationBar.js +4 -4
  6. package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.d.ts +1 -1
  7. package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +42 -24
  8. package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewerProps.d.ts +2 -0
  9. package/dist/Components/SearchSelect/SearchSelect.js +53 -21
  10. package/dist/Components/Table/Table.d.ts +1 -1
  11. package/dist/Components/Table/Table.js +143 -28
  12. package/dist/Components/Table/TableProps.d.ts +9 -1
  13. package/dist/Components/Table/{Components → components}/TableActions.d.ts +2 -2
  14. package/dist/Components/Table/{Components → components}/TableActions.js +5 -4
  15. package/dist/Components/Table/{Components → components}/TableBody.js +84 -18
  16. package/dist/Components/Table/{Components → components}/TableHeader.js +5 -9
  17. package/dist/Components/Table/hooks/useTable.d.ts +1 -1
  18. package/dist/Components/Table/hooks/useTable.js +8 -7
  19. package/dist/Components/Table/settings/TableSettings.d.ts +3 -2
  20. package/dist/Components/Table/settings/TableSettings.js +30 -6
  21. package/dist/Components/Timeline/Timeline.d.ts +1 -1
  22. package/dist/Components/Timeline/Timeline.js +145 -78
  23. package/dist/Components/Toaster/Toaster.js +40 -20
  24. package/dist/Utils/table.d.ts +6 -1
  25. package/dist/Utils/table.js +47 -27
  26. package/package.json +1 -1
  27. package/dist/App.d.ts +0 -4
  28. package/dist/App.js +0 -131
  29. package/dist/Components/Table/CompactSelect.d.ts +0 -15
  30. package/dist/Components/Table/CompactSelect.js +0 -69
  31. package/dist/Components/Table/Components/ActiveFilters.d.ts +0 -9
  32. package/dist/Components/Table/Components/ActiveFilters.js +0 -132
  33. package/dist/Components/Table/Components/TableFilters.d.ts +0 -7
  34. package/dist/Components/Table/Components/TableFilters.js +0 -89
  35. package/dist/Components/Table/Components/useDebounce.d.ts +0 -2
  36. package/dist/Components/Table/Components/useDebounce.js +0 -28
  37. package/dist/Components/Table/Components/useTable.d.ts +0 -47
  38. package/dist/Components/Table/Components/useTable.js +0 -219
  39. package/dist/Components/Table/LeftFilterPane.d.ts +0 -36
  40. package/dist/Components/Table/LeftFilterPane.js +0 -273
  41. package/dist/Components/Table/SelectOperationControls.d.ts +0 -8
  42. package/dist/Components/Table/SelectOperationControls.js +0 -15
  43. package/dist/Components/Table/TableSettings/ManageColumns.d.ts +0 -12
  44. package/dist/Components/Table/TableSettings/ManageColumns.js +0 -166
  45. package/dist/Components/Table/TableSettings/ManageColumns.test.d.ts +0 -1
  46. package/dist/Components/Table/TableSettings/ManageColumns.test.js +0 -146
  47. package/dist/Components/Table/TableSettings/TableFilters.d.ts +0 -10
  48. package/dist/Components/Table/TableSettings/TableFilters.js +0 -69
  49. package/dist/Components/Table/TableSettings/TableFilters.test.d.ts +0 -1
  50. package/dist/Components/Table/TableSettings/TableFilters.test.js +0 -109
  51. package/dist/Components/Table/TableSettings/TableSettings.d.ts +0 -8
  52. package/dist/Components/Table/TableSettings/TableSettings.js +0 -141
  53. package/dist/Components/Table/TableToDo.d.ts +0 -2
  54. package/dist/Components/Table/TableToDo.js +0 -291
  55. package/dist/Components/Table/TextOperationControls.d.ts +0 -12
  56. package/dist/Components/Table/TextOperationControls.js +0 -29
  57. package/dist/Layout.d.ts +0 -3
  58. package/dist/Layout.js +0 -292
  59. package/dist/Pages/TInput.d.ts +0 -3
  60. package/dist/Pages/TInput.js +0 -56
  61. package/dist/Pages/accordion.d.ts +0 -3
  62. package/dist/Pages/accordion.js +0 -42
  63. package/dist/Pages/alertdialog.d.ts +0 -3
  64. package/dist/Pages/alertdialog.js +0 -54
  65. package/dist/Pages/button.d.ts +0 -3
  66. package/dist/Pages/button.js +0 -46
  67. package/dist/Pages/card.d.ts +0 -3
  68. package/dist/Pages/card.js +0 -117
  69. package/dist/Pages/chart.d.ts +0 -4
  70. package/dist/Pages/chart.js +0 -40
  71. package/dist/Pages/checkbox.d.ts +0 -3
  72. package/dist/Pages/checkbox.js +0 -12
  73. package/dist/Pages/contactForm.d.ts +0 -3
  74. package/dist/Pages/contactForm.js +0 -16
  75. package/dist/Pages/datePick.d.ts +0 -3
  76. package/dist/Pages/datePick.js +0 -88
  77. package/dist/Pages/drawer.d.ts +0 -3
  78. package/dist/Pages/drawer.js +0 -58
  79. package/dist/Pages/dropdown.d.ts +0 -3
  80. package/dist/Pages/dropdown.js +0 -24
  81. package/dist/Pages/editor.d.ts +0 -3
  82. package/dist/Pages/editor.js +0 -14
  83. package/dist/Pages/feedback.d.ts +0 -2
  84. package/dist/Pages/feedback.js +0 -15
  85. package/dist/Pages/fileUpload.d.ts +0 -2
  86. package/dist/Pages/fileUpload.js +0 -82
  87. package/dist/Pages/input.d.ts +0 -3
  88. package/dist/Pages/input.js +0 -92
  89. package/dist/Pages/kanbanboard.d.ts +0 -3
  90. package/dist/Pages/kanbanboard.js +0 -224
  91. package/dist/Pages/modal.d.ts +0 -3
  92. package/dist/Pages/modal.js +0 -65
  93. package/dist/Pages/multiSelect.d.ts +0 -3
  94. package/dist/Pages/multiSelect.js +0 -55
  95. package/dist/Pages/noteArea.d.ts +0 -3
  96. package/dist/Pages/noteArea.js +0 -59
  97. package/dist/Pages/notification.d.ts +0 -3
  98. package/dist/Pages/notification.js +0 -25
  99. package/dist/Pages/numberInput.d.ts +0 -3
  100. package/dist/Pages/numberInput.js +0 -49
  101. package/dist/Pages/photoViewer.d.ts +0 -3
  102. package/dist/Pages/photoViewer.js +0 -12
  103. package/dist/Pages/pinInputs.d.ts +0 -3
  104. package/dist/Pages/pinInputs.js +0 -12
  105. package/dist/Pages/productCaard.d.ts +0 -3
  106. package/dist/Pages/productCaard.js +0 -311
  107. package/dist/Pages/productDetailCard.d.ts +0 -3
  108. package/dist/Pages/productDetailCard.js +0 -78
  109. package/dist/Pages/productFilter.d.ts +0 -3
  110. package/dist/Pages/productFilter.js +0 -202
  111. package/dist/Pages/progressbar.d.ts +0 -3
  112. package/dist/Pages/progressbar.js +0 -12
  113. package/dist/Pages/radioButton.d.ts +0 -3
  114. package/dist/Pages/radioButton.js +0 -54
  115. package/dist/Pages/search.d.ts +0 -3
  116. package/dist/Pages/search.js +0 -54
  117. package/dist/Pages/searchSelect.d.ts +0 -3
  118. package/dist/Pages/searchSelect.js +0 -133
  119. package/dist/Pages/select.d.ts +0 -3
  120. package/dist/Pages/select.js +0 -53
  121. package/dist/Pages/selectSearch.d.ts +0 -3
  122. package/dist/Pages/selectSearch.js +0 -103
  123. package/dist/Pages/skeleton.d.ts +0 -3
  124. package/dist/Pages/skeleton.js +0 -22
  125. package/dist/Pages/switch.d.ts +0 -3
  126. package/dist/Pages/switch.js +0 -50
  127. package/dist/Pages/table.d.ts +0 -3
  128. package/dist/Pages/table.js +0 -174
  129. package/dist/Pages/textArea.d.ts +0 -3
  130. package/dist/Pages/textArea.js +0 -15
  131. package/dist/Pages/timeline.d.ts +0 -3
  132. package/dist/Pages/timeline.js +0 -74
  133. package/dist/Pages/tooltip.d.ts +0 -3
  134. package/dist/Pages/tooltip.js +0 -12
  135. package/dist/Pages/toster.d.ts +0 -3
  136. package/dist/Pages/toster.js +0 -68
  137. package/dist/Pages/verifyEmail.d.ts +0 -3
  138. package/dist/Pages/verifyEmail.js +0 -18
  139. package/dist/Theme/Dark/palette.d.ts +0 -370
  140. package/dist/Theme/Dark/palette.js +0 -372
  141. package/dist/bootstrap.d.ts +0 -1
  142. package/dist/bootstrap.js +0 -14
  143. package/dist/components-v2/AlertDialog/AlertDialog.d.ts +0 -23
  144. package/dist/components-v2/AlertDialog/AlertDialog.js +0 -98
  145. package/dist/components-v2/Breadcrumbs/Breadcrumbs.d.ts +0 -14
  146. package/dist/components-v2/Breadcrumbs/Breadcrumbs.js +0 -66
  147. package/dist/components-v2/Charts/AreaChart.d.ts +0 -23
  148. package/dist/components-v2/Charts/AreaChart.js +0 -63
  149. package/dist/components-v2/Charts/BarChart.d.ts +0 -25
  150. package/dist/components-v2/Charts/BarChart.js +0 -57
  151. package/dist/components-v2/Charts/LineChart.d.ts +0 -23
  152. package/dist/components-v2/Charts/LineChart.js +0 -55
  153. package/dist/components-v2/Charts/PieChart.d.ts +0 -15
  154. package/dist/components-v2/Charts/PieChart.js +0 -54
  155. package/dist/components-v2/Charts/PolarChart.d.ts +0 -14
  156. package/dist/components-v2/Charts/PolarChart.js +0 -54
  157. package/dist/components-v2/Charts/chartOptions.d.ts +0 -7
  158. package/dist/components-v2/Charts/chartOptions.js +0 -41
  159. package/dist/components-v2/Charts/useChartTheme.d.ts +0 -22
  160. package/dist/components-v2/Charts/useChartTheme.js +0 -106
  161. package/dist/components-v2/ContactForm/ContactForm.d.ts +0 -25
  162. package/dist/components-v2/ContactForm/ContactForm.js +0 -116
  163. package/dist/components-v2/DatePicker/Calendar.d.ts +0 -19
  164. package/dist/components-v2/DatePicker/Calendar.js +0 -212
  165. package/dist/components-v2/DatePicker/DatePicker.d.ts +0 -46
  166. package/dist/components-v2/DatePicker/DatePicker.js +0 -189
  167. package/dist/components-v2/DatePicker/TimePicker.d.ts +0 -12
  168. package/dist/components-v2/DatePicker/TimePicker.js +0 -105
  169. package/dist/components-v2/DatePicker/utils.d.ts +0 -31
  170. package/dist/components-v2/DatePicker/utils.js +0 -109
  171. package/dist/components-v2/Drawer/Drawer.d.ts +0 -27
  172. package/dist/components-v2/Drawer/Drawer.js +0 -132
  173. package/dist/components-v2/FeedbackForm/FeedbackForm.d.ts +0 -26
  174. package/dist/components-v2/FeedbackForm/FeedbackForm.js +0 -112
  175. package/dist/components-v2/FileUploader/FileUploader.d.ts +0 -28
  176. package/dist/components-v2/FileUploader/FileUploader.js +0 -127
  177. package/dist/components-v2/Input/TextInput.d.ts +0 -41
  178. package/dist/components-v2/Input/TextInput.js +0 -169
  179. package/dist/components-v2/KanbanBoard/KanbanBoard.d.ts +0 -39
  180. package/dist/components-v2/KanbanBoard/KanbanBoard.js +0 -101
  181. package/dist/components-v2/Layout/AppLayout.d.ts +0 -22
  182. package/dist/components-v2/Layout/AppLayout.js +0 -53
  183. package/dist/components-v2/Loading/Loading.d.ts +0 -19
  184. package/dist/components-v2/Loading/Loading.js +0 -55
  185. package/dist/components-v2/Modal/Modal.d.ts +0 -30
  186. package/dist/components-v2/Modal/Modal.js +0 -82
  187. package/dist/components-v2/NavigationBar/NavigationBar.d.ts +0 -47
  188. package/dist/components-v2/NavigationBar/NavigationBar.js +0 -148
  189. package/dist/components-v2/Notification/Notification.d.ts +0 -22
  190. package/dist/components-v2/Notification/Notification.js +0 -113
  191. package/dist/components-v2/NumberInput/NumberInput.d.ts +0 -37
  192. package/dist/components-v2/NumberInput/NumberInput.js +0 -210
  193. package/dist/components-v2/PinInput/PinInput.d.ts +0 -26
  194. package/dist/components-v2/PinInput/PinInput.js +0 -138
  195. package/dist/components-v2/ProfilePhotoViewer/ProfilePhotoViewer.d.ts +0 -18
  196. package/dist/components-v2/ProfilePhotoViewer/ProfilePhotoViewer.js +0 -91
  197. package/dist/components-v2/Select/Select.d.ts +0 -41
  198. package/dist/components-v2/Select/Select.js +0 -284
  199. package/dist/components-v2/Sidebar/Sidebar.d.ts +0 -41
  200. package/dist/components-v2/Sidebar/Sidebar.js +0 -182
  201. package/dist/components-v2/Slider/Slider.d.ts +0 -18
  202. package/dist/components-v2/Slider/Slider.js +0 -101
  203. package/dist/components-v2/Table/Table.d.ts +0 -7
  204. package/dist/components-v2/Table/Table.js +0 -172
  205. package/dist/components-v2/Table/TableProps.d.ts +0 -139
  206. package/dist/components-v2/Table/TableProps.js +0 -9
  207. package/dist/components-v2/Table/components/ActiveFilters.d.ts +0 -10
  208. package/dist/components-v2/Table/components/ActiveFilters.js +0 -70
  209. package/dist/components-v2/Table/components/BulkActionBar.d.ts +0 -11
  210. package/dist/components-v2/Table/components/BulkActionBar.js +0 -92
  211. package/dist/components-v2/Table/components/ColumnResizeHandle.d.ts +0 -7
  212. package/dist/components-v2/Table/components/ColumnResizeHandle.js +0 -41
  213. package/dist/components-v2/Table/components/Pagination.d.ts +0 -11
  214. package/dist/components-v2/Table/components/Pagination.js +0 -92
  215. package/dist/components-v2/Table/components/TableBody.d.ts +0 -23
  216. package/dist/components-v2/Table/components/TableBody.js +0 -69
  217. package/dist/components-v2/Table/components/TableCell.d.ts +0 -14
  218. package/dist/components-v2/Table/components/TableCell.js +0 -63
  219. package/dist/components-v2/Table/components/TableEmptyState.d.ts +0 -12
  220. package/dist/components-v2/Table/components/TableEmptyState.js +0 -55
  221. package/dist/components-v2/Table/components/TableErrorState.d.ts +0 -6
  222. package/dist/components-v2/Table/components/TableErrorState.js +0 -52
  223. package/dist/components-v2/Table/components/TableHeader.d.ts +0 -21
  224. package/dist/components-v2/Table/components/TableHeader.js +0 -94
  225. package/dist/components-v2/Table/components/TableRow.d.ts +0 -20
  226. package/dist/components-v2/Table/components/TableRow.js +0 -64
  227. package/dist/components-v2/Table/components/TableSearch.d.ts +0 -8
  228. package/dist/components-v2/Table/components/TableSearch.js +0 -47
  229. package/dist/components-v2/Table/filters/FilterChips.d.ts +0 -6
  230. package/dist/components-v2/Table/filters/FilterChips.js +0 -9
  231. package/dist/components-v2/Table/filters/LeftFilterPane.d.ts +0 -17
  232. package/dist/components-v2/Table/filters/LeftFilterPane.js +0 -105
  233. package/dist/components-v2/Table/filters/TableFilters.d.ts +0 -12
  234. package/dist/components-v2/Table/filters/TableFilters.js +0 -127
  235. package/dist/components-v2/Table/hooks/useColumnResize.d.ts +0 -15
  236. package/dist/components-v2/Table/hooks/useColumnResize.js +0 -104
  237. package/dist/components-v2/Table/hooks/useTable.d.ts +0 -58
  238. package/dist/components-v2/Table/hooks/useTable.js +0 -254
  239. package/dist/components-v2/Table/hooks/useTableKeyboard.d.ts +0 -25
  240. package/dist/components-v2/Table/hooks/useTableKeyboard.js +0 -112
  241. package/dist/components-v2/Table/hooks/useVirtualScroll.d.ts +0 -29
  242. package/dist/components-v2/Table/hooks/useVirtualScroll.js +0 -83
  243. package/dist/components-v2/Table/settings/ManageColumns.d.ts +0 -12
  244. package/dist/components-v2/Table/settings/ManageColumns.js +0 -59
  245. package/dist/components-v2/Table/settings/TableSettings.d.ts +0 -12
  246. package/dist/components-v2/Table/settings/TableSettings.js +0 -57
  247. package/dist/components-v2/Table/utils/filterUtils.d.ts +0 -7
  248. package/dist/components-v2/Table/utils/filterUtils.js +0 -149
  249. package/dist/components-v2/Table/utils/sortUtils.d.ts +0 -6
  250. package/dist/components-v2/Table/utils/sortUtils.js +0 -65
  251. package/dist/components-v2/Tag/Tag.d.ts +0 -15
  252. package/dist/components-v2/Tag/Tag.js +0 -87
  253. package/dist/components-v2/Timeline/Timeline.d.ts +0 -18
  254. package/dist/components-v2/Timeline/Timeline.js +0 -76
  255. package/dist/components-v2/Toaster/Toaster.d.ts +0 -61
  256. package/dist/components-v2/Toaster/Toaster.js +0 -63
  257. package/dist/components-v2/Toggle/Toggle.d.ts +0 -28
  258. package/dist/components-v2/Toggle/Toggle.js +0 -90
  259. package/dist/components-v2/ui/accordion.d.ts +0 -12
  260. package/dist/components-v2/ui/accordion.js +0 -104
  261. package/dist/components-v2/ui/alert.d.ts +0 -18
  262. package/dist/components-v2/ui/alert.js +0 -99
  263. package/dist/components-v2/ui/avatar.d.ts +0 -12
  264. package/dist/components-v2/ui/avatar.js +0 -80
  265. package/dist/components-v2/ui/badge.d.ts +0 -10
  266. package/dist/components-v2/ui/badge.js +0 -76
  267. package/dist/components-v2/ui/button.d.ts +0 -18
  268. package/dist/components-v2/ui/button.js +0 -97
  269. package/dist/components-v2/ui/checkbox.d.ts +0 -15
  270. package/dist/components-v2/ui/checkbox.js +0 -86
  271. package/dist/components-v2/ui/dialog.d.ts +0 -30
  272. package/dist/components-v2/ui/dialog.js +0 -115
  273. package/dist/components-v2/ui/dropdown-menu.d.ts +0 -26
  274. package/dist/components-v2/ui/dropdown-menu.js +0 -121
  275. package/dist/components-v2/ui/field.d.ts +0 -32
  276. package/dist/components-v2/ui/field.js +0 -62
  277. package/dist/components-v2/ui/form-field.d.ts +0 -25
  278. package/dist/components-v2/ui/form-field.js +0 -96
  279. package/dist/components-v2/ui/input.d.ts +0 -9
  280. package/dist/components-v2/ui/input.js +0 -73
  281. package/dist/components-v2/ui/label.d.ts +0 -10
  282. package/dist/components-v2/ui/label.js +0 -70
  283. package/dist/components-v2/ui/popover.d.ts +0 -9
  284. package/dist/components-v2/ui/popover.js +0 -60
  285. package/dist/components-v2/ui/progress.d.ts +0 -12
  286. package/dist/components-v2/ui/progress.js +0 -75
  287. package/dist/components-v2/ui/radio-group.d.ts +0 -17
  288. package/dist/components-v2/ui/radio-group.js +0 -91
  289. package/dist/components-v2/ui/select.d.ts +0 -24
  290. package/dist/components-v2/ui/select.js +0 -122
  291. package/dist/components-v2/ui/separator.d.ts +0 -5
  292. package/dist/components-v2/ui/separator.js +0 -55
  293. package/dist/components-v2/ui/skeleton.d.ts +0 -9
  294. package/dist/components-v2/ui/skeleton.js +0 -68
  295. package/dist/components-v2/ui/spinner.d.ts +0 -16
  296. package/dist/components-v2/ui/spinner.js +0 -64
  297. package/dist/components-v2/ui/switch.d.ts +0 -10
  298. package/dist/components-v2/ui/switch.js +0 -81
  299. package/dist/components-v2/ui/tabs.d.ts +0 -13
  300. package/dist/components-v2/ui/tabs.js +0 -95
  301. package/dist/components-v2/ui/textarea.d.ts +0 -10
  302. package/dist/components-v2/ui/textarea.js +0 -96
  303. package/dist/components-v2/ui/tooltip.d.ts +0 -17
  304. package/dist/components-v2/ui/tooltip.js +0 -75
  305. package/dist/lib/utils.d.ts +0 -2
  306. package/dist/lib/utils.js +0 -8
  307. package/dist/theme-v2/ThemeProvider.d.ts +0 -19
  308. package/dist/theme-v2/ThemeProvider.js +0 -149
  309. package/dist/theme-v2/dark.css +0 -47
  310. package/dist/theme-v2/tokens.css +0 -72
  311. /package/dist/Components/Table/{Components → components}/HeaderActions.d.ts +0 -0
  312. /package/dist/Components/Table/{Components → components}/HeaderActions.js +0 -0
  313. /package/dist/Components/Table/{Components → components}/Pagination.d.ts +0 -0
  314. /package/dist/Components/Table/{Components → components}/Pagination.js +0 -0
  315. /package/dist/Components/Table/{Components → components}/TableBody.d.ts +0 -0
  316. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.d.ts +0 -0
  317. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.js +0 -0
  318. /package/dist/Components/Table/{Components → components}/TableGroupRow.d.ts +0 -0
  319. /package/dist/Components/Table/{Components → components}/TableGroupRow.js +0 -0
  320. /package/dist/Components/Table/{Components → components}/TableHeader.d.ts +0 -0
  321. /package/dist/Components/Table/{Components → components}/TableLoading.d.ts +0 -0
  322. /package/dist/Components/Table/{Components → components}/TableLoading.js +0 -0
  323. /package/dist/Components/Table/{Components → components}/TableSearch.d.ts +0 -0
  324. /package/dist/Components/Table/{Components → components}/TableSearch.js +0 -0
@@ -1,212 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Calendar = void 0;
37
- const React = __importStar(require("react"));
38
- const lucide_react_1 = require("lucide-react");
39
- const utils_1 = require("../../lib/utils");
40
- const utils_2 = require("./utils");
41
- exports.Calendar = React.forwardRef(({ viewDate, onViewDateChange, selected, rangeStart, rangeEnd, onSelectDate, mode, constraints = {}, weekStartsOn = 0, locale, compact = false, }, ref) => {
42
- const [pane, setPane] = React.useState("days");
43
- const [focusDate, setFocusDate] = React.useState((0, utils_2.startOfDay)(viewDate));
44
- const gridRef = React.useRef(null);
45
- React.useEffect(() => {
46
- if (focusDate.getMonth() !== viewDate.getMonth() ||
47
- focusDate.getFullYear() !== viewDate.getFullYear()) {
48
- setFocusDate((0, utils_2.startOfDay)(viewDate));
49
- }
50
- }, [viewDate, focusDate]);
51
- const moveFocus = (next) => {
52
- if (next.getMonth() !== viewDate.getMonth() ||
53
- next.getFullYear() !== viewDate.getFullYear()) {
54
- onViewDateChange(next);
55
- }
56
- setFocusDate((0, utils_2.startOfDay)(next));
57
- requestAnimationFrame(() => {
58
- var _a;
59
- const node = (_a = gridRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(`[data-date="${next.toDateString()}"]`);
60
- node === null || node === void 0 ? void 0 : node.focus();
61
- });
62
- };
63
- const cells = React.useMemo(() => (0, utils_2.buildMonthGrid)(viewDate, weekStartsOn), [viewDate, weekStartsOn]);
64
- const weekdayLabels = React.useMemo(() => (0, utils_2.getWeekdayHeaders)(weekStartsOn, locale), [weekStartsOn, locale]);
65
- const monthLabel = (0, utils_2.formatDate)(viewDate, "MMMM");
66
- const yearLabel = (0, utils_2.formatDate)(viewDate, "yyyy");
67
- const handleDayKeyDown = (event, cellDate) => {
68
- const handled = (next) => {
69
- event.preventDefault();
70
- moveFocus(next);
71
- };
72
- switch (event.key) {
73
- case "ArrowLeft":
74
- return handled((0, utils_2.addDays)(cellDate, -1));
75
- case "ArrowRight":
76
- return handled((0, utils_2.addDays)(cellDate, 1));
77
- case "ArrowUp":
78
- return handled((0, utils_2.addDays)(cellDate, -7));
79
- case "ArrowDown":
80
- return handled((0, utils_2.addDays)(cellDate, 7));
81
- case "Home":
82
- return handled((0, utils_2.addDays)(cellDate, -cellDate.getDay()));
83
- case "End":
84
- return handled((0, utils_2.addDays)(cellDate, 6 - cellDate.getDay()));
85
- case "PageUp":
86
- return handled((0, utils_2.addMonths)(cellDate, event.shiftKey ? -12 : -1));
87
- case "PageDown":
88
- return handled((0, utils_2.addMonths)(cellDate, event.shiftKey ? 12 : 1));
89
- case "Enter":
90
- case " ":
91
- event.preventDefault();
92
- if (!(0, utils_2.isDateDisabled)(cellDate, constraints))
93
- onSelectDate(cellDate);
94
- return;
95
- default:
96
- return;
97
- }
98
- };
99
- return (React.createElement("div", { ref: ref, className: (0, utils_1.cn)("select-none", compact ? "p-2" : "p-3"), role: "application", "aria-label": "Calendar" },
100
- React.createElement(CalendarHeader, { pane: pane, setPane: setPane, viewDate: viewDate, onViewDateChange: onViewDateChange, monthLabel: monthLabel, yearLabel: yearLabel, constraints: constraints }),
101
- pane === "days" && (React.createElement("div", { ref: gridRef, role: "grid", "aria-label": `${monthLabel} ${yearLabel}`, className: "mt-2" },
102
- React.createElement("div", { className: "grid grid-cols-7 gap-0 text-center text-[11px] font-medium text-muted-foreground" }, weekdayLabels.map((label) => (React.createElement("span", { key: label, className: "py-1" }, label)))),
103
- React.createElement("div", { role: "rowgroup", className: "grid grid-cols-7 gap-0.5" }, cells.map((cell) => {
104
- const disabled = (0, utils_2.isDateDisabled)(cell.date, constraints);
105
- const isSelected = mode === "single"
106
- ? selected && (0, utils_2.isSameDay)(cell.date, selected)
107
- : !!((rangeStart && (0, utils_2.isSameDay)(cell.date, rangeStart)) ||
108
- (rangeEnd && (0, utils_2.isSameDay)(cell.date, rangeEnd)));
109
- const inRange = mode === "range" &&
110
- rangeStart &&
111
- rangeEnd &&
112
- (0, utils_2.isAfter)(cell.date, rangeStart) &&
113
- (0, utils_2.isBefore)(cell.date, rangeEnd);
114
- const isFocused = (0, utils_2.isSameDay)(cell.date, focusDate);
115
- return (React.createElement(DayCell, { key: cell.date.toISOString(), date: cell.date, inCurrentMonth: cell.inCurrentMonth, isToday: cell.isToday, isSelected: !!isSelected, inRange: !!inRange, disabled: disabled, focusable: isFocused, onSelect: () => {
116
- if (!disabled)
117
- onSelectDate(cell.date);
118
- setFocusDate((0, utils_2.startOfDay)(cell.date));
119
- }, onKeyDown: (event) => handleDayKeyDown(event, cell.date) }));
120
- })))),
121
- pane === "months" && (React.createElement(MonthPane, { viewDate: viewDate, constraints: constraints, onSelect: (monthIndex) => {
122
- const next = new Date(viewDate);
123
- next.setMonth(monthIndex);
124
- onViewDateChange(next);
125
- setPane("days");
126
- } })),
127
- pane === "years" && (React.createElement(YearPane, { viewDate: viewDate, constraints: constraints, onSelect: (year) => {
128
- const next = new Date(viewDate);
129
- next.setFullYear(year);
130
- onViewDateChange(next);
131
- setPane("months");
132
- } }))));
133
- });
134
- exports.Calendar.displayName = "Calendar";
135
- function CalendarHeader({ pane, setPane, viewDate, onViewDateChange, monthLabel, yearLabel, constraints, }) {
136
- const goPrev = () => {
137
- if (pane === "days") {
138
- onViewDateChange((0, utils_2.addMonths)(viewDate, -1));
139
- }
140
- else if (pane === "months") {
141
- onViewDateChange((0, utils_2.addYears)(viewDate, -1));
142
- }
143
- else {
144
- onViewDateChange((0, utils_2.addYears)(viewDate, -12));
145
- }
146
- };
147
- const goNext = () => {
148
- if (pane === "days") {
149
- onViewDateChange((0, utils_2.addMonths)(viewDate, 1));
150
- }
151
- else if (pane === "months") {
152
- onViewDateChange((0, utils_2.addYears)(viewDate, 1));
153
- }
154
- else {
155
- onViewDateChange((0, utils_2.addYears)(viewDate, 12));
156
- }
157
- };
158
- const prevDisabled = constraints.minDate
159
- ? !(0, utils_2.isAfter)((0, utils_2.startOfMonth)(viewDate), constraints.minDate)
160
- : false;
161
- const nextDisabled = constraints.maxDate
162
- ? !(0, utils_2.isBefore)((0, utils_2.endOfMonth)(viewDate), constraints.maxDate)
163
- : false;
164
- return (React.createElement("div", { className: "flex items-center justify-between gap-2" },
165
- React.createElement("button", { type: "button", "aria-label": pane === "days" ? "Previous month" : pane === "months" ? "Previous year" : "Previous 12 years", onClick: goPrev, disabled: prevDisabled, className: "inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-40" },
166
- React.createElement(lucide_react_1.ChevronLeft, { className: "h-4 w-4" })),
167
- React.createElement("h2", { role: "heading", "aria-level": 2, className: "flex flex-1 items-center justify-center gap-1 text-sm font-medium text-foreground" },
168
- React.createElement("button", { type: "button", className: "rounded px-1.5 py-0.5 hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", onClick: () => setPane(pane === "months" ? "days" : "months"), "aria-label": "Pick month" }, monthLabel),
169
- React.createElement("button", { type: "button", className: "rounded px-1.5 py-0.5 hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", onClick: () => setPane(pane === "years" ? "days" : "years"), "aria-label": "Pick year" }, yearLabel)),
170
- React.createElement("button", { type: "button", "aria-label": pane === "days" ? "Next month" : pane === "months" ? "Next year" : "Next 12 years", onClick: goNext, disabled: nextDisabled, className: "inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-40" },
171
- React.createElement(lucide_react_1.ChevronRight, { className: "h-4 w-4" }))));
172
- }
173
- function DayCell({ date, inCurrentMonth, isToday, isSelected, inRange, disabled, focusable, onSelect, onKeyDown, }) {
174
- return (React.createElement("div", { role: "gridcell" },
175
- React.createElement("button", { type: "button", role: "button", tabIndex: focusable ? 0 : -1, "aria-label": (0, utils_2.formatDate)(date, "EEEE, MMMM d, yyyy"), "aria-selected": isSelected || undefined, "aria-disabled": disabled || undefined, disabled: disabled, onClick: onSelect, onKeyDown: onKeyDown, "data-date": date.toDateString(), className: (0, utils_1.cn)("relative inline-flex h-8 w-8 items-center justify-center rounded-md text-sm", "transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "hover:bg-accent hover:text-accent-foreground", !inCurrentMonth && "text-muted-foreground/60", inRange && "bg-primary/15 rounded-none", isSelected &&
176
- "bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground", isToday &&
177
- !isSelected &&
178
- "ring-1 ring-inset ring-primary/40", disabled && "cursor-not-allowed opacity-40 hover:bg-transparent") }, date.getDate())));
179
- }
180
- function MonthPane({ viewDate, constraints, onSelect }) {
181
- const monthNames = React.useMemo(() => {
182
- const result = [];
183
- for (let i = 0; i < 12; i++) {
184
- const d = new Date(viewDate.getFullYear(), i, 1);
185
- result.push((0, utils_2.formatDate)(d, "MMM"));
186
- }
187
- return result;
188
- }, [viewDate]);
189
- return (React.createElement("div", { className: "mt-2 grid grid-cols-3 gap-1" }, monthNames.map((name, index) => {
190
- const monthStart = new Date(viewDate.getFullYear(), index, 1);
191
- const monthEnd = (0, utils_2.endOfMonth)(monthStart);
192
- const disabled = (constraints.minDate && (0, utils_2.isBefore)(monthEnd, constraints.minDate)) ||
193
- (constraints.maxDate && (0, utils_2.isAfter)(monthStart, constraints.maxDate)) ||
194
- false;
195
- const isCurrent = index === viewDate.getMonth();
196
- return (React.createElement("button", { key: name, type: "button", disabled: disabled, onClick: () => onSelect(index), className: (0, utils_1.cn)("rounded-md px-2 py-2 text-sm transition-colors", "hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", isCurrent && "bg-primary text-primary-foreground hover:bg-primary", disabled && "cursor-not-allowed opacity-40 hover:bg-transparent") }, name));
197
- })));
198
- }
199
- function YearPane({ viewDate, constraints, onSelect }) {
200
- const currentYear = viewDate.getFullYear();
201
- const startYear = Math.floor(currentYear / 12) * 12;
202
- const years = Array.from({ length: 12 }, (_, i) => startYear + i);
203
- return (React.createElement("div", { className: "mt-2 grid grid-cols-3 gap-1" }, years.map((year) => {
204
- const yearStart = new Date(year, 0, 1);
205
- const yearEnd = new Date(year, 11, 31);
206
- const disabled = (constraints.minDate && (0, utils_2.isBefore)(yearEnd, constraints.minDate)) ||
207
- (constraints.maxDate && (0, utils_2.isAfter)(yearStart, constraints.maxDate)) ||
208
- false;
209
- const isCurrent = year === currentYear;
210
- return (React.createElement("button", { key: year, type: "button", disabled: disabled, onClick: () => onSelect(year), className: (0, utils_1.cn)("rounded-md px-2 py-2 text-sm transition-colors", "hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", isCurrent && "bg-primary text-primary-foreground hover:bg-primary", disabled && "cursor-not-allowed opacity-40 hover:bg-transparent") }, year));
211
- })));
212
- }
@@ -1,46 +0,0 @@
1
- import * as React from "react";
2
- import { type DateConstraints, type DateRange, type DayOfWeek, formatDate, isDateDisabled } from "./utils";
3
- export type DatePickerSize = "sm" | "md" | "lg";
4
- export type DatePickerType = "date" | "time" | "datetime";
5
- export interface DatePickerProps {
6
- value?: Date | null;
7
- defaultValue?: Date | null;
8
- onChange?: (date: Date | null) => void;
9
- mode?: "single" | "range";
10
- rangeValue?: DateRange;
11
- onRangeChange?: (range: DateRange) => void;
12
- label?: React.ReactNode;
13
- placeholder?: string;
14
- format?: string;
15
- helperText?: React.ReactNode;
16
- error?: boolean;
17
- errorMessage?: React.ReactNode;
18
- isInformation?: boolean;
19
- informationMessage?: React.ReactNode;
20
- isRequired?: boolean;
21
- type?: DatePickerType;
22
- minDate?: Date;
23
- maxDate?: Date;
24
- disabledDates?: Date[];
25
- disabledDaysOfWeek?: DayOfWeek[];
26
- isDisabled?: boolean;
27
- isReadOnly?: boolean;
28
- size?: DatePickerSize;
29
- width?: string;
30
- /** 0 = Sunday … 6 = Saturday. Defaults to 0. */
31
- weekStartsOn?: DayOfWeek;
32
- /** Locale for weekday header labels (Intl.DateTimeFormat locale). */
33
- locale?: Intl.LocalesArgument;
34
- /** 12 or 24 hour clock for the time picker. */
35
- hourFormat?: 12 | 24;
36
- /** Minute step for the time picker. */
37
- minuteStep?: number;
38
- id?: string;
39
- name?: string;
40
- className?: string;
41
- /** Show ✕ clear button inside the trigger when a value is set. */
42
- clearable?: boolean;
43
- }
44
- export declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<HTMLButtonElement>>;
45
- export type { DateRange, DateConstraints, DayOfWeek };
46
- export { isDateDisabled, formatDate };
@@ -1,189 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __rest = (this && this.__rest) || function (s, e) {
36
- var t = {};
37
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
38
- t[p] = s[p];
39
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
40
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
41
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
42
- t[p[i]] = s[p[i]];
43
- }
44
- return t;
45
- };
46
- Object.defineProperty(exports, "__esModule", { value: true });
47
- exports.formatDate = exports.isDateDisabled = exports.DatePicker = void 0;
48
- const React = __importStar(require("react"));
49
- const lucide_react_1 = require("lucide-react");
50
- const utils_1 = require("../../lib/utils");
51
- const field_1 = require("../ui/field");
52
- const form_field_1 = require("../ui/form-field");
53
- const popover_1 = require("../ui/popover");
54
- const Calendar_1 = require("./Calendar");
55
- const TimePicker_1 = require("./TimePicker");
56
- const utils_2 = require("./utils");
57
- Object.defineProperty(exports, "formatDate", { enumerable: true, get: function () { return utils_2.formatDate; } });
58
- Object.defineProperty(exports, "isDateDisabled", { enumerable: true, get: function () { return utils_2.isDateDisabled; } });
59
- const TRIGGER_SIZE = {
60
- sm: "h-8 text-xs px-2.5",
61
- md: "h-9 text-sm px-3",
62
- lg: "h-10 text-base px-3.5",
63
- };
64
- exports.DatePicker = React.forwardRef((props, ref) => {
65
- const { id, label, helperText, error, errorMessage, isInformation, informationMessage, isRequired, width, className } = props, controlProps = __rest(props, ["id", "label", "helperText", "error", "errorMessage", "isInformation", "informationMessage", "isRequired", "width", "className"]);
66
- return (React.createElement(field_1.Field, { id: id, label: label, isRequired: isRequired, isInformation: isInformation, informationMessage: informationMessage, helperText: helperText, error: error, errorMessage: errorMessage, width: width },
67
- React.createElement(DatePickerControl, Object.assign({ ref: ref, error: error, className: className }, controlProps))));
68
- });
69
- exports.DatePicker.displayName = "DatePicker";
70
- const DatePickerControl = React.forwardRef((props, ref) => {
71
- var _a, _b, _c, _d, _e;
72
- const { value, defaultValue, onChange, mode = "single", rangeValue, onRangeChange, type, placeholder = "Select date…", format, minDate, maxDate, disabledDates, disabledDaysOfWeek, isDisabled = false, isReadOnly = false, size = "md", weekStartsOn = 0, locale, hourFormat = 24, minuteStep = 1, error, className, clearable = true, name, } = props;
73
- const inferredFormat = format !== null && format !== void 0 ? format : (type === "time"
74
- ? utils_2.DEFAULT_TIME_FORMAT
75
- : type === "datetime"
76
- ? utils_2.DEFAULT_DATETIME_FORMAT
77
- : utils_2.DEFAULT_DATE_FORMAT);
78
- const effectiveType = type !== null && type !== void 0 ? type : (0, utils_2.inferTypeFromFormat)(inferredFormat);
79
- const field = (0, form_field_1.useFormField)();
80
- const [open, setOpen] = React.useState(false);
81
- const isRange = mode === "range";
82
- const isControlledSingle = !isRange && value !== undefined;
83
- const [internalValue, setInternalValue] = React.useState(defaultValue !== null && defaultValue !== void 0 ? defaultValue : null);
84
- const singleValue = isControlledSingle ? value : internalValue;
85
- const isControlledRange = isRange && rangeValue !== undefined;
86
- const [internalRange, setInternalRange] = React.useState({
87
- start: null,
88
- end: null,
89
- });
90
- const range = isControlledRange ? rangeValue : internalRange;
91
- const [viewDate, setViewDate] = React.useState(() => {
92
- var _a;
93
- if (isRange)
94
- return (_a = range.start) !== null && _a !== void 0 ? _a : new Date();
95
- return singleValue !== null && singleValue !== void 0 ? singleValue : new Date();
96
- });
97
- const constraints = {
98
- minDate,
99
- maxDate,
100
- disabledDates,
101
- disabledDaysOfWeek,
102
- };
103
- const commitSingle = (next) => {
104
- if (!isControlledSingle)
105
- setInternalValue(next);
106
- onChange === null || onChange === void 0 ? void 0 : onChange(next);
107
- };
108
- const commitRange = (next) => {
109
- if (!isControlledRange)
110
- setInternalRange(next);
111
- onRangeChange === null || onRangeChange === void 0 ? void 0 : onRangeChange(next);
112
- };
113
- const handleSelectDate = (date) => {
114
- if (isReadOnly)
115
- return;
116
- if (isRange) {
117
- if (!range.start || (range.start && range.end)) {
118
- commitRange({ start: (0, utils_2.startOfDay)(date), end: null });
119
- }
120
- else if (date < range.start) {
121
- commitRange({ start: (0, utils_2.startOfDay)(date), end: range.start });
122
- }
123
- else {
124
- commitRange({ start: range.start, end: (0, utils_2.startOfDay)(date) });
125
- if (effectiveType === "date")
126
- setOpen(false);
127
- }
128
- }
129
- else {
130
- const next = new Date(date);
131
- if (effectiveType !== "date" && singleValue) {
132
- next.setHours(singleValue.getHours(), singleValue.getMinutes(), 0, 0);
133
- }
134
- commitSingle(next);
135
- if (effectiveType === "date")
136
- setOpen(false);
137
- }
138
- };
139
- const handleTimeChange = (next) => {
140
- if (isRange)
141
- return;
142
- commitSingle(next);
143
- };
144
- const handleClear = (event) => {
145
- event.stopPropagation();
146
- if (isRange) {
147
- commitRange({ start: null, end: null });
148
- }
149
- else {
150
- commitSingle(null);
151
- }
152
- };
153
- const displayValue = (() => {
154
- if (isRange) {
155
- if (!range.start && !range.end)
156
- return "";
157
- const startText = range.start ? (0, utils_2.formatDate)(range.start, inferredFormat) : "…";
158
- const endText = range.end ? (0, utils_2.formatDate)(range.end, inferredFormat) : "…";
159
- return `${startText} – ${endText}`;
160
- }
161
- return singleValue ? (0, utils_2.formatDate)(singleValue, inferredFormat) : "";
162
- })();
163
- const hasValue = isRange
164
- ? !!(range.start || range.end)
165
- : !!singleValue;
166
- const onlyTime = effectiveType === "time";
167
- return (React.createElement(React.Fragment, null,
168
- React.createElement(popover_1.Popover, { open: open, onOpenChange: isReadOnly || isDisabled ? undefined : setOpen },
169
- React.createElement(popover_1.PopoverTrigger, { asChild: true },
170
- React.createElement("button", { ref: ref, type: "button", id: field.id || undefined, disabled: isDisabled, "aria-haspopup": "dialog", "aria-expanded": open, "aria-invalid": error || field.hasError || undefined, "aria-readonly": isReadOnly || undefined, className: (0, utils_1.cn)("flex w-full items-center justify-between gap-2 rounded-md border border-input bg-background text-foreground shadow-sm transition-colors", "focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-1 focus:ring-offset-background", "disabled:cursor-not-allowed disabled:opacity-50", "data-[state=open]:ring-2 data-[state=open]:ring-ring", TRIGGER_SIZE[size], error &&
171
- "border-destructive bg-destructive/5 focus:ring-destructive", isReadOnly && "cursor-default bg-muted", className) },
172
- React.createElement("span", { className: (0, utils_1.cn)("truncate text-left", !displayValue && "text-muted-foreground") }, displayValue || placeholder),
173
- React.createElement("span", { className: "flex items-center gap-1 text-muted-foreground" },
174
- clearable && hasValue && !isDisabled && !isReadOnly && (React.createElement("button", { type: "button", "aria-label": "Clear date", onClick: handleClear, className: "rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" },
175
- React.createElement(lucide_react_1.X, { className: "h-4 w-4" }))),
176
- React.createElement(lucide_react_1.Calendar, { className: "h-4 w-4 opacity-70" })))),
177
- React.createElement(popover_1.PopoverContent, { align: "start", className: "w-auto p-0", onOpenAutoFocus: (event) => {
178
- event.preventDefault();
179
- } },
180
- !onlyTime && (React.createElement(Calendar_1.Calendar, { viewDate: viewDate, onViewDateChange: setViewDate, selected: isRange ? null : singleValue, rangeStart: isRange ? range.start : null, rangeEnd: isRange ? range.end : null, onSelectDate: handleSelectDate, mode: isRange ? "range" : "single", constraints: constraints, weekStartsOn: weekStartsOn, locale: locale, compact: true })),
181
- (effectiveType === "datetime" || onlyTime) && !isRange && (React.createElement(TimePicker_1.TimePicker, { value: singleValue, onChange: handleTimeChange, hourFormat: hourFormat, minuteStep: minuteStep, referenceDate: viewDate })))),
182
- name && (React.createElement("input", { type: "hidden", name: name, value: isRange
183
- ? JSON.stringify({
184
- start: (_b = (_a = range.start) === null || _a === void 0 ? void 0 : _a.toISOString()) !== null && _b !== void 0 ? _b : null,
185
- end: (_d = (_c = range.end) === null || _c === void 0 ? void 0 : _c.toISOString()) !== null && _d !== void 0 ? _d : null,
186
- })
187
- : (_e = singleValue === null || singleValue === void 0 ? void 0 : singleValue.toISOString()) !== null && _e !== void 0 ? _e : "" }))));
188
- });
189
- DatePickerControl.displayName = "DatePickerControl";
@@ -1,12 +0,0 @@
1
- import * as React from "react";
2
- export interface TimePickerProps {
3
- value: Date | null;
4
- onChange: (date: Date) => void;
5
- /** 12 = 12-hour with AM/PM, 24 = 24-hour. */
6
- hourFormat?: 12 | 24;
7
- /** Step in minutes for the minute column. */
8
- minuteStep?: number;
9
- /** Base date when value is null — used to compose a Date with the chosen time. */
10
- referenceDate?: Date;
11
- }
12
- export declare function TimePicker({ value, onChange, hourFormat, minuteStep, referenceDate, }: TimePickerProps): React.ReactElement;
@@ -1,105 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.TimePicker = TimePicker;
37
- const React = __importStar(require("react"));
38
- const utils_1 = require("../../lib/utils");
39
- function TimePicker({ value, onChange, hourFormat = 24, minuteStep = 1, referenceDate, }) {
40
- var _a;
41
- const base = (_a = value !== null && value !== void 0 ? value : referenceDate) !== null && _a !== void 0 ? _a : new Date();
42
- const currentHour24 = base.getHours();
43
- const currentMinute = base.getMinutes();
44
- const isPM = currentHour24 >= 12;
45
- const hour12 = currentHour24 % 12 === 0 ? 12 : currentHour24 % 12;
46
- const setHour = (nextHour24) => {
47
- const next = new Date(base);
48
- next.setHours(nextHour24, currentMinute, 0, 0);
49
- onChange(next);
50
- };
51
- const setMinute = (m) => {
52
- const next = new Date(base);
53
- next.setMinutes(m, 0, 0);
54
- onChange(next);
55
- };
56
- const togglePeriod = (period) => {
57
- const wantsPM = period === "PM";
58
- if (wantsPM === isPM)
59
- return;
60
- const nextHour = wantsPM ? currentHour24 + 12 : currentHour24 - 12;
61
- setHour(((nextHour % 24) + 24) % 24);
62
- };
63
- const hours = hourFormat === 24
64
- ? Array.from({ length: 24 }, (_, i) => i)
65
- : Array.from({ length: 12 }, (_, i) => i + 1);
66
- const minutes = [];
67
- for (let m = 0; m < 60; m += minuteStep)
68
- minutes.push(m);
69
- return (React.createElement("div", { role: "group", "aria-label": "Time picker", className: "flex items-stretch justify-center gap-1 border-t border-border p-2" },
70
- React.createElement(ScrollColumn, { label: "Hour", items: hours, isSelected: (value) => hourFormat === 24 ? value === currentHour24 : value === hour12, onSelect: (value) => {
71
- if (hourFormat === 24) {
72
- setHour(value);
73
- }
74
- else {
75
- const normalized = value === 12 ? 0 : value;
76
- setHour(isPM ? normalized + 12 : normalized);
77
- }
78
- }, render: (v) => String(v).padStart(2, "0") }),
79
- React.createElement("span", { className: "self-center text-sm text-muted-foreground" }, ":"),
80
- React.createElement(ScrollColumn, { label: "Minute", items: minutes, isSelected: (value) => value === currentMinute, onSelect: setMinute, render: (v) => String(v).padStart(2, "0") }),
81
- hourFormat === 12 && (React.createElement("div", { role: "group", "aria-label": "Period", className: "ml-2 flex flex-col gap-1" },
82
- React.createElement(PeriodButton, { active: !isPM, onClick: () => togglePeriod("AM") }, "AM"),
83
- React.createElement(PeriodButton, { active: isPM, onClick: () => togglePeriod("PM") }, "PM")))));
84
- }
85
- function ScrollColumn({ label, items, isSelected, onSelect, render, }) {
86
- const ref = React.useRef(null);
87
- React.useEffect(() => {
88
- const node = ref.current;
89
- if (!node)
90
- return;
91
- const selected = node.querySelector('[data-selected="true"]');
92
- if (selected) {
93
- node.scrollTop =
94
- selected.offsetTop - node.clientHeight / 2 + selected.clientHeight / 2;
95
- }
96
- }, [items]);
97
- return (React.createElement("div", { ref: ref, role: "listbox", "aria-label": label, className: "flex h-32 w-12 flex-col gap-0.5 overflow-y-auto rounded-md border border-border bg-background p-1" }, items.map((item, index) => {
98
- const selected = isSelected(item);
99
- return (React.createElement("button", { key: index, type: "button", role: "option", "aria-selected": selected, "data-selected": selected, onClick: () => onSelect(item), className: (0, utils_1.cn)("rounded px-2 py-1 text-center text-sm transition-colors", "hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", selected &&
100
- "bg-primary text-primary-foreground hover:bg-primary") }, render(item)));
101
- })));
102
- }
103
- function PeriodButton({ active, onClick, children, }) {
104
- return (React.createElement("button", { type: "button", "aria-pressed": active, onClick: onClick, className: (0, utils_1.cn)("flex-1 rounded-md border border-border px-2 py-1 text-xs font-medium transition-colors", "hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", active && "bg-primary text-primary-foreground border-primary") }, children));
105
- }
@@ -1,31 +0,0 @@
1
- import { addDays, addMonths, addYears, endOfMonth, isAfter, isBefore, isSameDay, isSameMonth, startOfDay, startOfMonth } from "date-fns";
2
- export type DayOfWeek = 0 | 1 | 2 | 3 | 4 | 5 | 6;
3
- export interface DateRange {
4
- start: Date | null;
5
- end: Date | null;
6
- }
7
- export declare const DEFAULT_DATE_FORMAT = "dd/MM/yyyy";
8
- export declare const DEFAULT_DATETIME_FORMAT = "dd/MM/yyyy HH:mm";
9
- export declare const DEFAULT_TIME_FORMAT = "HH:mm";
10
- export declare function formatDate(date: Date | null | undefined, pattern: string): string;
11
- export declare function tryParseDate(text: string, pattern: string, referenceDate?: Date): Date | null;
12
- export interface CalendarCell {
13
- date: Date;
14
- inCurrentMonth: boolean;
15
- isToday: boolean;
16
- }
17
- /**
18
- * Returns the 6×7 grid for a given month, filled with leading/trailing days
19
- * from the adjacent months so the grid is always rectangular.
20
- */
21
- export declare function buildMonthGrid(referenceDate: Date, weekStartsOn: DayOfWeek): CalendarCell[];
22
- export declare function getWeekdayHeaders(weekStartsOn: DayOfWeek, locale?: Intl.LocalesArgument): string[];
23
- export interface DateConstraints {
24
- minDate?: Date;
25
- maxDate?: Date;
26
- disabledDates?: Date[];
27
- disabledDaysOfWeek?: DayOfWeek[];
28
- }
29
- export declare function isDateDisabled(date: Date, constraints: DateConstraints): boolean;
30
- export declare function inferTypeFromFormat(pattern: string): "date" | "time" | "datetime";
31
- export { addDays, addMonths, addYears, isAfter, isBefore, isSameDay, isSameMonth, startOfDay, startOfMonth, endOfMonth, };