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,109 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.endOfMonth = exports.startOfMonth = exports.startOfDay = exports.isSameMonth = exports.isSameDay = exports.isBefore = exports.isAfter = exports.addYears = exports.addMonths = exports.addDays = exports.DEFAULT_TIME_FORMAT = exports.DEFAULT_DATETIME_FORMAT = exports.DEFAULT_DATE_FORMAT = void 0;
4
- exports.formatDate = formatDate;
5
- exports.tryParseDate = tryParseDate;
6
- exports.buildMonthGrid = buildMonthGrid;
7
- exports.getWeekdayHeaders = getWeekdayHeaders;
8
- exports.isDateDisabled = isDateDisabled;
9
- exports.inferTypeFromFormat = inferTypeFromFormat;
10
- const date_fns_1 = require("date-fns");
11
- Object.defineProperty(exports, "addDays", { enumerable: true, get: function () { return date_fns_1.addDays; } });
12
- Object.defineProperty(exports, "addMonths", { enumerable: true, get: function () { return date_fns_1.addMonths; } });
13
- Object.defineProperty(exports, "addYears", { enumerable: true, get: function () { return date_fns_1.addYears; } });
14
- Object.defineProperty(exports, "endOfMonth", { enumerable: true, get: function () { return date_fns_1.endOfMonth; } });
15
- Object.defineProperty(exports, "isAfter", { enumerable: true, get: function () { return date_fns_1.isAfter; } });
16
- Object.defineProperty(exports, "isBefore", { enumerable: true, get: function () { return date_fns_1.isBefore; } });
17
- Object.defineProperty(exports, "isSameDay", { enumerable: true, get: function () { return date_fns_1.isSameDay; } });
18
- Object.defineProperty(exports, "isSameMonth", { enumerable: true, get: function () { return date_fns_1.isSameMonth; } });
19
- Object.defineProperty(exports, "startOfDay", { enumerable: true, get: function () { return date_fns_1.startOfDay; } });
20
- Object.defineProperty(exports, "startOfMonth", { enumerable: true, get: function () { return date_fns_1.startOfMonth; } });
21
- exports.DEFAULT_DATE_FORMAT = "dd/MM/yyyy";
22
- exports.DEFAULT_DATETIME_FORMAT = "dd/MM/yyyy HH:mm";
23
- exports.DEFAULT_TIME_FORMAT = "HH:mm";
24
- function formatDate(date, pattern) {
25
- if (!date)
26
- return "";
27
- try {
28
- return (0, date_fns_1.format)(date, pattern);
29
- }
30
- catch (_a) {
31
- return "";
32
- }
33
- }
34
- function tryParseDate(text, pattern, referenceDate = new Date()) {
35
- if (!text)
36
- return null;
37
- try {
38
- const parsed = (0, date_fns_1.parse)(text, pattern, referenceDate);
39
- if (Number.isNaN(parsed.getTime()))
40
- return null;
41
- return parsed;
42
- }
43
- catch (_a) {
44
- return null;
45
- }
46
- }
47
- /**
48
- * Returns the 6×7 grid for a given month, filled with leading/trailing days
49
- * from the adjacent months so the grid is always rectangular.
50
- */
51
- function buildMonthGrid(referenceDate, weekStartsOn) {
52
- const firstOfMonth = (0, date_fns_1.startOfMonth)(referenceDate);
53
- const lastOfMonth = (0, date_fns_1.endOfMonth)(referenceDate);
54
- const gridStart = (0, date_fns_1.startOfWeek)(firstOfMonth, { weekStartsOn });
55
- const gridEnd = (0, date_fns_1.endOfWeek)(lastOfMonth, { weekStartsOn });
56
- const today = (0, date_fns_1.startOfDay)(new Date());
57
- const cells = [];
58
- let cursor = gridStart;
59
- while (!(0, date_fns_1.isAfter)(cursor, gridEnd)) {
60
- cells.push({
61
- date: cursor,
62
- inCurrentMonth: (0, date_fns_1.isSameMonth)(cursor, referenceDate),
63
- isToday: (0, date_fns_1.isSameDay)(cursor, today),
64
- });
65
- cursor = (0, date_fns_1.addDays)(cursor, 1);
66
- }
67
- while (cells.length < 42) {
68
- cells.push({
69
- date: cursor,
70
- inCurrentMonth: false,
71
- isToday: (0, date_fns_1.isSameDay)(cursor, today),
72
- });
73
- cursor = (0, date_fns_1.addDays)(cursor, 1);
74
- }
75
- return cells;
76
- }
77
- function getWeekdayHeaders(weekStartsOn, locale = undefined) {
78
- const SUNDAY = new Date(Date.UTC(1970, 0, 4));
79
- const labels = [];
80
- for (let i = 0; i < 7; i++) {
81
- const day = (0, date_fns_1.addDays)(SUNDAY, (i + weekStartsOn) % 7);
82
- labels.push(new Intl.DateTimeFormat(locale, { weekday: "short" }).format(day));
83
- }
84
- return labels;
85
- }
86
- function isDateDisabled(date, constraints) {
87
- const { minDate, maxDate, disabledDates, disabledDaysOfWeek } = constraints;
88
- if (minDate && (0, date_fns_1.isBefore)(date, (0, date_fns_1.startOfDay)(minDate)))
89
- return true;
90
- if (maxDate && (0, date_fns_1.isAfter)(date, (0, date_fns_1.startOfDay)(maxDate)))
91
- return true;
92
- if (disabledDaysOfWeek &&
93
- disabledDaysOfWeek.includes(date.getDay())) {
94
- return true;
95
- }
96
- if (disabledDates && disabledDates.some((d) => (0, date_fns_1.isSameDay)(d, date))) {
97
- return true;
98
- }
99
- return false;
100
- }
101
- function inferTypeFromFormat(pattern) {
102
- const hasTime = /[hHm]/.test(pattern);
103
- const hasDate = /[yMdD]/.test(pattern);
104
- if (hasTime && hasDate)
105
- return "datetime";
106
- if (hasTime)
107
- return "time";
108
- return "date";
109
- }
@@ -1,27 +0,0 @@
1
- import * as React from "react";
2
- import * as DialogPrimitive from "@radix-ui/react-dialog";
3
- import { type VariantProps } from "class-variance-authority";
4
- export declare const Drawer: React.FC<DialogPrimitive.DialogProps>;
5
- export declare const DrawerTrigger: React.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
6
- export declare const DrawerPortal: React.FC<DialogPrimitive.DialogPortalProps>;
7
- export declare const DrawerClose: React.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;
8
- export declare const DrawerOverlay: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
- declare const contentVariants: (props?: ({
10
- side?: "top" | "right" | "bottom" | "left" | null | undefined;
11
- size?: "sm" | "md" | "lg" | "full" | null | undefined;
12
- } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
13
- export interface DrawerContentProps extends React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>, VariantProps<typeof contentVariants> {
14
- hideCloseButton?: boolean;
15
- }
16
- export declare const DrawerContent: React.ForwardRefExoticComponent<DrawerContentProps & React.RefAttributes<HTMLDivElement>>;
17
- export declare function DrawerHeader({ className, ...rest }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
18
- export declare namespace DrawerHeader {
19
- var displayName: string;
20
- }
21
- export declare function DrawerFooter({ className, ...rest }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
22
- export declare namespace DrawerFooter {
23
- var displayName: string;
24
- }
25
- export declare const DrawerTitle: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
26
- export declare const DrawerDescription: React.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
27
- export {};
@@ -1,132 +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.DrawerDescription = exports.DrawerTitle = exports.DrawerContent = exports.DrawerOverlay = exports.DrawerClose = exports.DrawerPortal = exports.DrawerTrigger = exports.Drawer = void 0;
48
- exports.DrawerHeader = DrawerHeader;
49
- exports.DrawerFooter = DrawerFooter;
50
- const React = __importStar(require("react"));
51
- const DialogPrimitive = __importStar(require("@radix-ui/react-dialog"));
52
- const lucide_react_1 = require("lucide-react");
53
- const class_variance_authority_1 = require("class-variance-authority");
54
- const utils_1 = require("../../lib/utils");
55
- exports.Drawer = DialogPrimitive.Root;
56
- exports.DrawerTrigger = DialogPrimitive.Trigger;
57
- exports.DrawerPortal = DialogPrimitive.Portal;
58
- exports.DrawerClose = DialogPrimitive.Close;
59
- exports.DrawerOverlay = React.forwardRef((_a, ref) => {
60
- var { className } = _a, rest = __rest(_a, ["className"]);
61
- return (React.createElement(DialogPrimitive.Overlay, Object.assign({ ref: ref, className: (0, utils_1.cn)("fixed inset-0 z-50 bg-foreground/40 backdrop-blur-sm", "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", className) }, rest)));
62
- });
63
- exports.DrawerOverlay.displayName = "DrawerOverlay";
64
- const contentVariants = (0, class_variance_authority_1.cva)((0, utils_1.cn)("fixed z-50 flex flex-col gap-4 border border-border bg-card text-card-foreground p-6 shadow-lg", "data-[state=open]:animate-in data-[state=closed]:animate-out"), {
65
- variants: {
66
- side: {
67
- left: (0, utils_1.cn)("inset-y-0 left-0 h-full border-l-0 border-y-0", "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left"),
68
- right: (0, utils_1.cn)("inset-y-0 right-0 h-full border-r-0 border-y-0", "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right"),
69
- top: (0, utils_1.cn)("inset-x-0 top-0 w-full border-t-0 border-x-0", "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top"),
70
- bottom: (0, utils_1.cn)("inset-x-0 bottom-0 w-full border-b-0 border-x-0", "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom"),
71
- },
72
- size: {
73
- sm: "",
74
- md: "",
75
- lg: "",
76
- full: "",
77
- },
78
- },
79
- compoundVariants: [
80
- { side: "left", size: "sm", className: "w-[20rem] max-w-[90vw]" },
81
- { side: "left", size: "md", className: "w-[30rem] max-w-[90vw]" },
82
- { side: "left", size: "lg", className: "w-[40rem] max-w-[90vw]" },
83
- { side: "left", size: "full", className: "w-screen" },
84
- { side: "right", size: "sm", className: "w-[20rem] max-w-[90vw]" },
85
- { side: "right", size: "md", className: "w-[30rem] max-w-[90vw]" },
86
- { side: "right", size: "lg", className: "w-[40rem] max-w-[90vw]" },
87
- { side: "right", size: "full", className: "w-screen" },
88
- { side: "top", size: "sm", className: "h-[20vh]" },
89
- { side: "top", size: "md", className: "h-[40vh]" },
90
- { side: "top", size: "lg", className: "h-[60vh]" },
91
- { side: "top", size: "full", className: "h-screen" },
92
- { side: "bottom", size: "sm", className: "h-[20vh]" },
93
- { side: "bottom", size: "md", className: "h-[40vh]" },
94
- { side: "bottom", size: "lg", className: "h-[60vh]" },
95
- { side: "bottom", size: "full", className: "h-screen" },
96
- ],
97
- defaultVariants: {
98
- side: "right",
99
- size: "md",
100
- },
101
- });
102
- exports.DrawerContent = React.forwardRef((_a, ref) => {
103
- var { className, side, size, hideCloseButton, children } = _a, rest = __rest(_a, ["className", "side", "size", "hideCloseButton", "children"]);
104
- return (React.createElement(exports.DrawerPortal, null,
105
- React.createElement(exports.DrawerOverlay, null),
106
- React.createElement(DialogPrimitive.Content, Object.assign({ ref: ref, className: (0, utils_1.cn)(contentVariants({ side, size }), className) }, rest),
107
- children,
108
- !hideCloseButton && (React.createElement(DialogPrimitive.Close, { className: (0, utils_1.cn)("absolute right-4 top-4 rounded-sm text-muted-foreground opacity-70 transition-opacity hover:opacity-100", "focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1") },
109
- React.createElement(lucide_react_1.X, { "aria-hidden": "true", className: "h-4 w-4" }),
110
- React.createElement("span", { className: "sr-only" }, "Close"))))));
111
- });
112
- exports.DrawerContent.displayName = "DrawerContent";
113
- function DrawerHeader(_a) {
114
- var { className } = _a, rest = __rest(_a, ["className"]);
115
- return (React.createElement("div", Object.assign({ className: (0, utils_1.cn)("flex flex-col gap-1.5 text-left", className) }, rest)));
116
- }
117
- DrawerHeader.displayName = "DrawerHeader";
118
- function DrawerFooter(_a) {
119
- var { className } = _a, rest = __rest(_a, ["className"]);
120
- return (React.createElement("div", Object.assign({ className: (0, utils_1.cn)("mt-auto flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className) }, rest)));
121
- }
122
- DrawerFooter.displayName = "DrawerFooter";
123
- exports.DrawerTitle = React.forwardRef((_a, ref) => {
124
- var { className } = _a, rest = __rest(_a, ["className"]);
125
- return (React.createElement(DialogPrimitive.Title, Object.assign({ ref: ref, className: (0, utils_1.cn)("text-lg font-semibold leading-none tracking-tight text-foreground", className) }, rest)));
126
- });
127
- exports.DrawerTitle.displayName = "DrawerTitle";
128
- exports.DrawerDescription = React.forwardRef((_a, ref) => {
129
- var { className } = _a, rest = __rest(_a, ["className"]);
130
- return (React.createElement(DialogPrimitive.Description, Object.assign({ ref: ref, className: (0, utils_1.cn)("text-sm text-muted-foreground", className) }, rest)));
131
- });
132
- exports.DrawerDescription.displayName = "DrawerDescription";
@@ -1,26 +0,0 @@
1
- import * as React from "react";
2
- export interface FeedbackFormValues {
3
- rating: number;
4
- comment: string;
5
- }
6
- export interface FeedbackFormLabels {
7
- title?: React.ReactNode;
8
- ratingLabel?: React.ReactNode;
9
- commentLabel?: React.ReactNode;
10
- commentPlaceholder?: string;
11
- submitLabel?: string;
12
- /** Per-star descriptive labels (length 5). */
13
- ratingDescriptors?: [string, string, string, string, string];
14
- }
15
- export interface FeedbackFormProps {
16
- onSubmit: (values: FeedbackFormValues) => void | Promise<void>;
17
- isLoading?: boolean;
18
- isCommentRequired?: boolean;
19
- minRating?: number;
20
- labels?: FeedbackFormLabels;
21
- className?: string;
22
- }
23
- export declare function FeedbackForm({ onSubmit, isLoading, isCommentRequired, minRating, labels, className, }: FeedbackFormProps): React.ReactElement;
24
- export declare namespace FeedbackForm {
25
- var displayName: string;
26
- }
@@ -1,112 +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.FeedbackForm = FeedbackForm;
37
- const React = __importStar(require("react"));
38
- const lucide_react_1 = require("lucide-react");
39
- const utils_1 = require("../../lib/utils");
40
- const button_1 = require("../ui/button");
41
- const field_1 = require("../ui/field");
42
- const textarea_1 = require("../ui/textarea");
43
- const DEFAULT_DESCRIPTORS = [
44
- "Terrible",
45
- "Poor",
46
- "Okay",
47
- "Good",
48
- "Great",
49
- ];
50
- function FeedbackForm({ onSubmit, isLoading = false, isCommentRequired = false, minRating = 1, labels, className, }) {
51
- var _a, _b, _c, _d, _e;
52
- const ratingLabel = (_a = labels === null || labels === void 0 ? void 0 : labels.ratingLabel) !== null && _a !== void 0 ? _a : "Your rating";
53
- const commentLabel = (_b = labels === null || labels === void 0 ? void 0 : labels.commentLabel) !== null && _b !== void 0 ? _b : "Comments";
54
- const commentPlaceholder = (_c = labels === null || labels === void 0 ? void 0 : labels.commentPlaceholder) !== null && _c !== void 0 ? _c : "Tell us more (optional)";
55
- const submitLabel = (_d = labels === null || labels === void 0 ? void 0 : labels.submitLabel) !== null && _d !== void 0 ? _d : "Submit feedback";
56
- const descriptors = (_e = labels === null || labels === void 0 ? void 0 : labels.ratingDescriptors) !== null && _e !== void 0 ? _e : DEFAULT_DESCRIPTORS;
57
- const [rating, setRating] = React.useState(0);
58
- const [hover, setHover] = React.useState(null);
59
- const [comment, setComment] = React.useState("");
60
- const [ratingError, setRatingError] = React.useState(null);
61
- const [commentError, setCommentError] = React.useState(null);
62
- const handleSubmit = async (event) => {
63
- event.preventDefault();
64
- let hasError = false;
65
- if (rating < minRating) {
66
- setRatingError(minRating === 1
67
- ? "Please pick a rating."
68
- : `Please give at least ${minRating} stars.`);
69
- hasError = true;
70
- }
71
- else {
72
- setRatingError(null);
73
- }
74
- if (isCommentRequired && !comment.trim()) {
75
- setCommentError("Please leave a comment.");
76
- hasError = true;
77
- }
78
- else {
79
- setCommentError(null);
80
- }
81
- if (hasError)
82
- return;
83
- await onSubmit({ rating, comment });
84
- };
85
- const displayRating = hover !== null && hover !== void 0 ? hover : rating;
86
- const descriptor = displayRating > 0 ? descriptors[displayRating - 1] : null;
87
- return (React.createElement("form", { onSubmit: handleSubmit, noValidate: true, className: (0, utils_1.cn)("space-y-4", className) },
88
- (labels === null || labels === void 0 ? void 0 : labels.title) && (React.createElement("h2", { className: "text-base font-semibold text-foreground" }, labels.title)),
89
- React.createElement(field_1.Field, { label: ratingLabel, isRequired: true, error: !!ratingError, errorMessage: ratingError !== null && ratingError !== void 0 ? ratingError : undefined },
90
- React.createElement("div", { role: "radiogroup", "aria-label": typeof ratingLabel === "string" ? ratingLabel : "Rating", className: "flex items-center gap-1", onMouseLeave: () => setHover(null) },
91
- Array.from({ length: 5 }).map((_, index) => {
92
- const value = index + 1;
93
- const active = displayRating >= value;
94
- return (React.createElement("button", { key: value, type: "button", role: "radio", "aria-checked": rating === value, "aria-label": `${value} star${value === 1 ? "" : "s"} (${descriptors[index]})`, onMouseEnter: () => setHover(value), onFocus: () => setHover(value), onBlur: () => setHover(null), onClick: () => {
95
- setRating(value);
96
- setRatingError(null);
97
- }, className: "rounded-md p-1 transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" },
98
- React.createElement(lucide_react_1.Star, { "aria-hidden": "true", className: (0, utils_1.cn)("h-6 w-6 transition-colors", active
99
- ? "fill-warning text-warning"
100
- : "text-muted-foreground") })));
101
- }),
102
- descriptor && (React.createElement("span", { className: "ml-2 text-sm text-muted-foreground" }, descriptor)))),
103
- React.createElement(field_1.Field, { label: commentLabel, isRequired: isCommentRequired, error: !!commentError, errorMessage: commentError !== null && commentError !== void 0 ? commentError : undefined },
104
- React.createElement(textarea_1.Textarea, { value: comment, onChange: (event) => {
105
- setComment(event.target.value);
106
- if (commentError)
107
- setCommentError(null);
108
- }, placeholder: commentPlaceholder, autoResize: true, minRows: 3, maxRows: 8 })),
109
- React.createElement("div", { className: "flex justify-end" },
110
- React.createElement(button_1.Button, { type: "submit", isLoading: isLoading, loadingText: "Sending\u2026" }, submitLabel))));
111
- }
112
- FeedbackForm.displayName = "FeedbackForm";
@@ -1,28 +0,0 @@
1
- import * as React from "react";
2
- import { type Accept } from "react-dropzone";
3
- export interface FileUploaderFile {
4
- file: File;
5
- id: string;
6
- /** Percent (0–100). When undefined the per-file bar is hidden. */
7
- progress?: number;
8
- error?: string;
9
- }
10
- export interface FileUploaderProps {
11
- accept?: Accept;
12
- multiple?: boolean;
13
- maxFiles?: number;
14
- /** Bytes. */
15
- maxSize?: number;
16
- isDisabled?: boolean;
17
- /** Controlled file list (mirrors what `useFileUploader` returns). */
18
- files?: FileUploaderFile[];
19
- onFilesChange?: (files: FileUploaderFile[]) => void;
20
- /** Pre-filled label shown above the dropzone. */
21
- label?: React.ReactNode;
22
- /** Pre-filled hint shown below the icon. */
23
- hint?: React.ReactNode;
24
- /** Forces error styling and shows this message under the zone. */
25
- errorMessage?: string;
26
- className?: string;
27
- }
28
- export declare const FileUploader: React.ForwardRefExoticComponent<FileUploaderProps & React.RefAttributes<HTMLDivElement>>;
@@ -1,127 +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.FileUploader = void 0;
37
- const React = __importStar(require("react"));
38
- const react_dropzone_1 = require("react-dropzone");
39
- const lucide_react_1 = require("lucide-react");
40
- const utils_1 = require("../../lib/utils");
41
- const button_1 = require("../ui/button");
42
- const progress_1 = require("../ui/progress");
43
- function formatBytes(bytes) {
44
- if (bytes < 1024)
45
- return `${bytes} B`;
46
- if (bytes < 1024 * 1024)
47
- return `${(bytes / 1024).toFixed(1)} KB`;
48
- return `${(bytes / 1024 / 1024).toFixed(1)} MB`;
49
- }
50
- function makeId(file) {
51
- return `${file.name}-${file.size}-${file.lastModified}`;
52
- }
53
- exports.FileUploader = React.forwardRef((props, ref) => {
54
- const { accept, multiple = true, maxFiles, maxSize, isDisabled = false, files: controlledFiles, onFilesChange, label, hint, errorMessage, className, } = props;
55
- const isControlled = controlledFiles !== undefined;
56
- const [internalFiles, setInternalFiles] = React.useState([]);
57
- const files = isControlled ? controlledFiles : internalFiles;
58
- const setFiles = (next) => {
59
- if (!isControlled)
60
- setInternalFiles(next);
61
- onFilesChange === null || onFilesChange === void 0 ? void 0 : onFilesChange(next);
62
- };
63
- const removeFile = (id) => {
64
- setFiles(files.filter((entry) => entry.id !== id));
65
- };
66
- const { getRootProps, getInputProps, isDragActive, isDragReject, fileRejections, } = (0, react_dropzone_1.useDropzone)({
67
- accept,
68
- multiple,
69
- maxFiles,
70
- maxSize,
71
- disabled: isDisabled,
72
- onDrop: (accepted) => {
73
- const additions = accepted.map((file) => ({
74
- id: makeId(file),
75
- file,
76
- }));
77
- const merged = multiple
78
- ? [
79
- ...files,
80
- ...additions.filter((entry) => !files.some((existing) => existing.id === entry.id)),
81
- ]
82
- : additions.slice(0, 1);
83
- if (maxFiles) {
84
- setFiles(merged.slice(0, maxFiles));
85
- }
86
- else {
87
- setFiles(merged);
88
- }
89
- },
90
- });
91
- const hasRejections = fileRejections.length > 0;
92
- const showError = !!errorMessage || hasRejections;
93
- return (React.createElement("div", { ref: ref, className: (0, utils_1.cn)("space-y-3", className) },
94
- label && (React.createElement("div", { className: "text-sm font-medium text-foreground" }, label)),
95
- React.createElement("div", Object.assign({}, getRootProps({
96
- className: (0, utils_1.cn)("flex cursor-pointer flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed border-border bg-muted/30 px-4 py-8 text-center transition-colors", "hover:border-primary/60 hover:bg-accent/40", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background", isDragActive && "border-primary bg-primary/10", (isDragReject || showError) &&
97
- "border-destructive bg-destructive/5", isDisabled && "cursor-not-allowed opacity-50"),
98
- }), { role: "button", tabIndex: isDisabled ? -1 : 0, "aria-label": "Drop files or click to browse", "aria-disabled": isDisabled || undefined }),
99
- React.createElement("input", Object.assign({}, getInputProps())),
100
- React.createElement(lucide_react_1.UploadCloud, { "aria-hidden": "true", className: (0, utils_1.cn)("h-8 w-8 text-muted-foreground", isDragActive && "text-primary") }),
101
- React.createElement("div", { className: "text-sm text-foreground" },
102
- React.createElement("span", { className: "font-medium text-primary" }, "Click to upload"),
103
- " ",
104
- "or drag and drop"),
105
- React.createElement("p", { className: "text-xs text-muted-foreground" }, hint !== null && hint !== void 0 ? hint : (maxSize
106
- ? `Up to ${formatBytes(maxSize)}${maxFiles ? `, max ${maxFiles} files` : ""}`
107
- : "Any file type"))),
108
- showError && (React.createElement("div", { className: "flex items-start gap-1.5 text-xs text-destructive" },
109
- React.createElement(lucide_react_1.AlertCircle, { "aria-hidden": "true", className: "mt-0.5 h-3.5 w-3.5 shrink-0" }),
110
- React.createElement("div", null,
111
- errorMessage,
112
- fileRejections.map(({ file, errors }) => (React.createElement("div", { key: file.name },
113
- file.name,
114
- ": ",
115
- errors.map((e) => e.message).join(", "))))))),
116
- files.length > 0 && (React.createElement("ul", { role: "list", className: "space-y-2" }, files.map((entry) => (React.createElement("li", { key: entry.id, className: "flex items-center gap-3 rounded-md border border-border bg-card px-3 py-2 text-sm" },
117
- React.createElement(lucide_react_1.File, { "aria-hidden": "true", className: "h-4 w-4 shrink-0 text-muted-foreground" }),
118
- React.createElement("div", { className: "min-w-0 flex-1" },
119
- React.createElement("p", { className: "truncate font-medium text-foreground" }, entry.file.name),
120
- React.createElement("p", { className: "text-xs text-muted-foreground" },
121
- formatBytes(entry.file.size),
122
- entry.error && (React.createElement("span", { className: "ml-2 text-destructive" }, entry.error))),
123
- typeof entry.progress === "number" && (React.createElement(progress_1.Progress, { size: "sm", value: entry.progress, className: "mt-1" }))),
124
- React.createElement(button_1.Button, { variant: "ghost", size: "sm", "aria-label": `Remove ${entry.file.name}`, onClick: () => removeFile(entry.id), className: "h-7 w-7 p-0" },
125
- React.createElement(lucide_react_1.X, { "aria-hidden": "true" })))))))));
126
- });
127
- exports.FileUploader.displayName = "FileUploader";
@@ -1,41 +0,0 @@
1
- import * as React from "react";
2
- import { type InputProps } from "../ui/input";
3
- export type TextInputType = "text" | "email" | "password" | "number" | "tel" | "url" | "search";
4
- export type TextInputSize = "sm" | "md" | "lg";
5
- export type TextInputVariant = "default" | "floating";
6
- export interface TextInputProps {
7
- id?: string;
8
- name?: string;
9
- label?: React.ReactNode;
10
- placeholder?: string;
11
- value?: string;
12
- defaultValue?: string;
13
- onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
14
- onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
15
- onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
16
- type?: TextInputType;
17
- isDisabled?: boolean;
18
- isReadOnly?: boolean;
19
- isRequired?: boolean;
20
- error?: boolean;
21
- errorMessage?: React.ReactNode;
22
- helperText?: React.ReactNode;
23
- leftIcon?: React.ReactNode;
24
- rightIcon?: React.ReactNode;
25
- onLeftIconClick?: () => void;
26
- onRightIconClick?: () => void;
27
- isInformation?: boolean;
28
- informationMessage?: React.ReactNode;
29
- size?: TextInputSize;
30
- width?: string;
31
- maxLength?: number;
32
- showCount?: boolean;
33
- variant?: TextInputVariant;
34
- autoComplete?: string;
35
- autoFocus?: boolean;
36
- className?: string;
37
- /** Hide the visual label but keep it for screen readers. */
38
- hideLabel?: boolean;
39
- }
40
- export declare const TextInput: React.ForwardRefExoticComponent<TextInputProps & React.RefAttributes<HTMLInputElement>>;
41
- export type { InputProps };