@simahfud/pine-to-kline 0.1.1 → 0.1.3
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/index.d.ts +696 -21
- package/dist/pine-to-kline.js +17 -14
- package/dist/pine-to-kline.js.map +1 -1
- package/dist/pine-to-kline.umd.js +1 -1
- package/dist/pine-to-kline.umd.js.map +1 -1
- package/package.json +1 -1
- package/dist/PineInterpreter.d.ts +0 -19
- package/dist/PineInterpreter.d.ts.map +0 -1
- package/dist/PineInterpreter.js +0 -89
- package/dist/PineInterpreter.js.map +0 -1
- package/dist/adapter/FigureMapper.d.ts +0 -8
- package/dist/adapter/FigureMapper.d.ts.map +0 -1
- package/dist/adapter/FigureMapper.js +0 -22
- package/dist/adapter/FigureMapper.js.map +0 -1
- package/dist/adapter/KlineAdapter.d.ts +0 -11
- package/dist/adapter/KlineAdapter.d.ts.map +0 -1
- package/dist/adapter/KlineAdapter.js +0 -88
- package/dist/adapter/KlineAdapter.js.map +0 -1
- package/dist/adapter/StyleMapper.d.ts +0 -10
- package/dist/adapter/StyleMapper.d.ts.map +0 -1
- package/dist/adapter/StyleMapper.js +0 -28
- package/dist/adapter/StyleMapper.js.map +0 -1
- package/dist/builtins/color/constants.d.ts +0 -7
- package/dist/builtins/color/constants.d.ts.map +0 -1
- package/dist/builtins/color/constants.js +0 -25
- package/dist/builtins/color/constants.js.map +0 -1
- package/dist/builtins/color/functions.d.ts +0 -21
- package/dist/builtins/color/functions.d.ts.map +0 -1
- package/dist/builtins/color/functions.js +0 -52
- package/dist/builtins/color/functions.js.map +0 -1
- package/dist/builtins/index.d.ts +0 -15
- package/dist/builtins/index.d.ts.map +0 -1
- package/dist/builtins/index.js +0 -32
- package/dist/builtins/index.js.map +0 -1
- package/dist/builtins/input/functions.d.ts +0 -28
- package/dist/builtins/input/functions.d.ts.map +0 -1
- package/dist/builtins/input/functions.js +0 -114
- package/dist/builtins/input/functions.js.map +0 -1
- package/dist/builtins/math/functions.d.ts +0 -9
- package/dist/builtins/math/functions.d.ts.map +0 -1
- package/dist/builtins/math/functions.js +0 -57
- package/dist/builtins/math/functions.js.map +0 -1
- package/dist/builtins/ta/crossover.d.ts +0 -18
- package/dist/builtins/ta/crossover.d.ts.map +0 -1
- package/dist/builtins/ta/crossover.js +0 -59
- package/dist/builtins/ta/crossover.js.map +0 -1
- package/dist/builtins/ta/index.d.ts +0 -12
- package/dist/builtins/ta/index.d.ts.map +0 -1
- package/dist/builtins/ta/index.js +0 -61
- package/dist/builtins/ta/index.js.map +0 -1
- package/dist/builtins/ta/momentum.d.ts +0 -22
- package/dist/builtins/ta/momentum.d.ts.map +0 -1
- package/dist/builtins/ta/momentum.js +0 -81
- package/dist/builtins/ta/momentum.js.map +0 -1
- package/dist/builtins/ta/moving-averages.d.ts +0 -24
- package/dist/builtins/ta/moving-averages.d.ts.map +0 -1
- package/dist/builtins/ta/moving-averages.js +0 -108
- package/dist/builtins/ta/moving-averages.js.map +0 -1
- package/dist/builtins/ta/utility.d.ts +0 -28
- package/dist/builtins/ta/utility.d.ts.map +0 -1
- package/dist/builtins/ta/utility.js +0 -156
- package/dist/builtins/ta/utility.js.map +0 -1
- package/dist/builtins/ta/volatility.d.ts +0 -21
- package/dist/builtins/ta/volatility.d.ts.map +0 -1
- package/dist/builtins/ta/volatility.js +0 -71
- package/dist/builtins/ta/volatility.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -24
- package/dist/index.js.map +0 -1
- package/dist/lexer/Lexer.d.ts +0 -40
- package/dist/lexer/Lexer.d.ts.map +0 -1
- package/dist/lexer/Lexer.js +0 -383
- package/dist/lexer/Lexer.js.map +0 -1
- package/dist/lexer/Token.d.ts +0 -16
- package/dist/lexer/Token.d.ts.map +0 -1
- package/dist/lexer/Token.js +0 -26
- package/dist/lexer/Token.js.map +0 -1
- package/dist/lexer/TokenType.d.ts +0 -74
- package/dist/lexer/TokenType.d.ts.map +0 -1
- package/dist/lexer/TokenType.js +0 -111
- package/dist/lexer/TokenType.js.map +0 -1
- package/dist/parser/Parser.d.ts +0 -55
- package/dist/parser/Parser.d.ts.map +0 -1
- package/dist/parser/Parser.js +0 -569
- package/dist/parser/Parser.js.map +0 -1
- package/dist/parser/nodes/index.d.ts +0 -215
- package/dist/parser/nodes/index.d.ts.map +0 -1
- package/dist/parser/nodes/index.js +0 -7
- package/dist/parser/nodes/index.js.map +0 -1
- package/dist/plugin/KlineChartProPlugin.d.ts +0 -43
- package/dist/plugin/KlineChartProPlugin.d.ts.map +0 -1
- package/dist/plugin/KlineChartProPlugin.js +0 -44
- package/dist/plugin/KlineChartProPlugin.js.map +0 -1
- package/dist/runtime/BarContext.d.ts +0 -23
- package/dist/runtime/BarContext.d.ts.map +0 -1
- package/dist/runtime/BarContext.js +0 -41
- package/dist/runtime/BarContext.js.map +0 -1
- package/dist/runtime/PineRuntime.d.ts +0 -51
- package/dist/runtime/PineRuntime.d.ts.map +0 -1
- package/dist/runtime/PineRuntime.js +0 -471
- package/dist/runtime/PineRuntime.js.map +0 -1
- package/dist/runtime/SeriesEmulator.d.ts +0 -21
- package/dist/runtime/SeriesEmulator.d.ts.map +0 -1
- package/dist/runtime/SeriesEmulator.js +0 -32
- package/dist/runtime/SeriesEmulator.js.map +0 -1
- package/dist/runtime/VarPersistence.d.ts +0 -20
- package/dist/runtime/VarPersistence.d.ts.map +0 -1
- package/dist/runtime/VarPersistence.js +0 -28
- package/dist/runtime/VarPersistence.js.map +0 -1
- package/dist/types.d.ts +0 -97
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -6
- package/dist/types.js.map +0 -1
- package/dist/utils/errors.d.ts +0 -24
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -46
- package/dist/utils/errors.js.map +0 -1
package/dist/types.d.ts
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* pine-to-kline — Core Type Definitions
|
|
3
|
-
* @license Apache-2.0
|
|
4
|
-
*/
|
|
5
|
-
export interface KlineData {
|
|
6
|
-
timestamp: number;
|
|
7
|
-
open: number;
|
|
8
|
-
high: number;
|
|
9
|
-
low: number;
|
|
10
|
-
close: number;
|
|
11
|
-
volume?: number;
|
|
12
|
-
turnover?: number;
|
|
13
|
-
}
|
|
14
|
-
export interface PineInterpreterOptions {
|
|
15
|
-
/** Target Pine Script version */
|
|
16
|
-
version?: 'v5' | 'v6';
|
|
17
|
-
/** Strict mode — error on unsupported features */
|
|
18
|
-
strict?: boolean;
|
|
19
|
-
/** Enable sandbox isolation */
|
|
20
|
-
sandbox?: boolean;
|
|
21
|
-
/** Warning callback */
|
|
22
|
-
onWarning?: (msg: string) => void;
|
|
23
|
-
/** Error callback */
|
|
24
|
-
onError?: (err: Error) => void;
|
|
25
|
-
}
|
|
26
|
-
export interface CompileResult {
|
|
27
|
-
success: boolean;
|
|
28
|
-
indicatorConfig: IndicatorConfig;
|
|
29
|
-
name: string;
|
|
30
|
-
warnings: string[];
|
|
31
|
-
errors: Error[];
|
|
32
|
-
}
|
|
33
|
-
export interface ValidationResult {
|
|
34
|
-
valid: boolean;
|
|
35
|
-
errors: Error[];
|
|
36
|
-
}
|
|
37
|
-
export interface IndicatorFigure {
|
|
38
|
-
key: string;
|
|
39
|
-
title: string;
|
|
40
|
-
type: 'line' | 'bar' | 'circle';
|
|
41
|
-
styles?: (data: any, indicator: any, defaultStyles: any) => any;
|
|
42
|
-
}
|
|
43
|
-
export interface IndicatorConfig {
|
|
44
|
-
name: string;
|
|
45
|
-
shortName: string;
|
|
46
|
-
series?: string;
|
|
47
|
-
calcParams: any[];
|
|
48
|
-
figures: IndicatorFigure[];
|
|
49
|
-
regenerateFigures?: (params: any[]) => IndicatorFigure[];
|
|
50
|
-
calc: (dataList: KlineData[], indicator: any) => Record<string, any>[];
|
|
51
|
-
draw?: (params: any) => boolean;
|
|
52
|
-
createTooltipDataSource?: (params: any) => any;
|
|
53
|
-
}
|
|
54
|
-
export interface PineInput {
|
|
55
|
-
id: string;
|
|
56
|
-
type: 'int' | 'float' | 'bool' | 'string' | 'color' | 'source';
|
|
57
|
-
title: string | null;
|
|
58
|
-
defaultValue: any;
|
|
59
|
-
minval?: number;
|
|
60
|
-
maxval?: number;
|
|
61
|
-
step?: number;
|
|
62
|
-
options?: any[];
|
|
63
|
-
}
|
|
64
|
-
export interface PinePlot {
|
|
65
|
-
id: string;
|
|
66
|
-
title: string | null;
|
|
67
|
-
color: string | null;
|
|
68
|
-
linewidth: number;
|
|
69
|
-
style: string | null;
|
|
70
|
-
editable?: boolean;
|
|
71
|
-
}
|
|
72
|
-
export interface PineHline {
|
|
73
|
-
price: number;
|
|
74
|
-
title: string | null;
|
|
75
|
-
color: string | null;
|
|
76
|
-
linestyle: string | null;
|
|
77
|
-
linewidth: number;
|
|
78
|
-
}
|
|
79
|
-
export interface PineMeta {
|
|
80
|
-
name: string;
|
|
81
|
-
shortName: string | null;
|
|
82
|
-
overlay: boolean;
|
|
83
|
-
format: string | null;
|
|
84
|
-
precision: number | null;
|
|
85
|
-
scale: string | null;
|
|
86
|
-
max_bars_back: number | null;
|
|
87
|
-
}
|
|
88
|
-
export interface PineIR {
|
|
89
|
-
meta: PineMeta;
|
|
90
|
-
inputs: PineInput[];
|
|
91
|
-
plots: PinePlot[];
|
|
92
|
-
hlines: PineHline[];
|
|
93
|
-
calcFn: (dataList: KlineData[], params: any[]) => Record<string, any>[];
|
|
94
|
-
warnings: string[];
|
|
95
|
-
errors: Error[];
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
DELETED
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
package/dist/utils/errors.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* pine-to-kline — Error Classes
|
|
3
|
-
* @license Apache-2.0
|
|
4
|
-
*/
|
|
5
|
-
export declare class PineError extends Error {
|
|
6
|
-
readonly line?: number | undefined;
|
|
7
|
-
readonly column?: number | undefined;
|
|
8
|
-
readonly source?: string | undefined;
|
|
9
|
-
constructor(message: string, line?: number | undefined, column?: number | undefined, source?: string | undefined);
|
|
10
|
-
toString(): string;
|
|
11
|
-
}
|
|
12
|
-
export declare class LexerError extends PineError {
|
|
13
|
-
constructor(message: string, line?: number, column?: number);
|
|
14
|
-
}
|
|
15
|
-
export declare class ParseError extends PineError {
|
|
16
|
-
constructor(message: string, line?: number, column?: number);
|
|
17
|
-
}
|
|
18
|
-
export declare class RuntimeError extends PineError {
|
|
19
|
-
constructor(message: string, line?: number, column?: number);
|
|
20
|
-
}
|
|
21
|
-
export declare class AdapterError extends PineError {
|
|
22
|
-
constructor(message: string);
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qBAAa,SAAU,SAAQ,KAAK;aAGhB,IAAI,CAAC,EAAE,MAAM;aACb,MAAM,CAAC,EAAE,MAAM;aACf,MAAM,CAAC,EAAE,MAAM;gBAH/B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,MAAM,CAAC,EAAE,MAAM,YAAA;IAMjC,QAAQ,IAAI,MAAM;CAKnB;AAED,qBAAa,UAAW,SAAQ,SAAS;gBAC3B,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAI5D;AAED,qBAAa,UAAW,SAAQ,SAAS;gBAC3B,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAI5D;AAED,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAI5D;AAED,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,EAAE,MAAM;CAI5B"}
|
package/dist/utils/errors.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* pine-to-kline — Error Classes
|
|
3
|
-
* @license Apache-2.0
|
|
4
|
-
*/
|
|
5
|
-
export class PineError extends Error {
|
|
6
|
-
line;
|
|
7
|
-
column;
|
|
8
|
-
source;
|
|
9
|
-
constructor(message, line, column, source) {
|
|
10
|
-
super(message);
|
|
11
|
-
this.line = line;
|
|
12
|
-
this.column = column;
|
|
13
|
-
this.source = source;
|
|
14
|
-
this.name = 'PineError';
|
|
15
|
-
}
|
|
16
|
-
toString() {
|
|
17
|
-
const loc = this.line != null ? ` at line ${this.line}` : '';
|
|
18
|
-
const col = this.column != null ? `:${this.column}` : '';
|
|
19
|
-
return `${this.name}: ${this.message}${loc}${col}`;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
export class LexerError extends PineError {
|
|
23
|
-
constructor(message, line, column) {
|
|
24
|
-
super(message, line, column);
|
|
25
|
-
this.name = 'LexerError';
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
export class ParseError extends PineError {
|
|
29
|
-
constructor(message, line, column) {
|
|
30
|
-
super(message, line, column);
|
|
31
|
-
this.name = 'ParseError';
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
export class RuntimeError extends PineError {
|
|
35
|
-
constructor(message, line, column) {
|
|
36
|
-
super(message, line, column);
|
|
37
|
-
this.name = 'RuntimeError';
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
export class AdapterError extends PineError {
|
|
41
|
-
constructor(message) {
|
|
42
|
-
super(message);
|
|
43
|
-
this.name = 'AdapterError';
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=errors.js.map
|
package/dist/utils/errors.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,OAAO,SAAU,SAAQ,KAAK;IAGhB;IACA;IACA;IAJlB,YACE,OAAe,EACC,IAAa,EACb,MAAe,EACf,MAAe;QAE/B,KAAK,CAAC,OAAO,CAAC,CAAA;QAJE,SAAI,GAAJ,IAAI,CAAS;QACb,WAAM,GAAN,MAAM,CAAS;QACf,WAAM,GAAN,MAAM,CAAS;QAG/B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAA;IACzB,CAAC;IAED,QAAQ;QACN,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACxD,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,GAAG,GAAG,GAAG,GAAG,EAAE,CAAA;IACpD,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,YAAY,OAAe,EAAE,IAAa,EAAE,MAAe;QACzD,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,YAAY,CAAA;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,YAAY,OAAe,EAAE,IAAa,EAAE,MAAe;QACzD,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,YAAY,CAAA;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,IAAa,EAAE,MAAe;QACzD,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,cAAc,CAAA;IAC5B,CAAC;CACF"}
|