升级dev下的typescript-5.3.0、@types/wicg-file-system-access,@typescript-eslint/eslint-plugin,@typescript-eslint/parser,以及修改相关的适配.

This commit is contained in:
wangpenglong 2023-11-01 16:38:29 +08:00 committed by chriswang521
parent 6fb0f62d4d
commit 6f3405ef1c
37 changed files with 235 additions and 176 deletions

View File

@ -4,7 +4,7 @@
"license": "MIT",
"description": "Dependencies shared by all extensions",
"dependencies": {
"typescript": "4.7.3"
"typescript": "^5.2.2"
},
"scripts": {
"postinstall": "node ./postinstall.mjs"

View File

@ -270,7 +270,7 @@ class TreeInputHistory implements vscode.TreeDataProvider<HistoryItem>{
vscode.commands.registerCommand('_references-view.showHistoryItem', async (item) => {
if (item instanceof HistoryItem) {
const position = item.anchor.guessedTrackedPosition() ?? item.input.location.range.start;
return vscode.commands.executeCommand('vscode.open', item.input.location.uri, { selection: new vscode.Range(position, position) });
await vscode.commands.executeCommand('vscode.open', item.input.location.uri, { selection: new vscode.Range(position, position) });
}
}),
vscode.commands.registerCommand('references-view.pickFromHistory', async () => {

View File

@ -521,7 +521,7 @@ class MyCompletionItem extends vscode.CompletionItem {
}
}
function getScriptKindDetails(tsEntry: protocol.CompletionEntry,): string | undefined {
function getScriptKindDetails(tsEntry: Proto.CompletionEntry,): string | undefined {
if (!tsEntry.kindModifiers || tsEntry.kind !== PConst.Kind.script) {
return;
}

View File

@ -1,13 +1,18 @@
import * as Proto from 'typescript/lib/protocol';
export = Proto;
import * as ts from 'typescript/lib/tsserverlibrary';
export = ts.server.protocol;
declare enum ServerType {
Syntax = 'syntax',
Semantic = 'semantic',
}
declare module 'typescript/lib/protocol' {
declare module 'typescript/lib/tsserverlibrary' {
namespace server.protocol {
type TextInsertion = ts.TextInsertion;
type ScriptElementKind = ts.ScriptElementKind;
interface Response {
readonly _serverType?: ServerType;
}
}
}

View File

@ -5,7 +5,7 @@
import * as assert from 'assert';
import 'mocha';
import { SymbolDisplayPart } from 'typescript/lib/protocol';
import { SymbolDisplayPart } from '../../protocol';
import { Uri } from 'vscode';
import { IFilePathToResourceConverter, markdownDocumentation, plainWithLinks, tagsMarkdownPreview } from '../../utils/previewer';

View File

@ -5,6 +5,7 @@
import * as vscode from 'vscode';
import * as objects from '../utils/objects';
import type * as Proto from '../protocol';
export enum TsServerLogLevel {
Off,
@ -112,7 +113,7 @@ export interface TypeScriptServiceConfiguration {
readonly enableProjectDiagnostics: boolean;
readonly maxTsServerMemory: number;
readonly enablePromptUseWorkspaceTsdk: boolean;
readonly watchOptions: protocol.WatchOptions | undefined;
readonly watchOptions: Proto.WatchOptions | undefined;
readonly includePackageJsonAutoImports: 'auto' | 'on' | 'off' | undefined;
readonly enableTsServerTracing: boolean;
}
@ -196,8 +197,8 @@ export abstract class BaseServiceConfigurationProvider implements ServiceConfigu
return configuration.get<boolean>('typescript.tsserver.experimental.enableProjectDiagnostics', false);
}
protected readWatchOptions(configuration: vscode.WorkspaceConfiguration): protocol.WatchOptions | undefined {
return configuration.get<protocol.WatchOptions>('typescript.tsserver.watchOptions');
protected readWatchOptions(configuration: vscode.WorkspaceConfiguration): Proto.WatchOptions | undefined {
return configuration.get<Proto.WatchOptions>('typescript.tsserver.watchOptions');
}
protected readIncludePackageJsonAutoImports(configuration: vscode.WorkspaceConfiguration): 'auto' | 'on' | 'off' | undefined {

View File

@ -163,7 +163,7 @@ export async function openProjectConfigForFile(
return;
}
let res: ServerResponse.Response<protocol.ProjectInfoResponse> | undefined;
let res: ServerResponse.Response<Proto.ProjectInfoResponse> | undefined;
try {
res = await client.execute('projectInfo', { file, needFileNameList: false }, nulToken);
} catch {

View File

@ -42,10 +42,10 @@ node-gyp-build@^4.3.0:
resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3"
integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==
typescript@4.7.3:
version "4.7.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.3.tgz#8364b502d5257b540f9de4c40be84c98e23a129d"
integrity sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==
typescript@^5.2.2:
version "5.2.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78"
integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==
vscode-grammar-updater@^1.1.0:
version "1.1.0"

View File

@ -116,15 +116,15 @@
"@types/trusted-types": "^1.0.6",
"@types/vscode-notebook-renderer": "^1.60.0",
"@types/webpack": "^5.28.1",
"@types/wicg-file-system-access": "^2020.9.5",
"@types/wicg-file-system-access": "^2020.9.6",
"@types/windows-foreground-love": "^0.3.0",
"@types/windows-mutex": "^0.4.0",
"@types/windows-process-tree": "^0.2.0",
"@types/winreg": "^1.2.30",
"@types/yauzl": "^2.9.1",
"@types/yazl": "^2.4.2",
"@typescript-eslint/eslint-plugin": "^5.10.0",
"@typescript-eslint/parser": "^5.10.0",
"@typescript-eslint/eslint-plugin": "^5.57.0",
"@typescript-eslint/parser": "^5.57.0",
"@vscode/telemetry-extractor": "^1.9.6",
"@vscode/test-web": "^0.0.22",
"ansi-colors": "^3.2.3",
@ -201,7 +201,7 @@
"style-loader": "^3.3.2",
"ts-loader": "^9.4.2",
"tsec": "0.1.4",
"typescript": "^4.8.0-dev.20220518",
"typescript": "^5.3.0-dev.20230919",
"typescript-formatter": "7.1.0",
"underscore": "^1.12.1",
"util": "^0.12.4",

View File

@ -31,7 +31,7 @@ export interface IAction extends IDisposable {
class: string | undefined;
enabled: boolean;
checked?: boolean;
run(event?: unknown): unknown;
run(...args: unknown[]): unknown;
}
export interface IActionRunner extends IDisposable {

View File

@ -336,7 +336,7 @@ suite('Splitview', () => {
const viewContainers = container.querySelectorAll('.split-view-view');
assert.strictEqual(viewContainers.length, 2, 'there are two view containers');
assert.strictEqual((viewContainers.item(0) as HTMLElement).style.height, '66px', 'second view container is 66px');
assert.strictEqual((viewContainers.item(1) as HTMLElement).style.height, `${986 - 66}px`, 'first view container is 66px');
assert.strictEqual<string>((viewContainers.item(1) as HTMLElement).style.height, `${986 - 66}px`, 'first view container is 66px');
splitview.dispose();
view2.dispose();

View File

@ -207,7 +207,7 @@ export class IndentGuidesOverlay extends DynamicViewOverlay {
const bracketGuidesInLine = bracketGuides ? bracketGuides[lineNumber - visibleStartLineNumber] : [];
const bracketGuidesInLineQueue = new ArrayQueue(bracketGuidesInLine);
const indentGuidesInLine = indentGuides ? indentGuides[lineNumber - visibleStartLineNumber] : [];
const indentGuidesInLine = indentGuides ? indentGuides[lineNumber - visibleStartLineNumber] : 0;
for (let indentLvl = 1; indentLvl <= indentGuidesInLine; indentLvl++) {
const indentGuide = (indentLvl - 1) * indentSize + 1;

View File

@ -385,6 +385,8 @@ export const enum CompletionItemTag {
}
export const enum CompletionItemInsertTextRule {
None = 0,
/**
* Adjust whitespace/indentation of multiline insert texts to
* match the current line indentation.

View File

@ -200,10 +200,7 @@ export class ModelService extends Disposable implements IModelService {
if (config.editor && typeof config.editor.indentSize !== 'undefined' && config.editor.indentSize !== 'tabSize') {
const parsedIndentSize = parseInt(config.editor.indentSize, 10);
if (!isNaN(parsedIndentSize)) {
indentSize = parsedIndentSize;
}
if (indentSize < 1) {
indentSize = 1;
indentSize = Math.max(parsedIndentSize, 1);
}
}

View File

@ -16,6 +16,7 @@ export enum AccessibilitySupport {
}
export enum CompletionItemInsertTextRule {
None = 0,
/**
* Adjust whitespace/indentation of multiline insert texts to
* match the current line indentation.
@ -539,28 +540,28 @@ export enum KeyCode {
* Either the angle bracket key or the backslash key on the RT 102-key keyboard.
*/
IntlBackslash = 92,
Numpad0 = 93,
Numpad1 = 94,
Numpad2 = 95,
Numpad3 = 96,
Numpad4 = 97,
Numpad5 = 98,
Numpad6 = 99,
Numpad7 = 100,
Numpad8 = 101,
Numpad9 = 102,
NumpadMultiply = 103,
NumpadAdd = 104,
NUMPAD_SEPARATOR = 105,
NumpadSubtract = 106,
NumpadDecimal = 107,
NumpadDivide = 108,
Numpad0 = 93,// VK_NUMPAD0, 0x60, Numeric keypad 0 key
Numpad1 = 94,// VK_NUMPAD1, 0x61, Numeric keypad 1 key
Numpad2 = 95,// VK_NUMPAD2, 0x62, Numeric keypad 2 key
Numpad3 = 96,// VK_NUMPAD3, 0x63, Numeric keypad 3 key
Numpad4 = 97,// VK_NUMPAD4, 0x64, Numeric keypad 4 key
Numpad5 = 98,// VK_NUMPAD5, 0x65, Numeric keypad 5 key
Numpad6 = 99,// VK_NUMPAD6, 0x66, Numeric keypad 6 key
Numpad7 = 100,// VK_NUMPAD7, 0x67, Numeric keypad 7 key
Numpad8 = 101,// VK_NUMPAD8, 0x68, Numeric keypad 8 key
Numpad9 = 102,// VK_NUMPAD9, 0x69, Numeric keypad 9 key
NumpadMultiply = 103,// VK_MULTIPLY, 0x6A, Multiply key
NumpadAdd = 104,// VK_ADD, 0x6B, Add key
NUMPAD_SEPARATOR = 105,// VK_SEPARATOR, 0x6C, Separator key
NumpadSubtract = 106,// VK_SUBTRACT, 0x6D, Subtract key
NumpadDecimal = 107,// VK_DECIMAL, 0x6E, Decimal key
NumpadDivide = 108,// VK_DIVIDE, 0x6F,
/**
* Cover all key codes when IME is processing input.
*/
KEY_IN_COMPOSITION = 109,
ABNT_C1 = 110,
ABNT_C2 = 111,
ABNT_C1 = 110,// Brazilian (ABNT) Keyboard
ABNT_C2 = 111,// Brazilian (ABNT) Keyboard
AudioVolumeMute = 112,
AudioVolumeUp = 113,
AudioVolumeDown = 114,

View File

@ -93,6 +93,7 @@ class LineSuffix {
}
const enum InsertFlags {
None = 0,
NoBeforeUndoStop = 1,
NoAfterUndoStop = 2,
KeepAlternativeSuggestions = 4,
@ -139,7 +140,7 @@ export class SuggestController implements IEditorContribution {
const widget = this._instantiationService.createInstance(SuggestWidget, this.editor);
this._toDispose.add(widget);
this._toDispose.add(widget.onDidSelect(item => this._insertSuggestion(item, 0), this));
this._toDispose.add(widget.onDidSelect(item => this._insertSuggestion(item, InsertFlags.None), this));
// Wire up logic to accept a suggestion on certain characters
const commitCharacterController = new CommitCharacterController(this.editor, widget, item => this._insertSuggestion(item, InsertFlags.NoAfterUndoStop));

View File

@ -21,7 +21,7 @@ import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors';
suite('TokensStore', () => {
const SEMANTIC_COLOR: ColorId = 5;
const SEMANTIC_COLOR = 5 as ColorId;
function parseTokensState(state: string[]): { text: string; tokens: SparseMultilineTokens } {
let text: string[] = [];

View File

@ -305,7 +305,7 @@ class Mode extends Disposable {
tokenize: undefined!,
tokenizeEncoded: (line: string, hasEOL: boolean, state: IState): EncodedTokenizationResult => {
let tokensArr: number[] = [];
let prevColor: ColorId = -1;
let prevColor = -1 as ColorId;
for (let i = 0; i < line.length; i++) {
let colorId = line.charAt(i) === '.' ? 7 : 9;
if (prevColor !== colorId) {

37
src/vs/monaco.d.ts vendored
View File

@ -368,28 +368,28 @@ declare namespace monaco {
* Either the angle bracket key or the backslash key on the RT 102-key keyboard.
*/
IntlBackslash = 92,
Numpad0 = 93,
Numpad1 = 94,
Numpad2 = 95,
Numpad3 = 96,
Numpad4 = 97,
Numpad5 = 98,
Numpad6 = 99,
Numpad7 = 100,
Numpad8 = 101,
Numpad9 = 102,
NumpadMultiply = 103,
NumpadAdd = 104,
NUMPAD_SEPARATOR = 105,
NumpadSubtract = 106,
NumpadDecimal = 107,
NumpadDivide = 108,
Numpad0 = 93,// VK_NUMPAD0, 0x60, Numeric keypad 0 key
Numpad1 = 94,// VK_NUMPAD1, 0x61, Numeric keypad 1 key
Numpad2 = 95,// VK_NUMPAD2, 0x62, Numeric keypad 2 key
Numpad3 = 96,// VK_NUMPAD3, 0x63, Numeric keypad 3 key
Numpad4 = 97,// VK_NUMPAD4, 0x64, Numeric keypad 4 key
Numpad5 = 98,// VK_NUMPAD5, 0x65, Numeric keypad 5 key
Numpad6 = 99,// VK_NUMPAD6, 0x66, Numeric keypad 6 key
Numpad7 = 100,// VK_NUMPAD7, 0x67, Numeric keypad 7 key
Numpad8 = 101,// VK_NUMPAD8, 0x68, Numeric keypad 8 key
Numpad9 = 102,// VK_NUMPAD9, 0x69, Numeric keypad 9 key
NumpadMultiply = 103,// VK_MULTIPLY, 0x6A, Multiply key
NumpadAdd = 104,// VK_ADD, 0x6B, Add key
NUMPAD_SEPARATOR = 105,// VK_SEPARATOR, 0x6C, Separator key
NumpadSubtract = 106,// VK_SUBTRACT, 0x6D, Subtract key
NumpadDecimal = 107,// VK_DECIMAL, 0x6E, Decimal key
NumpadDivide = 108,// VK_DIVIDE, 0x6F,
/**
* Cover all key codes when IME is processing input.
*/
KEY_IN_COMPOSITION = 109,
ABNT_C1 = 110,
ABNT_C2 = 111,
ABNT_C1 = 110,// Brazilian (ABNT) Keyboard
ABNT_C2 = 111,// Brazilian (ABNT) Keyboard
AudioVolumeMute = 112,
AudioVolumeUp = 113,
AudioVolumeDown = 114,
@ -6159,6 +6159,7 @@ declare namespace monaco.languages {
}
export enum CompletionItemInsertTextRule {
None = 0,
/**
* Adjust whitespace/indentation of multiline insert texts to
* match the current line indentation.

View File

@ -131,7 +131,7 @@ export class ExtensionManagementChannelClient extends Disposable implements IExt
}
unzip(zipLocation: URI): Promise<IExtensionIdentifier> {
return Promise.resolve(this.channel.call('unzip', [zipLocation]));
return Promise.resolve(this.channel.call<IExtensionIdentifier>('unzip', [zipLocation]));
}
install(vsix: URI, options?: InstallVSIXOptions): Promise<ILocalExtension> {
@ -147,11 +147,11 @@ export class ExtensionManagementChannelClient extends Disposable implements IExt
}
uninstall(extension: ILocalExtension, options?: UninstallOptions): Promise<void> {
return Promise.resolve(this.channel.call('uninstall', [extension!, options]));
return Promise.resolve(this.channel.call<void>('uninstall', [extension!, options]));
}
reinstallFromGallery(extension: ILocalExtension): Promise<void> {
return Promise.resolve(this.channel.call('reinstallFromGallery', [extension]));
return Promise.resolve(this.channel.call<void>('reinstallFromGallery', [extension]));
}
getInstalled(type: ExtensionType | null = null): Promise<ILocalExtension[]> {
@ -170,7 +170,7 @@ export class ExtensionManagementChannelClient extends Disposable implements IExt
}
getExtensionsControlManifest(): Promise<IExtensionsControlManifest> {
return Promise.resolve(this.channel.call('getExtensionsControlManifest'));
return Promise.resolve(this.channel.call<IExtensionsControlManifest>('getExtensionsControlManifest'));
}
registerParticipant() { throw new Error('Not Supported'); }

View File

@ -441,6 +441,10 @@ export interface IWatchOptions {
}
export const enum FileSystemProviderCapabilities {
/**
* No capabilities.
*/
None = 0,
/**
* Provider supports unbuffered read/write.

View File

@ -269,13 +269,16 @@ export class InstantiationService implements IInstantiationService {
//#region -- tracing ---
const enum TraceType {
Creation, Invocation, Branch
None = 0,
Creation = 1,
Invocation = 2,
Branch = 3,
}
export class Trace {
private static readonly _None = new class extends Trace {
constructor() { super(-1, null); }
constructor() { super(TraceType.None, null); }
override stop() { }
override branch() { return this; }
};

View File

@ -34,7 +34,7 @@ suite('URI Identity', function () {
setup(function () {
_service = new UriIdentityService(new FakeFileService(new Map([
['bar', FileSystemProviderCapabilities.PathCaseSensitive],
['foo', 0]
['foo', FileSystemProviderCapabilities.None]
])));
});

View File

@ -1023,7 +1023,7 @@ class CompletionsAdapter {
[extHostProtocol.ISuggestDataDtoField.sortText]: item.sortText !== item.label ? item.sortText : undefined,
[extHostProtocol.ISuggestDataDtoField.filterText]: item.filterText !== item.label ? item.filterText : undefined,
[extHostProtocol.ISuggestDataDtoField.preselect]: item.preselect || undefined,
[extHostProtocol.ISuggestDataDtoField.insertTextRules]: item.keepWhitespace ? languages.CompletionItemInsertTextRule.KeepWhitespace : 0,
[extHostProtocol.ISuggestDataDtoField.insertTextRules]: item.keepWhitespace ? languages.CompletionItemInsertTextRule.KeepWhitespace : languages.CompletionItemInsertTextRule.None,
[extHostProtocol.ISuggestDataDtoField.commitCharacters]: item.commitCharacters,
[extHostProtocol.ISuggestDataDtoField.additionalTextEdits]: item.additionalTextEdits && item.additionalTextEdits.map(typeConvert.TextEdit.from),
[extHostProtocol.ISuggestDataDtoField.command]: this._commands.toInternal(item.command, disposables),

View File

@ -782,7 +782,7 @@ export class MirroredTestCollection extends AbstractIncrementalTestCollection<Mi
* Gets a list of root test items.
*/
public get rootTests() {
return super.roots;
return this.roots;
}
/**

View File

@ -463,7 +463,7 @@ suite('ExtHostDiagnostics', () => {
startColumn: 1,
endLineNumber: 1,
endColumn: 1,
severity: 3
severity: MarkerSeverity.Info
}];
const p1 = Event.toPromise(diags.onDidChangeDiagnostics);

View File

@ -21,7 +21,7 @@ suite('ExtHostTextEditor', () => {
], '\n', 1, 'text', false);
setup(() => {
editor = new ExtHostTextEditor('fake', null!, new NullLogService(), new Lazy(() => doc.document), [], { cursorStyle: 0, insertSpaces: true, lineNumbers: 1, tabSize: 4 }, [], 1);
editor = new ExtHostTextEditor('fake', null!, new NullLogService(), new Lazy(() => doc.document), [], { cursorStyle: TextEditorCursorStyle.Line, insertSpaces: true, lineNumbers: 1, tabSize: 4 }, [], 1);
});
test('disposed editor', () => {
@ -48,7 +48,7 @@ suite('ExtHostTextEditor', () => {
applyCount += 1;
return Promise.resolve(true);
}
}, new NullLogService(), new Lazy(() => doc.document), [], { cursorStyle: 0, insertSpaces: true, lineNumbers: 1, tabSize: 4 }, [], 1);
}, new NullLogService(), new Lazy(() => doc.document), [], { cursorStyle: TextEditorCursorStyle.Line, insertSpaces: true, lineNumbers: 1, tabSize: 4 }, [], 1);
await editor.value.edit(edit => { });
assert.strictEqual(applyCount, 0);

View File

@ -1207,7 +1207,7 @@ class MultipleSelectionActionRunner extends ActionRunner {
selectionHandleArgs = undefined;
}
await action.run(...[context, selectionHandleArgs]);
await action.run(context, selectionHandleArgs);
}
}

View File

@ -82,7 +82,7 @@ export const enum BulkFileOperationType {
export class BulkFileOperation {
type: BulkFileOperationType = 0;
type = 0;
textEdits: BulkTextEdit[] = [];
originalEdits = new Map<number, ResourceTextEdit | ResourceFileEdit>();
newUri?: URI;

View File

@ -13,7 +13,7 @@ import { ModelService } from 'vs/editor/common/services/modelService';
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
import { TestConfigurationService } from 'vs/platform/configuration/test/common/testConfigurationService';
import { TestInstantiationService } from 'vs/platform/instantiation/test/common/instantiationServiceMock';
import { IFileMatch, IFileSearchStats, IFolderQuery, ISearchComplete, ISearchProgressItem, ISearchQuery, ISearchService, ITextSearchMatch, OneLineRange, TextSearchMatch } from 'vs/workbench/services/search/common/search';
import { IFileMatch, IFileSearchStats, IFolderQuery, ISearchComplete, ISearchProgressItem, ISearchQuery, ISearchService, ITextSearchMatch, OneLineRange, QueryType, TextSearchMatch } from 'vs/workbench/services/search/common/search';
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
import { NullTelemetryService } from 'vs/platform/telemetry/common/telemetryUtils';
import { SearchModel } from 'vs/workbench/contrib/search/common/searchModel';
@ -135,7 +135,7 @@ suite('SearchModel', () => {
instantiationService.stub(ISearchService, searchServiceWithResults(results));
const testObject: SearchModel = instantiationService.createInstance(SearchModel);
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
const actual = testObject.searchResult.matches();
@ -166,7 +166,7 @@ suite('SearchModel', () => {
instantiationService.stub(ISearchService, searchServiceWithResults(results));
const testObject: SearchModel = instantiationService.createInstance(SearchModel);
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
assert.ok(target.calledThrice);
const data = target.args[2];
@ -269,12 +269,12 @@ suite('SearchModel', () => {
new TextSearchMatch('preview 2', lineOneRange))];
instantiationService.stub(ISearchService, searchServiceWithResults(results));
const testObject: SearchModel = instantiationService.createInstance(SearchModel);
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
assert.ok(!testObject.searchResult.isEmpty());
instantiationService.stub(ISearchService, searchServiceWithResults([]));
testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
assert.ok(testObject.searchResult.isEmpty());
});
@ -283,9 +283,9 @@ suite('SearchModel', () => {
instantiationService.stub(ISearchService, canceleableSearchService(tokenSource));
const testObject: SearchModel = instantiationService.createInstance(SearchModel);
testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
instantiationService.stub(ISearchService, searchServiceWithResults([]));
testObject.search({ contentPattern: { pattern: 'somestring' }, type: 1, folderQueries });
testObject.search({ contentPattern: { pattern: 'somestring' }, type: QueryType.Text, folderQueries });
assert.ok(tokenSource.token.isCancellationRequested);
});
@ -298,24 +298,24 @@ suite('SearchModel', () => {
instantiationService.stub(ISearchService, searchServiceWithResults(results));
const testObject: SearchModel = instantiationService.createInstance(SearchModel);
await testObject.search({ contentPattern: { pattern: 're' }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 're' }, type: QueryType.Text, folderQueries });
testObject.replaceString = 'hello';
let match = testObject.searchResult.matches()[0].matches()[0];
assert.strictEqual('hello', match.replaceString);
await testObject.search({ contentPattern: { pattern: 're', isRegExp: true }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 're', isRegExp: true }, type: QueryType.Text, folderQueries });
match = testObject.searchResult.matches()[0].matches()[0];
assert.strictEqual('hello', match.replaceString);
await testObject.search({ contentPattern: { pattern: 're(?:vi)', isRegExp: true }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 're(?:vi)', isRegExp: true }, type: QueryType.Text, folderQueries });
match = testObject.searchResult.matches()[0].matches()[0];
assert.strictEqual('hello', match.replaceString);
await testObject.search({ contentPattern: { pattern: 'r(e)(?:vi)', isRegExp: true }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 'r(e)(?:vi)', isRegExp: true }, type: QueryType.Text, folderQueries });
match = testObject.searchResult.matches()[0].matches()[0];
assert.strictEqual('hello', match.replaceString);
await testObject.search({ contentPattern: { pattern: 'r(e)(?:vi)', isRegExp: true }, type: 1, folderQueries });
await testObject.search({ contentPattern: { pattern: 'r(e)(?:vi)', isRegExp: true }, type: QueryType.Text, folderQueries });
testObject.replaceString = 'hello$1';
match = testObject.searchResult.matches()[0].matches()[0];
assert.strictEqual('helloe', match.replaceString);

View File

@ -46,7 +46,7 @@ export const labelForTestInState = (label: string, state: TestResultState) => lo
comment: ['label then the unit tests state, for example "Addition Tests (Running)"'],
}, '{0} ({1})', label, testStateNames[state]);
export const testConfigurationGroupNames: { [K in TestRunProfileBitset]: string } = {
export const testConfigurationGroupNames: Partial<Record<TestRunProfileBitset, string | undefined>> = {
[TestRunProfileBitset.Debug]: localize('testGroup.debug', 'Debug'),
[TestRunProfileBitset.Run]: localize('testGroup.run', 'Run'),
[TestRunProfileBitset.Coverage]: localize('testGroup.coverage', 'Coverage'),

View File

@ -498,7 +498,7 @@ export class TestItemCollection<T extends ITestItemLike> extends Disposable {
console.error(`Unhandled error in resolveHandler of test controller "${this.options.controllerId}"`, err);
};
let r: Thenable<void> | void;
let r: Thenable<void> | undefined | void;
try {
r = this._resolveHandler(internal.actual === this.root ? undefined : internal.actual);
} catch (err) {

View File

@ -1075,7 +1075,7 @@ class TimelineActionRunner extends ActionRunner {
return;
}
await action.run(...[
await action.run(
{
$mid: MarshalledId.TimelineActionContext,
handle: item.handle,
@ -1084,7 +1084,7 @@ class TimelineActionRunner extends ActionRunner {
},
uri,
item.source,
]);
);
}
}

View File

@ -508,7 +508,7 @@ export abstract class AbstractTextFileService extends Disposable implements ITex
let sourceTextModel: ITextModel | undefined = undefined;
if (sourceModel instanceof BaseTextEditorModel) {
if (sourceModel.isResolved()) {
sourceTextModel = sourceModel.textEditorModel;
sourceTextModel = withNullAsUndefined(sourceModel.textEditorModel);
}
} else {
sourceTextModel = sourceModel as ITextModel;

View File

@ -73,7 +73,7 @@ flakySuite('WorkingCopyBackupTracker (native)', function () {
}
waitForReady(): Promise<void> {
return super.whenReady;
return this.whenReady;
}
get pendingBackupOperationCount(): number { return this.pendingBackupOperations.size; }

View File

@ -4,13 +4,14 @@
*--------------------------------------------------------------------------------------------*/
import * as assert from 'assert';
import { DisposableStore } from 'vs/base/common/lifecycle';
import { URI } from 'vs/base/common/uri';
import { isEditorInput, isResourceDiffEditorInput, isResourceEditorInput, isResourceSideBySideEditorInput, isUntitledResourceEditorInput } from 'vs/workbench/common/editor';
import { EditorInput } from 'vs/workbench/common/editor/editorInput';
import { TestEditorInput } from 'vs/workbench/test/browser/workbenchTestServices';
suite('EditorInput', () => {
const disposables = new DisposableStore();
class MyEditorInput extends EditorInput {
readonly resource = undefined;
@ -20,8 +21,8 @@ suite('EditorInput', () => {
test('basics', () => {
let counter = 0;
let input = new MyEditorInput();
let otherInput = new MyEditorInput();
const input = disposables.add(new MyEditorInput());
const otherInput = disposables.add(new MyEditorInput());
assert.ok(isEditorInput(input));
assert.ok(!isEditorInput(undefined));
@ -29,7 +30,7 @@ suite('EditorInput', () => {
assert.ok(!isEditorInput({}));
assert.ok(!isResourceEditorInput(input));
assert.ok(!isUntitledResourceEditorInput(input));
assert.ok(!isUntitledResourceEditorInput(input as any));
assert.ok(!isResourceDiffEditorInput(input));
assert.ok(!isResourceSideBySideEditorInput(input));
@ -37,10 +38,10 @@ suite('EditorInput', () => {
assert(!input.matches(otherInput));
assert(input.getName());
input.onWillDispose(() => {
disposables.add(input.onWillDispose(() => {
assert(true);
counter++;
});
}));
input.dispose();
assert.strictEqual(counter, 1);

185
yarn.lock
View File

@ -747,6 +747,18 @@
optionalDependencies:
global-agent "^3.0.0"
"@eslint-community/eslint-utils@^4.2.0":
version "4.4.0"
resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
dependencies:
eslint-visitor-keys "^3.3.0"
"@eslint-community/regexpp@^4.4.0":
version "4.10.0"
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63"
integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==
"@eslint/eslintrc@^1.0.5":
version "1.0.5"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.5.tgz#33f1b838dbf1f923bfa517e008362b78ddbbf318"
@ -1422,6 +1434,11 @@
resolved "https://registry.yarnpkg.com/@types/semver/-/semver-5.5.0.tgz#146c2a29ee7d3bae4bf2fcb274636e264c813c45"
integrity sha512-41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==
"@types/semver@^7.3.12":
version "7.5.4"
resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.4.tgz#0a41252ad431c473158b22f9bfb9a63df7541cff"
integrity sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==
"@types/sinon-test@^2.4.2":
version "2.4.2"
resolved "https://registry.yarnpkg.com/@types/sinon-test/-/sinon-test-2.4.2.tgz#f55bdf5486e7b7a4dd7257789fcc2b7b125c4164"
@ -1480,10 +1497,10 @@
tapable "^2.2.0"
webpack "^5"
"@types/wicg-file-system-access@^2020.9.5":
version "2020.9.5"
resolved "https://registry.yarnpkg.com/@types/wicg-file-system-access/-/wicg-file-system-access-2020.9.5.tgz#4a0c8f3d1ed101525f329e86c978f7735404474f"
integrity sha512-UYK244awtmcUYQfs7FR8710MJcefL2WvkyHMjA8yJzxd1mo0Gfn88sRZ1Bls7hiUhA2w7ne1gpJ9T5g3G0wOyA==
"@types/wicg-file-system-access@^2020.9.6":
version "2020.9.8"
resolved "https://registry.yarnpkg.com/@types/wicg-file-system-access/-/wicg-file-system-access-2020.9.8.tgz#a8b739854ccb74b8048ef607d3701e9d506830e7"
integrity sha512-ggMz8nOygG7d/stpH40WVaNvBwuyYLnrg5Mbyf6bmsj/8+gb6Ei4ZZ9/4PNpcPNTT8th9Q8sM8wYmWGjMWLX/A==
"@types/windows-foreground-love@^0.3.0":
version "0.3.0"
@ -1531,85 +1548,89 @@
dependencies:
"@types/node" "*"
"@typescript-eslint/eslint-plugin@^5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.10.0.tgz#e90afea96dff8620892ad216b0e4ccdf8ee32d3a"
integrity sha512-XXVKnMsq2fuu9K2KsIxPUGqb6xAImz8MEChClbXmE3VbveFtBUU5bzM6IPVWqzyADIgdkS2Ws/6Xo7W2TeZWjQ==
"@typescript-eslint/eslint-plugin@^5.57.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db"
integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==
dependencies:
"@typescript-eslint/scope-manager" "5.10.0"
"@typescript-eslint/type-utils" "5.10.0"
"@typescript-eslint/utils" "5.10.0"
debug "^4.3.2"
functional-red-black-tree "^1.0.1"
ignore "^5.1.8"
regexpp "^3.2.0"
semver "^7.3.5"
"@eslint-community/regexpp" "^4.4.0"
"@typescript-eslint/scope-manager" "5.62.0"
"@typescript-eslint/type-utils" "5.62.0"
"@typescript-eslint/utils" "5.62.0"
debug "^4.3.4"
graphemer "^1.4.0"
ignore "^5.2.0"
natural-compare-lite "^1.4.0"
semver "^7.3.7"
tsutils "^3.21.0"
"@typescript-eslint/parser@^5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.10.0.tgz#8f59e036f5f1cffc178cacbd5ccdd02aeb96c91c"
integrity sha512-pJB2CCeHWtwOAeIxv8CHVGJhI5FNyJAIpx5Pt72YkK3QfEzt6qAlXZuyaBmyfOdM62qU0rbxJzNToPTVeJGrQw==
"@typescript-eslint/parser@^5.57.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7"
integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
dependencies:
"@typescript-eslint/scope-manager" "5.10.0"
"@typescript-eslint/types" "5.10.0"
"@typescript-eslint/typescript-estree" "5.10.0"
debug "^4.3.2"
"@typescript-eslint/scope-manager" "5.62.0"
"@typescript-eslint/types" "5.62.0"
"@typescript-eslint/typescript-estree" "5.62.0"
debug "^4.3.4"
"@typescript-eslint/scope-manager@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.10.0.tgz#bb5d872e8b9e36203908595507fbc4d3105329cb"
integrity sha512-tgNgUgb4MhqK6DoKn3RBhyZ9aJga7EQrw+2/OiDk5hKf3pTVZWyqBi7ukP+Z0iEEDMF5FDa64LqODzlfE4O/Dg==
"@typescript-eslint/scope-manager@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==
dependencies:
"@typescript-eslint/types" "5.10.0"
"@typescript-eslint/visitor-keys" "5.10.0"
"@typescript-eslint/types" "5.62.0"
"@typescript-eslint/visitor-keys" "5.62.0"
"@typescript-eslint/type-utils@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.10.0.tgz#8524b9479c19c478347a7df216827e749e4a51e5"
integrity sha512-TzlyTmufJO5V886N+hTJBGIfnjQDQ32rJYxPaeiyWKdjsv2Ld5l8cbS7pxim4DeNs62fKzRSt8Q14Evs4JnZyQ==
"@typescript-eslint/type-utils@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a"
integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==
dependencies:
"@typescript-eslint/utils" "5.10.0"
debug "^4.3.2"
"@typescript-eslint/typescript-estree" "5.62.0"
"@typescript-eslint/utils" "5.62.0"
debug "^4.3.4"
tsutils "^3.21.0"
"@typescript-eslint/types@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.10.0.tgz#beb3cb345076f5b088afe996d57bcd1dfddaa75c"
integrity sha512-wUljCgkqHsMZbw60IbOqT/puLfyqqD5PquGiBo1u1IS3PLxdi3RDGlyf032IJyh+eQoGhz9kzhtZa+VC4eWTlQ==
"@typescript-eslint/types@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
"@typescript-eslint/typescript-estree@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.10.0.tgz#4be24a3dea0f930bb1397c46187d0efdd955a224"
integrity sha512-x+7e5IqfwLwsxTdliHRtlIYkgdtYXzE0CkFeV6ytAqq431ZyxCFzNMNR5sr3WOlIG/ihVZr9K/y71VHTF/DUQA==
"@typescript-eslint/typescript-estree@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==
dependencies:
"@typescript-eslint/types" "5.10.0"
"@typescript-eslint/visitor-keys" "5.10.0"
debug "^4.3.2"
globby "^11.0.4"
"@typescript-eslint/types" "5.62.0"
"@typescript-eslint/visitor-keys" "5.62.0"
debug "^4.3.4"
globby "^11.1.0"
is-glob "^4.0.3"
semver "^7.3.5"
semver "^7.3.7"
tsutils "^3.21.0"
"@typescript-eslint/utils@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.10.0.tgz#c3d152a85da77c400e37281355561c72fb1b5a65"
integrity sha512-IGYwlt1CVcFoE2ueW4/ioEwybR60RAdGeiJX/iDAw0t5w0wK3S7QncDwpmsM70nKgGTuVchEWB8lwZwHqPAWRg==
"@typescript-eslint/utils@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86"
integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@types/json-schema" "^7.0.9"
"@typescript-eslint/scope-manager" "5.10.0"
"@typescript-eslint/types" "5.10.0"
"@typescript-eslint/typescript-estree" "5.10.0"
"@types/semver" "^7.3.12"
"@typescript-eslint/scope-manager" "5.62.0"
"@typescript-eslint/types" "5.62.0"
"@typescript-eslint/typescript-estree" "5.62.0"
eslint-scope "^5.1.1"
eslint-utils "^3.0.0"
semver "^7.3.7"
"@typescript-eslint/visitor-keys@5.10.0":
version "5.10.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.10.0.tgz#770215497ad67cd15a572b52089991d5dfe06281"
integrity sha512-GMxj0K1uyrFLPKASLmZzCuSddmjZVbVj3Ouy5QVuIGKZopxvOr24JsS7gruz6C3GExE01mublZ3mIBOaon9zuQ==
"@typescript-eslint/visitor-keys@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e"
integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==
dependencies:
"@typescript-eslint/types" "5.10.0"
eslint-visitor-keys "^3.0.0"
"@typescript-eslint/types" "5.62.0"
eslint-visitor-keys "^3.3.0"
"@ungap/promise-all-settled@1.1.2":
version "1.1.2"
@ -3512,6 +3533,13 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
dependencies:
ms "2.1.2"
debug@^4.3.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
dependencies:
ms "2.1.2"
decamelize@^1.1.1, decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
@ -4234,11 +4262,16 @@ eslint-visitor-keys@^2.0.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.1.0, eslint-visitor-keys@^3.2.0:
eslint-visitor-keys@^3.1.0, eslint-visitor-keys@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz#6fbb166a6798ee5991358bc2daa1ba76cc1254a1"
integrity sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==
eslint-visitor-keys@^3.3.0:
version "3.4.3"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
eslint@8.7.0:
version "8.7.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.7.0.tgz#22e036842ee5b7cf87b03fe237731675b4d3633c"
@ -5218,7 +5251,7 @@ globalthis@^1.0.1:
dependencies:
define-properties "^1.1.3"
globby@^11.0.4:
globby@^11.1.0:
version "11.1.0"
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
@ -5307,6 +5340,11 @@ graceful-fs@^4.2.9:
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
graphemer@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
growl@1.10.5:
version "1.10.5"
resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e"
@ -5857,7 +5895,7 @@ ignore@^4.0.6:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
ignore@^5.1.8, ignore@^5.2.0:
ignore@^5.2.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
@ -7511,6 +7549,11 @@ native-watchdog@1.4.0:
resolved "https://registry.yarnpkg.com/native-watchdog/-/native-watchdog-1.4.0.tgz#547a1f9f88754c38089c622d405ed1e324c7a545"
integrity sha512-4FynAeGtTpoQ2+5AxVJXGEGsOzPsNYDh8Xmawjgs7YWJe+bbbgt7CYlA/Qx6X+kwtN5Ey1aNSm9MqZa0iNKkGw==
natural-compare-lite@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4"
integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
@ -9448,7 +9491,7 @@ semver@^7.3.4, semver@^7.3.5:
dependencies:
lru-cache "^6.0.0"
semver@^7.3.8:
semver@^7.3.7, semver@^7.3.8:
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
@ -10585,10 +10628,10 @@ typescript@^2.6.2:
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.6.2.tgz#3c5b6fd7f6de0914269027f03c0946758f7673a4"
integrity sha1-PFtv1/beCRQmkCfwPAlGdY92c6Q=
typescript@^4.8.0-dev.20220518:
version "4.8.0-dev.20220518"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.0-dev.20220518.tgz#3082c89c764daece904480552b9f2c3f5ce79c56"
integrity sha512-yczRLiowXD4THxpe2DrClYXsmIRt9VPDft1dat4Le50mQwuUcmvdqD43o4hmlbNP7HpyeEYX51KXozGq1s7zlw==
typescript@^5.3.0-dev.20230919:
version "5.3.0-dev.20231030"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.0-dev.20231030.tgz#679edb7a1fc0411bb741b8b02fe03e48204e1749"
integrity sha512-azWrF0lAiu8cBHNr6yq3RDkU/DtQScvT48ea3Ngq6oXJ/GPO0n96wCFSRQA5UbZlVVf3fAAqsUfvOdohRbrPVg==
typical@^4.0.0:
version "4.0.0"