diff --git a/src/vs/workbench/api/browser/apiCommands.ts b/src/vs/workbench/api/browser/apiCommands.ts new file mode 100644 index 00000000000..a41b0c30d7c --- /dev/null +++ b/src/vs/workbench/api/browser/apiCommands.ts @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { CommandsRegistry } from 'vs/platform/commands/common/commands'; +import { ServicesAccessor } from 'vs/platform/instantiation/common/instantiation'; +import { isWeb } from 'vs/base/common/platform'; + +if (isWeb) { + CommandsRegistry.registerCommand('_workbench.fetchJSON', async function (accessor: ServicesAccessor, url: string, method: string) { + const result = await fetch(url, { method, headers: { Accept: 'application/json' } }); + + if (result.ok) { + return result.json(); + } else { + throw new Error(result.statusText); + } + }); +} diff --git a/src/vs/workbench/api/browser/extensionHost.contribution.ts b/src/vs/workbench/api/browser/extensionHost.contribution.ts index ab6a318d06a..524697c3426 100644 --- a/src/vs/workbench/api/browser/extensionHost.contribution.ts +++ b/src/vs/workbench/api/browser/extensionHost.contribution.ts @@ -73,6 +73,7 @@ import './mainThreadTimeline'; import './mainThreadTesting'; import './mainThreadSecretState'; import 'vs/workbench/api/common/apiCommands'; +import 'vs/workbench/api/browser/apiCommands'; export class ExtensionPoints implements IWorkbenchContribution { diff --git a/src/vs/workbench/api/common/apiCommands.ts b/src/vs/workbench/api/common/apiCommands.ts index 141c6bb03a4..da918ae31e8 100644 --- a/src/vs/workbench/api/common/apiCommands.ts +++ b/src/vs/workbench/api/common/apiCommands.ts @@ -12,7 +12,6 @@ import { IWorkspacesService, IRecent } from 'vs/platform/workspaces/common/works import { ILogService } from 'vs/platform/log/common/log'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { IViewDescriptorService, IViewsService, ViewVisibilityState } from 'vs/workbench/common/views'; -import { isWeb } from 'vs/base/common/platform'; // ----------------------------------------------------------------- // The following commands are registered on both sides separately. @@ -207,15 +206,3 @@ class DiffAPICommand { } } CommandsRegistry.registerCommand(DiffAPICommand.ID, adjustHandler(DiffAPICommand.execute)); - -if (isWeb) { - CommandsRegistry.registerCommand('_workbench.fetchJSON', async function (accessor: ServicesAccessor, url: string, method: string) { - const result = await fetch(url, { method, headers: { Accept: 'application/json' } }); - - if (result.ok) { - return result.json(); - } else { - throw new Error(result.statusText); - } - }); -}