mblabs-roccato-frontend-commons 0.2.0 → 0.2.1

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 (526) hide show
  1. package/README.md +241 -241
  2. package/dist/index.d.ts +6 -0
  3. package/dist/mblabs-roccato-frontend-commons.js +2617 -2579
  4. package/package.json +157 -157
  5. package/src/components/atoms/AudioPlayer/__snapshots__/audio-player.test.tsx.snap +22 -0
  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/__snapshots__/badge.test.tsx.snap +12 -0
  11. package/src/components/atoms/Badge/badge.stories.tsx +80 -80
  12. package/src/components/atoms/Badge/badge.test.tsx +59 -59
  13. package/src/components/atoms/Badge/badge.tsx +47 -47
  14. package/src/components/atoms/Badge/index.ts +1 -1
  15. package/src/components/atoms/Box/__snapshots__/box.test.tsx.snap +10 -0
  16. package/src/components/atoms/Box/box.stories.tsx +37 -37
  17. package/src/components/atoms/Box/box.test.tsx +47 -47
  18. package/src/components/atoms/Box/box.tsx +7 -7
  19. package/src/components/atoms/Box/index.ts +1 -1
  20. package/src/components/atoms/Button/__snapshots__/button.test.tsx.snap +13 -0
  21. package/src/components/atoms/Button/button.stories.tsx +108 -108
  22. package/src/components/atoms/Button/button.test.tsx +54 -54
  23. package/src/components/atoms/Button/button.tsx +96 -96
  24. package/src/components/atoms/Button/index.ts +1 -1
  25. package/src/components/atoms/ButtonUpload/button-upload.stories.tsx +137 -137
  26. package/src/components/atoms/ButtonUpload/button-upload.tsx +299 -299
  27. package/src/components/atoms/Calendar/__snapshots__/calendar.test.tsx.snap +501 -0
  28. package/src/components/atoms/Calendar/calendar.stories.tsx +51 -51
  29. package/src/components/atoms/Calendar/calendar.test.tsx +41 -41
  30. package/src/components/atoms/Calendar/calendar.tsx +102 -102
  31. package/src/components/atoms/Calendar/index.ts +1 -1
  32. package/src/components/atoms/CheckIcon/check-icon.stories.tsx +38 -38
  33. package/src/components/atoms/CheckIcon/check-icon.test.tsx +269 -269
  34. package/src/components/atoms/CheckIcon/check-icon.tsx +140 -140
  35. package/src/components/atoms/Checkbox/__snapshots__/checkbox.test.tsx.snap +16 -0
  36. package/src/components/atoms/Checkbox/checkbox.stories.tsx +133 -133
  37. package/src/components/atoms/Checkbox/checkbox.test.tsx +70 -70
  38. package/src/components/atoms/Checkbox/checkbox.tsx +31 -31
  39. package/src/components/atoms/Checkbox/index.ts +1 -1
  40. package/src/components/atoms/Flex/__snapshots__/flex.test.tsx.snap +10 -0
  41. package/src/components/atoms/Flex/flex.stories.tsx +33 -33
  42. package/src/components/atoms/Flex/flex.test.tsx +47 -47
  43. package/src/components/atoms/Flex/flex.tsx +7 -7
  44. package/src/components/atoms/Flex/index.ts +1 -1
  45. package/src/components/atoms/Grid/__snapshots__/grid.test.tsx.snap +10 -0
  46. package/src/components/atoms/Grid/grid.stories.tsx +33 -33
  47. package/src/components/atoms/Grid/grid.test.tsx +47 -47
  48. package/src/components/atoms/Grid/grid.tsx +7 -7
  49. package/src/components/atoms/Grid/index.ts +1 -1
  50. package/src/components/atoms/Icon/__snapshots__/icon.test.tsx.snap +103 -0
  51. package/src/components/atoms/Icon/icon.stories.tsx +169 -169
  52. package/src/components/atoms/Icon/icon.test.tsx +272 -272
  53. package/src/components/atoms/Icon/icon.tsx +119 -119
  54. package/src/components/atoms/Input/__snapshots__/input.test.tsx.snap +49 -0
  55. package/src/components/atoms/Input/index.ts +1 -1
  56. package/src/components/atoms/Input/input.stories.tsx +704 -704
  57. package/src/components/atoms/Input/input.test.tsx +86 -86
  58. package/src/components/atoms/Input/input.tsx +161 -161
  59. package/src/components/atoms/InputMoney/index.ts +2 -2
  60. package/src/components/atoms/InputMoney/input-money.stories.tsx +240 -240
  61. package/src/components/atoms/InputMoney/input-money.test.tsx +95 -95
  62. package/src/components/atoms/InputMoney/input-money.tsx +250 -250
  63. package/src/components/atoms/InputPhone/index.ts +1 -1
  64. package/src/components/atoms/InputPhone/input-phone.stories.tsx +446 -446
  65. package/src/components/atoms/InputPhone/input-phone.test.tsx +147 -147
  66. package/src/components/atoms/InputPhone/input-phone.tsx +267 -267
  67. package/src/components/atoms/InputSearch/index.ts +1 -1
  68. package/src/components/atoms/InputSearch/input-search.stories.tsx +359 -359
  69. package/src/components/atoms/InputSearch/input-search.test.tsx +238 -238
  70. package/src/components/atoms/InputSearch/input-search.tsx +209 -209
  71. package/src/components/atoms/InputUpload/index.ts +1 -1
  72. package/src/components/atoms/InputUpload/input-upload.stories.tsx +229 -229
  73. package/src/components/atoms/InputUpload/input-upload.test.tsx +555 -555
  74. package/src/components/atoms/InputUpload/input-upload.tsx +425 -425
  75. package/src/components/atoms/InputWithButton/index.ts +2 -2
  76. package/src/components/atoms/InputWithButton/input-with-button.stories.tsx +502 -502
  77. package/src/components/atoms/InputWithButton/input-with-button.test.tsx +127 -127
  78. package/src/components/atoms/InputWithButton/input-with-button.tsx +170 -170
  79. package/src/components/atoms/Label/__snapshots__/label.test.tsx.snap +17 -0
  80. package/src/components/atoms/Label/index.ts +1 -1
  81. package/src/components/atoms/Label/label.stories.tsx +90 -90
  82. package/src/components/atoms/Label/label.test.tsx +59 -59
  83. package/src/components/atoms/Label/label.tsx +43 -43
  84. package/src/components/atoms/Progress/__snapshots__/progress.test.tsx.snap +25 -0
  85. package/src/components/atoms/Progress/index.ts +1 -1
  86. package/src/components/atoms/Progress/progress.stories.tsx +30 -30
  87. package/src/components/atoms/Progress/progress.test.tsx +62 -62
  88. package/src/components/atoms/Progress/progress.tsx +32 -32
  89. package/src/components/atoms/RenderCondition/index.ts +1 -1
  90. package/src/components/atoms/RenderCondition/render-condition.stories.tsx +28 -28
  91. package/src/components/atoms/RenderCondition/render-condition.test.tsx +27 -27
  92. package/src/components/atoms/RenderCondition/render-condition.tsx +9 -9
  93. package/src/components/atoms/RichTextEditor/__snapshots__/rich-text-editor.test.tsx.snap +314 -0
  94. package/src/components/atoms/RichTextEditor/rich-text-editor.stories.tsx +214 -214
  95. package/src/components/atoms/RichTextEditor/rich-text-editor.test.tsx +441 -441
  96. package/src/components/atoms/RichTextEditor/rich-text-editor.tsx +202 -202
  97. package/src/components/atoms/Separator/__snapshots__/separator.test.tsx.snap +13 -0
  98. package/src/components/atoms/Separator/index.ts +1 -1
  99. package/src/components/atoms/Separator/separator.stories.tsx +117 -117
  100. package/src/components/atoms/Separator/separator.test.tsx +50 -50
  101. package/src/components/atoms/Separator/separator.tsx +28 -28
  102. package/src/components/atoms/Skeleton/__snapshots__/skeleton.test.tsx.snap +11 -0
  103. package/src/components/atoms/Skeleton/index.ts +1 -1
  104. package/src/components/atoms/Skeleton/skeleton.stories.tsx +84 -84
  105. package/src/components/atoms/Skeleton/skeleton.test.tsx +39 -39
  106. package/src/components/atoms/Skeleton/skeleton.tsx +14 -14
  107. package/src/components/atoms/Slider/__snapshots__/slider.test.tsx.snap +240 -0
  108. package/src/components/atoms/Slider/index.ts +1 -1
  109. package/src/components/atoms/Slider/slider.stories.tsx +28 -28
  110. package/src/components/atoms/Slider/slider.test.tsx +89 -89
  111. package/src/components/atoms/Slider/slider.tsx +54 -54
  112. package/src/components/atoms/Sonner/__snapshots__/sonner.test.tsx.snap +13 -0
  113. package/src/components/atoms/Sonner/index.ts +1 -1
  114. package/src/components/atoms/Sonner/sonner.css +39 -39
  115. package/src/components/atoms/Sonner/sonner.stories.tsx +186 -186
  116. package/src/components/atoms/Sonner/sonner.test.tsx +24 -24
  117. package/src/components/atoms/Sonner/sonner.tsx +13 -13
  118. package/src/components/atoms/Switch/__snapshots__/switch.test.tsx.snap +22 -0
  119. package/src/components/atoms/Switch/index.ts +1 -1
  120. package/src/components/atoms/Switch/switch.stories.tsx +128 -128
  121. package/src/components/atoms/Switch/switch.test.tsx +70 -70
  122. package/src/components/atoms/Switch/switch.tsx +61 -61
  123. package/src/components/atoms/Textarea/__snapshots__/textarea.test.tsx.snap +10 -0
  124. package/src/components/atoms/Textarea/index.ts +1 -1
  125. package/src/components/atoms/Textarea/textarea.stories.tsx +169 -169
  126. package/src/components/atoms/Textarea/textarea.test.tsx +56 -56
  127. package/src/components/atoms/Textarea/textarea.tsx +26 -26
  128. package/src/components/atoms/Toggle/__snapshots__/toggle.test.tsx.snap +13 -0
  129. package/src/components/atoms/Toggle/index.ts +1 -1
  130. package/src/components/atoms/Toggle/toggle.stories.tsx +170 -170
  131. package/src/components/atoms/Toggle/toggle.test.tsx +62 -62
  132. package/src/components/atoms/Toggle/toggle.tsx +47 -47
  133. package/src/components/atoms/Typography/__snapshots__/typography.test.tsx.snap +12 -0
  134. package/src/components/atoms/Typography/index.ts +1 -1
  135. package/src/components/atoms/Typography/typography.stories.tsx +95 -95
  136. package/src/components/atoms/Typography/typography.test.tsx +66 -66
  137. package/src/components/atoms/Typography/typography.tsx +63 -63
  138. package/src/components/atoms/UploadImageField/upload-image-field.stories.tsx +249 -249
  139. package/src/components/atoms/UploadImageField/upload-image-field.test.tsx +347 -347
  140. package/src/components/atoms/UploadImageField/upload-image-field.tsx +353 -353
  141. package/src/components/atoms/VideoPlayer/__snapshots__/video-player.test.tsx.snap +17 -0
  142. package/src/components/atoms/VideoPlayer/index.ts +1 -1
  143. package/src/components/atoms/VideoPlayer/video-player.stories.tsx +37 -37
  144. package/src/components/atoms/VideoPlayer/video-player.test.tsx +19 -19
  145. package/src/components/atoms/VideoPlayer/video-player.tsx +26 -26
  146. package/src/components/atoms/index.ts +31 -31
  147. package/src/components/icons/alert-circle.tsx +22 -22
  148. package/src/components/icons/align-center.tsx +21 -21
  149. package/src/components/icons/align-left.tsx +21 -21
  150. package/src/components/icons/annotation-dots.tsx +16 -16
  151. package/src/components/icons/announcement-01.tsx +14 -14
  152. package/src/components/icons/announcement-02.tsx +14 -14
  153. package/src/components/icons/apple-logo.tsx +8 -8
  154. package/src/components/icons/arrow-circle-broken-right.tsx +16 -16
  155. package/src/components/icons/arrow-down.tsx +8 -8
  156. package/src/components/icons/arrow-up.tsx +8 -8
  157. package/src/components/icons/at-sign.tsx +21 -21
  158. package/src/components/icons/award-01.tsx +15 -15
  159. package/src/components/icons/award-03.tsx +16 -16
  160. package/src/components/icons/bank-note-01.tsx +14 -14
  161. package/src/components/icons/bar-chart-square-02.tsx +8 -8
  162. package/src/components/icons/bell-01.tsx +8 -8
  163. package/src/components/icons/bell-04.tsx +16 -16
  164. package/src/components/icons/bold-01.tsx +21 -21
  165. package/src/components/icons/brackets-ellipses.tsx +21 -21
  166. package/src/components/icons/briefcase-01.tsx +8 -8
  167. package/src/components/icons/brush-01.tsx +21 -21
  168. package/src/components/icons/building-02.tsx +8 -8
  169. package/src/components/icons/building-06.tsx +9 -9
  170. package/src/components/icons/calendar-minus-02.tsx +14 -14
  171. package/src/components/icons/calendar.tsx +8 -8
  172. package/src/components/icons/certificate-01.tsx +16 -16
  173. package/src/components/icons/chart-breakout-square.tsx +16 -16
  174. package/src/components/icons/check-circle-02.tsx +15 -15
  175. package/src/components/icons/check-circle.tsx +15 -15
  176. package/src/components/icons/check.tsx +21 -21
  177. package/src/components/icons/chevron-down-double.tsx +16 -16
  178. package/src/components/icons/chevron-down.tsx +8 -8
  179. package/src/components/icons/chevron-left.tsx +16 -16
  180. package/src/components/icons/chevron-right.tsx +16 -16
  181. package/src/components/icons/chevron-up-double.tsx +16 -16
  182. package/src/components/icons/clock-rewind.tsx +15 -15
  183. package/src/components/icons/coins-hand.tsx +14 -14
  184. package/src/components/icons/coins-stacked-01.tsx +14 -14
  185. package/src/components/icons/coins-stacked-02.tsx +14 -14
  186. package/src/components/icons/container.tsx +8 -8
  187. package/src/components/icons/copy-02.tsx +16 -16
  188. package/src/components/icons/copy-04.tsx +21 -21
  189. package/src/components/icons/corner-down-right.tsx +9 -9
  190. package/src/components/icons/countries/br.tsx +20 -0
  191. package/src/components/icons/countries/es.tsx +19 -0
  192. package/src/components/icons/countries/index.ts +3 -0
  193. package/src/components/icons/countries/us.tsx +21 -0
  194. package/src/components/icons/dataflow-03.tsx +14 -14
  195. package/src/components/icons/dotpoints-01.tsx +21 -21
  196. package/src/components/icons/dots-vertical.tsx +35 -35
  197. package/src/components/icons/download-03.tsx +16 -16
  198. package/src/components/icons/download-cloud-02.tsx +14 -14
  199. package/src/components/icons/drag.tsx +14 -14
  200. package/src/components/icons/dropper.tsx +21 -21
  201. package/src/components/icons/edit-01.tsx +15 -15
  202. package/src/components/icons/edit-02.tsx +8 -8
  203. package/src/components/icons/edit-03.tsx +23 -23
  204. package/src/components/icons/eye.tsx +21 -21
  205. package/src/components/icons/face-frown.tsx +14 -14
  206. package/src/components/icons/file-06.tsx +14 -14
  207. package/src/components/icons/file-attachment-04.tsx +14 -14
  208. package/src/components/icons/file-download-02.tsx +15 -15
  209. package/src/components/icons/file-plus-02.tsx +15 -15
  210. package/src/components/icons/file-search-01.tsx +22 -22
  211. package/src/components/icons/file-search-03.tsx +14 -14
  212. package/src/components/icons/filter-lines.tsx +21 -21
  213. package/src/components/icons/first-category.tsx +15 -15
  214. package/src/components/icons/first-stage.tsx +19 -19
  215. package/src/components/icons/folder.tsx +14 -14
  216. package/src/components/icons/google.tsx +12 -12
  217. package/src/components/icons/graduation-hat-02.tsx +14 -14
  218. package/src/components/icons/grid-01.tsx +35 -35
  219. package/src/components/icons/help-circle.tsx +15 -15
  220. package/src/components/icons/help-square.tsx +16 -16
  221. package/src/components/icons/home-line.tsx +21 -21
  222. package/src/components/icons/icons.stories.tsx +198 -198
  223. package/src/components/icons/index.ts +130 -129
  224. package/src/components/icons/info-circle.tsx +14 -14
  225. package/src/components/icons/italic-01.tsx +21 -21
  226. package/src/components/icons/last-category.tsx +10 -10
  227. package/src/components/icons/last-stage.tsx +19 -19
  228. package/src/components/icons/layout-alt-04.tsx +9 -9
  229. package/src/components/icons/lightbulb-02.tsx +16 -16
  230. package/src/components/icons/link-01.tsx +15 -15
  231. package/src/components/icons/link-broken-01.tsx +16 -16
  232. package/src/components/icons/linkedin-logo.tsx +16 -16
  233. package/src/components/icons/lock-01.tsx +21 -21
  234. package/src/components/icons/log-out-01.tsx +8 -8
  235. package/src/components/icons/mail-01.tsx +15 -15
  236. package/src/components/icons/marker-pin-02.tsx +9 -9
  237. package/src/components/icons/menu-01.tsx +8 -8
  238. package/src/components/icons/middle-category.tsx +9 -9
  239. package/src/components/icons/middle-stage.tsx +19 -19
  240. package/src/components/icons/ms-outlook.tsx +47 -47
  241. package/src/components/icons/paragraph-spacing.tsx +14 -14
  242. package/src/components/icons/phone-01.tsx +21 -21
  243. package/src/components/icons/pie-chart-02.tsx +21 -21
  244. package/src/components/icons/plus-circle.tsx +15 -15
  245. package/src/components/icons/portal-logo.tsx +76 -76
  246. package/src/components/icons/presentation-chart-02.tsx +13 -13
  247. package/src/components/icons/save-01.tsx +14 -14
  248. package/src/components/icons/search-lg.tsx +14 -14
  249. package/src/components/icons/search-sm.tsx +8 -8
  250. package/src/components/icons/send-03.tsx +14 -14
  251. package/src/components/icons/settings-01.tsx +16 -16
  252. package/src/components/icons/settings-03.tsx +13 -13
  253. package/src/components/icons/share-05.tsx +15 -15
  254. package/src/components/icons/share-06.tsx +14 -14
  255. package/src/components/icons/slash-circle-01.tsx +8 -8
  256. package/src/components/icons/star-01.tsx +8 -8
  257. package/src/components/icons/step-icon-active.tsx +10 -10
  258. package/src/components/icons/step-icon-checked.tsx +9 -9
  259. package/src/components/icons/step-icon-default.tsx +10 -10
  260. package/src/components/icons/switch-horizontal-01.tsx +9 -9
  261. package/src/components/icons/table-01.tsx +14 -14
  262. package/src/components/icons/tag-01.tsx +14 -14
  263. package/src/components/icons/tag-03.tsx +14 -14
  264. package/src/components/icons/tool-02.tsx +13 -13
  265. package/src/components/icons/trash-01.tsx +15 -15
  266. package/src/components/icons/underline-01.tsx +21 -21
  267. package/src/components/icons/upload-cloud-02.tsx +14 -14
  268. package/src/components/icons/user-01.tsx +8 -8
  269. package/src/components/icons/user-03.tsx +9 -9
  270. package/src/components/icons/user-check-01.tsx +13 -13
  271. package/src/components/icons/user-circle.tsx +13 -13
  272. package/src/components/icons/user-edit.tsx +16 -16
  273. package/src/components/icons/user-plus-01.tsx +22 -22
  274. package/src/components/icons/user-square.tsx +16 -16
  275. package/src/components/icons/users-01.tsx +13 -13
  276. package/src/components/icons/users-plus-01.tsx +21 -21
  277. package/src/components/icons/users-plus.tsx +16 -16
  278. package/src/components/icons/vertical-drag.tsx +21 -21
  279. package/src/components/icons/x-circle.tsx +14 -14
  280. package/src/components/icons/x-close.tsx +8 -8
  281. package/src/components/icons/zap-fast.tsx +16 -16
  282. package/src/components/icons/zap.tsx +8 -8
  283. package/src/components/index.ts +4 -4
  284. package/src/components/molecules/Accordion/__snapshots__/accordion.test.tsx.snap +123 -0
  285. package/src/components/molecules/Accordion/accordion.stories.tsx +81 -81
  286. package/src/components/molecules/Accordion/accordion.test.tsx +91 -91
  287. package/src/components/molecules/Accordion/accordion.tsx +65 -65
  288. package/src/components/molecules/Accordion/index.ts +1 -1
  289. package/src/components/molecules/Alert/__snapshots__/alert.test.tsx.snap +27 -0
  290. package/src/components/molecules/Alert/alert.stories.tsx +75 -75
  291. package/src/components/molecules/Alert/alert.test.tsx +58 -58
  292. package/src/components/molecules/Alert/alert.tsx +67 -67
  293. package/src/components/molecules/Alert/index.ts +1 -1
  294. package/src/components/molecules/AlertDialog/__snapshots__/alert-dialog.test.tsx.snap +18 -0
  295. package/src/components/molecules/AlertDialog/alert-dialog.stories.tsx +55 -55
  296. package/src/components/molecules/AlertDialog/alert-dialog.test.tsx +34 -34
  297. package/src/components/molecules/AlertDialog/alert-dialog.tsx +172 -172
  298. package/src/components/molecules/AlertDialog/index.ts +1 -1
  299. package/src/components/molecules/Avatar/__snapshots__/avatar.test.tsx.snap +11 -0
  300. package/src/components/molecules/Avatar/avatar.stories.tsx +98 -98
  301. package/src/components/molecules/Avatar/avatar.test.tsx +55 -55
  302. package/src/components/molecules/Avatar/avatar.tsx +55 -55
  303. package/src/components/molecules/Avatar/index.ts +1 -1
  304. package/src/components/molecules/Breadcrumb/__snapshots__/breadcrumb.test.tsx.snap +11 -0
  305. package/src/components/molecules/Breadcrumb/breadcrumb.stories.tsx +125 -125
  306. package/src/components/molecules/Breadcrumb/breadcrumb.test.tsx +118 -118
  307. package/src/components/molecules/Breadcrumb/breadcrumb.tsx +120 -120
  308. package/src/components/molecules/Breadcrumb/index.ts +1 -1
  309. package/src/components/molecules/Card/__snapshots__/card.test.tsx.snap +11 -0
  310. package/src/components/molecules/Card/card.stories.tsx +109 -109
  311. package/src/components/molecules/Card/card.test.tsx +103 -103
  312. package/src/components/molecules/Card/card.tsx +78 -78
  313. package/src/components/molecules/Card/index.ts +1 -1
  314. package/src/components/molecules/Collapsible/__snapshots__/collapsible.test.tsx.snap +27 -0
  315. package/src/components/molecules/Collapsible/collapsible.stories.tsx +27 -27
  316. package/src/components/molecules/Collapsible/collapsible.test.tsx +35 -35
  317. package/src/components/molecules/Collapsible/collapsible.tsx +31 -31
  318. package/src/components/molecules/Collapsible/index.ts +1 -1
  319. package/src/components/molecules/ColorPicker/color-picker.stories.tsx +40 -40
  320. package/src/components/molecules/ColorPicker/color-picker.tsx +103 -103
  321. package/src/components/molecules/ColorPicker/index.ts +1 -1
  322. package/src/components/molecules/ColorScale/color-scale.stories.tsx +31 -31
  323. package/src/components/molecules/ColorScale/color-scale.tsx +74 -74
  324. package/src/components/molecules/ColorScale/index.ts +1 -1
  325. package/src/components/molecules/Command/__snapshots__/command.test.tsx.snap +31 -0
  326. package/src/components/molecules/Command/command.stories.tsx +70 -70
  327. package/src/components/molecules/Command/command.test.tsx +49 -49
  328. package/src/components/molecules/Command/command.tsx +177 -177
  329. package/src/components/molecules/Command/index.ts +1 -1
  330. package/src/components/molecules/ContextMenu/__snapshots__/context-menu.test.tsx.snap +14 -0
  331. package/src/components/molecules/ContextMenu/context-menu.stories.tsx +68 -68
  332. package/src/components/molecules/ContextMenu/context-menu.test.tsx +24 -24
  333. package/src/components/molecules/ContextMenu/context-menu.tsx +259 -259
  334. package/src/components/molecules/ContextMenu/index.ts +1 -1
  335. package/src/components/molecules/DatePicker/__snapshots__/date-picker.test.tsx.snap +38 -0
  336. package/src/components/molecules/DatePicker/date-picker.stories.tsx +151 -151
  337. package/src/components/molecules/DatePicker/date-picker.test.tsx +27 -27
  338. package/src/components/molecules/DatePicker/date-picker.tsx +201 -201
  339. package/src/components/molecules/Dialog/__snapshots__/dialog.test.tsx.snap +18 -0
  340. package/src/components/molecules/Dialog/dialog.stories.tsx +48 -48
  341. package/src/components/molecules/Dialog/dialog.test.tsx +51 -51
  342. package/src/components/molecules/Dialog/dialog.tsx +144 -144
  343. package/src/components/molecules/Drawer/__snapshots__/drawer.test.tsx.snap +3 -0
  344. package/src/components/molecules/Drawer/drawer.stories.tsx +182 -182
  345. package/src/components/molecules/Drawer/drawer.test.tsx +100 -100
  346. package/src/components/molecules/Drawer/drawer.tsx +206 -206
  347. package/src/components/molecules/Drawer/index.ts +1 -1
  348. package/src/components/molecules/Dropdown/__snapshots__/dropdown.test.tsx.snap +86 -0
  349. package/src/components/molecules/Dropdown/dropdown-async.stories.tsx +14 -14
  350. package/src/components/molecules/Dropdown/dropdown.stories.tsx +111 -111
  351. package/src/components/molecules/Dropdown/dropdown.test.tsx +128 -128
  352. package/src/components/molecules/Dropdown/dropdown.tsx +321 -321
  353. package/src/components/molecules/DropdownMenu/__snapshots__/dropdown-menu.test.tsx.snap +3 -0
  354. package/src/components/molecules/DropdownMenu/dropdown-menu.stories.tsx +154 -154
  355. package/src/components/molecules/DropdownMenu/dropdown-menu.test.tsx +163 -163
  356. package/src/components/molecules/DropdownMenu/dropdown-menu.tsx +313 -313
  357. package/src/components/molecules/DropdownMenu/index.ts +1 -1
  358. package/src/components/molecules/HoverCard/__snapshots__/hover-card.test.tsx.snap +14 -0
  359. package/src/components/molecules/HoverCard/hover-card.stories.tsx +48 -48
  360. package/src/components/molecules/HoverCard/hover-card.test.tsx +42 -42
  361. package/src/components/molecules/HoverCard/hover-card.tsx +44 -44
  362. package/src/components/molecules/HoverCard/index.ts +1 -1
  363. package/src/components/molecules/InputOTP/__snapshots__/input-otp.test.tsx.snap +89 -0
  364. package/src/components/molecules/InputOTP/index.ts +1 -1
  365. package/src/components/molecules/InputOTP/input-otp.stories.tsx +52 -52
  366. package/src/components/molecules/InputOTP/input-otp.test.tsx +28 -28
  367. package/src/components/molecules/InputOTP/input-otp.tsx +76 -76
  368. package/src/components/molecules/Menubar/__snapshots__/menubar.test.tsx.snap +80 -0
  369. package/src/components/molecules/Menubar/index.ts +1 -1
  370. package/src/components/molecules/Menubar/menubar.stories.tsx +113 -113
  371. package/src/components/molecules/Menubar/menubar.test.tsx +42 -42
  372. package/src/components/molecules/Menubar/menubar.tsx +314 -314
  373. package/src/components/molecules/NavigationMenu/__snapshots__/navigation-menu.test.tsx.snap +20 -0
  374. package/src/components/molecules/NavigationMenu/index.ts +1 -1
  375. package/src/components/molecules/NavigationMenu/navigation-menu.stories.tsx +143 -143
  376. package/src/components/molecules/NavigationMenu/navigation-menu.test.tsx +69 -69
  377. package/src/components/molecules/NavigationMenu/navigation-menu.tsx +174 -174
  378. package/src/components/molecules/PDFViewer/__snapshots__/pdf-viewer.test.tsx.snap +257 -0
  379. package/src/components/molecules/PDFViewer/index.ts +1 -1
  380. package/src/components/molecules/PDFViewer/pdf-viewer.stories.tsx +34 -34
  381. package/src/components/molecules/PDFViewer/pdf-viewer.test.tsx +26 -26
  382. package/src/components/molecules/PDFViewer/pdf-viewer.tsx +167 -167
  383. package/src/components/molecules/Pagination/__snapshots__/pagination.test.tsx.snap +200 -0
  384. package/src/components/molecules/Pagination/index.ts +1 -1
  385. package/src/components/molecules/Pagination/pagination.stories.tsx +193 -193
  386. package/src/components/molecules/Pagination/pagination.test.tsx +447 -447
  387. package/src/components/molecules/Pagination/pagination.tsx +206 -206
  388. package/src/components/molecules/PaginationDotGroup/__snapshots__/pagination-dot-group.test.tsx.snap +193 -0
  389. package/src/components/molecules/PaginationDotGroup/index.ts +1 -1
  390. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.stories.tsx +211 -211
  391. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.test.tsx +384 -384
  392. package/src/components/molecules/PaginationDotGroup/pagination-dot-group.tsx +119 -119
  393. package/src/components/molecules/Popover/index.ts +1 -1
  394. package/src/components/molecules/Popover/popover-menu.stories.tsx +27 -27
  395. package/src/components/molecules/Popover/popover.test.tsx +50 -50
  396. package/src/components/molecules/Popover/popover.tsx +38 -38
  397. package/src/components/molecules/ProgressSteps/__snapshots__/progress-steps.test.tsx.snap +524 -0
  398. package/src/components/molecules/ProgressSteps/index.ts +1 -1
  399. package/src/components/molecules/ProgressSteps/progress-steps.stories.tsx +36 -36
  400. package/src/components/molecules/ProgressSteps/progress-steps.test.tsx +470 -470
  401. package/src/components/molecules/ProgressSteps/progress-steps.tsx +140 -140
  402. package/src/components/molecules/RadioGroup/__snapshots__/radio-group.test.tsx.snap +122 -0
  403. package/src/components/molecules/RadioGroup/index.ts +1 -1
  404. package/src/components/molecules/RadioGroup/radio-group.stories.tsx +42 -42
  405. package/src/components/molecules/RadioGroup/radio-group.test.tsx +22 -22
  406. package/src/components/molecules/RadioGroup/radio-group.tsx +55 -55
  407. package/src/components/molecules/Resizable/__snapshots__/resizable.test.tsx.snap +121 -0
  408. package/src/components/molecules/Resizable/index.ts +1 -1
  409. package/src/components/molecules/Resizable/resizable.stories.tsx +52 -52
  410. package/src/components/molecules/Resizable/resizable.test.tsx +22 -22
  411. package/src/components/molecules/Resizable/resizable.tsx +55 -55
  412. package/src/components/molecules/ScrollArea/__snapshots__/scroll-area.test.tsx.snap +636 -0
  413. package/src/components/molecules/ScrollArea/index.ts +1 -1
  414. package/src/components/molecules/ScrollArea/scroll-area.stories.tsx +93 -93
  415. package/src/components/molecules/ScrollArea/scroll-area.test.tsx +28 -28
  416. package/src/components/molecules/ScrollArea/scroll-area.tsx +57 -57
  417. package/src/components/molecules/Select/__snapshots__/select.test.tsx.snap +15 -0
  418. package/src/components/molecules/Select/index.ts +1 -1
  419. package/src/components/molecules/Select/select.stories.tsx +63 -63
  420. package/src/components/molecules/Select/select.test.tsx +80 -80
  421. package/src/components/molecules/Select/select.tsx +172 -172
  422. package/src/components/molecules/Sheet/__snapshots__/sheet.test.tsx.snap +3 -0
  423. package/src/components/molecules/Sheet/index.ts +1 -1
  424. package/src/components/molecules/Sheet/sheet.stories.tsx +141 -141
  425. package/src/components/molecules/Sheet/sheet.test.tsx +70 -70
  426. package/src/components/molecules/Sheet/sheet.tsx +133 -133
  427. package/src/components/molecules/Tabs/__snapshots__/tabs.test.tsx.snap +25 -0
  428. package/src/components/molecules/Tabs/index.ts +1 -1
  429. package/src/components/molecules/Tabs/tabs.stories.tsx +221 -221
  430. package/src/components/molecules/Tabs/tabs.test.tsx +113 -113
  431. package/src/components/molecules/Tabs/tabs.tsx +102 -102
  432. package/src/components/molecules/ToggleGroup/__snapshots__/toggle-group.test.tsx.snap +42 -0
  433. package/src/components/molecules/ToggleGroup/index.ts +1 -1
  434. package/src/components/molecules/ToggleGroup/toggle-group.stories.tsx +117 -117
  435. package/src/components/molecules/ToggleGroup/toggle-group.test.tsx +100 -100
  436. package/src/components/molecules/ToggleGroup/toggle-group.tsx +70 -70
  437. package/src/components/molecules/Tooltip/__snapshots__/tooltip.test.tsx.snap +13 -0
  438. package/src/components/molecules/Tooltip/index.ts +1 -1
  439. package/src/components/molecules/Tooltip/tooltip.stories.tsx +133 -133
  440. package/src/components/molecules/Tooltip/tooltip.test.tsx +58 -58
  441. package/src/components/molecules/Tooltip/tooltip.tsx +58 -58
  442. package/src/components/molecules/index.ts +33 -33
  443. package/src/components/organisms/Carousel/__snapshots__/carousel.test.tsx.snap +219 -0
  444. package/src/components/organisms/Carousel/carousel.stories.tsx +94 -94
  445. package/src/components/organisms/Carousel/carousel.test.tsx +24 -24
  446. package/src/components/organisms/Carousel/carousel.tsx +383 -383
  447. package/src/components/organisms/Carousel/index.ts +1 -1
  448. package/src/components/organisms/Chart/__snapshots__/chart.test.tsx.snap +154 -0
  449. package/src/components/organisms/Chart/chart.stories.tsx +102 -102
  450. package/src/components/organisms/Chart/chart.test.tsx +105 -105
  451. package/src/components/organisms/Chart/chart.tsx +294 -294
  452. package/src/components/organisms/Chart/index.ts +1 -1
  453. package/src/components/organisms/FileUpload/FilePreview/file-preview.tsx +55 -55
  454. package/src/components/organisms/FileUpload/FilePreview/index.ts +1 -1
  455. package/src/components/organisms/FileUpload/file-upload.stories.tsx +20 -20
  456. package/src/components/organisms/FileUpload/file-upload.test.tsx +59 -59
  457. package/src/components/organisms/FileUpload/file-upload.tsx +175 -175
  458. package/src/components/organisms/FileUpload/file.d.ts +20 -20
  459. package/src/components/organisms/Form/__snapshots__/form.test.tsx.snap +194 -0
  460. package/src/components/organisms/Form/form.stories.tsx +155 -155
  461. package/src/components/organisms/Form/form.test.tsx +49 -49
  462. package/src/components/organisms/Form/form.tsx +133 -133
  463. package/src/components/organisms/Form/index.ts +1 -1
  464. package/src/components/organisms/Sidebar/__snapshots__/sidebar.test.tsx.snap +224 -0
  465. package/src/components/organisms/Sidebar/index.ts +1 -1
  466. package/src/components/organisms/Sidebar/sidebar.stories.tsx +86 -86
  467. package/src/components/organisms/Sidebar/sidebar.test.tsx +101 -101
  468. package/src/components/organisms/Sidebar/sidebar.tsx +666 -666
  469. package/src/components/organisms/Table/__snapshots__/table.test.tsx.snap +318 -0
  470. package/src/components/organisms/Table/index.ts +1 -1
  471. package/src/components/organisms/Table/table.stories.tsx +86 -86
  472. package/src/components/organisms/Table/table.test.tsx +42 -42
  473. package/src/components/organisms/Table/table.tsx +120 -120
  474. package/src/components/organisms/index.ts +6 -6
  475. package/src/constants/brazilian-states.ts +29 -29
  476. package/src/constants/index.ts +1 -1
  477. package/src/hooks/index.ts +10 -10
  478. package/src/hooks/useEditorActiveMarks.ts +62 -62
  479. package/src/hooks/useForm.ts +7 -7
  480. package/src/hooks/useFormContext.ts +6 -6
  481. package/src/hooks/useFormField.ts +41 -41
  482. package/src/hooks/useMobile.ts +61 -61
  483. package/src/hooks/useOnToggle.ts +28 -28
  484. package/src/hooks/usePDFNavigation.ts +40 -40
  485. package/src/hooks/usePDFZoom.ts +28 -28
  486. package/src/hooks/useSidebar.ts +23 -23
  487. package/src/hooks/useToast.tsx +37 -37
  488. package/src/index.css +73 -73
  489. package/src/main.ts +6 -6
  490. package/src/theme.css +387 -387
  491. package/src/utils/api/api.test.ts +63 -63
  492. package/src/utils/api/api.ts +33 -33
  493. package/src/utils/api/index.ts +1 -1
  494. package/src/utils/array/array.test.ts +159 -159
  495. package/src/utils/array/array.ts +43 -43
  496. package/src/utils/array/index.ts +1 -1
  497. package/src/utils/clipboard/clipboard.test.ts +217 -217
  498. package/src/utils/clipboard/clipboard.ts +40 -40
  499. package/src/utils/cn/cn.test.ts +42 -42
  500. package/src/utils/cn/cn.ts +6 -6
  501. package/src/utils/cn/index.ts +1 -1
  502. package/src/utils/color-utils/color-utils.test.ts +46 -46
  503. package/src/utils/color-utils/color-utils.ts +97 -97
  504. package/src/utils/color-utils/index.ts +1 -1
  505. package/src/utils/countries/countries.ts +69 -69
  506. package/src/utils/currency/currency.test.ts +113 -113
  507. package/src/utils/currency/currency.ts +133 -133
  508. package/src/utils/currency/index.ts +1 -1
  509. package/src/utils/date/date.test.ts +166 -166
  510. package/src/utils/date/date.ts +83 -83
  511. package/src/utils/date/index.ts +1 -1
  512. package/src/utils/file/file.ts +44 -44
  513. package/src/utils/file/index.ts +1 -1
  514. package/src/utils/get-initials/get-initials.test.ts +40 -40
  515. package/src/utils/get-initials/get-initials.ts +13 -13
  516. package/src/utils/get-initials/index.ts +1 -1
  517. package/src/utils/index.ts +14 -14
  518. package/src/utils/masks/index.ts +1 -1
  519. package/src/utils/masks/masks.ts +179 -179
  520. package/src/utils/render-highlighted-text/render-highlighted-text.tsx +24 -24
  521. package/src/utils/string/index.ts +1 -1
  522. package/src/utils/string/string.test.ts +170 -170
  523. package/src/utils/string/string.ts +154 -154
  524. package/src/utils/video/index.ts +1 -1
  525. package/src/utils/video/video.ts +8 -8
  526. package/src/vite-env.d.ts +3 -3
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
@@ -229,6 +229,8 @@ export declare function BreadcrumbPage({ className, ...props }: React_2.Componen
229
229
 
230
230
  export declare function BreadcrumbSeparator({ children, className, ...props }: React_2.ComponentProps<'li'>): JSX.Element;
231
231
 
232
+ export declare function BrIcon(props: ComponentProps<'svg'>): JSX.Element;
233
+
232
234
  export declare function Briefcase01(props: ComponentProps<'svg'>): JSX.Element;
233
235
 
234
236
  export declare function Brush01(props: ComponentProps<'svg'>): JSX.Element;
@@ -934,6 +936,8 @@ export declare function Edit02(props: ComponentProps<'svg'>): JSX.Element;
934
936
 
935
937
  export declare function Edit03(props: ComponentProps<'svg'>): JSX.Element;
936
938
 
939
+ export declare function EsIcon(props: ComponentProps<'svg'>): JSX.Element;
940
+
937
941
  export declare function Eye(props: ComponentProps<'svg'>): JSX.Element;
938
942
 
939
943
  export declare const FaceFrown: (props: ComponentProps<"svg">) => JSX.Element;
@@ -2001,6 +2005,8 @@ declare interface UseToggleReturn {
2001
2005
  setValue: (value: boolean) => void;
2002
2006
  }
2003
2007
 
2008
+ export declare function UsIcon(props: ComponentProps<'svg'>): JSX.Element;
2009
+
2004
2010
  export declare function VerticalDrag(props: ComponentProps<'svg'>): JSX.Element;
2005
2011
 
2006
2012
  export declare function VideoPlayer({ videoUrl, className }: {