velo-plot 2.0.0 → 3.0.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/README.md +15 -8
- package/dist/{ChartCore-BhQ4j7f5.js → ChartCore-BpzRvN4Y.js} +998 -855
- package/dist/ChartCore-BpzRvN4Y.js.map +1 -0
- package/dist/a11y-Bw6urYpr.js +105 -0
- package/dist/a11y-Bw6urYpr.js.map +1 -0
- package/dist/angular/hooks-entry.d.ts +1 -0
- package/dist/angular/hooks.d.ts +26 -0
- package/dist/angular/index.d.ts +8 -0
- package/dist/angular/velo-plot.component.d.ts +46 -0
- package/dist/angular-hooks.d.ts +1 -0
- package/dist/angular-hooks.js +9 -0
- package/dist/angular-hooks.js.map +1 -0
- package/dist/angular.d.ts +1 -0
- package/dist/angular.js +166 -0
- package/dist/angular.js.map +1 -0
- package/dist/assets/indicator.worker-bv0zC4EX.js.map +1 -1
- package/dist/astro/StackedPlot.astro +19 -0
- package/dist/astro/VeloPlot.astro +23 -0
- package/dist/{axisFormat-SPX-CD5s.js → axisFormat-CzumxpCL.js} +3 -3
- package/dist/axisFormat-CzumxpCL.js.map +1 -0
- package/dist/bindings/shared/a11y.d.ts +26 -0
- package/dist/bindings/shared/chartLifecycle.d.ts +16 -0
- package/dist/bindings/shared/chartSyncBridge.d.ts +8 -0
- package/dist/bindings/shared/dimensions.d.ts +1 -0
- package/dist/bindings/shared/index.d.ts +9 -0
- package/dist/bindings/shared/indicatorBridge.d.ts +11 -0
- package/dist/bindings/shared/optionsSync.d.ts +7 -0
- package/dist/bindings/shared/seriesDiff.d.ts +8 -0
- package/dist/bindings/shared/stackedSync.d.ts +9 -0
- package/dist/bindings/shared/types.d.ts +46 -0
- package/dist/bindings/test-utils/index.d.ts +35 -0
- package/dist/bindings/test-utils/mockLifecycle.d.ts +120 -0
- package/dist/bindings/test-utils/vitestSveltePlugin.d.ts +3 -0
- package/dist/chartSyncBridge-DbWrwtyP.js +57 -0
- package/dist/chartSyncBridge-DbWrwtyP.js.map +1 -0
- package/dist/core/Chart.d.ts +1 -1
- package/dist/core/InteractionManager.d.ts +7 -1
- package/dist/core/OverlayRenderer.d.ts +5 -0
- package/dist/core/annotations/types.d.ts +1 -1
- package/dist/core/chart/ChartAxisManager.d.ts +2 -0
- package/dist/core/chart/ChartCore.d.ts +17 -2
- package/dist/core/chart/ChartPluginBridge.d.ts +1 -0
- package/dist/core/chart/ChartRenderLoop.d.ts +2 -0
- package/dist/core/chart/ChartStateManager.d.ts +2 -0
- package/dist/core/chart/types.d.ts +6 -1
- package/dist/core/clipboard/index.d.ts +1 -1
- package/dist/core/debug/index.d.ts +1 -1
- package/dist/core/keybindings/index.d.ts +1 -1
- package/dist/core/loading/index.d.ts +1 -1
- package/dist/core/locale/index.d.ts +1 -1
- package/dist/core/stacked/paneResize.d.ts +3 -0
- package/dist/core/stacked/types.d.ts +10 -0
- package/dist/core/sync/index.d.ts +0 -1
- package/dist/core/theme-editor/index.d.ts +1 -1
- package/dist/createStackedChart-Dm-YqUT7.js +756 -0
- package/dist/createStackedChart-Dm-YqUT7.js.map +1 -0
- package/dist/examples/PluginDemonstration.d.ts +1 -1
- package/dist/gpuRenderer-BpaMYz-k.js.map +1 -1
- package/dist/hooks-CYPCxoZx.js +69 -0
- package/dist/hooks-CYPCxoZx.js.map +1 -0
- package/dist/{index-D7dTq6VB.js → index-0InEyj0q.js} +130 -134
- package/dist/index-0InEyj0q.js.map +1 -0
- package/dist/index-BMiZoKmm.js.map +1 -1
- package/dist/{index-DoYxf1cV.js → index-CWxIHdwX.js} +38 -98
- package/dist/index-CWxIHdwX.js.map +1 -0
- package/dist/{index-CUGS98p4.js → index-CaXWSOTk.js} +3 -6
- package/dist/index-CaXWSOTk.js.map +1 -0
- package/dist/index-Dag88bW4.js.map +1 -1
- package/dist/index-qhscKTDy.js.map +1 -1
- package/dist/{index-CWipqOLP.js → index-qunX30Xu.js} +2 -2
- package/dist/index-qunX30Xu.js.map +1 -0
- package/dist/index-x4stH3jD.js.map +1 -1
- package/dist/{index.core-fpZ1dYN0.js → index.core-BmZe2jRQ.js} +30 -29
- package/dist/index.core-BmZe2jRQ.js.map +1 -0
- package/dist/index.core.d.ts +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/indicators--eJGmVox.js.map +1 -1
- package/dist/{mockDatafeed-Cdg5hKEo.js → mockDatafeed-DHIDPcpX.js} +150 -146
- package/dist/mockDatafeed-DHIDPcpX.js.map +1 -0
- package/dist/optionsSync-QUiN4Inw.js +119 -0
- package/dist/optionsSync-QUiN4Inw.js.map +1 -0
- package/dist/plugins/3d/index.d.ts +2 -2
- package/dist/plugins/3d.d.ts +2 -2
- package/dist/plugins/3d.js.map +1 -1
- package/dist/plugins/analysis/contours.d.ts +31 -0
- package/dist/plugins/analysis/index.d.ts +1 -1
- package/dist/plugins/analysis/indicators.d.ts +1 -1
- package/dist/plugins/analysis.d.ts +2 -2
- package/dist/plugins/analysis.js +495 -408
- package/dist/plugins/analysis.js.map +1 -1
- package/dist/plugins/annotations/index.d.ts +1 -1
- package/dist/plugins/annotations.d.ts +2 -2
- package/dist/plugins/annotations.js.map +1 -1
- package/dist/plugins/anomaly-detection.js +1 -1
- package/dist/plugins/anomaly-detection.js.map +1 -1
- package/dist/plugins/broken-axis.d.ts +2 -2
- package/dist/plugins/broken-axis.js +170 -181
- package/dist/plugins/broken-axis.js.map +1 -1
- package/dist/plugins/builtins/crosshair/CrosshairPlugin.d.ts +1 -1
- package/dist/plugins/builtins/index.d.ts +1 -1
- package/dist/plugins/caching.d.ts +2 -2
- package/dist/plugins/clipboard/index.d.ts +2 -2
- package/dist/plugins/clipboard.d.ts +2 -2
- package/dist/plugins/clipboard.js.map +1 -1
- package/dist/plugins/context-menu/index.d.ts +1 -1
- package/dist/plugins/context-menu.d.ts +2 -2
- package/dist/plugins/context-menu.js +1 -1
- package/dist/plugins/context-menu.js.map +1 -1
- package/dist/plugins/data-export/index.d.ts +1 -1
- package/dist/plugins/data-export.d.ts +2 -2
- package/dist/plugins/data-export.js +2 -2
- package/dist/plugins/data-export.js.map +1 -1
- package/dist/plugins/data-transform.d.ts +2 -2
- package/dist/plugins/data-transform.js +19 -19
- package/dist/plugins/data-transform.js.map +1 -1
- package/dist/plugins/debug/index.d.ts +2 -2
- package/dist/plugins/debug.d.ts +2 -2
- package/dist/plugins/debug.js +2 -2
- package/dist/plugins/debug.js.map +1 -1
- package/dist/plugins/forecasting/algorithms.d.ts +7 -2
- package/dist/plugins/forecasting/index.d.ts +1 -1
- package/dist/plugins/forecasting/types.d.ts +13 -3
- package/dist/plugins/forecasting.js +355 -175
- package/dist/plugins/forecasting.js.map +1 -1
- package/dist/plugins/gpu/index.d.ts +2 -2
- package/dist/plugins/gpu.d.ts +2 -2
- package/dist/plugins/gpu.js.map +1 -1
- package/dist/plugins/i18n/index.d.ts +2 -2
- package/dist/plugins/i18n.d.ts +2 -2
- package/dist/plugins/i18n.js.map +1 -1
- package/dist/plugins/index.d.ts +1 -1
- package/dist/plugins/keyboard.d.ts +2 -2
- package/dist/plugins/keyboard.js +65 -5
- package/dist/plugins/keyboard.js.map +1 -1
- package/dist/plugins/latex/symbols.d.ts +50 -0
- package/dist/plugins/latex/types.d.ts +13 -1
- package/dist/plugins/latex.js +351 -331
- package/dist/plugins/latex.js.map +1 -1
- package/dist/plugins/lazy-load.d.ts +2 -2
- package/dist/plugins/loading/index.d.ts +1 -1
- package/dist/plugins/loading.d.ts +2 -2
- package/dist/plugins/ml-integration/native-algorithms.d.ts +24 -4
- package/dist/plugins/ml-integration/types.d.ts +19 -0
- package/dist/plugins/ml-integration.d.ts +2 -2
- package/dist/plugins/ml-integration.js +190 -139
- package/dist/plugins/ml-integration.js.map +1 -1
- package/dist/plugins/offscreen.d.ts +2 -2
- package/dist/plugins/pattern-recognition/types.d.ts +28 -1
- package/dist/plugins/pattern-recognition.d.ts +2 -2
- package/dist/plugins/pattern-recognition.js +417 -344
- package/dist/plugins/pattern-recognition.js.map +1 -1
- package/dist/plugins/radar.d.ts +2 -2
- package/dist/plugins/regression.d.ts +2 -2
- package/dist/plugins/regression.js +1 -1
- package/dist/plugins/regression.js.map +1 -1
- package/dist/plugins/roi.js +9 -9
- package/dist/plugins/roi.js.map +1 -1
- package/dist/plugins/snapshot/index.d.ts +1 -1
- package/dist/plugins/snapshot/types.d.ts +1 -1
- package/dist/plugins/snapshot.d.ts +2 -2
- package/dist/plugins/snapshot.js +36 -36
- package/dist/plugins/snapshot.js.map +1 -1
- package/dist/plugins/streaming/index.d.ts +2 -2
- package/dist/plugins/streaming.d.ts +2 -2
- package/dist/plugins/sync/index.d.ts +3 -2
- package/dist/plugins/sync.d.ts +2 -2
- package/dist/plugins/sync.js +1 -1
- package/dist/plugins/sync.js.map +1 -1
- package/dist/plugins/theme-editor/index.d.ts +1 -1
- package/dist/plugins/theme-editor.d.ts +2 -2
- package/dist/plugins/tools/index.d.ts +1 -1
- package/dist/plugins/tools/tooltip/index.d.ts +1 -1
- package/dist/plugins/tools.d.ts +2 -2
- package/dist/plugins/tools.js +1 -1
- package/dist/plugins/types.d.ts +1 -1
- package/dist/plugins/video-recorder.d.ts +2 -2
- package/dist/plugins/virtualization.d.ts +2 -2
- package/dist/plugins/virtualization.js +1 -1
- package/dist/pool-DZ8shSqv.js +109 -0
- package/dist/pool-DZ8shSqv.js.map +1 -0
- package/dist/react/StackedPlot.d.ts +31 -0
- package/dist/react/VeloPlot.d.ts +29 -0
- package/dist/react/index.d.ts +25 -3
- package/dist/react/useChartSync.d.ts +8 -0
- package/dist/react/useIndicator.d.ts +12 -0
- package/dist/react/useVeloPlot.d.ts +19 -0
- package/dist/react.js +328 -24
- package/dist/react.js.map +1 -1
- package/dist/scientific/index.d.ts +48 -0
- package/dist/scientific.d.ts +1 -0
- package/dist/scientific.js +91 -0
- package/dist/scientific.js.map +1 -0
- package/dist/solid/VeloPlot.d.ts +16 -0
- package/dist/solid/index.d.ts +13 -0
- package/dist/solid/useChartSync.d.ts +6 -0
- package/dist/solid/useIndicator.d.ts +11 -0
- package/dist/solid/useStackedPlot.d.ts +14 -0
- package/dist/solid/useVeloPlot.d.ts +18 -0
- package/dist/solid.d.ts +1 -0
- package/dist/solid.js +172 -0
- package/dist/solid.js.map +1 -0
- package/dist/stackedSync-tnrunZMt.js +100 -0
- package/dist/stackedSync-tnrunZMt.js.map +1 -0
- package/dist/svelte/StackedPlot.svelte +29 -0
- package/dist/svelte/StackedPlot.test.ts +114 -0
- package/dist/svelte/VeloPlot.svelte +44 -0
- package/dist/svelte/VeloPlot.test.ts +105 -0
- package/dist/svelte/index.d.ts +11 -0
- package/dist/svelte/index.test.ts +20 -0
- package/dist/svelte/index.ts +15 -0
- package/dist/svelte/useChartSync.d.ts +8 -0
- package/dist/svelte/useChartSync.test.ts +49 -0
- package/dist/svelte/useChartSync.ts +29 -0
- package/dist/svelte/useIndicator.d.ts +13 -0
- package/dist/svelte/useIndicator.test.ts +67 -0
- package/dist/svelte/useIndicator.ts +43 -0
- package/dist/svelte/useStackedPlot.d.ts +16 -0
- package/dist/svelte/useStackedPlot.test.ts +76 -0
- package/dist/svelte/useStackedPlot.ts +54 -0
- package/dist/svelte/useVeloPlot.d.ts +21 -0
- package/dist/svelte/useVeloPlot.test.ts +100 -0
- package/dist/svelte/useVeloPlot.ts +81 -0
- package/dist/svelte.d.ts +1 -0
- package/dist/svelte.js +143 -0
- package/dist/svelte.js.map +1 -0
- package/dist/symbols-DT0eLlpW.js +568 -0
- package/dist/symbols-DT0eLlpW.js.map +1 -0
- package/dist/testing/index.d.ts +1 -1
- package/dist/theme/index.d.ts +2 -1
- package/dist/trading.js +7 -7
- package/dist/types.d.ts +1 -1
- package/dist/{utils-BK5UUXxj.js → utils-Dx0h0bgQ.js} +9 -9
- package/dist/{utils-BK5UUXxj.js.map → utils-Dx0h0bgQ.js.map} +1 -1
- package/dist/velo-plot.full.js +444 -433
- package/dist/velo-plot.full.js.map +1 -1
- package/dist/velo-plot.js +15 -15
- package/dist/vue/StackedPlot.vue.d.ts +48 -0
- package/dist/vue/VeloPlot.vue.d.ts +64 -0
- package/dist/vue/index.d.ts +250 -0
- package/dist/vue/useChartSync.d.ts +52 -0
- package/dist/vue/useIndicator.d.ts +23 -0
- package/dist/vue/useStackedPlot.d.ts +15 -0
- package/dist/vue/useVeloPlot.d.ts +20 -0
- package/dist/vue.d.ts +1 -0
- package/dist/vue.js +312 -0
- package/dist/vue.js.map +1 -0
- package/dist/workers/indicatorsAsync.d.ts +26 -0
- package/dist/workers/pool.d.ts +9 -0
- package/package.json +88 -10
- package/dist/ChartCore-BhQ4j7f5.js.map +0 -1
- package/dist/SciPlot-GJvw7GJo.js +0 -463
- package/dist/SciPlot-GJvw7GJo.js.map +0 -1
- package/dist/axisFormat-SPX-CD5s.js.map +0 -1
- package/dist/createStackedChart-DJSmqerD.js +0 -706
- package/dist/createStackedChart-DJSmqerD.js.map +0 -1
- package/dist/index-CUGS98p4.js.map +0 -1
- package/dist/index-CWipqOLP.js.map +0 -1
- package/dist/index-D7dTq6VB.js.map +0 -1
- package/dist/index-DoYxf1cV.js.map +0 -1
- package/dist/index.core-fpZ1dYN0.js.map +0 -1
- package/dist/mockDatafeed-Cdg5hKEo.js.map +0 -1
- package/dist/pool-15HMCNv8.js +0 -88
- package/dist/pool-15HMCNv8.js.map +0 -1
- package/dist/react/SciPlot.d.ts +0 -60
- package/dist/react/useSciPlot.d.ts +0 -56
package/dist/velo-plot.full.js
CHANGED
|
@@ -1,53 +1,53 @@
|
|
|
1
1
|
var xe = Object.defineProperty;
|
|
2
2
|
var ve = (n, e, t) => e in n ? xe(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
|
|
3
3
|
var Y = (n, e, t) => ve(n, typeof e != "symbol" ? e + "" : e, t);
|
|
4
|
-
import { D as ee,
|
|
5
|
-
import { A as St,
|
|
6
|
-
import { E as
|
|
7
|
-
import { AnnotationManager as
|
|
8
|
-
import { d as G } from "./index.core-
|
|
9
|
-
import { e as
|
|
10
|
-
import { G as
|
|
11
|
-
import { P as
|
|
12
|
-
import { P as
|
|
13
|
-
import { W as
|
|
14
|
-
import { PluginAnalysis as
|
|
15
|
-
import { B as
|
|
16
|
-
import {
|
|
17
|
-
import "
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import { P as
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import { PluginSync as
|
|
34
|
-
import { PluginDataExport as
|
|
35
|
-
import { PluginContextMenu as
|
|
36
|
-
import { PluginAnomalyDetection as
|
|
37
|
-
import { PluginMLIntegration as
|
|
38
|
-
import { PluginPatternRecognition as
|
|
39
|
-
import { PluginRegression as
|
|
40
|
-
import { PluginRadar as
|
|
41
|
-
import { PluginSnapshot as
|
|
42
|
-
import { PluginDataTransform as
|
|
43
|
-
import { PluginLaTeX as
|
|
44
|
-
import { PluginCaching as
|
|
45
|
-
import { PluginLazyLoad as
|
|
46
|
-
import { PluginBrokenAxis as
|
|
47
|
-
import { PluginVideoRecorder as
|
|
48
|
-
import { PluginOffscreen as
|
|
49
|
-
import { PluginROI as
|
|
50
|
-
import { PluginForecasting as
|
|
4
|
+
import { D as ee, L as O, x as te, O as Pe } from "./ChartCore-BpzRvN4Y.js";
|
|
5
|
+
import { A as wt, F as St, z as Tt, Q as bt, e as At, E as Ct, d as Mt, a as Ft, M as Dt, N as Et, a5 as It, R as kt, S as Lt, _ as Rt, k as Xt, i as Yt, a0 as Bt, l as _t, t as Gt, a3 as Wt, V as zt, o as Ut, n as $t, a1 as Ot, c as Ht, $ as Vt, N as qt, a4 as Nt, b as Kt, f as jt, U as Jt, W as Qt, j as Zt, a2 as en, y as tn, h as nn, T as an, G as on, C as rn, g as sn, K as ln, m as cn, B as dn, p as un, P as fn, H as gn, J as hn, r as pn, s as mn, X as yn, Y as xn, Z as vn, I as Pn } from "./ChartCore-BpzRvN4Y.js";
|
|
6
|
+
import { E as Sn, c as Tn, b as bn, f as An, i as Cn, a as Mn, m as Fn } from "./axisFormat-CzumxpCL.js";
|
|
7
|
+
import { AnnotationManager as En, PluginAnnotations as In } from "./plugins/annotations.js";
|
|
8
|
+
import { d as G } from "./index.core-BmZe2jRQ.js";
|
|
9
|
+
import { e as Ln, h as Rn, f as Xn, c as Yn, a as Bn, g as _n, b as Gn, l as Wn, r as zn, v as Un } from "./index.core-BmZe2jRQ.js";
|
|
10
|
+
import { G as On, S as Hn, a as Vn, W as qn, c as Nn, p as Kn } from "./gpuRenderer-BpaMYz-k.js";
|
|
11
|
+
import { P as Jn, a as Qn, T as Zn, g as ea } from "./index-qunX30Xu.js";
|
|
12
|
+
import { P as na, c as aa, a as oa, d as ra, g as ia, e as sa, l as la, m as ca, o as da, b as ua, s as fa, u as ga } from "./index-0InEyj0q.js";
|
|
13
|
+
import { W as pa, n as ma } from "./pool-DZ8shSqv.js";
|
|
14
|
+
import { PluginAnalysis as xa, analyzeComplexSpectrum as va, analyzeSpectrum as Pa, arraysToComplex as wa, autoCorrelation as Sa, bandPassFilter as Ta, bandStopFilter as ba, blackmanWindow as Aa, butterworth as Ca, complexToArrays as Ma, crossCorrelation as Fa, detectAnomalies as Da, dominantFrequency as Ea, exponentialMovingAverage as Ia, fft as ka, fftFromComplexInput as La, gaussianSmooth as Ra, generateContours as Xa, getPositiveFrequencies as Ya, hammingWindow as Ba, hanningWindow as _a, highPassFilter as Ga, ifft as Wa, ifftComplex as za, ifftFromArrays as Ua, joinSegments as $a, lowPassFilter as Oa, medianFilter as Ha, nextPowerOf2 as Va, powerSpectrum as qa, savitzkyGolay as Na, simpsonsIntegration as Ka, singleFrequencyFilter as ja, tTest as Ja, trapezoidalIntegration as Qa } from "./plugins/analysis.js";
|
|
15
|
+
import { B as eo, C as to, P as no, a as ao, e as oo, g as ro, b as io, d as so, f as lo, c as co } from "./index-BMiZoKmm.js";
|
|
16
|
+
import { SciChart as fo, SciPlot as go, StackedPlot as ho, VeloPlot as po, useChartGroup as mo, useChartSync as yo, useIndicator as xo, useSciChart as vo, useSciPlot as Po, useStackedPlot as wo, useVeloPlot as So } from "./react.js";
|
|
17
|
+
import { BaseBufferStore as bo, BaseTextureStore as Ao, GpuBenchmark as Co, GpuCompute as Mo, PipelineCache as Fo, PluginGpu as Do } from "./plugins/gpu.js";
|
|
18
|
+
import { b as Io, L as ko, a as Lo, c as Ro, f as Xo, d as Yo, e as Bo, i as _o, g as Go, h as Wo, r as zo, s as Uo } from "./index-x4stH3jD.js";
|
|
19
|
+
import { D as Oo, K as Ho, c as Vo, p as qo } from "./index-CWxIHdwX.js";
|
|
20
|
+
import { ClipboardManager as Ko, PluginClipboard as jo, copyToClipboard as Jo, formatData as Qo, getClipboardManager as Zo } from "./plugins/clipboard.js";
|
|
21
|
+
import { DebugOverlay as tr, PluginDebug as nr, createDebugOverlay as ar, enableDebugMode as or } from "./plugins/debug.js";
|
|
22
|
+
import { L as ir, P as sr, c as lr, s as cr, a as dr } from "./index-qhscKTDy.js";
|
|
23
|
+
import { C as fr, c as gr, a as hr, l as pr } from "./index-CaXWSOTk.js";
|
|
24
|
+
import { a as yr, S as xr, c as vr } from "./createStackedChart-Dm-YqUT7.js";
|
|
25
|
+
import { P as wr, a as Sr, b as Tr, c as br } from "./mockDatafeed-DHIDPcpX.js";
|
|
26
|
+
import { P as Cr, b as Mr, T as Fr, c as Dr, a as Er, g as Ir } from "./index-Dag88bW4.js";
|
|
27
|
+
import { h as Lr, d as Rr, e as Xr, i as Yr, b as Br, a as _r, f as Gr, c as Wr, g as zr, m as Ur, s as $r, v as Or } from "./utils-Dx0h0bgQ.js";
|
|
28
|
+
import { a as Vr, c as qr, d as Nr, i as Kr, s as jr } from "./math-Ddm2EZjj.js";
|
|
29
|
+
import { i as Qr, j as Zr, g as ei, f as ti, k as ni, d as ai, e as oi, m as ri, c as ii, n as si, o as li, p as ci, b as di, r as ui, s as fi, h as gi, a as hi, t as pi, v as mi, w as yi } from "./indicators--eJGmVox.js";
|
|
30
|
+
import { Plugin3D as vi } from "./plugins/3d.js";
|
|
31
|
+
import { PluginI18n as wi } from "./plugins/i18n.js";
|
|
32
|
+
import { PluginKeyboard as Ti } from "./plugins/keyboard.js";
|
|
33
|
+
import { PluginSync as Ai } from "./plugins/sync.js";
|
|
34
|
+
import { PluginDataExport as Mi } from "./plugins/data-export.js";
|
|
35
|
+
import { PluginContextMenu as Di } from "./plugins/context-menu.js";
|
|
36
|
+
import { PluginAnomalyDetection as Ii } from "./plugins/anomaly-detection.js";
|
|
37
|
+
import { PluginMLIntegration as Li } from "./plugins/ml-integration.js";
|
|
38
|
+
import { PluginPatternRecognition as Xi } from "./plugins/pattern-recognition.js";
|
|
39
|
+
import { PluginRegression as Bi } from "./plugins/regression.js";
|
|
40
|
+
import { PluginRadar as Gi } from "./plugins/radar.js";
|
|
41
|
+
import { PluginSnapshot as zi } from "./plugins/snapshot.js";
|
|
42
|
+
import { PluginDataTransform as $i } from "./plugins/data-transform.js";
|
|
43
|
+
import { PluginLaTeX as Hi } from "./plugins/latex.js";
|
|
44
|
+
import { PluginCaching as qi } from "./plugins/caching.js";
|
|
45
|
+
import { PluginLazyLoad as Ki } from "./plugins/lazy-load.js";
|
|
46
|
+
import { PluginBrokenAxis as Ji } from "./plugins/broken-axis.js";
|
|
47
|
+
import { PluginVideoRecorder as Zi } from "./plugins/video-recorder.js";
|
|
48
|
+
import { PluginOffscreen as ts } from "./plugins/offscreen.js";
|
|
49
|
+
import { PluginROI as as } from "./plugins/roi.js";
|
|
50
|
+
import { PluginForecasting as rs } from "./plugins/forecasting.js";
|
|
51
51
|
class ae {
|
|
52
52
|
constructor(e, t = {}) {
|
|
53
53
|
Y(this, "available");
|
|
@@ -62,16 +62,16 @@ class ae {
|
|
|
62
62
|
}
|
|
63
63
|
async init(e = {}) {
|
|
64
64
|
if (!this.available)
|
|
65
|
-
throw new Error("[
|
|
65
|
+
throw new Error("[VeloPlot] WebGPU is not supported in this environment");
|
|
66
66
|
const t = globalThis.navigator.gpu;
|
|
67
67
|
if (this.adapter = await t.requestAdapter({
|
|
68
68
|
powerPreference: e.powerPreference ?? "high-performance"
|
|
69
69
|
}), !this.adapter)
|
|
70
|
-
throw new Error("[
|
|
70
|
+
throw new Error("[VeloPlot] Failed to request WebGPU adapter");
|
|
71
71
|
this.device = await this.adapter.requestDevice();
|
|
72
72
|
const o = this.canvas.getContext("webgpu");
|
|
73
73
|
if (!o)
|
|
74
|
-
throw new Error("[
|
|
74
|
+
throw new Error("[VeloPlot] Failed to get WebGPU context");
|
|
75
75
|
this.context = o;
|
|
76
76
|
const r = e.preferredFormat ?? (t.getPreferredCanvasFormat ? t.getPreferredCanvasFormat() : "bgra8unorm");
|
|
77
77
|
this.context.configure({
|
|
@@ -105,7 +105,7 @@ const we = {
|
|
|
105
105
|
let i = n.valueDisplayMode ?? "disabled";
|
|
106
106
|
n.showAxisLabels !== void 0 && n.valueDisplayMode === void 0 && (i = n.showAxisLabels ? "floating" : "disabled");
|
|
107
107
|
const s = n.cornerPosition ?? "top-left";
|
|
108
|
-
let u = -1,
|
|
108
|
+
let u = -1, p = -1, S, v = null, h = null;
|
|
109
109
|
return {
|
|
110
110
|
onInit(f) {
|
|
111
111
|
S = "crosshair-overlay";
|
|
@@ -113,19 +113,19 @@ const we = {
|
|
|
113
113
|
zIndex: 500,
|
|
114
114
|
position: { top: "0", left: "0", right: "0", bottom: "0" }
|
|
115
115
|
});
|
|
116
|
-
v = document.createElement("canvas"), v.style.cssText = "width: 100%; height: 100%;", l.appendChild(v),
|
|
116
|
+
v = document.createElement("canvas"), v.style.cssText = "width: 100%; height: 100%;", l.appendChild(v), h = v.getContext("2d"), w(f);
|
|
117
117
|
},
|
|
118
118
|
onDestroy(f) {
|
|
119
|
-
f.ui.removeOverlay(S), v = null,
|
|
119
|
+
f.ui.removeOverlay(S), v = null, h = null;
|
|
120
120
|
},
|
|
121
121
|
onResize(f) {
|
|
122
122
|
w(f);
|
|
123
123
|
},
|
|
124
124
|
onInteraction(f, l) {
|
|
125
125
|
if (l.type === "mousemove") {
|
|
126
|
-
if (u = l.pixelX,
|
|
127
|
-
const P = f.coords.pickPoint(u,
|
|
128
|
-
P && (u = P.pixelX,
|
|
126
|
+
if (u = l.pixelX, p = l.pixelY, d && l.inPlotArea) {
|
|
127
|
+
const P = f.coords.pickPoint(u, p);
|
|
128
|
+
P && (u = P.pixelX, p = P.pixelY);
|
|
129
129
|
}
|
|
130
130
|
b(f);
|
|
131
131
|
}
|
|
@@ -134,51 +134,51 @@ const we = {
|
|
|
134
134
|
}
|
|
135
135
|
};
|
|
136
136
|
function w(f) {
|
|
137
|
-
if (!v || !
|
|
137
|
+
if (!v || !h) return;
|
|
138
138
|
const l = f.render.canvasSize, P = f.render.pixelRatio;
|
|
139
|
-
v.width = l.width * P, v.height = l.height * P,
|
|
139
|
+
v.width = l.width * P, v.height = l.height * P, h.setTransform(1, 0, 0, 1, 0, 0), h.scale(P, P);
|
|
140
140
|
}
|
|
141
141
|
function b(f) {
|
|
142
|
-
var
|
|
143
|
-
if (!
|
|
142
|
+
var M;
|
|
143
|
+
if (!h || !v) return;
|
|
144
144
|
const { width: l, height: P } = f.render.canvasSize;
|
|
145
|
-
if (
|
|
145
|
+
if (h.clearRect(0, 0, l, P), u < 0 || p < 0) return;
|
|
146
146
|
const x = f.render.plotArea;
|
|
147
|
-
if (u < x.x || u > x.x + x.width ||
|
|
147
|
+
if (u < x.x || u > x.x + x.width || p < x.y || p > x.y + x.height)
|
|
148
148
|
return;
|
|
149
|
-
const D = o || ((
|
|
150
|
-
|
|
149
|
+
const D = o || ((M = f.ui.theme.cursor) == null ? void 0 : M.color) || "#888888";
|
|
150
|
+
h.save(), h.strokeStyle = D, h.lineWidth = a, r === "dashed" ? h.setLineDash([6, 4]) : r === "dotted" && h.setLineDash([2, 2]), e && (h.beginPath(), h.moveTo(u, x.y), h.lineTo(u, x.y + x.height), h.stroke()), t && (h.beginPath(), h.moveTo(x.x, p), h.lineTo(x.x + x.width, p), h.stroke()), h.restore(), i === "floating" ? g(f, h, u, p, D) : i === "corner" && y(f, h, u, p, D);
|
|
151
151
|
}
|
|
152
152
|
function g(f, l, P, x, D) {
|
|
153
|
-
const
|
|
153
|
+
const M = f.coords.pixelToDataX(P), B = f.coords.pixelToDataY(x), C = f.render.plotArea;
|
|
154
154
|
l.save(), l.font = "11px system-ui, sans-serif", l.textAlign = "center", l.textBaseline = "top";
|
|
155
|
-
const _ =
|
|
155
|
+
const _ = M.toPrecision(c.xPrecision), A = l.measureText(_).width + 8, T = 18, I = P - A / 2, F = C.y + C.height + 2;
|
|
156
156
|
l.fillStyle = D, l.fillRect(I, F, A, T), l.fillStyle = "#ffffff", l.fillText(_, P, F + 3), l.textAlign = "right", l.textBaseline = "middle";
|
|
157
|
-
const
|
|
158
|
-
l.fillStyle = D, l.fillRect(R, U, X,
|
|
157
|
+
const L = B.toPrecision(c.yPrecision), X = l.measureText(L).width + 8, k = 18, R = C.x - X - 2, U = x - k / 2;
|
|
158
|
+
l.fillStyle = D, l.fillRect(R, U, X, k), l.fillStyle = "#ffffff", l.fillText(L, C.x - 6, x), l.restore();
|
|
159
159
|
}
|
|
160
160
|
function y(f, l, P, x, D) {
|
|
161
|
-
const
|
|
161
|
+
const M = f.coords.pixelToDataX(P), B = f.coords.pixelToDataY(x), C = f.render.plotArea;
|
|
162
162
|
l.save(), l.font = "11px system-ui, sans-serif";
|
|
163
|
-
const _ = `X: ${
|
|
164
|
-
let
|
|
163
|
+
const _ = `X: ${M.toPrecision(c.xPrecision)}`, m = `Y: ${B.toPrecision(c.yPrecision)}`, A = l.measureText(_), T = l.measureText(m), I = Math.max(A.width, T.width), F = 6, L = 16, E = I + F * 2, X = L * 2 + F * 2;
|
|
164
|
+
let k, R;
|
|
165
165
|
switch (s) {
|
|
166
166
|
case "top-left":
|
|
167
|
-
|
|
167
|
+
k = C.x + 8, R = C.y + 8;
|
|
168
168
|
break;
|
|
169
169
|
case "top-right":
|
|
170
|
-
|
|
170
|
+
k = C.x + C.width - E - 8, R = C.y + 8;
|
|
171
171
|
break;
|
|
172
172
|
case "bottom-left":
|
|
173
|
-
|
|
173
|
+
k = C.x + 8, R = C.y + C.height - X - 8;
|
|
174
174
|
break;
|
|
175
175
|
case "bottom-right":
|
|
176
|
-
|
|
176
|
+
k = C.x + C.width - E - 8, R = C.y + C.height - X - 8;
|
|
177
177
|
break;
|
|
178
178
|
default:
|
|
179
|
-
|
|
179
|
+
k = C.x + 8, R = C.y + 8;
|
|
180
180
|
}
|
|
181
|
-
l.fillStyle = D, l.globalAlpha = 0.85, l.fillRect(
|
|
181
|
+
l.fillStyle = D, l.globalAlpha = 0.85, l.fillRect(k, R, E, X), l.globalAlpha = 1, l.strokeStyle = "rgba(255,255,255,0.3)", l.lineWidth = 1, l.strokeRect(k, R, E, X), l.fillStyle = "#ffffff", l.textAlign = "left", l.textBaseline = "top", l.fillText(_, k + F, R + F), l.fillText(m, k + F, R + F + L), l.restore();
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
), Te = {
|
|
@@ -243,7 +243,7 @@ const we = {
|
|
|
243
243
|
if (!d) return;
|
|
244
244
|
const u = d.querySelector(".stats-content");
|
|
245
245
|
if (!u) return;
|
|
246
|
-
const
|
|
246
|
+
const p = s.data.getAllSeries(), S = o ? p.filter((b) => b.getId() === o) : p;
|
|
247
247
|
if (S.length === 0) {
|
|
248
248
|
u.innerHTML = "<div style='color: #888'>No data</div>";
|
|
249
249
|
return;
|
|
@@ -256,22 +256,22 @@ const we = {
|
|
|
256
256
|
u.innerHTML = "<div style='color: #888'>No data</div>";
|
|
257
257
|
return;
|
|
258
258
|
}
|
|
259
|
-
const
|
|
260
|
-
t.includes("count") && w.push(`<div>N: <span style="color: #60a5fa">${
|
|
259
|
+
const h = i(v), w = [];
|
|
260
|
+
t.includes("count") && w.push(`<div>N: <span style="color: #60a5fa">${h.count.toLocaleString()}</span></div>`), t.includes("mean") && w.push(`<div>μ: <span style="color: #60a5fa">${h.mean.toPrecision(4)}</span></div>`), t.includes("min") && w.push(`<div>Min: <span style="color: #60a5fa">${h.min.toPrecision(4)}</span></div>`), t.includes("max") && w.push(`<div>Max: <span style="color: #60a5fa">${h.max.toPrecision(4)}</span></div>`), t.includes("std") && w.push(`<div>σ: <span style="color: #60a5fa">${h.std.toPrecision(4)}</span></div>`), t.includes("range") && w.push(`<div>Range: <span style="color: #60a5fa">${h.range.toPrecision(4)}</span></div>`), u.innerHTML = w.join("");
|
|
261
261
|
}
|
|
262
262
|
function i(s) {
|
|
263
263
|
const u = s.length;
|
|
264
|
-
let
|
|
264
|
+
let p = 0, S = 1 / 0, v = -1 / 0;
|
|
265
265
|
for (const g of s)
|
|
266
|
-
|
|
267
|
-
const
|
|
266
|
+
p += g, g < S && (S = g), g > v && (v = g);
|
|
267
|
+
const h = p / u;
|
|
268
268
|
let w = 0;
|
|
269
269
|
for (const g of s)
|
|
270
|
-
w += (g -
|
|
270
|
+
w += (g - h) ** 2;
|
|
271
271
|
const b = Math.sqrt(w / u);
|
|
272
272
|
return {
|
|
273
273
|
count: u,
|
|
274
|
-
mean:
|
|
274
|
+
mean: h,
|
|
275
275
|
min: S,
|
|
276
276
|
max: v,
|
|
277
277
|
std: b,
|
|
@@ -285,7 +285,7 @@ const we = {
|
|
|
285
285
|
description: "Adds a customizable watermark to the chart",
|
|
286
286
|
provides: ["visualization"],
|
|
287
287
|
tags: ["watermark", "branding", "overlay"]
|
|
288
|
-
},
|
|
288
|
+
}, Ce = G(
|
|
289
289
|
Ae,
|
|
290
290
|
(n) => {
|
|
291
291
|
if (!(n != null && n.text))
|
|
@@ -305,19 +305,19 @@ const we = {
|
|
|
305
305
|
c.render.canvasSize;
|
|
306
306
|
const s = c.render.plotArea;
|
|
307
307
|
i.save(), i.font = `${t}px ${o}`, i.fillStyle = r, i.textAlign = "center", i.textBaseline = "middle";
|
|
308
|
-
let u,
|
|
309
|
-
a === "center" ? (u = s.x + s.width / 2,
|
|
308
|
+
let u, p;
|
|
309
|
+
a === "center" ? (u = s.x + s.width / 2, p = s.y + s.height / 2) : a === "bottom-right" ? (u = s.x + s.width - t, p = s.y + s.height - t / 2) : (u = s.x + t, p = s.y + s.height - t / 2), i.translate(u, p), i.rotate(d * Math.PI / 180), i.fillText(e, 0, 0), i.restore();
|
|
310
310
|
}
|
|
311
311
|
};
|
|
312
312
|
}
|
|
313
|
-
),
|
|
313
|
+
), Me = {
|
|
314
314
|
name: "grid-highlight",
|
|
315
315
|
version: "1.0.0",
|
|
316
316
|
description: "Highlights specific regions of the chart grid",
|
|
317
317
|
provides: ["visualization"],
|
|
318
318
|
tags: ["grid", "highlight", "regions"]
|
|
319
319
|
}, Fe = G(
|
|
320
|
-
|
|
320
|
+
Me,
|
|
321
321
|
(n = {}) => {
|
|
322
322
|
const { xIntervals: e = [], yIntervals: t = [], opacity: o = 0.1 } = n;
|
|
323
323
|
return {
|
|
@@ -421,7 +421,7 @@ const we = {
|
|
|
421
421
|
description: "Shows an arrow indicating the direction and trend of streaming data",
|
|
422
422
|
provides: ["visualization", "analysis"],
|
|
423
423
|
tags: ["streaming", "direction", "trend", "arrow"]
|
|
424
|
-
},
|
|
424
|
+
}, ke = G(
|
|
425
425
|
Ie,
|
|
426
426
|
(n = {}) => {
|
|
427
427
|
const {
|
|
@@ -433,8 +433,8 @@ const we = {
|
|
|
433
433
|
historySize: d = 20,
|
|
434
434
|
idleTimeout: c
|
|
435
435
|
} = n;
|
|
436
|
-
let i, s = null, u = null,
|
|
437
|
-
const v = [],
|
|
436
|
+
let i, s = null, u = null, p = null, S = null;
|
|
437
|
+
const v = [], h = [], w = [];
|
|
438
438
|
let b = d, g = null, y = Date.now(), f = -1 / 0, l = -1 / 0, P = c;
|
|
439
439
|
return {
|
|
440
440
|
onInit(m) {
|
|
@@ -452,13 +452,13 @@ const we = {
|
|
|
452
452
|
}
|
|
453
453
|
},
|
|
454
454
|
onDestroy(m) {
|
|
455
|
-
m.ui.removeOverlay(i), g && clearTimeout(g), s = null, u = null,
|
|
455
|
+
m.ui.removeOverlay(i), g && clearTimeout(g), s = null, u = null, p = null;
|
|
456
456
|
},
|
|
457
457
|
onResize(m) {
|
|
458
458
|
x(m);
|
|
459
459
|
},
|
|
460
460
|
onAfterRender(m) {
|
|
461
|
-
if (D(m),
|
|
461
|
+
if (D(m), C(m), P) {
|
|
462
462
|
g && clearTimeout(g);
|
|
463
463
|
const A = Date.now() - y;
|
|
464
464
|
A < P && (g = setTimeout(() => {
|
|
@@ -469,7 +469,7 @@ const we = {
|
|
|
469
469
|
onConfigChange(m, A) {
|
|
470
470
|
if (A.historySize !== void 0) {
|
|
471
471
|
for (b = A.historySize; v.length > b; ) v.shift();
|
|
472
|
-
for (;
|
|
472
|
+
for (; h.length > b; ) h.shift();
|
|
473
473
|
for (; w.length > b; ) w.shift();
|
|
474
474
|
}
|
|
475
475
|
A.idleTimeout !== void 0 && (P = A.idleTimeout);
|
|
@@ -486,22 +486,22 @@ const we = {
|
|
|
486
486
|
if (!T || !T.x || !T.y) return;
|
|
487
487
|
const I = T.x.length;
|
|
488
488
|
if (I < 2) return;
|
|
489
|
-
const F = T.x[I - 1],
|
|
490
|
-
(F !== f ||
|
|
489
|
+
const F = T.x[I - 1], L = T.y[I - 1];
|
|
490
|
+
(F !== f || L !== l) && (f = F, l = L, y = Date.now());
|
|
491
491
|
const E = Math.min(t, I), X = I - E;
|
|
492
|
-
let
|
|
492
|
+
let k = 0, R = 0, U = 0, K = 0, j = 0, J = 0;
|
|
493
493
|
for (let W = X; W < I; W++) {
|
|
494
494
|
const z = W - X, me = T.x[W], ye = T.y[W], Q = m.coords.dataToPixelX(me), Z = m.coords.dataToPixelY(ye);
|
|
495
|
-
|
|
495
|
+
k += z, R += Q, U += Z, K += z * Q, j += z * Z, J += z * z;
|
|
496
496
|
}
|
|
497
|
-
const $ =
|
|
497
|
+
const $ = k / E, se = R / E, le = U / E, H = J - E * $ * $;
|
|
498
498
|
if (Math.abs(H) < 1e-10) return;
|
|
499
|
-
const
|
|
500
|
-
v.push(de),
|
|
501
|
-
const fe =
|
|
502
|
-
|
|
499
|
+
const V = (K - E * $ * se) / H, q = (j - E * $ * le) / H, ce = Math.atan2(q, V), de = m.coords.dataToPixelX(F), ue = m.coords.dataToPixelY(L);
|
|
500
|
+
v.push(de), h.push(ue), v.length > b && (v.shift(), h.shift()), w.push(ce), w.length > b && w.shift();
|
|
501
|
+
const fe = M(v), ge = M(h), he = B(w), pe = Math.sqrt(V * V + q * q);
|
|
502
|
+
p = { angle: he, magnitude: pe, lastX: F, lastY: L, smoothX: fe, smoothY: ge };
|
|
503
503
|
}
|
|
504
|
-
function
|
|
504
|
+
function M(m) {
|
|
505
505
|
return m.length === 0 ? 0 : m.reduce((A, T) => A + T, 0) / m.length;
|
|
506
506
|
}
|
|
507
507
|
function B(m) {
|
|
@@ -511,26 +511,26 @@ const we = {
|
|
|
511
511
|
A += Math.cos(I), T += Math.sin(I);
|
|
512
512
|
return Math.atan2(T / m.length, A / m.length);
|
|
513
513
|
}
|
|
514
|
-
function
|
|
515
|
-
if (!u || !s || !
|
|
514
|
+
function C(m) {
|
|
515
|
+
if (!u || !s || !p) return;
|
|
516
516
|
const { width: A, height: T } = m.render.canvasSize;
|
|
517
|
-
if (u.clearRect(0, 0, A, T), P !== void 0 && Date.now() - y > P ||
|
|
518
|
-
const I =
|
|
519
|
-
u.save(), _(u, I, F,
|
|
517
|
+
if (u.clearRect(0, 0, A, T), P !== void 0 && Date.now() - y > P || p.magnitude < a) return;
|
|
518
|
+
const I = p.smoothX, F = p.smoothY, L = o || "#FF9800";
|
|
519
|
+
u.save(), _(u, I, F, p.angle, r, L), u.restore();
|
|
520
520
|
}
|
|
521
|
-
function _(m, A, T, I, F,
|
|
521
|
+
function _(m, A, T, I, F, L) {
|
|
522
522
|
const E = F * 0.6, X = F * 0.4;
|
|
523
|
-
m.save(), m.translate(A, T), m.rotate(I), m.fillStyle =
|
|
523
|
+
m.save(), m.translate(A, T), m.rotate(I), m.fillStyle = L, m.beginPath(), m.moveTo(E / 2, 0), m.lineTo(-E / 2, -X / 2), m.lineTo(-E / 2, X / 2), m.closePath(), m.fill(), m.restore();
|
|
524
524
|
}
|
|
525
525
|
}
|
|
526
|
-
),
|
|
526
|
+
), et = {
|
|
527
527
|
Crosshair: Se,
|
|
528
528
|
Statistics: be,
|
|
529
|
-
Watermark:
|
|
529
|
+
Watermark: Ce,
|
|
530
530
|
GridHighlight: Fe,
|
|
531
531
|
DataLogger: Ee,
|
|
532
|
-
DirectionIndicator:
|
|
533
|
-
},
|
|
532
|
+
DirectionIndicator: ke
|
|
533
|
+
}, Le = {
|
|
534
534
|
name: "velo-plot-drag-edit",
|
|
535
535
|
version: "1.0.0",
|
|
536
536
|
description: "Interactive drag & drop editing of data points",
|
|
@@ -561,7 +561,7 @@ const we = {
|
|
|
561
561
|
opacity: 0.5
|
|
562
562
|
}
|
|
563
563
|
};
|
|
564
|
-
function
|
|
564
|
+
function tt(n = {}) {
|
|
565
565
|
const e = { ...Re, ...n };
|
|
566
566
|
let t = null, o = !1, r = null, a = 0, d = 0, c = !1;
|
|
567
567
|
function i(g, y) {
|
|
@@ -585,7 +585,7 @@ function nt(n = {}) {
|
|
|
585
585
|
function u(g, y) {
|
|
586
586
|
return Math.round(g / y) * y;
|
|
587
587
|
}
|
|
588
|
-
function
|
|
588
|
+
function p(g, y, f) {
|
|
589
589
|
if (!r) return { x: g, y };
|
|
590
590
|
switch (f) {
|
|
591
591
|
case "x":
|
|
@@ -611,14 +611,14 @@ function nt(n = {}) {
|
|
|
611
611
|
return { x: f, y: l, valid: !0 };
|
|
612
612
|
}
|
|
613
613
|
function v(g, y, f, l) {
|
|
614
|
-
var D,
|
|
614
|
+
var D, M, B;
|
|
615
615
|
if (!t) return;
|
|
616
|
-
const P = (
|
|
616
|
+
const P = (M = (D = t.chart).getSeries) == null ? void 0 : M.call(D, g);
|
|
617
617
|
if (!P) return;
|
|
618
618
|
const x = P.getData();
|
|
619
619
|
!x || !x.x || !x.y || (x.x[y] = f, x.y[y] = l, (B = P.invalidateBuffers) == null || B.call(P), t.requestRender());
|
|
620
620
|
}
|
|
621
|
-
function
|
|
621
|
+
function h() {
|
|
622
622
|
return r ? {
|
|
623
623
|
seriesId: r.seriesId,
|
|
624
624
|
index: r.index,
|
|
@@ -635,8 +635,8 @@ function nt(n = {}) {
|
|
|
635
635
|
const { render: y, coords: f } = g, { ctx2d: l } = y;
|
|
636
636
|
if (!l) return;
|
|
637
637
|
l.save();
|
|
638
|
-
const P = f.dataToPixelX(r.originalX), x = f.dataToPixelY(r.originalY), D = f.dataToPixelX(r.currentX),
|
|
639
|
-
l.strokeStyle = e.previewStyle.color || "#ffffff", l.lineWidth = e.previewStyle.width || 2, l.globalAlpha = e.previewStyle.opacity || 0.5, l.setLineDash(e.previewStyle.dash || [5, 5]), l.beginPath(), l.moveTo(P, x), l.lineTo(D,
|
|
638
|
+
const P = f.dataToPixelX(r.originalX), x = f.dataToPixelY(r.originalY), D = f.dataToPixelX(r.currentX), M = f.dataToPixelY(r.currentY);
|
|
639
|
+
l.strokeStyle = e.previewStyle.color || "#ffffff", l.lineWidth = e.previewStyle.width || 2, l.globalAlpha = e.previewStyle.opacity || 0.5, l.setLineDash(e.previewStyle.dash || [5, 5]), l.beginPath(), l.moveTo(P, x), l.lineTo(D, M), l.stroke(), l.globalAlpha = 1, l.fillStyle = e.highlightColor, l.setLineDash([]), l.beginPath(), l.arc(D, M, 6, 0, Math.PI * 2), l.fill(), l.strokeStyle = "#000000", l.lineWidth = 1, l.stroke(), l.restore();
|
|
640
640
|
}
|
|
641
641
|
const b = {
|
|
642
642
|
enable() {
|
|
@@ -662,7 +662,7 @@ function nt(n = {}) {
|
|
|
662
662
|
}
|
|
663
663
|
};
|
|
664
664
|
return {
|
|
665
|
-
manifest:
|
|
665
|
+
manifest: Le,
|
|
666
666
|
onInit(g) {
|
|
667
667
|
t = g, t.chart.dragEdit = b;
|
|
668
668
|
},
|
|
@@ -677,22 +677,22 @@ function nt(n = {}) {
|
|
|
677
677
|
} else if (y.type === "mousemove") {
|
|
678
678
|
if (!r) return;
|
|
679
679
|
if (!o) {
|
|
680
|
-
const
|
|
681
|
-
if (Math.sqrt(
|
|
680
|
+
const M = y.pixelX - a, B = y.pixelY - d;
|
|
681
|
+
if (Math.sqrt(M * M + B * B) > e.dragThreshold) {
|
|
682
682
|
o = !0, c = !0;
|
|
683
|
-
const _ =
|
|
683
|
+
const _ = h();
|
|
684
684
|
_ && e.onDragStart(_);
|
|
685
685
|
} else
|
|
686
686
|
return;
|
|
687
687
|
}
|
|
688
688
|
o && y.preventDefault();
|
|
689
689
|
let { x: f, y: l } = s(y.pixelX, y.pixelY);
|
|
690
|
-
({ x: f, y: l } =
|
|
690
|
+
({ x: f, y: l } = p(f, l, e.constraint));
|
|
691
691
|
const { x: P, y: x, valid: D } = S(f, l);
|
|
692
692
|
if (D) {
|
|
693
693
|
r.currentX = P, r.currentY = x;
|
|
694
|
-
const
|
|
695
|
-
|
|
694
|
+
const M = h();
|
|
695
|
+
M && e.onDrag(M), t == null || t.requestRender();
|
|
696
696
|
}
|
|
697
697
|
} else if (y.type === "mouseup") {
|
|
698
698
|
if (!r) return;
|
|
@@ -703,7 +703,7 @@ function nt(n = {}) {
|
|
|
703
703
|
r.currentX,
|
|
704
704
|
r.currentY
|
|
705
705
|
);
|
|
706
|
-
const f =
|
|
706
|
+
const f = h();
|
|
707
707
|
f && e.onDragEnd(f), y.preventDefault();
|
|
708
708
|
}
|
|
709
709
|
r = null, o = !1, c = !1, t == null || t.requestRender();
|
|
@@ -747,10 +747,10 @@ function Be(n) {
|
|
|
747
747
|
function _e(n) {
|
|
748
748
|
const { plotArea: e, xLines: t, yLines: o } = n, r = e.y, a = e.y + e.height, d = e.x, c = e.x + e.width, i = (t.length + o.length) * 2, s = new Float32Array(i * 2);
|
|
749
749
|
let u = 0;
|
|
750
|
-
for (const
|
|
751
|
-
s[u++] =
|
|
752
|
-
for (const
|
|
753
|
-
s[u++] = d, s[u++] =
|
|
750
|
+
for (const p of t)
|
|
751
|
+
s[u++] = p, s[u++] = r, s[u++] = p, s[u++] = a;
|
|
752
|
+
for (const p of o)
|
|
753
|
+
s[u++] = d, s[u++] = p, s[u++] = c, s[u++] = p;
|
|
754
754
|
return s;
|
|
755
755
|
}
|
|
756
756
|
class Ge {
|
|
@@ -848,9 +848,9 @@ function Ue(n = {}) {
|
|
|
848
848
|
}
|
|
849
849
|
}, i = oe(e, t), s = new O(), u = new O();
|
|
850
850
|
s.setDomain(0, 1e6), u.setDomain(-1, 1), s.setRange(i.x, i.x + i.width), u.setRange(i.y + i.height, i.y);
|
|
851
|
-
const
|
|
852
|
-
d.clearRect(0, 0, e, t),
|
|
853
|
-
}, a), { xLines:
|
|
851
|
+
const p = new Pe(d, c), { avg: S, p95: v } = ie(() => {
|
|
852
|
+
d.clearRect(0, 0, e, t), p.drawGrid(i, s, u, { tickCount: o }, { tickCount: r });
|
|
853
|
+
}, a), { xLines: h, yLines: w } = re(i, s, u, o, r);
|
|
854
854
|
return {
|
|
855
855
|
backend: "canvas2d",
|
|
856
856
|
dpr: n.dpr ?? 1,
|
|
@@ -858,7 +858,7 @@ function Ue(n = {}) {
|
|
|
858
858
|
height: t,
|
|
859
859
|
xTicks: o,
|
|
860
860
|
yTicks: r,
|
|
861
|
-
lineSegments:
|
|
861
|
+
lineSegments: h.length + w.length,
|
|
862
862
|
avgFrameUs: Math.round(S),
|
|
863
863
|
p95FrameUs: Math.round(v),
|
|
864
864
|
frames: a
|
|
@@ -875,10 +875,10 @@ function $e(n = {}) {
|
|
|
875
875
|
}
|
|
876
876
|
const i = oe(e, t), s = new O(), u = new O();
|
|
877
877
|
s.setDomain(0, 1e6), u.setDomain(-1, 1), s.setRange(i.x, i.x + i.width), u.setRange(i.y + i.height, i.y);
|
|
878
|
-
const { xLines:
|
|
879
|
-
let
|
|
878
|
+
const { xLines: p, yLines: S } = re(i, s, u, o, r), v = { plotArea: i, xLines: p, yLines: S, width: e, height: t };
|
|
879
|
+
let h = 0;
|
|
880
880
|
const { avg: w, p95: b } = ie(() => {
|
|
881
|
-
|
|
881
|
+
h = c.draw(v);
|
|
882
882
|
}, a);
|
|
883
883
|
return c.destroy(), {
|
|
884
884
|
backend: "webgl",
|
|
@@ -887,13 +887,13 @@ function $e(n = {}) {
|
|
|
887
887
|
height: t,
|
|
888
888
|
xTicks: o,
|
|
889
889
|
yTicks: r,
|
|
890
|
-
lineSegments:
|
|
890
|
+
lineSegments: h,
|
|
891
891
|
avgFrameUs: Math.round(w),
|
|
892
892
|
p95FrameUs: Math.round(b),
|
|
893
893
|
frames: a
|
|
894
894
|
};
|
|
895
895
|
}
|
|
896
|
-
function
|
|
896
|
+
function nt(n) {
|
|
897
897
|
const e = (n == null ? void 0 : n.dpr) ?? 2, t = (n == null ? void 0 : n.frames) ?? 120, o = Ue({ dpr: e, frames: t, showMinor: !0 }), r = $e({ dpr: e, frames: t });
|
|
898
898
|
if (!r)
|
|
899
899
|
return {
|
|
@@ -910,7 +910,7 @@ function at(n) {
|
|
|
910
910
|
recommendation: a >= 20 ? "implement" : "defer"
|
|
911
911
|
};
|
|
912
912
|
}
|
|
913
|
-
const Oe = "1.17.0", He = "2026-07-05",
|
|
913
|
+
const Oe = "1.17.0", He = "2026-07-05", Ve = "Stage 1 baselines. Headless CI uses effective FPS (render throughput when rAF throttled) via scripts/benchmark-scenario-eval.mjs smoke floors.", qe = 0.1, Ne = 0.95, Ke = {
|
|
914
914
|
"line-1m-pan": {
|
|
915
915
|
minAvgFps: 50,
|
|
916
916
|
maxAvgFrameTimeMs: 20,
|
|
@@ -950,22 +950,22 @@ const Oe = "1.17.0", He = "2026-07-05", qe = "Stage 1 baselines. Headless CI use
|
|
|
950
950
|
dpr: 2,
|
|
951
951
|
description: "WebGL grid spike lines only @2x"
|
|
952
952
|
}
|
|
953
|
-
},
|
|
953
|
+
}, N = {
|
|
954
954
|
version: Oe,
|
|
955
955
|
recordedAt: He,
|
|
956
|
-
notes:
|
|
957
|
-
regressionThreshold:
|
|
958
|
-
webgpuMinFpsRatio:
|
|
956
|
+
notes: Ve,
|
|
957
|
+
regressionThreshold: qe,
|
|
958
|
+
webgpuMinFpsRatio: Ne,
|
|
959
959
|
scenarios: Ke
|
|
960
960
|
};
|
|
961
|
-
function
|
|
962
|
-
return
|
|
961
|
+
function at() {
|
|
962
|
+
return N;
|
|
963
963
|
}
|
|
964
|
-
function
|
|
965
|
-
const t =
|
|
964
|
+
function ot(n, e) {
|
|
965
|
+
const t = N.scenarios[n];
|
|
966
966
|
if (!t)
|
|
967
967
|
return { passed: !0, failures: [] };
|
|
968
|
-
const o = [], r =
|
|
968
|
+
const o = [], r = N.regressionThreshold ?? 0.1;
|
|
969
969
|
if ("avgFps" in e && t.minAvgFps !== void 0) {
|
|
970
970
|
const a = t.minAvgFps * (1 - r);
|
|
971
971
|
e.avgFps < a && o.push(
|
|
@@ -986,7 +986,7 @@ function rt(n, e) {
|
|
|
986
986
|
}
|
|
987
987
|
return { passed: o.length === 0, failures: o };
|
|
988
988
|
}
|
|
989
|
-
function
|
|
989
|
+
function rt(n, e, t, o = 0.95) {
|
|
990
990
|
if (!t || !e)
|
|
991
991
|
return {
|
|
992
992
|
webgl: n,
|
|
@@ -1019,7 +1019,7 @@ class je {
|
|
|
1019
1019
|
return e + this.next() * (t - e);
|
|
1020
1020
|
}
|
|
1021
1021
|
}
|
|
1022
|
-
function
|
|
1022
|
+
function it(n) {
|
|
1023
1023
|
const e = {
|
|
1024
1024
|
pointCount: 1e3,
|
|
1025
1025
|
amplitude: 1,
|
|
@@ -1038,7 +1038,7 @@ function st(n) {
|
|
|
1038
1038
|
}
|
|
1039
1039
|
return { x: t, y: o };
|
|
1040
1040
|
}
|
|
1041
|
-
function
|
|
1041
|
+
function st(n) {
|
|
1042
1042
|
const e = {
|
|
1043
1043
|
pointCount: 1e3,
|
|
1044
1044
|
amplitude: 1,
|
|
@@ -1057,7 +1057,7 @@ function lt(n) {
|
|
|
1057
1057
|
}
|
|
1058
1058
|
return { x: t, y: o };
|
|
1059
1059
|
}
|
|
1060
|
-
function
|
|
1060
|
+
function lt(n) {
|
|
1061
1061
|
const e = {
|
|
1062
1062
|
pointCount: 1e3,
|
|
1063
1063
|
amplitude: 1,
|
|
@@ -1076,7 +1076,7 @@ function ct(n) {
|
|
|
1076
1076
|
}
|
|
1077
1077
|
return { x: t, y: o };
|
|
1078
1078
|
}
|
|
1079
|
-
function
|
|
1079
|
+
function ct(n) {
|
|
1080
1080
|
const e = {
|
|
1081
1081
|
pointCount: 1e3,
|
|
1082
1082
|
amplitude: 1,
|
|
@@ -1095,7 +1095,7 @@ function dt(n) {
|
|
|
1095
1095
|
}
|
|
1096
1096
|
return { x: t, y: o };
|
|
1097
1097
|
}
|
|
1098
|
-
function
|
|
1098
|
+
function dt(n) {
|
|
1099
1099
|
const e = {
|
|
1100
1100
|
pointCount: 1e3,
|
|
1101
1101
|
xRange: [0, 100],
|
|
@@ -1116,7 +1116,7 @@ function ut(n) {
|
|
|
1116
1116
|
}
|
|
1117
1117
|
return { x: o, y: r };
|
|
1118
1118
|
}
|
|
1119
|
-
function
|
|
1119
|
+
function ut(n) {
|
|
1120
1120
|
const e = {
|
|
1121
1121
|
pointCount: 2e3,
|
|
1122
1122
|
vMin: -0.5,
|
|
@@ -1131,12 +1131,12 @@ function ft(n) {
|
|
|
1131
1131
|
for (let i = 0; i < a; i++) {
|
|
1132
1132
|
const s = c * a + i;
|
|
1133
1133
|
i < d ? o[s] = e.vMin + (e.vMax - e.vMin) * (i / d) : o[s] = e.vMax - (e.vMax - e.vMin) * ((i - d) / d);
|
|
1134
|
-
const u = o[s],
|
|
1134
|
+
const u = o[s], p = 0, S = i < d ? 1 : -1, v = 0.1, h = -Math.pow(u - p, 2) / (2 * v * v), w = e.peakCurrent * Math.exp(h), b = S * e.peakCurrent * 0.1, g = (Math.random() - 0.5) * 2 * e.noise * e.peakCurrent;
|
|
1135
1135
|
r[s] = S * w + b + g;
|
|
1136
1136
|
}
|
|
1137
1137
|
return { x: o, y: r };
|
|
1138
1138
|
}
|
|
1139
|
-
function
|
|
1139
|
+
function ft(n) {
|
|
1140
1140
|
const e = {
|
|
1141
1141
|
pointCount: 50,
|
|
1142
1142
|
rSolution: 100,
|
|
@@ -1147,12 +1147,12 @@ function gt(n) {
|
|
|
1147
1147
|
...n
|
|
1148
1148
|
}, t = new Float32Array(e.pointCount), o = new Float32Array(e.pointCount), r = Math.log10(e.frequency[1]), a = Math.log10(e.frequency[0]);
|
|
1149
1149
|
for (let d = 0; d < e.pointCount; d++) {
|
|
1150
|
-
const c = a - (a - r) * (d / (e.pointCount - 1)), i = 2 * Math.PI * Math.pow(10, c), s = e.rCharge * 1e-5, u = e.rSolution + e.rCharge / (1 + Math.pow(i * s, 2)),
|
|
1151
|
-
t[d] = u, o[d] = -
|
|
1150
|
+
const c = a - (a - r) * (d / (e.pointCount - 1)), i = 2 * Math.PI * Math.pow(10, c), s = e.rCharge * 1e-5, u = e.rSolution + e.rCharge / (1 + Math.pow(i * s, 2)), p = i * s * e.rCharge / (1 + Math.pow(i * s, 2));
|
|
1151
|
+
t[d] = u, o[d] = -p;
|
|
1152
1152
|
}
|
|
1153
1153
|
return { x: t, y: o };
|
|
1154
1154
|
}
|
|
1155
|
-
async function
|
|
1155
|
+
async function gt(n, e) {
|
|
1156
1156
|
const t = {
|
|
1157
1157
|
duration: 5e3,
|
|
1158
1158
|
warmup: 1e3,
|
|
@@ -1162,11 +1162,11 @@ async function pt(n, e) {
|
|
|
1162
1162
|
const d = n.getAllSeries().reduce((c, i) => c + i.getPointCount(), 0);
|
|
1163
1163
|
return new Promise((c) => {
|
|
1164
1164
|
const i = performance.now() + t.warmup + t.duration, s = performance.now() + t.warmup;
|
|
1165
|
-
let u = !1,
|
|
1165
|
+
let u = !1, p = 0;
|
|
1166
1166
|
function S() {
|
|
1167
1167
|
const v = performance.now();
|
|
1168
1168
|
if (v >= i) {
|
|
1169
|
-
const b = r.length > 0 ? r.reduce((P, x) => P + x, 0) / r.length : 0, g =
|
|
1169
|
+
const b = r.length > 0 ? r.reduce((P, x) => P + x, 0) / r.length : 0, g = p > 0 ? v - p : t.duration, y = a > 0 && g > 0 ? a / g * 1e3 : 0, f = o.length > 0 ? o.reduce((P, x) => P + x, 0) / o.length : b > 0 ? 1e3 / b : 0, l = {
|
|
1170
1170
|
avgFps: Math.round(y * 100) / 100,
|
|
1171
1171
|
minFps: Math.round((o.length > 0 ? Math.min(...o) : y) * 100) / 100,
|
|
1172
1172
|
maxFps: Math.round((o.length > 0 ? Math.max(...o) : y) * 100) / 100,
|
|
@@ -1181,12 +1181,12 @@ async function pt(n, e) {
|
|
|
1181
1181
|
c(l);
|
|
1182
1182
|
return;
|
|
1183
1183
|
}
|
|
1184
|
-
v >= s && !u && (u = !0,
|
|
1185
|
-
const
|
|
1184
|
+
v >= s && !u && (u = !0, p = v, a = 0, r.length = 0, o.length = 0);
|
|
1185
|
+
const h = performance.now();
|
|
1186
1186
|
n.render();
|
|
1187
1187
|
const w = performance.now();
|
|
1188
1188
|
if (u) {
|
|
1189
|
-
const b = w -
|
|
1189
|
+
const b = w - h;
|
|
1190
1190
|
r.push(b), a++;
|
|
1191
1191
|
const g = r.slice(-30);
|
|
1192
1192
|
if (g.length > 0) {
|
|
@@ -1217,7 +1217,7 @@ function ht(n, e) {
|
|
|
1217
1217
|
};
|
|
1218
1218
|
return t.format === "png" && n.exportImage && (r.image = n.exportImage()), r;
|
|
1219
1219
|
}
|
|
1220
|
-
function
|
|
1220
|
+
function pt(n, e, t = 1e-6) {
|
|
1221
1221
|
const o = [];
|
|
1222
1222
|
n.series.length !== e.series.length && o.push(`Series count: ${n.series.length} vs ${e.series.length}`);
|
|
1223
1223
|
for (let a = 0; a < Math.min(n.series.length, e.series.length); a++) {
|
|
@@ -1232,14 +1232,14 @@ function mt(n, e, t = 1e-6) {
|
|
|
1232
1232
|
differences: o
|
|
1233
1233
|
};
|
|
1234
1234
|
}
|
|
1235
|
-
function
|
|
1235
|
+
function mt(n, e) {
|
|
1236
1236
|
const t = [];
|
|
1237
1237
|
return e.minFps && n.avgFps < e.minFps && t.push(`FPS ${n.avgFps} < required ${e.minFps}`), e.maxFrameTime && n.avgFrameTime > e.maxFrameTime && t.push(`Frame time ${n.avgFrameTime}ms > required ${e.maxFrameTime}ms`), e.minThroughput && n.throughput < e.minThroughput && t.push(`Throughput ${n.throughput} < required ${e.minThroughput}`), {
|
|
1238
1238
|
passed: t.length === 0,
|
|
1239
1239
|
failures: t
|
|
1240
1240
|
};
|
|
1241
1241
|
}
|
|
1242
|
-
function
|
|
1242
|
+
function yt(n = 1) {
|
|
1243
1243
|
return new Promise((e) => {
|
|
1244
1244
|
let t = n;
|
|
1245
1245
|
function o() {
|
|
@@ -1248,293 +1248,304 @@ function xt(n = 1) {
|
|
|
1248
1248
|
requestAnimationFrame(o);
|
|
1249
1249
|
});
|
|
1250
1250
|
}
|
|
1251
|
-
function
|
|
1251
|
+
function xt(n) {
|
|
1252
1252
|
return new Promise((e) => setTimeout(e, n));
|
|
1253
1253
|
}
|
|
1254
1254
|
export {
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1255
|
+
wt as AnimationEngine,
|
|
1256
|
+
En as AnnotationManager,
|
|
1257
|
+
eo as BackpressureManager,
|
|
1258
|
+
bo as BaseBufferStore,
|
|
1259
|
+
Ao as BaseTextureStore,
|
|
1260
|
+
et as BuiltinPlugins,
|
|
1261
|
+
fr as ChartGroup,
|
|
1262
|
+
St as ChartInitQueue,
|
|
1263
|
+
to as CircularBuffer,
|
|
1264
|
+
Ko as ClipboardManager,
|
|
1265
1265
|
Se as CrosshairPlugin,
|
|
1266
1266
|
ee as DARK_THEME,
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1267
|
+
Tt as DEFAULT_ANIMATION_CONFIG,
|
|
1268
|
+
Oo as DEFAULT_KEY_BINDINGS,
|
|
1269
|
+
bt as DEFAULT_LAYOUT,
|
|
1270
|
+
At as DEFAULT_THEME,
|
|
1271
1271
|
Ee as DataLoggerPlugin,
|
|
1272
|
-
|
|
1273
|
-
|
|
1272
|
+
tr as DebugOverlay,
|
|
1273
|
+
ke as DirectionIndicatorPlugin,
|
|
1274
1274
|
Ct as ELECTROCHEM_THEME,
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1275
|
+
Sn as EventEmitter,
|
|
1276
|
+
Co as GpuBenchmark,
|
|
1277
|
+
Mo as GpuCompute,
|
|
1278
|
+
On as GpuRenderer,
|
|
1279
1279
|
Fe as GridHighlightPlugin,
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1280
|
+
Ho as KeyBindingManager,
|
|
1281
|
+
Mt as LIGHT_THEME,
|
|
1282
|
+
Io as LOCALE_DE_DE,
|
|
1283
|
+
ko as LOCALE_EN_US,
|
|
1284
|
+
Lo as LOCALE_ES_ES,
|
|
1285
|
+
Ro as LOCALE_FR_FR,
|
|
1286
|
+
Xo as LOCALE_JA_JP,
|
|
1287
|
+
Yo as LOCALE_PT_BR,
|
|
1288
|
+
Bo as LOCALE_ZH_CN,
|
|
1289
1289
|
O as LinearScale,
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1290
|
+
ir as LoadingIndicator,
|
|
1291
|
+
Ft as LogScale,
|
|
1292
|
+
Dt as MIDNIGHT_THEME,
|
|
1293
|
+
Et as NativeWebGLRenderer,
|
|
1294
1294
|
Pe as OverlayRenderer,
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1295
|
+
Fo as PipelineCache,
|
|
1296
|
+
vi as Plugin3D,
|
|
1297
|
+
xa as PluginAnalysis,
|
|
1298
|
+
In as PluginAnnotations,
|
|
1299
|
+
Ii as PluginAnomalyDetection,
|
|
1300
|
+
Ji as PluginBrokenAxis,
|
|
1301
|
+
qi as PluginCaching,
|
|
1302
|
+
jo as PluginClipboard,
|
|
1303
|
+
Di as PluginContextMenu,
|
|
1304
|
+
Mi as PluginDataExport,
|
|
1305
|
+
$i as PluginDataTransform,
|
|
1306
|
+
nr as PluginDebug,
|
|
1307
|
+
tt as PluginDragEdit,
|
|
1308
|
+
wr as PluginDrawingTools,
|
|
1309
|
+
rs as PluginForecasting,
|
|
1310
|
+
Do as PluginGpu,
|
|
1311
|
+
wi as PluginI18n,
|
|
1312
|
+
Ti as PluginKeyboard,
|
|
1313
|
+
Hi as PluginLaTeX,
|
|
1314
|
+
Ki as PluginLazyLoad,
|
|
1315
|
+
sr as PluginLoading,
|
|
1316
|
+
Li as PluginMLIntegration,
|
|
1317
|
+
It as PluginManagerImpl,
|
|
1318
|
+
ts as PluginOffscreen,
|
|
1319
|
+
Xi as PluginPatternRecognition,
|
|
1320
|
+
as as PluginROI,
|
|
1321
|
+
Gi as PluginRadar,
|
|
1322
|
+
Bi as PluginRegression,
|
|
1323
|
+
Sr as PluginReplay,
|
|
1324
|
+
zi as PluginSnapshot,
|
|
1325
|
+
no as PluginStreaming,
|
|
1326
|
+
Ai as PluginSync,
|
|
1327
|
+
Cr as PluginThemeEditor,
|
|
1328
|
+
Jn as PluginTools,
|
|
1329
|
+
Zi as PluginVideoRecorder,
|
|
1330
|
+
na as PluginVirtualization,
|
|
1331
1331
|
kt as SERIALIZATION_VERSION,
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1332
|
+
yr as STACKED_DEFAULT_MIN_PANE_RATIO,
|
|
1333
|
+
xr as STACKED_MAX_PANES,
|
|
1334
|
+
fo as SciChart,
|
|
1335
|
+
go as SciPlot,
|
|
1336
|
+
Lt as Series,
|
|
1337
|
+
Hn as SeriesAdapter,
|
|
1338
|
+
ho as StackedPlot,
|
|
1339
|
+
Rt as StateHistory,
|
|
1338
1340
|
be as StatsPlugin,
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
Vn as
|
|
1341
|
+
Mr as THEME_PRESETS,
|
|
1342
|
+
Qn as TOOLTIP_THEMES,
|
|
1343
|
+
Fr as ThemeEditor,
|
|
1344
|
+
Zn as TooltipManager,
|
|
1345
|
+
po as VeloPlot,
|
|
1346
|
+
Ce as WatermarkPlugin,
|
|
1347
|
+
Vn as WebGLBackend,
|
|
1348
|
+
qn as WebGPUBackend,
|
|
1346
1349
|
ae as WebGPURenderer,
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1350
|
+
pa as WorkerPool,
|
|
1351
|
+
Xt as addIndicatorToChart,
|
|
1352
|
+
Qr as adx,
|
|
1353
|
+
va as analyzeComplexSpectrum,
|
|
1354
|
+
Pa as analyzeSpectrum,
|
|
1355
|
+
Tn as applyBusinessDayX,
|
|
1356
|
+
Zr as aroon,
|
|
1357
|
+
wa as arraysToComplex,
|
|
1358
|
+
mt as assertPerformance,
|
|
1359
|
+
ei as atr,
|
|
1360
|
+
Sa as autoCorrelation,
|
|
1361
|
+
Ta as bandPassFilter,
|
|
1362
|
+
ba as bandStopFilter,
|
|
1363
|
+
Tr as barsToOhlc,
|
|
1361
1364
|
Ue as benchmarkCanvasGrid,
|
|
1362
|
-
|
|
1365
|
+
gt as benchmarkRender,
|
|
1363
1366
|
$e as benchmarkWebGLGrid,
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1367
|
+
Aa as blackmanWindow,
|
|
1368
|
+
ti as bollingerBands,
|
|
1369
|
+
Yt as bollingerBandsAsync,
|
|
1370
|
+
Bt as buildIndicatorPane,
|
|
1371
|
+
_t as buildIndicatorPaneFromPreset,
|
|
1372
|
+
Gt as buildIndicatorSeries,
|
|
1373
|
+
Wt as buildPositionLineAnnotation,
|
|
1374
|
+
bn as businessDaySpanMs,
|
|
1372
1375
|
Ca as butterworth,
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1376
|
+
Vr as calculateR2,
|
|
1377
|
+
Lr as calculateStats,
|
|
1378
|
+
aa as calculateTargetPoints,
|
|
1379
|
+
Ln as checkPluginCompatibility,
|
|
1380
|
+
nt as compareGridBackends,
|
|
1381
|
+
ot as compareScenarioToBaseline,
|
|
1382
|
+
pt as compareSnapshots,
|
|
1383
|
+
Ma as complexToArrays,
|
|
1384
|
+
zt as compressString,
|
|
1385
|
+
Ut as computeHeikinAshi,
|
|
1386
|
+
$t as computeIndicatorFromSeries,
|
|
1387
|
+
Ot as computeIndicatorPreset,
|
|
1388
|
+
ao as connectStreamToChart,
|
|
1389
|
+
Jo as copyToClipboard,
|
|
1390
|
+
oo as createBackpressureManager,
|
|
1391
|
+
Ht as createChart,
|
|
1392
|
+
gr as createChartGroup,
|
|
1393
|
+
Rn as createConfigurablePlugin,
|
|
1394
|
+
ar as createDebugOverlay,
|
|
1395
|
+
Nn as createGpuRenderer,
|
|
1396
|
+
Vt as createIndicatorSeries,
|
|
1397
|
+
Vo as createKeyBinding,
|
|
1398
|
+
lr as createLoadingIndicator,
|
|
1399
|
+
_o as createLocaleFormatter,
|
|
1400
|
+
ro as createLosslessBackpressure,
|
|
1401
|
+
hr as createMasterSlave,
|
|
1402
|
+
io as createMessageParser,
|
|
1403
|
+
br as createMockDatafeed,
|
|
1404
|
+
so as createMockStream,
|
|
1405
|
+
qt as createNativeRenderer,
|
|
1406
|
+
Xn as createPlugin,
|
|
1407
|
+
Nt as createPluginContext,
|
|
1408
|
+
lo as createRealtimeBackpressure,
|
|
1409
|
+
Yn as createRenderer,
|
|
1410
|
+
Kt as createScale,
|
|
1408
1411
|
ht as createSnapshot,
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1412
|
+
vr as createStackedChart,
|
|
1413
|
+
jt as createTheme,
|
|
1414
|
+
Dr as createThemeEditor,
|
|
1415
|
+
co as createWebSocketStream,
|
|
1416
|
+
Fa as crossCorrelation,
|
|
1417
|
+
ni as cumsum,
|
|
1418
|
+
qr as cumulativeIntegral,
|
|
1419
|
+
Jt as decodeFloat32Array,
|
|
1420
|
+
Qt as decompressString,
|
|
1421
|
+
Bn as defineAndRegister,
|
|
1419
1422
|
G as definePlugin,
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1423
|
+
ai as dema,
|
|
1424
|
+
Nr as derivative,
|
|
1425
|
+
oa as destroyDownsamplePool,
|
|
1426
|
+
Zt as destroyIndicatorPool,
|
|
1427
|
+
Da as detectAnomalies,
|
|
1428
|
+
Rr as detectCycles,
|
|
1429
|
+
en as detectIndicatorMarkers,
|
|
1430
|
+
Xr as detectPeaks,
|
|
1431
|
+
Ea as dominantFrequency,
|
|
1432
|
+
ra as downsampleAsync,
|
|
1433
|
+
Yr as downsampleLTTB,
|
|
1434
|
+
tn as easings,
|
|
1435
|
+
oi as ema,
|
|
1436
|
+
nn as emaAsync,
|
|
1437
|
+
or as enableDebugMode,
|
|
1438
|
+
an as encodeFloat32Array,
|
|
1439
|
+
rt as evaluateRendererCompare,
|
|
1440
|
+
Ia as exponentialMovingAverage,
|
|
1438
1441
|
ka as fft,
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1442
|
+
La as fftFromComplexInput,
|
|
1443
|
+
An as formatBusinessDayTick,
|
|
1444
|
+
Qo as formatData,
|
|
1445
|
+
Br as formatScientific,
|
|
1446
|
+
_r as formatValue,
|
|
1447
|
+
Gr as formatWithPrefix,
|
|
1448
|
+
Ra as gaussianSmooth,
|
|
1449
|
+
ut as generateCVData,
|
|
1450
|
+
Xa as generateContours,
|
|
1451
|
+
Wr as generateCycleColors,
|
|
1452
|
+
ft as generateNyquistData,
|
|
1453
|
+
dt as generateRandomData,
|
|
1454
|
+
lt as generateSawtoothWave,
|
|
1455
|
+
it as generateSineWave,
|
|
1456
|
+
st as generateSquareWave,
|
|
1457
|
+
ct as generateTriangleWave,
|
|
1458
|
+
at as getBaseline,
|
|
1459
|
+
zr as getBestPrefix,
|
|
1460
|
+
on as getChartInitQueue,
|
|
1461
|
+
Zo as getClipboardManager,
|
|
1462
|
+
ia as getDownsamplePoolSize,
|
|
1463
|
+
Go as getGlobalLocale,
|
|
1464
|
+
Wo as getLocale,
|
|
1465
|
+
_n as getPluginRegistry,
|
|
1462
1466
|
Ya as getPositiveFrequencies,
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1467
|
+
Er as getPresetNames,
|
|
1468
|
+
Ir as getPresetTheme,
|
|
1469
|
+
rn as getSharedAnimationEngine,
|
|
1470
|
+
sn as getThemeByName,
|
|
1471
|
+
ea as getTooltipThemeForChartTheme,
|
|
1468
1472
|
Ba as hammingWindow,
|
|
1469
1473
|
_a as hanningWindow,
|
|
1470
1474
|
Ga as highPassFilter,
|
|
1471
1475
|
Wa as ifft,
|
|
1472
1476
|
za as ifftComplex,
|
|
1473
1477
|
Ua as ifftFromArrays,
|
|
1474
|
-
|
|
1475
|
-
|
|
1478
|
+
Kr as integrate,
|
|
1479
|
+
ln as interleaveData,
|
|
1476
1480
|
Cn as isBusinessDay,
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1481
|
+
Mn as isBusinessDayScaleActive,
|
|
1482
|
+
$a as joinSegments,
|
|
1483
|
+
pr as linkCharts,
|
|
1484
|
+
Gn as listPluginsByCategory,
|
|
1485
|
+
Wn as loadPlugin,
|
|
1486
|
+
Oa as lowPassFilter,
|
|
1487
|
+
sa as lowerBoundX,
|
|
1488
|
+
la as lttbDownsample,
|
|
1489
|
+
ri as macd,
|
|
1490
|
+
cn as macdAsync,
|
|
1491
|
+
Fn as mapToBusinessDayScale,
|
|
1492
|
+
Ha as medianFilter,
|
|
1493
|
+
dn as mergeAnimationConfig,
|
|
1494
|
+
un as mergeLayoutOptions,
|
|
1495
|
+
ca as minMaxDownsample,
|
|
1496
|
+
ii as momentum,
|
|
1497
|
+
Ur as movingAverage,
|
|
1498
|
+
Va as nextPowerOf2,
|
|
1499
|
+
ma as nextTaskId,
|
|
1500
|
+
si as normalize,
|
|
1501
|
+
li as obv,
|
|
1502
|
+
da as ohlcDownsampleAsync,
|
|
1503
|
+
ua as ohlcMinMaxDownsample,
|
|
1504
|
+
fn as parseColor,
|
|
1505
|
+
Kn as parseColorToRGBA,
|
|
1506
|
+
qo as parseShortcut,
|
|
1507
|
+
ci as percentChange,
|
|
1503
1508
|
qa as powerSpectrum,
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1509
|
+
gn as queueChartInit,
|
|
1510
|
+
zo as registerLocale,
|
|
1511
|
+
zn as registerPlugin,
|
|
1507
1512
|
hn as resetChartQueue,
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1513
|
+
di as roc,
|
|
1514
|
+
ui as rsi,
|
|
1515
|
+
pn as rsiAsync,
|
|
1511
1516
|
Na as savitzkyGolay,
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1517
|
+
Uo as setGlobalLocale,
|
|
1518
|
+
cr as showLoading,
|
|
1519
|
+
dr as showProgress,
|
|
1520
|
+
Ka as simpsonsIntegration,
|
|
1521
|
+
ja as singleFrequencyFilter,
|
|
1522
|
+
fa as sliceSeriesToViewport,
|
|
1523
|
+
fi as sma,
|
|
1524
|
+
mn as smaAsync,
|
|
1525
|
+
jr as solveLinearSystem,
|
|
1526
|
+
gi as standardDeviation,
|
|
1527
|
+
yn as stateToUrlHash,
|
|
1528
|
+
hi as stochastic,
|
|
1529
|
+
$r as subtractBaseline,
|
|
1530
|
+
Ja as tTest,
|
|
1531
|
+
pi as tema,
|
|
1532
|
+
Qa as trapezoidalIntegration,
|
|
1533
|
+
ga as upperBoundX,
|
|
1534
|
+
xn as urlHashToState,
|
|
1535
|
+
mo as useChartGroup,
|
|
1536
|
+
yo as useChartSync,
|
|
1537
|
+
xo as useIndicator,
|
|
1538
|
+
vo as useSciChart,
|
|
1539
|
+
Po as useSciPlot,
|
|
1540
|
+
wo as useStackedPlot,
|
|
1541
|
+
So as useVeloPlot,
|
|
1542
|
+
vn as validateChartState,
|
|
1543
|
+
Or as validateData,
|
|
1544
|
+
Un as validateManifest,
|
|
1545
|
+
mi as vwap,
|
|
1546
|
+
xt as waitFor,
|
|
1547
|
+
Pn as waitForAnimations,
|
|
1548
|
+
yt as waitForFrames,
|
|
1549
|
+
yi as wma
|
|
1539
1550
|
};
|
|
1540
1551
|
//# sourceMappingURL=velo-plot.full.js.map
|