@lvce-editor/api 9.8.1 → 9.10.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 CHANGED
@@ -3,11 +3,11 @@ export { getAccessToken, type GetAccessTokenOptions } from './parts/Authenticati
3
3
  export { createElectronWebContentsView } from './parts/ElectronWebContentsView/ElectronWebContentsView.ts';
4
4
  export { executeCommand } from './parts/ExecuteCommand/ExecuteCommand.ts';
5
5
  export { showFileQuickPick, showQuickInput, showQuickPick } from './parts/QuickPick/QuickPick.ts';
6
- export { getPreference, openSettings, setPreference } from './parts/Preferences/Preferences.ts';
6
+ export { getPreference, openSettings, setPreference, setSettingsSearchValue } 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';
9
9
  export { registerDebugProvider, resetDebugProviderRegistry } from './parts/Debug/Debug.ts';
10
- export { formatDocument, getDiagnostics, showCompletions } from './parts/Editor/Editor.ts';
10
+ export { formatDocument, getDiagnostics, getEditorSelections, setEditorSelections, showCompletions, type EditorSelection, } from './parts/Editor/Editor.ts';
11
11
  export { executeCompletionProvider, executeResolveCompletionItemProvider, getCompletionProviderRegistrySnapshot, registerCompletionProvider, resetCompletionProviderRegistry, } from './parts/Completion/Completion.ts';
12
12
  export { executeDiagnosticProvider, getDiagnosticProviderRegistrySnapshot, registerDiagnosticProvider, resetDiagnosticProviderRegistry, } from './parts/Diagnostic/Diagnostic.ts';
13
13
  export { executeFormattingProvider, getFormattingProviderRegistrySnapshot, registerFormattingProvider, resetFormattingProviderRegistry, } from './parts/Formatting/Formatting.ts';
package/dist/index.js CHANGED
@@ -3,11 +3,11 @@ 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
5
  export { showFileQuickPick, showQuickInput, showQuickPick } from "./parts/QuickPick/QuickPick.js";
6
- export { getPreference, openSettings, setPreference } from "./parts/Preferences/Preferences.js";
6
+ export { getPreference, openSettings, setPreference, setSettingsSearchValue } 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";
9
9
  export { registerDebugProvider, resetDebugProviderRegistry } from "./parts/Debug/Debug.js";
10
- export { formatDocument, getDiagnostics, showCompletions } from "./parts/Editor/Editor.js";
10
+ export { formatDocument, getDiagnostics, getEditorSelections, setEditorSelections, showCompletions, } from "./parts/Editor/Editor.js";
11
11
  export { executeCompletionProvider, executeResolveCompletionItemProvider, getCompletionProviderRegistrySnapshot, registerCompletionProvider, resetCompletionProviderRegistry, } from "./parts/Completion/Completion.js";
12
12
  export { executeDiagnosticProvider, getDiagnosticProviderRegistrySnapshot, registerDiagnosticProvider, resetDiagnosticProviderRegistry, } from "./parts/Diagnostic/Diagnostic.js";
13
13
  export { executeFormattingProvider, getFormattingProviderRegistrySnapshot, registerFormattingProvider, resetFormattingProviderRegistry, } from "./parts/Formatting/Formatting.js";
@@ -1,4 +1,12 @@
1
1
  import type { Diagnostic } from '../DiagnosticResult/DiagnosticResult.ts';
2
+ export interface EditorSelection {
3
+ readonly endColumnIndex: number;
4
+ readonly endRowIndex: number;
5
+ readonly startColumnIndex: number;
6
+ readonly startRowIndex: number;
7
+ }
2
8
  export declare const formatDocument: () => Promise<void>;
3
9
  export declare const getDiagnostics: () => Promise<readonly Diagnostic[]>;
10
+ export declare const getEditorSelections: () => Promise<readonly EditorSelection[]>;
11
+ export declare const setEditorSelections: (selections: readonly EditorSelection[]) => Promise<void>;
4
12
  export declare const showCompletions: () => Promise<void>;
@@ -5,6 +5,28 @@ export const formatDocument = async () => {
5
5
  export const getDiagnostics = async () => {
6
6
  return (await executeCommand('GetActiveEditor.getDiagnostics'));
7
7
  };
8
+ export const getEditorSelections = async () => {
9
+ const values = (await executeCommand('GetActiveEditor.getSelections'));
10
+ const selections = [];
11
+ for (let index = 0; index < values.length; index += 4) {
12
+ selections.push({
13
+ endColumnIndex: values[index + 3],
14
+ endRowIndex: values[index + 2],
15
+ startColumnIndex: values[index + 1],
16
+ startRowIndex: values[index],
17
+ });
18
+ }
19
+ return selections;
20
+ };
21
+ export const setEditorSelections = async (selections) => {
22
+ const values = selections.flatMap(({ endColumnIndex, endRowIndex, startColumnIndex, startRowIndex }) => [
23
+ startRowIndex,
24
+ startColumnIndex,
25
+ endRowIndex,
26
+ endColumnIndex,
27
+ ]);
28
+ await executeCommand('GetActiveEditor.setSelections', values);
29
+ };
8
30
  export const showCompletions = async () => {
9
31
  await executeCommand('Editor.openCompletion');
10
32
  };
@@ -1,3 +1,4 @@
1
1
  export declare const getPreference: (key: string) => Promise<unknown>;
2
2
  export declare const openSettings: () => Promise<void>;
3
+ export declare const setSettingsSearchValue: (value: string) => Promise<void>;
3
4
  export declare const setPreference: (key: string, value: unknown) => Promise<void>;
@@ -6,6 +6,9 @@ export const getPreference = async (key) => {
6
6
  export const openSettings = async () => {
7
7
  await executeCommand('Preferences.openSettingsUi');
8
8
  };
9
+ export const setSettingsSearchValue = async (value) => {
10
+ await executeCommand('Settings.handleInput', value);
11
+ };
9
12
  export const setPreference = async (key, value) => {
10
13
  await ExtensionManagementWorker.invoke('Extensions.setPreference', key, value);
11
14
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/api",
3
- "version": "9.8.1",
3
+ "version": "9.10.0",
4
4
  "description": "Tree-shakeable extension API for Lvce Editor extensions.",
5
5
  "keywords": [
6
6
  "lvce-editor",