@typespec/compiler 1.15.0-dev.5 → 1.15.0-dev.6
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/manifest.js +2 -2
- package/dist/src/core/cli/actions/init.d.ts +0 -2
- package/dist/src/core/cli/actions/init.d.ts.map +1 -1
- package/dist/src/core/cli/actions/init.js.map +1 -1
- package/dist/src/core/cli/cli.d.ts +1 -15
- package/dist/src/core/cli/cli.d.ts.map +1 -1
- package/dist/src/core/cli/cli.js +12 -38
- package/dist/src/core/cli/cli.js.map +1 -1
- package/dist/src/core/cli/utils.d.ts +4 -4
- package/dist/src/core/cli/utils.d.ts.map +1 -1
- package/dist/src/core/cli/utils.js +6 -6
- package/dist/src/core/cli/utils.js.map +1 -1
- package/dist/src/core/file-ref.d.ts +26 -0
- package/dist/src/core/file-ref.d.ts.map +1 -0
- package/dist/src/core/file-ref.js +19 -0
- package/dist/src/core/file-ref.js.map +1 -0
- package/dist/src/core/types.d.ts +13 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/init/core-templates.d.ts +2 -2
- package/dist/src/init/core-templates.d.ts.map +1 -1
- package/dist/src/init/core-templates.js +2 -2
- package/dist/src/init/core-templates.js.map +1 -1
- package/dist/src/init/init.d.ts +4 -4
- package/dist/src/init/init.d.ts.map +1 -1
- package/dist/src/init/init.js +8 -10
- package/dist/src/init/init.js.map +1 -1
- package/dist/src/init/template-source/default-core-templates.d.ts +9 -0
- package/dist/src/init/template-source/default-core-templates.d.ts.map +1 -0
- package/dist/src/init/template-source/default-core-templates.js +12 -0
- package/dist/src/init/template-source/default-core-templates.js.map +1 -0
- package/dist/src/init/template-source/in-memory-template-source.d.ts +8 -10
- package/dist/src/init/template-source/in-memory-template-source.d.ts.map +1 -1
- package/dist/src/init/template-source/in-memory-template-source.js +22 -19
- package/dist/src/init/template-source/in-memory-template-source.js.map +1 -1
- package/dist/src/init/template-source/index.d.ts +2 -3
- package/dist/src/init/template-source/index.d.ts.map +1 -1
- package/dist/src/init/template-source/index.js +2 -3
- package/dist/src/init/template-source/index.js.map +1 -1
- package/dist/src/init/template-source/types.d.ts +3 -12
- package/dist/src/init/template-source/types.d.ts.map +1 -1
- package/dist/src/init/template-source/uri-template-source.d.ts +30 -0
- package/dist/src/init/template-source/uri-template-source.d.ts.map +1 -0
- package/dist/src/init/template-source/uri-template-source.js +45 -0
- package/dist/src/init/template-source/uri-template-source.js.map +1 -0
- package/dist/src/internals/index.d.ts +1 -1
- package/dist/src/internals/index.d.ts.map +1 -1
- package/dist/src/internals/index.js +1 -3
- package/dist/src/internals/index.js.map +1 -1
- package/entrypoints/cli.js +1 -3
- package/package.json +2 -6
- package/dist/src/init/template-source/file-system-template-source.d.ts +0 -12
- package/dist/src/init/template-source/file-system-template-source.d.ts.map +0 -1
- package/dist/src/init/template-source/file-system-template-source.js +0 -15
- package/dist/src/init/template-source/file-system-template-source.js.map +0 -1
- package/dist/src/init/template-source/host-template-source.d.ts +0 -34
- package/dist/src/init/template-source/host-template-source.d.ts.map +0 -1
- package/dist/src/init/template-source/host-template-source.js +0 -48
- package/dist/src/init/template-source/host-template-source.js.map +0 -1
- package/dist/src/init/template-source/remote-template-source.d.ts +0 -13
- package/dist/src/init/template-source/remote-template-source.d.ts.map +0 -1
- package/dist/src/init/template-source/remote-template-source.js +0 -14
- package/dist/src/init/template-source/remote-template-source.js.map +0 -1
- package/dist/src/internals/standalone.d.ts +0 -15
- package/dist/src/internals/standalone.d.ts.map +0 -1
- package/dist/src/internals/standalone.js +0 -14
- package/dist/src/internals/standalone.js.map +0 -1
package/dist/manifest.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { TemplateSource } from "../../../init/template-source/index.js";
|
|
2
1
|
import { Diagnostic } from "../../types.js";
|
|
3
2
|
import { CliCompilerHost } from "../types.js";
|
|
4
3
|
export interface InitArgs {
|
|
@@ -9,7 +8,6 @@ export interface InitArgs {
|
|
|
9
8
|
"project-name"?: string;
|
|
10
9
|
emitters?: string[];
|
|
11
10
|
outputDir?: string;
|
|
12
|
-
coreTemplateSource?: TemplateSource;
|
|
13
11
|
}
|
|
14
12
|
export declare function initAction(host: CliCompilerHost, args: InitArgs): Promise<readonly Diagnostic[]>;
|
|
15
13
|
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/init.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,QAAQ;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,QAAQ,GACb,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CAYhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAclD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAqB,EACrB,IAAc;IAEd,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACpF,MAAM,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACjD,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,iBAAiB,EAAE,CAAC;YACnC,OAAO,CAAC,CAAC,WAAW,CAAC;QACvB,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
|
|
@@ -1,16 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { CompilerHost } from "../types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Run the TypeSpec CLI (`tsp`).
|
|
5
|
-
*
|
|
6
|
-
* @param options.baseHost {@link CompilerHost} that every CLI action's host is composed from.
|
|
7
|
-
* Defaults to the real file-system {@link NodeHost}.
|
|
8
|
-
* @param options.coreTemplateSource Source for the built-in `tsp init` templates. Defaults to
|
|
9
|
-
* reading the compiler's `templates/` directory off disk. The standalone/self-contained CLI passes
|
|
10
|
-
* an in-memory source built from its bundled template assets.
|
|
11
|
-
*/
|
|
12
|
-
export declare function runTypeSpecCli(options?: {
|
|
13
|
-
baseHost?: CompilerHost;
|
|
14
|
-
coreTemplateSource?: TemplateSource;
|
|
15
|
-
}): Promise<void>;
|
|
1
|
+
export {};
|
|
16
2
|
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":""}
|
package/dist/src/core/cli/cli.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
process.setSourceMapsEnabled(true);
|
|
1
2
|
import yargs from "yargs";
|
|
2
3
|
import { installTypeSpecDependencies } from "../../install/install.js";
|
|
3
4
|
import { typespecVersion } from "../../manifest.js";
|
|
4
5
|
import { logDiagnostics } from "../diagnostics.js";
|
|
5
6
|
import { getTypeSpecEngine } from "../engine.js";
|
|
6
|
-
import { NodeHost } from "../node-host.js";
|
|
7
7
|
import { compileAction } from "./actions/compile/compile.js";
|
|
8
8
|
import { formatAction } from "./actions/format.js";
|
|
9
9
|
import { printInfoAction } from "./actions/info.js";
|
|
@@ -11,12 +11,12 @@ import { printEmitterOptionsAction } from "./actions/info/emitter-options.js";
|
|
|
11
11
|
import { initAction } from "./actions/init.js";
|
|
12
12
|
import { installVSExtension, uninstallVSExtension } from "./actions/vs.js";
|
|
13
13
|
import { installVSCodeExtension, uninstallVSCodeExtension, } from "./actions/vscode.js";
|
|
14
|
-
import { createCLICompilerHost, handleInternalCompilerError, logDiagnosticCount,
|
|
14
|
+
import { createCLICompilerHost, handleInternalCompilerError, logDiagnosticCount, withCliHost, withCliHostAndDiagnostics, } from "./utils.js";
|
|
15
15
|
/**
|
|
16
16
|
* Intercept `tsp compile --emit <emitter> --help` to display emitter options.
|
|
17
17
|
* Returns true if the interception was handled.
|
|
18
18
|
*/
|
|
19
|
-
async function handleCompileEmitHelp(argv
|
|
19
|
+
async function handleCompileEmitHelp(argv) {
|
|
20
20
|
if (argv[0] !== "compile" || !argv.includes("--help")) {
|
|
21
21
|
return false;
|
|
22
22
|
}
|
|
@@ -28,7 +28,7 @@ async function handleCompileEmitHelp(argv, baseHost) {
|
|
|
28
28
|
if (!emitterName || emitterName.startsWith("-")) {
|
|
29
29
|
return false;
|
|
30
30
|
}
|
|
31
|
-
const host = createCLICompilerHost({ pretty: true }
|
|
31
|
+
const host = createCLICompilerHost({ pretty: true });
|
|
32
32
|
const diagnostics = await printEmitterOptionsAction(host, emitterName);
|
|
33
33
|
if (diagnostics.length > 0) {
|
|
34
34
|
logDiagnostics(diagnostics, host.logSink);
|
|
@@ -39,41 +39,10 @@ async function handleCompileEmitHelp(argv, baseHost) {
|
|
|
39
39
|
}
|
|
40
40
|
return true;
|
|
41
41
|
}
|
|
42
|
-
|
|
43
|
-
* Run the TypeSpec CLI (`tsp`).
|
|
44
|
-
*
|
|
45
|
-
* @param options.baseHost {@link CompilerHost} that every CLI action's host is composed from.
|
|
46
|
-
* Defaults to the real file-system {@link NodeHost}.
|
|
47
|
-
* @param options.coreTemplateSource Source for the built-in `tsp init` templates. Defaults to
|
|
48
|
-
* reading the compiler's `templates/` directory off disk. The standalone/self-contained CLI passes
|
|
49
|
-
* an in-memory source built from its bundled template assets.
|
|
50
|
-
*/
|
|
51
|
-
export async function runTypeSpecCli(options = {}) {
|
|
52
|
-
process.setSourceMapsEnabled(true);
|
|
53
|
-
const baseHost = options.baseHost ?? NodeHost;
|
|
54
|
-
process.on("unhandledRejection", (error) => {
|
|
55
|
-
// eslint-disable-next-line no-console
|
|
56
|
-
console.error("Unhandled promise rejection!");
|
|
57
|
-
handleInternalCompilerError(error);
|
|
58
|
-
});
|
|
59
|
-
// Route any error that escapes the command handlers (e.g. yargs parsing or `--emit --help`) to the
|
|
60
|
-
// internal-error reporter, so callers can `await runTypeSpecCli()` without their own catch.
|
|
61
|
-
try {
|
|
62
|
-
await runCli(baseHost, options.coreTemplateSource);
|
|
63
|
-
}
|
|
64
|
-
catch (error) {
|
|
65
|
-
handleInternalCompilerError(error);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Build and run the `tsp` command line, composing every action's host from `baseHost`.
|
|
70
|
-
*/
|
|
71
|
-
async function runCli(baseHost, coreTemplateSource) {
|
|
72
|
-
const withCliHost = (fn) => withCliHostBase(baseHost, fn);
|
|
73
|
-
const withCliHostAndDiagnostics = (fn) => withCliHostAndDiagnosticsBase(baseHost, fn);
|
|
42
|
+
async function main() {
|
|
74
43
|
const argv = process.argv.slice(2);
|
|
75
44
|
// Handle `tsp compile --emit <emitter> --help` early before yargs intercepts --help
|
|
76
|
-
if (await handleCompileEmitHelp(argv
|
|
45
|
+
if (await handleCompileEmitHelp(argv)) {
|
|
77
46
|
return;
|
|
78
47
|
}
|
|
79
48
|
await yargs(argv)
|
|
@@ -248,7 +217,6 @@ async function runCli(baseHost, coreTemplateSource) {
|
|
|
248
217
|
...args,
|
|
249
218
|
emitters: args["template-emitters"],
|
|
250
219
|
outputDir: args["output-dir"],
|
|
251
|
-
coreTemplateSource,
|
|
252
220
|
})))
|
|
253
221
|
.command("install", "Install TypeSpec dependencies", (cmd) => cmd.option("save-package-manager", {
|
|
254
222
|
type: "boolean",
|
|
@@ -266,4 +234,10 @@ async function runCli(baseHost, coreTemplateSource) {
|
|
|
266
234
|
.version(getTypeSpecEngine() === "tsp" ? `${typespecVersion} standalone` : typespecVersion)
|
|
267
235
|
.demandCommand(1, "You must use one of the supported commands.").argv;
|
|
268
236
|
}
|
|
237
|
+
process.on("unhandledRejection", (error) => {
|
|
238
|
+
// eslint-disable-next-line no-console
|
|
239
|
+
console.error("Unhandled promise rejection!");
|
|
240
|
+
handleInternalCompilerError(error);
|
|
241
|
+
});
|
|
242
|
+
main().catch(handleInternalCompilerError);
|
|
269
243
|
//# sourceMappingURL=cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SpawnSyncOptionsWithStringEncoding } from "child_process";
|
|
2
|
-
import {
|
|
2
|
+
import { Diagnostic } from "../types.js";
|
|
3
3
|
import { CliCompilerHost } from "./types.js";
|
|
4
4
|
/**
|
|
5
5
|
* Emit the `cli-command-deprecated` warning for a deprecated CLI command.
|
|
@@ -19,12 +19,12 @@ export interface CliHostArgs {
|
|
|
19
19
|
debug?: boolean;
|
|
20
20
|
trace?: string[];
|
|
21
21
|
}
|
|
22
|
-
export declare function withCliHost<T extends CliHostArgs>(
|
|
22
|
+
export declare function withCliHost<T extends CliHostArgs>(fn: (host: CliCompilerHost, args: T) => Promise<void>): (args: T) => Promise<void>;
|
|
23
23
|
/**
|
|
24
24
|
* Resolve Cli host automatically using cli args and handle diagnostics returned by the action.
|
|
25
25
|
*/
|
|
26
|
-
export declare function withCliHostAndDiagnostics<T extends CliHostArgs>(
|
|
27
|
-
export declare function createCLICompilerHost(options: CliHostArgs
|
|
26
|
+
export declare function withCliHostAndDiagnostics<T extends CliHostArgs>(fn: (host: CliCompilerHost, args: T) => readonly Diagnostic[] | Promise<readonly Diagnostic[]>): (args: T) => void | Promise<void>;
|
|
27
|
+
export declare function createCLICompilerHost(options: CliHostArgs): CliCompilerHost;
|
|
28
28
|
export declare function run(host: CliCompilerHost, command: string, commandArgs: string[], options?: RunOptions): import("node:child_process").SpawnSyncReturns<string>;
|
|
29
29
|
export declare function logDiagnosticCount(diagnostics: readonly Diagnostic[]): void;
|
|
30
30
|
export declare function logInternalCompilerError(error: unknown): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAa,MAAM,eAAe,CAAC;AAW9E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAa,MAAM,eAAe,CAAC;AAW9E,OAAO,EAAE,UAAU,EAAY,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAK7C;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,IAAI,CAON;AAED,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,kCAAkC,CAAC;IAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAC/C,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GACpD,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAK5B;AAcD;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,WAAW,EAC7D,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,KAAK,SAAS,UAAU,EAAE,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,GAC7F,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAUnC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAY3E;AAED,wBAAgB,GAAG,CACjB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,CAAC,EAAE,UAAU,yDA6DrB;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,QAcpE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,QAYtD;AACD;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAGjE;AAMD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYjF"}
|
|
@@ -26,9 +26,9 @@ export function reportDeprecatedCommand(host, command, docsUrl) {
|
|
|
26
26
|
});
|
|
27
27
|
host.logger.warn(diagnostic.message);
|
|
28
28
|
}
|
|
29
|
-
export function withCliHost(
|
|
29
|
+
export function withCliHost(fn) {
|
|
30
30
|
return withFailsafe((args) => {
|
|
31
|
-
const host = createCLICompilerHost(args
|
|
31
|
+
const host = createCLICompilerHost(args);
|
|
32
32
|
return fn(host, args);
|
|
33
33
|
});
|
|
34
34
|
}
|
|
@@ -45,9 +45,9 @@ function withFailsafe(fn) {
|
|
|
45
45
|
/**
|
|
46
46
|
* Resolve Cli host automatically using cli args and handle diagnostics returned by the action.
|
|
47
47
|
*/
|
|
48
|
-
export function withCliHostAndDiagnostics(
|
|
48
|
+
export function withCliHostAndDiagnostics(fn) {
|
|
49
49
|
return withFailsafe(async (args) => {
|
|
50
|
-
const host = createCLICompilerHost(args
|
|
50
|
+
const host = createCLICompilerHost(args);
|
|
51
51
|
const diagnostics = await fn(host, args);
|
|
52
52
|
logDiagnostics(diagnostics, host.logSink);
|
|
53
53
|
logDiagnosticCount(diagnostics);
|
|
@@ -56,7 +56,7 @@ export function withCliHostAndDiagnostics(baseHost, fn) {
|
|
|
56
56
|
}
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
|
-
export function createCLICompilerHost(options
|
|
59
|
+
export function createCLICompilerHost(options) {
|
|
60
60
|
const logSink = createConsoleSink({
|
|
61
61
|
pretty: options.pretty,
|
|
62
62
|
pathRelativeTo: process.cwd(),
|
|
@@ -67,7 +67,7 @@ export function createCLICompilerHost(options, baseHost = NodeHost) {
|
|
|
67
67
|
filter: options.trace ?? (options.debug ? ["*"] : undefined),
|
|
68
68
|
});
|
|
69
69
|
tracer.trace("cli.args", `CLI args: ${inspect(options, { depth: null })}`);
|
|
70
|
-
return { ...
|
|
70
|
+
return { ...NodeHost, logSink, logger, tracer, debug: options.debug ?? false };
|
|
71
71
|
}
|
|
72
72
|
export function run(host, command, commandArgs, options) {
|
|
73
73
|
const logger = host.logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,SAAS,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAU,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A lazy reference to a file on disk. Unlike embedding the file content directly, a
|
|
3
|
+
* `FileRef` only describes *where* the content lives; it is resolved (read) by tooling
|
|
4
|
+
* such as `tspd` when needed. Because it does not read the file at definition time, it is
|
|
5
|
+
* safe to include in code that is bundled for the browser (e.g. the playground).
|
|
6
|
+
*/
|
|
7
|
+
export interface FileRef {
|
|
8
|
+
readonly kind: "file-ref";
|
|
9
|
+
/** Path to the file, relative to the package root. */
|
|
10
|
+
readonly path: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const fileRef: {
|
|
13
|
+
/**
|
|
14
|
+
* Create a {@link FileRef} pointing to a file relative to the package root (the directory
|
|
15
|
+
* containing the library's `package.json`).
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* docs: fileRef.fromPackageRoot("src/rules/my-rule.md"),
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
fromPackageRoot(path: string): FileRef;
|
|
23
|
+
};
|
|
24
|
+
/** Type guard for {@link FileRef}. */
|
|
25
|
+
export declare function isFileRef(value: unknown): value is FileRef;
|
|
26
|
+
//# sourceMappingURL=file-ref.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-ref.d.ts","sourceRoot":"","sources":["../../../src/core/file-ref.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,OAAO;IAClB;;;;;;;;OAQG;0BACmB,MAAM,GAAG,OAAO;CAGvC,CAAC;AAEF,sCAAsC;AACtC,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAE1D"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export const fileRef = {
|
|
2
|
+
/**
|
|
3
|
+
* Create a {@link FileRef} pointing to a file relative to the package root (the directory
|
|
4
|
+
* containing the library's `package.json`).
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* docs: fileRef.fromPackageRoot("src/rules/my-rule.md"),
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
fromPackageRoot(path) {
|
|
12
|
+
return { kind: "file-ref", path };
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
/** Type guard for {@link FileRef}. */
|
|
16
|
+
export function isFileRef(value) {
|
|
17
|
+
return typeof value === "object" && value !== null && value.kind === "file-ref";
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=file-ref.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-ref.js","sourceRoot":"","sources":["../../../src/core/file-ref.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAY;QAC1B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACpC,CAAC;CACF,CAAC;AAEF,sCAAsC;AACtC,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAK,KAAiB,CAAC,IAAI,KAAK,UAAU,CAAC;AAC/F,CAAC"}
|
package/dist/src/core/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { JSONSchemaType as AjvJSONSchemaType } from "ajv";
|
|
2
2
|
import type { ModuleResolutionResult } from "../module-resolver/index.js";
|
|
3
|
+
import type { FileRef } from "./file-ref.js";
|
|
3
4
|
import type { Numeric } from "./numeric.js";
|
|
4
5
|
import type { Program } from "./program.js";
|
|
5
6
|
export type MarshalledValue<Value> = Value extends StringValue ? string : Value extends NumericValue ? number | Numeric : Value extends BooleanValue ? boolean : Value extends ObjectValue ? Record<string, unknown> : Value extends ArrayValue ? unknown[] : Value extends EnumValue ? EnumMember : Value extends NullValue ? null : Value extends ScalarValue ? Value : Value;
|
|
@@ -1778,6 +1779,12 @@ export interface DiagnosticDefinition<M extends DiagnosticMessages> {
|
|
|
1778
1779
|
readonly description?: string;
|
|
1779
1780
|
/** Specifies the URL at which the full documentation can be accessed. */
|
|
1780
1781
|
readonly url?: string;
|
|
1782
|
+
/**
|
|
1783
|
+
* Extended documentation for this diagnostic. Surfaced both in generated reference
|
|
1784
|
+
* documentation and in editor tooling (e.g. completion and hover). Either raw markdown,
|
|
1785
|
+
* or a {@link FileRef} pointing to a markdown file (recommended).
|
|
1786
|
+
*/
|
|
1787
|
+
readonly docs?: string | FileRef;
|
|
1781
1788
|
}
|
|
1782
1789
|
export interface DiagnosticMessages {
|
|
1783
1790
|
readonly [messageId: string]: string | CallableMessage<string[]>;
|
|
@@ -1881,6 +1888,12 @@ interface LinterRuleDefinitionBase<N extends string, DM extends DiagnosticMessag
|
|
|
1881
1888
|
description: string;
|
|
1882
1889
|
/** Specifies the URL at which the full documentation can be accessed. */
|
|
1883
1890
|
url?: string;
|
|
1891
|
+
/**
|
|
1892
|
+
* Extended documentation for this rule. Surfaced both in generated reference
|
|
1893
|
+
* documentation and in editor tooling (e.g. completion and hover). Either raw markdown,
|
|
1894
|
+
* or a {@link FileRef} pointing to a markdown file (recommended).
|
|
1895
|
+
*/
|
|
1896
|
+
docs?: string | FileRef;
|
|
1884
1897
|
/** Messages that can be reported with the diagnostic. */
|
|
1885
1898
|
messages: DM;
|
|
1886
1899
|
/**
|