@lvce-editor/extension-host-worker 8.71.0 → 8.73.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.
Files changed (52) hide show
  1. package/dist/extension-api/index.js +70 -0
  2. package/dist/extension-api/parts/ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.js +4 -0
  3. package/dist/extension-api/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.js +3 -0
  4. package/dist/extension-api/parts/GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.js +4 -0
  5. package/dist/extension-api/parts/RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.js +4 -0
  6. package/dist/extension-api/parts/RegisteredSignatureHelpProvider/RegisteredSignatureHelpProvider.js +0 -0
  7. package/dist/extension-api/parts/ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.js +4 -0
  8. package/dist/extension-api/parts/SignatureHelp/SignatureHelp.js +10 -0
  9. package/dist/extension-api/parts/SignatureHelpParameter/SignatureHelpParameter.js +0 -0
  10. package/dist/extension-api/parts/SignatureHelpProvider/SignatureHelpProvider.js +0 -0
  11. package/dist/extension-api/parts/SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js +72 -0
  12. package/dist/extension-api/parts/SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.js +0 -0
  13. package/dist/extension-api/parts/SignatureHelpResult/SignatureHelpResult.js +0 -0
  14. package/dist/extension-api/parts/SignatureHelpSignature/SignatureHelpSignature.js +0 -0
  15. package/dist/extension-api/parts/SignatureHelpTextDocument/SignatureHelpTextDocument.js +0 -0
  16. package/dist/extensionHostWorkerMain.js +3 -0
  17. package/extension-api/dist/index.d.ts +2 -0
  18. package/extension-api/dist/index.js +1 -0
  19. package/extension-api/dist/parts/CommandMap/CommandMap.d.ts +2 -0
  20. package/extension-api/dist/parts/ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.d.ts +1 -0
  21. package/extension-api/dist/parts/ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.js +1 -0
  22. package/extension-api/dist/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.d.ts +2 -0
  23. package/extension-api/dist/parts/ExtensionApiCommandMap/ExtensionApiCommandMap.js +3 -0
  24. package/extension-api/dist/parts/ExtensionApiWorkerCommandMap/ExtensionApiWorkerCommandMap.d.ts +2 -0
  25. package/extension-api/dist/parts/GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.d.ts +1 -0
  26. package/extension-api/dist/parts/GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.js +1 -0
  27. package/extension-api/dist/parts/QuickPickItem/QuickPickItem.d.ts +1 -0
  28. package/extension-api/dist/parts/RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.d.ts +1 -0
  29. package/extension-api/dist/parts/RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.js +1 -0
  30. package/extension-api/dist/parts/RegisteredSignatureHelpProvider/RegisteredSignatureHelpProvider.d.ts +7 -0
  31. package/extension-api/dist/parts/RegisteredSignatureHelpProvider/RegisteredSignatureHelpProvider.js +1 -0
  32. package/extension-api/dist/parts/ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.d.ts +1 -0
  33. package/extension-api/dist/parts/ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.js +1 -0
  34. package/extension-api/dist/parts/SignatureHelp/SignatureHelp.d.ts +11 -0
  35. package/extension-api/dist/parts/SignatureHelp/SignatureHelp.js +4 -0
  36. package/extension-api/dist/parts/SignatureHelpParameter/SignatureHelpParameter.d.ts +4 -0
  37. package/extension-api/dist/parts/SignatureHelpParameter/SignatureHelpParameter.js +1 -0
  38. package/extension-api/dist/parts/SignatureHelpProvider/SignatureHelpProvider.d.ts +7 -0
  39. package/extension-api/dist/parts/SignatureHelpProvider/SignatureHelpProvider.js +1 -0
  40. package/extension-api/dist/parts/SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.d.ts +12 -0
  41. package/extension-api/dist/parts/SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js +59 -0
  42. package/extension-api/dist/parts/SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.d.ts +6 -0
  43. package/extension-api/dist/parts/SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.js +1 -0
  44. package/extension-api/dist/parts/SignatureHelpResult/SignatureHelpResult.d.ts +6 -0
  45. package/extension-api/dist/parts/SignatureHelpResult/SignatureHelpResult.js +1 -0
  46. package/extension-api/dist/parts/SignatureHelpSignature/SignatureHelpSignature.d.ts +6 -0
  47. package/extension-api/dist/parts/SignatureHelpSignature/SignatureHelpSignature.js +1 -0
  48. package/extension-api/dist/parts/SignatureHelpTextDocument/SignatureHelpTextDocument.d.ts +6 -0
  49. package/extension-api/dist/parts/SignatureHelpTextDocument/SignatureHelpTextDocument.js +1 -0
  50. package/extension-api/package.json +1 -1
  51. package/extension-api/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +1 -1
@@ -2410,6 +2410,70 @@ var resetOutputChannelRegistry = () => {
2410
2410
  isActivated = false;
2411
2411
  };
2412
2412
 
2413
+ // packages/extension-api/src/parts/SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.ts
2414
+ var getType4 = (value) => {
2415
+ if (value === null) {
2416
+ return "null";
2417
+ }
2418
+ if (typeof value === "string") {
2419
+ return JSON.stringify(value);
2420
+ }
2421
+ if (Array.isArray(value)) {
2422
+ return "array";
2423
+ }
2424
+ return typeof value;
2425
+ };
2426
+ var validateSignatureHelpResult = (signatureHelp) => {
2427
+ if (signatureHelp === void 0) {
2428
+ return void 0;
2429
+ }
2430
+ if (!signatureHelp || typeof signatureHelp !== "object" || Array.isArray(signatureHelp)) {
2431
+ throw new ExtensionApiError(`invalid signature help result: signature help must be of type object or undefined but is ${getType4(signatureHelp)}`);
2432
+ }
2433
+ return signatureHelp;
2434
+ };
2435
+ var registry6 = createProviderRegistry({
2436
+ mapProvider(provider) {
2437
+ return {
2438
+ id: provider.id,
2439
+ languageId: provider.languageId,
2440
+ provideSignatureHelp(textDocument, offset, ...args) {
2441
+ return provider.provideSignatureHelp(textDocument, offset, ...args);
2442
+ }
2443
+ };
2444
+ },
2445
+ providerName: "signature help provider",
2446
+ requiredMethods: ["provideSignatureHelp"],
2447
+ requireLanguageId: true
2448
+ });
2449
+ var hasSignatureHelpProvider = registry6.hasProvider;
2450
+ var registerSignatureHelpProvider = (provider) => {
2451
+ const registeredProvider = registry6.registerProvider(provider);
2452
+ return {
2453
+ dispose() {
2454
+ registry6.deleteProvider(registeredProvider.id);
2455
+ }
2456
+ };
2457
+ };
2458
+ var executeSignatureHelpProvider = async (textDocument, offset, ...args) => {
2459
+ return registry6.executeProviderByLanguageId(
2460
+ textDocument.languageId,
2461
+ "provideSignatureHelp",
2462
+ [textDocument, offset, ...args],
2463
+ validateSignatureHelpResult
2464
+ );
2465
+ };
2466
+ var getSignatureHelpProviders = registry6.getProviders;
2467
+ var getSignatureHelpProviderRegistrySnapshot = () => {
2468
+ return {
2469
+ providers: registry6.getProviders().map((provider) => ({
2470
+ id: provider.id,
2471
+ languageId: provider.languageId
2472
+ }))
2473
+ };
2474
+ };
2475
+ var resetSignatureHelpProviderRegistry = registry6.reset;
2476
+
2413
2477
  // packages/extension-api/src/parts/SourceControlProviderRegistry/SourceControlProviderRegistry.ts
2414
2478
  var providers4 = /* @__PURE__ */ Object.create(null);
2415
2479
  var optionalMethods = [
@@ -3412,6 +3476,7 @@ var commandMap = {
3412
3476
  "ExtensionApi.executeLanguageProvider": executeLanguageProvider,
3413
3477
  "ExtensionApi.executeOrganizeImportsProvider": executeOrganizeImportsProvider,
3414
3478
  "ExtensionApi.executeResolveCompletionItemProvider": executeResolveCompletionItemProvider,
3479
+ "ExtensionApi.executeSignatureHelpProvider": executeSignatureHelpProvider,
3415
3480
  "ExtensionApi.executeSourceControlAcceptInput": executeSourceControlAcceptInput,
3416
3481
  "ExtensionApi.executeSourceControlAdd": executeSourceControlAdd,
3417
3482
  "ExtensionApi.executeSourceControlDiscard": executeSourceControlDiscard,
@@ -3433,6 +3498,7 @@ var commandMap = {
3433
3498
  "ExtensionApi.getHoverProviderRegistrySnapshot": getHoverProviderRegistrySnapshot,
3434
3499
  "ExtensionApi.getLanguageServerRegistrySnapshot": getLanguageServerRegistrySnapshot,
3435
3500
  "ExtensionApi.getOutputChannelRegistrySnapshot": getOutputChannelRegistrySnapshot,
3501
+ "ExtensionApi.getSignatureHelpProviderRegistrySnapshot": getSignatureHelpProviderRegistrySnapshot,
3436
3502
  "ExtensionApi.getSourceControlProviderRegistrySnapshot": getSourceControlProviderRegistrySnapshot,
3437
3503
  "ExtensionApi.getStatusBarItems": getStatusBarItems,
3438
3504
  "ExtensionApi.getViewActions": getViewActions,
@@ -3870,6 +3936,7 @@ export {
3870
3936
  executeFormattingProvider,
3871
3937
  executeHoverProvider,
3872
3938
  executeResolveCompletionItemProvider,
3939
+ executeSignatureHelpProvider,
3873
3940
  executeSourceControlAcceptInput,
3874
3941
  executeSourceControlAdd,
3875
3942
  executeSourceControlDiscard,
@@ -3895,6 +3962,7 @@ export {
3895
3962
  getPlatform,
3896
3963
  getPreference,
3897
3964
  getSecret,
3965
+ getSignatureHelpProviderRegistrySnapshot,
3898
3966
  getStatusBarItemProviderRegistrySnapshot,
3899
3967
  getViewRegistrySnapshot,
3900
3968
  getWorkspaceFolder,
@@ -3924,6 +3992,7 @@ export {
3924
3992
  registerReferenceProvider,
3925
3993
  registerRenameProvider,
3926
3994
  registerSelectionProvider,
3995
+ registerSignatureHelpProvider,
3927
3996
  registerSourceControlProvider,
3928
3997
  registerStatusBarItemProvider,
3929
3998
  registerTabCompletionProvider,
@@ -3940,6 +4009,7 @@ export {
3940
4009
  resetLanguageProviderRegistry,
3941
4010
  resetLanguageServerRegistry,
3942
4011
  resetOutputChannelRegistry,
4012
+ resetSignatureHelpProviderRegistry,
3943
4013
  resetSourceControlProviderRegistry,
3944
4014
  resetStatusBarItemProviderRegistry,
3945
4015
  resetViewRegistry,
@@ -0,0 +1,4 @@
1
+ import { executeSignatureHelpProvider } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
2
+ export {
3
+ executeSignatureHelpProvider
4
+ };
@@ -28,6 +28,7 @@ import { executeHoverProvider, getHoverProviderRegistrySnapshot } from "../Hover
28
28
  import { executeLanguageProvider, executeOrganizeImportsProvider } from "../LanguageProvider/LanguageProvider.js";
29
29
  import { getLanguageServerRegistrySnapshot } from "../LanguageServer/LanguageServer.js";
30
30
  import { getOutputChannelRegistrySnapshot } from "../OutputChannel/OutputChannel.js";
31
+ import { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot } from "../SignatureHelp/SignatureHelp.js";
31
32
  import {
32
33
  executeSourceControlAcceptInput,
33
34
  executeSourceControlAdd,
@@ -71,6 +72,7 @@ const commandMap = {
71
72
  "ExtensionApi.executeLanguageProvider": executeLanguageProvider,
72
73
  "ExtensionApi.executeOrganizeImportsProvider": executeOrganizeImportsProvider,
73
74
  "ExtensionApi.executeResolveCompletionItemProvider": executeResolveCompletionItemProvider,
75
+ "ExtensionApi.executeSignatureHelpProvider": executeSignatureHelpProvider,
74
76
  "ExtensionApi.executeSourceControlAcceptInput": executeSourceControlAcceptInput,
75
77
  "ExtensionApi.executeSourceControlAdd": executeSourceControlAdd,
76
78
  "ExtensionApi.executeSourceControlDiscard": executeSourceControlDiscard,
@@ -92,6 +94,7 @@ const commandMap = {
92
94
  "ExtensionApi.getHoverProviderRegistrySnapshot": getHoverProviderRegistrySnapshot,
93
95
  "ExtensionApi.getLanguageServerRegistrySnapshot": getLanguageServerRegistrySnapshot,
94
96
  "ExtensionApi.getOutputChannelRegistrySnapshot": getOutputChannelRegistrySnapshot,
97
+ "ExtensionApi.getSignatureHelpProviderRegistrySnapshot": getSignatureHelpProviderRegistrySnapshot,
95
98
  "ExtensionApi.getSourceControlProviderRegistrySnapshot": getSourceControlProviderRegistrySnapshot,
96
99
  "ExtensionApi.getStatusBarItems": getStatusBarItems,
97
100
  "ExtensionApi.getViewActions": getViewActions,
@@ -0,0 +1,4 @@
1
+ import { getSignatureHelpProviderRegistrySnapshot } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
2
+ export {
3
+ getSignatureHelpProviderRegistrySnapshot
4
+ };
@@ -0,0 +1,4 @@
1
+ import { registerSignatureHelpProvider } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
2
+ export {
3
+ registerSignatureHelpProvider
4
+ };
@@ -0,0 +1,4 @@
1
+ import { resetSignatureHelpProviderRegistry } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
2
+ export {
3
+ resetSignatureHelpProviderRegistry
4
+ };
@@ -0,0 +1,10 @@
1
+ import { executeSignatureHelpProvider } from "../ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.js";
2
+ import { getSignatureHelpProviderRegistrySnapshot } from "../GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.js";
3
+ import { registerSignatureHelpProvider } from "../RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.js";
4
+ import { resetSignatureHelpProviderRegistry } from "../ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.js";
5
+ export {
6
+ executeSignatureHelpProvider,
7
+ getSignatureHelpProviderRegistrySnapshot,
8
+ registerSignatureHelpProvider,
9
+ resetSignatureHelpProviderRegistry
10
+ };
@@ -0,0 +1,72 @@
1
+ import { ExtensionApiError } from "../ExtensionApiError/ExtensionApiError.js";
2
+ import { createProviderRegistry } from "../ProviderRegistry/ProviderRegistry.js";
3
+ const getType = (value) => {
4
+ if (value === null) {
5
+ return "null";
6
+ }
7
+ if (typeof value === "string") {
8
+ return JSON.stringify(value);
9
+ }
10
+ if (Array.isArray(value)) {
11
+ return "array";
12
+ }
13
+ return typeof value;
14
+ };
15
+ const validateSignatureHelpResult = (signatureHelp) => {
16
+ if (signatureHelp === void 0) {
17
+ return void 0;
18
+ }
19
+ if (!signatureHelp || typeof signatureHelp !== "object" || Array.isArray(signatureHelp)) {
20
+ throw new ExtensionApiError(`invalid signature help result: signature help must be of type object or undefined but is ${getType(signatureHelp)}`);
21
+ }
22
+ return signatureHelp;
23
+ };
24
+ const registry = createProviderRegistry({
25
+ mapProvider(provider) {
26
+ return {
27
+ id: provider.id,
28
+ languageId: provider.languageId,
29
+ provideSignatureHelp(textDocument, offset, ...args) {
30
+ return provider.provideSignatureHelp(textDocument, offset, ...args);
31
+ }
32
+ };
33
+ },
34
+ providerName: "signature help provider",
35
+ requiredMethods: ["provideSignatureHelp"],
36
+ requireLanguageId: true
37
+ });
38
+ const hasSignatureHelpProvider = registry.hasProvider;
39
+ const registerSignatureHelpProvider = (provider) => {
40
+ const registeredProvider = registry.registerProvider(provider);
41
+ return {
42
+ dispose() {
43
+ registry.deleteProvider(registeredProvider.id);
44
+ }
45
+ };
46
+ };
47
+ const executeSignatureHelpProvider = async (textDocument, offset, ...args) => {
48
+ return registry.executeProviderByLanguageId(
49
+ textDocument.languageId,
50
+ "provideSignatureHelp",
51
+ [textDocument, offset, ...args],
52
+ validateSignatureHelpResult
53
+ );
54
+ };
55
+ const getSignatureHelpProviders = registry.getProviders;
56
+ const getSignatureHelpProviderRegistrySnapshot = () => {
57
+ return {
58
+ providers: registry.getProviders().map((provider) => ({
59
+ id: provider.id,
60
+ languageId: provider.languageId
61
+ }))
62
+ };
63
+ };
64
+ const resetSignatureHelpProviderRegistry = registry.reset;
65
+ export {
66
+ executeSignatureHelpProvider,
67
+ getSignatureHelpProviderRegistrySnapshot,
68
+ getSignatureHelpProviders,
69
+ hasSignatureHelpProvider,
70
+ registerSignatureHelpProvider,
71
+ resetSignatureHelpProviderRegistry
72
+ };
@@ -3059,6 +3059,9 @@ const validateQuickPickItem = item => {
3059
3059
  if (typeof item.description !== 'string') {
3060
3060
  throw new TypeError('quick pick item.description must be a string');
3061
3061
  }
3062
+ if (item.icon !== undefined && typeof item.icon !== 'string') {
3063
+ throw new TypeError('quick pick item.icon must be a string');
3064
+ }
3062
3065
  if (!('value' in item)) {
3063
3066
  throw new TypeError('quick pick item.value is required');
3064
3067
  }
@@ -15,6 +15,7 @@ export { registerFileChangeHandler, type FileChangeHandler, type FileChanges } f
15
15
  export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from './parts/FileSystemProviderRegistry/FileSystemProviderRegistry.ts';
16
16
  export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, showNotification, type NotificationType, } from './parts/Host/Host.ts';
17
17
  export { executeHoverProvider, getHoverProviderRegistrySnapshot, registerHoverProvider, resetHoverProviderRegistry } from './parts/Hover/Hover.ts';
18
+ export { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot, registerSignatureHelpProvider, resetSignatureHelpProviderRegistry, } from './parts/SignatureHelp/SignatureHelp.ts';
18
19
  export { getPlatform, type Platform } from './parts/Platform/Platform.ts';
19
20
  export { getLanguageServerRegistrySnapshot, registerLanguageServer, resetLanguageServerRegistry } from './parts/LanguageServer/LanguageServer.ts';
20
21
  export { registerBraceCompletionProvider, registerClosingTagProvider, registerCodeActionsProvider, registerCommentProvider, registerDefinitionProvider, registerImplementationProvider, registerReferenceProvider, registerRenameProvider, registerSelectionProvider, registerTabCompletionProvider, registerTypeDefinitionProvider, resetLanguageProviderRegistry, } from './parts/LanguageProvider/LanguageProvider.ts';
@@ -41,6 +42,7 @@ export type { FileSystemProviderRegistrySnapshot } from './parts/FileSystemProvi
41
42
  export type { RegisteredFileSystemProvider } from './parts/RegisteredFileSystemProvider/RegisteredFileSystemProvider.ts';
42
43
  export type { HandleExtensionManagementMessagePortOptions } from './parts/HandleExtensionManagementMessagePort/HandleExtensionManagementMessagePort.ts';
43
44
  export type { HoverProvider, HoverProviderRegistrySnapshot, HoverResult, RegisteredHoverProvider } from './parts/Hover/Hover.ts';
45
+ export type { RegisteredSignatureHelpProvider, SignatureHelpParameter, SignatureHelpProvider, SignatureHelpProviderRegistrySnapshot, SignatureHelpResult, SignatureHelpSignature, } from './parts/SignatureHelp/SignatureHelp.ts';
44
46
  export type { LanguageServerOptions, LanguageServerRegistrySnapshot } from './parts/LanguageServer/LanguageServer.ts';
45
47
  export type { OutputChannel } from './parts/OutputChannelHandle/OutputChannelHandle.ts';
46
48
  export type { OutputChannelRegistrySnapshot } from './parts/OutputChannelRegistrySnapshot/OutputChannelRegistrySnapshot.ts';
@@ -15,6 +15,7 @@ export { registerFileChangeHandler } from "./parts/FileChangeHandler/FileChangeH
15
15
  export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from "./parts/FileSystemProviderRegistry/FileSystemProviderRegistry.js";
16
16
  export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, showNotification, } from "./parts/Host/Host.js";
17
17
  export { executeHoverProvider, getHoverProviderRegistrySnapshot, registerHoverProvider, resetHoverProviderRegistry } from "./parts/Hover/Hover.js";
18
+ export { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot, registerSignatureHelpProvider, resetSignatureHelpProviderRegistry, } from "./parts/SignatureHelp/SignatureHelp.js";
18
19
  export { getPlatform } from "./parts/Platform/Platform.js";
19
20
  export { getLanguageServerRegistrySnapshot, registerLanguageServer, resetLanguageServerRegistry } from "./parts/LanguageServer/LanguageServer.js";
20
21
  export { registerBraceCompletionProvider, registerClosingTagProvider, registerCodeActionsProvider, registerCommentProvider, registerDefinitionProvider, registerImplementationProvider, registerReferenceProvider, registerRenameProvider, registerSelectionProvider, registerTabCompletionProvider, registerTypeDefinitionProvider, resetLanguageProviderRegistry, } from "./parts/LanguageProvider/LanguageProvider.js";
@@ -19,6 +19,7 @@ export declare const commandMap: {
19
19
  readonly languageId: string;
20
20
  }) => Promise<unknown>;
21
21
  'ExtensionApi.executeResolveCompletionItemProvider': (textDocument: import("../CompletionTextDocument/CompletionTextDocument.ts").TextDocument, offset: number, name: string, completionItem: import("../CompletionItem/CompletionItem.ts").CompletionItem, ...args: readonly unknown[]) => Promise<import("../CompletionItem/CompletionItem.ts").CompletionItem | undefined>;
22
+ 'ExtensionApi.executeSignatureHelpProvider': (textDocument: import("../SignatureHelpTextDocument/SignatureHelpTextDocument.ts").TextDocument, offset: number, ...args: readonly unknown[]) => Promise<import("../SignatureHelpResult/SignatureHelpResult.ts").SignatureHelpResult | undefined>;
22
23
  'ExtensionApi.executeSourceControlAcceptInput': (id: string, value: string) => Promise<unknown>;
23
24
  'ExtensionApi.executeSourceControlAdd': (id: string, path: string) => Promise<unknown>;
24
25
  'ExtensionApi.executeSourceControlDiscard': (id: string, path: string) => Promise<unknown>;
@@ -40,6 +41,7 @@ export declare const commandMap: {
40
41
  'ExtensionApi.getHoverProviderRegistrySnapshot': () => import("../HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.ts").HoverProviderRegistrySnapshot;
41
42
  'ExtensionApi.getLanguageServerRegistrySnapshot': () => import("../LanguageServerRegistrySnapshot/LanguageServerRegistrySnapshot.ts").LanguageServerRegistrySnapshot;
42
43
  'ExtensionApi.getOutputChannelRegistrySnapshot': () => import("../OutputChannelRegistrySnapshot/OutputChannelRegistrySnapshot.ts").OutputChannelRegistrySnapshot;
44
+ 'ExtensionApi.getSignatureHelpProviderRegistrySnapshot': () => import("../SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.ts").SignatureHelpProviderRegistrySnapshot;
43
45
  'ExtensionApi.getSourceControlProviderRegistrySnapshot': () => import("../SourceControlProviderRegistrySnapshot/SourceControlProviderRegistrySnapshot.ts").SourceControlProviderRegistrySnapshot;
44
46
  'ExtensionApi.getStatusBarItems': () => readonly import("../StatusBarItem/StatusBarItem.ts").StatusBarItem[];
45
47
  'ExtensionApi.getViewActions': (uid: number) => Promise<readonly import("../View/View.ts").ViewAction[]>;
@@ -0,0 +1 @@
1
+ export { executeSignatureHelpProvider } from '../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.ts';
@@ -0,0 +1 @@
1
+ export { executeSignatureHelpProvider } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
@@ -18,6 +18,7 @@ export declare const commandMap: {
18
18
  readonly languageId: string;
19
19
  }) => Promise<unknown>;
20
20
  'ExtensionApi.executeResolveCompletionItemProvider': (textDocument: import("../CompletionTextDocument/CompletionTextDocument.ts").TextDocument, offset: number, name: string, completionItem: import("../CompletionItem/CompletionItem.ts").CompletionItem, ...args: readonly unknown[]) => Promise<import("../CompletionItem/CompletionItem.ts").CompletionItem | undefined>;
21
+ 'ExtensionApi.executeSignatureHelpProvider': (textDocument: import("../SignatureHelpTextDocument/SignatureHelpTextDocument.ts").TextDocument, offset: number, ...args: readonly unknown[]) => Promise<import("../SignatureHelpResult/SignatureHelpResult.ts").SignatureHelpResult | undefined>;
21
22
  'ExtensionApi.executeSourceControlAcceptInput': (id: string, value: string) => Promise<unknown>;
22
23
  'ExtensionApi.executeSourceControlAdd': (id: string, path: string) => Promise<unknown>;
23
24
  'ExtensionApi.executeSourceControlDiscard': (id: string, path: string) => Promise<unknown>;
@@ -39,6 +40,7 @@ export declare const commandMap: {
39
40
  'ExtensionApi.getHoverProviderRegistrySnapshot': () => import("../HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.ts").HoverProviderRegistrySnapshot;
40
41
  'ExtensionApi.getLanguageServerRegistrySnapshot': () => import("../LanguageServerRegistrySnapshot/LanguageServerRegistrySnapshot.ts").LanguageServerRegistrySnapshot;
41
42
  'ExtensionApi.getOutputChannelRegistrySnapshot': () => import("../OutputChannelRegistrySnapshot/OutputChannelRegistrySnapshot.ts").OutputChannelRegistrySnapshot;
43
+ 'ExtensionApi.getSignatureHelpProviderRegistrySnapshot': () => import("../SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.ts").SignatureHelpProviderRegistrySnapshot;
42
44
  'ExtensionApi.getSourceControlProviderRegistrySnapshot': () => import("../SourceControlProviderRegistrySnapshot/SourceControlProviderRegistrySnapshot.ts").SourceControlProviderRegistrySnapshot;
43
45
  'ExtensionApi.getStatusBarItems': () => readonly import("../StatusBarItem/StatusBarItem.ts").StatusBarItem[];
44
46
  'ExtensionApi.getViewActions': (uid: number) => Promise<readonly import("../View/View.ts").ViewAction[]>;
@@ -10,6 +10,7 @@ import { executeHoverProvider, getHoverProviderRegistrySnapshot } from "../Hover
10
10
  import { executeLanguageProvider, executeOrganizeImportsProvider } from "../LanguageProvider/LanguageProvider.js";
11
11
  import { getLanguageServerRegistrySnapshot } from "../LanguageServer/LanguageServer.js";
12
12
  import { getOutputChannelRegistrySnapshot } from "../OutputChannel/OutputChannel.js";
13
+ import { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot } from "../SignatureHelp/SignatureHelp.js";
13
14
  import { executeSourceControlAcceptInput, executeSourceControlAdd, executeSourceControlDiscard, executeSourceControlGenerateCommitMessage, executeSourceControlGetBadgeCount, executeSourceControlGetChangedFiles, executeSourceControlGetFeatures, executeSourceControlGetFileBefore, executeSourceControlGetFileBeforeUri, executeSourceControlGetFileDecorations, executeSourceControlGetGroups, executeSourceControlIsActive, getSourceControlProviderRegistrySnapshot, } from "../SourceControl/SourceControl.js";
14
15
  import { createViewInstance, dispatchViewEvent, disposeViewInstance, executeViewProvider, getViewActions, getViewActionsDom, getViewMenuEntries, getViewRegistrySnapshot, renderViewInstance, saveViewInstanceState, } from "../ViewRegistry/ViewRegistry.js";
15
16
  export const commandMap = {
@@ -28,6 +29,7 @@ export const commandMap = {
28
29
  'ExtensionApi.executeLanguageProvider': executeLanguageProvider,
29
30
  'ExtensionApi.executeOrganizeImportsProvider': executeOrganizeImportsProvider,
30
31
  'ExtensionApi.executeResolveCompletionItemProvider': executeResolveCompletionItemProvider,
32
+ 'ExtensionApi.executeSignatureHelpProvider': executeSignatureHelpProvider,
31
33
  'ExtensionApi.executeSourceControlAcceptInput': executeSourceControlAcceptInput,
32
34
  'ExtensionApi.executeSourceControlAdd': executeSourceControlAdd,
33
35
  'ExtensionApi.executeSourceControlDiscard': executeSourceControlDiscard,
@@ -49,6 +51,7 @@ export const commandMap = {
49
51
  'ExtensionApi.getHoverProviderRegistrySnapshot': getHoverProviderRegistrySnapshot,
50
52
  'ExtensionApi.getLanguageServerRegistrySnapshot': getLanguageServerRegistrySnapshot,
51
53
  'ExtensionApi.getOutputChannelRegistrySnapshot': getOutputChannelRegistrySnapshot,
54
+ 'ExtensionApi.getSignatureHelpProviderRegistrySnapshot': getSignatureHelpProviderRegistrySnapshot,
52
55
  'ExtensionApi.getSourceControlProviderRegistrySnapshot': getSourceControlProviderRegistrySnapshot,
53
56
  'ExtensionApi.getStatusBarItems': getStatusBarItems,
54
57
  'ExtensionApi.getViewActions': getViewActions,
@@ -20,6 +20,7 @@ export declare const commandMap: {
20
20
  readonly languageId: string;
21
21
  }) => Promise<unknown>;
22
22
  'ExtensionApi.executeResolveCompletionItemProvider': (textDocument: import("../CompletionTextDocument/CompletionTextDocument.ts").TextDocument, offset: number, name: string, completionItem: import("../CompletionItem/CompletionItem.ts").CompletionItem, ...args: readonly unknown[]) => Promise<import("../CompletionItem/CompletionItem.ts").CompletionItem | undefined>;
23
+ 'ExtensionApi.executeSignatureHelpProvider': (textDocument: import("../SignatureHelpTextDocument/SignatureHelpTextDocument.ts").TextDocument, offset: number, ...args: readonly unknown[]) => Promise<import("../SignatureHelpResult/SignatureHelpResult.ts").SignatureHelpResult | undefined>;
23
24
  'ExtensionApi.executeSourceControlAcceptInput': (id: string, value: string) => Promise<unknown>;
24
25
  'ExtensionApi.executeSourceControlAdd': (id: string, path: string) => Promise<unknown>;
25
26
  'ExtensionApi.executeSourceControlDiscard': (id: string, path: string) => Promise<unknown>;
@@ -41,6 +42,7 @@ export declare const commandMap: {
41
42
  'ExtensionApi.getHoverProviderRegistrySnapshot': () => import("../HoverProviderRegistrySnapshot/HoverProviderRegistrySnapshot.ts").HoverProviderRegistrySnapshot;
42
43
  'ExtensionApi.getLanguageServerRegistrySnapshot': () => import("../LanguageServerRegistrySnapshot/LanguageServerRegistrySnapshot.ts").LanguageServerRegistrySnapshot;
43
44
  'ExtensionApi.getOutputChannelRegistrySnapshot': () => import("../OutputChannelRegistrySnapshot/OutputChannelRegistrySnapshot.ts").OutputChannelRegistrySnapshot;
45
+ 'ExtensionApi.getSignatureHelpProviderRegistrySnapshot': () => import("../SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.ts").SignatureHelpProviderRegistrySnapshot;
44
46
  'ExtensionApi.getSourceControlProviderRegistrySnapshot': () => import("../SourceControlProviderRegistrySnapshot/SourceControlProviderRegistrySnapshot.ts").SourceControlProviderRegistrySnapshot;
45
47
  'ExtensionApi.getStatusBarItems': () => readonly import("../StatusBarItem/StatusBarItem.ts").StatusBarItem[];
46
48
  'ExtensionApi.getViewActions': (uid: number) => Promise<readonly import("../View/View.ts").ViewAction[]>;
@@ -0,0 +1 @@
1
+ export { getSignatureHelpProviderRegistrySnapshot } from '../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.ts';
@@ -0,0 +1 @@
1
+ export { getSignatureHelpProviderRegistrySnapshot } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
@@ -1,5 +1,6 @@
1
1
  export interface QuickPickItem {
2
2
  readonly description: string;
3
+ readonly icon?: string;
3
4
  readonly label: string;
4
5
  readonly value: unknown;
5
6
  }
@@ -0,0 +1 @@
1
+ export { registerSignatureHelpProvider } from '../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.ts';
@@ -0,0 +1 @@
1
+ export { registerSignatureHelpProvider } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
@@ -0,0 +1,7 @@
1
+ import type { SignatureHelpResult } from '../SignatureHelpResult/SignatureHelpResult.ts';
2
+ import type { TextDocument } from '../SignatureHelpTextDocument/SignatureHelpTextDocument.ts';
3
+ export interface RegisteredSignatureHelpProvider {
4
+ readonly id: string;
5
+ readonly languageId: string;
6
+ readonly provideSignatureHelp: (textDocument: TextDocument, offset: number, ...args: readonly unknown[]) => SignatureHelpResult | undefined | Promise<SignatureHelpResult | undefined>;
7
+ }
@@ -0,0 +1 @@
1
+ export { resetSignatureHelpProviderRegistry } from '../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.ts';
@@ -0,0 +1 @@
1
+ export { resetSignatureHelpProviderRegistry } from "../SignatureHelpProviderRegistry/SignatureHelpProviderRegistry.js";
@@ -0,0 +1,11 @@
1
+ export { executeSignatureHelpProvider } from '../ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.ts';
2
+ export { getSignatureHelpProviderRegistrySnapshot } from '../GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.ts';
3
+ export { registerSignatureHelpProvider } from '../RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.ts';
4
+ export type { RegisteredSignatureHelpProvider } from '../RegisteredSignatureHelpProvider/RegisteredSignatureHelpProvider.ts';
5
+ export { resetSignatureHelpProviderRegistry } from '../ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.ts';
6
+ export type { SignatureHelpParameter } from '../SignatureHelpParameter/SignatureHelpParameter.ts';
7
+ export type { SignatureHelpProvider } from '../SignatureHelpProvider/SignatureHelpProvider.ts';
8
+ export type { SignatureHelpProviderRegistrySnapshot } from '../SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.ts';
9
+ export type { SignatureHelpResult } from '../SignatureHelpResult/SignatureHelpResult.ts';
10
+ export type { SignatureHelpSignature } from '../SignatureHelpSignature/SignatureHelpSignature.ts';
11
+ export type { TextDocument } from '../SignatureHelpTextDocument/SignatureHelpTextDocument.ts';
@@ -0,0 +1,4 @@
1
+ export { executeSignatureHelpProvider } from "../ExecuteSignatureHelpProvider/ExecuteSignatureHelpProvider.js";
2
+ export { getSignatureHelpProviderRegistrySnapshot } from "../GetSignatureHelpProviderRegistrySnapshot/GetSignatureHelpProviderRegistrySnapshot.js";
3
+ export { registerSignatureHelpProvider } from "../RegisterSignatureHelpProvider/RegisterSignatureHelpProvider.js";
4
+ export { resetSignatureHelpProviderRegistry } from "../ResetSignatureHelpProviderRegistry/ResetSignatureHelpProviderRegistry.js";
@@ -0,0 +1,4 @@
1
+ export interface SignatureHelpParameter {
2
+ readonly documentation?: string;
3
+ readonly label: string;
4
+ }
@@ -0,0 +1,7 @@
1
+ import type { SignatureHelpResult } from '../SignatureHelpResult/SignatureHelpResult.ts';
2
+ import type { TextDocument } from '../SignatureHelpTextDocument/SignatureHelpTextDocument.ts';
3
+ export interface SignatureHelpProvider {
4
+ readonly id: string;
5
+ readonly languageId: string;
6
+ readonly provideSignatureHelp: (textDocument: TextDocument, offset: number, ...args: readonly unknown[]) => SignatureHelpResult | undefined | Promise<SignatureHelpResult | undefined>;
7
+ }
@@ -0,0 +1,12 @@
1
+ import type { Disposable } from '../Disposable/Disposable.ts';
2
+ import type { RegisteredSignatureHelpProvider } from '../RegisteredSignatureHelpProvider/RegisteredSignatureHelpProvider.ts';
3
+ import type { SignatureHelpProvider } from '../SignatureHelpProvider/SignatureHelpProvider.ts';
4
+ import type { SignatureHelpProviderRegistrySnapshot } from '../SignatureHelpProviderRegistrySnapshot/SignatureHelpProviderRegistrySnapshot.ts';
5
+ import type { SignatureHelpResult } from '../SignatureHelpResult/SignatureHelpResult.ts';
6
+ import type { TextDocument } from '../SignatureHelpTextDocument/SignatureHelpTextDocument.ts';
7
+ export declare const hasSignatureHelpProvider: (id: string) => boolean;
8
+ export declare const registerSignatureHelpProvider: (provider: SignatureHelpProvider) => Disposable;
9
+ export declare const executeSignatureHelpProvider: (textDocument: TextDocument, offset: number, ...args: readonly unknown[]) => Promise<SignatureHelpResult | undefined>;
10
+ export declare const getSignatureHelpProviders: () => RegisteredSignatureHelpProvider[];
11
+ export declare const getSignatureHelpProviderRegistrySnapshot: () => SignatureHelpProviderRegistrySnapshot;
12
+ export declare const resetSignatureHelpProviderRegistry: () => void;
@@ -0,0 +1,59 @@
1
+ import { ExtensionApiError } from "../ExtensionApiError/ExtensionApiError.js";
2
+ import { createProviderRegistry } from "../ProviderRegistry/ProviderRegistry.js";
3
+ const getType = (value) => {
4
+ if (value === null) {
5
+ return 'null';
6
+ }
7
+ if (typeof value === 'string') {
8
+ return JSON.stringify(value);
9
+ }
10
+ if (Array.isArray(value)) {
11
+ return 'array';
12
+ }
13
+ return typeof value;
14
+ };
15
+ const validateSignatureHelpResult = (signatureHelp) => {
16
+ if (signatureHelp === undefined) {
17
+ return undefined;
18
+ }
19
+ if (!signatureHelp || typeof signatureHelp !== 'object' || Array.isArray(signatureHelp)) {
20
+ throw new ExtensionApiError(`invalid signature help result: signature help must be of type object or undefined but is ${getType(signatureHelp)}`);
21
+ }
22
+ return signatureHelp;
23
+ };
24
+ const registry = createProviderRegistry({
25
+ mapProvider(provider) {
26
+ return {
27
+ id: provider.id,
28
+ languageId: provider.languageId,
29
+ provideSignatureHelp(textDocument, offset, ...args) {
30
+ return provider.provideSignatureHelp(textDocument, offset, ...args);
31
+ },
32
+ };
33
+ },
34
+ providerName: 'signature help provider',
35
+ requiredMethods: ['provideSignatureHelp'],
36
+ requireLanguageId: true,
37
+ });
38
+ export const hasSignatureHelpProvider = registry.hasProvider;
39
+ export const registerSignatureHelpProvider = (provider) => {
40
+ const registeredProvider = registry.registerProvider(provider);
41
+ return {
42
+ dispose() {
43
+ registry.deleteProvider(registeredProvider.id);
44
+ },
45
+ };
46
+ };
47
+ export const executeSignatureHelpProvider = async (textDocument, offset, ...args) => {
48
+ return registry.executeProviderByLanguageId(textDocument.languageId, 'provideSignatureHelp', [textDocument, offset, ...args], validateSignatureHelpResult);
49
+ };
50
+ export const getSignatureHelpProviders = registry.getProviders;
51
+ export const getSignatureHelpProviderRegistrySnapshot = () => {
52
+ return {
53
+ providers: registry.getProviders().map((provider) => ({
54
+ id: provider.id,
55
+ languageId: provider.languageId,
56
+ })),
57
+ };
58
+ };
59
+ export const resetSignatureHelpProviderRegistry = registry.reset;
@@ -0,0 +1,6 @@
1
+ export interface SignatureHelpProviderRegistrySnapshot {
2
+ readonly providers: readonly {
3
+ readonly id: string;
4
+ readonly languageId: string;
5
+ }[];
6
+ }
@@ -0,0 +1,6 @@
1
+ import type { SignatureHelpSignature } from '../SignatureHelpSignature/SignatureHelpSignature.ts';
2
+ export interface SignatureHelpResult {
3
+ readonly activeParameter: number;
4
+ readonly activeSignature: number;
5
+ readonly signatures: readonly SignatureHelpSignature[];
6
+ }
@@ -0,0 +1,6 @@
1
+ import type { SignatureHelpParameter } from '../SignatureHelpParameter/SignatureHelpParameter.ts';
2
+ export interface SignatureHelpSignature {
3
+ readonly documentation?: string;
4
+ readonly label: string;
5
+ readonly parameters: readonly SignatureHelpParameter[];
6
+ }
@@ -0,0 +1,6 @@
1
+ export interface TextDocument {
2
+ readonly documentId?: number;
3
+ readonly languageId: string;
4
+ readonly text: string;
5
+ readonly uri: string;
6
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/api",
3
- "version": "8.71.0",
3
+ "version": "8.73.0",
4
4
  "description": "Tree-shakeable extension API for Lvce Editor extensions.",
5
5
  "keywords": [
6
6
  "lvce-editor",