@mage-ui/components 0.0.99 → 1.0.4

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 (493) hide show
  1. package/dist/components/buttons/button/Button.d.mts +27 -0
  2. package/dist/components/buttons/button/Button.d.mts.map +1 -0
  3. package/dist/components/buttons/button/Button.mjs +2 -0
  4. package/dist/components/buttons/button/Button.mjs.map +1 -0
  5. package/dist/components/buttons/button-action/ButtonAction.d.mts +31 -0
  6. package/dist/components/buttons/button-action/ButtonAction.d.mts.map +1 -0
  7. package/dist/components/buttons/button-action/ButtonAction.mjs +2 -0
  8. package/dist/components/buttons/button-action/ButtonAction.mjs.map +1 -0
  9. package/dist/components/buttons/button-icon/ButtonIcon.d.mts +29 -0
  10. package/dist/components/buttons/button-icon/ButtonIcon.d.mts.map +1 -0
  11. package/dist/components/buttons/button-icon/ButtonIcon.mjs +2 -0
  12. package/dist/components/buttons/button-icon/ButtonIcon.mjs.map +1 -0
  13. package/dist/components/buttons/button-icon-visual/ButtonIconVisual.d.mts +28 -0
  14. package/dist/components/buttons/button-icon-visual/ButtonIconVisual.d.mts.map +1 -0
  15. package/dist/components/buttons/button-icon-visual/ButtonIconVisual.mjs +2 -0
  16. package/dist/components/buttons/button-icon-visual/ButtonIconVisual.mjs.map +1 -0
  17. package/dist/components/buttons/button-visual/ButtonVisual.d.mts +27 -0
  18. package/dist/components/buttons/button-visual/ButtonVisual.d.mts.map +1 -0
  19. package/dist/components/buttons/button-visual/ButtonVisual.mjs +2 -0
  20. package/dist/components/buttons/button-visual/ButtonVisual.mjs.map +1 -0
  21. package/dist/components/buttons/index.d.mts +5 -0
  22. package/dist/components/controls/autocomplete/Autocomplete.d.mts +35 -0
  23. package/dist/components/controls/autocomplete/Autocomplete.d.mts.map +1 -0
  24. package/dist/components/controls/autocomplete/Autocomplete.mjs +2 -0
  25. package/dist/components/controls/autocomplete/Autocomplete.mjs.map +1 -0
  26. package/dist/components/controls/checkbox/Checkbox.d.mts +65 -0
  27. package/dist/components/controls/checkbox/Checkbox.d.mts.map +1 -0
  28. package/dist/components/controls/checkbox/Checkbox.mjs +2 -0
  29. package/dist/components/controls/checkbox/Checkbox.mjs.map +1 -0
  30. package/dist/components/controls/{checkbox/CheckboxGroup.d.ts → checkbox-group/CheckboxGroup.d.mts} +8 -9
  31. package/dist/components/controls/checkbox-group/CheckboxGroup.d.mts.map +1 -0
  32. package/dist/components/controls/checkbox-group/CheckboxGroup.mjs +2 -0
  33. package/dist/components/controls/checkbox-group/CheckboxGroup.mjs.map +1 -0
  34. package/dist/components/controls/combobox/Combobox.d.mts +58 -0
  35. package/dist/components/controls/combobox/Combobox.d.mts.map +1 -0
  36. package/dist/components/controls/combobox/Combobox.mjs +2 -0
  37. package/dist/components/controls/combobox/Combobox.mjs.map +1 -0
  38. package/dist/components/controls/date-picker/DatePicker.d.mts +95 -0
  39. package/dist/components/controls/date-picker/DatePicker.d.mts.map +1 -0
  40. package/dist/components/controls/date-picker/DatePicker.mjs +2 -0
  41. package/dist/components/controls/date-picker/DatePicker.mjs.map +1 -0
  42. package/dist/components/controls/dropdown/Dropdown.d.mts +83 -0
  43. package/dist/components/controls/dropdown/Dropdown.d.mts.map +1 -0
  44. package/dist/components/controls/dropdown/Dropdown.mjs +2 -0
  45. package/dist/components/controls/dropdown/Dropdown.mjs.map +1 -0
  46. package/dist/components/controls/dropzone/Dropzone.d.mts +70 -0
  47. package/dist/components/controls/dropzone/Dropzone.d.mts.map +1 -0
  48. package/dist/components/controls/dropzone/Dropzone.mjs +2 -0
  49. package/dist/components/controls/dropzone/Dropzone.mjs.map +1 -0
  50. package/dist/components/controls/dropzone/upload-service.mjs +2 -0
  51. package/dist/components/controls/dropzone/upload-service.mjs.map +1 -0
  52. package/dist/components/controls/dropzone/use-dropzone-state.mjs +2 -0
  53. package/dist/components/controls/dropzone/use-dropzone-state.mjs.map +1 -0
  54. package/dist/components/controls/dropzone-files/DropzoneFiles.d.mts +57 -0
  55. package/dist/components/controls/dropzone-files/DropzoneFiles.d.mts.map +1 -0
  56. package/dist/components/controls/dropzone-files/DropzoneFiles.mjs +2 -0
  57. package/dist/components/controls/dropzone-files/DropzoneFiles.mjs.map +1 -0
  58. package/dist/components/controls/file-input/BaseFileInput.d.mts +35 -0
  59. package/dist/components/controls/file-input/BaseFileInput.d.mts.map +1 -0
  60. package/dist/components/controls/file-input/BaseFileInput.mjs +2 -0
  61. package/dist/components/controls/file-input/BaseFileInput.mjs.map +1 -0
  62. package/dist/components/controls/file-input/FileInput.d.mts +24 -0
  63. package/dist/components/controls/file-input/FileInput.d.mts.map +1 -0
  64. package/dist/components/controls/file-input/FileInput.mjs +2 -0
  65. package/dist/components/controls/file-input/FileInput.mjs.map +1 -0
  66. package/dist/components/controls/file-input/FileInputMultiple.d.mts +31 -0
  67. package/dist/components/controls/file-input/FileInputMultiple.d.mts.map +1 -0
  68. package/dist/components/controls/file-input/FileInputMultiple.mjs +2 -0
  69. package/dist/components/controls/file-input/FileInputMultiple.mjs.map +1 -0
  70. package/dist/components/controls/index.d.mts +18 -0
  71. package/dist/components/controls/multi-select/MultiSelect.d.mts +45 -0
  72. package/dist/components/controls/multi-select/MultiSelect.d.mts.map +1 -0
  73. package/dist/components/controls/multi-select/MultiSelect.mjs +2 -0
  74. package/dist/components/controls/multi-select/MultiSelect.mjs.map +1 -0
  75. package/dist/components/controls/multi-select/MultiSelectTags.d.mts +63 -0
  76. package/dist/components/controls/multi-select/MultiSelectTags.d.mts.map +1 -0
  77. package/dist/components/controls/multi-select/MultiSelectTags.mjs +2 -0
  78. package/dist/components/controls/multi-select/MultiSelectTags.mjs.map +1 -0
  79. package/dist/components/controls/password-input/PasswordInput.d.mts +47 -0
  80. package/dist/components/controls/password-input/PasswordInput.d.mts.map +1 -0
  81. package/dist/components/controls/password-input/PasswordInput.mjs +2 -0
  82. package/dist/components/controls/password-input/PasswordInput.mjs.map +1 -0
  83. package/dist/components/controls/password-input-strength/PasswordInputStrength.d.mts +43 -0
  84. package/dist/components/controls/password-input-strength/PasswordInputStrength.d.mts.map +1 -0
  85. package/dist/components/controls/password-input-strength/PasswordInputStrength.mjs +2 -0
  86. package/dist/components/controls/password-input-strength/PasswordInputStrength.mjs.map +1 -0
  87. package/dist/components/controls/radio/Radio.d.mts +53 -0
  88. package/dist/components/controls/radio/Radio.d.mts.map +1 -0
  89. package/dist/components/controls/radio/Radio.mjs +2 -0
  90. package/dist/components/controls/radio/Radio.mjs.map +1 -0
  91. package/dist/components/controls/{radio/RadioGroup.d.ts → radio-group/RadioGroup.d.mts} +8 -10
  92. package/dist/components/controls/radio-group/RadioGroup.d.mts.map +1 -0
  93. package/dist/components/controls/radio-group/RadioGroup.mjs +2 -0
  94. package/dist/components/controls/radio-group/RadioGroup.mjs.map +1 -0
  95. package/dist/components/controls/select/Select.d.mts +38 -0
  96. package/dist/components/controls/select/Select.d.mts.map +1 -0
  97. package/dist/components/controls/select/Select.mjs +2 -0
  98. package/dist/components/controls/select/Select.mjs.map +1 -0
  99. package/dist/components/controls/text-input/TextInput.d.mts +45 -0
  100. package/dist/components/controls/text-input/TextInput.d.mts.map +1 -0
  101. package/dist/components/controls/text-input/TextInput.mjs +2 -0
  102. package/dist/components/controls/text-input/TextInput.mjs.map +1 -0
  103. package/dist/components/controls/textarea/{Textarea.d.ts → Textarea.d.mts} +25 -11
  104. package/dist/components/controls/textarea/Textarea.d.mts.map +1 -0
  105. package/dist/components/controls/textarea/Textarea.mjs +2 -0
  106. package/dist/components/controls/textarea/Textarea.mjs.map +1 -0
  107. package/dist/components/controls/utils/chevron/Chevron.d.mts +1 -0
  108. package/dist/components/controls/utils/chevron/Chevron.mjs +2 -0
  109. package/dist/components/controls/utils/chevron/Chevron.mjs.map +1 -0
  110. package/dist/components/controls/utils/clear-button/ClearButton.d.mts +1 -0
  111. package/dist/components/controls/utils/clear-button/ClearButton.mjs +2 -0
  112. package/dist/components/controls/utils/clear-button/ClearButton.mjs.map +1 -0
  113. package/dist/components/controls/utils/index.d.mts +2 -0
  114. package/dist/components/data-display/avatar/Avatar.d.mts +24 -0
  115. package/dist/components/data-display/avatar/Avatar.d.mts.map +1 -0
  116. package/dist/components/data-display/avatar/Avatar.mjs +2 -0
  117. package/dist/components/data-display/avatar/Avatar.mjs.map +1 -0
  118. package/dist/components/data-display/badge/{Badge.d.ts → Badge.d.mts} +6 -5
  119. package/dist/components/data-display/badge/Badge.d.mts.map +1 -0
  120. package/dist/components/data-display/badge/Badge.mjs +2 -0
  121. package/dist/components/data-display/badge/Badge.mjs.map +1 -0
  122. package/dist/components/data-display/calendar/Calendar.d.mts +66 -0
  123. package/dist/components/data-display/calendar/Calendar.d.mts.map +1 -0
  124. package/dist/components/data-display/calendar/Calendar.mjs +2 -0
  125. package/dist/components/data-display/calendar/Calendar.mjs.map +1 -0
  126. package/dist/components/data-display/icons/icon/{Icon.d.ts → Icon.d.mts} +12 -4
  127. package/dist/components/data-display/icons/icon/Icon.d.mts.map +1 -0
  128. package/dist/components/data-display/icons/icon/Icon.mjs +2 -0
  129. package/dist/components/data-display/icons/icon/Icon.mjs.map +1 -0
  130. package/dist/components/data-display/icons/icon-raw/{IconRaw.d.ts → IconRaw.d.mts} +6 -4
  131. package/dist/components/data-display/icons/icon-raw/IconRaw.d.mts.map +1 -0
  132. package/dist/components/data-display/icons/icon-raw/IconRaw.mjs +2 -0
  133. package/dist/components/data-display/icons/icon-raw/IconRaw.mjs.map +1 -0
  134. package/dist/components/data-display/icons/icon-wrapped/IconWrapped.d.mts +17 -0
  135. package/dist/components/data-display/icons/icon-wrapped/IconWrapped.d.mts.map +1 -0
  136. package/dist/components/data-display/icons/icon-wrapped/IconWrapped.mjs +2 -0
  137. package/dist/components/data-display/icons/icon-wrapped/IconWrapped.mjs.map +1 -0
  138. package/dist/components/data-display/index.d.mts +14 -0
  139. package/dist/components/data-display/indicator/Indicator.d.mts +21 -0
  140. package/dist/components/data-display/indicator/Indicator.d.mts.map +1 -0
  141. package/dist/components/data-display/indicator/Indicator.mjs +2 -0
  142. package/dist/components/data-display/indicator/Indicator.mjs.map +1 -0
  143. package/dist/components/data-display/loader-dot/LoaderDot.d.mts +15 -0
  144. package/dist/components/data-display/loader-dot/LoaderDot.d.mts.map +1 -0
  145. package/dist/components/data-display/loader-dot/LoaderDot.mjs +2 -0
  146. package/dist/components/data-display/loader-dot/LoaderDot.mjs.map +1 -0
  147. package/dist/components/data-display/loader-oval/LoaderOval.d.mts +15 -0
  148. package/dist/components/data-display/loader-oval/LoaderOval.d.mts.map +1 -0
  149. package/dist/components/data-display/loader-oval/LoaderOval.mjs +2 -0
  150. package/dist/components/data-display/loader-oval/LoaderOval.mjs.map +1 -0
  151. package/dist/components/data-display/logos/logo-image/LogoImage.d.mts +33 -0
  152. package/dist/components/data-display/logos/logo-image/LogoImage.d.mts.map +1 -0
  153. package/dist/components/data-display/logos/logo-image/LogoImage.mjs +2 -0
  154. package/dist/components/data-display/logos/logo-image/LogoImage.mjs.map +1 -0
  155. package/dist/components/data-display/logos/logo-svg/LogoSvg.d.mts +29 -0
  156. package/dist/components/data-display/logos/logo-svg/LogoSvg.d.mts.map +1 -0
  157. package/dist/components/data-display/logos/logo-svg/LogoSvg.mjs +2 -0
  158. package/dist/components/data-display/logos/logo-svg/LogoSvg.mjs.map +1 -0
  159. package/dist/components/data-display/tag/Tag.d.mts +36 -0
  160. package/dist/components/data-display/tag/Tag.d.mts.map +1 -0
  161. package/dist/components/data-display/tag/Tag.mjs +2 -0
  162. package/dist/components/data-display/tag/Tag.mjs.map +1 -0
  163. package/dist/components/data-display/tag-group/TagGroup.d.mts +17 -0
  164. package/dist/components/data-display/tag-group/TagGroup.d.mts.map +1 -0
  165. package/dist/components/data-display/tag-group/TagGroup.mjs +2 -0
  166. package/dist/components/data-display/tag-group/TagGroup.mjs.map +1 -0
  167. package/dist/components/data-display/uploaded-file/UploadedFile.d.mts +43 -0
  168. package/dist/components/data-display/uploaded-file/UploadedFile.d.mts.map +1 -0
  169. package/dist/components/data-display/uploaded-file/UploadedFile.mjs +2 -0
  170. package/dist/components/data-display/uploaded-file/UploadedFile.mjs.map +1 -0
  171. package/dist/components/index.d.mts +61 -0
  172. package/dist/components/layouts/index.d.mts +1 -0
  173. package/dist/components/layouts/top-bar/TopBar.d.mts +23 -0
  174. package/dist/components/layouts/top-bar/TopBar.d.mts.map +1 -0
  175. package/dist/components/layouts/top-bar/TopBar.mjs +2 -0
  176. package/dist/components/layouts/top-bar/TopBar.mjs.map +1 -0
  177. package/dist/components/misc/horizontal-divider/{HorizontalDivider.d.ts → HorizontalDivider.d.mts} +4 -4
  178. package/dist/components/misc/horizontal-divider/HorizontalDivider.d.mts.map +1 -0
  179. package/dist/components/misc/horizontal-divider/HorizontalDivider.mjs +2 -0
  180. package/dist/components/misc/horizontal-divider/HorizontalDivider.mjs.map +1 -0
  181. package/dist/components/misc/index.d.mts +4 -0
  182. package/dist/components/misc/scroll-area/ScrollArea.d.mts +30 -0
  183. package/dist/components/misc/scroll-area/ScrollArea.d.mts.map +1 -0
  184. package/dist/components/misc/scroll-area/ScrollArea.mjs +2 -0
  185. package/dist/components/misc/scroll-area/ScrollArea.mjs.map +1 -0
  186. package/dist/components/misc/scroll-area-autosize/ScrollAreaAutosize.d.mts +19 -0
  187. package/dist/components/misc/scroll-area-autosize/ScrollAreaAutosize.d.mts.map +1 -0
  188. package/dist/components/misc/scroll-area-autosize/ScrollAreaAutosize.mjs +2 -0
  189. package/dist/components/misc/scroll-area-autosize/ScrollAreaAutosize.mjs.map +1 -0
  190. package/dist/components/misc/visually-hidden/VisuallyHidden.d.mts +14 -0
  191. package/dist/components/misc/visually-hidden/VisuallyHidden.d.mts.map +1 -0
  192. package/dist/components/misc/visually-hidden/VisuallyHidden.mjs +2 -0
  193. package/dist/components/misc/visually-hidden/VisuallyHidden.mjs.map +1 -0
  194. package/dist/components/{navigation/breadcrumbs/Breadcrumbs.d.ts → navigations/breadcrumbs/Breadcrumbs.d.mts} +6 -4
  195. package/dist/components/navigations/breadcrumbs/Breadcrumbs.d.mts.map +1 -0
  196. package/dist/components/navigations/breadcrumbs/Breadcrumbs.mjs +2 -0
  197. package/dist/components/navigations/breadcrumbs/Breadcrumbs.mjs.map +1 -0
  198. package/dist/components/navigations/index.d.mts +2 -0
  199. package/dist/components/navigations/menu/Menu.d.mts +55 -0
  200. package/dist/components/navigations/menu/Menu.d.mts.map +1 -0
  201. package/dist/components/navigations/menu/Menu.mjs +2 -0
  202. package/dist/components/navigations/menu/Menu.mjs.map +1 -0
  203. package/dist/components/overlays/index.d.mts +12 -0
  204. package/dist/components/overlays/modal/Modal.d.mts +115 -0
  205. package/dist/components/overlays/modal/Modal.d.mts.map +1 -0
  206. package/dist/components/overlays/modal/Modal.mjs +2 -0
  207. package/dist/components/overlays/modal/Modal.mjs.map +1 -0
  208. package/dist/components/overlays/modal/ModalContext.mjs +2 -0
  209. package/dist/components/overlays/modal/ModalContext.mjs.map +1 -0
  210. package/dist/components/overlays/modals/ModalsProvider.d.mts +13 -0
  211. package/dist/components/overlays/modals/ModalsProvider.d.mts.map +1 -0
  212. package/dist/components/overlays/modals/ModalsProvider.mjs +2 -0
  213. package/dist/components/overlays/modals/ModalsProvider.mjs.map +1 -0
  214. package/dist/components/overlays/modals/alert/ModalAlert.d.mts +31 -0
  215. package/dist/components/overlays/modals/alert/ModalAlert.d.mts.map +1 -0
  216. package/dist/components/overlays/modals/alert/ModalAlert.mjs +2 -0
  217. package/dist/components/overlays/modals/alert/ModalAlert.mjs.map +1 -0
  218. package/dist/components/overlays/modals/alert/alert.d.mts +7 -0
  219. package/dist/components/overlays/modals/alert/alert.d.mts.map +1 -0
  220. package/dist/components/overlays/modals/alert/alert.mjs +2 -0
  221. package/dist/components/overlays/modals/alert/alert.mjs.map +1 -0
  222. package/dist/components/overlays/modals/alert/alertById.d.mts +7 -0
  223. package/dist/components/overlays/modals/alert/alertById.d.mts.map +1 -0
  224. package/dist/components/overlays/modals/alert/alertById.mjs +2 -0
  225. package/dist/components/overlays/modals/alert/alertById.mjs.map +1 -0
  226. package/dist/components/overlays/modals/base/BaseModal.d.mts +17 -0
  227. package/dist/components/overlays/modals/base/BaseModal.d.mts.map +1 -0
  228. package/dist/components/overlays/modals/base/BaseModal.mjs +2 -0
  229. package/dist/components/overlays/modals/base/BaseModal.mjs.map +1 -0
  230. package/dist/components/overlays/modals/confirm/ModalConfirm.d.mts +40 -0
  231. package/dist/components/overlays/modals/confirm/ModalConfirm.d.mts.map +1 -0
  232. package/dist/components/overlays/modals/confirm/ModalConfirm.mjs +2 -0
  233. package/dist/components/overlays/modals/confirm/ModalConfirm.mjs.map +1 -0
  234. package/dist/components/overlays/modals/confirm/confirm.d.mts +7 -0
  235. package/dist/components/overlays/modals/confirm/confirm.d.mts.map +1 -0
  236. package/dist/components/overlays/modals/confirm/confirm.mjs +2 -0
  237. package/dist/components/overlays/modals/confirm/confirm.mjs.map +1 -0
  238. package/dist/components/overlays/modals/confirm/confirmById.d.mts +7 -0
  239. package/dist/components/overlays/modals/confirm/confirmById.d.mts.map +1 -0
  240. package/dist/components/overlays/modals/confirm/confirmById.mjs +2 -0
  241. package/dist/components/overlays/modals/confirm/confirmById.mjs.map +1 -0
  242. package/dist/components/overlays/modals/registry/createModal.d.mts +15 -0
  243. package/dist/components/overlays/modals/registry/createModal.d.mts.map +1 -0
  244. package/dist/components/overlays/modals/registry/createModal.mjs +2 -0
  245. package/dist/components/overlays/modals/registry/createModal.mjs.map +1 -0
  246. package/dist/components/overlays/modals/registry/openModalById.d.mts +5 -0
  247. package/dist/components/overlays/modals/registry/openModalById.d.mts.map +1 -0
  248. package/dist/components/overlays/modals/registry/openModalById.mjs +2 -0
  249. package/dist/components/overlays/modals/registry/openModalById.mjs.map +1 -0
  250. package/dist/components/overlays/modals/registry/registerModal.d.mts +7 -0
  251. package/dist/components/overlays/modals/registry/registerModal.d.mts.map +1 -0
  252. package/dist/components/overlays/modals/registry/registerModal.mjs +2 -0
  253. package/dist/components/overlays/modals/registry/registerModal.mjs.map +1 -0
  254. package/dist/components/{data-display/tooltip/Tooltip.d.ts → overlays/tooltip/Tooltip.d.mts} +20 -6
  255. package/dist/components/overlays/tooltip/Tooltip.d.mts.map +1 -0
  256. package/dist/components/overlays/tooltip/Tooltip.mjs +2 -0
  257. package/dist/components/overlays/tooltip/Tooltip.mjs.map +1 -0
  258. package/dist/index.d.mts +67 -0
  259. package/dist/index.mjs +1 -0
  260. package/dist/panda.json +531 -230
  261. package/dist/providers/{MageUiProvider.d.ts → MageUiProvider.d.mts} +1 -1
  262. package/dist/providers/MageUiProvider.d.mts.map +1 -0
  263. package/dist/providers/MageUiProvider.mjs +2 -0
  264. package/dist/providers/MageUiProvider.mjs.map +1 -0
  265. package/dist/providers/index.d.mts +1 -0
  266. package/dist/semedlab/components/data-display/index.d.mts +3 -0
  267. package/dist/semedlab/components/data-display/notification/Notification.d.mts +33 -0
  268. package/dist/semedlab/components/data-display/notification/Notification.d.mts.map +1 -0
  269. package/dist/semedlab/components/data-display/notification/Notification.mjs +2 -0
  270. package/dist/semedlab/components/data-display/notification/Notification.mjs.map +1 -0
  271. package/dist/semedlab/components/data-display/user-group-preview/UserGroupPreview.d.mts +32 -0
  272. package/dist/semedlab/components/data-display/user-group-preview/UserGroupPreview.d.mts.map +1 -0
  273. package/dist/semedlab/components/data-display/user-group-preview/UserGroupPreview.mjs +2 -0
  274. package/dist/semedlab/components/data-display/user-group-preview/UserGroupPreview.mjs.map +1 -0
  275. package/dist/semedlab/components/data-display/user-profile/UserProfile.d.mts +34 -0
  276. package/dist/semedlab/components/data-display/user-profile/UserProfile.d.mts.map +1 -0
  277. package/dist/semedlab/components/data-display/user-profile/UserProfile.mjs +2 -0
  278. package/dist/semedlab/components/data-display/user-profile/UserProfile.mjs.map +1 -0
  279. package/dist/semedlab/components/index.d.mts +10 -0
  280. package/dist/semedlab/components/navigations/backoffice-top-bar/BackofficeTopBar.d.mts +23 -0
  281. package/dist/semedlab/components/navigations/backoffice-top-bar/BackofficeTopBar.d.mts.map +1 -0
  282. package/dist/semedlab/components/navigations/backoffice-top-bar/BackofficeTopBar.mjs +2 -0
  283. package/dist/semedlab/components/navigations/backoffice-top-bar/BackofficeTopBar.mjs.map +1 -0
  284. package/dist/semedlab/components/navigations/breadcrumbs-bar/BreadcrumbsBar.d.mts +23 -0
  285. package/dist/semedlab/components/navigations/breadcrumbs-bar/BreadcrumbsBar.d.mts.map +1 -0
  286. package/dist/semedlab/components/navigations/breadcrumbs-bar/BreadcrumbsBar.mjs +2 -0
  287. package/dist/semedlab/components/navigations/breadcrumbs-bar/BreadcrumbsBar.mjs.map +1 -0
  288. package/dist/semedlab/components/navigations/index.d.mts +5 -0
  289. package/dist/semedlab/components/navigations/notification-list/NotificationList.d.mts +29 -0
  290. package/dist/semedlab/components/navigations/notification-list/NotificationList.d.mts.map +1 -0
  291. package/dist/semedlab/components/navigations/notification-list/NotificationList.mjs +2 -0
  292. package/dist/semedlab/components/navigations/notification-list/NotificationList.mjs.map +1 -0
  293. package/dist/semedlab/components/navigations/notification-menu/NotificationMenu.d.mts +32 -0
  294. package/dist/semedlab/components/navigations/notification-menu/NotificationMenu.d.mts.map +1 -0
  295. package/dist/semedlab/components/navigations/notification-menu/NotificationMenu.mjs +2 -0
  296. package/dist/semedlab/components/navigations/notification-menu/NotificationMenu.mjs.map +1 -0
  297. package/dist/semedlab/components/navigations/profile-menu/ProfileMenu.d.mts +21 -0
  298. package/dist/semedlab/components/navigations/profile-menu/ProfileMenu.d.mts.map +1 -0
  299. package/dist/semedlab/components/navigations/profile-menu/ProfileMenu.mjs +2 -0
  300. package/dist/semedlab/components/navigations/profile-menu/ProfileMenu.mjs.map +1 -0
  301. package/package.json +29 -24
  302. package/dist/components/buttons/button/Button.d.ts +0 -28
  303. package/dist/components/buttons/button/Button.d.ts.map +0 -1
  304. package/dist/components/buttons/button/Button.js +0 -2
  305. package/dist/components/buttons/button/Button.js.map +0 -1
  306. package/dist/components/buttons/button-icon/ButtonIcon.d.ts +0 -21
  307. package/dist/components/buttons/button-icon/ButtonIcon.d.ts.map +0 -1
  308. package/dist/components/buttons/button-icon/ButtonIcon.js +0 -2
  309. package/dist/components/buttons/button-icon/ButtonIcon.js.map +0 -1
  310. package/dist/components/controls/checkbox/Checkbox.d.ts +0 -33
  311. package/dist/components/controls/checkbox/Checkbox.d.ts.map +0 -1
  312. package/dist/components/controls/checkbox/Checkbox.js +0 -2
  313. package/dist/components/controls/checkbox/Checkbox.js.map +0 -1
  314. package/dist/components/controls/checkbox/CheckboxGroup.d.ts.map +0 -1
  315. package/dist/components/controls/checkbox/CheckboxGroup.js +0 -2
  316. package/dist/components/controls/checkbox/CheckboxGroup.js.map +0 -1
  317. package/dist/components/controls/date-picker/DatePicker.d.ts +0 -73
  318. package/dist/components/controls/date-picker/DatePicker.d.ts.map +0 -1
  319. package/dist/components/controls/date-picker/DatePicker.js +0 -2
  320. package/dist/components/controls/date-picker/DatePicker.js.map +0 -1
  321. package/dist/components/controls/dropdown/Combobox.d.ts +0 -44
  322. package/dist/components/controls/dropdown/Combobox.d.ts.map +0 -1
  323. package/dist/components/controls/dropdown/Combobox.js +0 -2
  324. package/dist/components/controls/dropdown/Combobox.js.map +0 -1
  325. package/dist/components/controls/dropdown/DropdownBase.d.ts +0 -39
  326. package/dist/components/controls/dropdown/DropdownBase.d.ts.map +0 -1
  327. package/dist/components/controls/dropdown/DropdownBase.js +0 -2
  328. package/dist/components/controls/dropdown/DropdownBase.js.map +0 -1
  329. package/dist/components/controls/dropdown/Menu.d.ts +0 -52
  330. package/dist/components/controls/dropdown/Menu.d.ts.map +0 -1
  331. package/dist/components/controls/dropdown/Menu.js +0 -2
  332. package/dist/components/controls/dropdown/Menu.js.map +0 -1
  333. package/dist/components/controls/dropdown/Select.d.ts +0 -33
  334. package/dist/components/controls/dropdown/Select.d.ts.map +0 -1
  335. package/dist/components/controls/dropdown/Select.js +0 -2
  336. package/dist/components/controls/dropdown/Select.js.map +0 -1
  337. package/dist/components/controls/input-file/InputFile.d.ts +0 -34
  338. package/dist/components/controls/input-file/InputFile.d.ts.map +0 -1
  339. package/dist/components/controls/input-file/InputFile.js +0 -2
  340. package/dist/components/controls/input-file/InputFile.js.map +0 -1
  341. package/dist/components/controls/input-password/InputPassword.d.ts +0 -32
  342. package/dist/components/controls/input-password/InputPassword.d.ts.map +0 -1
  343. package/dist/components/controls/input-password/InputPassword.js +0 -2
  344. package/dist/components/controls/input-password/InputPassword.js.map +0 -1
  345. package/dist/components/controls/input-text/InputText.d.ts +0 -31
  346. package/dist/components/controls/input-text/InputText.d.ts.map +0 -1
  347. package/dist/components/controls/input-text/InputText.js +0 -2
  348. package/dist/components/controls/input-text/InputText.js.map +0 -1
  349. package/dist/components/controls/multi-switch/MultiSwitch.d.ts +0 -33
  350. package/dist/components/controls/multi-switch/MultiSwitch.d.ts.map +0 -1
  351. package/dist/components/controls/multi-switch/MultiSwitch.js +0 -2
  352. package/dist/components/controls/multi-switch/MultiSwitch.js.map +0 -1
  353. package/dist/components/controls/radio/Radio.d.ts +0 -33
  354. package/dist/components/controls/radio/Radio.d.ts.map +0 -1
  355. package/dist/components/controls/radio/Radio.js +0 -2
  356. package/dist/components/controls/radio/Radio.js.map +0 -1
  357. package/dist/components/controls/radio/RadioGroup.d.ts.map +0 -1
  358. package/dist/components/controls/radio/RadioGroup.js +0 -2
  359. package/dist/components/controls/radio/RadioGroup.js.map +0 -1
  360. package/dist/components/controls/radio/RadioIcon.d.ts +0 -35
  361. package/dist/components/controls/radio/RadioIcon.d.ts.map +0 -1
  362. package/dist/components/controls/radio/RadioIcon.js +0 -2
  363. package/dist/components/controls/radio/RadioIcon.js.map +0 -1
  364. package/dist/components/controls/textarea/Textarea.d.ts.map +0 -1
  365. package/dist/components/controls/textarea/Textarea.js +0 -2
  366. package/dist/components/controls/textarea/Textarea.js.map +0 -1
  367. package/dist/components/data-display/avatar/Avatar.d.ts +0 -19
  368. package/dist/components/data-display/avatar/Avatar.d.ts.map +0 -1
  369. package/dist/components/data-display/avatar/Avatar.js +0 -2
  370. package/dist/components/data-display/avatar/Avatar.js.map +0 -1
  371. package/dist/components/data-display/badge/Badge.d.ts.map +0 -1
  372. package/dist/components/data-display/badge/Badge.js +0 -2
  373. package/dist/components/data-display/badge/Badge.js.map +0 -1
  374. package/dist/components/data-display/carousel/Carousel.d.ts +0 -56
  375. package/dist/components/data-display/carousel/Carousel.d.ts.map +0 -1
  376. package/dist/components/data-display/carousel/Carousel.js +0 -2
  377. package/dist/components/data-display/carousel/Carousel.js.map +0 -1
  378. package/dist/components/data-display/carousel/useEmbla.js +0 -2
  379. package/dist/components/data-display/carousel/useEmbla.js.map +0 -1
  380. package/dist/components/data-display/icons/icon/Icon.d.ts.map +0 -1
  381. package/dist/components/data-display/icons/icon/Icon.js +0 -2
  382. package/dist/components/data-display/icons/icon/Icon.js.map +0 -1
  383. package/dist/components/data-display/icons/icon-raw/IconRaw.d.ts.map +0 -1
  384. package/dist/components/data-display/icons/icon-raw/IconRaw.js +0 -2
  385. package/dist/components/data-display/icons/icon-raw/IconRaw.js.map +0 -1
  386. package/dist/components/data-display/icons/icon-theme/IconTheme.d.ts +0 -17
  387. package/dist/components/data-display/icons/icon-theme/IconTheme.d.ts.map +0 -1
  388. package/dist/components/data-display/icons/icon-theme/IconTheme.js +0 -2
  389. package/dist/components/data-display/icons/icon-theme/IconTheme.js.map +0 -1
  390. package/dist/components/data-display/tables/table/Table.d.ts +0 -79
  391. package/dist/components/data-display/tables/table/Table.d.ts.map +0 -1
  392. package/dist/components/data-display/tables/table/Table.js +0 -2
  393. package/dist/components/data-display/tables/table/Table.js.map +0 -1
  394. package/dist/components/data-display/tables/table/TableBody.js +0 -2
  395. package/dist/components/data-display/tables/table/TableBody.js.map +0 -1
  396. package/dist/components/data-display/tables/table/TableCell.js +0 -2
  397. package/dist/components/data-display/tables/table/TableCell.js.map +0 -1
  398. package/dist/components/data-display/tables/table/TableFooter.js +0 -2
  399. package/dist/components/data-display/tables/table/TableFooter.js.map +0 -1
  400. package/dist/components/data-display/tables/table/TableHead.js +0 -2
  401. package/dist/components/data-display/tables/table/TableHead.js.map +0 -1
  402. package/dist/components/data-display/tables/table/TableHeader.js +0 -2
  403. package/dist/components/data-display/tables/table/TableHeader.js.map +0 -1
  404. package/dist/components/data-display/tables/table/TableRow.js +0 -2
  405. package/dist/components/data-display/tables/table/TableRow.js.map +0 -1
  406. package/dist/components/data-display/tables/table/TableScroll.js +0 -2
  407. package/dist/components/data-display/tables/table/TableScroll.js.map +0 -1
  408. package/dist/components/data-display/tooltip/Tooltip.d.ts.map +0 -1
  409. package/dist/components/data-display/tooltip/Tooltip.js +0 -2
  410. package/dist/components/data-display/tooltip/Tooltip.js.map +0 -1
  411. package/dist/components/forms/form/Form.d.ts +0 -215
  412. package/dist/components/forms/form/Form.d.ts.map +0 -1
  413. package/dist/components/forms/form/Form.js +0 -2
  414. package/dist/components/forms/form/Form.js.map +0 -1
  415. package/dist/components/forms/form/controls/FormCheckbox.d.ts +0 -12
  416. package/dist/components/forms/form/controls/FormCheckbox.d.ts.map +0 -1
  417. package/dist/components/forms/form/controls/FormCheckbox.js +0 -2
  418. package/dist/components/forms/form/controls/FormCheckbox.js.map +0 -1
  419. package/dist/components/forms/form/controls/FormCheckboxGroup.d.ts +0 -18
  420. package/dist/components/forms/form/controls/FormCheckboxGroup.d.ts.map +0 -1
  421. package/dist/components/forms/form/controls/FormCheckboxGroup.js +0 -2
  422. package/dist/components/forms/form/controls/FormCheckboxGroup.js.map +0 -1
  423. package/dist/components/forms/form/controls/FormCombobox.d.ts +0 -12
  424. package/dist/components/forms/form/controls/FormCombobox.d.ts.map +0 -1
  425. package/dist/components/forms/form/controls/FormCombobox.js +0 -2
  426. package/dist/components/forms/form/controls/FormCombobox.js.map +0 -1
  427. package/dist/components/forms/form/controls/FormControl.js +0 -2
  428. package/dist/components/forms/form/controls/FormControl.js.map +0 -1
  429. package/dist/components/forms/form/controls/FormDatePicker.d.ts +0 -13
  430. package/dist/components/forms/form/controls/FormDatePicker.d.ts.map +0 -1
  431. package/dist/components/forms/form/controls/FormDatePicker.js +0 -2
  432. package/dist/components/forms/form/controls/FormDatePicker.js.map +0 -1
  433. package/dist/components/forms/form/controls/FormIfField.d.ts +0 -15
  434. package/dist/components/forms/form/controls/FormIfField.d.ts.map +0 -1
  435. package/dist/components/forms/form/controls/FormIfField.js +0 -2
  436. package/dist/components/forms/form/controls/FormIfField.js.map +0 -1
  437. package/dist/components/forms/form/controls/FormInputFile.d.ts +0 -13
  438. package/dist/components/forms/form/controls/FormInputFile.d.ts.map +0 -1
  439. package/dist/components/forms/form/controls/FormInputFile.js +0 -2
  440. package/dist/components/forms/form/controls/FormInputFile.js.map +0 -1
  441. package/dist/components/forms/form/controls/FormInputPassword.d.ts +0 -9
  442. package/dist/components/forms/form/controls/FormInputPassword.d.ts.map +0 -1
  443. package/dist/components/forms/form/controls/FormInputPassword.js +0 -2
  444. package/dist/components/forms/form/controls/FormInputPassword.js.map +0 -1
  445. package/dist/components/forms/form/controls/FormInputText.d.ts +0 -9
  446. package/dist/components/forms/form/controls/FormInputText.d.ts.map +0 -1
  447. package/dist/components/forms/form/controls/FormInputText.js +0 -2
  448. package/dist/components/forms/form/controls/FormInputText.js.map +0 -1
  449. package/dist/components/forms/form/controls/FormRadio.js +0 -2
  450. package/dist/components/forms/form/controls/FormRadio.js.map +0 -1
  451. package/dist/components/forms/form/controls/FormRadioGroup.d.ts +0 -18
  452. package/dist/components/forms/form/controls/FormRadioGroup.d.ts.map +0 -1
  453. package/dist/components/forms/form/controls/FormRadioGroup.js +0 -2
  454. package/dist/components/forms/form/controls/FormRadioGroup.js.map +0 -1
  455. package/dist/components/forms/form/controls/FormSelect.d.ts +0 -12
  456. package/dist/components/forms/form/controls/FormSelect.d.ts.map +0 -1
  457. package/dist/components/forms/form/controls/FormSelect.js +0 -2
  458. package/dist/components/forms/form/controls/FormSelect.js.map +0 -1
  459. package/dist/components/forms/form/controls/FormTextarea.d.ts +0 -9
  460. package/dist/components/forms/form/controls/FormTextarea.d.ts.map +0 -1
  461. package/dist/components/forms/form/controls/FormTextarea.js +0 -2
  462. package/dist/components/forms/form/controls/FormTextarea.js.map +0 -1
  463. package/dist/components/misc/horizontal-divider/HorizontalDivider.d.ts.map +0 -1
  464. package/dist/components/misc/horizontal-divider/HorizontalDivider.js +0 -2
  465. package/dist/components/misc/horizontal-divider/HorizontalDivider.js.map +0 -1
  466. package/dist/components/misc/visually-hidden/VisuallyHidden.d.ts +0 -13
  467. package/dist/components/misc/visually-hidden/VisuallyHidden.d.ts.map +0 -1
  468. package/dist/components/misc/visually-hidden/VisuallyHidden.js +0 -2
  469. package/dist/components/misc/visually-hidden/VisuallyHidden.js.map +0 -1
  470. package/dist/components/navigation/breadcrumbs/Breadcrumbs.d.ts.map +0 -1
  471. package/dist/components/navigation/breadcrumbs/Breadcrumbs.js +0 -2
  472. package/dist/components/navigation/breadcrumbs/Breadcrumbs.js.map +0 -1
  473. package/dist/components/navigation/tabs/Tabs.d.ts +0 -52
  474. package/dist/components/navigation/tabs/Tabs.d.ts.map +0 -1
  475. package/dist/components/navigation/tabs/Tabs.js +0 -2
  476. package/dist/components/navigation/tabs/Tabs.js.map +0 -1
  477. package/dist/components/navigation/tabs/TabsList.d.ts +0 -13
  478. package/dist/components/navigation/tabs/TabsList.d.ts.map +0 -1
  479. package/dist/components/navigation/tabs/TabsList.js +0 -2
  480. package/dist/components/navigation/tabs/TabsList.js.map +0 -1
  481. package/dist/components/navigation/tabs/TabsPanel.d.ts +0 -14
  482. package/dist/components/navigation/tabs/TabsPanel.d.ts.map +0 -1
  483. package/dist/components/navigation/tabs/TabsPanel.js +0 -2
  484. package/dist/components/navigation/tabs/TabsPanel.js.map +0 -1
  485. package/dist/components/navigation/tabs/TabsTab.d.ts +0 -18
  486. package/dist/components/navigation/tabs/TabsTab.d.ts.map +0 -1
  487. package/dist/components/navigation/tabs/TabsTab.js +0 -2
  488. package/dist/components/navigation/tabs/TabsTab.js.map +0 -1
  489. package/dist/index.d.ts +0 -29
  490. package/dist/index.js +0 -1
  491. package/dist/providers/MageUiProvider.d.ts.map +0 -1
  492. package/dist/providers/MageUiProvider.js +0 -2
  493. package/dist/providers/MageUiProvider.js.map +0 -1
@@ -0,0 +1,95 @@
1
+ import { ComponentProps, ReactNode } from "react";
2
+ import { DateValue } from "@mantine/dates";
3
+
4
+ //#region src/components/controls/date-picker/DatePicker.d.ts
5
+ type DatePickerProps = Omit<ComponentProps<'input'>, 'size' | 'value' | 'onChange'> & {
6
+ label?: ReactNode;
7
+ description?: ReactNode;
8
+ error?: ReactNode;
9
+ classNames?: DatePickerClassNames;
10
+ value?: DateValue;
11
+ onChange?: (date: Date | string | null) => void;
12
+ locale?: string;
13
+ valueFormat?: string;
14
+ firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
15
+ minDate?: Date;
16
+ maxDate?: Date;
17
+ clearable?: boolean;
18
+ };
19
+ declare const DatePicker: ({
20
+ classNames,
21
+ name,
22
+ label,
23
+ placeholder,
24
+ description,
25
+ error,
26
+ required,
27
+ value,
28
+ onChange,
29
+ locale,
30
+ valueFormat,
31
+ firstDayOfWeek,
32
+ minDate,
33
+ maxDate,
34
+ clearable
35
+ }: DatePickerProps) => ReactNode;
36
+ type DatePickerClassNames = InputClassNamesType & CalendarClassNamesType & CalendarHeaderClassNamesType & CalendarDayClassNamesType & CalendarWeekClassNamesType & CalendarMonthClassNamesType & CalendarMonthsListClassNamesType & CalendarYearsListClassNamesType & PopoverClassNamesType;
37
+ type InputClassNamesType = {
38
+ datePicker?: string;
39
+ root?: string;
40
+ wrapper?: string;
41
+ input?: string;
42
+ label?: string;
43
+ error?: string;
44
+ description?: string;
45
+ placeholder?: string;
46
+ section?: string;
47
+ required?: string;
48
+ datePickerRoot?: string;
49
+ };
50
+ type CalendarHeaderClassNamesType = {
51
+ calendarHeaderControl?: string;
52
+ calendarHeader?: string;
53
+ calendarHeaderLevel?: string;
54
+ calendarHeaderControlIcon?: string;
55
+ };
56
+ type CalendarClassNamesType = {
57
+ levelsGroup?: string;
58
+ presetsList?: string;
59
+ presetButton?: string;
60
+ };
61
+ type CalendarDayClassNamesType = {
62
+ day?: string;
63
+ };
64
+ type CalendarWeekClassNamesType = {
65
+ weekDaysRow?: string;
66
+ weekDay?: string;
67
+ weekNumber?: string;
68
+ };
69
+ type CalendarMonthClassNamesType = {
70
+ month?: string;
71
+ monthRow?: string;
72
+ monthCell?: string;
73
+ monthThead?: string;
74
+ monthTbody?: string;
75
+ };
76
+ type CalendarMonthsListClassNamesType = {
77
+ monthsList?: string;
78
+ monthsListRow?: string;
79
+ monthsListCell?: string;
80
+ monthsListControl?: string;
81
+ };
82
+ type CalendarYearsListClassNamesType = {
83
+ yearsList?: string;
84
+ yearsListRow?: string;
85
+ yearsListCell?: string;
86
+ yearsListControl?: string;
87
+ };
88
+ type PopoverClassNamesType = {
89
+ dropdown?: string;
90
+ arrow?: string;
91
+ overlay?: string;
92
+ };
93
+ //#endregion
94
+ export { DatePicker, DatePickerProps };
95
+ //# sourceMappingURL=DatePicker.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.d.mts","names":[],"sources":["../../../../src/components/controls/date-picker/DatePicker.tsx"],"mappings":";;;;KAoDY,eAAA,GAAkB,IAAA,CAAK,cAAA;EACjC,KAAA,GAAQ,SAAA;EACR,WAAA,GAAc,SAAA;EACd,KAAA,GAAQ,SAAA;EACR,UAAA,GAAa,oBAAA;EACb,KAAA,GAAQ,SAAA;EACR,QAAA,IAAY,IAAA,EAAM,IAAA;EAClB,MAAA;EACA,WAAA;EACA,cAAA;EACA,OAAA,GAAU,IAAA;EACV,OAAA,GAAU,IAAA;EACV,SAAA;AAAA;AAAA,cAGW,UAAA;EAAc,UAAA;EAAA,IAAA;EAAA,KAAA;EAAA,WAAA;EAAA,WAAA;EAAA,KAAA;EAAA,QAAA;EAAA,KAAA;EAAA,QAAA;EAAA,MAAA;EAAA,WAAA;EAAA,cAAA;EAAA,OAAA;EAAA,OAAA;EAAA;AAAA,GAgBxB,eAAA,KAAkB,SAAA;AAAA,KAmChB,oBAAA,GACH,mBAAA,GACA,sBAAA,GACA,4BAAA,GACA,yBAAA,GACA,0BAAA,GACA,2BAAA,GACA,gCAAA,GACA,+BAAA,GACA,qBAAA;AAAA,KAEG,mBAAA;EACH,UAAA;EACA,IAAA;EACA,OAAA;EACA,KAAA;EACA,KAAA;EACA,KAAA;EACA,WAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,cAAA;AAAA;AAAA,KA+CG,4BAAA;EACH,qBAAA;EACA,cAAA;EACA,mBAAA;EACA,yBAAA;AAAA;AAAA,KAmBG,sBAAA;EACH,WAAA;EACA,WAAA;EACA,YAAA;AAAA;AAAA,KAWG,yBAAA;EACH,GAAA;AAAA;AAAA,KASG,0BAAA;EACH,WAAA;EACA,OAAA;EACA,UAAA;AAAA;AAAA,KAWG,2BAAA;EACH,KAAA;EACA,QAAA;EACA,SAAA;EACA,UAAA;EACA,UAAA;AAAA;AAAA,KAaG,gCAAA;EACH,UAAA;EACA,aAAA;EACA,cAAA;EACA,iBAAA;AAAA;AAAA,KAeG,+BAAA;EACH,SAAA;EACA,YAAA;EACA,aAAA;EACA,gBAAA;AAAA;AAAA,KAeG,qBAAA;EACH,QAAA;EACA,KAAA;EACA,OAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import{Icon as e}from"../../data-display/icons/icon/Icon.mjs";import{cx as t}from"@mage-ui/styled-system/css";import{datePicker as n,datePickerArrow as r,datePickerButtonIcon as i,datePickerButtonIconRoot as a,datePickerCalendarHeader as o,datePickerCalendarHeaderControl as s,datePickerCalendarHeaderControlIcon as c,datePickerCalendarHeaderLevel as l,datePickerDatePickerRoot as u,datePickerDay as d,datePickerDescription as f,datePickerDropdown as p,datePickerError as m,datePickerIconIcon as h,datePickerIconIconRaw as g,datePickerIconIconRawRoot as _,datePickerIconRoot as v,datePickerInput as y,datePickerLabel as b,datePickerLevelsGroup as x,datePickerMonth as S,datePickerMonthCell as C,datePickerMonthRow as w,datePickerMonthTbody as T,datePickerMonthThead as E,datePickerMonthsList as D,datePickerMonthsListCell as O,datePickerMonthsListControl as k,datePickerMonthsListRow as A,datePickerOverlay as j,datePickerPlaceholder as M,datePickerPresetButton as N,datePickerPresetsList as P,datePickerRequired as F,datePickerRoot as I,datePickerSection as L,datePickerWeekNumber as ee,datePickerWeekday as R,datePickerWeekdaysRow as z,datePickerWrapper as B,datePickerYearsList as V,datePickerYearsListCell as H,datePickerYearsListControl as U,datePickerYearsListRow as W}from"@mage-ui/styled-system/recipes";import{jsx as G}from"react/jsx-runtime";import{DatePickerInput as K}from"@mantine/dates";const q=({classNames:t,name:n,label:r,placeholder:i,description:a,error:o,required:s,value:c,onChange:l,locale:u,valueFormat:d,firstDayOfWeek:f,minDate:p,maxDate:m,clearable:h})=>G(K,{name:n,label:r,placeholder:i,description:a,error:o,withAsterisk:s,value:c,onChange:l,locale:u,valueFormat:d,firstDayOfWeek:f,minDate:p,maxDate:m,clearable:h,classNames:oe(t),popoverProps:{classNames:ae(t)},leftSection:G(e,{path:`/icons/sprite-mage.svg`,name:`mage-date-picker-calendar`,classNames:Y(t)}),clearButtonProps:{className:X()}}),J=e=>({root:t(e?.datePicker??n(),e?.root??I()),wrapper:e?.wrapper??B(),input:t(e?.input??y(),`peer`),label:e?.label??b(),error:e?.error??m(),description:e?.description??f(),placeholder:e?.placeholder??M(),section:t(e?.section??L(),`group`),required:e?.required??F(),datePickerRoot:e?.datePickerRoot??u()}),Y=e=>({icon:e?.icon??h(),root:e?.root??v(),iconRaw:{iconRaw:e?.iconRaw?.iconRaw??g(),root:e?.iconRaw?.root??_()}}),X=e=>t(e?.buttonIcon??i(),e?.buttonIconRoot??a()),Z=e=>({calendarHeader:e?.calendarHeader??o(),calendarHeaderControl:e?.calendarHeaderControl??s(),calendarHeaderLevel:e?.calendarHeaderLevel??l(),calendarHeaderControlIcon:e?.calendarHeaderControlIcon??c()}),Q=e=>({levelsGroup:e?.levelsGroup??x(),presetsList:e?.presetsList??P(),presetButton:e?.presetButton??N()}),$=e=>({day:e?.day??d()}),te=e=>({weekdaysRow:e?.weekDaysRow??z(),weekday:e?.weekDay??R(),weekNumber:e?.weekNumber??ee()}),ne=e=>({month:e?.month??S(),monthRow:e?.monthRow??w(),monthThead:e?.monthThead??E(),monthTbody:e?.monthTbody??T(),monthCell:e?.monthCell??C()}),re=e=>({monthsList:e?.monthsList??D(),monthsListRow:e?.monthsListRow??A(),monthsListCell:e?.monthsListCell??O(),monthsListControl:e?.monthsListControl??k()}),ie=e=>({yearsList:e?.yearsList??V(),yearsListRow:e?.yearsListRow??W(),yearsListCell:e?.yearsListCell??H(),yearsListControl:e?.yearsListControl??U()}),ae=e=>({dropdown:e?.dropdown??p(),arrow:e?.arrow??r(),overlay:e?.overlay??j()}),oe=e=>({...J(e),...Q(e),...Z(e),...$(e),...te(e),...ne(e),...re(e),...ie(e)});export{q as DatePicker};
2
+ //# sourceMappingURL=DatePicker.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.mjs","names":[],"sources":["../../../../src/components/controls/date-picker/DatePicker.tsx"],"sourcesContent":["import type { ComponentProps, ReactNode } from 'react';\n\nimport { cx } from '@mage-ui/styled-system/css';\nimport {\n datePicker,\n datePickerArrow,\n datePickerButtonIcon,\n datePickerButtonIconRoot,\n datePickerCalendarHeader,\n datePickerCalendarHeaderControl,\n datePickerCalendarHeaderControlIcon,\n datePickerCalendarHeaderLevel,\n datePickerDatePickerRoot,\n datePickerDay,\n datePickerDescription,\n datePickerDropdown,\n datePickerError,\n datePickerIconIcon,\n datePickerIconIconRaw,\n datePickerIconIconRawRoot,\n datePickerIconRoot,\n datePickerInput,\n datePickerLabel,\n datePickerLevelsGroup,\n datePickerMonth,\n datePickerMonthCell,\n datePickerMonthRow,\n datePickerMonthsList,\n datePickerMonthsListCell,\n datePickerMonthsListControl,\n datePickerMonthsListRow,\n datePickerMonthTbody,\n datePickerMonthThead,\n datePickerOverlay,\n datePickerPlaceholder,\n datePickerPresetButton,\n datePickerPresetsList,\n datePickerRequired,\n datePickerRoot,\n datePickerSection,\n datePickerWeekday,\n datePickerWeekdaysRow,\n datePickerWeekNumber,\n datePickerWrapper,\n datePickerYearsList,\n datePickerYearsListCell,\n datePickerYearsListControl,\n datePickerYearsListRow,\n} from '@mage-ui/styled-system/recipes';\nimport { DatePickerInput, type DateValue } from '@mantine/dates';\nimport { Icon, type IconProps } from '@/components/data-display';\n\nexport type DatePickerProps = Omit<ComponentProps<'input'>, 'size' | 'value' | 'onChange'> & {\n label?: ReactNode;\n description?: ReactNode;\n error?: ReactNode;\n classNames?: DatePickerClassNames;\n value?: DateValue;\n onChange?: (date: Date | string | null) => void;\n locale?: string;\n valueFormat?: string;\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n minDate?: Date;\n maxDate?: Date;\n clearable?: boolean;\n};\n\nexport const DatePicker = ({\n classNames,\n name,\n label,\n placeholder,\n description,\n error,\n required,\n value,\n onChange,\n locale,\n valueFormat,\n firstDayOfWeek,\n minDate,\n maxDate,\n clearable,\n}: DatePickerProps): ReactNode => {\n return (\n <DatePickerInput\n name={name}\n label={label}\n placeholder={placeholder}\n description={description}\n error={error}\n withAsterisk={required}\n value={value}\n onChange={onChange}\n locale={locale}\n valueFormat={valueFormat}\n firstDayOfWeek={firstDayOfWeek}\n minDate={minDate}\n maxDate={maxDate}\n clearable={clearable}\n classNames={datePickerClassNames(classNames)}\n popoverProps={{\n classNames: popoverClassNames(classNames),\n }}\n leftSection={\n <Icon\n path='/icons/sprite-mage.svg'\n name='mage-date-picker-calendar'\n classNames={iconClassNames(classNames)}\n />\n }\n clearButtonProps={{\n className: buttonIconClassNames(),\n }}\n />\n );\n};\n\ntype DatePickerClassNames =\n InputClassNamesType &\n CalendarClassNamesType &\n CalendarHeaderClassNamesType &\n CalendarDayClassNamesType &\n CalendarWeekClassNamesType &\n CalendarMonthClassNamesType &\n CalendarMonthsListClassNamesType &\n CalendarYearsListClassNamesType &\n PopoverClassNamesType;\n\ntype InputClassNamesType = {\n datePicker?: string;\n root?: string;\n wrapper?: string;\n input?: string;\n label?: string;\n error?: string;\n description?: string;\n placeholder?: string;\n section?: string;\n required?: string;\n datePickerRoot?: string;\n};\n\nconst inputClassNames = (classNames?: InputClassNamesType) => {\n return {\n root: cx(\n classNames?.datePicker ?? datePicker(),\n classNames?.root ?? datePickerRoot(),\n ),\n wrapper: classNames?.wrapper ?? datePickerWrapper(),\n input: cx(classNames?.input ?? datePickerInput(), 'peer'),\n label: classNames?.label ?? datePickerLabel(),\n error: classNames?.error ?? datePickerError(),\n description: classNames?.description ?? datePickerDescription(),\n placeholder: classNames?.placeholder ?? datePickerPlaceholder(),\n section: cx(classNames?.section ?? datePickerSection(), 'group'),\n required: classNames?.required ?? datePickerRequired(),\n datePickerRoot: classNames?.datePickerRoot ?? datePickerDatePickerRoot(),\n };\n};\n\ntype IconClassNamesType = IconProps['classNames'];\n\nconst iconClassNames = (classNames?: IconClassNamesType) => {\n return {\n icon: classNames?.icon ?? datePickerIconIcon(),\n root: classNames?.root ?? datePickerIconRoot(),\n iconRaw: {\n iconRaw: classNames?.iconRaw?.iconRaw ?? datePickerIconIconRaw(),\n root: classNames?.iconRaw?.root ?? datePickerIconIconRawRoot(),\n },\n };\n}\n\ntype ButtonIconClassNamesType = {\n buttonIcon?: string;\n buttonIconRoot?: string;\n}\n\nconst buttonIconClassNames = (classNames?: ButtonIconClassNamesType) => {\n return cx(\n classNames?.buttonIcon ?? datePickerButtonIcon(), \n classNames?.buttonIconRoot ?? datePickerButtonIconRoot(),\n );\n}\n\n\ntype CalendarHeaderClassNamesType = {\n calendarHeaderControl?: string;\n calendarHeader?: string;\n calendarHeaderLevel?: string;\n calendarHeaderControlIcon?: string;\n};\n\nconst calendarHeaderClassNames = (\n classNames?: CalendarHeaderClassNamesType,\n) => {\n return {\n calendarHeader:\n classNames?.calendarHeader ?? datePickerCalendarHeader(),\n calendarHeaderControl:\n classNames?.calendarHeaderControl ?? datePickerCalendarHeaderControl(),\n calendarHeaderLevel:\n classNames?.calendarHeaderLevel ?? datePickerCalendarHeaderLevel(),\n calendarHeaderControlIcon:\n classNames?.calendarHeaderControlIcon ??\n datePickerCalendarHeaderControlIcon(),\n };\n};\n\ntype CalendarClassNamesType = {\n levelsGroup?: string;\n presetsList?: string;\n presetButton?: string;\n};\n\nconst calendarClassNames = (classNames?: CalendarClassNamesType) => {\n return {\n levelsGroup: classNames?.levelsGroup ?? datePickerLevelsGroup(),\n presetsList: classNames?.presetsList ?? datePickerPresetsList(),\n presetButton: classNames?.presetButton ?? datePickerPresetButton(),\n };\n}\n\ntype CalendarDayClassNamesType = {\n day?: string;\n};\n\nconst calendarDayClassNames = (classNames?: CalendarDayClassNamesType) => {\n return {\n day: classNames?.day ?? datePickerDay(),\n };\n}\n\ntype CalendarWeekClassNamesType = {\n weekDaysRow?: string;\n weekDay?: string;\n weekNumber?: string;\n};\n\nconst calendarWeekClassNames = (classNames?: CalendarWeekClassNamesType) => {\n return {\n weekdaysRow: classNames?.weekDaysRow ?? datePickerWeekdaysRow(),\n weekday: classNames?.weekDay ?? datePickerWeekday(),\n weekNumber: classNames?.weekNumber ?? datePickerWeekNumber(),\n };\n}\n\ntype CalendarMonthClassNamesType = {\n month?: string;\n monthRow?: string;\n monthCell?: string;\n monthThead?: string;\n monthTbody?: string;\n};\n\nconst calendarMonthClassNames = (classNames?: CalendarMonthClassNamesType) => {\n return {\n month: classNames?.month ?? datePickerMonth(),\n monthRow: classNames?.monthRow ?? datePickerMonthRow(),\n monthThead: classNames?.monthThead ?? datePickerMonthThead(),\n monthTbody: classNames?.monthTbody ?? datePickerMonthTbody(),\n monthCell: classNames?.monthCell ?? datePickerMonthCell(),\n };\n};\n\ntype CalendarMonthsListClassNamesType = {\n monthsList?: string;\n monthsListRow?: string;\n monthsListCell?: string;\n monthsListControl?: string;\n};\n\nconst calendarMonthsListClassNames = (\n classNames?: CalendarMonthsListClassNamesType,\n) => {\n return {\n monthsList: classNames?.monthsList ?? datePickerMonthsList(),\n monthsListRow: classNames?.monthsListRow ?? datePickerMonthsListRow(),\n monthsListCell: classNames?.monthsListCell ?? datePickerMonthsListCell(),\n monthsListControl:\n classNames?.monthsListControl ?? datePickerMonthsListControl(),\n };\n};\n\ntype CalendarYearsListClassNamesType = {\n yearsList?: string;\n yearsListRow?: string;\n yearsListCell?: string;\n yearsListControl?: string;\n};\n\nconst calendarYearsListClassNames = (\n classNames?: CalendarYearsListClassNamesType,\n) => {\n return {\n yearsList: classNames?.yearsList ?? datePickerYearsList(),\n yearsListRow: classNames?.yearsListRow ?? datePickerYearsListRow(),\n yearsListCell: classNames?.yearsListCell ?? datePickerYearsListCell(),\n yearsListControl:\n classNames?.yearsListControl ?? datePickerYearsListControl(),\n };\n};\n\ntype PopoverClassNamesType = {\n dropdown?: string;\n arrow?: string;\n overlay?: string;\n};\n\nconst popoverClassNames = (classNames?: PopoverClassNamesType) => {\n return {\n dropdown: classNames?.dropdown ?? datePickerDropdown(),\n arrow: classNames?.arrow ?? datePickerArrow(),\n overlay: classNames?.overlay ?? datePickerOverlay(),\n };\n};\n\nconst datePickerClassNames = (classNames?: DatePickerClassNames) => {\n return {\n ...inputClassNames(classNames),\n ...calendarClassNames(classNames),\n ...calendarHeaderClassNames(classNames),\n ...calendarDayClassNames(classNames),\n ...calendarWeekClassNames(classNames),\n ...calendarMonthClassNames(classNames),\n ...calendarMonthsListClassNames(classNames),\n ...calendarYearsListClassNames(classNames),\n };\n};\n"],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import { ComboboxStore } from "@mantine/core";
2
+ import "react/jsx-runtime";
3
+ import { ReactNode } from "react";
4
+
5
+ //#region src/components/controls/dropdown/Dropdown.d.ts
6
+ type DefaultEndSlotClassNames = {
7
+ chevron?: {
8
+ iconWrapped?: string;
9
+ root?: string;
10
+ open?: {
11
+ iconRaw?: string;
12
+ root?: string;
13
+ };
14
+ close?: {
15
+ iconRaw?: string;
16
+ root?: string;
17
+ };
18
+ };
19
+ clearButton?: {
20
+ buttonIcon?: string;
21
+ root?: string;
22
+ icon?: string;
23
+ iconRaw?: {
24
+ iconRaw?: string;
25
+ root?: string;
26
+ };
27
+ };
28
+ };
29
+ type DropdownTextInputClassNames = {
30
+ textInput?: string;
31
+ root?: string;
32
+ label?: string;
33
+ description?: string;
34
+ error?: string;
35
+ wrapper?: string;
36
+ input?: string;
37
+ section?: string;
38
+ required?: string;
39
+ endSlot?: DefaultEndSlotClassNames;
40
+ };
41
+ type DropdownProps = {
42
+ onChange: (event: ComboboxStore, value?: string) => void;
43
+ onFocus: (event: ComboboxStore) => void;
44
+ onBlur: (event: ComboboxStore) => void;
45
+ onClick: (event: ComboboxStore) => void;
46
+ children: ReactNode;
47
+ startSlot?: ReactNode;
48
+ endSlot?: ReactNode;
49
+ readOnly?: boolean;
50
+ name?: string;
51
+ label?: ReactNode;
52
+ description?: ReactNode;
53
+ error?: ReactNode;
54
+ disabled?: boolean;
55
+ placeholder?: string;
56
+ withinPortal?: boolean;
57
+ keepMounted?: boolean;
58
+ clearable?: boolean;
59
+ chevron?: boolean;
60
+ offset?: number;
61
+ classNames?: {
62
+ dropdown?: string;
63
+ root?: string;
64
+ options?: string;
65
+ option?: string;
66
+ empty?: string;
67
+ search?: string;
68
+ textInput?: DropdownTextInputClassNames;
69
+ scrollArea?: {
70
+ scrollArea?: string;
71
+ };
72
+ };
73
+ value?: string;
74
+ search?: string;
75
+ setValue: (value: string | undefined, combobox: ComboboxStore) => void;
76
+ store?: ComboboxStore;
77
+ target?: ReactNode;
78
+ btnClearLabel?: string;
79
+ dropdownHeight?: number | string;
80
+ };
81
+ //#endregion
82
+ export { DropdownProps, DropdownTextInputClassNames };
83
+ //# sourceMappingURL=Dropdown.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropdown.d.mts","names":[],"sources":["../../../../src/components/controls/dropdown/Dropdown.tsx"],"mappings":";;;;;KAqCY,wBAAA;EACV,OAAA;IACE,WAAA;IACA,IAAA;IACA,IAAA;MACE,OAAA;MACA,IAAA;IAAA;IAEF,KAAA;MACE,OAAA;MACA,IAAA;IAAA;EAAA;EAGJ,WAAA;IACE,UAAA;IACA,IAAA;IACA,IAAA;IACA,OAAA;MACE,OAAA;MACA,IAAA;IAAA;EAAA;AAAA;AAAA,KAKM,2BAAA;EACV,SAAA;EACA,IAAA;EACA,KAAA;EACA,WAAA;EACA,KAAA;EACA,OAAA;EACA,KAAA;EACA,OAAA;EACA,QAAA;EACA,OAAA,GAAU,wBAAA;AAAA;AAAA,KAGA,aAAA;EACV,QAAA,GAAW,KAAA,EAAO,aAAA,EAAe,KAAA;EACjC,OAAA,GAAU,KAAA,EAAO,aAAA;EACjB,MAAA,GAAS,KAAA,EAAO,aAAA;EAChB,OAAA,GAAU,KAAA,EAAO,aAAA;EACjB,QAAA,EAAU,SAAA;EACV,SAAA,GAAY,SAAA;EACZ,OAAA,GAAU,SAAA;EACV,QAAA;EACA,IAAA;EACA,KAAA,GAAQ,SAAA;EACR,WAAA,GAAc,SAAA;EACd,KAAA,GAAQ,SAAA;EACR,QAAA;EACA,WAAA;EACA,YAAA;EACA,WAAA;EACA,SAAA;EACA,OAAA;EACA,MAAA;EACA,UAAA;IACE,QAAA;IACA,IAAA;IACA,OAAA;IACA,MAAA;IACA,KAAA;IACA,MAAA;IACA,SAAA,GAAY,2BAAA;IACZ,UAAA;MACE,UAAA;IAAA;EAAA;EAGJ,KAAA;EACA,MAAA;EACA,QAAA,GAAW,KAAA,sBAA2B,QAAA,EAAU,aAAA;EAChD,KAAA,GAAQ,aAAA;EACR,MAAA,GAAS,SAAA;EACT,aAAA;EACA,cAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import{ScrollAreaAutosize as e}from"../../misc/scroll-area-autosize/ScrollAreaAutosize.mjs";import{TextInput as t}from"../text-input/TextInput.mjs";import{Chevron as n}from"../utils/chevron/Chevron.mjs";import{ClearButton as r}from"../utils/clear-button/ClearButton.mjs";import{cx as i}from"@mage-ui/styled-system/css";import{dropdown as a,dropdownChevron as o,dropdownChevronIcon as s,dropdownChevronIconRoot as c,dropdownChevronRoot as l,dropdownClearButton as u,dropdownClearButtonIcon as d,dropdownClearButtonIconRaw as f,dropdownClearButtonIconRawRoot as p,dropdownClearButtonRoot as m,dropdownEmpty as h,dropdownOption as g,dropdownOptions as _,dropdownRoot as v,dropdownScrollAreaAutosize as y,dropdownTextInput as b,dropdownTextInputDescription as x,dropdownTextInputError as S,dropdownTextInputInput as C,dropdownTextInputLabel as w,dropdownTextInputRequired as T,dropdownTextInputRoot as E,dropdownTextInputSection as D,dropdownTextInputWrapper as O}from"@mage-ui/styled-system/recipes";import{Combobox as k,useCombobox as A}from"@mantine/core";import{Fragment as j,jsx as M,jsxs as N}from"react/jsx-runtime";function P({clearable:e,chevron:t,value:i,setValue:a,combobox:h,classNames:g,btnClearLabel:_=`Clear selection`}){return M(j,{children:e&&(i??``)!==``?M(r,{onClick:()=>{a(void 0,h),h.resetSelectedOption()},label:_,name:`mage-clear-button-x`,classNames:{buttonIcon:g?.clearButton?.buttonIcon??u(),root:g?.clearButton?.root??m(),icon:g?.clearButton?.icon??d(),iconRaw:{iconRaw:g?.clearButton?.iconRaw?.iconRaw??f(),root:g?.clearButton?.iconRaw?.root??p()}}}):t&&M(n,{chevronOpen:`mage-dropdown-chevron-down`,chevronClose:`mage-dropdown-chevron-up`,classNames:{iconWrapped:g?.chevron?.iconWrapped??o(),root:g?.chevron?.root??l(),open:{iconRaw:g?.chevron?.open?.iconRaw??s(),root:g?.chevron?.open?.root??c()},close:{iconRaw:g?.chevron?.close?.iconRaw??s(),root:g?.chevron?.close?.root??c({invert:!0})}}})})}function F({onChange:n,onBlur:r,onFocus:o,onClick:s,disabled:c,children:l,startSlot:u,endSlot:d,readOnly:f,label:p,placeholder:m,name:j,description:F,error:I,classNames:L,withinPortal:R,keepMounted:z,clearable:B,chevron:V,offset:H,value:U,search:W,setValue:G,store:K,target:q,btnClearLabel:J,dropdownHeight:Y=192}){let X=K??A({scrollBehavior:`smooth`,onDropdownClose:()=>X.resetSelectedOption()}),Z=(U??``)===``?`none`:`auto`,Q={};return B&&(Q[`--dropdown-text-input-right-section-pointer-events`]=Z),N(k,{width:`target`,store:X,withinPortal:R,keepMounted:z,offset:H||8,onOptionSubmit:e=>{G(e,X)},classNames:{dropdown:i(L?.dropdown??a(),L?.root??v()),options:L?.options??_(),option:L?.option??g(),empty:L?.empty??h(),search:L?.search},children:[M(k.Target,{children:q||M(t,{readOnly:f??!1,value:W??U??``,startSlot:u,endSlot:d??M(P,{clearable:B,chevron:V,value:U,setValue:G,combobox:X,btnClearLabel:J??`Clear selection`,classNames:L?.textInput?.endSlot}),onClick:e=>{s(X)},onChange:e=>{e.stopPropagation(),n(X,e.currentTarget?.value)},onFocus:e=>{o(X)},onBlur:e=>{r(X),e.stopPropagation()},label:p,placeholder:m,description:F,name:j,error:I,disabled:c,classNames:{root:L?.textInput?.root??E(),textInput:L?.textInput?.textInput??b(),label:L?.textInput?.label??w(),description:L?.textInput?.description??x(),error:L?.textInput?.error??S(),wrapper:L?.textInput?.wrapper??O(),input:L?.textInput?.input??C(),section:L?.textInput?.section??D(),required:L?.textInput?.required??T()},style:Q})}),M(k.Dropdown,{children:M(e,{type:`scroll`,mah:Y,classNames:{scrollArea:L?.scrollArea?.scrollArea??y()},children:l})})]})}F.Options=k.Options,F.Options.displayName=`Dropdown.Options`,F.Option=k.Option,F.Option.displayName=`Dropdown.Option`,F.Empty=k.Empty,F.Empty.displayName=`Dropdown.Empty`,F.Search=k.Search,F.Search.displayName=`Dropdown.Search`,F.EventsTarget=k.EventsTarget,F.EventsTarget.displayName=`Dropdown.EventsTarget`;export{F as Dropdown};
2
+ //# sourceMappingURL=Dropdown.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropdown.mjs","names":["MantineCombobox","TextInput"],"sources":["../../../../src/components/controls/dropdown/Dropdown.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport {\n type ComboboxStore,\n Combobox as MantineCombobox,\n useCombobox,\n} from '@mantine/core';\nimport { TextInput } from '../text-input/TextInput';\nimport { ClearButton, Chevron } from '../utils';\nimport { ScrollAreaAutosize } from '../../misc';\nimport { cx } from '@mage-ui/styled-system/css';\nimport {\n dropdown,\n dropdownRoot,\n dropdownChevron,\n dropdownChevronRoot,\n dropdownChevronIcon,\n dropdownChevronIconRoot,\n dropdownClearButton,\n dropdownClearButtonRoot,\n dropdownClearButtonIcon,\n dropdownClearButtonIconRaw,\n dropdownClearButtonIconRawRoot,\n dropdownEmpty,\n dropdownOption,\n dropdownOptions,\n dropdownTextInput,\n dropdownTextInputDescription,\n dropdownTextInputError,\n dropdownTextInputInput,\n dropdownTextInputLabel,\n dropdownTextInputRequired,\n dropdownTextInputRoot,\n dropdownTextInputSection,\n dropdownTextInputWrapper,\n dropdownScrollAreaAutosize,\n} from '@mage-ui/styled-system/recipes';\n\nexport type DefaultEndSlotClassNames = {\n chevron?: {\n iconWrapped?: string;\n root?: string;\n open?: {\n iconRaw?: string;\n root?: string;\n };\n close?: {\n iconRaw?: string;\n root?: string;\n };\n };\n clearButton?: {\n buttonIcon?: string;\n root?: string;\n icon?: string;\n iconRaw?: {\n iconRaw?: string;\n root?: string;\n };\n };\n};\n\nexport type DropdownTextInputClassNames = {\n textInput?: string;\n root?: string;\n label?: string;\n description?: string;\n error?: string;\n wrapper?: string;\n input?: string;\n section?: string;\n required?: string;\n endSlot?: DefaultEndSlotClassNames;\n};\n\nexport type DropdownProps = {\n onChange: (event: ComboboxStore, value?: string) => void;\n onFocus: (event: ComboboxStore) => void;\n onBlur: (event: ComboboxStore) => void;\n onClick: (event: ComboboxStore) => void;\n children: ReactNode;\n startSlot?: ReactNode;\n endSlot?: ReactNode;\n readOnly?: boolean;\n name?: string;\n label?: ReactNode;\n description?: ReactNode;\n error?: ReactNode;\n disabled?: boolean;\n placeholder?: string;\n withinPortal?: boolean;\n keepMounted?: boolean;\n clearable?: boolean;\n chevron?: boolean;\n offset?: number;\n classNames?: {\n dropdown?: string;\n root?: string;\n options?: string;\n option?: string;\n empty?: string;\n search?: string;\n textInput?: DropdownTextInputClassNames;\n scrollArea?: {\n scrollArea?: string;\n };\n };\n value?: string;\n search?: string;\n setValue: (value: string | undefined, combobox: ComboboxStore) => void;\n store?: ComboboxStore;\n target?: ReactNode;\n btnClearLabel?: string;\n dropdownHeight?: number | string;\n};\n\nexport type DefaultEndSlotProps = {\n clearable?: boolean;\n chevron?: boolean;\n value?: string;\n setValue: (val: string | undefined, combobox: ComboboxStore) => void;\n combobox: ComboboxStore;\n classNames?: DefaultEndSlotClassNames;\n btnClearLabel: string;\n};\n\nfunction DefaultEndSlot({\n clearable,\n chevron,\n value,\n setValue,\n combobox,\n classNames,\n btnClearLabel = 'Clear selection',\n}: DefaultEndSlotProps) {\n const showClearable = clearable && (value ?? '') !== '';\n return (\n <>\n {showClearable ? (\n <ClearButton\n onClick={() => {\n setValue(undefined, combobox);\n combobox.resetSelectedOption();\n }}\n label={btnClearLabel}\n name='mage-clear-button-x'\n classNames={{\n buttonIcon:\n classNames?.clearButton?.buttonIcon ?? dropdownClearButton(),\n root: classNames?.clearButton?.root ?? dropdownClearButtonRoot(),\n icon: classNames?.clearButton?.icon ?? dropdownClearButtonIcon(),\n iconRaw: {\n iconRaw:\n classNames?.clearButton?.iconRaw?.iconRaw ??\n dropdownClearButtonIconRaw(),\n root:\n classNames?.clearButton?.iconRaw?.root ??\n dropdownClearButtonIconRawRoot(),\n },\n }}\n />\n ) : (\n chevron && (\n <Chevron\n chevronOpen='mage-dropdown-chevron-down'\n chevronClose='mage-dropdown-chevron-up'\n classNames={{\n iconWrapped:\n classNames?.chevron?.iconWrapped ?? dropdownChevron(),\n root: classNames?.chevron?.root ?? dropdownChevronRoot(),\n open: {\n iconRaw:\n classNames?.chevron?.open?.iconRaw ?? dropdownChevronIcon(),\n root:\n classNames?.chevron?.open?.root ?? dropdownChevronIconRoot(),\n },\n close: {\n iconRaw:\n classNames?.chevron?.close?.iconRaw ?? dropdownChevronIcon(),\n root:\n classNames?.chevron?.close?.root ??\n dropdownChevronIconRoot({ invert: true }),\n },\n }}\n />\n )\n )}\n </>\n );\n}\n\nexport function Dropdown({\n onChange,\n onBlur,\n onFocus,\n onClick,\n disabled,\n children,\n startSlot,\n endSlot,\n readOnly,\n label,\n placeholder,\n name,\n description,\n error,\n classNames,\n withinPortal,\n keepMounted,\n clearable,\n chevron,\n offset,\n value,\n search,\n setValue,\n store,\n target,\n btnClearLabel,\n dropdownHeight = 192,\n}: DropdownProps) {\n const combobox =\n store ??\n useCombobox({\n scrollBehavior: 'smooth',\n onDropdownClose: () => combobox.resetSelectedOption(),\n });\n const clearablePointerEvents = (value ?? '') !== '' ? 'auto' : 'none';\n const style: Record<string, string> = {};\n if (clearable) {\n style['--dropdown-text-input-right-section-pointer-events' as string] =\n clearablePointerEvents;\n }\n return (\n <MantineCombobox\n width='target'\n store={combobox}\n withinPortal={withinPortal}\n keepMounted={keepMounted}\n offset={offset || 8}\n onOptionSubmit={(option) => {\n setValue(option, combobox);\n }}\n classNames={{\n dropdown: cx(\n classNames?.dropdown ?? dropdown(),\n classNames?.root ?? dropdownRoot(),\n ),\n options: classNames?.options ?? dropdownOptions(),\n option: classNames?.option ?? dropdownOption(),\n empty: classNames?.empty ?? dropdownEmpty(),\n search: classNames?.search,\n }}\n >\n <MantineCombobox.Target>\n {target ? (\n target\n ) : (\n <TextInput\n readOnly={readOnly ?? false}\n value={search ?? value ?? ''}\n startSlot={startSlot}\n endSlot={\n endSlot ?? (\n <DefaultEndSlot\n clearable={clearable}\n chevron={chevron}\n value={value}\n setValue={setValue}\n combobox={combobox}\n btnClearLabel={btnClearLabel ?? 'Clear selection'}\n classNames={classNames?.textInput?.endSlot}\n />\n )\n }\n onClick={(e) => {\n onClick(combobox);\n // e.stopPropagation();\n }}\n onChange={(e) => {\n e.stopPropagation();\n onChange(combobox, e.currentTarget?.value);\n }}\n onFocus={(e) => {\n onFocus(combobox);\n // e.stopPropagation();\n }}\n onBlur={(e) => {\n onBlur(combobox);\n e.stopPropagation();\n }}\n label={label}\n placeholder={placeholder}\n description={description}\n name={name}\n error={error}\n disabled={disabled}\n classNames={{\n root: classNames?.textInput?.root ?? dropdownTextInputRoot(),\n textInput: classNames?.textInput?.textInput ?? dropdownTextInput(),\n label: classNames?.textInput?.label ?? dropdownTextInputLabel(),\n description:\n classNames?.textInput?.description ??\n dropdownTextInputDescription(),\n error: classNames?.textInput?.error ?? dropdownTextInputError(),\n wrapper:\n classNames?.textInput?.wrapper ?? dropdownTextInputWrapper(),\n input: classNames?.textInput?.input ?? dropdownTextInputInput(),\n section:\n classNames?.textInput?.section ?? dropdownTextInputSection(),\n required:\n classNames?.textInput?.required ?? dropdownTextInputRequired(),\n }}\n style={style}\n />\n )}\n </MantineCombobox.Target>\n <MantineCombobox.Dropdown>\n <ScrollAreaAutosize\n type='scroll'\n mah={dropdownHeight}\n classNames={{\n scrollArea:\n classNames?.scrollArea?.scrollArea ?? dropdownScrollAreaAutosize(),\n }}\n >\n {children}\n </ScrollAreaAutosize>\n </MantineCombobox.Dropdown>\n </MantineCombobox>\n );\n}\n\nDropdown.Options = MantineCombobox.Options;\nDropdown.Options.displayName = 'Dropdown.Options';\nDropdown.Option = MantineCombobox.Option;\nDropdown.Option.displayName = 'Dropdown.Option';\nDropdown.Empty = MantineCombobox.Empty;\nDropdown.Empty.displayName = 'Dropdown.Empty';\nDropdown.Search = MantineCombobox.Search;\nDropdown.Search.displayName = 'Dropdown.Search';\nDropdown.EventsTarget = MantineCombobox.EventsTarget;\nDropdown.EventsTarget.displayName = 'Dropdown.EventsTarget';\n"],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import { IconProps } from "../../data-display/icons/icon/Icon.mjs";
2
+ import { LoaderOvalProps } from "../../data-display/loader-oval/LoaderOval.mjs";
3
+ import "../../data-display/index.mjs";
4
+ import * as react_jsx_runtime31 from "react/jsx-runtime";
5
+ import { ReactNode } from "react";
6
+
7
+ //#region src/components/controls/dropzone/Dropzone.d.ts
8
+ type FileData = {
9
+ name: string;
10
+ size: number;
11
+ type: string;
12
+ date: string;
13
+ uploaded: boolean;
14
+ loading: boolean;
15
+ url: string;
16
+ error?: string;
17
+ progress?: number;
18
+ };
19
+ type DropzoneProps = {
20
+ children: ({
21
+ files,
22
+ isUploading,
23
+ removeFile
24
+ }: {
25
+ files: Record<string, FileData>;
26
+ isUploading: boolean;
27
+ removeFile: (fileName: string) => void;
28
+ }) => ReactNode;
29
+ initialFiles?: Record<string, FileData>;
30
+ maxFiles?: number;
31
+ data?: Record<string, unknown>;
32
+ url: string;
33
+ accept?: string[];
34
+ preventDropOnDocument?: boolean;
35
+ title?: ReactNode;
36
+ subtitle?: ReactNode;
37
+ hint?: ReactNode;
38
+ inputId?: string;
39
+ classNames?: {
40
+ dropzone?: string;
41
+ root?: string;
42
+ dropzoneDropzone?: {
43
+ root?: string;
44
+ inner?: string;
45
+ };
46
+ iconSlot?: string;
47
+ dropzoneIcon?: IconProps['classNames'];
48
+ loader?: LoaderOvalProps['classNames'];
49
+ textSlot?: string;
50
+ title?: string;
51
+ subtitle?: string;
52
+ hint?: string;
53
+ };
54
+ };
55
+ declare const Dropzone: ({
56
+ data,
57
+ children,
58
+ initialFiles,
59
+ maxFiles,
60
+ accept,
61
+ url,
62
+ title,
63
+ subtitle,
64
+ hint,
65
+ inputId,
66
+ classNames
67
+ }: DropzoneProps) => react_jsx_runtime31.JSX.Element;
68
+ //#endregion
69
+ export { Dropzone, DropzoneProps, FileData };
70
+ //# sourceMappingURL=Dropzone.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropzone.d.mts","names":[],"sources":["../../../../src/components/controls/dropzone/Dropzone.tsx"],"mappings":";;;;;;;KAyBY,QAAA;EACV,IAAA;EACA,IAAA;EACA,IAAA;EACA,IAAA;EACA,QAAA;EACA,OAAA;EACA,GAAA;EACA,KAAA;EACA,QAAA;AAAA;AAAA,KAGU,aAAA;EACV,QAAA;IACE,KAAA;IACA,WAAA;IACA;EAAA;IAEA,KAAA,EAAO,MAAA,SAAe,QAAA;IACtB,WAAA;IACA,UAAA,GAAa,QAAA;EAAA,MACT,SAAA;EACN,YAAA,GAAe,MAAA,SAAe,QAAA;EAC9B,QAAA;EACA,IAAA,GAAO,MAAA;EACP,GAAA;EACA,MAAA;EACA,qBAAA;EACA,KAAA,GAAQ,SAAA;EACR,QAAA,GAAW,SAAA;EACX,IAAA,GAAO,SAAA;EACP,OAAA;EACA,UAAA;IACE,QAAA;IACA,IAAA;IACA,gBAAA;MACE,IAAA;MACA,KAAA;IAAA;IAEF,QAAA;IACA,YAAA,GAAe,SAAA;IACf,MAAA,GAAS,eAAA;IACT,QAAA;IACA,KAAA;IACA,QAAA;IACA,IAAA;EAAA;AAAA;AAAA,cAIS,QAAA;EAAY,IAAA;EAAA,QAAA;EAAA,YAAA;EAAA,QAAA;EAAA,MAAA;EAAA,GAAA;EAAA,KAAA;EAAA,QAAA;EAAA,IAAA;EAAA,OAAA;EAAA;AAAA,GAYtB,aAAA,KAAa,mBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,2 @@
1
+ import{Icon as e}from"../../data-display/icons/icon/Icon.mjs";import{LoaderOval as t}from"../../data-display/loader-oval/LoaderOval.mjs";import{useDropzoneState as n}from"./use-dropzone-state.mjs";import{cx as r}from"@mage-ui/styled-system/css";import{dropzone as i,dropzoneDropzoneInner as a,dropzoneDropzoneRoot as o,dropzoneHint as s,dropzoneIcon as c,dropzoneIconSlot as l,dropzoneLoader as u,dropzoneLoaderRoot as d,dropzoneRoot as f,dropzoneSubtitle as p,dropzoneTextSlot as m,dropzoneTitle as h}from"@mage-ui/styled-system/recipes";import{Fragment as g,jsx as _,jsxs as v}from"react/jsx-runtime";import{useCallback as y,useRef as b}from"react";import{Dropzone as x}from"@mantine/dropzone";const S=({data:S,children:C,initialFiles:w={},maxFiles:T,accept:E,url:D,title:O,subtitle:k,hint:A,inputId:j,classNames:M})=>{let N=b(null),{files:P,isUploading:F,uploadMultipleFiles:I,removeFile:L}=n(D,w),R=y(async e=>{let t=Object.keys(P).length,n=(T??1/0)-t;n<=0||await I(e.slice(0,n),S)},[I,S,P,T]);return v(`div`,{className:r(M?.dropzone??i(),M?.root??f()),children:[v(x,{ref:N,onDrop:R,disabled:Object.keys(P).length>=(T??1/0),loading:F,accept:E,preventDropOnDocument:!0,inputProps:{id:j},classNames:{root:M?.dropzoneDropzone?.root??r(o(),`group`),inner:M?.dropzoneDropzone?.inner??a()},children:[_(`div`,{className:M?.iconSlot??l(),children:F?_(t,{classNames:{loader:M?.loader?.loader??u(),root:M?.loader?.root??d()}}):v(g,{children:[_(x.Idle,{children:_(e,{name:`mage-dropzone-upload-01`,path:`/icons/sprite-mage.svg`,classNames:{icon:M?.dropzoneIcon?.icon??c()}})}),_(x.Accept,{children:_(e,{name:`mage-dropzone-thumbs-up`,path:`/icons/sprite-mage.svg`,classNames:{icon:M?.dropzoneIcon?.icon??c()}})}),_(x.Reject,{children:_(e,{name:`mage-dropzone-thumbs-down`,path:`/icons/sprite-mage.svg`,classNames:{icon:M?.dropzoneIcon?.icon??c()}})})]})}),v(`div`,{className:M?.textSlot??m(),children:[_(`span`,{className:M?.title??h(),children:O||`Upload files`}),_(`span`,{className:M?.subtitle??p(),children:k||`Drag images here or click to select files`}),_(`span`,{className:M?.hint??s(),children:A||`Attach as many files as you like, each file should not exceed 5mb`})]})]}),Object.keys(P).length>0&&C({files:P,isUploading:F,removeFile:L})]})};export{S as Dropzone};
2
+ //# sourceMappingURL=Dropzone.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropzone.mjs","names":["Dropzone","MantineDropzone"],"sources":["../../../../src/components/controls/dropzone/Dropzone.tsx"],"sourcesContent":["import { Dropzone as MantineDropzone } from '@mantine/dropzone';\nimport { type ReactNode, useCallback, useRef } from 'react';\nimport { cx } from '@mage-ui/styled-system/css';\nimport {\n dropzone,\n dropzoneRoot,\n dropzoneDropzoneInner,\n dropzoneDropzoneRoot,\n dropzoneIconSlot,\n dropzoneIcon,\n dropzoneTextSlot,\n dropzoneTitle,\n dropzoneSubtitle,\n dropzoneHint,\n dropzoneLoader,\n dropzoneLoaderRoot,\n} from '@mage-ui/styled-system/recipes';\nimport {\n Icon,\n type IconProps,\n LoaderOval,\n type LoaderOvalProps,\n} from '@/components/data-display';\nimport { useDropzoneState } from './use-dropzone-state';\n\nexport type FileData = {\n name: string;\n size: number;\n type: string;\n date: string;\n uploaded: boolean;\n loading: boolean;\n url: string;\n error?: string;\n progress?: number; // (0-100)\n};\n\nexport type DropzoneProps = {\n children: ({\n files,\n isUploading,\n removeFile,\n }: {\n files: Record<string, FileData>;\n isUploading: boolean;\n removeFile: (fileName: string) => void;\n }) => ReactNode;\n initialFiles?: Record<string, FileData>;\n maxFiles?: number;\n data?: Record<string, unknown>;\n url: string;\n accept?: string[];\n preventDropOnDocument?: boolean;\n title?: ReactNode;\n subtitle?: ReactNode;\n hint?: ReactNode;\n inputId?: string;\n classNames?: {\n dropzone?: string;\n root?: string;\n dropzoneDropzone?: {\n root?: string;\n inner?: string;\n };\n iconSlot?: string;\n dropzoneIcon?: IconProps['classNames'];\n loader?: LoaderOvalProps['classNames'];\n textSlot?: string;\n title?: string;\n subtitle?: string;\n hint?: string;\n };\n};\n\nexport const Dropzone = ({\n data,\n children,\n initialFiles = {},\n maxFiles,\n accept,\n url,\n title,\n subtitle,\n hint,\n inputId,\n classNames,\n}: DropzoneProps) => {\n const dropzoneRef = useRef<HTMLDivElement>(null);\n const { files, isUploading, uploadMultipleFiles, removeFile } =\n useDropzoneState(url, initialFiles);\n const handleDrop = useCallback(\n async (acceptedFiles: File[]) => {\n const currentCount = Object.keys(files).length;\n const max = maxFiles ?? Number.POSITIVE_INFINITY;\n const remainingSlots = max - currentCount;\n if (remainingSlots <= 0) {\n return;\n }\n const filesToUpload = acceptedFiles.slice(0, remainingSlots);\n await uploadMultipleFiles(filesToUpload, data);\n },\n [uploadMultipleFiles, data, files, maxFiles],\n ); \n\n return (\n <div\n className={cx(\n classNames?.dropzone ?? dropzone(),\n classNames?.root ?? dropzoneRoot(),\n )}\n >\n <MantineDropzone\n ref={dropzoneRef}\n onDrop={handleDrop}\n disabled={\n Object.keys(files).length >= (maxFiles ?? Number.POSITIVE_INFINITY)\n }\n loading={isUploading}\n accept={accept}\n preventDropOnDocument\n inputProps={{ id: inputId }}\n classNames={{\n root:\n classNames?.dropzoneDropzone?.root ??\n cx(dropzoneDropzoneRoot(), 'group'),\n inner: classNames?.dropzoneDropzone?.inner ?? dropzoneDropzoneInner(),\n }}\n >\n <div className={classNames?.iconSlot ?? dropzoneIconSlot()}>\n {isUploading ? (\n <LoaderOval\n classNames={{\n loader: classNames?.loader?.loader ?? dropzoneLoader(),\n root: classNames?.loader?.root ?? dropzoneLoaderRoot(),\n }}\n />\n ) : (\n <>\n <MantineDropzone.Idle>\n <Icon\n name='mage-dropzone-upload-01'\n path='/icons/sprite-mage.svg'\n classNames={{\n icon: classNames?.dropzoneIcon?.icon ?? dropzoneIcon(),\n }}\n />\n </MantineDropzone.Idle>\n <MantineDropzone.Accept>\n <Icon\n name='mage-dropzone-thumbs-up'\n path='/icons/sprite-mage.svg'\n classNames={{\n icon: classNames?.dropzoneIcon?.icon ?? dropzoneIcon(),\n }}\n />\n </MantineDropzone.Accept>\n <MantineDropzone.Reject>\n <Icon\n name='mage-dropzone-thumbs-down'\n path='/icons/sprite-mage.svg'\n classNames={{\n icon: classNames?.dropzoneIcon?.icon ?? dropzoneIcon(),\n }}\n />\n </MantineDropzone.Reject>\n </>\n )}\n </div>\n <div className={classNames?.textSlot ?? dropzoneTextSlot()}>\n <span className={classNames?.title ?? dropzoneTitle()}>\n {title || 'Upload files'}\n </span>\n <span className={classNames?.subtitle ?? dropzoneSubtitle()}>\n {subtitle || 'Drag images here or click to select files'}\n </span>\n <span className={classNames?.hint ?? dropzoneHint()}>\n {hint ||\n 'Attach as many files as you like, each file should not exceed 5mb'}\n </span>\n </div>\n </MantineDropzone>\n {Object.keys(files).length > 0 &&\n children({ files, isUploading, removeFile })}\n </div>\n );\n};\n"],"mappings":"wrBA0EA,MAAaA,GAAY,CACvB,OACA,WACA,eAAe,EAAE,CACjB,WACA,SACA,MACA,QACA,WACA,OACA,UACA,gBACmB,CACnB,IAAM,EAAc,EAAuB,KAAK,CAC1C,CAAE,QAAO,cAAa,sBAAqB,cAC/C,EAAiB,EAAK,EAAa,CAC/B,EAAa,EACjB,KAAO,IAA0B,CAC/B,IAAM,EAAe,OAAO,KAAK,EAAM,CAAC,OAElC,GADM,GAAY,KACK,EACzB,GAAkB,GAItB,MAAM,EADgB,EAAc,MAAM,EAAG,EAAe,CACnB,EAAK,EAEhD,CAAC,EAAqB,EAAM,EAAO,EAAS,CAC7C,CAED,OACE,EAAC,MAAA,CACC,UAAW,EACT,GAAY,UAAY,GAAU,CAClC,GAAY,MAAQ,GAAc,CACnC,WAED,EAACC,EAAAA,CACC,IAAK,EACL,OAAQ,EACR,SACE,OAAO,KAAK,EAAM,CAAC,SAAW,GAAY,KAE5C,QAAS,EACD,SACR,sBAAA,GACA,WAAY,CAAE,GAAI,EAAS,CAC3B,WAAY,CACV,KACE,GAAY,kBAAkB,MAC9B,EAAG,GAAsB,CAAE,QAAQ,CACrC,MAAO,GAAY,kBAAkB,OAAS,GAAuB,CACtE,WAED,EAAC,MAAA,CAAI,UAAW,GAAY,UAAY,GAAkB,UACvD,EACC,EAAC,EAAA,CACC,WAAY,CACV,OAAQ,GAAY,QAAQ,QAAU,GAAgB,CACtD,KAAM,GAAY,QAAQ,MAAQ,GAAoB,CACvD,CAAA,CACD,CAEF,EAAA,EAAA,CAAA,SAAA,CACE,EAACA,EAAgB,KAAA,CAAA,SACf,EAAC,EAAA,CACC,KAAK,0BACL,KAAK,yBACL,WAAY,CACV,KAAM,GAAY,cAAc,MAAQ,GAAc,CACvD,EACD,CAAA,CACmB,CACvB,EAACA,EAAgB,OAAA,CAAA,SACf,EAAC,EAAA,CACC,KAAK,0BACL,KAAK,yBACL,WAAY,CACV,KAAM,GAAY,cAAc,MAAQ,GAAc,CACvD,EACD,CAAA,CACqB,CACzB,EAACA,EAAgB,OAAA,CAAA,SACf,EAAC,EAAA,CACC,KAAK,4BACL,KAAK,yBACL,WAAY,CACV,KAAM,GAAY,cAAc,MAAQ,GAAc,CACvD,EACD,CAAA,CACqB,GACxB,EAED,CACN,EAAC,MAAA,CAAI,UAAW,GAAY,UAAY,GAAkB,WACxD,EAAC,OAAA,CAAK,UAAW,GAAY,OAAS,GAAe,UAClD,GAAS,gBACL,CACP,EAAC,OAAA,CAAK,UAAW,GAAY,UAAY,GAAkB,UACxD,GAAY,6CACR,CACP,EAAC,OAAA,CAAK,UAAW,GAAY,MAAQ,GAAc,UAChD,GACC,qEACG,GACH,CAAA,EACU,CACjB,OAAO,KAAK,EAAM,CAAC,OAAS,GAC3B,EAAS,CAAE,QAAO,cAAa,aAAY,CAAC,CAAA,EAC1C"}
@@ -0,0 +1,2 @@
1
+ const e=async(e,t,n,r)=>{let i=new FormData;i.append(`file`,t),n&&Object.entries(n).forEach(([e,t])=>{i.append(e,t)});let a=new XMLHttpRequest;return new Promise((t,n)=>{if(a.readyState!==0){n(Error(`Ya hay una solicitud en progreso`));return}a.upload.addEventListener(`progress`,e=>{e.lengthComputable&&r&&r({loaded:e.loaded,total:e.total,percentage:Math.round(e.loaded/e.total*100)})}),a.addEventListener(`load`,()=>{if(a.status>=200&&a.status<300)try{t(JSON.parse(a.responseText))}catch{n(Error(`Error al parsear la respuesta`))}else try{let e=JSON.parse(a.responseText);n(Error(e.error||`Error al subir el archivo`))}catch{n(Error(`Error ${a.status}: ${a.statusText}`))}}),a.addEventListener(`error`,()=>{n(Error(`Error de red al subir el archivo`))}),a.addEventListener(`abort`,()=>{n(Error(`Subida cancelada`))}),a.timeout=3e4,a.addEventListener(`timeout`,()=>{n(Error(`Tiempo de espera agotado`))});try{a.open(`POST`,e),a.send(i)}catch{n(Error(`Error al iniciar la solicitud`))}})};export{e as uploadFile};
2
+ //# sourceMappingURL=upload-service.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-service.mjs","names":[],"sources":["../../../../src/components/controls/dropzone/upload-service.ts"],"sourcesContent":["export type UploadResponse = {\n body: {\n url: string;\n };\n};\n\nexport type UploadProgress = {\n loaded: number;\n total: number;\n percentage: number;\n};\n\nexport const uploadFile = async (\n url: string,\n file: File,\n data?: Record<string, unknown>,\n onProgress?: (progress: UploadProgress) => void,\n): Promise<UploadResponse> => {\n const formData = new FormData();\n formData.append('file', file);\n if (data) {\n Object.entries(data).forEach(([key, value]) => {\n formData.append(key, value as string);\n });\n }\n const xhr = new XMLHttpRequest();\n\n return new Promise((resolve, reject) => {\n // Prevenir múltiples solicitudes simultáneas\n if (xhr.readyState !== 0) {\n reject(new Error('Ya hay una solicitud en progreso'));\n return;\n }\n\n xhr.upload.addEventListener('progress', (event) => {\n if (event.lengthComputable && onProgress) {\n const progress: UploadProgress = {\n loaded: event.loaded,\n total: event.total,\n percentage: Math.round((event.loaded / event.total) * 100),\n };\n onProgress(progress);\n }\n });\n\n xhr.addEventListener('load', () => {\n if (xhr.status >= 200 && xhr.status < 300) {\n try {\n const response = JSON.parse(xhr.responseText);\n resolve(response);\n } catch (_) {\n reject(new Error('Error al parsear la respuesta'));\n }\n } else {\n try {\n const errorData = JSON.parse(xhr.responseText);\n reject(new Error(errorData.error || 'Error al subir el archivo'));\n } catch {\n reject(new Error(`Error ${xhr.status}: ${xhr.statusText}`));\n }\n }\n });\n\n xhr.addEventListener('error', () => {\n reject(new Error('Error de red al subir el archivo'));\n });\n\n xhr.addEventListener('abort', () => {\n reject(new Error('Subida cancelada'));\n });\n\n // Configurar timeout para evitar solicitudes colgadas\n xhr.timeout = 30000; // 30 segundos\n xhr.addEventListener('timeout', () => {\n reject(new Error('Tiempo de espera agotado'));\n });\n\n try {\n xhr.open('POST', url);\n xhr.send(formData);\n } catch (_) {\n reject(new Error('Error al iniciar la solicitud'));\n }\n });\n};\n"],"mappings":"AAYA,MAAa,EAAa,MACxB,EACA,EACA,EACA,IAC4B,CAC5B,IAAM,EAAW,IAAI,SACrB,EAAS,OAAO,OAAQ,EAAK,CACzB,GACF,OAAO,QAAQ,EAAK,CAAC,SAAS,CAAC,EAAK,KAAW,CAC7C,EAAS,OAAO,EAAK,EAAgB,EACrC,CAEJ,IAAM,EAAM,IAAI,eAEhB,OAAO,IAAI,SAAS,EAAS,IAAW,CAEtC,GAAI,EAAI,aAAe,EAAG,CACxB,EAAW,MAAM,mCAAmC,CAAC,CACrD,OAGF,EAAI,OAAO,iBAAiB,WAAa,GAAU,CAC7C,EAAM,kBAAoB,GAM5B,EALiC,CAC/B,OAAQ,EAAM,OACd,MAAO,EAAM,MACb,WAAY,KAAK,MAAO,EAAM,OAAS,EAAM,MAAS,IAAI,CAC3D,CACmB,EAEtB,CAEF,EAAI,iBAAiB,WAAc,CACjC,GAAI,EAAI,QAAU,KAAO,EAAI,OAAS,IACpC,GAAI,CAEF,EADiB,KAAK,MAAM,EAAI,aAAa,CAC5B,MACP,CACV,EAAW,MAAM,gCAAgC,CAAC,MAGpD,GAAI,CACF,IAAM,EAAY,KAAK,MAAM,EAAI,aAAa,CAC9C,EAAW,MAAM,EAAU,OAAS,4BAA4B,CAAC,MAC3D,CACN,EAAW,MAAM,SAAS,EAAI,OAAO,IAAI,EAAI,aAAa,CAAC,GAG/D,CAEF,EAAI,iBAAiB,YAAe,CAClC,EAAW,MAAM,mCAAmC,CAAC,EACrD,CAEF,EAAI,iBAAiB,YAAe,CAClC,EAAW,MAAM,mBAAmB,CAAC,EACrC,CAGF,EAAI,QAAU,IACd,EAAI,iBAAiB,cAAiB,CACpC,EAAW,MAAM,2BAA2B,CAAC,EAC7C,CAEF,GAAI,CACF,EAAI,KAAK,OAAQ,EAAI,CACrB,EAAI,KAAK,EAAS,MACR,CACV,EAAW,MAAM,gCAAgC,CAAC,GAEpD"}
@@ -0,0 +1,2 @@
1
+ import{uploadFile as e}from"./upload-service.mjs";import{useCallback as t,useRef as n,useState as r}from"react";const i=(i,a={})=>{let[o,s]=r((()=>{if(!a)return{};if(typeof a==`object`&&!(`name`in a))return a;if(typeof a==`object`&&`name`in a){let e=a;return{[e.name]:{name:e.name,size:e.size,type:e.type,date:e.date,uploaded:e.uploaded??!0,loading:e.loading??!1,url:e.url,error:e.error,progress:e.progress}}}return{}})()),[c,l]=r(!1),u=n(new Set),d=t(e=>{let t={name:e.name,size:e.size,type:e.type,url:``,uploaded:!1,loading:!1,progress:0,date:new Date().toLocaleString(`es-ES`,{timeZone:`Europe/Madrid`,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})};return s(n=>({...n,[e.name]:t})),e.name},[]),f=t((e,t)=>{s(n=>({...n,[e]:{...n[e],progress:t,loading:t<100}}))},[]),p=t((e,t)=>{s(n=>({...n,[e]:{...n[e],uploaded:!0,loading:!1,progress:100,url:t}}))},[]),m=t((e,t)=>{s(n=>({...n,[e]:{...n[e],uploaded:!1,loading:!1,progress:0,error:t}}))},[]),h=t(e=>{s(t=>{let n={...t};return delete n[e],n}),u.current.delete(e)},[]),g=t(()=>{s({}),u.current.clear()},[]),_=t(e=>u.current.has(e),[]),v=t(e=>{u.current.add(e)},[]),y=t(e=>{u.current.delete(e)},[]),b=t(async(t,n)=>{let r=d(t);v(r);try{let{body:a}=await e(i,t,n,e=>{f(r,e.percentage)});p(r,a.url)}catch(e){console.error(`Error al subir archivo:`,e),m(r,e instanceof Error?e.message:`Error desconocido`)}finally{y(r)}},[d,v,f,p,m,y,i]);return{files:o,isUploading:c,setIsUploading:l,addFile:d,updateFileProgress:f,markFileAsUploaded:p,markFileAsError:m,removeFile:h,clearFiles:g,isFileUploading:_,addToUploadQueue:v,removeFromUploadQueue:y,uploadFileToServer:b,uploadMultipleFiles:t(async(e,t)=>{if(c){console.warn(`Ya hay una subida en progreso`);return}l(!0);try{for(let n of e)await b(n,t)}finally{l(!1)}},[c,l,b])}};export{i as useDropzoneState};
2
+ //# sourceMappingURL=use-dropzone-state.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-dropzone-state.mjs","names":[],"sources":["../../../../src/components/controls/dropzone/use-dropzone-state.ts"],"sourcesContent":["import { useCallback, useRef, useState } from 'react';\nimport type { FileData } from './Dropzone';\nimport { uploadFile } from './upload-service';\n\nexport const useDropzoneState = (\n url: string,\n initialFiles: Record<string, FileData> | FileData | null | undefined = {},\n) => {\n const normalizeInitialFiles = (): Record<string, FileData> => {\n if (!initialFiles) return {};\n\n if (typeof initialFiles === 'object' && !('name' in initialFiles)) {\n return initialFiles as Record<string, FileData>;\n }\n\n if (typeof initialFiles === 'object' && 'name' in initialFiles) {\n const fileData = initialFiles as FileData;\n return {\n [fileData.name]: {\n name: fileData.name,\n size: fileData.size,\n type: fileData.type,\n date: fileData.date,\n uploaded: fileData.uploaded ?? true,\n loading: fileData.loading ?? false,\n url: fileData.url,\n error: fileData.error,\n progress: fileData.progress,\n },\n };\n }\n\n return {};\n };\n\n const [files, setFiles] = useState<Record<string, FileData>>(\n normalizeInitialFiles(),\n );\n const [isUploading, setIsUploading] = useState(false);\n const uploadQueue = useRef<Set<string>>(new Set());\n\n const addFile = useCallback((file: File) => {\n const fileData: FileData = {\n name: file.name,\n size: file.size,\n type: file.type,\n url: '',\n uploaded: false,\n loading: false,\n progress: 0,\n date: new Date().toLocaleString('es-ES', {\n timeZone: 'Europe/Madrid',\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n }),\n };\n\n setFiles((prev) => ({\n ...prev,\n [file.name]: fileData,\n }));\n\n return file.name;\n }, []);\n\n const updateFileProgress = useCallback(\n (fileName: string, progress: number) => {\n setFiles((prev) => ({\n ...prev,\n [fileName]: {\n ...prev[fileName],\n progress,\n loading: progress < 100,\n },\n }));\n },\n [],\n );\n\n const markFileAsUploaded = useCallback((fileName: string, url: string) => {\n setFiles((prev) => ({\n ...prev,\n [fileName]: {\n ...prev[fileName],\n uploaded: true,\n loading: false,\n progress: 100,\n url,\n },\n }));\n }, []);\n\n const markFileAsError = useCallback((fileName: string, error: string) => {\n setFiles((prev) => ({\n ...prev,\n [fileName]: {\n ...prev[fileName],\n uploaded: false,\n loading: false,\n progress: 0,\n error,\n },\n }));\n }, []);\n\n const removeFile = useCallback((fileName: string) => {\n setFiles((prev) => {\n const newFiles = { ...prev };\n delete newFiles[fileName];\n return newFiles;\n });\n uploadQueue.current.delete(fileName);\n }, []);\n\n const clearFiles = useCallback(() => {\n setFiles({});\n uploadQueue.current.clear();\n }, []);\n\n const isFileUploading = useCallback((fileName: string) => {\n return uploadQueue.current.has(fileName);\n }, []);\n\n const addToUploadQueue = useCallback((fileName: string) => {\n uploadQueue.current.add(fileName);\n }, []);\n\n const removeFromUploadQueue = useCallback((fileName: string) => {\n uploadQueue.current.delete(fileName);\n }, []);\n\n const uploadFileToServer = useCallback(\n async (file: File, data?: Record<string, unknown>) => {\n const fileName = addFile(file);\n addToUploadQueue(fileName);\n\n try {\n const { body } = await uploadFile(url, file, data, (progress) => {\n updateFileProgress(fileName, progress.percentage);\n });\n\n markFileAsUploaded(fileName, body.url);\n } catch (error) {\n console.error('Error al subir archivo:', error);\n markFileAsError(\n fileName,\n error instanceof Error ? error.message : 'Error desconocido',\n );\n } finally {\n removeFromUploadQueue(fileName);\n }\n },\n [\n addFile,\n addToUploadQueue,\n updateFileProgress,\n markFileAsUploaded,\n markFileAsError,\n removeFromUploadQueue,\n url,\n ],\n );\n\n const uploadMultipleFiles = useCallback(\n async (acceptedFiles: File[], data?: Record<string, unknown>) => {\n if (isUploading) {\n console.warn('Ya hay una subida en progreso');\n return;\n }\n\n setIsUploading(true);\n\n try {\n for (const file of acceptedFiles) {\n await uploadFileToServer(file, data);\n }\n } finally {\n setIsUploading(false);\n }\n },\n [isUploading, setIsUploading, uploadFileToServer],\n );\n\n return {\n files,\n isUploading,\n setIsUploading,\n addFile,\n updateFileProgress,\n markFileAsUploaded,\n markFileAsError,\n removeFile,\n clearFiles,\n isFileUploading,\n addToUploadQueue,\n removeFromUploadQueue,\n uploadFileToServer,\n uploadMultipleFiles,\n };\n};\n"],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { IconProps } from "../../data-display/icons/icon/Icon.mjs";
2
+ import { IconWrappedProps } from "../../data-display/icons/icon-wrapped/IconWrapped.mjs";
3
+ import { UploadedFileProps } from "../../data-display/uploaded-file/UploadedFile.mjs";
4
+ import "../../data-display/index.mjs";
5
+ import { DropzoneProps, FileData } from "../dropzone/Dropzone.mjs";
6
+ import * as react_jsx_runtime16 from "react/jsx-runtime";
7
+ import { ReactNode } from "react";
8
+
9
+ //#region src/components/controls/dropzone-files/DropzoneFiles.d.ts
10
+ type DropzoneFilesProps = {
11
+ label?: ReactNode;
12
+ description?: ReactNode;
13
+ error?: ReactNode;
14
+ title?: ReactNode;
15
+ subtitle?: ReactNode;
16
+ hint?: ReactNode;
17
+ initialFiles?: Record<string, FileData>;
18
+ maxFiles?: number;
19
+ accept?: string[];
20
+ url: string;
21
+ inputId?: string;
22
+ fileListHeight?: number | string;
23
+ classNames?: {
24
+ dropzoneFiles?: string;
25
+ root?: string;
26
+ labelWrapper?: string;
27
+ label?: string;
28
+ description?: string;
29
+ error?: string;
30
+ fileList?: string;
31
+ fileItem?: string;
32
+ uploadedFile?: UploadedFileProps['classNames'];
33
+ dropzone?: DropzoneProps['classNames'];
34
+ scrollArea?: {
35
+ scrollArea?: string;
36
+ };
37
+ startIconWrapped?: IconWrappedProps['classNames'];
38
+ startIcon?: IconProps['classNames'];
39
+ };
40
+ };
41
+ declare const DropzoneFiles: ({
42
+ label,
43
+ description,
44
+ error,
45
+ title,
46
+ subtitle,
47
+ hint,
48
+ initialFiles,
49
+ maxFiles,
50
+ accept,
51
+ url,
52
+ inputId,
53
+ classNames
54
+ }: DropzoneFilesProps) => react_jsx_runtime16.JSX.Element;
55
+ //#endregion
56
+ export { DropzoneFiles, DropzoneFilesProps };
57
+ //# sourceMappingURL=DropzoneFiles.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneFiles.d.mts","names":[],"sources":["../../../../src/components/controls/dropzone-files/DropzoneFiles.tsx"],"mappings":";;;;;;;;;KAkCY,kBAAA;EACV,KAAA,GAAQ,SAAA;EACR,WAAA,GAAc,SAAA;EACd,KAAA,GAAQ,SAAA;EACR,KAAA,GAAQ,SAAA;EACR,QAAA,GAAW,SAAA;EACX,IAAA,GAAO,SAAA;EACP,YAAA,GAAe,MAAA,SAAe,QAAA;EAC9B,QAAA;EACA,MAAA;EACA,GAAA;EACA,OAAA;EACA,cAAA;EACA,UAAA;IACE,aAAA;IACA,IAAA;IACA,YAAA;IACA,KAAA;IACA,WAAA;IACA,KAAA;IACA,QAAA;IACA,QAAA;IACA,YAAA,GAAe,iBAAA;IACf,QAAA,GAAW,aAAA;IACX,UAAA;MAAe,UAAA;IAAA;IACf,gBAAA,GAAmB,gBAAA;IACnB,SAAA,GAAY,SAAA;EAAA;AAAA;AAAA,cAIH,aAAA;EAAiB,KAAA;EAAA,WAAA;EAAA,KAAA;EAAA,KAAA;EAAA,QAAA;EAAA,IAAA;EAAA,YAAA;EAAA,QAAA;EAAA,MAAA;EAAA,GAAA;EAAA,OAAA;EAAA;AAAA,GAa3B,kBAAA,KAAkB,mBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,2 @@
1
+ import{Icon as e}from"../../data-display/icons/icon/Icon.mjs";import{IconWrapped as t}from"../../data-display/icons/icon-wrapped/IconWrapped.mjs";import{UploadedFile as n}from"../../data-display/uploaded-file/UploadedFile.mjs";import{Dropzone as r}from"../dropzone/Dropzone.mjs";import{cx as i}from"@mage-ui/styled-system/css";import{dropzoneFiles as a,dropzoneFilesDescription as o,dropzoneFilesDropzone as s,dropzoneFilesError as c,dropzoneFilesFileItem as l,dropzoneFilesFileList as u,dropzoneFilesLabel as d,dropzoneFilesLabelWrapper as f,dropzoneFilesRoot as p,dropzoneFilesUploadedFile as m,dropzoneFilesUploadedFileStartIcon as h,dropzoneFilesUploadedFileStartIconIconRaw as g,dropzoneFilesUploadedFileStartIconIconRawRoot as _,dropzoneFilesUploadedFileStartIconRoot as v,dropzoneFilesUploadedFileStartIconWrapped as y,dropzoneFilesUploadedFileStartIconWrappedRoot as b}from"@mage-ui/styled-system/recipes";import{jsx as x,jsxs as S}from"react/jsx-runtime";import{useId as C}from"react";const w=({label:w,description:T,error:E,title:D,subtitle:O,hint:k,initialFiles:A,maxFiles:j,accept:M,url:N,inputId:P,classNames:F})=>{let I=C(),L=P??I;return S(`div`,{className:i(F?.dropzoneFiles??a(),F?.root??p()),children:[S(`div`,{className:F?.labelWrapper??f(),children:[w&&x(`label`,{htmlFor:L,className:F?.label??d(),children:w}),T&&x(`p`,{className:F?.description??o(),children:T})]}),x(r,{maxFiles:j,accept:M,url:N,initialFiles:A,inputId:L,title:D,subtitle:O,hint:k,classNames:{dropzone:F?.dropzone?.dropzone??s()},children:({files:r,removeFile:i})=>x(`ul`,{className:F?.fileList??u(),children:Object.values(r).map(r=>x(`li`,{className:F?.fileItem??l(),children:x(n,{fileName:r.name,fileSize:`${(r.size/1024).toFixed(1)} KB`,fileDate:r.date,fileType:r.type,url:r.url,onRemove:()=>i(r.name),startSlot:x(t,{classNames:{iconWrapped:F?.startIconWrapped?.iconWrapped??y(),root:F?.startIconWrapped?.root??b()},children:x(e,{name:`mage-uploadedfile-file-attachment-01`,path:`/icons/sprite-mage.svg`,classNames:{icon:F?.startIcon?.icon??h(),root:F?.startIcon?.root??v(),iconRaw:{iconRaw:F?.startIcon?.iconRaw?.iconRaw??g(),root:F?.startIcon?.iconRaw?.root??_()}}})}),classNames:{uploadedFile:F?.uploadedFile?.uploadedFile??m()}},r.name)},r.name))})}),E&&x(`p`,{className:F?.error??c(),children:E})]})};export{w as DropzoneFiles};
2
+ //# sourceMappingURL=DropzoneFiles.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropzoneFiles.mjs","names":[],"sources":["../../../../src/components/controls/dropzone-files/DropzoneFiles.tsx"],"sourcesContent":["import { useId, type ReactNode } from 'react';\nimport {\n Dropzone,\n type DropzoneProps,\n type FileData,\n} from '../dropzone/Dropzone';\nimport {\n Icon,\n type IconProps,\n IconWrapped,\n type IconWrappedProps,\n UploadedFile,\n type UploadedFileProps,\n} from '@/components/data-display';\nimport { cx } from '@mage-ui/styled-system/css';\nimport {\n dropzoneFiles,\n dropzoneFilesRoot,\n dropzoneFilesLabelWrapper,\n dropzoneFilesLabel,\n dropzoneFilesDescription,\n dropzoneFilesFileList,\n dropzoneFilesFileItem,\n dropzoneFilesError,\n dropzoneFilesDropzone,\n dropzoneFilesUploadedFile,\n dropzoneFilesUploadedFileStartIconWrapped,\n dropzoneFilesUploadedFileStartIconWrappedRoot,\n dropzoneFilesUploadedFileStartIcon,\n dropzoneFilesUploadedFileStartIconRoot,\n dropzoneFilesUploadedFileStartIconIconRaw,\n dropzoneFilesUploadedFileStartIconIconRawRoot,\n} from '@mage-ui/styled-system/recipes';\n\nexport type DropzoneFilesProps = {\n label?: ReactNode;\n description?: ReactNode;\n error?: ReactNode;\n title?: ReactNode;\n subtitle?: ReactNode;\n hint?: ReactNode;\n initialFiles?: Record<string, FileData>;\n maxFiles?: number;\n accept?: string[];\n url: string;\n inputId?: string;\n fileListHeight?: number | string;\n classNames?: {\n dropzoneFiles?: string;\n root?: string;\n labelWrapper?: string;\n label?: string;\n description?: string;\n error?: string;\n fileList?: string;\n fileItem?: string;\n uploadedFile?: UploadedFileProps['classNames'];\n dropzone?: DropzoneProps['classNames'];\n scrollArea?: { scrollArea?: string };\n startIconWrapped?: IconWrappedProps['classNames'];\n startIcon?: IconProps['classNames'];\n };\n};\n\nexport const DropzoneFiles = ({\n label,\n description,\n error,\n title,\n subtitle,\n hint,\n initialFiles,\n maxFiles,\n accept,\n url,\n inputId,\n classNames,\n}: DropzoneFilesProps) => {\n const generatedId = useId();\n const groupId = inputId ?? generatedId;\n\n // TODO: gestionar error \n // TOOD: gestionar required\n return (\n <div\n className={cx(\n classNames?.dropzoneFiles ?? dropzoneFiles(),\n classNames?.root ?? dropzoneFilesRoot(),\n )}\n >\n <div className={classNames?.labelWrapper ?? dropzoneFilesLabelWrapper()}>\n {/* TODO: label obligatori / hidden */}\n {label && (\n <label\n htmlFor={groupId}\n className={classNames?.label ?? dropzoneFilesLabel()}\n >\n {label}\n </label>\n )}\n {description && (\n <p className={classNames?.description ?? dropzoneFilesDescription()}>\n {description}\n </p>\n )}</div>\n <Dropzone\n maxFiles={maxFiles}\n accept={accept}\n url={url}\n initialFiles={initialFiles}\n inputId={groupId}\n title={title}\n subtitle={subtitle}\n hint={hint}\n classNames={{\n dropzone: classNames?.dropzone?.dropzone ?? dropzoneFilesDropzone(),\n }}\n >\n {({ files, removeFile }) => (\n <ul className={classNames?.fileList ?? dropzoneFilesFileList()}>\n {Object.values(files).map((file) => (\n <li\n key={file.name}\n className={classNames?.fileItem ?? dropzoneFilesFileItem()}\n >\n <UploadedFile\n key={file.name}\n fileName={file.name}\n fileSize={`${(file.size / 1024).toFixed(1)} KB`}\n fileDate={file.date}\n fileType={file.type}\n url={file.url}\n onRemove={() => removeFile(file.name)}\n startSlot={\n <IconWrapped\n classNames={{\n iconWrapped:\n classNames?.startIconWrapped?.iconWrapped ??\n dropzoneFilesUploadedFileStartIconWrapped(),\n root:\n classNames?.startIconWrapped?.root ??\n dropzoneFilesUploadedFileStartIconWrappedRoot(),\n }}\n >\n {/* TODO: mostrar icona segons extensió */}\n <Icon\n name='mage-uploadedfile-file-attachment-01'\n path='/icons/sprite-mage.svg'\n classNames={{\n icon:\n classNames?.startIcon?.icon ??\n dropzoneFilesUploadedFileStartIcon(),\n root:\n classNames?.startIcon?.root ??\n dropzoneFilesUploadedFileStartIconRoot(),\n iconRaw: {\n iconRaw:\n classNames?.startIcon?.iconRaw?.iconRaw ??\n dropzoneFilesUploadedFileStartIconIconRaw(),\n root:\n classNames?.startIcon?.iconRaw?.root ??\n dropzoneFilesUploadedFileStartIconIconRawRoot(),\n },\n }}\n />\n </IconWrapped>\n }\n classNames={{\n uploadedFile:\n classNames?.uploadedFile?.uploadedFile ??\n dropzoneFilesUploadedFile(),\n }}\n />\n </li>\n ))}\n </ul>\n )}\n </Dropzone>\n {error && (\n <p className={classNames?.error ?? dropzoneFilesError()}>{error}</p>\n )}\n </div>\n );\n};\n"],"mappings":"k+BAgEA,MAAa,GAAiB,CAC5B,QACA,cACA,QACA,QACA,WACA,OACA,eACA,WACA,SACA,MACA,UACA,gBACwB,CACxB,IAAM,EAAc,GAAO,CACrB,EAAU,GAAW,EAI3B,OACE,EAAC,MAAA,CACC,UAAW,EACT,GAAY,eAAiB,GAAe,CAC5C,GAAY,MAAQ,GAAmB,CACxC,WAED,EAAC,MAAA,CAAI,UAAW,GAAY,cAAgB,GAA2B,WAEtE,GACC,EAAC,QAAA,CACC,QAAS,EACT,UAAW,GAAY,OAAS,GAAoB,UAEnD,GACK,CAET,GACC,EAAC,IAAA,CAAE,UAAW,GAAY,aAAe,GAA0B,UAChE,GACC,CAAA,EACE,CACR,EAAC,EAAA,CACW,WACF,SACH,MACS,eACd,QAAS,EACF,QACG,WACJ,OACN,WAAY,CACV,SAAU,GAAY,UAAU,UAAY,GAAuB,CACpE,WAEC,CAAE,QAAO,gBACP,EAAC,KAAA,CAAG,UAAW,GAAY,UAAY,GAAuB,UAC3D,OAAO,OAAO,EAAM,CAAC,IAAK,GACzB,EAAC,KAAA,CAEC,UAAW,GAAY,UAAY,GAAuB,UAE1D,EAAC,EAAA,CAEC,SAAU,EAAK,KACf,SAAU,IAAI,EAAK,KAAO,MAAM,QAAQ,EAAE,CAAC,KAC3C,SAAU,EAAK,KACf,SAAU,EAAK,KACf,IAAK,EAAK,IACV,aAAgB,EAAW,EAAK,KAAK,CACrC,UACE,EAAC,EAAA,CACC,WAAY,CACV,YACE,GAAY,kBAAkB,aAC9B,GAA2C,CAC7C,KACE,GAAY,kBAAkB,MAC9B,GAA+C,CAClD,UAGD,EAAC,EAAA,CACC,KAAK,uCACL,KAAK,yBACL,WAAY,CACV,KACE,GAAY,WAAW,MACvB,GAAoC,CACtC,KACE,GAAY,WAAW,MACvB,GAAwC,CAC1C,QAAS,CACP,QACE,GAAY,WAAW,SAAS,SAChC,GAA2C,CAC7C,KACE,GAAY,WAAW,SAAS,MAChC,GAA+C,CAClD,CACF,EACD,EACU,CAEhB,WAAY,CACV,aACE,GAAY,cAAc,cAC1B,GAA2B,CAC9B,EA7CI,EAAK,KA8CV,EAlDG,EAAK,KAmDP,CACL,EACC,EAEA,CACV,GACC,EAAC,IAAA,CAAE,UAAW,GAAY,OAAS,GAAoB,UAAG,GAAU,GAElE"}
@@ -0,0 +1,35 @@
1
+ import { FileInputProps } from "@mantine/core";
2
+ import "react/jsx-runtime";
3
+ import { ReactNode } from "react";
4
+
5
+ //#region src/components/controls/file-input/BaseFileInput.d.ts
6
+ type BaseFileInputProps = Omit<FileInputProps, 'value' | 'defaultValue' | 'onChange' | 'classNames' | 'valueComponent' | 'multiple'> & {
7
+ label?: ReactNode;
8
+ description?: ReactNode;
9
+ placeholder?: ReactNode;
10
+ error?: ReactNode;
11
+ accept?: string;
12
+ required?: boolean;
13
+ disabled?: boolean;
14
+ multiple: boolean;
15
+ onChange?: (payload: File | File[] | null) => void;
16
+ valueComponent?: FileInputProps['valueComponent'];
17
+ classNames?: {
18
+ fileInput?: string;
19
+ root?: string;
20
+ label?: string;
21
+ required?: string;
22
+ description?: string;
23
+ error?: string;
24
+ wrapper?: string;
25
+ input?: string;
26
+ section?: string;
27
+ placeholder?: string;
28
+ startIcon?: {
29
+ icon?: string;
30
+ };
31
+ };
32
+ };
33
+ //#endregion
34
+ export { BaseFileInputProps };
35
+ //# sourceMappingURL=BaseFileInput.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseFileInput.d.mts","names":[],"sources":["../../../../src/components/controls/file-input/BaseFileInput.tsx"],"mappings":";;;;;KAmBY,kBAAA,GAAqB,IAAA,CAC/B,cAAA;EAQA,KAAA,GAAQ,SAAA;EACR,WAAA,GAAc,SAAA;EACd,WAAA,GAAc,SAAA;EACd,KAAA,GAAQ,SAAA;EACR,MAAA;EACA,QAAA;EACA,QAAA;EACA,QAAA;EACA,QAAA,IAAY,OAAA,EAAS,IAAA,GAAO,IAAA;EAC5B,cAAA,GAAiB,cAAA;EACjB,UAAA;IACE,SAAA;IACA,IAAA;IACA,KAAA;IACA,QAAA;IACA,WAAA;IACA,KAAA;IACA,OAAA;IACA,KAAA;IACA,OAAA;IACA,WAAA;IACA,SAAA;MACE,IAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import{Icon as e}from"../../data-display/icons/icon/Icon.mjs";import{cx as t}from"@mage-ui/styled-system/css";import{fileInput as n,fileInputDescription as r,fileInputError as i,fileInputInput as a,fileInputLabel as o,fileInputPlaceholder as s,fileInputRequired as c,fileInputRoot as l,fileInputSection as u,fileInputStartIcon as d,fileInputWrapper as f}from"@mage-ui/styled-system/recipes";import{FileInput as p}from"@mantine/core";import{jsx as m}from"react/jsx-runtime";const h=({name:h,onBlur:g,onFocus:_,onChange:v,label:y,description:b,placeholder:x,error:S,multiple:C,accept:w,required:T,disabled:E,valueComponent:D,classNames:O})=>m(p,{name:h,onBlur:g,onFocus:_,onChange:e=>{v?.(e)},disabled:E,required:T,multiple:C,accept:w,clearable:!0,label:y,description:b,placeholder:x,error:S,valueComponent:D,leftSection:m(e,{name:`mage-dropzone-upload-01`,path:`/icons/sprite-mage.svg`,classNames:{icon:O?.startIcon?.icon??d()}}),classNames:{root:t(O?.fileInput??n(),O?.root??l(),`group`),label:O?.label??o(),required:O?.required??c(),description:O?.description??r(),error:O?.error??i(),wrapper:O?.wrapper??f(),input:t(O?.input??a(),`peer`),section:t(O?.section??u(),`group`),placeholder:O?.placeholder??s()}});export{h as BaseFileInput};
2
+ //# sourceMappingURL=BaseFileInput.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseFileInput.mjs","names":["MantineFileInput"],"sources":["../../../../src/components/controls/file-input/BaseFileInput.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { cx } from '@mage-ui/styled-system/css';\nimport { Icon } from '@/components/data-display/icons/icon/Icon';\nimport {\n fileInput,\n fileInputDescription,\n fileInputError,\n fileInputInput,\n fileInputLabel,\n fileInputPlaceholder,\n fileInputRequired,\n fileInputRoot,\n fileInputSection,\n fileInputWrapper,\n fileInputStartIcon,\n} from '@mage-ui/styled-system/recipes';\nimport type { FileInputProps as MantineFileInputProps } from '@mantine/core';\nimport { FileInput as MantineFileInput } from '@mantine/core';\n\nexport type BaseFileInputProps = Omit<\n MantineFileInputProps,\n | 'value'\n | 'defaultValue'\n | 'onChange'\n | 'classNames'\n | 'valueComponent'\n | 'multiple'\n> & {\n label?: ReactNode;\n description?: ReactNode;\n placeholder?: ReactNode;\n error?: ReactNode;\n accept?: string;\n required?: boolean;\n disabled?: boolean;\n multiple: boolean;\n onChange?: (payload: File | File[] | null) => void;\n valueComponent?: MantineFileInputProps['valueComponent'];\n classNames?: {\n fileInput?: string;\n root?: string;\n label?: string;\n required?: string;\n description?: string;\n error?: string;\n wrapper?: string;\n input?: string;\n section?: string;\n placeholder?: string;\n startIcon?: {\n icon?: string;\n };\n };\n};\n\nexport const BaseFileInput = ({\n name,\n onBlur,\n onFocus,\n onChange,\n label,\n description,\n placeholder,\n error,\n multiple,\n accept,\n required,\n disabled,\n valueComponent,\n classNames,\n}: BaseFileInputProps) => {\n return (\n <MantineFileInput\n name={name}\n onBlur={onBlur}\n onFocus={onFocus}\n onChange={(payload) => {\n onChange?.(payload);\n }}\n disabled={disabled}\n required={required}\n multiple={multiple}\n accept={accept}\n clearable={true}\n label={label}\n description={description}\n placeholder={placeholder}\n error={error}\n valueComponent={valueComponent}\n leftSection={\n <Icon\n name='mage-dropzone-upload-01'\n path='/icons/sprite-mage.svg'\n classNames={{\n icon: classNames?.startIcon?.icon ?? fileInputStartIcon(),\n }}\n />\n }\n classNames={{\n root: cx(\n classNames?.fileInput ?? fileInput(),\n classNames?.root ?? fileInputRoot(),\n 'group',\n ),\n label: classNames?.label ?? fileInputLabel(),\n required: classNames?.required ?? fileInputRequired(),\n description: classNames?.description ?? fileInputDescription(),\n error: classNames?.error ?? fileInputError(),\n wrapper: classNames?.wrapper ?? fileInputWrapper(),\n input: cx(classNames?.input ?? fileInputInput(), 'peer'),\n section: cx(classNames?.section ?? fileInputSection(), 'group'),\n placeholder: classNames?.placeholder ?? fileInputPlaceholder(),\n }}\n />\n );\n};\n"],"mappings":"ydAuDA,MAAa,GAAiB,CAC5B,OACA,SACA,UACA,WACA,QACA,cACA,cACA,QACA,WACA,SACA,WACA,WACA,iBACA,gBAGE,EAACA,EAAAA,CACO,OACE,SACC,UACT,SAAW,GAAY,CACrB,IAAW,EAAQ,EAEX,WACA,WACA,WACF,SACR,UAAW,GACJ,QACM,cACA,cACN,QACS,iBAChB,YACE,EAAC,EAAA,CACC,KAAK,0BACL,KAAK,yBACL,WAAY,CACV,KAAM,GAAY,WAAW,MAAQ,GAAoB,CAC1D,EACD,CAEJ,WAAY,CACV,KAAM,EACJ,GAAY,WAAa,GAAW,CACpC,GAAY,MAAQ,GAAe,CACnC,QACD,CACD,MAAO,GAAY,OAAS,GAAgB,CAC5C,SAAU,GAAY,UAAY,GAAmB,CACrD,YAAa,GAAY,aAAe,GAAsB,CAC9D,MAAO,GAAY,OAAS,GAAgB,CAC5C,QAAS,GAAY,SAAW,GAAkB,CAClD,MAAO,EAAG,GAAY,OAAS,GAAgB,CAAE,OAAO,CACxD,QAAS,EAAG,GAAY,SAAW,GAAkB,CAAE,QAAQ,CAC/D,YAAa,GAAY,aAAe,GAAsB,CAC/D,EACD"}
@@ -0,0 +1,24 @@
1
+ import { BaseFileInputProps } from "./BaseFileInput.mjs";
2
+ import * as react_jsx_runtime20 from "react/jsx-runtime";
3
+
4
+ //#region src/components/controls/file-input/FileInput.d.ts
5
+ type FileInputProps = Omit<BaseFileInputProps, 'multiple' | 'valueComponent' | 'onChange'> & {
6
+ onChange?: (file: File | null) => void;
7
+ };
8
+ declare const FileInput: ({
9
+ name,
10
+ onBlur,
11
+ onFocus,
12
+ onChange,
13
+ label,
14
+ description,
15
+ placeholder,
16
+ error,
17
+ accept,
18
+ required,
19
+ disabled,
20
+ classNames
21
+ }: FileInputProps) => react_jsx_runtime20.JSX.Element;
22
+ //#endregion
23
+ export { FileInput, FileInputProps };
24
+ //# sourceMappingURL=FileInput.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileInput.d.mts","names":[],"sources":["../../../../src/components/controls/file-input/FileInput.tsx"],"mappings":";;;;KAEY,cAAA,GAAiB,IAAA,CAC3B,kBAAA;EAGA,QAAA,IAAY,IAAA,EAAM,IAAA;AAAA;AAAA,cAGP,SAAA;EAAa,IAAA;EAAA,MAAA;EAAA,OAAA;EAAA,QAAA;EAAA,KAAA;EAAA,WAAA;EAAA,WAAA;EAAA,KAAA;EAAA,MAAA;EAAA,QAAA;EAAA,QAAA;EAAA;AAAA,GAavB,cAAA,KAAc,mBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -0,0 +1,2 @@
1
+ import{BaseFileInput as e}from"./BaseFileInput.mjs";import{jsx as t}from"react/jsx-runtime";const n=({name:n,onBlur:r,onFocus:i,onChange:a,label:o,description:s,placeholder:c,error:l,accept:u,required:d,disabled:f,classNames:p})=>t(e,{name:n,onBlur:r,onFocus:i,label:o,description:s,placeholder:c,error:l,accept:u,required:d,disabled:f,classNames:p,multiple:!1,onChange:e=>{a?.(e)}});export{n as FileInput};
2
+ //# sourceMappingURL=FileInput.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileInput.mjs","names":[],"sources":["../../../../src/components/controls/file-input/FileInput.tsx"],"sourcesContent":["import { BaseFileInput, type BaseFileInputProps } from './BaseFileInput';\n\nexport type FileInputProps = Omit<\n BaseFileInputProps,\n 'multiple' | 'valueComponent' | 'onChange'\n> & {\n onChange?: (file: File | null) => void;\n};\n\nexport const FileInput = ({\n name,\n onBlur,\n onFocus,\n onChange,\n label,\n description,\n placeholder,\n error,\n accept,\n required,\n disabled,\n classNames,\n}: FileInputProps) => {\n return (\n <BaseFileInput\n name={name}\n onBlur={onBlur}\n onFocus={onFocus}\n label={label}\n description={description}\n placeholder={placeholder}\n error={error}\n accept={accept}\n required={required}\n disabled={disabled}\n classNames={classNames}\n multiple={false}\n onChange={(payload) => {\n onChange?.(payload as File | null);\n }}\n />\n );\n};\n\n"],"mappings":"4FASA,MAAa,GAAa,CACxB,OACA,SACA,UACA,WACA,QACA,cACA,cACA,QACA,SACA,WACA,WACA,gBAGE,EAAC,EAAA,CACO,OACE,SACC,UACF,QACM,cACA,cACN,QACC,SACE,WACA,WACE,aACZ,SAAU,GACV,SAAW,GAAY,CACrB,IAAW,EAAuB,GAEpC"}