@pstdio/workbench 0.4.0 → 0.6.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/README.md +66 -72
- package/dist/composition-resolver-types-CWykPyEK.js +241 -0
- package/dist/composition-resolver-types-CWykPyEK.js.map +1 -0
- package/dist/extensions.d.ts +359 -43
- package/dist/extensions.js +1595 -1044
- package/dist/extensions.js.map +1 -1
- package/dist/file-renderer-view-zpunbE4I.js +432 -0
- package/dist/file-renderer-view-zpunbE4I.js.map +1 -0
- package/dist/file-section-navigation-CfYqVObc.js +30 -0
- package/dist/file-section-navigation-CfYqVObc.js.map +1 -0
- package/dist/index.d.ts +287 -19
- package/dist/index.js +2323 -2011
- package/dist/index.js.map +1 -1
- package/dist/layout-types-DMoZz38-.js.map +1 -1
- package/dist/react.d.ts +157 -16
- package/dist/react.js +2675 -2736
- package/dist/react.js.map +1 -1
- package/dist/storage.d.ts +96 -2
- package/dist/storage.js +173 -115
- package/dist/storage.js.map +1 -1
- package/dist/testing.d.ts +146 -14
- package/dist/webview-runtime.js +1 -1
- package/dist/webview-runtime.js.map +1 -1
- package/dist/workbench-built-ins-BtgeB274.js +1171 -0
- package/dist/workbench-built-ins-BtgeB274.js.map +1 -0
- package/dist/workbench-menu-paths-Bb0ICxeG.js +20 -0
- package/dist/workbench-menu-paths-Bb0ICxeG.js.map +1 -0
- package/package.json +3 -3
- package/dist/context-key-service-W4QEfVdN.js +0 -1031
- package/dist/context-key-service-W4QEfVdN.js.map +0 -1
- package/dist/file-renderer-view-DrrhYnb_.js +0 -171
- package/dist/file-renderer-view-DrrhYnb_.js.map +0 -1
- package/dist/workbench-menu-paths-B_QJzcNU.js +0 -12
- package/dist/workbench-menu-paths-B_QJzcNU.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -155,6 +155,7 @@ export declare interface CommandParamDescriptor {
|
|
|
155
155
|
export declare interface CommandParamOption {
|
|
156
156
|
label: string;
|
|
157
157
|
value: string;
|
|
158
|
+
icon?: string;
|
|
158
159
|
}
|
|
159
160
|
|
|
160
161
|
export declare type CommandParamSchema = Record<string, CommandParamDescriptor>;
|
|
@@ -175,6 +176,70 @@ declare interface CommandRegistryStoreState {
|
|
|
175
176
|
commands: Record<string, RegisteredCommand>;
|
|
176
177
|
}
|
|
177
178
|
|
|
179
|
+
export declare interface CompositionDiagnostic {
|
|
180
|
+
code: "extension_resource_kind_missing" | "extension_resource_slot_missing" | "extension_resource_slot_closed" | "extension_panel_missing" | "extension_panel_placement_unresolvable" | "extension_mode_resource_unsupported" | "extension_placement_required_invalid" | "extension_resource_primary_invalid";
|
|
181
|
+
message: string;
|
|
182
|
+
panelId?: string;
|
|
183
|
+
slot?: string;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export declare interface CompositionModeDefinition {
|
|
187
|
+
id: string;
|
|
188
|
+
extensionId?: string;
|
|
189
|
+
resources?: Record<string, CompositionModeRecipe>;
|
|
190
|
+
modePanels?: Record<string, CompositionPlacementPolicy>;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
export declare interface CompositionModeRecipe {
|
|
194
|
+
slots?: Record<string, CompositionPlacementPolicy>;
|
|
195
|
+
panels?: Record<string, CompositionPlacementPolicy>;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
export declare interface CompositionPanelDefinition {
|
|
199
|
+
id: string;
|
|
200
|
+
extensionId: string;
|
|
201
|
+
title: string;
|
|
202
|
+
icon?: string;
|
|
203
|
+
show?: CompositionPanelPlacement | readonly CompositionPanelPlacement[];
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
declare interface CompositionPanelPlacement extends CompositionPlacementPolicy {
|
|
207
|
+
resourceKind?: string;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
export declare interface CompositionPlacementPolicy {
|
|
211
|
+
region: DockedCompositionRegion;
|
|
212
|
+
allowedRegions?: readonly DockedCompositionRegion[];
|
|
213
|
+
required?: boolean;
|
|
214
|
+
defaultOpen?: boolean;
|
|
215
|
+
pinned?: boolean;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
declare interface CompositionResolutionContext {
|
|
219
|
+
modeId: string;
|
|
220
|
+
resourceKind?: string;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
export declare interface CompositionResourceKindDefinition {
|
|
224
|
+
id: string;
|
|
225
|
+
extensionId: string;
|
|
226
|
+
surface: "primary" | "secondary" | "attached";
|
|
227
|
+
slots: Record<string, CompositionSlotDefinition>;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
export declare interface CompositionResourcePanelEdge {
|
|
231
|
+
id: string;
|
|
232
|
+
extensionId: string;
|
|
233
|
+
resourceKind: string;
|
|
234
|
+
panel: string;
|
|
235
|
+
slot: string;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
export declare interface CompositionSlotDefinition {
|
|
239
|
+
cardinality: "one" | "many";
|
|
240
|
+
external: boolean;
|
|
241
|
+
}
|
|
242
|
+
|
|
178
243
|
export declare interface ContextKeyScope extends Disposable_2 {
|
|
179
244
|
ownerId: string;
|
|
180
245
|
set(key: string, value: ContextKeyValue): void;
|
|
@@ -297,6 +362,7 @@ export declare interface CreateWorkbenchCoreInput {
|
|
|
297
362
|
panelsPersistence?: WorkbenchPanelsPersistenceAdapter;
|
|
298
363
|
defaultPanelOpenByRegionId?: Partial<Record<WorkbenchRegion, boolean>>;
|
|
299
364
|
lastResourcePersistence?: LastResourcePersistenceAdapter;
|
|
365
|
+
sidePanelPersistence?: WorkbenchSidePanelPersistenceAdapter;
|
|
300
366
|
initialSidePanelMode?: WorkbenchSidePanelMode;
|
|
301
367
|
renderers?: CreateWorkbenchRendererRegistryInput;
|
|
302
368
|
}
|
|
@@ -371,7 +437,7 @@ export declare interface DataTableRendererContribution {
|
|
|
371
437
|
emptyDescription?: string;
|
|
372
438
|
executeQuery(context: DataTableRendererQueryContext): Promise<DataTableRendererQueryResult> | DataTableRendererQueryResult;
|
|
373
439
|
subscribe?: (listener: () => void) => Disposable_2 | (() => void);
|
|
374
|
-
|
|
440
|
+
onRowActivate?: (row: DataTableRendererRow) => Promise<void> | void;
|
|
375
441
|
}
|
|
376
442
|
|
|
377
443
|
export declare type DataTableRendererImplementation = (input: WorkbenchPanelRenderInput & {
|
|
@@ -442,6 +508,10 @@ declare interface Disposable_2 {
|
|
|
442
508
|
}
|
|
443
509
|
export { Disposable_2 as Disposable }
|
|
444
510
|
|
|
511
|
+
export declare type DockedCompositionRegion = (typeof dockedCompositionRegions)[number];
|
|
512
|
+
|
|
513
|
+
export declare const dockedCompositionRegions: readonly ["sidenav", "main", "secondary", "side"];
|
|
514
|
+
|
|
445
515
|
export declare interface EnumOption {
|
|
446
516
|
value: string;
|
|
447
517
|
label: string;
|
|
@@ -501,6 +571,8 @@ export declare interface FileRendererContent {
|
|
|
501
571
|
content?: string;
|
|
502
572
|
dataUrl?: string;
|
|
503
573
|
placeholder?: string;
|
|
574
|
+
/** Ordered backing-store revision when one is available. */
|
|
575
|
+
revision?: string;
|
|
504
576
|
}
|
|
505
577
|
|
|
506
578
|
export declare interface FileRendererContribution {
|
|
@@ -510,35 +582,53 @@ export declare interface FileRendererContribution {
|
|
|
510
582
|
/** Resolve the file's content (and identity) for the bound resource. */
|
|
511
583
|
load(resource: ResourceRef | undefined): Promise<FileRendererContent> | FileRendererContent;
|
|
512
584
|
/** Persist edited text. Absent ⇒ read-only. Never called for images. */
|
|
513
|
-
save?(resource: ResourceRef | undefined, content: string): Promise<
|
|
585
|
+
save?(resource: ResourceRef | undefined, content: string, origin?: FileRendererRefreshOrigin): Promise<FileRendererSaveResult | undefined> | FileRendererSaveResult | void;
|
|
514
586
|
}
|
|
515
587
|
|
|
516
588
|
export declare type FileRendererImplementation = (input: WorkbenchPanelRenderInput & {
|
|
517
589
|
fileRendererId: string;
|
|
518
590
|
}) => unknown;
|
|
519
591
|
|
|
520
|
-
declare interface
|
|
592
|
+
export declare interface FileRendererRefreshEnvelope {
|
|
593
|
+
resourceUri?: string;
|
|
594
|
+
origin?: FileRendererRefreshOrigin;
|
|
595
|
+
revision?: string;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
export declare interface FileRendererRefreshEvent extends FileRendererRefreshEnvelope {
|
|
521
599
|
fileRendererId: string;
|
|
522
600
|
}
|
|
523
601
|
|
|
524
602
|
declare type FileRendererRefreshListener = (event: FileRendererRefreshEvent) => void;
|
|
525
603
|
|
|
604
|
+
export declare interface FileRendererRefreshOrigin {
|
|
605
|
+
rendererId: string;
|
|
606
|
+
instanceId: string;
|
|
607
|
+
operationId: string;
|
|
608
|
+
}
|
|
609
|
+
|
|
526
610
|
export declare interface FileRendererRegistry {
|
|
527
611
|
fileRendererStore: WorkbenchStore<FileRendererStoreState>;
|
|
528
612
|
registerFileRenderer(contribution: FileRendererContribution, metadata?: ContributionMetadata): Disposable_2;
|
|
529
613
|
setFileRendererImplementation(impl: FileRendererImplementation): void;
|
|
530
614
|
getFileRenderer(id: string): RegisteredFileRendererContribution | undefined;
|
|
531
615
|
listFileRenderers(): RegisteredFileRendererContribution[];
|
|
532
|
-
refreshFileRenderer(id: string): void;
|
|
616
|
+
refreshFileRenderer(id: string, event?: FileRendererRefreshEnvelope): void;
|
|
533
617
|
onDidRefreshFileRenderer(listener: FileRendererRefreshListener): Disposable_2;
|
|
534
618
|
}
|
|
535
619
|
|
|
620
|
+
export declare interface FileRendererSaveResult {
|
|
621
|
+
revision?: string;
|
|
622
|
+
}
|
|
623
|
+
|
|
536
624
|
declare interface FileRendererStoreState {
|
|
537
625
|
renderers: Record<string, RegisteredFileRendererContribution>;
|
|
538
626
|
}
|
|
539
627
|
|
|
540
628
|
export declare const getKeybindingSteps: (keybinding: KeybindingSequence) => string[];
|
|
541
629
|
|
|
630
|
+
export declare const getSwitchModeNavigationTargetModeId: (target: NavigationTarget) => string | undefined;
|
|
631
|
+
|
|
542
632
|
export declare const getWorkbenchModePanelForRegion: (region: WorkbenchRegion) => "main" | "secondary" | "side" | undefined;
|
|
543
633
|
|
|
544
634
|
export declare const getWorkbenchSelectionResourceUris: (resource: ResourceRef | undefined) => string[];
|
|
@@ -549,6 +639,8 @@ export declare const headerTrailingMenuPath: (region: string) => MenuPath;
|
|
|
549
639
|
|
|
550
640
|
export declare interface HistoryController {
|
|
551
641
|
store: WorkbenchStore<HistoryStoreState>;
|
|
642
|
+
/** Snapshot the history for a compound navigation; the returned function restores it. */
|
|
643
|
+
createCheckpoint(): () => void;
|
|
552
644
|
goBack(): HistoryEntry | undefined;
|
|
553
645
|
goForward(): HistoryEntry | undefined;
|
|
554
646
|
goPrevious(): HistoryEntry | undefined;
|
|
@@ -576,6 +668,8 @@ export declare interface KanbanRendererContribution<TRow extends KanbanRendererR
|
|
|
576
668
|
id: string;
|
|
577
669
|
title: string;
|
|
578
670
|
resourceKind?: string;
|
|
671
|
+
/** Host-owned scope for persisted display settings. */
|
|
672
|
+
storageScope?: string;
|
|
579
673
|
/**
|
|
580
674
|
* Declarative attribute schema. The renderer dispatches filter / group /
|
|
581
675
|
* sort / display / inline-edit behavior on each descriptor's `type.kind`.
|
|
@@ -603,8 +697,8 @@ export declare interface KanbanRendererContribution<TRow extends KanbanRendererR
|
|
|
603
697
|
*/
|
|
604
698
|
executeQuery(state: KanbanRendererQueryState): Promise<TRow[]> | TRow[];
|
|
605
699
|
subscribe?: (listener: () => void) => Disposable_2 | (() => void);
|
|
606
|
-
/** Row
|
|
607
|
-
|
|
700
|
+
/** Row activation surfaced by the renderer (mirrored from <KanbanRenderer>). */
|
|
701
|
+
onRowActivate?: (row: TRow) => Promise<void> | void;
|
|
608
702
|
/** Per-row right-click context menu actions (mirrored from <KanbanRenderer>). */
|
|
609
703
|
getRowContextMenuActions?: (row: TRow) => ResourceContextAction[];
|
|
610
704
|
/**
|
|
@@ -698,7 +792,7 @@ export declare interface KanbanRendererRow {
|
|
|
698
792
|
title: string;
|
|
699
793
|
/**
|
|
700
794
|
* Optional navigation handle. When set, the renderer's default click handler
|
|
701
|
-
* routes through the contribution's
|
|
795
|
+
* routes through the contribution's onRowActivate (which typically opens the
|
|
702
796
|
* resource via the workbench).
|
|
703
797
|
*/
|
|
704
798
|
resource?: unknown;
|
|
@@ -808,6 +902,16 @@ declare interface LayoutModel {
|
|
|
808
902
|
carryRegionState?: readonly WorkbenchRegion[];
|
|
809
903
|
}): void;
|
|
810
904
|
getPersistenceScope(): LayoutScope | undefined;
|
|
905
|
+
/** True when the current persistence scope already stores a layout. A new scope returns false. */
|
|
906
|
+
/** Whether anything is stored for the active scope right now. */
|
|
907
|
+
hasPersistedLayout(): boolean;
|
|
908
|
+
/**
|
|
909
|
+
* Whether the active scope was entered with a layout the user already had. Unlike
|
|
910
|
+
* `hasPersistedLayout`, writes made while entering a mode do not change the answer.
|
|
911
|
+
*/
|
|
912
|
+
enteredWithPersistedLayout(): boolean;
|
|
913
|
+
/** Moves owned panel menus beside their owner's current region and removes orphan menus. */
|
|
914
|
+
reconcilePanelMenus(): void;
|
|
811
915
|
onWillChangePersistenceScope(listener: (scope: LayoutScope | undefined) => void): {
|
|
812
916
|
dispose(): void;
|
|
813
917
|
};
|
|
@@ -816,9 +920,14 @@ declare interface LayoutModel {
|
|
|
816
920
|
};
|
|
817
921
|
}
|
|
818
922
|
|
|
819
|
-
declare interface LayoutPersistenceAdapter {
|
|
923
|
+
export declare interface LayoutPersistenceAdapter {
|
|
820
924
|
getLayout(scope?: LayoutScope): WorkbenchLayout | undefined;
|
|
821
925
|
setLayout(layout: WorkbenchLayout, scope?: LayoutScope): void;
|
|
926
|
+
listScopes?(projectId: string): LayoutScope[];
|
|
927
|
+
transformLayouts?(projectId: string, transform: (layout: WorkbenchLayout, scope: LayoutScope) => WorkbenchLayout | undefined): void;
|
|
928
|
+
getCompatibilityMarker?(key: string): string | undefined;
|
|
929
|
+
setCompatibilityMarker?(key: string, value: string): void;
|
|
930
|
+
advanceWriteGeneration?(): number;
|
|
822
931
|
flush?(): void;
|
|
823
932
|
dispose?(): void;
|
|
824
933
|
}
|
|
@@ -939,6 +1048,7 @@ declare interface OpenWidgetInput {
|
|
|
939
1048
|
resource?: ResourceRef;
|
|
940
1049
|
title?: string;
|
|
941
1050
|
region?: WorkbenchRegion;
|
|
1051
|
+
role?: WorkbenchWidgetRole;
|
|
942
1052
|
ownerId?: string;
|
|
943
1053
|
source?: ContributionSource;
|
|
944
1054
|
pinned?: boolean;
|
|
@@ -956,13 +1066,24 @@ export declare interface OpenWorkbenchPanelInput {
|
|
|
956
1066
|
resource?: ResourceRef;
|
|
957
1067
|
title?: string;
|
|
958
1068
|
region?: WorkbenchRegion;
|
|
1069
|
+
role?: WorkbenchWidgetRole;
|
|
959
1070
|
pinned?: boolean;
|
|
1071
|
+
closable?: boolean;
|
|
960
1072
|
mountStrategy?: WorkbenchPanelMountStrategy;
|
|
961
1073
|
hiddenByDefault?: boolean;
|
|
962
1074
|
tab?: WorkbenchPanelTab;
|
|
963
1075
|
strategy?: WorkbenchPanelOpenStrategy;
|
|
964
1076
|
}
|
|
965
1077
|
|
|
1078
|
+
export declare interface PersistedCompositionLayout {
|
|
1079
|
+
regions: Partial<Record<DockedCompositionRegion, PersistedCompositionRegionState>>;
|
|
1080
|
+
}
|
|
1081
|
+
|
|
1082
|
+
declare interface PersistedCompositionRegionState {
|
|
1083
|
+
order: readonly string[];
|
|
1084
|
+
activePanelId?: string;
|
|
1085
|
+
}
|
|
1086
|
+
|
|
966
1087
|
export declare interface PersistedTreeRendererStates {
|
|
967
1088
|
statesByTreeId: Record<string, TreeRendererState>;
|
|
968
1089
|
}
|
|
@@ -1085,7 +1206,6 @@ declare type RegisteredWidgetContribution = Omit<WidgetContribution, "priority"
|
|
|
1085
1206
|
ownedPanelMenuIds?: readonly string[];
|
|
1086
1207
|
singleton: boolean;
|
|
1087
1208
|
reuse: WidgetReusePolicy;
|
|
1088
|
-
role: WorkbenchWidgetRole;
|
|
1089
1209
|
} & RegisteredContributionMetadata;
|
|
1090
1210
|
|
|
1091
1211
|
declare interface RegisteredWorkbenchNotification extends RegisteredContributionMetadata {
|
|
@@ -1101,6 +1221,44 @@ declare interface RegisteredWorkbenchNotification extends RegisteredContribution
|
|
|
1101
1221
|
|
|
1102
1222
|
export declare const resolveAnchorRegion: (anchorId: AnchorId) => "status" | "nav" | "activity" | "sidenav-header" | "sidenav" | "main-header" | "main-left-menu" | "main" | "main-right-menu" | "secondary-header" | "secondary-left-menu" | "secondary" | "secondary-right-menu" | "side-header" | "side-left-menu" | "side" | "side-right-menu" | "overlay";
|
|
1103
1223
|
|
|
1224
|
+
export declare const resolveComposition: (input: ResolveCompositionInput) => ResolvedComposition;
|
|
1225
|
+
|
|
1226
|
+
declare interface ResolveCompositionInput {
|
|
1227
|
+
context: CompositionResolutionContext;
|
|
1228
|
+
mode: CompositionModeDefinition;
|
|
1229
|
+
composition: WorkbenchComposition;
|
|
1230
|
+
persisted?: PersistedCompositionLayout;
|
|
1231
|
+
}
|
|
1232
|
+
|
|
1233
|
+
export declare interface ResolvedComposition {
|
|
1234
|
+
placements: readonly ResolvedCompositionPlacement[];
|
|
1235
|
+
regionOrder: Partial<Record<DockedCompositionRegion, readonly string[]>>;
|
|
1236
|
+
activePanelIds: Partial<Record<DockedCompositionRegion, string>>;
|
|
1237
|
+
addablePanels: readonly ResolvedCompositionAddablePanel[];
|
|
1238
|
+
diagnostics: readonly CompositionDiagnostic[];
|
|
1239
|
+
requiredFallback?: {
|
|
1240
|
+
panelId: string;
|
|
1241
|
+
};
|
|
1242
|
+
}
|
|
1243
|
+
|
|
1244
|
+
export declare interface ResolvedCompositionAddablePanel {
|
|
1245
|
+
panelId: string;
|
|
1246
|
+
region: DockedCompositionRegion;
|
|
1247
|
+
allowedRegions: readonly DockedCompositionRegion[];
|
|
1248
|
+
pinned?: boolean;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
export declare interface ResolvedCompositionPlacement {
|
|
1252
|
+
panelId: string;
|
|
1253
|
+
region: DockedCompositionRegion;
|
|
1254
|
+
slot?: string;
|
|
1255
|
+
required: boolean;
|
|
1256
|
+
defaultOpen: boolean;
|
|
1257
|
+
pinned?: boolean;
|
|
1258
|
+
allowedRegions: readonly DockedCompositionRegion[];
|
|
1259
|
+
origin: "persisted" | "required" | "default";
|
|
1260
|
+
}
|
|
1261
|
+
|
|
1104
1262
|
declare type ResolvedResourceHierarchyProvider = Required<ResourceHierarchyProvider>;
|
|
1105
1263
|
|
|
1106
1264
|
declare type ResolvedResourcePresenter = Required<ResourcePresenter>;
|
|
@@ -1127,6 +1285,14 @@ export declare interface ResourceContextAction {
|
|
|
1127
1285
|
|
|
1128
1286
|
export declare const resourceContextMenuPath: (resourceKind: string) => MenuPath;
|
|
1129
1287
|
|
|
1288
|
+
export declare interface ResourceHierarchyCycle {
|
|
1289
|
+
code: typeof resourceHierarchyCycleCode;
|
|
1290
|
+
path: ResourceRef[];
|
|
1291
|
+
repeatedUri: string;
|
|
1292
|
+
}
|
|
1293
|
+
|
|
1294
|
+
export declare const resourceHierarchyCycleCode = "resource_hierarchy_cycle";
|
|
1295
|
+
|
|
1130
1296
|
export declare interface ResourceHierarchyProvider {
|
|
1131
1297
|
id: string;
|
|
1132
1298
|
priority?: number;
|
|
@@ -1190,6 +1356,7 @@ export declare interface ResourceRegistry {
|
|
|
1190
1356
|
registerHierarchyProvider(provider: ResourceHierarchyProvider): Disposable_2;
|
|
1191
1357
|
listHierarchyProviders(): ResolvedResourceHierarchyProvider[];
|
|
1192
1358
|
walkHierarchy(resource: ResourceRef | undefined): ResourceRef[];
|
|
1359
|
+
onDidDetectHierarchyCycle(listener: (cycle: ResourceHierarchyCycle) => void): Disposable_2;
|
|
1193
1360
|
isOpeningResource(): boolean;
|
|
1194
1361
|
openResource(resource: ResourceRef, input?: OpenResourceInput): Promise<WorkbenchPanelInstance>;
|
|
1195
1362
|
onDidOpenResource(listener: (resource: ResourceRef) => void): Disposable_2;
|
|
@@ -1467,6 +1634,7 @@ declare interface WidgetContribution {
|
|
|
1467
1634
|
mountStrategy?: WidgetMountStrategy;
|
|
1468
1635
|
closable?: boolean;
|
|
1469
1636
|
hiddenByDefault?: boolean;
|
|
1637
|
+
subPanelsOnly?: boolean;
|
|
1470
1638
|
regionSize?: WorkbenchRegionSize;
|
|
1471
1639
|
regionCollapsible?: boolean;
|
|
1472
1640
|
headerBorderBottom?: boolean;
|
|
@@ -1475,7 +1643,6 @@ declare interface WidgetContribution {
|
|
|
1475
1643
|
priority?: number;
|
|
1476
1644
|
rendererId: string;
|
|
1477
1645
|
openCommandId?: string;
|
|
1478
|
-
role?: WorkbenchWidgetRole;
|
|
1479
1646
|
eligibleLocations?: WorkbenchLocationEligibility;
|
|
1480
1647
|
panelMenuOwner?: WorkbenchPanelMenuOwner;
|
|
1481
1648
|
tab?: WorkbenchWidgetTab;
|
|
@@ -1575,6 +1742,26 @@ declare interface WorkbenchCommandParamsRequest {
|
|
|
1575
1742
|
context?: WorkbenchCommandExecutionContext;
|
|
1576
1743
|
}
|
|
1577
1744
|
|
|
1745
|
+
export declare interface WorkbenchComposition {
|
|
1746
|
+
resourceKinds: readonly CompositionResourceKindDefinition[];
|
|
1747
|
+
panels: readonly CompositionPanelDefinition[];
|
|
1748
|
+
resourcePanels: readonly CompositionResourcePanelEdge[];
|
|
1749
|
+
}
|
|
1750
|
+
|
|
1751
|
+
declare interface WorkbenchCompositionAddablePanel extends WorkbenchModeAddablePanel {
|
|
1752
|
+
contribution: RegisteredWidgetContribution;
|
|
1753
|
+
}
|
|
1754
|
+
|
|
1755
|
+
declare interface WorkbenchCompositionController {
|
|
1756
|
+
panelsFor(region: WorkbenchPanelRegion): WorkbenchCompositionRegionPanels;
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
declare interface WorkbenchCompositionRegionPanels {
|
|
1760
|
+
open: readonly WorkbenchWidgetPlacement[];
|
|
1761
|
+
addable: readonly WorkbenchCompositionAddablePanel[];
|
|
1762
|
+
closable: readonly string[];
|
|
1763
|
+
}
|
|
1764
|
+
|
|
1578
1765
|
export declare interface WorkbenchCore extends WorkbenchCoreContributionContext {
|
|
1579
1766
|
host: WorkbenchHost;
|
|
1580
1767
|
registerModule(module: WorkbenchModuleContribution): Disposable_2;
|
|
@@ -1586,6 +1773,7 @@ declare interface WorkbenchCoreContributionContext {
|
|
|
1586
1773
|
commandPalette: WorkbenchCommandPaletteController;
|
|
1587
1774
|
commandPaletteResources: CommandPaletteResourceRegistry;
|
|
1588
1775
|
commands: CommandRegistry;
|
|
1776
|
+
composition: WorkbenchCompositionController;
|
|
1589
1777
|
context: ContextKeyService;
|
|
1590
1778
|
focus: WorkbenchFocusController;
|
|
1591
1779
|
history: HistoryController;
|
|
@@ -1594,6 +1782,7 @@ declare interface WorkbenchCoreContributionContext {
|
|
|
1594
1782
|
layout: WorkbenchLayoutModel;
|
|
1595
1783
|
modes: WorkbenchModeRegistry;
|
|
1596
1784
|
navigation: NavigationRegistry;
|
|
1785
|
+
navigator: WorkbenchNavigator;
|
|
1597
1786
|
notifications: NotificationRegistry;
|
|
1598
1787
|
panels: WorkbenchPanelsController;
|
|
1599
1788
|
preferences: PreferenceRegistry;
|
|
@@ -1671,7 +1860,7 @@ declare interface WorkbenchLayoutStoreState {
|
|
|
1671
1860
|
placeholders: Partial<Record<WorkbenchRegion, RegisteredPlaceholderContribution>>;
|
|
1672
1861
|
}
|
|
1673
1862
|
|
|
1674
|
-
declare type WorkbenchLocationContribution =
|
|
1863
|
+
declare type WorkbenchLocationContribution = WidgetContribution & WorkbenchPanelMenusContribution;
|
|
1675
1864
|
|
|
1676
1865
|
export declare interface WorkbenchLocationEligibility {
|
|
1677
1866
|
modeIds?: string[];
|
|
@@ -1693,15 +1882,31 @@ export declare type WorkbenchModeActivationContext = WorkbenchCoreContributionCo
|
|
|
1693
1882
|
|
|
1694
1883
|
export declare type WorkbenchModeActivationResult = Disposable_2 | readonly Disposable_2[] | undefined;
|
|
1695
1884
|
|
|
1885
|
+
export declare interface WorkbenchModeAddablePanel {
|
|
1886
|
+
panelId: string;
|
|
1887
|
+
region: WorkbenchPanelRegion;
|
|
1888
|
+
allowedRegions?: readonly WorkbenchRegion[];
|
|
1889
|
+
pinned?: boolean;
|
|
1890
|
+
}
|
|
1891
|
+
|
|
1892
|
+
export declare interface WorkbenchModeAddablePanelContext {
|
|
1893
|
+
layout: WorkbenchLayout;
|
|
1894
|
+
resource?: ResourceRef;
|
|
1895
|
+
}
|
|
1896
|
+
|
|
1696
1897
|
declare type WorkbenchModeChangeListener = () => void;
|
|
1697
1898
|
|
|
1698
1899
|
export declare interface WorkbenchModeContribution {
|
|
1699
1900
|
id: string;
|
|
1700
1901
|
label?: string;
|
|
1701
1902
|
panels?: readonly WorkbenchPanelRegion[];
|
|
1903
|
+
resourceKinds?: readonly string[];
|
|
1904
|
+
defaultResource?: ResourceRef | (() => Promise<ResourceRef | undefined> | ResourceRef | undefined);
|
|
1905
|
+
listAddablePanels?(context: WorkbenchModeAddablePanelContext): readonly WorkbenchModeAddablePanel[];
|
|
1702
1906
|
activate(ctx: WorkbenchModeActivationContext): WorkbenchModeActivationResult;
|
|
1703
1907
|
seed?(ctx: WorkbenchModeActivationContext): void;
|
|
1704
1908
|
enter?(ctx: WorkbenchModeActivationContext): WorkbenchModeActivationResult;
|
|
1909
|
+
reconcile?(ctx: WorkbenchModeActivationContext): void;
|
|
1705
1910
|
}
|
|
1706
1911
|
|
|
1707
1912
|
export declare interface WorkbenchModeRegistry {
|
|
@@ -1737,6 +1942,14 @@ export declare interface WorkbenchModuleContribution {
|
|
|
1737
1942
|
|
|
1738
1943
|
export declare type WorkbenchModuleContributionContext = WorkbenchModuleContext;
|
|
1739
1944
|
|
|
1945
|
+
declare interface WorkbenchNavigationCommit {
|
|
1946
|
+
modeId: string | undefined;
|
|
1947
|
+
resource: ResourceRef | undefined;
|
|
1948
|
+
replaceActive: boolean;
|
|
1949
|
+
}
|
|
1950
|
+
|
|
1951
|
+
declare type WorkbenchNavigationDiagnosticCode = "navigation_mode_missing" | "navigation_resource_missing" | "navigation_resource_incompatible" | "navigation_default_missing" | "navigation_target_stale";
|
|
1952
|
+
|
|
1740
1953
|
declare interface WorkbenchNavigationEntry {
|
|
1741
1954
|
entryId: string;
|
|
1742
1955
|
recordedAt: number;
|
|
@@ -1751,6 +1964,53 @@ declare interface WorkbenchNavigationEntry {
|
|
|
1751
1964
|
closedSubPanel?: WorkbenchClosedSubPanel;
|
|
1752
1965
|
}
|
|
1753
1966
|
|
|
1967
|
+
declare type WorkbenchNavigationResult = {
|
|
1968
|
+
ok: true;
|
|
1969
|
+
modeId: string | undefined;
|
|
1970
|
+
resource: ResourceRef | undefined;
|
|
1971
|
+
} | {
|
|
1972
|
+
ok: false;
|
|
1973
|
+
code: WorkbenchNavigationDiagnosticCode;
|
|
1974
|
+
message: string;
|
|
1975
|
+
};
|
|
1976
|
+
|
|
1977
|
+
declare interface WorkbenchNavigationTarget {
|
|
1978
|
+
modeId?: string;
|
|
1979
|
+
resource?: ResourceRef;
|
|
1980
|
+
replaceActive?: boolean;
|
|
1981
|
+
}
|
|
1982
|
+
|
|
1983
|
+
declare interface WorkbenchNavigator {
|
|
1984
|
+
configure(hooks: WorkbenchNavigatorHostHooks): void;
|
|
1985
|
+
getSelectedResource(): ResourceRef | undefined;
|
|
1986
|
+
open(target: WorkbenchNavigationTarget): Promise<WorkbenchNavigationResult>;
|
|
1987
|
+
commitContext(input: WorkbenchNavigatorCommitInput): WorkbenchNavigationResult;
|
|
1988
|
+
getLastResource(projectId: string | undefined, modeId: string): ResourceRef | undefined;
|
|
1989
|
+
forgetResource(uri: string): void;
|
|
1990
|
+
onDidCommit(listener: (commit: WorkbenchNavigationCommit) => void): {
|
|
1991
|
+
dispose(): void;
|
|
1992
|
+
};
|
|
1993
|
+
}
|
|
1994
|
+
|
|
1995
|
+
declare interface WorkbenchNavigatorCommitInput {
|
|
1996
|
+
modeId?: string | null;
|
|
1997
|
+
resource?: ResourceRef | null;
|
|
1998
|
+
replaceActive?: boolean;
|
|
1999
|
+
present?: boolean;
|
|
2000
|
+
}
|
|
2001
|
+
|
|
2002
|
+
declare interface WorkbenchNavigatorHostHooks {
|
|
2003
|
+
getProjectId?(): string | undefined;
|
|
2004
|
+
getSelectedResource?(): ResourceRef | undefined;
|
|
2005
|
+
interpretSelection?(resource: ResourceRef): ResourceRef | undefined;
|
|
2006
|
+
applySelection?(resource: ResourceRef | undefined): void;
|
|
2007
|
+
applyScope?(commit: WorkbenchNavigationCommit): void;
|
|
2008
|
+
applyBreadcrumb?(resource: ResourceRef | undefined): void;
|
|
2009
|
+
presentResource?(resource: ResourceRef, input: {
|
|
2010
|
+
replaceActive: boolean;
|
|
2011
|
+
}): Promise<unknown> | unknown;
|
|
2012
|
+
}
|
|
2013
|
+
|
|
1754
2014
|
export declare interface WorkbenchNotification {
|
|
1755
2015
|
id?: string;
|
|
1756
2016
|
level: WorkbenchNotificationLevel;
|
|
@@ -1792,11 +2052,11 @@ export declare interface WorkbenchPanelContribution {
|
|
|
1792
2052
|
region: WorkbenchRegion;
|
|
1793
2053
|
fallbackRegion?: WorkbenchRegion;
|
|
1794
2054
|
rendererId: string;
|
|
1795
|
-
closable: boolean;
|
|
1796
2055
|
singleton?: boolean;
|
|
1797
2056
|
reuse?: WorkbenchPanelReusePolicy;
|
|
1798
2057
|
mountStrategy?: WorkbenchPanelMountStrategy;
|
|
1799
2058
|
hiddenByDefault?: boolean;
|
|
2059
|
+
subPanelsOnly?: boolean;
|
|
1800
2060
|
regionSize?: WorkbenchRegionSize;
|
|
1801
2061
|
regionCollapsible?: boolean;
|
|
1802
2062
|
headerBorderBottom?: boolean;
|
|
@@ -1830,7 +2090,7 @@ export declare interface WorkbenchPanelInstance {
|
|
|
1830
2090
|
tab?: WorkbenchPanelTab;
|
|
1831
2091
|
}
|
|
1832
2092
|
|
|
1833
|
-
declare type WorkbenchPanelMenuContribution = Omit<WidgetContribution, "region" | "fallbackRegion"
|
|
2093
|
+
declare type WorkbenchPanelMenuContribution = Omit<WidgetContribution, "region" | "fallbackRegion"> & {
|
|
1834
2094
|
region: WorkbenchPanelMenuRegion;
|
|
1835
2095
|
fallbackRegion?: WorkbenchPanelMenuRegion;
|
|
1836
2096
|
};
|
|
@@ -1886,21 +2146,22 @@ export declare type WorkbenchPanelMenuSide = "left" | "right";
|
|
|
1886
2146
|
export declare type WorkbenchPanelMountStrategy = WidgetMountStrategy;
|
|
1887
2147
|
|
|
1888
2148
|
export declare type WorkbenchPanelOpenStrategy = {
|
|
1889
|
-
kind: "
|
|
2149
|
+
kind: "persistent";
|
|
1890
2150
|
position?: WorkbenchTabPosition;
|
|
1891
2151
|
} | {
|
|
1892
2152
|
kind: "replace-active";
|
|
1893
2153
|
} | {
|
|
1894
2154
|
kind: "replace-panel";
|
|
1895
2155
|
instanceId: string;
|
|
2156
|
+
retention?: WorkbenchTabRetention;
|
|
1896
2157
|
} | {
|
|
1897
2158
|
kind: "preview";
|
|
1898
2159
|
position?: WorkbenchTabPosition;
|
|
1899
2160
|
};
|
|
1900
2161
|
|
|
1901
|
-
declare type WorkbenchPanelRegion = (typeof workbenchPanelRegions)[number];
|
|
2162
|
+
export declare type WorkbenchPanelRegion = (typeof workbenchPanelRegions)[number];
|
|
1902
2163
|
|
|
1903
|
-
declare const workbenchPanelRegions: readonly ["main", "secondary", "side"];
|
|
2164
|
+
export declare const workbenchPanelRegions: readonly ["main", "secondary", "side"];
|
|
1904
2165
|
|
|
1905
2166
|
export declare interface WorkbenchPanelRenderInput {
|
|
1906
2167
|
workbench: WorkbenchCore;
|
|
@@ -2027,7 +2288,12 @@ declare interface WorkbenchSidePanelController {
|
|
|
2027
2288
|
onDidChange(listener: WorkbenchSidePanelChangeListener): Disposable_2;
|
|
2028
2289
|
}
|
|
2029
2290
|
|
|
2030
|
-
declare type WorkbenchSidePanelMode = "floating" | "closed" | "attached";
|
|
2291
|
+
export declare type WorkbenchSidePanelMode = "floating" | "closed" | "attached";
|
|
2292
|
+
|
|
2293
|
+
export declare interface WorkbenchSidePanelPersistenceAdapter {
|
|
2294
|
+
getMode(): WorkbenchSidePanelMode | undefined;
|
|
2295
|
+
setMode(mode: WorkbenchSidePanelMode): void;
|
|
2296
|
+
}
|
|
2031
2297
|
|
|
2032
2298
|
export declare type WorkbenchSidePanelPresentation = WorkbenchSidePanelMode;
|
|
2033
2299
|
|
|
@@ -2055,7 +2321,7 @@ declare type WorkbenchStoreSelector<TState, TValue> = (state: TState) => TValue;
|
|
|
2055
2321
|
|
|
2056
2322
|
declare type WorkbenchStoreSelectorListener<TValue> = (value: TValue, previousValue: TValue) => void;
|
|
2057
2323
|
|
|
2058
|
-
declare type WorkbenchSubPanelContribution = Omit<WidgetContribution, "region" | "fallbackRegion"
|
|
2324
|
+
declare type WorkbenchSubPanelContribution = Omit<WidgetContribution, "region" | "fallbackRegion"> & {
|
|
2059
2325
|
region: WorkbenchPanelRegion;
|
|
2060
2326
|
fallbackRegion?: WorkbenchPanelRegion;
|
|
2061
2327
|
} & WorkbenchPanelMenusContribution;
|
|
@@ -2066,6 +2332,8 @@ declare interface WorkbenchSubPanelRef {
|
|
|
2066
2332
|
instanceKey?: string;
|
|
2067
2333
|
}
|
|
2068
2334
|
|
|
2335
|
+
export declare const workbenchSwitchModeCommandId = "workbench.action.switchMode";
|
|
2336
|
+
|
|
2069
2337
|
export declare type WorkbenchTabPosition = "start" | "end" | {
|
|
2070
2338
|
beforeWidgetId: string;
|
|
2071
2339
|
} | {
|
|
@@ -2164,7 +2432,7 @@ export declare const workbenchTopHeaderLeadingMenuPath: MenuPath;
|
|
|
2164
2432
|
|
|
2165
2433
|
export declare const workbenchTopHeaderTrailingMenuPath: MenuPath;
|
|
2166
2434
|
|
|
2167
|
-
declare interface WorkbenchWidgetPlacement {
|
|
2435
|
+
export declare interface WorkbenchWidgetPlacement {
|
|
2168
2436
|
widgetId: string;
|
|
2169
2437
|
contributionId: string;
|
|
2170
2438
|
ownerId?: string;
|