@scriptc/compiler 0.0.36 → 0.1.2
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/ambient/scriptc-node-fallback.d.ts +52 -22
- package/ambient/scriptc-overrides.d.ts +0 -7
- package/ambient/scriptc.d.ts +3 -2
- package/dist/backend/build-cache.js.map +1 -1
- package/dist/backend/c/async.js +24 -2
- package/dist/backend/c/async.js.map +1 -1
- package/dist/backend/c/c-emitter.d.ts +22 -10
- package/dist/backend/c/c-emitter.js +60 -15
- package/dist/backend/c/c-emitter.js.map +1 -1
- package/dist/backend/c/exprs.js +289 -55
- package/dist/backend/c/exprs.js.map +1 -1
- package/dist/backend/c/island.js.map +1 -1
- package/dist/backend/c/may-throw.js +3 -0
- package/dist/backend/c/may-throw.js.map +1 -1
- package/dist/backend/c/stmts.d.ts +3 -5
- package/dist/backend/c/stmts.js +76 -17
- package/dist/backend/c/stmts.js.map +1 -1
- package/dist/backend/c/types.js.map +1 -1
- package/dist/backend/c/walkers.js +36 -12
- package/dist/backend/c/walkers.js.map +1 -1
- package/dist/backend/external-c.d.ts +33 -0
- package/dist/backend/external-c.js +51 -0
- package/dist/backend/external-c.js.map +1 -0
- package/dist/backend/link-plan.d.ts +37 -0
- package/dist/backend/link-plan.js +26 -0
- package/dist/backend/link-plan.js.map +1 -0
- package/dist/backend/linker.d.ts +22 -0
- package/dist/backend/linker.js +236 -0
- package/dist/backend/linker.js.map +1 -0
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/dyn.js +63 -3
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.js +132 -26
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +85 -3
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.js +68 -54
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +2 -1
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dispatch.js +2 -0
- package/dist/backend/llvm/expr-dispatch.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.js +6 -3
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-island.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.d.ts +1 -1
- package/dist/backend/llvm/expr-primitives.js +20 -0
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +245 -10
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +2 -0
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +18 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +6 -3
- package/dist/backend/llvm/lib-stream.js.map +1 -1
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/unsupported.js.map +1 -1
- package/dist/backend/llvm/walkers.js +31 -4
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +8 -1
- package/dist/backend/native-codegen.js +39 -25
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +44 -4
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info.d.ts +1 -1
- package/dist/backend/native-link-info.js +42 -18
- package/dist/backend/native-link-info.js.map +1 -1
- package/dist/backend/native-toolchain.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +5 -1
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.d.ts +1 -0
- package/dist/backend/runtime-pack-targets.test.js +54 -0
- package/dist/backend/runtime-pack-targets.test.js.map +1 -0
- package/dist/backend/runtime-pack.d.ts +5 -30
- package/dist/backend/runtime-pack.js +46 -141
- package/dist/backend/runtime-pack.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +49 -14
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/targets.d.ts +63 -17
- package/dist/backend/targets.js +251 -35
- package/dist/backend/targets.js.map +1 -1
- package/dist/backend/targets.test.js +27 -5
- package/dist/backend/targets.test.js.map +1 -1
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/compat/fetch-profile.js +4 -2
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +22 -1
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +6 -5
- package/dist/diagnostics/diagnostic.js +7 -6
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/ffi/ffi-manifest.js.map +1 -1
- package/dist/frontend/cjs-lexer.js.map +1 -1
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +10 -0
- package/dist/frontend/input-tracker.js +26 -3
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +8 -1
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/lowering/array-values.d.ts +12 -0
- package/dist/frontend/lowering/array-values.js +76 -0
- package/dist/frontend/lowering/array-values.js.map +1 -0
- package/dist/frontend/lowering/callback-arg.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +35 -0
- package/dist/frontend/lowering/containers/bytes.js +1021 -0
- package/dist/frontend/lowering/containers/bytes.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +17 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +345 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.d.ts +13 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js +76 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -0
- package/dist/frontend/lowering/expressions/object-literals.d.ts +44 -0
- package/dist/frontend/lowering/expressions/object-literals.js +1815 -0
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -0
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +31 -0
- package/dist/frontend/lowering/expressions/optional-chains.js +382 -0
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.d.ts +7 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js +26 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +7 -2
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.d.ts +22 -0
- package/dist/frontend/lowering/lower-array-sort.js +619 -0
- package/dist/frontend/lowering/lower-array-sort.js.map +1 -0
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.d.ts +7 -0
- package/dist/frontend/lowering/lower-async-iteration.js +657 -0
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -0
- package/dist/frontend/lowering/lower-builtins.d.ts +18 -0
- package/dist/frontend/lowering/lower-builtins.js +379 -48
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +16 -8
- package/dist/frontend/lowering/lower-calls.js +667 -91
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +7 -13
- package/dist/frontend/lowering/lower-classes.js +128 -35
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.d.ts +1 -47
- package/dist/frontend/lowering/lower-containers.js +779 -2038
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.js +51 -5
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +4 -78
- package/dist/frontend/lowering/lower-exprs.js +1128 -2409
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.d.ts +18 -3
- package/dist/frontend/lowering/lower-generators.js +145 -9
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +50 -36
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +11 -4
- package/dist/frontend/lowering/lower-island.js +47 -10
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +52 -15
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.d.ts +18 -0
- package/dist/frontend/lowering/lower-node-module.js +302 -0
- package/dist/frontend/lowering/lower-node-module.js.map +1 -0
- package/dist/frontend/lowering/lower-server.js +11 -1
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +5 -24
- package/dist/frontend/lowering/lower-stmts.js +811 -314
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +4 -4
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +109 -34
- package/dist/frontend/lowering/lowerer.js +1225 -62
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/optional-arguments.d.ts +9 -0
- package/dist/frontend/lowering/optional-arguments.js +57 -0
- package/dist/frontend/lowering/optional-arguments.js.map +1 -0
- package/dist/frontend/lowering/surfaces.d.ts +10 -2
- package/dist/frontend/lowering/surfaces.js +15 -3
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm-static-declarations.d.ts +35 -0
- package/dist/frontend/npm-static-declarations.js +506 -0
- package/dist/frontend/npm-static-declarations.js.map +1 -0
- package/dist/frontend/npm-static-declarations.test.d.ts +1 -0
- package/dist/frontend/npm-static-declarations.test.js +122 -0
- package/dist/frontend/npm-static-declarations.test.js.map +1 -0
- package/dist/frontend/npm-static.d.ts +2 -0
- package/dist/frontend/npm-static.js +26 -10
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.d.ts +60 -0
- package/dist/frontend/npm.js +38 -4
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/npm.test.d.ts +1 -0
- package/dist/frontend/npm.test.js +50 -0
- package/dist/frontend/npm.test.js.map +1 -0
- package/dist/frontend/program.d.ts +3 -2
- package/dist/frontend/program.js +495 -68
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +10 -2
- package/dist/frontend/resolve.js +90 -14
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +4 -1
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/runtime-resolve.d.ts +22 -0
- package/dist/frontend/runtime-resolve.js +101 -0
- package/dist/frontend/runtime-resolve.js.map +1 -0
- package/dist/frontend/runtime-resolve.test.d.ts +1 -0
- package/dist/frontend/runtime-resolve.test.js +18 -0
- package/dist/frontend/runtime-resolve.test.js.map +1 -0
- package/dist/frontend/ts7/adapter.js +12 -13
- package/dist/frontend/ts7/adapter.js.map +1 -1
- package/dist/frontend/ts7/ast.js.map +1 -1
- package/dist/frontend/ts7/census-check.js +3 -3
- package/dist/frontend/ts7/census-check.js.map +1 -1
- package/dist/frontend/ts7/checker.d.ts +3 -0
- package/dist/frontend/ts7/checker.js +12 -3
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/enums.js.map +1 -1
- package/dist/frontend/ts7/program-adapter.js +42 -3
- package/dist/frontend/ts7/program-adapter.js.map +1 -1
- package/dist/frontend/type-mapper.js +120 -7
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +50 -28
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/ir.d.ts +125 -41
- package/dist/ir/ir.js +82 -31
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/serialize.d.ts +1 -1
- package/dist/ir/serialize.js +1 -1
- package/dist/ir/validate.js +127 -95
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/cache-primitives.js.map +1 -1
- package/dist/library/cache-reset.test.js.map +1 -1
- package/dist/library/compiler-self-identity.js.map +1 -1
- package/dist/library/fence-eval.js +3 -1
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/int-infer.js +12 -1
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/int-infer.test.js.map +1 -1
- package/dist/library/library-cache.test.js +5 -5
- package/dist/library/library-profile.js.map +1 -1
- package/dist/library/sidecar-validate.js.map +1 -1
- package/dist/library/sidecar.js.map +1 -1
- package/dist/startup-cache.d.ts +9 -1
- package/dist/startup-cache.js +16 -1
- package/dist/startup-cache.js.map +1 -1
- package/dist/wasi-paths.js.map +1 -1
- package/package.json +18 -5
- package/surface-manifest.json +64 -8
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { describe, expect, test } from "vitest";
|
|
2
|
+
import { applyNpmStaticDeclarationProperties, applyNpmStaticDeclarationOverloads, npmStaticDeclarationReexports, npmStaticRuntimeClassTargets, parseNpmStaticDeclarationProperties, parseNpmStaticDeclarationOverloads, } from "./npm-static-declarations.js";
|
|
3
|
+
const declarations = `
|
|
4
|
+
export class Chainy {
|
|
5
|
+
name(): string;
|
|
6
|
+
name(value: string): this;
|
|
7
|
+
tag(): string;
|
|
8
|
+
tag(value: string): this;
|
|
9
|
+
aliases(): string[];
|
|
10
|
+
aliases(values: readonly string[]): this;
|
|
11
|
+
helpOption(flags?: string | boolean, description?: string): this;
|
|
12
|
+
single(): string;
|
|
13
|
+
unsafe(): string;
|
|
14
|
+
unsafe(value: Date): this;
|
|
15
|
+
generic<T>(value: T): T;
|
|
16
|
+
generic(value: string): string;
|
|
17
|
+
parent: Chainy | null;
|
|
18
|
+
optionalParent?: Chainy | null;
|
|
19
|
+
labels: string[];
|
|
20
|
+
}
|
|
21
|
+
`;
|
|
22
|
+
describe("npm-static declaration overload projection", () => {
|
|
23
|
+
test("extracts only complete representation-safe overload groups", () => {
|
|
24
|
+
const overloads = parseNpmStaticDeclarationOverloads("index.d.ts", declarations);
|
|
25
|
+
expect([...overloads.keys()]).toEqual(["Chainy"]);
|
|
26
|
+
expect([...overloads.get("Chainy").keys()]).toEqual(["name", "tag", "aliases", "helpOption"]);
|
|
27
|
+
expect(overloads.get("Chainy").get("name")).toEqual([
|
|
28
|
+
{ parameters: [], returnType: "string" },
|
|
29
|
+
{ parameters: [{ name: "value", type: "string", optional: false }], returnType: "this" },
|
|
30
|
+
]);
|
|
31
|
+
expect(overloads.get("Chainy").get("aliases")).toEqual([
|
|
32
|
+
{ parameters: [], returnType: "string[]" },
|
|
33
|
+
{ parameters: [{ name: "values", type: "string[]", optional: false }], returnType: "this" },
|
|
34
|
+
]);
|
|
35
|
+
});
|
|
36
|
+
test("injects overload and implementation JSDoc only into exported matching classes", () => {
|
|
37
|
+
const source = `
|
|
38
|
+
class Hidden {
|
|
39
|
+
name(value) { return value === undefined ? "" : this; }
|
|
40
|
+
}
|
|
41
|
+
class Chainy {
|
|
42
|
+
name(value) { return value === undefined ? "" : this; }
|
|
43
|
+
tag(value) { return value === undefined ? "" : this; }
|
|
44
|
+
}
|
|
45
|
+
module.exports = { Chainy };
|
|
46
|
+
`;
|
|
47
|
+
const rewritten = applyNpmStaticDeclarationOverloads("index.js", source, parseNpmStaticDeclarationOverloads("index.d.ts", declarations));
|
|
48
|
+
expect(rewritten).not.toBeNull();
|
|
49
|
+
expect(rewritten.insertions).toHaveLength(2);
|
|
50
|
+
expect(rewritten.text.match(/@overload/g)).toHaveLength(4);
|
|
51
|
+
expect(rewritten.text).toContain("@param {string} [value] @returns {string | Chainy}");
|
|
52
|
+
expect(rewritten.text.slice(source.indexOf("class Hidden"), source.indexOf("class Chainy"))).not.toContain("@overload");
|
|
53
|
+
});
|
|
54
|
+
test("projects only nullable-self properties onto matching constructor null writes", () => {
|
|
55
|
+
const properties = parseNpmStaticDeclarationProperties("index.d.ts", declarations);
|
|
56
|
+
expect(properties).toEqual(new Map([
|
|
57
|
+
["Chainy", new Map([["parent", "Chainy | null"]])],
|
|
58
|
+
]));
|
|
59
|
+
const rewritten = applyNpmStaticDeclarationProperties("index.js", `
|
|
60
|
+
class Chainy {
|
|
61
|
+
constructor() {
|
|
62
|
+
this.parent = null;
|
|
63
|
+
this.optionalParent = null;
|
|
64
|
+
this.labels = [];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
module.exports = { Chainy };
|
|
68
|
+
`, properties);
|
|
69
|
+
expect(rewritten).not.toBeNull();
|
|
70
|
+
expect(rewritten.insertions).toHaveLength(1);
|
|
71
|
+
expect(rewritten.text).toContain("/** @type {Chainy | null} */ this.parent = null;");
|
|
72
|
+
expect(rewritten.text).not.toContain("@type {Chainy | null} */ this.optionalParent");
|
|
73
|
+
expect(rewritten.text).not.toContain("@type {string[]}");
|
|
74
|
+
});
|
|
75
|
+
test("projects an array getter overload onto its empty constructor backing field", () => {
|
|
76
|
+
const rewritten = applyNpmStaticDeclarationOverloads("index.js", `
|
|
77
|
+
class Chainy {
|
|
78
|
+
constructor() { this._aliases = []; }
|
|
79
|
+
aliases(values) {
|
|
80
|
+
if (values === undefined) return this._aliases;
|
|
81
|
+
this._aliases = values;
|
|
82
|
+
return this;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
module.exports = { Chainy };
|
|
86
|
+
`, parseNpmStaticDeclarationOverloads("index.d.ts", declarations));
|
|
87
|
+
expect(rewritten).not.toBeNull();
|
|
88
|
+
expect(rewritten.text).toContain("/** @type {string[]} */ this._aliases = [];");
|
|
89
|
+
});
|
|
90
|
+
test("projects safe optional parameters over stricter implementation JSDoc", () => {
|
|
91
|
+
const rewritten = applyNpmStaticDeclarationOverloads("index.js", `
|
|
92
|
+
class Chainy {
|
|
93
|
+
/** @param {string | boolean} flags @param {string} [description] @returns {Chainy} */
|
|
94
|
+
helpOption(flags, description) { return this; }
|
|
95
|
+
}
|
|
96
|
+
module.exports = { Chainy };
|
|
97
|
+
`, parseNpmStaticDeclarationOverloads("index.d.ts", declarations));
|
|
98
|
+
expect(rewritten).not.toBeNull();
|
|
99
|
+
expect(rewritten.text).toContain("@param {string | boolean} [flags]");
|
|
100
|
+
expect(rewritten.text).toContain("@param {string} [description]");
|
|
101
|
+
});
|
|
102
|
+
test("reports only relative declaration-barrel edges", () => {
|
|
103
|
+
expect(npmStaticDeclarationReexports("esm.d.mts", `
|
|
104
|
+
export * from "./index.js";
|
|
105
|
+
export { Type } from "./types.js";
|
|
106
|
+
export * from "other-package";
|
|
107
|
+
`)).toEqual(["./index.js", "./types.js"]);
|
|
108
|
+
});
|
|
109
|
+
test("binds declaration classes to direct and one-hop runtime exports", () => {
|
|
110
|
+
expect(npmStaticRuntimeClassTargets("index.js", `
|
|
111
|
+
const { Command, Other: Alias } = require("./lib/command.js");
|
|
112
|
+
class Local {}
|
|
113
|
+
exports.Command = Command;
|
|
114
|
+
exports.Alias = Alias;
|
|
115
|
+
exports.Local = Local;
|
|
116
|
+
`, new Set(["Command", "Alias", "Local"]))).toEqual(new Map([
|
|
117
|
+
["Command", "./lib/command.js"],
|
|
118
|
+
["Local", null],
|
|
119
|
+
]));
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
//# sourceMappingURL=npm-static-declarations.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"npm-static-declarations.test.js","sourceRoot":"","sources":["../../src/frontend/npm-static-declarations.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import type { NpmStaticDeclarationOverloads, NpmStaticDeclarationProperties } from "./npm-static-declarations.js";
|
|
1
2
|
export declare function setNpmStaticPackages(packages: Iterable<string>): void;
|
|
3
|
+
export declare function setNpmStaticDeclarationOverloads(overloads: ReadonlyMap<string, NpmStaticDeclarationOverloads>, properties?: ReadonlyMap<string, NpmStaticDeclarationProperties>): void;
|
|
2
4
|
export declare function npmStaticActive(): boolean;
|
|
3
5
|
export declare function isNpmStaticPackage(name: string | null): boolean;
|
|
4
6
|
/** The opted-in package a path belongs to, or null. Attribution uses the
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
* included) types the bodies, and every statement the lowering cannot
|
|
9
9
|
* honor becomes the standard JS runtime fence (the trap throws AT the
|
|
10
10
|
* statement if the program ever drives it — trust-but-verify, never
|
|
11
|
-
* silent trust). The .d.ts is deliberately DROPPED from
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
11
|
+
* silent trust). The .d.ts is deliberately DROPPED from module resolution:
|
|
12
|
+
* a declaration is a CLAIM about the body, and the compiled artifact must
|
|
13
|
+
* be built from what the body provably is, not from declaration-only
|
|
14
|
+
* values. One bounded part of that claim survives: complete non-generic
|
|
15
|
+
* overload groups over representation-safe types project as JSDoc onto
|
|
16
|
+
* their matching exported runtime class. Calls retain authored overload
|
|
17
|
+
* precision while the implementation body, its union ABI, and every
|
|
18
|
+
* runtime fence still come from JavaScript.
|
|
19
19
|
*
|
|
20
20
|
* MECHANISM. Resolution is the single lever:
|
|
21
21
|
* - tsgo's server-side resolution reads package.json and probes sibling
|
|
@@ -26,6 +26,10 @@
|
|
|
26
26
|
* @types twin is hidden whole — the bundler resolution then lands on
|
|
27
27
|
* the shipped JS, which allowJs + maxNodeModuleJsDepth admit into the
|
|
28
28
|
* program as checkable source.
|
|
29
|
+
* - Before that shadow is enabled, the package's own declaration entry
|
|
30
|
+
* and relative declaration barrels are scanned for safe overload groups.
|
|
31
|
+
* The runtime entry binds each class to its direct or one-hop re-export
|
|
32
|
+
* file; only that file receives the generated JSDoc projection.
|
|
29
33
|
* - scriptc's own resolver (resolve.ts) mirrors the same answer: for an
|
|
30
34
|
* opted-in package the types pass is skipped, the "types" export
|
|
31
35
|
* condition is dropped, and the @types mangling never runs.
|
|
@@ -55,9 +59,12 @@
|
|
|
55
59
|
* slate. */
|
|
56
60
|
import { dirname } from "node:path";
|
|
57
61
|
import { rewriteBundlerCjsExports } from "./npm-static-rewrite.js";
|
|
62
|
+
import { applyNpmStaticDeclarationOverloads, applyNpmStaticDeclarationProperties } from "./npm-static-declarations.js";
|
|
58
63
|
import { npmPackageNameOf, registerWorkspacePackage, workspacePackageOfPath } from "./workspace-registry.js";
|
|
59
64
|
import { trackedExists, trackedReadFile, trackedRealpath } from "./input-tracker.js";
|
|
60
65
|
let activePackages = new Set();
|
|
66
|
+
let declarationOverloads = new Map();
|
|
67
|
+
let declarationProperties = new Map();
|
|
61
68
|
/** Offender records of the CURRENT load attempt: packages whose static
|
|
62
69
|
* compilation the preflight had to refuse, with the first reason. The
|
|
63
70
|
* frontend's fallback loop consumes these and rebuilds without them. */
|
|
@@ -67,11 +74,18 @@ const offenders = new Map();
|
|
|
67
74
|
const rewriteCache = new Map();
|
|
68
75
|
export function setNpmStaticPackages(packages) {
|
|
69
76
|
activePackages = new Set(packages);
|
|
77
|
+
declarationOverloads = new Map();
|
|
78
|
+
declarationProperties = new Map();
|
|
70
79
|
offenders.clear();
|
|
71
80
|
rewriteCache.clear();
|
|
72
81
|
untypedPkgCache.clear();
|
|
73
82
|
realpathProbed.clear();
|
|
74
83
|
}
|
|
84
|
+
export function setNpmStaticDeclarationOverloads(overloads, properties = new Map()) {
|
|
85
|
+
declarationOverloads = overloads;
|
|
86
|
+
declarationProperties = properties;
|
|
87
|
+
rewriteCache.clear();
|
|
88
|
+
}
|
|
75
89
|
export function npmStaticActive() {
|
|
76
90
|
return activePackages.size > 0;
|
|
77
91
|
}
|
|
@@ -364,12 +378,14 @@ export function npmStaticFsShadow() {
|
|
|
364
378
|
try {
|
|
365
379
|
const source = trackedReadFile(path);
|
|
366
380
|
if (source !== null) {
|
|
367
|
-
const
|
|
381
|
+
const propertyProjected = applyNpmStaticDeclarationProperties(path, source, declarationProperties.get(path.split("\\").join("/")) ?? new Map());
|
|
382
|
+
const projected = applyNpmStaticDeclarationOverloads(path, propertyProjected?.text ?? source, declarationOverloads.get(path.split("\\").join("/")) ?? new Map());
|
|
383
|
+
const answer = rewriteBundlerCjsExports(projected?.text ?? propertyProjected?.text ?? source, path);
|
|
368
384
|
if (answer !== null && typeof answer === "object") {
|
|
369
385
|
reportNpmStaticOffender(target.pkg, answer.degrade);
|
|
370
386
|
}
|
|
371
387
|
else {
|
|
372
|
-
rewritten = answer;
|
|
388
|
+
rewritten = answer ?? projected?.text ?? propertyProjected?.text ?? null;
|
|
373
389
|
}
|
|
374
390
|
}
|
|
375
391
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm-static.js","sourceRoot":"","sources":["../../src/frontend/npm-static.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"npm-static.js","sourceRoot":"","sources":["../../src/frontend/npm-static.ts"],"names":[],"mappings":"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"}
|
package/dist/frontend/npm.d.ts
CHANGED
|
@@ -120,6 +120,59 @@ export interface NpmRuntimeGraph {
|
|
|
120
120
|
* objects. Parsing is recovery-capable, matching the module-specifier sweep's
|
|
121
121
|
* treatment of shipped JavaScript. */
|
|
122
122
|
export declare function embeddedModulesUsingGlobalFetch(modules: readonly EmbeddedModule[]): ReadonlySet<string>;
|
|
123
|
+
/** One specifier's call-site kinds within a module — the edge-kind record
|
|
124
|
+
* the walk's per-kind semantics act on. A specifier can appear under
|
|
125
|
+
* several forms in one file; any STATIC occurrence makes the edge eager
|
|
126
|
+
* (Node refuses the whole static graph at link time regardless of what the
|
|
127
|
+
* lazy sites would have done). */
|
|
128
|
+
export interface SpecifierUse {
|
|
129
|
+
specifier: string;
|
|
130
|
+
/** import/export declaration — eager, link-time. */
|
|
131
|
+
static: boolean;
|
|
132
|
+
/** require("x") — or an esbuild bundle's `__require("x")` helper call,
|
|
133
|
+
* the shape published dists route external requires through — call-time.
|
|
134
|
+
* The union of the two attribution flags below. */
|
|
135
|
+
require: boolean;
|
|
136
|
+
/** require sites whose require function lives in THIS file's scope: a
|
|
137
|
+
* direct `require(…)` call (the chunk banner's createRequire), or a
|
|
138
|
+
* `__require(…)` call when the helper is defined locally. */
|
|
139
|
+
requireLocal: boolean;
|
|
140
|
+
/** `__require(…)` sites whose helper is an IMPORTED binding — esbuild
|
|
141
|
+
* splits it into a shared chunk, so the closed-over require was created
|
|
142
|
+
* with THAT chunk's import.meta.url and Node resolves from there. The
|
|
143
|
+
* edge must attribute to the defining chunk or the runtime lookup
|
|
144
|
+
* misses. */
|
|
145
|
+
requireViaHelper: boolean;
|
|
146
|
+
/** import("x") — evaluation-time. */
|
|
147
|
+
dynamicImport: boolean;
|
|
148
|
+
/** import.meta.resolve("x") — resolves synchronously without loading.
|
|
149
|
+
* It still needs an emitted edge for bare package names so the island can
|
|
150
|
+
* answer from its fixed graph; relative and URL-like names need no edge. */
|
|
151
|
+
importMetaResolve: boolean;
|
|
152
|
+
}
|
|
153
|
+
/** moduleSpecifiersOf's full answer: the per-specifier call-site kinds
|
|
154
|
+
* plus where the file's `__require` binding comes from, when it is not
|
|
155
|
+
* its own. */
|
|
156
|
+
export interface ModuleSpecifiers {
|
|
157
|
+
uses: SpecifierUse[];
|
|
158
|
+
/** The specifier `__require` is IMPORTED from (`import { __require }
|
|
159
|
+
* from "./chunk-X.js"` — esbuild's shared-helper chunk shape), else
|
|
160
|
+
* null (locally defined or absent). */
|
|
161
|
+
requireHelperImport: string | null;
|
|
162
|
+
/** The specifier `__require` is re-EXPORTED from (`export { __require }
|
|
163
|
+
* from "./x"`) — the chain hop for bundles routing the helper through
|
|
164
|
+
* an intermediate chunk. */
|
|
165
|
+
requireHelperReexport: string | null;
|
|
166
|
+
}
|
|
167
|
+
/** Every module specifier `source` can load at runtime, in encounter
|
|
168
|
+
* order with its call-site kinds merged per specifier: import/export
|
|
169
|
+
* declarations (INCLUDING `export * as ns from "x"`, which
|
|
170
|
+
* ts.preProcessFile silently drops — zod v4 re-exports its util namespace
|
|
171
|
+
* that way), dynamic import("literal"), and require("literal") /
|
|
172
|
+
* __require("literal") (esbuild's external-require helper — collecting its
|
|
173
|
+
* literal call sites gives bundled dists an honest build-time inventory).
|
|
174
|
+
* A real parse, never a regex. */
|
|
175
|
+
export declare function moduleSpecifiersOf(source: string, fileName: string): ModuleSpecifiers;
|
|
123
176
|
interface Host {
|
|
124
177
|
readFile: (path: string) => string | null;
|
|
125
178
|
isFile: (path: string) => boolean;
|
|
@@ -198,6 +251,13 @@ export declare class NpmGraphBuilder {
|
|
|
198
251
|
* through this cache. */
|
|
199
252
|
private readonly specifiersCache;
|
|
200
253
|
constructor(host?: Host);
|
|
254
|
+
/** Resolve one runtime module without embedding it. This is the package
|
|
255
|
+
* half of import.meta.resolve/require.resolve: the answer is executable
|
|
256
|
+
* source under Node's import/require conditions, never the declaration-file
|
|
257
|
+
* answer from resolve.ts. Diagnostics produced by the graph-oriented
|
|
258
|
+
* resolver are discarded here; the introspection lowering supplies Node's
|
|
259
|
+
* public error shape separately. */
|
|
260
|
+
resolveForIntrospection(fromFile: string, specifier: string, mode: "import" | "require"): string | null;
|
|
201
261
|
/** Registers one user-level npm import and walks everything it reaches.
|
|
202
262
|
* Idempotent per (importing dir, specifier). */
|
|
203
263
|
addImport(fromFile: string, specifier: string): void;
|
package/dist/frontend/npm.js
CHANGED
|
@@ -444,7 +444,7 @@ const KNOWN_BUILTINS = new Set([
|
|
|
444
444
|
* __require("literal") (esbuild's external-require helper — collecting its
|
|
445
445
|
* literal call sites gives bundled dists an honest build-time inventory).
|
|
446
446
|
* A real parse, never a regex. */
|
|
447
|
-
function moduleSpecifiersOf(source, fileName) {
|
|
447
|
+
export function moduleSpecifiersOf(source, fileName) {
|
|
448
448
|
const sf = ts.createSourceFile(fileName, source, ts.ScriptTarget.Latest, false, ts.ScriptKind.JS);
|
|
449
449
|
const uses = [];
|
|
450
450
|
const bySpec = new Map();
|
|
@@ -463,6 +463,7 @@ function moduleSpecifiersOf(source, fileName) {
|
|
|
463
463
|
requireLocal: false,
|
|
464
464
|
requireViaHelper: false,
|
|
465
465
|
dynamicImport: false,
|
|
466
|
+
importMetaResolve: false,
|
|
466
467
|
};
|
|
467
468
|
bySpec.set(spec, use);
|
|
468
469
|
uses.push(use);
|
|
@@ -496,6 +497,13 @@ function moduleSpecifiersOf(source, fileName) {
|
|
|
496
497
|
ts.isStringLiteralLike(arg)) {
|
|
497
498
|
push(arg.text, "dynamicImport");
|
|
498
499
|
}
|
|
500
|
+
else if (ts.isPropertyAccessExpression(n.expression) &&
|
|
501
|
+
n.expression.name.text === "resolve" &&
|
|
502
|
+
ts.isMetaProperty(n.expression.expression) &&
|
|
503
|
+
n.expression.expression.keywordToken === ts.SyntaxKind.ImportKeyword &&
|
|
504
|
+
n.arguments.length >= 1 && arg !== undefined && ts.isStringLiteralLike(arg)) {
|
|
505
|
+
push(arg.text, null).importMetaResolve = true;
|
|
506
|
+
}
|
|
499
507
|
else if (ts.isIdentifier(n.expression) &&
|
|
500
508
|
(n.expression.text === "require" || n.expression.text === "__require") &&
|
|
501
509
|
n.arguments.length === 1 &&
|
|
@@ -699,6 +707,22 @@ export class NpmGraphBuilder {
|
|
|
699
707
|
constructor(host = realHost) {
|
|
700
708
|
this.host = host;
|
|
701
709
|
}
|
|
710
|
+
/** Resolve one runtime module without embedding it. This is the package
|
|
711
|
+
* half of import.meta.resolve/require.resolve: the answer is executable
|
|
712
|
+
* source under Node's import/require conditions, never the declaration-file
|
|
713
|
+
* answer from resolve.ts. Diagnostics produced by the graph-oriented
|
|
714
|
+
* resolver are discarded here; the introspection lowering supplies Node's
|
|
715
|
+
* public error shape separately. */
|
|
716
|
+
resolveForIntrospection(fromFile, specifier, mode) {
|
|
717
|
+
const before = this.errors.length;
|
|
718
|
+
const key = this.resolvePackage(dirname(resolve(fromFile)), specifier, mode, {
|
|
719
|
+
importer: resolve(fromFile),
|
|
720
|
+
chain: [],
|
|
721
|
+
preferModuleField: false,
|
|
722
|
+
});
|
|
723
|
+
this.errors.length = before;
|
|
724
|
+
return key;
|
|
725
|
+
}
|
|
702
726
|
/** Registers one user-level npm import and walks everything it reaches.
|
|
703
727
|
* Idempotent per (importing dir, specifier). */
|
|
704
728
|
addImport(fromFile, specifier) {
|
|
@@ -1160,7 +1184,8 @@ export class NpmGraphBuilder {
|
|
|
1160
1184
|
else if (subpath !== ".") {
|
|
1161
1185
|
target = subpath;
|
|
1162
1186
|
}
|
|
1163
|
-
else if (mode === "import" &&
|
|
1187
|
+
else if (mode === "import" && ctx.preferModuleField !== false &&
|
|
1188
|
+
typeof pkg.module === "string" && pkg.module !== "") {
|
|
1164
1189
|
// No "exports": the "module" field names the ESM build (a
|
|
1165
1190
|
// bundler convention Node itself ignores; embedding prefers the
|
|
1166
1191
|
// real ES module over require-shimming the CJS "main").
|
|
@@ -1320,6 +1345,9 @@ export class NpmGraphBuilder {
|
|
|
1320
1345
|
const spec = use.specifier;
|
|
1321
1346
|
const eager = !lazy && use.static;
|
|
1322
1347
|
if (spec.startsWith("./") || spec.startsWith("../")) {
|
|
1348
|
+
if (use.importMetaResolve && !use.static && !use.dynamicImport && !use.require) {
|
|
1349
|
+
continue;
|
|
1350
|
+
}
|
|
1323
1351
|
// A relative file: no conditions apply, so every call form shares
|
|
1324
1352
|
// one "any" edge. A blocked lazy one embeds the import trap only
|
|
1325
1353
|
// for import()/static-in-lazy sites — require-reached specs embed
|
|
@@ -1351,6 +1379,10 @@ export class NpmGraphBuilder {
|
|
|
1351
1379
|
this.walk(to, chain, lazy || !use.static);
|
|
1352
1380
|
continue;
|
|
1353
1381
|
}
|
|
1382
|
+
if (use.importMetaResolve && !use.static && !use.dynamicImport && !use.require &&
|
|
1383
|
+
(/^[A-Za-z][A-Za-z\d+.-]*:/.test(spec) || spec.startsWith("/"))) {
|
|
1384
|
+
continue;
|
|
1385
|
+
}
|
|
1354
1386
|
const builtin = builtinKeyOf(spec);
|
|
1355
1387
|
if (builtin) {
|
|
1356
1388
|
let seen = this.builtinsSeen.get(builtin);
|
|
@@ -1430,7 +1462,7 @@ export class NpmGraphBuilder {
|
|
|
1430
1462
|
this.walk(to, nextChain, true);
|
|
1431
1463
|
}
|
|
1432
1464
|
}
|
|
1433
|
-
if (use.static || use.dynamicImport) {
|
|
1465
|
+
if (use.static || use.dynamicImport || use.importMetaResolve) {
|
|
1434
1466
|
const errorsBefore = this.errors.length;
|
|
1435
1467
|
const to = this.resolvePackage(dirname(key), spec, "import", { importer: key, chain });
|
|
1436
1468
|
if (to === null) {
|
|
@@ -1452,7 +1484,9 @@ export class NpmGraphBuilder {
|
|
|
1452
1484
|
this.noteLazyTrap(spec, { require: false, dynamicImport: use.dynamicImport, static: use.static }, pkgName, lazy, true);
|
|
1453
1485
|
}
|
|
1454
1486
|
pushEdge(key, spec, to, "import");
|
|
1455
|
-
|
|
1487
|
+
if (!use.importMetaResolve || use.static || use.dynamicImport) {
|
|
1488
|
+
this.walk(to, nextChain, lazy || !use.static);
|
|
1489
|
+
}
|
|
1456
1490
|
}
|
|
1457
1491
|
}
|
|
1458
1492
|
}
|