@lvce-editor/extension-host-worker 8.17.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 +62 -0
- package/dist/extension-api/parts/ExecuteHoverProvider/ExecuteHoverProvider.js +4 -0
- package/dist/extension-api/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.js +3 -0
- package/dist/extension-api/parts/GetHoverProviderRegistrySnapshot/GetHoverProviderRegistrySnapshot.js +4 -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/RegisterHoverProvider/RegisterHoverProvider.js +4 -0
- package/dist/extension-api/parts/RegisteredHoverProvider/RegisteredHoverProvider.js +0 -0
- package/dist/extension-api/parts/ResetHoverProviderRegistry/ResetHoverProviderRegistry.js +4 -0
- package/dist/extensionHostWorkerMain.js +31 -4
- 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,21 @@
|
|
|
1
|
+
interface ProviderWithId {
|
|
2
|
+
readonly id: string;
|
|
3
|
+
}
|
|
4
|
+
interface ProviderRegistryOptions<TProvider, TRegisteredProvider extends ProviderWithId> {
|
|
5
|
+
readonly mapProvider: (provider: TProvider) => TRegisteredProvider;
|
|
6
|
+
readonly optionalMethods?: readonly string[];
|
|
7
|
+
readonly providerName: string;
|
|
8
|
+
readonly requiredMethods: readonly string[];
|
|
9
|
+
readonly requireLanguageId?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface ProviderRegistry<TProvider, TRegisteredProvider extends ProviderWithId> {
|
|
12
|
+
readonly deleteProvider: (id: string) => void;
|
|
13
|
+
readonly executeProviderByLanguageId: <TResult>(languageId: string, methodName: keyof TRegisteredProvider & string, args: readonly unknown[], validateResult?: (result: unknown) => TResult) => Promise<TResult>;
|
|
14
|
+
readonly getProviderByLanguageId: (languageId: string) => TRegisteredProvider | undefined;
|
|
15
|
+
readonly getProviders: () => TRegisteredProvider[];
|
|
16
|
+
readonly hasProvider: (id: string) => boolean;
|
|
17
|
+
readonly registerProvider: (provider: TProvider) => TRegisteredProvider;
|
|
18
|
+
readonly reset: () => void;
|
|
19
|
+
}
|
|
20
|
+
export declare const createProviderRegistry: <TProvider, TRegisteredProvider extends ProviderWithId>({ mapProvider, optionalMethods, providerName, requiredMethods, requireLanguageId, }: ProviderRegistryOptions<TProvider, TRegisteredProvider>) => ProviderRegistry<TProvider, TRegisteredProvider>;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ExtensionApiError } from "../ExtensionApiError/ExtensionApiError.js";
|
|
2
|
+
const getProviderMethod = (provider, methodName) => {
|
|
3
|
+
const method = provider[methodName];
|
|
4
|
+
if (typeof method !== 'function') {
|
|
5
|
+
return undefined;
|
|
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] !== undefined && typeof provider[methodName] !== 'function') {
|
|
16
|
+
throw new ExtensionApiError(`${providerName} ${providerId} has invalid ${methodName} function`);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
export const createProviderRegistry = ({ mapProvider, optionalMethods = [], providerName, requiredMethods, requireLanguageId = false, }) => {
|
|
20
|
+
const providers = Object.create(null);
|
|
21
|
+
const hasProvider = (id) => {
|
|
22
|
+
return id in providers;
|
|
23
|
+
};
|
|
24
|
+
const registerProvider = (provider) => {
|
|
25
|
+
if (!provider) {
|
|
26
|
+
throw new ExtensionApiError(`${providerName} is not defined`);
|
|
27
|
+
}
|
|
28
|
+
const providerRecord = provider;
|
|
29
|
+
const { id } = providerRecord;
|
|
30
|
+
if (typeof id !== 'string' || id.length === 0) {
|
|
31
|
+
throw new ExtensionApiError(`${providerName} is missing id`);
|
|
32
|
+
}
|
|
33
|
+
if (requireLanguageId && (typeof providerRecord.languageId !== 'string' || providerRecord.languageId.length === 0)) {
|
|
34
|
+
throw new ExtensionApiError(`${providerName} ${id} is missing languageId`);
|
|
35
|
+
}
|
|
36
|
+
for (const methodName of requiredMethods) {
|
|
37
|
+
assertProviderMethod(providerRecord, providerName, id, methodName);
|
|
38
|
+
}
|
|
39
|
+
for (const methodName of optionalMethods) {
|
|
40
|
+
assertOptionalProviderMethod(providerRecord, providerName, id, methodName);
|
|
41
|
+
}
|
|
42
|
+
if (hasProvider(id)) {
|
|
43
|
+
throw new ExtensionApiError(`${providerName} ${id} is already registered`);
|
|
44
|
+
}
|
|
45
|
+
const registeredProvider = mapProvider(provider);
|
|
46
|
+
providers[registeredProvider.id] = registeredProvider;
|
|
47
|
+
return registeredProvider;
|
|
48
|
+
};
|
|
49
|
+
const deleteProvider = (id) => {
|
|
50
|
+
delete providers[id];
|
|
51
|
+
};
|
|
52
|
+
const getProviders = () => {
|
|
53
|
+
return Object.values(providers);
|
|
54
|
+
};
|
|
55
|
+
const getProviderByLanguageId = (languageId) => {
|
|
56
|
+
return getProviders().find((provider) => {
|
|
57
|
+
return 'languageId' in provider && provider.languageId === languageId;
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
const reset = () => {
|
|
61
|
+
for (const id of Object.keys(providers)) {
|
|
62
|
+
delete providers[id];
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const executeProviderByLanguageId = async (languageId, methodName, args, validateResult) => {
|
|
66
|
+
const provider = getProviderByLanguageId(languageId);
|
|
67
|
+
if (!provider) {
|
|
68
|
+
throw new ExtensionApiError(`No ${providerName} found for ${languageId}`);
|
|
69
|
+
}
|
|
70
|
+
const method = getProviderMethod(provider, methodName);
|
|
71
|
+
if (!method) {
|
|
72
|
+
throw new ExtensionApiError(`${providerName} ${provider.id} is missing ${methodName} function`);
|
|
73
|
+
}
|
|
74
|
+
const result = await method(...args);
|
|
75
|
+
return validateResult ? validateResult(result) : result;
|
|
76
|
+
};
|
|
77
|
+
return {
|
|
78
|
+
deleteProvider,
|
|
79
|
+
executeProviderByLanguageId,
|
|
80
|
+
getProviderByLanguageId,
|
|
81
|
+
getProviders,
|
|
82
|
+
hasProvider,
|
|
83
|
+
registerProvider,
|
|
84
|
+
reset,
|
|
85
|
+
};
|
|
86
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerCompletionProvider } from '../CompletionProviderRegistry/CompletionProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerCompletionProvider } from "../CompletionProviderRegistry/CompletionProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerFormattingProvider } from '../FormattingProviderRegistry/FormattingProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerFormattingProvider } from "../FormattingProviderRegistry/FormattingProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerHoverProvider } from '../HoverProviderRegistry/HoverProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerHoverProvider } from "../HoverProviderRegistry/HoverProviderRegistry.js";
|
package/extension-api/dist/parts/RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerStatusBarItemProvider } from '../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.ts';
|
package/extension-api/dist/parts/RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerStatusBarItemProvider } from "../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/extension-api/dist/parts/RegisteredCompletionProvider/RegisteredCompletionProvider.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CompletionItem } from '../CompletionItem/CompletionItem.ts';
|
|
2
|
+
import type { TextDocument } from '../CompletionTextDocument/CompletionTextDocument.ts';
|
|
3
|
+
export interface RegisteredCompletionProvider {
|
|
4
|
+
readonly id: string;
|
|
5
|
+
readonly languageId: string;
|
|
6
|
+
readonly provideCompletions: (textDocument: TextDocument, offset: number, ...args: readonly unknown[]) => readonly CompletionItem[] | Promise<readonly CompletionItem[]>;
|
|
7
|
+
readonly resolveCompletionItem?: (textDocument: TextDocument, offset: number, name: string, completionItem: CompletionItem, ...args: readonly unknown[]) => CompletionItem | undefined | Promise<CompletionItem | undefined>;
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/extension-api/dist/parts/RegisteredFormattingProvider/RegisteredFormattingProvider.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { FormattingEdit } from '../FormattingEdit/FormattingEdit.ts';
|
|
2
|
+
import type { TextDocument } from '../FormattingTextDocument/FormattingTextDocument.ts';
|
|
3
|
+
export interface RegisteredFormattingProvider {
|
|
4
|
+
readonly format: (textDocument: TextDocument, ...args: readonly unknown[]) => readonly FormattingEdit[] | Promise<readonly FormattingEdit[]>;
|
|
5
|
+
readonly id: string;
|
|
6
|
+
readonly languageId: string;
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { HoverResult } from '../HoverResult/HoverResult.ts';
|
|
2
|
+
import type { TextDocument } from '../HoverTextDocument/HoverTextDocument.ts';
|
|
3
|
+
export interface RegisteredHoverProvider {
|
|
4
|
+
readonly id: string;
|
|
5
|
+
readonly languageId: string;
|
|
6
|
+
readonly provideHover: (textDocument: TextDocument, offset: number, ...args: readonly unknown[]) => HoverResult | undefined | Promise<HoverResult | undefined>;
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/extension-api/dist/parts/RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetCompletionProviderRegistry } from '../CompletionProviderRegistry/CompletionProviderRegistry.ts';
|
package/extension-api/dist/parts/ResetCompletionProviderRegistry/ResetCompletionProviderRegistry.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetCompletionProviderRegistry } from "../CompletionProviderRegistry/CompletionProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetFormattingProviderRegistry } from '../FormattingProviderRegistry/FormattingProviderRegistry.ts';
|
package/extension-api/dist/parts/ResetFormattingProviderRegistry/ResetFormattingProviderRegistry.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetFormattingProviderRegistry } from "../FormattingProviderRegistry/FormattingProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetHoverProviderRegistry } from '../HoverProviderRegistry/HoverProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetHoverProviderRegistry } from "../HoverProviderRegistry/HoverProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetStatusBarItemProviderRegistry } from '../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { resetStatusBarItemProviderRegistry } from "../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { getStatusBarItemProviderRegistrySnapshot } from '../GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.ts';
|
|
2
|
+
export { registerStatusBarItemProvider } from '../RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.ts';
|
|
3
|
+
export { resetStatusBarItemProviderRegistry } from '../ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.ts';
|
|
4
|
+
export type { RegisteredStatusBarItemProvider } from '../RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.ts';
|
|
5
|
+
export type { StatusBarItem } from '../StatusBarItem/StatusBarItem.ts';
|
|
6
|
+
export type { StatusBarItemProvider } from '../StatusBarItemProvider/StatusBarItemProvider.ts';
|
|
7
|
+
export type { StatusBarItemProviderHandle } from '../StatusBarItemProviderHandle/StatusBarItemProviderHandle.ts';
|
|
8
|
+
export type { StatusBarItemProviderRegistrySnapshot } from '../StatusBarItemProviderRegistrySnapshot/StatusBarItemProviderRegistrySnapshot.ts';
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { getStatusBarItemProviderRegistrySnapshot } from "../GetStatusBarItemProviderRegistrySnapshot/GetStatusBarItemProviderRegistrySnapshot.js";
|
|
2
|
+
export { registerStatusBarItemProvider } from "../RegisterStatusBarItemProvider/RegisterStatusBarItemProvider.js";
|
|
3
|
+
export { resetStatusBarItemProviderRegistry } from "../ResetStatusBarItemProviderRegistry/ResetStatusBarItemProviderRegistry.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/extension-api/dist/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { RegisteredStatusBarItemProvider } from '../RegisteredStatusBarItemProvider/RegisteredStatusBarItemProvider.ts';
|
|
2
|
+
import type { StatusBarItem } from '../StatusBarItem/StatusBarItem.ts';
|
|
3
|
+
import type { StatusBarItemProvider } from '../StatusBarItemProvider/StatusBarItemProvider.ts';
|
|
4
|
+
import type { StatusBarItemProviderHandle } from '../StatusBarItemProviderHandle/StatusBarItemProviderHandle.ts';
|
|
5
|
+
import type { StatusBarItemProviderRegistrySnapshot } from '../StatusBarItemProviderRegistrySnapshot/StatusBarItemProviderRegistrySnapshot.ts';
|
|
6
|
+
export declare const hasStatusBarItemProvider: (id: string) => boolean;
|
|
7
|
+
export declare const registerStatusBarItemProvider: (provider: StatusBarItemProvider) => StatusBarItemProviderHandle;
|
|
8
|
+
export declare const getStatusBarItemProviders: () => RegisteredStatusBarItemProvider[];
|
|
9
|
+
export declare const getStatusBarItems: () => readonly StatusBarItem[];
|
|
10
|
+
export declare const getStatusBarItemProviderRegistrySnapshot: () => StatusBarItemProviderRegistrySnapshot;
|
|
11
|
+
export declare const resetStatusBarItemProviderRegistry: () => void;
|
package/extension-api/dist/parts/StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
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 !== undefined;
|
|
20
|
+
};
|
|
21
|
+
export const hasStatusBarItemProvider = registry.hasProvider;
|
|
22
|
+
export 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
|
+
export const getStatusBarItemProviders = registry.getProviders;
|
|
36
|
+
export const getStatusBarItems = () => {
|
|
37
|
+
return registry.getProviders().map(getStatusBarItem).filter(isStatusBarItem);
|
|
38
|
+
};
|
|
39
|
+
export const getStatusBarItemProviderRegistrySnapshot = () => {
|
|
40
|
+
return {
|
|
41
|
+
providers: registry.getProviders(),
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export const resetStatusBarItemProviderRegistry = registry.reset;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getStatusBarItemProviders, hasStatusBarItemProvider, resetStatusBarItemProviderRegistry as clearStatusBarItemProviders, } from '../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.ts';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getStatusBarItemProviders, hasStatusBarItemProvider, resetStatusBarItemProviderRegistry as clearStatusBarItemProviders, } from "../StatusBarItemProviderRegistry/StatusBarItemProviderRegistry.js";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lvce-editor/api",
|
|
3
|
+
"version": "8.18.0",
|
|
4
|
+
"description": "Tree-shakeable extension API for Lvce Editor extensions.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"lvce-editor",
|
|
7
|
+
"extension-api"
|
|
8
|
+
],
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/lvce-editor/extension-host-worker.git",
|
|
12
|
+
"directory": "packages/extension-api"
|
|
13
|
+
},
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"author": "Lvce Editor",
|
|
16
|
+
"type": "module",
|
|
17
|
+
"main": "dist/index.js",
|
|
18
|
+
"types": "dist/index.d.ts",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"types": "./dist/index.d.ts",
|
|
22
|
+
"default": "./dist/index.js"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"dist"
|
|
27
|
+
],
|
|
28
|
+
"sideEffects": false,
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"@lvce-editor/rpc": "^6.4.0"
|
|
31
|
+
}
|
|
32
|
+
}
|