@cere/cere-design-system 0.0.23 → 0.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -42,7 +42,7 @@ __export(index_exports, {
42
42
  BackgroundVariant: () => import_reactflow2.BackgroundVariant,
43
43
  Badge: () => Badge,
44
44
  BarTrackingIcon: () => BarTrackingIcon,
45
- Box: () => import_material34.Box,
45
+ Box: () => import_material35.Box,
46
46
  Breadcrumbs: () => Breadcrumbs,
47
47
  Button: () => Button,
48
48
  ButtonGroup: () => ButtonGroup,
@@ -63,8 +63,9 @@ __export(index_exports, {
63
63
  Collapse: () => Collapse,
64
64
  ConnectionLineType: () => import_reactflow2.ConnectionLineType,
65
65
  ConnectionStatus: () => ConnectionStatus,
66
- Container: () => import_material36.Container,
66
+ Container: () => import_material37.Container,
67
67
  Controls: () => import_reactflow2.Controls,
68
+ DateRangePicker: () => DateRangePicker,
68
69
  DecentralizedServerIcon: () => DecentralizedServerIcon,
69
70
  DeploymentDashboardCard: () => DeploymentDashboardCard,
70
71
  DeploymentDashboardPanel: () => DeploymentDashboardPanel,
@@ -87,7 +88,7 @@ __export(index_exports, {
87
88
  FormHelperText: () => import_material3.FormHelperText,
88
89
  FormLabel: () => import_material3.FormLabel,
89
90
  GithubLogoIcon: () => GithubLogoIcon,
90
- Grid: () => import_material31.Grid2,
91
+ Grid: () => import_material32.Grid2,
91
92
  IDBlock: () => IDBlock,
92
93
  IconButton: () => IconButton,
93
94
  InputAdornment: () => import_material3.InputAdornment,
@@ -112,8 +113,8 @@ __export(index_exports, {
112
113
  NavigationList: () => NavigationList,
113
114
  OnboardingProvider: () => OnboardingProvider,
114
115
  Pagination: () => Pagination,
115
- Panel: () => import_reactflow3.Panel,
116
- Paper: () => Paper2,
116
+ Panel: () => import_reactflow4.Panel,
117
+ Paper: () => Paper3,
117
118
  PeriodSelect: () => PeriodSelect,
118
119
  Progress: () => Progress,
119
120
  QRCode: () => QRCode,
@@ -130,7 +131,7 @@ __export(index_exports, {
130
131
  Sidebar: () => Sidebar,
131
132
  SidebarItem: () => SidebarItem,
132
133
  Snackbar: () => Snackbar2,
133
- Stack: () => import_material33.Stack,
134
+ Stack: () => import_material34.Stack,
134
135
  Step: () => Step,
135
136
  StepButton: () => StepButton,
136
137
  StepContent: () => StepContent,
@@ -147,12 +148,19 @@ __export(index_exports, {
147
148
  TimeSeriesGraph: () => TimeSeriesGraph,
148
149
  ToggleButton: () => ToggleButton,
149
150
  ToggleButtonGroup: () => ToggleButtonGroup,
150
- Toolbar: () => import_material37.Toolbar,
151
+ Toolbar: () => import_material38.Toolbar,
151
152
  Tooltip: () => Tooltip6,
152
153
  Truncate: () => Truncate,
153
- Typography: () => import_material35.Typography,
154
+ Typography: () => import_material36.Typography,
154
155
  UploadFileIcon: () => UploadFileIcon,
155
156
  UploadFolderIcon: () => UploadFolderIcon,
157
+ WORKFLOW_NODE_LABELS: () => WORKFLOW_NODE_LABELS,
158
+ WORKFLOW_NODE_SHADOW: () => WORKFLOW_NODE_SHADOW,
159
+ WorkflowNode: () => WorkflowNode,
160
+ WorkflowNodeHandle: () => WorkflowNodeHandle,
161
+ WorkflowSideInspector: () => WorkflowSideInspector,
162
+ WorkflowTimeBar: () => WorkflowTimeBar,
163
+ WorkflowTopBar: () => WorkflowTopBar,
156
164
  WorkspaceSelectorButton: () => WorkspaceSelectorButton,
157
165
  colors: () => colors,
158
166
  contextMenuItems: () => contextMenuItems,
@@ -162,7 +170,9 @@ __export(index_exports, {
162
170
  useIsDesktop: () => useIsDesktop,
163
171
  useIsMobile: () => useIsMobile,
164
172
  useIsTablet: () => useIsTablet,
165
- useOnboarding: () => useOnboarding
173
+ useOnboarding: () => useOnboarding,
174
+ workflowConnectionColors: () => workflowConnectionColors,
175
+ workflowNodeColors: () => workflowNodeColors
166
176
  });
167
177
  module.exports = __toCommonJS(index_exports);
168
178
 
@@ -244,6 +254,27 @@ var deploymentStatusColors = {
244
254
  disabled: "#ffffff",
245
255
  disabledDim: "#ded8e1"
246
256
  };
257
+ var workflowNodeColors = {
258
+ start: "#00C950",
259
+ input: "#00A6F4",
260
+ stream: "#00B8DB",
261
+ rafts: "#FF6900",
262
+ cubbies: "#D0C900",
263
+ events: "#F6339A",
264
+ trigger: "#AD46FF",
265
+ action: "#2B7FFF",
266
+ aiModel: "#615FFF",
267
+ aiAgent: "#D0A2FB",
268
+ condition: "#FE9A00",
269
+ output: "#00BC7D",
270
+ end: "#FB2C36"
271
+ };
272
+ var workflowConnectionColors = {
273
+ success: "#22C55E",
274
+ process: "#3B82F6",
275
+ stream: "#06B6D4",
276
+ error: "#EF4444"
277
+ };
247
278
  var deploymentSurfaceTokens = {
248
279
  /** Surface/high background (Figma #fefcff) */
249
280
  surfaceHigh: "#fefcff",
@@ -477,6 +508,10 @@ var theme = (0, import_styles.createTheme)(baseTheme, {
477
508
  deployment: {
478
509
  entity: deploymentEntityColors,
479
510
  status: deploymentStatusColors
511
+ },
512
+ workflow: {
513
+ node: workflowNodeColors,
514
+ connection: workflowConnectionColors
480
515
  }
481
516
  }
482
517
  });
@@ -2376,6 +2411,56 @@ var Radio = ({
2376
2411
  );
2377
2412
  };
2378
2413
 
2414
+ // src/components/inputs/DateRangePicker/DateRangePicker.tsx
2415
+ var import_Stack = __toESM(require("@mui/material/Stack"));
2416
+ var import_Typography = __toESM(require("@mui/material/Typography"));
2417
+ var import_DatePicker = require("@mui/x-date-pickers/DatePicker");
2418
+ var import_LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider");
2419
+ var import_AdapterDateFnsV3 = require("@mui/x-date-pickers/AdapterDateFnsV3");
2420
+ var import_jsx_runtime13 = require("react/jsx-runtime");
2421
+ var DateRangePicker = ({
2422
+ startDate,
2423
+ endDate,
2424
+ onStartDateChange,
2425
+ onEndDateChange,
2426
+ minDate,
2427
+ maxDate,
2428
+ disabled = false,
2429
+ size: size3 = "small"
2430
+ }) => {
2431
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_LocalizationProvider.LocalizationProvider, { dateAdapter: import_AdapterDateFnsV3.AdapterDateFns, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_Stack.default, { direction: "row", spacing: 1, alignItems: "center", children: [
2432
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2433
+ import_DatePicker.DatePicker,
2434
+ {
2435
+ label: "Start date",
2436
+ value: startDate,
2437
+ onChange: onStartDateChange,
2438
+ minDate,
2439
+ maxDate: endDate ?? maxDate,
2440
+ disabled,
2441
+ slotProps: {
2442
+ textField: { size: size3 }
2443
+ }
2444
+ }
2445
+ ),
2446
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_Typography.default, { variant: "body2", color: "text.secondary", children: "\u2013" }),
2447
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2448
+ import_DatePicker.DatePicker,
2449
+ {
2450
+ label: "End date",
2451
+ value: endDate,
2452
+ onChange: onEndDateChange,
2453
+ minDate: startDate ?? minDate,
2454
+ maxDate,
2455
+ disabled,
2456
+ slotProps: {
2457
+ textField: { size: size3 }
2458
+ }
2459
+ }
2460
+ )
2461
+ ] }) });
2462
+ };
2463
+
2379
2464
  // src/components/navigation/Dropdown/Dropdown.tsx
2380
2465
  var import_material6 = require("@mui/material");
2381
2466
  var import_react2 = require("react");
@@ -2384,7 +2469,7 @@ var import_react2 = require("react");
2384
2469
  var import_react = require("react");
2385
2470
  var import_material5 = require("@mui/material");
2386
2471
  var import_icons_material = require("@mui/icons-material");
2387
- var import_jsx_runtime13 = require("react/jsx-runtime");
2472
+ var import_jsx_runtime14 = require("react/jsx-runtime");
2388
2473
  var Clickable = (0, import_material5.styled)(import_material5.Button)({
2389
2474
  padding: 0
2390
2475
  });
@@ -2410,16 +2495,16 @@ var Center = (0, import_material5.styled)(import_material5.Typography)(({ theme:
2410
2495
  color: theme2.palette.text.primary
2411
2496
  }));
2412
2497
  var DropdownAnchor = (0, import_react.forwardRef)(
2413
- ({ open, label, leftElement, onOpen, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Clickable, { ref, ...props, color: "inherit", variant: "text", onClick: onOpen, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Anchor, { variant, spacing: 1, direction: "row", alignItems: "stretch", children: [
2414
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Left, { children: leftElement }),
2415
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Center, { variant: "body1", children: label }),
2416
- variant !== "header" && (open ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_icons_material.ArrowDropUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_icons_material.ArrowDropDown, {}))
2498
+ ({ open, label, leftElement, onOpen, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Clickable, { ref, ...props, color: "inherit", variant: "text", onClick: onOpen, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(Anchor, { variant, spacing: 1, direction: "row", alignItems: "stretch", children: [
2499
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Left, { children: leftElement }),
2500
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Center, { variant: "body1", children: label }),
2501
+ variant !== "header" && (open ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_icons_material.ArrowDropUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_icons_material.ArrowDropDown, {}))
2417
2502
  ] }) })
2418
2503
  );
2419
2504
  DropdownAnchor.displayName = "DropdownAnchor";
2420
2505
 
2421
2506
  // src/components/navigation/Dropdown/Dropdown.tsx
2422
- var import_jsx_runtime14 = require("react/jsx-runtime");
2507
+ var import_jsx_runtime15 = require("react/jsx-runtime");
2423
2508
  var Dropdown = ({
2424
2509
  open,
2425
2510
  label,
@@ -2431,15 +2516,15 @@ var Dropdown = ({
2431
2516
  disableGutters = false,
2432
2517
  disablePaddings = false,
2433
2518
  variant,
2434
- renderAnchor = ({ ref, open: open2, onOpen }) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DropdownAnchor, { ref, open: open2, label, leftElement, onOpen, variant })
2519
+ renderAnchor = ({ ref, open: open2, onOpen }) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownAnchor, { ref, open: open2, label, leftElement, onOpen, variant })
2435
2520
  }) => {
2436
2521
  const anchorRef = (0, import_react2.useRef)(null);
2437
2522
  const horizontal = direction === "left" ? "right" : "left";
2438
2523
  const onOpen = (0, import_react2.useCallback)(() => onToggle?.(true), [onToggle]);
2439
2524
  const padding = dense ? 1 : 2;
2440
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_jsx_runtime14.Fragment, { children: [
2525
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
2441
2526
  renderAnchor({ ref: anchorRef, onOpen, open }),
2442
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2527
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2443
2528
  import_material6.Popover,
2444
2529
  {
2445
2530
  "aria-label": "Overlay",
@@ -2478,7 +2563,7 @@ var import_material8 = require("@mui/material");
2478
2563
 
2479
2564
  // src/components/navigation/SidebarItem.tsx
2480
2565
  var import_material7 = require("@mui/material");
2481
- var import_jsx_runtime15 = require("react/jsx-runtime");
2566
+ var import_jsx_runtime16 = require("react/jsx-runtime");
2482
2567
  var StyledListItemButton = (0, import_material7.styled)(import_material7.ListItemButton, {
2483
2568
  shouldForwardProp: (prop) => prop !== "selected" && prop !== "size"
2484
2569
  })(({ selected, size: size3 = "medium" }) => {
@@ -2517,16 +2602,16 @@ var SidebarItem = ({
2517
2602
  endIcon,
2518
2603
  children
2519
2604
  }) => {
2520
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(StyledListItemButton, { selected, size: size3, onClick, children: [
2521
- icon && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_material7.ListItemIcon, { children: icon }),
2522
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_material7.ListItemText, { primary: label }),
2523
- endIcon && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { style: { marginLeft: "auto" }, children: endIcon }),
2605
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(StyledListItemButton, { selected, size: size3, onClick, children: [
2606
+ icon && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_material7.ListItemIcon, { children: icon }),
2607
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_material7.ListItemText, { primary: label }),
2608
+ endIcon && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { marginLeft: "auto" }, children: endIcon }),
2524
2609
  children
2525
2610
  ] });
2526
2611
  };
2527
2612
 
2528
2613
  // src/components/navigation/Sidebar.tsx
2529
- var import_jsx_runtime16 = require("react/jsx-runtime");
2614
+ var import_jsx_runtime17 = require("react/jsx-runtime");
2530
2615
  var StyledDrawer = (0, import_material8.styled)(import_material8.Drawer)(() => ({
2531
2616
  "& .MuiDrawer-paper": {
2532
2617
  backgroundColor: colors.background.paper,
@@ -2541,7 +2626,7 @@ var Sidebar = ({
2541
2626
  onClose,
2542
2627
  variant = "permanent"
2543
2628
  }) => {
2544
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2629
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2545
2630
  StyledDrawer,
2546
2631
  {
2547
2632
  variant,
@@ -2555,7 +2640,7 @@ var Sidebar = ({
2555
2640
  boxSizing: "border-box"
2556
2641
  }
2557
2642
  },
2558
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_material8.Box, { sx: { overflow: "auto", padding: "8px 0" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_material8.List, { children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SidebarItem, { ...item }, index)) }) })
2643
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material8.Box, { sx: { overflow: "auto", padding: "8px 0" }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material8.List, { children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SidebarItem, { ...item }, index)) }) })
2559
2644
  }
2560
2645
  );
2561
2646
  };
@@ -2571,7 +2656,7 @@ var import_Add = __toESM(require("@mui/icons-material/Add"));
2571
2656
  var import_Check = __toESM(require("@mui/icons-material/Check"));
2572
2657
  var import_Settings = __toESM(require("@mui/icons-material/Settings"));
2573
2658
  var import_PersonAddAlt = __toESM(require("@mui/icons-material/PersonAddAlt"));
2574
- var import_jsx_runtime17 = require("react/jsx-runtime");
2659
+ var import_jsx_runtime18 = require("react/jsx-runtime");
2575
2660
  var ServiceSelectorButton = ({
2576
2661
  services,
2577
2662
  selectedServiceId,
@@ -2628,8 +2713,8 @@ var ServiceSelectorButton = ({
2628
2713
  return matchesSearch && matchesArchivedFilter;
2629
2714
  });
2630
2715
  if (compact) {
2631
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
2632
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Box, { sx: { position: "relative" }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Tooltip, { title: "Select service", placement: "right", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2716
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
2717
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Box, { sx: { position: "relative" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Tooltip, { title: "Select service", placement: "right", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2633
2718
  import_material9.IconButton,
2634
2719
  {
2635
2720
  onClick: handleOpenSelector,
@@ -2640,7 +2725,7 @@ var ServiceSelectorButton = ({
2640
2725
  },
2641
2726
  ...sx
2642
2727
  },
2643
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2728
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2644
2729
  import_material9.Avatar,
2645
2730
  {
2646
2731
  sx: {
@@ -2654,7 +2739,7 @@ var ServiceSelectorButton = ({
2654
2739
  )
2655
2740
  }
2656
2741
  ) }) }),
2657
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2742
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2658
2743
  ServiceSelectorPanel,
2659
2744
  {
2660
2745
  open: Boolean(anchorEl),
@@ -2680,10 +2765,10 @@ var ServiceSelectorButton = ({
2680
2765
  )
2681
2766
  ] });
2682
2767
  }
2683
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
2684
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
2685
- selectedService ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
2686
- isManager ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2768
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
2769
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
2770
+ selectedService ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
2771
+ isManager ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2687
2772
  import_material9.Link,
2688
2773
  {
2689
2774
  underline: "hover",
@@ -2697,7 +2782,7 @@ var ServiceSelectorButton = ({
2697
2782
  mr: 0.5
2698
2783
  },
2699
2784
  children: [
2700
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2785
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2701
2786
  import_material9.Avatar,
2702
2787
  {
2703
2788
  sx: {
@@ -2713,7 +2798,7 @@ var ServiceSelectorButton = ({
2713
2798
  selectedService.name
2714
2799
  ]
2715
2800
  }
2716
- ) : /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2801
+ ) : /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2717
2802
  import_material9.Box,
2718
2803
  {
2719
2804
  sx: {
@@ -2724,7 +2809,7 @@ var ServiceSelectorButton = ({
2724
2809
  color: "text.primary"
2725
2810
  },
2726
2811
  children: [
2727
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2812
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2728
2813
  import_material9.Avatar,
2729
2814
  {
2730
2815
  sx: {
@@ -2741,7 +2826,7 @@ var ServiceSelectorButton = ({
2741
2826
  ]
2742
2827
  }
2743
2828
  ),
2744
- selectedService.archived && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2829
+ selectedService.archived && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2745
2830
  import_material9.Chip,
2746
2831
  {
2747
2832
  size: "small",
@@ -2757,7 +2842,7 @@ var ServiceSelectorButton = ({
2757
2842
  }
2758
2843
  }
2759
2844
  )
2760
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2845
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2761
2846
  import_material9.Typography,
2762
2847
  {
2763
2848
  variant: "body2",
@@ -2768,7 +2853,7 @@ var ServiceSelectorButton = ({
2768
2853
  children: "Select Service"
2769
2854
  }
2770
2855
  ),
2771
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2856
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2772
2857
  import_material9.IconButton,
2773
2858
  {
2774
2859
  onClick: handleOpenSelector,
@@ -2778,11 +2863,11 @@ var ServiceSelectorButton = ({
2778
2863
  ml: 0.5,
2779
2864
  color: "text.secondary"
2780
2865
  },
2781
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_KeyboardArrowDown.default, { fontSize: "small" })
2866
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_KeyboardArrowDown.default, { fontSize: "small" })
2782
2867
  }
2783
2868
  )
2784
2869
  ] }),
2785
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2870
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2786
2871
  ServiceSelectorPanel,
2787
2872
  {
2788
2873
  open: Boolean(anchorEl),
@@ -2851,7 +2936,7 @@ var ServiceSelectorPanel = ({
2851
2936
  }
2852
2937
  }
2853
2938
  };
2854
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2939
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2855
2940
  import_material9.Menu,
2856
2941
  {
2857
2942
  anchorEl,
@@ -2876,7 +2961,7 @@ var ServiceSelectorPanel = ({
2876
2961
  }
2877
2962
  },
2878
2963
  children: [
2879
- selectedService && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2964
+ selectedService && /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2880
2965
  import_material9.Box,
2881
2966
  {
2882
2967
  sx: {
@@ -2888,12 +2973,12 @@ var ServiceSelectorPanel = ({
2888
2973
  borderColor: "divider"
2889
2974
  },
2890
2975
  children: [
2891
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: {
2976
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: {
2892
2977
  display: "flex",
2893
2978
  alignItems: "center",
2894
2979
  mb: 1.5
2895
2980
  }, children: [
2896
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2981
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2897
2982
  import_material9.Avatar,
2898
2983
  {
2899
2984
  sx: {
@@ -2906,9 +2991,9 @@ var ServiceSelectorPanel = ({
2906
2991
  children: selectedService.name.charAt(0)
2907
2992
  }
2908
2993
  ),
2909
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
2910
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Typography, { variant: "subtitle1", sx: { fontWeight: 600, fontSize: "1rem" }, children: selectedService.name }),
2911
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2994
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
2995
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Typography, { variant: "subtitle1", sx: { fontWeight: 600, fontSize: "1rem" }, children: selectedService.name }),
2996
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2912
2997
  import_material9.Box,
2913
2998
  {
2914
2999
  sx: {
@@ -2927,11 +3012,11 @@ var ServiceSelectorPanel = ({
2927
3012
  )
2928
3013
  ] }) })
2929
3014
  ] }),
2930
- (onOpenSettings || onOpenAddMember) && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: { display: "flex", gap: 1 }, children: [
2931
- onOpenAddMember && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3015
+ (onOpenSettings || onOpenAddMember) && /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: { display: "flex", gap: 1 }, children: [
3016
+ onOpenAddMember && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2932
3017
  import_material9.Button,
2933
3018
  {
2934
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_PersonAddAlt.default, {}),
3019
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_PersonAddAlt.default, {}),
2935
3020
  variant: "outlined",
2936
3021
  size: "small",
2937
3022
  onClick: (e) => {
@@ -2961,10 +3046,10 @@ var ServiceSelectorPanel = ({
2961
3046
  children: "Add member"
2962
3047
  }
2963
3048
  ),
2964
- onOpenSettings && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3049
+ onOpenSettings && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2965
3050
  import_material9.Button,
2966
3051
  {
2967
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_Settings.default, {}),
3052
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Settings.default, {}),
2968
3053
  variant: "outlined",
2969
3054
  size: "small",
2970
3055
  onClick: (e) => {
@@ -2998,9 +3083,9 @@ var ServiceSelectorPanel = ({
2998
3083
  ]
2999
3084
  }
3000
3085
  ),
3001
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: { px: 2, pt: 2, pb: 1.5 }, children: [
3002
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", mb: 1.5 }, children: [
3003
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3086
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: { px: 2, pt: 2, pb: 1.5 }, children: [
3087
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material9.Box, { sx: { display: "flex", alignItems: "center", mb: 1.5 }, children: [
3088
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3004
3089
  import_material9.TextField,
3005
3090
  {
3006
3091
  size: "small",
@@ -3009,7 +3094,7 @@ var ServiceSelectorPanel = ({
3009
3094
  onChange: (e) => setSearchTerm(e.target.value),
3010
3095
  sx: { flex: 1 },
3011
3096
  InputProps: {
3012
- startAdornment: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_Search2.default, { fontSize: "small", color: "action" }) }),
3097
+ startAdornment: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Search2.default, { fontSize: "small", color: "action" }) }),
3013
3098
  sx: {
3014
3099
  borderRadius: 1.5,
3015
3100
  backgroundColor: "rgba(0, 0, 0, 0.04)",
@@ -3019,18 +3104,18 @@ var ServiceSelectorPanel = ({
3019
3104
  }
3020
3105
  }
3021
3106
  ),
3022
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Tooltip, { title: showArchived ? "Show active" : "Show archived", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3107
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Tooltip, { title: showArchived ? "Show active" : "Show archived", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3023
3108
  import_material9.IconButton,
3024
3109
  {
3025
3110
  size: "small",
3026
3111
  onClick: toggleArchived,
3027
3112
  color: showArchived ? "primary" : "default",
3028
3113
  sx: { ml: 1 },
3029
- children: showArchived ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_Unarchive.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_Archive.default, { fontSize: "small" })
3114
+ children: showArchived ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Unarchive.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Archive.default, { fontSize: "small" })
3030
3115
  }
3031
3116
  ) })
3032
3117
  ] }),
3033
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3118
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3034
3119
  import_material9.Box,
3035
3120
  {
3036
3121
  sx: {
@@ -3038,8 +3123,8 @@ var ServiceSelectorPanel = ({
3038
3123
  overflow: "auto",
3039
3124
  py: 1
3040
3125
  },
3041
- children: loading ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Typography, { variant: "body2", color: "text.secondary", children: "Loading services..." }) }) : filteredServices.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Typography, { variant: "body2", color: "text.secondary", children: searchTerm ? `No ${showArchived ? "archived " : ""}services matching "${searchTerm}"` : showArchived ? "No archived services found" : "No active services found" }) }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
3042
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
3126
+ children: loading ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Typography, { variant: "body2", color: "text.secondary", children: "Loading services..." }) }) : filteredServices.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Typography, { variant: "body2", color: "text.secondary", children: searchTerm ? `No ${showArchived ? "archived " : ""}services matching "${searchTerm}"` : showArchived ? "No archived services found" : "No active services found" }) }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
3127
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3043
3128
  import_material9.Typography,
3044
3129
  {
3045
3130
  variant: "caption",
@@ -3055,7 +3140,7 @@ var ServiceSelectorPanel = ({
3055
3140
  },
3056
3141
  children: [
3057
3142
  "Services",
3058
- showArchived && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3143
+ showArchived && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3059
3144
  import_material9.Chip,
3060
3145
  {
3061
3146
  size: "small",
@@ -3074,7 +3159,7 @@ var ServiceSelectorPanel = ({
3074
3159
  ]
3075
3160
  }
3076
3161
  ),
3077
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.List, { disablePadding: true, children: filteredServices.map((service) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
3162
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.List, { disablePadding: true, children: filteredServices.map((service) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3078
3163
  import_material9.ListItem,
3079
3164
  {
3080
3165
  sx: {
@@ -3088,7 +3173,7 @@ var ServiceSelectorPanel = ({
3088
3173
  position: "relative"
3089
3174
  },
3090
3175
  onClick: () => onSelectService(service.id),
3091
- secondaryAction: service.id === selectedServiceId ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3176
+ secondaryAction: service.id === selectedServiceId ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3092
3177
  import_Check.default,
3093
3178
  {
3094
3179
  sx: {
@@ -3098,7 +3183,7 @@ var ServiceSelectorPanel = ({
3098
3183
  }
3099
3184
  ) : null,
3100
3185
  children: [
3101
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.ListItemAvatar, { sx: { minWidth: 40 }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3186
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.ListItemAvatar, { sx: { minWidth: 40 }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3102
3187
  import_material9.Avatar,
3103
3188
  {
3104
3189
  sx: {
@@ -3111,10 +3196,10 @@ var ServiceSelectorPanel = ({
3111
3196
  children: service.name.charAt(0)
3112
3197
  }
3113
3198
  ) }),
3114
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3199
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3115
3200
  import_material9.ListItemText,
3116
3201
  {
3117
- primary: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_material9.Box, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3202
+ primary: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material9.Box, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3118
3203
  import_material9.Typography,
3119
3204
  {
3120
3205
  variant: "body2",
@@ -3136,7 +3221,7 @@ var ServiceSelectorPanel = ({
3136
3221
  ] })
3137
3222
  }
3138
3223
  ),
3139
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3224
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3140
3225
  import_material9.Box,
3141
3226
  {
3142
3227
  sx: {
@@ -3146,12 +3231,12 @@ var ServiceSelectorPanel = ({
3146
3231
  borderTop: 1,
3147
3232
  borderColor: "divider"
3148
3233
  },
3149
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3234
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3150
3235
  import_material9.Button,
3151
3236
  {
3152
3237
  fullWidth: true,
3153
3238
  variant: "text",
3154
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_Add.default, {}),
3239
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Add.default, {}),
3155
3240
  onClick: handleCreateClick,
3156
3241
  sx: {
3157
3242
  textTransform: "none",
@@ -3182,7 +3267,7 @@ var import_KeyboardArrowDown2 = __toESM(require("@mui/icons-material/KeyboardArr
3182
3267
  var import_Search3 = __toESM(require("@mui/icons-material/Search"));
3183
3268
  var import_Add2 = __toESM(require("@mui/icons-material/Add"));
3184
3269
  var import_Check2 = __toESM(require("@mui/icons-material/Check"));
3185
- var import_jsx_runtime18 = require("react/jsx-runtime");
3270
+ var import_jsx_runtime19 = require("react/jsx-runtime");
3186
3271
  var WorkspaceSelectorButton = ({
3187
3272
  workspaces,
3188
3273
  selectedWorkspaceId,
@@ -3214,9 +3299,9 @@ var WorkspaceSelectorButton = ({
3214
3299
  if (!workspaces || workspaces.length === 0) {
3215
3300
  return null;
3216
3301
  }
3217
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_jsx_runtime18.Fragment, { children: [
3218
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material10.Box, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
3219
- selectedWorkspace ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_jsx_runtime18.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3302
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_jsx_runtime19.Fragment, { children: [
3303
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_material10.Box, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
3304
+ selectedWorkspace ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_jsx_runtime19.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
3220
3305
  import_material10.Link,
3221
3306
  {
3222
3307
  underline: "hover",
@@ -3235,7 +3320,7 @@ var WorkspaceSelectorButton = ({
3235
3320
  mr: 0.5
3236
3321
  },
3237
3322
  children: [
3238
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3323
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3239
3324
  import_material10.Avatar,
3240
3325
  {
3241
3326
  sx: {
@@ -3251,7 +3336,7 @@ var WorkspaceSelectorButton = ({
3251
3336
  selectedWorkspace.name
3252
3337
  ]
3253
3338
  }
3254
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3339
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3255
3340
  import_material10.Typography,
3256
3341
  {
3257
3342
  variant: "body2",
@@ -3262,7 +3347,7 @@ var WorkspaceSelectorButton = ({
3262
3347
  children: "Select Workspace"
3263
3348
  }
3264
3349
  ),
3265
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3350
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3266
3351
  import_material10.IconButton,
3267
3352
  {
3268
3353
  onClick: handleOpenSelector,
@@ -3272,11 +3357,11 @@ var WorkspaceSelectorButton = ({
3272
3357
  ml: 0.5,
3273
3358
  color: "text.secondary"
3274
3359
  },
3275
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_KeyboardArrowDown2.default, { fontSize: "small" })
3360
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_KeyboardArrowDown2.default, { fontSize: "small" })
3276
3361
  }
3277
3362
  )
3278
3363
  ] }),
3279
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3364
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3280
3365
  WorkspaceSelectorPanel,
3281
3366
  {
3282
3367
  open: Boolean(anchorEl),
@@ -3322,7 +3407,7 @@ var WorkspaceSelectorPanel = ({
3322
3407
  onSelectWorkspace(workspaceId);
3323
3408
  onClose();
3324
3409
  };
3325
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3410
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3326
3411
  import_material10.Menu,
3327
3412
  {
3328
3413
  open,
@@ -3338,8 +3423,8 @@ var WorkspaceSelectorPanel = ({
3338
3423
  borderRadius: 2
3339
3424
  }
3340
3425
  },
3341
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material10.Box, { children: [
3342
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Box, { sx: { px: 2, pt: 2, pb: 1.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3426
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_material10.Box, { children: [
3427
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Box, { sx: { px: 2, pt: 2, pb: 1.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3343
3428
  import_material10.TextField,
3344
3429
  {
3345
3430
  fullWidth: true,
@@ -3348,11 +3433,11 @@ var WorkspaceSelectorPanel = ({
3348
3433
  value: searchTerm,
3349
3434
  onChange: (e) => setSearchTerm(e.target.value),
3350
3435
  InputProps: {
3351
- startAdornment: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Search3.default, { fontSize: "small" }) })
3436
+ startAdornment: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_Search3.default, { fontSize: "small" }) })
3352
3437
  }
3353
3438
  }
3354
3439
  ) }),
3355
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Box, { sx: { maxHeight: 400, overflowY: "auto" }, children: loading ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Typography, { variant: "body2", color: "text.secondary", children: "Loading..." }) }) : filteredWorkspaces.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Typography, { variant: "body2", color: "text.secondary", children: "No workspaces found" }) }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.List, { dense: true, children: filteredWorkspaces.map((workspace) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3440
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Box, { sx: { maxHeight: 400, overflowY: "auto" }, children: loading ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Typography, { variant: "body2", color: "text.secondary", children: "Loading..." }) }) : filteredWorkspaces.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Typography, { variant: "body2", color: "text.secondary", children: "No workspaces found" }) }) : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.List, { dense: true, children: filteredWorkspaces.map((workspace) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
3356
3441
  import_material10.ListItem,
3357
3442
  {
3358
3443
  onClick: () => handleSelect(workspace.id),
@@ -3365,19 +3450,19 @@ var WorkspaceSelectorPanel = ({
3365
3450
  }
3366
3451
  },
3367
3452
  children: [
3368
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3453
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3369
3454
  import_material10.Avatar,
3370
3455
  {
3371
3456
  sx: { width: 32, height: 32, bgcolor: "secondary.main" },
3372
3457
  children: workspace.name.charAt(0)
3373
3458
  }
3374
3459
  ) }),
3375
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3460
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3376
3461
  import_material10.ListItemText,
3377
3462
  {
3378
- primary: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(import_material10.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
3379
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_material10.Typography, { variant: "body2", fontWeight: 500, children: workspace.name }),
3380
- workspace.id === selectedWorkspaceId && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Check2.default, { fontSize: "small", color: "primary" })
3463
+ primary: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(import_material10.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
3464
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material10.Typography, { variant: "body2", fontWeight: 500, children: workspace.name }),
3465
+ workspace.id === selectedWorkspaceId && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_Check2.default, { fontSize: "small", color: "primary" })
3381
3466
  ] }),
3382
3467
  secondary: workspace.description
3383
3468
  }
@@ -3386,7 +3471,7 @@ var WorkspaceSelectorPanel = ({
3386
3471
  },
3387
3472
  workspace.id
3388
3473
  )) }) }),
3389
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3474
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3390
3475
  import_material10.Box,
3391
3476
  {
3392
3477
  sx: {
@@ -3396,12 +3481,12 @@ var WorkspaceSelectorPanel = ({
3396
3481
  borderTop: 1,
3397
3482
  borderColor: "divider"
3398
3483
  },
3399
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3484
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3400
3485
  import_material10.Button,
3401
3486
  {
3402
3487
  fullWidth: true,
3403
3488
  variant: "text",
3404
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_Add2.default, {}),
3489
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_Add2.default, {}),
3405
3490
  onClick: handleCreateClick,
3406
3491
  sx: {
3407
3492
  textTransform: "none",
@@ -3426,21 +3511,21 @@ var WorkspaceSelectorPanel = ({
3426
3511
 
3427
3512
  // src/components/navigation/Stepper.tsx
3428
3513
  var import_material11 = require("@mui/material");
3429
- var import_jsx_runtime19 = require("react/jsx-runtime");
3514
+ var import_jsx_runtime20 = require("react/jsx-runtime");
3430
3515
  var Stepper = (props) => {
3431
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material11.Stepper, { ...props });
3516
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material11.Stepper, { ...props });
3432
3517
  };
3433
3518
  var Step = (props) => {
3434
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material11.Step, { ...props });
3519
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material11.Step, { ...props });
3435
3520
  };
3436
3521
  var StepLabel = (props) => {
3437
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material11.StepLabel, { ...props });
3522
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material11.StepLabel, { ...props });
3438
3523
  };
3439
3524
  var StepContent = (props) => {
3440
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material11.StepContent, { ...props });
3525
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material11.StepContent, { ...props });
3441
3526
  };
3442
3527
  var StepButton = (props) => {
3443
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_material11.StepButton, { ...props });
3528
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_material11.StepButton, { ...props });
3444
3529
  };
3445
3530
 
3446
3531
  // src/components/navigation/SideNav/SideNav.tsx
@@ -3466,7 +3551,7 @@ var scrollbarStyles = {
3466
3551
  };
3467
3552
 
3468
3553
  // src/components/navigation/SideNav/SideNav.tsx
3469
- var import_jsx_runtime20 = require("react/jsx-runtime");
3554
+ var import_jsx_runtime21 = require("react/jsx-runtime");
3470
3555
  var SideNavContext = import_react5.default.createContext({
3471
3556
  collapsed: false,
3472
3557
  showTooltips: true
@@ -3516,7 +3601,7 @@ var Header = import_react5.default.memo(({ children, className }) => {
3516
3601
  }
3517
3602
  return child;
3518
3603
  });
3519
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(HeaderSection, { className, "data-testid": "sidenav-header", children: enhancedChildren });
3604
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(HeaderSection, { className, "data-testid": "sidenav-header", children: enhancedChildren });
3520
3605
  });
3521
3606
  Header.displayName = "SideNav.Header";
3522
3607
  var Navigation = import_react5.default.memo(({ children, className }) => {
@@ -3530,7 +3615,7 @@ var Navigation = import_react5.default.memo(({ children, className }) => {
3530
3615
  }
3531
3616
  return child;
3532
3617
  });
3533
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(NavigationSection, { className, "data-testid": "sidenav-navigation", children: enhancedChildren });
3618
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(NavigationSection, { className, "data-testid": "sidenav-navigation", children: enhancedChildren });
3534
3619
  });
3535
3620
  Navigation.displayName = "SideNav.Navigation";
3536
3621
  var Footer = import_react5.default.memo(({ children, className }) => {
@@ -3543,7 +3628,7 @@ var Footer = import_react5.default.memo(({ children, className }) => {
3543
3628
  }
3544
3629
  return child;
3545
3630
  });
3546
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(FooterSection, { className, "data-testid": "sidenav-footer", children: enhancedChildren });
3631
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(FooterSection, { className, "data-testid": "sidenav-footer", children: enhancedChildren });
3547
3632
  });
3548
3633
  Footer.displayName = "SideNav.Footer";
3549
3634
  var SideNav = Object.assign(
@@ -3579,7 +3664,7 @@ var SideNav = Object.assign(
3579
3664
  showTooltips,
3580
3665
  onToggleCollapse: handleToggleCollapse
3581
3666
  };
3582
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(SideNavContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3667
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(SideNavContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3583
3668
  SideNavContainer,
3584
3669
  {
3585
3670
  role: "navigation",
@@ -3610,7 +3695,7 @@ var import_material13 = require("@mui/material");
3610
3695
  var import_styles11 = require("@mui/material/styles");
3611
3696
  var import_ChevronLeft = __toESM(require("@mui/icons-material/ChevronLeft"));
3612
3697
  var import_ChevronRight = __toESM(require("@mui/icons-material/ChevronRight"));
3613
- var import_jsx_runtime21 = require("react/jsx-runtime");
3698
+ var import_jsx_runtime22 = require("react/jsx-runtime");
3614
3699
  var HeaderContainer = (0, import_styles11.styled)(import_material13.Box, {
3615
3700
  shouldForwardProp: (prop) => prop !== "isCollapsed"
3616
3701
  })(({ theme: theme2, isCollapsed }) => ({
@@ -3651,8 +3736,8 @@ var SideNavHeader = import_react6.default.memo(({
3651
3736
  collapsed = false
3652
3737
  }) => {
3653
3738
  const headerAriaLabel = ariaLabel || `${title} navigation header`;
3654
- const brandingContent = /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
3655
- logo && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3739
+ const brandingContent = /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [
3740
+ logo && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3656
3741
  import_material13.Box,
3657
3742
  {
3658
3743
  sx: {
@@ -3664,7 +3749,7 @@ var SideNavHeader = import_react6.default.memo(({
3664
3749
  children: logo
3665
3750
  }
3666
3751
  ),
3667
- !collapsed && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3752
+ !collapsed && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3668
3753
  import_material13.Typography,
3669
3754
  {
3670
3755
  variant: "subtitle1",
@@ -3679,14 +3764,14 @@ var SideNavHeader = import_react6.default.memo(({
3679
3764
  }
3680
3765
  )
3681
3766
  ] });
3682
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
3767
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
3683
3768
  HeaderContainer,
3684
3769
  {
3685
3770
  "data-testid": "sidenav-header-content",
3686
3771
  "aria-label": headerAriaLabel,
3687
3772
  isCollapsed: collapsed,
3688
3773
  children: [
3689
- onLogoClick ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3774
+ onLogoClick ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3690
3775
  BrandingButton,
3691
3776
  {
3692
3777
  onClick: onLogoClick,
@@ -3694,7 +3779,7 @@ var SideNavHeader = import_react6.default.memo(({
3694
3779
  "data-testid": "sidenav-home-link",
3695
3780
  children: brandingContent
3696
3781
  }
3697
- ) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3782
+ ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3698
3783
  import_material13.Box,
3699
3784
  {
3700
3785
  sx: {
@@ -3706,13 +3791,13 @@ var SideNavHeader = import_react6.default.memo(({
3706
3791
  children: brandingContent
3707
3792
  }
3708
3793
  ),
3709
- showCollapseButton && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3794
+ showCollapseButton && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3710
3795
  import_material13.Tooltip,
3711
3796
  {
3712
3797
  title: collapsed ? "Expand navigation" : "Collapse navigation",
3713
3798
  placement: "right",
3714
3799
  arrow: true,
3715
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3800
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3716
3801
  import_material13.IconButton,
3717
3802
  {
3718
3803
  onClick: onCollapse,
@@ -3728,7 +3813,7 @@ var SideNavHeader = import_react6.default.memo(({
3728
3813
  color: "text.primary"
3729
3814
  }
3730
3815
  },
3731
- children: collapsed ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ChevronRight.default, {}) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ChevronLeft.default, {})
3816
+ children: collapsed ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_ChevronRight.default, {}) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_ChevronLeft.default, {})
3732
3817
  }
3733
3818
  )
3734
3819
  }
@@ -3747,7 +3832,7 @@ var import_material15 = require("@mui/material");
3747
3832
  var import_react7 = __toESM(require("react"));
3748
3833
  var import_material14 = require("@mui/material");
3749
3834
  var import_styles12 = require("@mui/material/styles");
3750
- var import_jsx_runtime22 = require("react/jsx-runtime");
3835
+ var import_jsx_runtime23 = require("react/jsx-runtime");
3751
3836
  var StyledListItemButton2 = (0, import_styles12.styled)(import_material14.ListItemButton, {
3752
3837
  shouldForwardProp: (prop) => !["selected", "size", "iconPosition", "isCollapsed"].includes(prop)
3753
3838
  })(({ theme: theme2, selected, size: size3, isCollapsed }) => {
@@ -3831,7 +3916,7 @@ var NavigationItem = import_react7.default.memo(({
3831
3916
  onClick(id);
3832
3917
  }
3833
3918
  };
3834
- const iconElement = icon && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3919
+ const iconElement = icon && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3835
3920
  import_material14.ListItemIcon,
3836
3921
  {
3837
3922
  sx: {
@@ -3845,7 +3930,7 @@ var NavigationItem = import_react7.default.memo(({
3845
3930
  children: icon
3846
3931
  }
3847
3932
  );
3848
- const labelElement = /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3933
+ const labelElement = /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3849
3934
  import_material14.ListItemText,
3850
3935
  {
3851
3936
  primary: label,
@@ -3864,7 +3949,7 @@ var NavigationItem = import_react7.default.memo(({
3864
3949
  }
3865
3950
  }
3866
3951
  );
3867
- const buttonContent = /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
3952
+ const buttonContent = /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
3868
3953
  StyledListItemButton2,
3869
3954
  {
3870
3955
  selected,
@@ -3881,7 +3966,7 @@ var NavigationItem = import_react7.default.memo(({
3881
3966
  icon && iconPosition === "left" && iconElement,
3882
3967
  labelElement,
3883
3968
  icon && iconPosition === "right" && iconElement,
3884
- endContent && !collapsed && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3969
+ endContent && !collapsed && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3885
3970
  import_material14.Box,
3886
3971
  {
3887
3972
  sx: {
@@ -3896,7 +3981,7 @@ var NavigationItem = import_react7.default.memo(({
3896
3981
  }
3897
3982
  );
3898
3983
  if (collapsed && showTooltip) {
3899
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3984
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3900
3985
  import_material14.Tooltip,
3901
3986
  {
3902
3987
  title: label,
@@ -3913,7 +3998,7 @@ var NavigationItem = import_react7.default.memo(({
3913
3998
  NavigationItem.displayName = "NavigationItem";
3914
3999
 
3915
4000
  // src/components/navigation/SideNav/NavigationList.tsx
3916
- var import_jsx_runtime23 = require("react/jsx-runtime");
4001
+ var import_jsx_runtime24 = require("react/jsx-runtime");
3917
4002
  var NavigationList = import_react8.default.memo(({
3918
4003
  items,
3919
4004
  selectedId,
@@ -3936,7 +4021,7 @@ var NavigationList = import_react8.default.memo(({
3936
4021
  onSelectionChange(id);
3937
4022
  }
3938
4023
  };
3939
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4024
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3940
4025
  import_material15.List,
3941
4026
  {
3942
4027
  role: "list",
@@ -3950,7 +4035,7 @@ var NavigationList = import_react8.default.memo(({
3950
4035
  },
3951
4036
  children: items.map((item, index) => {
3952
4037
  const isSelected = currentSelectedId === item.id;
3953
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4038
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3954
4039
  import_material15.ListItem,
3955
4040
  {
3956
4041
  role: "listitem",
@@ -3958,7 +4043,7 @@ var NavigationList = import_react8.default.memo(({
3958
4043
  padding: 0,
3959
4044
  display: "block"
3960
4045
  },
3961
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4046
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3962
4047
  NavigationItem,
3963
4048
  {
3964
4049
  ...item,
@@ -3990,7 +4075,7 @@ var import_react9 = __toESM(require("react"));
3990
4075
  var import_material16 = require("@mui/material");
3991
4076
  var import_styles14 = require("@mui/material/styles");
3992
4077
  var import_Power = __toESM(require("@mui/icons-material/Power"));
3993
- var import_jsx_runtime24 = require("react/jsx-runtime");
4078
+ var import_jsx_runtime25 = require("react/jsx-runtime");
3994
4079
  var StatusPill = (0, import_styles14.styled)(import_material16.Box, {
3995
4080
  shouldForwardProp: (prop) => !["variant", "interactive"].includes(prop)
3996
4081
  })(({ theme: theme2, variant = "info", interactive }) => {
@@ -4065,7 +4150,7 @@ var ConnectionStatus = import_react9.default.memo(({
4065
4150
  onClick();
4066
4151
  }
4067
4152
  };
4068
- const statusContent = /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
4153
+ const statusContent = /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4069
4154
  StatusPill,
4070
4155
  {
4071
4156
  role: "status",
@@ -4076,7 +4161,7 @@ var ConnectionStatus = import_react9.default.memo(({
4076
4161
  interactive,
4077
4162
  onClick: handleClick,
4078
4163
  children: [
4079
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4164
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4080
4165
  import_material16.Box,
4081
4166
  {
4082
4167
  sx: {
@@ -4085,15 +4170,15 @@ var ConnectionStatus = import_react9.default.memo(({
4085
4170
  fontSize: 16,
4086
4171
  color: "inherit"
4087
4172
  },
4088
- children: icon || /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_Power.default, { fontSize: "small" })
4173
+ children: icon || /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_Power.default, { fontSize: "small" })
4089
4174
  }
4090
4175
  ),
4091
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_material16.Typography, { className: "status-text", variant: "body2", children: compact ? compactText ?? status : status })
4176
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_material16.Typography, { className: "status-text", variant: "body2", children: compact ? compactText ?? status : status })
4092
4177
  ]
4093
4178
  }
4094
4179
  );
4095
4180
  if (compact) {
4096
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4181
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4097
4182
  import_material16.Box,
4098
4183
  {
4099
4184
  sx: {
@@ -4101,11 +4186,11 @@ var ConnectionStatus = import_react9.default.memo(({
4101
4186
  justifyContent: "center",
4102
4187
  padding: 1
4103
4188
  },
4104
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_material16.Tooltip, { title: status, placement: "right", arrow: true, children: statusContent })
4189
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_material16.Tooltip, { title: status, placement: "right", arrow: true, children: statusContent })
4105
4190
  }
4106
4191
  );
4107
4192
  }
4108
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4193
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4109
4194
  import_material16.Box,
4110
4195
  {
4111
4196
  sx: {
@@ -4124,7 +4209,7 @@ var import_react10 = __toESM(require("react"));
4124
4209
  var import_material17 = require("@mui/material");
4125
4210
  var import_styles15 = require("@mui/material/styles");
4126
4211
  var import_Logout = __toESM(require("@mui/icons-material/Logout"));
4127
- var import_jsx_runtime25 = require("react/jsx-runtime");
4212
+ var import_jsx_runtime26 = require("react/jsx-runtime");
4128
4213
  var AccountContainer = (0, import_styles15.styled)(import_material17.Box, {
4129
4214
  shouldForwardProp: (prop) => !["layout", "isCompact"].includes(prop)
4130
4215
  })(({ theme: theme2, layout = "horizontal", isCompact }) => ({
@@ -4166,14 +4251,14 @@ var AccountSection = import_react10.default.memo(({
4166
4251
  const initials = user.initials || deriveInitials(user.name);
4167
4252
  const avatarSrc = user.avatarUrl;
4168
4253
  if (compact) {
4169
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(AccountContainer, { layout, isCompact: true, "aria-label": "Account section", children: [
4170
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4254
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(AccountContainer, { layout, isCompact: true, "aria-label": "Account section", children: [
4255
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4171
4256
  import_material17.Tooltip,
4172
4257
  {
4173
4258
  title: `${user.name}${user.email ? ` (${user.email})` : ""}`,
4174
4259
  placement: "right",
4175
4260
  arrow: true,
4176
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4261
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4177
4262
  import_material17.Avatar,
4178
4263
  {
4179
4264
  src: avatarSrc,
@@ -4192,7 +4277,7 @@ var AccountSection = import_react10.default.memo(({
4192
4277
  )
4193
4278
  }
4194
4279
  ),
4195
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_material17.Tooltip, { title: "Logout", placement: "right", arrow: true, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4280
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_material17.Tooltip, { title: "Logout", placement: "right", arrow: true, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4196
4281
  import_material17.IconButton,
4197
4282
  {
4198
4283
  onClick: onLogout,
@@ -4205,13 +4290,13 @@ var AccountSection = import_react10.default.memo(({
4205
4290
  color: "text.primary"
4206
4291
  }
4207
4292
  },
4208
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_Logout.default, { fontSize: "small" })
4293
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_Logout.default, { fontSize: "small" })
4209
4294
  }
4210
4295
  ) })
4211
4296
  ] });
4212
4297
  }
4213
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(AccountContainer, { layout, isCompact: false, "aria-label": "Account section", children: [
4214
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4298
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(AccountContainer, { layout, isCompact: false, "aria-label": "Account section", children: [
4299
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4215
4300
  import_material17.Avatar,
4216
4301
  {
4217
4302
  src: avatarSrc,
@@ -4227,7 +4312,7 @@ var AccountSection = import_react10.default.memo(({
4227
4312
  children: initials
4228
4313
  }
4229
4314
  ),
4230
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4315
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
4231
4316
  import_material17.Box,
4232
4317
  {
4233
4318
  sx: {
@@ -4239,7 +4324,7 @@ var AccountSection = import_react10.default.memo(({
4239
4324
  // Allow text truncation
4240
4325
  },
4241
4326
  children: [
4242
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4327
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4243
4328
  import_material17.Typography,
4244
4329
  {
4245
4330
  variant: "body2",
@@ -4253,7 +4338,7 @@ var AccountSection = import_react10.default.memo(({
4253
4338
  children: user.name
4254
4339
  }
4255
4340
  ),
4256
- showEmail && user.email && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4341
+ showEmail && user.email && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4257
4342
  import_material17.Typography,
4258
4343
  {
4259
4344
  variant: "caption",
@@ -4268,12 +4353,12 @@ var AccountSection = import_react10.default.memo(({
4268
4353
  children: user.email
4269
4354
  }
4270
4355
  ),
4271
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4356
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4272
4357
  import_material17.Button,
4273
4358
  {
4274
4359
  onClick: onLogout,
4275
4360
  "aria-label": "Logout",
4276
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_Logout.default, { fontSize: "small" }),
4361
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_Logout.default, { fontSize: "small" }),
4277
4362
  sx: {
4278
4363
  color: "text.secondary",
4279
4364
  textTransform: "none",
@@ -4301,7 +4386,7 @@ AccountSection.displayName = "AccountSection";
4301
4386
  // src/components/feedback/Badge.tsx
4302
4387
  var import_Badge = __toESM(require("@mui/material/Badge"));
4303
4388
  var import_styles16 = require("@mui/material/styles");
4304
- var import_jsx_runtime26 = require("react/jsx-runtime");
4389
+ var import_jsx_runtime27 = require("react/jsx-runtime");
4305
4390
  var getBadgeColor = (variant) => {
4306
4391
  switch (variant) {
4307
4392
  case "primary":
@@ -4328,13 +4413,13 @@ var Badge = ({
4328
4413
  badgeContent,
4329
4414
  ...props
4330
4415
  }) => {
4331
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(StyledBadge, { badgeVariant: variant, badgeContent, ...props, children });
4416
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(StyledBadge, { badgeVariant: variant, badgeContent, ...props, children });
4332
4417
  };
4333
4418
 
4334
4419
  // src/components/feedback/Chip.tsx
4335
4420
  var import_Chip = __toESM(require("@mui/material/Chip"));
4336
4421
  var import_styles17 = require("@mui/material/styles");
4337
- var import_jsx_runtime27 = require("react/jsx-runtime");
4422
+ var import_jsx_runtime28 = require("react/jsx-runtime");
4338
4423
  var StyledDefaultChip = (0, import_styles17.styled)(import_Chip.default)({
4339
4424
  backgroundColor: colors.grey[100],
4340
4425
  color: colors.text.primary,
@@ -4354,15 +4439,15 @@ var Chip2 = ({
4354
4439
  ...props
4355
4440
  }) => {
4356
4441
  if (variant === "active") {
4357
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(StyledActiveChip, { ...props });
4442
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(StyledActiveChip, { ...props });
4358
4443
  }
4359
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(StyledDefaultChip, { ...props });
4444
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(StyledDefaultChip, { ...props });
4360
4445
  };
4361
4446
 
4362
4447
  // src/components/feedback/RoleBadge.tsx
4363
4448
  var import_Chip2 = __toESM(require("@mui/material/Chip"));
4364
4449
  var import_styles18 = require("@mui/material/styles");
4365
- var import_jsx_runtime28 = require("react/jsx-runtime");
4450
+ var import_jsx_runtime29 = require("react/jsx-runtime");
4366
4451
  var StyledRoleBadge = (0, import_styles18.styled)(import_Chip2.default)(() => ({
4367
4452
  // Pill shape - 100px border radius
4368
4453
  borderRadius: "100px",
@@ -4388,7 +4473,7 @@ var RoleBadge = ({
4388
4473
  if (!label || label.trim() === "") {
4389
4474
  return null;
4390
4475
  }
4391
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
4476
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4392
4477
  StyledRoleBadge,
4393
4478
  {
4394
4479
  label,
@@ -4403,13 +4488,13 @@ var RoleBadge = ({
4403
4488
  // src/components/feedback/IDBlock.tsx
4404
4489
  var import_react11 = require("react");
4405
4490
  var import_Box = __toESM(require("@mui/material/Box"));
4406
- var import_Typography = __toESM(require("@mui/material/Typography"));
4491
+ var import_Typography2 = __toESM(require("@mui/material/Typography"));
4407
4492
  var import_IconButton2 = __toESM(require("@mui/material/IconButton"));
4408
4493
  var import_Snackbar = __toESM(require("@mui/material/Snackbar"));
4409
4494
  var import_Alert = __toESM(require("@mui/material/Alert"));
4410
4495
  var import_ContentCopy = __toESM(require("@mui/icons-material/ContentCopy"));
4411
4496
  var import_styles19 = require("@mui/material/styles");
4412
- var import_jsx_runtime29 = require("react/jsx-runtime");
4497
+ var import_jsx_runtime30 = require("react/jsx-runtime");
4413
4498
  var IDContainer = (0, import_styles19.styled)(import_Box.default)(() => ({
4414
4499
  display: "inline-flex",
4415
4500
  alignItems: "center",
@@ -4445,10 +4530,10 @@ var IDBlock = ({
4445
4530
  const handleSnackbarClose = () => {
4446
4531
  setSnackbar((prev) => ({ ...prev, open: false }));
4447
4532
  };
4448
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(import_jsx_runtime29.Fragment, { children: [
4449
- /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(IDContainer, { children: [
4450
- /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
4451
- import_Typography.default,
4533
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_jsx_runtime30.Fragment, { children: [
4534
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(IDContainer, { children: [
4535
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
4536
+ import_Typography2.default,
4452
4537
  {
4453
4538
  variant: "body2",
4454
4539
  sx: {
@@ -4462,8 +4547,8 @@ var IDBlock = ({
4462
4547
  ]
4463
4548
  }
4464
4549
  ),
4465
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4466
- import_Typography.default,
4550
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4551
+ import_Typography2.default,
4467
4552
  {
4468
4553
  variant: "body2",
4469
4554
  sx: {
@@ -4475,7 +4560,7 @@ var IDBlock = ({
4475
4560
  children: id
4476
4561
  }
4477
4562
  ),
4478
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4563
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4479
4564
  import_IconButton2.default,
4480
4565
  {
4481
4566
  onClick: handleCopy,
@@ -4487,7 +4572,7 @@ var IDBlock = ({
4487
4572
  backgroundColor: deploymentSurfaceTokens.hoverOverlay
4488
4573
  }
4489
4574
  },
4490
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4575
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4491
4576
  import_ContentCopy.default,
4492
4577
  {
4493
4578
  sx: {
@@ -4499,14 +4584,14 @@ var IDBlock = ({
4499
4584
  }
4500
4585
  )
4501
4586
  ] }),
4502
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4587
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4503
4588
  import_Snackbar.default,
4504
4589
  {
4505
4590
  open: snackbar.open,
4506
4591
  autoHideDuration: 3e3,
4507
4592
  onClose: handleSnackbarClose,
4508
4593
  anchorOrigin: { vertical: "top", horizontal: "center" },
4509
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_Alert.default, { onClose: handleSnackbarClose, severity: snackbar.severity, children: snackbar.message })
4594
+ children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_Alert.default, { onClose: handleSnackbarClose, severity: snackbar.severity, children: snackbar.message })
4510
4595
  }
4511
4596
  )
4512
4597
  ] });
@@ -4515,7 +4600,7 @@ var IDBlock = ({
4515
4600
  // src/components/feedback/Tooltip.tsx
4516
4601
  var import_Tooltip = __toESM(require("@mui/material/Tooltip"));
4517
4602
  var import_styles20 = require("@mui/material/styles");
4518
- var import_jsx_runtime30 = require("react/jsx-runtime");
4603
+ var import_jsx_runtime31 = require("react/jsx-runtime");
4519
4604
  var StyledTooltip = (0, import_styles20.styled)(import_Tooltip.default)({
4520
4605
  "& .MuiTooltip-tooltip": {
4521
4606
  backgroundColor: colors.grey[800],
@@ -4529,12 +4614,12 @@ var StyledTooltip = (0, import_styles20.styled)(import_Tooltip.default)({
4529
4614
  }
4530
4615
  });
4531
4616
  var Tooltip6 = (props) => {
4532
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(StyledTooltip, { ...props });
4617
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(StyledTooltip, { ...props });
4533
4618
  };
4534
4619
 
4535
4620
  // src/components/feedback/Progress.tsx
4536
4621
  var import_material18 = require("@mui/material");
4537
- var import_jsx_runtime31 = require("react/jsx-runtime");
4622
+ var import_jsx_runtime32 = require("react/jsx-runtime");
4538
4623
  var StyledLinearProgress = (0, import_material18.styled)(import_material18.LinearProgress)({
4539
4624
  height: 4,
4540
4625
  borderRadius: 2,
@@ -4554,9 +4639,9 @@ var Progress = ({
4554
4639
  thickness = 4
4555
4640
  }) => {
4556
4641
  if (variant === "circular") {
4557
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(StyledCircularProgress, { size: size3, thickness });
4642
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(StyledCircularProgress, { size: size3, thickness });
4558
4643
  }
4559
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4644
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4560
4645
  StyledLinearProgress,
4561
4646
  {
4562
4647
  variant: value !== void 0 ? "determinate" : "indeterminate",
@@ -4568,7 +4653,7 @@ var Progress = ({
4568
4653
  // src/components/navigation/Tab.tsx
4569
4654
  var import_Tab = __toESM(require("@mui/material/Tab"));
4570
4655
  var import_styles21 = require("@mui/material/styles");
4571
- var import_jsx_runtime32 = require("react/jsx-runtime");
4656
+ var import_jsx_runtime33 = require("react/jsx-runtime");
4572
4657
  var StyledTab = (0, import_styles21.styled)(import_Tab.default)({
4573
4658
  textTransform: "none",
4574
4659
  minHeight: "48px",
@@ -4590,14 +4675,14 @@ var Tab = ({
4590
4675
  label,
4591
4676
  ...props
4592
4677
  }) => {
4593
- const tabLabel = badge !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Badge, { variant: badgeVariant, badgeContent: badge, children: label }) : label;
4594
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(StyledTab, { label: tabLabel, ...props });
4678
+ const tabLabel = badge !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Badge, { variant: badgeVariant, badgeContent: badge, children: label }) : label;
4679
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(StyledTab, { label: tabLabel, ...props });
4595
4680
  };
4596
4681
 
4597
4682
  // src/components/navigation/Menu.tsx
4598
4683
  var import_material19 = require("@mui/material");
4599
4684
  var import_styles22 = require("@mui/material/styles");
4600
- var import_jsx_runtime33 = require("react/jsx-runtime");
4685
+ var import_jsx_runtime34 = require("react/jsx-runtime");
4601
4686
  var StyledMenu = (0, import_styles22.styled)(import_material19.Menu)({
4602
4687
  "& .MuiPaper-root": {
4603
4688
  borderRadius: 8,
@@ -4612,7 +4697,7 @@ var StyledMenu = (0, import_styles22.styled)(import_material19.Menu)({
4612
4697
  }
4613
4698
  });
4614
4699
  var Menu3 = ({ anchorEl, onClose, children, ...props }) => {
4615
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4700
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4616
4701
  StyledMenu,
4617
4702
  {
4618
4703
  anchorEl,
@@ -4638,19 +4723,19 @@ var MenuItem = ({
4638
4723
  disabled = false,
4639
4724
  divider = false
4640
4725
  }) => {
4641
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
4642
- /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_material19.MenuItem, { onClick, disabled, children: [
4643
- icon && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_material19.ListItemIcon, { children: icon }),
4644
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_material19.ListItemText, { children: label })
4726
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
4727
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_material19.MenuItem, { onClick, disabled, children: [
4728
+ icon && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_material19.ListItemIcon, { children: icon }),
4729
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_material19.ListItemText, { children: label })
4645
4730
  ] }),
4646
- divider && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_material19.Divider, {})
4731
+ divider && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_material19.Divider, {})
4647
4732
  ] });
4648
4733
  };
4649
4734
 
4650
4735
  // src/components/navigation/Pagination.tsx
4651
4736
  var import_Pagination = __toESM(require("@mui/material/Pagination"));
4652
4737
  var import_styles23 = require("@mui/material/styles");
4653
- var import_jsx_runtime34 = require("react/jsx-runtime");
4738
+ var import_jsx_runtime35 = require("react/jsx-runtime");
4654
4739
  var StyledPagination = (0, import_styles23.styled)(import_Pagination.default)({
4655
4740
  "& .MuiPaginationItem-root": {
4656
4741
  "&.Mui-selected": {
@@ -4666,7 +4751,7 @@ var StyledPagination = (0, import_styles23.styled)(import_Pagination.default)({
4666
4751
  }
4667
4752
  });
4668
4753
  var Pagination = ({ color = "primary", ...props }) => {
4669
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(StyledPagination, { color, ...props });
4754
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(StyledPagination, { color, ...props });
4670
4755
  };
4671
4756
 
4672
4757
  // src/components/navigation/Selector.tsx
@@ -4679,7 +4764,7 @@ var import_Add3 = __toESM(require("@mui/icons-material/Add"));
4679
4764
  // src/components/layout/Link.tsx
4680
4765
  var import_Link = __toESM(require("@mui/material/Link"));
4681
4766
  var import_styles24 = require("@mui/material/styles");
4682
- var import_jsx_runtime35 = require("react/jsx-runtime");
4767
+ var import_jsx_runtime36 = require("react/jsx-runtime");
4683
4768
  var StyledLink = (0, import_styles24.styled)(import_Link.default)({
4684
4769
  color: colors.primary.main,
4685
4770
  "&:hover": {
@@ -4687,11 +4772,11 @@ var StyledLink = (0, import_styles24.styled)(import_Link.default)({
4687
4772
  }
4688
4773
  });
4689
4774
  var Link3 = ({ underline = "hover", ...props }) => {
4690
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(StyledLink, { underline, ...props });
4775
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(StyledLink, { underline, ...props });
4691
4776
  };
4692
4777
 
4693
4778
  // src/components/navigation/Selector.tsx
4694
- var import_jsx_runtime36 = require("react/jsx-runtime");
4779
+ var import_jsx_runtime37 = require("react/jsx-runtime");
4695
4780
  var Selector = ({
4696
4781
  options: options2,
4697
4782
  selectedId,
@@ -4723,14 +4808,14 @@ var Selector = ({
4723
4808
  onSelect(id);
4724
4809
  handleClose();
4725
4810
  };
4726
- const defaultRenderSelected = (option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_material20.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
4727
- option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { src: option.avatar, sx: { width: 20, height: 20 } }) : option.icon ? option.icon : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { sx: { width: 20, height: 20, bgcolor: colors.primary.main, fontSize: "0.7rem" }, children: option.name.charAt(0) }),
4728
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Typography, { variant: "body2", children: option.name })
4811
+ const defaultRenderSelected = (option) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_material20.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
4812
+ option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { src: option.avatar, sx: { width: 20, height: 20 } }) : option.icon ? option.icon : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { sx: { width: 20, height: 20, bgcolor: colors.primary.main, fontSize: "0.7rem" }, children: option.name.charAt(0) }),
4813
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Typography, { variant: "body2", children: option.name })
4729
4814
  ] });
4730
4815
  if (compact) {
4731
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
4732
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(IconButton, { onClick: handleOpen, size: "small", children: selectedOption ? selectedOption.avatar ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { src: selectedOption.avatar, sx: { width: 32, height: 32 } }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { sx: { width: 32, height: 32, bgcolor: colors.primary.main }, children: selectedOption.name.charAt(0) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { sx: { width: 32, height: 32, bgcolor: colors.grey[400] }, children: "?" }) }),
4733
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4816
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
4817
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(IconButton, { onClick: handleOpen, size: "small", children: selectedOption ? selectedOption.avatar ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { src: selectedOption.avatar, sx: { width: 32, height: 32 } }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { sx: { width: 32, height: 32, bgcolor: colors.primary.main }, children: selectedOption.name.charAt(0) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { sx: { width: 32, height: 32, bgcolor: colors.grey[400] }, children: "?" }) }),
4818
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4734
4819
  import_material20.Menu,
4735
4820
  {
4736
4821
  anchorEl,
@@ -4739,8 +4824,8 @@ var Selector = ({
4739
4824
  PaperProps: {
4740
4825
  sx: { width, maxHeight: 600, mt: 1 }
4741
4826
  },
4742
- children: loading ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.CircularProgress, { size: 24 }) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
4743
- options2.length > 5 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 1, borderBottom: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4827
+ children: loading ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.CircularProgress, { size: 24 }) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
4828
+ options2.length > 5 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 1, borderBottom: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4744
4829
  TextField,
4745
4830
  {
4746
4831
  size: "small",
@@ -4749,31 +4834,31 @@ var Selector = ({
4749
4834
  value: searchTerm,
4750
4835
  onChange: (e) => setSearchTerm(e.target.value),
4751
4836
  InputProps: {
4752
- startAdornment: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_Search4.default, { fontSize: "small" }) })
4837
+ startAdornment: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_Search4.default, { fontSize: "small" }) })
4753
4838
  }
4754
4839
  }
4755
4840
  ) }),
4756
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_material20.List, { sx: { maxHeight: 400, overflow: "auto" }, children: [
4757
- filteredOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
4841
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_material20.List, { sx: { maxHeight: 400, overflow: "auto" }, children: [
4842
+ filteredOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
4758
4843
  import_material20.ListItemButton,
4759
4844
  {
4760
4845
  selected: option.id === selectedId,
4761
4846
  onClick: () => handleSelect(option.id),
4762
4847
  disabled: option.disabled,
4763
4848
  children: [
4764
- option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { src: option.avatar }) }) : option.icon ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: option.icon }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { sx: { bgcolor: colors.primary.main }, children: option.name.charAt(0) }) }),
4765
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemText, { primary: option.name, secondary: option.description })
4849
+ option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { src: option.avatar }) }) : option.icon ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: option.icon }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { sx: { bgcolor: colors.primary.main }, children: option.name.charAt(0) }) }),
4850
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemText, { primary: option.name, secondary: option.description })
4766
4851
  ]
4767
4852
  },
4768
4853
  option.id
4769
4854
  )),
4770
- filteredOptions.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: emptyMessage }) })
4855
+ filteredOptions.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: emptyMessage }) })
4771
4856
  ] }),
4772
- onCreate && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 1, borderTop: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4857
+ onCreate && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 1, borderTop: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4773
4858
  Button,
4774
4859
  {
4775
4860
  fullWidth: true,
4776
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_Add3.default, {}),
4861
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_Add3.default, {}),
4777
4862
  onClick: () => {
4778
4863
  onCreate();
4779
4864
  handleClose();
@@ -4786,12 +4871,12 @@ var Selector = ({
4786
4871
  )
4787
4872
  ] });
4788
4873
  }
4789
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
4790
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_material20.Box, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: [
4791
- selectedOption ? renderSelected ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Link3, { onClick: handleOpen, underline: "hover", children: renderSelected(selectedOption) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Link3, { onClick: handleOpen, underline: "hover", children: defaultRenderSelected(selectedOption) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: placeholder }),
4792
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(IconButton, { onClick: handleOpen, size: "small", sx: { p: 0.2, ml: 0.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_KeyboardArrowDown3.default, { fontSize: "small" }) })
4874
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
4875
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_material20.Box, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: [
4876
+ selectedOption ? renderSelected ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Link3, { onClick: handleOpen, underline: "hover", children: renderSelected(selectedOption) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Link3, { onClick: handleOpen, underline: "hover", children: defaultRenderSelected(selectedOption) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: placeholder }),
4877
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(IconButton, { onClick: handleOpen, size: "small", sx: { p: 0.2, ml: 0.5 }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_KeyboardArrowDown3.default, { fontSize: "small" }) })
4793
4878
  ] }),
4794
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4879
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4795
4880
  import_material20.Menu,
4796
4881
  {
4797
4882
  anchorEl,
@@ -4800,8 +4885,8 @@ var Selector = ({
4800
4885
  PaperProps: {
4801
4886
  sx: { width, maxHeight: 600, mt: 1 }
4802
4887
  },
4803
- children: loading ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.CircularProgress, { size: 24 }) }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
4804
- options2.length > 5 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 1, borderBottom: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4888
+ children: loading ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.CircularProgress, { size: 24 }) }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
4889
+ options2.length > 5 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 1, borderBottom: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4805
4890
  TextField,
4806
4891
  {
4807
4892
  size: "small",
@@ -4810,31 +4895,31 @@ var Selector = ({
4810
4895
  value: searchTerm,
4811
4896
  onChange: (e) => setSearchTerm(e.target.value),
4812
4897
  InputProps: {
4813
- startAdornment: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_Search4.default, { fontSize: "small" }) })
4898
+ startAdornment: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.InputAdornment, { position: "start", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_Search4.default, { fontSize: "small" }) })
4814
4899
  }
4815
4900
  }
4816
4901
  ) }),
4817
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_material20.List, { sx: { maxHeight: 400, overflow: "auto" }, children: [
4818
- filteredOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
4902
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_material20.List, { sx: { maxHeight: 400, overflow: "auto" }, children: [
4903
+ filteredOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
4819
4904
  import_material20.ListItemButton,
4820
4905
  {
4821
4906
  selected: option.id === selectedId,
4822
4907
  onClick: () => handleSelect(option.id),
4823
4908
  disabled: option.disabled,
4824
4909
  children: [
4825
- option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { src: option.avatar }) }) : option.icon ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: option.icon }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Avatar, { sx: { bgcolor: colors.primary.main }, children: option.name.charAt(0) }) }),
4826
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.ListItemText, { primary: option.name, secondary: option.description })
4910
+ option.avatar ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { src: option.avatar }) }) : option.icon ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: option.icon }) : /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemAvatar, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Avatar, { sx: { bgcolor: colors.primary.main }, children: option.name.charAt(0) }) }),
4911
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.ListItemText, { primary: option.name, secondary: option.description })
4827
4912
  ]
4828
4913
  },
4829
4914
  option.id
4830
4915
  )),
4831
- filteredOptions.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: emptyMessage }) })
4916
+ filteredOptions.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Typography, { variant: "body2", color: "text.secondary", children: emptyMessage }) })
4832
4917
  ] }),
4833
- onCreate && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_material20.Box, { sx: { p: 1, borderTop: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
4918
+ onCreate && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_material20.Box, { sx: { p: 1, borderTop: `1px solid ${colors.grey[200]}` }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4834
4919
  Button,
4835
4920
  {
4836
4921
  fullWidth: true,
4837
- startIcon: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_Add3.default, {}),
4922
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_Add3.default, {}),
4838
4923
  onClick: () => {
4839
4924
  onCreate();
4840
4925
  handleClose();
@@ -4854,20 +4939,20 @@ var import_material22 = require("@mui/material");
4854
4939
  // src/components/icons/CereIcon.tsx
4855
4940
  var import_react13 = require("react");
4856
4941
  var import_material21 = require("@mui/material");
4857
- var import_jsx_runtime37 = require("react/jsx-runtime");
4858
- var CereIcon = (0, import_react13.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_material21.SvgIcon, { ...props, viewBox: "0 0 24 28", children: [
4859
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("g", { clipPath: "url(#a)", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4942
+ var import_jsx_runtime38 = require("react/jsx-runtime");
4943
+ var CereIcon = (0, import_react13.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_material21.SvgIcon, { ...props, viewBox: "0 0 24 28", children: [
4944
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("g", { clipPath: "url(#a)", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
4860
4945
  "path",
4861
4946
  {
4862
4947
  d: "M12.77 26.848c-5.95 0-10.572-2.88-12.063-7.515l-.334-1.037.978-.471c.103-.051 2.668-1.35 2.509-3.901-.169-2.695-2.339-3.96-2.431-4.012L.475 9.37l.412-1.025C2.838 3.601 7.28.77 12.77.77c4.314 0 8.095 1.698 10.37 4.658l.575.748-4.535 6.146-1.013-.984c-.02-.019-2.175-2.069-4.678-2.08-2.411-.012-3.362.902-3.401.941L8.3 8.473c.164-.175 1.695-1.733 5.199-1.707 2.232.01 4.161 1.084 5.3 1.896l1.778-2.41c-1.845-1.91-4.636-2.99-7.808-2.99-4.095 0-7.459 1.91-9.182 5.155 1.042.879 2.57 2.62 2.742 5.35.185 2.95-1.692 4.806-2.913 5.692 1.445 3.043 4.932 4.895 9.354 4.895 3.063 0 6.198-1.2 8.134-3.053l-2.023-2.55c-1.077.768-2.917 1.764-5.323 1.89-3.416.177-5.436-1.404-5.52-1.471l1.536-1.954c.047.035 1.42 1.065 3.855.936 2.884-.15 4.734-2.012 4.75-2.032l.98-1.002.874 1.094 4.088 5.155-.627.779c-2.3 2.856-6.508 4.702-10.726 4.702Z",
4863
4948
  fill: "currentColor"
4864
4949
  }
4865
4950
  ) }),
4866
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("clipPath", { id: "a", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("path", { fill: "currentColor", transform: "translate(.373 .77)", d: "M0 0h23.615v26.36H0z" }) }) })
4951
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("clipPath", { id: "a", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("path", { fill: "currentColor", transform: "translate(.373 .77)", d: "M0 0h23.615v26.36H0z" }) }) })
4867
4952
  ] }));
4868
4953
 
4869
4954
  // src/components/layout/Logo.tsx
4870
- var import_jsx_runtime38 = require("react/jsx-runtime");
4955
+ var import_jsx_runtime39 = require("react/jsx-runtime");
4871
4956
  var sizesMap = {
4872
4957
  large: 38,
4873
4958
  medium: 32,
@@ -4878,18 +4963,18 @@ var Container = (0, import_material22.styled)(import_material22.Stack)({
4878
4963
  fontSize: "inherit"
4879
4964
  }
4880
4965
  });
4881
- var Logo = ({ children, size: size3 = "medium", icon = /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(CereIcon, { color: "primary" }) }) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(Container, { direction: "row", alignItems: "center", spacing: 2, fontSize: sizesMap[size3], children: [
4966
+ var Logo = ({ children, size: size3 = "medium", icon = /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(CereIcon, { color: "primary" }) }) => /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(Container, { direction: "row", alignItems: "center", spacing: 2, fontSize: sizesMap[size3], children: [
4882
4967
  icon,
4883
- children && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_material22.Stack, { children })
4968
+ children && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_material22.Stack, { children })
4884
4969
  ] });
4885
4970
 
4886
4971
  // src/components/layout/EntityHeader/EntityHeader.tsx
4887
4972
  var import_Box2 = __toESM(require("@mui/material/Box"));
4888
- var import_Typography2 = __toESM(require("@mui/material/Typography"));
4973
+ var import_Typography3 = __toESM(require("@mui/material/Typography"));
4889
4974
  var import_IconButton4 = __toESM(require("@mui/material/IconButton"));
4890
4975
  var import_Divider = __toESM(require("@mui/material/Divider"));
4891
4976
  var import_MoreHoriz = __toESM(require("@mui/icons-material/MoreHoriz"));
4892
- var import_jsx_runtime39 = require("react/jsx-runtime");
4977
+ var import_jsx_runtime40 = require("react/jsx-runtime");
4893
4978
  var EntityHeader = ({
4894
4979
  title,
4895
4980
  subtitle,
@@ -4906,8 +4991,8 @@ var EntityHeader = ({
4906
4991
  const { label, count } = primaryAction;
4907
4992
  return count !== void 0 ? `${label} (${count})` : label;
4908
4993
  };
4909
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_Box2.default, { children: [
4910
- /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
4994
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_Box2.default, { children: [
4995
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
4911
4996
  import_Box2.default,
4912
4997
  {
4913
4998
  sx: {
@@ -4919,7 +5004,7 @@ var EntityHeader = ({
4919
5004
  gap: 1
4920
5005
  },
4921
5006
  children: [
4922
- /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
5007
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
4923
5008
  import_Box2.default,
4924
5009
  {
4925
5010
  sx: {
@@ -4929,7 +5014,7 @@ var EntityHeader = ({
4929
5014
  flexWrap: "wrap"
4930
5015
  },
4931
5016
  children: [
4932
- /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
5017
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
4933
5018
  import_Box2.default,
4934
5019
  {
4935
5020
  sx: {
@@ -4938,8 +5023,8 @@ var EntityHeader = ({
4938
5023
  gap: 0.5
4939
5024
  },
4940
5025
  children: [
4941
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
4942
- import_Typography2.default,
5026
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5027
+ import_Typography3.default,
4943
5028
  {
4944
5029
  component: headingLevel,
4945
5030
  sx: {
@@ -4952,8 +5037,8 @@ var EntityHeader = ({
4952
5037
  children: title
4953
5038
  }
4954
5039
  ),
4955
- subtitle && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
4956
- import_Typography2.default,
5040
+ subtitle && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5041
+ import_Typography3.default,
4957
5042
  {
4958
5043
  variant: "body2",
4959
5044
  sx: {
@@ -4969,12 +5054,12 @@ var EntityHeader = ({
4969
5054
  ]
4970
5055
  }
4971
5056
  ),
4972
- role && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(RoleBadge, { label: role, color: "primary", size: "small" }),
4973
- id && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(IDBlock, { id, label: "ID", entityType: "entity", onCopy: onCopyId })
5057
+ role && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(RoleBadge, { label: role, color: "primary", size: "small" }),
5058
+ id && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(IDBlock, { id, label: "ID", entityType: "entity", onCopy: onCopyId })
4974
5059
  ]
4975
5060
  }
4976
5061
  ),
4977
- /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
5062
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
4978
5063
  import_Box2.default,
4979
5064
  {
4980
5065
  sx: {
@@ -4984,7 +5069,7 @@ var EntityHeader = ({
4984
5069
  flexShrink: 0
4985
5070
  },
4986
5071
  children: [
4987
- primaryAction && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
5072
+ primaryAction && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
4988
5073
  Button,
4989
5074
  {
4990
5075
  variant: "primary",
@@ -4996,7 +5081,7 @@ var EntityHeader = ({
4996
5081
  children: getPrimaryActionLabel()
4997
5082
  }
4998
5083
  ),
4999
- onMoreOptions && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
5084
+ onMoreOptions && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5000
5085
  import_IconButton4.default,
5001
5086
  {
5002
5087
  onClick: onMoreOptions,
@@ -5011,7 +5096,7 @@ var EntityHeader = ({
5011
5096
  borderColor: deploymentSurfaceTokens.borderDefault
5012
5097
  }
5013
5098
  },
5014
- children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
5099
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5015
5100
  import_MoreHoriz.default,
5016
5101
  {
5017
5102
  sx: {
@@ -5028,7 +5113,7 @@ var EntityHeader = ({
5028
5113
  ]
5029
5114
  }
5030
5115
  ),
5031
- divider && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
5116
+ divider && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5032
5117
  import_Divider.default,
5033
5118
  {
5034
5119
  sx: {
@@ -5042,7 +5127,7 @@ var EntityHeader = ({
5042
5127
  // src/components/layout/Dialog.tsx
5043
5128
  var import_material23 = require("@mui/material");
5044
5129
  var import_Close = __toESM(require("@mui/icons-material/Close"));
5045
- var import_jsx_runtime40 = require("react/jsx-runtime");
5130
+ var import_jsx_runtime41 = require("react/jsx-runtime");
5046
5131
  var Dialog = ({
5047
5132
  open,
5048
5133
  title,
@@ -5066,7 +5151,7 @@ var Dialog = ({
5066
5151
  if (e) e.stopPropagation();
5067
5152
  onClose();
5068
5153
  };
5069
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
5154
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
5070
5155
  import_material23.Dialog,
5071
5156
  {
5072
5157
  open,
@@ -5083,28 +5168,28 @@ var Dialog = ({
5083
5168
  ...dialogProps.PaperProps
5084
5169
  },
5085
5170
  children: [
5086
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_material23.DialogTitle, { sx: { display: "flex", justifyContent: "space-between", alignItems: "center", p: 2 }, children: [
5087
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.Box, { sx: { display: "flex", alignItems: "center" }, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.Typography, { variant: "h6", children: title }) : title }),
5088
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_material23.Box, { sx: { display: "flex", alignItems: "center" }, children: [
5171
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_material23.DialogTitle, { sx: { display: "flex", justifyContent: "space-between", alignItems: "center", p: 2 }, children: [
5172
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.Box, { sx: { display: "flex", alignItems: "center" }, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.Typography, { variant: "h6", children: title }) : title }),
5173
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_material23.Box, { sx: { display: "flex", alignItems: "center" }, children: [
5089
5174
  headerAction,
5090
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5175
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5091
5176
  import_material23.IconButton,
5092
5177
  {
5093
5178
  edge: "end",
5094
5179
  color: "inherit",
5095
5180
  onClick: handleCloseAttempt,
5096
5181
  "aria-label": "close",
5097
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_Close.default, {})
5182
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Close.default, {})
5098
5183
  }
5099
5184
  )
5100
5185
  ] })
5101
5186
  ] }),
5102
- dividers && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.Divider, {}),
5103
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.DialogContent, { dividers, children }),
5104
- (showActions || customActions) && /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_jsx_runtime40.Fragment, { children: [
5105
- dividers && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.Divider, {}),
5106
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.DialogActions, { children: customActions || /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_jsx_runtime40.Fragment, { children: [
5107
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5187
+ dividers && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.Divider, {}),
5188
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.DialogContent, { dividers, children }),
5189
+ (showActions || customActions) && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
5190
+ dividers && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.Divider, {}),
5191
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.DialogActions, { children: customActions || /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
5192
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5108
5193
  import_material23.Button,
5109
5194
  {
5110
5195
  onClick: handleCloseAttempt,
@@ -5112,14 +5197,14 @@ var Dialog = ({
5112
5197
  children: cancelLabel
5113
5198
  }
5114
5199
  ),
5115
- onSubmit && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5200
+ onSubmit && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5116
5201
  import_material23.Button,
5117
5202
  {
5118
5203
  variant: "contained",
5119
5204
  color: "primary",
5120
5205
  onClick: onSubmit,
5121
5206
  disabled: disableSubmit || isLoading,
5122
- startIcon: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_material23.CircularProgress, { size: 20 }) : void 0,
5207
+ startIcon: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material23.CircularProgress, { size: 20 }) : void 0,
5123
5208
  children: submitLabel
5124
5209
  }
5125
5210
  )
@@ -5135,7 +5220,7 @@ var import_Drawer = __toESM(require("@mui/material/Drawer"));
5135
5220
  var import_styles25 = require("@mui/material/styles");
5136
5221
  var import_material24 = require("@mui/material");
5137
5222
  var import_Close2 = __toESM(require("@mui/icons-material/Close"));
5138
- var import_jsx_runtime41 = require("react/jsx-runtime");
5223
+ var import_jsx_runtime42 = require("react/jsx-runtime");
5139
5224
  var StyledDrawer2 = (0, import_styles25.styled)(import_Drawer.default, {
5140
5225
  shouldForwardProp: (prop) => prop !== "width" && prop !== "miniWidth" && prop !== "collapsed" && prop !== "topOffset"
5141
5226
  })(({ theme: theme2, width = 240, miniWidth = 72, collapsed, topOffset = 0 }) => ({
@@ -5182,7 +5267,7 @@ var Drawer2 = ({
5182
5267
  const finalWidth = width ?? defaultWidth;
5183
5268
  const shouldShowClose = showCloseButton ?? (variant === "temporary" || variant === "persistent");
5184
5269
  const hasHeader = title || header || shouldShowClose || tabs;
5185
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
5270
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5186
5271
  StyledDrawer2,
5187
5272
  {
5188
5273
  width: finalWidth,
@@ -5207,8 +5292,8 @@ var Drawer2 = ({
5207
5292
  },
5208
5293
  ...props,
5209
5294
  children: [
5210
- hasHeader && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
5211
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5295
+ hasHeader && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
5296
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5212
5297
  import_material24.Box,
5213
5298
  {
5214
5299
  sx: {
@@ -5220,9 +5305,9 @@ var Drawer2 = ({
5220
5305
  borderBottom: 1,
5221
5306
  borderColor: "divider"
5222
5307
  },
5223
- children: header || /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
5224
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material24.Box, { sx: { flex: 1 }, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material24.Typography, { variant: "h6", children: title }) : title }),
5225
- shouldShowClose && onClose && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5308
+ children: header || /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
5309
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material24.Box, { sx: { flex: 1 }, children: typeof title === "string" ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material24.Typography, { variant: "h6", children: title }) : title }),
5310
+ shouldShowClose && onClose && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5226
5311
  import_material24.IconButton,
5227
5312
  {
5228
5313
  onClick: (e) => {
@@ -5232,13 +5317,13 @@ var Drawer2 = ({
5232
5317
  size: "small",
5233
5318
  sx: { ml: 1 },
5234
5319
  "aria-label": "close",
5235
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Close2.default, {})
5320
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_Close2.default, {})
5236
5321
  }
5237
5322
  )
5238
5323
  ] })
5239
5324
  }
5240
5325
  ),
5241
- tabs && tabs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5326
+ tabs && tabs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5242
5327
  import_material24.Tabs,
5243
5328
  {
5244
5329
  value: activeTab,
@@ -5253,11 +5338,11 @@ var Drawer2 = ({
5253
5338
  overflow: "auto"
5254
5339
  }
5255
5340
  },
5256
- children: tabs.map((tab, index) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material24.Tab, { label: tab }, index))
5341
+ children: tabs.map((tab, index) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material24.Tab, { label: tab }, index))
5257
5342
  }
5258
5343
  )
5259
5344
  ] }),
5260
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5345
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5261
5346
  import_material24.Box,
5262
5347
  {
5263
5348
  sx: {
@@ -5270,9 +5355,9 @@ var Drawer2 = ({
5270
5355
  children
5271
5356
  }
5272
5357
  ),
5273
- footer && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
5274
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material24.Divider, {}),
5275
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5358
+ footer && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
5359
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material24.Divider, {}),
5360
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5276
5361
  import_material24.Box,
5277
5362
  {
5278
5363
  sx: {
@@ -5295,7 +5380,7 @@ var import_CardContent = __toESM(require("@mui/material/CardContent"));
5295
5380
  var import_CardHeader = __toESM(require("@mui/material/CardHeader"));
5296
5381
  var import_CardActions = __toESM(require("@mui/material/CardActions"));
5297
5382
  var import_styles26 = require("@mui/material/styles");
5298
- var import_jsx_runtime42 = require("react/jsx-runtime");
5383
+ var import_jsx_runtime43 = require("react/jsx-runtime");
5299
5384
  var StyledCard = (0, import_styles26.styled)(import_Card.default, {
5300
5385
  shouldForwardProp: (prop) => prop !== "hoverable" && prop !== "clickable"
5301
5386
  })(({ hoverable, clickable }) => ({
@@ -5313,24 +5398,24 @@ var StyledCard = (0, import_styles26.styled)(import_Card.default, {
5313
5398
  }
5314
5399
  }));
5315
5400
  var Card = ({ hoverable = false, clickable = false, children, ...props }) => {
5316
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(StyledCard, { hoverable, clickable, ...props, children });
5401
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(StyledCard, { hoverable, clickable, ...props, children });
5317
5402
  };
5318
5403
  var CardContent = (props) => {
5319
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_CardContent.default, { ...props });
5404
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_CardContent.default, { ...props });
5320
5405
  };
5321
5406
  var CardHeader = (props) => {
5322
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_CardHeader.default, { ...props });
5407
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_CardHeader.default, { ...props });
5323
5408
  };
5324
5409
  var CardActions = (props) => {
5325
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_CardActions.default, { ...props });
5410
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_CardActions.default, { ...props });
5326
5411
  };
5327
5412
 
5328
5413
  // src/components/layout/List.tsx
5329
5414
  var import_material25 = require("@mui/material");
5330
5415
  var import_styles27 = require("@mui/material/styles");
5331
- var import_jsx_runtime43 = require("react/jsx-runtime");
5416
+ var import_jsx_runtime44 = require("react/jsx-runtime");
5332
5417
  var List6 = (props) => {
5333
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_material25.List, { ...props });
5418
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material25.List, { ...props });
5334
5419
  };
5335
5420
  var StyledListItem = (0, import_styles27.styled)(import_material25.ListItem, {
5336
5421
  shouldForwardProp: (prop) => prop !== "hoverable"
@@ -5353,9 +5438,9 @@ var ListItem4 = ({
5353
5438
  children,
5354
5439
  ...props
5355
5440
  }) => {
5356
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(StyledListItem, { hoverable, ...props, children: [
5357
- icon && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_material25.ListItemIcon, { children: icon }),
5358
- (primary || secondary) && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5441
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(StyledListItem, { hoverable, ...props, children: [
5442
+ icon && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material25.ListItemIcon, { children: icon }),
5443
+ (primary || secondary) && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5359
5444
  import_material25.ListItemText,
5360
5445
  {
5361
5446
  primary,
@@ -5389,7 +5474,7 @@ function useControlledExpand(controlledExpanded, onToggle, defaultExpanded = fal
5389
5474
  }
5390
5475
 
5391
5476
  // src/components/layout/DeploymentDashboardCard/DeploymentDashboardCard.tsx
5392
- var import_jsx_runtime44 = require("react/jsx-runtime");
5477
+ var import_jsx_runtime45 = require("react/jsx-runtime");
5393
5478
  var ENTITY_LABELS = {
5394
5479
  workspace: "Workspace",
5395
5480
  stream: "Stream",
@@ -5399,11 +5484,11 @@ var ENTITY_LABELS = {
5399
5484
  };
5400
5485
  var ENTITY_ICON_SIZE = 16;
5401
5486
  var ENTITY_ICONS = {
5402
- workspace: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_WorkOutline.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5403
- stream: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Waves.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5404
- deployment: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_RocketLaunchOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5405
- engagement: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_InsertLink.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5406
- agent: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_SmartToyOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } })
5487
+ workspace: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_WorkOutline.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5488
+ stream: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_Waves.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5489
+ deployment: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_RocketLaunchOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5490
+ engagement: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_InsertLink.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5491
+ agent: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_SmartToyOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } })
5407
5492
  };
5408
5493
  var STATUS_DOT_COLORS = {
5409
5494
  normal: deploymentStatusColors.normal,
@@ -5433,7 +5518,7 @@ var StatusDot = (0, import_styles28.styled)(import_material26.Box, {
5433
5518
  backgroundColor: status ? STATUS_DOT_COLORS[status] ?? "transparent" : "transparent",
5434
5519
  flexShrink: 0
5435
5520
  }));
5436
- var EntityChip = ({ entityType, color }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
5521
+ var EntityChip = ({ entityType, color }) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5437
5522
  import_material26.Box,
5438
5523
  {
5439
5524
  sx: {
@@ -5449,8 +5534,8 @@ var EntityChip = ({ entityType, color }) => /* @__PURE__ */ (0, import_jsx_runti
5449
5534
  flexShrink: 0
5450
5535
  },
5451
5536
  children: [
5452
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Box, { sx: { color, display: "flex", alignItems: "center" }, children: ENTITY_ICONS[entityType] }),
5453
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5537
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Box, { sx: { color, display: "flex", alignItems: "center" }, children: ENTITY_ICONS[entityType] }),
5538
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5454
5539
  import_material26.Typography,
5455
5540
  {
5456
5541
  variant: "body2",
@@ -5467,15 +5552,15 @@ var EntityChip = ({ entityType, color }) => /* @__PURE__ */ (0, import_jsx_runti
5467
5552
  ]
5468
5553
  }
5469
5554
  );
5470
- var CapacityBar = ({ value, indented = false }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Box, { sx: { pl: indented ? "40px" : 0, pr: "20px", py: 1 }, children: [
5471
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Box, { sx: { display: "flex", justifyContent: "space-between", mb: 1 }, children: [
5472
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.textPrimary }, children: "Capacity" }),
5473
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.accentBlue }, children: [
5555
+ var CapacityBar = ({ value, indented = false }) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Box, { sx: { pl: indented ? "40px" : 0, pr: "20px", py: 1 }, children: [
5556
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Box, { sx: { display: "flex", justifyContent: "space-between", mb: 1 }, children: [
5557
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.textPrimary }, children: "Capacity" }),
5558
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.accentBlue }, children: [
5474
5559
  value,
5475
5560
  "%"
5476
5561
  ] })
5477
5562
  ] }),
5478
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5563
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5479
5564
  import_material26.LinearProgress,
5480
5565
  {
5481
5566
  variant: "determinate",
@@ -5515,19 +5600,19 @@ var getActionButtonStyles = (action) => {
5515
5600
  };
5516
5601
  return { ...baseStyles, ...variantStyles };
5517
5602
  };
5518
- var CardAction = ({ action }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
5603
+ var CardAction = ({ action }) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5519
5604
  import_material26.Box,
5520
5605
  {
5521
5606
  component: action.onClick ? "button" : "span",
5522
5607
  onClick: action.onClick,
5523
5608
  sx: getActionButtonStyles(action),
5524
5609
  children: [
5525
- action.icon && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Box, { component: "span", sx: { display: "flex", alignItems: "center" }, children: action.icon }),
5526
- action.label && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Typography, { variant: "body2", fontWeight: 500, component: "span", sx: { fontSize: "14px" }, children: action.label })
5610
+ action.icon && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Box, { component: "span", sx: { display: "flex", alignItems: "center" }, children: action.icon }),
5611
+ action.label && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Typography, { variant: "body2", fontWeight: 500, component: "span", sx: { fontSize: "14px" }, children: action.label })
5527
5612
  ]
5528
5613
  }
5529
5614
  );
5530
- var CardActionList = ({ actions }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_jsx_runtime44.Fragment, { children: actions.map((action) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(CardAction, { action }, action.id)) });
5615
+ var CardActionList = ({ actions }) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_jsx_runtime45.Fragment, { children: actions.map((action) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(CardAction, { action }, action.id)) });
5531
5616
  var DeploymentDashboardCard = ({
5532
5617
  entityType,
5533
5618
  title,
@@ -5560,7 +5645,7 @@ var DeploymentDashboardCard = ({
5560
5645
  return Math.min(100, Math.max(0, capacity2));
5561
5646
  };
5562
5647
  const capacityClamped = getClampedCapacity(capacity);
5563
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
5648
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5564
5649
  import_material26.Paper,
5565
5650
  {
5566
5651
  className,
@@ -5577,7 +5662,7 @@ var DeploymentDashboardCard = ({
5577
5662
  gap: 0
5578
5663
  },
5579
5664
  children: [
5580
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
5665
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5581
5666
  import_material26.Box,
5582
5667
  {
5583
5668
  sx: {
@@ -5587,20 +5672,20 @@ var DeploymentDashboardCard = ({
5587
5672
  width: "100%"
5588
5673
  },
5589
5674
  children: [
5590
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Box, { sx: { display: "flex", flexDirection: "column", gap: 0.5, minWidth: 0 }, children: [
5591
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Box, { sx: { display: "flex", gap: 1, alignItems: "center" }, children: [
5592
- expandable ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5675
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Box, { sx: { display: "flex", flexDirection: "column", gap: 0.5, minWidth: 0 }, children: [
5676
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Box, { sx: { display: "flex", gap: 1, alignItems: "center" }, children: [
5677
+ expandable ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5593
5678
  import_material26.IconButton,
5594
5679
  {
5595
5680
  size: "small",
5596
5681
  onClick: toggle,
5597
5682
  "aria-label": expanded ? "Collapse" : "Expand",
5598
5683
  sx: { p: "5px" },
5599
- children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_ExpandMore.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } }) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_ChevronRight2.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } })
5684
+ children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_ExpandMore.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } }) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_ChevronRight2.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } })
5600
5685
  }
5601
- ) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Box, { sx: { width: 26, flexShrink: 0 } }),
5602
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(EntityChip, { entityType, color: entityColor }),
5603
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5686
+ ) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Box, { sx: { width: 26, flexShrink: 0 } }),
5687
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(EntityChip, { entityType, color: entityColor }),
5688
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5604
5689
  import_material26.Typography,
5605
5690
  {
5606
5691
  variant: "subtitle1",
@@ -5610,9 +5695,9 @@ var DeploymentDashboardCard = ({
5610
5695
  children: title
5611
5696
  }
5612
5697
  ),
5613
- idDisplay != null && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(IDBlock, { id: idDisplay, label: "ID", entityType, onCopy: onCopyId })
5698
+ idDisplay != null && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(IDBlock, { id: idDisplay, label: "ID", entityType, onCopy: onCopyId })
5614
5699
  ] }),
5615
- (createdAt != null || updatedAt != null) && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
5700
+ (createdAt != null || updatedAt != null) && /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5616
5701
  import_material26.Box,
5617
5702
  {
5618
5703
  sx: {
@@ -5622,27 +5707,27 @@ var DeploymentDashboardCard = ({
5622
5707
  color: deploymentSurfaceTokens.textSecondary
5623
5708
  },
5624
5709
  children: [
5625
- createdAt != null && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5710
+ createdAt != null && /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5626
5711
  "Created: ",
5627
5712
  createdAt
5628
5713
  ] }),
5629
- updatedAt != null && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5714
+ updatedAt != null && /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5630
5715
  "Last Updated: ",
5631
5716
  updatedAt
5632
5717
  ] })
5633
5718
  ]
5634
5719
  }
5635
5720
  ),
5636
- capacityClamped !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(CapacityBar, { value: capacityClamped, indented: expandable })
5721
+ capacityClamped !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(CapacityBar, { value: capacityClamped, indented: expandable })
5637
5722
  ] }),
5638
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_material26.Box, { sx: { display: "flex", gap: 1, alignItems: "center", flexShrink: 0 }, children: [
5639
- statusIndicator != null && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(StatusDot, { status: statusIndicator, "aria-hidden": true }),
5640
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(CardActionList, { actions })
5723
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material26.Box, { sx: { display: "flex", gap: 1, alignItems: "center", flexShrink: 0 }, children: [
5724
+ statusIndicator != null && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StatusDot, { status: statusIndicator, "aria-hidden": true }),
5725
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(CardActionList, { actions })
5641
5726
  ] })
5642
5727
  ]
5643
5728
  }
5644
5729
  ),
5645
- children && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_material26.Box, { sx: { mt: 1.5, display: "flex", flexDirection: "column", gap: 1 }, children })
5730
+ children && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material26.Box, { sx: { mt: 1.5, display: "flex", flexDirection: "column", gap: 1 }, children })
5646
5731
  ]
5647
5732
  }
5648
5733
  );
@@ -5651,7 +5736,7 @@ var DeploymentDashboardCard = ({
5651
5736
  // src/components/layout/DeploymentEntityContextMenu/DeploymentEntityContextMenu.tsx
5652
5737
  var import_material27 = require("@mui/material");
5653
5738
  var import_styles29 = require("@mui/material/styles");
5654
- var import_jsx_runtime45 = require("react/jsx-runtime");
5739
+ var import_jsx_runtime46 = require("react/jsx-runtime");
5655
5740
  var StyledMenu2 = (0, import_styles29.styled)(import_material27.Menu)({
5656
5741
  "& .MuiPaper-root": {
5657
5742
  borderRadius: 4,
@@ -5749,7 +5834,7 @@ var DeploymentEntityContextMenu = ({
5749
5834
  enableChecked = false,
5750
5835
  onEnableChange
5751
5836
  }) => {
5752
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5837
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
5753
5838
  StyledMenu2,
5754
5839
  {
5755
5840
  anchorEl,
@@ -5761,11 +5846,11 @@ var DeploymentEntityContextMenu = ({
5761
5846
  children: [
5762
5847
  items.map((item) => {
5763
5848
  if (item.type === "divider") {
5764
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StyledDivider, {}, item.id);
5849
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(StyledDivider, {}, item.id);
5765
5850
  }
5766
5851
  if (item.type === "toggle") {
5767
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(ToggleMenuItem, { disableRipple: true, children: [
5768
- onEnableChange && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5852
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(ToggleMenuItem, { disableRipple: true, children: [
5853
+ onEnableChange && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
5769
5854
  EnableSwitch,
5770
5855
  {
5771
5856
  size: "small",
@@ -5774,11 +5859,11 @@ var DeploymentEntityContextMenu = ({
5774
5859
  inputProps: { "aria-label": item.label }
5775
5860
  }
5776
5861
  ),
5777
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material27.ListItemText, { primary: item.label })
5862
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_material27.ListItemText, { primary: item.label })
5778
5863
  ] }, item.id);
5779
5864
  }
5780
5865
  const Row = item.highlighted ? HighlightedMenuItem : StyledMenuItem;
5781
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
5866
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
5782
5867
  Row,
5783
5868
  {
5784
5869
  onClick: () => {
@@ -5786,17 +5871,17 @@ var DeploymentEntityContextMenu = ({
5786
5871
  onClose();
5787
5872
  },
5788
5873
  children: [
5789
- item.icon && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material27.ListItemIcon, { children: item.icon }),
5790
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material27.ListItemText, { primary: item.label })
5874
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_material27.ListItemIcon, { children: item.icon }),
5875
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_material27.ListItemText, { primary: item.label })
5791
5876
  ]
5792
5877
  },
5793
5878
  item.id
5794
5879
  );
5795
5880
  }),
5796
- enableToggle && /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_jsx_runtime45.Fragment, { children: [
5797
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StyledDivider, {}),
5798
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(ToggleMenuItem, { disableRipple: true, children: [
5799
- onEnableChange && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5881
+ enableToggle && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
5882
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(StyledDivider, {}),
5883
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(ToggleMenuItem, { disableRipple: true, children: [
5884
+ onEnableChange && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
5800
5885
  EnableSwitch,
5801
5886
  {
5802
5887
  size: "small",
@@ -5805,7 +5890,7 @@ var DeploymentEntityContextMenu = ({
5805
5890
  inputProps: { "aria-label": "Enable" }
5806
5891
  }
5807
5892
  ),
5808
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material27.ListItemText, { primary: "Enable" })
5893
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_material27.ListItemText, { primary: "Enable" })
5809
5894
  ] })
5810
5895
  ] })
5811
5896
  ]
@@ -5820,48 +5905,48 @@ var import_ContentCopy2 = __toESM(require("@mui/icons-material/ContentCopy"));
5820
5905
  var import_SmartToyOutlined2 = __toESM(require("@mui/icons-material/SmartToyOutlined"));
5821
5906
  var import_Description = __toESM(require("@mui/icons-material/Description"));
5822
5907
  var import_Settings2 = __toESM(require("@mui/icons-material/Settings"));
5823
- var import_jsx_runtime46 = require("react/jsx-runtime");
5908
+ var import_jsx_runtime47 = require("react/jsx-runtime");
5824
5909
  var contextMenuItems = {
5825
5910
  /** Add Engagement action (Add Circle icon) */
5826
5911
  addEngagement: (onClick) => ({
5827
5912
  id: "add-engagement",
5828
5913
  label: "Add Engagement",
5829
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_AddCircleOutline.default, {}),
5914
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_AddCircleOutline.default, {}),
5830
5915
  onClick
5831
5916
  }),
5832
5917
  /** Add Agent action (Add Circle icon) */
5833
5918
  addAgent: (onClick) => ({
5834
5919
  id: "add-agent",
5835
5920
  label: "Add Agent",
5836
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_AddCircleOutline.default, {}),
5921
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_AddCircleOutline.default, {}),
5837
5922
  onClick
5838
5923
  }),
5839
5924
  /** Add Stream action (Add Circle icon) */
5840
5925
  addStream: (onClick) => ({
5841
5926
  id: "add-stream",
5842
5927
  label: "Add Stream",
5843
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_AddCircleOutline.default, {}),
5928
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_AddCircleOutline.default, {}),
5844
5929
  onClick
5845
5930
  }),
5846
5931
  /** Edit action (Pen / Edit icon) */
5847
5932
  edit: (onClick) => ({
5848
5933
  id: "edit",
5849
5934
  label: "Edit",
5850
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_Edit.default, {}),
5935
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_Edit.default, {}),
5851
5936
  onClick
5852
5937
  }),
5853
5938
  /** Copy ID action (Copy icon) */
5854
5939
  copyId: (onClick) => ({
5855
5940
  id: "copy-id",
5856
5941
  label: "Copy ID",
5857
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_ContentCopy2.default, {}),
5942
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_ContentCopy2.default, {}),
5858
5943
  onClick
5859
5944
  }),
5860
5945
  /** Agent Flow Visualization — highlighted action (SmartToy icon) */
5861
5946
  agentFlowVisualization: (onClick) => ({
5862
5947
  id: "agent-flow",
5863
5948
  label: "Agent Flow Visualization",
5864
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_SmartToyOutlined2.default, {}),
5949
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_SmartToyOutlined2.default, {}),
5865
5950
  onClick,
5866
5951
  highlighted: true
5867
5952
  }),
@@ -5869,7 +5954,7 @@ var contextMenuItems = {
5869
5954
  viewLogs: (onClick) => ({
5870
5955
  id: "view-logs",
5871
5956
  label: "View Logs",
5872
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_Description.default, {}),
5957
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_Description.default, {}),
5873
5958
  onClick
5874
5959
  }),
5875
5960
  /** Horizontal divider between sections */
@@ -5888,7 +5973,7 @@ var contextMenuItems = {
5888
5973
  settings: (onClick) => ({
5889
5974
  id: "settings",
5890
5975
  label: "Settings",
5891
- icon: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_Settings2.default, {}),
5976
+ icon: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_Settings2.default, {}),
5892
5977
  onClick
5893
5978
  })
5894
5979
  };
@@ -5896,7 +5981,7 @@ var contextMenuItems = {
5896
5981
  // src/components/layout/DeploymentDashboardTree/DeploymentDashboardTree.tsx
5897
5982
  var import_material28 = require("@mui/material");
5898
5983
  var import_styles30 = require("@mui/material/styles");
5899
- var import_jsx_runtime47 = require("react/jsx-runtime");
5984
+ var import_jsx_runtime48 = require("react/jsx-runtime");
5900
5985
  var TREE_SP = {
5901
5986
  /** Vertical gap between sibling rows (Figma S / sp-8) */
5902
5987
  rowGap: 8,
@@ -5933,9 +6018,9 @@ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
5933
6018
  const entityColor = deploymentEntityColors[node.entityType] ?? deploymentEntityColors.workspace;
5934
6019
  const railOpacity = RAIL_OPACITY[node.entityType] ?? 0.5;
5935
6020
  const railColor = (0, import_styles30.alpha)(entityColor, railOpacity);
5936
- const renderedChildren = hasChildren && expanded ? /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_material28.Box, { sx: { display: "flex", gap: `${TREE_SP.railGap}px` }, children: [
5937
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Rail, { railColor, "aria-hidden": true, "data-rail": true }),
5938
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6021
+ const renderedChildren = hasChildren && expanded ? /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_material28.Box, { sx: { display: "flex", gap: `${TREE_SP.railGap}px` }, children: [
6022
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Rail, { railColor, "aria-hidden": true, "data-rail": true }),
6023
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
5939
6024
  import_material28.Box,
5940
6025
  {
5941
6026
  role: "group",
@@ -5946,7 +6031,7 @@ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
5946
6031
  flexDirection: "column",
5947
6032
  gap: `${TREE_SP.rowGap}px`
5948
6033
  },
5949
- children: node.children.map((child) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6034
+ children: node.children.map((child) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
5950
6035
  TreeRow,
5951
6036
  {
5952
6037
  node: child,
@@ -5960,7 +6045,7 @@ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
5960
6045
  }
5961
6046
  )
5962
6047
  ] }) : null;
5963
- const cardContent = renderCard?.(node) ?? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6048
+ const cardContent = renderCard?.(node) ?? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
5964
6049
  DeploymentDashboardCard,
5965
6050
  {
5966
6051
  entityType: node.entityType,
@@ -5978,7 +6063,7 @@ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
5978
6063
  children: renderedChildren
5979
6064
  }
5980
6065
  );
5981
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material28.Box, { role: "treeitem", children: cardContent });
6066
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_material28.Box, { role: "treeitem", children: cardContent });
5982
6067
  };
5983
6068
  var DeploymentDashboardTree = ({
5984
6069
  nodes,
@@ -5986,7 +6071,7 @@ var DeploymentDashboardTree = ({
5986
6071
  onCopyId,
5987
6072
  renderCard
5988
6073
  }) => {
5989
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6074
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
5990
6075
  import_material28.Box,
5991
6076
  {
5992
6077
  role: "tree",
@@ -5996,7 +6081,7 @@ var DeploymentDashboardTree = ({
5996
6081
  gap: `${TREE_SP.rowGap}px`,
5997
6082
  p: `${TREE_SP.rowGap}px`
5998
6083
  },
5999
- children: nodes.map((node) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
6084
+ children: nodes.map((node) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
6000
6085
  TreeRow,
6001
6086
  {
6002
6087
  node,
@@ -6014,7 +6099,7 @@ var DeploymentDashboardTree = ({
6014
6099
  // src/components/layout/DeploymentDashboardPanel/DeploymentDashboardPanel.tsx
6015
6100
  var import_material29 = require("@mui/material");
6016
6101
  var import_styles31 = require("@mui/material/styles");
6017
- var import_jsx_runtime48 = require("react/jsx-runtime");
6102
+ var import_jsx_runtime49 = require("react/jsx-runtime");
6018
6103
  var PANEL_RADIUS = 12;
6019
6104
  var PANEL_SHADOW = "0px 1px 3px rgba(0, 0, 0, 0.08)";
6020
6105
  var StyledPanel = (0, import_styles31.styled)(import_material29.Box)({
@@ -6029,13 +6114,309 @@ var DeploymentDashboardPanel = ({
6029
6114
  className,
6030
6115
  padding = 2
6031
6116
  }) => {
6032
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyledPanel, { className, sx: { p: padding }, children });
6117
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(StyledPanel, { className, sx: { p: padding }, children });
6118
+ };
6119
+
6120
+ // src/components/layout/WorkflowNode/WorkflowNode.tsx
6121
+ var import_material30 = require("@mui/material");
6122
+ var import_PlayCircleOutline = __toESM(require("@mui/icons-material/PlayCircleOutline"));
6123
+ var import_CloudDownload = __toESM(require("@mui/icons-material/CloudDownload"));
6124
+ var import_Waves2 = __toESM(require("@mui/icons-material/Waves"));
6125
+ var import_Link3 = __toESM(require("@mui/icons-material/Link"));
6126
+ var import_Cloud = __toESM(require("@mui/icons-material/Cloud"));
6127
+ var import_Bolt = __toESM(require("@mui/icons-material/Bolt"));
6128
+ var import_FlashOn = __toESM(require("@mui/icons-material/FlashOn"));
6129
+ var import_PlayArrow = __toESM(require("@mui/icons-material/PlayArrow"));
6130
+ var import_Psychology = __toESM(require("@mui/icons-material/Psychology"));
6131
+ var import_SmartToyOutlined3 = __toESM(require("@mui/icons-material/SmartToyOutlined"));
6132
+ var import_CallSplit = __toESM(require("@mui/icons-material/CallSplit"));
6133
+ var import_Send = __toESM(require("@mui/icons-material/Send"));
6134
+ var import_CheckCircleOutline = __toESM(require("@mui/icons-material/CheckCircleOutline"));
6135
+ var import_jsx_runtime50 = require("react/jsx-runtime");
6136
+ var WORKFLOW_NODE_LABELS = {
6137
+ start: "Start",
6138
+ input: "Input",
6139
+ stream: "Stream",
6140
+ rafts: "Rafts",
6141
+ cubbies: "Cubbies",
6142
+ events: "Events",
6143
+ trigger: "Trigger",
6144
+ action: "Action",
6145
+ aiModel: "AI Model",
6146
+ aiAgent: "Agent",
6147
+ condition: "Condition",
6148
+ output: "Output",
6149
+ end: "End"
6150
+ };
6151
+ var NODE_ICON_SIZE = 18;
6152
+ var WORKFLOW_NODE_SHADOW = "0px 1px 3px rgba(0, 0, 0, 0.1), 0px 1px 2px rgba(0, 0, 0, 0.1)";
6153
+ var WORKFLOW_NODE_ICONS = {
6154
+ start: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_PlayCircleOutline.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6155
+ input: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_CloudDownload.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6156
+ stream: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Waves2.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6157
+ rafts: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Link3.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6158
+ cubbies: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Cloud.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6159
+ events: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Bolt.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6160
+ trigger: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_FlashOn.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6161
+ action: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_PlayArrow.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6162
+ aiModel: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Psychology.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6163
+ aiAgent: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_SmartToyOutlined3.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6164
+ condition: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_CallSplit.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6165
+ output: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_Send.default, { sx: { fontSize: NODE_ICON_SIZE } }),
6166
+ end: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_CheckCircleOutline.default, { sx: { fontSize: NODE_ICON_SIZE } })
6167
+ };
6168
+ var WORKFLOW_NODE_STYLE_TOKENS = {
6169
+ start: {
6170
+ cardBorder: "#7BF1A8",
6171
+ badgeBackground: "#F0FDF4",
6172
+ badgeBorder: "#B9F8CF",
6173
+ badgeText: "#008236"
6174
+ },
6175
+ input: {
6176
+ cardBorder: "#74D4FF",
6177
+ badgeBackground: "#F0F9FF",
6178
+ badgeBorder: "#B8E6FE",
6179
+ badgeText: "#0069A8"
6180
+ },
6181
+ stream: {
6182
+ cardBorder: "#53EAFD",
6183
+ badgeBackground: "#ECFEFF",
6184
+ badgeBorder: "#A2F4FD",
6185
+ badgeText: "#007595"
6186
+ },
6187
+ rafts: {
6188
+ cardBorder: "#FFB86A",
6189
+ badgeBackground: "#FFF7ED",
6190
+ badgeBorder: "#FFD6A8",
6191
+ badgeText: "#CA3500"
6192
+ },
6193
+ cubbies: {
6194
+ cardBorder: "#D0C900",
6195
+ badgeBackground: "#FCFFED",
6196
+ badgeBorder: "#D0C900",
6197
+ badgeText: "#747500"
6198
+ },
6199
+ events: {
6200
+ cardBorder: "#FDA5D5",
6201
+ badgeBackground: "#FDF2F8",
6202
+ badgeBorder: "#FCCEE8",
6203
+ badgeText: "#C6005C"
6204
+ },
6205
+ trigger: {
6206
+ cardBorder: "#DAB2FF",
6207
+ badgeBackground: "#FAF5FF",
6208
+ badgeBorder: "#E9D4FF",
6209
+ badgeText: "#8200DB"
6210
+ },
6211
+ action: {
6212
+ cardBorder: "#8EC5FF",
6213
+ badgeBackground: "#EFF6FF",
6214
+ badgeBorder: "#BEDBFF",
6215
+ badgeText: "#1447E6"
6216
+ },
6217
+ aiModel: {
6218
+ cardBorder: "#A3B3FF",
6219
+ badgeBackground: "#EEF2FF",
6220
+ badgeBorder: "#C6D2FF",
6221
+ badgeText: "#432DD7"
6222
+ },
6223
+ aiAgent: {
6224
+ cardBorder: "#D0A2FB",
6225
+ badgeBackground: "#F8EEFF",
6226
+ badgeBorder: "#D9BCF3",
6227
+ badgeText: "#9F40F8"
6228
+ },
6229
+ condition: {
6230
+ cardBorder: "#FFD230",
6231
+ badgeBackground: "#FFFBEB",
6232
+ badgeBorder: "#FEE685",
6233
+ badgeText: "#BB4D00"
6234
+ },
6235
+ output: {
6236
+ cardBorder: "#5EE9B5",
6237
+ badgeBackground: "#ECFDF5",
6238
+ badgeBorder: "#A4F4CF",
6239
+ badgeText: "#007A55"
6240
+ },
6241
+ end: {
6242
+ cardBorder: "#FFA2A2",
6243
+ badgeBackground: "#FEF2F2",
6244
+ badgeBorder: "#FFC9C9",
6245
+ badgeText: "#C10007"
6246
+ }
6247
+ };
6248
+ var BADGE_TYPOGRAPHY = {
6249
+ fontSize: "12px",
6250
+ fontWeight: 500,
6251
+ lineHeight: 1.33
6252
+ };
6253
+ var SideConnectorDot = ({
6254
+ accentColor,
6255
+ side
6256
+ }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6257
+ import_material30.Box,
6258
+ {
6259
+ "data-testid": `workflow-node-dot-${side}`,
6260
+ sx: {
6261
+ position: "absolute",
6262
+ top: "50%",
6263
+ [side]: "-4px",
6264
+ transform: "translateY(-50%)",
6265
+ width: "8px",
6266
+ height: "8px",
6267
+ borderRadius: "999px",
6268
+ border: "2px solid #fff",
6269
+ backgroundColor: accentColor,
6270
+ boxShadow: WORKFLOW_NODE_SHADOW,
6271
+ zIndex: 1,
6272
+ pointerEvents: "none"
6273
+ }
6274
+ }
6275
+ );
6276
+ var NodeTypeBadge = ({ nodeType, badgeBackground, badgeBorder, badgeText, icon, label }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
6277
+ import_material30.Box,
6278
+ {
6279
+ sx: {
6280
+ display: "inline-flex",
6281
+ alignItems: "center",
6282
+ justifyContent: "center",
6283
+ gap: 1,
6284
+ px: 1,
6285
+ py: 0.5,
6286
+ borderRadius: "999px",
6287
+ backgroundColor: badgeBackground,
6288
+ border: `1px solid ${badgeBorder}`,
6289
+ flexShrink: 0
6290
+ },
6291
+ children: [
6292
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_material30.Box, { sx: { color: badgeText, display: "flex", alignItems: "center" }, children: icon ?? WORKFLOW_NODE_ICONS[nodeType] }),
6293
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6294
+ import_material30.Typography,
6295
+ {
6296
+ variant: "body2",
6297
+ component: "span",
6298
+ sx: {
6299
+ color: badgeText,
6300
+ fontWeight: BADGE_TYPOGRAPHY.fontWeight,
6301
+ fontSize: BADGE_TYPOGRAPHY.fontSize,
6302
+ lineHeight: BADGE_TYPOGRAPHY.lineHeight
6303
+ },
6304
+ children: label ?? WORKFLOW_NODE_LABELS[nodeType]
6305
+ }
6306
+ )
6307
+ ]
6308
+ }
6309
+ );
6310
+ var WorkflowNode = ({
6311
+ nodeType,
6312
+ title,
6313
+ description,
6314
+ icon,
6315
+ badgeLabel,
6316
+ selected = false,
6317
+ className,
6318
+ showSideDots = true,
6319
+ sx,
6320
+ ...paperProps
6321
+ }) => {
6322
+ const accentColor = workflowNodeColors[nodeType];
6323
+ const visualTokens = WORKFLOW_NODE_STYLE_TOKENS[nodeType];
6324
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
6325
+ import_material30.Paper,
6326
+ {
6327
+ elevation: 0,
6328
+ className,
6329
+ sx: {
6330
+ display: "flex",
6331
+ flexDirection: "row",
6332
+ position: "relative",
6333
+ overflow: "visible",
6334
+ border: `1px solid ${selected ? accentColor : visualTokens.cardBorder}`,
6335
+ borderRadius: "14px",
6336
+ minWidth: 220,
6337
+ maxWidth: 460,
6338
+ minHeight: "76px",
6339
+ backgroundColor: "#fff",
6340
+ boxShadow: WORKFLOW_NODE_SHADOW,
6341
+ transition: "border-color 0.15s ease",
6342
+ ...sx
6343
+ },
6344
+ ...paperProps,
6345
+ children: [
6346
+ showSideDots && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(SideConnectorDot, { accentColor, side: "left" }),
6347
+ showSideDots && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(SideConnectorDot, { accentColor, side: "right" }),
6348
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
6349
+ import_material30.Box,
6350
+ {
6351
+ sx: {
6352
+ flex: 1,
6353
+ display: "flex",
6354
+ justifyContent: "space-between",
6355
+ alignItems: "center",
6356
+ gap: 2,
6357
+ px: 2,
6358
+ py: 2,
6359
+ minWidth: 0
6360
+ },
6361
+ children: [
6362
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_material30.Box, { sx: { minWidth: 0, flex: 1 }, children: [
6363
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6364
+ import_material30.Typography,
6365
+ {
6366
+ variant: "subtitle2",
6367
+ noWrap: true,
6368
+ sx: {
6369
+ color: "#1E2939",
6370
+ fontSize: "16px",
6371
+ fontWeight: 500,
6372
+ lineHeight: "24px",
6373
+ letterSpacing: "-0.3125px"
6374
+ },
6375
+ children: title
6376
+ }
6377
+ ),
6378
+ description && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6379
+ import_material30.Typography,
6380
+ {
6381
+ variant: "body2",
6382
+ sx: {
6383
+ color: "#6A7282",
6384
+ fontSize: "12px",
6385
+ lineHeight: "16px",
6386
+ mt: 0.25,
6387
+ overflow: "hidden",
6388
+ textOverflow: "ellipsis",
6389
+ display: "-webkit-box",
6390
+ WebkitLineClamp: 2,
6391
+ WebkitBoxOrient: "vertical"
6392
+ },
6393
+ children: description
6394
+ }
6395
+ )
6396
+ ] }),
6397
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6398
+ NodeTypeBadge,
6399
+ {
6400
+ nodeType,
6401
+ badgeBackground: visualTokens.badgeBackground,
6402
+ badgeBorder: visualTokens.badgeBorder,
6403
+ badgeText: visualTokens.badgeText,
6404
+ icon,
6405
+ label: badgeLabel
6406
+ }
6407
+ )
6408
+ ]
6409
+ }
6410
+ )
6411
+ ]
6412
+ }
6413
+ );
6033
6414
  };
6034
6415
 
6035
6416
  // src/components/layout/Avatar.tsx
6036
6417
  var import_Avatar = __toESM(require("@mui/material/Avatar"));
6037
6418
  var import_styles32 = require("@mui/material/styles");
6038
- var import_jsx_runtime49 = require("react/jsx-runtime");
6419
+ var import_jsx_runtime51 = require("react/jsx-runtime");
6039
6420
  var sizeMap = {
6040
6421
  small: 32,
6041
6422
  medium: 40,
@@ -6052,18 +6433,18 @@ var StyledAvatar = (0, import_styles32.styled)(import_Avatar.default, {
6052
6433
  }));
6053
6434
  var Avatar5 = ({ size: size3 = "medium", ...props }) => {
6054
6435
  const avatarSize = typeof size3 === "number" ? size3 : sizeMap[size3];
6055
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(StyledAvatar, { avatarSize, ...props });
6436
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(StyledAvatar, { avatarSize, ...props });
6056
6437
  };
6057
6438
 
6058
6439
  // src/components/layout/Table.tsx
6059
- var import_material30 = require("@mui/material");
6440
+ var import_material31 = require("@mui/material");
6060
6441
  var import_styles33 = require("@mui/material/styles");
6061
- var import_jsx_runtime50 = require("react/jsx-runtime");
6062
- var StyledTableContainer = (0, import_styles33.styled)(import_material30.TableContainer)({
6442
+ var import_jsx_runtime52 = require("react/jsx-runtime");
6443
+ var StyledTableContainer = (0, import_styles33.styled)(import_material31.TableContainer)({
6063
6444
  borderRadius: 8,
6064
6445
  border: `1px solid ${colors.grey[200]}`
6065
6446
  });
6066
- var StyledTableHead = (0, import_styles33.styled)(import_material30.TableHead)({
6447
+ var StyledTableHead = (0, import_styles33.styled)(import_material31.TableHead)({
6067
6448
  backgroundColor: colors.grey[50],
6068
6449
  "& .MuiTableCell-head": {
6069
6450
  fontWeight: 600,
@@ -6071,7 +6452,7 @@ var StyledTableHead = (0, import_styles33.styled)(import_material30.TableHead)({
6071
6452
  }
6072
6453
  });
6073
6454
  var Table = ({ stickyHeader = false, children, ...props }) => {
6074
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(StyledTableContainer, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_material30.Table, { stickyHeader, ...props, children }) });
6455
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StyledTableContainer, { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material31.Table, { stickyHeader, ...props, children }) });
6075
6456
  };
6076
6457
  var TableHeader = ({
6077
6458
  columns,
@@ -6079,8 +6460,8 @@ var TableHeader = ({
6079
6460
  order = "asc",
6080
6461
  onSort
6081
6462
  }) => {
6082
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(StyledTableHead, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_material30.TableRow, { children: columns.map((column) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_material30.TableCell, { align: column.align || "left", children: column.sortable && onSort ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
6083
- import_material30.TableSortLabel,
6463
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StyledTableHead, { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material31.TableRow, { children: columns.map((column) => /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material31.TableCell, { align: column.align || "left", children: column.sortable && onSort ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
6464
+ import_material31.TableSortLabel,
6084
6465
  {
6085
6466
  active: orderBy === column.id,
6086
6467
  direction: orderBy === column.id ? order : "asc",
@@ -6091,14 +6472,14 @@ var TableHeader = ({
6091
6472
  };
6092
6473
 
6093
6474
  // src/components/layout/Grid.tsx
6094
- var import_material31 = require("@mui/material");
6475
+ var import_material32 = require("@mui/material");
6095
6476
 
6096
6477
  // src/components/layout/Breadcrumbs.tsx
6097
6478
  var import_Breadcrumbs = __toESM(require("@mui/material/Breadcrumbs"));
6098
- var import_Link3 = __toESM(require("@mui/material/Link"));
6099
- var import_Typography3 = __toESM(require("@mui/material/Typography"));
6479
+ var import_Link4 = __toESM(require("@mui/material/Link"));
6480
+ var import_Typography4 = __toESM(require("@mui/material/Typography"));
6100
6481
  var import_styles34 = require("@mui/material/styles");
6101
- var import_jsx_runtime51 = require("react/jsx-runtime");
6482
+ var import_jsx_runtime53 = require("react/jsx-runtime");
6102
6483
  var StyledBreadcrumbs = (0, import_styles34.styled)(import_Breadcrumbs.default)({
6103
6484
  "& .MuiBreadcrumbs-ol": {
6104
6485
  flexWrap: "nowrap"
@@ -6107,7 +6488,7 @@ var StyledBreadcrumbs = (0, import_styles34.styled)(import_Breadcrumbs.default)(
6107
6488
  color: colors.text.secondary
6108
6489
  }
6109
6490
  });
6110
- var StyledLink2 = (0, import_styles34.styled)(import_Link3.default)({
6491
+ var StyledLink2 = (0, import_styles34.styled)(import_Link4.default)({
6111
6492
  color: colors.primary.main,
6112
6493
  textDecoration: "none",
6113
6494
  "&:hover": {
@@ -6115,12 +6496,12 @@ var StyledLink2 = (0, import_styles34.styled)(import_Link3.default)({
6115
6496
  }
6116
6497
  });
6117
6498
  var Breadcrumbs = ({ items, ...props }) => {
6118
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(StyledBreadcrumbs, { ...props, children: items.map((item, index) => {
6499
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StyledBreadcrumbs, { ...props, children: items.map((item, index) => {
6119
6500
  const isLast = index === items.length - 1;
6120
6501
  if (isLast || !item.href && !item.onClick) {
6121
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_Typography3.default, { color: "text.primary", children: item.label }, index);
6502
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_Typography4.default, { color: "text.primary", children: item.label }, index);
6122
6503
  }
6123
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
6504
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
6124
6505
  StyledLink2,
6125
6506
  {
6126
6507
  href: item.href,
@@ -6138,11 +6519,11 @@ var Breadcrumbs = ({ items, ...props }) => {
6138
6519
  };
6139
6520
 
6140
6521
  // src/components/layout/Accordion.tsx
6141
- var import_material32 = require("@mui/material");
6522
+ var import_material33 = require("@mui/material");
6142
6523
  var import_ExpandMore2 = __toESM(require("@mui/icons-material/ExpandMore"));
6143
6524
  var import_styles35 = require("@mui/material/styles");
6144
- var import_jsx_runtime52 = require("react/jsx-runtime");
6145
- var StyledAccordion = (0, import_styles35.styled)(import_material32.Accordion)({
6525
+ var import_jsx_runtime54 = require("react/jsx-runtime");
6526
+ var StyledAccordion = (0, import_styles35.styled)(import_material33.Accordion)({
6146
6527
  borderRadius: 8,
6147
6528
  boxShadow: "none",
6148
6529
  border: `1px solid ${colors.grey[200]}`,
@@ -6153,7 +6534,7 @@ var StyledAccordion = (0, import_styles35.styled)(import_material32.Accordion)({
6153
6534
  margin: 0
6154
6535
  }
6155
6536
  });
6156
- var StyledAccordionSummary = (0, import_styles35.styled)(import_material32.AccordionSummary)({
6537
+ var StyledAccordionSummary = (0, import_styles35.styled)(import_material33.AccordionSummary)({
6157
6538
  backgroundColor: colors.grey[50],
6158
6539
  borderRadius: "8px 8px 0 0",
6159
6540
  "&.Mui-expanded": {
@@ -6163,7 +6544,7 @@ var StyledAccordionSummary = (0, import_styles35.styled)(import_material32.Accor
6163
6544
  margin: "12px 0"
6164
6545
  }
6165
6546
  });
6166
- var StyledAccordionDetails = (0, import_styles35.styled)(import_material32.AccordionDetails)({
6547
+ var StyledAccordionDetails = (0, import_styles35.styled)(import_material33.AccordionDetails)({
6167
6548
  padding: "16px"
6168
6549
  });
6169
6550
  var Accordion = ({
@@ -6172,16 +6553,16 @@ var Accordion = ({
6172
6553
  defaultExpanded = false,
6173
6554
  ...props
6174
6555
  }) => {
6175
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(StyledAccordion, { defaultExpanded, ...props, children: [
6176
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StyledAccordionSummary, { expandIcon: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_ExpandMore2.default, {}), children: title }),
6177
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StyledAccordionDetails, { children })
6556
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(StyledAccordion, { defaultExpanded, ...props, children: [
6557
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(StyledAccordionSummary, { expandIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_ExpandMore2.default, {}), children: title }),
6558
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(StyledAccordionDetails, { children })
6178
6559
  ] });
6179
6560
  };
6180
6561
 
6181
6562
  // src/components/layout/Paper.tsx
6182
6563
  var import_Paper = __toESM(require("@mui/material/Paper"));
6183
6564
  var import_styles36 = require("@mui/material/styles");
6184
- var import_jsx_runtime53 = require("react/jsx-runtime");
6565
+ var import_jsx_runtime55 = require("react/jsx-runtime");
6185
6566
  var StyledPaper = (0, import_styles36.styled)(import_Paper.default)({
6186
6567
  borderRadius: 8,
6187
6568
  "&.MuiPaper-elevation": {
@@ -6192,38 +6573,38 @@ var StyledPaper = (0, import_styles36.styled)(import_Paper.default)({
6192
6573
  boxShadow: "none"
6193
6574
  }
6194
6575
  });
6195
- var Paper2 = ({ variant = "elevation", ...props }) => {
6196
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StyledPaper, { variant, elevation: variant === "elevation" ? 1 : 0, ...props });
6576
+ var Paper3 = ({ variant = "elevation", ...props }) => {
6577
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(StyledPaper, { variant, elevation: variant === "elevation" ? 1 : 0, ...props });
6197
6578
  };
6198
6579
 
6199
6580
  // src/components/layout/Divider.tsx
6200
6581
  var import_Divider2 = __toESM(require("@mui/material/Divider"));
6201
6582
  var import_styles37 = require("@mui/material/styles");
6202
- var import_jsx_runtime54 = require("react/jsx-runtime");
6583
+ var import_jsx_runtime56 = require("react/jsx-runtime");
6203
6584
  var StyledDivider2 = (0, import_styles37.styled)(import_Divider2.default)({
6204
6585
  borderColor: colors.grey[200]
6205
6586
  });
6206
6587
  var Divider6 = ({ ...props }) => {
6207
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(StyledDivider2, { ...props });
6588
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(StyledDivider2, { ...props });
6208
6589
  };
6209
6590
 
6210
6591
  // src/components/layout/Stack.tsx
6211
- var import_material33 = require("@mui/material");
6592
+ var import_material34 = require("@mui/material");
6212
6593
 
6213
6594
  // src/components/layout/Box.tsx
6214
- var import_material34 = require("@mui/material");
6595
+ var import_material35 = require("@mui/material");
6215
6596
 
6216
6597
  // src/components/layout/Typography.tsx
6217
- var import_material35 = require("@mui/material");
6598
+ var import_material36 = require("@mui/material");
6218
6599
 
6219
6600
  // src/components/layout/Container.tsx
6220
- var import_material36 = require("@mui/material");
6601
+ var import_material37 = require("@mui/material");
6221
6602
 
6222
6603
  // src/components/layout/AppBar.tsx
6223
- var import_material37 = require("@mui/material");
6604
+ var import_material38 = require("@mui/material");
6224
6605
  var import_styles38 = require("@mui/material/styles");
6225
- var import_jsx_runtime55 = require("react/jsx-runtime");
6226
- var StyledAppBar = (0, import_styles38.styled)(import_material37.AppBar, {
6606
+ var import_jsx_runtime57 = require("react/jsx-runtime");
6607
+ var StyledAppBar = (0, import_styles38.styled)(import_material38.AppBar, {
6227
6608
  shouldForwardProp: (prop) => prop !== "appBarHeight"
6228
6609
  })(({ appBarHeight = 64 }) => ({
6229
6610
  backgroundColor: colors.background.paper,
@@ -6232,44 +6613,518 @@ var StyledAppBar = (0, import_styles38.styled)(import_material37.AppBar, {
6232
6613
  height: appBarHeight,
6233
6614
  zIndex: 1300
6234
6615
  }));
6235
- var StyledToolbar = (0, import_styles38.styled)(import_material37.Toolbar)(({ theme: theme2 }) => ({
6616
+ var StyledToolbar = (0, import_styles38.styled)(import_material38.Toolbar)(({ theme: theme2 }) => ({
6236
6617
  height: "100%",
6237
6618
  paddingLeft: theme2.spacing(2),
6238
6619
  paddingRight: theme2.spacing(2),
6239
6620
  gap: theme2.spacing(2)
6240
6621
  }));
6241
6622
  var AppBar = ({ height = 64, children, ...props }) => {
6242
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(StyledAppBar, { position: "fixed", appBarHeight: height, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(StyledToolbar, { children }) });
6243
- };
6244
-
6245
- // src/components/layout/Collapse.tsx
6246
- var import_material38 = require("@mui/material");
6247
- var import_jsx_runtime56 = require("react/jsx-runtime");
6248
- var Collapse = (props) => {
6249
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_material38.Collapse, { ...props });
6623
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(StyledAppBar, { position: "fixed", appBarHeight: height, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(StyledToolbar, { children }) });
6250
6624
  };
6251
6625
 
6252
- // src/components/feedback/Alert.tsx
6253
- var import_react15 = __toESM(require("react"));
6254
- var import_Alert2 = __toESM(require("@mui/material/Alert"));
6626
+ // src/components/layout/WorkflowTopBar/WorkflowTopBar.tsx
6255
6627
  var import_material39 = require("@mui/material");
6256
- var import_Snackbar2 = __toESM(require("@mui/material/Snackbar"));
6257
- var import_styles39 = require("@mui/material/styles");
6258
- var import_jsx_runtime57 = require("react/jsx-runtime");
6259
- var StyledAlert = (0, import_styles39.styled)(import_Alert2.default)({
6260
- borderRadius: 8,
6261
- "&.MuiAlert-filled": {
6262
- borderRadius: 8
6263
- }
6264
- });
6265
- var Alert2 = ({
6266
- severity = "info",
6267
- title,
6268
- children,
6269
- ...props
6628
+ var import_Close3 = __toESM(require("@mui/icons-material/Close"));
6629
+ var import_Cancel = __toESM(require("@mui/icons-material/Cancel"));
6630
+ var import_jsx_runtime58 = require("react/jsx-runtime");
6631
+ var WorkflowTopBar = ({
6632
+ title = "Agent visualization flow chart",
6633
+ executionId,
6634
+ onExecutionIdChange,
6635
+ onClearExecutionId,
6636
+ submitLabel = "Submit",
6637
+ onSubmit,
6638
+ inspectorLabel = "Inspector",
6639
+ onInspectorToggle,
6640
+ onClose,
6641
+ showInspectorToggle = true,
6642
+ showCloseButton = true,
6643
+ sx,
6644
+ ...boxProps
6645
+ }) => {
6646
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6647
+ import_material39.Box,
6648
+ {
6649
+ sx: {
6650
+ backgroundColor: "#fff",
6651
+ display: "flex",
6652
+ flexDirection: "column",
6653
+ width: "100%",
6654
+ ...sx
6655
+ },
6656
+ ...boxProps,
6657
+ children: [
6658
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6659
+ import_material39.Box,
6660
+ {
6661
+ sx: {
6662
+ display: "flex",
6663
+ alignItems: "center",
6664
+ justifyContent: "space-between",
6665
+ gap: 2,
6666
+ px: 2,
6667
+ py: 2,
6668
+ minHeight: 72
6669
+ },
6670
+ children: [
6671
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6672
+ import_material39.Typography,
6673
+ {
6674
+ variant: "subtitle1",
6675
+ sx: {
6676
+ color: deploymentSurfaceTokens.textPrimary,
6677
+ fontWeight: 500,
6678
+ minWidth: 220
6679
+ },
6680
+ children: title
6681
+ }
6682
+ ),
6683
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6684
+ import_material39.Box,
6685
+ {
6686
+ sx: {
6687
+ display: "flex",
6688
+ alignItems: "center",
6689
+ gap: 2,
6690
+ justifyContent: "flex-end",
6691
+ flex: 1,
6692
+ minWidth: 0
6693
+ },
6694
+ children: [
6695
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6696
+ import_material39.Box,
6697
+ {
6698
+ sx: {
6699
+ display: "flex",
6700
+ alignItems: "center",
6701
+ backgroundColor: "#D8D4DD",
6702
+ borderRadius: "4px 4px 0 0",
6703
+ borderBottom: "2px solid #A855F7",
6704
+ px: 2,
6705
+ minWidth: 320,
6706
+ maxWidth: 440,
6707
+ flex: "1 1 auto",
6708
+ minHeight: 56
6709
+ },
6710
+ children: [
6711
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(import_material39.Box, { sx: { flex: 1, minWidth: 0 }, children: [
6712
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6713
+ import_material39.Typography,
6714
+ {
6715
+ variant: "caption",
6716
+ sx: {
6717
+ color: "#6A7282",
6718
+ fontSize: 12,
6719
+ display: "block"
6720
+ },
6721
+ children: "Execution CID"
6722
+ }
6723
+ ),
6724
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6725
+ import_material39.InputBase,
6726
+ {
6727
+ value: executionId,
6728
+ onChange: (event) => onExecutionIdChange?.(event.target.value),
6729
+ inputProps: { "aria-label": "Execution CID value" },
6730
+ sx: {
6731
+ width: "100%",
6732
+ mt: 0.25,
6733
+ "& .MuiInputBase-input": {
6734
+ p: 0,
6735
+ color: "#1D1B20",
6736
+ fontSize: 16,
6737
+ lineHeight: 1.5
6738
+ }
6739
+ }
6740
+ }
6741
+ )
6742
+ ] }),
6743
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6744
+ import_material39.IconButton,
6745
+ {
6746
+ size: "small",
6747
+ "aria-label": "Clear execution ID",
6748
+ onClick: onClearExecutionId,
6749
+ sx: { color: "#4A4458", ml: 1 },
6750
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_Cancel.default, { fontSize: "small" })
6751
+ }
6752
+ )
6753
+ ]
6754
+ }
6755
+ ),
6756
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6757
+ Button,
6758
+ {
6759
+ variant: "primary",
6760
+ onClick: onSubmit,
6761
+ sx: {
6762
+ backgroundColor: "#B65FF4",
6763
+ "&:hover": {
6764
+ backgroundColor: "#A855F7"
6765
+ },
6766
+ "&:active": {
6767
+ backgroundColor: "#9333EA"
6768
+ }
6769
+ },
6770
+ children: submitLabel
6771
+ }
6772
+ ),
6773
+ showInspectorToggle && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Button, { variant: "secondary", onClick: onInspectorToggle, children: inspectorLabel }),
6774
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6775
+ import_material39.IconButton,
6776
+ {
6777
+ "aria-label": "Close workflow chrome",
6778
+ onClick: onClose,
6779
+ sx: {
6780
+ width: 30,
6781
+ height: 30,
6782
+ backgroundColor: (0, import_material39.alpha)("#9E9EAE", 0.28),
6783
+ color: "#4A4458"
6784
+ },
6785
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_Close3.default, { fontSize: "small" })
6786
+ }
6787
+ )
6788
+ ]
6789
+ }
6790
+ )
6791
+ ]
6792
+ }
6793
+ ),
6794
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material39.Divider, { sx: { borderColor: deploymentSurfaceTokens.strokeOutside } })
6795
+ ]
6796
+ }
6797
+ );
6798
+ };
6799
+
6800
+ // src/components/layout/WorkflowSideInspector/WorkflowSideInspector.tsx
6801
+ var import_material40 = require("@mui/material");
6802
+ var import_Close4 = __toESM(require("@mui/icons-material/Close"));
6803
+ var import_ContentCopyOutlined = __toESM(require("@mui/icons-material/ContentCopyOutlined"));
6804
+ var import_jsx_runtime59 = require("react/jsx-runtime");
6805
+ var INSPECTOR_WIDTH = 320;
6806
+ var DIVIDER_COLOR = "#D6CEDD";
6807
+ var MUTED_TEXT_COLOR = "#938F99";
6808
+ var InfoBlock = ({ label, value }) => /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
6809
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Typography, { variant: "body2", sx: { color: MUTED_TEXT_COLOR }, children: label }),
6810
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6811
+ import_material40.Typography,
6812
+ {
6813
+ variant: "body2",
6814
+ sx: { color: deploymentSurfaceTokens.textPrimary, whiteSpace: "pre-wrap" },
6815
+ children: value
6816
+ }
6817
+ )
6818
+ ] });
6819
+ var WorkflowSideInspector = ({
6820
+ open = true,
6821
+ title = "Inspector",
6822
+ nodeTitle = "Player location cubby",
6823
+ nodeDescription = "Retrieving everything we know about this player so far.",
6824
+ nodeType = "cubbies",
6825
+ inputValue = "Get player topic tree",
6826
+ outputValue = "Topic tree with emotional trends and behavior patterns",
6827
+ cubbyId = "ID:S8787",
6828
+ timestamp = "2026-02-11 14:32:10",
6829
+ duration = "120ms",
6830
+ actionLabel = "View Logs",
6831
+ onClose,
6832
+ onCopyCubbyId,
6833
+ onAction,
6834
+ sx,
6835
+ ...paperProps
6836
+ }) => {
6837
+ if (!open) {
6838
+ return null;
6839
+ }
6840
+ const accent = workflowNodeColors[nodeType];
6841
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
6842
+ import_material40.Paper,
6843
+ {
6844
+ elevation: 0,
6845
+ sx: {
6846
+ width: INSPECTOR_WIDTH,
6847
+ minWidth: INSPECTOR_WIDTH,
6848
+ maxWidth: INSPECTOR_WIDTH,
6849
+ p: 3,
6850
+ backgroundColor: "#fff",
6851
+ borderRadius: 0,
6852
+ boxShadow: "0px 5px 8px rgba(0, 3, 11, 0.12), 0px 0px 1px rgba(0, 3, 11, 0.24)",
6853
+ display: "flex",
6854
+ flexDirection: "column",
6855
+ gap: 3,
6856
+ ...sx
6857
+ },
6858
+ ...paperProps,
6859
+ children: [
6860
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 1.25 }, children: [
6861
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [
6862
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Typography, { variant: "subtitle1", sx: { color: deploymentSurfaceTokens.textPrimary }, children: title }),
6863
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6864
+ import_material40.IconButton,
6865
+ {
6866
+ "aria-label": "Close inspector",
6867
+ onClick: onClose,
6868
+ sx: {
6869
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
6870
+ borderRadius: 2
6871
+ },
6872
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_Close4.default, { fontSize: "small" })
6873
+ }
6874
+ )
6875
+ ] }),
6876
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Divider, { sx: { borderColor: DIVIDER_COLOR } })
6877
+ ] }),
6878
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 3, flex: 1 }, children: [
6879
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
6880
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6881
+ import_material40.Typography,
6882
+ {
6883
+ variant: "subtitle1",
6884
+ sx: { color: deploymentSurfaceTokens.textPrimary, fontWeight: 500 },
6885
+ children: nodeTitle
6886
+ }
6887
+ ),
6888
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Typography, { variant: "body2", sx: { color: MUTED_TEXT_COLOR }, children: nodeDescription }),
6889
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
6890
+ import_material40.Box,
6891
+ {
6892
+ sx: {
6893
+ display: "inline-flex",
6894
+ alignItems: "center",
6895
+ alignSelf: "flex-start",
6896
+ gap: 1,
6897
+ px: 1.25,
6898
+ py: 0.5,
6899
+ borderRadius: "999px",
6900
+ border: `1px solid ${accent}`,
6901
+ backgroundColor: (0, import_material40.alpha)(accent, 0.12)
6902
+ },
6903
+ children: [
6904
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6905
+ import_material40.Box,
6906
+ {
6907
+ sx: {
6908
+ width: 10,
6909
+ height: 10,
6910
+ borderRadius: "50%",
6911
+ backgroundColor: accent
6912
+ }
6913
+ }
6914
+ ),
6915
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Typography, { variant: "caption", sx: { color: accent, fontWeight: 500 }, children: WORKFLOW_NODE_LABELS[nodeType] })
6916
+ ]
6917
+ }
6918
+ )
6919
+ ] }),
6920
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Divider, { sx: { borderColor: DIVIDER_COLOR } }),
6921
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [
6922
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(InfoBlock, { label: "Input", value: inputValue }),
6923
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(InfoBlock, { label: "Output", value: outputValue })
6924
+ ] }),
6925
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Divider, { sx: { borderColor: DIVIDER_COLOR } }),
6926
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
6927
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Typography, { variant: "body2", sx: { color: MUTED_TEXT_COLOR }, children: "Cubby ID" }),
6928
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6929
+ Button,
6930
+ {
6931
+ variant: "secondary",
6932
+ size: "small",
6933
+ startIcon: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_ContentCopyOutlined.default, { fontSize: "small" }),
6934
+ onClick: onCopyCubbyId,
6935
+ sx: { alignSelf: "flex-start" },
6936
+ children: cubbyId
6937
+ }
6938
+ )
6939
+ ] }),
6940
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Divider, { sx: { borderColor: DIVIDER_COLOR } }),
6941
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material40.Box, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [
6942
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(InfoBlock, { label: "Timestamp", value: timestamp }),
6943
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(InfoBlock, { label: "Duration", value: duration })
6944
+ ] }),
6945
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material40.Divider, { sx: { borderColor: DIVIDER_COLOR } })
6946
+ ] }),
6947
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(Button, { variant: "primary", fullWidth: true, onClick: onAction, children: actionLabel })
6948
+ ]
6949
+ }
6950
+ );
6951
+ };
6952
+
6953
+ // src/components/layout/WorkflowTimeBar/WorkflowTimeBar.tsx
6954
+ var import_material41 = require("@mui/material");
6955
+ var import_Stop = __toESM(require("@mui/icons-material/Stop"));
6956
+ var import_ChevronLeft2 = __toESM(require("@mui/icons-material/ChevronLeft"));
6957
+ var import_ChevronRight3 = __toESM(require("@mui/icons-material/ChevronRight"));
6958
+ var import_Replay = __toESM(require("@mui/icons-material/Replay"));
6959
+ var import_jsx_runtime60 = require("react/jsx-runtime");
6960
+ var SpeedButton = ({ value, selected, onClick }) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
6961
+ Button,
6962
+ {
6963
+ variant: selected ? "primary" : "secondary",
6964
+ size: "small",
6965
+ onClick,
6966
+ sx: {
6967
+ minWidth: 48,
6968
+ px: 1.5,
6969
+ py: 0.25,
6970
+ borderRadius: 1,
6971
+ fontSize: 14,
6972
+ lineHeight: 1.4
6973
+ },
6974
+ children: `${value}x`
6975
+ }
6976
+ );
6977
+ var WorkflowTimeBar = ({
6978
+ elapsedTime = "01m : 12s",
6979
+ progress = 26,
6980
+ currentStep = 1,
6981
+ totalSteps = 16,
6982
+ speedOptions = [0.5, 1, 2, 4],
6983
+ selectedSpeed = 0.5,
6984
+ onStop,
6985
+ onPreviousStep,
6986
+ onNextStep,
6987
+ onSpeedChange,
6988
+ onReset,
6989
+ sx,
6990
+ ...boxProps
6991
+ }) => {
6992
+ const boundedProgress = Math.max(0, Math.min(100, progress));
6993
+ const atFirstStep = currentStep <= 1;
6994
+ const atLastStep = currentStep >= totalSteps;
6995
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
6996
+ import_material41.Box,
6997
+ {
6998
+ sx: {
6999
+ width: "100%",
7000
+ backgroundColor: "#fff",
7001
+ px: 2,
7002
+ pb: 2,
7003
+ display: "flex",
7004
+ flexDirection: "column",
7005
+ gap: 2,
7006
+ ...sx
7007
+ },
7008
+ ...boxProps,
7009
+ children: [
7010
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material41.Divider, { sx: { borderColor: deploymentSurfaceTokens.strokeOutside } }),
7011
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material41.Box, { sx: { display: "flex", alignItems: "center", gap: 2 }, children: [
7012
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7013
+ import_material41.IconButton,
7014
+ {
7015
+ onClick: onStop,
7016
+ "aria-label": "Stop playback",
7017
+ sx: {
7018
+ width: 40,
7019
+ height: 40,
7020
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
7021
+ borderRadius: 1,
7022
+ color: deploymentSurfaceTokens.textPrimary,
7023
+ backgroundColor: deploymentSurfaceTokens.surfaceHigh
7024
+ },
7025
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_Stop.default, { sx: { fontSize: 16 } })
7026
+ }
7027
+ ),
7028
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material41.Box, { sx: { flex: 1, minWidth: 220, px: 1 }, children: [
7029
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7030
+ import_material41.Typography,
7031
+ {
7032
+ variant: "body2",
7033
+ sx: { color: deploymentSurfaceTokens.textPrimary, mb: 0.5 },
7034
+ children: elapsedTime
7035
+ }
7036
+ ),
7037
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7038
+ import_material41.LinearProgress,
7039
+ {
7040
+ variant: "determinate",
7041
+ value: boundedProgress,
7042
+ sx: {
7043
+ height: 3,
7044
+ borderRadius: 999,
7045
+ backgroundColor: "#CEC6D8",
7046
+ "& .MuiLinearProgress-bar": {
7047
+ backgroundColor: "#5865F2"
7048
+ }
7049
+ }
7050
+ }
7051
+ )
7052
+ ] }),
7053
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material41.Box, { sx: { display: "flex", alignItems: "center", gap: 3 }, children: [
7054
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material41.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
7055
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material41.Typography, { variant: "subtitle1", sx: { fontWeight: 500 }, children: "Steps" }),
7056
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7057
+ import_material41.IconButton,
7058
+ {
7059
+ size: "small",
7060
+ "aria-label": "Previous step",
7061
+ onClick: onPreviousStep,
7062
+ disabled: atFirstStep,
7063
+ sx: { backgroundColor: "#F5F1F7" },
7064
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_ChevronLeft2.default, { fontSize: "small" })
7065
+ }
7066
+ ),
7067
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material41.Typography, { variant: "subtitle1", sx: { minWidth: 52, textAlign: "center" }, children: `${currentStep} / ${totalSteps}` }),
7068
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7069
+ import_material41.IconButton,
7070
+ {
7071
+ size: "small",
7072
+ "aria-label": "Next step",
7073
+ onClick: onNextStep,
7074
+ disabled: atLastStep,
7075
+ sx: { backgroundColor: "#E7E0EC" },
7076
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_ChevronRight3.default, { fontSize: "small" })
7077
+ }
7078
+ )
7079
+ ] }),
7080
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material41.Box, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
7081
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material41.Typography, { variant: "subtitle1", sx: { fontWeight: 500 }, children: "Speed" }),
7082
+ speedOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
7083
+ SpeedButton,
7084
+ {
7085
+ value: option,
7086
+ selected: option === selectedSpeed,
7087
+ onClick: () => onSpeedChange?.(option)
7088
+ },
7089
+ option
7090
+ )),
7091
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material41.IconButton, { "aria-label": "Reset playback", onClick: onReset, size: "small", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_Replay.default, { fontSize: "small" }) })
7092
+ ] })
7093
+ ] })
7094
+ ] })
7095
+ ]
7096
+ }
7097
+ );
7098
+ };
7099
+
7100
+ // src/components/layout/Collapse.tsx
7101
+ var import_material42 = require("@mui/material");
7102
+ var import_jsx_runtime61 = require("react/jsx-runtime");
7103
+ var Collapse = (props) => {
7104
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_material42.Collapse, { ...props });
7105
+ };
7106
+
7107
+ // src/components/feedback/Alert.tsx
7108
+ var import_react15 = __toESM(require("react"));
7109
+ var import_Alert2 = __toESM(require("@mui/material/Alert"));
7110
+ var import_material43 = require("@mui/material");
7111
+ var import_Snackbar2 = __toESM(require("@mui/material/Snackbar"));
7112
+ var import_styles39 = require("@mui/material/styles");
7113
+ var import_jsx_runtime62 = require("react/jsx-runtime");
7114
+ var StyledAlert = (0, import_styles39.styled)(import_Alert2.default)({
7115
+ borderRadius: 8,
7116
+ "&.MuiAlert-filled": {
7117
+ borderRadius: 8
7118
+ }
7119
+ });
7120
+ var Alert2 = ({
7121
+ severity = "info",
7122
+ title,
7123
+ children,
7124
+ ...props
6270
7125
  }) => {
6271
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(StyledAlert, { severity, ...props, children: [
6272
- title && /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_material39.AlertTitle, { children: title }),
7126
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(StyledAlert, { severity, ...props, children: [
7127
+ title && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_material43.AlertTitle, { children: title }),
6273
7128
  children
6274
7129
  ] });
6275
7130
  };
@@ -6291,7 +7146,7 @@ var Snackbar2 = ({
6291
7146
  }
6292
7147
  onClose?.();
6293
7148
  };
6294
- const content = children || (message ? /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
7149
+ const content = children || (message ? /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6295
7150
  Alert2,
6296
7151
  {
6297
7152
  onClose: onClose ? handleClose : void 0,
@@ -6317,7 +7172,7 @@ var Snackbar2 = ({
6317
7172
  }
6318
7173
  );
6319
7174
  NoTransition.displayName = "NoTransition";
6320
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
7175
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6321
7176
  StyledSnackbar,
6322
7177
  {
6323
7178
  anchorOrigin,
@@ -6337,16 +7192,16 @@ var Snackbar2 = ({
6337
7192
  };
6338
7193
 
6339
7194
  // src/components/feedback/EmptyState.tsx
6340
- var import_material40 = require("@mui/material");
6341
- var import_jsx_runtime58 = require("react/jsx-runtime");
7195
+ var import_material44 = require("@mui/material");
7196
+ var import_jsx_runtime63 = require("react/jsx-runtime");
6342
7197
  var EmptyState = ({
6343
7198
  title = "No items found",
6344
7199
  description,
6345
7200
  icon,
6346
7201
  action
6347
7202
  }) => {
6348
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6349
- import_material40.Box,
7203
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
7204
+ import_material44.Box,
6350
7205
  {
6351
7206
  sx: {
6352
7207
  display: "flex",
@@ -6358,8 +7213,8 @@ var EmptyState = ({
6358
7213
  minHeight: 200
6359
7214
  },
6360
7215
  children: [
6361
- icon && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6362
- import_material40.Box,
7216
+ icon && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
7217
+ import_material44.Box,
6363
7218
  {
6364
7219
  sx: {
6365
7220
  color: colors.text.secondary,
@@ -6369,24 +7224,24 @@ var EmptyState = ({
6369
7224
  children: icon
6370
7225
  }
6371
7226
  ),
6372
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material40.Typography, { variant: "h6", sx: { marginBottom: 1, color: colors.text.primary }, children: title }),
6373
- description && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material40.Typography, { variant: "body2", sx: { color: colors.text.secondary, marginBottom: 3 }, children: description }),
6374
- action && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material40.Box, { children: action })
7227
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_material44.Typography, { variant: "h6", sx: { marginBottom: 1, color: colors.text.primary }, children: title }),
7228
+ description && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_material44.Typography, { variant: "body2", sx: { color: colors.text.secondary, marginBottom: 3 }, children: description }),
7229
+ action && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_material44.Box, { children: action })
6375
7230
  ]
6376
7231
  }
6377
7232
  );
6378
7233
  };
6379
7234
 
6380
7235
  // src/components/feedback/Loading.tsx
6381
- var import_material41 = require("@mui/material");
6382
- var import_jsx_runtime59 = require("react/jsx-runtime");
7236
+ var import_material45 = require("@mui/material");
7237
+ var import_jsx_runtime64 = require("react/jsx-runtime");
6383
7238
  var Loading = ({
6384
7239
  message = "Loading...",
6385
7240
  size: size3 = 40,
6386
7241
  fullScreen = false
6387
7242
  }) => {
6388
- const content = /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
6389
- import_material41.Box,
7243
+ const content = /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
7244
+ import_material45.Box,
6390
7245
  {
6391
7246
  sx: {
6392
7247
  display: "flex",
@@ -6408,8 +7263,8 @@ var Loading = ({
6408
7263
  }
6409
7264
  },
6410
7265
  children: [
6411
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material41.CircularProgress, { size: size3, thickness: 4 }),
6412
- message && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material41.Typography, { variant: "body2", color: "text.secondary", children: message })
7266
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_material45.CircularProgress, { size: size3, thickness: 4 }),
7267
+ message && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_material45.Typography, { variant: "body2", color: "text.secondary", children: message })
6413
7268
  ]
6414
7269
  }
6415
7270
  );
@@ -6417,15 +7272,15 @@ var Loading = ({
6417
7272
  };
6418
7273
 
6419
7274
  // src/components/feedback/AppLoading.tsx
6420
- var import_material42 = require("@mui/material");
6421
- var import_jsx_runtime60 = require("react/jsx-runtime");
7275
+ var import_material46 = require("@mui/material");
7276
+ var import_jsx_runtime65 = require("react/jsx-runtime");
6422
7277
  var AppLoading = ({
6423
7278
  message = "Loading...",
6424
7279
  logo = "/icons/logo.png",
6425
7280
  sx = {}
6426
7281
  }) => {
6427
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
6428
- import_material42.Box,
7282
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
7283
+ import_material46.Box,
6429
7284
  {
6430
7285
  sx: {
6431
7286
  display: "flex",
@@ -6443,8 +7298,8 @@ var AppLoading = ({
6443
7298
  ...sx
6444
7299
  },
6445
7300
  children: [
6446
- logo && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
6447
- import_material42.Box,
7301
+ logo && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
7302
+ import_material46.Box,
6448
7303
  {
6449
7304
  component: "img",
6450
7305
  src: logo,
@@ -6456,31 +7311,31 @@ var AppLoading = ({
6456
7311
  }
6457
7312
  }
6458
7313
  ),
6459
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material42.CircularProgress, { size: 40, thickness: 4, sx: { mb: 2 } }),
6460
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material42.Typography, { variant: "body1", color: "text.secondary", children: message })
7314
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_material46.CircularProgress, { size: 40, thickness: 4, sx: { mb: 2 } }),
7315
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_material46.Typography, { variant: "body1", color: "text.secondary", children: message })
6461
7316
  ]
6462
7317
  }
6463
7318
  );
6464
7319
  };
6465
7320
 
6466
7321
  // src/components/feedback/CircularProgress.tsx
6467
- var import_material43 = require("@mui/material");
6468
- var import_jsx_runtime61 = require("react/jsx-runtime");
7322
+ var import_material47 = require("@mui/material");
7323
+ var import_jsx_runtime66 = require("react/jsx-runtime");
6469
7324
  var CircularProgress6 = ({
6470
7325
  size: size3 = 40,
6471
7326
  thickness = 4,
6472
7327
  ...props
6473
7328
  }) => {
6474
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_material43.CircularProgress, { size: size3, thickness, ...props });
7329
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_material47.CircularProgress, { size: size3, thickness, ...props });
6475
7330
  };
6476
7331
 
6477
7332
  // src/components/icons/ActivityAppIcon.tsx
6478
7333
  var import_react16 = require("react");
6479
- var import_material44 = require("@mui/material");
6480
- var import_jsx_runtime62 = require("react/jsx-runtime");
6481
- var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_material44.SvgIcon, { ...props, viewBox: "0 0 36 36", children: [
6482
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("rect", { fill: "none", stroke: "currentColor", width: 34, height: 34, x: 1, y: 1, strokeWidth: 1.5, rx: 6.8 }),
6483
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
7334
+ var import_material48 = require("@mui/material");
7335
+ var import_jsx_runtime67 = require("react/jsx-runtime");
7336
+ var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_material48.SvgIcon, { ...props, viewBox: "0 0 36 36", children: [
7337
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("rect", { fill: "none", stroke: "currentColor", width: 34, height: 34, x: 1, y: 1, strokeWidth: 1.5, rx: 6.8 }),
7338
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6484
7339
  "rect",
6485
7340
  {
6486
7341
  fill: "none",
@@ -6493,7 +7348,7 @@ var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
6493
7348
  rx: 1.7
6494
7349
  }
6495
7350
  ),
6496
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
7351
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6497
7352
  "rect",
6498
7353
  {
6499
7354
  fill: "none",
@@ -6506,7 +7361,7 @@ var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
6506
7361
  rx: 1.7
6507
7362
  }
6508
7363
  ),
6509
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
7364
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6510
7365
  "rect",
6511
7366
  {
6512
7367
  fill: "none",
@@ -6522,10 +7377,10 @@ var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
6522
7377
  ] }));
6523
7378
 
6524
7379
  // src/components/icons/ArrowLeft.tsx
6525
- var import_material45 = require("@mui/material");
6526
- var import_jsx_runtime63 = require("react/jsx-runtime");
7380
+ var import_material49 = require("@mui/material");
7381
+ var import_jsx_runtime68 = require("react/jsx-runtime");
6527
7382
  var LeftArrowIcon = (props) => {
6528
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_material45.SvgIcon, { ...props, width: "24", height: "24", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("g", { id: " Arrow Left", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
7383
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_material49.SvgIcon, { ...props, width: "24", height: "24", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("g", { id: " Arrow Left", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6529
7384
  "path",
6530
7385
  {
6531
7386
  id: "Vector (Stroke)",
@@ -6538,10 +7393,10 @@ var LeftArrowIcon = (props) => {
6538
7393
  };
6539
7394
 
6540
7395
  // src/components/icons/ArrowRight.tsx
6541
- var import_material46 = require("@mui/material");
6542
- var import_jsx_runtime64 = require("react/jsx-runtime");
7396
+ var import_material50 = require("@mui/material");
7397
+ var import_jsx_runtime69 = require("react/jsx-runtime");
6543
7398
  var RightArrowIcon = (props) => {
6544
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_material46.SvgIcon, { ...props, width: "25", height: "24", viewBox: "0 0 25 24", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
7399
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_material50.SvgIcon, { ...props, width: "25", height: "24", viewBox: "0 0 25 24", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6545
7400
  "path",
6546
7401
  {
6547
7402
  fillRule: "evenodd",
@@ -6553,11 +7408,11 @@ var RightArrowIcon = (props) => {
6553
7408
  };
6554
7409
 
6555
7410
  // src/components/icons/AvatarIcon.tsx
6556
- var import_material47 = require("@mui/material");
6557
- var import_jsx_runtime65 = require("react/jsx-runtime");
7411
+ var import_material51 = require("@mui/material");
7412
+ var import_jsx_runtime70 = require("react/jsx-runtime");
6558
7413
  var AvatarIcon = (props) => {
6559
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_material47.SvgIcon, { ...props, viewBox: "0 0 16 16", children: [
6560
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
7414
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(import_material51.SvgIcon, { ...props, viewBox: "0 0 16 16", children: [
7415
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6561
7416
  "path",
6562
7417
  {
6563
7418
  fillRule: "evenodd",
@@ -6566,7 +7421,7 @@ var AvatarIcon = (props) => {
6566
7421
  fill: "#1D1B20"
6567
7422
  }
6568
7423
  ),
6569
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
7424
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6570
7425
  "path",
6571
7426
  {
6572
7427
  fillRule: "evenodd",
@@ -6580,10 +7435,10 @@ var AvatarIcon = (props) => {
6580
7435
 
6581
7436
  // src/components/icons/BarTrackingIcon.tsx
6582
7437
  var import_react17 = require("react");
6583
- var import_material48 = require("@mui/material");
6584
- var import_jsx_runtime66 = require("react/jsx-runtime");
6585
- var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_material48.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
6586
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
7438
+ var import_material52 = require("@mui/material");
7439
+ var import_jsx_runtime71 = require("react/jsx-runtime");
7440
+ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_material52.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
7441
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6587
7442
  "rect",
6588
7443
  {
6589
7444
  x: "7.19922",
@@ -6596,7 +7451,7 @@ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, im
6596
7451
  fill: "none"
6597
7452
  }
6598
7453
  ),
6599
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
7454
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6600
7455
  "rect",
6601
7456
  {
6602
7457
  x: "21.0371",
@@ -6609,7 +7464,7 @@ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, im
6609
7464
  strokeWidth: "2"
6610
7465
  }
6611
7466
  ),
6612
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
7467
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6613
7468
  "rect",
6614
7469
  {
6615
7470
  x: "40.4746",
@@ -6622,7 +7477,7 @@ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, im
6622
7477
  strokeWidth: "2"
6623
7478
  }
6624
7479
  ),
6625
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
7480
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6626
7481
  "rect",
6627
7482
  {
6628
7483
  x: "59.8828",
@@ -6639,9 +7494,9 @@ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, im
6639
7494
 
6640
7495
  // src/components/icons/ClockIcon.tsx
6641
7496
  var import_react18 = require("react");
6642
- var import_material49 = require("@mui/material");
6643
- var import_jsx_runtime67 = require("react/jsx-runtime");
6644
- var ClockIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_material49.SvgIcon, { ...props, viewBox: "0 0 22 22", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
7497
+ var import_material53 = require("@mui/material");
7498
+ var import_jsx_runtime72 = require("react/jsx-runtime");
7499
+ var ClockIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_material53.SvgIcon, { ...props, viewBox: "0 0 22 22", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6645
7500
  "path",
6646
7501
  {
6647
7502
  fill: "currentColor",
@@ -6653,10 +7508,10 @@ var ClockIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, import_j
6653
7508
 
6654
7509
  // src/components/icons/CloudFlashIcon.tsx
6655
7510
  var import_react19 = require("react");
6656
- var import_material50 = require("@mui/material");
6657
- var import_jsx_runtime68 = require("react/jsx-runtime");
6658
- var CloudFlashIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_material50.SvgIcon, { ...props, fill: "none", viewBox: "0 0 96 97", children: [
6659
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7511
+ var import_material54 = require("@mui/material");
7512
+ var import_jsx_runtime73 = require("react/jsx-runtime");
7513
+ var CloudFlashIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_material54.SvgIcon, { ...props, fill: "none", viewBox: "0 0 96 97", children: [
7514
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6660
7515
  "path",
6661
7516
  {
6662
7517
  d: "M18.8029 43.3396V43.2933H19.8029C20.3752 43.2933 20.9384 43.328 21.4908 43.3937C21.9111 39.4438 22.9817 34.2181 25.6601 29.8138C28.6259 24.937 33.5595 21.0898 41.5689 21.0898C46.9417 21.0898 50.8839 22.9055 53.7292 25.6773C56.5498 28.4249 58.2303 32.0495 59.2307 35.5901C60.1768 38.9386 60.5315 42.2718 60.6446 44.8476C60.891 44.4671 61.1651 44.0792 61.4696 43.691C63.7235 40.8178 67.6089 37.9824 74.0317 37.9824C77.222 37.9824 79.8196 38.6871 81.9219 39.7574L81.9232 39.7581C86.8327 42.2671 89.793 47.4136 89.793 52.8846V54.7368C89.793 65.644 80.9404 74.4889 70.0269 74.4889H18.865C11.867 74.4889 6.19295 68.8202 6.19295 61.8256V57.184C6.19295 49.9845 11.6911 43.8799 18.8029 43.3396Z",
@@ -6665,7 +7520,7 @@ var CloudFlashIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, imp
6665
7520
  strokeWidth: "2"
6666
7521
  }
6667
7522
  ),
6668
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7523
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6669
7524
  "path",
6670
7525
  {
6671
7526
  d: "M79.1804 45.7001C79.1804 45.7001 60.7908 47.259 60.7908 10.0898C60.7908 10.0898 60.9856 45.7768 43.1934 45.7768C43.1934 45.7768 61.1933 48.1151 61.1933 67.6899C61.1933 67.6899 61.1933 45.7001 79.1934 45.7001H79.1804Z",
@@ -6678,10 +7533,10 @@ var CloudFlashIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, imp
6678
7533
 
6679
7534
  // src/components/icons/DecentralizedServerIcon.tsx
6680
7535
  var import_react20 = require("react");
6681
- var import_material51 = require("@mui/material");
6682
- var import_jsx_runtime69 = require("react/jsx-runtime");
6683
- var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_material51.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
6684
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7536
+ var import_material55 = require("@mui/material");
7537
+ var import_jsx_runtime74 = require("react/jsx-runtime");
7538
+ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_material55.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
7539
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6685
7540
  "path",
6686
7541
  {
6687
7542
  d: "M14.5706 15.0858L48.016 8.29688L81.3694 15.0858L88.2242 48.3742L81.3694 81.6556L48.016 88.4445L14.5706 81.6556L7.80078 48.3742L14.5706 15.0858Z",
@@ -6692,7 +7547,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6692
7547
  strokeLinejoin: "round"
6693
7548
  }
6694
7549
  ),
6695
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7550
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6696
7551
  "path",
6697
7552
  {
6698
7553
  d: "M48.0118 11.2609C49.6622 11.2609 51.0001 9.92755 51.0001 8.28279C51.0001 6.63803 49.6622 5.30469 48.0118 5.30469C46.3614 5.30469 45.0234 6.63803 45.0234 8.28279C45.0234 9.92755 46.3614 11.2609 48.0118 11.2609Z",
@@ -6703,7 +7558,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6703
7558
  strokeLinejoin: "round"
6704
7559
  }
6705
7560
  ),
6706
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7561
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6707
7562
  "path",
6708
7563
  {
6709
7564
  d: "M48.0118 91.4132C49.6622 91.4132 51.0001 90.0799 51.0001 88.4351C51.0001 86.7904 49.6622 85.457 48.0118 85.457C46.3614 85.457 45.0234 86.7904 45.0234 88.4351C45.0234 90.0799 46.3614 91.4132 48.0118 91.4132Z",
@@ -6714,7 +7569,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6714
7569
  strokeLinejoin: "round"
6715
7570
  }
6716
7571
  ),
6717
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7572
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6718
7573
  "path",
6719
7574
  {
6720
7575
  d: "M7.79304 51.339C9.44346 51.339 10.7814 50.0057 10.7814 48.3609C10.7814 46.7162 9.44346 45.3828 7.79304 45.3828C6.14262 45.3828 4.80469 46.7162 4.80469 48.3609C4.80469 50.0057 6.14262 51.339 7.79304 51.339Z",
@@ -6725,7 +7580,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6725
7580
  strokeLinejoin: "round"
6726
7581
  }
6727
7582
  ),
6728
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7583
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6729
7584
  "path",
6730
7585
  {
6731
7586
  d: "M88.2247 51.339C89.8751 51.339 91.213 50.0057 91.213 48.3609C91.213 46.7162 89.8751 45.3828 88.2247 45.3828C86.5743 45.3828 85.2363 46.7162 85.2363 48.3609C85.2363 50.0057 86.5743 51.339 88.2247 51.339Z",
@@ -6736,7 +7591,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6736
7591
  strokeLinejoin: "round"
6737
7592
  }
6738
7593
  ),
6739
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7594
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6740
7595
  "path",
6741
7596
  {
6742
7597
  d: "M81.3477 18.0539C82.9982 18.0539 84.3361 16.7205 84.3361 15.0758C84.3361 13.431 82.9982 12.0977 81.3477 12.0977C79.6973 12.0977 78.3594 13.431 78.3594 15.0758C78.3594 16.7205 79.6973 18.0539 81.3477 18.0539Z",
@@ -6747,7 +7602,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6747
7602
  strokeLinejoin: "round"
6748
7603
  }
6749
7604
  ),
6750
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7605
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6751
7606
  "path",
6752
7607
  {
6753
7608
  d: "M14.5508 84.6203C16.2013 84.6203 17.5392 83.2869 17.5392 81.6422C17.5392 79.9974 16.2013 78.6641 14.5508 78.6641C12.9004 78.6641 11.5625 79.9974 11.5625 81.6422C11.5625 83.2869 12.9004 84.6203 14.5508 84.6203Z",
@@ -6758,7 +7613,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6758
7613
  strokeLinejoin: "round"
6759
7614
  }
6760
7615
  ),
6761
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7616
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6762
7617
  "path",
6763
7618
  {
6764
7619
  d: "M81.3477 84.6203C82.9982 84.6203 84.3361 83.2869 84.3361 81.6422C84.3361 79.9974 82.9982 78.6641 81.3477 78.6641C79.6973 78.6641 78.3594 79.9974 78.3594 81.6422C78.3594 83.2869 79.6973 84.6203 81.3477 84.6203Z",
@@ -6769,7 +7624,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6769
7624
  strokeLinejoin: "round"
6770
7625
  }
6771
7626
  ),
6772
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7627
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6773
7628
  "path",
6774
7629
  {
6775
7630
  d: "M14.5508 18.0539C16.2013 18.0539 17.5392 16.7205 17.5392 15.0758C17.5392 13.431 16.2013 12.0977 14.5508 12.0977C12.9004 12.0977 11.5625 13.431 11.5625 15.0758C11.5625 16.7205 12.9004 18.0539 14.5508 18.0539Z",
@@ -6780,7 +7635,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6780
7635
  strokeLinejoin: "round"
6781
7636
  }
6782
7637
  ),
6783
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7638
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6784
7639
  "rect",
6785
7640
  {
6786
7641
  x: "22.623",
@@ -6793,7 +7648,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6793
7648
  strokeWidth: "2"
6794
7649
  }
6795
7650
  ),
6796
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7651
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6797
7652
  "rect",
6798
7653
  {
6799
7654
  x: "22.623",
@@ -6806,7 +7661,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6806
7661
  strokeWidth: "2"
6807
7662
  }
6808
7663
  ),
6809
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7664
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6810
7665
  "rect",
6811
7666
  {
6812
7667
  x: "22.623",
@@ -6819,7 +7674,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6819
7674
  strokeWidth: "2"
6820
7675
  }
6821
7676
  ),
6822
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7677
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6823
7678
  "path",
6824
7679
  {
6825
7680
  d: "M29.612 37.1542C31.2803 37.1542 32.634 35.8026 32.634 34.1337C32.634 32.4649 31.2803 31.1133 29.612 31.1133C27.9437 31.1133 26.5901 32.4649 26.5901 34.1337C26.5901 35.8026 27.9437 37.1542 29.612 37.1542Z",
@@ -6829,7 +7684,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6829
7684
  strokeMiterlimit: "10"
6830
7685
  }
6831
7686
  ),
6832
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7687
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6833
7688
  "path",
6834
7689
  {
6835
7690
  d: "M40.3464 37.1542C42.0147 37.1542 43.3684 35.8026 43.3684 34.1337C43.3684 32.4649 42.0147 31.1133 40.3464 31.1133C38.6782 31.1133 37.3245 32.4649 37.3245 34.1337C37.3245 35.8026 38.6782 37.1542 40.3464 37.1542Z",
@@ -6839,7 +7694,7 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6839
7694
  strokeMiterlimit: "10"
6840
7695
  }
6841
7696
  ),
6842
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
7697
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
6843
7698
  "path",
6844
7699
  {
6845
7700
  d: "M51.0808 37.1542C52.7491 37.1542 54.1028 35.8026 54.1028 34.1337C54.1028 32.4649 52.7491 31.1133 51.0808 31.1133C49.4125 31.1133 48.0588 32.4649 48.0588 34.1337C48.0588 35.8026 49.4125 37.1542 51.0808 37.1542Z",
@@ -6853,9 +7708,9 @@ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ *
6853
7708
 
6854
7709
  // src/components/icons/DiscordIcon.tsx
6855
7710
  var import_react21 = require("react");
6856
- var import_material52 = require("@mui/material");
6857
- var import_jsx_runtime70 = require("react/jsx-runtime");
6858
- var DiscordIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_material52.SvgIcon, { ...props, viewBox: "0 0 15 12", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
7711
+ var import_material56 = require("@mui/material");
7712
+ var import_jsx_runtime75 = require("react/jsx-runtime");
7713
+ var DiscordIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_material56.SvgIcon, { ...props, viewBox: "0 0 15 12", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
6859
7714
  "path",
6860
7715
  {
6861
7716
  fill: "currentColor",
@@ -6865,17 +7720,17 @@ var DiscordIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, import
6865
7720
 
6866
7721
  // src/components/icons/DownloadIcon.tsx
6867
7722
  var import_react22 = require("react");
6868
- var import_material53 = require("@mui/material");
6869
- var import_jsx_runtime71 = require("react/jsx-runtime");
6870
- var DownloadIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_material53.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: [
6871
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
7723
+ var import_material57 = require("@mui/material");
7724
+ var import_jsx_runtime76 = require("react/jsx-runtime");
7725
+ var DownloadIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_material57.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: [
7726
+ /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
6872
7727
  "path",
6873
7728
  {
6874
7729
  d: "M8.86902 11.0041C8.77429 11.1077 8.64038 11.1667 8.5 11.1667C8.35962 11.1667 8.22571 11.1077 8.13099 11.0041L5.46432 8.08738C5.27799 7.88358 5.29215 7.56732 5.49595 7.38099C5.69975 7.19465 6.01602 7.20881 6.20235 7.41262L8 9.3788V2C8 1.72386 8.22386 1.5 8.5 1.5C8.77614 1.5 9 1.72386 9 2V9.3788L10.7977 7.41262C10.984 7.20881 11.3003 7.19465 11.5041 7.38099C11.7079 7.56732 11.722 7.88358 11.5357 8.08738L8.86902 11.0041Z",
6875
7730
  fill: "currentColor"
6876
7731
  }
6877
7732
  ),
6878
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
7733
+ /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
6879
7734
  "path",
6880
7735
  {
6881
7736
  d: "M3 10C3 9.72386 2.77614 9.5 2.5 9.5C2.22386 9.5 2 9.72386 2 10V10.0366C1.99999 10.9483 1.99998 11.6832 2.07768 12.2612C2.15836 12.8612 2.33096 13.3665 2.73223 13.7678C3.13351 14.169 3.63876 14.3416 4.23883 14.4223C4.81681 14.5 5.55169 14.5 6.46342 14.5H10.5366C11.4483 14.5 12.1832 14.5 12.7612 14.4223C13.3612 14.3416 13.8665 14.169 14.2678 13.7678C14.669 13.3665 14.8416 12.8612 14.9223 12.2612C15 11.6832 15 10.9483 15 10.0366V10C15 9.72386 14.7761 9.5 14.5 9.5C14.2239 9.5 14 9.72386 14 10C14 10.9569 13.9989 11.6244 13.9312 12.1279C13.8655 12.6171 13.7452 12.8762 13.5607 13.0607C13.3762 13.2452 13.1171 13.3655 12.6279 13.4312C12.1244 13.4989 11.4569 13.5 10.5 13.5H6.5C5.54306 13.5 4.87565 13.4989 4.37208 13.4312C3.8829 13.3655 3.62385 13.2452 3.43934 13.0607C3.25483 12.8762 3.13453 12.6171 3.06877 12.1279C3.00106 11.6244 3 10.9569 3 10Z",
@@ -6886,12 +7741,12 @@ var DownloadIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, impor
6886
7741
 
6887
7742
  // src/components/icons/FilledFolderIcon.tsx
6888
7743
  var import_react23 = require("react");
6889
- var import_material54 = require("@mui/material");
6890
- var import_jsx_runtime72 = require("react/jsx-runtime");
6891
- var FilledFolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(import_material54.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
6892
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#FCF8EC" }),
6893
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E1B43E" }),
6894
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
7744
+ var import_material58 = require("@mui/material");
7745
+ var import_jsx_runtime77 = require("react/jsx-runtime");
7746
+ var FilledFolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(import_material58.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
7747
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#FCF8EC" }),
7748
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E1B43E" }),
7749
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
6895
7750
  "path",
6896
7751
  {
6897
7752
  fillRule: "evenodd",
@@ -6904,12 +7759,12 @@ var FilledFolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, i
6904
7759
 
6905
7760
  // src/components/icons/FolderIcon.tsx
6906
7761
  var import_react24 = require("react");
6907
- var import_material55 = require("@mui/material");
6908
- var import_jsx_runtime73 = require("react/jsx-runtime");
6909
- var FolderIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_material55.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
6910
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#F5F7FA" }),
6911
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E6E6E6" }),
6912
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
7762
+ var import_material59 = require("@mui/material");
7763
+ var import_jsx_runtime78 = require("react/jsx-runtime");
7764
+ var FolderIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(import_material59.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
7765
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#F5F7FA" }),
7766
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E6E6E6" }),
7767
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
6913
7768
  "path",
6914
7769
  {
6915
7770
  fillRule: "evenodd",
@@ -6924,17 +7779,17 @@ var FolderIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, import_
6924
7779
 
6925
7780
  // src/components/icons/GithubLogoIcon.tsx
6926
7781
  var import_react25 = require("react");
6927
- var import_material56 = require("@mui/material");
6928
- var import_jsx_runtime74 = require("react/jsx-runtime");
6929
- var GithubLogoIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_material56.SvgIcon, { ...props, viewBox: "0 0 17 16", sx: { fill: "none" }, children: [
6930
- /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
7782
+ var import_material60 = require("@mui/material");
7783
+ var import_jsx_runtime79 = require("react/jsx-runtime");
7784
+ var GithubLogoIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material60.SvgIcon, { ...props, viewBox: "0 0 17 16", sx: { fill: "none" }, children: [
7785
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
6931
7786
  "path",
6932
7787
  {
6933
7788
  d: "M8.79754 0C4.268 0 0.595032 3.67233 0.595032 8.20251C0.595032 11.8267 2.9453 14.9013 6.20443 15.9859C6.61435 16.0618 6.76488 15.808 6.76488 15.5913C6.76488 15.3957 6.75723 14.7495 6.75375 14.0642C4.47174 14.5603 3.99022 13.0964 3.99022 13.0964C3.61711 12.1483 3.07949 11.8962 3.07949 11.8962C2.33531 11.3871 3.13559 11.3975 3.13559 11.3975C3.95928 11.4554 4.393 12.2428 4.393 12.2428C5.12457 13.4968 6.31186 13.1343 6.77993 12.9247C6.85353 12.3945 7.06614 12.0327 7.30069 11.8279C5.47884 11.6204 3.56358 10.9171 3.56358 7.77413C3.56358 6.87865 3.88401 6.14688 4.40876 5.57247C4.32359 5.36584 4.04285 4.5316 4.48821 3.40175C4.48821 3.40175 5.177 3.18129 6.74449 4.24256C7.39873 4.06076 8.10045 3.96967 8.79754 3.96658C9.49463 3.96967 10.1969 4.06076 10.8524 4.24256C12.418 3.18129 13.1059 3.40175 13.1059 3.40175C13.5523 4.5316 13.2714 5.36584 13.1863 5.57247C13.7122 6.14688 14.0304 6.87858 14.0304 7.77413C14.0304 10.9245 12.1116 11.6183 10.2851 11.8213C10.5793 12.0759 10.8414 12.5751 10.8414 13.3403C10.8414 14.4378 10.8319 15.3211 10.8319 15.5913C10.8319 15.8096 10.9795 16.0654 11.3954 15.9848C14.6527 14.899 17 11.8254 17 8.20251C17 3.67233 13.3275 0 8.79754 0Z",
6934
7789
  fill: "white"
6935
7790
  }
6936
7791
  ),
6937
- /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
7792
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
6938
7793
  "path",
6939
7794
  {
6940
7795
  d: "M3.66696 11.6845C3.64895 11.7252 3.58474 11.7374 3.5264 11.7095C3.46689 11.6828 3.43344 11.6272 3.45274 11.5863C3.47043 11.5443 3.53463 11.5326 3.59401 11.5608C3.65364 11.5875 3.68761 11.6436 3.66696 11.6845ZM4.07044 12.0445C4.03133 12.0808 3.95484 12.0639 3.90292 12.0066C3.84927 11.9494 3.83924 11.873 3.87893 11.8361C3.91926 11.7999 3.99344 11.8168 4.04722 11.8741C4.10087 11.9319 4.11129 12.0079 4.07038 12.0446M4.34726 12.5051C4.29695 12.54 4.21474 12.5073 4.16398 12.4343C4.11374 12.3615 4.11374 12.274 4.16507 12.2389C4.21602 12.2038 4.29695 12.2354 4.34842 12.3077C4.39859 12.3819 4.39859 12.4694 4.34719 12.5052M4.81533 13.0386C4.77036 13.0881 4.67464 13.0749 4.60452 13.0072C4.53285 12.9411 4.51285 12.8472 4.55794 12.7976C4.60342 12.748 4.69973 12.7619 4.77036 12.829C4.84158 12.895 4.86332 12.9896 4.81539 13.0386M5.4203 13.2187C5.40055 13.2829 5.3083 13.3121 5.2154 13.2849C5.12264 13.2568 5.06191 13.1815 5.08063 13.1166C5.09993 13.0519 5.19257 13.0215 5.28617 13.0507C5.37881 13.0787 5.43966 13.1534 5.42036 13.2187M6.1089 13.2951C6.11121 13.3628 6.03241 13.4189 5.93488 13.4201C5.83678 13.4222 5.75746 13.3675 5.75643 13.3009C5.75643 13.2326 5.83343 13.177 5.93147 13.1754C6.029 13.1735 6.1089 13.2279 6.1089 13.2951ZM6.78527 13.2692C6.79698 13.3352 6.72918 13.403 6.63236 13.421C6.53715 13.4384 6.44901 13.3976 6.43686 13.3322C6.42502 13.2645 6.49411 13.1968 6.58913 13.1792C6.68614 13.1624 6.77292 13.2021 6.78527 13.2692Z",
@@ -6945,9 +7800,9 @@ var GithubLogoIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, imp
6945
7800
 
6946
7801
  // src/components/icons/ShareIcon.tsx
6947
7802
  var import_react26 = require("react");
6948
- var import_material57 = require("@mui/material");
6949
- var import_jsx_runtime75 = require("react/jsx-runtime");
6950
- var ShareIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_material57.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
7803
+ var import_material61 = require("@mui/material");
7804
+ var import_jsx_runtime80 = require("react/jsx-runtime");
7805
+ var ShareIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_material61.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
6951
7806
  "path",
6952
7807
  {
6953
7808
  fillRule: "evenodd",
@@ -6959,10 +7814,10 @@ var ShareIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, import_j
6959
7814
 
6960
7815
  // src/components/icons/StorageAppIcon.tsx
6961
7816
  var import_react27 = require("react");
6962
- var import_material58 = require("@mui/material");
6963
- var import_jsx_runtime76 = require("react/jsx-runtime");
6964
- var StorageAppIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_material58.SvgIcon, { ...props, viewBox: "0 0 38 29", fill: "none", children: [
6965
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
7817
+ var import_material62 = require("@mui/material");
7818
+ var import_jsx_runtime81 = require("react/jsx-runtime");
7819
+ var StorageAppIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(import_material62.SvgIcon, { ...props, viewBox: "0 0 38 29", fill: "none", children: [
7820
+ /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6966
7821
  "path",
6967
7822
  {
6968
7823
  d: "M6.25415 13.3371V13.2515H7.25415C7.31809 13.2515 7.38176 13.2524 7.44516 13.2543C7.66366 11.6446 8.14354 9.64623 9.19625 7.91521C10.5234 5.73296 12.756 4 16.3233 4C18.7076 4 20.4981 4.81149 21.7972 6.07693C23.0714 7.31823 23.8108 8.93436 24.2437 10.4665C24.4895 11.3363 24.6426 12.2007 24.7362 12.9909C25.8141 11.9297 27.4506 11.0385 29.8495 11.0385C31.2681 11.0385 32.4415 11.3528 33.4017 11.8416L33.4031 11.8423C35.655 12.9932 37 15.3454 37 17.8312V18.6029C37 23.4701 33.0499 27.4163 28.1808 27.4163H6.86335C3.62577 27.4163 1 24.7935 1 21.5565V19.6226C1 16.5122 3.24401 13.8341 6.25415 13.3371Z",
@@ -6971,7 +7826,7 @@ var StorageAppIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, imp
6971
7826
  fill: "none"
6972
7827
  }
6973
7828
  ),
6974
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
7829
+ /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6975
7830
  "path",
6976
7831
  {
6977
7832
  d: "M31.9946 14.8376C31.9946 14.8376 24.3322 15.4871 24.3322 0C24.3322 0 24.4134 14.8696 17 14.8696C17 14.8696 24.5 15.8438 24.5 24C24.5 24 24.5 14.8376 32 14.8376H31.9946Z",
@@ -6984,9 +7839,9 @@ var StorageAppIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, imp
6984
7839
 
6985
7840
  // src/components/icons/UploadFileIcon.tsx
6986
7841
  var import_react28 = require("react");
6987
- var import_material59 = require("@mui/material");
6988
- var import_jsx_runtime77 = require("react/jsx-runtime");
6989
- var UploadFileIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_material59.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
7842
+ var import_material63 = require("@mui/material");
7843
+ var import_jsx_runtime82 = require("react/jsx-runtime");
7844
+ var UploadFileIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_material63.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
6990
7845
  "path",
6991
7846
  {
6992
7847
  fillRule: "evenodd",
@@ -7000,9 +7855,9 @@ var UploadFileIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, imp
7000
7855
 
7001
7856
  // src/components/icons/UploadFolderIcon.tsx
7002
7857
  var import_react29 = require("react");
7003
- var import_material60 = require("@mui/material");
7004
- var import_jsx_runtime78 = require("react/jsx-runtime");
7005
- var UploadFolderIcon = (0, import_react29.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_material60.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
7858
+ var import_material64 = require("@mui/material");
7859
+ var import_jsx_runtime83 = require("react/jsx-runtime");
7860
+ var UploadFolderIcon = (0, import_react29.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_material64.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
7006
7861
  "path",
7007
7862
  {
7008
7863
  fillRule: "evenodd",
@@ -7015,14 +7870,14 @@ var UploadFolderIcon = (0, import_react29.memo)((props) => /* @__PURE__ */ (0, i
7015
7870
  ) }));
7016
7871
 
7017
7872
  // src/components/utilities/Markdown/Markdown.tsx
7018
- var import_material61 = require("@mui/material");
7873
+ var import_material65 = require("@mui/material");
7019
7874
  var import_github = require("highlight.js/styles/github.css");
7020
7875
  var import_github_markdown_light = require("github-markdown-css/github-markdown-light.css");
7021
7876
  var import_react_markdown = __toESM(require("react-markdown"));
7022
7877
  var import_rehype_highlight = __toESM(require("rehype-highlight"));
7023
7878
  var import_rehype_raw = __toESM(require("rehype-raw"));
7024
- var import_jsx_runtime79 = require("react/jsx-runtime");
7025
- var Content = (0, import_material61.styled)(import_material61.Box)(({ theme: theme2 }) => ({
7879
+ var import_jsx_runtime84 = require("react/jsx-runtime");
7880
+ var Content = (0, import_material65.styled)(import_material65.Box)(({ theme: theme2 }) => ({
7026
7881
  backgroundColor: "transparent",
7027
7882
  ...theme2.typography.body1,
7028
7883
  color: theme2.palette.text.primary,
@@ -7039,11 +7894,11 @@ var Content = (0, import_material61.styled)(import_material61.Box)(({ theme: the
7039
7894
  backgroundColor: theme2.palette.background.paper
7040
7895
  }
7041
7896
  }));
7042
- var Markdown = ({ content, children }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(Content, { className: "markdown-body", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_react_markdown.default, { rehypePlugins: [import_rehype_highlight.default, import_rehype_raw.default], children: content || children }) });
7897
+ var Markdown = ({ content, children }) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(Content, { className: "markdown-body", children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_react_markdown.default, { rehypePlugins: [import_rehype_highlight.default, import_rehype_raw.default], children: content || children }) });
7043
7898
 
7044
7899
  // src/components/utilities/OnboardingProvider/OnboardingProvider.tsx
7045
7900
  var import_react30 = require("react");
7046
- var import_jsx_runtime80 = require("react/jsx-runtime");
7901
+ var import_jsx_runtime85 = require("react/jsx-runtime");
7047
7902
  var OnboardingContext = (0, import_react30.createContext)(void 0);
7048
7903
  var useOnboarding = () => {
7049
7904
  const context = (0, import_react30.useContext)(OnboardingContext);
@@ -7068,7 +7923,7 @@ var OnboardingProvider = ({ children }) => {
7068
7923
  setIsOnboardingActive(false);
7069
7924
  setTimeout(() => setIsOnboardingActive(true), 0);
7070
7925
  }, []);
7071
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
7926
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
7072
7927
  OnboardingContext.Provider,
7073
7928
  {
7074
7929
  value: {
@@ -7083,7 +7938,7 @@ var OnboardingProvider = ({ children }) => {
7083
7938
  };
7084
7939
 
7085
7940
  // src/components/utilities/Truncate/Truncate.tsx
7086
- var import_jsx_runtime81 = require("react/jsx-runtime");
7941
+ var import_jsx_runtime86 = require("react/jsx-runtime");
7087
7942
  var getDefaultEndingLength = ({ text, variant, maxLength = text.length }) => {
7088
7943
  if (variant === "hex") {
7089
7944
  return 4;
@@ -7107,30 +7962,30 @@ var Truncate = ({
7107
7962
  const truncated = text.slice(0, maxLength - endingLength);
7108
7963
  truncatedText = [truncated, ending].filter(Boolean).join("...");
7109
7964
  }
7110
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { ...props, "data-full": text, children: truncatedText });
7965
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("span", { ...props, "data-full": text, children: truncatedText });
7111
7966
  };
7112
7967
 
7113
7968
  // src/components/utilities/BytesSize/BytesSize.tsx
7114
7969
  var import_byte_size = __toESM(require("byte-size"));
7115
- var import_jsx_runtime82 = require("react/jsx-runtime");
7970
+ var import_jsx_runtime87 = require("react/jsx-runtime");
7116
7971
  var BytesSize = ({ bytes }) => {
7117
- return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_jsx_runtime82.Fragment, { children: (0, import_byte_size.default)(bytes).toString() });
7972
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_jsx_runtime87.Fragment, { children: (0, import_byte_size.default)(bytes).toString() });
7118
7973
  };
7119
7974
 
7120
7975
  // src/components/utilities/QRCode/QRCode.tsx
7121
7976
  var import_react31 = require("react");
7122
7977
  var import_react_qr_code = __toESM(require("react-qr-code"));
7123
- var import_jsx_runtime83 = require("react/jsx-runtime");
7124
- var QRCode = (0, import_react31.forwardRef)(({ size: size3 = 168, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_react_qr_code.default, { ref, size: size3, ...props }));
7978
+ var import_jsx_runtime88 = require("react/jsx-runtime");
7979
+ var QRCode = (0, import_react31.forwardRef)(({ size: size3 = 168, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react_qr_code.default, { ref, size: size3, ...props }));
7125
7980
  QRCode.displayName = "QRCode";
7126
7981
 
7127
7982
  // src/components/charts/ChartWidget/ChartWidget.tsx
7128
- var import_material62 = require("@mui/material");
7983
+ var import_material66 = require("@mui/material");
7129
7984
  var import_x_charts = require("@mui/x-charts");
7130
7985
  var import_byte_size2 = __toESM(require("byte-size"));
7131
7986
  var import_date_fns = require("date-fns");
7132
- var import_jsx_runtime84 = require("react/jsx-runtime");
7133
- var Chart = (0, import_material62.styled)(import_material62.Box)(() => ({
7987
+ var import_jsx_runtime89 = require("react/jsx-runtime");
7988
+ var Chart = (0, import_material66.styled)(import_material66.Box)(() => ({
7134
7989
  height: 200
7135
7990
  }));
7136
7991
  var ChartWidget = ({
@@ -7139,11 +7994,11 @@ var ChartWidget = ({
7139
7994
  history,
7140
7995
  formatValue = (value2) => (0, import_byte_size2.default)(value2 || 0).toString()
7141
7996
  }) => {
7142
- const theme2 = (0, import_material62.useTheme)();
7143
- return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material62.Stack, { spacing: 1, children: [
7144
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material62.Typography, { variant: "caption", color: "text.secondary", children: title }),
7145
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material62.Typography, { fontWeight: "bold", children: value }),
7146
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(Chart, { children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
7997
+ const theme2 = (0, import_material66.useTheme)();
7998
+ return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_material66.Stack, { spacing: 1, children: [
7999
+ /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_material66.Typography, { variant: "caption", color: "text.secondary", children: title }),
8000
+ /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_material66.Typography, { fontWeight: "bold", children: value }),
8001
+ /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Chart, { children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
7147
8002
  import_x_charts.LineChart,
7148
8003
  {
7149
8004
  dataset: history || [],
@@ -7201,11 +8056,11 @@ var ChartWidget = ({
7201
8056
  var import_date_fns2 = require("date-fns");
7202
8057
  var import_x_charts2 = require("@mui/x-charts");
7203
8058
  var import_hooks = require("@mui/x-charts/hooks");
7204
- var import_material64 = require("@mui/material");
8059
+ var import_material68 = require("@mui/material");
7205
8060
 
7206
8061
  // src/components/charts/MetricsChart/PeriodSelect.tsx
7207
- var import_material63 = require("@mui/material");
7208
- var import_jsx_runtime85 = require("react/jsx-runtime");
8062
+ var import_material67 = require("@mui/material");
8063
+ var import_jsx_runtime90 = require("react/jsx-runtime");
7209
8064
  var options = [
7210
8065
  /**
7211
8066
  * TODO: Enable the options below when the backend supports them
@@ -7215,21 +8070,21 @@ var options = [
7215
8070
  { value: "week", label: "1 week" },
7216
8071
  { value: "month", label: "1 month" }
7217
8072
  ];
7218
- var PeriodSelect = ({ value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
7219
- import_material63.TextField,
8073
+ var PeriodSelect = ({ value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
8074
+ import_material67.TextField,
7220
8075
  {
7221
8076
  select: true,
7222
8077
  size: "small",
7223
8078
  value,
7224
8079
  defaultValue: options[0].value,
7225
8080
  onChange: (e) => onChange?.(e.target.value),
7226
- children: options.map(({ value: value2, label }) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_material63.MenuItem, { value: value2, children: label }, value2))
8081
+ children: options.map(({ value: value2, label }) => /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_material67.MenuItem, { value: value2, children: label }, value2))
7227
8082
  }
7228
8083
  );
7229
8084
 
7230
8085
  // src/components/charts/MetricsChart/MetricsChart.tsx
7231
8086
  var import_react32 = require("react");
7232
- var import_jsx_runtime86 = require("react/jsx-runtime");
8087
+ var import_jsx_runtime91 = require("react/jsx-runtime");
7233
8088
  var mapPeriodToFromDate = (period = "month") => {
7234
8089
  const date = /* @__PURE__ */ new Date();
7235
8090
  if (period === "hour") {
@@ -7243,14 +8098,14 @@ var mapPeriodToFromDate = (period = "month") => {
7243
8098
  }
7244
8099
  return (0, import_date_fns2.startOfDay)((0, import_date_fns2.subMonths)(date, 1));
7245
8100
  };
7246
- var Chart2 = (0, import_material64.styled)(import_x_charts2.LineChart)({
8101
+ var Chart2 = (0, import_material68.styled)(import_x_charts2.LineChart)({
7247
8102
  height: 320,
7248
8103
  marginBottom: 16
7249
8104
  });
7250
- var NoDataRect = (0, import_material64.styled)("rect")({
8105
+ var NoDataRect = (0, import_material68.styled)("rect")({
7251
8106
  fill: "#F5F6FF"
7252
8107
  });
7253
- var LoadingText = (0, import_material64.styled)("text")(({ theme: theme2 }) => ({
8108
+ var LoadingText = (0, import_material68.styled)("text")(({ theme: theme2 }) => ({
7254
8109
  stroke: "none",
7255
8110
  fill: theme2.palette.text.primary,
7256
8111
  shapeRendering: "crispEdges",
@@ -7258,7 +8113,7 @@ var LoadingText = (0, import_material64.styled)("text")(({ theme: theme2 }) => (
7258
8113
  dominantBaseline: "middle"
7259
8114
  }));
7260
8115
  var MetricsChart = ({ history = [] }) => {
7261
- const theme2 = (0, import_material64.useTheme)();
8116
+ const theme2 = (0, import_material68.useTheme)();
7262
8117
  const [period, setPeriod] = (0, import_react32.useState)("week");
7263
8118
  const periodFrom = (0, import_react32.useMemo)(() => mapPeriodToFromDate(period), [period]);
7264
8119
  const periodHistory = (0, import_react32.useMemo)(
@@ -7289,15 +8144,15 @@ var MetricsChart = ({ history = [] }) => {
7289
8144
  const backgroundHeight = textHeight + padding.top + padding.bottom;
7290
8145
  const rectX = left + (width - backgroundWidth) / 2;
7291
8146
  const rectY = top + (height - backgroundHeight) / 2;
7292
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)("g", { children: [
7293
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(NoDataRect, { x: rectX, y: rectY, width: backgroundWidth, height: backgroundHeight }),
7294
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(LoadingText, { style: { ...theme2.typography.subtitle1 }, x: left + width / 2, y: top + height / 2, children: text })
8147
+ return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("g", { children: [
8148
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(NoDataRect, { x: rectX, y: rectY, width: backgroundWidth, height: backgroundHeight }),
8149
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(LoadingText, { style: { ...theme2.typography.subtitle1 }, x: left + width / 2, y: top + height / 2, children: text })
7295
8150
  ] });
7296
8151
  };
7297
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Card, { children: [
7298
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.CardHeader, { title: "GET / PUT Requests", action: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(PeriodSelect, { value: period, onChange: setPeriod }) }),
7299
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.CardMedia, { children: [
7300
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
8152
+ return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Card, { children: [
8153
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.CardHeader, { title: "GET / PUT Requests", action: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(PeriodSelect, { value: period, onChange: setPeriod }) }),
8154
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.CardMedia, { children: [
8155
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
7301
8156
  Chart2,
7302
8157
  {
7303
8158
  skipAnimation: true,
@@ -7358,35 +8213,35 @@ var MetricsChart = ({ history = [] }) => {
7358
8213
  ]
7359
8214
  }
7360
8215
  ),
7361
- periodHistory.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", spacing: 2, marginY: 3, justifyContent: "center", children: [
7362
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
7363
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.primary.main } }),
7364
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", children: "Get" })
8216
+ periodHistory.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", spacing: 2, marginY: 3, justifyContent: "center", children: [
8217
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
8218
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.primary.main } }),
8219
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", children: "Get" })
7365
8220
  ] }),
7366
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
7367
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.success.main } }),
7368
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", children: "Put" })
8221
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
8222
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.success.main } }),
8223
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", children: "Put" })
7369
8224
  ] })
7370
8225
  ] })
7371
8226
  ] }),
7372
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.CardMedia, { children: [
7373
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Divider, { flexItem: true }),
7374
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", spacing: 2, padding: 2, children: [
7375
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7376
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", color: "secondary", children: "GET Requests per account" }),
7377
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "h3", children: total.gets })
8227
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.CardMedia, { children: [
8228
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Divider, { flexItem: true }),
8229
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", spacing: 2, padding: 2, children: [
8230
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
8231
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", color: "secondary", children: "GET Requests per account" }),
8232
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "h3", children: total.gets })
7378
8233
  ] }),
7379
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7380
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", color: "secondary", children: "PUT Requests per account" }),
7381
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "h3", children: total.puts })
8234
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
8235
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", color: "secondary", children: "PUT Requests per account" }),
8236
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "h3", children: total.puts })
7382
8237
  ] }),
7383
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7384
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", color: "secondary", children: "Total Consumed per account" }),
7385
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(BytesSize, { bytes: total.transferredBytes }) })
8238
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
8239
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", color: "secondary", children: "Total Consumed per account" }),
8240
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(BytesSize, { bytes: total.transferredBytes }) })
7386
8241
  ] }),
7387
- /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material64.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7388
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "body2", color: "secondary", children: "Total Stored per account" }),
7389
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material64.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(BytesSize, { bytes: total.storedBytes }) })
8242
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material68.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
8243
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "body2", color: "secondary", children: "Total Stored per account" }),
8244
+ /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material68.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(BytesSize, { bytes: total.storedBytes }) })
7390
8245
  ] })
7391
8246
  ] })
7392
8247
  ] })
@@ -7395,15 +8250,15 @@ var MetricsChart = ({ history = [] }) => {
7395
8250
 
7396
8251
  // src/components/charts/TimeSeriesGraph/TimeSeriesGraph.tsx
7397
8252
  var import_react33 = require("react");
7398
- var import_material67 = require("@mui/material");
8253
+ var import_material71 = require("@mui/material");
7399
8254
  var import_x_charts3 = require("@mui/x-charts");
7400
8255
  var import_date_fns3 = require("date-fns");
7401
8256
 
7402
8257
  // src/components/charts/TimeSeriesGraph/TimeRangeSelect.tsx
7403
- var import_material65 = require("@mui/material");
7404
- var import_jsx_runtime87 = require("react/jsx-runtime");
7405
- var TimeRangeSelect = ({ options: options2, value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
7406
- import_material65.TextField,
8258
+ var import_material69 = require("@mui/material");
8259
+ var import_jsx_runtime92 = require("react/jsx-runtime");
8260
+ var TimeRangeSelect = ({ options: options2, value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
8261
+ import_material69.TextField,
7407
8262
  {
7408
8263
  select: true,
7409
8264
  size: "small",
@@ -7411,13 +8266,13 @@ var TimeRangeSelect = ({ options: options2, value, onChange }) => /* @__PURE__ *
7411
8266
  onChange: (e) => onChange?.(e.target.value),
7412
8267
  "aria-label": "Time range selector",
7413
8268
  sx: { minWidth: 120 },
7414
- children: options2.map((option) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_material65.MenuItem, { value: option.value, children: option.label }, option.value))
8269
+ children: options2.map((option) => /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(import_material69.MenuItem, { value: option.value, children: option.label }, option.value))
7415
8270
  }
7416
8271
  );
7417
8272
 
7418
8273
  // src/components/charts/TimeSeriesGraph/SummaryStats.tsx
7419
- var import_material66 = require("@mui/material");
7420
- var import_jsx_runtime88 = require("react/jsx-runtime");
8274
+ var import_material70 = require("@mui/material");
8275
+ var import_jsx_runtime93 = require("react/jsx-runtime");
7421
8276
  var formatSummaryValue = (value, unit) => {
7422
8277
  const displayValue = typeof value === "number" ? value.toLocaleString() : value;
7423
8278
  return unit ? `${displayValue} ${unit}` : displayValue;
@@ -7426,8 +8281,8 @@ var SummaryStats = ({ items }) => {
7426
8281
  if (items.length === 0) {
7427
8282
  return null;
7428
8283
  }
7429
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
7430
- import_material66.Stack,
8284
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
8285
+ import_material70.Stack,
7431
8286
  {
7432
8287
  direction: "row",
7433
8288
  spacing: 3,
@@ -7436,16 +8291,16 @@ var SummaryStats = ({ items }) => {
7436
8291
  useFlexGap: true,
7437
8292
  role: "list",
7438
8293
  "aria-label": "Summary statistics",
7439
- children: items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(
7440
- import_material66.Stack,
8294
+ children: items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
8295
+ import_material70.Stack,
7441
8296
  {
7442
8297
  direction: "row",
7443
8298
  alignItems: "center",
7444
8299
  spacing: 1,
7445
8300
  role: "listitem",
7446
8301
  children: [
7447
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_material66.Typography, { variant: "body2", color: "text.secondary", children: item.label }),
7448
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_material66.Typography, { variant: "h5", fontWeight: 600, children: formatSummaryValue(item.value, item.unit) })
8302
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_material70.Typography, { variant: "body2", color: "text.secondary", children: item.label }),
8303
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_material70.Typography, { variant: "h5", fontWeight: 600, children: formatSummaryValue(item.value, item.unit) })
7449
8304
  ]
7450
8305
  },
7451
8306
  item.label
@@ -7455,12 +8310,12 @@ var SummaryStats = ({ items }) => {
7455
8310
  };
7456
8311
 
7457
8312
  // src/components/charts/TimeSeriesGraph/TimeSeriesGraph.tsx
7458
- var import_jsx_runtime89 = require("react/jsx-runtime");
7459
- var ChartContainer = (0, import_material67.styled)(import_material67.Box)({
8313
+ var import_jsx_runtime94 = require("react/jsx-runtime");
8314
+ var ChartContainer = (0, import_material71.styled)(import_material71.Box)({
7460
8315
  position: "relative",
7461
8316
  height: 320
7462
8317
  });
7463
- var LoadingOverlay = (0, import_material67.styled)(import_material67.Box)(({ theme: theme2 }) => ({
8318
+ var LoadingOverlay = (0, import_material71.styled)(import_material71.Box)(({ theme: theme2 }) => ({
7464
8319
  position: "absolute",
7465
8320
  inset: 0,
7466
8321
  display: "flex",
@@ -7470,7 +8325,7 @@ var LoadingOverlay = (0, import_material67.styled)(import_material67.Box)(({ the
7470
8325
  zIndex: 1,
7471
8326
  borderRadius: theme2.shape.borderRadius
7472
8327
  }));
7473
- var LegendDot = (0, import_material67.styled)(import_material67.Box, {
8328
+ var LegendDot = (0, import_material71.styled)(import_material71.Box, {
7474
8329
  shouldForwardProp: (prop) => prop !== "dotColor"
7475
8330
  })(({ dotColor }) => ({
7476
8331
  width: 14,
@@ -7526,7 +8381,7 @@ var TimeSeriesGraph = ({
7526
8381
  loading = false,
7527
8382
  xAxisFormat
7528
8383
  }) => {
7529
- const theme2 = (0, import_material67.useTheme)();
8384
+ const theme2 = (0, import_material71.useTheme)();
7530
8385
  const [hiddenSeries, setHiddenSeries] = (0, import_react33.useState)(/* @__PURE__ */ new Set());
7531
8386
  const dataset = (0, import_react33.useMemo)(() => buildDataset(series, hiddenSeries), [series, hiddenSeries]);
7532
8387
  const visibleSeries = (0, import_react33.useMemo)(
@@ -7559,9 +8414,9 @@ var TimeSeriesGraph = ({
7559
8414
  );
7560
8415
  const hasData = dataset.length > 0;
7561
8416
  const shouldShowSummary = showSummary && summaryItems && summaryItems.length > 0;
7562
- const headerActionElement = /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_material67.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
8417
+ const headerActionElement = /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(import_material71.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
7563
8418
  headerAction,
7564
- timeRangeOptions && timeRangeOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8419
+ timeRangeOptions && timeRangeOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
7565
8420
  TimeRangeSelect,
7566
8421
  {
7567
8422
  options: timeRangeOptions,
@@ -7571,14 +8426,14 @@ var TimeSeriesGraph = ({
7571
8426
  )
7572
8427
  ] });
7573
8428
  const showHeader = !!title || !!headerAction || timeRangeOptions && timeRangeOptions.length > 0;
7574
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(
7575
- import_material67.Card,
8429
+ return /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(
8430
+ import_material71.Card,
7576
8431
  {
7577
8432
  "aria-label": title ? `Line chart showing ${title}` : "Line chart",
7578
8433
  role: "figure",
7579
8434
  children: [
7580
- showHeader && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
7581
- import_material67.CardHeader,
8435
+ showHeader && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
8436
+ import_material71.CardHeader,
7582
8437
  {
7583
8438
  title,
7584
8439
  titleTypographyProps: {
@@ -7588,10 +8443,10 @@ var TimeSeriesGraph = ({
7588
8443
  action: headerActionElement
7589
8444
  }
7590
8445
  ),
7591
- /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_material67.CardMedia, { children: [
7592
- /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(ChartContainer, { children: [
7593
- loading && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(LoadingOverlay, { role: "status", "aria-label": "Loading chart data", children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_material67.CircularProgress, { size: 40 }) }),
7594
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
8446
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(import_material71.CardMedia, { children: [
8447
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(ChartContainer, { children: [
8448
+ loading && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(LoadingOverlay, { role: "status", "aria-label": "Loading chart data", children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_material71.CircularProgress, { size: 40 }) }),
8449
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
7595
8450
  import_x_charts3.LineChart,
7596
8451
  {
7597
8452
  dataset,
@@ -7643,8 +8498,8 @@ var TimeSeriesGraph = ({
7643
8498
  }
7644
8499
  )
7645
8500
  ] }),
7646
- series.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
7647
- import_material67.Stack,
8501
+ series.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
8502
+ import_material71.Stack,
7648
8503
  {
7649
8504
  direction: "row",
7650
8505
  spacing: 2,
@@ -7656,8 +8511,8 @@ var TimeSeriesGraph = ({
7656
8511
  "aria-label": "Chart legend",
7657
8512
  children: series.map((s) => {
7658
8513
  const isHidden = hiddenSeries.has(s.name);
7659
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(
7660
- import_material67.Stack,
8514
+ return /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(
8515
+ import_material71.Stack,
7661
8516
  {
7662
8517
  direction: "row",
7663
8518
  spacing: 1,
@@ -7673,8 +8528,8 @@ var TimeSeriesGraph = ({
7673
8528
  "aria-pressed": !isHidden,
7674
8529
  "aria-label": `Toggle ${s.name} visibility`,
7675
8530
  children: [
7676
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(LegendDot, { dotColor: s.color }),
7677
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_material67.Typography, { variant: "body2", children: s.name })
8531
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(LegendDot, { dotColor: s.color }),
8532
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_material71.Typography, { variant: "body2", children: s.name })
7678
8533
  ]
7679
8534
  },
7680
8535
  s.name
@@ -7683,9 +8538,9 @@ var TimeSeriesGraph = ({
7683
8538
  }
7684
8539
  )
7685
8540
  ] }),
7686
- shouldShowSummary && /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(import_jsx_runtime89.Fragment, { children: [
7687
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_material67.Divider, {}),
7688
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(SummaryStats, { items: summaryItems })
8541
+ shouldShowSummary && /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(import_jsx_runtime94.Fragment, { children: [
8542
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_material71.Divider, {}),
8543
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(SummaryStats, { items: summaryItems })
7689
8544
  ] })
7690
8545
  ]
7691
8546
  }
@@ -7695,10 +8550,10 @@ var TimeSeriesGraph = ({
7695
8550
  // src/components/third-party/FlowEditor.tsx
7696
8551
  var import_react34 = require("react");
7697
8552
  var import_reactflow = __toESM(require("reactflow"));
7698
- var import_material68 = require("@mui/material");
8553
+ var import_material72 = require("@mui/material");
7699
8554
  var import_styles40 = require("@mui/material/styles");
7700
8555
  var import_reactflow2 = require("reactflow");
7701
- var import_jsx_runtime90 = require("react/jsx-runtime");
8556
+ var import_jsx_runtime95 = require("react/jsx-runtime");
7702
8557
  var FlowEditor = ({
7703
8558
  nodes,
7704
8559
  edges,
@@ -7724,8 +8579,8 @@ var FlowEditor = ({
7724
8579
  },
7725
8580
  [onInit]
7726
8581
  );
7727
- return /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_reactflow.ReactFlowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
7728
- import_material68.Box,
8582
+ return /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(import_reactflow.ReactFlowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(
8583
+ import_material72.Box,
7729
8584
  {
7730
8585
  sx: {
7731
8586
  width: "100%",
@@ -7737,7 +8592,7 @@ var FlowEditor = ({
7737
8592
  ...containerProps?.sx
7738
8593
  },
7739
8594
  ...containerProps,
7740
- children: /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(
8595
+ children: /* @__PURE__ */ (0, import_jsx_runtime95.jsxs)(
7741
8596
  import_reactflow.default,
7742
8597
  {
7743
8598
  nodes,
@@ -7759,7 +8614,7 @@ var FlowEditor = ({
7759
8614
  },
7760
8615
  ...reactFlowProps,
7761
8616
  children: [
7762
- showBackground && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
8617
+ showBackground && /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(
7763
8618
  import_reactflow.Background,
7764
8619
  {
7765
8620
  variant: backgroundVariant,
@@ -7768,8 +8623,8 @@ var FlowEditor = ({
7768
8623
  color: theme2.palette.divider
7769
8624
  }
7770
8625
  ),
7771
- showControls && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_reactflow.Controls, {}),
7772
- showMinimap && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
8626
+ showControls && /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(import_reactflow.Controls, {}),
8627
+ showMinimap && /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(
7773
8628
  import_reactflow.MiniMap,
7774
8629
  {
7775
8630
  nodeColor: (node) => {
@@ -7794,13 +8649,13 @@ var FlowEditor = ({
7794
8649
  // src/components/third-party/CodeEditor.tsx
7795
8650
  var import_react35 = require("react");
7796
8651
  var import_react36 = __toESM(require("@monaco-editor/react"));
7797
- var import_material69 = require("@mui/material");
8652
+ var import_material73 = require("@mui/material");
7798
8653
  var import_Fullscreen = __toESM(require("@mui/icons-material/Fullscreen"));
7799
8654
  var import_FullscreenExit = __toESM(require("@mui/icons-material/FullscreenExit"));
7800
8655
  var import_ErrorOutline = __toESM(require("@mui/icons-material/ErrorOutline"));
7801
8656
  var import_ExpandMore3 = __toESM(require("@mui/icons-material/ExpandMore"));
7802
8657
  var import_ExpandLess = __toESM(require("@mui/icons-material/ExpandLess"));
7803
- var import_jsx_runtime91 = require("react/jsx-runtime");
8658
+ var import_jsx_runtime96 = require("react/jsx-runtime");
7804
8659
  var configureTypeScript = (monaco) => {
7805
8660
  monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
7806
8661
  target: monaco.languages.typescript.ScriptTarget.ES2020,
@@ -8012,8 +8867,8 @@ var CodeEditor = ({
8012
8867
  theme: themeProp || "vs",
8013
8868
  ...options2
8014
8869
  };
8015
- return /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
8016
- import_material69.Box,
8870
+ return /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
8871
+ import_material73.Box,
8017
8872
  {
8018
8873
  sx: {
8019
8874
  display: "flex",
@@ -8033,8 +8888,8 @@ var CodeEditor = ({
8033
8888
  pb: isFullscreen ? 2 : 0,
8034
8889
  overflow: isFullscreen ? "hidden" : "visible"
8035
8890
  },
8036
- children: /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
8037
- import_material69.Box,
8891
+ children: /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(
8892
+ import_material73.Box,
8038
8893
  {
8039
8894
  sx: {
8040
8895
  flex: 1,
@@ -8049,8 +8904,8 @@ var CodeEditor = ({
8049
8904
  },
8050
8905
  ...containerProps,
8051
8906
  children: [
8052
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Tooltip, { title: isFullscreen ? "Exit Fullscreen" : "Fullscreen", children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
8053
- import_material69.IconButton,
8907
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Tooltip, { title: isFullscreen ? "Exit Fullscreen" : "Fullscreen", children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
8908
+ import_material73.IconButton,
8054
8909
  {
8055
8910
  onClick: toggleFullscreen,
8056
8911
  size: "small",
@@ -8067,11 +8922,11 @@ var CodeEditor = ({
8067
8922
  },
8068
8923
  boxShadow: 1
8069
8924
  },
8070
- children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_FullscreenExit.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_Fullscreen.default, { fontSize: "small" })
8925
+ children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_FullscreenExit.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_Fullscreen.default, { fontSize: "small" })
8071
8926
  }
8072
8927
  ) }),
8073
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
8074
- import_material69.Box,
8928
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
8929
+ import_material73.Box,
8075
8930
  {
8076
8931
  sx: {
8077
8932
  flex: 1,
@@ -8082,7 +8937,7 @@ var CodeEditor = ({
8082
8937
  position: "relative",
8083
8938
  height: isFullscreen ? "100%" : actualHeight
8084
8939
  },
8085
- children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
8940
+ children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
8086
8941
  import_react36.default,
8087
8942
  {
8088
8943
  height: "100%",
@@ -8093,7 +8948,7 @@ var CodeEditor = ({
8093
8948
  onMount: handleEditorDidMount,
8094
8949
  theme: themeProp || "vs",
8095
8950
  options: defaultOptions,
8096
- loading: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Box, { sx: { p: 2, textAlign: "center" }, children: "Loading Monaco Editor..." }),
8951
+ loading: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Box, { sx: { p: 2, textAlign: "center" }, children: "Loading Monaco Editor..." }),
8097
8952
  beforeMount: (monaco) => {
8098
8953
  console.log("CodeEditor: beforeMount called", { monaco: !!monaco });
8099
8954
  }
@@ -8101,8 +8956,8 @@ var CodeEditor = ({
8101
8956
  )
8102
8957
  }
8103
8958
  ),
8104
- validationErrors.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
8105
- import_material69.Box,
8959
+ validationErrors.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(
8960
+ import_material73.Box,
8106
8961
  {
8107
8962
  sx: {
8108
8963
  borderTop: 1,
@@ -8115,8 +8970,8 @@ var CodeEditor = ({
8115
8970
  transition: "max-height 0.2s ease"
8116
8971
  },
8117
8972
  children: [
8118
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
8119
- import_material69.Box,
8973
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(
8974
+ import_material73.Box,
8120
8975
  {
8121
8976
  sx: {
8122
8977
  display: "flex",
@@ -8130,16 +8985,16 @@ var CodeEditor = ({
8130
8985
  color: "text.secondary"
8131
8986
  },
8132
8987
  children: [
8133
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_ErrorOutline.default, { color: "error", fontSize: "small" }),
8134
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Box, { sx: { fontWeight: 600, color: "text.primary" }, children: "Problems" }),
8135
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material69.Box, { sx: { ml: 1 }, children: [
8988
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_ErrorOutline.default, { color: "error", fontSize: "small" }),
8989
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Box, { sx: { fontWeight: 600, color: "text.primary" }, children: "Problems" }),
8990
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(import_material73.Box, { sx: { ml: 1 }, children: [
8136
8991
  validationErrors.length,
8137
8992
  " error",
8138
8993
  validationErrors.length > 1 ? "s" : ""
8139
8994
  ] }),
8140
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Box, { sx: { flex: 1 } }),
8141
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
8142
- import_material69.IconButton,
8995
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Box, { sx: { flex: 1 } }),
8996
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(
8997
+ import_material73.IconButton,
8143
8998
  {
8144
8999
  size: "small",
8145
9000
  "aria-label": "Toggle problems panel",
@@ -8147,14 +9002,14 @@ var CodeEditor = ({
8147
9002
  setHasUserToggledProblems(true);
8148
9003
  setShowProblems((s) => !s);
8149
9004
  },
8150
- children: showProblems ? /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_ExpandMore3.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_ExpandLess.default, { fontSize: "small" })
9005
+ children: showProblems ? /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_ExpandMore3.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_ExpandLess.default, { fontSize: "small" })
8151
9006
  }
8152
9007
  )
8153
9008
  ]
8154
9009
  }
8155
9010
  ),
8156
- showProblems && /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Box, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
8157
- import_material69.Box,
9011
+ showProblems && /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Box, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(
9012
+ import_material73.Box,
8158
9013
  {
8159
9014
  onClick: () => gotoMarker(error),
8160
9015
  sx: {
@@ -8170,12 +9025,12 @@ var CodeEditor = ({
8170
9025
  fontSize: "0.85rem"
8171
9026
  },
8172
9027
  children: [
8173
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_ErrorOutline.default, { color: "error", sx: { fontSize: 18 } }),
8174
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_material69.Box, { sx: { color: "text.secondary", width: 64 }, children: [
9028
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_ErrorOutline.default, { color: "error", sx: { fontSize: 18 } }),
9029
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(import_material73.Box, { sx: { color: "text.secondary", width: 64 }, children: [
8175
9030
  "Line ",
8176
9031
  error.startLineNumber
8177
9032
  ] }),
8178
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_material69.Box, { sx: { color: "text.primary", flex: 1, minWidth: 0 }, children: error.message })
9033
+ /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_material73.Box, { sx: { color: "text.primary", flex: 1, minWidth: 0 }, children: error.message })
8179
9034
  ]
8180
9035
  },
8181
9036
  `${error.startLineNumber}-${error.startColumn}-${index}`
@@ -8191,7 +9046,41 @@ var CodeEditor = ({
8191
9046
  };
8192
9047
 
8193
9048
  // src/index.ts
9049
+ var import_reactflow4 = require("reactflow");
9050
+
9051
+ // src/components/third-party/WorkflowNodeHandle.tsx
8194
9052
  var import_reactflow3 = require("reactflow");
9053
+ var import_jsx_runtime97 = require("react/jsx-runtime");
9054
+ var WorkflowNodeHandle = ({
9055
+ data,
9056
+ selected
9057
+ }) => {
9058
+ const handleColor = workflowNodeColors[data.nodeType];
9059
+ const handleStyle = {
9060
+ width: 8,
9061
+ height: 8,
9062
+ borderRadius: "999px",
9063
+ border: "2px solid #fff",
9064
+ background: handleColor,
9065
+ boxShadow: WORKFLOW_NODE_SHADOW
9066
+ };
9067
+ return /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_jsx_runtime97.Fragment, { children: [
9068
+ /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_reactflow3.Handle, { type: "target", position: import_reactflow3.Position.Left, style: handleStyle }),
9069
+ /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
9070
+ WorkflowNode,
9071
+ {
9072
+ nodeType: data.nodeType,
9073
+ title: data.title,
9074
+ description: data.description,
9075
+ icon: data.icon,
9076
+ badgeLabel: data.badgeLabel,
9077
+ selected,
9078
+ showSideDots: false
9079
+ }
9080
+ ),
9081
+ /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_reactflow3.Handle, { type: "source", position: import_reactflow3.Position.Right, style: handleStyle })
9082
+ ] });
9083
+ };
8195
9084
  // Annotate the CommonJS export names for ESM import in node:
8196
9085
  0 && (module.exports = {
8197
9086
  Accordion,
@@ -8229,6 +9118,7 @@ var import_reactflow3 = require("reactflow");
8229
9118
  ConnectionStatus,
8230
9119
  Container,
8231
9120
  Controls,
9121
+ DateRangePicker,
8232
9122
  DecentralizedServerIcon,
8233
9123
  DeploymentDashboardCard,
8234
9124
  DeploymentDashboardPanel,
@@ -8317,6 +9207,13 @@ var import_reactflow3 = require("reactflow");
8317
9207
  Typography,
8318
9208
  UploadFileIcon,
8319
9209
  UploadFolderIcon,
9210
+ WORKFLOW_NODE_LABELS,
9211
+ WORKFLOW_NODE_SHADOW,
9212
+ WorkflowNode,
9213
+ WorkflowNodeHandle,
9214
+ WorkflowSideInspector,
9215
+ WorkflowTimeBar,
9216
+ WorkflowTopBar,
8320
9217
  WorkspaceSelectorButton,
8321
9218
  colors,
8322
9219
  contextMenuItems,
@@ -8326,6 +9223,8 @@ var import_reactflow3 = require("reactflow");
8326
9223
  useIsDesktop,
8327
9224
  useIsMobile,
8328
9225
  useIsTablet,
8329
- useOnboarding
9226
+ useOnboarding,
9227
+ workflowConnectionColors,
9228
+ workflowNodeColors
8330
9229
  });
8331
9230
  //# sourceMappingURL=index.js.map