@primeui/chart-core 0.0.1-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +23 -0
- package/README.md +1 -0
- package/dist/animations/index.d.mts +136 -0
- package/dist/animations/index.mjs +18 -0
- package/dist/annotation.utils-Bm0lOO1o.d.mts +290 -0
- package/dist/borderRadius.utils-Cz73LLR_.d.mts +54 -0
- package/dist/canvas-D4vigq47.d.mts +34 -0
- package/dist/canvas.utils-D2WHi2gL.d.mts +167 -0
- package/dist/cartesian/index.d.mts +94 -0
- package/dist/cartesian/index.mjs +93 -0
- package/dist/chunk-22ST6YPP.mjs +304 -0
- package/dist/chunk-2QK2KOBN.mjs +10 -0
- package/dist/chunk-2QRS4YQ5.mjs +18 -0
- package/dist/chunk-3FFJEX4A.mjs +261 -0
- package/dist/chunk-3IYSJ2U7.mjs +567 -0
- package/dist/chunk-3OZLP4I4.mjs +190 -0
- package/dist/chunk-3WEMHXZI.mjs +198 -0
- package/dist/chunk-3Z62EUJN.mjs +138 -0
- package/dist/chunk-4C6EVJ54.mjs +362 -0
- package/dist/chunk-53HW45JB.mjs +102 -0
- package/dist/chunk-55Y3WI6S.mjs +186 -0
- package/dist/chunk-5JCI2DEB.mjs +97 -0
- package/dist/chunk-66T4MRC5.mjs +113 -0
- package/dist/chunk-6HSEJLSR.mjs +376 -0
- package/dist/chunk-6STOLMCA.mjs +187 -0
- package/dist/chunk-7CMVDIOU.mjs +54 -0
- package/dist/chunk-7QQ6ETB4.mjs +228 -0
- package/dist/chunk-A6ZQZFL2.mjs +272 -0
- package/dist/chunk-ADKLH73T.mjs +1 -0
- package/dist/chunk-AGU3NG6D.mjs +22 -0
- package/dist/chunk-AHYIS6EB.mjs +230 -0
- package/dist/chunk-AP3UYWYT.mjs +4 -0
- package/dist/chunk-ARB5T6MP.mjs +326 -0
- package/dist/chunk-ARRGOEFX.mjs +585 -0
- package/dist/chunk-AUF4CHDP.mjs +422 -0
- package/dist/chunk-B4FTADAZ.mjs +561 -0
- package/dist/chunk-BABQKA6K.mjs +339 -0
- package/dist/chunk-BETFQBM2.mjs +197 -0
- package/dist/chunk-BKP26M4K.mjs +413 -0
- package/dist/chunk-BZN2QHGP.mjs +200 -0
- package/dist/chunk-C36VWQ7A.mjs +86 -0
- package/dist/chunk-CHW4RKY3.mjs +16 -0
- package/dist/chunk-CINXJIRR.mjs +120 -0
- package/dist/chunk-DN6AXQYZ.mjs +667 -0
- package/dist/chunk-DP2IZNN3.mjs +92 -0
- package/dist/chunk-DTWTCFRG.mjs +119 -0
- package/dist/chunk-EAMUNLRU.mjs +172 -0
- package/dist/chunk-EDAKJLNA.mjs +17 -0
- package/dist/chunk-ERVQB2VZ.mjs +59 -0
- package/dist/chunk-FFMT6OCO.mjs +92 -0
- package/dist/chunk-FHTC2YDB.mjs +102 -0
- package/dist/chunk-FRST55HY.mjs +16 -0
- package/dist/chunk-HDFGCN2F.mjs +132 -0
- package/dist/chunk-IEGLX7VL.mjs +42 -0
- package/dist/chunk-ILUWFYGY.mjs +220 -0
- package/dist/chunk-IXOWSEHO.mjs +114 -0
- package/dist/chunk-J4RI2C2G.mjs +172 -0
- package/dist/chunk-J65DBT4R.mjs +13 -0
- package/dist/chunk-JGOVWSKH.mjs +179 -0
- package/dist/chunk-JO7VACY2.mjs +25 -0
- package/dist/chunk-JWFBOPM6.mjs +122 -0
- package/dist/chunk-KNDZP446.mjs +895 -0
- package/dist/chunk-KP2TWD4Z.mjs +90 -0
- package/dist/chunk-KQIFO5I3.mjs +225 -0
- package/dist/chunk-KVDEROP6.mjs +59 -0
- package/dist/chunk-LKC7MZKK.mjs +87 -0
- package/dist/chunk-LVMDQ4OJ.mjs +305 -0
- package/dist/chunk-M7B3JF43.mjs +90 -0
- package/dist/chunk-MTGMXRNF.mjs +136 -0
- package/dist/chunk-N3TIT3OH.mjs +1040 -0
- package/dist/chunk-NHRK5KU2.mjs +890 -0
- package/dist/chunk-NKUYIWAP.mjs +243 -0
- package/dist/chunk-NPDZLYIF.mjs +238 -0
- package/dist/chunk-O2X6FF45.mjs +499 -0
- package/dist/chunk-OGJ6IIBW.mjs +176 -0
- package/dist/chunk-OHGCZZPZ.mjs +403 -0
- package/dist/chunk-OWW3K55O.mjs +351 -0
- package/dist/chunk-OXTFAWSK.mjs +60 -0
- package/dist/chunk-PLSDU3C2.mjs +890 -0
- package/dist/chunk-PRDVPOZX.mjs +223 -0
- package/dist/chunk-Q6PPVIHU.mjs +21 -0
- package/dist/chunk-QQBXUDM4.mjs +885 -0
- package/dist/chunk-QS76E3TD.mjs +111 -0
- package/dist/chunk-QWQ6HY4I.mjs +209 -0
- package/dist/chunk-R6Y3R7EW.mjs +135 -0
- package/dist/chunk-RBLZRT5K.mjs +190 -0
- package/dist/chunk-RO4N6YFS.mjs +167 -0
- package/dist/chunk-RQ3CKQOX.mjs +984 -0
- package/dist/chunk-SALTGZFR.mjs +208 -0
- package/dist/chunk-SANZPAJ4.mjs +14 -0
- package/dist/chunk-SDBPQ5CF.mjs +624 -0
- package/dist/chunk-SSLTFJ3U.mjs +364 -0
- package/dist/chunk-SXHVDJGF.mjs +77 -0
- package/dist/chunk-TA4MVAEX.mjs +243 -0
- package/dist/chunk-TAHCOZHF.mjs +1772 -0
- package/dist/chunk-TQ6S34QZ.mjs +152 -0
- package/dist/chunk-UPRXABX5.mjs +90 -0
- package/dist/chunk-VGLSBZDN.mjs +71 -0
- package/dist/chunk-VN7CKCSE.mjs +364 -0
- package/dist/chunk-VVI3OBPJ.mjs +524 -0
- package/dist/chunk-VWF57TS3.mjs +62 -0
- package/dist/chunk-WA3OVISZ.mjs +179 -0
- package/dist/chunk-WCG35U6M.mjs +964 -0
- package/dist/chunk-WFTX4AQJ.mjs +194 -0
- package/dist/chunk-WFVOQ2QZ.mjs +18 -0
- package/dist/chunk-WH3C3Y7P.mjs +149 -0
- package/dist/chunk-WPFUV7K3.mjs +488 -0
- package/dist/chunk-WRULPWHD.mjs +492 -0
- package/dist/chunk-WS64BZXT.mjs +1 -0
- package/dist/chunk-WY4AURRE.mjs +2419 -0
- package/dist/chunk-WYLILAOO.mjs +167 -0
- package/dist/chunk-X4D7FKUS.mjs +62 -0
- package/dist/chunk-X7T34OLW.mjs +139 -0
- package/dist/chunk-XIHBK5D3.mjs +68 -0
- package/dist/chunk-XQQCGFYB.mjs +50 -0
- package/dist/chunk-XTVE4P3L.mjs +214 -0
- package/dist/chunk-XUAASRXW.mjs +579 -0
- package/dist/chunk-Y3L3D4GQ.mjs +685 -0
- package/dist/chunk-YBJ56XJS.mjs +132 -0
- package/dist/chunk-ZQFK6CAE.mjs +1 -0
- package/dist/chunk-ZT2Z7ERM.mjs +874 -0
- package/dist/chunk-ZTL2FQEW.mjs +714 -0
- package/dist/circular/arc/index.d.mts +8 -0
- package/dist/circular/arc/index.mjs +3 -0
- package/dist/circular/index.d.mts +44 -0
- package/dist/circular/index.mjs +13 -0
- package/dist/collect.utils-DiKB4ciO.d.mts +12 -0
- package/dist/computeChartState-BTVIqwyO.d.mts +304 -0
- package/dist/controller-BJE1AZ3q.d.mts +82 -0
- package/dist/controller-BoNigQJr.d.mts +63 -0
- package/dist/controllers/index.d.mts +16 -0
- package/dist/controllers/index.mjs +110 -0
- package/dist/datalabel.utils-CkjGeB8S.d.mts +122 -0
- package/dist/decimation.utils-CcvJVhI4.d.mts +244 -0
- package/dist/geometry-DUUQJXVM.d.mts +60 -0
- package/dist/index-DseIZa1j.d.mts +167 -0
- package/dist/index.d.mts +88 -0
- package/dist/index.mjs +110 -0
- package/dist/orchestrator/index.d.mts +264 -0
- package/dist/orchestrator/index.mjs +33 -0
- package/dist/plugins/index.d.mts +18 -0
- package/dist/plugins/index.mjs +1 -0
- package/dist/property-animations-D433wXzz.d.mts +580 -0
- package/dist/property-store-NORUWFND.d.mts +17 -0
- package/dist/radial/index.d.mts +14 -0
- package/dist/radial/index.mjs +37 -0
- package/dist/renderers/axis/index.d.mts +39 -0
- package/dist/renderers/axis/index.mjs +8 -0
- package/dist/renderers/circular/index.d.mts +13 -0
- package/dist/renderers/circular/index.mjs +13 -0
- package/dist/renderers/index.d.mts +83 -0
- package/dist/renderers/index.mjs +75 -0
- package/dist/renderers/navigator/index.d.mts +103 -0
- package/dist/renderers/navigator/index.mjs +8 -0
- package/dist/resize.utils-D_2qm6rv.d.mts +142 -0
- package/dist/ring.utils-DXvrxMkU.d.mts +138 -0
- package/dist/scale-KFv30jqZ.d.mts +307 -0
- package/dist/scales-Drf8AIhL.d.mts +75 -0
- package/dist/series/bar/canvas/index.d.mts +8 -0
- package/dist/series/bar/canvas/index.mjs +10 -0
- package/dist/series/bar/controller/index.d.mts +105 -0
- package/dist/series/bar/controller/index.mjs +44 -0
- package/dist/series/bar/controller-canvas/index.d.mts +7 -0
- package/dist/series/bar/controller-canvas/index.mjs +49 -0
- package/dist/series/bar/controller-svg/index.d.mts +7 -0
- package/dist/series/bar/controller-svg/index.mjs +49 -0
- package/dist/series/bar/index.d.mts +60 -0
- package/dist/series/bar/index.mjs +13 -0
- package/dist/series/bar/svg/index.d.mts +8 -0
- package/dist/series/bar/svg/index.mjs +11 -0
- package/dist/series/candlestick/canvas/index.d.mts +8 -0
- package/dist/series/candlestick/canvas/index.mjs +8 -0
- package/dist/series/candlestick/controller/index.d.mts +123 -0
- package/dist/series/candlestick/controller/index.mjs +40 -0
- package/dist/series/candlestick/controller-canvas/index.d.mts +7 -0
- package/dist/series/candlestick/controller-canvas/index.mjs +45 -0
- package/dist/series/candlestick/controller-svg/index.d.mts +7 -0
- package/dist/series/candlestick/controller-svg/index.mjs +45 -0
- package/dist/series/candlestick/index.d.mts +11 -0
- package/dist/series/candlestick/index.mjs +10 -0
- package/dist/series/candlestick/svg/index.d.mts +8 -0
- package/dist/series/candlestick/svg/index.mjs +8 -0
- package/dist/series/heatmap/canvas/index.d.mts +16 -0
- package/dist/series/heatmap/canvas/index.mjs +9 -0
- package/dist/series/heatmap/controller/index.d.mts +110 -0
- package/dist/series/heatmap/controller/index.mjs +23 -0
- package/dist/series/heatmap/controller-canvas/index.d.mts +7 -0
- package/dist/series/heatmap/controller-canvas/index.mjs +28 -0
- package/dist/series/heatmap/controller-svg/index.d.mts +7 -0
- package/dist/series/heatmap/controller-svg/index.mjs +28 -0
- package/dist/series/heatmap/index.d.mts +34 -0
- package/dist/series/heatmap/index.mjs +13 -0
- package/dist/series/heatmap/svg/index.d.mts +15 -0
- package/dist/series/heatmap/svg/index.mjs +10 -0
- package/dist/series/line/canvas/index.d.mts +6 -0
- package/dist/series/line/canvas/index.mjs +9 -0
- package/dist/series/line/controller/index.d.mts +111 -0
- package/dist/series/line/controller/index.mjs +47 -0
- package/dist/series/line/controller-canvas/index.d.mts +7 -0
- package/dist/series/line/controller-canvas/index.mjs +54 -0
- package/dist/series/line/controller-svg/index.d.mts +7 -0
- package/dist/series/line/controller-svg/index.mjs +54 -0
- package/dist/series/line/index.d.mts +49 -0
- package/dist/series/line/index.mjs +13 -0
- package/dist/series/line/svg/index.d.mts +6 -0
- package/dist/series/line/svg/index.mjs +9 -0
- package/dist/series/pie/canvas/index.d.mts +8 -0
- package/dist/series/pie/canvas/index.mjs +10 -0
- package/dist/series/pie/controller/index.d.mts +174 -0
- package/dist/series/pie/controller/index.mjs +110 -0
- package/dist/series/pie/controller-canvas/index.d.mts +8 -0
- package/dist/series/pie/controller-canvas/index.mjs +119 -0
- package/dist/series/pie/controller-svg/index.d.mts +8 -0
- package/dist/series/pie/controller-svg/index.mjs +118 -0
- package/dist/series/pie/index.d.mts +59 -0
- package/dist/series/pie/index.mjs +15 -0
- package/dist/series/pie/svg/index.d.mts +6 -0
- package/dist/series/pie/svg/index.mjs +11 -0
- package/dist/series/polar/canvas/index.d.mts +6 -0
- package/dist/series/polar/canvas/index.mjs +7 -0
- package/dist/series/polar/controller/index.d.mts +102 -0
- package/dist/series/polar/controller/index.mjs +46 -0
- package/dist/series/polar/controller-canvas/index.d.mts +8 -0
- package/dist/series/polar/controller-canvas/index.mjs +52 -0
- package/dist/series/polar/controller-svg/index.d.mts +8 -0
- package/dist/series/polar/controller-svg/index.mjs +52 -0
- package/dist/series/polar/index.d.mts +25 -0
- package/dist/series/polar/index.mjs +16 -0
- package/dist/series/polar/svg/index.d.mts +10 -0
- package/dist/series/polar/svg/index.mjs +8 -0
- package/dist/series/radar/canvas/index.d.mts +6 -0
- package/dist/series/radar/canvas/index.mjs +8 -0
- package/dist/series/radar/controller/index.d.mts +121 -0
- package/dist/series/radar/controller/index.mjs +43 -0
- package/dist/series/radar/controller-canvas/index.d.mts +8 -0
- package/dist/series/radar/controller-canvas/index.mjs +51 -0
- package/dist/series/radar/controller-svg/index.d.mts +8 -0
- package/dist/series/radar/controller-svg/index.mjs +51 -0
- package/dist/series/radar/index.d.mts +40 -0
- package/dist/series/radar/index.mjs +13 -0
- package/dist/series/radar/svg/index.d.mts +12 -0
- package/dist/series/radar/svg/index.mjs +9 -0
- package/dist/series/scatter/canvas/index.d.mts +8 -0
- package/dist/series/scatter/canvas/index.mjs +11 -0
- package/dist/series/scatter/controller/index.d.mts +124 -0
- package/dist/series/scatter/controller/index.mjs +44 -0
- package/dist/series/scatter/controller-canvas/index.d.mts +7 -0
- package/dist/series/scatter/controller-canvas/index.mjs +51 -0
- package/dist/series/scatter/controller-svg/index.d.mts +7 -0
- package/dist/series/scatter/controller-svg/index.mjs +51 -0
- package/dist/series/scatter/index.d.mts +25 -0
- package/dist/series/scatter/index.mjs +14 -0
- package/dist/series/scatter/svg/index.d.mts +8 -0
- package/dist/series/scatter/svg/index.mjs +12 -0
- package/dist/series/treemap/canvas/index.d.mts +50 -0
- package/dist/series/treemap/canvas/index.mjs +10 -0
- package/dist/series/treemap/controller/index.d.mts +130 -0
- package/dist/series/treemap/controller/index.mjs +20 -0
- package/dist/series/treemap/controller-canvas/index.d.mts +7 -0
- package/dist/series/treemap/controller-canvas/index.mjs +25 -0
- package/dist/series/treemap/controller-svg/index.d.mts +7 -0
- package/dist/series/treemap/controller-svg/index.mjs +25 -0
- package/dist/series/treemap/index.d.mts +15 -0
- package/dist/series/treemap/index.mjs +12 -0
- package/dist/series/treemap/svg/index.d.mts +15 -0
- package/dist/series/treemap/svg/index.mjs +9 -0
- package/dist/slices-DtewiwJx.d.mts +72 -0
- package/dist/spatialIndex.utils-B_GJkotZ.d.mts +5 -0
- package/dist/squarify.utils-B9CQBpa1.d.mts +50 -0
- package/dist/stacking-CChuAcLN.d.mts +319 -0
- package/dist/streaming.utils-DH-g1gNP.d.mts +49 -0
- package/dist/sync/index.d.mts +130 -0
- package/dist/sync/index.mjs +5 -0
- package/dist/tooltip.renderer-D5wpSlBa.d.mts +210 -0
- package/dist/utils/color/index.d.mts +58 -0
- package/dist/utils/color/index.mjs +4 -0
- package/dist/utils/data/index.d.mts +180 -0
- package/dist/utils/data/index.mjs +7 -0
- package/dist/utils/export/index.d.mts +14 -0
- package/dist/utils/export/index.mjs +6 -0
- package/dist/utils/index.d.mts +49 -0
- package/dist/utils/index.mjs +29 -0
- package/dist/utils/interaction/index.d.mts +255 -0
- package/dist/utils/interaction/index.mjs +9 -0
- package/dist/utils/layout/index.d.mts +3 -0
- package/dist/utils/layout/index.mjs +10 -0
- package/dist/utils/math/index.d.mts +162 -0
- package/dist/utils/math/index.mjs +1 -0
- package/dist/utils/render/index.d.mts +19 -0
- package/dist/utils/render/index.mjs +3 -0
- package/dist/utils/specialized/index.d.mts +37 -0
- package/dist/utils/specialized/index.mjs +66 -0
- package/dist/utils/text/index.d.mts +39 -0
- package/dist/utils/text/index.mjs +8 -0
- package/dist/utils/theme/index.d.mts +295 -0
- package/dist/utils/theme/index.mjs +5 -0
- package/dist/utils/zoom/index.d.mts +90 -0
- package/dist/utils/zoom/index.mjs +3 -0
- package/package.json +56 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export { TreemapRendererController } from '../../../chunk-NHRK5KU2.mjs';
|
|
2
|
+
import '../../../chunk-AGU3NG6D.mjs';
|
|
3
|
+
import '../../../chunk-VN7CKCSE.mjs';
|
|
4
|
+
import '../../../chunk-XIHBK5D3.mjs';
|
|
5
|
+
import '../../../chunk-55Y3WI6S.mjs';
|
|
6
|
+
import '../../../chunk-RO4N6YFS.mjs';
|
|
7
|
+
import '../../../chunk-VVI3OBPJ.mjs';
|
|
8
|
+
import '../../../chunk-KP2TWD4Z.mjs';
|
|
9
|
+
import '../../../chunk-3WEMHXZI.mjs';
|
|
10
|
+
import '../../../chunk-EDAKJLNA.mjs';
|
|
11
|
+
import '../../../chunk-OGJ6IIBW.mjs';
|
|
12
|
+
import '../../../chunk-7CMVDIOU.mjs';
|
|
13
|
+
import '../../../chunk-XTVE4P3L.mjs';
|
|
14
|
+
import '../../../chunk-NKUYIWAP.mjs';
|
|
15
|
+
import '../../../chunk-WA3OVISZ.mjs';
|
|
16
|
+
import '../../../chunk-BETFQBM2.mjs';
|
|
17
|
+
import '../../../chunk-QS76E3TD.mjs';
|
|
18
|
+
import '../../../chunk-O2X6FF45.mjs';
|
|
19
|
+
import '../../../chunk-SSLTFJ3U.mjs';
|
|
20
|
+
import '../../../chunk-RQ3CKQOX.mjs';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TreemapRendererController } from '../controller/index.mjs';
|
|
2
|
+
import '@primeui/chart-types';
|
|
3
|
+
|
|
4
|
+
/** Construct a TreemapRendererController wired with the Canvas painters only. */
|
|
5
|
+
declare const createTreemapRendererCanvas: () => TreemapRendererController;
|
|
6
|
+
|
|
7
|
+
export { createTreemapRendererCanvas };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { TreemapRendererController } from '../../../chunk-NHRK5KU2.mjs';
|
|
2
|
+
import '../../../chunk-AGU3NG6D.mjs';
|
|
3
|
+
import '../../../chunk-VN7CKCSE.mjs';
|
|
4
|
+
import '../../../chunk-XIHBK5D3.mjs';
|
|
5
|
+
import { renderCanvasTreemapContent, renderTreemapCanvas } from '../../../chunk-55Y3WI6S.mjs';
|
|
6
|
+
import '../../../chunk-RO4N6YFS.mjs';
|
|
7
|
+
import '../../../chunk-VVI3OBPJ.mjs';
|
|
8
|
+
import '../../../chunk-KP2TWD4Z.mjs';
|
|
9
|
+
import '../../../chunk-3WEMHXZI.mjs';
|
|
10
|
+
import '../../../chunk-EDAKJLNA.mjs';
|
|
11
|
+
import '../../../chunk-OGJ6IIBW.mjs';
|
|
12
|
+
import '../../../chunk-7CMVDIOU.mjs';
|
|
13
|
+
import '../../../chunk-XTVE4P3L.mjs';
|
|
14
|
+
import '../../../chunk-NKUYIWAP.mjs';
|
|
15
|
+
import '../../../chunk-WA3OVISZ.mjs';
|
|
16
|
+
import '../../../chunk-BETFQBM2.mjs';
|
|
17
|
+
import '../../../chunk-QS76E3TD.mjs';
|
|
18
|
+
import '../../../chunk-O2X6FF45.mjs';
|
|
19
|
+
import '../../../chunk-SSLTFJ3U.mjs';
|
|
20
|
+
import '../../../chunk-RQ3CKQOX.mjs';
|
|
21
|
+
|
|
22
|
+
// src/series/treemap/controller-canvas/index.ts
|
|
23
|
+
var createTreemapRendererCanvas = () => new TreemapRendererController({ renderCanvas: renderTreemapCanvas, renderCanvasContent: renderCanvasTreemapContent });
|
|
24
|
+
|
|
25
|
+
export { createTreemapRendererCanvas };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TreemapRendererController } from '../controller/index.mjs';
|
|
2
|
+
import '@primeui/chart-types';
|
|
3
|
+
|
|
4
|
+
/** Construct a TreemapRendererController wired with the SVG painter only. */
|
|
5
|
+
declare const createTreemapRendererSvg: () => TreemapRendererController;
|
|
6
|
+
|
|
7
|
+
export { createTreemapRendererSvg };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { TreemapRendererController } from '../../../chunk-NHRK5KU2.mjs';
|
|
2
|
+
import '../../../chunk-AGU3NG6D.mjs';
|
|
3
|
+
import '../../../chunk-VN7CKCSE.mjs';
|
|
4
|
+
import '../../../chunk-XIHBK5D3.mjs';
|
|
5
|
+
import '../../../chunk-55Y3WI6S.mjs';
|
|
6
|
+
import { renderTreemapSvg } from '../../../chunk-RO4N6YFS.mjs';
|
|
7
|
+
import '../../../chunk-VVI3OBPJ.mjs';
|
|
8
|
+
import '../../../chunk-KP2TWD4Z.mjs';
|
|
9
|
+
import '../../../chunk-3WEMHXZI.mjs';
|
|
10
|
+
import '../../../chunk-EDAKJLNA.mjs';
|
|
11
|
+
import '../../../chunk-OGJ6IIBW.mjs';
|
|
12
|
+
import '../../../chunk-7CMVDIOU.mjs';
|
|
13
|
+
import '../../../chunk-XTVE4P3L.mjs';
|
|
14
|
+
import '../../../chunk-NKUYIWAP.mjs';
|
|
15
|
+
import '../../../chunk-WA3OVISZ.mjs';
|
|
16
|
+
import '../../../chunk-BETFQBM2.mjs';
|
|
17
|
+
import '../../../chunk-QS76E3TD.mjs';
|
|
18
|
+
import '../../../chunk-O2X6FF45.mjs';
|
|
19
|
+
import '../../../chunk-SSLTFJ3U.mjs';
|
|
20
|
+
import '../../../chunk-RQ3CKQOX.mjs';
|
|
21
|
+
|
|
22
|
+
// src/series/treemap/controller-svg/index.ts
|
|
23
|
+
var createTreemapRendererSvg = () => new TreemapRendererController({ renderSvg: renderTreemapSvg });
|
|
24
|
+
|
|
25
|
+
export { createTreemapRendererSvg };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TreemapRenderProps, BoxArea, ChartTheme, TreemapRect, TreemapRenderData, TreemapCell, CellLabelInfo, DatasetRenderer } from '@primeui/chart-types';
|
|
2
|
+
export { renderTreemapGroupHoverOverlay, renderTreemapSvg } from './svg/index.mjs';
|
|
3
|
+
export { renderCanvasTreemapContent, renderTreemapCanvas, renderTreemapCanvasClipped, renderTreemapGroupHoverCanvas } from './canvas/index.mjs';
|
|
4
|
+
import { R as RowMetadata } from '../../squarify.utils-B9CQBpa1.mjs';
|
|
5
|
+
|
|
6
|
+
declare function calculateTreemapLayout(props: TreemapRenderProps, chartArea: BoxArea, theme?: Required<ChartTheme>, previousLayout?: (TreemapRect & RowMetadata)[] | null): Omit<TreemapRenderData, 'datasetIndex'>;
|
|
7
|
+
|
|
8
|
+
declare function hitTestTreemap(_x: number, _y: number, _props: TreemapRenderProps, layout: TreemapRenderData): number | null;
|
|
9
|
+
|
|
10
|
+
/** Compute label sizing/visibility for a cell (tier match). */
|
|
11
|
+
declare function getCellLabelInfo(cell: TreemapCell, labelMinSize?: number): CellLabelInfo;
|
|
12
|
+
|
|
13
|
+
declare const treemapRenderer: DatasetRenderer<TreemapRenderProps, TreemapRenderData>;
|
|
14
|
+
|
|
15
|
+
export { calculateTreemapLayout, getCellLabelInfo, hitTestTreemap, treemapRenderer };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { getCellLabelInfo, hitTestTreemap, treemapRenderer } from '../../chunk-XIHBK5D3.mjs';
|
|
2
|
+
export { renderCanvasTreemapContent, renderTreemapCanvas, renderTreemapCanvasClipped, renderTreemapGroupHoverCanvas } from '../../chunk-55Y3WI6S.mjs';
|
|
3
|
+
export { renderTreemapGroupHoverOverlay, renderTreemapSvg } from '../../chunk-RO4N6YFS.mjs';
|
|
4
|
+
export { calculateTreemapLayout } from '../../chunk-VVI3OBPJ.mjs';
|
|
5
|
+
import '../../chunk-7CMVDIOU.mjs';
|
|
6
|
+
import '../../chunk-XTVE4P3L.mjs';
|
|
7
|
+
import '../../chunk-NKUYIWAP.mjs';
|
|
8
|
+
import '../../chunk-BETFQBM2.mjs';
|
|
9
|
+
import '../../chunk-QS76E3TD.mjs';
|
|
10
|
+
import '../../chunk-O2X6FF45.mjs';
|
|
11
|
+
import '../../chunk-SSLTFJ3U.mjs';
|
|
12
|
+
import '../../chunk-RQ3CKQOX.mjs';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TreemapRenderData, TreemapRenderProps, GlobalFont, BaseInteractionState, CoreEffectConfig, ChartTheme, SvgNode } from '@primeui/chart-types';
|
|
2
|
+
|
|
3
|
+
/** Render a treemap to an SVG node tree. */
|
|
4
|
+
declare function renderTreemapSvg(props: TreemapRenderProps, layout: TreemapRenderData, context?: {
|
|
5
|
+
font?: GlobalFont;
|
|
6
|
+
interaction?: BaseInteractionState;
|
|
7
|
+
effects?: CoreEffectConfig;
|
|
8
|
+
theme: Required<ChartTheme>;
|
|
9
|
+
}): SvgNode;
|
|
10
|
+
/** Render the treemap group hover overlay into an existing SVG group. */
|
|
11
|
+
declare function renderTreemapGroupHoverOverlay(overlay: SVGGElement, layouts: Map<string, {
|
|
12
|
+
layout: TreemapRenderData;
|
|
13
|
+
}>, groupNodeId: string | null): void;
|
|
14
|
+
|
|
15
|
+
export { renderTreemapGroupHoverOverlay, renderTreemapSvg };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { renderTreemapGroupHoverOverlay, renderTreemapSvg } from '../../../chunk-RO4N6YFS.mjs';
|
|
2
|
+
import '../../../chunk-VVI3OBPJ.mjs';
|
|
3
|
+
import '../../../chunk-XTVE4P3L.mjs';
|
|
4
|
+
import '../../../chunk-NKUYIWAP.mjs';
|
|
5
|
+
import '../../../chunk-BETFQBM2.mjs';
|
|
6
|
+
import '../../../chunk-QS76E3TD.mjs';
|
|
7
|
+
import '../../../chunk-O2X6FF45.mjs';
|
|
8
|
+
import '../../../chunk-SSLTFJ3U.mjs';
|
|
9
|
+
import '../../../chunk-RQ3CKQOX.mjs';
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ArcConfig, ArcPreprocessResult, ComputedSlice } from '@primeui/chart-types';
|
|
2
|
+
|
|
3
|
+
declare const CLIP_PIXEL_MARGIN = 1;
|
|
4
|
+
/** Threshold for detecting full circle (avoids floating point issues with 360) */
|
|
5
|
+
declare const FULL_CIRCLE_THRESHOLD = 359.9;
|
|
6
|
+
/** Half PI constant for corner arc calculations */
|
|
7
|
+
declare const HALF_PI: number;
|
|
8
|
+
/**
|
|
9
|
+
* Check if an angle span represents a full circle
|
|
10
|
+
*/
|
|
11
|
+
declare function isFullCircle(sweepAngle: number): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Check if a slice spans the full sweep angle (single slice covering entire chart)
|
|
14
|
+
*/
|
|
15
|
+
declare function isFullSweepSlice(angleSpan: number, sweepAngle: number): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Convert polar coordinates (radius, angle) to Cartesian (x, y).
|
|
18
|
+
* Angle is in radians.
|
|
19
|
+
*/
|
|
20
|
+
declare function rThetaToXY(r: number, theta: number, cx: number, cy: number): {
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Preprocess arc configuration to determine rendering type and prepare values.
|
|
26
|
+
* This consolidates the common logic used by both buildSvgArcPath and drawCanvasArc:
|
|
27
|
+
* - Full circle detection
|
|
28
|
+
* - Angle conversion to radians
|
|
29
|
+
* - Border radius parsing and clamping
|
|
30
|
+
*
|
|
31
|
+
* @param config - Arc configuration
|
|
32
|
+
* @param isFullCircleChart - Whether the chart is a full 360° circle
|
|
33
|
+
* @returns Preprocessing result with render type and computed values
|
|
34
|
+
*/
|
|
35
|
+
declare function preprocessArcConfig(config: ArcConfig, isFullCircleChart: boolean): ArcPreprocessResult;
|
|
36
|
+
|
|
37
|
+
declare function computeSlices(data: number[], originalIndices: number[], rotation?: number, sweepAngle?: number): ComputedSlice[];
|
|
38
|
+
/**
|
|
39
|
+
* Get the center angle for a single-slice full-sweep scenario.
|
|
40
|
+
* Used for positioning text in charts with only one visible slice.
|
|
41
|
+
*
|
|
42
|
+
* @param rotation - Starting rotation angle (default: -90)
|
|
43
|
+
* @param sweepAngle - Total sweep angle (default: 360)
|
|
44
|
+
* @returns The center angle of the sweep
|
|
45
|
+
*/
|
|
46
|
+
declare function getSweepCenterAngle(rotation?: number, sweepAngle?: number): number;
|
|
47
|
+
/**
|
|
48
|
+
* Check if a point is inside a slice.
|
|
49
|
+
* Used for hover/click detection on circular charts.
|
|
50
|
+
* Uses squared distance comparison to avoid Math.sqrt for performance.
|
|
51
|
+
*
|
|
52
|
+
* @param x - Point X coordinate (relative to center)
|
|
53
|
+
* @param y - Point Y coordinate (relative to center)
|
|
54
|
+
* @param slice - The slice to test against
|
|
55
|
+
* @param outerRadius - Outer radius of the slice
|
|
56
|
+
* @param innerRadius - Inner radius of the slice (0 for pie)
|
|
57
|
+
* @returns True if point is inside the slice
|
|
58
|
+
*/
|
|
59
|
+
declare function isPointInSlice(x: number, y: number, slice: Pick<ComputedSlice, 'rotation' | 'endAngle'>, outerRadius: number, innerRadius?: number): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Find which slice contains a point.
|
|
62
|
+
*
|
|
63
|
+
* @param x - Point X coordinate (relative to center)
|
|
64
|
+
* @param y - Point Y coordinate (relative to center)
|
|
65
|
+
* @param slices - Array of slices to test
|
|
66
|
+
* @param outerRadius - Outer radius
|
|
67
|
+
* @param innerRadius - Inner radius (0 for pie)
|
|
68
|
+
* @returns Index of the slice containing the point, or -1 if none
|
|
69
|
+
*/
|
|
70
|
+
declare function findSliceAtPoint(x: number, y: number, slices: Array<Pick<ComputedSlice, 'rotation' | 'endAngle'>>, outerRadius: number, innerRadius?: number): number;
|
|
71
|
+
|
|
72
|
+
export { CLIP_PIXEL_MARGIN as C, FULL_CIRCLE_THRESHOLD as F, HALF_PI as H, isFullSweepSlice as a, isPointInSlice as b, computeSlices as c, findSliceAtPoint as f, getSweepCenterAngle as g, isFullCircle as i, preprocessArcConfig as p, rThetaToXY as r };
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { SquarifyItem, TreemapRect } from '@primeui/chart-types';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Per-cell metadata attached by `squarify` / `resquarify` so subsequent
|
|
5
|
+
* `resquarify` calls can detect and preserve row structure.
|
|
6
|
+
*
|
|
7
|
+
* `_row` is the 0-indexed row this cell was placed in (per the squarify result).
|
|
8
|
+
* It is additive — existing callers that don't read `_row` are unaffected.
|
|
9
|
+
*/
|
|
10
|
+
interface RowMetadata {
|
|
11
|
+
_row: number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Squarify layout algorithm.
|
|
15
|
+
*
|
|
16
|
+
* Places items into a rectangle, optimizing for aspect ratios close to 1:1.
|
|
17
|
+
* Items are sorted by value (descending) internally.
|
|
18
|
+
*
|
|
19
|
+
* @param items - Items with value and original index
|
|
20
|
+
* @param x - Rectangle x
|
|
21
|
+
* @param y - Rectangle y
|
|
22
|
+
* @param w - Rectangle width
|
|
23
|
+
* @param h - Rectangle height
|
|
24
|
+
* @returns Array of positioned rectangles
|
|
25
|
+
*/
|
|
26
|
+
declare function squarify(items: SquarifyItem[], x: number, y: number, w: number, h: number): (TreemapRect & RowMetadata)[];
|
|
27
|
+
/**
|
|
28
|
+
* Squarify variant that preserves row structure when called repeatedly with
|
|
29
|
+
* the same ordered set of items.
|
|
30
|
+
*
|
|
31
|
+
* Identity is determined by `SquarifyItem.index` — callers must pass a stable
|
|
32
|
+
* `index` value per logical item across renders. If the post-sort identity
|
|
33
|
+
* sequence matches the previous result, row partitioning is preserved and
|
|
34
|
+
* cells are resized within each row using the new values. Otherwise, falls
|
|
35
|
+
* back to a fresh `squarify` call.
|
|
36
|
+
*
|
|
37
|
+
* On first call (`previousRects` is null/empty), delegates to `squarify`,
|
|
38
|
+
* which now tags each output cell with `_row` metadata.
|
|
39
|
+
*
|
|
40
|
+
* Industry precedent: d3-hierarchy's `treemapResquarify`.
|
|
41
|
+
*/
|
|
42
|
+
declare function resquarify(items: SquarifyItem[], x: number, y: number, w: number, h: number, previousRects: (TreemapRect & RowMetadata)[] | null): (TreemapRect & RowMetadata)[];
|
|
43
|
+
/** Slice layout — horizontal strips */
|
|
44
|
+
declare function sliceLayout(items: SquarifyItem[], x: number, y: number, w: number, h: number): TreemapRect[];
|
|
45
|
+
/** Dice layout — vertical strips */
|
|
46
|
+
declare function diceLayout(items: SquarifyItem[], x: number, y: number, w: number, h: number): TreemapRect[];
|
|
47
|
+
/** SliceDice layout — alternates between slice and dice per depth */
|
|
48
|
+
declare function sliceDiceLayout(items: SquarifyItem[], x: number, y: number, w: number, h: number, depth?: number): TreemapRect[];
|
|
49
|
+
|
|
50
|
+
export { type RowMetadata as R, sliceLayout as a, squarify as b, diceLayout as d, resquarify as r, sliceDiceLayout as s };
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
import { StyledGroupBoundary, BandScale, BoxArea, BracketThemeColors, BracketGeometry, StyledRangeBoundary, SvgNode, ChartAreaAxes, ChartAreaDataset, FeatureType, AnyFeatureProps, GlobalFont, SeriesType, DatasetRenderer, CanvasCompositorLike, CanvasLayer, CrosshairLayoutInput, CrosshairLayout, CrosshairConfig, NormalizedCrosshairConfig, FrameContext, CartesianLayoutData, AxisTransitionHandle, FrameBuildInput, CartesianFrameParams, CartesianAnimationDriver, AnimationConfig, LinearScale, AxisLayoutInfo, AnimationRegistryLike, CustomMarkerEntry, BarHitContext, CartesianHitTestResult, CrosshairSeriesHit, LineHitContext, LineHitTestResult, ScatterHitContext, ScatterHitTestResult, CandlestickHitContext, CandlestickHitTestResult, ColorValue, DataLabelConfig, ResolvedLabel, CartesianLayoutInput, LastVisibleLayoutsCache, LineRenderProps, LineRenderData, ScatterRenderProps, ScatterRenderData, CartesianModeFlags, TransformResult } from '@primeui/chart-types';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Compute bracket geometry for category (band) axis group boundaries.
|
|
5
|
+
* Handles multi-depth nested groups, both horizontal and vertical orientations.
|
|
6
|
+
*/
|
|
7
|
+
declare function computeCategoryBracketGeometry(boundaries: StyledGroupBoundary[], categoryScale: BandScale, cartesianArea: BoxArea, categoryAxisSpace: number, orientation: 'horizontal' | 'vertical', theme: BracketThemeColors): BracketGeometry;
|
|
8
|
+
/**
|
|
9
|
+
* Compute bracket geometry for value (linear) axis range boundaries.
|
|
10
|
+
* Single-depth, supports both orientations.
|
|
11
|
+
*/
|
|
12
|
+
declare function computeRangeBracketGeometry(boundaries: StyledRangeBoundary[], valueDomain: [number, number], valueScaleRange: [number, number], cartesianArea: BoxArea, valueAxisSpace: number, hasAxisTitle: boolean, orientation: 'horizontal' | 'vertical', theme: BracketThemeColors): BracketGeometry;
|
|
13
|
+
/** Render bracket geometry as an SVG group. Returns null if geometry is empty. */
|
|
14
|
+
declare function renderBracketsSvg(geometry: BracketGeometry): SvgNode | null;
|
|
15
|
+
/** Render bracket geometry onto a canvas context. */
|
|
16
|
+
declare function renderBracketsCanvas(ctx: CanvasRenderingContext2D, geometry: BracketGeometry): void;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Compute the inner cartesian plot area by subtracting axis margins,
|
|
20
|
+
* group-label space, and range-label space from the outer chart box.
|
|
21
|
+
*
|
|
22
|
+
* This is a **pure function** with no framework dependencies. Framework
|
|
23
|
+
* wrappers should memoize the result and recompute whenever `outerArea`,
|
|
24
|
+
* `axes`, `datasets`, or `features` change.
|
|
25
|
+
*
|
|
26
|
+
* @param outerArea Full chart bounding box (from ChartRenderer)
|
|
27
|
+
* @param axes Registered X/Y axis config maps
|
|
28
|
+
* @param datasets Registered dataset map
|
|
29
|
+
* @param features Registered feature map
|
|
30
|
+
*/
|
|
31
|
+
/**
|
|
32
|
+
* Derive the left/right axis gutter widths from a naturalArea relative to its chartArea.
|
|
33
|
+
* Used by ChartGroup sync to publish and compare axis widths across sibling charts.
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* Returns true for feature types that affect cartesian layout (axis sizing and stacking mode).
|
|
37
|
+
* Used by framework renderers to build a filtered features map so calculateCartesianArea
|
|
38
|
+
* only re-runs when layout-relevant config changes, not on dataLabels/zoom/hover updates.
|
|
39
|
+
*/
|
|
40
|
+
declare function isLayoutCriticalFeature(type: FeatureType): boolean;
|
|
41
|
+
declare function computeNaturalAxisWidths(naturalArea: BoxArea, chartArea: BoxArea): {
|
|
42
|
+
left: number;
|
|
43
|
+
right: number;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Returns true when at least one natural axis gutter is narrower than the group max,
|
|
47
|
+
* meaning this chart needs to re-run calculateCartesianArea with forced minPadding.
|
|
48
|
+
*/
|
|
49
|
+
declare function needsAxisPadding(naturalArea: BoxArea, chartArea: BoxArea, maxWidths: {
|
|
50
|
+
left: number;
|
|
51
|
+
right: number;
|
|
52
|
+
}): boolean;
|
|
53
|
+
declare function calculateCartesianArea(outerArea: BoxArea, axes: ChartAreaAxes, datasets: Map<string, ChartAreaDataset>, features: Map<FeatureType, {
|
|
54
|
+
type: FeatureType;
|
|
55
|
+
props: AnyFeatureProps;
|
|
56
|
+
}>, globalFont?: GlobalFont, locale?: string, renderersByType?: ReadonlyMap<SeriesType, Pick<DatasetRenderer<unknown, unknown>, 'getAxisHints'>>, minPadding?: {
|
|
57
|
+
left?: number;
|
|
58
|
+
right?: number;
|
|
59
|
+
}): BoxArea;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Registers one canvas layer per dataset with the compositor.
|
|
63
|
+
*
|
|
64
|
+
* @param compositor - The shared CanvasCompositor
|
|
65
|
+
* @param prefix - Layer ID prefix (e.g., 'bar', 'line', 'scatter', 'candlestick')
|
|
66
|
+
* @param datasetIds - Iterable of dataset IDs to register
|
|
67
|
+
* @param getOrder - Returns the paint order for a dataset (typically dataset.order)
|
|
68
|
+
* @param createPaint - Factory that returns the paint callback for a dataset
|
|
69
|
+
*/
|
|
70
|
+
declare function registerDatasetLayers(compositor: CanvasCompositorLike, prefix: string, datasetIds: Iterable<string>, getOrder: (dsId: string) => number, createPaint: (dsId: string) => CanvasLayer['paint']): void;
|
|
71
|
+
/**
|
|
72
|
+
* Triggers a composited repaint if in canvas mode with active layers.
|
|
73
|
+
* Replaces the 3-4 line boilerplate repeated across all renderer hooks.
|
|
74
|
+
*
|
|
75
|
+
* @returns true if a repaint was triggered, false otherwise
|
|
76
|
+
*/
|
|
77
|
+
declare function triggerCompositorRepaint(renderer: 'svg' | 'canvas', canvas: HTMLCanvasElement | null, compositor?: CanvasCompositorLike): boolean;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Compute crosshair badge layout from pure inputs.
|
|
81
|
+
* Positions category badge, cursor-value badge, and bar-value label
|
|
82
|
+
* relative to the plot area and axis positions.
|
|
83
|
+
*/
|
|
84
|
+
declare function computeCrosshairLayout(input: CrosshairLayoutInput): CrosshairLayout;
|
|
85
|
+
/**
|
|
86
|
+
* Normalize `true | CrosshairConfig` shorthand into a resolved config object.
|
|
87
|
+
* Returns null if crosshair is disabled or not applicable.
|
|
88
|
+
*/
|
|
89
|
+
declare function normalizeCrosshairConfig(crosshair: boolean | CrosshairConfig | undefined): NormalizedCrosshairConfig | null;
|
|
90
|
+
|
|
91
|
+
/** Creates a fresh animation driver state bag. */
|
|
92
|
+
declare function createAnimationDriver(): CartesianAnimationDriver;
|
|
93
|
+
/**
|
|
94
|
+
* Builds a CartesianFrameParams object from already-transitioned axis layouts.
|
|
95
|
+
* Used for both animated and static render paths.
|
|
96
|
+
*
|
|
97
|
+
* Callers must apply axis transition BEFORE calling this function.
|
|
98
|
+
*/
|
|
99
|
+
declare function buildFrameParams(ctx: FrameContext, cached: CartesianLayoutData, input: FrameBuildInput): CartesianFrameParams;
|
|
100
|
+
/**
|
|
101
|
+
* Builds static frame params: applies the axis transition's current state to the
|
|
102
|
+
* cached layout's axis layouts, and constructs CartesianFrameParams.
|
|
103
|
+
*
|
|
104
|
+
* PURE: reads current state via `apply()`; tick advancement is the caller's
|
|
105
|
+
* responsibility. The settle loop ticks once per iteration via its predicate
|
|
106
|
+
* (before each `onFrame`); the timed animation ticks once at the top of its
|
|
107
|
+
* own `onFrame`. Image-load and hover repaints call this outside the settle
|
|
108
|
+
* loop with no tick — correct because the scene is already settled.
|
|
109
|
+
*/
|
|
110
|
+
declare function buildStaticFrame(ctx: FrameContext, cached: CartesianLayoutData, axisTransition: AxisTransitionHandle): CartesianFrameParams;
|
|
111
|
+
/**
|
|
112
|
+
* Builds animated frame params: applies the axis transition's current state to
|
|
113
|
+
* the given animated axis layouts, and constructs CartesianFrameParams.
|
|
114
|
+
*
|
|
115
|
+
* PURE: reads current state via `apply()`; tick advancement is the caller's
|
|
116
|
+
* responsibility (timed-animation `onFrame` ticks once at its top before
|
|
117
|
+
* building animated frames).
|
|
118
|
+
*/
|
|
119
|
+
declare function buildAnimatedFrame(ctx: FrameContext, cached: CartesianLayoutData, axisTransition: AxisTransitionHandle, animatedInput: FrameBuildInput): CartesianFrameParams;
|
|
120
|
+
/**
|
|
121
|
+
* Picks the frame the hover/theme repaint should render — shared by the React and
|
|
122
|
+
* Vue animation hooks so both stay in lockstep.
|
|
123
|
+
*
|
|
124
|
+
* Reuses the geometry the animation last painted (`driver.lastFrame`), refreshing
|
|
125
|
+
* only the frame context (theme / DOM refs) so a theme toggle still recolors. The
|
|
126
|
+
* geometry stays put: the hover repaint must NOT recompute the settled target, or
|
|
127
|
+
* the chrome snaps to it and fights the in-flight slide (the tick-stagger bug).
|
|
128
|
+
* Hover itself is read live by the caller's `renderFrame`, never frozen into
|
|
129
|
+
* `lastFrame`. Falls back to a freshly built static frame before the first paint,
|
|
130
|
+
* when no `lastFrame` exists yet.
|
|
131
|
+
*/
|
|
132
|
+
declare function resolveHoverRepaintFrame(driver: CartesianAnimationDriver, ctx: FrameContext, buildStatic: () => CartesianFrameParams): CartesianFrameParams;
|
|
133
|
+
/**
|
|
134
|
+
* Wraps a render function with compositor phase-split rendering (canvas mode)
|
|
135
|
+
* and overlay painting. Identical logic in both React and Vue animation hooks.
|
|
136
|
+
*/
|
|
137
|
+
declare function renderWithCompositor(frameParams: CartesianFrameParams, renderFrameFn: (params: CartesianFrameParams) => void, options: {
|
|
138
|
+
renderer: 'svg' | 'canvas';
|
|
139
|
+
canvas: HTMLCanvasElement | null;
|
|
140
|
+
compositor?: CanvasCompositorLike;
|
|
141
|
+
overlayCanvas?: HTMLCanvasElement | null;
|
|
142
|
+
registry?: AnimationRegistryLike | null;
|
|
143
|
+
hover?: {
|
|
144
|
+
datasetId: string | null;
|
|
145
|
+
index: number | null;
|
|
146
|
+
};
|
|
147
|
+
markerOverlays?: CustomMarkerEntry[];
|
|
148
|
+
onImageLoad?: () => void;
|
|
149
|
+
}): void;
|
|
150
|
+
/** Cancel both in-flight rafs (timed animation + settle) on the driver. */
|
|
151
|
+
declare function cancelDriverRafs(driver: CartesianAnimationDriver): void;
|
|
152
|
+
/**
|
|
153
|
+
* The main animation driver logic — handles fingerprinting, domain lerp,
|
|
154
|
+
* category sort lerp, phase detection, and orchestrator animate/settle.
|
|
155
|
+
*
|
|
156
|
+
* Called from both React useEffect and Vue watch when layoutData changes.
|
|
157
|
+
* All framework-specific state must be unwrapped before calling.
|
|
158
|
+
*/
|
|
159
|
+
declare function driveCartesianUpdate(layout: CartesianLayoutData, driver: CartesianAnimationDriver, axisTransition: AxisTransitionHandle, animConfig: AnimationConfig | undefined, renderFrame: (params: CartesianFrameParams) => void, buildStatic: () => CartesianFrameParams, buildAnimated: (valueScales: Map<string, LinearScale>, valueDomains: Map<string, [number, number]>, axisLayouts: Map<string, AxisLayoutInfo>, categoryScale?: BandScale, valueXScales?: Map<string, LinearScale>) => CartesianFrameParams, globalFont?: {
|
|
160
|
+
family?: string;
|
|
161
|
+
size?: number;
|
|
162
|
+
}, locale?: string): void;
|
|
163
|
+
|
|
164
|
+
declare function barHitTest(x: number, y: number, ctx: BarHitContext): CartesianHitTestResult | null;
|
|
165
|
+
declare function barFindNearest(x: number, y: number, ctx: BarHitContext): CartesianHitTestResult | null;
|
|
166
|
+
declare function barFindAllNearest(x: number, y: number, ctx: BarHitContext): {
|
|
167
|
+
primary: CartesianHitTestResult;
|
|
168
|
+
allSeries: CrosshairSeriesHit[];
|
|
169
|
+
} | null;
|
|
170
|
+
|
|
171
|
+
declare function lineHitTest(x: number, y: number, ctx: LineHitContext): LineHitTestResult | null;
|
|
172
|
+
declare function lineFindAllNearest(x: number, y: number, ctx: LineHitContext): {
|
|
173
|
+
primary: CartesianHitTestResult;
|
|
174
|
+
allSeries: CrosshairSeriesHit[];
|
|
175
|
+
} | null;
|
|
176
|
+
|
|
177
|
+
declare function scatterHitTest(x: number, y: number, ctx: ScatterHitContext): ScatterHitTestResult | null;
|
|
178
|
+
|
|
179
|
+
declare function candlestickHitTest(x: number, y: number, ctx: CandlestickHitContext): CandlestickHitTestResult | null;
|
|
180
|
+
declare function candlestickFindAllNearest(x: number, y: number, ctx: CandlestickHitContext): {
|
|
181
|
+
primary: CartesianHitTestResult;
|
|
182
|
+
allSeries: CrosshairSeriesHit[];
|
|
183
|
+
} | null;
|
|
184
|
+
|
|
185
|
+
type AllNearestResult = {
|
|
186
|
+
primary: CartesianHitTestResult;
|
|
187
|
+
allSeries: CrosshairSeriesHit[];
|
|
188
|
+
};
|
|
189
|
+
declare function resolveNearestHit(hit1: CartesianHitTestResult, hit2: CartesianHitTestResult, x: number, y: number): CartesianHitTestResult;
|
|
190
|
+
/**
|
|
191
|
+
* Merges multiple `findAllNearest` results from different renderer types (bar, line,
|
|
192
|
+
* candlestick). Selects the primary hit from whichever renderer is closest to (x, y)
|
|
193
|
+
* and concatenates all allSeries arrays for the crosshair badge list.
|
|
194
|
+
*/
|
|
195
|
+
declare function mergeAllNearestResults(results: (AllNearestResult | null)[], x: number, y: number): AllNearestResult | null;
|
|
196
|
+
|
|
197
|
+
type ComputedBarLike = {
|
|
198
|
+
dataIndex: number;
|
|
199
|
+
x: number;
|
|
200
|
+
y: number;
|
|
201
|
+
width: number;
|
|
202
|
+
height: number;
|
|
203
|
+
value: number;
|
|
204
|
+
isNegative: boolean;
|
|
205
|
+
category?: string;
|
|
206
|
+
};
|
|
207
|
+
type ComputedPointLike = {
|
|
208
|
+
dataIndex: number;
|
|
209
|
+
x: number;
|
|
210
|
+
y: number;
|
|
211
|
+
value: number | null;
|
|
212
|
+
category: string;
|
|
213
|
+
};
|
|
214
|
+
type ComputedScatterPointLike = {
|
|
215
|
+
dataIndex: number;
|
|
216
|
+
px: number;
|
|
217
|
+
py: number;
|
|
218
|
+
yValue: number;
|
|
219
|
+
radius: number;
|
|
220
|
+
};
|
|
221
|
+
declare const BASELINE_TO_CANVAS: Record<string, CanvasTextBaseline>;
|
|
222
|
+
/**
|
|
223
|
+
* Resolve data labels for bar series.
|
|
224
|
+
* Produces positioned, formatted ResolvedLabel entries ready for rendering.
|
|
225
|
+
*/
|
|
226
|
+
declare function resolveBarLabels(bars: ComputedBarLike[], colors: (ColorValue | undefined)[], datasetTotal: number, orientation: 'vertical' | 'horizontal', config: DataLabelConfig, isPercentStacked: boolean, seriesName?: string, data?: unknown[]): ResolvedLabel[];
|
|
227
|
+
/**
|
|
228
|
+
* Resolve data labels for scatter series.
|
|
229
|
+
* Produces positioned, formatted ResolvedLabel entries ready for rendering.
|
|
230
|
+
* Labels are placed above each point's top edge and hard-cut when the series is hidden.
|
|
231
|
+
*/
|
|
232
|
+
declare function resolveScatterLabels(points: ComputedScatterPointLike[], seriesColor: string, config: DataLabelConfig, seriesName?: string, data?: unknown[]): ResolvedLabel[];
|
|
233
|
+
/**
|
|
234
|
+
* Resolve data labels for line/area point series.
|
|
235
|
+
* Produces positioned, formatted ResolvedLabel entries ready for rendering.
|
|
236
|
+
*/
|
|
237
|
+
declare function resolvePointLabels(points: ComputedPointLike[], seriesColor: string, datasetTotal: number, config: DataLabelConfig, seriesName?: string, data?: unknown[]): ResolvedLabel[];
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Compute the full cartesian layout from pure inputs.
|
|
241
|
+
*
|
|
242
|
+
* This is the framework-agnostic equivalent of the React `useCartesianLayout` hook.
|
|
243
|
+
* It contains ALL layout computation logic with no React dependencies.
|
|
244
|
+
*
|
|
245
|
+
* The layout pipeline:
|
|
246
|
+
* 1. Collect bar datasets, detect mode (via detectCartesianMode)
|
|
247
|
+
* 2. Extract categories/values, group if using AxisGroup
|
|
248
|
+
* 3. Transform values for stacking modes (via transformValues)
|
|
249
|
+
* 4. Compute waterfall bases (via computeWaterfallBases)
|
|
250
|
+
* 5. Compute value domain (via computeCartesianDomain)
|
|
251
|
+
* 6. Create shared scales
|
|
252
|
+
* 7. Compute stack bases (via computeStackBases)
|
|
253
|
+
* 8. Calculate axis layouts
|
|
254
|
+
* 9.
|
|
255
|
+
* Calculate per-dataset bar layouts + animation targets
|
|
256
|
+
*/
|
|
257
|
+
declare function computeCartesianLayout(input: CartesianLayoutInput, lastVisibleLayouts: LastVisibleLayoutsCache): CartesianLayoutData | null;
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* Collects CustomMarkerEntry[] from line render layouts.
|
|
261
|
+
* Only includes datasets that have a `renderMarker` callback.
|
|
262
|
+
*
|
|
263
|
+
* @param layouts - Current (possibly animated) line render data per dataset
|
|
264
|
+
* @param renderPropsMap - Render props per dataset (contains renderMarker, color, effects, etc.)
|
|
265
|
+
* @param snapshot - If true, snapshot visiblePoints to prevent mutation (React canvas mode)
|
|
266
|
+
*/
|
|
267
|
+
declare function collectLineMarkerOverlays<TProps extends LineRenderProps<unknown>>(layouts: Map<string, LineRenderData>, renderPropsMap: Map<string, TProps>, snapshot?: boolean): CustomMarkerEntry[];
|
|
268
|
+
/**
|
|
269
|
+
* Collects CustomMarkerEntry[] from scatter render layouts.
|
|
270
|
+
* Only includes datasets that have a `renderMarker` callback.
|
|
271
|
+
* Filters to visible points and maps scatter coordinates to overlay format.
|
|
272
|
+
*/
|
|
273
|
+
declare function collectScatterMarkerOverlays<TProps extends ScatterRenderProps<unknown>>(layouts: Map<string, ScatterRenderData>, renderPropsMap: Map<string, TProps>): CustomMarkerEntry[];
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Detect the active cartesian chart mode from dataset descriptors and feature flags.
|
|
277
|
+
* Pure function — no framework dependencies.
|
|
278
|
+
*/
|
|
279
|
+
declare function detectCartesianMode(datasets: {
|
|
280
|
+
stackId?: string;
|
|
281
|
+
}[], features: {
|
|
282
|
+
stacking?: {
|
|
283
|
+
mode?: string;
|
|
284
|
+
};
|
|
285
|
+
waterfall?: {
|
|
286
|
+
totalField?: string;
|
|
287
|
+
};
|
|
288
|
+
overlap?: {};
|
|
289
|
+
}): CartesianModeFlags;
|
|
290
|
+
/**
|
|
291
|
+
* Apply mode-specific value transforms:
|
|
292
|
+
* - Percent mode: normalize each value to a percentage of its category total
|
|
293
|
+
*
|
|
294
|
+
* Returns new arrays — does not mutate input.
|
|
295
|
+
*/
|
|
296
|
+
declare function transformValues(valuesPerDataset: number[][], categoryCount: number, mode: {
|
|
297
|
+
isPercentStacked: boolean;
|
|
298
|
+
}): TransformResult;
|
|
299
|
+
/**
|
|
300
|
+
* Compute waterfall cumulative bases (per-category starting values).
|
|
301
|
+
* Each category's base is the running total of all previous categories.
|
|
302
|
+
* "Total" categories reset the running total.
|
|
303
|
+
*/
|
|
304
|
+
declare function computeWaterfallBases(valuesPerDataset: number[][], categoryCount: number, data: unknown[], totalField?: string): number[];
|
|
305
|
+
/**
|
|
306
|
+
* Compute stack base positions for all datasets across all categories.
|
|
307
|
+
* Handles: normal stacking (with automatic pos/neg split),
|
|
308
|
+
* waterfall, and stacked-waterfall (with negative-step reversal).
|
|
309
|
+
*
|
|
310
|
+
* Positive values stack upward from 0, negative values stack downward —
|
|
311
|
+
* matching Highcharts `stacking: 'normal'` behavior. Users provide negative
|
|
312
|
+
* data values directly for population-pyramid style charts.
|
|
313
|
+
*/
|
|
314
|
+
declare function computeStackBases(datasetIds: string[], valuesPerDataset: number[][], categoryCount: number, mode: {
|
|
315
|
+
isStacked: boolean;
|
|
316
|
+
isWaterfall: boolean;
|
|
317
|
+
}, waterfallBases?: number[], signsPerDataset?: (-1 | 0 | 1)[][]): Map<string, number[]>;
|
|
318
|
+
|
|
319
|
+
export { renderWithCompositor as A, resolveBarLabels as B, resolveHoverRepaintFrame as C, resolveNearestHit as D, resolvePointLabels as E, resolveScatterLabels as F, scatterHitTest as G, triggerCompositorRepaint as H, BASELINE_TO_CANVAS as I, buildFrameParams as J, computeRangeBracketGeometry as K, computeWaterfallBases as L, detectCartesianMode as M, renderBracketsSvg as N, transformValues as O, barFindNearest as a, barFindAllNearest as b, barHitTest as c, buildAnimatedFrame as d, buildStaticFrame as e, calculateCartesianArea as f, cancelDriverRafs as g, candlestickFindAllNearest as h, candlestickHitTest as i, collectLineMarkerOverlays as j, collectScatterMarkerOverlays as k, computeCartesianLayout as l, computeCategoryBracketGeometry as m, computeCrosshairLayout as n, computeNaturalAxisWidths as o, computeStackBases as p, createAnimationDriver as q, driveCartesianUpdate as r, isLayoutCriticalFeature as s, lineFindAllNearest as t, lineHitTest as u, mergeAllNearestResults as v, needsAxisPadding as w, normalizeCrosshairConfig as x, registerDatasetLayers as y, renderBracketsCanvas as z };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { LineUpdateKind } from '@primeui/chart-types';
|
|
2
|
+
|
|
3
|
+
/** Streaming intent for a per-point data update.
|
|
4
|
+
*
|
|
5
|
+
* - `'append'`: exactly one new value at the end; existing values unchanged.
|
|
6
|
+
* - `'scroll'`: same length; values shifted by one position (rolling window).
|
|
7
|
+
* - `'update'`: general value change — every point may have moved.
|
|
8
|
+
* - `'replace'`: explicit user signal that this is a wholesale data swap;
|
|
9
|
+
* treated identically to `'update'` by current animation channels but
|
|
10
|
+
* reserved for future divergence (e.g. crossfade instead of point lerp).
|
|
11
|
+
* - `'none'`: no animation hint; renderer/controller picks default behavior.
|
|
12
|
+
*/
|
|
13
|
+
type StreamingHint = LineUpdateKind | 'replace' | 'none';
|
|
14
|
+
/** Auto-detect the streaming update kind by comparing array shapes.
|
|
15
|
+
*
|
|
16
|
+
* Delegates to the existing `detectLineUpdateKind` heuristic which classifies
|
|
17
|
+
* append / scroll / update based on length and content comparison.
|
|
18
|
+
*
|
|
19
|
+
* Callers that want explicit control should bypass this and pass the user's
|
|
20
|
+
* `updateMode` prop directly to the consumer (see LineRendererController's
|
|
21
|
+
* `_buildSceneTargets` for the canonical wiring).
|
|
22
|
+
* Returns the narrower `LineUpdateKind` (not the full `StreamingHint` union) because
|
|
23
|
+
* auto-detection cannot produce `'replace'` or `'none'` — those values only come from
|
|
24
|
+
* the user's explicit `animation.updateMode` prop.
|
|
25
|
+
*/
|
|
26
|
+
declare function detectStreamingUpdateKind(prev: number[] | undefined, next: number[]): LineUpdateKind;
|
|
27
|
+
/** Composite Line geometry — the custom-interpolated field on `LineState`.
|
|
28
|
+
*
|
|
29
|
+
* Carrying both `values` and `streamingHint` together lets the interpolator
|
|
30
|
+
* branch on intent without needing access to renderer/controller state. The
|
|
31
|
+
* controller is authoritative for `streamingHint` (it resolves the user's
|
|
32
|
+
* `updateMode` prop and runs auto-detection when `'auto'`).
|
|
33
|
+
*/
|
|
34
|
+
interface LineGeometry {
|
|
35
|
+
values: number[];
|
|
36
|
+
streamingHint: StreamingHint;
|
|
37
|
+
}
|
|
38
|
+
/** Custom interpolator for `LineState.geometry`.
|
|
39
|
+
*
|
|
40
|
+
* - `'append' | 'scroll'`: snap to target.values; the controller's tip-extension
|
|
41
|
+
* render pass handles the visible "last segment extension" animation.
|
|
42
|
+
* - `'update' | 'replace' | 'none'`: element-wise lerp via `lerpValues`.
|
|
43
|
+
*
|
|
44
|
+
* Read by `AnimatedElement.tick()` through the `AnimatableRegistry.custom`
|
|
45
|
+
* dispatch (Step 0 foundation, priority custom > color > number).
|
|
46
|
+
*/
|
|
47
|
+
declare function streamingPointsInterpolator<V>(from: V, to: V, t: number): V;
|
|
48
|
+
|
|
49
|
+
export { type LineGeometry as L, type StreamingHint as S, detectStreamingUpdateKind as d, streamingPointsInterpolator as s };
|