@pstdio/workbench 0.5.0 → 0.7.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 +380 -29
- package/dist/extensions.js +1366 -883
- package/dist/extensions.js.map +1 -1
- package/dist/file-renderer-view-B6_iR4EN.js +496 -0
- package/dist/file-renderer-view-B6_iR4EN.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 +305 -17
- package/dist/index.js +2343 -2083
- package/dist/index.js.map +1 -1
- package/dist/layout-types-DMoZz38-.js.map +1 -1
- package/dist/react.d.ts +190 -16
- package/dist/react.js +2473 -2374
- package/dist/react.js.map +1 -1
- package/dist/storage.js +132 -155
- package/dist/storage.js.map +1 -1
- package/dist/testing.d.ts +177 -14
- package/dist/webview-runtime.js +1 -1
- package/dist/webview-runtime.js.map +1 -1
- package/dist/workbench-built-ins-BncLJfQA.js +1175 -0
- package/dist/workbench-built-ins-BncLJfQA.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 +4 -4
- package/dist/context-key-service-B2K9LAec.js +0 -1034
- package/dist/context-key-service-B2K9LAec.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
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
const c = "pstdio.fileSectionNavigation", i = (t) => {
|
|
2
|
+
if (!t || typeof t != "object") return !1;
|
|
3
|
+
const e = t, r = e.occurrence === void 0 || typeof e.occurrence == "number" && Number.isInteger(e.occurrence) && e.occurrence >= 0;
|
|
4
|
+
return typeof e.id == "string" && typeof e.heading == "string" && r;
|
|
5
|
+
}, s = (t) => {
|
|
6
|
+
const e = t?.metadata?.[c];
|
|
7
|
+
if (!e || typeof e != "object") return;
|
|
8
|
+
const r = e;
|
|
9
|
+
if (!(typeof r.treeId != "string" || typeof r.targetNodeId != "string") && !(!Array.isArray(r.anchors) || !r.anchors.every(i)))
|
|
10
|
+
return {
|
|
11
|
+
treeId: r.treeId,
|
|
12
|
+
targetNodeId: r.targetNodeId,
|
|
13
|
+
anchors: r.anchors
|
|
14
|
+
};
|
|
15
|
+
}, a = (t, e) => e && t.anchors.some((r) => r.id === e) ? e : t.targetNodeId, d = (t) => {
|
|
16
|
+
const {
|
|
17
|
+
previous: e,
|
|
18
|
+
current: r,
|
|
19
|
+
currentResourceUri: n,
|
|
20
|
+
selectedNodeId: o
|
|
21
|
+
} = t;
|
|
22
|
+
return !e || !o || !e.anchorIds.includes(o) || r?.targetNodeId === o ? !1 : !r || e.treeId !== r.treeId || e.resourceUri !== n;
|
|
23
|
+
};
|
|
24
|
+
export {
|
|
25
|
+
c as F,
|
|
26
|
+
s as g,
|
|
27
|
+
a as r,
|
|
28
|
+
d as s
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=file-section-navigation-CfYqVObc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-section-navigation-CfYqVObc.js","sources":["../src/core/registries/renderers/file-section-navigation.ts"],"sourcesContent":["import type { ResourceRef } from \"../resources/resource-registry\";\n\nexport const FILE_SECTION_NAVIGATION_METADATA_KEY = \"pstdio.fileSectionNavigation\";\n\nexport interface FileSectionAnchor {\n id: string;\n heading: string;\n occurrence?: number;\n}\n\nexport interface FileSectionNavigation {\n treeId: string;\n targetNodeId: string;\n anchors: FileSectionAnchor[];\n}\n\nconst isAnchor = (value: unknown): value is FileSectionAnchor => {\n if (!value || typeof value !== \"object\") return false;\n const anchor = value as Record<string, unknown>;\n const occurrenceIsValid =\n anchor.occurrence === undefined ||\n (typeof anchor.occurrence === \"number\" && Number.isInteger(anchor.occurrence) && anchor.occurrence >= 0);\n return typeof anchor.id === \"string\" && typeof anchor.heading === \"string\" && occurrenceIsValid;\n};\n\nexport const getFileSectionNavigation = (resource: ResourceRef | undefined): FileSectionNavigation | undefined => {\n const value = resource?.metadata?.[FILE_SECTION_NAVIGATION_METADATA_KEY];\n if (!value || typeof value !== \"object\") return undefined;\n const navigation = value as Record<string, unknown>;\n if (typeof navigation.treeId !== \"string\" || typeof navigation.targetNodeId !== \"string\") return undefined;\n if (!Array.isArray(navigation.anchors) || !navigation.anchors.every(isAnchor)) return undefined;\n\n return {\n treeId: navigation.treeId,\n targetNodeId: navigation.targetNodeId,\n anchors: navigation.anchors,\n };\n};\n\nexport const resolveFileSectionTargetId = (navigation: FileSectionNavigation, selectedNodeId: string | undefined) => {\n if (selectedNodeId && navigation.anchors.some((anchor) => anchor.id === selectedNodeId)) return selectedNodeId;\n return navigation.targetNodeId;\n};\n\nexport interface PreviousFileSectionNavigation {\n resourceUri?: string;\n treeId: string;\n anchorIds: string[];\n}\n\nexport const shouldClearFileSectionSelection = (input: {\n previous: PreviousFileSectionNavigation | null;\n current: FileSectionNavigation | undefined;\n currentResourceUri?: string;\n selectedNodeId?: string;\n}) => {\n const { previous, current, currentResourceUri, selectedNodeId } = input;\n if (!previous || !selectedNodeId || !previous.anchorIds.includes(selectedNodeId)) return false;\n if (current?.targetNodeId === selectedNodeId) return false;\n\n return !current || previous.treeId !== current.treeId || previous.resourceUri !== currentResourceUri;\n};\n"],"names":["FILE_SECTION_NAVIGATION_METADATA_KEY","isAnchor","value","anchor","occurrenceIsValid","occurrence","undefined","Number","isInteger","id","heading","getFileSectionNavigation","resource","metadata","navigation","treeId","targetNodeId","Array","isArray","anchors","every","resolveFileSectionTargetId","selectedNodeId","some","shouldClearFileSectionSelection","input","previous","current","currentResourceUri","anchorIds","includes","resourceUri"],"mappings":"AAEO,MAAMA,IAAuC,gCAc9CC,IAAWA,CAACC,MAA+C;AAC/D,MAAI,CAACA,KAAS,OAAOA,KAAU,SAAU,QAAO;AAChD,QAAMC,IAASD,GACTE,IACJD,EAAOE,eAAeC,UACrB,OAAOH,EAAOE,cAAe,YAAYE,OAAOC,UAAUL,EAAOE,UAAU,KAAKF,EAAOE,cAAc;AACxG,SAAO,OAAOF,EAAOM,MAAO,YAAY,OAAON,EAAOO,WAAY,YAAYN;AAChF,GAEaO,IAA2BA,CAACC,MAAyE;AAChH,QAAMV,IAAQU,GAAUC,WAAWb,CAAoC;AACvE,MAAI,CAACE,KAAS,OAAOA,KAAU,SAAU;AACzC,QAAMY,IAAaZ;AACnB,MAAI,SAAOY,EAAWC,UAAW,YAAY,OAAOD,EAAWE,gBAAiB,aAC5E,GAACC,MAAMC,QAAQJ,EAAWK,OAAO,KAAK,CAACL,EAAWK,QAAQC,MAAMnB,CAAQ;AAE5E,WAAO;AAAA,MACLc,QAAQD,EAAWC;AAAAA,MACnBC,cAAcF,EAAWE;AAAAA,MACzBG,SAASL,EAAWK;AAAAA,IAAAA;AAExB,GAEaE,IAA6BA,CAACP,GAAmCQ,MACxEA,KAAkBR,EAAWK,QAAQI,KAAMpB,OAAWA,EAAOM,OAAOa,CAAc,IAAUA,IACzFR,EAAWE,cASPQ,IAAkCA,CAACC,MAK1C;AACJ,QAAM;AAAA,IAAEC,UAAAA;AAAAA,IAAUC,SAAAA;AAAAA,IAASC,oBAAAA;AAAAA,IAAoBN,gBAAAA;AAAAA,EAAAA,IAAmBG;AAElE,SADI,CAACC,KAAY,CAACJ,KAAkB,CAACI,EAASG,UAAUC,SAASR,CAAc,KAC3EK,GAASX,iBAAiBM,IAAuB,KAE9C,CAACK,KAAWD,EAASX,WAAWY,EAAQZ,UAAUW,EAASK,gBAAgBH;AACpF;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -93,6 +93,7 @@ export declare interface Command {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
export declare interface CommandHandler<TArgs = unknown, TResult = unknown> {
|
|
96
|
+
prepareArgs?(args: TArgs, context?: WorkbenchCommandExecutionContext, onArgsChange?: (args: TArgs) => void): TArgs | Promise<TArgs>;
|
|
96
97
|
execute(args: TArgs, context?: WorkbenchCommandExecutionContext): TResult | Promise<TResult>;
|
|
97
98
|
isEnabled?(args: TArgs): boolean;
|
|
98
99
|
isVisible?(args: TArgs): boolean;
|
|
@@ -149,6 +150,8 @@ export declare interface CommandParamDescriptor {
|
|
|
149
150
|
options?: CommandParamOption[];
|
|
150
151
|
templateType?: string;
|
|
151
152
|
resourceType?: string;
|
|
153
|
+
accept?: string;
|
|
154
|
+
multiple?: boolean;
|
|
152
155
|
metadata?: Record<string, unknown>;
|
|
153
156
|
}
|
|
154
157
|
|
|
@@ -168,6 +171,7 @@ export declare interface CommandRegistry {
|
|
|
168
171
|
isCommandEnabled(id: string, args?: unknown): boolean;
|
|
169
172
|
isCommandVisible(id: string, args?: unknown): boolean;
|
|
170
173
|
isCommandToggled(id: string, args?: unknown): boolean;
|
|
174
|
+
prepareCommandArgs(id: string, args: unknown, context?: WorkbenchCommandExecutionContext, onArgsChange?: (args: unknown) => void): Promise<unknown>;
|
|
171
175
|
executeCommand(id: string, args?: unknown, context?: WorkbenchCommandExecutionContext): Promise<unknown>;
|
|
172
176
|
onDidExecuteError(listener: WorkbenchCommandExecutionErrorListener): Disposable_2;
|
|
173
177
|
}
|
|
@@ -176,6 +180,70 @@ declare interface CommandRegistryStoreState {
|
|
|
176
180
|
commands: Record<string, RegisteredCommand>;
|
|
177
181
|
}
|
|
178
182
|
|
|
183
|
+
export declare interface CompositionDiagnostic {
|
|
184
|
+
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";
|
|
185
|
+
message: string;
|
|
186
|
+
panelId?: string;
|
|
187
|
+
slot?: string;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
export declare interface CompositionModeDefinition {
|
|
191
|
+
id: string;
|
|
192
|
+
extensionId?: string;
|
|
193
|
+
resources?: Record<string, CompositionModeRecipe>;
|
|
194
|
+
modePanels?: Record<string, CompositionPlacementPolicy>;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export declare interface CompositionModeRecipe {
|
|
198
|
+
slots?: Record<string, CompositionPlacementPolicy>;
|
|
199
|
+
panels?: Record<string, CompositionPlacementPolicy>;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
export declare interface CompositionPanelDefinition {
|
|
203
|
+
id: string;
|
|
204
|
+
extensionId: string;
|
|
205
|
+
title: string;
|
|
206
|
+
icon?: string;
|
|
207
|
+
show?: CompositionPanelPlacement | readonly CompositionPanelPlacement[];
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
declare interface CompositionPanelPlacement extends CompositionPlacementPolicy {
|
|
211
|
+
resourceKind?: string;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
export declare interface CompositionPlacementPolicy {
|
|
215
|
+
region: DockedCompositionRegion;
|
|
216
|
+
allowedRegions?: readonly DockedCompositionRegion[];
|
|
217
|
+
required?: boolean;
|
|
218
|
+
defaultOpen?: boolean;
|
|
219
|
+
pinned?: boolean;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
declare interface CompositionResolutionContext {
|
|
223
|
+
modeId: string;
|
|
224
|
+
resourceKind?: string;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export declare interface CompositionResourceKindDefinition {
|
|
228
|
+
id: string;
|
|
229
|
+
extensionId: string;
|
|
230
|
+
surface: "primary" | "secondary" | "attached";
|
|
231
|
+
slots: Record<string, CompositionSlotDefinition>;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
export declare interface CompositionResourcePanelEdge {
|
|
235
|
+
id: string;
|
|
236
|
+
extensionId: string;
|
|
237
|
+
resourceKind: string;
|
|
238
|
+
panel: string;
|
|
239
|
+
slot: string;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
export declare interface CompositionSlotDefinition {
|
|
243
|
+
cardinality: "one" | "many";
|
|
244
|
+
external: boolean;
|
|
245
|
+
}
|
|
246
|
+
|
|
179
247
|
export declare interface ContextKeyScope extends Disposable_2 {
|
|
180
248
|
ownerId: string;
|
|
181
249
|
set(key: string, value: ContextKeyValue): void;
|
|
@@ -373,7 +441,7 @@ export declare interface DataTableRendererContribution {
|
|
|
373
441
|
emptyDescription?: string;
|
|
374
442
|
executeQuery(context: DataTableRendererQueryContext): Promise<DataTableRendererQueryResult> | DataTableRendererQueryResult;
|
|
375
443
|
subscribe?: (listener: () => void) => Disposable_2 | (() => void);
|
|
376
|
-
|
|
444
|
+
onRowActivate?: (row: DataTableRendererRow) => Promise<void> | void;
|
|
377
445
|
}
|
|
378
446
|
|
|
379
447
|
export declare type DataTableRendererImplementation = (input: WorkbenchPanelRenderInput & {
|
|
@@ -444,6 +512,10 @@ declare interface Disposable_2 {
|
|
|
444
512
|
}
|
|
445
513
|
export { Disposable_2 as Disposable }
|
|
446
514
|
|
|
515
|
+
export declare type DockedCompositionRegion = (typeof dockedCompositionRegions)[number];
|
|
516
|
+
|
|
517
|
+
export declare const dockedCompositionRegions: readonly ["sidenav", "main", "secondary", "side"];
|
|
518
|
+
|
|
447
519
|
export declare interface EnumOption {
|
|
448
520
|
value: string;
|
|
449
521
|
label: string;
|
|
@@ -499,10 +571,23 @@ export declare interface FileIconThemeRegistry {
|
|
|
499
571
|
|
|
500
572
|
export declare interface FileRendererContent {
|
|
501
573
|
fileName?: string;
|
|
574
|
+
/** Workspace-relative path shown above the file preview. */
|
|
575
|
+
filePath?: string;
|
|
502
576
|
mimeType?: string;
|
|
503
577
|
content?: string;
|
|
504
578
|
dataUrl?: string;
|
|
505
579
|
placeholder?: string;
|
|
580
|
+
/** Override contribution-level save support for one loaded file. */
|
|
581
|
+
editable?: boolean;
|
|
582
|
+
/** Request Monaco for text that automatic dispatch would open as markdown. */
|
|
583
|
+
textRenderer?: "automatic" | "monaco";
|
|
584
|
+
/** Represent a deliberate no-file selection without an editable blank document. */
|
|
585
|
+
emptyState?: {
|
|
586
|
+
title: string;
|
|
587
|
+
description?: string;
|
|
588
|
+
};
|
|
589
|
+
/** Ordered backing-store revision when one is available. */
|
|
590
|
+
revision?: string;
|
|
506
591
|
}
|
|
507
592
|
|
|
508
593
|
export declare interface FileRendererContribution {
|
|
@@ -512,35 +597,53 @@ export declare interface FileRendererContribution {
|
|
|
512
597
|
/** Resolve the file's content (and identity) for the bound resource. */
|
|
513
598
|
load(resource: ResourceRef | undefined): Promise<FileRendererContent> | FileRendererContent;
|
|
514
599
|
/** Persist edited text. Absent ⇒ read-only. Never called for images. */
|
|
515
|
-
save?(resource: ResourceRef | undefined, content: string): Promise<
|
|
600
|
+
save?(resource: ResourceRef | undefined, content: string, origin?: FileRendererRefreshOrigin): Promise<FileRendererSaveResult | undefined> | FileRendererSaveResult | void;
|
|
516
601
|
}
|
|
517
602
|
|
|
518
603
|
export declare type FileRendererImplementation = (input: WorkbenchPanelRenderInput & {
|
|
519
604
|
fileRendererId: string;
|
|
520
605
|
}) => unknown;
|
|
521
606
|
|
|
522
|
-
declare interface
|
|
607
|
+
export declare interface FileRendererRefreshEnvelope {
|
|
608
|
+
resourceUri?: string;
|
|
609
|
+
origin?: FileRendererRefreshOrigin;
|
|
610
|
+
revision?: string;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
export declare interface FileRendererRefreshEvent extends FileRendererRefreshEnvelope {
|
|
523
614
|
fileRendererId: string;
|
|
524
615
|
}
|
|
525
616
|
|
|
526
617
|
declare type FileRendererRefreshListener = (event: FileRendererRefreshEvent) => void;
|
|
527
618
|
|
|
619
|
+
export declare interface FileRendererRefreshOrigin {
|
|
620
|
+
rendererId: string;
|
|
621
|
+
instanceId: string;
|
|
622
|
+
operationId: string;
|
|
623
|
+
}
|
|
624
|
+
|
|
528
625
|
export declare interface FileRendererRegistry {
|
|
529
626
|
fileRendererStore: WorkbenchStore<FileRendererStoreState>;
|
|
530
627
|
registerFileRenderer(contribution: FileRendererContribution, metadata?: ContributionMetadata): Disposable_2;
|
|
531
628
|
setFileRendererImplementation(impl: FileRendererImplementation): void;
|
|
532
629
|
getFileRenderer(id: string): RegisteredFileRendererContribution | undefined;
|
|
533
630
|
listFileRenderers(): RegisteredFileRendererContribution[];
|
|
534
|
-
refreshFileRenderer(id: string): void;
|
|
631
|
+
refreshFileRenderer(id: string, event?: FileRendererRefreshEnvelope): void;
|
|
535
632
|
onDidRefreshFileRenderer(listener: FileRendererRefreshListener): Disposable_2;
|
|
536
633
|
}
|
|
537
634
|
|
|
635
|
+
export declare interface FileRendererSaveResult {
|
|
636
|
+
revision?: string;
|
|
637
|
+
}
|
|
638
|
+
|
|
538
639
|
declare interface FileRendererStoreState {
|
|
539
640
|
renderers: Record<string, RegisteredFileRendererContribution>;
|
|
540
641
|
}
|
|
541
642
|
|
|
542
643
|
export declare const getKeybindingSteps: (keybinding: KeybindingSequence) => string[];
|
|
543
644
|
|
|
645
|
+
export declare const getSwitchModeNavigationTargetModeId: (target: NavigationTarget) => string | undefined;
|
|
646
|
+
|
|
544
647
|
export declare const getWorkbenchModePanelForRegion: (region: WorkbenchRegion) => "main" | "secondary" | "side" | undefined;
|
|
545
648
|
|
|
546
649
|
export declare const getWorkbenchSelectionResourceUris: (resource: ResourceRef | undefined) => string[];
|
|
@@ -551,6 +654,8 @@ export declare const headerTrailingMenuPath: (region: string) => MenuPath;
|
|
|
551
654
|
|
|
552
655
|
export declare interface HistoryController {
|
|
553
656
|
store: WorkbenchStore<HistoryStoreState>;
|
|
657
|
+
/** Snapshot the history for a compound navigation; the returned function restores it. */
|
|
658
|
+
createCheckpoint(): () => void;
|
|
554
659
|
goBack(): HistoryEntry | undefined;
|
|
555
660
|
goForward(): HistoryEntry | undefined;
|
|
556
661
|
goPrevious(): HistoryEntry | undefined;
|
|
@@ -578,6 +683,8 @@ export declare interface KanbanRendererContribution<TRow extends KanbanRendererR
|
|
|
578
683
|
id: string;
|
|
579
684
|
title: string;
|
|
580
685
|
resourceKind?: string;
|
|
686
|
+
/** Host-owned scope for persisted display settings. */
|
|
687
|
+
storageScope?: string;
|
|
581
688
|
/**
|
|
582
689
|
* Declarative attribute schema. The renderer dispatches filter / group /
|
|
583
690
|
* sort / display / inline-edit behavior on each descriptor's `type.kind`.
|
|
@@ -605,8 +712,8 @@ export declare interface KanbanRendererContribution<TRow extends KanbanRendererR
|
|
|
605
712
|
*/
|
|
606
713
|
executeQuery(state: KanbanRendererQueryState): Promise<TRow[]> | TRow[];
|
|
607
714
|
subscribe?: (listener: () => void) => Disposable_2 | (() => void);
|
|
608
|
-
/** Row
|
|
609
|
-
|
|
715
|
+
/** Row activation surfaced by the renderer (mirrored from <KanbanRenderer>). */
|
|
716
|
+
onRowActivate?: (row: TRow) => Promise<void> | void;
|
|
610
717
|
/** Per-row right-click context menu actions (mirrored from <KanbanRenderer>). */
|
|
611
718
|
getRowContextMenuActions?: (row: TRow) => ResourceContextAction[];
|
|
612
719
|
/**
|
|
@@ -700,7 +807,7 @@ export declare interface KanbanRendererRow {
|
|
|
700
807
|
title: string;
|
|
701
808
|
/**
|
|
702
809
|
* Optional navigation handle. When set, the renderer's default click handler
|
|
703
|
-
* routes through the contribution's
|
|
810
|
+
* routes through the contribution's onRowActivate (which typically opens the
|
|
704
811
|
* resource via the workbench).
|
|
705
812
|
*/
|
|
706
813
|
resource?: unknown;
|
|
@@ -810,6 +917,16 @@ declare interface LayoutModel {
|
|
|
810
917
|
carryRegionState?: readonly WorkbenchRegion[];
|
|
811
918
|
}): void;
|
|
812
919
|
getPersistenceScope(): LayoutScope | undefined;
|
|
920
|
+
/** True when the current persistence scope already stores a layout. A new scope returns false. */
|
|
921
|
+
/** Whether anything is stored for the active scope right now. */
|
|
922
|
+
hasPersistedLayout(): boolean;
|
|
923
|
+
/**
|
|
924
|
+
* Whether the active scope was entered with a layout the user already had. Unlike
|
|
925
|
+
* `hasPersistedLayout`, writes made while entering a mode do not change the answer.
|
|
926
|
+
*/
|
|
927
|
+
enteredWithPersistedLayout(): boolean;
|
|
928
|
+
/** Moves owned panel menus beside their owner's current region and removes orphan menus. */
|
|
929
|
+
reconcilePanelMenus(): void;
|
|
813
930
|
onWillChangePersistenceScope(listener: (scope: LayoutScope | undefined) => void): {
|
|
814
931
|
dispose(): void;
|
|
815
932
|
};
|
|
@@ -946,6 +1063,7 @@ declare interface OpenWidgetInput {
|
|
|
946
1063
|
resource?: ResourceRef;
|
|
947
1064
|
title?: string;
|
|
948
1065
|
region?: WorkbenchRegion;
|
|
1066
|
+
role?: WorkbenchWidgetRole;
|
|
949
1067
|
ownerId?: string;
|
|
950
1068
|
source?: ContributionSource;
|
|
951
1069
|
pinned?: boolean;
|
|
@@ -963,13 +1081,24 @@ export declare interface OpenWorkbenchPanelInput {
|
|
|
963
1081
|
resource?: ResourceRef;
|
|
964
1082
|
title?: string;
|
|
965
1083
|
region?: WorkbenchRegion;
|
|
1084
|
+
role?: WorkbenchWidgetRole;
|
|
966
1085
|
pinned?: boolean;
|
|
1086
|
+
closable?: boolean;
|
|
967
1087
|
mountStrategy?: WorkbenchPanelMountStrategy;
|
|
968
1088
|
hiddenByDefault?: boolean;
|
|
969
1089
|
tab?: WorkbenchPanelTab;
|
|
970
1090
|
strategy?: WorkbenchPanelOpenStrategy;
|
|
971
1091
|
}
|
|
972
1092
|
|
|
1093
|
+
export declare interface PersistedCompositionLayout {
|
|
1094
|
+
regions: Partial<Record<DockedCompositionRegion, PersistedCompositionRegionState>>;
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1097
|
+
declare interface PersistedCompositionRegionState {
|
|
1098
|
+
order: readonly string[];
|
|
1099
|
+
activePanelId?: string;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
973
1102
|
export declare interface PersistedTreeRendererStates {
|
|
974
1103
|
statesByTreeId: Record<string, TreeRendererState>;
|
|
975
1104
|
}
|
|
@@ -1092,7 +1221,6 @@ declare type RegisteredWidgetContribution = Omit<WidgetContribution, "priority"
|
|
|
1092
1221
|
ownedPanelMenuIds?: readonly string[];
|
|
1093
1222
|
singleton: boolean;
|
|
1094
1223
|
reuse: WidgetReusePolicy;
|
|
1095
|
-
role: WorkbenchWidgetRole;
|
|
1096
1224
|
} & RegisteredContributionMetadata;
|
|
1097
1225
|
|
|
1098
1226
|
declare interface RegisteredWorkbenchNotification extends RegisteredContributionMetadata {
|
|
@@ -1108,9 +1236,49 @@ declare interface RegisteredWorkbenchNotification extends RegisteredContribution
|
|
|
1108
1236
|
|
|
1109
1237
|
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";
|
|
1110
1238
|
|
|
1239
|
+
export declare const resolveComposition: (input: ResolveCompositionInput) => ResolvedComposition;
|
|
1240
|
+
|
|
1241
|
+
declare interface ResolveCompositionInput {
|
|
1242
|
+
context: CompositionResolutionContext;
|
|
1243
|
+
mode: CompositionModeDefinition;
|
|
1244
|
+
composition: WorkbenchComposition;
|
|
1245
|
+
persisted?: PersistedCompositionLayout;
|
|
1246
|
+
}
|
|
1247
|
+
|
|
1248
|
+
export declare interface ResolvedComposition {
|
|
1249
|
+
placements: readonly ResolvedCompositionPlacement[];
|
|
1250
|
+
regionOrder: Partial<Record<DockedCompositionRegion, readonly string[]>>;
|
|
1251
|
+
activePanelIds: Partial<Record<DockedCompositionRegion, string>>;
|
|
1252
|
+
addablePanels: readonly ResolvedCompositionAddablePanel[];
|
|
1253
|
+
diagnostics: readonly CompositionDiagnostic[];
|
|
1254
|
+
requiredFallback?: {
|
|
1255
|
+
panelId: string;
|
|
1256
|
+
};
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
export declare interface ResolvedCompositionAddablePanel {
|
|
1260
|
+
panelId: string;
|
|
1261
|
+
region: DockedCompositionRegion;
|
|
1262
|
+
allowedRegions: readonly DockedCompositionRegion[];
|
|
1263
|
+
pinned?: boolean;
|
|
1264
|
+
}
|
|
1265
|
+
|
|
1266
|
+
export declare interface ResolvedCompositionPlacement {
|
|
1267
|
+
panelId: string;
|
|
1268
|
+
region: DockedCompositionRegion;
|
|
1269
|
+
slot?: string;
|
|
1270
|
+
required: boolean;
|
|
1271
|
+
defaultOpen: boolean;
|
|
1272
|
+
pinned?: boolean;
|
|
1273
|
+
allowedRegions: readonly DockedCompositionRegion[];
|
|
1274
|
+
origin: "persisted" | "required" | "default";
|
|
1275
|
+
}
|
|
1276
|
+
|
|
1111
1277
|
declare type ResolvedResourceHierarchyProvider = Required<ResourceHierarchyProvider>;
|
|
1112
1278
|
|
|
1113
|
-
declare type ResolvedResourcePresenter =
|
|
1279
|
+
declare type ResolvedResourcePresenter = Omit<ResourcePresenter, "priority"> & {
|
|
1280
|
+
priority: number;
|
|
1281
|
+
};
|
|
1114
1282
|
|
|
1115
1283
|
export declare interface ResourceBrowseEntry {
|
|
1116
1284
|
resource: ResourceRef;
|
|
@@ -1134,6 +1302,14 @@ export declare interface ResourceContextAction {
|
|
|
1134
1302
|
|
|
1135
1303
|
export declare const resourceContextMenuPath: (resourceKind: string) => MenuPath;
|
|
1136
1304
|
|
|
1305
|
+
export declare interface ResourceHierarchyCycle {
|
|
1306
|
+
code: typeof resourceHierarchyCycleCode;
|
|
1307
|
+
path: ResourceRef[];
|
|
1308
|
+
repeatedUri: string;
|
|
1309
|
+
}
|
|
1310
|
+
|
|
1311
|
+
export declare const resourceHierarchyCycleCode = "resource_hierarchy_cycle";
|
|
1312
|
+
|
|
1137
1313
|
export declare interface ResourceHierarchyProvider {
|
|
1138
1314
|
id: string;
|
|
1139
1315
|
priority?: number;
|
|
@@ -1166,6 +1342,7 @@ export declare interface ResourcePresenter {
|
|
|
1166
1342
|
priority?: number;
|
|
1167
1343
|
canOpen(resource: ResourceRef): boolean;
|
|
1168
1344
|
open(resource: ResourceRef, input: OpenResourceInput): WorkbenchPanelInstance | Promise<WorkbenchPanelInstance>;
|
|
1345
|
+
afterOpen?(resource: ResourceRef, instance: WorkbenchPanelInstance, input: OpenResourceInput): void;
|
|
1169
1346
|
}
|
|
1170
1347
|
|
|
1171
1348
|
export declare interface ResourceProvider {
|
|
@@ -1197,6 +1374,7 @@ export declare interface ResourceRegistry {
|
|
|
1197
1374
|
registerHierarchyProvider(provider: ResourceHierarchyProvider): Disposable_2;
|
|
1198
1375
|
listHierarchyProviders(): ResolvedResourceHierarchyProvider[];
|
|
1199
1376
|
walkHierarchy(resource: ResourceRef | undefined): ResourceRef[];
|
|
1377
|
+
onDidDetectHierarchyCycle(listener: (cycle: ResourceHierarchyCycle) => void): Disposable_2;
|
|
1200
1378
|
isOpeningResource(): boolean;
|
|
1201
1379
|
openResource(resource: ResourceRef, input?: OpenResourceInput): Promise<WorkbenchPanelInstance>;
|
|
1202
1380
|
onDidOpenResource(listener: (resource: ResourceRef) => void): Disposable_2;
|
|
@@ -1356,11 +1534,13 @@ export declare interface TreeNode {
|
|
|
1356
1534
|
target?: NavigationTarget;
|
|
1357
1535
|
/** Visual row variant for non-data rows such as placeholders. */
|
|
1358
1536
|
rowVariant?: TreeNodeRowVariant;
|
|
1537
|
+
inlineInput?: TreeNodeInlineInput;
|
|
1359
1538
|
actions?: TreeAction[];
|
|
1360
1539
|
contextMenuActions?: TreeAction[];
|
|
1361
1540
|
contextMenuPath?: MenuPath;
|
|
1362
1541
|
menuPath?: MenuPath;
|
|
1363
1542
|
menuPlacement?: "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "left-start";
|
|
1543
|
+
showContextMenuTrigger?: boolean;
|
|
1364
1544
|
collapsible?: boolean;
|
|
1365
1545
|
disabled?: boolean;
|
|
1366
1546
|
children?: TreeNode[];
|
|
@@ -1371,6 +1551,18 @@ export declare interface TreeNode {
|
|
|
1371
1551
|
canHide?: boolean;
|
|
1372
1552
|
/** When false, the node stays fixed within its Sidenav group. */
|
|
1373
1553
|
canReorder?: boolean;
|
|
1554
|
+
/** Allow this node to be moved to another tree location. */
|
|
1555
|
+
canDrag?: boolean;
|
|
1556
|
+
/** Allow movable nodes to be dropped on this node. */
|
|
1557
|
+
canDrop?: boolean;
|
|
1558
|
+
}
|
|
1559
|
+
|
|
1560
|
+
export declare interface TreeNodeInlineInput {
|
|
1561
|
+
ariaLabel: string;
|
|
1562
|
+
defaultValue?: string;
|
|
1563
|
+
placeholder?: string;
|
|
1564
|
+
onCommit(value: string): Promise<void> | void;
|
|
1565
|
+
onCancel?(): void;
|
|
1374
1566
|
}
|
|
1375
1567
|
|
|
1376
1568
|
declare type TreeNodeRowVariant = "empty-state";
|
|
@@ -1379,6 +1571,8 @@ export declare interface TreeRendererContribution {
|
|
|
1379
1571
|
id: string;
|
|
1380
1572
|
title: string;
|
|
1381
1573
|
icon?: string;
|
|
1574
|
+
searchable?: boolean;
|
|
1575
|
+
searchPlaceholder?: string;
|
|
1382
1576
|
when?: string;
|
|
1383
1577
|
defaultExpandedSectionIds?: string[];
|
|
1384
1578
|
defaultExpandedNodeIds?: string[];
|
|
@@ -1386,6 +1580,7 @@ export declare interface TreeRendererContribution {
|
|
|
1386
1580
|
getHeader?(ctx: TreeContext): Promise<TreeNode[]> | TreeNode[];
|
|
1387
1581
|
getFooter?(ctx: TreeContext): Promise<TreeNode[]> | TreeNode[];
|
|
1388
1582
|
getChildren(node: TreeNode, ctx: TreeContext): Promise<TreeNode[]> | TreeNode[];
|
|
1583
|
+
moveNode?(source: TreeNode, target: TreeNode | undefined, ctx: TreeContext): Promise<void> | void;
|
|
1389
1584
|
}
|
|
1390
1585
|
|
|
1391
1586
|
export declare type TreeRendererImplementation = (input: WorkbenchPanelRenderInput & {
|
|
@@ -1483,7 +1678,6 @@ declare interface WidgetContribution {
|
|
|
1483
1678
|
priority?: number;
|
|
1484
1679
|
rendererId: string;
|
|
1485
1680
|
openCommandId?: string;
|
|
1486
|
-
role?: WorkbenchWidgetRole;
|
|
1487
1681
|
eligibleLocations?: WorkbenchLocationEligibility;
|
|
1488
1682
|
panelMenuOwner?: WorkbenchPanelMenuOwner;
|
|
1489
1683
|
tab?: WorkbenchWidgetTab;
|
|
@@ -1583,6 +1777,26 @@ declare interface WorkbenchCommandParamsRequest {
|
|
|
1583
1777
|
context?: WorkbenchCommandExecutionContext;
|
|
1584
1778
|
}
|
|
1585
1779
|
|
|
1780
|
+
export declare interface WorkbenchComposition {
|
|
1781
|
+
resourceKinds: readonly CompositionResourceKindDefinition[];
|
|
1782
|
+
panels: readonly CompositionPanelDefinition[];
|
|
1783
|
+
resourcePanels: readonly CompositionResourcePanelEdge[];
|
|
1784
|
+
}
|
|
1785
|
+
|
|
1786
|
+
declare interface WorkbenchCompositionAddablePanel extends WorkbenchModeAddablePanel {
|
|
1787
|
+
contribution: RegisteredWidgetContribution;
|
|
1788
|
+
}
|
|
1789
|
+
|
|
1790
|
+
declare interface WorkbenchCompositionController {
|
|
1791
|
+
panelsFor(region: WorkbenchPanelRegion): WorkbenchCompositionRegionPanels;
|
|
1792
|
+
}
|
|
1793
|
+
|
|
1794
|
+
declare interface WorkbenchCompositionRegionPanels {
|
|
1795
|
+
open: readonly WorkbenchWidgetPlacement[];
|
|
1796
|
+
addable: readonly WorkbenchCompositionAddablePanel[];
|
|
1797
|
+
closable: readonly string[];
|
|
1798
|
+
}
|
|
1799
|
+
|
|
1586
1800
|
export declare interface WorkbenchCore extends WorkbenchCoreContributionContext {
|
|
1587
1801
|
host: WorkbenchHost;
|
|
1588
1802
|
registerModule(module: WorkbenchModuleContribution): Disposable_2;
|
|
@@ -1594,6 +1808,7 @@ declare interface WorkbenchCoreContributionContext {
|
|
|
1594
1808
|
commandPalette: WorkbenchCommandPaletteController;
|
|
1595
1809
|
commandPaletteResources: CommandPaletteResourceRegistry;
|
|
1596
1810
|
commands: CommandRegistry;
|
|
1811
|
+
composition: WorkbenchCompositionController;
|
|
1597
1812
|
context: ContextKeyService;
|
|
1598
1813
|
focus: WorkbenchFocusController;
|
|
1599
1814
|
history: HistoryController;
|
|
@@ -1602,6 +1817,7 @@ declare interface WorkbenchCoreContributionContext {
|
|
|
1602
1817
|
layout: WorkbenchLayoutModel;
|
|
1603
1818
|
modes: WorkbenchModeRegistry;
|
|
1604
1819
|
navigation: NavigationRegistry;
|
|
1820
|
+
navigator: WorkbenchNavigator;
|
|
1605
1821
|
notifications: NotificationRegistry;
|
|
1606
1822
|
panels: WorkbenchPanelsController;
|
|
1607
1823
|
preferences: PreferenceRegistry;
|
|
@@ -1679,7 +1895,7 @@ declare interface WorkbenchLayoutStoreState {
|
|
|
1679
1895
|
placeholders: Partial<Record<WorkbenchRegion, RegisteredPlaceholderContribution>>;
|
|
1680
1896
|
}
|
|
1681
1897
|
|
|
1682
|
-
declare type WorkbenchLocationContribution =
|
|
1898
|
+
declare type WorkbenchLocationContribution = WidgetContribution & WorkbenchPanelMenusContribution;
|
|
1683
1899
|
|
|
1684
1900
|
export declare interface WorkbenchLocationEligibility {
|
|
1685
1901
|
modeIds?: string[];
|
|
@@ -1701,15 +1917,31 @@ export declare type WorkbenchModeActivationContext = WorkbenchCoreContributionCo
|
|
|
1701
1917
|
|
|
1702
1918
|
export declare type WorkbenchModeActivationResult = Disposable_2 | readonly Disposable_2[] | undefined;
|
|
1703
1919
|
|
|
1920
|
+
export declare interface WorkbenchModeAddablePanel {
|
|
1921
|
+
panelId: string;
|
|
1922
|
+
region: WorkbenchPanelRegion;
|
|
1923
|
+
allowedRegions?: readonly WorkbenchRegion[];
|
|
1924
|
+
pinned?: boolean;
|
|
1925
|
+
}
|
|
1926
|
+
|
|
1927
|
+
export declare interface WorkbenchModeAddablePanelContext {
|
|
1928
|
+
layout: WorkbenchLayout;
|
|
1929
|
+
resource?: ResourceRef;
|
|
1930
|
+
}
|
|
1931
|
+
|
|
1704
1932
|
declare type WorkbenchModeChangeListener = () => void;
|
|
1705
1933
|
|
|
1706
1934
|
export declare interface WorkbenchModeContribution {
|
|
1707
1935
|
id: string;
|
|
1708
1936
|
label?: string;
|
|
1709
1937
|
panels?: readonly WorkbenchPanelRegion[];
|
|
1938
|
+
resourceKinds?: readonly string[];
|
|
1939
|
+
defaultResource?: ResourceRef | (() => Promise<ResourceRef | undefined> | ResourceRef | undefined);
|
|
1940
|
+
listAddablePanels?(context: WorkbenchModeAddablePanelContext): readonly WorkbenchModeAddablePanel[];
|
|
1710
1941
|
activate(ctx: WorkbenchModeActivationContext): WorkbenchModeActivationResult;
|
|
1711
1942
|
seed?(ctx: WorkbenchModeActivationContext): void;
|
|
1712
1943
|
enter?(ctx: WorkbenchModeActivationContext): WorkbenchModeActivationResult;
|
|
1944
|
+
reconcile?(ctx: WorkbenchModeActivationContext): void;
|
|
1713
1945
|
}
|
|
1714
1946
|
|
|
1715
1947
|
export declare interface WorkbenchModeRegistry {
|
|
@@ -1745,6 +1977,14 @@ export declare interface WorkbenchModuleContribution {
|
|
|
1745
1977
|
|
|
1746
1978
|
export declare type WorkbenchModuleContributionContext = WorkbenchModuleContext;
|
|
1747
1979
|
|
|
1980
|
+
declare interface WorkbenchNavigationCommit {
|
|
1981
|
+
modeId: string | undefined;
|
|
1982
|
+
resource: ResourceRef | undefined;
|
|
1983
|
+
replaceActive: boolean;
|
|
1984
|
+
}
|
|
1985
|
+
|
|
1986
|
+
declare type WorkbenchNavigationDiagnosticCode = "navigation_mode_missing" | "navigation_resource_missing" | "navigation_resource_incompatible" | "navigation_default_missing" | "navigation_target_stale";
|
|
1987
|
+
|
|
1748
1988
|
declare interface WorkbenchNavigationEntry {
|
|
1749
1989
|
entryId: string;
|
|
1750
1990
|
recordedAt: number;
|
|
@@ -1759,6 +1999,53 @@ declare interface WorkbenchNavigationEntry {
|
|
|
1759
1999
|
closedSubPanel?: WorkbenchClosedSubPanel;
|
|
1760
2000
|
}
|
|
1761
2001
|
|
|
2002
|
+
declare type WorkbenchNavigationResult = {
|
|
2003
|
+
ok: true;
|
|
2004
|
+
modeId: string | undefined;
|
|
2005
|
+
resource: ResourceRef | undefined;
|
|
2006
|
+
} | {
|
|
2007
|
+
ok: false;
|
|
2008
|
+
code: WorkbenchNavigationDiagnosticCode;
|
|
2009
|
+
message: string;
|
|
2010
|
+
};
|
|
2011
|
+
|
|
2012
|
+
declare interface WorkbenchNavigationTarget {
|
|
2013
|
+
modeId?: string;
|
|
2014
|
+
resource?: ResourceRef;
|
|
2015
|
+
replaceActive?: boolean;
|
|
2016
|
+
}
|
|
2017
|
+
|
|
2018
|
+
declare interface WorkbenchNavigator {
|
|
2019
|
+
configure(hooks: WorkbenchNavigatorHostHooks): void;
|
|
2020
|
+
getSelectedResource(): ResourceRef | undefined;
|
|
2021
|
+
open(target: WorkbenchNavigationTarget): Promise<WorkbenchNavigationResult>;
|
|
2022
|
+
commitContext(input: WorkbenchNavigatorCommitInput): WorkbenchNavigationResult;
|
|
2023
|
+
getLastResource(projectId: string | undefined, modeId: string): ResourceRef | undefined;
|
|
2024
|
+
forgetResource(uri: string): void;
|
|
2025
|
+
onDidCommit(listener: (commit: WorkbenchNavigationCommit) => void): {
|
|
2026
|
+
dispose(): void;
|
|
2027
|
+
};
|
|
2028
|
+
}
|
|
2029
|
+
|
|
2030
|
+
declare interface WorkbenchNavigatorCommitInput {
|
|
2031
|
+
modeId?: string | null;
|
|
2032
|
+
resource?: ResourceRef | null;
|
|
2033
|
+
replaceActive?: boolean;
|
|
2034
|
+
present?: boolean;
|
|
2035
|
+
}
|
|
2036
|
+
|
|
2037
|
+
declare interface WorkbenchNavigatorHostHooks {
|
|
2038
|
+
getProjectId?(): string | undefined;
|
|
2039
|
+
getSelectedResource?(): ResourceRef | undefined;
|
|
2040
|
+
interpretSelection?(resource: ResourceRef): ResourceRef | undefined;
|
|
2041
|
+
applySelection?(resource: ResourceRef | undefined): void;
|
|
2042
|
+
applyScope?(commit: WorkbenchNavigationCommit): void;
|
|
2043
|
+
applyBreadcrumb?(resource: ResourceRef | undefined): void;
|
|
2044
|
+
presentResource?(resource: ResourceRef, input: {
|
|
2045
|
+
replaceActive: boolean;
|
|
2046
|
+
}): Promise<unknown> | unknown;
|
|
2047
|
+
}
|
|
2048
|
+
|
|
1762
2049
|
export declare interface WorkbenchNotification {
|
|
1763
2050
|
id?: string;
|
|
1764
2051
|
level: WorkbenchNotificationLevel;
|
|
@@ -1800,7 +2087,6 @@ export declare interface WorkbenchPanelContribution {
|
|
|
1800
2087
|
region: WorkbenchRegion;
|
|
1801
2088
|
fallbackRegion?: WorkbenchRegion;
|
|
1802
2089
|
rendererId: string;
|
|
1803
|
-
closable: boolean;
|
|
1804
2090
|
singleton?: boolean;
|
|
1805
2091
|
reuse?: WorkbenchPanelReusePolicy;
|
|
1806
2092
|
mountStrategy?: WorkbenchPanelMountStrategy;
|
|
@@ -1839,7 +2125,7 @@ export declare interface WorkbenchPanelInstance {
|
|
|
1839
2125
|
tab?: WorkbenchPanelTab;
|
|
1840
2126
|
}
|
|
1841
2127
|
|
|
1842
|
-
declare type WorkbenchPanelMenuContribution = Omit<WidgetContribution, "region" | "fallbackRegion"
|
|
2128
|
+
declare type WorkbenchPanelMenuContribution = Omit<WidgetContribution, "region" | "fallbackRegion"> & {
|
|
1843
2129
|
region: WorkbenchPanelMenuRegion;
|
|
1844
2130
|
fallbackRegion?: WorkbenchPanelMenuRegion;
|
|
1845
2131
|
};
|
|
@@ -1908,9 +2194,9 @@ export declare type WorkbenchPanelOpenStrategy = {
|
|
|
1908
2194
|
position?: WorkbenchTabPosition;
|
|
1909
2195
|
};
|
|
1910
2196
|
|
|
1911
|
-
declare type WorkbenchPanelRegion = (typeof workbenchPanelRegions)[number];
|
|
2197
|
+
export declare type WorkbenchPanelRegion = (typeof workbenchPanelRegions)[number];
|
|
1912
2198
|
|
|
1913
|
-
declare const workbenchPanelRegions: readonly ["main", "secondary", "side"];
|
|
2199
|
+
export declare const workbenchPanelRegions: readonly ["main", "secondary", "side"];
|
|
1914
2200
|
|
|
1915
2201
|
export declare interface WorkbenchPanelRenderInput {
|
|
1916
2202
|
workbench: WorkbenchCore;
|
|
@@ -1953,7 +2239,7 @@ export declare interface WorkbenchPersistenceAdapter {
|
|
|
1953
2239
|
|
|
1954
2240
|
export declare type WorkbenchRegion = (typeof workbenchRegions)[number];
|
|
1955
2241
|
|
|
1956
|
-
declare const workbenchRegions: readonly ["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", "status", "overlay"];
|
|
2242
|
+
export declare const workbenchRegions: readonly ["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", "status", "overlay"];
|
|
1957
2243
|
|
|
1958
2244
|
export declare interface WorkbenchRegionSize {
|
|
1959
2245
|
defaultPx?: number;
|
|
@@ -2070,7 +2356,7 @@ declare type WorkbenchStoreSelector<TState, TValue> = (state: TState) => TValue;
|
|
|
2070
2356
|
|
|
2071
2357
|
declare type WorkbenchStoreSelectorListener<TValue> = (value: TValue, previousValue: TValue) => void;
|
|
2072
2358
|
|
|
2073
|
-
declare type WorkbenchSubPanelContribution = Omit<WidgetContribution, "region" | "fallbackRegion"
|
|
2359
|
+
declare type WorkbenchSubPanelContribution = Omit<WidgetContribution, "region" | "fallbackRegion"> & {
|
|
2074
2360
|
region: WorkbenchPanelRegion;
|
|
2075
2361
|
fallbackRegion?: WorkbenchPanelRegion;
|
|
2076
2362
|
} & WorkbenchPanelMenusContribution;
|
|
@@ -2081,6 +2367,8 @@ declare interface WorkbenchSubPanelRef {
|
|
|
2081
2367
|
instanceKey?: string;
|
|
2082
2368
|
}
|
|
2083
2369
|
|
|
2370
|
+
export declare const workbenchSwitchModeCommandId = "workbench.action.switchMode";
|
|
2371
|
+
|
|
2084
2372
|
export declare type WorkbenchTabPosition = "start" | "end" | {
|
|
2085
2373
|
beforeWidgetId: string;
|
|
2086
2374
|
} | {
|