From 8a7961905611212bf6da6ba9ba6e5bf1f48d2943 Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Fri, 1 May 2020 11:57:37 +0200 Subject: [PATCH] debt - use more native es6, less polyfil utils --- src/vs/editor/contrib/snippet/snippetController2.ts | 3 +-- src/vs/platform/commands/common/commands.ts | 3 +-- src/vs/workbench/api/common/extHostRequireInterceptor.ts | 3 +-- src/vs/workbench/api/worker/extHostExtensionService.ts | 3 +-- .../performance/electron-browser/perfviewEditor.ts | 9 ++++----- .../contrib/snippets/browser/snippetsService.ts | 4 ++-- .../workbench/contrib/snippets/browser/tabCompletion.ts | 3 +-- 7 files changed, 11 insertions(+), 17 deletions(-) diff --git a/src/vs/editor/contrib/snippet/snippetController2.ts b/src/vs/editor/contrib/snippet/snippetController2.ts index 322b36075ca..8005cf5badf 100644 --- a/src/vs/editor/contrib/snippet/snippetController2.ts +++ b/src/vs/editor/contrib/snippet/snippetController2.ts @@ -5,7 +5,6 @@ import { KeyCode, KeyMod } from 'vs/base/common/keyCodes'; import { dispose, DisposableStore } from 'vs/base/common/lifecycle'; -import { repeat } from 'vs/base/common/strings'; import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; import { EditorCommand, registerEditorCommand, registerEditorContribution } from 'vs/editor/browser/editorExtensions'; import { Range } from 'vs/editor/common/core/range'; @@ -191,7 +190,7 @@ export class SnippetController2 implements IEditorContribution { insertText: option.value, // insertText: `\${1|${after.concat(before).join(',')}|}$0`, // snippetType: 'textmate', - sortText: repeat('a', i + 1), + sortText: 'a'.repeat(i + 1), range: Range.fromPositions(this._editor.getPosition()!, this._editor.getPosition()!.delta(0, first.value.length)) }; })); diff --git a/src/vs/platform/commands/common/commands.ts b/src/vs/platform/commands/common/commands.ts index a18d0c744db..ae8451eb84f 100644 --- a/src/vs/platform/commands/common/commands.ts +++ b/src/vs/platform/commands/common/commands.ts @@ -9,7 +9,6 @@ import { ServicesAccessor, createDecorator } from 'vs/platform/instantiation/com import { Event, Emitter } from 'vs/base/common/event'; import { LinkedList } from 'vs/base/common/linkedList'; import { IJSONSchema } from 'vs/base/common/jsonSchema'; -import { keys } from 'vs/base/common/map'; import { Iterable } from 'vs/base/common/iterator'; export const ICommandService = createDecorator('commandService'); @@ -130,7 +129,7 @@ export const CommandsRegistry: ICommandRegistry = new class implements ICommandR getCommands(): ICommandsMap { const result = new Map(); - for (const key of keys(this._commands)) { + for (const key of this._commands.keys()) { const command = this.getCommand(key); if (command) { result.set(key, command); diff --git a/src/vs/workbench/api/common/extHostRequireInterceptor.ts b/src/vs/workbench/api/common/extHostRequireInterceptor.ts index 97839338566..fd9ae5f2d97 100644 --- a/src/vs/workbench/api/common/extHostRequireInterceptor.ts +++ b/src/vs/workbench/api/common/extHostRequireInterceptor.ts @@ -11,7 +11,6 @@ import { nullExtensionDescription } from 'vs/workbench/services/extensions/commo import { ExtensionDescriptionRegistry } from 'vs/workbench/services/extensions/common/extensionDescriptionRegistry'; import * as vscode from 'vscode'; import { ExtensionIdentifier, IExtensionDescription } from 'vs/platform/extensions/common/extensions'; -import { endsWith } from 'vs/base/common/strings'; import { IExtensionApiFactory } from 'vs/workbench/api/common/extHost.api.impl'; import { IExtHostRpcService } from 'vs/workbench/api/common/extHostRpcService'; import { IExtHostInitDataService } from 'vs/workbench/api/common/extHostInitDataService'; @@ -192,7 +191,7 @@ class KeytarNodeModuleFactory implements INodeModuleFactory { return undefined; } const sep = length - 7; - if ((name.charAt(sep) === '/' || name.charAt(sep) === '\\') && endsWith(name, 'keytar')) { + if ((name.charAt(sep) === '/' || name.charAt(sep) === '\\') && name.endsWith('keytar')) { name = name.replace(/\\/g, '/'); if (this.alternativeNames.has(name)) { return 'keytar'; diff --git a/src/vs/workbench/api/worker/extHostExtensionService.ts b/src/vs/workbench/api/worker/extHostExtensionService.ts index 4781f226762..10a21537a48 100644 --- a/src/vs/workbench/api/worker/extHostExtensionService.ts +++ b/src/vs/workbench/api/worker/extHostExtensionService.ts @@ -6,7 +6,6 @@ import { createApiFactoryAndRegisterActors } from 'vs/workbench/api/common/extHost.api.impl'; import { ExtensionActivationTimesBuilder } from 'vs/workbench/api/common/extHostExtensionActivator'; import { AbstractExtHostExtensionService } from 'vs/workbench/api/common/extHostExtensionService'; -import { endsWith } from 'vs/base/common/strings'; import { URI } from 'vs/base/common/uri'; import { RequireInterceptor } from 'vs/workbench/api/common/extHostRequireInterceptor'; @@ -79,5 +78,5 @@ export class ExtHostExtensionService extends AbstractExtHostExtensionService { } function ensureSuffix(path: string, suffix: string): string { - return endsWith(path, suffix) ? path : path + suffix; + return path.endsWith(suffix) ? path : path + suffix; } diff --git a/src/vs/workbench/contrib/performance/electron-browser/perfviewEditor.ts b/src/vs/workbench/contrib/performance/electron-browser/perfviewEditor.ts index ad07427a1a4..9c5a93fc0d8 100644 --- a/src/vs/workbench/contrib/performance/electron-browser/perfviewEditor.ts +++ b/src/vs/workbench/contrib/performance/electron-browser/perfviewEditor.ts @@ -13,7 +13,6 @@ import { IModeService } from 'vs/editor/common/services/modeService'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IModelService } from 'vs/editor/common/services/modelService'; import { ITimerService, IStartupMetrics } from 'vs/workbench/services/timer/electron-browser/timerService'; -import { repeat } from 'vs/base/common/strings'; import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'; import * as perf from 'vs/base/common/performance'; import { IDisposable, dispose } from 'vs/base/common/lifecycle'; @@ -377,7 +376,7 @@ class MarkdownBuilder { value: string = ''; heading(level: number, value: string): this { - this.value += `${repeat('#', level)} ${value}\n\n`; + this.value += `${'#'.repeat(level)} ${value}\n\n`; return this; } @@ -407,16 +406,16 @@ class MarkdownBuilder { }); // header - header.forEach((cell, ci) => { this.value += `| ${cell + repeat(' ', lengths[ci] - cell.toString().length)} `; }); + header.forEach((cell, ci) => { this.value += `| ${cell + ' '.repeat(lengths[ci] - cell.toString().length)} `; }); this.value += '|\n'; - header.forEach((_cell, ci) => { this.value += `| ${repeat('-', lengths[ci])} `; }); + header.forEach((_cell, ci) => { this.value += `| ${'-'.repeat(lengths[ci])} `; }); this.value += '|\n'; // cells rows.forEach(row => { row.forEach((cell, ci) => { if (typeof cell !== 'undefined') { - this.value += `| ${cell + repeat(' ', lengths[ci] - cell.toString().length)} `; + this.value += `| ${cell + ' '.repeat(lengths[ci] - cell.toString().length)} `; } }); this.value += '|\n'; diff --git a/src/vs/workbench/contrib/snippets/browser/snippetsService.ts b/src/vs/workbench/contrib/snippets/browser/snippetsService.ts index 0355799e9ad..c0eada3f0a3 100644 --- a/src/vs/workbench/contrib/snippets/browser/snippetsService.ts +++ b/src/vs/workbench/contrib/snippets/browser/snippetsService.ts @@ -6,7 +6,7 @@ import { IJSONSchema } from 'vs/base/common/jsonSchema'; import { combinedDisposable, IDisposable, DisposableStore } from 'vs/base/common/lifecycle'; import * as resources from 'vs/base/common/resources'; -import { endsWith, isFalsyOrWhitespace } from 'vs/base/common/strings'; +import { isFalsyOrWhitespace } from 'vs/base/common/strings'; import { URI } from 'vs/base/common/uri'; import { Position } from 'vs/editor/common/core/position'; import { LanguageId } from 'vs/editor/common/modes'; @@ -49,7 +49,7 @@ namespace snippetExt { return null; } - if (isFalsyOrWhitespace(snippet.language) && !endsWith(snippet.path, '.code-snippets')) { + if (isFalsyOrWhitespace(snippet.language) && !snippet.path.endsWith('.code-snippets')) { extension.collector.error(localize( 'invalid.language.0', "When omitting the language, the value of `contributes.{0}.path` must be a `.code-snippets`-file. Provided value: {1}", diff --git a/src/vs/workbench/contrib/snippets/browser/tabCompletion.ts b/src/vs/workbench/contrib/snippets/browser/tabCompletion.ts index 227169377e9..1506f076764 100644 --- a/src/vs/workbench/contrib/snippets/browser/tabCompletion.ts +++ b/src/vs/workbench/contrib/snippets/browser/tabCompletion.ts @@ -8,7 +8,6 @@ import { RawContextKey, IContextKeyService, ContextKeyExpr, IContextKey } from ' import { KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry'; import { ISnippetsService } from './snippets.contribution'; import { getNonWhitespacePrefix } from './snippetsService'; -import { endsWith } from 'vs/base/common/strings'; import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { IEditorContribution } from 'vs/editor/common/editorCommon'; import { Range } from 'vs/editor/common/core/range'; @@ -97,7 +96,7 @@ export class TabCompletionController implements IEditorContribution { const prefix = getNonWhitespacePrefix(model, selection.getPosition()); if (prefix) { for (const snippet of snippets) { - if (endsWith(prefix, snippet.prefix)) { + if (prefix.endsWith(snippet.prefix)) { this._activeSnippets.push(snippet); } } -- GitLab