@tsonic/frontend 0.0.64 → 0.0.66

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.
Files changed (166) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/dependency-graph.d.ts +1 -1
  3. package/dist/dependency-graph.d.ts.map +1 -1
  4. package/dist/dependency-graph.js +1 -1
  5. package/dist/dependency-graph.js.map +1 -1
  6. package/dist/graph/extraction/imports.d.ts +0 -5
  7. package/dist/graph/extraction/imports.d.ts.map +1 -1
  8. package/dist/graph/extraction/imports.js +0 -35
  9. package/dist/graph/extraction/imports.js.map +1 -1
  10. package/dist/graph/extraction/index.d.ts +1 -1
  11. package/dist/graph/extraction/index.d.ts.map +1 -1
  12. package/dist/graph/extraction/index.js +1 -1
  13. package/dist/graph/extraction/index.js.map +1 -1
  14. package/dist/graph/extraction/orchestrator.d.ts.map +1 -1
  15. package/dist/graph/extraction/orchestrator.js +1 -7
  16. package/dist/graph/extraction/orchestrator.js.map +1 -1
  17. package/dist/graph/extraction.d.ts +1 -1
  18. package/dist/graph/extraction.d.ts.map +1 -1
  19. package/dist/graph/extraction.js +1 -1
  20. package/dist/graph/extraction.js.map +1 -1
  21. package/dist/ir/binding/binding-types.d.ts +2 -2
  22. package/dist/ir/binding/binding-types.d.ts.map +1 -1
  23. package/dist/ir/binding-resolution.test.js +176 -48
  24. package/dist/ir/binding-resolution.test.js.map +1 -1
  25. package/dist/ir/bindings-disambiguation.test.js +149 -0
  26. package/dist/ir/bindings-disambiguation.test.js.map +1 -1
  27. package/dist/ir/builder/imports.d.ts.map +1 -1
  28. package/dist/ir/builder/imports.js +76 -52
  29. package/dist/ir/builder/imports.js.map +1 -1
  30. package/dist/ir/builder.test.js +118 -0
  31. package/dist/ir/builder.test.js.map +1 -1
  32. package/dist/ir/converters/expressions/access/access-converter.d.ts.map +1 -1
  33. package/dist/ir/converters/expressions/access/access-converter.js +1 -1
  34. package/dist/ir/converters/expressions/access/access-converter.js.map +1 -1
  35. package/dist/ir/converters/expressions/access/binding-resolution.d.ts +2 -2
  36. package/dist/ir/converters/expressions/access/binding-resolution.d.ts.map +1 -1
  37. package/dist/ir/converters/expressions/access/binding-resolution.js +122 -78
  38. package/dist/ir/converters/expressions/access/binding-resolution.js.map +1 -1
  39. package/dist/ir/converters/expressions/access/member-resolution.d.ts.map +1 -1
  40. package/dist/ir/converters/expressions/access/member-resolution.js +8 -0
  41. package/dist/ir/converters/expressions/access/member-resolution.js.map +1 -1
  42. package/dist/ir/converters/expressions/calls/call-converter.js +3 -3
  43. package/dist/ir/converters/expressions/calls/call-converter.js.map +1 -1
  44. package/dist/ir/converters/expressions/numeric-recovery.test.js +110 -2
  45. package/dist/ir/converters/expressions/numeric-recovery.test.js.map +1 -1
  46. package/dist/ir/type-system/internal/type-converter/orchestrator.test.js +8 -0
  47. package/dist/ir/type-system/internal/type-converter/orchestrator.test.js.map +1 -1
  48. package/dist/ir/type-system/internal/type-converter/references.js +10 -12
  49. package/dist/ir/type-system/internal/type-converter/references.js.map +1 -1
  50. package/dist/ir/type-system/internal/type-registry.d.ts +3 -2
  51. package/dist/ir/type-system/internal/type-registry.d.ts.map +1 -1
  52. package/dist/ir/type-system/internal/type-registry.js +7 -3
  53. package/dist/ir/type-system/internal/type-registry.js.map +1 -1
  54. package/dist/ir/type-system/internal/universe/alias-table.js +2 -2
  55. package/dist/ir/type-system/internal/universe/alias-table.js.map +1 -1
  56. package/dist/ir/type-system/internal/universe/clr-catalog.d.ts.map +1 -1
  57. package/dist/ir/type-system/internal/universe/clr-catalog.js +16 -2
  58. package/dist/ir/type-system/internal/universe/clr-catalog.js.map +1 -1
  59. package/dist/ir/type-system/internal/universe/clr-catalog.test.d.ts +2 -0
  60. package/dist/ir/type-system/internal/universe/clr-catalog.test.d.ts.map +1 -0
  61. package/dist/ir/type-system/internal/universe/clr-catalog.test.js +55 -0
  62. package/dist/ir/type-system/internal/universe/clr-catalog.test.js.map +1 -0
  63. package/dist/ir/type-system/type-system-call-resolution.d.ts.map +1 -1
  64. package/dist/ir/type-system/type-system-call-resolution.js +134 -5
  65. package/dist/ir/type-system/type-system-call-resolution.js.map +1 -1
  66. package/dist/ir/type-system/type-system-inference.d.ts.map +1 -1
  67. package/dist/ir/type-system/type-system-inference.js +10 -2
  68. package/dist/ir/type-system/type-system-inference.js.map +1 -1
  69. package/dist/ir/type-system/type-system-state.d.ts +5 -0
  70. package/dist/ir/type-system/type-system-state.d.ts.map +1 -1
  71. package/dist/ir/type-system/type-system-state.js +33 -17
  72. package/dist/ir/type-system/type-system-state.js.map +1 -1
  73. package/dist/ir/type-system/type-system.d.ts.map +1 -1
  74. package/dist/ir/type-system/type-system.js.map +1 -1
  75. package/dist/ir/types/expressions.d.ts +1 -0
  76. package/dist/ir/types/expressions.d.ts.map +1 -1
  77. package/dist/ir/validation/attribute-collection-pass.test.js +1 -0
  78. package/dist/ir/validation/attribute-collection-pass.test.js.map +1 -1
  79. package/dist/ir/validation/soundness-gate.d.ts.map +1 -1
  80. package/dist/ir/validation/soundness-gate.js +11 -2
  81. package/dist/ir/validation/soundness-gate.js.map +1 -1
  82. package/dist/ir/validation/soundness-gate.test.js +23 -0
  83. package/dist/ir/validation/soundness-gate.test.js.map +1 -1
  84. package/dist/program/binding-loader.d.ts +3 -3
  85. package/dist/program/binding-loader.d.ts.map +1 -1
  86. package/dist/program/binding-loader.js +41 -23
  87. package/dist/program/binding-loader.js.map +1 -1
  88. package/dist/program/binding-registry.d.ts +7 -0
  89. package/dist/program/binding-registry.d.ts.map +1 -1
  90. package/dist/program/binding-registry.js +52 -1
  91. package/dist/program/binding-registry.js.map +1 -1
  92. package/dist/program/binding-types.d.ts +1 -0
  93. package/dist/program/binding-types.d.ts.map +1 -1
  94. package/dist/program/binding-types.js.map +1 -1
  95. package/dist/program/bindings.test.js +210 -0
  96. package/dist/program/bindings.test.js.map +1 -1
  97. package/dist/program/creation.d.ts.map +1 -1
  98. package/dist/program/creation.js +292 -161
  99. package/dist/program/creation.js.map +1 -1
  100. package/dist/program/creation.test.js +276 -19
  101. package/dist/program/creation.test.js.map +1 -1
  102. package/dist/program/metadata.d.ts.map +1 -1
  103. package/dist/program/metadata.js +72 -15
  104. package/dist/program/metadata.js.map +1 -1
  105. package/dist/program/metadata.test.d.ts +2 -0
  106. package/dist/program/metadata.test.d.ts.map +1 -0
  107. package/dist/program/metadata.test.js +104 -0
  108. package/dist/program/metadata.test.js.map +1 -0
  109. package/dist/program/package-roots.d.ts +2 -0
  110. package/dist/program/package-roots.d.ts.map +1 -0
  111. package/dist/program/package-roots.js +88 -0
  112. package/dist/program/package-roots.js.map +1 -0
  113. package/dist/program/types.d.ts +1 -1
  114. package/dist/program/types.d.ts.map +1 -1
  115. package/dist/resolver/clr-bindings-resolver.d.ts.map +1 -1
  116. package/dist/resolver/clr-bindings-resolver.js +42 -4
  117. package/dist/resolver/clr-bindings-resolver.js.map +1 -1
  118. package/dist/resolver/import-resolution.d.ts +0 -2
  119. package/dist/resolver/import-resolution.d.ts.map +1 -1
  120. package/dist/resolver/import-resolution.js +2 -9
  121. package/dist/resolver/import-resolution.js.map +1 -1
  122. package/dist/resolver.test.js +50 -78
  123. package/dist/resolver.test.js.map +1 -1
  124. package/dist/surface/profiles.d.ts +6 -3
  125. package/dist/surface/profiles.d.ts.map +1 -1
  126. package/dist/surface/profiles.js +177 -28
  127. package/dist/surface/profiles.js.map +1 -1
  128. package/dist/surface/profiles.test.js +98 -17
  129. package/dist/surface/profiles.test.js.map +1 -1
  130. package/dist/validation/features.d.ts.map +1 -1
  131. package/dist/validation/features.js +1 -23
  132. package/dist/validation/features.js.map +1 -1
  133. package/dist/validation/features.test.js +4 -4
  134. package/dist/validation/features.test.js.map +1 -1
  135. package/dist/validation/imports.d.ts.map +1 -1
  136. package/dist/validation/imports.js +7 -16
  137. package/dist/validation/imports.js.map +1 -1
  138. package/dist/validation/imports.test.js +74 -66
  139. package/dist/validation/imports.test.js.map +1 -1
  140. package/dist/validator.maximus.test.js +17 -5
  141. package/dist/validator.maximus.test.js.map +1 -1
  142. package/package.json +2 -2
  143. package/dist/ir/converters/context.d.ts +0 -40
  144. package/dist/ir/converters/context.d.ts.map +0 -1
  145. package/dist/ir/converters/context.js +0 -25
  146. package/dist/ir/converters/context.js.map +0 -1
  147. package/dist/resolver/node-module-aliases.d.ts +0 -6
  148. package/dist/resolver/node-module-aliases.d.ts.map +0 -1
  149. package/dist/resolver/node-module-aliases.js +0 -164
  150. package/dist/resolver/node-module-aliases.js.map +0 -1
  151. package/dist/resolver/node-module-aliases.test.d.ts +0 -2
  152. package/dist/resolver/node-module-aliases.test.d.ts.map +0 -1
  153. package/dist/resolver/node-module-aliases.test.js +0 -64
  154. package/dist/resolver/node-module-aliases.test.js.map +0 -1
  155. package/dist/surface/js-surface-shims.d.ts +0 -3
  156. package/dist/surface/js-surface-shims.d.ts.map +0 -1
  157. package/dist/surface/js-surface-shims.js +0 -332
  158. package/dist/surface/js-surface-shims.js.map +0 -1
  159. package/dist/surface/js-surface-shims.test.d.ts +0 -2
  160. package/dist/surface/js-surface-shims.test.d.ts.map +0 -1
  161. package/dist/surface/js-surface-shims.test.js +0 -53
  162. package/dist/surface/js-surface-shims.test.js.map +0 -1
  163. package/dist/validation/unsupported-utility-types.d.ts +0 -40
  164. package/dist/validation/unsupported-utility-types.d.ts.map +0 -1
  165. package/dist/validation/unsupported-utility-types.js +0 -43
  166. package/dist/validation/unsupported-utility-types.js.map +0 -1
@@ -0,0 +1,104 @@
1
+ import { expect } from "chai";
2
+ import { describe, it } from "mocha";
3
+ import * as fs from "node:fs";
4
+ import * as os from "node:os";
5
+ import * as path from "node:path";
6
+ import { loadDotnetMetadata } from "./metadata.js";
7
+ describe("Program Metadata", () => {
8
+ it("should load CLR metadata through surface package dependencies", () => {
9
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), "tsonic-program-metadata-"));
10
+ try {
11
+ const globalsRoot = path.join(tempDir, "node_modules/@tsonic/globals");
12
+ const dotnetRoot = path.join(tempDir, "node_modules/@tsonic/dotnet");
13
+ const dotnetBindingsRoot = path.join(dotnetRoot, "System");
14
+ fs.mkdirSync(globalsRoot, { recursive: true });
15
+ fs.mkdirSync(dotnetBindingsRoot, { recursive: true });
16
+ fs.writeFileSync(path.join(globalsRoot, "package.json"), JSON.stringify({
17
+ name: "@tsonic/globals",
18
+ version: "0.0.0",
19
+ type: "module",
20
+ dependencies: {
21
+ "@tsonic/dotnet": "0.0.0",
22
+ },
23
+ }, null, 2));
24
+ fs.writeFileSync(path.join(globalsRoot, "tsonic.surface.json"), JSON.stringify({
25
+ schemaVersion: 1,
26
+ id: "clr",
27
+ extends: [],
28
+ requiredTypeRoots: ["."],
29
+ requiredNpmPackages: ["@tsonic/globals", "@tsonic/dotnet"],
30
+ }, null, 2));
31
+ fs.writeFileSync(path.join(dotnetRoot, "package.json"), JSON.stringify({ name: "@tsonic/dotnet", version: "0.0.0", type: "module" }, null, 2));
32
+ fs.writeFileSync(path.join(dotnetBindingsRoot, "bindings.json"), JSON.stringify({
33
+ namespace: "System",
34
+ types: [
35
+ {
36
+ clrName: "System.String",
37
+ kind: "Class",
38
+ methods: [
39
+ {
40
+ clrName: "Trim",
41
+ parameterCount: 0,
42
+ canonicalSignature: "():System.String",
43
+ },
44
+ ],
45
+ },
46
+ ],
47
+ }, null, 2));
48
+ const metadata = loadDotnetMetadata([globalsRoot]);
49
+ expect(metadata.getTypeMetadata("System.String")).to.not.equal(undefined);
50
+ }
51
+ finally {
52
+ fs.rmSync(tempDir, { recursive: true, force: true });
53
+ }
54
+ });
55
+ it("should load CLR metadata through sibling workspace package dependencies", () => {
56
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), "tsonic-program-metadata-sibling-"));
57
+ try {
58
+ const workspaceRoot = path.join(tempDir, "tsoniclang");
59
+ const globalsRoot = path.join(workspaceRoot, "globals", "versions", "10");
60
+ const dotnetRoot = path.join(workspaceRoot, "dotnet", "versions", "10");
61
+ const dotnetBindingsRoot = path.join(dotnetRoot, "System");
62
+ fs.mkdirSync(globalsRoot, { recursive: true });
63
+ fs.mkdirSync(dotnetBindingsRoot, { recursive: true });
64
+ fs.writeFileSync(path.join(globalsRoot, "package.json"), JSON.stringify({
65
+ name: "@tsonic/globals",
66
+ version: "0.0.0",
67
+ type: "module",
68
+ dependencies: {
69
+ "@tsonic/dotnet": "0.0.0",
70
+ },
71
+ }, null, 2));
72
+ fs.writeFileSync(path.join(globalsRoot, "tsonic.surface.json"), JSON.stringify({
73
+ schemaVersion: 1,
74
+ id: "clr",
75
+ extends: [],
76
+ requiredTypeRoots: ["."],
77
+ requiredNpmPackages: ["@tsonic/globals", "@tsonic/dotnet"],
78
+ }, null, 2));
79
+ fs.writeFileSync(path.join(dotnetRoot, "package.json"), JSON.stringify({ name: "@tsonic/dotnet", version: "0.0.0", type: "module" }, null, 2));
80
+ fs.writeFileSync(path.join(dotnetBindingsRoot, "bindings.json"), JSON.stringify({
81
+ namespace: "System",
82
+ types: [
83
+ {
84
+ clrName: "System.String",
85
+ kind: "Class",
86
+ methods: [
87
+ {
88
+ clrName: "Trim",
89
+ parameterCount: 0,
90
+ canonicalSignature: "():System.String",
91
+ },
92
+ ],
93
+ },
94
+ ],
95
+ }, null, 2));
96
+ const metadata = loadDotnetMetadata([globalsRoot]);
97
+ expect(metadata.getTypeMetadata("System.String")).to.not.equal(undefined);
98
+ }
99
+ finally {
100
+ fs.rmSync(tempDir, { recursive: true, force: true });
101
+ }
102
+ });
103
+ });
104
+ //# sourceMappingURL=metadata.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.test.js","sourceRoot":"","sources":["../../src/program/metadata.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const resolveDependencyPackageRoot: (packageRoot: string, packageName: string) => string | undefined;
2
+ //# sourceMappingURL=package-roots.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-roots.d.ts","sourceRoot":"","sources":["../../src/program/package-roots.ts"],"names":[],"mappings":"AAmGA,eAAO,MAAM,4BAA4B,GACvC,aAAa,MAAM,EACnB,aAAa,MAAM,KAClB,MAAM,GAAG,SAOX,CAAC"}
@@ -0,0 +1,88 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import { createRequire } from "node:module";
4
+ const readPackageName = (pkgJsonPath) => {
5
+ if (!fs.existsSync(pkgJsonPath))
6
+ return undefined;
7
+ try {
8
+ const parsed = JSON.parse(fs.readFileSync(pkgJsonPath, "utf-8"));
9
+ return typeof parsed.name === "string" ? parsed.name : undefined;
10
+ }
11
+ catch {
12
+ return undefined;
13
+ }
14
+ };
15
+ const sortVersionDirs = (dirs) => {
16
+ return [...dirs].sort((left, right) => {
17
+ const leftNum = Number.parseInt(left, 10);
18
+ const rightNum = Number.parseInt(right, 10);
19
+ const leftIsNum = Number.isFinite(leftNum);
20
+ const rightIsNum = Number.isFinite(rightNum);
21
+ if (leftIsNum && rightIsNum)
22
+ return rightNum - leftNum;
23
+ if (leftIsNum)
24
+ return -1;
25
+ if (rightIsNum)
26
+ return 1;
27
+ return right.localeCompare(left);
28
+ });
29
+ };
30
+ const getRepoRoot = (packageRoot) => {
31
+ const absoluteRoot = path.resolve(packageRoot);
32
+ if (path.basename(path.dirname(absoluteRoot)) === "versions") {
33
+ return path.dirname(path.dirname(absoluteRoot));
34
+ }
35
+ return absoluteRoot;
36
+ };
37
+ const tryResolveInstalledPackage = (packageRoot, packageName) => {
38
+ try {
39
+ const req = createRequire(path.join(packageRoot, "package.json"));
40
+ const pkgJsonPath = req.resolve(`${packageName}/package.json`);
41
+ return path.dirname(pkgJsonPath);
42
+ }
43
+ catch {
44
+ return undefined;
45
+ }
46
+ };
47
+ const tryResolveSiblingWorkspacePackage = (packageRoot, packageName) => {
48
+ const repoRoot = getRepoRoot(packageRoot);
49
+ const workspaceRoot = path.dirname(repoRoot);
50
+ if (!fs.existsSync(workspaceRoot)) {
51
+ return undefined;
52
+ }
53
+ const entries = fs.readdirSync(workspaceRoot, { withFileTypes: true });
54
+ for (const entry of entries) {
55
+ if (!entry.isDirectory()) {
56
+ continue;
57
+ }
58
+ const siblingRoot = path.join(workspaceRoot, entry.name);
59
+ const siblingName = readPackageName(path.join(siblingRoot, "package.json"));
60
+ if (siblingName === packageName) {
61
+ return siblingRoot;
62
+ }
63
+ const versionsRoot = path.join(siblingRoot, "versions");
64
+ if (!fs.existsSync(versionsRoot)) {
65
+ continue;
66
+ }
67
+ const versionDirs = sortVersionDirs(fs
68
+ .readdirSync(versionsRoot, { withFileTypes: true })
69
+ .filter((versionEntry) => versionEntry.isDirectory())
70
+ .map((versionEntry) => versionEntry.name));
71
+ for (const versionDir of versionDirs) {
72
+ const candidateRoot = path.join(versionsRoot, versionDir);
73
+ const candidateName = readPackageName(path.join(candidateRoot, "package.json"));
74
+ if (candidateName === packageName) {
75
+ return candidateRoot;
76
+ }
77
+ }
78
+ }
79
+ return undefined;
80
+ };
81
+ export const resolveDependencyPackageRoot = (packageRoot, packageName) => {
82
+ const installed = tryResolveInstalledPackage(packageRoot, packageName);
83
+ if (installed) {
84
+ return installed;
85
+ }
86
+ return tryResolveSiblingWorkspacePackage(packageRoot, packageName);
87
+ };
88
+ //# sourceMappingURL=package-roots.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-roots.js","sourceRoot":"","sources":["../../src/program/package-roots.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { DotnetMetadataRegistry } from "../dotnet-metadata.js";
6
6
  import { BindingRegistry } from "./bindings.js";
7
7
  import { ClrBindingsResolver } from "../resolver/clr-bindings-resolver.js";
8
8
  import type { Binding } from "../ir/binding/index.js";
9
- export type SurfaceMode = "clr" | "js" | "nodejs";
9
+ export type SurfaceMode = string;
10
10
  export type CompilerOptions = {
11
11
  readonly projectRoot: string;
12
12
  readonly sourceRoot: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,QAAQ,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IAC/C,qEAAqE;IACrE,QAAQ,CAAC,sBAAsB,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IAC1D,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IAC/C,qEAAqE;IACrE,QAAQ,CAAC,sBAAsB,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IAC1D,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"clr-bindings-resolver.d.ts","sourceRoot":"","sources":["../../src/resolver/clr-bindings-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,GACD;IACE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB,CAAC;AAUN;;;;;;;;GAQG;AACH,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IAGjE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IAGlE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IAGnE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoC;IAGlE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoC;IAGtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAE3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmC;gBAEvD,OAAO,EAAE,MAAM;IAM3B;;OAEG;IACH,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB;IA2EnD,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,iBAAiB;IA+CzB,OAAO,CAAC,0BAA0B;IA2ClC;;;;;;;;OAQG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAuFtB;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,uBAAuB;IAY/B;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAiCxB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAsCvB;;OAEG;IACH,yBAAyB,IAAI,WAAW,CAAC,MAAM,CAAC;CASjD;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,GACpC,YAAY,MAAM,KACjB,mBAEF,CAAC"}
1
+ {"version":3,"file":"clr-bindings-resolver.d.ts","sourceRoot":"","sources":["../../src/resolver/clr-bindings-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,GACD;IACE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB,CAAC;AAUN;;;;;;;;GAQG;AACH,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IAGjE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IAGlE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IAGnE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoC;IAGlE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoC;IAGtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAE3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmC;gBAEvD,OAAO,EAAE,MAAM;IAM3B;;OAEG;IACH,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB;IA2EnD,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,iBAAiB;IA+CzB,OAAO,CAAC,0BAA0B;IA2ClC;;;;;;;;OAQG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAkItB;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,uBAAuB;IAY/B;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAiCxB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAsCvB;;OAEG;IACH,yBAAyB,IAAI,WAAW,CAAC,MAAM,CAAC;CASjD;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,GACpC,YAAY,MAAM,KACjB,mBAEF,CAAC"}
@@ -8,7 +8,7 @@
8
8
  * no special-casing for any particular package. Any package that provides
9
9
  * bindings.json in its namespace directories will be recognized.
10
10
  */
11
- import { existsSync, readFileSync } from "node:fs";
11
+ import { existsSync, readFileSync, readdirSync } from "node:fs";
12
12
  import { dirname, join } from "node:path";
13
13
  import { createRequire } from "node:module";
14
14
  import { fileURLToPath } from "node:url";
@@ -257,13 +257,51 @@ export class ClrBindingsResolver {
257
257
  const pkgDirName = match[1];
258
258
  if (!pkgDirName)
259
259
  return null;
260
+ const expectedName = `@tsonic/${pkgDirName}`;
260
261
  const here = fileURLToPath(import.meta.url);
261
262
  // <repoRoot>/packages/frontend/src/resolver/clr-bindings-resolver.ts
262
263
  const repoRoot = dirname(dirname(dirname(dirname(dirname(here)))));
263
- const siblingRoot = join(repoRoot, "..", pkgDirName);
264
- if (!existsSync(join(siblingRoot, "package.json")))
264
+ const siblingRepoRoot = join(repoRoot, "..", pkgDirName);
265
+ const readPackageName = (pkgJsonPath) => {
266
+ if (!existsSync(pkgJsonPath))
267
+ return null;
268
+ try {
269
+ const raw = JSON.parse(readFileSync(pkgJsonPath, "utf-8"));
270
+ return typeof raw.name === "string" ? raw.name : null;
271
+ }
272
+ catch {
273
+ return null;
274
+ }
275
+ };
276
+ const repoPackageName = readPackageName(join(siblingRepoRoot, "package.json"));
277
+ if (repoPackageName === expectedName)
278
+ return siblingRepoRoot;
279
+ const versionsRoot = join(siblingRepoRoot, "versions");
280
+ if (!existsSync(versionsRoot))
265
281
  return null;
266
- return siblingRoot;
282
+ const sorted = readdirSync(versionsRoot, { withFileTypes: true })
283
+ .filter((entry) => entry.isDirectory())
284
+ .map((entry) => entry.name)
285
+ .sort((left, right) => {
286
+ const leftNum = Number.parseInt(left, 10);
287
+ const rightNum = Number.parseInt(right, 10);
288
+ const leftIsNum = Number.isFinite(leftNum);
289
+ const rightIsNum = Number.isFinite(rightNum);
290
+ if (leftIsNum && rightIsNum)
291
+ return rightNum - leftNum;
292
+ if (leftIsNum)
293
+ return -1;
294
+ if (rightIsNum)
295
+ return 1;
296
+ return right.localeCompare(left);
297
+ });
298
+ for (const versionDir of sorted) {
299
+ const candidateRoot = join(versionsRoot, versionDir);
300
+ const candidateName = readPackageName(join(candidateRoot, "package.json"));
301
+ if (candidateName === expectedName)
302
+ return candidateRoot;
303
+ }
304
+ return null;
267
305
  };
268
306
  const direct = resolveViaRequire(this.require);
269
307
  if (direct) {
@@ -1 +1 @@
1
- {"version":3,"file":"clr-bindings-resolver.js","sourceRoot":"","sources":["../../src/resolver/clr-bindings-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clr-bindings-resolver.js","sourceRoot":"","sources":["../../src/resolver/clr-bindings-resolver.ts"],"names":[],"mappings":"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"}
@@ -8,14 +8,12 @@ import { Diagnostic } from "../types/diagnostic.js";
8
8
  import { ResolvedModule } from "./types.js";
9
9
  import { ClrBindingsResolver } from "./clr-bindings-resolver.js";
10
10
  import type { BindingRegistry } from "../program/bindings.js";
11
- import type { SurfaceMode } from "../program/types.js";
12
11
  /**
13
12
  * Options for import resolution
14
13
  */
15
14
  export type ResolveImportOptions = {
16
15
  readonly clrResolver?: ClrBindingsResolver;
17
16
  readonly bindings?: BindingRegistry;
18
- readonly surface?: SurfaceMode;
19
17
  };
20
18
  /**
21
19
  * Resolve import specifier to module
@@ -1 +1 @@
1
- {"version":3,"file":"import-resolution.d.ts","sourceRoot":"","sources":["../../src/resolver/import-resolution.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAoB,MAAM,wBAAwB,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GACxB,iBAAiB,MAAM,EACvB,gBAAgB,MAAM,EACtB,YAAY,MAAM,EAClB,OAAO,oBAAoB,KAC1B,MAAM,CAAC,cAAc,EAAE,UAAU,CA0EnC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,GAC7B,iBAAiB,MAAM,EACvB,gBAAgB,MAAM,EACtB,YAAY,MAAM,KACjB,MAAM,CAAC,cAAc,EAAE,UAAU,CAuEnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,iBAAiB,MAAM,KACtB,MAAM,CAAC,cAAc,EAAE,UAAU,CAuBnC,CAAC"}
1
+ {"version":3,"file":"import-resolution.d.ts","sourceRoot":"","sources":["../../src/resolver/import-resolution.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAoB,MAAM,wBAAwB,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;CACrC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GACxB,iBAAiB,MAAM,EACvB,gBAAgB,MAAM,EACtB,YAAY,MAAM,EAClB,OAAO,oBAAoB,KAC1B,MAAM,CAAC,cAAc,EAAE,UAAU,CAoEnC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,GAC7B,iBAAiB,MAAM,EACvB,gBAAgB,MAAM,EACtB,YAAY,MAAM,KACjB,MAAM,CAAC,cAAc,EAAE,UAAU,CAuEnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,iBAAiB,MAAM,KACtB,MAAM,CAAC,cAAc,EAAE,UAAU,CAuBnC,CAAC"}
@@ -8,8 +8,6 @@ import * as fs from "node:fs";
8
8
  import { ok, error } from "../types/result.js";
9
9
  import { createDiagnostic } from "../types/diagnostic.js";
10
10
  import { isLocalImport } from "../types/module.js";
11
- import { resolveNodeModuleAlias } from "./node-module-aliases.js";
12
- import { resolveSurfaceCapabilities } from "../surface/profiles.js";
13
11
  /**
14
12
  * Resolve import specifier to module
15
13
  *
@@ -19,14 +17,9 @@ import { resolveSurfaceCapabilities } from "../surface/profiles.js";
19
17
  * @param opts - Optional resolvers (clrResolver for CLR imports, bindings for module bindings)
20
18
  */
21
19
  export const resolveImport = (importSpecifier, containingFile, sourceRoot, opts) => {
22
- const surface = opts?.surface ?? "clr";
23
- const surfaceCapabilities = resolveSurfaceCapabilities(surface);
24
- const nodeAlias = surfaceCapabilities.enableNodeModuleAliases
25
- ? resolveNodeModuleAlias(importSpecifier)
26
- : undefined;
27
- const canonicalImportSpecifier = nodeAlias?.canonicalSpecifier ?? importSpecifier;
28
- const clrResolver = opts?.clrResolver;
29
20
  const bindings = opts?.bindings;
21
+ const canonicalImportSpecifier = importSpecifier;
22
+ const clrResolver = opts?.clrResolver;
30
23
  if (isLocalImport(canonicalImportSpecifier)) {
31
24
  return resolveLocalImport(canonicalImportSpecifier, containingFile, sourceRoot);
32
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"import-resolution.js","sourceRoot":"","sources":["../../src/resolver/import-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import-resolution.js","sourceRoot":"","sources":["../../src/resolver/import-resolution.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,45 @@ describe("Module Resolver", () => {
12
12
  describe("resolveImport", () => {
13
13
  const tempDir = path.join(os.tmpdir(), "tsonic-test");
14
14
  const sourceRoot = tempDir;
15
+ const createNodeBindings = (moduleType, extraModuleTypes = []) => {
16
+ const bindings = new BindingRegistry();
17
+ const moduleNames = Array.from(new Set([
18
+ moduleType.replace(/^nodejs\./, ""),
19
+ ...extraModuleTypes.map((t) => t.replace(/^nodejs\./, "")),
20
+ ]));
21
+ const moduleBindings = Object.fromEntries(moduleNames.flatMap((moduleName) => [
22
+ [
23
+ `node:${moduleName}`,
24
+ {
25
+ kind: "module",
26
+ assembly: "nodejs",
27
+ type: `nodejs.${moduleName}`,
28
+ },
29
+ ],
30
+ [
31
+ moduleName,
32
+ {
33
+ kind: "module",
34
+ assembly: "nodejs",
35
+ type: `nodejs.${moduleName}`,
36
+ },
37
+ ],
38
+ ]));
39
+ bindings.addBindings("/test/nodejs-bindings.json", {
40
+ bindings: moduleBindings,
41
+ });
42
+ bindings.addBindings("/test/nodejs-types.json", {
43
+ namespace: "nodejs",
44
+ types: moduleNames.map((moduleName) => ({
45
+ clrName: `nodejs.${moduleName}`,
46
+ assemblyName: "nodejs",
47
+ methods: [],
48
+ properties: [],
49
+ fields: [],
50
+ })),
51
+ });
52
+ return bindings;
53
+ };
15
54
  before(() => {
16
55
  // Create temp directory structure
17
56
  fs.mkdirSync(path.join(tempDir, "src", "models"), { recursive: true });
@@ -68,21 +107,9 @@ describe("Module Resolver", () => {
68
107
  expect(result.error.message).to.include("Cannot find module");
69
108
  }
70
109
  });
71
- it("should resolve node: aliases to canonical nodejs binding in nodejs surface", () => {
72
- const bindings = new BindingRegistry();
73
- bindings.addBindings("/test/nodejs-bindings.json", {
74
- bindings: {
75
- "@tsonic/nodejs/index.js": {
76
- kind: "module",
77
- assembly: "nodejs",
78
- type: "nodejs.fs",
79
- },
80
- },
81
- });
82
- const result = resolveImport("node:fs", path.join(tempDir, "src", "index.ts"), sourceRoot, {
83
- bindings,
84
- surface: "nodejs",
85
- });
110
+ it("should resolve node: aliases when matching module bindings exist", () => {
111
+ const bindings = createNodeBindings("nodejs.fs");
112
+ const result = resolveImport("node:fs", path.join(tempDir, "src", "index.ts"), sourceRoot, { bindings });
86
113
  expect(result.ok).to.equal(true);
87
114
  if (result.ok) {
88
115
  expect(result.value.isLocal).to.equal(false);
@@ -90,80 +117,25 @@ describe("Module Resolver", () => {
90
117
  expect(result.value.resolvedClrType).to.equal("nodejs.fs");
91
118
  }
92
119
  });
93
- it("should resolve extended node aliases in nodejs surface", () => {
94
- const bindings = new BindingRegistry();
95
- bindings.addBindings("/test/nodejs-bindings.json", {
96
- bindings: {
97
- "@tsonic/nodejs/index.js": {
98
- kind: "module",
99
- assembly: "nodejs",
100
- type: "nodejs.url",
101
- },
102
- },
103
- });
104
- const result = resolveImport("node:url", path.join(tempDir, "src", "index.ts"), sourceRoot, {
105
- bindings,
106
- surface: "nodejs",
107
- });
120
+ it("should resolve extended node aliases when module bindings exist", () => {
121
+ const bindings = createNodeBindings("nodejs.url");
122
+ const result = resolveImport("node:url", path.join(tempDir, "src", "index.ts"), sourceRoot, { bindings });
108
123
  expect(result.ok).to.equal(true);
109
124
  if (result.ok) {
110
125
  expect(result.value.resolvedClrType).to.equal("nodejs.url");
111
126
  }
112
127
  });
113
- it("should resolve bare node module aliases in nodejs surface", () => {
114
- const bindings = new BindingRegistry();
115
- bindings.addBindings("/test/nodejs-bindings.json", {
116
- bindings: {
117
- "@tsonic/nodejs/index.js": {
118
- kind: "module",
119
- assembly: "nodejs",
120
- type: "nodejs.path",
121
- },
122
- },
123
- });
124
- const result = resolveImport("path", path.join(tempDir, "src", "index.ts"), sourceRoot, {
125
- bindings,
126
- surface: "nodejs",
127
- });
128
+ it("should resolve bare node module aliases when module bindings exist", () => {
129
+ const bindings = createNodeBindings("nodejs.path");
130
+ const result = resolveImport("path", path.join(tempDir, "src", "index.ts"), sourceRoot, { bindings });
128
131
  expect(result.ok).to.equal(true);
129
132
  if (result.ok) {
130
133
  expect(result.value.resolvedClrType).to.equal("nodejs.path");
131
134
  }
132
135
  });
133
- it("should reject node aliases in js surface", () => {
134
- const bindings = new BindingRegistry();
135
- bindings.addBindings("/test/nodejs-bindings.json", {
136
- bindings: {
137
- "@tsonic/nodejs/index.js": {
138
- kind: "module",
139
- assembly: "nodejs",
140
- type: "nodejs.fs",
141
- },
142
- },
143
- });
144
- const result = resolveImport("node:fs", path.join(tempDir, "src", "index.ts"), sourceRoot, {
145
- bindings,
146
- surface: "js",
147
- });
148
- expect(result.ok).to.equal(false);
149
- if (!result.ok) {
150
- expect(result.error.code).to.equal("TSN1004");
151
- }
152
- });
153
- it("should reject node aliases outside nodejs surface", () => {
154
- const bindings = new BindingRegistry();
155
- bindings.addBindings("/test/nodejs-bindings.json", {
156
- bindings: {
157
- "@tsonic/nodejs/index.js": {
158
- kind: "module",
159
- assembly: "nodejs",
160
- type: "nodejs.fs",
161
- },
162
- },
163
- });
136
+ it("should reject node aliases when module bindings are missing", () => {
164
137
  const result = resolveImport("node:fs", path.join(tempDir, "src", "index.ts"), sourceRoot, {
165
- bindings,
166
- surface: "clr",
138
+ bindings: new BindingRegistry(),
167
139
  });
168
140
  expect(result.ok).to.equal(false);
169
141
  if (!result.ok) {