@lvce-editor/extension-management-worker 4.44.0 → 4.45.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.
|
@@ -594,7 +594,7 @@ let CommandNotFoundError$1 = class CommandNotFoundError extends Error {
|
|
|
594
594
|
}
|
|
595
595
|
};
|
|
596
596
|
const commands = Object.create(null);
|
|
597
|
-
const register = commandMap => {
|
|
597
|
+
const register$1 = commandMap => {
|
|
598
598
|
Object.assign(commands, commandMap);
|
|
599
599
|
};
|
|
600
600
|
const getCommand = key => {
|
|
@@ -1089,7 +1089,7 @@ const create$8 = async ({
|
|
|
1089
1089
|
messagePort
|
|
1090
1090
|
}) => {
|
|
1091
1091
|
// TODO create a commandMap per rpc instance
|
|
1092
|
-
register(commandMap);
|
|
1092
|
+
register$1(commandMap);
|
|
1093
1093
|
const rawIpc = await IpcParentWithMessagePort$1.create({
|
|
1094
1094
|
isMessagePortOpen,
|
|
1095
1095
|
messagePort
|
|
@@ -1185,7 +1185,7 @@ const create$5 = async ({
|
|
|
1185
1185
|
webSocket
|
|
1186
1186
|
}) => {
|
|
1187
1187
|
// TODO create a commandMap per rpc instance
|
|
1188
|
-
register(commandMap);
|
|
1188
|
+
register$1(commandMap);
|
|
1189
1189
|
let rawIpc;
|
|
1190
1190
|
try {
|
|
1191
1191
|
rawIpc = await IpcParentWithWebSocket$1.create({
|
|
@@ -1260,7 +1260,7 @@ const create$3 = async ({
|
|
|
1260
1260
|
messagePort
|
|
1261
1261
|
}) => {
|
|
1262
1262
|
// TODO create a commandMap per rpc instance
|
|
1263
|
-
register(commandMap);
|
|
1263
|
+
register$1(commandMap);
|
|
1264
1264
|
const rawIpc = await IpcParentWithMessagePort$1.create({
|
|
1265
1265
|
isMessagePortOpen,
|
|
1266
1266
|
messagePort
|
|
@@ -1275,7 +1275,7 @@ const create$2 = async ({
|
|
|
1275
1275
|
commandMap
|
|
1276
1276
|
}) => {
|
|
1277
1277
|
// TODO create a commandMap per rpc instance
|
|
1278
|
-
register(commandMap);
|
|
1278
|
+
register$1(commandMap);
|
|
1279
1279
|
const ipc = await listen$1(IpcChildWithModuleWorkerAndMessagePort$1);
|
|
1280
1280
|
handleIpc(ipc);
|
|
1281
1281
|
const rpc = createRpc(ipc);
|
|
@@ -1696,6 +1696,17 @@ const activateExtension2 = async (extensionId, extension, absolutePath, extensio
|
|
|
1696
1696
|
|
|
1697
1697
|
const commandMapRef = {};
|
|
1698
1698
|
|
|
1699
|
+
const extensionIds = new Set();
|
|
1700
|
+
const register = extensionId => {
|
|
1701
|
+
extensionIds.add(extensionId);
|
|
1702
|
+
};
|
|
1703
|
+
const unregister = extensionId => {
|
|
1704
|
+
extensionIds.delete(extensionId);
|
|
1705
|
+
};
|
|
1706
|
+
const getRegisteredExtensionIds = () => {
|
|
1707
|
+
return [...extensionIds];
|
|
1708
|
+
};
|
|
1709
|
+
|
|
1699
1710
|
const extensions = Object.create(null);
|
|
1700
1711
|
const get$4 = extensionId => {
|
|
1701
1712
|
return extensions[extensionId];
|
|
@@ -1819,8 +1830,14 @@ const createExtensionCommandMap = extensionId => {
|
|
|
1819
1830
|
'Extensions.getSecret'(key) {
|
|
1820
1831
|
return getSecret(extensionId, key);
|
|
1821
1832
|
},
|
|
1833
|
+
'Extensions.registerFileChangeHandler'() {
|
|
1834
|
+
register(extensionId);
|
|
1835
|
+
},
|
|
1822
1836
|
'Extensions.storeSecret'(key, value) {
|
|
1823
1837
|
return storeSecret(extensionId, key, value);
|
|
1838
|
+
},
|
|
1839
|
+
'Extensions.unregisterFileChangeHandler'() {
|
|
1840
|
+
unregister(extensionId);
|
|
1824
1841
|
}
|
|
1825
1842
|
};
|
|
1826
1843
|
};
|
|
@@ -2561,6 +2578,7 @@ const createWebViewWorkerRpc = async (rpcInfo, port) => {
|
|
|
2561
2578
|
};
|
|
2562
2579
|
|
|
2563
2580
|
const disposeIsolatedExtensionHostWorker = async (extensionId, invoke$1 = invoke) => {
|
|
2581
|
+
unregister(extensionId);
|
|
2564
2582
|
const rpc = remove$1(extensionId);
|
|
2565
2583
|
if (!rpc) {
|
|
2566
2584
|
return false;
|
|
@@ -2853,7 +2871,7 @@ const contributesLanguageServer$1 = (extension, languageId) => {
|
|
|
2853
2871
|
};
|
|
2854
2872
|
const getMatchingExtensions$5 = async (extensionsState, textDocument, assetDir, platform) => {
|
|
2855
2873
|
const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
|
|
2856
|
-
return extensions.filter(extension => isExtensionIsolated(extension) && (contributesCompletionProvider(extension, textDocument.languageId) || contributesLanguageServer$1(extension, textDocument.languageId)));
|
|
2874
|
+
return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesCompletionProvider(extension, textDocument.languageId) || contributesLanguageServer$1(extension, textDocument.languageId)));
|
|
2857
2875
|
};
|
|
2858
2876
|
const executeRpcCompletionProvider = async (rpc, textDocument, args) => {
|
|
2859
2877
|
return rpc.invoke('ExtensionApi.executeCompletionProvider', textDocument, ...args);
|
|
@@ -2935,7 +2953,7 @@ const contributesLanguageServer = (extension, languageId) => {
|
|
|
2935
2953
|
};
|
|
2936
2954
|
const getMatchingExtensions$4 = async (extensionsState, textDocument, assetDir, platform) => {
|
|
2937
2955
|
const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
|
|
2938
|
-
return extensions.filter(extension => isExtensionIsolated(extension) && (contributesDiagnosticProvider(extension, textDocument.languageId) || contributesLanguageServer(extension, textDocument.languageId)));
|
|
2956
|
+
return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && (contributesDiagnosticProvider(extension, textDocument.languageId) || contributesLanguageServer(extension, textDocument.languageId)));
|
|
2939
2957
|
};
|
|
2940
2958
|
const executeRpcDiagnosticProvider = async (rpc, textDocument, args) => {
|
|
2941
2959
|
return rpc.invoke('ExtensionApi.executeDiagnosticProvider', textDocument, ...args);
|
|
@@ -3007,7 +3025,7 @@ const contributesFormattingProvider = (extension, languageId) => {
|
|
|
3007
3025
|
};
|
|
3008
3026
|
const getMatchingExtensions$3 = async (extensionsState, textDocument, assetDir, platform) => {
|
|
3009
3027
|
const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
|
|
3010
|
-
return extensions.filter(extension => isExtensionIsolated(extension) && contributesFormattingProvider(extension, textDocument.languageId));
|
|
3028
|
+
return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesFormattingProvider(extension, textDocument.languageId));
|
|
3011
3029
|
};
|
|
3012
3030
|
const executeRpcFormattingProvider = async (rpc, textDocument, args) => {
|
|
3013
3031
|
return rpc.invoke('ExtensionApi.executeFormattingProvider', textDocument, ...args);
|
|
@@ -3030,7 +3048,7 @@ const contributesHoverProvider = (extension, languageId) => {
|
|
|
3030
3048
|
};
|
|
3031
3049
|
const getMatchingExtensions$2 = async (extensionsState, textDocument, assetDir, platform) => {
|
|
3032
3050
|
const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
|
|
3033
|
-
return extensions.filter(extension => isExtensionIsolated(extension) && contributesHoverProvider(extension, textDocument.languageId));
|
|
3051
|
+
return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesHoverProvider(extension, textDocument.languageId));
|
|
3034
3052
|
};
|
|
3035
3053
|
const executeRpcHoverProvider = async (rpc, textDocument, args) => {
|
|
3036
3054
|
return rpc.invoke('ExtensionApi.executeHoverProvider', textDocument, ...args);
|
|
@@ -3064,7 +3082,7 @@ const contributesLanguageProvider = (extension, kind, languageId) => {
|
|
|
3064
3082
|
};
|
|
3065
3083
|
const getMatchingExtensions$1 = async (extensionsState, kind, textDocument, assetDir, platform) => {
|
|
3066
3084
|
const extensions = await getAllExtensionsWithState(extensionsState, assetDir, platform);
|
|
3067
|
-
return extensions.filter(extension => isExtensionIsolated(extension) && contributesLanguageProvider(extension, kind, textDocument.languageId));
|
|
3085
|
+
return extensions.filter(extension => !extension.disabled && isExtensionIsolated(extension) && contributesLanguageProvider(extension, kind, textDocument.languageId));
|
|
3068
3086
|
};
|
|
3069
3087
|
const executeRpcLanguageProvider = async (rpc, kind, methodName, textDocument, args) => {
|
|
3070
3088
|
return rpc.invoke('ExtensionApi.executeLanguageProvider', kind, methodName, textDocument, ...args);
|
|
@@ -3899,6 +3917,19 @@ const getViews = async (assetDir, platform) => {
|
|
|
3899
3917
|
|
|
3900
3918
|
const handleData = () => {};
|
|
3901
3919
|
|
|
3920
|
+
const invokeHandler = async (extensionId, changes) => {
|
|
3921
|
+
const rpc = get$3(extensionId);
|
|
3922
|
+
if (!rpc) {
|
|
3923
|
+
unregister(extensionId);
|
|
3924
|
+
return;
|
|
3925
|
+
}
|
|
3926
|
+
await rpc.invoke('ExtensionApi.handleFileChanges', changes);
|
|
3927
|
+
};
|
|
3928
|
+
const handleFileChanges = async (changes = {}) => {
|
|
3929
|
+
const extensionIds = getRegisteredExtensionIds();
|
|
3930
|
+
await Promise.allSettled(extensionIds.map(async extensionId => invokeHandler(extensionId, changes)));
|
|
3931
|
+
};
|
|
3932
|
+
|
|
3902
3933
|
const handleMessagePort = async (port, rpcId) => {
|
|
3903
3934
|
await create$8({
|
|
3904
3935
|
commandMap: commandMapRef,
|
|
@@ -4103,6 +4134,7 @@ const commandMap = {
|
|
|
4103
4134
|
'Extensions.getViewMenuEntries': getViewMenuEntries,
|
|
4104
4135
|
'Extensions.getViews': getViews,
|
|
4105
4136
|
'Extensions.handleData': handleData,
|
|
4137
|
+
'Extensions.handleFileChanges': handleFileChanges,
|
|
4106
4138
|
'Extensions.handleMessagePort': handleMessagePort,
|
|
4107
4139
|
'Extensions.handleUncaughtExtensionError': handleUncaughtExtensionError,
|
|
4108
4140
|
'Extensions.handleViewContextChange': handleViewContextChange,
|