@theia/plugin 1.33.0 → 1.34.0-next.31
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/package.json +2 -2
- package/src/theia.d.ts +529 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/plugin",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.34.0-next.31+255450b22",
|
|
4
4
|
"description": "Theia - Plugin API",
|
|
5
5
|
"types": "./src/theia.d.ts",
|
|
6
6
|
"publishConfig": {
|
|
@@ -32,5 +32,5 @@
|
|
|
32
32
|
"nyc": {
|
|
33
33
|
"extends": "../../configs/nyc.json"
|
|
34
34
|
},
|
|
35
|
-
"gitHead": "
|
|
35
|
+
"gitHead": "255450b224eae499d1b130eaf7318ac9659baaa4"
|
|
36
36
|
}
|
package/src/theia.d.ts
CHANGED
|
@@ -3001,10 +3001,34 @@ export module '@theia/plugin' {
|
|
|
3001
3001
|
*/
|
|
3002
3002
|
message?: string;
|
|
3003
3003
|
|
|
3004
|
+
/**
|
|
3005
|
+
* The {@link TerminalLocation} or {@link TerminalEditorLocationOptions} or {@link TerminalSplitLocationOptions} for the terminal.
|
|
3006
|
+
*/
|
|
3007
|
+
location?: TerminalLocation | TerminalEditorLocationOptions | TerminalSplitLocationOptions;
|
|
3008
|
+
|
|
3009
|
+
/**
|
|
3010
|
+
* Opt-out of the default terminal persistence on restart and reload.
|
|
3011
|
+
* This will only take effect when `terminal.integrated.enablePersistentSessions` is enabled.
|
|
3012
|
+
*/
|
|
3013
|
+
isTransient?: boolean;
|
|
3014
|
+
|
|
3004
3015
|
/**
|
|
3005
3016
|
* Terminal attributes. Can be useful to apply some implementation specific information.
|
|
3006
3017
|
*/
|
|
3007
3018
|
attributes?: { [key: string]: string | null };
|
|
3019
|
+
|
|
3020
|
+
/**
|
|
3021
|
+
* The icon path or {@link ThemeIcon} for the terminal.
|
|
3022
|
+
*/
|
|
3023
|
+
iconPath?: ThemeIcon;
|
|
3024
|
+
|
|
3025
|
+
/**
|
|
3026
|
+
* The icon {@link ThemeColor} for the terminal.
|
|
3027
|
+
* The `terminal.ansi*` theme keys are
|
|
3028
|
+
* recommended for the best contrast and consistency across themes.
|
|
3029
|
+
* @stubbed
|
|
3030
|
+
*/
|
|
3031
|
+
color?: ThemeColor;
|
|
3008
3032
|
}
|
|
3009
3033
|
|
|
3010
3034
|
/**
|
|
@@ -3067,6 +3091,30 @@ export module '@theia/plugin' {
|
|
|
3067
3091
|
* control it.
|
|
3068
3092
|
*/
|
|
3069
3093
|
pty: Pseudoterminal;
|
|
3094
|
+
|
|
3095
|
+
/**
|
|
3096
|
+
* The {@link TerminalLocation} or {@link TerminalEditorLocationOptions} or {@link TerminalSplitLocationOptions} for the terminal.
|
|
3097
|
+
*/
|
|
3098
|
+
location?: TerminalLocation | TerminalEditorLocationOptions | TerminalSplitLocationOptions;
|
|
3099
|
+
|
|
3100
|
+
/**
|
|
3101
|
+
* Opt-out of the default terminal persistence on restart and reload.
|
|
3102
|
+
* This will only take effect when `terminal.integrated.enablePersistentSessions` is enabled.
|
|
3103
|
+
*/
|
|
3104
|
+
isTransient?: boolean;
|
|
3105
|
+
|
|
3106
|
+
/**
|
|
3107
|
+
* The icon path or {@link ThemeIcon} for the terminal.
|
|
3108
|
+
*/
|
|
3109
|
+
iconPath?: ThemeIcon;
|
|
3110
|
+
|
|
3111
|
+
/**
|
|
3112
|
+
* The icon {@link ThemeColor} for the terminal.
|
|
3113
|
+
* The standard `terminal.ansi*` theme keys are
|
|
3114
|
+
* recommended for the best contrast and consistency across themes.
|
|
3115
|
+
* @stubbed
|
|
3116
|
+
*/
|
|
3117
|
+
color?: ThemeColor;
|
|
3070
3118
|
}
|
|
3071
3119
|
|
|
3072
3120
|
/**
|
|
@@ -3207,6 +3255,50 @@ export module '@theia/plugin' {
|
|
|
3207
3255
|
constructor(startIndex: number, length: number, tooltip?: string);
|
|
3208
3256
|
}
|
|
3209
3257
|
|
|
3258
|
+
/**
|
|
3259
|
+
* The location of the {@link Terminal}.
|
|
3260
|
+
*/
|
|
3261
|
+
export enum TerminalLocation {
|
|
3262
|
+
/**
|
|
3263
|
+
* In the terminal view
|
|
3264
|
+
*/
|
|
3265
|
+
Panel = 1,
|
|
3266
|
+
/**
|
|
3267
|
+
* In the editor area
|
|
3268
|
+
*/
|
|
3269
|
+
Editor = 2,
|
|
3270
|
+
}
|
|
3271
|
+
|
|
3272
|
+
/**
|
|
3273
|
+
* Assumes a {@link TerminalLocation} of editor and allows specifying a {@link ViewColumn} and
|
|
3274
|
+
* {@link TerminalEditorLocationOptions.preserveFocus preserveFocus } property
|
|
3275
|
+
*/
|
|
3276
|
+
export interface TerminalEditorLocationOptions {
|
|
3277
|
+
/**
|
|
3278
|
+
* A view column in which the {@link Terminal terminal} should be shown in the editor area.
|
|
3279
|
+
* Use {@link ViewColumn.Active active} to open in the active editor group, other values are
|
|
3280
|
+
* adjusted to be `Min(column, columnCount + 1)`, the
|
|
3281
|
+
* {@link ViewColumn.Active active}-column is not adjusted. Use
|
|
3282
|
+
* {@linkcode ViewColumn.Beside} to open the editor to the side of the currently active one.
|
|
3283
|
+
*/
|
|
3284
|
+
viewColumn: ViewColumn;
|
|
3285
|
+
/**
|
|
3286
|
+
* An optional flag that when `true` will stop the {@link Terminal} from taking focus.
|
|
3287
|
+
*/
|
|
3288
|
+
preserveFocus?: boolean;
|
|
3289
|
+
}
|
|
3290
|
+
|
|
3291
|
+
/**
|
|
3292
|
+
* Uses the parent {@link Terminal}'s location for the terminal
|
|
3293
|
+
*/
|
|
3294
|
+
export interface TerminalSplitLocationOptions {
|
|
3295
|
+
/**
|
|
3296
|
+
* The parent terminal to split this terminal beside. This works whether the parent terminal
|
|
3297
|
+
* is in the panel or the editor area.
|
|
3298
|
+
*/
|
|
3299
|
+
parentTerminal: Terminal;
|
|
3300
|
+
}
|
|
3301
|
+
|
|
3210
3302
|
/**
|
|
3211
3303
|
* A file decoration represents metadata that can be rendered with a file.
|
|
3212
3304
|
*/
|
|
@@ -4554,6 +4646,11 @@ export module '@theia/plugin' {
|
|
|
4554
4646
|
*/
|
|
4555
4647
|
export namespace window {
|
|
4556
4648
|
|
|
4649
|
+
/**
|
|
4650
|
+
* Represents the grid widget within the main editor area
|
|
4651
|
+
*/
|
|
4652
|
+
export const tabGroups: TabGroups;
|
|
4653
|
+
|
|
4557
4654
|
/**
|
|
4558
4655
|
* The currently active terminal or undefined. The active terminal is the one
|
|
4559
4656
|
* that currently has focus or most recently had focus.
|
|
@@ -5318,6 +5415,17 @@ export module '@theia/plugin' {
|
|
|
5318
5415
|
*/
|
|
5319
5416
|
password: boolean;
|
|
5320
5417
|
|
|
5418
|
+
/**
|
|
5419
|
+
* Selection range in the input value. Defined as tuple of two number where the
|
|
5420
|
+
* first is the inclusive start index and the second the exclusive end index. When `undefined` the whole
|
|
5421
|
+
* pre-filled value will be selected, when empty (start equals end) only the cursor will be set,
|
|
5422
|
+
* otherwise the defined range will be selected.
|
|
5423
|
+
*
|
|
5424
|
+
* This property does not get updated when the user types or makes a selection,
|
|
5425
|
+
* but it can be updated by the extension.
|
|
5426
|
+
*/
|
|
5427
|
+
valueSelection: readonly [number, number] | undefined;
|
|
5428
|
+
|
|
5321
5429
|
/**
|
|
5322
5430
|
* An event signaling when the value has changed.
|
|
5323
5431
|
*/
|
|
@@ -8764,11 +8872,21 @@ export module '@theia/plugin' {
|
|
|
8764
8872
|
source?: string;
|
|
8765
8873
|
|
|
8766
8874
|
/**
|
|
8767
|
-
* A code or identifier for this
|
|
8768
|
-
*
|
|
8769
|
-
* providing {@link CodeActionContext code actions}.
|
|
8875
|
+
* A code or identifier for this diagnostic.
|
|
8876
|
+
* Should be used for later processing, e.g. when providing {@link CodeActionContext code actions}.
|
|
8770
8877
|
*/
|
|
8771
|
-
code?: string | number
|
|
8878
|
+
code?: string | number | {
|
|
8879
|
+
/**
|
|
8880
|
+
* A code or identifier for this diagnostic.
|
|
8881
|
+
* Should be used for later processing, e.g. when providing {@link CodeActionContext code actions}.
|
|
8882
|
+
*/
|
|
8883
|
+
value: string | number;
|
|
8884
|
+
|
|
8885
|
+
/**
|
|
8886
|
+
* A target URI to open with more information about the diagnostic error.
|
|
8887
|
+
*/
|
|
8888
|
+
target: Uri;
|
|
8889
|
+
};
|
|
8772
8890
|
|
|
8773
8891
|
/**
|
|
8774
8892
|
* An array of related diagnostic information, e.g. when symbol-names within
|
|
@@ -9179,6 +9297,17 @@ export module '@theia/plugin' {
|
|
|
9179
9297
|
*/
|
|
9180
9298
|
static readonly RefactorInline: CodeActionKind;
|
|
9181
9299
|
|
|
9300
|
+
/**
|
|
9301
|
+
* Base kind for refactoring inline actions: `refactor.move`
|
|
9302
|
+
*
|
|
9303
|
+
* Example move actions:
|
|
9304
|
+
*
|
|
9305
|
+
* - Move a function to a new file
|
|
9306
|
+
* - Move a property between classes
|
|
9307
|
+
* - Move method to base class
|
|
9308
|
+
*/
|
|
9309
|
+
static readonly RefactorMove: CodeActionKind;
|
|
9310
|
+
|
|
9182
9311
|
/**
|
|
9183
9312
|
* Base kind for refactoring rewrite actions: `refactor.rewrite`
|
|
9184
9313
|
*
|
|
@@ -9372,7 +9501,15 @@ export module '@theia/plugin' {
|
|
|
9372
9501
|
* @param uri A resource identifier.
|
|
9373
9502
|
* @param edits An array of text edits.
|
|
9374
9503
|
*/
|
|
9375
|
-
set(uri: Uri, edits: TextEdit
|
|
9504
|
+
set(uri: Uri, edits: ReadonlyArray<TextEdit | SnippetTextEdit>): void;
|
|
9505
|
+
|
|
9506
|
+
/**
|
|
9507
|
+
* Set (and replace) text edits or snippet edits with metadata for a resource.
|
|
9508
|
+
*
|
|
9509
|
+
* @param uri A resource identifier.
|
|
9510
|
+
* @param edits An array of edits.
|
|
9511
|
+
*/
|
|
9512
|
+
set(uri: Uri, edits: ReadonlyArray<[TextEdit | SnippetTextEdit, WorkspaceEditEntryMetadata]>): void;
|
|
9376
9513
|
|
|
9377
9514
|
/**
|
|
9378
9515
|
* Get the text edits for a resource.
|
|
@@ -10694,6 +10831,11 @@ export module '@theia/plugin' {
|
|
|
10694
10831
|
* Controls whether the input box is visible (default is true).
|
|
10695
10832
|
*/
|
|
10696
10833
|
visible: boolean;
|
|
10834
|
+
|
|
10835
|
+
/**
|
|
10836
|
+
* Controls whether the input box is enabled (default is `true`).
|
|
10837
|
+
*/
|
|
10838
|
+
enabled: boolean;
|
|
10697
10839
|
}
|
|
10698
10840
|
|
|
10699
10841
|
interface QuickDiffProvider {
|
|
@@ -12415,6 +12557,11 @@ export module '@theia/plugin' {
|
|
|
12415
12557
|
* Label will be rendered next to authorName if exists.
|
|
12416
12558
|
*/
|
|
12417
12559
|
label?: string;
|
|
12560
|
+
|
|
12561
|
+
/**
|
|
12562
|
+
* Optional timestamp.
|
|
12563
|
+
*/
|
|
12564
|
+
timestamp?: Date;
|
|
12418
12565
|
}
|
|
12419
12566
|
|
|
12420
12567
|
/**
|
|
@@ -13114,6 +13261,335 @@ export module '@theia/plugin' {
|
|
|
13114
13261
|
export function registerAuthenticationProvider(id: string, label: string, provider: AuthenticationProvider, options?: AuthenticationProviderOptions): Disposable;
|
|
13115
13262
|
}
|
|
13116
13263
|
|
|
13264
|
+
/**
|
|
13265
|
+
* The tab represents a single text based resource.
|
|
13266
|
+
*/
|
|
13267
|
+
export class TabInputText {
|
|
13268
|
+
/**
|
|
13269
|
+
* The uri represented by the tab.
|
|
13270
|
+
* @stubbed
|
|
13271
|
+
*/
|
|
13272
|
+
readonly uri: Uri;
|
|
13273
|
+
/**
|
|
13274
|
+
* Constructs a text tab input with the given URI.
|
|
13275
|
+
* @param uri The URI of the tab.
|
|
13276
|
+
* @stubbed
|
|
13277
|
+
*/
|
|
13278
|
+
constructor(uri: Uri);
|
|
13279
|
+
}
|
|
13280
|
+
|
|
13281
|
+
/**
|
|
13282
|
+
* The tab represents two text based resources
|
|
13283
|
+
* being rendered as a diff.
|
|
13284
|
+
*/
|
|
13285
|
+
export class TabInputTextDiff {
|
|
13286
|
+
/**
|
|
13287
|
+
* The uri of the original text resource.
|
|
13288
|
+
* @stubbed
|
|
13289
|
+
*/
|
|
13290
|
+
readonly original: Uri;
|
|
13291
|
+
/**
|
|
13292
|
+
* The uri of the modified text resource.
|
|
13293
|
+
* @stubbed
|
|
13294
|
+
*/
|
|
13295
|
+
readonly modified: Uri;
|
|
13296
|
+
/**
|
|
13297
|
+
* Constructs a new text diff tab input with the given URIs.
|
|
13298
|
+
* @param original The uri of the original text resource.
|
|
13299
|
+
* @param modified The uri of the modified text resource.
|
|
13300
|
+
* @stubbed
|
|
13301
|
+
*/
|
|
13302
|
+
constructor(original: Uri, modified: Uri);
|
|
13303
|
+
}
|
|
13304
|
+
|
|
13305
|
+
/**
|
|
13306
|
+
* The tab represents a custom editor.
|
|
13307
|
+
*/
|
|
13308
|
+
export class TabInputCustom {
|
|
13309
|
+
/**
|
|
13310
|
+
* The uri that the tab is representing.
|
|
13311
|
+
* @stubbed
|
|
13312
|
+
*/
|
|
13313
|
+
readonly uri: Uri;
|
|
13314
|
+
/**
|
|
13315
|
+
* The type of custom editor.
|
|
13316
|
+
* @stubbed
|
|
13317
|
+
*/
|
|
13318
|
+
readonly viewType: string;
|
|
13319
|
+
/**
|
|
13320
|
+
* Constructs a custom editor tab input.
|
|
13321
|
+
* @param uri The uri of the tab.
|
|
13322
|
+
* @param viewType The viewtype of the custom editor.
|
|
13323
|
+
* @stubbed
|
|
13324
|
+
*/
|
|
13325
|
+
constructor(uri: Uri, viewType: string);
|
|
13326
|
+
}
|
|
13327
|
+
|
|
13328
|
+
/**
|
|
13329
|
+
* The tab represents a webview.
|
|
13330
|
+
*/
|
|
13331
|
+
export class TabInputWebview {
|
|
13332
|
+
/**
|
|
13333
|
+
* The type of webview. Maps to WebviewPanel's viewType
|
|
13334
|
+
* @stubbed
|
|
13335
|
+
*/
|
|
13336
|
+
readonly viewType: string;
|
|
13337
|
+
/**
|
|
13338
|
+
* Constructs a webview tab input with the given view type.
|
|
13339
|
+
* @param viewType The type of webview. Maps to WebviewPanel's viewType
|
|
13340
|
+
* @stubbed
|
|
13341
|
+
*/
|
|
13342
|
+
constructor(viewType: string);
|
|
13343
|
+
}
|
|
13344
|
+
|
|
13345
|
+
/**
|
|
13346
|
+
* The tab represents a notebook.
|
|
13347
|
+
*/
|
|
13348
|
+
export class TabInputNotebook {
|
|
13349
|
+
/**
|
|
13350
|
+
* The uri that the tab is representing.
|
|
13351
|
+
* @stubbed
|
|
13352
|
+
*/
|
|
13353
|
+
readonly uri: Uri;
|
|
13354
|
+
/**
|
|
13355
|
+
* The type of notebook. Maps to NotebookDocuments's notebookType
|
|
13356
|
+
* @stubbed
|
|
13357
|
+
*/
|
|
13358
|
+
readonly notebookType: string;
|
|
13359
|
+
/**
|
|
13360
|
+
* Constructs a new tab input for a notebook.
|
|
13361
|
+
* @param uri The uri of the notebook.
|
|
13362
|
+
* @param notebookType The type of notebook. Maps to NotebookDocuments's notebookType
|
|
13363
|
+
* @stubbed
|
|
13364
|
+
*/
|
|
13365
|
+
constructor(uri: Uri, notebookType: string);
|
|
13366
|
+
}
|
|
13367
|
+
|
|
13368
|
+
/**
|
|
13369
|
+
* The tabs represents two notebooks in a diff configuration.
|
|
13370
|
+
*/
|
|
13371
|
+
export class TabInputNotebookDiff {
|
|
13372
|
+
/**
|
|
13373
|
+
* The uri of the original notebook.
|
|
13374
|
+
* @stubbed
|
|
13375
|
+
*/
|
|
13376
|
+
readonly original: Uri;
|
|
13377
|
+
/**
|
|
13378
|
+
* The uri of the modified notebook.
|
|
13379
|
+
* @stubbed
|
|
13380
|
+
*/
|
|
13381
|
+
readonly modified: Uri;
|
|
13382
|
+
/**
|
|
13383
|
+
* The type of notebook. Maps to NotebookDocuments's notebookType
|
|
13384
|
+
* @stubbed
|
|
13385
|
+
*/
|
|
13386
|
+
readonly notebookType: string;
|
|
13387
|
+
/**
|
|
13388
|
+
* Constructs a notebook diff tab input.
|
|
13389
|
+
* @param original The uri of the original unmodified notebook.
|
|
13390
|
+
* @param modified The uri of the modified notebook.
|
|
13391
|
+
* @param notebookType The type of notebook. Maps to NotebookDocuments's notebookType
|
|
13392
|
+
* @stubbed
|
|
13393
|
+
*/
|
|
13394
|
+
constructor(original: Uri, modified: Uri, notebookType: string);
|
|
13395
|
+
}
|
|
13396
|
+
|
|
13397
|
+
/**
|
|
13398
|
+
* The tab represents a terminal in the editor area.
|
|
13399
|
+
*/
|
|
13400
|
+
export class TabInputTerminal {
|
|
13401
|
+
/**
|
|
13402
|
+
* Constructs a terminal tab input.
|
|
13403
|
+
* @stubbed
|
|
13404
|
+
*/
|
|
13405
|
+
constructor();
|
|
13406
|
+
}
|
|
13407
|
+
|
|
13408
|
+
/**
|
|
13409
|
+
* Represents a tab within a {@link TabGroup group of tabs}.
|
|
13410
|
+
* Tabs are merely the graphical representation within the editor area.
|
|
13411
|
+
* A backing editor is not a guarantee.
|
|
13412
|
+
*/
|
|
13413
|
+
export interface Tab {
|
|
13414
|
+
|
|
13415
|
+
/**
|
|
13416
|
+
* The text displayed on the tab.
|
|
13417
|
+
* @stubbed
|
|
13418
|
+
*/
|
|
13419
|
+
readonly label: string;
|
|
13420
|
+
|
|
13421
|
+
/**
|
|
13422
|
+
* The group which the tab belongs to.
|
|
13423
|
+
* @stubbed
|
|
13424
|
+
*/
|
|
13425
|
+
readonly group: TabGroup;
|
|
13426
|
+
|
|
13427
|
+
/**
|
|
13428
|
+
* Defines the structure of the tab i.e. text, notebook, custom, etc.
|
|
13429
|
+
* Resource and other useful properties are defined on the tab kind.
|
|
13430
|
+
* @stubbed
|
|
13431
|
+
*/
|
|
13432
|
+
readonly input: TabInputText | TabInputTextDiff | TabInputCustom | TabInputWebview | TabInputNotebook | TabInputNotebookDiff | TabInputTerminal | unknown;
|
|
13433
|
+
|
|
13434
|
+
/**
|
|
13435
|
+
* Whether or not the tab is currently active.
|
|
13436
|
+
* This is dictated by being the selected tab in the group.
|
|
13437
|
+
* @stubbed
|
|
13438
|
+
*/
|
|
13439
|
+
readonly isActive: boolean;
|
|
13440
|
+
|
|
13441
|
+
/**
|
|
13442
|
+
* Whether or not the dirty indicator is present on the tab.
|
|
13443
|
+
* @stubbed
|
|
13444
|
+
*/
|
|
13445
|
+
readonly isDirty: boolean;
|
|
13446
|
+
|
|
13447
|
+
/**
|
|
13448
|
+
* Whether or not the tab is pinned (pin icon is present).
|
|
13449
|
+
* @stubbed
|
|
13450
|
+
*/
|
|
13451
|
+
readonly isPinned: boolean;
|
|
13452
|
+
|
|
13453
|
+
/**
|
|
13454
|
+
* Whether or not the tab is in preview mode.
|
|
13455
|
+
* @stubbed
|
|
13456
|
+
*/
|
|
13457
|
+
readonly isPreview: boolean;
|
|
13458
|
+
}
|
|
13459
|
+
|
|
13460
|
+
/**
|
|
13461
|
+
* An event describing change to tabs.
|
|
13462
|
+
*/
|
|
13463
|
+
export interface TabChangeEvent {
|
|
13464
|
+
/**
|
|
13465
|
+
* The tabs that have been opened.
|
|
13466
|
+
* @stubbed
|
|
13467
|
+
*/
|
|
13468
|
+
readonly opened: readonly Tab[];
|
|
13469
|
+
/**
|
|
13470
|
+
* The tabs that have been closed.
|
|
13471
|
+
* @stubbed
|
|
13472
|
+
*/
|
|
13473
|
+
readonly closed: readonly Tab[];
|
|
13474
|
+
/**
|
|
13475
|
+
* Tabs that have changed, e.g have changed
|
|
13476
|
+
* their {@link Tab.isActive active} state.
|
|
13477
|
+
* @stubbed
|
|
13478
|
+
*/
|
|
13479
|
+
readonly changed: readonly Tab[];
|
|
13480
|
+
}
|
|
13481
|
+
|
|
13482
|
+
/**
|
|
13483
|
+
* An event describing changes to tab groups.
|
|
13484
|
+
*/
|
|
13485
|
+
export interface TabGroupChangeEvent {
|
|
13486
|
+
/**
|
|
13487
|
+
* Tab groups that have been opened.
|
|
13488
|
+
* @stubbed
|
|
13489
|
+
*/
|
|
13490
|
+
readonly opened: readonly TabGroup[];
|
|
13491
|
+
/**
|
|
13492
|
+
* Tab groups that have been closed.
|
|
13493
|
+
* @stubbed
|
|
13494
|
+
*/
|
|
13495
|
+
readonly closed: readonly TabGroup[];
|
|
13496
|
+
/**
|
|
13497
|
+
* Tab groups that have changed, e.g have changed
|
|
13498
|
+
* their {@link TabGroup.isActive active} state.
|
|
13499
|
+
* @stubbed
|
|
13500
|
+
*/
|
|
13501
|
+
readonly changed: readonly TabGroup[];
|
|
13502
|
+
}
|
|
13503
|
+
|
|
13504
|
+
/**
|
|
13505
|
+
* Represents a group of tabs. A tab group itself consists of multiple tabs.
|
|
13506
|
+
*/
|
|
13507
|
+
export interface TabGroup {
|
|
13508
|
+
/**
|
|
13509
|
+
* Whether or not the group is currently active.
|
|
13510
|
+
*
|
|
13511
|
+
* *Note* that only one tab group is active at a time, but that multiple tab
|
|
13512
|
+
* groups can have an {@link TabGroup.aciveTab active tab}.
|
|
13513
|
+
*
|
|
13514
|
+
* @see {@link Tab.isActive}
|
|
13515
|
+
* @stubbed
|
|
13516
|
+
*/
|
|
13517
|
+
readonly isActive: boolean;
|
|
13518
|
+
|
|
13519
|
+
/**
|
|
13520
|
+
* The view column of the group.
|
|
13521
|
+
* @stubbed
|
|
13522
|
+
*/
|
|
13523
|
+
readonly viewColumn: ViewColumn;
|
|
13524
|
+
|
|
13525
|
+
/**
|
|
13526
|
+
* The active {@link Tab tab} in the group. This is the tab whose contents are currently
|
|
13527
|
+
* being rendered.
|
|
13528
|
+
*
|
|
13529
|
+
* *Note* that there can be one active tab per group but there can only be one {@link TabGroups.activeTabGroup active group}.
|
|
13530
|
+
* @stubbed
|
|
13531
|
+
*/
|
|
13532
|
+
readonly activeTab: Tab | undefined;
|
|
13533
|
+
|
|
13534
|
+
/**
|
|
13535
|
+
* The list of tabs contained within the group.
|
|
13536
|
+
* This can be empty if the group has no tabs open.
|
|
13537
|
+
* @stubbed
|
|
13538
|
+
*/
|
|
13539
|
+
readonly tabs: readonly Tab[];
|
|
13540
|
+
}
|
|
13541
|
+
|
|
13542
|
+
/**
|
|
13543
|
+
* Represents the main editor area which consists of multple groups which contain tabs.
|
|
13544
|
+
*/
|
|
13545
|
+
export interface TabGroups {
|
|
13546
|
+
/**
|
|
13547
|
+
* All the groups within the group container.
|
|
13548
|
+
* @stubbed
|
|
13549
|
+
*/
|
|
13550
|
+
readonly all: readonly TabGroup[];
|
|
13551
|
+
|
|
13552
|
+
/**
|
|
13553
|
+
* The currently active group.
|
|
13554
|
+
* @stubbed
|
|
13555
|
+
*/
|
|
13556
|
+
readonly activeTabGroup: TabGroup;
|
|
13557
|
+
|
|
13558
|
+
/**
|
|
13559
|
+
* An {@link Event event} which fires when {@link TabGroup tab groups} have changed.
|
|
13560
|
+
* @stubbed
|
|
13561
|
+
*/
|
|
13562
|
+
readonly onDidChangeTabGroups: Event<TabGroupChangeEvent>;
|
|
13563
|
+
|
|
13564
|
+
/**
|
|
13565
|
+
* An {@link Event event} which fires when {@link Tab tabs} have changed.
|
|
13566
|
+
* @stubbed
|
|
13567
|
+
*/
|
|
13568
|
+
readonly onDidChangeTabs: Event<TabChangeEvent>;
|
|
13569
|
+
|
|
13570
|
+
/**
|
|
13571
|
+
* Closes the tab. This makes the tab object invalid and the tab
|
|
13572
|
+
* should no longer be used for further actions.
|
|
13573
|
+
* Note: In the case of a dirty tab, a confirmation dialog will be shown which may be cancelled. If cancelled the tab is still valid
|
|
13574
|
+
*
|
|
13575
|
+
* @param tab The tab to close.
|
|
13576
|
+
* @param preserveFocus When `true` focus will remain in its current position. If `false` it will jump to the next tab.
|
|
13577
|
+
* @returns A promise that resolves to `true` when all tabs have been closed.
|
|
13578
|
+
* @stubbed
|
|
13579
|
+
*/
|
|
13580
|
+
close(tab: Tab | readonly Tab[], preserveFocus?: boolean): Thenable<boolean>;
|
|
13581
|
+
|
|
13582
|
+
/**
|
|
13583
|
+
* Closes the tab group. This makes the tab group object invalid and the tab group
|
|
13584
|
+
* should no longer be used for further actions.
|
|
13585
|
+
* @param tabGroup The tab group to close.
|
|
13586
|
+
* @param preserveFocus When `true` focus will remain in its current position.
|
|
13587
|
+
* @returns A promise that resolves to `true` when all tab groups have been closed.
|
|
13588
|
+
* @stubbed
|
|
13589
|
+
*/
|
|
13590
|
+
close(tabGroup: TabGroup | readonly TabGroup[], preserveFocus?: boolean): Thenable<boolean>;
|
|
13591
|
+
}
|
|
13592
|
+
|
|
13117
13593
|
/**
|
|
13118
13594
|
* Represents a notebook editor that is attached to a {@link NotebookDocument notebook}.
|
|
13119
13595
|
*/
|
|
@@ -13846,6 +14322,54 @@ export module '@theia/plugin' {
|
|
|
13846
14322
|
readonly selections?: readonly NotebookRange[];
|
|
13847
14323
|
}
|
|
13848
14324
|
|
|
14325
|
+
/**
|
|
14326
|
+
* A snippet edit represents an interactive edit that is performed by
|
|
14327
|
+
* the editor.
|
|
14328
|
+
*
|
|
14329
|
+
* *Note* that a snippet edit can always be performed as a normal {@link TextEdit text edit}.
|
|
14330
|
+
* This will happen when no matching editor is open or when a {@link WorkspaceEdit workspace edit}
|
|
14331
|
+
* contains snippet edits for multiple files. In that case only those that match the active editor
|
|
14332
|
+
* will be performed as snippet edits and the others as normal text edits.
|
|
14333
|
+
*/
|
|
14334
|
+
export class SnippetTextEdit {
|
|
14335
|
+
|
|
14336
|
+
/**
|
|
14337
|
+
* Utility to create a replace snippet edit.
|
|
14338
|
+
*
|
|
14339
|
+
* @param range A range.
|
|
14340
|
+
* @param snippet A snippet string.
|
|
14341
|
+
* @return A new snippet edit object.
|
|
14342
|
+
*/
|
|
14343
|
+
static replace(range: Range, snippet: SnippetString): SnippetTextEdit;
|
|
14344
|
+
|
|
14345
|
+
/**
|
|
14346
|
+
* Utility to create an insert snippet edit.
|
|
14347
|
+
*
|
|
14348
|
+
* @param position A position, will become an empty range.
|
|
14349
|
+
* @param snippet A snippet string.
|
|
14350
|
+
* @return A new snippet edit object.
|
|
14351
|
+
*/
|
|
14352
|
+
static insert(position: Position, snippet: SnippetString): SnippetTextEdit;
|
|
14353
|
+
|
|
14354
|
+
/**
|
|
14355
|
+
* The range this edit applies to.
|
|
14356
|
+
*/
|
|
14357
|
+
range: Range;
|
|
14358
|
+
|
|
14359
|
+
/**
|
|
14360
|
+
* The {@link SnippetString snippet} this edit will perform.
|
|
14361
|
+
*/
|
|
14362
|
+
snippet: SnippetString;
|
|
14363
|
+
|
|
14364
|
+
/**
|
|
14365
|
+
* Create a new snippet edit.
|
|
14366
|
+
*
|
|
14367
|
+
* @param range A range.
|
|
14368
|
+
* @param snippet A snippet string.
|
|
14369
|
+
*/
|
|
14370
|
+
constructor(range: Range, snippet: SnippetString);
|
|
14371
|
+
}
|
|
14372
|
+
|
|
13849
14373
|
/**
|
|
13850
14374
|
* A notebook edit represents edits that should be applied to the contents of a notebook.
|
|
13851
14375
|
*/
|