@seleniumhq/code-export-csharp-nunit 3.17.2 → 4.0.0-alpha.0

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/hook.js CHANGED
@@ -1,12 +1,4 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.generateHooks = generateHooks;
7
-
8
- var _sideUtils = require("@seleniumhq/side-utils");
9
-
10
2
  // Licensed to the Software Freedom Conservancy (SFC) under one
11
3
  // or more contributor license agreements. See the NOTICE file
12
4
  // distributed with this work for additional information
@@ -23,194 +15,120 @@ var _sideUtils = require("@seleniumhq/side-utils");
23
15
  // KIND, either express or implied. See the License for the
24
16
  // specific language governing permissions and limitations
25
17
  // under the License.
18
+ Object.defineProperty(exports, "__esModule", { value: true });
26
19
  const emitters = {
27
- afterAll,
28
- afterEach,
29
- beforeAll,
30
- beforeEach,
31
- declareDependencies,
32
- declareMethods: empty,
33
- declareVariables,
34
- inEachBegin: empty,
35
- inEachEnd: empty
20
+ afterAll,
21
+ afterEach,
22
+ beforeAll,
23
+ beforeEach,
24
+ declareDependencies,
25
+ declareVariables,
36
26
  };
37
-
38
- function generate(hookName) {
39
- return new _sideUtils.codeExport.hook(emitters[hookName]());
40
- }
41
-
42
- function generateHooks() {
43
- let result = {};
44
- Object.keys(emitters).forEach(hookName => {
45
- result[hookName] = generate(hookName);
46
- });
47
- return result;
48
- }
49
-
27
+ exports.default = emitters;
50
28
  function afterAll() {
51
- const params = {
52
- startingSyntax: {
53
- commands: [{
54
- level: 0,
55
- statement: '[OneTimeTearDown]'
56
- }, {
57
- level: 0,
58
- statement: 'public void FinalTearDown() {'
59
- }]
60
- },
61
- endingSyntax: {
62
- commands: [{
63
- level: 0,
64
- statement: '}'
65
- }]
66
- },
67
- registrationLevel: 1
68
- };
69
- return params;
29
+ const params = {
30
+ startingSyntax: {
31
+ commands: [
32
+ { level: 0, statement: '[OneTimeTearDown]' },
33
+ { level: 0, statement: 'public void FinalTearDown() {' },
34
+ ],
35
+ },
36
+ endingSyntax: {
37
+ commands: [{ level: 0, statement: '}' }],
38
+ },
39
+ registrationLevel: 1,
40
+ };
41
+ return params;
70
42
  }
71
-
72
43
  function afterEach() {
73
- const params = {
74
- startingSyntax: {
75
- commands: [{
76
- level: 0,
77
- statement: '[TearDown]'
78
- }, {
79
- level: 0,
80
- statement: 'protected void TearDown() {'
81
- }, {
82
- level: 1,
83
- statement: 'driver.Quit();'
84
- }]
85
- },
86
- endingSyntax: {
87
- commands: [{
88
- level: 0,
89
- statement: '}'
90
- }]
91
- }
92
- };
93
- return params;
44
+ const params = {
45
+ startingSyntax: {
46
+ commands: [
47
+ { level: 0, statement: '[TearDown]' },
48
+ { level: 0, statement: 'protected void TearDown() {' },
49
+ { level: 1, statement: 'driver.Quit();' },
50
+ ],
51
+ },
52
+ endingSyntax: {
53
+ commands: [{ level: 0, statement: '}' }],
54
+ },
55
+ };
56
+ return params;
94
57
  }
95
-
96
58
  function beforeAll() {
97
- const params = {
98
- startingSyntax: {
99
- commands: [{
100
- level: 0,
101
- statement: '[OneTimeSetUp]'
102
- }, {
103
- level: 0,
104
- statement: 'public void InitialSetUp() {'
105
- }]
106
- },
107
- endingSyntax: {
108
- commands: [{
109
- level: 0,
110
- statement: '}'
111
- }]
112
- },
113
- registrationLevel: 1
114
- };
115
- return params;
59
+ const params = {
60
+ startingSyntax: {
61
+ commands: [
62
+ { level: 0, statement: '[OneTimeSetUp]' },
63
+ { level: 0, statement: 'public void InitialSetUp() {' },
64
+ ],
65
+ },
66
+ endingSyntax: {
67
+ commands: [{ level: 0, statement: '}' }],
68
+ },
69
+ registrationLevel: 1,
70
+ };
71
+ return params;
116
72
  }
117
-
118
73
  function beforeEach() {
119
- const params = {
120
- startingSyntax: ({
121
- browserName,
122
- gridUrl
123
- } = {}) => ({
124
- commands: [{
125
- level: 0,
126
- statement: '[SetUp]'
127
- }, {
128
- level: 0,
129
- statement: 'public void SetUp() {'
130
- }, {
131
- level: 1,
132
- statement: gridUrl ? `driver = new RemoteWebDriver(new Uri("${gridUrl}"), new ${browserName ? browserName : 'Chrome'}Options().ToCapabilities());` : `driver = new ${browserName ? browserName : 'Chrome'}Driver();`
133
- }, {
134
- level: 1,
135
- statement: 'js = (IJavaScriptExecutor)driver;'
136
- }, {
137
- level: 1,
138
- statement: 'vars = new Dictionary<string, object>();'
139
- }]
140
- }),
141
- endingSyntax: {
142
- commands: [{
143
- level: 0,
144
- statement: '}'
145
- }]
146
- }
147
- };
148
- return params;
74
+ const params = {
75
+ startingSyntax: ({ browserName, gridUrl } = { browserName: '', gridUrl: '' }) => ({
76
+ commands: [
77
+ { level: 0, statement: '[SetUp]' },
78
+ { level: 0, statement: 'public void SetUp() {' },
79
+ {
80
+ level: 1,
81
+ statement: gridUrl
82
+ ? `driver = new RemoteWebDriver(new Uri("${gridUrl}"), new ${browserName ? browserName : 'Chrome'}Options().ToCapabilities());`
83
+ : `driver = new ${browserName ? browserName : 'Chrome'}Driver();`,
84
+ },
85
+ { level: 1, statement: 'js = (IJavaScriptExecutor)driver;' },
86
+ {
87
+ level: 1,
88
+ statement: 'vars = new Dictionary<string, object>();',
89
+ },
90
+ ],
91
+ }),
92
+ endingSyntax: {
93
+ commands: [{ level: 0, statement: '}' }],
94
+ },
95
+ };
96
+ return params;
149
97
  }
150
-
151
98
  function declareDependencies() {
152
- const params = {
153
- startingSyntax: {
154
- commands: [{
155
- level: 0,
156
- statement: 'using System;'
157
- }, {
158
- level: 0,
159
- statement: 'using System.Collections;'
160
- }, {
161
- level: 0,
162
- statement: 'using System.Collections.Generic;'
163
- }, {
164
- level: 0,
165
- statement: 'using System.Linq;'
166
- }, {
167
- level: 0,
168
- statement: 'using System.Threading;'
169
- }, {
170
- level: 0,
171
- statement: 'using OpenQA.Selenium;'
172
- }, {
173
- level: 0,
174
- statement: 'using OpenQA.Selenium.Chrome;'
175
- }, {
176
- level: 0,
177
- statement: 'using OpenQA.Selenium.Firefox;'
178
- }, {
179
- level: 0,
180
- statement: `using OpenQA.Selenium.Remote;`
181
- }, {
182
- level: 0,
183
- statement: 'using OpenQA.Selenium.Support.UI;'
184
- }, {
185
- level: 0,
186
- statement: 'using OpenQA.Selenium.Interactions;'
187
- }, {
188
- level: 0,
189
- statement: 'using NUnit.Framework;'
190
- }]
191
- }
192
- };
193
- return params;
99
+ const params = {
100
+ startingSyntax: {
101
+ commands: [
102
+ { level: 0, statement: 'using System;' },
103
+ { level: 0, statement: 'using System.Collections;' },
104
+ { level: 0, statement: 'using System.Collections.Generic;' },
105
+ { level: 0, statement: 'using System.Linq;' },
106
+ { level: 0, statement: 'using System.Threading;' },
107
+ { level: 0, statement: 'using OpenQA.Selenium;' },
108
+ { level: 0, statement: 'using OpenQA.Selenium.Chrome;' },
109
+ { level: 0, statement: 'using OpenQA.Selenium.Firefox;' },
110
+ { level: 0, statement: `using OpenQA.Selenium.Remote;` },
111
+ { level: 0, statement: 'using OpenQA.Selenium.Support.UI;' },
112
+ { level: 0, statement: 'using OpenQA.Selenium.Interactions;' },
113
+ { level: 0, statement: 'using NUnit.Framework;' },
114
+ ],
115
+ },
116
+ };
117
+ return params;
194
118
  }
195
-
196
119
  function declareVariables() {
197
- const params = {
198
- startingSyntax: {
199
- commands: [{
200
- level: 0,
201
- statement: 'private IWebDriver driver;'
202
- }, {
203
- level: 0,
204
- statement: 'public IDictionary<string, object> vars {get; private set;}'
205
- }, {
206
- level: 0,
207
- statement: 'private IJavaScriptExecutor js;'
208
- }]
209
- }
210
- };
211
- return params;
120
+ const params = {
121
+ startingSyntax: {
122
+ commands: [
123
+ { level: 0, statement: 'private IWebDriver driver;' },
124
+ {
125
+ level: 0,
126
+ statement: 'public IDictionary<string, object> vars {get; private set;}',
127
+ },
128
+ { level: 0, statement: 'private IJavaScriptExecutor js;' },
129
+ ],
130
+ },
131
+ };
132
+ return params;
212
133
  }
213
-
214
- function empty() {
215
- return {};
216
- }
134
+ //# sourceMappingURL=hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { LanguageEmitter, LanguageEmitterOpts } from '@seleniumhq/side-code-export';
2
+ export declare const displayName = "C# NUnit";
3
+ export declare const opts: LanguageEmitterOpts;
4
+ declare const language: LanguageEmitter;
5
+ export default language;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAGL,eAAe,EACf,mBAAmB,EACpB,MAAM,8BAA8B,CAAA;AAMrC,eAAO,MAAM,WAAW,aAAa,CAAA;AAErC,eAAO,MAAM,IAAI,EAAE,mBA2BlB,CAAA;AAKD,QAAA,MAAM,QAAQ,EAAE,eA2Ef,CAAA;AAED,eAAe,QAAQ,CAAA"}
package/dist/index.js CHANGED
@@ -1,138 +1,116 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.emitTest = emitTest;
7
- exports.emitSuite = emitSuite;
8
- exports.default = exports.opts = exports.displayName = void 0;
9
-
10
- var _sideUtils = require("@seleniumhq/side-utils");
11
-
12
- var _command = _interopRequireDefault(require("./command"));
13
-
14
- var _codeExportCsharpCommons = require("@seleniumhq/code-export-csharp-commons");
15
-
16
- var _hook = require("./hook");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- function _objectSpread2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
21
-
22
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
-
2
+ // Licensed to the Software Freedom Conservancy (SFC) under one
3
+ // or more contributor license agreements. See the NOTICE file
4
+ // distributed with this work for additional information
5
+ // regarding copyright ownership. The SFC licenses this file
6
+ // to you under the Apache License, Version 2.0 (the
7
+ // "License"); you may not use this file except in compliance
8
+ // with the License. You may obtain a copy of the License at
9
+ //
10
+ // http://www.apache.org/licenses/LICENSE-2.0
11
+ //
12
+ // Unless required by applicable law or agreed to in writing,
13
+ // software distributed under the License is distributed on an
14
+ // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ // KIND, either express or implied. See the License for the
16
+ // specific language governing permissions and limitations
17
+ // under the License.
18
+ var __importDefault = (this && this.__importDefault) || function (mod) {
19
+ return (mod && mod.__esModule) ? mod : { "default": mod };
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.opts = exports.displayName = void 0;
23
+ const side_code_export_1 = require("@seleniumhq/side-code-export");
24
+ const command_1 = __importDefault(require("./command"));
25
+ const code_export_csharp_commons_1 = require("@seleniumhq/code-export-csharp-commons");
26
+ const hook_1 = __importDefault(require("./hook"));
24
27
  // Define language options
25
- const displayName = 'C# NUnit';
26
- exports.displayName = displayName;
27
- let opts = {};
28
- exports.opts = opts;
29
- opts.emitter = _command.default;
30
- opts.hooks = (0, _hook.generateHooks)();
31
- opts.fileExtension = '.cs';
32
- opts.commandPrefixPadding = ' ';
33
- opts.terminatingKeyword = '}';
34
- opts.commentPrefix = '//';
35
- opts.generateMethodDeclaration = generateMethodDeclaration; // Create generators for dynamic string creation of primary entities (e.g., filename, methods, test, and suite)
36
-
37
- function generateTestDeclaration(name) {
38
- return `[Test]\npublic void ${_sideUtils.codeExport.parsers.uncapitalize(_sideUtils.codeExport.parsers.sanitizeName(name))}() {`;
39
- }
40
-
41
- function generateMethodDeclaration(name) {
42
- return `public void ${_sideUtils.codeExport.parsers.sanitizeName(name)}() {`;
43
- }
44
-
45
- function generateSuiteDeclaration(name) {
46
- return `[TestFixture]\npublic class ${_sideUtils.codeExport.parsers.capitalize(_sideUtils.codeExport.parsers.sanitizeName(name))}Test {`;
47
- }
48
-
49
- function generateFilename(name) {
50
- return `${_sideUtils.codeExport.parsers.capitalize(_sideUtils.codeExport.parsers.sanitizeName(name))}Test${opts.fileExtension}`;
51
- } // Emit an individual test, wrapped in a suite (using the test name as the suite name)
52
-
53
-
54
- async function emitTest({
55
- baseUrl,
56
- test,
57
- tests,
58
- project,
59
- enableOriginTracing,
60
- beforeEachOptions,
61
- enableDescriptionAsComment
62
- }) {
63
- global.baseUrl = baseUrl;
64
- const testDeclaration = generateTestDeclaration(test.name);
65
- const result = await _sideUtils.codeExport.emit.test(test, tests, _objectSpread2({}, opts, {
66
- testDeclaration,
67
- enableOriginTracing,
68
- enableDescriptionAsComment,
69
- project
70
- }));
71
- const suiteName = test.name;
72
- const suiteDeclaration = generateSuiteDeclaration(suiteName);
73
-
74
- const _suite = await _sideUtils.codeExport.emit.suite(result, tests, _objectSpread2({}, opts, {
75
- suiteDeclaration,
76
- suiteName,
77
- project,
78
- beforeEachOptions
79
- }));
80
-
81
- return {
82
- filename: generateFilename(test.name),
83
- body: _sideUtils.codeExport.emit.orderedSuite(_suite)
84
- };
85
- } // Emit a suite with all of its tests
86
-
87
-
88
- async function emitSuite({
89
- baseUrl,
90
- suite,
91
- tests,
92
- project,
93
- enableOriginTracing,
94
- beforeEachOptions,
95
- enableDescriptionAsComment
96
- }) {
97
- global.baseUrl = baseUrl;
98
- const result = await _sideUtils.codeExport.emit.testsFromSuite(tests, suite, opts, {
99
- enableOriginTracing,
100
- enableDescriptionAsComment,
101
- generateTestDeclaration,
102
- project
103
- });
104
- const suiteDeclaration = generateSuiteDeclaration(suite.name);
105
-
106
- const _suite = await _sideUtils.codeExport.emit.suite(result, tests, _objectSpread2({}, opts, {
107
- suiteDeclaration,
108
- suite,
109
- project,
110
- beforeEachOptions
111
- }));
112
-
113
- return {
114
- filename: generateFilename(suite.name),
115
- body: _sideUtils.codeExport.emit.orderedSuite(_suite)
116
- };
117
- }
118
-
119
- var _default = {
120
- emit: {
121
- test: emitTest,
122
- suite: emitSuite,
123
- locator: _codeExportCsharpCommons.location.emit,
124
- command: _command.default.emit
125
- },
126
- register: {
127
- command: _command.default.register,
128
- variable: opts.hooks.declareVariables.register,
129
- dependency: opts.hooks.declareDependencies.register,
130
- beforeAll: opts.hooks.beforeAll.register,
131
- beforeEach: opts.hooks.beforeEach.register,
132
- afterEach: opts.hooks.afterEach.register,
133
- afterAll: opts.hooks.afterAll.register,
134
- inEachBegin: opts.hooks.inEachBegin.register,
135
- inEachEnd: opts.hooks.inEachEnd.register
136
- }
28
+ exports.displayName = 'C# NUnit';
29
+ exports.opts = {
30
+ displayName: exports.displayName,
31
+ name: 'csharp-nunit',
32
+ emitter: command_1.default,
33
+ hooks: (0, side_code_export_1.generateHooks)(hook_1.default),
34
+ fileExtension: '.cs',
35
+ commandPrefixPadding: ' ',
36
+ terminatingKeyword: '}',
37
+ commentPrefix: '//',
38
+ generateFilename: (name) => {
39
+ return `${side_code_export_1.codeExport.parsers.capitalize(side_code_export_1.codeExport.parsers.sanitizeName(name))}Test${exports.opts.fileExtension}`;
40
+ },
41
+ generateMethodDeclaration: (name) => {
42
+ return `public void ${side_code_export_1.codeExport.parsers.sanitizeName(name)}() {`;
43
+ },
44
+ generateTestDeclaration: (name) => {
45
+ return `[Test]\npublic void ${side_code_export_1.codeExport.parsers.uncapitalize(side_code_export_1.codeExport.parsers.sanitizeName(name))}() {`;
46
+ },
47
+ generateSuiteDeclaration: (name) => {
48
+ return `[TestFixture]\npublic class ${side_code_export_1.codeExport.parsers.capitalize(side_code_export_1.codeExport.parsers.sanitizeName(name))}Test {`;
49
+ },
50
+ };
51
+ // Create generators for dynamic string creation of primary entities (e.g., filename, methods, test, and suite)
52
+ // Emit an individual test, wrapped in a suite (using the test name as the suite name)
53
+ const language = {
54
+ emit: {
55
+ test: async function emitTest({ test, tests, project, enableOriginTracing, beforeEachOptions, enableDescriptionAsComment, }) {
56
+ const testDeclaration = exports.opts.generateTestDeclaration(test.name);
57
+ const result = await side_code_export_1.codeExport.emit.test(test, tests, {
58
+ ...exports.opts,
59
+ testDeclaration,
60
+ enableOriginTracing,
61
+ enableDescriptionAsComment,
62
+ project,
63
+ });
64
+ const suiteName = test.name;
65
+ const suiteDeclaration = exports.opts.generateSuiteDeclaration(suiteName);
66
+ const _suite = await side_code_export_1.codeExport.emit.suite(result, tests, {
67
+ ...exports.opts,
68
+ suiteDeclaration,
69
+ suiteName,
70
+ project,
71
+ beforeEachOptions,
72
+ });
73
+ return {
74
+ filename: exports.opts.generateFilename(test.name),
75
+ body: side_code_export_1.codeExport.emit.orderedSuite(_suite),
76
+ };
77
+ },
78
+ suite: async function emitSuite({ suite, tests, project, enableOriginTracing, beforeEachOptions, enableDescriptionAsComment, }) {
79
+ const result = await side_code_export_1.codeExport.emit.testsFromSuite(tests, suite, exports.opts, {
80
+ enableOriginTracing,
81
+ enableDescriptionAsComment,
82
+ generateTestDeclaration: exports.opts.generateTestDeclaration,
83
+ project,
84
+ });
85
+ const suiteDeclaration = exports.opts.generateSuiteDeclaration(suite.name);
86
+ const _suite = await side_code_export_1.codeExport.emit.suite(result, tests, {
87
+ ...exports.opts,
88
+ suiteDeclaration,
89
+ suite,
90
+ suiteName: suite.name,
91
+ project,
92
+ beforeEachOptions,
93
+ });
94
+ return {
95
+ filename: exports.opts.generateFilename(suite.name),
96
+ body: side_code_export_1.codeExport.emit.orderedSuite(_suite),
97
+ };
98
+ },
99
+ locator: code_export_csharp_commons_1.location.emit,
100
+ command: command_1.default.emit,
101
+ },
102
+ opts: exports.opts,
103
+ register: {
104
+ command: command_1.default.register,
105
+ variable: exports.opts.hooks.declareVariables.register,
106
+ dependency: exports.opts.hooks.declareDependencies.register,
107
+ beforeAll: exports.opts.hooks.beforeAll.register,
108
+ beforeEach: exports.opts.hooks.beforeEach.register,
109
+ afterEach: exports.opts.hooks.afterEach.register,
110
+ afterAll: exports.opts.hooks.afterAll.register,
111
+ inEachBegin: exports.opts.hooks.inEachBegin.register,
112
+ inEachEnd: exports.opts.hooks.inEachEnd.register,
113
+ },
137
114
  };
138
- exports.default = _default;
115
+ exports.default = language;
116
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seleniumhq/code-export-csharp-nunit",
3
- "version": "3.17.2",
3
+ "version": "4.0.0-alpha.0",
4
4
  "description": "Export Selenium IDE project contents to C# NUnit",
5
5
  "repository": "https://github.com/SeleniumHQ/selenium-ide",
6
6
  "keywords": [
@@ -9,19 +9,16 @@
9
9
  "export"
10
10
  ],
11
11
  "license": "Apache-2.0",
12
- "private": false,
13
- "scripts": {
14
- "build": "babel -d dist src --ignore=__test__",
15
- "watch": "yarn build -w"
16
- },
17
12
  "main": "dist/index.js",
18
- "devDependencies": {
19
- "@babel/cli": "^7.4.4",
20
- "@babel/plugin-proposal-object-rest-spread": "^7.4.4",
21
- "@babel/preset-env": "^7.4.5"
22
- },
13
+ "types": "dist/index.d.ts",
23
14
  "dependencies": {
24
- "@seleniumhq/code-export-csharp-commons": "^3.17.2",
25
- "@seleniumhq/side-utils": "^3.17.2"
15
+ "@seleniumhq/code-export-csharp-commons": "^4.0.0-alpha.0",
16
+ "@seleniumhq/side-code-export": "^4.0.0-alpha.2"
17
+ },
18
+ "gitHead": "f58e327e7616e23a3e926e4b80cf9952164e5744",
19
+ "scripts": {
20
+ "build": "tsc",
21
+ "clean": "rm -rf dist tsconfig.tsbuildinfo node_modules",
22
+ "watch": "tsc --watch"
26
23
  }
27
- }
24
+ }