@oneplatformdev/ui 0.1.99-beta.3 → 0.1.99-beta.300

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 (401) hide show
  1. package/.storybook/Wrappers.js.map +1 -1
  2. package/Accordion/Accordion.d.ts +1 -1
  3. package/Accordion/Accordion.d.ts.map +1 -1
  4. package/Accordion/Accordion.js +48 -26
  5. package/Accordion/Accordion.js.map +1 -1
  6. package/Alert/Alert.js.map +1 -1
  7. package/Alert/alertVariants.js.map +1 -1
  8. package/AlertDialog/AlertDialog.js.map +1 -1
  9. package/AlertDialog/AlertDialog.stories.js +66 -24
  10. package/AlertDialog/AlertDialog.stories.js.map +1 -1
  11. package/AlertDialog/AlertDialogRoot.d.ts.map +1 -1
  12. package/AlertDialog/AlertDialogRoot.js +25 -25
  13. package/AlertDialog/AlertDialogRoot.js.map +1 -1
  14. package/AreaChart/AreaChart.js.map +1 -1
  15. package/Aside/Aside.js.map +1 -1
  16. package/Aside/AsideSidebar.js.map +1 -1
  17. package/AspectRatio/AspectRatio.js.map +1 -1
  18. package/Avatar/Avatar.js.map +1 -1
  19. package/Badge/Badge.js.map +1 -1
  20. package/Badge/badgeVariants.d.ts +1 -1
  21. package/Badge/badgeVariants.js.map +1 -1
  22. package/Breadcrumb/Breadcrumb.js.map +1 -1
  23. package/Button/Button.d.ts +6 -6
  24. package/Button/Button.d.ts.map +1 -1
  25. package/Button/Button.js +46 -45
  26. package/Button/Button.js.map +1 -1
  27. package/Button/Button.stories.js +57 -62
  28. package/Button/Button.stories.js.map +1 -1
  29. package/Button/Button.types.d.ts +24 -1
  30. package/Button/Button.types.d.ts.map +1 -1
  31. package/Button/Button.utils.d.ts +3 -0
  32. package/Button/Button.utils.d.ts.map +1 -0
  33. package/Button/Button.utils.js +14 -0
  34. package/Button/Button.utils.js.map +1 -0
  35. package/Button/ButtonCounterBadge.d.ts +7 -0
  36. package/Button/ButtonCounterBadge.d.ts.map +1 -0
  37. package/Button/ButtonCounterBadge.js +20 -0
  38. package/Button/ButtonCounterBadge.js.map +1 -0
  39. package/Button/buttonVariants.d.ts +11 -20
  40. package/Button/buttonVariants.d.ts.map +1 -1
  41. package/Button/buttonVariants.js +108 -12
  42. package/Button/buttonVariants.js.map +1 -1
  43. package/Button/index.d.ts +1 -0
  44. package/Button/index.d.ts.map +1 -1
  45. package/Button/index.js +6 -3
  46. package/Button/index.js.map +1 -1
  47. package/ButtonIcon/ButtonIcon.d.ts +30 -19
  48. package/ButtonIcon/ButtonIcon.d.ts.map +1 -1
  49. package/ButtonIcon/ButtonIcon.js +69 -46
  50. package/ButtonIcon/ButtonIcon.js.map +1 -1
  51. package/ButtonIcon/ButtonIcon.stories.js +123 -78
  52. package/ButtonIcon/ButtonIcon.stories.js.map +1 -1
  53. package/ButtonIcon/ButtonIcon.types.d.ts +2 -1
  54. package/ButtonIcon/ButtonIcon.types.d.ts.map +1 -1
  55. package/ButtonIcon/buttonIconVariants.d.ts +2 -2
  56. package/ButtonIcon/buttonIconVariants.d.ts.map +1 -1
  57. package/ButtonIcon/buttonIconVariants.js +9 -7
  58. package/ButtonIcon/buttonIconVariants.js.map +1 -1
  59. package/CHANGELOG.md +3502 -1536
  60. package/Calendar/Calendar.js +0 -1
  61. package/Calendar/Calendar.js.map +1 -1
  62. package/Card/Card.d.ts.map +1 -1
  63. package/Card/Card.js +22 -21
  64. package/Card/Card.js.map +1 -1
  65. package/Carousel/Carousel.js +6 -7
  66. package/Carousel/Carousel.js.map +1 -1
  67. package/Chart/Chart.js.map +1 -1
  68. package/Checkbox/Checkbox.d.ts.map +1 -1
  69. package/Checkbox/Checkbox.js +36 -35
  70. package/Checkbox/Checkbox.js.map +1 -1
  71. package/Checkbox/Checkbox.stories.js +108 -0
  72. package/Checkbox/Checkbox.stories.js.map +1 -0
  73. package/Checkbox/Checkbox.types.d.ts +2 -1
  74. package/Checkbox/Checkbox.types.d.ts.map +1 -1
  75. package/Collapsible/Collapsible.js.map +1 -1
  76. package/Combobox/Combobox.d.ts +4 -2
  77. package/Combobox/Combobox.d.ts.map +1 -1
  78. package/Combobox/Combobox.js +222 -195
  79. package/Combobox/Combobox.js.map +1 -1
  80. package/Combobox/Combobox.stories.js +347 -0
  81. package/Combobox/Combobox.stories.js.map +1 -0
  82. package/Combobox/Combobox.types.d.ts +88 -24
  83. package/Combobox/Combobox.types.d.ts.map +1 -1
  84. package/Combobox/Combobox.types.js +4 -1
  85. package/Combobox/Combobox.types.js.map +1 -1
  86. package/Combobox/ComboboxOptionItem.d.ts +5 -3
  87. package/Combobox/ComboboxOptionItem.d.ts.map +1 -1
  88. package/Combobox/ComboboxOptionItem.js +80 -23
  89. package/Combobox/ComboboxOptionItem.js.map +1 -1
  90. package/Combobox/ComboboxRenderContent.d.ts +28 -0
  91. package/Combobox/ComboboxRenderContent.d.ts.map +1 -0
  92. package/Combobox/ComboboxRenderContent.js +142 -0
  93. package/Combobox/ComboboxRenderContent.js.map +1 -0
  94. package/Combobox/ComboboxRenderOptions.d.ts +4 -0
  95. package/Combobox/ComboboxRenderOptions.d.ts.map +1 -0
  96. package/Combobox/ComboboxRenderOptions.js +53 -0
  97. package/Combobox/ComboboxRenderOptions.js.map +1 -0
  98. package/Combobox/ComboboxRenderTrigger.d.ts +18 -0
  99. package/Combobox/ComboboxRenderTrigger.d.ts.map +1 -0
  100. package/Combobox/ComboboxRenderTrigger.js +118 -0
  101. package/Combobox/ComboboxRenderTrigger.js.map +1 -0
  102. package/Command/Command.d.ts +6 -1
  103. package/Command/Command.d.ts.map +1 -1
  104. package/Command/Command.js +63 -46
  105. package/Command/Command.js.map +1 -1
  106. package/ContextPopover/ContextDropdownMenu.d.ts +12 -0
  107. package/ContextPopover/ContextDropdownMenu.d.ts.map +1 -0
  108. package/ContextPopover/ContextDropdownMenu.js +41 -0
  109. package/ContextPopover/ContextDropdownMenu.js.map +1 -0
  110. package/ContextPopover/ContextPopover.d.ts +12 -0
  111. package/ContextPopover/ContextPopover.d.ts.map +1 -0
  112. package/ContextPopover/ContextPopover.js +34 -0
  113. package/ContextPopover/ContextPopover.js.map +1 -0
  114. package/ContextPopover/index.d.ts +4 -0
  115. package/ContextPopover/index.d.ts.map +1 -0
  116. package/ContextPopover/index.js +9 -0
  117. package/ContextPopover/index.js.map +1 -0
  118. package/ContextPopover/useContextPopoverHandler.d.ts +14 -0
  119. package/ContextPopover/useContextPopoverHandler.d.ts.map +1 -0
  120. package/ContextPopover/useContextPopoverHandler.js +21 -0
  121. package/ContextPopover/useContextPopoverHandler.js.map +1 -0
  122. package/DataTable/DataTable.js +14 -15
  123. package/DataTable/DataTable.js.map +1 -1
  124. package/DataTable/DataTableColumnFilter.js +6 -7
  125. package/DataTable/DataTableColumnFilter.js.map +1 -1
  126. package/DataTable/useDataTable.js.map +1 -1
  127. package/DatePicker/DatePicker.d.ts.map +1 -1
  128. package/DatePicker/DatePicker.js +31 -30
  129. package/DatePicker/DatePicker.js.map +1 -1
  130. package/Dialog/Dialog.d.ts +4 -1
  131. package/Dialog/Dialog.d.ts.map +1 -1
  132. package/Dialog/Dialog.js +84 -42
  133. package/Dialog/Dialog.js.map +1 -1
  134. package/Dialog/Dialog.stories.js +108 -0
  135. package/Dialog/Dialog.stories.js.map +1 -0
  136. package/Dialog/Dialog.types.d.ts +4 -0
  137. package/Dialog/Dialog.types.d.ts.map +1 -0
  138. package/Dialog/Dialog.types.js +2 -0
  139. package/Dialog/Dialog.types.js.map +1 -0
  140. package/Dialog/DialogOverlayScope.js.map +1 -1
  141. package/Dialog/index.d.ts +1 -0
  142. package/Dialog/index.d.ts.map +1 -1
  143. package/Dialog/useDialogClosePosition.d.ts +11 -0
  144. package/Dialog/useDialogClosePosition.d.ts.map +1 -0
  145. package/Dialog/useDialogClosePosition.js +50 -0
  146. package/Dialog/useDialogClosePosition.js.map +1 -0
  147. package/Drawer/Drawer.js.map +1 -1
  148. package/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  149. package/DropdownMenu/DropdownMenu.js +33 -20
  150. package/DropdownMenu/DropdownMenu.js.map +1 -1
  151. package/Dropzone/Dropzone.d.ts.map +1 -1
  152. package/Dropzone/Dropzone.js +493 -132
  153. package/Dropzone/Dropzone.js.map +1 -1
  154. package/Dropzone/Dropzone.stories.js +387 -0
  155. package/Dropzone/Dropzone.stories.js.map +1 -0
  156. package/Dropzone/Dropzone.types.d.ts +29 -1
  157. package/Dropzone/Dropzone.types.d.ts.map +1 -1
  158. package/Dropzone/Dropzone.types.js +32 -9
  159. package/Dropzone/Dropzone.types.js.map +1 -1
  160. package/Dropzone/DropzoneCoverPreview.d.ts +14 -0
  161. package/Dropzone/DropzoneCoverPreview.d.ts.map +1 -0
  162. package/Dropzone/DropzoneCoverPreview.js +56 -0
  163. package/Dropzone/DropzoneCoverPreview.js.map +1 -0
  164. package/Dropzone/DropzoneFileCard.d.ts +17 -0
  165. package/Dropzone/DropzoneFileCard.d.ts.map +1 -0
  166. package/Dropzone/DropzoneFileCard.js +39 -0
  167. package/Dropzone/DropzoneFileCard.js.map +1 -0
  168. package/Dropzone/DropzoneFilePreview.d.ts.map +1 -1
  169. package/Dropzone/DropzoneFilePreview.js +46 -26
  170. package/Dropzone/DropzoneFilePreview.js.map +1 -1
  171. package/Dropzone/DropzoneSinglePickPreview.d.ts +10 -2
  172. package/Dropzone/DropzoneSinglePickPreview.d.ts.map +1 -1
  173. package/Dropzone/DropzoneSinglePickPreview.js +206 -22
  174. package/Dropzone/DropzoneSinglePickPreview.js.map +1 -1
  175. package/Dropzone/DropzoneUtils.d.ts +1 -0
  176. package/Dropzone/DropzoneUtils.d.ts.map +1 -1
  177. package/Dropzone/DropzoneUtils.js +17 -6
  178. package/Dropzone/DropzoneUtils.js.map +1 -1
  179. package/Dropzone/icons/file-csv.svg.js +5 -0
  180. package/Dropzone/icons/file-csv.svg.js.map +1 -0
  181. package/Dropzone/icons/file-doc.svg.js +5 -0
  182. package/Dropzone/icons/file-doc.svg.js.map +1 -0
  183. package/Dropzone/icons/file-docx.svg.js +5 -0
  184. package/Dropzone/icons/file-docx.svg.js.map +1 -0
  185. package/Dropzone/icons/file-jpg.svg.js +5 -0
  186. package/Dropzone/icons/file-jpg.svg.js.map +1 -0
  187. package/Dropzone/icons/file-pdf.svg.js +5 -0
  188. package/Dropzone/icons/file-pdf.svg.js.map +1 -0
  189. package/Dropzone/icons/file-png.svg.js +5 -0
  190. package/Dropzone/icons/file-png.svg.js.map +1 -0
  191. package/Dropzone/icons/file-ppt.svg.js +5 -0
  192. package/Dropzone/icons/file-ppt.svg.js.map +1 -0
  193. package/Dropzone/icons/file-pptx.svg.js +5 -0
  194. package/Dropzone/icons/file-pptx.svg.js.map +1 -0
  195. package/Dropzone/icons/file-rar.svg.js +5 -0
  196. package/Dropzone/icons/file-rar.svg.js.map +1 -0
  197. package/Dropzone/icons/file-svg.svg.js +5 -0
  198. package/Dropzone/icons/file-svg.svg.js.map +1 -0
  199. package/Dropzone/icons/file-webp.svg.js +5 -0
  200. package/Dropzone/icons/file-webp.svg.js.map +1 -0
  201. package/Dropzone/icons/file-xls.svg.js +5 -0
  202. package/Dropzone/icons/file-xls.svg.js.map +1 -0
  203. package/Dropzone/icons/file-xlsx.svg.js +5 -0
  204. package/Dropzone/icons/file-xlsx.svg.js.map +1 -0
  205. package/Dropzone/icons/file-zip.svg.js +5 -0
  206. package/Dropzone/icons/file-zip.svg.js.map +1 -0
  207. package/Dropzone/index.js +8 -5
  208. package/Form/Form.d.ts.map +1 -1
  209. package/Form/Form.js +28 -29
  210. package/Form/Form.js.map +1 -1
  211. package/Form/FormRenderControl.d.ts +1 -1
  212. package/Form/FormRenderControl.d.ts.map +1 -1
  213. package/Form/FormRenderControl.js +54 -14
  214. package/Form/FormRenderControl.js.map +1 -1
  215. package/Form/FormRenderControl.types.d.ts +6 -2
  216. package/Form/FormRenderControl.types.d.ts.map +1 -1
  217. package/Form/Form_old.js +4 -5
  218. package/Form/Form_old.js.map +1 -1
  219. package/FormCheckbox/FormCheckbox.js +4 -4
  220. package/FormCheckbox/FormCheckbox.js.map +1 -1
  221. package/FormCombobox/FormCombobox.d.ts +4 -2
  222. package/FormCombobox/FormCombobox.d.ts.map +1 -1
  223. package/FormCombobox/FormCombobox.js +29 -16
  224. package/FormCombobox/FormCombobox.js.map +1 -1
  225. package/FormCombobox/FormCombobox.types.d.ts +6 -2
  226. package/FormCombobox/FormCombobox.types.d.ts.map +1 -1
  227. package/FormDatePicker/FormDatePicker.d.ts.map +1 -1
  228. package/FormDatePicker/FormDatePicker.js +18 -16
  229. package/FormDatePicker/FormDatePicker.js.map +1 -1
  230. package/FormDropzone/FormDropzone.d.ts.map +1 -1
  231. package/FormDropzone/FormDropzone.js +13 -11
  232. package/FormDropzone/FormDropzone.js.map +1 -1
  233. package/FormInput/FormInput.d.ts.map +1 -1
  234. package/FormInput/FormInput.js +47 -27
  235. package/FormInput/FormInput.js.map +1 -1
  236. package/FormInput/FormInput.stories.js +80 -0
  237. package/FormInput/FormInput.stories.js.map +1 -0
  238. package/FormInput/FormInput.types.d.ts +1 -0
  239. package/FormInput/FormInput.types.d.ts.map +1 -1
  240. package/FormRadio/FormRadio.js.map +1 -1
  241. package/FormSelect/FormSelect.d.ts.map +1 -1
  242. package/FormSelect/FormSelect.js +19 -18
  243. package/FormSelect/FormSelect.js.map +1 -1
  244. package/FormTextarea/FormTextarea.d.ts.map +1 -1
  245. package/FormTextarea/FormTextarea.js +15 -12
  246. package/FormTextarea/FormTextarea.js.map +1 -1
  247. package/Header/Header.js.map +1 -1
  248. package/HoverCard/HoverCard.js.map +1 -1
  249. package/InfoBlock/InfoBlock.d.ts +7 -0
  250. package/InfoBlock/InfoBlock.d.ts.map +1 -0
  251. package/InfoBlock/InfoBlock.js +28 -0
  252. package/InfoBlock/InfoBlock.js.map +1 -0
  253. package/InfoBlock/InfoBlock.stories.js +50 -0
  254. package/InfoBlock/InfoBlock.stories.js.map +1 -0
  255. package/InfoBlock/InfoBlock.types.d.ts +9 -0
  256. package/InfoBlock/InfoBlock.types.d.ts.map +1 -0
  257. package/InfoBlock/InfoBlock.types.js +2 -0
  258. package/InfoBlock/InfoBlock.types.js.map +1 -0
  259. package/InfoBlock/index.d.ts +3 -0
  260. package/InfoBlock/index.d.ts.map +1 -0
  261. package/InfoBlock/index.js +5 -0
  262. package/InfoBlock/index.js.map +1 -0
  263. package/InfoBlock/infoBlockVariants.d.ts +6 -0
  264. package/InfoBlock/infoBlockVariants.d.ts.map +1 -0
  265. package/InfoBlock/infoBlockVariants.js +27 -0
  266. package/InfoBlock/infoBlockVariants.js.map +1 -0
  267. package/Input/Input.d.ts.map +1 -1
  268. package/Input/Input.js +105 -54
  269. package/Input/Input.js.map +1 -1
  270. package/Input/Input.stories.js +225 -0
  271. package/Input/Input.stories.js.map +1 -0
  272. package/Input/Input.types.d.ts +5 -0
  273. package/Input/Input.types.d.ts.map +1 -1
  274. package/Input/inputVariants.d.ts.map +1 -1
  275. package/Input/inputVariants.js +5 -4
  276. package/Input/inputVariants.js.map +1 -1
  277. package/InputOTP/InputOTP.d.ts.map +1 -1
  278. package/InputOTP/InputOTP.js.map +1 -1
  279. package/LICENSE +21 -21
  280. package/Label/Label.js.map +1 -1
  281. package/Label/labelVariants.js.map +1 -1
  282. package/LazyLoader/LazyLoader.js +4 -5
  283. package/LazyLoader/LazyLoader.js.map +1 -1
  284. package/LoadedIcon/LoadedIcon.d.ts.map +1 -1
  285. package/LoadedIcon/LoadedIcon.js +3 -1
  286. package/LoadedIcon/LoadedIcon.js.map +1 -1
  287. package/LoadingMask/LoadingMask.d.ts +1 -2
  288. package/LoadingMask/LoadingMask.d.ts.map +1 -1
  289. package/LoadingMask/LoadingMask.js +8 -8
  290. package/LoadingMask/LoadingMask.js.map +1 -1
  291. package/LoadingMask/LoadingMask.types.d.ts +1 -0
  292. package/LoadingMask/LoadingMask.types.d.ts.map +1 -1
  293. package/LoadingMask/RenderLoadingMask.js.map +1 -1
  294. package/LoadingProgress/LoadingProgress.js.map +1 -1
  295. package/LoadingProgress/loadingProgressVariants.js.map +1 -1
  296. package/Menubar/Menubar.js.map +1 -1
  297. package/NavigationMenu/NavigationMenu.js.map +1 -1
  298. package/NavigationMenu/navigationMenuVariants.js.map +1 -1
  299. package/Pagination/Pagination.js +0 -1
  300. package/Pagination/Pagination.js.map +1 -1
  301. package/Popover/Popover.d.ts +3 -1
  302. package/Popover/Popover.d.ts.map +1 -1
  303. package/Popover/Popover.js +15 -10
  304. package/Popover/Popover.js.map +1 -1
  305. package/Progress/Progress.js.map +1 -1
  306. package/README.md +7 -7
  307. package/Radio/Radio.js.map +1 -1
  308. package/RadioGroup/RadioGroup.js.map +1 -1
  309. package/Resizable/Resizable.d.ts +5 -20
  310. package/Resizable/Resizable.d.ts.map +1 -1
  311. package/Resizable/Resizable.js +48 -31
  312. package/Resizable/Resizable.js.map +1 -1
  313. package/Resizable/Resizable.stories.js +140 -0
  314. package/Resizable/Resizable.stories.js.map +1 -0
  315. package/ScrollArea/ScrollArea.d.ts +5 -1
  316. package/ScrollArea/ScrollArea.d.ts.map +1 -1
  317. package/ScrollArea/ScrollArea.js +23 -17
  318. package/ScrollArea/ScrollArea.js.map +1 -1
  319. package/Search/Search.d.ts.map +1 -1
  320. package/Search/Search.js +40 -31
  321. package/Search/Search.js.map +1 -1
  322. package/Search/Search.stories.js +17 -0
  323. package/Search/Search.stories.js.map +1 -0
  324. package/Select/Select.d.ts.map +1 -1
  325. package/Select/Select.js +53 -49
  326. package/Select/Select.js.map +1 -1
  327. package/Select/Select.stories.js.map +1 -1
  328. package/Select/Select.types.d.ts +4 -0
  329. package/Select/Select.types.d.ts.map +1 -1
  330. package/Select/SelectRoot.d.ts.map +1 -1
  331. package/Select/SelectRoot.js +79 -66
  332. package/Select/SelectRoot.js.map +1 -1
  333. package/Separator/Separator.js.map +1 -1
  334. package/Sheet/Sheet.js.map +1 -1
  335. package/Sidebar/Sidebar.js +20 -21
  336. package/Sidebar/Sidebar.js.map +1 -1
  337. package/Skeleton/Skeleton.js.map +1 -1
  338. package/Slider/Slider.js.map +1 -1
  339. package/Sonner/Sonner.js.map +1 -1
  340. package/Switch/Switch.d.ts +1 -1
  341. package/Switch/Switch.d.ts.map +1 -1
  342. package/Switch/Switch.js +19 -9
  343. package/Switch/Switch.js.map +1 -1
  344. package/Switch/Switch.stories.js +62 -0
  345. package/Switch/Switch.stories.js.map +1 -0
  346. package/Table/Table.js.map +1 -1
  347. package/TablePagination/TablePagination.js +17 -21
  348. package/TablePagination/TablePagination.js.map +1 -1
  349. package/Tabs/Tabs.js.map +1 -1
  350. package/Tabs/TabsRoot.js.map +1 -1
  351. package/Textarea/Textarea.d.ts.map +1 -1
  352. package/Textarea/Textarea.js +52 -47
  353. package/Textarea/Textarea.js.map +1 -1
  354. package/Textarea/Textarea.stories.js +12 -0
  355. package/Textarea/Textarea.stories.js.map +1 -0
  356. package/Textarea/Textarea.types.d.ts +3 -1
  357. package/Textarea/Textarea.types.d.ts.map +1 -1
  358. package/Textarea/useAutosizeTextArea.d.ts +1 -1
  359. package/Textarea/useAutosizeTextArea.d.ts.map +1 -1
  360. package/Textarea/useAutosizeTextArea.js.map +1 -1
  361. package/Theme/ThemeModeToggle.js +3 -4
  362. package/Theme/ThemeModeToggle.js.map +1 -1
  363. package/Theme/ThemeProvider.js.map +1 -1
  364. package/Toast/Toast.d.ts +1 -1
  365. package/Toast/Toast.js.map +1 -1
  366. package/Toast/toast.constants.js.map +1 -1
  367. package/Toast/toastVariants.d.ts +1 -1
  368. package/Toast/toastVariants.js.map +1 -1
  369. package/Toast/useToast.js.map +1 -1
  370. package/Toaster/Toaster.js.map +1 -1
  371. package/Toggle/Toggle.js.map +1 -1
  372. package/ToggleGroup/ToggleGroup.js.map +1 -1
  373. package/Tooltip/QuestionMarkIcon.svg.js +6 -0
  374. package/Tooltip/QuestionMarkIcon.svg.js.map +1 -0
  375. package/Tooltip/Tooltip.d.ts.map +1 -1
  376. package/Tooltip/Tooltip.js +52 -32
  377. package/Tooltip/Tooltip.js.map +1 -1
  378. package/Tooltip/Tooltip.types.d.ts +10 -0
  379. package/Tooltip/Tooltip.types.d.ts.map +1 -1
  380. package/Tooltip/TooltipRoot.js.map +1 -1
  381. package/Tooltip/tooltipVariants.d.ts +4 -0
  382. package/Tooltip/tooltipVariants.d.ts.map +1 -0
  383. package/Tooltip/tooltipVariants.js +23 -0
  384. package/Tooltip/tooltipVariants.js.map +1 -0
  385. package/index.d.ts +2 -0
  386. package/index.d.ts.map +1 -1
  387. package/index.js +357 -343
  388. package/index.js.map +1 -1
  389. package/package.json +13 -6
  390. package/styles.css +1 -0
  391. package/vite-env.d.js +2 -0
  392. package/vite-env.d.js.map +1 -0
  393. package/vite-env.d.ts +7 -0
  394. package/Button/Button.s.d.ts +0 -83
  395. package/Button/Button.s.d.ts.map +0 -1
  396. package/Button/Button.s.js +0 -163
  397. package/Button/Button.s.js.map +0 -1
  398. package/Combobox/ComboboxOptions.d.ts +0 -4
  399. package/Combobox/ComboboxOptions.d.ts.map +0 -1
  400. package/Combobox/ComboboxOptions.js +0 -65
  401. package/Combobox/ComboboxOptions.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Dropzone.types.d.ts","sourceRoot":"","sources":["../../src/Dropzone/Dropzone.types.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEjD,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,CACX,cAAc,EACd,eAAe,GAAG,cAAc,GAAG,aAAa,CACjD,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,aACf,SAAQ,oBAAoB,EAC1B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,IAAI,CAAC;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,kBAAkB,UAM9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,UAMhC,CAAC;AAGF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;CACzD"}
1
+ {"version":3,"file":"Dropzone.types.d.ts","sourceRoot":"","sources":["../../src/Dropzone/Dropzone.types.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEjD,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,CACX,cAAc,EACd,eAAe,GAAG,cAAc,GAAG,aAAa,CACjD,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aACf,SAAQ,oBAAoB,EAC1B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,IAAI,CAAC;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,kBAAkB,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,SAAS,GAAG,YAAY,GAAG,WAAW,CAAC;IACxD,aAAa,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,sBAAsB,UAUlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,UAMhC,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAM/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAQ/B,CAAC;AAGF,eAAO,MAAM,kBAAkB,UAAyB,CAAC;AAGzD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;CACzD"}
@@ -1,18 +1,41 @@
1
- const e = [
1
+ const o = [
2
+ "application/pdf",
2
3
  "application/msword",
3
4
  "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
5
+ "application/vnd.ms-excel",
6
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
7
+ "application/vnd.ms-powerpoint",
8
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation",
4
9
  "text/csv",
5
- "text/plain",
6
- "application/pdf"
7
- ], i = [
10
+ "text/plain"
11
+ ], e = [
8
12
  "image/png",
9
13
  "image/jpeg",
10
14
  "image/jpg",
11
- "image/webp",
12
- "image/gif"
13
- ];
15
+ "image/webp"
16
+ // 'image/gif', // TODO: normalize this type
17
+ ], i = [
18
+ "video/mp4",
19
+ "video/quicktime",
20
+ "video/x-msvideo",
21
+ "video/webm",
22
+ "video/avi"
23
+ ], a = [
24
+ "audio/mpeg",
25
+ // mp3
26
+ "audio/wav",
27
+ "audio/x-wav",
28
+ "audio/ogg",
29
+ "audio/mp4",
30
+ // m4a
31
+ "audio/aac",
32
+ "audio/webm"
33
+ ], p = o;
14
34
  export {
15
- e as DEFAULT_FILE_TYPES,
16
- i as DEFAULT_IMAGES_TYPES
35
+ a as DEFAULT_AUDIO_TYPES,
36
+ o as DEFAULT_DOCUMENT_TYPES,
37
+ p as DEFAULT_FILE_TYPES,
38
+ e as DEFAULT_IMAGES_TYPES,
39
+ i as DEFAULT_VIDEO_TYPES
17
40
  };
18
41
  //# sourceMappingURL=Dropzone.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dropzone.types.js","sources":["../../src/Dropzone/Dropzone.types.tsx"],"sourcesContent":["import { FileRejection } from 'react-dropzone';\nimport { Dispatch, SetStateAction } from 'react';\n\nexport type DropzoneValueItem = File | string;\n\nexport interface FilePreviewProps {\n item: DropzoneValueItem;\n styles?: Pick<\n DropzoneStyles,\n 'previewWraper' | 'previewImage' | 'previewFile'\n >;\n}\n\nexport interface DropzoneTranslations {\n labelDropzonePrompt?: string;\n labelDropzoneSubPrompt?: string;\n labelOrClickToSelect?: string;\n labelSelectedFiles?: string;\n labelUploadErrors?: string;\n labelFileTooLarge?: string;\n labelInvalidFileType?: string;\n}\n\nexport interface DropzoneProps\n extends DropzoneTranslations,\n React.HTMLAttributes<HTMLDivElement> {\n acceptTypes?: string[];\n maxSizeMB: number;\n maxFiles?: number;\n onErrors?: (errors: FileRejection[]) => void;\n hideErrors?: boolean;\n disabled?: boolean;\n classNames?: DropzoneStyles;\n value?: DropzoneValueItem[];\n onChangeValue?: (items: DropzoneValueItem[]) => void;\n singlePick?: boolean;\n labelDropzoneClassname?: string;\n labelDropzoneSubClassname?: string;\n}\n\nexport interface DropzoneStyles {\n idleWrapper?: string;\n previewWrapper?: string;\n errorWrapper?: string;\n previewWraper?: string;\n previewImage?: string;\n previewFile?: string;\n}\n\nexport const DEFAULT_FILE_TYPES = [\n 'application/msword',\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n 'text/csv',\n 'text/plain',\n 'application/pdf',\n];\n\nexport const DEFAULT_IMAGES_TYPES = [\n 'image/png',\n 'image/jpeg',\n 'image/jpg',\n 'image/webp',\n 'image/gif',\n];\n\n\nexport interface DropzoneControl {\n setItems: Dispatch<SetStateAction<DropzoneValueItem[]>>;\n}\n"],"names":["DEFAULT_FILE_TYPES","DEFAULT_IMAGES_TYPES"],"mappings":"AAiDO,MAAMA,IAAqB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAuB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;"}
1
+ {"version":3,"file":"Dropzone.types.js","sources":["../../src/Dropzone/Dropzone.types.tsx"],"sourcesContent":["import { FileRejection } from 'react-dropzone';\r\nimport { Dispatch, SetStateAction } from 'react';\r\n\r\nexport type DropzoneValueItem = File | string;\r\n\r\nexport interface FilePreviewProps {\r\n item: DropzoneValueItem;\r\n styles?: Pick<\r\n DropzoneStyles,\r\n 'previewWraper' | 'previewImage' | 'previewFile'\r\n >;\r\n}\r\n\r\nexport interface DropzoneTranslations {\r\n labelDropzonePrompt?: string;\r\n labelDropzoneSubPrompt?: string;\r\n labelOrClickToSelect?: string;\r\n labelSelectedFiles?: string;\r\n labelUploadErrors?: string;\r\n labelFileTooLarge?: string;\r\n labelInvalidFileType?: string;\r\n labelVideoUploaded?: string;\r\n labelVideoReplace?: string;\r\n}\r\n\r\nexport interface DropzoneProps\r\n extends DropzoneTranslations,\r\n React.HTMLAttributes<HTMLDivElement> {\r\n acceptTypes?: string[];\r\n maxSizeMB: number;\r\n maxFiles?: number;\r\n onErrors?: (errors: FileRejection[]) => void;\r\n hideErrors?: boolean;\r\n disabled?: boolean;\r\n classNames?: DropzoneStyles;\r\n value?: DropzoneValueItem[];\r\n onChangeValue?: (items: DropzoneValueItem[]) => void;\r\n singlePick?: boolean;\r\n labelDropzoneClassname?: string;\r\n labelDropzoneSubClassname?: string;\r\n isUploading?: boolean;\r\n uploadProgress?: number;\r\n uploadLoadedBytes?: number;\r\n uploadTotalBytes?: number;\r\n onCancelUpload?: () => void;\r\n labelUploadingTitle?: string;\r\n labelUploadingHint?: string;\r\n labelUploadingActionCancel?: string;\r\n labelUploadingOf?: string;\r\n playerTranslations?: Partial<Record<string, string>>;\r\n singlePickFileInfo?: { name?: string; size?: number };\r\n persistentDropzone?: boolean;\r\n previewVariant?: 'default' | 'image-grid' | 'file-list';\r\n designVariant?: 'legacy' | 'modern';\r\n documentUploadCard?: boolean;\r\n /**\r\n * In `image-grid` variant, render the first item as a full-width cover preview.\r\n * Other items keep the regular grid size. The remove (X) button is preserved.\r\n */\r\n coverFirstItem?: boolean;\r\n}\r\n\r\nexport interface DropzoneStyles {\r\n idleWrapper?: string;\r\n previewWrapper?: string;\r\n errorWrapper?: string;\r\n previewWraper?: string;\r\n previewImage?: string;\r\n previewFile?: string;\r\n}\r\n\r\nexport const DEFAULT_DOCUMENT_TYPES = [\r\n 'application/pdf',\r\n 'application/msword',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'application/vnd.ms-excel',\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\r\n 'application/vnd.ms-powerpoint',\r\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\r\n 'text/csv',\r\n 'text/plain',\r\n];\r\n\r\nexport const DEFAULT_IMAGES_TYPES = [\r\n 'image/png',\r\n 'image/jpeg',\r\n 'image/jpg',\r\n 'image/webp',\r\n // 'image/gif', // TODO: normalize this type\r\n];\r\n\r\nexport const DEFAULT_VIDEO_TYPES = [\r\n 'video/mp4',\r\n 'video/quicktime',\r\n 'video/x-msvideo',\r\n 'video/webm',\r\n 'video/avi'\r\n];\r\n\r\nexport const DEFAULT_AUDIO_TYPES = [\r\n 'audio/mpeg', // mp3\r\n 'audio/wav',\r\n 'audio/x-wav',\r\n 'audio/ogg',\r\n 'audio/mp4', // m4a\r\n 'audio/aac',\r\n 'audio/webm',\r\n];\r\n\r\n// Backward-compatible alias.\r\nexport const DEFAULT_FILE_TYPES = DEFAULT_DOCUMENT_TYPES;\r\n\r\n\r\nexport interface DropzoneControl {\r\n setItems: Dispatch<SetStateAction<DropzoneValueItem[]>>;\r\n}\r\n"],"names":["DEFAULT_DOCUMENT_TYPES","DEFAULT_IMAGES_TYPES","DEFAULT_VIDEO_TYPES","DEFAULT_AUDIO_TYPES","DEFAULT_FILE_TYPES"],"mappings":"AAuEO,MAAMA,IAAyB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAuB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAEF,GAEaC,IAAsB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAsB;AAAA,EACjC;AAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EACA;AAAA,EACA;AACF,GAGaC,IAAqBJ;"}
@@ -0,0 +1,14 @@
1
+ import { DropzoneValueItem } from './Dropzone.types';
2
+ interface DropzoneCoverPreviewProps {
3
+ item: DropzoneValueItem;
4
+ className?: string;
5
+ }
6
+ /**
7
+ * Cover preview for the image-grid (multi select) drop area.
8
+ * Mirrors the single image preview: wide images fill the frame (object-cover),
9
+ * portrait images are shown in full (object-contain) over a blurred backdrop,
10
+ * so the cover is never cropped awkwardly.
11
+ */
12
+ export declare const DropzoneCoverPreview: ({ item, className }: DropzoneCoverPreviewProps) => import("react/jsx-runtime").JSX.Element | null;
13
+ export {};
14
+ //# sourceMappingURL=DropzoneCoverPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneCoverPreview.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneCoverPreview.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,UAAU,yBAAyB;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,qBAAqB,yBAAyB,mDAmDlF,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { jsxs as m, jsx as a } from "react/jsx-runtime";
2
+ import { useState as n, useEffect as d } from "react";
3
+ import { cn as i } from "@oneplatformdev/utils";
4
+ import { isFile as v } from "./DropzoneUtils.js";
5
+ const h = ({ item: e, className: u }) => {
6
+ const [t, o] = n(""), [l, f] = n(!1);
7
+ return d(() => {
8
+ if (v(e)) {
9
+ const r = URL.createObjectURL(e);
10
+ return o(r), () => URL.revokeObjectURL(r);
11
+ }
12
+ if (typeof e == "string") {
13
+ o(e);
14
+ return;
15
+ }
16
+ o("");
17
+ }, [e]), t ? /* @__PURE__ */ m(
18
+ "div",
19
+ {
20
+ className: i(
21
+ "relative flex w-full h-full items-center justify-center overflow-hidden",
22
+ u
23
+ ),
24
+ children: [
25
+ !l && /* @__PURE__ */ a(
26
+ "div",
27
+ {
28
+ className: "absolute inset-0 scale-110 bg-cover bg-center opacity-80 blur-xl",
29
+ style: { backgroundImage: `url(${t})` }
30
+ }
31
+ ),
32
+ /* @__PURE__ */ a(
33
+ "img",
34
+ {
35
+ src: t,
36
+ alt: "",
37
+ onLoad: (r) => {
38
+ const { naturalWidth: s, naturalHeight: c } = r.currentTarget;
39
+ f(
40
+ !!s && !!c && s > c
41
+ );
42
+ },
43
+ className: i(
44
+ "relative h-full",
45
+ l ? "w-full object-cover" : "z-10 max-w-full object-contain"
46
+ )
47
+ }
48
+ )
49
+ ]
50
+ }
51
+ ) : null;
52
+ };
53
+ export {
54
+ h as DropzoneCoverPreview
55
+ };
56
+ //# sourceMappingURL=DropzoneCoverPreview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneCoverPreview.js","sources":["../../src/Dropzone/DropzoneCoverPreview.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\r\n\r\nimport { cn } from '@oneplatformdev/utils';\r\n\r\nimport { DropzoneValueItem } from './Dropzone.types';\r\nimport { isFile } from './DropzoneUtils';\r\n\r\ninterface DropzoneCoverPreviewProps {\r\n item: DropzoneValueItem;\r\n className?: string;\r\n}\r\n\r\n/**\r\n * Cover preview for the image-grid (multi select) drop area.\r\n * Mirrors the single image preview: wide images fill the frame (object-cover),\r\n * portrait images are shown in full (object-contain) over a blurred backdrop,\r\n * so the cover is never cropped awkwardly.\r\n */\r\nexport const DropzoneCoverPreview = ({ item, className }: DropzoneCoverPreviewProps) => {\r\n const [src, setSrc] = useState('');\r\n const [isWideImage, setIsWideImage] = useState(false);\r\n\r\n useEffect(() => {\r\n if (isFile(item)) {\r\n const objectUrl = URL.createObjectURL(item);\r\n setSrc(objectUrl);\r\n return () => URL.revokeObjectURL(objectUrl);\r\n }\r\n\r\n if (typeof item === 'string') {\r\n setSrc(item);\r\n return undefined;\r\n }\r\n\r\n setSrc('');\r\n return undefined;\r\n }, [item]);\r\n\r\n if (!src) return null;\r\n\r\n return (\r\n <div\r\n className={cn(\r\n 'relative flex w-full h-full items-center justify-center overflow-hidden',\r\n className,\r\n )}\r\n >\r\n {!isWideImage && (\r\n <div\r\n className=\"absolute inset-0 scale-110 bg-cover bg-center opacity-80 blur-xl\"\r\n style={{ backgroundImage: `url(${src})` }}\r\n />\r\n )}\r\n <img\r\n src={src}\r\n alt=\"\"\r\n onLoad={(event) => {\r\n const { naturalWidth, naturalHeight } = event.currentTarget;\r\n setIsWideImage(\r\n !!naturalWidth && !!naturalHeight && naturalWidth > naturalHeight,\r\n );\r\n }}\r\n className={cn(\r\n 'relative h-full',\r\n isWideImage ? 'w-full object-cover' : 'z-10 max-w-full object-contain',\r\n )}\r\n />\r\n </div>\r\n );\r\n};\r\n"],"names":["DropzoneCoverPreview","item","className","src","setSrc","useState","isWideImage","setIsWideImage","useEffect","isFile","objectUrl","jsxs","cn","jsx","event","naturalWidth","naturalHeight"],"mappings":";;;;AAkBO,MAAMA,IAAuB,CAAC,EAAE,MAAAC,GAAM,WAAAC,QAA2C;AACtF,QAAM,CAACC,GAAKC,CAAM,IAAIC,EAAS,EAAE,GAC3B,CAACC,GAAaC,CAAc,IAAIF,EAAS,EAAK;AAkBpD,SAhBAG,EAAU,MAAM;AACd,QAAIC,EAAOR,CAAI,GAAG;AAChB,YAAMS,IAAY,IAAI,gBAAgBT,CAAI;AAC1C,aAAAG,EAAOM,CAAS,GACT,MAAM,IAAI,gBAAgBA,CAAS;AAAA,IAC5C;AAEA,QAAI,OAAOT,KAAS,UAAU;AAC5B,MAAAG,EAAOH,CAAI;AACX;AAAA,IACF;AAEA,IAAAG,EAAO,EAAE;AAAA,EAEX,GAAG,CAACH,CAAI,CAAC,GAEJE,IAGH,gBAAAQ;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAV;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAA,CAACI,KACA,gBAAAO;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,OAAO,EAAE,iBAAiB,OAAOV,CAAG,IAAA;AAAA,UAAI;AAAA,QAAA;AAAA,QAG5C,gBAAAU;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAAV;AAAA,YACA,KAAI;AAAA,YACJ,QAAQ,CAACW,MAAU;AACjB,oBAAM,EAAE,cAAAC,GAAc,eAAAC,EAAA,IAAkBF,EAAM;AAC9C,cAAAP;AAAA,gBACE,CAAC,CAACQ,KAAgB,CAAC,CAACC,KAAiBD,IAAeC;AAAA,cAAA;AAAA,YAExD;AAAA,YACA,WAAWJ;AAAA,cACT;AAAA,cACAN,IAAc,wBAAwB;AAAA,YAAA;AAAA,UACxC;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAAA,IA5Ba;AA+BnB;"}
@@ -0,0 +1,17 @@
1
+ import { FC } from 'react';
2
+ export interface DropzoneFileCardProps {
3
+ name: string;
4
+ sizeLabel?: string;
5
+ /** Resolved extension icon (svg src). When absent a generic icon is shown. */
6
+ iconSrc?: string | null;
7
+ disabled?: boolean;
8
+ className?: string;
9
+ onRemove?: (event: React.MouseEvent<HTMLDivElement>) => void;
10
+ }
11
+ /**
12
+ * Прямокутна картка файлу для мультизавантаження (variant `file-list`):
13
+ * іконка за типом + назва + розмір + кнопка видалення. Підходить під будь-який
14
+ * тип (pdf / doc / фото / відео) — усі показуються однаково.
15
+ */
16
+ export declare const DropzoneFileCard: FC<DropzoneFileCardProps>;
17
+ //# sourceMappingURL=DropzoneFileCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneFileCard.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneFileCard.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAI3B,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CAC9D;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CA6CtD,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
+ import { FileTextIcon as o, X as m } from "lucide-react";
3
+ import { cn as x } from "@oneplatformdev/utils";
4
+ const h = ({
5
+ name: r,
6
+ sizeLabel: t,
7
+ iconSrc: i,
8
+ disabled: n = !1,
9
+ className: a,
10
+ onRemove: s
11
+ }) => /* @__PURE__ */ l(
12
+ "div",
13
+ {
14
+ className: x(
15
+ "w-full min-h-[72px] rounded-[8px] bg-[#F5F5F5] p-4 flex items-center gap-4",
16
+ a
17
+ ),
18
+ onClick: (c) => c.stopPropagation(),
19
+ children: [
20
+ i ? /* @__PURE__ */ e("img", { src: i, alt: "", className: "size-10 shrink-0" }) : /* @__PURE__ */ e("div", { className: "size-10 rounded-[8px] bg-[#9368FF] text-white flex items-center justify-center shrink-0", children: /* @__PURE__ */ e(o, { size: 20 }) }),
21
+ /* @__PURE__ */ l("div", { className: "flex flex-col items-start text-left gap-1 min-w-0 flex-1", children: [
22
+ /* @__PURE__ */ e("span", { className: "w-full text-[14px] font-semibold leading-[125%] text-[#06080D] truncate", children: r }),
23
+ t && /* @__PURE__ */ e("span", { className: "w-full text-[12px] font-medium leading-[120%] text-[#666A78]", children: t })
24
+ ] }),
25
+ !n && s && /* @__PURE__ */ e(
26
+ "div",
27
+ {
28
+ className: "size-6 flex items-center justify-center cursor-pointer shrink-0",
29
+ onClick: s,
30
+ children: /* @__PURE__ */ e(m, { size: 24, color: "#06080D" })
31
+ }
32
+ )
33
+ ]
34
+ }
35
+ );
36
+ export {
37
+ h as DropzoneFileCard
38
+ };
39
+ //# sourceMappingURL=DropzoneFileCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneFileCard.js","sources":["../../src/Dropzone/DropzoneFileCard.tsx"],"sourcesContent":["import { FileTextIcon, X } from 'lucide-react';\nimport { FC } from 'react';\n\nimport { cn } from '@oneplatformdev/utils';\n\nexport interface DropzoneFileCardProps {\n name: string;\n sizeLabel?: string;\n /** Resolved extension icon (svg src). When absent a generic icon is shown. */\n iconSrc?: string | null;\n disabled?: boolean;\n className?: string;\n onRemove?: (event: React.MouseEvent<HTMLDivElement>) => void;\n}\n\n/**\n * Прямокутна картка файлу для мультизавантаження (variant `file-list`):\n * іконка за типом + назва + розмір + кнопка видалення. Підходить під будь-який\n * тип (pdf / doc / фото / відео) — усі показуються однаково.\n */\nexport const DropzoneFileCard: FC<DropzoneFileCardProps> = ({\n name,\n sizeLabel,\n iconSrc,\n disabled = false,\n className,\n onRemove,\n}) => {\n return (\n <div\n className={cn(\n 'w-full min-h-[72px] rounded-[8px] bg-[#F5F5F5] p-4 flex items-center gap-4',\n className\n )}\n onClick={(event) => event.stopPropagation()}\n >\n {iconSrc ? (\n <img src={iconSrc} alt=\"\" className=\"size-10 shrink-0\" />\n ) : (\n <div className=\"size-10 rounded-[8px] bg-[#9368FF] text-white flex items-center justify-center shrink-0\">\n <FileTextIcon size={20} />\n </div>\n )}\n\n <div className=\"flex flex-col items-start text-left gap-1 min-w-0 flex-1\">\n <span className=\"w-full text-[14px] font-semibold leading-[125%] text-[#06080D] truncate\">\n {name}\n </span>\n {sizeLabel && (\n <span className=\"w-full text-[12px] font-medium leading-[120%] text-[#666A78]\">\n {sizeLabel}\n </span>\n )}\n </div>\n\n {!disabled && onRemove && (\n <div\n className=\"size-6 flex items-center justify-center cursor-pointer shrink-0\"\n onClick={onRemove}\n >\n <X size={24} color=\"#06080D\" />\n </div>\n )}\n </div>\n );\n};\n"],"names":["DropzoneFileCard","name","sizeLabel","iconSrc","disabled","className","onRemove","jsxs","cn","event","jsx","FileTextIcon","X"],"mappings":";;;AAoBO,MAAMA,IAA8C,CAAC;AAAA,EAC1D,MAAAC;AAAA,EACA,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,WAAAC;AAAA,EACA,UAAAC;AACF,MAEI,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC;AAAA,MACT;AAAA,MACAH;AAAA,IAAA;AAAA,IAEF,SAAS,CAACI,MAAUA,EAAM,gBAAA;AAAA,IAEzB,UAAA;AAAA,MAAAN,sBACE,OAAA,EAAI,KAAKA,GAAS,KAAI,IAAG,WAAU,oBAAmB,IAEvD,gBAAAO,EAAC,SAAI,WAAU,2FACb,4BAACC,GAAA,EAAa,MAAM,IAAI,GAC1B;AAAA,MAGF,gBAAAJ,EAAC,OAAA,EAAI,WAAU,4DACb,UAAA;AAAA,QAAA,gBAAAG,EAAC,QAAA,EAAK,WAAU,2EACb,UAAAT,GACH;AAAA,QACCC,KACC,gBAAAQ,EAAC,QAAA,EAAK,WAAU,gEACb,UAAAR,EAAA,CACH;AAAA,MAAA,GAEJ;AAAA,MAEC,CAACE,KAAYE,KACZ,gBAAAI;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,SAASJ;AAAA,UAET,UAAA,gBAAAI,EAACE,GAAA,EAAE,MAAM,IAAI,OAAM,UAAA,CAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAC/B;AAAA,EAAA;AAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropzoneFilePreview.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneFilePreview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAwB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAI1E,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA8D5C,CAAC"}
1
+ {"version":3,"file":"DropzoneFilePreview.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneFilePreview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAwB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAM1E,OAAO,wCAAwC,CAAC;AAChD,OAAO,iDAAiD,CAAC;AACzD,OAAO,yDAAyD,CAAC;AAEjE,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA8E5C,CAAC"}
@@ -1,48 +1,68 @@
1
- import { jsx as n, jsxs as d } from "react/jsx-runtime";
2
- import { useState as u, useEffect as f } from "react";
1
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
2
+ import { useState as p, useEffect as f } from "react";
3
3
  import { File as m } from "lucide-react";
4
- import { DEFAULT_IMAGES_TYPES as p } from "./Dropzone.types.js";
4
+ import { DEFAULT_IMAGES_TYPES as w } from "./Dropzone.types.js";
5
5
  import { isFile as a } from "./DropzoneUtils.js";
6
- import { cn as t } from "@oneplatformdev/utils";
7
- const N = ({ item: e, styles: s }) => {
8
- const [c, r] = u(null), i = a(e) && p.includes(e.type);
6
+ import { cn as i } from "@oneplatformdev/utils";
7
+ import { MediaPlayer as x, MediaProvider as v } from "@vidstack/react";
8
+ import { DefaultVideoLayout as h, defaultLayoutIcons as y } from "@vidstack/react/player/layouts/default";
9
+ import "@vidstack/react/player/styles/base.css";
10
+ import "@vidstack/react/player/styles/default/theme.css";
11
+ import "@vidstack/react/player/styles/default/layouts/video.css";
12
+ const E = ({ item: e, styles: t }) => {
13
+ const [s, o] = p(null), d = a(e) && w.includes(e.type), c = a(e) && e.type.includes("video");
9
14
  return f(() => {
10
- let l = null;
11
- if (a(e) && i) {
12
- const o = new FileReader();
13
- return o.onloadend = () => r(o.result), o.readAsDataURL(e), () => r(null);
15
+ let r = null;
16
+ if (a(e) && d) {
17
+ const n = new FileReader();
18
+ return n.onloadend = () => o(n.result), n.readAsDataURL(e), () => o(null);
14
19
  } else {
15
20
  if (typeof e == "string")
16
- return l = new Image(), l.src = e, l.onload = () => r(e), l.onerror = () => r(null), () => {
17
- l.onload = null, l.onerror = null;
21
+ return r = new Image(), r.src = e, r.onload = () => o(e), r.onerror = () => o(null), () => {
22
+ r.onload = null, r.onerror = null;
18
23
  };
19
- r(null);
24
+ if (a(e) && c) {
25
+ const n = URL.createObjectURL(e);
26
+ return o(n), () => URL.revokeObjectURL(n);
27
+ } else
28
+ o(null);
20
29
  }
21
- return () => r(null);
22
- }, [e, i]), /* @__PURE__ */ n(
30
+ return () => o(null);
31
+ }, [e, d, c]), /* @__PURE__ */ l(
23
32
  "div",
24
33
  {
25
- className: t(
34
+ className: i(
26
35
  "w-32 h-32 border border-gray-300 rounded-md overflow-hidden flex items-center justify-center",
27
- s?.previewWraper
36
+ t?.previewWraper
28
37
  ),
29
- children: c ? /* @__PURE__ */ n(
38
+ children: s && c ? /* @__PURE__ */ l("div", { className: "w-full h-full bg-black", onClick: (r) => r.stopPropagation(), children: /* @__PURE__ */ u(
39
+ x,
40
+ {
41
+ src: a(e) ? { src: s, type: e.type } : s,
42
+ className: "h-full w-full bg-black text-white",
43
+ playsInline: !0,
44
+ children: [
45
+ /* @__PURE__ */ l(v, {}),
46
+ /* @__PURE__ */ l(h, { icons: y })
47
+ ]
48
+ }
49
+ ) }) : s ? /* @__PURE__ */ l(
30
50
  "img",
31
51
  {
32
- src: c,
52
+ src: s,
33
53
  alt: a(e) ? e.name : "external-image",
34
- className: t("w-full h-full object-cover", s?.previewImage)
54
+ className: i("w-full h-full object-cover", t?.previewImage)
35
55
  }
36
- ) : /* @__PURE__ */ d(
56
+ ) : /* @__PURE__ */ u(
37
57
  "div",
38
58
  {
39
- className: t(
59
+ className: i(
40
60
  "flex flex-col items-center justify-center text-gray-500 text-sm p-2 text-center",
41
- s?.previewFile
61
+ t?.previewFile
42
62
  ),
43
63
  children: [
44
- /* @__PURE__ */ n(m, { className: "w-6 h-6" }),
45
- a(e) ? /* @__PURE__ */ n("span", { className: "text-xs break-all", children: e.name }) : /* @__PURE__ */ n("span", { className: "text-xs break-all", children: e })
64
+ /* @__PURE__ */ l(m, { className: "w-6 h-6" }),
65
+ a(e) ? /* @__PURE__ */ l("span", { className: "text-xs break-all", children: e.name }) : /* @__PURE__ */ l("span", { className: "text-xs break-all", children: e })
46
66
  ]
47
67
  }
48
68
  )
@@ -50,6 +70,6 @@ const N = ({ item: e, styles: s }) => {
50
70
  );
51
71
  };
52
72
  export {
53
- N as FilePreview
73
+ E as FilePreview
54
74
  };
55
75
  //# sourceMappingURL=DropzoneFilePreview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropzoneFilePreview.js","sources":["../../src/Dropzone/DropzoneFilePreview.tsx"],"sourcesContent":["import { FC, useEffect, useState } from 'react';\nimport { File as FileIcon } from 'lucide-react';\nimport { DEFAULT_IMAGES_TYPES, FilePreviewProps } from './Dropzone.types';\nimport { isFile } from './DropzoneUtils';\nimport { cn } from '@oneplatformdev/utils';\n\nexport const FilePreview: FC<FilePreviewProps> = ({ item, styles }) => {\n const [preview, setPreview] = useState<string | null>(null);\n\n const isFileTypeImage =\n isFile(item) && DEFAULT_IMAGES_TYPES.includes(item.type);\n\n useEffect(() => {\n let img: HTMLImageElement | null = null;\n\n if (isFile(item) && isFileTypeImage) {\n const reader = new FileReader();\n reader.onloadend = () => setPreview(reader.result as string);\n reader.readAsDataURL(item);\n\n return () => setPreview(null);\n } else if (typeof item === 'string') {\n img = new Image();\n img.src = item;\n img.onload = () => setPreview(item);\n img.onerror = () => setPreview(null);\n\n return () => {\n img!.onload = null;\n img!.onerror = null;\n };\n } else {\n setPreview(null);\n }\n\n return () => setPreview(null);\n }, [item, isFileTypeImage]);\n\n return (\n <div\n className={cn(\n 'w-32 h-32 border border-gray-300 rounded-md overflow-hidden flex items-center justify-center',\n styles?.previewWraper\n )}\n >\n {preview ? (\n <img\n src={preview}\n alt={isFile(item) ? item.name : 'external-image'}\n className={cn('w-full h-full object-cover', styles?.previewImage)}\n />\n ) : (\n <div\n className={cn(\n 'flex flex-col items-center justify-center text-gray-500 text-sm p-2 text-center',\n styles?.previewFile\n )}\n >\n <FileIcon className=\"w-6 h-6\" />\n {!isFile(item) ? (\n <span className=\"text-xs break-all\">{item}</span>\n ) : (\n <span className=\"text-xs break-all\">{item.name}</span>\n )}\n </div>\n )}\n </div>\n );\n};\n"],"names":["FilePreview","item","styles","preview","setPreview","useState","isFileTypeImage","isFile","DEFAULT_IMAGES_TYPES","useEffect","img","reader","jsx","cn","jsxs","FileIcon"],"mappings":";;;;;;AAMO,MAAMA,IAAoC,CAAC,EAAE,MAAAC,GAAM,QAAAC,QAAa;AACrE,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAwB,IAAI,GAEpDC,IACJC,EAAON,CAAI,KAAKO,EAAqB,SAASP,EAAK,IAAI;AAEzD,SAAAQ,EAAU,MAAM;AACd,QAAIC,IAA+B;AAEnC,QAAIH,EAAON,CAAI,KAAKK,GAAiB;AACnC,YAAMK,IAAS,IAAI,WAAA;AACnB,aAAAA,EAAO,YAAY,MAAMP,EAAWO,EAAO,MAAgB,GAC3DA,EAAO,cAAcV,CAAI,GAElB,MAAMG,EAAW,IAAI;AAAA,IAC9B,OAAA;AAAA,UAAW,OAAOH,KAAS;AACzB,eAAAS,IAAM,IAAI,MAAA,GACVA,EAAI,MAAMT,GACVS,EAAI,SAAS,MAAMN,EAAWH,CAAI,GAClCS,EAAI,UAAU,MAAMN,EAAW,IAAI,GAE5B,MAAM;AACX,UAAAM,EAAK,SAAS,MACdA,EAAK,UAAU;AAAA,QACjB;AAEA,MAAAN,EAAW,IAAI;AAAA;AAGjB,WAAO,MAAMA,EAAW,IAAI;AAAA,EAC9B,GAAG,CAACH,GAAMK,CAAe,CAAC,GAGxB,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAX,GAAQ;AAAA,MAAA;AAAA,MAGT,UAAAC,IACC,gBAAAS;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKT;AAAA,UACL,KAAKI,EAAON,CAAI,IAAIA,EAAK,OAAO;AAAA,UAChC,WAAWY,EAAG,8BAA8BX,GAAQ,YAAY;AAAA,QAAA;AAAA,MAAA,IAGlE,gBAAAY;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWD;AAAA,YACT;AAAA,YACAX,GAAQ;AAAA,UAAA;AAAA,UAGV,UAAA;AAAA,YAAA,gBAAAU,EAACG,GAAA,EAAS,WAAU,UAAA,CAAU;AAAA,YAC5BR,EAAON,CAAI,IAGX,gBAAAW,EAAC,QAAA,EAAK,WAAU,qBAAqB,YAAK,KAAA,CAAK,sBAF9C,QAAA,EAAK,WAAU,qBAAqB,UAAAX,EAAA,CAAK;AAAA,UAEK;AAAA,QAAA;AAAA,MAAA;AAAA,IAEnD;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"DropzoneFilePreview.js","sources":["../../src/Dropzone/DropzoneFilePreview.tsx"],"sourcesContent":["import { FC, useEffect, useState } from 'react';\r\nimport { File as FileIcon } from 'lucide-react';\r\nimport { DEFAULT_IMAGES_TYPES, FilePreviewProps } from './Dropzone.types';\r\nimport { isFile } from './DropzoneUtils';\r\nimport { cn } from '@oneplatformdev/utils';\r\nimport { MediaPlayer, MediaProvider } from '@vidstack/react';\r\nimport { defaultLayoutIcons, DefaultVideoLayout } from '@vidstack/react/player/layouts/default';\r\n\r\nimport '@vidstack/react/player/styles/base.css';\r\nimport '@vidstack/react/player/styles/default/theme.css';\r\nimport '@vidstack/react/player/styles/default/layouts/video.css';\r\n\r\nexport const FilePreview: FC<FilePreviewProps> = ({ item, styles }) => {\r\n const [preview, setPreview] = useState<string | null>(null);\r\n\r\n const isFileTypeImage =\r\n isFile(item) && DEFAULT_IMAGES_TYPES.includes(item.type);\r\n const isFileTypeVideo = isFile(item) && item.type.includes('video');\r\n\r\n useEffect(() => {\r\n let img: HTMLImageElement | null = null;\r\n\r\n if (isFile(item) && isFileTypeImage) {\r\n const reader = new FileReader();\r\n reader.onloadend = () => setPreview(reader.result as string);\r\n reader.readAsDataURL(item);\r\n\r\n return () => setPreview(null);\r\n } else if (typeof item === 'string') {\r\n img = new Image();\r\n img.src = item;\r\n img.onload = () => setPreview(item);\r\n img.onerror = () => setPreview(null);\r\n\r\n return () => {\r\n img!.onload = null;\r\n img!.onerror = null;\r\n };\r\n } else if (isFile(item) && isFileTypeVideo) {\r\n const objectUrl = URL.createObjectURL(item);\r\n setPreview(objectUrl);\r\n return () => URL.revokeObjectURL(objectUrl);\r\n } else {\r\n setPreview(null);\r\n }\r\n\r\n return () => setPreview(null);\r\n }, [item, isFileTypeImage, isFileTypeVideo]);\r\n\r\n return (\r\n <div\r\n className={cn(\r\n 'w-32 h-32 border border-gray-300 rounded-md overflow-hidden flex items-center justify-center',\r\n styles?.previewWraper\r\n )}\r\n >\r\n {preview && isFileTypeVideo ? (\r\n <div className=\"w-full h-full bg-black\" onClick={(event) => event.stopPropagation()}>\r\n <MediaPlayer\r\n src={isFile(item) ? { src: preview, type: item.type } : preview}\r\n className=\"h-full w-full bg-black text-white\"\r\n playsInline\r\n >\r\n <MediaProvider />\r\n <DefaultVideoLayout icons={defaultLayoutIcons} />\r\n </MediaPlayer>\r\n </div>\r\n ) : preview ? (\r\n <img\r\n src={preview}\r\n alt={isFile(item) ? item.name : 'external-image'}\r\n className={cn('w-full h-full object-cover', styles?.previewImage)}\r\n />\r\n ) : (\r\n <div\r\n className={cn(\r\n 'flex flex-col items-center justify-center text-gray-500 text-sm p-2 text-center',\r\n styles?.previewFile\r\n )}\r\n >\r\n <FileIcon className=\"w-6 h-6\" />\r\n {!isFile(item) ? (\r\n <span className=\"text-xs break-all\">{item}</span>\r\n ) : (\r\n <span className=\"text-xs break-all\">{item.name}</span>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n"],"names":["FilePreview","item","styles","preview","setPreview","useState","isFileTypeImage","isFile","DEFAULT_IMAGES_TYPES","isFileTypeVideo","useEffect","img","reader","objectUrl","jsx","cn","event","jsxs","MediaPlayer","MediaProvider","DefaultVideoLayout","defaultLayoutIcons","FileIcon"],"mappings":";;;;;;;;;;;AAYO,MAAMA,IAAoC,CAAC,EAAE,MAAAC,GAAM,QAAAC,QAAa;AACrE,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAwB,IAAI,GAEpDC,IACJC,EAAON,CAAI,KAAKO,EAAqB,SAASP,EAAK,IAAI,GACnDQ,IAAkBF,EAAON,CAAI,KAAKA,EAAK,KAAK,SAAS,OAAO;AAElE,SAAAS,EAAU,MAAM;AACd,QAAIC,IAA+B;AAEnC,QAAIJ,EAAON,CAAI,KAAKK,GAAiB;AACnC,YAAMM,IAAS,IAAI,WAAA;AACnB,aAAAA,EAAO,YAAY,MAAMR,EAAWQ,EAAO,MAAgB,GAC3DA,EAAO,cAAcX,CAAI,GAElB,MAAMG,EAAW,IAAI;AAAA,IAC9B,OAAA;AAAA,UAAW,OAAOH,KAAS;AACzB,eAAAU,IAAM,IAAI,MAAA,GACVA,EAAI,MAAMV,GACVU,EAAI,SAAS,MAAMP,EAAWH,CAAI,GAClCU,EAAI,UAAU,MAAMP,EAAW,IAAI,GAE5B,MAAM;AACX,UAAAO,EAAK,SAAS,MACdA,EAAK,UAAU;AAAA,QACjB;AACF,UAAWJ,EAAON,CAAI,KAAKQ,GAAiB;AAC1C,cAAMI,IAAY,IAAI,gBAAgBZ,CAAI;AAC1C,eAAAG,EAAWS,CAAS,GACb,MAAM,IAAI,gBAAgBA,CAAS;AAAA,MAC5C;AACE,QAAAT,EAAW,IAAI;AAAA;AAGjB,WAAO,MAAMA,EAAW,IAAI;AAAA,EAC9B,GAAG,CAACH,GAAMK,GAAiBG,CAAe,CAAC,GAGzC,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAb,GAAQ;AAAA,MAAA;AAAA,MAGT,UAAAC,KAAWM,IACV,gBAAAK,EAAC,OAAA,EAAI,WAAU,0BAAyB,SAAS,CAACE,MAAUA,EAAM,gBAAA,GAChE,UAAA,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,KAAKX,EAAON,CAAI,IAAI,EAAE,KAAKE,GAAS,MAAMF,EAAK,KAAA,IAASE;AAAA,UACxD,WAAU;AAAA,UACV,aAAW;AAAA,UAEX,UAAA;AAAA,YAAA,gBAAAW,EAACK,GAAA,EAAc;AAAA,YACf,gBAAAL,EAACM,GAAA,EAAmB,OAAOC,EAAA,CAAoB;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,EACjD,CACF,IACElB,IACF,gBAAAW;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKX;AAAA,UACL,KAAKI,EAAON,CAAI,IAAIA,EAAK,OAAO;AAAA,UAChC,WAAWc,EAAG,8BAA8Bb,GAAQ,YAAY;AAAA,QAAA;AAAA,MAAA,IAGlE,gBAAAe;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWF;AAAA,YACT;AAAA,YACAb,GAAQ;AAAA,UAAA;AAAA,UAGV,UAAA;AAAA,YAAA,gBAAAY,EAACQ,GAAA,EAAS,WAAU,UAAA,CAAU;AAAA,YAC5Bf,EAAON,CAAI,IAGX,gBAAAa,EAAC,QAAA,EAAK,WAAU,qBAAqB,YAAK,KAAA,CAAK,sBAF9C,QAAA,EAAK,WAAU,qBAAqB,UAAAb,EAAA,CAAK;AAAA,UAEK;AAAA,QAAA;AAAA,MAAA;AAAA,IAEnD;AAAA,EAAA;AAIR;"}
@@ -3,8 +3,16 @@ export declare const transformImageToSrc: (preview?: string | File | null) => st
3
3
  interface SinglePickPreviewProps {
4
4
  item: DropzoneValueItem;
5
5
  disabled?: boolean;
6
- onRemoveClick: (e: React.MouseEvent<HTMLDivElement>) => void;
6
+ onRemoveClick: (e: React.MouseEvent<HTMLElement>) => void;
7
+ onReplaceClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
8
+ labelUploaded?: string;
9
+ labelReplace?: string;
10
+ fileInfo?: {
11
+ name?: string;
12
+ size?: number;
13
+ };
14
+ playerTranslations?: Partial<Record<string, string>>;
7
15
  }
8
- export declare const DropzoneSinglePickPreview: ({ item, disabled, onRemoveClick, }: SinglePickPreviewProps) => import("react/jsx-runtime").JSX.Element;
16
+ export declare const DropzoneSinglePickPreview: ({ item, disabled, onRemoveClick, onReplaceClick, labelReplace, fileInfo, playerTranslations, }: SinglePickPreviewProps) => import("react/jsx-runtime").JSX.Element;
9
17
  export {};
10
18
  //# sourceMappingURL=DropzoneSinglePickPreview.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropzoneSinglePickPreview.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneSinglePickPreview.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAIrD,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,GAAG,IAAI,GAAG,IAAI,KAAG,MAYpE,CAAC;AAEF,UAAU,sBAAsB;IAC9B,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CAC9D;AAED,eAAO,MAAM,yBAAyB,GAAI,oCAIvC,sBAAsB,4CAkCxB,CAAC"}
1
+ {"version":3,"file":"DropzoneSinglePickPreview.d.ts","sourceRoot":"","sources":["../../src/Dropzone/DropzoneSinglePickPreview.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAOrD,OAAO,wCAAwC,CAAC;AAChD,OAAO,iDAAiD,CAAC;AACzD,OAAO,yDAAyD,CAAC;AACjE,OAAO,iCAAiC,CAAC;AAgBzC,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,GAAG,IAAI,GAAG,IAAI,KAAG,MAYpE,CAAC;AAqCF,UAAU,sBAAsB;IAC9B,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC1D,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,kBAAkB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACtD;AAED,eAAO,MAAM,yBAAyB,GAAI,gGAQvC,sBAAsB,4CAsNxB,CAAC"}