@pstdio/workbench 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -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>;
@@ -297,6 +298,7 @@ export declare interface CreateWorkbenchCoreInput {
297
298
  panelsPersistence?: WorkbenchPanelsPersistenceAdapter;
298
299
  defaultPanelOpenByRegionId?: Partial<Record<WorkbenchRegion, boolean>>;
299
300
  lastResourcePersistence?: LastResourcePersistenceAdapter;
301
+ sidePanelPersistence?: WorkbenchSidePanelPersistenceAdapter;
300
302
  initialSidePanelMode?: WorkbenchSidePanelMode;
301
303
  renderers?: CreateWorkbenchRendererRegistryInput;
302
304
  }
@@ -362,6 +364,8 @@ export declare interface DataTableRendererContribution {
362
364
  title: string;
363
365
  resourceKind?: string;
364
366
  columns?: DataTableRendererColumn[];
367
+ selectionMode?: "none" | "multiple";
368
+ selectionActions?: DataTableRendererSelectionAction[];
365
369
  rowActions?: DataTableRendererRowAction[];
366
370
  initialPageSize?: number;
367
371
  pageSizeOptions?: number[];
@@ -414,6 +418,14 @@ export declare interface DataTableRendererRowAction {
414
418
  run(row: DataTableRendererRow): Promise<void> | void;
415
419
  }
416
420
 
421
+ export declare interface DataTableRendererSelectionAction {
422
+ id: string;
423
+ label: string;
424
+ icon?: unknown;
425
+ destructive?: boolean;
426
+ run(rows: DataTableRendererRow[]): Promise<void> | void;
427
+ }
428
+
417
429
  declare interface DataTableRendererStoreState {
418
430
  renderers: Record<string, RegisteredDataTableRendererContribution>;
419
431
  }
@@ -806,9 +818,14 @@ declare interface LayoutModel {
806
818
  };
807
819
  }
808
820
 
809
- declare interface LayoutPersistenceAdapter {
821
+ export declare interface LayoutPersistenceAdapter {
810
822
  getLayout(scope?: LayoutScope): WorkbenchLayout | undefined;
811
823
  setLayout(layout: WorkbenchLayout, scope?: LayoutScope): void;
824
+ listScopes?(projectId: string): LayoutScope[];
825
+ transformLayouts?(projectId: string, transform: (layout: WorkbenchLayout, scope: LayoutScope) => WorkbenchLayout | undefined): void;
826
+ getCompatibilityMarker?(key: string): string | undefined;
827
+ setCompatibilityMarker?(key: string, value: string): void;
828
+ advanceWriteGeneration?(): number;
812
829
  flush?(): void;
813
830
  dispose?(): void;
814
831
  }
@@ -1457,6 +1474,7 @@ declare interface WidgetContribution {
1457
1474
  mountStrategy?: WidgetMountStrategy;
1458
1475
  closable?: boolean;
1459
1476
  hiddenByDefault?: boolean;
1477
+ subPanelsOnly?: boolean;
1460
1478
  regionSize?: WorkbenchRegionSize;
1461
1479
  regionCollapsible?: boolean;
1462
1480
  headerBorderBottom?: boolean;
@@ -1787,6 +1805,7 @@ export declare interface WorkbenchPanelContribution {
1787
1805
  reuse?: WorkbenchPanelReusePolicy;
1788
1806
  mountStrategy?: WorkbenchPanelMountStrategy;
1789
1807
  hiddenByDefault?: boolean;
1808
+ subPanelsOnly?: boolean;
1790
1809
  regionSize?: WorkbenchRegionSize;
1791
1810
  regionCollapsible?: boolean;
1792
1811
  headerBorderBottom?: boolean;
@@ -1876,13 +1895,14 @@ export declare type WorkbenchPanelMenuSide = "left" | "right";
1876
1895
  export declare type WorkbenchPanelMountStrategy = WidgetMountStrategy;
1877
1896
 
1878
1897
  export declare type WorkbenchPanelOpenStrategy = {
1879
- kind: "activate-or-open";
1898
+ kind: "persistent";
1880
1899
  position?: WorkbenchTabPosition;
1881
1900
  } | {
1882
1901
  kind: "replace-active";
1883
1902
  } | {
1884
1903
  kind: "replace-panel";
1885
1904
  instanceId: string;
1905
+ retention?: WorkbenchTabRetention;
1886
1906
  } | {
1887
1907
  kind: "preview";
1888
1908
  position?: WorkbenchTabPosition;
@@ -2017,7 +2037,12 @@ declare interface WorkbenchSidePanelController {
2017
2037
  onDidChange(listener: WorkbenchSidePanelChangeListener): Disposable_2;
2018
2038
  }
2019
2039
 
2020
- declare type WorkbenchSidePanelMode = "floating" | "closed" | "attached";
2040
+ export declare type WorkbenchSidePanelMode = "floating" | "closed" | "attached";
2041
+
2042
+ export declare interface WorkbenchSidePanelPersistenceAdapter {
2043
+ getMode(): WorkbenchSidePanelMode | undefined;
2044
+ setMode(mode: WorkbenchSidePanelMode): void;
2045
+ }
2021
2046
 
2022
2047
  export declare type WorkbenchSidePanelPresentation = WorkbenchSidePanelMode;
2023
2048
 
@@ -2154,7 +2179,7 @@ export declare const workbenchTopHeaderLeadingMenuPath: MenuPath;
2154
2179
 
2155
2180
  export declare const workbenchTopHeaderTrailingMenuPath: MenuPath;
2156
2181
 
2157
- declare interface WorkbenchWidgetPlacement {
2182
+ export declare interface WorkbenchWidgetPlacement {
2158
2183
  widgetId: string;
2159
2184
  contributionId: string;
2160
2185
  ownerId?: string;