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,10 +1,19 @@
|
|
|
1
1
|
export type TimeUnit = "millisecond" | "second" | "minute" | "hour" | "day" | "month" | "year";
|
|
2
|
+
/** Time zone of the calendar of a time axis */
|
|
3
|
+
export type TimeZone = "local" | "utc";
|
|
2
4
|
export interface TimeTicks {
|
|
3
5
|
values: number[];
|
|
4
6
|
unit: TimeUnit;
|
|
5
7
|
format: (value: number) => string;
|
|
6
8
|
}
|
|
7
|
-
/**
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Calendar-aligned ticks between two timestamps
|
|
11
|
+
* @param locale labels in this locale (ISO-like labels without it)
|
|
12
|
+
* @param timeZone calendar of the steps and labels
|
|
13
|
+
*/
|
|
14
|
+
export declare const timeTicks: (min: number, max: number, count: number, locale?: string, timeZone?: TimeZone) => TimeTicks;
|
|
15
|
+
/**
|
|
16
|
+
* Full label (tooltips): precision follows the unit of the ticks; dates
|
|
17
|
+
* show the weekday with a `locale`
|
|
18
|
+
*/
|
|
19
|
+
export declare const formatTime: (value: number, unit?: TimeUnit, locale?: string, timeZone?: TimeZone) => string;
|
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
export type TimeUnit = "millisecond" | "second" | "minute" | "hour" | "day" | "month" | "year";
|
|
2
|
+
/** Time zone of the calendar of a time axis */
|
|
3
|
+
export type TimeZone = "local" | "utc";
|
|
2
4
|
export interface TimeTicks {
|
|
3
5
|
values: number[];
|
|
4
6
|
unit: TimeUnit;
|
|
5
7
|
format: (value: number) => string;
|
|
6
8
|
}
|
|
7
|
-
/**
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Calendar-aligned ticks between two timestamps
|
|
11
|
+
* @param locale labels in this locale (ISO-like labels without it)
|
|
12
|
+
* @param timeZone calendar of the steps and labels
|
|
13
|
+
*/
|
|
14
|
+
export declare const timeTicks: (min: number, max: number, count: number, locale?: string, timeZone?: TimeZone) => TimeTicks;
|
|
15
|
+
/**
|
|
16
|
+
* Full label (tooltips): precision follows the unit of the ticks; dates
|
|
17
|
+
* show the weekday with a `locale`
|
|
18
|
+
*/
|
|
19
|
+
export declare const formatTime: (value: number, unit?: TimeUnit, locale?: string, timeZone?: TimeZone) => string;
|
|
@@ -1,189 +1,254 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { dateFormat as e } from "./locale.js";
|
|
2
|
+
import { linearTicks as t, tickStep as n } from "./scale.js";
|
|
2
3
|
//#region src/engine/time.ts
|
|
3
|
-
var
|
|
4
|
+
var r = 1e3, i = 60 * r, a = 60 * i, o = 24 * a, s = 30 * o, c = 365 * o, l = [
|
|
4
5
|
{
|
|
5
6
|
unit: "second",
|
|
6
7
|
step: 1,
|
|
7
|
-
ms:
|
|
8
|
+
ms: r
|
|
8
9
|
},
|
|
9
10
|
{
|
|
10
11
|
unit: "second",
|
|
11
12
|
step: 5,
|
|
12
|
-
ms: 5 *
|
|
13
|
+
ms: 5 * r
|
|
13
14
|
},
|
|
14
15
|
{
|
|
15
16
|
unit: "second",
|
|
16
17
|
step: 15,
|
|
17
|
-
ms: 15 *
|
|
18
|
+
ms: 15 * r
|
|
18
19
|
},
|
|
19
20
|
{
|
|
20
21
|
unit: "second",
|
|
21
22
|
step: 30,
|
|
22
|
-
ms: 30 *
|
|
23
|
+
ms: 30 * r
|
|
23
24
|
},
|
|
24
25
|
{
|
|
25
26
|
unit: "minute",
|
|
26
27
|
step: 1,
|
|
27
|
-
ms:
|
|
28
|
+
ms: i
|
|
28
29
|
},
|
|
29
30
|
{
|
|
30
31
|
unit: "minute",
|
|
31
32
|
step: 5,
|
|
32
|
-
ms: 5 *
|
|
33
|
+
ms: 5 * i
|
|
33
34
|
},
|
|
34
35
|
{
|
|
35
36
|
unit: "minute",
|
|
36
37
|
step: 15,
|
|
37
|
-
ms: 15 *
|
|
38
|
+
ms: 15 * i
|
|
38
39
|
},
|
|
39
40
|
{
|
|
40
41
|
unit: "minute",
|
|
41
42
|
step: 30,
|
|
42
|
-
ms: 30 *
|
|
43
|
+
ms: 30 * i
|
|
43
44
|
},
|
|
44
45
|
{
|
|
45
46
|
unit: "hour",
|
|
46
47
|
step: 1,
|
|
47
|
-
ms:
|
|
48
|
+
ms: a
|
|
48
49
|
},
|
|
49
50
|
{
|
|
50
51
|
unit: "hour",
|
|
51
52
|
step: 3,
|
|
52
|
-
ms: 3 *
|
|
53
|
+
ms: 3 * a
|
|
53
54
|
},
|
|
54
55
|
{
|
|
55
56
|
unit: "hour",
|
|
56
57
|
step: 6,
|
|
57
|
-
ms: 6 *
|
|
58
|
+
ms: 6 * a
|
|
58
59
|
},
|
|
59
60
|
{
|
|
60
61
|
unit: "hour",
|
|
61
62
|
step: 12,
|
|
62
|
-
ms: 12 *
|
|
63
|
+
ms: 12 * a
|
|
63
64
|
},
|
|
64
65
|
{
|
|
65
66
|
unit: "day",
|
|
66
67
|
step: 1,
|
|
67
|
-
ms:
|
|
68
|
+
ms: o
|
|
68
69
|
},
|
|
69
70
|
{
|
|
70
71
|
unit: "day",
|
|
71
72
|
step: 2,
|
|
72
|
-
ms: 2 *
|
|
73
|
+
ms: 2 * o
|
|
73
74
|
},
|
|
74
75
|
{
|
|
75
76
|
unit: "day",
|
|
76
77
|
step: 7,
|
|
77
|
-
ms: 7 *
|
|
78
|
+
ms: 7 * o
|
|
78
79
|
},
|
|
79
80
|
{
|
|
80
81
|
unit: "month",
|
|
81
82
|
step: 1,
|
|
82
|
-
ms:
|
|
83
|
+
ms: s
|
|
83
84
|
},
|
|
84
85
|
{
|
|
85
86
|
unit: "month",
|
|
86
87
|
step: 3,
|
|
87
|
-
ms: 3 *
|
|
88
|
+
ms: 3 * s
|
|
88
89
|
},
|
|
89
90
|
{
|
|
90
91
|
unit: "month",
|
|
91
92
|
step: 6,
|
|
92
|
-
ms: 6 *
|
|
93
|
+
ms: 6 * s
|
|
94
|
+
}
|
|
95
|
+
], u = (e, t = 2) => String(e).padStart(t, "0"), d = (e, t) => {
|
|
96
|
+
let n = new Date(e);
|
|
97
|
+
return t ? {
|
|
98
|
+
year: n.getUTCFullYear(),
|
|
99
|
+
month: n.getUTCMonth(),
|
|
100
|
+
date: n.getUTCDate(),
|
|
101
|
+
day: n.getUTCDay(),
|
|
102
|
+
hours: n.getUTCHours(),
|
|
103
|
+
minutes: n.getUTCMinutes(),
|
|
104
|
+
seconds: n.getUTCSeconds(),
|
|
105
|
+
ms: n.getUTCMilliseconds()
|
|
106
|
+
} : {
|
|
107
|
+
year: n.getFullYear(),
|
|
108
|
+
month: n.getMonth(),
|
|
109
|
+
date: n.getDate(),
|
|
110
|
+
day: n.getDay(),
|
|
111
|
+
hours: n.getHours(),
|
|
112
|
+
minutes: n.getMinutes(),
|
|
113
|
+
seconds: n.getSeconds(),
|
|
114
|
+
ms: n.getMilliseconds()
|
|
115
|
+
};
|
|
116
|
+
}, f = (e, t, n, r = 1, i = 0, a = 0, o = 0) => {
|
|
117
|
+
if (e) {
|
|
118
|
+
let e = Date.UTC(t, n, r, i, a, o);
|
|
119
|
+
if (t >= 0 && t < 100) {
|
|
120
|
+
let t = new Date(e);
|
|
121
|
+
return t.setUTCFullYear(t.getUTCFullYear() - 1900), t.getTime();
|
|
122
|
+
}
|
|
123
|
+
return e;
|
|
93
124
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
125
|
+
let s = new Date(t, n, r, i, a, o);
|
|
126
|
+
return t >= 0 && t < 100 && s.setFullYear(s.getFullYear() - 1900), s.getTime();
|
|
127
|
+
}, p = (e, t) => {
|
|
128
|
+
let i = e / Math.max(1, t);
|
|
129
|
+
if (i < r * .75) return {
|
|
97
130
|
unit: "millisecond",
|
|
98
|
-
step:
|
|
131
|
+
step: n(0, e, t),
|
|
99
132
|
ms: 1
|
|
100
133
|
};
|
|
101
|
-
for (let e of
|
|
102
|
-
let a = Math.max(1,
|
|
134
|
+
for (let e of l) if (e.ms >= i * .75) return e;
|
|
135
|
+
let a = Math.max(1, n(0, e / c, t));
|
|
103
136
|
return {
|
|
104
137
|
unit: "year",
|
|
105
138
|
step: Math.round(a),
|
|
106
|
-
ms: Math.round(a) *
|
|
139
|
+
ms: Math.round(a) * c
|
|
107
140
|
};
|
|
108
|
-
},
|
|
109
|
-
let
|
|
141
|
+
}, m = (e, { unit: t, step: n }, r) => {
|
|
142
|
+
let i = d(e, r);
|
|
110
143
|
switch (t) {
|
|
111
|
-
case "second":
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
case "
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
r.setMinutes(0, 0, 0), r.setHours(r.getHours() - r.getHours() % n);
|
|
119
|
-
break;
|
|
120
|
-
case "day":
|
|
121
|
-
r.setHours(0, 0, 0, 0), n === 7 && r.setDate(r.getDate() - (r.getDay() + 6) % 7);
|
|
122
|
-
break;
|
|
123
|
-
case "month":
|
|
124
|
-
r.setHours(0, 0, 0, 0), r.setDate(1), r.setMonth(r.getMonth() - r.getMonth() % n);
|
|
125
|
-
break;
|
|
126
|
-
case "year": r.setHours(0, 0, 0, 0), r.setMonth(0, 1), r.setFullYear(r.getFullYear() - r.getFullYear() % n);
|
|
144
|
+
case "second": return f(r, i.year, i.month, i.date, i.hours, i.minutes, i.seconds - i.seconds % n);
|
|
145
|
+
case "minute": return f(r, i.year, i.month, i.date, i.hours, i.minutes - i.minutes % n);
|
|
146
|
+
case "hour": return f(r, i.year, i.month, i.date, i.hours - i.hours % n);
|
|
147
|
+
case "day": return f(r, i.year, i.month, i.date - (n === 7 ? (i.day + 6) % 7 : 0));
|
|
148
|
+
case "month": return f(r, i.year, i.month - i.month % n);
|
|
149
|
+
case "year": return f(r, i.year - i.year % n, 0);
|
|
150
|
+
default: return e;
|
|
127
151
|
}
|
|
128
|
-
|
|
129
|
-
|
|
152
|
+
}, h = (e, { unit: t, step: n }, r) => {
|
|
153
|
+
let { year: i, month: a, date: o, hours: s, minutes: c, seconds: l } = d(e, r);
|
|
130
154
|
switch (t) {
|
|
131
|
-
case "second":
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
case "
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
e.setHours(e.getHours() + n);
|
|
139
|
-
break;
|
|
140
|
-
case "day":
|
|
141
|
-
e.setDate(e.getDate() + n);
|
|
142
|
-
break;
|
|
143
|
-
case "month":
|
|
144
|
-
e.setMonth(e.getMonth() + n);
|
|
145
|
-
break;
|
|
146
|
-
case "year": e.setFullYear(e.getFullYear() + n);
|
|
155
|
+
case "second": return f(r, i, a, o, s, c, l + n);
|
|
156
|
+
case "minute": return f(r, i, a, o, s, c + n, l);
|
|
157
|
+
case "hour": return f(r, i, a, o, s + n, c, l);
|
|
158
|
+
case "day": return f(r, i, a, o + n, s, c, l);
|
|
159
|
+
case "month": return f(r, i, a + n, o, s, c, l);
|
|
160
|
+
case "year": return f(r, i + n, a, o, s, c, l);
|
|
161
|
+
default: return e + n;
|
|
147
162
|
}
|
|
148
|
-
},
|
|
149
|
-
|
|
150
|
-
let
|
|
151
|
-
if (
|
|
152
|
-
values: e
|
|
163
|
+
}, g = (e, n, r, i, a = "local") => {
|
|
164
|
+
e > n && ([e, n] = [n, e]);
|
|
165
|
+
let o = p(n - e, r);
|
|
166
|
+
if (o.unit === "millisecond") return {
|
|
167
|
+
values: t(e, n, r),
|
|
153
168
|
unit: "millisecond",
|
|
154
|
-
format: (e) =>
|
|
169
|
+
format: (e) => T(e, "millisecond", i, a)
|
|
155
170
|
};
|
|
156
|
-
let a = [],
|
|
157
|
-
for (;
|
|
158
|
-
for (;
|
|
159
|
-
let { unit:
|
|
171
|
+
let s = a === "utc", c = [], l = m(e, o, s);
|
|
172
|
+
for (; l < e;) l = h(l, o, s);
|
|
173
|
+
for (; l <= n && c.length < 500;) c.push(l), l = h(l, o, s);
|
|
174
|
+
let { unit: u } = o;
|
|
160
175
|
return {
|
|
161
|
-
values:
|
|
162
|
-
unit:
|
|
163
|
-
format: (e) =>
|
|
176
|
+
values: c,
|
|
177
|
+
unit: u,
|
|
178
|
+
format: (e) => w(e, u, i, a)
|
|
164
179
|
};
|
|
165
|
-
},
|
|
166
|
-
|
|
180
|
+
}, _ = (e) => `${e.year}-${u(e.month + 1)}-${u(e.date)}`, v = (e) => `${u(e.hours)}:${u(e.minutes)}`, y = {
|
|
181
|
+
hour: "2-digit",
|
|
182
|
+
minute: "2-digit",
|
|
183
|
+
hourCycle: "h23"
|
|
184
|
+
}, b = {
|
|
185
|
+
...y,
|
|
186
|
+
second: "2-digit"
|
|
187
|
+
}, x = {
|
|
188
|
+
month: "short",
|
|
189
|
+
day: "numeric"
|
|
190
|
+
}, S = {
|
|
191
|
+
year: "numeric",
|
|
192
|
+
month: "short",
|
|
193
|
+
day: "numeric"
|
|
194
|
+
}, C = (t, n, r) => e(t, n === "utc" ? {
|
|
195
|
+
...r,
|
|
196
|
+
timeZone: "UTC"
|
|
197
|
+
} : r), w = (e, t, n, r) => {
|
|
198
|
+
let i = d(e, r === "utc"), a = i.hours === 0 && i.minutes === 0 && i.seconds === 0, o = i.month === 0 && i.date === 1;
|
|
199
|
+
if (n) {
|
|
200
|
+
let s = (t) => C(n, r, t).format(e);
|
|
201
|
+
switch (t) {
|
|
202
|
+
case "second": return s(b);
|
|
203
|
+
case "minute":
|
|
204
|
+
case "hour": return s(a ? x : y);
|
|
205
|
+
case "day": return s(o ? { year: "numeric" } : x);
|
|
206
|
+
case "month": return s(i.month === 0 ? { year: "numeric" } : { month: "short" });
|
|
207
|
+
default: return s({ year: "numeric" });
|
|
208
|
+
}
|
|
209
|
+
}
|
|
167
210
|
switch (t) {
|
|
168
|
-
case "second": return `${
|
|
211
|
+
case "second": return `${v(i)}:${u(i.seconds)}`;
|
|
169
212
|
case "minute":
|
|
170
|
-
case "hour": return
|
|
171
|
-
case "day": return
|
|
172
|
-
case "month": return
|
|
173
|
-
default: return String(
|
|
213
|
+
case "hour": return a ? `${u(i.month + 1)}-${u(i.date)}` : v(i);
|
|
214
|
+
case "day": return o ? String(i.year) : `${u(i.month + 1)}-${u(i.date)}`;
|
|
215
|
+
case "month": return i.month === 0 ? String(i.year) : `${i.year}-${u(i.month + 1)}`;
|
|
216
|
+
default: return String(i.year);
|
|
217
|
+
}
|
|
218
|
+
}, T = (e, t = "minute", n, r = "local") => {
|
|
219
|
+
if (!Number.isFinite(e) || Number.isNaN(new Date(e).getTime())) return "–";
|
|
220
|
+
let i = d(e, r === "utc");
|
|
221
|
+
if (n) {
|
|
222
|
+
let a = (t) => C(n, r, t).format(e);
|
|
223
|
+
switch (t) {
|
|
224
|
+
case "millisecond": return `${a({
|
|
225
|
+
...S,
|
|
226
|
+
...b
|
|
227
|
+
})}.${u(i.ms, 3)}`;
|
|
228
|
+
case "second": return a({
|
|
229
|
+
...S,
|
|
230
|
+
...b
|
|
231
|
+
});
|
|
232
|
+
case "minute":
|
|
233
|
+
case "hour": return a({
|
|
234
|
+
...S,
|
|
235
|
+
...y
|
|
236
|
+
});
|
|
237
|
+
default: return a({
|
|
238
|
+
...S,
|
|
239
|
+
weekday: "short"
|
|
240
|
+
});
|
|
241
|
+
}
|
|
174
242
|
}
|
|
175
|
-
}, _ = (e, t = "minute") => {
|
|
176
|
-
let n = new Date(e);
|
|
177
|
-
if (Number.isNaN(n.getTime())) return "–";
|
|
178
243
|
switch (t) {
|
|
179
|
-
case "millisecond": return `${
|
|
180
|
-
case "second": return `${
|
|
244
|
+
case "millisecond": return `${_(i)} ${v(i)}:${u(i.seconds)}.${u(i.ms, 3)}`;
|
|
245
|
+
case "second": return `${_(i)} ${v(i)}:${u(i.seconds)}`;
|
|
181
246
|
case "minute":
|
|
182
|
-
case "hour": return `${
|
|
183
|
-
default: return
|
|
247
|
+
case "hour": return `${_(i)} ${v(i)}`;
|
|
248
|
+
default: return _(i);
|
|
184
249
|
}
|
|
185
250
|
};
|
|
186
251
|
//#endregion
|
|
187
|
-
export {
|
|
252
|
+
export { T as formatTime, g as timeTicks };
|
|
188
253
|
|
|
189
254
|
//# sourceMappingURL=time.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","names":["SECOND","MINUTE","HOUR","DAY","MONTH","YEAR","INTERVALS","pad","n","width","chooseInterval","target","span","count","tickStep","interval","years","floorTo","d","t","unit","step","advance","timeTicks","min","max","linearTicks","formatTime","v","values","formatTick","ymd","hm","value","midnight"],"sources":["../../../../charts/src/engine/time.ts"],"sourcesContent":["// Ticks and labels of time axes (timestamps in ms, local time).\n\nimport { linearTicks, tickStep } from \"./scale\";\n\nconst SECOND = 1000;\nconst MINUTE = 60 * SECOND;\nconst HOUR = 60 * MINUTE;\nconst DAY = 24 * HOUR;\nconst MONTH = 30 * DAY;\nconst YEAR = 365 * DAY;\n\nexport type TimeUnit =\n \"millisecond\" | \"second\" | \"minute\" | \"hour\" | \"day\" | \"month\" | \"year\";\n\ninterface Interval {\n unit: TimeUnit;\n step: number;\n /** Approximate duration (ms) */\n ms: number;\n}\n\nconst INTERVALS: Interval[] = [\n { unit: \"second\", step: 1, ms: SECOND },\n { unit: \"second\", step: 5, ms: 5 * SECOND },\n { unit: \"second\", step: 15, ms: 15 * SECOND },\n { unit: \"second\", step: 30, ms: 30 * SECOND },\n { unit: \"minute\", step: 1, ms: MINUTE },\n { unit: \"minute\", step: 5, ms: 5 * MINUTE },\n { unit: \"minute\", step: 15, ms: 15 * MINUTE },\n { unit: \"minute\", step: 30, ms: 30 * MINUTE },\n { unit: \"hour\", step: 1, ms: HOUR },\n { unit: \"hour\", step: 3, ms: 3 * HOUR },\n { unit: \"hour\", step: 6, ms: 6 * HOUR },\n { unit: \"hour\", step: 12, ms: 12 * HOUR },\n { unit: \"day\", step: 1, ms: DAY },\n { unit: \"day\", step: 2, ms: 2 * DAY },\n { unit: \"day\", step: 7, ms: 7 * DAY },\n { unit: \"month\", step: 1, ms: MONTH },\n { unit: \"month\", step: 3, ms: 3 * MONTH },\n { unit: \"month\", step: 6, ms: 6 * MONTH },\n];\n\nconst pad = (n: number, width = 2) => String(n).padStart(width, \"0\");\n\nconst chooseInterval = (span: number, count: number): Interval => {\n const target = span / Math.max(1, count);\n if (target < SECOND * 0.75) {\n return { unit: \"millisecond\", step: tickStep(0, span, count), ms: 1 };\n }\n for (const interval of INTERVALS) {\n if (interval.ms >= target * 0.75) return interval;\n }\n const years = Math.max(1, tickStep(0, span / YEAR, count));\n return {\n unit: \"year\",\n step: Math.round(years),\n ms: Math.round(years) * YEAR,\n };\n};\n\n/** Start of the tick sequence: `t` floored to the unit, aligned on the step */\nconst floorTo = (t: number, { unit, step }: Interval): Date => {\n const d = new Date(t);\n switch (unit) {\n case \"second\":\n d.setMilliseconds(0);\n d.setSeconds(d.getSeconds() - (d.getSeconds() % step));\n break;\n case \"minute\":\n d.setSeconds(0, 0);\n d.setMinutes(d.getMinutes() - (d.getMinutes() % step));\n break;\n case \"hour\":\n d.setMinutes(0, 0, 0);\n d.setHours(d.getHours() - (d.getHours() % step));\n break;\n case \"day\":\n d.setHours(0, 0, 0, 0);\n // weeks start on Monday\n if (step === 7) d.setDate(d.getDate() - ((d.getDay() + 6) % 7));\n break;\n case \"month\":\n d.setHours(0, 0, 0, 0);\n d.setDate(1);\n d.setMonth(d.getMonth() - (d.getMonth() % step));\n break;\n case \"year\":\n d.setHours(0, 0, 0, 0);\n d.setMonth(0, 1);\n d.setFullYear(d.getFullYear() - (d.getFullYear() % step));\n break;\n default:\n break;\n }\n return d;\n};\n\nconst advance = (d: Date, { unit, step }: Interval) => {\n switch (unit) {\n case \"second\":\n d.setSeconds(d.getSeconds() + step);\n break;\n case \"minute\":\n d.setMinutes(d.getMinutes() + step);\n break;\n case \"hour\":\n d.setHours(d.getHours() + step);\n break;\n case \"day\":\n d.setDate(d.getDate() + step);\n break;\n case \"month\":\n d.setMonth(d.getMonth() + step);\n break;\n case \"year\":\n d.setFullYear(d.getFullYear() + step);\n break;\n default:\n break;\n }\n};\n\nexport interface TimeTicks {\n values: number[];\n unit: TimeUnit;\n format: (value: number) => string;\n}\n\n/** Calendar-aligned ticks between two timestamps */\nexport const timeTicks = (\n min: number,\n max: number,\n count: number,\n): TimeTicks => {\n if (min > max) [min, max] = [max, min];\n const interval = chooseInterval(max - min, count);\n if (interval.unit === \"millisecond\") {\n return {\n values: linearTicks(min, max, count),\n unit: \"millisecond\",\n format: (v) => formatTime(v, \"millisecond\"),\n };\n }\n const values: number[] = [];\n const d = floorTo(min, interval);\n while (d.getTime() < min) advance(d, interval);\n while (d.getTime() <= max && values.length < 500) {\n values.push(d.getTime());\n advance(d, interval);\n }\n const { unit } = interval;\n return { values, unit, format: (v) => formatTick(v, unit) };\n};\n\nconst ymd = (d: Date) =>\n `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())}`;\nconst hm = (d: Date) => `${pad(d.getHours())}:${pad(d.getMinutes())}`;\n\n/** Short tick label; day boundaries show the date, year boundaries the year */\nconst formatTick = (value: number, unit: TimeUnit): string => {\n const d = new Date(value);\n const midnight =\n d.getHours() === 0 && d.getMinutes() === 0 && d.getSeconds() === 0;\n switch (unit) {\n case \"second\":\n return `${hm(d)}:${pad(d.getSeconds())}`;\n case \"minute\":\n case \"hour\":\n return midnight ? `${pad(d.getMonth() + 1)}-${pad(d.getDate())}` : hm(d);\n case \"day\":\n return d.getMonth() === 0 && d.getDate() === 1\n ? String(d.getFullYear())\n : `${pad(d.getMonth() + 1)}-${pad(d.getDate())}`;\n case \"month\":\n return d.getMonth() === 0\n ? String(d.getFullYear())\n : `${d.getFullYear()}-${pad(d.getMonth() + 1)}`;\n default:\n return String(d.getFullYear());\n }\n};\n\n/** Full label (tooltips): precision follows the unit of the ticks */\nexport const formatTime = (\n value: number,\n unit: TimeUnit = \"minute\",\n): string => {\n const d = new Date(value);\n if (Number.isNaN(d.getTime())) return \"–\";\n switch (unit) {\n case \"millisecond\":\n return `${ymd(d)} ${hm(d)}:${pad(d.getSeconds())}.${pad(d.getMilliseconds(), 3)}`;\n case \"second\":\n return `${ymd(d)} ${hm(d)}:${pad(d.getSeconds())}`;\n case \"minute\":\n case \"hour\":\n return `${ymd(d)} ${hm(d)}`;\n default:\n return ymd(d);\n }\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"time.js","names":["SECOND","MINUTE","HOUR","DAY","MONTH","YEAR","INTERVALS","pad","n","width","partsOf","d","t","utc","timeOf","year","month","date","hours","minutes","seconds","chooseInterval","target","span","count","tickStep","interval","years","floorTo","p","unit","step","advance","timeTicks","min","max","linearTicks","formatTime","v","locale","timeZone","values","formatTick","ymd","hm","HM","HMS","MONTH_DAY","DATE","intl","dateFormat","options","value","midnight","newYear","f"],"sources":["../../../../charts/src/engine/time.ts"],"sourcesContent":["// Ticks and labels of time axes (timestamps in ms). Calendar steps follow\n// the local time or UTC (`timeZone`); labels use `Intl.DateTimeFormat` of a\n// locale (month / weekday names), or ISO-like texts without a locale.\n\nimport { dateFormat } from \"./locale\";\nimport { linearTicks, tickStep } from \"./scale\";\n\nconst SECOND = 1000;\nconst MINUTE = 60 * SECOND;\nconst HOUR = 60 * MINUTE;\nconst DAY = 24 * HOUR;\nconst MONTH = 30 * DAY;\nconst YEAR = 365 * DAY;\n\nexport type TimeUnit =\n \"millisecond\" | \"second\" | \"minute\" | \"hour\" | \"day\" | \"month\" | \"year\";\n\n/** Time zone of the calendar of a time axis */\nexport type TimeZone = \"local\" | \"utc\";\n\ninterface Interval {\n unit: TimeUnit;\n step: number;\n /** Approximate duration (ms) */\n ms: number;\n}\n\nconst INTERVALS: Interval[] = [\n { unit: \"second\", step: 1, ms: SECOND },\n { unit: \"second\", step: 5, ms: 5 * SECOND },\n { unit: \"second\", step: 15, ms: 15 * SECOND },\n { unit: \"second\", step: 30, ms: 30 * SECOND },\n { unit: \"minute\", step: 1, ms: MINUTE },\n { unit: \"minute\", step: 5, ms: 5 * MINUTE },\n { unit: \"minute\", step: 15, ms: 15 * MINUTE },\n { unit: \"minute\", step: 30, ms: 30 * MINUTE },\n { unit: \"hour\", step: 1, ms: HOUR },\n { unit: \"hour\", step: 3, ms: 3 * HOUR },\n { unit: \"hour\", step: 6, ms: 6 * HOUR },\n { unit: \"hour\", step: 12, ms: 12 * HOUR },\n { unit: \"day\", step: 1, ms: DAY },\n { unit: \"day\", step: 2, ms: 2 * DAY },\n { unit: \"day\", step: 7, ms: 7 * DAY },\n { unit: \"month\", step: 1, ms: MONTH },\n { unit: \"month\", step: 3, ms: 3 * MONTH },\n { unit: \"month\", step: 6, ms: 6 * MONTH },\n];\n\nconst pad = (n: number, width = 2) => String(n).padStart(width, \"0\");\n\n/** Calendar fields of a timestamp */\ninterface Parts {\n year: number;\n /** 0-11 */\n month: number;\n date: number;\n /** 0 = Sunday */\n day: number;\n hours: number;\n minutes: number;\n seconds: number;\n ms: number;\n}\n\nconst partsOf = (t: number, utc: boolean): Parts => {\n const d = new Date(t);\n return utc\n ? {\n year: d.getUTCFullYear(),\n month: d.getUTCMonth(),\n date: d.getUTCDate(),\n day: d.getUTCDay(),\n hours: d.getUTCHours(),\n minutes: d.getUTCMinutes(),\n seconds: d.getUTCSeconds(),\n ms: d.getUTCMilliseconds(),\n }\n : {\n year: d.getFullYear(),\n month: d.getMonth(),\n date: d.getDate(),\n day: d.getDay(),\n hours: d.getHours(),\n minutes: d.getMinutes(),\n seconds: d.getSeconds(),\n ms: d.getMilliseconds(),\n };\n};\n\n/** Timestamp of calendar fields (out of range fields carry over) */\nconst timeOf = (\n utc: boolean,\n year: number,\n month: number,\n date = 1,\n hours = 0,\n minutes = 0,\n seconds = 0,\n): number => {\n if (utc) {\n const t = Date.UTC(year, month, date, hours, minutes, seconds);\n // years 0-99 are mapped to 1900-1999 by Date.UTC\n if (year >= 0 && year < 100) {\n const d = new Date(t);\n d.setUTCFullYear(d.getUTCFullYear() - 1900);\n return d.getTime();\n }\n return t;\n }\n const d = new Date(year, month, date, hours, minutes, seconds);\n if (year >= 0 && year < 100) d.setFullYear(d.getFullYear() - 1900);\n return d.getTime();\n};\n\nconst chooseInterval = (span: number, count: number): Interval => {\n const target = span / Math.max(1, count);\n if (target < SECOND * 0.75) {\n return { unit: \"millisecond\", step: tickStep(0, span, count), ms: 1 };\n }\n for (const interval of INTERVALS) {\n if (interval.ms >= target * 0.75) return interval;\n }\n const years = Math.max(1, tickStep(0, span / YEAR, count));\n return {\n unit: \"year\",\n step: Math.round(years),\n ms: Math.round(years) * YEAR,\n };\n};\n\n/** Start of the tick sequence: `t` floored to the unit, aligned on the step */\nconst floorTo = (t: number, { unit, step }: Interval, utc: boolean): number => {\n const p = partsOf(t, utc);\n switch (unit) {\n case \"second\":\n return timeOf(\n utc,\n p.year,\n p.month,\n p.date,\n p.hours,\n p.minutes,\n p.seconds - (p.seconds % step),\n );\n case \"minute\":\n return timeOf(\n utc,\n p.year,\n p.month,\n p.date,\n p.hours,\n p.minutes - (p.minutes % step),\n );\n case \"hour\":\n return timeOf(utc, p.year, p.month, p.date, p.hours - (p.hours % step));\n case \"day\":\n // weeks start on Monday\n return timeOf(\n utc,\n p.year,\n p.month,\n p.date - (step === 7 ? (p.day + 6) % 7 : 0),\n );\n case \"month\":\n return timeOf(utc, p.year, p.month - (p.month % step));\n case \"year\":\n return timeOf(utc, p.year - (p.year % step), 0);\n default:\n return t;\n }\n};\n\nconst advance = (t: number, { unit, step }: Interval, utc: boolean): number => {\n const p = partsOf(t, utc);\n const { year, month, date, hours, minutes, seconds } = p;\n switch (unit) {\n case \"second\":\n return timeOf(utc, year, month, date, hours, minutes, seconds + step);\n case \"minute\":\n return timeOf(utc, year, month, date, hours, minutes + step, seconds);\n case \"hour\":\n return timeOf(utc, year, month, date, hours + step, minutes, seconds);\n case \"day\":\n return timeOf(utc, year, month, date + step, hours, minutes, seconds);\n case \"month\":\n return timeOf(utc, year, month + step, date, hours, minutes, seconds);\n case \"year\":\n return timeOf(utc, year + step, month, date, hours, minutes, seconds);\n default:\n return t + step;\n }\n};\n\nexport interface TimeTicks {\n values: number[];\n unit: TimeUnit;\n format: (value: number) => string;\n}\n\n/**\n * Calendar-aligned ticks between two timestamps\n * @param locale labels in this locale (ISO-like labels without it)\n * @param timeZone calendar of the steps and labels\n */\nexport const timeTicks = (\n min: number,\n max: number,\n count: number,\n locale?: string,\n timeZone: TimeZone = \"local\",\n): TimeTicks => {\n if (min > max) [min, max] = [max, min];\n const interval = chooseInterval(max - min, count);\n if (interval.unit === \"millisecond\") {\n return {\n values: linearTicks(min, max, count),\n unit: \"millisecond\",\n format: (v) => formatTime(v, \"millisecond\", locale, timeZone),\n };\n }\n const utc = timeZone === \"utc\";\n const values: number[] = [];\n let t = floorTo(min, interval, utc);\n while (t < min) t = advance(t, interval, utc);\n while (t <= max && values.length < 500) {\n values.push(t);\n t = advance(t, interval, utc);\n }\n const { unit } = interval;\n return {\n values,\n unit,\n format: (v) => formatTick(v, unit, locale, timeZone),\n };\n};\n\nconst ymd = (p: Parts) => `${p.year}-${pad(p.month + 1)}-${pad(p.date)}`;\nconst hm = (p: Parts) => `${pad(p.hours)}:${pad(p.minutes)}`;\n\nconst HM: Intl.DateTimeFormatOptions = {\n hour: \"2-digit\",\n minute: \"2-digit\",\n hourCycle: \"h23\",\n};\nconst HMS: Intl.DateTimeFormatOptions = { ...HM, second: \"2-digit\" };\nconst MONTH_DAY: Intl.DateTimeFormatOptions = {\n month: \"short\",\n day: \"numeric\",\n};\nconst DATE: Intl.DateTimeFormatOptions = {\n year: \"numeric\",\n month: \"short\",\n day: \"numeric\",\n};\n\n/** Cached formatter of a locale and time zone */\nconst intl = (\n locale: string,\n timeZone: TimeZone,\n options: Intl.DateTimeFormatOptions,\n) =>\n dateFormat(\n locale,\n timeZone === \"utc\" ? { ...options, timeZone: \"UTC\" } : options,\n );\n\n/** Short tick label; day boundaries show the date, year boundaries the year */\nconst formatTick = (\n value: number,\n unit: TimeUnit,\n locale: string | undefined,\n timeZone: TimeZone,\n): string => {\n const p = partsOf(value, timeZone === \"utc\");\n const midnight = p.hours === 0 && p.minutes === 0 && p.seconds === 0;\n const newYear = p.month === 0 && p.date === 1;\n if (locale) {\n const f = (options: Intl.DateTimeFormatOptions) =>\n intl(locale, timeZone, options).format(value);\n switch (unit) {\n case \"second\":\n return f(HMS);\n case \"minute\":\n case \"hour\":\n return f(midnight ? MONTH_DAY : HM);\n case \"day\":\n return f(newYear ? { year: \"numeric\" } : MONTH_DAY);\n case \"month\":\n return f(p.month === 0 ? { year: \"numeric\" } : { month: \"short\" });\n default:\n return f({ year: \"numeric\" });\n }\n }\n switch (unit) {\n case \"second\":\n return `${hm(p)}:${pad(p.seconds)}`;\n case \"minute\":\n case \"hour\":\n return midnight ? `${pad(p.month + 1)}-${pad(p.date)}` : hm(p);\n case \"day\":\n return newYear ? String(p.year) : `${pad(p.month + 1)}-${pad(p.date)}`;\n case \"month\":\n return p.month === 0 ? String(p.year) : `${p.year}-${pad(p.month + 1)}`;\n default:\n return String(p.year);\n }\n};\n\n/**\n * Full label (tooltips): precision follows the unit of the ticks; dates\n * show the weekday with a `locale`\n */\nexport const formatTime = (\n value: number,\n unit: TimeUnit = \"minute\",\n locale?: string,\n timeZone: TimeZone = \"local\",\n): string => {\n if (!Number.isFinite(value) || Number.isNaN(new Date(value).getTime()))\n return \"–\";\n const p = partsOf(value, timeZone === \"utc\");\n if (locale) {\n const f = (options: Intl.DateTimeFormatOptions) =>\n intl(locale, timeZone, options).format(value);\n switch (unit) {\n case \"millisecond\":\n return `${f({ ...DATE, ...HMS })}.${pad(p.ms, 3)}`;\n case \"second\":\n return f({ ...DATE, ...HMS });\n case \"minute\":\n case \"hour\":\n return f({ ...DATE, ...HM });\n default:\n return f({ ...DATE, weekday: \"short\" });\n }\n }\n switch (unit) {\n case \"millisecond\":\n return `${ymd(p)} ${hm(p)}:${pad(p.seconds)}.${pad(p.ms, 3)}`;\n case \"second\":\n return `${ymd(p)} ${hm(p)}:${pad(p.seconds)}`;\n case \"minute\":\n case \"hour\":\n return `${ymd(p)} ${hm(p)}`;\n default:\n return ymd(p);\n }\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("../dom.cjs"),t=require("../color.cjs"),n=require("../locale.cjs"),r=require("../scale.cjs"),i=require("../renderers/detect.cjs"),a=require("../theme.cjs"),o=require("./drawings.cjs"),s=require("./format.cjs"),c=require("./geometry.cjs"),l=require("./indicators.cjs"),u=require("./labels.cjs"),d=require("./scale.cjs"),f=require("./store.cjs"),p=require("./studies.cjs");var m=28,h=60,g=60,_=48,v=`price`,y=`var(--success-color, #089981)`,b=`var(--danger-color, #f23645)`,x=`var(--warning-color, #f59e0b)`,S=`var(--primary-color, #2962ff)`,C={order:`limit`,position:`position`,takeProfit:`takeProfit`,stopLoss:`stopLoss`,alert:`alert`},w=(e,t,n)=>e<t?t:e>n?n:e,T=e=>{let n=t.parseColor(e);return n&&t.luminance(n)>.5?`#0b0e11`:`#fff`},E=Number.isFinite,ee=(ee,te={})=>{let ne=ee.ownerDocument,re=ne.defaultView,D={...te},ie=!1,ae=(t,n)=>e.styleElement(ne.createElement(t),n),O=ae(`div`,{position:`relative`,width:`100%`,height:`100%`,minHeight:`0`,overflow:`hidden`,outline:`none`,userSelect:`none`,touchAction:`pan-y`,fontFamily:`var(--font-family-sans, system-ui, sans-serif)`,color:`var(--text-color, #1f2937)`,cursor:`crosshair`});O.className=`minerva-trading-chart`,O.tabIndex=0,O.setAttribute(`role`,`figure`),O.setAttribute(`aria-roledescription`,`chart`);let oe=e=>ae(e,{position:`absolute`,left:`0`,top:`0`,pointerEvents:`none`}),se=oe(`canvas`),ce=oe(`canvas`);se.setAttribute(`aria-hidden`,`true`),ce.setAttribute(`aria-hidden`,`true`);let le=oe(`div`);le.style.right=`0`,le.style.bottom=`0`;let k=ae(`button`,{position:`absolute`,display:`none`,alignItems:`center`,justifyContent:`center`,width:`28px`,height:`28px`,padding:`0`,borderRadius:`50%`,border:`1px solid color-mix(in srgb, var(--border-color, #e5e7eb) 80%, transparent)`,background:`var(--surface-elevated-color, var(--surface-color, #fff))`,color:`var(--text-color, #1f2937)`,boxShadow:`0 4px 14px -4px rgba(15, 23, 42, 0.25)`,cursor:`pointer`});k.type=`button`,k.innerHTML=`<svg width="14" height="14" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 3l5 5-5 5M9 3l5 5-5 5"/></svg>`;let ue=ae(`div`,{position:`absolute`,width:`1px`,height:`1px`,overflow:`hidden`,clip:`rect(0 0 0 0)`,clipPath:`inset(50%)`,whiteSpace:`nowrap`});ue.setAttribute(`aria-live`,`polite`),O.append(se,ce,le,k,ue),ee.appendChild(O);let A=f.createStore(),de=f.createPyramid(),fe={time:A.time,open:new Float64Array,high:new Float64Array,low:new Float64Array,close:new Float64Array,volume:A.volume},pe=0,me=f.createPyramid(),j=[],he=new Map,ge=new Map,_e=[],ve=0,ye=0,be=2,xe=s.DAY,M=D.barSpacing??8,N=NaN,P=0,F=0,Se=h,Ce=0,we=0,I=[],Te=new Map,Ee=new Map,De=null,Oe=0,L=a.readTheme(O),ke=0,Ae=0,R=null,je=0,Me=0,Ne=[],Pe=``,Fe=-1,Ie=0,Le,Re=new Promise(e=>{Le=e}),z=null,B=null,V=null,ze=new Map,Be=null,H=null,U=null,Ve=null,W=D.drawings??[],He=null,Ue=D.drawingMode??`cursor`,We=null,Ge=null,G=null,Ke=0,qe=new Map,Je=null,Ye=null,Xe=``,Ze=NaN,Qe=null,$e=new Map,et=(e,t)=>{$e.get(e)?.forEach(e=>e(t))},K=n.resolveLocale(D.locale),tt=n.localeLabels(u.TRADING_LABELS,K,D.labels),nt=()=>{K=n.resolveLocale(D.locale),tt=n.localeLabels(u.TRADING_LABELS,K,D.labels)},rt=()=>tt,q=()=>A.length,it=()=>D.chartStyle??`candles`,at=()=>D.colorConvention===`redUp`,ot=()=>D.upColor??(at()?b:y),st=()=>D.downColor??(at()?y:b),ct=(e,t=L.primary)=>L.resolve?L.resolve(e,t):t,J=(e,n=1)=>t.toCss(ct(e),n),lt=()=>D.precision??be,ut=s.priceFormatter(2,void 0),dt=``,Y=e=>{if(D.formatPrice)return D.formatPrice(e);let t=`${lt()}|${K}`;return t!==dt&&(ut=s.priceFormatter(lt(),K),dt=t),ut(e)},ft=()=>(D.timeframe===void 0?null:l.parseTimeframe(D.timeframe))??{unit:`ms`,count:xe,ms:xe},pt=()=>ft().ms,X=(e,t=400)=>`${t} ${e}px ${L.fontFamily}`,mt=e=>ge.get(e.id)??e.config.visible??!0,Z=e=>P+(e-N)*M,ht=e=>N-(P-e)/M,gt=e=>{let t=q();if(!t)return 0;let n=Math.round(e);return n<0?A.time[0]+n*pt():n>=t?A.time[t-1]+(n-t+1)*pt():A.time[n]},_t=e=>{let t=q();if(!t)return 0;let n=A.time[t-1];return e>n?t-1+(e-n)/pt():e<A.time[0]?(e-A.time[0])/pt():f.indexOfTime(A.time,t,e)},vt=()=>it()===`heikinAshi`?fe:A,yt=e=>{for(let t of j)he.set(t,Math.min(he.get(t)??0,e));pe=Math.min(pe,e);for(let t of _e)t.valid=Math.min(t.valid,e);let t=t=>{for(let n of t.levels)n&&(n.valid=Math.min(n.valid,Math.floor(e/n.size)))};t(de),t(me)},bt=()=>{let e=q();for(let t of j){let n=he.get(t)??0;n<e&&(t.compute(A,n),he.set(t,e))}if(fe.time=A.time,fe.volume=A.volume,it()===`heikinAshi`&&pe<e){if(fe.open.length<A.capacity)for(let e of[`open`,`high`,`low`,`close`]){let t=new Float64Array(A.capacity);t.set(fe[e].subarray(0,pe)),fe[e]=t}l.heikinAshiInto(A.open,A.high,A.low,A.close,e,fe,pe),pe=e}for(let t of _e)if(!(t.valid>=e)){if(t.values.length<A.capacity){let e=new Float64Array(A.capacity).fill(NaN);e.set(t.values.subarray(0,t.valid)),t.values=e}for(let n=t.valid;n<e;n++){let e=f.lowerBoundTime(t.times,t.times.length,A.time[n]+.5)-1;t.values[n]=e>=0?t.data[e]:NaN}t.valid=e}},xt=e=>{yt(e);let t=q();e<t-1&&ve++,ye++,t&&(be=Math.max(e===0?0:be,s.detectPrecision(A.close,e,t),s.detectPrecision(A.open,Math.max(e,t-50),t)),(e===0||t<80)&&(xe=s.inferTimeframe(A.time,t))),$()},St=()=>{let{studies:e,reused:t}=p.buildStudies(D.indicators??[],j,D.utcOffset??-new Date().getTimezoneOffset());for(let e of j)t.has(e)||he.delete(e);for(let n of e)t.has(n)||he.set(n,0);j=e;for(let e of[...ge.keys()])j.some(t=>t.id===e)||ge.delete(e)},Ct=()=>{_e=(D.compare??[]).map((e,t)=>{let n=[...e.data].sort((e,t)=>e.time-t.time);return{id:e.id??e.name,name:e.name,color:e.color??p.LINE_COLORS[(t+2)%p.LINE_COLORS.length],times:Float64Array.from(n,e=>e.time),data:Float64Array.from(n,e=>e.value),values:new Float64Array,valid:0}})},wt=()=>{let e=q();if(!e||!E(N))return!0;let t=Z(e-1);return t>=0&&t<=P+M*.5},Tt=e=>{f.setBars(A,e),de=f.createPyramid(),me=f.createPyramid(),pe=0,Ze=NaN;for(let e of Te.values())e.auto=!0;N=q()-1+(D.rightOffset??8),H=null,U=null,xt(0)},Et=e=>{let t=q(),n=f.inputLength(e);if(t>=2&&n>=t){let r=f.barAt(e,0).time,i=A.time[t-1];if(r===A.time[0]&&f.barAt(e,t-2).time===A.time[t-2]){let r=wt(),i=t,a=t;for(let r=t-1;r<n;r++){let t=f.updateBar(A,f.barAt(e,r));t>=0&&(a=Math.min(a,t))}r&&(N+=q()-i),a<q()&&xt(a);return}if(f.barAt(e,n-1).time===i&&n>t){let r=n-t;f.setBars(A,e),de=f.createPyramid(),me=f.createPyramid(),pe=0,N+=r,xt(0);return}}Tt(e)},Dt=()=>{let e=j.filter(e=>!e.overlay),t=F,n=e.map(e=>Ee.get(e.id)??e.height),r=n.reduce((e,t)=>e+t,0),i=Math.max(0,t*.62),a=r>i&&r>0?i/r:1,o=n.map(e=>Math.max(_*Math.min(1,a*2),e*a)),s=Math.max(40,t-o.reduce((e,t)=>e+t,0)),c=[],l=(e,t)=>{let n=Te.get(e);return n||(n=d.createScale(t),Te.set(e,n)),n.mode!==t&&(n.mode=t,n.auto=!0),n},u=l(v,D.scaleMode??`linear`);u.top=0,u.height=s,u.marginTop=.1,u.marginBottom=.08,c.push({id:v,study:null,scale:u,top:0,height:s,ticks:[],step:0});let f=s;e.forEach((e,t)=>{let n=l(e.id,`linear`);n.top=f,n.height=o[t],n.marginTop=e.type===`volume`?.18:.14,n.marginBottom=e.type===`volume`?0:.1,e.range&&(n.marginTop=n.marginBottom=.06),c.push({id:e.id,study:e,scale:n,top:f,height:o[t],ticks:[],step:0}),f+=o[t]});for(let e of[...Te.keys()])c.some(t=>t.id===e)||Te.delete(e);I=c},Ot=e=>I.find(t=>e>=t.top&&e<t.top+t.height)??null,Q=()=>{let e=q(),t=Math.min(1,P*.8/Math.max(1,e));M=w(M,Math.max(1e-4,t),g);let n=P/M;E(N)||(N=e-1+(D.rightOffset??8));let r=Math.max(0,e-1)+Math.max(D.rightOffset??8,n*.75),i=Math.min(n*.25,r);N=w(N,i,r)},kt=()=>{let e=q();if(!e)return null;let t=N-P/M,n=M>=2?0:Math.ceil(Math.log2(2/M)),r=2**n,i=vt(),a=n?f.pyramidLevel(it()===`heikinAshi`?me:de,i,e,n):i,o=Math.floor((e-1)/r),s=w(Math.floor(t)-1,0,e-1),c=w(Math.ceil(N)+1,0,e-1),l=w(Math.ceil(t-.5),0,e-1),u=w(Math.floor(N+.5),0,e-1);return{left:t,level:n,size:r,cols:a,g0:Math.floor(s/r),g1:Math.floor(c/r),s0:Math.floor(l/r),s1:Math.floor(u/r),last:o}},At=(e,t)=>t*e.size+(e.size-1)/2,jt=(e,t,n)=>t[Math.min(q()-1,n*e.size+e.size-1)],Mt=(e,t)=>Math.min(e.size,q()-t*e.size),Nt=()=>w(Math.ceil(N-P/M-.5),0,Math.max(0,q()-1)),Pt=e=>{let t=q();for(let n=Nt();n<t;n++){let t=e.values[n];if(E(t)&&t!==0)return t}return NaN},Ft=(e,t,n)=>e.mode===`percent`?(t/n-1)*100:d.toScaled(e,t),It=()=>D.baselinePrice??vt().close[Nt()],Lt=e=>{Oe=0;for(let t of I){let n=t.scale;if(!e)continue;if(t.id===v){n.base=A.close[Nt()]||1;let{cols:t}=e,r=it(),i=r===`line`||r===`area`||r===`baseline`,a=1/0,o=-1/0;for(let n=e.s0;n<=e.s1;n++){let e=i?t.close[n]:t.low[n],r=i?t.close[n]:t.high[n];e<a&&(a=e),r>o&&(o=r)}for(let n of j)if(n.overlay&&mt(n)){if(n.type===`volume`){for(let n=e.s0;n<=e.s1;n++){let r=t.volume[n]/Mt(e,n);r>Oe&&(Oe=r)}continue}for(let t of n.outputs)for(let n=e.s0;n<=e.s1;n++){let r=jt(e,t.values,n);r<a&&(a=r),r>o&&(o=r)}}if(r===`baseline`){let e=It();e<a&&(a=e),e>o&&(o=e)}if(!n.auto)continue;let s=d.toScaled(n,a),c=d.toScaled(n,o);n.mode===`log`&&!(a>0)&&(s=d.toScaled(n,Math.max(o*.001,1e-12)));for(let t of _e){let r=Pt(t);for(let i=e.s0;i<=e.s1;i++){let a=Ft(n,jt(e,t.values,i),r);a<s&&(s=a),a>c&&(c=a)}}d.fitScale(n,s,c);continue}let r=t.study;if(!r||!n.auto)continue;if(r.range){d.fitScale(n,r.range[0],r.range[1]);continue}let i=1/0,a=-1/0;r.type===`volume`&&(i=0);for(let t of r.outputs)for(let n=e.s0;n<=e.s1;n++){let r=t.kind===`volume`?e.cols.volume[n]/Mt(e,n):jt(e,t.values,n);r<i&&(i=r),r>a&&(a=r)}r.type===`macd`&&E(i)&&E(a)&&(i=Math.min(i,0),a=Math.max(a,0)),d.fitScale(n,i,a)}},Rt=(e,t)=>{let n=q();if(!n||!e)return[];let r=pt(),i=r<s.DAY,a=D.utcOffset,o=Math.floor(Math.max(0,Math.ceil(N))/e.size),c=t=>t<=e.last?e.cols.time[t]:A.time[n-1]+(t*e.size-(n-1))*r,l=[],u=e.g0>0?s.shiftTime(c(e.g0-1),a):NaN;for(let t=e.g0;t<=o;t++){let n=s.shiftTime(c(t),a),r=Z(At(e,t)),i=s.boundaryWeight(u,n);r>=-20&&r<=P+20&&i>10&&l.push({x:r,weight:i,time:n}),u=n}t.font=X(L.fontSize);let d=i?`00:00`:`Sep 30`,f=Math.max(t.measureText(d).width,t.measureText(`2024`).width)+34;return s.pickTicks(l,f).filter(e=>e.x>8&&e.x<P-8).map(e=>({x:e.x,text:s.tickText(e.time,e.weight,K,i),bold:e.weight>=(i?50:60)}))},zt=(e,t)=>e.id===v?e.scale.mode===`percent`?s.formatPercent(t,K,Math.min(2,r.stepDecimals(e.step))):Y(d.fromScaled(e.scale,t)):e.study?.compact?s.formatVolume(t,K):s.formatFixed(t,Math.min(4,r.stepDecimals(e.step)),K),Bt=(e,t)=>e.overlay&&e.type!==`volume`?Y(t):e.compact?s.formatVolume(t,K):s.formatFixed(t,e.range?2:Math.max(2,Math.min(6,lt())),K),Vt=(e,n)=>{let r=[],i=e.cols,a=ct(ot()),o=ct(st()),s=t.packColor(a),l=t.packColor(o),u=L.background,f=c.candleMetrics(M*e.size*n,n),p=t=>Z(At(e,t))*n,m=it(),h=Math.max(.5,f.body/2),g={up:t.packColor([a[0],a[1],a[2],.5]),down:t.packColor([o[0],o[1],o[2],.5])};for(let _ of I){let y=_.top*n,b=(_.top+_.height)*n,x=_.scale,C=e=>d.yOf(x,e)*n,w=(t,n,r,i=C)=>(a,o,s)=>{let l=new c.LineBuffer(y,b);for(let n=s?Math.max(e.g0,a-1):a;n<=o;n++)l.push(p(n),i(t(n)));return l.count>1?[l.item(``,0,n,r)]:[]};if(_.id===v){if(j.find(e=>e.overlay&&e.type===`volume`&&mt(e))&&Oe>0){let t=(b-y)*.2;r.push((n,r)=>{let a=new c.BarBuffer;for(let o=n;o<=r;o++){let n=i.volume[o]/Mt(e,o);if(!(n>0))continue;let r=b-n/Oe*t,[s,l]=c.pixelRange(r,b);a.push(f.snap(p(o)),s,l,i.close[o]>=i.open[o]?g.up:g.down)}return[a.item(``,0,h)]})}for(let t of _e){let i=Pt(t),a=ct(t.color);r.push(w(n=>jt(e,t.values,n),a,1.5,e=>d.yOfScaled(x,Ft(x,e,i))*n))}if(m===`line`||m===`area`||m===`baseline`){let t=ct(S);if(m===`area`&&r.push((n,r,a)=>{let o=new c.AreaBuffer(y,b);for(let t=a?Math.max(e.g0,n-1):n;t<=r;t++)o.push(p(t),C(i.close[t]),b);return o.count>1?[o.item(``,0,t,.28)]:[]}),m===`baseline`){let t=C(It());r.push((n,r,s)=>{let l=new c.AreaBuffer(y,b),u=new c.AreaBuffer(y,b),d=new c.LineBuffer(y,b),f=new c.LineBuffer(y,b),m=NaN,h=NaN,g=(e,n)=>{l.push(e,Math.min(n,t),t),u.push(e,Math.max(n,t),t),n<=t?d.push(e,n):d.break(),n>=t?f.push(e,n):f.break()};for(let a=s?Math.max(e.g0,n-1):n;a<=r;a++){let e=p(a),n=C(i.close[a]);if(E(h)&&(h-t)*(n-t)<0){let r=(t-h)/(n-h);g(m+(e-m)*r,t)}g(e,n),m=e,h=n}let _=[];return l.count>1&&_.push(l.item(`u`,0,a,.22),u.item(`d`,0,o,.22)),d.count>1&&_.push(d.item(`ul`,0,a,2)),f.count>1&&_.push(f.item(`dl`,0,o,2)),_})}else r.push(w(e=>i.close[e],t,2))}else{let e=m===`hollowCandles`,t=m===`bars`,n=f.wick,a=f.body;r.push((r,o)=>{let u=new c.BarBuffer,d=new c.BarBuffer,m=new c.BarBuffer,h=new c.BarBuffer,g=Math.max(n,Math.round((a-n)/2));for(let _=r;_<=o;_++){let r=i.open[_],o=i.high[_],v=i.low[_],x=i.close[_];if(!E(r)||!E(x))continue;let S=(e?x>=(_>0?i.close[_-1]:r):x>=r)?s:l,w=f.snap(p(_)),[T,ee]=c.pixelRange(C(o),C(v));if(t){let e=c.clampRange(T,ee,y,b);e&&u.push(w,e[0],e[1],S);for(let[e,t]of[[r,-1],[x,1]]){let r=Math.round(C(e)-n/2);r<y||r+n>b||h.push(w+t*(n/2+g/2),r,r+n,S)}continue}let[te,ne]=c.pixelRange(C(r),C(x));if(a<=n){let e=c.clampRange(T,ee,y,b);e&&u.push(w,e[0],e[1],S);continue}if(e&&x>r){let e=[[T,te],[ne,ee]];for(let[t,n]of e){let e=n>t?c.clampRange(t,n,y,b):null;e&&u.push(w,e[0],e[1],S)}let t=c.clampRange(te,ne,y,b);t&&(u.push(w-a/2+n/2,t[0],t[1],S),u.push(w+a/2-n/2,t[0],t[1],S));for(let e of[te,ne-n])e>=y&&e+n<=b&&m.push(w,e,e+n,S);continue}let re=c.clampRange(T,ee,y,b);re&&u.push(w,re[0],re[1],S);let D=c.clampRange(te,ne,y,b);D&&d.push(w,D[0],D[1],S)}let _=[u.item(`w`,0,n/2)];return d.count&&_.push(d.item(`b`,0,a/2)),m.count&&_.push(m.item(`c`,0,a/2)),h.count&&_.push(h.item(`t`,0,g/2)),_})}}let T=_.id===v?j.filter(e=>e.overlay&&e.type!==`volume`):_.study?[_.study]:[];for(let n of T)if(mt(n))for(let d of n.outputs)if(d.kind===`volume`){let t=C(0);r.push((n,r)=>{let a=new c.BarBuffer;for(let o=n;o<=r;o++){let n=i.volume[o]/Mt(e,o);if(!(n>0))continue;let r=c.clampRange(...c.pixelRange(C(n),t),y,b);r&&a.push(f.snap(p(o)),r[0],r[1],i.close[o]>=i.open[o]?g.up:g.down)}return[a.item(``,0,h)]})}else if(d.kind===`histogram`){let n=C(0),i={up:s,down:l},m={up:t.packColor(t.mix(u,a,.45)),down:t.packColor(t.mix(u,o,.45))};r.push((t,r)=>{let a=new c.BarBuffer;for(let o=t;o<=r;o++){let t=jt(e,d.values,o);if(!E(t))continue;let r=o>0?jt(e,d.values,o-1):t,s=t>=0?t>=r?i.up:m.up:t<=r?i.down:m.down,l=c.clampRange(...c.pixelRange(C(t),n),y,b);l&&a.push(f.snap(p(o)),l[0],l[1],s)}return[a.item(``,0,h)]})}else r.push(w(t=>jt(e,d.values,t),ct(d.color),d.width))}return r},Ht=(e,t,n,r)=>{let i=Math.min(n.g1,n.last-1),a=r?n.last>=n.g0&&n.last<=n.g1?e(n.last,n.last,!0):[]:i>=n.g0?e(n.g0,i,!1):[],o=++Ie;return a.map((e,n)=>({...e,key:`L${t}:${n}:${e.kind}:${e.key}${r?`:live`:``}`,version:o}))},Ut=(t,n)=>{if(!R)return;let r=R.canvas;e.styleElement(r,{left:`0px`,top:`0px`,width:`${P}px`,height:`${F}px`});let i=Math.max(1,Math.round(P*n)),a=Math.max(1,Math.round(F*n));if((r.width!==i||r.height!==a)&&R.resize(i,a),t){let e=[i,a,n,M,N,t.level,it(),ve,ke,Ae,Oe,it()===`baseline`?It():0,...I.map(e=>`${e.id}:${e.top}:${e.height}:${e.scale.min}:${e.scale.max}:${e.scale.base}:${e.scale.mode}`),...j.map(e=>`${e.id}:${mt(e)}`)].join(`|`);e===Pe?Fe!==ye&&(Fe=ye,Ne.forEach((e,n)=>{e.live=Ht(e.fn,n,t,!0)})):(Pe=e,Fe=ye,Ne=Vt(t,n).map(e=>({fn:e,main:[],live:[]})),Ne.forEach((e,n)=>{e.main=Ht(e.fn,n,t,!1),e.live=Ht(e.fn,n,t,!0)}))}else Ne=[],Pe=``;let o=Ne.flatMap(e=>[...e.main,...e.live]);R.render(o,{transform:{xScale:2/i,xOffset:-1,yScale:-2/a,yOffset:1},width:i,height:a,dpr:n})},Wt=(e,t)=>{let n=Math.max(1,Math.round(Ce*t)),r=Math.max(1,Math.round(we*t));e.width!==n&&(e.width=n),e.height!==r&&(e.height=r),e.style.width=`${Ce}px`,e.style.height=`${we}px`},Gt=(e,t,n,r,i,a)=>{e.beginPath(),typeof e.roundRect==`function`?e.roundRect(t,n,r,i,a):e.rect(t,n,r,i)},Kt=(e,n,r)=>{let i=t.toCss(L.grid),a=D.grid!==!1;if(e.lineWidth=1,a){e.strokeStyle=i,e.beginPath();for(let t of r){let n=Math.round(t.x)+.5;e.moveTo(n,0),e.lineTo(n,F)}for(let t of I)for(let n of t.ticks){let r=Math.round(d.yOfScaled(t.scale,n))+.5;r<t.top+2||r>t.top+t.height-2||(e.moveTo(0,r),e.lineTo(P,r))}e.stroke()}if(D.watermark){let n=I[0];e.save(),e.font=X(Math.min(56,Math.max(22,P/14)),700),e.fillStyle=t.toCss(L.text,.07),e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(D.watermark,P/2,n.top+n.height/2),e.restore()}for(let n of I){let r=n.study;if(r?.bands&&mt(r)){let i=ct(r.outputs[0]?.color??S),a=r.bands.map(e=>Math.round(d.yOf(n.scale,e))+.5);r.type===`rsi`&&a.length===2&&(e.fillStyle=t.toCss(i,.07),e.fillRect(0,Math.min(a[0],a[1]),P,Math.abs(a[1]-a[0]))),e.save(),e.setLineDash([4,4]),e.strokeStyle=t.toCss(L.textMuted,.45),e.beginPath();for(let t of a)t<n.top||t>n.top+n.height||(e.moveTo(0,t),e.lineTo(P,t));e.stroke(),e.restore()}}if(n){let t=I[0];for(let r of j){if(r.type!==`boll`||!r.fill||!mt(r))continue;let[i,a]=r.fill,o=r.outputs[i].values,s=r.outputs[a].values;e.save(),e.beginPath(),e.rect(0,t.top,P,t.height),e.clip(),e.fillStyle=J(r.outputs[i].color,.07),e.beginPath();let c=!1,l=[],u=()=>{for(let t=l.length-1;t>=0;t--)e.lineTo(l[t][0],l[t][1]);c&&e.closePath(),l.length=0,c=!1};for(let r=n.g0;r<=n.g1;r++){let i=jt(n,o,r),a=jt(n,s,r);if(!E(i)||!E(a)){u();continue}let f=Z(At(n,r)),p=d.yOf(t.scale,i);c?e.lineTo(f,p):e.moveTo(f,p),c=!0,l.push([f,d.yOf(t.scale,a)])}u(),e.fill(),e.restore()}}e.strokeStyle=t.toCss(L.axis),e.beginPath();for(let t of I.slice(1)){let n=Math.round(t.top)+.5;e.moveTo(0,n),e.lineTo(Ce,n)}e.moveTo(Math.round(P)+.5,0),e.lineTo(Math.round(P)+.5,we),e.moveTo(0,Math.round(F)+.5),e.lineTo(Ce,Math.round(F)+.5),e.stroke()},qt=(e,t,n,r,i,a)=>{let o=a?32:18,s=w(Math.round(t-9),0,F-o);Gt(e,P+1,s,Se-2,o,3),e.fillStyle=r,e.fill(),e.fillStyle=i,e.textAlign=`left`,e.textBaseline=`middle`,e.font=X(L.fontSize,500),e.fillText(n,P+7,s+9.5),a&&(e.font=X(L.fontSize-1),e.fillText(a,P+7,s+24))},Jt=e=>I[0]?.scale.mode===`percent`?s.formatPercent(d.toScaled(I[0].scale,e),K):Y(e),Yt=e=>{if(e.color)return J(e.color);let t=e.kind??`line`;return J(t===`takeProfit`?ot():t===`stopLoss`?st():t===`alert`?x:t===`line`?S:e.side===`sell`?st():ot())},Xt=e=>qe.get(e.id)??e.price,Zt=()=>{if(!De||!I.length)return null;if(B!==null){let e=B,t=e>=0&&e<q()?vt().close[e]:NaN;return{index:e,pane:I[0],y:d.yOf(I[0].scale,t),price:t}}if(!z||z.x>P||z.y>F)return null;let e=Ot(z.y);if(!e)return null;let t=Math.round(ht(z.x)),n=z.y,r=d.valueAt(e.scale,n);if(e.id===v&&D.crosshair!==`free`&&t>=0&&t<q()&&Ue===`cursor`){let i=vt(),a=1/0;for(let o of[i.open[t],i.high[t],i.low[t],i.close[t]]){let t=d.yOf(e.scale,o);Math.abs(t-z.y)<a&&(a=Math.abs(t-z.y),n=t,r=o)}}return{index:t,pane:e,y:n,price:r}},Qt=()=>{let e=I[0];return e?{x:Z,y:t=>d.yOf(e.scale,t),index:_t,left:0,right:P,top:e.top,bottom:e.top+e.height}:null},$t=(e,t)=>{let n=rt(),r=Math.abs(t),i=[],a=Math.floor(r/s.DAY),o=Math.floor(r%s.DAY/s.HOUR),c=Math.floor(r%s.HOUR/s.MINUTE);return a&&i.push(u.fill(n.days,{count:a})),o&&i.push(u.fill(n.hours,{count:o})),c&&!a&&i.push(u.fill(n.minutes,{count:c})),`${u.fill(rt().bars,{count:e})}, ${i.join(` `)||u.fill(n.minutes,{count:0})}`},en=(e,n,r)=>{let i=I[0];if(!i)return;let a=q(),c=t.toCss(L.text),l=t.toCss(L.textMuted),u=t.toCss(L.background),f=J(ot()),p=J(st());if(e.save(),e.beginPath(),e.rect(0,i.top,P,i.height),e.clip(),n&&D.highLowMarkers!==!1&&it()!==`line`&&it()!==`area`&&it()!==`baseline`){let t=-1/0,r=1/0,a=-1,o=-1;for(let e=n.s0;e<=n.s1;e++)n.cols.high[e]>t&&(t=n.cols.high[e],a=e),n.cols.low[e]<r&&(r=n.cols.low[e],o=e);e.font=X(L.fontSize),e.fillStyle=l,e.strokeStyle=l,e.lineWidth=1;for(let[s,c,l]of[[a,t,!1],[o,r,!0]]){if(s<0||!E(c))continue;let t=Z(At(n,s)),r=d.yOf(i.scale,c)+(l?9:-9),a=t>P*.6,o=Y(c);e.textBaseline=`middle`,e.textAlign=a?`right`:`left`,e.beginPath(),e.moveTo(t,r),e.lineTo(t+(a?-14:14),r),e.stroke(),e.fillText(o,t+(a?-17:17),r)}}if(n&&D.markers?.length){let t=new Map;e.font=X(L.fontSize,600),e.textAlign=`center`;let r=D.markers.length>400;for(let o of D.markers){let s=_t(o.time);if(s<0||s>a-1)continue;let c=Math.floor(s/n.size);if(c<n.g0||c>n.g1)continue;let l=Math.round(Z(At(n,c))),m=o.side===`sell`,h=o.color?J(o.color):m?p:f,g=`${c}:${m}`,_=t.get(g)??0;t.set(g,_+(o.text&&!r?30:16));let v=d.yOf(i.scale,m?n.cols.high[c]:n.cols.low[c]),y=m?-1:1,b=v+y*(6+_);e.fillStyle=h,e.beginPath(),e.moveTo(l,b),e.lineTo(l-5.5,b+y*7),e.lineTo(l-2,b+y*7),e.lineTo(l-2,b+y*12),e.lineTo(l+2,b+y*12),e.lineTo(l+2,b+y*7),e.lineTo(l+5.5,b+y*7),e.closePath(),e.fill(),o.text&&!r&&(e.textBaseline=m?`bottom`:`top`,e.fillText(o.text,l,b+y*14)),o.price!==void 0&&E(o.price)&&(e.beginPath(),e.arc(l,d.yOf(i.scale,o.price),3,0,Math.PI*2),e.fill(),e.lineWidth=1.5,e.strokeStyle=u,e.stroke())}}let h=Qt();if(h){let t=e=>({color:J(e.color??S),text:c,background:u,up:f,down:p,font:X(L.fontSize,500),formatPrice:Y,formatPercent:e=>s.formatPercent(e,K),formatSpan:$t,textOn:T});for(let n of W)o.paintDrawing(e,n,h,t(n),{selected:n.id===We,hovered:n.id===Ge});G&&o.paintDrawing(e,G,h,t(G),{selected:!0,hovered:!1})}let g=a?A.close[a-1]:NaN;for(let t of D.priceLines??[]){let n=Xt(t),r=Math.round(d.yOf(i.scale,n))+.5;if(!E(r)||r<i.top||r>i.top+i.height)continue;let a=Yt(t),s=t.kind??`line`,c=t.lineStyle??(s===`position`||s===`line`?`solid`:`dashed`);e.save(),e.strokeStyle=a,e.lineWidth=Je===t.id||V?.kind===`order`&&V.line.id===t.id?1.5:1,o.setDash(e,c,1),e.beginPath(),e.moveTo(0,r),e.lineTo(P,r),e.stroke(),e.restore();let l=C[s],m=t.title??(l?rt()[l]:``),h=[];if(m&&h.push({text:m,fill:a,color:T(a)}),t.quantity!==void 0&&t.quantity!==``&&h.push({text:String(t.quantity),fill:u,color:a}),s===`position`&&typeof t.quantity==`number`&&E(g)){let e=(g-n)*t.quantity*(t.side===`sell`?-1:1),r=e>=0?f:p;h.push({text:`${e>=0?`+`:`−`}${Y(Math.abs(e))}`,fill:r,color:T(r)})}if(!h.length&&!t.draggable)continue;e.font=X(L.fontSize,600);let _=h.map(t=>e.measureText(t.text).width+12),v=t.draggable?14:0,y=_.reduce((e,t)=>e+t,0)+v,b=Math.round(P-y-56),x=Math.round(r-9.5);if(Gt(e,b-.5,x-.5,y+1,19,3),e.fillStyle=u,e.fill(),e.strokeStyle=a,e.lineWidth=1,e.setLineDash([]),e.stroke(),v){e.fillStyle=a;for(let t=0;t<3;t++)e.fillRect(b+4,x+5+t*3.5,6,1.5);b+=v}e.textBaseline=`middle`,e.textAlign=`center`,h.forEach((t,n)=>{t.fill!==u&&(e.fillStyle=t.fill,e.fillRect(b,x,_[n],18)),e.fillStyle=t.color,e.fillText(t.text,b+_[n]/2,x+9.5),b+=_[n]})}let _=D.lastPriceLine!==!1&&a>0,y=a>0&&A.close[a-1]>=A.open[a-1]?f:p;if(_){let t=Math.round(d.yOf(i.scale,g))+.5;e.save(),e.strokeStyle=y,e.setLineDash([1,2]),e.beginPath(),e.moveTo(0,t),e.lineTo(P,t),e.stroke(),e.restore()}e.restore();let b=[];for(let e of D.priceLines??[])b.push(d.yOf(i.scale,Xt(e)));for(let e of W)e.type===`horizontalLine`&&e.points[0]&&b.push(d.yOf(i.scale,e.points[0].price));_&&b.push(d.yOf(i.scale,g)+(D.countdown?7:0)),e.font=X(L.fontSize),e.textAlign=`left`,e.textBaseline=`middle`,e.fillStyle=l;for(let t of I)for(let n of t.ticks){let r=d.yOfScaled(t.scale,n);if(r<t.top+8||r>t.top+t.height-8)continue;let i=D.countdown?18:14;t.id===v&&b.some(e=>Math.abs(e-r)<i)||e.fillText(zt(t,n),P+8,r)}e.textAlign=`center`;for(let t of r)e.font=X(L.fontSize,t.bold?600:400),e.fillStyle=t.bold?c:l,e.fillText(t.text,t.x,F+m/2);for(let t of D.priceLines??[]){let n=Xt(t),r=d.yOf(i.scale,n);if(!E(r)||r<i.top||r>i.top+i.height)continue;let a=Yt(t);qt(e,r,Jt(n),a,T(a))}for(let t of W){if(t.type!==`horizontalLine`||!t.points[0])continue;let n=t.points[0].price,r=d.yOf(i.scale,n);if(r<i.top||r>i.top+i.height)continue;let a=J(t.color??S);qt(e,r,Jt(n),a,T(a))}if(_){let t;if(D.countdown){let e=ft(),n=A.time[a-1],r=n+e.ms;if(e.unit===`month`){let t=new Date(n);r=Date.UTC(t.getUTCFullYear(),t.getUTCMonth()+e.count,t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes())}t=s.formatCountdown(r-Date.now(),rt())}qt(e,d.yOf(i.scale,g),Jt(g),y,T(y),t)}let x=Zt();if(x&&n){let n=Math.round(Z(x.index))+.5;e.save(),e.strokeStyle=t.toCss(L.textMuted,.75),e.lineWidth=1,e.setLineDash([4,3]),e.beginPath(),n>=0&&n<=P&&(e.moveTo(n,0),e.lineTo(n,F));let r=Math.round(x.y)+.5;E(r)&&r>=x.pane.top&&r<=x.pane.top+x.pane.height&&(e.moveTo(0,r),e.lineTo(P,r)),e.stroke(),e.restore();let i=t.toCss(L.text);if(E(x.y)&&x.y>=x.pane.top&&x.y<=x.pane.top+x.pane.height){let t=d.scaledAt(x.pane.scale,x.y),n=x.pane.id===v?Jt(d.fromScaled(x.pane.scale,t)):zt(x.pane,t);qt(e,x.y,n,i,u)}if(n>=0&&n<=P&&a){let t=s.formatCrosshairTime(s.shiftTime(gt(x.index),D.utcOffset),pt(),K);e.font=X(L.fontSize,500);let r=e.measureText(t).width+16,a=w(n-r/2,0,Ce-r);Gt(e,a,F+3,r,21,3),e.fillStyle=i,e.fill(),e.fillStyle=u,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(t,a+r/2,F+14)}}},tn=``,nn=new Map,rn=new Map,an=e=>{let t=rn.get(e);return t||(t=ae(`div`,{position:`absolute`,left:`8px`,display:`flex`,flexDirection:`column`,alignItems:`flex-start`,gap:`1px`,maxWidth:`calc(100% - 16px)`,fontSize:`12px`,lineHeight:`18px`,fontVariantNumeric:`tabular-nums`,whiteSpace:`nowrap`,pointerEvents:`none`}),le.appendChild(t),rn.set(e,t)),t},on=(e,t,n,r)=>{let i=ae(`div`,{display:`flex`,alignItems:`center`,gap:`6px`,padding:`0 4px`,marginLeft:`-4px`,borderRadius:`4px`,background:`color-mix(in srgb, var(--surface-color, var(--background-color, #fff)) 86%, transparent)`}),a=null;if(n)a=ae(`button`,{all:`unset`,cursor:`pointer`,pointerEvents:`auto`,color:`var(--text-color, #1f2937)`,fontWeight:`500`,borderRadius:`3px`}),a.type=`button`,a.textContent=t,a.setAttribute(`aria-label`,u.fill(rt().toggleIndicator,{name:t})),a.addEventListener(`click`,e=>{e.stopPropagation();let t=!mt(n);ge.set(n.id,t),et(`indicatorToggle`,{id:n.id,visible:t}),un(),$()}),a.addEventListener(`pointerdown`,e=>e.stopPropagation()),i.appendChild(a);else if(t){let e=ae(`span`,{fontWeight:`600`});e.textContent=t,i.appendChild(e)}let o=[];for(let e=0;e<r;e++){let e=ae(`span`,{});i.appendChild(e),o.push(e)}return e.appendChild(i),{row:i,values:o,button:a}},sn=()=>{nn.clear();for(let e of rn.values())e.remove();if(rn.clear(),D.legend===!1)return;let e=an(v),t=[D.symbol,D.labels?.timeframe??(typeof D.timeframe==`string`?D.timeframe:``)].filter(Boolean).join(` · `);nn.set(`ohlc`,on(e,t,null,1));for(let t of j)t.overlay&&t.type===`volume`?nn.set(t.id,on(e,cn(t),t,1)):t.overlay&&nn.set(t.id,on(e,cn(t),t,t.outputs.length));for(let t of _e)nn.set(`compare:${t.id}`,on(e,``,null,1));for(let e of j)e.overlay||nn.set(e.id,on(an(e.id),cn(e),e,e.outputs.length))},cn=e=>e.type===`volume`?rt().volume:e.title,ln=(e,t,n)=>{if(!e)return;e.textContent!==t&&(e.textContent=t);let r=n??``;e.style.color!==r&&(e.style.color=r)},un=()=>{let e=[D.legend!==!1,D.symbol,D.timeframe,...j.map(e=>`${e.id}:${cn(e)}:${e.outputs.length}`),..._e.map(e=>e.id),tt.toggleIndicator,D.labels?.timeframe].join(`|`);if(e!==tn&&(tn=e,sn()),D.legend===!1)return;for(let e of I){let t=rn.get(e.id);t&&(t.style.top=`${e.top+6}px`)}let t=q(),n=Zt(),r=w(n&&n.index>=0&&n.index<t?n.index:t-1,0,Math.max(0,t-1)),i=rt(),a=nn.get(`ohlc`),o=J(ot()),c=J(st());if(a&&t){let e=vt(),t=e.open[r],n=e.close[r],l=r>0?e.close[r-1]:t,u=n-l,d=n>=t?o:c,f=a.values[0],p=[[i.open,e.open[r]],[i.high,e.high[r]],[i.low,e.low[r]],[i.close,n]].map(([e,t])=>`<span style="color:var(--text-secondary-color,#6b7280)">${dn(String(e))}</span><span style="color:${d}">${dn(Y(t))}</span>`).join(` `),m=l?u/l*100:NaN,h=`${p} ${`${i.change?`<span style="color:var(--text-secondary-color,#6b7280)">${dn(i.change)}</span>`:``}<span style="color:${u>=0?o:c}">${u>=0?`+`:`−`}${dn(Y(Math.abs(u)))} (${dn(s.formatPercent(m,K))})</span>`}${A.hasVolume?` <span style="color:var(--text-secondary-color,#6b7280)">${dn(i.volume)}</span>${dn(s.formatVolume(A.volume[r],K))}`:``}`;f&&f.dataset.html!==h&&(f.innerHTML=h,f.dataset.html=h,f.style.display=`inline-flex`,f.style.gap=`4px`,f.style.flexWrap=`wrap`)}for(let e of j){let n=nn.get(e.id);if(!n)continue;let i=mt(e);n.row.style.opacity=i?`1`:`0.5`,n.button&&(n.button.setAttribute(`aria-pressed`,String(i)),n.button.style.textDecoration=i?`none`:`line-through`);let a=e.outputs.length;e.outputs.forEach((l,u)=>{let d=n.values[e.type===`macd`?(u+a-1)%a:u];if(!i||!t){ln(d,``);return}if(l.kind===`volume`){let e=A.close[r]>=A.open[r]?o:c;ln(d,s.formatVolume(A.volume[r],K),e);return}let f=l.values[r],p=l.color?J(l.color):void 0;l.kind===`histogram`&&(p=f>=0?o:c);let m=e.outputs.length>1&&e.type!==`boll`?`${l.label} `:``;ln(d,`${m}${Bt(e,f)}`,p)})}for(let e of _e){let t=nn.get(`compare:${e.id}`);if(!t)continue;let n=e.values[r],i=Pt(e),a=E(i)?(n/i-1)*100:NaN;ln(t.values[0],`${e.name} ${Y(n)} ${s.formatPercent(a,K)}`,J(e.color))}},dn=e=>e.replace(/[&<>"]/g,e=>e===`&`?`&`:e===`<`?`<`:e===`>`?`>`:`"`),$=()=>{ie||Me||(Me=re?.requestAnimationFrame?re.requestAnimationFrame(mn):setTimeout(()=>mn(Date.now()),16))},fn=e=>{let t=!1;if(U){let n=Math.min(1,(e-U.start)/320),r=1-(1-n)**3;N=U.from+(U.to-U.from)*r,n>=1?U=null:t=!0}if(H){let n=Math.min(64,e-H.t);H.t=e;let r=N;N-=H.v*n/M,H.v*=Math.exp(-n/320),Q(),Math.abs(H.v)<.02||N===r?H=null:t=!0}return t},pn=e=>{e.font=X(L.fontSize,500);let t=0;for(let n of I)for(let r of n.ticks)t=Math.max(t,e.measureText(zt(n,r)).width);let n=q();n&&(t=Math.max(t,e.measureText(Jt(A.close[n-1])).width),D.countdown&&(t=Math.max(t,e.measureText(`00:00:00`).width)));let r=Math.max(h,Math.ceil(t+18));(r>Se||r<Se-12)&&(Se=r)};function mn(e){if(Me=0,ie||(Ce=O.clientWidth,we=O.clientHeight,Ce<=0||we<=0))return;let t=fn(typeof performance<`u`?performance.now():e??Date.now()),n=re?.devicePixelRatio||1;bt(),Wt(se,n),Wt(ce,n);let r=se.getContext(`2d`),i=ce.getContext(`2d`);F=Math.max(1,we-m);for(let e=0;e<2;e++){P=Math.max(1,Ce-Se),Dt(),Ve&&yn(Ve),Q(),De=kt(),Lt(De);for(let e of I){let t=d.scaleTicks(e.scale,e.id===v?44:30),n=e.study?.range,r=e.study?.bands;e.ticks=n&&r?[...r,(n[0]+n[1])/2].sort((e,t)=>e-t):t.scaled,e.step=t.step}let e=Se;if(i&&pn(i),Se===e)break}let a=De;Ve=null;let o=i?Rt(a,i):[];Ut(a,n),r&&(r.setTransform(n,0,0,n,0,0),r.clearRect(0,0,Ce,we),Kt(r,a,o)),i&&(i.setTransform(n,0,0,n,0,0),i.clearRect(0,0,Ce,we),en(i,a,o)),un(),hn(),_n(),t&&$()}let hn=()=>{let e=q(),t=I[0],n=e>0&&t&&Z(e-1)>P+M*.5;if(k.style.display=n?`flex`:`none`,n&&t){k.style.left=`${P-40}px`,k.style.top=`${t.top+t.height-40}px`;let e=rt().scrollToRealtime;k.getAttribute(`aria-label`)!==e&&(k.setAttribute(`aria-label`,e),k.title=e)}},gn=()=>{let e=N-P/M;return{from:e,to:N,fromTime:gt(e),toTime:gt(N)}},_n=()=>{let e=q();if(!e)return;let t=gn();(!Ye||Math.abs(Ye.from-t.from)>1e-6||Math.abs(Ye.to-t.to)>1e-6)&&(Ye=t,et(`visibleRangeChange`,t)),t.from<10&&Ze!==A.time[0]&&(Ze=A.time[0],et(`historyRequest`,{firstTime:A.time[0],count:e}));let n=Zt(),r=n?`${n.index}|${n.price}|${n.pane.id}`:``;if(r!==Xe){if(Xe=r,!n)et(`crosshairMove`,null);else{let t={index:n.index,time:gt(n.index),bar:n.index>=0&&n.index<e?f.readBar(A,n.index):null,price:n.price,pane:n.pane.id,x:Z(n.index),y:n.y};et(`crosshairMove`,t)}}},vn=e=>{let t=O.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},yn=e=>{M=P/(e.to-e.from),N=e.to,Q()},bn=(e,t)=>{let n=q();n&&wt()&&(e=Math.min(P,Z(n-1)));let r=ht(e);M*=t,Q(),N=r+(P-e)/M,Q(),H=null,U=null,$()},xn=(e,t)=>{let n=Math.round(ht(e));return{time:gt(n),price:d.valueAt(I[0].scale,t)}},Sn=(e,t)=>{e!==Ue&&(Ue=e,G=null,t&&et(`drawingToolChange`,e),$())},Cn=e=>{e!==We&&(We=e,et(`drawingSelect`,e),$())},wn=e=>{W=e,He=e,et(`drawingsChange`,e),$()},Tn=()=>{if(!G)return;let e=G;G=null,wn([...W,e]),Cn(e.id),D.keepDrawingMode||Sn(`cursor`,!0)},En=(e,t)=>{let n=I[0];if(!n||e>P)return null;for(let e of D.priceLines??[])if(e.draggable&&Math.abs(d.yOf(n.scale,Xt(e))-t)<=5)return e;return null},Dn=(e,t)=>{let n=Qt();if(!n||t<n.top||t>n.bottom||e>P)return null;for(let r=W.length-1;r>=0;r--){let i=o.hitDrawing(W[r],n,{x:e,y:t});if(i)return{drawing:W[r],hit:i}}return null},On=e=>{for(let t=1;t<I.length;t++)if(Math.abs(I[t].top-e)<=4)return t;return-1},kn=(e,t)=>{let n=`crosshair`;Je=null;let r=null;if(V?.kind===`pan`&&V.moved)n=`grabbing`;else if(On(t)>0)n=`row-resize`;else if(e>P&&t<F)n=`ns-resize`;else if(t>F)n=`ew-resize`;else if(Ue===`cursor`){let i=En(e,t);if(i)n=`ns-resize`,Je=i.id;else{let i=Dn(e,t);i&&(r=i.drawing.id,n=i.drawing.locked?`pointer`:i.hit.part===`handle`?`move`:`pointer`)}}r!==Ge&&(Ge=r),O.style.cursor!==n&&(O.style.cursor=n)},An=e=>{if(e.button!==0&&e.pointerType===`mouse`)return;let{x:t,y:n}=vn(e);if(z={x:t,y:n},B=null,H=null,U=null,e.pointerType===`touch`&&(ze.set(e.pointerId,{x:t,y:n}),ze.size===2)){let[e,t]=[...ze.values()];Be={distance:Math.hypot(e.x-t.x,e.y-t.y),spacing:M},V=null;return}try{O.setPointerCapture(e.pointerId)}catch{}let r=On(n);if(r>0){let e=I[r-1],t=I[r];V={kind:`separator`,index:r,y:n,above:e.height,below:t.height};return}if(t>P&&n<F){let e=Ot(n);e&&(V={kind:`axisY`,pane:e,y:n,min:e.scale.min,max:e.scale.max});return}if(n>F){V={kind:`axisX`,x:t,spacing:M};return}let i=Ot(n);if(Ue!==`cursor`&&i?.id===v&&q()){let e=xn(t,n);if(G){G={...G,points:[G.points[0],e]},Tn(),V=null;return}let r=Ue;if(G={id:`drawing-${Date.now().toString(36)}-${++Ke}`,type:r,points:o.anchorCount(r)===1?[e]:[e,e]},o.anchorCount(r)===1){Tn();return}V={kind:`create`,x:t,y:n,moved:!1},$();return}if(Ue===`cursor`){let e=En(t,n);if(e){V={kind:`order`,line:e,startPrice:e.price};return}let r=Dn(t,n);if(r){Cn(r.drawing.id),r.drawing.locked||(V={kind:`drawing`,id:r.drawing.id,handle:r.hit.part===`handle`?r.hit.index:-1,x:t,y:n,original:r.drawing,moved:!1});return}}V={kind:`pan`,x:t,y:n,right:N,pane:i,moved:!1,lastX:t,lastY:n,lastT:e.timeStamp,velocity:0}},jn=e=>{let{x:t,y:n}=vn(e);if(z={x:t,y:n},e.pointerType===`touch`&&ze.has(e.pointerId)&&(ze.set(e.pointerId,{x:t,y:n}),Be&&ze.size===2)){let[e,t]=[...ze.values()],n=Math.hypot(e.x-t.x,e.y-t.y),r=q(),i=r&&wt()?Math.min(P,Z(r-1)):(e.x+t.x)/2,a=ht(i);M=Be.spacing*n/Math.max(1,Be.distance),Q(),N=a+(P-i)/M,Q(),$();return}let r=V;if(!r){kn(t,n),$();return}switch(r.kind){case`pan`:{let i=t-r.x;if(!r.moved&&Math.hypot(i,n-r.y)<3)break;r.moved=!0,N=r.right-i/M,r.pane&&!r.pane.scale.auto&&d.panScale(r.pane.scale,n-r.lastY),r.lastY=n;let a=Math.max(1,e.timeStamp-r.lastT);r.velocity=.6*((t-r.lastX)/a)+.4*r.velocity,r.lastX=t,r.lastT=e.timeStamp,Q(),O.style.cursor=`grabbing`;break}case`axisY`:{let e=r.pane.scale;e.min=r.min,e.max=r.max,d.zoomScale(e,Math.exp((n-r.y)*.006));break}case`axisX`:{let e=N;M=r.spacing*Math.exp((t-r.x)*.006),Q(),N=e,Q();break}case`separator`:{let e=n-r.y,t=I[r.index-1],i=I[r.index];if(!t||!i)break;let a=r.above+r.below,o=w(r.below-e,_,a-_);Ee.set(i.id,o),t.id!==v&&Ee.set(t.id,a-o);break}case`order`:{let e=d.valueAt(I[0].scale,n),t=10**-lt();qe.set(r.line.id,Math.round(e/t)*t);break}case`drawing`:{if(!r.moved&&Math.hypot(t-r.x,n-r.y)<3)break;r.moved=!0;let e=I[0].scale,i=Math.round(ht(t)-ht(r.x)),a=d.scaledAt(e,n)-d.scaledAt(e,r.y),o=r.original.points.map((o,s)=>r.handle>=0&&s!==r.handle?o:r.handle>=0?xn(t,n):{time:gt(Math.round(_t(o.time))+i),price:d.fromScaled(e,d.toScaled(e,o.price)+a)});W=W.map(e=>e.id===r.id?{...e,points:o}:e);break}case`create`:G&&(Math.hypot(t-r.x,n-r.y)>=4&&(r.moved=!0),G={...G,points:[G.points[0],xn(t,n)]})}$()},Mn=e=>{ze.delete(e.pointerId),ze.size<2&&(Be=null);let t=V;V=null;let{x:n,y:r}=vn(e);if(e.pointerType===`touch`&&(z=null),!t){$();return}switch(t.kind){case`pan`:if(t.moved)D.kineticScroll!==!1&&e.timeStamp-t.lastT<60&&Math.abs(t.velocity)>.25&&(H={v:t.velocity,t:typeof performance<`u`?performance.now():Date.now()});else{We&&Cn(null);let e=Ot(r);e&&n<=P&&et(`click`,{index:Math.round(ht(n)),time:gt(Math.round(ht(n))),price:d.valueAt(e.scale,r),pane:e.id})}break;case`order`:{let e=qe.get(t.line.id);e!==void 0&&e!==t.startPrice?et(`orderMove`,{id:t.line.id,price:e,previousPrice:t.startPrice,line:t.line}):qe.delete(t.line.id);break}case`drawing`:t.moved&&wn(W);break;case`create`:t.moved&&Tn()}kn(n,r),$()},Nn=e=>{V||e.pointerType===`touch`||(z=null,Ge=null,Je=null,$())},Pn=e=>{let t=D.wheel??`zoom`;if(t===`none`)return;let{x:n}=vn(e),r=e.deltaMode===1?16:e.deltaMode===2?P:1,i=e.deltaX*r,a=e.deltaY*r,o=e.ctrlKey||e.metaKey;if(t===`modifier`&&!o&&Math.abs(i)<=Math.abs(a))return;if(e.preventDefault(),B=null,Math.abs(i)>Math.abs(a)||e.shiftKey){N+=(Math.abs(i)>Math.abs(a)?i:a)/M,Q(),H=null,$();return}let s=Math.exp(-a*(e.ctrlKey?.01:.0015));bn(Math.min(n,P),s)},Fn=e=>{let{x:t,y:n}=vn(e);if(t>P&&n<F){let e=Ot(n);e&&(e.scale.auto=!0)}else if(n>F)M=D.barSpacing??8,Wn.scrollToRealtime(!0);else for(let e of Te.values())e.auto=!0;$()},In=e=>{if(e<0||e>=q())return;let t=vt(),n=rt();ue.textContent=u.fill(n.announcement,{time:s.formatCrosshairTime(s.shiftTime(A.time[e],D.utcOffset),pt(),K),open:Y(t.open[e]),high:Y(t.high[e]),low:Y(t.low[e]),close:Y(t.close[e])})};O.addEventListener(`pointerdown`,An),O.addEventListener(`pointermove`,jn),O.addEventListener(`pointerup`,Mn),O.addEventListener(`pointercancel`,Mn),O.addEventListener(`pointerleave`,Nn),O.addEventListener(`wheel`,Pn,{passive:!1}),O.addEventListener(`dblclick`,Fn),O.addEventListener(`keydown`,e=>{let t=q(),n=Math.max(1,Math.floor(P/M/2)),r=e=>{B=w(e,0,Math.max(0,t-1));let n=Z(B);n<M&&(N+=(M-n)/M+1),n>P-M&&(N-=(n-P+M)/M-1),Q(),In(B)},i=B??Math.min(t-1,Math.round(N));switch(e.key){case`ArrowLeft`:r(i-(e.shiftKey?10:1));break;case`ArrowRight`:r(i+(e.shiftKey?10:1));break;case`PageUp`:r(i-n);break;case`PageDown`:r(i+n);break;case`Home`:r(0);break;case`End`:r(t-1),Wn.scrollToRealtime(!0);break;case`+`:case`=`:case`ArrowUp`:bn(B===null?P:Z(B),1.2);break;case`-`:case`_`:case`ArrowDown`:bn(B===null?P:Z(B),1/1.2);break;case`Escape`:G?G=null:Ue===`cursor`?We?Cn(null):B=null:Sn(`cursor`,!0);break;case`Delete`:case`Backspace`:{let e=W.find(e=>e.id===We);if(!e||e.locked)return;Cn(null),wn(W.filter(t=>t.id!==e.id));break}default:return}e.preventDefault(),$()}),O.addEventListener(`focus`,()=>{let e=!0;try{e=O.matches(`:focus-visible`)}catch{}e&&(O.style.boxShadow=`inset 0 0 0 2px ${t.toCss(L.primary,.6)}`)}),O.addEventListener(`blur`,()=>{O.style.boxShadow=``,B!==null&&(B=null,$())}),k.addEventListener(`pointerdown`,e=>e.stopPropagation()),k.addEventListener(`click`,()=>Wn.scrollToRealtime(!0));let Ln=typeof ResizeObserver==`function`?new ResizeObserver(()=>$()):null;Ln?.observe(O);let Rn=()=>{if(ie)return;let e=a.readTheme(O);a.themeColorsChanged(L,e)&&ke++,L=e,tn=``,$()},zn=a.watchTheme(Rn),Bn=null;typeof MutationObserver==`function`&&O.ownerDocument&&(Bn=new MutationObserver(()=>{if(D.locale)return;let e=K;nt(),K!==e&&(tn=``,Ae++,Hn(),$())}),Bn.observe(O.ownerDocument.documentElement,{attributes:!0,attributeFilter:[`lang`]}));let Vn=async(t=new Set)=>{let n=++je,r=await i.createRenderer(D.renderer??`auto`,()=>e.createDataCanvas(ne),e=>{ie||R?.kind!==e||(R.destroy(),R.canvas.remove(),R=null,Vn(new Set([...t,e])))},t);if(ie||n!==je){r?.destroy();return}R&&(R.destroy(),R.canvas.remove()),R=r,Pe=``,r&&(O.dataset.renderer=r.kind,O.insertBefore(r.canvas,ce),et(`renderer`,r.kind)),Le(r?.kind??null),$()},Hn=()=>{let e=D.symbol??``;O.setAttribute(`aria-label`,D.ariaLabel??u.fill(rt().chart,{symbol:e}).trim());let t=!!D.countdown&&D.lastPriceLine!==!1;t&&!Qe&&(Qe=setInterval($,1e3)),!t&&Qe&&(clearInterval(Qe),Qe=null)},Un=e=>{let t=D;if(nt(),(!e||t.indicators!==e.indicators||t.utcOffset!==e.utcOffset)&&St(),(!e||t.compare!==e.compare)&&Ct(),t.bars&&(!e||t.bars!==e.bars)?e?Et(t.bars):Tt(t.bars):!t.bars&&e?.bars&&Tt([]),e&&t.barSpacing!==e.barSpacing&&t.barSpacing&&(M=t.barSpacing),e&&t.scaleMode!==e.scaleMode){let e=Te.get(v);e&&(e.auto=!0)}t.drawings&&t.drawings!==He&&(!e||t.drawings!==e.drawings)&&(W=t.drawings,We&&!W.some(e=>e.id===We)&&Cn(null)),e&&(t.drawingMode??`cursor`)!==(e.drawingMode??`cursor`)&&Sn(t.drawingMode??`cursor`,!1),e&&t.priceLines!==e.priceLines&&qe.clear(),e&&t.chartStyle!==e.chartStyle&&(pe=Math.min(pe,0)),Ae++,Hn(),$()};Un(null),Vn();let Wn={setOptions(e){if(ie)return;let t=D;D={...e},Un(t),(e.renderer??`auto`)!==(t.renderer??`auto`)&&Vn()},setBars(e){Tt(e)},update(e){let t=q(),n=wt(),r=f.updateBar(A,e);r<0||(q()>t&&n&&(N+=q()-t),xt(r))},appendBars(e){let t=q(),n=wt(),r=f.appendBars(A,e);r<0||(n&&(N+=q()-t),xt(r))},prependBars(e){let t=f.prependBars(A,e);t&&(de=f.createPyramid(),me=f.createPyramid(),pe=0,N+=t,B!==null&&(B+=t),xt(0))},getBarCount:()=>q(),getBar:e=>e>=0&&e<q()?f.readBar(A,Math.floor(e)):null,scrollToRealtime(e=!0){let t=q()-1+(D.rightOffset??8);H=null,e&&E(N)&&Math.abs(t-N)*M<P*6?U={from:N,to:t,start:typeof performance<`u`?performance.now():Date.now()}:N=t,$()},fitContent(){let e=q();e&&Wn.setVisibleRange({from:-.5,to:e-1+(D.rightOffset??8)})},getVisibleRange:()=>gn(),setVisibleRange({from:e,to:t}){t>e&&(H=null,U=null,Ve={from:e,to:t},yn(Ve),$())},setScaleMode(e){D={...D,scaleMode:e};let t=Te.get(v);t&&(t.auto=!0),$()},resetPriceScales(){for(let e of Te.values())e.auto=!0;$()},setDrawingTool:e=>Sn(e,!0),getDrawingTool:()=>Ue,getDrawings:()=>W,setDrawings(e){W=e,We&&!W.some(e=>e.id===We)&&Cn(null),$()},removeDrawing(e){W.some(t=>t.id===e)&&(We===e&&Cn(null),wn(W.filter(t=>t.id!==e)))},selectDrawing:e=>Cn(e),setIndicatorVisible(e,t){ge.set(e,t),$()},getRenderer:()=>R?.kind??null,ready:Re,refreshTheme:Rn,resize:()=>$(),on(e,t){let n=$e.get(e);return n||$e.set(e,n=new Set),n.add(t),()=>n.delete(t)},destroy(){ie||(ie=!0,Me&&(re?.cancelAnimationFrame?re.cancelAnimationFrame(Me):clearTimeout(Me)),Qe&&clearInterval(Qe),Ln?.disconnect(),zn(),Bn?.disconnect(),O.removeEventListener(`wheel`,Pn),R?.destroy(),R=null,Le(null),$e.clear(),O.remove())}};return Wn};exports.createTradingChart=ee;
|
|
2
|
+
//# sourceMappingURL=chart.cjs.map
|