@typespec/compiler 1.14.0-dev.2 → 1.14.0-dev.20
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/generated-defs/TypeSpec.d.ts +10 -1
- package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
- package/dist/manifest.js +2 -2
- package/dist/src/core/auto-decorator.d.ts +38 -0
- package/dist/src/core/auto-decorator.d.ts.map +1 -0
- package/dist/src/core/auto-decorator.js +99 -0
- package/dist/src/core/auto-decorator.js.map +1 -0
- package/dist/src/core/checker.d.ts.map +1 -1
- package/dist/src/core/checker.js +46 -25
- package/dist/src/core/checker.js.map +1 -1
- package/dist/src/core/cli/actions/vs.d.ts.map +1 -1
- package/dist/src/core/cli/actions/vs.js +21 -10
- package/dist/src/core/cli/actions/vs.js.map +1 -1
- package/dist/src/core/cli/actions/vscode.d.ts.map +1 -1
- package/dist/src/core/cli/actions/vscode.js +9 -4
- package/dist/src/core/cli/actions/vscode.js.map +1 -1
- package/dist/src/core/cli/cli.js +4 -4
- package/dist/src/core/cli/cli.js.map +1 -1
- package/dist/src/core/cli/download-vsix.d.ts +19 -0
- package/dist/src/core/cli/download-vsix.d.ts.map +1 -0
- package/dist/src/core/cli/download-vsix.js +76 -0
- package/dist/src/core/cli/download-vsix.js.map +1 -0
- package/dist/src/core/cli/utils.d.ts +7 -0
- package/dist/src/core/cli/utils.d.ts.map +1 -1
- package/dist/src/core/cli/utils.js +16 -0
- package/dist/src/core/cli/utils.js.map +1 -1
- package/dist/src/core/diagnostics.d.ts +3 -3
- package/dist/src/core/diagnostics.d.ts.map +1 -1
- package/dist/src/core/diagnostics.js +34 -3
- package/dist/src/core/diagnostics.js.map +1 -1
- package/dist/src/core/entrypoint-resolution.d.ts.map +1 -1
- package/dist/src/core/entrypoint-resolution.js +5 -4
- package/dist/src/core/entrypoint-resolution.js.map +1 -1
- package/dist/src/core/features.d.ts +3 -0
- package/dist/src/core/features.d.ts.map +1 -1
- package/dist/src/core/features.js +18 -5
- package/dist/src/core/features.js.map +1 -1
- package/dist/src/core/messages.d.ts +89 -7
- package/dist/src/core/messages.d.ts.map +1 -1
- package/dist/src/core/messages.js +27 -1
- package/dist/src/core/messages.js.map +1 -1
- package/dist/src/core/modifiers.d.ts.map +1 -1
- package/dist/src/core/modifiers.js +42 -8
- package/dist/src/core/modifiers.js.map +1 -1
- package/dist/src/core/parser.d.ts.map +1 -1
- package/dist/src/core/parser.js +13 -0
- package/dist/src/core/parser.js.map +1 -1
- package/dist/src/core/program.d.ts.map +1 -1
- package/dist/src/core/program.js +6 -1
- package/dist/src/core/program.js.map +1 -1
- package/dist/src/core/scanner.d.ts +41 -41
- package/dist/src/core/scanner.d.ts.map +1 -1
- package/dist/src/core/scanner.js +46 -47
- package/dist/src/core/scanner.js.map +1 -1
- package/dist/src/core/source-file.js +1 -1
- package/dist/src/core/source-file.js.map +1 -1
- package/dist/src/core/source-loader.d.ts.map +1 -1
- package/dist/src/core/source-loader.js +23 -0
- package/dist/src/core/source-loader.js.map +1 -1
- package/dist/src/core/suppression-tracking.d.ts +4 -0
- package/dist/src/core/suppression-tracking.d.ts.map +1 -1
- package/dist/src/core/suppression-tracking.js +25 -0
- package/dist/src/core/suppression-tracking.js.map +1 -1
- package/dist/src/core/types.d.ts +16 -3
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js +2 -1
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/experimental/mutators.d.ts.map +1 -1
- package/dist/src/experimental/mutators.js +32 -8
- package/dist/src/experimental/mutators.js.map +1 -1
- package/dist/src/formatter/print/printer.d.ts.map +1 -1
- package/dist/src/formatter/print/printer.js +31 -6
- package/dist/src/formatter/print/printer.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/lib/decorators.d.ts +3 -1
- package/dist/src/lib/decorators.d.ts.map +1 -1
- package/dist/src/lib/decorators.js +1 -1
- package/dist/src/lib/decorators.js.map +1 -1
- package/dist/src/server/client-config-provider.d.ts +1 -1
- package/dist/src/server/client-config-provider.d.ts.map +1 -1
- package/dist/src/server/diagnostics.d.ts.map +1 -1
- package/dist/src/server/diagnostics.js +1 -1
- package/dist/src/server/diagnostics.js.map +1 -1
- package/dist/src/server/server.js +1 -1
- package/dist/src/server/server.js.map +1 -1
- package/dist/src/server/serverlib.js +1 -1
- package/dist/src/server/serverlib.js.map +1 -1
- package/dist/src/server/tspconfig/completion.d.ts +1 -1
- package/dist/src/server/tspconfig/completion.d.ts.map +1 -1
- package/dist/src/server/tspconfig/completion.js +1 -1
- package/dist/src/server/tspconfig/completion.js.map +1 -1
- package/dist/src/testing/code-fix-testing.d.ts.map +1 -1
- package/dist/src/testing/code-fix-testing.js +2 -0
- package/dist/src/testing/code-fix-testing.js.map +1 -1
- package/dist/src/testing/fs.js +1 -0
- package/dist/src/testing/fs.js.map +1 -1
- package/dist/src/testing/index.d.ts +2 -1
- package/dist/src/testing/index.d.ts.map +1 -1
- package/dist/src/testing/index.js +3 -0
- package/dist/src/testing/index.js.map +1 -1
- package/dist/src/testing/rule-tester.d.ts.map +1 -1
- package/dist/src/testing/rule-tester.js +4 -1
- package/dist/src/testing/rule-tester.js.map +1 -1
- package/dist/src/testing/test-compiler-host.d.ts.map +1 -1
- package/dist/src/testing/test-compiler-host.js +5 -0
- package/dist/src/testing/test-compiler-host.js.map +1 -1
- package/dist/src/testing/test-host.d.ts +2 -2
- package/dist/src/testing/test-host.d.ts.map +1 -1
- package/dist/src/testing/test-host.js +4 -2
- package/dist/src/testing/test-host.js.map +1 -1
- package/dist/src/testing/test-server-host.d.ts +1 -1
- package/dist/src/testing/test-server-host.d.ts.map +1 -1
- package/dist/src/testing/test-server-host.js +1 -1
- package/dist/src/testing/test-server-host.js.map +1 -1
- package/dist/src/testing/test-utils.d.ts +6 -1
- package/dist/src/testing/test-utils.d.ts.map +1 -1
- package/dist/src/testing/test-utils.js +8 -1
- package/dist/src/testing/test-utils.js.map +1 -1
- package/dist/src/testing/tester.d.ts.map +1 -1
- package/dist/src/testing/tester.js +10 -0
- package/dist/src/testing/tester.js.map +1 -1
- package/dist/src/testing/types.d.ts +7 -0
- package/dist/src/testing/types.d.ts.map +1 -1
- package/dist/src/testing/types.js +2 -0
- package/dist/src/testing/types.js.map +1 -1
- package/lib/std/decorators.tsp +11 -1
- package/package.json +8 -8
- package/templates/scaffolding.json +0 -8
- package/dist/src/core/cli/install-vsix.d.ts +0 -3
- package/dist/src/core/cli/install-vsix.d.ts.map +0 -1
- package/dist/src/core/cli/install-vsix.js +0 -41
- package/dist/src/core/cli/install-vsix.js.map +0 -1
- package/templates/__snapshots__/emitter-ts/src/testing/index.ts +0 -8
- package/templates/__snapshots__/library-ts/src/testing/index.ts +0 -8
- package/templates/emitter-ts/src/testing/index.ts.mu +0 -8
- package/templates/library-ts/src/testing/index.ts.mu +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vs.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAY,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"vs.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAY,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAkB9C,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CA6B9F;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CAUhG"}
|
|
@@ -2,13 +2,22 @@ import { createDiagnosticCollector } from "../../diagnostics.js";
|
|
|
2
2
|
import { createDiagnostic } from "../../messages.js";
|
|
3
3
|
import { joinPaths } from "../../path-utils.js";
|
|
4
4
|
import { NoTarget } from "../../types.js";
|
|
5
|
-
import {
|
|
6
|
-
import { run } from "../utils.js";
|
|
5
|
+
import { downloadVsixFromMarketplace } from "../download-vsix.js";
|
|
6
|
+
import { reportDeprecatedCommand, run } from "../utils.js";
|
|
7
7
|
const VSIX_ALREADY_INSTALLED = 1001;
|
|
8
8
|
const VSIX_NOT_INSTALLED = 1002;
|
|
9
9
|
const VSIX_USER_CANCELED = 2005;
|
|
10
10
|
const VS_SUPPORTED_VERSION_RANGE = "[17.0,)";
|
|
11
|
+
/** Marketplace identity of the TypeSpec Visual Studio extension. */
|
|
12
|
+
const VS_EXTENSION = {
|
|
13
|
+
publisher: "typespec",
|
|
14
|
+
name: "typespecvs",
|
|
15
|
+
id: "typespec.typespecvs",
|
|
16
|
+
};
|
|
17
|
+
/** Documentation page describing how to install/manage the Visual Studio extension. */
|
|
18
|
+
const VS_DOCS_URL = "https://typespec.io/docs/introduction/editor/vs";
|
|
11
19
|
export async function installVSExtension(host) {
|
|
20
|
+
reportDeprecatedCommand(host, "tsp vs install", VS_DOCS_URL);
|
|
12
21
|
const diagnostics = createDiagnosticCollector();
|
|
13
22
|
const vsixInstaller = diagnostics.pipe(getVsixInstallerPath());
|
|
14
23
|
if (vsixInstaller === undefined) {
|
|
@@ -22,18 +31,20 @@ export async function installVSExtension(host) {
|
|
|
22
31
|
}),
|
|
23
32
|
];
|
|
24
33
|
}
|
|
25
|
-
await
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
});
|
|
32
|
-
}
|
|
34
|
+
const downloadDiagnostics = await downloadVsixFromMarketplace(host, VS_EXTENSION, (vsix) => {
|
|
35
|
+
// eslint-disable-next-line no-console
|
|
36
|
+
console.log(`Installing extension for Visual Studio...`);
|
|
37
|
+
run(host, vsixInstaller, [vsix], {
|
|
38
|
+
allowedExitCodes: [VSIX_ALREADY_INSTALLED, VSIX_USER_CANCELED],
|
|
39
|
+
});
|
|
33
40
|
});
|
|
41
|
+
for (const diagnostic of downloadDiagnostics) {
|
|
42
|
+
diagnostics.add(diagnostic);
|
|
43
|
+
}
|
|
34
44
|
return diagnostics.diagnostics;
|
|
35
45
|
}
|
|
36
46
|
export async function uninstallVSExtension(host) {
|
|
47
|
+
reportDeprecatedCommand(host, "tsp vs uninstall", VS_DOCS_URL);
|
|
37
48
|
const [vsixInstaller, diagnostics] = getVsixInstallerPath();
|
|
38
49
|
if (vsixInstaller === undefined) {
|
|
39
50
|
return diagnostics;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vs.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAc,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vs.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vscode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAY,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"vscode.d.ts","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vscode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAY,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAS9C,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,OAAO,CAAC;CACnB;AACD,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CAGhC;AAED,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,+BAA+B,kCAIzC"}
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import { createDiagnostic } from "../../messages.js";
|
|
2
2
|
import { NoTarget } from "../../types.js";
|
|
3
|
-
import {
|
|
4
|
-
|
|
3
|
+
import { reportDeprecatedCommand, run } from "../utils.js";
|
|
4
|
+
/** Marketplace identifier of the TypeSpec VS Code extension. */
|
|
5
|
+
const VSCODE_EXTENSION_ID = "microsoft.typespec-vscode";
|
|
6
|
+
/** Documentation page describing how to install/manage the VS Code extension. */
|
|
7
|
+
const VSCODE_DOCS_URL = "https://typespec.io/docs/introduction/editor/vscode/";
|
|
5
8
|
export async function installVSCodeExtension(host, options) {
|
|
6
|
-
|
|
9
|
+
reportDeprecatedCommand(host, "tsp code install", VSCODE_DOCS_URL);
|
|
10
|
+
return runCode(host, ["--install-extension", VSCODE_EXTENSION_ID], options.insiders);
|
|
7
11
|
}
|
|
8
12
|
export async function uninstallVSCodeExtension(host, options) {
|
|
9
|
-
|
|
13
|
+
reportDeprecatedCommand(host, "tsp code uninstall", VSCODE_DOCS_URL);
|
|
14
|
+
return runCode(host, ["--uninstall-extension", VSCODE_EXTENSION_ID], options.insiders);
|
|
10
15
|
}
|
|
11
16
|
function runCode(host, codeArgs, insiders) {
|
|
12
17
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vscode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAc,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"vscode.js","sourceRoot":"","sources":["../../../../../src/core/cli/actions/vscode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAc,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE3D,gEAAgE;AAChE,MAAM,mBAAmB,GAAG,2BAA2B,CAAC;AAExD,iFAAiF;AACjF,MAAM,eAAe,GAAG,sDAAsD,CAAC;AAK/E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAqB,EACrB,OAAsC;IAEtC,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;AACvF,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAqB,EACrB,OAAwC;IAExC,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACrE,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,uBAAuB,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,OAAO,CACd,IAAqB,EACrB,QAAkB,EAClB,QAAiB;IAEjB,IAAI,CAAC;QACH,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE;YACvD,oFAAoF;YACpF,QAAQ,EAAE,EAAE,gBAAgB,EAAE,GAAG,EAAE;YACnC,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO;gBACL,gBAAgB,CAAC;oBACf,IAAI,EAAE,gBAAgB;oBACtB,SAAS,EAAE,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBAC5D,MAAM,EAAE,QAAQ;iBACjB,CAAC;aACH,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
package/dist/src/core/cli/cli.js
CHANGED
|
@@ -158,14 +158,14 @@ async function main() {
|
|
|
158
158
|
description: "Use VS Code Insiders",
|
|
159
159
|
default: false,
|
|
160
160
|
})
|
|
161
|
-
.command("install", "Install VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => installVSCodeExtension(host, args)))
|
|
162
|
-
.command("uninstall", "Uninstall VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => uninstallVSCodeExtension(host, args)));
|
|
161
|
+
.command("install", "Install VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => installVSCodeExtension(host, args)), [], "Install the extension from the Visual Studio Marketplace instead.")
|
|
162
|
+
.command("uninstall", "Uninstall VS Code Extension", () => { }, withCliHostAndDiagnostics((host, args) => uninstallVSCodeExtension(host, args)), [], "Uninstall the extension from VS Code directly instead.");
|
|
163
163
|
})
|
|
164
164
|
.command("vs", "Manage Visual Studio Extension.", (cmd) => {
|
|
165
165
|
return cmd
|
|
166
166
|
.demandCommand(1, "No command specified")
|
|
167
|
-
.command("install", "Install Visual Studio Extension.", () => { }, withCliHostAndDiagnostics((host) => installVSExtension(host)))
|
|
168
|
-
.command("uninstall", "Uninstall VS Extension", () => { }, withCliHostAndDiagnostics((host) => uninstallVSExtension(host)));
|
|
167
|
+
.command("install", "Install Visual Studio Extension.", () => { }, withCliHostAndDiagnostics((host) => installVSExtension(host)), [], "Install the extension from the Visual Studio Marketplace instead.")
|
|
168
|
+
.command("uninstall", "Uninstall VS Extension", () => { }, withCliHostAndDiagnostics((host) => uninstallVSExtension(host)), [], "Uninstall the extension from Visual Studio directly instead.");
|
|
169
169
|
})
|
|
170
170
|
.command("format <include...>", "Format given list of TypeSpec files.", (cmd) => {
|
|
171
171
|
return cmd
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Diagnostic } from "../types.js";
|
|
2
|
+
import { CliCompilerHost } from "./types.js";
|
|
3
|
+
export interface MarketplaceExtension {
|
|
4
|
+
/** Marketplace publisher name (e.g. `typespec`). */
|
|
5
|
+
readonly publisher: string;
|
|
6
|
+
/** Marketplace extension name (e.g. `typespecvs`). */
|
|
7
|
+
readonly name: string;
|
|
8
|
+
/** Full marketplace identifier used for diagnostics (e.g. `typespec.typespecvs`). */
|
|
9
|
+
readonly id: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Download the latest `.vsix` for the given extension from the Visual Studio Marketplace
|
|
13
|
+
* into a temporary directory, invoke the `install` callback with the vsix path, then clean up.
|
|
14
|
+
*
|
|
15
|
+
* To debug with a locally built vsix rather than pulling from the marketplace, set the
|
|
16
|
+
* `TYPESPEC_DEBUG_VSIX` environment variable to the full path of the `.vsix` file.
|
|
17
|
+
*/
|
|
18
|
+
export declare function downloadVsixFromMarketplace(host: CliCompilerHost, extension: MarketplaceExtension, install: (vsixPath: string) => void): Promise<readonly Diagnostic[]>;
|
|
19
|
+
//# sourceMappingURL=download-vsix.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download-vsix.d.ts","sourceRoot":"","sources":["../../../../src/core/cli/download-vsix.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAY,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAI7C,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,oBAAoB,EAC/B,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CA2BhC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { mkdtemp, rm, writeFile } from "fs/promises";
|
|
2
|
+
import os from "os";
|
|
3
|
+
import { createDiagnostic } from "../messages.js";
|
|
4
|
+
import { joinPaths } from "../path-utils.js";
|
|
5
|
+
import { NoTarget } from "../types.js";
|
|
6
|
+
const MARKETPLACE_URL = "https://marketplace.visualstudio.com";
|
|
7
|
+
/**
|
|
8
|
+
* Download the latest `.vsix` for the given extension from the Visual Studio Marketplace
|
|
9
|
+
* into a temporary directory, invoke the `install` callback with the vsix path, then clean up.
|
|
10
|
+
*
|
|
11
|
+
* To debug with a locally built vsix rather than pulling from the marketplace, set the
|
|
12
|
+
* `TYPESPEC_DEBUG_VSIX` environment variable to the full path of the `.vsix` file.
|
|
13
|
+
*/
|
|
14
|
+
export async function downloadVsixFromMarketplace(host, extension, install) {
|
|
15
|
+
const temp = await mkdtemp(joinPaths(os.tmpdir(), "typespec"));
|
|
16
|
+
try {
|
|
17
|
+
let vsixPath = process.env.TYPESPEC_DEBUG_VSIX;
|
|
18
|
+
if (vsixPath === undefined) {
|
|
19
|
+
const version = await resolveLatestVersion(extension.id);
|
|
20
|
+
host.logger.trace(`Downloading ${extension.id}@${version} from the marketplace.`);
|
|
21
|
+
const content = await downloadVsix(extension, version);
|
|
22
|
+
vsixPath = joinPaths(temp, `${extension.name}.vsix`);
|
|
23
|
+
await writeFile(vsixPath, content);
|
|
24
|
+
}
|
|
25
|
+
install(vsixPath);
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
return [
|
|
30
|
+
createDiagnostic({
|
|
31
|
+
code: "vsix-download-failed",
|
|
32
|
+
format: {
|
|
33
|
+
id: extension.id,
|
|
34
|
+
message: error instanceof Error ? error.message : String(error),
|
|
35
|
+
},
|
|
36
|
+
target: NoTarget,
|
|
37
|
+
}),
|
|
38
|
+
];
|
|
39
|
+
}
|
|
40
|
+
finally {
|
|
41
|
+
await rm(temp, { recursive: true, force: true });
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async function resolveLatestVersion(id) {
|
|
45
|
+
const res = await fetch(`${MARKETPLACE_URL}/_apis/public/gallery/extensionquery`, {
|
|
46
|
+
method: "POST",
|
|
47
|
+
headers: {
|
|
48
|
+
Accept: "application/json;api-version=3.0-preview.1",
|
|
49
|
+
"Content-Type": "application/json",
|
|
50
|
+
},
|
|
51
|
+
// filterType 7 matches an extension by its full `<publisher>.<name>` id.
|
|
52
|
+
// flags 0x1 (IncludeVersions) returns the versions ordered latest first.
|
|
53
|
+
body: JSON.stringify({
|
|
54
|
+
filters: [{ criteria: [{ filterType: 7, value: id }] }],
|
|
55
|
+
flags: 0x1,
|
|
56
|
+
}),
|
|
57
|
+
});
|
|
58
|
+
if (!res.ok) {
|
|
59
|
+
throw new Error(`Marketplace query returned status ${res.status}.`);
|
|
60
|
+
}
|
|
61
|
+
const data = await res.json();
|
|
62
|
+
const version = data?.results?.[0]?.extensions?.[0]?.versions?.[0]?.version;
|
|
63
|
+
if (typeof version !== "string") {
|
|
64
|
+
throw new Error(`Extension "${id}" was not found in the marketplace.`);
|
|
65
|
+
}
|
|
66
|
+
return version;
|
|
67
|
+
}
|
|
68
|
+
async function downloadVsix(extension, version) {
|
|
69
|
+
const url = `${MARKETPLACE_URL}/_apis/public/gallery/publishers/${extension.publisher}/vsextensions/${extension.name}/${version}/vspackage`;
|
|
70
|
+
const res = await fetch(url);
|
|
71
|
+
if (!res.ok) {
|
|
72
|
+
throw new Error(`Downloading vsix returned status ${res.status}.`);
|
|
73
|
+
}
|
|
74
|
+
return Buffer.from(await res.arrayBuffer());
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=download-vsix.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download-vsix.js","sourceRoot":"","sources":["../../../../src/core/cli/download-vsix.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { SpawnSyncOptionsWithStringEncoding } from "child_process";
|
|
2
2
|
import { Diagnostic } from "../types.js";
|
|
3
3
|
import { CliCompilerHost } from "./types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Emit the `cli-command-deprecated` warning for a deprecated CLI command.
|
|
6
|
+
*
|
|
7
|
+
* Logged eagerly via the logger (instead of returned as a diagnostic) so the notice is always
|
|
8
|
+
* shown, even when the underlying command later exits the process on failure.
|
|
9
|
+
*/
|
|
10
|
+
export declare function reportDeprecatedCommand(host: CliCompilerHost, command: string, docsUrl: string): void;
|
|
4
11
|
export interface RunOptions extends Partial<SpawnSyncOptionsWithStringEncoding> {
|
|
5
12
|
readonly debug?: boolean;
|
|
6
13
|
readonly extraEnv?: NodeJS.ProcessEnv;
|
|
@@ -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;
|
|
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"}
|
|
@@ -6,10 +6,26 @@ import { ExternalError } from "../external-error.js";
|
|
|
6
6
|
import { createConsoleSink } from "../logger/console-sink.js";
|
|
7
7
|
import { createLogger } from "../logger/logger.js";
|
|
8
8
|
import { createTracer } from "../logger/tracer.js";
|
|
9
|
+
import { createDiagnostic } from "../messages.js";
|
|
9
10
|
import { NodeHost } from "../node-host.js";
|
|
10
11
|
import { getBaseFileName } from "../path-utils.js";
|
|
12
|
+
import { NoTarget } from "../types.js";
|
|
11
13
|
// ENOENT checking and handles spaces poorly in some cases.
|
|
12
14
|
const isCmdOnWindows = ["code", "code-insiders", "npm"];
|
|
15
|
+
/**
|
|
16
|
+
* Emit the `cli-command-deprecated` warning for a deprecated CLI command.
|
|
17
|
+
*
|
|
18
|
+
* Logged eagerly via the logger (instead of returned as a diagnostic) so the notice is always
|
|
19
|
+
* shown, even when the underlying command later exits the process on failure.
|
|
20
|
+
*/
|
|
21
|
+
export function reportDeprecatedCommand(host, command, docsUrl) {
|
|
22
|
+
const diagnostic = createDiagnostic({
|
|
23
|
+
code: "cli-command-deprecated",
|
|
24
|
+
format: { command, docsUrl },
|
|
25
|
+
target: NoTarget,
|
|
26
|
+
});
|
|
27
|
+
host.logger.warn(diagnostic.message);
|
|
28
|
+
}
|
|
13
29
|
export function withCliHost(fn) {
|
|
14
30
|
return withFailsafe((args) => {
|
|
15
31
|
const host = createCLICompilerHost(args);
|
|
@@ -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,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/core/cli/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,12 +10,12 @@ export declare function logDiagnostics(diagnostics: readonly Diagnostic[], logge
|
|
|
10
10
|
* - For template instance targets: returns the node of the template declaration
|
|
11
11
|
* - For symbols: returns the first declaration node (or symbol source for using symbols)
|
|
12
12
|
* - For AST nodes: returns the node itself
|
|
13
|
-
* - For
|
|
13
|
+
* - For entities: returns the most relevant node associated with the entity
|
|
14
14
|
*
|
|
15
15
|
* @param target The diagnostic target to extract a node from. Can be a template instance,
|
|
16
16
|
* symbol, AST node, or type.
|
|
17
|
-
* @returns The AST node associated with the target, or undefined if the target
|
|
18
|
-
*
|
|
17
|
+
* @returns The AST node associated with the target, or undefined if the target
|
|
18
|
+
* doesn't have an associated node.
|
|
19
19
|
*/
|
|
20
20
|
export declare function getNodeForTarget(target: TypeSpecDiagnosticTarget): Node | undefined;
|
|
21
21
|
export interface SourceLocationOptions {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/core/diagnostics.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EACL,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,IAAI,EAEJ,QAAQ,EAER,cAAc,EAGd,IAAI,EACJ,wBAAwB,
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/core/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,12 +29,12 @@ export function getRelatedLocations(diagnostic) {
|
|
|
29
29
|
* - For template instance targets: returns the node of the template declaration
|
|
30
30
|
* - For symbols: returns the first declaration node (or symbol source for using symbols)
|
|
31
31
|
* - For AST nodes: returns the node itself
|
|
32
|
-
* - For
|
|
32
|
+
* - For entities: returns the most relevant node associated with the entity
|
|
33
33
|
*
|
|
34
34
|
* @param target The diagnostic target to extract a node from. Can be a template instance,
|
|
35
35
|
* symbol, AST node, or type.
|
|
36
|
-
* @returns The AST node associated with the target, or undefined if the target
|
|
37
|
-
*
|
|
36
|
+
* @returns The AST node associated with the target, or undefined if the target
|
|
37
|
+
* doesn't have an associated node.
|
|
38
38
|
*/
|
|
39
39
|
export function getNodeForTarget(target) {
|
|
40
40
|
if (!("kind" in target) && !("entityKind" in target)) {
|
|
@@ -48,6 +48,24 @@ export function getNodeForTarget(target) {
|
|
|
48
48
|
}
|
|
49
49
|
return target.declarations[0];
|
|
50
50
|
}
|
|
51
|
+
else if ("entityKind" in target) {
|
|
52
|
+
switch (target.entityKind) {
|
|
53
|
+
case "Type":
|
|
54
|
+
return target.node;
|
|
55
|
+
case "Value":
|
|
56
|
+
return getValueNode(target) ?? target.type.node;
|
|
57
|
+
case "MixedParameterConstraint":
|
|
58
|
+
// Prefer the explicit union expression node when present, otherwise fall back
|
|
59
|
+
// to a side of the constraint that has a source node. Type is preferred
|
|
60
|
+
// over valueType to keep location behavior stable for mixed constraints
|
|
61
|
+
// that include both branches.
|
|
62
|
+
return target.node ?? target.type?.node ?? target.valueType?.node;
|
|
63
|
+
case "Indeterminate":
|
|
64
|
+
return target.type.node;
|
|
65
|
+
default:
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
51
69
|
else if ("kind" in target && typeof target.kind === "number") {
|
|
52
70
|
// node
|
|
53
71
|
return target;
|
|
@@ -57,6 +75,19 @@ export function getNodeForTarget(target) {
|
|
|
57
75
|
return target.node;
|
|
58
76
|
}
|
|
59
77
|
}
|
|
78
|
+
function getValueNode(value) {
|
|
79
|
+
// Only compound values and function values carry their own syntax node.
|
|
80
|
+
// Primitive values (string/number/boolean/null/enum/scalar literal values)
|
|
81
|
+
// are represented by their resolved value/type and don't retain a direct node.
|
|
82
|
+
switch (value.valueKind) {
|
|
83
|
+
case "ObjectValue":
|
|
84
|
+
case "ArrayValue":
|
|
85
|
+
case "Function":
|
|
86
|
+
return value.node;
|
|
87
|
+
default:
|
|
88
|
+
return undefined;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
60
91
|
export function getSourceLocation(target, options = {}) {
|
|
61
92
|
if (target === NoTarget || target === undefined) {
|
|
62
93
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/core/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAQL,QAAQ,EAIR,UAAU,
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/core/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint-resolution.d.ts","sourceRoot":"","sources":["../../../src/core/entrypoint-resolution.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,iBAAiB,GAClC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAY7B;AAED,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,iBAAiB,GAClC,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"entrypoint-resolution.d.ts","sourceRoot":"","sources":["../../../src/core/entrypoint-resolution.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,iBAAiB,GAClC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAY7B;AAED,wBAAsB,+BAA+B,CACnD,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,MAAM,EACX,gBAAgB,EAAE,iBAAiB,GAClC,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
|
|
@@ -21,12 +21,13 @@ export async function resolveTypeSpecEntrypoint(host, path, reportDiagnostic) {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
export async function resolveTypeSpecEntrypointForDir(host, dir, reportDiagnostic) {
|
|
24
|
-
//
|
|
24
|
+
// An explicit entrypoint in the project config takes precedence.
|
|
25
25
|
const config = await loadTypeSpecConfigForPath(host, dir, false, false);
|
|
26
|
-
if (config.kind === "project") {
|
|
27
|
-
|
|
28
|
-
return resolvePath(dir, entrypoint);
|
|
26
|
+
if (config.kind === "project" && config.entrypoint !== undefined) {
|
|
27
|
+
return resolvePath(dir, config.entrypoint);
|
|
29
28
|
}
|
|
29
|
+
// Otherwise fall back to the `tspMain` declared in package.json. A `tspconfig.yaml`
|
|
30
|
+
// without an explicit `entrypoint` must not override `tspMain`.
|
|
30
31
|
const pkgJsonPath = resolvePath(dir, "package.json");
|
|
31
32
|
const [pkg] = await loadFile(host, pkgJsonPath, JSON.parse, reportDiagnostic, {
|
|
32
33
|
allowFileNotFound: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint-resolution.js","sourceRoot":"","sources":["../../../src/core/entrypoint-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAkB,EAClB,IAAY,EACZ,gBAAmC;IAEnC,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC3B,OAAO,+BAA+B,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IAC/E,CAAC;SAAM,CAAC;QACN,OAAO,YAAY,CAAC;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,IAAkB,EAClB,GAAW,EACX,gBAAmC;IAEnC,
|
|
1
|
+
{"version":3,"file":"entrypoint-resolution.js","sourceRoot":"","sources":["../../../src/core/entrypoint-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAkB,EAClB,IAAY,EACZ,gBAAmC;IAEnC,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAC3B,OAAO,+BAA+B,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IAC/E,CAAC;SAAM,CAAC;QACN,OAAO,YAAY,CAAC;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,IAAkB,EAClB,GAAW,EACX,gBAAmC;IAEnC,iEAAiE;IACjE,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACxE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,oFAAoF;IACpF,gEAAgE;IAChE,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IACrD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,gBAAgB,EAAE;QAC5E,iBAAiB,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -7,6 +7,9 @@ export declare const compilerFeatures: {
|
|
|
7
7
|
readonly "function-declarations": {
|
|
8
8
|
readonly description: "Allows use of function declarations without experimental warnings in project code.";
|
|
9
9
|
};
|
|
10
|
+
readonly "auto-decorators": {
|
|
11
|
+
readonly description: "Allows use of auto decorator declarations without experimental warnings in project code.";
|
|
12
|
+
};
|
|
10
13
|
};
|
|
11
14
|
export type CompilerFeatureName = keyof typeof compilerFeatures;
|
|
12
15
|
export declare const compilerFeatureNames: CompilerFeatureName[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../../src/core/features.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../../src/core/features.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,gBAAgB;;;;;;;CASiC,CAAC;AAE/D,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAEhE,eAAO,MAAM,oBAAoB,EAAoC,mBAAmB,EAAE,CAAC;AAI3F,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,mBAAmB,CAErF;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,mBAAmB,EAC5B,MAAM,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAmBT"}
|
|
@@ -3,6 +3,9 @@ export const compilerFeatures = {
|
|
|
3
3
|
"function-declarations": {
|
|
4
4
|
description: "Allows use of function declarations without experimental warnings in project code.",
|
|
5
5
|
},
|
|
6
|
+
"auto-decorators": {
|
|
7
|
+
description: "Allows use of auto decorator declarations without experimental warnings in project code.",
|
|
8
|
+
},
|
|
6
9
|
};
|
|
7
10
|
export const compilerFeatureNames = Object.keys(compilerFeatures);
|
|
8
11
|
const compilerFeatureNameSet = new Set(compilerFeatureNames);
|
|
@@ -10,12 +13,22 @@ export function isCompilerFeatureName(feature) {
|
|
|
10
13
|
return compilerFeatureNameSet.has(feature);
|
|
11
14
|
}
|
|
12
15
|
export function isCompilerFeatureEnabled(program, feature, target) {
|
|
13
|
-
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
+
// Without a target, fall back to the root project config (e.g. global feature checks).
|
|
16
17
|
if (target === undefined) {
|
|
17
|
-
return
|
|
18
|
+
return program.compilerOptions.configFile?.features?.includes(feature) ?? false;
|
|
19
|
+
}
|
|
20
|
+
// Resolve the feature set from the package that owns the source file so that a library
|
|
21
|
+
// can enable a feature for its own code via its own `tspconfig.yaml`, independently of
|
|
22
|
+
// the consuming project's config.
|
|
23
|
+
const context = getLocationContext(program, target);
|
|
24
|
+
switch (context.type) {
|
|
25
|
+
case "project":
|
|
26
|
+
return program.compilerOptions.configFile?.features?.includes(feature) ?? false;
|
|
27
|
+
case "library":
|
|
28
|
+
return context.features?.includes(feature) ?? false;
|
|
29
|
+
default:
|
|
30
|
+
// compiler (standard library) and synthetic code are never gated.
|
|
31
|
+
return false;
|
|
18
32
|
}
|
|
19
|
-
return getLocationContext(program, target).type === "project";
|
|
20
33
|
}
|
|
21
34
|
//# sourceMappingURL=features.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../../src/core/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQnE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,uBAAuB,EAAE;QACvB,WAAW,EACT,oFAAoF;KACvF;CAC2D,CAAC;AAI/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAA0B,CAAC;AAE3F,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAS,oBAAoB,CAAC,CAAC;AAErE,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAgB,EAChB,OAA4B,EAC5B,MAAyB;IAEzB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../../src/core/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQnE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,uBAAuB,EAAE;QACvB,WAAW,EACT,oFAAoF;KACvF;IACD,iBAAiB,EAAE;QACjB,WAAW,EACT,0FAA0F;KAC7F;CAC2D,CAAC;AAI/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAA0B,CAAC;AAE3F,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAS,oBAAoB,CAAC,CAAC;AAErE,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAgB,EAChB,OAA4B,EAC5B,MAAyB;IAEzB,uFAAuF;IACvF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;IAClF,CAAC;IAED,uFAAuF;IACvF,uFAAuF;IACvF,kCAAkC;IAClC,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;QAClF,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;QACtD;YACE,kEAAkE;YAClE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
|