@invinite-org/chartlang-compiler 1.0.1 → 1.1.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 +101 -0
- package/README.md +3 -0
- package/dist/analysis/extractCapabilities.d.ts +5 -1
- package/dist/analysis/extractCapabilities.d.ts.map +1 -1
- package/dist/analysis/extractCapabilities.js +6 -2
- package/dist/analysis/extractCapabilities.js.map +1 -1
- package/dist/analysis/extractDependencyGraph.d.ts +160 -0
- package/dist/analysis/extractDependencyGraph.d.ts.map +1 -0
- package/dist/analysis/extractDependencyGraph.js +690 -0
- package/dist/analysis/extractDependencyGraph.js.map +1 -0
- package/dist/analysis/extractInputs.d.ts +5 -1
- package/dist/analysis/extractInputs.d.ts.map +1 -1
- package/dist/analysis/extractInputs.js +6 -2
- package/dist/analysis/extractInputs.js.map +1 -1
- package/dist/analysis/extractMaxLookback.d.ts +6 -1
- package/dist/analysis/extractMaxLookback.d.ts.map +1 -1
- package/dist/analysis/extractMaxLookback.js +10 -5
- package/dist/analysis/extractMaxLookback.js.map +1 -1
- package/dist/analysis/forbiddenConstructs.d.ts.map +1 -1
- package/dist/analysis/forbiddenConstructs.js +3 -0
- package/dist/analysis/forbiddenConstructs.js.map +1 -1
- package/dist/analysis/index.d.ts +3 -1
- package/dist/analysis/index.d.ts.map +1 -1
- package/dist/analysis/index.js +1 -0
- package/dist/analysis/index.js.map +1 -1
- package/dist/analysis/structuralChecks.d.ts +64 -8
- package/dist/analysis/structuralChecks.d.ts.map +1 -1
- package/dist/analysis/structuralChecks.js +111 -22
- package/dist/analysis/structuralChecks.js.map +1 -1
- package/dist/api.d.ts +40 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +484 -35
- package/dist/api.js.map +1 -1
- package/dist/bundle.d.ts +90 -3
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +59 -5
- package/dist/bundle.js.map +1 -1
- package/dist/dependency/index.d.ts +3 -0
- package/dist/dependency/index.d.ts.map +1 -0
- package/dist/dependency/index.js +4 -0
- package/dist/dependency/index.js.map +1 -0
- package/dist/dependency/resolveProducer.d.ts +183 -0
- package/dist/dependency/resolveProducer.d.ts.map +1 -0
- package/dist/dependency/resolveProducer.js +256 -0
- package/dist/dependency/resolveProducer.js.map +1 -0
- package/dist/diagnostics.d.ts +6 -2
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/diagnostics.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/manifest.d.ts +8 -1
- package/dist/manifest.d.ts.map +1 -1
- package/dist/manifest.js +27 -0
- package/dist/manifest.js.map +1 -1
- package/dist/program.d.ts +1 -0
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +80 -4
- package/dist/program.js.map +1 -1
- package/dist/transformers/callsiteIdInjection.d.ts +2 -1
- package/dist/transformers/callsiteIdInjection.d.ts.map +1 -1
- package/dist/transformers/callsiteIdInjection.js +15 -0
- package/dist/transformers/callsiteIdInjection.js.map +1 -1
- package/dist/transformers/index.d.ts +2 -0
- package/dist/transformers/index.d.ts.map +1 -1
- package/dist/transformers/index.js +1 -0
- package/dist/transformers/index.js.map +1 -1
- package/dist/transformers/plotKindFromCallsite.d.ts +43 -0
- package/dist/transformers/plotKindFromCallsite.d.ts.map +1 -0
- package/dist/transformers/plotKindFromCallsite.js +103 -0
- package/dist/transformers/plotKindFromCallsite.js.map +1 -0
- package/dist/transformers/rewriteDependencyAccessors.d.ts +65 -0
- package/dist/transformers/rewriteDependencyAccessors.d.ts.map +1 -0
- package/dist/transformers/rewriteDependencyAccessors.js +204 -0
- package/dist/transformers/rewriteDependencyAccessors.js.map +1 -0
- package/dist/typesEmit.d.ts +14 -11
- package/dist/typesEmit.d.ts.map +1 -1
- package/dist/typesEmit.js +91 -7
- package/dist/typesEmit.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractDependencyGraph.js","sourceRoot":"","sources":["../../src/analysis/extractDependencyGraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,10 @@ export type ExtractInputsResult = Readonly<{
|
|
|
33
33
|
* `defineIndicator({ inputs: { ... } })`, `defineAlert`, or
|
|
34
34
|
* `defineDrawing` into the manifest's `inputs` record.
|
|
35
35
|
*
|
|
36
|
+
* The optional `scope` parameter narrows the walk to a single AST subtree
|
|
37
|
+
* (typically one binding's `defineCall`) so multi-export files derive
|
|
38
|
+
* per-binding inputs. Defaults to the whole `sourceFile`.
|
|
39
|
+
*
|
|
36
40
|
* @since 0.4
|
|
37
41
|
* @example
|
|
38
42
|
* // const r = extractInputs(sourceFile, checker, "demo.chart.ts");
|
|
@@ -40,5 +44,5 @@ export type ExtractInputsResult = Readonly<{
|
|
|
40
44
|
* const fn: typeof extractInputs = extractInputs;
|
|
41
45
|
* void fn;
|
|
42
46
|
*/
|
|
43
|
-
export declare function extractInputs(sourceFile: ts.SourceFile, checker: ts.TypeChecker, sourcePath?: string): ExtractInputsResult;
|
|
47
|
+
export declare function extractInputs(sourceFile: ts.SourceFile, checker: ts.TypeChecker, sourcePath?: string, scope?: ts.Node): ExtractInputsResult;
|
|
44
48
|
//# sourceMappingURL=extractInputs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractInputs.d.ts","sourceRoot":"","sources":["../../src/analysis/extractInputs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AA0C7E;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IACvC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACtD,oBAAoB,EAAE,OAAO,CAAC;IAC9B,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH
|
|
1
|
+
{"version":3,"file":"extractInputs.d.ts","sourceRoot":"","sources":["../../src/analysis/extractInputs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AA0C7E;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IACvC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACtD,oBAAoB,EAAE,OAAO,CAAC;IAC9B,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CACzB,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,GAAE,MAA4B,EACxC,KAAK,GAAE,EAAE,CAAC,IAAiB,GAC5B,mBAAmB,CAwErB"}
|
|
@@ -44,6 +44,10 @@ const KIND_TO_WIRE = Object.freeze({
|
|
|
44
44
|
* `defineIndicator({ inputs: { ... } })`, `defineAlert`, or
|
|
45
45
|
* `defineDrawing` into the manifest's `inputs` record.
|
|
46
46
|
*
|
|
47
|
+
* The optional `scope` parameter narrows the walk to a single AST subtree
|
|
48
|
+
* (typically one binding's `defineCall`) so multi-export files derive
|
|
49
|
+
* per-binding inputs. Defaults to the whole `sourceFile`.
|
|
50
|
+
*
|
|
47
51
|
* @since 0.4
|
|
48
52
|
* @example
|
|
49
53
|
* // const r = extractInputs(sourceFile, checker, "demo.chart.ts");
|
|
@@ -51,7 +55,7 @@ const KIND_TO_WIRE = Object.freeze({
|
|
|
51
55
|
* const fn: typeof extractInputs = extractInputs;
|
|
52
56
|
* void fn;
|
|
53
57
|
*/
|
|
54
|
-
export function extractInputs(sourceFile, checker, sourcePath = sourceFile.fileName) {
|
|
58
|
+
export function extractInputs(sourceFile, checker, sourcePath = sourceFile.fileName, scope = sourceFile) {
|
|
55
59
|
const inputs = {};
|
|
56
60
|
const diagnostics = [];
|
|
57
61
|
let userPickableInterval = false;
|
|
@@ -110,7 +114,7 @@ export function extractInputs(sourceFile, checker, sourcePath = sourceFile.fileN
|
|
|
110
114
|
}
|
|
111
115
|
ts.forEachChild(node, visit);
|
|
112
116
|
};
|
|
113
|
-
|
|
117
|
+
visit(scope);
|
|
114
118
|
return Object.freeze({
|
|
115
119
|
inputs: Object.freeze({ ...inputs }),
|
|
116
120
|
userPickableInterval,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractInputs.js","sourceRoot":"","sources":["../../src/analysis/extractInputs.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAA0B,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;IACzB,iBAAiB;IACjB,aAAa;IACb,eAAe;IACf,sBAAsB;CACzB,CAAC,CAAC;AAEH,sDAAsD;AACtD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IACxB,KAAK;IACL,OAAO;IACP,MAAM;IACN,QAAQ;IACR,MAAM;IACN,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,QAAQ;IACR,UAAU;IACV,gBAAgB;CACnB,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,YAAY,GAAqC,MAAM,CAAC,MAAM,CAAC;IACjE,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,iBAAiB;CACpC,CAAC,CAAC;AAgCH
|
|
1
|
+
{"version":3,"file":"extractInputs.js","sourceRoot":"","sources":["../../src/analysis/extractInputs.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,11 @@ export type ExtractMaxLookbackResult = Readonly<{
|
|
|
26
26
|
* reads on Phase-1 series shapes: `bar.<ohlcv>[N]`, `ta.<name>(...)[N]`,
|
|
27
27
|
* and identifier-bound series variables (`const e = ta.ema(...); e[N];`).
|
|
28
28
|
*
|
|
29
|
+
* The optional `scope` parameter narrows both the series-variable
|
|
30
|
+
* collection and the lookback walk to a single AST subtree (typically
|
|
31
|
+
* one binding's `defineCall`) so multi-export files derive per-binding
|
|
32
|
+
* `maxLookback` values. Defaults to the whole `sourceFile`.
|
|
33
|
+
*
|
|
29
34
|
* @since 0.1
|
|
30
35
|
* @example
|
|
31
36
|
* // const { maxLookback, seriesCapacities, diagnostics } =
|
|
@@ -33,5 +38,5 @@ export type ExtractMaxLookbackResult = Readonly<{
|
|
|
33
38
|
* const fn: typeof extractMaxLookback = extractMaxLookback;
|
|
34
39
|
* void fn;
|
|
35
40
|
*/
|
|
36
|
-
export declare function extractMaxLookback(sourceFile: ts.SourceFile, checker: ts.TypeChecker, sourcePath: string): ExtractMaxLookbackResult;
|
|
41
|
+
export declare function extractMaxLookback(sourceFile: ts.SourceFile, checker: ts.TypeChecker, sourcePath: string, scope?: ts.Node): ExtractMaxLookbackResult;
|
|
37
42
|
//# sourceMappingURL=extractMaxLookback.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractMaxLookback.d.ts","sourceRoot":"","sources":["../../src/analysis/extractMaxLookback.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAK7E;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH
|
|
1
|
+
{"version":3,"file":"extractMaxLookback.d.ts","sourceRoot":"","sources":["../../src/analysis/extractMaxLookback.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAK7E;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAC9B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,EAAE,CAAC,IAAiB,GAC5B,wBAAwB,CAuC1B"}
|
|
@@ -10,6 +10,11 @@ const OHLCV_FIELDS = new Set(["close", "open", "high", "low", "volume", "time"])
|
|
|
10
10
|
* reads on Phase-1 series shapes: `bar.<ohlcv>[N]`, `ta.<name>(...)[N]`,
|
|
11
11
|
* and identifier-bound series variables (`const e = ta.ema(...); e[N];`).
|
|
12
12
|
*
|
|
13
|
+
* The optional `scope` parameter narrows both the series-variable
|
|
14
|
+
* collection and the lookback walk to a single AST subtree (typically
|
|
15
|
+
* one binding's `defineCall`) so multi-export files derive per-binding
|
|
16
|
+
* `maxLookback` values. Defaults to the whole `sourceFile`.
|
|
17
|
+
*
|
|
13
18
|
* @since 0.1
|
|
14
19
|
* @example
|
|
15
20
|
* // const { maxLookback, seriesCapacities, diagnostics } =
|
|
@@ -17,11 +22,11 @@ const OHLCV_FIELDS = new Set(["close", "open", "high", "low", "volume", "time"])
|
|
|
17
22
|
* const fn: typeof extractMaxLookback = extractMaxLookback;
|
|
18
23
|
* void fn;
|
|
19
24
|
*/
|
|
20
|
-
export function extractMaxLookback(sourceFile, checker, sourcePath) {
|
|
25
|
+
export function extractMaxLookback(sourceFile, checker, sourcePath, scope = sourceFile) {
|
|
21
26
|
let maxLookback = 0;
|
|
22
27
|
const seriesCapacities = {};
|
|
23
28
|
const diagnostics = [];
|
|
24
|
-
const seriesVarNames = collectSeriesVarNames(
|
|
29
|
+
const seriesVarNames = collectSeriesVarNames(scope, checker);
|
|
25
30
|
const visit = (node) => {
|
|
26
31
|
if (ts.isElementAccessExpression(node)) {
|
|
27
32
|
if (isSeriesShapedAccess(node, checker, seriesVarNames)) {
|
|
@@ -46,14 +51,14 @@ export function extractMaxLookback(sourceFile, checker, sourcePath) {
|
|
|
46
51
|
}
|
|
47
52
|
ts.forEachChild(node, visit);
|
|
48
53
|
};
|
|
49
|
-
|
|
54
|
+
visit(scope);
|
|
50
55
|
return Object.freeze({
|
|
51
56
|
maxLookback,
|
|
52
57
|
seriesCapacities: Object.freeze({ ...seriesCapacities }),
|
|
53
58
|
diagnostics: Object.freeze(diagnostics.slice()),
|
|
54
59
|
});
|
|
55
60
|
}
|
|
56
|
-
function collectSeriesVarNames(
|
|
61
|
+
function collectSeriesVarNames(scope, checker) {
|
|
57
62
|
const names = new Set();
|
|
58
63
|
const visit = (node) => {
|
|
59
64
|
if (ts.isVariableDeclaration(node) && ts.isIdentifier(node.name)) {
|
|
@@ -67,7 +72,7 @@ function collectSeriesVarNames(sourceFile, checker) {
|
|
|
67
72
|
}
|
|
68
73
|
ts.forEachChild(node, visit);
|
|
69
74
|
};
|
|
70
|
-
|
|
75
|
+
visit(scope);
|
|
71
76
|
return names;
|
|
72
77
|
}
|
|
73
78
|
function isSeriesShapedAccess(node, checker, seriesVarNames) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractMaxLookback.js","sourceRoot":"","sources":["../../src/analysis/extractMaxLookback.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAA0B,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAuBjF
|
|
1
|
+
{"version":3,"file":"extractMaxLookback.js","sourceRoot":"","sources":["../../src/analysis/extractMaxLookback.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forbiddenConstructs.d.ts","sourceRoot":"","sources":["../../src/analysis/forbiddenConstructs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"forbiddenConstructs.d.ts","sourceRoot":"","sources":["../../src/analysis/forbiddenConstructs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAwB7E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAClC,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,UAAU,EAAE,MAAM,GACnB,aAAa,CAAC,iBAAiB,CAAC,CAoLlC"}
|
|
@@ -12,6 +12,9 @@ const HOSTILE_GLOBAL_NAMES = new Set([
|
|
|
12
12
|
"Date",
|
|
13
13
|
"eval",
|
|
14
14
|
"require",
|
|
15
|
+
// Phase 7 — the indicator-composition rewriter synthesises calls to
|
|
16
|
+
// this helper; user scripts must not name-collide with the slot.
|
|
17
|
+
"__chartlang_depOutput",
|
|
15
18
|
]);
|
|
16
19
|
const COMPARISON_OPS = new Set([
|
|
17
20
|
ts.SyntaxKind.LessThanToken,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forbiddenConstructs.js","sourceRoot":"","sources":["../../src/analysis/forbiddenConstructs.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAA0B,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACjC,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,SAAS;IACT,uBAAuB;IACvB,MAAM;IACN,MAAM;IACN,SAAS;
|
|
1
|
+
{"version":3,"file":"forbiddenConstructs.js","sourceRoot":"","sources":["../../src/analysis/forbiddenConstructs.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAA0B,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACjC,OAAO;IACP,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,SAAS;IACT,uBAAuB;IACvB,MAAM;IACN,MAAM;IACN,SAAS;IACT,oEAAoE;IACpE,iEAAiE;IACjE,uBAAuB;CAC1B,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAgB;IAC1C,EAAE,CAAC,UAAU,CAAC,aAAa;IAC3B,EAAE,CAAC,UAAU,CAAC,mBAAmB;IACjC,EAAE,CAAC,UAAU,CAAC,gBAAgB;IAC9B,EAAE,CAAC,UAAU,CAAC,sBAAsB;CACvC,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,sBAAsB,CAClC,UAAyB,EACzB,UAAkB;IAElB,MAAM,WAAW,GAAwB,EAAE,CAAC;IAE5C,SAAS,IAAI,CACT,IAAa,EACb,IAAmE,EACnE,OAAe;QAEf,WAAW,CAAC,IAAI,CACZ,gBAAgB,CAAC;YACb,QAAQ,EAAE,OAAO;YACjB,IAAI;YACJ,OAAO;YACP,IAAI,EAAE,UAAU;YAChB,IAAI;YACJ,UAAU;SACb,CAAC,CACL,CAAC;IACN,CAAC;IAED,SAAS,iBAAiB,CAAC,IAAqB;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACtD,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACrE,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;QAC5C,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAC;QACpE,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QACpD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACpE,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACnD,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAChE,IAAI,CAAC,EAAE,CAAC,wBAAwB,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QACxD,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACrE,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,gBAAgB,CAAC,IAAa,EAAE,SAAuC;QAC5E,IAAI,OAAO,GAAwB,IAAI,CAAC,MAAM,CAAC;QAC/C,OAAO,OAAO,EAAE,CAAC;YACb,IAAI,SAAS,CAAC,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,SAAS,iBAAiB,CAAC,MAAe,EAAE,IAAmB;QAC3D,MAAM,KAAK,GAAG,MAAqC,CAAC;QACpD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACtC,OAAO,CACH,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC;YAChC,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC;YAC/B,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC;YAC7B,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAC5B,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC;YAChC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;YACtB,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;YACjC,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;YACjC,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAC5B,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,CACjC,CAAC;IACN,CAAC;IAED,SAAS,qBAAqB,CAAC,IAAa;QACxC,IAAI,OAAO,GAAwB,IAAI,CAAC,MAAM,CAAC;QAC/C,OAAO,OAAO,EAAE,CAAC;YACb,IAAI,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACpD,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7B,CAAC;YACD,IAAI,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;gBACxC,IACI,WAAW;oBACX,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,EAC3E,CAAC;oBACC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC7B,CAAC;YACL,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,IAAa,EAAQ,EAAE;QAClC,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;QACnE,CAAC;aAAM,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,4CAA4C,CAAC,CAAC;QAC/E,CAAC;aAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,iCAAiC,CAAC,CAAC;QACpE,CAAC;aAAM,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI,CACA,IAAI,EACJ,gBAAgB,EAChB,sFAAsF,CACzF,CAAC;YACN,CAAC;QACL,CAAC;aAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,IAAI,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC7B,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,wBAAwB,CAAC,CAAC;gBAC3D,CAAC;qBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,CAAC;gBAC9D,CAAC;YACL,CAAC;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;gBACzD,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,oCAAoC,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACjD,IACI,YAAY,KAAK,IAAI;gBACrB,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;gBAC3B,UAAU,CAAC,IAAI,KAAK,YAAY,EAClC,CAAC;gBACC,IAAI,CACA,IAAI,EACJ,uBAAuB,EACvB,4BAA4B,YAAY,oBAAoB,CAC/D,CAAC;YACN,CAAC;QACL,CAAC;aAAM,IAAI,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,IAAI,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAChE,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,qCAAqC,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;aAAM,IAAI,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,IAAI,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5D,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC9B,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,+BAA+B,CAAC,CAAC;gBAClE,CAAC;YACL,CAAC;iBAAM,IAAI,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACnE,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;aAAM,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7B,OAAO;YACX,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,MAAM,IAAI,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC5C,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7B,OAAO;YACX,CAAC;YACD,IACI,MAAM;gBACN,CAAC,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC;oBAClC,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC;oBAC/B,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC;oBAC9B,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC;oBAC3B,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC;oBAC5B,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EACnC,CAAC;gBACC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7B,OAAO;YACX,CAAC;YACD,MAAM,mBAAmB,GAAG,gBAAgB,CACxC,IAAI,EACJ,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAC5E,CAAC;YACF,IAAI,mBAAmB,EAAE,CAAC;gBACtB,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7B,OAAO;YACX,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC;QACrE,CAAC;QACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAEnC,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;AAC9C,CAAC"}
|
package/dist/analysis/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { runStructuralChecks } from "./structuralChecks.js";
|
|
2
|
-
export type { StructuralCheckResult } from "./structuralChecks.js";
|
|
2
|
+
export type { StructuralBindingInfo, StructuralCheckResult } from "./structuralChecks.js";
|
|
3
3
|
export { runForbiddenConstructs } from "./forbiddenConstructs.js";
|
|
4
4
|
export { runStatefulCallInLoop } from "./statefulCallInLoop.js";
|
|
5
5
|
export { extractCapabilities } from "./extractCapabilities.js";
|
|
@@ -12,4 +12,6 @@ export { validateLowerTfIntervals } from "./validateLowerTfIntervals.js";
|
|
|
12
12
|
export { extractRequiresIntervals } from "./extractRequiresIntervals.js";
|
|
13
13
|
export { extractAlertConditions } from "./extractAlertConditions.js";
|
|
14
14
|
export type { ExtractAlertConditionsResult } from "./extractAlertConditions.js";
|
|
15
|
+
export { extractDependencyGraph } from "./extractDependencyGraph.js";
|
|
16
|
+
export type { DepConsumesEntry, DepGraph, DrawnScript, PrivateDep, ProducerRef, ProducerSnapshot, ResolveProducer, } from "./extractDependencyGraph.js";
|
|
15
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EACR,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,GAClB,MAAM,6BAA6B,CAAC"}
|
package/dist/analysis/index.js
CHANGED
|
@@ -10,4 +10,5 @@ export { extractRequestedIntervals } from "./extractRequestedIntervals.js";
|
|
|
10
10
|
export { validateLowerTfIntervals } from "./validateLowerTfIntervals.js";
|
|
11
11
|
export { extractRequiresIntervals } from "./extractRequiresIntervals.js";
|
|
12
12
|
export { extractAlertConditions } from "./extractAlertConditions.js";
|
|
13
|
+
export { extractDependencyGraph } from "./extractDependencyGraph.js";
|
|
13
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -13,6 +13,15 @@ type ScaleAxis = "price" | "left" | "right" | "new";
|
|
|
13
13
|
* void o;
|
|
14
14
|
*/
|
|
15
15
|
export type StructuralScriptOverrides = Readonly<{
|
|
16
|
+
/**
|
|
17
|
+
* `defineIndicator({ overlay })` literal-boolean extraction. Persisted
|
|
18
|
+
* onto `ScriptManifest.overlay` so the runtime can derive each script's
|
|
19
|
+
* default pane at mount. Only `true` / `false` literals are picked up;
|
|
20
|
+
* any other initializer is silently ignored.
|
|
21
|
+
*
|
|
22
|
+
* @since 0.2
|
|
23
|
+
*/
|
|
24
|
+
overlay?: boolean;
|
|
16
25
|
maxBarsBack?: number;
|
|
17
26
|
format?: ValueFormat;
|
|
18
27
|
precision?: number;
|
|
@@ -20,6 +29,40 @@ export type StructuralScriptOverrides = Readonly<{
|
|
|
20
29
|
requiresIntervals?: ReadonlyArray<string>;
|
|
21
30
|
shortName?: string;
|
|
22
31
|
}>;
|
|
32
|
+
/**
|
|
33
|
+
* Classified `defineIndicator(...)` / `defineAlert(...)` /
|
|
34
|
+
* `defineDrawing(...)` / `defineAlertCondition(...)` binding discovered
|
|
35
|
+
* by `runStructuralChecks`. Phase 7's indicator-composition pass reads
|
|
36
|
+
* this list to walk the file's full dependency graph.
|
|
37
|
+
*
|
|
38
|
+
* `exportKind: "default"` = the file's `export default define*(...)`
|
|
39
|
+
* binding. There is always at most one in a valid file.
|
|
40
|
+
* `exportKind: "named"` = `export const X = define*(...);` — a drawn
|
|
41
|
+
* sibling that the host will mount alongside the default.
|
|
42
|
+
* `exportKind: "private"` = `const X = define*(...);` (no `export`)
|
|
43
|
+
* — a data-only dependency that only flows into other indicators.
|
|
44
|
+
*
|
|
45
|
+
* `bindingName` is the local identifier; for `default` bindings it is
|
|
46
|
+
* always the synthetic string `"default"` so consumers can index by
|
|
47
|
+
* binding-name uniformly.
|
|
48
|
+
*
|
|
49
|
+
* @since 0.7
|
|
50
|
+
* @stable
|
|
51
|
+
* @example
|
|
52
|
+
* const info: StructuralBindingInfo = {
|
|
53
|
+
* exportKind: "default",
|
|
54
|
+
* bindingName: "default",
|
|
55
|
+
* defineKind: "indicator",
|
|
56
|
+
* defineCall: undefined as unknown as ts.CallExpression,
|
|
57
|
+
* };
|
|
58
|
+
* void info;
|
|
59
|
+
*/
|
|
60
|
+
export type StructuralBindingInfo = Readonly<{
|
|
61
|
+
readonly exportKind: "default" | "named" | "private";
|
|
62
|
+
readonly bindingName: string;
|
|
63
|
+
readonly defineKind: "indicator" | "drawing" | "alert" | "alertCondition";
|
|
64
|
+
readonly defineCall: ts.CallExpression;
|
|
65
|
+
}>;
|
|
23
66
|
/**
|
|
24
67
|
* Result of `runStructuralChecks` — the discovered script `name` / `kind`
|
|
25
68
|
* for the manifest, plus any structural diagnostics. `name` is `""` when no
|
|
@@ -32,12 +75,19 @@ export type StructuralScriptOverrides = Readonly<{
|
|
|
32
75
|
* discriminator differs so the editor can route the script to the
|
|
33
76
|
* drawing-tool picker vs the indicator-picker UI.
|
|
34
77
|
*
|
|
78
|
+
* `bindings` (Phase 7) lists every top-level `defineIndicator(...)` /
|
|
79
|
+
* `defineAlert(...)` / `defineDrawing(...)` / `defineAlertCondition(...)`
|
|
80
|
+
* `const` binding the file declares — default + named + private. Empty
|
|
81
|
+
* on files with no recognised default export.
|
|
82
|
+
*
|
|
35
83
|
* @since 0.1
|
|
36
84
|
* @example
|
|
37
85
|
* const r: StructuralCheckResult = {
|
|
38
86
|
* diagnostics: [],
|
|
39
87
|
* name: "demo",
|
|
40
88
|
* kind: "indicator",
|
|
89
|
+
* overrides: {},
|
|
90
|
+
* bindings: [],
|
|
41
91
|
* };
|
|
42
92
|
* void r;
|
|
43
93
|
*/
|
|
@@ -46,23 +96,29 @@ export type StructuralCheckResult = Readonly<{
|
|
|
46
96
|
name: string;
|
|
47
97
|
kind: "indicator" | "drawing" | "alert" | "alertCondition";
|
|
48
98
|
overrides: StructuralScriptOverrides;
|
|
99
|
+
/** @since 0.7 */
|
|
100
|
+
bindings: ReadonlyArray<StructuralBindingInfo>;
|
|
49
101
|
}>;
|
|
50
102
|
/**
|
|
51
103
|
* Walk the source file's top-level statements to verify:
|
|
52
104
|
*
|
|
53
|
-
* -
|
|
105
|
+
* - Exactly one default export exists and is `defineIndicator(...)`,
|
|
54
106
|
* `defineDrawing(...)`, `defineAlert(...)`, or
|
|
55
|
-
* `defineAlertCondition(...)` from
|
|
56
|
-
*
|
|
57
|
-
*
|
|
107
|
+
* `defineAlertCondition(...)` from `@invinite-org/chartlang-core`.
|
|
108
|
+
* - Every `define*(...)` call sits on a `const` binding (Phase 7
|
|
109
|
+
* composition pass requires static resolution).
|
|
110
|
+
* - The default export's first argument is an object literal carrying
|
|
111
|
+
* `apiVersion: 1`.
|
|
58
112
|
*
|
|
59
|
-
* On any violation, emits `missing-default-export
|
|
60
|
-
* `
|
|
61
|
-
* the
|
|
113
|
+
* On any violation, emits `missing-default-export`,
|
|
114
|
+
* `multiple-default-exports`, `non-const-define-binding`, or
|
|
115
|
+
* `api-version-mismatch`. Returns the discovered script name + kind
|
|
116
|
+
* for the manifest assembly step plus the classified `bindings` list
|
|
117
|
+
* the composition pass walks (Phase 7).
|
|
62
118
|
*
|
|
63
119
|
* @since 0.1
|
|
64
120
|
* @example
|
|
65
|
-
* // const { diagnostics, name, kind } = runStructuralChecks(
|
|
121
|
+
* // const { diagnostics, name, kind, bindings } = runStructuralChecks(
|
|
66
122
|
* // sourceFile, checker, "demo.chart.ts",
|
|
67
123
|
* // );
|
|
68
124
|
* const fn: typeof runStructuralChecks = runStructuralChecks;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structuralChecks.d.ts","sourceRoot":"","sources":["../../src/analysis/structuralChecks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAU7E,KAAK,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAC9D,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEpD;;;;;;;;;GASG;AACH,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEH
|
|
1
|
+
{"version":3,"file":"structuralChecks.d.ts","sourceRoot":"","sources":["../../src/analysis/structuralChecks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AAU7E,KAAK,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAC9D,KAAK,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEpD;;;;;;;;;GASG;AACH,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC;IAC7C;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,gBAAgB,CAAC;IAC1E,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,CAAC;CAC1C,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IACzC,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,gBAAgB,CAAC;IAC3D,SAAS,EAAE,yBAAyB,CAAC;IACrC,iBAAiB;IACjB,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;CAClD,CAAC,CAAC;AAqKH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAC/B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,EAAE,MAAM,GACnB,qBAAqB,CA2KvB"}
|