@countermeasure-platform/web-components 1.2.1 → 1.2.2-dev.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{arc-jVbrWVYZ.js → arc-DOJ9myHo.js} +21 -21
- package/dist/{arc-jVbrWVYZ.js.map → arc-DOJ9myHo.js.map} +1 -1
- package/dist/architecture-7EHR7CIX-RjIwnEbG.js +3 -0
- package/dist/{architectureDiagram-2XIMDMQ5-D5q0ma9h.js → architectureDiagram-3BPJPVTR-cYFnhp15.js} +165 -152
- package/dist/{architectureDiagram-2XIMDMQ5-D5q0ma9h.js.map → architectureDiagram-3BPJPVTR-cYFnhp15.js.map} +1 -1
- package/dist/{array-DXadUs1s.js → array-BLp0zq5K.js} +1 -1
- package/dist/{array-DXadUs1s.js.map → array-BLp0zq5K.js.map} +1 -1
- package/dist/{blockDiagram-WCTKOSBZ-BH3jwWeU.js → blockDiagram-GPEHLZMM-DNLPMFXL.js} +994 -864
- package/dist/blockDiagram-GPEHLZMM-DNLPMFXL.js.map +1 -0
- package/dist/{c4Diagram-IC4MRINW-OFLrunYI.js → c4Diagram-AAUBKEIU-G8g3OBBg.js} +232 -235
- package/dist/c4Diagram-AAUBKEIU-G8g3OBBg.js.map +1 -0
- package/dist/channel-MTYqUJFm.js +7 -0
- package/dist/{channel-LRbq43st.js.map → channel-MTYqUJFm.js.map} +1 -1
- package/dist/{chunk-KX2RTZJC-d9jFqUAY.js → chunk-2J33WTMH-BKsVIUnb.js} +4 -4
- package/dist/{chunk-KX2RTZJC-d9jFqUAY.js.map → chunk-2J33WTMH-BKsVIUnb.js.map} +1 -1
- package/dist/chunk-3OPIFGDE-CcNRL44h.js +3669 -0
- package/dist/chunk-3OPIFGDE-CcNRL44h.js.map +1 -0
- package/dist/{chunk-4BX2VUAB-BS9gpN-y.js → chunk-4BX2VUAB-BeLKo9Pn.js} +2 -2
- package/dist/{chunk-4BX2VUAB-BS9gpN-y.js.map → chunk-4BX2VUAB-BeLKo9Pn.js.map} +1 -1
- package/dist/{chunk-R5LLSJPH-c1IfaK5D.js → chunk-4EGX6M5U-Bh9as06l.js} +13 -13
- package/dist/chunk-4EGX6M5U-Bh9as06l.js.map +1 -0
- package/dist/{chunk-55IACEB6-DZ-UBhHX.js → chunk-55IACEB6-CuKbiO89.js} +3 -3
- package/dist/{chunk-55IACEB6-DZ-UBhHX.js.map → chunk-55IACEB6-CuKbiO89.js.map} +1 -1
- package/dist/chunk-5DO6E6H7-CAB8pWf5.js +25 -0
- package/dist/chunk-5DO6E6H7-CAB8pWf5.js.map +1 -0
- package/dist/{chunk-GEFDOKGD-DGJJEGSm.js → chunk-5ZQYHXKU-CjOcwRY6.js} +570 -326
- package/dist/chunk-5ZQYHXKU-CjOcwRY6.js.map +1 -0
- package/dist/{chunk-WL4C6EOR-BV-op7zg.js → chunk-727SXJPM-kowsFLrz.js} +724 -569
- package/dist/chunk-727SXJPM-kowsFLrz.js.map +1 -0
- package/dist/{chunk-NQ4KR5QH-C0nWShNk.js → chunk-AQP2D5EJ-Bc1gUIeA.js} +384 -362
- package/dist/chunk-AQP2D5EJ-Bc1gUIeA.js.map +1 -0
- package/dist/{chunk-OZEHJAEY-BsQ56PV-.js → chunk-BR22UD5L-BCFxmd5-.js} +16 -16
- package/dist/chunk-BR22UD5L-BCFxmd5-.js.map +1 -0
- package/dist/{chunk-MX3YWQON-D43mcq1f.js → chunk-BSJP7CBP-Bl94i3-1.js} +7 -5
- package/dist/chunk-BSJP7CBP-Bl94i3-1.js.map +1 -0
- package/dist/chunk-CSCIHK7Q-DyRIc27i.js +2868 -0
- package/dist/chunk-CSCIHK7Q-DyRIc27i.js.map +1 -0
- package/dist/chunk-FHYWG6QK-kLWdRarG.js +25 -0
- package/dist/chunk-FHYWG6QK-kLWdRarG.js.map +1 -0
- package/dist/{chunk-FMBD7UC4-1IxrpdPX.js → chunk-FMBD7UC4-IdpWVRCU.js} +2 -2
- package/dist/{chunk-FMBD7UC4-1IxrpdPX.js.map → chunk-FMBD7UC4-IdpWVRCU.js.map} +1 -1
- package/dist/chunk-KSCS5N6A-CVcDS9QV.js +563 -0
- package/dist/chunk-KSCS5N6A-CVcDS9QV.js.map +1 -0
- package/dist/{chunk-YBOYWFTD-DkjEOcgZ.js → chunk-L5ZTLDWV-Day0EgsR.js} +9 -9
- package/dist/{chunk-YBOYWFTD-DkjEOcgZ.js.map → chunk-L5ZTLDWV-Day0EgsR.js.map} +1 -1
- package/dist/chunk-LZXEDZCA-BO_GpQSR.js +51 -0
- package/dist/chunk-LZXEDZCA-BO_GpQSR.js.map +1 -0
- package/dist/chunk-MPE355IW-BkN6MrMO.js +25 -0
- package/dist/chunk-MPE355IW-BkN6MrMO.js.map +1 -0
- package/dist/chunk-MZUSXYTE-94iWO-dh.js +32 -0
- package/dist/chunk-MZUSXYTE-94iWO-dh.js.map +1 -0
- package/dist/chunk-N66VUXT2-QbIUkiJZ.js +56 -0
- package/dist/chunk-N66VUXT2-QbIUkiJZ.js.map +1 -0
- package/dist/{chunk-JSJVCQXG-Do17yYig.js → chunk-ND2GUHAM-Boh7GenS.js} +6 -6
- package/dist/{chunk-JSJVCQXG-Do17yYig.js.map → chunk-ND2GUHAM-Boh7GenS.js.map} +1 -1
- package/dist/chunk-NNHCCRGN-CNU0zvRn.js +20603 -0
- package/dist/chunk-NNHCCRGN-CNU0zvRn.js.map +1 -0
- package/dist/{chunk-PQ6SQG4A-Cpfc5F4u.js → chunk-NZK2D7GU-D4Ird7wv.js} +4 -4
- package/dist/{chunk-PQ6SQG4A-Cpfc5F4u.js.map → chunk-NZK2D7GU-D4Ird7wv.js.map} +1 -1
- package/dist/{chunk-PU5JKC2W-DNpn_Yik.js → chunk-O5CBEL6O-DThtyjPO.js} +85 -74
- package/dist/{chunk-PU5JKC2W-DNpn_Yik.js.map → chunk-O5CBEL6O-DThtyjPO.js.map} +1 -1
- package/dist/chunk-PUPMXCY4-DsO2K8st.js +25 -0
- package/dist/chunk-PUPMXCY4-DsO2K8st.js.map +1 -0
- package/dist/{chunk-QZHKN3VN-kDNdTVLo.js → chunk-QZHKN3VN-DC5aJQQT.js} +2 -2
- package/dist/{chunk-QZHKN3VN-kDNdTVLo.js.map → chunk-QZHKN3VN-DC5aJQQT.js.map} +1 -1
- package/dist/chunk-UIBZB4QT-Cu3IcTk1.js +25 -0
- package/dist/chunk-UIBZB4QT-Cu3IcTk1.js.map +1 -0
- package/dist/chunk-WCWK7LTN-DpMt57Ty.js +33 -0
- package/dist/chunk-WCWK7LTN-DpMt57Ty.js.map +1 -0
- package/dist/chunk-WU5MYG2G-mzocEmS2.js +12 -0
- package/dist/{chunk-HHEYEP7N-DJ1b-gA8.js.map → chunk-WU5MYG2G-mzocEmS2.js.map} +1 -1
- package/dist/{chunk-XPW4576I-BqiPnb3d.js → chunk-XPW4576I-BwxN5U1_.js} +2 -2
- package/dist/{chunk-XPW4576I-BqiPnb3d.js.map → chunk-XPW4576I-BwxN5U1_.js.map} +1 -1
- package/dist/classDiagram-4FO5ZUOK-CZv04EX-.js +31 -0
- package/dist/{classDiagram-VBA2DB6C-DZfC0xPM.js.map → classDiagram-4FO5ZUOK-CZv04EX-.js.map} +1 -1
- package/dist/classDiagram-v2-Q7XG4LA2-aOPSPoxt.js +31 -0
- package/dist/{classDiagram-v2-RAHNMMFH-CtWRD1ax.js.map → classDiagram-v2-Q7XG4LA2-aOPSPoxt.js.map} +1 -1
- package/dist/component-CBXhVCNE.js +163 -0
- package/dist/component-CBXhVCNE.js.map +1 -0
- package/dist/components/brand/index.d.ts +8 -2
- package/dist/components/brand/index.d.ts.map +1 -1
- package/dist/components/brand/index.js +58 -31
- package/dist/components/brand/index.js.map +1 -1
- package/dist/components/brand/types.d.ts +8 -0
- package/dist/components/brand/types.d.ts.map +1 -1
- package/dist/{cose-bilkent-S5V4N54A-DxM02fly.js → cose-bilkent-S5V4N54A-D_hwzCJc.js} +7 -8
- package/dist/{cose-bilkent-S5V4N54A-DxM02fly.js.map → cose-bilkent-S5V4N54A-D_hwzCJc.js.map} +1 -1
- package/dist/{cytoscape.esm-2vKMh7AJ.js → cytoscape.esm-C85eXBIz.js} +1 -1
- package/dist/{cytoscape.esm-2vKMh7AJ.js.map → cytoscape.esm-C85eXBIz.js.map} +1 -1
- package/dist/dagre-BM42HDAG-DBqY2dVf.js +299 -0
- package/dist/dagre-BM42HDAG-DBqY2dVf.js.map +1 -0
- package/dist/dagre-IxFkiJHF.js +1938 -0
- package/dist/dagre-IxFkiJHF.js.map +1 -0
- package/dist/{defaultLocale-PLHpRrsr.js → defaultLocale-DSDxELFN.js} +1 -1
- package/dist/{defaultLocale-PLHpRrsr.js.map → defaultLocale-DSDxELFN.js.map} +1 -1
- package/dist/{diagram-IFDJBPK2-D-Enf1mK.js → diagram-2AECGRRQ-BwC5Qbme.js} +39 -39
- package/dist/{diagram-IFDJBPK2-D-Enf1mK.js.map → diagram-2AECGRRQ-BwC5Qbme.js.map} +1 -1
- package/dist/diagram-5GNKFQAL-BpJ9oZ4s.js +103 -0
- package/dist/diagram-5GNKFQAL-BpJ9oZ4s.js.map +1 -0
- package/dist/diagram-KO2AKTUF-kSLn21uw.js +434 -0
- package/dist/diagram-KO2AKTUF-kSLn21uw.js.map +1 -0
- package/dist/{diagram-P4PSJMXO-O8g_RIkM.js → diagram-LMA3HP47-BRqyGMLP.js} +43 -43
- package/dist/{diagram-P4PSJMXO-O8g_RIkM.js.map → diagram-LMA3HP47-BRqyGMLP.js.map} +1 -1
- package/dist/{diagram-E7M64L7V-Co7O3gub.js → diagram-OG6HWLK6-BsskLXHm.js} +171 -174
- package/dist/diagram-OG6HWLK6-BsskLXHm.js.map +1 -0
- package/dist/{dist-BrNloUiz.js → dist-BScrlPBC.js} +32 -23
- package/dist/dist-BScrlPBC.js.map +1 -0
- package/dist/{erDiagram-INFDFZHY-C42JeR9I.js → erDiagram-TEJ5UH35-DzB7hnCi.js} +198 -164
- package/dist/erDiagram-TEJ5UH35-DzB7hnCi.js.map +1 -0
- package/dist/eventmodeling-FCH6USID-HcA67HMu.js +3 -0
- package/dist/{flowDiagram-PKNHOUZH-DInJjOz3.js → flowDiagram-I6XJVG4X-RYkPtPRG.js} +453 -469
- package/dist/flowDiagram-I6XJVG4X-RYkPtPRG.js.map +1 -0
- package/dist/{ganttDiagram-A5KZAMGK-Dgp-4Yss.js → ganttDiagram-6RSMTGT7-BfjlFVNd.js} +340 -333
- package/dist/ganttDiagram-6RSMTGT7-BfjlFVNd.js.map +1 -0
- package/dist/gitGraph-WXDBUCRP-D60yP8mT.js +3 -0
- package/dist/gitGraphDiagram-PVQCEYII-DbUp_ElG.js +731 -0
- package/dist/gitGraphDiagram-PVQCEYII-DbUp_ElG.js.map +1 -0
- package/dist/graphlib-k-wJtbbK.js +1268 -0
- package/dist/graphlib-k-wJtbbK.js.map +1 -0
- package/dist/icons/lucide.d.ts +1 -2
- package/dist/icons/lucide.d.ts.map +1 -1
- package/dist/icons/lucide.js.map +1 -1
- package/dist/info-J43DQDTF-DDmtkMBG.js +3 -0
- package/dist/{infoDiagram-LFFYTUFH-DajJJRvc.js → infoDiagram-5YYISTIA-C0TqWTrr.js} +7 -7
- package/dist/{infoDiagram-LFFYTUFH-DajJJRvc.js.map → infoDiagram-5YYISTIA-C0TqWTrr.js.map} +1 -1
- package/dist/{init-DcLTaNW1.js → init-CGzIZb6J.js} +1 -1
- package/dist/{init-DcLTaNW1.js.map → init-CGzIZb6J.js.map} +1 -1
- package/dist/{ishikawaDiagram-PHBUUO56-qHBJm2LT.js → ishikawaDiagram-YF4QCWOH-Cyk_Antz.js} +98 -97
- package/dist/ishikawaDiagram-YF4QCWOH-Cyk_Antz.js.map +1 -0
- package/dist/{journeyDiagram-4ABVD52K-PgfYdoDM.js → journeyDiagram-JHISSGLW-CTl8eDDe.js} +78 -78
- package/dist/journeyDiagram-JHISSGLW-CTl8eDDe.js.map +1 -0
- package/dist/{kanban-definition-K7BYSVSG-DFRT8j7A.js → kanban-definition-UN3LZRKU-homeDoHF.js} +46 -44
- package/dist/{kanban-definition-K7BYSVSG-DFRT8j7A.js.map → kanban-definition-UN3LZRKU-homeDoHF.js.map} +1 -1
- package/dist/{katex-BZdHnXin.js → katex-CgkxVokH.js} +1 -1
- package/dist/{katex-BZdHnXin.js.map → katex-CgkxVokH.js.map} +1 -1
- package/dist/line-k_aZSToM.js +36 -0
- package/dist/{line-Cq1AZT4f.js.map → line-k_aZSToM.js.map} +1 -1
- package/dist/{linear-BnJD01Xn.js → linear-Dpcbf4VP.js} +5 -5
- package/dist/{linear-BnJD01Xn.js.map → linear-Dpcbf4VP.js.map} +1 -1
- package/dist/{mermaid-parser.core-Dz5qv4CI.js → mermaid-parser.core-B_q76LYz.js} +32 -17
- package/dist/mermaid-parser.core-B_q76LYz.js.map +1 -0
- package/dist/mermaid.core-DAh-gNcn.js +997 -0
- package/dist/mermaid.core-DAh-gNcn.js.map +1 -0
- package/dist/{mindmap-definition-YRQLILUH-D95OPRMh.js → mindmap-definition-RKZ34NQL-Cjglmmr7.js} +153 -108
- package/dist/mindmap-definition-RKZ34NQL-Cjglmmr7.js.map +1 -0
- package/dist/{ordinal-CC9tfh_g.js → ordinal-DHGdAr1Y.js} +2 -2
- package/dist/{ordinal-CC9tfh_g.js.map → ordinal-DHGdAr1Y.js.map} +1 -1
- package/dist/packet-YPE3B663-Bo9N32Mb.js +3 -0
- package/dist/{path-y0uQCOMW.js → path-D-DDb3Wo.js} +1 -1
- package/dist/{path-y0uQCOMW.js.map → path-D-DDb3Wo.js.map} +1 -1
- package/dist/pie-LRSECV5Y-DndCyILX.js +3 -0
- package/dist/pieDiagram-4H26LBE5-Swbny_uk.js +167 -0
- package/dist/pieDiagram-4H26LBE5-Swbny_uk.js.map +1 -0
- package/dist/{quadrantDiagram-337W2JSQ-CcKc-h2o.js → quadrantDiagram-W4KKPZXB-kyt1iJkC.js} +359 -332
- package/dist/quadrantDiagram-W4KKPZXB-kyt1iJkC.js.map +1 -0
- package/dist/radar-GUYGQ44K-DpLG1fRN.js +3 -0
- package/dist/react/brand/index.d.ts +13 -1
- package/dist/react/brand/index.d.ts.map +1 -1
- package/dist/react/brand.js +28 -3
- package/dist/react/brand.js.map +1 -1
- package/dist/react/sidebar.d.ts +22 -1
- package/dist/react/sidebar.d.ts.map +1 -1
- package/dist/react/sidebar.js +26 -2
- package/dist/react/sidebar.js.map +1 -1
- package/dist/react/topology.js +1 -1
- package/dist/react.js +100 -100
- package/dist/{requirementDiagram-Z7DCOOCP-aPcaPduF.js → requirementDiagram-4Y6WPE33-DWRks7dz.js} +153 -133
- package/dist/requirementDiagram-4Y6WPE33-DWRks7dz.js.map +1 -0
- package/dist/{rough.esm-C9rQ9YkE.js → rough.esm-C7tiDdBn.js} +1 -1
- package/dist/{rough.esm-C9rQ9YkE.js.map → rough.esm-C7tiDdBn.js.map} +1 -1
- package/dist/{sankeyDiagram-WA2Y5GQK-CO_lUqQX.js → sankeyDiagram-5OEKKPKP-J_SVMd-0.js} +125 -76
- package/dist/{sankeyDiagram-WA2Y5GQK-CO_lUqQX.js.map → sankeyDiagram-5OEKKPKP-J_SVMd-0.js.map} +1 -1
- package/dist/sequenceDiagram-3UESZ5HK-BMhjbe8U.js +4167 -0
- package/dist/sequenceDiagram-3UESZ5HK-BMhjbe8U.js.map +1 -0
- package/dist/sidebar/component.d.ts +5 -0
- package/dist/sidebar/component.d.ts.map +1 -1
- package/dist/sidebar/index.d.ts +1 -1
- package/dist/sidebar/index.d.ts.map +1 -1
- package/dist/sidebar/index.js +1 -1
- package/dist/sidebar/index.js.map +1 -1
- package/dist/sidebar/types.d.ts +59 -0
- package/dist/sidebar/types.d.ts.map +1 -1
- package/dist/{src-D1EMXotX.js → src-CWnvxuyh.js} +603 -591
- package/dist/{src-D1EMXotX.js.map → src-CWnvxuyh.js.map} +1 -1
- package/dist/{src-BhNgmpel.js → src-DngnQkx_.js} +4 -5
- package/dist/{src-BhNgmpel.js.map → src-DngnQkx_.js.map} +1 -1
- package/dist/stateDiagram-AJRCARHV-x4JHehDk.js +220 -0
- package/dist/stateDiagram-AJRCARHV-x4JHehDk.js.map +1 -0
- package/dist/stateDiagram-v2-BHNVJYJU-CO93vpHl.js +29 -0
- package/dist/{stateDiagram-v2-FVOUBMTO-CAWy0Pkh.js.map → stateDiagram-v2-BHNVJYJU-CO93vpHl.js.map} +1 -1
- package/dist/styles/components/brand.css +30 -0
- package/dist/styles/sidebar.css +568 -0
- package/dist/styles/tenant-ui.css +3 -4
- package/dist/styles/threat-library.css +0 -1
- package/dist/styles/tokens.css +0 -1
- package/dist/{timeline-definition-YZTLITO2-CjxxCuOg.js → timeline-definition-PNZ67QCA-rsiMN1-p.js} +517 -279
- package/dist/timeline-definition-PNZ67QCA-rsiMN1-p.js.map +1 -0
- package/dist/{topology-C8cyIHlB.js → topology-B9Lv-y1-.js} +181 -182
- package/dist/{topology-C8cyIHlB.js.map → topology-B9Lv-y1-.js.map} +1 -1
- package/dist/treeView-BLDUP644-mJdM3Q6x.js +3 -0
- package/dist/treemap-LRROVOQU-BbNMhR6z.js +3 -0
- package/dist/{value-gSPnIECy.js → value-CnwEagIg.js} +2 -2
- package/dist/{value-gSPnIECy.js.map → value-CnwEagIg.js.map} +1 -1
- package/dist/{vennDiagram-LZ73GAT5-FqpGoq2s.js → vennDiagram-CIIHVFJN-JUCgWboO.js} +98 -98
- package/dist/{vennDiagram-LZ73GAT5-FqpGoq2s.js.map → vennDiagram-CIIHVFJN-JUCgWboO.js.map} +1 -1
- package/dist/visualization/mermaid-diagram/index.js +1 -1
- package/dist/wardley-L42UT6IY-DB53GwcN.js +3 -0
- package/dist/wardleyDiagram-YWT4CUSO-D9ZPcSHL.js +646 -0
- package/dist/wardleyDiagram-YWT4CUSO-D9ZPcSHL.js.map +1 -0
- package/dist/{xychartDiagram-JWTSCODW-BNEAK79X.js → xychartDiagram-2RQKCTM6-D3ufsY0S.js} +146 -143
- package/dist/{xychartDiagram-JWTSCODW-BNEAK79X.js.map → xychartDiagram-2RQKCTM6-D3ufsY0S.js.map} +1 -1
- package/package.json +1 -1
- package/src/components/brand/index.ts +63 -0
- package/src/components/brand/types.ts +9 -0
- package/src/components/theme/theme-studio-review.test.ts +34 -0
- package/src/icons/lucide.ts +1 -2
- package/src/react/brand/index.test.tsx +28 -0
- package/src/react/brand/index.tsx +38 -0
- package/src/react/sidebar.test.tsx +30 -0
- package/src/react/sidebar.tsx +52 -1
- package/src/sidebar/component.test.ts +109 -0
- package/src/sidebar/component.ts +231 -42
- package/src/sidebar/index.ts +1 -0
- package/src/sidebar/types.ts +60 -0
- package/src/styles/components/brand.css +30 -0
- package/src/styles/sidebar.css +568 -0
- package/src/styles/tenant-ui.css +3 -4
- package/src/styles/threat-library.css +0 -1
- package/src/styles/tokens.css +0 -1
- package/dist/_basePickBy-BQMPE4-n.js +0 -168
- package/dist/_basePickBy-BQMPE4-n.js.map +0 -1
- package/dist/_baseUniq-Bdp_vFUv.js +0 -684
- package/dist/_baseUniq-Bdp_vFUv.js.map +0 -1
- package/dist/architecture-PBZL5I3N-Zk3GmKE8.js +0 -3
- package/dist/blockDiagram-WCTKOSBZ-BH3jwWeU.js.map +0 -1
- package/dist/c4Diagram-IC4MRINW-OFLrunYI.js.map +0 -1
- package/dist/channel-LRbq43st.js +0 -7
- package/dist/chunk-7E7YKBS2-BsywoVTt.js +0 -25
- package/dist/chunk-7E7YKBS2-BsywoVTt.js.map +0 -1
- package/dist/chunk-7R4GIKGN-DJmroLCH.js +0 -2054
- package/dist/chunk-7R4GIKGN-DJmroLCH.js.map +0 -1
- package/dist/chunk-C72U2L5F-BwPwVDcP.js +0 -25
- package/dist/chunk-C72U2L5F-BwPwVDcP.js.map +0 -1
- package/dist/chunk-EGIJ26TM-DKd5cEgn.js +0 -25
- package/dist/chunk-EGIJ26TM-DKd5cEgn.js.map +0 -1
- package/dist/chunk-GEFDOKGD-DGJJEGSm.js.map +0 -1
- package/dist/chunk-GLR3WWYH-BDwmgwCA.js +0 -43
- package/dist/chunk-GLR3WWYH-BDwmgwCA.js.map +0 -1
- package/dist/chunk-HHEYEP7N-DJ1b-gA8.js +0 -12
- package/dist/chunk-KYZI473N-BXYCe83A.js +0 -3437
- package/dist/chunk-KYZI473N-BXYCe83A.js.map +0 -1
- package/dist/chunk-L3YUKLVL-Y5k8UNMf.js +0 -25
- package/dist/chunk-L3YUKLVL-Y5k8UNMf.js.map +0 -1
- package/dist/chunk-MX3YWQON-D43mcq1f.js.map +0 -1
- package/dist/chunk-NBPlniwU.js +0 -23
- package/dist/chunk-NQ4KR5QH-C0nWShNk.js.map +0 -1
- package/dist/chunk-O4XLMI2P-DtGEm9QX.js +0 -514
- package/dist/chunk-O4XLMI2P-DtGEm9QX.js.map +0 -1
- package/dist/chunk-OZEHJAEY-BsQ56PV-.js.map +0 -1
- package/dist/chunk-R5LLSJPH-c1IfaK5D.js.map +0 -1
- package/dist/chunk-WL4C6EOR-BV-op7zg.js.map +0 -1
- package/dist/chunk-XIRO2GV7-Bv1hlNLi.js +0 -32
- package/dist/chunk-XIRO2GV7-Bv1hlNLi.js.map +0 -1
- package/dist/chunk-XZSTWKYB-C7maKWEr.js +0 -15799
- package/dist/chunk-XZSTWKYB-C7maKWEr.js.map +0 -1
- package/dist/classDiagram-VBA2DB6C-DZfC0xPM.js +0 -31
- package/dist/classDiagram-v2-RAHNMMFH-CtWRD1ax.js +0 -31
- package/dist/clone-CliVdNc8.js +0 -10
- package/dist/clone-CliVdNc8.js.map +0 -1
- package/dist/component-C1Jiz1Ki.js +0 -103
- package/dist/component-C1Jiz1Ki.js.map +0 -1
- package/dist/dagre-BqC9mhMk.js +0 -1485
- package/dist/dagre-BqC9mhMk.js.map +0 -1
- package/dist/dagre-KLK3FWXG-DTKcsol6.js +0 -296
- package/dist/dagre-KLK3FWXG-DTKcsol6.js.map +0 -1
- package/dist/diagram-E7M64L7V-Co7O3gub.js.map +0 -1
- package/dist/dist-BrNloUiz.js.map +0 -1
- package/dist/erDiagram-INFDFZHY-C42JeR9I.js.map +0 -1
- package/dist/flowDiagram-PKNHOUZH-DInJjOz3.js.map +0 -1
- package/dist/ganttDiagram-A5KZAMGK-Dgp-4Yss.js.map +0 -1
- package/dist/gitGraph-HDMCJU4V-D_QsK6Rt.js +0 -3
- package/dist/gitGraphDiagram-K3NZZRJ6-Dr_X0dND.js +0 -628
- package/dist/gitGraphDiagram-K3NZZRJ6-Dr_X0dND.js.map +0 -1
- package/dist/graphlib-ecencZTG.js +0 -227
- package/dist/graphlib-ecencZTG.js.map +0 -1
- package/dist/info-3K5VOQVL-BbLiZXwn.js +0 -3
- package/dist/isArrayLikeObject-Bjsxaqj7.js +0 -580
- package/dist/isArrayLikeObject-Bjsxaqj7.js.map +0 -1
- package/dist/isEmpty-CeZZUVts.js +0 -37
- package/dist/isEmpty-CeZZUVts.js.map +0 -1
- package/dist/ishikawaDiagram-PHBUUO56-qHBJm2LT.js.map +0 -1
- package/dist/journeyDiagram-4ABVD52K-PgfYdoDM.js.map +0 -1
- package/dist/line-Cq1AZT4f.js +0 -36
- package/dist/math-D4gdAuwG.js +0 -12
- package/dist/math-D4gdAuwG.js.map +0 -1
- package/dist/mermaid-parser.core-Dz5qv4CI.js.map +0 -1
- package/dist/mermaid.core-DTiIXVKa.js +0 -923
- package/dist/mermaid.core-DTiIXVKa.js.map +0 -1
- package/dist/mindmap-definition-YRQLILUH-D95OPRMh.js.map +0 -1
- package/dist/packet-RMMSAZCW-D72DRs1N.js +0 -3
- package/dist/pie-UPGHQEXC-C8RDLrEi.js +0 -3
- package/dist/pieDiagram-SKSYHLDU-BREEn_Sk.js +0 -167
- package/dist/pieDiagram-SKSYHLDU-BREEn_Sk.js.map +0 -1
- package/dist/quadrantDiagram-337W2JSQ-CcKc-h2o.js.map +0 -1
- package/dist/radar-KQ55EAFF-DhmvjiyN.js +0 -3
- package/dist/requirementDiagram-Z7DCOOCP-aPcaPduF.js.map +0 -1
- package/dist/sequenceDiagram-2WXFIKYE-D7Vh1Zld.js +0 -4112
- package/dist/sequenceDiagram-2WXFIKYE-D7Vh1Zld.js.map +0 -1
- package/dist/stateDiagram-RAJIS63D-DdiY5cf3.js +0 -220
- package/dist/stateDiagram-RAJIS63D-DdiY5cf3.js.map +0 -1
- package/dist/stateDiagram-v2-FVOUBMTO-CAWy0Pkh.js +0 -29
- package/dist/timeline-definition-YZTLITO2-CjxxCuOg.js.map +0 -1
- package/dist/treemap-KZPCXAKY-BvLvHb2t.js +0 -3
|
@@ -4,8 +4,12 @@ export declare class SidebarComponent {
|
|
|
4
4
|
private readonly aside;
|
|
5
5
|
private readonly config;
|
|
6
6
|
private readonly iconSet;
|
|
7
|
+
private collapseButton;
|
|
7
8
|
constructor(config: SidebarComponentConfig);
|
|
8
9
|
private render;
|
|
10
|
+
private buildSection;
|
|
11
|
+
private renderHeader;
|
|
12
|
+
private renderCollapseButton;
|
|
9
13
|
private renderFooter;
|
|
10
14
|
/** Mark a nav item as active, removing active state from all others. */
|
|
11
15
|
setActive(itemId: string): void;
|
|
@@ -19,5 +23,6 @@ export declare class SidebarComponent {
|
|
|
19
23
|
expand(): void;
|
|
20
24
|
/** Remove the sidebar from the DOM. */
|
|
21
25
|
destroy(): void;
|
|
26
|
+
private updateCollapseButton;
|
|
22
27
|
}
|
|
23
28
|
//# sourceMappingURL=component.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/sidebar/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/sidebar/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,EAAE,KAAK,sBAAsB,EAAuB,MAAM,SAAS,CAAA;AAgC1E,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,cAAc,CAAiC;gBAE3C,MAAM,EAAE,sBAAsB;IAiB1C,OAAO,CAAC,MAAM;IAkBd,OAAO,CAAC,YAAY;IAuGpB,OAAO,CAAC,YAAY;IAiDpB,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,YAAY;IA2DpB,wEAAwE;IACxE,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAW/B,4EAA4E;IAC5E,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAShD,gEAAgE;IAChE,cAAc,IAAI,IAAI;IAQtB,4BAA4B;IAC5B,QAAQ,IAAI,IAAI;IAShB,0BAA0B;IAC1B,MAAM,IAAI,IAAI;IASd,uCAAuC;IACvC,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,oBAAoB;CAe7B"}
|
package/dist/sidebar/index.d.ts
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* - Add data-sidebar-backdrop="{variant}" to the backdrop element
|
|
12
12
|
*/
|
|
13
13
|
export { SidebarComponent } from './component';
|
|
14
|
-
export type { SidebarComponentConfig, SidebarNavItem, SidebarSection, SidebarUser, SidebarFooterAction, } from './types';
|
|
14
|
+
export type { SidebarComponentConfig, SidebarBrandConfig, SidebarNavItem, SidebarSection, SidebarUser, SidebarFooterAction, } from './types';
|
|
15
15
|
export interface SidebarConfig {
|
|
16
16
|
storageKey?: string;
|
|
17
17
|
mobileBreakpoint?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sidebar/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,YAAY,EACV,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,WAAW,EACX,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;CACvB;AAUD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAE/D;AAkID;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,mBAAmB,EA6BrD,CAAA;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,MAAM,CAAC,EAAE,aAAa,EACtB,aAAa,GAAE,mBAAmB,EAAyB,GAC1D,IAAI,CAUN"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sidebar/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,WAAW,EACX,mBAAmB,GACpB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;CACvB;AAUD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAE/D;AAkID;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,mBAAmB,EA6BrD,CAAA;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,MAAM,CAAC,EAAE,aAAa,EACtB,aAAa,GAAE,mBAAmB,EAAyB,GAC1D,IAAI,CAUN"}
|
package/dist/sidebar/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/sidebar/index.ts"],"sourcesContent":["/**\n * Sidebar Module\n *\n * Unified sidebar toggle functionality for CounterMeasure applications.\n * Handles collapsible sidebar for desktop and mobile with localStorage persistence.\n *\n * Usage:\n * - Add data-sidebar=\"{variant}\" to your sidebar element (e.g., data-sidebar=\"admin\")\n * - Add data-sidebar-toggle to the toggle button\n * - Add data-sidebar-mobile-toggle to the mobile toggle button\n * - Add data-sidebar-backdrop=\"{variant}\" to the backdrop element\n */\n\n// Re-export programmatic sidebar component\nexport { SidebarComponent } from './component'\nexport type {\n SidebarComponentConfig,\n SidebarNavItem,\n SidebarSection,\n SidebarUser,\n SidebarFooterAction,\n} from './types'\n\nexport interface SidebarConfig {\n storageKey?: string\n mobileBreakpoint?: number\n collapsedClass?: string\n}\n\nexport interface LegacySidebarConfig {\n sidebar: string\n toggle: string\n mobileToggle: string\n backdrop: string\n collapsedClass: string\n}\n\nconst DEFAULT_CONFIG: Required<SidebarConfig> = {\n storageKey: 'sidebar-collapsed',\n mobileBreakpoint: 900,\n collapsedClass: 'sidebar--collapsed',\n}\n\nlet currentConfig: Required<SidebarConfig> = { ...DEFAULT_CONFIG }\n\n/**\n * Configure sidebar settings.\n */\nexport function configureSidebar(config: SidebarConfig): void {\n currentConfig = { ...DEFAULT_CONFIG, ...config }\n}\n\n/**\n * Check if we're on mobile viewport.\n */\nexport function isMobile(): boolean {\n return window.innerWidth <= currentConfig.mobileBreakpoint\n}\n\n/**\n * Get stored collapsed state for a sidebar.\n */\nexport function getStoredState(key: string): boolean {\n const stored = localStorage.getItem(`${currentConfig.storageKey}-${key}`)\n return stored === 'true'\n}\n\n/**\n * Save collapsed state for a sidebar.\n */\nexport function saveState(key: string, collapsed: boolean): void {\n localStorage.setItem(`${currentConfig.storageKey}-${key}`, String(collapsed))\n}\n\n/**\n * Close a sidebar (mobile).\n */\nfunction closeSidebar(sidebar: HTMLElement, backdrop: HTMLElement | null): void {\n sidebar.setAttribute('data-open', 'false')\n if (backdrop) {\n backdrop.setAttribute('data-visible', 'false')\n }\n}\n\n/**\n * Toggle sidebar open state (mobile).\n */\nfunction toggleSidebarOpen(sidebar: HTMLElement, backdrop: HTMLElement | null): void {\n const isOpen = sidebar.getAttribute('data-open') === 'true'\n sidebar.setAttribute('data-open', String(!isOpen))\n if (backdrop) {\n backdrop.setAttribute('data-visible', String(!isOpen))\n }\n}\n\ninterface SidebarHandlerParams {\n sidebar: HTMLElement\n toggle: HTMLButtonElement | null\n mobileToggles: HTMLButtonElement[]\n backdrop: HTMLElement | null\n collapsedClass: string\n key: string\n}\n\n/**\n * Attach all sidebar event handlers (shared between unified and legacy init).\n */\nfunction attachSidebarHandlers({\n sidebar,\n toggle,\n mobileToggles,\n backdrop,\n collapsedClass,\n key,\n}: SidebarHandlerParams): void {\n // Apply stored collapsed state on desktop\n if (!isMobile() && getStoredState(key)) {\n sidebar.classList.add(collapsedClass)\n }\n\n // Desktop toggle handler\n if (toggle) {\n toggle.addEventListener('click', () => {\n const isCollapsed = sidebar.classList.toggle(collapsedClass)\n saveState(key, isCollapsed)\n })\n }\n\n // Mobile toggle handler\n mobileToggles.forEach(mobileToggle => {\n mobileToggle.addEventListener('click', () => {\n toggleSidebarOpen(sidebar, backdrop)\n })\n })\n\n // Backdrop click handler\n if (backdrop) {\n backdrop.addEventListener('click', () => {\n closeSidebar(sidebar, backdrop)\n })\n }\n\n // Handle window resize\n window.addEventListener('resize', () => {\n if (isMobile()) {\n closeSidebar(sidebar, backdrop)\n }\n })\n\n // Close sidebar on escape key\n document.addEventListener('keydown', e => {\n if (e.key === 'Escape' && sidebar.getAttribute('data-open') === 'true') {\n closeSidebar(sidebar, backdrop)\n }\n })\n}\n\n/**\n * Initialize a single sidebar using the unified data-sidebar attribute.\n */\nfunction initUnifiedSidebar(sidebar: HTMLElement): void {\n const variant = sidebar.getAttribute('data-sidebar')\n if (variant === null || variant === '') {\n return\n }\n\n attachSidebarHandlers({\n sidebar,\n toggle: sidebar.querySelector<HTMLButtonElement>('[data-sidebar-toggle]'),\n mobileToggles: Array.from(\n document.querySelectorAll<HTMLButtonElement>('[data-sidebar-mobile-toggle]')\n ),\n backdrop: document.querySelector<HTMLElement>(`[data-sidebar-backdrop=\"${variant}\"]`),\n collapsedClass: currentConfig.collapsedClass,\n key: variant,\n })\n}\n\n/**\n * Initialize a legacy sidebar (backwards compatibility).\n */\nfunction initLegacySidebar(config: LegacySidebarConfig): void {\n const sidebar = document.querySelector<HTMLElement>(config.sidebar)\n if (!sidebar) {\n return\n }\n\n // Skip if this sidebar uses the new unified approach\n if (sidebar.hasAttribute('data-sidebar')) {\n return\n }\n\n attachSidebarHandlers({\n sidebar,\n toggle: document.querySelector<HTMLButtonElement>(config.toggle),\n mobileToggles: Array.from(document.querySelectorAll<HTMLButtonElement>(config.mobileToggle)),\n backdrop: document.querySelector<HTMLElement>(config.backdrop),\n collapsedClass: config.collapsedClass,\n key: config.sidebar.replace(/[^a-z]/g, ''),\n })\n}\n\n/**\n * Default legacy sidebar configurations for CounterMeasure apps.\n */\nexport const defaultLegacyConfigs: LegacySidebarConfig[] = [\n {\n sidebar: '.page__sidebar',\n toggle: '[data-page-sidebar-toggle]',\n mobileToggle: '[data-page-mobile-toggle]',\n backdrop: '.sidebar-backdrop',\n collapsedClass: 'page__sidebar--collapsed',\n },\n {\n sidebar: '.chat-sidebar',\n toggle: '[data-chat-sidebar-toggle]',\n mobileToggle: '.chat-header__menu-toggle',\n backdrop: '.chat-sidebar-backdrop',\n collapsedClass: 'chat-sidebar--collapsed',\n },\n {\n sidebar: '.files-sidebar',\n toggle: '[data-files-sidebar-toggle]',\n mobileToggle: '[data-files-mobile-toggle]',\n backdrop: '.files-sidebar-backdrop',\n collapsedClass: 'files-sidebar--collapsed',\n },\n {\n sidebar: '.storage-sidebar',\n toggle: '[data-storage-sidebar-toggle]',\n mobileToggle: '[data-storage-mobile-toggle]',\n backdrop: '.storage-sidebar-backdrop',\n collapsedClass: 'storage-sidebar--collapsed',\n },\n]\n\n/**\n * Initialize all sidebars (both new unified and legacy).\n */\nexport function initSidebar(\n config?: SidebarConfig,\n legacyConfigs: LegacySidebarConfig[] = defaultLegacyConfigs\n): void {\n if (config) {\n configureSidebar(config)\n }\n\n // Initialize new unified sidebars\n document.querySelectorAll<HTMLElement>('[data-sidebar]').forEach(initUnifiedSidebar)\n\n // Initialize legacy sidebars for backwards compatibility\n legacyConfigs.forEach(initLegacySidebar)\n}\n"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/sidebar/index.ts"],"sourcesContent":["/**\n * Sidebar Module\n *\n * Unified sidebar toggle functionality for CounterMeasure applications.\n * Handles collapsible sidebar for desktop and mobile with localStorage persistence.\n *\n * Usage:\n * - Add data-sidebar=\"{variant}\" to your sidebar element (e.g., data-sidebar=\"admin\")\n * - Add data-sidebar-toggle to the toggle button\n * - Add data-sidebar-mobile-toggle to the mobile toggle button\n * - Add data-sidebar-backdrop=\"{variant}\" to the backdrop element\n */\n\n// Re-export programmatic sidebar component\nexport { SidebarComponent } from './component'\nexport type {\n SidebarComponentConfig,\n SidebarBrandConfig,\n SidebarNavItem,\n SidebarSection,\n SidebarUser,\n SidebarFooterAction,\n} from './types'\n\nexport interface SidebarConfig {\n storageKey?: string\n mobileBreakpoint?: number\n collapsedClass?: string\n}\n\nexport interface LegacySidebarConfig {\n sidebar: string\n toggle: string\n mobileToggle: string\n backdrop: string\n collapsedClass: string\n}\n\nconst DEFAULT_CONFIG: Required<SidebarConfig> = {\n storageKey: 'sidebar-collapsed',\n mobileBreakpoint: 900,\n collapsedClass: 'sidebar--collapsed',\n}\n\nlet currentConfig: Required<SidebarConfig> = { ...DEFAULT_CONFIG }\n\n/**\n * Configure sidebar settings.\n */\nexport function configureSidebar(config: SidebarConfig): void {\n currentConfig = { ...DEFAULT_CONFIG, ...config }\n}\n\n/**\n * Check if we're on mobile viewport.\n */\nexport function isMobile(): boolean {\n return window.innerWidth <= currentConfig.mobileBreakpoint\n}\n\n/**\n * Get stored collapsed state for a sidebar.\n */\nexport function getStoredState(key: string): boolean {\n const stored = localStorage.getItem(`${currentConfig.storageKey}-${key}`)\n return stored === 'true'\n}\n\n/**\n * Save collapsed state for a sidebar.\n */\nexport function saveState(key: string, collapsed: boolean): void {\n localStorage.setItem(`${currentConfig.storageKey}-${key}`, String(collapsed))\n}\n\n/**\n * Close a sidebar (mobile).\n */\nfunction closeSidebar(sidebar: HTMLElement, backdrop: HTMLElement | null): void {\n sidebar.setAttribute('data-open', 'false')\n if (backdrop) {\n backdrop.setAttribute('data-visible', 'false')\n }\n}\n\n/**\n * Toggle sidebar open state (mobile).\n */\nfunction toggleSidebarOpen(sidebar: HTMLElement, backdrop: HTMLElement | null): void {\n const isOpen = sidebar.getAttribute('data-open') === 'true'\n sidebar.setAttribute('data-open', String(!isOpen))\n if (backdrop) {\n backdrop.setAttribute('data-visible', String(!isOpen))\n }\n}\n\ninterface SidebarHandlerParams {\n sidebar: HTMLElement\n toggle: HTMLButtonElement | null\n mobileToggles: HTMLButtonElement[]\n backdrop: HTMLElement | null\n collapsedClass: string\n key: string\n}\n\n/**\n * Attach all sidebar event handlers (shared between unified and legacy init).\n */\nfunction attachSidebarHandlers({\n sidebar,\n toggle,\n mobileToggles,\n backdrop,\n collapsedClass,\n key,\n}: SidebarHandlerParams): void {\n // Apply stored collapsed state on desktop\n if (!isMobile() && getStoredState(key)) {\n sidebar.classList.add(collapsedClass)\n }\n\n // Desktop toggle handler\n if (toggle) {\n toggle.addEventListener('click', () => {\n const isCollapsed = sidebar.classList.toggle(collapsedClass)\n saveState(key, isCollapsed)\n })\n }\n\n // Mobile toggle handler\n mobileToggles.forEach(mobileToggle => {\n mobileToggle.addEventListener('click', () => {\n toggleSidebarOpen(sidebar, backdrop)\n })\n })\n\n // Backdrop click handler\n if (backdrop) {\n backdrop.addEventListener('click', () => {\n closeSidebar(sidebar, backdrop)\n })\n }\n\n // Handle window resize\n window.addEventListener('resize', () => {\n if (isMobile()) {\n closeSidebar(sidebar, backdrop)\n }\n })\n\n // Close sidebar on escape key\n document.addEventListener('keydown', e => {\n if (e.key === 'Escape' && sidebar.getAttribute('data-open') === 'true') {\n closeSidebar(sidebar, backdrop)\n }\n })\n}\n\n/**\n * Initialize a single sidebar using the unified data-sidebar attribute.\n */\nfunction initUnifiedSidebar(sidebar: HTMLElement): void {\n const variant = sidebar.getAttribute('data-sidebar')\n if (variant === null || variant === '') {\n return\n }\n\n attachSidebarHandlers({\n sidebar,\n toggle: sidebar.querySelector<HTMLButtonElement>('[data-sidebar-toggle]'),\n mobileToggles: Array.from(\n document.querySelectorAll<HTMLButtonElement>('[data-sidebar-mobile-toggle]')\n ),\n backdrop: document.querySelector<HTMLElement>(`[data-sidebar-backdrop=\"${variant}\"]`),\n collapsedClass: currentConfig.collapsedClass,\n key: variant,\n })\n}\n\n/**\n * Initialize a legacy sidebar (backwards compatibility).\n */\nfunction initLegacySidebar(config: LegacySidebarConfig): void {\n const sidebar = document.querySelector<HTMLElement>(config.sidebar)\n if (!sidebar) {\n return\n }\n\n // Skip if this sidebar uses the new unified approach\n if (sidebar.hasAttribute('data-sidebar')) {\n return\n }\n\n attachSidebarHandlers({\n sidebar,\n toggle: document.querySelector<HTMLButtonElement>(config.toggle),\n mobileToggles: Array.from(document.querySelectorAll<HTMLButtonElement>(config.mobileToggle)),\n backdrop: document.querySelector<HTMLElement>(config.backdrop),\n collapsedClass: config.collapsedClass,\n key: config.sidebar.replace(/[^a-z]/g, ''),\n })\n}\n\n/**\n * Default legacy sidebar configurations for CounterMeasure apps.\n */\nexport const defaultLegacyConfigs: LegacySidebarConfig[] = [\n {\n sidebar: '.page__sidebar',\n toggle: '[data-page-sidebar-toggle]',\n mobileToggle: '[data-page-mobile-toggle]',\n backdrop: '.sidebar-backdrop',\n collapsedClass: 'page__sidebar--collapsed',\n },\n {\n sidebar: '.chat-sidebar',\n toggle: '[data-chat-sidebar-toggle]',\n mobileToggle: '.chat-header__menu-toggle',\n backdrop: '.chat-sidebar-backdrop',\n collapsedClass: 'chat-sidebar--collapsed',\n },\n {\n sidebar: '.files-sidebar',\n toggle: '[data-files-sidebar-toggle]',\n mobileToggle: '[data-files-mobile-toggle]',\n backdrop: '.files-sidebar-backdrop',\n collapsedClass: 'files-sidebar--collapsed',\n },\n {\n sidebar: '.storage-sidebar',\n toggle: '[data-storage-sidebar-toggle]',\n mobileToggle: '[data-storage-mobile-toggle]',\n backdrop: '.storage-sidebar-backdrop',\n collapsedClass: 'storage-sidebar--collapsed',\n },\n]\n\n/**\n * Initialize all sidebars (both new unified and legacy).\n */\nexport function initSidebar(\n config?: SidebarConfig,\n legacyConfigs: LegacySidebarConfig[] = defaultLegacyConfigs\n): void {\n if (config) {\n configureSidebar(config)\n }\n\n // Initialize new unified sidebars\n document.querySelectorAll<HTMLElement>('[data-sidebar]').forEach(initUnifiedSidebar)\n\n // Initialize legacy sidebars for backwards compatibility\n legacyConfigs.forEach(initLegacySidebar)\n}\n"],"mappings":";;AAsCA,IAAM,IAA0C;CAC9C,YAAY;CACZ,kBAAkB;CAClB,gBAAgB;CACjB,EAEG,IAAyC,EAAE,GAAG,GAAgB;AAKlE,SAAgB,EAAiB,GAA6B;AAC5D,KAAgB;EAAE,GAAG;EAAgB,GAAG;EAAQ;;AAMlD,SAAgB,IAAoB;AAClC,QAAO,OAAO,cAAc,EAAc;;AAM5C,SAAgB,EAAe,GAAsB;AAEnD,QADe,aAAa,QAAQ,GAAG,EAAc,WAAW,GAAG,IAAM,KACvD;;AAMpB,SAAgB,EAAU,GAAa,GAA0B;AAC/D,cAAa,QAAQ,GAAG,EAAc,WAAW,GAAG,KAAO,OAAO,EAAU,CAAC;;AAM/E,SAAS,EAAa,GAAsB,GAAoC;AAE9E,CADA,EAAQ,aAAa,aAAa,QAAQ,EACtC,KACF,EAAS,aAAa,gBAAgB,QAAQ;;AAOlD,SAAS,EAAkB,GAAsB,GAAoC;CACnF,IAAM,IAAS,EAAQ,aAAa,YAAY,KAAK;AAErD,CADA,EAAQ,aAAa,aAAa,OAAO,CAAC,EAAO,CAAC,EAC9C,KACF,EAAS,aAAa,gBAAgB,OAAO,CAAC,EAAO,CAAC;;AAgB1D,SAAS,EAAsB,EAC7B,YACA,WACA,kBACA,aACA,mBACA,UAC6B;AAoC7B,CAlCI,CAAC,GAAU,IAAI,EAAe,EAAI,IACpC,EAAQ,UAAU,IAAI,EAAe,EAInC,KACF,EAAO,iBAAiB,eAAe;AAErC,IAAU,GADU,EAAQ,UAAU,OAAO,EAAe,CACjC;GAC3B,EAIJ,EAAc,SAAQ,MAAgB;AACpC,IAAa,iBAAiB,eAAe;AAC3C,KAAkB,GAAS,EAAS;IACpC;GACF,EAGE,KACF,EAAS,iBAAiB,eAAe;AACvC,IAAa,GAAS,EAAS;GAC/B,EAIJ,OAAO,iBAAiB,gBAAgB;AACtC,EAAI,GAAU,IACZ,EAAa,GAAS,EAAS;GAEjC,EAGF,SAAS,iBAAiB,YAAW,MAAK;AACxC,EAAI,EAAE,QAAQ,YAAY,EAAQ,aAAa,YAAY,KAAK,UAC9D,EAAa,GAAS,EAAS;GAEjC;;AAMJ,SAAS,EAAmB,GAA4B;CACtD,IAAM,IAAU,EAAQ,aAAa,eAAe;AAChD,OAAY,QAAQ,MAAY,MAIpC,EAAsB;EACpB;EACA,QAAQ,EAAQ,cAAiC,wBAAwB;EACzE,eAAe,MAAM,KACnB,SAAS,iBAAoC,+BAA+B,CAC7E;EACD,UAAU,SAAS,cAA2B,2BAA2B,EAAQ,IAAI;EACrF,gBAAgB,EAAc;EAC9B,KAAK;EACN,CAAC;;AAMJ,SAAS,EAAkB,GAAmC;CAC5D,IAAM,IAAU,SAAS,cAA2B,EAAO,QAAQ;AAC9D,OAKD,EAAQ,aAAa,eAAe,IAIxC,EAAsB;EACpB;EACA,QAAQ,SAAS,cAAiC,EAAO,OAAO;EAChE,eAAe,MAAM,KAAK,SAAS,iBAAoC,EAAO,aAAa,CAAC;EAC5F,UAAU,SAAS,cAA2B,EAAO,SAAS;EAC9D,gBAAgB,EAAO;EACvB,KAAK,EAAO,QAAQ,QAAQ,WAAW,GAAG;EAC3C,CAAC;;AAMJ,IAAa,IAA8C;CACzD;EACE,SAAS;EACT,QAAQ;EACR,cAAc;EACd,UAAU;EACV,gBAAgB;EACjB;CACD;EACE,SAAS;EACT,QAAQ;EACR,cAAc;EACd,UAAU;EACV,gBAAgB;EACjB;CACD;EACE,SAAS;EACT,QAAQ;EACR,cAAc;EACd,UAAU;EACV,gBAAgB;EACjB;CACD;EACE,SAAS;EACT,QAAQ;EACR,cAAc;EACd,UAAU;EACV,gBAAgB;EACjB;CACF;AAKD,SAAgB,EACd,GACA,IAAuC,GACjC;AASN,CARI,KACF,EAAiB,EAAO,EAI1B,SAAS,iBAA8B,iBAAiB,CAAC,QAAQ,EAAmB,EAGpF,EAAc,QAAQ,EAAkB"}
|
package/dist/sidebar/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BrandSize } from '../components/brand';
|
|
1
2
|
import { IconSet } from '../icons/index';
|
|
2
3
|
export interface SidebarNavItem {
|
|
3
4
|
/** Stable identifier used for selection and badge updates. */
|
|
@@ -8,6 +9,11 @@ export interface SidebarNavItem {
|
|
|
8
9
|
icon?: string;
|
|
9
10
|
/** Numeric badge displayed at the trailing edge of the row. */
|
|
10
11
|
badge?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Visual tone for the badge.
|
|
14
|
+
* @default 'primary'
|
|
15
|
+
*/
|
|
16
|
+
badgeTone?: 'default' | 'primary' | 'amber' | 'cyan' | 'rose' | 'warning' | 'error';
|
|
11
17
|
/** Called when the item is activated. */
|
|
12
18
|
onClick?: () => void;
|
|
13
19
|
}
|
|
@@ -18,6 +24,20 @@ export interface SidebarSection {
|
|
|
18
24
|
label?: string;
|
|
19
25
|
/** Nav items rendered within this section. */
|
|
20
26
|
items: SidebarNavItem[];
|
|
27
|
+
/**
|
|
28
|
+
* Render the section as a collapsible accordion group with a clickable
|
|
29
|
+
* header instead of a flat label. When set, `label` is rendered as the
|
|
30
|
+
* toggle and items collapse/expand on click.
|
|
31
|
+
* @default false
|
|
32
|
+
*/
|
|
33
|
+
collapsible?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Initial expanded state when `collapsible` is true.
|
|
36
|
+
* @default true
|
|
37
|
+
*/
|
|
38
|
+
defaultExpanded?: boolean;
|
|
39
|
+
/** Optional icon for the collapsible group header. */
|
|
40
|
+
icon?: string;
|
|
21
41
|
}
|
|
22
42
|
export interface SidebarUser {
|
|
23
43
|
/** Display name shown in the footer. */
|
|
@@ -38,6 +58,26 @@ export interface SidebarFooterAction {
|
|
|
38
58
|
/** Called when the action is activated. */
|
|
39
59
|
onClick?: () => void;
|
|
40
60
|
}
|
|
61
|
+
export interface SidebarBrandConfig {
|
|
62
|
+
/** Accessible brand label. */
|
|
63
|
+
label?: string;
|
|
64
|
+
/** Brand mark size. */
|
|
65
|
+
markSize?: BrandSize | number;
|
|
66
|
+
/**
|
|
67
|
+
* Show the COUNTERMEASURE wordmark next to the diamond.
|
|
68
|
+
* @default true
|
|
69
|
+
*/
|
|
70
|
+
showWordmark?: boolean;
|
|
71
|
+
/** Optional link target for the brand surface. */
|
|
72
|
+
href?: string;
|
|
73
|
+
/** Called when the brand surface is activated. */
|
|
74
|
+
onClick?: () => void;
|
|
75
|
+
/**
|
|
76
|
+
* Render the brand as decorative.
|
|
77
|
+
* @default false
|
|
78
|
+
*/
|
|
79
|
+
decorative?: boolean;
|
|
80
|
+
}
|
|
41
81
|
export interface SidebarComponentConfig {
|
|
42
82
|
/** Container element (or selector) the sidebar is mounted into. */
|
|
43
83
|
container: HTMLElement | string;
|
|
@@ -45,6 +85,19 @@ export interface SidebarComponentConfig {
|
|
|
45
85
|
variant?: string;
|
|
46
86
|
/** Sections rendered top-to-bottom. */
|
|
47
87
|
sections: SidebarSection[];
|
|
88
|
+
/** Optional brand header rendered above the navigation. */
|
|
89
|
+
brand?: SidebarBrandConfig;
|
|
90
|
+
/**
|
|
91
|
+
* Render the shared edge-docked collapse control.
|
|
92
|
+
* @default false
|
|
93
|
+
*/
|
|
94
|
+
collapsible?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Keep the collapse control visible instead of hover/focus-only.
|
|
97
|
+
* Useful for docs and constrained previews.
|
|
98
|
+
* @default false
|
|
99
|
+
*/
|
|
100
|
+
collapseButtonVisible?: boolean;
|
|
48
101
|
/** Optional user surface rendered in the footer. */
|
|
49
102
|
user?: SidebarUser;
|
|
50
103
|
/** Footer action buttons rendered next to the user surface. */
|
|
@@ -54,6 +107,12 @@ export interface SidebarComponentConfig {
|
|
|
54
107
|
* @default 'lucide'
|
|
55
108
|
*/
|
|
56
109
|
iconSet?: IconSet;
|
|
110
|
+
/**
|
|
111
|
+
* Initial collapsed state. When `collapsible` is true the collapse button
|
|
112
|
+
* starts pointing the matching direction.
|
|
113
|
+
* @default false
|
|
114
|
+
*/
|
|
115
|
+
collapsed?: boolean;
|
|
57
116
|
/** Called when a nav item is activated. */
|
|
58
117
|
onNavigate?: (item: SidebarNavItem) => void;
|
|
59
118
|
/** Called when the sidebar's collapsed state changes. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sidebar/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAA;IACV,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8CAA8C;IAC9C,KAAK,EAAE,cAAc,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sidebar/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAA;IACV,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;IACnF,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8CAA8C;IAC9C,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAA;IACV,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uBAAuB;IACvB,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC7B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,mEAAmE;IACnE,SAAS,EAAE,WAAW,GAAG,MAAM,CAAA;IAC/B,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uCAAuC;IACvC,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,kBAAkB,CAAA;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,oDAAoD;IACpD,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACrC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAC3C,yDAAyD;IACzD,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC1C"}
|