minerva-design 1.3.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 +9 -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 +7 -2
- package/dist/charts/canvas.d.ts +7 -2
- package/dist/charts/core.cjs +1 -1
- package/dist/charts/core.d.cts +7 -4
- package/dist/charts/core.d.ts +7 -4
- package/dist/charts/core.js +19 -8
- 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 +118 -68
- package/dist/charts/engine/canvas.js.map +1 -1
- package/dist/charts/engine/chart.cjs +1 -1
- 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 +307 -285
- 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.js +2 -2
- package/dist/charts/engine/color.js.map +1 -1
- package/dist/charts/engine/controller.cjs +1 -1
- package/dist/charts/engine/controller.cjs.map +1 -1
- package/dist/charts/engine/controller.d.cts +12 -3
- package/dist/charts/engine/controller.d.ts +12 -3
- package/dist/charts/engine/controller.js +359 -299
- package/dist/charts/engine/controller.js.map +1 -1
- package/dist/charts/engine/data.cjs +1 -1
- package/dist/charts/engine/data.cjs.map +1 -1
- package/dist/charts/engine/data.d.cts +6 -0
- package/dist/charts/engine/data.d.ts +6 -0
- package/dist/charts/engine/data.js +63 -49
- package/dist/charts/engine/data.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 +211 -54
- 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 +39 -1
- package/dist/charts/engine/model.d.ts +39 -1
- package/dist/charts/engine/model.js +212 -105
- 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 -2
- package/dist/charts/engine/overlay.d.ts +18 -2
- package/dist/charts/engine/overlay.js +132 -96
- 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 +249 -1
- package/dist/charts/engine/presets.d.ts +249 -1
- package/dist/charts/engine/presets.js +367 -29
- package/dist/charts/engine/presets.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/shaders.cjs +143 -1
- package/dist/charts/engine/renderers/shaders.cjs.map +1 -1
- package/dist/charts/engine/renderers/shaders.d.cts +16 -0
- package/dist/charts/engine/renderers/shaders.d.ts +16 -0
- package/dist/charts/engine/renderers/shaders.js +139 -1
- package/dist/charts/engine/renderers/shaders.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 +59 -108
- package/dist/charts/engine/renderers/webgl2.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 +14 -4
- package/dist/charts/engine/scene.d.ts +14 -4
- package/dist/charts/engine/scene.js +292 -163
- 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 +1 -1
- package/dist/charts/engine/shapes/canvas.cjs.map +1 -1
- package/dist/charts/engine/shapes/canvas.d.cts +7 -0
- package/dist/charts/engine/shapes/canvas.d.ts +7 -0
- package/dist/charts/engine/shapes/canvas.js +22 -13
- package/dist/charts/engine/shapes/canvas.js.map +1 -1
- package/dist/charts/engine/shapes/chart.cjs +1 -1
- package/dist/charts/engine/shapes/chart.cjs.map +1 -1
- package/dist/charts/engine/shapes/chart.d.cts +3 -2
- package/dist/charts/engine/shapes/chart.d.ts +3 -2
- package/dist/charts/engine/shapes/chart.js +45 -26
- package/dist/charts/engine/shapes/chart.js.map +1 -1
- package/dist/charts/engine/shapes/draw.cjs +1 -1
- package/dist/charts/engine/shapes/draw.cjs.map +1 -1
- package/dist/charts/engine/shapes/draw.d.cts +3 -1
- package/dist/charts/engine/shapes/draw.d.ts +3 -1
- package/dist/charts/engine/shapes/draw.js +31 -18
- package/dist/charts/engine/shapes/draw.js.map +1 -1
- package/dist/charts/engine/shapes/funnel.cjs +1 -1
- package/dist/charts/engine/shapes/funnel.cjs.map +1 -1
- package/dist/charts/engine/shapes/funnel.js +3 -3
- package/dist/charts/engine/shapes/funnel.js.map +1 -1
- package/dist/charts/engine/shapes/gauge.cjs +1 -1
- package/dist/charts/engine/shapes/gauge.cjs.map +1 -1
- package/dist/charts/engine/shapes/gauge.js +132 -95
- package/dist/charts/engine/shapes/gauge.js.map +1 -1
- package/dist/charts/engine/shapes/hit.cjs +1 -1
- package/dist/charts/engine/shapes/hit.cjs.map +1 -1
- package/dist/charts/engine/shapes/hit.d.cts +3 -1
- package/dist/charts/engine/shapes/hit.d.ts +3 -1
- package/dist/charts/engine/shapes/hit.js +29 -8
- package/dist/charts/engine/shapes/hit.js.map +1 -1
- package/dist/charts/engine/shapes/index.d.cts +4 -1
- package/dist/charts/engine/shapes/index.d.ts +4 -1
- 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 +2 -2
- package/dist/charts/engine/shapes/layout.cjs.map +1 -1
- package/dist/charts/engine/shapes/layout.d.cts +8 -3
- package/dist/charts/engine/shapes/layout.d.ts +8 -3
- package/dist/charts/engine/shapes/layout.js +200 -113
- package/dist/charts/engine/shapes/layout.js.map +1 -1
- package/dist/charts/engine/shapes/pie.cjs +1 -1
- package/dist/charts/engine/shapes/pie.cjs.map +1 -1
- package/dist/charts/engine/shapes/pie.js +2 -2
- package/dist/charts/engine/shapes/pie.js.map +1 -1
- package/dist/charts/engine/shapes/radar.cjs +1 -1
- package/dist/charts/engine/shapes/radar.cjs.map +1 -1
- package/dist/charts/engine/shapes/radar.d.cts +2 -2
- package/dist/charts/engine/shapes/radar.d.ts +2 -2
- package/dist/charts/engine/shapes/radar.js +50 -49
- package/dist/charts/engine/shapes/radar.js.map +1 -1
- 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 +1 -1
- package/dist/charts/engine/shapes/runtime.cjs.map +1 -1
- package/dist/charts/engine/shapes/runtime.d.cts +9 -2
- package/dist/charts/engine/shapes/runtime.d.ts +9 -2
- package/dist/charts/engine/shapes/runtime.js +61 -51
- package/dist/charts/engine/shapes/runtime.js.map +1 -1
- 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 +1 -1
- package/dist/charts/engine/shapes/scene.cjs.map +1 -1
- package/dist/charts/engine/shapes/scene.d.cts +62 -8
- package/dist/charts/engine/shapes/scene.d.ts +62 -8
- package/dist/charts/engine/shapes/scene.js +33 -31
- package/dist/charts/engine/shapes/scene.js.map +1 -1
- 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 +1 -1
- package/dist/charts/engine/shapes/treemap.cjs.map +1 -1
- package/dist/charts/engine/shapes/treemap.js +2 -2
- package/dist/charts/engine/shapes/treemap.js.map +1 -1
- package/dist/charts/engine/shapes/types.d.cts +439 -12
- package/dist/charts/engine/shapes/types.d.ts +439 -12
- 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 +165 -14
- package/dist/charts/engine/types.d.ts +165 -14
- package/dist/charts/index.cjs +1 -1
- package/dist/charts/index.d.cts +7 -4
- package/dist/charts/index.d.ts +7 -4
- package/dist/charts/index.js +22 -11
- package/dist/charts/react/Chart.cjs +1 -1
- package/dist/charts/react/Chart.cjs.map +1 -1
- package/dist/charts/react/Chart.d.cts +4 -4
- package/dist/charts/react/Chart.d.ts +4 -4
- package/dist/charts/react/Chart.js +5 -1
- 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 +39 -1
- package/dist/charts/react/charts.d.ts +39 -1
- package/dist/charts/react/charts.js +303 -131
- 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 +1 -1
- package/dist/charts/react/shapes.cjs.map +1 -1
- package/dist/charts/react/shapes.d.cts +291 -9
- package/dist/charts/react/shapes.d.ts +291 -9
- package/dist/charts/react/shapes.js +280 -93
- package/dist/charts/react/shapes.js.map +1 -1
- 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 +132 -8
- package/dist/charts/react/types.d.ts +132 -8
- 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/controller.cjs +1 -1
- package/dist/native/charts/src/engine/controller.cjs.map +1 -1
- package/dist/native/charts/src/engine/controller.js +352 -292
- package/dist/native/charts/src/engine/controller.js.map +1 -1
- 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 +63 -49
- 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 +223 -116
- 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 +46 -23
- 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 +448 -33
- 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 +296 -167
- 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/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 +234 -217
- 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 +154 -84
- 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 +7517 -1856
- 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 +8 -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 +1433 -4478
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"orderbook.cjs","names":["resolveLocale","useRef","createDepthChart","createOrderBook","createOrderBookHeatmap","createTimeAndSales","require_locale","require_depth","require_heatmap","require_ladder","require_tape","react","react_jsx_runtime","size","value","fallback","sameValue","a","b","v","i","ka","k","sameOptions","kb","localeOf","options","useWidget","containerRef","instanceRef","optionsRef","localeRef","handlersRef","handlers","container","instance","factory","offs","connect","off","locale","useBook","book","useTrades","previousRef","targetRef","addRef","add","replaceRef","replace","target","previous","trades","n","Frame","width","height","fallbackHeight","style","connectDepth","chart","h","r","DepthChart","ref","snapshot","deltas","range","connectLadder","OrderBook","lastPrice","price","connectHeatmap","heatmap","f","OrderBookHeatmap","list","connectTape","tape","p","TimeAndSales"],"sources":["../../../../charts/src/react/orderbook.tsx"],"sourcesContent":["// React components of the order book module (depth chart, order book\n// ladder, liquidity heatmap, time and sales), re-exported by index.ts. Each\n// one mounts its engine once; options are forwarded when they change and\n// streams go through the ref handle (`applyDeltas`, `addTrades`) without\n// re-rendering React.\n\nimport {\n useEffect,\n useImperativeHandle,\n useRef,\n type CSSProperties,\n type Ref,\n type RefObject,\n} from \"react\";\nimport { resolveLocale } from \"../engine/locale\";\nimport { createDepthChart } from \"../engine/orderbook/depth\";\nimport { createOrderBookHeatmap } from \"../engine/orderbook/heatmap\";\nimport { createOrderBook } from \"../engine/orderbook/ladder\";\nimport { createTimeAndSales } from \"../engine/orderbook/tape\";\nimport type {\n DepthChartHoverEvent,\n DepthChartInstance,\n DepthChartOptions,\n MarketTrade,\n OrderBookDelta,\n OrderBookHeatmapHoverEvent,\n OrderBookHeatmapInstance,\n OrderBookHeatmapOptions,\n OrderBookInstance,\n OrderBookLevelEvent,\n OrderBookOptions,\n OrderBookSnapshot,\n TimeAndSalesInstance,\n TimeAndSalesOptions,\n TimeAndSalesRowEvent,\n} from \"../engine/orderbook/types\";\nimport type { ChartRendererKind } from \"../engine/types\";\n\n/** Container props shared by the order book components */\nexport interface OrderBookWidgetProps {\n /** Height of the widget; numbers are pixels */\n height?: number | string;\n /**\n * Width of the widget; numbers are pixels\n * @default \"100%\"\n */\n width?: number | string;\n /** Class of the container */\n className?: string;\n /** Style of the container */\n style?: CSSProperties;\n}\n\n/** Imperative handle of `DepthChart` */\nexport interface DepthChartHandle {\n /** Replaces the book */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (size 0 removes a level); drawn once at the next frame */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Sets the visible range (fraction of the mid); `null` fits the book */\n setRange(range: number | null): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): DepthChartInstance | null;\n}\n\n/** Props of `DepthChart` */\nexport interface DepthChartProps\n extends DepthChartOptions, OrderBookWidgetProps {\n /** Book to draw, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Pointer over the curves (`null` when it leaves) */\n onHover?: (event: DepthChartHoverEvent | null) => void;\n /** Click / tap on the curves */\n onClick?: (event: DepthChartHoverEvent) => void;\n /** The visible range changed by zooming (fraction of the mid) */\n onRangeChange?: (range: number) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `setRange` */\n ref?: Ref<DepthChartHandle>;\n}\n\n/** Imperative handle of `OrderBook` */\nexport interface OrderBookHandle {\n /** Replaces the book */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (size 0 removes a level); drawn once at the next frame */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Price of the spread row (the mid price when `null`) */\n setLastPrice(price: number | null): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): OrderBookInstance | null;\n}\n\n/** Props of `OrderBook` */\nexport interface OrderBookProps extends OrderBookOptions, OrderBookWidgetProps {\n /** Book to draw, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Price of the spread row, colored by its last move; the mid price when omitted */\n lastPrice?: number | null;\n /** Hovered row (`null` when the pointer leaves) */\n onHover?: (level: OrderBookLevelEvent | null) => void;\n /** Click / tap / Enter on a row (e.g. to fill a price in an order form) */\n onLevelClick?: (level: OrderBookLevelEvent) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `setLastPrice` */\n ref?: Ref<OrderBookHandle>;\n}\n\n/** Imperative handle of `OrderBookHeatmap` */\nexport interface OrderBookHeatmapHandle {\n /** Replaces the book (closes the columns up to its time) */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (closes the columns up to their time) */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Adds trades (bubbles) */\n addTrades(trades: MarketTrade | readonly MarketTrade[]): void;\n /** Follows the market again */\n resetView(): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): OrderBookHeatmapInstance | null;\n}\n\n/** Props of `OrderBookHeatmap` */\nexport interface OrderBookHeatmapProps\n extends OrderBookHeatmapOptions, OrderBookWidgetProps {\n /** Book, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Trades; when the array grows, only the appended ones are added */\n trades?: readonly MarketTrade[];\n /** Hovered cell (`null` when the pointer leaves) */\n onHover?: (event: OrderBookHeatmapHoverEvent | null) => void;\n /** Backend in use (also after a GPU loss) */\n onRendererChange?: (renderer: ChartRendererKind) => void;\n /** `true` while the view follows the market, `false` after a zoom / pan */\n onFollowChange?: (follow: boolean) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `addTrades`, `resetView` */\n ref?: Ref<OrderBookHeatmapHandle>;\n}\n\n/** Imperative handle of `TimeAndSales` */\nexport interface TimeAndSalesHandle {\n /** Appends trades (oldest first) */\n addTrades(trades: MarketTrade | readonly MarketTrade[]): void;\n /** Replaces every trade */\n setTrades(trades: readonly MarketTrade[]): void;\n /** Removes every trade */\n clear(): void;\n /** Scrolls back to the newest trade and resumes */\n scrollToLatest(): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): TimeAndSalesInstance | null;\n}\n\n/** Props of `TimeAndSales` */\nexport interface TimeAndSalesProps\n extends TimeAndSalesOptions, OrderBookWidgetProps {\n /**\n * Trades, oldest first; when the array grows, only the appended ones are\n * added (other changes replace the tape)\n */\n trades?: readonly MarketTrade[];\n /** Hovered row (`null` when the pointer leaves) */\n onHover?: (row: TimeAndSalesRowEvent | null) => void;\n /** Click / tap / Enter on a row */\n onTradeClick?: (row: TimeAndSalesRowEvent) => void;\n /** The tape paused (pointer over it, scrolled down) or resumed */\n onPause?: (paused: boolean) => void;\n /** Imperative handle: `addTrades`, `setTrades`, `clear`, `scrollToLatest` */\n ref?: Ref<TimeAndSalesHandle>;\n}\n\n// ------------------------------------------------------------------ shared\n\nconst size = (value: number | string | undefined, fallback: string) =>\n value === undefined\n ? fallback\n : typeof value === \"number\"\n ? `${value}px`\n : value;\n\n/** Identical values, or inline arrays / objects with identical items */\nconst sameValue = (a: unknown, b: unknown): boolean => {\n if (a === b) return true;\n if (Array.isArray(a) && Array.isArray(b))\n return a.length === b.length && a.every((v, i) => v === b[i]);\n if (\n typeof a !== \"object\" ||\n typeof b !== \"object\" ||\n a === null ||\n b === null ||\n Object.getPrototypeOf(a) !== Object.prototype ||\n Object.getPrototypeOf(b) !== Object.prototype\n )\n return false;\n const ka = Object.keys(a);\n return (\n ka.length === Object.keys(b).length &&\n ka.every(\n (k) =>\n (a as Record<string, unknown>)[k] === (b as Record<string, unknown>)[k],\n )\n );\n};\n\n/** Same options, one level deep (inline `labels={{ … }}` stays equal) */\nconst sameOptions = (a: object, b: object): boolean => {\n const ka = Object.keys(a).filter(\n (k) => (a as Record<string, unknown>)[k] !== undefined,\n );\n const kb = Object.keys(b).filter(\n (k) => (b as Record<string, unknown>)[k] !== undefined,\n );\n return (\n ka.length === kb.length &&\n ka.every((k) =>\n sameValue(\n (a as Record<string, unknown>)[k],\n (b as Record<string, unknown>)[k],\n ),\n )\n );\n};\n\ninterface Widget<O> {\n setOptions(options: O): void;\n destroy(): void;\n}\n\n/** Locale the engine resolves for `options` (the page language by default) */\nconst localeOf = (options: object): string =>\n resolveLocale((options as { locale?: string }).locale);\n\n/**\n * Mounts an engine widget once, forwards option changes and subscribes the\n * handlers (read through a ref: inline callbacks never re-subscribe). The\n * options are applied again when the page language (`<html lang>`) changed,\n * so the built-in texts follow a language switch.\n */\nfunction useWidget<O extends object, I extends Widget<O>, H>(\n factory: (container: HTMLElement, options: O) => I,\n options: O,\n handlers: H,\n connect: (instance: I, handlers: () => H) => (() => void)[],\n): {\n containerRef: RefObject<HTMLDivElement | null>;\n instanceRef: RefObject<I | null>;\n} {\n const containerRef = useRef<HTMLDivElement>(null);\n const instanceRef = useRef<I | null>(null);\n const optionsRef = useRef(options);\n const localeRef = useRef(\"\");\n const handlersRef = useRef(handlers);\n\n useEffect(() => {\n handlersRef.current = handlers;\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) return;\n localeRef.current = localeOf(optionsRef.current);\n const instance = factory(container, optionsRef.current);\n instanceRef.current = instance;\n const offs = connect(instance, () => handlersRef.current);\n return () => {\n offs.forEach((off) => off());\n instance.destroy();\n instanceRef.current = null;\n };\n }, [factory, connect]);\n\n useEffect(() => {\n const locale = localeOf(options);\n if (\n sameOptions(optionsRef.current, options) &&\n locale === localeRef.current\n )\n return;\n optionsRef.current = options;\n localeRef.current = locale;\n instanceRef.current?.setOptions(options);\n });\n\n return { containerRef, instanceRef };\n}\n\n/** Applies `book` when the object changes */\nfunction useBook(\n instanceRef: RefObject<{ setBook(s: OrderBookSnapshot): void } | null>,\n book: OrderBookSnapshot | undefined,\n) {\n useEffect(() => {\n if (book) instanceRef.current?.setBook(book);\n }, [instanceRef, book]);\n}\n\n/** Adds the trades appended to `trades`; `replace` gets any other change */\nfunction useTrades(\n instanceRef: RefObject<object | null>,\n trades: readonly MarketTrade[] | undefined,\n add: (trades: readonly MarketTrade[]) => void,\n replace: (trades: readonly MarketTrade[]) => void,\n) {\n const previousRef = useRef<readonly MarketTrade[] | undefined>(undefined);\n /** Instance that received `previousRef` (a remount starts over) */\n const targetRef = useRef<object | null>(null);\n const addRef = useRef(add);\n const replaceRef = useRef(replace);\n useEffect(() => {\n addRef.current = add;\n replaceRef.current = replace;\n });\n useEffect(() => {\n const target = instanceRef.current;\n const previous =\n targetRef.current === target ? previousRef.current : undefined;\n previousRef.current = trades;\n targetRef.current = target;\n if (!trades || trades === previous) return;\n const n = previous?.length ?? 0;\n // a grown array (same items in front): only the new ones\n if (\n previous &&\n n > 0 &&\n trades.length >= n &&\n trades[n - 1] === previous[n - 1] &&\n trades[0] === previous[0]\n ) {\n if (trades.length > n) addRef.current(trades.slice(n));\n return;\n }\n replaceRef.current(trades);\n }, [instanceRef, trades]);\n}\n\nfunction Frame({\n containerRef,\n height,\n width,\n className,\n style,\n fallbackHeight,\n}: OrderBookWidgetProps & {\n containerRef: RefObject<HTMLDivElement | null>;\n fallbackHeight: string;\n}) {\n return (\n <div\n className={className}\n style={{\n position: \"relative\",\n width: size(width, \"100%\"),\n height: size(height, fallbackHeight),\n ...style,\n }}\n >\n <div ref={containerRef} style={{ position: \"absolute\", inset: 0 }} />\n </div>\n );\n}\n\n// -------------------------------------------------------------- depth chart\n\ninterface DepthHandlers {\n onHover?: DepthChartProps[\"onHover\"];\n onClick?: DepthChartProps[\"onClick\"];\n onRangeChange?: DepthChartProps[\"onRangeChange\"];\n}\n\nconst connectDepth = (chart: DepthChartInstance, h: () => DepthHandlers) => [\n chart.on(\"hover\", (e) => h().onHover?.(e)),\n chart.on(\"click\", (e) => h().onClick?.(e)),\n chart.on(\"range\", (r) => h().onRangeChange?.(r)),\n];\n\n/**\n * Cumulative depth of an order book: stepped bid / ask areas around the mid\n * price, mirrored hover readout, zoom around the mid, eased updates.\n */\nexport function DepthChart({\n height,\n width,\n className,\n style,\n book,\n onHover,\n onClick,\n onRangeChange,\n ref,\n ...options\n}: DepthChartProps) {\n const { containerRef, instanceRef } = useWidget(\n createDepthChart,\n options,\n { onHover, onClick, onRangeChange },\n connectDepth,\n );\n useBook(instanceRef, book);\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n setRange: (range) => instanceRef.current?.setRange(range),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"320px\"\n />\n );\n}\n\n// --------------------------------------------------------------- order book\n\ninterface LadderHandlers {\n onHover?: OrderBookProps[\"onHover\"];\n onLevelClick?: OrderBookProps[\"onLevelClick\"];\n}\n\nconst connectLadder = (book: OrderBookInstance, h: () => LadderHandlers) => [\n book.on(\"hover\", (e) => h().onHover?.(e)),\n book.on(\"levelClick\", (e) => h().onLevelClick?.(e)),\n];\n\n/**\n * Order book ladder: asks above the spread row, bids below, with depth\n * bars, price grouping, change flashes and large order highlight.\n */\nexport function OrderBook({\n height,\n width,\n className,\n style,\n book,\n lastPrice,\n onHover,\n onLevelClick,\n ref,\n ...options\n}: OrderBookProps) {\n const { containerRef, instanceRef } = useWidget(\n createOrderBook,\n options,\n { onHover, onLevelClick },\n connectLadder,\n );\n useBook(instanceRef, book);\n useEffect(() => {\n if (lastPrice !== undefined) instanceRef.current?.setLastPrice(lastPrice);\n }, [instanceRef, lastPrice]);\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n setLastPrice: (price) => instanceRef.current?.setLastPrice(price),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"420px\"\n />\n );\n}\n\n// ------------------------------------------------------------------ heatmap\n\ninterface HeatmapHandlers {\n onHover?: OrderBookHeatmapProps[\"onHover\"];\n onRendererChange?: OrderBookHeatmapProps[\"onRendererChange\"];\n onFollowChange?: OrderBookHeatmapProps[\"onFollowChange\"];\n}\n\nconst connectHeatmap = (\n heatmap: OrderBookHeatmapInstance,\n h: () => HeatmapHandlers,\n) => [\n heatmap.on(\"hover\", (e) => h().onHover?.(e)),\n heatmap.on(\"renderer\", (r) => h().onRendererChange?.(r)),\n heatmap.on(\"follow\", (f) => h().onFollowChange?.(f)),\n];\n\n/**\n * Liquidity heatmap: resting size over time and price drawn by the GPU,\n * best bid / ask lines and trades as bubbles sized by volume.\n */\nexport function OrderBookHeatmap({\n height,\n width,\n className,\n style,\n book,\n trades,\n onHover,\n onRendererChange,\n onFollowChange,\n ref,\n ...options\n}: OrderBookHeatmapProps) {\n const { containerRef, instanceRef } = useWidget(\n createOrderBookHeatmap,\n options,\n { onHover, onRendererChange, onFollowChange },\n connectHeatmap,\n );\n useBook(instanceRef, book);\n useTrades(\n instanceRef,\n trades,\n (list) => instanceRef.current?.addTrades(list),\n (list) => instanceRef.current?.addTrades(list),\n );\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n addTrades: (list) => instanceRef.current?.addTrades(list),\n resetView: () => instanceRef.current?.resetView(),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"360px\"\n />\n );\n}\n\n// ----------------------------------------------------------- time and sales\n\ninterface TapeHandlers {\n onHover?: TimeAndSalesProps[\"onHover\"];\n onTradeClick?: TimeAndSalesProps[\"onTradeClick\"];\n onPause?: TimeAndSalesProps[\"onPause\"];\n}\n\nconst connectTape = (tape: TimeAndSalesInstance, h: () => TapeHandlers) => [\n tape.on(\"hover\", (e) => h().onHover?.(e)),\n tape.on(\"tradeClick\", (e) => h().onTradeClick?.(e)),\n tape.on(\"pause\", (p) => h().onPause?.(p)),\n];\n\n/**\n * Time and sales tape: newest trades on top, virtualized (hundreds of\n * thousands of rows), large trades highlighted, paused while hovered.\n */\nexport function TimeAndSales({\n height,\n width,\n className,\n style,\n trades,\n onHover,\n onTradeClick,\n onPause,\n ref,\n ...options\n}: TimeAndSalesProps) {\n const { containerRef, instanceRef } = useWidget(\n createTimeAndSales,\n options,\n { onHover, onTradeClick, onPause },\n connectTape,\n );\n useTrades(\n instanceRef,\n trades,\n (list) => instanceRef.current?.addTrades(list),\n (list) => instanceRef.current?.setTrades(list),\n );\n useImperativeHandle(\n ref,\n () => ({\n addTrades: (list) => instanceRef.current?.addTrades(list),\n setTrades: (list) => instanceRef.current?.setTrades(list),\n clear: () => instanceRef.current?.clear(),\n scrollToLatest: () => instanceRef.current?.scrollToLatest(),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"360px\"\n />\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { CSSProperties, Ref } from 'react';
|
|
2
|
+
import { DepthChartHoverEvent, DepthChartInstance, DepthChartOptions, MarketTrade, OrderBookDelta, OrderBookHeatmapHoverEvent, OrderBookHeatmapInstance, OrderBookHeatmapOptions, OrderBookInstance, OrderBookLevelEvent, OrderBookOptions, OrderBookSnapshot, TimeAndSalesInstance, TimeAndSalesOptions, TimeAndSalesRowEvent } from '../engine/orderbook/types.cjs';
|
|
3
|
+
import { ChartRendererKind } from '../engine/types.cjs';
|
|
4
|
+
/** Container props shared by the order book components */
|
|
5
|
+
export interface OrderBookWidgetProps {
|
|
6
|
+
/** Height of the widget; numbers are pixels */
|
|
7
|
+
height?: number | string;
|
|
8
|
+
/**
|
|
9
|
+
* Width of the widget; numbers are pixels
|
|
10
|
+
* @default "100%"
|
|
11
|
+
*/
|
|
12
|
+
width?: number | string;
|
|
13
|
+
/** Class of the container */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Style of the container */
|
|
16
|
+
style?: CSSProperties;
|
|
17
|
+
}
|
|
18
|
+
/** Imperative handle of `DepthChart` */
|
|
19
|
+
export interface DepthChartHandle {
|
|
20
|
+
/** Replaces the book */
|
|
21
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
22
|
+
/** Applies updates (size 0 removes a level); drawn once at the next frame */
|
|
23
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
24
|
+
/** Sets the visible range (fraction of the mid); `null` fits the book */
|
|
25
|
+
setRange(range: number | null): void;
|
|
26
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
27
|
+
getInstance(): DepthChartInstance | null;
|
|
28
|
+
}
|
|
29
|
+
/** Props of `DepthChart` */
|
|
30
|
+
export interface DepthChartProps extends DepthChartOptions, OrderBookWidgetProps {
|
|
31
|
+
/** Book to draw, applied when the object changes (stream updates through the ref) */
|
|
32
|
+
book?: OrderBookSnapshot;
|
|
33
|
+
/** Pointer over the curves (`null` when it leaves) */
|
|
34
|
+
onHover?: (event: DepthChartHoverEvent | null) => void;
|
|
35
|
+
/** Click / tap on the curves */
|
|
36
|
+
onClick?: (event: DepthChartHoverEvent) => void;
|
|
37
|
+
/** The visible range changed by zooming (fraction of the mid) */
|
|
38
|
+
onRangeChange?: (range: number) => void;
|
|
39
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `setRange` */
|
|
40
|
+
ref?: Ref<DepthChartHandle>;
|
|
41
|
+
}
|
|
42
|
+
/** Imperative handle of `OrderBook` */
|
|
43
|
+
export interface OrderBookHandle {
|
|
44
|
+
/** Replaces the book */
|
|
45
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
46
|
+
/** Applies updates (size 0 removes a level); drawn once at the next frame */
|
|
47
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
48
|
+
/** Price of the spread row (the mid price when `null`) */
|
|
49
|
+
setLastPrice(price: number | null): void;
|
|
50
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
51
|
+
getInstance(): OrderBookInstance | null;
|
|
52
|
+
}
|
|
53
|
+
/** Props of `OrderBook` */
|
|
54
|
+
export interface OrderBookProps extends OrderBookOptions, OrderBookWidgetProps {
|
|
55
|
+
/** Book to draw, applied when the object changes (stream updates through the ref) */
|
|
56
|
+
book?: OrderBookSnapshot;
|
|
57
|
+
/** Price of the spread row, colored by its last move; the mid price when omitted */
|
|
58
|
+
lastPrice?: number | null;
|
|
59
|
+
/** Hovered row (`null` when the pointer leaves) */
|
|
60
|
+
onHover?: (level: OrderBookLevelEvent | null) => void;
|
|
61
|
+
/** Click / tap / Enter on a row (e.g. to fill a price in an order form) */
|
|
62
|
+
onLevelClick?: (level: OrderBookLevelEvent) => void;
|
|
63
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `setLastPrice` */
|
|
64
|
+
ref?: Ref<OrderBookHandle>;
|
|
65
|
+
}
|
|
66
|
+
/** Imperative handle of `OrderBookHeatmap` */
|
|
67
|
+
export interface OrderBookHeatmapHandle {
|
|
68
|
+
/** Replaces the book (closes the columns up to its time) */
|
|
69
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
70
|
+
/** Applies updates (closes the columns up to their time) */
|
|
71
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
72
|
+
/** Adds trades (bubbles) */
|
|
73
|
+
addTrades(trades: MarketTrade | readonly MarketTrade[]): void;
|
|
74
|
+
/** Follows the market again */
|
|
75
|
+
resetView(): void;
|
|
76
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
77
|
+
getInstance(): OrderBookHeatmapInstance | null;
|
|
78
|
+
}
|
|
79
|
+
/** Props of `OrderBookHeatmap` */
|
|
80
|
+
export interface OrderBookHeatmapProps extends OrderBookHeatmapOptions, OrderBookWidgetProps {
|
|
81
|
+
/** Book, applied when the object changes (stream updates through the ref) */
|
|
82
|
+
book?: OrderBookSnapshot;
|
|
83
|
+
/** Trades; when the array grows, only the appended ones are added */
|
|
84
|
+
trades?: readonly MarketTrade[];
|
|
85
|
+
/** Hovered cell (`null` when the pointer leaves) */
|
|
86
|
+
onHover?: (event: OrderBookHeatmapHoverEvent | null) => void;
|
|
87
|
+
/** Backend in use (also after a GPU loss) */
|
|
88
|
+
onRendererChange?: (renderer: ChartRendererKind) => void;
|
|
89
|
+
/** `true` while the view follows the market, `false` after a zoom / pan */
|
|
90
|
+
onFollowChange?: (follow: boolean) => void;
|
|
91
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `addTrades`, `resetView` */
|
|
92
|
+
ref?: Ref<OrderBookHeatmapHandle>;
|
|
93
|
+
}
|
|
94
|
+
/** Imperative handle of `TimeAndSales` */
|
|
95
|
+
export interface TimeAndSalesHandle {
|
|
96
|
+
/** Appends trades (oldest first) */
|
|
97
|
+
addTrades(trades: MarketTrade | readonly MarketTrade[]): void;
|
|
98
|
+
/** Replaces every trade */
|
|
99
|
+
setTrades(trades: readonly MarketTrade[]): void;
|
|
100
|
+
/** Removes every trade */
|
|
101
|
+
clear(): void;
|
|
102
|
+
/** Scrolls back to the newest trade and resumes */
|
|
103
|
+
scrollToLatest(): void;
|
|
104
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
105
|
+
getInstance(): TimeAndSalesInstance | null;
|
|
106
|
+
}
|
|
107
|
+
/** Props of `TimeAndSales` */
|
|
108
|
+
export interface TimeAndSalesProps extends TimeAndSalesOptions, OrderBookWidgetProps {
|
|
109
|
+
/**
|
|
110
|
+
* Trades, oldest first; when the array grows, only the appended ones are
|
|
111
|
+
* added (other changes replace the tape)
|
|
112
|
+
*/
|
|
113
|
+
trades?: readonly MarketTrade[];
|
|
114
|
+
/** Hovered row (`null` when the pointer leaves) */
|
|
115
|
+
onHover?: (row: TimeAndSalesRowEvent | null) => void;
|
|
116
|
+
/** Click / tap / Enter on a row */
|
|
117
|
+
onTradeClick?: (row: TimeAndSalesRowEvent) => void;
|
|
118
|
+
/** The tape paused (pointer over it, scrolled down) or resumed */
|
|
119
|
+
onPause?: (paused: boolean) => void;
|
|
120
|
+
/** Imperative handle: `addTrades`, `setTrades`, `clear`, `scrollToLatest` */
|
|
121
|
+
ref?: Ref<TimeAndSalesHandle>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Cumulative depth of an order book: stepped bid / ask areas around the mid
|
|
125
|
+
* price, mirrored hover readout, zoom around the mid, eased updates.
|
|
126
|
+
*/
|
|
127
|
+
export declare function DepthChart({ height, width, className, style, book, onHover, onClick, onRangeChange, ref, ...options }: DepthChartProps): import('react').JSX.Element;
|
|
128
|
+
/**
|
|
129
|
+
* Order book ladder: asks above the spread row, bids below, with depth
|
|
130
|
+
* bars, price grouping, change flashes and large order highlight.
|
|
131
|
+
*/
|
|
132
|
+
export declare function OrderBook({ height, width, className, style, book, lastPrice, onHover, onLevelClick, ref, ...options }: OrderBookProps): import('react').JSX.Element;
|
|
133
|
+
/**
|
|
134
|
+
* Liquidity heatmap: resting size over time and price drawn by the GPU,
|
|
135
|
+
* best bid / ask lines and trades as bubbles sized by volume.
|
|
136
|
+
*/
|
|
137
|
+
export declare function OrderBookHeatmap({ height, width, className, style, book, trades, onHover, onRendererChange, onFollowChange, ref, ...options }: OrderBookHeatmapProps): import('react').JSX.Element;
|
|
138
|
+
/**
|
|
139
|
+
* Time and sales tape: newest trades on top, virtualized (hundreds of
|
|
140
|
+
* thousands of rows), large trades highlighted, paused while hovered.
|
|
141
|
+
*/
|
|
142
|
+
export declare function TimeAndSales({ height, width, className, style, trades, onHover, onTradeClick, onPause, ref, ...options }: TimeAndSalesProps): import('react').JSX.Element;
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { CSSProperties, Ref } from 'react';
|
|
2
|
+
import { DepthChartHoverEvent, DepthChartInstance, DepthChartOptions, MarketTrade, OrderBookDelta, OrderBookHeatmapHoverEvent, OrderBookHeatmapInstance, OrderBookHeatmapOptions, OrderBookInstance, OrderBookLevelEvent, OrderBookOptions, OrderBookSnapshot, TimeAndSalesInstance, TimeAndSalesOptions, TimeAndSalesRowEvent } from '../engine/orderbook/types.js';
|
|
3
|
+
import { ChartRendererKind } from '../engine/types.js';
|
|
4
|
+
/** Container props shared by the order book components */
|
|
5
|
+
export interface OrderBookWidgetProps {
|
|
6
|
+
/** Height of the widget; numbers are pixels */
|
|
7
|
+
height?: number | string;
|
|
8
|
+
/**
|
|
9
|
+
* Width of the widget; numbers are pixels
|
|
10
|
+
* @default "100%"
|
|
11
|
+
*/
|
|
12
|
+
width?: number | string;
|
|
13
|
+
/** Class of the container */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Style of the container */
|
|
16
|
+
style?: CSSProperties;
|
|
17
|
+
}
|
|
18
|
+
/** Imperative handle of `DepthChart` */
|
|
19
|
+
export interface DepthChartHandle {
|
|
20
|
+
/** Replaces the book */
|
|
21
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
22
|
+
/** Applies updates (size 0 removes a level); drawn once at the next frame */
|
|
23
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
24
|
+
/** Sets the visible range (fraction of the mid); `null` fits the book */
|
|
25
|
+
setRange(range: number | null): void;
|
|
26
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
27
|
+
getInstance(): DepthChartInstance | null;
|
|
28
|
+
}
|
|
29
|
+
/** Props of `DepthChart` */
|
|
30
|
+
export interface DepthChartProps extends DepthChartOptions, OrderBookWidgetProps {
|
|
31
|
+
/** Book to draw, applied when the object changes (stream updates through the ref) */
|
|
32
|
+
book?: OrderBookSnapshot;
|
|
33
|
+
/** Pointer over the curves (`null` when it leaves) */
|
|
34
|
+
onHover?: (event: DepthChartHoverEvent | null) => void;
|
|
35
|
+
/** Click / tap on the curves */
|
|
36
|
+
onClick?: (event: DepthChartHoverEvent) => void;
|
|
37
|
+
/** The visible range changed by zooming (fraction of the mid) */
|
|
38
|
+
onRangeChange?: (range: number) => void;
|
|
39
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `setRange` */
|
|
40
|
+
ref?: Ref<DepthChartHandle>;
|
|
41
|
+
}
|
|
42
|
+
/** Imperative handle of `OrderBook` */
|
|
43
|
+
export interface OrderBookHandle {
|
|
44
|
+
/** Replaces the book */
|
|
45
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
46
|
+
/** Applies updates (size 0 removes a level); drawn once at the next frame */
|
|
47
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
48
|
+
/** Price of the spread row (the mid price when `null`) */
|
|
49
|
+
setLastPrice(price: number | null): void;
|
|
50
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
51
|
+
getInstance(): OrderBookInstance | null;
|
|
52
|
+
}
|
|
53
|
+
/** Props of `OrderBook` */
|
|
54
|
+
export interface OrderBookProps extends OrderBookOptions, OrderBookWidgetProps {
|
|
55
|
+
/** Book to draw, applied when the object changes (stream updates through the ref) */
|
|
56
|
+
book?: OrderBookSnapshot;
|
|
57
|
+
/** Price of the spread row, colored by its last move; the mid price when omitted */
|
|
58
|
+
lastPrice?: number | null;
|
|
59
|
+
/** Hovered row (`null` when the pointer leaves) */
|
|
60
|
+
onHover?: (level: OrderBookLevelEvent | null) => void;
|
|
61
|
+
/** Click / tap / Enter on a row (e.g. to fill a price in an order form) */
|
|
62
|
+
onLevelClick?: (level: OrderBookLevelEvent) => void;
|
|
63
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `setLastPrice` */
|
|
64
|
+
ref?: Ref<OrderBookHandle>;
|
|
65
|
+
}
|
|
66
|
+
/** Imperative handle of `OrderBookHeatmap` */
|
|
67
|
+
export interface OrderBookHeatmapHandle {
|
|
68
|
+
/** Replaces the book (closes the columns up to its time) */
|
|
69
|
+
setBook(snapshot: OrderBookSnapshot): void;
|
|
70
|
+
/** Applies updates (closes the columns up to their time) */
|
|
71
|
+
applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;
|
|
72
|
+
/** Adds trades (bubbles) */
|
|
73
|
+
addTrades(trades: MarketTrade | readonly MarketTrade[]): void;
|
|
74
|
+
/** Follows the market again */
|
|
75
|
+
resetView(): void;
|
|
76
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
77
|
+
getInstance(): OrderBookHeatmapInstance | null;
|
|
78
|
+
}
|
|
79
|
+
/** Props of `OrderBookHeatmap` */
|
|
80
|
+
export interface OrderBookHeatmapProps extends OrderBookHeatmapOptions, OrderBookWidgetProps {
|
|
81
|
+
/** Book, applied when the object changes (stream updates through the ref) */
|
|
82
|
+
book?: OrderBookSnapshot;
|
|
83
|
+
/** Trades; when the array grows, only the appended ones are added */
|
|
84
|
+
trades?: readonly MarketTrade[];
|
|
85
|
+
/** Hovered cell (`null` when the pointer leaves) */
|
|
86
|
+
onHover?: (event: OrderBookHeatmapHoverEvent | null) => void;
|
|
87
|
+
/** Backend in use (also after a GPU loss) */
|
|
88
|
+
onRendererChange?: (renderer: ChartRendererKind) => void;
|
|
89
|
+
/** `true` while the view follows the market, `false` after a zoom / pan */
|
|
90
|
+
onFollowChange?: (follow: boolean) => void;
|
|
91
|
+
/** Imperative handle: `setBook`, `applyDeltas`, `addTrades`, `resetView` */
|
|
92
|
+
ref?: Ref<OrderBookHeatmapHandle>;
|
|
93
|
+
}
|
|
94
|
+
/** Imperative handle of `TimeAndSales` */
|
|
95
|
+
export interface TimeAndSalesHandle {
|
|
96
|
+
/** Appends trades (oldest first) */
|
|
97
|
+
addTrades(trades: MarketTrade | readonly MarketTrade[]): void;
|
|
98
|
+
/** Replaces every trade */
|
|
99
|
+
setTrades(trades: readonly MarketTrade[]): void;
|
|
100
|
+
/** Removes every trade */
|
|
101
|
+
clear(): void;
|
|
102
|
+
/** Scrolls back to the newest trade and resumes */
|
|
103
|
+
scrollToLatest(): void;
|
|
104
|
+
/** The underlying engine instance (minerva-design/charts/core) */
|
|
105
|
+
getInstance(): TimeAndSalesInstance | null;
|
|
106
|
+
}
|
|
107
|
+
/** Props of `TimeAndSales` */
|
|
108
|
+
export interface TimeAndSalesProps extends TimeAndSalesOptions, OrderBookWidgetProps {
|
|
109
|
+
/**
|
|
110
|
+
* Trades, oldest first; when the array grows, only the appended ones are
|
|
111
|
+
* added (other changes replace the tape)
|
|
112
|
+
*/
|
|
113
|
+
trades?: readonly MarketTrade[];
|
|
114
|
+
/** Hovered row (`null` when the pointer leaves) */
|
|
115
|
+
onHover?: (row: TimeAndSalesRowEvent | null) => void;
|
|
116
|
+
/** Click / tap / Enter on a row */
|
|
117
|
+
onTradeClick?: (row: TimeAndSalesRowEvent) => void;
|
|
118
|
+
/** The tape paused (pointer over it, scrolled down) or resumed */
|
|
119
|
+
onPause?: (paused: boolean) => void;
|
|
120
|
+
/** Imperative handle: `addTrades`, `setTrades`, `clear`, `scrollToLatest` */
|
|
121
|
+
ref?: Ref<TimeAndSalesHandle>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Cumulative depth of an order book: stepped bid / ask areas around the mid
|
|
125
|
+
* price, mirrored hover readout, zoom around the mid, eased updates.
|
|
126
|
+
*/
|
|
127
|
+
export declare function DepthChart({ height, width, className, style, book, onHover, onClick, onRangeChange, ref, ...options }: DepthChartProps): import('react').JSX.Element;
|
|
128
|
+
/**
|
|
129
|
+
* Order book ladder: asks above the spread row, bids below, with depth
|
|
130
|
+
* bars, price grouping, change flashes and large order highlight.
|
|
131
|
+
*/
|
|
132
|
+
export declare function OrderBook({ height, width, className, style, book, lastPrice, onHover, onLevelClick, ref, ...options }: OrderBookProps): import('react').JSX.Element;
|
|
133
|
+
/**
|
|
134
|
+
* Liquidity heatmap: resting size over time and price drawn by the GPU,
|
|
135
|
+
* best bid / ask lines and trades as bubbles sized by volume.
|
|
136
|
+
*/
|
|
137
|
+
export declare function OrderBookHeatmap({ height, width, className, style, book, trades, onHover, onRendererChange, onFollowChange, ref, ...options }: OrderBookHeatmapProps): import('react').JSX.Element;
|
|
138
|
+
/**
|
|
139
|
+
* Time and sales tape: newest trades on top, virtualized (hundreds of
|
|
140
|
+
* thousands of rows), large trades highlighted, paused while hovered.
|
|
141
|
+
*/
|
|
142
|
+
export declare function TimeAndSales({ height, width, className, style, trades, onHover, onTradeClick, onPause, ref, ...options }: TimeAndSalesProps): import('react').JSX.Element;
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { resolveLocale as e } from "../engine/locale.js";
|
|
3
|
+
import { createDepthChart as t } from "../engine/orderbook/depth.js";
|
|
4
|
+
import { createOrderBookHeatmap as n } from "../engine/orderbook/heatmap.js";
|
|
5
|
+
import { createOrderBook as r } from "../engine/orderbook/ladder.js";
|
|
6
|
+
import { createTimeAndSales as i } from "../engine/orderbook/tape.js";
|
|
7
|
+
import { useEffect as a, useImperativeHandle as o, useRef as s } from "react";
|
|
8
|
+
import { jsx as c } from "react/jsx-runtime";
|
|
9
|
+
//#region src/react/orderbook.tsx
|
|
10
|
+
var l = (e, t) => e === void 0 ? t : typeof e == "number" ? `${e}px` : e, u = (e, t) => {
|
|
11
|
+
if (e === t) return !0;
|
|
12
|
+
if (Array.isArray(e) && Array.isArray(t)) return e.length === t.length && e.every((e, n) => e === t[n]);
|
|
13
|
+
if (typeof e != "object" || typeof t != "object" || e === null || t === null || Object.getPrototypeOf(e) !== Object.prototype || Object.getPrototypeOf(t) !== Object.prototype) return !1;
|
|
14
|
+
let n = Object.keys(e);
|
|
15
|
+
return n.length === Object.keys(t).length && n.every((n) => e[n] === t[n]);
|
|
16
|
+
}, d = (e, t) => {
|
|
17
|
+
let n = Object.keys(e).filter((t) => e[t] !== void 0), r = Object.keys(t).filter((e) => t[e] !== void 0);
|
|
18
|
+
return n.length === r.length && n.every((n) => u(e[n], t[n]));
|
|
19
|
+
}, f = (t) => e(t.locale);
|
|
20
|
+
function p(e, t, n, r) {
|
|
21
|
+
let i = s(null), o = s(null), c = s(t), l = s(""), u = s(n);
|
|
22
|
+
return a(() => {
|
|
23
|
+
u.current = n;
|
|
24
|
+
}), a(() => {
|
|
25
|
+
let t = i.current;
|
|
26
|
+
if (!t) return;
|
|
27
|
+
l.current = f(c.current);
|
|
28
|
+
let n = e(t, c.current);
|
|
29
|
+
o.current = n;
|
|
30
|
+
let a = r(n, () => u.current);
|
|
31
|
+
return () => {
|
|
32
|
+
a.forEach((e) => e()), n.destroy(), o.current = null;
|
|
33
|
+
};
|
|
34
|
+
}, [e, r]), a(() => {
|
|
35
|
+
let e = f(t);
|
|
36
|
+
d(c.current, t) && e === l.current || (c.current = t, l.current = e, o.current?.setOptions(t));
|
|
37
|
+
}), {
|
|
38
|
+
containerRef: i,
|
|
39
|
+
instanceRef: o
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function m(e, t) {
|
|
43
|
+
a(() => {
|
|
44
|
+
t && e.current?.setBook(t);
|
|
45
|
+
}, [e, t]);
|
|
46
|
+
}
|
|
47
|
+
function h(e, t, n, r) {
|
|
48
|
+
let i = s(void 0), o = s(null), c = s(n), l = s(r);
|
|
49
|
+
a(() => {
|
|
50
|
+
c.current = n, l.current = r;
|
|
51
|
+
}), a(() => {
|
|
52
|
+
let n = e.current, r = o.current === n ? i.current : void 0;
|
|
53
|
+
if (i.current = t, o.current = n, !t || t === r) return;
|
|
54
|
+
let a = r?.length ?? 0;
|
|
55
|
+
if (r && a > 0 && t.length >= a && t[a - 1] === r[a - 1] && t[0] === r[0]) {
|
|
56
|
+
t.length > a && c.current(t.slice(a));
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
l.current(t);
|
|
60
|
+
}, [e, t]);
|
|
61
|
+
}
|
|
62
|
+
function g({ containerRef: e, height: t, width: n, className: r, style: i, fallbackHeight: a }) {
|
|
63
|
+
return /* @__PURE__ */ c("div", {
|
|
64
|
+
className: r,
|
|
65
|
+
style: {
|
|
66
|
+
position: "relative",
|
|
67
|
+
width: l(n, "100%"),
|
|
68
|
+
height: l(t, a),
|
|
69
|
+
...i
|
|
70
|
+
},
|
|
71
|
+
children: /* @__PURE__ */ c("div", {
|
|
72
|
+
ref: e,
|
|
73
|
+
style: {
|
|
74
|
+
position: "absolute",
|
|
75
|
+
inset: 0
|
|
76
|
+
}
|
|
77
|
+
})
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
var _ = (e, t) => [
|
|
81
|
+
e.on("hover", (e) => t().onHover?.(e)),
|
|
82
|
+
e.on("click", (e) => t().onClick?.(e)),
|
|
83
|
+
e.on("range", (e) => t().onRangeChange?.(e))
|
|
84
|
+
];
|
|
85
|
+
function v({ height: e, width: n, className: r, style: i, book: a, onHover: s, onClick: l, onRangeChange: u, ref: d, ...f }) {
|
|
86
|
+
let { containerRef: h, instanceRef: v } = p(t, f, {
|
|
87
|
+
onHover: s,
|
|
88
|
+
onClick: l,
|
|
89
|
+
onRangeChange: u
|
|
90
|
+
}, _);
|
|
91
|
+
return m(v, a), o(d, () => ({
|
|
92
|
+
setBook: (e) => v.current?.setBook(e),
|
|
93
|
+
applyDeltas: (e) => v.current?.applyDeltas(e),
|
|
94
|
+
setRange: (e) => v.current?.setRange(e),
|
|
95
|
+
getInstance: () => v.current
|
|
96
|
+
}), [v]), /* @__PURE__ */ c(g, {
|
|
97
|
+
containerRef: h,
|
|
98
|
+
height: e,
|
|
99
|
+
width: n,
|
|
100
|
+
className: r,
|
|
101
|
+
style: i,
|
|
102
|
+
fallbackHeight: "320px"
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
var y = (e, t) => [e.on("hover", (e) => t().onHover?.(e)), e.on("levelClick", (e) => t().onLevelClick?.(e))];
|
|
106
|
+
function b({ height: e, width: t, className: n, style: i, book: s, lastPrice: l, onHover: u, onLevelClick: d, ref: f, ...h }) {
|
|
107
|
+
let { containerRef: _, instanceRef: v } = p(r, h, {
|
|
108
|
+
onHover: u,
|
|
109
|
+
onLevelClick: d
|
|
110
|
+
}, y);
|
|
111
|
+
return m(v, s), a(() => {
|
|
112
|
+
l !== void 0 && v.current?.setLastPrice(l);
|
|
113
|
+
}, [v, l]), o(f, () => ({
|
|
114
|
+
setBook: (e) => v.current?.setBook(e),
|
|
115
|
+
applyDeltas: (e) => v.current?.applyDeltas(e),
|
|
116
|
+
setLastPrice: (e) => v.current?.setLastPrice(e),
|
|
117
|
+
getInstance: () => v.current
|
|
118
|
+
}), [v]), /* @__PURE__ */ c(g, {
|
|
119
|
+
containerRef: _,
|
|
120
|
+
height: e,
|
|
121
|
+
width: t,
|
|
122
|
+
className: n,
|
|
123
|
+
style: i,
|
|
124
|
+
fallbackHeight: "420px"
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
var x = (e, t) => [
|
|
128
|
+
e.on("hover", (e) => t().onHover?.(e)),
|
|
129
|
+
e.on("renderer", (e) => t().onRendererChange?.(e)),
|
|
130
|
+
e.on("follow", (e) => t().onFollowChange?.(e))
|
|
131
|
+
];
|
|
132
|
+
function S({ height: e, width: t, className: r, style: i, book: a, trades: s, onHover: l, onRendererChange: u, onFollowChange: d, ref: f, ..._ }) {
|
|
133
|
+
let { containerRef: v, instanceRef: y } = p(n, _, {
|
|
134
|
+
onHover: l,
|
|
135
|
+
onRendererChange: u,
|
|
136
|
+
onFollowChange: d
|
|
137
|
+
}, x);
|
|
138
|
+
return m(y, a), h(y, s, (e) => y.current?.addTrades(e), (e) => y.current?.addTrades(e)), o(f, () => ({
|
|
139
|
+
setBook: (e) => y.current?.setBook(e),
|
|
140
|
+
applyDeltas: (e) => y.current?.applyDeltas(e),
|
|
141
|
+
addTrades: (e) => y.current?.addTrades(e),
|
|
142
|
+
resetView: () => y.current?.resetView(),
|
|
143
|
+
getInstance: () => y.current
|
|
144
|
+
}), [y]), /* @__PURE__ */ c(g, {
|
|
145
|
+
containerRef: v,
|
|
146
|
+
height: e,
|
|
147
|
+
width: t,
|
|
148
|
+
className: r,
|
|
149
|
+
style: i,
|
|
150
|
+
fallbackHeight: "360px"
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
var C = (e, t) => [
|
|
154
|
+
e.on("hover", (e) => t().onHover?.(e)),
|
|
155
|
+
e.on("tradeClick", (e) => t().onTradeClick?.(e)),
|
|
156
|
+
e.on("pause", (e) => t().onPause?.(e))
|
|
157
|
+
];
|
|
158
|
+
function w({ height: e, width: t, className: n, style: r, trades: a, onHover: s, onTradeClick: l, onPause: u, ref: d, ...f }) {
|
|
159
|
+
let { containerRef: m, instanceRef: _ } = p(i, f, {
|
|
160
|
+
onHover: s,
|
|
161
|
+
onTradeClick: l,
|
|
162
|
+
onPause: u
|
|
163
|
+
}, C);
|
|
164
|
+
return h(_, a, (e) => _.current?.addTrades(e), (e) => _.current?.setTrades(e)), o(d, () => ({
|
|
165
|
+
addTrades: (e) => _.current?.addTrades(e),
|
|
166
|
+
setTrades: (e) => _.current?.setTrades(e),
|
|
167
|
+
clear: () => _.current?.clear(),
|
|
168
|
+
scrollToLatest: () => _.current?.scrollToLatest(),
|
|
169
|
+
getInstance: () => _.current
|
|
170
|
+
}), [_]), /* @__PURE__ */ c(g, {
|
|
171
|
+
containerRef: m,
|
|
172
|
+
height: e,
|
|
173
|
+
width: t,
|
|
174
|
+
className: n,
|
|
175
|
+
style: r,
|
|
176
|
+
fallbackHeight: "360px"
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
//#endregion
|
|
180
|
+
export { v as DepthChart, b as OrderBook, S as OrderBookHeatmap, w as TimeAndSales };
|
|
181
|
+
|
|
182
|
+
//# sourceMappingURL=orderbook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderbook.js","names":["size","value","fallback","sameValue","a","b","v","i","ka","k","sameOptions","kb","localeOf","resolveLocale","options","useWidget","containerRef","useRef","instanceRef","optionsRef","localeRef","handlersRef","handlers","useEffect","container","instance","factory","offs","connect","off","locale","useBook","book","useTrades","previousRef","targetRef","addRef","add","replaceRef","replace","target","previous","trades","n","Frame","width","height","fallbackHeight","style","connectDepth","chart","h","r","DepthChart","createDepthChart","useImperativeHandle","ref","snapshot","deltas","range","connectLadder","OrderBook","createOrderBook","lastPrice","price","connectHeatmap","heatmap","f","OrderBookHeatmap","createOrderBookHeatmap","list","connectTape","tape","p","TimeAndSales","createTimeAndSales"],"sources":["../../../../charts/src/react/orderbook.tsx"],"sourcesContent":["// React components of the order book module (depth chart, order book\n// ladder, liquidity heatmap, time and sales), re-exported by index.ts. Each\n// one mounts its engine once; options are forwarded when they change and\n// streams go through the ref handle (`applyDeltas`, `addTrades`) without\n// re-rendering React.\n\nimport {\n useEffect,\n useImperativeHandle,\n useRef,\n type CSSProperties,\n type Ref,\n type RefObject,\n} from \"react\";\nimport { resolveLocale } from \"../engine/locale\";\nimport { createDepthChart } from \"../engine/orderbook/depth\";\nimport { createOrderBookHeatmap } from \"../engine/orderbook/heatmap\";\nimport { createOrderBook } from \"../engine/orderbook/ladder\";\nimport { createTimeAndSales } from \"../engine/orderbook/tape\";\nimport type {\n DepthChartHoverEvent,\n DepthChartInstance,\n DepthChartOptions,\n MarketTrade,\n OrderBookDelta,\n OrderBookHeatmapHoverEvent,\n OrderBookHeatmapInstance,\n OrderBookHeatmapOptions,\n OrderBookInstance,\n OrderBookLevelEvent,\n OrderBookOptions,\n OrderBookSnapshot,\n TimeAndSalesInstance,\n TimeAndSalesOptions,\n TimeAndSalesRowEvent,\n} from \"../engine/orderbook/types\";\nimport type { ChartRendererKind } from \"../engine/types\";\n\n/** Container props shared by the order book components */\nexport interface OrderBookWidgetProps {\n /** Height of the widget; numbers are pixels */\n height?: number | string;\n /**\n * Width of the widget; numbers are pixels\n * @default \"100%\"\n */\n width?: number | string;\n /** Class of the container */\n className?: string;\n /** Style of the container */\n style?: CSSProperties;\n}\n\n/** Imperative handle of `DepthChart` */\nexport interface DepthChartHandle {\n /** Replaces the book */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (size 0 removes a level); drawn once at the next frame */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Sets the visible range (fraction of the mid); `null` fits the book */\n setRange(range: number | null): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): DepthChartInstance | null;\n}\n\n/** Props of `DepthChart` */\nexport interface DepthChartProps\n extends DepthChartOptions, OrderBookWidgetProps {\n /** Book to draw, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Pointer over the curves (`null` when it leaves) */\n onHover?: (event: DepthChartHoverEvent | null) => void;\n /** Click / tap on the curves */\n onClick?: (event: DepthChartHoverEvent) => void;\n /** The visible range changed by zooming (fraction of the mid) */\n onRangeChange?: (range: number) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `setRange` */\n ref?: Ref<DepthChartHandle>;\n}\n\n/** Imperative handle of `OrderBook` */\nexport interface OrderBookHandle {\n /** Replaces the book */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (size 0 removes a level); drawn once at the next frame */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Price of the spread row (the mid price when `null`) */\n setLastPrice(price: number | null): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): OrderBookInstance | null;\n}\n\n/** Props of `OrderBook` */\nexport interface OrderBookProps extends OrderBookOptions, OrderBookWidgetProps {\n /** Book to draw, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Price of the spread row, colored by its last move; the mid price when omitted */\n lastPrice?: number | null;\n /** Hovered row (`null` when the pointer leaves) */\n onHover?: (level: OrderBookLevelEvent | null) => void;\n /** Click / tap / Enter on a row (e.g. to fill a price in an order form) */\n onLevelClick?: (level: OrderBookLevelEvent) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `setLastPrice` */\n ref?: Ref<OrderBookHandle>;\n}\n\n/** Imperative handle of `OrderBookHeatmap` */\nexport interface OrderBookHeatmapHandle {\n /** Replaces the book (closes the columns up to its time) */\n setBook(snapshot: OrderBookSnapshot): void;\n /** Applies updates (closes the columns up to their time) */\n applyDeltas(deltas: OrderBookDelta | readonly OrderBookDelta[]): void;\n /** Adds trades (bubbles) */\n addTrades(trades: MarketTrade | readonly MarketTrade[]): void;\n /** Follows the market again */\n resetView(): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): OrderBookHeatmapInstance | null;\n}\n\n/** Props of `OrderBookHeatmap` */\nexport interface OrderBookHeatmapProps\n extends OrderBookHeatmapOptions, OrderBookWidgetProps {\n /** Book, applied when the object changes (stream updates through the ref) */\n book?: OrderBookSnapshot;\n /** Trades; when the array grows, only the appended ones are added */\n trades?: readonly MarketTrade[];\n /** Hovered cell (`null` when the pointer leaves) */\n onHover?: (event: OrderBookHeatmapHoverEvent | null) => void;\n /** Backend in use (also after a GPU loss) */\n onRendererChange?: (renderer: ChartRendererKind) => void;\n /** `true` while the view follows the market, `false` after a zoom / pan */\n onFollowChange?: (follow: boolean) => void;\n /** Imperative handle: `setBook`, `applyDeltas`, `addTrades`, `resetView` */\n ref?: Ref<OrderBookHeatmapHandle>;\n}\n\n/** Imperative handle of `TimeAndSales` */\nexport interface TimeAndSalesHandle {\n /** Appends trades (oldest first) */\n addTrades(trades: MarketTrade | readonly MarketTrade[]): void;\n /** Replaces every trade */\n setTrades(trades: readonly MarketTrade[]): void;\n /** Removes every trade */\n clear(): void;\n /** Scrolls back to the newest trade and resumes */\n scrollToLatest(): void;\n /** The underlying engine instance (minerva-design/charts/core) */\n getInstance(): TimeAndSalesInstance | null;\n}\n\n/** Props of `TimeAndSales` */\nexport interface TimeAndSalesProps\n extends TimeAndSalesOptions, OrderBookWidgetProps {\n /**\n * Trades, oldest first; when the array grows, only the appended ones are\n * added (other changes replace the tape)\n */\n trades?: readonly MarketTrade[];\n /** Hovered row (`null` when the pointer leaves) */\n onHover?: (row: TimeAndSalesRowEvent | null) => void;\n /** Click / tap / Enter on a row */\n onTradeClick?: (row: TimeAndSalesRowEvent) => void;\n /** The tape paused (pointer over it, scrolled down) or resumed */\n onPause?: (paused: boolean) => void;\n /** Imperative handle: `addTrades`, `setTrades`, `clear`, `scrollToLatest` */\n ref?: Ref<TimeAndSalesHandle>;\n}\n\n// ------------------------------------------------------------------ shared\n\nconst size = (value: number | string | undefined, fallback: string) =>\n value === undefined\n ? fallback\n : typeof value === \"number\"\n ? `${value}px`\n : value;\n\n/** Identical values, or inline arrays / objects with identical items */\nconst sameValue = (a: unknown, b: unknown): boolean => {\n if (a === b) return true;\n if (Array.isArray(a) && Array.isArray(b))\n return a.length === b.length && a.every((v, i) => v === b[i]);\n if (\n typeof a !== \"object\" ||\n typeof b !== \"object\" ||\n a === null ||\n b === null ||\n Object.getPrototypeOf(a) !== Object.prototype ||\n Object.getPrototypeOf(b) !== Object.prototype\n )\n return false;\n const ka = Object.keys(a);\n return (\n ka.length === Object.keys(b).length &&\n ka.every(\n (k) =>\n (a as Record<string, unknown>)[k] === (b as Record<string, unknown>)[k],\n )\n );\n};\n\n/** Same options, one level deep (inline `labels={{ … }}` stays equal) */\nconst sameOptions = (a: object, b: object): boolean => {\n const ka = Object.keys(a).filter(\n (k) => (a as Record<string, unknown>)[k] !== undefined,\n );\n const kb = Object.keys(b).filter(\n (k) => (b as Record<string, unknown>)[k] !== undefined,\n );\n return (\n ka.length === kb.length &&\n ka.every((k) =>\n sameValue(\n (a as Record<string, unknown>)[k],\n (b as Record<string, unknown>)[k],\n ),\n )\n );\n};\n\ninterface Widget<O> {\n setOptions(options: O): void;\n destroy(): void;\n}\n\n/** Locale the engine resolves for `options` (the page language by default) */\nconst localeOf = (options: object): string =>\n resolveLocale((options as { locale?: string }).locale);\n\n/**\n * Mounts an engine widget once, forwards option changes and subscribes the\n * handlers (read through a ref: inline callbacks never re-subscribe). The\n * options are applied again when the page language (`<html lang>`) changed,\n * so the built-in texts follow a language switch.\n */\nfunction useWidget<O extends object, I extends Widget<O>, H>(\n factory: (container: HTMLElement, options: O) => I,\n options: O,\n handlers: H,\n connect: (instance: I, handlers: () => H) => (() => void)[],\n): {\n containerRef: RefObject<HTMLDivElement | null>;\n instanceRef: RefObject<I | null>;\n} {\n const containerRef = useRef<HTMLDivElement>(null);\n const instanceRef = useRef<I | null>(null);\n const optionsRef = useRef(options);\n const localeRef = useRef(\"\");\n const handlersRef = useRef(handlers);\n\n useEffect(() => {\n handlersRef.current = handlers;\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) return;\n localeRef.current = localeOf(optionsRef.current);\n const instance = factory(container, optionsRef.current);\n instanceRef.current = instance;\n const offs = connect(instance, () => handlersRef.current);\n return () => {\n offs.forEach((off) => off());\n instance.destroy();\n instanceRef.current = null;\n };\n }, [factory, connect]);\n\n useEffect(() => {\n const locale = localeOf(options);\n if (\n sameOptions(optionsRef.current, options) &&\n locale === localeRef.current\n )\n return;\n optionsRef.current = options;\n localeRef.current = locale;\n instanceRef.current?.setOptions(options);\n });\n\n return { containerRef, instanceRef };\n}\n\n/** Applies `book` when the object changes */\nfunction useBook(\n instanceRef: RefObject<{ setBook(s: OrderBookSnapshot): void } | null>,\n book: OrderBookSnapshot | undefined,\n) {\n useEffect(() => {\n if (book) instanceRef.current?.setBook(book);\n }, [instanceRef, book]);\n}\n\n/** Adds the trades appended to `trades`; `replace` gets any other change */\nfunction useTrades(\n instanceRef: RefObject<object | null>,\n trades: readonly MarketTrade[] | undefined,\n add: (trades: readonly MarketTrade[]) => void,\n replace: (trades: readonly MarketTrade[]) => void,\n) {\n const previousRef = useRef<readonly MarketTrade[] | undefined>(undefined);\n /** Instance that received `previousRef` (a remount starts over) */\n const targetRef = useRef<object | null>(null);\n const addRef = useRef(add);\n const replaceRef = useRef(replace);\n useEffect(() => {\n addRef.current = add;\n replaceRef.current = replace;\n });\n useEffect(() => {\n const target = instanceRef.current;\n const previous =\n targetRef.current === target ? previousRef.current : undefined;\n previousRef.current = trades;\n targetRef.current = target;\n if (!trades || trades === previous) return;\n const n = previous?.length ?? 0;\n // a grown array (same items in front): only the new ones\n if (\n previous &&\n n > 0 &&\n trades.length >= n &&\n trades[n - 1] === previous[n - 1] &&\n trades[0] === previous[0]\n ) {\n if (trades.length > n) addRef.current(trades.slice(n));\n return;\n }\n replaceRef.current(trades);\n }, [instanceRef, trades]);\n}\n\nfunction Frame({\n containerRef,\n height,\n width,\n className,\n style,\n fallbackHeight,\n}: OrderBookWidgetProps & {\n containerRef: RefObject<HTMLDivElement | null>;\n fallbackHeight: string;\n}) {\n return (\n <div\n className={className}\n style={{\n position: \"relative\",\n width: size(width, \"100%\"),\n height: size(height, fallbackHeight),\n ...style,\n }}\n >\n <div ref={containerRef} style={{ position: \"absolute\", inset: 0 }} />\n </div>\n );\n}\n\n// -------------------------------------------------------------- depth chart\n\ninterface DepthHandlers {\n onHover?: DepthChartProps[\"onHover\"];\n onClick?: DepthChartProps[\"onClick\"];\n onRangeChange?: DepthChartProps[\"onRangeChange\"];\n}\n\nconst connectDepth = (chart: DepthChartInstance, h: () => DepthHandlers) => [\n chart.on(\"hover\", (e) => h().onHover?.(e)),\n chart.on(\"click\", (e) => h().onClick?.(e)),\n chart.on(\"range\", (r) => h().onRangeChange?.(r)),\n];\n\n/**\n * Cumulative depth of an order book: stepped bid / ask areas around the mid\n * price, mirrored hover readout, zoom around the mid, eased updates.\n */\nexport function DepthChart({\n height,\n width,\n className,\n style,\n book,\n onHover,\n onClick,\n onRangeChange,\n ref,\n ...options\n}: DepthChartProps) {\n const { containerRef, instanceRef } = useWidget(\n createDepthChart,\n options,\n { onHover, onClick, onRangeChange },\n connectDepth,\n );\n useBook(instanceRef, book);\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n setRange: (range) => instanceRef.current?.setRange(range),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"320px\"\n />\n );\n}\n\n// --------------------------------------------------------------- order book\n\ninterface LadderHandlers {\n onHover?: OrderBookProps[\"onHover\"];\n onLevelClick?: OrderBookProps[\"onLevelClick\"];\n}\n\nconst connectLadder = (book: OrderBookInstance, h: () => LadderHandlers) => [\n book.on(\"hover\", (e) => h().onHover?.(e)),\n book.on(\"levelClick\", (e) => h().onLevelClick?.(e)),\n];\n\n/**\n * Order book ladder: asks above the spread row, bids below, with depth\n * bars, price grouping, change flashes and large order highlight.\n */\nexport function OrderBook({\n height,\n width,\n className,\n style,\n book,\n lastPrice,\n onHover,\n onLevelClick,\n ref,\n ...options\n}: OrderBookProps) {\n const { containerRef, instanceRef } = useWidget(\n createOrderBook,\n options,\n { onHover, onLevelClick },\n connectLadder,\n );\n useBook(instanceRef, book);\n useEffect(() => {\n if (lastPrice !== undefined) instanceRef.current?.setLastPrice(lastPrice);\n }, [instanceRef, lastPrice]);\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n setLastPrice: (price) => instanceRef.current?.setLastPrice(price),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"420px\"\n />\n );\n}\n\n// ------------------------------------------------------------------ heatmap\n\ninterface HeatmapHandlers {\n onHover?: OrderBookHeatmapProps[\"onHover\"];\n onRendererChange?: OrderBookHeatmapProps[\"onRendererChange\"];\n onFollowChange?: OrderBookHeatmapProps[\"onFollowChange\"];\n}\n\nconst connectHeatmap = (\n heatmap: OrderBookHeatmapInstance,\n h: () => HeatmapHandlers,\n) => [\n heatmap.on(\"hover\", (e) => h().onHover?.(e)),\n heatmap.on(\"renderer\", (r) => h().onRendererChange?.(r)),\n heatmap.on(\"follow\", (f) => h().onFollowChange?.(f)),\n];\n\n/**\n * Liquidity heatmap: resting size over time and price drawn by the GPU,\n * best bid / ask lines and trades as bubbles sized by volume.\n */\nexport function OrderBookHeatmap({\n height,\n width,\n className,\n style,\n book,\n trades,\n onHover,\n onRendererChange,\n onFollowChange,\n ref,\n ...options\n}: OrderBookHeatmapProps) {\n const { containerRef, instanceRef } = useWidget(\n createOrderBookHeatmap,\n options,\n { onHover, onRendererChange, onFollowChange },\n connectHeatmap,\n );\n useBook(instanceRef, book);\n useTrades(\n instanceRef,\n trades,\n (list) => instanceRef.current?.addTrades(list),\n (list) => instanceRef.current?.addTrades(list),\n );\n useImperativeHandle(\n ref,\n () => ({\n setBook: (snapshot) => instanceRef.current?.setBook(snapshot),\n applyDeltas: (deltas) => instanceRef.current?.applyDeltas(deltas),\n addTrades: (list) => instanceRef.current?.addTrades(list),\n resetView: () => instanceRef.current?.resetView(),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"360px\"\n />\n );\n}\n\n// ----------------------------------------------------------- time and sales\n\ninterface TapeHandlers {\n onHover?: TimeAndSalesProps[\"onHover\"];\n onTradeClick?: TimeAndSalesProps[\"onTradeClick\"];\n onPause?: TimeAndSalesProps[\"onPause\"];\n}\n\nconst connectTape = (tape: TimeAndSalesInstance, h: () => TapeHandlers) => [\n tape.on(\"hover\", (e) => h().onHover?.(e)),\n tape.on(\"tradeClick\", (e) => h().onTradeClick?.(e)),\n tape.on(\"pause\", (p) => h().onPause?.(p)),\n];\n\n/**\n * Time and sales tape: newest trades on top, virtualized (hundreds of\n * thousands of rows), large trades highlighted, paused while hovered.\n */\nexport function TimeAndSales({\n height,\n width,\n className,\n style,\n trades,\n onHover,\n onTradeClick,\n onPause,\n ref,\n ...options\n}: TimeAndSalesProps) {\n const { containerRef, instanceRef } = useWidget(\n createTimeAndSales,\n options,\n { onHover, onTradeClick, onPause },\n connectTape,\n );\n useTrades(\n instanceRef,\n trades,\n (list) => instanceRef.current?.addTrades(list),\n (list) => instanceRef.current?.setTrades(list),\n );\n useImperativeHandle(\n ref,\n () => ({\n addTrades: (list) => instanceRef.current?.addTrades(list),\n setTrades: (list) => instanceRef.current?.setTrades(list),\n clear: () => instanceRef.current?.clear(),\n scrollToLatest: () => instanceRef.current?.scrollToLatest(),\n getInstance: () => instanceRef.current,\n }),\n [instanceRef],\n );\n return (\n <Frame\n containerRef={containerRef}\n height={height}\n width={width}\n className={className}\n style={style}\n fallbackHeight=\"360px\"\n />\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require("../engine/shapes/chart.cjs");let
|
|
1
|
+
"use client";const e=require("../engine/shapes/calendar.cjs"),t=require("../engine/shapes/chart.cjs");let n=require("react"),r=require("react-dom"),i=require("react/jsx-runtime");var a=(e,t)=>e===void 0?t:typeof e==`number`?`${e}px`:e,o=e=>{if(typeof document>`u`||typeof MutationObserver!=`function`)return()=>{};let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:[`lang`]}),()=>t.disconnect()},s=()=>typeof document>`u`?``:document.documentElement.lang,c=()=>``,l=({palette:e,legend:t,tooltip:r,format:i,percentFormat:a,locale:l,texts:u,hidden:d,animation:f,padding:p,ariaLabel:m})=>{let h=(0,n.useSyncExternalStore)(o,s,c),g=l??(h||void 0),_=d?d.join(`,`):null,v=(0,n.useMemo)(()=>_===null?void 0:_?_.split(`,`).map(Number):[],[_]);return(0,n.useMemo)(()=>({palette:e,legend:t,tooltip:r,format:i,percentFormat:a,locale:g,texts:u,hidden:v,animation:f,padding:p,ariaLabel:m}),[e,t,r,i,a,g,u,v,f,p,m])};function u({options:e,height:o,width:s,className:c,style:l,handleRef:u,renderTooltip:d,...f}){let p=(0,n.useRef)(null),m=(0,n.useRef)(null),h=(0,n.useRef)(f),g=(0,n.useRef)(d),[_,v]=(0,n.useState)(null),y=(0,n.useMemo)(()=>typeof document>`u`?null:document.createElement(`div`),[]),b=!!d,x=(0,n.useMemo)(()=>{if(!b||!y||e.tooltip===!1)return e;let t=typeof e.tooltip==`object`?e.tooltip:{};return{...e,tooltip:{...t,render:e=>g.current?((0,r.flushSync)(()=>v(e)),y):null}}},[e,b,y]),S=(0,n.useRef)(x);return(0,n.useEffect)(()=>{h.current=f,g.current=d}),(0,n.useEffect)(()=>{let e=p.current;if(!e)return;let n=t.createShapeChart(e,S.current);m.current=n;let r=[n.on(`hover`,e=>h.current.onHover?.(e)),n.on(`click`,e=>h.current.onClick?.(e)),n.on(`toggle`,e=>h.current.onToggle?.(e)),n.on(`drill`,e=>h.current.onDrill?.(e))];return()=>{r.forEach(e=>e()),n.destroy(),m.current=null}},[]),(0,n.useEffect)(()=>{S.current!==x&&(S.current=x,m.current?.setOptions(x))},[x]),(0,n.useImperativeHandle)(u,()=>({getInstance:()=>m.current}),[]),(0,i.jsxs)(`div`,{className:c,style:{position:`relative`,width:a(s,`100%`),height:a(o,`320px`),...l},children:[(0,i.jsx)(`div`,{ref:p,style:{position:`absolute`,inset:0}}),y&&_&&d&&(0,r.createPortal)(d(_),y)]})}function d(e){return(0,i.jsx)(p,{...e,defaultInner:0})}function f(e){return(0,i.jsx)(p,{...e,defaultInner:.62})}function p(e){let{data:t,innerRadius:r,startAngle:a,padAngle:o,cornerRadius:s,rose:c,labels:u,labelContent:d,centerValue:f,centerLabel:p,defaultInner:m}=e,h=l(e),g=(0,n.useMemo)(()=>({...h,type:`pie`,data:t,innerRadius:r??m,startAngle:a,padAngle:o,cornerRadius:s,rose:c,labels:u,labelContent:d,centerValue:f,centerLabel:p}),[h,t,r,m,a,o,s,c,u,d,f,p]);return(0,i.jsx)(C,{props:e,options:g,defaultHeight:320})}function m(e){let{indicators:t,series:r,shape:a,levels:o,dots:s}=e,c=l(e),u=(0,n.useMemo)(()=>({...c,type:`radar`,indicators:t,series:r,shape:a,levels:o,dots:s}),[c,t,r,a,o,s]);return(0,i.jsx)(C,{props:e,options:u,defaultHeight:320})}function h(e){let{value:t,min:r,max:a,label:o,sweep:s,thickness:c,bands:u,color:d,needle:f,ticks:p}=e,m=l(e),h=(0,n.useMemo)(()=>({...m,type:`gauge`,value:t,min:r,max:a,label:o,sweep:s,thickness:c,bands:u,color:d,needle:f,ticks:p}),[m,t,r,a,o,s,c,u,d,f,p]);return(0,i.jsx)(C,{props:e,options:h,defaultHeight:240})}function g(e){let{data:t,sort:r,gap:a,conversion:o,shape:s}=e,c=l(e),u=(0,n.useMemo)(()=>({...c,type:`funnel`,data:t,sort:r,gap:a,conversion:o,shape:s}),[c,t,r,a,o,s]);return(0,i.jsx)(C,{props:e,options:u,defaultHeight:320})}function _(e){let{data:t,gap:r,headers:a}=e,o=l(e),s=(0,n.useMemo)(()=>({...o,type:`treemap`,data:t,gap:r,headers:a}),[o,t,r,a]);return(0,i.jsx)(C,{props:e,options:s,defaultHeight:320})}function v(e){let{nodes:t,links:r,nodeWidth:a,nodePadding:o,align:s,iterations:c,linkColor:u,linkOpacity:d,labels:f,labelValues:p}=e,m=l(e),h=(0,n.useMemo)(()=>({...m,type:`sankey`,nodes:t,links:r,nodeWidth:a,nodePadding:o,align:s,iterations:c,linkColor:u,linkOpacity:d,labels:f,labelValues:p}),[m,t,r,a,o,s,c,u,d,f,p]);return(0,i.jsx)(C,{props:e,options:h,defaultHeight:360})}function y(e){let{data:t,innerRadius:r,levels:a,startAngle:o,padAngle:s,cornerRadius:c,labels:u,drill:d,drillPath:f,onDrill:p}=e,m=l(e),h=f?JSON.stringify(f):null,g=(0,n.useMemo)(()=>h===null?void 0:JSON.parse(h),[h]),_=(0,n.useMemo)(()=>({...m,type:`sunburst`,data:t,innerRadius:r,levels:a,startAngle:o,padAngle:s,cornerRadius:c,labels:u,drill:d,drillPath:g}),[m,t,r,a,o,s,c,u,d,g]);return(0,i.jsx)(C,{props:e,options:_,defaultHeight:360,onDrill:p})}function b(e){let{data:t,max:r,innerRadius:a,startAngle:o,sweep:s,gap:c,track:u,rounded:d,labels:f,labelContent:p,centerValue:m,centerLabel:h}=e,g=l(e),_=(0,n.useMemo)(()=>({...g,type:`radialBar`,data:t,max:r,innerRadius:a,startAngle:o,sweep:s,gap:c,track:u,rounded:d,labels:f,labelContent:p,centerValue:m,centerLabel:h}),[g,t,r,a,o,s,c,u,d,f,p,m,h]);return(0,i.jsx)(C,{props:e,options:_,defaultHeight:300})}function x(t){let{data:r,range:a,layout:o,weekStart:s,color:c,colors:u,levels:d,thresholds:f,gap:p,radius:m,maxCellSize:h,monthLabels:g,weekdayLabels:_}=t,v=l(t),y=(0,n.useMemo)(()=>({...v,type:`calendarHeatmap`,data:r,range:a,layout:o,weekStart:s,color:c,colors:u,levels:d,thresholds:f,gap:p,radius:m,maxCellSize:h,monthLabels:g,weekdayLabels:_}),[v,r,a,o,s,c,u,d,f,p,m,h,g,_]),b=(0,n.useMemo)(()=>{let t=y.legend===!1?0:34;return o===`months`?560:e.calendarStrips(y)*120+t+16},[y,o]);return(0,i.jsx)(C,{props:t,options:y,defaultHeight:b})}function S(e){let{data:t,orientation:r,ranges:a,rangeLabels:o,rangeColors:s,barSize:c,targetColor:u,ticks:d}=e,f=l(e),p=(0,n.useMemo)(()=>({...f,type:`bullet`,data:t,orientation:r,ranges:a,rangeLabels:o,rangeColors:s,barSize:c,targetColor:u,ticks:d}),[f,t,r,a,o,s,c,u,d]),m=p.legend?34:0,h=r===`vertical`?320:Math.max(96,t.length*64+16)+m;return(0,i.jsx)(C,{props:e,options:p,defaultHeight:h})}function C({props:e,options:t,defaultHeight:n,onDrill:r}){return(0,i.jsx)(u,{options:t,height:e.height??n,width:e.width,className:e.className,style:e.style,handleRef:e.ref,onHover:e.onHover,onClick:e.onClick,onToggle:e.onToggle,onDrill:r,renderTooltip:e.renderTooltip})}exports.BulletChart=S,exports.CalendarHeatmap=x,exports.DonutChart=f,exports.FunnelChart=g,exports.GaugeChart=h,exports.PieChart=d,exports.RadarChart=m,exports.RadialBarChart=b,exports.SankeyChart=v,exports.SunburstChart=y,exports.TreemapChart=_;
|
|
2
2
|
//# sourceMappingURL=shapes.cjs.map
|