@countermeasure-platform/web-components 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +92 -0
- package/README.md +185 -0
- package/dist/_basePickBy-BNGzgD3S.js +168 -0
- package/dist/_basePickBy-BNGzgD3S.js.map +1 -0
- package/dist/_baseUniq-CSCAMor9.js +684 -0
- package/dist/_baseUniq-CSCAMor9.js.map +1 -0
- package/dist/a11y-B5pN4M_a.js +173 -0
- package/dist/a11y-B5pN4M_a.js.map +1 -0
- package/dist/alert-dialog-x70JmbHN.js +202 -0
- package/dist/alert-dialog-x70JmbHN.js.map +1 -0
- package/dist/app-switcher/index.d.ts +38 -0
- package/dist/app-switcher/index.d.ts.map +1 -0
- package/dist/app-switcher/index.js +90 -0
- package/dist/app-switcher/index.js.map +1 -0
- package/dist/appearance/index.d.ts +34 -0
- package/dist/appearance/index.d.ts.map +1 -0
- package/dist/appearance/index.js +110 -0
- package/dist/appearance/index.js.map +1 -0
- package/dist/arc-Dd7Q8ESg.js +82 -0
- package/dist/arc-Dd7Q8ESg.js.map +1 -0
- package/dist/architecture-PBZL5I3N-ZJhv7ma8.js +3 -0
- package/dist/architectureDiagram-2XIMDMQ5-Du7QH2cn.js +4048 -0
- package/dist/architectureDiagram-2XIMDMQ5-Du7QH2cn.js.map +1 -0
- package/dist/array-BjkKHsZp.js +8 -0
- package/dist/array-BjkKHsZp.js.map +1 -0
- package/dist/arrow-up-gNaqffAh.js +35 -0
- package/dist/arrow-up-gNaqffAh.js.map +1 -0
- package/dist/auth/index.d.ts +103 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +113 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/avatar-Chu9WlV5.js +102 -0
- package/dist/avatar-Chu9WlV5.js.map +1 -0
- package/dist/badge-DIbZWeHZ.js +69 -0
- package/dist/badge-DIbZWeHZ.js.map +1 -0
- package/dist/base-CBgB0j_Y.js +2096 -0
- package/dist/base-CBgB0j_Y.js.map +1 -0
- package/dist/blockDiagram-WCTKOSBZ-JlYA7IvY.js +3028 -0
- package/dist/blockDiagram-WCTKOSBZ-JlYA7IvY.js.map +1 -0
- package/dist/button-DKuKl4vs.js +69 -0
- package/dist/button-DKuKl4vs.js.map +1 -0
- package/dist/c4Diagram-IC4MRINW-BhRMN0uU.js +2967 -0
- package/dist/c4Diagram-IC4MRINW-BhRMN0uU.js.map +1 -0
- package/dist/carousel-Bh3y14sN.js +139 -0
- package/dist/carousel-Bh3y14sN.js.map +1 -0
- package/dist/channel-mQoH3HVA.js +7 -0
- package/dist/channel-mQoH3HVA.js.map +1 -0
- package/dist/charts/annotations.d.ts +15 -0
- package/dist/charts/annotations.d.ts.map +1 -0
- package/dist/charts/annotations.js +24 -0
- package/dist/charts/annotations.js.map +1 -0
- package/dist/charts/area/index.d.ts +14 -0
- package/dist/charts/area/index.d.ts.map +1 -0
- package/dist/charts/area/index.js +104 -0
- package/dist/charts/area/index.js.map +1 -0
- package/dist/charts/area/types.d.ts +8 -0
- package/dist/charts/area/types.d.ts.map +1 -0
- package/dist/charts/axis.d.ts +8 -0
- package/dist/charts/axis.d.ts.map +1 -0
- package/dist/charts/axis.js +36 -0
- package/dist/charts/axis.js.map +1 -0
- package/dist/charts/bar/index.d.ts +19 -0
- package/dist/charts/bar/index.d.ts.map +1 -0
- package/dist/charts/bar/index.js +145 -0
- package/dist/charts/bar/index.js.map +1 -0
- package/dist/charts/bar/types.d.ts +8 -0
- package/dist/charts/bar/types.d.ts.map +1 -0
- package/dist/charts/base.d.ts +90 -0
- package/dist/charts/base.d.ts.map +1 -0
- package/dist/charts/base.js +203 -0
- package/dist/charts/base.js.map +1 -0
- package/dist/charts/candlestick/index.d.ts +25 -0
- package/dist/charts/candlestick/index.d.ts.map +1 -0
- package/dist/charts/candlestick/index.js +141 -0
- package/dist/charts/candlestick/index.js.map +1 -0
- package/dist/charts/candlestick/types.d.ts +19 -0
- package/dist/charts/candlestick/types.d.ts.map +1 -0
- package/dist/charts/funnel/index.d.ts +29 -0
- package/dist/charts/funnel/index.d.ts.map +1 -0
- package/dist/charts/funnel/index.js +126 -0
- package/dist/charts/funnel/index.js.map +1 -0
- package/dist/charts/funnel/types.d.ts +16 -0
- package/dist/charts/funnel/types.d.ts.map +1 -0
- package/dist/charts/gauge/index.d.ts +26 -0
- package/dist/charts/gauge/index.d.ts.map +1 -0
- package/dist/charts/gauge/index.js +70 -0
- package/dist/charts/gauge/index.js.map +1 -0
- package/dist/charts/gauge/types.d.ts +18 -0
- package/dist/charts/gauge/types.d.ts.map +1 -0
- package/dist/charts/heatmap/index.d.ts +29 -0
- package/dist/charts/heatmap/index.d.ts.map +1 -0
- package/dist/charts/heatmap/index.js +113 -0
- package/dist/charts/heatmap/index.js.map +1 -0
- package/dist/charts/heatmap/types.d.ts +17 -0
- package/dist/charts/heatmap/types.d.ts.map +1 -0
- package/dist/charts/index.d.ts +46 -0
- package/dist/charts/index.d.ts.map +1 -0
- package/dist/charts/index.js +24 -0
- package/dist/charts/interactive.d.ts +15 -0
- package/dist/charts/interactive.d.ts.map +1 -0
- package/dist/charts/legend.d.ts +16 -0
- package/dist/charts/legend.d.ts.map +1 -0
- package/dist/charts/legend.js +43 -0
- package/dist/charts/legend.js.map +1 -0
- package/dist/charts/line/index.d.ts +14 -0
- package/dist/charts/line/index.d.ts.map +1 -0
- package/dist/charts/line/index.js +85 -0
- package/dist/charts/line/index.js.map +1 -0
- package/dist/charts/line/types.d.ts +8 -0
- package/dist/charts/line/types.d.ts.map +1 -0
- package/dist/charts/pie/index.d.ts +24 -0
- package/dist/charts/pie/index.d.ts.map +1 -0
- package/dist/charts/pie/index.js +123 -0
- package/dist/charts/pie/index.js.map +1 -0
- package/dist/charts/pie/types.d.ts +15 -0
- package/dist/charts/pie/types.d.ts.map +1 -0
- package/dist/charts/radar/index.d.ts +27 -0
- package/dist/charts/radar/index.d.ts.map +1 -0
- package/dist/charts/radar/index.js +151 -0
- package/dist/charts/radar/index.js.map +1 -0
- package/dist/charts/radar/types.d.ts +16 -0
- package/dist/charts/radar/types.d.ts.map +1 -0
- package/dist/charts/sankey/index.d.ts +29 -0
- package/dist/charts/sankey/index.d.ts.map +1 -0
- package/dist/charts/sankey/index.js +192 -0
- package/dist/charts/sankey/index.js.map +1 -0
- package/dist/charts/sankey/types.d.ts +21 -0
- package/dist/charts/sankey/types.d.ts.map +1 -0
- package/dist/charts/scatter/index.d.ts +19 -0
- package/dist/charts/scatter/index.d.ts.map +1 -0
- package/dist/charts/scatter/index.js +106 -0
- package/dist/charts/scatter/index.js.map +1 -0
- package/dist/charts/scatter/types.d.ts +6 -0
- package/dist/charts/scatter/types.d.ts.map +1 -0
- package/dist/charts/series.d.ts +11 -0
- package/dist/charts/series.d.ts.map +1 -0
- package/dist/charts/sparkline/index.d.ts +20 -0
- package/dist/charts/sparkline/index.d.ts.map +1 -0
- package/dist/charts/sparkline/index.js +99 -0
- package/dist/charts/sparkline/index.js.map +1 -0
- package/dist/charts/sparkline/types.d.ts +11 -0
- package/dist/charts/sparkline/types.d.ts.map +1 -0
- package/dist/charts/tooltip.d.ts +28 -0
- package/dist/charts/tooltip.d.ts.map +1 -0
- package/dist/charts/tooltip.js +41 -0
- package/dist/charts/tooltip.js.map +1 -0
- package/dist/charts/treemap/index.d.ts +26 -0
- package/dist/charts/treemap/index.d.ts.map +1 -0
- package/dist/charts/treemap/index.js +132 -0
- package/dist/charts/treemap/index.js.map +1 -0
- package/dist/charts/treemap/types.d.ts +15 -0
- package/dist/charts/treemap/types.d.ts.map +1 -0
- package/dist/charts/types.d.ts +71 -0
- package/dist/charts/types.d.ts.map +1 -0
- package/dist/charts/utils.d.ts +75 -0
- package/dist/charts/utils.d.ts.map +1 -0
- package/dist/charts/utils.js +113 -0
- package/dist/charts/utils.js.map +1 -0
- package/dist/charts/waterfall/index.d.ts +19 -0
- package/dist/charts/waterfall/index.d.ts.map +1 -0
- package/dist/charts/waterfall/index.js +138 -0
- package/dist/charts/waterfall/index.js.map +1 -0
- package/dist/charts/waterfall/types.d.ts +19 -0
- package/dist/charts/waterfall/types.d.ts.map +1 -0
- package/dist/charts/zoom.d.ts +32 -0
- package/dist/charts/zoom.d.ts.map +1 -0
- package/dist/charts/zoom.js +62 -0
- package/dist/charts/zoom.js.map +1 -0
- package/dist/check-D2xnnLBE.js +9 -0
- package/dist/check-D2xnnLBE.js.map +1 -0
- package/dist/chevron-down-CsLpP_71.js +9 -0
- package/dist/chevron-down-CsLpP_71.js.map +1 -0
- package/dist/chevron-right-Cz5qRdmA.js +9 -0
- package/dist/chevron-right-Cz5qRdmA.js.map +1 -0
- package/dist/chevron-up-BhaePjuF.js +9 -0
- package/dist/chevron-up-BhaePjuF.js.map +1 -0
- package/dist/chunk-4BX2VUAB-hGnoekTd.js +10 -0
- package/dist/chunk-4BX2VUAB-hGnoekTd.js.map +1 -0
- package/dist/chunk-55IACEB6-BJN5TXvX.js +11 -0
- package/dist/chunk-55IACEB6-BJN5TXvX.js.map +1 -0
- package/dist/chunk-7E7YKBS2-D5sZlDQ3.js +25 -0
- package/dist/chunk-7E7YKBS2-D5sZlDQ3.js.map +1 -0
- package/dist/chunk-7R4GIKGN-9QecSWiR.js +2054 -0
- package/dist/chunk-7R4GIKGN-9QecSWiR.js.map +1 -0
- package/dist/chunk-C72U2L5F--DXr9EKz.js +25 -0
- package/dist/chunk-C72U2L5F--DXr9EKz.js.map +1 -0
- package/dist/chunk-EGIJ26TM-B0D9vEQz.js +25 -0
- package/dist/chunk-EGIJ26TM-B0D9vEQz.js.map +1 -0
- package/dist/chunk-FMBD7UC4-Ccq-i6vu.js +7 -0
- package/dist/chunk-FMBD7UC4-Ccq-i6vu.js.map +1 -0
- package/dist/chunk-GEFDOKGD-DpHiMpV6.js +1124 -0
- package/dist/chunk-GEFDOKGD-DpHiMpV6.js.map +1 -0
- package/dist/chunk-GLR3WWYH-HerLgrS-.js +43 -0
- package/dist/chunk-GLR3WWYH-HerLgrS-.js.map +1 -0
- package/dist/chunk-HHEYEP7N-Cjt1V-hl.js +12 -0
- package/dist/chunk-HHEYEP7N-Cjt1V-hl.js.map +1 -0
- package/dist/chunk-JSJVCQXG-DTdWcs9o.js +63 -0
- package/dist/chunk-JSJVCQXG-DTdWcs9o.js.map +1 -0
- package/dist/chunk-KX2RTZJC-DUcdo_W8.js +27 -0
- package/dist/chunk-KX2RTZJC-DUcdo_W8.js.map +1 -0
- package/dist/chunk-KYZI473N-DyL0ymcr.js +3437 -0
- package/dist/chunk-KYZI473N-DyL0ymcr.js.map +1 -0
- package/dist/chunk-L3YUKLVL-Cwsx-xzL.js +25 -0
- package/dist/chunk-L3YUKLVL-Cwsx-xzL.js.map +1 -0
- package/dist/chunk-MX3YWQON-BrC3_psH.js +82 -0
- package/dist/chunk-MX3YWQON-BrC3_psH.js.map +1 -0
- package/dist/chunk-NBPlniwU.js +23 -0
- package/dist/chunk-NQ4KR5QH-kaL7nywj.js +2004 -0
- package/dist/chunk-NQ4KR5QH-kaL7nywj.js.map +1 -0
- package/dist/chunk-O4XLMI2P-DPXU-owT.js +514 -0
- package/dist/chunk-O4XLMI2P-DPXU-owT.js.map +1 -0
- package/dist/chunk-OZEHJAEY-Ds1P6-z-.js +66 -0
- package/dist/chunk-OZEHJAEY-Ds1P6-z-.js.map +1 -0
- package/dist/chunk-PQ6SQG4A-DEjy9Dhi.js +69 -0
- package/dist/chunk-PQ6SQG4A-DEjy9Dhi.js.map +1 -0
- package/dist/chunk-PU5JKC2W-CfzbN3Mu.js +1888 -0
- package/dist/chunk-PU5JKC2W-CfzbN3Mu.js.map +1 -0
- package/dist/chunk-QZHKN3VN-DYJHpXRp.js +17 -0
- package/dist/chunk-QZHKN3VN-DYJHpXRp.js.map +1 -0
- package/dist/chunk-R5LLSJPH-BQuurwR-.js +37 -0
- package/dist/chunk-R5LLSJPH-BQuurwR-.js.map +1 -0
- package/dist/chunk-WL4C6EOR-DCGop7dE.js +3198 -0
- package/dist/chunk-WL4C6EOR-DCGop7dE.js.map +1 -0
- package/dist/chunk-XIRO2GV7-CS2_2Fdn.js +32 -0
- package/dist/chunk-XIRO2GV7-CS2_2Fdn.js.map +1 -0
- package/dist/chunk-XPW4576I-CfQenFiw.js +1148 -0
- package/dist/chunk-XPW4576I-CfQenFiw.js.map +1 -0
- package/dist/chunk-XZSTWKYB-DxHspq6G.js +15799 -0
- package/dist/chunk-XZSTWKYB-DxHspq6G.js.map +1 -0
- package/dist/chunk-YBOYWFTD-Dkc3kKkT.js +34 -0
- package/dist/chunk-YBOYWFTD-Dkc3kKkT.js.map +1 -0
- package/dist/classDiagram-VBA2DB6C-Ba1kbLE7.js +31 -0
- package/dist/classDiagram-VBA2DB6C-Ba1kbLE7.js.map +1 -0
- package/dist/classDiagram-v2-RAHNMMFH-BdFCvKXE.js +31 -0
- package/dist/classDiagram-v2-RAHNMMFH-BdFCvKXE.js.map +1 -0
- package/dist/clone-CzASr4DI.js +10 -0
- package/dist/clone-CzASr4DI.js.map +1 -0
- package/dist/components/context-menu/index.d.ts +31 -0
- package/dist/components/context-menu/index.d.ts.map +1 -0
- package/dist/components/context-menu/index.js +66 -0
- package/dist/components/context-menu/index.js.map +1 -0
- package/dist/components/copy-button/index.d.ts +27 -0
- package/dist/components/copy-button/index.d.ts.map +1 -0
- package/dist/components/copy-button/index.js +43 -0
- package/dist/components/copy-button/index.js.map +1 -0
- package/dist/components/data-table/export.d.ts +8 -0
- package/dist/components/data-table/export.d.ts.map +1 -0
- package/dist/components/data-table/index.d.ts +55 -0
- package/dist/components/data-table/index.d.ts.map +1 -0
- package/dist/components/data-table/index.js +2 -0
- package/dist/components/data-table/renderers.d.ts +9 -0
- package/dist/components/data-table/renderers.d.ts.map +1 -0
- package/dist/components/data-table/types.d.ts +36 -0
- package/dist/components/data-table/types.d.ts.map +1 -0
- package/dist/components/detail-header/index.d.ts +45 -0
- package/dist/components/detail-header/index.d.ts.map +1 -0
- package/dist/components/detail-header/index.js +88 -0
- package/dist/components/detail-header/index.js.map +1 -0
- package/dist/components/index.d.ts +28 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +15 -0
- package/dist/components/log-toolbar/index.d.ts +50 -0
- package/dist/components/log-toolbar/index.d.ts.map +1 -0
- package/dist/components/log-toolbar/index.js +74 -0
- package/dist/components/log-toolbar/index.js.map +1 -0
- package/dist/components/modal/index.d.ts +27 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/index.js +103 -0
- package/dist/components/modal/index.js.map +1 -0
- package/dist/components/modal/types.d.ts +17 -0
- package/dist/components/modal/types.d.ts.map +1 -0
- package/dist/components/pagination/index.d.ts +29 -0
- package/dist/components/pagination/index.d.ts.map +1 -0
- package/dist/components/pagination/index.js +45 -0
- package/dist/components/pagination/index.js.map +1 -0
- package/dist/components/search/command-palette.d.ts +24 -0
- package/dist/components/search/command-palette.d.ts.map +1 -0
- package/dist/components/search/command-palette.js +96 -0
- package/dist/components/search/command-palette.js.map +1 -0
- package/dist/components/search/index.d.ts +37 -0
- package/dist/components/search/index.d.ts.map +1 -0
- package/dist/components/search/index.js +175 -0
- package/dist/components/search/index.js.map +1 -0
- package/dist/components/search/types.d.ts +34 -0
- package/dist/components/search/types.d.ts.map +1 -0
- package/dist/components/split-pane/index.d.ts +37 -0
- package/dist/components/split-pane/index.d.ts.map +1 -0
- package/dist/components/split-pane/index.js +129 -0
- package/dist/components/split-pane/index.js.map +1 -0
- package/dist/components/split-pane/types.d.ts +19 -0
- package/dist/components/split-pane/types.d.ts.map +1 -0
- package/dist/components/status-bar/index.d.ts +29 -0
- package/dist/components/status-bar/index.d.ts.map +1 -0
- package/dist/components/status-bar/index.js +41 -0
- package/dist/components/status-bar/index.js.map +1 -0
- package/dist/components/tabs/index.d.ts +39 -0
- package/dist/components/tabs/index.d.ts.map +1 -0
- package/dist/components/tabs/index.js +130 -0
- package/dist/components/tabs/index.js.map +1 -0
- package/dist/components/tabs/types.d.ts +19 -0
- package/dist/components/tabs/types.d.ts.map +1 -0
- package/dist/components/toast/index.d.ts +43 -0
- package/dist/components/toast/index.d.ts.map +1 -0
- package/dist/components/toast/index.js +161 -0
- package/dist/components/toast/index.js.map +1 -0
- package/dist/components/toast/types.d.ts +17 -0
- package/dist/components/toast/types.d.ts.map +1 -0
- package/dist/components/tree-view/index.d.ts +70 -0
- package/dist/components/tree-view/index.d.ts.map +1 -0
- package/dist/components/tree-view/index.js +2 -0
- package/dist/components/tree-view/lazy.d.ts +7 -0
- package/dist/components/tree-view/lazy.d.ts.map +1 -0
- package/dist/components/tree-view/types.d.ts +24 -0
- package/dist/components/tree-view/types.d.ts.map +1 -0
- package/dist/consent/index.d.ts +86 -0
- package/dist/consent/index.d.ts.map +1 -0
- package/dist/consent/index.js +116 -0
- package/dist/consent/index.js.map +1 -0
- package/dist/copy-DLbL2paJ.js +17 -0
- package/dist/copy-DLbL2paJ.js.map +1 -0
- package/dist/cose-bilkent-S5V4N54A-Brn9HMfH.js +2253 -0
- package/dist/cose-bilkent-S5V4N54A-Brn9HMfH.js.map +1 -0
- package/dist/createLucideIcon-BPb01goH.js +44 -0
- package/dist/createLucideIcon-BPb01goH.js.map +1 -0
- package/dist/crypto/encoding-helpers.d.ts +11 -0
- package/dist/crypto/encoding-helpers.d.ts.map +1 -0
- package/dist/crypto/encoding.d.ts +59 -0
- package/dist/crypto/encoding.d.ts.map +1 -0
- package/dist/crypto/hybrid.d.ts +65 -0
- package/dist/crypto/hybrid.d.ts.map +1 -0
- package/dist/crypto/index.d.ts +103 -0
- package/dist/crypto/index.d.ts.map +1 -0
- package/dist/crypto/index.js +438 -0
- package/dist/crypto/index.js.map +1 -0
- package/dist/crypto/keys.d.ts +50 -0
- package/dist/crypto/keys.d.ts.map +1 -0
- package/dist/crypto/symmetric.d.ts +68 -0
- package/dist/crypto/symmetric.d.ts.map +1 -0
- package/dist/crypto/types.d.ts +88 -0
- package/dist/crypto/types.d.ts.map +1 -0
- package/dist/cytoscape.esm-B-Qy-QZk.js +18102 -0
- package/dist/cytoscape.esm-B-Qy-QZk.js.map +1 -0
- package/dist/dagre-AUN8SXyC.js +1485 -0
- package/dist/dagre-AUN8SXyC.js.map +1 -0
- package/dist/dagre-KLK3FWXG-B5Anf0Pr.js +296 -0
- package/dist/dagre-KLK3FWXG-B5Anf0Pr.js.map +1 -0
- package/dist/data-table-TZ_fmzbD.js +325 -0
- package/dist/data-table-TZ_fmzbD.js.map +1 -0
- package/dist/date-Dup6T6tm.js +61 -0
- package/dist/date-Dup6T6tm.js.map +1 -0
- package/dist/defaultLocale-B55TNBEB.js +203 -0
- package/dist/defaultLocale-B55TNBEB.js.map +1 -0
- package/dist/diagram-E7M64L7V-CbV5nfqR.js +530 -0
- package/dist/diagram-E7M64L7V-CbV5nfqR.js.map +1 -0
- package/dist/diagram-IFDJBPK2-CcXyWvqm.js +215 -0
- package/dist/diagram-IFDJBPK2-CcXyWvqm.js.map +1 -0
- package/dist/diagram-P4PSJMXO-pxkEt2hf.js +135 -0
- package/dist/diagram-P4PSJMXO-pxkEt2hf.js.map +1 -0
- package/dist/display/alert/index.d.ts +20 -0
- package/dist/display/alert/index.d.ts.map +1 -0
- package/dist/display/alert/index.js +56 -0
- package/dist/display/alert/index.js.map +1 -0
- package/dist/display/alert/types.d.ts +16 -0
- package/dist/display/alert/types.d.ts.map +1 -0
- package/dist/display/aspect-ratio/index.d.ts +21 -0
- package/dist/display/aspect-ratio/index.d.ts.map +1 -0
- package/dist/display/aspect-ratio/index.js +23 -0
- package/dist/display/aspect-ratio/index.js.map +1 -0
- package/dist/display/avatar/avatar-group.d.ts +19 -0
- package/dist/display/avatar/avatar-group.d.ts.map +1 -0
- package/dist/display/avatar/index.d.ts +30 -0
- package/dist/display/avatar/index.d.ts.map +1 -0
- package/dist/display/avatar/index.js +2 -0
- package/dist/display/avatar/types.d.ts +26 -0
- package/dist/display/avatar/types.d.ts.map +1 -0
- package/dist/display/badge/index.d.ts +22 -0
- package/dist/display/badge/index.d.ts.map +1 -0
- package/dist/display/badge/index.js +2 -0
- package/dist/display/badge/presets.d.ts +7 -0
- package/dist/display/badge/presets.d.ts.map +1 -0
- package/dist/display/badge/types.d.ts +19 -0
- package/dist/display/badge/types.d.ts.map +1 -0
- package/dist/display/card/index.d.ts +24 -0
- package/dist/display/card/index.d.ts.map +1 -0
- package/dist/display/card/index.js +48 -0
- package/dist/display/card/index.js.map +1 -0
- package/dist/display/card/types.d.ts +16 -0
- package/dist/display/card/types.d.ts.map +1 -0
- package/dist/display/code-block/index.d.ts +23 -0
- package/dist/display/code-block/index.d.ts.map +1 -0
- package/dist/display/code-block/index.js +101 -0
- package/dist/display/code-block/index.js.map +1 -0
- package/dist/display/code-block/types.d.ts +14 -0
- package/dist/display/code-block/types.d.ts.map +1 -0
- package/dist/display/empty-state/index.d.ts +17 -0
- package/dist/display/empty-state/index.d.ts.map +1 -0
- package/dist/display/empty-state/index.js +42 -0
- package/dist/display/empty-state/index.js.map +1 -0
- package/dist/display/empty-state/types.d.ts +16 -0
- package/dist/display/empty-state/types.d.ts.map +1 -0
- package/dist/display/hover-card/index.d.ts +46 -0
- package/dist/display/hover-card/index.d.ts.map +1 -0
- package/dist/display/hover-card/index.js +112 -0
- package/dist/display/hover-card/index.js.map +1 -0
- package/dist/display/hover-card/types.d.ts +14 -0
- package/dist/display/hover-card/types.d.ts.map +1 -0
- package/dist/display/index.d.ts +41 -0
- package/dist/display/index.d.ts.map +1 -0
- package/dist/display/index.js +18 -0
- package/dist/display/markdown-viewer/index.d.ts +25 -0
- package/dist/display/markdown-viewer/index.d.ts.map +1 -0
- package/dist/display/markdown-viewer/index.js +2 -0
- package/dist/display/markdown-viewer/parser.d.ts +60 -0
- package/dist/display/markdown-viewer/parser.d.ts.map +1 -0
- package/dist/display/markdown-viewer/types.d.ts +12 -0
- package/dist/display/markdown-viewer/types.d.ts.map +1 -0
- package/dist/display/notification-center/index.d.ts +43 -0
- package/dist/display/notification-center/index.d.ts.map +1 -0
- package/dist/display/notification-center/index.js +145 -0
- package/dist/display/notification-center/index.js.map +1 -0
- package/dist/display/notification-center/types.d.ts +30 -0
- package/dist/display/notification-center/types.d.ts.map +1 -0
- package/dist/display/popover/index.d.ts +43 -0
- package/dist/display/popover/index.d.ts.map +1 -0
- package/dist/display/popover/index.js +113 -0
- package/dist/display/popover/index.js.map +1 -0
- package/dist/display/popover/types.d.ts +16 -0
- package/dist/display/popover/types.d.ts.map +1 -0
- package/dist/display/progress/index.d.ts +28 -0
- package/dist/display/progress/index.d.ts.map +1 -0
- package/dist/display/progress/index.js +81 -0
- package/dist/display/progress/index.js.map +1 -0
- package/dist/display/progress/types.d.ts +18 -0
- package/dist/display/progress/types.d.ts.map +1 -0
- package/dist/display/severity-indicator/index.d.ts +19 -0
- package/dist/display/severity-indicator/index.d.ts.map +1 -0
- package/dist/display/severity-indicator/index.js +36 -0
- package/dist/display/severity-indicator/index.js.map +1 -0
- package/dist/display/severity-indicator/types.d.ts +14 -0
- package/dist/display/severity-indicator/types.d.ts.map +1 -0
- package/dist/display/stat-card/index.d.ts +23 -0
- package/dist/display/stat-card/index.d.ts.map +1 -0
- package/dist/display/stat-card/index.js +54 -0
- package/dist/display/stat-card/index.js.map +1 -0
- package/dist/display/stat-card/types.d.ts +19 -0
- package/dist/display/stat-card/types.d.ts.map +1 -0
- package/dist/display/tooltip/index.d.ts +37 -0
- package/dist/display/tooltip/index.d.ts.map +1 -0
- package/dist/display/tooltip/index.js +98 -0
- package/dist/display/tooltip/index.js.map +1 -0
- package/dist/display/tooltip/types.d.ts +13 -0
- package/dist/display/tooltip/types.d.ts.map +1 -0
- package/dist/display/typography/index.d.ts +24 -0
- package/dist/display/typography/index.d.ts.map +1 -0
- package/dist/display/typography/index.js +53 -0
- package/dist/display/typography/index.js.map +1 -0
- package/dist/display/typography/types.d.ts +19 -0
- package/dist/display/typography/types.d.ts.map +1 -0
- package/dist/display/uptime-bar/index.d.ts +18 -0
- package/dist/display/uptime-bar/index.d.ts.map +1 -0
- package/dist/display/uptime-bar/index.js +44 -0
- package/dist/display/uptime-bar/index.js.map +1 -0
- package/dist/display/uptime-bar/types.d.ts +17 -0
- package/dist/display/uptime-bar/types.d.ts.map +1 -0
- package/dist/dist--GaXbmRw2.js +118 -0
- package/dist/dist--GaXbmRw2.js.map +1 -0
- package/dist/dist-Axk3-hcS.js +75 -0
- package/dist/dist-Axk3-hcS.js.map +1 -0
- package/dist/dist-B8N_HFUN.js +577 -0
- package/dist/dist-B8N_HFUN.js.map +1 -0
- package/dist/dist-BCCeHAQm.js +35 -0
- package/dist/dist-BCCeHAQm.js.map +1 -0
- package/dist/dist-BEs9dhua.js +1282 -0
- package/dist/dist-BEs9dhua.js.map +1 -0
- package/dist/dist-BHlnF6po.js +47 -0
- package/dist/dist-BHlnF6po.js.map +1 -0
- package/dist/dist-BOvRuqYp.js +27 -0
- package/dist/dist-BOvRuqYp.js.map +1 -0
- package/dist/dist-Bf2tA9xW.js +617 -0
- package/dist/dist-Bf2tA9xW.js.map +1 -0
- package/dist/dist-BmxbWOAj.js +8 -0
- package/dist/dist-BmxbWOAj.js.map +1 -0
- package/dist/dist-BqhkOSZ9.js +19 -0
- package/dist/dist-BqhkOSZ9.js.map +1 -0
- package/dist/dist-ByLgcn06.js +1236 -0
- package/dist/dist-ByLgcn06.js.map +1 -0
- package/dist/dist-CXvCjmkw.js +29 -0
- package/dist/dist-CXvCjmkw.js.map +1 -0
- package/dist/dist-CncQbcn0.js +52 -0
- package/dist/dist-CncQbcn0.js.map +1 -0
- package/dist/dist-CuA1lYwd.js +185 -0
- package/dist/dist-CuA1lYwd.js.map +1 -0
- package/dist/dist-CuEY-E_Y.js +12 -0
- package/dist/dist-CuEY-E_Y.js.map +1 -0
- package/dist/dist-D3GdPS_X.js +153 -0
- package/dist/dist-D3GdPS_X.js.map +1 -0
- package/dist/dist-D6Fo4Qkc.js +13 -0
- package/dist/dist-D6Fo4Qkc.js.map +1 -0
- package/dist/dist-DHddbHrS.js +14 -0
- package/dist/dist-DHddbHrS.js.map +1 -0
- package/dist/dist-DKK7ynDa.js +31 -0
- package/dist/dist-DKK7ynDa.js.map +1 -0
- package/dist/dist-DLCJ6BjJ.js +68 -0
- package/dist/dist-DLCJ6BjJ.js.map +1 -0
- package/dist/dist-Di-HnAlt.js +279 -0
- package/dist/dist-Di-HnAlt.js.map +1 -0
- package/dist/dist-DtNafQtQ2.js +122 -0
- package/dist/dist-DtNafQtQ2.js.map +1 -0
- package/dist/dist-Ltr12WCJ.js +11020 -0
- package/dist/dist-Ltr12WCJ.js.map +1 -0
- package/dist/dist-hG2PgpV-2.js +12 -0
- package/dist/dist-hG2PgpV-2.js.map +1 -0
- package/dist/dropdown-menu-gev7lxyE.js +248 -0
- package/dist/dropdown-menu-gev7lxyE.js.map +1 -0
- package/dist/editors/base.d.ts +45 -0
- package/dist/editors/base.d.ts.map +1 -0
- package/dist/editors/code-editor.d.ts +25 -0
- package/dist/editors/code-editor.d.ts.map +1 -0
- package/dist/editors/code-editor.js +173 -0
- package/dist/editors/code-editor.js.map +1 -0
- package/dist/editors/diff-viewer.d.ts +18 -0
- package/dist/editors/diff-viewer.d.ts.map +1 -0
- package/dist/editors/diff-viewer.js +105 -0
- package/dist/editors/diff-viewer.js.map +1 -0
- package/dist/editors/index.d.ts +23 -0
- package/dist/editors/index.d.ts.map +1 -0
- package/dist/editors/index.js +14 -0
- package/dist/editors/json-viewer.d.ts +19 -0
- package/dist/editors/json-viewer.d.ts.map +1 -0
- package/dist/editors/json-viewer.js +78 -0
- package/dist/editors/json-viewer.js.map +1 -0
- package/dist/editors/languages/fluxl.d.ts +9 -0
- package/dist/editors/languages/fluxl.d.ts.map +1 -0
- package/dist/editors/languages/fluxl.js +77 -0
- package/dist/editors/languages/fluxl.js.map +1 -0
- package/dist/editors/languages/javascript.d.ts +6 -0
- package/dist/editors/languages/javascript.d.ts.map +1 -0
- package/dist/editors/languages/json.d.ts +4 -0
- package/dist/editors/languages/json.d.ts.map +1 -0
- package/dist/editors/languages/markdown.d.ts +4 -0
- package/dist/editors/languages/markdown.d.ts.map +1 -0
- package/dist/editors/languages/python.d.ts +4 -0
- package/dist/editors/languages/python.d.ts.map +1 -0
- package/dist/editors/languages/rust.d.ts +4 -0
- package/dist/editors/languages/rust.d.ts.map +1 -0
- package/dist/editors/languages/shell.d.ts +4 -0
- package/dist/editors/languages/shell.d.ts.map +1 -0
- package/dist/editors/languages/sql.d.ts +8 -0
- package/dist/editors/languages/sql.d.ts.map +1 -0
- package/dist/editors/languages/yaml.d.ts +6 -0
- package/dist/editors/languages/yaml.d.ts.map +1 -0
- package/dist/editors/languages/yara.d.ts +9 -0
- package/dist/editors/languages/yara.d.ts.map +1 -0
- package/dist/editors/languages/yara.js +93 -0
- package/dist/editors/languages/yara.js.map +1 -0
- package/dist/editors/languages/yaral.d.ts +9 -0
- package/dist/editors/languages/yaral.d.ts.map +1 -0
- package/dist/editors/languages/yaral.js +52 -0
- package/dist/editors/languages/yaral.js.map +1 -0
- package/dist/editors/log-viewer.d.ts +23 -0
- package/dist/editors/log-viewer.d.ts.map +1 -0
- package/dist/editors/log-viewer.js +89 -0
- package/dist/editors/log-viewer.js.map +1 -0
- package/dist/editors/types.d.ts +123 -0
- package/dist/editors/types.d.ts.map +1 -0
- package/dist/editors/yaml-editor.d.ts +8 -0
- package/dist/editors/yaml-editor.d.ts.map +1 -0
- package/dist/editors/yaml-editor.js +22 -0
- package/dist/editors/yaml-editor.js.map +1 -0
- package/dist/ellipsis-g4z73tVE.js +25 -0
- package/dist/ellipsis-g4z73tVE.js.map +1 -0
- package/dist/erDiagram-INFDFZHY-DF8z82V9.js +1669 -0
- package/dist/erDiagram-INFDFZHY-DF8z82V9.js.map +1 -0
- package/dist/es2015-CoPv8Nx3.js +703 -0
- package/dist/es2015-CoPv8Nx3.js.map +1 -0
- package/dist/flowDiagram-PKNHOUZH--GnQiGTL.js +4165 -0
- package/dist/flowDiagram-PKNHOUZH--GnQiGTL.js.map +1 -0
- package/dist/form/calendar/index.d.ts +41 -0
- package/dist/form/calendar/index.d.ts.map +1 -0
- package/dist/form/calendar/index.js +172 -0
- package/dist/form/calendar/index.js.map +1 -0
- package/dist/form/calendar/types.d.ts +18 -0
- package/dist/form/calendar/types.d.ts.map +1 -0
- package/dist/form/color-picker/index.d.ts +78 -0
- package/dist/form/color-picker/index.d.ts.map +1 -0
- package/dist/form/color-picker/index.js +547 -0
- package/dist/form/color-picker/index.js.map +1 -0
- package/dist/form/color-picker/types.d.ts +14 -0
- package/dist/form/color-picker/types.d.ts.map +1 -0
- package/dist/form/cron-editor/index.d.ts +56 -0
- package/dist/form/cron-editor/index.d.ts.map +1 -0
- package/dist/form/cron-editor/index.js +312 -0
- package/dist/form/cron-editor/index.js.map +1 -0
- package/dist/form/cron-editor/parser.d.ts +12 -0
- package/dist/form/cron-editor/parser.d.ts.map +1 -0
- package/dist/form/cron-editor/parser.js +211 -0
- package/dist/form/cron-editor/parser.js.map +1 -0
- package/dist/form/cron-editor/types.d.ts +31 -0
- package/dist/form/cron-editor/types.d.ts.map +1 -0
- package/dist/form/date-picker/index.d.ts +28 -0
- package/dist/form/date-picker/index.d.ts.map +1 -0
- package/dist/form/date-picker/index.js +115 -0
- package/dist/form/date-picker/index.js.map +1 -0
- package/dist/form/date-picker/range.d.ts +34 -0
- package/dist/form/date-picker/range.d.ts.map +1 -0
- package/dist/form/date-picker/range.js +179 -0
- package/dist/form/date-picker/range.js.map +1 -0
- package/dist/form/date-picker/time.d.ts +41 -0
- package/dist/form/date-picker/time.d.ts.map +1 -0
- package/dist/form/date-picker/time.js +146 -0
- package/dist/form/date-picker/time.js.map +1 -0
- package/dist/form/date-picker/types.d.ts +52 -0
- package/dist/form/date-picker/types.d.ts.map +1 -0
- package/dist/form/direction/index.d.ts +25 -0
- package/dist/form/direction/index.d.ts.map +1 -0
- package/dist/form/direction/index.js +36 -0
- package/dist/form/direction/index.js.map +1 -0
- package/dist/form/index.d.ts +19 -0
- package/dist/form/index.d.ts.map +1 -0
- package/dist/form/index.js +10 -0
- package/dist/form/tag-input/index.d.ts +45 -0
- package/dist/form/tag-input/index.d.ts.map +1 -0
- package/dist/form/tag-input/index.js +208 -0
- package/dist/form/tag-input/index.js.map +1 -0
- package/dist/form/tag-input/types.d.ts +22 -0
- package/dist/form/tag-input/types.d.ts.map +1 -0
- package/dist/ganttDiagram-A5KZAMGK-C-ecgUuM.js +3075 -0
- package/dist/ganttDiagram-A5KZAMGK-C-ecgUuM.js.map +1 -0
- package/dist/gitGraph-HDMCJU4V-Bc1dZdnh.js +3 -0
- package/dist/gitGraphDiagram-K3NZZRJ6-B3SX2MOp.js +628 -0
- package/dist/gitGraphDiagram-K3NZZRJ6-B3SX2MOp.js.map +1 -0
- package/dist/graphlib-B9J5YQhs.js +227 -0
- package/dist/graphlib-B9J5YQhs.js.map +1 -0
- package/dist/icons/index.d.ts +16 -0
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/icons/index.js +93 -0
- package/dist/icons/index.js.map +1 -0
- package/dist/index.d.ts +54 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +138 -0
- package/dist/info-3K5VOQVL-Bbwt2VhK.js +3 -0
- package/dist/infoDiagram-LFFYTUFH-C8h9fMHW.js +21 -0
- package/dist/infoDiagram-LFFYTUFH-C8h9fMHW.js.map +1 -0
- package/dist/init-w1fYmhFN.js +17 -0
- package/dist/init-w1fYmhFN.js.map +1 -0
- package/dist/input-6tYy57mp.js +311 -0
- package/dist/input-6tYy57mp.js.map +1 -0
- package/dist/interactive-9Ky-mbcb.js +24 -0
- package/dist/interactive-9Ky-mbcb.js.map +1 -0
- package/dist/isArrayLikeObject-Bdc4g39x.js +580 -0
- package/dist/isArrayLikeObject-Bdc4g39x.js.map +1 -0
- package/dist/isEmpty-CrXtQ9Zv.js +37 -0
- package/dist/isEmpty-CrXtQ9Zv.js.map +1 -0
- package/dist/ishikawaDiagram-PHBUUO56-Dzja5vrM.js +719 -0
- package/dist/ishikawaDiagram-PHBUUO56-Dzja5vrM.js.map +1 -0
- package/dist/journeyDiagram-4ABVD52K-CUzkcpCV.js +886 -0
- package/dist/journeyDiagram-4ABVD52K-CUzkcpCV.js.map +1 -0
- package/dist/json-CeyVGbpw.js +907 -0
- package/dist/json-CeyVGbpw.js.map +1 -0
- package/dist/kanban-definition-K7BYSVSG-DvIRVHW0.js +973 -0
- package/dist/kanban-definition-K7BYSVSG-DvIRVHW0.js.map +1 -0
- package/dist/katex-DWv23pJW.js +21981 -0
- package/dist/katex-DWv23pJW.js.map +1 -0
- package/dist/keyboard-BzL08saM.js +245 -0
- package/dist/keyboard-BzL08saM.js.map +1 -0
- package/dist/label-BObzQvEY.js +55 -0
- package/dist/label-BObzQvEY.js.map +1 -0
- package/dist/layout/index.d.ts +69 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/index.js +240 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/line-CmjYdUkH.js +36 -0
- package/dist/line-CmjYdUkH.js.map +1 -0
- package/dist/linear-DTQb0J_9.js +244 -0
- package/dist/linear-DTQb0J_9.js.map +1 -0
- package/dist/markdown-viewer-BLoPrrpk.js +211 -0
- package/dist/markdown-viewer-BLoPrrpk.js.map +1 -0
- package/dist/math-8tgL_lKq.js +12 -0
- package/dist/math-8tgL_lKq.js.map +1 -0
- package/dist/menubar-DnARRQDT.js +438 -0
- package/dist/menubar-DnARRQDT.js.map +1 -0
- package/dist/mermaid-parser.core-CuiIDpxY.js +61 -0
- package/dist/mermaid-parser.core-CuiIDpxY.js.map +1 -0
- package/dist/mermaid.core-DwgIyYMX.js +923 -0
- package/dist/mermaid.core-DwgIyYMX.js.map +1 -0
- package/dist/mindmap-definition-YRQLILUH-BOCS5UWn.js +966 -0
- package/dist/mindmap-definition-YRQLILUH-BOCS5UWn.js.map +1 -0
- package/dist/navigation/breadcrumb/index.d.ts +22 -0
- package/dist/navigation/breadcrumb/index.d.ts.map +1 -0
- package/dist/navigation/breadcrumb/index.js +74 -0
- package/dist/navigation/breadcrumb/index.js.map +1 -0
- package/dist/navigation/breadcrumb/types.d.ts +19 -0
- package/dist/navigation/breadcrumb/types.d.ts.map +1 -0
- package/dist/navigation/drawer/index.d.ts +40 -0
- package/dist/navigation/drawer/index.d.ts.map +1 -0
- package/dist/navigation/drawer/index.js +120 -0
- package/dist/navigation/drawer/index.js.map +1 -0
- package/dist/navigation/drawer/types.d.ts +19 -0
- package/dist/navigation/drawer/types.d.ts.map +1 -0
- package/dist/navigation/dropdown-menu/index.d.ts +57 -0
- package/dist/navigation/dropdown-menu/index.d.ts.map +1 -0
- package/dist/navigation/dropdown-menu/index.js +231 -0
- package/dist/navigation/dropdown-menu/index.js.map +1 -0
- package/dist/navigation/dropdown-menu/types.d.ts +38 -0
- package/dist/navigation/dropdown-menu/types.d.ts.map +1 -0
- package/dist/navigation/index.d.ts +17 -0
- package/dist/navigation/index.d.ts.map +1 -0
- package/dist/navigation/index.js +7 -0
- package/dist/navigation/menubar/index.d.ts +38 -0
- package/dist/navigation/menubar/index.d.ts.map +1 -0
- package/dist/navigation/menubar/index.js +166 -0
- package/dist/navigation/menubar/index.js.map +1 -0
- package/dist/navigation/menubar/types.d.ts +24 -0
- package/dist/navigation/menubar/types.d.ts.map +1 -0
- package/dist/navigation/navigation-menu/index.d.ts +49 -0
- package/dist/navigation/navigation-menu/index.d.ts.map +1 -0
- package/dist/navigation/navigation-menu/index.js +173 -0
- package/dist/navigation/navigation-menu/index.js.map +1 -0
- package/dist/navigation/navigation-menu/types.d.ts +24 -0
- package/dist/navigation/navigation-menu/types.d.ts.map +1 -0
- package/dist/navigation/stepper/index.d.ts +34 -0
- package/dist/navigation/stepper/index.d.ts.map +1 -0
- package/dist/navigation/stepper/index.js +91 -0
- package/dist/navigation/stepper/index.js.map +1 -0
- package/dist/navigation/stepper/types.d.ts +22 -0
- package/dist/navigation/stepper/types.d.ts.map +1 -0
- package/dist/navigation-menu-CR-D1doi.js +622 -0
- package/dist/navigation-menu-CR-D1doi.js.map +1 -0
- package/dist/ordinal-CYknuT-U.js +67 -0
- package/dist/ordinal-CYknuT-U.js.map +1 -0
- package/dist/overlays/alert-dialog/index.d.ts +35 -0
- package/dist/overlays/alert-dialog/index.d.ts.map +1 -0
- package/dist/overlays/alert-dialog/index.js +137 -0
- package/dist/overlays/alert-dialog/index.js.map +1 -0
- package/dist/overlays/alert-dialog/types.d.ts +17 -0
- package/dist/overlays/alert-dialog/types.d.ts.map +1 -0
- package/dist/overlays/carousel/index.d.ts +69 -0
- package/dist/overlays/carousel/index.d.ts.map +1 -0
- package/dist/overlays/carousel/index.js +154 -0
- package/dist/overlays/carousel/index.js.map +1 -0
- package/dist/overlays/carousel/types.d.ts +21 -0
- package/dist/overlays/carousel/types.d.ts.map +1 -0
- package/dist/overlays/index.d.ts +11 -0
- package/dist/overlays/index.d.ts.map +1 -0
- package/dist/overlays/index.js +4 -0
- package/dist/overlays/sheet/index.d.ts +37 -0
- package/dist/overlays/sheet/index.d.ts.map +1 -0
- package/dist/overlays/sheet/index.js +120 -0
- package/dist/overlays/sheet/index.js.map +1 -0
- package/dist/overlays/sheet/types.d.ts +20 -0
- package/dist/overlays/sheet/types.d.ts.map +1 -0
- package/dist/packet-RMMSAZCW-BJSH0V2C.js +3 -0
- package/dist/pagination-Co5Y-NPF.js +80 -0
- package/dist/pagination-Co5Y-NPF.js.map +1 -0
- package/dist/passkey/index.d.ts +77 -0
- package/dist/passkey/index.d.ts.map +1 -0
- package/dist/passkey/index.js +90 -0
- package/dist/passkey/index.js.map +1 -0
- package/dist/path-CmOMDdHx.js +87 -0
- package/dist/path-CmOMDdHx.js.map +1 -0
- package/dist/pie-UPGHQEXC-Bdq_H4Og.js +3 -0
- package/dist/pieDiagram-SKSYHLDU-CHElRUS-.js +167 -0
- package/dist/pieDiagram-SKSYHLDU-CHElRUS-.js.map +1 -0
- package/dist/primitives/button/button-group.d.ts +13 -0
- package/dist/primitives/button/button-group.d.ts.map +1 -0
- package/dist/primitives/button/index.d.ts +31 -0
- package/dist/primitives/button/index.d.ts.map +1 -0
- package/dist/primitives/button/index.js +2 -0
- package/dist/primitives/button/types.d.ts +22 -0
- package/dist/primitives/button/types.d.ts.map +1 -0
- package/dist/primitives/button/variants.d.ts +12 -0
- package/dist/primitives/button/variants.d.ts.map +1 -0
- package/dist/primitives/checkbox/group.d.ts +17 -0
- package/dist/primitives/checkbox/group.d.ts.map +1 -0
- package/dist/primitives/checkbox/group.js +58 -0
- package/dist/primitives/checkbox/group.js.map +1 -0
- package/dist/primitives/checkbox/index.d.ts +19 -0
- package/dist/primitives/checkbox/index.d.ts.map +1 -0
- package/dist/primitives/checkbox/index.js +38 -0
- package/dist/primitives/checkbox/index.js.map +1 -0
- package/dist/primitives/checkbox/types.d.ts +32 -0
- package/dist/primitives/checkbox/types.d.ts.map +1 -0
- package/dist/primitives/field/index.d.ts +44 -0
- package/dist/primitives/field/index.d.ts.map +1 -0
- package/dist/primitives/field/index.js +60 -0
- package/dist/primitives/field/index.js.map +1 -0
- package/dist/primitives/field/types.d.ts +14 -0
- package/dist/primitives/field/types.d.ts.map +1 -0
- package/dist/primitives/index.d.ts +38 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +19 -0
- package/dist/primitives/input/index.d.ts +29 -0
- package/dist/primitives/input/index.d.ts.map +1 -0
- package/dist/primitives/input/index.js +2 -0
- package/dist/primitives/input/input-group.d.ts +17 -0
- package/dist/primitives/input/input-group.d.ts.map +1 -0
- package/dist/primitives/input/input-otp.d.ts +27 -0
- package/dist/primitives/input/input-otp.d.ts.map +1 -0
- package/dist/primitives/input/ip-input.d.ts +25 -0
- package/dist/primitives/input/ip-input.d.ts.map +1 -0
- package/dist/primitives/input/textarea.d.ts +24 -0
- package/dist/primitives/input/textarea.d.ts.map +1 -0
- package/dist/primitives/input/types.d.ts +67 -0
- package/dist/primitives/input/types.d.ts.map +1 -0
- package/dist/primitives/kbd/index.d.ts +19 -0
- package/dist/primitives/kbd/index.d.ts.map +1 -0
- package/dist/primitives/kbd/index.js +28 -0
- package/dist/primitives/kbd/index.js.map +1 -0
- package/dist/primitives/label/index.d.ts +27 -0
- package/dist/primitives/label/index.d.ts.map +1 -0
- package/dist/primitives/label/index.js +29 -0
- package/dist/primitives/label/index.js.map +1 -0
- package/dist/primitives/radio/index.d.ts +21 -0
- package/dist/primitives/radio/index.d.ts.map +1 -0
- package/dist/primitives/radio/index.js +78 -0
- package/dist/primitives/radio/index.js.map +1 -0
- package/dist/primitives/radio/types.d.ts +21 -0
- package/dist/primitives/radio/types.d.ts.map +1 -0
- package/dist/primitives/scroll-area/index.d.ts +27 -0
- package/dist/primitives/scroll-area/index.d.ts.map +1 -0
- package/dist/primitives/scroll-area/index.js +29 -0
- package/dist/primitives/scroll-area/index.js.map +1 -0
- package/dist/primitives/select/combobox.d.ts +42 -0
- package/dist/primitives/select/combobox.d.ts.map +1 -0
- package/dist/primitives/select/combobox.js +162 -0
- package/dist/primitives/select/combobox.js.map +1 -0
- package/dist/primitives/select/index.d.ts +47 -0
- package/dist/primitives/select/index.d.ts.map +1 -0
- package/dist/primitives/select/index.js +193 -0
- package/dist/primitives/select/index.js.map +1 -0
- package/dist/primitives/select/native.d.ts +19 -0
- package/dist/primitives/select/native.d.ts.map +1 -0
- package/dist/primitives/select/native.js +57 -0
- package/dist/primitives/select/native.js.map +1 -0
- package/dist/primitives/select/types.d.ts +49 -0
- package/dist/primitives/select/types.d.ts.map +1 -0
- package/dist/primitives/separator/index.d.ts +16 -0
- package/dist/primitives/separator/index.d.ts.map +1 -0
- package/dist/primitives/separator/index.js +16 -0
- package/dist/primitives/separator/index.js.map +1 -0
- package/dist/primitives/skeleton/index.d.ts +21 -0
- package/dist/primitives/skeleton/index.d.ts.map +1 -0
- package/dist/primitives/skeleton/index.js +19 -0
- package/dist/primitives/skeleton/index.js.map +1 -0
- package/dist/primitives/slider/index.d.ts +48 -0
- package/dist/primitives/slider/index.d.ts.map +1 -0
- package/dist/primitives/slider/index.js +118 -0
- package/dist/primitives/slider/index.js.map +1 -0
- package/dist/primitives/slider/types.d.ts +19 -0
- package/dist/primitives/slider/types.d.ts.map +1 -0
- package/dist/primitives/spinner/index.d.ts +20 -0
- package/dist/primitives/spinner/index.d.ts.map +1 -0
- package/dist/primitives/spinner/index.js +23 -0
- package/dist/primitives/spinner/index.js.map +1 -0
- package/dist/primitives/switch/index.d.ts +28 -0
- package/dist/primitives/switch/index.d.ts.map +1 -0
- package/dist/primitives/switch/index.js +44 -0
- package/dist/primitives/switch/index.js.map +1 -0
- package/dist/primitives/switch/types.d.ts +16 -0
- package/dist/primitives/switch/types.d.ts.map +1 -0
- package/dist/primitives/toggle/index.d.ts +25 -0
- package/dist/primitives/toggle/index.d.ts.map +1 -0
- package/dist/primitives/toggle/index.js +2 -0
- package/dist/primitives/toggle/toggle-group.d.ts +29 -0
- package/dist/primitives/toggle/toggle-group.d.ts.map +1 -0
- package/dist/primitives/toggle/types.d.ts +35 -0
- package/dist/primitives/toggle/types.d.ts.map +1 -0
- package/dist/primitives/utils.d.ts +9 -0
- package/dist/primitives/utils.d.ts.map +1 -0
- package/dist/purify.es-oNgIHWpC.js +551 -0
- package/dist/purify.es-oNgIHWpC.js.map +1 -0
- package/dist/quadrantDiagram-337W2JSQ-CCp6NZKq.js +1977 -0
- package/dist/quadrantDiagram-337W2JSQ-CCp6NZKq.js.map +1 -0
- package/dist/radar-KQ55EAFF-9Ge_dfwM.js +3 -0
- package/dist/radio-group-70BFGDbL.js +199 -0
- package/dist/radio-group-70BFGDbL.js.map +1 -0
- package/dist/react/brand/index.d.ts +36 -0
- package/dist/react/brand/index.d.ts.map +1 -0
- package/dist/react/brand.js +81 -0
- package/dist/react/brand.js.map +1 -0
- package/dist/react/index.d.ts +6 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/primitives/alert-dialog.d.ts +15 -0
- package/dist/react/primitives/alert-dialog.d.ts.map +1 -0
- package/dist/react/primitives/alert-dialog.js +2 -0
- package/dist/react/primitives/alert.d.ts +16 -0
- package/dist/react/primitives/alert.d.ts.map +1 -0
- package/dist/react/primitives/alert.js +61 -0
- package/dist/react/primitives/alert.js.map +1 -0
- package/dist/react/primitives/animated-counter.d.ts +37 -0
- package/dist/react/primitives/animated-counter.d.ts.map +1 -0
- package/dist/react/primitives/animated-counter.js +86 -0
- package/dist/react/primitives/animated-counter.js.map +1 -0
- package/dist/react/primitives/aspect-ratio.d.ts +8 -0
- package/dist/react/primitives/aspect-ratio.d.ts.map +1 -0
- package/dist/react/primitives/aspect-ratio.js +23 -0
- package/dist/react/primitives/aspect-ratio.js.map +1 -0
- package/dist/react/primitives/attack-path.d.ts +34 -0
- package/dist/react/primitives/attack-path.d.ts.map +1 -0
- package/dist/react/primitives/attack-path.js +125 -0
- package/dist/react/primitives/attack-path.js.map +1 -0
- package/dist/react/primitives/avatar.d.ts +25 -0
- package/dist/react/primitives/avatar.d.ts.map +1 -0
- package/dist/react/primitives/avatar.js +95 -0
- package/dist/react/primitives/avatar.js.map +1 -0
- package/dist/react/primitives/badge.d.ts +11 -0
- package/dist/react/primitives/badge.d.ts.map +1 -0
- package/dist/react/primitives/badge.js +32 -0
- package/dist/react/primitives/badge.js.map +1 -0
- package/dist/react/primitives/breadcrumb.d.ts +12 -0
- package/dist/react/primitives/breadcrumb.d.ts.map +1 -0
- package/dist/react/primitives/breadcrumb.js +72 -0
- package/dist/react/primitives/breadcrumb.js.map +1 -0
- package/dist/react/primitives/button.d.ts +18 -0
- package/dist/react/primitives/button.d.ts.map +1 -0
- package/dist/react/primitives/button.js +82 -0
- package/dist/react/primitives/button.js.map +1 -0
- package/dist/react/primitives/calendar.d.ts +31 -0
- package/dist/react/primitives/calendar.d.ts.map +1 -0
- package/dist/react/primitives/calendar.js +139 -0
- package/dist/react/primitives/calendar.js.map +1 -0
- package/dist/react/primitives/card.d.ts +11 -0
- package/dist/react/primitives/card.d.ts.map +1 -0
- package/dist/react/primitives/card.js +32 -0
- package/dist/react/primitives/card.js.map +1 -0
- package/dist/react/primitives/carousel.d.ts +25 -0
- package/dist/react/primitives/carousel.d.ts.map +1 -0
- package/dist/react/primitives/carousel.js +2 -0
- package/dist/react/primitives/chart-area.d.ts +9 -0
- package/dist/react/primitives/chart-area.d.ts.map +1 -0
- package/dist/react/primitives/chart-area.js +26 -0
- package/dist/react/primitives/chart-area.js.map +1 -0
- package/dist/react/primitives/chart-bar.d.ts +9 -0
- package/dist/react/primitives/chart-bar.d.ts.map +1 -0
- package/dist/react/primitives/chart-bar.js +26 -0
- package/dist/react/primitives/chart-bar.js.map +1 -0
- package/dist/react/primitives/chart-candlestick.d.ts +8 -0
- package/dist/react/primitives/chart-candlestick.d.ts.map +1 -0
- package/dist/react/primitives/chart-candlestick.js +26 -0
- package/dist/react/primitives/chart-candlestick.js.map +1 -0
- package/dist/react/primitives/chart-funnel.d.ts +8 -0
- package/dist/react/primitives/chart-funnel.d.ts.map +1 -0
- package/dist/react/primitives/chart-funnel.js +26 -0
- package/dist/react/primitives/chart-funnel.js.map +1 -0
- package/dist/react/primitives/chart-gauge.d.ts +8 -0
- package/dist/react/primitives/chart-gauge.d.ts.map +1 -0
- package/dist/react/primitives/chart-gauge.js +37 -0
- package/dist/react/primitives/chart-gauge.js.map +1 -0
- package/dist/react/primitives/chart-heatmap.d.ts +8 -0
- package/dist/react/primitives/chart-heatmap.d.ts.map +1 -0
- package/dist/react/primitives/chart-heatmap.js +26 -0
- package/dist/react/primitives/chart-heatmap.js.map +1 -0
- package/dist/react/primitives/chart-line.d.ts +9 -0
- package/dist/react/primitives/chart-line.d.ts.map +1 -0
- package/dist/react/primitives/chart-line.js +26 -0
- package/dist/react/primitives/chart-line.js.map +1 -0
- package/dist/react/primitives/chart-pie.d.ts +8 -0
- package/dist/react/primitives/chart-pie.d.ts.map +1 -0
- package/dist/react/primitives/chart-pie.js +26 -0
- package/dist/react/primitives/chart-pie.js.map +1 -0
- package/dist/react/primitives/chart-radar.d.ts +8 -0
- package/dist/react/primitives/chart-radar.d.ts.map +1 -0
- package/dist/react/primitives/chart-radar.js +26 -0
- package/dist/react/primitives/chart-radar.js.map +1 -0
- package/dist/react/primitives/chart-sankey.d.ts +8 -0
- package/dist/react/primitives/chart-sankey.d.ts.map +1 -0
- package/dist/react/primitives/chart-sankey.js +26 -0
- package/dist/react/primitives/chart-sankey.js.map +1 -0
- package/dist/react/primitives/chart-scatter.d.ts +9 -0
- package/dist/react/primitives/chart-scatter.d.ts.map +1 -0
- package/dist/react/primitives/chart-scatter.js +26 -0
- package/dist/react/primitives/chart-scatter.js.map +1 -0
- package/dist/react/primitives/chart-sparkline.d.ts +7 -0
- package/dist/react/primitives/chart-sparkline.d.ts.map +1 -0
- package/dist/react/primitives/chart-sparkline.js +26 -0
- package/dist/react/primitives/chart-sparkline.js.map +1 -0
- package/dist/react/primitives/chart-treemap.d.ts +8 -0
- package/dist/react/primitives/chart-treemap.d.ts.map +1 -0
- package/dist/react/primitives/chart-treemap.js +26 -0
- package/dist/react/primitives/chart-treemap.js.map +1 -0
- package/dist/react/primitives/chart-waterfall.d.ts +8 -0
- package/dist/react/primitives/chart-waterfall.d.ts.map +1 -0
- package/dist/react/primitives/chart-waterfall.js +26 -0
- package/dist/react/primitives/chart-waterfall.js.map +1 -0
- package/dist/react/primitives/checkbox.d.ts +9 -0
- package/dist/react/primitives/checkbox.d.ts.map +1 -0
- package/dist/react/primitives/checkbox.js +28 -0
- package/dist/react/primitives/checkbox.js.map +1 -0
- package/dist/react/primitives/code-block.d.ts +16 -0
- package/dist/react/primitives/code-block.d.ts.map +1 -0
- package/dist/react/primitives/code-block.js +67 -0
- package/dist/react/primitives/code-block.js.map +1 -0
- package/dist/react/primitives/code-viewer.d.ts +23 -0
- package/dist/react/primitives/code-viewer.d.ts.map +1 -0
- package/dist/react/primitives/code-viewer.js +229 -0
- package/dist/react/primitives/code-viewer.js.map +1 -0
- package/dist/react/primitives/collapsible.d.ts +32 -0
- package/dist/react/primitives/collapsible.d.ts.map +1 -0
- package/dist/react/primitives/collapsible.js +51 -0
- package/dist/react/primitives/collapsible.js.map +1 -0
- package/dist/react/primitives/color-picker.d.ts +18 -0
- package/dist/react/primitives/color-picker.d.ts.map +1 -0
- package/dist/react/primitives/color-picker.js +287 -0
- package/dist/react/primitives/color-picker.js.map +1 -0
- package/dist/react/primitives/context-menu.d.ts +24 -0
- package/dist/react/primitives/context-menu.d.ts.map +1 -0
- package/dist/react/primitives/context-menu.js +127 -0
- package/dist/react/primitives/context-menu.js.map +1 -0
- package/dist/react/primitives/copy-button.d.ts +23 -0
- package/dist/react/primitives/copy-button.d.ts.map +1 -0
- package/dist/react/primitives/copy-button.js +59 -0
- package/dist/react/primitives/copy-button.js.map +1 -0
- package/dist/react/primitives/cron-editor.d.ts +39 -0
- package/dist/react/primitives/cron-editor.d.ts.map +1 -0
- package/dist/react/primitives/cron-editor.js +456 -0
- package/dist/react/primitives/cron-editor.js.map +1 -0
- package/dist/react/primitives/cvss-badge.d.ts +21 -0
- package/dist/react/primitives/cvss-badge.d.ts.map +1 -0
- package/dist/react/primitives/cvss-badge.js +70 -0
- package/dist/react/primitives/cvss-badge.js.map +1 -0
- package/dist/react/primitives/data-grid.d.ts +73 -0
- package/dist/react/primitives/data-grid.d.ts.map +1 -0
- package/dist/react/primitives/data-grid.js +775 -0
- package/dist/react/primitives/data-grid.js.map +1 -0
- package/dist/react/primitives/data-table.d.ts +49 -0
- package/dist/react/primitives/data-table.d.ts.map +1 -0
- package/dist/react/primitives/data-table.js +144 -0
- package/dist/react/primitives/data-table.js.map +1 -0
- package/dist/react/primitives/date-picker.d.ts +57 -0
- package/dist/react/primitives/date-picker.d.ts.map +1 -0
- package/dist/react/primitives/date-picker.js +394 -0
- package/dist/react/primitives/date-picker.js.map +1 -0
- package/dist/react/primitives/detection-status.d.ts +47 -0
- package/dist/react/primitives/detection-status.d.ts.map +1 -0
- package/dist/react/primitives/detection-status.js +284 -0
- package/dist/react/primitives/detection-status.js.map +1 -0
- package/dist/react/primitives/dialog.d.ts +16 -0
- package/dist/react/primitives/dialog.d.ts.map +1 -0
- package/dist/react/primitives/dialog.js +87 -0
- package/dist/react/primitives/dialog.js.map +1 -0
- package/dist/react/primitives/direction.d.ts +21 -0
- package/dist/react/primitives/direction.d.ts.map +1 -0
- package/dist/react/primitives/direction.js +43 -0
- package/dist/react/primitives/direction.js.map +1 -0
- package/dist/react/primitives/drawer.d.ts +16 -0
- package/dist/react/primitives/drawer.d.ts.map +1 -0
- package/dist/react/primitives/drawer.js +88 -0
- package/dist/react/primitives/drawer.js.map +1 -0
- package/dist/react/primitives/dropdown-menu.d.ts +10 -0
- package/dist/react/primitives/dropdown-menu.d.ts.map +1 -0
- package/dist/react/primitives/dropdown-menu.js +2 -0
- package/dist/react/primitives/empty-state.d.ts +17 -0
- package/dist/react/primitives/empty-state.d.ts.map +1 -0
- package/dist/react/primitives/empty-state.js +42 -0
- package/dist/react/primitives/empty-state.js.map +1 -0
- package/dist/react/primitives/error-boundary.d.ts +20 -0
- package/dist/react/primitives/error-boundary.d.ts.map +1 -0
- package/dist/react/primitives/error-boundary.js +30 -0
- package/dist/react/primitives/error-boundary.js.map +1 -0
- package/dist/react/primitives/field.d.ts +17 -0
- package/dist/react/primitives/field.d.ts.map +1 -0
- package/dist/react/primitives/field.js +41 -0
- package/dist/react/primitives/field.js.map +1 -0
- package/dist/react/primitives/file-tree.d.ts +28 -0
- package/dist/react/primitives/file-tree.d.ts.map +1 -0
- package/dist/react/primitives/file-tree.js +183 -0
- package/dist/react/primitives/file-tree.js.map +1 -0
- package/dist/react/primitives/flow-diagram.d.ts +18 -0
- package/dist/react/primitives/flow-diagram.d.ts.map +1 -0
- package/dist/react/primitives/flow-diagram.js +40 -0
- package/dist/react/primitives/flow-diagram.js.map +1 -0
- package/dist/react/primitives/heatmap-legend.d.ts +20 -0
- package/dist/react/primitives/heatmap-legend.d.ts.map +1 -0
- package/dist/react/primitives/heatmap-legend.js +29 -0
- package/dist/react/primitives/heatmap-legend.js.map +1 -0
- package/dist/react/primitives/heatmap-toolbar.d.ts +20 -0
- package/dist/react/primitives/heatmap-toolbar.d.ts.map +1 -0
- package/dist/react/primitives/heatmap-toolbar.js +34 -0
- package/dist/react/primitives/heatmap-toolbar.js.map +1 -0
- package/dist/react/primitives/hover-card.d.ts +23 -0
- package/dist/react/primitives/hover-card.d.ts.map +1 -0
- package/dist/react/primitives/hover-card.js +73 -0
- package/dist/react/primitives/hover-card.js.map +1 -0
- package/dist/react/primitives/index.d.ts +99 -0
- package/dist/react/primitives/index.d.ts.map +1 -0
- package/dist/react/primitives/index.js +99 -0
- package/dist/react/primitives/input.d.ts +10 -0
- package/dist/react/primitives/input.d.ts.map +1 -0
- package/dist/react/primitives/input.js +18 -0
- package/dist/react/primitives/input.js.map +1 -0
- package/dist/react/primitives/json-path-browser.d.ts +15 -0
- package/dist/react/primitives/json-path-browser.d.ts.map +1 -0
- package/dist/react/primitives/json-path-browser.js +191 -0
- package/dist/react/primitives/json-path-browser.js.map +1 -0
- package/dist/react/primitives/kanban.d.ts +73 -0
- package/dist/react/primitives/kanban.d.ts.map +1 -0
- package/dist/react/primitives/kanban.js +210 -0
- package/dist/react/primitives/kanban.js.map +1 -0
- package/dist/react/primitives/kbd.d.ts +9 -0
- package/dist/react/primitives/kbd.d.ts.map +1 -0
- package/dist/react/primitives/kbd.js +22 -0
- package/dist/react/primitives/kbd.js.map +1 -0
- package/dist/react/primitives/label.d.ts +12 -0
- package/dist/react/primitives/label.d.ts.map +1 -0
- package/dist/react/primitives/label.js +2 -0
- package/dist/react/primitives/map.d.ts +23 -0
- package/dist/react/primitives/map.d.ts.map +1 -0
- package/dist/react/primitives/map.js +39 -0
- package/dist/react/primitives/map.js.map +1 -0
- package/dist/react/primitives/markdown-viewer.d.ts +10 -0
- package/dist/react/primitives/markdown-viewer.d.ts.map +1 -0
- package/dist/react/primitives/markdown-viewer.js +0 -0
- package/dist/react/primitives/markdown-viewer.js.map +1 -0
- package/dist/react/primitives/menubar.d.ts +26 -0
- package/dist/react/primitives/menubar.d.ts.map +1 -0
- package/dist/react/primitives/menubar.js +2 -0
- package/dist/react/primitives/mermaid-diagram.d.ts +16 -0
- package/dist/react/primitives/mermaid-diagram.d.ts.map +1 -0
- package/dist/react/primitives/mermaid-diagram.js +38 -0
- package/dist/react/primitives/mermaid-diagram.js.map +1 -0
- package/dist/react/primitives/mitre-matrix.d.ts +28 -0
- package/dist/react/primitives/mitre-matrix.d.ts.map +1 -0
- package/dist/react/primitives/mitre-matrix.js +125 -0
- package/dist/react/primitives/mitre-matrix.js.map +1 -0
- package/dist/react/primitives/modal.d.ts +22 -0
- package/dist/react/primitives/modal.d.ts.map +1 -0
- package/dist/react/primitives/modal.js +85 -0
- package/dist/react/primitives/modal.js.map +1 -0
- package/dist/react/primitives/navigation-menu.d.ts +13 -0
- package/dist/react/primitives/navigation-menu.d.ts.map +1 -0
- package/dist/react/primitives/navigation-menu.js +2 -0
- package/dist/react/primitives/network-graph.d.ts +20 -0
- package/dist/react/primitives/network-graph.d.ts.map +1 -0
- package/dist/react/primitives/network-graph.js +46 -0
- package/dist/react/primitives/network-graph.js.map +1 -0
- package/dist/react/primitives/notification-center.d.ts +33 -0
- package/dist/react/primitives/notification-center.d.ts.map +1 -0
- package/dist/react/primitives/notification-center.js +132 -0
- package/dist/react/primitives/notification-center.js.map +1 -0
- package/dist/react/primitives/pagination.d.ts +13 -0
- package/dist/react/primitives/pagination.d.ts.map +1 -0
- package/dist/react/primitives/pagination.js +2 -0
- package/dist/react/primitives/popover.d.ts +19 -0
- package/dist/react/primitives/popover.d.ts.map +1 -0
- package/dist/react/primitives/popover.js +142 -0
- package/dist/react/primitives/popover.js.map +1 -0
- package/dist/react/primitives/progress.d.ts +29 -0
- package/dist/react/primitives/progress.d.ts.map +1 -0
- package/dist/react/primitives/progress.js +98 -0
- package/dist/react/primitives/progress.js.map +1 -0
- package/dist/react/primitives/radio-group.d.ts +6 -0
- package/dist/react/primitives/radio-group.d.ts.map +1 -0
- package/dist/react/primitives/radio-group.js +2 -0
- package/dist/react/primitives/ripple.d.ts +44 -0
- package/dist/react/primitives/ripple.d.ts.map +1 -0
- package/dist/react/primitives/ripple.js +63 -0
- package/dist/react/primitives/ripple.js.map +1 -0
- package/dist/react/primitives/rule-editor.d.ts +31 -0
- package/dist/react/primitives/rule-editor.d.ts.map +1 -0
- package/dist/react/primitives/rule-editor.js +261 -0
- package/dist/react/primitives/rule-editor.js.map +1 -0
- package/dist/react/primitives/scroll-area.d.ts +6 -0
- package/dist/react/primitives/scroll-area.d.ts.map +1 -0
- package/dist/react/primitives/scroll-area.js +2 -0
- package/dist/react/primitives/search.d.ts +45 -0
- package/dist/react/primitives/search.d.ts.map +1 -0
- package/dist/react/primitives/search.js +318 -0
- package/dist/react/primitives/search.js.map +1 -0
- package/dist/react/primitives/select.d.ts +16 -0
- package/dist/react/primitives/select.d.ts.map +1 -0
- package/dist/react/primitives/select.js +2 -0
- package/dist/react/primitives/separator.d.ts +5 -0
- package/dist/react/primitives/separator.d.ts.map +1 -0
- package/dist/react/primitives/separator.js +2 -0
- package/dist/react/primitives/severity-indicator.d.ts +18 -0
- package/dist/react/primitives/severity-indicator.d.ts.map +1 -0
- package/dist/react/primitives/severity-indicator.js +74 -0
- package/dist/react/primitives/severity-indicator.js.map +1 -0
- package/dist/react/primitives/sheet.d.ts +16 -0
- package/dist/react/primitives/sheet.d.ts.map +1 -0
- package/dist/react/primitives/sheet.js +84 -0
- package/dist/react/primitives/sheet.js.map +1 -0
- package/dist/react/primitives/skeleton.d.ts +4 -0
- package/dist/react/primitives/skeleton.d.ts.map +1 -0
- package/dist/react/primitives/skeleton.js +15 -0
- package/dist/react/primitives/skeleton.js.map +1 -0
- package/dist/react/primitives/slide-panel.d.ts +28 -0
- package/dist/react/primitives/slide-panel.d.ts.map +1 -0
- package/dist/react/primitives/slide-panel.js +59 -0
- package/dist/react/primitives/slide-panel.js.map +1 -0
- package/dist/react/primitives/slider.d.ts +5 -0
- package/dist/react/primitives/slider.d.ts.map +1 -0
- package/dist/react/primitives/slider.js +2 -0
- package/dist/react/primitives/spinner.d.ts +10 -0
- package/dist/react/primitives/spinner.d.ts.map +1 -0
- package/dist/react/primitives/spinner.js +28 -0
- package/dist/react/primitives/spinner.js.map +1 -0
- package/dist/react/primitives/split-pane.d.ts +19 -0
- package/dist/react/primitives/split-pane.d.ts.map +1 -0
- package/dist/react/primitives/split-pane.js +83 -0
- package/dist/react/primitives/split-pane.js.map +1 -0
- package/dist/react/primitives/stat-card.d.ts +19 -0
- package/dist/react/primitives/stat-card.d.ts.map +1 -0
- package/dist/react/primitives/stat-card.js +86 -0
- package/dist/react/primitives/stat-card.js.map +1 -0
- package/dist/react/primitives/status-bar.d.ts +11 -0
- package/dist/react/primitives/status-bar.d.ts.map +1 -0
- package/dist/react/primitives/status-bar.js +38 -0
- package/dist/react/primitives/status-bar.js.map +1 -0
- package/dist/react/primitives/stepper.d.ts +15 -0
- package/dist/react/primitives/stepper.d.ts.map +1 -0
- package/dist/react/primitives/stepper.js +68 -0
- package/dist/react/primitives/stepper.js.map +1 -0
- package/dist/react/primitives/switch.d.ts +16 -0
- package/dist/react/primitives/switch.d.ts.map +1 -0
- package/dist/react/primitives/switch.js +2 -0
- package/dist/react/primitives/table.d.ts +11 -0
- package/dist/react/primitives/table.d.ts.map +1 -0
- package/dist/react/primitives/table.js +68 -0
- package/dist/react/primitives/table.js.map +1 -0
- package/dist/react/primitives/tabs.d.ts +8 -0
- package/dist/react/primitives/tabs.d.ts.map +1 -0
- package/dist/react/primitives/tabs.js +2 -0
- package/dist/react/primitives/tag-input.d.ts +27 -0
- package/dist/react/primitives/tag-input.d.ts.map +1 -0
- package/dist/react/primitives/tag-input.js +206 -0
- package/dist/react/primitives/tag-input.js.map +1 -0
- package/dist/react/primitives/terminal.d.ts +16 -0
- package/dist/react/primitives/terminal.d.ts.map +1 -0
- package/dist/react/primitives/terminal.js +138 -0
- package/dist/react/primitives/terminal.js.map +1 -0
- package/dist/react/primitives/textarea.d.ts +4 -0
- package/dist/react/primitives/textarea.d.ts.map +1 -0
- package/dist/react/primitives/textarea.js +15 -0
- package/dist/react/primitives/textarea.js.map +1 -0
- package/dist/react/primitives/timeline.d.ts +31 -0
- package/dist/react/primitives/timeline.d.ts.map +1 -0
- package/dist/react/primitives/timeline.js +188 -0
- package/dist/react/primitives/timeline.js.map +1 -0
- package/dist/react/primitives/toast.d.ts +49 -0
- package/dist/react/primitives/toast.d.ts.map +1 -0
- package/dist/react/primitives/toast.js +2 -0
- package/dist/react/primitives/toggle.d.ts +13 -0
- package/dist/react/primitives/toggle.d.ts.map +1 -0
- package/dist/react/primitives/toggle.js +2 -0
- package/dist/react/primitives/tooltip.d.ts +15 -0
- package/dist/react/primitives/tooltip.d.ts.map +1 -0
- package/dist/react/primitives/tooltip.js +2 -0
- package/dist/react/primitives/tree-view.d.ts +51 -0
- package/dist/react/primitives/tree-view.d.ts.map +1 -0
- package/dist/react/primitives/tree-view.js +121 -0
- package/dist/react/primitives/tree-view.js.map +1 -0
- package/dist/react/primitives/typography.d.ts +14 -0
- package/dist/react/primitives/typography.d.ts.map +1 -0
- package/dist/react/primitives/typography.js +85 -0
- package/dist/react/primitives/typography.js.map +1 -0
- package/dist/react/primitives/uptime-bar.d.ts +16 -0
- package/dist/react/primitives/uptime-bar.d.ts.map +1 -0
- package/dist/react/primitives/uptime-bar.js +44 -0
- package/dist/react/primitives/uptime-bar.js.map +1 -0
- package/dist/react/primitives/utils.d.ts +3 -0
- package/dist/react/primitives/utils.d.ts.map +1 -0
- package/dist/react/primitives/vulnerability-card.d.ts +40 -0
- package/dist/react/primitives/vulnerability-card.d.ts.map +1 -0
- package/dist/react/primitives/vulnerability-card.js +163 -0
- package/dist/react/primitives/vulnerability-card.js.map +1 -0
- package/dist/react/theme-toggle/index.d.ts +45 -0
- package/dist/react/theme-toggle/index.d.ts.map +1 -0
- package/dist/react/theme-toggle.js +2 -0
- package/dist/react/threat-visuals/index.d.ts +45 -0
- package/dist/react/threat-visuals/index.d.ts.map +1 -0
- package/dist/react/threat-visuals.js +102 -0
- package/dist/react/threat-visuals.js.map +1 -0
- package/dist/react/topology/edges.d.ts +9 -0
- package/dist/react/topology/edges.d.ts.map +1 -0
- package/dist/react/topology/index.d.ts +9 -0
- package/dist/react/topology/index.d.ts.map +1 -0
- package/dist/react/topology/layouts.d.ts +41 -0
- package/dist/react/topology/layouts.d.ts.map +1 -0
- package/dist/react/topology/logos.d.ts +26 -0
- package/dist/react/topology/logos.d.ts.map +1 -0
- package/dist/react/topology/nodes.d.ts +49 -0
- package/dist/react/topology/nodes.d.ts.map +1 -0
- package/dist/react/topology/safe-handle.d.ts +7 -0
- package/dist/react/topology/safe-handle.d.ts.map +1 -0
- package/dist/react/topology/styles.d.ts +2 -0
- package/dist/react/topology/styles.d.ts.map +1 -0
- package/dist/react/topology.js +2 -0
- package/dist/react.js +104 -0
- package/dist/requirementDiagram-Z7DCOOCP-DKZkXWbf.js +2203 -0
- package/dist/requirementDiagram-Z7DCOOCP-DKZkXWbf.js.map +1 -0
- package/dist/rough.esm-CJL_eUW6.js +1354 -0
- package/dist/rough.esm-CJL_eUW6.js.map +1 -0
- package/dist/sanitize-tXExwlw-.js +16 -0
- package/dist/sanitize-tXExwlw-.js.map +1 -0
- package/dist/sankeyDiagram-WA2Y5GQK-DCrlTOfN.js +923 -0
- package/dist/sankeyDiagram-WA2Y5GQK-DCrlTOfN.js.map +1 -0
- package/dist/scroll-area-DSx2nCB7.js +528 -0
- package/dist/scroll-area-DSx2nCB7.js.map +1 -0
- package/dist/search-Ds_Rknvw.js +14 -0
- package/dist/search-Ds_Rknvw.js.map +1 -0
- package/dist/security/attack-path/index.d.ts +20 -0
- package/dist/security/attack-path/index.d.ts.map +1 -0
- package/dist/security/attack-path/index.js +101 -0
- package/dist/security/attack-path/index.js.map +1 -0
- package/dist/security/attack-path/types.d.ts +23 -0
- package/dist/security/attack-path/types.d.ts.map +1 -0
- package/dist/security/cvss-badge/index.d.ts +20 -0
- package/dist/security/cvss-badge/index.d.ts.map +1 -0
- package/dist/security/cvss-badge/index.js +50 -0
- package/dist/security/cvss-badge/index.js.map +1 -0
- package/dist/security/cvss-badge/types.d.ts +14 -0
- package/dist/security/cvss-badge/types.d.ts.map +1 -0
- package/dist/security/detection-status/index.d.ts +27 -0
- package/dist/security/detection-status/index.d.ts.map +1 -0
- package/dist/security/detection-status/index.js +230 -0
- package/dist/security/detection-status/index.js.map +1 -0
- package/dist/security/detection-status/types.d.ts +23 -0
- package/dist/security/detection-status/types.d.ts.map +1 -0
- package/dist/security/index.d.ts +15 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +6 -0
- package/dist/security/mitre-matrix/index.d.ts +22 -0
- package/dist/security/mitre-matrix/index.d.ts.map +1 -0
- package/dist/security/mitre-matrix/index.js +104 -0
- package/dist/security/mitre-matrix/index.js.map +1 -0
- package/dist/security/mitre-matrix/types.d.ts +22 -0
- package/dist/security/mitre-matrix/types.d.ts.map +1 -0
- package/dist/security/vulnerability-card/index.d.ts +21 -0
- package/dist/security/vulnerability-card/index.d.ts.map +1 -0
- package/dist/security/vulnerability-card/index.js +152 -0
- package/dist/security/vulnerability-card/index.js.map +1 -0
- package/dist/security/vulnerability-card/types.d.ts +32 -0
- package/dist/security/vulnerability-card/types.d.ts.map +1 -0
- package/dist/select-DcJdLR2A.js +836 -0
- package/dist/select-DcJdLR2A.js.map +1 -0
- package/dist/selection-BisAH2tT.js +12 -0
- package/dist/selection-BisAH2tT.js.map +1 -0
- package/dist/separator-CW4ZX8wr.js +68 -0
- package/dist/separator-CW4ZX8wr.js.map +1 -0
- package/dist/sequenceDiagram-2WXFIKYE-CgAE3dlZ.js +4112 -0
- package/dist/sequenceDiagram-2WXFIKYE-CgAE3dlZ.js.map +1 -0
- package/dist/series-Cm9HrwZ5.js +44 -0
- package/dist/series-Cm9HrwZ5.js.map +1 -0
- package/dist/services/api.d.ts +30 -0
- package/dist/services/api.d.ts.map +1 -0
- package/dist/services/api.js +108 -0
- package/dist/services/api.js.map +1 -0
- package/dist/services/index.d.ts +15 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +6 -0
- package/dist/services/keybindings.d.ts +28 -0
- package/dist/services/keybindings.d.ts.map +1 -0
- package/dist/services/keybindings.js +133 -0
- package/dist/services/keybindings.js.map +1 -0
- package/dist/services/router.d.ts +92 -0
- package/dist/services/router.d.ts.map +1 -0
- package/dist/services/router.js +221 -0
- package/dist/services/router.js.map +1 -0
- package/dist/services/sse.d.ts +29 -0
- package/dist/services/sse.d.ts.map +1 -0
- package/dist/services/sse.js +70 -0
- package/dist/services/sse.js.map +1 -0
- package/dist/services/storage.d.ts +22 -0
- package/dist/services/storage.d.ts.map +1 -0
- package/dist/services-BmIW7l7A.js +60 -0
- package/dist/services-BmIW7l7A.js.map +1 -0
- package/dist/shell-DgHAZOVJ.js +5095 -0
- package/dist/shell-DgHAZOVJ.js.map +1 -0
- package/dist/sidebar/badge.d.ts +19 -0
- package/dist/sidebar/badge.d.ts.map +1 -0
- package/dist/sidebar/component.d.ts +23 -0
- package/dist/sidebar/component.d.ts.map +1 -0
- package/dist/sidebar/enhance.d.ts +69 -0
- package/dist/sidebar/enhance.d.ts.map +1 -0
- package/dist/sidebar/index.d.ts +51 -0
- package/dist/sidebar/index.d.ts.map +1 -0
- package/dist/sidebar/index.js +199 -0
- package/dist/sidebar/index.js.map +1 -0
- package/dist/sidebar/types.d.ts +34 -0
- package/dist/sidebar/types.d.ts.map +1 -0
- package/dist/slider-Dwau2Ktq.js +383 -0
- package/dist/slider-Dwau2Ktq.js.map +1 -0
- package/dist/sorting-BZp0NpSF.js +28 -0
- package/dist/sorting-BZp0NpSF.js.map +1 -0
- package/dist/sql-BdONJBIG.js +636 -0
- package/dist/sql-BdONJBIG.js.map +1 -0
- package/dist/src-BUKqSJT6.js +2139 -0
- package/dist/src-BUKqSJT6.js.map +1 -0
- package/dist/src-iH-l56c_.js +340 -0
- package/dist/src-iH-l56c_.js.map +1 -0
- package/dist/stateDiagram-RAJIS63D-_La1YtlG.js +220 -0
- package/dist/stateDiagram-RAJIS63D-_La1YtlG.js.map +1 -0
- package/dist/stateDiagram-v2-FVOUBMTO-CA1nyIZB.js +29 -0
- package/dist/stateDiagram-v2-FVOUBMTO-CA1nyIZB.js.map +1 -0
- package/dist/styles/appearance.css +325 -0
- package/dist/styles/auth.css +318 -0
- package/dist/styles/breakpoints.css +346 -0
- package/dist/styles/charts/charts.css +140 -0
- package/dist/styles/components/context-menu.css +180 -0
- package/dist/styles/components/data-grid.css +635 -0
- package/dist/styles/components/data-table.css +276 -0
- package/dist/styles/components/editors.css +265 -0
- package/dist/styles/components/modal.css +246 -0
- package/dist/styles/components/pagination.css +158 -0
- package/dist/styles/components/search.css +369 -0
- package/dist/styles/components/split-pane.css +174 -0
- package/dist/styles/components/status-bar.css +198 -0
- package/dist/styles/components/tabs.css +201 -0
- package/dist/styles/components/toast.css +235 -0
- package/dist/styles/components/tree-view.css +225 -0
- package/dist/styles/consent.css +282 -0
- package/dist/styles/display/alert.css +136 -0
- package/dist/styles/display/aspect-ratio.css +15 -0
- package/dist/styles/display/avatar.css +190 -0
- package/dist/styles/display/badge.css +148 -0
- package/dist/styles/display/card.css +66 -0
- package/dist/styles/display/code-block.css +99 -0
- package/dist/styles/display/empty-state.css +37 -0
- package/dist/styles/display/hover-card.css +70 -0
- package/dist/styles/display/markdown-viewer.css +145 -0
- package/dist/styles/display/notification-center.css +272 -0
- package/dist/styles/display/popover.css +29 -0
- package/dist/styles/display/progress.css +129 -0
- package/dist/styles/display/severity-indicator.css +96 -0
- package/dist/styles/display/stat-card.css +90 -0
- package/dist/styles/display/tooltip.css +58 -0
- package/dist/styles/display/typography.css +129 -0
- package/dist/styles/display/uptime-bar.css +64 -0
- package/dist/styles/form/calendar.css +240 -0
- package/dist/styles/form/color-picker.css +239 -0
- package/dist/styles/form/cron-editor.css +333 -0
- package/dist/styles/form/date-picker.css +378 -0
- package/dist/styles/form/tag-input.css +219 -0
- package/dist/styles/index.css +110 -0
- package/dist/styles/layout.css +753 -0
- package/dist/styles/navigation/breadcrumb.css +100 -0
- package/dist/styles/navigation/drawer.css +143 -0
- package/dist/styles/navigation/dropdown-menu.css +193 -0
- package/dist/styles/navigation/menubar.css +208 -0
- package/dist/styles/navigation/navigation-menu.css +260 -0
- package/dist/styles/navigation/stepper.css +199 -0
- package/dist/styles/overlays/alert-dialog.css +205 -0
- package/dist/styles/overlays/carousel.css +147 -0
- package/dist/styles/overlays/sheet.css +206 -0
- package/dist/styles/primitives/button.css +277 -0
- package/dist/styles/primitives/checkbox.css +126 -0
- package/dist/styles/primitives/field.css +48 -0
- package/dist/styles/primitives/input.css +331 -0
- package/dist/styles/primitives/kbd.css +32 -0
- package/dist/styles/primitives/label.css +18 -0
- package/dist/styles/primitives/radio.css +109 -0
- package/dist/styles/primitives/scroll-area.css +54 -0
- package/dist/styles/primitives/select.css +354 -0
- package/dist/styles/primitives/separator.css +20 -0
- package/dist/styles/primitives/skeleton.css +35 -0
- package/dist/styles/primitives/slider.css +121 -0
- package/dist/styles/primitives/spinner.css +56 -0
- package/dist/styles/primitives/switch.css +131 -0
- package/dist/styles/primitives/toggle.css +157 -0
- package/dist/styles/react-threat-visuals.css +568 -0
- package/dist/styles/security/attack-path.css +192 -0
- package/dist/styles/security/cvss-badge.css +136 -0
- package/dist/styles/security/detection-status.css +217 -0
- package/dist/styles/security/mitre-matrix.css +203 -0
- package/dist/styles/security/vulnerability-card.css +294 -0
- package/dist/styles/sidebar.css +1194 -0
- package/dist/styles/tokens.css +392 -0
- package/dist/styles/ui.css +442 -0
- package/dist/styles/utilities.css +43 -0
- package/dist/styles/visualization/file-tree.css +179 -0
- package/dist/styles/visualization/flow-diagram.css +163 -0
- package/dist/styles/visualization/json-path-browser.css +275 -0
- package/dist/styles/visualization/kanban.css +614 -0
- package/dist/styles/visualization/map.css +205 -0
- package/dist/styles/visualization/mermaid-diagram.css +172 -0
- package/dist/styles/visualization/network-graph.css +169 -0
- package/dist/styles/visualization/rule-editor.css +280 -0
- package/dist/styles/visualization/terminal.css +133 -0
- package/dist/styles/visualization/timeline.css +246 -0
- package/dist/switch-dChlavwa.js +104 -0
- package/dist/switch-dChlavwa.js.map +1 -0
- package/dist/tabs-Bpcitl6-.js +150 -0
- package/dist/tabs-Bpcitl6-.js.map +1 -0
- package/dist/theme-toggle-CaCz_B5t.js +130 -0
- package/dist/theme-toggle-CaCz_B5t.js.map +1 -0
- package/dist/timeline-definition-YZTLITO2-CvoqOZkr.js +833 -0
- package/dist/timeline-definition-YZTLITO2-CvoqOZkr.js.map +1 -0
- package/dist/toast-Li-x6JyI.js +209 -0
- package/dist/toast-Li-x6JyI.js.map +1 -0
- package/dist/toggle-Cg5AEgfp.js +204 -0
- package/dist/toggle-Cg5AEgfp.js.map +1 -0
- package/dist/toggle-RVd6oZCL.js +122 -0
- package/dist/toggle-RVd6oZCL.js.map +1 -0
- package/dist/tooltip-BvkBQJvL.js +385 -0
- package/dist/tooltip-BvkBQJvL.js.map +1 -0
- package/dist/topology-DlBapVMn.js +6707 -0
- package/dist/topology-DlBapVMn.js.map +1 -0
- package/dist/tree-view-CQwOGwy0.js +276 -0
- package/dist/tree-view-CQwOGwy0.js.map +1 -0
- package/dist/treemap-KZPCXAKY-DP2ZtuXF.js +3 -0
- package/dist/triangle-alert-DWk6jJ_p.js +42 -0
- package/dist/triangle-alert-DWk6jJ_p.js.map +1 -0
- package/dist/ui/index.d.ts +111 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +198 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/utils/a11y.d.ts +113 -0
- package/dist/utils/a11y.d.ts.map +1 -0
- package/dist/utils/date.d.ts +26 -0
- package/dist/utils/date.d.ts.map +1 -0
- package/dist/utils/errors.d.ts +24 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/index.d.ts +15 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/keyboard.d.ts +135 -0
- package/dist/utils/keyboard.d.ts.map +1 -0
- package/dist/utils/registry.d.ts +14 -0
- package/dist/utils/registry.d.ts.map +1 -0
- package/dist/utils/registry.js +23 -0
- package/dist/utils/registry.js.map +1 -0
- package/dist/utils/sanitize.d.ts +11 -0
- package/dist/utils/sanitize.d.ts.map +1 -0
- package/dist/utils/selection.d.ts +15 -0
- package/dist/utils/selection.d.ts.map +1 -0
- package/dist/utils/sorting.d.ts +25 -0
- package/dist/utils/sorting.d.ts.map +1 -0
- package/dist/utils/touch.d.ts +137 -0
- package/dist/utils/touch.d.ts.map +1 -0
- package/dist/utils/validation.d.ts +30 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils-B7XIe3qq.js +1694 -0
- package/dist/utils-B7XIe3qq.js.map +1 -0
- package/dist/utils-Cn_W3h3f.js +17 -0
- package/dist/utils-Cn_W3h3f.js.map +1 -0
- package/dist/utils-DAAwIwhm.js +250 -0
- package/dist/utils-DAAwIwhm.js.map +1 -0
- package/dist/value-B1V_kKf_.js +52 -0
- package/dist/value-B1V_kKf_.js.map +1 -0
- package/dist/vennDiagram-LZ73GAT5-Xu1ecpFt.js +1861 -0
- package/dist/vennDiagram-LZ73GAT5-Xu1ecpFt.js.map +1 -0
- package/dist/visualization/file-tree/index.d.ts +49 -0
- package/dist/visualization/file-tree/index.d.ts.map +1 -0
- package/dist/visualization/file-tree/index.js +154 -0
- package/dist/visualization/file-tree/index.js.map +1 -0
- package/dist/visualization/file-tree/types.d.ts +28 -0
- package/dist/visualization/file-tree/types.d.ts.map +1 -0
- package/dist/visualization/flow-diagram/index.d.ts +49 -0
- package/dist/visualization/flow-diagram/index.d.ts.map +1 -0
- package/dist/visualization/flow-diagram/index.js +314 -0
- package/dist/visualization/flow-diagram/index.js.map +1 -0
- package/dist/visualization/flow-diagram/types.d.ts +37 -0
- package/dist/visualization/flow-diagram/types.d.ts.map +1 -0
- package/dist/visualization/index.d.ts +25 -0
- package/dist/visualization/index.d.ts.map +1 -0
- package/dist/visualization/index.js +11 -0
- package/dist/visualization/json-path-browser/index.d.ts +48 -0
- package/dist/visualization/json-path-browser/index.d.ts.map +1 -0
- package/dist/visualization/json-path-browser/index.js +189 -0
- package/dist/visualization/json-path-browser/index.js.map +1 -0
- package/dist/visualization/json-path-browser/types.d.ts +15 -0
- package/dist/visualization/json-path-browser/types.d.ts.map +1 -0
- package/dist/visualization/kanban/index.d.ts +71 -0
- package/dist/visualization/kanban/index.d.ts.map +1 -0
- package/dist/visualization/kanban/index.js +301 -0
- package/dist/visualization/kanban/index.js.map +1 -0
- package/dist/visualization/kanban/types.d.ts +85 -0
- package/dist/visualization/kanban/types.d.ts.map +1 -0
- package/dist/visualization/map/index.d.ts +85 -0
- package/dist/visualization/map/index.d.ts.map +1 -0
- package/dist/visualization/map/index.js +219 -0
- package/dist/visualization/map/index.js.map +1 -0
- package/dist/visualization/map/types.d.ts +38 -0
- package/dist/visualization/map/types.d.ts.map +1 -0
- package/dist/visualization/mermaid-diagram/index.d.ts +45 -0
- package/dist/visualization/mermaid-diagram/index.d.ts.map +1 -0
- package/dist/visualization/mermaid-diagram/index.js +236 -0
- package/dist/visualization/mermaid-diagram/index.js.map +1 -0
- package/dist/visualization/mermaid-diagram/types.d.ts +32 -0
- package/dist/visualization/mermaid-diagram/types.d.ts.map +1 -0
- package/dist/visualization/network-graph/index.d.ts +57 -0
- package/dist/visualization/network-graph/index.d.ts.map +1 -0
- package/dist/visualization/network-graph/index.js +296 -0
- package/dist/visualization/network-graph/index.js.map +1 -0
- package/dist/visualization/network-graph/types.d.ts +37 -0
- package/dist/visualization/network-graph/types.d.ts.map +1 -0
- package/dist/visualization/rule-editor/index.d.ts +46 -0
- package/dist/visualization/rule-editor/index.d.ts.map +1 -0
- package/dist/visualization/rule-editor/index.js +262 -0
- package/dist/visualization/rule-editor/index.js.map +1 -0
- package/dist/visualization/rule-editor/types.d.ts +31 -0
- package/dist/visualization/rule-editor/types.d.ts.map +1 -0
- package/dist/visualization/terminal/index.d.ts +54 -0
- package/dist/visualization/terminal/index.d.ts.map +1 -0
- package/dist/visualization/terminal/index.js +154 -0
- package/dist/visualization/terminal/index.js.map +1 -0
- package/dist/visualization/terminal/types.d.ts +16 -0
- package/dist/visualization/terminal/types.d.ts.map +1 -0
- package/dist/visualization/timeline/index.d.ts +31 -0
- package/dist/visualization/timeline/index.d.ts.map +1 -0
- package/dist/visualization/timeline/index.js +174 -0
- package/dist/visualization/timeline/index.js.map +1 -0
- package/dist/visualization/timeline/types.d.ts +24 -0
- package/dist/visualization/timeline/types.d.ts.map +1 -0
- package/dist/x-DCVjAtEF.js +12 -0
- package/dist/x-DCVjAtEF.js.map +1 -0
- package/dist/xychartDiagram-JWTSCODW-BX9xqezB.js +2043 -0
- package/dist/xychartDiagram-JWTSCODW-BX9xqezB.js.map +1 -0
- package/dist/yaml-BruA1FUA.js +34 -0
- package/dist/yaml-BruA1FUA.js.map +1 -0
- package/package.json +1409 -0
- package/src/app-switcher/index.ts +322 -0
- package/src/appearance/appearance.test.ts +511 -0
- package/src/appearance/index.ts +193 -0
- package/src/auth/index.ts +242 -0
- package/src/charts/annotations.ts +116 -0
- package/src/charts/area/index.ts +260 -0
- package/src/charts/area/types.ts +13 -0
- package/src/charts/axis.ts +192 -0
- package/src/charts/bar/index.ts +354 -0
- package/src/charts/bar/types.ts +13 -0
- package/src/charts/base.ts +542 -0
- package/src/charts/candlestick/index.ts +317 -0
- package/src/charts/candlestick/types.ts +25 -0
- package/src/charts/funnel/index.ts +335 -0
- package/src/charts/funnel/types.ts +22 -0
- package/src/charts/gauge/index.ts +289 -0
- package/src/charts/gauge/types.ts +24 -0
- package/src/charts/heatmap/index.ts +257 -0
- package/src/charts/heatmap/types.ts +23 -0
- package/src/charts/index.ts +89 -0
- package/src/charts/interactive.ts +59 -0
- package/src/charts/legend.ts +104 -0
- package/src/charts/line/index.ts +223 -0
- package/src/charts/line/types.ts +13 -0
- package/src/charts/pie/index.ts +303 -0
- package/src/charts/pie/types.ts +21 -0
- package/src/charts/radar/index.ts +388 -0
- package/src/charts/radar/types.ts +22 -0
- package/src/charts/sankey/index.ts +497 -0
- package/src/charts/sankey/types.ts +28 -0
- package/src/charts/scatter/index.ts +284 -0
- package/src/charts/scatter/types.ts +11 -0
- package/src/charts/series.ts +63 -0
- package/src/charts/sparkline/index.ts +224 -0
- package/src/charts/sparkline/types.ts +16 -0
- package/src/charts/tooltip.ts +136 -0
- package/src/charts/treemap/index.ts +357 -0
- package/src/charts/treemap/types.ts +21 -0
- package/src/charts/types.ts +82 -0
- package/src/charts/utils.ts +309 -0
- package/src/charts/waterfall/index.ts +273 -0
- package/src/charts/waterfall/types.ts +25 -0
- package/src/charts/zoom.ts +115 -0
- package/src/components/context-menu/index.ts +183 -0
- package/src/components/copy-button/index.ts +97 -0
- package/src/components/data-table/export.ts +61 -0
- package/src/components/data-table/index.ts +647 -0
- package/src/components/data-table/renderers.ts +145 -0
- package/src/components/data-table/types.ts +41 -0
- package/src/components/detail-header/index.ts +201 -0
- package/src/components/index.ts +65 -0
- package/src/components/log-toolbar/index.ts +186 -0
- package/src/components/modal/index.ts +240 -0
- package/src/components/modal/types.ts +18 -0
- package/src/components/pagination/index.ts +130 -0
- package/src/components/search/command-palette.ts +242 -0
- package/src/components/search/index.ts +433 -0
- package/src/components/search/types.ts +37 -0
- package/src/components/split-pane/index.ts +370 -0
- package/src/components/split-pane/types.ts +21 -0
- package/src/components/status-bar/index.ts +112 -0
- package/src/components/tabs/index.ts +329 -0
- package/src/components/tabs/types.ts +20 -0
- package/src/components/toast/index.ts +412 -0
- package/src/components/toast/types.ts +20 -0
- package/src/components/tree-view/index.ts +692 -0
- package/src/components/tree-view/lazy.ts +24 -0
- package/src/components/tree-view/types.ts +25 -0
- package/src/consent/index.ts +218 -0
- package/src/crypto/crypto.test.ts +458 -0
- package/src/crypto/encoding-helpers.ts +44 -0
- package/src/crypto/encoding.ts +191 -0
- package/src/crypto/hybrid.ts +253 -0
- package/src/crypto/index.ts +292 -0
- package/src/crypto/keys.ts +299 -0
- package/src/crypto/symmetric.ts +227 -0
- package/src/crypto/types.ts +148 -0
- package/src/display/alert/index.ts +134 -0
- package/src/display/alert/types.ts +17 -0
- package/src/display/aspect-ratio/index.ts +57 -0
- package/src/display/avatar/avatar-group.ts +85 -0
- package/src/display/avatar/index.ts +187 -0
- package/src/display/avatar/types.ts +28 -0
- package/src/display/badge/index.ts +109 -0
- package/src/display/badge/presets.ts +46 -0
- package/src/display/badge/types.ts +20 -0
- package/src/display/card/index.ts +159 -0
- package/src/display/card/types.ts +16 -0
- package/src/display/code-block/index.ts +224 -0
- package/src/display/code-block/types.ts +14 -0
- package/src/display/empty-state/index.ts +111 -0
- package/src/display/empty-state/types.ts +16 -0
- package/src/display/hover-card/index.ts +317 -0
- package/src/display/hover-card/types.ts +15 -0
- package/src/display/index.ts +95 -0
- package/src/display/markdown-viewer/index.ts +137 -0
- package/src/display/markdown-viewer/parser.ts +423 -0
- package/src/display/markdown-viewer/types.ts +18 -0
- package/src/display/notification-center/index.ts +416 -0
- package/src/display/notification-center/types.ts +32 -0
- package/src/display/popover/index.ts +320 -0
- package/src/display/popover/types.ts +25 -0
- package/src/display/progress/index.ts +209 -0
- package/src/display/progress/types.ts +19 -0
- package/src/display/severity-indicator/index.ts +96 -0
- package/src/display/severity-indicator/types.ts +15 -0
- package/src/display/stat-card/index.ts +140 -0
- package/src/display/stat-card/types.ts +21 -0
- package/src/display/tooltip/index.ts +263 -0
- package/src/display/tooltip/types.ts +14 -0
- package/src/display/typography/index.ts +156 -0
- package/src/display/typography/types.ts +30 -0
- package/src/display/uptime-bar/index.ts +109 -0
- package/src/display/uptime-bar/types.ts +19 -0
- package/src/editors/base.ts +328 -0
- package/src/editors/code-editor.ts +350 -0
- package/src/editors/diff-viewer.ts +225 -0
- package/src/editors/index.ts +47 -0
- package/src/editors/json-viewer.ts +145 -0
- package/src/editors/languages/fluxl.ts +114 -0
- package/src/editors/languages/javascript.ts +17 -0
- package/src/editors/languages/json.ts +12 -0
- package/src/editors/languages/markdown.ts +12 -0
- package/src/editors/languages/python.ts +12 -0
- package/src/editors/languages/rust.ts +12 -0
- package/src/editors/languages/shell.ts +13 -0
- package/src/editors/languages/sql.ts +57 -0
- package/src/editors/languages/yaml.ts +120 -0
- package/src/editors/languages/yara.ts +154 -0
- package/src/editors/languages/yaral.ts +91 -0
- package/src/editors/log-viewer.ts +222 -0
- package/src/editors/types.ts +138 -0
- package/src/editors/yaml-editor.ts +36 -0
- package/src/form/calendar/index.ts +455 -0
- package/src/form/calendar/types.ts +24 -0
- package/src/form/color-picker/index.ts +1016 -0
- package/src/form/color-picker/types.ts +14 -0
- package/src/form/cron-editor/index.ts +583 -0
- package/src/form/cron-editor/parser.ts +411 -0
- package/src/form/cron-editor/types.ts +34 -0
- package/src/form/date-picker/index.ts +281 -0
- package/src/form/date-picker/range.ts +379 -0
- package/src/form/date-picker/time.ts +334 -0
- package/src/form/date-picker/types.ts +47 -0
- package/src/form/direction/index.ts +64 -0
- package/src/form/index.ts +48 -0
- package/src/form/tag-input/index.ts +458 -0
- package/src/form/tag-input/types.ts +23 -0
- package/src/icons/icons.test.ts +141 -0
- package/src/icons/index.ts +205 -0
- package/src/index.ts +211 -0
- package/src/layout/index.ts +662 -0
- package/src/navigation/breadcrumb/index.ts +175 -0
- package/src/navigation/breadcrumb/types.ts +20 -0
- package/src/navigation/drawer/index.ts +326 -0
- package/src/navigation/drawer/types.ts +21 -0
- package/src/navigation/dropdown-menu/index.ts +625 -0
- package/src/navigation/dropdown-menu/types.ts +43 -0
- package/src/navigation/index.ts +35 -0
- package/src/navigation/menubar/index.ts +412 -0
- package/src/navigation/menubar/types.ts +26 -0
- package/src/navigation/navigation-menu/index.ts +508 -0
- package/src/navigation/navigation-menu/types.ts +26 -0
- package/src/navigation/stepper/index.ts +270 -0
- package/src/navigation/stepper/types.ts +25 -0
- package/src/overlays/alert-dialog/index.ts +313 -0
- package/src/overlays/alert-dialog/types.ts +18 -0
- package/src/overlays/carousel/index.ts +452 -0
- package/src/overlays/carousel/types.ts +22 -0
- package/src/overlays/index.ts +16 -0
- package/src/overlays/sheet/index.ts +307 -0
- package/src/overlays/sheet/types.ts +21 -0
- package/src/passkey/index.ts +230 -0
- package/src/primitives/button/button-group.ts +47 -0
- package/src/primitives/button/index.ts +199 -0
- package/src/primitives/button/types.ts +29 -0
- package/src/primitives/button/variants.ts +24 -0
- package/src/primitives/checkbox/group.ts +113 -0
- package/src/primitives/checkbox/index.ts +127 -0
- package/src/primitives/checkbox/types.ts +34 -0
- package/src/primitives/field/index.ts +188 -0
- package/src/primitives/field/types.ts +14 -0
- package/src/primitives/index.ts +81 -0
- package/src/primitives/input/index.ts +175 -0
- package/src/primitives/input/input-group.ts +83 -0
- package/src/primitives/input/input-otp.ts +242 -0
- package/src/primitives/input/ip-input.ts +226 -0
- package/src/primitives/input/textarea.ts +179 -0
- package/src/primitives/input/types.ts +72 -0
- package/src/primitives/kbd/index.ts +62 -0
- package/src/primitives/label/index.ts +83 -0
- package/src/primitives/radio/index.ts +199 -0
- package/src/primitives/radio/types.ts +22 -0
- package/src/primitives/scroll-area/index.ts +77 -0
- package/src/primitives/select/combobox.ts +427 -0
- package/src/primitives/select/index.ts +526 -0
- package/src/primitives/select/native.ts +151 -0
- package/src/primitives/select/types.ts +52 -0
- package/src/primitives/separator/index.ts +41 -0
- package/src/primitives/skeleton/index.ts +58 -0
- package/src/primitives/slider/index.ts +333 -0
- package/src/primitives/slider/types.ts +19 -0
- package/src/primitives/spinner/index.ts +63 -0
- package/src/primitives/switch/index.ts +133 -0
- package/src/primitives/switch/types.ts +17 -0
- package/src/primitives/toggle/index.ts +129 -0
- package/src/primitives/toggle/toggle-group.ts +209 -0
- package/src/primitives/toggle/types.ts +39 -0
- package/src/primitives/utils.ts +24 -0
- package/src/react/brand/index.tsx +115 -0
- package/src/react/index.ts +5 -0
- package/src/react/primitives/alert-dialog.tsx +133 -0
- package/src/react/primitives/alert.tsx +96 -0
- package/src/react/primitives/animated-counter.tsx +199 -0
- package/src/react/primitives/aspect-ratio.tsx +23 -0
- package/src/react/primitives/attack-path.tsx +238 -0
- package/src/react/primitives/avatar.tsx +190 -0
- package/src/react/primitives/badge.tsx +41 -0
- package/src/react/primitives/breadcrumb.tsx +110 -0
- package/src/react/primitives/button.tsx +115 -0
- package/src/react/primitives/calendar.tsx +289 -0
- package/src/react/primitives/card.tsx +67 -0
- package/src/react/primitives/carousel.tsx +219 -0
- package/src/react/primitives/chart-area.tsx +34 -0
- package/src/react/primitives/chart-bar.tsx +34 -0
- package/src/react/primitives/chart-candlestick.tsx +35 -0
- package/src/react/primitives/chart-funnel.tsx +33 -0
- package/src/react/primitives/chart-gauge.tsx +44 -0
- package/src/react/primitives/chart-heatmap.tsx +33 -0
- package/src/react/primitives/chart-line.tsx +34 -0
- package/src/react/primitives/chart-pie.tsx +33 -0
- package/src/react/primitives/chart-radar.tsx +33 -0
- package/src/react/primitives/chart-sankey.tsx +33 -0
- package/src/react/primitives/chart-scatter.tsx +34 -0
- package/src/react/primitives/chart-sparkline.tsx +32 -0
- package/src/react/primitives/chart-treemap.tsx +33 -0
- package/src/react/primitives/chart-waterfall.tsx +33 -0
- package/src/react/primitives/checkbox.tsx +50 -0
- package/src/react/primitives/code-block.tsx +117 -0
- package/src/react/primitives/code-viewer.tsx +307 -0
- package/src/react/primitives/collapsible.tsx +118 -0
- package/src/react/primitives/color-picker.tsx +461 -0
- package/src/react/primitives/context-menu.tsx +261 -0
- package/src/react/primitives/copy-button.tsx +116 -0
- package/src/react/primitives/cron-editor.tsx +575 -0
- package/src/react/primitives/cvss-badge.tsx +112 -0
- package/src/react/primitives/data-grid.tsx +1269 -0
- package/src/react/primitives/data-table.tsx +300 -0
- package/src/react/primitives/date-picker.tsx +659 -0
- package/src/react/primitives/detection-status.tsx +400 -0
- package/src/react/primitives/dialog.tsx +127 -0
- package/src/react/primitives/direction.tsx +74 -0
- package/src/react/primitives/drawer.tsx +140 -0
- package/src/react/primitives/dropdown-menu.tsx +87 -0
- package/src/react/primitives/empty-state.tsx +64 -0
- package/src/react/primitives/error-boundary.tsx +40 -0
- package/src/react/primitives/field.tsx +59 -0
- package/src/react/primitives/file-tree.tsx +368 -0
- package/src/react/primitives/flow-diagram.tsx +78 -0
- package/src/react/primitives/heatmap-legend.tsx +51 -0
- package/src/react/primitives/heatmap-toolbar.tsx +78 -0
- package/src/react/primitives/hover-card.tsx +174 -0
- package/src/react/primitives/index.ts +294 -0
- package/src/react/primitives/input.tsx +35 -0
- package/src/react/primitives/json-path-browser.tsx +397 -0
- package/src/react/primitives/kanban.tsx +421 -0
- package/src/react/primitives/kbd.tsx +33 -0
- package/src/react/primitives/label.tsx +25 -0
- package/src/react/primitives/map.tsx +91 -0
- package/src/react/primitives/markdown-viewer.tsx +256 -0
- package/src/react/primitives/menubar.tsx +248 -0
- package/src/react/primitives/mermaid-diagram.tsx +76 -0
- package/src/react/primitives/mitre-matrix.tsx +203 -0
- package/src/react/primitives/modal.tsx +191 -0
- package/src/react/primitives/navigation-menu.tsx +144 -0
- package/src/react/primitives/network-graph.tsx +95 -0
- package/src/react/primitives/notification-center.tsx +229 -0
- package/src/react/primitives/pagination.tsx +147 -0
- package/src/react/primitives/popover.tsx +247 -0
- package/src/react/primitives/progress.tsx +187 -0
- package/src/react/primitives/radio-group.tsx +44 -0
- package/src/react/primitives/ripple.tsx +145 -0
- package/src/react/primitives/rule-editor.tsx +385 -0
- package/src/react/primitives/scroll-area.tsx +54 -0
- package/src/react/primitives/search.tsx +573 -0
- package/src/react/primitives/select.tsx +218 -0
- package/src/react/primitives/separator.tsx +27 -0
- package/src/react/primitives/severity-indicator.tsx +110 -0
- package/src/react/primitives/sheet.tsx +137 -0
- package/src/react/primitives/skeleton.tsx +15 -0
- package/src/react/primitives/slide-panel.tsx +137 -0
- package/src/react/primitives/slider.tsx +51 -0
- package/src/react/primitives/spinner.tsx +39 -0
- package/src/react/primitives/split-pane.tsx +160 -0
- package/src/react/primitives/stat-card.tsx +140 -0
- package/src/react/primitives/status-bar.tsx +81 -0
- package/src/react/primitives/stepper.tsx +162 -0
- package/src/react/primitives/switch.tsx +47 -0
- package/src/react/primitives/table.tsx +90 -0
- package/src/react/primitives/tabs.tsx +52 -0
- package/src/react/primitives/tag-input.tsx +371 -0
- package/src/react/primitives/terminal.tsx +228 -0
- package/src/react/primitives/textarea.tsx +18 -0
- package/src/react/primitives/timeline.tsx +316 -0
- package/src/react/primitives/toast.tsx +361 -0
- package/src/react/primitives/toggle.tsx +107 -0
- package/src/react/primitives/tooltip.tsx +64 -0
- package/src/react/primitives/tree-view.tsx +306 -0
- package/src/react/primitives/typography.tsx +171 -0
- package/src/react/primitives/uptime-bar.tsx +93 -0
- package/src/react/primitives/utils.ts +6 -0
- package/src/react/primitives/vulnerability-card.tsx +297 -0
- package/src/react/theme-toggle/index.tsx +123 -0
- package/src/react/threat-visuals/index.tsx +200 -0
- package/src/react/topology/__tests__/topology.test.tsx +716 -0
- package/src/react/topology/edges.tsx +77 -0
- package/src/react/topology/index.ts +34 -0
- package/src/react/topology/layouts.ts +473 -0
- package/src/react/topology/logos.tsx +328 -0
- package/src/react/topology/nodes.tsx +404 -0
- package/src/react/topology/safe-handle.tsx +35 -0
- package/src/react/topology/styles.ts +47 -0
- package/src/security/attack-path/index.ts +202 -0
- package/src/security/attack-path/types.ts +37 -0
- package/src/security/cvss-badge/index.ts +145 -0
- package/src/security/cvss-badge/types.ts +14 -0
- package/src/security/detection-status/index.ts +420 -0
- package/src/security/detection-status/types.ts +24 -0
- package/src/security/index.ts +24 -0
- package/src/security/mitre-matrix/index.ts +209 -0
- package/src/security/mitre-matrix/types.ts +23 -0
- package/src/security/vulnerability-card/index.ts +320 -0
- package/src/security/vulnerability-card/types.ts +34 -0
- package/src/services/api.ts +181 -0
- package/src/services/index.ts +23 -0
- package/src/services/keybindings.ts +271 -0
- package/src/services/router.ts +578 -0
- package/src/services/sse.ts +148 -0
- package/src/services/storage.ts +88 -0
- package/src/sidebar/badge.ts +72 -0
- package/src/sidebar/component.ts +223 -0
- package/src/sidebar/enhance.ts +289 -0
- package/src/sidebar/index.ts +253 -0
- package/src/sidebar/types.ts +43 -0
- package/src/styles/appearance.css +325 -0
- package/src/styles/auth.css +318 -0
- package/src/styles/breakpoints.css +346 -0
- package/src/styles/charts/charts.css +140 -0
- package/src/styles/components/context-menu.css +180 -0
- package/src/styles/components/data-grid.css +635 -0
- package/src/styles/components/data-table.css +276 -0
- package/src/styles/components/editors.css +265 -0
- package/src/styles/components/modal.css +246 -0
- package/src/styles/components/pagination.css +158 -0
- package/src/styles/components/search.css +369 -0
- package/src/styles/components/split-pane.css +174 -0
- package/src/styles/components/status-bar.css +198 -0
- package/src/styles/components/tabs.css +201 -0
- package/src/styles/components/toast.css +235 -0
- package/src/styles/components/tree-view.css +225 -0
- package/src/styles/consent.css +282 -0
- package/src/styles/display/alert.css +136 -0
- package/src/styles/display/aspect-ratio.css +15 -0
- package/src/styles/display/avatar.css +190 -0
- package/src/styles/display/badge.css +148 -0
- package/src/styles/display/card.css +66 -0
- package/src/styles/display/code-block.css +99 -0
- package/src/styles/display/empty-state.css +37 -0
- package/src/styles/display/hover-card.css +70 -0
- package/src/styles/display/markdown-viewer.css +145 -0
- package/src/styles/display/notification-center.css +272 -0
- package/src/styles/display/popover.css +29 -0
- package/src/styles/display/progress.css +129 -0
- package/src/styles/display/severity-indicator.css +96 -0
- package/src/styles/display/stat-card.css +90 -0
- package/src/styles/display/tooltip.css +58 -0
- package/src/styles/display/typography.css +129 -0
- package/src/styles/display/uptime-bar.css +64 -0
- package/src/styles/form/calendar.css +240 -0
- package/src/styles/form/color-picker.css +239 -0
- package/src/styles/form/cron-editor.css +333 -0
- package/src/styles/form/date-picker.css +378 -0
- package/src/styles/form/tag-input.css +219 -0
- package/src/styles/index.css +110 -0
- package/src/styles/layout.css +753 -0
- package/src/styles/navigation/breadcrumb.css +100 -0
- package/src/styles/navigation/drawer.css +143 -0
- package/src/styles/navigation/dropdown-menu.css +193 -0
- package/src/styles/navigation/menubar.css +208 -0
- package/src/styles/navigation/navigation-menu.css +260 -0
- package/src/styles/navigation/stepper.css +199 -0
- package/src/styles/overlays/alert-dialog.css +205 -0
- package/src/styles/overlays/carousel.css +147 -0
- package/src/styles/overlays/sheet.css +206 -0
- package/src/styles/primitives/button.css +277 -0
- package/src/styles/primitives/checkbox.css +126 -0
- package/src/styles/primitives/field.css +48 -0
- package/src/styles/primitives/input.css +331 -0
- package/src/styles/primitives/kbd.css +32 -0
- package/src/styles/primitives/label.css +18 -0
- package/src/styles/primitives/radio.css +109 -0
- package/src/styles/primitives/scroll-area.css +54 -0
- package/src/styles/primitives/select.css +354 -0
- package/src/styles/primitives/separator.css +20 -0
- package/src/styles/primitives/skeleton.css +35 -0
- package/src/styles/primitives/slider.css +121 -0
- package/src/styles/primitives/spinner.css +56 -0
- package/src/styles/primitives/switch.css +131 -0
- package/src/styles/primitives/toggle.css +157 -0
- package/src/styles/react-threat-visuals.css +568 -0
- package/src/styles/security/attack-path.css +192 -0
- package/src/styles/security/cvss-badge.css +136 -0
- package/src/styles/security/detection-status.css +217 -0
- package/src/styles/security/mitre-matrix.css +203 -0
- package/src/styles/security/vulnerability-card.css +294 -0
- package/src/styles/sidebar.css +1194 -0
- package/src/styles/tokens.css +392 -0
- package/src/styles/ui.css +442 -0
- package/src/styles/utilities.css +43 -0
- package/src/styles/visualization/file-tree.css +179 -0
- package/src/styles/visualization/flow-diagram.css +163 -0
- package/src/styles/visualization/json-path-browser.css +275 -0
- package/src/styles/visualization/kanban.css +614 -0
- package/src/styles/visualization/map.css +205 -0
- package/src/styles/visualization/mermaid-diagram.css +172 -0
- package/src/styles/visualization/network-graph.css +169 -0
- package/src/styles/visualization/rule-editor.css +280 -0
- package/src/styles/visualization/terminal.css +133 -0
- package/src/styles/visualization/timeline.css +246 -0
- package/src/ui/index.ts +414 -0
- package/src/ui/ui.test.ts +83 -0
- package/src/utils/a11y.ts +566 -0
- package/src/utils/date.ts +90 -0
- package/src/utils/errors.ts +44 -0
- package/src/utils/index.ts +154 -0
- package/src/utils/keyboard.ts +551 -0
- package/src/utils/registry.ts +41 -0
- package/src/utils/sanitize.ts +23 -0
- package/src/utils/selection.ts +29 -0
- package/src/utils/sorting.ts +73 -0
- package/src/utils/touch.ts +643 -0
- package/src/utils/validation.ts +66 -0
- package/src/visualization/file-tree/index.ts +500 -0
- package/src/visualization/file-tree/types.ts +29 -0
- package/src/visualization/flow-diagram/index.ts +693 -0
- package/src/visualization/flow-diagram/types.ts +39 -0
- package/src/visualization/index.ts +53 -0
- package/src/visualization/json-path-browser/index.ts +502 -0
- package/src/visualization/json-path-browser/types.ts +15 -0
- package/src/visualization/kanban/__tests__/kanban.test.ts +1440 -0
- package/src/visualization/kanban/index.ts +785 -0
- package/src/visualization/kanban/types.ts +93 -0
- package/src/visualization/map/index.ts +623 -0
- package/src/visualization/map/types.ts +37 -0
- package/src/visualization/mermaid-diagram/index.ts +404 -0
- package/src/visualization/mermaid-diagram/types.ts +50 -0
- package/src/visualization/network-graph/index.ts +690 -0
- package/src/visualization/network-graph/types.ts +39 -0
- package/src/visualization/rule-editor/index.ts +562 -0
- package/src/visualization/rule-editor/types.ts +34 -0
- package/src/visualization/terminal/index.ts +403 -0
- package/src/visualization/terminal/types.ts +16 -0
- package/src/visualization/timeline/index.ts +341 -0
- package/src/visualization/timeline/types.ts +25 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/charts/radar/index.ts"],"sourcesContent":["/**\n * Radar (spider) chart using Canvas 2D\n * @countermeasure/web-components/charts/radar\n */\n\nimport { InteractiveChart } from '../interactive'\nimport type { LegendItem } from '../types'\nimport { defaultColors, hexToRgba, formatNumber } from '../utils'\nimport type { RadarChartConfig, RadarDataset } from './types'\n\nconst TWO_PI = Math.PI * 2\nconst GRID_COLOR = '#e2e8f0'\nconst SPOKE_COLOR = '#cbd5e1'\nconst LABEL_COLOR = '#334155'\nconst LABEL_FONT = '11px system-ui, sans-serif'\nconst DOT_RADIUS = 3.5\nconst LABEL_OFFSET = 14\n\nexport class RadarChart extends InteractiveChart {\n private labels: string[]\n private datasets: RadarDataset[]\n private colors: string[]\n private levels: number\n private showDots: boolean\n private fillOpacity: number\n private maxValue: number | undefined\n\n private activeDatasets: boolean[]\n private hoveredDataset = -1\n private hoveredAxis = -1\n\n constructor(config: RadarChartConfig) {\n super(config)\n this.labels = config.labels\n this.datasets = config.datasets\n this.colors = defaultColors()\n this.levels = config.levels ?? 5\n this.showDots = config.showDots ?? true\n this.fillOpacity = config.fillOpacity ?? 0.2\n this.maxValue = config.max\n this.activeDatasets = config.datasets.map(() => true)\n\n if (this.legend !== null) {\n this.legend.onToggle((index, active) => {\n if (index < this.activeDatasets.length) {\n this.activeDatasets[index] = active\n }\n this.render()\n })\n }\n\n this.render()\n }\n\n /** Replace datasets and re-render */\n update(datasets: RadarDataset[]): void {\n this.datasets = datasets\n this.activeDatasets = datasets.map(() => true)\n this.render()\n }\n\n render(): void {\n this.clear()\n\n const plot = this.plotArea\n const cx = plot.x + plot.width / 2\n const cy = plot.y + plot.height / 2\n const radius = Math.min(plot.width, plot.height) / 2 - LABEL_OFFSET - 4\n const axisCount = this.labels.length\n if (axisCount < 3) return\n\n const computedMax = this.computeMax()\n if (computedMax <= 0) return\n\n const angleStep = TWO_PI / axisCount\n\n // Draw concentric rings\n this.drawLevels(cx, cy, radius, axisCount, angleStep)\n\n // Draw spokes\n this.drawSpokes(cx, cy, radius, axisCount, angleStep)\n\n // Draw axis labels\n this.drawLabels(cx, cy, radius, axisCount, angleStep)\n\n // Draw datasets\n for (let di = 0; di < this.datasets.length; di++) {\n const ds = this.datasets[di]\n if (ds === undefined) continue\n const isActive = this.activeDatasets[di] ?? true\n if (!isActive) continue\n\n const color = ds.color ?? this.colors[di % this.colors.length] ?? '#3b82f6'\n const opacity = ds.fillOpacity ?? this.fillOpacity\n const isHovered = di === this.hoveredDataset\n\n this.drawDataset(\n cx,\n cy,\n radius,\n computedMax,\n axisCount,\n angleStep,\n ds,\n color,\n opacity,\n isHovered\n )\n }\n\n this.updateLegend()\n }\n\n private computeMax(): number {\n if (this.maxValue !== undefined) return this.maxValue\n\n let max = 0\n for (let di = 0; di < this.datasets.length; di++) {\n const ds = this.datasets[di]\n if (ds === undefined) continue\n const isActive = this.activeDatasets[di] ?? true\n if (!isActive) continue\n\n for (const v of ds.values) {\n if (v > max) {\n max = v\n }\n }\n }\n return max > 0 ? max : 1\n }\n\n private drawLevels(\n cx: number,\n cy: number,\n radius: number,\n axisCount: number,\n angleStep: number\n ): void {\n this.ctx.save()\n this.ctx.strokeStyle = GRID_COLOR\n this.ctx.lineWidth = 0.75\n\n for (let level = 1; level <= this.levels; level++) {\n const r = (radius / this.levels) * level\n\n this.ctx.beginPath()\n for (let i = 0; i <= axisCount; i++) {\n const angle = i * angleStep - Math.PI / 2\n const x = cx + Math.cos(angle) * r\n const y = cy + Math.sin(angle) * r\n if (i === 0) {\n this.ctx.moveTo(x, y)\n } else {\n this.ctx.lineTo(x, y)\n }\n }\n this.ctx.closePath()\n this.ctx.stroke()\n }\n\n this.ctx.restore()\n }\n\n private drawSpokes(\n cx: number,\n cy: number,\n radius: number,\n axisCount: number,\n angleStep: number\n ): void {\n this.ctx.save()\n this.ctx.strokeStyle = SPOKE_COLOR\n this.ctx.lineWidth = 0.75\n\n for (let i = 0; i < axisCount; i++) {\n const angle = i * angleStep - Math.PI / 2\n this.ctx.beginPath()\n this.ctx.moveTo(cx, cy)\n this.ctx.lineTo(cx + Math.cos(angle) * radius, cy + Math.sin(angle) * radius)\n this.ctx.stroke()\n }\n\n this.ctx.restore()\n }\n\n private drawLabels(\n cx: number,\n cy: number,\n radius: number,\n axisCount: number,\n angleStep: number\n ): void {\n this.ctx.save()\n this.ctx.fillStyle = LABEL_COLOR\n this.ctx.font = LABEL_FONT\n this.ctx.textBaseline = 'middle'\n\n for (let i = 0; i < axisCount; i++) {\n const label = this.labels[i]\n if (label === undefined) continue\n\n const angle = i * angleStep - Math.PI / 2\n const lx = cx + Math.cos(angle) * (radius + LABEL_OFFSET)\n const ly = cy + Math.sin(angle) * (radius + LABEL_OFFSET)\n\n // Align based on position\n const cos = Math.cos(angle)\n if (Math.abs(cos) < 0.01) {\n this.ctx.textAlign = 'center'\n } else if (cos > 0) {\n this.ctx.textAlign = 'left'\n } else {\n this.ctx.textAlign = 'right'\n }\n\n this.ctx.fillText(label, lx, ly)\n }\n\n this.ctx.restore()\n }\n\n private drawDataset(\n cx: number,\n cy: number,\n radius: number,\n maxVal: number,\n axisCount: number,\n angleStep: number,\n ds: RadarDataset,\n color: string,\n opacity: number,\n isHovered: boolean\n ): void {\n const points: { x: number; y: number }[] = []\n\n for (let i = 0; i < axisCount; i++) {\n const val = ds.values[i] ?? 0\n const ratio = val / maxVal\n const angle = i * angleStep - Math.PI / 2\n const px = cx + Math.cos(angle) * radius * ratio\n const py = cy + Math.sin(angle) * radius * ratio\n points.push({ x: px, y: py })\n }\n\n if (points.length === 0) return\n\n // Fill polygon\n this.ctx.save()\n this.ctx.beginPath()\n const firstPoint = points[0]\n if (firstPoint !== undefined) {\n this.ctx.moveTo(firstPoint.x, firstPoint.y)\n }\n for (let i = 1; i < points.length; i++) {\n const p = points[i]\n if (p !== undefined) {\n this.ctx.lineTo(p.x, p.y)\n }\n }\n this.ctx.closePath()\n this.ctx.fillStyle = hexToRgba(color, isHovered ? opacity + 0.15 : opacity)\n this.ctx.fill()\n\n // Stroke outline\n this.ctx.strokeStyle = color\n this.ctx.lineWidth = isHovered ? 2.5 : 1.5\n this.ctx.stroke()\n this.ctx.restore()\n\n // Dots\n if (this.showDots) {\n this.ctx.save()\n for (const p of points) {\n this.ctx.beginPath()\n this.ctx.arc(p.x, p.y, DOT_RADIUS, 0, TWO_PI)\n this.ctx.fillStyle = color\n this.ctx.fill()\n this.ctx.strokeStyle = '#ffffff'\n this.ctx.lineWidth = 1\n this.ctx.stroke()\n }\n this.ctx.restore()\n }\n }\n\n private updateLegend(): void {\n if (this.legend === null) return\n const items: LegendItem[] = []\n for (let di = 0; di < this.datasets.length; di++) {\n const ds = this.datasets[di]\n if (ds === undefined) continue\n const color = ds.color ?? this.colors[di % this.colors.length] ?? '#3b82f6'\n const active = this.activeDatasets[di] ?? true\n items.push({ label: ds.label, color, active })\n }\n this.legend.update(items)\n }\n\n protected handleMouseMove(e: MouseEvent): void {\n const rect = this.canvas.getBoundingClientRect()\n const mx = e.clientX - rect.left\n const my = e.clientY - rect.top\n\n const plot = this.plotArea\n const cx = plot.x + plot.width / 2\n const cy = plot.y + plot.height / 2\n const radius = Math.min(plot.width, plot.height) / 2 - LABEL_OFFSET - 4\n const axisCount = this.labels.length\n if (axisCount < 3) return\n\n const computedMax = this.computeMax()\n if (computedMax <= 0) return\n\n const angleStep = TWO_PI / axisCount\n\n // Find closest axis\n let closestAxis = -1\n let closestDist = Infinity\n\n for (let i = 0; i < axisCount; i++) {\n const angle = i * angleStep - Math.PI / 2\n const axX = cx + Math.cos(angle) * radius\n const axY = cy + Math.sin(angle) * radius\n const dist = Math.sqrt((mx - axX) ** 2 + (my - axY) ** 2)\n if (dist < closestDist) {\n closestDist = dist\n closestAxis = i\n }\n }\n\n // Find closest dataset by checking distance to polygon points\n let closestDs = -1\n let dsMinDist = 30 // pixel threshold\n\n for (let di = 0; di < this.datasets.length; di++) {\n const ds = this.datasets[di]\n if (ds === undefined) continue\n const isActive = this.activeDatasets[di] ?? true\n if (!isActive) continue\n\n for (let i = 0; i < axisCount; i++) {\n const val = ds.values[i] ?? 0\n const ratio = val / computedMax\n const angle = i * angleStep - Math.PI / 2\n const px = cx + Math.cos(angle) * radius * ratio\n const py = cy + Math.sin(angle) * radius * ratio\n const dist = Math.sqrt((mx - px) ** 2 + (my - py) ** 2)\n if (dist < dsMinDist) {\n dsMinDist = dist\n closestDs = di\n }\n }\n }\n\n const needsRedraw = closestDs !== this.hoveredDataset || closestAxis !== this.hoveredAxis\n this.hoveredDataset = closestDs\n this.hoveredAxis = closestAxis\n\n if (needsRedraw) {\n this.render()\n }\n\n // Show tooltip\n if (closestDs !== -1 && closestAxis !== -1 && this.tooltip !== null) {\n const ds = this.datasets[closestDs]\n const label = this.labels[closestAxis]\n if (ds !== undefined && label !== undefined) {\n const val = ds.values[closestAxis] ?? 0\n const content = `<strong>${ds.label}</strong><br/>${label}: ${formatNumber(val)}`\n this.tooltip.show(mx, my, content)\n }\n } else if (this.tooltip !== null) {\n this.tooltip.hide()\n }\n }\n\n protected handleMouseLeave(): void {\n if (this.hoveredDataset !== -1 || this.hoveredAxis !== -1) {\n this.hoveredDataset = -1\n this.hoveredAxis = -1\n if (this.tooltip !== null) {\n this.tooltip.hide()\n }\n this.render()\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { InteractiveChartConfig } from '../types';
|
|
2
|
+
export interface RadarDataset {
|
|
3
|
+
label: string;
|
|
4
|
+
values: number[];
|
|
5
|
+
color?: string;
|
|
6
|
+
fillOpacity?: number;
|
|
7
|
+
}
|
|
8
|
+
export interface RadarChartConfig extends InteractiveChartConfig {
|
|
9
|
+
labels: string[];
|
|
10
|
+
datasets: RadarDataset[];
|
|
11
|
+
levels?: number;
|
|
12
|
+
showDots?: boolean;
|
|
13
|
+
fillOpacity?: number;
|
|
14
|
+
max?: number;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/charts/radar/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,sBAAsB;IAC9D,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseChart } from '../base';
|
|
2
|
+
import { SankeyChartConfig, SankeyNode, SankeyLink } from './types';
|
|
3
|
+
export declare class SankeyChart extends BaseChart {
|
|
4
|
+
private nodes;
|
|
5
|
+
private links;
|
|
6
|
+
private nodeWidth;
|
|
7
|
+
private nodePadding;
|
|
8
|
+
private linkOpacity;
|
|
9
|
+
private tooltipEnabled;
|
|
10
|
+
private tooltipFormat;
|
|
11
|
+
private tooltip;
|
|
12
|
+
private computedNodes;
|
|
13
|
+
private computedLinks;
|
|
14
|
+
private colors;
|
|
15
|
+
private handleMouseMove;
|
|
16
|
+
private handleMouseLeave;
|
|
17
|
+
private hoveredNodeId;
|
|
18
|
+
private hoveredLinkIndex;
|
|
19
|
+
constructor(config: SankeyChartConfig);
|
|
20
|
+
private computeLayout;
|
|
21
|
+
private setupTooltip;
|
|
22
|
+
private isPointOnLink;
|
|
23
|
+
private solveBezierT;
|
|
24
|
+
private cubicBezier;
|
|
25
|
+
render(): void;
|
|
26
|
+
update(nodes: SankeyNode[], links: SankeyLink[]): void;
|
|
27
|
+
destroy(): void;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/charts/sankey/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAkCxE,qBAAa,WAAY,SAAQ,SAAS;IACxC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAmE;IACxF,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,gBAAgB,CAAqB;IAC7C,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,gBAAgB,CAAQ;gBAEpB,MAAM,EAAE,iBAAiB;IA0BrC,OAAO,CAAC,aAAa;IAoLrB,OAAO,CAAC,YAAY;IAqFpB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,WAAW;IAKZ,MAAM,IAAI,IAAI;IAwFd,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI;IAQ7C,OAAO,IAAI,IAAI;CAUhC"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { BaseChart as e } from "../base.js";
|
|
2
|
+
import { ChartTooltip as t } from "../tooltip.js";
|
|
3
|
+
import { defaultColors as n, formatNumber as r, hexToRgba as i } from "../utils.js";
|
|
4
|
+
//#region src/charts/sankey/index.ts
|
|
5
|
+
var a = 20, o = 10, s = .4, c = "11px system-ui, sans-serif", l = "#334155", u = class extends e {
|
|
6
|
+
nodes;
|
|
7
|
+
links;
|
|
8
|
+
nodeWidth;
|
|
9
|
+
nodePadding;
|
|
10
|
+
linkOpacity;
|
|
11
|
+
tooltipEnabled;
|
|
12
|
+
tooltipFormat;
|
|
13
|
+
tooltip;
|
|
14
|
+
computedNodes;
|
|
15
|
+
computedLinks;
|
|
16
|
+
colors;
|
|
17
|
+
handleMouseMove;
|
|
18
|
+
handleMouseLeave;
|
|
19
|
+
hoveredNodeId;
|
|
20
|
+
hoveredLinkIndex;
|
|
21
|
+
constructor(e) {
|
|
22
|
+
super(e), this.nodes = e.nodes, this.links = e.links, this.nodeWidth = e.nodeWidth ?? a, this.nodePadding = e.nodePadding ?? o, this.linkOpacity = e.linkOpacity ?? s, this.tooltipEnabled = e.tooltip?.enabled !== !1, this.tooltipFormat = e.tooltip?.format ?? null, this.tooltip = null, this.computedNodes = [], this.computedLinks = [], this.colors = n(), this.handleMouseMove = null, this.handleMouseLeave = null, this.hoveredNodeId = null, this.hoveredLinkIndex = -1, this.tooltipEnabled && this.setupTooltip(), this.render();
|
|
23
|
+
}
|
|
24
|
+
computeLayout() {
|
|
25
|
+
let e = this.plotArea, t = /* @__PURE__ */ new Map();
|
|
26
|
+
for (let e = 0; e < this.nodes.length; e++) {
|
|
27
|
+
let n = this.nodes[e];
|
|
28
|
+
n !== void 0 && t.set(n.id, {
|
|
29
|
+
id: n.id,
|
|
30
|
+
label: n.label,
|
|
31
|
+
color: n.color ?? this.colors[e % this.colors.length] ?? "#3b82f6",
|
|
32
|
+
x: 0,
|
|
33
|
+
y: 0,
|
|
34
|
+
width: this.nodeWidth,
|
|
35
|
+
height: 0,
|
|
36
|
+
column: 0,
|
|
37
|
+
value: 0,
|
|
38
|
+
sourceLinks: [],
|
|
39
|
+
targetLinks: []
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
let n = /* @__PURE__ */ new Map();
|
|
43
|
+
for (let e of this.nodes) n.set(e.id, 0);
|
|
44
|
+
for (let e of this.links) {
|
|
45
|
+
let t = n.get(e.target);
|
|
46
|
+
t !== void 0 && n.set(e.target, t + 1);
|
|
47
|
+
}
|
|
48
|
+
let r = /* @__PURE__ */ new Set(), i = [];
|
|
49
|
+
for (let [e, t] of n) t === 0 && i.push({
|
|
50
|
+
id: e,
|
|
51
|
+
col: 0
|
|
52
|
+
});
|
|
53
|
+
if (i.length === 0 && this.nodes.length > 0) {
|
|
54
|
+
let e = this.nodes[0];
|
|
55
|
+
e !== void 0 && i.push({
|
|
56
|
+
id: e.id,
|
|
57
|
+
col: 0
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
let a = 0;
|
|
61
|
+
for (; i.length > 0;) {
|
|
62
|
+
let e = i.shift();
|
|
63
|
+
if (e === void 0 || r.has(e.id)) continue;
|
|
64
|
+
r.add(e.id);
|
|
65
|
+
let n = t.get(e.id);
|
|
66
|
+
n !== void 0 && (n.column = Math.max(n.column, e.col), n.column > a && (a = n.column));
|
|
67
|
+
for (let n of this.links) if (n.source === e.id && !r.has(n.target)) {
|
|
68
|
+
let r = t.get(n.target);
|
|
69
|
+
r !== void 0 && (r.column = Math.max(r.column, e.col + 1)), i.push({
|
|
70
|
+
id: n.target,
|
|
71
|
+
col: e.col + 1
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
for (let e of t.values()) e.column > a && (a = e.column);
|
|
76
|
+
for (let e of this.links) {
|
|
77
|
+
let n = t.get(e.source), r = t.get(e.target);
|
|
78
|
+
n !== void 0 && (n.value += e.value), r !== void 0 && (r.value += e.value);
|
|
79
|
+
}
|
|
80
|
+
for (let e of t.values()) {
|
|
81
|
+
let t = 0, n = 0;
|
|
82
|
+
for (let r of this.links) r.source === e.id && (t += r.value), r.target === e.id && (n += r.value);
|
|
83
|
+
e.value = Math.max(t, n);
|
|
84
|
+
}
|
|
85
|
+
let o = a > 0 ? (e.width - this.nodeWidth) / a : 0, s = /* @__PURE__ */ new Map();
|
|
86
|
+
for (let n of t.values()) {
|
|
87
|
+
n.x = e.x + n.column * o;
|
|
88
|
+
let t = s.get(n.column);
|
|
89
|
+
t === void 0 ? s.set(n.column, [n]) : t.push(n);
|
|
90
|
+
}
|
|
91
|
+
for (let t of s.values()) {
|
|
92
|
+
let n = t.reduce((e, t) => e + t.value, 0), r = this.nodePadding * Math.max(0, t.length - 1), i = e.height - r, a = e.y;
|
|
93
|
+
for (let e of t) {
|
|
94
|
+
let r = n > 0 ? e.value / n * i : i / t.length;
|
|
95
|
+
e.height = Math.max(1, r), e.y = a, a += e.height + this.nodePadding;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
this.computedLinks = [];
|
|
99
|
+
let c = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Map();
|
|
100
|
+
for (let e of this.links) {
|
|
101
|
+
let n = t.get(e.source), r = t.get(e.target);
|
|
102
|
+
if (n === void 0 || r === void 0) continue;
|
|
103
|
+
let i = n.value > 0 ? e.value / n.value * n.height : 0, a = c.get(n.id) ?? 0, o = l.get(r.id) ?? 0, s = {
|
|
104
|
+
source: n,
|
|
105
|
+
target: r,
|
|
106
|
+
value: e.value,
|
|
107
|
+
color: e.color ?? n.color,
|
|
108
|
+
sourceY: n.y + a + i / 2,
|
|
109
|
+
targetY: r.y + o + i / 2,
|
|
110
|
+
width: i
|
|
111
|
+
};
|
|
112
|
+
c.set(n.id, a + i), l.set(r.id, o + i), s.source.sourceLinks.push(s), s.target.targetLinks.push(s), this.computedLinks.push(s);
|
|
113
|
+
}
|
|
114
|
+
this.computedNodes = [...t.values()];
|
|
115
|
+
}
|
|
116
|
+
setupTooltip() {
|
|
117
|
+
this.tooltip = new t(this.container), this.handleMouseMove = (e) => {
|
|
118
|
+
let t = this.canvas.getBoundingClientRect(), n = e.clientX - t.left, i = e.clientY - t.top, a = null;
|
|
119
|
+
for (let e of this.computedNodes) if (n >= e.x && n <= e.x + e.width && i >= e.y && i <= e.y + e.height) {
|
|
120
|
+
a = e.id;
|
|
121
|
+
break;
|
|
122
|
+
}
|
|
123
|
+
let o = -1;
|
|
124
|
+
if (a === null) for (let e = 0; e < this.computedLinks.length; e++) {
|
|
125
|
+
let t = this.computedLinks[e];
|
|
126
|
+
if (t !== void 0 && this.isPointOnLink(n, i, t)) {
|
|
127
|
+
o = e;
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
let s = a !== this.hoveredNodeId || o !== this.hoveredLinkIndex;
|
|
132
|
+
if (this.hoveredNodeId = a, this.hoveredLinkIndex = o, s && this.render(), a !== null) {
|
|
133
|
+
let e = this.computedNodes.find((e) => e.id === a);
|
|
134
|
+
if (e !== void 0) {
|
|
135
|
+
let t;
|
|
136
|
+
t = this.tooltipFormat === null ? `<strong>${e.label}</strong><br/>Total: ${r(e.value)}` : this.tooltipFormat(e.value, e.label, ""), this.tooltip?.show(n, i, t);
|
|
137
|
+
}
|
|
138
|
+
} else if (o >= 0) {
|
|
139
|
+
let e = this.computedLinks[o];
|
|
140
|
+
if (e !== void 0) {
|
|
141
|
+
let t;
|
|
142
|
+
t = this.tooltipFormat === null ? `<strong>${e.source.label} → ${e.target.label}</strong><br/>Value: ${r(e.value)}` : this.tooltipFormat(e.value, e.source.label, e.target.label), this.tooltip?.show(n, i, t);
|
|
143
|
+
}
|
|
144
|
+
} else this.tooltip?.hide();
|
|
145
|
+
}, this.handleMouseLeave = () => {
|
|
146
|
+
(this.hoveredNodeId !== null || this.hoveredLinkIndex !== -1) && (this.hoveredNodeId = null, this.hoveredLinkIndex = -1, this.render()), this.tooltip?.hide();
|
|
147
|
+
}, this.canvas.addEventListener("mousemove", this.handleMouseMove), this.canvas.addEventListener("mouseleave", this.handleMouseLeave);
|
|
148
|
+
}
|
|
149
|
+
isPointOnLink(e, t, n) {
|
|
150
|
+
let r = n.source.x + n.source.width, i = n.target.x, a = n.width / 2;
|
|
151
|
+
if (e < r || e > i) return !1;
|
|
152
|
+
let o = r + (i - r) / 3, s = i - (i - r) / 3, c = this.solveBezierT(r, o, s, i, e), l = this.cubicBezier(n.sourceY, n.sourceY, n.targetY, n.targetY, c);
|
|
153
|
+
return Math.abs(t - l) <= a + 4;
|
|
154
|
+
}
|
|
155
|
+
solveBezierT(e, t, n, r, i) {
|
|
156
|
+
let a = e, o = r;
|
|
157
|
+
return o === a ? 0 : (i - a) / (o - a);
|
|
158
|
+
}
|
|
159
|
+
cubicBezier(e, t, n, r, i) {
|
|
160
|
+
let a = 1 - i;
|
|
161
|
+
return a * a * a * e + 3 * a * a * i * t + 3 * a * i * i * n + i * i * i * r;
|
|
162
|
+
}
|
|
163
|
+
render() {
|
|
164
|
+
this.clear(), this.computeLayout();
|
|
165
|
+
let { ctx: e } = this;
|
|
166
|
+
e.save();
|
|
167
|
+
for (let t = 0; t < this.computedLinks.length; t++) {
|
|
168
|
+
let n = this.computedLinks[t];
|
|
169
|
+
if (n === void 0) continue;
|
|
170
|
+
let r = this.hoveredNodeId !== null && (n.source.id === this.hoveredNodeId || n.target.id === this.hoveredNodeId), a = t === this.hoveredLinkIndex, o = r || a ? Math.min(this.linkOpacity * 2, .9) : this.linkOpacity, s = n.source.x + n.source.width, c = n.sourceY, l = n.target.x, u = n.targetY, d = s + (l - s) * .4, f = l - (l - s) * .4;
|
|
171
|
+
e.beginPath(), e.moveTo(s, c - n.width / 2), e.bezierCurveTo(d, c - n.width / 2, f, u - n.width / 2, l, u - n.width / 2), e.lineTo(l, u + n.width / 2), e.bezierCurveTo(f, u + n.width / 2, d, c + n.width / 2, s, c + n.width / 2), e.closePath(), e.fillStyle = i(n.color, o), e.fill();
|
|
172
|
+
}
|
|
173
|
+
e.restore(), e.save();
|
|
174
|
+
for (let t of this.computedNodes) {
|
|
175
|
+
let n = t.id === this.hoveredNodeId;
|
|
176
|
+
e.fillStyle = n ? i(t.color, .85) : t.color, e.fillRect(t.x, t.y, t.width, t.height), n && (e.strokeStyle = "#1e293b", e.lineWidth = 2, e.strokeRect(t.x, t.y, t.width, t.height)), e.fillStyle = l, e.font = c, e.textBaseline = "middle";
|
|
177
|
+
let r = t.y + t.height / 2;
|
|
178
|
+
t.column === 0 ? (e.textAlign = "right", e.fillText(t.label, t.x - 6, r)) : (e.textAlign = "left", e.fillText(t.label, t.x + t.width + 6, r));
|
|
179
|
+
}
|
|
180
|
+
e.restore();
|
|
181
|
+
}
|
|
182
|
+
update(e, t) {
|
|
183
|
+
this.nodes = e, this.links = t, this.hoveredNodeId = null, this.hoveredLinkIndex = -1, this.render();
|
|
184
|
+
}
|
|
185
|
+
destroy() {
|
|
186
|
+
this.handleMouseMove !== null && this.canvas.removeEventListener("mousemove", this.handleMouseMove), this.handleMouseLeave !== null && this.canvas.removeEventListener("mouseleave", this.handleMouseLeave), this.tooltip?.destroy(), super.destroy();
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
//#endregion
|
|
190
|
+
export { u as SankeyChart };
|
|
191
|
+
|
|
192
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/charts/sankey/index.ts"],"sourcesContent":["/**\n * Sankey diagram - flow visualization with nodes and curved links\n * @countermeasure/web-components/charts/sankey\n */\n\nimport { BaseChart } from '../base'\nimport type { SankeyChartConfig, SankeyNode, SankeyLink } from './types'\nimport { defaultColors, hexToRgba, formatNumber } from '../utils'\nimport { ChartTooltip } from '../tooltip'\n\nconst DEFAULT_NODE_WIDTH = 20\nconst DEFAULT_NODE_PADDING = 10\nconst DEFAULT_LINK_OPACITY = 0.4\nconst LABEL_FONT = '11px system-ui, sans-serif'\nconst LABEL_COLOR = '#334155'\n\ninterface ComputedNode {\n id: string\n label: string\n color: string\n x: number\n y: number\n width: number\n height: number\n column: number\n value: number\n sourceLinks: ComputedLink[]\n targetLinks: ComputedLink[]\n}\n\ninterface ComputedLink {\n source: ComputedNode\n target: ComputedNode\n value: number\n color: string\n sourceY: number\n targetY: number\n width: number\n}\n\nexport class SankeyChart extends BaseChart {\n private nodes: SankeyNode[]\n private links: SankeyLink[]\n private nodeWidth: number\n private nodePadding: number\n private linkOpacity: number\n private tooltipEnabled: boolean\n private tooltipFormat: ((value: number, label: string, series: string) => string) | null\n private tooltip: ChartTooltip | null\n private computedNodes: ComputedNode[]\n private computedLinks: ComputedLink[]\n private colors: string[]\n private handleMouseMove: ((e: MouseEvent) => void) | null\n private handleMouseLeave: (() => void) | null\n private hoveredNodeId: string | null\n private hoveredLinkIndex: number\n\n constructor(config: SankeyChartConfig) {\n super(config)\n\n this.nodes = config.nodes\n this.links = config.links\n this.nodeWidth = config.nodeWidth ?? DEFAULT_NODE_WIDTH\n this.nodePadding = config.nodePadding ?? DEFAULT_NODE_PADDING\n this.linkOpacity = config.linkOpacity ?? DEFAULT_LINK_OPACITY\n this.tooltipEnabled = config.tooltip?.enabled !== false\n this.tooltipFormat = config.tooltip?.format ?? null\n this.tooltip = null\n this.computedNodes = []\n this.computedLinks = []\n this.colors = defaultColors()\n this.handleMouseMove = null\n this.handleMouseLeave = null\n this.hoveredNodeId = null\n this.hoveredLinkIndex = -1\n\n if (this.tooltipEnabled) {\n this.setupTooltip()\n }\n\n this.render()\n }\n\n private computeLayout(): void {\n const plot = this.plotArea\n\n // Build adjacency and compute columns via topological ordering\n const nodeMap = new Map<string, ComputedNode>()\n for (let i = 0; i < this.nodes.length; i++) {\n const node = this.nodes[i]\n if (node === undefined) continue\n nodeMap.set(node.id, {\n id: node.id,\n label: node.label,\n color: node.color ?? this.colors[i % this.colors.length] ?? '#3b82f6',\n x: 0,\n y: 0,\n width: this.nodeWidth,\n height: 0,\n column: 0,\n value: 0,\n sourceLinks: [],\n targetLinks: [],\n })\n }\n\n // Compute columns: depth from sources\n const incomingCounts = new Map<string, number>()\n for (const node of this.nodes) {\n incomingCounts.set(node.id, 0)\n }\n for (const link of this.links) {\n const current = incomingCounts.get(link.target)\n if (current !== undefined) {\n incomingCounts.set(link.target, current + 1)\n }\n }\n\n // BFS to assign columns\n const visited = new Set<string>()\n const queue: { id: string; col: number }[] = []\n\n for (const [id, count] of incomingCounts) {\n if (count === 0) {\n queue.push({ id, col: 0 })\n }\n }\n\n // If no sources found, start from first node\n if (queue.length === 0 && this.nodes.length > 0) {\n const firstNode = this.nodes[0]\n if (firstNode !== undefined) {\n queue.push({ id: firstNode.id, col: 0 })\n }\n }\n\n let maxCol = 0\n while (queue.length > 0) {\n const item = queue.shift()\n if (item === undefined) continue\n\n if (visited.has(item.id)) continue\n visited.add(item.id)\n\n const node = nodeMap.get(item.id)\n if (node !== undefined) {\n node.column = Math.max(node.column, item.col)\n if (node.column > maxCol) maxCol = node.column\n }\n\n // Find outgoing links\n for (const link of this.links) {\n if (link.source === item.id && !visited.has(link.target)) {\n const targetNode = nodeMap.get(link.target)\n if (targetNode !== undefined) {\n targetNode.column = Math.max(targetNode.column, item.col + 1)\n }\n queue.push({ id: link.target, col: item.col + 1 })\n }\n }\n }\n\n // Update maxCol after BFS\n for (const node of nodeMap.values()) {\n if (node.column > maxCol) maxCol = node.column\n }\n\n // Compute node values (max of incoming/outgoing link totals)\n for (const link of this.links) {\n const sourceNode = nodeMap.get(link.source)\n const targetNode = nodeMap.get(link.target)\n if (sourceNode !== undefined) {\n sourceNode.value += link.value\n }\n if (targetNode !== undefined) {\n targetNode.value += link.value\n }\n }\n\n // For nodes with both incoming and outgoing, value = max flow side\n // The above double-counts, so we recalculate as max(outgoing, incoming)\n for (const node of nodeMap.values()) {\n let outgoing = 0\n let incoming = 0\n for (const link of this.links) {\n if (link.source === node.id) outgoing += link.value\n if (link.target === node.id) incoming += link.value\n }\n node.value = Math.max(outgoing, incoming)\n }\n\n // Position nodes horizontally by column\n const columnWidth = maxCol > 0 ? (plot.width - this.nodeWidth) / maxCol : 0\n\n // Group nodes by column\n const columns = new Map<number, ComputedNode[]>()\n for (const node of nodeMap.values()) {\n node.x = plot.x + node.column * columnWidth\n\n const col = columns.get(node.column)\n if (col !== undefined) {\n col.push(node)\n } else {\n columns.set(node.column, [node])\n }\n }\n\n // Position nodes vertically within each column\n for (const colNodes of columns.values()) {\n const totalValue = colNodes.reduce((sum, n) => sum + n.value, 0)\n const totalPadding = this.nodePadding * Math.max(0, colNodes.length - 1)\n const availableHeight = plot.height - totalPadding\n\n let currentY = plot.y\n for (const node of colNodes) {\n const nodeHeight =\n totalValue > 0\n ? (node.value / totalValue) * availableHeight\n : availableHeight / colNodes.length\n node.height = Math.max(1, nodeHeight)\n node.y = currentY\n currentY += node.height + this.nodePadding\n }\n }\n\n // Build computed links\n this.computedLinks = []\n\n // Track the current y-offset for source and target connection points\n const sourceOffsets = new Map<string, number>()\n const targetOffsets = new Map<string, number>()\n\n for (const link of this.links) {\n const source = nodeMap.get(link.source)\n const target = nodeMap.get(link.target)\n if (source === undefined || target === undefined) continue\n\n const linkWidth = source.value > 0 ? (link.value / source.value) * source.height : 0\n\n const sourceOffset = sourceOffsets.get(source.id) ?? 0\n const targetOffset = targetOffsets.get(target.id) ?? 0\n\n const computed: ComputedLink = {\n source,\n target,\n value: link.value,\n color: link.color ?? source.color,\n sourceY: source.y + sourceOffset + linkWidth / 2,\n targetY: target.y + targetOffset + linkWidth / 2,\n width: linkWidth,\n }\n\n sourceOffsets.set(source.id, sourceOffset + linkWidth)\n targetOffsets.set(target.id, targetOffset + linkWidth)\n\n computed.source.sourceLinks.push(computed)\n computed.target.targetLinks.push(computed)\n this.computedLinks.push(computed)\n }\n\n this.computedNodes = [...nodeMap.values()]\n }\n\n private setupTooltip(): void {\n this.tooltip = new ChartTooltip(this.container)\n\n this.handleMouseMove = (e: MouseEvent): void => {\n const rect = this.canvas.getBoundingClientRect()\n const mx = e.clientX - rect.left\n const my = e.clientY - rect.top\n\n // Check nodes\n let foundNodeId: string | null = null\n for (const node of this.computedNodes) {\n if (\n mx >= node.x &&\n mx <= node.x + node.width &&\n my >= node.y &&\n my <= node.y + node.height\n ) {\n foundNodeId = node.id\n break\n }\n }\n\n // Check links if no node hit\n let foundLinkIndex = -1\n if (foundNodeId === null) {\n for (let i = 0; i < this.computedLinks.length; i++) {\n const link = this.computedLinks[i]\n if (link === undefined) continue\n if (this.isPointOnLink(mx, my, link)) {\n foundLinkIndex = i\n break\n }\n }\n }\n\n const needsRedraw =\n foundNodeId !== this.hoveredNodeId || foundLinkIndex !== this.hoveredLinkIndex\n\n this.hoveredNodeId = foundNodeId\n this.hoveredLinkIndex = foundLinkIndex\n\n if (needsRedraw) {\n this.render()\n }\n\n if (foundNodeId !== null) {\n const node = this.computedNodes.find(n => n.id === foundNodeId)\n if (node !== undefined) {\n let content: string\n if (this.tooltipFormat !== null) {\n content = this.tooltipFormat(node.value, node.label, '')\n } else {\n content = `<strong>${node.label}</strong><br/>Total: ${formatNumber(node.value)}`\n }\n this.tooltip?.show(mx, my, content)\n }\n } else if (foundLinkIndex >= 0) {\n const link = this.computedLinks[foundLinkIndex]\n if (link !== undefined) {\n let content: string\n if (this.tooltipFormat !== null) {\n content = this.tooltipFormat(link.value, link.source.label, link.target.label)\n } else {\n content = `<strong>${link.source.label} → ${link.target.label}</strong><br/>Value: ${formatNumber(link.value)}`\n }\n this.tooltip?.show(mx, my, content)\n }\n } else {\n this.tooltip?.hide()\n }\n }\n\n this.handleMouseLeave = (): void => {\n if (this.hoveredNodeId !== null || this.hoveredLinkIndex !== -1) {\n this.hoveredNodeId = null\n this.hoveredLinkIndex = -1\n this.render()\n }\n this.tooltip?.hide()\n }\n\n this.canvas.addEventListener('mousemove', this.handleMouseMove)\n this.canvas.addEventListener('mouseleave', this.handleMouseLeave)\n }\n\n private isPointOnLink(mx: number, my: number, link: ComputedLink): boolean {\n const sx = link.source.x + link.source.width\n const tx = link.target.x\n const halfWidth = link.width / 2\n\n // Quick bounding box check\n if (mx < sx || mx > tx) return false\n\n // Compute the bezier center Y at this x position\n const cpx1 = sx + (tx - sx) / 3\n const cpx2 = tx - (tx - sx) / 3\n const bezierT = this.solveBezierT(sx, cpx1, cpx2, tx, mx)\n const centerY = this.cubicBezier(\n link.sourceY,\n link.sourceY,\n link.targetY,\n link.targetY,\n bezierT\n )\n\n return Math.abs(my - centerY) <= halfWidth + 4\n }\n\n private solveBezierT(\n _p0: number,\n _p1: number,\n _p2: number,\n _p3: number,\n _target: number\n ): number {\n // For horizontal bezier, t approximates linearly since x is monotonic\n const x0 = _p0\n const x3 = _p3\n if (x3 === x0) return 0\n return (_target - x0) / (x3 - x0)\n }\n\n private cubicBezier(p0: number, p1: number, p2: number, p3: number, t: number): number {\n const mt = 1 - t\n return mt * mt * mt * p0 + 3 * mt * mt * t * p1 + 3 * mt * t * t * p2 + t * t * t * p3\n }\n\n public render(): void {\n this.clear()\n this.computeLayout()\n\n const { ctx } = this\n\n // Draw links\n ctx.save()\n for (let i = 0; i < this.computedLinks.length; i++) {\n const link = this.computedLinks[i]\n if (link === undefined) continue\n\n const isHighlightedByNode =\n this.hoveredNodeId !== null &&\n (link.source.id === this.hoveredNodeId || link.target.id === this.hoveredNodeId)\n const isHighlightedLink = i === this.hoveredLinkIndex\n\n const opacity =\n isHighlightedByNode || isHighlightedLink\n ? Math.min(this.linkOpacity * 2, 0.9)\n : this.linkOpacity\n\n const sx = link.source.x + link.source.width\n const sy = link.sourceY\n const tx = link.target.x\n const ty = link.targetY\n const cpx1 = sx + (tx - sx) * 0.4\n const cpx2 = tx - (tx - sx) * 0.4\n\n ctx.beginPath()\n ctx.moveTo(sx, sy - link.width / 2)\n ctx.bezierCurveTo(\n cpx1,\n sy - link.width / 2,\n cpx2,\n ty - link.width / 2,\n tx,\n ty - link.width / 2\n )\n ctx.lineTo(tx, ty + link.width / 2)\n ctx.bezierCurveTo(\n cpx2,\n ty + link.width / 2,\n cpx1,\n sy + link.width / 2,\n sx,\n sy + link.width / 2\n )\n ctx.closePath()\n\n ctx.fillStyle = hexToRgba(link.color, opacity)\n ctx.fill()\n }\n ctx.restore()\n\n // Draw nodes\n ctx.save()\n for (const node of this.computedNodes) {\n const isHovered = node.id === this.hoveredNodeId\n\n ctx.fillStyle = isHovered ? hexToRgba(node.color, 0.85) : node.color\n ctx.fillRect(node.x, node.y, node.width, node.height)\n\n if (isHovered) {\n ctx.strokeStyle = '#1e293b'\n ctx.lineWidth = 2\n ctx.strokeRect(node.x, node.y, node.width, node.height)\n }\n\n // Draw label\n ctx.fillStyle = LABEL_COLOR\n ctx.font = LABEL_FONT\n ctx.textBaseline = 'middle'\n\n const labelY = node.y + node.height / 2\n\n // Position label based on column\n if (node.column === 0) {\n ctx.textAlign = 'right'\n ctx.fillText(node.label, node.x - 6, labelY)\n } else {\n ctx.textAlign = 'left'\n ctx.fillText(node.label, node.x + node.width + 6, labelY)\n }\n }\n ctx.restore()\n }\n\n public update(nodes: SankeyNode[], links: SankeyLink[]): void {\n this.nodes = nodes\n this.links = links\n this.hoveredNodeId = null\n this.hoveredLinkIndex = -1\n this.render()\n }\n\n public override destroy(): void {\n if (this.handleMouseMove !== null) {\n this.canvas.removeEventListener('mousemove', this.handleMouseMove)\n }\n if (this.handleMouseLeave !== null) {\n this.canvas.removeEventListener('mouseleave', this.handleMouseLeave)\n }\n this.tooltip?.destroy()\n super.destroy()\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseChartConfig, TooltipConfig } from '../types';
|
|
2
|
+
export interface SankeyNode {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
color?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SankeyLink {
|
|
8
|
+
source: string;
|
|
9
|
+
target: string;
|
|
10
|
+
value: number;
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SankeyChartConfig extends BaseChartConfig {
|
|
14
|
+
nodes: SankeyNode[];
|
|
15
|
+
links: SankeyLink[];
|
|
16
|
+
tooltip?: TooltipConfig;
|
|
17
|
+
nodeWidth?: number;
|
|
18
|
+
nodePadding?: number;
|
|
19
|
+
linkOpacity?: number;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/charts/sankey/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE9D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SeriesChart } from '../series';
|
|
2
|
+
import { ChartSeries } from '../types';
|
|
3
|
+
import { ScatterChartConfig } from './types';
|
|
4
|
+
export declare class ScatterChart extends SeriesChart {
|
|
5
|
+
private readonly config;
|
|
6
|
+
private plottedPoints;
|
|
7
|
+
private highlightedPoint;
|
|
8
|
+
constructor(config: ScatterChartConfig);
|
|
9
|
+
private computeDataBounds;
|
|
10
|
+
/** Compute linear regression (least squares) for a set of data points */
|
|
11
|
+
private computeTrendLine;
|
|
12
|
+
render(): void;
|
|
13
|
+
private generateNumericLabels;
|
|
14
|
+
protected handleMouseMove(e: MouseEvent): void;
|
|
15
|
+
protected handleMouseLeave(): void;
|
|
16
|
+
update(series: ChartSeries[]): void;
|
|
17
|
+
}
|
|
18
|
+
export type { ScatterChartConfig } from './types';
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/charts/scatter/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,UAAU,CAAA;AAGtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAmBjD,qBAAa,YAAa,SAAQ,WAAW;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,gBAAgB,CAAqB;gBAEjC,MAAM,EAAE,kBAAkB;IAQtC,OAAO,CAAC,iBAAiB;IA4CzB,yEAAyE;IACzE,OAAO,CAAC,gBAAgB;IAyCxB,MAAM,IAAI,IAAI;IAoFd,OAAO,CAAC,qBAAqB;IAQ7B,SAAS,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAgD9C,SAAS,CAAC,gBAAgB,IAAI,IAAI;IAU3B,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI;CAI3C;AAED,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { hexToRgba as e, niceScale as t, scaleLinear as n } from "../utils.js";
|
|
2
|
+
import { t as r } from "../../series-Cm9HrwZ5.js";
|
|
3
|
+
import { drawXAxis as i, drawYAxis as a } from "../axis.js";
|
|
4
|
+
//#region src/charts/scatter/index.ts
|
|
5
|
+
var o = 4, s = 2, c = 20, l = class extends r {
|
|
6
|
+
config;
|
|
7
|
+
plottedPoints;
|
|
8
|
+
highlightedPoint;
|
|
9
|
+
constructor(e) {
|
|
10
|
+
super(e), this.config = e, this.plottedPoints = [], this.highlightedPoint = null, this.render();
|
|
11
|
+
}
|
|
12
|
+
computeDataBounds(e) {
|
|
13
|
+
let t = Infinity, n = -Infinity, r = Infinity, i = -Infinity, a = /* @__PURE__ */ new Set();
|
|
14
|
+
for (let o of e) for (let e of o.data) {
|
|
15
|
+
let o = typeof e.x == "number" ? e.x : parseFloat(e.x);
|
|
16
|
+
isNaN(o) || (o < t && (t = o), o > n && (n = o)), a.add(String(e.x)), e.y < r && (r = e.y), e.y > i && (i = e.y);
|
|
17
|
+
}
|
|
18
|
+
return t === Infinity && (t = 0, n = 1), r === Infinity && (r = 0, i = 1), {
|
|
19
|
+
xMin: this.config.xAxis?.min ?? t,
|
|
20
|
+
xMax: this.config.xAxis?.max ?? n,
|
|
21
|
+
yMin: this.config.yAxis?.min ?? r,
|
|
22
|
+
yMax: this.config.yAxis?.max ?? i,
|
|
23
|
+
xLabels: Array.from(a)
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
computeTrendLine(e) {
|
|
27
|
+
if (e.length < 2) return null;
|
|
28
|
+
let t = [], n = [];
|
|
29
|
+
for (let r of e) {
|
|
30
|
+
let e = typeof r.x == "number" ? r.x : parseFloat(r.x);
|
|
31
|
+
isNaN(e) || (t.push(e), n.push(r.y));
|
|
32
|
+
}
|
|
33
|
+
let r = t.length;
|
|
34
|
+
if (r < 2) return null;
|
|
35
|
+
let i = 0, a = 0, o = 0, s = 0;
|
|
36
|
+
for (let e = 0; e < r; e++) {
|
|
37
|
+
let r = t[e], c = n[e];
|
|
38
|
+
r === void 0 || c === void 0 || (i += r, a += c, o += r * c, s += r * r);
|
|
39
|
+
}
|
|
40
|
+
let c = r * s - i * i;
|
|
41
|
+
if (c === 0) return null;
|
|
42
|
+
let l = (r * o - i * a) / c;
|
|
43
|
+
return {
|
|
44
|
+
slope: l,
|
|
45
|
+
intercept: (a - l * i) / r
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
render() {
|
|
49
|
+
this.clear(), this.plottedPoints = [];
|
|
50
|
+
let r = this.getVisibleSeries(), { xMin: c, xMax: l, yMin: u, yMax: d, xLabels: f } = this.computeDataBounds(r), p = this.plotArea, m = this.config.xAxis?.tickCount ?? 5, h = this.config.yAxis?.tickCount ?? 5, g = t(c, l, m), _ = t(u, d, h), v = f.length > 0 ? f : this.generateNumericLabels(g.min, g.max, g.step);
|
|
51
|
+
i(this.ctx, p, v, this.config.xAxis), a(this.ctx, p, _.min, _.max, this.config.yAxis);
|
|
52
|
+
let y = n([g.min, g.max], [p.x, p.x + p.width]), b = n([_.min, _.max], [p.y + p.height, p.y]), x = this.config.dotRadius ?? o;
|
|
53
|
+
if (this.config.showTrendLine === !0) for (let t of r) {
|
|
54
|
+
let n = this.computeTrendLine(t.data);
|
|
55
|
+
if (n !== null) {
|
|
56
|
+
let r = g.min, i = n.slope * r + n.intercept, a = g.max, o = n.slope * a + n.intercept;
|
|
57
|
+
this.ctx.beginPath(), this.ctx.moveTo(y(r), b(i)), this.ctx.lineTo(y(a), b(o)), this.ctx.strokeStyle = e(t.color, .4), this.ctx.lineWidth = 1.5, this.ctx.setLineDash([6, 4]), this.ctx.stroke(), this.ctx.setLineDash([]);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
for (let t of r) for (let n of t.data) {
|
|
61
|
+
let r = typeof n.x == "number" ? n.x : parseFloat(n.x);
|
|
62
|
+
if (isNaN(r)) continue;
|
|
63
|
+
let i = y(r), a = b(n.y), o = this.highlightedPoint !== null && this.highlightedPoint.px === i && this.highlightedPoint.py === a;
|
|
64
|
+
this.plottedPoints.push({
|
|
65
|
+
px: i,
|
|
66
|
+
py: a,
|
|
67
|
+
dataPoint: n,
|
|
68
|
+
seriesName: t.name,
|
|
69
|
+
color: t.color
|
|
70
|
+
}), this.ctx.beginPath();
|
|
71
|
+
let c = o ? x + s : x;
|
|
72
|
+
this.ctx.arc(i, a, c, 0, Math.PI * 2), this.ctx.fillStyle = o ? e(t.color, 1) : e(t.color, .7), this.ctx.fill(), this.ctx.strokeStyle = t.color, this.ctx.lineWidth = 1.5, this.ctx.stroke();
|
|
73
|
+
}
|
|
74
|
+
this.updateSeriesLegend();
|
|
75
|
+
}
|
|
76
|
+
generateNumericLabels(e, t, n) {
|
|
77
|
+
let r = [];
|
|
78
|
+
for (let i = e; i <= t + n * .001; i += n) r.push(String(Math.round(i * 1e3) / 1e3));
|
|
79
|
+
return r;
|
|
80
|
+
}
|
|
81
|
+
handleMouseMove(e) {
|
|
82
|
+
let t = this.canvas.getBoundingClientRect(), n = e.clientX - t.left, r = e.clientY - t.top, i = null, a = Infinity;
|
|
83
|
+
for (let e of this.plottedPoints) {
|
|
84
|
+
let t = Math.sqrt((n - e.px) ** 2 + (r - e.py) ** 2);
|
|
85
|
+
t < a && (a = t, i = e);
|
|
86
|
+
}
|
|
87
|
+
let o = this.highlightedPoint;
|
|
88
|
+
if (i !== null && a < c) {
|
|
89
|
+
if (this.highlightedPoint = i, this.tooltip !== null) {
|
|
90
|
+
let e;
|
|
91
|
+
e = this.config.tooltip?.format === void 0 ? `${i.seriesName}: (${String(i.dataPoint.x)}, ${String(i.dataPoint.y)})` : this.config.tooltip.format(i.dataPoint.y, String(i.dataPoint.x), i.seriesName), this.tooltip.show(i.px, i.py, e);
|
|
92
|
+
}
|
|
93
|
+
} else this.highlightedPoint = null, this.tooltip !== null && this.tooltip.hide();
|
|
94
|
+
this.highlightedPoint !== o && this.render();
|
|
95
|
+
}
|
|
96
|
+
handleMouseLeave() {
|
|
97
|
+
this.highlightedPoint !== null && (this.highlightedPoint = null, this.render()), this.tooltip !== null && this.tooltip.hide();
|
|
98
|
+
}
|
|
99
|
+
update(e) {
|
|
100
|
+
this.series = this.resolveSeries(e), this.render();
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
//#endregion
|
|
104
|
+
export { l as ScatterChart };
|
|
105
|
+
|
|
106
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/charts/scatter/index.ts"],"sourcesContent":["/**\n * Scatter chart component\n * @countermeasure/web-components/charts/scatter\n */\n\nimport { SeriesChart } from '../series'\nimport type { ChartSeries, DataPoint, ResolvedSeries } from '../types'\nimport { scaleLinear, hexToRgba, niceScale } from '../utils'\nimport { drawXAxis, drawYAxis } from '../axis'\nimport type { ScatterChartConfig } from './types'\n\nconst DEFAULT_DOT_RADIUS = 4\nconst HIGHLIGHT_RADIUS_BONUS = 2\nconst HOVER_THRESHOLD = 20\n\ninterface PlottedPoint {\n px: number\n py: number\n dataPoint: DataPoint\n seriesName: string\n color: string\n}\n\ninterface TrendLine {\n slope: number\n intercept: number\n}\n\nexport class ScatterChart extends SeriesChart {\n private readonly config: ScatterChartConfig\n private plottedPoints: PlottedPoint[]\n private highlightedPoint: PlottedPoint | null\n\n constructor(config: ScatterChartConfig) {\n super(config)\n this.config = config\n this.plottedPoints = []\n this.highlightedPoint = null\n this.render()\n }\n\n private computeDataBounds(visible: ResolvedSeries[]): {\n xMin: number\n xMax: number\n yMin: number\n yMax: number\n xLabels: string[]\n } {\n let xMin = Infinity\n let xMax = -Infinity\n let yMin = Infinity\n let yMax = -Infinity\n const xLabelsSet = new Set<string>()\n\n for (const s of visible) {\n for (const d of s.data) {\n const xVal = typeof d.x === 'number' ? d.x : parseFloat(d.x)\n if (!isNaN(xVal)) {\n if (xVal < xMin) xMin = xVal\n if (xVal > xMax) xMax = xVal\n }\n xLabelsSet.add(String(d.x))\n if (d.y < yMin) yMin = d.y\n if (d.y > yMax) yMax = d.y\n }\n }\n\n if (xMin === Infinity) {\n xMin = 0\n xMax = 1\n }\n if (yMin === Infinity) {\n yMin = 0\n yMax = 1\n }\n\n return {\n xMin: this.config.xAxis?.min ?? xMin,\n xMax: this.config.xAxis?.max ?? xMax,\n yMin: this.config.yAxis?.min ?? yMin,\n yMax: this.config.yAxis?.max ?? yMax,\n xLabels: Array.from(xLabelsSet),\n }\n }\n\n /** Compute linear regression (least squares) for a set of data points */\n private computeTrendLine(data: DataPoint[]): TrendLine | null {\n if (data.length < 2) return null\n\n const xValues: number[] = []\n const yValues: number[] = []\n\n for (const d of data) {\n const xVal = typeof d.x === 'number' ? d.x : parseFloat(d.x)\n if (!isNaN(xVal)) {\n xValues.push(xVal)\n yValues.push(d.y)\n }\n }\n\n const n = xValues.length\n if (n < 2) return null\n\n let sumX = 0\n let sumY = 0\n let sumXY = 0\n let sumXX = 0\n\n for (let i = 0; i < n; i++) {\n const xv = xValues[i]\n const yv = yValues[i]\n if (xv === undefined || yv === undefined) continue\n sumX += xv\n sumY += yv\n sumXY += xv * yv\n sumXX += xv * xv\n }\n\n const denominator = n * sumXX - sumX * sumX\n if (denominator === 0) return null\n\n const slope = (n * sumXY - sumX * sumY) / denominator\n const intercept = (sumY - slope * sumX) / n\n\n return { slope, intercept }\n }\n\n render(): void {\n this.clear()\n this.plottedPoints = []\n\n const visible = this.getVisibleSeries()\n const { xMin, xMax, yMin, yMax, xLabels } = this.computeDataBounds(visible)\n const plot = this.plotArea\n const xTickCount = this.config.xAxis?.tickCount ?? 5\n const yTickCount = this.config.yAxis?.tickCount ?? 5\n const niceX = niceScale(xMin, xMax, xTickCount)\n const niceY = niceScale(yMin, yMax, yTickCount)\n\n // Draw axes - use numeric labels for x-axis\n const xAxisLabels =\n xLabels.length > 0 ? xLabels : this.generateNumericLabels(niceX.min, niceX.max, niceX.step)\n drawXAxis(this.ctx, plot, xAxisLabels, this.config.xAxis)\n drawYAxis(this.ctx, plot, niceY.min, niceY.max, this.config.yAxis)\n\n // Create scales\n const xScale = scaleLinear([niceX.min, niceX.max], [plot.x, plot.x + plot.width])\n const yScale = scaleLinear([niceY.min, niceY.max], [plot.y + plot.height, plot.y])\n\n const dotRadius = this.config.dotRadius ?? DEFAULT_DOT_RADIUS\n const showTrendLine = this.config.showTrendLine === true\n\n // Draw trend lines first (behind dots)\n if (showTrendLine) {\n for (const s of visible) {\n const trend = this.computeTrendLine(s.data)\n if (trend !== null) {\n const x1 = niceX.min\n const y1 = trend.slope * x1 + trend.intercept\n const x2 = niceX.max\n const y2 = trend.slope * x2 + trend.intercept\n\n this.ctx.beginPath()\n this.ctx.moveTo(xScale(x1), yScale(y1))\n this.ctx.lineTo(xScale(x2), yScale(y2))\n this.ctx.strokeStyle = hexToRgba(s.color, 0.4)\n this.ctx.lineWidth = 1.5\n this.ctx.setLineDash([6, 4])\n this.ctx.stroke()\n this.ctx.setLineDash([])\n }\n }\n }\n\n // Draw data points\n for (const s of visible) {\n for (const d of s.data) {\n const xVal = typeof d.x === 'number' ? d.x : parseFloat(d.x)\n if (isNaN(xVal)) continue\n\n const px = xScale(xVal)\n const py = yScale(d.y)\n\n const isHighlighted =\n this.highlightedPoint !== null &&\n this.highlightedPoint.px === px &&\n this.highlightedPoint.py === py\n\n this.plottedPoints.push({\n px,\n py,\n dataPoint: d,\n seriesName: s.name,\n color: s.color,\n })\n\n // Draw dot\n this.ctx.beginPath()\n const radius = isHighlighted ? dotRadius + HIGHLIGHT_RADIUS_BONUS : dotRadius\n this.ctx.arc(px, py, radius, 0, Math.PI * 2)\n this.ctx.fillStyle = isHighlighted ? hexToRgba(s.color, 1) : hexToRgba(s.color, 0.7)\n this.ctx.fill()\n this.ctx.strokeStyle = s.color\n this.ctx.lineWidth = 1.5\n this.ctx.stroke()\n }\n }\n\n this.updateSeriesLegend()\n }\n\n private generateNumericLabels(min: number, max: number, step: number): string[] {\n const labels: string[] = []\n for (let v = min; v <= max + step * 0.001; v += step) {\n labels.push(String(Math.round(v * 1000) / 1000))\n }\n return labels\n }\n\n protected handleMouseMove(e: MouseEvent): void {\n const rect = this.canvas.getBoundingClientRect()\n const mouseX = e.clientX - rect.left\n const mouseY = e.clientY - rect.top\n\n // Find nearest point\n let closest: PlottedPoint | null = null\n let closestDist = Infinity\n\n for (const pt of this.plottedPoints) {\n const dist = Math.sqrt((mouseX - pt.px) ** 2 + (mouseY - pt.py) ** 2)\n if (dist < closestDist) {\n closestDist = dist\n closest = pt\n }\n }\n\n const previousHighlighted = this.highlightedPoint\n\n if (closest !== null && closestDist < HOVER_THRESHOLD) {\n this.highlightedPoint = closest\n\n if (this.tooltip !== null) {\n let content: string\n if (this.config.tooltip?.format !== undefined) {\n content = this.config.tooltip.format(\n closest.dataPoint.y,\n String(closest.dataPoint.x),\n closest.seriesName\n )\n } else {\n content = `${closest.seriesName}: (${String(closest.dataPoint.x)}, ${String(closest.dataPoint.y)})`\n }\n this.tooltip.show(closest.px, closest.py, content)\n }\n } else {\n this.highlightedPoint = null\n if (this.tooltip !== null) {\n this.tooltip.hide()\n }\n }\n\n // Re-render if highlight state changed\n if (this.highlightedPoint !== previousHighlighted) {\n this.render()\n }\n }\n\n protected handleMouseLeave(): void {\n if (this.highlightedPoint !== null) {\n this.highlightedPoint = null\n this.render()\n }\n if (this.tooltip !== null) {\n this.tooltip.hide()\n }\n }\n\n public update(series: ChartSeries[]): void {\n this.series = this.resolveSeries(series)\n this.render()\n }\n}\n\nexport type { ScatterChartConfig } from './types'\n"],"mappings":";;;;AAWA,IAAM,IAAqB,GACrB,IAAyB,GACzB,IAAkB,IAeX,IAAb,cAAkC,EAAY;CAC5C;CACA;CACA;CAEA,YAAY,GAA4B;AAKtC,EAJA,MAAM,EAAO,EACb,KAAK,SAAS,GACd,KAAK,gBAAgB,EAAE,EACvB,KAAK,mBAAmB,MACxB,KAAK,QAAQ;;CAGf,kBAA0B,GAMxB;EACA,IAAI,IAAO,UACP,IAAO,WACP,IAAO,UACP,IAAO,WACL,oBAAa,IAAI,KAAa;AAEpC,OAAK,IAAM,KAAK,EACd,MAAK,IAAM,KAAK,EAAE,MAAM;GACtB,IAAM,IAAO,OAAO,EAAE,KAAM,WAAW,EAAE,IAAI,WAAW,EAAE,EAAE;AAO5D,GANK,MAAM,EAAK,KACV,IAAO,MAAM,IAAO,IACpB,IAAO,MAAM,IAAO,KAE1B,EAAW,IAAI,OAAO,EAAE,EAAE,CAAC,EACvB,EAAE,IAAI,MAAM,IAAO,EAAE,IACrB,EAAE,IAAI,MAAM,IAAO,EAAE;;AAa7B,SATI,MAAS,aACX,IAAO,GACP,IAAO,IAEL,MAAS,aACX,IAAO,GACP,IAAO,IAGF;GACL,MAAM,KAAK,OAAO,OAAO,OAAO;GAChC,MAAM,KAAK,OAAO,OAAO,OAAO;GAChC,MAAM,KAAK,OAAO,OAAO,OAAO;GAChC,MAAM,KAAK,OAAO,OAAO,OAAO;GAChC,SAAS,MAAM,KAAK,EAAW;GAChC;;CAIH,iBAAyB,GAAqC;AAC5D,MAAI,EAAK,SAAS,EAAG,QAAO;EAE5B,IAAM,IAAoB,EAAE,EACtB,IAAoB,EAAE;AAE5B,OAAK,IAAM,KAAK,GAAM;GACpB,IAAM,IAAO,OAAO,EAAE,KAAM,WAAW,EAAE,IAAI,WAAW,EAAE,EAAE;AAC5D,GAAK,MAAM,EAAK,KACd,EAAQ,KAAK,EAAK,EAClB,EAAQ,KAAK,EAAE,EAAE;;EAIrB,IAAM,IAAI,EAAQ;AAClB,MAAI,IAAI,EAAG,QAAO;EAElB,IAAI,IAAO,GACP,IAAO,GACP,IAAQ,GACR,IAAQ;AAEZ,OAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK;GAC1B,IAAM,IAAK,EAAQ,IACb,IAAK,EAAQ;AACf,SAAO,KAAA,KAAa,MAAO,KAAA,MAC/B,KAAQ,GACR,KAAQ,GACR,KAAS,IAAK,GACd,KAAS,IAAK;;EAGhB,IAAM,IAAc,IAAI,IAAQ,IAAO;AACvC,MAAI,MAAgB,EAAG,QAAO;EAE9B,IAAM,KAAS,IAAI,IAAQ,IAAO,KAAQ;AAG1C,SAAO;GAAE;GAAO,YAFG,IAAO,IAAQ,KAAQ;GAEf;;CAG7B,SAAe;AAEb,EADA,KAAK,OAAO,EACZ,KAAK,gBAAgB,EAAE;EAEvB,IAAM,IAAU,KAAK,kBAAkB,EACjC,EAAE,SAAM,SAAM,SAAM,SAAM,eAAY,KAAK,kBAAkB,EAAQ,EACrE,IAAO,KAAK,UACZ,IAAa,KAAK,OAAO,OAAO,aAAa,GAC7C,IAAa,KAAK,OAAO,OAAO,aAAa,GAC7C,IAAQ,EAAU,GAAM,GAAM,EAAW,EACzC,IAAQ,EAAU,GAAM,GAAM,EAAW,EAGzC,IACJ,EAAQ,SAAS,IAAI,IAAU,KAAK,sBAAsB,EAAM,KAAK,EAAM,KAAK,EAAM,KAAK;AAE7F,EADA,EAAU,KAAK,KAAK,GAAM,GAAa,KAAK,OAAO,MAAM,EACzD,EAAU,KAAK,KAAK,GAAM,EAAM,KAAK,EAAM,KAAK,KAAK,OAAO,MAAM;EAGlE,IAAM,IAAS,EAAY,CAAC,EAAM,KAAK,EAAM,IAAI,EAAE,CAAC,EAAK,GAAG,EAAK,IAAI,EAAK,MAAM,CAAC,EAC3E,IAAS,EAAY,CAAC,EAAM,KAAK,EAAM,IAAI,EAAE,CAAC,EAAK,IAAI,EAAK,QAAQ,EAAK,EAAE,CAAC,EAE5E,IAAY,KAAK,OAAO,aAAa;AAI3C,MAHsB,KAAK,OAAO,kBAAkB,GAIlD,MAAK,IAAM,KAAK,GAAS;GACvB,IAAM,IAAQ,KAAK,iBAAiB,EAAE,KAAK;AAC3C,OAAI,MAAU,MAAM;IAClB,IAAM,IAAK,EAAM,KACX,IAAK,EAAM,QAAQ,IAAK,EAAM,WAC9B,IAAK,EAAM,KACX,IAAK,EAAM,QAAQ,IAAK,EAAM;AASpC,IAPA,KAAK,IAAI,WAAW,EACpB,KAAK,IAAI,OAAO,EAAO,EAAG,EAAE,EAAO,EAAG,CAAC,EACvC,KAAK,IAAI,OAAO,EAAO,EAAG,EAAE,EAAO,EAAG,CAAC,EACvC,KAAK,IAAI,cAAc,EAAU,EAAE,OAAO,GAAI,EAC9C,KAAK,IAAI,YAAY,KACrB,KAAK,IAAI,YAAY,CAAC,GAAG,EAAE,CAAC,EAC5B,KAAK,IAAI,QAAQ,EACjB,KAAK,IAAI,YAAY,EAAE,CAAC;;;AAM9B,OAAK,IAAM,KAAK,EACd,MAAK,IAAM,KAAK,EAAE,MAAM;GACtB,IAAM,IAAO,OAAO,EAAE,KAAM,WAAW,EAAE,IAAI,WAAW,EAAE,EAAE;AAC5D,OAAI,MAAM,EAAK,CAAE;GAEjB,IAAM,IAAK,EAAO,EAAK,EACjB,IAAK,EAAO,EAAE,EAAE,EAEhB,IACJ,KAAK,qBAAqB,QAC1B,KAAK,iBAAiB,OAAO,KAC7B,KAAK,iBAAiB,OAAO;AAW/B,GATA,KAAK,cAAc,KAAK;IACtB;IACA;IACA,WAAW;IACX,YAAY,EAAE;IACd,OAAO,EAAE;IACV,CAAC,EAGF,KAAK,IAAI,WAAW;GACpB,IAAM,IAAS,IAAgB,IAAY,IAAyB;AAMpE,GALA,KAAK,IAAI,IAAI,GAAI,GAAI,GAAQ,GAAG,KAAK,KAAK,EAAE,EAC5C,KAAK,IAAI,YAAY,IAAgB,EAAU,EAAE,OAAO,EAAE,GAAG,EAAU,EAAE,OAAO,GAAI,EACpF,KAAK,IAAI,MAAM,EACf,KAAK,IAAI,cAAc,EAAE,OACzB,KAAK,IAAI,YAAY,KACrB,KAAK,IAAI,QAAQ;;AAIrB,OAAK,oBAAoB;;CAG3B,sBAA8B,GAAa,GAAa,GAAwB;EAC9E,IAAM,IAAmB,EAAE;AAC3B,OAAK,IAAI,IAAI,GAAK,KAAK,IAAM,IAAO,MAAO,KAAK,EAC9C,GAAO,KAAK,OAAO,KAAK,MAAM,IAAI,IAAK,GAAG,IAAK,CAAC;AAElD,SAAO;;CAGT,gBAA0B,GAAqB;EAC7C,IAAM,IAAO,KAAK,OAAO,uBAAuB,EAC1C,IAAS,EAAE,UAAU,EAAK,MAC1B,IAAS,EAAE,UAAU,EAAK,KAG5B,IAA+B,MAC/B,IAAc;AAElB,OAAK,IAAM,KAAM,KAAK,eAAe;GACnC,IAAM,IAAO,KAAK,MAAM,IAAS,EAAG,OAAO,KAAK,IAAS,EAAG,OAAO,EAAE;AACrE,GAAI,IAAO,MACT,IAAc,GACd,IAAU;;EAId,IAAM,IAAsB,KAAK;AAEjC,MAAI,MAAY,QAAQ,IAAc,GAGpC;OAFA,KAAK,mBAAmB,GAEpB,KAAK,YAAY,MAAM;IACzB,IAAI;AAUJ,IATA,AACE,IADE,KAAK,OAAO,SAAS,WAAW,KAAA,IAOxB,GAAG,EAAQ,WAAW,KAAK,OAAO,EAAQ,UAAU,EAAE,CAAC,IAAI,OAAO,EAAQ,UAAU,EAAE,CAAC,KANvF,KAAK,OAAO,QAAQ,OAC5B,EAAQ,UAAU,GAClB,OAAO,EAAQ,UAAU,EAAE,EAC3B,EAAQ,WACT,EAIH,KAAK,QAAQ,KAAK,EAAQ,IAAI,EAAQ,IAAI,EAAQ;;QAIpD,CADA,KAAK,mBAAmB,MACpB,KAAK,YAAY,QACnB,KAAK,QAAQ,MAAM;AAKvB,EAAI,KAAK,qBAAqB,KAC5B,KAAK,QAAQ;;CAIjB,mBAAmC;AAKjC,EAJI,KAAK,qBAAqB,SAC5B,KAAK,mBAAmB,MACxB,KAAK,QAAQ,GAEX,KAAK,YAAY,QACnB,KAAK,QAAQ,MAAM;;CAIvB,OAAc,GAA6B;AAEzC,EADA,KAAK,SAAS,KAAK,cAAc,EAAO,EACxC,KAAK,QAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/charts/scatter/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjD,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { InteractiveChart } from './interactive';
|
|
2
|
+
import { ChartSeries, ResolvedSeries, SeriesChartConfig } from './types';
|
|
3
|
+
export declare abstract class SeriesChart extends InteractiveChart {
|
|
4
|
+
protected series: ResolvedSeries[];
|
|
5
|
+
protected hiddenSeries: Set<string>;
|
|
6
|
+
constructor(config: SeriesChartConfig);
|
|
7
|
+
protected resolveSeries(rawSeries: ChartSeries[]): ResolvedSeries[];
|
|
8
|
+
protected getVisibleSeries(): ResolvedSeries[];
|
|
9
|
+
protected updateSeriesLegend(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=series.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"series.d.ts","sourceRoot":"","sources":["../../src/charts/series.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,WAAW,EAAc,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAGzF,8BAAsB,WAAY,SAAQ,gBAAgB;IACxD,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,CAAA;IAClC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;gBAEvB,MAAM,EAAE,iBAAiB;IA2BrC,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE;IASnE,SAAS,CAAC,gBAAgB,IAAI,cAAc,EAAE;IAI9C,SAAS,CAAC,kBAAkB,IAAI,IAAI;CASrC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseChart } from '../base';
|
|
2
|
+
import { SparklineChartConfig } from './types';
|
|
3
|
+
export declare class SparklineChart extends BaseChart {
|
|
4
|
+
private data;
|
|
5
|
+
private color;
|
|
6
|
+
private fillColor;
|
|
7
|
+
private lineWidth;
|
|
8
|
+
private showEndDot;
|
|
9
|
+
private showMinMax;
|
|
10
|
+
private chartType;
|
|
11
|
+
constructor(config: SparklineChartConfig);
|
|
12
|
+
/** Replace data and re-render */
|
|
13
|
+
update(data: number[]): void;
|
|
14
|
+
render(): void;
|
|
15
|
+
private renderLine;
|
|
16
|
+
private renderBars;
|
|
17
|
+
private computeMinMax;
|
|
18
|
+
private drawDot;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/charts/sparkline/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAOnD,qBAAa,cAAe,SAAQ,SAAS;IAC3C,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAgB;gBAErB,MAAM,EAAE,oBAAoB;IAuBxC,iCAAiC;IACjC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAK5B,MAAM,IAAI,IAAI;IAYd,OAAO,CAAC,UAAU;IAwGlB,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,OAAO;CAWhB"}
|