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
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
//#region src/engine/trading/indicators.ts
|
|
2
|
+
var e = Number.isFinite, t = (e) => new Float64Array(e).fill(NaN), n = (e) => Math.max(1, Math.floor(e) || 1), r = (t, r, i, a, o = 0) => {
|
|
3
|
+
let s = n(i), c = 0, l = 0;
|
|
4
|
+
for (let n = Math.max(0, o - s); n < o; n++) {
|
|
5
|
+
let r = t[n];
|
|
6
|
+
e(r) && (c += r, l++);
|
|
7
|
+
}
|
|
8
|
+
for (let n = o; n < r; n++) {
|
|
9
|
+
let r = t[n];
|
|
10
|
+
if (e(r) && (c += r, l++), n >= s) {
|
|
11
|
+
let r = t[n - s];
|
|
12
|
+
e(r) && (c -= r, l--);
|
|
13
|
+
}
|
|
14
|
+
a[n] = l === s ? c / s : NaN;
|
|
15
|
+
}
|
|
16
|
+
}, i = (t, n, r) => {
|
|
17
|
+
if (n < r - 1) return NaN;
|
|
18
|
+
let i = 0;
|
|
19
|
+
for (let a = n - r + 1; a <= n; a++) {
|
|
20
|
+
let n = t[a];
|
|
21
|
+
if (!e(n)) return NaN;
|
|
22
|
+
i += n;
|
|
23
|
+
}
|
|
24
|
+
return i / r;
|
|
25
|
+
}, a = (t, n, r, a, o, s) => {
|
|
26
|
+
for (let c = s; c < n; c++) {
|
|
27
|
+
let n = t[c], s = c > 0 ? o[c - 1] : NaN;
|
|
28
|
+
e(n) ? e(s) ? o[c] = s + a * (n - s) : o[c] = i(t, c, r) : o[c] = NaN;
|
|
29
|
+
}
|
|
30
|
+
}, o = (e, t, r, i, o = 0) => {
|
|
31
|
+
let s = n(r);
|
|
32
|
+
a(e, t, s, 2 / (s + 1), i, o);
|
|
33
|
+
}, s = (e, t, r, i, o = 0) => {
|
|
34
|
+
let s = n(r);
|
|
35
|
+
a(e, t, s, 1 / s, i, o);
|
|
36
|
+
}, c = (t, r, a, o, s = 0) => {
|
|
37
|
+
let c = n(a), l = c * (c + 1) / 2, u = (n) => {
|
|
38
|
+
if (n < c - 1) return NaN;
|
|
39
|
+
let r = 0;
|
|
40
|
+
for (let i = 0; i < c; i++) {
|
|
41
|
+
let a = t[n - i];
|
|
42
|
+
if (!e(a)) return NaN;
|
|
43
|
+
r += (c - i) * a;
|
|
44
|
+
}
|
|
45
|
+
return r;
|
|
46
|
+
}, d = s > 0 ? u(s - 1) : NaN, f = s > 0 ? i(t, s - 1, c) * c : NaN;
|
|
47
|
+
for (let n = s; n < r; n++) {
|
|
48
|
+
let r = t[n];
|
|
49
|
+
e(d) && e(f) && e(r) ? (d = d - f + c * r, f = f + r - (n >= c ? t[n - c] : 0)) : (d = u(n), f = i(t, n, c) * c), o[n] = e(d) ? d / l : NaN;
|
|
50
|
+
}
|
|
51
|
+
}, l = (t, r, a, o, s = 0) => {
|
|
52
|
+
let c = n(a);
|
|
53
|
+
for (let n = s; n < r; n++) {
|
|
54
|
+
let r = i(t, n, c);
|
|
55
|
+
if (!e(r)) {
|
|
56
|
+
o[n] = NaN;
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
let a = 0;
|
|
60
|
+
for (let e = n - c + 1; e <= n; e++) {
|
|
61
|
+
let n = t[e] - r;
|
|
62
|
+
a += n * n;
|
|
63
|
+
}
|
|
64
|
+
o[n] = Math.sqrt(a / c);
|
|
65
|
+
}
|
|
66
|
+
}, u = (t, r, i, a, o, s, c = 0) => {
|
|
67
|
+
let l = n(i);
|
|
68
|
+
for (let n = c; n < r; n++) {
|
|
69
|
+
if (o[n] = s[n] = NaN, a[n] = NaN, n === 0) continue;
|
|
70
|
+
let r = t[n] - t[n - 1];
|
|
71
|
+
if (e(r)) {
|
|
72
|
+
if (e(o[n - 1]) && e(s[n - 1])) o[n] = (o[n - 1] * (l - 1) + Math.max(r, 0)) / l, s[n] = (s[n - 1] * (l - 1) + Math.max(-r, 0)) / l;
|
|
73
|
+
else if (n >= l) {
|
|
74
|
+
let r = 0, i = 0, a = !0;
|
|
75
|
+
for (let o = n - l + 1; o <= n; o++) {
|
|
76
|
+
let n = t[o] - t[o - 1];
|
|
77
|
+
if (!e(n)) {
|
|
78
|
+
a = !1;
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
n > 0 ? r += n : i -= n;
|
|
82
|
+
}
|
|
83
|
+
if (!a) continue;
|
|
84
|
+
o[n] = r / l, s[n] = i / l;
|
|
85
|
+
} else continue;
|
|
86
|
+
a[n] = s[n] === 0 ? o[n] === 0 ? 50 : 100 : 100 - 100 / (1 + o[n] / s[n]);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}, d = (t, n, r, i, a, o = 0) => {
|
|
90
|
+
for (let s = o; s < i; s++) {
|
|
91
|
+
let i = t[s] - n[s];
|
|
92
|
+
if (s === 0 || !e(r[s - 1])) {
|
|
93
|
+
a[s] = i;
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
let o = r[s - 1];
|
|
97
|
+
a[s] = Math.max(i, Math.abs(t[s] - o), Math.abs(n[s] - o));
|
|
98
|
+
}
|
|
99
|
+
}, f = (t, r, i, a, o, s, c, l, u, d, f = 0) => {
|
|
100
|
+
let p = n(o), m = n(s), h = n(c);
|
|
101
|
+
for (let n = f; n < a; n++) {
|
|
102
|
+
if (l[n] = u[n] = d[n] = NaN, n < p - 1) continue;
|
|
103
|
+
let a = -Infinity, o = Infinity;
|
|
104
|
+
for (let e = n - p + 1; e <= n; e++) t[e] > a && (a = t[e]), r[e] < o && (o = r[e]);
|
|
105
|
+
let s = i[n];
|
|
106
|
+
if (!e(a) || !e(o) || !e(s)) continue;
|
|
107
|
+
let c = a === o ? 50 : (s - o) / (a - o) * 100, f = n > 0 && e(l[n - 1]) ? l[n - 1] : 50, g = n > 0 && e(u[n - 1]) ? u[n - 1] : 50;
|
|
108
|
+
l[n] = ((m - 1) * f + c) / m, u[n] = ((h - 1) * g + l[n]) / h, d[n] = 3 * l[n] - 2 * u[n];
|
|
109
|
+
}
|
|
110
|
+
}, p = 864e5, m = (e, t, n = 0) => {
|
|
111
|
+
if (t === "none") return 0;
|
|
112
|
+
let r = e + n * 6e4, i = Math.floor(r / p);
|
|
113
|
+
if (t === "day") return i;
|
|
114
|
+
if (t === "week") return Math.floor((i + 3) / 7);
|
|
115
|
+
let a = new Date(r);
|
|
116
|
+
return a.getUTCFullYear() * 12 + a.getUTCMonth();
|
|
117
|
+
}, h = (t, n, r, i, a, o, s, c, l, u, d, f = 0) => {
|
|
118
|
+
for (let p = f; p < o; p++) {
|
|
119
|
+
let o = (t[p] + n[p] + r[p]) / 3, f = e(i[p]) ? i[p] : 0, h = p > 0 && (!a || m(a[p], s, c) === m(a[p - 1], s, c)), g = h && e(u[p - 1]) ? u[p - 1] : 0, _ = h && e(d[p - 1]) ? d[p - 1] : 0;
|
|
120
|
+
u[p] = g + (e(o) ? o * f : 0), d[p] = _ + f, l[p] = d[p] > 0 ? u[p] / d[p] : e(o) ? o : NaN;
|
|
121
|
+
}
|
|
122
|
+
}, g = (t, n, r, i, a, o, s = 0) => {
|
|
123
|
+
for (let c = s; c < a; c++) {
|
|
124
|
+
let a = (t[c] + n[c] + r[c] + i[c]) / 4, s = c > 0 ? o.open[c - 1] : NaN, l = c > 0 ? o.close[c - 1] : NaN, u = e(s) && e(l) ? (s + l) / 2 : (t[c] + i[c]) / 2;
|
|
125
|
+
o.open[c] = u, o.close[c] = a, o.high[c] = Math.max(n[c], u, a), o.low[c] = Math.min(r[c], u, a);
|
|
126
|
+
}
|
|
127
|
+
}, _ = (e, n) => {
|
|
128
|
+
let i = t(e.length);
|
|
129
|
+
return r(e, e.length, n, i), i;
|
|
130
|
+
}, v = (e, n) => {
|
|
131
|
+
let r = t(e.length);
|
|
132
|
+
return o(e, e.length, n, r), r;
|
|
133
|
+
}, y = (e, n) => {
|
|
134
|
+
let r = t(e.length);
|
|
135
|
+
return c(e, e.length, n, r), r;
|
|
136
|
+
}, b = (e, n = 20, i = 2) => {
|
|
137
|
+
let a = e.length, o = t(a), s = t(a), c = t(a), u = t(a);
|
|
138
|
+
r(e, a, n, o), l(e, a, n, u);
|
|
139
|
+
for (let e = 0; e < a; e++) s[e] = o[e] + i * u[e], c[e] = o[e] - i * u[e];
|
|
140
|
+
return {
|
|
141
|
+
middle: o,
|
|
142
|
+
upper: s,
|
|
143
|
+
lower: c
|
|
144
|
+
};
|
|
145
|
+
}, x = (e, n = 12, r = 26, i = 9) => {
|
|
146
|
+
let a = e.length, s = t(a), c = t(a);
|
|
147
|
+
o(e, a, n, s), o(e, a, r, c);
|
|
148
|
+
let l = t(a);
|
|
149
|
+
for (let e = 0; e < a; e++) l[e] = s[e] - c[e];
|
|
150
|
+
let u = t(a);
|
|
151
|
+
o(l, a, i, u);
|
|
152
|
+
let d = t(a);
|
|
153
|
+
for (let e = 0; e < a; e++) d[e] = l[e] - u[e];
|
|
154
|
+
return {
|
|
155
|
+
macd: l,
|
|
156
|
+
signal: u,
|
|
157
|
+
histogram: d
|
|
158
|
+
};
|
|
159
|
+
}, S = (e, n = 14) => {
|
|
160
|
+
let r = e.length, i = t(r);
|
|
161
|
+
return u(e, r, n, i, t(r), t(r)), i;
|
|
162
|
+
}, C = (e, n, r, i = 9, a = 3, o = 3) => {
|
|
163
|
+
let s = r.length, c = t(s), l = t(s), u = t(s);
|
|
164
|
+
return f(e, n, r, s, i, a, o, c, l, u), {
|
|
165
|
+
k: c,
|
|
166
|
+
d: l,
|
|
167
|
+
j: u
|
|
168
|
+
};
|
|
169
|
+
}, w = (e, n, r, i = 14) => {
|
|
170
|
+
let a = r.length, o = t(a);
|
|
171
|
+
d(e, n, r, a, o);
|
|
172
|
+
let c = t(a);
|
|
173
|
+
return s(o, a, i, c), c;
|
|
174
|
+
}, T = (e, n, r, i, a = {}) => {
|
|
175
|
+
let o = r.length, s = t(o);
|
|
176
|
+
return h(e, n, r, i, a.time ?? null, o, a.reset ?? "day", a.utcOffset ?? 0, s, t(o), t(o)), s;
|
|
177
|
+
}, E = (e) => {
|
|
178
|
+
let n = e.close.length, r = {
|
|
179
|
+
open: t(n),
|
|
180
|
+
high: t(n),
|
|
181
|
+
low: t(n),
|
|
182
|
+
close: t(n)
|
|
183
|
+
};
|
|
184
|
+
return g(e.open, e.high, e.low, e.close, n, r), r;
|
|
185
|
+
}, D = {
|
|
186
|
+
s: 1e3,
|
|
187
|
+
m: 6e4,
|
|
188
|
+
h: 36e5,
|
|
189
|
+
H: 36e5,
|
|
190
|
+
d: p,
|
|
191
|
+
D: p,
|
|
192
|
+
w: 7 * p,
|
|
193
|
+
W: 7 * p
|
|
194
|
+
}, O = (e) => {
|
|
195
|
+
if (typeof e == "number") return e > 0 ? {
|
|
196
|
+
unit: "ms",
|
|
197
|
+
count: e,
|
|
198
|
+
ms: e
|
|
199
|
+
} : null;
|
|
200
|
+
let t = /^(\d+(?:\.\d+)?)([smhHdDwWM])$/.exec(e.trim());
|
|
201
|
+
if (!t) return null;
|
|
202
|
+
let n = Number(t[1]);
|
|
203
|
+
if (!(n > 0)) return null;
|
|
204
|
+
let r = t[2];
|
|
205
|
+
return r === "M" ? {
|
|
206
|
+
unit: "month",
|
|
207
|
+
count: n,
|
|
208
|
+
ms: n * 30 * p
|
|
209
|
+
} : {
|
|
210
|
+
unit: "ms",
|
|
211
|
+
count: n * D[r],
|
|
212
|
+
ms: n * D[r]
|
|
213
|
+
};
|
|
214
|
+
}, k = (e, t, n = 0) => {
|
|
215
|
+
let r = n * 6e4, i = e + r;
|
|
216
|
+
if (t.unit === "month") {
|
|
217
|
+
let e = new Date(i), n = e.getUTCFullYear() * 12 + e.getUTCMonth(), a = n - n % t.count;
|
|
218
|
+
return Date.UTC(Math.floor(a / 12), a % 12, 1) - r;
|
|
219
|
+
}
|
|
220
|
+
if (t.count % (7 * p) == 0) {
|
|
221
|
+
let e = 4 * p;
|
|
222
|
+
return Math.floor((i - e) / t.count) * t.count + e - r;
|
|
223
|
+
}
|
|
224
|
+
return Math.floor(i / t.count) * t.count - r;
|
|
225
|
+
}, A = (e) => !Array.isArray(e);
|
|
226
|
+
function j(e, t, n = 0) {
|
|
227
|
+
let r = O(t);
|
|
228
|
+
if (!r) throw Error(`Invalid timeframe: ${String(t)}`);
|
|
229
|
+
let i = A(e), a = i ? e.close.length : e.length, o = (t) => {
|
|
230
|
+
if (!i) return e[t];
|
|
231
|
+
let n = e;
|
|
232
|
+
return {
|
|
233
|
+
time: n.time[t],
|
|
234
|
+
open: n.open[t],
|
|
235
|
+
high: n.high[t],
|
|
236
|
+
low: n.low[t],
|
|
237
|
+
close: n.close[t],
|
|
238
|
+
volume: n.volume ? n.volume[t] : void 0
|
|
239
|
+
};
|
|
240
|
+
}, s = [], c = null;
|
|
241
|
+
for (let e = 0; e < a; e++) {
|
|
242
|
+
let t = o(e), i = k(t.time, r, n);
|
|
243
|
+
!c || i !== c.time ? (c && s.push(c), c = {
|
|
244
|
+
time: i,
|
|
245
|
+
open: t.open,
|
|
246
|
+
high: t.high,
|
|
247
|
+
low: t.low,
|
|
248
|
+
close: t.close,
|
|
249
|
+
volume: t.volume ?? 0
|
|
250
|
+
}) : (t.high > c.high && (c.high = t.high), t.low < c.low && (c.low = t.low), c.close = t.close, c.volume = (c.volume ?? 0) + (t.volume ?? 0));
|
|
251
|
+
}
|
|
252
|
+
if (c && s.push(c), !i) return s;
|
|
253
|
+
let l = s.length, u = {
|
|
254
|
+
time: new Float64Array(l),
|
|
255
|
+
open: new Float64Array(l),
|
|
256
|
+
high: new Float64Array(l),
|
|
257
|
+
low: new Float64Array(l),
|
|
258
|
+
close: new Float64Array(l),
|
|
259
|
+
volume: new Float64Array(l)
|
|
260
|
+
};
|
|
261
|
+
return s.forEach((e, t) => {
|
|
262
|
+
u.time[t] = e.time, u.open[t] = e.open, u.high[t] = e.high, u.low[t] = e.low, u.close[t] = e.close, u.volume[t] = e.volume ?? 0;
|
|
263
|
+
}), u;
|
|
264
|
+
}
|
|
265
|
+
//#endregion
|
|
266
|
+
export { w as atr, b as bollinger, k as bucketStart, v as ema, o as emaInto, E as heikinAshi, g as heikinAshiInto, C as kdj, f as kdjInto, x as macd, O as parseTimeframe, j as resampleBars, s as rmaInto, S as rsi, u as rsiInto, m as sessionKey, _ as sma, r as smaInto, l as stdevInto, d as trueRangeInto, T as vwap, h as vwapInto, y as wma, c as wmaInto };
|
|
267
|
+
|
|
268
|
+
//# sourceMappingURL=indicators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indicators.js","names":["finite","nanArray","n","periodOf","period","smaInto","p","sum","valid","j","from","v","src","i","old","windowMean","k","smoothInto","prev","out","alpha","emaInto","rmaInto","wmaInto","denominator","direct","num","stdevInto","mean","sq","d","rsiInto","change","close","gain","loss","g","l","ok","c","trueRangeInto","range","high","low","pc","kdjInto","m1","kPeriod","m2","dPeriod","hh","ll","q","rsv","pk","pd","DAY","sessionKey","reset","t","time","utcOffset","day","date","vwapInto","tp","volume","same","basePv","pv","baseV","vol","heikinAshiInto","open","prevOpen","prevClose","o","sma","values","ema","wma","bollinger","middle","upper","lower","dev","multiplier","macd","f","s","fast","slow","line","sig","signal","histogram","rsi","kdj","atr","tr","vwap","options","heikinAshi","bars","UNIT_MS","parseTimeframe","timeframe","match","count","unit","bucketStart","shift","tf","months","start","monday","isColumns","resampleBars","columns","get","current","bar","m","result"],"sources":["../../../../../charts/src/engine/trading/indicators.ts"],"sourcesContent":["// Technical indicators on columns of numbers (Float64Array out, NaN while\n// an indicator warms up). Every kernel computes the outputs from index\n// `from` on, assuming the outputs before it are up to date: the chart\n// recomputes only the last bar on each tick, even with a million bars.\n\nimport type {\n TradingBar,\n TradingBarColumns,\n TradingBarsInput,\n TradingTimeframe,\n} from \"./types\";\n\ntype Values = ArrayLike<number>;\n\nconst finite = Number.isFinite;\n\n/** Output array of `n` values, NaN-filled */\nconst nanArray = (n: number) => new Float64Array(n).fill(NaN);\n\nconst periodOf = (period: number) => Math.max(1, Math.floor(period) || 1);\n\n// ---------------------------------------------------------------- kernels\n\n/** Simple moving average of `src[0..n)` into `out`, from index `from` */\nexport const smaInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n let sum = 0;\n let valid = 0;\n // the window ending just before `from` (the loop below drops its oldest value)\n for (let j = Math.max(0, from - p); j < from; j++) {\n const v = src[j];\n if (finite(v)) {\n sum += v;\n valid++;\n }\n }\n for (let i = from; i < n; i++) {\n const v = src[i];\n if (finite(v)) {\n sum += v;\n valid++;\n }\n if (i >= p) {\n const old = src[i - p];\n if (finite(old)) {\n sum -= old;\n valid--;\n }\n }\n out[i] = valid === p ? sum / p : NaN;\n }\n};\n\n/** Mean of `src[i-p+1..i]`, NaN unless the window is complete */\nconst windowMean = (src: Values, i: number, p: number) => {\n if (i < p - 1) return NaN;\n let sum = 0;\n for (let k = i - p + 1; k <= i; k++) {\n const v = src[k];\n if (!finite(v)) return NaN;\n sum += v;\n }\n return sum / p;\n};\n\n/**\n * Exponential smoothing with factor `alpha`, seeded with the simple\n * average of the first complete window (the TradingView convention)\n */\nconst smoothInto = (\n src: Values,\n n: number,\n p: number,\n alpha: number,\n out: Float64Array,\n from: number,\n) => {\n for (let i = from; i < n; i++) {\n const v = src[i];\n const prev = i > 0 ? out[i - 1] : NaN;\n if (!finite(v)) out[i] = NaN;\n else if (finite(prev)) out[i] = prev + alpha * (v - prev);\n else out[i] = windowMean(src, i, p);\n }\n};\n\n/** Exponential moving average (alpha = 2 / (period + 1)) */\nexport const emaInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n smoothInto(src, n, p, 2 / (p + 1), out, from);\n};\n\n/** Wilder's moving average (alpha = 1 / period), used by RSI and ATR */\nexport const rmaInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n smoothInto(src, n, p, 1 / p, out, from);\n};\n\n/** Linearly weighted moving average (the newest bar weighs `period`) */\nexport const wmaInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n const denominator = (p * (p + 1)) / 2;\n const direct = (i: number) => {\n if (i < p - 1) return NaN;\n let num = 0;\n for (let k = 0; k < p; k++) {\n const v = src[i - k];\n if (!finite(v)) return NaN;\n num += (p - k) * v;\n }\n return num;\n };\n // numerator of the previous index and the sum of its window\n let num = from > 0 ? direct(from - 1) : NaN;\n let sum = from > 0 ? windowMean(src, from - 1, p) * p : NaN;\n for (let i = from; i < n; i++) {\n const v = src[i];\n if (finite(num) && finite(sum) && finite(v)) {\n num = num - sum + p * v;\n sum = sum + v - (i >= p ? src[i - p] : 0);\n } else {\n num = direct(i);\n sum = windowMean(src, i, p) * p;\n }\n out[i] = finite(num) ? num / denominator : NaN;\n }\n};\n\n/** Population standard deviation over the window (two passes: exact) */\nexport const stdevInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n for (let i = from; i < n; i++) {\n const mean = windowMean(src, i, p);\n if (!finite(mean)) {\n out[i] = NaN;\n continue;\n }\n let sq = 0;\n for (let k = i - p + 1; k <= i; k++) {\n const d = src[k] - mean;\n sq += d * d;\n }\n out[i] = Math.sqrt(sq / p);\n }\n};\n\n/** Highest value of the window ending at each index */\nconst extremeInto = (\n src: Values,\n n: number,\n p: number,\n out: Float64Array,\n from: number,\n highest: boolean,\n) => {\n for (let i = from; i < n; i++) {\n if (i < p - 1) {\n out[i] = NaN;\n continue;\n }\n let m = highest ? -Infinity : Infinity;\n for (let k = i - p + 1; k <= i; k++) {\n const v = src[k];\n if (!finite(v)) {\n m = NaN;\n break;\n }\n if (highest ? v > m : v < m) m = v;\n }\n out[i] = m;\n }\n};\n\n/** RSI with Wilder smoothing; `gain` / `loss` hold the running averages */\nexport const rsiInto = (\n close: Values,\n n: number,\n period: number,\n out: Float64Array,\n gain: Float64Array,\n loss: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n for (let i = from; i < n; i++) {\n gain[i] = loss[i] = NaN;\n out[i] = NaN;\n if (i === 0) continue;\n const change = close[i] - close[i - 1];\n if (!finite(change)) continue;\n if (finite(gain[i - 1]) && finite(loss[i - 1])) {\n gain[i] = (gain[i - 1] * (p - 1) + Math.max(change, 0)) / p;\n loss[i] = (loss[i - 1] * (p - 1) + Math.max(-change, 0)) / p;\n } else if (i >= p) {\n let g = 0;\n let l = 0;\n let ok = true;\n for (let k = i - p + 1; k <= i; k++) {\n const c = close[k] - close[k - 1];\n if (!finite(c)) {\n ok = false;\n break;\n }\n if (c > 0) g += c;\n else l -= c;\n }\n if (!ok) continue;\n gain[i] = g / p;\n loss[i] = l / p;\n } else {\n continue;\n }\n out[i] =\n loss[i] === 0\n ? gain[i] === 0\n ? 50\n : 100\n : 100 - 100 / (1 + gain[i] / loss[i]);\n }\n};\n\n/** True range of each bar */\nexport const trueRangeInto = (\n high: Values,\n low: Values,\n close: Values,\n n: number,\n out: Float64Array,\n from = 0,\n): void => {\n for (let i = from; i < n; i++) {\n const range = high[i] - low[i];\n if (i === 0 || !finite(close[i - 1])) {\n out[i] = range;\n continue;\n }\n const pc = close[i - 1];\n out[i] = Math.max(range, Math.abs(high[i] - pc), Math.abs(low[i] - pc));\n }\n};\n\n/** KDJ: K and D smoothed from the raw stochastic value (seeded at 50), J = 3K − 2D */\nexport const kdjInto = (\n high: Values,\n low: Values,\n close: Values,\n n: number,\n period: number,\n kPeriod: number,\n dPeriod: number,\n k: Float64Array,\n d: Float64Array,\n j: Float64Array,\n from = 0,\n): void => {\n const p = periodOf(period);\n const m1 = periodOf(kPeriod);\n const m2 = periodOf(dPeriod);\n for (let i = from; i < n; i++) {\n k[i] = d[i] = j[i] = NaN;\n if (i < p - 1) continue;\n let hh = -Infinity;\n let ll = Infinity;\n for (let q = i - p + 1; q <= i; q++) {\n if (high[q] > hh) hh = high[q];\n if (low[q] < ll) ll = low[q];\n }\n const c = close[i];\n if (!finite(hh) || !finite(ll) || !finite(c)) continue;\n const rsv = hh === ll ? 50 : ((c - ll) / (hh - ll)) * 100;\n const pk = i > 0 && finite(k[i - 1]) ? k[i - 1] : 50;\n const pd = i > 0 && finite(d[i - 1]) ? d[i - 1] : 50;\n k[i] = ((m1 - 1) * pk + rsv) / m1;\n d[i] = ((m2 - 1) * pd + k[i]) / m2;\n j[i] = 3 * k[i] - 2 * d[i];\n }\n};\n\nconst DAY = 86_400_000;\n\n/** Session key of a time: bars with the same key are in the same VWAP period */\nexport const sessionKey = (\n time: number,\n reset: \"day\" | \"week\" | \"month\" | \"none\",\n utcOffset = 0,\n): number => {\n if (reset === \"none\") return 0;\n const t = time + utcOffset * 60_000;\n const day = Math.floor(t / DAY);\n if (reset === \"day\") return day;\n // 1970-01-01 is a Thursday: weeks start on Monday\n if (reset === \"week\") return Math.floor((day + 3) / 7);\n const date = new Date(t);\n return date.getUTCFullYear() * 12 + date.getUTCMonth();\n};\n\n/** VWAP; `pv` / `vol` hold the cumulative sums of the period */\nexport const vwapInto = (\n high: Values,\n low: Values,\n close: Values,\n volume: Values,\n time: Values | null,\n n: number,\n reset: \"day\" | \"week\" | \"month\" | \"none\",\n utcOffset: number,\n out: Float64Array,\n pv: Float64Array,\n vol: Float64Array,\n from = 0,\n): void => {\n for (let i = from; i < n; i++) {\n const tp = (high[i] + low[i] + close[i]) / 3;\n const v = finite(volume[i]) ? volume[i] : 0;\n const same =\n i > 0 &&\n (!time ||\n sessionKey(time[i], reset, utcOffset) ===\n sessionKey(time[i - 1], reset, utcOffset));\n const basePv = same && finite(pv[i - 1]) ? pv[i - 1] : 0;\n const baseV = same && finite(vol[i - 1]) ? vol[i - 1] : 0;\n pv[i] = basePv + (finite(tp) ? tp * v : 0);\n vol[i] = baseV + v;\n out[i] = vol[i] > 0 ? pv[i] / vol[i] : finite(tp) ? tp : NaN;\n }\n};\n\n/** Heikin-Ashi bars from regular bars */\nexport const heikinAshiInto = (\n open: Values,\n high: Values,\n low: Values,\n close: Values,\n n: number,\n out: {\n open: Float64Array;\n high: Float64Array;\n low: Float64Array;\n close: Float64Array;\n },\n from = 0,\n): void => {\n for (let i = from; i < n; i++) {\n const c = (open[i] + high[i] + low[i] + close[i]) / 4;\n const prevOpen = i > 0 ? out.open[i - 1] : NaN;\n const prevClose = i > 0 ? out.close[i - 1] : NaN;\n const o =\n finite(prevOpen) && finite(prevClose)\n ? (prevOpen + prevClose) / 2\n : (open[i] + close[i]) / 2;\n out.open[i] = o;\n out.close[i] = c;\n out.high[i] = Math.max(high[i], o, c);\n out.low[i] = Math.min(low[i], o, c);\n }\n};\n\n// ------------------------------------------------------- public functions\n\n/**\n * Simple moving average: the mean of the last `period` values (NaN until\n * `period` values are available)\n */\nexport const sma = (values: Values, period: number): Float64Array => {\n const out = nanArray(values.length);\n smaInto(values, values.length, period, out);\n return out;\n};\n\n/** Exponential moving average, seeded with the simple average of the first `period` values */\nexport const ema = (values: Values, period: number): Float64Array => {\n const out = nanArray(values.length);\n emaInto(values, values.length, period, out);\n return out;\n};\n\n/** Linearly weighted moving average: the newest value weighs `period`, the oldest 1 */\nexport const wma = (values: Values, period: number): Float64Array => {\n const out = nanArray(values.length);\n wmaInto(values, values.length, period, out);\n return out;\n};\n\n/** Bollinger bands: simple average ± `multiplier` population standard deviations */\nexport const bollinger = (\n values: Values,\n period = 20,\n multiplier = 2,\n): { middle: Float64Array; upper: Float64Array; lower: Float64Array } => {\n const n = values.length;\n const middle = nanArray(n);\n const upper = nanArray(n);\n const lower = nanArray(n);\n const dev = nanArray(n);\n smaInto(values, n, period, middle);\n stdevInto(values, n, period, dev);\n for (let i = 0; i < n; i++) {\n upper[i] = middle[i] + multiplier * dev[i];\n lower[i] = middle[i] - multiplier * dev[i];\n }\n return { middle, upper, lower };\n};\n\n/** MACD line (fast EMA − slow EMA), its signal EMA and their difference */\nexport const macd = (\n values: Values,\n fast = 12,\n slow = 26,\n signal = 9,\n): { macd: Float64Array; signal: Float64Array; histogram: Float64Array } => {\n const n = values.length;\n const f = nanArray(n);\n const s = nanArray(n);\n emaInto(values, n, fast, f);\n emaInto(values, n, slow, s);\n const line = nanArray(n);\n for (let i = 0; i < n; i++) line[i] = f[i] - s[i];\n const sig = nanArray(n);\n emaInto(line, n, signal, sig);\n const histogram = nanArray(n);\n for (let i = 0; i < n; i++) histogram[i] = line[i] - sig[i];\n return { macd: line, signal: sig, histogram };\n};\n\n/** Relative strength index (0-100) with Wilder smoothing */\nexport const rsi = (values: Values, period = 14): Float64Array => {\n const n = values.length;\n const out = nanArray(n);\n rsiInto(values, n, period, out, nanArray(n), nanArray(n));\n return out;\n};\n\n/** KDJ stochastic: K and D smoothed (seeded at 50), J = 3K − 2D */\nexport const kdj = (\n high: Values,\n low: Values,\n close: Values,\n period = 9,\n kPeriod = 3,\n dPeriod = 3,\n): { k: Float64Array; d: Float64Array; j: Float64Array } => {\n const n = close.length;\n const k = nanArray(n);\n const d = nanArray(n);\n const j = nanArray(n);\n kdjInto(high, low, close, n, period, kPeriod, dPeriod, k, d, j);\n return { k, d, j };\n};\n\n/** Average true range with Wilder smoothing */\nexport const atr = (\n high: Values,\n low: Values,\n close: Values,\n period = 14,\n): Float64Array => {\n const n = close.length;\n const tr = nanArray(n);\n trueRangeInto(high, low, close, n, tr);\n const out = nanArray(n);\n rmaInto(tr, n, period, out);\n return out;\n};\n\n/**\n * Volume-weighted average of the typical price (high + low + close) / 3,\n * restarting each `reset` period (UTC, or shifted by `utcOffset` minutes);\n * without `time`, a single cumulative average\n */\nexport const vwap = (\n high: Values,\n low: Values,\n close: Values,\n volume: Values,\n options: {\n time?: Values;\n reset?: \"day\" | \"week\" | \"month\" | \"none\";\n utcOffset?: number;\n } = {},\n): Float64Array => {\n const n = close.length;\n const out = nanArray(n);\n vwapInto(\n high,\n low,\n close,\n volume,\n options.time ?? null,\n n,\n options.reset ?? \"day\",\n options.utcOffset ?? 0,\n out,\n nanArray(n),\n nanArray(n),\n );\n return out;\n};\n\n/** Heikin-Ashi bars: averaged bars that smooth out the noise of trends */\nexport const heikinAshi = (bars: {\n open: Values;\n high: Values;\n low: Values;\n close: Values;\n}): {\n open: Float64Array;\n high: Float64Array;\n low: Float64Array;\n close: Float64Array;\n} => {\n const n = bars.close.length;\n const out = {\n open: nanArray(n),\n high: nanArray(n),\n low: nanArray(n),\n close: nanArray(n),\n };\n heikinAshiInto(bars.open, bars.high, bars.low, bars.close, n, out);\n return out;\n};\n\n// -------------------------------------------------------------- timeframes\n\n/** A parsed timeframe: a count of a unit, with its approximate duration */\nexport interface ParsedTimeframe {\n unit: \"ms\" | \"month\";\n count: number;\n /** Approximate duration in ms (30 days per month) */\n ms: number;\n}\n\nconst UNIT_MS: Record<string, number> = {\n s: 1000,\n m: 60_000,\n h: 3_600_000,\n H: 3_600_000,\n d: DAY,\n D: DAY,\n w: 7 * DAY,\n W: 7 * DAY,\n};\n\n/** `\"15m\"` -> 15 minutes, `\"1M\"` -> 1 month; `null` when invalid */\nexport const parseTimeframe = (\n timeframe: TradingTimeframe,\n): ParsedTimeframe | null => {\n if (typeof timeframe === \"number\") {\n return timeframe > 0\n ? { unit: \"ms\", count: timeframe, ms: timeframe }\n : null;\n }\n const match = /^(\\d+(?:\\.\\d+)?)([smhHdDwWM])$/.exec(timeframe.trim());\n if (!match) return null;\n const count = Number(match[1]);\n if (!(count > 0)) return null;\n const unit = match[2];\n if (unit === \"M\") return { unit: \"month\", count, ms: count * 30 * DAY };\n return {\n unit: \"ms\",\n count: count * UNIT_MS[unit],\n ms: count * UNIT_MS[unit],\n };\n};\n\n/** Start of the bucket of `time` (weeks start on Monday, months on the 1st) */\nexport const bucketStart = (\n time: number,\n tf: ParsedTimeframe,\n utcOffset = 0,\n): number => {\n const shift = utcOffset * 60_000;\n const t = time + shift;\n if (tf.unit === \"month\") {\n const date = new Date(t);\n const months = date.getUTCFullYear() * 12 + date.getUTCMonth();\n const start = months - (months % tf.count);\n return Date.UTC(Math.floor(start / 12), start % 12, 1) - shift;\n }\n if (tf.count % (7 * DAY) === 0) {\n // Monday-aligned weeks (the epoch is a Thursday)\n const monday = 4 * DAY;\n return Math.floor((t - monday) / tf.count) * tf.count + monday - shift;\n }\n return Math.floor(t / tf.count) * tf.count - shift;\n};\n\nconst isColumns = (bars: TradingBarsInput): bars is TradingBarColumns =>\n !Array.isArray(bars);\n\n/**\n * Aggregates bars into a longer timeframe (`\"5m\"` bars into `\"1H\"`, ...):\n * first open, highest high, lowest low, last close, summed volume. Buckets\n * are aligned on UTC (or shifted by `utcOffset` minutes); weeks start on\n * Monday. Columns in, columns out (Float64Array).\n */\nexport function resampleBars(\n bars: readonly TradingBar[],\n timeframe: TradingTimeframe,\n utcOffset?: number,\n): TradingBar[];\nexport function resampleBars(\n bars: TradingBarColumns,\n timeframe: TradingTimeframe,\n utcOffset?: number,\n): TradingBarColumns;\nexport function resampleBars(\n bars: TradingBarsInput,\n timeframe: TradingTimeframe,\n utcOffset = 0,\n): TradingBar[] | TradingBarColumns {\n const tf = parseTimeframe(timeframe);\n if (!tf) throw new Error(`Invalid timeframe: ${String(timeframe)}`);\n const columns = isColumns(bars);\n const n = columns ? bars.close.length : bars.length;\n const get = (i: number): TradingBar => {\n if (!columns) return (bars as readonly TradingBar[])[i];\n const c = bars as TradingBarColumns;\n return {\n time: c.time[i],\n open: c.open[i],\n high: c.high[i],\n low: c.low[i],\n close: c.close[i],\n volume: c.volume ? c.volume[i] : undefined,\n };\n };\n const out: TradingBar[] = [];\n let current: TradingBar | null = null;\n for (let i = 0; i < n; i++) {\n const bar = get(i);\n const start = bucketStart(bar.time, tf, utcOffset);\n if (!current || start !== current.time) {\n if (current) out.push(current);\n current = {\n time: start,\n open: bar.open,\n high: bar.high,\n low: bar.low,\n close: bar.close,\n volume: bar.volume ?? 0,\n };\n } else {\n if (bar.high > current.high) current.high = bar.high;\n if (bar.low < current.low) current.low = bar.low;\n current.close = bar.close;\n current.volume = (current.volume ?? 0) + (bar.volume ?? 0);\n }\n }\n if (current) out.push(current);\n if (!columns) return out;\n const m = out.length;\n const result = {\n time: new Float64Array(m),\n open: new Float64Array(m),\n high: new Float64Array(m),\n low: new Float64Array(m),\n close: new Float64Array(m),\n volume: new Float64Array(m),\n };\n out.forEach((bar, i) => {\n result.time[i] = bar.time;\n result.open[i] = bar.open;\n result.high[i] = bar.high;\n result.low[i] = bar.low;\n result.close[i] = bar.close;\n result.volume[i] = bar.volume ?? 0;\n });\n return result;\n}\n\n/** Highest / lowest of a window: exported for the KDJ-like studies of the chart */\nexport const highestInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => extremeInto(src, n, periodOf(period), out, from, true);\n\nexport const lowestInto = (\n src: Values,\n n: number,\n period: number,\n out: Float64Array,\n from = 0,\n): void => extremeInto(src, n, periodOf(period), out, from, false);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e={en:{open:`O`,high:`H`,low:`L`,close:`C`,change:``,volume:`Vol`,limit:`Limit`,position:`Position`,takeProfit:`TP`,stopLoss:`SL`,alert:`Alert`,scrollToRealtime:`Scroll to the latest bar`,toggleIndicator:`Show or hide {name}`,bars:`{count} bars`,days:`{count}d`,hours:`{count}h`,minutes:`{count}m`,chart:`{symbol} price chart`,announcement:`{time}: open {open}, high {high}, low {low}, close {close}`},zh:{open:`开`,high:`高`,low:`低`,close:`收`,change:`涨跌幅`,volume:`成交量`,limit:`限价`,position:`持仓`,takeProfit:`止盈`,stopLoss:`止损`,alert:`预警`,scrollToRealtime:`回到最新 K 线`,toggleIndicator:`显示或隐藏 {name}`,bars:`{count} 根 K 线`,days:`{count}天`,hours:`{count}小时`,minutes:`{count}分`,chart:`{symbol} 价格图表`,announcement:`{time}:开盘 {open},最高 {high},最低 {low},收盘 {close}`},ja:{open:`始`,high:`高`,low:`安`,close:`終`,change:`騰落率`,volume:`出来高`,limit:`指値`,position:`建玉`,takeProfit:`利確`,stopLoss:`損切`,alert:`アラート`,scrollToRealtime:`最新の足へ移動`,toggleIndicator:`{name} の表示を切り替え`,bars:`{count} 本`,days:`{count}日`,hours:`{count}時間`,minutes:`{count}分`,chart:`{symbol} 価格チャート`,announcement:`{time}:始値 {open}、高値 {high}、安値 {low}、終値 {close}`},fr:{open:`O`,high:`H`,low:`B`,close:`C`,change:`Var.`,volume:`Vol`,limit:`Limite`,position:`Position`,takeProfit:`TP`,stopLoss:`SL`,alert:`Alerte`,scrollToRealtime:`Revenir à la dernière bougie`,toggleIndicator:`Afficher ou masquer {name}`,bars:`{count} barres`,days:`{count} j`,hours:`{count} h`,minutes:`{count} min`,chart:`Graphique de cours {symbol}`,announcement:`{time} : ouverture {open}, plus haut {high}, plus bas {low}, clôture {close}`}},t=(e,t)=>e.replace(/\{(\w+)\}/g,(e,n)=>n in t?String(t[n]):e);exports.TRADING_LABELS=e,exports.fill=t;
|
|
2
|
+
//# sourceMappingURL=labels.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.cjs","names":["TRADING_LABELS","fill","template","key","values","match"],"sources":["../../../../../charts/src/engine/trading/labels.ts"],"sourcesContent":["// Built-in texts of the trading chart, per language (see ../locale.ts).\n\nimport type { LabelDictionary } from \"../locale\";\nimport type { TradingChartLabels } from \"./types\";\n\n/** Every text of the chart but the timeframe (taken from the options) */\nexport type TradingTexts = Required<Omit<TradingChartLabels, \"timeframe\">>;\n\nexport const TRADING_LABELS: LabelDictionary<TradingTexts> = {\n en: {\n open: \"O\",\n high: \"H\",\n low: \"L\",\n close: \"C\",\n change: \"\",\n volume: \"Vol\",\n limit: \"Limit\",\n position: \"Position\",\n takeProfit: \"TP\",\n stopLoss: \"SL\",\n alert: \"Alert\",\n scrollToRealtime: \"Scroll to the latest bar\",\n toggleIndicator: \"Show or hide {name}\",\n bars: \"{count} bars\",\n days: \"{count}d\",\n hours: \"{count}h\",\n minutes: \"{count}m\",\n chart: \"{symbol} price chart\",\n announcement: \"{time}: open {open}, high {high}, low {low}, close {close}\",\n },\n zh: {\n open: \"开\",\n high: \"高\",\n low: \"低\",\n close: \"收\",\n change: \"涨跌幅\",\n volume: \"成交量\",\n limit: \"限价\",\n position: \"持仓\",\n takeProfit: \"止盈\",\n stopLoss: \"止损\",\n alert: \"预警\",\n scrollToRealtime: \"回到最新 K 线\",\n toggleIndicator: \"显示或隐藏 {name}\",\n bars: \"{count} 根 K 线\",\n days: \"{count}天\",\n hours: \"{count}小时\",\n minutes: \"{count}分\",\n chart: \"{symbol} 价格图表\",\n announcement: \"{time}:开盘 {open},最高 {high},最低 {low},收盘 {close}\",\n },\n ja: {\n open: \"始\",\n high: \"高\",\n low: \"安\",\n close: \"終\",\n change: \"騰落率\",\n volume: \"出来高\",\n limit: \"指値\",\n position: \"建玉\",\n takeProfit: \"利確\",\n stopLoss: \"損切\",\n alert: \"アラート\",\n scrollToRealtime: \"最新の足へ移動\",\n toggleIndicator: \"{name} の表示を切り替え\",\n bars: \"{count} 本\",\n days: \"{count}日\",\n hours: \"{count}時間\",\n minutes: \"{count}分\",\n chart: \"{symbol} 価格チャート\",\n announcement: \"{time}:始値 {open}、高値 {high}、安値 {low}、終値 {close}\",\n },\n fr: {\n open: \"O\",\n high: \"H\",\n low: \"B\",\n close: \"C\",\n change: \"Var.\",\n volume: \"Vol\",\n limit: \"Limite\",\n position: \"Position\",\n takeProfit: \"TP\",\n stopLoss: \"SL\",\n alert: \"Alerte\",\n scrollToRealtime: \"Revenir à la dernière bougie\",\n toggleIndicator: \"Afficher ou masquer {name}\",\n bars: \"{count} barres\",\n days: \"{count} j\",\n hours: \"{count} h\",\n minutes: \"{count} min\",\n chart: \"Graphique de cours {symbol}\",\n announcement:\n \"{time} : ouverture {open}, plus haut {high}, plus bas {low}, clôture {close}\",\n },\n};\n\n/** `\"{count} bars\"` -> `\"24 bars\"` */\nexport const fill = (\n template: string,\n values: Record<string, string | number>,\n): string =>\n template.replace(/\\{(\\w+)\\}/g, (match, key: string) =>\n key in values ? String(values[key]) : match,\n );\n"],"mappings":"AAQA,IAAaA,EAAgD,CAC3D,GAAI,CACF,KAAM,IACN,KAAM,IACN,IAAK,IACL,MAAO,IACP,OAAQ,GACR,OAAQ,MACR,MAAO,QACP,SAAU,WACV,WAAY,KACZ,SAAU,KACV,MAAO,QACP,iBAAkB,2BAClB,gBAAiB,sBACjB,KAAM,eACN,KAAM,WACN,MAAO,WACP,QAAS,WACT,MAAO,uBACP,aAAc,4DAChB,EACA,GAAI,CACF,KAAM,IACN,KAAM,IACN,IAAK,IACL,MAAO,IACP,OAAQ,MACR,OAAQ,MACR,MAAO,KACP,SAAU,KACV,WAAY,KACZ,SAAU,KACV,MAAO,KACP,iBAAkB,WAClB,gBAAiB,eACjB,KAAM,gBACN,KAAM,WACN,MAAO,YACP,QAAS,WACT,MAAO,gBACP,aAAc,gDAChB,EACA,GAAI,CACF,KAAM,IACN,KAAM,IACN,IAAK,IACL,MAAO,IACP,OAAQ,MACR,OAAQ,MACR,MAAO,KACP,SAAU,KACV,WAAY,KACZ,SAAU,KACV,MAAO,OACP,iBAAkB,UAClB,gBAAiB,kBACjB,KAAM,YACN,KAAM,WACN,MAAO,YACP,QAAS,WACT,MAAO,kBACP,aAAc,gDAChB,EACA,GAAI,CACF,KAAM,IACN,KAAM,IACN,IAAK,IACL,MAAO,IACP,OAAQ,OACR,OAAQ,MACR,MAAO,SACP,SAAU,WACV,WAAY,KACZ,SAAU,KACV,MAAO,SACP,iBAAkB,+BAClB,gBAAiB,6BACjB,KAAM,iBACN,KAAM,YACN,MAAO,YACP,QAAS,cACT,MAAO,8BACP,aACE,8EACJ,CACF,EAGaC,GACX,EACA,IAEAC,EAAS,QAAQ,cAAe,EAAO,IACrCC,KAAOC,EAAS,OAAOA,EAAOD,EAAI,EAAIE,CACxC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { LabelDictionary } from '../locale.cjs';
|
|
2
|
+
import { TradingChartLabels } from './types.cjs';
|
|
3
|
+
/** Every text of the chart but the timeframe (taken from the options) */
|
|
4
|
+
export type TradingTexts = Required<Omit<TradingChartLabels, "timeframe">>;
|
|
5
|
+
export declare const TRADING_LABELS: LabelDictionary<TradingTexts>;
|
|
6
|
+
/** `"{count} bars"` -> `"24 bars"` */
|
|
7
|
+
export declare const fill: (template: string, values: Record<string, string | number>) => string;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { LabelDictionary } from '../locale.js';
|
|
2
|
+
import { TradingChartLabels } from './types.js';
|
|
3
|
+
/** Every text of the chart but the timeframe (taken from the options) */
|
|
4
|
+
export type TradingTexts = Required<Omit<TradingChartLabels, "timeframe">>;
|
|
5
|
+
export declare const TRADING_LABELS: LabelDictionary<TradingTexts>;
|
|
6
|
+
/** `"{count} bars"` -> `"24 bars"` */
|
|
7
|
+
export declare const fill: (template: string, values: Record<string, string | number>) => string;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
//#region src/engine/trading/labels.ts
|
|
2
|
+
var e = {
|
|
3
|
+
en: {
|
|
4
|
+
open: "O",
|
|
5
|
+
high: "H",
|
|
6
|
+
low: "L",
|
|
7
|
+
close: "C",
|
|
8
|
+
change: "",
|
|
9
|
+
volume: "Vol",
|
|
10
|
+
limit: "Limit",
|
|
11
|
+
position: "Position",
|
|
12
|
+
takeProfit: "TP",
|
|
13
|
+
stopLoss: "SL",
|
|
14
|
+
alert: "Alert",
|
|
15
|
+
scrollToRealtime: "Scroll to the latest bar",
|
|
16
|
+
toggleIndicator: "Show or hide {name}",
|
|
17
|
+
bars: "{count} bars",
|
|
18
|
+
days: "{count}d",
|
|
19
|
+
hours: "{count}h",
|
|
20
|
+
minutes: "{count}m",
|
|
21
|
+
chart: "{symbol} price chart",
|
|
22
|
+
announcement: "{time}: open {open}, high {high}, low {low}, close {close}"
|
|
23
|
+
},
|
|
24
|
+
zh: {
|
|
25
|
+
open: "开",
|
|
26
|
+
high: "高",
|
|
27
|
+
low: "低",
|
|
28
|
+
close: "收",
|
|
29
|
+
change: "涨跌幅",
|
|
30
|
+
volume: "成交量",
|
|
31
|
+
limit: "限价",
|
|
32
|
+
position: "持仓",
|
|
33
|
+
takeProfit: "止盈",
|
|
34
|
+
stopLoss: "止损",
|
|
35
|
+
alert: "预警",
|
|
36
|
+
scrollToRealtime: "回到最新 K 线",
|
|
37
|
+
toggleIndicator: "显示或隐藏 {name}",
|
|
38
|
+
bars: "{count} 根 K 线",
|
|
39
|
+
days: "{count}天",
|
|
40
|
+
hours: "{count}小时",
|
|
41
|
+
minutes: "{count}分",
|
|
42
|
+
chart: "{symbol} 价格图表",
|
|
43
|
+
announcement: "{time}:开盘 {open},最高 {high},最低 {low},收盘 {close}"
|
|
44
|
+
},
|
|
45
|
+
ja: {
|
|
46
|
+
open: "始",
|
|
47
|
+
high: "高",
|
|
48
|
+
low: "安",
|
|
49
|
+
close: "終",
|
|
50
|
+
change: "騰落率",
|
|
51
|
+
volume: "出来高",
|
|
52
|
+
limit: "指値",
|
|
53
|
+
position: "建玉",
|
|
54
|
+
takeProfit: "利確",
|
|
55
|
+
stopLoss: "損切",
|
|
56
|
+
alert: "アラート",
|
|
57
|
+
scrollToRealtime: "最新の足へ移動",
|
|
58
|
+
toggleIndicator: "{name} の表示を切り替え",
|
|
59
|
+
bars: "{count} 本",
|
|
60
|
+
days: "{count}日",
|
|
61
|
+
hours: "{count}時間",
|
|
62
|
+
minutes: "{count}分",
|
|
63
|
+
chart: "{symbol} 価格チャート",
|
|
64
|
+
announcement: "{time}:始値 {open}、高値 {high}、安値 {low}、終値 {close}"
|
|
65
|
+
},
|
|
66
|
+
fr: {
|
|
67
|
+
open: "O",
|
|
68
|
+
high: "H",
|
|
69
|
+
low: "B",
|
|
70
|
+
close: "C",
|
|
71
|
+
change: "Var.",
|
|
72
|
+
volume: "Vol",
|
|
73
|
+
limit: "Limite",
|
|
74
|
+
position: "Position",
|
|
75
|
+
takeProfit: "TP",
|
|
76
|
+
stopLoss: "SL",
|
|
77
|
+
alert: "Alerte",
|
|
78
|
+
scrollToRealtime: "Revenir à la dernière bougie",
|
|
79
|
+
toggleIndicator: "Afficher ou masquer {name}",
|
|
80
|
+
bars: "{count} barres",
|
|
81
|
+
days: "{count} j",
|
|
82
|
+
hours: "{count} h",
|
|
83
|
+
minutes: "{count} min",
|
|
84
|
+
chart: "Graphique de cours {symbol}",
|
|
85
|
+
announcement: "{time} : ouverture {open}, plus haut {high}, plus bas {low}, clôture {close}"
|
|
86
|
+
}
|
|
87
|
+
}, t = (e, t) => e.replace(/\{(\w+)\}/g, (e, n) => n in t ? String(t[n]) : e);
|
|
88
|
+
//#endregion
|
|
89
|
+
export { e as TRADING_LABELS, t as fill };
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=labels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.js","names":["TRADING_LABELS","fill","template","key","values","match"],"sources":["../../../../../charts/src/engine/trading/labels.ts"],"sourcesContent":["// Built-in texts of the trading chart, per language (see ../locale.ts).\n\nimport type { LabelDictionary } from \"../locale\";\nimport type { TradingChartLabels } from \"./types\";\n\n/** Every text of the chart but the timeframe (taken from the options) */\nexport type TradingTexts = Required<Omit<TradingChartLabels, \"timeframe\">>;\n\nexport const TRADING_LABELS: LabelDictionary<TradingTexts> = {\n en: {\n open: \"O\",\n high: \"H\",\n low: \"L\",\n close: \"C\",\n change: \"\",\n volume: \"Vol\",\n limit: \"Limit\",\n position: \"Position\",\n takeProfit: \"TP\",\n stopLoss: \"SL\",\n alert: \"Alert\",\n scrollToRealtime: \"Scroll to the latest bar\",\n toggleIndicator: \"Show or hide {name}\",\n bars: \"{count} bars\",\n days: \"{count}d\",\n hours: \"{count}h\",\n minutes: \"{count}m\",\n chart: \"{symbol} price chart\",\n announcement: \"{time}: open {open}, high {high}, low {low}, close {close}\",\n },\n zh: {\n open: \"开\",\n high: \"高\",\n low: \"低\",\n close: \"收\",\n change: \"涨跌幅\",\n volume: \"成交量\",\n limit: \"限价\",\n position: \"持仓\",\n takeProfit: \"止盈\",\n stopLoss: \"止损\",\n alert: \"预警\",\n scrollToRealtime: \"回到最新 K 线\",\n toggleIndicator: \"显示或隐藏 {name}\",\n bars: \"{count} 根 K 线\",\n days: \"{count}天\",\n hours: \"{count}小时\",\n minutes: \"{count}分\",\n chart: \"{symbol} 价格图表\",\n announcement: \"{time}:开盘 {open},最高 {high},最低 {low},收盘 {close}\",\n },\n ja: {\n open: \"始\",\n high: \"高\",\n low: \"安\",\n close: \"終\",\n change: \"騰落率\",\n volume: \"出来高\",\n limit: \"指値\",\n position: \"建玉\",\n takeProfit: \"利確\",\n stopLoss: \"損切\",\n alert: \"アラート\",\n scrollToRealtime: \"最新の足へ移動\",\n toggleIndicator: \"{name} の表示を切り替え\",\n bars: \"{count} 本\",\n days: \"{count}日\",\n hours: \"{count}時間\",\n minutes: \"{count}分\",\n chart: \"{symbol} 価格チャート\",\n announcement: \"{time}:始値 {open}、高値 {high}、安値 {low}、終値 {close}\",\n },\n fr: {\n open: \"O\",\n high: \"H\",\n low: \"B\",\n close: \"C\",\n change: \"Var.\",\n volume: \"Vol\",\n limit: \"Limite\",\n position: \"Position\",\n takeProfit: \"TP\",\n stopLoss: \"SL\",\n alert: \"Alerte\",\n scrollToRealtime: \"Revenir à la dernière bougie\",\n toggleIndicator: \"Afficher ou masquer {name}\",\n bars: \"{count} barres\",\n days: \"{count} j\",\n hours: \"{count} h\",\n minutes: \"{count} min\",\n chart: \"Graphique de cours {symbol}\",\n announcement:\n \"{time} : ouverture {open}, plus haut {high}, plus bas {low}, clôture {close}\",\n },\n};\n\n/** `\"{count} bars\"` -> `\"24 bars\"` */\nexport const fill = (\n template: string,\n values: Record<string, string | number>,\n): string =>\n template.replace(/\\{(\\w+)\\}/g, (match, key: string) =>\n key in values ? String(values[key]) : match,\n );\n"],"mappings":";AAQA,IAAaA,IAAgD;CAC3D,IAAI;EACF,MAAM;EACN,MAAM;EACN,KAAK;EACL,OAAO;EACP,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,UAAU;EACV,YAAY;EACZ,UAAU;EACV,OAAO;EACP,kBAAkB;EAClB,iBAAiB;EACjB,MAAM;EACN,MAAM;EACN,OAAO;EACP,SAAS;EACT,OAAO;EACP,cAAc;CAChB;CACA,IAAI;EACF,MAAM;EACN,MAAM;EACN,KAAK;EACL,OAAO;EACP,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,UAAU;EACV,YAAY;EACZ,UAAU;EACV,OAAO;EACP,kBAAkB;EAClB,iBAAiB;EACjB,MAAM;EACN,MAAM;EACN,OAAO;EACP,SAAS;EACT,OAAO;EACP,cAAc;CAChB;CACA,IAAI;EACF,MAAM;EACN,MAAM;EACN,KAAK;EACL,OAAO;EACP,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,UAAU;EACV,YAAY;EACZ,UAAU;EACV,OAAO;EACP,kBAAkB;EAClB,iBAAiB;EACjB,MAAM;EACN,MAAM;EACN,OAAO;EACP,SAAS;EACT,OAAO;EACP,cAAc;CAChB;CACA,IAAI;EACF,MAAM;EACN,MAAM;EACN,KAAK;EACL,OAAO;EACP,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,UAAU;EACV,YAAY;EACZ,UAAU;EACV,OAAO;EACP,kBAAkB;EAClB,iBAAiB;EACjB,MAAM;EACN,MAAM;EACN,OAAO;EACP,SAAS;EACT,OAAO;EACP,cACE;CACJ;AACF,GAGaC,KACX,GACA,MAEAC,EAAS,QAAQ,eAAe,GAAO,MACrCC,KAAOC,IAAS,OAAOA,EAAOD,EAAI,IAAIE,CACxC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("../scale.cjs");var t=(e=`linear`)=>({mode:e,auto:!0,min:0,max:1,base:1,top:0,height:1,marginTop:.1,marginBottom:.1}),n=(e,t)=>{switch(e.mode){case`log`:return t>0?Math.log10(t):NaN;case`percent`:return e.base?(t/e.base-1)*100:NaN;default:return t}},r=(e,t)=>{switch(e.mode){case`log`:return 10**t;case`percent`:return(t/100+1)*e.base;default:return t}},i=e=>{let t=e.top+e.height*e.marginTop,n=e.height*(1-e.marginTop-e.marginBottom);return{top:t,h:Math.max(1,n)}},a=(e,t)=>{let{top:n,h:r}=i(e),a=e.max-e.min||1;return n+(e.max-t)/a*r},o=(e,t)=>a(e,n(e,t)),s=(e,t)=>{let{top:n,h:r}=i(e);return e.max-(t-n)/r*(e.max-e.min||1)},c=(e,t)=>r(e,s(e,t)),l=(e,t,n)=>{let r=t,i=n;if(!Number.isFinite(r)||!Number.isFinite(i)){(!Number.isFinite(e.min)||!Number.isFinite(e.max))&&(e.min=0,e.max=1);return}if(r>i&&([r,i]=[i,r]),i-r<1e-12*Math.max(1,Math.abs(r))){let t=e.mode===`log`?.01:Math.max(Math.abs(r)*.01,1e-8)||1;r-=t,i+=t}e.min=r,e.max=i},u=(e,t)=>{let n=(e.min+e.max)/2,r=(e.max-e.min)/2*t;r>0&&Number.isFinite(r)&&(e.min=n-r,e.max=n+r,e.auto=!1)},d=(e,t)=>{let{h:n}=i(e),r=t/n*(e.max-e.min);e.min+=r,e.max+=r,e.auto=!1},f=e=>{if(!(e>0))return e;let t=10**Math.floor(Math.log10(e)),n=e/t,r=[1,1.2,1.5,2,2.5,3,4,5,6,7,8,10],i=r[0];for(let e of r)Math.abs(e-n)<Math.abs(i-n)&&(i=e);return i*t},p=(t,n=36)=>{let{h:r}=i(t),a=(t.max-t.min)*t.height/r,o=t.max-a*(1-t.marginTop)-1e-12,s=t.max+a*t.marginTop+1e-12,c=Math.max(2,Math.floor(t.height/n)),l=e.tickStep(o,s,c);if(!(l>0))return{scaled:[],step:0};let u=[];if(t.mode===`log`){let e=NaN;for(let r=Math.ceil(o/l)*l;r<=s;r+=l){let i=f(10**r),c=Math.log10(i);c===e||c<o||c>s||u.length&&(c-u[u.length-1])/a*t.height<n*.5||(u.push(c),e=c)}return{scaled:u,step:l}}let d=Math.ceil(o/l-1e-9),p=Math.floor(s/l+1e-9);for(let e=d;e<=p&&u.length<200;e++)u.push(e*l);return{scaled:u,step:l}};exports.createScale=t,exports.fitScale=l,exports.fromScaled=r,exports.panScale=d,exports.scaleTicks=p,exports.scaledAt=s,exports.toScaled=n,exports.valueAt=c,exports.yOf=o,exports.yOfScaled=a,exports.zoomScale=u;
|
|
2
|
+
//# sourceMappingURL=scale.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scale.cjs","names":["tickStep","require_scale","createScale","toScaled","scale","value","fromScaled","scaled","band","top","h","yOfScaled","span","yOf","scaledAt","y","valueAt","fitScale","a","lo","b","hi","pad","zoomScale","mid","half","factor","panScale","delta","dy","niceRound","power","m","steps","best","s","scaleTicks","extra","count","minGap","step","previous","t","price","start","end","i"],"sources":["../../../../../charts/src/engine/trading/scale.ts"],"sourcesContent":["// Vertical scales of the panes: linear, logarithmic or percent (change from\n// a base price). Values are mapped to a \"scaled\" space (the price, its\n// log10, or the percent change) in which the scale is linear.\n\nimport { tickStep } from \"../scale\";\nimport type { TradingScaleMode } from \"./types\";\n\nexport interface PaneScale {\n mode: TradingScaleMode;\n /** Fits the visible values (off after the user zoomed the scale) */\n auto: boolean;\n /** Visible range in scaled space */\n min: number;\n max: number;\n /** Base price of the percent mode */\n base: number;\n /** Pane position in CSS pixels */\n top: number;\n height: number;\n /** Empty space above / below the values, as fractions of the height */\n marginTop: number;\n marginBottom: number;\n}\n\nexport const createScale = (mode: TradingScaleMode = \"linear\"): PaneScale => ({\n mode,\n auto: true,\n min: 0,\n max: 1,\n base: 1,\n top: 0,\n height: 1,\n marginTop: 0.1,\n marginBottom: 0.1,\n});\n\n/** Value -> scaled space (NaN when it has no place, e.g. log of <= 0) */\nexport const toScaled = (scale: PaneScale, value: number): number => {\n switch (scale.mode) {\n case \"log\":\n return value > 0 ? Math.log10(value) : NaN;\n case \"percent\":\n return scale.base ? (value / scale.base - 1) * 100 : NaN;\n default:\n return value;\n }\n};\n\nexport const fromScaled = (scale: PaneScale, scaled: number): number => {\n switch (scale.mode) {\n case \"log\":\n return 10 ** scaled;\n case \"percent\":\n return (scaled / 100 + 1) * scale.base;\n default:\n return scaled;\n }\n};\n\n/** Inner band of the pane holding the range (CSS px) */\nconst band = (scale: PaneScale) => {\n const top = scale.top + scale.height * scale.marginTop;\n const h = scale.height * (1 - scale.marginTop - scale.marginBottom);\n return { top, h: Math.max(1, h) };\n};\n\n/** CSS y of a scaled value */\nexport const yOfScaled = (scale: PaneScale, scaled: number): number => {\n const { top, h } = band(scale);\n const span = scale.max - scale.min || 1;\n return top + ((scale.max - scaled) / span) * h;\n};\n\n/** CSS y of a value */\nexport const yOf = (scale: PaneScale, value: number): number =>\n yOfScaled(scale, toScaled(scale, value));\n\n/** Scaled value at a CSS y */\nexport const scaledAt = (scale: PaneScale, y: number): number => {\n const { top, h } = band(scale);\n return scale.max - ((y - top) / h) * (scale.max - scale.min || 1);\n};\n\n/** Value at a CSS y */\nexport const valueAt = (scale: PaneScale, y: number): number =>\n fromScaled(scale, scaledAt(scale, y));\n\n/**\n * Fits the scale to a range of scaled values; a flat range gets some room\n * around it, a missing one keeps the current range\n */\nexport const fitScale = (scale: PaneScale, lo: number, hi: number): void => {\n let a = lo;\n let b = hi;\n if (!Number.isFinite(a) || !Number.isFinite(b)) {\n if (!Number.isFinite(scale.min) || !Number.isFinite(scale.max)) {\n scale.min = 0;\n scale.max = 1;\n }\n return;\n }\n if (a > b) [a, b] = [b, a];\n if (b - a < 1e-12 * Math.max(1, Math.abs(a))) {\n const pad =\n scale.mode === \"log\" ? 0.01 : Math.max(Math.abs(a) * 0.01, 1e-8) || 1;\n a -= pad;\n b += pad;\n }\n scale.min = a;\n scale.max = b;\n};\n\n/** Zooms the range around its center (factor > 1 shows more) */\nexport const zoomScale = (scale: PaneScale, factor: number): void => {\n const mid = (scale.min + scale.max) / 2;\n const half = ((scale.max - scale.min) / 2) * factor;\n if (!(half > 0) || !Number.isFinite(half)) return;\n scale.min = mid - half;\n scale.max = mid + half;\n scale.auto = false;\n};\n\n/** Moves the range by a number of CSS pixels (positive: content goes down) */\nexport const panScale = (scale: PaneScale, dy: number): void => {\n const { h } = band(scale);\n const delta = (dy / h) * (scale.max - scale.min);\n scale.min += delta;\n scale.max += delta;\n scale.auto = false;\n};\n\n/** Rounds to 2 significant digits (1, 1.5, 2, 2.5, 3, ...) for log ticks */\nconst niceRound = (value: number): number => {\n if (!(value > 0)) return value;\n const power = 10 ** Math.floor(Math.log10(value));\n const m = value / power;\n const steps = [1, 1.2, 1.5, 2, 2.5, 3, 4, 5, 6, 7, 8, 10];\n let best = steps[0];\n for (const s of steps) if (Math.abs(s - m) < Math.abs(best - m)) best = s;\n return best * power;\n};\n\n/**\n * Ticks of the scale in scaled space, about `minGap` CSS pixels apart.\n * Log ticks are rounded prices; percent ticks are round percents.\n */\nexport const scaleTicks = (\n scale: PaneScale,\n minGap = 36,\n): { scaled: number[]; step: number } => {\n const { h } = band(scale);\n // the range covered by the whole pane, margins included\n const span = scale.max - scale.min;\n const extra = (span * scale.height) / h;\n const lo = scale.max - extra * (1 - scale.marginTop) - 1e-12;\n const hi = scale.max + extra * scale.marginTop + 1e-12;\n const count = Math.max(2, Math.floor(scale.height / minGap));\n const step = tickStep(lo, hi, count);\n if (!(step > 0)) return { scaled: [], step: 0 };\n const scaled: number[] = [];\n if (scale.mode === \"log\") {\n let previous = NaN;\n for (let t = Math.ceil(lo / step) * step; t <= hi; t += step) {\n const price = niceRound(10 ** t);\n const s = Math.log10(price);\n if (s === previous || s < lo || s > hi) continue;\n // keep the ticks at least half the gap apart once rounded\n if (\n scaled.length &&\n ((s - scaled[scaled.length - 1]) / extra) * scale.height < minGap * 0.5\n )\n continue;\n scaled.push(s);\n previous = s;\n }\n return { scaled, step };\n }\n const start = Math.ceil(lo / step - 1e-9);\n const end = Math.floor(hi / step + 1e-9);\n for (let i = start; i <= end && scaled.length < 200; i++)\n scaled.push(i * step);\n return { scaled, step };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { TradingScaleMode } from './types.cjs';
|
|
2
|
+
export interface PaneScale {
|
|
3
|
+
mode: TradingScaleMode;
|
|
4
|
+
/** Fits the visible values (off after the user zoomed the scale) */
|
|
5
|
+
auto: boolean;
|
|
6
|
+
/** Visible range in scaled space */
|
|
7
|
+
min: number;
|
|
8
|
+
max: number;
|
|
9
|
+
/** Base price of the percent mode */
|
|
10
|
+
base: number;
|
|
11
|
+
/** Pane position in CSS pixels */
|
|
12
|
+
top: number;
|
|
13
|
+
height: number;
|
|
14
|
+
/** Empty space above / below the values, as fractions of the height */
|
|
15
|
+
marginTop: number;
|
|
16
|
+
marginBottom: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const createScale: (mode?: TradingScaleMode) => PaneScale;
|
|
19
|
+
/** Value -> scaled space (NaN when it has no place, e.g. log of <= 0) */
|
|
20
|
+
export declare const toScaled: (scale: PaneScale, value: number) => number;
|
|
21
|
+
export declare const fromScaled: (scale: PaneScale, scaled: number) => number;
|
|
22
|
+
/** CSS y of a scaled value */
|
|
23
|
+
export declare const yOfScaled: (scale: PaneScale, scaled: number) => number;
|
|
24
|
+
/** CSS y of a value */
|
|
25
|
+
export declare const yOf: (scale: PaneScale, value: number) => number;
|
|
26
|
+
/** Scaled value at a CSS y */
|
|
27
|
+
export declare const scaledAt: (scale: PaneScale, y: number) => number;
|
|
28
|
+
/** Value at a CSS y */
|
|
29
|
+
export declare const valueAt: (scale: PaneScale, y: number) => number;
|
|
30
|
+
/**
|
|
31
|
+
* Fits the scale to a range of scaled values; a flat range gets some room
|
|
32
|
+
* around it, a missing one keeps the current range
|
|
33
|
+
*/
|
|
34
|
+
export declare const fitScale: (scale: PaneScale, lo: number, hi: number) => void;
|
|
35
|
+
/** Zooms the range around its center (factor > 1 shows more) */
|
|
36
|
+
export declare const zoomScale: (scale: PaneScale, factor: number) => void;
|
|
37
|
+
/** Moves the range by a number of CSS pixels (positive: content goes down) */
|
|
38
|
+
export declare const panScale: (scale: PaneScale, dy: number) => void;
|
|
39
|
+
/**
|
|
40
|
+
* Ticks of the scale in scaled space, about `minGap` CSS pixels apart.
|
|
41
|
+
* Log ticks are rounded prices; percent ticks are round percents.
|
|
42
|
+
*/
|
|
43
|
+
export declare const scaleTicks: (scale: PaneScale, minGap?: number) => {
|
|
44
|
+
scaled: number[];
|
|
45
|
+
step: number;
|
|
46
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { TradingScaleMode } from './types.js';
|
|
2
|
+
export interface PaneScale {
|
|
3
|
+
mode: TradingScaleMode;
|
|
4
|
+
/** Fits the visible values (off after the user zoomed the scale) */
|
|
5
|
+
auto: boolean;
|
|
6
|
+
/** Visible range in scaled space */
|
|
7
|
+
min: number;
|
|
8
|
+
max: number;
|
|
9
|
+
/** Base price of the percent mode */
|
|
10
|
+
base: number;
|
|
11
|
+
/** Pane position in CSS pixels */
|
|
12
|
+
top: number;
|
|
13
|
+
height: number;
|
|
14
|
+
/** Empty space above / below the values, as fractions of the height */
|
|
15
|
+
marginTop: number;
|
|
16
|
+
marginBottom: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const createScale: (mode?: TradingScaleMode) => PaneScale;
|
|
19
|
+
/** Value -> scaled space (NaN when it has no place, e.g. log of <= 0) */
|
|
20
|
+
export declare const toScaled: (scale: PaneScale, value: number) => number;
|
|
21
|
+
export declare const fromScaled: (scale: PaneScale, scaled: number) => number;
|
|
22
|
+
/** CSS y of a scaled value */
|
|
23
|
+
export declare const yOfScaled: (scale: PaneScale, scaled: number) => number;
|
|
24
|
+
/** CSS y of a value */
|
|
25
|
+
export declare const yOf: (scale: PaneScale, value: number) => number;
|
|
26
|
+
/** Scaled value at a CSS y */
|
|
27
|
+
export declare const scaledAt: (scale: PaneScale, y: number) => number;
|
|
28
|
+
/** Value at a CSS y */
|
|
29
|
+
export declare const valueAt: (scale: PaneScale, y: number) => number;
|
|
30
|
+
/**
|
|
31
|
+
* Fits the scale to a range of scaled values; a flat range gets some room
|
|
32
|
+
* around it, a missing one keeps the current range
|
|
33
|
+
*/
|
|
34
|
+
export declare const fitScale: (scale: PaneScale, lo: number, hi: number) => void;
|
|
35
|
+
/** Zooms the range around its center (factor > 1 shows more) */
|
|
36
|
+
export declare const zoomScale: (scale: PaneScale, factor: number) => void;
|
|
37
|
+
/** Moves the range by a number of CSS pixels (positive: content goes down) */
|
|
38
|
+
export declare const panScale: (scale: PaneScale, dy: number) => void;
|
|
39
|
+
/**
|
|
40
|
+
* Ticks of the scale in scaled space, about `minGap` CSS pixels apart.
|
|
41
|
+
* Log ticks are rounded prices; percent ticks are round percents.
|
|
42
|
+
*/
|
|
43
|
+
export declare const scaleTicks: (scale: PaneScale, minGap?: number) => {
|
|
44
|
+
scaled: number[];
|
|
45
|
+
step: number;
|
|
46
|
+
};
|