@harborclient/sdk 1.3.4 → 1.3.6

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.
Files changed (58) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/components/Breadcrumb/SegmentShell.d.ts +12 -1
  3. package/dist/components/Breadcrumb/SegmentShell.d.ts.map +1 -1
  4. package/dist/components/Breadcrumb/SegmentShell.js +7 -5
  5. package/dist/components/Button/index.d.ts +2 -2
  6. package/dist/components/Button/index.d.ts.map +1 -1
  7. package/dist/components/Button/index.js +2 -1
  8. package/dist/components/CodeEditor/index.d.ts +7 -4
  9. package/dist/components/CodeEditor/index.d.ts.map +1 -1
  10. package/dist/components/CodeEditor/index.js +15 -176
  11. package/dist/components/CodeEditor/selectionActionToolbar.d.ts +162 -0
  12. package/dist/components/CodeEditor/selectionActionToolbar.d.ts.map +1 -0
  13. package/dist/components/CodeEditor/selectionActionToolbar.js +319 -0
  14. package/dist/components/CopyToChatButton/constants.d.ts +18 -0
  15. package/dist/components/CopyToChatButton/constants.d.ts.map +1 -0
  16. package/dist/components/CopyToChatButton/constants.js +19 -0
  17. package/dist/components/CopyToChatButton/index.d.ts +49 -0
  18. package/dist/components/CopyToChatButton/index.d.ts.map +1 -0
  19. package/dist/components/CopyToChatButton/index.js +43 -0
  20. package/dist/components/FloatingDialog/floatingDialogPosition.d.ts +52 -0
  21. package/dist/components/FloatingDialog/floatingDialogPosition.d.ts.map +1 -0
  22. package/dist/components/FloatingDialog/floatingDialogPosition.js +33 -0
  23. package/dist/components/FloatingDialog/index.d.ts +99 -0
  24. package/dist/components/FloatingDialog/index.d.ts.map +1 -0
  25. package/dist/components/FloatingDialog/index.js +279 -0
  26. package/dist/components/PageHeader/index.d.ts +2 -1
  27. package/dist/components/PageHeader/index.d.ts.map +1 -1
  28. package/dist/components/PageHeader/index.js +3 -2
  29. package/dist/components/SidebarItem/SidebarEnvironmentItem.d.ts +42 -4
  30. package/dist/components/SidebarItem/SidebarEnvironmentItem.d.ts.map +1 -1
  31. package/dist/components/SidebarItem/SidebarEnvironmentItem.js +34 -5
  32. package/dist/components/SidebarItem/SidebarRequestItem.d.ts +5 -1
  33. package/dist/components/SidebarItem/SidebarRequestItem.d.ts.map +1 -1
  34. package/dist/components/SidebarItem/SidebarRequestItem.js +2 -2
  35. package/dist/components/SidebarItem/SidebarWorkspaceItem.d.ts +9 -1
  36. package/dist/components/SidebarItem/SidebarWorkspaceItem.d.ts.map +1 -1
  37. package/dist/components/SidebarItem/SidebarWorkspaceItem.js +15 -2
  38. package/dist/components/TabBar/TabContextMenu.d.ts +3 -0
  39. package/dist/components/TabBar/TabContextMenu.d.ts.map +1 -1
  40. package/dist/components/TabBar/TabContextMenu.js +25 -16
  41. package/dist/components/VariableTable/index.d.ts +1 -1
  42. package/dist/components/VariableTable/index.d.ts.map +1 -1
  43. package/dist/components/VariableTable/index.js +14 -3
  44. package/dist/components/index.d.ts +4 -2
  45. package/dist/components/index.d.ts.map +1 -1
  46. package/dist/components/index.js +3 -1
  47. package/dist/runtime/createBridgedPluginContext.js +74 -0
  48. package/dist/snippets.d.ts +26 -2
  49. package/dist/styles.css +16 -0
  50. package/dist/types.d.ts +273 -1
  51. package/dist/types.d.ts.map +1 -1
  52. package/dist/ui/index.d.ts +1 -0
  53. package/dist/ui/index.d.ts.map +1 -1
  54. package/dist/ui/index.js +1 -0
  55. package/package.json +1 -1
  56. package/dist/components/SelectionActionToolbar/index.d.ts +0 -41
  57. package/dist/components/SelectionActionToolbar/index.d.ts.map +0 -1
  58. package/dist/components/SelectionActionToolbar/index.js +0 -13
@@ -2,20 +2,13 @@ import { jsx as _jsx } from "@harborclient/sdk/jsx-runtime";
2
2
  import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from '@harborclient/sdk/react';
3
3
  import { clampMenuPosition } from '../menuPosition.js';
4
4
  import { portalToBody } from '../portalToBody.js';
5
+ import { findAdjacentEnabledIndex, findEdgeEnabledIndex, isMenuItemEnabled, menuItemClass } from '../rowActionsMenuHelpers.js';
5
6
  import { cn, resolveTabListKeyAction } from '../utils.js';
6
- /**
7
- * Tailwind classes for a single menu item button.
8
- *
9
- * @param variant - Visual variant for default or destructive actions.
10
- */
11
- function menuItemClass(variant) {
12
- const base = 'block w-full cursor-pointer border-none bg-transparent px-3.5 py-1.5 text-left app-no-drag';
13
- return variant === 'danger'
14
- ? `${base} text-text hover:bg-danger/15 hover:text-danger`
15
- : `${base} text-text hover:bg-selection`;
16
- }
17
7
  /**
18
8
  * Cursor-positioned context menu for tab bars, rendered in a portal at the click point.
9
+ *
10
+ * @param props - Menu groups, cursor anchor, and close handler.
11
+ * @returns Portal menu panel, or null when there are no items.
19
12
  */
20
13
  export function TabContextMenu({ groups, position, onClose }) {
21
14
  const menuRef = useRef(null);
@@ -41,7 +34,7 @@ export function TabContextMenu({ groups, position, onClose }) {
41
34
  });
42
35
  }, []);
43
36
  /**
44
- * Re-clamps the menu after mount and focuses the first item once dimensions are known.
37
+ * Re-clamps the menu after mount and focuses the first enabled item once dimensions are known.
45
38
  */
46
39
  useLayoutEffect(() => {
47
40
  const menu = menuRef.current;
@@ -53,8 +46,11 @@ export function TabContextMenu({ groups, position, onClose }) {
53
46
  width: rect.width,
54
47
  height: rect.height
55
48
  }));
56
- itemRefs.current[0]?.focus();
57
- }, [position, groups]);
49
+ const firstEnabled = findEdgeEnabledIndex(flatItems, false);
50
+ if (firstEnabled != null) {
51
+ focusItem(firstEnabled);
52
+ }
53
+ }, [position, groups, flatItems, focusItem]);
58
54
  /**
59
55
  * Closes the menu on outside click or Escape while it is open.
60
56
  */
@@ -90,6 +86,15 @@ export function TabContextMenu({ groups, position, onClose }) {
90
86
  closeMenu();
91
87
  return;
92
88
  }
89
+ if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {
90
+ const direction = event.key === 'ArrowDown' ? 1 : -1;
91
+ const next = findAdjacentEnabledIndex(flatItems, focusedIndex, direction);
92
+ if (next != null) {
93
+ event.preventDefault();
94
+ focusItem(next);
95
+ }
96
+ return;
97
+ }
93
98
  const arrowIndex = resolveTabListKeyAction(event.key, focusedIndex, flatItems.length);
94
99
  if (arrowIndex !== null) {
95
100
  event.preventDefault();
@@ -99,7 +104,7 @@ export function TabContextMenu({ groups, position, onClose }) {
99
104
  if (flatItems.length === 0) {
100
105
  return null;
101
106
  }
102
- return portalToBody(_jsx("div", { ref: menuRef, role: "menu", "aria-label": "Tab actions", className: "hc-tab-context-menu app-no-drag fixed z-50 min-w-[200px] rounded-md border border-separator bg-surface py-1 shadow-md", style: { left: clampedPosition.x, top: clampedPosition.y }, onKeyDown: handleMenuKeyDown, children: groups.map((group, groupIndex) => {
107
+ return portalToBody(_jsx("div", { ref: menuRef, role: "menu", "aria-label": "Tab actions", className: "hc-tab-context-menu app-no-drag fixed z-[70] min-w-[200px] rounded-md border border-separator bg-surface py-1 shadow-md", style: { left: clampedPosition.x, top: clampedPosition.y }, onKeyDown: handleMenuKeyDown, children: groups.map((group, groupIndex) => {
103
108
  let flatIndex = groups
104
109
  .slice(0, groupIndex)
105
110
  .reduce((count, groupItems) => count + groupItems.length, 0);
@@ -107,10 +112,14 @@ export function TabContextMenu({ groups, position, onClose }) {
107
112
  ? 'hc-tab-context-menu-group border-t border-separator'
108
113
  : 'hc-tab-context-menu-group', children: group.map((item) => {
109
114
  const itemIndex = flatIndex++;
115
+ const disabled = !isMenuItemEnabled(item);
110
116
  return (_jsx("button", { ref: (element) => {
111
117
  itemRefs.current[itemIndex] = element;
112
- }, type: "button", role: "menuitem", tabIndex: itemIndex === focusedIndex ? 0 : -1, className: cn('hc-tab-context-menu-item', menuItemClass(item.variant)), onClick: (event) => {
118
+ }, type: "button", role: "menuitem", disabled: disabled, tabIndex: itemIndex === focusedIndex && !disabled ? 0 : -1, className: cn('hc-tab-context-menu-item', menuItemClass(item.variant, disabled)), onClick: (event) => {
113
119
  event.stopPropagation();
120
+ if (disabled) {
121
+ return;
122
+ }
114
123
  closeMenu();
115
124
  item.onSelect?.();
116
125
  }, children: item.label }, item.label));
@@ -19,7 +19,7 @@ interface Props extends Omit<ComponentPropsWithoutRef<'div'>, 'children' | 'onCh
19
19
  focusKey?: string;
20
20
  }
21
21
  /**
22
- * Editable table for key/value/default/share variable rows.
22
+ * Editable table for key/value/default/share variable rows with an enable toggle.
23
23
  */
24
24
  export declare function VariableTable({ variables, onChange, description, focusKey, className, ...props }: Props): JSX.Element;
25
25
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/VariableTable/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,GAAG,EAAqB,MAAM,OAAO,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAY/C,UAAU,KAAM,SAAQ,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACpF;;OAEG;IACH,SAAS,EAAE,QAAQ,EAAE,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAE1C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA4JrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/VariableTable/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,GAAG,EAAqB,MAAM,OAAO,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAkB/C,UAAU,KAAM,SAAQ,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACpF;;OAEG;IACH,SAAS,EAAE,QAAQ,EAAE,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAE1C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA4KrB"}
@@ -9,15 +9,24 @@ import { cn } from '../utils.js';
9
9
  /**
10
10
  * Returns a blank variable row for new table entries.
11
11
  */
12
- const emptyVariable = () => ({ key: '', value: '', defaultValue: '', share: false });
12
+ const emptyVariable = () => ({
13
+ key: '',
14
+ value: '',
15
+ defaultValue: '',
16
+ enabled: true,
17
+ share: false
18
+ });
13
19
  /**
14
- * Editable table for key/value/default/share variable rows.
20
+ * Editable table for key/value/default/share variable rows with an enable toggle.
15
21
  */
16
22
  export function VariableTable({ variables, onChange, description, focusKey, className, ...props }) {
17
23
  const valueInputRefs = useRef(new Map());
18
24
  const lastFocusedKeyRef = useRef(undefined);
19
25
  /**
20
26
  * Updates a single variable row by index.
27
+ *
28
+ * @param index - Row index to patch.
29
+ * @param patch - Fields to merge into the row.
21
30
  */
22
31
  const updateVariable = (index, patch) => {
23
32
  onChange(variables.map((row, i) => (i === index ? { ...row, ...patch } : row)));
@@ -30,6 +39,8 @@ export function VariableTable({ variables, onChange, description, focusKey, clas
30
39
  };
31
40
  /**
32
41
  * Removes a variable row, keeping at least one empty row.
42
+ *
43
+ * @param index - Row index to remove.
33
44
  */
34
45
  const removeVariable = (index) => {
35
46
  if (variables.length === 1) {
@@ -69,7 +80,7 @@ export function VariableTable({ variables, onChange, description, focusKey, clas
69
80
  });
70
81
  });
71
82
  }, [focusKey, variables]);
72
- return (_jsxs("div", { ...props, className: cn('hc-variable-table', className), children: [description && (_jsx("p", { className: "hc-variable-table-description mb-3 text-[14px] text-muted", children: description })), _jsxs("div", { className: "hc-variable-table-content flex flex-col gap-1.5", children: [_jsxs(Table, { children: [_jsx(TableHeader, { children: _jsxs("tr", { children: [_jsx(TableHead, { children: "Key" }), _jsx(TableHead, { children: "Value" }), _jsx(TableHead, { children: "Default" }), _jsx(TableHead, { className: "w-14 text-center", children: "Share" }), _jsx(TableHead, { className: "w-7 p-0 text-center" })] }) }), _jsx(TableBody, { children: variables.map((variable, index) => (_jsxs("tr", { children: [_jsx(TableCell, { children: _jsx(Input, { type: "text", className: "w-full", value: variable.key, placeholder: "variable", "aria-label": `Key, row ${index + 1}`, onChange: (e) => updateVariable(index, { key: e.target.value }) }) }), _jsx(TableCell, { children: _jsx(Input, { ref: (element) => {
83
+ return (_jsxs("div", { ...props, className: cn('hc-variable-table', className), children: [description && (_jsx("p", { className: "hc-variable-table-description mb-3 text-[14px] text-muted", children: description })), _jsxs("div", { className: "hc-variable-table-content flex flex-col gap-1.5", children: [_jsxs(Table, { children: [_jsx(TableHeader, { children: _jsxs("tr", { children: [_jsx(TableHead, { className: "w-6 p-0", children: _jsx("span", { className: "sr-only", children: "Enable" }) }), _jsx(TableHead, { children: "Key" }), _jsx(TableHead, { children: "Value" }), _jsx(TableHead, { children: "Default" }), _jsx(TableHead, { className: "w-14 text-center", children: "Share" }), _jsx(TableHead, { className: "w-7 p-0 text-center" })] }) }), _jsx(TableBody, { children: variables.map((variable, index) => (_jsxs("tr", { children: [_jsx(TableCell, { className: "w-6 text-center", children: _jsx(Checkbox, { checked: variable.enabled !== false, onChange: (e) => updateVariable(index, { enabled: e.target.checked }), "aria-label": `Enable, row ${index + 1}`, title: "Enable variable" }) }), _jsx(TableCell, { children: _jsx(Input, { type: "text", className: "w-full", value: variable.key, placeholder: "variable", "aria-label": `Key, row ${index + 1}`, onChange: (e) => updateVariable(index, { key: e.target.value }) }) }), _jsx(TableCell, { children: _jsx(Input, { ref: (element) => {
73
84
  if (element)
74
85
  valueInputRefs.current.set(index, element);
75
86
  else
@@ -18,6 +18,8 @@ export type { StatusDotVariant, StatusDotSize } from './StatusDot/index.js';
18
18
  export { Breadcrumb } from './Breadcrumb/index.js';
19
19
  export type { BreadcrumbSegment } from './Breadcrumb/index.js';
20
20
  export { Button } from './Button/index.js';
21
+ export { CopyToChatButton, COPY_TO_CHAT_ICON, COPY_TO_CHAT_LABEL, COPY_TO_CHAT_SHORTCUT_CODEMIRROR_KEY, COPY_TO_CHAT_SHORTCUT_HINT, COPY_TO_CHAT_SHORTCUT_LETTER, copyToChatActionLabel } from './CopyToChatButton/index.js';
22
+ export type { Props as CopyToChatButtonProps } from './CopyToChatButton/index.js';
21
23
  export { CodeEditor, CODE_EDITOR_THEME_OPTIONS } from './CodeEditor/index.js';
22
24
  export { CodeEditorConfigProvider, useCodeEditorConfig, DEFAULT_CODE_EDITOR_CONFIG } from './CodeEditor/config.js';
23
25
  export type { CodeEditorConfig } from './CodeEditor/config.js';
@@ -44,6 +46,8 @@ export type { Props as KeyValueEditorProps } from './KeyValueEditor/index.js';
44
46
  export { MethodSelect } from './MethodSelect/index.js';
45
47
  export { Modal, ModalFooter, ModalFormLayout } from './Modal/index.js';
46
48
  export { ModalHeader } from './Modal/ModalHeader.js';
49
+ export { FloatingDialog } from './FloatingDialog/index.js';
50
+ export { FLOATING_DIALOG_DEFAULT_LEFT, FLOATING_DIALOG_DEFAULT_TOP, FLOATING_DIALOG_VIEWPORT_MARGIN_PX, isFloatingDialogFullyOnScreen, type FloatingDialogPosition, type FloatingDialogSize } from './FloatingDialog/floatingDialogPosition.js';
47
51
  export { PromptModal } from './PromptModal/index.js';
48
52
  export type { Props as PromptModalProps } from './PromptModal/index.js';
49
53
  export { defaultCanSubmitPromptValue } from './PromptModal/promptModal.logic.js';
@@ -61,8 +65,6 @@ export type { Props as ProgressBarProps } from './ProgressBar/index.js';
61
65
  export { applyResizableSizes, Resizable, RESIZABLE_SYNC_EVENT, ResizeHandle, useResizable } from './Resizable/index.js';
62
66
  export type { UseResizableOptions, UseResizableResult } from './Resizable/useResizable.js';
63
67
  export { Scrollbars, type ScrollbarsAxis } from './Scrollbars/index.js';
64
- export { SelectionActionToolbar } from './SelectionActionToolbar/index.js';
65
- export type { Props as SelectionActionToolbarProps } from './SelectionActionToolbar/index.js';
66
68
  export { ScreenshotCarousel } from './ScreenshotCarousel/index.js';
67
69
  export { ScreenshotLightbox } from './ScreenshotCarousel/ScreenshotLightbox.js';
68
70
  export { screenshotCarouselImageFrameClassName, screenshotCarouselLightboxEnabled, type ScreenshotCarouselVariant } from './ScreenshotCarousel/variants.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export { Badge } from './Badge/index.js';
12
12
  export { StatusDot, statusDotVariantClass } from './StatusDot/index.js';
13
13
  export { Breadcrumb } from './Breadcrumb/index.js';
14
14
  export { Button } from './Button/index.js';
15
+ export { CopyToChatButton, COPY_TO_CHAT_ICON, COPY_TO_CHAT_LABEL, COPY_TO_CHAT_SHORTCUT_CODEMIRROR_KEY, COPY_TO_CHAT_SHORTCUT_HINT, COPY_TO_CHAT_SHORTCUT_LETTER, copyToChatActionLabel } from './CopyToChatButton/index.js';
15
16
  export { CodeEditor, CODE_EDITOR_THEME_OPTIONS } from './CodeEditor/index.js';
16
17
  export { CodeEditorConfigProvider, useCodeEditorConfig, DEFAULT_CODE_EDITOR_CONFIG } from './CodeEditor/config.js';
17
18
  export { EmptyState } from './EmptyState/index.js';
@@ -31,6 +32,8 @@ export { KeyValueEditor } from './KeyValueEditor/index.js';
31
32
  export { MethodSelect } from './MethodSelect/index.js';
32
33
  export { Modal, ModalFooter, ModalFormLayout } from './Modal/index.js';
33
34
  export { ModalHeader } from './Modal/ModalHeader.js';
35
+ export { FloatingDialog } from './FloatingDialog/index.js';
36
+ export { FLOATING_DIALOG_DEFAULT_LEFT, FLOATING_DIALOG_DEFAULT_TOP, FLOATING_DIALOG_VIEWPORT_MARGIN_PX, isFloatingDialogFullyOnScreen } from './FloatingDialog/floatingDialogPosition.js';
34
37
  export { PromptModal } from './PromptModal/index.js';
35
38
  export { defaultCanSubmitPromptValue } from './PromptModal/promptModal.logic.js';
36
39
  export { portalToBody } from './portalToBody.js';
@@ -44,7 +47,6 @@ export { PanelCloseButton } from './PanelCloseButton/index.js';
44
47
  export { ProgressBar } from './ProgressBar/index.js';
45
48
  export { applyResizableSizes, Resizable, RESIZABLE_SYNC_EVENT, ResizeHandle, useResizable } from './Resizable/index.js';
46
49
  export { Scrollbars } from './Scrollbars/index.js';
47
- export { SelectionActionToolbar } from './SelectionActionToolbar/index.js';
48
50
  export { ScreenshotCarousel } from './ScreenshotCarousel/index.js';
49
51
  export { ScreenshotLightbox } from './ScreenshotCarousel/ScreenshotLightbox.js';
50
52
  export { screenshotCarouselImageFrameClassName, screenshotCarouselLightboxEnabled } from './ScreenshotCarousel/variants.js';
@@ -795,6 +795,47 @@ export function createBridgedPluginContext({ pluginId, mode, contributionId, rea
795
795
  });
796
796
  });
797
797
  },
798
+ registerWorkflowToolbarAction: (action) => {
799
+ assertManifestContribution('workflowToolbarActions', action.id);
800
+ if (!isAgent) {
801
+ return noopDisposable();
802
+ }
803
+ void bridgeInvoke('registerContribution', {
804
+ kind: 'workflowToolbarActions',
805
+ contribution: {
806
+ pluginId,
807
+ id: action.id,
808
+ title: action.title,
809
+ command: action.command,
810
+ icon: action.icon,
811
+ order: action.order
812
+ }
813
+ });
814
+ return track(() => {
815
+ void bridgeInvoke('unregisterContribution', {
816
+ kind: 'workflowToolbarActions',
817
+ contributionId: action.id
818
+ });
819
+ });
820
+ },
821
+ registerWorkflowActionBlock: (block) => {
822
+ assertManifestContribution('workflowActionBlocks', block.id);
823
+ if (!canRegisterUi()) {
824
+ return noopDisposable();
825
+ }
826
+ return registerUiContribution(
827
+ 'workflowActionBlocks',
828
+ block.id,
829
+ {
830
+ id: `plugin:${pluginId}:${block.id}`,
831
+ title: block.title,
832
+ order: block.order,
833
+ actionTypes: block.actionTypes,
834
+ contributionId: block.id
835
+ },
836
+ block.Component
837
+ );
838
+ },
798
839
  registerContextMenuItem: (item) => {
799
840
  assertManifestContribution('contextMenus', item.id);
800
841
  if (!isAgent) {
@@ -1044,6 +1085,39 @@ export function createBridgedPluginContext({ pluginId, mode, contributionId, rea
1044
1085
  }
1045
1086
  });
1046
1087
  },
1088
+ listWorkflows: async () => {
1089
+ assertUi();
1090
+ return bridgeInvoke('host.listWorkflows');
1091
+ },
1092
+ getWorkflow: async (workflowId) => {
1093
+ assertUi();
1094
+ return bridgeInvoke('host.getWorkflow', { workflowId });
1095
+ },
1096
+ createWorkflow: async (input) => {
1097
+ assertUi();
1098
+ return bridgeInvoke('host.createWorkflow', { input });
1099
+ },
1100
+ updateWorkflow: async (input) => {
1101
+ assertUi();
1102
+ return bridgeInvoke('host.updateWorkflow', { input });
1103
+ },
1104
+ renameWorkflow: async (workflowId, name) => {
1105
+ assertUi();
1106
+ return bridgeInvoke('host.renameWorkflow', { workflowId, name });
1107
+ },
1108
+ deleteWorkflow: async (workflowId) => {
1109
+ assertUi();
1110
+ await bridgeInvoke('host.deleteWorkflow', { workflowId });
1111
+ },
1112
+ onWorkflowsChanged: (listener) => {
1113
+ assertUi();
1114
+ const unsubscribe = bridgeOn('workflows.changed', listener);
1115
+ return track({
1116
+ dispose: () => {
1117
+ unsubscribe();
1118
+ }
1119
+ });
1120
+ },
1047
1121
  listCollectionRequests: async (collectionId, folderId) => {
1048
1122
  assertUi();
1049
1123
  return bridgeInvoke('host.listCollectionRequests', { collectionId, folderId });
@@ -66,7 +66,12 @@ interface HcVariableBagApi {
66
66
  set(key: string, value: unknown): void;
67
67
 
68
68
  /**
69
- * Removes a single key from this scope for the remainder of the script run.
69
+ * Removes a single key, or every key under a namespace prefix.
70
+ *
71
+ * Pass an exact key (`'token'`) or a trailing `.*` pattern
72
+ * (`'workflow_a.*'`) to clear `workflow_a.foo`, `workflow_a.foo.bar`, etc.
73
+ * The bare namespace key (`'workflow_a'`) is not cleared by the pattern.
74
+ * Non-request scopes persist clears after send.
70
75
  */
71
76
  clear(key: string): void;
72
77
  }
@@ -189,7 +194,7 @@ interface HcCookieApi {
189
194
  }
190
195
 
191
196
  /**
192
- * Collection runner flow control available in pre/post scripts during a run.
197
+ * Collection runner and workflow flow control available in pre/post scripts.
193
198
  */
194
199
  interface HcExecutionApi {
195
200
  /**
@@ -201,6 +206,19 @@ interface HcExecutionApi {
201
206
  * Skips the HTTP send and post-request scripts for the current request.
202
207
  */
203
208
  skipRequest(): void;
209
+
210
+ /**
211
+ * Jumps to the workflow action with the given UUID after the current action finishes.
212
+ * No-op when the script is not running inside a workflow.
213
+ */
214
+ workflowNextAction(actionId: string): void;
215
+
216
+ /**
217
+ * Skips the remainder of the current workflow action and advances to the next.
218
+ * During request.send pre-scripts, also skips the HTTP send and post-request scripts.
219
+ * No-op when the script is not running inside a workflow.
220
+ */
221
+ workflowSkipAction(): void;
204
222
  }
205
223
 
206
224
  /**
@@ -215,6 +233,12 @@ interface HcInfoApi {
215
233
  readonly requestId: string;
216
234
  /** Collection run iteration index; 0 for manual sends and non-data-driven runs. */
217
235
  readonly iteration: number;
236
+ /** UUID of the workflow being played, or empty when not in a workflow. */
237
+ readonly workflowId: string;
238
+ /** UUID of the workflow action currently executing, or empty when not in a workflow. */
239
+ readonly workflowActionId: string;
240
+ /** 0-based index of the workflow action currently executing, or -1 when not in a workflow. */
241
+ readonly workflowActionIteration: number;
218
242
  }
219
243
 
220
244
  /**
package/dist/styles.css CHANGED
@@ -117,3 +117,19 @@ body {
117
117
  font-size: 16px;
118
118
  line-height: 1.5;
119
119
  }
120
+
121
+ /**
122
+ * Labeled Copy to chat: darken the trailing segment so it reads over code editors.
123
+ * Light theme keeps breadcrumb-current; request breadcrumbs are unaffected.
124
+ */
125
+ :root[data-theme='dark'] .hc-copy-to-chat-button .hc-breadcrumb-segment.bg-breadcrumb-current {
126
+ background-color: var(--mac-surface);
127
+ }
128
+
129
+ @media (prefers-color-scheme: dark) {
130
+ :root:not([data-theme='light'])
131
+ .hc-copy-to-chat-button
132
+ .hc-breadcrumb-segment.bg-breadcrumb-current {
133
+ background-color: var(--mac-surface);
134
+ }
135
+ }