@lvce-editor/extension-host-worker 8.16.0 → 8.18.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/dist/extension-api/index.js +1422 -0
- package/dist/extension-api/parts/Activation/Activation.js +13 -0
- package/dist/extension-api/parts/AssertCompletionProvider/AssertCompletionProvider.js +25 -0
- package/dist/extension-api/parts/AssertFormattingProvider/AssertFormattingProvider.js +22 -0
- package/dist/extension-api/parts/AssertStatusBarItemProvider/AssertStatusBarItemProvider.js +19 -0
- package/dist/extension-api/parts/Command/Command.js +0 -0
- package/dist/extension-api/parts/CommandCallback/CommandCallback.js +0 -0
- package/dist/extension-api/parts/CommandMap/CommandMap.js +14 -0
- package/dist/extension-api/parts/CommandRegistry/CommandRegistry.js +53 -0
- package/dist/extension-api/parts/CommandRegistrySnapshot/CommandRegistrySnapshot.js +0 -0
- package/dist/extension-api/parts/Completion/Completion.js +11 -0
- package/dist/extension-api/parts/CompletionItem/CompletionItem.js +0 -0
- package/dist/extension-api/parts/CompletionProvider/CompletionProvider.js +0 -0
- package/dist/extension-api/parts/CompletionProviderRegistry/CompletionProviderRegistry.js +78 -0
- package/dist/extension-api/parts/CompletionProviderRegistrySnapshot/CompletionProviderRegistrySnapshot.js +0 -0
- package/dist/extension-api/parts/CompletionProviderState/CompletionProviderState.js +10 -0
- package/dist/extension-api/parts/CompletionTextDocument/CompletionTextDocument.js +0 -0
- package/dist/extension-api/parts/Disposable/Disposable.js +0 -0
- package/dist/extension-api/parts/ExecuteCommand/ExecuteCommand.js +7 -0
- package/dist/extension-api/parts/ExecuteCompletionProvider/ExecuteCompletionProvider.js +5 -0
- package/dist/extension-api/parts/ExecuteFormattingProvider/ExecuteFormattingProvider.js +4 -0
- package/dist/extension-api/parts/ExecuteHoverProvider/ExecuteHoverProvider.js +4 -0
- package/dist/extension-api/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.js +20 -0
- package/dist/extension-api/parts/ExtensionApiError/ExtensionApiError.js +9 -0
- package/dist/extension-api/parts/ExtensionApiWorkerCommandMap/ExtensionApiWorkerCommandMap.js +15 -0
- package/dist/extension-api/parts/ExtensionApiWorkerHandleMessagePort/ExtensionApiWorkerHandleMessagePort.js +21 -0
- package/dist/extension-api/parts/ExtensionApiWorkerListen/ExtensionApiWorkerListen.js +11 -0
- package/dist/extension-api/parts/Formatting/Formatting.js +10 -0
- package/dist/extension-api/parts/FormattingEdit/FormattingEdit.js +0 -0
- package/dist/extension-api/parts/FormattingProvider/FormattingProvider.js +0 -0
- package/dist/extension-api/parts/FormattingProviderRegistry/FormattingProviderRegistry.js +42 -0
- package/dist/extension-api/parts/FormattingProviderRegistrySnapshot/FormattingProviderRegistrySnapshot.js +0 -0
- package/dist/extension-api/parts/FormattingProviderState/FormattingProviderState.js +10 -0
- package/dist/extension-api/parts/FormattingTextDocument/FormattingTextDocument.js +0 -0
- package/dist/extension-api/parts/GetCompletionProviderRegistrySnapshot/GetCompletionProviderRegistrySnapshot.js +4 -0
- package/dist/extension-api/parts/GetFormattingProviderRegistrySnapshot/GetFormattingProviderRegistrySnapshot.js +4 -0
- package/dist/extension-api/parts/GetHoverProviderRegistrySnapshot/GetHoverProviderRegistrySnapshot.js +4 -0
- package/dist/extension-api/parts/GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.js +4 -0
- package/dist/extension-api/parts/GetStatusBarItems/GetStatusBarItems.js +4 -0
- package/dist/extension-api/parts/HandleExtensionManagementMessagePort/HandleExtensionManagementMessagePort.js +17 -0
- package/dist/extension-api/parts/Hover/Hover.js +10 -0
- package/dist/extension-api/parts/HoverProvider/HoverProvider.js +0 -0
- package/dist/extension-api/parts/HoverProviderRegistry/HoverProviderRegistry.js +64 -0
- package/dist/extension-api/parts/HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.js +0 -0
- package/dist/extension-api/parts/HoverResult/HoverResult.js +0 -0
- package/dist/extension-api/parts/HoverTextDocument/HoverTextDocument.js +0 -0
- package/dist/extension-api/parts/NotifyStatusBarChange/NotifyStatusBarChange.js +7 -0
- package/dist/extension-api/parts/ProviderRegistry/ProviderRegistry.js +95 -0
- package/dist/extension-api/parts/QuickPick/QuickPick.js +7 -0
- package/dist/extension-api/parts/QuickPickItem/QuickPickItem.js +0 -0
- package/dist/extension-api/parts/RegisterCompletionProvider/RegisterCompletionProvider.js +4 -0
- package/dist/extension-api/parts/RegisterFormattingProvider/RegisterFormattingProvider.js +4 -0
- package/dist/extension-api/parts/RegisterHoverProvider/RegisterHoverProvider.js +4 -0
- package/dist/extension-api/parts/RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.js +4 -0
- package/dist/extension-api/parts/RegisteredCommand/RegisteredCommand.js +0 -0
- package/dist/extension-api/parts/RegisteredCompletionProvider/RegisteredCompletionProvider.js +0 -0
- package/dist/extension-api/parts/RegisteredFormattingProvider/RegisteredFormattingProvider.js +0 -0
- package/dist/extension-api/parts/RegisteredHoverProvider/RegisteredHoverProvider.js +0 -0
- package/dist/extension-api/parts/RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.js +0 -0
- package/dist/extension-api/parts/ResetCompletionProviderRegistry/ResetCompletionProviderRegistry.js +4 -0
- package/dist/extension-api/parts/ResetFormattingProviderRegistry/ResetFormattingProviderRegistry.js +4 -0
- package/dist/extension-api/parts/ResetHoverProviderRegistry/ResetHoverProviderRegistry.js +4 -0
- package/dist/extension-api/parts/ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.js +4 -0
- package/dist/extension-api/parts/Rpc/Rpc.js +14 -0
- package/dist/extension-api/parts/ShowQuickPickOptions/ShowQuickPickOptions.js +0 -0
- package/dist/extension-api/parts/StatusBar/StatusBar.js +8 -0
- package/dist/extension-api/parts/StatusBarItem/StatusBarItem.js +0 -0
- package/dist/extension-api/parts/StatusBarItemProvider/StatusBarItemProvider.js +0 -0
- package/dist/extension-api/parts/StatusBarItemProviderHandle/StatusBarItemProviderHandle.js +0 -0
- package/dist/extension-api/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js +52 -0
- package/dist/extension-api/parts/StatusBarItemProviderRegistrySnapshot/StatusBarItemProviderRegistrySnapshot.js +0 -0
- package/dist/extension-api/parts/StatusBarItemProviderState/StatusBarItemProviderState.js +10 -0
- package/dist/extensionHostWorkerMain.js +1412 -1235
- package/extension-api/LICENSE +21 -0
- package/extension-api/README.md +23 -0
- package/extension-api/dist/index.d.ts +20 -0
- package/extension-api/dist/index.js +9 -0
- package/extension-api/dist/parts/Activation/Activation.d.ts +1 -0
- package/extension-api/dist/parts/Activation/Activation.js +10 -0
- package/extension-api/dist/parts/AssertCompletionProvider/AssertCompletionProvider.d.ts +2 -0
- package/extension-api/dist/parts/AssertCompletionProvider/AssertCompletionProvider.js +22 -0
- package/extension-api/dist/parts/AssertFormattingProvider/AssertFormattingProvider.d.ts +2 -0
- package/extension-api/dist/parts/AssertFormattingProvider/AssertFormattingProvider.js +19 -0
- package/extension-api/dist/parts/AssertStatusBarItemProvider/AssertStatusBarItemProvider.d.ts +2 -0
- package/extension-api/dist/parts/AssertStatusBarItemProvider/AssertStatusBarItemProvider.js +16 -0
- package/extension-api/dist/parts/Command/Command.d.ts +5 -0
- package/extension-api/dist/parts/Command/Command.js +1 -0
- package/extension-api/dist/parts/CommandCallback/CommandCallback.d.ts +1 -0
- package/extension-api/dist/parts/CommandCallback/CommandCallback.js +1 -0
- package/extension-api/dist/parts/CommandMap/CommandMap.d.ts +13 -0
- package/extension-api/dist/parts/CommandMap/CommandMap.js +11 -0
- package/extension-api/dist/parts/CommandRegistry/CommandRegistry.d.ts +7 -0
- package/extension-api/dist/parts/CommandRegistry/CommandRegistry.js +47 -0
- package/extension-api/dist/parts/CommandRegistrySnapshot/CommandRegistrySnapshot.d.ts +4 -0
- package/extension-api/dist/parts/CommandRegistrySnapshot/CommandRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/Completion/Completion.d.ts +9 -0
- package/extension-api/dist/parts/Completion/Completion.js +4 -0
- package/extension-api/dist/parts/CompletionItem/CompletionItem.d.ts +3 -0
- package/extension-api/dist/parts/CompletionItem/CompletionItem.js +1 -0
- package/extension-api/dist/parts/CompletionProvider/CompletionProvider.d.ts +8 -0
- package/extension-api/dist/parts/CompletionProvider/CompletionProvider.js +1 -0
- package/extension-api/dist/parts/CompletionProviderRegistry/CompletionProviderRegistry.d.ts +13 -0
- package/extension-api/dist/parts/CompletionProviderRegistry/CompletionProviderRegistry.js +66 -0
- package/extension-api/dist/parts/CompletionProviderRegistrySnapshot/CompletionProviderRegistrySnapshot.d.ts +4 -0
- package/extension-api/dist/parts/CompletionProviderRegistrySnapshot/CompletionProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/CompletionProviderState/CompletionProviderState.d.ts +1 -0
- package/extension-api/dist/parts/CompletionProviderState/CompletionProviderState.js +1 -0
- package/extension-api/dist/parts/CompletionTextDocument/CompletionTextDocument.d.ts +6 -0
- package/extension-api/dist/parts/CompletionTextDocument/CompletionTextDocument.js +1 -0
- package/extension-api/dist/parts/Disposable/Disposable.d.ts +3 -0
- package/extension-api/dist/parts/Disposable/Disposable.js +1 -0
- package/extension-api/dist/parts/ExecuteCommand/ExecuteCommand.d.ts +1 -0
- package/extension-api/dist/parts/ExecuteCommand/ExecuteCommand.js +4 -0
- package/extension-api/dist/parts/ExecuteCompletionProvider/ExecuteCompletionProvider.d.ts +1 -0
- package/extension-api/dist/parts/ExecuteCompletionProvider/ExecuteCompletionProvider.js +1 -0
- package/extension-api/dist/parts/ExecuteFormattingProvider/ExecuteFormattingProvider.d.ts +1 -0
- package/extension-api/dist/parts/ExecuteFormattingProvider/ExecuteFormattingProvider.js +1 -0
- package/extension-api/dist/parts/ExecuteHoverProvider/ExecuteHoverProvider.d.ts +1 -0
- package/extension-api/dist/parts/ExecuteHoverProvider/ExecuteHoverProvider.js +1 -0
- package/extension-api/dist/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.d.ts +12 -0
- package/extension-api/dist/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.js +17 -0
- package/extension-api/dist/parts/ExtensionApiError/ExtensionApiError.d.ts +3 -0
- package/extension-api/dist/parts/ExtensionApiError/ExtensionApiError.js +6 -0
- package/extension-api/dist/parts/ExtensionApiWorkerCommandMap/ExtensionApiWorkerCommandMap.d.ts +14 -0
- package/extension-api/dist/parts/ExtensionApiWorkerCommandMap/ExtensionApiWorkerCommandMap.js +12 -0
- package/extension-api/dist/parts/ExtensionApiWorkerHandleMessagePort/ExtensionApiWorkerHandleMessagePort.d.ts +1 -0
- package/extension-api/dist/parts/ExtensionApiWorkerHandleMessagePort/ExtensionApiWorkerHandleMessagePort.js +18 -0
- package/extension-api/dist/parts/ExtensionApiWorkerListen/ExtensionApiWorkerListen.d.ts +2 -0
- package/extension-api/dist/parts/ExtensionApiWorkerListen/ExtensionApiWorkerListen.js +8 -0
- package/extension-api/dist/parts/Formatting/Formatting.d.ts +9 -0
- package/extension-api/dist/parts/Formatting/Formatting.js +4 -0
- package/extension-api/dist/parts/FormattingEdit/FormattingEdit.d.ts +5 -0
- package/extension-api/dist/parts/FormattingEdit/FormattingEdit.js +1 -0
- package/extension-api/dist/parts/FormattingProvider/FormattingProvider.d.ts +7 -0
- package/extension-api/dist/parts/FormattingProvider/FormattingProvider.js +1 -0
- package/extension-api/dist/parts/FormattingProviderRegistry/FormattingProviderRegistry.d.ts +12 -0
- package/extension-api/dist/parts/FormattingProviderRegistry/FormattingProviderRegistry.js +34 -0
- package/extension-api/dist/parts/FormattingProviderRegistrySnapshot/FormattingProviderRegistrySnapshot.d.ts +4 -0
- package/extension-api/dist/parts/FormattingProviderRegistrySnapshot/FormattingProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/FormattingProviderState/FormattingProviderState.d.ts +1 -0
- package/extension-api/dist/parts/FormattingProviderState/FormattingProviderState.js +1 -0
- package/extension-api/dist/parts/FormattingTextDocument/FormattingTextDocument.d.ts +6 -0
- package/extension-api/dist/parts/FormattingTextDocument/FormattingTextDocument.js +1 -0
- package/extension-api/dist/parts/GetCompletionProviderRegistrySnapshot/GetCompletionProviderRegistrySnapshot.d.ts +1 -0
- package/extension-api/dist/parts/GetCompletionProviderRegistrySnapshot/GetCompletionProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/GetFormattingProviderRegistrySnapshot/GetFormattingProviderRegistrySnapshot.d.ts +1 -0
- package/extension-api/dist/parts/GetFormattingProviderRegistrySnapshot/GetFormattingProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/GetHoverProviderRegistrySnapshot/GetHoverProviderRegistrySnapshot.d.ts +1 -0
- package/extension-api/dist/parts/GetHoverProviderRegistrySnapshot/GetHoverProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.d.ts +1 -0
- package/extension-api/dist/parts/GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/GetStatusBarItems/GetStatusBarItems.d.ts +1 -0
- package/extension-api/dist/parts/GetStatusBarItems/GetStatusBarItems.js +1 -0
- package/extension-api/dist/parts/HandleExtensionManagementMessagePort/HandleExtensionManagementMessagePort.d.ts +9 -0
- package/extension-api/dist/parts/HandleExtensionManagementMessagePort/HandleExtensionManagementMessagePort.js +10 -0
- package/extension-api/dist/parts/Hover/Hover.d.ts +9 -0
- package/extension-api/dist/parts/Hover/Hover.js +4 -0
- package/extension-api/dist/parts/HoverProvider/HoverProvider.d.ts +7 -0
- package/extension-api/dist/parts/HoverProvider/HoverProvider.js +1 -0
- package/extension-api/dist/parts/HoverProviderRegistry/HoverProviderRegistry.d.ts +12 -0
- package/extension-api/dist/parts/HoverProviderRegistry/HoverProviderRegistry.js +56 -0
- package/extension-api/dist/parts/HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.d.ts +4 -0
- package/extension-api/dist/parts/HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/HoverResult/HoverResult.d.ts +6 -0
- package/extension-api/dist/parts/HoverResult/HoverResult.js +1 -0
- package/extension-api/dist/parts/HoverTextDocument/HoverTextDocument.d.ts +6 -0
- package/extension-api/dist/parts/HoverTextDocument/HoverTextDocument.js +1 -0
- package/extension-api/dist/parts/NotifyStatusBarChange/NotifyStatusBarChange.d.ts +1 -0
- package/extension-api/dist/parts/NotifyStatusBarChange/NotifyStatusBarChange.js +4 -0
- package/extension-api/dist/parts/ProviderRegistry/ProviderRegistry.d.ts +21 -0
- package/extension-api/dist/parts/ProviderRegistry/ProviderRegistry.js +86 -0
- package/extension-api/dist/parts/QuickPick/QuickPick.d.ts +2 -0
- package/extension-api/dist/parts/QuickPick/QuickPick.js +4 -0
- package/extension-api/dist/parts/QuickPickItem/QuickPickItem.d.ts +5 -0
- package/extension-api/dist/parts/QuickPickItem/QuickPickItem.js +1 -0
- package/extension-api/dist/parts/RegisterCompletionProvider/RegisterCompletionProvider.d.ts +1 -0
- package/extension-api/dist/parts/RegisterCompletionProvider/RegisterCompletionProvider.js +1 -0
- package/extension-api/dist/parts/RegisterFormattingProvider/RegisterFormattingProvider.d.ts +1 -0
- package/extension-api/dist/parts/RegisterFormattingProvider/RegisterFormattingProvider.js +1 -0
- package/extension-api/dist/parts/RegisterHoverProvider/RegisterHoverProvider.d.ts +1 -0
- package/extension-api/dist/parts/RegisterHoverProvider/RegisterHoverProvider.js +1 -0
- package/extension-api/dist/parts/RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.d.ts +1 -0
- package/extension-api/dist/parts/RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.js +1 -0
- package/extension-api/dist/parts/RegisteredCommand/RegisteredCommand.d.ts +4 -0
- package/extension-api/dist/parts/RegisteredCommand/RegisteredCommand.js +1 -0
- package/extension-api/dist/parts/RegisteredCompletionProvider/RegisteredCompletionProvider.d.ts +8 -0
- package/extension-api/dist/parts/RegisteredCompletionProvider/RegisteredCompletionProvider.js +1 -0
- package/extension-api/dist/parts/RegisteredFormattingProvider/RegisteredFormattingProvider.d.ts +7 -0
- package/extension-api/dist/parts/RegisteredFormattingProvider/RegisteredFormattingProvider.js +1 -0
- package/extension-api/dist/parts/RegisteredHoverProvider/RegisteredHoverProvider.d.ts +7 -0
- package/extension-api/dist/parts/RegisteredHoverProvider/RegisteredHoverProvider.js +1 -0
- package/extension-api/dist/parts/RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.d.ts +5 -0
- package/extension-api/dist/parts/RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.js +1 -0
- package/extension-api/dist/parts/ResetCompletionProviderRegistry/ResetCompletionProviderRegistry.d.ts +1 -0
- package/extension-api/dist/parts/ResetCompletionProviderRegistry/ResetCompletionProviderRegistry.js +1 -0
- package/extension-api/dist/parts/ResetFormattingProviderRegistry/ResetFormattingProviderRegistry.d.ts +1 -0
- package/extension-api/dist/parts/ResetFormattingProviderRegistry/ResetFormattingProviderRegistry.js +1 -0
- package/extension-api/dist/parts/ResetHoverProviderRegistry/ResetHoverProviderRegistry.d.ts +1 -0
- package/extension-api/dist/parts/ResetHoverProviderRegistry/ResetHoverProviderRegistry.js +1 -0
- package/extension-api/dist/parts/ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.d.ts +1 -0
- package/extension-api/dist/parts/ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.js +1 -0
- package/extension-api/dist/parts/Rpc/Rpc.d.ts +3 -0
- package/extension-api/dist/parts/Rpc/Rpc.js +10 -0
- package/extension-api/dist/parts/ShowQuickPickOptions/ShowQuickPickOptions.d.ts +5 -0
- package/extension-api/dist/parts/ShowQuickPickOptions/ShowQuickPickOptions.js +1 -0
- package/extension-api/dist/parts/StatusBar/StatusBar.d.ts +8 -0
- package/extension-api/dist/parts/StatusBar/StatusBar.js +3 -0
- package/extension-api/dist/parts/StatusBarItem/StatusBarItem.d.ts +7 -0
- package/extension-api/dist/parts/StatusBarItem/StatusBarItem.js +1 -0
- package/extension-api/dist/parts/StatusBarItemProvider/StatusBarItemProvider.d.ts +5 -0
- package/extension-api/dist/parts/StatusBarItemProvider/StatusBarItemProvider.js +1 -0
- package/extension-api/dist/parts/StatusBarItemProviderHandle/StatusBarItemProviderHandle.d.ts +4 -0
- package/extension-api/dist/parts/StatusBarItemProviderHandle/StatusBarItemProviderHandle.js +1 -0
- package/extension-api/dist/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.d.ts +11 -0
- package/extension-api/dist/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js +44 -0
- package/extension-api/dist/parts/StatusBarItemProviderRegistrySnapshot/StatusBarItemProviderRegistrySnapshot.d.ts +4 -0
- package/extension-api/dist/parts/StatusBarItemProviderRegistrySnapshot/StatusBarItemProviderRegistrySnapshot.js +1 -0
- package/extension-api/dist/parts/StatusBarItemProviderState/StatusBarItemProviderState.d.ts +1 -0
- package/extension-api/dist/parts/StatusBarItemProviderState/StatusBarItemProviderState.js +1 -0
- package/extension-api/package.json +32 -0
- package/extension-api/tsconfig.tsbuildinfo +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { ExtensionApiError } from "../ExtensionApiError/ExtensionApiError.js";
|
|
2
|
+
const getProviderMethod = (provider, methodName) => {
|
|
3
|
+
const method = provider[methodName];
|
|
4
|
+
if (typeof method !== "function") {
|
|
5
|
+
return void 0;
|
|
6
|
+
}
|
|
7
|
+
return method;
|
|
8
|
+
};
|
|
9
|
+
const assertProviderMethod = (provider, providerName, providerId, methodName) => {
|
|
10
|
+
if (typeof provider[methodName] !== "function") {
|
|
11
|
+
throw new ExtensionApiError(`${providerName} ${providerId} is missing ${methodName} function`);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const assertOptionalProviderMethod = (provider, providerName, providerId, methodName) => {
|
|
15
|
+
if (provider[methodName] !== void 0 && typeof provider[methodName] !== "function") {
|
|
16
|
+
throw new ExtensionApiError(`${providerName} ${providerId} has invalid ${methodName} function`);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const createProviderRegistry = ({
|
|
20
|
+
mapProvider,
|
|
21
|
+
optionalMethods = [],
|
|
22
|
+
providerName,
|
|
23
|
+
requiredMethods,
|
|
24
|
+
requireLanguageId = false
|
|
25
|
+
}) => {
|
|
26
|
+
const providers = /* @__PURE__ */ Object.create(null);
|
|
27
|
+
const hasProvider = (id) => {
|
|
28
|
+
return id in providers;
|
|
29
|
+
};
|
|
30
|
+
const registerProvider = (provider) => {
|
|
31
|
+
if (!provider) {
|
|
32
|
+
throw new ExtensionApiError(`${providerName} is not defined`);
|
|
33
|
+
}
|
|
34
|
+
const providerRecord = provider;
|
|
35
|
+
const { id } = providerRecord;
|
|
36
|
+
if (typeof id !== "string" || id.length === 0) {
|
|
37
|
+
throw new ExtensionApiError(`${providerName} is missing id`);
|
|
38
|
+
}
|
|
39
|
+
if (requireLanguageId && (typeof providerRecord.languageId !== "string" || providerRecord.languageId.length === 0)) {
|
|
40
|
+
throw new ExtensionApiError(`${providerName} ${id} is missing languageId`);
|
|
41
|
+
}
|
|
42
|
+
for (const methodName of requiredMethods) {
|
|
43
|
+
assertProviderMethod(providerRecord, providerName, id, methodName);
|
|
44
|
+
}
|
|
45
|
+
for (const methodName of optionalMethods) {
|
|
46
|
+
assertOptionalProviderMethod(providerRecord, providerName, id, methodName);
|
|
47
|
+
}
|
|
48
|
+
if (hasProvider(id)) {
|
|
49
|
+
throw new ExtensionApiError(`${providerName} ${id} is already registered`);
|
|
50
|
+
}
|
|
51
|
+
const registeredProvider = mapProvider(provider);
|
|
52
|
+
providers[registeredProvider.id] = registeredProvider;
|
|
53
|
+
return registeredProvider;
|
|
54
|
+
};
|
|
55
|
+
const deleteProvider = (id) => {
|
|
56
|
+
delete providers[id];
|
|
57
|
+
};
|
|
58
|
+
const getProviders = () => {
|
|
59
|
+
return Object.values(providers);
|
|
60
|
+
};
|
|
61
|
+
const getProviderByLanguageId = (languageId) => {
|
|
62
|
+
return getProviders().find((provider) => {
|
|
63
|
+
return "languageId" in provider && provider.languageId === languageId;
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
const reset = () => {
|
|
67
|
+
for (const id of Object.keys(providers)) {
|
|
68
|
+
delete providers[id];
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
const executeProviderByLanguageId = async (languageId, methodName, args, validateResult) => {
|
|
72
|
+
const provider = getProviderByLanguageId(languageId);
|
|
73
|
+
if (!provider) {
|
|
74
|
+
throw new ExtensionApiError(`No ${providerName} found for ${languageId}`);
|
|
75
|
+
}
|
|
76
|
+
const method = getProviderMethod(provider, methodName);
|
|
77
|
+
if (!method) {
|
|
78
|
+
throw new ExtensionApiError(`${providerName} ${provider.id} is missing ${methodName} function`);
|
|
79
|
+
}
|
|
80
|
+
const result = await method(...args);
|
|
81
|
+
return validateResult ? validateResult(result) : result;
|
|
82
|
+
};
|
|
83
|
+
return {
|
|
84
|
+
deleteProvider,
|
|
85
|
+
executeProviderByLanguageId,
|
|
86
|
+
getProviderByLanguageId,
|
|
87
|
+
getProviders,
|
|
88
|
+
hasProvider,
|
|
89
|
+
registerProvider,
|
|
90
|
+
reset
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
export {
|
|
94
|
+
createProviderRegistry
|
|
95
|
+
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/extension-api/parts/RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.js
ADDED
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { getStatusBarItemProviderRegistrySnapshot } from "../GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.js";
|
|
2
|
+
import { registerStatusBarItemProvider } from "../RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.js";
|
|
3
|
+
import { resetStatusBarItemProviderRegistry } from "../ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.js";
|
|
4
|
+
export {
|
|
5
|
+
getStatusBarItemProviderRegistrySnapshot,
|
|
6
|
+
registerStatusBarItemProvider,
|
|
7
|
+
resetStatusBarItemProviderRegistry
|
|
8
|
+
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/extension-api/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as NotifyStatusBarChange from "../NotifyStatusBarChange/NotifyStatusBarChange.js";
|
|
2
|
+
import { createProviderRegistry } from "../ProviderRegistry/ProviderRegistry.js";
|
|
3
|
+
const registry = createProviderRegistry({
|
|
4
|
+
mapProvider(provider) {
|
|
5
|
+
return {
|
|
6
|
+
getStatusBarItem() {
|
|
7
|
+
return provider.getStatusBarItem();
|
|
8
|
+
},
|
|
9
|
+
id: provider.id
|
|
10
|
+
};
|
|
11
|
+
},
|
|
12
|
+
providerName: "status bar item provider",
|
|
13
|
+
requiredMethods: ["getStatusBarItem"]
|
|
14
|
+
});
|
|
15
|
+
const getStatusBarItem = (provider) => {
|
|
16
|
+
return provider.getStatusBarItem();
|
|
17
|
+
};
|
|
18
|
+
const isStatusBarItem = (item) => {
|
|
19
|
+
return item !== void 0;
|
|
20
|
+
};
|
|
21
|
+
const hasStatusBarItemProvider = registry.hasProvider;
|
|
22
|
+
const registerStatusBarItemProvider = (provider) => {
|
|
23
|
+
const registeredProvider = registry.registerProvider(provider);
|
|
24
|
+
void NotifyStatusBarChange.notifyStatusBarChange(registeredProvider.id);
|
|
25
|
+
return {
|
|
26
|
+
dispose() {
|
|
27
|
+
registry.deleteProvider(registeredProvider.id);
|
|
28
|
+
void NotifyStatusBarChange.notifyStatusBarChange(registeredProvider.id);
|
|
29
|
+
},
|
|
30
|
+
async refresh() {
|
|
31
|
+
await NotifyStatusBarChange.notifyStatusBarChange(registeredProvider.id);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
const getStatusBarItemProviders = registry.getProviders;
|
|
36
|
+
const getStatusBarItems = () => {
|
|
37
|
+
return registry.getProviders().map(getStatusBarItem).filter(isStatusBarItem);
|
|
38
|
+
};
|
|
39
|
+
const getStatusBarItemProviderRegistrySnapshot = () => {
|
|
40
|
+
return {
|
|
41
|
+
providers: registry.getProviders()
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
const resetStatusBarItemProviderRegistry = registry.reset;
|
|
45
|
+
export {
|
|
46
|
+
getStatusBarItemProviderRegistrySnapshot,
|
|
47
|
+
getStatusBarItemProviders,
|
|
48
|
+
getStatusBarItems,
|
|
49
|
+
hasStatusBarItemProvider,
|
|
50
|
+
registerStatusBarItemProvider,
|
|
51
|
+
resetStatusBarItemProviderRegistry
|
|
52
|
+
};
|
|
File without changes
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getStatusBarItemProviders,
|
|
3
|
+
hasStatusBarItemProvider,
|
|
4
|
+
resetStatusBarItemProviderRegistry
|
|
5
|
+
} from "../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js";
|
|
6
|
+
export {
|
|
7
|
+
resetStatusBarItemProviderRegistry as clearStatusBarItemProviders,
|
|
8
|
+
getStatusBarItemProviders,
|
|
9
|
+
hasStatusBarItemProvider
|
|
10
|
+
};
|