@codingame/monaco-vscode-extension-gallery-service-override 13.1.7 → 14.0.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/index.js +3 -3
- package/package.json +21 -20
- package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.d.ts +0 -1
- package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.js +21 -22
- package/vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.d.ts +4 -3
- package/vscode/src/vs/platform/extensionManagement/common/allowedExtensionsService.js +16 -14
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.d.ts +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.js +85 -42
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementIpc.d.ts +0 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementIpc.js +0 -3
- package/vscode/src/vs/platform/extensionManagement/common/extensionTipsService.js +1 -0
- package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js +0 -8
- package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +20 -20
- package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.d.ts +4 -15
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +193 -176
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +16 -16
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +15 -15
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +0 -8
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +228 -169
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +6 -6
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +51 -51
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +15 -15
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.d.ts +3 -6
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +28 -32
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +101 -97
- package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionEditor.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionsViewlet.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.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 +15 -15
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionsProfileScannerService.d.ts +1 -2
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionsProfileScannerService.js +3 -5
- package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +4 -4
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js +4 -4
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js +2 -2
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.d.ts +21 -6
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js +437 -61
- package/vscode/src/vs/workbench/services/extensionManagement/common/media/extensionManagement.css.js +6 -0
- package/vscode/src/vs/workbench/services/extensionManagement/common/webExtensionManagementService.d.ts +0 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/webExtensionManagementService.js +0 -1
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.d.ts +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js +3 -2
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.d.ts +0 -48
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +0 -305
package/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { IAllowedExtensionsService, IExtensionTipsService, IGlobalExtensionEnabl
|
|
|
5
5
|
import { ExtensionGalleryService } from './vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.js';
|
|
6
6
|
import { GlobalExtensionEnablementService } from '@codingame/monaco-vscode-a2719803-af40-5ae9-a29f-8a2231c33056-common/vscode/vs/platform/extensionManagement/common/extensionEnablementService';
|
|
7
7
|
import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
|
|
8
|
-
import { getLocale } from '@codingame/monaco-vscode-
|
|
8
|
+
import { getLocale } from '@codingame/monaco-vscode-4ee1e7cc-aa3e-55cb-9689-c49cb8629493-common/vscode/vs/platform/languagePacks/common/languagePacks';
|
|
9
9
|
import { ExtensionsWorkbenchService } from './vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js';
|
|
10
10
|
import { IWorkbenchExtensionEnablementService, IWorkbenchExtensionManagementService, IWebExtensionsScannerService, IExtensionManagementServerService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionManagement/common/extensionManagement.service';
|
|
11
11
|
import { ExtensionManagementServerService } from './vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js';
|
|
@@ -19,7 +19,7 @@ import { ExtensionManifestPropertiesService } from '@codingame/monaco-vscode-d7f
|
|
|
19
19
|
import { IExtensionManifestPropertiesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service';
|
|
20
20
|
import { IBuiltinExtensionsScannerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions.service';
|
|
21
21
|
import { ExtensionIgnoredRecommendationsService } from './vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.js';
|
|
22
|
-
import { WorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-
|
|
22
|
+
import { WorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-ecf3436d-6064-5fbd-a760-37a211ce79c7-common/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig';
|
|
23
23
|
import { IWorkspaceExtensionsConfigService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service';
|
|
24
24
|
import { ExtensionRecommendationNotificationService } from './vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js';
|
|
25
25
|
import { ExtensionTipsService } from './vscode/src/vs/platform/extensionManagement/common/extensionTipsService.js';
|
|
@@ -27,7 +27,7 @@ import { ExtensionManagementService } from './vscode/src/vs/workbench/services/e
|
|
|
27
27
|
import { RemoteUserDataProfilesService } from './vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js';
|
|
28
28
|
import { IRemoteUserDataProfilesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service';
|
|
29
29
|
import { ExtensionEnablementService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js';
|
|
30
|
-
import { ExtensionUrlHandler } from '
|
|
30
|
+
import { ExtensionUrlHandler } from '@codingame/monaco-vscode-8c844347-a703-5de1-9eeb-5e0c7f503a58-common/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler';
|
|
31
31
|
import { IExtensionUrlHandler } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/browser/extensionUrlHandler.service';
|
|
32
32
|
import { IRemoteAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service';
|
|
33
33
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-extension-gallery-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "14.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - extension-gallery service-override",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,25 +15,26 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-039b5553-0838-562a-97c2-30d6e54a7b42-common": "
|
|
19
|
-
"@codingame/monaco-vscode-0f5ced28-abde-558b-8652-db8e7d4d64aa-common": "
|
|
20
|
-
"@codingame/monaco-vscode-10418ae3-ee63-5700-a757-89cbe6564ee4-common": "
|
|
21
|
-
"@codingame/monaco-vscode-
|
|
22
|
-
"@codingame/monaco-vscode-3a00040f-b81b-50bc-88da-35f611c0bd1e-common": "
|
|
23
|
-
"@codingame/monaco-vscode-411e0589-fa79-504b-b32c-80a88847b23a-common": "
|
|
24
|
-
"@codingame/monaco-vscode-
|
|
25
|
-
"@codingame/monaco-vscode-5e324391-11e3-5ceb-93ee-938e4098e4ad-common": "
|
|
26
|
-
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "
|
|
27
|
-
"@codingame/monaco-vscode-
|
|
28
|
-
"@codingame/monaco-vscode-
|
|
29
|
-
"@codingame/monaco-vscode-
|
|
30
|
-
"@codingame/monaco-vscode-
|
|
31
|
-
"@codingame/monaco-vscode-
|
|
32
|
-
"@codingame/monaco-vscode-
|
|
33
|
-
"@codingame/monaco-vscode-
|
|
34
|
-
"@codingame/monaco-vscode-
|
|
35
|
-
"@codingame/monaco-vscode-d7f659f5-da33-5ea8-a3b8-9b94f2cf5f33-common": "
|
|
36
|
-
"@codingame/monaco-vscode-
|
|
18
|
+
"@codingame/monaco-vscode-039b5553-0838-562a-97c2-30d6e54a7b42-common": "14.0.0",
|
|
19
|
+
"@codingame/monaco-vscode-0f5ced28-abde-558b-8652-db8e7d4d64aa-common": "14.0.0",
|
|
20
|
+
"@codingame/monaco-vscode-10418ae3-ee63-5700-a757-89cbe6564ee4-common": "14.0.0",
|
|
21
|
+
"@codingame/monaco-vscode-2cbab29e-9393-5de6-b701-9a9555360b6b-common": "14.0.0",
|
|
22
|
+
"@codingame/monaco-vscode-3a00040f-b81b-50bc-88da-35f611c0bd1e-common": "14.0.0",
|
|
23
|
+
"@codingame/monaco-vscode-411e0589-fa79-504b-b32c-80a88847b23a-common": "14.0.0",
|
|
24
|
+
"@codingame/monaco-vscode-4ee1e7cc-aa3e-55cb-9689-c49cb8629493-common": "14.0.0",
|
|
25
|
+
"@codingame/monaco-vscode-5e324391-11e3-5ceb-93ee-938e4098e4ad-common": "14.0.0",
|
|
26
|
+
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "14.0.0",
|
|
27
|
+
"@codingame/monaco-vscode-771c2e6d-0284-5ac1-be73-7176085eedc5-common": "14.0.0",
|
|
28
|
+
"@codingame/monaco-vscode-8c844347-a703-5de1-9eeb-5e0c7f503a58-common": "14.0.0",
|
|
29
|
+
"@codingame/monaco-vscode-91789cdf-e3cb-5a04-aaeb-6f7df7d3d231-common": "14.0.0",
|
|
30
|
+
"@codingame/monaco-vscode-a2719803-af40-5ae9-a29f-8a2231c33056-common": "14.0.0",
|
|
31
|
+
"@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common": "14.0.0",
|
|
32
|
+
"@codingame/monaco-vscode-api": "14.0.0",
|
|
33
|
+
"@codingame/monaco-vscode-b4efa70b-52b9-5670-ab5c-f10b10b6834e-common": "14.0.0",
|
|
34
|
+
"@codingame/monaco-vscode-d0fb86d3-2a47-594e-955b-9a24631a7124-common": "14.0.0",
|
|
35
|
+
"@codingame/monaco-vscode-d7f659f5-da33-5ea8-a3b8-9b94f2cf5f33-common": "14.0.0",
|
|
36
|
+
"@codingame/monaco-vscode-ecf3436d-6064-5fbd-a760-37a211ce79c7-common": "14.0.0",
|
|
37
|
+
"@codingame/monaco-vscode-eea37658-2307-56a5-8ed0-b2752c7b7a50-common": "14.0.0"
|
|
37
38
|
},
|
|
38
39
|
"main": "index.js",
|
|
39
40
|
"module": "index.js",
|
package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.d.ts
CHANGED
|
@@ -72,7 +72,6 @@ export declare abstract class CommontExtensionManagementService extends Disposab
|
|
|
72
72
|
abstract getInstalled(type?: ExtensionType, profileLocation?: URI, productVersion?: IProductVersion): Promise<ILocalExtension[]>;
|
|
73
73
|
abstract copyExtensions(fromProfileLocation: URI, toProfileLocation: URI): Promise<void>;
|
|
74
74
|
abstract download(extension: IGalleryExtension, operation: InstallOperation, donotVerifySignature: boolean): Promise<URI>;
|
|
75
|
-
abstract reinstallFromGallery(extension: ILocalExtension): Promise<ILocalExtension>;
|
|
76
75
|
abstract cleanUp(): Promise<void>;
|
|
77
76
|
abstract updateMetadata(local: ILocalExtension, metadata: Partial<Metadata>, profileLocation: URI): Promise<ILocalExtension>;
|
|
78
77
|
}
|
package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.js
CHANGED
|
@@ -12,7 +12,7 @@ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
|
12
12
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
13
13
|
import { TargetPlatformToString, isTargetPlatformCompatible, ExtensionManagementError, ExtensionManagementErrorCode, InstallOperation, EXTENSION_INSTALL_DEP_PACK_CONTEXT, EXTENSION_INSTALL_SOURCE_CONTEXT, StatisticType, ExtensionGalleryError, ExtensionGalleryErrorCode, ExtensionSignatureVerificationCode } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement';
|
|
14
14
|
import { IAllowedExtensionsService, IExtensionGalleryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement.service';
|
|
15
|
-
import { areSameExtensions, ExtensionKey, getGalleryExtensionId, getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagementUtil';
|
|
15
|
+
import { areSameExtensions, ExtensionKey, getGalleryExtensionId, getGalleryExtensionTelemetryData, isMalicious, getLocalExtensionTelemetryData } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagementUtil';
|
|
16
16
|
import { isApplicationScopedExtension, ExtensionType } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
|
|
17
17
|
import { areApiProposalsCompatible } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensionValidator';
|
|
18
18
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
@@ -32,21 +32,20 @@ let CommontExtensionManagementService = class CommontExtensionManagementService
|
|
|
32
32
|
const allowedToInstall = this.allowedExtensionsService.isAllowed({ id: extension.identifier.id, publisherDisplayName: extension.publisherDisplayName });
|
|
33
33
|
if (allowedToInstall !== true) {
|
|
34
34
|
return (new MarkdownString(localize(
|
|
35
|
-
|
|
35
|
+
1695,
|
|
36
36
|
"This extension cannot be installed because {0}",
|
|
37
37
|
allowedToInstall.value
|
|
38
38
|
)));
|
|
39
39
|
}
|
|
40
40
|
if (!(await this.isExtensionPlatformCompatible(extension))) {
|
|
41
|
-
const productName = isWeb ? ( localize(1660, "{0} for the Web", this.productService.nameLong)) : this.productService.nameLong;
|
|
42
41
|
const learnLink = isWeb ? 'https://aka.ms/vscode-web-extensions-guide' : 'https://aka.ms/vscode-platform-specific-extensions';
|
|
43
42
|
return (new MarkdownString(`${( localize(
|
|
44
|
-
|
|
45
|
-
"The '{0}' extension is not available in {1} for {2}.",
|
|
43
|
+
1696,
|
|
44
|
+
"The '{0}' extension is not available in {1} for the {2}.",
|
|
46
45
|
extension.displayName ?? extension.identifier.id,
|
|
47
|
-
|
|
46
|
+
this.productService.nameLong,
|
|
48
47
|
TargetPlatformToString(await this.getTargetPlatform())
|
|
49
|
-
))} [${( localize(
|
|
48
|
+
))} [${( localize(1697, "Learn Why"))}](${learnLink})`));
|
|
50
49
|
}
|
|
51
50
|
return true;
|
|
52
51
|
}
|
|
@@ -111,7 +110,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
111
110
|
}
|
|
112
111
|
async installGalleryExtensions(extensions) {
|
|
113
112
|
if (!this.galleryService.isEnabled()) {
|
|
114
|
-
throw ( new ExtensionManagementError(( localize(
|
|
113
|
+
throw ( new ExtensionManagementError(( localize(1698, "Marketplace is not enabled")), ExtensionManagementErrorCode.NotAllowed));
|
|
115
114
|
}
|
|
116
115
|
const results = [];
|
|
117
116
|
const installableExtensions = [];
|
|
@@ -527,9 +526,9 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
527
526
|
async checkAndGetCompatibleVersion(extension, sameVersion, installPreRelease, productVersion) {
|
|
528
527
|
let compatibleExtension;
|
|
529
528
|
const extensionsControlManifest = await this.getExtensionsControlManifest();
|
|
530
|
-
if ((
|
|
529
|
+
if (isMalicious(extension.identifier, extensionsControlManifest)) {
|
|
531
530
|
throw ( new ExtensionManagementError(( localize(
|
|
532
|
-
|
|
531
|
+
1699,
|
|
533
532
|
"Can't install '{0}' extension since it was reported to be problematic.",
|
|
534
533
|
extension.identifier.id
|
|
535
534
|
)), ExtensionManagementErrorCode.Malicious));
|
|
@@ -540,7 +539,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
540
539
|
compatibleExtension = (await this.galleryService.getExtensions([{ id: deprecationInfo.extension.id, preRelease: deprecationInfo.extension.preRelease }], { targetPlatform: await this.getTargetPlatform(), compatible: true, productVersion }, CancellationToken.None))[0];
|
|
541
540
|
if (!compatibleExtension) {
|
|
542
541
|
throw ( new ExtensionManagementError(( localize(
|
|
543
|
-
|
|
542
|
+
1700,
|
|
544
543
|
"Can't install '{0}' extension since it was deprecated and the replacement extension '{1}' can't be found.",
|
|
545
544
|
extension.identifier.id,
|
|
546
545
|
deprecationInfo.extension.id
|
|
@@ -551,8 +550,8 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
551
550
|
if ((await this.canInstall(extension)) !== true) {
|
|
552
551
|
const targetPlatform = await this.getTargetPlatform();
|
|
553
552
|
throw ( new ExtensionManagementError(( localize(
|
|
554
|
-
|
|
555
|
-
"The '{0}' extension is not available in {1} for {2}.",
|
|
553
|
+
1696,
|
|
554
|
+
"The '{0}' extension is not available in {1} for the {2}.",
|
|
556
555
|
extension.identifier.id,
|
|
557
556
|
this.productService.nameLong,
|
|
558
557
|
TargetPlatformToString(targetPlatform)
|
|
@@ -563,7 +562,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
563
562
|
const incompatibleApiProposalsMessages = [];
|
|
564
563
|
if (!areApiProposalsCompatible(extension.properties.enabledApiProposals ?? [], incompatibleApiProposalsMessages)) {
|
|
565
564
|
throw ( new ExtensionManagementError(( localize(
|
|
566
|
-
|
|
565
|
+
1701,
|
|
567
566
|
"Can't install '{0}' extension. {1}",
|
|
568
567
|
extension.displayName ?? extension.identifier.id,
|
|
569
568
|
incompatibleApiProposalsMessages[0]
|
|
@@ -571,13 +570,13 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
571
570
|
}
|
|
572
571
|
if (!installPreRelease && extension.properties.isPreReleaseVersion && (await this.galleryService.getExtensions([extension.identifier], CancellationToken.None))[0]) {
|
|
573
572
|
throw ( new ExtensionManagementError(( localize(
|
|
574
|
-
|
|
573
|
+
1702,
|
|
575
574
|
"Can't install release version of '{0}' extension because it has no release version.",
|
|
576
575
|
extension.displayName ?? extension.identifier.id
|
|
577
576
|
)), ExtensionManagementErrorCode.ReleaseVersionNotFound));
|
|
578
577
|
}
|
|
579
578
|
throw ( new ExtensionManagementError(( localize(
|
|
580
|
-
|
|
579
|
+
1703,
|
|
581
580
|
"Can't install '{0}' extension because it is not compatible with the current version of {1} (version {2}).",
|
|
582
581
|
extension.identifier.id,
|
|
583
582
|
this.productService.nameLong,
|
|
@@ -751,7 +750,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
751
750
|
if (extensionToUninstall === dependingExtension) {
|
|
752
751
|
if (dependents.length === 1) {
|
|
753
752
|
return localize(
|
|
754
|
-
|
|
753
|
+
1704,
|
|
755
754
|
"Cannot uninstall '{0}' extension. '{1}' extension depends on this.",
|
|
756
755
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
757
756
|
dependents[0].manifest.displayName || dependents[0].manifest.name
|
|
@@ -759,7 +758,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
759
758
|
}
|
|
760
759
|
if (dependents.length === 2) {
|
|
761
760
|
return localize(
|
|
762
|
-
|
|
761
|
+
1705,
|
|
763
762
|
"Cannot uninstall '{0}' extension. '{1}' and '{2}' extensions depend on this.",
|
|
764
763
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
765
764
|
dependents[0].manifest.displayName || dependents[0].manifest.name,
|
|
@@ -767,7 +766,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
767
766
|
);
|
|
768
767
|
}
|
|
769
768
|
return localize(
|
|
770
|
-
|
|
769
|
+
1706,
|
|
771
770
|
"Cannot uninstall '{0}' extension. '{1}', '{2}' and other extension depend on this.",
|
|
772
771
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
773
772
|
dependents[0].manifest.displayName || dependents[0].manifest.name,
|
|
@@ -776,7 +775,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
776
775
|
}
|
|
777
776
|
if (dependents.length === 1) {
|
|
778
777
|
return localize(
|
|
779
|
-
|
|
778
|
+
1707,
|
|
780
779
|
"Cannot uninstall '{0}' extension . It includes uninstalling '{1}' extension and '{2}' extension depends on this.",
|
|
781
780
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
782
781
|
dependingExtension.manifest.displayName
|
|
@@ -786,7 +785,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
786
785
|
}
|
|
787
786
|
if (dependents.length === 2) {
|
|
788
787
|
return localize(
|
|
789
|
-
|
|
788
|
+
1708,
|
|
790
789
|
"Cannot uninstall '{0}' extension. It includes uninstalling '{1}' extension and '{2}' and '{3}' extensions depend on this.",
|
|
791
790
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
792
791
|
dependingExtension.manifest.displayName
|
|
@@ -796,7 +795,7 @@ let AbstractExtensionManagementService = class AbstractExtensionManagementServic
|
|
|
796
795
|
);
|
|
797
796
|
}
|
|
798
797
|
return localize(
|
|
799
|
-
|
|
798
|
+
1709,
|
|
800
799
|
"Cannot uninstall '{0}' extension. It includes uninstalling '{1}' extension and '{2}', '{3}' and other extensions depend on this.",
|
|
801
800
|
extensionToUninstall.manifest.displayName || extensionToUninstall.manifest.name,
|
|
802
801
|
dependingExtension.manifest.displayName
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
-
import { IGalleryExtension } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement";
|
|
2
|
+
import { IGalleryExtension, AllowedExtensionsConfigValueType } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement";
|
|
3
3
|
import { IAllowedExtensionsService } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensionManagement/common/extensionManagement.service";
|
|
4
4
|
import { IExtension, TargetPlatform } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions";
|
|
5
5
|
import { IProductService } from "@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service";
|
|
@@ -8,10 +8,11 @@ import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
|
|
|
8
8
|
export declare class AllowedExtensionsService extends Disposable implements IAllowedExtensionsService {
|
|
9
9
|
protected readonly configurationService: IConfigurationService;
|
|
10
10
|
_serviceBrand: undefined;
|
|
11
|
-
private allowedExtensions;
|
|
12
11
|
private readonly publisherOrgs;
|
|
12
|
+
private _allowedExtensionsConfigValue;
|
|
13
|
+
get allowedExtensionsConfigValue(): AllowedExtensionsConfigValueType | undefined;
|
|
13
14
|
private _onDidChangeAllowedExtensions;
|
|
14
|
-
readonly
|
|
15
|
+
readonly onDidChangeAllowedExtensionsConfigValue: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
|
|
15
16
|
constructor(productService: IProductService, configurationService: IConfigurationService);
|
|
16
17
|
private getAllowedExtensionsValue;
|
|
17
18
|
isAllowed(extension: IGalleryExtension | IExtension | {
|
|
@@ -19,23 +19,25 @@ function isIExtension(extension) {
|
|
|
19
19
|
}
|
|
20
20
|
const VersionRegex = /^(?<version>\d+\.\d+\.\d+(-.*)?)(@(?<platform>.+))?$/;
|
|
21
21
|
let AllowedExtensionsService = class AllowedExtensionsService extends Disposable {
|
|
22
|
+
get allowedExtensionsConfigValue() {
|
|
23
|
+
return this._allowedExtensionsConfigValue;
|
|
24
|
+
}
|
|
22
25
|
constructor(productService, configurationService) {
|
|
23
26
|
super();
|
|
24
27
|
this.configurationService = configurationService;
|
|
25
28
|
this._onDidChangeAllowedExtensions = this._register(( new Emitter()));
|
|
26
|
-
this.
|
|
29
|
+
this.onDidChangeAllowedExtensionsConfigValue = this._onDidChangeAllowedExtensions.event;
|
|
27
30
|
this.publisherOrgs = productService.extensionPublisherOrgs?.map(p => p.toLowerCase()) ?? [];
|
|
28
|
-
this.
|
|
31
|
+
this._allowedExtensionsConfigValue = this.getAllowedExtensionsValue();
|
|
29
32
|
this._register(this.configurationService.onDidChangeConfiguration(e => {
|
|
30
33
|
if (e.affectsConfiguration(AllowedExtensionsConfigKey)) {
|
|
31
|
-
this.
|
|
34
|
+
this._allowedExtensionsConfigValue = this.getAllowedExtensionsValue();
|
|
32
35
|
this._onDidChangeAllowedExtensions.fire();
|
|
33
36
|
}
|
|
34
37
|
}));
|
|
35
38
|
}
|
|
36
39
|
getAllowedExtensionsValue() {
|
|
37
|
-
const
|
|
38
|
-
const value = inspectValue.policyValue ?? inspectValue.userValue ?? inspectValue.defaultValue;
|
|
40
|
+
const value = this.configurationService.getValue(AllowedExtensionsConfigKey);
|
|
39
41
|
if (!isObject(value) || Array.isArray(value)) {
|
|
40
42
|
return undefined;
|
|
41
43
|
}
|
|
@@ -46,7 +48,7 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
46
48
|
return Object.fromEntries(entries);
|
|
47
49
|
}
|
|
48
50
|
isAllowed(extension) {
|
|
49
|
-
if (!this.
|
|
51
|
+
if (!this._allowedExtensionsConfigValue) {
|
|
50
52
|
return true;
|
|
51
53
|
}
|
|
52
54
|
let id, version, targetPlatform, prerelease, publisher, publisherDisplayName;
|
|
@@ -77,15 +79,15 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
77
79
|
const settingsCommandLink = ( ( URI.parse(
|
|
78
80
|
`command:workbench.action.openSettings?${encodeURIComponent(JSON.stringify({ query: `@id:${AllowedExtensionsConfigKey}` }))}`
|
|
79
81
|
)).toString());
|
|
80
|
-
const extensionValue = this.
|
|
81
|
-
const extensionReason = ( new MarkdownString(( localize(
|
|
82
|
+
const extensionValue = this._allowedExtensionsConfigValue[id];
|
|
83
|
+
const extensionReason = ( new MarkdownString(( localize(1710, "it is not in the [allowed list]({0})", settingsCommandLink))));
|
|
82
84
|
if (!isUndefined(extensionValue)) {
|
|
83
85
|
if (isBoolean(extensionValue)) {
|
|
84
86
|
return extensionValue ? true : extensionReason;
|
|
85
87
|
}
|
|
86
88
|
if (extensionValue === 'stable' && prerelease) {
|
|
87
89
|
return (new MarkdownString(localize(
|
|
88
|
-
|
|
90
|
+
1711,
|
|
89
91
|
"the pre-release versions of this extension are not in the [allowed list]({0})",
|
|
90
92
|
settingsCommandLink
|
|
91
93
|
)));
|
|
@@ -105,7 +107,7 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
105
107
|
return false;
|
|
106
108
|
}))) {
|
|
107
109
|
return (new MarkdownString(localize(
|
|
108
|
-
|
|
110
|
+
1712,
|
|
109
111
|
"the version {0} of this extension is not in the [allowed list]({1})",
|
|
110
112
|
version,
|
|
111
113
|
settingsCommandLink
|
|
@@ -114,11 +116,11 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
114
116
|
return true;
|
|
115
117
|
}
|
|
116
118
|
const publisherKey = publisherDisplayName && this.publisherOrgs.includes(publisherDisplayName) ? publisherDisplayName : publisher;
|
|
117
|
-
const publisherValue = this.
|
|
119
|
+
const publisherValue = this._allowedExtensionsConfigValue[publisherKey];
|
|
118
120
|
if (!isUndefined(publisherValue)) {
|
|
119
121
|
if (isBoolean(publisherValue)) {
|
|
120
122
|
return publisherValue ? true : ( new MarkdownString(( localize(
|
|
121
|
-
|
|
123
|
+
1713,
|
|
122
124
|
"the extensions from this publisher are not in the [allowed list]({1})",
|
|
123
125
|
publisherKey,
|
|
124
126
|
settingsCommandLink
|
|
@@ -126,7 +128,7 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
126
128
|
}
|
|
127
129
|
if (publisherValue === 'stable' && prerelease) {
|
|
128
130
|
return (new MarkdownString(localize(
|
|
129
|
-
|
|
131
|
+
1714,
|
|
130
132
|
"the pre-release versions from this publisher are not in the [allowed list]({1})",
|
|
131
133
|
publisherKey,
|
|
132
134
|
settingsCommandLink
|
|
@@ -134,7 +136,7 @@ let AllowedExtensionsService = class AllowedExtensionsService extends Disposable
|
|
|
134
136
|
}
|
|
135
137
|
return true;
|
|
136
138
|
}
|
|
137
|
-
if (this.
|
|
139
|
+
if (this._allowedExtensionsConfigValue['*'] === true) {
|
|
138
140
|
return true;
|
|
139
141
|
}
|
|
140
142
|
return extensionReason;
|
|
@@ -60,7 +60,7 @@ declare abstract class AbstractExtensionGalleryService implements IExtensionGall
|
|
|
60
60
|
private isValidVersion;
|
|
61
61
|
query(options: IQueryOptions, token: CancellationToken): Promise<IPager<IGalleryExtension>>;
|
|
62
62
|
private queryGalleryExtensions;
|
|
63
|
-
private
|
|
63
|
+
private getRawGalleryExtensionVersion;
|
|
64
64
|
private queryRawGalleryExtensions;
|
|
65
65
|
private getLatestRawGalleryExtension;
|
|
66
66
|
reportStatistic(publisher: string, name: string, version: string, type: StatisticType): Promise<void>;
|