@lvce-editor/extension-management-worker 4.36.0 → 4.37.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.
@@ -2797,6 +2797,37 @@ const executeDiagnosticProvider = async (extensionsState, textDocument, ...args)
2797
2797
 
2798
2798
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2799
2799
 
2800
+ const getProviderIds$1 = extension => {
2801
+ if (!Array.isArray(extension.fileSystemProviders)) {
2802
+ return [];
2803
+ }
2804
+ return extension.fileSystemProviders.map(provider => provider.id).filter(id => typeof id === 'string');
2805
+ };
2806
+ const findExtension$1 = (extensions, providerId) => {
2807
+ return extensions.find(extension => getProviderIds$1(extension).includes(providerId));
2808
+ };
2809
+ const executeFileSystemProviderReadFile = async (extensionsState, providerId, uri) => {
2810
+ const {
2811
+ assetDir,
2812
+ platform
2813
+ } = await getRuntimeContext('', extensionsState.platform);
2814
+ const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
2815
+ const extension = findExtension$1(extensions.filter(candidate => !candidate.disabled && isExtensionIsolated(candidate)), providerId);
2816
+ if (!extension) {
2817
+ return {
2818
+ found: false
2819
+ };
2820
+ }
2821
+ const rpc = await getRpc$1(extension, assetDir, platform);
2822
+ const result = await rpc.invoke('ExtensionApi.executeFileSystemProviderReadFile', providerId, uri);
2823
+ return {
2824
+ found: true,
2825
+ result
2826
+ };
2827
+ };
2828
+
2829
+ /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types */
2830
+
2800
2831
  const contributesFormattingProvider = (extension, languageId) => {
2801
2832
  return Array.isArray(extension.formattingProviders) && extension.formattingProviders.some(provider => provider.languageId === languageId);
2802
2833
  };
@@ -3802,6 +3833,7 @@ const commandMap = {
3802
3833
  'Extensions.executeCompletionProvider': wrapCommand(executeCompletionProvider),
3803
3834
  'Extensions.executeDiagnosticProvider': wrapCommand(executeDiagnosticProvider),
3804
3835
  'Extensions.executeExtensionCommand': wrapCommand(executeExtensionCommand),
3836
+ 'Extensions.executeFileSystemProviderReadFile': wrapCommand(executeFileSystemProviderReadFile),
3805
3837
  'Extensions.executeFormattingProvider': wrapCommand(executeFormattingProvider),
3806
3838
  'Extensions.executeHoverProvider': wrapCommand(executeHoverProvider),
3807
3839
  'Extensions.executeLanguageProvider': wrapCommand(executeLanguageProvider),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/extension-management-worker",
3
- "version": "4.36.0",
3
+ "version": "4.37.0",
4
4
  "description": "Webworker for the Extension Management functionality in Lvce Editor.",
5
5
  "keywords": [
6
6
  "web-worker"