@pstdio/sdk 0.15.0 → 0.16.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/api/index.js CHANGED
@@ -13583,14 +13583,38 @@ var agentSkillsLayoutSchema = exports_external.object({
13583
13583
  dir: exports_external.string(),
13584
13584
  global_dir: exports_external.string()
13585
13585
  });
13586
+ var localizableSchema = exports_external.union([exports_external.string(), exports_external.object({ $l10n: exports_external.string(), default: exports_external.string().optional() })]);
13587
+ var harnessParamBaseSchema = exports_external.object({
13588
+ label: localizableSchema.optional(),
13589
+ description: localizableSchema.optional(),
13590
+ required: exports_external.boolean().optional(),
13591
+ metadata: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
13592
+ });
13593
+ var harnessParamOptionSchema = exports_external.object({ label: exports_external.string(), value: exports_external.string(), icon: exports_external.string().optional() });
13594
+ var harnessSelectParamSchema = harnessParamBaseSchema.extend({
13595
+ type: exports_external.literal("select"),
13596
+ defaultValue: exports_external.string().optional(),
13597
+ options: exports_external.array(harnessParamOptionSchema)
13598
+ });
13599
+ var harnessBooleanParamSchema = harnessParamBaseSchema.extend({
13600
+ type: exports_external.literal("boolean"),
13601
+ defaultValue: exports_external.boolean().optional()
13602
+ });
13603
+ var harnessParamDescriptorSchema = exports_external.union([harnessSelectParamSchema, harnessBooleanParamSchema]);
13604
+ var harnessParamsSchema = exports_external.record(exports_external.string(), harnessParamDescriptorSchema);
13586
13605
  var agentInfoSchema = exports_external.object({
13587
13606
  id: exports_external.string(),
13588
13607
  name: exports_external.string(),
13589
13608
  availability: exports_external.object({ type: agentAvailabilityTypeSchema }),
13590
- skills: agentSkillsLayoutSchema.optional()
13609
+ skills: agentSkillsLayoutSchema.optional(),
13610
+ params: harnessParamsSchema.optional()
13591
13611
  });
13592
13612
  var agentModelSchema = exports_external.object({
13593
- id: exports_external.string()
13613
+ id: exports_external.string(),
13614
+ label: exports_external.string().optional(),
13615
+ description: exports_external.string().optional(),
13616
+ isDefault: exports_external.boolean().optional(),
13617
+ paramOverrides: exports_external.record(exports_external.string(), harnessParamDescriptorSchema.nullable()).optional()
13594
13618
  });
13595
13619
  var harnessLocalId = (id) => id.slice(id.lastIndexOf(".") + 1);
13596
13620
  // ../pstdio-api-contracts/src/extension-kernel/refs.ts
@@ -13608,7 +13632,7 @@ var defineSlot = (id, options) => ({
13608
13632
 
13609
13633
  // ../pstdio-api-contracts/src/extension-kernel/kernel-slots.ts
13610
13634
  var projectSlots = {
13611
- sidebar: defineSlot("project.sidebar", { kind: "view" }),
13635
+ sidenav: defineSlot("project.sidenav", { kind: "panel" }),
13612
13636
  headerPrimary: defineSlot("project.headerPrimary", { kind: "menu" }),
13613
13637
  headerOverflow: defineSlot("project.headerOverflow", { kind: "menu" }),
13614
13638
  settingsPanels: defineSlot("project.settingsPanels", { kind: "settings" })
@@ -13621,7 +13645,7 @@ var sessionSlots = {
13621
13645
  var workspaceSlots = {
13622
13646
  headerPrimary: defineSlot("workspace.headerPrimary", { kind: "menu" }),
13623
13647
  headerOverflow: defineSlot("workspace.headerOverflow", { kind: "menu" }),
13624
- sidebar: defineSlot("workspace.sidebar", { kind: "view" })
13648
+ sidenav: defineSlot("workspace.sidenav", { kind: "panel" })
13625
13649
  };
13626
13650
  var projectEvents = {
13627
13651
  opened: eventRef("project.opened")
@@ -13696,6 +13720,20 @@ var workbenchTreeTargets = [
13696
13720
  "workbench.main.left.tree",
13697
13721
  "workbench.main.right.tree"
13698
13722
  ];
13723
+ var workbenchRegions = [
13724
+ "nav",
13725
+ "activity",
13726
+ "sidenav-header",
13727
+ "sidenav",
13728
+ "main-header",
13729
+ "main",
13730
+ "secondary-header",
13731
+ "secondary",
13732
+ "side-header",
13733
+ "side",
13734
+ "status",
13735
+ "overlay"
13736
+ ];
13699
13737
  var workbenchViewTargets = [
13700
13738
  "workbench.main",
13701
13739
  "workbench.main.left",
@@ -13704,6 +13742,7 @@ var workbenchViewTargets = [
13704
13742
  ];
13705
13743
  var workbenchSettingsTargets = ["workbench.settings"];
13706
13744
  var workbenchSettingsScopes = ["project", "global"];
13745
+ var workbenchModePanels = ["main", "secondary", "side"];
13707
13746
  var workbenchModeLayoutTargets = [
13708
13747
  "workbench.left",
13709
13748
  "workbench.main.left",
@@ -13711,6 +13750,14 @@ var workbenchModeLayoutTargets = [
13711
13750
  "workbench.main.right",
13712
13751
  "workbench.secondary"
13713
13752
  ];
13753
+ var workbenchModeLayoutTargetPanels = {
13754
+ "workbench.left": undefined,
13755
+ "workbench.main.left": "main",
13756
+ "workbench.main": "main",
13757
+ "workbench.main.right": "main",
13758
+ "workbench.secondary": "secondary"
13759
+ };
13760
+ var getWorkbenchModeLayoutTargetPanel = (target) => workbenchModeLayoutTargetPanels[target];
13714
13761
  var workbenchTargets = [
13715
13762
  {
13716
13763
  id: "workbench.nav.actions",
@@ -13742,30 +13789,6 @@ var workbenchTargets = [
13742
13789
  granularity: "areaTree",
13743
13790
  rationale: "Tree entries for the active tree renderer mounted in the main-right area."
13744
13791
  },
13745
- {
13746
- id: "workbench.main",
13747
- allowedKinds: ["view"],
13748
- granularity: "area",
13749
- rationale: "Direct extension view placement in the main area."
13750
- },
13751
- {
13752
- id: "workbench.main.left",
13753
- allowedKinds: ["view"],
13754
- granularity: "area",
13755
- rationale: "Direct extension view placement in the main-left area."
13756
- },
13757
- {
13758
- id: "workbench.main.right",
13759
- allowedKinds: ["view"],
13760
- granularity: "area",
13761
- rationale: "Direct extension view placement in the main-right area."
13762
- },
13763
- {
13764
- id: "workbench.secondary",
13765
- allowedKinds: ["view"],
13766
- granularity: "area",
13767
- rationale: "Direct extension view placement in the secondary area."
13768
- },
13769
13792
  {
13770
13793
  id: "workbench.settings",
13771
13794
  allowedKinds: ["settings"],
@@ -13805,7 +13828,14 @@ var packageAssetDescriptorSchema = exports_external.object({
13805
13828
  baseUrl: exports_external.string()
13806
13829
  });
13807
13830
  var extensionPlacementSchema = exports_external.enum(["first", "default", "last"]);
13808
- var extensionSlotKindSchema = exports_external.enum(["menu", "view", "settings", "renderer", "dataRenderer"]);
13831
+ var extensionSlotKindSchema = exports_external.enum([
13832
+ "menu",
13833
+ "panel",
13834
+ "settings",
13835
+ "renderer",
13836
+ "kanbanRenderer",
13837
+ "dataTableRenderer"
13838
+ ]);
13809
13839
  var commandSourceSchema = exports_external.enum([
13810
13840
  "cli",
13811
13841
  "dashboard",
@@ -13881,33 +13911,19 @@ var extensionArtifactMountSchema = exports_external.object({
13881
13911
  label: localizableStringSchema
13882
13912
  });
13883
13913
  // ../pstdio-api-contracts/src/extensions/targets.ts
13884
- var workbenchMenuTargetSchema = exports_external.enum(["workbench.nav.actions", "workbench.nav.overflow"]);
13885
- var workbenchTreeTargetSchema = exports_external.enum([
13886
- "workbench.left.tree",
13887
- "workbench.main.left.tree",
13888
- "workbench.main.right.tree"
13889
- ]);
13890
- var workbenchViewTargetSchema = exports_external.enum([
13891
- "workbench.main",
13892
- "workbench.main.left",
13893
- "workbench.main.right",
13894
- "workbench.secondary"
13895
- ]);
13896
- var workbenchSettingsTargetSchema = exports_external.enum(["workbench.settings"]);
13897
- var workbenchModeLayoutTargetSchema = exports_external.enum([
13898
- "workbench.left",
13899
- "workbench.main.left",
13900
- "workbench.main",
13901
- "workbench.main.right",
13902
- "workbench.secondary"
13903
- ]);
13914
+ var workbenchMenuTargetSchema = exports_external.enum(workbenchMenuTargets);
13915
+ var workbenchTreeTargetSchema = exports_external.enum(workbenchTreeTargets);
13916
+ var workbenchRegionSchema = exports_external.enum(workbenchRegions);
13917
+ var workbenchViewTargetSchema = exports_external.enum(workbenchViewTargets);
13918
+ var workbenchSettingsTargetSchema = exports_external.enum(workbenchSettingsTargets);
13919
+ var workbenchModeLayoutTargetSchema = exports_external.enum(workbenchModeLayoutTargets);
13904
13920
  var workbenchAttachmentTargetSchema = exports_external.union([
13905
13921
  workbenchMenuTargetSchema,
13906
13922
  workbenchTreeTargetSchema,
13907
13923
  workbenchViewTargetSchema,
13908
13924
  workbenchSettingsTargetSchema
13909
13925
  ]);
13910
- var workbenchSettingsScopeSchema = exports_external.enum(["project", "global"]);
13926
+ var workbenchSettingsScopeSchema = exports_external.enum(workbenchSettingsScopes);
13911
13927
 
13912
13928
  // ../pstdio-api-contracts/src/extensions/commands.ts
13913
13929
  var extensionCommandRecordSchema = exports_external.object({
@@ -13978,36 +13994,88 @@ var extensionControlsRendererRecordSchema = exports_external.object({
13978
13994
  emptyDescription: localizableStringSchema.optional()
13979
13995
  });
13980
13996
 
13981
- // ../pstdio-api-contracts/src/extensions/data-renderer.ts
13982
- var dataRendererEnumOptionSchema = exports_external.object({
13997
+ // ../pstdio-api-contracts/src/extensions/data-table-renderer.ts
13998
+ var themeColorSchema = exports_external.object({
13999
+ light: exports_external.string(),
14000
+ dark: exports_external.string(),
14001
+ foreground: exports_external.object({ light: exports_external.string(), dark: exports_external.string() }).optional()
14002
+ });
14003
+ var columnStatSchema = exports_external.discriminatedUnion("type", [
14004
+ exports_external.object({ type: exports_external.literal("unique") }),
14005
+ exports_external.object({ type: exports_external.literal("histogram"), bins: exports_external.number().int().positive().optional() }),
14006
+ exports_external.object({ type: exports_external.literal("top-values"), limit: exports_external.number().int().positive().optional() })
14007
+ ]);
14008
+ var columnRendererSchema = exports_external.discriminatedUnion("type", [
14009
+ exports_external.object({ type: exports_external.literal("json") }),
14010
+ exports_external.object({
14011
+ type: exports_external.literal("color-scale"),
14012
+ stops: exports_external.array(exports_external.object({ value: exports_external.number(), color: themeColorSchema }))
14013
+ }),
14014
+ exports_external.object({
14015
+ type: exports_external.literal("categorical-color"),
14016
+ categories: exports_external.array(exports_external.object({ value: exports_external.union([exports_external.string(), exports_external.number(), exports_external.boolean(), exports_external.null()]), color: themeColorSchema }))
14017
+ })
14018
+ ]);
14019
+ var dataTableRendererColumnSchema = exports_external.object({
14020
+ id: exports_external.string(),
14021
+ label: localizableStringSchema.optional(),
14022
+ description: localizableStringSchema.optional(),
14023
+ icon: exports_external.string().optional(),
14024
+ hidden: exports_external.boolean().optional(),
14025
+ stat: columnStatSchema.optional(),
14026
+ renderer: columnRendererSchema.optional()
14027
+ });
14028
+ var rowActionSchema = exports_external.object({
14029
+ id: exports_external.string(),
14030
+ label: localizableStringSchema,
14031
+ icon: exports_external.string().optional(),
14032
+ destructive: exports_external.boolean().optional(),
14033
+ commandId: exports_external.string()
14034
+ });
14035
+ var extensionDataTableRendererRecordSchema = exports_external.object({
14036
+ id: exports_external.string(),
14037
+ extensionId: exports_external.string(),
14038
+ title: localizableStringSchema,
14039
+ resourceKind: exports_external.string().optional(),
14040
+ columns: exports_external.array(dataTableRendererColumnSchema).optional(),
14041
+ queryCommandId: exports_external.string(),
14042
+ rowActions: exports_external.array(rowActionSchema).optional(),
14043
+ initialPageSize: exports_external.number().int().positive().optional(),
14044
+ pageSizeOptions: exports_external.array(exports_external.number().int().positive()).optional(),
14045
+ emptyTitle: localizableStringSchema.optional(),
14046
+ emptyDescription: localizableStringSchema.optional()
14047
+ });
14048
+
14049
+ // ../pstdio-api-contracts/src/extensions/kanban-renderer.ts
14050
+ var kanbanRendererEnumOptionSchema = exports_external.object({
13983
14051
  value: exports_external.string(),
13984
14052
  label: localizableStringSchema,
13985
14053
  color: exports_external.string().optional(),
13986
14054
  icon: exports_external.string().nullable().optional()
13987
14055
  });
13988
- var dataRendererAttributeTypeSchema = exports_external.discriminatedUnion("kind", [
13989
- exports_external.object({ kind: exports_external.literal("enum"), options: exports_external.array(dataRendererEnumOptionSchema) }),
13990
- exports_external.object({ kind: exports_external.literal("enum-multi"), options: exports_external.array(dataRendererEnumOptionSchema) }),
14056
+ var kanbanRendererAttributeTypeSchema = exports_external.discriminatedUnion("kind", [
14057
+ exports_external.object({ kind: exports_external.literal("enum"), options: exports_external.array(kanbanRendererEnumOptionSchema) }),
14058
+ exports_external.object({ kind: exports_external.literal("enum-multi"), options: exports_external.array(kanbanRendererEnumOptionSchema) }),
13991
14059
  exports_external.object({ kind: exports_external.literal("string") }),
13992
14060
  exports_external.object({ kind: exports_external.literal("date") }),
13993
14061
  exports_external.object({ kind: exports_external.literal("number") }),
13994
14062
  exports_external.object({ kind: exports_external.literal("user") })
13995
14063
  ]);
13996
- var dataRendererAttributeDisplaySchema = exports_external.discriminatedUnion("kind", [
14064
+ var kanbanRendererAttributeDisplaySchema = exports_external.discriminatedUnion("kind", [
13997
14065
  exports_external.object({ kind: exports_external.literal("workspace-badge"), itemsAttributeId: exports_external.string() })
13998
14066
  ]);
13999
- var dataRendererAttributeSchema = exports_external.object({
14067
+ var kanbanRendererAttributeSchema = exports_external.object({
14000
14068
  id: exports_external.string(),
14001
14069
  label: localizableStringSchema,
14002
- type: dataRendererAttributeTypeSchema,
14070
+ type: kanbanRendererAttributeTypeSchema,
14003
14071
  filterable: exports_external.boolean().optional(),
14004
14072
  groupable: exports_external.boolean().optional(),
14005
14073
  sortable: exports_external.boolean().optional(),
14006
14074
  displayable: exports_external.boolean().optional(),
14007
14075
  editable: exports_external.boolean().optional(),
14008
- display: dataRendererAttributeDisplaySchema.optional()
14076
+ display: kanbanRendererAttributeDisplaySchema.optional()
14009
14077
  });
14010
- var dataRendererSettingsSchema = exports_external.object({
14078
+ var kanbanRendererSettingsSchema = exports_external.object({
14011
14079
  viewMode: exports_external.enum(["board", "list"]),
14012
14080
  columnGrouping: exports_external.string(),
14013
14081
  rowGrouping: exports_external.string(),
@@ -14017,41 +14085,59 @@ var dataRendererSettingsSchema = exports_external.object({
14017
14085
  }),
14018
14086
  displayProperties: exports_external.array(exports_external.string())
14019
14087
  });
14020
- var extensionDataRendererCreateRowSchema = exports_external.object({
14088
+ var kanbanRendererSavedViewSchema = exports_external.object({
14089
+ id: exports_external.string(),
14090
+ title: localizableStringSchema,
14091
+ settings: kanbanRendererSettingsSchema,
14092
+ filters: exports_external.record(exports_external.string(), exports_external.array(exports_external.string())),
14093
+ isDefault: exports_external.boolean().optional()
14094
+ });
14095
+ var extensionKanbanRendererCreateRowSchema = exports_external.object({
14021
14096
  commandId: exports_external.string(),
14022
14097
  title: localizableStringSchema.optional(),
14023
14098
  submitLabel: localizableStringSchema.optional(),
14024
14099
  columnParam: exports_external.string().optional(),
14025
- params: extensionParamObjectSchema.optional()
14100
+ params: extensionParamObjectSchema.optional(),
14101
+ attributesParam: exports_external.string().optional(),
14102
+ attachments: exports_external.object({
14103
+ commandId: exports_external.string(),
14104
+ resourceParam: exports_external.string(),
14105
+ fileParam: exports_external.string()
14106
+ }).optional(),
14107
+ labels: exports_external.object({
14108
+ cancel: localizableStringSchema.optional(),
14109
+ properties: localizableStringSchema.optional(),
14110
+ submitError: localizableStringSchema.optional(),
14111
+ removeFile: localizableStringSchema.optional()
14112
+ }).optional()
14026
14113
  });
14027
- var extensionDataRendererRowActionSchema = exports_external.object({
14114
+ var extensionKanbanRendererRowActionSchema = exports_external.object({
14028
14115
  id: exports_external.string(),
14029
14116
  label: localizableStringSchema,
14030
14117
  icon: exports_external.string().optional(),
14031
14118
  commandId: exports_external.string(),
14032
14119
  destructive: exports_external.boolean().optional()
14033
14120
  });
14034
- var extensionDataRendererRecordSchema = exports_external.object({
14121
+ var extensionKanbanRendererRecordSchema = exports_external.object({
14035
14122
  id: exports_external.string(),
14036
14123
  extensionId: exports_external.string(),
14124
+ extensionInstanceId: exports_external.string().optional(),
14037
14125
  title: localizableStringSchema,
14038
14126
  resourceKind: exports_external.string().optional(),
14039
- attributes: exports_external.array(dataRendererAttributeSchema).optional(),
14127
+ attributes: exports_external.array(kanbanRendererAttributeSchema).optional(),
14040
14128
  queryCommandId: exports_external.string(),
14041
14129
  updateAttributeCommandId: exports_external.string().optional(),
14042
14130
  reorderCommandId: exports_external.string().optional(),
14043
14131
  columnActionCommandId: exports_external.string().optional(),
14044
- createRow: extensionDataRendererCreateRowSchema.optional(),
14045
- rowActions: exports_external.array(extensionDataRendererRowActionSchema).optional(),
14046
- defaultSettings: dataRendererSettingsSchema.partial().optional(),
14132
+ createRow: extensionKanbanRendererCreateRowSchema.optional(),
14133
+ rowActions: exports_external.array(extensionKanbanRendererRowActionSchema).optional(),
14134
+ defaultSettings: kanbanRendererSettingsSchema.partial().optional(),
14047
14135
  defaultFilters: exports_external.record(exports_external.string(), exports_external.array(exports_external.string())).optional(),
14136
+ defaultViews: exports_external.array(kanbanRendererSavedViewSchema).optional(),
14137
+ defaultActiveViewId: exports_external.string().optional(),
14048
14138
  emptyTitle: localizableStringSchema.optional(),
14049
14139
  emptyDescription: localizableStringSchema.optional(),
14050
- hideToolbar: exports_external.boolean().optional(),
14051
- savedViews: exports_external.object({
14052
- resourceKind: exports_external.string(),
14053
- scope: exports_external.enum(["project", "user"]).optional()
14054
- }).optional()
14140
+ hideToolbar: exports_external.boolean().optional()
14055
14141
  });
14056
14142
  var extensionCommandPaletteResourceRecordSchema = exports_external.object({
14057
14143
  id: exports_external.string(),
@@ -14087,89 +14173,51 @@ var extensionKeybindingRecordSchema = exports_external.object({
14087
14173
  args: jsonObjectSchema.optional()
14088
14174
  });
14089
14175
 
14090
- // ../pstdio-api-contracts/src/extensions/renderers.ts
14091
- var extensionTreeRendererRecordSchema = exports_external.object({
14092
- id: exports_external.string(),
14093
- extensionId: exports_external.string(),
14094
- title: localizableStringSchema,
14095
- icon: exports_external.string().optional(),
14096
- bodyCommandId: exports_external.string(),
14097
- childrenCommandId: exports_external.string().optional(),
14098
- footerCommandId: exports_external.string().optional(),
14099
- defaultExpandedSectionIds: exports_external.array(exports_external.string()).optional(),
14100
- defaultExpandedNodeIds: exports_external.array(exports_external.string()).optional()
14101
- });
14102
- var extensionFileRendererRecordSchema = exports_external.object({
14103
- id: exports_external.string(),
14104
- extensionId: exports_external.string(),
14105
- title: localizableStringSchema,
14106
- icon: exports_external.string().optional(),
14107
- resourceKind: exports_external.string().optional(),
14108
- loadCommandId: exports_external.string(),
14109
- saveCommandId: exports_external.string().optional()
14110
- });
14111
-
14112
- // ../pstdio-api-contracts/src/extensions/settings.ts
14113
- var extensionSettingsPanelRecordSchema = exports_external.object({
14176
+ // ../pstdio-api-contracts/src/extensions/panels.ts
14177
+ var hasSinglePanelBody = (value) => [
14178
+ value.webview,
14179
+ value.treeRendererId,
14180
+ value.fileRendererId,
14181
+ value.controlsRendererId,
14182
+ value.dataTableRendererId
14183
+ ].filter(Boolean).length === 1;
14184
+ var singlePanelBodyMessage = "Extension panels must declare exactly one body: webview, treeRendererId, fileRendererId, controlsRendererId, or dataTableRendererId";
14185
+ var hostTreeDefaultSchema = exports_external.enum(["default", "none"]);
14186
+ var panelBodySchema = {
14187
+ webview: extensionWebviewContributionSchema.optional(),
14188
+ treeRendererId: exports_external.string().optional(),
14189
+ fileRendererId: exports_external.string().optional(),
14190
+ controlsRendererId: exports_external.string().optional(),
14191
+ dataTableRendererId: exports_external.string().optional()
14192
+ };
14193
+ var extensionPanelMenuRecordSchema = exports_external.object({
14114
14194
  id: exports_external.string(),
14115
14195
  extensionId: exports_external.string(),
14116
- extensionInstanceId: exports_external.string().optional(),
14117
- installedExtensionId: exports_external.string().optional(),
14118
- installName: exports_external.string().optional(),
14119
- slotId: exports_external.string(),
14120
- target: workbenchSettingsTargetSchema.optional(),
14121
- scope: workbenchSettingsScopeSchema.optional(),
14196
+ ownerPanelId: exports_external.string(),
14122
14197
  title: localizableStringSchema,
14123
- icon: exports_external.string().optional(),
14124
- webview: extensionWebviewContributionSchema
14125
- });
14126
- var extensionSettingDefinitionRecordSchema = exports_external.object({
14127
- key: exports_external.string(),
14128
- extensionId: exports_external.string(),
14129
- type: extensionSettingValueTypeSchema,
14130
- scope: extensionSettingScopeSchema,
14131
- default: exports_external.unknown().optional(),
14132
- enum: exports_external.array(exports_external.unknown()).optional(),
14133
- title: localizableStringSchema.optional(),
14134
- description: localizableStringSchema.optional()
14135
- });
14136
- var extensionSettingValueRecordSchema = extensionSettingDefinitionRecordSchema.extend({
14137
- value: exports_external.unknown().optional(),
14138
- source: extensionSettingSourceSchema
14139
- });
14140
- var listExtensionSettingsResponseSchema = exports_external.object({
14141
- settings: exports_external.array(extensionSettingValueRecordSchema)
14142
- });
14143
- var updateExtensionSettingRequestSchema = exports_external.object({
14144
- value: exports_external.unknown()
14145
- });
14146
- var workbenchExtensionSettingsPanelRecordSchema = extensionSettingsPanelRecordSchema.extend({
14147
- webview: workbenchExtensionWebviewSchema
14148
- });
14149
-
14150
- // ../pstdio-api-contracts/src/extensions/views.ts
14151
- var hasSingleViewBody = (value) => [value.webview, value.treeRendererId, value.fileRendererId, value.controlsRendererId].filter(Boolean).length === 1;
14152
- var singleViewBodyMessage = "Extension views must declare exactly one body: webview, treeRendererId, fileRendererId, or controlsRendererId";
14153
- var hostTreeDefaultSchema = exports_external.enum(["default", "none"]);
14154
- var extensionViewRecordBaseSchema = exports_external.object({
14198
+ side: exports_external.enum(["left", "right"]),
14199
+ group: exports_external.string().optional(),
14200
+ placement: extensionPlacementSchema.optional(),
14201
+ hostTreeHeader: hostTreeDefaultSchema.optional(),
14202
+ hostTreeFooter: hostTreeDefaultSchema.optional(),
14203
+ ...panelBodySchema
14204
+ }).refine(hasSinglePanelBody, { message: singlePanelBodyMessage });
14205
+ var workbenchExtensionPanelMenuRecordSchema = extensionPanelMenuRecordSchema.safeExtend({ webview: workbenchExtensionWebviewSchema.optional() }).refine(hasSinglePanelBody, { message: singlePanelBodyMessage });
14206
+ var extensionPanelRecordBaseSchema = exports_external.object({
14155
14207
  id: exports_external.string(),
14156
14208
  extensionId: exports_external.string(),
14157
- slotId: exports_external.string(),
14158
- target: workbenchViewTargetSchema.optional(),
14159
14209
  title: localizableStringSchema,
14210
+ region: workbenchRegionSchema,
14211
+ closable: exports_external.boolean(),
14160
14212
  group: exports_external.string().optional(),
14161
14213
  placement: extensionPlacementSchema.optional(),
14162
14214
  resourceKind: exports_external.string().optional(),
14163
- surface: exports_external.enum(["panel", "modal"]).optional(),
14164
- webview: extensionWebviewContributionSchema.optional(),
14165
- treeRendererId: exports_external.string().optional(),
14166
- fileRendererId: exports_external.string().optional(),
14167
- controlsRendererId: exports_external.string().optional(),
14168
- hostTreeHeader: hostTreeDefaultSchema.optional(),
14169
- hostTreeFooter: hostTreeDefaultSchema.optional()
14215
+ eligibleLocations: exports_external.object({ resourceKinds: exports_external.array(exports_external.string()).optional() }).optional(),
14216
+ panelMenus: exports_external.array(extensionPanelMenuRecordSchema).optional(),
14217
+ ...panelBodySchema
14170
14218
  });
14171
- var extensionViewRecordSchema = extensionViewRecordBaseSchema.refine(hasSingleViewBody, {
14172
- message: singleViewBodyMessage
14219
+ var extensionPanelRecordSchema = extensionPanelRecordBaseSchema.refine(hasSinglePanelBody, {
14220
+ message: singlePanelBodyMessage
14173
14221
  });
14174
14222
  var extensionRouteRecordSchema = exports_external.object({
14175
14223
  id: exports_external.string(),
@@ -14198,7 +14246,7 @@ var extensionTreeItemActionSchema = exports_external.discriminatedUnion("kind",
14198
14246
  commandId: exports_external.string(),
14199
14247
  args: jsonObjectSchema.optional()
14200
14248
  }),
14201
- exports_external.object({ kind: exports_external.literal("dataRenderer"), dataRendererId: exports_external.string() }),
14249
+ exports_external.object({ kind: exports_external.literal("kanbanRenderer"), kanbanRendererId: exports_external.string() }),
14202
14250
  exports_external.object({ kind: exports_external.literal("route"), route: exports_external.string() }),
14203
14251
  exports_external.object({ kind: exports_external.literal("href"), href: exports_external.string() })
14204
14252
  ]);
@@ -14214,17 +14262,16 @@ var extensionTreeItemContributionSchema = exports_external.object({
14214
14262
  when: extensionWhenExpressionSchema.optional()
14215
14263
  });
14216
14264
  var modeTargetContributionRecordSchema = exports_external.object({
14217
- target: workbenchModeLayoutTargetSchema,
14218
- view: exports_external.string().optional(),
14265
+ panel: exports_external.string().optional(),
14219
14266
  resource: exports_external.string().optional(),
14220
- widget: exports_external.string().optional(),
14267
+ region: workbenchRegionSchema.optional(),
14221
14268
  title: localizableStringSchema.optional(),
14222
14269
  pinned: exports_external.boolean().optional()
14223
- }).refine((value) => value.view || value.resource, {
14224
- message: "Mode layout entries must declare a view or resource"
14270
+ }).refine((value) => value.panel || value.resource, {
14271
+ message: "Mode layout entries must declare a panel or resource"
14225
14272
  });
14226
14273
  var modeLayoutContributionRecordSchema = exports_external.object({
14227
- reset: exports_external.union([exports_external.boolean(), exports_external.array(workbenchModeLayoutTargetSchema)]).optional(),
14274
+ panels: exports_external.array(exports_external.enum(workbenchModePanels)).optional(),
14228
14275
  open: exports_external.array(modeTargetContributionRecordSchema).optional()
14229
14276
  });
14230
14277
  var extensionModeRecordSchema = exports_external.object({
@@ -14236,13 +14283,14 @@ var extensionModeRecordSchema = exports_external.object({
14236
14283
  resourceKind: exports_external.string().optional(),
14237
14284
  layout: modeLayoutContributionRecordSchema.optional()
14238
14285
  });
14239
- var workbenchExtensionViewRecordSchema = extensionViewRecordBaseSchema.extend({
14286
+ var workbenchExtensionPanelRecordSchema = extensionPanelRecordBaseSchema.extend({
14240
14287
  extensionInstanceId: exports_external.string().optional(),
14241
14288
  installedExtensionId: exports_external.string().optional(),
14242
14289
  installName: exports_external.string().optional(),
14243
- webview: workbenchExtensionWebviewSchema.optional()
14244
- }).refine(hasSingleViewBody, {
14245
- message: singleViewBodyMessage
14290
+ webview: workbenchExtensionWebviewSchema.optional(),
14291
+ panelMenus: exports_external.array(workbenchExtensionPanelMenuRecordSchema).optional()
14292
+ }).refine(hasSinglePanelBody, {
14293
+ message: singlePanelBodyMessage
14246
14294
  });
14247
14295
  var workbenchExtensionRouteRecordSchema = extensionRouteRecordSchema.extend({
14248
14296
  extensionInstanceId: exports_external.string().optional(),
@@ -14255,6 +14303,66 @@ var extensionViewLikeSchema = exports_external.object({
14255
14303
  extensionId: exports_external.string()
14256
14304
  });
14257
14305
 
14306
+ // ../pstdio-api-contracts/src/extensions/renderers.ts
14307
+ var extensionTreeRendererRecordSchema = exports_external.object({
14308
+ id: exports_external.string(),
14309
+ extensionId: exports_external.string(),
14310
+ title: localizableStringSchema,
14311
+ icon: exports_external.string().optional(),
14312
+ bodyCommandId: exports_external.string(),
14313
+ childrenCommandId: exports_external.string().optional(),
14314
+ footerCommandId: exports_external.string().optional(),
14315
+ defaultExpandedSectionIds: exports_external.array(exports_external.string()).optional(),
14316
+ defaultExpandedNodeIds: exports_external.array(exports_external.string()).optional()
14317
+ });
14318
+ var extensionFileRendererRecordSchema = exports_external.object({
14319
+ id: exports_external.string(),
14320
+ extensionId: exports_external.string(),
14321
+ title: localizableStringSchema,
14322
+ icon: exports_external.string().optional(),
14323
+ resourceKind: exports_external.string().optional(),
14324
+ loadCommandId: exports_external.string(),
14325
+ saveCommandId: exports_external.string().optional()
14326
+ });
14327
+
14328
+ // ../pstdio-api-contracts/src/extensions/settings.ts
14329
+ var extensionSettingsPanelRecordSchema = exports_external.object({
14330
+ id: exports_external.string(),
14331
+ extensionId: exports_external.string(),
14332
+ extensionInstanceId: exports_external.string().optional(),
14333
+ installedExtensionId: exports_external.string().optional(),
14334
+ installName: exports_external.string().optional(),
14335
+ slotId: exports_external.string(),
14336
+ target: workbenchSettingsTargetSchema.optional(),
14337
+ scope: workbenchSettingsScopeSchema.optional(),
14338
+ title: localizableStringSchema,
14339
+ icon: exports_external.string().optional(),
14340
+ webview: extensionWebviewContributionSchema
14341
+ });
14342
+ var extensionSettingDefinitionRecordSchema = exports_external.object({
14343
+ key: exports_external.string(),
14344
+ extensionId: exports_external.string(),
14345
+ type: extensionSettingValueTypeSchema,
14346
+ scope: extensionSettingScopeSchema,
14347
+ default: exports_external.unknown().optional(),
14348
+ enum: exports_external.array(exports_external.unknown()).optional(),
14349
+ title: localizableStringSchema.optional(),
14350
+ description: localizableStringSchema.optional()
14351
+ });
14352
+ var extensionSettingValueRecordSchema = extensionSettingDefinitionRecordSchema.extend({
14353
+ value: exports_external.unknown().optional(),
14354
+ source: extensionSettingSourceSchema
14355
+ });
14356
+ var listExtensionSettingsResponseSchema = exports_external.object({
14357
+ settings: exports_external.array(extensionSettingValueRecordSchema)
14358
+ });
14359
+ var updateExtensionSettingRequestSchema = exports_external.object({
14360
+ value: exports_external.unknown()
14361
+ });
14362
+ var workbenchExtensionSettingsPanelRecordSchema = extensionSettingsPanelRecordSchema.extend({
14363
+ webview: workbenchExtensionWebviewSchema
14364
+ });
14365
+
14258
14366
  // ../pstdio-api-contracts/src/extensions/check.ts
14259
14367
  var extensionsCheckResponseSchema = exports_external.object({
14260
14368
  extensionsRoot: exports_external.string(),
@@ -14272,12 +14380,13 @@ var extensionsCheckResponseSchema = exports_external.object({
14272
14380
  menuContributions: exports_external.array(extensionMenuContributionSchema),
14273
14381
  commandPaletteContributions: exports_external.array(extensionCommandPaletteContributionSchema),
14274
14382
  modes: exports_external.array(extensionModeRecordSchema),
14275
- views: exports_external.array(extensionViewRecordSchema),
14383
+ panels: exports_external.array(extensionPanelRecordSchema),
14276
14384
  routes: exports_external.array(extensionRouteRecordSchema),
14277
14385
  navigation: exports_external.array(extensionNavigationRecordSchema),
14278
14386
  treeItems: exports_external.array(extensionTreeItemContributionSchema),
14279
14387
  settingsPanels: exports_external.array(extensionSettingsPanelRecordSchema),
14280
- dataRenderers: exports_external.array(extensionDataRendererRecordSchema),
14388
+ kanbanRenderers: exports_external.array(extensionKanbanRendererRecordSchema),
14389
+ dataTableRenderers: exports_external.array(extensionDataTableRendererRecordSchema).optional(),
14281
14390
  commandPaletteResources: exports_external.array(extensionCommandPaletteResourceRecordSchema),
14282
14391
  treeRenderers: exports_external.array(extensionTreeRendererRecordSchema),
14283
14392
  fileRenderers: exports_external.array(extensionFileRendererRecordSchema),
@@ -14294,12 +14403,13 @@ var workbenchExtensionMetadataSchema = exports_external.object({
14294
14403
  menuContributions: exports_external.array(extensionMenuContributionSchema),
14295
14404
  commandPaletteContributions: exports_external.array(extensionCommandPaletteContributionSchema).optional(),
14296
14405
  modes: exports_external.array(extensionModeRecordSchema),
14297
- views: exports_external.array(workbenchExtensionViewRecordSchema),
14406
+ panels: exports_external.array(workbenchExtensionPanelRecordSchema),
14298
14407
  routes: exports_external.array(workbenchExtensionRouteRecordSchema),
14299
14408
  navigation: exports_external.array(extensionNavigationRecordSchema),
14300
14409
  treeItems: exports_external.array(extensionTreeItemContributionSchema).optional(),
14301
14410
  settingsPanels: exports_external.array(workbenchExtensionSettingsPanelRecordSchema),
14302
- dataRenderers: exports_external.array(extensionDataRendererRecordSchema).optional(),
14411
+ kanbanRenderers: exports_external.array(extensionKanbanRendererRecordSchema).optional(),
14412
+ dataTableRenderers: exports_external.array(extensionDataTableRendererRecordSchema).optional(),
14303
14413
  commandPaletteResources: exports_external.array(extensionCommandPaletteResourceRecordSchema).optional(),
14304
14414
  treeRenderers: exports_external.array(extensionTreeRendererRecordSchema).optional(),
14305
14415
  fileRenderers: exports_external.array(extensionFileRendererRecordSchema).optional(),
@@ -14672,6 +14782,8 @@ var sessionStatusSchema = exports_external.enum([
14672
14782
  "cancelled",
14673
14783
  "disconnected"
14674
14784
  ]);
14785
+ var harnessParamValueSchema = exports_external.union([exports_external.string(), exports_external.boolean()]);
14786
+ var harnessParamsInputSchema = exports_external.record(exports_external.string(), harnessParamValueSchema);
14675
14787
  var sessionSchema = exports_external.object({
14676
14788
  id: exports_external.string(),
14677
14789
  project_id: exports_external.string().nullable(),
@@ -14686,6 +14798,7 @@ var sessionSchema = exports_external.object({
14686
14798
  session_file_id: exports_external.string().nullable(),
14687
14799
  original_session_id: exports_external.string().nullable(),
14688
14800
  cwd: exports_external.string().nullable(),
14801
+ params_json: harnessParamsInputSchema.nullable(),
14689
14802
  anchors_json: exports_external.array(extensionResourceRefSchema),
14690
14803
  created_at: exports_external.string(),
14691
14804
  updated_at: exports_external.string()
@@ -14714,6 +14827,7 @@ var createSessionInputSchema = exports_external.object({
14714
14827
  anchors: exports_external.array(extensionResourceRefSchema).optional(),
14715
14828
  attachments: exports_external.array(sessionAttachmentRefSchema).optional(),
14716
14829
  model: exports_external.string().optional(),
14830
+ params: harnessParamsInputSchema.optional(),
14717
14831
  original_session_id: exports_external.string().optional()
14718
14832
  });
14719
14833
  var questionResponseSchema = exports_external.object({
@@ -14726,6 +14840,7 @@ var followUpInputSchema = exports_external.object({
14726
14840
  agent: exports_external.string().optional(),
14727
14841
  model: exports_external.string().optional(),
14728
14842
  question_response: questionResponseSchema.optional(),
14843
+ params: harnessParamsInputSchema.optional(),
14729
14844
  summary_from_session_id: exports_external.string().optional(),
14730
14845
  summary_format: exports_external.enum(["brief", "detailed"]).default("brief").optional(),
14731
14846
  summary_role: exports_external.enum(["assistant", "all"]).default("assistant").optional(),