tsonic 0.0.1 → 0.0.12
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/README.md +21 -0
- package/bin.js +17 -0
- package/package.json +16 -29
- package/dist/cli/constants.d.ts +0 -5
- package/dist/cli/constants.d.ts.map +0 -1
- package/dist/cli/constants.js +0 -5
- package/dist/cli/constants.js.map +0 -1
- package/dist/cli/dispatcher.d.ts +0 -8
- package/dist/cli/dispatcher.d.ts.map +0 -1
- package/dist/cli/dispatcher.js +0 -98
- package/dist/cli/dispatcher.js.map +0 -1
- package/dist/cli/help.d.ts +0 -8
- package/dist/cli/help.d.ts.map +0 -1
- package/dist/cli/help.js +0 -48
- package/dist/cli/help.js.map +0 -1
- package/dist/cli/index.d.ts +0 -8
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -8
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/parser.d.ts +0 -14
- package/dist/cli/parser.d.ts.map +0 -1
- package/dist/cli/parser.js +0 -94
- package/dist/cli/parser.js.map +0 -1
- package/dist/cli/parser.test.d.ts +0 -5
- package/dist/cli/parser.test.d.ts.map +0 -1
- package/dist/cli/parser.test.js +0 -221
- package/dist/cli/parser.test.js.map +0 -1
- package/dist/cli.d.ts +0 -6
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -6
- package/dist/cli.js.map +0 -1
- package/dist/commands/build.d.ts +0 -11
- package/dist/commands/build.d.ts.map +0 -1
- package/dist/commands/build.js +0 -99
- package/dist/commands/build.js.map +0 -1
- package/dist/commands/emit.d.ts +0 -12
- package/dist/commands/emit.d.ts.map +0 -1
- package/dist/commands/emit.js +0 -170
- package/dist/commands/emit.js.map +0 -1
- package/dist/commands/init.d.ts +0 -14
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -217
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/run.d.ts +0 -11
- package/dist/commands/run.d.ts.map +0 -1
- package/dist/commands/run.js +0 -40
- package/dist/commands/run.js.map +0 -1
- package/dist/config.d.ts +0 -17
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -84
- package/dist/config.js.map +0 -1
- package/dist/config.test.d.ts +0 -5
- package/dist/config.test.d.ts.map +0 -1
- package/dist/config.test.js +0 -274
- package/dist/config.test.js.map +0 -1
- package/dist/index.d.ts +0 -8
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -20
- package/dist/index.js.map +0 -1
- package/dist/types.d.ts +0 -74
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -5
- package/dist/types.js.map +0 -1
- package/src/cli/constants.ts +0 -5
- package/src/cli/dispatcher.ts +0 -115
- package/src/cli/help.ts +0 -49
- package/src/cli/index.ts +0 -8
- package/src/cli/parser.test.ts +0 -259
- package/src/cli/parser.ts +0 -109
- package/src/cli.ts +0 -6
- package/src/commands/build.ts +0 -125
- package/src/commands/emit.ts +0 -222
- package/src/commands/init.ts +0 -272
- package/src/commands/run.ts +0 -51
- package/src/config.test.ts +0 -328
- package/src/config.ts +0 -105
- package/src/index.ts +0 -23
- package/src/types.ts +0 -74
- package/tsconfig.json +0 -18
package/dist/config.test.js
DELETED
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for configuration loading and resolution
|
|
3
|
-
*/
|
|
4
|
-
import { describe, it } from "mocha";
|
|
5
|
-
import { expect } from "chai";
|
|
6
|
-
import { resolveConfig } from "./config.js";
|
|
7
|
-
describe("Config", () => {
|
|
8
|
-
describe("resolveConfig", () => {
|
|
9
|
-
it("should use config values as defaults", () => {
|
|
10
|
-
const config = {
|
|
11
|
-
rootNamespace: "MyApp",
|
|
12
|
-
entryPoint: "src/main.ts",
|
|
13
|
-
sourceRoot: "src",
|
|
14
|
-
outputDirectory: "dist",
|
|
15
|
-
outputName: "myapp",
|
|
16
|
-
rid: "linux-x64",
|
|
17
|
-
dotnetVersion: "net10.0",
|
|
18
|
-
optimize: "speed",
|
|
19
|
-
};
|
|
20
|
-
const result = resolveConfig(config, {});
|
|
21
|
-
expect(result.rootNamespace).to.equal("MyApp");
|
|
22
|
-
expect(result.entryPoint).to.equal("src/main.ts");
|
|
23
|
-
expect(result.sourceRoot).to.equal("src");
|
|
24
|
-
expect(result.outputDirectory).to.equal("dist");
|
|
25
|
-
expect(result.outputName).to.equal("myapp");
|
|
26
|
-
expect(result.rid).to.equal("linux-x64");
|
|
27
|
-
expect(result.dotnetVersion).to.equal("net10.0");
|
|
28
|
-
expect(result.optimize).to.equal("speed");
|
|
29
|
-
});
|
|
30
|
-
it("should override config with CLI options", () => {
|
|
31
|
-
const config = {
|
|
32
|
-
rootNamespace: "MyApp",
|
|
33
|
-
outputName: "myapp",
|
|
34
|
-
};
|
|
35
|
-
const cliOptions = {
|
|
36
|
-
namespace: "OverriddenApp",
|
|
37
|
-
out: "custom",
|
|
38
|
-
src: "source",
|
|
39
|
-
optimize: "size",
|
|
40
|
-
};
|
|
41
|
-
const result = resolveConfig(config, cliOptions);
|
|
42
|
-
expect(result.rootNamespace).to.equal("OverriddenApp");
|
|
43
|
-
expect(result.outputName).to.equal("custom");
|
|
44
|
-
expect(result.sourceRoot).to.equal("source");
|
|
45
|
-
expect(result.optimize).to.equal("size");
|
|
46
|
-
});
|
|
47
|
-
it("should use entry file parameter over config", () => {
|
|
48
|
-
const config = {
|
|
49
|
-
rootNamespace: "MyApp",
|
|
50
|
-
entryPoint: "src/main.ts",
|
|
51
|
-
};
|
|
52
|
-
const result = resolveConfig(config, {}, "custom/entry.ts");
|
|
53
|
-
expect(result.entryPoint).to.equal("custom/entry.ts");
|
|
54
|
-
});
|
|
55
|
-
it("should default entryPoint to src/main.ts", () => {
|
|
56
|
-
const config = {
|
|
57
|
-
rootNamespace: "MyApp",
|
|
58
|
-
};
|
|
59
|
-
const result = resolveConfig(config, {});
|
|
60
|
-
expect(result.entryPoint).to.equal("src/main.ts");
|
|
61
|
-
});
|
|
62
|
-
it("should default sourceRoot to dirname of entryPoint", () => {
|
|
63
|
-
const config = {
|
|
64
|
-
rootNamespace: "MyApp",
|
|
65
|
-
entryPoint: "app/index.ts",
|
|
66
|
-
};
|
|
67
|
-
const result = resolveConfig(config, {});
|
|
68
|
-
expect(result.sourceRoot).to.equal("app");
|
|
69
|
-
});
|
|
70
|
-
it("should default outputDirectory to 'generated'", () => {
|
|
71
|
-
const config = {
|
|
72
|
-
rootNamespace: "MyApp",
|
|
73
|
-
};
|
|
74
|
-
const result = resolveConfig(config, {});
|
|
75
|
-
expect(result.outputDirectory).to.equal("generated");
|
|
76
|
-
});
|
|
77
|
-
it("should default outputName to 'app'", () => {
|
|
78
|
-
const config = {
|
|
79
|
-
rootNamespace: "MyApp",
|
|
80
|
-
};
|
|
81
|
-
const result = resolveConfig(config, {});
|
|
82
|
-
expect(result.outputName).to.equal("app");
|
|
83
|
-
});
|
|
84
|
-
it("should default dotnetVersion to 'net10.0'", () => {
|
|
85
|
-
const config = {
|
|
86
|
-
rootNamespace: "MyApp",
|
|
87
|
-
};
|
|
88
|
-
const result = resolveConfig(config, {});
|
|
89
|
-
expect(result.dotnetVersion).to.equal("net10.0");
|
|
90
|
-
});
|
|
91
|
-
it("should default optimize to 'speed'", () => {
|
|
92
|
-
const config = {
|
|
93
|
-
rootNamespace: "MyApp",
|
|
94
|
-
};
|
|
95
|
-
const result = resolveConfig(config, {});
|
|
96
|
-
expect(result.optimize).to.equal("speed");
|
|
97
|
-
});
|
|
98
|
-
it("should default packages to empty array", () => {
|
|
99
|
-
const config = {
|
|
100
|
-
rootNamespace: "MyApp",
|
|
101
|
-
};
|
|
102
|
-
const result = resolveConfig(config, {});
|
|
103
|
-
expect(result.packages).to.deep.equal([]);
|
|
104
|
-
});
|
|
105
|
-
it("should include packages from config", () => {
|
|
106
|
-
const config = {
|
|
107
|
-
rootNamespace: "MyApp",
|
|
108
|
-
packages: [
|
|
109
|
-
{ name: "System.Text.Json", version: "8.0.0" },
|
|
110
|
-
{ name: "Newtonsoft.Json", version: "13.0.3" },
|
|
111
|
-
],
|
|
112
|
-
};
|
|
113
|
-
const result = resolveConfig(config, {});
|
|
114
|
-
expect(result.packages).to.deep.equal([
|
|
115
|
-
{ name: "System.Text.Json", version: "8.0.0" },
|
|
116
|
-
{ name: "Newtonsoft.Json", version: "13.0.3" },
|
|
117
|
-
]);
|
|
118
|
-
});
|
|
119
|
-
it("should default stripSymbols to true", () => {
|
|
120
|
-
const config = {
|
|
121
|
-
rootNamespace: "MyApp",
|
|
122
|
-
};
|
|
123
|
-
const result = resolveConfig(config, {});
|
|
124
|
-
expect(result.stripSymbols).to.equal(true);
|
|
125
|
-
});
|
|
126
|
-
it("should use buildOptions.stripSymbols from config", () => {
|
|
127
|
-
const config = {
|
|
128
|
-
rootNamespace: "MyApp",
|
|
129
|
-
buildOptions: {
|
|
130
|
-
stripSymbols: false,
|
|
131
|
-
},
|
|
132
|
-
};
|
|
133
|
-
const result = resolveConfig(config, {});
|
|
134
|
-
expect(result.stripSymbols).to.equal(false);
|
|
135
|
-
});
|
|
136
|
-
it("should override stripSymbols with --no-strip CLI option", () => {
|
|
137
|
-
const config = {
|
|
138
|
-
rootNamespace: "MyApp",
|
|
139
|
-
buildOptions: {
|
|
140
|
-
stripSymbols: true,
|
|
141
|
-
},
|
|
142
|
-
};
|
|
143
|
-
const result = resolveConfig(config, { noStrip: true });
|
|
144
|
-
expect(result.stripSymbols).to.equal(false);
|
|
145
|
-
});
|
|
146
|
-
it("should default invariantGlobalization to true", () => {
|
|
147
|
-
const config = {
|
|
148
|
-
rootNamespace: "MyApp",
|
|
149
|
-
};
|
|
150
|
-
const result = resolveConfig(config, {});
|
|
151
|
-
expect(result.invariantGlobalization).to.equal(true);
|
|
152
|
-
});
|
|
153
|
-
it("should use buildOptions.invariantGlobalization from config", () => {
|
|
154
|
-
const config = {
|
|
155
|
-
rootNamespace: "MyApp",
|
|
156
|
-
buildOptions: {
|
|
157
|
-
invariantGlobalization: false,
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
|
-
const result = resolveConfig(config, {});
|
|
161
|
-
expect(result.invariantGlobalization).to.equal(false);
|
|
162
|
-
});
|
|
163
|
-
it("should default keepTemp to false", () => {
|
|
164
|
-
const config = {
|
|
165
|
-
rootNamespace: "MyApp",
|
|
166
|
-
};
|
|
167
|
-
const result = resolveConfig(config, {});
|
|
168
|
-
expect(result.keepTemp).to.equal(false);
|
|
169
|
-
});
|
|
170
|
-
it("should set keepTemp from CLI option", () => {
|
|
171
|
-
const config = {
|
|
172
|
-
rootNamespace: "MyApp",
|
|
173
|
-
};
|
|
174
|
-
const result = resolveConfig(config, { keepTemp: true });
|
|
175
|
-
expect(result.keepTemp).to.equal(true);
|
|
176
|
-
});
|
|
177
|
-
it("should default verbose to false", () => {
|
|
178
|
-
const config = {
|
|
179
|
-
rootNamespace: "MyApp",
|
|
180
|
-
};
|
|
181
|
-
const result = resolveConfig(config, {});
|
|
182
|
-
expect(result.verbose).to.equal(false);
|
|
183
|
-
});
|
|
184
|
-
it("should set verbose from CLI option", () => {
|
|
185
|
-
const config = {
|
|
186
|
-
rootNamespace: "MyApp",
|
|
187
|
-
};
|
|
188
|
-
const result = resolveConfig(config, { verbose: true });
|
|
189
|
-
expect(result.verbose).to.equal(true);
|
|
190
|
-
});
|
|
191
|
-
it("should default quiet to false", () => {
|
|
192
|
-
const config = {
|
|
193
|
-
rootNamespace: "MyApp",
|
|
194
|
-
};
|
|
195
|
-
const result = resolveConfig(config, {});
|
|
196
|
-
expect(result.quiet).to.equal(false);
|
|
197
|
-
});
|
|
198
|
-
it("should set quiet from CLI option", () => {
|
|
199
|
-
const config = {
|
|
200
|
-
rootNamespace: "MyApp",
|
|
201
|
-
};
|
|
202
|
-
const result = resolveConfig(config, { quiet: true });
|
|
203
|
-
expect(result.quiet).to.equal(true);
|
|
204
|
-
});
|
|
205
|
-
it("should default typeRoots to node_modules/@tsonic/dotnet-types/types", () => {
|
|
206
|
-
const config = {
|
|
207
|
-
rootNamespace: "MyApp",
|
|
208
|
-
};
|
|
209
|
-
const result = resolveConfig(config, {});
|
|
210
|
-
expect(result.typeRoots).to.deep.equal([
|
|
211
|
-
"node_modules/@tsonic/dotnet-types/types",
|
|
212
|
-
]);
|
|
213
|
-
});
|
|
214
|
-
it("should use typeRoots from config.dotnet.typeRoots", () => {
|
|
215
|
-
const config = {
|
|
216
|
-
rootNamespace: "MyApp",
|
|
217
|
-
dotnet: {
|
|
218
|
-
typeRoots: ["custom/path/types", "another/path/types"],
|
|
219
|
-
},
|
|
220
|
-
};
|
|
221
|
-
const result = resolveConfig(config, {});
|
|
222
|
-
expect(result.typeRoots).to.deep.equal([
|
|
223
|
-
"custom/path/types",
|
|
224
|
-
"another/path/types",
|
|
225
|
-
]);
|
|
226
|
-
});
|
|
227
|
-
it("should handle all options together", () => {
|
|
228
|
-
const config = {
|
|
229
|
-
rootNamespace: "MyApp",
|
|
230
|
-
entryPoint: "src/index.ts",
|
|
231
|
-
sourceRoot: "src",
|
|
232
|
-
outputDirectory: "out",
|
|
233
|
-
outputName: "program",
|
|
234
|
-
rid: "linux-x64",
|
|
235
|
-
dotnetVersion: "net9.0",
|
|
236
|
-
optimize: "size",
|
|
237
|
-
packages: [{ name: "Package.Name", version: "1.0.0" }],
|
|
238
|
-
buildOptions: {
|
|
239
|
-
stripSymbols: false,
|
|
240
|
-
invariantGlobalization: false,
|
|
241
|
-
},
|
|
242
|
-
};
|
|
243
|
-
const cliOptions = {
|
|
244
|
-
namespace: "CLI.Override",
|
|
245
|
-
src: "source",
|
|
246
|
-
out: "binary",
|
|
247
|
-
rid: "win-x64",
|
|
248
|
-
optimize: "speed",
|
|
249
|
-
noStrip: true,
|
|
250
|
-
keepTemp: true,
|
|
251
|
-
verbose: true,
|
|
252
|
-
quiet: false,
|
|
253
|
-
};
|
|
254
|
-
const result = resolveConfig(config, cliOptions, "custom.ts");
|
|
255
|
-
expect(result.rootNamespace).to.equal("CLI.Override");
|
|
256
|
-
expect(result.entryPoint).to.equal("custom.ts");
|
|
257
|
-
expect(result.sourceRoot).to.equal("source");
|
|
258
|
-
expect(result.outputDirectory).to.equal("out");
|
|
259
|
-
expect(result.outputName).to.equal("binary");
|
|
260
|
-
expect(result.rid).to.equal("win-x64");
|
|
261
|
-
expect(result.dotnetVersion).to.equal("net9.0");
|
|
262
|
-
expect(result.optimize).to.equal("speed");
|
|
263
|
-
expect(result.packages).to.deep.equal([
|
|
264
|
-
{ name: "Package.Name", version: "1.0.0" },
|
|
265
|
-
]);
|
|
266
|
-
expect(result.stripSymbols).to.equal(false);
|
|
267
|
-
expect(result.invariantGlobalization).to.equal(false);
|
|
268
|
-
expect(result.keepTemp).to.equal(true);
|
|
269
|
-
expect(result.verbose).to.equal(true);
|
|
270
|
-
expect(result.quiet).to.equal(false);
|
|
271
|
-
});
|
|
272
|
-
});
|
|
273
|
-
});
|
|
274
|
-
//# sourceMappingURL=config.test.js.map
|
package/dist/config.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.test.js","sourceRoot":"","sources":["../src/config.test.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
DELETED
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG;AAiBH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
package/dist/index.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* Tsonic CLI - Command-line interface for Tsonic compiler
|
|
4
|
-
*/
|
|
5
|
-
import { runCli } from "./cli.js";
|
|
6
|
-
// Run CLI with arguments (skip node and script name)
|
|
7
|
-
const args = process.argv.slice(2);
|
|
8
|
-
runCli(args)
|
|
9
|
-
.then((exitCode) => {
|
|
10
|
-
process.exit(exitCode);
|
|
11
|
-
})
|
|
12
|
-
.catch((error) => {
|
|
13
|
-
console.error("Fatal error:", error);
|
|
14
|
-
process.exit(1);
|
|
15
|
-
});
|
|
16
|
-
// Export for testing
|
|
17
|
-
export { runCli } from "./cli.js";
|
|
18
|
-
export * from "./types.js";
|
|
19
|
-
export * from "./config.js";
|
|
20
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qDAAqD;AACrD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEnC,MAAM,CAAC,IAAI,CAAC;KACT,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;IACjB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,qBAAqB;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
package/dist/types.d.ts
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for CLI
|
|
3
|
-
*/
|
|
4
|
-
import type { NuGetPackage } from "@tsonic/backend";
|
|
5
|
-
/**
|
|
6
|
-
* Tsonic configuration file (tsonic.json)
|
|
7
|
-
*/
|
|
8
|
-
export type TsonicConfig = {
|
|
9
|
-
readonly $schema?: string;
|
|
10
|
-
readonly rootNamespace: string;
|
|
11
|
-
readonly entryPoint?: string;
|
|
12
|
-
readonly sourceRoot?: string;
|
|
13
|
-
readonly outputDirectory?: string;
|
|
14
|
-
readonly outputName?: string;
|
|
15
|
-
readonly rid?: string;
|
|
16
|
-
readonly dotnetVersion?: string;
|
|
17
|
-
readonly optimize?: "size" | "speed";
|
|
18
|
-
readonly packages?: readonly NuGetPackage[];
|
|
19
|
-
readonly buildOptions?: {
|
|
20
|
-
readonly stripSymbols?: boolean;
|
|
21
|
-
readonly invariantGlobalization?: boolean;
|
|
22
|
-
};
|
|
23
|
-
readonly dotnet?: {
|
|
24
|
-
readonly typeRoots?: readonly string[];
|
|
25
|
-
readonly packages?: readonly NuGetPackage[];
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* CLI command options (mutable for parsing)
|
|
30
|
-
*/
|
|
31
|
-
export type CliOptions = {
|
|
32
|
-
verbose?: boolean;
|
|
33
|
-
quiet?: boolean;
|
|
34
|
-
config?: string;
|
|
35
|
-
src?: string;
|
|
36
|
-
out?: string;
|
|
37
|
-
namespace?: string;
|
|
38
|
-
rid?: string;
|
|
39
|
-
optimize?: "size" | "speed";
|
|
40
|
-
keepTemp?: boolean;
|
|
41
|
-
noStrip?: boolean;
|
|
42
|
-
packages?: string;
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* Combined configuration (from file + CLI args)
|
|
46
|
-
*/
|
|
47
|
-
export type ResolvedConfig = {
|
|
48
|
-
readonly rootNamespace: string;
|
|
49
|
-
readonly entryPoint: string;
|
|
50
|
-
readonly sourceRoot: string;
|
|
51
|
-
readonly outputDirectory: string;
|
|
52
|
-
readonly outputName: string;
|
|
53
|
-
readonly rid: string;
|
|
54
|
-
readonly dotnetVersion: string;
|
|
55
|
-
readonly optimize: "size" | "speed";
|
|
56
|
-
readonly packages: readonly NuGetPackage[];
|
|
57
|
-
readonly stripSymbols: boolean;
|
|
58
|
-
readonly invariantGlobalization: boolean;
|
|
59
|
-
readonly keepTemp: boolean;
|
|
60
|
-
readonly verbose: boolean;
|
|
61
|
-
readonly quiet: boolean;
|
|
62
|
-
readonly typeRoots: readonly string[];
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* Result type for operations
|
|
66
|
-
*/
|
|
67
|
-
export type Result<T, E> = {
|
|
68
|
-
readonly ok: true;
|
|
69
|
-
readonly value: T;
|
|
70
|
-
} | {
|
|
71
|
-
readonly ok: false;
|
|
72
|
-
readonly error: E;
|
|
73
|
-
};
|
|
74
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
DELETED
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
package/src/cli/constants.ts
DELETED
package/src/cli/dispatcher.ts
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI command dispatcher
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { join } from "node:path";
|
|
6
|
-
import { checkDotnetInstalled } from "@tsonic/backend";
|
|
7
|
-
import { loadConfig, findConfig, resolveConfig } from "../config.js";
|
|
8
|
-
import { initProject } from "../commands/init.js";
|
|
9
|
-
import { emitCommand } from "../commands/emit.js";
|
|
10
|
-
import { buildCommand } from "../commands/build.js";
|
|
11
|
-
import { runCommand } from "../commands/run.js";
|
|
12
|
-
import { VERSION } from "./constants.js";
|
|
13
|
-
import { showHelp } from "./help.js";
|
|
14
|
-
import { parseArgs } from "./parser.js";
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Main CLI entry point
|
|
18
|
-
*/
|
|
19
|
-
export const runCli = async (args: string[]): Promise<number> => {
|
|
20
|
-
const parsed = parseArgs(args);
|
|
21
|
-
|
|
22
|
-
// Handle version and help
|
|
23
|
-
if (parsed.command === "version") {
|
|
24
|
-
console.log(`tsonic v${VERSION}`);
|
|
25
|
-
return 0;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
if (parsed.command === "help" || !parsed.command) {
|
|
29
|
-
showHelp();
|
|
30
|
-
return 0;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
// Handle project init (doesn't need config)
|
|
34
|
-
if (parsed.command === "project:init") {
|
|
35
|
-
const result = initProject(process.cwd());
|
|
36
|
-
if (!result.ok) {
|
|
37
|
-
console.error(`Error: ${result.error}`);
|
|
38
|
-
return 1;
|
|
39
|
-
}
|
|
40
|
-
console.log("✓ Initialized Tsonic project");
|
|
41
|
-
console.log(" Created: tsonic.json");
|
|
42
|
-
console.log(" Created/Updated: .gitignore");
|
|
43
|
-
console.log("\nNext steps:");
|
|
44
|
-
console.log(" 1. Edit tsonic.json to configure your project");
|
|
45
|
-
console.log(" 2. Create src/main.ts");
|
|
46
|
-
console.log(" 3. Run: tsonic build");
|
|
47
|
-
return 0;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// Check for dotnet
|
|
51
|
-
const dotnetResult = checkDotnetInstalled();
|
|
52
|
-
if (!dotnetResult.ok) {
|
|
53
|
-
console.error("Error: .NET SDK not found");
|
|
54
|
-
console.error("Install from: https://dotnet.microsoft.com/download");
|
|
55
|
-
return 8;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// Load config
|
|
59
|
-
const configPath = parsed.options.config
|
|
60
|
-
? join(process.cwd(), parsed.options.config)
|
|
61
|
-
: findConfig(process.cwd());
|
|
62
|
-
|
|
63
|
-
if (!configPath) {
|
|
64
|
-
console.error("Error: No tsonic.json found");
|
|
65
|
-
console.error("Run 'tsonic project init' to initialize a project");
|
|
66
|
-
return 3;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const configResult = loadConfig(configPath);
|
|
70
|
-
if (!configResult.ok) {
|
|
71
|
-
console.error(`Error: ${configResult.error}`);
|
|
72
|
-
return 1;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
const config = resolveConfig(
|
|
76
|
-
configResult.value,
|
|
77
|
-
parsed.options,
|
|
78
|
-
parsed.entryFile
|
|
79
|
-
);
|
|
80
|
-
|
|
81
|
-
// Dispatch to command handlers
|
|
82
|
-
switch (parsed.command) {
|
|
83
|
-
case "emit": {
|
|
84
|
-
const result = emitCommand(config);
|
|
85
|
-
if (!result.ok) {
|
|
86
|
-
console.error(`Error: ${result.error}`);
|
|
87
|
-
return 5;
|
|
88
|
-
}
|
|
89
|
-
return 0;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
case "build": {
|
|
93
|
-
const result = buildCommand(config);
|
|
94
|
-
if (!result.ok) {
|
|
95
|
-
console.error(`Error: ${result.error}`);
|
|
96
|
-
return 6;
|
|
97
|
-
}
|
|
98
|
-
return 0;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
case "run": {
|
|
102
|
-
const result = runCommand(config, parsed.programArgs ?? []);
|
|
103
|
-
if (!result.ok) {
|
|
104
|
-
console.error(`Error: ${result.error}`);
|
|
105
|
-
return 7;
|
|
106
|
-
}
|
|
107
|
-
return result.value.exitCode;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
default:
|
|
111
|
-
console.error(`Error: Unknown command '${parsed.command}'`);
|
|
112
|
-
console.error("Run 'tsonic --help' for usage information");
|
|
113
|
-
return 2;
|
|
114
|
-
}
|
|
115
|
-
};
|
package/src/cli/help.ts
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI help message
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { VERSION } from "./constants.js";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Show help message
|
|
9
|
-
*/
|
|
10
|
-
export const showHelp = (): void => {
|
|
11
|
-
console.log(`
|
|
12
|
-
Tsonic - TypeScript to C# to NativeAOT compiler v${VERSION}
|
|
13
|
-
|
|
14
|
-
USAGE:
|
|
15
|
-
tsonic <command> [options]
|
|
16
|
-
|
|
17
|
-
COMMANDS:
|
|
18
|
-
project init Initialize a new Tsonic project
|
|
19
|
-
emit [entry] Generate C# code only
|
|
20
|
-
build [entry] Build native executable
|
|
21
|
-
run [entry] [-- args...] Build and run executable
|
|
22
|
-
|
|
23
|
-
GLOBAL OPTIONS:
|
|
24
|
-
-h, --help Show help
|
|
25
|
-
-v, --version Show version
|
|
26
|
-
-V, --verbose Verbose output
|
|
27
|
-
-q, --quiet Suppress output
|
|
28
|
-
-c, --config <file> Config file path (default: tsonic.json)
|
|
29
|
-
|
|
30
|
-
EMIT/BUILD/RUN OPTIONS:
|
|
31
|
-
-s, --src <dir> Source root directory
|
|
32
|
-
-o, --out <path> Output directory (emit) or file (build)
|
|
33
|
-
-n, --namespace <ns> Root namespace override
|
|
34
|
-
-r, --rid <rid> Runtime identifier (e.g., linux-x64)
|
|
35
|
-
-O, --optimize <level> Optimization: size or speed
|
|
36
|
-
-k, --keep-temp Keep build artifacts
|
|
37
|
-
--no-strip Keep debug symbols
|
|
38
|
-
|
|
39
|
-
EXAMPLES:
|
|
40
|
-
tsonic project init
|
|
41
|
-
tsonic emit src/main.ts
|
|
42
|
-
tsonic build src/main.ts --rid linux-x64
|
|
43
|
-
tsonic run src/main.ts -- --arg1 value1
|
|
44
|
-
|
|
45
|
-
LEARN MORE:
|
|
46
|
-
Documentation: https://tsonic.dev/docs
|
|
47
|
-
GitHub: https://github.com/tsoniclang/tsonic
|
|
48
|
-
`);
|
|
49
|
-
};
|