@inf-monkeys-tech/monkeys-design 1.0.7 → 1.0.8

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.
@@ -9604,11 +9604,57 @@ var radarPanelStyle = {
9604
9604
  backgroundColor: "hsl(var(--radar-panel, var(--card)))",
9605
9605
  borderColor: "hsl(var(--radar-border, var(--border)))"
9606
9606
  };
9607
+ function WorkbenchRadarNavigation({
9608
+ items,
9609
+ activeItemId,
9610
+ onItemSelect,
9611
+ footer,
9612
+ ariaLabel = "Radar navigation"
9613
+ }) {
9614
+ return /* @__PURE__ */ jsxs(
9615
+ "aside",
9616
+ {
9617
+ "aria-label": ariaLabel,
9618
+ "data-monkeys-component": "workbench-radar-navigation",
9619
+ className: "flex min-h-0 flex-col overflow-hidden rounded-[calc(var(--radius)+0.25rem)] border",
9620
+ style: radarPanelStyle,
9621
+ children: [
9622
+ /* @__PURE__ */ jsx("nav", { className: "min-h-0 flex-1 overflow-y-auto p-3", children: /* @__PURE__ */ jsx("ul", { className: "grid gap-2", children: items.map((item) => {
9623
+ const active = item.id === activeItemId;
9624
+ return /* @__PURE__ */ jsxs("li", { className: "grid gap-1", children: [
9625
+ /* @__PURE__ */ jsxs(
9626
+ "button",
9627
+ {
9628
+ type: "button",
9629
+ "aria-current": active ? "page" : void 0,
9630
+ onClick: onItemSelect ? () => onItemSelect(item) : void 0,
9631
+ className: cn(
9632
+ "flex min-h-11 w-full items-center gap-3 rounded-[var(--radius)] border border-transparent px-3 py-2 text-left text-sm font-semibold outline-none transition-[background-color,border-color,color,box-shadow] focus-visible:ring-2 focus-visible:ring-ring motion-reduce:transition-none",
9633
+ active ? "bg-primary text-primary-foreground shadow-[0_0_1.25rem_hsl(var(--primary)/0.28)]" : "text-muted-foreground hover:border-border hover:bg-muted/60 hover:text-foreground"
9634
+ ),
9635
+ children: [
9636
+ hasRenderableNode(item.icon) ? /* @__PURE__ */ jsx("span", { className: "flex size-5 shrink-0 items-center justify-center", "aria-hidden": "true", children: item.icon }) : null,
9637
+ /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate", children: item.label })
9638
+ ]
9639
+ }
9640
+ ),
9641
+ item.children?.length ? /* @__PURE__ */ jsx("ul", { className: "ml-5 grid gap-0.5 border-l border-border/70 py-1 pl-3", children: item.children.map((child) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-9 items-center gap-2 rounded-md px-2 text-xs font-medium text-muted-foreground", children: [
9642
+ hasRenderableNode(child.icon) ? /* @__PURE__ */ jsx("span", { className: "flex size-4 shrink-0 items-center justify-center", "aria-hidden": "true", children: child.icon }) : null,
9643
+ /* @__PURE__ */ jsx("span", { className: "truncate", children: child.label })
9644
+ ] }) }, child.id)) }) : null
9645
+ ] }, item.id);
9646
+ }) }) }),
9647
+ hasRenderableNode(footer) ? /* @__PURE__ */ jsx("div", { className: "border-t border-border/70 p-3", children: footer }) : null
9648
+ ]
9649
+ }
9650
+ );
9651
+ }
9607
9652
  function WorkbenchRadarWorkspace({
9608
- navigationItems,
9653
+ navigationItems = [],
9609
9654
  activeNavigationId,
9610
9655
  onNavigationSelect,
9611
9656
  navigationFooter,
9657
+ navigation,
9612
9658
  children,
9613
9659
  inspector,
9614
9660
  inspectorLabel = "Context controls",
@@ -9629,40 +9675,13 @@ function WorkbenchRadarWorkspace({
9629
9675
  ),
9630
9676
  style: { ...radarWorkspaceStyle, minHeight: minimumHeight },
9631
9677
  children: [
9632
- /* @__PURE__ */ jsxs(
9633
- "aside",
9678
+ hasRenderableNode(navigation) ? navigation : /* @__PURE__ */ jsx(
9679
+ WorkbenchRadarNavigation,
9634
9680
  {
9635
- "aria-label": "Radar navigation",
9636
- className: "flex min-h-0 flex-col overflow-hidden rounded-[calc(var(--radius)+0.25rem)] border",
9637
- style: radarPanelStyle,
9638
- children: [
9639
- /* @__PURE__ */ jsx("nav", { className: "min-h-0 flex-1 overflow-y-auto p-3", children: /* @__PURE__ */ jsx("ul", { className: "grid gap-2", children: navigationItems.map((item) => {
9640
- const active = item.id === activeNavigationId;
9641
- return /* @__PURE__ */ jsxs("li", { className: "grid gap-1", children: [
9642
- /* @__PURE__ */ jsxs(
9643
- "button",
9644
- {
9645
- type: "button",
9646
- "aria-current": active ? "page" : void 0,
9647
- onClick: onNavigationSelect ? () => onNavigationSelect(item) : void 0,
9648
- className: cn(
9649
- "flex min-h-11 w-full items-center gap-3 rounded-[var(--radius)] border border-transparent px-3 py-2 text-left text-sm font-semibold outline-none transition-[background-color,border-color,color,box-shadow] focus-visible:ring-2 focus-visible:ring-ring motion-reduce:transition-none",
9650
- active ? "bg-primary text-primary-foreground shadow-[0_0_1.25rem_hsl(var(--primary)/0.28)]" : "text-muted-foreground hover:border-border hover:bg-muted/60 hover:text-foreground"
9651
- ),
9652
- children: [
9653
- hasRenderableNode(item.icon) ? /* @__PURE__ */ jsx("span", { className: "flex size-5 shrink-0 items-center justify-center", "aria-hidden": "true", children: item.icon }) : null,
9654
- /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate", children: item.label })
9655
- ]
9656
- }
9657
- ),
9658
- item.children?.length ? /* @__PURE__ */ jsx("ul", { className: "ml-5 grid gap-0.5 border-l border-border/70 py-1 pl-3", children: item.children.map((child) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-9 items-center gap-2 rounded-md px-2 text-xs font-medium text-muted-foreground", children: [
9659
- hasRenderableNode(child.icon) ? /* @__PURE__ */ jsx("span", { className: "flex size-4 shrink-0 items-center justify-center", "aria-hidden": "true", children: child.icon }) : null,
9660
- /* @__PURE__ */ jsx("span", { className: "truncate", children: child.label })
9661
- ] }) }, child.id)) }) : null
9662
- ] }, item.id);
9663
- }) }) }),
9664
- hasRenderableNode(navigationFooter) ? /* @__PURE__ */ jsx("div", { className: "border-t border-border/70 p-3", children: navigationFooter }) : null
9665
- ]
9681
+ items: navigationItems,
9682
+ activeItemId: activeNavigationId,
9683
+ onItemSelect: onNavigationSelect,
9684
+ footer: navigationFooter
9666
9685
  }
9667
9686
  ),
9668
9687
  /* @__PURE__ */ jsx(
@@ -10079,6 +10098,6 @@ function WorkbenchRadarMatrix({
10079
10098
  );
10080
10099
  }
10081
10100
 
10082
- export { InteractiveTable, InteractiveTableEditableTextCell, InteractiveTableReadonlyCell, InteractiveTableSelectCell, WorkbenchAssetGallery, WorkbenchContentPane, WorkbenchContentToolbar, WorkbenchDetailSidebar, WorkbenchEvidenceList, WorkbenchGalleryCard, WorkbenchGallerySettingsButton, WorkbenchGallerySettingsPanel, WorkbenchGalleryView, WorkbenchJourneyNavigation, WorkbenchLaneView, WorkbenchMasonryLayout, WorkbenchMetricGrid, WorkbenchRadarFilterChip, WorkbenchRadarInspectorSection, WorkbenchRadarMatrix, WorkbenchRadarWorkspace, WorkbenchRankedList, WorkbenchRelationshipGraph, WorkbenchResizableSidebar, WorkbenchScatterPlot, WorkbenchSelectionTray, WorkbenchTableView };
10101
+ export { InteractiveTable, InteractiveTableEditableTextCell, InteractiveTableReadonlyCell, InteractiveTableSelectCell, WorkbenchAssetGallery, WorkbenchContentPane, WorkbenchContentToolbar, WorkbenchDetailSidebar, WorkbenchEvidenceList, WorkbenchGalleryCard, WorkbenchGallerySettingsButton, WorkbenchGallerySettingsPanel, WorkbenchGalleryView, WorkbenchJourneyNavigation, WorkbenchLaneView, WorkbenchMasonryLayout, WorkbenchMetricGrid, WorkbenchRadarFilterChip, WorkbenchRadarInspectorSection, WorkbenchRadarMatrix, WorkbenchRadarNavigation, WorkbenchRadarWorkspace, WorkbenchRankedList, WorkbenchRelationshipGraph, WorkbenchResizableSidebar, WorkbenchScatterPlot, WorkbenchSelectionTray, WorkbenchTableView };
10083
10102
  //# sourceMappingURL=index.mjs.map
10084
10103
  //# sourceMappingURL=index.mjs.map