@e-burgos/tucu-ui 2.0.1 → 2.0.3
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 +108 -1
- package/README.md +51 -15
- package/components/blockchain/coin-listbox.d.ts +5 -1
- package/components/buttons/button/index.d.ts +9 -1
- package/components/common/index.d.ts +1 -0
- package/components/common/tooltip.d.ts +39 -0
- package/components/inputs/file-input.d.ts +2 -2
- package/components/typography/index.d.ts +10 -1
- package/demo/components/auto-props-table.d.ts +16 -0
- package/demo/components/dynamic-sections-page.d.ts +48 -0
- package/demo/components/index.d.ts +3 -0
- package/demo/components/prop-playground.d.ts +18 -0
- package/demo/components/table-of-contents.d.ts +4 -0
- package/demo/generated/props-metadata.d.ts +23 -0
- package/demo/index.d.ts +1 -0
- package/demo/pages/blockchain/BlockchainComponents.d.ts +1 -0
- package/demo/pages/components/UiComponents.d.ts +1 -0
- package/demo/pages/components/ui-components-sections/TooltipSection.d.ts +3 -0
- package/demo/utils/constants.d.ts +1 -0
- package/documentation/APIReferenceSection-B2oYdmby.js +1 -0
- package/{APIReferenceSection-BoRiwWBC.mjs → documentation/APIReferenceSection-h-8Utbap.js} +1 -1
- package/documentation/ActiveLinkSection-C95OfpHr.js +22 -0
- package/documentation/ActiveLinkSection-CdXQGIsJ.js +81 -0
- package/{AdvancedColorSystemSection-DM_Z6OFq.mjs → documentation/AdvancedColorSystemSection-BQshRXTc.js} +1 -1
- package/documentation/AdvancedColorSystemSection-BtpxH8Mu.js +17 -0
- package/documentation/AdvancedFeaturesSection-BdL5enY8.js +1 -0
- package/{AdvancedFeaturesSection-Gtrl3Evw.mjs → documentation/AdvancedFeaturesSection-DNsHjabp.js} +1 -1
- package/{AdvancedFeaturesSection-f5fKQx25.mjs → documentation/AdvancedFeaturesSection-Ht5TTHY8.js} +1 -1
- package/documentation/AdvancedFeaturesSection-VcHwYejS.js +1 -0
- package/{AlertSection-B6vzS6iD.mjs → documentation/AlertSection-CkPDRBrP.js} +28 -73
- package/{AlertSection-DpjvpK2x.js → documentation/AlertSection-ZNoVAqQG.js} +2 -2
- package/documentation/AnchorLinkSection-BwEq_xXD.js +67 -0
- package/documentation/AnchorLinkSection-Db8dVTL1.js +19 -0
- package/{ArchitecturalPatternsComparisonSection-DKuUZTtx.mjs → documentation/ArchitecturalPatternsComparisonSection-0JvWXvga.js} +1 -1
- package/documentation/ArchitecturalPatternsComparisonSection-_ICdjaay.js +31 -0
- package/{ArchitectureOverviewSection-BE4x0gsP.mjs → documentation/ArchitectureOverviewSection-A86tJq4O.js} +1 -1
- package/documentation/ArchitectureOverviewSection-J96NVKkD.js +1 -0
- package/documentation/AuthorCardSection-BSX9oAo1.js +81 -0
- package/documentation/AuthorCardSection-CYkh23Xg.js +17 -0
- package/documentation/AvatarSection-BvtKvbAp.js +18 -0
- package/documentation/AvatarSection-LVqlXwpv.js +91 -0
- package/documentation/BadgeSection-CeyBqNzE.js +48 -0
- package/{BadgeSection-BkJYXTeL.mjs → documentation/BadgeSection-wnv6WJoJ.js} +33 -90
- package/documentation/BasicTableSection-DHR7wxMf.js +103 -0
- package/documentation/BasicTableSection-Djqd7GTc.js +35 -0
- package/{BasicUsageSection-BcOiQgDt.js → documentation/BasicUsageSection-CAOyX6Rh.js} +1 -1
- package/{BasicUsageSection-BH7JJCUv.mjs → documentation/BasicUsageSection-RB5uqmJE.js} +1 -1
- package/documentation/BestPracticesSection-7oPmBTjr.js +1 -0
- package/{BestPracticesSection-R_YvsfTN.mjs → documentation/BestPracticesSection-BAi4u6sT.js} +1 -1
- package/documentation/BestPracticesSection-C72mSxPs.js +1 -0
- package/documentation/BestPracticesSection-CCUAVucV.js +1 -0
- package/{BestPracticesSection-DNxZFvtn.mjs → documentation/BestPracticesSection-CfKUd_V5.js} +1 -1
- package/{BestPracticesSection-CLoTsbvi.mjs → documentation/BestPracticesSection-CrduKU11.js} +1 -1
- package/documentation/BestPracticesSection-D2ahvfz_.js +1 -0
- package/documentation/BestPracticesSection-DO-w9jZN.js +1 -0
- package/{BestPracticesSection-DRh8ygPz.mjs → documentation/BestPracticesSection-DVOUUyCP.js} +1 -1
- package/{BestPracticesSection-BB_4isPT.mjs → documentation/BestPracticesSection-De_JKhUW.js} +1 -1
- package/{BestPracticesSection-CzSWKg5u.mjs → documentation/BestPracticesSection-Dki1wap5.js} +1 -1
- package/documentation/BestPracticesSection-Dlv7tr8A.js +1 -0
- package/{BestPracticesSection-pFQ_PyNt.mjs → documentation/BestPracticesSection-FNEhFmPF.js} +1 -1
- package/documentation/BestPracticesSection-Y7WVzfHX.js +1 -0
- package/{BorderRadiusSection-CAXz3i4f.mjs → documentation/BorderRadiusSection-B7LfzLmt.js} +1 -1
- package/documentation/BorderRadiusSection-CuLZQqX2.js +1 -0
- package/documentation/ButtonDripSection-BaIO6Rop.js +113 -0
- package/documentation/ButtonDripSection-Rv6xpiKS.js +21 -0
- package/documentation/ButtonLoaderSection-Bkzh89oP.js +30 -0
- package/{ButtonLoaderSection-_b59OdxW.mjs → documentation/ButtonLoaderSection-DGVKD9wI.js} +55 -27
- package/documentation/CardContainerSection-DLXPs9aW.js +21 -0
- package/documentation/CardContainerSection-t72sN0zL.js +63 -0
- package/documentation/CardTitleSection-BEHmdfF6.js +19 -0
- package/documentation/CardTitleSection-CTcugicF.js +74 -0
- package/documentation/CarouselCardsSection-ByrjTL9x.js +147 -0
- package/documentation/CarouselCardsSection-DtCx9w5B.js +37 -0
- package/documentation/CarouselImageSection-BDMpTyte.js +152 -0
- package/documentation/CarouselImageSection-CknDEAfU.js +38 -0
- package/documentation/CarouselSection-Cq5jgcQD.js +24 -0
- package/documentation/CarouselSection-hLHYsvmh.js +99 -0
- package/{CheckboxSection-DFJ-BbKf.mjs → documentation/CheckboxSection-CUQtdDzh.js} +29 -113
- package/documentation/CheckboxSection-D8FFt0Os.js +26 -0
- package/{CodeExamplesSection-BPQ2gDHr.mjs → documentation/CodeExamplesSection-2v_8YfcX.js} +1 -1
- package/{CodeExamplesSection-8Fl-rNDM.js → documentation/CodeExamplesSection-Dp2gzpx3.js} +1 -1
- package/documentation/CoinCardSection-1WqRM1ph.js +13 -0
- package/{CoinCardSection-Cj3tZvUz.mjs → documentation/CoinCardSection-CPsesOWx.js} +23 -101
- package/documentation/CoinInfoCardSection-B562WBTv.js +120 -0
- package/documentation/CoinInfoCardSection-Dk6J8sls.js +12 -0
- package/documentation/CoinListBoxSection-Cu1MDV2Y.js +24 -0
- package/documentation/CoinListBoxSection-DzyzZBwk.js +106 -0
- package/documentation/CollapseSection-7-rrT_DY.js +27 -0
- package/{CollapseSection-C_VoJlv9.mjs → documentation/CollapseSection-Bym6R86D.js} +20 -60
- package/documentation/CollectionCardSection-BPILGSjR.js +17 -0
- package/documentation/CollectionCardSection-Cowt-8gl.js +61 -0
- package/documentation/CollectionSelectListSection-BUyInNdh.js +14 -0
- package/documentation/CollectionSelectListSection-C1hTywH1.js +60 -0
- package/documentation/ColorCustomizationSection-DirQ1xkR.js +1 -0
- package/{ColorCustomizationSection-Cisfasex.mjs → documentation/ColorCustomizationSection-fpbQFBeg.js} +1 -1
- package/documentation/ColorSystemSection-BIiffohC.js +1 -0
- package/{ColorSystemSection-DybUTh-a.mjs → documentation/ColorSystemSection-BTPZDmaU.js} +1 -1
- package/{CommonErrorsSection-DkI97fRW.mjs → documentation/CommonErrorsSection-BVjBH-q3.js} +1 -1
- package/documentation/CommonErrorsSection-DqohMJDt.js +1 -0
- package/documentation/ComponentAnatomySection-B6L2nQg2.js +1 -0
- package/{ComponentAnatomySection-CjOEBRRd.mjs → documentation/ComponentAnatomySection-GUman0lW.js} +1 -1
- package/documentation/ComponentStatusSection-BPatrERs.js +1 -0
- package/{ComponentStatusSection-fGn0qF_J.mjs → documentation/ComponentStatusSection-DS8Kmh6W.js} +1 -1
- package/documentation/CurrencySwapIconsSection-B_qLwzXO.js +50 -0
- package/documentation/CurrencySwapIconsSection-WWqd6aBI.js +7 -0
- package/{CustomColorPaletteSection-CEiec_Ud.mjs → documentation/CustomColorPaletteSection-Beh-1TnY.js} +1 -1
- package/{CustomColorPaletteSection-B_ESOXbz.js → documentation/CustomColorPaletteSection-DHw4bInM.js} +1 -1
- package/{CustomIconsSection-ZdYNMP4U.mjs → documentation/CustomIconsSection-BnJuOM-H.js} +1 -1
- package/documentation/CustomIconsSection-CSRr6wkJ.js +3 -0
- package/{DefiAppLogoSection-Eac0hhoc.mjs → documentation/DefiAppLogoSection-BKoj5nMS.js} +1 -1
- package/documentation/DefiAppLogoSection-BlgJ2b-2.js +36 -0
- package/documentation/DesignPrinciplesSection-DEO6bctH.js +1 -0
- package/{DesignPrinciplesSection-BVKVOHNr.mjs → documentation/DesignPrinciplesSection-sziQNoBU.js} +1 -1
- package/documentation/DrawerSection-Bl44QTjH.js +145 -0
- package/documentation/DrawerSection-Ddkq7twy.js +41 -0
- package/{DynamicRoutesSection-CDCCT0Jt.mjs → documentation/DynamicRoutesSection-CwIKExBG.js} +1 -1
- package/{DynamicRoutesSection-BOHerfbl.js → documentation/DynamicRoutesSection-DzYD6DrX.js} +1 -1
- package/{FileInputSection-CzqM7uQi.mjs → documentation/FileInputSection-2C2qHF7f.js} +1 -1
- package/documentation/FileInputSection-agGxZYT7.js +65 -0
- package/{FileStructureSection-D8YkrMN_.js → documentation/FileStructureSection-C-Z_tkDL.js} +1 -1
- package/{FileStructureSection-DEQfBxTf.mjs → documentation/FileStructureSection-CSNiAHS-.js} +1 -1
- package/{FormComponentsSection-pszqSSLB.mjs → documentation/FormComponentsSection-B021OPBW.js} +1 -1
- package/documentation/FormComponentsSection-CRsooWtI.js +1 -0
- package/{FormMethodsSection-QekBnaE6.mjs → documentation/FormMethodsSection-2ea19wxr.js} +1 -1
- package/{FormMethodsSection-DRACuD5e.js → documentation/FormMethodsSection-CUrQGm-O.js} +1 -1
- package/documentation/HamburgerSection-BzFh3gZq.js +99 -0
- package/documentation/HamburgerSection-CWAXi4d_.js +18 -0
- package/{HookCategoriesSection-BPA9UDmz.mjs → documentation/HookCategoriesSection-DZzq6nNi.js} +1 -1
- package/documentation/HookCategoriesSection-Qm1BoU9x.js +1 -0
- package/{HookDocumentationSection-MU1XW_BX.mjs → documentation/HookDocumentationSection-BMC5FTpz.js} +1 -1
- package/{HookDocumentationSection-DlnLMpij.js → documentation/HookDocumentationSection-DT_dicnF.js} +1 -1
- package/documentation/HookFeaturesSection-B08odkSW.js +1 -0
- package/{HookFeaturesSection-D2EQkvMm.mjs → documentation/HookFeaturesSection-_rCA_IiX.js} +1 -1
- package/{IconArchitectureSection-sL62NhUF.mjs → documentation/IconArchitectureSection-BP5StoRr.js} +1 -1
- package/documentation/IconArchitectureSection-Ch1nPf7C.js +1 -0
- package/documentation/IconSizingGuideSection-21B7NciU.js +1 -0
- package/{IconSizingGuideSection-i40K-Wni.mjs → documentation/IconSizingGuideSection-B39zPKV2.js} +1 -1
- package/{IconSystemAPISection-CVK7SIsn.mjs → documentation/IconSystemAPISection-BLCe41I8.js} +1 -1
- package/documentation/IconSystemAPISection-_5fho7rM.js +1 -0
- package/documentation/IconSystemBenefitsSection-BI6uLx8V.js +1 -0
- package/{IconSystemBenefitsSection-Ze9VgPLS.mjs → documentation/IconSystemBenefitsSection-DCAdQe8N.js} +1 -1
- package/documentation/ImageSection-DX_pLrem.js +80 -0
- package/documentation/ImageSection-Dl5z0QeO.js +514 -0
- package/{ImplementationExamplesSection-B2nn7oil.js → documentation/ImplementationExamplesSection-B__bLnap.js} +1 -1
- package/{ImplementationExamplesSection-4T4hwuxr.mjs → documentation/ImplementationExamplesSection-DG0Qxz66.js} +1 -1
- package/documentation/ImplementationGuidelinesSection-B3ThgoR2.js +1 -0
- package/{ImplementationGuidelinesSection-CG1tDCZA.mjs → documentation/ImplementationGuidelinesSection-Dhr_uqy_.js} +1 -1
- package/{ImplementationStatusSection-IQSN2l_7.mjs → documentation/ImplementationStatusSection-CJTb6Pgx.js} +1 -1
- package/documentation/ImplementationStatusSection-D0v0YMVu.js +1 -0
- package/documentation/ImplementedFeaturesSection-DP4JlgYL.js +1 -0
- package/{ImplementedFeaturesSection-CP7rhe9f.mjs → documentation/ImplementedFeaturesSection-uG_KGhJp.js} +1 -1
- package/documentation/InputSearcherSection-BB8KSV5W.js +32 -0
- package/{InputSearcherSection-34VhxQWj.mjs → documentation/InputSearcherSection-BOs_mYxO.js} +20 -98
- package/documentation/InputSection-Co8yrH8O.js +37 -0
- package/documentation/InputSection-DlsRR1br.js +159 -0
- package/{KeyboardNavigationSection-C8r2xlbV.mjs → documentation/KeyboardNavigationSection-B5NeU2Ls.js} +5 -5
- package/documentation/KeyboardNavigationSection-B8kjIrpD.js +1 -0
- package/{LayoutPrinciplesSection-BxU9bTX-.mjs → documentation/LayoutPrinciplesSection-Cv2qVdah.js} +1 -1
- package/documentation/LayoutPrinciplesSection-ZcukszdJ.js +1 -0
- package/{LayoutTypesSection-ByWo-tGj.mjs → documentation/LayoutTypesSection-CdWhbb-e.js} +1 -1
- package/documentation/LayoutTypesSection-Db8Phsh5.js +1 -0
- package/documentation/ListContainerSection-E2nxNQM9.js +38 -0
- package/documentation/ListContainerSection-g8e36trw.js +125 -0
- package/documentation/ListItemSection-BKMlFb_B.js +134 -0
- package/documentation/ListItemSection-CGRWmUNh.js +36 -0
- package/{LiveDemoSection-BtM__Pji.mjs → documentation/LiveDemoSection-Bi6TUjps.js} +1 -1
- package/documentation/LiveDemoSection-CNS2AHrx.js +1 -0
- package/{LiveDemonstrationsSection-C3oCeAoh.js → documentation/LiveDemonstrationsSection-8IzxP_-q.js} +1 -1
- package/{LiveDemonstrationsSection-WvNWXeuH.mjs → documentation/LiveDemonstrationsSection-BTZH9yJ4.js} +16 -16
- package/documentation/LivePriceFeedSection-BETZCxkR.js +97 -0
- package/documentation/LivePriceFeedSection-xqYzz2UJ.js +20 -0
- package/documentation/LoaderSection-Ch955wVE.js +98 -0
- package/documentation/LoaderSection-D6oWK2Bd.js +22 -0
- package/{LogoSection-JDW093zQ.mjs → documentation/LogoSection-DihjtnI3.js} +59 -111
- package/documentation/LogoSection-DwxPyRYp.js +100 -0
- package/{LucideIconsSection-CyQL7SAF.mjs → documentation/LucideIconsSection-UTZdlP4l.js} +1 -1
- package/documentation/LucideIconsSection-jyTOH9vA.js +1 -0
- package/{MFESupportSection-BmQTIoKF.mjs → documentation/MFESupportSection-CL4XaGSc.js} +1 -1
- package/{MFESupportSection-D6oq7xes.js → documentation/MFESupportSection-D5-xNtty.js} +1 -1
- package/documentation/MenuItemsGuideSection-B4A_sWeX.js +126 -0
- package/{MenuItemsGuideSection-Dl7WlJPq.mjs → documentation/MenuItemsGuideSection-CubWhWBg.js} +1 -1
- package/documentation/ModalSection-BLJU61yb.js +122 -0
- package/documentation/ModalSection-DgxQhNE3.js +29 -0
- package/documentation/NFTGridSection-CUDnvifG.js +11 -0
- package/documentation/NFTGridSection-DMCh4Qbs.js +56 -0
- package/{NestedRoutesSection-YTdNVbSk.mjs → documentation/NestedRoutesSection-DG9vKpBw.js} +1 -1
- package/{NestedRoutesSection-uykhv0dq.js → documentation/NestedRoutesSection-ekOYspAL.js} +1 -1
- package/documentation/NotificationCardSection-Db-RrZ16.js +28 -0
- package/documentation/NotificationCardSection-cE-g6SEH.js +122 -0
- package/documentation/PanelActionCardSection-Bjxx99WR.js +28 -0
- package/documentation/PanelActionCardSection-CL8Moio7.js +106 -0
- package/{PanelCardSection-DQM97Xvm.mjs → documentation/PanelCardSection-Ci9bDcSV.js} +14 -48
- package/documentation/PanelCardSection-wO7ZobnL.js +15 -0
- package/documentation/ParamTabSection-Bi80ttg5.js +92 -0
- package/{ParamTabSection-Doy0IQ4S.mjs → documentation/ParamTabSection-DzCeT2jc.js} +105 -145
- package/{PinCodeSection-BUq70uA5.mjs → documentation/PinCodeSection-BteNwNGD.js} +8 -104
- package/documentation/PinCodeSection-DwXlWFc3.js +22 -0
- package/documentation/ProgressbarSection-B1eIO6-t.js +144 -0
- package/documentation/ProgressbarSection-ibpTAyXQ.js +21 -0
- package/documentation/RadioGroupSection-CnheWpBr.js +27 -0
- package/documentation/RadioGroupSection-q1w7Zcjw.js +192 -0
- package/documentation/RadioSection-DSoD7CLU.js +130 -0
- package/documentation/RadioSection-V0sD9FtI.js +23 -0
- package/{RevealContentSection-BC-Y1-se.mjs → documentation/RevealContentSection-BK8j8yQ6.js} +26 -54
- package/documentation/RevealContentSection-Cm9Ego3J.js +21 -0
- package/{RouteConfigurationSection-B4wc-TDJ.mjs → documentation/RouteConfigurationSection-JaOww2mF.js} +1 -1
- package/{RouteConfigurationSection-DKA5hJsc.js → documentation/RouteConfigurationSection-PdMrY6xs.js} +1 -1
- package/{ScrollToTopSection-CGaxrac9.mjs → documentation/ScrollToTopSection-DktmPBqU.js} +43 -95
- package/documentation/ScrollToTopSection-_W3FULOG.js +36 -0
- package/documentation/ScrollbarSection-94c3rkLU.js +29 -0
- package/documentation/ScrollbarSection-Dhqk4MAL.js +105 -0
- package/documentation/SelectSection-CyUvjkal.js +173 -0
- package/documentation/SelectSection-RN83Da8P.js +20 -0
- package/documentation/SettingsPanelSection-DysL_TWy.js +1 -0
- package/{SettingsPanelSection-Bi64lEQf.mjs → documentation/SettingsPanelSection-oUsf1rjG.js} +1 -1
- package/documentation/ShadowsSection-COIXfeUB.js +1 -0
- package/{ShadowsSection-BhqfZ9NW.mjs → documentation/ShadowsSection-yPSwgkIh.js} +1 -1
- package/documentation/SidebarMenuSection-CF65NgkO.js +46 -0
- package/{SidebarMenuSection-C7LeiQyF.mjs → documentation/SidebarMenuSection-DoBy0kgz.js} +9 -69
- package/documentation/SidebarSection-C8M_6SXm.js +62 -0
- package/documentation/SidebarSection-D0mx7yBu.js +25 -0
- package/documentation/SizingSection-CFHOHeOX.js +1 -0
- package/{SizingSection-9yP3IzCe.mjs → documentation/SizingSection-D0JMCl2M.js} +1 -1
- package/documentation/SkeletonSection-CdftMoZS.js +204 -0
- package/documentation/SkeletonSection-l0H8ysMz.js +52 -0
- package/{SpacingSystemSection-1utDMOSG.mjs → documentation/SpacingSystemSection-CK6jg9jH.js} +1 -1
- package/documentation/SpacingSystemSection-DDLUwi7M.js +1 -0
- package/{SpinnerSection-_H5FkQYu.mjs → documentation/SpinnerSection-CBRlzSBA.js} +18 -45
- package/documentation/SpinnerSection-wKxUxjQH.js +17 -0
- package/{StandaloneAppSection-CCXM0NJW.mjs → documentation/StandaloneAppSection-3DzBLpFt.js} +1 -1
- package/{StandaloneAppSection-eDzo4JtH.js → documentation/StandaloneAppSection-4dc8jrdZ.js} +1 -1
- package/documentation/SwitchSection-BlYqsAPJ.js +20 -0
- package/documentation/SwitchSection-vGxo1SYH.js +152 -0
- package/documentation/SystemOverviewSection-1lSFqKae.js +1 -0
- package/{SystemOverviewSection-fhL1oWPb.mjs → documentation/SystemOverviewSection-BtnucKsr.js} +1 -1
- package/{TabSection-D_NLp2tT.mjs → documentation/TabSection-B7wJPrFH.js} +82 -142
- package/documentation/TabSection-BTGIy9BT.js +84 -0
- package/documentation/TabSelectSection-B8ohYHOK.js +100 -0
- package/{TabSelectSection-8ubM-IJD.mjs → documentation/TabSelectSection-DNb8f96f.js} +41 -69
- package/{TailwindConfigSection-Tzjd2fi_.mjs → documentation/TailwindConfigSection-dxsLjDuJ.js} +1 -1
- package/documentation/TailwindConfigSection-xK7ymNHB.js +19 -0
- package/documentation/TestingSection-D97U6rzs.js +12 -0
- package/{TestingSection-CIeBdZoD.mjs → documentation/TestingSection-DqHtOy40.js} +1 -1
- package/{TextareaSection-BesPi1oh.mjs → documentation/TextareaSection-LoLfm6tE.js} +27 -105
- package/documentation/TextareaSection-cq-8Cb4V.js +21 -0
- package/{ThemeArchitectureSection-BeYX2LDb.mjs → documentation/ThemeArchitectureSection-D3s-iFek.js} +1 -1
- package/documentation/ThemeArchitectureSection-kTqICQZj.js +1 -0
- package/documentation/ThemeConfigurationSection-CIorDmNk.js +1 -0
- package/{ThemeConfigurationSection-_DXIBuk6.mjs → documentation/ThemeConfigurationSection-DKZz_tZ0.js} +1 -1
- package/{ThemeHooksSection-B6KG30vE.mjs → documentation/ThemeHooksSection-C0sZ6k8a.js} +1 -1
- package/documentation/ThemeHooksSection-D-mw-Fbu.js +1 -0
- package/{ThemeProviderIntegrationSection-CW8KEw1O.mjs → documentation/ThemeProviderIntegrationSection-BfBFuERd.js} +1 -1
- package/{ThemeProviderIntegrationSection-DDSnnzZu.js → documentation/ThemeProviderIntegrationSection-macU3-6q.js} +1 -1
- package/documentation/ThemeProviderRequiredSection-BRbwv1wN.js +1 -0
- package/{ThemeProviderRequiredSection-DdQg1QoB.mjs → documentation/ThemeProviderRequiredSection-CqDOwaWl.js} +1 -1
- package/{ThemeProviderSection-CfMenkEO.mjs → documentation/ThemeProviderSection-C8LEFOeB.js} +1 -1
- package/documentation/ThemeProviderSection-CTuv8EQA.js +1 -0
- package/{ToastSection-BkgwANB7.mjs → documentation/ToastSection-DEW_viBi.js} +1 -1
- package/documentation/ToastSection-DxGzUQ0D.js +37 -0
- package/documentation/ToggleBarSection-CYRd5M5m.js +127 -0
- package/documentation/ToggleBarSection-CtsOxytE.js +37 -0
- package/documentation/TooltipSection-Cp-pLWvr.js +62 -0
- package/documentation/TooltipSection-TVehrFpU.js +186 -0
- package/documentation/TopupButtonSection-Be5-YogI.js +100 -0
- package/documentation/TopupButtonSection-ByokZIdo.js +24 -0
- package/documentation/TransactionInfoSection-BhNuZ4JD.js +65 -0
- package/documentation/TransactionInfoSection-Q0JJsVQv.js +16 -0
- package/documentation/TucuUiLogoSection-98Bljk0Z.js +26 -0
- package/{TucuUiLogoSection-D810inty.mjs → documentation/TucuUiLogoSection-BDLv3mOn.js} +18 -51
- package/documentation/TypographySection-Ck4yMFUP.js +32 -0
- package/documentation/TypographySection-CkyzEMXb.js +1 -0
- package/documentation/TypographySection-DQEpFmuX.js +144 -0
- package/{TypographySection-Blt_hgNA.mjs → documentation/TypographySection-DkMPevk3.js} +1 -1
- package/{UsageExamplesSection-lylwbuD1.mjs → documentation/UsageExamplesSection-Cbl0byP_.js} +1 -1
- package/{UsageExamplesSection-4k8TwUCa.js → documentation/UsageExamplesSection-rqFkSypt.js} +1 -1
- package/{UsingThemeSystemSection-huPZQBqy.js → documentation/UsingThemeSystemSection-CEXOimAv.js} +1 -1
- package/{UsingThemeSystemSection-CIppqU5O.mjs → documentation/UsingThemeSystemSection-ZxdD8koK.js} +1 -1
- package/{ValidationSystemSection-HRaOWXrp.js → documentation/ValidationSystemSection-DN97qk1X.js} +1 -1
- package/{ValidationSystemSection-Cg53UUsy.mjs → documentation/ValidationSystemSection-Dvtm4jJR.js} +1 -1
- package/{WCAGPrinciplesSection-BTwFRsmK.mjs → documentation/WCAGPrinciplesSection-CgrjWEgm.js} +1 -1
- package/documentation/WCAGPrinciplesSection-ichWLxLa.js +1 -0
- package/index-D874Kozv.js +1060 -0
- package/{index-DAzR4tRy.mjs → index-DsiBIFwo.js} +21263 -15156
- package/index.css +1 -1
- package/index.js +1 -1
- package/index.mjs +274 -265
- package/package.json +2 -7
- package/themes/hooks/use-theme.d.ts +12 -56
- package/themes/router/components/standalone-app-routes-provider.d.ts +2 -0
- package/APIReferenceSection-Do3yt7ne.js +0 -1
- package/ActiveLinkSection-BB7aCrpQ.mjs +0 -120
- package/ActiveLinkSection-CHaf6bJZ.js +0 -22
- package/AdvancedColorSystemSection-BFxsrrVs.js +0 -17
- package/AdvancedFeaturesSection-A0cnegz-.js +0 -1
- package/AdvancedFeaturesSection-B7R2LkO3.js +0 -1
- package/AnchorLinkSection-BdlO6yyE.mjs +0 -94
- package/AnchorLinkSection-DjRmNhj-.js +0 -19
- package/ArchitecturalPatternsComparisonSection-CLXKxiQT.js +0 -31
- package/ArchitectureOverviewSection-Bb8dgEdM.js +0 -1
- package/AuthorCardSection--HqQsn3Y.mjs +0 -110
- package/AuthorCardSection-D0nK7ZDX.js +0 -17
- package/AvatarSection-DIiKCoeu.mjs +0 -137
- package/AvatarSection-fHzl690H.js +0 -18
- package/BadgeSection-CObz7-6M.js +0 -48
- package/BasicTableSection-5L3V5Wnd.mjs +0 -169
- package/BasicTableSection-CW_tViDv.js +0 -35
- package/BestPracticesSection-BKKv9wjE.js +0 -1
- package/BestPracticesSection-BQbrwxMh.js +0 -1
- package/BestPracticesSection-BZOfT02t.js +0 -1
- package/BestPracticesSection-Cc8SwNGZ.js +0 -1
- package/BestPracticesSection-D2NW1k0c.js +0 -1
- package/BestPracticesSection-DGx3fdus.js +0 -1
- package/BestPracticesSection-DZGPp0RC.js +0 -1
- package/BorderRadiusSection-ci5hTCkd.js +0 -1
- package/ButtonDripSection-CDWS5BVV.js +0 -12
- package/ButtonDripSection-Crel4qYQ.mjs +0 -99
- package/ButtonLoaderSection-C8JQRf1R.js +0 -30
- package/CardContainerSection-Bza00CbM.mjs +0 -99
- package/CardContainerSection-DlliivB1.js +0 -21
- package/CardTitleSection-C2MWAbpR.mjs +0 -113
- package/CardTitleSection-CsFOVBLB.js +0 -19
- package/CarouselCardsSection-COFaIxm1.mjs +0 -207
- package/CarouselCardsSection-D_GHnQin.js +0 -37
- package/CarouselImageSection-BxDlSjDR.js +0 -38
- package/CarouselImageSection-CBcKSE8Z.mjs +0 -218
- package/CarouselSection-DAQy8RS-.js +0 -24
- package/CarouselSection-DW0B48eU.mjs +0 -159
- package/CheckboxSection-BomX6M2f.js +0 -26
- package/CoinCardSection-COrl9bXw.js +0 -13
- package/CoinInfoCardSection-CjRAyTbo.mjs +0 -174
- package/CoinInfoCardSection-ovl-rosk.js +0 -12
- package/CoinListBoxSection-B2QHwxIz.js +0 -24
- package/CoinListBoxSection-DjMGIbvd.mjs +0 -219
- package/CollapseSection-DiaVKxub.js +0 -27
- package/CollectionCardSection-BJj1vyoE.mjs +0 -103
- package/CollectionCardSection-Dt28fA3n.js +0 -17
- package/CollectionSelectListSection-B5TOp6J4.js +0 -14
- package/CollectionSelectListSection-B65jxkPy.mjs +0 -102
- package/ColorCustomizationSection-BzTj3xuP.js +0 -1
- package/ColorSystemSection-CMTwZxkB.js +0 -1
- package/CommonErrorsSection-DIKZDAeU.js +0 -1
- package/ComponentAnatomySection-C6dHpRwA.js +0 -1
- package/ComponentStatusSection-CcHgi-Fl.js +0 -1
- package/CurrencySwapIconsSection-CzkLMsto.js +0 -7
- package/CurrencySwapIconsSection-XnJbatX6.mjs +0 -92
- package/CustomIconsSection-BmCWosCN.js +0 -3
- package/DefiAppLogoSection-TvVJcTRn.js +0 -36
- package/DesignPrinciplesSection-3R-1wnTh.js +0 -1
- package/DrawerSection--Nuzb-5V.js +0 -41
- package/DrawerSection-BzZCXkBt.mjs +0 -188
- package/FileInputSection-D5RpMsw7.js +0 -65
- package/FormComponentsSection-BZinh5le.js +0 -1
- package/HamburgerSection-BtmUSthS.mjs +0 -108
- package/HamburgerSection-d_AMe-Md.js +0 -18
- package/HookCategoriesSection-COFFAsuw.js +0 -1
- package/HookFeaturesSection-BVC_wzno.js +0 -1
- package/IconArchitectureSection-CJrB_v2K.js +0 -1
- package/IconSizingGuideSection-Byz8GN-W.js +0 -1
- package/IconSystemAPISection-DAzMrHds.js +0 -1
- package/IconSystemBenefitsSection-DCDKoqCq.js +0 -1
- package/ImageSection-DRSbnBdO.js +0 -80
- package/ImageSection-Dqf3ww3l.mjs +0 -612
- package/ImplementationGuidelinesSection-tM_0uKa1.js +0 -1
- package/ImplementationStatusSection-D-XZdpgS.js +0 -1
- package/ImplementedFeaturesSection-DUGNN1lz.js +0 -1
- package/InputSearcherSection-CbdFO42v.js +0 -32
- package/InputSection-C34W176P.mjs +0 -265
- package/InputSection-DK09a4t3.js +0 -37
- package/KeyboardNavigationSection-DpLNdbZG.js +0 -1
- package/LayoutPrinciplesSection-DZRSBR3r.js +0 -1
- package/LayoutTypesSection-CKGOe5i3.js +0 -1
- package/ListContainerSection-DWtd6sU8.mjs +0 -191
- package/ListContainerSection-xYwkN9Uo.js +0 -38
- package/ListItemSection-BiCHpvx-.js +0 -36
- package/ListItemSection-DFPkvu6M.mjs +0 -191
- package/LiveDemoSection-Fav2CBEm.js +0 -1
- package/LivePriceFeedSection-BeILO4dy.mjs +0 -187
- package/LivePriceFeedSection-Dn8YDmu1.js +0 -20
- package/LoaderSection-BFBVizS5.mjs +0 -143
- package/LoaderSection-C_KFv8iF.js +0 -22
- package/LogoSection-DtdcFr20.js +0 -100
- package/LucideIconsSection-BiigBsyr.js +0 -1
- package/MenuItemsGuideSection-B96jpxsc.js +0 -126
- package/ModalSection-3fV5mNMe.mjs +0 -158
- package/ModalSection-eRNTuRpQ.js +0 -29
- package/NFTGridSection-CRvfnF5Y.js +0 -11
- package/NFTGridSection-CZtLuyxm.mjs +0 -122
- package/NotificationCardSection-TFhZR2E5.mjs +0 -153
- package/NotificationCardSection-vwCuNn1e.js +0 -28
- package/PanelActionCardSection-BPKAmVjO.mjs +0 -138
- package/PanelActionCardSection-CahHbMCf.js +0 -28
- package/PanelCardSection-OBsiDHxD.js +0 -15
- package/ParamTabSection-CVJ7p8sy.js +0 -92
- package/PinCodeSection-DObGVIFj.js +0 -22
- package/ProgressbarSection-CH46pHrg.js +0 -21
- package/ProgressbarSection-m3qAbDyh.mjs +0 -195
- package/RadioGroupSection-BqVy2dAz.js +0 -27
- package/RadioGroupSection-DackiFgj.mjs +0 -288
- package/RadioSection-Bdh16D1a.js +0 -23
- package/RadioSection-MzFUkVtp.mjs +0 -208
- package/RevealContentSection-DElW6lsZ.js +0 -21
- package/ScrollToTopSection-Bwyt7eAL.js +0 -36
- package/ScrollbarSection-Da_vFna5.mjs +0 -146
- package/ScrollbarSection-uGGRCW-f.js +0 -29
- package/SelectSection-B5yArKIl.mjs +0 -275
- package/SelectSection-Cpt9Dn_m.js +0 -20
- package/SettingsPanelSection-D6BkhnK7.js +0 -1
- package/ShadowsSection-CKjf8yUx.js +0 -1
- package/SidebarMenuSection-BrIhP_DH.js +0 -46
- package/SidebarSection-BC-CPBXf.js +0 -25
- package/SidebarSection-znnqHEnW.mjs +0 -122
- package/SizingSection-DdDZLNnk.js +0 -1
- package/SkeletonSection-BRq7eeQ6.mjs +0 -259
- package/SkeletonSection-Dy36d31j.js +0 -52
- package/SpacingSystemSection-FMEYRj2m.js +0 -1
- package/SpinnerSection-DLtz1omb.js +0 -17
- package/SwitchSection-CR8r2wuH.mjs +0 -230
- package/SwitchSection-D6voPZSW.js +0 -20
- package/SystemOverviewSection-CdToztih.js +0 -1
- package/TabSection-CLwDAgk5.js +0 -84
- package/TabSelectSection-Bi5d-vaj.js +0 -100
- package/TailwindConfigSection-DflNj8Gv.js +0 -19
- package/TestingSection-Q3HG2hri.js +0 -12
- package/TextareaSection-_02vZC7T.js +0 -21
- package/ThemeArchitectureSection-4CrY1Kjp.js +0 -1
- package/ThemeConfigurationSection-CbR2q8t6.js +0 -1
- package/ThemeHooksSection-BoiwpG3l.js +0 -1
- package/ThemeProviderRequiredSection-DsJy6P0M.js +0 -1
- package/ThemeProviderSection-BLdv7k-y.js +0 -1
- package/ToastSection-cDxM5ibL.js +0 -37
- package/ToggleBarSection-BRfqWaTH.mjs +0 -187
- package/ToggleBarSection-C3CIWZ2e.js +0 -37
- package/TopupButtonSection-A2WtFct_.js +0 -24
- package/TopupButtonSection-CznbRDrY.mjs +0 -145
- package/TransactionInfoSection-DuWR1QlK.js +0 -16
- package/TransactionInfoSection-RPa0gSi7.mjs +0 -113
- package/TucuUiLogoSection-COR2iw_o.js +0 -26
- package/TypographySection-B_XR5lWg.mjs +0 -129
- package/TypographySection-Cj1vjXX0.js +0 -1
- package/TypographySection-CnxPstaS.js +0 -24
- package/WCAGPrinciplesSection-CQ81AV2e.js +0 -1
- package/demo/pages/design-system/legacy/DesignSystemIntroduction.d.ts +0 -2
- package/demo/pages/design-system/legacy/ThemingGuideIntroduction.d.ts +0 -2
- package/index-Cj89iBVR.js +0 -920
- package/storybook/components/StoryContainer.d.ts +0 -6
- package/storybook/components/pages/Accessibility.d.ts +0 -1
- package/storybook/components/pages/Introduction.d.ts +0 -1
- package/storybook/hooks/useDummy.d.ts +0 -34
- /package/{1-Df9CGZha.mjs → 1-Df9CGZha.js} +0 -0
- /package/{collection-1-NeFANkbk.mjs → collection-1-NeFANkbk.js} +0 -0
- /package/{tether-DaYvmdAU.mjs → tether-DaYvmdAU.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,7 +5,102 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
-
## [
|
|
8
|
+
## [2.0.3] - 2026-02-25
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Tooltip Component**: New reusable `Tooltip` component exported from `common/index.ts`
|
|
13
|
+
- Supports `TooltipPlacement` and `TooltipColor` types
|
|
14
|
+
- Natively integrated in `Button` and `Typography` components
|
|
15
|
+
- **Button Tooltip Integration**: Enhanced `Button` component with built-in tooltip support
|
|
16
|
+
- `tooltip` prop now accepts `React.ReactNode` (previously `string`)
|
|
17
|
+
- New props: `tooltipPlacement`, `tooltipColor`, `tooltipArrow`
|
|
18
|
+
- Replaced manual hover state tooltip with `Tooltip` component
|
|
19
|
+
- **Typography Tooltip Integration**: Added native tooltip support to `Typography` component
|
|
20
|
+
- New props: `tooltip`, `tooltipPlacement`, `tooltipColor`, `tooltipArrow`
|
|
21
|
+
- Wraps element in `Tooltip` component when tooltip prop is provided
|
|
22
|
+
- **Nested Routes Support**: New `enableNestedRoutes` prop in `StandaloneAppRoutesMenuItem`
|
|
23
|
+
- When `true`, appends `/*` to the route path for internal sub-route support
|
|
24
|
+
- **TableOfContents Navigation Mode**: New props in `TableOfContents` component
|
|
25
|
+
- `navigationMode` prop (`'anchor' | 'route'`) for route-based navigation
|
|
26
|
+
- `activeSectionId` prop for active category auto-expansion
|
|
27
|
+
- **Vitest**: Migrated testing framework from Jest to Vitest (`@nx/vitest`)
|
|
28
|
+
- **Props Generation Script**: New `generate-props` script using `react-docgen-typescript`
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
|
|
32
|
+
- **useTheme Hook**: Major refactoring of the Zustand store
|
|
33
|
+
- Introduced `defaultPresets` and `defaultState` as single source of truth
|
|
34
|
+
- Created generic `Setters<T>` type for auto-generated setter types
|
|
35
|
+
- New `IThemeState` interface (values only) separated from `ITheme` (state + setters + actions)
|
|
36
|
+
- `createSetters()` function dynamically generates ~19 setters (eliminates ~60 lines of boilerplate)
|
|
37
|
+
- `restoreDefaultColors` uses `defaultPresets` instead of duplicating values
|
|
38
|
+
- `partialize` now filters functions generically instead of listing each key manually
|
|
39
|
+
- **ThemeWrapper Component**: Major refactoring (~255→70 lines of logic)
|
|
40
|
+
- Introduced `PALETTE_MAP` and `resolveColor()` helper to eliminate 12 repetitive if/else blocks
|
|
41
|
+
- Theme initialization with a single `useTheme.setState()` instead of multiple callbacks
|
|
42
|
+
- Custom palette colors applied in a single `setState` batch instead of 12 individual setter calls
|
|
43
|
+
- Dark/light mode toggle with `classList.toggle()` instead of `remove()`+`add()`
|
|
44
|
+
- Menu items memoized with `useMemo`
|
|
45
|
+
- **SettingsDrawer Component**: Major refactoring
|
|
46
|
+
- New `COLOR_CONFIG` record as single source of truth for 12 color types
|
|
47
|
+
- `ColorSwitcher` simplified: uses dynamic Zustand selectors instead of destructuring entire store
|
|
48
|
+
- ColorSwitchers rendered with `.map()` instead of 12 hardcoded instances
|
|
49
|
+
- Migrated arbitrary CSS values (`[70px]`, `[12px]`, `[32px]`) to standard Tailwind classes
|
|
50
|
+
- **Select Component**: Refactored controlled state synchronization
|
|
51
|
+
- Immediate state initialization from `value` prop (avoids React "uncontrolled to controlled" warning)
|
|
52
|
+
- Removed `setTimeout(100ms)` hack for state sync
|
|
53
|
+
- Extracted `resolveOption()` helper
|
|
54
|
+
- **RadioGroup Component**: Removed `setTimeout(100ms)` in controlled `value` synchronization
|
|
55
|
+
- `setSelectedValue` is now called directly in `useEffect`
|
|
56
|
+
- **FormField Component**: Added `field.value` normalization
|
|
57
|
+
- Checkboxes/radios normalized to `!!field.value`
|
|
58
|
+
- Other fields normalized to `field.value ?? ''`
|
|
59
|
+
- Select `value` normalized with `?? ''`
|
|
60
|
+
- **Nx & Toolchain**: Upgraded from Nx 21.6.3 → 22.5.2
|
|
61
|
+
- Updated `@swc/core`, `@swc/cli`, `@swc/helpers`, `@swc-node/register`
|
|
62
|
+
- Added `"type": "module"` to root `package.json`
|
|
63
|
+
- **tsconfig.lib.json**: Include pattern changed from specific path to generic glob `src/**/*.tsx?raw`
|
|
64
|
+
|
|
65
|
+
### Removed
|
|
66
|
+
|
|
67
|
+
- **Storybook**: Completely removed Storybook and all related files
|
|
68
|
+
- Removed `.storybook/` configuration directory
|
|
69
|
+
- Removed all 76 story files (~15,297 lines)
|
|
70
|
+
- Removed `StoryContainer`, internal pages (Introduction, Accessibility), and `useDummy` hook
|
|
71
|
+
- Demo app now serves as the interactive documentation
|
|
72
|
+
- **Storybook Dependencies**: Removed `storybook`, `@storybook/addon-docs`, `@storybook/builder-vite`, `@storybook/react-vite`, `@chromatic-com/storybook`, `@chromatic-com/turbosnap-helper`, `eslint-plugin-storybook`, `remark-gfm`
|
|
73
|
+
- **Jest Dependencies**: Removed `jest`, `jest-environment-jsdom`, `jest-util`, `ts-jest`, `babel-jest`, `@types/jest`, `@nx/jest`
|
|
74
|
+
- **Storybook Scripts**: Removed `storybook`, `build-storybook`, `publish-storybook`, `serve-storybook`, `chromatic`, `storybook-doctor` scripts
|
|
75
|
+
|
|
76
|
+
### Fixed
|
|
77
|
+
|
|
78
|
+
- **Select Component**: Fixed initial render without visible selection when used with `react-hook-form`
|
|
79
|
+
- State now initializes immediately from `value` prop instead of delayed `setTimeout`
|
|
80
|
+
- **RadioGroup Component**: Fixed state sync race conditions by removing `setTimeout` hack
|
|
81
|
+
- **FormField Component**: Fixed React "uncontrolled to controlled" warnings
|
|
82
|
+
- Normalized `undefined` values to `''` or `false` depending on input type
|
|
83
|
+
- **FileInput Component**: Added `displayName = 'FileInput'` for better React DevTools debugging
|
|
84
|
+
- **CoinListBox Component**: Added `displayName = 'CoinListBox'` for better React DevTools debugging
|
|
85
|
+
|
|
86
|
+
### Documentation
|
|
87
|
+
|
|
88
|
+
- **Demo App Refactoring**: Major refactoring of 76+ documentation section files
|
|
89
|
+
- Cleaner, more consistent patterns across all component documentation
|
|
90
|
+
- New exports in `demo/components/index.ts` and `demo/index.ts`
|
|
91
|
+
- Updated all UI component, input, blockchain, design system, features, and form system sections
|
|
92
|
+
|
|
93
|
+
## [2.0.2] - 2026-01-22
|
|
94
|
+
|
|
95
|
+
### Changed
|
|
96
|
+
|
|
97
|
+
- **Horizontal Navigation Menu**: Improved responsive text sizing
|
|
98
|
+
- Menu item text now dynamically adjusts based on screen size
|
|
99
|
+
- Text sizes: `11px` (mobile) → `12px` (sm) → `13px` (md) → `14px` (lg+)
|
|
100
|
+
- Better space utilization on smaller screens while maintaining readability
|
|
101
|
+
- Applied to both dropdown and non-dropdown menu items
|
|
102
|
+
|
|
103
|
+
## [2.0.1] - 2026-01-17
|
|
9
104
|
|
|
10
105
|
### Changed
|
|
11
106
|
|
|
@@ -353,6 +448,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
353
448
|
|
|
354
449
|
## Version History
|
|
355
450
|
|
|
451
|
+
- **2.0.3** - Removed Storybook, new Tooltip component, major theme/component refactoring, migrated from Jest to Vitest, upgraded Nx to 22.5.2
|
|
452
|
+
- **2.0.2** - Responsive navigation menu improvements with dynamic text sizing
|
|
356
453
|
- **2.0.0** - Major release with advanced routing system (Standalone & MFE), enhanced theming (34+ presets, 12-layer architecture), comprehensive documentation improvements, and architectural pattern support
|
|
357
454
|
- **1.2.0** - Major input components update, new carousel system, and comprehensive improvements
|
|
358
455
|
- **1.1.1** - Beta version publication
|
|
@@ -361,6 +458,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
361
458
|
|
|
362
459
|
## Migration Notes
|
|
363
460
|
|
|
461
|
+
### Version 2.0.3 Migration
|
|
462
|
+
|
|
463
|
+
If you're upgrading from version 2.0.2 to 2.0.3:
|
|
464
|
+
|
|
465
|
+
- **Storybook Removed**: Storybook is no longer included. Use the demo app for interactive documentation
|
|
466
|
+
- **Button `tooltip` Prop**: Changed from `string` to `React.ReactNode`. Existing string values still work
|
|
467
|
+
- **Button Tooltip Props**: New optional props `tooltipPlacement`, `tooltipColor`, `tooltipArrow` available
|
|
468
|
+
- **Testing**: Migrated from Jest to Vitest. Update test configuration accordingly
|
|
469
|
+
- **Nx**: Upgraded to Nx 22.5.2. Run `pnpm install` to update dependencies
|
|
470
|
+
|
|
364
471
|
### Version 2.0.0 Migration
|
|
365
472
|
|
|
366
473
|
If you're upgrading from version 1.x to 2.0.0:
|
package/README.md
CHANGED
|
@@ -29,6 +29,10 @@ Specialized components for DeFi applications, NFT marketplaces, and crypto walle
|
|
|
29
29
|
|
|
30
30
|
Complete Lucide React integration + 97+ custom-designed icons including blockchain/crypto icons, layout controls, social brands, and specialized UI elements.
|
|
31
31
|
|
|
32
|
+
### **💬 Tooltip System**
|
|
33
|
+
|
|
34
|
+
Flexible Tooltip component with portal-based rendering (`createPortal`), 4 placement options (top, bottom, left, right), 7 color themes, smart auto-repositioning within the viewport, configurable enter/leave delays, and ARIA-compliant accessibility.
|
|
35
|
+
|
|
32
36
|
### **♿ Accessibility First**
|
|
33
37
|
|
|
34
38
|
WCAG 2.1 AA compliant components with proper ARIA attributes and keyboard navigation.
|
|
@@ -41,7 +45,7 @@ Responsive design across all components with support for ultra-wide displays (up
|
|
|
41
45
|
|
|
42
46
|
Built-in React Router integration with support for two architectural patterns:
|
|
43
47
|
|
|
44
|
-
- **Standalone App** (default): Automatic route generation from menuItems
|
|
48
|
+
- **Standalone App** (default): Automatic route generation from menuItems with nested routes support (`enableNestedRoutes`)
|
|
45
49
|
- **Micro Frontends (MFE)**: Explicit route configuration with basePath and route protection
|
|
46
50
|
|
|
47
51
|
### **🎨 Tailwind CSS v4 Complete Integration**
|
|
@@ -79,6 +83,7 @@ Built on industry-leading libraries for maximum reliability:
|
|
|
79
83
|
- **[Framer Motion](https://www.framer.com/motion/)** - Smooth animations and transitions
|
|
80
84
|
- **[Recharts](https://recharts.org/)** - Composable charting library for data visualization
|
|
81
85
|
- **[Swiper](https://swiperjs.com/)** - Modern mobile touch slider
|
|
86
|
+
- **[Vitest](https://vitest.dev/)** - Fast unit testing framework powered by Vite
|
|
82
87
|
|
|
83
88
|
## 📦 Installation
|
|
84
89
|
|
|
@@ -886,6 +891,32 @@ import { Carousel, CarouselCards, CarouselImage } from '@e-burgos/tucu-ui';
|
|
|
886
891
|
/>
|
|
887
892
|
```
|
|
888
893
|
|
|
894
|
+
### **Tooltip Component**
|
|
895
|
+
|
|
896
|
+
```tsx
|
|
897
|
+
import { Tooltip } from '@e-burgos/tucu-ui';
|
|
898
|
+
|
|
899
|
+
// Basic Tooltip
|
|
900
|
+
<Tooltip content="Edit profile" placement="top">
|
|
901
|
+
<button>Hover me</button>
|
|
902
|
+
</Tooltip>
|
|
903
|
+
|
|
904
|
+
// Tooltip with custom color and delay
|
|
905
|
+
<Tooltip content="Delete item" color="danger" enterDelay={300} arrow>
|
|
906
|
+
<button>Delete</button>
|
|
907
|
+
</Tooltip>
|
|
908
|
+
|
|
909
|
+
// Rich content Tooltip
|
|
910
|
+
<Tooltip
|
|
911
|
+
content={<div><strong>Pro tip:</strong> Use keyboard shortcuts for faster navigation.</div>}
|
|
912
|
+
placement="right"
|
|
913
|
+
color="primary"
|
|
914
|
+
arrow
|
|
915
|
+
>
|
|
916
|
+
<span>Help</span>
|
|
917
|
+
</Tooltip>
|
|
918
|
+
```
|
|
919
|
+
|
|
889
920
|
### **Feedback Components**
|
|
890
921
|
|
|
891
922
|
```tsx
|
|
@@ -1008,7 +1039,7 @@ Tucu UI includes comprehensive documentation pages to help you get started:
|
|
|
1008
1039
|
- **Hooks Utilities** - Custom React hooks for common patterns
|
|
1009
1040
|
- **Accessibility** - WCAG 2.1 AA compliance and best practices
|
|
1010
1041
|
- **Components** - Component library overview and usage patterns
|
|
1011
|
-
- **UI Components** - 43+ UI components (buttons, cards, dialogs, notifications, etc.)
|
|
1042
|
+
- **UI Components** - 43+ UI components (buttons, cards, dialogs, tooltips, notifications, etc.)
|
|
1012
1043
|
- **Input Components** - 11+ form input components
|
|
1013
1044
|
- **Blockchain Components** - 9+ specialized DeFi/Web3 components
|
|
1014
1045
|
- **Form System** - Complete form solution with validation
|
|
@@ -1299,33 +1330,38 @@ Tucu UI is built with accessibility in mind:
|
|
|
1299
1330
|
git clone <repository-url>
|
|
1300
1331
|
|
|
1301
1332
|
# Install dependencies
|
|
1302
|
-
|
|
1333
|
+
pnpm install
|
|
1303
1334
|
|
|
1304
|
-
# Run
|
|
1305
|
-
|
|
1335
|
+
# Run the demo for development
|
|
1336
|
+
pnpm nx run demo:serve
|
|
1306
1337
|
|
|
1307
1338
|
# Build the library
|
|
1308
|
-
|
|
1339
|
+
pnpm nx run tucu-ui:build
|
|
1309
1340
|
|
|
1310
1341
|
# Run tests
|
|
1311
|
-
|
|
1342
|
+
pnpm nx run tucu-ui:test
|
|
1312
1343
|
```
|
|
1313
1344
|
|
|
1314
1345
|
### **Nx Monorepo Structure**
|
|
1315
1346
|
|
|
1316
1347
|
```
|
|
1317
|
-
|
|
1348
|
+
tucu-ui/
|
|
1318
1349
|
├── apps/
|
|
1319
|
-
│
|
|
1350
|
+
│ ├── demo/ # Documentation & demo app (tucu-ui.netlify.app)
|
|
1351
|
+
│ └── test-lib/ # Library testing playground
|
|
1352
|
+
├── examples/
|
|
1353
|
+
│ ├── standalone/ # Standalone architecture example
|
|
1354
|
+
│ └── micro-frontends/ # Micro Frontends architecture example
|
|
1320
1355
|
├── ui/
|
|
1321
|
-
│ └── tucu-ui/ # Main library
|
|
1356
|
+
│ └── tucu-ui/ # Main library (@e-burgos/tucu-ui)
|
|
1322
1357
|
│ ├── src/
|
|
1323
|
-
│ │ ├── components/ # All UI components
|
|
1324
|
-
│ │ ├── hooks/
|
|
1325
|
-
│ │ ├── themes/
|
|
1326
|
-
│ │ └──
|
|
1358
|
+
│ │ ├── components/ # All UI components (70+)
|
|
1359
|
+
│ │ ├── hooks/ # Utility hooks
|
|
1360
|
+
│ │ ├── themes/ # Theme system (Zustand + CSS tokens)
|
|
1361
|
+
│ │ └── styles.css # Tailwind CSS v4 configuration
|
|
1327
1362
|
│ └── package.json
|
|
1328
|
-
|
|
1363
|
+
├── scripts/ # Build & generation scripts
|
|
1364
|
+
└── nx.json # Nx workspace configuration
|
|
1329
1365
|
```
|
|
1330
1366
|
|
|
1331
1367
|
## 📄 License
|
|
@@ -11,4 +11,8 @@ export type CoinListBoxProps = {
|
|
|
11
11
|
className?: string;
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
};
|
|
14
|
-
|
|
14
|
+
declare function CoinListBox({ className, coins, selectedCoin, setSelectedCoin, disabled, }: CoinListBoxProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
declare namespace CoinListBox {
|
|
16
|
+
var displayName: string;
|
|
17
|
+
}
|
|
18
|
+
export default CoinListBox;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { LoaderSizeTypes, LoaderVariantTypes } from '../../loaders/loader';
|
|
3
|
+
import { TooltipPlacement, TooltipColor } from '../../common/tooltip';
|
|
3
4
|
type ShapeNames = 'rounded' | 'pill' | 'circle';
|
|
4
5
|
type VariantNames = 'solid' | 'ghost' | 'transparent';
|
|
5
6
|
type ColorNames = 'primary' | 'white' | 'gray' | 'success' | 'info' | 'warning' | 'danger';
|
|
@@ -14,7 +15,14 @@ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElemen
|
|
|
14
15
|
fullWidth?: boolean;
|
|
15
16
|
loaderSize?: LoaderSizeTypes;
|
|
16
17
|
loaderVariant?: LoaderVariantTypes;
|
|
17
|
-
|
|
18
|
+
/** Tooltip text or content to display on hover */
|
|
19
|
+
tooltip?: React.ReactNode;
|
|
20
|
+
/** Tooltip placement relative to button */
|
|
21
|
+
tooltipPlacement?: TooltipPlacement;
|
|
22
|
+
/** Tooltip color theme */
|
|
23
|
+
tooltipColor?: TooltipColor;
|
|
24
|
+
/** Show an arrow on the tooltip */
|
|
25
|
+
tooltipArrow?: boolean;
|
|
18
26
|
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
19
27
|
'aria-label'?: string;
|
|
20
28
|
'aria-describedby'?: string;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right';
|
|
3
|
+
export type TooltipColor = 'dark' | 'light' | 'primary' | 'success' | 'info' | 'warning' | 'danger';
|
|
4
|
+
export interface TooltipProps {
|
|
5
|
+
/** Content to display inside the tooltip */
|
|
6
|
+
content: React.ReactNode;
|
|
7
|
+
/** Preferred placement of the tooltip relative to anchor */
|
|
8
|
+
placement?: TooltipPlacement;
|
|
9
|
+
/** Color theme of the tooltip. When undefined, automatically uses 'dark' in light mode and 'light' in dark mode based on the current theme. */
|
|
10
|
+
color?: TooltipColor;
|
|
11
|
+
/** Show an arrow pointing to the anchor */
|
|
12
|
+
arrow?: boolean;
|
|
13
|
+
/** Delay in ms before the tooltip appears */
|
|
14
|
+
enterDelay?: number;
|
|
15
|
+
/** Delay in ms before the tooltip hides */
|
|
16
|
+
leaveDelay?: number;
|
|
17
|
+
/** Whether the tooltip is disabled */
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
/** Additional class name for the tooltip container */
|
|
20
|
+
className?: string;
|
|
21
|
+
/** The element that triggers the tooltip */
|
|
22
|
+
children: React.ReactElement;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Tooltip component that uses a React Portal to render above all other DOM elements.
|
|
26
|
+
* Supports configurable placement, arrow, color theme, and enter/leave delays.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```tsx
|
|
30
|
+
* <Tooltip content="Hello!" placement="top" arrow>
|
|
31
|
+
* <Button>Hover me</Button>
|
|
32
|
+
* </Tooltip>
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare function Tooltip({ content, placement, color, arrow, enterDelay, leaveDelay, disabled, className, children, }: TooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
export declare namespace Tooltip {
|
|
37
|
+
var displayName: string;
|
|
38
|
+
}
|
|
39
|
+
export default Tooltip;
|
|
@@ -38,7 +38,7 @@ export interface FileInputProps extends Omit<React.InputHTMLAttributes<HTMLInput
|
|
|
38
38
|
* You can use props like `disabled`, `multiple`, `capture` etc.
|
|
39
39
|
*/
|
|
40
40
|
export declare function FileInput({ accept, children, label, containerProps, additionalInputProps, placeholderText, containerClassName, wrapperClassName, labelClassName, onChange, multiple, ...props }: React.PropsWithChildren<FileInputProps>, ref: ForwardedRef<HTMLInputElement>): import("react/jsx-runtime").JSX.Element;
|
|
41
|
-
declare const
|
|
41
|
+
declare const FileInputWithRef: import('react').ForwardRefExoticComponent<FileInputProps & {
|
|
42
42
|
children?: import('react').ReactNode | undefined;
|
|
43
43
|
} & import('react').RefAttributes<HTMLInputElement>>;
|
|
44
|
-
export default
|
|
44
|
+
export default FileInputWithRef;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TooltipPlacement, TooltipColor } from '../common/tooltip';
|
|
1
2
|
declare const classes: {
|
|
2
3
|
h1: string;
|
|
3
4
|
h2: string;
|
|
@@ -55,10 +56,18 @@ export interface TypographyProps {
|
|
|
55
56
|
fontFamily?: keyof typeof fontFamilyClasses;
|
|
56
57
|
/** Add custom classes for extra style */
|
|
57
58
|
className?: string;
|
|
59
|
+
/** Tooltip text or content to display on hover */
|
|
60
|
+
tooltip?: React.ReactNode;
|
|
61
|
+
/** Tooltip placement relative to the text element */
|
|
62
|
+
tooltipPlacement?: TooltipPlacement;
|
|
63
|
+
/** Tooltip color theme */
|
|
64
|
+
tooltipColor?: TooltipColor;
|
|
65
|
+
/** Show an arrow on the tooltip */
|
|
66
|
+
tooltipArrow?: boolean;
|
|
58
67
|
}
|
|
59
68
|
/**
|
|
60
69
|
* Text component is the used to render text and paragraphs within an interface using well-defined typographic styles.
|
|
61
70
|
* It renders a `<p>` tag by default.
|
|
62
71
|
*/
|
|
63
|
-
export declare function Typography({ tag, title, children, className, color, fontFamily, }: React.PropsWithChildren<TypographyProps>): import("react/jsx-runtime").JSX.Element;
|
|
72
|
+
export declare function Typography({ tag, title, children, className, color, fontFamily, tooltip, tooltipPlacement, tooltipColor, tooltipArrow, }: React.PropsWithChildren<TypographyProps>): import("react/jsx-runtime").JSX.Element;
|
|
64
73
|
export default Typography;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface AutoPropsTableProps {
|
|
3
|
+
/** Component name as it appears in propsRegistry (e.g. "Button", "Input") */
|
|
4
|
+
componentName: string;
|
|
5
|
+
/** Optional title override (defaults to "{ComponentName} Props") */
|
|
6
|
+
title?: string;
|
|
7
|
+
/** Whether to show the component source file path */
|
|
8
|
+
showFilePath?: boolean;
|
|
9
|
+
/** Additional className for the container */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** Filter props by name (show only matching) */
|
|
12
|
+
filterProps?: string[];
|
|
13
|
+
/** Hide props by name */
|
|
14
|
+
hideProps?: string[];
|
|
15
|
+
}
|
|
16
|
+
export declare const AutoPropsTable: React.FC<AutoPropsTableProps>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface SectionConfig {
|
|
3
|
+
/** Unique identifier (kebab-case), used in URL path */
|
|
4
|
+
id: string;
|
|
5
|
+
/** Display label for the TOC item */
|
|
6
|
+
label: string;
|
|
7
|
+
/** Optional category for grouping in the TOC sidebar */
|
|
8
|
+
category?: string;
|
|
9
|
+
/** Lazy-loaded section component */
|
|
10
|
+
component: React.LazyExoticComponent<React.ComponentType<Record<string, never>>>;
|
|
11
|
+
}
|
|
12
|
+
export interface DynamicSectionsPageProps {
|
|
13
|
+
/** Array of section configurations */
|
|
14
|
+
sections: SectionConfig[];
|
|
15
|
+
/** Hero card or intro content shown at the top */
|
|
16
|
+
hero: React.ReactNode;
|
|
17
|
+
/** Title for the table of contents sidebar */
|
|
18
|
+
tocTitle?: string;
|
|
19
|
+
/** Optional placeholder when no section is selected (defaults to a sections grid) */
|
|
20
|
+
placeholder?: React.ReactNode;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Hook that extracts the current section from the URL wildcard param
|
|
24
|
+
* and provides navigation helpers.
|
|
25
|
+
*
|
|
26
|
+
* Requires the parent route to be registered with `enableNestedRoutes: true`
|
|
27
|
+
* (which appends /* to the route path).
|
|
28
|
+
*/
|
|
29
|
+
export declare function useDynamicSection(sectionIds: string[]): {
|
|
30
|
+
sectionId: string | undefined;
|
|
31
|
+
basePath: string;
|
|
32
|
+
navigateToSection: (id: string) => void;
|
|
33
|
+
navigateToBase: () => void;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Generic page component that renders a TOC sidebar + a single section
|
|
37
|
+
* based on the current URL. Each section gets its own route/page.
|
|
38
|
+
*
|
|
39
|
+
* Usage:
|
|
40
|
+
* ```tsx
|
|
41
|
+
* const sections: SectionConfig[] = [
|
|
42
|
+
* { id: 'button', label: 'Button', category: 'Buttons', component: lazy(() => import('./ButtonSection')) },
|
|
43
|
+
* ];
|
|
44
|
+
* <DynamicSectionsPage sections={sections} hero={<HeroCard ... />} />
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare const DynamicSectionsPage: React.FC<DynamicSectionsPageProps>;
|
|
48
|
+
export default DynamicSectionsPage;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
export * from './auto-props-table';
|
|
2
|
+
export * from './dynamic-sections-page';
|
|
1
3
|
export * from './hero-card';
|
|
2
4
|
export * from './nav-options';
|
|
3
5
|
export * from './playground-button';
|
|
6
|
+
export * from './prop-playground';
|
|
4
7
|
export * from './table-of-contents';
|
|
5
8
|
export * from './lazy-component-section';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface PropPlaygroundProps {
|
|
3
|
+
/** Component name from propsRegistry */
|
|
4
|
+
componentName: string;
|
|
5
|
+
/** The component to render with interactive props */
|
|
6
|
+
children: (props: any) => React.ReactNode;
|
|
7
|
+
/** Default prop values to start with */
|
|
8
|
+
defaultValues?: Record<string, any>;
|
|
9
|
+
/** Props to exclude from the playground controls */
|
|
10
|
+
excludeProps?: string[];
|
|
11
|
+
/** Only show these props in the controls */
|
|
12
|
+
includeProps?: string[];
|
|
13
|
+
/** Additional className */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Title override */
|
|
16
|
+
title?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const PropPlayground: React.FC<PropPlaygroundProps>;
|
|
@@ -11,6 +11,10 @@ interface TableOfContentsProps {
|
|
|
11
11
|
onItemClick?: (item: TableOfContentsItem) => void;
|
|
12
12
|
children?: React.ReactNode;
|
|
13
13
|
onSidebarToggle?: (isOpen: boolean) => void;
|
|
14
|
+
/** Navigation mode: 'anchor' scrolls to sections (default), 'route' navigates via onItemClick */
|
|
15
|
+
navigationMode?: 'anchor' | 'route';
|
|
16
|
+
/** Active section ID (used in 'route' mode to highlight the current item) */
|
|
17
|
+
activeSectionId?: string;
|
|
14
18
|
}
|
|
15
19
|
export declare const TableOfContents: React.FC<TableOfContentsProps>;
|
|
16
20
|
export default TableOfContents;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AUTO-GENERATED — Do not edit manually.
|
|
3
|
+
* Generated by: scripts/generate-props.ts
|
|
4
|
+
* Last updated: 2026-02-25T13:56:00.470Z
|
|
5
|
+
* Components: 91
|
|
6
|
+
*/
|
|
7
|
+
export interface PropInfo {
|
|
8
|
+
name: string;
|
|
9
|
+
type: string;
|
|
10
|
+
defaultValue: string | null;
|
|
11
|
+
required: boolean;
|
|
12
|
+
description: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ComponentMeta {
|
|
15
|
+
displayName: string;
|
|
16
|
+
description: string;
|
|
17
|
+
filePath: string;
|
|
18
|
+
props: PropInfo[];
|
|
19
|
+
}
|
|
20
|
+
export declare const propsRegistry: Record<string, ComponentMeta>;
|
|
21
|
+
export declare function getComponentProps(componentName: string): ComponentMeta | undefined;
|
|
22
|
+
export declare function getComponentNames(): string[];
|
|
23
|
+
export declare function searchComponents(query: string): ComponentMeta[];
|
package/demo/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const DOCUMENTATION_URL: any;
|
|
2
|
+
export declare const NPM_PACKAGE_URL: any;
|
|
2
3
|
export declare const GITHUB_URL = "https://github.com/e-burgos/tucu-ui";
|
|
3
4
|
export declare const INTRODUCTION_DOCS_URL: string;
|
|
4
5
|
export declare const LAYOUT_SYSTEM_DOCS_URL: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../index-D874Kozv.js");require("lucide-react");require("react-router-dom");require("react");require("react-dom");const l=()=>{const i=[{key:"prop",label:"Property",render:r=>e.jsx("code",{className:"text-xs text-brand",children:String(r)})},{key:"type",label:"Type",render:r=>e.jsx("code",{className:"text-xs",children:String(r)})},{key:"required",label:"Required",render:r=>String(r)==="Yes"?e.jsx(t.Badge,{variant:"outline",className:"text-xs",children:"Yes"}):e.jsx(t.Badge,{variant:"outline",className:"text-xs",children:"Optional"})},{key:"description",label:"Description"}],s=[{prop:"name",type:"string",required:"Yes",description:"Display name for navigation menu"},{prop:"path",type:"string",required:"Yes",description:"URL path for the route"},{prop:"component",type:"JSX.Element",required:"Yes",description:"Component to render for this route"},{prop:"icon",type:"React.ReactNode",required:"Optional",description:"Icon to display in navigation"},{prop:"dropdownItems",type:"StandaloneAppRoutesMenuItem[]",required:"Optional",description:"Array of nested sub-routes"},{prop:"hide",type:"boolean",required:"Optional",description:"Hide route from navigation menu"},{prop:"isPublic",type:"boolean",required:"Optional",description:"Whether the route is publicly accessible (default: true)"}],n=[{key:"prop",label:"Property",render:r=>e.jsx("code",{className:"text-xs text-brand",children:String(r)})},{key:"type",label:"Type",render:r=>e.jsx("code",{className:"text-xs",children:String(r)})},{key:"required",label:"Required",render:r=>String(r)==="Yes"?e.jsx(t.Badge,{variant:"outline",className:"text-xs",children:"Yes"}):e.jsx(t.Badge,{variant:"outline",className:"text-xs",children:"Optional"})},{key:"description",label:"Description"}],a=[{prop:"key",type:"string",required:"Yes",description:"Unique identifier for the route"},{prop:"path",type:"string",required:"Yes",description:"URL path for the route"},{prop:"element",type:"JSX.Element",required:"Yes",description:"Component to render for this route"},{prop:"isPublic",type:"boolean",required:"Optional",description:"Whether the route is publicly accessible (default: false)"},{prop:"disabled",type:"boolean",required:"Optional",description:"Whether the route is disabled"}];return e.jsx("div",{className:"space-y-8",children:e.jsx(t.CardContainer,{children:e.jsx(t.CardTitle,{title:"API Reference",className:"mt-2 mb-6",children:e.jsxs("div",{className:"space-y-6",children:[e.jsx(t.Typography,{tag:"p",className:"text-gray-600 dark:text-gray-400",children:"Complete API reference for the routing system components and interfaces."}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx(t.Typography,{tag:"h4",className:"font-semibold",children:"StandaloneAppRoutesMenuItem Properties"}),e.jsx(t.BasicTable,{columns:i,data:s})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(t.Typography,{tag:"h4",className:"font-semibold",children:"IAppRouteConfig Properties (MFE)"}),e.jsx(t.BasicTable,{columns:n,data:a})]})]})]})})})})};exports.default=l;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as e, jsxs as r } from "react/jsx-runtime";
|
|
2
|
-
import { C as s, a as l, T as i,
|
|
2
|
+
import { C as s, a as l, T as i, l as n, G as a } from "../index-DsiBIFwo.js";
|
|
3
3
|
import "lucide-react";
|
|
4
4
|
import "react-router-dom";
|
|
5
5
|
import "react";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../index-D874Kozv.js");require("lucide-react");require("react-router-dom");require("react");require("react-dom");const i=()=>e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx(t.Typography,{tag:"h2",className:"text-3xl md:text-4xl font-bold",children:"ActiveLink"}),e.jsx(t.Typography,{tag:"p",className:"text-xl text-gray-600 dark:text-gray-400 max-w-2xl mx-auto",children:"A link component that automatically applies an active class when the current path matches the link path."})]}),e.jsx(t.CardContainer,{className:"overflow-hidden",children:e.jsx(t.CardTitle,{title:"Basic Examples",className:"mt-2 mb-2",children:e.jsx("div",{className:"w-full p-4 sm:p-6",children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs(t.CardContainer,{className:"p-4",children:[e.jsx(t.Typography,{tag:"h5",className:"mb-3",children:"Active Link"}),e.jsxs("div",{className:"flex gap-4",children:[e.jsx(t.ActiveLink,{to:"/components",path:"/components",children:"Components"}),e.jsx(t.ActiveLink,{to:"/about",path:"/about",children:"About"})]})]}),e.jsxs(t.CardContainer,{className:"p-4",children:[e.jsx(t.Typography,{tag:"h5",className:"mb-3",children:"With Custom Active Class"}),e.jsx(t.ActiveLink,{to:"/home",path:"/home",activeClassName:"text-brand font-bold",children:"Home"})]})]})})})}),e.jsx(t.PropPlayground,{componentName:"ActiveLink",defaultValues:{path:"/demo",activeClassName:"active"},excludeProps:["state","to"],children:a=>e.jsx(t.ActiveLink,{...a,to:"#",children:"Active Link Example"})}),e.jsx(t.AutoPropsTable,{componentName:"ActiveLink"}),e.jsx(t.CardContainer,{className:"overflow-hidden",children:e.jsx(t.CardTitle,{title:"Code Example",className:"mt-2 mb-2",children:e.jsx("div",{className:"w-full p-4 sm:p-6",children:e.jsx(t.CodeBlock,{language:"tsx",code:`import { ActiveLink } from '@e-burgos/tucu-ui';
|
|
2
|
+
|
|
3
|
+
// Basic usage
|
|
4
|
+
<ActiveLink to="/components" path="/components">
|
|
5
|
+
Components
|
|
6
|
+
</ActiveLink>
|
|
7
|
+
|
|
8
|
+
// With custom active class
|
|
9
|
+
<ActiveLink
|
|
10
|
+
to="/home"
|
|
11
|
+
path="/home"
|
|
12
|
+
activeClassName="text-brand font-bold"
|
|
13
|
+
>
|
|
14
|
+
Home
|
|
15
|
+
</ActiveLink>
|
|
16
|
+
|
|
17
|
+
// Navigation example
|
|
18
|
+
<nav>
|
|
19
|
+
<ActiveLink to="/" path="/">Home</ActiveLink>
|
|
20
|
+
<ActiveLink to="/about" path="/about">About</ActiveLink>
|
|
21
|
+
<ActiveLink to="/contact" path="/contact">Contact</ActiveLink>
|
|
22
|
+
</nav>`})})})})]});exports.default=i;
|