mblabs-roccato-frontend-commons 0.2.27 → 0.2.28

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 (541) hide show
  1. package/README.md +241 -241
  2. package/dist/index.d.ts +3 -3
  3. package/dist/mblabs-roccato-frontend-commons.css +1 -1
  4. package/dist/mblabs-roccato-frontend-commons.js +32 -17
  5. package/package.json +157 -157
  6. package/src/components/atoms/AudioPlayer/audio-player.stories.tsx +36 -36
  7. package/src/components/atoms/AudioPlayer/audio-player.test.tsx +19 -19
  8. package/src/components/atoms/AudioPlayer/audio-player.tsx +13 -13
  9. package/src/components/atoms/AudioPlayer/index.ts +1 -1
  10. package/src/components/atoms/Badge/badge.stories.tsx +80 -80
  11. package/src/components/atoms/Badge/badge.test.tsx +59 -59
  12. package/src/components/atoms/Badge/badge.tsx +47 -47
  13. package/src/components/atoms/Badge/index.ts +1 -1
  14. package/src/components/atoms/Box/box.stories.tsx +37 -37
  15. package/src/components/atoms/Box/box.test.tsx +47 -47
  16. package/src/components/atoms/Box/box.tsx +7 -7
  17. package/src/components/atoms/Box/index.ts +1 -1
  18. package/src/components/atoms/Button/button.stories.tsx +108 -108
  19. package/src/components/atoms/Button/button.test.tsx +54 -54
  20. package/src/components/atoms/Button/button.tsx +96 -96
  21. package/src/components/atoms/Button/index.ts +1 -1
  22. package/src/components/atoms/ButtonUpload/button-upload.stories.tsx +137 -137
  23. package/src/components/atoms/ButtonUpload/button-upload.tsx +303 -303
  24. package/src/components/atoms/Calendar/calendar.stories.tsx +65 -65
  25. package/src/components/atoms/Calendar/calendar.test.tsx +93 -93
  26. package/src/components/atoms/Calendar/calendar.tsx +185 -185
  27. package/src/components/atoms/Calendar/index.ts +1 -1
  28. package/src/components/atoms/CheckIcon/check-icon.stories.tsx +38 -38
  29. package/src/components/atoms/CheckIcon/check-icon.test.tsx +269 -269
  30. package/src/components/atoms/CheckIcon/check-icon.tsx +140 -140
  31. package/src/components/atoms/Checkbox/checkbox.stories.tsx +133 -133
  32. package/src/components/atoms/Checkbox/checkbox.test.tsx +70 -70
  33. package/src/components/atoms/Checkbox/checkbox.tsx +31 -31
  34. package/src/components/atoms/Checkbox/index.ts +1 -1
  35. package/src/components/atoms/Flex/flex.stories.tsx +33 -33
  36. package/src/components/atoms/Flex/flex.test.tsx +47 -47
  37. package/src/components/atoms/Flex/flex.tsx +7 -7
  38. package/src/components/atoms/Flex/index.ts +1 -1
  39. package/src/components/atoms/Grid/grid.stories.tsx +33 -33
  40. package/src/components/atoms/Grid/grid.test.tsx +47 -47
  41. package/src/components/atoms/Grid/grid.tsx +7 -7
  42. package/src/components/atoms/Grid/index.ts +1 -1
  43. package/src/components/atoms/Icon/icon.stories.tsx +169 -169
  44. package/src/components/atoms/Icon/icon.test.tsx +272 -272
  45. package/src/components/atoms/Icon/icon.tsx +119 -119
  46. package/src/components/atoms/Input/index.ts +1 -1
  47. package/src/components/atoms/Input/input.stories.tsx +704 -704
  48. package/src/components/atoms/Input/input.test.tsx +99 -99
  49. package/src/components/atoms/Input/input.tsx +170 -170
  50. package/src/components/atoms/InputMoney/index.ts +2 -2
  51. package/src/components/atoms/InputMoney/input-money.stories.tsx +240 -240
  52. package/src/components/atoms/InputMoney/input-money.test.tsx +98 -98
  53. package/src/components/atoms/InputMoney/input-money.tsx +254 -254
  54. package/src/components/atoms/InputPhone/index.ts +1 -1
  55. package/src/components/atoms/InputPhone/input-phone.stories.tsx +446 -446
  56. package/src/components/atoms/InputPhone/input-phone.test.tsx +147 -147
  57. package/src/components/atoms/InputPhone/input-phone.tsx +267 -267
  58. package/src/components/atoms/InputSearch/index.ts +1 -1
  59. package/src/components/atoms/InputSearch/input-search.stories.tsx +359 -359
  60. package/src/components/atoms/InputSearch/input-search.test.tsx +238 -238
  61. package/src/components/atoms/InputSearch/input-search.tsx +209 -209
  62. package/src/components/atoms/InputUpload/index.ts +1 -1
  63. package/src/components/atoms/InputUpload/input-upload.stories.tsx +229 -229
  64. package/src/components/atoms/InputUpload/input-upload.test.tsx +555 -555
  65. package/src/components/atoms/InputUpload/input-upload.tsx +433 -433
  66. package/src/components/atoms/InputWithButton/index.ts +2 -2
  67. package/src/components/atoms/InputWithButton/input-with-button.stories.tsx +510 -510
  68. package/src/components/atoms/InputWithButton/input-with-button.test.tsx +127 -127
  69. package/src/components/atoms/InputWithButton/input-with-button.tsx +179 -179
  70. package/src/components/atoms/Label/index.ts +1 -1
  71. package/src/components/atoms/Label/label.stories.tsx +90 -90
  72. package/src/components/atoms/Label/label.test.tsx +59 -59
  73. package/src/components/atoms/Label/label.tsx +43 -43
  74. package/src/components/atoms/Progress/index.ts +1 -1
  75. package/src/components/atoms/Progress/progress.stories.tsx +30 -30
  76. package/src/components/atoms/Progress/progress.test.tsx +62 -62
  77. package/src/components/atoms/Progress/progress.tsx +32 -32
  78. package/src/components/atoms/RenderCondition/index.ts +1 -1
  79. package/src/components/atoms/RenderCondition/render-condition.stories.tsx +28 -28
  80. package/src/components/atoms/RenderCondition/render-condition.test.tsx +27 -27
  81. package/src/components/atoms/RenderCondition/render-condition.tsx +9 -9
  82. package/src/components/atoms/RichTextEditor/rich-text-editor.stories.tsx +236 -236
  83. package/src/components/atoms/RichTextEditor/rich-text-editor.test.tsx +441 -441
  84. package/src/components/atoms/RichTextEditor/rich-text-editor.tsx +230 -230
  85. package/src/components/atoms/RichTextRenderer/rich-text-renderer.stories.tsx +84 -84
  86. package/src/components/atoms/RichTextRenderer/rich-text-renderer.test.tsx +49 -49
  87. package/src/components/atoms/RichTextRenderer/rich-text-renderer.tsx +17 -17
  88. package/src/components/atoms/Separator/index.ts +1 -1
  89. package/src/components/atoms/Separator/separator.stories.tsx +117 -117
  90. package/src/components/atoms/Separator/separator.test.tsx +50 -50
  91. package/src/components/atoms/Separator/separator.tsx +28 -28
  92. package/src/components/atoms/Skeleton/index.ts +1 -1
  93. package/src/components/atoms/Skeleton/skeleton.stories.tsx +84 -84
  94. package/src/components/atoms/Skeleton/skeleton.test.tsx +39 -39
  95. package/src/components/atoms/Skeleton/skeleton.tsx +14 -14
  96. package/src/components/atoms/Slider/index.ts +1 -1
  97. package/src/components/atoms/Slider/slider.stories.tsx +28 -28
  98. package/src/components/atoms/Slider/slider.test.tsx +89 -89
  99. package/src/components/atoms/Slider/slider.tsx +54 -54
  100. package/src/components/atoms/Sonner/index.ts +1 -1
  101. package/src/components/atoms/Sonner/sonner.css +39 -39
  102. package/src/components/atoms/Sonner/sonner.stories.tsx +260 -260
  103. package/src/components/atoms/Sonner/sonner.test.tsx +24 -24
  104. package/src/components/atoms/Sonner/sonner.tsx +13 -13
  105. package/src/components/atoms/Switch/index.ts +1 -1
  106. package/src/components/atoms/Switch/switch.stories.tsx +128 -128
  107. package/src/components/atoms/Switch/switch.test.tsx +70 -70
  108. package/src/components/atoms/Switch/switch.tsx +61 -61
  109. package/src/components/atoms/Textarea/index.ts +1 -1
  110. package/src/components/atoms/Textarea/textarea.stories.tsx +169 -169
  111. package/src/components/atoms/Textarea/textarea.test.tsx +56 -56
  112. package/src/components/atoms/Textarea/textarea.tsx +26 -26
  113. package/src/components/atoms/Toggle/index.ts +1 -1
  114. package/src/components/atoms/Toggle/toggle.stories.tsx +170 -170
  115. package/src/components/atoms/Toggle/toggle.test.tsx +62 -62
  116. package/src/components/atoms/Toggle/toggle.tsx +47 -47
  117. package/src/components/atoms/Typography/index.ts +1 -1
  118. package/src/components/atoms/Typography/typography.stories.tsx +95 -95
  119. package/src/components/atoms/Typography/typography.test.tsx +66 -66
  120. package/src/components/atoms/Typography/typography.tsx +63 -63
  121. package/src/components/atoms/UploadImageField/upload-image-field.stories.tsx +249 -249
  122. package/src/components/atoms/UploadImageField/upload-image-field.test.tsx +347 -347
  123. package/src/components/atoms/UploadImageField/upload-image-field.tsx +361 -361
  124. package/src/components/atoms/VideoPlayer/index.ts +1 -1
  125. package/src/components/atoms/VideoPlayer/video-player.stories.tsx +37 -37
  126. package/src/components/atoms/VideoPlayer/video-player.test.tsx +19 -19
  127. package/src/components/atoms/VideoPlayer/video-player.tsx +26 -26
  128. package/src/components/atoms/index.ts +32 -32
  129. package/src/components/icons/alert-circle.tsx +22 -22
  130. package/src/components/icons/align-center.tsx +21 -21
  131. package/src/components/icons/align-left.tsx +21 -21
  132. package/src/components/icons/annotation-dots.tsx +16 -16
  133. package/src/components/icons/annotation-question.tsx +14 -14
  134. package/src/components/icons/annotation.tsx +22 -22
  135. package/src/components/icons/announcement-01.tsx +14 -14
  136. package/src/components/icons/announcement-02.tsx +14 -14
  137. package/src/components/icons/apple-logo.tsx +8 -8
  138. package/src/components/icons/arrow-circle-broken-right.tsx +16 -16
  139. package/src/components/icons/arrow-down.tsx +8 -8
  140. package/src/components/icons/arrow-up.tsx +8 -8
  141. package/src/components/icons/at-sign.tsx +21 -21
  142. package/src/components/icons/award-01.tsx +15 -15
  143. package/src/components/icons/award-03.tsx +16 -16
  144. package/src/components/icons/bank-note-01.tsx +14 -14
  145. package/src/components/icons/bar-chart-square-02.tsx +8 -8
  146. package/src/components/icons/bell-01.tsx +8 -8
  147. package/src/components/icons/bell-04.tsx +16 -16
  148. package/src/components/icons/bold-01.tsx +21 -21
  149. package/src/components/icons/book-open-01.tsx +14 -14
  150. package/src/components/icons/brackets-ellipses.tsx +21 -21
  151. package/src/components/icons/briefcase-01.tsx +8 -8
  152. package/src/components/icons/brush-01.tsx +21 -21
  153. package/src/components/icons/building-02.tsx +8 -8
  154. package/src/components/icons/building-06.tsx +9 -9
  155. package/src/components/icons/calendar-check-01.tsx +22 -22
  156. package/src/components/icons/calendar-minus-02.tsx +14 -14
  157. package/src/components/icons/calendar.tsx +8 -8
  158. package/src/components/icons/certificate-01.tsx +16 -16
  159. package/src/components/icons/chart-breakout-square.tsx +16 -16
  160. package/src/components/icons/check-circle-02.tsx +15 -15
  161. package/src/components/icons/check-circle.tsx +15 -15
  162. package/src/components/icons/check.tsx +21 -21
  163. package/src/components/icons/chevron-down-double.tsx +16 -16
  164. package/src/components/icons/chevron-down.tsx +8 -8
  165. package/src/components/icons/chevron-left-double.tsx +22 -22
  166. package/src/components/icons/chevron-left.tsx +16 -16
  167. package/src/components/icons/chevron-right-double.tsx +22 -22
  168. package/src/components/icons/chevron-right.tsx +16 -16
  169. package/src/components/icons/chevron-up-double.tsx +16 -16
  170. package/src/components/icons/clock-rewind.tsx +15 -15
  171. package/src/components/icons/clock-stopwatch.tsx +14 -14
  172. package/src/components/icons/coins-hand.tsx +14 -14
  173. package/src/components/icons/coins-stacked-01.tsx +14 -14
  174. package/src/components/icons/coins-stacked-02.tsx +14 -14
  175. package/src/components/icons/container.tsx +8 -8
  176. package/src/components/icons/copy-02.tsx +16 -16
  177. package/src/components/icons/copy-04.tsx +21 -21
  178. package/src/components/icons/corner-down-right.tsx +9 -9
  179. package/src/components/icons/countries/br.tsx +19 -19
  180. package/src/components/icons/countries/es.tsx +18 -18
  181. package/src/components/icons/countries/index.ts +2 -2
  182. package/src/components/icons/countries/us.tsx +20 -20
  183. package/src/components/icons/dataflow-03.tsx +14 -14
  184. package/src/components/icons/dotpoints-01.tsx +21 -21
  185. package/src/components/icons/dots-vertical.tsx +35 -35
  186. package/src/components/icons/download-03.tsx +16 -16
  187. package/src/components/icons/download-cloud-02.tsx +14 -14
  188. package/src/components/icons/drag.tsx +14 -14
  189. package/src/components/icons/dropper.tsx +21 -21
  190. package/src/components/icons/edit-01.tsx +15 -15
  191. package/src/components/icons/edit-02.tsx +8 -8
  192. package/src/components/icons/edit-03.tsx +23 -23
  193. package/src/components/icons/eye.tsx +21 -21
  194. package/src/components/icons/face-frown.tsx +14 -14
  195. package/src/components/icons/face-happy.tsx +14 -14
  196. package/src/components/icons/file-06.tsx +14 -14
  197. package/src/components/icons/file-attachment-04.tsx +14 -14
  198. package/src/components/icons/file-download-02.tsx +15 -15
  199. package/src/components/icons/file-plus-02.tsx +15 -15
  200. package/src/components/icons/file-search-01.tsx +22 -22
  201. package/src/components/icons/file-search-03.tsx +14 -14
  202. package/src/components/icons/filter-lines.tsx +21 -21
  203. package/src/components/icons/first-category.tsx +15 -15
  204. package/src/components/icons/first-stage.tsx +19 -19
  205. package/src/components/icons/folder.tsx +14 -14
  206. package/src/components/icons/google.tsx +12 -12
  207. package/src/components/icons/graduation-hat-02.tsx +14 -14
  208. package/src/components/icons/grid-01.tsx +35 -35
  209. package/src/components/icons/help-circle.tsx +15 -15
  210. package/src/components/icons/help-square.tsx +16 -16
  211. package/src/components/icons/home-line.tsx +21 -21
  212. package/src/components/icons/icons.stories.tsx +198 -198
  213. package/src/components/icons/index.ts +141 -141
  214. package/src/components/icons/info-circle.tsx +14 -14
  215. package/src/components/icons/italic-01.tsx +21 -21
  216. package/src/components/icons/last-category.tsx +10 -10
  217. package/src/components/icons/last-stage.tsx +19 -19
  218. package/src/components/icons/layout-alt-04.tsx +9 -9
  219. package/src/components/icons/lightbulb-02.tsx +16 -16
  220. package/src/components/icons/link-01.tsx +15 -15
  221. package/src/components/icons/link-broken-01.tsx +16 -16
  222. package/src/components/icons/linkedin-logo.tsx +16 -16
  223. package/src/components/icons/lock-01.tsx +21 -21
  224. package/src/components/icons/log-out-01.tsx +8 -8
  225. package/src/components/icons/mail-01.tsx +15 -15
  226. package/src/components/icons/marker-pin-02.tsx +9 -9
  227. package/src/components/icons/menu-01.tsx +8 -8
  228. package/src/components/icons/middle-category.tsx +9 -9
  229. package/src/components/icons/middle-stage.tsx +19 -19
  230. package/src/components/icons/ms-outlook.tsx +47 -47
  231. package/src/components/icons/paragraph-spacing.tsx +14 -14
  232. package/src/components/icons/phone-01.tsx +21 -21
  233. package/src/components/icons/pie-chart-02.tsx +21 -21
  234. package/src/components/icons/plus-circle.tsx +15 -15
  235. package/src/components/icons/portal-logo.tsx +76 -76
  236. package/src/components/icons/presentation-chart-02.tsx +13 -13
  237. package/src/components/icons/route.tsx +22 -22
  238. package/src/components/icons/save-01.tsx +14 -14
  239. package/src/components/icons/search-lg.tsx +14 -14
  240. package/src/components/icons/search-sm.tsx +8 -8
  241. package/src/components/icons/send-03.tsx +14 -14
  242. package/src/components/icons/settings-01.tsx +16 -16
  243. package/src/components/icons/settings-03.tsx +13 -13
  244. package/src/components/icons/share-05.tsx +15 -15
  245. package/src/components/icons/share-06.tsx +14 -14
  246. package/src/components/icons/slash-circle-01.tsx +8 -8
  247. package/src/components/icons/star-01.tsx +8 -8
  248. package/src/components/icons/step-icon-active.tsx +10 -10
  249. package/src/components/icons/step-icon-checked.tsx +9 -9
  250. package/src/components/icons/step-icon-default.tsx +10 -10
  251. package/src/components/icons/switch-horizontal-01.tsx +9 -9
  252. package/src/components/icons/table-01.tsx +14 -14
  253. package/src/components/icons/tag-01.tsx +14 -14
  254. package/src/components/icons/tag-03.tsx +14 -14
  255. package/src/components/icons/tool-02.tsx +13 -13
  256. package/src/components/icons/trash-01.tsx +15 -15
  257. package/src/components/icons/underline-01.tsx +21 -21
  258. package/src/components/icons/upload-cloud-02.tsx +14 -14
  259. package/src/components/icons/user-01.tsx +8 -8
  260. package/src/components/icons/user-03.tsx +9 -9
  261. package/src/components/icons/user-check-01.tsx +13 -13
  262. package/src/components/icons/user-circle.tsx +13 -13
  263. package/src/components/icons/user-edit.tsx +16 -16
  264. package/src/components/icons/user-minus-02.tsx +14 -14
  265. package/src/components/icons/user-plus-01.tsx +22 -22
  266. package/src/components/icons/user-plus-02.tsx +14 -14
  267. package/src/components/icons/user-square.tsx +16 -16
  268. package/src/components/icons/users-01.tsx +13 -13
  269. package/src/components/icons/users-plus-01.tsx +21 -21
  270. package/src/components/icons/users-plus.tsx +16 -16
  271. package/src/components/icons/vertical-drag.tsx +21 -21
  272. package/src/components/icons/x-circle.tsx +14 -14
  273. package/src/components/icons/x-close.tsx +8 -8
  274. package/src/components/icons/zap-fast.tsx +16 -16
  275. package/src/components/icons/zap.tsx +8 -8
  276. package/src/components/index.ts +4 -4
  277. package/src/components/molecules/Accordion/accordion.stories.tsx +81 -81
  278. package/src/components/molecules/Accordion/accordion.test.tsx +91 -91
  279. package/src/components/molecules/Accordion/accordion.tsx +65 -65
  280. package/src/components/molecules/Accordion/index.ts +1 -1
  281. package/src/components/molecules/Alert/alert.stories.tsx +75 -75
  282. package/src/components/molecules/Alert/alert.test.tsx +58 -58
  283. package/src/components/molecules/Alert/alert.tsx +67 -67
  284. package/src/components/molecules/Alert/index.ts +1 -1
  285. package/src/components/molecules/AlertDialog/alert-dialog.stories.tsx +55 -55
  286. package/src/components/molecules/AlertDialog/alert-dialog.test.tsx +34 -34
  287. package/src/components/molecules/AlertDialog/alert-dialog.tsx +176 -172
  288. package/src/components/molecules/AlertDialog/index.ts +1 -1
  289. package/src/components/molecules/Avatar/avatar.stories.tsx +98 -98
  290. package/src/components/molecules/Avatar/avatar.test.tsx +55 -55
  291. package/src/components/molecules/Avatar/avatar.tsx +55 -55
  292. package/src/components/molecules/Avatar/index.ts +1 -1
  293. package/src/components/molecules/Breadcrumb/breadcrumb.stories.tsx +125 -125
  294. package/src/components/molecules/Breadcrumb/breadcrumb.test.tsx +118 -118
  295. package/src/components/molecules/Breadcrumb/breadcrumb.tsx +120 -120
  296. package/src/components/molecules/Breadcrumb/index.ts +1 -1
  297. package/src/components/molecules/Card/card.stories.tsx +109 -109
  298. package/src/components/molecules/Card/card.test.tsx +103 -103
  299. package/src/components/molecules/Card/card.tsx +78 -78
  300. package/src/components/molecules/Card/index.ts +1 -1
  301. package/src/components/molecules/Collapsible/collapsible.stories.tsx +27 -27
  302. package/src/components/molecules/Collapsible/collapsible.test.tsx +35 -35
  303. package/src/components/molecules/Collapsible/collapsible.tsx +31 -31
  304. package/src/components/molecules/Collapsible/index.ts +1 -1
  305. package/src/components/molecules/ColorPicker/color-picker.stories.tsx +40 -40
  306. package/src/components/molecules/ColorPicker/color-picker.tsx +106 -106
  307. package/src/components/molecules/ColorPicker/index.ts +1 -1
  308. package/src/components/molecules/ColorScale/color-scale.stories.tsx +31 -31
  309. package/src/components/molecules/ColorScale/color-scale.tsx +74 -74
  310. package/src/components/molecules/ColorScale/index.ts +1 -1
  311. package/src/components/molecules/Command/command.stories.tsx +70 -70
  312. package/src/components/molecules/Command/command.test.tsx +49 -49
  313. package/src/components/molecules/Command/command.tsx +177 -177
  314. package/src/components/molecules/Command/index.ts +1 -1
  315. package/src/components/molecules/ContextMenu/context-menu.stories.tsx +68 -68
  316. package/src/components/molecules/ContextMenu/context-menu.test.tsx +24 -24
  317. package/src/components/molecules/ContextMenu/context-menu.tsx +259 -259
  318. package/src/components/molecules/ContextMenu/index.ts +1 -1
  319. package/src/components/molecules/DatePicker/date-picker.stories.tsx +233 -233
  320. package/src/components/molecules/DatePicker/date-picker.test.tsx +27 -27
  321. package/src/components/molecules/DatePicker/date-picker.tsx +512 -512
  322. package/src/components/molecules/Dialog/dialog.stories.tsx +48 -48
  323. package/src/components/molecules/Dialog/dialog.test.tsx +51 -51
  324. package/src/components/molecules/Dialog/dialog.tsx +155 -150
  325. package/src/components/molecules/Drawer/drawer.stories.tsx +182 -182
  326. package/src/components/molecules/Drawer/drawer.test.tsx +100 -100
  327. package/src/components/molecules/Drawer/drawer.tsx +211 -206
  328. package/src/components/molecules/Drawer/index.ts +1 -1
  329. package/src/components/molecules/Dropdown/dropdown-async.stories.tsx +14 -14
  330. package/src/components/molecules/Dropdown/dropdown.stories.tsx +111 -111
  331. package/src/components/molecules/Dropdown/dropdown.test.tsx +128 -128
  332. package/src/components/molecules/Dropdown/dropdown.tsx +321 -321
  333. package/src/components/molecules/DropdownMenu/dropdown-menu.stories.tsx +154 -154
  334. package/src/components/molecules/DropdownMenu/dropdown-menu.test.tsx +163 -163
  335. package/src/components/molecules/DropdownMenu/dropdown-menu.tsx +313 -313
  336. package/src/components/molecules/DropdownMenu/index.ts +1 -1
  337. package/src/components/molecules/HoverCard/hover-card.stories.tsx +48 -48
  338. package/src/components/molecules/HoverCard/hover-card.test.tsx +42 -42
  339. package/src/components/molecules/HoverCard/hover-card.tsx +44 -44
  340. package/src/components/molecules/HoverCard/index.ts +1 -1
  341. package/src/components/molecules/InputOTP/index.ts +1 -1
  342. package/src/components/molecules/InputOTP/input-otp.stories.tsx +52 -52
  343. package/src/components/molecules/InputOTP/input-otp.test.tsx +28 -28
  344. package/src/components/molecules/InputOTP/input-otp.tsx +76 -76
  345. package/src/components/molecules/Menubar/index.ts +1 -1
  346. package/src/components/molecules/Menubar/menubar.stories.tsx +113 -113
  347. package/src/components/molecules/Menubar/menubar.test.tsx +42 -42
  348. package/src/components/molecules/Menubar/menubar.tsx +314 -314
  349. package/src/components/molecules/NavigationMenu/index.ts +1 -1
  350. package/src/components/molecules/NavigationMenu/navigation-menu.stories.tsx +143 -143
  351. package/src/components/molecules/NavigationMenu/navigation-menu.test.tsx +69 -69
  352. package/src/components/molecules/NavigationMenu/navigation-menu.tsx +174 -174
  353. package/src/components/molecules/PDFViewer/index.ts +1 -1
  354. package/src/components/molecules/PDFViewer/pdf-viewer.stories.tsx +34 -34
  355. package/src/components/molecules/PDFViewer/pdf-viewer.test.tsx +26 -26
  356. package/src/components/molecules/PDFViewer/pdf-viewer.tsx +358 -358
  357. package/src/components/molecules/Pagination/index.ts +1 -1
  358. package/src/components/molecules/Pagination/pagination.stories.tsx +193 -193
  359. package/src/components/molecules/Pagination/pagination.test.tsx +447 -447
  360. package/src/components/molecules/Pagination/pagination.tsx +206 -206
  361. package/src/components/molecules/PaginationDotGroup/index.ts +1 -1
  362. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.stories.tsx +211 -211
  363. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.test.tsx +384 -384
  364. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.tsx +119 -119
  365. package/src/components/molecules/Popover/index.ts +1 -1
  366. package/src/components/molecules/Popover/popover-menu.stories.tsx +27 -27
  367. package/src/components/molecules/Popover/popover.test.tsx +50 -50
  368. package/src/components/molecules/Popover/popover.tsx +38 -38
  369. package/src/components/molecules/ProgressSteps/index.ts +1 -1
  370. package/src/components/molecules/ProgressSteps/progress-steps.stories.tsx +36 -36
  371. package/src/components/molecules/ProgressSteps/progress-steps.test.tsx +470 -470
  372. package/src/components/molecules/ProgressSteps/progress-steps.tsx +140 -140
  373. package/src/components/molecules/RadioGroup/index.ts +1 -1
  374. package/src/components/molecules/RadioGroup/radio-group.stories.tsx +42 -42
  375. package/src/components/molecules/RadioGroup/radio-group.test.tsx +22 -22
  376. package/src/components/molecules/RadioGroup/radio-group.tsx +55 -55
  377. package/src/components/molecules/Resizable/index.ts +1 -1
  378. package/src/components/molecules/Resizable/resizable.stories.tsx +52 -52
  379. package/src/components/molecules/Resizable/resizable.test.tsx +22 -22
  380. package/src/components/molecules/Resizable/resizable.tsx +55 -55
  381. package/src/components/molecules/ScrollArea/index.ts +1 -1
  382. package/src/components/molecules/ScrollArea/scroll-area.stories.tsx +93 -93
  383. package/src/components/molecules/ScrollArea/scroll-area.test.tsx +28 -28
  384. package/src/components/molecules/ScrollArea/scroll-area.tsx +57 -57
  385. package/src/components/molecules/Select/index.ts +1 -1
  386. package/src/components/molecules/Select/select.stories.tsx +63 -63
  387. package/src/components/molecules/Select/select.test.tsx +80 -80
  388. package/src/components/molecules/Select/select.tsx +172 -172
  389. package/src/components/molecules/Sheet/index.ts +1 -1
  390. package/src/components/molecules/Sheet/sheet.stories.tsx +141 -141
  391. package/src/components/molecules/Sheet/sheet.test.tsx +70 -70
  392. package/src/components/molecules/Sheet/sheet.tsx +138 -133
  393. package/src/components/molecules/Tabs/index.ts +1 -1
  394. package/src/components/molecules/Tabs/tabs.stories.tsx +221 -221
  395. package/src/components/molecules/Tabs/tabs.test.tsx +113 -113
  396. package/src/components/molecules/Tabs/tabs.tsx +102 -102
  397. package/src/components/molecules/ToggleGroup/index.ts +1 -1
  398. package/src/components/molecules/ToggleGroup/toggle-group.stories.tsx +117 -117
  399. package/src/components/molecules/ToggleGroup/toggle-group.test.tsx +100 -100
  400. package/src/components/molecules/ToggleGroup/toggle-group.tsx +70 -70
  401. package/src/components/molecules/Tooltip/index.ts +1 -1
  402. package/src/components/molecules/Tooltip/tooltip.stories.tsx +133 -133
  403. package/src/components/molecules/Tooltip/tooltip.test.tsx +58 -58
  404. package/src/components/molecules/Tooltip/tooltip.tsx +58 -58
  405. package/src/components/molecules/index.ts +33 -33
  406. package/src/components/organisms/Carousel/carousel.stories.tsx +94 -94
  407. package/src/components/organisms/Carousel/carousel.test.tsx +24 -24
  408. package/src/components/organisms/Carousel/carousel.tsx +383 -383
  409. package/src/components/organisms/Carousel/index.ts +1 -1
  410. package/src/components/organisms/Chart/chart.stories.tsx +102 -102
  411. package/src/components/organisms/Chart/chart.test.tsx +105 -105
  412. package/src/components/organisms/Chart/chart.tsx +294 -294
  413. package/src/components/organisms/Chart/index.ts +1 -1
  414. package/src/components/organisms/FileUpload/FilePreview/file-preview.tsx +55 -55
  415. package/src/components/organisms/FileUpload/FilePreview/index.ts +1 -1
  416. package/src/components/organisms/FileUpload/file-upload.stories.tsx +20 -20
  417. package/src/components/organisms/FileUpload/file-upload.test.tsx +59 -59
  418. package/src/components/organisms/FileUpload/file-upload.tsx +175 -175
  419. package/src/components/organisms/FileUpload/file.d.ts +20 -20
  420. package/src/components/organisms/Form/form.stories.tsx +155 -155
  421. package/src/components/organisms/Form/form.test.tsx +49 -49
  422. package/src/components/organisms/Form/form.tsx +133 -133
  423. package/src/components/organisms/Form/index.ts +1 -1
  424. package/src/components/organisms/Sidebar/index.ts +1 -1
  425. package/src/components/organisms/Sidebar/sidebar.stories.tsx +86 -86
  426. package/src/components/organisms/Sidebar/sidebar.test.tsx +101 -101
  427. package/src/components/organisms/Sidebar/sidebar.tsx +666 -666
  428. package/src/components/organisms/Table/index.ts +1 -1
  429. package/src/components/organisms/Table/table.stories.tsx +86 -86
  430. package/src/components/organisms/Table/table.test.tsx +42 -42
  431. package/src/components/organisms/Table/table.tsx +120 -120
  432. package/src/components/organisms/index.ts +6 -6
  433. package/src/constants/brazilian-states.ts +29 -29
  434. package/src/constants/index.ts +1 -1
  435. package/src/hooks/index.ts +10 -10
  436. package/src/hooks/useEditorActiveMarks.ts +62 -62
  437. package/src/hooks/useForm.ts +7 -7
  438. package/src/hooks/useFormContext.ts +6 -6
  439. package/src/hooks/useFormField.ts +41 -41
  440. package/src/hooks/useMobile.ts +61 -61
  441. package/src/hooks/useOnToggle.ts +28 -28
  442. package/src/hooks/usePDFNavigation.ts +40 -40
  443. package/src/hooks/usePDFZoom.ts +34 -34
  444. package/src/hooks/useSidebar.ts +23 -23
  445. package/src/hooks/useToast.tsx +62 -62
  446. package/src/index.css +73 -73
  447. package/src/main.ts +6 -6
  448. package/src/theme.css +387 -387
  449. package/src/utils/api/api.test.ts +63 -63
  450. package/src/utils/api/api.ts +33 -33
  451. package/src/utils/api/index.ts +1 -1
  452. package/src/utils/array/array.test.ts +159 -159
  453. package/src/utils/array/array.ts +43 -43
  454. package/src/utils/array/index.ts +1 -1
  455. package/src/utils/clipboard/clipboard.test.ts +217 -217
  456. package/src/utils/clipboard/clipboard.ts +40 -40
  457. package/src/utils/cn/cn.test.ts +42 -42
  458. package/src/utils/cn/cn.ts +6 -6
  459. package/src/utils/cn/index.ts +1 -1
  460. package/src/utils/color-utils/color-utils.test.ts +46 -46
  461. package/src/utils/color-utils/color-utils.ts +97 -97
  462. package/src/utils/color-utils/index.ts +1 -1
  463. package/src/utils/countries/countries.ts +69 -69
  464. package/src/utils/currency/currency.test.ts +113 -113
  465. package/src/utils/currency/currency.ts +133 -133
  466. package/src/utils/currency/index.ts +1 -1
  467. package/src/utils/date/date.test.ts +166 -166
  468. package/src/utils/date/date.ts +83 -83
  469. package/src/utils/date/index.ts +1 -1
  470. package/src/utils/file/file.ts +44 -44
  471. package/src/utils/file/index.ts +1 -1
  472. package/src/utils/get-initials/get-initials.test.ts +40 -40
  473. package/src/utils/get-initials/get-initials.ts +13 -13
  474. package/src/utils/get-initials/index.ts +1 -1
  475. package/src/utils/index.ts +14 -14
  476. package/src/utils/masks/index.ts +1 -1
  477. package/src/utils/masks/masks.ts +169 -169
  478. package/src/utils/render-highlighted-text/render-highlighted-text.tsx +24 -24
  479. package/src/utils/string/index.ts +1 -1
  480. package/src/utils/string/string.test.ts +185 -185
  481. package/src/utils/string/string.ts +157 -157
  482. package/src/utils/video/index.ts +1 -1
  483. package/src/utils/video/video.ts +8 -8
  484. package/src/vite-env.d.ts +3 -3
  485. package/src/components/atoms/AudioPlayer/__snapshots__/audio-player.test.tsx.snap +0 -22
  486. package/src/components/atoms/Badge/__snapshots__/badge.test.tsx.snap +0 -12
  487. package/src/components/atoms/Box/__snapshots__/box.test.tsx.snap +0 -10
  488. package/src/components/atoms/Button/__snapshots__/button.test.tsx.snap +0 -13
  489. package/src/components/atoms/Calendar/__snapshots__/calendar.test.tsx.snap +0 -936
  490. package/src/components/atoms/Checkbox/__snapshots__/checkbox.test.tsx.snap +0 -16
  491. package/src/components/atoms/Flex/__snapshots__/flex.test.tsx.snap +0 -10
  492. package/src/components/atoms/Grid/__snapshots__/grid.test.tsx.snap +0 -10
  493. package/src/components/atoms/Icon/__snapshots__/icon.test.tsx.snap +0 -103
  494. package/src/components/atoms/Input/__snapshots__/input.test.tsx.snap +0 -50
  495. package/src/components/atoms/Label/__snapshots__/label.test.tsx.snap +0 -17
  496. package/src/components/atoms/Progress/__snapshots__/progress.test.tsx.snap +0 -25
  497. package/src/components/atoms/RichTextEditor/__snapshots__/rich-text-editor.test.tsx.snap +0 -314
  498. package/src/components/atoms/Separator/__snapshots__/separator.test.tsx.snap +0 -13
  499. package/src/components/atoms/Skeleton/__snapshots__/skeleton.test.tsx.snap +0 -11
  500. package/src/components/atoms/Slider/__snapshots__/slider.test.tsx.snap +0 -240
  501. package/src/components/atoms/Sonner/__snapshots__/sonner.test.tsx.snap +0 -13
  502. package/src/components/atoms/Switch/__snapshots__/switch.test.tsx.snap +0 -22
  503. package/src/components/atoms/Textarea/__snapshots__/textarea.test.tsx.snap +0 -10
  504. package/src/components/atoms/Toggle/__snapshots__/toggle.test.tsx.snap +0 -13
  505. package/src/components/atoms/Typography/__snapshots__/typography.test.tsx.snap +0 -12
  506. package/src/components/atoms/VideoPlayer/__snapshots__/video-player.test.tsx.snap +0 -17
  507. package/src/components/molecules/Accordion/__snapshots__/accordion.test.tsx.snap +0 -123
  508. package/src/components/molecules/Alert/__snapshots__/alert.test.tsx.snap +0 -27
  509. package/src/components/molecules/AlertDialog/__snapshots__/alert-dialog.test.tsx.snap +0 -18
  510. package/src/components/molecules/Avatar/__snapshots__/avatar.test.tsx.snap +0 -11
  511. package/src/components/molecules/Breadcrumb/__snapshots__/breadcrumb.test.tsx.snap +0 -11
  512. package/src/components/molecules/Card/__snapshots__/card.test.tsx.snap +0 -11
  513. package/src/components/molecules/Collapsible/__snapshots__/collapsible.test.tsx.snap +0 -27
  514. package/src/components/molecules/Command/__snapshots__/command.test.tsx.snap +0 -31
  515. package/src/components/molecules/ContextMenu/__snapshots__/context-menu.test.tsx.snap +0 -14
  516. package/src/components/molecules/DatePicker/__snapshots__/date-picker.test.tsx.snap +0 -38
  517. package/src/components/molecules/Dialog/__snapshots__/dialog.test.tsx.snap +0 -18
  518. package/src/components/molecules/Drawer/__snapshots__/drawer.test.tsx.snap +0 -3
  519. package/src/components/molecules/Dropdown/__snapshots__/dropdown.test.tsx.snap +0 -86
  520. package/src/components/molecules/DropdownMenu/__snapshots__/dropdown-menu.test.tsx.snap +0 -3
  521. package/src/components/molecules/HoverCard/__snapshots__/hover-card.test.tsx.snap +0 -14
  522. package/src/components/molecules/InputOTP/__snapshots__/input-otp.test.tsx.snap +0 -89
  523. package/src/components/molecules/Menubar/__snapshots__/menubar.test.tsx.snap +0 -80
  524. package/src/components/molecules/NavigationMenu/__snapshots__/navigation-menu.test.tsx.snap +0 -20
  525. package/src/components/molecules/PDFViewer/__snapshots__/pdf-viewer.test.tsx.snap +0 -257
  526. package/src/components/molecules/Pagination/__snapshots__/pagination.test.tsx.snap +0 -200
  527. package/src/components/molecules/PaginationDotGroup/__snapshots__/pagination-dot-group.test.tsx.snap +0 -193
  528. package/src/components/molecules/ProgressSteps/__snapshots__/progress-steps.test.tsx.snap +0 -524
  529. package/src/components/molecules/RadioGroup/__snapshots__/radio-group.test.tsx.snap +0 -122
  530. package/src/components/molecules/Resizable/__snapshots__/resizable.test.tsx.snap +0 -121
  531. package/src/components/molecules/ScrollArea/__snapshots__/scroll-area.test.tsx.snap +0 -636
  532. package/src/components/molecules/Select/__snapshots__/select.test.tsx.snap +0 -15
  533. package/src/components/molecules/Sheet/__snapshots__/sheet.test.tsx.snap +0 -3
  534. package/src/components/molecules/Tabs/__snapshots__/tabs.test.tsx.snap +0 -25
  535. package/src/components/molecules/ToggleGroup/__snapshots__/toggle-group.test.tsx.snap +0 -42
  536. package/src/components/molecules/Tooltip/__snapshots__/tooltip.test.tsx.snap +0 -13
  537. package/src/components/organisms/Carousel/__snapshots__/carousel.test.tsx.snap +0 -219
  538. package/src/components/organisms/Chart/__snapshots__/chart.test.tsx.snap +0 -154
  539. package/src/components/organisms/Form/__snapshots__/form.test.tsx.snap +0 -194
  540. package/src/components/organisms/Sidebar/__snapshots__/sidebar.test.tsx.snap +0 -224
  541. package/src/components/organisms/Table/__snapshots__/table.test.tsx.snap +0 -318
package/README.md CHANGED
@@ -1,241 +1,241 @@
1
- # 🧩 mblabs-roccato-frontend-commons
2
-
3
- Uma coleção de componentes e utilitários de front-end reutilizáveis, desenvolvidos com tecnologias modernas como React 19, TailwindCSS, Radix UI e muito mais. Criado para ser compartilhado entre projetos dentro do ecossistema MB Labs Roccato.
4
-
5
- ---
6
-
7
- ## 📦 Instalação
8
-
9
- Utilize o [pnpm](https://pnpm.io/) como gerenciador de pacotes (Node.js 22+):
10
-
11
- ```bash
12
- pnpm add mblabs-roccato-frontend-commons
13
- ```
14
-
15
- Certifique-se de instalar também as dependências peer:
16
-
17
- ```bash
18
- pnpm add react@^19.0.0 react-dom@^19.0.0 react-hook-form@^7.55.0
19
- ```
20
-
21
- ---
22
-
23
- ## 🚀 Como usar
24
-
25
- Importe os componentes ou utilitários diretamente do pacote:
26
-
27
- ```tsx
28
- import { MeuComponente } from 'mblabs-roccato-frontend-commons';
29
- import 'mblabs-roccato-frontend-commons/css'; // estilos padrões
30
- ```
31
-
32
- ---
33
-
34
- ## ✨ Destaques
35
-
36
- - ✅ Suporte ao React 19
37
- - 🎨 TailwindCSS 4 com variantes dinâmicas
38
- - ⚙️ Componentes acessíveis via Radix UI
39
- - 🧰 Drag & drop com DnD Kit
40
- - 📊 Visualizações com Recharts
41
- - 🧪 Totalmente tipado com TypeScript
42
- - 📚 Documentação interativa com Storybook
43
- - ⚡ Build otimizado com Vite
44
-
45
- ---
46
-
47
- ## 📂 Estrutura do Projeto
48
-
49
- ```
50
- 📁 src/
51
- ┣ 📦 components/
52
- ┣ ┣ 📦 atoms/
53
- ┣ ┣ 📦 molecules/
54
- ┣ ┣ 📦 organisms/
55
- ┣ ┣ 📄 index.ts
56
- ┣ 📦 hooks/
57
- ┣ 📦 utils/
58
- ┗ 📄 index.ts
59
- ```
60
-
61
- ---
62
-
63
- ## 🧪 Scripts
64
-
65
- | Comando | Descrição |
66
- | ---------------------- | ------------------------------------------------- |
67
- | `pnpm build` | Compila a lib com TypeScript e Vite |
68
- | `pnpm lint` | Lint no projeto com ESLint |
69
- | `pnpm storybook` | Inicia o Storybook em ambiente de desenvolvimento |
70
- | `pnpm build-storybook` | Gera versão estática do Storybook |
71
-
72
- ---
73
-
74
- ## 📦 Adicionando novos ícones
75
-
76
- Para adicionar novos ícones ao projeto, siga este processo passo a passo:
77
-
78
- ### 1. Copiar nome do ícone do Figma
79
- - Identifique o nome exato do ícone no design do Figma
80
- - Exemplo: `check-circle`, `info-circle`, `user-01`
81
-
82
- ### 2. Buscar ícone no Untitled UI
83
- - Acesse [https://www.untitledui.com/free-icons](https://www.untitledui.com/free-icons)
84
- - Use a barra de pesquisa para encontrar o ícone pelo nome
85
- - Certifique-se de que é o ícone correto visualmente
86
-
87
- ### 3. Copiar SVG
88
- - Clique no ícone desejado
89
- - Copie o código SVG fornecido
90
- - O SVG deve ter viewBox="0 0 24 24" e ser otimizado
91
-
92
- ### 4. Criar componente reutilizável
93
- Crie um novo arquivo em `src/components/icons/` seguindo o padrão:
94
-
95
- ```tsx
96
- // src/components/icons/nome-do-icone.tsx
97
- import { ComponentProps } from 'react';
98
-
99
- export function NomeDoIcone(props: ComponentProps<'svg'>) {
100
- return (
101
- <svg
102
- width="100%"
103
- height="100%"
104
- viewBox="0 0 24 24"
105
- fill="none"
106
- xmlns="http://www.w3.org/2000/svg"
107
- {...props}
108
- >
109
- {/* Cole o conteúdo SVG aqui */}
110
- </svg>
111
- );
112
- }
113
- ```
114
-
115
- ### 5. Corrigir propriedades CSS
116
- Converta propriedades kebab-case para camelCase:
117
-
118
- ```tsx
119
- // ❌ Incorreto
120
- stroke-width="2" → strokeWidth="2"
121
- stroke-linecap="round" → strokeLinecap="round"
122
- stroke-linejoin="round" → strokeLinejoin="round"
123
- fill-rule="evenodd" → fillRule="evenodd"
124
- clip-rule="evenodd" → clipRule="evenodd"
125
-
126
- // ✅ Correto
127
- strokeWidth="2"
128
- strokeLinecap="round"
129
- strokeLinejoin="round"
130
- fillRule="evenodd"
131
- clipRule="evenodd"
132
- ```
133
-
134
- ### 6. Adicionar ao index.ts
135
- Adicione a exportação no arquivo `src/components/icons/index.ts`:
136
-
137
- ```tsx
138
- // Adicione no final do arquivo, em ordem alfabética
139
- export * from './nome-do-icone';
140
- ```
141
-
142
- ### Exemplo Completo
143
-
144
- **Nome do ícone:** `check-circle`
145
-
146
- **Arquivo criado:** `src/components/icons/check-circle.tsx`
147
-
148
- ```tsx
149
- import { ComponentProps } from 'react';
150
-
151
- export function CheckCircle(props: ComponentProps<'svg'>) {
152
- return (
153
- <svg
154
- width="100%"
155
- height="100%"
156
- viewBox="0 0 24 24"
157
- fill="none"
158
- xmlns="http://www.w3.org/2000/svg"
159
- {...props}
160
- >
161
- <path
162
- d="M7.5 12L10.5 15L16.5 9M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z"
163
- stroke="currentColor"
164
- strokeWidth="2"
165
- strokeLinecap="round"
166
- strokeLinejoin="round"
167
- />
168
- </svg>
169
- );
170
- }
171
- ```
172
-
173
- **Adicionado ao index.ts:**
174
- ```tsx
175
- export * from './check-circle';
176
- ```
177
-
178
- ### Boas Práticas
179
-
180
- - ✅ Use `currentColor` para stroke/fill para permitir customização
181
- - ✅ Mantenha viewBox="0 0 24 24" para consistência
182
- - ✅ Use width="100%" height="100%" para responsividade
183
- - ✅ Nomeie o componente em PascalCase
184
- - ✅ Nomeie o arquivo em kebab-case
185
- - ✅ Mantenha ordem alfabética no index.ts
186
- - ✅ Teste o ícone no Storybook após adicionar
187
-
188
- ### Uso do Ícone
189
-
190
- Após adicionar, o ícone estará disponível para uso:
191
-
192
- ```tsx
193
- import { CheckCircle } from '@/components/icons';
194
-
195
- // Uso básico
196
- <CheckCircle />
197
-
198
- // Com customização
199
- <CheckCircle className="w-6 h-6 text-blue-500" />
200
- ```
201
-
202
- ---
203
-
204
- ## 📚 Storybook
205
-
206
- Explore e teste os componentes interativamente:
207
-
208
- ```bash
209
- pnpm storybook
210
- ```
211
-
212
- Ou gere a versão estática:
213
-
214
- ```bash
215
- pnpm build-storybook
216
- ```
217
-
218
- ---
219
-
220
- ## 🧩 Tecnologias Utilizadas
221
-
222
- - React 19
223
- - TailwindCSS
224
- - Radix UI
225
- - DnD Kit
226
- - Tanstack react-table
227
- - Tabler icons-react
228
- - Date fns
229
- - Recharts
230
- - React Hook Form
231
- - Zod
232
- - Storybook
233
- - Vite
234
- - TypeScript
235
- - ESLint
236
-
237
- ---
238
-
239
- ## 📝 Licença
240
-
241
- MIT © Roccato — Feito com ❤️ pelo time MB Labs.
1
+ # 🧩 mblabs-roccato-frontend-commons
2
+
3
+ Uma coleção de componentes e utilitários de front-end reutilizáveis, desenvolvidos com tecnologias modernas como React 19, TailwindCSS, Radix UI e muito mais. Criado para ser compartilhado entre projetos dentro do ecossistema MB Labs Roccato.
4
+
5
+ ---
6
+
7
+ ## 📦 Instalação
8
+
9
+ Utilize o [pnpm](https://pnpm.io/) como gerenciador de pacotes (Node.js 22+):
10
+
11
+ ```bash
12
+ pnpm add mblabs-roccato-frontend-commons
13
+ ```
14
+
15
+ Certifique-se de instalar também as dependências peer:
16
+
17
+ ```bash
18
+ pnpm add react@^19.0.0 react-dom@^19.0.0 react-hook-form@^7.55.0
19
+ ```
20
+
21
+ ---
22
+
23
+ ## 🚀 Como usar
24
+
25
+ Importe os componentes ou utilitários diretamente do pacote:
26
+
27
+ ```tsx
28
+ import { MeuComponente } from 'mblabs-roccato-frontend-commons';
29
+ import 'mblabs-roccato-frontend-commons/css'; // estilos padrões
30
+ ```
31
+
32
+ ---
33
+
34
+ ## ✨ Destaques
35
+
36
+ - ✅ Suporte ao React 19
37
+ - 🎨 TailwindCSS 4 com variantes dinâmicas
38
+ - ⚙️ Componentes acessíveis via Radix UI
39
+ - 🧰 Drag & drop com DnD Kit
40
+ - 📊 Visualizações com Recharts
41
+ - 🧪 Totalmente tipado com TypeScript
42
+ - 📚 Documentação interativa com Storybook
43
+ - ⚡ Build otimizado com Vite
44
+
45
+ ---
46
+
47
+ ## 📂 Estrutura do Projeto
48
+
49
+ ```
50
+ 📁 src/
51
+ ┣ 📦 components/
52
+ ┣ ┣ 📦 atoms/
53
+ ┣ ┣ 📦 molecules/
54
+ ┣ ┣ 📦 organisms/
55
+ ┣ ┣ 📄 index.ts
56
+ ┣ 📦 hooks/
57
+ ┣ 📦 utils/
58
+ ┗ 📄 index.ts
59
+ ```
60
+
61
+ ---
62
+
63
+ ## 🧪 Scripts
64
+
65
+ | Comando | Descrição |
66
+ | ---------------------- | ------------------------------------------------- |
67
+ | `pnpm build` | Compila a lib com TypeScript e Vite |
68
+ | `pnpm lint` | Lint no projeto com ESLint |
69
+ | `pnpm storybook` | Inicia o Storybook em ambiente de desenvolvimento |
70
+ | `pnpm build-storybook` | Gera versão estática do Storybook |
71
+
72
+ ---
73
+
74
+ ## 📦 Adicionando novos ícones
75
+
76
+ Para adicionar novos ícones ao projeto, siga este processo passo a passo:
77
+
78
+ ### 1. Copiar nome do ícone do Figma
79
+ - Identifique o nome exato do ícone no design do Figma
80
+ - Exemplo: `check-circle`, `info-circle`, `user-01`
81
+
82
+ ### 2. Buscar ícone no Untitled UI
83
+ - Acesse [https://www.untitledui.com/free-icons](https://www.untitledui.com/free-icons)
84
+ - Use a barra de pesquisa para encontrar o ícone pelo nome
85
+ - Certifique-se de que é o ícone correto visualmente
86
+
87
+ ### 3. Copiar SVG
88
+ - Clique no ícone desejado
89
+ - Copie o código SVG fornecido
90
+ - O SVG deve ter viewBox="0 0 24 24" e ser otimizado
91
+
92
+ ### 4. Criar componente reutilizável
93
+ Crie um novo arquivo em `src/components/icons/` seguindo o padrão:
94
+
95
+ ```tsx
96
+ // src/components/icons/nome-do-icone.tsx
97
+ import { ComponentProps } from 'react';
98
+
99
+ export function NomeDoIcone(props: ComponentProps<'svg'>) {
100
+ return (
101
+ <svg
102
+ width="100%"
103
+ height="100%"
104
+ viewBox="0 0 24 24"
105
+ fill="none"
106
+ xmlns="http://www.w3.org/2000/svg"
107
+ {...props}
108
+ >
109
+ {/* Cole o conteúdo SVG aqui */}
110
+ </svg>
111
+ );
112
+ }
113
+ ```
114
+
115
+ ### 5. Corrigir propriedades CSS
116
+ Converta propriedades kebab-case para camelCase:
117
+
118
+ ```tsx
119
+ // ❌ Incorreto
120
+ stroke-width="2" → strokeWidth="2"
121
+ stroke-linecap="round" → strokeLinecap="round"
122
+ stroke-linejoin="round" → strokeLinejoin="round"
123
+ fill-rule="evenodd" → fillRule="evenodd"
124
+ clip-rule="evenodd" → clipRule="evenodd"
125
+
126
+ // ✅ Correto
127
+ strokeWidth="2"
128
+ strokeLinecap="round"
129
+ strokeLinejoin="round"
130
+ fillRule="evenodd"
131
+ clipRule="evenodd"
132
+ ```
133
+
134
+ ### 6. Adicionar ao index.ts
135
+ Adicione a exportação no arquivo `src/components/icons/index.ts`:
136
+
137
+ ```tsx
138
+ // Adicione no final do arquivo, em ordem alfabética
139
+ export * from './nome-do-icone';
140
+ ```
141
+
142
+ ### Exemplo Completo
143
+
144
+ **Nome do ícone:** `check-circle`
145
+
146
+ **Arquivo criado:** `src/components/icons/check-circle.tsx`
147
+
148
+ ```tsx
149
+ import { ComponentProps } from 'react';
150
+
151
+ export function CheckCircle(props: ComponentProps<'svg'>) {
152
+ return (
153
+ <svg
154
+ width="100%"
155
+ height="100%"
156
+ viewBox="0 0 24 24"
157
+ fill="none"
158
+ xmlns="http://www.w3.org/2000/svg"
159
+ {...props}
160
+ >
161
+ <path
162
+ d="M7.5 12L10.5 15L16.5 9M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z"
163
+ stroke="currentColor"
164
+ strokeWidth="2"
165
+ strokeLinecap="round"
166
+ strokeLinejoin="round"
167
+ />
168
+ </svg>
169
+ );
170
+ }
171
+ ```
172
+
173
+ **Adicionado ao index.ts:**
174
+ ```tsx
175
+ export * from './check-circle';
176
+ ```
177
+
178
+ ### Boas Práticas
179
+
180
+ - ✅ Use `currentColor` para stroke/fill para permitir customização
181
+ - ✅ Mantenha viewBox="0 0 24 24" para consistência
182
+ - ✅ Use width="100%" height="100%" para responsividade
183
+ - ✅ Nomeie o componente em PascalCase
184
+ - ✅ Nomeie o arquivo em kebab-case
185
+ - ✅ Mantenha ordem alfabética no index.ts
186
+ - ✅ Teste o ícone no Storybook após adicionar
187
+
188
+ ### Uso do Ícone
189
+
190
+ Após adicionar, o ícone estará disponível para uso:
191
+
192
+ ```tsx
193
+ import { CheckCircle } from '@/components/icons';
194
+
195
+ // Uso básico
196
+ <CheckCircle />
197
+
198
+ // Com customização
199
+ <CheckCircle className="w-6 h-6 text-blue-500" />
200
+ ```
201
+
202
+ ---
203
+
204
+ ## 📚 Storybook
205
+
206
+ Explore e teste os componentes interativamente:
207
+
208
+ ```bash
209
+ pnpm storybook
210
+ ```
211
+
212
+ Ou gere a versão estática:
213
+
214
+ ```bash
215
+ pnpm build-storybook
216
+ ```
217
+
218
+ ---
219
+
220
+ ## 🧩 Tecnologias Utilizadas
221
+
222
+ - React 19
223
+ - TailwindCSS
224
+ - Radix UI
225
+ - DnD Kit
226
+ - Tanstack react-table
227
+ - Tabler icons-react
228
+ - Date fns
229
+ - Recharts
230
+ - React Hook Form
231
+ - Zod
232
+ - Storybook
233
+ - Vite
234
+ - TypeScript
235
+ - ESLint
236
+
237
+ ---
238
+
239
+ ## 📝 Licença
240
+
241
+ MIT © Roccato — Feito com ❤️ pelo time MB Labs.
package/dist/index.d.ts CHANGED
@@ -831,7 +831,7 @@ export declare function Dialog({ ...props }: React_2.ComponentProps<typeof Dialo
831
831
 
832
832
  export declare function DialogClose({ ...props }: React_2.ComponentProps<typeof DialogPrimitive.Close>): React_2.JSX.Element;
833
833
 
834
- export declare function DialogContent({ className, children, showCloseButton, ...props }: React_2.ComponentProps<typeof DialogPrimitive.Content> & {
834
+ export declare function DialogContent({ className, children, showCloseButton, onCloseAutoFocus, ...props }: React_2.ComponentProps<typeof DialogPrimitive.Content> & {
835
835
  showCloseButton?: boolean;
836
836
  }): React_2.JSX.Element;
837
837
 
@@ -867,7 +867,7 @@ export declare function DrawerClose({ ...props }: React_2.ComponentProps<typeof
867
867
 
868
868
  export declare function DrawerCloseButton(): React_2.JSX.Element;
869
869
 
870
- export declare function DrawerContent({ className, children, variant, ...props }: DrawerContentProps): React_2.JSX.Element;
870
+ export declare function DrawerContent({ className, children, variant, onCloseAutoFocus, ...props }: DrawerContentProps): React_2.JSX.Element;
871
871
 
872
872
  declare type DrawerContentProps = React_2.ComponentProps<typeof Drawer_2.Content> & {
873
873
  variant?: DrawerVariant;
@@ -1686,7 +1686,7 @@ export declare function Sheet({ ...props }: React_2.ComponentProps<typeof Dialog
1686
1686
 
1687
1687
  export declare function SheetClose({ ...props }: React_2.ComponentProps<typeof DialogPrimitive.Close>): React_2.JSX.Element;
1688
1688
 
1689
- export declare function SheetContent({ className, children, side, ...props }: React_2.ComponentProps<typeof DialogPrimitive.Content> & {
1689
+ export declare function SheetContent({ className, children, side, onCloseAutoFocus, ...props }: React_2.ComponentProps<typeof DialogPrimitive.Content> & {
1690
1690
  side?: 'top' | 'right' | 'bottom' | 'left';
1691
1691
  }): React_2.JSX.Element;
1692
1692