@lvce-editor/extension-management-worker 4.88.3 → 4.88.4

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.
@@ -2187,7 +2187,7 @@ const getAllExtensionsWithState = async (extensionsState, assetDir, platform, fi
2187
2187
  const compatibleExtensions = [...webExtensions, ...meta].filter(extension => isExtensionCompatible(extension, resolvedPlatform));
2188
2188
  extensions = await getExtensionsWithState(compatibleExtensions, extensionsState, resolvedPlatform);
2189
2189
  } else {
2190
- const local = await invoke$3('ExtensionManagement.getAllExtensions');
2190
+ const local = fields === undefined ? await invoke$3('ExtensionManagement.getAllExtensions') : await invoke$3('ExtensionManagement.getAllExtensions', [...new Set([...fields, 'id', 'disabled'])]);
2191
2191
  extensions = await getExtensionsWithState([...local, ...meta], extensionsState, resolvedPlatform);
2192
2192
  }
2193
2193
  if (fields === undefined) {
@@ -3916,6 +3916,9 @@ const executeLanguageServerCompletion = async (rpc, extension, textDocument, off
3916
3916
  return result.map(sanitizeCompletionItem).filter(item => item !== undefined);
3917
3917
  };
3918
3918
 
3919
+ // Preserve provider activation, RPC permissions, application identity and language-server metadata.
3920
+ const languageProviderManifestFields = ['applicationGeneration', 'applicationId', 'browser', 'builtin', 'completionProviders', 'contentSecurityPolicy', 'diagnosticProviders', 'disabled', 'id', 'isolated', 'isWeb', 'languageServers', 'path', 'rpc', 'uri', 'workerName'];
3921
+
3919
3922
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
3920
3923
 
3921
3924
  const contributesCompletionProvider = (extension, languageId) => {
@@ -3925,7 +3928,7 @@ const contributesLanguageServer$3 = (extension, languageId) => {
3925
3928
  return Array.isArray(extension.languageServers) && extension.languageServers.some(languageServer => languageServer.languageId === languageId);
3926
3929
  };
3927
3930
  const getMatchingExtensions$6 = async (extensionsState, textDocument, assetDir, platform) => {
3928
- const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
3931
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform, languageProviderManifestFields);
3929
3932
  return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesCompletionProvider(extension, textDocument.languageId) || contributesLanguageServer$3(extension, textDocument.languageId)));
3930
3933
  };
3931
3934
  const executeRpcCompletionProvider = async (rpc, textDocument, args) => {
@@ -4015,7 +4018,7 @@ const contributesLanguageServer$2 = (extension, languageId) => {
4015
4018
  return Array.isArray(extension.languageServers) && extension.languageServers.some(languageServer => languageServer.languageId === languageId);
4016
4019
  };
4017
4020
  const getMatchingExtensions$5 = async (extensionsState, textDocument, assetDir, platform) => {
4018
- const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
4021
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform, languageProviderManifestFields);
4019
4022
  return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesDiagnosticProvider(extension, textDocument.languageId) || contributesLanguageServer$2(extension, textDocument.languageId)));
4020
4023
  };
4021
4024
  const executeRpcDiagnosticProvider = async (rpc, textDocument, args) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/extension-management-worker",
3
- "version": "4.88.3",
3
+ "version": "4.88.4",
4
4
  "description": "Webworker for the Extension Management functionality in Lvce Editor.",
5
5
  "keywords": [
6
6
  "web-worker"