xertica-ui 2.1.0 → 2.1.2

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 (348) hide show
  1. package/CHANGELOG.md +324 -302
  2. package/README.md +87 -87
  3. package/assets/xertica-logo.svg +37 -37
  4. package/assets/xertica-x-logo.svg +20 -20
  5. package/bin/cli.ts +473 -473
  6. package/components/assistant/index.ts +6 -6
  7. package/components/assistant/markdown-message/MarkdownMessage.tsx +27 -1
  8. package/components/assistant/xertica-assistant/xertica-assistant.tsx +4 -4
  9. package/components/blocks/card-patterns/ActivityCard.tsx +72 -72
  10. package/components/blocks/card-patterns/FeatureCard.tsx +100 -100
  11. package/components/blocks/card-patterns/NotificationCard.tsx +127 -127
  12. package/components/blocks/card-patterns/ProfileCard.tsx +84 -84
  13. package/components/blocks/card-patterns/ProjectCard.tsx +89 -89
  14. package/components/blocks/card-patterns/QuickActionCard.tsx +62 -62
  15. package/components/blocks/card-patterns/card-patterns.stories.tsx +445 -445
  16. package/components/blocks/card-patterns/index.ts +17 -17
  17. package/components/blocks/index.ts +1 -1
  18. package/components/brand/index.ts +6 -6
  19. package/components/brand/xertica-provider/XerticaProvider.tsx +48 -48
  20. package/components/brand/xertica-provider/xertica-provider.mdx +61 -61
  21. package/components/brand/xertica-provider/xertica-provider.test.tsx +52 -52
  22. package/components/examples/MapExamples.tsx +282 -282
  23. package/components/examples/SimpleFilterableMap.tsx +191 -191
  24. package/components/examples/index.ts +51 -51
  25. package/components/figma/ImageWithFallback.tsx +27 -27
  26. package/components/hooks/index.ts +7 -7
  27. package/components/index.ts +5 -5
  28. package/components/layout/header/header.test.tsx +8 -8
  29. package/components/layout/header/header.tsx +4 -4
  30. package/components/layout/index.ts +2 -2
  31. package/components/layout/sidebar/sidebar.mdx +1 -1
  32. package/components/layout/sidebar/sidebar.stories.tsx +6 -6
  33. package/components/layout/sidebar/sidebar.test.tsx +11 -11
  34. package/components/layout/sidebar/sidebar.tsx +34 -34
  35. package/components/media/FloatingMediaWrapper.tsx +11 -11
  36. package/components/media/audio-player/AudioPlayer.tsx +22 -22
  37. package/components/media/index.ts +3 -3
  38. package/components/pages/home-content/HomeContent.tsx +7 -7
  39. package/components/pages/home-content/home-content.mdx +62 -62
  40. package/components/pages/home-page/HomePage.stories.tsx +39 -39
  41. package/components/pages/home-page/HomePage.tsx +12 -12
  42. package/components/pages/home-page/home-page.mdx +53 -53
  43. package/components/pages/index.ts +8 -8
  44. package/components/pages/template-content/TemplateContent.tsx +10 -10
  45. package/components/pages/template-content/template-content.mdx +61 -61
  46. package/components/pages/template-page/TemplatePage.stories.tsx +39 -39
  47. package/components/pages/template-page/TemplatePage.tsx +11 -11
  48. package/components/pages/template-page/template-page.mdx +53 -53
  49. package/components/public-api-smoke.test.tsx +52 -52
  50. package/components/shared/assistant-utils.ts +43 -43
  51. package/components/ui/accordion/accordion.mdx +8 -8
  52. package/components/ui/accordion/accordion.stories.tsx +53 -53
  53. package/components/ui/alert/alert.mdx +8 -8
  54. package/components/ui/alert-dialog/alert-dialog.mdx +8 -8
  55. package/components/ui/aspect-ratio/aspect-ratio.mdx +8 -8
  56. package/components/ui/assistant-chart/assistant-chart.mdx +8 -8
  57. package/components/ui/avatar/avatar.mdx +8 -8
  58. package/components/ui/badge/badge.mdx +8 -8
  59. package/components/ui/badge/badge.tsx +9 -9
  60. package/components/ui/breadcrumb/breadcrumb.mdx +8 -8
  61. package/components/ui/button/button.mdx +8 -8
  62. package/components/ui/calendar/calendar.mdx +8 -8
  63. package/components/ui/calendar/calendar.tsx +258 -258
  64. package/components/ui/card/card.mdx +8 -8
  65. package/components/ui/card/card.stories.tsx +245 -245
  66. package/components/ui/carousel/carousel.mdx +8 -8
  67. package/components/ui/chart/chart.mdx +8 -8
  68. package/components/ui/chart/chart.stories.tsx +277 -277
  69. package/components/ui/chart/chart.test.tsx +154 -154
  70. package/components/ui/chart/chart.tsx +1494 -1494
  71. package/components/ui/checkbox/checkbox.mdx +8 -8
  72. package/components/ui/checkbox/checkbox.stories.tsx +20 -20
  73. package/components/ui/collapsible/collapsible.mdx +8 -8
  74. package/components/ui/command/command.mdx +8 -8
  75. package/components/ui/context-menu/context-menu.mdx +8 -8
  76. package/components/ui/dialog/dialog.mdx +8 -8
  77. package/components/ui/drawer/drawer.mdx +8 -8
  78. package/components/ui/dropdown-menu/dropdown-menu.mdx +8 -8
  79. package/components/ui/empty/empty.mdx +8 -8
  80. package/components/ui/file-upload/file-upload.mdx +8 -8
  81. package/components/ui/google-maps-loader/google-maps-loader.tsx +2 -2
  82. package/components/ui/hover-card/hover-card.mdx +8 -8
  83. package/components/ui/index.ts +109 -109
  84. package/components/ui/input/input.mdx +8 -8
  85. package/components/ui/input-otp/input-otp.mdx +8 -8
  86. package/components/ui/input-otp/input-otp.stories.tsx +6 -6
  87. package/components/ui/label/label.mdx +8 -8
  88. package/components/ui/map/map.mdx +8 -8
  89. package/components/ui/map/map.stories.tsx +51 -51
  90. package/components/ui/map/map.tsx +2 -2
  91. package/components/ui/menubar/menubar.mdx +8 -8
  92. package/components/ui/navigation-menu/navigation-menu.mdx +8 -8
  93. package/components/ui/notification-badge/notification-badge.mdx +8 -8
  94. package/components/ui/pagination/pagination.mdx +8 -8
  95. package/components/ui/pagination/pagination.stories.tsx +10 -10
  96. package/components/ui/popover/popover.mdx +8 -8
  97. package/components/ui/progress/progress.mdx +8 -8
  98. package/components/ui/progress/progress.tsx +68 -68
  99. package/components/ui/radio-group/radio-group.mdx +8 -8
  100. package/components/ui/rating/rating.mdx +8 -8
  101. package/components/ui/resizable/resizable.mdx +8 -8
  102. package/components/ui/rich-text-editor/rich-text-editor.tsx +2 -2
  103. package/components/ui/route-map/route-map.mdx +8 -8
  104. package/components/ui/route-map/route-map.stories.tsx +54 -48
  105. package/components/ui/route-map/route-map.tsx +2 -2
  106. package/components/ui/scroll-area/scroll-area.mdx +8 -8
  107. package/components/ui/search/search.mdx +8 -8
  108. package/components/ui/select/select.mdx +8 -8
  109. package/components/ui/select/select.stories.tsx +9 -9
  110. package/components/ui/separator/separator.mdx +8 -8
  111. package/components/ui/sheet/sheet.mdx +8 -8
  112. package/components/ui/sheet/sheet.stories.tsx +95 -94
  113. package/components/ui/sheet/sheet.tsx +11 -0
  114. package/components/ui/simple-map/simple-map.mdx +8 -8
  115. package/components/ui/simple-map/simple-map.stories.tsx +48 -43
  116. package/components/ui/skeleton/skeleton.mdx +8 -8
  117. package/components/ui/slider/slider.mdx +8 -8
  118. package/components/ui/sonner/sonner.mdx +8 -8
  119. package/components/ui/stats-card/stats-card.mdx +8 -8
  120. package/components/ui/stepper/stepper.mdx +8 -8
  121. package/components/ui/switch/switch.mdx +8 -8
  122. package/components/ui/switch/switch.stories.tsx +20 -20
  123. package/components/ui/table/table.mdx +8 -8
  124. package/components/ui/tabs/tabs.mdx +8 -8
  125. package/components/ui/tabs/tabs.stories.tsx +26 -26
  126. package/components/ui/textarea/textarea.mdx +8 -8
  127. package/components/ui/timeline/timeline.mdx +8 -8
  128. package/components/ui/toggle/toggle.mdx +8 -8
  129. package/components/ui/toggle-group/toggle-group.mdx +8 -8
  130. package/components/ui/tooltip/tooltip.mdx +8 -8
  131. package/components/ui/tree-view/tree-view.mdx +8 -8
  132. package/components.json +1512 -1512
  133. package/contexts/ApiKeyContext.tsx +72 -72
  134. package/contexts/BrandColorsContext.tsx +26 -26
  135. package/contexts/LanguageContext.tsx +13 -13
  136. package/contexts/LayoutContext.test.tsx +11 -11
  137. package/contexts/LayoutContext.tsx +29 -29
  138. package/contexts/ThemeContext.tsx +26 -26
  139. package/contexts/theme-data.ts +4 -4
  140. package/dist/{AssistantChart-DoZCyS5r.cjs → AssistantChart-9w31gdAb.cjs} +4 -4
  141. package/dist/{use-mobile-CG2-SdXV.cjs → AssistantChart-BAx9VQvb.cjs} +209 -1070
  142. package/dist/{use-mobile-CYuAuGDl.js → AssistantChart-CVko2A1W.js} +171 -1025
  143. package/dist/{AssistantChart-C_hwFRRr.js → AssistantChart-CVzmmhx4.js} +4 -4
  144. package/dist/{ThemeContext-C2EwAPDt.js → ThemeContext-BbBNoFTG.js} +2 -2
  145. package/dist/{ThemeContext-vTjumZeM.cjs → ThemeContext-Cmr8Ex8H.cjs} +2 -2
  146. package/dist/VerifyEmailPage-BE-L9mB7.js +2828 -0
  147. package/dist/VerifyEmailPage-Bae2cBXT.cjs +2827 -0
  148. package/dist/VerifyEmailPage-CR7kb5df.cjs +2827 -0
  149. package/dist/VerifyEmailPage-CbgjOF0v.js +2828 -0
  150. package/dist/{VerifyEmailPage-DvMLZgFt.js → VerifyEmailPage-CdYPSJoO.js} +1 -1
  151. package/dist/{VerifyEmailPage-CYXtbKi3.cjs → VerifyEmailPage-DMBh4NM9.cjs} +1 -1
  152. package/dist/{XerticaProvider-CEoWMTxu.js → XerticaProvider-BITjgC5p.js} +2 -2
  153. package/dist/{XerticaProvider-CllrbMEJ.cjs → XerticaProvider-By8q3Roe.cjs} +2 -2
  154. package/dist/{alert-dialog-s-vmNkJ_.js → alert-dialog-iDe5VE5o.js} +3 -3
  155. package/dist/{alert-dialog-DSKByiKZ.cjs → alert-dialog-yckpaOpy.cjs} +3 -3
  156. package/dist/assistant.cjs.js +1 -1
  157. package/dist/assistant.es.js +1 -1
  158. package/dist/brand.cjs.js +1 -1
  159. package/dist/brand.es.js +1 -1
  160. package/dist/cli.js +1 -1
  161. package/dist/components/ui/index.d.ts +1 -1
  162. package/dist/components/ui/sheet/sheet.d.ts +2 -1
  163. package/dist/{google-maps-loader-Y-QkD-Li.cjs → google-maps-loader-BqsYL48U.cjs} +0 -5
  164. package/dist/{google-maps-loader-CTYySAun.js → google-maps-loader-t2IlYBzw.js} +0 -4
  165. package/dist/hooks.cjs.js +1 -1
  166. package/dist/hooks.es.js +1 -1
  167. package/dist/index-CkTUgOwX.js +8 -0
  168. package/dist/{index-COtD8bRW.cjs → index-D3RLKRAs.cjs} +1 -1
  169. package/dist/index.cjs.js +7 -6
  170. package/dist/index.es.js +34 -33
  171. package/dist/index.umd.js +454 -1027
  172. package/dist/pages.cjs.js +1 -1
  173. package/dist/pages.es.js +1 -1
  174. package/dist/ui.cjs.js +4 -3
  175. package/dist/ui.es.js +31 -30
  176. package/dist/{CodeBlock-BgfYL_rD.cjs → xertica-assistant-B1IaHXnB.cjs} +63 -263
  177. package/dist/{CodeBlock-DnYNI8rQ.js → xertica-assistant-DPsESB6t.js} +19 -219
  178. package/dist/{CodeBlock-BlcqlA9M.cjs → xertica-assistant-Qp3ydksa.cjs} +51 -263
  179. package/dist/{CodeBlock-CIySIuYr.js → xertica-assistant-gnCJdcZY.js} +7 -219
  180. package/dist/xertica-ui.css +2 -2
  181. package/docs/components/assistant.md +1 -0
  182. package/docs/components/calendar.md +154 -154
  183. package/docs/components/card-patterns.md +337 -337
  184. package/docs/components/card.md +235 -235
  185. package/docs/components/map.md +84 -84
  186. package/docs/components/markdown-message.md +1 -0
  187. package/docs/components/xertica-provider.md +24 -24
  188. package/docs/decision-tree.md +287 -287
  189. package/docs/llms.md +2 -2
  190. package/guidelines/Guidelines.md +250 -250
  191. package/hooks/useTheme.ts +3 -3
  192. package/imports/Podcast.tsx +388 -388
  193. package/imports/XerticaAi.tsx +45 -45
  194. package/imports/XerticaX.tsx +19 -19
  195. package/imports/svg-aueiaqngck.ts +11 -11
  196. package/imports/svg-v9krss1ozd.ts +16 -16
  197. package/imports/svg-vhrdofe3qe.ts +5 -5
  198. package/llms-compact.txt +327 -327
  199. package/llms-full.txt +1 -0
  200. package/llms.txt +160 -160
  201. package/package.json +203 -203
  202. package/styles/globals.css +13 -15
  203. package/styles/xertica/app-overrides/chat.css +61 -61
  204. package/styles/xertica/app-overrides/scrollbar.css +33 -33
  205. package/styles/xertica/integrations/google-maps.css +76 -76
  206. package/styles/xertica/integrations/sonner.css +73 -73
  207. package/styles/xertica/tokens.css +12 -12
  208. package/templates/CLAUDE.md +172 -172
  209. package/templates/guidelines/Guidelines.md +313 -313
  210. package/templates/package.json +3 -3
  211. package/templates/src/app/App.tsx +21 -23
  212. package/templates/src/app/components/AppLayout.tsx +44 -40
  213. package/templates/src/app/components/AuthGuard.tsx +85 -76
  214. package/templates/src/features/auth/index.ts +4 -4
  215. package/templates/src/features/auth/ui/AuthPageShell.tsx +34 -34
  216. package/templates/src/features/auth/ui/ForgotPasswordContent.tsx +70 -70
  217. package/templates/src/features/auth/ui/LoginContent.tsx +90 -90
  218. package/templates/src/features/auth/ui/ResetPasswordContent.tsx +151 -151
  219. package/templates/src/features/auth/ui/SocialLoginButtons.tsx +59 -59
  220. package/templates/src/features/auth/ui/VerifyEmailContent.tsx +82 -82
  221. package/templates/src/features/home/index.ts +1 -1
  222. package/templates/src/features/home/ui/HomeContent.tsx +100 -100
  223. package/templates/src/features/template/index.ts +5 -5
  224. package/templates/src/features/template/ui/CrudTemplate.tsx +3 -3
  225. package/templates/src/features/template/ui/DashboardTemplate.tsx +3 -3
  226. package/templates/src/features/template/ui/FormTemplate.tsx +120 -120
  227. package/templates/src/features/template/ui/LoginTemplate.tsx +3 -3
  228. package/templates/src/pages/AssistantPage.tsx +328 -0
  229. package/templates/src/pages/ForgotPasswordPage.tsx +6 -6
  230. package/templates/src/pages/HomePage.tsx +57 -57
  231. package/templates/src/pages/LoginPage.tsx +10 -10
  232. package/templates/src/pages/ResetPasswordPage.tsx +6 -6
  233. package/templates/src/pages/TemplatePage.tsx +30 -30
  234. package/templates/src/pages/VerifyEmailPage.tsx +6 -6
  235. package/templates/src/shared/config/navigation.ts +20 -20
  236. package/templates/src/shared/lib/auth.ts +20 -20
  237. package/templates/src/shared/types/auth.ts +3 -3
  238. package/templates/src/styles/index.css +1 -1
  239. package/templates/tsconfig.json +5 -5
  240. package/templates/tsconfig.node.tsbuildinfo +1 -1
  241. package/templates/tsconfig.tsbuildinfo +1 -1
  242. package/utils/gemini.ts +140 -140
  243. package/dist/AudioPlayer-B1lt5cPl.cjs +0 -989
  244. package/dist/AudioPlayer-BZ7bibzU.cjs +0 -982
  245. package/dist/AudioPlayer-C12BjQBV.cjs +0 -997
  246. package/dist/AudioPlayer-DMcG_c7L.js +0 -990
  247. package/dist/AudioPlayer-DcFKRJE_.js +0 -998
  248. package/dist/AudioPlayer-e8LfNoqO.js +0 -983
  249. package/dist/CodeBlock-7TTgmdGG.cjs +0 -2094
  250. package/dist/CodeBlock-BeSt1h5P.js +0 -2078
  251. package/dist/CodeBlock-Bnmeu5ez.cjs +0 -2094
  252. package/dist/CodeBlock-BtfPlbAI.js +0 -2078
  253. package/dist/CodeBlock-CuPtUM-7.cjs +0 -2094
  254. package/dist/CodeBlock-D6ffWXgc.js +0 -2078
  255. package/dist/CodeBlock-D8dcwbit.cjs +0 -2094
  256. package/dist/CodeBlock-DMZrFnlw.cjs +0 -2094
  257. package/dist/CodeBlock-DlBehYN8.js +0 -2078
  258. package/dist/CodeBlock-DvKWbSnE.cjs +0 -2094
  259. package/dist/CodeBlock-DwMCfkFY.js +0 -2078
  260. package/dist/CodeBlock-Dy6CNYyj.js +0 -2078
  261. package/dist/CodeBlock-U1pPOQI7.cjs +0 -2094
  262. package/dist/CodeBlock-f_GpNhEB.js +0 -2078
  263. package/dist/CodeBlock-oB6u8nI1.js +0 -2078
  264. package/dist/CodeBlock-tZC31B73.cjs +0 -2094
  265. package/dist/ImageWithFallback-CGtidP6B.cjs +0 -4542
  266. package/dist/ImageWithFallback-lsg3pdFg.js +0 -4508
  267. package/dist/LanguageSelector-B5YfbHra.js +0 -231
  268. package/dist/LanguageSelector-D6uacAIM.cjs +0 -230
  269. package/dist/LayoutContext-BAql6ZRY.js +0 -97
  270. package/dist/LayoutContext-BvK-ggDa.cjs +0 -96
  271. package/dist/ThemeContext-BoH4NLfN.js +0 -734
  272. package/dist/ThemeContext-r69W20Xg.cjs +0 -733
  273. package/dist/XerticaOrbe-KL1RBHzw.cjs +0 -1354
  274. package/dist/XerticaOrbe-zwS1p2a8.js +0 -1355
  275. package/dist/XerticaProvider-6btlAlzc.js +0 -17
  276. package/dist/XerticaProvider-BNoNOxQ5.cjs +0 -16
  277. package/dist/XerticaProvider-BlY2limY.cjs +0 -38
  278. package/dist/XerticaProvider-DDuiIcKo.js +0 -39
  279. package/dist/XerticaProvider-cI9hSs27.cjs +0 -38
  280. package/dist/XerticaProvider-hSwhNQex.js +0 -39
  281. package/dist/breadcrumb-CqJ7bHY5.js +0 -161
  282. package/dist/breadcrumb-m9Hb2_XN.cjs +0 -177
  283. package/dist/components/blocks/audio-player/AudioPlayer.d.ts +0 -35
  284. package/dist/components/blocks/audio-player/index.d.ts +0 -1
  285. package/dist/components/blocks/document-editor/DocumentEditor.d.ts +0 -26
  286. package/dist/components/blocks/document-editor/index.d.ts +0 -1
  287. package/dist/components/blocks/podcast-player/PodcastPlayer.d.ts +0 -41
  288. package/dist/components/blocks/podcast-player/index.d.ts +0 -1
  289. package/dist/dropdown-menu-BDB5CmQs.cjs +0 -247
  290. package/dist/dropdown-menu-DQidbKBD.js +0 -231
  291. package/dist/google-maps-loader-BFWp6VPd.js +0 -287
  292. package/dist/google-maps-loader-eS3uQ5TA.cjs +0 -287
  293. package/dist/header-Cgy6vYPk.cjs +0 -731
  294. package/dist/header-DRlT4jgI.js +0 -715
  295. package/dist/header-Dux00SI4.cjs +0 -731
  296. package/dist/header-EkGKXPsD.js +0 -715
  297. package/dist/header-WfEywpyc.cjs +0 -731
  298. package/dist/header-tifNQn2U.js +0 -715
  299. package/dist/index-BhapVLVj.js +0 -8
  300. package/dist/index-D6fxYEY8.cjs +0 -7
  301. package/dist/index-DW5tYe26.js +0 -8
  302. package/dist/input-2R4loU86.js +0 -127
  303. package/dist/input-DWANSKGb.cjs +0 -145
  304. package/dist/rich-text-editor-0mraWT5y.cjs +0 -2376
  305. package/dist/rich-text-editor-B6jMRLzk.cjs +0 -1939
  306. package/dist/rich-text-editor-B8_oYcIR.js +0 -1730
  307. package/dist/rich-text-editor-B9UbSXNb.js +0 -1203
  308. package/dist/rich-text-editor-BYuRBNBU.js +0 -2373
  309. package/dist/rich-text-editor-Bb9pySTs.cjs +0 -2374
  310. package/dist/rich-text-editor-BcL6L3cm.cjs +0 -2374
  311. package/dist/rich-text-editor-BoVZYtTs.cjs +0 -2391
  312. package/dist/rich-text-editor-CPV1lEPH.cjs +0 -1748
  313. package/dist/rich-text-editor-CoKqbCtu.cjs +0 -1799
  314. package/dist/rich-text-editor-Cw56T_mB.js +0 -2356
  315. package/dist/rich-text-editor-Cyt8qs2b.js +0 -1921
  316. package/dist/rich-text-editor-D6H84OcX.cjs +0 -1220
  317. package/dist/rich-text-editor-D76gD-QI.js +0 -2328
  318. package/dist/rich-text-editor-DKkokOnA.js +0 -1781
  319. package/dist/rich-text-editor-DNsdpN64.cjs +0 -2359
  320. package/dist/rich-text-editor-DfG8bCyY.js +0 -2358
  321. package/dist/rich-text-editor-Dxjw31Z4.js +0 -2341
  322. package/dist/rich-text-editor-DzP0Epmb.js +0 -2356
  323. package/dist/rich-text-editor-skplNlBM.cjs +0 -2345
  324. package/dist/select-Bkbr0f-Z.cjs +0 -162
  325. package/dist/select-CvIVdX2n.js +0 -145
  326. package/dist/slider-Bc5Hd0y1.js +0 -56
  327. package/dist/slider-N7hFFj6X.cjs +0 -73
  328. package/dist/tooltip-Ded96neP.cjs +0 -137
  329. package/dist/tooltip-HDOoD2-0.js +0 -120
  330. package/dist/use-mobile-B0hNy_Y6.cjs +0 -4303
  331. package/dist/use-mobile-BXuYROXM.js +0 -4202
  332. package/dist/use-mobile-Bbd51ASU.cjs +0 -4392
  333. package/dist/use-mobile-Bk6CX-TC.js +0 -4359
  334. package/dist/use-mobile-BvYdisLP.js +0 -4202
  335. package/dist/use-mobile-BzuxjzNX.cjs +0 -4392
  336. package/dist/use-mobile-CKb5pqTs.js +0 -4269
  337. package/dist/use-mobile-CaENcqm-.js +0 -4508
  338. package/dist/use-mobile-CbrYgJGJ.js +0 -4203
  339. package/dist/use-mobile-DMOvImGQ.cjs +0 -4542
  340. package/dist/use-mobile-DRB3BQgD.cjs +0 -4235
  341. package/dist/use-mobile-DZvv7QMR.js +0 -4359
  342. package/dist/use-mobile-DdI_TXam.cjs +0 -4235
  343. package/dist/use-mobile-DlceKf8a.js +0 -4359
  344. package/dist/use-mobile-DsOnow1o.cjs +0 -4236
  345. package/dist/use-mobile-Kcj6jSnK.cjs +0 -4392
  346. package/dist/use-mobile-bnKcua_i.js +0 -4202
  347. package/dist/use-mobile-ncXBeE2z.cjs +0 -4235
  348. package/templates/src/app/components/XerticaUiVersionBadge.tsx +0 -14
package/CHANGELOG.md CHANGED
@@ -1,302 +1,324 @@
1
- # Changelog
2
-
3
- All notable changes to `xertica-ui` will be documented in this file.
4
-
5
- Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
- Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ---
9
-
10
- ## [2.1.0] — 2026-05-13
11
-
12
- ### Added
13
-
14
- - **`components/blocks/card-patterns/`**novo domínio `blocks/` com 6 componentes de alto nível compostos exclusivamente de primitivos `ui/`:
15
- - **`FeatureCard`** — ícone com fundo colorido, título, badge opcional, descrição e botão de ação. Suporta 10 tokens de cor (`primary`, `chart-1..5`, `success`, `info`, `warning`, `destructive`). Replica o padrão de cards da Home page.
16
- - **`ActivityCard`** — feed de atividades recentes com avatar, descrição de ação, timestamp e badge por tipo (`create`, `update`, `delete`, `comment`, `deploy`).
17
- - **`ProfileCard`** — card de usuário/membro com avatar, badge de status (`online`, `offline`, `away`, `busy`), linha de stats e ações primária/secundária.
18
- - **`ProjectCard`** — status de projeto com badge, barra de progresso (usa `Progress` com variant semântica por status), stack de avatares de membros e data limite.
19
- - **`QuickActionCard`** — tile de ação rápida com ícone em caixa colorida, badge e botão full-width.
20
- - **`NotificationCard`** — lista de notificações com indicador de não-lido, badge de tipo, "Marcar todas como lidas" e "Ver todas".
21
- - **Exportação do domínio `blocks/`** — todos os componentes disponíveis via `import { ... } from 'xertica-ui'` e via `components/blocks/index.ts`.
22
- - **Subpath público `xertica-ui/blocks`** — `FeatureCard`, `ActivityCard`, `ProfileCard`, `ProjectCard`, `QuickActionCard` e `NotificationCard` agora podem ser importados diretamente de `xertica-ui/blocks`.
23
- - **Subpath público `xertica-ui/pages`** — `LoginPage`, `HomePage`, `TemplatePage`, `ForgotPasswordPage`, `ResetPasswordPage`, `VerifyEmailPage` e seus contents agora são publicados com entrypoint dedicado.
24
- - **Documentação** — criado `docs/components/card-patterns.md` com props, exemplos e layout de dashboard completo para todos os 6 block components.
25
-
26
- ### Changed
27
-
28
- - **Calendardropdown caption styling** — quando `captionLayout="dropdown"` ou variações, os seletores de mês/ano agora têm visual de input (borda, fundo `bg-background`, focus ring `ring-primary`, `rounded-[var(--radius)]`, padding compacto fixo `px-2.5 py-1`). O `caption_label` em modo dropdown passa a usar `h-full w-full` com layout flexível.
29
- - **Calendar — prop `size` removida** — o tamanho e o arredondamento do trigger ("Pick a date") são responsabilidade do elemento trigger, não do `Calendar`. A story `InPopover` demonstra o padrão correto com `triggerSizeClasses` aplicado diretamente ao `<Button>` com `rounded-[var(--radius)]` para alinhar com o token do `Input`.
30
- - **Card stories** — enriquecidas com 3 novas variações: `WithAction` (uso de `CardAction` no header), `TeamMember` (grid de member cards com avatar e status), `SettingsCard` (lista de settings com `Separator` e `Badge`). Background `bg-muted` adicionado via decorator global da stories file para contraste com o fundo dos cards.
31
- - **Storybook — docs stories** — adicionado `render: (args) => <Component {...args} />` no nível do `meta` em todos os 60 arquivos de stories em `components/ui/`. Resolve o problema onde stories com apenas `args` (sem `render` explícito) mostravam a mesma variação repetida na aba Docs por dependerem do `projectAnnotations.render` implícito do framework React.
32
- - **Storybook — `preview.tsx`**`min-h-screen` passou a ser condicional a `layout: 'fullscreen'`, resolvendo a altura excessiva dos exemplos na aba Docs.
33
- - **Template npm** — `templates/package.json` atualizado para `2.1.0` e dependência `xertica-ui` para `^2.1.0`.
34
- - **Template version badge** — o template passa a exibir um indicador visual discreto da versão do pacote `xertica-ui` usada pelo projeto.
35
- - **Documentação** — atualizados `calendar.md` (props `captionLayout`/`buttonVariant`, nota sobre `size` no trigger), `card.md` (`CardAction` na anatomia, exemplos WithAction/Stats/TeamMember/Settings), `chart.md` (nova seção Stacked Bar Chart), `architecture.md` (domínio `blocks/` com árvore de arquivos).
36
-
37
- ### Fixed
38
-
39
- - **Chartstacked bar radius** — em `DashboardBarChart` com `stacked`, apenas a série no topo de cada `stackId` recebe `radius={[4,4,0,0]}`; as demais recebem `radius={[0,0,0,0]}`. Elimina a borda arredondada no topo das barras intermediárias e inferiores da pilha.
40
- - **`FeatureCard`badge overflow** — alterado de `flex items-center` para `flex flex-wrap` no container título+badge, garantindo que o badge quebre para a linha seguinte em vez de vazar fora do card quando o título ocupa toda a largura disponível.
41
-
42
- ---
43
-
44
- ## [2.0.6]2026-05-13
45
-
46
- ### Added
47
-
48
- - **Contrato de independência dos componentes** — documentado que `xertica-ui/style.css` é a única importação global obrigatória e que componentes públicos devem funcionar isoladamente sempre que possível.
49
- - **`useOptionalLayout`** — nova API compatível para componentes reutilizáveis consumirem o layout com fallback seguro, mantendo `useLayout` como hook estrito para apps que querem falhar cedo.
50
- - **Smoke tests de API pública** — adicionada validação de import/render dos subpaths públicos (`ui`, `brand`, `layout`, `assistant`, `media` e `hooks`).
51
- - **Exports públicos de Maps** — `useMapLayers`, `GOOGLE_MAPS_ID` e `GOOGLE_MAPS_LIBRARIES` agora são expostos pelo subpath `xertica-ui/ui`.
52
-
53
- ### Changed
54
-
55
- - **`XerticaProvider` completo** — passa a compor providers de theme, brand colors, language, layout, assistant, API keys, Google Maps, tooltip e toaster como wrapper de conveniência para apps consumidores.
56
- - **Componentes com contexto de layout** — `Header`, `Sidebar`, páginas e componentes de mídia foram ajustados para renderizar com fallback interno quando importados sem provider.
57
- - **Arquitetura FSD/FDA** — tipos compartilhados do assistant foram movidos para camada neutra, evitando dependência runtime de `components/shared` para implementação de feature.
58
- - **Documentação LLM e componentes** — README, docs de provider/mapa, `llms.txt`, `llms-compact.txt` e `docs/llms.md` foram alinhados ao contrato de independência e aos subpaths consumíveis.
59
- - **Storybook Docs de UI** — páginas MDX dos componentes de UI agora renderizam as variações reais das stories, evitando repetição do mesmo exemplo nos blocos de variação.
60
- - **Storybook Maps** — stories de mapa usam um frame responsivo mais largo para melhorar a visualização na aba Docs.
61
-
62
- ### Fixed
63
-
64
- - **Guards de browser/SSR** — providers e componentes browser-only agora protegem acessos a `window`, `document`, `localStorage`, `navigator` e scripts externos.
65
- - **Google Maps sem configuração** — componentes relacionados a Maps renderizam estados de configuração/erro sem quebrar a aplicação consumidora.
66
-
67
- ---
68
-
69
- ## [2.0.5] — 2026-05-12
70
-
71
- ### Added
72
-
73
- - **`llms-compact.txt`** novo arquivo de referência compacto para LLMs, sintetizando todos os componentes em formato reduzido ideal para contextos de tokens limitados.
74
- - **`docs/decision-tree.md`** — guia de árvore de decisão para agentes de IA selecionarem o componente correto com base nos requisitos da UI.
75
- - **`templates/CLAUDE.md`** — `CLAUDE.md` agora é scaffolded automaticamente em projetos criados via `npx xertica-ui@latest init`, fornecendo contexto arquitetural (FSD/FDA, subpath imports, tokens semânticos) para Claude Code e outros assistentes de IA.
76
- - **Storybook stories** — adicionadas stories interativas para Accordion, AlertDialog, Button, Checkbox, Dialog, Input, Switch, Tabs, HomePage e TemplatePage.
77
- - **`components/pages/home-page/home-page.mdx`** e **`template-page.mdx`** novas entradas de documentação MDX para as page components.
78
-
79
- ### Changed
80
-
81
- - **`guidelines/Guidelines.md`**reescrita completa do guia de arquitetura FSD/FDA: maior detalhamento de responsabilidades por camada, convenções de import e fluxo de adição de novas rotas.
82
- - **`components.json`**atualização completa do registro de componentes, cobrindo todos os 97 componentes com metadados de subpath, props e variantes.
83
- - **`llms.txt`** — seção de subpath imports e mapeamento de camadas FSD/FDA atualizados.
84
- - **`vite.config.ts`** — ajustes no build multi-entry para garantir correta emissão dos arquivos CJS/ESM.
85
-
86
- ### Fixed
87
-
88
- - **`npx xertica-ui init` usa versão em cache** — documentado que o npx armazena pacotes em cache localmente sem TTL curto. Sempre use `npx xertica-ui@latest init` para garantir a versão mais recente. O `templates/CLAUDE.md` scaffolded no projeto gerado inclui essa orientação.
89
-
90
- ---
91
-
92
- ## [2.0.3] — 2026-05-11
93
-
94
- ### Added
95
-
96
- - **CLI `update` atualização de projeto** novo modo no comando `update` permite atualizar os arquivos do projeto (app shell, shared, features, pages) para qualquer versão publicada do `xertica-ui`, com seleção granular de quais partes atualizar e confirmação antes de sobrescrever.
97
-
98
- ---
99
-
100
- ## [2.0.2] — 2026-05-11
101
-
102
- ### Fixed
103
-
104
- - **CLI rewritten for FSD/FDA structure** `npx xertica-ui@latest init` agora copia corretamente a estrutura Feature-Sliced Design:
105
- - Removida cópia de `src/app/routes.tsx` (arquivo não existe mais após refatoração)
106
- - Adicionada cópia de `src/app/components/AppLayout.tsx`
107
- - Adicionada cópia completa de `src/shared/` (`auth.ts`, `navigation.ts`, `types/auth.ts`)
108
- - Adicionada cópia de `src/features/auth|home|template` conforme seleções do usuário
109
- - Cópia de pages corrigida de `src/app/pages/` → `src/pages/`
110
- - `AuthGuard.tsx` agora gerado dinamicamente com imports e rotas apenas das páginas selecionadas
111
- - **`generateDemoResponse` exportado via `xertica-ui/assistant`** — estava ausente do barrel causando `SyntaxError: does not provide an export named 'generateDemoResponse'`
112
- - **Build corrigido: UMD → CJS** — múltiplos entry points não são suportados com formato UMD no Vite; migrado para CJS (todos os `*.umd.js` → `*.cjs.js` no `package.json` exports)
113
-
114
- ---
115
-
116
- ## [2.0.0] — 2026-05-11
117
-
118
- ### Added
119
-
120
- - **Subpath exports** — The package now exposes 6 granular entry points alongside the full root barrel:
121
- - `xertica-ui/ui` — all UI primitives (Button, Card, Input, Table, Dialog, etc.)
122
- - `xertica-ui/layout`Sidebar and Header
123
- - `xertica-ui/brand` — XerticaProvider, XerticaLogo, XerticaXLogo, XerticaOrbe, ThemeToggle, LanguageSelector
124
- - `xertica-ui/assistant` — XerticaAssistant, MarkdownMessage, CodeBlock, FormattedDocument, ModernChatInput
125
- - `xertica-ui/media` — VideoPlayer, AudioPlayer, FloatingMediaWrapper
126
- - `xertica-ui/hooks` useLayout, useTheme, useLanguage, useBrandColors, useAssistente, useApiKey
127
- - Root `from 'xertica-ui'` remains fully supported for backward compatibility.
128
- - **`ImageWithFallback` added to `xertica-ui/ui`** — previously only in the root barrel; now accessible via the `/ui` subpath.
129
- - **Multi-entry Vite build** `vite.config.ts` now uses `lib.entry` as an object (7 entry points). Output filenames follow `[entryName].[format].js` pattern.
130
- - **CLI template FSD/FDA architecture** — The scaffolded template was restructured to follow Feature-Sliced Design + Feature-Driven Architecture:
131
- - `src/app/` BrowserRouter, XerticaProvider, AuthGuard (auth state + route definitions), AppLayout (Sidebar + children shell)
132
- - `src/shared/` — `config/navigation.ts` (route registry), `lib/auth.ts` (localStorage helpers), `types/auth.ts` (User interface)
133
- - `src/features/auth/ui/`LoginContent, ForgotPasswordContent, VerifyEmailContent, ResetPasswordContent; with shared `AuthPageShell` and `SocialLoginButtons` DRY extractions
134
- - `src/features/home/ui/`HomeContent
135
- - `src/features/template/ui/` — TemplateContent, FormTemplate
136
- - `src/pages/` — thin page wrappers (LoginPage, HomePage, TemplatePage, ForgotPasswordPage, VerifyEmailPage, ResetPasswordPage)
137
- - **`templates/guidelines/Guidelines.md`** — new architecture guide documenting FSD/FDA layers, layer responsibilities, and "Adding New Routes" step-by-step.
138
-
139
- ### Changed
140
-
141
- - **Template imports** — All template source files updated to use subpath imports (`xertica-ui/ui`, `xertica-ui/brand`, `xertica-ui/layout`, `xertica-ui/assistant`, `xertica-ui/hooks`) instead of the root barrel.
142
- - **`FormTemplate.tsx` rewritten** — Removed dependency on `@hookform/resolvers/zod`, `react-hook-form`, and `zod` (packages not included in the CLI template's `package.json`). Now uses plain React `useState` + inline validation with only `xertica-ui/ui` primitives.
143
- - **`tsconfig.build.json`** — `include` array updated to cover all new barrel source directories (`components/**/*`, `contexts/**/*`, `hooks/**/*`).
144
- - **Documentation** (`llms.txt`, `llms-full.txt`)Added subpath import reference table and FSD/FDA layer mapping.
145
-
146
- ### Fixed
147
-
148
- - **Stale compiled artifacts** — Removed `App.js`, `App.d.ts`, `main.js`, `main.d.ts` from `templates/src/app/` that were being resolved by Vite's extension priority (`.js` before `.tsx`), causing `Failed to fetch dynamically imported module` errors after the FSD restructure.
149
-
150
- ---
151
-
152
- ## [1.10.0]2026-05-08
153
-
154
- ### Added
155
-
156
- - **Semantic Variants** Added `success`, `info`, and `warning` variants to components that lacked them:
157
- - **Button**now supports 9 variants: `default`, `secondary`, `outline`, `ghost`, `destructive`, `link`, `success`, `info`, `warning`.
158
- - **Progress**new `variant` prop (`default`, `success`, `info`, `warning`, `destructive`) colors both the track and the indicator.
159
- - **NotificationBadge**added `secondary`, `outline`, `success`, `info`, `warning`; standardized `default` to primary color for consistency with Badge and Button.
160
- - **TimelineDot** — added `info` and `outline` variants; replaced hardcoded `rgb()` values with semantic CSS tokens (`bg-success`, `bg-warning`).
161
- - **DialogBody** — new sub-component for the Dialog. When used, `DialogHeader` and `DialogFooter` stay pinned while `DialogBody` scrolls independently. Exported from `xertica-ui`.
162
- - **Dialog height management** — `DialogContent` now has `max-h-[calc(100dvh-2rem)] overflow-hidden`. The close button (×) is pinned and never scrolls with content. `size="full"` fills the full viewport height.
163
- - **Header `breadcrumbSlot`**new prop accepting any `ReactNode` rendered immediately after the breadcrumb/title area (badges, buttons, status chips, etc.).
164
- - **Sidebar default variant groups** — `variant="default"` now renders `navigationGroups` with labeled group headers. Each `RouteConfig` supports a `children` field (sub-routes shown in a contextual `DropdownMenu` via a `ChevronRight` button at the end of the item).
165
-
166
- ### Fixed
167
-
168
- - **Search double clear icon** — `type="search"` caused browsers to inject a native clear button on top of the custom × icon. Changed to `type="text"`.
169
- - **CSS `@source` path** — CLI template `src/styles/index.css` had `../node_modules/xertica-ui` (one level short); corrected to `../../node_modules/xertica-ui/components`.
170
- - **`theme-map.css` incomplete** — `--color-success`, `--color-info`, `--color-warning` and their `foreground` variants were missing, preventing `bg-success`, `text-info`, etc. from being generated in the compiled library CSS.
171
-
172
- ### Changed
173
-
174
- - **Storybook argTypes** Multiple components had controls missing from the Storybook panel: Badge (`success`/`info`/`warning` options), Select (`size`), Avatar (`size`), Rating (`readonly` casing), Timeline (`dotVariant`), Dialog (`size` available in all stories). All corrected.
175
- - **LLM documentation** (`llms-full.txt`) — Updated Badge, Button, Dialog, Header, NotificationBadge, Progress, Search, Sidebar, and Timeline sections to reflect current APIs.
176
-
177
- ---
178
-
179
- ## [1.9.0]2026-05-05
180
-
181
- ### Added
182
- - **Standardized Form Sizing System** — Implemented a unified `size` prop (`sm`, `md`, `lg`) across all form-related components for perfect visual alignment in grid layouts:
183
- - **Text Components** — `Input`, `SelectTrigger`, `Textarea`, `Search`, and `InputOTPSlot` now share consistent height/padding/font-size tokens.
184
- - **Toggle Components** — `Checkbox`, `RadioGroupItem`, and `Switch` now feature dynamic sizing for both containers and internal indicators (check icon, dot, thumb).
185
- - **Labels**`Label` component now supports `size` to match the text size of the associated input.
186
- - **Reference Guide** — Added `docs/form-sizing.md` as a comprehensive guide for the standardized sizing scale.
187
- - **Assistant Individual Controls** — Added granular control props to `XerticaAssistant` to toggle specific features independently:
188
- - `showHistory`, `showFavorites`, `allowAudioInput`, `allowFileUpload`, `allowDocCreation`, `allowPodcastGen`, `allowResearchGen`.
189
- - **Header Breadcrumb Navigation** — Standardized `Header` to use breadcrumbs as the default navigation pattern:
190
- - Added support for `react-router-dom` links in breadcrumbs to prevent page reloads.
191
- - Configurable hierarchy levels and labels directly via props.
192
-
193
- ### Changed
194
- - **Form Component Architecture** — Migrated form elements from legacy tokens to standardized design system tokens (`bg-background`, `border-border`) for better theme consistency.
195
- - **Documentation & Storybook** — Updated all 9 affected form components with new "Sizes" sections in Storybook (Stories + MDX) and enriched LLM-facing markdown documentation.
196
- - **Unit Testing** — Updated test suites for `Checkbox`, `RadioGroup`, `Switch`, `InputOTP`, `Label`, `Search`, `Select`, and `Textarea` to verify sizing variant classes.
197
-
198
- ### Fixed
199
- - **Search Component** — Removed obsolete `loading` prop which was causing TypeScript errors and was redundant with the current design system patterns.
200
- - **SelectTrigger Sizing** — Standardized `md` height to `h-10` (40px) to match the rest of the form system.
201
-
202
- ---
203
-
204
- ## [1.8.0]2026-04-27
205
-
206
- ### Added
207
- - **VideoPlayer UI Enhancements** — Added gradient overlay on controls for improved contrast against video content:
208
- - Gradient: `from-black/60 via-black/30 to-transparent` with `pt-12` spacing
209
- - White progress bar with `bg-white/30` track, `bg-white` fill, and `rounded-r-sm` on filled portion
210
- - White icons with `drop-shadow-md` for visibility
211
- - Buttons use `text-white hover:text-white hover:bg-black/50` for proper hover states
212
- - **Slider Visual Fixes** Improved progress bar alignment:
213
- - Added left margin `ml-2` to track for thumb alignment
214
- - Added `rounded-r-sm` to Range for filled portion
215
- - Adjusted track/margins for proper visual alignment at full value
216
-
217
- ### Changed
218
- - **Documentation** — Updated component counts across all docs:
219
- - `llms.txt`: 75 → 97 components
220
- - `llms-full.txt`: Added statistics table
221
- - `docs/llms.md`: Added statistics section
222
- - `Introduction.mdx`: Added "97 Components" badge
223
- - **components.json** — 75 → 89 components (added missing Media, Assistant, Pages, and Map components)
224
-
225
- ### Fixed
226
- - **Slider Progress Bar** Fixed visual gap where thumb doesn't align with filled bar at end position by adjusting track margins
227
-
228
- ---
229
-
230
- ## [1.7.0] 2026-04-23
231
-
232
- ### Fixed
233
- - **CLI CSS Theme Import** — Corrected `@theme` `@theme inline` in both the library's `index.css` and the generated template `src/styles/index.css`. Plain `@theme {}` was causing Tailwind v4 to resolve color tokens statically at build time using the library's defaults, preventing consumer `tokens.css` overrides from propagating into utility classes (`bg-destructive`, `bg-primary`, alert colors, etc.).
234
- - **Dark Mode `--primary`**Added missing `--primary: var(--xertica-primary)` in the dark mode block of `tokens.css` (library, template, and generator). Components using `bg-primary` were not picking up the dark mode brand color.
235
- - **Dark Mode Chart Tokens** — Generator (`bin/generate-tokens.ts`) now includes `--chart-1` through `--chart-5` in the dark mode section for all generated `tokens.css` files.
236
-
237
- ### Added
238
- - **CLI `update` command** — `npx xertica-ui@latest update` prompts the user to select a new color theme and overwrites `src/styles/xertica/tokens.css` with the newly generated tokens, preserving all other project files.
239
- - **Template `@theme inline` mapping** — Generated `src/styles/index.css` now includes a complete `@theme inline {}` block mapping all tokens (sidebar, charts, gradients, brand, radii) to CSS variable aliases, ensuring full theme coverage for consumer projects.
240
- - **Documentation** — `docs/getting-started.md` updated with CLI `update` command reference and a new "CSS Setup (Critical)" section explaining the `@theme inline` requirement.
241
-
242
- ---
243
-
244
- ## [1.6.0] 2026-04-20
245
-
246
- ### Added
247
- - **`docs/llms.md`** — Master LLM/AI-agent entrypoint index with full component catalog, token quick reference, and reading order guide.
248
- - **`docs/layout.md`**Complete `LayoutContext` and `useLayout()` API reference.
249
- - **`docs/components/route-map.md`** — New documentation for `RouteMap` component.
250
- - **`docs/components/use-mobile.md`** — New documentation for `useMobile` / `useIsMobile` hooks.
251
- - **`Header`** — New props: `user` (profile with avatar, name, email, and dropdown menu items), `actions` (custom icon action buttons), `showSettings` / `onSettingsClick`, `showLogout` / `onLogoutClick`. Fixed render order: Language → Theme → Actions → Settings → User → Logout.
252
- - **`Sidebar`**New `width` prop (`expandedWidth: number`) for configuring the expanded sidebar pixel width. Width is now read and stored via `LayoutContext.sidebarWidth`.
253
-
254
- ### Changed
255
- - **Documentation** — All 61 component docs, 5 pattern docs, and 6 root docs fully rewritten in English with standardized structure (Overview, When to Use, Anatomy, Props table, Examples, AI Rules, Related Components).
256
- - **JSDoc**All Portuguese JSDoc comments in `components/ui/` translated to English and enriched with accurate `@ai-rules`.
257
- - **`README.md`** Complete rewrite in English, restructured for npm page quality (quick start, install guide, component catalog, token reference, AI agent entrypoint, troubleshooting).
258
- - **`package.json`** — Version bumped to `1.6.0`. Description translated to English.
259
-
260
- ### Fixed
261
- - **`docs/components/page-header.md`** Was documenting a wrong API (`title/description/actions`). Now correctly documents the real API: `breadcrumbs[]`, `showLanguageSelector`, `rightContent`, `PageHeaderHeading`, `PageHeaderDescription`.
262
- - **`docs/components/stepper.md`** Was documenting a `steps[]` array prop. Now correctly documents the composable `<Stepper currentStep> + <Step step label>` API (1-indexed).
263
- - **`docs/components/empty.md`** — Was documenting single-prop component. Now correctly documents the composable sub-component pattern: `Empty > EmptyIcon > EmptyTitle > EmptyDescription > EmptyAction`.
264
- - **`docs/components/stats-card.md`** — `trend` was documented as a string. Now correctly documented as `{ value: number; label?: string }`.
265
- - **`docs/components/chart.md`** — Was documenting raw Recharts usage. Now correctly documents the `ChartContainer + ChartConfig + var(--color-*)` pattern.
266
-
267
- ---
268
-
269
- ## [1.5.2]2026-04-15
270
-
271
- ### Fixed
272
- - Resolved regression where modal components (Dialog/AlertDialog) failed to render in projects initialized via the CLI.
273
- - Implemented robust CSS integration using Tailwind v4 theme mappings.
274
- - Ensured Radix UI portals correctly inherit theme variables.
275
-
276
- ---
277
-
278
- ## [1.5.1]2026-04-14
279
-
280
- ### Changed
281
- - Sidebar: Added `assistente` variant with fixed areas, searchable navigation, and grouped navigation structures.
282
- - Template page updated to demonstrate the assistant sidebar variant.
283
-
284
- ---
285
-
286
- ## [1.5.0]2026-04-13
287
-
288
- ### Added
289
- - `Sidebar` — `width` / `expandedWidth` prop for configurable expanded sidebar width.
290
- - `LayoutContext` — `sidebarWidth` and `setSidebarWidth` for global sidebar width management.
291
- - `Header`User profile section with avatar, dropdown menu, settings button, and logout button.
292
- - `StatsCard` — KPI metric card component.
293
- - `Timeline` — Chronological event list with dot variants.
294
- - `TreeView` Hierarchical tree navigation.
295
- - `Rating` Star-based rating input.
296
- - `FileUpload` Drag-and-drop file input.
297
- - `Search` — Pre-built search input with icon and clear button.
298
- - `NotificationBadge` — Dot/count badge overlay.
299
- - `RouteMap` — Google Maps route display and direction calculation.
300
- - `Stepper`Multi-step progress indicator.
301
- - `Map` — Advanced Google Maps integration with markers, circles, polygons, and layers.
302
- - `XerticaAssistant` — Embedded Gemini AI assistant panel.
1
+ # Changelog
2
+
3
+ All notable changes to `xertica-ui` will be documented in this file.
4
+
5
+ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
+ Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ---
9
+
10
+ ## [2.1.2] — 2026-05-14
11
+
12
+ ### Fixed
13
+
14
+ - **`MarkdownMessage`suporte a tabelas GFM** o parser regex do componente não convertia blocos de tabela Markdown (`| col | col |`) em HTML. Adicionada transformação de tabelas GFM completa (header, separador, linhas de dados) com estilos do design system (`border-border`, `hover:bg-muted/50`, `rounded-[var(--radius)]`, `overflow-x-auto`). A transformação roda antes das substituições de quebra de linha para evitar `<br/>` dentro das células.
15
+
16
+ ### Added
17
+
18
+ - **Template — `AssistantPage`** — nova página de assistente completa: sidebar em modo `assistant` aberta por padrão (largura 320px), botão "Nova Conversa" (`variant="secondary"`), busca de conversas com filtro em tempo real, histórico de 8 conversas de exemplo em 3 grupos (Hoje / Ontem / Esta semana), modal de exclusão com `AlertDialog`, modal de renomeação com `Dialog` + `Input`, simulação de conteúdo ao selecionar conversa via `initialMessages`, botão "Voltar" em `variant` primário no `Header`.
19
+ - **Template — `AppLayout`** — novas props `sidebarVariant?: 'default' | 'assistant'` e `sidebarProps?: Record<string, any>` para permitir que páginas customizem a sidebar sem quebrar o contrato do layout.
20
+
21
+ ---
22
+
23
+ ## [2.1.1] 2026-05-14
24
+
25
+ ### Fixed
26
+
27
+ - **XerticaAssistant — tab bar oculta em modo chat-only** — quando `showHistory` e `showFavorites` estão ambas desativadas, a barra de abas (incluindo a aba "Chat") deixa de ser renderizada, eliminando a exibição de uma aba isolada sem alternativas de navegação.
28
+ - **`xertica-ui/style.css`import duplo de Roboto removido** — o `@import url(Google Fonts/Roboto)` foi removido de `styles/globals.css`. A importação da fonte passa a ser responsabilidade do app consumidor, eliminando o alerta `@import must precede all other statements` do PostCSS quando o CSS compilado era injetado após o output do Tailwind v4.
29
+
30
+ ---
31
+
32
+ ## [2.1.0]2026-05-13
33
+
34
+ ### Added
35
+
36
+ - **`components/blocks/card-patterns/`** — novo domínio `blocks/` com 6 componentes de alto nível compostos exclusivamente de primitivos `ui/`:
37
+ - **`FeatureCard`** — ícone com fundo colorido, título, badge opcional, descrição e botão de ação. Suporta 10 tokens de cor (`primary`, `chart-1..5`, `success`, `info`, `warning`, `destructive`). Replica o padrão de cards da Home page.
38
+ - **`ActivityCard`** — feed de atividades recentes com avatar, descrição de ação, timestamp e badge por tipo (`create`, `update`, `delete`, `comment`, `deploy`).
39
+ - **`ProfileCard`**card de usuário/membro com avatar, badge de status (`online`, `offline`, `away`, `busy`), linha de stats e ações primária/secundária.
40
+ - **`ProjectCard`**status de projeto com badge, barra de progresso (usa `Progress` com variant semântica por status), stack de avatares de membros e data limite.
41
+ - **`QuickActionCard`** — tile de ação rápida com ícone em caixa colorida, badge e botão full-width.
42
+ - **`NotificationCard`** — lista de notificações com indicador de não-lido, badge de tipo, "Marcar todas como lidas" e "Ver todas".
43
+ - **Exportação do domínio `blocks/`** — todos os componentes disponíveis via `import { ... } from 'xertica-ui'` e via `components/blocks/index.ts`.
44
+ - **Subpath público `xertica-ui/blocks`** `FeatureCard`, `ActivityCard`, `ProfileCard`, `ProjectCard`, `QuickActionCard` e `NotificationCard` agora podem ser importados diretamente de `xertica-ui/blocks`.
45
+ - **Subpath público `xertica-ui/pages`** — `LoginPage`, `HomePage`, `TemplatePage`, `ForgotPasswordPage`, `ResetPasswordPage`, `VerifyEmailPage` e seus contents agora são publicados com entrypoint dedicado.
46
+ - **Documentação** — criado `docs/components/card-patterns.md` com props, exemplos e layout de dashboard completo para todos os 6 block components.
47
+
48
+ ### Changed
49
+
50
+ - **Calendar dropdown caption styling** — quando `captionLayout="dropdown"` ou variações, os seletores de mês/ano agora têm visual de input (borda, fundo `bg-background`, focus ring `ring-primary`, `rounded-[var(--radius)]`, padding compacto fixo `px-2.5 py-1`). O `caption_label` em modo dropdown passa a usar `h-full w-full` com layout flexível.
51
+ - **Calendar prop `size` removida** — o tamanho e o arredondamento do trigger ("Pick a date") são responsabilidade do elemento trigger, não do `Calendar`. A story `InPopover` demonstra o padrão correto com `triggerSizeClasses` aplicado diretamente ao `<Button>` com `rounded-[var(--radius)]` para alinhar com o token do `Input`.
52
+ - **Card stories** — enriquecidas com 3 novas variações: `WithAction` (uso de `CardAction` no header), `TeamMember` (grid de member cards com avatar e status), `SettingsCard` (lista de settings com `Separator` e `Badge`). Background `bg-muted` adicionado via decorator global da stories file para contraste com o fundo dos cards.
53
+ - **Storybook — docs stories** — adicionado `render: (args) => <Component {...args} />` no nível do `meta` em todos os 60 arquivos de stories em `components/ui/`. Resolve o problema onde stories com apenas `args` (sem `render` explícito) mostravam a mesma variação repetida na aba Docs por dependerem do `projectAnnotations.render` implícito do framework React.
54
+ - **Storybook — `preview.tsx`** — `min-h-screen` passou a ser condicional a `layout: 'fullscreen'`, resolvendo a altura excessiva dos exemplos na aba Docs.
55
+ - **Template npm** — `templates/package.json` atualizado para `2.1.0` e dependência `xertica-ui` para `^2.1.0`.
56
+ - **Template version badge** — o template passa a exibir um indicador visual discreto da versão do pacote `xertica-ui` usada pelo projeto.
57
+ - **Documentação** — atualizados `calendar.md` (props `captionLayout`/`buttonVariant`, nota sobre `size` no trigger), `card.md` (`CardAction` na anatomia, exemplos WithAction/Stats/TeamMember/Settings), `chart.md` (nova seção Stacked Bar Chart), `architecture.md` (domínio `blocks/` com árvore de arquivos).
58
+
59
+ ### Fixed
60
+
61
+ - **Chart — stacked bar radius** — em `DashboardBarChart` com `stacked`, apenas a série no topo de cada `stackId` recebe `radius={[4,4,0,0]}`; as demais recebem `radius={[0,0,0,0]}`. Elimina a borda arredondada no topo das barras intermediárias e inferiores da pilha.
62
+ - **`FeatureCard` — badge overflow** — alterado de `flex items-center` para `flex flex-wrap` no container título+badge, garantindo que o badge quebre para a linha seguinte em vez de vazar fora do card quando o título ocupa toda a largura disponível.
63
+
64
+ ---
65
+
66
+ ## [2.0.6] — 2026-05-13
67
+
68
+ ### Added
69
+
70
+ - **Contrato de independência dos componentes** — documentado que `xertica-ui/style.css` é a única importação global obrigatória e que componentes públicos devem funcionar isoladamente sempre que possível.
71
+ - **`useOptionalLayout`** — nova API compatível para componentes reutilizáveis consumirem o layout com fallback seguro, mantendo `useLayout` como hook estrito para apps que querem falhar cedo.
72
+ - **Smoke tests de API pública** — adicionada validação de import/render dos subpaths públicos (`ui`, `brand`, `layout`, `assistant`, `media` e `hooks`).
73
+ - **Exports públicos de Maps** `useMapLayers`, `GOOGLE_MAPS_ID` e `GOOGLE_MAPS_LIBRARIES` agora são expostos pelo subpath `xertica-ui/ui`.
74
+
75
+ ### Changed
76
+
77
+ - **`XerticaProvider` completo**passa a compor providers de theme, brand colors, language, layout, assistant, API keys, Google Maps, tooltip e toaster como wrapper de conveniência para apps consumidores.
78
+ - **Componentes com contexto de layout** — `Header`, `Sidebar`, páginas e componentes de mídia foram ajustados para renderizar com fallback interno quando importados sem provider.
79
+ - **Arquitetura FSD/FDA** — tipos compartilhados do assistant foram movidos para camada neutra, evitando dependência runtime de `components/shared` para implementação de feature.
80
+ - **Documentação LLM e componentes** — README, docs de provider/mapa, `llms.txt`, `llms-compact.txt` e `docs/llms.md` foram alinhados ao contrato de independência e aos subpaths consumíveis.
81
+ - **Storybook Docs de UI** páginas MDX dos componentes de UI agora renderizam as variações reais das stories, evitando repetição do mesmo exemplo nos blocos de variação.
82
+ - **Storybook Maps** stories de mapa usam um frame responsivo mais largo para melhorar a visualização na aba Docs.
83
+
84
+ ### Fixed
85
+
86
+ - **Guards de browser/SSR** — providers e componentes browser-only agora protegem acessos a `window`, `document`, `localStorage`, `navigator` e scripts externos.
87
+ - **Google Maps sem configuração** — componentes relacionados a Maps renderizam estados de configuração/erro sem quebrar a aplicação consumidora.
88
+
89
+ ---
90
+
91
+ ## [2.0.5] — 2026-05-12
92
+
93
+ ### Added
94
+
95
+ - **`llms-compact.txt`** — novo arquivo de referência compacto para LLMs, sintetizando todos os componentes em formato reduzido ideal para contextos de tokens limitados.
96
+ - **`docs/decision-tree.md`**guia de árvore de decisão para agentes de IA selecionarem o componente correto com base nos requisitos da UI.
97
+ - **`templates/CLAUDE.md`** — `CLAUDE.md` agora é scaffolded automaticamente em projetos criados via `npx xertica-ui@latest init`, fornecendo contexto arquitetural (FSD/FDA, subpath imports, tokens semânticos) para Claude Code e outros assistentes de IA.
98
+ - **Storybook stories** — adicionadas stories interativas para Accordion, AlertDialog, Button, Checkbox, Dialog, Input, Switch, Tabs, HomePage e TemplatePage.
99
+ - **`components/pages/home-page/home-page.mdx`** e **`template-page.mdx`** — novas entradas de documentação MDX para as page components.
100
+
101
+ ### Changed
102
+
103
+ - **`guidelines/Guidelines.md`** — reescrita completa do guia de arquitetura FSD/FDA: maior detalhamento de responsabilidades por camada, convenções de import e fluxo de adição de novas rotas.
104
+ - **`components.json`** atualização completa do registro de componentes, cobrindo todos os 97 componentes com metadados de subpath, props e variantes.
105
+ - **`llms.txt`** seção de subpath imports e mapeamento de camadas FSD/FDA atualizados.
106
+ - **`vite.config.ts`** ajustes no build multi-entry para garantir correta emissão dos arquivos CJS/ESM.
107
+
108
+ ### Fixed
109
+
110
+ - **`npx xertica-ui init` usa versão em cache** — documentado que o npx armazena pacotes em cache localmente sem TTL curto. Sempre use `npx xertica-ui@latest init` para garantir a versão mais recente. O `templates/CLAUDE.md` scaffolded no projeto gerado inclui essa orientação.
111
+
112
+ ---
113
+
114
+ ## [2.0.3] — 2026-05-11
115
+
116
+ ### Added
117
+
118
+ - **CLI `update` — atualização de projeto** — novo modo no comando `update` permite atualizar os arquivos do projeto (app shell, shared, features, pages) para qualquer versão publicada do `xertica-ui`, com seleção granular de quais partes atualizar e confirmação antes de sobrescrever.
119
+
120
+ ---
121
+
122
+ ## [2.0.2]2026-05-11
123
+
124
+ ### Fixed
125
+
126
+ - **CLI rewritten for FSD/FDA structure** — `npx xertica-ui@latest init` agora copia corretamente a estrutura Feature-Sliced Design:
127
+ - Removida cópia de `src/app/routes.tsx` (arquivo não existe mais após refatoração)
128
+ - Adicionada cópia de `src/app/components/AppLayout.tsx`
129
+ - Adicionada cópia completa de `src/shared/` (`auth.ts`, `navigation.ts`, `types/auth.ts`)
130
+ - Adicionada cópia de `src/features/auth|home|template` conforme seleções do usuário
131
+ - Cópia de pages corrigida de `src/app/pages/` `src/pages/`
132
+ - `AuthGuard.tsx` agora gerado dinamicamente com imports e rotas apenas das páginas selecionadas
133
+ - **`generateDemoResponse` exportado via `xertica-ui/assistant`**estava ausente do barrel causando `SyntaxError: does not provide an export named 'generateDemoResponse'`
134
+ - **Build corrigido: UMD → CJS** múltiplos entry points não são suportados com formato UMD no Vite; migrado para CJS (todos os `*.umd.js` → `*.cjs.js` no `package.json` exports)
135
+
136
+ ---
137
+
138
+ ## [2.0.0] — 2026-05-11
139
+
140
+ ### Added
141
+
142
+ - **Subpath exports** — The package now exposes 6 granular entry points alongside the full root barrel:
143
+ - `xertica-ui/ui` all UI primitives (Button, Card, Input, Table, Dialog, etc.)
144
+ - `xertica-ui/layout` — Sidebar and Header
145
+ - `xertica-ui/brand` — XerticaProvider, XerticaLogo, XerticaXLogo, XerticaOrbe, ThemeToggle, LanguageSelector
146
+ - `xertica-ui/assistant` — XerticaAssistant, MarkdownMessage, CodeBlock, FormattedDocument, ModernChatInput
147
+ - `xertica-ui/media` — VideoPlayer, AudioPlayer, FloatingMediaWrapper
148
+ - `xertica-ui/hooks` useLayout, useTheme, useLanguage, useBrandColors, useAssistente, useApiKey
149
+ - Root `from 'xertica-ui'` remains fully supported for backward compatibility.
150
+ - **`ImageWithFallback` added to `xertica-ui/ui`** — previously only in the root barrel; now accessible via the `/ui` subpath.
151
+ - **Multi-entry Vite build** — `vite.config.ts` now uses `lib.entry` as an object (7 entry points). Output filenames follow `[entryName].[format].js` pattern.
152
+ - **CLI template FSD/FDA architecture** — The scaffolded template was restructured to follow Feature-Sliced Design + Feature-Driven Architecture:
153
+ - `src/app/` — BrowserRouter, XerticaProvider, AuthGuard (auth state + route definitions), AppLayout (Sidebar + children shell)
154
+ - `src/shared/` — `config/navigation.ts` (route registry), `lib/auth.ts` (localStorage helpers), `types/auth.ts` (User interface)
155
+ - `src/features/auth/ui/` — LoginContent, ForgotPasswordContent, VerifyEmailContent, ResetPasswordContent; with shared `AuthPageShell` and `SocialLoginButtons` DRY extractions
156
+ - `src/features/home/ui/`HomeContent
157
+ - `src/features/template/ui/`TemplateContent, FormTemplate
158
+ - `src/pages/`thin page wrappers (LoginPage, HomePage, TemplatePage, ForgotPasswordPage, VerifyEmailPage, ResetPasswordPage)
159
+ - **`templates/guidelines/Guidelines.md`**new architecture guide documenting FSD/FDA layers, layer responsibilities, and "Adding New Routes" step-by-step.
160
+
161
+ ### Changed
162
+
163
+ - **Template imports**All template source files updated to use subpath imports (`xertica-ui/ui`, `xertica-ui/brand`, `xertica-ui/layout`, `xertica-ui/assistant`, `xertica-ui/hooks`) instead of the root barrel.
164
+ - **`FormTemplate.tsx` rewritten** — Removed dependency on `@hookform/resolvers/zod`, `react-hook-form`, and `zod` (packages not included in the CLI template's `package.json`). Now uses plain React `useState` + inline validation with only `xertica-ui/ui` primitives.
165
+ - **`tsconfig.build.json`** — `include` array updated to cover all new barrel source directories (`components/**/*`, `contexts/**/*`, `hooks/**/*`).
166
+ - **Documentation** (`llms.txt`, `llms-full.txt`) — Added subpath import reference table and FSD/FDA layer mapping.
167
+
168
+ ### Fixed
169
+
170
+ - **Stale compiled artifacts** — Removed `App.js`, `App.d.ts`, `main.js`, `main.d.ts` from `templates/src/app/` that were being resolved by Vite's extension priority (`.js` before `.tsx`), causing `Failed to fetch dynamically imported module` errors after the FSD restructure.
171
+
172
+ ---
173
+
174
+ ## [1.10.0]2026-05-08
175
+
176
+ ### Added
177
+
178
+ - **Semantic Variants** — Added `success`, `info`, and `warning` variants to components that lacked them:
179
+ - **Button**now supports 9 variants: `default`, `secondary`, `outline`, `ghost`, `destructive`, `link`, `success`, `info`, `warning`.
180
+ - **Progress** — new `variant` prop (`default`, `success`, `info`, `warning`, `destructive`) colors both the track and the indicator.
181
+ - **NotificationBadge** — added `secondary`, `outline`, `success`, `info`, `warning`; standardized `default` to primary color for consistency with Badge and Button.
182
+ - **TimelineDot** — added `info` and `outline` variants; replaced hardcoded `rgb()` values with semantic CSS tokens (`bg-success`, `bg-warning`).
183
+ - **DialogBody** — new sub-component for the Dialog. When used, `DialogHeader` and `DialogFooter` stay pinned while `DialogBody` scrolls independently. Exported from `xertica-ui`.
184
+ - **Dialog height management** — `DialogContent` now has `max-h-[calc(100dvh-2rem)] overflow-hidden`. The close button (×) is pinned and never scrolls with content. `size="full"` fills the full viewport height.
185
+ - **Header `breadcrumbSlot`** new prop accepting any `ReactNode` rendered immediately after the breadcrumb/title area (badges, buttons, status chips, etc.).
186
+ - **Sidebar default variant groups** — `variant="default"` now renders `navigationGroups` with labeled group headers. Each `RouteConfig` supports a `children` field (sub-routes shown in a contextual `DropdownMenu` via a `ChevronRight` button at the end of the item).
187
+
188
+ ### Fixed
189
+
190
+ - **Search double clear icon** — `type="search"` caused browsers to inject a native clear button on top of the custom × icon. Changed to `type="text"`.
191
+ - **CSS `@source` path** CLI template `src/styles/index.css` had `../node_modules/xertica-ui` (one level short); corrected to `../../node_modules/xertica-ui/components`.
192
+ - **`theme-map.css` incomplete** — `--color-success`, `--color-info`, `--color-warning` and their `foreground` variants were missing, preventing `bg-success`, `text-info`, etc. from being generated in the compiled library CSS.
193
+
194
+ ### Changed
195
+
196
+ - **Storybook argTypes** — Multiple components had controls missing from the Storybook panel: Badge (`success`/`info`/`warning` options), Select (`size`), Avatar (`size`), Rating (`readonly` casing), Timeline (`dotVariant`), Dialog (`size` available in all stories). All corrected.
197
+ - **LLM documentation** (`llms-full.txt`) — Updated Badge, Button, Dialog, Header, NotificationBadge, Progress, Search, Sidebar, and Timeline sections to reflect current APIs.
198
+
199
+ ---
200
+
201
+ ## [1.9.0] — 2026-05-05
202
+
203
+ ### Added
204
+ - **Standardized Form Sizing System** Implemented a unified `size` prop (`sm`, `md`, `lg`) across all form-related components for perfect visual alignment in grid layouts:
205
+ - **Text Components** — `Input`, `SelectTrigger`, `Textarea`, `Search`, and `InputOTPSlot` now share consistent height/padding/font-size tokens.
206
+ - **Toggle Components** — `Checkbox`, `RadioGroupItem`, and `Switch` now feature dynamic sizing for both containers and internal indicators (check icon, dot, thumb).
207
+ - **Labels** — `Label` component now supports `size` to match the text size of the associated input.
208
+ - **Reference Guide** Added `docs/form-sizing.md` as a comprehensive guide for the standardized sizing scale.
209
+ - **Assistant Individual Controls** Added granular control props to `XerticaAssistant` to toggle specific features independently:
210
+ - `showHistory`, `showFavorites`, `allowAudioInput`, `allowFileUpload`, `allowDocCreation`, `allowPodcastGen`, `allowResearchGen`.
211
+ - **Header Breadcrumb Navigation** Standardized `Header` to use breadcrumbs as the default navigation pattern:
212
+ - Added support for `react-router-dom` links in breadcrumbs to prevent page reloads.
213
+ - Configurable hierarchy levels and labels directly via props.
214
+
215
+ ### Changed
216
+ - **Form Component Architecture** — Migrated form elements from legacy tokens to standardized design system tokens (`bg-background`, `border-border`) for better theme consistency.
217
+ - **Documentation & Storybook** — Updated all 9 affected form components with new "Sizes" sections in Storybook (Stories + MDX) and enriched LLM-facing markdown documentation.
218
+ - **Unit Testing** — Updated test suites for `Checkbox`, `RadioGroup`, `Switch`, `InputOTP`, `Label`, `Search`, `Select`, and `Textarea` to verify sizing variant classes.
219
+
220
+ ### Fixed
221
+ - **Search Component** — Removed obsolete `loading` prop which was causing TypeScript errors and was redundant with the current design system patterns.
222
+ - **SelectTrigger Sizing** — Standardized `md` height to `h-10` (40px) to match the rest of the form system.
223
+
224
+ ---
225
+
226
+ ## [1.8.0]2026-04-27
227
+
228
+ ### Added
229
+ - **VideoPlayer UI Enhancements** — Added gradient overlay on controls for improved contrast against video content:
230
+ - Gradient: `from-black/60 via-black/30 to-transparent` with `pt-12` spacing
231
+ - White progress bar with `bg-white/30` track, `bg-white` fill, and `rounded-r-sm` on filled portion
232
+ - White icons with `drop-shadow-md` for visibility
233
+ - Buttons use `text-white hover:text-white hover:bg-black/50` for proper hover states
234
+ - **Slider Visual Fixes**Improved progress bar alignment:
235
+ - Added left margin `ml-2` to track for thumb alignment
236
+ - Added `rounded-r-sm` to Range for filled portion
237
+ - Adjusted track/margins for proper visual alignment at full value
238
+
239
+ ### Changed
240
+ - **Documentation** — Updated component counts across all docs:
241
+ - `llms.txt`: 75 → 97 components
242
+ - `llms-full.txt`: Added statistics table
243
+ - `docs/llms.md`: Added statistics section
244
+ - `Introduction.mdx`: Added "97 Components" badge
245
+ - **components.json** — 75 → 89 components (added missing Media, Assistant, Pages, and Map components)
246
+
247
+ ### Fixed
248
+ - **Slider Progress Bar** Fixed visual gap where thumb doesn't align with filled bar at end position by adjusting track margins
249
+
250
+ ---
251
+
252
+ ## [1.7.0]2026-04-23
253
+
254
+ ### Fixed
255
+ - **CLI CSS Theme Import** — Corrected `@theme` `@theme inline` in both the library's `index.css` and the generated template `src/styles/index.css`. Plain `@theme {}` was causing Tailwind v4 to resolve color tokens statically at build time using the library's defaults, preventing consumer `tokens.css` overrides from propagating into utility classes (`bg-destructive`, `bg-primary`, alert colors, etc.).
256
+ - **Dark Mode `--primary`** Added missing `--primary: var(--xertica-primary)` in the dark mode block of `tokens.css` (library, template, and generator). Components using `bg-primary` were not picking up the dark mode brand color.
257
+ - **Dark Mode Chart Tokens** Generator (`bin/generate-tokens.ts`) now includes `--chart-1` through `--chart-5` in the dark mode section for all generated `tokens.css` files.
258
+
259
+ ### Added
260
+ - **CLI `update` command** — `npx xertica-ui@latest update` prompts the user to select a new color theme and overwrites `src/styles/xertica/tokens.css` with the newly generated tokens, preserving all other project files.
261
+ - **Template `@theme inline` mapping** — Generated `src/styles/index.css` now includes a complete `@theme inline {}` block mapping all tokens (sidebar, charts, gradients, brand, radii) to CSS variable aliases, ensuring full theme coverage for consumer projects.
262
+ - **Documentation** — `docs/getting-started.md` updated with CLI `update` command reference and a new "CSS Setup (Critical)" section explaining the `@theme inline` requirement.
263
+
264
+ ---
265
+
266
+ ## [1.6.0] — 2026-04-20
267
+
268
+ ### Added
269
+ - **`docs/llms.md`**Master LLM/AI-agent entrypoint index with full component catalog, token quick reference, and reading order guide.
270
+ - **`docs/layout.md`** — Complete `LayoutContext` and `useLayout()` API reference.
271
+ - **`docs/components/route-map.md`** — New documentation for `RouteMap` component.
272
+ - **`docs/components/use-mobile.md`** New documentation for `useMobile` / `useIsMobile` hooks.
273
+ - **`Header`** New props: `user` (profile with avatar, name, email, and dropdown menu items), `actions` (custom icon action buttons), `showSettings` / `onSettingsClick`, `showLogout` / `onLogoutClick`. Fixed render order: Language → Theme → Actions → Settings → User → Logout.
274
+ - **`Sidebar`** New `width` prop (`expandedWidth: number`) for configuring the expanded sidebar pixel width. Width is now read and stored via `LayoutContext.sidebarWidth`.
275
+
276
+ ### Changed
277
+ - **Documentation** — All 61 component docs, 5 pattern docs, and 6 root docs fully rewritten in English with standardized structure (Overview, When to Use, Anatomy, Props table, Examples, AI Rules, Related Components).
278
+ - **JSDoc**All Portuguese JSDoc comments in `components/ui/` translated to English and enriched with accurate `@ai-rules`.
279
+ - **`README.md`** — Complete rewrite in English, restructured for npm page quality (quick start, install guide, component catalog, token reference, AI agent entrypoint, troubleshooting).
280
+ - **`package.json`** — Version bumped to `1.6.0`. Description translated to English.
281
+
282
+ ### Fixed
283
+ - **`docs/components/page-header.md`** — Was documenting a wrong API (`title/description/actions`). Now correctly documents the real API: `breadcrumbs[]`, `showLanguageSelector`, `rightContent`, `PageHeaderHeading`, `PageHeaderDescription`.
284
+ - **`docs/components/stepper.md`** — Was documenting a `steps[]` array prop. Now correctly documents the composable `<Stepper currentStep> + <Step step label>` API (1-indexed).
285
+ - **`docs/components/empty.md`** — Was documenting single-prop component. Now correctly documents the composable sub-component pattern: `Empty > EmptyIcon > EmptyTitle > EmptyDescription > EmptyAction`.
286
+ - **`docs/components/stats-card.md`**`trend` was documented as a string. Now correctly documented as `{ value: number; label?: string }`.
287
+ - **`docs/components/chart.md`** — Was documenting raw Recharts usage. Now correctly documents the `ChartContainer + ChartConfig + var(--color-*)` pattern.
288
+
289
+ ---
290
+
291
+ ## [1.5.2]2026-04-15
292
+
293
+ ### Fixed
294
+ - Resolved regression where modal components (Dialog/AlertDialog) failed to render in projects initialized via the CLI.
295
+ - Implemented robust CSS integration using Tailwind v4 theme mappings.
296
+ - Ensured Radix UI portals correctly inherit theme variables.
297
+
298
+ ---
299
+
300
+ ## [1.5.1]2026-04-14
301
+
302
+ ### Changed
303
+ - Sidebar: Added `assistente` variant with fixed areas, searchable navigation, and grouped navigation structures.
304
+ - Template page updated to demonstrate the assistant sidebar variant.
305
+
306
+ ---
307
+
308
+ ## [1.5.0] — 2026-04-13
309
+
310
+ ### Added
311
+ - `Sidebar` — `width` / `expandedWidth` prop for configurable expanded sidebar width.
312
+ - `LayoutContext` — `sidebarWidth` and `setSidebarWidth` for global sidebar width management.
313
+ - `Header` — User profile section with avatar, dropdown menu, settings button, and logout button.
314
+ - `StatsCard` — KPI metric card component.
315
+ - `Timeline` — Chronological event list with dot variants.
316
+ - `TreeView` — Hierarchical tree navigation.
317
+ - `Rating` — Star-based rating input.
318
+ - `FileUpload` — Drag-and-drop file input.
319
+ - `Search` — Pre-built search input with icon and clear button.
320
+ - `NotificationBadge` — Dot/count badge overlay.
321
+ - `RouteMap` — Google Maps route display and direction calculation.
322
+ - `Stepper` — Multi-step progress indicator.
323
+ - `Map` — Advanced Google Maps integration with markers, circles, polygons, and layers.
324
+ - `XerticaAssistant` — Embedded Gemini AI assistant panel.