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

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 (303) hide show
  1. package/package.json +1 -1
  2. package/dist/App.d.ts +0 -4
  3. package/dist/App.js +0 -131
  4. package/dist/Components/Table/CompactSelect.d.ts +0 -15
  5. package/dist/Components/Table/CompactSelect.js +0 -69
  6. package/dist/Components/Table/Components/ActiveFilters.d.ts +0 -9
  7. package/dist/Components/Table/Components/ActiveFilters.js +0 -132
  8. package/dist/Components/Table/Components/TableFilters.d.ts +0 -7
  9. package/dist/Components/Table/Components/TableFilters.js +0 -89
  10. package/dist/Components/Table/Components/useDebounce.d.ts +0 -2
  11. package/dist/Components/Table/Components/useDebounce.js +0 -28
  12. package/dist/Components/Table/Components/useTable.d.ts +0 -47
  13. package/dist/Components/Table/Components/useTable.js +0 -219
  14. package/dist/Components/Table/LeftFilterPane.d.ts +0 -36
  15. package/dist/Components/Table/LeftFilterPane.js +0 -273
  16. package/dist/Components/Table/SelectOperationControls.d.ts +0 -8
  17. package/dist/Components/Table/SelectOperationControls.js +0 -15
  18. package/dist/Components/Table/TableSettings/ManageColumns.d.ts +0 -12
  19. package/dist/Components/Table/TableSettings/ManageColumns.js +0 -166
  20. package/dist/Components/Table/TableSettings/ManageColumns.test.d.ts +0 -1
  21. package/dist/Components/Table/TableSettings/ManageColumns.test.js +0 -146
  22. package/dist/Components/Table/TableSettings/TableFilters.d.ts +0 -10
  23. package/dist/Components/Table/TableSettings/TableFilters.js +0 -69
  24. package/dist/Components/Table/TableSettings/TableFilters.test.d.ts +0 -1
  25. package/dist/Components/Table/TableSettings/TableFilters.test.js +0 -109
  26. package/dist/Components/Table/TableSettings/TableSettings.d.ts +0 -8
  27. package/dist/Components/Table/TableSettings/TableSettings.js +0 -141
  28. package/dist/Components/Table/TableToDo.d.ts +0 -2
  29. package/dist/Components/Table/TableToDo.js +0 -291
  30. package/dist/Components/Table/TextOperationControls.d.ts +0 -12
  31. package/dist/Components/Table/TextOperationControls.js +0 -29
  32. package/dist/Layout.d.ts +0 -3
  33. package/dist/Layout.js +0 -292
  34. package/dist/Pages/TInput.d.ts +0 -3
  35. package/dist/Pages/TInput.js +0 -56
  36. package/dist/Pages/accordion.d.ts +0 -3
  37. package/dist/Pages/accordion.js +0 -42
  38. package/dist/Pages/alertdialog.d.ts +0 -3
  39. package/dist/Pages/alertdialog.js +0 -54
  40. package/dist/Pages/button.d.ts +0 -3
  41. package/dist/Pages/button.js +0 -46
  42. package/dist/Pages/card.d.ts +0 -3
  43. package/dist/Pages/card.js +0 -117
  44. package/dist/Pages/chart.d.ts +0 -4
  45. package/dist/Pages/chart.js +0 -40
  46. package/dist/Pages/checkbox.d.ts +0 -3
  47. package/dist/Pages/checkbox.js +0 -12
  48. package/dist/Pages/contactForm.d.ts +0 -3
  49. package/dist/Pages/contactForm.js +0 -16
  50. package/dist/Pages/datePick.d.ts +0 -3
  51. package/dist/Pages/datePick.js +0 -88
  52. package/dist/Pages/drawer.d.ts +0 -3
  53. package/dist/Pages/drawer.js +0 -58
  54. package/dist/Pages/dropdown.d.ts +0 -3
  55. package/dist/Pages/dropdown.js +0 -24
  56. package/dist/Pages/editor.d.ts +0 -3
  57. package/dist/Pages/editor.js +0 -14
  58. package/dist/Pages/feedback.d.ts +0 -2
  59. package/dist/Pages/feedback.js +0 -15
  60. package/dist/Pages/fileUpload.d.ts +0 -2
  61. package/dist/Pages/fileUpload.js +0 -82
  62. package/dist/Pages/input.d.ts +0 -3
  63. package/dist/Pages/input.js +0 -92
  64. package/dist/Pages/kanbanboard.d.ts +0 -3
  65. package/dist/Pages/kanbanboard.js +0 -224
  66. package/dist/Pages/modal.d.ts +0 -3
  67. package/dist/Pages/modal.js +0 -65
  68. package/dist/Pages/multiSelect.d.ts +0 -3
  69. package/dist/Pages/multiSelect.js +0 -55
  70. package/dist/Pages/noteArea.d.ts +0 -3
  71. package/dist/Pages/noteArea.js +0 -59
  72. package/dist/Pages/notification.d.ts +0 -3
  73. package/dist/Pages/notification.js +0 -25
  74. package/dist/Pages/numberInput.d.ts +0 -3
  75. package/dist/Pages/numberInput.js +0 -49
  76. package/dist/Pages/photoViewer.d.ts +0 -3
  77. package/dist/Pages/photoViewer.js +0 -12
  78. package/dist/Pages/pinInputs.d.ts +0 -3
  79. package/dist/Pages/pinInputs.js +0 -12
  80. package/dist/Pages/productCaard.d.ts +0 -3
  81. package/dist/Pages/productCaard.js +0 -311
  82. package/dist/Pages/productDetailCard.d.ts +0 -3
  83. package/dist/Pages/productDetailCard.js +0 -78
  84. package/dist/Pages/productFilter.d.ts +0 -3
  85. package/dist/Pages/productFilter.js +0 -202
  86. package/dist/Pages/progressbar.d.ts +0 -3
  87. package/dist/Pages/progressbar.js +0 -12
  88. package/dist/Pages/radioButton.d.ts +0 -3
  89. package/dist/Pages/radioButton.js +0 -54
  90. package/dist/Pages/search.d.ts +0 -3
  91. package/dist/Pages/search.js +0 -54
  92. package/dist/Pages/searchSelect.d.ts +0 -3
  93. package/dist/Pages/searchSelect.js +0 -133
  94. package/dist/Pages/select.d.ts +0 -3
  95. package/dist/Pages/select.js +0 -53
  96. package/dist/Pages/selectSearch.d.ts +0 -3
  97. package/dist/Pages/selectSearch.js +0 -103
  98. package/dist/Pages/skeleton.d.ts +0 -3
  99. package/dist/Pages/skeleton.js +0 -22
  100. package/dist/Pages/switch.d.ts +0 -3
  101. package/dist/Pages/switch.js +0 -50
  102. package/dist/Pages/table.d.ts +0 -3
  103. package/dist/Pages/table.js +0 -174
  104. package/dist/Pages/textArea.d.ts +0 -3
  105. package/dist/Pages/textArea.js +0 -15
  106. package/dist/Pages/timeline.d.ts +0 -3
  107. package/dist/Pages/timeline.js +0 -74
  108. package/dist/Pages/tooltip.d.ts +0 -3
  109. package/dist/Pages/tooltip.js +0 -12
  110. package/dist/Pages/toster.d.ts +0 -3
  111. package/dist/Pages/toster.js +0 -68
  112. package/dist/Pages/verifyEmail.d.ts +0 -3
  113. package/dist/Pages/verifyEmail.js +0 -18
  114. package/dist/Theme/Dark/palette.d.ts +0 -370
  115. package/dist/Theme/Dark/palette.js +0 -372
  116. package/dist/bootstrap.d.ts +0 -1
  117. package/dist/bootstrap.js +0 -14
  118. package/dist/components-v2/AlertDialog/AlertDialog.d.ts +0 -23
  119. package/dist/components-v2/AlertDialog/AlertDialog.js +0 -98
  120. package/dist/components-v2/Breadcrumbs/Breadcrumbs.d.ts +0 -14
  121. package/dist/components-v2/Breadcrumbs/Breadcrumbs.js +0 -66
  122. package/dist/components-v2/Charts/AreaChart.d.ts +0 -23
  123. package/dist/components-v2/Charts/AreaChart.js +0 -63
  124. package/dist/components-v2/Charts/BarChart.d.ts +0 -25
  125. package/dist/components-v2/Charts/BarChart.js +0 -57
  126. package/dist/components-v2/Charts/LineChart.d.ts +0 -23
  127. package/dist/components-v2/Charts/LineChart.js +0 -55
  128. package/dist/components-v2/Charts/PieChart.d.ts +0 -15
  129. package/dist/components-v2/Charts/PieChart.js +0 -54
  130. package/dist/components-v2/Charts/PolarChart.d.ts +0 -14
  131. package/dist/components-v2/Charts/PolarChart.js +0 -54
  132. package/dist/components-v2/Charts/chartOptions.d.ts +0 -7
  133. package/dist/components-v2/Charts/chartOptions.js +0 -41
  134. package/dist/components-v2/Charts/useChartTheme.d.ts +0 -22
  135. package/dist/components-v2/Charts/useChartTheme.js +0 -106
  136. package/dist/components-v2/ContactForm/ContactForm.d.ts +0 -25
  137. package/dist/components-v2/ContactForm/ContactForm.js +0 -116
  138. package/dist/components-v2/DatePicker/Calendar.d.ts +0 -19
  139. package/dist/components-v2/DatePicker/Calendar.js +0 -212
  140. package/dist/components-v2/DatePicker/DatePicker.d.ts +0 -46
  141. package/dist/components-v2/DatePicker/DatePicker.js +0 -189
  142. package/dist/components-v2/DatePicker/TimePicker.d.ts +0 -12
  143. package/dist/components-v2/DatePicker/TimePicker.js +0 -105
  144. package/dist/components-v2/DatePicker/utils.d.ts +0 -31
  145. package/dist/components-v2/DatePicker/utils.js +0 -109
  146. package/dist/components-v2/Drawer/Drawer.d.ts +0 -27
  147. package/dist/components-v2/Drawer/Drawer.js +0 -132
  148. package/dist/components-v2/FeedbackForm/FeedbackForm.d.ts +0 -26
  149. package/dist/components-v2/FeedbackForm/FeedbackForm.js +0 -112
  150. package/dist/components-v2/FileUploader/FileUploader.d.ts +0 -28
  151. package/dist/components-v2/FileUploader/FileUploader.js +0 -127
  152. package/dist/components-v2/Input/TextInput.d.ts +0 -41
  153. package/dist/components-v2/Input/TextInput.js +0 -169
  154. package/dist/components-v2/KanbanBoard/KanbanBoard.d.ts +0 -39
  155. package/dist/components-v2/KanbanBoard/KanbanBoard.js +0 -101
  156. package/dist/components-v2/Layout/AppLayout.d.ts +0 -22
  157. package/dist/components-v2/Layout/AppLayout.js +0 -53
  158. package/dist/components-v2/Loading/Loading.d.ts +0 -19
  159. package/dist/components-v2/Loading/Loading.js +0 -55
  160. package/dist/components-v2/Modal/Modal.d.ts +0 -30
  161. package/dist/components-v2/Modal/Modal.js +0 -82
  162. package/dist/components-v2/NavigationBar/NavigationBar.d.ts +0 -47
  163. package/dist/components-v2/NavigationBar/NavigationBar.js +0 -148
  164. package/dist/components-v2/Notification/Notification.d.ts +0 -22
  165. package/dist/components-v2/Notification/Notification.js +0 -113
  166. package/dist/components-v2/NumberInput/NumberInput.d.ts +0 -37
  167. package/dist/components-v2/NumberInput/NumberInput.js +0 -210
  168. package/dist/components-v2/PinInput/PinInput.d.ts +0 -26
  169. package/dist/components-v2/PinInput/PinInput.js +0 -138
  170. package/dist/components-v2/ProfilePhotoViewer/ProfilePhotoViewer.d.ts +0 -18
  171. package/dist/components-v2/ProfilePhotoViewer/ProfilePhotoViewer.js +0 -91
  172. package/dist/components-v2/Select/Select.d.ts +0 -41
  173. package/dist/components-v2/Select/Select.js +0 -284
  174. package/dist/components-v2/Sidebar/Sidebar.d.ts +0 -41
  175. package/dist/components-v2/Sidebar/Sidebar.js +0 -182
  176. package/dist/components-v2/Slider/Slider.d.ts +0 -18
  177. package/dist/components-v2/Slider/Slider.js +0 -101
  178. package/dist/components-v2/Table/Table.d.ts +0 -7
  179. package/dist/components-v2/Table/Table.js +0 -172
  180. package/dist/components-v2/Table/TableProps.d.ts +0 -139
  181. package/dist/components-v2/Table/TableProps.js +0 -9
  182. package/dist/components-v2/Table/components/ActiveFilters.d.ts +0 -10
  183. package/dist/components-v2/Table/components/ActiveFilters.js +0 -70
  184. package/dist/components-v2/Table/components/BulkActionBar.d.ts +0 -11
  185. package/dist/components-v2/Table/components/BulkActionBar.js +0 -92
  186. package/dist/components-v2/Table/components/ColumnResizeHandle.d.ts +0 -7
  187. package/dist/components-v2/Table/components/ColumnResizeHandle.js +0 -41
  188. package/dist/components-v2/Table/components/Pagination.d.ts +0 -11
  189. package/dist/components-v2/Table/components/Pagination.js +0 -92
  190. package/dist/components-v2/Table/components/TableBody.d.ts +0 -23
  191. package/dist/components-v2/Table/components/TableBody.js +0 -69
  192. package/dist/components-v2/Table/components/TableCell.d.ts +0 -14
  193. package/dist/components-v2/Table/components/TableCell.js +0 -63
  194. package/dist/components-v2/Table/components/TableEmptyState.d.ts +0 -12
  195. package/dist/components-v2/Table/components/TableEmptyState.js +0 -55
  196. package/dist/components-v2/Table/components/TableErrorState.d.ts +0 -6
  197. package/dist/components-v2/Table/components/TableErrorState.js +0 -52
  198. package/dist/components-v2/Table/components/TableHeader.d.ts +0 -21
  199. package/dist/components-v2/Table/components/TableHeader.js +0 -94
  200. package/dist/components-v2/Table/components/TableRow.d.ts +0 -20
  201. package/dist/components-v2/Table/components/TableRow.js +0 -64
  202. package/dist/components-v2/Table/components/TableSearch.d.ts +0 -8
  203. package/dist/components-v2/Table/components/TableSearch.js +0 -47
  204. package/dist/components-v2/Table/filters/FilterChips.d.ts +0 -6
  205. package/dist/components-v2/Table/filters/FilterChips.js +0 -9
  206. package/dist/components-v2/Table/filters/LeftFilterPane.d.ts +0 -17
  207. package/dist/components-v2/Table/filters/LeftFilterPane.js +0 -105
  208. package/dist/components-v2/Table/filters/TableFilters.d.ts +0 -12
  209. package/dist/components-v2/Table/filters/TableFilters.js +0 -127
  210. package/dist/components-v2/Table/hooks/useColumnResize.d.ts +0 -15
  211. package/dist/components-v2/Table/hooks/useColumnResize.js +0 -104
  212. package/dist/components-v2/Table/hooks/useTable.d.ts +0 -58
  213. package/dist/components-v2/Table/hooks/useTable.js +0 -254
  214. package/dist/components-v2/Table/hooks/useTableKeyboard.d.ts +0 -25
  215. package/dist/components-v2/Table/hooks/useTableKeyboard.js +0 -112
  216. package/dist/components-v2/Table/hooks/useVirtualScroll.d.ts +0 -29
  217. package/dist/components-v2/Table/hooks/useVirtualScroll.js +0 -83
  218. package/dist/components-v2/Table/settings/ManageColumns.d.ts +0 -12
  219. package/dist/components-v2/Table/settings/ManageColumns.js +0 -59
  220. package/dist/components-v2/Table/settings/TableSettings.d.ts +0 -12
  221. package/dist/components-v2/Table/settings/TableSettings.js +0 -57
  222. package/dist/components-v2/Table/utils/filterUtils.d.ts +0 -7
  223. package/dist/components-v2/Table/utils/filterUtils.js +0 -149
  224. package/dist/components-v2/Table/utils/sortUtils.d.ts +0 -6
  225. package/dist/components-v2/Table/utils/sortUtils.js +0 -65
  226. package/dist/components-v2/Tag/Tag.d.ts +0 -15
  227. package/dist/components-v2/Tag/Tag.js +0 -87
  228. package/dist/components-v2/Timeline/Timeline.d.ts +0 -18
  229. package/dist/components-v2/Timeline/Timeline.js +0 -76
  230. package/dist/components-v2/Toaster/Toaster.d.ts +0 -61
  231. package/dist/components-v2/Toaster/Toaster.js +0 -63
  232. package/dist/components-v2/Toggle/Toggle.d.ts +0 -28
  233. package/dist/components-v2/Toggle/Toggle.js +0 -90
  234. package/dist/components-v2/ui/accordion.d.ts +0 -12
  235. package/dist/components-v2/ui/accordion.js +0 -104
  236. package/dist/components-v2/ui/alert.d.ts +0 -18
  237. package/dist/components-v2/ui/alert.js +0 -99
  238. package/dist/components-v2/ui/avatar.d.ts +0 -12
  239. package/dist/components-v2/ui/avatar.js +0 -80
  240. package/dist/components-v2/ui/badge.d.ts +0 -10
  241. package/dist/components-v2/ui/badge.js +0 -76
  242. package/dist/components-v2/ui/button.d.ts +0 -18
  243. package/dist/components-v2/ui/button.js +0 -97
  244. package/dist/components-v2/ui/checkbox.d.ts +0 -15
  245. package/dist/components-v2/ui/checkbox.js +0 -86
  246. package/dist/components-v2/ui/dialog.d.ts +0 -30
  247. package/dist/components-v2/ui/dialog.js +0 -115
  248. package/dist/components-v2/ui/dropdown-menu.d.ts +0 -26
  249. package/dist/components-v2/ui/dropdown-menu.js +0 -121
  250. package/dist/components-v2/ui/field.d.ts +0 -32
  251. package/dist/components-v2/ui/field.js +0 -62
  252. package/dist/components-v2/ui/form-field.d.ts +0 -25
  253. package/dist/components-v2/ui/form-field.js +0 -96
  254. package/dist/components-v2/ui/input.d.ts +0 -9
  255. package/dist/components-v2/ui/input.js +0 -73
  256. package/dist/components-v2/ui/label.d.ts +0 -10
  257. package/dist/components-v2/ui/label.js +0 -70
  258. package/dist/components-v2/ui/popover.d.ts +0 -9
  259. package/dist/components-v2/ui/popover.js +0 -60
  260. package/dist/components-v2/ui/progress.d.ts +0 -12
  261. package/dist/components-v2/ui/progress.js +0 -75
  262. package/dist/components-v2/ui/radio-group.d.ts +0 -17
  263. package/dist/components-v2/ui/radio-group.js +0 -91
  264. package/dist/components-v2/ui/select.d.ts +0 -24
  265. package/dist/components-v2/ui/select.js +0 -122
  266. package/dist/components-v2/ui/separator.d.ts +0 -5
  267. package/dist/components-v2/ui/separator.js +0 -55
  268. package/dist/components-v2/ui/skeleton.d.ts +0 -9
  269. package/dist/components-v2/ui/skeleton.js +0 -68
  270. package/dist/components-v2/ui/spinner.d.ts +0 -16
  271. package/dist/components-v2/ui/spinner.js +0 -64
  272. package/dist/components-v2/ui/switch.d.ts +0 -10
  273. package/dist/components-v2/ui/switch.js +0 -81
  274. package/dist/components-v2/ui/tabs.d.ts +0 -13
  275. package/dist/components-v2/ui/tabs.js +0 -95
  276. package/dist/components-v2/ui/textarea.d.ts +0 -10
  277. package/dist/components-v2/ui/textarea.js +0 -96
  278. package/dist/components-v2/ui/tooltip.d.ts +0 -17
  279. package/dist/components-v2/ui/tooltip.js +0 -75
  280. package/dist/lib/utils.d.ts +0 -2
  281. package/dist/lib/utils.js +0 -8
  282. package/dist/theme-v2/ThemeProvider.d.ts +0 -19
  283. package/dist/theme-v2/ThemeProvider.js +0 -149
  284. package/dist/theme-v2/dark.css +0 -47
  285. package/dist/theme-v2/tokens.css +0 -72
  286. /package/dist/Components/Table/{Components → components}/HeaderActions.d.ts +0 -0
  287. /package/dist/Components/Table/{Components → components}/HeaderActions.js +0 -0
  288. /package/dist/Components/Table/{Components → components}/Pagination.d.ts +0 -0
  289. /package/dist/Components/Table/{Components → components}/Pagination.js +0 -0
  290. /package/dist/Components/Table/{Components → components}/TableActions.d.ts +0 -0
  291. /package/dist/Components/Table/{Components → components}/TableActions.js +0 -0
  292. /package/dist/Components/Table/{Components → components}/TableBody.d.ts +0 -0
  293. /package/dist/Components/Table/{Components → components}/TableBody.js +0 -0
  294. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.d.ts +0 -0
  295. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.js +0 -0
  296. /package/dist/Components/Table/{Components → components}/TableGroupRow.d.ts +0 -0
  297. /package/dist/Components/Table/{Components → components}/TableGroupRow.js +0 -0
  298. /package/dist/Components/Table/{Components → components}/TableHeader.d.ts +0 -0
  299. /package/dist/Components/Table/{Components → components}/TableHeader.js +0 -0
  300. /package/dist/Components/Table/{Components → components}/TableLoading.d.ts +0 -0
  301. /package/dist/Components/Table/{Components → components}/TableLoading.js +0 -0
  302. /package/dist/Components/Table/{Components → components}/TableSearch.d.ts +0 -0
  303. /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 };