mblabs-roccato-frontend-commons 0.1.78 → 0.1.80

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