@tradecanvas/core 0.7.1 → 0.8.1
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/dist/charts/EquivolumeRenderer.d.ts +11 -0
- package/dist/charts/EquivolumeRenderer.d.ts.map +1 -0
- package/dist/charts/index.d.ts +1 -0
- package/dist/charts/index.d.ts.map +1 -1
- package/dist/drawings/tools/FibTimeZones.d.ts +12 -0
- package/dist/drawings/tools/FibTimeZones.d.ts.map +1 -0
- package/dist/drawings/tools/index.d.ts +1 -0
- package/dist/drawings/tools/index.d.ts.map +1 -1
- package/dist/index.cjs +6 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7037 -6759
- package/dist/index.js.map +1 -1
- package/dist/interaction/InteractionManager.d.ts.map +1 -1
- package/dist/realtime/ReplayController.d.ts +67 -0
- package/dist/realtime/ReplayController.d.ts.map +1 -0
- package/dist/realtime/index.d.ts +2 -0
- package/dist/realtime/index.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/interaction/InteractionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,qBAAa,kBAAkB;IAmBjB,OAAO,CAAC,OAAO;IAlB3B,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,cAAc,CAAsC;IAC5D,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,WAAW,CAAS;IAI5B,OAAO,CAAC,UAAU,CAAwB;gBAEtB,OAAO,EAAE,WAAW;IAExC,uBAAuB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAE7C,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IACxC,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAC1C,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAEpD,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,GAAG,IAAI;IAKrF,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,GAAG,IAAI;IAKrF,MAAM,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/interaction/InteractionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,qBAAa,kBAAkB;IAmBjB,OAAO,CAAC,OAAO;IAlB3B,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,cAAc,CAAsC;IAC5D,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,aAAa,CAAsB;IAG3C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,WAAW,CAAS;IAI5B,OAAO,CAAC,UAAU,CAAwB;gBAEtB,OAAO,EAAE,WAAW;IAExC,uBAAuB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAE7C,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IACxC,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAC1C,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAEpD,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,GAAG,IAAI;IAKrF,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,GAAG,IAAI;IAKrF,MAAM,IAAI,IAAI;IAiKd,MAAM,IAAI,IAAI;IAMd,mEAAmE;IACnE,cAAc,IAAI,IAAI;IAItB,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;CAOzB"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { OHLCBar, DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
import { Emitter } from './Emitter.js';
|
|
3
|
+
export type ReplayStatus = 'idle' | 'playing' | 'paused' | 'finished';
|
|
4
|
+
export interface ReplayBarEvent {
|
|
5
|
+
bar: OHLCBar;
|
|
6
|
+
index: number;
|
|
7
|
+
total: number;
|
|
8
|
+
}
|
|
9
|
+
export interface ReplayStateChangeEvent {
|
|
10
|
+
status: ReplayStatus;
|
|
11
|
+
index: number;
|
|
12
|
+
total: number;
|
|
13
|
+
}
|
|
14
|
+
export interface ReplayEventMap {
|
|
15
|
+
bar: ReplayBarEvent;
|
|
16
|
+
finished: {
|
|
17
|
+
total: number;
|
|
18
|
+
};
|
|
19
|
+
stateChange: ReplayStateChangeEvent;
|
|
20
|
+
[key: string]: unknown;
|
|
21
|
+
}
|
|
22
|
+
export interface ReplayOptions {
|
|
23
|
+
/** Full historical dataset to replay through. */
|
|
24
|
+
data: DataSeries;
|
|
25
|
+
/** Bars emitted per second. Default 1. */
|
|
26
|
+
speed?: number;
|
|
27
|
+
/** Index of the first bar to emit (0-based). Default 0. */
|
|
28
|
+
startIndex?: number;
|
|
29
|
+
/** Auto-start when constructed. Default false. */
|
|
30
|
+
autoStart?: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Drives historical bars forward at a controlled speed.
|
|
34
|
+
*
|
|
35
|
+
* Decoupled from Chart — consumers subscribe to `bar` events and wire them
|
|
36
|
+
* into a Chart (via appendBar) or a Backtester. The controller never touches
|
|
37
|
+
* the chart directly, which keeps it reusable for headless analytics.
|
|
38
|
+
*/
|
|
39
|
+
export declare class ReplayController extends Emitter<ReplayEventMap> {
|
|
40
|
+
private readonly data;
|
|
41
|
+
private speed;
|
|
42
|
+
private index;
|
|
43
|
+
private status;
|
|
44
|
+
private timer;
|
|
45
|
+
constructor(opts: ReplayOptions);
|
|
46
|
+
getStatus(): ReplayStatus;
|
|
47
|
+
getIndex(): number;
|
|
48
|
+
getTotal(): number;
|
|
49
|
+
/** Bars at indices [0, index) — useful for seeding the chart before replay. */
|
|
50
|
+
getPrefix(): DataSeries;
|
|
51
|
+
/** Begin emitting from current index. Idempotent if already playing. */
|
|
52
|
+
start(): void;
|
|
53
|
+
pause(): void;
|
|
54
|
+
resume(): void;
|
|
55
|
+
stop(): void;
|
|
56
|
+
/** Emit N bars synchronously without waiting for the timer. */
|
|
57
|
+
step(n?: number): void;
|
|
58
|
+
/** Jump to a specific index without emitting bars in between. */
|
|
59
|
+
seek(index: number): void;
|
|
60
|
+
setSpeed(barsPerSecond: number): void;
|
|
61
|
+
destroy(): void;
|
|
62
|
+
private scheduleNext;
|
|
63
|
+
private emitNext;
|
|
64
|
+
private clearTimer;
|
|
65
|
+
private transition;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ReplayController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReplayController.d.ts","sourceRoot":"","sources":["../../src/realtime/ReplayController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,cAAc,CAAC;IACpB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,WAAW,EAAE,sBAAsB,CAAC;IACpC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,iDAAiD;IACjD,IAAI,EAAE,UAAU,CAAC;IACjB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,qBAAa,gBAAiB,SAAQ,OAAO,CAAC,cAAc,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,KAAK,CAA8C;gBAE/C,IAAI,EAAE,aAAa;IAY/B,SAAS,IAAI,YAAY;IAIzB,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,MAAM;IAIlB,+EAA+E;IAC/E,SAAS,IAAI,UAAU;IAIvB,wEAAwE;IACxE,KAAK,IAAI,IAAI;IAUb,KAAK,IAAI,IAAI;IAMb,MAAM,IAAI,IAAI;IAId,IAAI,IAAI,IAAI;IAMZ,+DAA+D;IAC/D,IAAI,CAAC,CAAC,SAAI,GAAG,IAAI;IASjB,iEAAiE;IACjE,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQzB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAQrC,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,QAAQ;IAkBhB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;CASnB"}
|
package/dist/realtime/index.d.ts
CHANGED
|
@@ -4,5 +4,7 @@ export { ReconnectManager } from './ReconnectManager.js';
|
|
|
4
4
|
export { StreamManager } from './StreamManager.js';
|
|
5
5
|
export type { StreamEvents } from './StreamManager.js';
|
|
6
6
|
export { CurrentPriceLine } from './CurrentPriceLine.js';
|
|
7
|
+
export { ReplayController } from './ReplayController.js';
|
|
8
|
+
export type { ReplayBarEvent, ReplayEventMap, ReplayOptions, ReplayStateChangeEvent, ReplayStatus, } from './ReplayController.js';
|
|
7
9
|
export * from './adapters/index.js';
|
|
8
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/realtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/realtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,YAAY,GACb,MAAM,uBAAuB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tradecanvas/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Canvas rendering engine for @tradecanvas/chart",
|
|
6
6
|
"license": "MIT",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"README.md"
|
|
35
35
|
],
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@tradecanvas/commons": "0.
|
|
37
|
+
"@tradecanvas/commons": "0.8.1"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"vitest": "^2.1.8"
|