@harborclient/sdk 1.3.2 → 1.3.4

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 (102) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/components/AnchorMenuPanel/index.d.ts +35 -0
  3. package/dist/components/AnchorMenuPanel/index.d.ts.map +1 -0
  4. package/dist/components/AnchorMenuPanel/index.js +364 -0
  5. package/dist/components/ColorPicker/index.d.ts +5 -1
  6. package/dist/components/ColorPicker/index.d.ts.map +1 -1
  7. package/dist/components/ColorPicker/index.js +2 -2
  8. package/dist/components/FilterButton/FilterButtonIcon.d.ts +29 -0
  9. package/dist/components/FilterButton/FilterButtonIcon.d.ts.map +1 -0
  10. package/dist/components/FilterButton/FilterButtonIcon.js +18 -0
  11. package/dist/components/FilterButton/index.d.ts +26 -0
  12. package/dist/components/FilterButton/index.d.ts.map +1 -0
  13. package/dist/components/FilterButton/index.js +14 -0
  14. package/dist/components/FormGroup/index.d.ts +7 -1
  15. package/dist/components/FormGroup/index.d.ts.map +1 -1
  16. package/dist/components/FormGroup/index.js +8 -11
  17. package/dist/components/PageSidebar/index.d.ts +1 -0
  18. package/dist/components/PageSidebar/index.d.ts.map +1 -1
  19. package/dist/components/PageSidebar/index.js +4 -13
  20. package/dist/components/Resizable/applyResizableSizes.d.ts +11 -0
  21. package/dist/components/Resizable/applyResizableSizes.d.ts.map +1 -0
  22. package/dist/components/Resizable/applyResizableSizes.js +34 -0
  23. package/dist/components/Resizable/footerPanelUtils.d.ts +1 -1
  24. package/dist/components/Resizable/footerPanelUtils.js +4 -4
  25. package/dist/components/Resizable/index.d.ts +1 -0
  26. package/dist/components/Resizable/index.d.ts.map +1 -1
  27. package/dist/components/Resizable/index.js +1 -0
  28. package/dist/components/Resizable/useResizable.d.ts +7 -1
  29. package/dist/components/Resizable/useResizable.d.ts.map +1 -1
  30. package/dist/components/Resizable/useResizable.js +141 -11
  31. package/dist/components/RowActionsMenu/index.d.ts +7 -1
  32. package/dist/components/RowActionsMenu/index.d.ts.map +1 -1
  33. package/dist/components/RowActionsMenu/index.js +40 -18
  34. package/dist/components/SettingFieldActions/index.d.ts +42 -0
  35. package/dist/components/SettingFieldActions/index.d.ts.map +1 -0
  36. package/dist/components/SettingFieldActions/index.js +66 -0
  37. package/dist/components/SidebarItem/SidebarDocumentItem.d.ts +6 -6
  38. package/dist/components/SidebarItem/SidebarDocumentItem.d.ts.map +1 -1
  39. package/dist/components/SidebarItem/SidebarDocumentItem.js +4 -4
  40. package/dist/components/SidebarItem/SidebarEnvironmentItem.d.ts +4 -4
  41. package/dist/components/SidebarItem/SidebarEnvironmentItem.d.ts.map +1 -1
  42. package/dist/components/SidebarItem/SidebarEnvironmentItem.js +3 -3
  43. package/dist/components/SidebarItem/SidebarFolderItem.d.ts +5 -5
  44. package/dist/components/SidebarItem/SidebarFolderItem.d.ts.map +1 -1
  45. package/dist/components/SidebarItem/SidebarFolderItem.js +4 -4
  46. package/dist/components/SidebarItem/SidebarHistoryItem.d.ts +13 -1
  47. package/dist/components/SidebarItem/SidebarHistoryItem.d.ts.map +1 -1
  48. package/dist/components/SidebarItem/SidebarHistoryItem.js +3 -3
  49. package/dist/components/SidebarItem/SidebarMarkerDot.d.ts +22 -0
  50. package/dist/components/SidebarItem/SidebarMarkerDot.d.ts.map +1 -0
  51. package/dist/components/SidebarItem/SidebarMarkerDot.js +11 -0
  52. package/dist/components/SidebarItem/SidebarMethodBadge.d.ts +9 -1
  53. package/dist/components/SidebarItem/SidebarMethodBadge.d.ts.map +1 -1
  54. package/dist/components/SidebarItem/SidebarMethodBadge.js +7 -5
  55. package/dist/components/SidebarItem/SidebarRequestItem.d.ts +9 -5
  56. package/dist/components/SidebarItem/SidebarRequestItem.d.ts.map +1 -1
  57. package/dist/components/SidebarItem/SidebarRequestItem.js +4 -4
  58. package/dist/components/SidebarItem/SidebarRunItem.d.ts +9 -1
  59. package/dist/components/SidebarItem/SidebarRunItem.d.ts.map +1 -1
  60. package/dist/components/SidebarItem/SidebarRunItem.js +2 -2
  61. package/dist/components/SidebarItem/SidebarStatusDot.d.ts +11 -1
  62. package/dist/components/SidebarItem/SidebarStatusDot.d.ts.map +1 -1
  63. package/dist/components/SidebarItem/SidebarStatusDot.js +10 -1
  64. package/dist/components/SidebarItem/{SidebarTabGroupItem.d.ts → SidebarWorkspaceItem.d.ts} +9 -9
  65. package/dist/components/SidebarItem/SidebarWorkspaceItem.d.ts.map +1 -0
  66. package/dist/components/SidebarItem/{SidebarTabGroupItem.js → SidebarWorkspaceItem.js} +4 -4
  67. package/dist/components/SidebarItem/index.d.ts +3 -3
  68. package/dist/components/SidebarItem/index.d.ts.map +1 -1
  69. package/dist/components/SidebarItem/index.js +3 -3
  70. package/dist/components/SidebarItem/sidebarItemClasses.d.ts +17 -0
  71. package/dist/components/SidebarItem/sidebarItemClasses.d.ts.map +1 -1
  72. package/dist/components/SidebarItem/sidebarItemClasses.js +26 -2
  73. package/dist/components/SidebarSection/SectionItem.d.ts.map +1 -1
  74. package/dist/components/SidebarSection/SectionItem.js +3 -1
  75. package/dist/components/SortButton/SortButtonIcon.d.ts +29 -0
  76. package/dist/components/SortButton/SortButtonIcon.d.ts.map +1 -0
  77. package/dist/components/SortButton/SortButtonIcon.js +18 -0
  78. package/dist/components/SortButton/SortMenu.d.ts +42 -0
  79. package/dist/components/SortButton/SortMenu.d.ts.map +1 -0
  80. package/dist/components/SortButton/SortMenu.js +137 -0
  81. package/dist/components/SortButton/SortMenuOption.d.ts +35 -0
  82. package/dist/components/SortButton/SortMenuOption.d.ts.map +1 -0
  83. package/dist/components/SortButton/SortMenuOption.js +18 -0
  84. package/dist/components/SortButton/index.d.ts +32 -0
  85. package/dist/components/SortButton/index.d.ts.map +1 -0
  86. package/dist/components/SortButton/index.js +15 -0
  87. package/dist/components/SortButton/sortOptions.d.ts +14 -0
  88. package/dist/components/SortButton/sortOptions.d.ts.map +1 -0
  89. package/dist/components/SortButton/sortOptions.js +1 -0
  90. package/dist/components/TabBar/types.d.ts +1 -1
  91. package/dist/components/index.d.ts +9 -2
  92. package/dist/components/index.d.ts.map +1 -1
  93. package/dist/components/index.js +8 -2
  94. package/dist/runtime/createBridgedPluginContext.js +170 -2
  95. package/dist/snippets.d.ts +22 -0
  96. package/dist/types.d.ts +913 -1
  97. package/dist/types.d.ts.map +1 -1
  98. package/package.json +3 -3
  99. package/dist/components/SidebarItem/SidebarColorDot.d.ts +0 -22
  100. package/dist/components/SidebarItem/SidebarColorDot.d.ts.map +0 -1
  101. package/dist/components/SidebarItem/SidebarColorDot.js +0 -11
  102. package/dist/components/SidebarItem/SidebarTabGroupItem.d.ts.map +0 -1
@@ -0,0 +1,42 @@
1
+ import type { JSX } from 'react';
2
+ interface Props {
3
+ /**
4
+ * Catalog setting id (e.g. `general.verifySsl`), used for the accessible name
5
+ * and as context for copy/reset actions.
6
+ */
7
+ settingId: string;
8
+ /**
9
+ * True when the field value differs from its factory default. Keeps the gear
10
+ * visible and enables Reset Setting.
11
+ */
12
+ isModified: boolean;
13
+ /**
14
+ * Resets the setting to its factory default.
15
+ */
16
+ onReset: () => void;
17
+ /**
18
+ * Copies the setting id to the clipboard.
19
+ */
20
+ onCopyId: () => void;
21
+ /**
22
+ * When set, adds a "Copy Setting as JSON" menu item.
23
+ */
24
+ onCopyJson?: () => void;
25
+ /**
26
+ * When set, adds a "Copy Deep Link" menu item for the `#setting-…` hash.
27
+ */
28
+ onCopyDeepLink?: () => void;
29
+ }
30
+ /**
31
+ * Gear button and dropdown for a single settings field: reset to default and
32
+ * copy helpers. Hidden until the parent `group/setting-field` is hovered or
33
+ * focused; always visible when the field is modified or the menu is open.
34
+ *
35
+ * Place inside a container with the `group/setting-field` Tailwind class so
36
+ * hover/focus reveal works.
37
+ *
38
+ * @param props - Setting id, modified flag, and action handlers.
39
+ */
40
+ export declare function SettingFieldActions({ settingId, isModified, onReset, onCopyId, onCopyJson, onCopyDeepLink }: Props): JSX.Element;
41
+ export {};
42
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SettingFieldActions/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAiC,MAAM,OAAO,CAAC;AAIhE,UAAU,KAAK;IACb;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,UAAU,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,cAAc,EACf,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAyErB"}
@@ -0,0 +1,66 @@
1
+ import { jsx as _jsx } from "@harborclient/sdk/jsx-runtime";
2
+ import { faGear } from '@fortawesome/free-solid-svg-icons';
3
+ import { useMemo, useState } from '@harborclient/sdk/react';
4
+ import { RowActionsMenu } from '../RowActionsMenu/index.js';
5
+ import { cn } from '../utils.js';
6
+ /**
7
+ * Gear button and dropdown for a single settings field: reset to default and
8
+ * copy helpers. Hidden until the parent `group/setting-field` is hovered or
9
+ * focused; always visible when the field is modified or the menu is open.
10
+ *
11
+ * Place inside a container with the `group/setting-field` Tailwind class so
12
+ * hover/focus reveal works.
13
+ *
14
+ * @param props - Setting id, modified flag, and action handlers.
15
+ */
16
+ export function SettingFieldActions({ settingId, isModified, onReset, onCopyId, onCopyJson, onCopyDeepLink }) {
17
+ const [openMenuId, setOpenMenuId] = useState(null);
18
+ const menuId = `setting-actions-${settingId}`;
19
+ const isOpen = openMenuId === menuId;
20
+ /**
21
+ * Menu groups for reset and copy actions. Reset is disabled when the value
22
+ * matches the factory default.
23
+ */
24
+ const groups = useMemo(() => {
25
+ const copyItems = [
26
+ {
27
+ label: 'Copy Setting ID',
28
+ onSelect: onCopyId
29
+ }
30
+ ];
31
+ if (onCopyJson != null) {
32
+ copyItems.push({
33
+ label: 'Copy Setting as JSON',
34
+ onSelect: onCopyJson
35
+ });
36
+ }
37
+ if (onCopyDeepLink != null) {
38
+ copyItems.push({
39
+ label: 'Copy Deep Link',
40
+ onSelect: onCopyDeepLink
41
+ });
42
+ }
43
+ return [
44
+ [
45
+ {
46
+ label: 'Reset Setting',
47
+ disabled: !isModified,
48
+ onSelect: onReset
49
+ }
50
+ ],
51
+ copyItems
52
+ ];
53
+ }, [isModified, onCopyDeepLink, onCopyId, onCopyJson, onReset]);
54
+ /**
55
+ * Prevents the gear click from toggling a wrapping checkbox label.
56
+ *
57
+ * @param event - Native click on the actions wrapper.
58
+ */
59
+ const handleWrapperClick = (event) => {
60
+ event.stopPropagation();
61
+ };
62
+ const alwaysVisible = isModified || isOpen;
63
+ return (_jsx("div", { className: cn('hc-setting-field-actions shrink-0', alwaysVisible
64
+ ? 'opacity-100'
65
+ : 'opacity-0 group-focus-within/setting-field:opacity-100 group-hover/setting-field:opacity-100 focus-within:opacity-100'), onClick: handleWrapperClick, children: _jsx(RowActionsMenu, { menuId: menuId, openMenuId: openMenuId, onOpenChange: setOpenMenuId, triggerIcon: faGear, triggerAriaLabel: `Setting actions for ${settingId}`, triggerTitle: "Setting actions", groups: groups }) }));
66
+ }
@@ -16,14 +16,14 @@ interface Props {
16
16
  */
17
17
  name: string;
18
18
  /**
19
- * Optional Tailwind classes applied to the name text (e.g. git status colors).
19
+ * Optional Tailwind classes applied to the name text (e.g. git status markers).
20
20
  */
21
21
  nameClassName?: string;
22
22
  /**
23
- * Optional color dot configuration for collection sidebar rows.
23
+ * Optional marker dot configuration for collection sidebar rows.
24
24
  */
25
- colorDot?: {
26
- color: string | null | undefined;
25
+ markerDot?: {
26
+ marker: string | null | undefined;
27
27
  visible?: boolean;
28
28
  label?: string;
29
29
  };
@@ -74,12 +74,12 @@ interface Props {
74
74
  as?: 'div' | 'li';
75
75
  }
76
76
  /**
77
- * Renders a markdown document sidebar row with file icon, optional color dot or git
77
+ * Renders a markdown document sidebar row with file icon, optional marker dot or git
78
78
  * status marker, and shared row chrome. Used in both Collections and Git sidebars.
79
79
  *
80
80
  * The accessible name defaults to visible row content (name, markers) but can be
81
81
  * overridden with `ariaLabel` (e.g. to include git status context).
82
82
  */
83
- export declare function SidebarDocumentItem({ icon, iconClassName, name, nameClassName, colorDot, statusMarker, selected, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, actions, as }: Props): JSX.Element;
83
+ export declare function SidebarDocumentItem({ icon, iconClassName, name, nameClassName, markerDot, statusMarker, selected, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, actions, as }: Props): JSX.Element;
84
84
  export {};
85
85
  //# sourceMappingURL=SidebarDocumentItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarDocumentItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarDocumentItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAExE,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQxD,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,IAAkB,EAClB,aAAa,EACb,IAAI,EACJ,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,QAAgB,EAChB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,aAAa,EACb,OAAO,EACP,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAiDrB"}
1
+ {"version":3,"file":"SidebarDocumentItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarDocumentItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAExE,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQxD,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IAEtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,IAAkB,EAClB,aAAa,EACb,IAAI,EACJ,aAAa,EACb,SAAS,EACT,YAAY,EACZ,QAAgB,EAChB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,aAAa,EACb,OAAO,EACP,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAiDrB"}
@@ -2,18 +2,18 @@ import { jsx as _jsx, jsxs as _jsxs } from "@harborclient/sdk/jsx-runtime";
2
2
  import { faFileLines } from '@fortawesome/free-solid-svg-icons';
3
3
  import { FaIcon } from '../FaIcon/index.js';
4
4
  import { cn } from '../utils.js';
5
- import { SidebarColorDot } from './SidebarColorDot.js';
6
5
  import { SidebarItem } from './SidebarItem.js';
6
+ import { SidebarMarkerDot } from './SidebarMarkerDot.js';
7
7
  import { SidebarStatusMarker } from './SidebarStatusMarker.js';
8
8
  import { SIDEBAR_ITEM_BUTTON_CLASS } from './sidebarItemClasses.js';
9
9
  /**
10
- * Renders a markdown document sidebar row with file icon, optional color dot or git
10
+ * Renders a markdown document sidebar row with file icon, optional marker dot or git
11
11
  * status marker, and shared row chrome. Used in both Collections and Git sidebars.
12
12
  *
13
13
  * The accessible name defaults to visible row content (name, markers) but can be
14
14
  * overridden with `ariaLabel` (e.g. to include git status context).
15
15
  */
16
- export function SidebarDocumentItem({ icon = faFileLines, iconClassName, name, nameClassName, colorDot, statusMarker, selected = false, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, actions, as = 'li' }) {
16
+ export function SidebarDocumentItem({ icon = faFileLines, iconClassName, name, nameClassName, markerDot, statusMarker, selected = false, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, actions, as = 'li' }) {
17
17
  const useListboxOption = as === 'li';
18
18
  return (_jsx(SidebarItem, { selected: selected, onContextMenu: onContextMenu, actions: actions, as: as, listboxOption: useListboxOption
19
19
  ? {
@@ -23,5 +23,5 @@ export function SidebarDocumentItem({ icon = faFileLines, iconClassName, name, n
23
23
  onClick,
24
24
  onDoubleClick
25
25
  }
26
- : undefined, children: _jsxs("span", { className: SIDEBAR_ITEM_BUTTON_CLASS, children: [_jsx(FaIcon, { icon: icon, className: cn('h-3.5 w-3.5 shrink-0 pl-1 text-muted', iconClassName), "aria-hidden": true }), colorDot != null ? (_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name }), _jsx(SidebarColorDot, { color: colorDot.color, visible: colorDot.visible, label: colorDot.label })] })) : (_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name })), statusMarker != null ? (_jsx(SidebarStatusMarker, { marker: statusMarker.marker, className: statusMarker.className, label: statusMarker.label })) : null] }) }));
26
+ : undefined, children: _jsxs("span", { className: SIDEBAR_ITEM_BUTTON_CLASS, children: [_jsx(FaIcon, { icon: icon, className: cn('h-3.5 w-3.5 shrink-0 pl-1 text-muted', iconClassName), "aria-hidden": true }), markerDot != null ? (_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name }), _jsx(SidebarMarkerDot, { marker: markerDot.marker, visible: markerDot.visible, label: markerDot.label })] })) : (_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name })), statusMarker != null ? (_jsx(SidebarStatusMarker, { marker: statusMarker.marker, className: statusMarker.className, label: statusMarker.label })) : null] }) }));
27
27
  }
@@ -10,10 +10,10 @@ interface Props {
10
10
  */
11
11
  variableSummary: string;
12
12
  /**
13
- * Optional color dot beside the environment name.
13
+ * Optional marker dot beside the environment name.
14
14
  */
15
- colorDot?: {
16
- color: string | null | undefined;
15
+ markerDot?: {
16
+ marker: string | null | undefined;
17
17
  visible?: boolean;
18
18
  label?: string;
19
19
  };
@@ -73,6 +73,6 @@ interface Props {
73
73
  *
74
74
  * The accessible name is derived from visible row content (name, variable summary).
75
75
  */
76
- export declare function SidebarEnvironmentItem({ name, variableSummary, colorDot, selected, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, onEnter, actions, dataSidebarEnvironmentId, as }: Props): JSX.Element;
76
+ export declare function SidebarEnvironmentItem({ name, variableSummary, markerDot, selected, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, onEnter, actions, dataSidebarEnvironmentId, as }: Props): JSX.Element;
77
77
  export {};
78
78
  //# sourceMappingURL=SidebarEnvironmentItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarEnvironmentItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarEnvironmentItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAiB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAG/E,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3C;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,IAAI,EACJ,eAAe,EACf,QAAQ,EACR,QAAgB,EAChB,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,wBAAwB,EACxB,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAwDrB"}
1
+ {"version":3,"file":"SidebarEnvironmentItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarEnvironmentItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAiB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAI/E,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE3C;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,IAAI,EACJ,eAAe,EACf,SAAS,EACT,QAAgB,EAChB,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,wBAAwB,EACxB,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAwDrB"}
@@ -1,13 +1,13 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@harborclient/sdk/jsx-runtime";
2
- import { SidebarColorDot } from './SidebarColorDot.js';
3
2
  import { SidebarItem } from './SidebarItem.js';
3
+ import { SidebarMarkerDot } from './SidebarMarkerDot.js';
4
4
  import { SIDEBAR_ITEM_BUTTON_CLASS } from './sidebarItemClasses.js';
5
5
  /**
6
6
  * Renders an environment row in the Collections sidebar Environments section.
7
7
  *
8
8
  * The accessible name is derived from visible row content (name, variable summary).
9
9
  */
10
- export function SidebarEnvironmentItem({ name, variableSummary, colorDot, selected = false, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, onEnter, actions, dataSidebarEnvironmentId, as = 'li' }) {
10
+ export function SidebarEnvironmentItem({ name, variableSummary, markerDot, selected = false, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, onDoubleClick, onEnter, actions, dataSidebarEnvironmentId, as = 'li' }) {
11
11
  const useListboxOption = as === 'li';
12
12
  /**
13
13
  * Opens environment settings when Enter is pressed on the name area.
@@ -31,5 +31,5 @@ export function SidebarEnvironmentItem({ name, variableSummary, colorDot, select
31
31
  }
32
32
  : undefined, children: _jsxs("span", { className: SIDEBAR_ITEM_BUTTON_CLASS, ...(dataSidebarEnvironmentId != null
33
33
  ? { 'data-sidebar-environment-id': String(dataSidebarEnvironmentId) }
34
- : {}), children: [_jsxs("span", { className: "inline-flex min-w-0 flex-1 items-center gap-1.5", children: [_jsx("span", { className: "min-w-0 truncate", children: name }), colorDot != null ? (_jsx(SidebarColorDot, { color: colorDot.color, visible: colorDot.visible, label: colorDot.label })) : null] }), _jsx("span", { className: "shrink-0 text-muted", children: variableSummary })] }) }));
34
+ : {}), children: [_jsxs("span", { className: "inline-flex min-w-0 flex-1 items-center gap-1.5", children: [_jsx("span", { className: "min-w-0 truncate", children: name }), markerDot != null ? (_jsx(SidebarMarkerDot, { marker: markerDot.marker, visible: markerDot.visible, label: markerDot.label })) : null] }), _jsx("span", { className: "shrink-0 text-muted", children: variableSummary })] }) }));
35
35
  }
@@ -31,10 +31,10 @@ interface Props {
31
31
  */
32
32
  ariaLabel?: string;
33
33
  /**
34
- * Optional color dot beside the folder name.
34
+ * Optional marker dot beside the folder name.
35
35
  */
36
- colorDot?: {
37
- color: string | null | undefined;
36
+ markerDot?: {
37
+ marker: string | null | undefined;
38
38
  visible?: boolean;
39
39
  label?: string;
40
40
  };
@@ -85,12 +85,12 @@ interface Props {
85
85
  as?: 'div' | 'li';
86
86
  }
87
87
  /**
88
- * Renders a collection folder row with expand/collapse control, optional color dot,
88
+ * Renders a collection folder row with expand/collapse control, optional marker dot,
89
89
  * and optional drag-drop highlight affordance. Chevron size and label spacing use
90
90
  * the shared `SIDEBAR_CHEVRON_*` classes (Cursor-like explorer twisties).
91
91
  *
92
92
  * Wrap folder trees in {@link SidebarTree} and pass `as="li"` for valid tree semantics.
93
93
  */
94
- export declare function SidebarFolderItem({ name, expanded, childrenId, level, setSize, posInSet, ariaLabel, colorDot, dropHighlighted, selected, sortable, onContextMenu, onToggleExpand, onNameClick, onNameDoubleClick, onNameEnter, actions, expandIcon, collapseIcon, as }: Props): JSX.Element;
94
+ export declare function SidebarFolderItem({ name, expanded, childrenId, level, setSize, posInSet, ariaLabel, markerDot, dropHighlighted, selected, sortable, onContextMenu, onToggleExpand, onNameClick, onNameDoubleClick, onNameEnter, actions, expandIcon, collapseIcon, as }: Props): JSX.Element;
95
95
  export {};
96
96
  //# sourceMappingURL=SidebarFolderItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarFolderItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarFolderItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,GAAG,EAAiB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvE,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAQ/E,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,yBAAyB,CAAC;IAEpC;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B;;OAEG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,cAAc,CAAC;IAC3B,YAAY,EAAE,cAAc,CAAC;IAE7B;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,eAAuB,EACvB,QAAgB,EAChB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA2ErB"}
1
+ {"version":3,"file":"SidebarFolderItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarFolderItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,GAAG,EAAiB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAS/E,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,yBAAyB,CAAC;IAEpC;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B;;OAEG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,cAAc,CAAC;IAC3B,YAAY,EAAE,cAAc,CAAC;IAE7B;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,SAAS,EACT,eAAuB,EACvB,QAAgB,EAChB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA2ErB"}
@@ -1,17 +1,17 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@harborclient/sdk/jsx-runtime";
2
2
  import { FaIcon } from '../FaIcon/index.js';
3
- import { SidebarColorDot } from './SidebarColorDot.js';
4
3
  import { SidebarItem } from './SidebarItem.js';
4
+ import { SidebarMarkerDot } from './SidebarMarkerDot.js';
5
5
  import { SIDEBAR_CHEVRON_BUTTON_CLASS, SIDEBAR_CHEVRON_ICON_CLASS, SIDEBAR_CHEVRON_LABEL_OFFSET_CLASS } from './sidebarItemClasses.js';
6
6
  import { stopSortableDragPointerDown } from './stopSortableDragPointerDown.js';
7
7
  /**
8
- * Renders a collection folder row with expand/collapse control, optional color dot,
8
+ * Renders a collection folder row with expand/collapse control, optional marker dot,
9
9
  * and optional drag-drop highlight affordance. Chevron size and label spacing use
10
10
  * the shared `SIDEBAR_CHEVRON_*` classes (Cursor-like explorer twisties).
11
11
  *
12
12
  * Wrap folder trees in {@link SidebarTree} and pass `as="li"` for valid tree semantics.
13
13
  */
14
- export function SidebarFolderItem({ name, expanded, childrenId, level, setSize, posInSet, ariaLabel, colorDot, dropHighlighted = false, selected = false, sortable, onContextMenu, onToggleExpand, onNameClick, onNameDoubleClick, onNameEnter, actions, expandIcon, collapseIcon, as = 'li' }) {
14
+ export function SidebarFolderItem({ name, expanded, childrenId, level, setSize, posInSet, ariaLabel, markerDot, dropHighlighted = false, selected = false, sortable, onContextMenu, onToggleExpand, onNameClick, onNameDoubleClick, onNameEnter, actions, expandIcon, collapseIcon, as = 'li' }) {
15
15
  const useTreeItem = as === 'li';
16
16
  /**
17
17
  * Opens folder settings when Enter is pressed on the name area.
@@ -40,5 +40,5 @@ export function SidebarFolderItem({ name, expanded, childrenId, level, setSize,
40
40
  : undefined, children: [_jsx("button", { type: "button", className: SIDEBAR_CHEVRON_BUTTON_CLASS, onClick: (event) => {
41
41
  event.stopPropagation();
42
42
  onToggleExpand();
43
- }, onPointerDown: stopSortableDragPointerDown, tabIndex: -1, "aria-label": chevronLabel, children: _jsx(FaIcon, { icon: expanded ? collapseIcon : expandIcon, className: SIDEBAR_CHEVRON_ICON_CLASS }) }), _jsxs("span", { className: `app-no-drag ${SIDEBAR_CHEVRON_LABEL_OFFSET_CLASS} min-w-0 flex-1 cursor-pointer truncate border-none bg-transparent py-0 text-left leading-none font-medium text-inherit`, "aria-current": selected ? 'true' : undefined, children: [_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [name, colorDot != null ? (_jsx(SidebarColorDot, { color: colorDot.color, visible: colorDot.visible, label: colorDot.label })) : null] }), dropHighlighted ? _jsx("span", { className: "ml-1.5 font-normal text-info", children: "Drop here" }) : null] })] }));
43
+ }, onPointerDown: stopSortableDragPointerDown, tabIndex: -1, "aria-label": chevronLabel, children: _jsx(FaIcon, { icon: expanded ? collapseIcon : expandIcon, className: SIDEBAR_CHEVRON_ICON_CLASS }) }), _jsxs("span", { className: `app-no-drag ${SIDEBAR_CHEVRON_LABEL_OFFSET_CLASS} min-w-0 flex-1 cursor-pointer truncate border-none bg-transparent py-0 text-left leading-none font-medium text-inherit`, "aria-current": selected ? 'true' : undefined, children: [_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [name, markerDot != null ? (_jsx(SidebarMarkerDot, { marker: markerDot.marker, visible: markerDot.visible, label: markerDot.label })) : null] }), dropHighlighted ? _jsx("span", { className: "ml-1.5 font-normal text-info", children: "Drop here" }) : null] })] }));
44
44
  }
@@ -21,6 +21,14 @@ interface Props {
21
21
  * HTTP status text for request history entries.
22
22
  */
23
23
  statusText?: string;
24
+ /**
25
+ * When false, hides the HTTP status indicator even when status is available.
26
+ */
27
+ statusDotVisible?: boolean;
28
+ /**
29
+ * When false, renders the method badge in neutral theme text instead of per-method colors.
30
+ */
31
+ methodColors?: boolean;
24
32
  /**
25
33
  * Icon shown for run history entries.
26
34
  */
@@ -53,10 +61,14 @@ interface Props {
53
61
  * HTML element for the row container. Use `li` inside {@link SidebarListbox}.
54
62
  */
55
63
  as?: 'div' | 'li';
64
+ /**
65
+ * Additional class names merged onto the row container.
66
+ */
67
+ className?: string;
56
68
  }
57
69
  /**
58
70
  * Renders a request or run history entry row in the Collections sidebar History section.
59
71
  */
60
- export declare function SidebarHistoryItem({ method, name, isRun, status, statusText, runIcon, selected, title, ariaLabel, onContextMenu, onClick, actions, as }: Props): JSX.Element;
72
+ export declare function SidebarHistoryItem({ method, name, isRun, status, statusText, statusDotVisible, methodColors, runIcon, selected, title, ariaLabel, onContextMenu, onClick, actions, as, className }: Props): JSX.Element;
61
73
  export {};
62
74
  //# sourceMappingURL=SidebarHistoryItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarHistoryItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarHistoryItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOxD,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,IAAI,EACJ,KAAa,EACb,MAAM,EACN,UAAU,EACV,OAAO,EACP,QAAgB,EAChB,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,OAAO,EACP,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAwCrB"}
1
+ {"version":3,"file":"SidebarHistoryItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarHistoryItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOxD,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,IAAI,EACJ,KAAa,EACb,MAAM,EACN,UAAU,EACV,gBAAuB,EACvB,YAAmB,EACnB,OAAO,EACP,QAAgB,EAChB,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,OAAO,EACP,EAAS,EACT,SAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA0CrB"}
@@ -7,15 +7,15 @@ import { SIDEBAR_ITEM_BUTTON_CLASS, statusDotClass } from './sidebarItemClasses.
7
7
  /**
8
8
  * Renders a request or run history entry row in the Collections sidebar History section.
9
9
  */
10
- export function SidebarHistoryItem({ method, name, isRun = false, status, statusText, runIcon, selected = false, title, ariaLabel, onContextMenu, onClick, actions, as = 'li' }) {
10
+ export function SidebarHistoryItem({ method, name, isRun = false, status, statusText, statusDotVisible = true, methodColors = true, runIcon, selected = false, title, ariaLabel, onContextMenu, onClick, actions, as = 'li', className }) {
11
11
  const useListboxOption = as === 'li';
12
12
  const optionAriaLabel = !isRun && status != null && statusText != null
13
13
  ? `${ariaLabel}, responded ${status} ${statusText}`
14
14
  : ariaLabel;
15
- return (_jsx(SidebarItem, { selected: selected, onContextMenu: onContextMenu, actions: actions, as: as, listboxOption: useListboxOption
15
+ return (_jsx(SidebarItem, { selected: selected, onContextMenu: onContextMenu, actions: actions, as: as, className: className, listboxOption: useListboxOption
16
16
  ? {
17
17
  ariaLabel: optionAriaLabel,
18
18
  onClick
19
19
  }
20
- : undefined, children: _jsxs("span", { className: `${SIDEBAR_ITEM_BUTTON_CLASS} py-0.5`, title: title, children: [_jsx(SidebarMethodBadge, { method: method, uppercase: true }), _jsxs("span", { className: "flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden", children: [_jsx("span", { className: "min-w-0 flex-1 truncate text-text", children: name }), isRun && runIcon != null ? (_jsx(FaIcon, { icon: runIcon, className: "h-3.5 w-3.5 shrink-0 text-muted", "aria-hidden": true })) : null] }), !isRun && status != null && statusText != null ? (_jsx(SidebarStatusDot, { className: statusDotClass(status), title: `${status} ${statusText}`, srOnlyLabel: `${status} ${statusText}` })) : null] }) }));
20
+ : undefined, children: _jsxs("span", { className: `${SIDEBAR_ITEM_BUTTON_CLASS} py-0.5`, title: title, children: [_jsx(SidebarMethodBadge, { method: method, uppercase: true, methodColors: methodColors }), _jsxs("span", { className: "flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden", children: [_jsx("span", { className: "min-w-0 flex-1 truncate text-text", children: name }), isRun && runIcon != null ? (_jsx(FaIcon, { icon: runIcon, className: "h-3.5 w-3.5 shrink-0 text-muted", "aria-hidden": true })) : null] }), !isRun && status != null && statusText != null ? (_jsx(SidebarStatusDot, { className: statusDotClass(status), visible: statusDotVisible, title: `${status} ${statusText}`, srOnlyLabel: `${status} ${statusText}` })) : null] }) }));
21
21
  }
@@ -0,0 +1,22 @@
1
+ import type { JSX } from 'react';
2
+ interface Props {
3
+ /**
4
+ * Marker value as a CSS color string, or null/undefined to hide the dot.
5
+ */
6
+ marker: string | null | undefined;
7
+ /**
8
+ * When false, suppresses the dot even when a marker is assigned.
9
+ */
10
+ visible?: boolean;
11
+ /**
12
+ * Accessible label when the dot conveys meaning without visible text.
13
+ */
14
+ label?: string;
15
+ }
16
+ /**
17
+ * Renders a small colored circle beside a sidebar row when a marker is assigned
18
+ * and visibility is enabled.
19
+ */
20
+ export declare function SidebarMarkerDot({ marker, visible, label }: Props): JSX.Element | null;
21
+ export {};
22
+ //# sourceMappingURL=SidebarMarkerDot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarMarkerDot.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarMarkerDot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEjC,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAElC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAc,EAAE,KAAK,EAAE,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAY7F"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "@harborclient/sdk/jsx-runtime";
2
+ /**
3
+ * Renders a small colored circle beside a sidebar row when a marker is assigned
4
+ * and visibility is enabled.
5
+ */
6
+ export function SidebarMarkerDot({ marker, visible = true, label }) {
7
+ if (!visible || marker == null || marker.trim() === '') {
8
+ return null;
9
+ }
10
+ return (_jsx("span", { className: "inline-block h-4 w-4 shrink-0 rounded-full", style: { backgroundColor: marker }, ...(label != null ? { role: 'img', 'aria-label': label } : { 'aria-hidden': true }) }));
11
+ }
@@ -8,10 +8,18 @@ interface Props {
8
8
  * When true, renders the method in uppercase with medium font weight.
9
9
  */
10
10
  uppercase?: boolean;
11
+ /**
12
+ * When false, renders the method in neutral theme text instead of per-method colors.
13
+ */
14
+ methodColors?: boolean;
11
15
  }
12
16
  /**
13
17
  * Renders a colored HTTP method badge for sidebar request and history rows.
18
+ *
19
+ * @param method - HTTP method name shown in the badge.
20
+ * @param uppercase - When true, applies uppercase medium-weight styling.
21
+ * @param methodColors - When false, uses neutral theme text instead of per-method colors.
14
22
  */
15
- export declare function SidebarMethodBadge({ method, uppercase }: Props): JSX.Element;
23
+ export declare function SidebarMethodBadge({ method, uppercase, methodColors }: Props): JSX.Element;
16
24
  export {};
17
25
  //# sourceMappingURL=SidebarMethodBadge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarMethodBadge.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarMethodBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAIjC,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,SAAiB,EAAE,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CASpF"}
1
+ {"version":3,"file":"SidebarMethodBadge.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarMethodBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAIjC,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,SAAiB,EACjB,YAAmB,EACpB,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAYrB"}
@@ -1,11 +1,13 @@
1
1
  import { jsx as _jsx } from "@harborclient/sdk/jsx-runtime";
2
2
  import { cn } from '../utils.js';
3
- import { METHOD_CLASSES } from './sidebarItemClasses.js';
3
+ import { methodBadgeClass } from './sidebarItemClasses.js';
4
4
  /**
5
5
  * Renders a colored HTTP method badge for sidebar request and history rows.
6
+ *
7
+ * @param method - HTTP method name shown in the badge.
8
+ * @param uppercase - When true, applies uppercase medium-weight styling.
9
+ * @param methodColors - When false, uses neutral theme text instead of per-method colors.
6
10
  */
7
- export function SidebarMethodBadge({ method, uppercase = false }) {
8
- const methodKey = method.toLowerCase();
9
- const colorClass = METHOD_CLASSES[methodKey] ?? 'text-info';
10
- return (_jsx("span", { className: cn('shrink-0 px-1 py-px', uppercase && 'font-medium uppercase', colorClass), children: method }));
11
+ export function SidebarMethodBadge({ method, uppercase = false, methodColors = true }) {
12
+ return (_jsx("span", { className: cn('shrink-0 px-1 py-px', uppercase && 'font-medium uppercase', methodBadgeClass(method, methodColors)), children: method }));
11
13
  }
@@ -14,13 +14,17 @@ interface Props {
14
14
  */
15
15
  nameClassName?: string;
16
16
  /**
17
- * Optional color dot configuration for collection sidebar rows.
17
+ * Optional color marker dot configuration for collection sidebar rows.
18
18
  */
19
- colorDot?: {
20
- color: string | null | undefined;
19
+ markerDot?: {
20
+ marker: string | null | undefined;
21
21
  visible?: boolean;
22
22
  label?: string;
23
23
  };
24
+ /**
25
+ * When false, renders the method badge in neutral theme text instead of per-method colors.
26
+ */
27
+ methodColors?: boolean;
24
28
  /**
25
29
  * Optional git change status marker shown after the name in git sidebar rows.
26
30
  */
@@ -69,7 +73,7 @@ interface Props {
69
73
  as?: 'div' | 'li';
70
74
  }
71
75
  /**
72
- * Renders a saved-request sidebar row with method badge, optional color dot or git
76
+ * Renders a saved-request sidebar row with method badge, optional color marker dot or git
73
77
  * status marker, and shared row chrome. Used in both Collections and Git sidebars.
74
78
  *
75
79
  * The accessible name defaults to visible row content (method, name, markers) but
@@ -77,6 +81,6 @@ interface Props {
77
81
  *
78
82
  * Wrap lists in {@link SidebarListbox} and pass `as="li"` for valid listbox semantics.
79
83
  */
80
- export declare function SidebarRequestItem({ method, name, nameClassName, colorDot, statusMarker, selected, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, as }: Props): JSX.Element;
84
+ export declare function SidebarRequestItem({ method, name, nameClassName, markerDot, methodColors, statusMarker, selected, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, as }: Props): JSX.Element;
81
85
  export {};
82
86
  //# sourceMappingURL=SidebarRequestItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarRequestItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarRequestItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAExD,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAK/E,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,IAAI,EACJ,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,QAAgB,EAChB,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,OAAO,EACP,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA6CrB"}
1
+ {"version":3,"file":"SidebarRequestItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarRequestItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EAAe,KAAK,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAM/E,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAClC,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,IAAI,EACJ,aAAa,EACb,SAAS,EACT,YAAmB,EACnB,YAAY,EACZ,QAAgB,EAChB,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,OAAO,EACP,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA6CrB"}
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@harborclient/sdk/jsx-runtime";
2
- import { SidebarColorDot } from './SidebarColorDot.js';
3
2
  import { SidebarItem } from './SidebarItem.js';
3
+ import { SidebarMarkerDot } from './SidebarMarkerDot.js';
4
4
  import { SidebarMethodBadge } from './SidebarMethodBadge.js';
5
5
  import { SidebarStatusMarker } from './SidebarStatusMarker.js';
6
6
  import { SIDEBAR_ITEM_BUTTON_CLASS } from './sidebarItemClasses.js';
7
7
  /**
8
- * Renders a saved-request sidebar row with method badge, optional color dot or git
8
+ * Renders a saved-request sidebar row with method badge, optional color marker dot or git
9
9
  * status marker, and shared row chrome. Used in both Collections and Git sidebars.
10
10
  *
11
11
  * The accessible name defaults to visible row content (method, name, markers) but
@@ -13,7 +13,7 @@ import { SIDEBAR_ITEM_BUTTON_CLASS } from './sidebarItemClasses.js';
13
13
  *
14
14
  * Wrap lists in {@link SidebarListbox} and pass `as="li"` for valid listbox semantics.
15
15
  */
16
- export function SidebarRequestItem({ method, name, nameClassName, colorDot, statusMarker, selected = false, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, as = 'li' }) {
16
+ export function SidebarRequestItem({ method, name, nameClassName, markerDot, methodColors = true, statusMarker, selected = false, sortable, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, as = 'li' }) {
17
17
  const useListboxOption = as === 'li';
18
18
  return (_jsx(SidebarItem, { selected: selected, sortable: sortable, onContextMenu: onContextMenu, actions: actions, as: as, listboxOption: useListboxOption
19
19
  ? {
@@ -22,5 +22,5 @@ export function SidebarRequestItem({ method, name, nameClassName, colorDot, stat
22
22
  ariaCurrent,
23
23
  onClick
24
24
  }
25
- : undefined, children: _jsxs("span", { className: SIDEBAR_ITEM_BUTTON_CLASS, children: [_jsx(SidebarMethodBadge, { method: method }), colorDot != null ? (_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name }), _jsx(SidebarColorDot, { color: colorDot.color, visible: colorDot.visible, label: colorDot.label })] })) : (_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name })), statusMarker != null ? (_jsx(SidebarStatusMarker, { marker: statusMarker.marker, className: statusMarker.className, label: statusMarker.label })) : null] }) }));
25
+ : undefined, children: _jsxs("span", { className: SIDEBAR_ITEM_BUTTON_CLASS, children: [_jsx(SidebarMethodBadge, { method: method, methodColors: methodColors }), markerDot != null ? (_jsxs("span", { className: "inline-flex min-w-0 items-center gap-1.5", children: [_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name }), _jsx(SidebarMarkerDot, { marker: markerDot.marker, visible: markerDot.visible, label: markerDot.label })] })) : (_jsx("span", { className: `min-w-0 truncate ${nameClassName ?? ''}`, children: name })), statusMarker != null ? (_jsx(SidebarStatusMarker, { marker: statusMarker.marker, className: statusMarker.className, label: statusMarker.label })) : null] }) }));
26
26
  }
@@ -16,6 +16,14 @@ interface Props {
16
16
  * Tailwind background color class for the pass/fail status dot.
17
17
  */
18
18
  statusDotClassName: string;
19
+ /**
20
+ * When false, hides the pass/fail status indicator.
21
+ */
22
+ statusDotVisible?: boolean;
23
+ /**
24
+ * When false, renders the method badge in neutral theme text instead of per-method colors.
25
+ */
26
+ methodColors?: boolean;
19
27
  /**
20
28
  * Screen-reader text describing the run summary status.
21
29
  */
@@ -69,6 +77,6 @@ interface Props {
69
77
  * The accessible name is derived from visible row content (method, label, connection badge,
70
78
  * status summary).
71
79
  */
72
- export declare function SidebarRunItem({ method, label, connectionBadge, statusDotClassName, statusSummary, selected, title, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, dataSidebarRunResultId, as }: Props): JSX.Element;
80
+ export declare function SidebarRunItem({ method, label, connectionBadge, statusDotClassName, statusDotVisible, methodColors, statusSummary, selected, title, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, dataSidebarRunResultId, as }: Props): JSX.Element;
73
81
  export {};
74
82
  //# sourceMappingURL=SidebarRunItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarRunItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarRunItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOxD,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,KAAK,EACL,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,QAAgB,EAChB,KAAK,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,OAAO,EACP,sBAAsB,EACtB,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAwCrB"}
1
+ {"version":3,"file":"SidebarRunItem.d.ts","sourceRoot":"","sources":["../../../src/components/SidebarItem/SidebarRunItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOxD,UAAU,KAAK;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzC;;OAEG;IACH,EAAE,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,KAAK,EACL,eAAe,EACf,kBAAkB,EAClB,gBAAuB,EACvB,YAAmB,EACnB,aAAa,EACb,QAAgB,EAChB,KAAK,EACL,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,EACP,OAAO,EACP,sBAAsB,EACtB,EAAS,EACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA8CrB"}
@@ -10,7 +10,7 @@ import { SIDEBAR_ITEM_BUTTON_CLASS } from './sidebarItemClasses.js';
10
10
  * The accessible name is derived from visible row content (method, label, connection badge,
11
11
  * status summary).
12
12
  */
13
- export function SidebarRunItem({ method, label, connectionBadge, statusDotClassName, statusSummary, selected = false, title, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, dataSidebarRunResultId, as = 'li' }) {
13
+ export function SidebarRunItem({ method, label, connectionBadge, statusDotClassName, statusDotVisible = true, methodColors = true, statusSummary, selected = false, title, ariaLabel, ariaSelected, ariaCurrent, onContextMenu, onClick, actions, dataSidebarRunResultId, as = 'li' }) {
14
14
  const useListboxOption = as === 'li';
15
15
  return (_jsx(SidebarItem, { selected: selected, onContextMenu: onContextMenu, actions: actions, as: as, listboxOption: useListboxOption
16
16
  ? {
@@ -21,5 +21,5 @@ export function SidebarRunItem({ method, label, connectionBadge, statusDotClassN
21
21
  }
22
22
  : undefined, children: _jsxs("span", { className: `${SIDEBAR_ITEM_BUTTON_CLASS} py-0.5`, title: title, ...(dataSidebarRunResultId != null
23
23
  ? { 'data-sidebar-run-result-id': String(dataSidebarRunResultId) }
24
- : {}), children: [method != null && method !== '' ? _jsx(SidebarMethodBadge, { method: method, uppercase: true }) : null, _jsxs("span", { className: "flex min-w-0 flex-1 items-center gap-1.5", children: [_jsx("span", { className: "min-w-0 truncate text-text", children: label }), connectionBadge != null ? (_jsx(SidebarBadge, { variant: "info", title: `Stored in ${connectionBadge}`, children: connectionBadge })) : null] }), _jsx(SidebarStatusDot, { className: statusDotClassName, srOnlyLabel: statusSummary })] }) }));
24
+ : {}), children: [method != null && method !== '' ? (_jsx(SidebarMethodBadge, { method: method, uppercase: true, methodColors: methodColors })) : null, _jsxs("span", { className: "flex min-w-0 flex-1 items-center gap-1.5", children: [_jsx("span", { className: "min-w-0 truncate text-text", children: label }), connectionBadge != null ? (_jsx(SidebarBadge, { variant: "info", title: `Stored in ${connectionBadge}`, children: connectionBadge })) : null] }), _jsx(SidebarStatusDot, { className: statusDotClassName, visible: statusDotVisible, srOnlyLabel: statusSummary })] }) }));
25
25
  }