@codingame/monaco-vscode-extension-gallery-service-override 37.1.0 → 37.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common.d.ts +12 -0
- package/common.js +136 -0
- package/index.d.ts +2 -10
- package/index.js +4 -128
- package/package.json +10 -2
- package/session.d.ts +4 -0
- package/session.js +15 -0
- package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.js +40 -40
- package/vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.js +6 -6
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.js +11 -11
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementIpc.js +8 -6
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfileIpc.js +5 -5
- package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js +5 -5
- package/vscode/src/vs/sessions/contrib/extensions/browser/extensions.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/extensions/browser/extensions.contribution.js +27 -0
- package/vscode/src/vs/sessions/services/extensionRecommendations/common/extensionRecommendationNotificationService.d.ts +9 -0
- package/vscode/src/vs/sessions/services/extensionRecommendations/common/extensionRecommendationNotificationService.js +18 -0
- package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +19 -19
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/reportExtensionIssueAction.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js +30 -28
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js +6 -6
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js +2 -2
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js +119 -109
- package/vscode/src/vs/workbench/services/extensionManagement/common/webExtensionManagementService.js +7 -7
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.js +1 -1
package/common.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { IEditorOverrideServices } from "@codingame/monaco-vscode-api/vscode/vs/editor/standalone/browser/standaloneServices";
|
|
2
|
+
import type { IExtensionGalleryManifest } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionGalleryManifest";
|
|
3
|
+
export interface ExtensionGalleryOptions {
|
|
4
|
+
/**
|
|
5
|
+
* Whether we should only allow for web extensions to be installed, this is generally
|
|
6
|
+
* true if there is no server part.
|
|
7
|
+
*/
|
|
8
|
+
webOnly?: boolean;
|
|
9
|
+
transformExtensionGalleryManifest?: (manifest: IExtensionGalleryManifest | null) => IExtensionGalleryManifest | null;
|
|
10
|
+
}
|
|
11
|
+
export default function getServiceOverride({ webOnly, transformExtensionGalleryManifest }?: ExtensionGalleryOptions): IEditorOverrideServices;
|
|
12
|
+
export type { IExtensionGalleryManifest };
|
package/common.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
4
|
+
import { AllowedExtensionsService } from './vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.js';
|
|
5
|
+
import { GlobalExtensionEnablementService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionEnablementService';
|
|
6
|
+
import { IExtensionGalleryManifestService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionGalleryManifest.service';
|
|
7
|
+
import { IAllowedExtensionsService, IExtensionTipsService, IGlobalExtensionEnablementService, IExtensionGalleryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement.service';
|
|
8
|
+
import { IExtensionsProfileScannerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionsProfileScannerService.service';
|
|
9
|
+
import { IExtensionsScannerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionsScannerService.service';
|
|
10
|
+
import { ExtensionTipsService } from './vscode/src/vs/platform/extensionManagement/common/extensionTipsService.js';
|
|
11
|
+
import { SyncDescriptor } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors';
|
|
12
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
13
|
+
import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
|
|
14
|
+
import { getLocale } from '@codingame/monaco-vscode-api/vscode/vs/platform/languagePacks/common/languagePacks';
|
|
15
|
+
import { IProductService } from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service';
|
|
16
|
+
import { IgnoredExtensionsManagementService } from './vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js';
|
|
17
|
+
import { IIgnoredExtensionsManagementService } from '@codingame/monaco-vscode-api/vscode/vs/platform/userDataSync/common/ignoredExtensions.service';
|
|
18
|
+
import { ExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService';
|
|
19
|
+
import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
|
|
20
|
+
import './vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js';
|
|
21
|
+
import { ExtensionEnablementService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js';
|
|
22
|
+
import { WebExtensionGalleryManifestService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionGalleryManifestService.js';
|
|
23
|
+
import { ExtensionsProfileScannerService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionsProfileScannerService.js';
|
|
24
|
+
import { IExtensionFeaturesManagementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionManagement/common/extensionFeatures.service';
|
|
25
|
+
import { ExtensionFeaturesManagementService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js';
|
|
26
|
+
import { WorkbenchExtensionGalleryService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionGalleryService.js';
|
|
27
|
+
import { IWorkbenchExtensionEnablementService, IWorkbenchExtensionManagementService, IExtensionManagementServerService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionManagement/common/extensionManagement.service';
|
|
28
|
+
import { ExtensionManagementServerService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js';
|
|
29
|
+
import { ExtensionManagementService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js';
|
|
30
|
+
import { ExtensionIgnoredRecommendationsService } from './vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.js';
|
|
31
|
+
import { IExtensionIgnoredRecommendationsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service';
|
|
32
|
+
import { WorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig';
|
|
33
|
+
import { IWorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service';
|
|
34
|
+
import { ExtensionsScannerService } from './vscode/src/vs/workbench/services/extensions/browser/extensionsScannerService.js';
|
|
35
|
+
import { ExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler';
|
|
36
|
+
import { IExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler.service';
|
|
37
|
+
import { ExtensionManifestPropertiesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService';
|
|
38
|
+
import { IExtensionManifestPropertiesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service';
|
|
39
|
+
import { IRemoteAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service';
|
|
40
|
+
import { RemoteUserDataProfilesService } from './vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js';
|
|
41
|
+
import { IRemoteUserDataProfilesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service';
|
|
42
|
+
import { registerAssets } from '@codingame/monaco-vscode-api/assets';
|
|
43
|
+
import { isLocaleAvailable } from '@codingame/monaco-vscode-api/l10n';
|
|
44
|
+
import { unsupported } from '@codingame/monaco-vscode-api/tools';
|
|
45
|
+
|
|
46
|
+
registerAssets({
|
|
47
|
+
'vs/workbench/contrib/extensions/browser/media/theme-icon.png': new URL('./vscode/src/vs/workbench/contrib/extensions/browser/media/theme-icon.png', import.meta.url).href,
|
|
48
|
+
'vs/workbench/contrib/extensions/browser/media/language-icon.svg': new URL('./vscode/src/vs/workbench/contrib/extensions/browser/media/theme-icon.png', import.meta.url).href
|
|
49
|
+
});
|
|
50
|
+
let CustomExtensionGalleryManifestService = class CustomExtensionGalleryManifestService extends WebExtensionGalleryManifestService {
|
|
51
|
+
constructor(transform, productService, remoteAgentService) {
|
|
52
|
+
super(productService, remoteAgentService);
|
|
53
|
+
this.transform = transform;
|
|
54
|
+
this._onDidChangeExtensionGalleryManifest = new Emitter();
|
|
55
|
+
this.onDidChangeExtensionGalleryManifest = this._onDidChangeExtensionGalleryManifest.event;
|
|
56
|
+
if (transform != null) {
|
|
57
|
+
this._onDidChangeExtensionGalleryManifest.fire();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
async getExtensionGalleryManifest() {
|
|
61
|
+
const manifest = await super.getExtensionGalleryManifest();
|
|
62
|
+
if (this.transform != null) {
|
|
63
|
+
return this.transform(manifest);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
return manifest;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
CustomExtensionGalleryManifestService = __decorate([
|
|
71
|
+
__param(1, IProductService),
|
|
72
|
+
__param(2, IRemoteAgentService)
|
|
73
|
+
], CustomExtensionGalleryManifestService);
|
|
74
|
+
class EmptyRemoteAgentService {
|
|
75
|
+
constructor() {
|
|
76
|
+
this.endConnection = unsupported;
|
|
77
|
+
this.getConnection = () => null;
|
|
78
|
+
this.getEnvironment = async () => null;
|
|
79
|
+
this.getRawEnvironment = async () => null;
|
|
80
|
+
this.getExtensionHostExitInfo = async () => null;
|
|
81
|
+
this.getRoundTripTime = async () => undefined;
|
|
82
|
+
this.whenExtensionsReady = async () => undefined;
|
|
83
|
+
this.scanExtensions = async () => [];
|
|
84
|
+
this.scanSingleExtension = async () => null;
|
|
85
|
+
this.getDiagnosticInfo = async () => undefined;
|
|
86
|
+
this.updateTelemetryLevel = async () => undefined;
|
|
87
|
+
this.logTelemetry = async () => undefined;
|
|
88
|
+
this.flushTelemetry = async () => undefined;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
let ExtensionManagementServerServiceOverride = class ExtensionManagementServerServiceOverride extends ExtensionManagementServerService {
|
|
92
|
+
constructor(isWebOnly, remoteAgentService, labelService, instantiationService) {
|
|
93
|
+
super(isWebOnly ? new EmptyRemoteAgentService() : remoteAgentService, labelService, instantiationService);
|
|
94
|
+
this.remoteAgentService = remoteAgentService;
|
|
95
|
+
this.labelService = labelService;
|
|
96
|
+
this.instantiationService = instantiationService;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
ExtensionManagementServerServiceOverride = __decorate([
|
|
100
|
+
__param(1, IRemoteAgentService),
|
|
101
|
+
__param(2, ILabelService),
|
|
102
|
+
__param(3, IInstantiationService)
|
|
103
|
+
], ExtensionManagementServerServiceOverride);
|
|
104
|
+
class ExtensionsWorkbenchServiceOverride extends ExtensionsWorkbenchService {
|
|
105
|
+
canSetLanguage(extension) {
|
|
106
|
+
if (super.canSetLanguage(extension)) {
|
|
107
|
+
const locale = getLocale(extension.gallery);
|
|
108
|
+
return isLocaleAvailable(locale);
|
|
109
|
+
}
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function getServiceOverride({ webOnly = false, transformExtensionGalleryManifest } = {}) {
|
|
114
|
+
return {
|
|
115
|
+
[IExtensionGalleryService.toString()]: new SyncDescriptor(WorkbenchExtensionGalleryService, [], true),
|
|
116
|
+
[IGlobalExtensionEnablementService.toString()]: new SyncDescriptor(GlobalExtensionEnablementService, [], true),
|
|
117
|
+
[IExtensionsWorkbenchService.toString()]: new SyncDescriptor(ExtensionsWorkbenchServiceOverride, [], true),
|
|
118
|
+
[IExtensionManagementServerService.toString()]: new SyncDescriptor(ExtensionManagementServerServiceOverride, [webOnly], true),
|
|
119
|
+
[IExtensionIgnoredRecommendationsService.toString()]: new SyncDescriptor(ExtensionIgnoredRecommendationsService, [], true),
|
|
120
|
+
[IIgnoredExtensionsManagementService.toString()]: new SyncDescriptor(IgnoredExtensionsManagementService, [], true),
|
|
121
|
+
[IExtensionManifestPropertiesService.toString()]: new SyncDescriptor(ExtensionManifestPropertiesService, [], true),
|
|
122
|
+
[IWorkbenchExtensionManagementService.toString()]: new SyncDescriptor(ExtensionManagementService, [], true),
|
|
123
|
+
[IWorkspaceExtensionsConfigService.toString()]: new SyncDescriptor(WorkspaceExtensionsConfigService, [], true),
|
|
124
|
+
[IExtensionTipsService.toString()]: new SyncDescriptor(ExtensionTipsService, [], true),
|
|
125
|
+
[IRemoteUserDataProfilesService.toString()]: new SyncDescriptor(RemoteUserDataProfilesService, [], true),
|
|
126
|
+
[IWorkbenchExtensionEnablementService.toString()]: new SyncDescriptor(ExtensionEnablementService, [], true),
|
|
127
|
+
[IExtensionUrlHandler.toString()]: new SyncDescriptor(ExtensionUrlHandler, [], true),
|
|
128
|
+
[IExtensionFeaturesManagementService.toString()]: new SyncDescriptor(ExtensionFeaturesManagementService, [], true),
|
|
129
|
+
[IExtensionsScannerService.toString()]: new SyncDescriptor(ExtensionsScannerService, [], true),
|
|
130
|
+
[IExtensionsProfileScannerService.toString()]: new SyncDescriptor(ExtensionsProfileScannerService, [], true),
|
|
131
|
+
[IAllowedExtensionsService.toString()]: new SyncDescriptor(AllowedExtensionsService, [], true),
|
|
132
|
+
[IExtensionGalleryManifestService.toString()]: new SyncDescriptor(CustomExtensionGalleryManifestService, [transformExtensionGalleryManifest], true)
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export { getServiceOverride as default };
|
package/index.d.ts
CHANGED
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import type { IEditorOverrideServices } from "@codingame/monaco-vscode-api/vscode/vs/editor/standalone/browser/standaloneServices";
|
|
2
|
-
import type
|
|
3
|
-
export interface ExtensionGalleryOptions {
|
|
4
|
-
/**
|
|
5
|
-
* Whether we should only allow for web extensions to be installed, this is generally
|
|
6
|
-
* true if there is no server part.
|
|
7
|
-
*/
|
|
8
|
-
webOnly?: boolean;
|
|
9
|
-
transformExtensionGalleryManifest?: (manifest: IExtensionGalleryManifest | null) => IExtensionGalleryManifest | null;
|
|
10
|
-
}
|
|
2
|
+
import { type ExtensionGalleryOptions } from "./common.js";
|
|
11
3
|
export default function getServiceOverride({ webOnly, transformExtensionGalleryManifest }?: ExtensionGalleryOptions): IEditorOverrideServices;
|
|
12
|
-
export type { IExtensionGalleryManifest };
|
|
4
|
+
export type { IExtensionGalleryManifest, ExtensionGalleryOptions } from "./common.js";
|
package/index.js
CHANGED
|
@@ -1,141 +1,17 @@
|
|
|
1
1
|
|
|
2
|
-
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { AllowedExtensionsService } from './vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.js';
|
|
4
|
-
import { GlobalExtensionEnablementService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionEnablementService';
|
|
5
|
-
import { IExtensionGalleryManifestService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionGalleryManifest.service';
|
|
6
|
-
import { IAllowedExtensionsService, IExtensionTipsService, IGlobalExtensionEnablementService, IExtensionGalleryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement.service';
|
|
7
|
-
import { IExtensionsProfileScannerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionsProfileScannerService.service';
|
|
8
|
-
import { IExtensionsScannerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionsScannerService.service';
|
|
9
|
-
import { ExtensionTipsService } from './vscode/src/vs/platform/extensionManagement/common/extensionTipsService.js';
|
|
10
2
|
import { IExtensionRecommendationNotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionRecommendations/common/extensionRecommendations.service';
|
|
11
3
|
import { SyncDescriptor } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors';
|
|
12
|
-
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
13
|
-
import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
|
|
14
|
-
import { getLocale } from '@codingame/monaco-vscode-api/vscode/vs/platform/languagePacks/common/languagePacks';
|
|
15
|
-
import { IgnoredExtensionsManagementService } from './vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js';
|
|
16
|
-
import { IIgnoredExtensionsManagementService } from '@codingame/monaco-vscode-api/vscode/vs/platform/userDataSync/common/ignoredExtensions.service';
|
|
17
4
|
import { ExtensionRecommendationNotificationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService';
|
|
18
5
|
import { ExtensionRecommendationsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensionRecommendationsService';
|
|
19
|
-
import {
|
|
20
|
-
import
|
|
21
|
-
import { ExtensionEnablementService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js';
|
|
22
|
-
import { WebExtensionGalleryManifestService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionGalleryManifestService.js';
|
|
23
|
-
import { ExtensionsProfileScannerService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionsProfileScannerService.js';
|
|
24
|
-
import { IExtensionFeaturesManagementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionManagement/common/extensionFeatures.service';
|
|
25
|
-
import { ExtensionFeaturesManagementService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js';
|
|
26
|
-
import { WorkbenchExtensionGalleryService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionGalleryService.js';
|
|
27
|
-
import { IWorkbenchExtensionEnablementService, IWorkbenchExtensionManagementService, IExtensionManagementServerService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionManagement/common/extensionManagement.service';
|
|
28
|
-
import { ExtensionManagementServerService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js';
|
|
29
|
-
import { ExtensionManagementService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js';
|
|
30
|
-
import { ExtensionIgnoredRecommendationsService } from './vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.js';
|
|
31
|
-
import { IExtensionIgnoredRecommendationsService, IExtensionRecommendationsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service';
|
|
32
|
-
import { WorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig';
|
|
33
|
-
import { IWorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service';
|
|
34
|
-
import { ExtensionsScannerService } from './vscode/src/vs/workbench/services/extensions/browser/extensionsScannerService.js';
|
|
35
|
-
import { ExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler';
|
|
36
|
-
import { IExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler.service';
|
|
37
|
-
import { ExtensionManifestPropertiesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService';
|
|
38
|
-
import { IExtensionManifestPropertiesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service';
|
|
39
|
-
import { IRemoteAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service';
|
|
40
|
-
import { RemoteUserDataProfilesService } from './vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js';
|
|
41
|
-
import { IRemoteUserDataProfilesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service';
|
|
42
|
-
import { registerAssets } from '@codingame/monaco-vscode-api/assets';
|
|
43
|
-
import { isLocaleAvailable } from '@codingame/monaco-vscode-api/l10n';
|
|
44
|
-
import { unsupported } from '@codingame/monaco-vscode-api/tools';
|
|
6
|
+
import { IExtensionRecommendationsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service';
|
|
7
|
+
import getServiceOverride$1 from './common.js';
|
|
45
8
|
import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensions.contribution';
|
|
46
|
-
import './vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js';
|
|
47
|
-
import { IProductService } from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service';
|
|
48
|
-
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
49
9
|
|
|
50
|
-
registerAssets({
|
|
51
|
-
'vs/workbench/contrib/extensions/browser/media/theme-icon.png': new URL('./vscode/src/vs/workbench/contrib/extensions/browser/media/theme-icon.png', import.meta.url).href,
|
|
52
|
-
'vs/workbench/contrib/extensions/browser/media/language-icon.svg': new URL('./vscode/src/vs/workbench/contrib/extensions/browser/media/theme-icon.png', import.meta.url).href
|
|
53
|
-
});
|
|
54
|
-
let CustomExtensionGalleryManifestService = class CustomExtensionGalleryManifestService extends WebExtensionGalleryManifestService {
|
|
55
|
-
constructor(transform, productService, remoteAgentService) {
|
|
56
|
-
super(productService, remoteAgentService);
|
|
57
|
-
this.transform = transform;
|
|
58
|
-
this._onDidChangeExtensionGalleryManifest = new Emitter();
|
|
59
|
-
this.onDidChangeExtensionGalleryManifest = this._onDidChangeExtensionGalleryManifest.event;
|
|
60
|
-
if (transform != null) {
|
|
61
|
-
this._onDidChangeExtensionGalleryManifest.fire();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
async getExtensionGalleryManifest() {
|
|
65
|
-
const manifest = await super.getExtensionGalleryManifest();
|
|
66
|
-
if (this.transform != null) {
|
|
67
|
-
return this.transform(manifest);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
return manifest;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
CustomExtensionGalleryManifestService = __decorate([
|
|
75
|
-
__param(1, IProductService),
|
|
76
|
-
__param(2, IRemoteAgentService)
|
|
77
|
-
], CustomExtensionGalleryManifestService);
|
|
78
|
-
class EmptyRemoteAgentService {
|
|
79
|
-
constructor() {
|
|
80
|
-
this.endConnection = unsupported;
|
|
81
|
-
this.getConnection = () => null;
|
|
82
|
-
this.getEnvironment = async () => null;
|
|
83
|
-
this.getRawEnvironment = async () => null;
|
|
84
|
-
this.getExtensionHostExitInfo = async () => null;
|
|
85
|
-
this.getRoundTripTime = async () => undefined;
|
|
86
|
-
this.whenExtensionsReady = async () => undefined;
|
|
87
|
-
this.scanExtensions = async () => [];
|
|
88
|
-
this.scanSingleExtension = async () => null;
|
|
89
|
-
this.getDiagnosticInfo = async () => undefined;
|
|
90
|
-
this.updateTelemetryLevel = async () => undefined;
|
|
91
|
-
this.logTelemetry = async () => undefined;
|
|
92
|
-
this.flushTelemetry = async () => undefined;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
let ExtensionManagementServerServiceOverride = class ExtensionManagementServerServiceOverride extends ExtensionManagementServerService {
|
|
96
|
-
constructor(isWebOnly, remoteAgentService, labelService, instantiationService) {
|
|
97
|
-
super(isWebOnly ? new EmptyRemoteAgentService() : remoteAgentService, labelService, instantiationService);
|
|
98
|
-
this.remoteAgentService = remoteAgentService;
|
|
99
|
-
this.labelService = labelService;
|
|
100
|
-
this.instantiationService = instantiationService;
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
ExtensionManagementServerServiceOverride = __decorate([
|
|
104
|
-
__param(1, IRemoteAgentService),
|
|
105
|
-
__param(2, ILabelService),
|
|
106
|
-
__param(3, IInstantiationService)
|
|
107
|
-
], ExtensionManagementServerServiceOverride);
|
|
108
|
-
class ExtensionsWorkbenchServiceOverride extends ExtensionsWorkbenchService {
|
|
109
|
-
canSetLanguage(extension) {
|
|
110
|
-
if (super.canSetLanguage(extension)) {
|
|
111
|
-
const locale = getLocale(extension.gallery);
|
|
112
|
-
return isLocaleAvailable(locale);
|
|
113
|
-
}
|
|
114
|
-
return false;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
10
|
function getServiceOverride({ webOnly = false, transformExtensionGalleryManifest } = {}) {
|
|
118
11
|
return {
|
|
119
|
-
|
|
120
|
-
[IGlobalExtensionEnablementService.toString()]: new SyncDescriptor(GlobalExtensionEnablementService, [], true),
|
|
121
|
-
[IExtensionsWorkbenchService.toString()]: new SyncDescriptor(ExtensionsWorkbenchServiceOverride, [], true),
|
|
122
|
-
[IExtensionManagementServerService.toString()]: new SyncDescriptor(ExtensionManagementServerServiceOverride, [webOnly], true),
|
|
12
|
+
...getServiceOverride$1({ webOnly, transformExtensionGalleryManifest }),
|
|
123
13
|
[IExtensionRecommendationsService.toString()]: new SyncDescriptor(ExtensionRecommendationsService, [], true),
|
|
124
|
-
[IExtensionRecommendationNotificationService.toString()]: new SyncDescriptor(ExtensionRecommendationNotificationService, [], true)
|
|
125
|
-
[IExtensionIgnoredRecommendationsService.toString()]: new SyncDescriptor(ExtensionIgnoredRecommendationsService, [], true),
|
|
126
|
-
[IIgnoredExtensionsManagementService.toString()]: new SyncDescriptor(IgnoredExtensionsManagementService, [], true),
|
|
127
|
-
[IExtensionManifestPropertiesService.toString()]: new SyncDescriptor(ExtensionManifestPropertiesService, [], true),
|
|
128
|
-
[IWorkbenchExtensionManagementService.toString()]: new SyncDescriptor(ExtensionManagementService, [], true),
|
|
129
|
-
[IWorkspaceExtensionsConfigService.toString()]: new SyncDescriptor(WorkspaceExtensionsConfigService, [], true),
|
|
130
|
-
[IExtensionTipsService.toString()]: new SyncDescriptor(ExtensionTipsService, [], true),
|
|
131
|
-
[IRemoteUserDataProfilesService.toString()]: new SyncDescriptor(RemoteUserDataProfilesService, [], true),
|
|
132
|
-
[IWorkbenchExtensionEnablementService.toString()]: new SyncDescriptor(ExtensionEnablementService, [], true),
|
|
133
|
-
[IExtensionUrlHandler.toString()]: new SyncDescriptor(ExtensionUrlHandler, [], true),
|
|
134
|
-
[IExtensionFeaturesManagementService.toString()]: new SyncDescriptor(ExtensionFeaturesManagementService, [], true),
|
|
135
|
-
[IExtensionsScannerService.toString()]: new SyncDescriptor(ExtensionsScannerService, [], true),
|
|
136
|
-
[IExtensionsProfileScannerService.toString()]: new SyncDescriptor(ExtensionsProfileScannerService, [], true),
|
|
137
|
-
[IAllowedExtensionsService.toString()]: new SyncDescriptor(AllowedExtensionsService, [], true),
|
|
138
|
-
[IExtensionGalleryManifestService.toString()]: new SyncDescriptor(CustomExtensionGalleryManifestService, [transformExtensionGalleryManifest], true)
|
|
14
|
+
[IExtensionRecommendationNotificationService.toString()]: new SyncDescriptor(ExtensionRecommendationNotificationService, [], true)
|
|
139
15
|
};
|
|
140
16
|
}
|
|
141
17
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-extension-gallery-service-override",
|
|
3
|
-
"version": "37.
|
|
3
|
+
"version": "37.3.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - extension-gallery service-override",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-api": "37.
|
|
18
|
+
"@codingame/monaco-vscode-api": "37.3.0"
|
|
19
19
|
},
|
|
20
20
|
"main": "index.js",
|
|
21
21
|
"module": "index.js",
|
|
@@ -31,6 +31,14 @@
|
|
|
31
31
|
"types": "./vscode/src/*.d.ts",
|
|
32
32
|
"default": "./vscode/src/*.js"
|
|
33
33
|
},
|
|
34
|
+
"./session": {
|
|
35
|
+
"types": "./session.d.ts",
|
|
36
|
+
"default": "./session.js"
|
|
37
|
+
},
|
|
38
|
+
"./common": {
|
|
39
|
+
"types": "./common.d.ts",
|
|
40
|
+
"default": "./common.js"
|
|
41
|
+
},
|
|
34
42
|
"./*": {
|
|
35
43
|
"types": "./*.d.ts",
|
|
36
44
|
"default": "./*.js"
|
package/session.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IEditorOverrideServices } from "@codingame/monaco-vscode-api/vscode/vs/editor/standalone/browser/standaloneServices";
|
|
2
|
+
import { type ExtensionGalleryOptions } from "./common.js";
|
|
3
|
+
export default function getServiceOverride({ webOnly, transformExtensionGalleryManifest }?: ExtensionGalleryOptions): IEditorOverrideServices;
|
|
4
|
+
export type { IExtensionGalleryManifest, ExtensionGalleryOptions } from "./common.js";
|
package/session.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
import { IExtensionRecommendationNotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionRecommendations/common/extensionRecommendations.service';
|
|
3
|
+
import { SyncDescriptor } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors';
|
|
4
|
+
import getServiceOverride$1 from './common.js';
|
|
5
|
+
import './vscode/src/vs/sessions/contrib/extensions/browser/extensions.contribution.js';
|
|
6
|
+
import { NullExtensionRecommendationNotificationService } from './vscode/src/vs/sessions/services/extensionRecommendations/common/extensionRecommendationNotificationService.js';
|
|
7
|
+
|
|
8
|
+
function getServiceOverride({ webOnly = false, transformExtensionGalleryManifest } = {}) {
|
|
9
|
+
return {
|
|
10
|
+
...getServiceOverride$1({ webOnly, transformExtensionGalleryManifest }),
|
|
11
|
+
[IExtensionRecommendationNotificationService.toString()]: new SyncDescriptor(NullExtensionRecommendationNotificationService, [], true)
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { getServiceOverride as default };
|