@lvce-editor/api 8.80.1 → 8.82.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/index.d.ts +4 -3
- package/dist/index.js +3 -3
- package/dist/parts/FileSystemProvider/FileSystemProvider.d.ts +4 -0
- package/dist/parts/FileSystemProviderRegistry/FileSystemProviderRegistry.d.ts +5 -0
- package/dist/parts/FileSystemProviderRegistry/FileSystemProviderRegistry.js +48 -0
- package/dist/parts/Host/Host.d.ts +1 -0
- package/dist/parts/Host/Host.js +11 -0
- package/dist/parts/QuickPick/QuickPick.d.ts +2 -0
- package/dist/parts/QuickPick/QuickPick.js +3 -0
- package/dist/parts/RegisteredFileSystemProvider/RegisteredFileSystemProvider.d.ts +4 -0
- package/dist/parts/ShowQuickInputOptions/ShowQuickInputOptions.d.ts +4 -0
- package/dist/parts/ShowQuickInputOptions/ShowQuickInputOptions.js +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { activate } from './parts/Activation/Activation.ts';
|
|
|
2
2
|
export { getAccessToken, type GetAccessTokenOptions } from './parts/Authentication/Authentication.ts';
|
|
3
3
|
export { createElectronWebContentsView } from './parts/ElectronWebContentsView/ElectronWebContentsView.ts';
|
|
4
4
|
export { executeCommand } from './parts/ExecuteCommand/ExecuteCommand.ts';
|
|
5
|
-
export { showQuickPick } from './parts/QuickPick/QuickPick.ts';
|
|
5
|
+
export { showQuickInput, showQuickPick } from './parts/QuickPick/QuickPick.ts';
|
|
6
6
|
export { getPreference, setPreference } from './parts/Preferences/Preferences.ts';
|
|
7
7
|
export { deleteSecret, getSecret, storeSecret } from './parts/SecretStorage/SecretStorage.ts';
|
|
8
8
|
export { registerCommand } from './parts/CommandRegistry/CommandRegistry.ts';
|
|
@@ -12,8 +12,8 @@ export { executeDiagnosticProvider, getDiagnosticProviderRegistrySnapshot, regis
|
|
|
12
12
|
export { executeFormattingProvider, getFormattingProviderRegistrySnapshot, registerFormattingProvider, resetFormattingProviderRegistry, } from './parts/Formatting/Formatting.ts';
|
|
13
13
|
export { exists, mkdir, readAsObjectUrl, readDirWithFileTypes, readFile, remove, stat, writeFile, type ReadAsObjectUrlResult, } from './parts/FileSystem/FileSystem.ts';
|
|
14
14
|
export { registerFileChangeHandler, type FileChangeHandler, type FileChanges } from './parts/FileChangeHandler/FileChangeHandler.ts';
|
|
15
|
-
export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from './parts/FileSystemProviderRegistry/FileSystemProviderRegistry.ts';
|
|
16
|
-
export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, showNotification, type NotificationType, } from './parts/Host/Host.ts';
|
|
15
|
+
export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderMkdir, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, executeFileSystemProviderRemove, executeFileSystemProviderRename, executeFileSystemProviderWriteFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from './parts/FileSystemProviderRegistry/FileSystemProviderRegistry.ts';
|
|
16
|
+
export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, setWorkspaceUri, showNotification, type NotificationType, } from './parts/Host/Host.ts';
|
|
17
17
|
export { executeHoverProvider, getHoverProviderRegistrySnapshot, registerHoverProvider, resetHoverProviderRegistry } from './parts/Hover/Hover.ts';
|
|
18
18
|
export { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot, registerSignatureHelpProvider, resetSignatureHelpProviderRegistry, } from './parts/SignatureHelp/SignatureHelp.ts';
|
|
19
19
|
export { getPlatform, type Platform } from './parts/Platform/Platform.ts';
|
|
@@ -40,6 +40,7 @@ export type { FileSystemDirent } from './parts/FileSystem/FileSystem.ts';
|
|
|
40
40
|
export type { FileSystemProvider } from './parts/FileSystemProvider/FileSystemProvider.ts';
|
|
41
41
|
export type { FileSystemProviderRegistrySnapshot } from './parts/FileSystemProviderRegistrySnapshot/FileSystemProviderRegistrySnapshot.ts';
|
|
42
42
|
export type { RegisteredFileSystemProvider } from './parts/RegisteredFileSystemProvider/RegisteredFileSystemProvider.ts';
|
|
43
|
+
export type { ShowQuickInputOptions } from './parts/ShowQuickInputOptions/ShowQuickInputOptions.ts';
|
|
43
44
|
export type { HandleExtensionManagementMessagePortOptions } from './parts/HandleExtensionManagementMessagePort/HandleExtensionManagementMessagePort.ts';
|
|
44
45
|
export type { HoverProvider, HoverProviderRegistrySnapshot, HoverResult, RegisteredHoverProvider } from './parts/Hover/Hover.ts';
|
|
45
46
|
export type { RegisteredSignatureHelpProvider, SignatureHelpParameter, SignatureHelpProvider, SignatureHelpProviderRegistrySnapshot, SignatureHelpResult, SignatureHelpSignature, } from './parts/SignatureHelp/SignatureHelp.ts';
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ export { activate } from "./parts/Activation/Activation.js";
|
|
|
2
2
|
export { getAccessToken } from "./parts/Authentication/Authentication.js";
|
|
3
3
|
export { createElectronWebContentsView } from "./parts/ElectronWebContentsView/ElectronWebContentsView.js";
|
|
4
4
|
export { executeCommand } from "./parts/ExecuteCommand/ExecuteCommand.js";
|
|
5
|
-
export { showQuickPick } from "./parts/QuickPick/QuickPick.js";
|
|
5
|
+
export { showQuickInput, showQuickPick } from "./parts/QuickPick/QuickPick.js";
|
|
6
6
|
export { getPreference, setPreference } from "./parts/Preferences/Preferences.js";
|
|
7
7
|
export { deleteSecret, getSecret, storeSecret } from "./parts/SecretStorage/SecretStorage.js";
|
|
8
8
|
export { registerCommand } from "./parts/CommandRegistry/CommandRegistry.js";
|
|
@@ -12,8 +12,8 @@ export { executeDiagnosticProvider, getDiagnosticProviderRegistrySnapshot, regis
|
|
|
12
12
|
export { executeFormattingProvider, getFormattingProviderRegistrySnapshot, registerFormattingProvider, resetFormattingProviderRegistry, } from "./parts/Formatting/Formatting.js";
|
|
13
13
|
export { exists, mkdir, readAsObjectUrl, readDirWithFileTypes, readFile, remove, stat, writeFile, } from "./parts/FileSystem/FileSystem.js";
|
|
14
14
|
export { registerFileChangeHandler } from "./parts/FileChangeHandler/FileChangeHandler.js";
|
|
15
|
-
export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from "./parts/FileSystemProviderRegistry/FileSystemProviderRegistry.js";
|
|
16
|
-
export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, showNotification, } from "./parts/Host/Host.js";
|
|
15
|
+
export { executeFileSystemProviderGetPathSeparator, executeFileSystemProviderIsReadonly, executeFileSystemProviderMkdir, executeFileSystemProviderReadDirWithFileTypes, executeFileSystemProviderReadFile, executeFileSystemProviderRemove, executeFileSystemProviderRename, executeFileSystemProviderWriteFile, getFileSystemProviderRegistrySnapshot, registerFileSystemProvider, resetFileSystemProviderRegistry, } from "./parts/FileSystemProviderRegistry/FileSystemProviderRegistry.js";
|
|
16
|
+
export { confirm, getWorkspaceFolder, getWorkspaceUri, handleWorkspaceRefresh, openUri, setWorkspaceUri, showNotification, } from "./parts/Host/Host.js";
|
|
17
17
|
export { executeHoverProvider, getHoverProviderRegistrySnapshot, registerHoverProvider, resetHoverProviderRegistry } from "./parts/Hover/Hover.js";
|
|
18
18
|
export { executeSignatureHelpProvider, getSignatureHelpProviderRegistrySnapshot, registerSignatureHelpProvider, resetSignatureHelpProviderRegistry, } from "./parts/SignatureHelp/SignatureHelp.js";
|
|
19
19
|
export { getPlatform } from "./parts/Platform/Platform.js";
|
|
@@ -2,7 +2,11 @@ import type { FileSystemDirent } from '../FileSystemDirent/FileSystemDirent.ts';
|
|
|
2
2
|
export interface FileSystemProvider {
|
|
3
3
|
readonly id: string;
|
|
4
4
|
readonly isReadonly?: () => boolean | Promise<boolean>;
|
|
5
|
+
readonly mkdir?: (uri: string) => void | Promise<void>;
|
|
5
6
|
readonly pathSeparator?: string;
|
|
6
7
|
readonly readDirWithFileTypes?: (uri: string) => readonly FileSystemDirent[] | Promise<readonly FileSystemDirent[]>;
|
|
7
8
|
readonly readFile: (uri: string) => string | Promise<string>;
|
|
9
|
+
readonly remove?: (uri: string) => void | Promise<void>;
|
|
10
|
+
readonly rename?: (oldUri: string, newUri: string) => void | Promise<void>;
|
|
11
|
+
readonly writeFile?: (uri: string, content: string) => void | Promise<void>;
|
|
8
12
|
}
|
|
@@ -3,8 +3,13 @@ import type { FileSystemDirent } from '../FileSystemDirent/FileSystemDirent.ts';
|
|
|
3
3
|
import type { FileSystemProvider } from '../FileSystemProvider/FileSystemProvider.ts';
|
|
4
4
|
import type { FileSystemProviderRegistrySnapshot } from '../FileSystemProviderRegistrySnapshot/FileSystemProviderRegistrySnapshot.ts';
|
|
5
5
|
export declare const executeFileSystemProviderReadFile: (id: string, uri: string) => Promise<string>;
|
|
6
|
+
export declare const executeFileSystemProviderMkdir: (id: string, uri: string) => Promise<void>;
|
|
7
|
+
export declare const executeFileSystemProviderRemove: (id: string, uri: string) => Promise<void>;
|
|
8
|
+
export declare const executeFileSystemProviderRename: (id: string, oldUri: string, newUri: string) => Promise<void>;
|
|
9
|
+
export declare const executeFileSystemProviderWriteFile: (id: string, uri: string, content: string) => Promise<void>;
|
|
6
10
|
export declare const executeFileSystemProviderReadDirWithFileTypes: (id: string, uri: string) => Promise<readonly FileSystemDirent[]>;
|
|
7
11
|
export declare const executeFileSystemProviderGetPathSeparator: (id: string) => string;
|
|
12
|
+
export declare const getFileSystemProviderPathSeparator: (id: string) => string | undefined;
|
|
8
13
|
export declare const executeFileSystemProviderIsReadonly: (id: string) => Promise<boolean>;
|
|
9
14
|
export declare const getFileSystemProviderRegistrySnapshot: () => FileSystemProviderRegistrySnapshot;
|
|
10
15
|
export declare const registerFileSystemProvider: (provider: FileSystemProvider) => Disposable;
|
|
@@ -17,6 +17,11 @@ const assertFileSystemProvider = (provider) => {
|
|
|
17
17
|
if (provider.isReadonly !== undefined && typeof provider.isReadonly !== 'function') {
|
|
18
18
|
throw new ExtensionApiError(`file system provider ${provider.id} has invalid isReadonly function`);
|
|
19
19
|
}
|
|
20
|
+
for (const method of ['mkdir', 'remove', 'rename', 'writeFile']) {
|
|
21
|
+
if (provider[method] !== undefined && typeof provider[method] !== 'function') {
|
|
22
|
+
throw new ExtensionApiError(`file system provider ${provider.id} has invalid ${method} function`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
20
25
|
if (provider.pathSeparator !== undefined && typeof provider.pathSeparator !== 'string') {
|
|
21
26
|
throw new ExtensionApiError(`file system provider ${provider.id} has invalid pathSeparator`);
|
|
22
27
|
}
|
|
@@ -34,6 +39,34 @@ const getProvider = (id) => {
|
|
|
34
39
|
export const executeFileSystemProviderReadFile = async (id, uri) => {
|
|
35
40
|
return getProvider(id).readFile(uri);
|
|
36
41
|
};
|
|
42
|
+
export const executeFileSystemProviderMkdir = async (id, uri) => {
|
|
43
|
+
const provider = getProvider(id);
|
|
44
|
+
if (!provider.mkdir) {
|
|
45
|
+
throw new ExtensionApiError(`file system provider ${id} is missing mkdir function`);
|
|
46
|
+
}
|
|
47
|
+
await provider.mkdir(uri);
|
|
48
|
+
};
|
|
49
|
+
export const executeFileSystemProviderRemove = async (id, uri) => {
|
|
50
|
+
const provider = getProvider(id);
|
|
51
|
+
if (!provider.remove) {
|
|
52
|
+
throw new ExtensionApiError(`file system provider ${id} is missing remove function`);
|
|
53
|
+
}
|
|
54
|
+
await provider.remove(uri);
|
|
55
|
+
};
|
|
56
|
+
export const executeFileSystemProviderRename = async (id, oldUri, newUri) => {
|
|
57
|
+
const provider = getProvider(id);
|
|
58
|
+
if (!provider.rename) {
|
|
59
|
+
throw new ExtensionApiError(`file system provider ${id} is missing rename function`);
|
|
60
|
+
}
|
|
61
|
+
await provider.rename(oldUri, newUri);
|
|
62
|
+
};
|
|
63
|
+
export const executeFileSystemProviderWriteFile = async (id, uri, content) => {
|
|
64
|
+
const provider = getProvider(id);
|
|
65
|
+
if (!provider.writeFile) {
|
|
66
|
+
throw new ExtensionApiError(`file system provider ${id} is missing writeFile function`);
|
|
67
|
+
}
|
|
68
|
+
await provider.writeFile(uri, content);
|
|
69
|
+
};
|
|
37
70
|
export const executeFileSystemProviderReadDirWithFileTypes = async (id, uri) => {
|
|
38
71
|
const provider = getProvider(id);
|
|
39
72
|
if (!provider.readDirWithFileTypes) {
|
|
@@ -44,6 +77,13 @@ export const executeFileSystemProviderReadDirWithFileTypes = async (id, uri) =>
|
|
|
44
77
|
export const executeFileSystemProviderGetPathSeparator = (id) => {
|
|
45
78
|
return getProvider(id).pathSeparator || '/';
|
|
46
79
|
};
|
|
80
|
+
export const getFileSystemProviderPathSeparator = (id) => {
|
|
81
|
+
const provider = providers[id];
|
|
82
|
+
if (!provider) {
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
return provider.pathSeparator || '/';
|
|
86
|
+
};
|
|
47
87
|
export const executeFileSystemProviderIsReadonly = async (id) => {
|
|
48
88
|
const provider = getProvider(id);
|
|
49
89
|
return provider.isReadonly ? provider.isReadonly() : false;
|
|
@@ -60,9 +100,13 @@ export const registerFileSystemProvider = (provider) => {
|
|
|
60
100
|
providers[provider.id] = {
|
|
61
101
|
id: provider.id,
|
|
62
102
|
isReadonly: provider.isReadonly,
|
|
103
|
+
mkdir: provider.mkdir,
|
|
63
104
|
pathSeparator: provider.pathSeparator,
|
|
64
105
|
readDirWithFileTypes: provider.readDirWithFileTypes,
|
|
65
106
|
readFile: (uri) => provider.readFile(uri),
|
|
107
|
+
remove: provider.remove,
|
|
108
|
+
rename: provider.rename,
|
|
109
|
+
writeFile: provider.writeFile,
|
|
66
110
|
};
|
|
67
111
|
ExtensionApiCommandRegistry.registerCommandMap(commandMap);
|
|
68
112
|
return {
|
|
@@ -74,8 +118,12 @@ export const registerFileSystemProvider = (provider) => {
|
|
|
74
118
|
const commandMap = {
|
|
75
119
|
'ExtensionApi.executeFileSystemProviderGetPathSeparator': executeFileSystemProviderGetPathSeparator,
|
|
76
120
|
'ExtensionApi.executeFileSystemProviderIsReadonly': executeFileSystemProviderIsReadonly,
|
|
121
|
+
'ExtensionApi.executeFileSystemProviderMkdir': executeFileSystemProviderMkdir,
|
|
77
122
|
'ExtensionApi.executeFileSystemProviderReadDirWithFileTypes': executeFileSystemProviderReadDirWithFileTypes,
|
|
78
123
|
'ExtensionApi.executeFileSystemProviderReadFile': executeFileSystemProviderReadFile,
|
|
124
|
+
'ExtensionApi.executeFileSystemProviderRemove': executeFileSystemProviderRemove,
|
|
125
|
+
'ExtensionApi.executeFileSystemProviderRename': executeFileSystemProviderRename,
|
|
126
|
+
'ExtensionApi.executeFileSystemProviderWriteFile': executeFileSystemProviderWriteFile,
|
|
79
127
|
'ExtensionApi.getFileSystemProviderRegistrySnapshot': getFileSystemProviderRegistrySnapshot,
|
|
80
128
|
};
|
|
81
129
|
export const resetFileSystemProviderRegistry = () => {
|
|
@@ -5,3 +5,4 @@ export declare const getWorkspaceUri: () => Promise<string>;
|
|
|
5
5
|
export declare const handleWorkspaceRefresh: () => Promise<void>;
|
|
6
6
|
export declare const openUri: (uri: string) => Promise<void>;
|
|
7
7
|
export declare const showNotification: (type: NotificationType, message: string) => Promise<void>;
|
|
8
|
+
export declare const setWorkspaceUri: (uri: string) => Promise<void>;
|
package/dist/parts/Host/Host.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { executeCommand } from "../ExecuteCommand/ExecuteCommand.js";
|
|
2
|
+
import { getFileSystemProviderPathSeparator } from "../FileSystemProviderRegistry/FileSystemProviderRegistry.js";
|
|
2
3
|
export const confirm = async (message) => {
|
|
3
4
|
return Boolean(await executeCommand('ConfirmPrompt.prompt', message));
|
|
4
5
|
};
|
|
@@ -17,3 +18,13 @@ export const openUri = async (uri) => {
|
|
|
17
18
|
export const showNotification = async (type, message) => {
|
|
18
19
|
await executeCommand('Notification.create', type, message);
|
|
19
20
|
};
|
|
21
|
+
export const setWorkspaceUri = async (uri) => {
|
|
22
|
+
const protocolEnd = uri.indexOf(':');
|
|
23
|
+
const protocol = protocolEnd === -1 ? '' : uri.slice(0, protocolEnd);
|
|
24
|
+
const pathSeparator = getFileSystemProviderPathSeparator(protocol);
|
|
25
|
+
if (pathSeparator === undefined) {
|
|
26
|
+
await executeCommand('Workspace.setUri', uri);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
await executeCommand('Workspace.setUri', uri, pathSeparator);
|
|
30
|
+
};
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
+
import type { ShowQuickInputOptions } from '../ShowQuickInputOptions/ShowQuickInputOptions.ts';
|
|
1
2
|
import type { ShowQuickPickOptions } from '../ShowQuickPickOptions/ShowQuickPickOptions.ts';
|
|
3
|
+
export declare const showQuickInput: (options?: ShowQuickInputOptions) => Promise<string | undefined>;
|
|
2
4
|
export declare const showQuickPick: (options: ShowQuickPickOptions) => Promise<unknown>;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ExtensionManagementWorker } from '@lvce-editor/rpc-registry';
|
|
2
|
+
export const showQuickInput = async (options = {}) => {
|
|
3
|
+
return ExtensionManagementWorker.invoke('ExtensionHostQuickPick.showQuickInput', options);
|
|
4
|
+
};
|
|
2
5
|
export const showQuickPick = async (options) => {
|
|
3
6
|
return ExtensionManagementWorker.invoke('ExtensionHostQuickPick.showQuickPick', options);
|
|
4
7
|
};
|
|
@@ -2,7 +2,11 @@ import type { FileSystemDirent } from '../FileSystemDirent/FileSystemDirent.ts';
|
|
|
2
2
|
export interface RegisteredFileSystemProvider {
|
|
3
3
|
readonly id: string;
|
|
4
4
|
readonly isReadonly?: () => boolean | Promise<boolean>;
|
|
5
|
+
readonly mkdir?: (uri: string) => void | Promise<void>;
|
|
5
6
|
readonly pathSeparator?: string;
|
|
6
7
|
readonly readDirWithFileTypes?: (uri: string) => readonly FileSystemDirent[] | Promise<readonly FileSystemDirent[]>;
|
|
7
8
|
readonly readFile: (uri: string) => string | Promise<string>;
|
|
9
|
+
readonly remove?: (uri: string) => void | Promise<void>;
|
|
10
|
+
readonly rename?: (oldUri: string, newUri: string) => void | Promise<void>;
|
|
11
|
+
readonly writeFile?: (uri: string, content: string) => void | Promise<void>;
|
|
8
12
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|