generator-code 1.7.9 → 1.8.1
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/generators/app/dependencyVersions/package.json +16 -14
- package/generators/app/env.js +8 -7
- package/generators/app/generate-colortheme.js +12 -13
- package/generators/app/generate-command-js.js +6 -5
- package/generators/app/generate-command-ts.js +9 -6
- package/generators/app/generate-command-web.js +8 -6
- package/generators/app/generate-extensionpack.js +6 -6
- package/generators/app/generate-keymap.js +5 -5
- package/generators/app/generate-language.js +30 -27
- package/generators/app/generate-localization.js +10 -8
- package/generators/app/generate-notebook-renderer.js +7 -6
- package/generators/app/generate-snippets.js +10 -10
- package/generators/app/index.js +24 -20
- package/generators/app/prompts.js +16 -14
- package/generators/app/templates/ext-command-js/.vscode-test.mjs +5 -0
- package/generators/app/templates/ext-command-js/.vscodeignore +1 -0
- package/generators/app/templates/ext-command-js/jsconfig.json +3 -3
- package/generators/app/templates/ext-command-js/package.json +2 -3
- package/generators/app/templates/ext-command-js/vsc-extension-quickstart.md +5 -5
- package/generators/app/templates/ext-command-js/vscode/extensions.json +3 -2
- package/generators/app/templates/ext-command-js/vscode/launch.json +0 -9
- package/generators/app/templates/ext-command-ts/.eslintrc.json +8 -2
- package/generators/app/templates/ext-command-ts/.vscode-test.mjs +5 -0
- package/generators/app/templates/ext-command-ts/.vscodeignore +1 -0
- package/generators/app/templates/ext-command-ts/package.json +2 -3
- package/generators/app/templates/ext-command-ts/tsconfig.json +3 -3
- package/generators/app/templates/ext-command-ts/vsc-extension-quickstart.md +5 -4
- package/generators/app/templates/ext-command-ts/vscode/extensions.json +2 -1
- package/generators/app/templates/ext-command-ts/vscode/launch.json +0 -13
- package/generators/app/templates/ext-command-ts/vscode-webpack/.vscodeignore +1 -0
- package/generators/app/templates/ext-command-ts/vscode-webpack/package.json +2 -3
- package/generators/app/templates/ext-command-ts/vscode-webpack/tsconfig.json +3 -3
- package/generators/app/templates/ext-command-ts/vscode-webpack/vsc-extension-quickstart.md +6 -5
- package/generators/app/templates/ext-command-ts/vscode-webpack/vscode/extensions.json +1 -1
- package/generators/app/templates/ext-command-ts/vscode-webpack/vscode/launch.json +0 -14
- package/generators/app/templates/ext-command-web/.vscodeignore +1 -0
- package/generators/app/templates/ext-command-web/package.json +1 -0
- package/generators/app/templates/ext-command-web/tsconfig.json +1 -1
- package/generators/app/templates/ext-command-web/vsc-extension-quickstart.md +1 -1
- package/generators/app/templates/ext-notebook-renderer/.vscode-test.mjs +5 -0
- package/generators/app/templates/ext-notebook-renderer/.vscodeignore +1 -0
- package/generators/app/templates/ext-notebook-renderer/package.json +2 -1
- package/generators/app/templates/ext-notebook-renderer/src/tsconfig-base.json +3 -4
- package/generators/app/templates/ext-notebook-renderer/vscode/extensions.json +1 -1
- package/generators/app/templates/ext-notebook-renderer/vscode/launch.json +0 -13
- package/generators/app/validator.js +31 -4
- package/package.json +9 -10
- package/generators/app/templates/ext-command-js/test/runTest.js +0 -23
- package/generators/app/templates/ext-command-js/test/suite/index.js +0 -45
- package/generators/app/templates/ext-command-ts/src/test/runTest.ts +0 -23
- package/generators/app/templates/ext-command-ts/src/test/suite/index.ts +0 -40
- package/generators/app/templates/ext-notebook-renderer/src/test/runTest.ts +0 -23
- package/generators/app/templates/ext-notebook-renderer/src/test/suite/index.ts +0 -40
- /package/generators/app/templates/ext-command-js/test/{suite/extension.test.js → extension.test.js} +0 -0
- /package/generators/app/templates/ext-command-ts/src/test/{suite/extension.test.ts → extension.test.ts} +0 -0
- /package/generators/app/templates/ext-notebook-renderer/src/test/{suite/extension.test.ts → extension.test.ts} +0 -0
package/generators/app/index.js
CHANGED
|
@@ -3,30 +3,29 @@
|
|
|
3
3
|
*--------------------------------------------------------*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const snippets = require('./generate-snippets');
|
|
6
|
+
import Generator from 'yeoman-generator';
|
|
7
|
+
import yosay from 'yosay';
|
|
8
|
+
import { fileURLToPath } from 'url';
|
|
9
|
+
import * as path from 'path';
|
|
10
|
+
import * as env from './env.js';
|
|
11
|
+
import which from 'which';
|
|
12
|
+
import colortheme from './generate-colortheme.js';
|
|
13
|
+
import commandjs from './generate-command-js.js';
|
|
14
|
+
import commandts from './generate-command-ts.js';
|
|
15
|
+
import commandweb from './generate-command-web.js';
|
|
16
|
+
import extensionpack from './generate-extensionpack.js';
|
|
17
|
+
import keymap from './generate-keymap.js';
|
|
18
|
+
import language from './generate-language.js';
|
|
19
|
+
import localization from './generate-localization.js';
|
|
20
|
+
import notebook from './generate-notebook-renderer.js';
|
|
21
|
+
import snippets from './generate-snippets.js';
|
|
23
22
|
|
|
24
23
|
const extensionGenerators = [
|
|
25
24
|
commandts, commandjs, colortheme, language, snippets, keymap, extensionpack, localization,
|
|
26
25
|
commandweb, notebook
|
|
27
26
|
]
|
|
28
27
|
|
|
29
|
-
|
|
28
|
+
export default class extends Generator {
|
|
30
29
|
|
|
31
30
|
constructor(args, opts) {
|
|
32
31
|
super(args, opts);
|
|
@@ -126,6 +125,7 @@ module.exports = class extends Generator {
|
|
|
126
125
|
try {
|
|
127
126
|
await this.extensionGenerator.prompting(this, this.extensionConfig);
|
|
128
127
|
} catch (e) {
|
|
128
|
+
console.log(e);
|
|
129
129
|
this.abort = true;
|
|
130
130
|
}
|
|
131
131
|
|
|
@@ -143,7 +143,8 @@ module.exports = class extends Generator {
|
|
|
143
143
|
this.log();
|
|
144
144
|
this.log(`Writing in ${this.destinationPath()}...`);
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
const currentFilename = fileURLToPath(import.meta.url);
|
|
147
|
+
this.sourceRoot(path.join(currentFilename, '../templates/' + this.extensionConfig.type));
|
|
147
148
|
|
|
148
149
|
return this.extensionGenerator.writing(this, this.extensionConfig);
|
|
149
150
|
}
|
|
@@ -151,12 +152,15 @@ module.exports = class extends Generator {
|
|
|
151
152
|
// Installation
|
|
152
153
|
install() {
|
|
153
154
|
if (this.abort) {
|
|
155
|
+
// @ts-ignore
|
|
154
156
|
this.env.options.skipInstall = true;
|
|
155
157
|
return;
|
|
156
158
|
}
|
|
157
159
|
if (this.extensionConfig.installDependencies) {
|
|
160
|
+
// @ts-ignore
|
|
158
161
|
this.env.options.nodePackageManager = this.extensionConfig.pkgManager;
|
|
159
162
|
} else {
|
|
163
|
+
// @ts-ignore
|
|
160
164
|
this.env.options.skipInstall = true;
|
|
161
165
|
}
|
|
162
166
|
}
|
|
@@ -185,7 +189,7 @@ module.exports = class extends Generator {
|
|
|
185
189
|
|
|
186
190
|
// Git init
|
|
187
191
|
if (this.extensionConfig.gitInit) {
|
|
188
|
-
this.spawnCommand('git', ['init', '--quiet'
|
|
192
|
+
this.spawnCommand('git', ['init', '--quiet']);
|
|
189
193
|
}
|
|
190
194
|
|
|
191
195
|
if (this.extensionConfig.proposedAPI) {
|
|
@@ -3,14 +3,16 @@
|
|
|
3
3
|
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
4
4
|
*--------------------------------------------------------*/
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
import Generator from 'yeoman-generator';
|
|
7
|
+
|
|
8
|
+
import * as validator from './validator.js';
|
|
9
|
+
import * as path from 'path';
|
|
8
10
|
|
|
9
11
|
/**
|
|
10
|
-
* @param {
|
|
12
|
+
* @param {Generator} generator
|
|
11
13
|
* @param {Object} extensionConfig
|
|
12
14
|
*/
|
|
13
|
-
|
|
15
|
+
export function askForExtensionDisplayName(generator, extensionConfig) {
|
|
14
16
|
let extensionDisplayName = generator.options['extensionDisplayName'];
|
|
15
17
|
if (extensionDisplayName) {
|
|
16
18
|
extensionConfig.displayName = extensionDisplayName;
|
|
@@ -35,10 +37,10 @@ exports.askForExtensionDisplayName = (generator, extensionConfig) => {
|
|
|
35
37
|
|
|
36
38
|
/**
|
|
37
39
|
* Ask for extension id ("name" in package.json)
|
|
38
|
-
* @param {
|
|
40
|
+
* @param {Generator} generator
|
|
39
41
|
* @param {Object} extensionConfig
|
|
40
42
|
*/
|
|
41
|
-
|
|
43
|
+
export function askForExtensionId(generator, extensionConfig) {
|
|
42
44
|
let extensionName = generator.options['extensionId'];
|
|
43
45
|
if (extensionName) {
|
|
44
46
|
extensionConfig.name = extensionName;
|
|
@@ -66,10 +68,10 @@ exports.askForExtensionId = (generator, extensionConfig) => {
|
|
|
66
68
|
|
|
67
69
|
/**
|
|
68
70
|
* Ask for extension description
|
|
69
|
-
* @param {
|
|
71
|
+
* @param {Generator} generator
|
|
70
72
|
* @param {Object} extensionConfig
|
|
71
73
|
*/
|
|
72
|
-
|
|
74
|
+
export function askForExtensionDescription(generator, extensionConfig) {
|
|
73
75
|
let extensionDescription = generator.options['extensionDescription'];
|
|
74
76
|
if (extensionDescription) {
|
|
75
77
|
extensionConfig.description = extensionDescription;
|
|
@@ -91,10 +93,10 @@ exports.askForExtensionDescription = (generator, extensionConfig) => {
|
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
/**
|
|
94
|
-
* @param {
|
|
96
|
+
* @param {Generator} generator
|
|
95
97
|
* @param {Object} extensionConfig
|
|
96
98
|
*/
|
|
97
|
-
|
|
99
|
+
export function askForGit(generator, extensionConfig) {
|
|
98
100
|
let gitInit = generator.options['gitInit'];
|
|
99
101
|
if (typeof gitInit === 'boolean') {
|
|
100
102
|
extensionConfig.gitInit = Boolean(gitInit);
|
|
@@ -116,10 +118,10 @@ exports.askForGit = (generator, extensionConfig) => {
|
|
|
116
118
|
}
|
|
117
119
|
|
|
118
120
|
/**
|
|
119
|
-
* @param {
|
|
121
|
+
* @param {Generator} generator
|
|
120
122
|
* @param {Object} extensionConfig
|
|
121
123
|
*/
|
|
122
|
-
|
|
124
|
+
export function askForPackageManager(generator, extensionConfig) {
|
|
123
125
|
let pkgManager = generator.options['pkgManager'];
|
|
124
126
|
if (pkgManager === 'npm' || pkgManager === 'yarn' || pkgManager === 'pnpm') {
|
|
125
127
|
extensionConfig.pkgManager = pkgManager;
|
|
@@ -156,10 +158,10 @@ exports.askForPackageManager = (generator, extensionConfig) => {
|
|
|
156
158
|
}
|
|
157
159
|
|
|
158
160
|
/**
|
|
159
|
-
* @param {
|
|
161
|
+
* @param {Generator} generator
|
|
160
162
|
* @param {Object} extensionConfig
|
|
161
163
|
*/
|
|
162
|
-
|
|
164
|
+
export function askForWebpack(generator, extensionConfig) {
|
|
163
165
|
let webpack = generator.options['webpack'];
|
|
164
166
|
if (typeof webpack === 'boolean') {
|
|
165
167
|
extensionConfig.webpack = Boolean(webpack);
|
|
@@ -20,16 +20,15 @@
|
|
|
20
20
|
"scripts": {
|
|
21
21
|
"lint": "eslint .",
|
|
22
22
|
"pretest": "<%= pkgManager %> run lint",
|
|
23
|
-
"test": "
|
|
23
|
+
"test": "vscode-test"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
<%- dep("@types/vscode") %>,
|
|
27
27
|
<%- dep("@types/mocha") %>,
|
|
28
28
|
<%- dep("@types/node") %>,
|
|
29
29
|
<%- dep("eslint") %>,
|
|
30
|
-
<%- dep("glob") %>,
|
|
31
|
-
<%- dep("mocha") %>,
|
|
32
30
|
<%- dep("typescript") %>,
|
|
31
|
+
<%- dep("@vscode/test-cli") %>,
|
|
33
32
|
<%- dep("@vscode/test-electron") %>
|
|
34
33
|
}
|
|
35
34
|
}
|
|
@@ -27,11 +27,11 @@
|
|
|
27
27
|
|
|
28
28
|
## Run tests
|
|
29
29
|
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* See the output of the test result in the
|
|
33
|
-
* Make changes to `
|
|
34
|
-
* The provided test runner will only consider files matching the name pattern `**.test.
|
|
30
|
+
* Install the [Extension Test Runner](https://marketplace.visualstudio.com/items?itemName=ms-vscode.extension-test-runner)
|
|
31
|
+
* Open the Testing view from the activity bar and click the Run Test" button, or use the hotkey `Ctrl/Cmd + ; A`
|
|
32
|
+
* See the output of the test result in the Test Results view.
|
|
33
|
+
* Make changes to `test/extension.test.js` or create new test files inside the `test` folder.
|
|
34
|
+
* The provided test runner will only consider files matching the name pattern `**.test.js`.
|
|
35
35
|
* You can create folders inside the `test` folder to structure your tests any way you want.
|
|
36
36
|
|
|
37
37
|
## Go further
|
|
@@ -12,15 +12,6 @@
|
|
|
12
12
|
"args": [
|
|
13
13
|
"--extensionDevelopmentPath=${workspaceFolder}"
|
|
14
14
|
]
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"name": "Extension Tests",
|
|
18
|
-
"type": "extensionHost",
|
|
19
|
-
"request": "launch",
|
|
20
|
-
"args": [
|
|
21
|
-
"--extensionDevelopmentPath=${workspaceFolder}",
|
|
22
|
-
"--extensionTestsPath=${workspaceFolder}/test/suite/index"
|
|
23
|
-
]
|
|
24
15
|
}
|
|
25
16
|
]
|
|
26
17
|
}
|
|
@@ -9,7 +9,13 @@
|
|
|
9
9
|
"@typescript-eslint"
|
|
10
10
|
],
|
|
11
11
|
"rules": {
|
|
12
|
-
"@typescript-eslint/naming-convention":
|
|
12
|
+
"@typescript-eslint/naming-convention": [
|
|
13
|
+
"warn",
|
|
14
|
+
{
|
|
15
|
+
"selector": "import",
|
|
16
|
+
"format": [ "camelCase", "PascalCase" ]
|
|
17
|
+
}
|
|
18
|
+
],
|
|
13
19
|
"@typescript-eslint/semi": "warn",
|
|
14
20
|
"curly": "warn",
|
|
15
21
|
"eqeqeq": "warn",
|
|
@@ -21,4 +27,4 @@
|
|
|
21
27
|
"dist",
|
|
22
28
|
"**/*.d.ts"
|
|
23
29
|
]
|
|
24
|
-
}
|
|
30
|
+
}
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"watch": "tsc -watch -p ./",
|
|
27
27
|
"pretest": "<%= pkgManager %> run compile && <%= pkgManager %> run lint",
|
|
28
28
|
"lint": "eslint src --ext ts",
|
|
29
|
-
"test": "
|
|
29
|
+
"test": "vscode-test"<% if (insiders) { %>,
|
|
30
30
|
"update-proposed-api": "vscode-dts dev"<% } %>
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
@@ -36,9 +36,8 @@
|
|
|
36
36
|
<%- dep("@typescript-eslint/eslint-plugin") %>,
|
|
37
37
|
<%- dep("@typescript-eslint/parser") %>,
|
|
38
38
|
<%- dep("eslint") %>,
|
|
39
|
-
<%- dep("glob") %>,
|
|
40
|
-
<%- dep("mocha") %>,
|
|
41
39
|
<%- dep("typescript") %>,
|
|
40
|
+
<%- dep("@vscode/test-cli") %>,
|
|
42
41
|
<%- dep("@vscode/test-electron") %><% if (insiders) { %>,
|
|
43
42
|
<%- dep("vscode-dts") %><% } %>
|
|
44
43
|
}
|
|
@@ -27,10 +27,11 @@
|
|
|
27
27
|
|
|
28
28
|
## Run tests
|
|
29
29
|
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
30
|
+
* Install the [Extension Test Runner](https://marketplace.visualstudio.com/items?itemName=ms-vscode.extension-test-runner)
|
|
31
|
+
* Run the "watch" task via the **Tasks: Run Task** command. Make sure this is running, or tests might not be discovered.
|
|
32
|
+
* Open the Testing view from the activity bar and click the Run Test" button, or use the hotkey `Ctrl/Cmd + ; A`
|
|
33
|
+
* See the output of the test result in the Test Results view.
|
|
34
|
+
* Make changes to `src/test/extension.test.ts` or create new test files inside the `test` folder.
|
|
34
35
|
* The provided test runner will only consider files matching the name pattern `**.test.ts`.
|
|
35
36
|
* You can create folders inside the `test` folder to structure your tests any way you want.
|
|
36
37
|
|
|
@@ -16,19 +16,6 @@
|
|
|
16
16
|
"${workspaceFolder}/out/**/*.js"
|
|
17
17
|
],
|
|
18
18
|
"preLaunchTask": "${defaultBuildTask}"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"name": "Extension Tests",
|
|
22
|
-
"type": "extensionHost",
|
|
23
|
-
"request": "launch",
|
|
24
|
-
"args": [
|
|
25
|
-
"--extensionDevelopmentPath=${workspaceFolder}",
|
|
26
|
-
"--extensionTestsPath=${workspaceFolder}/out/test/suite/index"
|
|
27
|
-
],
|
|
28
|
-
"outFiles": [
|
|
29
|
-
"${workspaceFolder}/out/test/**/*.js"
|
|
30
|
-
],
|
|
31
|
-
"preLaunchTask": "${defaultBuildTask}"
|
|
32
19
|
}
|
|
33
20
|
]
|
|
34
21
|
}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"watch-tests": "tsc -p . -w --outDir out",
|
|
30
30
|
"pretest": "<%= pkgManager %> run compile-tests && <%= pkgManager %> run compile && <%= pkgManager %> run lint",
|
|
31
31
|
"lint": "eslint src --ext ts",
|
|
32
|
-
"test": "
|
|
32
|
+
"test": "vscode-test"<% if (insiders) { %>,
|
|
33
33
|
"update-proposed-api": "vscode-dts dev"<% } %>
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
@@ -39,12 +39,11 @@
|
|
|
39
39
|
<%- dep("@typescript-eslint/eslint-plugin") %>,
|
|
40
40
|
<%- dep("@typescript-eslint/parser") %>,
|
|
41
41
|
<%- dep("eslint") %>,
|
|
42
|
-
<%- dep("glob") %>,
|
|
43
|
-
<%- dep("mocha") %>,
|
|
44
42
|
<%- dep("typescript") %>,
|
|
45
43
|
<%- dep("ts-loader") %>,
|
|
46
44
|
<%- dep("webpack") %>,
|
|
47
45
|
<%- dep("webpack-cli") %>,
|
|
46
|
+
<%- dep("@vscode/test-cli") %>,
|
|
48
47
|
<%- dep("@vscode/test-electron") %><% if (insiders) { %>,
|
|
49
48
|
<%- dep("vscode-dts") %><% } %>
|
|
50
49
|
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
## Setup
|
|
13
13
|
|
|
14
|
-
* install the recommended extensions (amodio.tsl-problem-matcher and dbaeumer.vscode-eslint)
|
|
14
|
+
* install the recommended extensions (amodio.tsl-problem-matcher, ms-vscode.extension-test-runner, and dbaeumer.vscode-eslint)
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
## Get up and running straight away
|
|
@@ -33,10 +33,11 @@
|
|
|
33
33
|
|
|
34
34
|
## Run tests
|
|
35
35
|
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
36
|
+
* Install the [Extension Test Runner](https://marketplace.visualstudio.com/items?itemName=ms-vscode.extension-test-runner)
|
|
37
|
+
* Run the "watch" task via the **Tasks: Run Task** command. Make sure this is running, or tests might not be discovered.
|
|
38
|
+
* Open the Testing view from the activity bar and click the Run Test" button, or use the hotkey `Ctrl/Cmd + ; A`
|
|
39
|
+
* See the output of the test result in the Test Results view.
|
|
40
|
+
* Make changes to `src/test/extension.test.ts` or create new test files inside the `test` folder.
|
|
40
41
|
* The provided test runner will only consider files matching the name pattern `**.test.ts`.
|
|
41
42
|
* You can create folders inside the `test` folder to structure your tests any way you want.
|
|
42
43
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
// See http://go.microsoft.com/fwlink/?LinkId=827846
|
|
3
3
|
// for the documentation about the extensions.json format
|
|
4
|
-
"recommendations": ["dbaeumer.vscode-eslint", "amodio.tsl-problem-matcher"]
|
|
4
|
+
"recommendations": ["dbaeumer.vscode-eslint", "amodio.tsl-problem-matcher", "ms-vscode.extension-test-runner"]
|
|
5
5
|
}
|
|
@@ -16,20 +16,6 @@
|
|
|
16
16
|
"${workspaceFolder}/dist/**/*.js"
|
|
17
17
|
],
|
|
18
18
|
"preLaunchTask": "${defaultBuildTask}"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"name": "Extension Tests",
|
|
22
|
-
"type": "extensionHost",
|
|
23
|
-
"request": "launch",
|
|
24
|
-
"args": [
|
|
25
|
-
"--extensionDevelopmentPath=${workspaceFolder}",
|
|
26
|
-
"--extensionTestsPath=${workspaceFolder}/out/test/suite/index"
|
|
27
|
-
],
|
|
28
|
-
"outFiles": [
|
|
29
|
-
"${workspaceFolder}/out/**/*.js",
|
|
30
|
-
"${workspaceFolder}/dist/**/*.js"
|
|
31
|
-
],
|
|
32
|
-
"preLaunchTask": "tasks: watch-tests"
|
|
33
19
|
}
|
|
34
20
|
]
|
|
35
21
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
## Setup
|
|
11
11
|
|
|
12
|
-
* install the recommended extensions (amodio.tsl-problem-matcher and dbaeumer.vscode-eslint)
|
|
12
|
+
* install the recommended extensions (amodio.tsl-problem-matcher, ms-vscode.extension-test-runner, and dbaeumer.vscode-eslint)
|
|
13
13
|
|
|
14
14
|
## Get up and running the Web Extension
|
|
15
15
|
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"lint": "eslint src --ext ts",
|
|
32
32
|
"watch": "webpack --mode development --watch",
|
|
33
33
|
"pretest": "webpack --mode development && <%= pkgManager %> run lint",
|
|
34
|
-
"test": "
|
|
34
|
+
"test": "vscode-test"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
<%- dep("@types/mocha") %>,
|
|
@@ -50,6 +50,7 @@
|
|
|
50
50
|
<%- dep("ts-loader") %>,
|
|
51
51
|
<%- dep("typescript") %>,
|
|
52
52
|
<%- dep("vscode-notebook-error-overlay") %>,
|
|
53
|
+
<%- dep("@vscode/test-cli") %>,
|
|
53
54
|
<%- dep("@vscode/test-electron") %>,
|
|
54
55
|
<%- dep("util") %>,
|
|
55
56
|
<%- dep("webpack") %>,
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
-
"module": "
|
|
4
|
-
"target": "
|
|
3
|
+
"module": "Node16",
|
|
4
|
+
"target": "ES2022",
|
|
5
5
|
"lib": [
|
|
6
|
-
"
|
|
6
|
+
"ES2022"
|
|
7
7
|
],
|
|
8
8
|
"types": ["node"],
|
|
9
|
-
"moduleResolution": "node",
|
|
10
9
|
"sourceMap": true,
|
|
11
10
|
"strict": true /* enable all strict type-checking options */
|
|
12
11
|
/* Additional Checks */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
// See http://go.microsoft.com/fwlink/?LinkId=827846
|
|
3
3
|
// for the documentation about the extensions.json format
|
|
4
|
-
"recommendations": ["dbaeumer.vscode-eslint", "amodio.tsl-problem-matcher"]
|
|
4
|
+
"recommendations": ["dbaeumer.vscode-eslint", "amodio.tsl-problem-matcher", "ms-vscode.extension-test-runner"]
|
|
5
5
|
}
|
|
@@ -32,19 +32,6 @@
|
|
|
32
32
|
],
|
|
33
33
|
"debugWebviews": true,
|
|
34
34
|
"preLaunchTask": "npm: watch"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"name": "Extension Tests",
|
|
38
|
-
"type": "extensionHost",
|
|
39
|
-
"request": "launch",
|
|
40
|
-
"args": [
|
|
41
|
-
"--extensionDevelopmentPath=${workspaceFolder}",
|
|
42
|
-
"--extensionTestsPath=${workspaceFolder}/out/test/suite/index"
|
|
43
|
-
],
|
|
44
|
-
"outFiles": [
|
|
45
|
-
"${workspaceFolder}/out/test/**/*.js"
|
|
46
|
-
],
|
|
47
|
-
"preLaunchTask": "${defaultBuildTask}"
|
|
48
35
|
}
|
|
49
36
|
]
|
|
50
37
|
}
|