@tsonic/cli 0.0.14 → 0.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/cli/constants.d.ts +1 -1
- package/dist/cli/constants.d.ts.map +1 -1
- package/dist/cli/constants.js +4 -1
- package/dist/cli/constants.js.map +1 -1
- package/dist/cli/dispatcher.d.ts.map +1 -1
- package/dist/cli/dispatcher.js +63 -24
- package/dist/cli/dispatcher.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +10 -7
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/parser.d.ts +1 -2
- package/dist/cli/parser.d.ts.map +1 -1
- package/dist/cli/parser.js +29 -19
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/parser.test.js +49 -29
- package/dist/cli/parser.test.js.map +1 -1
- package/dist/commands/add-common.d.ts +61 -0
- package/dist/commands/add-common.d.ts.map +1 -0
- package/dist/commands/add-common.js +226 -0
- package/dist/commands/add-common.js.map +1 -0
- package/dist/commands/add-framework.d.ts +17 -0
- package/dist/commands/add-framework.d.ts.map +1 -0
- package/dist/commands/add-framework.js +125 -0
- package/dist/commands/add-framework.js.map +1 -0
- package/dist/commands/add-nuget.d.ts +18 -0
- package/dist/commands/add-nuget.d.ts.map +1 -0
- package/dist/commands/add-nuget.js +256 -0
- package/dist/commands/add-nuget.js.map +1 -0
- package/dist/commands/add-package.d.ts +12 -19
- package/dist/commands/add-package.d.ts.map +1 -1
- package/dist/commands/add-package.js +175 -86
- package/dist/commands/add-package.js.map +1 -1
- package/dist/commands/build.d.ts.map +1 -1
- package/dist/commands/build.js +12 -2
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +74 -53
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/init.d.ts +2 -3
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +21 -63
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/init.test.js +19 -59
- package/dist/commands/init.test.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +63 -6
- package/dist/config.js.map +1 -1
- package/dist/config.test.js +36 -6
- package/dist/config.test.js.map +1 -1
- package/dist/types.d.ts +33 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
- package/runtime/Tsonic.JSRuntime.dll +0 -0
- package/runtime/Tsonic.Runtime.dll +0 -0
- package/runtime/nodejs.dll +0 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { mkdirSync, writeFileSync, existsSync, readdirSync, copyFileSync, } from "node:fs";
|
|
5
5
|
import { join, dirname, relative, resolve } from "node:path";
|
|
6
|
-
import { buildModuleDependencyGraph, } from "@tsonic/frontend";
|
|
6
|
+
import { buildModuleDependencyGraph, isExecutableStatement, applyNamingPolicy, resolveNamingPolicy, } from "@tsonic/frontend";
|
|
7
7
|
import { emitCSharpFiles } from "@tsonic/emitter";
|
|
8
8
|
import { generateCsproj, generateProgramCs, } from "@tsonic/backend";
|
|
9
9
|
/**
|
|
@@ -62,9 +62,9 @@ const findDll = (dllName) => {
|
|
|
62
62
|
* Checks project's lib/ directory first, then falls back to CLI package
|
|
63
63
|
* Returns assembly references for the csproj file
|
|
64
64
|
*/
|
|
65
|
-
const findRuntimeDlls = (
|
|
65
|
+
const findRuntimeDlls = (outputDir, usedAssemblies = new Set()) => {
|
|
66
66
|
const refs = [];
|
|
67
|
-
// Always include Tsonic.Runtime
|
|
67
|
+
// Always include Tsonic.Runtime
|
|
68
68
|
const runtimeDll = findDll("Tsonic.Runtime.dll");
|
|
69
69
|
if (runtimeDll) {
|
|
70
70
|
refs.push({
|
|
@@ -72,16 +72,6 @@ const findRuntimeDlls = (runtime, outputDir, usedAssemblies = new Set()) => {
|
|
|
72
72
|
hintPath: relative(outputDir, runtimeDll),
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
|
-
// Include Tsonic.JSRuntime for js mode only
|
|
76
|
-
if (runtime === "js") {
|
|
77
|
-
const jsRuntimeDll = findDll("Tsonic.JSRuntime.dll");
|
|
78
|
-
if (jsRuntimeDll) {
|
|
79
|
-
refs.push({
|
|
80
|
-
name: "Tsonic.JSRuntime",
|
|
81
|
-
hintPath: relative(outputDir, jsRuntimeDll),
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
75
|
// Include nodejs.dll if nodejs assembly is used
|
|
86
76
|
if (usedAssemblies.has("nodejs")) {
|
|
87
77
|
const nodejsDll = findDll("nodejs.dll");
|
|
@@ -92,6 +82,16 @@ const findRuntimeDlls = (runtime, outputDir, usedAssemblies = new Set()) => {
|
|
|
92
82
|
});
|
|
93
83
|
}
|
|
94
84
|
}
|
|
85
|
+
// Include Tsonic.JSRuntime.dll if JS runtime types are used
|
|
86
|
+
if (usedAssemblies.has("Tsonic.JSRuntime")) {
|
|
87
|
+
const jsRuntimeDll = findDll("Tsonic.JSRuntime.dll");
|
|
88
|
+
if (jsRuntimeDll) {
|
|
89
|
+
refs.push({
|
|
90
|
+
name: "Tsonic.JSRuntime",
|
|
91
|
+
hintPath: relative(outputDir, jsRuntimeDll),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
95
|
return refs;
|
|
96
96
|
};
|
|
97
97
|
/**
|
|
@@ -124,7 +124,8 @@ const collectProjectLibraries = (projectRoot, outputDir, libraries) => {
|
|
|
124
124
|
/**
|
|
125
125
|
* Extract entry point information from IR module
|
|
126
126
|
*/
|
|
127
|
-
const extractEntryInfo = (entryModule,
|
|
127
|
+
const extractEntryInfo = (entryModule, namingPolicy) => {
|
|
128
|
+
const methodName = applyNamingPolicy("main", resolveNamingPolicy(namingPolicy, "methods"));
|
|
128
129
|
// Look for exported 'main' function
|
|
129
130
|
for (const exp of entryModule.exports) {
|
|
130
131
|
if (exp.kind === "declaration") {
|
|
@@ -133,10 +134,9 @@ const extractEntryInfo = (entryModule, runtime) => {
|
|
|
133
134
|
return {
|
|
134
135
|
namespace: entryModule.namespace,
|
|
135
136
|
className: entryModule.className,
|
|
136
|
-
methodName
|
|
137
|
+
methodName,
|
|
137
138
|
isAsync: decl.isAsync,
|
|
138
139
|
needsProgram: true,
|
|
139
|
-
runtime,
|
|
140
140
|
};
|
|
141
141
|
}
|
|
142
142
|
}
|
|
@@ -148,10 +148,9 @@ const extractEntryInfo = (entryModule, runtime) => {
|
|
|
148
148
|
return {
|
|
149
149
|
namespace: entryModule.namespace,
|
|
150
150
|
className: entryModule.className,
|
|
151
|
-
methodName
|
|
151
|
+
methodName,
|
|
152
152
|
isAsync: stmt.isAsync,
|
|
153
153
|
needsProgram: true,
|
|
154
|
-
runtime,
|
|
155
154
|
};
|
|
156
155
|
}
|
|
157
156
|
}
|
|
@@ -164,7 +163,7 @@ const extractEntryInfo = (entryModule, runtime) => {
|
|
|
164
163
|
* Emit C# code from TypeScript
|
|
165
164
|
*/
|
|
166
165
|
export const generateCommand = (config) => {
|
|
167
|
-
const { entryPoint, outputDirectory, rootNamespace, projectRoot, sourceRoot, typeRoots, } = config;
|
|
166
|
+
const { entryPoint, outputDirectory, rootNamespace, namingPolicy, projectRoot, sourceRoot, typeRoots, frameworkReferences, packageReferences, } = config;
|
|
168
167
|
// For libraries, entry point is optional
|
|
169
168
|
if (!entryPoint && config.outputConfig.type !== "library") {
|
|
170
169
|
return {
|
|
@@ -173,6 +172,7 @@ export const generateCommand = (config) => {
|
|
|
173
172
|
};
|
|
174
173
|
}
|
|
175
174
|
try {
|
|
175
|
+
const outputType = config.outputConfig.type ?? "executable";
|
|
176
176
|
// For libraries without entry point, we need a different approach
|
|
177
177
|
// For now, require entry point (library multi-file support can be added later)
|
|
178
178
|
if (!entryPoint) {
|
|
@@ -190,6 +190,7 @@ export const generateCommand = (config) => {
|
|
|
190
190
|
projectRoot,
|
|
191
191
|
sourceRoot,
|
|
192
192
|
rootNamespace,
|
|
193
|
+
namingPolicy,
|
|
193
194
|
typeRoots: allTypeRoots,
|
|
194
195
|
verbose: config.verbose,
|
|
195
196
|
};
|
|
@@ -217,8 +218,8 @@ export const generateCommand = (config) => {
|
|
|
217
218
|
rootNamespace,
|
|
218
219
|
entryPointPath: absoluteEntryPoint,
|
|
219
220
|
libraries: typeLibraries, // Only non-DLL libraries (type roots)
|
|
220
|
-
runtime: config.runtime,
|
|
221
221
|
clrBindings: bindings, // Pass bindings from frontend for Action/Func resolution
|
|
222
|
+
namingPolicy,
|
|
222
223
|
});
|
|
223
224
|
if (!emitResult.ok) {
|
|
224
225
|
// Handle file name collision errors
|
|
@@ -241,19 +242,41 @@ export const generateCommand = (config) => {
|
|
|
241
242
|
writeFileSync(fullPath, csCode, "utf-8");
|
|
242
243
|
}
|
|
243
244
|
// Generate Program.cs entry point wrapper (only for executables)
|
|
244
|
-
if (absoluteEntryPoint) {
|
|
245
|
+
if (absoluteEntryPoint && outputType !== "library") {
|
|
245
246
|
// entryModule is already provided by buildDependencyGraph
|
|
246
247
|
// But double-check by comparing relative paths
|
|
247
248
|
const entryRelative = relative(sourceRoot, absoluteEntryPoint).replace(/\\/g, "/");
|
|
248
249
|
const foundEntryModule = irResult.value.find((m) => m.filePath === entryRelative) ??
|
|
249
250
|
entryModule;
|
|
250
251
|
if (foundEntryModule) {
|
|
251
|
-
const
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
252
|
+
const hasTopLevelCode = foundEntryModule.body.some(isExecutableStatement);
|
|
253
|
+
const mainExport = extractEntryInfo(foundEntryModule, namingPolicy);
|
|
254
|
+
if (mainExport && hasTopLevelCode) {
|
|
255
|
+
return {
|
|
256
|
+
ok: false,
|
|
257
|
+
error: "Entry point module exports main() and also contains top-level executable statements. " +
|
|
258
|
+
"Remove the top-level code or remove the main export to make program startup deterministic.",
|
|
259
|
+
};
|
|
256
260
|
}
|
|
261
|
+
const entryInfo = mainExport ??
|
|
262
|
+
(hasTopLevelCode
|
|
263
|
+
? {
|
|
264
|
+
namespace: foundEntryModule.namespace,
|
|
265
|
+
className: foundEntryModule.className,
|
|
266
|
+
methodName: "__TopLevel",
|
|
267
|
+
isAsync: false,
|
|
268
|
+
needsProgram: true,
|
|
269
|
+
}
|
|
270
|
+
: null);
|
|
271
|
+
if (!entryInfo) {
|
|
272
|
+
return {
|
|
273
|
+
ok: false,
|
|
274
|
+
error: "Entry point module must either export main() or contain top-level executable statements.",
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
const programCs = generateProgramCs(entryInfo);
|
|
278
|
+
const programPath = join(outputDir, "Program.cs");
|
|
279
|
+
writeFileSync(programPath, programCs, "utf-8");
|
|
257
280
|
}
|
|
258
281
|
}
|
|
259
282
|
// Generate or copy existing .csproj
|
|
@@ -269,36 +292,35 @@ export const generateCommand = (config) => {
|
|
|
269
292
|
// Copy existing .csproj from project root (preserves user edits)
|
|
270
293
|
copyFileSync(projectCsproj, csprojPath);
|
|
271
294
|
}
|
|
272
|
-
else
|
|
295
|
+
else {
|
|
296
|
+
// Always regenerate tsonic.csproj for generated output (unless the user
|
|
297
|
+
// provides a project .csproj at the project root). This keeps runtime and
|
|
298
|
+
// library references in sync across repeated builds.
|
|
273
299
|
// Find Tsonic runtime - try multiple approaches:
|
|
274
300
|
// 1. ProjectReference to .csproj (development/monorepo)
|
|
275
301
|
// 2. Assembly references to DLLs (npm installed package)
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
}
|
|
283
|
-
else {
|
|
302
|
+
const runtimePath = (() => {
|
|
303
|
+
// 1. Try monorepo structure (development) - ProjectReference
|
|
304
|
+
const monorepoPath = resolve(join(import.meta.dirname, "../../../runtime/src/Tsonic.Runtime.csproj"));
|
|
305
|
+
if (existsSync(monorepoPath)) {
|
|
306
|
+
return monorepoPath;
|
|
307
|
+
}
|
|
284
308
|
// 2. Try installed package structure - ProjectReference
|
|
285
309
|
const installedPath = resolve(join(import.meta.dirname, "../../../../@tsonic/runtime/src/Tsonic.Runtime.csproj"));
|
|
286
310
|
if (existsSync(installedPath)) {
|
|
287
|
-
|
|
288
|
-
}
|
|
289
|
-
else {
|
|
290
|
-
// 3. Try to find runtime DLLs from npm package
|
|
291
|
-
const runtimeRefs = findRuntimeDlls(config.runtime ?? "js", outputDir, usedAssemblies);
|
|
292
|
-
// 4. Add project libraries (from dotnet.libraries in tsonic.json)
|
|
293
|
-
const projectRefs = collectProjectLibraries(projectRoot, outputDir, config.libraries);
|
|
294
|
-
assemblyReferences = [...runtimeRefs, ...projectRefs];
|
|
311
|
+
return installedPath;
|
|
295
312
|
}
|
|
296
|
-
|
|
313
|
+
return undefined;
|
|
314
|
+
})();
|
|
315
|
+
const assemblyReferences = runtimePath
|
|
316
|
+
? []
|
|
317
|
+
: [
|
|
318
|
+
...findRuntimeDlls(outputDir, usedAssemblies),
|
|
319
|
+
...collectProjectLibraries(projectRoot, outputDir, config.libraries),
|
|
320
|
+
];
|
|
297
321
|
// Build output configuration
|
|
298
|
-
const
|
|
299
|
-
|
|
300
|
-
if (outputType === "library") {
|
|
301
|
-
outputConfig = {
|
|
322
|
+
const outputConfig = outputType === "library"
|
|
323
|
+
? {
|
|
302
324
|
type: "library",
|
|
303
325
|
targetFrameworks: config.outputConfig.targetFrameworks ?? [
|
|
304
326
|
config.dotnetVersion,
|
|
@@ -307,10 +329,8 @@ export const generateCommand = (config) => {
|
|
|
307
329
|
includeSymbols: config.outputConfig.includeSymbols ?? true,
|
|
308
330
|
packable: config.outputConfig.packable ?? false,
|
|
309
331
|
packageMetadata: config.outputConfig.package,
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
else {
|
|
313
|
-
outputConfig = {
|
|
332
|
+
}
|
|
333
|
+
: {
|
|
314
334
|
type: "executable",
|
|
315
335
|
nativeAot: config.outputConfig.nativeAot ?? true,
|
|
316
336
|
singleFile: config.outputConfig.singleFile ?? true,
|
|
@@ -320,13 +340,14 @@ export const generateCommand = (config) => {
|
|
|
320
340
|
invariantGlobalization: config.invariantGlobalization,
|
|
321
341
|
selfContained: config.outputConfig.selfContained ?? true,
|
|
322
342
|
};
|
|
323
|
-
}
|
|
324
343
|
const buildConfig = {
|
|
325
344
|
rootNamespace,
|
|
326
345
|
outputName: config.outputName,
|
|
327
346
|
dotnetVersion: config.dotnetVersion,
|
|
328
347
|
runtimePath,
|
|
329
348
|
assemblyReferences,
|
|
349
|
+
frameworkReferences,
|
|
350
|
+
packageReferences,
|
|
330
351
|
outputConfig,
|
|
331
352
|
};
|
|
332
353
|
const csproj = generateCsproj(buildConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -5,7 +5,6 @@ import type { Result } from "../types.js";
|
|
|
5
5
|
type InitOptions = {
|
|
6
6
|
readonly skipTypes?: boolean;
|
|
7
7
|
readonly typesVersion?: string;
|
|
8
|
-
readonly runtime?: "js" | "dotnet";
|
|
9
8
|
readonly nodejs?: boolean;
|
|
10
9
|
readonly pure?: boolean;
|
|
11
10
|
};
|
|
@@ -17,7 +16,7 @@ type TypePackageInfo = {
|
|
|
17
16
|
readonly typeRoots: readonly string[];
|
|
18
17
|
};
|
|
19
18
|
/**
|
|
20
|
-
* Get type package info
|
|
19
|
+
* Get type package info
|
|
21
20
|
*
|
|
22
21
|
* typeRoots: Only ambient globals packages (provide global types without imports)
|
|
23
22
|
* packages: All type packages to install (includes explicit import packages)
|
|
@@ -28,7 +27,7 @@ type TypePackageInfo = {
|
|
|
28
27
|
* - @tsonic/globals-pure depends on @tsonic/dotnet-pure (PascalCase CLR naming)
|
|
29
28
|
* - @tsonic/nodejs has @tsonic/dotnet as peerDependency (uses whichever globals provides)
|
|
30
29
|
*/
|
|
31
|
-
export declare const getTypePackageInfo: (
|
|
30
|
+
export declare const getTypePackageInfo: (nodejs?: boolean, pure?: boolean) => TypePackageInfo;
|
|
32
31
|
/**
|
|
33
32
|
* Initialize a new Tsonic project
|
|
34
33
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAwDF,KAAK,eAAe,GAAG;IACrB,QAAQ,CAAC,QAAQ,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAChE,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,CAAC;AAKF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAQ,OAAe,EACvB,OAAM,OAAe,KACpB,eAqBF,CAAC;AAuMF;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,MAAM,EACX,UAAS,WAAgB,KACxB,MAAM,CAAC,IAAI,EAAE,MAAM,CA2GrB,CAAC"}
|
package/dist/commands/init.js
CHANGED
|
@@ -12,22 +12,17 @@ generated/obj/
|
|
|
12
12
|
# generated/**/*.cs
|
|
13
13
|
|
|
14
14
|
# Output executables
|
|
15
|
+
out/
|
|
15
16
|
*.exe
|
|
16
|
-
app
|
|
17
17
|
|
|
18
18
|
# Dependencies
|
|
19
19
|
node_modules/
|
|
20
|
-
`;
|
|
21
|
-
const SAMPLE_MAIN_TS_JS = `export function main(): void {
|
|
22
|
-
console.log("Hello from Tsonic!");
|
|
23
20
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
console.log("Doubled:", doubled.join(", "));
|
|
27
|
-
}
|
|
21
|
+
# Internal tooling artifacts (restore scratch, caches)
|
|
22
|
+
.tsonic/
|
|
28
23
|
`;
|
|
29
|
-
const
|
|
30
|
-
import { File } from "@tsonic/dotnet/System.IO";
|
|
24
|
+
const SAMPLE_MAIN_TS = `import { Console } from "@tsonic/dotnet/System.js";
|
|
25
|
+
import { File } from "@tsonic/dotnet/System.IO.js";
|
|
31
26
|
|
|
32
27
|
export function main(): void {
|
|
33
28
|
Console.writeLine("Reading README.md...");
|
|
@@ -45,7 +40,7 @@ Build and run the project:
|
|
|
45
40
|
|
|
46
41
|
\`\`\`bash
|
|
47
42
|
npm run build
|
|
48
|
-
./app
|
|
43
|
+
./out/app
|
|
49
44
|
\`\`\`
|
|
50
45
|
|
|
51
46
|
Or run directly:
|
|
@@ -56,14 +51,14 @@ npm run dev
|
|
|
56
51
|
|
|
57
52
|
## Project Structure
|
|
58
53
|
|
|
59
|
-
- \`src/
|
|
54
|
+
- \`src/App.ts\` - Entry point
|
|
60
55
|
- \`tsonic.json\` - Project configuration
|
|
61
56
|
- \`generated/\` - Generated C# code (gitignored)
|
|
62
57
|
`;
|
|
63
58
|
// Unified CLI package version - installed as devDependency for npm run build/dev
|
|
64
|
-
const CLI_PACKAGE = { name: "
|
|
59
|
+
const CLI_PACKAGE = { name: "tsonic", version: "latest" };
|
|
65
60
|
/**
|
|
66
|
-
* Get type package info
|
|
61
|
+
* Get type package info
|
|
67
62
|
*
|
|
68
63
|
* typeRoots: Only ambient globals packages (provide global types without imports)
|
|
69
64
|
* packages: All type packages to install (includes explicit import packages)
|
|
@@ -74,34 +69,9 @@ const CLI_PACKAGE = { name: "@tsonic/tsonic", version: "latest" };
|
|
|
74
69
|
* - @tsonic/globals-pure depends on @tsonic/dotnet-pure (PascalCase CLR naming)
|
|
75
70
|
* - @tsonic/nodejs has @tsonic/dotnet as peerDependency (uses whichever globals provides)
|
|
76
71
|
*/
|
|
77
|
-
export const getTypePackageInfo = (
|
|
72
|
+
export const getTypePackageInfo = (nodejs = false, pure = false) => {
|
|
78
73
|
// Core package is always included (provides int, float, etc.)
|
|
79
74
|
const corePackage = { name: "@tsonic/core", version: "latest" };
|
|
80
|
-
if (runtime === "js") {
|
|
81
|
-
// JS mode:
|
|
82
|
-
// - @tsonic/cli: the compiler CLI (provides `tsonic` command)
|
|
83
|
-
// - @tsonic/core: core types (int, float, etc.) - explicit import
|
|
84
|
-
// - @tsonic/globals: base types + BCL methods (transitive @tsonic/dotnet) - needs typeRoots
|
|
85
|
-
// - @tsonic/js-globals: extends base with JS methods (.map, .length, etc.) - needs typeRoots
|
|
86
|
-
// Note: --pure is ignored in JS mode (always uses camelCase)
|
|
87
|
-
const packages = [
|
|
88
|
-
CLI_PACKAGE,
|
|
89
|
-
corePackage,
|
|
90
|
-
{ name: "@tsonic/globals", version: "latest" },
|
|
91
|
-
{ name: "@tsonic/js-globals", version: "latest" },
|
|
92
|
-
];
|
|
93
|
-
if (nodejs) {
|
|
94
|
-
packages.push({ name: "@tsonic/nodejs", version: "latest" });
|
|
95
|
-
}
|
|
96
|
-
return {
|
|
97
|
-
packages,
|
|
98
|
-
typeRoots: [
|
|
99
|
-
"node_modules/@tsonic/globals",
|
|
100
|
-
"node_modules/@tsonic/js-globals",
|
|
101
|
-
],
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
// Dotnet mode:
|
|
105
75
|
// - @tsonic/cli: the compiler CLI (provides `tsonic` command)
|
|
106
76
|
// - @tsonic/core: core types (int, float, etc.) - explicit import
|
|
107
77
|
// - @tsonic/globals[-pure]: base types + BCL methods (transitive @tsonic/dotnet[-pure]) - needs typeRoots
|
|
@@ -147,15 +117,14 @@ const findRuntimeDir = () => {
|
|
|
147
117
|
/**
|
|
148
118
|
* Copy runtime DLLs to project's lib/ directory
|
|
149
119
|
* - Tsonic.Runtime.dll: Always copied (core runtime)
|
|
150
|
-
* - Tsonic.JSRuntime.dll: Copied for js mode
|
|
151
120
|
* - nodejs.dll: Copied if --nodejs flag is used
|
|
152
121
|
*/
|
|
153
|
-
const copyRuntimeDlls = (cwd,
|
|
122
|
+
const copyRuntimeDlls = (cwd, includeNodejs) => {
|
|
154
123
|
const runtimeDir = findRuntimeDir();
|
|
155
124
|
if (!runtimeDir) {
|
|
156
125
|
return {
|
|
157
126
|
ok: false,
|
|
158
|
-
error: "Runtime directory not found. Make sure
|
|
127
|
+
error: "Runtime directory not found. Make sure tsonic is installed.",
|
|
159
128
|
};
|
|
160
129
|
}
|
|
161
130
|
const libDir = join(cwd, "lib");
|
|
@@ -173,14 +142,6 @@ const copyRuntimeDlls = (cwd, runtime, includeNodejs) => {
|
|
|
173
142
|
error: "Tsonic.Runtime.dll not found in runtime directory.",
|
|
174
143
|
};
|
|
175
144
|
}
|
|
176
|
-
// Copy Tsonic.JSRuntime.dll for js mode
|
|
177
|
-
if (runtime === "js") {
|
|
178
|
-
const jsRuntimeDll = join(runtimeDir, "Tsonic.JSRuntime.dll");
|
|
179
|
-
if (existsSync(jsRuntimeDll)) {
|
|
180
|
-
copyFileSync(jsRuntimeDll, join(libDir, "Tsonic.JSRuntime.dll"));
|
|
181
|
-
copiedPaths.push("lib/Tsonic.JSRuntime.dll");
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
145
|
// Copy nodejs.dll if requested
|
|
185
146
|
if (includeNodejs) {
|
|
186
147
|
const nodejsDll = join(runtimeDir, "nodejs.dll");
|
|
@@ -197,7 +158,7 @@ const copyRuntimeDlls = (cwd, runtime, includeNodejs) => {
|
|
|
197
158
|
/**
|
|
198
159
|
* Generate tsonic.json config
|
|
199
160
|
*/
|
|
200
|
-
const generateConfig = (includeTypeRoots,
|
|
161
|
+
const generateConfig = (includeTypeRoots, libraryPaths = [], pure = false) => {
|
|
201
162
|
const config = {
|
|
202
163
|
$schema: "https://tsonic.dev/schema/v1.json",
|
|
203
164
|
rootNamespace: "MyApp",
|
|
@@ -205,7 +166,6 @@ const generateConfig = (includeTypeRoots, runtime, libraryPaths = [], pure = fal
|
|
|
205
166
|
sourceRoot: "src",
|
|
206
167
|
outputDirectory: "generated",
|
|
207
168
|
outputName: "app",
|
|
208
|
-
runtime: runtime,
|
|
209
169
|
optimize: "speed",
|
|
210
170
|
buildOptions: {
|
|
211
171
|
stripSymbols: true,
|
|
@@ -213,7 +173,7 @@ const generateConfig = (includeTypeRoots, runtime, libraryPaths = [], pure = fal
|
|
|
213
173
|
},
|
|
214
174
|
};
|
|
215
175
|
if (includeTypeRoots || libraryPaths.length > 0) {
|
|
216
|
-
const typeInfo = getTypePackageInfo(
|
|
176
|
+
const typeInfo = getTypePackageInfo(false, pure);
|
|
217
177
|
const dotnet = {};
|
|
218
178
|
if (includeTypeRoots) {
|
|
219
179
|
dotnet.typeRoots = typeInfo.typeRoots;
|
|
@@ -291,7 +251,6 @@ const installPackage = (packageName, version) => {
|
|
|
291
251
|
* Initialize a new Tsonic project
|
|
292
252
|
*/
|
|
293
253
|
export const initProject = (cwd, options = {}) => {
|
|
294
|
-
const runtime = options.runtime ?? "js";
|
|
295
254
|
const tsonicJsonPath = join(cwd, "tsonic.json");
|
|
296
255
|
const gitignorePath = join(cwd, ".gitignore");
|
|
297
256
|
const srcDir = join(cwd, "src");
|
|
@@ -310,11 +269,11 @@ export const initProject = (cwd, options = {}) => {
|
|
|
310
269
|
const packageJsonExists = existsSync(packageJsonPath);
|
|
311
270
|
createOrUpdatePackageJson(packageJsonPath);
|
|
312
271
|
console.log(packageJsonExists ? "✓ Updated package.json" : "✓ Created package.json");
|
|
313
|
-
// Install type declarations
|
|
272
|
+
// Install type declarations
|
|
314
273
|
const shouldInstallTypes = !options.skipTypes;
|
|
315
274
|
const nodejs = options.nodejs ?? false;
|
|
316
275
|
const pure = options.pure ?? false;
|
|
317
|
-
const typeInfo = getTypePackageInfo(
|
|
276
|
+
const typeInfo = getTypePackageInfo(nodejs, pure);
|
|
318
277
|
if (shouldInstallTypes) {
|
|
319
278
|
for (const pkg of typeInfo.packages) {
|
|
320
279
|
const version = options.typesVersion ?? pkg.version;
|
|
@@ -327,10 +286,10 @@ export const initProject = (cwd, options = {}) => {
|
|
|
327
286
|
}
|
|
328
287
|
}
|
|
329
288
|
// Copy runtime DLLs to lib/ directory
|
|
330
|
-
// This includes Tsonic.Runtime.dll (always)
|
|
289
|
+
// This includes Tsonic.Runtime.dll (always) and nodejs.dll (if --nodejs)
|
|
331
290
|
// Note: These are NOT added to dotnet.libraries - findRuntimeDlls in generate.ts looks in lib/ first
|
|
332
291
|
console.log("Copying runtime DLLs to lib/...");
|
|
333
|
-
const copyResult = copyRuntimeDlls(cwd,
|
|
292
|
+
const copyResult = copyRuntimeDlls(cwd, nodejs);
|
|
334
293
|
if (!copyResult.ok) {
|
|
335
294
|
// Log warning but continue - user can add manually later
|
|
336
295
|
console.log(`⚠ Warning: ${copyResult.error}`);
|
|
@@ -342,7 +301,7 @@ export const initProject = (cwd, options = {}) => {
|
|
|
342
301
|
}
|
|
343
302
|
// Create tsonic.json
|
|
344
303
|
// Note: Runtime DLLs in lib/ are found automatically by generate command
|
|
345
|
-
const config = generateConfig(shouldInstallTypes,
|
|
304
|
+
const config = generateConfig(shouldInstallTypes, [], pure);
|
|
346
305
|
writeFileSync(tsonicJsonPath, config, "utf-8");
|
|
347
306
|
console.log("✓ Created tsonic.json");
|
|
348
307
|
// Create or append to .gitignore
|
|
@@ -357,13 +316,12 @@ export const initProject = (cwd, options = {}) => {
|
|
|
357
316
|
writeFileSync(gitignorePath, DEFAULT_GITIGNORE, "utf-8");
|
|
358
317
|
console.log("✓ Created .gitignore");
|
|
359
318
|
}
|
|
360
|
-
// Create src directory and App.ts
|
|
319
|
+
// Create src directory and App.ts
|
|
361
320
|
if (!existsSync(srcDir)) {
|
|
362
321
|
mkdirSync(srcDir, { recursive: true });
|
|
363
322
|
}
|
|
364
323
|
if (!existsSync(appTsPath)) {
|
|
365
|
-
|
|
366
|
-
writeFileSync(appTsPath, sampleCode, "utf-8");
|
|
324
|
+
writeFileSync(appTsPath, SAMPLE_MAIN_TS, "utf-8");
|
|
367
325
|
console.log("✓ Created src/App.ts");
|
|
368
326
|
}
|
|
369
327
|
// Create README.md
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,aAAa,EACb,UAAU,EACV,YAAY,EACZ,SAAS,EACT,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|