xertica-ui 2.3.0 → 2.4.0
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.
- package/CHANGELOG.md +564 -552
- package/README.md +417 -406
- package/assets/xertica-logo.svg +37 -37
- package/assets/xertica-x-logo.svg +20 -20
- package/bin/cli.ts +1244 -1155
- package/bin/language-config.ts +358 -361
- package/components/assistant/code-block/CodeBlock.tsx +268 -268
- package/components/assistant/formatted-document/FormattedDocument.tsx +147 -147
- package/components/assistant/modern-chat-input/ModernChatInput.tsx +564 -554
- package/components/assistant/xertica-assistant/parts/AssistantCollapsedView.tsx +99 -99
- package/components/assistant/xertica-assistant/parts/AssistantConversationList.tsx +104 -106
- package/components/assistant/xertica-assistant/parts/AssistantDocumentEditor.tsx +81 -81
- package/components/assistant/xertica-assistant/parts/AssistantFeedbackDialog.tsx +88 -78
- package/components/assistant/xertica-assistant/parts/AssistantHeader.tsx +75 -75
- package/components/assistant/xertica-assistant/parts/AssistantMessageBubble.tsx +564 -560
- package/components/assistant/xertica-assistant/parts/AssistantTabBar.tsx +67 -67
- package/components/assistant/xertica-assistant/parts/AssistantWelcomeScreen.tsx +103 -103
- package/components/assistant/xertica-assistant/use-assistant.ts +615 -615
- package/components/assistant/xertica-assistant/xertica-assistant.tsx +611 -613
- package/components/blocks/card-patterns/ActivityCard.tsx +100 -100
- package/components/blocks/card-patterns/ActivityCardSkeleton.tsx +56 -56
- package/components/blocks/card-patterns/FeatureCardSkeleton.tsx +58 -63
- package/components/blocks/card-patterns/NotificationCard.tsx +140 -140
- package/components/blocks/card-patterns/NotificationCardSkeleton.tsx +81 -81
- package/components/blocks/card-patterns/ProfileCard.tsx +112 -114
- package/components/blocks/card-patterns/ProfileCardSkeleton.tsx +69 -69
- package/components/blocks/card-patterns/ProjectCard.tsx +123 -123
- package/components/blocks/card-patterns/ProjectCardSkeleton.tsx +67 -72
- package/components/blocks/card-patterns/QuickActionCardSkeleton.tsx +44 -44
- package/components/blocks/card-patterns/card-patterns.stories.tsx +594 -594
- package/components/blocks/card-patterns/index.ts +29 -29
- package/components/brand/language-selector/LanguageSelector.tsx +102 -102
- package/components/brand/language-selector/language-selector.stories.tsx +111 -114
- package/components/brand/language-selector/language-selector.test.tsx +101 -101
- package/components/brand/theme-toggle/ThemeToggle.tsx +74 -70
- package/components/brand/xertica-provider/XerticaProvider.tsx +109 -112
- package/components/brand/xertica-provider/xertica-provider.mdx +61 -61
- package/components/index.ts +86 -90
- package/components/layout/sidebar/sidebar.mdx +1 -1
- package/components/layout/sidebar/sidebar.tsx +1079 -1073
- package/components/media/FloatingMediaWrapper.tsx +371 -371
- package/components/media/audio-player/AudioPlayer.tsx +768 -766
- package/components/media/video-player/VideoPlayer.tsx +310 -310
- package/components/pages/forgot-password-page/ForgotPasswordPage.tsx +1 -1
- package/components/pages/home-content/HomeContent.tsx +120 -120
- package/components/pages/home-content/home-content.mdx +62 -62
- package/components/pages/home-page/HomePage.tsx +78 -74
- package/components/pages/home-page/home-page.mdx +53 -53
- package/components/pages/login-page/LoginPage.tsx +218 -216
- package/components/pages/reset-password-page/ResetPasswordPage.tsx +243 -239
- package/components/pages/template-content/TemplateContent.tsx +1354 -1235
- package/components/pages/template-content/template-content.mdx +61 -61
- package/components/pages/template-page/template-page.mdx +53 -53
- package/components/pages/verify-email-page/VerifyEmailPage.tsx +206 -206
- package/components/shared/error-boundary.stories.tsx +4 -22
- package/components/shared/error-boundary.tsx +1 -5
- package/components/shared/error-fallbacks.tsx +4 -8
- package/components/ui/accordion/accordion.mdx +8 -8
- package/components/ui/alert/alert.mdx +8 -8
- package/components/ui/alert-dialog/alert-dialog.mdx +8 -8
- package/components/ui/aspect-ratio/aspect-ratio.mdx +8 -8
- package/components/ui/assistant-chart/assistant-chart.mdx +8 -8
- package/components/ui/avatar/avatar.mdx +8 -8
- package/components/ui/badge/badge.mdx +8 -8
- package/components/ui/breadcrumb/breadcrumb.mdx +8 -8
- package/components/ui/button/button.mdx +8 -8
- package/components/ui/calendar/calendar.mdx +8 -8
- package/components/ui/card/card.mdx +8 -8
- package/components/ui/carousel/carousel.mdx +8 -8
- package/components/ui/chart/chart.mdx +8 -8
- package/components/ui/checkbox/checkbox.mdx +8 -8
- package/components/ui/collapsible/collapsible.mdx +8 -8
- package/components/ui/command/command.mdx +8 -8
- package/components/ui/context-menu/context-menu.mdx +8 -8
- package/components/ui/dialog/dialog.mdx +8 -8
- package/components/ui/drawer/drawer.mdx +8 -8
- package/components/ui/dropdown-menu/dropdown-menu.mdx +8 -8
- package/components/ui/empty/empty.mdx +8 -8
- package/components/ui/file-upload/file-upload.mdx +8 -8
- package/components/ui/hover-card/hover-card.mdx +8 -8
- package/components/ui/input/input.mdx +8 -8
- package/components/ui/input-otp/input-otp.mdx +8 -8
- package/components/ui/label/label.mdx +8 -8
- package/components/ui/map/map.mdx +8 -8
- package/components/ui/menubar/menubar.mdx +8 -8
- package/components/ui/navigation-menu/navigation-menu.mdx +8 -8
- package/components/ui/notification-badge/notification-badge.mdx +8 -8
- package/components/ui/pagination/pagination.mdx +8 -8
- package/components/ui/popover/popover.mdx +8 -8
- package/components/ui/progress/progress.mdx +8 -8
- package/components/ui/radio-group/radio-group.mdx +8 -8
- package/components/ui/rating/rating.mdx +8 -8
- package/components/ui/resizable/resizable.mdx +8 -8
- package/components/ui/route-map/route-map.mdx +8 -8
- package/components/ui/scroll-area/scroll-area.mdx +8 -8
- package/components/ui/search/search.mdx +8 -8
- package/components/ui/select/select.mdx +8 -8
- package/components/ui/separator/separator.mdx +8 -8
- package/components/ui/sheet/sheet.mdx +8 -8
- package/components/ui/simple-map/simple-map.mdx +8 -8
- package/components/ui/skeleton/skeleton.mdx +8 -8
- package/components/ui/slider/slider.mdx +8 -8
- package/components/ui/sonner/sonner.mdx +8 -8
- package/components/ui/stats-card/index.ts +2 -2
- package/components/ui/stats-card/stats-card-skeleton.tsx +60 -62
- package/components/ui/stats-card/stats-card.mdx +8 -8
- package/components/ui/stats-card/stats-card.stories.tsx +99 -99
- package/components/ui/stepper/stepper.mdx +8 -8
- package/components/ui/switch/switch.mdx +8 -8
- package/components/ui/table/table.mdx +8 -8
- package/components/ui/tabs/tabs.mdx +8 -8
- package/components/ui/textarea/textarea.mdx +8 -8
- package/components/ui/timeline/timeline.mdx +8 -8
- package/components/ui/toggle/toggle.mdx +8 -8
- package/components/ui/toggle-group/toggle-group.mdx +8 -8
- package/components/ui/tooltip/tooltip.mdx +8 -8
- package/components/ui/tree-view/tree-view.mdx +8 -8
- package/components.json +892 -892
- package/contexts/AuthContext.tsx +11 -8
- package/contexts/LanguageContext.test.tsx +121 -121
- package/contexts/LanguageContext.tsx +250 -251
- package/dist/{AssistantChart-DoZCyS5r.cjs → AssistantChart-9w31gdAb.cjs} +4 -4
- package/dist/{AssistantChart-CldVCVDe.cjs → AssistantChart-BAudAfne.cjs} +5 -5
- package/dist/{AssistantChart-Bdd44uBn.cjs → AssistantChart-BAx9VQvb.cjs} +127 -388
- package/dist/{AssistantChart-Cu3m7RBo.js → AssistantChart-BP8upjMk.js} +5 -5
- package/dist/{AssistantChart-CFhDdGyU.js → AssistantChart-CVko2A1W.js} +130 -391
- package/dist/{AssistantChart-C_hwFRRr.js → AssistantChart-CVzmmhx4.js} +4 -4
- package/dist/{AudioPlayer-IAU5q5T1.cjs → AudioPlayer-1ypwE2Wh.cjs} +1 -1
- package/dist/{AudioPlayer-CGRUtUdN.js → AudioPlayer-DuKXrCfy.js} +1 -1
- package/dist/{LanguageContext-CS14yCpi.js → LanguageContext-BwhwC3G2.js} +2 -2
- package/dist/{LanguageContext-B_KFTCzT.cjs → LanguageContext-DvUt5jBg.cjs} +2 -2
- package/dist/{ThemeContext-C2EwAPDt.js → ThemeContext-BbBNoFTG.js} +2 -2
- package/dist/{ThemeContext-Bmod0Cg2.cjs → ThemeContext-BblcjQup.cjs} +13 -8
- package/dist/{ThemeContext-BWq9ACPo.js → ThemeContext-Bo-W2WZH.js} +13 -8
- package/dist/{ThemeContext-j5aGtPky.cjs → ThemeContext-CP3a0jxy.cjs} +193 -262
- package/dist/{ThemeContext-vTjumZeM.cjs → ThemeContext-Cmr8Ex8H.cjs} +2 -2
- package/dist/ThemeContext-CpqYShLq.cjs +324 -0
- package/dist/{ThemeContext-CQSo4Iwc.js → ThemeContext-D3LzacmG.js} +8 -1
- package/dist/ThemeContext-Du2nE1PL.js +325 -0
- package/dist/ThemeContext-GeEBTJ3q.cjs +1621 -0
- package/dist/ThemeContext-JyLK9B1o.js +1622 -0
- package/dist/{ThemeContext-CGk3KK0k.cjs → ThemeContext-U4dEYc6C.cjs} +8 -1
- package/dist/{ThemeContext-BXjrgUjW.js → ThemeContext-ept8jhXI.js} +200 -261
- package/dist/{VerifyEmailPage-C0c2e5n0.js → VerifyEmailPage-BE-L9mB7.js} +7 -7
- package/dist/{VerifyEmailPage-DSBMRHtl.js → VerifyEmailPage-BIBOKV7Z.js} +41 -36
- package/dist/{VerifyEmailPage-DgIid028.js → VerifyEmailPage-BJjAMUTW.js} +4 -4
- package/dist/{VerifyEmailPage--1Vurewl.cjs → VerifyEmailPage-BRSP-Pwt.cjs} +3 -3
- package/dist/{VerifyEmailPage-Cwi3kbol.cjs → VerifyEmailPage-Bae2cBXT.cjs} +7 -7
- package/dist/{VerifyEmailPage-De6bQjrz.cjs → VerifyEmailPage-BiRm7Nh4.cjs} +41 -36
- package/dist/{VerifyEmailPage-ByerOcm4.cjs → VerifyEmailPage-Bv8Ah_TK.cjs} +23 -20
- package/dist/VerifyEmailPage-Bvfv8HVQ.js +3214 -0
- package/dist/{VerifyEmailPage-BComraR7.cjs → VerifyEmailPage-CR7kb5df.cjs} +22 -12
- package/dist/{VerifyEmailPage-MTD7AG1Z.js → VerifyEmailPage-C_ihbcth.js} +4 -4
- package/dist/{VerifyEmailPage-1WwWczAn.js → VerifyEmailPage-CbgjOF0v.js} +22 -12
- package/dist/{VerifyEmailPage-DvMLZgFt.js → VerifyEmailPage-CdYPSJoO.js} +1 -1
- package/dist/{VerifyEmailPage-By3Jf__L.cjs → VerifyEmailPage-CkBYfsNy.cjs} +4 -4
- package/dist/{VerifyEmailPage-CJLz3jrn.js → VerifyEmailPage-Cyl55sJb.js} +23 -20
- package/dist/VerifyEmailPage-D-FRj5TU.cjs +3213 -0
- package/dist/VerifyEmailPage-DF2ilhum.cjs +3210 -0
- package/dist/{VerifyEmailPage-CYXtbKi3.cjs → VerifyEmailPage-DMBh4NM9.cjs} +1 -1
- package/dist/{VerifyEmailPage-CgMxRb4z.js → VerifyEmailPage-DTtFfC-J.js} +3 -3
- package/dist/{VerifyEmailPage-CFLMls1p.cjs → VerifyEmailPage-Dt7zgA4w.cjs} +4 -4
- package/dist/VerifyEmailPage-EhudUdqF.js +3211 -0
- package/dist/{VerifyEmailPage-C5TNQTBa.js → VerifyEmailPage-X14vhdyl.js} +148 -75
- package/dist/VerifyEmailPage-hdB8JQGv.cjs +3213 -0
- package/dist/{VerifyEmailPage-B4peJjAT.cjs → VerifyEmailPage-u_Dn7t1U.cjs} +148 -75
- package/dist/VerifyEmailPage-vYHbYK3q.js +3214 -0
- package/dist/{XerticaProvider-CBGc4EMA.cjs → XerticaProvider-AChwphCO.cjs} +4 -4
- package/dist/{XerticaProvider-BIrqfZ-i.cjs → XerticaProvider-AbWlr7Af.cjs} +8 -11
- package/dist/{XerticaProvider-D-yNhF94.cjs → XerticaProvider-B8CaV7xu.cjs} +1 -1
- package/dist/{XerticaProvider-DDuiIcKo.js → XerticaProvider-BErr83Bg.js} +14 -11
- package/dist/{XerticaProvider-CEoWMTxu.js → XerticaProvider-BITjgC5p.js} +2 -2
- package/dist/{XerticaProvider-CllrbMEJ.cjs → XerticaProvider-By8q3Roe.cjs} +2 -2
- package/dist/{XerticaProvider-C1DKnvLh.js → XerticaProvider-CUYJZc32.js} +4 -4
- package/dist/{XerticaProvider-ET0ihewn.cjs → XerticaProvider-CW9hpCdF.cjs} +2 -2
- package/dist/{XerticaProvider-Dt5HEzbQ.js → XerticaProvider-CWgby5mY.js} +10 -10
- package/dist/XerticaProvider-CWs6EwNa.js +49 -0
- package/dist/XerticaProvider-CjQAQPcn.cjs +48 -0
- package/dist/XerticaProvider-CwOkHxiT.cjs +44 -0
- package/dist/XerticaProvider-D5lLumH-.js +49 -0
- package/dist/{XerticaProvider-DYq4JWtg.js → XerticaProvider-DQtvJU7m.js} +1 -1
- package/dist/XerticaProvider-qQUDop71.cjs +48 -0
- package/dist/{XerticaProvider-B7EVH-NF.js → XerticaProvider-siSt9uG2.js} +2 -2
- package/dist/{XerticaXLogo-Zw2B276b.cjs → XerticaXLogo-8TTzBjHw.cjs} +1 -1
- package/dist/{XerticaXLogo-B7xQ5dhi.js → XerticaXLogo-BWaag64t.js} +1 -1
- package/dist/{XerticaXLogo-DZbo4vOE.js → XerticaXLogo-BX3ueACh.js} +5 -2
- package/dist/XerticaXLogo-CFuIlYFH.js +252 -0
- package/dist/XerticaXLogo-CU-U-GP4.cjs +251 -0
- package/dist/XerticaXLogo-ChryA6xj.js +252 -0
- package/dist/{XerticaXLogo-CQUUjXoH.cjs → XerticaXLogo-CziKMQil.cjs} +8 -8
- package/dist/XerticaXLogo-DHz5SugF.js +252 -0
- package/dist/XerticaXLogo-DTee_y8X.cjs +251 -0
- package/dist/{XerticaXLogo-Cmsp-Eey.js → XerticaXLogo-DfUvz-lD.js} +9 -9
- package/dist/XerticaXLogo-kslQ8Tk_.cjs +251 -0
- package/dist/{XerticaXLogo-bvZSgwGF.cjs → XerticaXLogo-qBPhwK3g.cjs} +5 -2
- package/dist/{alert-dialog-s-vmNkJ_.js → alert-dialog-iDe5VE5o.js} +3 -3
- package/dist/{alert-dialog-DSKByiKZ.cjs → alert-dialog-yckpaOpy.cjs} +3 -3
- package/dist/assistant.cjs.js +1 -1
- package/dist/assistant.es.js +1 -1
- package/dist/brand.cjs.js +2 -2
- package/dist/brand.es.js +2 -2
- package/dist/cli.js +90 -37
- package/dist/components/brand/theme-toggle/ThemeToggle.d.ts +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/{google-maps-loader-Y-QkD-Li.cjs → google-maps-loader-BqsYL48U.cjs} +0 -5
- package/dist/{google-maps-loader-CTYySAun.js → google-maps-loader-t2IlYBzw.js} +0 -4
- package/dist/index-CkTUgOwX.js +8 -0
- package/dist/{index-COtD8bRW.cjs → index-D3RLKRAs.cjs} +1 -1
- package/dist/index.cjs.js +5 -5
- package/dist/index.es.js +5 -5
- package/dist/index.umd.js +454 -1027
- package/dist/layout.cjs.js +1 -1
- package/dist/layout.es.js +1 -1
- package/dist/pages.cjs.js +1 -1
- package/dist/pages.es.js +1 -1
- package/dist/{sidebar-DAaY8bRU.cjs → sidebar-B3EYhli0.cjs} +33 -24
- package/dist/{sidebar-B6SlKZYN.js → sidebar-B4ZWaMrE.js} +1 -1
- package/dist/{sidebar-DQj1z3jG.cjs → sidebar-B9NR0lCe.cjs} +269 -227
- package/dist/{sidebar-nzPoVHBQ.cjs → sidebar-BS1p2V7t.cjs} +1 -1
- package/dist/sidebar-BvF5I2Ue.cjs +800 -0
- package/dist/{sidebar-q7P2Godd.cjs → sidebar-C5B_LHek.cjs} +1 -1
- package/dist/{sidebar-CrQDDdcz.js → sidebar-CA6_ek3f.js} +33 -24
- package/dist/{sidebar-BxGXsDAd.cjs → sidebar-CVUGHOS_.cjs} +8 -16
- package/dist/{sidebar-BViy8Eeu.js → sidebar-CmvwjnVb.js} +9 -17
- package/dist/sidebar-CplprZpM.js +801 -0
- package/dist/{sidebar-BbVIQvlP.js → sidebar-Dz7bd3zP.js} +1 -1
- package/dist/sidebar-KIS0C2JH.js +801 -0
- package/dist/sidebar-OTO_up7Z.js +801 -0
- package/dist/sidebar-zowjejT2.cjs +800 -0
- package/dist/{use-audio-player-nv8ZSGa1.js → use-audio-player-Bkh23vQ3.js} +3 -7
- package/dist/{use-audio-player-NKsWyjWu.cjs → use-audio-player-Dn1NR9xN.cjs} +3 -7
- package/dist/{xertica-assistant-dyP7KHM5.cjs → xertica-assistant-B1IaHXnB.cjs} +388 -529
- package/dist/{xertica-assistant-DCsnQyi5.js → xertica-assistant-B1NaSFFj.js} +46 -29
- package/dist/{xertica-assistant-ciJaWqm1.js → xertica-assistant-BMqdyRVi.js} +10 -28
- package/dist/{xertica-assistant-V_IdW4WF.cjs → xertica-assistant-Bj3vBCq_.cjs} +9 -27
- package/dist/{xertica-assistant-CrgTb6Hs.cjs → xertica-assistant-CIaUlbIt.cjs} +47 -22
- package/dist/{xertica-assistant-yX1CFBBo.js → xertica-assistant-DPsESB6t.js} +390 -531
- package/dist/{CodeBlock-BgfYL_rD.cjs → xertica-assistant-Qp3ydksa.cjs} +51 -263
- package/dist/{CodeBlock-BeSt1h5P.js → xertica-assistant-gnCJdcZY.js} +7 -219
- package/dist/xertica-ui.css +2 -2
- package/docs/architecture-improvements.md +456 -456
- package/docs/architecture.md +312 -306
- package/docs/components/assistant.md +428 -428
- package/docs/components/branding.md +252 -252
- package/docs/components/card-patterns.md +447 -445
- package/docs/components/error-boundary.md +32 -22
- package/docs/components/hooks.md +432 -430
- package/docs/components/language-selector.md +176 -172
- package/docs/components/pages.md +20 -6
- package/docs/doc-audit.md +244 -243
- package/docs/getting-started.md +616 -603
- package/docs/guidelines.md +330 -328
- package/docs/i18n.md +480 -476
- package/docs/installation.md +7 -6
- package/docs/llms.md +295 -295
- package/docs/state-management.md +289 -289
- package/guidelines/Guidelines.md +409 -406
- package/llms-compact.txt +1 -1
- package/llms.txt +1 -1
- package/package.json +219 -219
- package/styles/xertica/base.css +6 -0
- package/templates/.prettierignore +4 -4
- package/templates/.prettierrc +10 -10
- package/templates/CLAUDE.md +180 -165
- package/templates/guidelines/Guidelines.md +577 -553
- package/templates/package.json +69 -69
- package/templates/src/app/App.tsx +46 -46
- package/templates/src/app/components/AuthGuard.tsx +57 -8
- package/templates/src/features/assistant/data/mock.ts +75 -75
- package/templates/src/features/assistant/hooks/useAssistantConfig.ts +20 -20
- package/templates/src/features/assistant/index.ts +5 -5
- package/templates/src/features/auth/ui/AuthPageShell.tsx +1 -1
- package/templates/src/features/auth/ui/ForgotPasswordContent.tsx +70 -72
- package/templates/src/features/auth/ui/LoginContent.tsx +92 -92
- package/templates/src/features/auth/ui/ResetPasswordContent.tsx +183 -179
- package/templates/src/features/auth/ui/SocialLoginButtons.tsx +78 -78
- package/templates/src/features/auth/ui/VerifyEmailContent.tsx +80 -84
- package/templates/src/features/home/data/mock.ts +6 -0
- package/templates/src/features/home/hooks/useFeatureCards.ts +20 -20
- package/templates/src/features/home/index.ts +11 -11
- package/templates/src/features/home/ui/HomeContent.tsx +117 -119
- package/templates/src/features/template/ui/CrudTemplate.tsx +112 -115
- package/templates/src/features/template/ui/DashboardTemplate.tsx +110 -110
- package/templates/src/features/template/ui/FormTemplate.tsx +117 -117
- package/templates/src/features/template/ui/LoginTemplate.tsx +59 -59
- package/templates/src/features/template/ui/TemplateContent.tsx +1322 -1314
- package/templates/src/i18n.ts +124 -124
- package/templates/src/locales/en/common.json +21 -21
- package/templates/src/locales/en/components/activityCard.json +10 -10
- package/templates/src/locales/en/components/assistant.json +119 -119
- package/templates/src/locales/en/components/media.json +29 -29
- package/templates/src/locales/en/components/notificationCard.json +5 -5
- package/templates/src/locales/en/components/profileCard.json +8 -8
- package/templates/src/locales/en/components/projectCard.json +10 -10
- package/templates/src/locales/en/components/sidebar.json +14 -14
- package/templates/src/locales/en/components/stats.json +8 -8
- package/templates/src/locales/en/components/team.json +14 -14
- package/templates/src/locales/en/errors.json +9 -9
- package/templates/src/locales/en/languageSelector.json +7 -7
- package/templates/src/locales/en/nav.json +6 -6
- package/templates/src/locales/en/pages/crudTemplate.json +25 -25
- package/templates/src/locales/en/pages/dashboardTemplate.json +20 -20
- package/templates/src/locales/en/pages/forgotPassword.json +10 -10
- package/templates/src/locales/en/pages/formTemplate.json +16 -16
- package/templates/src/locales/en/pages/home.json +7 -7
- package/templates/src/locales/en/pages/login.json +15 -15
- package/templates/src/locales/en/pages/loginTemplate.json +9 -9
- package/templates/src/locales/en/pages/resetPassword.json +18 -18
- package/templates/src/locales/en/pages/templates.json +317 -317
- package/templates/src/locales/en/pages/verifyEmail.json +12 -12
- package/templates/src/locales/en/themeToggle.json +6 -6
- package/templates/src/locales/es/common.json +21 -21
- package/templates/src/locales/es/components/activityCard.json +10 -10
- package/templates/src/locales/es/components/assistant.json +119 -119
- package/templates/src/locales/es/components/media.json +29 -29
- package/templates/src/locales/es/components/notificationCard.json +5 -5
- package/templates/src/locales/es/components/profileCard.json +8 -8
- package/templates/src/locales/es/components/projectCard.json +10 -10
- package/templates/src/locales/es/components/sidebar.json +14 -14
- package/templates/src/locales/es/components/stats.json +8 -8
- package/templates/src/locales/es/components/team.json +14 -14
- package/templates/src/locales/es/errors.json +9 -9
- package/templates/src/locales/es/languageSelector.json +7 -7
- package/templates/src/locales/es/nav.json +6 -6
- package/templates/src/locales/es/pages/crudTemplate.json +25 -25
- package/templates/src/locales/es/pages/dashboardTemplate.json +20 -20
- package/templates/src/locales/es/pages/forgotPassword.json +10 -10
- package/templates/src/locales/es/pages/formTemplate.json +16 -16
- package/templates/src/locales/es/pages/home.json +7 -7
- package/templates/src/locales/es/pages/login.json +15 -15
- package/templates/src/locales/es/pages/loginTemplate.json +9 -9
- package/templates/src/locales/es/pages/resetPassword.json +18 -18
- package/templates/src/locales/es/pages/templates.json +317 -317
- package/templates/src/locales/es/pages/verifyEmail.json +12 -12
- package/templates/src/locales/es/themeToggle.json +6 -6
- package/templates/src/locales/pt-BR/common.json +21 -21
- package/templates/src/locales/pt-BR/components/activityCard.json +10 -10
- package/templates/src/locales/pt-BR/components/assistant.json +119 -119
- package/templates/src/locales/pt-BR/components/media.json +29 -29
- package/templates/src/locales/pt-BR/components/notificationCard.json +5 -5
- package/templates/src/locales/pt-BR/components/profileCard.json +8 -8
- package/templates/src/locales/pt-BR/components/projectCard.json +10 -10
- package/templates/src/locales/pt-BR/components/sidebar.json +14 -14
- package/templates/src/locales/pt-BR/components/stats.json +8 -8
- package/templates/src/locales/pt-BR/components/team.json +14 -14
- package/templates/src/locales/pt-BR/errors.json +9 -9
- package/templates/src/locales/pt-BR/languageSelector.json +7 -7
- package/templates/src/locales/pt-BR/nav.json +6 -6
- package/templates/src/locales/pt-BR/pages/crudTemplate.json +25 -25
- package/templates/src/locales/pt-BR/pages/dashboardTemplate.json +20 -20
- package/templates/src/locales/pt-BR/pages/forgotPassword.json +10 -10
- package/templates/src/locales/pt-BR/pages/formTemplate.json +16 -16
- package/templates/src/locales/pt-BR/pages/home.json +7 -7
- package/templates/src/locales/pt-BR/pages/login.json +15 -15
- package/templates/src/locales/pt-BR/pages/loginTemplate.json +9 -9
- package/templates/src/locales/pt-BR/pages/resetPassword.json +18 -18
- package/templates/src/locales/pt-BR/pages/templates.json +317 -317
- package/templates/src/locales/pt-BR/pages/verifyEmail.json +12 -12
- package/templates/src/locales/pt-BR/themeToggle.json +6 -6
- package/templates/src/pages/AssistantPage.tsx +470 -464
- package/templates/src/pages/HomePage.tsx +53 -49
- package/templates/src/shared/error-boundary.tsx +1 -5
- package/templates/src/shared/error-fallbacks.tsx +4 -8
- package/templates/vite.config.js +20 -20
- package/templates/vite.config.ts +55 -52
- package/dist/AssistantChart-CxGjH7Qk.js +0 -3477
- package/dist/AssistantChart-DIpshm3i.js +0 -4784
- package/dist/AssistantChart-D_PTeu8P.cjs +0 -3503
- package/dist/AssistantChart-zjsy2GaZ.cjs +0 -4810
- package/dist/AudioPlayer-B1lt5cPl.cjs +0 -989
- package/dist/AudioPlayer-BZ7bibzU.cjs +0 -982
- package/dist/AudioPlayer-BpRPS4-1.cjs +0 -1277
- package/dist/AudioPlayer-C12BjQBV.cjs +0 -997
- package/dist/AudioPlayer-CFeV8t-5.cjs +0 -936
- package/dist/AudioPlayer-Coly3q5R.js +0 -1278
- package/dist/AudioPlayer-CySJIyvL.js +0 -937
- package/dist/AudioPlayer-DMcG_c7L.js +0 -990
- package/dist/AudioPlayer-DcFKRJE_.js +0 -998
- package/dist/AudioPlayer-e8LfNoqO.js +0 -983
- package/dist/BrandColorsContext-565dDHd5.js +0 -660
- package/dist/BrandColorsContext-BcJbtkqn.cjs +0 -659
- package/dist/CodeBlock-7TTgmdGG.cjs +0 -2094
- package/dist/CodeBlock-BlcqlA9M.cjs +0 -2094
- package/dist/CodeBlock-Bnmeu5ez.cjs +0 -2094
- package/dist/CodeBlock-BtfPlbAI.js +0 -2078
- package/dist/CodeBlock-CIySIuYr.js +0 -2078
- package/dist/CodeBlock-CuPtUM-7.cjs +0 -2094
- package/dist/CodeBlock-D6ffWXgc.js +0 -2078
- package/dist/CodeBlock-D8dcwbit.cjs +0 -2094
- package/dist/CodeBlock-DMZrFnlw.cjs +0 -2094
- package/dist/CodeBlock-DlBehYN8.js +0 -2078
- package/dist/CodeBlock-DnYNI8rQ.js +0 -2078
- package/dist/CodeBlock-DvKWbSnE.cjs +0 -2094
- package/dist/CodeBlock-DwMCfkFY.js +0 -2078
- package/dist/CodeBlock-Dy6CNYyj.js +0 -2078
- package/dist/CodeBlock-U1pPOQI7.cjs +0 -2094
- package/dist/CodeBlock-f_GpNhEB.js +0 -2078
- package/dist/CodeBlock-oB6u8nI1.js +0 -2078
- package/dist/CodeBlock-tZC31B73.cjs +0 -2094
- package/dist/FeatureCard-CxC-7C-C.cjs +0 -300
- package/dist/FeatureCard-DbHWCb4E.js +0 -301
- package/dist/ImageWithFallback-CGtidP6B.cjs +0 -4542
- package/dist/ImageWithFallback-lsg3pdFg.js +0 -4508
- package/dist/LanguageSelector-B5YfbHra.js +0 -231
- package/dist/LanguageSelector-D6uacAIM.cjs +0 -230
- package/dist/LayoutContext-B45-e9DI.cjs +0 -93
- package/dist/LayoutContext-BAql6ZRY.js +0 -97
- package/dist/LayoutContext-Bav3UMEA.js +0 -94
- package/dist/LayoutContext-BvK-ggDa.cjs +0 -96
- package/dist/ThemeContext-BoH4NLfN.js +0 -734
- package/dist/ThemeContext-r69W20Xg.cjs +0 -733
- package/dist/VerifyEmailPage-COiyNl1y.js +0 -2825
- package/dist/VerifyEmailPage-CqKsR2v8.js +0 -2827
- package/dist/VerifyEmailPage-DjQKRlUS.cjs +0 -2824
- package/dist/VerifyEmailPage-s-1X3LDJ.cjs +0 -2826
- package/dist/XerticaOrbe-KL1RBHzw.cjs +0 -1354
- package/dist/XerticaOrbe-zwS1p2a8.js +0 -1355
- package/dist/XerticaProvider-6btlAlzc.js +0 -17
- package/dist/XerticaProvider-BNoNOxQ5.cjs +0 -16
- package/dist/XerticaProvider-BlY2limY.cjs +0 -38
- package/dist/XerticaProvider-cI9hSs27.cjs +0 -38
- package/dist/XerticaProvider-hSwhNQex.js +0 -39
- package/dist/alert-dialog-BOje--vD.js +0 -847
- package/dist/alert-dialog-BtEuQqrg.cjs +0 -870
- package/dist/breadcrumb-CqJ7bHY5.js +0 -161
- package/dist/breadcrumb-m9Hb2_XN.cjs +0 -177
- package/dist/components/assistant/xertica-assistant/hooks/index.d.ts +0 -6
- package/dist/components/assistant/xertica-assistant/hooks/use-assistant-conversations.d.ts +0 -21
- package/dist/components/assistant/xertica-assistant/hooks/use-assistant-messages.d.ts +0 -49
- package/dist/components/assistant/xertica-assistant/hooks/use-assistant-suggestions.d.ts +0 -16
- package/dist/components/blocks/audio-player/AudioPlayer.d.ts +0 -35
- package/dist/components/blocks/audio-player/index.d.ts +0 -1
- package/dist/components/blocks/document-editor/DocumentEditor.d.ts +0 -26
- package/dist/components/blocks/document-editor/index.d.ts +0 -1
- package/dist/components/blocks/podcast-player/PodcastPlayer.d.ts +0 -41
- package/dist/components/blocks/podcast-player/index.d.ts +0 -1
- package/dist/components/ui/chart/parts/chart-dashboard.d.ts +0 -113
- package/dist/components/ui/chart/parts/chart-metric.d.ts +0 -118
- package/dist/components/ui/chart/parts/chart-primitives.d.ts +0 -101
- package/dist/components/ui/chart/parts/chart-shared.d.ts +0 -20
- package/dist/components/ui/chart/parts/chart-utils.d.ts +0 -12
- package/dist/components/ui/chart/parts/index.d.ts +0 -5
- package/dist/dropdown-menu-BDB5CmQs.cjs +0 -247
- package/dist/dropdown-menu-DQidbKBD.js +0 -231
- package/dist/google-maps-loader-BFWp6VPd.js +0 -287
- package/dist/google-maps-loader-BKcdgFbu.cjs +0 -312
- package/dist/google-maps-loader-CumCNXeG.js +0 -312
- package/dist/google-maps-loader-eS3uQ5TA.cjs +0 -287
- package/dist/header-Cgy6vYPk.cjs +0 -731
- package/dist/header-DRlT4jgI.js +0 -715
- package/dist/header-Dux00SI4.cjs +0 -731
- package/dist/header-EkGKXPsD.js +0 -715
- package/dist/header-WfEywpyc.cjs +0 -731
- package/dist/header-tifNQn2U.js +0 -715
- package/dist/index-BhapVLVj.js +0 -8
- package/dist/index-D6fxYEY8.cjs +0 -7
- package/dist/index-DAIp0_HK.js +0 -8
- package/dist/index-DW5tYe26.js +0 -8
- package/dist/index-GA__GvnG.cjs +0 -7
- package/dist/input-2R4loU86.js +0 -127
- package/dist/input-DWANSKGb.cjs +0 -145
- package/dist/progress-DPtzoVV8.js +0 -175
- package/dist/progress-EeaoqqUs.cjs +0 -191
- package/dist/rich-text-editor-0mraWT5y.cjs +0 -2376
- package/dist/rich-text-editor-B-IkcPD0.js +0 -2874
- package/dist/rich-text-editor-B6jMRLzk.cjs +0 -1939
- package/dist/rich-text-editor-B8_oYcIR.js +0 -1730
- package/dist/rich-text-editor-B9UbSXNb.js +0 -1203
- package/dist/rich-text-editor-BYuRBNBU.js +0 -2373
- package/dist/rich-text-editor-Bb9pySTs.cjs +0 -2374
- package/dist/rich-text-editor-BcL6L3cm.cjs +0 -2374
- package/dist/rich-text-editor-BoVZYtTs.cjs +0 -2391
- package/dist/rich-text-editor-Bp3zQqMC.js +0 -2954
- package/dist/rich-text-editor-CMgSN_w2.js +0 -1189
- package/dist/rich-text-editor-CPV1lEPH.cjs +0 -1748
- package/dist/rich-text-editor-CeucBdIv.cjs +0 -2971
- package/dist/rich-text-editor-CoKqbCtu.cjs +0 -1799
- package/dist/rich-text-editor-Cw56T_mB.js +0 -2356
- package/dist/rich-text-editor-Cyt8qs2b.js +0 -1921
- package/dist/rich-text-editor-D6H84OcX.cjs +0 -1220
- package/dist/rich-text-editor-D76gD-QI.js +0 -2328
- package/dist/rich-text-editor-DKkokOnA.js +0 -1781
- package/dist/rich-text-editor-DNsdpN64.cjs +0 -2359
- package/dist/rich-text-editor-DfG8bCyY.js +0 -2358
- package/dist/rich-text-editor-Dxjw31Z4.js +0 -2341
- package/dist/rich-text-editor-DzP0Epmb.js +0 -2356
- package/dist/rich-text-editor-bRkNoeZY.cjs +0 -2891
- package/dist/rich-text-editor-lyYE2ZG5.cjs +0 -1207
- package/dist/rich-text-editor-skplNlBM.cjs +0 -2345
- package/dist/select-Bkbr0f-Z.cjs +0 -162
- package/dist/select-CvIVdX2n.js +0 -145
- package/dist/sidebar-CK_0ZQHj.cjs +0 -803
- package/dist/sidebar-CUuOvYhK.js +0 -787
- package/dist/sidebar-Djn5syhi.cjs +0 -786
- package/dist/sidebar-LluMXfam.js +0 -759
- package/dist/sidebar-_rT7rBMk.js +0 -787
- package/dist/slider-Bc5Hd0y1.js +0 -56
- package/dist/slider-N7hFFj6X.cjs +0 -73
- package/dist/tooltip-Ded96neP.cjs +0 -137
- package/dist/tooltip-HDOoD2-0.js +0 -120
- package/dist/use-audio-player-B31J-aqh.cjs +0 -187
- package/dist/use-audio-player-BkmEmj8Q.js +0 -185
- package/dist/use-audio-player-CLFTWFW1.cjs +0 -184
- package/dist/use-audio-player-CLLn00I6.js +0 -188
- package/dist/use-file-upload-BcjEo2S5.js +0 -404
- package/dist/use-file-upload-CRJR68Tj.cjs +0 -403
- package/dist/use-mobile-B0hNy_Y6.cjs +0 -4303
- package/dist/use-mobile-BXuYROXM.js +0 -4202
- package/dist/use-mobile-Bbd51ASU.cjs +0 -4392
- package/dist/use-mobile-Bk6CX-TC.js +0 -4359
- package/dist/use-mobile-BvYdisLP.js +0 -4202
- package/dist/use-mobile-BzuxjzNX.cjs +0 -4392
- package/dist/use-mobile-CG2-SdXV.cjs +0 -4235
- package/dist/use-mobile-CKb5pqTs.js +0 -4269
- package/dist/use-mobile-CYuAuGDl.js +0 -4202
- package/dist/use-mobile-CaENcqm-.js +0 -4508
- package/dist/use-mobile-CbrYgJGJ.js +0 -4203
- package/dist/use-mobile-Cd4xPrKq.cjs +0 -46
- package/dist/use-mobile-DMOvImGQ.cjs +0 -4542
- package/dist/use-mobile-DRB3BQgD.cjs +0 -4235
- package/dist/use-mobile-DZvv7QMR.js +0 -4359
- package/dist/use-mobile-DdI_TXam.cjs +0 -4235
- package/dist/use-mobile-DlceKf8a.js +0 -4359
- package/dist/use-mobile-DsOnow1o.cjs +0 -4236
- package/dist/use-mobile-Kcj6jSnK.cjs +0 -4392
- package/dist/use-mobile-bnKcua_i.js +0 -4202
- package/dist/use-mobile-j4w2Jrf1.js +0 -30
- package/dist/use-mobile-ncXBeE2z.cjs +0 -4235
- package/dist/use-rich-text-editor-DjiddBGv.js +0 -282
- package/dist/use-rich-text-editor-lpeswbCs.cjs +0 -281
- package/dist/xertica-assistant-BdiZag0h.js +0 -2187
- package/dist/xertica-assistant-DUBpmEgo.cjs +0 -2186
- package/dist/{rich-text-editor-DgF8s7xW.js → rich-text-editor-BmsjY03B.js} +26 -26
- package/dist/{rich-text-editor-mWoaSCE4.cjs → rich-text-editor-GS2kpTAK.cjs} +26 -26
package/dist/cli.js
CHANGED
|
@@ -691,9 +691,11 @@ export function registerLanguageResource(
|
|
|
691
691
|
export default i18n;
|
|
692
692
|
`;
|
|
693
693
|
}
|
|
694
|
-
function generateAppTsx(selectedCodes) {
|
|
694
|
+
function generateAppTsx(selectedCodes, disableDarkMode = false) {
|
|
695
695
|
const selectedLangs = SUPPORTED_LANGUAGES.filter((l) => selectedCodes.includes(l.code));
|
|
696
696
|
const isMonolingual = selectedLangs.length === 1;
|
|
697
|
+
const disableDarkModeProp = disableDarkMode ? `
|
|
698
|
+
disableDarkMode={true}` : "";
|
|
697
699
|
const isAllDefaults = selectedLangs.length === SUPPORTED_LANGUAGES.length && selectedLangs.every((l) => DEFAULT_SELECTION.includes(l.code));
|
|
698
700
|
const languagesArrayLiteral = selectedLangs.map(
|
|
699
701
|
(l) => ` { code: '${l.code}', label: '${l.label}', shortLabel: '${l.shortLabel}' },`
|
|
@@ -737,7 +739,7 @@ export default function App() {
|
|
|
737
739
|
<QueryClientProvider client={queryClient}>
|
|
738
740
|
<XerticaProvider
|
|
739
741
|
apiKey={geminiApiKey}
|
|
740
|
-
googleMapsApiKey={googleMapsApiKey}${availableLanguagesProp}
|
|
742
|
+
googleMapsApiKey={googleMapsApiKey}${availableLanguagesProp}${disableDarkModeProp}
|
|
741
743
|
>
|
|
742
744
|
<Router>
|
|
743
745
|
{/* AuthProvider must be inside Router (needs useNavigate) */}
|
|
@@ -773,7 +775,10 @@ async function readXerticaConfig(targetDir) {
|
|
|
773
775
|
}
|
|
774
776
|
async function writeXerticaConfig(targetDir, config) {
|
|
775
777
|
const configPath = path2.join(targetDir, XERTICA_CONFIG_FILE);
|
|
776
|
-
const existing = await readXerticaConfig(targetDir) ?? {
|
|
778
|
+
const existing = await readXerticaConfig(targetDir) ?? {
|
|
779
|
+
version: 1,
|
|
780
|
+
hasAssistant: false
|
|
781
|
+
};
|
|
777
782
|
await fs2.writeJson(configPath, { ...existing, ...config, version: 1 }, { spaces: 2 });
|
|
778
783
|
}
|
|
779
784
|
var __filename = fileURLToPath(import.meta.url);
|
|
@@ -1019,6 +1024,12 @@ program.command("init").description("Initialize a new Xertica UI project").argum
|
|
|
1019
1024
|
message: "Include AI Assistant? (XerticaAssistant chat page + sidebar variant)",
|
|
1020
1025
|
initial: true
|
|
1021
1026
|
},
|
|
1027
|
+
{
|
|
1028
|
+
type: "confirm",
|
|
1029
|
+
name: "enableDarkMode",
|
|
1030
|
+
message: "Enable dark mode support?",
|
|
1031
|
+
initial: true
|
|
1032
|
+
},
|
|
1022
1033
|
{
|
|
1023
1034
|
type: "confirm",
|
|
1024
1035
|
name: "install",
|
|
@@ -1065,10 +1076,11 @@ program.command("init").description("Initialize a new Xertica UI project").argum
|
|
|
1065
1076
|
path2.join(templatesDir, "src", "main.tsx"),
|
|
1066
1077
|
path2.join(targetDir, "src", "main.tsx")
|
|
1067
1078
|
);
|
|
1079
|
+
const disableDarkMode = response.enableDarkMode === false;
|
|
1068
1080
|
await fs2.ensureDir(path2.join(targetDir, "src", "app"));
|
|
1069
1081
|
await fs2.writeFile(
|
|
1070
1082
|
path2.join(targetDir, "src", "app", "App.tsx"),
|
|
1071
|
-
generateAppTsx(selectedLanguages)
|
|
1083
|
+
generateAppTsx(selectedLanguages, disableDarkMode)
|
|
1072
1084
|
);
|
|
1073
1085
|
await fs2.ensureDir(path2.join(targetDir, "src", "app", "components"));
|
|
1074
1086
|
await fs2.copy(
|
|
@@ -1085,7 +1097,7 @@ program.command("init").description("Initialize a new Xertica UI project").argum
|
|
|
1085
1097
|
);
|
|
1086
1098
|
await syncLocaleFiles(templatesDir, targetDir, selectedLanguages, { pruneOthers: true });
|
|
1087
1099
|
await writeLanguagesConfig(targetDir, selectedLanguages);
|
|
1088
|
-
await writeXerticaConfig(targetDir, { hasAssistant });
|
|
1100
|
+
await writeXerticaConfig(targetDir, { hasAssistant, disableDarkMode });
|
|
1089
1101
|
await fs2.ensureDir(path2.join(targetDir, "src", "app", "context"));
|
|
1090
1102
|
await fs2.copy(
|
|
1091
1103
|
path2.join(templatesDir, "src", "app", "context", "AuthContext.tsx"),
|
|
@@ -1148,7 +1160,13 @@ program.command("init").description("Initialize a new Xertica UI project").argum
|
|
|
1148
1160
|
}
|
|
1149
1161
|
}
|
|
1150
1162
|
const firstProtectedPath = hasHome ? "/home" : hasTemplate ? "/template" : "/login";
|
|
1151
|
-
const authGuardContent = generateAuthGuard({
|
|
1163
|
+
const authGuardContent = generateAuthGuard({
|
|
1164
|
+
hasLogin,
|
|
1165
|
+
hasHome,
|
|
1166
|
+
hasTemplate,
|
|
1167
|
+
hasAssistant,
|
|
1168
|
+
firstProtectedPath
|
|
1169
|
+
});
|
|
1152
1170
|
await fs2.writeFile(
|
|
1153
1171
|
path2.join(targetDir, "src", "app", "components", "AuthGuard.tsx"),
|
|
1154
1172
|
authGuardContent
|
|
@@ -1183,9 +1201,7 @@ program.command("init").description("Initialize a new Xertica UI project").argum
|
|
|
1183
1201
|
` Languages: ${langLabels}${selectedLanguages.length === 1 ? " (monolingual \u2014 LanguageSelector hidden)" : ""}`
|
|
1184
1202
|
)
|
|
1185
1203
|
);
|
|
1186
|
-
console.log(
|
|
1187
|
-
chalk.gray(" To add/remove languages later: npx xertica-ui update \u2192 Languages")
|
|
1188
|
-
);
|
|
1204
|
+
console.log(chalk.gray(" To add/remove languages later: npx xertica-ui update \u2192 Languages"));
|
|
1189
1205
|
console.log(
|
|
1190
1206
|
chalk.gray(` AI Assistant: ${hasAssistant ? "included (/assistente)" : "not included"}`)
|
|
1191
1207
|
);
|
|
@@ -1221,6 +1237,11 @@ program.command("update").alias("update-theme").description("Update theme or pro
|
|
|
1221
1237
|
description: currentConfig?.hasAssistant ? "Remove the AI Assistant from your project" : "Add the AI Assistant to your project",
|
|
1222
1238
|
value: "assistant"
|
|
1223
1239
|
},
|
|
1240
|
+
{
|
|
1241
|
+
title: "Dark Mode",
|
|
1242
|
+
description: currentConfig?.disableDarkMode ? "Enable dark mode support in your project" : "Disable dark mode support in your project",
|
|
1243
|
+
value: "darkmode"
|
|
1244
|
+
},
|
|
1224
1245
|
{
|
|
1225
1246
|
title: "Project files",
|
|
1226
1247
|
description: "Update app shell, shared, features and pages to a specific version",
|
|
@@ -1303,10 +1324,8 @@ Current languages: ${SUPPORTED_LANGUAGES.filter((l) => currentCodes.includes(l.c
|
|
|
1303
1324
|
return;
|
|
1304
1325
|
}
|
|
1305
1326
|
const summary = [];
|
|
1306
|
-
if (toAdd.length > 0)
|
|
1307
|
-
|
|
1308
|
-
if (toRemove.length > 0)
|
|
1309
|
-
summary.push(chalk.red(` - ${toRemove.join(", ")}`));
|
|
1327
|
+
if (toAdd.length > 0) summary.push(chalk.green(` + ${toAdd.join(", ")}`));
|
|
1328
|
+
if (toRemove.length > 0) summary.push(chalk.red(` - ${toRemove.join(", ")}`));
|
|
1310
1329
|
console.log(`
|
|
1311
1330
|
${summary.join("\n")}
|
|
1312
1331
|
`);
|
|
@@ -1331,19 +1350,13 @@ ${summary.join("\n")}
|
|
|
1331
1350
|
"templates"
|
|
1332
1351
|
);
|
|
1333
1352
|
const templatesSourceDir = await fs2.pathExists(installedTemplatesDir) ? installedTemplatesDir : path2.resolve(__dirname, "../templates");
|
|
1334
|
-
const { copied, removed } = await syncLocaleFiles(
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
{ pruneOthers: true }
|
|
1339
|
-
);
|
|
1340
|
-
await fs2.writeFile(
|
|
1341
|
-
path2.join(targetDir, "src", "i18n.ts"),
|
|
1342
|
-
generateI18nFile(newCodes)
|
|
1343
|
-
);
|
|
1353
|
+
const { copied, removed } = await syncLocaleFiles(templatesSourceDir, targetDir, newCodes, {
|
|
1354
|
+
pruneOthers: true
|
|
1355
|
+
});
|
|
1356
|
+
await fs2.writeFile(path2.join(targetDir, "src", "i18n.ts"), generateI18nFile(newCodes));
|
|
1344
1357
|
await fs2.writeFile(
|
|
1345
1358
|
path2.join(targetDir, "src", "app", "App.tsx"),
|
|
1346
|
-
generateAppTsx(newCodes)
|
|
1359
|
+
generateAppTsx(newCodes, currentConfig?.disableDarkMode ?? false)
|
|
1347
1360
|
);
|
|
1348
1361
|
await writeLanguagesConfig(targetDir, newCodes);
|
|
1349
1362
|
spinner2.succeed("Languages updated successfully!");
|
|
@@ -1351,9 +1364,7 @@ ${summary.join("\n")}
|
|
|
1351
1364
|
if (removed.length > 0) console.log(chalk.red(` Removed: ${removed.join(", ")}`));
|
|
1352
1365
|
if (newCodes.length === 1) {
|
|
1353
1366
|
console.log(
|
|
1354
|
-
chalk.gray(
|
|
1355
|
-
` Project is now monolingual \u2014 the LanguageSelector will auto-hide.`
|
|
1356
|
-
)
|
|
1367
|
+
chalk.gray(` Project is now monolingual \u2014 the LanguageSelector will auto-hide.`)
|
|
1357
1368
|
);
|
|
1358
1369
|
}
|
|
1359
1370
|
} catch (error) {
|
|
@@ -1384,10 +1395,18 @@ AI Assistant is currently: ${currentlyHas ? chalk.green("enabled") : chalk.red("
|
|
|
1384
1395
|
name: "action",
|
|
1385
1396
|
message: currentlyHas ? "Remove the AI Assistant from your project?" : "Add the AI Assistant to your project?",
|
|
1386
1397
|
choices: currentlyHas ? [
|
|
1387
|
-
{
|
|
1398
|
+
{
|
|
1399
|
+
title: "Remove assistant",
|
|
1400
|
+
description: "Deletes AssistantPage and assistant feature files",
|
|
1401
|
+
value: "remove"
|
|
1402
|
+
},
|
|
1388
1403
|
{ title: "Cancel", value: "cancel" }
|
|
1389
1404
|
] : [
|
|
1390
|
-
{
|
|
1405
|
+
{
|
|
1406
|
+
title: "Add assistant",
|
|
1407
|
+
description: "Copies AssistantPage and assistant feature files",
|
|
1408
|
+
value: "add"
|
|
1409
|
+
},
|
|
1391
1410
|
{ title: "Cancel", value: "cancel" }
|
|
1392
1411
|
]
|
|
1393
1412
|
});
|
|
@@ -1407,9 +1426,16 @@ AI Assistant is currently: ${currentlyHas ? chalk.green("enabled") : chalk.red("
|
|
|
1407
1426
|
console.log(chalk.gray("Update cancelled."));
|
|
1408
1427
|
return;
|
|
1409
1428
|
}
|
|
1410
|
-
const spinner2 = ora(
|
|
1429
|
+
const spinner2 = ora(
|
|
1430
|
+
action === "add" ? "Adding assistant..." : "Removing assistant..."
|
|
1431
|
+
).start();
|
|
1411
1432
|
try {
|
|
1412
|
-
const installedTemplatesDir = path2.join(
|
|
1433
|
+
const installedTemplatesDir = path2.join(
|
|
1434
|
+
targetDir,
|
|
1435
|
+
"node_modules",
|
|
1436
|
+
"xertica-ui",
|
|
1437
|
+
"templates"
|
|
1438
|
+
);
|
|
1413
1439
|
const templatesSourceDir = await fs2.pathExists(installedTemplatesDir) ? installedTemplatesDir : path2.resolve(__dirname, "../templates");
|
|
1414
1440
|
const pagesDir = path2.join(targetDir, "src", "pages");
|
|
1415
1441
|
const existingPages = await fs2.pathExists(pagesDir) ? await fs2.readdir(pagesDir) : [];
|
|
@@ -1473,6 +1499,36 @@ AI Assistant is currently: ${currentlyHas ? chalk.green("enabled") : chalk.red("
|
|
|
1473
1499
|
}
|
|
1474
1500
|
return;
|
|
1475
1501
|
}
|
|
1502
|
+
if (updateType === "darkmode") {
|
|
1503
|
+
const currentlyDisabled = currentConfig?.disableDarkMode ?? false;
|
|
1504
|
+
const { enableDarkMode } = await prompts({
|
|
1505
|
+
type: "confirm",
|
|
1506
|
+
name: "enableDarkMode",
|
|
1507
|
+
message: currentlyDisabled ? "Enable dark mode support in your project?" : "Disable dark mode support in your project? (This will hide the toggle and force light mode)",
|
|
1508
|
+
initial: !currentlyDisabled
|
|
1509
|
+
});
|
|
1510
|
+
if (enableDarkMode === void 0) return;
|
|
1511
|
+
const newDisableDarkMode = !enableDarkMode;
|
|
1512
|
+
const spinner2 = ora(
|
|
1513
|
+
newDisableDarkMode ? "Disabling dark mode..." : "Enabling dark mode..."
|
|
1514
|
+
).start();
|
|
1515
|
+
try {
|
|
1516
|
+
await writeXerticaConfig(targetDir, { disableDarkMode: newDisableDarkMode });
|
|
1517
|
+
const persistedCodes = await readLanguagesConfig(targetDir);
|
|
1518
|
+
const selectedCodes = persistedCodes && persistedCodes.length > 0 ? persistedCodes : DEFAULT_SELECTION;
|
|
1519
|
+
await fs2.writeFile(
|
|
1520
|
+
path2.join(targetDir, "src", "app", "App.tsx"),
|
|
1521
|
+
generateAppTsx(selectedCodes, newDisableDarkMode)
|
|
1522
|
+
);
|
|
1523
|
+
spinner2.succeed(
|
|
1524
|
+
newDisableDarkMode ? "Dark mode disabled successfully! (Locked to Light Mode)" : "Dark mode enabled successfully!"
|
|
1525
|
+
);
|
|
1526
|
+
} catch (error) {
|
|
1527
|
+
spinner2.fail("Failed to update dark mode configuration");
|
|
1528
|
+
console.error(error);
|
|
1529
|
+
}
|
|
1530
|
+
return;
|
|
1531
|
+
}
|
|
1476
1532
|
const { versionType } = await prompts({
|
|
1477
1533
|
type: "select",
|
|
1478
1534
|
name: "versionType",
|
|
@@ -1572,18 +1628,15 @@ AI Assistant is currently: ${currentlyHas ? chalk.green("enabled") : chalk.red("
|
|
|
1572
1628
|
if (selectedCodes.length === 0) selectedCodes = DEFAULT_SELECTION;
|
|
1573
1629
|
await writeLanguagesConfig(targetDir, selectedCodes);
|
|
1574
1630
|
}
|
|
1631
|
+
const projectConfig = await readXerticaConfig(targetDir);
|
|
1575
1632
|
await fs2.writeFile(
|
|
1576
1633
|
path2.join(targetDir, "src", "app", "App.tsx"),
|
|
1577
|
-
generateAppTsx(selectedCodes)
|
|
1578
|
-
);
|
|
1579
|
-
await fs2.writeFile(
|
|
1580
|
-
path2.join(targetDir, "src", "i18n.ts"),
|
|
1581
|
-
generateI18nFile(selectedCodes)
|
|
1634
|
+
generateAppTsx(selectedCodes, projectConfig?.disableDarkMode ?? false)
|
|
1582
1635
|
);
|
|
1636
|
+
await fs2.writeFile(path2.join(targetDir, "src", "i18n.ts"), generateI18nFile(selectedCodes));
|
|
1583
1637
|
await syncLocaleFiles(updatedTemplatesDir, targetDir, selectedCodes, {
|
|
1584
1638
|
pruneOthers: true
|
|
1585
1639
|
});
|
|
1586
|
-
const projectConfig = await readXerticaConfig(targetDir);
|
|
1587
1640
|
const pagesDir = path2.join(targetDir, "src", "pages");
|
|
1588
1641
|
const existingPages = await fs2.pathExists(pagesDir) ? await fs2.readdir(pagesDir) : [];
|
|
1589
1642
|
const hasLoginP = existingPages.includes("LoginPage.tsx");
|
|
@@ -4,5 +4,5 @@ interface ThemeToggleProps {
|
|
|
4
4
|
className?: string;
|
|
5
5
|
showLabel?: boolean;
|
|
6
6
|
}
|
|
7
|
-
export declare function ThemeToggle({ size, variant, className, showLabel, }: ThemeToggleProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function ThemeToggle({ size, variant, className, showLabel, }: ThemeToggleProps): import("react/jsx-runtime").JSX.Element | null;
|
|
8
8
|
export {};
|
|
@@ -24,7 +24,7 @@ export { Sidebar } from './layout/sidebar';
|
|
|
24
24
|
export { ThemeToggle } from './brand/theme-toggle';
|
|
25
25
|
export { LanguageSelector } from './brand/language-selector';
|
|
26
26
|
export * from '../contexts/LayoutContext';
|
|
27
|
-
export { useLanguage, LanguageProvider, DEFAULT_LANGUAGES
|
|
27
|
+
export { useLanguage, LanguageProvider, DEFAULT_LANGUAGES } from '../contexts/LanguageContext';
|
|
28
28
|
export type { Language, LanguageDefinition, LanguageProviderProps, } from '../contexts/LanguageContext';
|
|
29
29
|
export { default as i18n, registerLanguageResource } from '../i18n';
|
|
30
30
|
export { Header } from './layout/header';
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const jsxRuntime = require("react/jsx-runtime");
|
|
3
3
|
const React = require("react");
|
|
4
|
-
var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
|
|
5
4
|
const GOOGLE_MAPS_LIBRARIES = ["marker", "places", "geometry", "drawing", "maps"];
|
|
6
5
|
const GOOGLE_MAPS_ID = "xertica-google-map-script";
|
|
7
|
-
const __vite_import_meta_env__ = {};
|
|
8
6
|
const GoogleMapsContext = React.createContext({
|
|
9
7
|
isLoaded: false,
|
|
10
8
|
loadError: void 0,
|
|
@@ -12,9 +10,6 @@ const GoogleMapsContext = React.createContext({
|
|
|
12
10
|
});
|
|
13
11
|
function getInitialApiKey() {
|
|
14
12
|
var _a;
|
|
15
|
-
if (typeof { url: typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("google-maps-loader-Y-QkD-Li.cjs", document.baseURI).href } !== "undefined" && __vite_import_meta_env__ && "AIzaSyCj19NndSgZOb8057q24UbJtSsfVJiyVdo") {
|
|
16
|
-
return "AIzaSyCj19NndSgZOb8057q24UbJtSsfVJiyVdo";
|
|
17
|
-
}
|
|
18
13
|
if (typeof window === "undefined") return void 0;
|
|
19
14
|
const savedKey = (_a = window.localStorage) == null ? void 0 : _a.getItem("xertica-googlemaps-api-key");
|
|
20
15
|
if (savedKey && savedKey.trim().length > 0) {
|
|
@@ -2,7 +2,6 @@ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { createContext, useContext, useState, useRef, useEffect } from "react";
|
|
3
3
|
const GOOGLE_MAPS_LIBRARIES = ["marker", "places", "geometry", "drawing", "maps"];
|
|
4
4
|
const GOOGLE_MAPS_ID = "xertica-google-map-script";
|
|
5
|
-
const __vite_import_meta_env__ = {};
|
|
6
5
|
const GoogleMapsContext = createContext({
|
|
7
6
|
isLoaded: false,
|
|
8
7
|
loadError: void 0,
|
|
@@ -10,9 +9,6 @@ const GoogleMapsContext = createContext({
|
|
|
10
9
|
});
|
|
11
10
|
function getInitialApiKey() {
|
|
12
11
|
var _a;
|
|
13
|
-
if (typeof import.meta !== "undefined" && __vite_import_meta_env__ && "AIzaSyCj19NndSgZOb8057q24UbJtSsfVJiyVdo") {
|
|
14
|
-
return "AIzaSyCj19NndSgZOb8057q24UbJtSsfVJiyVdo";
|
|
15
|
-
}
|
|
16
12
|
if (typeof window === "undefined") return void 0;
|
|
17
13
|
const savedKey = (_a = window.localStorage) == null ? void 0 : _a.getItem("xertica-googlemaps-api-key");
|
|
18
14
|
if (savedKey && savedKey.trim().length > 0) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const googleMapsLoader = require("./google-maps-loader-
|
|
3
|
+
const googleMapsLoader = require("./google-maps-loader-BqsYL48U.cjs");
|
|
4
4
|
exports.GoogleMapsLoaderProvider = googleMapsLoader.GoogleMapsLoaderProvider;
|
|
5
5
|
exports.GoogleMapsProvider = googleMapsLoader.GoogleMapsProvider;
|
|
6
6
|
exports.reloadGoogleMaps = googleMapsLoader.reloadGoogleMaps;
|
package/dist/index.cjs.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const xerticaAssistant = require('./xertica-assistant-
|
|
6
|
-
const XerticaProvider = require('./XerticaProvider-
|
|
7
|
-
const VerifyEmailPage = require('./VerifyEmailPage-
|
|
5
|
+
const xerticaAssistant = require('./xertica-assistant-CIaUlbIt.cjs');
|
|
6
|
+
const XerticaProvider = require('./XerticaProvider-CwOkHxiT.cjs');
|
|
7
|
+
const VerifyEmailPage = require('./VerifyEmailPage-u_Dn7t1U.cjs');
|
|
8
8
|
const button = require('./button-0BlA47It.cjs');
|
|
9
9
|
const skeleton = require('./skeleton-DjiHerJn.cjs');
|
|
10
10
|
const alertDialog = require('./alert-dialog-DhwPioBa.cjs');
|
|
@@ -24,9 +24,9 @@ const useMobile = require('./use-mobile-BdXTRb0Z.cjs');
|
|
|
24
24
|
const FeatureCard = require('./FeatureCard-BZ4CYxFf.cjs');
|
|
25
25
|
const FeatureCardSkeleton = require('./FeatureCardSkeleton-pTa0YNKP.cjs');
|
|
26
26
|
const CodeBlock = require('./CodeBlock-EOvp9cVu.cjs');
|
|
27
|
-
const XerticaXLogo = require('./XerticaXLogo-
|
|
27
|
+
const XerticaXLogo = require('./XerticaXLogo-qBPhwK3g.cjs');
|
|
28
28
|
const XerticaOrbe = require('./XerticaOrbe-Uk2JML1-.cjs');
|
|
29
|
-
const sidebar = require('./sidebar-
|
|
29
|
+
const sidebar = require('./sidebar-BS1p2V7t.cjs');
|
|
30
30
|
require('react');
|
|
31
31
|
const LayoutContext = require('./LayoutContext-BEq_-n98.cjs');
|
|
32
32
|
const ThemeContext = require('./ThemeContext-CMD3z2Dz.cjs');
|
package/dist/index.es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { F as FormattedDocument, M as MarkdownMessage, a as ModernChatInput, X as XerticaAssistant, g as generateDemoResponse, g as gerarResposta } from './xertica-assistant-
|
|
2
|
-
export { X as XerticaProvider } from './XerticaProvider-
|
|
3
|
-
export { F as ForgotPasswordPage, H as HomeContent, a as HomePage, L as LoginPage, R as ResetPasswordPage, T as TemplateContent, b as TemplatePage, V as VerifyEmailPage } from './VerifyEmailPage-
|
|
1
|
+
export { F as FormattedDocument, M as MarkdownMessage, a as ModernChatInput, X as XerticaAssistant, g as generateDemoResponse, g as gerarResposta } from './xertica-assistant-B1NaSFFj.js';
|
|
2
|
+
export { X as XerticaProvider } from './XerticaProvider-BErr83Bg.js';
|
|
3
|
+
export { F as ForgotPasswordPage, H as HomeContent, a as HomePage, L as LoginPage, R as ResetPasswordPage, T as TemplateContent, b as TemplatePage, V as VerifyEmailPage } from './VerifyEmailPage-X14vhdyl.js';
|
|
4
4
|
export { B as Button, b as buttonVariants, c as cn } from './button-DZHzN1Gd.js';
|
|
5
5
|
export { C as Card, a as CardAction, b as CardContent, c as CardDescription, d as CardFooter, e as CardHeader, f as CardTitle, S as Skeleton } from './skeleton-DtR5tkYe.js';
|
|
6
6
|
export { A as AlertDialog, a as AlertDialogAction, b as AlertDialogCancel, c as AlertDialogContent, d as AlertDialogDescription, e as AlertDialogFooter, f as AlertDialogHeader, g as AlertDialogOverlay, h as AlertDialogPortal, i as AlertDialogTitle, j as AlertDialogTrigger, C as Checkbox, I as ImageWithFallback, L as Label, M as Map, P as PageHeader, k as PageHeaderDescription, l as PageHeaderHeading, R as RadioGroup, m as RadioGroupItem, S as Separator, n as Switch, T as Tabs, o as TabsContent, p as TabsList, q as TabsTrigger, u as useMapLayers } from './alert-dialog-DqlRW_An.js';
|
|
@@ -20,9 +20,9 @@ export { u as useIsMobile, a as useMobile } from './use-mobile-Ce2cBAQe.js';
|
|
|
20
20
|
export { A as ActivityCard, a as ActivityCardSkeleton, F as FeatureCard, N as NotificationCard, b as NotificationCardSkeleton, P as ProfileCard, c as ProfileCardSkeleton, d as ProjectCard, e as ProjectCardSkeleton, Q as QuickActionCard, f as QuickActionCardSkeleton } from './FeatureCard-DNycVGwT.js';
|
|
21
21
|
export { F as FeatureCardSkeleton } from './FeatureCardSkeleton-DZqc96mt.js';
|
|
22
22
|
export { C as CodeBlock } from './CodeBlock-DYkTfR0f.js';
|
|
23
|
-
export { L as LanguageSelector, T as ThemeToggle, X as XerticaLogo, a as XerticaXLogo } from './XerticaXLogo-
|
|
23
|
+
export { L as LanguageSelector, T as ThemeToggle, X as XerticaLogo, a as XerticaXLogo } from './XerticaXLogo-BX3ueACh.js';
|
|
24
24
|
export { X as XerticaOrbe } from './XerticaOrbe-jA5T2iOk.js';
|
|
25
|
-
export { H as Header, S as Sidebar } from './sidebar-
|
|
25
|
+
export { H as Header, S as Sidebar } from './sidebar-B4ZWaMrE.js';
|
|
26
26
|
import 'react';
|
|
27
27
|
export { L as LayoutProvider, u as useLayout, a as useOptionalLayout } from './LayoutContext-DNl1xSoX.js';
|
|
28
28
|
export { D as DEFAULT_LANGUAGES, L as LanguageProvider, r as registerLanguageResource, u as useLanguage } from './ThemeContext-x_F2zsnv.js';
|