minerva-design 1.2.0 → 1.4.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/CHANGELOG.md +16 -0
- package/README.md +21 -21
- package/custom-elements.json +13630 -4757
- package/dist/angular/fesm2022/minerva-angular.mjs +6872 -172
- package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
- package/dist/angular/types/minerva-angular.d.ts +2240 -0
- package/dist/charts/canvas.d.cts +10 -2
- package/dist/charts/canvas.d.ts +10 -2
- package/dist/charts/core.cjs +1 -1
- package/dist/charts/core.d.cts +9 -3
- package/dist/charts/core.d.ts +9 -3
- package/dist/charts/core.js +19 -6
- package/dist/charts/engine/axis.cjs +1 -1
- package/dist/charts/engine/axis.cjs.map +1 -1
- package/dist/charts/engine/axis.js +6 -6
- package/dist/charts/engine/axis.js.map +1 -1
- package/dist/charts/engine/canvas.cjs +1 -1
- package/dist/charts/engine/canvas.cjs.map +1 -1
- package/dist/charts/engine/canvas.d.cts +11 -1
- package/dist/charts/engine/canvas.d.ts +11 -1
- package/dist/charts/engine/canvas.js +161 -99
- package/dist/charts/engine/canvas.js.map +1 -1
- package/dist/charts/engine/chart.cjs +1 -2
- package/dist/charts/engine/chart.cjs.map +1 -1
- package/dist/charts/engine/chart.d.cts +1 -1
- package/dist/charts/engine/chart.d.ts +1 -1
- package/dist/charts/engine/chart.js +390 -349
- package/dist/charts/engine/chart.js.map +1 -1
- package/dist/charts/engine/color.cjs +1 -1
- package/dist/charts/engine/color.cjs.map +1 -1
- package/dist/charts/engine/color.d.cts +17 -0
- package/dist/charts/engine/color.d.ts +17 -0
- package/dist/charts/engine/color.js +27 -3
- package/dist/charts/engine/color.js.map +1 -1
- package/dist/charts/engine/controller.cjs +2 -2
- package/dist/charts/engine/controller.cjs.map +1 -1
- package/dist/charts/engine/controller.d.cts +17 -2
- package/dist/charts/engine/controller.d.ts +17 -2
- package/dist/charts/engine/controller.js +404 -280
- package/dist/charts/engine/controller.js.map +1 -1
- package/dist/charts/engine/curve.cjs +2 -0
- package/dist/charts/engine/curve.cjs.map +1 -0
- package/dist/charts/engine/curve.d.cts +15 -0
- package/dist/charts/engine/curve.d.ts +15 -0
- package/dist/charts/engine/curve.js +56 -0
- package/dist/charts/engine/curve.js.map +1 -0
- package/dist/charts/engine/data.cjs +1 -1
- package/dist/charts/engine/data.cjs.map +1 -1
- package/dist/charts/engine/data.d.cts +21 -2
- package/dist/charts/engine/data.d.ts +21 -2
- package/dist/charts/engine/data.js +117 -43
- package/dist/charts/engine/data.js.map +1 -1
- package/dist/charts/engine/dom.cjs +1 -1
- package/dist/charts/engine/dom.cjs.map +1 -1
- package/dist/charts/engine/dom.d.cts +5 -3
- package/dist/charts/engine/dom.d.ts +5 -3
- package/dist/charts/engine/dom.js +27 -22
- package/dist/charts/engine/dom.js.map +1 -1
- package/dist/charts/engine/format.cjs +1 -1
- package/dist/charts/engine/format.cjs.map +1 -1
- package/dist/charts/engine/format.d.cts +21 -6
- package/dist/charts/engine/format.d.ts +21 -6
- package/dist/charts/engine/format.js +46 -21
- package/dist/charts/engine/format.js.map +1 -1
- package/dist/charts/engine/items.cjs +1 -1
- package/dist/charts/engine/items.cjs.map +1 -1
- package/dist/charts/engine/items.js +290 -62
- package/dist/charts/engine/items.js.map +1 -1
- package/dist/charts/engine/labels.cjs +2 -0
- package/dist/charts/engine/labels.cjs.map +1 -0
- package/dist/charts/engine/labels.d.cts +13 -0
- package/dist/charts/engine/labels.d.ts +13 -0
- package/dist/charts/engine/labels.js +74 -0
- package/dist/charts/engine/labels.js.map +1 -0
- package/dist/charts/engine/layout.cjs +1 -1
- package/dist/charts/engine/layout.cjs.map +1 -1
- package/dist/charts/engine/layout.d.cts +34 -2
- package/dist/charts/engine/layout.d.ts +34 -2
- package/dist/charts/engine/layout.js +53 -12
- package/dist/charts/engine/layout.js.map +1 -1
- package/dist/charts/engine/locale.cjs +2 -0
- package/dist/charts/engine/locale.cjs.map +1 -0
- package/dist/charts/engine/locale.d.cts +33 -0
- package/dist/charts/engine/locale.d.ts +33 -0
- package/dist/charts/engine/locale.js +68 -0
- package/dist/charts/engine/locale.js.map +1 -0
- package/dist/charts/engine/model.cjs +1 -1
- package/dist/charts/engine/model.cjs.map +1 -1
- package/dist/charts/engine/model.d.cts +68 -3
- package/dist/charts/engine/model.d.ts +68 -3
- package/dist/charts/engine/model.js +332 -108
- package/dist/charts/engine/model.js.map +1 -1
- package/dist/charts/engine/orderbook/book.cjs +2 -0
- package/dist/charts/engine/orderbook/book.cjs.map +1 -0
- package/dist/charts/engine/orderbook/book.d.cts +28 -0
- package/dist/charts/engine/orderbook/book.d.ts +28 -0
- package/dist/charts/engine/orderbook/book.js +134 -0
- package/dist/charts/engine/orderbook/book.js.map +1 -0
- package/dist/charts/engine/orderbook/depth.cjs +2 -0
- package/dist/charts/engine/orderbook/depth.cjs.map +1 -0
- package/dist/charts/engine/orderbook/depth.d.cts +7 -0
- package/dist/charts/engine/orderbook/depth.d.ts +7 -0
- package/dist/charts/engine/orderbook/depth.js +413 -0
- package/dist/charts/engine/orderbook/depth.js.map +1 -0
- package/dist/charts/engine/orderbook/format.cjs +2 -0
- package/dist/charts/engine/orderbook/format.cjs.map +1 -0
- package/dist/charts/engine/orderbook/format.d.cts +48 -0
- package/dist/charts/engine/orderbook/format.d.ts +48 -0
- package/dist/charts/engine/orderbook/format.js +65 -0
- package/dist/charts/engine/orderbook/format.js.map +1 -0
- package/dist/charts/engine/orderbook/heatmap.cjs +2 -0
- package/dist/charts/engine/orderbook/heatmap.cjs.map +1 -0
- package/dist/charts/engine/orderbook/heatmap.d.cts +9 -0
- package/dist/charts/engine/orderbook/heatmap.d.ts +9 -0
- package/dist/charts/engine/orderbook/heatmap.js +703 -0
- package/dist/charts/engine/orderbook/heatmap.js.map +1 -0
- package/dist/charts/engine/orderbook/host.cjs +2 -0
- package/dist/charts/engine/orderbook/host.cjs.map +1 -0
- package/dist/charts/engine/orderbook/host.d.cts +50 -0
- package/dist/charts/engine/orderbook/host.d.ts +50 -0
- package/dist/charts/engine/orderbook/host.js +161 -0
- package/dist/charts/engine/orderbook/host.js.map +1 -0
- package/dist/charts/engine/orderbook/index.cjs +1 -0
- package/dist/charts/engine/orderbook/index.d.cts +6 -0
- package/dist/charts/engine/orderbook/index.d.ts +6 -0
- package/dist/charts/engine/orderbook/index.js +6 -0
- package/dist/charts/engine/orderbook/ladder.cjs +2 -0
- package/dist/charts/engine/orderbook/ladder.cjs.map +1 -0
- package/dist/charts/engine/orderbook/ladder.d.cts +6 -0
- package/dist/charts/engine/orderbook/ladder.d.ts +6 -0
- package/dist/charts/engine/orderbook/ladder.js +341 -0
- package/dist/charts/engine/orderbook/ladder.js.map +1 -0
- package/dist/charts/engine/orderbook/tape.cjs +2 -0
- package/dist/charts/engine/orderbook/tape.cjs.map +1 -0
- package/dist/charts/engine/orderbook/tape.d.cts +6 -0
- package/dist/charts/engine/orderbook/tape.d.ts +6 -0
- package/dist/charts/engine/orderbook/tape.js +450 -0
- package/dist/charts/engine/orderbook/tape.js.map +1 -0
- package/dist/charts/engine/orderbook/types.d.cts +735 -0
- package/dist/charts/engine/orderbook/types.d.ts +735 -0
- package/dist/charts/engine/overlay.cjs +1 -1
- package/dist/charts/engine/overlay.cjs.map +1 -1
- package/dist/charts/engine/overlay.d.cts +18 -0
- package/dist/charts/engine/overlay.d.ts +18 -0
- package/dist/charts/engine/overlay.js +138 -102
- package/dist/charts/engine/overlay.js.map +1 -1
- package/dist/charts/engine/presets.cjs +2 -2
- package/dist/charts/engine/presets.cjs.map +1 -1
- package/dist/charts/engine/presets.d.cts +319 -5
- package/dist/charts/engine/presets.d.ts +319 -5
- package/dist/charts/engine/presets.js +463 -38
- package/dist/charts/engine/presets.js.map +1 -1
- package/dist/charts/engine/renderers/canvas2d.cjs +1 -1
- package/dist/charts/engine/renderers/canvas2d.cjs.map +1 -1
- package/dist/charts/engine/renderers/canvas2d.js +149 -111
- package/dist/charts/engine/renderers/canvas2d.js.map +1 -1
- package/dist/charts/engine/renderers/detect.cjs +1 -1
- package/dist/charts/engine/renderers/detect.cjs.map +1 -1
- package/dist/charts/engine/renderers/detect.js +18 -15
- package/dist/charts/engine/renderers/detect.js.map +1 -1
- package/dist/charts/engine/renderers/gl.cjs +2 -0
- package/dist/charts/engine/renderers/gl.cjs.map +1 -0
- package/dist/charts/engine/renderers/gl.d.cts +21 -0
- package/dist/charts/engine/renderers/gl.d.ts +21 -0
- package/dist/charts/engine/renderers/gl.js +56 -0
- package/dist/charts/engine/renderers/gl.js.map +1 -0
- package/dist/charts/engine/renderers/range.cjs +1 -1
- package/dist/charts/engine/renderers/range.cjs.map +1 -1
- package/dist/charts/engine/renderers/range.js +4 -4
- package/dist/charts/engine/renderers/range.js.map +1 -1
- package/dist/charts/engine/renderers/shaders.cjs +180 -20
- package/dist/charts/engine/renderers/shaders.cjs.map +1 -1
- package/dist/charts/engine/renderers/shaders.d.cts +18 -2
- package/dist/charts/engine/renderers/shaders.d.ts +18 -2
- package/dist/charts/engine/renderers/shaders.js +176 -20
- package/dist/charts/engine/renderers/shaders.js.map +1 -1
- package/dist/charts/engine/renderers/types.cjs.map +1 -1
- package/dist/charts/engine/renderers/types.d.cts +11 -4
- package/dist/charts/engine/renderers/types.d.ts +11 -4
- package/dist/charts/engine/renderers/types.js.map +1 -1
- package/dist/charts/engine/renderers/webgl.cjs +2 -0
- package/dist/charts/engine/renderers/webgl.cjs.map +1 -0
- package/dist/charts/engine/renderers/webgl.d.cts +4 -0
- package/dist/charts/engine/renderers/webgl.d.ts +4 -0
- package/dist/charts/engine/renderers/webgl.js +133 -0
- package/dist/charts/engine/renderers/webgl.js.map +1 -0
- package/dist/charts/engine/renderers/webgl2.cjs +1 -1
- package/dist/charts/engine/renderers/webgl2.cjs.map +1 -1
- package/dist/charts/engine/renderers/webgl2.d.cts +0 -1
- package/dist/charts/engine/renderers/webgl2.d.ts +0 -1
- package/dist/charts/engine/renderers/webgl2.js +62 -90
- package/dist/charts/engine/renderers/webgl2.js.map +1 -1
- package/dist/charts/engine/renderers/webgpu.cjs +1 -1
- package/dist/charts/engine/renderers/webgpu.cjs.map +1 -1
- package/dist/charts/engine/renderers/webgpu.js +18 -15
- package/dist/charts/engine/renderers/webgpu.js.map +1 -1
- package/dist/charts/engine/scale.cjs +1 -1
- package/dist/charts/engine/scale.cjs.map +1 -1
- package/dist/charts/engine/scale.js +1 -1
- package/dist/charts/engine/scale.js.map +1 -1
- package/dist/charts/engine/scene.cjs +1 -1
- package/dist/charts/engine/scene.cjs.map +1 -1
- package/dist/charts/engine/scene.d.cts +32 -9
- package/dist/charts/engine/scene.d.ts +32 -9
- package/dist/charts/engine/scene.js +363 -122
- package/dist/charts/engine/scene.js.map +1 -1
- package/dist/charts/engine/shapes/bullet.cjs +2 -0
- package/dist/charts/engine/shapes/bullet.cjs.map +1 -0
- package/dist/charts/engine/shapes/bullet.d.cts +6 -0
- package/dist/charts/engine/shapes/bullet.d.ts +6 -0
- package/dist/charts/engine/shapes/bullet.js +255 -0
- package/dist/charts/engine/shapes/bullet.js.map +1 -0
- package/dist/charts/engine/shapes/calendar.cjs +2 -0
- package/dist/charts/engine/shapes/calendar.cjs.map +1 -0
- package/dist/charts/engine/shapes/calendar.d.cts +38 -0
- package/dist/charts/engine/shapes/calendar.d.ts +38 -0
- package/dist/charts/engine/shapes/calendar.js +369 -0
- package/dist/charts/engine/shapes/calendar.js.map +1 -0
- package/dist/charts/engine/shapes/canvas.cjs +2 -0
- package/dist/charts/engine/shapes/canvas.cjs.map +1 -0
- package/dist/charts/engine/shapes/canvas.d.cts +65 -0
- package/dist/charts/engine/shapes/canvas.d.ts +65 -0
- package/dist/charts/engine/shapes/canvas.js +168 -0
- package/dist/charts/engine/shapes/canvas.js.map +1 -0
- package/dist/charts/engine/shapes/chart.cjs +2 -0
- package/dist/charts/engine/shapes/chart.cjs.map +1 -0
- package/dist/charts/engine/shapes/chart.d.cts +7 -0
- package/dist/charts/engine/shapes/chart.d.ts +7 -0
- package/dist/charts/engine/shapes/chart.js +292 -0
- package/dist/charts/engine/shapes/chart.js.map +1 -0
- package/dist/charts/engine/shapes/draw.cjs +2 -0
- package/dist/charts/engine/shapes/draw.cjs.map +1 -0
- package/dist/charts/engine/shapes/draw.d.cts +22 -0
- package/dist/charts/engine/shapes/draw.d.ts +22 -0
- package/dist/charts/engine/shapes/draw.js +165 -0
- package/dist/charts/engine/shapes/draw.js.map +1 -0
- package/dist/charts/engine/shapes/funnel.cjs +2 -0
- package/dist/charts/engine/shapes/funnel.cjs.map +1 -0
- package/dist/charts/engine/shapes/funnel.d.cts +6 -0
- package/dist/charts/engine/shapes/funnel.d.ts +6 -0
- package/dist/charts/engine/shapes/funnel.js +149 -0
- package/dist/charts/engine/shapes/funnel.js.map +1 -0
- package/dist/charts/engine/shapes/gauge.cjs +2 -0
- package/dist/charts/engine/shapes/gauge.cjs.map +1 -0
- package/dist/charts/engine/shapes/gauge.d.cts +7 -0
- package/dist/charts/engine/shapes/gauge.d.ts +7 -0
- package/dist/charts/engine/shapes/gauge.js +210 -0
- package/dist/charts/engine/shapes/gauge.js.map +1 -0
- package/dist/charts/engine/shapes/hit.cjs +2 -0
- package/dist/charts/engine/shapes/hit.cjs.map +1 -0
- package/dist/charts/engine/shapes/hit.d.cts +30 -0
- package/dist/charts/engine/shapes/hit.d.ts +30 -0
- package/dist/charts/engine/shapes/hit.js +145 -0
- package/dist/charts/engine/shapes/hit.js.map +1 -0
- package/dist/charts/engine/shapes/index.d.cts +12 -0
- package/dist/charts/engine/shapes/index.d.ts +12 -0
- package/dist/charts/engine/shapes/labels.cjs +2 -0
- package/dist/charts/engine/shapes/labels.cjs.map +1 -0
- package/dist/charts/engine/shapes/labels.d.cts +14 -0
- package/dist/charts/engine/shapes/labels.d.ts +14 -0
- package/dist/charts/engine/shapes/labels.js +146 -0
- package/dist/charts/engine/shapes/labels.js.map +1 -0
- package/dist/charts/engine/shapes/layout.cjs +3 -0
- package/dist/charts/engine/shapes/layout.cjs.map +1 -0
- package/dist/charts/engine/shapes/layout.d.cts +93 -0
- package/dist/charts/engine/shapes/layout.d.ts +93 -0
- package/dist/charts/engine/shapes/layout.js +353 -0
- package/dist/charts/engine/shapes/layout.js.map +1 -0
- package/dist/charts/engine/shapes/pie.cjs +2 -0
- package/dist/charts/engine/shapes/pie.cjs.map +1 -0
- package/dist/charts/engine/shapes/pie.d.cts +20 -0
- package/dist/charts/engine/shapes/pie.d.ts +20 -0
- package/dist/charts/engine/shapes/pie.js +302 -0
- package/dist/charts/engine/shapes/pie.js.map +1 -0
- package/dist/charts/engine/shapes/radar.cjs +2 -0
- package/dist/charts/engine/shapes/radar.cjs.map +1 -0
- package/dist/charts/engine/shapes/radar.d.cts +8 -0
- package/dist/charts/engine/shapes/radar.d.ts +8 -0
- package/dist/charts/engine/shapes/radar.js +198 -0
- package/dist/charts/engine/shapes/radar.js.map +1 -0
- package/dist/charts/engine/shapes/radialBar.cjs +2 -0
- package/dist/charts/engine/shapes/radialBar.cjs.map +1 -0
- package/dist/charts/engine/shapes/radialBar.d.cts +8 -0
- package/dist/charts/engine/shapes/radialBar.d.ts +8 -0
- package/dist/charts/engine/shapes/radialBar.js +155 -0
- package/dist/charts/engine/shapes/radialBar.js.map +1 -0
- package/dist/charts/engine/shapes/runtime.cjs +2 -0
- package/dist/charts/engine/shapes/runtime.cjs.map +1 -0
- package/dist/charts/engine/shapes/runtime.d.cts +36 -0
- package/dist/charts/engine/shapes/runtime.d.ts +36 -0
- package/dist/charts/engine/shapes/runtime.js +107 -0
- package/dist/charts/engine/shapes/runtime.js.map +1 -0
- package/dist/charts/engine/shapes/sankey.cjs +2 -0
- package/dist/charts/engine/shapes/sankey.cjs.map +1 -0
- package/dist/charts/engine/shapes/sankey.d.cts +29 -0
- package/dist/charts/engine/shapes/sankey.d.ts +29 -0
- package/dist/charts/engine/shapes/sankey.js +372 -0
- package/dist/charts/engine/shapes/sankey.js.map +1 -0
- package/dist/charts/engine/shapes/scene.cjs +2 -0
- package/dist/charts/engine/shapes/scene.cjs.map +1 -0
- package/dist/charts/engine/shapes/scene.d.cts +311 -0
- package/dist/charts/engine/shapes/scene.d.ts +311 -0
- package/dist/charts/engine/shapes/scene.js +125 -0
- package/dist/charts/engine/shapes/scene.js.map +1 -0
- package/dist/charts/engine/shapes/sunburst.cjs +2 -0
- package/dist/charts/engine/shapes/sunburst.cjs.map +1 -0
- package/dist/charts/engine/shapes/sunburst.d.cts +6 -0
- package/dist/charts/engine/shapes/sunburst.d.ts +6 -0
- package/dist/charts/engine/shapes/sunburst.js +261 -0
- package/dist/charts/engine/shapes/sunburst.js.map +1 -0
- package/dist/charts/engine/shapes/treemap.cjs +2 -0
- package/dist/charts/engine/shapes/treemap.cjs.map +1 -0
- package/dist/charts/engine/shapes/treemap.d.cts +14 -0
- package/dist/charts/engine/shapes/treemap.d.ts +14 -0
- package/dist/charts/engine/shapes/treemap.js +213 -0
- package/dist/charts/engine/shapes/treemap.js.map +1 -0
- package/dist/charts/engine/shapes/types.d.cts +719 -0
- package/dist/charts/engine/shapes/types.d.ts +719 -0
- package/dist/charts/engine/signature.cjs +2 -0
- package/dist/charts/engine/signature.cjs.map +1 -0
- package/dist/charts/engine/signature.d.cts +9 -0
- package/dist/charts/engine/signature.d.ts +9 -0
- package/dist/charts/engine/signature.js +13 -0
- package/dist/charts/engine/signature.js.map +1 -0
- package/dist/charts/engine/theme.cjs +1 -1
- package/dist/charts/engine/theme.cjs.map +1 -1
- package/dist/charts/engine/theme.d.cts +10 -1
- package/dist/charts/engine/theme.d.ts +10 -1
- package/dist/charts/engine/theme.js +40 -16
- package/dist/charts/engine/theme.js.map +1 -1
- package/dist/charts/engine/three-d/canvas2d.cjs +2 -0
- package/dist/charts/engine/three-d/canvas2d.cjs.map +1 -0
- package/dist/charts/engine/three-d/canvas2d.d.cts +4 -0
- package/dist/charts/engine/three-d/canvas2d.d.ts +4 -0
- package/dist/charts/engine/three-d/canvas2d.js +104 -0
- package/dist/charts/engine/three-d/canvas2d.js.map +1 -0
- package/dist/charts/engine/three-d/chart.cjs +2 -0
- package/dist/charts/engine/three-d/chart.cjs.map +1 -0
- package/dist/charts/engine/three-d/chart.d.cts +15 -0
- package/dist/charts/engine/three-d/chart.d.ts +15 -0
- package/dist/charts/engine/three-d/chart.js +621 -0
- package/dist/charts/engine/three-d/chart.js.map +1 -0
- package/dist/charts/engine/three-d/colormap.cjs +2 -0
- package/dist/charts/engine/three-d/colormap.cjs.map +1 -0
- package/dist/charts/engine/three-d/colormap.d.cts +16 -0
- package/dist/charts/engine/three-d/colormap.d.ts +16 -0
- package/dist/charts/engine/three-d/colormap.js +166 -0
- package/dist/charts/engine/three-d/colormap.js.map +1 -0
- package/dist/charts/engine/three-d/contours.cjs +2 -0
- package/dist/charts/engine/three-d/contours.cjs.map +1 -0
- package/dist/charts/engine/three-d/contours.d.cts +7 -0
- package/dist/charts/engine/three-d/contours.d.ts +7 -0
- package/dist/charts/engine/three-d/contours.js +47 -0
- package/dist/charts/engine/three-d/contours.js.map +1 -0
- package/dist/charts/engine/three-d/detect.cjs +2 -0
- package/dist/charts/engine/three-d/detect.cjs.map +1 -0
- package/dist/charts/engine/three-d/detect.d.cts +11 -0
- package/dist/charts/engine/three-d/detect.d.ts +11 -0
- package/dist/charts/engine/three-d/detect.js +35 -0
- package/dist/charts/engine/three-d/detect.js.map +1 -0
- package/dist/charts/engine/three-d/dom.cjs +2 -0
- package/dist/charts/engine/three-d/dom.cjs.map +1 -0
- package/dist/charts/engine/three-d/dom.d.cts +21 -0
- package/dist/charts/engine/three-d/dom.d.ts +21 -0
- package/dist/charts/engine/three-d/dom.js +98 -0
- package/dist/charts/engine/three-d/dom.js.map +1 -0
- package/dist/charts/engine/three-d/geometry.cjs +2 -0
- package/dist/charts/engine/three-d/geometry.cjs.map +1 -0
- package/dist/charts/engine/three-d/geometry.d.cts +76 -0
- package/dist/charts/engine/three-d/geometry.d.ts +76 -0
- package/dist/charts/engine/three-d/geometry.js +529 -0
- package/dist/charts/engine/three-d/geometry.js.map +1 -0
- package/dist/charts/engine/three-d/hover.cjs +2 -0
- package/dist/charts/engine/three-d/hover.cjs.map +1 -0
- package/dist/charts/engine/three-d/hover.d.cts +25 -0
- package/dist/charts/engine/three-d/hover.d.ts +25 -0
- package/dist/charts/engine/three-d/hover.js +131 -0
- package/dist/charts/engine/three-d/hover.js.map +1 -0
- package/dist/charts/engine/three-d/index.cjs +1 -0
- package/dist/charts/engine/three-d/index.d.cts +2 -0
- package/dist/charts/engine/three-d/index.d.ts +2 -0
- package/dist/charts/engine/three-d/index.js +2 -0
- package/dist/charts/engine/three-d/labels.cjs +2 -0
- package/dist/charts/engine/three-d/labels.cjs.map +1 -0
- package/dist/charts/engine/three-d/labels.d.cts +23 -0
- package/dist/charts/engine/three-d/labels.d.ts +23 -0
- package/dist/charts/engine/three-d/labels.js +136 -0
- package/dist/charts/engine/three-d/labels.js.map +1 -0
- package/dist/charts/engine/three-d/math.cjs +2 -0
- package/dist/charts/engine/three-d/math.cjs.map +1 -0
- package/dist/charts/engine/three-d/math.d.cts +84 -0
- package/dist/charts/engine/three-d/math.d.ts +84 -0
- package/dist/charts/engine/three-d/math.js +150 -0
- package/dist/charts/engine/three-d/math.js.map +1 -0
- package/dist/charts/engine/three-d/model.cjs +2 -0
- package/dist/charts/engine/three-d/model.cjs.map +1 -0
- package/dist/charts/engine/three-d/model.d.cts +130 -0
- package/dist/charts/engine/three-d/model.d.ts +130 -0
- package/dist/charts/engine/three-d/model.js +277 -0
- package/dist/charts/engine/three-d/model.js.map +1 -0
- package/dist/charts/engine/three-d/overlay.cjs +2 -0
- package/dist/charts/engine/three-d/overlay.cjs.map +1 -0
- package/dist/charts/engine/three-d/overlay.d.cts +72 -0
- package/dist/charts/engine/three-d/overlay.d.ts +72 -0
- package/dist/charts/engine/three-d/overlay.js +197 -0
- package/dist/charts/engine/three-d/overlay.js.map +1 -0
- package/dist/charts/engine/three-d/pick.cjs +2 -0
- package/dist/charts/engine/three-d/pick.cjs.map +1 -0
- package/dist/charts/engine/three-d/pick.d.cts +52 -0
- package/dist/charts/engine/three-d/pick.d.ts +52 -0
- package/dist/charts/engine/three-d/pick.js +220 -0
- package/dist/charts/engine/three-d/pick.js.map +1 -0
- package/dist/charts/engine/three-d/render-types.cjs +2 -0
- package/dist/charts/engine/three-d/render-types.cjs.map +1 -0
- package/dist/charts/engine/three-d/render-types.d.cts +82 -0
- package/dist/charts/engine/three-d/render-types.d.ts +82 -0
- package/dist/charts/engine/three-d/render-types.js +13 -0
- package/dist/charts/engine/three-d/render-types.js.map +1 -0
- package/dist/charts/engine/three-d/shaders.cjs +276 -0
- package/dist/charts/engine/three-d/shaders.cjs.map +1 -0
- package/dist/charts/engine/three-d/shaders.d.cts +26 -0
- package/dist/charts/engine/three-d/shaders.d.ts +26 -0
- package/dist/charts/engine/three-d/shaders.js +191 -0
- package/dist/charts/engine/three-d/shaders.js.map +1 -0
- package/dist/charts/engine/three-d/sort.cjs +2 -0
- package/dist/charts/engine/three-d/sort.cjs.map +1 -0
- package/dist/charts/engine/three-d/sort.d.cts +18 -0
- package/dist/charts/engine/three-d/sort.d.ts +18 -0
- package/dist/charts/engine/three-d/sort.js +71 -0
- package/dist/charts/engine/three-d/sort.js.map +1 -0
- package/dist/charts/engine/three-d/types.d.cts +588 -0
- package/dist/charts/engine/three-d/types.d.ts +588 -0
- package/dist/charts/engine/three-d/webgl.cjs +2 -0
- package/dist/charts/engine/three-d/webgl.cjs.map +1 -0
- package/dist/charts/engine/three-d/webgl.d.cts +10 -0
- package/dist/charts/engine/three-d/webgl.d.ts +10 -0
- package/dist/charts/engine/three-d/webgl.js +130 -0
- package/dist/charts/engine/three-d/webgl.js.map +1 -0
- package/dist/charts/engine/three-d/webgpu.cjs +2 -0
- package/dist/charts/engine/three-d/webgpu.cjs.map +1 -0
- package/dist/charts/engine/three-d/webgpu.d.cts +5 -0
- package/dist/charts/engine/three-d/webgpu.d.ts +5 -0
- package/dist/charts/engine/three-d/webgpu.js +249 -0
- package/dist/charts/engine/three-d/webgpu.js.map +1 -0
- package/dist/charts/engine/time.cjs +1 -1
- package/dist/charts/engine/time.cjs.map +1 -1
- package/dist/charts/engine/time.d.cts +13 -4
- package/dist/charts/engine/time.d.ts +13 -4
- package/dist/charts/engine/time.js +156 -91
- package/dist/charts/engine/time.js.map +1 -1
- package/dist/charts/engine/trading/chart.cjs +2 -0
- package/dist/charts/engine/trading/chart.cjs.map +1 -0
- package/dist/charts/engine/trading/chart.d.cts +3 -0
- package/dist/charts/engine/trading/chart.d.ts +3 -0
- package/dist/charts/engine/trading/chart.js +1507 -0
- package/dist/charts/engine/trading/chart.js.map +1 -0
- package/dist/charts/engine/trading/drawings.cjs +2 -0
- package/dist/charts/engine/trading/drawings.cjs.map +1 -0
- package/dist/charts/engine/trading/drawings.d.cts +57 -0
- package/dist/charts/engine/trading/drawings.d.ts +57 -0
- package/dist/charts/engine/trading/drawings.js +160 -0
- package/dist/charts/engine/trading/drawings.js.map +1 -0
- package/dist/charts/engine/trading/format.cjs +2 -0
- package/dist/charts/engine/trading/format.cjs.map +1 -0
- package/dist/charts/engine/trading/format.d.cts +60 -0
- package/dist/charts/engine/trading/format.d.ts +60 -0
- package/dist/charts/engine/trading/format.js +131 -0
- package/dist/charts/engine/trading/format.js.map +1 -0
- package/dist/charts/engine/trading/geometry.cjs +2 -0
- package/dist/charts/engine/trading/geometry.cjs.map +1 -0
- package/dist/charts/engine/trading/geometry.d.cts +55 -0
- package/dist/charts/engine/trading/geometry.d.ts +55 -0
- package/dist/charts/engine/trading/geometry.js +131 -0
- package/dist/charts/engine/trading/geometry.js.map +1 -0
- package/dist/charts/engine/trading/index.cjs +1 -0
- package/dist/charts/engine/trading/index.d.cts +3 -0
- package/dist/charts/engine/trading/index.d.ts +3 -0
- package/dist/charts/engine/trading/index.js +3 -0
- package/dist/charts/engine/trading/indicators.cjs +2 -0
- package/dist/charts/engine/trading/indicators.cjs.map +1 -0
- package/dist/charts/engine/trading/indicators.d.cts +105 -0
- package/dist/charts/engine/trading/indicators.d.ts +105 -0
- package/dist/charts/engine/trading/indicators.js +268 -0
- package/dist/charts/engine/trading/indicators.js.map +1 -0
- package/dist/charts/engine/trading/labels.cjs +2 -0
- package/dist/charts/engine/trading/labels.cjs.map +1 -0
- package/dist/charts/engine/trading/labels.d.cts +7 -0
- package/dist/charts/engine/trading/labels.d.ts +7 -0
- package/dist/charts/engine/trading/labels.js +91 -0
- package/dist/charts/engine/trading/labels.js.map +1 -0
- package/dist/charts/engine/trading/scale.cjs +2 -0
- package/dist/charts/engine/trading/scale.cjs.map +1 -0
- package/dist/charts/engine/trading/scale.d.cts +46 -0
- package/dist/charts/engine/trading/scale.d.ts +46 -0
- package/dist/charts/engine/trading/scale.js +100 -0
- package/dist/charts/engine/trading/scale.js.map +1 -0
- package/dist/charts/engine/trading/store.cjs +2 -0
- package/dist/charts/engine/trading/store.cjs.map +1 -0
- package/dist/charts/engine/trading/store.d.cts +62 -0
- package/dist/charts/engine/trading/store.d.ts +62 -0
- package/dist/charts/engine/trading/store.js +129 -0
- package/dist/charts/engine/trading/store.js.map +1 -0
- package/dist/charts/engine/trading/studies.cjs +2 -0
- package/dist/charts/engine/trading/studies.cjs.map +1 -0
- package/dist/charts/engine/trading/studies.d.cts +52 -0
- package/dist/charts/engine/trading/studies.d.ts +52 -0
- package/dist/charts/engine/trading/studies.js +254 -0
- package/dist/charts/engine/trading/studies.js.map +1 -0
- package/dist/charts/engine/trading/types.d.cts +656 -0
- package/dist/charts/engine/trading/types.d.ts +656 -0
- package/dist/charts/engine/types.d.cts +227 -15
- package/dist/charts/engine/types.d.ts +227 -15
- package/dist/charts/index.cjs +1 -1
- package/dist/charts/index.d.cts +7 -2
- package/dist/charts/index.d.ts +7 -2
- package/dist/charts/index.js +22 -8
- package/dist/charts/react/Chart.cjs +1 -1
- package/dist/charts/react/Chart.cjs.map +1 -1
- package/dist/charts/react/Chart.d.cts +11 -4
- package/dist/charts/react/Chart.d.ts +11 -4
- package/dist/charts/react/Chart.js +70 -47
- package/dist/charts/react/Chart.js.map +1 -1
- package/dist/charts/react/charts.cjs +1 -1
- package/dist/charts/react/charts.cjs.map +1 -1
- package/dist/charts/react/charts.d.cts +48 -2
- package/dist/charts/react/charts.d.ts +48 -2
- package/dist/charts/react/charts.js +371 -76
- package/dist/charts/react/charts.js.map +1 -1
- package/dist/charts/react/orderbook.cjs +2 -0
- package/dist/charts/react/orderbook.cjs.map +1 -0
- package/dist/charts/react/orderbook.d.cts +142 -0
- package/dist/charts/react/orderbook.d.ts +142 -0
- package/dist/charts/react/orderbook.js +182 -0
- package/dist/charts/react/orderbook.js.map +1 -0
- package/dist/charts/react/shapes.cjs +2 -0
- package/dist/charts/react/shapes.cjs.map +1 -0
- package/dist/charts/react/shapes.d.cts +537 -0
- package/dist/charts/react/shapes.d.ts +537 -0
- package/dist/charts/react/shapes.js +429 -0
- package/dist/charts/react/shapes.js.map +1 -0
- package/dist/charts/react/three-d.cjs +2 -0
- package/dist/charts/react/three-d.cjs.map +1 -0
- package/dist/charts/react/three-d.d.cts +151 -0
- package/dist/charts/react/three-d.d.ts +151 -0
- package/dist/charts/react/three-d.js +154 -0
- package/dist/charts/react/three-d.js.map +1 -0
- package/dist/charts/react/trading.cjs +2 -0
- package/dist/charts/react/trading.cjs.map +1 -0
- package/dist/charts/react/trading.d.cts +93 -0
- package/dist/charts/react/trading.d.ts +93 -0
- package/dist/charts/react/trading.js +95 -0
- package/dist/charts/react/trading.js.map +1 -0
- package/dist/charts/react/types.d.cts +200 -7
- package/dist/charts/react/types.d.ts +200 -7
- package/dist/core/contracts.cjs +1 -1
- package/dist/core/contracts.cjs.map +1 -1
- package/dist/core/contracts.js +1 -1
- package/dist/core/contracts.js.map +1 -1
- package/dist/native/charts/src/canvas.cjs +1 -1
- package/dist/native/charts/src/canvas.js +9 -3
- package/dist/native/charts/src/engine/axis.cjs +1 -1
- package/dist/native/charts/src/engine/axis.cjs.map +1 -1
- package/dist/native/charts/src/engine/axis.js +6 -6
- package/dist/native/charts/src/engine/axis.js.map +1 -1
- package/dist/native/charts/src/engine/color.cjs +1 -1
- package/dist/native/charts/src/engine/color.cjs.map +1 -1
- package/dist/native/charts/src/engine/color.js +12 -3
- package/dist/native/charts/src/engine/color.js.map +1 -1
- package/dist/native/charts/src/engine/controller.cjs +2 -2
- package/dist/native/charts/src/engine/controller.cjs.map +1 -1
- package/dist/native/charts/src/engine/controller.js +418 -294
- package/dist/native/charts/src/engine/controller.js.map +1 -1
- package/dist/native/charts/src/engine/curve.cjs +2 -0
- package/dist/native/charts/src/engine/curve.cjs.map +1 -0
- package/dist/native/charts/src/engine/curve.js +56 -0
- package/dist/native/charts/src/engine/curve.js.map +1 -0
- package/dist/native/charts/src/engine/data.cjs +1 -1
- package/dist/native/charts/src/engine/data.cjs.map +1 -1
- package/dist/native/charts/src/engine/data.js +117 -43
- package/dist/native/charts/src/engine/data.js.map +1 -1
- package/dist/native/charts/src/engine/format.cjs +1 -1
- package/dist/native/charts/src/engine/format.cjs.map +1 -1
- package/dist/native/charts/src/engine/format.js +46 -21
- package/dist/native/charts/src/engine/format.js.map +1 -1
- package/dist/native/charts/src/engine/labels.cjs +2 -0
- package/dist/native/charts/src/engine/labels.cjs.map +1 -0
- package/dist/native/charts/src/engine/labels.js +74 -0
- package/dist/native/charts/src/engine/labels.js.map +1 -0
- package/dist/native/charts/src/engine/layout.cjs +1 -1
- package/dist/native/charts/src/engine/layout.cjs.map +1 -1
- package/dist/native/charts/src/engine/layout.js +53 -12
- package/dist/native/charts/src/engine/layout.js.map +1 -1
- package/dist/native/charts/src/engine/locale.cjs +2 -0
- package/dist/native/charts/src/engine/locale.cjs.map +1 -0
- package/dist/native/charts/src/engine/locale.js +60 -0
- package/dist/native/charts/src/engine/locale.js.map +1 -0
- package/dist/native/charts/src/engine/model.cjs +1 -1
- package/dist/native/charts/src/engine/model.cjs.map +1 -1
- package/dist/native/charts/src/engine/model.js +335 -111
- package/dist/native/charts/src/engine/model.js.map +1 -1
- package/dist/native/charts/src/engine/overlay.cjs +1 -1
- package/dist/native/charts/src/engine/overlay.cjs.map +1 -1
- package/dist/native/charts/src/engine/overlay.js +54 -31
- package/dist/native/charts/src/engine/overlay.js.map +1 -1
- package/dist/native/charts/src/engine/presets.cjs +2 -2
- package/dist/native/charts/src/engine/presets.cjs.map +1 -1
- package/dist/native/charts/src/engine/presets.js +456 -34
- package/dist/native/charts/src/engine/presets.js.map +1 -1
- package/dist/native/charts/src/engine/scale.cjs +1 -1
- package/dist/native/charts/src/engine/scale.cjs.map +1 -1
- package/dist/native/charts/src/engine/scale.js +1 -1
- package/dist/native/charts/src/engine/scale.js.map +1 -1
- package/dist/native/charts/src/engine/scene.cjs +1 -1
- package/dist/native/charts/src/engine/scene.cjs.map +1 -1
- package/dist/native/charts/src/engine/scene.js +369 -128
- package/dist/native/charts/src/engine/scene.js.map +1 -1
- package/dist/native/charts/src/engine/shapes/bullet.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/bullet.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/bullet.js +255 -0
- package/dist/native/charts/src/engine/shapes/bullet.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/calendar.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/calendar.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/calendar.js +364 -0
- package/dist/native/charts/src/engine/shapes/calendar.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/canvas.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/canvas.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/canvas.js +168 -0
- package/dist/native/charts/src/engine/shapes/canvas.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/draw.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/draw.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/draw.js +165 -0
- package/dist/native/charts/src/engine/shapes/draw.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/funnel.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/funnel.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/funnel.js +149 -0
- package/dist/native/charts/src/engine/shapes/funnel.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/gauge.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/gauge.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/gauge.js +210 -0
- package/dist/native/charts/src/engine/shapes/gauge.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/hit.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/hit.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/hit.js +106 -0
- package/dist/native/charts/src/engine/shapes/hit.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/labels.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/labels.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/labels.js +146 -0
- package/dist/native/charts/src/engine/shapes/labels.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/layout.cjs +3 -0
- package/dist/native/charts/src/engine/shapes/layout.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/layout.js +331 -0
- package/dist/native/charts/src/engine/shapes/layout.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/pie.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/pie.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/pie.js +302 -0
- package/dist/native/charts/src/engine/shapes/pie.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/radar.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/radar.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/radar.js +198 -0
- package/dist/native/charts/src/engine/shapes/radar.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/radialBar.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/radialBar.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/radialBar.js +155 -0
- package/dist/native/charts/src/engine/shapes/radialBar.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/runtime.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/runtime.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/runtime.js +107 -0
- package/dist/native/charts/src/engine/shapes/runtime.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/sankey.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/sankey.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/sankey.js +372 -0
- package/dist/native/charts/src/engine/shapes/sankey.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/scene.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/scene.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/scene.js +125 -0
- package/dist/native/charts/src/engine/shapes/scene.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/sunburst.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/sunburst.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/sunburst.js +261 -0
- package/dist/native/charts/src/engine/shapes/sunburst.js.map +1 -0
- package/dist/native/charts/src/engine/shapes/treemap.cjs +2 -0
- package/dist/native/charts/src/engine/shapes/treemap.cjs.map +1 -0
- package/dist/native/charts/src/engine/shapes/treemap.js +213 -0
- package/dist/native/charts/src/engine/shapes/treemap.js.map +1 -0
- package/dist/native/charts/src/engine/theme.cjs.map +1 -1
- package/dist/native/charts/src/engine/theme.js.map +1 -1
- package/dist/native/charts/src/engine/time.cjs +1 -1
- package/dist/native/charts/src/engine/time.cjs.map +1 -1
- package/dist/native/charts/src/engine/time.js +156 -91
- package/dist/native/charts/src/engine/time.js.map +1 -1
- package/dist/native/components/Chart/ChartBase.cjs +1 -1
- package/dist/native/components/Chart/ChartBase.cjs.map +1 -1
- package/dist/native/components/Chart/ChartBase.d.cts +1 -1
- package/dist/native/components/Chart/ChartBase.d.ts +1 -1
- package/dist/native/components/Chart/ChartBase.js +110 -107
- package/dist/native/components/Chart/ChartBase.js.map +1 -1
- package/dist/native/components/Chart/charts.cjs +1 -1
- package/dist/native/components/Chart/charts.cjs.map +1 -1
- package/dist/native/components/Chart/charts.d.cts +6 -1
- package/dist/native/components/Chart/charts.d.ts +6 -1
- package/dist/native/components/Chart/charts.js +53 -29
- package/dist/native/components/Chart/charts.js.map +1 -1
- package/dist/native/components/Chart/index.cjs +1 -1
- package/dist/native/components/Chart/index.d.cts +1 -1
- package/dist/native/components/Chart/index.d.ts +1 -1
- package/dist/native/components/Chart/index.js +2 -2
- package/dist/native/components/Chart/scene.cjs +1 -1
- package/dist/native/components/Chart/scene.cjs.map +1 -1
- package/dist/native/components/Chart/scene.js +244 -215
- package/dist/native/components/Chart/scene.js.map +1 -1
- package/dist/native/components/Chart/types.d.cts +26 -3
- package/dist/native/components/Chart/types.d.ts +26 -3
- package/dist/native/components/Charts/charts.cjs +2 -0
- package/dist/native/components/Charts/charts.cjs.map +1 -0
- package/dist/native/components/Charts/charts.d.cts +41 -0
- package/dist/native/components/Charts/charts.d.ts +41 -0
- package/dist/native/components/Charts/charts.js +338 -0
- package/dist/native/components/Charts/charts.js.map +1 -0
- package/dist/native/components/Charts/index.cjs +1 -0
- package/dist/native/components/Charts/index.d.cts +2 -0
- package/dist/native/components/Charts/index.d.ts +2 -0
- package/dist/native/components/Charts/index.js +2 -0
- package/dist/native/components/Charts/types.d.cts +144 -0
- package/dist/native/components/Charts/types.d.ts +144 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.cjs +2 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.cjs.map +1 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.d.cts +24 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.d.ts +24 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.js +271 -0
- package/dist/native/components/ShapeChart/ShapeChartBase.js.map +1 -0
- package/dist/native/components/ShapeChart/charts.cjs +2 -0
- package/dist/native/components/ShapeChart/charts.cjs.map +1 -0
- package/dist/native/components/ShapeChart/charts.d.cts +38 -0
- package/dist/native/components/ShapeChart/charts.d.ts +38 -0
- package/dist/native/components/ShapeChart/charts.js +387 -0
- package/dist/native/components/ShapeChart/charts.js.map +1 -0
- package/dist/native/components/ShapeChart/draw.cjs +2 -0
- package/dist/native/components/ShapeChart/draw.cjs.map +1 -0
- package/dist/native/components/ShapeChart/draw.d.cts +4 -0
- package/dist/native/components/ShapeChart/draw.d.ts +4 -0
- package/dist/native/components/ShapeChart/draw.js +104 -0
- package/dist/native/components/ShapeChart/draw.js.map +1 -0
- package/dist/native/components/ShapeChart/geometry.cjs +2 -0
- package/dist/native/components/ShapeChart/geometry.cjs.map +1 -0
- package/dist/native/components/ShapeChart/geometry.d.cts +71 -0
- package/dist/native/components/ShapeChart/geometry.d.ts +71 -0
- package/dist/native/components/ShapeChart/geometry.js +602 -0
- package/dist/native/components/ShapeChart/geometry.js.map +1 -0
- package/dist/native/components/ShapeChart/index.cjs +1 -0
- package/dist/native/components/ShapeChart/index.d.cts +2 -0
- package/dist/native/components/ShapeChart/index.d.ts +2 -0
- package/dist/native/components/ShapeChart/index.js +2 -0
- package/dist/native/components/ShapeChart/recorder.cjs +2 -0
- package/dist/native/components/ShapeChart/recorder.cjs.map +1 -0
- package/dist/native/components/ShapeChart/recorder.d.cts +106 -0
- package/dist/native/components/ShapeChart/recorder.d.ts +106 -0
- package/dist/native/components/ShapeChart/recorder.js +574 -0
- package/dist/native/components/ShapeChart/recorder.js.map +1 -0
- package/dist/native/components/ShapeChart/types.d.cts +509 -0
- package/dist/native/components/ShapeChart/types.d.ts +509 -0
- package/dist/native/index.cjs +1 -1
- package/dist/native/index.d.cts +2 -0
- package/dist/native/index.d.ts +2 -0
- package/dist/native/index.js +14 -10
- package/dist/native/manifest.d.cts +6 -4
- package/dist/native/manifest.d.ts +6 -4
- package/dist/native/source/components/Chart/ChartBase.tsx +8 -1
- package/dist/native/source/components/Chart/charts.tsx +42 -6
- package/dist/native/source/components/Chart/index.ts +1 -0
- package/dist/native/source/components/Chart/scene.tsx +204 -100
- package/dist/native/source/components/Chart/types.ts +31 -1
- package/dist/native/source/components/Charts/charts.tsx +493 -0
- package/dist/native/source/components/Charts/index.ts +14 -0
- package/dist/native/source/components/Charts/types.ts +207 -0
- package/dist/native/source/components/ShapeChart/ShapeChartBase.tsx +484 -0
- package/dist/native/source/components/ShapeChart/charts.tsx +605 -0
- package/dist/native/source/components/ShapeChart/draw.tsx +170 -0
- package/dist/native/source/components/ShapeChart/geometry.ts +1185 -0
- package/dist/native/source/components/ShapeChart/index.ts +15 -0
- package/dist/native/source/components/ShapeChart/recorder.ts +830 -0
- package/dist/native/source/components/ShapeChart/types.ts +564 -0
- package/dist/native/source/index.ts +2 -0
- package/dist/native/source/manifest.ts +30 -4
- package/dist/taro/charts.d.ts +209 -4
- package/dist/taro/index.d.ts +1 -0
- package/dist/taro/index.js +8032 -1891
- package/dist/taro/manifest.d.ts +1 -0
- package/dist/taro/shape-charts.d.ts +537 -0
- package/dist/uni/AreaChart.vue +68 -0
- package/dist/uni/AreaChart.vue.d.ts +120 -0
- package/dist/uni/Badge.vue.d.ts +1 -1
- package/dist/uni/BoxPlotChart.vue +66 -0
- package/dist/uni/BoxPlotChart.vue.d.ts +102 -0
- package/dist/uni/BubbleChart.vue +68 -0
- package/dist/uni/BubbleChart.vue.d.ts +106 -0
- package/dist/uni/BulletChart.vue +86 -0
- package/dist/uni/BulletChart.vue.d.ts +110 -0
- package/dist/uni/CalendarHeatmap.vue +92 -0
- package/dist/uni/CalendarHeatmap.vue.d.ts +129 -0
- package/dist/uni/CandlestickChart.vue +66 -0
- package/dist/uni/CandlestickChart.vue.d.ts +100 -0
- package/dist/uni/DonutChart.vue +72 -0
- package/dist/uni/DonutChart.vue.d.ts +114 -0
- package/dist/uni/FunnelChart.vue +67 -0
- package/dist/uni/FunnelChart.vue.d.ts +104 -0
- package/dist/uni/GanttChart.vue +67 -0
- package/dist/uni/GanttChart.vue.d.ts +123 -0
- package/dist/uni/GaugeChart.vue +77 -0
- package/dist/uni/GaugeChart.vue.d.ts +123 -0
- package/dist/uni/HeatmapChart.vue +66 -0
- package/dist/uni/HeatmapChart.vue.d.ts +114 -0
- package/dist/uni/HistogramChart.vue +66 -0
- package/dist/uni/HistogramChart.vue.d.ts +121 -0
- package/dist/uni/HorizontalBarChart.vue +68 -0
- package/dist/uni/HorizontalBarChart.vue.d.ts +127 -0
- package/dist/uni/Input.vue.d.ts +1 -1
- package/dist/uni/MixedChart.vue +68 -0
- package/dist/uni/MixedChart.vue.d.ts +106 -0
- package/dist/uni/NumberInput.vue.d.ts +1 -1
- package/dist/uni/PieChart.vue +72 -0
- package/dist/uni/PieChart.vue.d.ts +114 -0
- package/dist/uni/RadarChart.vue +67 -0
- package/dist/uni/RadarChart.vue.d.ts +110 -0
- package/dist/uni/RadialBarChart.vue +90 -0
- package/dist/uni/RadialBarChart.vue.d.ts +132 -0
- package/dist/uni/RangeAreaChart.vue +68 -0
- package/dist/uni/RangeAreaChart.vue.d.ts +102 -0
- package/dist/uni/ResponsiveGrid.vue.d.ts +1 -1
- package/dist/uni/SankeyChart.vue +88 -0
- package/dist/uni/SankeyChart.vue.d.ts +121 -0
- package/dist/uni/ShapeChart.vue +73 -0
- package/dist/uni/ShapeChart.vue.d.ts +54 -0
- package/dist/uni/Sparkline.vue +58 -0
- package/dist/uni/Sparkline.vue.d.ts +77 -0
- package/dist/uni/SunburstChart.vue +90 -0
- package/dist/uni/SunburstChart.vue.d.ts +114 -0
- package/dist/uni/Textarea.vue.d.ts +1 -1
- package/dist/uni/TimePicker.vue.d.ts +1 -1
- package/dist/uni/TreemapChart.vue +65 -0
- package/dist/uni/TreemapChart.vue.d.ts +100 -0
- package/dist/uni/WaterfallChart.vue +66 -0
- package/dist/uni/WaterfallChart.vue.d.ts +125 -0
- package/dist/uni/chart-types.d.ts +216 -2
- package/dist/uni/chart-types.js +174 -0
- package/dist/uni/charts-canvas.js +10 -3
- package/dist/uni/index.d.ts +26 -1
- package/dist/uni/index.js +26 -1
- package/dist/uni/manifest.d.ts +272 -0
- package/dist/uni/manifest.js +387 -0
- package/dist/uni/named-chart-options.d.ts +88 -0
- package/dist/uni/named-chart-options.js +156 -0
- package/dist/uni/shape-chart-canvas.d.ts +51 -0
- package/dist/uni/shape-chart-canvas.js +342 -0
- package/dist/uni/shape-chart-types.d.ts +381 -0
- package/dist/uni/shape-chart-types.js +261 -0
- package/dist/vue/components/Chart/AreaChart.vue.d.ts +124 -0
- package/dist/vue/components/Chart/AreaChart.vue.js +7 -0
- package/dist/vue/components/Chart/AreaChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/AreaChart.vue_vue_type_script_setup_true_lang.js +49 -0
- package/dist/vue/components/Chart/AreaChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Bar3DChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/Bar3DChart.vue.js +7 -0
- package/dist/vue/components/Chart/Bar3DChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/Bar3DChart.vue_vue_type_script_setup_true_lang.js +55 -0
- package/dist/vue/components/Chart/Bar3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/BarChart.vue.d.ts +123 -0
- package/dist/vue/components/Chart/BarChart.vue.js +7 -0
- package/dist/vue/components/Chart/BarChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/BarChart.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/vue/components/Chart/BarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/BoxPlotChart.vue.d.ts +112 -0
- package/dist/vue/components/Chart/BoxPlotChart.vue.js +7 -0
- package/dist/vue/components/Chart/BoxPlotChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/BubbleChart.vue.d.ts +106 -0
- package/dist/vue/components/Chart/BubbleChart.vue.js +7 -0
- package/dist/vue/components/Chart/BubbleChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/BubbleChart.vue_vue_type_script_setup_true_lang.js +52 -0
- package/dist/vue/components/Chart/BubbleChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/BulletChart.vue.d.ts +117 -0
- package/dist/vue/components/Chart/BulletChart.vue.js +7 -0
- package/dist/vue/components/Chart/BulletChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/BulletChart.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/vue/components/Chart/BulletChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue.d.ts +144 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue.js +7 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue.js.map +1 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue_vue_type_script_setup_true_lang.js +77 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/CandlestickChart.vue.d.ts +94 -0
- package/dist/vue/components/Chart/CandlestickChart.vue.js +7 -0
- package/dist/vue/components/Chart/CandlestickChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/CandlestickChart.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/vue/components/Chart/CandlestickChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Chart.vue.d.ts +103 -0
- package/dist/vue/components/Chart/Chart.vue.js +7 -0
- package/dist/vue/components/Chart/Chart.vue.js.map +1 -0
- package/dist/vue/components/Chart/Chart.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/vue/components/Chart/Chart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/DepthChart.vue.d.ts +139 -0
- package/dist/vue/components/Chart/DepthChart.vue.js +7 -0
- package/dist/vue/components/Chart/DepthChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/DepthChart.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/vue/components/Chart/DepthChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/DonutChart.vue.d.ts +104 -0
- package/dist/vue/components/Chart/DonutChart.vue.js +7 -0
- package/dist/vue/components/Chart/DonutChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/DonutChart.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/vue/components/Chart/DonutChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/FunnelChart.vue.d.ts +105 -0
- package/dist/vue/components/Chart/FunnelChart.vue.js +7 -0
- package/dist/vue/components/Chart/FunnelChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/FunnelChart.vue_vue_type_script_setup_true_lang.js +58 -0
- package/dist/vue/components/Chart/FunnelChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/GanttChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/GanttChart.vue.js +7 -0
- package/dist/vue/components/Chart/GanttChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js +98 -0
- package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/GaugeChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/GaugeChart.vue.js +7 -0
- package/dist/vue/components/Chart/GaugeChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/GaugeChart.vue_vue_type_script_setup_true_lang.js +71 -0
- package/dist/vue/components/Chart/GaugeChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/HeatmapChart.vue.d.ts +125 -0
- package/dist/vue/components/Chart/HeatmapChart.vue.js +7 -0
- package/dist/vue/components/Chart/HeatmapChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js +65 -0
- package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/HistogramChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/HistogramChart.vue.js +7 -0
- package/dist/vue/components/Chart/HistogramChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/HistogramChart.vue_vue_type_script_setup_true_lang.js +66 -0
- package/dist/vue/components/Chart/HistogramChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/HorizontalBarChart.vue.d.ts +121 -0
- package/dist/vue/components/Chart/HorizontalBarChart.vue.js +7 -0
- package/dist/vue/components/Chart/HorizontalBarChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/HorizontalBarChart.vue_vue_type_script_setup_true_lang.js +55 -0
- package/dist/vue/components/Chart/HorizontalBarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Line3DChart.vue.d.ts +121 -0
- package/dist/vue/components/Chart/Line3DChart.vue.js +7 -0
- package/dist/vue/components/Chart/Line3DChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/Line3DChart.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/vue/components/Chart/Line3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/LineChart.vue.d.ts +125 -0
- package/dist/vue/components/Chart/LineChart.vue.js +7 -0
- package/dist/vue/components/Chart/LineChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/LineChart.vue_vue_type_script_setup_true_lang.js +50 -0
- package/dist/vue/components/Chart/LineChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/MixedChart.vue.d.ts +103 -0
- package/dist/vue/components/Chart/MixedChart.vue.js +7 -0
- package/dist/vue/components/Chart/MixedChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/MixedChart.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/vue/components/Chart/MixedChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/OrderBook.vue.d.ts +125 -0
- package/dist/vue/components/Chart/OrderBook.vue.js +7 -0
- package/dist/vue/components/Chart/OrderBook.vue.js.map +1 -0
- package/dist/vue/components/Chart/OrderBook.vue_vue_type_script_setup_true_lang.js +38 -0
- package/dist/vue/components/Chart/OrderBook.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/OrderBookHeatmap.vue.d.ts +128 -0
- package/dist/vue/components/Chart/OrderBookHeatmap.vue.js +7 -0
- package/dist/vue/components/Chart/OrderBookHeatmap.vue.js.map +1 -0
- package/dist/vue/components/Chart/OrderBookHeatmap.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/vue/components/Chart/OrderBookHeatmap.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/PieChart.vue.d.ts +104 -0
- package/dist/vue/components/Chart/PieChart.vue.js +7 -0
- package/dist/vue/components/Chart/PieChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/PieChart.vue_vue_type_script_setup_true_lang.js +53 -0
- package/dist/vue/components/Chart/PieChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/QuadrantChart.vue.d.ts +186 -0
- package/dist/vue/components/Chart/QuadrantChart.vue.js +7 -0
- package/dist/vue/components/Chart/QuadrantChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/RadarChart.vue.d.ts +111 -0
- package/dist/vue/components/Chart/RadarChart.vue.js +7 -0
- package/dist/vue/components/Chart/RadarChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/RadarChart.vue_vue_type_script_setup_true_lang.js +61 -0
- package/dist/vue/components/Chart/RadarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/RadialBarChart.vue.d.ts +147 -0
- package/dist/vue/components/Chart/RadialBarChart.vue.js +7 -0
- package/dist/vue/components/Chart/RadialBarChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/RadialBarChart.vue_vue_type_script_setup_true_lang.js +78 -0
- package/dist/vue/components/Chart/RadialBarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/RangeAreaChart.vue.d.ts +106 -0
- package/dist/vue/components/Chart/RangeAreaChart.vue.js +7 -0
- package/dist/vue/components/Chart/RangeAreaChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/RangeAreaChart.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/vue/components/Chart/RangeAreaChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/SankeyChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/SankeyChart.vue.js +7 -0
- package/dist/vue/components/Chart/SankeyChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/SankeyChart.vue_vue_type_script_setup_true_lang.js +71 -0
- package/dist/vue/components/Chart/SankeyChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Scatter3DChart.vue.d.ts +121 -0
- package/dist/vue/components/Chart/Scatter3DChart.vue.js +7 -0
- package/dist/vue/components/Chart/Scatter3DChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/Scatter3DChart.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/vue/components/Chart/Scatter3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/ScatterChart.vue.d.ts +94 -0
- package/dist/vue/components/Chart/ScatterChart.vue.js +7 -0
- package/dist/vue/components/Chart/ScatterChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/ScatterChart.vue_vue_type_script_setup_true_lang.js +44 -0
- package/dist/vue/components/Chart/ScatterChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/ShapeChart.vue.d.ts +39 -0
- package/dist/vue/components/Chart/ShapeChart.vue.js +7 -0
- package/dist/vue/components/Chart/ShapeChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/ShapeChart.vue_vue_type_script_setup_true_lang.js +43 -0
- package/dist/vue/components/Chart/ShapeChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Sparkline.vue.d.ts +90 -0
- package/dist/vue/components/Chart/Sparkline.vue.js +7 -0
- package/dist/vue/components/Chart/Sparkline.vue.js.map +1 -0
- package/dist/vue/components/Chart/Sparkline.vue_vue_type_script_setup_true_lang.js +66 -0
- package/dist/vue/components/Chart/Sparkline.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/SunburstChart.vue.d.ts +123 -0
- package/dist/vue/components/Chart/SunburstChart.vue.js +7 -0
- package/dist/vue/components/Chart/SunburstChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/SunburstChart.vue_vue_type_script_setup_true_lang.js +68 -0
- package/dist/vue/components/Chart/SunburstChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/Surface3DChart.vue.d.ts +143 -0
- package/dist/vue/components/Chart/Surface3DChart.vue.js +7 -0
- package/dist/vue/components/Chart/Surface3DChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/Surface3DChart.vue_vue_type_script_setup_true_lang.js +60 -0
- package/dist/vue/components/Chart/Surface3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/TimeAndSales.vue.d.ts +114 -0
- package/dist/vue/components/Chart/TimeAndSales.vue.js +7 -0
- package/dist/vue/components/Chart/TimeAndSales.vue.js.map +1 -0
- package/dist/vue/components/Chart/TimeAndSales.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/vue/components/Chart/TimeAndSales.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/TradingChart.vue.d.ts +160 -0
- package/dist/vue/components/Chart/TradingChart.vue.js +7 -0
- package/dist/vue/components/Chart/TradingChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js +70 -0
- package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/TreemapChart.vue.d.ts +97 -0
- package/dist/vue/components/Chart/TreemapChart.vue.js +7 -0
- package/dist/vue/components/Chart/TreemapChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/TreemapChart.vue_vue_type_script_setup_true_lang.js +54 -0
- package/dist/vue/components/Chart/TreemapChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/WaterfallChart.vue.d.ts +132 -0
- package/dist/vue/components/Chart/WaterfallChart.vue.js +7 -0
- package/dist/vue/components/Chart/WaterfallChart.vue.js.map +1 -0
- package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js +68 -0
- package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/vue/components/Chart/cartesian.d.ts +47 -0
- package/dist/vue/components/Chart/cartesian.js +56 -0
- package/dist/vue/components/Chart/cartesian.js.map +1 -0
- package/dist/vue/components/Chart/engine.d.ts +35 -0
- package/dist/vue/components/Chart/engine.js +35 -0
- package/dist/vue/components/Chart/engine.js.map +1 -0
- package/dist/vue/components/Chart/index.d.ts +41 -0
- package/dist/vue/components/Chart/index.js +40 -0
- package/dist/vue/components/Chart/orderbook.d.ts +359 -0
- package/dist/vue/components/Chart/orderbook.js +126 -0
- package/dist/vue/components/Chart/orderbook.js.map +1 -0
- package/dist/vue/components/Chart/props.d.ts +188 -0
- package/dist/vue/components/Chart/props.js +92 -0
- package/dist/vue/components/Chart/props.js.map +1 -0
- package/dist/vue/components/Chart/shape.d.ts +41 -0
- package/dist/vue/components/Chart/shape.js +42 -0
- package/dist/vue/components/Chart/shape.js.map +1 -0
- package/dist/vue/components/Chart/three-d.d.ts +106 -0
- package/dist/vue/components/Chart/three-d.js +88 -0
- package/dist/vue/components/Chart/three-d.js.map +1 -0
- package/dist/vue/components/Chart/trading.d.ts +105 -0
- package/dist/vue/components/Chart/trading.js +55 -0
- package/dist/vue/components/Chart/trading.js.map +1 -0
- package/dist/vue/components/Chart/types.d.ts +137 -0
- package/dist/vue/global.d.ts +38 -0
- package/dist/vue/groups/charts.d.ts +1 -0
- package/dist/vue/groups/charts.js +87 -0
- package/dist/vue/groups/charts.js.map +1 -0
- package/dist/vue/index.d.ts +1 -0
- package/dist/vue/index.js +63 -23
- package/dist/vue/plugin.js +12 -10
- package/dist/vue/plugin.js.map +1 -1
- package/dist/weapp/area-chart/index.js +1 -0
- package/dist/weapp/area-chart/index.json +1 -0
- package/dist/weapp/area-chart/index.wxml +1 -0
- package/dist/weapp/area-chart/index.wxss +1 -0
- package/dist/weapp/box-plot-chart/index.js +1 -0
- package/dist/weapp/box-plot-chart/index.json +1 -0
- package/dist/weapp/box-plot-chart/index.wxml +1 -0
- package/dist/weapp/box-plot-chart/index.wxss +1 -0
- package/dist/weapp/bubble-chart/index.js +1 -0
- package/dist/weapp/bubble-chart/index.json +1 -0
- package/dist/weapp/bubble-chart/index.wxml +1 -0
- package/dist/weapp/bubble-chart/index.wxss +1 -0
- package/dist/weapp/bullet-chart/index.js +1 -0
- package/dist/weapp/bullet-chart/index.json +1 -0
- package/dist/weapp/bullet-chart/index.wxml +1 -0
- package/dist/weapp/bullet-chart/index.wxss +1 -0
- package/dist/weapp/calendar-heatmap/index.js +1 -0
- package/dist/weapp/calendar-heatmap/index.json +1 -0
- package/dist/weapp/calendar-heatmap/index.wxml +1 -0
- package/dist/weapp/calendar-heatmap/index.wxss +1 -0
- package/dist/weapp/candlestick-chart/index.js +1 -0
- package/dist/weapp/candlestick-chart/index.json +1 -0
- package/dist/weapp/candlestick-chart/index.wxml +1 -0
- package/dist/weapp/candlestick-chart/index.wxss +1 -0
- package/dist/weapp/charts/canvas.js +11436 -0
- package/dist/weapp/charts/core.d.ts +2 -0
- package/dist/weapp/charts/core.js +41 -0
- package/dist/weapp/controls.js +1428 -3732
- package/dist/weapp/donut-chart/index.js +1 -0
- package/dist/weapp/donut-chart/index.json +1 -0
- package/dist/weapp/donut-chart/index.wxml +1 -0
- package/dist/weapp/donut-chart/index.wxss +1 -0
- package/dist/weapp/funnel-chart/index.js +1 -0
- package/dist/weapp/funnel-chart/index.json +1 -0
- package/dist/weapp/funnel-chart/index.wxml +1 -0
- package/dist/weapp/funnel-chart/index.wxss +1 -0
- package/dist/weapp/gantt-chart/index.js +1 -0
- package/dist/weapp/gantt-chart/index.json +1 -0
- package/dist/weapp/gantt-chart/index.wxml +1 -0
- package/dist/weapp/gantt-chart/index.wxss +1 -0
- package/dist/weapp/gauge-chart/index.js +1 -0
- package/dist/weapp/gauge-chart/index.json +1 -0
- package/dist/weapp/gauge-chart/index.wxml +1 -0
- package/dist/weapp/gauge-chart/index.wxss +1 -0
- package/dist/weapp/heatmap-chart/index.js +1 -0
- package/dist/weapp/heatmap-chart/index.json +1 -0
- package/dist/weapp/heatmap-chart/index.wxml +1 -0
- package/dist/weapp/heatmap-chart/index.wxss +1 -0
- package/dist/weapp/histogram-chart/index.js +1 -0
- package/dist/weapp/histogram-chart/index.json +1 -0
- package/dist/weapp/histogram-chart/index.wxml +1 -0
- package/dist/weapp/histogram-chart/index.wxss +1 -0
- package/dist/weapp/horizontal-bar-chart/index.js +1 -0
- package/dist/weapp/horizontal-bar-chart/index.json +1 -0
- package/dist/weapp/horizontal-bar-chart/index.wxml +1 -0
- package/dist/weapp/horizontal-bar-chart/index.wxss +1 -0
- package/dist/weapp/mixed-chart/index.js +1 -0
- package/dist/weapp/mixed-chart/index.json +1 -0
- package/dist/weapp/mixed-chart/index.wxml +1 -0
- package/dist/weapp/mixed-chart/index.wxss +1 -0
- package/dist/weapp/pie-chart/index.js +1 -0
- package/dist/weapp/pie-chart/index.json +1 -0
- package/dist/weapp/pie-chart/index.wxml +1 -0
- package/dist/weapp/pie-chart/index.wxss +1 -0
- package/dist/weapp/radar-chart/index.js +1 -0
- package/dist/weapp/radar-chart/index.json +1 -0
- package/dist/weapp/radar-chart/index.wxml +1 -0
- package/dist/weapp/radar-chart/index.wxss +1 -0
- package/dist/weapp/radial-bar-chart/index.js +1 -0
- package/dist/weapp/radial-bar-chart/index.json +1 -0
- package/dist/weapp/radial-bar-chart/index.wxml +1 -0
- package/dist/weapp/radial-bar-chart/index.wxss +1 -0
- package/dist/weapp/range-area-chart/index.js +1 -0
- package/dist/weapp/range-area-chart/index.json +1 -0
- package/dist/weapp/range-area-chart/index.wxml +1 -0
- package/dist/weapp/range-area-chart/index.wxss +1 -0
- package/dist/weapp/sankey-chart/index.js +1 -0
- package/dist/weapp/sankey-chart/index.json +1 -0
- package/dist/weapp/sankey-chart/index.wxml +1 -0
- package/dist/weapp/sankey-chart/index.wxss +1 -0
- package/dist/weapp/shape-chart/index.js +1 -0
- package/dist/weapp/shape-chart/index.json +1 -0
- package/dist/weapp/shape-chart/index.wxml +1 -0
- package/dist/weapp/shape-chart/index.wxss +1 -0
- package/dist/weapp/sparkline/index.js +1 -0
- package/dist/weapp/sparkline/index.json +1 -0
- package/dist/weapp/sparkline/index.wxml +1 -0
- package/dist/weapp/sparkline/index.wxss +1 -0
- package/dist/weapp/sunburst-chart/index.js +1 -0
- package/dist/weapp/sunburst-chart/index.json +1 -0
- package/dist/weapp/sunburst-chart/index.wxml +1 -0
- package/dist/weapp/sunburst-chart/index.wxss +1 -0
- package/dist/weapp/treemap-chart/index.js +1 -0
- package/dist/weapp/treemap-chart/index.json +1 -0
- package/dist/weapp/treemap-chart/index.wxml +1 -0
- package/dist/weapp/treemap-chart/index.wxss +1 -0
- package/dist/weapp/types.d.ts +466 -0
- package/dist/weapp/waterfall-chart/index.js +1 -0
- package/dist/weapp/waterfall-chart/index.json +1 -0
- package/dist/weapp/waterfall-chart/index.wxml +1 -0
- package/dist/weapp/waterfall-chart/index.wxss +1 -0
- package/dist/web-components/components/chart/chart.d.ts +58 -0
- package/dist/web-components/components/chart/chart.js +55 -0
- package/dist/web-components/components/chart/chart.js.map +1 -0
- package/dist/web-components/components/chart/charts.d.ts +252 -0
- package/dist/web-components/components/chart/charts.js +201 -0
- package/dist/web-components/components/chart/charts.js.map +1 -0
- package/dist/web-components/components/chart/engine-element.d.ts +53 -0
- package/dist/web-components/components/chart/engine-element.js +77 -0
- package/dist/web-components/components/chart/engine-element.js.map +1 -0
- package/dist/web-components/components/chart/extended.d.ts +224 -0
- package/dist/web-components/components/chart/extended.js +183 -0
- package/dist/web-components/components/chart/extended.js.map +1 -0
- package/dist/web-components/components/chart/series.d.ts +7 -0
- package/dist/web-components/components/chart/series.js +14 -0
- package/dist/web-components/components/chart/series.js.map +1 -0
- package/dist/web-components/components/chart/shape-chart.d.ts +199 -0
- package/dist/web-components/components/chart/shape-chart.js +161 -0
- package/dist/web-components/components/chart/shape-chart.js.map +1 -0
- package/dist/web-components/components/chart/shapes-extended.d.ts +162 -0
- package/dist/web-components/components/chart/shapes-extended.js +156 -0
- package/dist/web-components/components/chart/shapes-extended.js.map +1 -0
- package/dist/web-components/components/chart-3d/chart-3d.d.ts +111 -0
- package/dist/web-components/components/chart-3d/chart-3d.js +97 -0
- package/dist/web-components/components/chart-3d/chart-3d.js.map +1 -0
- package/dist/web-components/components/order-book/order-book.d.ts +165 -0
- package/dist/web-components/components/order-book/order-book.js +174 -0
- package/dist/web-components/components/order-book/order-book.js.map +1 -0
- package/dist/web-components/components/trading-chart/trading-chart.d.ts +96 -0
- package/dist/web-components/components/trading-chart/trading-chart.js +96 -0
- package/dist/web-components/components/trading-chart/trading-chart.js.map +1 -0
- package/dist/web-components/elements/chart-3d.d.ts +2 -0
- package/dist/web-components/elements/chart-3d.js +13 -0
- package/dist/web-components/elements/chart-3d.js.map +1 -0
- package/dist/web-components/elements/chart.d.ts +7 -0
- package/dist/web-components/elements/chart.js +43 -0
- package/dist/web-components/elements/chart.js.map +1 -0
- package/dist/web-components/elements/order-book.d.ts +2 -0
- package/dist/web-components/elements/order-book.js +13 -0
- package/dist/web-components/elements/order-book.js.map +1 -0
- package/dist/web-components/elements/trading-chart.d.ts +2 -0
- package/dist/web-components/elements/trading-chart.js +8 -0
- package/dist/web-components/elements/trading-chart.js.map +1 -0
- package/dist/web-components/html-custom-data.json +1192 -29
- package/dist/web-components/types/react.d.ts +435 -0
- package/dist/web-components/types/solid.d.ts +321 -0
- package/dist/web-components/types/svelte.d.ts +321 -0
- package/dist/web-components/types/vue.d.ts +359 -0
- package/package.json +113 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("./color.cjs");var
|
|
1
|
+
const e=require("./color.cjs"),t=require("./layout.cjs");var n=(e,t=e.fontSize,n=400)=>`${n} ${t}px ${e.fontFamily}`,r=e=>Math.round(e)+.5,i=(e,n,r,i)=>{let{plot:a}=n,o=t.toScreen(n,e.x??0,e.y??0),s=n.horizontal?{x:e.y===void 0,y:e.x===void 0}:{x:e.x===void 0,y:e.y===void 0},c=s.x?a.x+a.width/2:o.x,l=s.y?a.y+a.height/2:o.y,u=c-r/2,d=l-i/2;return e.anchor===`top`?d=l+6:e.anchor===`bottom`?d=l-6-i:e.anchor===`left`?u=c+6:e.anchor===`right`&&(u=c-6-r),u=Math.max(a.x+6,Math.min(u,a.x+a.width-6-r)),d=Math.max(a.y+2,Math.min(d,a.y+a.height-2-i)),{x:u,y:d,width:r,height:i}},a=(e,n)=>{let{plot:r}=n,[i,a]=n.horizontal?[r.y,r.y+r.height]:[r.x,r.x+r.width],[o,s]=n.horizontal?[r.x,r.x+r.width]:[r.y,r.y+r.height],c=(e,t,n)=>e<t?t:e>n?n:e;return t.screenRect(n,c(n.xToPx(e.x0??-1/0),i,a),c(n.xToPx(e.x1??1/0),i,a),c(n.yToPx(e.y0??-1/0),o,s),c(n.yToPx(e.y1??1/0),o,s))},o=(e,t)=>({vertical:e.axis===`x`!==t.horizontal,at:e.axis===`x`?t.xToPx(e.value):t.yToPx(e.value)}),s=(t,i)=>{let{scales:o,theme:s,xTicks:c,yTicks:l}=i,{plot:u}=o,d=o.horizontal?i.y:i.x,f=o.horizontal?i.x:i.y,p=o.horizontal?l:c,m=o.horizontal?c:l,h=o.horizontal?o.yToPx:o.xToPx,g=o.horizontal?o.xToPx:o.yToPx;t.clearRect(0,0,i.width,i.height),t.save(),t.beginPath(),t.rect(u.x,u.y,u.width,u.height),t.clip();for(let n of i.annotations){if(n.type!==`rect`)continue;let r=a(n,o);r.width<=0||r.height<=0||(t.fillStyle=e.toCss(n.color,n.opacity),t.fillRect(r.x,r.y,r.width,r.height))}if(t.restore(),t.lineWidth=1,t.strokeStyle=e.toCss(s.grid),t.beginPath(),f.grid)for(let e of m.values){let n=r(g(e));n<u.y-1||n>u.y+u.height+1||(t.moveTo(u.x,n),t.lineTo(u.x+u.width,n))}if(d.grid)for(let e of p.values){let n=r(h(e));n<u.x-1||n>u.x+u.width+1||(t.moveTo(n,u.y),t.lineTo(n,u.y+u.height))}t.stroke();let _=Math.ceil(s.fontSize*1.4);if(t.font=n(s),t.fillStyle=e.toCss(s.textMuted),d.visible){t.strokeStyle=e.toCss(s.axis),t.beginPath();let a=r(u.y+u.height);t.moveTo(u.x,a),t.lineTo(u.x+u.width,a),t.stroke(),t.textBaseline=`top`,t.textAlign=`center`;let o=-1/0,c=p.values.map((e,t)=>({px:h(e),text:p.labels[t]})).sort((e,t)=>e.px-t.px);for(let{px:e,text:n}of c){if(e<u.x-.5||e>u.x+u.width+.5)continue;let r=t.measureText(n).width,a=Math.max(0,Math.min(i.width-r,e-r/2));a<o+6||(o=a+r,t.fillText(n,a+r/2,u.y+u.height+7))}d.title&&(t.font=n(s,s.fontSize+1,500),t.fillStyle=e.toCss(s.text,.8),t.fillText(d.title,u.x+u.width/2,u.y+u.height+_+10))}if(f.visible){t.font=n(s),t.fillStyle=e.toCss(s.textMuted),t.textAlign=`right`,t.textBaseline=`middle`;let r=-1/0,i=m.values.map((e,t)=>({py:g(e),text:m.labels[t]})).sort((e,t)=>e.py-t.py),a=s.fontSize+2;for(let{py:e,text:n}of i)if(!(e<u.y-.5||e>u.y+u.height+.5)){if(o.horizontal){if(e-a/2<r)continue;r=e+a/2}t.fillText(n,u.x-8,e)}f.title&&(t.save(),t.font=n(s,s.fontSize+1,500),t.fillStyle=e.toCss(s.text,.8),t.translate(_/2+4,u.y+u.height/2),t.rotate(-Math.PI/2),t.textAlign=`center`,t.fillText(f.title,0,0),t.restore())}let v=o.horizontal?null:i.y2,y=i.y2Ticks;if(v&&y&&v.visible){let r=u.x+u.width;t.font=n(s),t.fillStyle=e.toCss(s.textMuted),t.textAlign=`left`,t.textBaseline=`middle`,y.values.forEach((e,n)=>{let i=o.yToPx(e);i<u.y-.5||i>u.y+u.height+.5||t.fillText(y.labels[n],r+8,i)}),v.title&&(t.save(),t.font=n(s,s.fontSize+1,500),t.fillStyle=e.toCss(s.text,.8),t.translate(i.width-_/2-4,u.y+u.height/2),t.rotate(Math.PI/2),t.textAlign=`center`,t.fillText(v.title,0,0),t.restore())}},c=(e,t)=>e.x<t.x+t.width&&t.x<e.x+e.width&&e.y<t.y+t.height&&t.y<e.y+e.height,l=(e,t)=>e.x>=t.x&&e.y>=t.y&&e.x+e.width<=t.x+t.width&&e.y+e.height<=t.y+t.height,u=(e,t,n,r,i,a)=>{e.lineWidth=3,e.lineJoin=`round`,e.strokeStyle=a,e.strokeText(t,n,r),e.fillStyle=i,e.fillText(t,n,r)},d=(e,t,n,r,i=[])=>{let a=[];for(let o of e){let e=n(o.text),s=o.r+4,u={x:o.x-e/2,y:o.y-s-r,width:e,height:r},d={x:o.x-e/2,y:o.y+s,width:e,height:r},f={x:o.x+s,y:o.y-r/2,width:e,height:r},p={x:o.x-s-e,y:o.y-r/2,width:e,height:r},m=(o.placement===`above`?[u]:o.placement===`below`?[d]:o.placement===`right`?[f,p]:o.placement===`left`?[p,f]:[{x:o.x+s,y:o.y-r/2,width:e,height:r},{x:o.x-s-e,y:o.y-r/2,width:e,height:r},u,d]).find(e=>l(e,t)&&!i.some(t=>c(t,e)));m&&(i.push(m),a.push({label:o,box:m}))}return a},f=(t,s)=>{let{scales:c,theme:l}=s,{plot:f}=c;s.clear!==!1&&t.clearRect(0,0,s.width,s.height),t.save(),t.beginPath(),t.rect(f.x,f.y,f.width,f.height),t.clip();let p=e.toCss(l.background,.9),m=[],h=l.fontSize+4;for(let i of s.annotations){if(i.type!==`line`)continue;let a=e.toCss(i.color);t.strokeStyle=a,t.lineWidth=i.width,t.setLineDash(i.dash),t.beginPath();let s=o(i,c);if(s.vertical){let e=r(s.at);t.moveTo(e,f.y),t.lineTo(e,f.y+f.height),t.stroke(),i.label&&(t.setLineDash([]),t.font=n(l,l.fontSize,500),t.textAlign=`left`,t.textBaseline=`top`,u(t,i.label,e+5,f.y+5,a,p))}else{let e=r(s.at);t.moveTo(f.x,e),t.lineTo(f.x+f.width,e),t.stroke(),i.label&&(t.setLineDash([]),t.font=n(l,l.fontSize,500),t.textAlign=`right`,t.textBaseline=`bottom`,u(t,i.label,f.x+f.width-6,e-3,a,p))}}t.setLineDash([]),t.font=n(l,l.fontSize+1,600);for(let n of s.annotations){if(n.type!==`rect`||!n.label)continue;let r=a(n,c);if(r.width<=0||r.height<=0)continue;let i=t.measureText(n.label).width,o=n.labelPosition,s=o.endsWith(`left`)?r.x+10:o.endsWith(`right`)?r.x+r.width-10-i:r.x+(r.width-i)/2,l=o.startsWith(`top`)?r.y+10:o.startsWith(`bottom`)?r.y+r.height-10-h:r.y+(r.height-h)/2;t.textAlign=`left`,t.textBaseline=`top`,t.fillStyle=e.toCss(n.labelColor),t.fillText(n.label,s,l),m.push({x:s,y:l,width:i,height:h})}for(let r of s.annotations){if(r.type!==`text`||!r.text)continue;t.font=n(l,l.fontSize,r.weight);let a=i(r,c,t.measureText(r.text).width,h);t.textAlign=`left`,t.textBaseline=`middle`,u(t,r.text,a.x,a.y+a.height/2,e.toCss(r.color),p),m.push(a)}if(s.pointLabels.length){t.font=n(l),t.textAlign=`left`,t.textBaseline=`middle`;let r=e.toCss(l.text,.85),i=d(s.pointLabels,f,e=>t.measureText(e).width,h-2,m);for(let{label:e,box:n}of i)u(t,e.text,n.x,n.y+n.height/2,r,p)}t.restore()};exports.drawBackground=s,exports.drawForeground=f,exports.font=n,exports.lineOf=o,exports.placeLabels=d,exports.rectOf=a,exports.textBox=i;
|
|
2
2
|
//# sourceMappingURL=overlay.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.cjs","names":["toCss","require_color","font","theme","weight","size","crisp","v","textBox","s","px","a","plot","py","x","width","y","height","rectOf","xa","xb","ya","yb","left","right","top","bottom","drawBackground","input","scales","ctx","r","yTicks","xTicks","line","base","lastRight","order","i","b","w","text","overlaps","inside","haloText","halo","color","placeLabels","placed","label","labels","measure","gap","box","c","occupied","o","drawForeground","labelHeight","pos","tx","ty","textColor","t"],"sources":["../../../../charts/src/engine/overlay.ts"],"sourcesContent":["// Canvas2D layers around the data: background (areas, grid, axes, tick\n// labels) and foreground (reference lines, annotation and point labels).\n\nimport { toCss, type Rgba } from \"./color\";\nimport type { AxisTicks } from \"./axis\";\nimport type { Rect, Scales } from \"./layout\";\nimport type { AxisModel } from \"./model\";\nimport type { ChartTheme } from \"./theme\";\nimport type { ChartLabelPosition } from \"./types\";\n\nexport interface ResolvedRect {\n type: \"rect\";\n x0?: number;\n x1?: number;\n y0?: number;\n y1?: number;\n color: Rgba;\n opacity: number;\n label?: string;\n labelPosition: ChartLabelPosition;\n labelColor: Rgba;\n}\n\nexport interface ResolvedLine {\n type: \"line\";\n axis: \"x\" | \"y\";\n value: number;\n color: Rgba;\n width: number;\n dash: number[];\n label?: string;\n}\n\nexport interface ResolvedText {\n type: \"text\";\n x?: number;\n y?: number;\n text: string;\n anchor: \"center\" | \"top\" | \"bottom\" | \"left\" | \"right\";\n color: Rgba;\n weight: number;\n}\n\nexport type ResolvedAnnotation = ResolvedRect | ResolvedLine | ResolvedText;\n\nexport interface PointLabel {\n x: number;\n y: number;\n /** Radius of the dot */\n r: number;\n text: string;\n}\n\nexport const font = (theme: ChartTheme, size = theme.fontSize, weight = 400) =>\n `${weight} ${size}px ${theme.fontFamily}`;\n\nconst crisp = (v: number) => Math.round(v) + 0.5;\n\n/** Box of a text annotation, kept inside the plot */\nexport const textBox = (\n a: ResolvedText,\n s: Scales,\n width: number,\n height: number,\n): Rect => {\n const { plot } = s;\n const px = a.x === undefined ? plot.x + plot.width / 2 : s.xToPx(a.x);\n const py = a.y === undefined ? plot.y + plot.height / 2 : s.yToPx(a.y);\n const gap = 6;\n let x = px - width / 2;\n let y = py - height / 2;\n if (a.anchor === \"top\") y = py + gap;\n else if (a.anchor === \"bottom\") y = py - gap - height;\n else if (a.anchor === \"left\") x = px + gap;\n else if (a.anchor === \"right\") x = px - gap - width;\n x = Math.max(plot.x + gap, Math.min(x, plot.x + plot.width - gap - width));\n y = Math.max(plot.y + 2, Math.min(y, plot.y + plot.height - 2 - height));\n return { x, y, width, height };\n};\n\nconst rectOf = (a: ResolvedRect, s: Scales): Rect => {\n const { plot } = s;\n const xa = a.x0 === undefined ? -Infinity : s.xToPx(a.x0);\n const xb = a.x1 === undefined ? Infinity : s.xToPx(a.x1);\n const ya = a.y0 === undefined ? Infinity : s.yToPx(a.y0);\n const yb = a.y1 === undefined ? -Infinity : s.yToPx(a.y1);\n const left = Math.max(plot.x, Math.min(xa, xb));\n const right = Math.min(plot.x + plot.width, Math.max(xa, xb));\n const top = Math.max(plot.y, Math.min(ya, yb));\n const bottom = Math.min(plot.y + plot.height, Math.max(ya, yb));\n return { x: left, y: top, width: right - left, height: bottom - top };\n};\n\nexport interface BackgroundInput {\n width: number;\n height: number;\n scales: Scales;\n x: AxisModel;\n y: AxisModel;\n xTicks: AxisTicks;\n yTicks: AxisTicks;\n theme: ChartTheme;\n annotations: readonly ResolvedAnnotation[];\n}\n\nexport const drawBackground = (\n ctx: CanvasRenderingContext2D,\n input: BackgroundInput,\n) => {\n const { scales, theme, x, y, xTicks, yTicks } = input;\n const { plot } = scales;\n ctx.clearRect(0, 0, input.width, input.height);\n\n // areas\n ctx.save();\n ctx.beginPath();\n ctx.rect(plot.x, plot.y, plot.width, plot.height);\n ctx.clip();\n for (const a of input.annotations) {\n if (a.type !== \"rect\") continue;\n const r = rectOf(a, scales);\n if (r.width <= 0 || r.height <= 0) continue;\n ctx.fillStyle = toCss(a.color, a.opacity);\n ctx.fillRect(r.x, r.y, r.width, r.height);\n }\n ctx.restore();\n\n // grid\n ctx.lineWidth = 1;\n ctx.strokeStyle = toCss(theme.grid);\n ctx.beginPath();\n if (y.grid) {\n for (const v of yTicks.values) {\n const py = crisp(scales.yToPx(v));\n if (py < plot.y - 1 || py > plot.y + plot.height + 1) continue;\n ctx.moveTo(plot.x, py);\n ctx.lineTo(plot.x + plot.width, py);\n }\n }\n if (x.grid) {\n for (const v of xTicks.values) {\n const px = crisp(scales.xToPx(v));\n if (px < plot.x - 1 || px > plot.x + plot.width + 1) continue;\n ctx.moveTo(px, plot.y);\n ctx.lineTo(px, plot.y + plot.height);\n }\n }\n ctx.stroke();\n\n const line = Math.ceil(theme.fontSize * 1.4);\n ctx.font = font(theme);\n ctx.fillStyle = toCss(theme.textMuted);\n\n // x axis\n if (x.visible) {\n ctx.strokeStyle = toCss(theme.axis);\n ctx.beginPath();\n const base = crisp(plot.y + plot.height);\n ctx.moveTo(plot.x, base);\n ctx.lineTo(plot.x + plot.width, base);\n ctx.stroke();\n ctx.textBaseline = \"top\";\n ctx.textAlign = \"center\";\n let lastRight = -Infinity;\n // left to right (reversed axes list their ticks right to left)\n const order = xTicks.values\n .map((v, i) => ({ px: scales.xToPx(v), text: xTicks.labels[i] }))\n .sort((a, b) => a.px - b.px);\n for (const { px, text } of order) {\n if (px < plot.x - 0.5 || px > plot.x + plot.width + 0.5) continue;\n const w = ctx.measureText(text).width;\n const left = Math.max(0, Math.min(input.width - w, px - w / 2));\n if (left < lastRight + 6) continue;\n lastRight = left + w;\n ctx.fillText(text, left + w / 2, plot.y + plot.height + 7);\n }\n if (x.title) {\n ctx.font = font(theme, theme.fontSize + 1, 500);\n ctx.fillStyle = toCss(theme.text, 0.8);\n ctx.fillText(\n x.title,\n plot.x + plot.width / 2,\n plot.y + plot.height + line + 10,\n );\n }\n }\n\n // y axis\n if (y.visible) {\n ctx.font = font(theme);\n ctx.fillStyle = toCss(theme.textMuted);\n ctx.textAlign = \"right\";\n ctx.textBaseline = \"middle\";\n yTicks.values.forEach((v, i) => {\n const py = scales.yToPx(v);\n if (py < plot.y - 0.5 || py > plot.y + plot.height + 0.5) return;\n ctx.fillText(yTicks.labels[i], plot.x - 8, py);\n });\n if (y.title) {\n ctx.save();\n ctx.font = font(theme, theme.fontSize + 1, 500);\n ctx.fillStyle = toCss(theme.text, 0.8);\n ctx.translate(line / 2 + 4, plot.y + plot.height / 2);\n ctx.rotate(-Math.PI / 2);\n ctx.textAlign = \"center\";\n ctx.fillText(y.title, 0, 0);\n ctx.restore();\n }\n }\n};\n\nconst overlaps = (a: Rect, b: Rect) =>\n a.x < b.x + b.width &&\n b.x < a.x + a.width &&\n a.y < b.y + b.height &&\n b.y < a.y + a.height;\n\nconst inside = (r: Rect, plot: Rect) =>\n r.x >= plot.x &&\n r.y >= plot.y &&\n r.x + r.width <= plot.x + plot.width &&\n r.y + r.height <= plot.y + plot.height;\n\n/** Text with a halo in the background color (readable over data) */\nconst haloText = (\n ctx: CanvasRenderingContext2D,\n text: string,\n x: number,\n y: number,\n color: string,\n halo: string,\n) => {\n ctx.lineWidth = 3;\n ctx.lineJoin = \"round\";\n ctx.strokeStyle = halo;\n ctx.strokeText(text, x, y);\n ctx.fillStyle = color;\n ctx.fillText(text, x, y);\n};\n\n/** Greedy placement: right, left, above, below the dot; skipped when no slot is free */\nexport const placeLabels = (\n labels: readonly PointLabel[],\n plot: Rect,\n measure: (text: string) => number,\n height: number,\n occupied: Rect[] = [],\n): { label: PointLabel; box: Rect }[] => {\n const placed: { label: PointLabel; box: Rect }[] = [];\n for (const label of labels) {\n const w = measure(label.text);\n const gap = label.r + 4;\n const candidates: Rect[] = [\n { x: label.x + gap, y: label.y - height / 2, width: w, height },\n { x: label.x - gap - w, y: label.y - height / 2, width: w, height },\n { x: label.x - w / 2, y: label.y - gap - height, width: w, height },\n { x: label.x - w / 2, y: label.y + gap, width: w, height },\n ];\n const box = candidates.find(\n (c) => inside(c, plot) && !occupied.some((o) => overlaps(o, c)),\n );\n if (!box) continue;\n occupied.push(box);\n placed.push({ label, box });\n }\n return placed;\n};\n\nexport interface ForegroundInput {\n width: number;\n height: number;\n scales: Scales;\n theme: ChartTheme;\n annotations: readonly ResolvedAnnotation[];\n pointLabels: readonly PointLabel[];\n /**\n * Clears the canvas first (off when the layers share one canvas)\n * @default true\n */\n clear?: boolean;\n}\n\nexport const drawForeground = (\n ctx: CanvasRenderingContext2D,\n input: ForegroundInput,\n) => {\n const { scales, theme } = input;\n const { plot } = scales;\n if (input.clear !== false) ctx.clearRect(0, 0, input.width, input.height);\n ctx.save();\n ctx.beginPath();\n ctx.rect(plot.x, plot.y, plot.width, plot.height);\n ctx.clip();\n\n const halo = toCss(theme.background, 0.9);\n const occupied: Rect[] = [];\n const labelHeight = theme.fontSize + 4;\n\n for (const a of input.annotations) {\n if (a.type !== \"line\") continue;\n const color = toCss(a.color);\n ctx.strokeStyle = color;\n ctx.lineWidth = a.width;\n ctx.setLineDash(a.dash);\n ctx.beginPath();\n if (a.axis === \"y\") {\n const py = crisp(scales.yToPx(a.value));\n ctx.moveTo(plot.x, py);\n ctx.lineTo(plot.x + plot.width, py);\n ctx.stroke();\n if (a.label) {\n ctx.setLineDash([]);\n ctx.font = font(theme, theme.fontSize, 500);\n ctx.textAlign = \"right\";\n ctx.textBaseline = \"bottom\";\n haloText(ctx, a.label, plot.x + plot.width - 6, py - 3, color, halo);\n }\n } else {\n const px = crisp(scales.xToPx(a.value));\n ctx.moveTo(px, plot.y);\n ctx.lineTo(px, plot.y + plot.height);\n ctx.stroke();\n if (a.label) {\n ctx.setLineDash([]);\n ctx.font = font(theme, theme.fontSize, 500);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"top\";\n haloText(ctx, a.label, px + 5, plot.y + 5, color, halo);\n }\n }\n }\n ctx.setLineDash([]);\n\n // labels of areas\n ctx.font = font(theme, theme.fontSize + 1, 600);\n for (const a of input.annotations) {\n if (a.type !== \"rect\" || !a.label) continue;\n const r = rectOf(a, scales);\n if (r.width <= 0 || r.height <= 0) continue;\n const pad = 10;\n const w = ctx.measureText(a.label).width;\n const pos = a.labelPosition;\n const tx = pos.endsWith(\"left\")\n ? r.x + pad\n : pos.endsWith(\"right\")\n ? r.x + r.width - pad - w\n : r.x + (r.width - w) / 2;\n const ty = pos.startsWith(\"top\")\n ? r.y + pad\n : pos.startsWith(\"bottom\")\n ? r.y + r.height - pad - labelHeight\n : r.y + (r.height - labelHeight) / 2;\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"top\";\n ctx.fillStyle = toCss(a.labelColor);\n ctx.fillText(a.label, tx, ty);\n occupied.push({ x: tx, y: ty, width: w, height: labelHeight });\n }\n\n // free texts\n for (const a of input.annotations) {\n if (a.type !== \"text\" || !a.text) continue;\n ctx.font = font(theme, theme.fontSize, a.weight);\n const box = textBox(a, scales, ctx.measureText(a.text).width, labelHeight);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n haloText(ctx, a.text, box.x, box.y + box.height / 2, toCss(a.color), halo);\n occupied.push(box);\n }\n\n // point labels\n if (input.pointLabels.length) {\n ctx.font = font(theme);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n const textColor = toCss(theme.text, 0.85);\n const placed = placeLabels(\n input.pointLabels,\n plot,\n (t) => ctx.measureText(t).width,\n labelHeight - 2,\n occupied,\n );\n for (const { label, box } of placed) {\n haloText(ctx, label.text, box.x, box.y + box.height / 2, textColor, halo);\n }\n }\n ctx.restore();\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"overlay.cjs","names":["toScreen","screenRect","toCss","require_color","require_layout","font","theme","weight","size","crisp","v","textBox","s","at","a","free","px","plot","py","x","width","y","height","rectOf","xLo","xHi","yLo","yHi","along","lo","hi","lineOf","drawBackground","input","scales","bottomTicks","yTicks","xTicks","leftTicks","bottomPx","leftPx","ctx","line","base","lastRight","order","i","b","w","text","left","lastBottom","rows","rowHeight","y2","y2Ticks","right","overlaps","inside","r","haloText","halo","color","placeLabels","placed","label","labels","measure","gap","above","below","box","c","occupied","o","drawForeground","labelHeight","where","pos","tx","ty","textColor","t"],"sources":["../../../../charts/src/engine/overlay.ts"],"sourcesContent":["// Canvas2D layers around the data: background (areas, grid, axes, tick\n// labels) and foreground (reference lines, annotation and point labels).\n\nimport { toCss, type Rgba } from \"./color\";\nimport type { AxisTicks } from \"./axis\";\nimport { screenRect, toScreen, type Rect, type Scales } from \"./layout\";\nimport type { AxisModel } from \"./model\";\nimport type { ChartTheme } from \"./theme\";\nimport type { ChartLabelPosition } from \"./types\";\n\nexport interface ResolvedRect {\n type: \"rect\";\n x0?: number;\n x1?: number;\n y0?: number;\n y1?: number;\n color: Rgba;\n opacity: number;\n label?: string;\n labelPosition: ChartLabelPosition;\n labelColor: Rgba;\n}\n\nexport interface ResolvedLine {\n type: \"line\";\n axis: \"x\" | \"y\";\n value: number;\n color: Rgba;\n width: number;\n dash: number[];\n label?: string;\n}\n\nexport interface ResolvedText {\n type: \"text\";\n x?: number;\n y?: number;\n text: string;\n anchor: \"center\" | \"top\" | \"bottom\" | \"left\" | \"right\";\n color: Rgba;\n weight: number;\n}\n\nexport type ResolvedAnnotation = ResolvedRect | ResolvedLine | ResolvedText;\n\nexport interface PointLabel {\n x: number;\n y: number;\n /** Radius of the dot */\n r: number;\n text: string;\n /**\n * Fixed side (bar values: above / below, left / right of horizontal\n * bars); any free side around the dot otherwise\n */\n placement?: \"above\" | \"below\" | \"left\" | \"right\";\n}\n\nexport const font = (theme: ChartTheme, size = theme.fontSize, weight = 400) =>\n `${weight} ${size}px ${theme.fontFamily}`;\n\nconst crisp = (v: number) => Math.round(v) + 0.5;\n\n/** Box of a text annotation, kept inside the plot */\nexport const textBox = (\n a: ResolvedText,\n s: Scales,\n width: number,\n height: number,\n): Rect => {\n const { plot } = s;\n const at = toScreen(s, a.x ?? 0, a.y ?? 0);\n const free = s.horizontal\n ? { x: a.y === undefined, y: a.x === undefined }\n : { x: a.x === undefined, y: a.y === undefined };\n const px = free.x ? plot.x + plot.width / 2 : at.x;\n const py = free.y ? plot.y + plot.height / 2 : at.y;\n const gap = 6;\n let x = px - width / 2;\n let y = py - height / 2;\n if (a.anchor === \"top\") y = py + gap;\n else if (a.anchor === \"bottom\") y = py - gap - height;\n else if (a.anchor === \"left\") x = px + gap;\n else if (a.anchor === \"right\") x = px - gap - width;\n x = Math.max(plot.x + gap, Math.min(x, plot.x + plot.width - gap - width));\n y = Math.max(plot.y + 2, Math.min(y, plot.y + plot.height - 2 - height));\n return { x, y, width, height };\n};\n\n/** Screen box of an area annotation, clipped to the plot */\nexport const rectOf = (a: ResolvedRect, s: Scales): Rect => {\n const { plot } = s;\n // clamp every edge to the plot first: an open edge maps to ±Infinity and\n // `Infinity - Infinity` would make the size NaN (nothing drawn)\n const [xLo, xHi] = s.horizontal\n ? [plot.y, plot.y + plot.height]\n : [plot.x, plot.x + plot.width];\n const [yLo, yHi] = s.horizontal\n ? [plot.x, plot.x + plot.width]\n : [plot.y, plot.y + plot.height];\n const along = (px: number, lo: number, hi: number) =>\n px < lo ? lo : px > hi ? hi : px;\n return screenRect(\n s,\n along(s.xToPx(a.x0 ?? -Infinity), xLo, xHi),\n along(s.xToPx(a.x1 ?? Infinity), xLo, xHi),\n along(s.yToPx(a.y0 ?? -Infinity), yLo, yHi),\n along(s.yToPx(a.y1 ?? Infinity), yLo, yHi),\n );\n};\n\n/**\n * Where a reference line goes: `vertical` lines run at screen x `at`,\n * horizontal ones at screen y `at`\n */\nexport const lineOf = (\n a: ResolvedLine,\n s: Scales,\n): { vertical: boolean; at: number } => {\n const vertical = (a.axis === \"x\") !== s.horizontal;\n return {\n vertical,\n at: a.axis === \"x\" ? s.xToPx(a.value) : s.yToPx(a.value),\n };\n};\n\nexport interface BackgroundInput {\n width: number;\n height: number;\n scales: Scales;\n x: AxisModel;\n y: AxisModel;\n xTicks: AxisTicks;\n yTicks: AxisTicks;\n /** Right axis (dual axis charts) */\n y2?: AxisModel | null;\n y2Ticks?: AxisTicks | null;\n theme: ChartTheme;\n annotations: readonly ResolvedAnnotation[];\n}\n\nexport const drawBackground = (\n ctx: CanvasRenderingContext2D,\n input: BackgroundInput,\n) => {\n const { scales, theme, xTicks, yTicks } = input;\n const { plot } = scales;\n // horizontal charts: the value axis along the bottom, the x axis on the left\n const x = scales.horizontal ? input.y : input.x;\n const y = scales.horizontal ? input.x : input.y;\n const bottomTicks = scales.horizontal ? yTicks : xTicks;\n const leftTicks = scales.horizontal ? xTicks : yTicks;\n const bottomPx = scales.horizontal ? scales.yToPx : scales.xToPx;\n const leftPx = scales.horizontal ? scales.xToPx : scales.yToPx;\n ctx.clearRect(0, 0, input.width, input.height);\n\n // areas\n ctx.save();\n ctx.beginPath();\n ctx.rect(plot.x, plot.y, plot.width, plot.height);\n ctx.clip();\n for (const a of input.annotations) {\n if (a.type !== \"rect\") continue;\n const r = rectOf(a, scales);\n if (r.width <= 0 || r.height <= 0) continue;\n ctx.fillStyle = toCss(a.color, a.opacity);\n ctx.fillRect(r.x, r.y, r.width, r.height);\n }\n ctx.restore();\n\n // grid\n ctx.lineWidth = 1;\n ctx.strokeStyle = toCss(theme.grid);\n ctx.beginPath();\n if (y.grid) {\n for (const v of leftTicks.values) {\n const py = crisp(leftPx(v));\n if (py < plot.y - 1 || py > plot.y + plot.height + 1) continue;\n ctx.moveTo(plot.x, py);\n ctx.lineTo(plot.x + plot.width, py);\n }\n }\n if (x.grid) {\n for (const v of bottomTicks.values) {\n const px = crisp(bottomPx(v));\n if (px < plot.x - 1 || px > plot.x + plot.width + 1) continue;\n ctx.moveTo(px, plot.y);\n ctx.lineTo(px, plot.y + plot.height);\n }\n }\n ctx.stroke();\n\n const line = Math.ceil(theme.fontSize * 1.4);\n ctx.font = font(theme);\n ctx.fillStyle = toCss(theme.textMuted);\n\n // x axis\n if (x.visible) {\n ctx.strokeStyle = toCss(theme.axis);\n ctx.beginPath();\n const base = crisp(plot.y + plot.height);\n ctx.moveTo(plot.x, base);\n ctx.lineTo(plot.x + plot.width, base);\n ctx.stroke();\n ctx.textBaseline = \"top\";\n ctx.textAlign = \"center\";\n let lastRight = -Infinity;\n // left to right (reversed axes list their ticks right to left)\n const order = bottomTicks.values\n .map((v, i) => ({ px: bottomPx(v), text: bottomTicks.labels[i] }))\n .sort((a, b) => a.px - b.px);\n for (const { px, text } of order) {\n if (px < plot.x - 0.5 || px > plot.x + plot.width + 0.5) continue;\n const w = ctx.measureText(text).width;\n const left = Math.max(0, Math.min(input.width - w, px - w / 2));\n if (left < lastRight + 6) continue;\n lastRight = left + w;\n ctx.fillText(text, left + w / 2, plot.y + plot.height + 7);\n }\n if (x.title) {\n ctx.font = font(theme, theme.fontSize + 1, 500);\n ctx.fillStyle = toCss(theme.text, 0.8);\n ctx.fillText(\n x.title,\n plot.x + plot.width / 2,\n plot.y + plot.height + line + 10,\n );\n }\n }\n\n // y axis\n if (y.visible) {\n ctx.font = font(theme);\n ctx.fillStyle = toCss(theme.textMuted);\n ctx.textAlign = \"right\";\n ctx.textBaseline = \"middle\";\n let lastBottom = -Infinity;\n // top to bottom: category rows of horizontal charts never overlap\n const rows = leftTicks.values\n .map((v, i) => ({ py: leftPx(v), text: leftTicks.labels[i] }))\n .sort((a, b) => a.py - b.py);\n const rowHeight = theme.fontSize + 2;\n for (const { py, text } of rows) {\n if (py < plot.y - 0.5 || py > plot.y + plot.height + 0.5) continue;\n if (scales.horizontal) {\n if (py - rowHeight / 2 < lastBottom) continue;\n lastBottom = py + rowHeight / 2;\n }\n ctx.fillText(text, plot.x - 8, py);\n }\n if (y.title) {\n ctx.save();\n ctx.font = font(theme, theme.fontSize + 1, 500);\n ctx.fillStyle = toCss(theme.text, 0.8);\n ctx.translate(line / 2 + 4, plot.y + plot.height / 2);\n ctx.rotate(-Math.PI / 2);\n ctx.textAlign = \"center\";\n ctx.fillText(y.title, 0, 0);\n ctx.restore();\n }\n }\n\n // right axis\n const y2 = scales.horizontal ? null : input.y2;\n const y2Ticks = input.y2Ticks;\n if (y2 && y2Ticks && y2.visible) {\n const right = plot.x + plot.width;\n ctx.font = font(theme);\n ctx.fillStyle = toCss(theme.textMuted);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n y2Ticks.values.forEach((v, i) => {\n const py = scales.yToPx(v);\n if (py < plot.y - 0.5 || py > plot.y + plot.height + 0.5) return;\n ctx.fillText(y2Ticks.labels[i], right + 8, py);\n });\n if (y2.title) {\n ctx.save();\n ctx.font = font(theme, theme.fontSize + 1, 500);\n ctx.fillStyle = toCss(theme.text, 0.8);\n ctx.translate(input.width - line / 2 - 4, plot.y + plot.height / 2);\n ctx.rotate(Math.PI / 2);\n ctx.textAlign = \"center\";\n ctx.fillText(y2.title, 0, 0);\n ctx.restore();\n }\n }\n};\n\nconst overlaps = (a: Rect, b: Rect) =>\n a.x < b.x + b.width &&\n b.x < a.x + a.width &&\n a.y < b.y + b.height &&\n b.y < a.y + a.height;\n\nconst inside = (r: Rect, plot: Rect) =>\n r.x >= plot.x &&\n r.y >= plot.y &&\n r.x + r.width <= plot.x + plot.width &&\n r.y + r.height <= plot.y + plot.height;\n\n/** Text with a halo in the background color (readable over data) */\nconst haloText = (\n ctx: CanvasRenderingContext2D,\n text: string,\n x: number,\n y: number,\n color: string,\n halo: string,\n) => {\n ctx.lineWidth = 3;\n ctx.lineJoin = \"round\";\n ctx.strokeStyle = halo;\n ctx.strokeText(text, x, y);\n ctx.fillStyle = color;\n ctx.fillText(text, x, y);\n};\n\n/** Greedy placement: right, left, above, below the dot; skipped when no slot is free */\nexport const placeLabels = (\n labels: readonly PointLabel[],\n plot: Rect,\n measure: (text: string) => number,\n height: number,\n occupied: Rect[] = [],\n): { label: PointLabel; box: Rect }[] => {\n const placed: { label: PointLabel; box: Rect }[] = [];\n for (const label of labels) {\n const w = measure(label.text);\n const gap = label.r + 4;\n const above = {\n x: label.x - w / 2,\n y: label.y - gap - height,\n width: w,\n height,\n };\n const below = { x: label.x - w / 2, y: label.y + gap, width: w, height };\n const right = {\n x: label.x + gap,\n y: label.y - height / 2,\n width: w,\n height,\n };\n const left = {\n x: label.x - gap - w,\n y: label.y - height / 2,\n width: w,\n height,\n };\n const candidates: Rect[] =\n label.placement === \"above\"\n ? [above]\n : label.placement === \"below\"\n ? [below]\n : label.placement === \"right\"\n ? [right, left]\n : label.placement === \"left\"\n ? [left, right]\n : [\n {\n x: label.x + gap,\n y: label.y - height / 2,\n width: w,\n height,\n },\n {\n x: label.x - gap - w,\n y: label.y - height / 2,\n width: w,\n height,\n },\n above,\n below,\n ];\n const box = candidates.find(\n (c) => inside(c, plot) && !occupied.some((o) => overlaps(o, c)),\n );\n if (!box) continue;\n occupied.push(box);\n placed.push({ label, box });\n }\n return placed;\n};\n\nexport interface ForegroundInput {\n width: number;\n height: number;\n scales: Scales;\n theme: ChartTheme;\n annotations: readonly ResolvedAnnotation[];\n pointLabels: readonly PointLabel[];\n /**\n * Clears the canvas first (off when the layers share one canvas)\n * @default true\n */\n clear?: boolean;\n}\n\nexport const drawForeground = (\n ctx: CanvasRenderingContext2D,\n input: ForegroundInput,\n) => {\n const { scales, theme } = input;\n const { plot } = scales;\n if (input.clear !== false) ctx.clearRect(0, 0, input.width, input.height);\n ctx.save();\n ctx.beginPath();\n ctx.rect(plot.x, plot.y, plot.width, plot.height);\n ctx.clip();\n\n const halo = toCss(theme.background, 0.9);\n const occupied: Rect[] = [];\n const labelHeight = theme.fontSize + 4;\n\n for (const a of input.annotations) {\n if (a.type !== \"line\") continue;\n const color = toCss(a.color);\n ctx.strokeStyle = color;\n ctx.lineWidth = a.width;\n ctx.setLineDash(a.dash);\n ctx.beginPath();\n const where = lineOf(a, scales);\n if (!where.vertical) {\n const py = crisp(where.at);\n ctx.moveTo(plot.x, py);\n ctx.lineTo(plot.x + plot.width, py);\n ctx.stroke();\n if (a.label) {\n ctx.setLineDash([]);\n ctx.font = font(theme, theme.fontSize, 500);\n ctx.textAlign = \"right\";\n ctx.textBaseline = \"bottom\";\n haloText(ctx, a.label, plot.x + plot.width - 6, py - 3, color, halo);\n }\n } else {\n const px = crisp(where.at);\n ctx.moveTo(px, plot.y);\n ctx.lineTo(px, plot.y + plot.height);\n ctx.stroke();\n if (a.label) {\n ctx.setLineDash([]);\n ctx.font = font(theme, theme.fontSize, 500);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"top\";\n haloText(ctx, a.label, px + 5, plot.y + 5, color, halo);\n }\n }\n }\n ctx.setLineDash([]);\n\n // labels of areas\n ctx.font = font(theme, theme.fontSize + 1, 600);\n for (const a of input.annotations) {\n if (a.type !== \"rect\" || !a.label) continue;\n const r = rectOf(a, scales);\n if (r.width <= 0 || r.height <= 0) continue;\n const pad = 10;\n const w = ctx.measureText(a.label).width;\n const pos = a.labelPosition;\n const tx = pos.endsWith(\"left\")\n ? r.x + pad\n : pos.endsWith(\"right\")\n ? r.x + r.width - pad - w\n : r.x + (r.width - w) / 2;\n const ty = pos.startsWith(\"top\")\n ? r.y + pad\n : pos.startsWith(\"bottom\")\n ? r.y + r.height - pad - labelHeight\n : r.y + (r.height - labelHeight) / 2;\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"top\";\n ctx.fillStyle = toCss(a.labelColor);\n ctx.fillText(a.label, tx, ty);\n occupied.push({ x: tx, y: ty, width: w, height: labelHeight });\n }\n\n // free texts\n for (const a of input.annotations) {\n if (a.type !== \"text\" || !a.text) continue;\n ctx.font = font(theme, theme.fontSize, a.weight);\n const box = textBox(a, scales, ctx.measureText(a.text).width, labelHeight);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n haloText(ctx, a.text, box.x, box.y + box.height / 2, toCss(a.color), halo);\n occupied.push(box);\n }\n\n // point labels\n if (input.pointLabels.length) {\n ctx.font = font(theme);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n const textColor = toCss(theme.text, 0.85);\n const placed = placeLabels(\n input.pointLabels,\n plot,\n (t) => ctx.measureText(t).width,\n labelHeight - 2,\n occupied,\n );\n for (const { label, box } of placed) {\n haloText(ctx, label.text, box.x, box.y + box.height / 2, textColor, halo);\n }\n }\n ctx.restore();\n};\n"],"mappings":"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"}
|
|
@@ -41,10 +41,25 @@ export interface PointLabel {
|
|
|
41
41
|
/** Radius of the dot */
|
|
42
42
|
r: number;
|
|
43
43
|
text: string;
|
|
44
|
+
/**
|
|
45
|
+
* Fixed side (bar values: above / below, left / right of horizontal
|
|
46
|
+
* bars); any free side around the dot otherwise
|
|
47
|
+
*/
|
|
48
|
+
placement?: "above" | "below" | "left" | "right";
|
|
44
49
|
}
|
|
45
50
|
export declare const font: (theme: ChartTheme, size?: number, weight?: number) => string;
|
|
46
51
|
/** Box of a text annotation, kept inside the plot */
|
|
47
52
|
export declare const textBox: (a: ResolvedText, s: Scales, width: number, height: number) => Rect;
|
|
53
|
+
/** Screen box of an area annotation, clipped to the plot */
|
|
54
|
+
export declare const rectOf: (a: ResolvedRect, s: Scales) => Rect;
|
|
55
|
+
/**
|
|
56
|
+
* Where a reference line goes: `vertical` lines run at screen x `at`,
|
|
57
|
+
* horizontal ones at screen y `at`
|
|
58
|
+
*/
|
|
59
|
+
export declare const lineOf: (a: ResolvedLine, s: Scales) => {
|
|
60
|
+
vertical: boolean;
|
|
61
|
+
at: number;
|
|
62
|
+
};
|
|
48
63
|
export interface BackgroundInput {
|
|
49
64
|
width: number;
|
|
50
65
|
height: number;
|
|
@@ -53,6 +68,9 @@ export interface BackgroundInput {
|
|
|
53
68
|
y: AxisModel;
|
|
54
69
|
xTicks: AxisTicks;
|
|
55
70
|
yTicks: AxisTicks;
|
|
71
|
+
/** Right axis (dual axis charts) */
|
|
72
|
+
y2?: AxisModel | null;
|
|
73
|
+
y2Ticks?: AxisTicks | null;
|
|
56
74
|
theme: ChartTheme;
|
|
57
75
|
annotations: readonly ResolvedAnnotation[];
|
|
58
76
|
}
|
|
@@ -41,10 +41,25 @@ export interface PointLabel {
|
|
|
41
41
|
/** Radius of the dot */
|
|
42
42
|
r: number;
|
|
43
43
|
text: string;
|
|
44
|
+
/**
|
|
45
|
+
* Fixed side (bar values: above / below, left / right of horizontal
|
|
46
|
+
* bars); any free side around the dot otherwise
|
|
47
|
+
*/
|
|
48
|
+
placement?: "above" | "below" | "left" | "right";
|
|
44
49
|
}
|
|
45
50
|
export declare const font: (theme: ChartTheme, size?: number, weight?: number) => string;
|
|
46
51
|
/** Box of a text annotation, kept inside the plot */
|
|
47
52
|
export declare const textBox: (a: ResolvedText, s: Scales, width: number, height: number) => Rect;
|
|
53
|
+
/** Screen box of an area annotation, clipped to the plot */
|
|
54
|
+
export declare const rectOf: (a: ResolvedRect, s: Scales) => Rect;
|
|
55
|
+
/**
|
|
56
|
+
* Where a reference line goes: `vertical` lines run at screen x `at`,
|
|
57
|
+
* horizontal ones at screen y `at`
|
|
58
|
+
*/
|
|
59
|
+
export declare const lineOf: (a: ResolvedLine, s: Scales) => {
|
|
60
|
+
vertical: boolean;
|
|
61
|
+
at: number;
|
|
62
|
+
};
|
|
48
63
|
export interface BackgroundInput {
|
|
49
64
|
width: number;
|
|
50
65
|
height: number;
|
|
@@ -53,6 +68,9 @@ export interface BackgroundInput {
|
|
|
53
68
|
y: AxisModel;
|
|
54
69
|
xTicks: AxisTicks;
|
|
55
70
|
yTicks: AxisTicks;
|
|
71
|
+
/** Right axis (dual axis charts) */
|
|
72
|
+
y2?: AxisModel | null;
|
|
73
|
+
y2Ticks?: AxisTicks | null;
|
|
56
74
|
theme: ChartTheme;
|
|
57
75
|
annotations: readonly ResolvedAnnotation[];
|
|
58
76
|
}
|
|
@@ -1,137 +1,173 @@
|
|
|
1
1
|
import { toCss as e } from "./color.js";
|
|
2
|
+
import { screenRect as t, toScreen as n } from "./layout.js";
|
|
2
3
|
//#region src/engine/overlay.ts
|
|
3
|
-
var
|
|
4
|
-
let { plot:
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
var r = (e, t = e.fontSize, n = 400) => `${n} ${t}px ${e.fontFamily}`, i = (e) => Math.round(e) + .5, a = (e, t, r, i) => {
|
|
5
|
+
let { plot: a } = t, o = n(t, e.x ?? 0, e.y ?? 0), s = t.horizontal ? {
|
|
6
|
+
x: e.y === void 0,
|
|
7
|
+
y: e.x === void 0
|
|
8
|
+
} : {
|
|
9
|
+
x: e.x === void 0,
|
|
10
|
+
y: e.y === void 0
|
|
11
|
+
}, c = s.x ? a.x + a.width / 2 : o.x, l = s.y ? a.y + a.height / 2 : o.y, u = c - r / 2, d = l - i / 2;
|
|
12
|
+
return e.anchor === "top" ? d = l + 6 : e.anchor === "bottom" ? d = l - 6 - i : e.anchor === "left" ? u = c + 6 : e.anchor === "right" && (u = c - 6 - r), u = Math.max(a.x + 6, Math.min(u, a.x + a.width - 6 - r)), d = Math.max(a.y + 2, Math.min(d, a.y + a.height - 2 - i)), {
|
|
13
|
+
x: u,
|
|
14
|
+
y: d,
|
|
15
|
+
width: r,
|
|
16
|
+
height: i
|
|
10
17
|
};
|
|
11
|
-
},
|
|
12
|
-
let { plot:
|
|
13
|
-
return
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
let
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
let n = i(t, o);
|
|
25
|
-
n.width <= 0 || n.height <= 0 || (r.fillStyle = e(t.color, t.opacity), r.fillRect(n.x, n.y, n.width, n.height));
|
|
18
|
+
}, o = (e, n) => {
|
|
19
|
+
let { plot: r } = n, [i, a] = n.horizontal ? [r.y, r.y + r.height] : [r.x, r.x + r.width], [o, s] = n.horizontal ? [r.x, r.x + r.width] : [r.y, r.y + r.height], c = (e, t, n) => e < t ? t : e > n ? n : e;
|
|
20
|
+
return t(n, c(n.xToPx(e.x0 ?? -Infinity), i, a), c(n.xToPx(e.x1 ?? Infinity), i, a), c(n.yToPx(e.y0 ?? -Infinity), o, s), c(n.yToPx(e.y1 ?? Infinity), o, s));
|
|
21
|
+
}, s = (e, t) => ({
|
|
22
|
+
vertical: e.axis === "x" !== t.horizontal,
|
|
23
|
+
at: e.axis === "x" ? t.xToPx(e.value) : t.yToPx(e.value)
|
|
24
|
+
}), c = (t, n) => {
|
|
25
|
+
let { scales: a, theme: s, xTicks: c, yTicks: l } = n, { plot: u } = a, d = a.horizontal ? n.y : n.x, f = a.horizontal ? n.x : n.y, p = a.horizontal ? l : c, m = a.horizontal ? c : l, h = a.horizontal ? a.yToPx : a.xToPx, g = a.horizontal ? a.xToPx : a.yToPx;
|
|
26
|
+
t.clearRect(0, 0, n.width, n.height), t.save(), t.beginPath(), t.rect(u.x, u.y, u.width, u.height), t.clip();
|
|
27
|
+
for (let r of n.annotations) {
|
|
28
|
+
if (r.type !== "rect") continue;
|
|
29
|
+
let n = o(r, a);
|
|
30
|
+
n.width <= 0 || n.height <= 0 || (t.fillStyle = e(r.color, r.opacity), t.fillRect(n.x, n.y, n.width, n.height));
|
|
26
31
|
}
|
|
27
|
-
if (
|
|
28
|
-
let
|
|
29
|
-
|
|
32
|
+
if (t.restore(), t.lineWidth = 1, t.strokeStyle = e(s.grid), t.beginPath(), f.grid) for (let e of m.values) {
|
|
33
|
+
let n = i(g(e));
|
|
34
|
+
n < u.y - 1 || n > u.y + u.height + 1 || (t.moveTo(u.x, n), t.lineTo(u.x + u.width, n));
|
|
30
35
|
}
|
|
31
|
-
if (
|
|
32
|
-
let
|
|
33
|
-
|
|
36
|
+
if (d.grid) for (let e of p.values) {
|
|
37
|
+
let n = i(h(e));
|
|
38
|
+
n < u.x - 1 || n > u.x + u.width + 1 || (t.moveTo(n, u.y), t.lineTo(n, u.y + u.height));
|
|
34
39
|
}
|
|
35
|
-
|
|
36
|
-
let
|
|
37
|
-
if (
|
|
38
|
-
|
|
39
|
-
let
|
|
40
|
-
|
|
41
|
-
let
|
|
42
|
-
px:
|
|
43
|
-
text:
|
|
40
|
+
t.stroke();
|
|
41
|
+
let _ = Math.ceil(s.fontSize * 1.4);
|
|
42
|
+
if (t.font = r(s), t.fillStyle = e(s.textMuted), d.visible) {
|
|
43
|
+
t.strokeStyle = e(s.axis), t.beginPath();
|
|
44
|
+
let a = i(u.y + u.height);
|
|
45
|
+
t.moveTo(u.x, a), t.lineTo(u.x + u.width, a), t.stroke(), t.textBaseline = "top", t.textAlign = "center";
|
|
46
|
+
let o = -Infinity, c = p.values.map((e, t) => ({
|
|
47
|
+
px: h(e),
|
|
48
|
+
text: p.labels[t]
|
|
44
49
|
})).sort((e, t) => e.px - t.px);
|
|
45
|
-
for (let { px: e, text:
|
|
46
|
-
if (e <
|
|
47
|
-
let
|
|
48
|
-
|
|
50
|
+
for (let { px: e, text: r } of c) {
|
|
51
|
+
if (e < u.x - .5 || e > u.x + u.width + .5) continue;
|
|
52
|
+
let i = t.measureText(r).width, a = Math.max(0, Math.min(n.width - i, e - i / 2));
|
|
53
|
+
a < o + 6 || (o = a + i, t.fillText(r, a + i / 2, u.y + u.height + 7));
|
|
54
|
+
}
|
|
55
|
+
d.title && (t.font = r(s, s.fontSize + 1, 500), t.fillStyle = e(s.text, .8), t.fillText(d.title, u.x + u.width / 2, u.y + u.height + _ + 10));
|
|
56
|
+
}
|
|
57
|
+
if (f.visible) {
|
|
58
|
+
t.font = r(s), t.fillStyle = e(s.textMuted), t.textAlign = "right", t.textBaseline = "middle";
|
|
59
|
+
let n = -Infinity, i = m.values.map((e, t) => ({
|
|
60
|
+
py: g(e),
|
|
61
|
+
text: m.labels[t]
|
|
62
|
+
})).sort((e, t) => e.py - t.py), o = s.fontSize + 2;
|
|
63
|
+
for (let { py: e, text: r } of i) if (!(e < u.y - .5 || e > u.y + u.height + .5)) {
|
|
64
|
+
if (a.horizontal) {
|
|
65
|
+
if (e - o / 2 < n) continue;
|
|
66
|
+
n = e + o / 2;
|
|
67
|
+
}
|
|
68
|
+
t.fillText(r, u.x - 8, e);
|
|
49
69
|
}
|
|
50
|
-
|
|
70
|
+
f.title && (t.save(), t.font = r(s, s.fontSize + 1, 500), t.fillStyle = e(s.text, .8), t.translate(_ / 2 + 4, u.y + u.height / 2), t.rotate(-Math.PI / 2), t.textAlign = "center", t.fillText(f.title, 0, 0), t.restore());
|
|
51
71
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
72
|
+
let v = a.horizontal ? null : n.y2, y = n.y2Ticks;
|
|
73
|
+
if (v && y && v.visible) {
|
|
74
|
+
let i = u.x + u.width;
|
|
75
|
+
t.font = r(s), t.fillStyle = e(s.textMuted), t.textAlign = "left", t.textBaseline = "middle", y.values.forEach((e, n) => {
|
|
76
|
+
let r = a.yToPx(e);
|
|
77
|
+
r < u.y - .5 || r > u.y + u.height + .5 || t.fillText(y.labels[n], i + 8, r);
|
|
78
|
+
}), v.title && (t.save(), t.font = r(s, s.fontSize + 1, 500), t.fillStyle = e(s.text, .8), t.translate(n.width - _ / 2 - 4, u.y + u.height / 2), t.rotate(Math.PI / 2), t.textAlign = "center", t.fillText(v.title, 0, 0), t.restore());
|
|
79
|
+
}
|
|
80
|
+
}, l = (e, t) => e.x < t.x + t.width && t.x < e.x + e.width && e.y < t.y + t.height && t.y < e.y + e.height, u = (e, t) => e.x >= t.x && e.y >= t.y && e.x + e.width <= t.x + t.width && e.y + e.height <= t.y + t.height, d = (e, t, n, r, i, a) => {
|
|
57
81
|
e.lineWidth = 3, e.lineJoin = "round", e.strokeStyle = a, e.strokeText(t, n, r), e.fillStyle = i, e.fillText(t, n, r);
|
|
58
|
-
},
|
|
82
|
+
}, f = (e, t, n, r, i = []) => {
|
|
59
83
|
let a = [];
|
|
60
|
-
for (let
|
|
61
|
-
let e = n(
|
|
84
|
+
for (let o of e) {
|
|
85
|
+
let e = n(o.text), s = o.r + 4, c = {
|
|
86
|
+
x: o.x - e / 2,
|
|
87
|
+
y: o.y - s - r,
|
|
88
|
+
width: e,
|
|
89
|
+
height: r
|
|
90
|
+
}, d = {
|
|
91
|
+
x: o.x - e / 2,
|
|
92
|
+
y: o.y + s,
|
|
93
|
+
width: e,
|
|
94
|
+
height: r
|
|
95
|
+
}, f = {
|
|
96
|
+
x: o.x + s,
|
|
97
|
+
y: o.y - r / 2,
|
|
98
|
+
width: e,
|
|
99
|
+
height: r
|
|
100
|
+
}, p = {
|
|
101
|
+
x: o.x - s - e,
|
|
102
|
+
y: o.y - r / 2,
|
|
103
|
+
width: e,
|
|
104
|
+
height: r
|
|
105
|
+
}, m = (o.placement === "above" ? [c] : o.placement === "below" ? [d] : o.placement === "right" ? [f, p] : o.placement === "left" ? [p, f] : [
|
|
62
106
|
{
|
|
63
|
-
x:
|
|
64
|
-
y:
|
|
107
|
+
x: o.x + s,
|
|
108
|
+
y: o.y - r / 2,
|
|
65
109
|
width: e,
|
|
66
110
|
height: r
|
|
67
111
|
},
|
|
68
112
|
{
|
|
69
|
-
x:
|
|
70
|
-
y:
|
|
113
|
+
x: o.x - s - e,
|
|
114
|
+
y: o.y - r / 2,
|
|
71
115
|
width: e,
|
|
72
116
|
height: r
|
|
73
117
|
},
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
{
|
|
81
|
-
x: c.x - e / 2,
|
|
82
|
-
y: c.y + l,
|
|
83
|
-
width: e,
|
|
84
|
-
height: r
|
|
85
|
-
}
|
|
86
|
-
].find((e) => s(e, t) && !i.some((t) => o(t, e)));
|
|
87
|
-
u && (i.push(u), a.push({
|
|
88
|
-
label: c,
|
|
89
|
-
box: u
|
|
118
|
+
c,
|
|
119
|
+
d
|
|
120
|
+
]).find((e) => u(e, t) && !i.some((t) => l(t, e)));
|
|
121
|
+
m && (i.push(m), a.push({
|
|
122
|
+
label: o,
|
|
123
|
+
box: m
|
|
90
124
|
}));
|
|
91
125
|
}
|
|
92
126
|
return a;
|
|
93
|
-
},
|
|
94
|
-
let { scales:
|
|
95
|
-
|
|
96
|
-
let
|
|
97
|
-
for (let
|
|
98
|
-
if (
|
|
99
|
-
let
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
127
|
+
}, p = (t, n) => {
|
|
128
|
+
let { scales: c, theme: l } = n, { plot: u } = c;
|
|
129
|
+
n.clear !== !1 && t.clearRect(0, 0, n.width, n.height), t.save(), t.beginPath(), t.rect(u.x, u.y, u.width, u.height), t.clip();
|
|
130
|
+
let p = e(l.background, .9), m = [], h = l.fontSize + 4;
|
|
131
|
+
for (let a of n.annotations) {
|
|
132
|
+
if (a.type !== "line") continue;
|
|
133
|
+
let n = e(a.color);
|
|
134
|
+
t.strokeStyle = n, t.lineWidth = a.width, t.setLineDash(a.dash), t.beginPath();
|
|
135
|
+
let o = s(a, c);
|
|
136
|
+
if (o.vertical) {
|
|
137
|
+
let e = i(o.at);
|
|
138
|
+
t.moveTo(e, u.y), t.lineTo(e, u.y + u.height), t.stroke(), a.label && (t.setLineDash([]), t.font = r(l, l.fontSize, 500), t.textAlign = "left", t.textBaseline = "top", d(t, a.label, e + 5, u.y + 5, n, p));
|
|
103
139
|
} else {
|
|
104
|
-
let e =
|
|
105
|
-
|
|
140
|
+
let e = i(o.at);
|
|
141
|
+
t.moveTo(u.x, e), t.lineTo(u.x + u.width, e), t.stroke(), a.label && (t.setLineDash([]), t.font = r(l, l.fontSize, 500), t.textAlign = "right", t.textBaseline = "bottom", d(t, a.label, u.x + u.width - 6, e - 3, n, p));
|
|
106
142
|
}
|
|
107
143
|
}
|
|
108
|
-
|
|
109
|
-
for (let
|
|
110
|
-
if (
|
|
111
|
-
let n =
|
|
144
|
+
t.setLineDash([]), t.font = r(l, l.fontSize + 1, 600);
|
|
145
|
+
for (let r of n.annotations) {
|
|
146
|
+
if (r.type !== "rect" || !r.label) continue;
|
|
147
|
+
let n = o(r, c);
|
|
112
148
|
if (n.width <= 0 || n.height <= 0) continue;
|
|
113
|
-
let
|
|
114
|
-
|
|
115
|
-
x:
|
|
149
|
+
let i = t.measureText(r.label).width, a = r.labelPosition, s = a.endsWith("left") ? n.x + 10 : a.endsWith("right") ? n.x + n.width - 10 - i : n.x + (n.width - i) / 2, l = a.startsWith("top") ? n.y + 10 : a.startsWith("bottom") ? n.y + n.height - 10 - h : n.y + (n.height - h) / 2;
|
|
150
|
+
t.textAlign = "left", t.textBaseline = "top", t.fillStyle = e(r.labelColor), t.fillText(r.label, s, l), m.push({
|
|
151
|
+
x: s,
|
|
116
152
|
y: l,
|
|
117
|
-
width:
|
|
118
|
-
height:
|
|
153
|
+
width: i,
|
|
154
|
+
height: h
|
|
119
155
|
});
|
|
120
156
|
}
|
|
121
|
-
for (let
|
|
122
|
-
if (
|
|
123
|
-
|
|
124
|
-
let
|
|
125
|
-
|
|
157
|
+
for (let i of n.annotations) {
|
|
158
|
+
if (i.type !== "text" || !i.text) continue;
|
|
159
|
+
t.font = r(l, l.fontSize, i.weight);
|
|
160
|
+
let n = a(i, c, t.measureText(i.text).width, h);
|
|
161
|
+
t.textAlign = "left", t.textBaseline = "middle", d(t, i.text, n.x, n.y + n.height / 2, e(i.color), p), m.push(n);
|
|
126
162
|
}
|
|
127
|
-
if (
|
|
128
|
-
|
|
129
|
-
let
|
|
130
|
-
for (let { label: e, box:
|
|
163
|
+
if (n.pointLabels.length) {
|
|
164
|
+
t.font = r(l), t.textAlign = "left", t.textBaseline = "middle";
|
|
165
|
+
let i = e(l.text, .85), a = f(n.pointLabels, u, (e) => t.measureText(e).width, h - 2, m);
|
|
166
|
+
for (let { label: e, box: n } of a) d(t, e.text, n.x, n.y + n.height / 2, i, p);
|
|
131
167
|
}
|
|
132
|
-
|
|
168
|
+
t.restore();
|
|
133
169
|
};
|
|
134
170
|
//#endregion
|
|
135
|
-
export {
|
|
171
|
+
export { c as drawBackground, p as drawForeground, r as font, s as lineOf, f as placeLabels, o as rectOf, a as textBox };
|
|
136
172
|
|
|
137
173
|
//# sourceMappingURL=overlay.js.map
|