From 84ec72d2f1048766755317f6cd0f89e235a90ac3 Mon Sep 17 00:00:00 2001 From: Nikola Hristov Date: Wed, 9 Oct 2024 17:01:52 +0300 Subject: [PATCH] --- .eslint-ignore | 36 -- .lsifrc.json | 2 +- eslint.config.js | 1392 ---------------------------------------------- package.json | 6 +- 4 files changed, 4 insertions(+), 1432 deletions(-) delete mode 100644 .eslint-ignore delete mode 100644 eslint.config.js diff --git a/.eslint-ignore b/.eslint-ignore deleted file mode 100644 index 12da4a432e15d2..00000000000000 --- a/.eslint-ignore +++ /dev/null @@ -1,36 +0,0 @@ -**/build/*/**/*.js -**/dist/**/*.js -**/extensions/**/*.d.ts -**/extensions/**/build/** -**/extensions/**/colorize-fixtures/** -**/extensions/css-language-features/server/test/pathCompletionFixtures/** -**/extensions/html-language-features/server/lib/jquery.d.ts -**/extensions/html-language-features/server/src/test/pathCompletionFixtures/** -**/extensions/ipynb/notebook-out/** -**/extensions/markdown-language-features/media/** -**/extensions/markdown-language-features/notebook-out/** -**/extensions/markdown-math/notebook-out/** -**/extensions/notebook-renderers/renderer-out/index.js -**/extensions/simple-browser/media/index.js -**/extensions/typescript-language-features/test-workspace/** -**/extensions/typescript-language-features/extension.webpack.config.js -**/extensions/typescript-language-features/extension-browser.webpack.config.js -**/extensions/typescript-language-features/package-manager/node-maintainer/** -**/extensions/vscode-api-tests/testWorkspace/** -**/extensions/vscode-api-tests/testWorkspace2/** -**/fixtures/** -**/node_modules/** -**/out-*/**/*.js -**/out-editor-*/** -**/out/**/*.js -**/src/**/dompurify.js -**/src/**/marked.js -**/src/**/semver.js -**/src/typings/**/*.d.ts -**/src/vs/*/**/*.d.ts -**/src/vs/base/test/common/filters.perf.data.js -**/src/vs/loader.js -**/test/unit/assert.js -**/test/automation/out/** -**/typings/** -!.vscode diff --git a/.lsifrc.json b/.lsifrc.json index 5b992e89ca8b2b..61f4d05528712e 100644 --- a/.lsifrc.json +++ b/.lsifrc.json @@ -1,5 +1,5 @@ { - "project": "src/tsconfig.json", + "project": "Source/tsconfig.json", "source": "./package.json", "package": "package.json", "out": "vscode.lsif" diff --git a/eslint.config.js b/eslint.config.js deleted file mode 100644 index 53a377bbde79d0..00000000000000 --- a/eslint.config.js +++ /dev/null @@ -1,1392 +0,0 @@ -/*--------------------------------------------------------------------------------------------- - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - *--------------------------------------------------------------------------------------------*/ -// @ts-check -import fs from 'fs'; -import path from 'path'; -import tseslint from 'typescript-eslint'; -import { fileURLToPath } from 'url'; - -import stylisticTs from '@stylistic/eslint-plugin-ts'; -import pluginLocal from 'eslint-plugin-local'; -import pluginJsdoc from 'eslint-plugin-jsdoc'; - -import pluginHeader from 'eslint-plugin-header'; -pluginHeader.rules.header.meta.schema = false; - -const __dirname = path.dirname(fileURLToPath(import.meta.url)); -const ignores = fs.readFileSync(path.join(__dirname, '.eslint-ignore'), 'utf8') - .toString() - .split(/\r\n|\n/) - .filter(line => line && !line.startsWith('#')); - -export default tseslint.config( - // Global ignores - { - ignores, - }, - // All files (JS and TS) - { - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - 'header': pluginHeader, - }, - rules: { - 'constructor-super': 'warn', - 'curly': 'warn', - 'eqeqeq': 'warn', - 'prefer-const': [ - 'warn', - { - 'destructuring': 'all' - } - ], - 'no-buffer-constructor': 'warn', - 'no-caller': 'warn', - 'no-case-declarations': 'warn', - 'no-debugger': 'warn', - 'no-duplicate-case': 'warn', - 'no-duplicate-imports': 'warn', - 'no-eval': 'warn', - 'no-async-promise-executor': 'warn', - 'no-extra-semi': 'warn', - 'no-new-wrappers': 'warn', - 'no-redeclare': 'off', - 'no-sparse-arrays': 'warn', - 'no-throw-literal': 'warn', - 'no-unsafe-finally': 'warn', - 'no-unused-labels': 'warn', - 'no-misleading-character-class': 'warn', - 'no-restricted-globals': [ - 'warn', - 'name', - 'length', - 'event', - 'closed', - 'external', - 'status', - 'origin', - 'orientation', - 'context' - ], // non-complete list of globals that are easy to access unintentionally - 'no-var': 'warn', - 'semi': 'off', - 'local/code-translation-remind': 'warn', - 'local/code-no-native-private': 'warn', - 'local/code-parameter-properties-must-have-explicit-accessibility': 'warn', - 'local/code-no-nls-in-standalone-editor': 'warn', - 'local/code-no-potentially-unsafe-disposables': 'warn', - 'local/code-no-dangerous-type-assertions': 'warn', - 'local/code-no-standalone-editor': 'warn', - 'local/code-no-unexternalized-strings': 'warn', - 'local/code-must-use-super-dispose': 'warn', - 'local/code-declare-service-brand': 'warn', - 'local/code-layering': [ - 'warn', - { - 'common': [], - 'node': [ - 'common' - ], - 'browser': [ - 'common' - ], - 'electron-sandbox': [ - 'common', - 'browser' - ], - 'electron-utility': [ - 'common', - 'node' - ], - 'electron-main': [ - 'common', - 'node', - 'electron-utility' - ] - } - ], - 'header/header': [ - 2, - 'block', - [ - '---------------------------------------------------------------------------------------------', - ' * Copyright (c) Microsoft Corporation. All rights reserved.', - ' * Licensed under the MIT License. See License.txt in the project root for license information.', - ' *--------------------------------------------------------------------------------------------' - ] - ] - }, - }, - // TS - { - files: [ - '**/*.ts', - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - '@stylistic/ts': stylisticTs, - '@typescript-eslint': tseslint.plugin, - 'local': pluginLocal, - 'jsdoc': pluginJsdoc, - }, - rules: { - '@stylistic/ts/semi': 'warn', - '@stylistic/ts/member-delimiter-style': 'warn', - 'local/code-no-unused-expressions': [ - 'warn', - { - 'allowTernary': true - } - ], - 'jsdoc/no-types': 'warn', - 'local/code-no-static-self-ref': 'warn' - } - }, - // vscode TS - { - files: [ - 'src/**/*.ts', - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - '@typescript-eslint': tseslint.plugin, - }, - rules: { - '@typescript-eslint/naming-convention': [ - 'warn', - { - 'selector': 'class', - 'format': [ - 'PascalCase' - ] - } - ] - } - }, - // Tests - { - files: [ - '**/*.test.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-must-use-super-dispose': 'off', - 'local/code-no-test-only': 'error', - 'local/code-no-test-async-suite': 'warn', - 'local/code-no-unexternalized-strings': 'off', - 'local/code-must-use-result': [ - 'warn', - [ - { - 'message': 'Expression must be awaited', - 'functions': [ - 'assertSnapshot', - 'assertHeap' - ] - } - ] - ] - } - }, - // vscode tests specific rules - { - files: [ - 'src/vs/**/*.test.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-ensure-no-disposables-leak-in-test': [ - 'warn', - { - // Files should (only) be removed from the list they adopt the leak detector - 'exclude': [ - 'src/vs/editor/contrib/codeAction/test/browser/codeActionModel.test.ts', - 'src/vs/platform/configuration/test/common/configuration.test.ts', - 'src/vs/platform/opener/test/common/opener.test.ts', - 'src/vs/platform/registry/test/common/platform.test.ts', - 'src/vs/platform/workspace/test/common/workspace.test.ts', - 'src/vs/platform/workspaces/test/electron-main/workspaces.test.ts', - 'src/vs/workbench/api/test/browser/mainThreadConfiguration.test.ts', - 'src/vs/workbench/api/test/node/extHostTunnelService.test.ts', - 'src/vs/workbench/contrib/bulkEdit/test/browser/bulkCellEdits.test.ts', - 'src/vs/workbench/contrib/chat/test/common/chatWordCounter.test.ts', - 'src/vs/workbench/contrib/editSessions/test/browser/editSessions.test.ts', - 'src/vs/workbench/contrib/extensions/test/common/extensionQuery.test.ts', - 'src/vs/workbench/contrib/notebook/test/browser/notebookExecutionService.test.ts', - 'src/vs/workbench/contrib/notebook/test/browser/notebookExecutionStateService.test.ts', - 'src/vs/workbench/contrib/tasks/test/common/problemMatcher.test.ts', - 'src/vs/workbench/contrib/tasks/test/common/taskConfiguration.test.ts', - 'src/vs/workbench/services/commands/test/common/commandService.test.ts', - 'src/vs/workbench/services/userActivity/test/browser/domActivityTracker.test.ts', - 'src/vs/workbench/test/browser/quickAccess.test.ts' - ] - } - ] - } - }, - // vscode API - { - files: [ - '**/vscode.d.ts', - '**/vscode.proposed.*.d.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/vscode-dts-create-func': 'warn', - 'local/vscode-dts-literal-or-types': 'warn', - 'local/vscode-dts-string-type-literals': 'warn', - 'local/vscode-dts-interface-naming': 'warn', - 'local/vscode-dts-cancellation': 'warn', - 'local/vscode-dts-use-thenable': 'warn', - 'local/vscode-dts-region-comments': 'warn', - 'local/vscode-dts-vscode-in-comments': 'warn', - 'local/vscode-dts-provider-naming': [ - 'warn', - { - 'allowed': [ - 'FileSystemProvider', - 'TreeDataProvider', - 'TestProvider', - 'CustomEditorProvider', - 'CustomReadonlyEditorProvider', - 'TerminalLinkProvider', - 'AuthenticationProvider', - 'NotebookContentProvider' - ] - } - ], - 'local/vscode-dts-event-naming': [ - 'warn', - { - 'allowed': [ - 'onCancellationRequested', - 'event' - ], - 'verbs': [ - 'accept', - 'change', - 'close', - 'collapse', - 'create', - 'delete', - 'discover', - 'dispose', - 'drop', - 'edit', - 'end', - 'execute', - 'expand', - 'grant', - 'hide', - 'invalidate', - 'open', - 'override', - 'perform', - 'receive', - 'register', - 'remove', - 'rename', - 'save', - 'send', - 'start', - 'terminate', - 'trigger', - 'unregister', - 'write' - ] - } - ] - } - }, - // vscode.d.ts - { - files: [ - '**/vscode.d.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - rules: { - 'jsdoc/tag-lines': 'off', - 'jsdoc/valid-types': 'off', - 'jsdoc/no-multi-asterisks': [ - 'warn', - { - 'allowWhitespace': true - } - ], - 'jsdoc/require-jsdoc': [ - 'warn', - { - 'enableFixer': false, - 'contexts': [ - 'TSInterfaceDeclaration', - 'TSPropertySignature', - 'TSMethodSignature', - 'TSDeclareFunction', - 'ClassDeclaration', - 'MethodDefinition', - 'PropertyDeclaration', - 'TSEnumDeclaration', - 'TSEnumMember', - 'ExportNamedDeclaration' - ] - } - ], - 'jsdoc/check-param-names': [ - 'warn', - { - 'enableFixer': false, - 'checkDestructured': false - } - ], - 'jsdoc/require-returns': 'warn' - } - }, - { - files: [ - 'src/**/{common,browser}/**/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-amd-node-module': 'warn' - } - }, - { - files: [ - 'src/**/{browser,electron-sandbox}/**/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-no-global-document-listener': 'warn', - 'no-restricted-syntax': [ - 'warn', - { - 'selector': `BinaryExpression[operator='instanceof'][right.name='MouseEvent']`, - 'message': 'Use DOM.isMouseEvent() to support multi-window scenarios.' - }, - { - 'selector': `BinaryExpression[operator='instanceof'][right.name=/^HTML\\w+/]`, - 'message': 'Use DOM.isHTMLElement() and related methods to support multi-window scenarios.' - }, - { - 'selector': `BinaryExpression[operator='instanceof'][right.name=/^SVG\\w+/]`, - 'message': 'Use DOM.isSVGElement() and related methods to support multi-window scenarios.' - }, - { - 'selector': `BinaryExpression[operator='instanceof'][right.name='KeyboardEvent']`, - 'message': 'Use DOM.isKeyboardEvent() to support multi-window scenarios.' - }, - { - 'selector': `BinaryExpression[operator='instanceof'][right.name='PointerEvent']`, - 'message': 'Use DOM.isPointerEvent() to support multi-window scenarios.' - }, - { - 'selector': `BinaryExpression[operator='instanceof'][right.name='DragEvent']`, - 'message': 'Use DOM.isDragEvent() to support multi-window scenarios.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='activeElement']`, - 'message': 'Use .document.activeElement to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='contains']`, - 'message': 'Use .document.contains to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='styleSheets']`, - 'message': 'Use .document.styleSheets to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='fullscreenElement']`, - 'message': 'Use .document.fullscreenElement to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='body']`, - 'message': 'Use .document.body to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='addEventListener']`, - 'message': 'Use .document.addEventListener to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='removeEventListener']`, - 'message': 'Use .document.removeEventListener to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='hasFocus']`, - 'message': 'Use .document.hasFocus to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='head']`, - 'message': 'Use .document.head to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='exitFullscreen']`, - 'message': 'Use .document.exitFullscreen to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getElementById']`, - 'message': 'Use .document.getElementById to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getElementsByClassName']`, - 'message': 'Use .document.getElementsByClassName to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getElementsByName']`, - 'message': 'Use .document.getElementsByName to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getElementsByTagName']`, - 'message': 'Use .document.getElementsByTagName to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getElementsByTagNameNS']`, - 'message': 'Use .document.getElementsByTagNameNS to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='getSelection']`, - 'message': 'Use .document.getSelection to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='open']`, - 'message': 'Use .document.open to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='close']`, - 'message': 'Use .document.close to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='documentElement']`, - 'message': 'Use .document.documentElement to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='visibilityState']`, - 'message': 'Use .document.visibilityState to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='querySelector']`, - 'message': 'Use .document.querySelector to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='querySelectorAll']`, - 'message': 'Use .document.querySelectorAll to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='elementFromPoint']`, - 'message': 'Use .document.elementFromPoint to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='elementsFromPoint']`, - 'message': 'Use .document.elementsFromPoint to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='onkeydown']`, - 'message': 'Use .document.onkeydown to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='onkeyup']`, - 'message': 'Use .document.onkeyup to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='onmousedown']`, - 'message': 'Use .document.onmousedown to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='onmouseup']`, - 'message': 'Use .document.onmouseup to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'selector': `MemberExpression[object.name='document'][property.name='execCommand']`, - 'message': 'Use .document.execCommand to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - } - ], - 'no-restricted-globals': [ - 'warn', - 'name', - 'length', - 'event', - 'closed', - 'external', - 'status', - 'origin', - 'orientation', - 'context', - { - 'name': 'setInterval', - 'message': 'Use .setInterval to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'clearInterval', - 'message': 'Use .clearInterval to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'requestAnimationFrame', - 'message': 'Use .requestAnimationFrame to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'cancelAnimationFrame', - 'message': 'Use .cancelAnimationFrame to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'requestIdleCallback', - 'message': 'Use .requestIdleCallback to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'cancelIdleCallback', - 'message': 'Use .cancelIdleCallback to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'window', - 'message': 'Use to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'addEventListener', - 'message': 'Use .addEventListener to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'removeEventListener', - 'message': 'Use .removeEventListener to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'getComputedStyle', - 'message': 'Use .getComputedStyle to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'focus', - 'message': 'Use .focus to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'blur', - 'message': 'Use .blur to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'close', - 'message': 'Use .close to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'dispatchEvent', - 'message': 'Use .dispatchEvent to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'getSelection', - 'message': 'Use .getSelection to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'matchMedia', - 'message': 'Use .matchMedia to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'open', - 'message': 'Use .open to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'parent', - 'message': 'Use .parent to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'postMessage', - 'message': 'Use .postMessage to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'devicePixelRatio', - 'message': 'Use .devicePixelRatio to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'frames', - 'message': 'Use .frames to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'frameElement', - 'message': 'Use .frameElement to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'innerHeight', - 'message': 'Use .innerHeight to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'innerWidth', - 'message': 'Use .innerWidth to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'outerHeight', - 'message': 'Use .outerHeight to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'outerWidth', - 'message': 'Use .outerWidth to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'opener', - 'message': 'Use .opener to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'origin', - 'message': 'Use .origin to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'screen', - 'message': 'Use .screen to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'screenLeft', - 'message': 'Use .screenLeft to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'screenTop', - 'message': 'Use .screenTop to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'screenX', - 'message': 'Use .screenX to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'screenY', - 'message': 'Use .screenY to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'scrollX', - 'message': 'Use .scrollX to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'scrollY', - 'message': 'Use .scrollY to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'top', - 'message': 'Use .top to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - }, - { - 'name': 'visualViewport', - 'message': 'Use .visualViewport to support multi-window scenarios. Resolve targetWindow with DOM.getWindow(element) or DOM.getActiveWindow() or use the predefined mainWindow constant.' - } - ] - } - }, - { - files: [ - 'src/**/electron-utility/**/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - rules: { - 'no-restricted-imports': [ - 'warn', - { - 'paths': [ - { - 'name': 'electron', - 'allowImportNames': [ - 'net', - 'system-preferences', - ], - 'message': 'Only net and system-preferences are allowed to be imported from electron' - } - ] - } - ] - } - }, - { - files: [ - 'src/**/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-import-patterns': [ - 'warn', - { - // imports that are allowed in all files of layers: - // - browser - // - electron-sandbox - 'when': 'hasBrowser', - 'allow': [] - }, - { - // imports that are allowed in all files of layers: - // - node - // - electron-utility - // - electron-main - 'when': 'hasNode', - 'allow': [ - '@parcel/watcher', - '@vscode/sqlite3', - '@vscode/vscode-languagedetection', - '@vscode/ripgrep', - '@vscode/iconv-lite-umd', - '@vscode/policy-watcher', - '@vscode/proxy-agent', - '@vscode/spdlog', - '@vscode/windows-process-tree', - 'assert', - 'child_process', - 'console', - 'cookie', - 'crypto', - 'dns', - 'events', - 'fs', - 'fs/promises', - 'http', - 'https', - 'minimist', - 'node:module', - 'native-keymap', - 'native-watchdog', - 'net', - 'node-pty', - 'os', - 'path', - 'perf_hooks', - 'readline', - 'stream', - 'string_decoder', - 'tas-client-umd', - 'tls', - 'url', - 'util', - 'v8-inspect-profiler', - 'vscode-regexpp', - 'vscode-textmate', - 'worker_threads', - '@xterm/addon-clipboard', - '@xterm/addon-image', - '@xterm/addon-search', - '@xterm/addon-serialize', - '@xterm/addon-unicode11', - '@xterm/addon-webgl', - '@xterm/headless', - '@xterm/xterm', - 'yauzl', - 'yazl', - 'zlib' - ] - }, - { - // imports that are allowed in all files of layers: - // - electron-utility - // - electron-main - 'when': 'hasElectron', - 'allow': [ - 'electron' - ] - }, - { - // imports that are allowed in all /test/ files - 'when': 'test', - 'allow': [ - 'assert', - 'sinon', - 'sinon-test' - ] - }, - // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - // !!! Do not relax these rules !!! - // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - // - // A path ending in /~ has a special meaning. It indicates a template position - // which will be substituted with one or more layers. - // - // When /~ is used in the target, the rule will be expanded to 14 distinct rules. - // e.g. 'src/vs/base/~' will be expanded to: - // - src/vs/base/common - // - src/vs/base/worker - // - src/vs/base/browser - // - src/vs/base/electron-sandbox - // - src/vs/base/node - // - src/vs/base/electron-main - // - src/vs/base/test/common - // - src/vs/base/test/worker - // - src/vs/base/test/browser - // - src/vs/base/test/electron-sandbox - // - src/vs/base/test/node - // - src/vs/base/test/electron-main - // - // When /~ is used in the restrictions, it will be replaced with the correct - // layers that can be used e.g. 'src/vs/base/electron-sandbox' will be able - // to import '{common,browser,electron-sanbox}', etc. - // - // It is possible to use /~ in the restrictions property even without using it in - // the target property by adding a layer property. - { - 'target': 'src/vs/base/~', - 'restrictions': [ - 'vs/base/~' - ] - }, - { - 'target': 'src/vs/base/parts/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~' - ] - }, - { - 'target': 'src/vs/platform/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'tas-client-umd', // node module allowed even in /common/ - '@microsoft/1ds-core-js', // node module allowed even in /common/ - '@microsoft/1ds-post-js', // node module allowed even in /common/ - '@xterm/headless' // node module allowed even in /common/ - ] - }, - { - 'target': 'src/vs/editor/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - '@vscode/tree-sitter-wasm' // node module allowed even in /common/ - ] - }, - { - 'target': 'src/vs/editor/contrib/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~' - ] - }, - { - 'target': 'src/vs/editor/standalone/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/standalone/~', - '@vscode/tree-sitter-wasm' // type import - ] - }, - { - 'target': 'src/vs/editor/editor.all.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~' - ] - }, - { - 'target': 'src/vs/editor/editor.worker.ts', - 'layer': 'worker', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~' - ] - }, - { - 'target': 'src/vs/editor/{editor.api.ts,editor.main.ts}', - 'layer': 'browser', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/standalone/~', - 'vs/editor/*' - ] - }, - { - 'target': 'src/vs/workbench/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/workbench/~', - 'vs/workbench/services/*/~', - 'assert', - { - 'when': 'test', - 'pattern': 'vs/workbench/contrib/*/~' - } // TODO@layers - ] - }, - { - 'target': 'src/vs/workbench/api/~', - 'restrictions': [ - 'vscode', - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/workbench/api/~', - 'vs/workbench/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/contrib/terminalContrib/*/~' - ] - }, - { - 'target': 'src/vs/workbench/services/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/workbench/~', - 'vs/workbench/services/*/~', - { - 'when': 'test', - 'pattern': 'vs/workbench/contrib/*/~' - }, // TODO@layers - 'tas-client-umd', // node module allowed even in /common/ - 'vscode-textmate', // node module allowed even in /common/ - '@vscode/vscode-languagedetection', // node module allowed even in /common/ - '@vscode/tree-sitter-wasm', // type import - { - 'when': 'hasBrowser', - 'pattern': '@xterm/xterm' - } // node module allowed even in /browser/ - ] - }, - { - 'target': 'src/vs/workbench/contrib/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/workbench/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/contrib/terminal/terminalContribChatExports*', - 'vs/workbench/contrib/terminal/terminalContribExports*', - 'vscode-notebook-renderer', // Type only import - '@vscode/tree-sitter-wasm', // type import - { - 'when': 'hasBrowser', - 'pattern': '@xterm/xterm' - }, // node module allowed even in /browser/ - { - 'when': 'hasBrowser', - 'pattern': '@xterm/addon-*' - }, // node module allowed even in /browser/ - { - 'when': 'hasBrowser', - 'pattern': 'vscode-textmate' - } // node module allowed even in /browser/ - ] - }, - { - 'target': 'src/vs/workbench/contrib/terminalContrib/*/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/workbench/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - // Only allow terminalContrib to import from itself, this works because - // terminalContrib is one extra folder deep - 'vs/workbench/contrib/terminalContrib/*/~', - 'vscode-notebook-renderer', // Type only import - { - 'when': 'hasBrowser', - 'pattern': '@xterm/xterm' - }, // node module allowed even in /browser/ - { - 'when': 'hasBrowser', - 'pattern': '@xterm/addon-*' - }, // node module allowed even in /browser/ - { - 'when': 'hasBrowser', - 'pattern': 'vscode-textmate' - }, // node module allowed even in /browser/ - '@xterm/headless' // node module allowed even in /common/ and /browser/ - ] - }, - { - 'target': 'src/vs/code/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/code/~', - { - 'when': 'hasBrowser', - 'pattern': 'vs/workbench/workbench.web.main.js' - }, - { - 'when': 'hasBrowser', - 'pattern': 'vs/workbench/workbench.web.main.internal.js' - }, - { - 'when': 'hasBrowser', - 'pattern': 'vs/workbench/~' - }, - { - 'when': 'hasBrowser', - 'pattern': 'vs/workbench/services/*/~' - } - ] - }, - { - 'target': 'src/vs/server/~', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/workbench/~', - 'vs/workbench/api/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/server/~' - ] - }, - { - 'target': 'src/vs/workbench/contrib/terminal/terminal.all.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/workbench/contrib/**' - ] - }, - { - 'target': 'src/vs/workbench/contrib/terminal/terminalContribChatExports.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/workbench/contrib/terminalContrib/*/~' - ] - }, - { - 'target': 'src/vs/workbench/contrib/terminal/terminalContribExports.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/platform/*/~', - 'vs/workbench/contrib/terminalContrib/*/~' - ] - }, - { - 'target': 'src/vs/workbench/workbench.common.main.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/editor.all.js', - 'vs/workbench/~', - 'vs/workbench/api/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/contrib/terminal/terminal.all.js' - ] - }, - { - 'target': 'src/vs/workbench/workbench.web.main.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/editor.all.js', - 'vs/workbench/~', - 'vs/workbench/api/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/workbench.common.main.js' - ] - }, - { - 'target': 'src/vs/workbench/workbench.web.main.internal.ts', - 'layer': 'browser', - 'restrictions': [ - 'vs/base/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/editor.all.js', - 'vs/workbench/~', - 'vs/workbench/api/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/workbench.common.main.js' - ] - }, - { - 'target': 'src/vs/workbench/workbench.desktop.main.ts', - 'layer': 'electron-sandbox', - 'restrictions': [ - 'vs/base/*/~', - 'vs/base/parts/*/~', - 'vs/platform/*/~', - 'vs/editor/~', - 'vs/editor/contrib/*/~', - 'vs/editor/editor.all.js', - 'vs/workbench/~', - 'vs/workbench/api/~', - 'vs/workbench/services/*/~', - 'vs/workbench/contrib/*/~', - 'vs/workbench/workbench.common.main.js' - ] - }, - { - 'target': 'src/vs/amdX.ts', - 'restrictions': [ - 'vs/base/common/*' - ] - }, - { - 'target': 'src/vs/{loader.d.ts,monaco.d.ts,nls.ts,nls.messages.ts}', - 'restrictions': [] - }, - { - 'target': 'src/vscode-dts/**', - 'restrictions': [] - }, - { - 'target': 'src/bootstrap-window.ts', - 'restrictions': [] - }, - { - 'target': 'src/vs/nls.ts', - 'restrictions': [ - 'vs/*' - ] - }, - { - 'target': 'src/{bootstrap-cli.ts,bootstrap-esm.ts,bootstrap-fork.ts,bootstrap-import.ts,bootstrap-meta.ts,bootstrap-node.ts,bootstrap-server.ts,cli.ts,main.ts,server-cli.ts,server-main.ts}', - 'restrictions': [ - 'vs/**/common/*', - 'vs/**/node/*', - 'vs/nls.js', - 'src/*.js', - '*' // node.js - ] - } - ] - } - }, - { - files: [ - 'test/**/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-import-patterns': [ - 'warn', - { - 'target': 'test/smoke/**', - 'restrictions': [ - 'test/automation', - 'test/smoke/**', - '@vscode/*', - '@parcel/*', - '@playwright/*', - '*' // node modules - ] - }, - { - 'target': 'test/automation/**', - 'restrictions': [ - 'test/automation/**', - '@vscode/*', - '@parcel/*', - 'playwright-core/**', - '@playwright/*', - '*' // node modules - ] - }, - { - 'target': 'test/integration/**', - 'restrictions': [ - 'test/integration/**', - '@vscode/*', - '@parcel/*', - '@playwright/*', - '*' // node modules - ] - }, - { - 'target': 'test/monaco/**', - 'restrictions': [ - 'test/monaco/**', - '@vscode/*', - '@parcel/*', - '@playwright/*', - '*' // node modules - ] - } - ] - } - }, - { - files: [ - 'src/vs/workbench/contrib/notebook/browser/view/renderers/*.ts' - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - 'local': pluginLocal, - }, - rules: { - 'local/code-no-runtime-import': [ - 'error', - { - 'src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.ts': [ - '**/*' - ] - } - ], - 'local/code-limited-top-functions': [ - 'error', - { - 'src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.ts': [ - 'webviewPreloads', - 'preloadsScriptStr' - ] - } - ] - } - }, - // Terminal - { - files: [ - 'src/vs/workbench/contrib/terminal/**/*.ts', - 'src/vs/workbench/contrib/terminalContrib/**/*.ts', - ], - languageOptions: { - parser: tseslint.parser, - }, - rules: { - '@typescript-eslint/naming-convention': [ - 'warn', - // variableLike - { 'selector': 'variable', 'format': ['camelCase', 'UPPER_CASE', 'PascalCase'] }, - { 'selector': 'variable', 'filter': '^I.+Service$', 'format': ['PascalCase'], 'prefix': ['I'] }, - // memberLike - { 'selector': 'memberLike', 'modifiers': ['private'], 'format': ['camelCase'], 'leadingUnderscore': 'require' }, - { 'selector': 'memberLike', 'modifiers': ['protected'], 'format': ['camelCase'], 'leadingUnderscore': 'require' }, - { 'selector': 'enumMember', 'format': ['PascalCase'] }, - // memberLike - Allow enum-like objects to use UPPER_CASE - { 'selector': 'method', 'modifiers': ['public'], 'format': ['camelCase', 'UPPER_CASE'] }, - // typeLike - { 'selector': 'typeLike', 'format': ['PascalCase'] }, - { 'selector': 'interface', 'format': ['PascalCase'] } - ], - 'comma-dangle': ['warn', 'only-multiline'] - } - }, - // markdown-language-features - { - files: [ - 'extensions/markdown-language-features/**/*.ts', - ], - languageOptions: { - parser: tseslint.parser, - }, - plugins: { - '@typescript-eslint': tseslint.plugin, - }, - rules: { - '@typescript-eslint/naming-convention': [ - 'warn', - { - 'selector': 'default', - 'modifiers': ['private'], - 'format': null, - 'leadingUnderscore': 'require' - }, - { - 'selector': 'default', - 'modifiers': ['public'], - 'format': null, - 'leadingUnderscore': 'forbid' - } - ] - } - }, - // typescript-language-features - { - files: [ - 'extensions/typescript-language-features/**/*.ts', - ], - languageOptions: { - parser: tseslint.parser, - parserOptions: { - project: [ - 'extensions/typescript-language-features/tsconfig.json', - 'extensions/typescript-language-features/web/tsconfig.json' - ], - } - }, - plugins: { - '@typescript-eslint': tseslint.plugin, - }, - rules: { - '@typescript-eslint/prefer-optional-chain': 'warn', - '@typescript-eslint/prefer-readonly': 'warn', - } - } -); diff --git a/package.json b/package.json index 3b9cca4aae0f11..e733ccb7180585 100644 --- a/package.json +++ b/package.json @@ -118,7 +118,7 @@ "minify-vscode": "node ./node_modules/gulp/bin/gulp.js minify-vscode", "minify-vscode-reh": "node ./node_modules/gulp/bin/gulp.js minify-vscode-reh", "minify-vscode-reh-web": "node ./node_modules/gulp/bin/gulp.js minify-vscode-reh-web", - "monaco-compile-check": "tsc -p src/tsconfig.monaco.json --noEmit", + "monaco-compile-check": "tsc -p Source/tsconfig.monaco.json --noEmit", "perf": "node scripts/code-perf.js", "playwright-install": "npm exec playwright install", "precommit": "node build/hygiene.js", @@ -131,13 +131,13 @@ "test-browser-no-install": "node test/unit/browser/index.js", "test-extension": "vscode-test", "test-node": "mocha test/unit/node/index.js --delay --ui=tdd --timeout=5000 --exit", - "tsec-compile-check": "node node_modules/tsec/bin/tsec -p src/tsconfig.tsec.json", + "tsec-compile-check": "node node_modules/tsec/bin/tsec -p Source/tsconfig.tsec.json", "update-build-ts-version": "npm install typescript@next && tsc -p ./build/tsconfig.build.json", "update-distro": "node build/npm/update-distro.mjs", "update-grammars": "node build/npm/update-all-grammars.mjs", "update-localization-extension": "node build/npm/update-localization-extension.js", "valid-layers-check": "node build/lib/layersChecker.js", - "vscode-dts-compile-check": "tsc -p src/tsconfig.vscode-dts.json && tsc -p src/tsconfig.vscode-proposed-dts.json", + "vscode-dts-compile-check": "tsc -p Source/tsconfig.vscode-dts.json && tsc -p Source/tsconfig.vscode-proposed-dts.json", "watch-cli": "node ./node_modules/gulp/bin/gulp.js watch-cli", "watch-client": "node --max-old-space-size=8192 ./node_modules/gulp/bin/gulp.js watch-client", "watch-clientd": "deemon npm run watch-client",