cortex-react-components 3.2.2 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-5GFRQ4NR.mjs → chunk-2BKXIIFJ.mjs} +183 -36
- package/dist/{chunk-LQPN7L4Z.mjs → chunk-3DWDGYDG.mjs} +1 -1
- package/dist/{chunk-PTDP7PZK.mjs → chunk-3G7VLQG5.mjs} +1 -1
- package/dist/{chunk-56NFUKPK.mjs → chunk-3K6EVFOW.mjs} +1 -1
- package/dist/{chunk-PFA2P52R.mjs → chunk-3RYHYKVQ.mjs} +1 -1
- package/dist/{chunk-XDV7AVPQ.mjs → chunk-4JSM5VYZ.mjs} +2 -2
- package/dist/{chunk-VMYEV3FG.mjs → chunk-4YRR74Y4.mjs} +1 -1
- package/dist/{chunk-I4MTJN23.mjs → chunk-6A7T3O6T.mjs} +6 -5
- package/dist/{chunk-G46GZ57S.mjs → chunk-6LF4K7ER.mjs} +5 -5
- package/dist/{chunk-2363JAWB.mjs → chunk-6S7EQDLL.mjs} +1 -1
- package/dist/{chunk-ZBCZGWDU.mjs → chunk-7HHLKQE4.mjs} +1 -1
- package/dist/{chunk-YUBPY7L4.mjs → chunk-7LM2P6N3.mjs} +1 -1
- package/dist/{chunk-VMDVXNP5.mjs → chunk-AKMJBGUU.mjs} +16 -16
- package/dist/{chunk-V4I6U2SE.mjs → chunk-AVNBD2X5.mjs} +1 -1
- package/dist/{chunk-2L6AWG6R.mjs → chunk-AZ5MV7NO.mjs} +2 -2
- package/dist/{chunk-YOKF4FEM.mjs → chunk-BMZG77IE.mjs} +1 -1
- package/dist/chunk-BXEALHGJ.mjs +142 -0
- package/dist/{chunk-V6YEUAIH.mjs → chunk-CV7GOXGO.mjs} +2 -2
- package/dist/{chunk-YKX5AGFQ.mjs → chunk-D3AHBPI5.mjs} +1 -1
- package/dist/{chunk-2VF2D4DL.mjs → chunk-DGDELNS3.mjs} +1 -1
- package/dist/{chunk-RJZMTP7J.mjs → chunk-DHB2L7O2.mjs} +1 -1
- package/dist/{chunk-ZED4UNH7.mjs → chunk-DPTILX6A.mjs} +2 -2
- package/dist/{chunk-RQGM66Q4.mjs → chunk-DRLNETNN.mjs} +1 -1
- package/dist/{chunk-673GELPP.mjs → chunk-DVWMM7AI.mjs} +3 -3
- package/dist/{chunk-O633TXQG.mjs → chunk-EEVXIKNB.mjs} +1 -1
- package/dist/{chunk-EQYJUXKZ.mjs → chunk-EGCBZZGV.mjs} +1 -1
- package/dist/{chunk-HK2DQNBU.mjs → chunk-ETV6EEYB.mjs} +4 -4
- package/dist/{chunk-ORWAJNJO.mjs → chunk-F6SQTC6R.mjs} +3 -3
- package/dist/{chunk-25EF7VEC.mjs → chunk-F7JPOQIC.mjs} +1 -1
- package/dist/{chunk-JQNNFILH.mjs → chunk-FWRVXOCU.mjs} +1 -1
- package/dist/{chunk-4YSV633W.mjs → chunk-GAWBCR4S.mjs} +1 -1
- package/dist/{chunk-ZWV2O6CK.mjs → chunk-GR45UN4U.mjs} +3 -3
- package/dist/chunk-GXN5ZNBZ.mjs +135 -0
- package/dist/{chunk-CIFGBEFV.mjs → chunk-HNBHBFLY.mjs} +1 -1
- package/dist/{chunk-USEHRJFR.mjs → chunk-HNVHGBNE.mjs} +1 -1
- package/dist/{chunk-QPO45D6F.mjs → chunk-I2MVZVXE.mjs} +1 -1
- package/dist/chunk-IC4N2KYF.mjs +401 -0
- package/dist/{chunk-QOYK2HBL.mjs → chunk-IM5B557Z.mjs} +19 -19
- package/dist/{chunk-J5ZETWHG.mjs → chunk-IQ67MHAY.mjs} +2 -2
- package/dist/{chunk-UFBLZW2N.mjs → chunk-IWQEM5KO.mjs} +2 -2
- package/dist/{chunk-UJI3Y73K.mjs → chunk-J5GM5CJK.mjs} +3 -3
- package/dist/chunk-JCSRFM37.mjs +595 -0
- package/dist/{chunk-QMFGV3M5.mjs → chunk-JOGVCBYP.mjs} +1 -1
- package/dist/{chunk-K6N5K2A7.mjs → chunk-JWMQOARK.mjs} +4 -4
- package/dist/{chunk-DSVXGGGV.mjs → chunk-K5ZNBHQO.mjs} +1 -1
- package/dist/{chunk-UYUP2DAL.mjs → chunk-KHFPDDTO.mjs} +1 -1
- package/dist/{chunk-CVH5TDS6.mjs → chunk-KJVAS4I7.mjs} +27 -12
- package/dist/{chunk-4PC77ZEN.mjs → chunk-KMGTUNRZ.mjs} +1 -1
- package/dist/{chunk-LVLEZS7Q.mjs → chunk-KYY7BMXI.mjs} +1 -1
- package/dist/{chunk-GDMWNNYC.mjs → chunk-LRMDRQRJ.mjs} +2 -2
- package/dist/{chunk-CIXAM7LW.mjs → chunk-LRTEGIZ7.mjs} +12 -12
- package/dist/{chunk-XGHUG2WQ.mjs → chunk-MDG2I4PB.mjs} +1 -1
- package/dist/{chunk-S27KJUKF.mjs → chunk-N5HTSJLI.mjs} +1 -1
- package/dist/{chunk-MPFWWJYT.mjs → chunk-N5Q2DYUR.mjs} +2 -2
- package/dist/{chunk-3W5H36HK.mjs → chunk-NNH7EC5Z.mjs} +1 -1
- package/dist/{chunk-5Z7JRCOM.mjs → chunk-NSYYRG6A.mjs} +1 -1
- package/dist/{chunk-JD7SR5V3.mjs → chunk-NUAJQK4H.mjs} +64 -8
- package/dist/{chunk-SSF2CAW7.mjs → chunk-OR3XMMEK.mjs} +9 -9
- package/dist/{chunk-RC6YHGVV.mjs → chunk-PE7KJR4A.mjs} +1 -1
- package/dist/{chunk-V2BZ7RE7.mjs → chunk-PLFX66EX.mjs} +1 -1
- package/dist/{chunk-E6M7XAYT.mjs → chunk-Q45EN2QB.mjs} +1 -1
- package/dist/{chunk-22E2TZBE.mjs → chunk-QDO6BAAN.mjs} +13 -5
- package/dist/{chunk-P4P6J2SW.mjs → chunk-QJGBUBSB.mjs} +2 -2
- package/dist/{chunk-TIGSOXUA.mjs → chunk-QJQ66DYZ.mjs} +1 -1
- package/dist/{chunk-ZF2DELZ5.mjs → chunk-QXOHY4AT.mjs} +39 -3
- package/dist/{chunk-NF4JWFAZ.mjs → chunk-RFMER577.mjs} +1 -1
- package/dist/{chunk-PIGOOCU6.mjs → chunk-RNHGLZYP.mjs} +1 -1
- package/dist/{chunk-QUGB53Z3.mjs → chunk-RV4VRLGN.mjs} +1 -1
- package/dist/{chunk-KCPLIAIF.mjs → chunk-SJI6X5DK.mjs} +2 -2
- package/dist/{chunk-B63AROCU.mjs → chunk-SMX6BH2N.mjs} +1 -1
- package/dist/{chunk-L3SZS7PC.mjs → chunk-SNUES6JA.mjs} +1 -1
- package/dist/{chunk-6R3QP53O.mjs → chunk-TZH6L2OH.mjs} +2 -2
- package/dist/{chunk-EJJNYV7C.mjs → chunk-U6ZFUE5O.mjs} +2 -2
- package/dist/{chunk-OPJMXB4K.mjs → chunk-UCK4TW63.mjs} +4 -4
- package/dist/{chunk-HI6QOZHR.mjs → chunk-V6VAVPKH.mjs} +1 -1
- package/dist/{chunk-PRMR24PY.mjs → chunk-WAR2OXXK.mjs} +4 -4
- package/dist/{chunk-4PFDNMLD.mjs → chunk-WEIPDZOJ.mjs} +1 -1
- package/dist/{chunk-TLCSKAWQ.mjs → chunk-WZBXR7J3.mjs} +5 -5
- package/dist/{chunk-FECAR2TE.mjs → chunk-X4GP2O3Y.mjs} +2 -2
- package/dist/{chunk-UNEYYMLL.mjs → chunk-XCZCWSOY.mjs} +2 -2
- package/dist/{chunk-QE3XE3LW.mjs → chunk-Y4KJTMKO.mjs} +1 -1
- package/dist/{chunk-AOSO2JVA.mjs → chunk-YUZYLKBD.mjs} +1 -1
- package/dist/{chunk-YFOEG4PP.mjs → chunk-Z6MYLHDW.mjs} +1 -1
- package/dist/{chunk-TP5AUT7W.mjs → chunk-ZJB7AFL5.mjs} +2 -2
- package/dist/components/AdvancedComponents/AppSidebar.d.ts +1 -1
- package/dist/components/AdvancedComponents/AppSidebar.js +480 -301
- package/dist/components/AdvancedComponents/AppSidebar.mjs +3 -3
- package/dist/components/AdvancedComponents/index.js +480 -301
- package/dist/components/AdvancedComponents/index.mjs +3 -3
- package/dist/components/AdvancedComponents/user-selection.d.ts +1 -1
- package/dist/components/AdvancedComponents/user-selection.js +1 -1
- package/dist/components/AdvancedComponents/user-selection.mjs +1 -1
- package/dist/components/Blocks/Banner.mjs +3 -3
- package/dist/components/Blocks/CallToAction.mjs +3 -3
- package/dist/components/Blocks/CollapsibleArea.mjs +4 -4
- package/dist/components/Blocks/Content.mjs +4 -4
- package/dist/components/Blocks/FeaturesBlock.mjs +3 -3
- package/dist/components/Blocks/RelatedPosts.mjs +4 -4
- package/dist/components/Blocks/RenderBlocks.mjs +6 -6
- package/dist/components/Blocks/ReusableContentBlock.mjs +6 -6
- package/dist/components/Blocks/index.mjs +7 -7
- package/dist/components/Cards/ContentCard.mjs +3 -3
- package/dist/components/Cards/FeatureCard.mjs +3 -3
- package/dist/components/Cards/index.mjs +3 -3
- package/dist/components/Chat/CopilotInterface.d.ts +1 -1
- package/dist/components/Chat/CopilotInterface.js +527 -330
- package/dist/components/Chat/CopilotInterface.mjs +5 -5
- package/dist/components/Chat/chat-session-sidebar.d.ts +1 -1
- package/dist/components/Chat/demo-long-messages.js +527 -330
- package/dist/components/Chat/demo-long-messages.mjs +5 -5
- package/dist/components/Chat/demo-tests.js +527 -330
- package/dist/components/Chat/demo-tests.mjs +5 -5
- package/dist/components/Chat/demo.js +527 -330
- package/dist/components/Chat/demo.mjs +5 -5
- package/dist/components/Chat/example-usage.js +527 -330
- package/dist/components/Chat/example-usage.mjs +6 -6
- package/dist/components/Chat/example-with-vercel-ai.js +527 -330
- package/dist/components/Chat/example-with-vercel-ai.mjs +5 -5
- package/dist/components/Chat/index.js +527 -330
- package/dist/components/Chat/index.mjs +8 -8
- package/dist/components/DeliveryLead/DeliveryLeadSubmissionWithList.mjs +2 -2
- package/dist/components/DeliveryLead/index.mjs +4 -4
- package/dist/components/DigitalColleagues/Views/TeamsIndexView.d.ts +1 -9
- package/dist/components/DigitalColleagues/Views/TeamsIndexView.js +22 -27
- package/dist/components/DigitalColleagues/Views/TeamsIndexView.mjs +4 -6
- package/dist/components/DigitalColleagues/index.d.ts +0 -18
- package/dist/components/DigitalColleagues/index.js +0 -16754
- package/dist/components/DigitalColleagues/test-data.d.ts +1 -112
- package/dist/components/DigitalColleagues/test-data.js +482 -308
- package/dist/components/DigitalColleagues/test-data.mjs +1 -5
- package/dist/components/{Foundary → Foundry}/AppSidebarLeft.js +3 -3
- package/dist/components/{DigitalColleagues → Foundry}/AppSidebarLeft.mjs +3 -3
- package/dist/components/{Foundary → Foundry}/DashboardHeader.js +2 -2
- package/dist/components/{Foundary → Foundry}/DashboardHeader.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/Knowledge/add-knowledge-modal.js +2 -2
- package/dist/components/{Foundary → Foundry}/Knowledge/add-knowledge-modal.mjs +4 -4
- package/dist/components/{Foundary → Foundry}/Knowledge/add-team-context.js +3 -3
- package/dist/components/{Foundary → Foundry}/Knowledge/add-team-context.mjs +4 -4
- package/dist/components/{Foundary → Foundry}/Knowledge/manage-team-context.js +2 -2
- package/dist/components/{Foundary → Foundry}/Knowledge/manage-team-context.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/LandingMenu.js +2 -2
- package/dist/components/{Foundary → Foundry}/LandingMenu.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/Login.js +2 -2
- package/dist/components/{Foundary → Foundry}/Login.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/MainPage.js +4 -4
- package/dist/components/{DigitalColleagues → Foundry}/MainPage.mjs +9 -9
- package/dist/components/{DigitalColleagues → Foundry}/ManagementSidebar.d.ts +2 -2
- package/dist/components/{Foundary → Foundry}/ManagementSidebar.js +12 -4
- package/dist/components/{DigitalColleagues → Foundry}/ManagementSidebar.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/Pages/dashboardpage.js +1860 -2162
- package/dist/components/{Foundary → Foundry}/Pages/dashboardpage.mjs +42 -41
- package/dist/components/{Foundary → Foundry}/README-document-edit.js +1 -1
- package/dist/components/{Foundary → Foundry}/README-document-edit.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/README-document-preview.js +1 -1
- package/dist/components/{Foundary → Foundry}/README-document-preview.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Bold.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Bold.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Headings.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Headings.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Italic.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Italic.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/StrikeThrough.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/StrikeThrough.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Subscript.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Subscript.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Superscript.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Superscript.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Underline.js +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/Icons/Underline.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/components/RawUploadComponent/index.js +2 -2
- package/dist/components/{Foundary → Foundry}/RichText/components/RawUploadComponent/index.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/RichText/index.js +18 -18
- package/dist/components/{Foundary → Foundry}/RichText/index.mjs +12 -12
- package/dist/components/{Foundary → Foundry}/RichText/nodes/image-node.js +4 -4
- package/dist/components/{Foundary → Foundry}/RichText/nodes/image-node.mjs +2 -2
- package/dist/components/{Foundary → Foundry}/RichText/plugins/image-plugin.js +7 -7
- package/dist/components/{Foundary → Foundry}/RichText/plugins/image-plugin.mjs +3 -3
- package/dist/components/{Foundary → Foundry}/RichText/plugins/toolbar-plugin.js +16 -16
- package/dist/components/{Foundary → Foundry}/RichText/plugins/toolbar-plugin.mjs +11 -11
- package/dist/components/{Foundary → Foundry}/SearchableSelect.js +2 -2
- package/dist/components/{DigitalColleagues → Foundry}/SearchableSelect.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/Views/ColleaguesView.d.ts +4 -2
- package/dist/components/{Foundary → Foundry}/Views/ColleaguesView.js +526 -211
- package/dist/components/{Foundary → Foundry}/Views/ColleaguesView.mjs +12 -10
- package/dist/components/Foundry/Views/KnowledgeView.docs.js +2 -0
- package/dist/components/Foundry/Views/KnowledgeView.docs.mjs +7 -0
- package/dist/components/{Foundary → Foundry}/Views/KnowledgeView.js +29 -29
- package/dist/components/{Foundary → Foundry}/Views/KnowledgeView.mjs +21 -21
- package/dist/components/{Foundary → Foundry}/Views/TeamsIndexView.js +9 -8
- package/dist/components/{Foundary → Foundry}/Views/TeamsIndexView.mjs +4 -4
- package/dist/components/{Foundary → Foundry}/Views/index.js +2929 -2050
- package/dist/components/{Foundary → Foundry}/Views/index.mjs +64 -61
- package/dist/components/Foundry/add-colleague-to-team-form.d.ts +10 -0
- package/dist/components/{DigitalColleagues/colleague-type-selection.js → Foundry/add-colleague-to-team-form.js} +156 -91
- package/dist/components/{DigitalColleagues/colleague-card.mjs → Foundry/add-colleague-to-team-form.mjs} +3 -4
- package/dist/components/{.archive → Foundry}/app-card.d.ts +1 -1
- package/dist/components/Foundry/app-card.js +2669 -0
- package/dist/components/{DigitalColleagues/digital-colleague-options.mjs → Foundry/app-card.mjs} +5 -3
- package/dist/components/{Foundary → Foundry}/colleague-card.js +2 -2
- package/dist/components/{Foundary → Foundry}/colleague-card.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/colleague-form.js +4 -4
- package/dist/components/{Foundary → Foundry}/colleague-form.mjs +2 -2
- package/dist/components/{Foundary → Foundry}/colleague-type-selection.js +2 -2
- package/dist/components/{DigitalColleagues → Foundry}/colleague-type-selection.mjs +1 -1
- package/dist/components/Foundry/digital-colleague-selection.d.ts +9 -0
- package/dist/components/{DigitalColleagues/digital-colleague-clone.js → Foundry/digital-colleague-selection.js} +59 -100
- package/dist/components/{DigitalColleagues/digital-colleague-clone.mjs → Foundry/digital-colleague-selection.mjs} +3 -3
- package/dist/components/{Foundary → Foundry}/document-edit.js +20 -20
- package/dist/components/{Foundary → Foundry}/document-edit.mjs +13 -13
- package/dist/components/{Foundary → Foundry}/document-preview-examples.js +24 -24
- package/dist/components/{Foundary → Foundry}/document-preview-examples.mjs +15 -15
- package/dist/components/{Foundary → Foundry}/document-preview.js +22 -22
- package/dist/components/{Foundary → Foundry}/document-preview.mjs +14 -14
- package/dist/components/{Foundary → Foundry}/file-edit.js +20 -20
- package/dist/components/{Foundary → Foundry}/file-edit.mjs +16 -16
- package/dist/components/{Foundary → Foundry}/foundary-clone.js +3 -3
- package/dist/components/{Foundary → Foundry}/foundary-clone.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/foundary-layout.d.ts +3 -3
- package/dist/components/{Foundary → Foundry}/foundary-layout.js +485 -306
- package/dist/components/{Foundary → Foundry}/foundary-layout.mjs +6 -6
- package/dist/components/{Foundary → Foundry}/foundary-options.d.ts +2 -1
- package/dist/components/{Foundary → Foundry}/foundary-options.js +39 -3
- package/dist/components/{Foundary → Foundry}/foundary-options.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/index.d.ts +3 -1
- package/dist/components/{Foundary → Foundry}/index.js +3465 -3267
- package/dist/components/{Foundary → Foundry}/index.mjs +102 -95
- package/dist/components/{Foundary → Foundry}/knowledge-browser.js +24 -24
- package/dist/components/{Foundary → Foundry}/knowledge-browser.mjs +15 -15
- package/dist/components/{Foundary → Foundry}/knowledge-search.js +2 -2
- package/dist/components/{DigitalColleagues → Foundry}/knowledge-search.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/team-form.js +2 -2
- package/dist/components/{Foundary → Foundry}/team-form.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/test-data.js +1 -1
- package/dist/components/{Foundary → Foundry}/test-data.mjs +1 -1
- package/dist/components/{Foundary → Foundry}/types.d.ts +26 -0
- package/dist/components/{Foundary → Foundry}/types.js +1 -1
- package/dist/components/HeaderFooter/Header.mjs +1 -1
- package/dist/components/HeaderFooter/SectionHeading.mjs +4 -4
- package/dist/components/HeaderFooter/index.mjs +11 -11
- package/dist/components/Heros/DashboardHero/DashboardHero.js +5 -4
- package/dist/components/Heros/DashboardHero/DashboardHero.mjs +2 -2
- package/dist/components/Heros/DashboardHero/index.js +5 -4
- package/dist/components/Heros/DashboardHero/index.mjs +2 -2
- package/dist/components/Heros/HighImpact/index.mjs +4 -4
- package/dist/components/Heros/LowImpact/index.mjs +4 -4
- package/dist/components/Heros/MediumImpact/index.mjs +4 -4
- package/dist/components/Heros/PostHero/index.mjs +3 -3
- package/dist/components/Heros/RenderHero.mjs +7 -7
- package/dist/components/Heros/index.js +5 -4
- package/dist/components/Heros/index.mjs +14 -14
- package/dist/components/Layouts/OutputHeaderFooter.mjs +4 -4
- package/dist/components/Layouts/Print.mjs +8 -8
- package/dist/components/Layouts/SlideShow.mjs +9 -9
- package/dist/components/Layouts/index.mjs +13 -13
- package/dist/components/Menus/SidebarLeft.mjs +3 -3
- package/dist/components/Menus/SidebarLeftMulti.mjs +3 -3
- package/dist/components/Menus/SidebarRight.mjs +3 -3
- package/dist/components/Menus/index.mjs +5 -5
- package/dist/components/Payload/RichText/index.mjs +3 -3
- package/dist/components/Payload/RichText/serialize.mjs +3 -3
- package/dist/components/Payload/index.mjs +3 -3
- package/dist/components/Projects/AddEpicModal.d.ts +1 -1
- package/dist/components/Projects/AddSprintModal.d.ts +1 -1
- package/dist/components/Projects/AddTaskModal.d.ts +1 -1
- package/dist/components/Projects/EpicFilter.d.ts +6 -2
- package/dist/components/Projects/EpicFilter.js +6 -6
- package/dist/components/Projects/EpicFilter.mjs +6 -6
- package/dist/components/Projects/EpicsView.d.ts +12 -2
- package/dist/components/Projects/EpicsView.js +3980 -736
- package/dist/components/Projects/EpicsView.mjs +46 -4
- package/dist/components/Projects/FileView.d.ts +1 -1
- package/dist/components/Projects/FileView.js +24 -23
- package/dist/components/Projects/FileView.mjs +20 -20
- package/dist/components/Projects/GanttView.d.ts +13 -0
- package/dist/components/{DigitalColleagues/colleague-card.js → Projects/GanttView.js} +559 -260
- package/dist/components/Projects/GanttView.mjs +20 -0
- package/dist/components/Projects/KanbanBoardView.d.ts +1 -1
- package/dist/components/Projects/KanbanBoardView.js +25 -24
- package/dist/components/Projects/KanbanBoardView.mjs +26 -26
- package/dist/components/Projects/KanbanColumn.d.ts +1 -1
- package/dist/components/Projects/PlanningView.d.ts +1 -1
- package/dist/components/Projects/PlanningView.js +5 -4
- package/dist/components/Projects/PlanningView.mjs +3 -3
- package/dist/components/Projects/ProjectPage.d.ts +3 -3
- package/dist/components/Projects/ProjectPage.js +1744 -983
- package/dist/components/Projects/ProjectPage.mjs +39 -38
- package/dist/components/Projects/ProjectView.d.ts +2 -2
- package/dist/components/Projects/ProjectView.js +1227 -662
- package/dist/components/Projects/ProjectView.mjs +34 -33
- package/dist/components/Projects/ProjectsIndexView.d.ts +1 -1
- package/dist/components/Projects/ProjectsIndexView.js +5 -4
- package/dist/components/Projects/ProjectsIndexView.mjs +4 -4
- package/dist/components/Projects/SprintBoardView.d.ts +4 -1
- package/dist/components/Projects/SprintBoardView.js +271 -129
- package/dist/components/Projects/SprintBoardView.mjs +26 -26
- package/dist/components/Projects/TaskCard.d.ts +1 -1
- package/dist/components/Projects/TaskDetailsModal.d.ts +1 -1
- package/dist/components/Projects/TaskDetailsModal.js +20 -20
- package/dist/components/Projects/TaskDetailsModal.mjs +20 -20
- package/dist/components/Projects/TaskSidebar.d.ts +1 -1
- package/dist/components/Projects/TaskSidebar.js +2 -2
- package/dist/components/Projects/TaskSidebar.mjs +2 -2
- package/dist/components/Projects/TasksView.d.ts +1 -1
- package/dist/components/Projects/TasksView.js +5 -4
- package/dist/components/Projects/TasksView.mjs +3 -3
- package/dist/components/Projects/business-unit-switcher.d.ts +1 -1
- package/dist/components/Projects/business-units.d.ts +1 -1
- package/dist/components/Projects/file-list.d.ts +1 -1
- package/dist/components/Projects/file-list.js +19 -19
- package/dist/components/Projects/file-list.mjs +17 -17
- package/dist/components/Projects/index.js +557 -250
- package/dist/components/Projects/index.mjs +35 -35
- package/dist/components/Projects/project-card.d.ts +1 -1
- package/dist/components/Projects/project-form.d.ts +1 -1
- package/dist/components/Projects/team-card.d.ts +1 -1
- package/dist/components/Projects/team-switcher-bar.d.ts +1 -1
- package/dist/components/Projects/test-data.d.ts +448 -29
- package/dist/components/dc-temp/dashboard-integration-example.js +497 -325
- package/dist/components/dc-temp/dashboard-integration-example.mjs +6 -6
- package/dist/components/dc-temp/index.d.ts +3 -3
- package/dist/components/dc-temp/index.js +3773 -3007
- package/dist/components/dc-temp/index.mjs +35 -33
- package/dist/components/dc-temp/mock-data.d.ts +2 -2
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +3337 -3100
- package/dist/components/index.mjs +163 -157
- package/dist/components/ui/index.mjs +9 -9
- package/dist/components/ui/sidebar.mjs +2 -2
- package/dist/decorators/Intranet.css +54 -14
- package/dist/decorators/Intranet.mjs +99 -99
- package/dist/globals.css +54 -14
- package/dist/hooks/use-local-storage.d.ts +2 -1
- package/dist/hooks/use-local-storage.js +5 -4
- package/dist/hooks/use-local-storage.mjs +1 -1
- package/dist/index.js +3345 -3108
- package/dist/index.mjs +174 -168
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/pages/Blog.mjs +12 -12
- package/dist/pages/Documentation.mjs +9 -9
- package/dist/pages/IndexPage.mjs +17 -17
- package/dist/pages/Intranet.mjs +3 -3
- package/dist/pages/LandingPage.mjs +111 -111
- package/dist/pages/Page.mjs +16 -16
- package/dist/pages/Publish.mjs +100 -100
- package/dist/pages/Website.mjs +19 -19
- package/dist/sections/AboutSection.mjs +5 -5
- package/dist/sections/BlogDetail.mjs +4 -4
- package/dist/sections/BlogList.mjs +5 -5
- package/dist/sections/BlogListSection.mjs +5 -5
- package/dist/sections/ContactSection.mjs +5 -5
- package/dist/sections/PageSections.mjs +109 -109
- package/dist/sections/PricingSection.mjs +5 -5
- package/dist/sections/ServiceDetail.mjs +4 -4
- package/dist/sections/ServiceDetailSection.mjs +4 -4
- package/dist/sections/ServiceSection.mjs +100 -100
- package/dist/sections/form/index.mjs +2 -2
- package/dist/sections/index.mjs +109 -109
- package/package.json +5 -2
- package/dist/chunk-5MMSWFVA.mjs +0 -364
- package/dist/chunk-7TDXZ32Q.mjs +0 -197
- package/dist/chunk-APXXTGT4.mjs +0 -424
- package/dist/chunk-BZENEU5C.mjs +0 -160
- package/dist/chunk-CNQTT5P3.mjs +0 -276
- package/dist/chunk-CQKCEXF2.mjs +0 -82
- package/dist/chunk-EKQB7NJA.mjs +0 -194
- package/dist/chunk-G4WW3ZTX.mjs +0 -1063
- package/dist/chunk-G7SFQSC7.mjs +0 -306
- package/dist/chunk-IWG2URAU.mjs +0 -74
- package/dist/chunk-IWSATDRG.mjs +0 -118
- package/dist/chunk-JRNDRMIC.mjs +0 -73
- package/dist/chunk-K2C4VMGF.mjs +0 -121
- package/dist/chunk-M6ELOAGS.mjs +0 -136
- package/dist/chunk-NAUBZM7P.mjs +0 -183
- package/dist/chunk-NHDPHK6D.mjs +0 -72
- package/dist/chunk-R5MJWISX.mjs +0 -194
- package/dist/chunk-RKYMAFRJ.mjs +0 -92
- package/dist/chunk-SZBUXY6L.mjs +0 -121
- package/dist/chunk-UHOCECJY.mjs +0 -365
- package/dist/chunk-VY6L37RQ.mjs +0 -103
- package/dist/chunk-X6UI73UN.mjs +0 -262
- package/dist/components/DigitalColleagues/AppSidebarLeft.js +0 -3407
- package/dist/components/DigitalColleagues/DashboardHeader.js +0 -2756
- package/dist/components/DigitalColleagues/DashboardHeader.mjs +0 -15
- package/dist/components/DigitalColleagues/DigitalColleageusLayout.d.ts +0 -28
- package/dist/components/DigitalColleagues/DigitalColleageusLayout.js +0 -4417
- package/dist/components/DigitalColleagues/DigitalColleageusLayout.mjs +0 -31
- package/dist/components/DigitalColleagues/MainPage.js +0 -4080
- package/dist/components/DigitalColleagues/ManagementSidebar.js +0 -99
- package/dist/components/DigitalColleagues/Pages/dashboardpage.d.ts +0 -18
- package/dist/components/DigitalColleagues/Pages/dashboardpage.js +0 -8514
- package/dist/components/DigitalColleagues/Pages/dashboardpage.mjs +0 -78
- package/dist/components/DigitalColleagues/README-document-edit.js +0 -2
- package/dist/components/DigitalColleagues/README-document-edit.mjs +0 -7
- package/dist/components/DigitalColleagues/README-document-preview.js +0 -2
- package/dist/components/DigitalColleagues/README-document-preview.mjs +0 -7
- package/dist/components/DigitalColleagues/SearchableSelect.js +0 -2745
- package/dist/components/DigitalColleagues/Views/ColleaguesView.d.ts +0 -14
- package/dist/components/DigitalColleagues/Views/ColleaguesView.js +0 -3795
- package/dist/components/DigitalColleagues/Views/ColleaguesView.mjs +0 -28
- package/dist/components/DigitalColleagues/Views/KnowledgeView.d.ts +0 -11
- package/dist/components/DigitalColleagues/Views/KnowledgeView.docs.js +0 -2
- package/dist/components/DigitalColleagues/Views/KnowledgeView.docs.mjs +0 -7
- package/dist/components/DigitalColleagues/Views/KnowledgeView.js +0 -3935
- package/dist/components/DigitalColleagues/Views/KnowledgeView.mjs +0 -26
- package/dist/components/DigitalColleagues/Views/index.js +0 -12284
- package/dist/components/DigitalColleagues/Views/index.mjs +0 -114
- package/dist/components/DigitalColleagues/colleague-form.d.ts +0 -14
- package/dist/components/DigitalColleagues/colleague-form.js +0 -3086
- package/dist/components/DigitalColleagues/colleague-form.mjs +0 -22
- package/dist/components/DigitalColleagues/digital-colleague-clone.d.ts +0 -9
- package/dist/components/DigitalColleagues/digital-colleague-options.d.ts +0 -7
- package/dist/components/DigitalColleagues/digital-colleague-options.js +0 -2697
- package/dist/components/DigitalColleagues/document-edit.d.ts +0 -10
- package/dist/components/DigitalColleagues/document-edit.js +0 -3112
- package/dist/components/DigitalColleagues/document-edit.mjs +0 -20
- package/dist/components/DigitalColleagues/document-preview-examples.js +0 -3433
- package/dist/components/DigitalColleagues/document-preview-examples.mjs +0 -151
- package/dist/components/DigitalColleagues/document-preview.d.ts +0 -18
- package/dist/components/DigitalColleagues/document-preview.js +0 -3296
- package/dist/components/DigitalColleagues/document-preview.mjs +0 -21
- package/dist/components/DigitalColleagues/index.mjs +0 -200
- package/dist/components/DigitalColleagues/knowledge-browser.d.ts +0 -13
- package/dist/components/DigitalColleagues/knowledge-browser.js +0 -3581
- package/dist/components/DigitalColleagues/knowledge-browser.mjs +0 -23
- package/dist/components/DigitalColleagues/knowledge-search.d.ts +0 -12
- package/dist/components/DigitalColleagues/knowledge-search.js +0 -2819
- package/dist/components/DigitalColleagues/team-form.d.ts +0 -24
- package/dist/components/DigitalColleagues/team-form.js +0 -2836
- package/dist/components/DigitalColleagues/team-form.mjs +0 -20
- package/dist/components/DigitalColleagues/types.d.ts +0 -289
- package/dist/components/DigitalColleagues/types.js +0 -18
- package/dist/components/Foundary/AppSidebarLeft.css +0 -917
- package/dist/components/Foundary/AppSidebarLeft.d.ts +0 -47
- package/dist/components/Foundary/AppSidebarLeft.mjs +0 -23
- package/dist/components/Foundary/DashboardHeader.css +0 -917
- package/dist/components/Foundary/DashboardHeader.d.ts +0 -8
- package/dist/components/Foundary/MainPage.css +0 -917
- package/dist/components/Foundary/MainPage.d.ts +0 -3
- package/dist/components/Foundary/MainPage.mjs +0 -46
- package/dist/components/Foundary/ManagementSidebar.d.ts +0 -8
- package/dist/components/Foundary/ManagementSidebar.mjs +0 -9
- package/dist/components/Foundary/Pages/dashboardpage.css +0 -917
- package/dist/components/Foundary/SearchableSelect.css +0 -917
- package/dist/components/Foundary/SearchableSelect.d.ts +0 -16
- package/dist/components/Foundary/SearchableSelect.mjs +0 -16
- package/dist/components/Foundary/Views/ColleaguesView.css +0 -917
- package/dist/components/Foundary/Views/KnowledgeView.css +0 -917
- package/dist/components/Foundary/Views/KnowledgeView.docs.js +0 -2
- package/dist/components/Foundary/Views/KnowledgeView.docs.mjs +0 -7
- package/dist/components/Foundary/Views/index.css +0 -917
- package/dist/components/Foundary/Views/index.d.ts +0 -7
- package/dist/components/Foundary/colleague-card.d.ts +0 -12
- package/dist/components/Foundary/colleague-form.css +0 -917
- package/dist/components/Foundary/colleague-type-selection.css +0 -917
- package/dist/components/Foundary/colleague-type-selection.d.ts +0 -7
- package/dist/components/Foundary/colleague-type-selection.mjs +0 -16
- package/dist/components/Foundary/document-edit.css +0 -917
- package/dist/components/Foundary/document-preview-examples.css +0 -917
- package/dist/components/Foundary/document-preview-examples.d.ts +0 -12
- package/dist/components/Foundary/document-preview.css +0 -917
- package/dist/components/Foundary/index.css +0 -917
- package/dist/components/Foundary/knowledge-browser.css +0 -917
- package/dist/components/Foundary/knowledge-search.css +0 -917
- package/dist/components/Foundary/knowledge-search.mjs +0 -20
- package/dist/components/Foundary/team-form.css +0 -917
- package/dist/{chunk-AEFGMCK3.mjs → chunk-D5KV6INF.mjs} +3 -3
- package/dist/{chunk-SNG6OKEL.mjs → chunk-FTVOJKVA.mjs} +3 -3
- package/dist/{chunk-OT2SSFKS.mjs → chunk-GSG52WU5.mjs} +3 -3
- /package/dist/components/{DigitalColleagues → Foundry}/AppSidebarLeft.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/AppSidebarLeft.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/DashboardHeader.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/DashboardHeader.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/add-knowledge-modal.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/add-knowledge-modal.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/add-team-context.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/add-team-context.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/manage-team-context.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Knowledge/manage-team-context.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/LandingMenu.css +0 -0
- /package/dist/components/{Foundary → Foundry}/LandingMenu.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/Login.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Login.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/MainPage.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/MainPage.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/Pages/dashboardpage.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Pages/dashboardpage.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Bold.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Headings.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Italic.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/StrikeThrough.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Subscript.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Superscript.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/Icons/Underline.d.ts +0 -0
- /package/dist/components/{DigitalColleagues/Views → Foundry/RichText/components/RawUploadComponent}/index.css +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/components/RawUploadComponent/index.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry/RichText}/index.css +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/index.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/nodes/image-node.css +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/nodes/image-node.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/plugins/image-plugin.css +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/plugins/image-plugin.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/plugins/toolbar-plugin.css +0 -0
- /package/dist/components/{Foundary → Foundry}/RichText/plugins/toolbar-plugin.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/SearchableSelect.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/SearchableSelect.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/Views/ColleaguesView.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/Views/KnowledgeView.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Views/KnowledgeView.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/Views/TeamsIndexView.css +0 -0
- /package/dist/components/{Foundary → Foundry}/Views/TeamsIndexView.d.ts +0 -0
- /package/dist/components/{Foundary/RichText/components/RawUploadComponent → Foundry/Views}/index.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/Views/index.d.ts +0 -0
- /package/dist/components/{DigitalColleagues/DigitalColleageusLayout.css → Foundry/add-colleague-to-team-form.css} +0 -0
- /package/dist/components/{DigitalColleagues/colleague-card.css → Foundry/app-card.css} +0 -0
- /package/dist/components/{Foundary → Foundry}/colleague-card.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/colleague-card.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/colleague-form.css +0 -0
- /package/dist/components/{Foundary → Foundry}/colleague-form.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/colleague-type-selection.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/colleague-type-selection.d.ts +0 -0
- /package/dist/components/{DigitalColleagues/digital-colleague-clone.css → Foundry/digital-colleague-selection.css} +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/document-edit.css +0 -0
- /package/dist/components/{Foundary → Foundry}/document-edit.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/document-preview-examples.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/document-preview-examples.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/document-preview.css +0 -0
- /package/dist/components/{Foundary → Foundry}/document-preview.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/file-edit.css +0 -0
- /package/dist/components/{Foundary → Foundry}/file-edit.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/foundary-clone.css +0 -0
- /package/dist/components/{Foundary → Foundry}/foundary-clone.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/foundary-layout.css +0 -0
- /package/dist/components/{Foundary → Foundry}/foundary-options.css +0 -0
- /package/dist/components/{Foundary/RichText → Foundry}/index.css +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/knowledge-browser.css +0 -0
- /package/dist/components/{Foundary → Foundry}/knowledge-browser.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/knowledge-search.css +0 -0
- /package/dist/components/{Foundary → Foundry}/knowledge-search.d.ts +0 -0
- /package/dist/components/{DigitalColleagues → Foundry}/team-form.css +0 -0
- /package/dist/components/{Foundary → Foundry}/team-form.d.ts +0 -0
- /package/dist/components/{Foundary → Foundry}/test-data.d.ts +0 -0
- /package/dist/components/{DigitalColleagues/digital-colleague-options.css → Projects/GanttView.css} +0 -0
|
@@ -1,4417 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";
|
|
3
|
-
"use client"
|
|
4
|
-
|
|
5
|
-
"use strict";
|
|
6
|
-
"use client";
|
|
7
|
-
var __create = Object.create;
|
|
8
|
-
var __defProp = Object.defineProperty;
|
|
9
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
12
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
13
|
-
var __export = (target, all) => {
|
|
14
|
-
for (var name in all)
|
|
15
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
16
|
-
};
|
|
17
|
-
var __copyProps = (to, from, except, desc) => {
|
|
18
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
-
for (let key of __getOwnPropNames(from))
|
|
20
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
-
}
|
|
23
|
-
return to;
|
|
24
|
-
};
|
|
25
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
26
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
27
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
28
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
29
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
30
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
31
|
-
mod
|
|
32
|
-
));
|
|
33
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
34
|
-
|
|
35
|
-
// src/components/DigitalColleagues/DigitalColleageusLayout.tsx
|
|
36
|
-
var DigitalColleageusLayout_exports = {};
|
|
37
|
-
__export(DigitalColleageusLayout_exports, {
|
|
38
|
-
DigitalColleageusLayout: () => DigitalColleageusLayout
|
|
39
|
-
});
|
|
40
|
-
module.exports = __toCommonJS(DigitalColleageusLayout_exports);
|
|
41
|
-
var import_react6 = require("react");
|
|
42
|
-
|
|
43
|
-
// src/utils/cn.ts
|
|
44
|
-
var import_clsx = require("clsx");
|
|
45
|
-
|
|
46
|
-
// node_modules/.pnpm/tailwind-merge@2.6.0/node_modules/tailwind-merge/dist/bundle-mjs.mjs
|
|
47
|
-
var CLASS_PART_SEPARATOR = "-";
|
|
48
|
-
var createClassGroupUtils = (config) => {
|
|
49
|
-
const classMap = createClassMap(config);
|
|
50
|
-
const {
|
|
51
|
-
conflictingClassGroups,
|
|
52
|
-
conflictingClassGroupModifiers
|
|
53
|
-
} = config;
|
|
54
|
-
const getClassGroupId = (className) => {
|
|
55
|
-
const classParts = className.split(CLASS_PART_SEPARATOR);
|
|
56
|
-
if (classParts[0] === "" && classParts.length !== 1) {
|
|
57
|
-
classParts.shift();
|
|
58
|
-
}
|
|
59
|
-
return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);
|
|
60
|
-
};
|
|
61
|
-
const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
|
|
62
|
-
const conflicts = conflictingClassGroups[classGroupId] || [];
|
|
63
|
-
if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {
|
|
64
|
-
return [...conflicts, ...conflictingClassGroupModifiers[classGroupId]];
|
|
65
|
-
}
|
|
66
|
-
return conflicts;
|
|
67
|
-
};
|
|
68
|
-
return {
|
|
69
|
-
getClassGroupId,
|
|
70
|
-
getConflictingClassGroupIds
|
|
71
|
-
};
|
|
72
|
-
};
|
|
73
|
-
var getGroupRecursive = (classParts, classPartObject) => {
|
|
74
|
-
if (classParts.length === 0) {
|
|
75
|
-
return classPartObject.classGroupId;
|
|
76
|
-
}
|
|
77
|
-
const currentClassPart = classParts[0];
|
|
78
|
-
const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
|
|
79
|
-
const classGroupFromNextClassPart = nextClassPartObject ? getGroupRecursive(classParts.slice(1), nextClassPartObject) : void 0;
|
|
80
|
-
if (classGroupFromNextClassPart) {
|
|
81
|
-
return classGroupFromNextClassPart;
|
|
82
|
-
}
|
|
83
|
-
if (classPartObject.validators.length === 0) {
|
|
84
|
-
return void 0;
|
|
85
|
-
}
|
|
86
|
-
const classRest = classParts.join(CLASS_PART_SEPARATOR);
|
|
87
|
-
return classPartObject.validators.find(({
|
|
88
|
-
validator
|
|
89
|
-
}) => validator(classRest))?.classGroupId;
|
|
90
|
-
};
|
|
91
|
-
var arbitraryPropertyRegex = /^\[(.+)\]$/;
|
|
92
|
-
var getGroupIdForArbitraryProperty = (className) => {
|
|
93
|
-
if (arbitraryPropertyRegex.test(className)) {
|
|
94
|
-
const arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];
|
|
95
|
-
const property = arbitraryPropertyClassName?.substring(0, arbitraryPropertyClassName.indexOf(":"));
|
|
96
|
-
if (property) {
|
|
97
|
-
return "arbitrary.." + property;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
var createClassMap = (config) => {
|
|
102
|
-
const {
|
|
103
|
-
theme,
|
|
104
|
-
prefix
|
|
105
|
-
} = config;
|
|
106
|
-
const classMap = {
|
|
107
|
-
nextPart: /* @__PURE__ */ new Map(),
|
|
108
|
-
validators: []
|
|
109
|
-
};
|
|
110
|
-
const prefixedClassGroupEntries = getPrefixedClassGroupEntries(Object.entries(config.classGroups), prefix);
|
|
111
|
-
prefixedClassGroupEntries.forEach(([classGroupId, classGroup]) => {
|
|
112
|
-
processClassesRecursively(classGroup, classMap, classGroupId, theme);
|
|
113
|
-
});
|
|
114
|
-
return classMap;
|
|
115
|
-
};
|
|
116
|
-
var processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {
|
|
117
|
-
classGroup.forEach((classDefinition) => {
|
|
118
|
-
if (typeof classDefinition === "string") {
|
|
119
|
-
const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
|
|
120
|
-
classPartObjectToEdit.classGroupId = classGroupId;
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
if (typeof classDefinition === "function") {
|
|
124
|
-
if (isThemeGetter(classDefinition)) {
|
|
125
|
-
processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
classPartObject.validators.push({
|
|
129
|
-
validator: classDefinition,
|
|
130
|
-
classGroupId
|
|
131
|
-
});
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
Object.entries(classDefinition).forEach(([key, classGroup2]) => {
|
|
135
|
-
processClassesRecursively(classGroup2, getPart(classPartObject, key), classGroupId, theme);
|
|
136
|
-
});
|
|
137
|
-
});
|
|
138
|
-
};
|
|
139
|
-
var getPart = (classPartObject, path) => {
|
|
140
|
-
let currentClassPartObject = classPartObject;
|
|
141
|
-
path.split(CLASS_PART_SEPARATOR).forEach((pathPart) => {
|
|
142
|
-
if (!currentClassPartObject.nextPart.has(pathPart)) {
|
|
143
|
-
currentClassPartObject.nextPart.set(pathPart, {
|
|
144
|
-
nextPart: /* @__PURE__ */ new Map(),
|
|
145
|
-
validators: []
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);
|
|
149
|
-
});
|
|
150
|
-
return currentClassPartObject;
|
|
151
|
-
};
|
|
152
|
-
var isThemeGetter = (func) => func.isThemeGetter;
|
|
153
|
-
var getPrefixedClassGroupEntries = (classGroupEntries, prefix) => {
|
|
154
|
-
if (!prefix) {
|
|
155
|
-
return classGroupEntries;
|
|
156
|
-
}
|
|
157
|
-
return classGroupEntries.map(([classGroupId, classGroup]) => {
|
|
158
|
-
const prefixedClassGroup = classGroup.map((classDefinition) => {
|
|
159
|
-
if (typeof classDefinition === "string") {
|
|
160
|
-
return prefix + classDefinition;
|
|
161
|
-
}
|
|
162
|
-
if (typeof classDefinition === "object") {
|
|
163
|
-
return Object.fromEntries(Object.entries(classDefinition).map(([key, value]) => [prefix + key, value]));
|
|
164
|
-
}
|
|
165
|
-
return classDefinition;
|
|
166
|
-
});
|
|
167
|
-
return [classGroupId, prefixedClassGroup];
|
|
168
|
-
});
|
|
169
|
-
};
|
|
170
|
-
var createLruCache = (maxCacheSize) => {
|
|
171
|
-
if (maxCacheSize < 1) {
|
|
172
|
-
return {
|
|
173
|
-
get: () => void 0,
|
|
174
|
-
set: () => {
|
|
175
|
-
}
|
|
176
|
-
};
|
|
177
|
-
}
|
|
178
|
-
let cacheSize = 0;
|
|
179
|
-
let cache = /* @__PURE__ */ new Map();
|
|
180
|
-
let previousCache = /* @__PURE__ */ new Map();
|
|
181
|
-
const update = (key, value) => {
|
|
182
|
-
cache.set(key, value);
|
|
183
|
-
cacheSize++;
|
|
184
|
-
if (cacheSize > maxCacheSize) {
|
|
185
|
-
cacheSize = 0;
|
|
186
|
-
previousCache = cache;
|
|
187
|
-
cache = /* @__PURE__ */ new Map();
|
|
188
|
-
}
|
|
189
|
-
};
|
|
190
|
-
return {
|
|
191
|
-
get(key) {
|
|
192
|
-
let value = cache.get(key);
|
|
193
|
-
if (value !== void 0) {
|
|
194
|
-
return value;
|
|
195
|
-
}
|
|
196
|
-
if ((value = previousCache.get(key)) !== void 0) {
|
|
197
|
-
update(key, value);
|
|
198
|
-
return value;
|
|
199
|
-
}
|
|
200
|
-
},
|
|
201
|
-
set(key, value) {
|
|
202
|
-
if (cache.has(key)) {
|
|
203
|
-
cache.set(key, value);
|
|
204
|
-
} else {
|
|
205
|
-
update(key, value);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
};
|
|
210
|
-
var IMPORTANT_MODIFIER = "!";
|
|
211
|
-
var createParseClassName = (config) => {
|
|
212
|
-
const {
|
|
213
|
-
separator,
|
|
214
|
-
experimentalParseClassName
|
|
215
|
-
} = config;
|
|
216
|
-
const isSeparatorSingleCharacter = separator.length === 1;
|
|
217
|
-
const firstSeparatorCharacter = separator[0];
|
|
218
|
-
const separatorLength = separator.length;
|
|
219
|
-
const parseClassName = (className) => {
|
|
220
|
-
const modifiers = [];
|
|
221
|
-
let bracketDepth = 0;
|
|
222
|
-
let modifierStart = 0;
|
|
223
|
-
let postfixModifierPosition;
|
|
224
|
-
for (let index = 0; index < className.length; index++) {
|
|
225
|
-
let currentCharacter = className[index];
|
|
226
|
-
if (bracketDepth === 0) {
|
|
227
|
-
if (currentCharacter === firstSeparatorCharacter && (isSeparatorSingleCharacter || className.slice(index, index + separatorLength) === separator)) {
|
|
228
|
-
modifiers.push(className.slice(modifierStart, index));
|
|
229
|
-
modifierStart = index + separatorLength;
|
|
230
|
-
continue;
|
|
231
|
-
}
|
|
232
|
-
if (currentCharacter === "/") {
|
|
233
|
-
postfixModifierPosition = index;
|
|
234
|
-
continue;
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
if (currentCharacter === "[") {
|
|
238
|
-
bracketDepth++;
|
|
239
|
-
} else if (currentCharacter === "]") {
|
|
240
|
-
bracketDepth--;
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.substring(modifierStart);
|
|
244
|
-
const hasImportantModifier = baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER);
|
|
245
|
-
const baseClassName = hasImportantModifier ? baseClassNameWithImportantModifier.substring(1) : baseClassNameWithImportantModifier;
|
|
246
|
-
const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
|
|
247
|
-
return {
|
|
248
|
-
modifiers,
|
|
249
|
-
hasImportantModifier,
|
|
250
|
-
baseClassName,
|
|
251
|
-
maybePostfixModifierPosition
|
|
252
|
-
};
|
|
253
|
-
};
|
|
254
|
-
if (experimentalParseClassName) {
|
|
255
|
-
return (className) => experimentalParseClassName({
|
|
256
|
-
className,
|
|
257
|
-
parseClassName
|
|
258
|
-
});
|
|
259
|
-
}
|
|
260
|
-
return parseClassName;
|
|
261
|
-
};
|
|
262
|
-
var sortModifiers = (modifiers) => {
|
|
263
|
-
if (modifiers.length <= 1) {
|
|
264
|
-
return modifiers;
|
|
265
|
-
}
|
|
266
|
-
const sortedModifiers = [];
|
|
267
|
-
let unsortedModifiers = [];
|
|
268
|
-
modifiers.forEach((modifier) => {
|
|
269
|
-
const isArbitraryVariant = modifier[0] === "[";
|
|
270
|
-
if (isArbitraryVariant) {
|
|
271
|
-
sortedModifiers.push(...unsortedModifiers.sort(), modifier);
|
|
272
|
-
unsortedModifiers = [];
|
|
273
|
-
} else {
|
|
274
|
-
unsortedModifiers.push(modifier);
|
|
275
|
-
}
|
|
276
|
-
});
|
|
277
|
-
sortedModifiers.push(...unsortedModifiers.sort());
|
|
278
|
-
return sortedModifiers;
|
|
279
|
-
};
|
|
280
|
-
var createConfigUtils = (config) => ({
|
|
281
|
-
cache: createLruCache(config.cacheSize),
|
|
282
|
-
parseClassName: createParseClassName(config),
|
|
283
|
-
...createClassGroupUtils(config)
|
|
284
|
-
});
|
|
285
|
-
var SPLIT_CLASSES_REGEX = /\s+/;
|
|
286
|
-
var mergeClassList = (classList, configUtils) => {
|
|
287
|
-
const {
|
|
288
|
-
parseClassName,
|
|
289
|
-
getClassGroupId,
|
|
290
|
-
getConflictingClassGroupIds
|
|
291
|
-
} = configUtils;
|
|
292
|
-
const classGroupsInConflict = [];
|
|
293
|
-
const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
|
|
294
|
-
let result = "";
|
|
295
|
-
for (let index = classNames.length - 1; index >= 0; index -= 1) {
|
|
296
|
-
const originalClassName = classNames[index];
|
|
297
|
-
const {
|
|
298
|
-
modifiers,
|
|
299
|
-
hasImportantModifier,
|
|
300
|
-
baseClassName,
|
|
301
|
-
maybePostfixModifierPosition
|
|
302
|
-
} = parseClassName(originalClassName);
|
|
303
|
-
let hasPostfixModifier = Boolean(maybePostfixModifierPosition);
|
|
304
|
-
let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
|
|
305
|
-
if (!classGroupId) {
|
|
306
|
-
if (!hasPostfixModifier) {
|
|
307
|
-
result = originalClassName + (result.length > 0 ? " " + result : result);
|
|
308
|
-
continue;
|
|
309
|
-
}
|
|
310
|
-
classGroupId = getClassGroupId(baseClassName);
|
|
311
|
-
if (!classGroupId) {
|
|
312
|
-
result = originalClassName + (result.length > 0 ? " " + result : result);
|
|
313
|
-
continue;
|
|
314
|
-
}
|
|
315
|
-
hasPostfixModifier = false;
|
|
316
|
-
}
|
|
317
|
-
const variantModifier = sortModifiers(modifiers).join(":");
|
|
318
|
-
const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
|
|
319
|
-
const classId = modifierId + classGroupId;
|
|
320
|
-
if (classGroupsInConflict.includes(classId)) {
|
|
321
|
-
continue;
|
|
322
|
-
}
|
|
323
|
-
classGroupsInConflict.push(classId);
|
|
324
|
-
const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
|
|
325
|
-
for (let i = 0; i < conflictGroups.length; ++i) {
|
|
326
|
-
const group = conflictGroups[i];
|
|
327
|
-
classGroupsInConflict.push(modifierId + group);
|
|
328
|
-
}
|
|
329
|
-
result = originalClassName + (result.length > 0 ? " " + result : result);
|
|
330
|
-
}
|
|
331
|
-
return result;
|
|
332
|
-
};
|
|
333
|
-
function twJoin() {
|
|
334
|
-
let index = 0;
|
|
335
|
-
let argument;
|
|
336
|
-
let resolvedValue;
|
|
337
|
-
let string = "";
|
|
338
|
-
while (index < arguments.length) {
|
|
339
|
-
if (argument = arguments[index++]) {
|
|
340
|
-
if (resolvedValue = toValue(argument)) {
|
|
341
|
-
string && (string += " ");
|
|
342
|
-
string += resolvedValue;
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
return string;
|
|
347
|
-
}
|
|
348
|
-
var toValue = (mix) => {
|
|
349
|
-
if (typeof mix === "string") {
|
|
350
|
-
return mix;
|
|
351
|
-
}
|
|
352
|
-
let resolvedValue;
|
|
353
|
-
let string = "";
|
|
354
|
-
for (let k = 0; k < mix.length; k++) {
|
|
355
|
-
if (mix[k]) {
|
|
356
|
-
if (resolvedValue = toValue(mix[k])) {
|
|
357
|
-
string && (string += " ");
|
|
358
|
-
string += resolvedValue;
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
return string;
|
|
363
|
-
};
|
|
364
|
-
function createTailwindMerge(createConfigFirst, ...createConfigRest) {
|
|
365
|
-
let configUtils;
|
|
366
|
-
let cacheGet;
|
|
367
|
-
let cacheSet;
|
|
368
|
-
let functionToCall = initTailwindMerge;
|
|
369
|
-
function initTailwindMerge(classList) {
|
|
370
|
-
const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
|
|
371
|
-
configUtils = createConfigUtils(config);
|
|
372
|
-
cacheGet = configUtils.cache.get;
|
|
373
|
-
cacheSet = configUtils.cache.set;
|
|
374
|
-
functionToCall = tailwindMerge;
|
|
375
|
-
return tailwindMerge(classList);
|
|
376
|
-
}
|
|
377
|
-
function tailwindMerge(classList) {
|
|
378
|
-
const cachedResult = cacheGet(classList);
|
|
379
|
-
if (cachedResult) {
|
|
380
|
-
return cachedResult;
|
|
381
|
-
}
|
|
382
|
-
const result = mergeClassList(classList, configUtils);
|
|
383
|
-
cacheSet(classList, result);
|
|
384
|
-
return result;
|
|
385
|
-
}
|
|
386
|
-
return function callTailwindMerge() {
|
|
387
|
-
return functionToCall(twJoin.apply(null, arguments));
|
|
388
|
-
};
|
|
389
|
-
}
|
|
390
|
-
var fromTheme = (key) => {
|
|
391
|
-
const themeGetter = (theme) => theme[key] || [];
|
|
392
|
-
themeGetter.isThemeGetter = true;
|
|
393
|
-
return themeGetter;
|
|
394
|
-
};
|
|
395
|
-
var arbitraryValueRegex = /^\[(?:([a-z-]+):)?(.+)\]$/i;
|
|
396
|
-
var fractionRegex = /^\d+\/\d+$/;
|
|
397
|
-
var stringLengths = /* @__PURE__ */ new Set(["px", "full", "screen"]);
|
|
398
|
-
var tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
|
|
399
|
-
var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/;
|
|
400
|
-
var colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/;
|
|
401
|
-
var shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
|
|
402
|
-
var imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
|
|
403
|
-
var isLength = (value) => isNumber(value) || stringLengths.has(value) || fractionRegex.test(value);
|
|
404
|
-
var isArbitraryLength = (value) => getIsArbitraryValue(value, "length", isLengthOnly);
|
|
405
|
-
var isNumber = (value) => Boolean(value) && !Number.isNaN(Number(value));
|
|
406
|
-
var isArbitraryNumber = (value) => getIsArbitraryValue(value, "number", isNumber);
|
|
407
|
-
var isInteger = (value) => Boolean(value) && Number.isInteger(Number(value));
|
|
408
|
-
var isPercent = (value) => value.endsWith("%") && isNumber(value.slice(0, -1));
|
|
409
|
-
var isArbitraryValue = (value) => arbitraryValueRegex.test(value);
|
|
410
|
-
var isTshirtSize = (value) => tshirtUnitRegex.test(value);
|
|
411
|
-
var sizeLabels = /* @__PURE__ */ new Set(["length", "size", "percentage"]);
|
|
412
|
-
var isArbitrarySize = (value) => getIsArbitraryValue(value, sizeLabels, isNever);
|
|
413
|
-
var isArbitraryPosition = (value) => getIsArbitraryValue(value, "position", isNever);
|
|
414
|
-
var imageLabels = /* @__PURE__ */ new Set(["image", "url"]);
|
|
415
|
-
var isArbitraryImage = (value) => getIsArbitraryValue(value, imageLabels, isImage);
|
|
416
|
-
var isArbitraryShadow = (value) => getIsArbitraryValue(value, "", isShadow);
|
|
417
|
-
var isAny = () => true;
|
|
418
|
-
var getIsArbitraryValue = (value, label, testValue) => {
|
|
419
|
-
const result = arbitraryValueRegex.exec(value);
|
|
420
|
-
if (result) {
|
|
421
|
-
if (result[1]) {
|
|
422
|
-
return typeof label === "string" ? result[1] === label : label.has(result[1]);
|
|
423
|
-
}
|
|
424
|
-
return testValue(result[2]);
|
|
425
|
-
}
|
|
426
|
-
return false;
|
|
427
|
-
};
|
|
428
|
-
var isLengthOnly = (value) => (
|
|
429
|
-
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
|
|
430
|
-
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
|
|
431
|
-
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
|
|
432
|
-
lengthUnitRegex.test(value) && !colorFunctionRegex.test(value)
|
|
433
|
-
);
|
|
434
|
-
var isNever = () => false;
|
|
435
|
-
var isShadow = (value) => shadowRegex.test(value);
|
|
436
|
-
var isImage = (value) => imageRegex.test(value);
|
|
437
|
-
var getDefaultConfig = () => {
|
|
438
|
-
const colors = fromTheme("colors");
|
|
439
|
-
const spacing = fromTheme("spacing");
|
|
440
|
-
const blur = fromTheme("blur");
|
|
441
|
-
const brightness = fromTheme("brightness");
|
|
442
|
-
const borderColor = fromTheme("borderColor");
|
|
443
|
-
const borderRadius = fromTheme("borderRadius");
|
|
444
|
-
const borderSpacing = fromTheme("borderSpacing");
|
|
445
|
-
const borderWidth = fromTheme("borderWidth");
|
|
446
|
-
const contrast = fromTheme("contrast");
|
|
447
|
-
const grayscale = fromTheme("grayscale");
|
|
448
|
-
const hueRotate = fromTheme("hueRotate");
|
|
449
|
-
const invert = fromTheme("invert");
|
|
450
|
-
const gap = fromTheme("gap");
|
|
451
|
-
const gradientColorStops = fromTheme("gradientColorStops");
|
|
452
|
-
const gradientColorStopPositions = fromTheme("gradientColorStopPositions");
|
|
453
|
-
const inset = fromTheme("inset");
|
|
454
|
-
const margin = fromTheme("margin");
|
|
455
|
-
const opacity = fromTheme("opacity");
|
|
456
|
-
const padding = fromTheme("padding");
|
|
457
|
-
const saturate = fromTheme("saturate");
|
|
458
|
-
const scale = fromTheme("scale");
|
|
459
|
-
const sepia = fromTheme("sepia");
|
|
460
|
-
const skew = fromTheme("skew");
|
|
461
|
-
const space = fromTheme("space");
|
|
462
|
-
const translate = fromTheme("translate");
|
|
463
|
-
const getOverscroll = () => ["auto", "contain", "none"];
|
|
464
|
-
const getOverflow = () => ["auto", "hidden", "clip", "visible", "scroll"];
|
|
465
|
-
const getSpacingWithAutoAndArbitrary = () => ["auto", isArbitraryValue, spacing];
|
|
466
|
-
const getSpacingWithArbitrary = () => [isArbitraryValue, spacing];
|
|
467
|
-
const getLengthWithEmptyAndArbitrary = () => ["", isLength, isArbitraryLength];
|
|
468
|
-
const getNumberWithAutoAndArbitrary = () => ["auto", isNumber, isArbitraryValue];
|
|
469
|
-
const getPositions = () => ["bottom", "center", "left", "left-bottom", "left-top", "right", "right-bottom", "right-top", "top"];
|
|
470
|
-
const getLineStyles = () => ["solid", "dashed", "dotted", "double", "none"];
|
|
471
|
-
const getBlendModes = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"];
|
|
472
|
-
const getAlign = () => ["start", "end", "center", "between", "around", "evenly", "stretch"];
|
|
473
|
-
const getZeroAndEmpty = () => ["", "0", isArbitraryValue];
|
|
474
|
-
const getBreaks = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
|
|
475
|
-
const getNumberAndArbitrary = () => [isNumber, isArbitraryValue];
|
|
476
|
-
return {
|
|
477
|
-
cacheSize: 500,
|
|
478
|
-
separator: ":",
|
|
479
|
-
theme: {
|
|
480
|
-
colors: [isAny],
|
|
481
|
-
spacing: [isLength, isArbitraryLength],
|
|
482
|
-
blur: ["none", "", isTshirtSize, isArbitraryValue],
|
|
483
|
-
brightness: getNumberAndArbitrary(),
|
|
484
|
-
borderColor: [colors],
|
|
485
|
-
borderRadius: ["none", "", "full", isTshirtSize, isArbitraryValue],
|
|
486
|
-
borderSpacing: getSpacingWithArbitrary(),
|
|
487
|
-
borderWidth: getLengthWithEmptyAndArbitrary(),
|
|
488
|
-
contrast: getNumberAndArbitrary(),
|
|
489
|
-
grayscale: getZeroAndEmpty(),
|
|
490
|
-
hueRotate: getNumberAndArbitrary(),
|
|
491
|
-
invert: getZeroAndEmpty(),
|
|
492
|
-
gap: getSpacingWithArbitrary(),
|
|
493
|
-
gradientColorStops: [colors],
|
|
494
|
-
gradientColorStopPositions: [isPercent, isArbitraryLength],
|
|
495
|
-
inset: getSpacingWithAutoAndArbitrary(),
|
|
496
|
-
margin: getSpacingWithAutoAndArbitrary(),
|
|
497
|
-
opacity: getNumberAndArbitrary(),
|
|
498
|
-
padding: getSpacingWithArbitrary(),
|
|
499
|
-
saturate: getNumberAndArbitrary(),
|
|
500
|
-
scale: getNumberAndArbitrary(),
|
|
501
|
-
sepia: getZeroAndEmpty(),
|
|
502
|
-
skew: getNumberAndArbitrary(),
|
|
503
|
-
space: getSpacingWithArbitrary(),
|
|
504
|
-
translate: getSpacingWithArbitrary()
|
|
505
|
-
},
|
|
506
|
-
classGroups: {
|
|
507
|
-
// Layout
|
|
508
|
-
/**
|
|
509
|
-
* Aspect Ratio
|
|
510
|
-
* @see https://tailwindcss.com/docs/aspect-ratio
|
|
511
|
-
*/
|
|
512
|
-
aspect: [{
|
|
513
|
-
aspect: ["auto", "square", "video", isArbitraryValue]
|
|
514
|
-
}],
|
|
515
|
-
/**
|
|
516
|
-
* Container
|
|
517
|
-
* @see https://tailwindcss.com/docs/container
|
|
518
|
-
*/
|
|
519
|
-
container: ["container"],
|
|
520
|
-
/**
|
|
521
|
-
* Columns
|
|
522
|
-
* @see https://tailwindcss.com/docs/columns
|
|
523
|
-
*/
|
|
524
|
-
columns: [{
|
|
525
|
-
columns: [isTshirtSize]
|
|
526
|
-
}],
|
|
527
|
-
/**
|
|
528
|
-
* Break After
|
|
529
|
-
* @see https://tailwindcss.com/docs/break-after
|
|
530
|
-
*/
|
|
531
|
-
"break-after": [{
|
|
532
|
-
"break-after": getBreaks()
|
|
533
|
-
}],
|
|
534
|
-
/**
|
|
535
|
-
* Break Before
|
|
536
|
-
* @see https://tailwindcss.com/docs/break-before
|
|
537
|
-
*/
|
|
538
|
-
"break-before": [{
|
|
539
|
-
"break-before": getBreaks()
|
|
540
|
-
}],
|
|
541
|
-
/**
|
|
542
|
-
* Break Inside
|
|
543
|
-
* @see https://tailwindcss.com/docs/break-inside
|
|
544
|
-
*/
|
|
545
|
-
"break-inside": [{
|
|
546
|
-
"break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
|
|
547
|
-
}],
|
|
548
|
-
/**
|
|
549
|
-
* Box Decoration Break
|
|
550
|
-
* @see https://tailwindcss.com/docs/box-decoration-break
|
|
551
|
-
*/
|
|
552
|
-
"box-decoration": [{
|
|
553
|
-
"box-decoration": ["slice", "clone"]
|
|
554
|
-
}],
|
|
555
|
-
/**
|
|
556
|
-
* Box Sizing
|
|
557
|
-
* @see https://tailwindcss.com/docs/box-sizing
|
|
558
|
-
*/
|
|
559
|
-
box: [{
|
|
560
|
-
box: ["border", "content"]
|
|
561
|
-
}],
|
|
562
|
-
/**
|
|
563
|
-
* Display
|
|
564
|
-
* @see https://tailwindcss.com/docs/display
|
|
565
|
-
*/
|
|
566
|
-
display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
|
|
567
|
-
/**
|
|
568
|
-
* Floats
|
|
569
|
-
* @see https://tailwindcss.com/docs/float
|
|
570
|
-
*/
|
|
571
|
-
float: [{
|
|
572
|
-
float: ["right", "left", "none", "start", "end"]
|
|
573
|
-
}],
|
|
574
|
-
/**
|
|
575
|
-
* Clear
|
|
576
|
-
* @see https://tailwindcss.com/docs/clear
|
|
577
|
-
*/
|
|
578
|
-
clear: [{
|
|
579
|
-
clear: ["left", "right", "both", "none", "start", "end"]
|
|
580
|
-
}],
|
|
581
|
-
/**
|
|
582
|
-
* Isolation
|
|
583
|
-
* @see https://tailwindcss.com/docs/isolation
|
|
584
|
-
*/
|
|
585
|
-
isolation: ["isolate", "isolation-auto"],
|
|
586
|
-
/**
|
|
587
|
-
* Object Fit
|
|
588
|
-
* @see https://tailwindcss.com/docs/object-fit
|
|
589
|
-
*/
|
|
590
|
-
"object-fit": [{
|
|
591
|
-
object: ["contain", "cover", "fill", "none", "scale-down"]
|
|
592
|
-
}],
|
|
593
|
-
/**
|
|
594
|
-
* Object Position
|
|
595
|
-
* @see https://tailwindcss.com/docs/object-position
|
|
596
|
-
*/
|
|
597
|
-
"object-position": [{
|
|
598
|
-
object: [...getPositions(), isArbitraryValue]
|
|
599
|
-
}],
|
|
600
|
-
/**
|
|
601
|
-
* Overflow
|
|
602
|
-
* @see https://tailwindcss.com/docs/overflow
|
|
603
|
-
*/
|
|
604
|
-
overflow: [{
|
|
605
|
-
overflow: getOverflow()
|
|
606
|
-
}],
|
|
607
|
-
/**
|
|
608
|
-
* Overflow X
|
|
609
|
-
* @see https://tailwindcss.com/docs/overflow
|
|
610
|
-
*/
|
|
611
|
-
"overflow-x": [{
|
|
612
|
-
"overflow-x": getOverflow()
|
|
613
|
-
}],
|
|
614
|
-
/**
|
|
615
|
-
* Overflow Y
|
|
616
|
-
* @see https://tailwindcss.com/docs/overflow
|
|
617
|
-
*/
|
|
618
|
-
"overflow-y": [{
|
|
619
|
-
"overflow-y": getOverflow()
|
|
620
|
-
}],
|
|
621
|
-
/**
|
|
622
|
-
* Overscroll Behavior
|
|
623
|
-
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
624
|
-
*/
|
|
625
|
-
overscroll: [{
|
|
626
|
-
overscroll: getOverscroll()
|
|
627
|
-
}],
|
|
628
|
-
/**
|
|
629
|
-
* Overscroll Behavior X
|
|
630
|
-
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
631
|
-
*/
|
|
632
|
-
"overscroll-x": [{
|
|
633
|
-
"overscroll-x": getOverscroll()
|
|
634
|
-
}],
|
|
635
|
-
/**
|
|
636
|
-
* Overscroll Behavior Y
|
|
637
|
-
* @see https://tailwindcss.com/docs/overscroll-behavior
|
|
638
|
-
*/
|
|
639
|
-
"overscroll-y": [{
|
|
640
|
-
"overscroll-y": getOverscroll()
|
|
641
|
-
}],
|
|
642
|
-
/**
|
|
643
|
-
* Position
|
|
644
|
-
* @see https://tailwindcss.com/docs/position
|
|
645
|
-
*/
|
|
646
|
-
position: ["static", "fixed", "absolute", "relative", "sticky"],
|
|
647
|
-
/**
|
|
648
|
-
* Top / Right / Bottom / Left
|
|
649
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
650
|
-
*/
|
|
651
|
-
inset: [{
|
|
652
|
-
inset: [inset]
|
|
653
|
-
}],
|
|
654
|
-
/**
|
|
655
|
-
* Right / Left
|
|
656
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
657
|
-
*/
|
|
658
|
-
"inset-x": [{
|
|
659
|
-
"inset-x": [inset]
|
|
660
|
-
}],
|
|
661
|
-
/**
|
|
662
|
-
* Top / Bottom
|
|
663
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
664
|
-
*/
|
|
665
|
-
"inset-y": [{
|
|
666
|
-
"inset-y": [inset]
|
|
667
|
-
}],
|
|
668
|
-
/**
|
|
669
|
-
* Start
|
|
670
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
671
|
-
*/
|
|
672
|
-
start: [{
|
|
673
|
-
start: [inset]
|
|
674
|
-
}],
|
|
675
|
-
/**
|
|
676
|
-
* End
|
|
677
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
678
|
-
*/
|
|
679
|
-
end: [{
|
|
680
|
-
end: [inset]
|
|
681
|
-
}],
|
|
682
|
-
/**
|
|
683
|
-
* Top
|
|
684
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
685
|
-
*/
|
|
686
|
-
top: [{
|
|
687
|
-
top: [inset]
|
|
688
|
-
}],
|
|
689
|
-
/**
|
|
690
|
-
* Right
|
|
691
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
692
|
-
*/
|
|
693
|
-
right: [{
|
|
694
|
-
right: [inset]
|
|
695
|
-
}],
|
|
696
|
-
/**
|
|
697
|
-
* Bottom
|
|
698
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
699
|
-
*/
|
|
700
|
-
bottom: [{
|
|
701
|
-
bottom: [inset]
|
|
702
|
-
}],
|
|
703
|
-
/**
|
|
704
|
-
* Left
|
|
705
|
-
* @see https://tailwindcss.com/docs/top-right-bottom-left
|
|
706
|
-
*/
|
|
707
|
-
left: [{
|
|
708
|
-
left: [inset]
|
|
709
|
-
}],
|
|
710
|
-
/**
|
|
711
|
-
* Visibility
|
|
712
|
-
* @see https://tailwindcss.com/docs/visibility
|
|
713
|
-
*/
|
|
714
|
-
visibility: ["visible", "invisible", "collapse"],
|
|
715
|
-
/**
|
|
716
|
-
* Z-Index
|
|
717
|
-
* @see https://tailwindcss.com/docs/z-index
|
|
718
|
-
*/
|
|
719
|
-
z: [{
|
|
720
|
-
z: ["auto", isInteger, isArbitraryValue]
|
|
721
|
-
}],
|
|
722
|
-
// Flexbox and Grid
|
|
723
|
-
/**
|
|
724
|
-
* Flex Basis
|
|
725
|
-
* @see https://tailwindcss.com/docs/flex-basis
|
|
726
|
-
*/
|
|
727
|
-
basis: [{
|
|
728
|
-
basis: getSpacingWithAutoAndArbitrary()
|
|
729
|
-
}],
|
|
730
|
-
/**
|
|
731
|
-
* Flex Direction
|
|
732
|
-
* @see https://tailwindcss.com/docs/flex-direction
|
|
733
|
-
*/
|
|
734
|
-
"flex-direction": [{
|
|
735
|
-
flex: ["row", "row-reverse", "col", "col-reverse"]
|
|
736
|
-
}],
|
|
737
|
-
/**
|
|
738
|
-
* Flex Wrap
|
|
739
|
-
* @see https://tailwindcss.com/docs/flex-wrap
|
|
740
|
-
*/
|
|
741
|
-
"flex-wrap": [{
|
|
742
|
-
flex: ["wrap", "wrap-reverse", "nowrap"]
|
|
743
|
-
}],
|
|
744
|
-
/**
|
|
745
|
-
* Flex
|
|
746
|
-
* @see https://tailwindcss.com/docs/flex
|
|
747
|
-
*/
|
|
748
|
-
flex: [{
|
|
749
|
-
flex: ["1", "auto", "initial", "none", isArbitraryValue]
|
|
750
|
-
}],
|
|
751
|
-
/**
|
|
752
|
-
* Flex Grow
|
|
753
|
-
* @see https://tailwindcss.com/docs/flex-grow
|
|
754
|
-
*/
|
|
755
|
-
grow: [{
|
|
756
|
-
grow: getZeroAndEmpty()
|
|
757
|
-
}],
|
|
758
|
-
/**
|
|
759
|
-
* Flex Shrink
|
|
760
|
-
* @see https://tailwindcss.com/docs/flex-shrink
|
|
761
|
-
*/
|
|
762
|
-
shrink: [{
|
|
763
|
-
shrink: getZeroAndEmpty()
|
|
764
|
-
}],
|
|
765
|
-
/**
|
|
766
|
-
* Order
|
|
767
|
-
* @see https://tailwindcss.com/docs/order
|
|
768
|
-
*/
|
|
769
|
-
order: [{
|
|
770
|
-
order: ["first", "last", "none", isInteger, isArbitraryValue]
|
|
771
|
-
}],
|
|
772
|
-
/**
|
|
773
|
-
* Grid Template Columns
|
|
774
|
-
* @see https://tailwindcss.com/docs/grid-template-columns
|
|
775
|
-
*/
|
|
776
|
-
"grid-cols": [{
|
|
777
|
-
"grid-cols": [isAny]
|
|
778
|
-
}],
|
|
779
|
-
/**
|
|
780
|
-
* Grid Column Start / End
|
|
781
|
-
* @see https://tailwindcss.com/docs/grid-column
|
|
782
|
-
*/
|
|
783
|
-
"col-start-end": [{
|
|
784
|
-
col: ["auto", {
|
|
785
|
-
span: ["full", isInteger, isArbitraryValue]
|
|
786
|
-
}, isArbitraryValue]
|
|
787
|
-
}],
|
|
788
|
-
/**
|
|
789
|
-
* Grid Column Start
|
|
790
|
-
* @see https://tailwindcss.com/docs/grid-column
|
|
791
|
-
*/
|
|
792
|
-
"col-start": [{
|
|
793
|
-
"col-start": getNumberWithAutoAndArbitrary()
|
|
794
|
-
}],
|
|
795
|
-
/**
|
|
796
|
-
* Grid Column End
|
|
797
|
-
* @see https://tailwindcss.com/docs/grid-column
|
|
798
|
-
*/
|
|
799
|
-
"col-end": [{
|
|
800
|
-
"col-end": getNumberWithAutoAndArbitrary()
|
|
801
|
-
}],
|
|
802
|
-
/**
|
|
803
|
-
* Grid Template Rows
|
|
804
|
-
* @see https://tailwindcss.com/docs/grid-template-rows
|
|
805
|
-
*/
|
|
806
|
-
"grid-rows": [{
|
|
807
|
-
"grid-rows": [isAny]
|
|
808
|
-
}],
|
|
809
|
-
/**
|
|
810
|
-
* Grid Row Start / End
|
|
811
|
-
* @see https://tailwindcss.com/docs/grid-row
|
|
812
|
-
*/
|
|
813
|
-
"row-start-end": [{
|
|
814
|
-
row: ["auto", {
|
|
815
|
-
span: [isInteger, isArbitraryValue]
|
|
816
|
-
}, isArbitraryValue]
|
|
817
|
-
}],
|
|
818
|
-
/**
|
|
819
|
-
* Grid Row Start
|
|
820
|
-
* @see https://tailwindcss.com/docs/grid-row
|
|
821
|
-
*/
|
|
822
|
-
"row-start": [{
|
|
823
|
-
"row-start": getNumberWithAutoAndArbitrary()
|
|
824
|
-
}],
|
|
825
|
-
/**
|
|
826
|
-
* Grid Row End
|
|
827
|
-
* @see https://tailwindcss.com/docs/grid-row
|
|
828
|
-
*/
|
|
829
|
-
"row-end": [{
|
|
830
|
-
"row-end": getNumberWithAutoAndArbitrary()
|
|
831
|
-
}],
|
|
832
|
-
/**
|
|
833
|
-
* Grid Auto Flow
|
|
834
|
-
* @see https://tailwindcss.com/docs/grid-auto-flow
|
|
835
|
-
*/
|
|
836
|
-
"grid-flow": [{
|
|
837
|
-
"grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
|
|
838
|
-
}],
|
|
839
|
-
/**
|
|
840
|
-
* Grid Auto Columns
|
|
841
|
-
* @see https://tailwindcss.com/docs/grid-auto-columns
|
|
842
|
-
*/
|
|
843
|
-
"auto-cols": [{
|
|
844
|
-
"auto-cols": ["auto", "min", "max", "fr", isArbitraryValue]
|
|
845
|
-
}],
|
|
846
|
-
/**
|
|
847
|
-
* Grid Auto Rows
|
|
848
|
-
* @see https://tailwindcss.com/docs/grid-auto-rows
|
|
849
|
-
*/
|
|
850
|
-
"auto-rows": [{
|
|
851
|
-
"auto-rows": ["auto", "min", "max", "fr", isArbitraryValue]
|
|
852
|
-
}],
|
|
853
|
-
/**
|
|
854
|
-
* Gap
|
|
855
|
-
* @see https://tailwindcss.com/docs/gap
|
|
856
|
-
*/
|
|
857
|
-
gap: [{
|
|
858
|
-
gap: [gap]
|
|
859
|
-
}],
|
|
860
|
-
/**
|
|
861
|
-
* Gap X
|
|
862
|
-
* @see https://tailwindcss.com/docs/gap
|
|
863
|
-
*/
|
|
864
|
-
"gap-x": [{
|
|
865
|
-
"gap-x": [gap]
|
|
866
|
-
}],
|
|
867
|
-
/**
|
|
868
|
-
* Gap Y
|
|
869
|
-
* @see https://tailwindcss.com/docs/gap
|
|
870
|
-
*/
|
|
871
|
-
"gap-y": [{
|
|
872
|
-
"gap-y": [gap]
|
|
873
|
-
}],
|
|
874
|
-
/**
|
|
875
|
-
* Justify Content
|
|
876
|
-
* @see https://tailwindcss.com/docs/justify-content
|
|
877
|
-
*/
|
|
878
|
-
"justify-content": [{
|
|
879
|
-
justify: ["normal", ...getAlign()]
|
|
880
|
-
}],
|
|
881
|
-
/**
|
|
882
|
-
* Justify Items
|
|
883
|
-
* @see https://tailwindcss.com/docs/justify-items
|
|
884
|
-
*/
|
|
885
|
-
"justify-items": [{
|
|
886
|
-
"justify-items": ["start", "end", "center", "stretch"]
|
|
887
|
-
}],
|
|
888
|
-
/**
|
|
889
|
-
* Justify Self
|
|
890
|
-
* @see https://tailwindcss.com/docs/justify-self
|
|
891
|
-
*/
|
|
892
|
-
"justify-self": [{
|
|
893
|
-
"justify-self": ["auto", "start", "end", "center", "stretch"]
|
|
894
|
-
}],
|
|
895
|
-
/**
|
|
896
|
-
* Align Content
|
|
897
|
-
* @see https://tailwindcss.com/docs/align-content
|
|
898
|
-
*/
|
|
899
|
-
"align-content": [{
|
|
900
|
-
content: ["normal", ...getAlign(), "baseline"]
|
|
901
|
-
}],
|
|
902
|
-
/**
|
|
903
|
-
* Align Items
|
|
904
|
-
* @see https://tailwindcss.com/docs/align-items
|
|
905
|
-
*/
|
|
906
|
-
"align-items": [{
|
|
907
|
-
items: ["start", "end", "center", "baseline", "stretch"]
|
|
908
|
-
}],
|
|
909
|
-
/**
|
|
910
|
-
* Align Self
|
|
911
|
-
* @see https://tailwindcss.com/docs/align-self
|
|
912
|
-
*/
|
|
913
|
-
"align-self": [{
|
|
914
|
-
self: ["auto", "start", "end", "center", "stretch", "baseline"]
|
|
915
|
-
}],
|
|
916
|
-
/**
|
|
917
|
-
* Place Content
|
|
918
|
-
* @see https://tailwindcss.com/docs/place-content
|
|
919
|
-
*/
|
|
920
|
-
"place-content": [{
|
|
921
|
-
"place-content": [...getAlign(), "baseline"]
|
|
922
|
-
}],
|
|
923
|
-
/**
|
|
924
|
-
* Place Items
|
|
925
|
-
* @see https://tailwindcss.com/docs/place-items
|
|
926
|
-
*/
|
|
927
|
-
"place-items": [{
|
|
928
|
-
"place-items": ["start", "end", "center", "baseline", "stretch"]
|
|
929
|
-
}],
|
|
930
|
-
/**
|
|
931
|
-
* Place Self
|
|
932
|
-
* @see https://tailwindcss.com/docs/place-self
|
|
933
|
-
*/
|
|
934
|
-
"place-self": [{
|
|
935
|
-
"place-self": ["auto", "start", "end", "center", "stretch"]
|
|
936
|
-
}],
|
|
937
|
-
// Spacing
|
|
938
|
-
/**
|
|
939
|
-
* Padding
|
|
940
|
-
* @see https://tailwindcss.com/docs/padding
|
|
941
|
-
*/
|
|
942
|
-
p: [{
|
|
943
|
-
p: [padding]
|
|
944
|
-
}],
|
|
945
|
-
/**
|
|
946
|
-
* Padding X
|
|
947
|
-
* @see https://tailwindcss.com/docs/padding
|
|
948
|
-
*/
|
|
949
|
-
px: [{
|
|
950
|
-
px: [padding]
|
|
951
|
-
}],
|
|
952
|
-
/**
|
|
953
|
-
* Padding Y
|
|
954
|
-
* @see https://tailwindcss.com/docs/padding
|
|
955
|
-
*/
|
|
956
|
-
py: [{
|
|
957
|
-
py: [padding]
|
|
958
|
-
}],
|
|
959
|
-
/**
|
|
960
|
-
* Padding Start
|
|
961
|
-
* @see https://tailwindcss.com/docs/padding
|
|
962
|
-
*/
|
|
963
|
-
ps: [{
|
|
964
|
-
ps: [padding]
|
|
965
|
-
}],
|
|
966
|
-
/**
|
|
967
|
-
* Padding End
|
|
968
|
-
* @see https://tailwindcss.com/docs/padding
|
|
969
|
-
*/
|
|
970
|
-
pe: [{
|
|
971
|
-
pe: [padding]
|
|
972
|
-
}],
|
|
973
|
-
/**
|
|
974
|
-
* Padding Top
|
|
975
|
-
* @see https://tailwindcss.com/docs/padding
|
|
976
|
-
*/
|
|
977
|
-
pt: [{
|
|
978
|
-
pt: [padding]
|
|
979
|
-
}],
|
|
980
|
-
/**
|
|
981
|
-
* Padding Right
|
|
982
|
-
* @see https://tailwindcss.com/docs/padding
|
|
983
|
-
*/
|
|
984
|
-
pr: [{
|
|
985
|
-
pr: [padding]
|
|
986
|
-
}],
|
|
987
|
-
/**
|
|
988
|
-
* Padding Bottom
|
|
989
|
-
* @see https://tailwindcss.com/docs/padding
|
|
990
|
-
*/
|
|
991
|
-
pb: [{
|
|
992
|
-
pb: [padding]
|
|
993
|
-
}],
|
|
994
|
-
/**
|
|
995
|
-
* Padding Left
|
|
996
|
-
* @see https://tailwindcss.com/docs/padding
|
|
997
|
-
*/
|
|
998
|
-
pl: [{
|
|
999
|
-
pl: [padding]
|
|
1000
|
-
}],
|
|
1001
|
-
/**
|
|
1002
|
-
* Margin
|
|
1003
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1004
|
-
*/
|
|
1005
|
-
m: [{
|
|
1006
|
-
m: [margin]
|
|
1007
|
-
}],
|
|
1008
|
-
/**
|
|
1009
|
-
* Margin X
|
|
1010
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1011
|
-
*/
|
|
1012
|
-
mx: [{
|
|
1013
|
-
mx: [margin]
|
|
1014
|
-
}],
|
|
1015
|
-
/**
|
|
1016
|
-
* Margin Y
|
|
1017
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1018
|
-
*/
|
|
1019
|
-
my: [{
|
|
1020
|
-
my: [margin]
|
|
1021
|
-
}],
|
|
1022
|
-
/**
|
|
1023
|
-
* Margin Start
|
|
1024
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1025
|
-
*/
|
|
1026
|
-
ms: [{
|
|
1027
|
-
ms: [margin]
|
|
1028
|
-
}],
|
|
1029
|
-
/**
|
|
1030
|
-
* Margin End
|
|
1031
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1032
|
-
*/
|
|
1033
|
-
me: [{
|
|
1034
|
-
me: [margin]
|
|
1035
|
-
}],
|
|
1036
|
-
/**
|
|
1037
|
-
* Margin Top
|
|
1038
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1039
|
-
*/
|
|
1040
|
-
mt: [{
|
|
1041
|
-
mt: [margin]
|
|
1042
|
-
}],
|
|
1043
|
-
/**
|
|
1044
|
-
* Margin Right
|
|
1045
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1046
|
-
*/
|
|
1047
|
-
mr: [{
|
|
1048
|
-
mr: [margin]
|
|
1049
|
-
}],
|
|
1050
|
-
/**
|
|
1051
|
-
* Margin Bottom
|
|
1052
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1053
|
-
*/
|
|
1054
|
-
mb: [{
|
|
1055
|
-
mb: [margin]
|
|
1056
|
-
}],
|
|
1057
|
-
/**
|
|
1058
|
-
* Margin Left
|
|
1059
|
-
* @see https://tailwindcss.com/docs/margin
|
|
1060
|
-
*/
|
|
1061
|
-
ml: [{
|
|
1062
|
-
ml: [margin]
|
|
1063
|
-
}],
|
|
1064
|
-
/**
|
|
1065
|
-
* Space Between X
|
|
1066
|
-
* @see https://tailwindcss.com/docs/space
|
|
1067
|
-
*/
|
|
1068
|
-
"space-x": [{
|
|
1069
|
-
"space-x": [space]
|
|
1070
|
-
}],
|
|
1071
|
-
/**
|
|
1072
|
-
* Space Between X Reverse
|
|
1073
|
-
* @see https://tailwindcss.com/docs/space
|
|
1074
|
-
*/
|
|
1075
|
-
"space-x-reverse": ["space-x-reverse"],
|
|
1076
|
-
/**
|
|
1077
|
-
* Space Between Y
|
|
1078
|
-
* @see https://tailwindcss.com/docs/space
|
|
1079
|
-
*/
|
|
1080
|
-
"space-y": [{
|
|
1081
|
-
"space-y": [space]
|
|
1082
|
-
}],
|
|
1083
|
-
/**
|
|
1084
|
-
* Space Between Y Reverse
|
|
1085
|
-
* @see https://tailwindcss.com/docs/space
|
|
1086
|
-
*/
|
|
1087
|
-
"space-y-reverse": ["space-y-reverse"],
|
|
1088
|
-
// Sizing
|
|
1089
|
-
/**
|
|
1090
|
-
* Width
|
|
1091
|
-
* @see https://tailwindcss.com/docs/width
|
|
1092
|
-
*/
|
|
1093
|
-
w: [{
|
|
1094
|
-
w: ["auto", "min", "max", "fit", "svw", "lvw", "dvw", isArbitraryValue, spacing]
|
|
1095
|
-
}],
|
|
1096
|
-
/**
|
|
1097
|
-
* Min-Width
|
|
1098
|
-
* @see https://tailwindcss.com/docs/min-width
|
|
1099
|
-
*/
|
|
1100
|
-
"min-w": [{
|
|
1101
|
-
"min-w": [isArbitraryValue, spacing, "min", "max", "fit"]
|
|
1102
|
-
}],
|
|
1103
|
-
/**
|
|
1104
|
-
* Max-Width
|
|
1105
|
-
* @see https://tailwindcss.com/docs/max-width
|
|
1106
|
-
*/
|
|
1107
|
-
"max-w": [{
|
|
1108
|
-
"max-w": [isArbitraryValue, spacing, "none", "full", "min", "max", "fit", "prose", {
|
|
1109
|
-
screen: [isTshirtSize]
|
|
1110
|
-
}, isTshirtSize]
|
|
1111
|
-
}],
|
|
1112
|
-
/**
|
|
1113
|
-
* Height
|
|
1114
|
-
* @see https://tailwindcss.com/docs/height
|
|
1115
|
-
*/
|
|
1116
|
-
h: [{
|
|
1117
|
-
h: [isArbitraryValue, spacing, "auto", "min", "max", "fit", "svh", "lvh", "dvh"]
|
|
1118
|
-
}],
|
|
1119
|
-
/**
|
|
1120
|
-
* Min-Height
|
|
1121
|
-
* @see https://tailwindcss.com/docs/min-height
|
|
1122
|
-
*/
|
|
1123
|
-
"min-h": [{
|
|
1124
|
-
"min-h": [isArbitraryValue, spacing, "min", "max", "fit", "svh", "lvh", "dvh"]
|
|
1125
|
-
}],
|
|
1126
|
-
/**
|
|
1127
|
-
* Max-Height
|
|
1128
|
-
* @see https://tailwindcss.com/docs/max-height
|
|
1129
|
-
*/
|
|
1130
|
-
"max-h": [{
|
|
1131
|
-
"max-h": [isArbitraryValue, spacing, "min", "max", "fit", "svh", "lvh", "dvh"]
|
|
1132
|
-
}],
|
|
1133
|
-
/**
|
|
1134
|
-
* Size
|
|
1135
|
-
* @see https://tailwindcss.com/docs/size
|
|
1136
|
-
*/
|
|
1137
|
-
size: [{
|
|
1138
|
-
size: [isArbitraryValue, spacing, "auto", "min", "max", "fit"]
|
|
1139
|
-
}],
|
|
1140
|
-
// Typography
|
|
1141
|
-
/**
|
|
1142
|
-
* Font Size
|
|
1143
|
-
* @see https://tailwindcss.com/docs/font-size
|
|
1144
|
-
*/
|
|
1145
|
-
"font-size": [{
|
|
1146
|
-
text: ["base", isTshirtSize, isArbitraryLength]
|
|
1147
|
-
}],
|
|
1148
|
-
/**
|
|
1149
|
-
* Font Smoothing
|
|
1150
|
-
* @see https://tailwindcss.com/docs/font-smoothing
|
|
1151
|
-
*/
|
|
1152
|
-
"font-smoothing": ["antialiased", "subpixel-antialiased"],
|
|
1153
|
-
/**
|
|
1154
|
-
* Font Style
|
|
1155
|
-
* @see https://tailwindcss.com/docs/font-style
|
|
1156
|
-
*/
|
|
1157
|
-
"font-style": ["italic", "not-italic"],
|
|
1158
|
-
/**
|
|
1159
|
-
* Font Weight
|
|
1160
|
-
* @see https://tailwindcss.com/docs/font-weight
|
|
1161
|
-
*/
|
|
1162
|
-
"font-weight": [{
|
|
1163
|
-
font: ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black", isArbitraryNumber]
|
|
1164
|
-
}],
|
|
1165
|
-
/**
|
|
1166
|
-
* Font Family
|
|
1167
|
-
* @see https://tailwindcss.com/docs/font-family
|
|
1168
|
-
*/
|
|
1169
|
-
"font-family": [{
|
|
1170
|
-
font: [isAny]
|
|
1171
|
-
}],
|
|
1172
|
-
/**
|
|
1173
|
-
* Font Variant Numeric
|
|
1174
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1175
|
-
*/
|
|
1176
|
-
"fvn-normal": ["normal-nums"],
|
|
1177
|
-
/**
|
|
1178
|
-
* Font Variant Numeric
|
|
1179
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1180
|
-
*/
|
|
1181
|
-
"fvn-ordinal": ["ordinal"],
|
|
1182
|
-
/**
|
|
1183
|
-
* Font Variant Numeric
|
|
1184
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1185
|
-
*/
|
|
1186
|
-
"fvn-slashed-zero": ["slashed-zero"],
|
|
1187
|
-
/**
|
|
1188
|
-
* Font Variant Numeric
|
|
1189
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1190
|
-
*/
|
|
1191
|
-
"fvn-figure": ["lining-nums", "oldstyle-nums"],
|
|
1192
|
-
/**
|
|
1193
|
-
* Font Variant Numeric
|
|
1194
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1195
|
-
*/
|
|
1196
|
-
"fvn-spacing": ["proportional-nums", "tabular-nums"],
|
|
1197
|
-
/**
|
|
1198
|
-
* Font Variant Numeric
|
|
1199
|
-
* @see https://tailwindcss.com/docs/font-variant-numeric
|
|
1200
|
-
*/
|
|
1201
|
-
"fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
|
|
1202
|
-
/**
|
|
1203
|
-
* Letter Spacing
|
|
1204
|
-
* @see https://tailwindcss.com/docs/letter-spacing
|
|
1205
|
-
*/
|
|
1206
|
-
tracking: [{
|
|
1207
|
-
tracking: ["tighter", "tight", "normal", "wide", "wider", "widest", isArbitraryValue]
|
|
1208
|
-
}],
|
|
1209
|
-
/**
|
|
1210
|
-
* Line Clamp
|
|
1211
|
-
* @see https://tailwindcss.com/docs/line-clamp
|
|
1212
|
-
*/
|
|
1213
|
-
"line-clamp": [{
|
|
1214
|
-
"line-clamp": ["none", isNumber, isArbitraryNumber]
|
|
1215
|
-
}],
|
|
1216
|
-
/**
|
|
1217
|
-
* Line Height
|
|
1218
|
-
* @see https://tailwindcss.com/docs/line-height
|
|
1219
|
-
*/
|
|
1220
|
-
leading: [{
|
|
1221
|
-
leading: ["none", "tight", "snug", "normal", "relaxed", "loose", isLength, isArbitraryValue]
|
|
1222
|
-
}],
|
|
1223
|
-
/**
|
|
1224
|
-
* List Style Image
|
|
1225
|
-
* @see https://tailwindcss.com/docs/list-style-image
|
|
1226
|
-
*/
|
|
1227
|
-
"list-image": [{
|
|
1228
|
-
"list-image": ["none", isArbitraryValue]
|
|
1229
|
-
}],
|
|
1230
|
-
/**
|
|
1231
|
-
* List Style Type
|
|
1232
|
-
* @see https://tailwindcss.com/docs/list-style-type
|
|
1233
|
-
*/
|
|
1234
|
-
"list-style-type": [{
|
|
1235
|
-
list: ["none", "disc", "decimal", isArbitraryValue]
|
|
1236
|
-
}],
|
|
1237
|
-
/**
|
|
1238
|
-
* List Style Position
|
|
1239
|
-
* @see https://tailwindcss.com/docs/list-style-position
|
|
1240
|
-
*/
|
|
1241
|
-
"list-style-position": [{
|
|
1242
|
-
list: ["inside", "outside"]
|
|
1243
|
-
}],
|
|
1244
|
-
/**
|
|
1245
|
-
* Placeholder Color
|
|
1246
|
-
* @deprecated since Tailwind CSS v3.0.0
|
|
1247
|
-
* @see https://tailwindcss.com/docs/placeholder-color
|
|
1248
|
-
*/
|
|
1249
|
-
"placeholder-color": [{
|
|
1250
|
-
placeholder: [colors]
|
|
1251
|
-
}],
|
|
1252
|
-
/**
|
|
1253
|
-
* Placeholder Opacity
|
|
1254
|
-
* @see https://tailwindcss.com/docs/placeholder-opacity
|
|
1255
|
-
*/
|
|
1256
|
-
"placeholder-opacity": [{
|
|
1257
|
-
"placeholder-opacity": [opacity]
|
|
1258
|
-
}],
|
|
1259
|
-
/**
|
|
1260
|
-
* Text Alignment
|
|
1261
|
-
* @see https://tailwindcss.com/docs/text-align
|
|
1262
|
-
*/
|
|
1263
|
-
"text-alignment": [{
|
|
1264
|
-
text: ["left", "center", "right", "justify", "start", "end"]
|
|
1265
|
-
}],
|
|
1266
|
-
/**
|
|
1267
|
-
* Text Color
|
|
1268
|
-
* @see https://tailwindcss.com/docs/text-color
|
|
1269
|
-
*/
|
|
1270
|
-
"text-color": [{
|
|
1271
|
-
text: [colors]
|
|
1272
|
-
}],
|
|
1273
|
-
/**
|
|
1274
|
-
* Text Opacity
|
|
1275
|
-
* @see https://tailwindcss.com/docs/text-opacity
|
|
1276
|
-
*/
|
|
1277
|
-
"text-opacity": [{
|
|
1278
|
-
"text-opacity": [opacity]
|
|
1279
|
-
}],
|
|
1280
|
-
/**
|
|
1281
|
-
* Text Decoration
|
|
1282
|
-
* @see https://tailwindcss.com/docs/text-decoration
|
|
1283
|
-
*/
|
|
1284
|
-
"text-decoration": ["underline", "overline", "line-through", "no-underline"],
|
|
1285
|
-
/**
|
|
1286
|
-
* Text Decoration Style
|
|
1287
|
-
* @see https://tailwindcss.com/docs/text-decoration-style
|
|
1288
|
-
*/
|
|
1289
|
-
"text-decoration-style": [{
|
|
1290
|
-
decoration: [...getLineStyles(), "wavy"]
|
|
1291
|
-
}],
|
|
1292
|
-
/**
|
|
1293
|
-
* Text Decoration Thickness
|
|
1294
|
-
* @see https://tailwindcss.com/docs/text-decoration-thickness
|
|
1295
|
-
*/
|
|
1296
|
-
"text-decoration-thickness": [{
|
|
1297
|
-
decoration: ["auto", "from-font", isLength, isArbitraryLength]
|
|
1298
|
-
}],
|
|
1299
|
-
/**
|
|
1300
|
-
* Text Underline Offset
|
|
1301
|
-
* @see https://tailwindcss.com/docs/text-underline-offset
|
|
1302
|
-
*/
|
|
1303
|
-
"underline-offset": [{
|
|
1304
|
-
"underline-offset": ["auto", isLength, isArbitraryValue]
|
|
1305
|
-
}],
|
|
1306
|
-
/**
|
|
1307
|
-
* Text Decoration Color
|
|
1308
|
-
* @see https://tailwindcss.com/docs/text-decoration-color
|
|
1309
|
-
*/
|
|
1310
|
-
"text-decoration-color": [{
|
|
1311
|
-
decoration: [colors]
|
|
1312
|
-
}],
|
|
1313
|
-
/**
|
|
1314
|
-
* Text Transform
|
|
1315
|
-
* @see https://tailwindcss.com/docs/text-transform
|
|
1316
|
-
*/
|
|
1317
|
-
"text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
|
|
1318
|
-
/**
|
|
1319
|
-
* Text Overflow
|
|
1320
|
-
* @see https://tailwindcss.com/docs/text-overflow
|
|
1321
|
-
*/
|
|
1322
|
-
"text-overflow": ["truncate", "text-ellipsis", "text-clip"],
|
|
1323
|
-
/**
|
|
1324
|
-
* Text Wrap
|
|
1325
|
-
* @see https://tailwindcss.com/docs/text-wrap
|
|
1326
|
-
*/
|
|
1327
|
-
"text-wrap": [{
|
|
1328
|
-
text: ["wrap", "nowrap", "balance", "pretty"]
|
|
1329
|
-
}],
|
|
1330
|
-
/**
|
|
1331
|
-
* Text Indent
|
|
1332
|
-
* @see https://tailwindcss.com/docs/text-indent
|
|
1333
|
-
*/
|
|
1334
|
-
indent: [{
|
|
1335
|
-
indent: getSpacingWithArbitrary()
|
|
1336
|
-
}],
|
|
1337
|
-
/**
|
|
1338
|
-
* Vertical Alignment
|
|
1339
|
-
* @see https://tailwindcss.com/docs/vertical-align
|
|
1340
|
-
*/
|
|
1341
|
-
"vertical-align": [{
|
|
1342
|
-
align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", isArbitraryValue]
|
|
1343
|
-
}],
|
|
1344
|
-
/**
|
|
1345
|
-
* Whitespace
|
|
1346
|
-
* @see https://tailwindcss.com/docs/whitespace
|
|
1347
|
-
*/
|
|
1348
|
-
whitespace: [{
|
|
1349
|
-
whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
|
|
1350
|
-
}],
|
|
1351
|
-
/**
|
|
1352
|
-
* Word Break
|
|
1353
|
-
* @see https://tailwindcss.com/docs/word-break
|
|
1354
|
-
*/
|
|
1355
|
-
break: [{
|
|
1356
|
-
break: ["normal", "words", "all", "keep"]
|
|
1357
|
-
}],
|
|
1358
|
-
/**
|
|
1359
|
-
* Hyphens
|
|
1360
|
-
* @see https://tailwindcss.com/docs/hyphens
|
|
1361
|
-
*/
|
|
1362
|
-
hyphens: [{
|
|
1363
|
-
hyphens: ["none", "manual", "auto"]
|
|
1364
|
-
}],
|
|
1365
|
-
/**
|
|
1366
|
-
* Content
|
|
1367
|
-
* @see https://tailwindcss.com/docs/content
|
|
1368
|
-
*/
|
|
1369
|
-
content: [{
|
|
1370
|
-
content: ["none", isArbitraryValue]
|
|
1371
|
-
}],
|
|
1372
|
-
// Backgrounds
|
|
1373
|
-
/**
|
|
1374
|
-
* Background Attachment
|
|
1375
|
-
* @see https://tailwindcss.com/docs/background-attachment
|
|
1376
|
-
*/
|
|
1377
|
-
"bg-attachment": [{
|
|
1378
|
-
bg: ["fixed", "local", "scroll"]
|
|
1379
|
-
}],
|
|
1380
|
-
/**
|
|
1381
|
-
* Background Clip
|
|
1382
|
-
* @see https://tailwindcss.com/docs/background-clip
|
|
1383
|
-
*/
|
|
1384
|
-
"bg-clip": [{
|
|
1385
|
-
"bg-clip": ["border", "padding", "content", "text"]
|
|
1386
|
-
}],
|
|
1387
|
-
/**
|
|
1388
|
-
* Background Opacity
|
|
1389
|
-
* @deprecated since Tailwind CSS v3.0.0
|
|
1390
|
-
* @see https://tailwindcss.com/docs/background-opacity
|
|
1391
|
-
*/
|
|
1392
|
-
"bg-opacity": [{
|
|
1393
|
-
"bg-opacity": [opacity]
|
|
1394
|
-
}],
|
|
1395
|
-
/**
|
|
1396
|
-
* Background Origin
|
|
1397
|
-
* @see https://tailwindcss.com/docs/background-origin
|
|
1398
|
-
*/
|
|
1399
|
-
"bg-origin": [{
|
|
1400
|
-
"bg-origin": ["border", "padding", "content"]
|
|
1401
|
-
}],
|
|
1402
|
-
/**
|
|
1403
|
-
* Background Position
|
|
1404
|
-
* @see https://tailwindcss.com/docs/background-position
|
|
1405
|
-
*/
|
|
1406
|
-
"bg-position": [{
|
|
1407
|
-
bg: [...getPositions(), isArbitraryPosition]
|
|
1408
|
-
}],
|
|
1409
|
-
/**
|
|
1410
|
-
* Background Repeat
|
|
1411
|
-
* @see https://tailwindcss.com/docs/background-repeat
|
|
1412
|
-
*/
|
|
1413
|
-
"bg-repeat": [{
|
|
1414
|
-
bg: ["no-repeat", {
|
|
1415
|
-
repeat: ["", "x", "y", "round", "space"]
|
|
1416
|
-
}]
|
|
1417
|
-
}],
|
|
1418
|
-
/**
|
|
1419
|
-
* Background Size
|
|
1420
|
-
* @see https://tailwindcss.com/docs/background-size
|
|
1421
|
-
*/
|
|
1422
|
-
"bg-size": [{
|
|
1423
|
-
bg: ["auto", "cover", "contain", isArbitrarySize]
|
|
1424
|
-
}],
|
|
1425
|
-
/**
|
|
1426
|
-
* Background Image
|
|
1427
|
-
* @see https://tailwindcss.com/docs/background-image
|
|
1428
|
-
*/
|
|
1429
|
-
"bg-image": [{
|
|
1430
|
-
bg: ["none", {
|
|
1431
|
-
"gradient-to": ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
|
|
1432
|
-
}, isArbitraryImage]
|
|
1433
|
-
}],
|
|
1434
|
-
/**
|
|
1435
|
-
* Background Color
|
|
1436
|
-
* @see https://tailwindcss.com/docs/background-color
|
|
1437
|
-
*/
|
|
1438
|
-
"bg-color": [{
|
|
1439
|
-
bg: [colors]
|
|
1440
|
-
}],
|
|
1441
|
-
/**
|
|
1442
|
-
* Gradient Color Stops From Position
|
|
1443
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1444
|
-
*/
|
|
1445
|
-
"gradient-from-pos": [{
|
|
1446
|
-
from: [gradientColorStopPositions]
|
|
1447
|
-
}],
|
|
1448
|
-
/**
|
|
1449
|
-
* Gradient Color Stops Via Position
|
|
1450
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1451
|
-
*/
|
|
1452
|
-
"gradient-via-pos": [{
|
|
1453
|
-
via: [gradientColorStopPositions]
|
|
1454
|
-
}],
|
|
1455
|
-
/**
|
|
1456
|
-
* Gradient Color Stops To Position
|
|
1457
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1458
|
-
*/
|
|
1459
|
-
"gradient-to-pos": [{
|
|
1460
|
-
to: [gradientColorStopPositions]
|
|
1461
|
-
}],
|
|
1462
|
-
/**
|
|
1463
|
-
* Gradient Color Stops From
|
|
1464
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1465
|
-
*/
|
|
1466
|
-
"gradient-from": [{
|
|
1467
|
-
from: [gradientColorStops]
|
|
1468
|
-
}],
|
|
1469
|
-
/**
|
|
1470
|
-
* Gradient Color Stops Via
|
|
1471
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1472
|
-
*/
|
|
1473
|
-
"gradient-via": [{
|
|
1474
|
-
via: [gradientColorStops]
|
|
1475
|
-
}],
|
|
1476
|
-
/**
|
|
1477
|
-
* Gradient Color Stops To
|
|
1478
|
-
* @see https://tailwindcss.com/docs/gradient-color-stops
|
|
1479
|
-
*/
|
|
1480
|
-
"gradient-to": [{
|
|
1481
|
-
to: [gradientColorStops]
|
|
1482
|
-
}],
|
|
1483
|
-
// Borders
|
|
1484
|
-
/**
|
|
1485
|
-
* Border Radius
|
|
1486
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1487
|
-
*/
|
|
1488
|
-
rounded: [{
|
|
1489
|
-
rounded: [borderRadius]
|
|
1490
|
-
}],
|
|
1491
|
-
/**
|
|
1492
|
-
* Border Radius Start
|
|
1493
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1494
|
-
*/
|
|
1495
|
-
"rounded-s": [{
|
|
1496
|
-
"rounded-s": [borderRadius]
|
|
1497
|
-
}],
|
|
1498
|
-
/**
|
|
1499
|
-
* Border Radius End
|
|
1500
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1501
|
-
*/
|
|
1502
|
-
"rounded-e": [{
|
|
1503
|
-
"rounded-e": [borderRadius]
|
|
1504
|
-
}],
|
|
1505
|
-
/**
|
|
1506
|
-
* Border Radius Top
|
|
1507
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1508
|
-
*/
|
|
1509
|
-
"rounded-t": [{
|
|
1510
|
-
"rounded-t": [borderRadius]
|
|
1511
|
-
}],
|
|
1512
|
-
/**
|
|
1513
|
-
* Border Radius Right
|
|
1514
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1515
|
-
*/
|
|
1516
|
-
"rounded-r": [{
|
|
1517
|
-
"rounded-r": [borderRadius]
|
|
1518
|
-
}],
|
|
1519
|
-
/**
|
|
1520
|
-
* Border Radius Bottom
|
|
1521
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1522
|
-
*/
|
|
1523
|
-
"rounded-b": [{
|
|
1524
|
-
"rounded-b": [borderRadius]
|
|
1525
|
-
}],
|
|
1526
|
-
/**
|
|
1527
|
-
* Border Radius Left
|
|
1528
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1529
|
-
*/
|
|
1530
|
-
"rounded-l": [{
|
|
1531
|
-
"rounded-l": [borderRadius]
|
|
1532
|
-
}],
|
|
1533
|
-
/**
|
|
1534
|
-
* Border Radius Start Start
|
|
1535
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1536
|
-
*/
|
|
1537
|
-
"rounded-ss": [{
|
|
1538
|
-
"rounded-ss": [borderRadius]
|
|
1539
|
-
}],
|
|
1540
|
-
/**
|
|
1541
|
-
* Border Radius Start End
|
|
1542
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1543
|
-
*/
|
|
1544
|
-
"rounded-se": [{
|
|
1545
|
-
"rounded-se": [borderRadius]
|
|
1546
|
-
}],
|
|
1547
|
-
/**
|
|
1548
|
-
* Border Radius End End
|
|
1549
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1550
|
-
*/
|
|
1551
|
-
"rounded-ee": [{
|
|
1552
|
-
"rounded-ee": [borderRadius]
|
|
1553
|
-
}],
|
|
1554
|
-
/**
|
|
1555
|
-
* Border Radius End Start
|
|
1556
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1557
|
-
*/
|
|
1558
|
-
"rounded-es": [{
|
|
1559
|
-
"rounded-es": [borderRadius]
|
|
1560
|
-
}],
|
|
1561
|
-
/**
|
|
1562
|
-
* Border Radius Top Left
|
|
1563
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1564
|
-
*/
|
|
1565
|
-
"rounded-tl": [{
|
|
1566
|
-
"rounded-tl": [borderRadius]
|
|
1567
|
-
}],
|
|
1568
|
-
/**
|
|
1569
|
-
* Border Radius Top Right
|
|
1570
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1571
|
-
*/
|
|
1572
|
-
"rounded-tr": [{
|
|
1573
|
-
"rounded-tr": [borderRadius]
|
|
1574
|
-
}],
|
|
1575
|
-
/**
|
|
1576
|
-
* Border Radius Bottom Right
|
|
1577
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1578
|
-
*/
|
|
1579
|
-
"rounded-br": [{
|
|
1580
|
-
"rounded-br": [borderRadius]
|
|
1581
|
-
}],
|
|
1582
|
-
/**
|
|
1583
|
-
* Border Radius Bottom Left
|
|
1584
|
-
* @see https://tailwindcss.com/docs/border-radius
|
|
1585
|
-
*/
|
|
1586
|
-
"rounded-bl": [{
|
|
1587
|
-
"rounded-bl": [borderRadius]
|
|
1588
|
-
}],
|
|
1589
|
-
/**
|
|
1590
|
-
* Border Width
|
|
1591
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1592
|
-
*/
|
|
1593
|
-
"border-w": [{
|
|
1594
|
-
border: [borderWidth]
|
|
1595
|
-
}],
|
|
1596
|
-
/**
|
|
1597
|
-
* Border Width X
|
|
1598
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1599
|
-
*/
|
|
1600
|
-
"border-w-x": [{
|
|
1601
|
-
"border-x": [borderWidth]
|
|
1602
|
-
}],
|
|
1603
|
-
/**
|
|
1604
|
-
* Border Width Y
|
|
1605
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1606
|
-
*/
|
|
1607
|
-
"border-w-y": [{
|
|
1608
|
-
"border-y": [borderWidth]
|
|
1609
|
-
}],
|
|
1610
|
-
/**
|
|
1611
|
-
* Border Width Start
|
|
1612
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1613
|
-
*/
|
|
1614
|
-
"border-w-s": [{
|
|
1615
|
-
"border-s": [borderWidth]
|
|
1616
|
-
}],
|
|
1617
|
-
/**
|
|
1618
|
-
* Border Width End
|
|
1619
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1620
|
-
*/
|
|
1621
|
-
"border-w-e": [{
|
|
1622
|
-
"border-e": [borderWidth]
|
|
1623
|
-
}],
|
|
1624
|
-
/**
|
|
1625
|
-
* Border Width Top
|
|
1626
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1627
|
-
*/
|
|
1628
|
-
"border-w-t": [{
|
|
1629
|
-
"border-t": [borderWidth]
|
|
1630
|
-
}],
|
|
1631
|
-
/**
|
|
1632
|
-
* Border Width Right
|
|
1633
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1634
|
-
*/
|
|
1635
|
-
"border-w-r": [{
|
|
1636
|
-
"border-r": [borderWidth]
|
|
1637
|
-
}],
|
|
1638
|
-
/**
|
|
1639
|
-
* Border Width Bottom
|
|
1640
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1641
|
-
*/
|
|
1642
|
-
"border-w-b": [{
|
|
1643
|
-
"border-b": [borderWidth]
|
|
1644
|
-
}],
|
|
1645
|
-
/**
|
|
1646
|
-
* Border Width Left
|
|
1647
|
-
* @see https://tailwindcss.com/docs/border-width
|
|
1648
|
-
*/
|
|
1649
|
-
"border-w-l": [{
|
|
1650
|
-
"border-l": [borderWidth]
|
|
1651
|
-
}],
|
|
1652
|
-
/**
|
|
1653
|
-
* Border Opacity
|
|
1654
|
-
* @see https://tailwindcss.com/docs/border-opacity
|
|
1655
|
-
*/
|
|
1656
|
-
"border-opacity": [{
|
|
1657
|
-
"border-opacity": [opacity]
|
|
1658
|
-
}],
|
|
1659
|
-
/**
|
|
1660
|
-
* Border Style
|
|
1661
|
-
* @see https://tailwindcss.com/docs/border-style
|
|
1662
|
-
*/
|
|
1663
|
-
"border-style": [{
|
|
1664
|
-
border: [...getLineStyles(), "hidden"]
|
|
1665
|
-
}],
|
|
1666
|
-
/**
|
|
1667
|
-
* Divide Width X
|
|
1668
|
-
* @see https://tailwindcss.com/docs/divide-width
|
|
1669
|
-
*/
|
|
1670
|
-
"divide-x": [{
|
|
1671
|
-
"divide-x": [borderWidth]
|
|
1672
|
-
}],
|
|
1673
|
-
/**
|
|
1674
|
-
* Divide Width X Reverse
|
|
1675
|
-
* @see https://tailwindcss.com/docs/divide-width
|
|
1676
|
-
*/
|
|
1677
|
-
"divide-x-reverse": ["divide-x-reverse"],
|
|
1678
|
-
/**
|
|
1679
|
-
* Divide Width Y
|
|
1680
|
-
* @see https://tailwindcss.com/docs/divide-width
|
|
1681
|
-
*/
|
|
1682
|
-
"divide-y": [{
|
|
1683
|
-
"divide-y": [borderWidth]
|
|
1684
|
-
}],
|
|
1685
|
-
/**
|
|
1686
|
-
* Divide Width Y Reverse
|
|
1687
|
-
* @see https://tailwindcss.com/docs/divide-width
|
|
1688
|
-
*/
|
|
1689
|
-
"divide-y-reverse": ["divide-y-reverse"],
|
|
1690
|
-
/**
|
|
1691
|
-
* Divide Opacity
|
|
1692
|
-
* @see https://tailwindcss.com/docs/divide-opacity
|
|
1693
|
-
*/
|
|
1694
|
-
"divide-opacity": [{
|
|
1695
|
-
"divide-opacity": [opacity]
|
|
1696
|
-
}],
|
|
1697
|
-
/**
|
|
1698
|
-
* Divide Style
|
|
1699
|
-
* @see https://tailwindcss.com/docs/divide-style
|
|
1700
|
-
*/
|
|
1701
|
-
"divide-style": [{
|
|
1702
|
-
divide: getLineStyles()
|
|
1703
|
-
}],
|
|
1704
|
-
/**
|
|
1705
|
-
* Border Color
|
|
1706
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1707
|
-
*/
|
|
1708
|
-
"border-color": [{
|
|
1709
|
-
border: [borderColor]
|
|
1710
|
-
}],
|
|
1711
|
-
/**
|
|
1712
|
-
* Border Color X
|
|
1713
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1714
|
-
*/
|
|
1715
|
-
"border-color-x": [{
|
|
1716
|
-
"border-x": [borderColor]
|
|
1717
|
-
}],
|
|
1718
|
-
/**
|
|
1719
|
-
* Border Color Y
|
|
1720
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1721
|
-
*/
|
|
1722
|
-
"border-color-y": [{
|
|
1723
|
-
"border-y": [borderColor]
|
|
1724
|
-
}],
|
|
1725
|
-
/**
|
|
1726
|
-
* Border Color S
|
|
1727
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1728
|
-
*/
|
|
1729
|
-
"border-color-s": [{
|
|
1730
|
-
"border-s": [borderColor]
|
|
1731
|
-
}],
|
|
1732
|
-
/**
|
|
1733
|
-
* Border Color E
|
|
1734
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1735
|
-
*/
|
|
1736
|
-
"border-color-e": [{
|
|
1737
|
-
"border-e": [borderColor]
|
|
1738
|
-
}],
|
|
1739
|
-
/**
|
|
1740
|
-
* Border Color Top
|
|
1741
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1742
|
-
*/
|
|
1743
|
-
"border-color-t": [{
|
|
1744
|
-
"border-t": [borderColor]
|
|
1745
|
-
}],
|
|
1746
|
-
/**
|
|
1747
|
-
* Border Color Right
|
|
1748
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1749
|
-
*/
|
|
1750
|
-
"border-color-r": [{
|
|
1751
|
-
"border-r": [borderColor]
|
|
1752
|
-
}],
|
|
1753
|
-
/**
|
|
1754
|
-
* Border Color Bottom
|
|
1755
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1756
|
-
*/
|
|
1757
|
-
"border-color-b": [{
|
|
1758
|
-
"border-b": [borderColor]
|
|
1759
|
-
}],
|
|
1760
|
-
/**
|
|
1761
|
-
* Border Color Left
|
|
1762
|
-
* @see https://tailwindcss.com/docs/border-color
|
|
1763
|
-
*/
|
|
1764
|
-
"border-color-l": [{
|
|
1765
|
-
"border-l": [borderColor]
|
|
1766
|
-
}],
|
|
1767
|
-
/**
|
|
1768
|
-
* Divide Color
|
|
1769
|
-
* @see https://tailwindcss.com/docs/divide-color
|
|
1770
|
-
*/
|
|
1771
|
-
"divide-color": [{
|
|
1772
|
-
divide: [borderColor]
|
|
1773
|
-
}],
|
|
1774
|
-
/**
|
|
1775
|
-
* Outline Style
|
|
1776
|
-
* @see https://tailwindcss.com/docs/outline-style
|
|
1777
|
-
*/
|
|
1778
|
-
"outline-style": [{
|
|
1779
|
-
outline: ["", ...getLineStyles()]
|
|
1780
|
-
}],
|
|
1781
|
-
/**
|
|
1782
|
-
* Outline Offset
|
|
1783
|
-
* @see https://tailwindcss.com/docs/outline-offset
|
|
1784
|
-
*/
|
|
1785
|
-
"outline-offset": [{
|
|
1786
|
-
"outline-offset": [isLength, isArbitraryValue]
|
|
1787
|
-
}],
|
|
1788
|
-
/**
|
|
1789
|
-
* Outline Width
|
|
1790
|
-
* @see https://tailwindcss.com/docs/outline-width
|
|
1791
|
-
*/
|
|
1792
|
-
"outline-w": [{
|
|
1793
|
-
outline: [isLength, isArbitraryLength]
|
|
1794
|
-
}],
|
|
1795
|
-
/**
|
|
1796
|
-
* Outline Color
|
|
1797
|
-
* @see https://tailwindcss.com/docs/outline-color
|
|
1798
|
-
*/
|
|
1799
|
-
"outline-color": [{
|
|
1800
|
-
outline: [colors]
|
|
1801
|
-
}],
|
|
1802
|
-
/**
|
|
1803
|
-
* Ring Width
|
|
1804
|
-
* @see https://tailwindcss.com/docs/ring-width
|
|
1805
|
-
*/
|
|
1806
|
-
"ring-w": [{
|
|
1807
|
-
ring: getLengthWithEmptyAndArbitrary()
|
|
1808
|
-
}],
|
|
1809
|
-
/**
|
|
1810
|
-
* Ring Width Inset
|
|
1811
|
-
* @see https://tailwindcss.com/docs/ring-width
|
|
1812
|
-
*/
|
|
1813
|
-
"ring-w-inset": ["ring-inset"],
|
|
1814
|
-
/**
|
|
1815
|
-
* Ring Color
|
|
1816
|
-
* @see https://tailwindcss.com/docs/ring-color
|
|
1817
|
-
*/
|
|
1818
|
-
"ring-color": [{
|
|
1819
|
-
ring: [colors]
|
|
1820
|
-
}],
|
|
1821
|
-
/**
|
|
1822
|
-
* Ring Opacity
|
|
1823
|
-
* @see https://tailwindcss.com/docs/ring-opacity
|
|
1824
|
-
*/
|
|
1825
|
-
"ring-opacity": [{
|
|
1826
|
-
"ring-opacity": [opacity]
|
|
1827
|
-
}],
|
|
1828
|
-
/**
|
|
1829
|
-
* Ring Offset Width
|
|
1830
|
-
* @see https://tailwindcss.com/docs/ring-offset-width
|
|
1831
|
-
*/
|
|
1832
|
-
"ring-offset-w": [{
|
|
1833
|
-
"ring-offset": [isLength, isArbitraryLength]
|
|
1834
|
-
}],
|
|
1835
|
-
/**
|
|
1836
|
-
* Ring Offset Color
|
|
1837
|
-
* @see https://tailwindcss.com/docs/ring-offset-color
|
|
1838
|
-
*/
|
|
1839
|
-
"ring-offset-color": [{
|
|
1840
|
-
"ring-offset": [colors]
|
|
1841
|
-
}],
|
|
1842
|
-
// Effects
|
|
1843
|
-
/**
|
|
1844
|
-
* Box Shadow
|
|
1845
|
-
* @see https://tailwindcss.com/docs/box-shadow
|
|
1846
|
-
*/
|
|
1847
|
-
shadow: [{
|
|
1848
|
-
shadow: ["", "inner", "none", isTshirtSize, isArbitraryShadow]
|
|
1849
|
-
}],
|
|
1850
|
-
/**
|
|
1851
|
-
* Box Shadow Color
|
|
1852
|
-
* @see https://tailwindcss.com/docs/box-shadow-color
|
|
1853
|
-
*/
|
|
1854
|
-
"shadow-color": [{
|
|
1855
|
-
shadow: [isAny]
|
|
1856
|
-
}],
|
|
1857
|
-
/**
|
|
1858
|
-
* Opacity
|
|
1859
|
-
* @see https://tailwindcss.com/docs/opacity
|
|
1860
|
-
*/
|
|
1861
|
-
opacity: [{
|
|
1862
|
-
opacity: [opacity]
|
|
1863
|
-
}],
|
|
1864
|
-
/**
|
|
1865
|
-
* Mix Blend Mode
|
|
1866
|
-
* @see https://tailwindcss.com/docs/mix-blend-mode
|
|
1867
|
-
*/
|
|
1868
|
-
"mix-blend": [{
|
|
1869
|
-
"mix-blend": [...getBlendModes(), "plus-lighter", "plus-darker"]
|
|
1870
|
-
}],
|
|
1871
|
-
/**
|
|
1872
|
-
* Background Blend Mode
|
|
1873
|
-
* @see https://tailwindcss.com/docs/background-blend-mode
|
|
1874
|
-
*/
|
|
1875
|
-
"bg-blend": [{
|
|
1876
|
-
"bg-blend": getBlendModes()
|
|
1877
|
-
}],
|
|
1878
|
-
// Filters
|
|
1879
|
-
/**
|
|
1880
|
-
* Filter
|
|
1881
|
-
* @deprecated since Tailwind CSS v3.0.0
|
|
1882
|
-
* @see https://tailwindcss.com/docs/filter
|
|
1883
|
-
*/
|
|
1884
|
-
filter: [{
|
|
1885
|
-
filter: ["", "none"]
|
|
1886
|
-
}],
|
|
1887
|
-
/**
|
|
1888
|
-
* Blur
|
|
1889
|
-
* @see https://tailwindcss.com/docs/blur
|
|
1890
|
-
*/
|
|
1891
|
-
blur: [{
|
|
1892
|
-
blur: [blur]
|
|
1893
|
-
}],
|
|
1894
|
-
/**
|
|
1895
|
-
* Brightness
|
|
1896
|
-
* @see https://tailwindcss.com/docs/brightness
|
|
1897
|
-
*/
|
|
1898
|
-
brightness: [{
|
|
1899
|
-
brightness: [brightness]
|
|
1900
|
-
}],
|
|
1901
|
-
/**
|
|
1902
|
-
* Contrast
|
|
1903
|
-
* @see https://tailwindcss.com/docs/contrast
|
|
1904
|
-
*/
|
|
1905
|
-
contrast: [{
|
|
1906
|
-
contrast: [contrast]
|
|
1907
|
-
}],
|
|
1908
|
-
/**
|
|
1909
|
-
* Drop Shadow
|
|
1910
|
-
* @see https://tailwindcss.com/docs/drop-shadow
|
|
1911
|
-
*/
|
|
1912
|
-
"drop-shadow": [{
|
|
1913
|
-
"drop-shadow": ["", "none", isTshirtSize, isArbitraryValue]
|
|
1914
|
-
}],
|
|
1915
|
-
/**
|
|
1916
|
-
* Grayscale
|
|
1917
|
-
* @see https://tailwindcss.com/docs/grayscale
|
|
1918
|
-
*/
|
|
1919
|
-
grayscale: [{
|
|
1920
|
-
grayscale: [grayscale]
|
|
1921
|
-
}],
|
|
1922
|
-
/**
|
|
1923
|
-
* Hue Rotate
|
|
1924
|
-
* @see https://tailwindcss.com/docs/hue-rotate
|
|
1925
|
-
*/
|
|
1926
|
-
"hue-rotate": [{
|
|
1927
|
-
"hue-rotate": [hueRotate]
|
|
1928
|
-
}],
|
|
1929
|
-
/**
|
|
1930
|
-
* Invert
|
|
1931
|
-
* @see https://tailwindcss.com/docs/invert
|
|
1932
|
-
*/
|
|
1933
|
-
invert: [{
|
|
1934
|
-
invert: [invert]
|
|
1935
|
-
}],
|
|
1936
|
-
/**
|
|
1937
|
-
* Saturate
|
|
1938
|
-
* @see https://tailwindcss.com/docs/saturate
|
|
1939
|
-
*/
|
|
1940
|
-
saturate: [{
|
|
1941
|
-
saturate: [saturate]
|
|
1942
|
-
}],
|
|
1943
|
-
/**
|
|
1944
|
-
* Sepia
|
|
1945
|
-
* @see https://tailwindcss.com/docs/sepia
|
|
1946
|
-
*/
|
|
1947
|
-
sepia: [{
|
|
1948
|
-
sepia: [sepia]
|
|
1949
|
-
}],
|
|
1950
|
-
/**
|
|
1951
|
-
* Backdrop Filter
|
|
1952
|
-
* @deprecated since Tailwind CSS v3.0.0
|
|
1953
|
-
* @see https://tailwindcss.com/docs/backdrop-filter
|
|
1954
|
-
*/
|
|
1955
|
-
"backdrop-filter": [{
|
|
1956
|
-
"backdrop-filter": ["", "none"]
|
|
1957
|
-
}],
|
|
1958
|
-
/**
|
|
1959
|
-
* Backdrop Blur
|
|
1960
|
-
* @see https://tailwindcss.com/docs/backdrop-blur
|
|
1961
|
-
*/
|
|
1962
|
-
"backdrop-blur": [{
|
|
1963
|
-
"backdrop-blur": [blur]
|
|
1964
|
-
}],
|
|
1965
|
-
/**
|
|
1966
|
-
* Backdrop Brightness
|
|
1967
|
-
* @see https://tailwindcss.com/docs/backdrop-brightness
|
|
1968
|
-
*/
|
|
1969
|
-
"backdrop-brightness": [{
|
|
1970
|
-
"backdrop-brightness": [brightness]
|
|
1971
|
-
}],
|
|
1972
|
-
/**
|
|
1973
|
-
* Backdrop Contrast
|
|
1974
|
-
* @see https://tailwindcss.com/docs/backdrop-contrast
|
|
1975
|
-
*/
|
|
1976
|
-
"backdrop-contrast": [{
|
|
1977
|
-
"backdrop-contrast": [contrast]
|
|
1978
|
-
}],
|
|
1979
|
-
/**
|
|
1980
|
-
* Backdrop Grayscale
|
|
1981
|
-
* @see https://tailwindcss.com/docs/backdrop-grayscale
|
|
1982
|
-
*/
|
|
1983
|
-
"backdrop-grayscale": [{
|
|
1984
|
-
"backdrop-grayscale": [grayscale]
|
|
1985
|
-
}],
|
|
1986
|
-
/**
|
|
1987
|
-
* Backdrop Hue Rotate
|
|
1988
|
-
* @see https://tailwindcss.com/docs/backdrop-hue-rotate
|
|
1989
|
-
*/
|
|
1990
|
-
"backdrop-hue-rotate": [{
|
|
1991
|
-
"backdrop-hue-rotate": [hueRotate]
|
|
1992
|
-
}],
|
|
1993
|
-
/**
|
|
1994
|
-
* Backdrop Invert
|
|
1995
|
-
* @see https://tailwindcss.com/docs/backdrop-invert
|
|
1996
|
-
*/
|
|
1997
|
-
"backdrop-invert": [{
|
|
1998
|
-
"backdrop-invert": [invert]
|
|
1999
|
-
}],
|
|
2000
|
-
/**
|
|
2001
|
-
* Backdrop Opacity
|
|
2002
|
-
* @see https://tailwindcss.com/docs/backdrop-opacity
|
|
2003
|
-
*/
|
|
2004
|
-
"backdrop-opacity": [{
|
|
2005
|
-
"backdrop-opacity": [opacity]
|
|
2006
|
-
}],
|
|
2007
|
-
/**
|
|
2008
|
-
* Backdrop Saturate
|
|
2009
|
-
* @see https://tailwindcss.com/docs/backdrop-saturate
|
|
2010
|
-
*/
|
|
2011
|
-
"backdrop-saturate": [{
|
|
2012
|
-
"backdrop-saturate": [saturate]
|
|
2013
|
-
}],
|
|
2014
|
-
/**
|
|
2015
|
-
* Backdrop Sepia
|
|
2016
|
-
* @see https://tailwindcss.com/docs/backdrop-sepia
|
|
2017
|
-
*/
|
|
2018
|
-
"backdrop-sepia": [{
|
|
2019
|
-
"backdrop-sepia": [sepia]
|
|
2020
|
-
}],
|
|
2021
|
-
// Tables
|
|
2022
|
-
/**
|
|
2023
|
-
* Border Collapse
|
|
2024
|
-
* @see https://tailwindcss.com/docs/border-collapse
|
|
2025
|
-
*/
|
|
2026
|
-
"border-collapse": [{
|
|
2027
|
-
border: ["collapse", "separate"]
|
|
2028
|
-
}],
|
|
2029
|
-
/**
|
|
2030
|
-
* Border Spacing
|
|
2031
|
-
* @see https://tailwindcss.com/docs/border-spacing
|
|
2032
|
-
*/
|
|
2033
|
-
"border-spacing": [{
|
|
2034
|
-
"border-spacing": [borderSpacing]
|
|
2035
|
-
}],
|
|
2036
|
-
/**
|
|
2037
|
-
* Border Spacing X
|
|
2038
|
-
* @see https://tailwindcss.com/docs/border-spacing
|
|
2039
|
-
*/
|
|
2040
|
-
"border-spacing-x": [{
|
|
2041
|
-
"border-spacing-x": [borderSpacing]
|
|
2042
|
-
}],
|
|
2043
|
-
/**
|
|
2044
|
-
* Border Spacing Y
|
|
2045
|
-
* @see https://tailwindcss.com/docs/border-spacing
|
|
2046
|
-
*/
|
|
2047
|
-
"border-spacing-y": [{
|
|
2048
|
-
"border-spacing-y": [borderSpacing]
|
|
2049
|
-
}],
|
|
2050
|
-
/**
|
|
2051
|
-
* Table Layout
|
|
2052
|
-
* @see https://tailwindcss.com/docs/table-layout
|
|
2053
|
-
*/
|
|
2054
|
-
"table-layout": [{
|
|
2055
|
-
table: ["auto", "fixed"]
|
|
2056
|
-
}],
|
|
2057
|
-
/**
|
|
2058
|
-
* Caption Side
|
|
2059
|
-
* @see https://tailwindcss.com/docs/caption-side
|
|
2060
|
-
*/
|
|
2061
|
-
caption: [{
|
|
2062
|
-
caption: ["top", "bottom"]
|
|
2063
|
-
}],
|
|
2064
|
-
// Transitions and Animation
|
|
2065
|
-
/**
|
|
2066
|
-
* Tranisition Property
|
|
2067
|
-
* @see https://tailwindcss.com/docs/transition-property
|
|
2068
|
-
*/
|
|
2069
|
-
transition: [{
|
|
2070
|
-
transition: ["none", "all", "", "colors", "opacity", "shadow", "transform", isArbitraryValue]
|
|
2071
|
-
}],
|
|
2072
|
-
/**
|
|
2073
|
-
* Transition Duration
|
|
2074
|
-
* @see https://tailwindcss.com/docs/transition-duration
|
|
2075
|
-
*/
|
|
2076
|
-
duration: [{
|
|
2077
|
-
duration: getNumberAndArbitrary()
|
|
2078
|
-
}],
|
|
2079
|
-
/**
|
|
2080
|
-
* Transition Timing Function
|
|
2081
|
-
* @see https://tailwindcss.com/docs/transition-timing-function
|
|
2082
|
-
*/
|
|
2083
|
-
ease: [{
|
|
2084
|
-
ease: ["linear", "in", "out", "in-out", isArbitraryValue]
|
|
2085
|
-
}],
|
|
2086
|
-
/**
|
|
2087
|
-
* Transition Delay
|
|
2088
|
-
* @see https://tailwindcss.com/docs/transition-delay
|
|
2089
|
-
*/
|
|
2090
|
-
delay: [{
|
|
2091
|
-
delay: getNumberAndArbitrary()
|
|
2092
|
-
}],
|
|
2093
|
-
/**
|
|
2094
|
-
* Animation
|
|
2095
|
-
* @see https://tailwindcss.com/docs/animation
|
|
2096
|
-
*/
|
|
2097
|
-
animate: [{
|
|
2098
|
-
animate: ["none", "spin", "ping", "pulse", "bounce", isArbitraryValue]
|
|
2099
|
-
}],
|
|
2100
|
-
// Transforms
|
|
2101
|
-
/**
|
|
2102
|
-
* Transform
|
|
2103
|
-
* @see https://tailwindcss.com/docs/transform
|
|
2104
|
-
*/
|
|
2105
|
-
transform: [{
|
|
2106
|
-
transform: ["", "gpu", "none"]
|
|
2107
|
-
}],
|
|
2108
|
-
/**
|
|
2109
|
-
* Scale
|
|
2110
|
-
* @see https://tailwindcss.com/docs/scale
|
|
2111
|
-
*/
|
|
2112
|
-
scale: [{
|
|
2113
|
-
scale: [scale]
|
|
2114
|
-
}],
|
|
2115
|
-
/**
|
|
2116
|
-
* Scale X
|
|
2117
|
-
* @see https://tailwindcss.com/docs/scale
|
|
2118
|
-
*/
|
|
2119
|
-
"scale-x": [{
|
|
2120
|
-
"scale-x": [scale]
|
|
2121
|
-
}],
|
|
2122
|
-
/**
|
|
2123
|
-
* Scale Y
|
|
2124
|
-
* @see https://tailwindcss.com/docs/scale
|
|
2125
|
-
*/
|
|
2126
|
-
"scale-y": [{
|
|
2127
|
-
"scale-y": [scale]
|
|
2128
|
-
}],
|
|
2129
|
-
/**
|
|
2130
|
-
* Rotate
|
|
2131
|
-
* @see https://tailwindcss.com/docs/rotate
|
|
2132
|
-
*/
|
|
2133
|
-
rotate: [{
|
|
2134
|
-
rotate: [isInteger, isArbitraryValue]
|
|
2135
|
-
}],
|
|
2136
|
-
/**
|
|
2137
|
-
* Translate X
|
|
2138
|
-
* @see https://tailwindcss.com/docs/translate
|
|
2139
|
-
*/
|
|
2140
|
-
"translate-x": [{
|
|
2141
|
-
"translate-x": [translate]
|
|
2142
|
-
}],
|
|
2143
|
-
/**
|
|
2144
|
-
* Translate Y
|
|
2145
|
-
* @see https://tailwindcss.com/docs/translate
|
|
2146
|
-
*/
|
|
2147
|
-
"translate-y": [{
|
|
2148
|
-
"translate-y": [translate]
|
|
2149
|
-
}],
|
|
2150
|
-
/**
|
|
2151
|
-
* Skew X
|
|
2152
|
-
* @see https://tailwindcss.com/docs/skew
|
|
2153
|
-
*/
|
|
2154
|
-
"skew-x": [{
|
|
2155
|
-
"skew-x": [skew]
|
|
2156
|
-
}],
|
|
2157
|
-
/**
|
|
2158
|
-
* Skew Y
|
|
2159
|
-
* @see https://tailwindcss.com/docs/skew
|
|
2160
|
-
*/
|
|
2161
|
-
"skew-y": [{
|
|
2162
|
-
"skew-y": [skew]
|
|
2163
|
-
}],
|
|
2164
|
-
/**
|
|
2165
|
-
* Transform Origin
|
|
2166
|
-
* @see https://tailwindcss.com/docs/transform-origin
|
|
2167
|
-
*/
|
|
2168
|
-
"transform-origin": [{
|
|
2169
|
-
origin: ["center", "top", "top-right", "right", "bottom-right", "bottom", "bottom-left", "left", "top-left", isArbitraryValue]
|
|
2170
|
-
}],
|
|
2171
|
-
// Interactivity
|
|
2172
|
-
/**
|
|
2173
|
-
* Accent Color
|
|
2174
|
-
* @see https://tailwindcss.com/docs/accent-color
|
|
2175
|
-
*/
|
|
2176
|
-
accent: [{
|
|
2177
|
-
accent: ["auto", colors]
|
|
2178
|
-
}],
|
|
2179
|
-
/**
|
|
2180
|
-
* Appearance
|
|
2181
|
-
* @see https://tailwindcss.com/docs/appearance
|
|
2182
|
-
*/
|
|
2183
|
-
appearance: [{
|
|
2184
|
-
appearance: ["none", "auto"]
|
|
2185
|
-
}],
|
|
2186
|
-
/**
|
|
2187
|
-
* Cursor
|
|
2188
|
-
* @see https://tailwindcss.com/docs/cursor
|
|
2189
|
-
*/
|
|
2190
|
-
cursor: [{
|
|
2191
|
-
cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", isArbitraryValue]
|
|
2192
|
-
}],
|
|
2193
|
-
/**
|
|
2194
|
-
* Caret Color
|
|
2195
|
-
* @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
|
|
2196
|
-
*/
|
|
2197
|
-
"caret-color": [{
|
|
2198
|
-
caret: [colors]
|
|
2199
|
-
}],
|
|
2200
|
-
/**
|
|
2201
|
-
* Pointer Events
|
|
2202
|
-
* @see https://tailwindcss.com/docs/pointer-events
|
|
2203
|
-
*/
|
|
2204
|
-
"pointer-events": [{
|
|
2205
|
-
"pointer-events": ["none", "auto"]
|
|
2206
|
-
}],
|
|
2207
|
-
/**
|
|
2208
|
-
* Resize
|
|
2209
|
-
* @see https://tailwindcss.com/docs/resize
|
|
2210
|
-
*/
|
|
2211
|
-
resize: [{
|
|
2212
|
-
resize: ["none", "y", "x", ""]
|
|
2213
|
-
}],
|
|
2214
|
-
/**
|
|
2215
|
-
* Scroll Behavior
|
|
2216
|
-
* @see https://tailwindcss.com/docs/scroll-behavior
|
|
2217
|
-
*/
|
|
2218
|
-
"scroll-behavior": [{
|
|
2219
|
-
scroll: ["auto", "smooth"]
|
|
2220
|
-
}],
|
|
2221
|
-
/**
|
|
2222
|
-
* Scroll Margin
|
|
2223
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2224
|
-
*/
|
|
2225
|
-
"scroll-m": [{
|
|
2226
|
-
"scroll-m": getSpacingWithArbitrary()
|
|
2227
|
-
}],
|
|
2228
|
-
/**
|
|
2229
|
-
* Scroll Margin X
|
|
2230
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2231
|
-
*/
|
|
2232
|
-
"scroll-mx": [{
|
|
2233
|
-
"scroll-mx": getSpacingWithArbitrary()
|
|
2234
|
-
}],
|
|
2235
|
-
/**
|
|
2236
|
-
* Scroll Margin Y
|
|
2237
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2238
|
-
*/
|
|
2239
|
-
"scroll-my": [{
|
|
2240
|
-
"scroll-my": getSpacingWithArbitrary()
|
|
2241
|
-
}],
|
|
2242
|
-
/**
|
|
2243
|
-
* Scroll Margin Start
|
|
2244
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2245
|
-
*/
|
|
2246
|
-
"scroll-ms": [{
|
|
2247
|
-
"scroll-ms": getSpacingWithArbitrary()
|
|
2248
|
-
}],
|
|
2249
|
-
/**
|
|
2250
|
-
* Scroll Margin End
|
|
2251
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2252
|
-
*/
|
|
2253
|
-
"scroll-me": [{
|
|
2254
|
-
"scroll-me": getSpacingWithArbitrary()
|
|
2255
|
-
}],
|
|
2256
|
-
/**
|
|
2257
|
-
* Scroll Margin Top
|
|
2258
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2259
|
-
*/
|
|
2260
|
-
"scroll-mt": [{
|
|
2261
|
-
"scroll-mt": getSpacingWithArbitrary()
|
|
2262
|
-
}],
|
|
2263
|
-
/**
|
|
2264
|
-
* Scroll Margin Right
|
|
2265
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2266
|
-
*/
|
|
2267
|
-
"scroll-mr": [{
|
|
2268
|
-
"scroll-mr": getSpacingWithArbitrary()
|
|
2269
|
-
}],
|
|
2270
|
-
/**
|
|
2271
|
-
* Scroll Margin Bottom
|
|
2272
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2273
|
-
*/
|
|
2274
|
-
"scroll-mb": [{
|
|
2275
|
-
"scroll-mb": getSpacingWithArbitrary()
|
|
2276
|
-
}],
|
|
2277
|
-
/**
|
|
2278
|
-
* Scroll Margin Left
|
|
2279
|
-
* @see https://tailwindcss.com/docs/scroll-margin
|
|
2280
|
-
*/
|
|
2281
|
-
"scroll-ml": [{
|
|
2282
|
-
"scroll-ml": getSpacingWithArbitrary()
|
|
2283
|
-
}],
|
|
2284
|
-
/**
|
|
2285
|
-
* Scroll Padding
|
|
2286
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2287
|
-
*/
|
|
2288
|
-
"scroll-p": [{
|
|
2289
|
-
"scroll-p": getSpacingWithArbitrary()
|
|
2290
|
-
}],
|
|
2291
|
-
/**
|
|
2292
|
-
* Scroll Padding X
|
|
2293
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2294
|
-
*/
|
|
2295
|
-
"scroll-px": [{
|
|
2296
|
-
"scroll-px": getSpacingWithArbitrary()
|
|
2297
|
-
}],
|
|
2298
|
-
/**
|
|
2299
|
-
* Scroll Padding Y
|
|
2300
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2301
|
-
*/
|
|
2302
|
-
"scroll-py": [{
|
|
2303
|
-
"scroll-py": getSpacingWithArbitrary()
|
|
2304
|
-
}],
|
|
2305
|
-
/**
|
|
2306
|
-
* Scroll Padding Start
|
|
2307
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2308
|
-
*/
|
|
2309
|
-
"scroll-ps": [{
|
|
2310
|
-
"scroll-ps": getSpacingWithArbitrary()
|
|
2311
|
-
}],
|
|
2312
|
-
/**
|
|
2313
|
-
* Scroll Padding End
|
|
2314
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2315
|
-
*/
|
|
2316
|
-
"scroll-pe": [{
|
|
2317
|
-
"scroll-pe": getSpacingWithArbitrary()
|
|
2318
|
-
}],
|
|
2319
|
-
/**
|
|
2320
|
-
* Scroll Padding Top
|
|
2321
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2322
|
-
*/
|
|
2323
|
-
"scroll-pt": [{
|
|
2324
|
-
"scroll-pt": getSpacingWithArbitrary()
|
|
2325
|
-
}],
|
|
2326
|
-
/**
|
|
2327
|
-
* Scroll Padding Right
|
|
2328
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2329
|
-
*/
|
|
2330
|
-
"scroll-pr": [{
|
|
2331
|
-
"scroll-pr": getSpacingWithArbitrary()
|
|
2332
|
-
}],
|
|
2333
|
-
/**
|
|
2334
|
-
* Scroll Padding Bottom
|
|
2335
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2336
|
-
*/
|
|
2337
|
-
"scroll-pb": [{
|
|
2338
|
-
"scroll-pb": getSpacingWithArbitrary()
|
|
2339
|
-
}],
|
|
2340
|
-
/**
|
|
2341
|
-
* Scroll Padding Left
|
|
2342
|
-
* @see https://tailwindcss.com/docs/scroll-padding
|
|
2343
|
-
*/
|
|
2344
|
-
"scroll-pl": [{
|
|
2345
|
-
"scroll-pl": getSpacingWithArbitrary()
|
|
2346
|
-
}],
|
|
2347
|
-
/**
|
|
2348
|
-
* Scroll Snap Align
|
|
2349
|
-
* @see https://tailwindcss.com/docs/scroll-snap-align
|
|
2350
|
-
*/
|
|
2351
|
-
"snap-align": [{
|
|
2352
|
-
snap: ["start", "end", "center", "align-none"]
|
|
2353
|
-
}],
|
|
2354
|
-
/**
|
|
2355
|
-
* Scroll Snap Stop
|
|
2356
|
-
* @see https://tailwindcss.com/docs/scroll-snap-stop
|
|
2357
|
-
*/
|
|
2358
|
-
"snap-stop": [{
|
|
2359
|
-
snap: ["normal", "always"]
|
|
2360
|
-
}],
|
|
2361
|
-
/**
|
|
2362
|
-
* Scroll Snap Type
|
|
2363
|
-
* @see https://tailwindcss.com/docs/scroll-snap-type
|
|
2364
|
-
*/
|
|
2365
|
-
"snap-type": [{
|
|
2366
|
-
snap: ["none", "x", "y", "both"]
|
|
2367
|
-
}],
|
|
2368
|
-
/**
|
|
2369
|
-
* Scroll Snap Type Strictness
|
|
2370
|
-
* @see https://tailwindcss.com/docs/scroll-snap-type
|
|
2371
|
-
*/
|
|
2372
|
-
"snap-strictness": [{
|
|
2373
|
-
snap: ["mandatory", "proximity"]
|
|
2374
|
-
}],
|
|
2375
|
-
/**
|
|
2376
|
-
* Touch Action
|
|
2377
|
-
* @see https://tailwindcss.com/docs/touch-action
|
|
2378
|
-
*/
|
|
2379
|
-
touch: [{
|
|
2380
|
-
touch: ["auto", "none", "manipulation"]
|
|
2381
|
-
}],
|
|
2382
|
-
/**
|
|
2383
|
-
* Touch Action X
|
|
2384
|
-
* @see https://tailwindcss.com/docs/touch-action
|
|
2385
|
-
*/
|
|
2386
|
-
"touch-x": [{
|
|
2387
|
-
"touch-pan": ["x", "left", "right"]
|
|
2388
|
-
}],
|
|
2389
|
-
/**
|
|
2390
|
-
* Touch Action Y
|
|
2391
|
-
* @see https://tailwindcss.com/docs/touch-action
|
|
2392
|
-
*/
|
|
2393
|
-
"touch-y": [{
|
|
2394
|
-
"touch-pan": ["y", "up", "down"]
|
|
2395
|
-
}],
|
|
2396
|
-
/**
|
|
2397
|
-
* Touch Action Pinch Zoom
|
|
2398
|
-
* @see https://tailwindcss.com/docs/touch-action
|
|
2399
|
-
*/
|
|
2400
|
-
"touch-pz": ["touch-pinch-zoom"],
|
|
2401
|
-
/**
|
|
2402
|
-
* User Select
|
|
2403
|
-
* @see https://tailwindcss.com/docs/user-select
|
|
2404
|
-
*/
|
|
2405
|
-
select: [{
|
|
2406
|
-
select: ["none", "text", "all", "auto"]
|
|
2407
|
-
}],
|
|
2408
|
-
/**
|
|
2409
|
-
* Will Change
|
|
2410
|
-
* @see https://tailwindcss.com/docs/will-change
|
|
2411
|
-
*/
|
|
2412
|
-
"will-change": [{
|
|
2413
|
-
"will-change": ["auto", "scroll", "contents", "transform", isArbitraryValue]
|
|
2414
|
-
}],
|
|
2415
|
-
// SVG
|
|
2416
|
-
/**
|
|
2417
|
-
* Fill
|
|
2418
|
-
* @see https://tailwindcss.com/docs/fill
|
|
2419
|
-
*/
|
|
2420
|
-
fill: [{
|
|
2421
|
-
fill: [colors, "none"]
|
|
2422
|
-
}],
|
|
2423
|
-
/**
|
|
2424
|
-
* Stroke Width
|
|
2425
|
-
* @see https://tailwindcss.com/docs/stroke-width
|
|
2426
|
-
*/
|
|
2427
|
-
"stroke-w": [{
|
|
2428
|
-
stroke: [isLength, isArbitraryLength, isArbitraryNumber]
|
|
2429
|
-
}],
|
|
2430
|
-
/**
|
|
2431
|
-
* Stroke
|
|
2432
|
-
* @see https://tailwindcss.com/docs/stroke
|
|
2433
|
-
*/
|
|
2434
|
-
stroke: [{
|
|
2435
|
-
stroke: [colors, "none"]
|
|
2436
|
-
}],
|
|
2437
|
-
// Accessibility
|
|
2438
|
-
/**
|
|
2439
|
-
* Screen Readers
|
|
2440
|
-
* @see https://tailwindcss.com/docs/screen-readers
|
|
2441
|
-
*/
|
|
2442
|
-
sr: ["sr-only", "not-sr-only"],
|
|
2443
|
-
/**
|
|
2444
|
-
* Forced Color Adjust
|
|
2445
|
-
* @see https://tailwindcss.com/docs/forced-color-adjust
|
|
2446
|
-
*/
|
|
2447
|
-
"forced-color-adjust": [{
|
|
2448
|
-
"forced-color-adjust": ["auto", "none"]
|
|
2449
|
-
}]
|
|
2450
|
-
},
|
|
2451
|
-
conflictingClassGroups: {
|
|
2452
|
-
overflow: ["overflow-x", "overflow-y"],
|
|
2453
|
-
overscroll: ["overscroll-x", "overscroll-y"],
|
|
2454
|
-
inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
|
|
2455
|
-
"inset-x": ["right", "left"],
|
|
2456
|
-
"inset-y": ["top", "bottom"],
|
|
2457
|
-
flex: ["basis", "grow", "shrink"],
|
|
2458
|
-
gap: ["gap-x", "gap-y"],
|
|
2459
|
-
p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
|
|
2460
|
-
px: ["pr", "pl"],
|
|
2461
|
-
py: ["pt", "pb"],
|
|
2462
|
-
m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
|
|
2463
|
-
mx: ["mr", "ml"],
|
|
2464
|
-
my: ["mt", "mb"],
|
|
2465
|
-
size: ["w", "h"],
|
|
2466
|
-
"font-size": ["leading"],
|
|
2467
|
-
"fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
|
|
2468
|
-
"fvn-ordinal": ["fvn-normal"],
|
|
2469
|
-
"fvn-slashed-zero": ["fvn-normal"],
|
|
2470
|
-
"fvn-figure": ["fvn-normal"],
|
|
2471
|
-
"fvn-spacing": ["fvn-normal"],
|
|
2472
|
-
"fvn-fraction": ["fvn-normal"],
|
|
2473
|
-
"line-clamp": ["display", "overflow"],
|
|
2474
|
-
rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
|
|
2475
|
-
"rounded-s": ["rounded-ss", "rounded-es"],
|
|
2476
|
-
"rounded-e": ["rounded-se", "rounded-ee"],
|
|
2477
|
-
"rounded-t": ["rounded-tl", "rounded-tr"],
|
|
2478
|
-
"rounded-r": ["rounded-tr", "rounded-br"],
|
|
2479
|
-
"rounded-b": ["rounded-br", "rounded-bl"],
|
|
2480
|
-
"rounded-l": ["rounded-tl", "rounded-bl"],
|
|
2481
|
-
"border-spacing": ["border-spacing-x", "border-spacing-y"],
|
|
2482
|
-
"border-w": ["border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
|
|
2483
|
-
"border-w-x": ["border-w-r", "border-w-l"],
|
|
2484
|
-
"border-w-y": ["border-w-t", "border-w-b"],
|
|
2485
|
-
"border-color": ["border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
|
|
2486
|
-
"border-color-x": ["border-color-r", "border-color-l"],
|
|
2487
|
-
"border-color-y": ["border-color-t", "border-color-b"],
|
|
2488
|
-
"scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
|
|
2489
|
-
"scroll-mx": ["scroll-mr", "scroll-ml"],
|
|
2490
|
-
"scroll-my": ["scroll-mt", "scroll-mb"],
|
|
2491
|
-
"scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
|
|
2492
|
-
"scroll-px": ["scroll-pr", "scroll-pl"],
|
|
2493
|
-
"scroll-py": ["scroll-pt", "scroll-pb"],
|
|
2494
|
-
touch: ["touch-x", "touch-y", "touch-pz"],
|
|
2495
|
-
"touch-x": ["touch"],
|
|
2496
|
-
"touch-y": ["touch"],
|
|
2497
|
-
"touch-pz": ["touch"]
|
|
2498
|
-
},
|
|
2499
|
-
conflictingClassGroupModifiers: {
|
|
2500
|
-
"font-size": ["leading"]
|
|
2501
|
-
}
|
|
2502
|
-
};
|
|
2503
|
-
};
|
|
2504
|
-
var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
2505
|
-
|
|
2506
|
-
// src/utils/cn.ts
|
|
2507
|
-
function cn(...inputs) {
|
|
2508
|
-
return twMerge((0, import_clsx.clsx)(inputs));
|
|
2509
|
-
}
|
|
2510
|
-
|
|
2511
|
-
// src/components/AdvancedComponents/AppSidebar.tsx
|
|
2512
|
-
var React6 = __toESM(require("react"));
|
|
2513
|
-
var import_link = __toESM(require("next/link"));
|
|
2514
|
-
var import_lucide_react4 = require("lucide-react");
|
|
2515
|
-
|
|
2516
|
-
// src/components/ui/badge.tsx
|
|
2517
|
-
var import_class_variance_authority = require("class-variance-authority");
|
|
2518
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
|
2519
|
-
var badgeVariants = (0, import_class_variance_authority.cva)(
|
|
2520
|
-
"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
2521
|
-
{
|
|
2522
|
-
variants: {
|
|
2523
|
-
variant: {
|
|
2524
|
-
default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
|
|
2525
|
-
secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
2526
|
-
destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
|
|
2527
|
-
outline: "text-foreground"
|
|
2528
|
-
}
|
|
2529
|
-
},
|
|
2530
|
-
defaultVariants: {
|
|
2531
|
-
variant: "default"
|
|
2532
|
-
}
|
|
2533
|
-
}
|
|
2534
|
-
);
|
|
2535
|
-
function Badge({ className, variant, ...props }) {
|
|
2536
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cn(badgeVariants({ variant }), className), ...props });
|
|
2537
|
-
}
|
|
2538
|
-
|
|
2539
|
-
// src/components/ui/button.tsx
|
|
2540
|
-
var import_react_slot = require("@radix-ui/react-slot");
|
|
2541
|
-
var import_class_variance_authority2 = require("class-variance-authority");
|
|
2542
|
-
var React = __toESM(require("react"));
|
|
2543
|
-
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
2544
|
-
var buttonVariants = (0, import_class_variance_authority2.cva)(
|
|
2545
|
-
"inline-flex items-center justify-center whitespace-nowrap rounded text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
2546
|
-
{
|
|
2547
|
-
defaultVariants: {
|
|
2548
|
-
size: "default",
|
|
2549
|
-
variant: "default"
|
|
2550
|
-
},
|
|
2551
|
-
variants: {
|
|
2552
|
-
size: {
|
|
2553
|
-
clear: "",
|
|
2554
|
-
default: "h-10 px-4 py-2",
|
|
2555
|
-
icon: "h-10 w-10",
|
|
2556
|
-
lg: "h-11 rounded px-8",
|
|
2557
|
-
sm: "h-9 rounded px-3"
|
|
2558
|
-
},
|
|
2559
|
-
variant: {
|
|
2560
|
-
default: "bg-accent text-accent-foreground hover:bg-background hover:text-accent hover:border-accent hover:border",
|
|
2561
|
-
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
2562
|
-
ghost: "hover:bg-card hover:text-accent",
|
|
2563
|
-
link: "text-primary items-start justify-start underline-offset-4 hover:underline",
|
|
2564
|
-
outline: "border border-border bg-background hover:bg-card hover:text-accent",
|
|
2565
|
-
secondary: "bg-secondary text-secondary-foreground hover:bg-accent"
|
|
2566
|
-
}
|
|
2567
|
-
}
|
|
2568
|
-
}
|
|
2569
|
-
);
|
|
2570
|
-
var Button = React.forwardRef(
|
|
2571
|
-
({ asChild = false, className, size, variant, ...props }, ref) => {
|
|
2572
|
-
const Comp = asChild ? import_react_slot.Slot : "button";
|
|
2573
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { className: cn(buttonVariants({ className, size, variant })), ref, ...props });
|
|
2574
|
-
}
|
|
2575
|
-
);
|
|
2576
|
-
Button.displayName = "Button";
|
|
2577
|
-
|
|
2578
|
-
// src/components/ui/input.tsx
|
|
2579
|
-
var React2 = __toESM(require("react"));
|
|
2580
|
-
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
2581
|
-
var Input = React2.forwardRef(
|
|
2582
|
-
({ className, type, ...props }, ref) => {
|
|
2583
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
2584
|
-
"input",
|
|
2585
|
-
{
|
|
2586
|
-
type,
|
|
2587
|
-
className: cn(
|
|
2588
|
-
"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
|
|
2589
|
-
className
|
|
2590
|
-
),
|
|
2591
|
-
ref,
|
|
2592
|
-
...props
|
|
2593
|
-
}
|
|
2594
|
-
);
|
|
2595
|
-
}
|
|
2596
|
-
);
|
|
2597
|
-
Input.displayName = "Input";
|
|
2598
|
-
|
|
2599
|
-
// src/components/ui/scroll-area.tsx
|
|
2600
|
-
var React3 = __toESM(require("react"));
|
|
2601
|
-
var ScrollAreaPrimitive = __toESM(require("@radix-ui/react-scroll-area"));
|
|
2602
|
-
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
2603
|
-
var ScrollArea = React3.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
|
|
2604
|
-
ScrollAreaPrimitive.Root,
|
|
2605
|
-
{
|
|
2606
|
-
ref,
|
|
2607
|
-
className: cn("relative overflow-hidden", className),
|
|
2608
|
-
...props,
|
|
2609
|
-
children: [
|
|
2610
|
-
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
|
|
2611
|
-
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ScrollBar, {}),
|
|
2612
|
-
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ScrollAreaPrimitive.Corner, {})
|
|
2613
|
-
]
|
|
2614
|
-
}
|
|
2615
|
-
));
|
|
2616
|
-
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
2617
|
-
var ScrollBar = React3.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
2618
|
-
ScrollAreaPrimitive.ScrollAreaScrollbar,
|
|
2619
|
-
{
|
|
2620
|
-
ref,
|
|
2621
|
-
orientation,
|
|
2622
|
-
className: cn(
|
|
2623
|
-
"flex touch-none select-none transition-colors",
|
|
2624
|
-
orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent p-[1px]",
|
|
2625
|
-
orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent p-[1px]",
|
|
2626
|
-
className
|
|
2627
|
-
),
|
|
2628
|
-
...props,
|
|
2629
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
|
|
2630
|
-
}
|
|
2631
|
-
));
|
|
2632
|
-
ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
|
|
2633
|
-
|
|
2634
|
-
// src/components/ui/dialog.tsx
|
|
2635
|
-
var React4 = __toESM(require("react"));
|
|
2636
|
-
var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"));
|
|
2637
|
-
var import_lucide_react = require("lucide-react");
|
|
2638
|
-
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
2639
|
-
var Dialog = DialogPrimitive.Root;
|
|
2640
|
-
var DialogPortal = DialogPrimitive.Portal;
|
|
2641
|
-
var DialogOverlay = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
2642
|
-
DialogPrimitive.Overlay,
|
|
2643
|
-
{
|
|
2644
|
-
ref,
|
|
2645
|
-
className: cn(
|
|
2646
|
-
"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
2647
|
-
className
|
|
2648
|
-
),
|
|
2649
|
-
...props
|
|
2650
|
-
}
|
|
2651
|
-
));
|
|
2652
|
-
DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
|
|
2653
|
-
var DialogContent = React4.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(DialogPortal, { children: [
|
|
2654
|
-
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(DialogOverlay, {}),
|
|
2655
|
-
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
2656
|
-
DialogPrimitive.Content,
|
|
2657
|
-
{
|
|
2658
|
-
ref,
|
|
2659
|
-
className: cn(
|
|
2660
|
-
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
|
|
2661
|
-
className
|
|
2662
|
-
),
|
|
2663
|
-
...props,
|
|
2664
|
-
children: [
|
|
2665
|
-
children,
|
|
2666
|
-
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(DialogPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
|
|
2667
|
-
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react.X, { className: "h-4 w-4" }),
|
|
2668
|
-
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "sr-only", children: "Close" })
|
|
2669
|
-
] })
|
|
2670
|
-
]
|
|
2671
|
-
}
|
|
2672
|
-
)
|
|
2673
|
-
] }));
|
|
2674
|
-
DialogContent.displayName = DialogPrimitive.Content.displayName;
|
|
2675
|
-
var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
|
|
2676
|
-
DialogHeader.displayName = "DialogHeader";
|
|
2677
|
-
var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
2678
|
-
"div",
|
|
2679
|
-
{
|
|
2680
|
-
className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
|
|
2681
|
-
...props
|
|
2682
|
-
}
|
|
2683
|
-
);
|
|
2684
|
-
DialogFooter.displayName = "DialogFooter";
|
|
2685
|
-
var DialogTitle = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
2686
|
-
DialogPrimitive.Title,
|
|
2687
|
-
{
|
|
2688
|
-
ref,
|
|
2689
|
-
className: cn("text-lg font-semibold leading-none tracking-tight", className),
|
|
2690
|
-
...props
|
|
2691
|
-
}
|
|
2692
|
-
));
|
|
2693
|
-
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
2694
|
-
var DialogDescription = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
2695
|
-
DialogPrimitive.Description,
|
|
2696
|
-
{
|
|
2697
|
-
ref,
|
|
2698
|
-
className: cn("text-sm text-muted-foreground", className),
|
|
2699
|
-
...props
|
|
2700
|
-
}
|
|
2701
|
-
));
|
|
2702
|
-
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
2703
|
-
|
|
2704
|
-
// src/components/ui/checkbox.tsx
|
|
2705
|
-
var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"));
|
|
2706
|
-
var import_lucide_react2 = require("lucide-react");
|
|
2707
|
-
var React5 = __toESM(require("react"));
|
|
2708
|
-
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
2709
|
-
var Checkbox = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
2710
|
-
CheckboxPrimitive.Root,
|
|
2711
|
-
{
|
|
2712
|
-
className: cn(
|
|
2713
|
-
"peer h-4 w-4 shrink-0 rounded border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",
|
|
2714
|
-
className
|
|
2715
|
-
),
|
|
2716
|
-
ref,
|
|
2717
|
-
...props,
|
|
2718
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(CheckboxPrimitive.Indicator, { className: cn("flex items-center justify-center text-current"), children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react2.Check, { className: "h-4 w-4" }) })
|
|
2719
|
-
}
|
|
2720
|
-
));
|
|
2721
|
-
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
2722
|
-
|
|
2723
|
-
// src/components/DigitalColleagues/test-data.tsx
|
|
2724
|
-
var import_lucide_react3 = require("lucide-react");
|
|
2725
|
-
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
2726
|
-
var createKnowledgeDocument = (title) => ({
|
|
2727
|
-
id: Math.random().toString(36).substr(2, 9),
|
|
2728
|
-
title,
|
|
2729
|
-
format: "markdown",
|
|
2730
|
-
createdAt: /* @__PURE__ */ new Date()
|
|
2731
|
-
});
|
|
2732
|
-
var businessUnits = [
|
|
2733
|
-
{
|
|
2734
|
-
id: "design",
|
|
2735
|
-
name: "Design",
|
|
2736
|
-
description: "Creative and visual design team",
|
|
2737
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Palette, { className: "h-4 w-4" }),
|
|
2738
|
-
color: "bg-purple-600",
|
|
2739
|
-
accentColor: "text-purple-600"
|
|
2740
|
-
},
|
|
2741
|
-
{
|
|
2742
|
-
id: "engineering",
|
|
2743
|
-
name: "Engineering",
|
|
2744
|
-
description: "Software development and technical teams",
|
|
2745
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Code, { className: "h-4 w-4" }),
|
|
2746
|
-
color: "bg-blue-600",
|
|
2747
|
-
accentColor: "text-blue-600"
|
|
2748
|
-
},
|
|
2749
|
-
{
|
|
2750
|
-
id: "marketing",
|
|
2751
|
-
name: "Marketing",
|
|
2752
|
-
description: "Brand, campaigns, and growth marketing",
|
|
2753
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.TrendingUp, { className: "h-4 w-4" }),
|
|
2754
|
-
color: "bg-pink-600",
|
|
2755
|
-
accentColor: "text-pink-600"
|
|
2756
|
-
},
|
|
2757
|
-
{
|
|
2758
|
-
id: "sales",
|
|
2759
|
-
name: "Sales",
|
|
2760
|
-
description: "Revenue generation and customer acquisition",
|
|
2761
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.DollarSign, { className: "h-4 w-4" }),
|
|
2762
|
-
color: "bg-green-600",
|
|
2763
|
-
accentColor: "text-green-600"
|
|
2764
|
-
},
|
|
2765
|
-
{
|
|
2766
|
-
id: "hr",
|
|
2767
|
-
name: "Human Resources",
|
|
2768
|
-
description: "People operations and talent management",
|
|
2769
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Users, { className: "h-4 w-4" }),
|
|
2770
|
-
color: "bg-orange-600",
|
|
2771
|
-
accentColor: "text-orange-600"
|
|
2772
|
-
},
|
|
2773
|
-
{
|
|
2774
|
-
id: "operations",
|
|
2775
|
-
name: "Operations",
|
|
2776
|
-
description: "Business operations and process optimization",
|
|
2777
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Wrench, { className: "h-4 w-4" }),
|
|
2778
|
-
color: "bg-indigo-600",
|
|
2779
|
-
accentColor: "text-indigo-600"
|
|
2780
|
-
},
|
|
2781
|
-
{
|
|
2782
|
-
id: "legal",
|
|
2783
|
-
name: "Legal",
|
|
2784
|
-
description: "Legal affairs and compliance",
|
|
2785
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Scale, { className: "h-4 w-4" }),
|
|
2786
|
-
color: "bg-slate-600",
|
|
2787
|
-
accentColor: "text-slate-600"
|
|
2788
|
-
},
|
|
2789
|
-
{
|
|
2790
|
-
id: "product",
|
|
2791
|
-
name: "Product",
|
|
2792
|
-
description: "Product strategy and management",
|
|
2793
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Package, { className: "h-4 w-4" }),
|
|
2794
|
-
color: "bg-violet-600",
|
|
2795
|
-
accentColor: "text-violet-600"
|
|
2796
|
-
},
|
|
2797
|
-
{
|
|
2798
|
-
id: "it",
|
|
2799
|
-
name: "IT Support",
|
|
2800
|
-
description: "Information technology and infrastructure",
|
|
2801
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Zap, { className: "h-4 w-4" }),
|
|
2802
|
-
color: "bg-cyan-600",
|
|
2803
|
-
accentColor: "text-cyan-600"
|
|
2804
|
-
},
|
|
2805
|
-
{
|
|
2806
|
-
id: "company",
|
|
2807
|
-
name: "Company",
|
|
2808
|
-
description: "Company-wide resources and information",
|
|
2809
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Building2, { className: "h-4 w-4" }),
|
|
2810
|
-
color: "bg-gray-600",
|
|
2811
|
-
accentColor: "text-gray-600"
|
|
2812
|
-
}
|
|
2813
|
-
];
|
|
2814
|
-
var mockProjects = [
|
|
2815
|
-
{
|
|
2816
|
-
id: "1",
|
|
2817
|
-
name: "E-commerce Platform",
|
|
2818
|
-
description: "Main customer-facing e-commerce application",
|
|
2819
|
-
isSelected: true
|
|
2820
|
-
},
|
|
2821
|
-
{
|
|
2822
|
-
id: "2",
|
|
2823
|
-
name: "Admin Dashboard",
|
|
2824
|
-
description: "Internal administration and analytics dashboard",
|
|
2825
|
-
isSelected: false
|
|
2826
|
-
},
|
|
2827
|
-
{
|
|
2828
|
-
id: "3",
|
|
2829
|
-
name: "Mobile App",
|
|
2830
|
-
description: "Native mobile application for iOS and Android",
|
|
2831
|
-
isSelected: false
|
|
2832
|
-
}
|
|
2833
|
-
];
|
|
2834
|
-
var mockEpics = [
|
|
2835
|
-
{
|
|
2836
|
-
id: "1",
|
|
2837
|
-
name: "User Authentication",
|
|
2838
|
-
color: "bg-blue-500",
|
|
2839
|
-
description: "Implement secure user authentication system",
|
|
2840
|
-
confidence: "high",
|
|
2841
|
-
phase: 2,
|
|
2842
|
-
// development
|
|
2843
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
2844
|
-
endDate: /* @__PURE__ */ new Date("2024-02-15"),
|
|
2845
|
-
progress: 75,
|
|
2846
|
-
isSelected: true
|
|
2847
|
-
},
|
|
2848
|
-
{
|
|
2849
|
-
id: "2",
|
|
2850
|
-
name: "Dashboard Features",
|
|
2851
|
-
color: "bg-green-500",
|
|
2852
|
-
description: "Build comprehensive dashboard functionality",
|
|
2853
|
-
confidence: "medium",
|
|
2854
|
-
phase: 1,
|
|
2855
|
-
// planning
|
|
2856
|
-
startDate: /* @__PURE__ */ new Date("2024-02-01"),
|
|
2857
|
-
endDate: /* @__PURE__ */ new Date("2024-03-15"),
|
|
2858
|
-
progress: 30,
|
|
2859
|
-
isSelected: true
|
|
2860
|
-
},
|
|
2861
|
-
{
|
|
2862
|
-
id: "3",
|
|
2863
|
-
name: "Mobile Optimization",
|
|
2864
|
-
color: "bg-purple-500",
|
|
2865
|
-
description: "Optimize application for mobile devices",
|
|
2866
|
-
confidence: "low",
|
|
2867
|
-
phase: 1,
|
|
2868
|
-
// planning
|
|
2869
|
-
startDate: /* @__PURE__ */ new Date("2024-03-01"),
|
|
2870
|
-
endDate: /* @__PURE__ */ new Date("2024-04-15"),
|
|
2871
|
-
progress: 10,
|
|
2872
|
-
isSelected: true
|
|
2873
|
-
},
|
|
2874
|
-
{
|
|
2875
|
-
id: "4",
|
|
2876
|
-
name: "Performance Improvements",
|
|
2877
|
-
color: "bg-orange-500",
|
|
2878
|
-
description: "Enhance application performance and speed",
|
|
2879
|
-
confidence: "high",
|
|
2880
|
-
phase: 3,
|
|
2881
|
-
// testing
|
|
2882
|
-
startDate: /* @__PURE__ */ new Date("2024-01-15"),
|
|
2883
|
-
endDate: /* @__PURE__ */ new Date("2024-02-28"),
|
|
2884
|
-
progress: 90,
|
|
2885
|
-
isSelected: true
|
|
2886
|
-
}
|
|
2887
|
-
];
|
|
2888
|
-
var mockSprints = [
|
|
2889
|
-
{
|
|
2890
|
-
id: "backlog",
|
|
2891
|
-
name: "Backlog",
|
|
2892
|
-
description: "Tasks not yet assigned to a sprint",
|
|
2893
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
2894
|
-
endDate: /* @__PURE__ */ new Date("2024-12-31"),
|
|
2895
|
-
isActive: false,
|
|
2896
|
-
isSelected: false
|
|
2897
|
-
},
|
|
2898
|
-
{
|
|
2899
|
-
id: "all-tasks",
|
|
2900
|
-
name: "All Tasks",
|
|
2901
|
-
description: "View all tasks across all sprints",
|
|
2902
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
2903
|
-
endDate: /* @__PURE__ */ new Date("2024-12-31"),
|
|
2904
|
-
isActive: false,
|
|
2905
|
-
isSelected: true
|
|
2906
|
-
},
|
|
2907
|
-
{
|
|
2908
|
-
id: "1",
|
|
2909
|
-
name: "Sprint 1",
|
|
2910
|
-
description: "Initial development phase",
|
|
2911
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
2912
|
-
endDate: /* @__PURE__ */ new Date("2024-01-14"),
|
|
2913
|
-
isActive: false,
|
|
2914
|
-
isSelected: false
|
|
2915
|
-
},
|
|
2916
|
-
{
|
|
2917
|
-
id: "2",
|
|
2918
|
-
name: "Sprint 2",
|
|
2919
|
-
description: "Feature development",
|
|
2920
|
-
startDate: /* @__PURE__ */ new Date("2024-01-15"),
|
|
2921
|
-
endDate: /* @__PURE__ */ new Date("2024-01-28"),
|
|
2922
|
-
isActive: true,
|
|
2923
|
-
isSelected: false
|
|
2924
|
-
}
|
|
2925
|
-
];
|
|
2926
|
-
var mockTasks = [
|
|
2927
|
-
{
|
|
2928
|
-
id: "1",
|
|
2929
|
-
name: "Design login page",
|
|
2930
|
-
description: "Create wireframes and mockups for the login interface",
|
|
2931
|
-
status: "todo",
|
|
2932
|
-
priority: "high",
|
|
2933
|
-
type: "story",
|
|
2934
|
-
points: 5,
|
|
2935
|
-
epicId: "1",
|
|
2936
|
-
sprintId: "2",
|
|
2937
|
-
assignee: "John Doe",
|
|
2938
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-15")
|
|
2939
|
-
},
|
|
2940
|
-
{
|
|
2941
|
-
id: "2",
|
|
2942
|
-
name: "Implement OAuth integration",
|
|
2943
|
-
description: "Add Google and GitHub OAuth authentication",
|
|
2944
|
-
status: "review",
|
|
2945
|
-
priority: "high",
|
|
2946
|
-
type: "task",
|
|
2947
|
-
points: 8,
|
|
2948
|
-
epicId: "1",
|
|
2949
|
-
sprintId: "2",
|
|
2950
|
-
assignee: "Jane Smith",
|
|
2951
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-16")
|
|
2952
|
-
},
|
|
2953
|
-
{
|
|
2954
|
-
id: "3",
|
|
2955
|
-
name: "Create dashboard widgets",
|
|
2956
|
-
description: "Build analytics and metrics widgets for the main dashboard",
|
|
2957
|
-
status: "todo",
|
|
2958
|
-
priority: "medium",
|
|
2959
|
-
type: "story",
|
|
2960
|
-
points: 13,
|
|
2961
|
-
epicId: "2",
|
|
2962
|
-
sprintId: "2",
|
|
2963
|
-
assignee: "Mike Johnson",
|
|
2964
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-17")
|
|
2965
|
-
},
|
|
2966
|
-
{
|
|
2967
|
-
id: "4",
|
|
2968
|
-
name: "Fix login redirect bug",
|
|
2969
|
-
description: "Resolve issue where users are not redirected after login",
|
|
2970
|
-
status: "done",
|
|
2971
|
-
priority: "high",
|
|
2972
|
-
type: "bug",
|
|
2973
|
-
points: 3,
|
|
2974
|
-
epicId: "1",
|
|
2975
|
-
sprintId: "1",
|
|
2976
|
-
assignee: "Sarah Wilson",
|
|
2977
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-14")
|
|
2978
|
-
},
|
|
2979
|
-
{
|
|
2980
|
-
id: "5",
|
|
2981
|
-
name: "Research mobile frameworks",
|
|
2982
|
-
description: "Investigate best practices for mobile responsive design",
|
|
2983
|
-
status: "in-progress",
|
|
2984
|
-
priority: "medium",
|
|
2985
|
-
type: "spike",
|
|
2986
|
-
points: 5,
|
|
2987
|
-
epicId: "3",
|
|
2988
|
-
assignee: "Alex Brown",
|
|
2989
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-18")
|
|
2990
|
-
},
|
|
2991
|
-
{
|
|
2992
|
-
id: "6",
|
|
2993
|
-
name: "Update user profile page",
|
|
2994
|
-
description: "Enhance user profile with new settings and preferences",
|
|
2995
|
-
status: "review",
|
|
2996
|
-
priority: "medium",
|
|
2997
|
-
type: "story",
|
|
2998
|
-
points: 8,
|
|
2999
|
-
epicId: "2",
|
|
3000
|
-
sprintId: "2",
|
|
3001
|
-
assignee: "Emma Davis",
|
|
3002
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-19")
|
|
3003
|
-
},
|
|
3004
|
-
{
|
|
3005
|
-
id: "7",
|
|
3006
|
-
name: "Performance optimization",
|
|
3007
|
-
description: "Optimize database queries and improve page load times",
|
|
3008
|
-
status: "done",
|
|
3009
|
-
priority: "high",
|
|
3010
|
-
type: "task",
|
|
3011
|
-
points: 13,
|
|
3012
|
-
epicId: "4",
|
|
3013
|
-
sprintId: "1",
|
|
3014
|
-
assignee: "Tom Wilson",
|
|
3015
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-13")
|
|
3016
|
-
}
|
|
3017
|
-
];
|
|
3018
|
-
var highDensityTasks = [
|
|
3019
|
-
...mockTasks,
|
|
3020
|
-
{
|
|
3021
|
-
id: "8",
|
|
3022
|
-
name: "Add search functionality",
|
|
3023
|
-
description: "Implement search across all dashboard widgets",
|
|
3024
|
-
status: "todo",
|
|
3025
|
-
priority: "medium",
|
|
3026
|
-
type: "story",
|
|
3027
|
-
points: 8,
|
|
3028
|
-
epicId: "2",
|
|
3029
|
-
sprintId: "2",
|
|
3030
|
-
assignee: "Chris Lee",
|
|
3031
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-20")
|
|
3032
|
-
},
|
|
3033
|
-
{
|
|
3034
|
-
id: "9",
|
|
3035
|
-
name: "Fix mobile responsive issues",
|
|
3036
|
-
description: "Resolve layout problems on mobile devices",
|
|
3037
|
-
status: "in-progress",
|
|
3038
|
-
priority: "high",
|
|
3039
|
-
type: "bug",
|
|
3040
|
-
points: 5,
|
|
3041
|
-
epicId: "3",
|
|
3042
|
-
sprintId: "2",
|
|
3043
|
-
assignee: "Taylor Swift",
|
|
3044
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-21")
|
|
3045
|
-
},
|
|
3046
|
-
{
|
|
3047
|
-
id: "10",
|
|
3048
|
-
name: "Implement dark mode",
|
|
3049
|
-
description: "Add dark theme support across the application",
|
|
3050
|
-
status: "review",
|
|
3051
|
-
priority: "low",
|
|
3052
|
-
type: "story",
|
|
3053
|
-
points: 13,
|
|
3054
|
-
epicId: "2",
|
|
3055
|
-
sprintId: "2",
|
|
3056
|
-
assignee: "Jordan Smith",
|
|
3057
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-22")
|
|
3058
|
-
},
|
|
3059
|
-
{
|
|
3060
|
-
id: "11",
|
|
3061
|
-
name: "API rate limiting",
|
|
3062
|
-
description: "Implement rate limiting for API endpoints",
|
|
3063
|
-
status: "done",
|
|
3064
|
-
priority: "high",
|
|
3065
|
-
type: "task",
|
|
3066
|
-
points: 8,
|
|
3067
|
-
epicId: "4",
|
|
3068
|
-
sprintId: "1",
|
|
3069
|
-
assignee: "Morgan Davis",
|
|
3070
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-12")
|
|
3071
|
-
},
|
|
3072
|
-
{
|
|
3073
|
-
id: "12",
|
|
3074
|
-
name: "User onboarding flow",
|
|
3075
|
-
description: "Create guided tour for new users",
|
|
3076
|
-
status: "todo",
|
|
3077
|
-
priority: "medium",
|
|
3078
|
-
type: "story",
|
|
3079
|
-
points: 21,
|
|
3080
|
-
epicId: "1",
|
|
3081
|
-
sprintId: "2",
|
|
3082
|
-
assignee: "Casey Johnson",
|
|
3083
|
-
createdAt: /* @__PURE__ */ new Date("2024-01-23")
|
|
3084
|
-
}
|
|
3085
|
-
];
|
|
3086
|
-
var extendedProjects = [
|
|
3087
|
-
...mockProjects,
|
|
3088
|
-
{
|
|
3089
|
-
id: "4",
|
|
3090
|
-
name: "Analytics Platform",
|
|
3091
|
-
description: "Business intelligence and reporting system",
|
|
3092
|
-
isSelected: false
|
|
3093
|
-
},
|
|
3094
|
-
{
|
|
3095
|
-
id: "5",
|
|
3096
|
-
name: "API Gateway",
|
|
3097
|
-
description: "Microservices API management layer",
|
|
3098
|
-
isSelected: false
|
|
3099
|
-
}
|
|
3100
|
-
];
|
|
3101
|
-
var emptyStateData = {
|
|
3102
|
-
projects: [
|
|
3103
|
-
{
|
|
3104
|
-
id: "1",
|
|
3105
|
-
name: "Empty Project",
|
|
3106
|
-
description: "A project with no tasks",
|
|
3107
|
-
isSelected: true
|
|
3108
|
-
}
|
|
3109
|
-
],
|
|
3110
|
-
epics: [],
|
|
3111
|
-
sprints: [
|
|
3112
|
-
{
|
|
3113
|
-
id: "all-tasks",
|
|
3114
|
-
name: "All Tasks",
|
|
3115
|
-
description: "View all tasks across all sprints",
|
|
3116
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
3117
|
-
endDate: /* @__PURE__ */ new Date("2024-12-31"),
|
|
3118
|
-
isActive: false,
|
|
3119
|
-
isSelected: true
|
|
3120
|
-
}
|
|
3121
|
-
],
|
|
3122
|
-
tasks: []
|
|
3123
|
-
};
|
|
3124
|
-
var singleEpicData = {
|
|
3125
|
-
epics: [
|
|
3126
|
-
{
|
|
3127
|
-
id: "1",
|
|
3128
|
-
name: "User Authentication",
|
|
3129
|
-
color: "bg-blue-500",
|
|
3130
|
-
description: "Implement secure user authentication system",
|
|
3131
|
-
confidence: "high",
|
|
3132
|
-
phase: 2,
|
|
3133
|
-
startDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
3134
|
-
endDate: /* @__PURE__ */ new Date("2024-02-15"),
|
|
3135
|
-
progress: 75,
|
|
3136
|
-
isSelected: true
|
|
3137
|
-
}
|
|
3138
|
-
],
|
|
3139
|
-
tasks: mockTasks.filter((task) => task.epicId === "1")
|
|
3140
|
-
};
|
|
3141
|
-
var testScenarios = {
|
|
3142
|
-
empty: {
|
|
3143
|
-
initialProjects: emptyStateData.projects,
|
|
3144
|
-
initialEpics: emptyStateData.epics,
|
|
3145
|
-
initialSprints: emptyStateData.sprints,
|
|
3146
|
-
initialTasks: emptyStateData.tasks
|
|
3147
|
-
},
|
|
3148
|
-
default: {
|
|
3149
|
-
initialProjects: mockProjects,
|
|
3150
|
-
initialEpics: mockEpics,
|
|
3151
|
-
initialSprints: mockSprints,
|
|
3152
|
-
initialTasks: mockTasks
|
|
3153
|
-
},
|
|
3154
|
-
highDensity: {
|
|
3155
|
-
initialProjects: mockProjects,
|
|
3156
|
-
initialEpics: mockEpics,
|
|
3157
|
-
initialSprints: mockSprints,
|
|
3158
|
-
initialTasks: highDensityTasks
|
|
3159
|
-
},
|
|
3160
|
-
singleEpic: {
|
|
3161
|
-
initialProjects: mockProjects,
|
|
3162
|
-
initialEpics: singleEpicData.epics,
|
|
3163
|
-
initialSprints: mockSprints,
|
|
3164
|
-
initialTasks: singleEpicData.tasks
|
|
3165
|
-
},
|
|
3166
|
-
multipleProjects: {
|
|
3167
|
-
initialProjects: extendedProjects,
|
|
3168
|
-
initialEpics: mockEpics,
|
|
3169
|
-
initialSprints: mockSprints,
|
|
3170
|
-
initialTasks: mockTasks
|
|
3171
|
-
}
|
|
3172
|
-
};
|
|
3173
|
-
var mockColleagues = [
|
|
3174
|
-
{
|
|
3175
|
-
id: "1",
|
|
3176
|
-
type: "human",
|
|
3177
|
-
name: "Sarah Johnson",
|
|
3178
|
-
email: "sarah.johnson@company.com",
|
|
3179
|
-
role: "Senior Designer",
|
|
3180
|
-
department: "Design",
|
|
3181
|
-
status: "active",
|
|
3182
|
-
joinedDate: /* @__PURE__ */ new Date("2023-01-15"),
|
|
3183
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3184
|
-
phone: "+1 (555) 123-4567",
|
|
3185
|
-
location: "San Francisco, CA",
|
|
3186
|
-
timezone: "PST",
|
|
3187
|
-
skills: ["UI/UX Design", "Figma", "Adobe Creative Suite", "Prototyping", "User Research"],
|
|
3188
|
-
bio: "Passionate designer with 8+ years of experience creating user-centered digital experiences."
|
|
3189
|
-
},
|
|
3190
|
-
{
|
|
3191
|
-
id: "2",
|
|
3192
|
-
type: "digital",
|
|
3193
|
-
name: "CodeAssist Pro",
|
|
3194
|
-
status: "active",
|
|
3195
|
-
joinedDate: /* @__PURE__ */ new Date("2024-01-01"),
|
|
3196
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3197
|
-
jobDescription: "AI-powered coding assistant that helps with code review, debugging, and documentation generation.",
|
|
3198
|
-
workInstructions: "Review pull requests for code quality and best practices. Generate comprehensive documentation for new features. Assist with debugging complex issues. Provide code suggestions and optimizations.",
|
|
3199
|
-
capabilities: [
|
|
3200
|
-
"Code Review",
|
|
3201
|
-
"Documentation Generation",
|
|
3202
|
-
"Debugging",
|
|
3203
|
-
"Code Optimization",
|
|
3204
|
-
"Testing"
|
|
3205
|
-
],
|
|
3206
|
-
knowledge: ["JavaScript", "TypeScript", "React", "Node.js", "Python", "Git"].map(
|
|
3207
|
-
createKnowledgeDocument
|
|
3208
|
-
),
|
|
3209
|
-
coreKnowledge: ["Company coding standards", "Architecture patterns", "Security guidelines"].map(
|
|
3210
|
-
createKnowledgeDocument
|
|
3211
|
-
),
|
|
3212
|
-
version: "2",
|
|
3213
|
-
lastUpdated: /* @__PURE__ */ new Date("2024-01-15"),
|
|
3214
|
-
isActive: true
|
|
3215
|
-
},
|
|
3216
|
-
{
|
|
3217
|
-
id: "3",
|
|
3218
|
-
type: "human",
|
|
3219
|
-
name: "Michael Chen",
|
|
3220
|
-
email: "michael.chen@company.com",
|
|
3221
|
-
role: "Product Manager",
|
|
3222
|
-
department: "Product",
|
|
3223
|
-
status: "inactive",
|
|
3224
|
-
joinedDate: /* @__PURE__ */ new Date("2022-08-20"),
|
|
3225
|
-
lastActive: new Date(Date.now() - 2 * 60 * 60 * 1e3),
|
|
3226
|
-
// 2 hours ago
|
|
3227
|
-
phone: "+1 (555) 987-6543",
|
|
3228
|
-
location: "New York, NY",
|
|
3229
|
-
timezone: "EST",
|
|
3230
|
-
skills: ["Product Strategy", "Agile", "Data Analysis", "User Stories", "Roadmapping"],
|
|
3231
|
-
bio: "Strategic product manager focused on driving user engagement and business growth."
|
|
3232
|
-
},
|
|
3233
|
-
{
|
|
3234
|
-
id: "4",
|
|
3235
|
-
type: "digital",
|
|
3236
|
-
name: "MarketingBot",
|
|
3237
|
-
status: "active",
|
|
3238
|
-
joinedDate: /* @__PURE__ */ new Date("2024-02-01"),
|
|
3239
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3240
|
-
jobDescription: "Specialized AI assistant for marketing campaigns, content creation, and social media management.",
|
|
3241
|
-
workInstructions: "Create engaging social media content. Analyze campaign performance metrics. Generate marketing copy and headlines. Schedule and manage social media posts.",
|
|
3242
|
-
capabilities: [
|
|
3243
|
-
"Content Creation",
|
|
3244
|
-
"Social Media Management",
|
|
3245
|
-
"Analytics",
|
|
3246
|
-
"SEO Optimization",
|
|
3247
|
-
"Campaign Management"
|
|
3248
|
-
],
|
|
3249
|
-
knowledge: [
|
|
3250
|
-
"Digital Marketing",
|
|
3251
|
-
"Social Media Platforms",
|
|
3252
|
-
"Content Strategy",
|
|
3253
|
-
"Analytics Tools"
|
|
3254
|
-
].map(createKnowledgeDocument),
|
|
3255
|
-
coreKnowledge: ["Brand guidelines", "Target audience personas", "Marketing objectives"].map(
|
|
3256
|
-
createKnowledgeDocument
|
|
3257
|
-
),
|
|
3258
|
-
version: "52",
|
|
3259
|
-
lastUpdated: /* @__PURE__ */ new Date("2024-02-10"),
|
|
3260
|
-
isActive: true
|
|
3261
|
-
},
|
|
3262
|
-
{
|
|
3263
|
-
id: "5",
|
|
3264
|
-
type: "human",
|
|
3265
|
-
name: "Emily Rodriguez",
|
|
3266
|
-
email: "emily.rodriguez@company.com",
|
|
3267
|
-
role: "UX Researcher",
|
|
3268
|
-
department: "Design",
|
|
3269
|
-
status: "inactive",
|
|
3270
|
-
joinedDate: /* @__PURE__ */ new Date("2023-06-10"),
|
|
3271
|
-
lastActive: new Date(Date.now() - 7 * 24 * 60 * 60 * 1e3),
|
|
3272
|
-
// 7 days ago
|
|
3273
|
-
phone: "+1 (555) 456-7890",
|
|
3274
|
-
location: "Austin, TX",
|
|
3275
|
-
timezone: "CST",
|
|
3276
|
-
skills: [
|
|
3277
|
-
"User Research",
|
|
3278
|
-
"Usability Testing",
|
|
3279
|
-
"Data Analysis",
|
|
3280
|
-
"Survey Design",
|
|
3281
|
-
"Interview Techniques"
|
|
3282
|
-
],
|
|
3283
|
-
bio: "User researcher dedicated to understanding user needs and improving product experiences."
|
|
3284
|
-
},
|
|
3285
|
-
{
|
|
3286
|
-
id: "6",
|
|
3287
|
-
type: "digital",
|
|
3288
|
-
name: "DataAnalyzer Pro",
|
|
3289
|
-
status: "active",
|
|
3290
|
-
joinedDate: /* @__PURE__ */ new Date("2024-01-10"),
|
|
3291
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3292
|
-
jobDescription: "Advanced AI assistant specializing in data analysis, reporting, and business intelligence.",
|
|
3293
|
-
workInstructions: "Analyze complex datasets, generate insightful reports, create data visualizations, and provide actionable business recommendations.",
|
|
3294
|
-
capabilities: [
|
|
3295
|
-
"Data Analysis",
|
|
3296
|
-
"Report Generation",
|
|
3297
|
-
"Data Visualization",
|
|
3298
|
-
"Business Intelligence",
|
|
3299
|
-
"Statistical Analysis"
|
|
3300
|
-
],
|
|
3301
|
-
knowledge: ["Python", "SQL", "Tableau", "Excel", "R", "Statistics"].map(
|
|
3302
|
-
createKnowledgeDocument
|
|
3303
|
-
),
|
|
3304
|
-
coreKnowledge: ["Company data sources", "KPI definitions", "Reporting standards"].map(
|
|
3305
|
-
createKnowledgeDocument
|
|
3306
|
-
),
|
|
3307
|
-
version: "3.1",
|
|
3308
|
-
lastUpdated: /* @__PURE__ */ new Date("2024-02-20"),
|
|
3309
|
-
isActive: true
|
|
3310
|
-
},
|
|
3311
|
-
{
|
|
3312
|
-
id: "7",
|
|
3313
|
-
type: "digital",
|
|
3314
|
-
name: "ProjectManager AI",
|
|
3315
|
-
status: "active",
|
|
3316
|
-
joinedDate: /* @__PURE__ */ new Date("2024-01-05"),
|
|
3317
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3318
|
-
jobDescription: "Intelligent project management assistant that helps coordinate tasks, track progress, and manage timelines.",
|
|
3319
|
-
workInstructions: "Coordinate project activities, track milestones, manage resource allocation, and provide project status updates.",
|
|
3320
|
-
capabilities: [
|
|
3321
|
-
"Project Planning",
|
|
3322
|
-
"Task Coordination",
|
|
3323
|
-
"Timeline Management",
|
|
3324
|
-
"Resource Allocation",
|
|
3325
|
-
"Progress Tracking"
|
|
3326
|
-
],
|
|
3327
|
-
knowledge: ["Agile", "Scrum", "Gantt Charts", "Risk Management", "Stakeholder Management"].map(
|
|
3328
|
-
createKnowledgeDocument
|
|
3329
|
-
),
|
|
3330
|
-
coreKnowledge: [
|
|
3331
|
-
"Company project templates",
|
|
3332
|
-
"Resource availability",
|
|
3333
|
-
"Project methodologies"
|
|
3334
|
-
].map(createKnowledgeDocument),
|
|
3335
|
-
version: "2.5",
|
|
3336
|
-
lastUpdated: /* @__PURE__ */ new Date("2024-02-15"),
|
|
3337
|
-
isActive: true
|
|
3338
|
-
},
|
|
3339
|
-
{
|
|
3340
|
-
id: "8",
|
|
3341
|
-
type: "digital",
|
|
3342
|
-
name: "CustomerSupport Bot",
|
|
3343
|
-
status: "active",
|
|
3344
|
-
joinedDate: /* @__PURE__ */ new Date("2024-02-01"),
|
|
3345
|
-
lastActive: /* @__PURE__ */ new Date(),
|
|
3346
|
-
jobDescription: "AI-powered customer support assistant that handles inquiries, resolves issues, and escalates complex problems.",
|
|
3347
|
-
workInstructions: "Respond to customer inquiries, troubleshoot common issues, provide product information, and escalate complex cases to human agents.",
|
|
3348
|
-
capabilities: [
|
|
3349
|
-
"Customer Support",
|
|
3350
|
-
"Issue Resolution",
|
|
3351
|
-
"Product Knowledge",
|
|
3352
|
-
"Escalation Management",
|
|
3353
|
-
"Chat Support"
|
|
3354
|
-
],
|
|
3355
|
-
knowledge: [
|
|
3356
|
-
"Product Documentation",
|
|
3357
|
-
"FAQ",
|
|
3358
|
-
"Troubleshooting Guides",
|
|
3359
|
-
"Customer Service Best Practices"
|
|
3360
|
-
].map(createKnowledgeDocument),
|
|
3361
|
-
coreKnowledge: ["Product catalog", "Support processes", "Escalation procedures"].map(
|
|
3362
|
-
createKnowledgeDocument
|
|
3363
|
-
),
|
|
3364
|
-
version: "1.8",
|
|
3365
|
-
lastUpdated: /* @__PURE__ */ new Date("2024-02-25"),
|
|
3366
|
-
isActive: true
|
|
3367
|
-
}
|
|
3368
|
-
];
|
|
3369
|
-
var mockReminders = [
|
|
3370
|
-
{
|
|
3371
|
-
id: "1",
|
|
3372
|
-
title: "Review quarterly report",
|
|
3373
|
-
description: "Go through Q4 performance metrics and prepare summary for the team meeting",
|
|
3374
|
-
dueDate: new Date(2024, 2, 15),
|
|
3375
|
-
dueTime: "14:30",
|
|
3376
|
-
colleague: mockColleagues.find((c) => c.id === "2" && c.type === "digital"),
|
|
3377
|
-
isCompleted: false,
|
|
3378
|
-
isRecurring: false,
|
|
3379
|
-
priority: "high",
|
|
3380
|
-
reminderEnabled: true,
|
|
3381
|
-
reminderMinutes: 30,
|
|
3382
|
-
createdAt: new Date(2024, 2, 10),
|
|
3383
|
-
tags: ["quarterly", "review", "urgent"]
|
|
3384
|
-
},
|
|
3385
|
-
{
|
|
3386
|
-
id: "2",
|
|
3387
|
-
title: "Weekly team standup",
|
|
3388
|
-
description: "Join the weekly team synchronization meeting",
|
|
3389
|
-
dueDate: new Date(2024, 2, 18),
|
|
3390
|
-
dueTime: "10:00",
|
|
3391
|
-
colleague: mockColleagues.find((c) => c.id === "4" && c.type === "digital"),
|
|
3392
|
-
isCompleted: false,
|
|
3393
|
-
isRecurring: true,
|
|
3394
|
-
recurrencePattern: "weekly",
|
|
3395
|
-
recurrenceInterval: 1,
|
|
3396
|
-
priority: "medium",
|
|
3397
|
-
reminderEnabled: true,
|
|
3398
|
-
reminderMinutes: 15,
|
|
3399
|
-
createdAt: new Date(2024, 2, 11),
|
|
3400
|
-
tags: ["meeting", "standup", "weekly"]
|
|
3401
|
-
},
|
|
3402
|
-
{
|
|
3403
|
-
id: "3",
|
|
3404
|
-
title: "Deploy to production",
|
|
3405
|
-
description: "Deploy the latest version to production environment",
|
|
3406
|
-
dueDate: /* @__PURE__ */ new Date(),
|
|
3407
|
-
dueTime: "16:00",
|
|
3408
|
-
colleague: mockColleagues.find((c) => c.id === "2" && c.type === "digital"),
|
|
3409
|
-
isCompleted: false,
|
|
3410
|
-
isRecurring: false,
|
|
3411
|
-
priority: "high",
|
|
3412
|
-
reminderEnabled: true,
|
|
3413
|
-
reminderMinutes: 60,
|
|
3414
|
-
createdAt: /* @__PURE__ */ new Date(),
|
|
3415
|
-
tags: ["deploy", "production", "urgent"]
|
|
3416
|
-
}
|
|
3417
|
-
];
|
|
3418
|
-
var mockDigitalColleagues = mockColleagues.filter(
|
|
3419
|
-
(colleague) => colleague.type === "digital"
|
|
3420
|
-
);
|
|
3421
|
-
|
|
3422
|
-
// src/hooks/use-local-storage.ts
|
|
3423
|
-
var import_react = require("react");
|
|
3424
|
-
function useLocalStorage(key, initialValue) {
|
|
3425
|
-
const [storedValue, setStoredValue] = (0, import_react.useState)(() => {
|
|
3426
|
-
if (typeof window === "undefined") return initialValue;
|
|
3427
|
-
try {
|
|
3428
|
-
const item = window.localStorage.getItem(key);
|
|
3429
|
-
return item ? JSON.parse(item) : initialValue;
|
|
3430
|
-
} catch (error) {
|
|
3431
|
-
return initialValue;
|
|
3432
|
-
}
|
|
3433
|
-
});
|
|
3434
|
-
const setValue = (value) => {
|
|
3435
|
-
try {
|
|
3436
|
-
setStoredValue(value);
|
|
3437
|
-
if (typeof window !== "undefined") {
|
|
3438
|
-
window.localStorage.setItem(key, JSON.stringify(value));
|
|
3439
|
-
}
|
|
3440
|
-
} catch (error) {
|
|
3441
|
-
}
|
|
3442
|
-
};
|
|
3443
|
-
(0, import_react.useEffect)(() => {
|
|
3444
|
-
setValue(storedValue);
|
|
3445
|
-
}, []);
|
|
3446
|
-
return [storedValue, setValue];
|
|
3447
|
-
}
|
|
3448
|
-
|
|
3449
|
-
// src/components/AdvancedComponents/AppSidebar.tsx
|
|
3450
|
-
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
3451
|
-
function AppSidebar({
|
|
3452
|
-
items,
|
|
3453
|
-
isOpen,
|
|
3454
|
-
isMobile = false,
|
|
3455
|
-
onClose,
|
|
3456
|
-
currentBusinessUnit = businessUnits[0],
|
|
3457
|
-
// Default to Design unit
|
|
3458
|
-
onBusinessUnitChange,
|
|
3459
|
-
onSearch,
|
|
3460
|
-
className,
|
|
3461
|
-
logo = "/headerlogo.png",
|
|
3462
|
-
logoLink = "/teams",
|
|
3463
|
-
appName = "Nuvia",
|
|
3464
|
-
tagline = "Collaboration Platform"
|
|
3465
|
-
}) {
|
|
3466
|
-
const [expandedItems, setExpandedItems] = React6.useState({});
|
|
3467
|
-
const [favorites, setFavorites] = useLocalStorage(
|
|
3468
|
-
"sidebar-favorites",
|
|
3469
|
-
{}
|
|
3470
|
-
);
|
|
3471
|
-
const [showFavoritesDialog, setShowFavoritesDialog] = React6.useState(null);
|
|
3472
|
-
const [searchQuery, setSearchQuery] = React6.useState("");
|
|
3473
|
-
const toggleExpanded = (title) => {
|
|
3474
|
-
setExpandedItems((prev) => ({
|
|
3475
|
-
...prev,
|
|
3476
|
-
[title]: !prev[title]
|
|
3477
|
-
}));
|
|
3478
|
-
};
|
|
3479
|
-
const handleBusinessUnitChange = (unit) => {
|
|
3480
|
-
onBusinessUnitChange?.(unit);
|
|
3481
|
-
};
|
|
3482
|
-
const handleSearchSubmit = () => {
|
|
3483
|
-
if (searchQuery.trim()) {
|
|
3484
|
-
onSearch?.(searchQuery.trim());
|
|
3485
|
-
}
|
|
3486
|
-
};
|
|
3487
|
-
const handleSearchKeyPress = (e) => {
|
|
3488
|
-
if (e.key === "Enter") {
|
|
3489
|
-
e.preventDefault();
|
|
3490
|
-
handleSearchSubmit();
|
|
3491
|
-
}
|
|
3492
|
-
};
|
|
3493
|
-
const toggleFavorite = (parentItemId, subItemId) => {
|
|
3494
|
-
const itemFavorites = favorites[parentItemId] || [];
|
|
3495
|
-
const newItemFavorites = itemFavorites.includes(subItemId) ? itemFavorites.filter((id) => id !== subItemId) : itemFavorites.concat(subItemId);
|
|
3496
|
-
setFavorites({
|
|
3497
|
-
...favorites,
|
|
3498
|
-
[parentItemId]: newItemFavorites
|
|
3499
|
-
});
|
|
3500
|
-
};
|
|
3501
|
-
const getDisplaySubItems = (item) => {
|
|
3502
|
-
if (!item.items || !item.maxItems || item.items.length <= item.maxItems) {
|
|
3503
|
-
return item.items || [];
|
|
3504
|
-
}
|
|
3505
|
-
const itemFavorites = favorites[item.id] || [];
|
|
3506
|
-
const favoriteSubItems = item.items.filter((subItem) => itemFavorites.includes(subItem.id));
|
|
3507
|
-
const nonFavoriteSubItems = item.items.filter((subItem) => !itemFavorites.includes(subItem.id));
|
|
3508
|
-
return [...favoriteSubItems, ...nonFavoriteSubItems].slice(0, item.maxItems);
|
|
3509
|
-
};
|
|
3510
|
-
const needsFavorites = (item) => item.maxItems && item.items && item.items.length > item.maxItems;
|
|
3511
|
-
const displayItems = items;
|
|
3512
|
-
const renderSidebarItem = (item) => {
|
|
3513
|
-
const hasLimitedSubItems = needsFavorites(item);
|
|
3514
|
-
const displaySubItems = getDisplaySubItems(item);
|
|
3515
|
-
const buttonContent = /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
|
|
3516
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-center gap-3", children: [
|
|
3517
|
-
item.icon,
|
|
3518
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { children: item.title })
|
|
3519
|
-
] }),
|
|
3520
|
-
item.badge && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Badge, { variant: "outline", className: "ml-auto rounded-full px-2 py-0.5 text-xs", children: item.badge }),
|
|
3521
|
-
item.items && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3522
|
-
import_lucide_react4.ChevronDown,
|
|
3523
|
-
{
|
|
3524
|
-
className: cn(
|
|
3525
|
-
"ml-2 h-4 w-4 transition-transform",
|
|
3526
|
-
expandedItems[item.title] ? "rotate-180" : ""
|
|
3527
|
-
)
|
|
3528
|
-
}
|
|
3529
|
-
)
|
|
3530
|
-
] });
|
|
3531
|
-
const buttonClasses = cn(
|
|
3532
|
-
"flex w-full items-center justify-between rounded-2xl px-3 py-2 text-sm font-medium",
|
|
3533
|
-
item.isActive ? "bg-primary/10 text-primary" : "hover:bg-muted"
|
|
3534
|
-
);
|
|
3535
|
-
if (item.url) {
|
|
3536
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_link.default, { href: item.url, className: buttonClasses, onClick: isMobile ? onClose : void 0, children: buttonContent });
|
|
3537
|
-
}
|
|
3538
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("button", { className: buttonClasses, onClick: () => item.items && toggleExpanded(item.title), children: buttonContent });
|
|
3539
|
-
};
|
|
3540
|
-
const FavoritesDialog = () => {
|
|
3541
|
-
const currentItem = items.find((item) => item.id === showFavoritesDialog);
|
|
3542
|
-
if (!currentItem || !currentItem.items || !currentItem.maxItems) return null;
|
|
3543
|
-
const itemFavorites = favorites[currentItem.id] || [];
|
|
3544
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3545
|
-
Dialog,
|
|
3546
|
-
{
|
|
3547
|
-
open: !!showFavoritesDialog,
|
|
3548
|
-
onOpenChange: (open) => !open && setShowFavoritesDialog(null),
|
|
3549
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(DialogContent, { className: "sm:max-w-md", children: [
|
|
3550
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(DialogHeader, { children: [
|
|
3551
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(DialogTitle, { children: [
|
|
3552
|
-
"Manage ",
|
|
3553
|
-
currentItem.title,
|
|
3554
|
-
" Favorites"
|
|
3555
|
-
] }),
|
|
3556
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("p", { className: "text-sm text-muted-foreground", children: [
|
|
3557
|
-
"Select up to ",
|
|
3558
|
-
currentItem.maxItems,
|
|
3559
|
-
" items to show in ",
|
|
3560
|
-
currentItem.title.toLowerCase(),
|
|
3561
|
-
"."
|
|
3562
|
-
] })
|
|
3563
|
-
] }),
|
|
3564
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(ScrollArea, { className: "max-h-96 pr-4", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "space-y-4", children: currentItem.items.map((subItem) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-center space-x-2", children: [
|
|
3565
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3566
|
-
Checkbox,
|
|
3567
|
-
{
|
|
3568
|
-
id: subItem.id,
|
|
3569
|
-
checked: itemFavorites.includes(subItem.id),
|
|
3570
|
-
onCheckedChange: () => toggleFavorite(currentItem.id, subItem.id),
|
|
3571
|
-
disabled: !itemFavorites.includes(subItem.id) && itemFavorites.length >= (currentItem.maxItems || 0)
|
|
3572
|
-
}
|
|
3573
|
-
),
|
|
3574
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
3575
|
-
"label",
|
|
3576
|
-
{
|
|
3577
|
-
htmlFor: subItem.id,
|
|
3578
|
-
className: "flex items-center gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 cursor-pointer flex-1",
|
|
3579
|
-
children: [
|
|
3580
|
-
subItem.title,
|
|
3581
|
-
subItem.badge && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Badge, { variant: "outline", className: "text-xs", children: subItem.badge })
|
|
3582
|
-
]
|
|
3583
|
-
}
|
|
3584
|
-
)
|
|
3585
|
-
] }, subItem.id)) }) })
|
|
3586
|
-
] })
|
|
3587
|
-
}
|
|
3588
|
-
);
|
|
3589
|
-
};
|
|
3590
|
-
const sidebarContent = /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex h-full flex-col bg-background", children: [
|
|
3591
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex items-center justify-between p-4", children: [
|
|
3592
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_link.default, { href: logoLink, className: "flex items-center gap-3", children: [
|
|
3593
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "flex h-14 w-14 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("img", { src: logo, alt: "Header Logo", className: "h-14 w-14 object-contain" }) }),
|
|
3594
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { children: [
|
|
3595
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("h2", { className: "font-semibold", children: appName }),
|
|
3596
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "text-xs text-muted-foreground", children: tagline })
|
|
3597
|
-
] })
|
|
3598
|
-
] }),
|
|
3599
|
-
isMobile && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Button, { variant: "ghost", size: "icon", onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.X, { className: "h-5 w-5" }) })
|
|
3600
|
-
] }),
|
|
3601
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "relative", children: [
|
|
3602
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Search, { className: "absolute left-3 top-3 h-4 w-4 text-muted-foreground" }),
|
|
3603
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3604
|
-
Input,
|
|
3605
|
-
{
|
|
3606
|
-
type: "search",
|
|
3607
|
-
placeholder: "Search...",
|
|
3608
|
-
className: "w-full rounded-2xl bg-muted pl-9 pr-4 py-2",
|
|
3609
|
-
value: searchQuery,
|
|
3610
|
-
onChange: (e) => setSearchQuery(e.target.value),
|
|
3611
|
-
onKeyPress: handleSearchKeyPress
|
|
3612
|
-
}
|
|
3613
|
-
)
|
|
3614
|
-
] }) }),
|
|
3615
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(ScrollArea, { className: "flex-1 px-3 py-2", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "space-y-1", children: displayItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "mb-1", children: [
|
|
3616
|
-
renderSidebarItem(item),
|
|
3617
|
-
item.items && expandedItems[item.title] && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "mt-1 ml-6 space-y-1 border-l pl-3", children: [
|
|
3618
|
-
getDisplaySubItems(item).map((subItem) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
3619
|
-
import_link.default,
|
|
3620
|
-
{
|
|
3621
|
-
href: subItem.url,
|
|
3622
|
-
className: "flex items-center justify-between rounded-2xl px-3 py-2 text-sm hover:bg-muted",
|
|
3623
|
-
onClick: isMobile ? onClose : void 0,
|
|
3624
|
-
children: [
|
|
3625
|
-
subItem.title,
|
|
3626
|
-
subItem.badge && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3627
|
-
Badge,
|
|
3628
|
-
{
|
|
3629
|
-
variant: "outline",
|
|
3630
|
-
className: "ml-auto rounded-full px-2 py-0.5 text-xs",
|
|
3631
|
-
children: subItem.badge
|
|
3632
|
-
}
|
|
3633
|
-
)
|
|
3634
|
-
]
|
|
3635
|
-
},
|
|
3636
|
-
subItem.id
|
|
3637
|
-
)),
|
|
3638
|
-
needsFavorites(item) && item.items && item.items.length > getDisplaySubItems(item).length && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
3639
|
-
"button",
|
|
3640
|
-
{
|
|
3641
|
-
onClick: () => setShowFavoritesDialog(item.id),
|
|
3642
|
-
className: "w-full px-3 py-2 text-xs text-muted-foreground hover:text-foreground hover:bg-muted rounded-2xl transition-colors text-left",
|
|
3643
|
-
children: [
|
|
3644
|
-
"...",
|
|
3645
|
-
item.items.length - getDisplaySubItems(item).length,
|
|
3646
|
-
" more available"
|
|
3647
|
-
]
|
|
3648
|
-
}
|
|
3649
|
-
)
|
|
3650
|
-
] })
|
|
3651
|
-
] }, item.id)) }) }),
|
|
3652
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "p-3", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "space-y-1", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_link.default, { href: "/admin", className: "flex w-full items-center gap-3 rounded-2xl px-3 py-2 text-sm font-medium hover:bg-muted", children: [
|
|
3653
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.Settings, { className: "h-5 w-5" }),
|
|
3654
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { children: "Settings" })
|
|
3655
|
-
] }) }) }),
|
|
3656
|
-
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(FavoritesDialog, {})
|
|
3657
|
-
] });
|
|
3658
|
-
if (isMobile) {
|
|
3659
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3660
|
-
"div",
|
|
3661
|
-
{
|
|
3662
|
-
className: cn(
|
|
3663
|
-
"fixed inset-y-0 left-0 z-50 w-64 transform bg-background transition-transform duration-300 ease-in-out",
|
|
3664
|
-
isOpen ? "translate-x-0" : "-translate-x-full",
|
|
3665
|
-
className
|
|
3666
|
-
),
|
|
3667
|
-
children: sidebarContent
|
|
3668
|
-
}
|
|
3669
|
-
);
|
|
3670
|
-
}
|
|
3671
|
-
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
3672
|
-
"div",
|
|
3673
|
-
{
|
|
3674
|
-
className: cn(
|
|
3675
|
-
"fixed inset-y-0 left-0 z-30 w-64 transform bg-background transition-transform duration-300 ease-in-out",
|
|
3676
|
-
isOpen ? "translate-x-0" : "-translate-x-full",
|
|
3677
|
-
className
|
|
3678
|
-
),
|
|
3679
|
-
children: sidebarContent
|
|
3680
|
-
}
|
|
3681
|
-
);
|
|
3682
|
-
}
|
|
3683
|
-
|
|
3684
|
-
// src/components/AdvancedComponents/app-header.tsx
|
|
3685
|
-
var import_react4 = require("react");
|
|
3686
|
-
var import_react5 = require("motion/react");
|
|
3687
|
-
var import_lucide_react8 = require("lucide-react");
|
|
3688
|
-
|
|
3689
|
-
// src/components/ui/avatar.tsx
|
|
3690
|
-
var React7 = __toESM(require("react"));
|
|
3691
|
-
var AvatarPrimitive = __toESM(require("@radix-ui/react-avatar"));
|
|
3692
|
-
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
3693
|
-
var Avatar = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
3694
|
-
AvatarPrimitive.Root,
|
|
3695
|
-
{
|
|
3696
|
-
ref,
|
|
3697
|
-
className: cn("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full", className),
|
|
3698
|
-
...props
|
|
3699
|
-
}
|
|
3700
|
-
));
|
|
3701
|
-
Avatar.displayName = AvatarPrimitive.Root.displayName;
|
|
3702
|
-
var AvatarImage = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
3703
|
-
AvatarPrimitive.Image,
|
|
3704
|
-
{
|
|
3705
|
-
ref,
|
|
3706
|
-
className: cn("aspect-square h-full w-full", className),
|
|
3707
|
-
...props
|
|
3708
|
-
}
|
|
3709
|
-
));
|
|
3710
|
-
AvatarImage.displayName = AvatarPrimitive.Image.displayName;
|
|
3711
|
-
var AvatarFallback = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
3712
|
-
AvatarPrimitive.Fallback,
|
|
3713
|
-
{
|
|
3714
|
-
ref,
|
|
3715
|
-
className: cn(
|
|
3716
|
-
"flex h-full w-full items-center justify-center rounded-full bg-muted",
|
|
3717
|
-
className
|
|
3718
|
-
),
|
|
3719
|
-
...props
|
|
3720
|
-
}
|
|
3721
|
-
));
|
|
3722
|
-
AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
|
|
3723
|
-
|
|
3724
|
-
// src/components/ui/tooltip.tsx
|
|
3725
|
-
var React8 = __toESM(require("react"));
|
|
3726
|
-
var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"));
|
|
3727
|
-
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
3728
|
-
var TooltipProvider = TooltipPrimitive.Provider;
|
|
3729
|
-
var Tooltip = TooltipPrimitive.Root;
|
|
3730
|
-
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
3731
|
-
var TooltipContent = React8.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
3732
|
-
TooltipPrimitive.Content,
|
|
3733
|
-
{
|
|
3734
|
-
ref,
|
|
3735
|
-
sideOffset,
|
|
3736
|
-
className: cn(
|
|
3737
|
-
"z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
3738
|
-
className
|
|
3739
|
-
),
|
|
3740
|
-
...props
|
|
3741
|
-
}
|
|
3742
|
-
) }));
|
|
3743
|
-
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
3744
|
-
|
|
3745
|
-
// src/components/AdvancedComponents/theme-toggle.tsx
|
|
3746
|
-
var import_lucide_react5 = require("lucide-react");
|
|
3747
|
-
var import_next_themes = require("next-themes");
|
|
3748
|
-
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
3749
|
-
function ThemeToggle() {
|
|
3750
|
-
const { setTheme, theme } = (0, import_next_themes.useTheme)();
|
|
3751
|
-
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Tooltip, { children: [
|
|
3752
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
|
|
3753
|
-
Button,
|
|
3754
|
-
{
|
|
3755
|
-
variant: "ghost",
|
|
3756
|
-
size: "icon",
|
|
3757
|
-
className: "rounded-2xl",
|
|
3758
|
-
onClick: () => setTheme(theme === "light" ? "dark" : "light"),
|
|
3759
|
-
children: [
|
|
3760
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_lucide_react5.Sun, { className: "h-5 w-5 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0" }),
|
|
3761
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_lucide_react5.Moon, { className: "absolute h-5 w-5 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100" }),
|
|
3762
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "sr-only", children: "Toggle theme" })
|
|
3763
|
-
]
|
|
3764
|
-
}
|
|
3765
|
-
) }),
|
|
3766
|
-
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(TooltipContent, { children: "Toggle theme" })
|
|
3767
|
-
] }) });
|
|
3768
|
-
}
|
|
3769
|
-
|
|
3770
|
-
// src/components/AdvancedComponents/notifications-panel.tsx
|
|
3771
|
-
var import_react2 = require("motion/react");
|
|
3772
|
-
var import_lucide_react6 = require("lucide-react");
|
|
3773
|
-
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
3774
|
-
function NotificationsPanel({
|
|
3775
|
-
notifications,
|
|
3776
|
-
open,
|
|
3777
|
-
onClose,
|
|
3778
|
-
onNotificationRemove,
|
|
3779
|
-
onRemoveAll,
|
|
3780
|
-
className
|
|
3781
|
-
}) {
|
|
3782
|
-
const unreadNotifications = notifications.filter((notification) => !notification.read);
|
|
3783
|
-
const unreadCount = unreadNotifications.length;
|
|
3784
|
-
const getNotificationIcon = (type) => {
|
|
3785
|
-
switch (type) {
|
|
3786
|
-
case "info":
|
|
3787
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.Info, { className: "h-5 w-5 text-blue-500" });
|
|
3788
|
-
case "success":
|
|
3789
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.Check, { className: "h-5 w-5 text-green-500" });
|
|
3790
|
-
case "warning":
|
|
3791
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.AlertTriangle, { className: "h-5 w-5 text-amber-500" });
|
|
3792
|
-
case "error":
|
|
3793
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.AlertTriangle, { className: "h-5 w-5 text-red-500" });
|
|
3794
|
-
}
|
|
3795
|
-
};
|
|
3796
|
-
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react2.AnimatePresence, { children: open && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [
|
|
3797
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
3798
|
-
import_react2.motion.div,
|
|
3799
|
-
{
|
|
3800
|
-
initial: { opacity: 0 },
|
|
3801
|
-
animate: { opacity: 1 },
|
|
3802
|
-
exit: { opacity: 0 },
|
|
3803
|
-
className: "fixed inset-0 z-40 bg-black/20 backdrop-blur-sm md:hidden",
|
|
3804
|
-
onClick: onClose
|
|
3805
|
-
}
|
|
3806
|
-
),
|
|
3807
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
3808
|
-
import_react2.motion.div,
|
|
3809
|
-
{
|
|
3810
|
-
initial: { x: "100%" },
|
|
3811
|
-
animate: { x: 0 },
|
|
3812
|
-
exit: { x: "100%" },
|
|
3813
|
-
transition: { type: "spring", damping: 20, stiffness: 300 },
|
|
3814
|
-
className: cn(
|
|
3815
|
-
"fixed inset-y-0 right-0 z-50 w-full max-w-sm border-l bg-background shadow-lg md:w-96",
|
|
3816
|
-
className
|
|
3817
|
-
),
|
|
3818
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex h-full flex-col", children: [
|
|
3819
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex items-center justify-between border-b p-4", children: [
|
|
3820
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
3821
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.Bell, { className: "h-5 w-5" }),
|
|
3822
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("h2", { className: "text-lg font-semibold", children: "Notifications" }),
|
|
3823
|
-
unreadCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Badge, { variant: "secondary", className: "rounded-full px-2 py-0.5", children: [
|
|
3824
|
-
unreadCount,
|
|
3825
|
-
" new"
|
|
3826
|
-
] })
|
|
3827
|
-
] }),
|
|
3828
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Button, { variant: "ghost", size: "icon", onClick: onClose, className: "rounded-full", children: [
|
|
3829
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.X, { className: "h-5 w-5" }),
|
|
3830
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "sr-only", children: "Close" })
|
|
3831
|
-
] })
|
|
3832
|
-
] }),
|
|
3833
|
-
unreadCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex items-center justify-between border-b p-2", children: [
|
|
3834
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("span", { className: "text-sm text-muted-foreground", children: [
|
|
3835
|
-
unreadCount,
|
|
3836
|
-
" unread notification",
|
|
3837
|
-
unreadCount !== 1 ? "s" : ""
|
|
3838
|
-
] }),
|
|
3839
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button, { variant: "ghost", size: "sm", onClick: onRemoveAll, className: "text-sm", children: "Dismiss all" })
|
|
3840
|
-
] }),
|
|
3841
|
-
unreadNotifications.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(ScrollArea, { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "divide-y", children: unreadNotifications.map((notification) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
|
|
3842
|
-
"div",
|
|
3843
|
-
{
|
|
3844
|
-
className: cn("flex gap-3 p-4 transition-colors bg-muted/50"),
|
|
3845
|
-
children: [
|
|
3846
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-muted", children: getNotificationIcon(notification.type) }),
|
|
3847
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex-1 space-y-1", children: [
|
|
3848
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex items-center justify-between", children: [
|
|
3849
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "font-medium", children: notification.title }),
|
|
3850
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex items-center gap-2", children: [
|
|
3851
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-xs text-muted-foreground", children: notification.time }),
|
|
3852
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
3853
|
-
Button,
|
|
3854
|
-
{
|
|
3855
|
-
variant: "ghost",
|
|
3856
|
-
size: "sm",
|
|
3857
|
-
className: "h-6 w-6 p-0",
|
|
3858
|
-
onClick: () => onNotificationRemove?.(notification.id),
|
|
3859
|
-
title: "Dismiss",
|
|
3860
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.Check, { className: "h-3 w-3" })
|
|
3861
|
-
}
|
|
3862
|
-
)
|
|
3863
|
-
] })
|
|
3864
|
-
] }),
|
|
3865
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-sm text-muted-foreground", children: notification.description }),
|
|
3866
|
-
notification.actionLabel && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
|
|
3867
|
-
Button,
|
|
3868
|
-
{
|
|
3869
|
-
variant: "link",
|
|
3870
|
-
size: "sm",
|
|
3871
|
-
className: "h-auto p-0 text-sm",
|
|
3872
|
-
onClick: notification.onAction,
|
|
3873
|
-
children: [
|
|
3874
|
-
notification.actionLabel,
|
|
3875
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.ChevronRight, { className: "ml-1 h-3 w-3" })
|
|
3876
|
-
]
|
|
3877
|
-
}
|
|
3878
|
-
)
|
|
3879
|
-
] })
|
|
3880
|
-
]
|
|
3881
|
-
},
|
|
3882
|
-
notification.id
|
|
3883
|
-
)) }) }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex flex-1 flex-col items-center justify-center p-8 text-center", children: [
|
|
3884
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex h-16 w-16 items-center justify-center rounded-full bg-muted", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react6.Bell, { className: "h-8 w-8 text-muted-foreground" }) }),
|
|
3885
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("h3", { className: "mt-4 text-lg font-medium", children: "No notifications" }),
|
|
3886
|
-
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "mt-2 text-sm text-muted-foreground", children: "When you receive notifications, they'll appear here." })
|
|
3887
|
-
] })
|
|
3888
|
-
] })
|
|
3889
|
-
}
|
|
3890
|
-
)
|
|
3891
|
-
] }) });
|
|
3892
|
-
}
|
|
3893
|
-
|
|
3894
|
-
// src/components/AdvancedComponents/navigation-tabs.tsx
|
|
3895
|
-
var import_react3 = require("motion/react");
|
|
3896
|
-
var import_lucide_react7 = require("lucide-react");
|
|
3897
|
-
|
|
3898
|
-
// src/components/ui/tabs.tsx
|
|
3899
|
-
var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"));
|
|
3900
|
-
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
3901
|
-
function Tabs({
|
|
3902
|
-
className,
|
|
3903
|
-
...props
|
|
3904
|
-
}) {
|
|
3905
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
3906
|
-
TabsPrimitive.Root,
|
|
3907
|
-
{
|
|
3908
|
-
"data-slot": "tabs",
|
|
3909
|
-
className: cn("flex flex-col gap-2", className),
|
|
3910
|
-
...props
|
|
3911
|
-
}
|
|
3912
|
-
);
|
|
3913
|
-
}
|
|
3914
|
-
function TabsList({
|
|
3915
|
-
className,
|
|
3916
|
-
...props
|
|
3917
|
-
}) {
|
|
3918
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
3919
|
-
TabsPrimitive.List,
|
|
3920
|
-
{
|
|
3921
|
-
"data-slot": "tabs-list",
|
|
3922
|
-
className: cn(
|
|
3923
|
-
"bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
|
|
3924
|
-
className
|
|
3925
|
-
),
|
|
3926
|
-
...props
|
|
3927
|
-
}
|
|
3928
|
-
);
|
|
3929
|
-
}
|
|
3930
|
-
function TabsTrigger({
|
|
3931
|
-
className,
|
|
3932
|
-
...props
|
|
3933
|
-
}) {
|
|
3934
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
3935
|
-
TabsPrimitive.Trigger,
|
|
3936
|
-
{
|
|
3937
|
-
"data-slot": "tabs-trigger",
|
|
3938
|
-
className: cn(
|
|
3939
|
-
"data-[state=active]:bg-accent data-[state=active]:text-accent-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3940
|
-
className
|
|
3941
|
-
),
|
|
3942
|
-
...props
|
|
3943
|
-
}
|
|
3944
|
-
);
|
|
3945
|
-
}
|
|
3946
|
-
|
|
3947
|
-
// src/components/ui/dropdown-menu.tsx
|
|
3948
|
-
var React9 = __toESM(require("react"));
|
|
3949
|
-
var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
|
|
3950
|
-
var import_react_icons = require("@radix-ui/react-icons");
|
|
3951
|
-
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
3952
|
-
var DropdownMenu = DropdownMenuPrimitive.Root;
|
|
3953
|
-
var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
|
|
3954
|
-
var DropdownMenuSubTrigger = React9.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
3955
|
-
DropdownMenuPrimitive.SubTrigger,
|
|
3956
|
-
{
|
|
3957
|
-
ref,
|
|
3958
|
-
className: cn(
|
|
3959
|
-
"flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
|
|
3960
|
-
inset && "pl-8",
|
|
3961
|
-
className
|
|
3962
|
-
),
|
|
3963
|
-
...props,
|
|
3964
|
-
children: [
|
|
3965
|
-
children,
|
|
3966
|
-
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_icons.ChevronRightIcon, { className: "ml-auto" })
|
|
3967
|
-
]
|
|
3968
|
-
}
|
|
3969
|
-
));
|
|
3970
|
-
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
3971
|
-
var DropdownMenuSubContent = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3972
|
-
DropdownMenuPrimitive.SubContent,
|
|
3973
|
-
{
|
|
3974
|
-
ref,
|
|
3975
|
-
className: cn(
|
|
3976
|
-
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
3977
|
-
className
|
|
3978
|
-
),
|
|
3979
|
-
...props
|
|
3980
|
-
}
|
|
3981
|
-
));
|
|
3982
|
-
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
3983
|
-
var DropdownMenuContent = React9.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3984
|
-
DropdownMenuPrimitive.Content,
|
|
3985
|
-
{
|
|
3986
|
-
ref,
|
|
3987
|
-
sideOffset,
|
|
3988
|
-
className: cn(
|
|
3989
|
-
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",
|
|
3990
|
-
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
3991
|
-
className
|
|
3992
|
-
),
|
|
3993
|
-
...props
|
|
3994
|
-
}
|
|
3995
|
-
) }));
|
|
3996
|
-
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
3997
|
-
var DropdownMenuItem = React9.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
3998
|
-
DropdownMenuPrimitive.Item,
|
|
3999
|
-
{
|
|
4000
|
-
ref,
|
|
4001
|
-
className: cn(
|
|
4002
|
-
"relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
4003
|
-
inset && "pl-8",
|
|
4004
|
-
className
|
|
4005
|
-
),
|
|
4006
|
-
...props
|
|
4007
|
-
}
|
|
4008
|
-
));
|
|
4009
|
-
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
4010
|
-
var DropdownMenuCheckboxItem = React9.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
4011
|
-
DropdownMenuPrimitive.CheckboxItem,
|
|
4012
|
-
{
|
|
4013
|
-
ref,
|
|
4014
|
-
className: cn(
|
|
4015
|
-
"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
4016
|
-
className
|
|
4017
|
-
),
|
|
4018
|
-
checked,
|
|
4019
|
-
...props,
|
|
4020
|
-
children: [
|
|
4021
|
-
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_icons.CheckIcon, { className: "h-4 w-4" }) }) }),
|
|
4022
|
-
children
|
|
4023
|
-
]
|
|
4024
|
-
}
|
|
4025
|
-
));
|
|
4026
|
-
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
4027
|
-
var DropdownMenuRadioItem = React9.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
4028
|
-
DropdownMenuPrimitive.RadioItem,
|
|
4029
|
-
{
|
|
4030
|
-
ref,
|
|
4031
|
-
className: cn(
|
|
4032
|
-
"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
4033
|
-
className
|
|
4034
|
-
),
|
|
4035
|
-
...props,
|
|
4036
|
-
children: [
|
|
4037
|
-
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_icons.DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
|
|
4038
|
-
children
|
|
4039
|
-
]
|
|
4040
|
-
}
|
|
4041
|
-
));
|
|
4042
|
-
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
4043
|
-
var DropdownMenuLabel = React9.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
4044
|
-
DropdownMenuPrimitive.Label,
|
|
4045
|
-
{
|
|
4046
|
-
ref,
|
|
4047
|
-
className: cn("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className),
|
|
4048
|
-
...props
|
|
4049
|
-
}
|
|
4050
|
-
));
|
|
4051
|
-
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
4052
|
-
var DropdownMenuSeparator = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
4053
|
-
DropdownMenuPrimitive.Separator,
|
|
4054
|
-
{
|
|
4055
|
-
ref,
|
|
4056
|
-
className: cn("-mx-1 my-1 h-px bg-muted", className),
|
|
4057
|
-
...props
|
|
4058
|
-
}
|
|
4059
|
-
));
|
|
4060
|
-
DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
|
|
4061
|
-
var DropdownMenuShortcut = ({ className, ...props }) => {
|
|
4062
|
-
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
|
|
4063
|
-
};
|
|
4064
|
-
DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
|
|
4065
|
-
|
|
4066
|
-
// src/components/AdvancedComponents/navigation-tabs.tsx
|
|
4067
|
-
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
4068
|
-
function NavigationTabs({
|
|
4069
|
-
activeTab,
|
|
4070
|
-
onTabChange,
|
|
4071
|
-
tabOptions,
|
|
4072
|
-
className = "",
|
|
4073
|
-
maxWidth = "700px",
|
|
4074
|
-
gridCols = 6
|
|
4075
|
-
}) {
|
|
4076
|
-
const currentTab = tabOptions.find((tab) => tab.value === activeTab);
|
|
4077
|
-
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
4078
|
-
import_react3.motion.div,
|
|
4079
|
-
{
|
|
4080
|
-
className: `flex-1 flex justify-center ${className}`,
|
|
4081
|
-
initial: { opacity: 0, y: -20 },
|
|
4082
|
-
animate: { opacity: 1, y: 0 },
|
|
4083
|
-
transition: { duration: 0.3, ease: "easeOut" },
|
|
4084
|
-
children: [
|
|
4085
|
-
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "hidden lg:block", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Tabs, { value: activeTab, onValueChange: onTabChange, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
4086
|
-
TabsList,
|
|
4087
|
-
{
|
|
4088
|
-
className: "grid w-full rounded-2xl p-0 h-10",
|
|
4089
|
-
style: {
|
|
4090
|
-
maxWidth,
|
|
4091
|
-
gridTemplateColumns: `repeat(${Math.min(
|
|
4092
|
-
gridCols,
|
|
4093
|
-
tabOptions.length
|
|
4094
|
-
)}, minmax(0, 1fr))`
|
|
4095
|
-
},
|
|
4096
|
-
children: tabOptions.map((tab) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
4097
|
-
import_react3.motion.div,
|
|
4098
|
-
{
|
|
4099
|
-
whileHover: { scale: 1.1 },
|
|
4100
|
-
whileTap: { scale: 0.98 },
|
|
4101
|
-
transition: { type: "spring", stiffness: 400, damping: 17 },
|
|
4102
|
-
className: "flex-1 px-2",
|
|
4103
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
4104
|
-
TabsTrigger,
|
|
4105
|
-
{
|
|
4106
|
-
value: tab.value,
|
|
4107
|
-
onClick: () => onTabChange?.(tab.value),
|
|
4108
|
-
className: "w-full h-8 rounded-xl data-[state=active]:rounded-xl transition-all duration-200 hover:border hover:border-accent hover:bg-accent/10 px-4 py-2 text-sm font-medium",
|
|
4109
|
-
children: tab.label
|
|
4110
|
-
}
|
|
4111
|
-
)
|
|
4112
|
-
},
|
|
4113
|
-
tab.value
|
|
4114
|
-
))
|
|
4115
|
-
}
|
|
4116
|
-
) }) }),
|
|
4117
|
-
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "lg:hidden", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenu, { children: [
|
|
4118
|
-
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Button, { variant: "outline", className: "rounded-2xl min-w-[140px] justify-between", children: [
|
|
4119
|
-
currentTab?.label || "Select",
|
|
4120
|
-
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react7.ChevronDown, { className: "h-4 w-4 ml-2" })
|
|
4121
|
-
] }) }),
|
|
4122
|
-
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuContent, { align: "center", className: "w-[180px]", children: tabOptions.map((tab) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
4123
|
-
DropdownMenuItem,
|
|
4124
|
-
{
|
|
4125
|
-
onClick: () => onTabChange?.(tab.value),
|
|
4126
|
-
className: `cursor-pointer ${activeTab === tab.value ? "bg-accent" : ""}`,
|
|
4127
|
-
children: tab.label
|
|
4128
|
-
},
|
|
4129
|
-
tab.value
|
|
4130
|
-
)) })
|
|
4131
|
-
] }) })
|
|
4132
|
-
]
|
|
4133
|
-
}
|
|
4134
|
-
);
|
|
4135
|
-
}
|
|
4136
|
-
|
|
4137
|
-
// src/components/AdvancedComponents/app-header.tsx
|
|
4138
|
-
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
4139
|
-
function AppHeader({
|
|
4140
|
-
title,
|
|
4141
|
-
notifications = [],
|
|
4142
|
-
onToggleSidebar,
|
|
4143
|
-
onToggleMobileMenu,
|
|
4144
|
-
sidebarOpen = true,
|
|
4145
|
-
className,
|
|
4146
|
-
activeTab = "assistant",
|
|
4147
|
-
onTabChange,
|
|
4148
|
-
showTabs = true,
|
|
4149
|
-
tabOptions = [
|
|
4150
|
-
{ value: "home", label: "Home" },
|
|
4151
|
-
{ value: "chat", label: "Chat" },
|
|
4152
|
-
{ value: "projects", label: "Projects" },
|
|
4153
|
-
{ value: "colleagues", label: "Colleagues" },
|
|
4154
|
-
{ value: "knowledge", label: "Knowledge" }
|
|
4155
|
-
// { value: "files", label: "Files" },
|
|
4156
|
-
],
|
|
4157
|
-
onActionClick,
|
|
4158
|
-
actionIcon = /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react8.Bot, { className: "mr-2 h-4 w-4" }),
|
|
4159
|
-
actionText = "Action",
|
|
4160
|
-
onNotificationRemove,
|
|
4161
|
-
onRemoveAll,
|
|
4162
|
-
logo = "/headerlogo.png",
|
|
4163
|
-
appName = "Nuvia",
|
|
4164
|
-
tagline = "Collaboration Platform"
|
|
4165
|
-
}) {
|
|
4166
|
-
const [notificationsPanelOpen, setNotificationsPanelOpen] = (0, import_react4.useState)(false);
|
|
4167
|
-
const [notificationsData, setNotificationsData] = (0, import_react4.useState)(notifications);
|
|
4168
|
-
const unreadCount = notificationsData.filter((notification) => !notification.read).length;
|
|
4169
|
-
const handleNotificationRemove = (id) => {
|
|
4170
|
-
setNotificationsData((prev) => prev.filter((notification) => notification.id !== id));
|
|
4171
|
-
onNotificationRemove?.(id);
|
|
4172
|
-
};
|
|
4173
|
-
const handleRemoveAll = () => {
|
|
4174
|
-
setNotificationsData((prev) => prev.filter((notification) => notification.read));
|
|
4175
|
-
onRemoveAll?.();
|
|
4176
|
-
};
|
|
4177
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
|
|
4178
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
4179
|
-
"header",
|
|
4180
|
-
{
|
|
4181
|
-
className: `sticky top-0 z-10 flex h-16 items-center gap-3 pl-2 pr-4 backdrop-blur ${className || ""}`,
|
|
4182
|
-
children: [
|
|
4183
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Button, { variant: "ghost", size: "icon", className: "md:hidden", onClick: onToggleMobileMenu, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react8.Menu, { className: "h-5 w-5" }) }),
|
|
4184
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Button, { variant: "ghost", size: "icon", className: "hidden md:flex", onClick: onToggleSidebar, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react8.PanelLeft, { className: "h-5 w-5" }) }),
|
|
4185
|
-
!sidebarOpen && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
4186
|
-
import_react5.motion.div,
|
|
4187
|
-
{
|
|
4188
|
-
className: "flex items-center gap-3",
|
|
4189
|
-
initial: { opacity: 0, x: -20 },
|
|
4190
|
-
animate: { opacity: 1, x: 0 },
|
|
4191
|
-
transition: { duration: 0.3 },
|
|
4192
|
-
children: [
|
|
4193
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex h-10 w-10 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("img", { src: logo, alt: "Logo", className: "h-10 w-10 object-contain" }) }),
|
|
4194
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { children: [
|
|
4195
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h2", { className: "font-semibold text-sm", children: appName }),
|
|
4196
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-xs text-muted-foreground", children: tagline })
|
|
4197
|
-
] })
|
|
4198
|
-
]
|
|
4199
|
-
}
|
|
4200
|
-
),
|
|
4201
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-1 items-center", children: [
|
|
4202
|
-
showTabs && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4203
|
-
NavigationTabs,
|
|
4204
|
-
{
|
|
4205
|
-
activeTab,
|
|
4206
|
-
onTabChange,
|
|
4207
|
-
tabOptions
|
|
4208
|
-
}
|
|
4209
|
-
),
|
|
4210
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center gap-3 ml-auto", children: [
|
|
4211
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4212
|
-
import_react5.motion.div,
|
|
4213
|
-
{
|
|
4214
|
-
className: "hidden md:flex gap-2",
|
|
4215
|
-
initial: { opacity: 0, x: 20 },
|
|
4216
|
-
animate: { opacity: 1, x: 0 },
|
|
4217
|
-
transition: { duration: 0.3, ease: "easeOut", delay: 0.1 },
|
|
4218
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4219
|
-
import_react5.motion.div,
|
|
4220
|
-
{
|
|
4221
|
-
whileHover: { scale: 1.05 },
|
|
4222
|
-
whileTap: { scale: 0.95 },
|
|
4223
|
-
transition: { type: "spring", stiffness: 400, damping: 17 },
|
|
4224
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
4225
|
-
Button,
|
|
4226
|
-
{
|
|
4227
|
-
className: "rounded-2xl transition-all duration-200 hover:shadow-md",
|
|
4228
|
-
onClick: onActionClick,
|
|
4229
|
-
children: [
|
|
4230
|
-
actionIcon,
|
|
4231
|
-
actionText
|
|
4232
|
-
]
|
|
4233
|
-
}
|
|
4234
|
-
)
|
|
4235
|
-
}
|
|
4236
|
-
)
|
|
4237
|
-
}
|
|
4238
|
-
),
|
|
4239
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ThemeToggle, {}),
|
|
4240
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Tooltip, { children: [
|
|
4241
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4242
|
-
import_react5.motion.div,
|
|
4243
|
-
{
|
|
4244
|
-
whileHover: { scale: 1.05 },
|
|
4245
|
-
whileTap: { scale: 0.95 },
|
|
4246
|
-
transition: { type: "spring", stiffness: 400, damping: 17 },
|
|
4247
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
4248
|
-
Button,
|
|
4249
|
-
{
|
|
4250
|
-
variant: "ghost",
|
|
4251
|
-
size: "icon",
|
|
4252
|
-
className: "rounded-2xl relative transition-all duration-200",
|
|
4253
|
-
onClick: () => setNotificationsPanelOpen(true),
|
|
4254
|
-
children: [
|
|
4255
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4256
|
-
import_react5.motion.div,
|
|
4257
|
-
{
|
|
4258
|
-
animate: unreadCount > 0 ? { rotate: [0, -10, 10, -10, 0] } : {},
|
|
4259
|
-
transition: {
|
|
4260
|
-
duration: 0.5,
|
|
4261
|
-
repeat: unreadCount > 0 ? Infinity : 0,
|
|
4262
|
-
repeatDelay: 3
|
|
4263
|
-
},
|
|
4264
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react8.Bell, { className: "h-5 w-5" })
|
|
4265
|
-
}
|
|
4266
|
-
),
|
|
4267
|
-
unreadCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4268
|
-
import_react5.motion.span,
|
|
4269
|
-
{
|
|
4270
|
-
className: "absolute -right-1 -top-1 flex h-5 w-5 items-center justify-center rounded-full bg-red-500 text-xs text-white",
|
|
4271
|
-
initial: { scale: 0 },
|
|
4272
|
-
animate: { scale: 1 },
|
|
4273
|
-
transition: { type: "spring", stiffness: 500, damping: 15 },
|
|
4274
|
-
children: unreadCount
|
|
4275
|
-
}
|
|
4276
|
-
)
|
|
4277
|
-
]
|
|
4278
|
-
}
|
|
4279
|
-
)
|
|
4280
|
-
}
|
|
4281
|
-
) }),
|
|
4282
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipContent, { children: "Notifications" })
|
|
4283
|
-
] }) }),
|
|
4284
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4285
|
-
import_react5.motion.div,
|
|
4286
|
-
{
|
|
4287
|
-
whileHover: { scale: 1.05 },
|
|
4288
|
-
whileTap: { scale: 0.95 },
|
|
4289
|
-
transition: { type: "spring", stiffness: 400, damping: 17 },
|
|
4290
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Avatar, { className: "h-9 w-9 border-2 border-primary transition-all duration-200 hover:shadow-md cursor-pointer", children: [
|
|
4291
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AvatarImage, { src: "/placeholder.svg?height=40&width=40", alt: "User" }),
|
|
4292
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AvatarFallback, {})
|
|
4293
|
-
] })
|
|
4294
|
-
}
|
|
4295
|
-
)
|
|
4296
|
-
] })
|
|
4297
|
-
] })
|
|
4298
|
-
]
|
|
4299
|
-
}
|
|
4300
|
-
),
|
|
4301
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
4302
|
-
NotificationsPanel,
|
|
4303
|
-
{
|
|
4304
|
-
notifications: notificationsData,
|
|
4305
|
-
open: notificationsPanelOpen,
|
|
4306
|
-
onClose: () => setNotificationsPanelOpen(false),
|
|
4307
|
-
onNotificationRemove: handleNotificationRemove,
|
|
4308
|
-
onRemoveAll: handleRemoveAll
|
|
4309
|
-
}
|
|
4310
|
-
)
|
|
4311
|
-
] });
|
|
4312
|
-
}
|
|
4313
|
-
|
|
4314
|
-
// src/components/DigitalColleagues/DigitalColleageusLayout.tsx
|
|
4315
|
-
var import_lucide_react9 = require("lucide-react");
|
|
4316
|
-
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
4317
|
-
var businessUnits2 = [
|
|
4318
|
-
{
|
|
4319
|
-
id: "copilot",
|
|
4320
|
-
name: "Peronal Copilot",
|
|
4321
|
-
description: "Your personal AI assistant for all tasks",
|
|
4322
|
-
icon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react9.User, { className: "h-4 w-4" }),
|
|
4323
|
-
color: "bg-orange-600",
|
|
4324
|
-
accentColor: "text-orange-600"
|
|
4325
|
-
}
|
|
4326
|
-
];
|
|
4327
|
-
function DigitalColleageusLayout({
|
|
4328
|
-
sidebarItems,
|
|
4329
|
-
children,
|
|
4330
|
-
title = "Digital Colleagues",
|
|
4331
|
-
notifications = [],
|
|
4332
|
-
currentBusinessUnit = businessUnits2[0],
|
|
4333
|
-
// Default to Design unit
|
|
4334
|
-
onBusinessUnitChange,
|
|
4335
|
-
onSearch,
|
|
4336
|
-
businessUnits: businessUnitsProp = businessUnits2,
|
|
4337
|
-
activeTab,
|
|
4338
|
-
onTabChange,
|
|
4339
|
-
showTabs = false,
|
|
4340
|
-
onActionClick,
|
|
4341
|
-
actionIcon,
|
|
4342
|
-
actionText = "Action",
|
|
4343
|
-
onNotificationRemove,
|
|
4344
|
-
onRemoveAll,
|
|
4345
|
-
logo = "/headerlogo.png",
|
|
4346
|
-
appName = "Nuvia",
|
|
4347
|
-
tagline = "Collaboration Platform",
|
|
4348
|
-
sidebarInitiallyClosed = false
|
|
4349
|
-
}) {
|
|
4350
|
-
const [sidebarOpen, setSidebarOpen] = (0, import_react6.useState)(!sidebarInitiallyClosed);
|
|
4351
|
-
const [mobileMenuOpen, setMobileMenuOpen] = (0, import_react6.useState)(false);
|
|
4352
|
-
const [localBusinessUnit, setLocalBusinessUnit] = (0, import_react6.useState)(currentBusinessUnit);
|
|
4353
|
-
const handleBusinessUnitChange = (unit) => {
|
|
4354
|
-
setLocalBusinessUnit(unit);
|
|
4355
|
-
onBusinessUnitChange?.(unit);
|
|
4356
|
-
};
|
|
4357
|
-
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex h-full flex-col overflow-hidden rounded-xl bg-background w-[]", children: [
|
|
4358
|
-
mobileMenuOpen && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "fixed inset-0 z-40 bg-black/50 md:hidden", onClick: () => setMobileMenuOpen(false) }),
|
|
4359
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "md:hidden", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
4360
|
-
AppSidebar,
|
|
4361
|
-
{
|
|
4362
|
-
items: sidebarItems,
|
|
4363
|
-
isOpen: mobileMenuOpen,
|
|
4364
|
-
isMobile: true,
|
|
4365
|
-
onClose: () => setMobileMenuOpen(false),
|
|
4366
|
-
currentBusinessUnit: localBusinessUnit,
|
|
4367
|
-
onBusinessUnitChange: handleBusinessUnitChange,
|
|
4368
|
-
onSearch,
|
|
4369
|
-
logo,
|
|
4370
|
-
appName,
|
|
4371
|
-
tagline
|
|
4372
|
-
}
|
|
4373
|
-
) }),
|
|
4374
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "hidden md:block", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
4375
|
-
AppSidebar,
|
|
4376
|
-
{
|
|
4377
|
-
items: sidebarItems,
|
|
4378
|
-
isOpen: sidebarOpen,
|
|
4379
|
-
isMobile: false,
|
|
4380
|
-
currentBusinessUnit: localBusinessUnit,
|
|
4381
|
-
onBusinessUnitChange: handleBusinessUnitChange,
|
|
4382
|
-
onSearch,
|
|
4383
|
-
logo,
|
|
4384
|
-
appName,
|
|
4385
|
-
tagline
|
|
4386
|
-
}
|
|
4387
|
-
) }),
|
|
4388
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: cn("min-h-screen fixed w-full transition-all duration-300 ease-in-out", sidebarOpen ? "md:pl-64" : "md:pl-0"), children: [
|
|
4389
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
4390
|
-
AppHeader,
|
|
4391
|
-
{
|
|
4392
|
-
title,
|
|
4393
|
-
notifications,
|
|
4394
|
-
onToggleSidebar: () => setSidebarOpen(!sidebarOpen),
|
|
4395
|
-
onToggleMobileMenu: () => setMobileMenuOpen(true),
|
|
4396
|
-
sidebarOpen,
|
|
4397
|
-
activeTab,
|
|
4398
|
-
onTabChange,
|
|
4399
|
-
showTabs,
|
|
4400
|
-
onActionClick,
|
|
4401
|
-
actionIcon,
|
|
4402
|
-
actionText,
|
|
4403
|
-
onNotificationRemove,
|
|
4404
|
-
onRemoveAll,
|
|
4405
|
-
logo,
|
|
4406
|
-
appName,
|
|
4407
|
-
tagline
|
|
4408
|
-
}
|
|
4409
|
-
),
|
|
4410
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)("main", { className: "flex-1 p-0 flex flex-col h-[calc(100vh-4rem)] overflow-hidden", children })
|
|
4411
|
-
] })
|
|
4412
|
-
] });
|
|
4413
|
-
}
|
|
4414
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
4415
|
-
0 && (module.exports = {
|
|
4416
|
-
DigitalColleageusLayout
|
|
4417
|
-
});
|