@codingame/monaco-vscode-extension-gallery-service-override 37.2.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.
Files changed (27) hide show
  1. package/common.d.ts +12 -0
  2. package/common.js +136 -0
  3. package/index.d.ts +2 -10
  4. package/index.js +4 -128
  5. package/package.json +10 -2
  6. package/session.d.ts +4 -0
  7. package/session.js +15 -0
  8. package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.js +40 -40
  9. package/vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.js +6 -6
  10. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.js +11 -11
  11. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementIpc.js +8 -6
  12. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileIpc.js +5 -5
  13. package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js +5 -5
  14. package/vscode/src/vs/sessions/contrib/extensions/browser/extensions.contribution.d.ts +1 -0
  15. package/vscode/src/vs/sessions/contrib/extensions/browser/extensions.contribution.js +27 -0
  16. package/vscode/src/vs/sessions/services/extensionRecommendations/common/extensionRecommendationNotificationService.d.ts +9 -0
  17. package/vscode/src/vs/sessions/services/extensionRecommendations/common/extensionRecommendationNotificationService.js +18 -0
  18. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +19 -19
  19. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js +1 -1
  20. package/vscode/src/vs/workbench/contrib/extensions/common/reportExtensionIssueAction.js +1 -1
  21. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
  22. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js +30 -28
  23. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js +6 -6
  24. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js +2 -2
  25. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js +119 -109
  26. package/vscode/src/vs/workbench/services/extensionManagement/common/webExtensionManagementService.js +7 -7
  27. 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 { 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
- }
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 { ExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService';
20
- import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
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
- [IExtensionGalleryService.toString()]: new SyncDescriptor(WorkbenchExtensionGalleryService, [], true),
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.2.0",
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.2.0"
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 };