xertica-ui 2.4.0 → 2.4.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 (524) hide show
  1. package/CHANGELOG.md +572 -564
  2. package/README.md +417 -417
  3. package/assets/xertica-logo.svg +37 -37
  4. package/assets/xertica-x-logo.svg +20 -20
  5. package/bin/cli.ts +1244 -1244
  6. package/bin/language-config.ts +358 -358
  7. package/components/assistant/code-block/CodeBlock.tsx +268 -268
  8. package/components/assistant/formatted-document/FormattedDocument.tsx +147 -147
  9. package/components/assistant/modern-chat-input/ModernChatInput.tsx +564 -564
  10. package/components/assistant/xertica-assistant/parts/AssistantCollapsedView.tsx +99 -99
  11. package/components/assistant/xertica-assistant/parts/AssistantConversationList.tsx +104 -104
  12. package/components/assistant/xertica-assistant/parts/AssistantDocumentEditor.tsx +81 -81
  13. package/components/assistant/xertica-assistant/parts/AssistantFeedbackDialog.tsx +88 -88
  14. package/components/assistant/xertica-assistant/parts/AssistantHeader.tsx +75 -75
  15. package/components/assistant/xertica-assistant/parts/AssistantMessageBubble.tsx +564 -564
  16. package/components/assistant/xertica-assistant/parts/AssistantTabBar.tsx +67 -67
  17. package/components/assistant/xertica-assistant/parts/AssistantWelcomeScreen.tsx +103 -103
  18. package/components/assistant/xertica-assistant/use-assistant.ts +615 -615
  19. package/components/assistant/xertica-assistant/xertica-assistant.tsx +611 -611
  20. package/components/blocks/card-patterns/ActivityCard.tsx +100 -100
  21. package/components/blocks/card-patterns/ActivityCardSkeleton.tsx +56 -56
  22. package/components/blocks/card-patterns/FeatureCardSkeleton.tsx +58 -58
  23. package/components/blocks/card-patterns/NotificationCard.tsx +140 -140
  24. package/components/blocks/card-patterns/NotificationCardSkeleton.tsx +81 -81
  25. package/components/blocks/card-patterns/ProfileCard.tsx +112 -112
  26. package/components/blocks/card-patterns/ProfileCardSkeleton.tsx +69 -69
  27. package/components/blocks/card-patterns/ProjectCard.tsx +123 -123
  28. package/components/blocks/card-patterns/ProjectCardSkeleton.tsx +67 -67
  29. package/components/blocks/card-patterns/QuickActionCardSkeleton.tsx +44 -44
  30. package/components/blocks/card-patterns/card-patterns.stories.tsx +594 -594
  31. package/components/blocks/card-patterns/index.ts +29 -29
  32. package/components/brand/language-selector/LanguageSelector.tsx +102 -102
  33. package/components/brand/language-selector/language-selector.stories.tsx +111 -111
  34. package/components/brand/language-selector/language-selector.test.tsx +101 -101
  35. package/components/brand/theme-toggle/ThemeToggle.tsx +74 -74
  36. package/components/brand/xertica-provider/XerticaProvider.tsx +109 -109
  37. package/components/brand/xertica-provider/xertica-provider.mdx +61 -61
  38. package/components/index.ts +86 -86
  39. package/components/layout/sidebar/sidebar.mdx +1 -1
  40. package/components/layout/sidebar/sidebar.tsx +1079 -1079
  41. package/components/media/FloatingMediaWrapper.tsx +371 -371
  42. package/components/media/audio-player/AudioPlayer.tsx +768 -768
  43. package/components/media/video-player/VideoPlayer.tsx +310 -310
  44. package/components/pages/forgot-password-page/ForgotPasswordPage.tsx +188 -188
  45. package/components/pages/home-content/HomeContent.tsx +120 -120
  46. package/components/pages/home-content/home-content.mdx +62 -62
  47. package/components/pages/home-page/HomePage.tsx +78 -78
  48. package/components/pages/home-page/home-page.mdx +53 -53
  49. package/components/pages/login-page/LoginPage.tsx +218 -218
  50. package/components/pages/reset-password-page/ResetPasswordPage.tsx +243 -243
  51. package/components/pages/template-content/TemplateContent.tsx +1354 -1354
  52. package/components/pages/template-content/template-content.mdx +61 -61
  53. package/components/pages/template-page/template-page.mdx +53 -53
  54. package/components/pages/verify-email-page/VerifyEmailPage.tsx +206 -206
  55. package/components/shared/error-boundary.stories.tsx +114 -114
  56. package/components/shared/error-boundary.tsx +150 -150
  57. package/components/shared/error-fallbacks.tsx +222 -222
  58. package/components/ui/accordion/accordion.mdx +8 -8
  59. package/components/ui/alert/alert.mdx +8 -8
  60. package/components/ui/alert-dialog/alert-dialog.mdx +8 -8
  61. package/components/ui/aspect-ratio/aspect-ratio.mdx +8 -8
  62. package/components/ui/assistant-chart/assistant-chart.mdx +8 -8
  63. package/components/ui/avatar/avatar.mdx +8 -8
  64. package/components/ui/badge/badge.mdx +8 -8
  65. package/components/ui/breadcrumb/breadcrumb.mdx +8 -8
  66. package/components/ui/button/button.mdx +8 -8
  67. package/components/ui/calendar/calendar.mdx +8 -8
  68. package/components/ui/card/card.mdx +8 -8
  69. package/components/ui/carousel/carousel.mdx +8 -8
  70. package/components/ui/chart/chart.mdx +8 -8
  71. package/components/ui/checkbox/checkbox.mdx +8 -8
  72. package/components/ui/collapsible/collapsible.mdx +8 -8
  73. package/components/ui/command/command.mdx +8 -8
  74. package/components/ui/context-menu/context-menu.mdx +8 -8
  75. package/components/ui/dialog/dialog.mdx +8 -8
  76. package/components/ui/drawer/drawer.mdx +8 -8
  77. package/components/ui/dropdown-menu/dropdown-menu.mdx +8 -8
  78. package/components/ui/empty/empty.mdx +8 -8
  79. package/components/ui/file-upload/file-upload.mdx +8 -8
  80. package/components/ui/hover-card/hover-card.mdx +8 -8
  81. package/components/ui/input/input.mdx +8 -8
  82. package/components/ui/input-otp/input-otp.mdx +8 -8
  83. package/components/ui/label/label.mdx +8 -8
  84. package/components/ui/map/map.mdx +8 -8
  85. package/components/ui/menubar/menubar.mdx +8 -8
  86. package/components/ui/navigation-menu/navigation-menu.mdx +8 -8
  87. package/components/ui/notification-badge/notification-badge.mdx +8 -8
  88. package/components/ui/pagination/pagination.mdx +8 -8
  89. package/components/ui/popover/popover.mdx +8 -8
  90. package/components/ui/progress/progress.mdx +8 -8
  91. package/components/ui/radio-group/radio-group.mdx +8 -8
  92. package/components/ui/rating/rating.mdx +8 -8
  93. package/components/ui/resizable/resizable.mdx +8 -8
  94. package/components/ui/route-map/route-map.mdx +8 -8
  95. package/components/ui/scroll-area/scroll-area.mdx +8 -8
  96. package/components/ui/search/search.mdx +8 -8
  97. package/components/ui/select/select.mdx +8 -8
  98. package/components/ui/separator/separator.mdx +8 -8
  99. package/components/ui/sheet/sheet.mdx +8 -8
  100. package/components/ui/simple-map/simple-map.mdx +8 -8
  101. package/components/ui/skeleton/skeleton.mdx +8 -8
  102. package/components/ui/slider/slider.mdx +8 -8
  103. package/components/ui/sonner/sonner.mdx +8 -8
  104. package/components/ui/stats-card/index.ts +2 -2
  105. package/components/ui/stats-card/stats-card-skeleton.tsx +60 -60
  106. package/components/ui/stats-card/stats-card.mdx +8 -8
  107. package/components/ui/stats-card/stats-card.stories.tsx +117 -99
  108. package/components/ui/stats-card/stats-card.tsx +18 -2
  109. package/components/ui/stepper/stepper.mdx +8 -8
  110. package/components/ui/switch/switch.mdx +8 -8
  111. package/components/ui/table/table.mdx +8 -8
  112. package/components/ui/tabs/tabs.mdx +8 -8
  113. package/components/ui/textarea/textarea.mdx +8 -8
  114. package/components/ui/timeline/timeline.mdx +8 -8
  115. package/components/ui/toggle/toggle.mdx +8 -8
  116. package/components/ui/toggle-group/toggle-group.mdx +8 -8
  117. package/components/ui/tooltip/tooltip.mdx +8 -8
  118. package/components/ui/tree-view/tree-view.mdx +8 -8
  119. package/components.json +153 -533
  120. package/contexts/AuthContext.tsx +121 -121
  121. package/contexts/LanguageContext.test.tsx +121 -121
  122. package/contexts/LanguageContext.tsx +250 -250
  123. package/dist/AssistantChart-BKVtGUKF.js +3383 -0
  124. package/dist/{AssistantChart-BAx9VQvb.cjs → AssistantChart-Bdd44uBn.cjs} +388 -127
  125. package/dist/{AssistantChart-CVko2A1W.js → AssistantChart-CFhDdGyU.js} +391 -130
  126. package/dist/{AssistantChart-CVzmmhx4.js → AssistantChart-C_hwFRRr.js} +4 -4
  127. package/dist/{AssistantChart-BAudAfne.cjs → AssistantChart-CldVCVDe.cjs} +5 -5
  128. package/dist/{AssistantChart-BP8upjMk.js → AssistantChart-Cu3m7RBo.js} +5 -5
  129. package/dist/AssistantChart-CxGjH7Qk.js +3477 -0
  130. package/dist/AssistantChart-DIpshm3i.js +4784 -0
  131. package/dist/AssistantChart-D_PTeu8P.cjs +3503 -0
  132. package/dist/{AssistantChart-9w31gdAb.cjs → AssistantChart-DoZCyS5r.cjs} +4 -4
  133. package/dist/AssistantChart-WeycT5Pd.cjs +3551 -0
  134. package/dist/AssistantChart-zjsy2GaZ.cjs +4810 -0
  135. package/dist/AudioPlayer-B1lt5cPl.cjs +989 -0
  136. package/dist/AudioPlayer-BZ7bibzU.cjs +982 -0
  137. package/dist/AudioPlayer-BpRPS4-1.cjs +1277 -0
  138. package/dist/AudioPlayer-C12BjQBV.cjs +997 -0
  139. package/dist/{AudioPlayer-1ypwE2Wh.cjs → AudioPlayer-CFeV8t-5.cjs} +1 -1
  140. package/dist/{AudioPlayer-DuKXrCfy.js → AudioPlayer-CGRUtUdN.js} +1 -1
  141. package/dist/AudioPlayer-Coly3q5R.js +1278 -0
  142. package/dist/AudioPlayer-CySJIyvL.js +937 -0
  143. package/dist/AudioPlayer-DMcG_c7L.js +990 -0
  144. package/dist/AudioPlayer-DcFKRJE_.js +998 -0
  145. package/dist/AudioPlayer-IAU5q5T1.cjs +936 -0
  146. package/dist/AudioPlayer-e8LfNoqO.js +983 -0
  147. package/dist/BrandColorsContext-565dDHd5.js +660 -0
  148. package/dist/BrandColorsContext-BcJbtkqn.cjs +659 -0
  149. package/dist/{xertica-assistant-Qp3ydksa.cjs → CodeBlock-7TTgmdGG.cjs} +263 -51
  150. package/dist/{xertica-assistant-gnCJdcZY.js → CodeBlock-BeSt1h5P.js} +219 -7
  151. package/dist/CodeBlock-BgfYL_rD.cjs +2094 -0
  152. package/dist/CodeBlock-BlcqlA9M.cjs +2094 -0
  153. package/dist/CodeBlock-Bnmeu5ez.cjs +2094 -0
  154. package/dist/CodeBlock-BtfPlbAI.js +2078 -0
  155. package/dist/CodeBlock-CIySIuYr.js +2078 -0
  156. package/dist/CodeBlock-CuPtUM-7.cjs +2094 -0
  157. package/dist/CodeBlock-D6ffWXgc.js +2078 -0
  158. package/dist/CodeBlock-D8dcwbit.cjs +2094 -0
  159. package/dist/CodeBlock-DMZrFnlw.cjs +2094 -0
  160. package/dist/CodeBlock-DlBehYN8.js +2078 -0
  161. package/dist/CodeBlock-DnYNI8rQ.js +2078 -0
  162. package/dist/CodeBlock-DvKWbSnE.cjs +2094 -0
  163. package/dist/CodeBlock-DwMCfkFY.js +2078 -0
  164. package/dist/CodeBlock-Dy6CNYyj.js +2078 -0
  165. package/dist/CodeBlock-U1pPOQI7.cjs +2094 -0
  166. package/dist/CodeBlock-f_GpNhEB.js +2078 -0
  167. package/dist/CodeBlock-oB6u8nI1.js +2078 -0
  168. package/dist/CodeBlock-tZC31B73.cjs +2094 -0
  169. package/dist/FeatureCard-CxC-7C-C.cjs +300 -0
  170. package/dist/FeatureCard-DbHWCb4E.js +301 -0
  171. package/dist/ImageWithFallback-CGtidP6B.cjs +4542 -0
  172. package/dist/ImageWithFallback-lsg3pdFg.js +4508 -0
  173. package/dist/{LanguageContext-DvUt5jBg.cjs → LanguageContext-B_KFTCzT.cjs} +2 -2
  174. package/dist/{LanguageContext-BwhwC3G2.js → LanguageContext-CS14yCpi.js} +2 -2
  175. package/dist/{XerticaXLogo-DHz5SugF.js → LanguageSelector-B5YfbHra.js} +115 -136
  176. package/dist/{XerticaXLogo-DTee_y8X.cjs → LanguageSelector-D6uacAIM.cjs} +115 -136
  177. package/dist/LayoutContext-B45-e9DI.cjs +93 -0
  178. package/dist/LayoutContext-BAql6ZRY.js +97 -0
  179. package/dist/LayoutContext-Bav3UMEA.js +94 -0
  180. package/dist/LayoutContext-BvK-ggDa.cjs +96 -0
  181. package/dist/{ThemeContext-Bo-W2WZH.js → ThemeContext-BWq9ACPo.js} +8 -13
  182. package/dist/{ThemeContext-ept8jhXI.js → ThemeContext-BXjrgUjW.js} +261 -200
  183. package/dist/{ThemeContext-BblcjQup.cjs → ThemeContext-Bmod0Cg2.cjs} +8 -13
  184. package/dist/ThemeContext-BoH4NLfN.js +734 -0
  185. package/dist/{ThemeContext-BbBNoFTG.js → ThemeContext-C2EwAPDt.js} +2 -2
  186. package/dist/{ThemeContext-U4dEYc6C.cjs → ThemeContext-CGk3KK0k.cjs} +1 -8
  187. package/dist/{ThemeContext-D3LzacmG.js → ThemeContext-CQSo4Iwc.js} +1 -8
  188. package/dist/{ThemeContext-CP3a0jxy.cjs → ThemeContext-j5aGtPky.cjs} +262 -193
  189. package/dist/ThemeContext-r69W20Xg.cjs +733 -0
  190. package/dist/{ThemeContext-Cmr8Ex8H.cjs → ThemeContext-vTjumZeM.cjs} +2 -2
  191. package/dist/{VerifyEmailPage-BRSP-Pwt.cjs → VerifyEmailPage--1Vurewl.cjs} +3 -3
  192. package/dist/{VerifyEmailPage-CbgjOF0v.js → VerifyEmailPage-1WwWczAn.js} +12 -22
  193. package/dist/{VerifyEmailPage-DF2ilhum.cjs → VerifyEmailPage-B4peJjAT.cjs} +356 -334
  194. package/dist/{VerifyEmailPage-CR7kb5df.cjs → VerifyEmailPage-BComraR7.cjs} +12 -22
  195. package/dist/{VerifyEmailPage-u_Dn7t1U.cjs → VerifyEmailPage-Bp1XXl3H.cjs} +4 -4
  196. package/dist/{VerifyEmailPage-CkBYfsNy.cjs → VerifyEmailPage-By3Jf__L.cjs} +4 -4
  197. package/dist/{VerifyEmailPage-Bv8Ah_TK.cjs → VerifyEmailPage-ByerOcm4.cjs} +20 -23
  198. package/dist/{VerifyEmailPage-BE-L9mB7.js → VerifyEmailPage-C0c2e5n0.js} +7 -7
  199. package/dist/{VerifyEmailPage-EhudUdqF.js → VerifyEmailPage-C5TNQTBa.js} +355 -343
  200. package/dist/{VerifyEmailPage-Dt7zgA4w.cjs → VerifyEmailPage-CFLMls1p.cjs} +4 -4
  201. package/dist/{VerifyEmailPage-Cyl55sJb.js → VerifyEmailPage-CJLz3jrn.js} +20 -23
  202. package/dist/VerifyEmailPage-COiyNl1y.js +2825 -0
  203. package/dist/{VerifyEmailPage-DMBh4NM9.cjs → VerifyEmailPage-CYXtbKi3.cjs} +1 -1
  204. package/dist/{VerifyEmailPage-DTtFfC-J.js → VerifyEmailPage-CgMxRb4z.js} +3 -3
  205. package/dist/VerifyEmailPage-CqKsR2v8.js +2827 -0
  206. package/dist/{VerifyEmailPage-Bae2cBXT.cjs → VerifyEmailPage-Cwi3kbol.cjs} +7 -7
  207. package/dist/{VerifyEmailPage-X14vhdyl.js → VerifyEmailPage-DGhuIqkb.js} +4 -4
  208. package/dist/{VerifyEmailPage-BIBOKV7Z.js → VerifyEmailPage-DSBMRHtl.js} +36 -41
  209. package/dist/{VerifyEmailPage-D-FRj5TU.cjs → VerifyEmailPage-De6bQjrz.cjs} +36 -41
  210. package/dist/{VerifyEmailPage-BJjAMUTW.js → VerifyEmailPage-DgIid028.js} +4 -4
  211. package/dist/VerifyEmailPage-DjQKRlUS.cjs +2824 -0
  212. package/dist/{VerifyEmailPage-CdYPSJoO.js → VerifyEmailPage-DvMLZgFt.js} +1 -1
  213. package/dist/{VerifyEmailPage-C_ihbcth.js → VerifyEmailPage-MTD7AG1Z.js} +4 -4
  214. package/dist/VerifyEmailPage-s-1X3LDJ.cjs +2826 -0
  215. package/dist/XerticaOrbe-KL1RBHzw.cjs +1354 -0
  216. package/dist/XerticaOrbe-zwS1p2a8.js +1355 -0
  217. package/dist/XerticaProvider-6btlAlzc.js +17 -0
  218. package/dist/{XerticaProvider-siSt9uG2.js → XerticaProvider-B7EVH-NF.js} +2 -2
  219. package/dist/{XerticaProvider-AbWlr7Af.cjs → XerticaProvider-BIrqfZ-i.cjs} +11 -8
  220. package/dist/XerticaProvider-BNoNOxQ5.cjs +16 -0
  221. package/dist/XerticaProvider-BlY2limY.cjs +38 -0
  222. package/dist/{XerticaProvider-CWgby5mY.js → XerticaProvider-C1DKnvLh.js} +4 -4
  223. package/dist/{XerticaProvider-AChwphCO.cjs → XerticaProvider-CBGc4EMA.cjs} +4 -4
  224. package/dist/{XerticaProvider-BITjgC5p.js → XerticaProvider-CEoWMTxu.js} +2 -2
  225. package/dist/{XerticaProvider-By8q3Roe.cjs → XerticaProvider-CllrbMEJ.cjs} +2 -2
  226. package/dist/{XerticaProvider-B8CaV7xu.cjs → XerticaProvider-D-yNhF94.cjs} +1 -1
  227. package/dist/XerticaProvider-DDuiIcKo.js +39 -0
  228. package/dist/{XerticaProvider-DQtvJU7m.js → XerticaProvider-DYq4JWtg.js} +1 -1
  229. package/dist/{XerticaProvider-CWs6EwNa.js → XerticaProvider-Dt5HEzbQ.js} +10 -10
  230. package/dist/{XerticaProvider-CW9hpCdF.cjs → XerticaProvider-ET0ihewn.cjs} +2 -2
  231. package/dist/XerticaProvider-cI9hSs27.cjs +38 -0
  232. package/dist/XerticaProvider-hSwhNQex.js +39 -0
  233. package/dist/{XerticaXLogo-ChryA6xj.js → XerticaXLogo-B7xQ5dhi.js} +1 -1
  234. package/dist/{XerticaXLogo-CziKMQil.cjs → XerticaXLogo-CQUUjXoH.cjs} +8 -8
  235. package/dist/{XerticaXLogo-DfUvz-lD.js → XerticaXLogo-Cmsp-Eey.js} +9 -9
  236. package/dist/{XerticaXLogo-CFuIlYFH.js → XerticaXLogo-DZbo4vOE.js} +12 -12
  237. package/dist/{XerticaXLogo-8TTzBjHw.cjs → XerticaXLogo-Zw2B276b.cjs} +1 -1
  238. package/dist/{XerticaXLogo-kslQ8Tk_.cjs → XerticaXLogo-bvZSgwGF.cjs} +13 -7
  239. package/dist/alert-dialog-BOje--vD.js +847 -0
  240. package/dist/alert-dialog-BtEuQqrg.cjs +870 -0
  241. package/dist/{alert-dialog-yckpaOpy.cjs → alert-dialog-DSKByiKZ.cjs} +3 -3
  242. package/dist/{alert-dialog-iDe5VE5o.js → alert-dialog-s-vmNkJ_.js} +3 -3
  243. package/dist/breadcrumb-CqJ7bHY5.js +161 -0
  244. package/dist/breadcrumb-m9Hb2_XN.cjs +177 -0
  245. package/dist/components/assistant/xertica-assistant/hooks/index.d.ts +6 -0
  246. package/dist/components/assistant/xertica-assistant/hooks/use-assistant-conversations.d.ts +21 -0
  247. package/dist/components/assistant/xertica-assistant/hooks/use-assistant-messages.d.ts +49 -0
  248. package/dist/components/assistant/xertica-assistant/hooks/use-assistant-suggestions.d.ts +16 -0
  249. package/dist/components/blocks/audio-player/AudioPlayer.d.ts +35 -0
  250. package/dist/components/blocks/audio-player/index.d.ts +1 -0
  251. package/dist/components/blocks/document-editor/DocumentEditor.d.ts +26 -0
  252. package/dist/components/blocks/document-editor/index.d.ts +1 -0
  253. package/dist/components/blocks/podcast-player/PodcastPlayer.d.ts +41 -0
  254. package/dist/components/blocks/podcast-player/index.d.ts +1 -0
  255. package/dist/components/ui/chart/parts/chart-dashboard.d.ts +113 -0
  256. package/dist/components/ui/chart/parts/chart-metric.d.ts +118 -0
  257. package/dist/components/ui/chart/parts/chart-primitives.d.ts +101 -0
  258. package/dist/components/ui/chart/parts/chart-shared.d.ts +20 -0
  259. package/dist/components/ui/chart/parts/chart-utils.d.ts +12 -0
  260. package/dist/components/ui/chart/parts/index.d.ts +5 -0
  261. package/dist/components/ui/stats-card/stats-card.d.ts +10 -0
  262. package/dist/dropdown-menu-BDB5CmQs.cjs +247 -0
  263. package/dist/dropdown-menu-DQidbKBD.js +231 -0
  264. package/dist/google-maps-loader-BFWp6VPd.js +287 -0
  265. package/dist/google-maps-loader-BKcdgFbu.cjs +312 -0
  266. package/dist/{google-maps-loader-t2IlYBzw.js → google-maps-loader-CTYySAun.js} +4 -0
  267. package/dist/google-maps-loader-CumCNXeG.js +312 -0
  268. package/dist/{google-maps-loader-BqsYL48U.cjs → google-maps-loader-Y-QkD-Li.cjs} +5 -0
  269. package/dist/google-maps-loader-eS3uQ5TA.cjs +287 -0
  270. package/dist/header-Cgy6vYPk.cjs +731 -0
  271. package/dist/header-DRlT4jgI.js +715 -0
  272. package/dist/header-Dux00SI4.cjs +731 -0
  273. package/dist/header-EkGKXPsD.js +715 -0
  274. package/dist/header-WfEywpyc.cjs +731 -0
  275. package/dist/header-tifNQn2U.js +715 -0
  276. package/dist/index-BhapVLVj.js +8 -0
  277. package/dist/{index-D3RLKRAs.cjs → index-COtD8bRW.cjs} +1 -1
  278. package/dist/index-D6fxYEY8.cjs +7 -0
  279. package/dist/index-DAIp0_HK.js +8 -0
  280. package/dist/index-DW5tYe26.js +8 -0
  281. package/dist/index-GA__GvnG.cjs +7 -0
  282. package/dist/index.cjs.js +2 -2
  283. package/dist/index.es.js +2 -2
  284. package/dist/index.umd.js +1043 -470
  285. package/dist/input-2R4loU86.js +127 -0
  286. package/dist/input-DWANSKGb.cjs +145 -0
  287. package/dist/pages.cjs.js +1 -1
  288. package/dist/pages.es.js +1 -1
  289. package/dist/progress-DPtzoVV8.js +175 -0
  290. package/dist/progress-EeaoqqUs.cjs +191 -0
  291. package/dist/rich-text-editor-0mraWT5y.cjs +2376 -0
  292. package/dist/rich-text-editor-B-IkcPD0.js +2874 -0
  293. package/dist/rich-text-editor-B6jMRLzk.cjs +1939 -0
  294. package/dist/rich-text-editor-B8_oYcIR.js +1730 -0
  295. package/dist/rich-text-editor-B9UbSXNb.js +1203 -0
  296. package/dist/rich-text-editor-BYuRBNBU.js +2373 -0
  297. package/dist/rich-text-editor-Bb9pySTs.cjs +2374 -0
  298. package/dist/rich-text-editor-BcL6L3cm.cjs +2374 -0
  299. package/dist/rich-text-editor-BoVZYtTs.cjs +2391 -0
  300. package/dist/rich-text-editor-Bp3zQqMC.js +2954 -0
  301. package/dist/rich-text-editor-CMgSN_w2.js +1189 -0
  302. package/dist/rich-text-editor-CPV1lEPH.cjs +1748 -0
  303. package/dist/rich-text-editor-CeucBdIv.cjs +2971 -0
  304. package/dist/rich-text-editor-CoKqbCtu.cjs +1799 -0
  305. package/dist/rich-text-editor-Cw56T_mB.js +2356 -0
  306. package/dist/rich-text-editor-Cyt8qs2b.js +1921 -0
  307. package/dist/rich-text-editor-D6H84OcX.cjs +1220 -0
  308. package/dist/rich-text-editor-D76gD-QI.js +2328 -0
  309. package/dist/rich-text-editor-DKkokOnA.js +1781 -0
  310. package/dist/rich-text-editor-DNsdpN64.cjs +2359 -0
  311. package/dist/rich-text-editor-DfG8bCyY.js +2358 -0
  312. package/dist/rich-text-editor-Dxjw31Z4.js +2341 -0
  313. package/dist/rich-text-editor-DzP0Epmb.js +2356 -0
  314. package/dist/rich-text-editor-bRkNoeZY.cjs +2891 -0
  315. package/dist/rich-text-editor-lyYE2ZG5.cjs +1207 -0
  316. package/dist/rich-text-editor-skplNlBM.cjs +2345 -0
  317. package/dist/select-Bkbr0f-Z.cjs +162 -0
  318. package/dist/select-CvIVdX2n.js +145 -0
  319. package/dist/{sidebar-CA6_ek3f.js → sidebar-B6SlKZYN.js} +40 -49
  320. package/dist/{sidebar-CmvwjnVb.js → sidebar-BViy8Eeu.js} +17 -9
  321. package/dist/{sidebar-Dz7bd3zP.js → sidebar-BbVIQvlP.js} +1 -1
  322. package/dist/{sidebar-CVUGHOS_.cjs → sidebar-BxGXsDAd.cjs} +16 -8
  323. package/dist/sidebar-CK_0ZQHj.cjs +803 -0
  324. package/dist/sidebar-CUuOvYhK.js +787 -0
  325. package/dist/{sidebar-KIS0C2JH.js → sidebar-CrQDDdcz.js} +24 -33
  326. package/dist/{sidebar-zowjejT2.cjs → sidebar-DAaY8bRU.cjs} +24 -33
  327. package/dist/{sidebar-B3EYhli0.cjs → sidebar-DQj1z3jG.cjs} +227 -269
  328. package/dist/{sidebar-B9NR0lCe.cjs → sidebar-Djn5syhi.cjs} +295 -309
  329. package/dist/{sidebar-CplprZpM.js → sidebar-LluMXfam.js} +227 -269
  330. package/dist/sidebar-_rT7rBMk.js +787 -0
  331. package/dist/{sidebar-BvF5I2Ue.cjs → sidebar-nzPoVHBQ.cjs} +41 -46
  332. package/dist/{sidebar-C5B_LHek.cjs → sidebar-q7P2Godd.cjs} +1 -1
  333. package/dist/slider-Bc5Hd0y1.js +56 -0
  334. package/dist/slider-N7hFFj6X.cjs +73 -0
  335. package/dist/tooltip-Ded96neP.cjs +137 -0
  336. package/dist/tooltip-HDOoD2-0.js +120 -0
  337. package/dist/ui.cjs.js +1 -1
  338. package/dist/ui.es.js +1 -1
  339. package/dist/use-audio-player-B31J-aqh.cjs +187 -0
  340. package/dist/use-audio-player-BkmEmj8Q.js +185 -0
  341. package/dist/use-audio-player-CLFTWFW1.cjs +184 -0
  342. package/dist/use-audio-player-CLLn00I6.js +188 -0
  343. package/dist/{use-audio-player-Dn1NR9xN.cjs → use-audio-player-NKsWyjWu.cjs} +7 -3
  344. package/dist/{use-audio-player-Bkh23vQ3.js → use-audio-player-nv8ZSGa1.js} +7 -3
  345. package/dist/use-file-upload-BcjEo2S5.js +404 -0
  346. package/dist/use-file-upload-CRJR68Tj.cjs +403 -0
  347. package/dist/use-mobile-B0hNy_Y6.cjs +4303 -0
  348. package/dist/use-mobile-BXuYROXM.js +4202 -0
  349. package/dist/use-mobile-Bbd51ASU.cjs +4392 -0
  350. package/dist/use-mobile-Bk6CX-TC.js +4359 -0
  351. package/dist/use-mobile-BvYdisLP.js +4202 -0
  352. package/dist/use-mobile-BzuxjzNX.cjs +4392 -0
  353. package/dist/use-mobile-CG2-SdXV.cjs +4235 -0
  354. package/dist/use-mobile-CKb5pqTs.js +4269 -0
  355. package/dist/use-mobile-CYuAuGDl.js +4202 -0
  356. package/dist/use-mobile-CaENcqm-.js +4508 -0
  357. package/dist/use-mobile-CbrYgJGJ.js +4203 -0
  358. package/dist/use-mobile-Cd4xPrKq.cjs +46 -0
  359. package/dist/use-mobile-DMOvImGQ.cjs +4542 -0
  360. package/dist/use-mobile-DRB3BQgD.cjs +4235 -0
  361. package/dist/use-mobile-DZvv7QMR.js +4359 -0
  362. package/dist/use-mobile-DdI_TXam.cjs +4235 -0
  363. package/dist/use-mobile-DlceKf8a.js +4359 -0
  364. package/dist/use-mobile-DsOnow1o.cjs +4236 -0
  365. package/dist/use-mobile-Kcj6jSnK.cjs +4392 -0
  366. package/dist/use-mobile-bnKcua_i.js +4202 -0
  367. package/dist/use-mobile-j4w2Jrf1.js +30 -0
  368. package/dist/use-mobile-ncXBeE2z.cjs +4235 -0
  369. package/dist/use-rich-text-editor-DjiddBGv.js +282 -0
  370. package/dist/use-rich-text-editor-lpeswbCs.cjs +281 -0
  371. package/dist/xertica-assistant-BdiZag0h.js +2187 -0
  372. package/dist/xertica-assistant-CrgTb6Hs.cjs +2155 -0
  373. package/dist/xertica-assistant-DCsnQyi5.js +2156 -0
  374. package/dist/xertica-assistant-DUBpmEgo.cjs +2186 -0
  375. package/dist/{xertica-assistant-Bj3vBCq_.cjs → xertica-assistant-V_IdW4WF.cjs} +27 -9
  376. package/dist/{xertica-assistant-BMqdyRVi.js → xertica-assistant-ciJaWqm1.js} +28 -10
  377. package/dist/{xertica-assistant-B1IaHXnB.cjs → xertica-assistant-dyP7KHM5.cjs} +533 -392
  378. package/dist/{xertica-assistant-DPsESB6t.js → xertica-assistant-yX1CFBBo.js} +535 -394
  379. package/dist/xertica-ui.css +2 -2
  380. package/docs/architecture-improvements.md +456 -456
  381. package/docs/architecture.md +312 -312
  382. package/docs/components/assistant.md +428 -428
  383. package/docs/components/branding.md +252 -252
  384. package/docs/components/card-patterns.md +447 -447
  385. package/docs/components/error-boundary.md +201 -201
  386. package/docs/components/hooks.md +432 -432
  387. package/docs/components/language-selector.md +176 -176
  388. package/docs/components/pages.md +323 -323
  389. package/docs/components/stats-card.md +20 -2
  390. package/docs/doc-audit.md +244 -244
  391. package/docs/getting-started.md +616 -616
  392. package/docs/guidelines.md +330 -330
  393. package/docs/i18n.md +480 -480
  394. package/docs/installation.md +268 -268
  395. package/docs/llms.md +295 -295
  396. package/docs/state-management.md +289 -289
  397. package/guidelines/Guidelines.md +409 -409
  398. package/llms-compact.txt +1 -1
  399. package/llms-full.txt +11553 -7133
  400. package/llms.txt +1 -1
  401. package/package.json +219 -219
  402. package/styles/xertica/base.css +90 -90
  403. package/templates/.prettierignore +4 -4
  404. package/templates/.prettierrc +10 -10
  405. package/templates/CLAUDE.md +180 -180
  406. package/templates/guidelines/Guidelines.md +577 -577
  407. package/templates/package.json +69 -69
  408. package/templates/src/app/App.tsx +46 -46
  409. package/templates/src/app/components/AuthGuard.tsx +131 -131
  410. package/templates/src/features/assistant/data/mock.ts +75 -75
  411. package/templates/src/features/assistant/hooks/useAssistantConfig.ts +20 -20
  412. package/templates/src/features/assistant/index.ts +5 -5
  413. package/templates/src/features/auth/ui/AuthPageShell.tsx +32 -32
  414. package/templates/src/features/auth/ui/ForgotPasswordContent.tsx +70 -70
  415. package/templates/src/features/auth/ui/LoginContent.tsx +92 -92
  416. package/templates/src/features/auth/ui/ResetPasswordContent.tsx +183 -183
  417. package/templates/src/features/auth/ui/SocialLoginButtons.tsx +78 -78
  418. package/templates/src/features/auth/ui/VerifyEmailContent.tsx +80 -80
  419. package/templates/src/features/home/data/mock.ts +41 -41
  420. package/templates/src/features/home/hooks/useFeatureCards.ts +20 -20
  421. package/templates/src/features/home/index.ts +11 -11
  422. package/templates/src/features/home/ui/HomeContent.tsx +117 -117
  423. package/templates/src/features/template/ui/CrudTemplate.tsx +112 -112
  424. package/templates/src/features/template/ui/DashboardTemplate.tsx +110 -110
  425. package/templates/src/features/template/ui/FormTemplate.tsx +117 -117
  426. package/templates/src/features/template/ui/LoginTemplate.tsx +59 -59
  427. package/templates/src/features/template/ui/TemplateContent.tsx +1322 -1322
  428. package/templates/src/i18n.ts +124 -124
  429. package/templates/src/locales/en/common.json +21 -21
  430. package/templates/src/locales/en/components/activityCard.json +10 -10
  431. package/templates/src/locales/en/components/assistant.json +119 -119
  432. package/templates/src/locales/en/components/media.json +29 -29
  433. package/templates/src/locales/en/components/notificationCard.json +5 -5
  434. package/templates/src/locales/en/components/profileCard.json +8 -8
  435. package/templates/src/locales/en/components/projectCard.json +10 -10
  436. package/templates/src/locales/en/components/sidebar.json +14 -14
  437. package/templates/src/locales/en/components/stats.json +8 -8
  438. package/templates/src/locales/en/components/team.json +14 -14
  439. package/templates/src/locales/en/errors.json +9 -9
  440. package/templates/src/locales/en/languageSelector.json +7 -7
  441. package/templates/src/locales/en/nav.json +6 -6
  442. package/templates/src/locales/en/pages/crudTemplate.json +25 -25
  443. package/templates/src/locales/en/pages/dashboardTemplate.json +20 -20
  444. package/templates/src/locales/en/pages/forgotPassword.json +10 -10
  445. package/templates/src/locales/en/pages/formTemplate.json +16 -16
  446. package/templates/src/locales/en/pages/home.json +7 -7
  447. package/templates/src/locales/en/pages/login.json +15 -15
  448. package/templates/src/locales/en/pages/loginTemplate.json +9 -9
  449. package/templates/src/locales/en/pages/resetPassword.json +18 -18
  450. package/templates/src/locales/en/pages/templates.json +317 -317
  451. package/templates/src/locales/en/pages/verifyEmail.json +12 -12
  452. package/templates/src/locales/en/themeToggle.json +6 -6
  453. package/templates/src/locales/es/common.json +21 -21
  454. package/templates/src/locales/es/components/activityCard.json +10 -10
  455. package/templates/src/locales/es/components/assistant.json +119 -119
  456. package/templates/src/locales/es/components/media.json +29 -29
  457. package/templates/src/locales/es/components/notificationCard.json +5 -5
  458. package/templates/src/locales/es/components/profileCard.json +8 -8
  459. package/templates/src/locales/es/components/projectCard.json +10 -10
  460. package/templates/src/locales/es/components/sidebar.json +14 -14
  461. package/templates/src/locales/es/components/stats.json +8 -8
  462. package/templates/src/locales/es/components/team.json +14 -14
  463. package/templates/src/locales/es/errors.json +9 -9
  464. package/templates/src/locales/es/languageSelector.json +7 -7
  465. package/templates/src/locales/es/nav.json +6 -6
  466. package/templates/src/locales/es/pages/crudTemplate.json +25 -25
  467. package/templates/src/locales/es/pages/dashboardTemplate.json +20 -20
  468. package/templates/src/locales/es/pages/forgotPassword.json +10 -10
  469. package/templates/src/locales/es/pages/formTemplate.json +16 -16
  470. package/templates/src/locales/es/pages/home.json +7 -7
  471. package/templates/src/locales/es/pages/login.json +15 -15
  472. package/templates/src/locales/es/pages/loginTemplate.json +9 -9
  473. package/templates/src/locales/es/pages/resetPassword.json +18 -18
  474. package/templates/src/locales/es/pages/templates.json +317 -317
  475. package/templates/src/locales/es/pages/verifyEmail.json +12 -12
  476. package/templates/src/locales/es/themeToggle.json +6 -6
  477. package/templates/src/locales/pt-BR/common.json +21 -21
  478. package/templates/src/locales/pt-BR/components/activityCard.json +10 -10
  479. package/templates/src/locales/pt-BR/components/assistant.json +119 -119
  480. package/templates/src/locales/pt-BR/components/media.json +29 -29
  481. package/templates/src/locales/pt-BR/components/notificationCard.json +5 -5
  482. package/templates/src/locales/pt-BR/components/profileCard.json +8 -8
  483. package/templates/src/locales/pt-BR/components/projectCard.json +10 -10
  484. package/templates/src/locales/pt-BR/components/sidebar.json +14 -14
  485. package/templates/src/locales/pt-BR/components/stats.json +8 -8
  486. package/templates/src/locales/pt-BR/components/team.json +14 -14
  487. package/templates/src/locales/pt-BR/errors.json +9 -9
  488. package/templates/src/locales/pt-BR/languageSelector.json +7 -7
  489. package/templates/src/locales/pt-BR/nav.json +6 -6
  490. package/templates/src/locales/pt-BR/pages/crudTemplate.json +25 -25
  491. package/templates/src/locales/pt-BR/pages/dashboardTemplate.json +20 -20
  492. package/templates/src/locales/pt-BR/pages/forgotPassword.json +10 -10
  493. package/templates/src/locales/pt-BR/pages/formTemplate.json +16 -16
  494. package/templates/src/locales/pt-BR/pages/home.json +7 -7
  495. package/templates/src/locales/pt-BR/pages/login.json +15 -15
  496. package/templates/src/locales/pt-BR/pages/loginTemplate.json +9 -9
  497. package/templates/src/locales/pt-BR/pages/resetPassword.json +18 -18
  498. package/templates/src/locales/pt-BR/pages/templates.json +317 -317
  499. package/templates/src/locales/pt-BR/pages/verifyEmail.json +12 -12
  500. package/templates/src/locales/pt-BR/themeToggle.json +6 -6
  501. package/templates/src/pages/AssistantPage.tsx +470 -470
  502. package/templates/src/pages/HomePage.tsx +53 -53
  503. package/templates/src/shared/error-boundary.tsx +150 -150
  504. package/templates/src/shared/error-fallbacks.tsx +222 -222
  505. package/templates/vite.config.js +20 -20
  506. package/templates/vite.config.ts +55 -55
  507. package/dist/ThemeContext-CpqYShLq.cjs +0 -324
  508. package/dist/ThemeContext-Du2nE1PL.js +0 -325
  509. package/dist/ThemeContext-GeEBTJ3q.cjs +0 -1621
  510. package/dist/ThemeContext-JyLK9B1o.js +0 -1622
  511. package/dist/VerifyEmailPage-BiRm7Nh4.cjs +0 -3213
  512. package/dist/VerifyEmailPage-Bvfv8HVQ.js +0 -3214
  513. package/dist/VerifyEmailPage-hdB8JQGv.cjs +0 -3213
  514. package/dist/VerifyEmailPage-vYHbYK3q.js +0 -3214
  515. package/dist/XerticaProvider-CUYJZc32.js +0 -49
  516. package/dist/XerticaProvider-CjQAQPcn.cjs +0 -48
  517. package/dist/XerticaProvider-D5lLumH-.js +0 -49
  518. package/dist/XerticaProvider-qQUDop71.cjs +0 -48
  519. package/dist/XerticaXLogo-BWaag64t.js +0 -252
  520. package/dist/XerticaXLogo-CU-U-GP4.cjs +0 -251
  521. package/dist/index-CkTUgOwX.js +0 -8
  522. package/dist/sidebar-OTO_up7Z.js +0 -801
  523. package/dist/{rich-text-editor-BmsjY03B.js → rich-text-editor-DgF8s7xW.js} +26 -26
  524. package/dist/{rich-text-editor-GS2kpTAK.cjs → rich-text-editor-mWoaSCE4.cjs} +26 -26
@@ -29,7 +29,9 @@ Built on top of `<Card>`. Use it for dashboard stat widgets where a consistent m
29
29
  | `description` | `string` | No | Additional supplementary text below the value |
30
30
  | `trend` | `{ value: number; label?: string }` | No | Trend object. `value` is a number (positive = up, negative = down). `label` overrides `description` text. |
31
31
  | `icon` | `ReactNode` | No | Icon from `lucide-react` |
32
- | `className` | `string` | No | Additional CSS classes |
32
+ | `iconColor` | `string` | No | Tailwind class for the icon text/foreground color (defaults to `text-muted-foreground`) |
33
+ | `iconBg` | `string` | No | Tailwind class for the icon background color (defaults to `bg-muted`) |
34
+ | `className` | `string` | No | Additional CSS classes |
33
35
 
34
36
  ### trend
35
37
 
@@ -59,6 +61,22 @@ import { DollarSign } from 'lucide-react';
59
61
  />;
60
62
  ```
61
63
 
64
+ ### Custom Icon Colors
65
+
66
+ ```tsx
67
+ import { StatsCard } from 'xertica-ui/ui';
68
+ import { Users } from 'lucide-react';
69
+
70
+ <StatsCard
71
+ title="Active Users"
72
+ value="2,350"
73
+ trend={{ value: 8.2, label: 'new this week' }}
74
+ icon={<Users className="size-5" />}
75
+ iconBg="bg-primary/10"
76
+ iconColor="text-primary"
77
+ />;
78
+ ```
79
+
62
80
  ### Negative Trend
63
81
 
64
82
  ```tsx
@@ -108,7 +126,7 @@ import { DollarSign } from 'lucide-react';
108
126
  - `trend.value` is a **numeric percentage** (e.g., `20.1` for +20.1%) — the component displays `Math.abs(value)%` automatically.
109
127
  - Do NOT pre-format the trend value as a string — pass the raw number.
110
128
  - `value` IS pre-formatted as a display string: `"$45,231"`, `"3.6%"`, `"2,350"`.
111
- - Icons render inside a muted rounded background use `size-5` for the icon.
129
+ - Icons render inside a rounded background. By default, background is `bg-muted` and color is `text-muted-foreground`, but they can be customized using `iconBg` and `iconColor` props. Use `size-5` for the icon.
112
130
  - Always use in a 4-column responsive grid for dashboard overviews.
113
131
  - `trend.label` takes precedence over `description` for below-value text.
114
132
 
package/docs/doc-audit.md CHANGED
@@ -1,244 +1,244 @@
1
- # Xertica UI — Auditoria de Documentação
2
-
3
- > **Status (2026-05-21):** ⚠️ **SUPERSEDED** — este relatório data de 2026-05-19 e a maioria dos itens TODO foi resolvida nas auditorias posteriores. Itens marcados ❌ ou listados como "Sem Doc" nas tabelas abaixo **podem já estar concluídos**.
4
- >
5
- > Antes de seguir qualquer recomendação aqui, verifique se a documentação correspondente já existe em `docs/components/`. A inventário real abaixo foi atualizado para refletir o estado em 2026-05-21:
6
- >
7
- > | Categoria | Total | Com Doc | Sem Doc |
8
- > | ----------------------------------------------- | --------------------- | ------------------------------------------ | ------- |
9
- > | Componentes UI (`components/ui/`) | 65 | 65 | 0 |
10
- > | Componentes Assistant (`components/assistant/`) | 5 | 5 | 0 |
11
- > | Componentes Brand (`components/brand/`) | 7 | 7 | 0 |
12
- > | Componentes Layout (`components/layout/`) | 2 | 2 | 0 |
13
- > | Componentes Media (`components/media/`) | 3 | 3 | 0 |
14
- > | Componentes Blocks (`components/blocks/`) | 6 cards + 6 skeletons | card-patterns.md (cobre cards + skeletons) | 0 |
15
- > | Páginas (`components/pages/`) | 8 | pages.md (cobertura agregada) | 0 |
16
- > | Hooks/Contextos | 9 hooks | hooks.md (cobertura agregada) | 0 |
17
- > | Utilitários (`components/figma/`) | 1 | image-with-fallback.md | 0 |
18
- >
19
- > **Lacunas ainda em aberto (verificar antes de fechar):**
20
- >
21
- > - Storybook `.mdx` para os 6 card skeletons (existe `.md`, mas não `.mdx`)
22
- > - `lib/query-client.ts` — singleton não documentado externamente (intencionalmente interno)
23
- >
24
- > **Última auditoria completa:** ver mensagem do agente em 2026-05-21 que cobriu i18n flexibilidade, skeletons, queryKey language-aware, e correções em `hooks.md`, `branding.md`, `card-patterns.md`, `language-selector.md`, `architecture.md`, `getting-started.md`, `state-management.md`, `components.json`.
25
-
26
- ---
27
-
28
- ## Resumo Executivo (histórico, possivelmente desatualizado)
29
-
30
- | Categoria | Total no Código | Com Doc | Sem Doc |
31
- | ----------------------------------------------- | --------------- | --------------------- | ------- |
32
- | Componentes UI (`components/ui/`) | 65 | 65 | 0 |
33
- | Componentes Assistant (`components/assistant/`) | 5 | 2 | **3** |
34
- | Componentes Brand (`components/brand/`) | 7 | 6 | **1** |
35
- | Componentes Layout (`components/layout/`) | 2 | 2 | 0 |
36
- | Componentes Media (`components/media/`) | 3 | 3 | 0 |
37
- | Componentes Blocks (`components/blocks/`) | 6 cards | 1 doc (card-patterns) | 0 |
38
- | Páginas (`components/pages/`) | 8 | 0 | **8** |
39
- | Hooks/Contextos (`components/hooks/`) | 6 hooks | 1 (use-mobile) | **5** |
40
- | Utilitários (`components/figma/`) | 1 | 0 | **1** |
41
-
42
- ---
43
-
44
- ## 1. Componentes SEM Documentação
45
-
46
- ### 1.1 Componentes Assistant — Sem doc própria
47
-
48
- O [`docs/llms.md`](./llms.md) menciona estes três como _"in Storybook"_, mas não há arquivo `.md` em `docs/components/`:
49
-
50
- | Componente | Arquivo | Importação | Status |
51
- | ------------------- | ------------------------------------------ | ---------------------- | ---------- |
52
- | `CodeBlock` | `components/assistant/code-block/` | `xertica-ui/assistant` | ❌ Sem doc |
53
- | `ModernChatInput` | `components/assistant/modern-chat-input/` | `xertica-ui/assistant` | ❌ Sem doc |
54
- | `FormattedDocument` | `components/assistant/formatted-document/` | `xertica-ui/assistant` | ❌ Sem doc |
55
-
56
- **Impacto:** Agentes de IA não conseguem usar esses componentes corretamente sem prop tables e exemplos.
57
-
58
- ---
59
-
60
- ### 1.2 Componente Brand — Sem doc
61
-
62
- | Componente | Arquivo | Status |
63
- | ---------- | ---------------------------- | ------------------------------------------- |
64
- | `Branding` | `components/brand/branding/` | ❌ Sem doc (apenas `.mdx` e `.stories.tsx`) |
65
-
66
- ---
67
-
68
- ### 1.3 Hook `useMapLayers` — Sem doc
69
-
70
- O hook [`useMapLayers`](../components/ui/map-layers/map-layers.tsx) é exportado publicamente via `xertica-ui/ui` mas não tem documentação em `docs/components/`. Está relacionado ao sistema de mapas mas não aparece no catálogo do [`docs/llms.md`](./llms.md).
71
-
72
- ---
73
-
74
- ### 1.4 Utilitário `ImageWithFallback` — Sem doc
75
-
76
- | Componente | Arquivo | Status |
77
- | ------------------- | ---------------------------------------- | ---------- |
78
- | `ImageWithFallback` | `components/figma/ImageWithFallback.tsx` | ❌ Sem doc |
79
-
80
- Exportado publicamente via `xertica-ui` mas sem documentação.
81
-
82
- ---
83
-
84
- ### 1.5 Páginas — Completamente sem documentação
85
-
86
- Nenhuma das 8 páginas-template tem documentação em `docs/`:
87
-
88
- | Página | Arquivo |
89
- | -------------------- | ---------------------------------------- |
90
- | `LoginPage` | `components/pages/login-page/` |
91
- | `ForgotPasswordPage` | `components/pages/forgot-password-page/` |
92
- | `ResetPasswordPage` | `components/pages/reset-password-page/` |
93
- | `VerifyEmailPage` | `components/pages/verify-email-page/` |
94
- | `HomePage` | `components/pages/home-page/` |
95
- | `HomeContent` | `components/pages/home-content/` |
96
- | `TemplatePage` | `components/pages/template-page/` |
97
- | `TemplateContent` | `components/pages/template-content/` |
98
-
99
- **Impacto:** Desenvolvedores e agentes de IA não sabem que essas páginas existem, quais props aceitam, ou como customizá-las. O [`docs/llms.md`](./llms.md) menciona "8 Page Templates" nas estatísticas mas não lista nenhuma delas no catálogo.
100
-
101
- ---
102
-
103
- ### 1.6 Hooks/Contextos — Sem documentação
104
-
105
- O subpath `xertica-ui/hooks` exporta 6 hooks mas apenas `useMobile` tem doc:
106
-
107
- | Hook | Contexto | Status |
108
- | --------------------------- | -------------------- | ------------------------------------------------------------------------------- |
109
- | `useLayout` | `LayoutContext` | ✅ Documentado em [`docs/layout.md`](./layout.md) |
110
- | `useMobile` / `useIsMobile` | `use-mobile` | ✅ Documentado em [`docs/components/use-mobile.md`](./components/use-mobile.md) |
111
- | `useTheme` | `ThemeContext` | ❌ Sem doc |
112
- | `useLanguage` | `LanguageContext` | ❌ Sem doc |
113
- | `useBrandColors` | `BrandColorsContext` | ❌ Sem doc |
114
- | `useAssistente` | `AssistenteContext` | ❌ Sem doc |
115
- | `useApiKey` | `ApiKeyContext` | ❌ Sem doc |
116
-
117
- **Impacto:** Agentes de IA não sabem como acessar o tema atual, idioma, cores da marca ou estado do assistente programaticamente.
118
-
119
- ---
120
-
121
- ## 2. Problemas de Qualidade nos Docs Existentes
122
-
123
- ### 2.1 `docs/architecture.md` — Título incorreto
124
-
125
- O arquivo [`docs/architecture.md`](./architecture.md) tem como título `# Xertica UI — Documentation Audit Report` (linha 1), mas deveria ser `# Xertica UI — Architecture`. Isso confunde agentes de IA que buscam documentação de arquitetura.
126
-
127
- ---
128
-
129
- ### 2.2 `docs/components/assistant-chart.md` — Doc muito rasa
130
-
131
- O doc do [`AssistantChart`](./components/assistant-chart.md) tem apenas 47 linhas e contém uma regra problemática:
132
-
133
- > _"Data Format: Ensure your data objects contain keys that match the `dataKey` set in the internal implementation (currently `month`, `desktop`, and `mobile`)."_
134
-
135
- Isso sugere que o componente só aceita dados com essas chaves específicas, o que é enganoso. Faltam:
136
-
137
- - Explicação de como usar `dataKey` customizado
138
- - Exemplos com dados reais de negócio
139
- - Seção "When to Use / When NOT to Use"
140
-
141
- ---
142
-
143
- ### 2.3 `docs/llms.md` — Estatísticas desatualizadas e catálogo incompleto
144
-
145
- - **Linha 6:** `Total Components: 97` — o número real é maior (inclui páginas, hooks adicionais, `useMapLayers`, etc.)
146
- - **Seção AI Features:** `CodeBlock`, `ModernChatInput`, `FormattedDocument` listados como _"in Storybook"_ sem link de doc — isso instrui agentes a não usá-los quando na verdade são componentes públicos
147
- - **Seção Pages:** não existe no catálogo — as 8 páginas-template são invisíveis para agentes de IA
148
- - **Seção Hooks:** `useTheme`, `useLanguage`, `useBrandColors`, `useAssistente`, `useApiKey` não estão listados
149
-
150
- ---
151
-
152
- ### 2.4 `docs/components/floating-media-wrapper.md` — Doc incompleta
153
-
154
- O arquivo tem apenas 64 linhas e está truncado — a seção "Related Components" (linha 60) não tem conteúdo.
155
-
156
- ---
157
-
158
- ### 2.5 `docs/components/xertica-provider.md` — Seção "AI Rules" incompleta
159
-
160
- O arquivo tem 65 linhas e a seção `## AI Rules` (linha 60) está vazia/truncada.
161
-
162
- ---
163
-
164
- ## 3. Padrões (Patterns) Faltando
165
-
166
- Os 5 padrões existentes cobrem casos básicos, mas faltam padrões para fluxos muito comuns:
167
-
168
- | Padrão Faltando | Descrição |
169
- | ---------------------------- | -------------------------------------------------------------------------------- |
170
- | **Wizard / Multi-step Form** | Formulário com `Stepper` + validação por etapa + `useStepper` |
171
- | **Detail Page** | Página de detalhe de registro com `PageHeader` + back button + seções com `Card` |
172
- | **Settings Page** | Página de configurações com `Tabs` + seções de formulário + `Switch` |
173
- | **Empty + Loading States** | Padrão completo de `Skeleton` → `Empty` → dados com `Table` |
174
- | **File Upload Form** | Formulário com `FileUpload` integrado ao `react-hook-form` |
175
-
176
- ---
177
-
178
- ## 4. Docs Gerais — Pontos de Melhoria
179
-
180
- ### 4.1 `docs/getting-started.md` — Falta seção de troubleshooting
181
-
182
- Não há seção de problemas comuns (ex: componentes sem estilo = CSS não importado, erros de TypeScript com subpath imports, etc.).
183
-
184
- ### 4.2 `docs/installation.md` — Falta menção ao `moduleResolution`
185
-
186
- O arquivo [`docs/architecture.md`](./architecture.md) menciona que TypeScript precisa de `"moduleResolution": "bundler"` para subpath exports, mas [`docs/installation.md`](./installation.md) não menciona isso — é um erro de configuração muito comum.
187
-
188
- ### 4.3 `docs/ai-usage.md` — Falta regra sobre páginas-template
189
-
190
- Não há instrução para agentes de IA sobre quando usar as páginas-template (`LoginPage`, `TemplatePage`, etc.) vs. compor do zero.
191
-
192
- ---
193
-
194
- ## 5. Priorização das Lacunas
195
-
196
- ### 🔴 Alta Prioridade (impacto direto em agentes de IA e desenvolvedores)
197
-
198
- 1. **Criar `docs/components/code-block.md`** — componente usado internamente e externamente
199
- 2. **Criar `docs/components/modern-chat-input.md`** — componente de input do assistente
200
- 3. **Criar `docs/components/formatted-document.md`** — componente de documento do assistente
201
- 4. **Criar `docs/components/pages.md`** (ou docs individuais) — 8 páginas-template completamente invisíveis
202
- 5. **Criar `docs/components/hooks.md`** — documentar `useTheme`, `useLanguage`, `useBrandColors`, `useAssistente`, `useApiKey`
203
- 6. **Atualizar `docs/llms.md`** — corrigir estatísticas, adicionar páginas e hooks ao catálogo, adicionar links para docs dos componentes assistant
204
-
205
- ### 🟡 Média Prioridade (melhoria de qualidade)
206
-
207
- 7. **Corrigir título de `docs/architecture.md`**
208
- 8. **Expandir `docs/components/assistant-chart.md`** — remover restrição enganosa de dataKey
209
- 9. **Completar `docs/components/floating-media-wrapper.md`** — seção "Related Components"
210
- 10. **Completar `docs/components/xertica-provider.md`** — seção "AI Rules"
211
- 11. **Criar `docs/components/map-layers.md`** — documentar `useMapLayers`
212
- 12. **Adicionar `"moduleResolution": "bundler"` em `docs/installation.md`**
213
-
214
- ### 🟢 Baixa Prioridade (melhorias incrementais)
215
-
216
- 13. **Criar padrão `docs/patterns/wizard.md`** — multi-step form com Stepper
217
- 14. **Criar padrão `docs/patterns/detail-page.md`** — página de detalhe
218
- 15. **Criar padrão `docs/patterns/settings.md`** — página de configurações
219
- 16. **Adicionar seção de troubleshooting em `docs/getting-started.md`**
220
- 17. **Criar `docs/components/image-with-fallback.md`** — utilitário de imagem
221
- 18. **Criar `docs/components/branding.md`** — componente de branding
222
-
223
- ---
224
-
225
- ## 6. Checklist de Ações
226
-
227
- - [ ] `docs/components/code-block.md` — criar
228
- - [ ] `docs/components/modern-chat-input.md` — criar
229
- - [ ] `docs/components/formatted-document.md` — criar
230
- - [ ] `docs/components/pages.md` — criar (ou 8 docs individuais)
231
- - [ ] `docs/components/hooks.md` — criar (useTheme, useLanguage, useBrandColors, useAssistente, useApiKey)
232
- - [ ] `docs/llms.md` — atualizar estatísticas + adicionar páginas + hooks + links dos assistant components
233
- - [ ] `docs/architecture.md` — corrigir título (linha 1)
234
- - [ ] `docs/components/assistant-chart.md` — expandir e corrigir regra de dataKey
235
- - [ ] `docs/components/floating-media-wrapper.md` — completar seção "Related Components"
236
- - [ ] `docs/components/xertica-provider.md` — completar seção "AI Rules"
237
- - [ ] `docs/components/map-layers.md` — criar
238
- - [ ] `docs/installation.md` — adicionar requisito de `moduleResolution`
239
- - [ ] `docs/patterns/wizard.md` — criar
240
- - [ ] `docs/patterns/detail-page.md` — criar
241
- - [ ] `docs/patterns/settings.md` — criar
242
- - [ ] `docs/getting-started.md` — adicionar seção de troubleshooting
243
- - [ ] `docs/components/image-with-fallback.md` — criar
244
- - [ ] `docs/components/branding.md` — criar
1
+ # Xertica UI — Auditoria de Documentação
2
+
3
+ > **Status (2026-05-21):** ⚠️ **SUPERSEDED** — este relatório data de 2026-05-19 e a maioria dos itens TODO foi resolvida nas auditorias posteriores. Itens marcados ❌ ou listados como "Sem Doc" nas tabelas abaixo **podem já estar concluídos**.
4
+ >
5
+ > Antes de seguir qualquer recomendação aqui, verifique se a documentação correspondente já existe em `docs/components/`. A inventário real abaixo foi atualizado para refletir o estado em 2026-05-21:
6
+ >
7
+ > | Categoria | Total | Com Doc | Sem Doc |
8
+ > | ----------------------------------------------- | --------------------- | ------------------------------------------ | ------- |
9
+ > | Componentes UI (`components/ui/`) | 65 | 65 | 0 |
10
+ > | Componentes Assistant (`components/assistant/`) | 5 | 5 | 0 |
11
+ > | Componentes Brand (`components/brand/`) | 7 | 7 | 0 |
12
+ > | Componentes Layout (`components/layout/`) | 2 | 2 | 0 |
13
+ > | Componentes Media (`components/media/`) | 3 | 3 | 0 |
14
+ > | Componentes Blocks (`components/blocks/`) | 6 cards + 6 skeletons | card-patterns.md (cobre cards + skeletons) | 0 |
15
+ > | Páginas (`components/pages/`) | 8 | pages.md (cobertura agregada) | 0 |
16
+ > | Hooks/Contextos | 9 hooks | hooks.md (cobertura agregada) | 0 |
17
+ > | Utilitários (`components/figma/`) | 1 | image-with-fallback.md | 0 |
18
+ >
19
+ > **Lacunas ainda em aberto (verificar antes de fechar):**
20
+ >
21
+ > - Storybook `.mdx` para os 6 card skeletons (existe `.md`, mas não `.mdx`)
22
+ > - `lib/query-client.ts` — singleton não documentado externamente (intencionalmente interno)
23
+ >
24
+ > **Última auditoria completa:** ver mensagem do agente em 2026-05-21 que cobriu i18n flexibilidade, skeletons, queryKey language-aware, e correções em `hooks.md`, `branding.md`, `card-patterns.md`, `language-selector.md`, `architecture.md`, `getting-started.md`, `state-management.md`, `components.json`.
25
+
26
+ ---
27
+
28
+ ## Resumo Executivo (histórico, possivelmente desatualizado)
29
+
30
+ | Categoria | Total no Código | Com Doc | Sem Doc |
31
+ | ----------------------------------------------- | --------------- | --------------------- | ------- |
32
+ | Componentes UI (`components/ui/`) | 65 | 65 | 0 |
33
+ | Componentes Assistant (`components/assistant/`) | 5 | 2 | **3** |
34
+ | Componentes Brand (`components/brand/`) | 7 | 6 | **1** |
35
+ | Componentes Layout (`components/layout/`) | 2 | 2 | 0 |
36
+ | Componentes Media (`components/media/`) | 3 | 3 | 0 |
37
+ | Componentes Blocks (`components/blocks/`) | 6 cards | 1 doc (card-patterns) | 0 |
38
+ | Páginas (`components/pages/`) | 8 | 0 | **8** |
39
+ | Hooks/Contextos (`components/hooks/`) | 6 hooks | 1 (use-mobile) | **5** |
40
+ | Utilitários (`components/figma/`) | 1 | 0 | **1** |
41
+
42
+ ---
43
+
44
+ ## 1. Componentes SEM Documentação
45
+
46
+ ### 1.1 Componentes Assistant — Sem doc própria
47
+
48
+ O [`docs/llms.md`](./llms.md) menciona estes três como _"in Storybook"_, mas não há arquivo `.md` em `docs/components/`:
49
+
50
+ | Componente | Arquivo | Importação | Status |
51
+ | ------------------- | ------------------------------------------ | ---------------------- | ---------- |
52
+ | `CodeBlock` | `components/assistant/code-block/` | `xertica-ui/assistant` | ❌ Sem doc |
53
+ | `ModernChatInput` | `components/assistant/modern-chat-input/` | `xertica-ui/assistant` | ❌ Sem doc |
54
+ | `FormattedDocument` | `components/assistant/formatted-document/` | `xertica-ui/assistant` | ❌ Sem doc |
55
+
56
+ **Impacto:** Agentes de IA não conseguem usar esses componentes corretamente sem prop tables e exemplos.
57
+
58
+ ---
59
+
60
+ ### 1.2 Componente Brand — Sem doc
61
+
62
+ | Componente | Arquivo | Status |
63
+ | ---------- | ---------------------------- | ------------------------------------------- |
64
+ | `Branding` | `components/brand/branding/` | ❌ Sem doc (apenas `.mdx` e `.stories.tsx`) |
65
+
66
+ ---
67
+
68
+ ### 1.3 Hook `useMapLayers` — Sem doc
69
+
70
+ O hook [`useMapLayers`](../components/ui/map-layers/map-layers.tsx) é exportado publicamente via `xertica-ui/ui` mas não tem documentação em `docs/components/`. Está relacionado ao sistema de mapas mas não aparece no catálogo do [`docs/llms.md`](./llms.md).
71
+
72
+ ---
73
+
74
+ ### 1.4 Utilitário `ImageWithFallback` — Sem doc
75
+
76
+ | Componente | Arquivo | Status |
77
+ | ------------------- | ---------------------------------------- | ---------- |
78
+ | `ImageWithFallback` | `components/figma/ImageWithFallback.tsx` | ❌ Sem doc |
79
+
80
+ Exportado publicamente via `xertica-ui` mas sem documentação.
81
+
82
+ ---
83
+
84
+ ### 1.5 Páginas — Completamente sem documentação
85
+
86
+ Nenhuma das 8 páginas-template tem documentação em `docs/`:
87
+
88
+ | Página | Arquivo |
89
+ | -------------------- | ---------------------------------------- |
90
+ | `LoginPage` | `components/pages/login-page/` |
91
+ | `ForgotPasswordPage` | `components/pages/forgot-password-page/` |
92
+ | `ResetPasswordPage` | `components/pages/reset-password-page/` |
93
+ | `VerifyEmailPage` | `components/pages/verify-email-page/` |
94
+ | `HomePage` | `components/pages/home-page/` |
95
+ | `HomeContent` | `components/pages/home-content/` |
96
+ | `TemplatePage` | `components/pages/template-page/` |
97
+ | `TemplateContent` | `components/pages/template-content/` |
98
+
99
+ **Impacto:** Desenvolvedores e agentes de IA não sabem que essas páginas existem, quais props aceitam, ou como customizá-las. O [`docs/llms.md`](./llms.md) menciona "8 Page Templates" nas estatísticas mas não lista nenhuma delas no catálogo.
100
+
101
+ ---
102
+
103
+ ### 1.6 Hooks/Contextos — Sem documentação
104
+
105
+ O subpath `xertica-ui/hooks` exporta 6 hooks mas apenas `useMobile` tem doc:
106
+
107
+ | Hook | Contexto | Status |
108
+ | --------------------------- | -------------------- | ------------------------------------------------------------------------------- |
109
+ | `useLayout` | `LayoutContext` | ✅ Documentado em [`docs/layout.md`](./layout.md) |
110
+ | `useMobile` / `useIsMobile` | `use-mobile` | ✅ Documentado em [`docs/components/use-mobile.md`](./components/use-mobile.md) |
111
+ | `useTheme` | `ThemeContext` | ❌ Sem doc |
112
+ | `useLanguage` | `LanguageContext` | ❌ Sem doc |
113
+ | `useBrandColors` | `BrandColorsContext` | ❌ Sem doc |
114
+ | `useAssistente` | `AssistenteContext` | ❌ Sem doc |
115
+ | `useApiKey` | `ApiKeyContext` | ❌ Sem doc |
116
+
117
+ **Impacto:** Agentes de IA não sabem como acessar o tema atual, idioma, cores da marca ou estado do assistente programaticamente.
118
+
119
+ ---
120
+
121
+ ## 2. Problemas de Qualidade nos Docs Existentes
122
+
123
+ ### 2.1 `docs/architecture.md` — Título incorreto
124
+
125
+ O arquivo [`docs/architecture.md`](./architecture.md) tem como título `# Xertica UI — Documentation Audit Report` (linha 1), mas deveria ser `# Xertica UI — Architecture`. Isso confunde agentes de IA que buscam documentação de arquitetura.
126
+
127
+ ---
128
+
129
+ ### 2.2 `docs/components/assistant-chart.md` — Doc muito rasa
130
+
131
+ O doc do [`AssistantChart`](./components/assistant-chart.md) tem apenas 47 linhas e contém uma regra problemática:
132
+
133
+ > _"Data Format: Ensure your data objects contain keys that match the `dataKey` set in the internal implementation (currently `month`, `desktop`, and `mobile`)."_
134
+
135
+ Isso sugere que o componente só aceita dados com essas chaves específicas, o que é enganoso. Faltam:
136
+
137
+ - Explicação de como usar `dataKey` customizado
138
+ - Exemplos com dados reais de negócio
139
+ - Seção "When to Use / When NOT to Use"
140
+
141
+ ---
142
+
143
+ ### 2.3 `docs/llms.md` — Estatísticas desatualizadas e catálogo incompleto
144
+
145
+ - **Linha 6:** `Total Components: 97` — o número real é maior (inclui páginas, hooks adicionais, `useMapLayers`, etc.)
146
+ - **Seção AI Features:** `CodeBlock`, `ModernChatInput`, `FormattedDocument` listados como _"in Storybook"_ sem link de doc — isso instrui agentes a não usá-los quando na verdade são componentes públicos
147
+ - **Seção Pages:** não existe no catálogo — as 8 páginas-template são invisíveis para agentes de IA
148
+ - **Seção Hooks:** `useTheme`, `useLanguage`, `useBrandColors`, `useAssistente`, `useApiKey` não estão listados
149
+
150
+ ---
151
+
152
+ ### 2.4 `docs/components/floating-media-wrapper.md` — Doc incompleta
153
+
154
+ O arquivo tem apenas 64 linhas e está truncado — a seção "Related Components" (linha 60) não tem conteúdo.
155
+
156
+ ---
157
+
158
+ ### 2.5 `docs/components/xertica-provider.md` — Seção "AI Rules" incompleta
159
+
160
+ O arquivo tem 65 linhas e a seção `## AI Rules` (linha 60) está vazia/truncada.
161
+
162
+ ---
163
+
164
+ ## 3. Padrões (Patterns) Faltando
165
+
166
+ Os 5 padrões existentes cobrem casos básicos, mas faltam padrões para fluxos muito comuns:
167
+
168
+ | Padrão Faltando | Descrição |
169
+ | ---------------------------- | -------------------------------------------------------------------------------- |
170
+ | **Wizard / Multi-step Form** | Formulário com `Stepper` + validação por etapa + `useStepper` |
171
+ | **Detail Page** | Página de detalhe de registro com `PageHeader` + back button + seções com `Card` |
172
+ | **Settings Page** | Página de configurações com `Tabs` + seções de formulário + `Switch` |
173
+ | **Empty + Loading States** | Padrão completo de `Skeleton` → `Empty` → dados com `Table` |
174
+ | **File Upload Form** | Formulário com `FileUpload` integrado ao `react-hook-form` |
175
+
176
+ ---
177
+
178
+ ## 4. Docs Gerais — Pontos de Melhoria
179
+
180
+ ### 4.1 `docs/getting-started.md` — Falta seção de troubleshooting
181
+
182
+ Não há seção de problemas comuns (ex: componentes sem estilo = CSS não importado, erros de TypeScript com subpath imports, etc.).
183
+
184
+ ### 4.2 `docs/installation.md` — Falta menção ao `moduleResolution`
185
+
186
+ O arquivo [`docs/architecture.md`](./architecture.md) menciona que TypeScript precisa de `"moduleResolution": "bundler"` para subpath exports, mas [`docs/installation.md`](./installation.md) não menciona isso — é um erro de configuração muito comum.
187
+
188
+ ### 4.3 `docs/ai-usage.md` — Falta regra sobre páginas-template
189
+
190
+ Não há instrução para agentes de IA sobre quando usar as páginas-template (`LoginPage`, `TemplatePage`, etc.) vs. compor do zero.
191
+
192
+ ---
193
+
194
+ ## 5. Priorização das Lacunas
195
+
196
+ ### 🔴 Alta Prioridade (impacto direto em agentes de IA e desenvolvedores)
197
+
198
+ 1. **Criar `docs/components/code-block.md`** — componente usado internamente e externamente
199
+ 2. **Criar `docs/components/modern-chat-input.md`** — componente de input do assistente
200
+ 3. **Criar `docs/components/formatted-document.md`** — componente de documento do assistente
201
+ 4. **Criar `docs/components/pages.md`** (ou docs individuais) — 8 páginas-template completamente invisíveis
202
+ 5. **Criar `docs/components/hooks.md`** — documentar `useTheme`, `useLanguage`, `useBrandColors`, `useAssistente`, `useApiKey`
203
+ 6. **Atualizar `docs/llms.md`** — corrigir estatísticas, adicionar páginas e hooks ao catálogo, adicionar links para docs dos componentes assistant
204
+
205
+ ### 🟡 Média Prioridade (melhoria de qualidade)
206
+
207
+ 7. **Corrigir título de `docs/architecture.md`**
208
+ 8. **Expandir `docs/components/assistant-chart.md`** — remover restrição enganosa de dataKey
209
+ 9. **Completar `docs/components/floating-media-wrapper.md`** — seção "Related Components"
210
+ 10. **Completar `docs/components/xertica-provider.md`** — seção "AI Rules"
211
+ 11. **Criar `docs/components/map-layers.md`** — documentar `useMapLayers`
212
+ 12. **Adicionar `"moduleResolution": "bundler"` em `docs/installation.md`**
213
+
214
+ ### 🟢 Baixa Prioridade (melhorias incrementais)
215
+
216
+ 13. **Criar padrão `docs/patterns/wizard.md`** — multi-step form com Stepper
217
+ 14. **Criar padrão `docs/patterns/detail-page.md`** — página de detalhe
218
+ 15. **Criar padrão `docs/patterns/settings.md`** — página de configurações
219
+ 16. **Adicionar seção de troubleshooting em `docs/getting-started.md`**
220
+ 17. **Criar `docs/components/image-with-fallback.md`** — utilitário de imagem
221
+ 18. **Criar `docs/components/branding.md`** — componente de branding
222
+
223
+ ---
224
+
225
+ ## 6. Checklist de Ações
226
+
227
+ - [ ] `docs/components/code-block.md` — criar
228
+ - [ ] `docs/components/modern-chat-input.md` — criar
229
+ - [ ] `docs/components/formatted-document.md` — criar
230
+ - [ ] `docs/components/pages.md` — criar (ou 8 docs individuais)
231
+ - [ ] `docs/components/hooks.md` — criar (useTheme, useLanguage, useBrandColors, useAssistente, useApiKey)
232
+ - [ ] `docs/llms.md` — atualizar estatísticas + adicionar páginas + hooks + links dos assistant components
233
+ - [ ] `docs/architecture.md` — corrigir título (linha 1)
234
+ - [ ] `docs/components/assistant-chart.md` — expandir e corrigir regra de dataKey
235
+ - [ ] `docs/components/floating-media-wrapper.md` — completar seção "Related Components"
236
+ - [ ] `docs/components/xertica-provider.md` — completar seção "AI Rules"
237
+ - [ ] `docs/components/map-layers.md` — criar
238
+ - [ ] `docs/installation.md` — adicionar requisito de `moduleResolution`
239
+ - [ ] `docs/patterns/wizard.md` — criar
240
+ - [ ] `docs/patterns/detail-page.md` — criar
241
+ - [ ] `docs/patterns/settings.md` — criar
242
+ - [ ] `docs/getting-started.md` — adicionar seção de troubleshooting
243
+ - [ ] `docs/components/image-with-fallback.md` — criar
244
+ - [ ] `docs/components/branding.md` — criar