@cere/cere-design-system 0.0.40 → 0.0.43
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/.specify/memory/constitution.md +1 -1
- package/dist/index.d.mts +8 -5
- package/dist/index.d.ts +8 -5
- package/dist/index.js +114 -84
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +334 -304
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -1
package/dist/index.mjs
CHANGED
|
@@ -3,6 +3,18 @@ import { createTheme } from "@mui/material/styles";
|
|
|
3
3
|
|
|
4
4
|
// src/theme/primitives.ts
|
|
5
5
|
var primitives = {
|
|
6
|
+
/**
|
|
7
|
+
* Cere brand violet — the company's primary action color across web
|
|
8
|
+
* surfaces. Use via `semantic.action.primary` rather than reaching for
|
|
9
|
+
* raw hex.
|
|
10
|
+
*/
|
|
11
|
+
violet: {
|
|
12
|
+
100: "#f0e0fb",
|
|
13
|
+
300: "#d0bcff",
|
|
14
|
+
500: "#aa44f2",
|
|
15
|
+
600: "#7c59ac"
|
|
16
|
+
},
|
|
17
|
+
/** Legacy MUI blue. Retained for code paths that still reach for blue tokens by name (e.g. ROB highlights). Not the brand primary. */
|
|
6
18
|
blue: {
|
|
7
19
|
500: "#1976d2",
|
|
8
20
|
600: "#1565c0"
|
|
@@ -144,8 +156,8 @@ var workflowConnectionColors = {
|
|
|
144
156
|
// src/theme/semantic.ts
|
|
145
157
|
var semantic = {
|
|
146
158
|
action: {
|
|
147
|
-
primary: primitives.
|
|
148
|
-
primaryHover: primitives.
|
|
159
|
+
primary: primitives.violet[500],
|
|
160
|
+
primaryHover: primitives.violet[600],
|
|
149
161
|
disabled: primitives.grey[400]
|
|
150
162
|
},
|
|
151
163
|
surface: {
|
|
@@ -2160,7 +2172,7 @@ function useSearchHotkeys(inputRef, options2 = {}) {
|
|
|
2160
2172
|
function onKeyDown(event) {
|
|
2161
2173
|
if (enableK && event.key.toLowerCase() === "k") {
|
|
2162
2174
|
const correctMod = mac ? event.metaKey && !event.ctrlKey : event.ctrlKey && !event.metaKey;
|
|
2163
|
-
if (correctMod) {
|
|
2175
|
+
if (correctMod && !event.shiftKey && !event.altKey) {
|
|
2164
2176
|
event.preventDefault();
|
|
2165
2177
|
inputRef.current?.focus();
|
|
2166
2178
|
return;
|
|
@@ -2181,15 +2193,16 @@ function useSearchHotkeys(inputRef, options2 = {}) {
|
|
|
2181
2193
|
}
|
|
2182
2194
|
|
|
2183
2195
|
// src/components/inputs/SearchField.tsx
|
|
2184
|
-
import { jsx as jsx8
|
|
2196
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
2185
2197
|
var ShortcutHint = () => {
|
|
2186
2198
|
const [mounted, setMounted] = useState(false);
|
|
2187
2199
|
useEffect2(() => {
|
|
2188
2200
|
setMounted(true);
|
|
2189
2201
|
}, []);
|
|
2190
2202
|
if (!mounted) return null;
|
|
2191
|
-
const
|
|
2192
|
-
|
|
2203
|
+
const isMac = isMacPlatform();
|
|
2204
|
+
const label = isMac ? "\u2318\u2009K" : "Ctrl + K";
|
|
2205
|
+
return /* @__PURE__ */ jsx8(
|
|
2193
2206
|
Box,
|
|
2194
2207
|
{
|
|
2195
2208
|
component: "span",
|
|
@@ -2206,10 +2219,7 @@ var ShortcutHint = () => {
|
|
|
2206
2219
|
color: "text.secondary",
|
|
2207
2220
|
lineHeight: 1
|
|
2208
2221
|
},
|
|
2209
|
-
children:
|
|
2210
|
-
modKey,
|
|
2211
|
-
"K"
|
|
2212
|
-
]
|
|
2222
|
+
children: label
|
|
2213
2223
|
}
|
|
2214
2224
|
);
|
|
2215
2225
|
};
|
|
@@ -2227,21 +2237,19 @@ var SearchField = ({
|
|
|
2227
2237
|
onChange?.(e);
|
|
2228
2238
|
onSearch?.(e.target.value);
|
|
2229
2239
|
};
|
|
2230
|
-
const
|
|
2231
|
-
"& .MuiOutlinedInput-root": {
|
|
2232
|
-
borderRadius: "999px",
|
|
2233
|
-
paddingRight: "6px"
|
|
2234
|
-
}
|
|
2235
|
-
} : void 0;
|
|
2240
|
+
const pillInputSx = variant === "pill" ? { borderRadius: "999px", paddingRight: "6px" } : void 0;
|
|
2236
2241
|
return /* @__PURE__ */ jsx8(
|
|
2237
2242
|
TextField,
|
|
2238
2243
|
{
|
|
2239
2244
|
placeholder,
|
|
2240
2245
|
onChange: handleChange,
|
|
2241
|
-
sx
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2246
|
+
sx,
|
|
2247
|
+
slotProps: {
|
|
2248
|
+
input: {
|
|
2249
|
+
...pillInputSx ? { sx: pillInputSx } : {},
|
|
2250
|
+
startAdornment: /* @__PURE__ */ jsx8(InputAdornment, { position: "start", children: /* @__PURE__ */ jsx8(SearchIcon, { style: { fontSize: 18, color: theme2.palette.text.disabled } }) }),
|
|
2251
|
+
endAdornment: shortcutHint ? /* @__PURE__ */ jsx8(InputAdornment, { position: "end", children: /* @__PURE__ */ jsx8(ShortcutHint, {}) }) : void 0
|
|
2252
|
+
}
|
|
2245
2253
|
},
|
|
2246
2254
|
...props
|
|
2247
2255
|
}
|
|
@@ -2290,7 +2298,7 @@ var ToggleButtonGroup = (props) => {
|
|
|
2290
2298
|
// src/components/inputs/Switch.tsx
|
|
2291
2299
|
import MuiSwitch from "@mui/material/Switch";
|
|
2292
2300
|
import { styled as styled5 } from "@mui/material/styles";
|
|
2293
|
-
import { jsx as jsx10, jsxs
|
|
2301
|
+
import { jsx as jsx10, jsxs } from "react/jsx-runtime";
|
|
2294
2302
|
var StyledSwitch = styled5(MuiSwitch)(({ theme: theme2 }) => ({
|
|
2295
2303
|
width: 44,
|
|
2296
2304
|
height: 24,
|
|
@@ -2346,7 +2354,7 @@ var Switch = ({
|
|
|
2346
2354
|
if (!label) {
|
|
2347
2355
|
return switchComponent;
|
|
2348
2356
|
}
|
|
2349
|
-
return /* @__PURE__ */
|
|
2357
|
+
return /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
|
|
2350
2358
|
labelPosition === "left" && /* @__PURE__ */ jsx10("span", { children: label }),
|
|
2351
2359
|
switchComponent,
|
|
2352
2360
|
labelPosition === "right" && /* @__PURE__ */ jsx10("span", { children: label })
|
|
@@ -2451,7 +2459,7 @@ import Typography from "@mui/material/Typography";
|
|
|
2451
2459
|
import { DatePicker } from "@mui/x-date-pickers/DatePicker";
|
|
2452
2460
|
import { LocalizationProvider } from "@mui/x-date-pickers/LocalizationProvider";
|
|
2453
2461
|
import { AdapterDateFns } from "@mui/x-date-pickers/AdapterDateFnsV3";
|
|
2454
|
-
import { jsx as jsx13, jsxs as
|
|
2462
|
+
import { jsx as jsx13, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
2455
2463
|
var DateRangePicker = ({
|
|
2456
2464
|
startDate,
|
|
2457
2465
|
endDate,
|
|
@@ -2462,7 +2470,7 @@ var DateRangePicker = ({
|
|
|
2462
2470
|
disabled = false,
|
|
2463
2471
|
size: size3 = "small"
|
|
2464
2472
|
}) => {
|
|
2465
|
-
return /* @__PURE__ */ jsx13(LocalizationProvider, { dateAdapter: AdapterDateFns, children: /* @__PURE__ */
|
|
2473
|
+
return /* @__PURE__ */ jsx13(LocalizationProvider, { dateAdapter: AdapterDateFns, children: /* @__PURE__ */ jsxs2(Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
|
|
2466
2474
|
/* @__PURE__ */ jsx13(
|
|
2467
2475
|
DatePicker,
|
|
2468
2476
|
{
|
|
@@ -2503,7 +2511,7 @@ import { useCallback, useRef } from "react";
|
|
|
2503
2511
|
import { forwardRef } from "react";
|
|
2504
2512
|
import { Stack as Stack2, styled as styled8, avatarClasses, Typography as Typography2, Button as Button2 } from "@mui/material";
|
|
2505
2513
|
import { ArrowDropUp, ArrowDropDown } from "@mui/icons-material";
|
|
2506
|
-
import { jsx as jsx14, jsxs as
|
|
2514
|
+
import { jsx as jsx14, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
2507
2515
|
var Clickable = styled8(Button2)({
|
|
2508
2516
|
padding: 0
|
|
2509
2517
|
});
|
|
@@ -2529,7 +2537,7 @@ var Center = styled8(Typography2)(({ theme: theme2 }) => ({
|
|
|
2529
2537
|
color: theme2.palette.text.primary
|
|
2530
2538
|
}));
|
|
2531
2539
|
var DropdownAnchor = forwardRef(
|
|
2532
|
-
({ open, label, leftElement, onOpen, variant, ...props }, ref) => /* @__PURE__ */ jsx14(Clickable, { ref, ...props, color: "inherit", variant: "text", onClick: onOpen, children: /* @__PURE__ */
|
|
2540
|
+
({ open, label, leftElement, onOpen, variant, ...props }, ref) => /* @__PURE__ */ jsx14(Clickable, { ref, ...props, color: "inherit", variant: "text", onClick: onOpen, children: /* @__PURE__ */ jsxs3(Anchor, { variant, spacing: 1, direction: "row", alignItems: "stretch", children: [
|
|
2533
2541
|
/* @__PURE__ */ jsx14(Left, { children: leftElement }),
|
|
2534
2542
|
/* @__PURE__ */ jsx14(Center, { variant: "body1", children: label }),
|
|
2535
2543
|
variant !== "header" && (open ? /* @__PURE__ */ jsx14(ArrowDropUp, {}) : /* @__PURE__ */ jsx14(ArrowDropDown, {}))
|
|
@@ -2538,7 +2546,7 @@ var DropdownAnchor = forwardRef(
|
|
|
2538
2546
|
DropdownAnchor.displayName = "DropdownAnchor";
|
|
2539
2547
|
|
|
2540
2548
|
// src/components/navigation/Dropdown/Dropdown.tsx
|
|
2541
|
-
import { Fragment, jsx as jsx15, jsxs as
|
|
2549
|
+
import { Fragment, jsx as jsx15, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
2542
2550
|
var Dropdown = ({
|
|
2543
2551
|
open,
|
|
2544
2552
|
label,
|
|
@@ -2556,7 +2564,7 @@ var Dropdown = ({
|
|
|
2556
2564
|
const horizontal = direction === "left" ? "right" : "left";
|
|
2557
2565
|
const onOpen = useCallback(() => onToggle?.(true), [onToggle]);
|
|
2558
2566
|
const padding = dense ? 1 : 2;
|
|
2559
|
-
return /* @__PURE__ */
|
|
2567
|
+
return /* @__PURE__ */ jsxs4(Fragment, { children: [
|
|
2560
2568
|
renderAnchor({ ref: anchorRef, onOpen, open }),
|
|
2561
2569
|
/* @__PURE__ */ jsx15(
|
|
2562
2570
|
Popover,
|
|
@@ -2607,7 +2615,7 @@ import {
|
|
|
2607
2615
|
ListItemText,
|
|
2608
2616
|
styled as styled9
|
|
2609
2617
|
} from "@mui/material";
|
|
2610
|
-
import { jsx as jsx16, jsxs as
|
|
2618
|
+
import { jsx as jsx16, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
2611
2619
|
var StyledListItemButton = styled9(ListItemButton, {
|
|
2612
2620
|
shouldForwardProp: (prop) => prop !== "selected" && prop !== "size"
|
|
2613
2621
|
})(({ theme: theme2, selected, size: size3 = "medium" }) => {
|
|
@@ -2646,7 +2654,7 @@ var SidebarItem = ({
|
|
|
2646
2654
|
endIcon,
|
|
2647
2655
|
children
|
|
2648
2656
|
}) => {
|
|
2649
|
-
return /* @__PURE__ */
|
|
2657
|
+
return /* @__PURE__ */ jsxs5(StyledListItemButton, { selected, size: size3, onClick, children: [
|
|
2650
2658
|
icon && /* @__PURE__ */ jsx16(ListItemIcon, { children: icon }),
|
|
2651
2659
|
/* @__PURE__ */ jsx16(ListItemText, { primary: label }),
|
|
2652
2660
|
endIcon && /* @__PURE__ */ jsx16("div", { style: { marginLeft: "auto" }, children: endIcon }),
|
|
@@ -2716,7 +2724,7 @@ import AddIcon from "@mui/icons-material/Add";
|
|
|
2716
2724
|
import CheckIcon from "@mui/icons-material/Check";
|
|
2717
2725
|
import SettingsIcon from "@mui/icons-material/Settings";
|
|
2718
2726
|
import PersonAddAltIcon from "@mui/icons-material/PersonAddAlt";
|
|
2719
|
-
import { Fragment as Fragment2, jsx as jsx18, jsxs as
|
|
2727
|
+
import { Fragment as Fragment2, jsx as jsx18, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
2720
2728
|
var ServiceSelectorButton = ({
|
|
2721
2729
|
services,
|
|
2722
2730
|
selectedServiceId,
|
|
@@ -2773,7 +2781,7 @@ var ServiceSelectorButton = ({
|
|
|
2773
2781
|
return matchesSearch && matchesArchivedFilter;
|
|
2774
2782
|
});
|
|
2775
2783
|
if (compact) {
|
|
2776
|
-
return /* @__PURE__ */
|
|
2784
|
+
return /* @__PURE__ */ jsxs6(Fragment2, { children: [
|
|
2777
2785
|
/* @__PURE__ */ jsx18(Box3, { sx: { position: "relative" }, children: /* @__PURE__ */ jsx18(Tooltip, { title: "Select service", placement: "right", children: /* @__PURE__ */ jsx18(
|
|
2778
2786
|
IconButton2,
|
|
2779
2787
|
{
|
|
@@ -2825,10 +2833,10 @@ var ServiceSelectorButton = ({
|
|
|
2825
2833
|
)
|
|
2826
2834
|
] });
|
|
2827
2835
|
}
|
|
2828
|
-
return /* @__PURE__ */
|
|
2829
|
-
/* @__PURE__ */
|
|
2830
|
-
selectedService ? /* @__PURE__ */
|
|
2831
|
-
isManager ? /* @__PURE__ */
|
|
2836
|
+
return /* @__PURE__ */ jsxs6(Fragment2, { children: [
|
|
2837
|
+
/* @__PURE__ */ jsxs6(Box3, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
|
|
2838
|
+
selectedService ? /* @__PURE__ */ jsxs6(Fragment2, { children: [
|
|
2839
|
+
isManager ? /* @__PURE__ */ jsxs6(
|
|
2832
2840
|
Link,
|
|
2833
2841
|
{
|
|
2834
2842
|
underline: "hover",
|
|
@@ -2858,7 +2866,7 @@ var ServiceSelectorButton = ({
|
|
|
2858
2866
|
selectedService.name
|
|
2859
2867
|
]
|
|
2860
2868
|
}
|
|
2861
|
-
) : /* @__PURE__ */
|
|
2869
|
+
) : /* @__PURE__ */ jsxs6(
|
|
2862
2870
|
Box3,
|
|
2863
2871
|
{
|
|
2864
2872
|
sx: {
|
|
@@ -2996,7 +3004,7 @@ var ServiceSelectorPanel = ({
|
|
|
2996
3004
|
}
|
|
2997
3005
|
}
|
|
2998
3006
|
};
|
|
2999
|
-
return /* @__PURE__ */
|
|
3007
|
+
return /* @__PURE__ */ jsxs6(
|
|
3000
3008
|
Menu,
|
|
3001
3009
|
{
|
|
3002
3010
|
anchorEl,
|
|
@@ -3021,7 +3029,7 @@ var ServiceSelectorPanel = ({
|
|
|
3021
3029
|
}
|
|
3022
3030
|
},
|
|
3023
3031
|
children: [
|
|
3024
|
-
selectedService && /* @__PURE__ */
|
|
3032
|
+
selectedService && /* @__PURE__ */ jsxs6(
|
|
3025
3033
|
Box3,
|
|
3026
3034
|
{
|
|
3027
3035
|
sx: {
|
|
@@ -3033,7 +3041,7 @@ var ServiceSelectorPanel = ({
|
|
|
3033
3041
|
borderColor: "divider"
|
|
3034
3042
|
},
|
|
3035
3043
|
children: [
|
|
3036
|
-
/* @__PURE__ */
|
|
3044
|
+
/* @__PURE__ */ jsxs6(Box3, { sx: {
|
|
3037
3045
|
display: "flex",
|
|
3038
3046
|
alignItems: "center",
|
|
3039
3047
|
mb: 1.5
|
|
@@ -3051,7 +3059,7 @@ var ServiceSelectorPanel = ({
|
|
|
3051
3059
|
children: selectedService.name.charAt(0)
|
|
3052
3060
|
}
|
|
3053
3061
|
),
|
|
3054
|
-
/* @__PURE__ */ jsx18(Box3, { sx: { flex: 1 }, children: /* @__PURE__ */
|
|
3062
|
+
/* @__PURE__ */ jsx18(Box3, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxs6(Box3, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
3055
3063
|
/* @__PURE__ */ jsx18(Typography3, { variant: "subtitle1", sx: { fontWeight: 600, fontSize: "1rem" }, children: selectedService.name }),
|
|
3056
3064
|
/* @__PURE__ */ jsx18(
|
|
3057
3065
|
Box3,
|
|
@@ -3072,7 +3080,7 @@ var ServiceSelectorPanel = ({
|
|
|
3072
3080
|
)
|
|
3073
3081
|
] }) })
|
|
3074
3082
|
] }),
|
|
3075
|
-
(onOpenSettings || onOpenAddMember) && /* @__PURE__ */
|
|
3083
|
+
(onOpenSettings || onOpenAddMember) && /* @__PURE__ */ jsxs6(Box3, { sx: { display: "flex", gap: 1 }, children: [
|
|
3076
3084
|
onOpenAddMember && /* @__PURE__ */ jsx18(
|
|
3077
3085
|
Button3,
|
|
3078
3086
|
{
|
|
@@ -3143,8 +3151,8 @@ var ServiceSelectorPanel = ({
|
|
|
3143
3151
|
]
|
|
3144
3152
|
}
|
|
3145
3153
|
),
|
|
3146
|
-
/* @__PURE__ */
|
|
3147
|
-
/* @__PURE__ */
|
|
3154
|
+
/* @__PURE__ */ jsxs6(Box3, { sx: { px: 2, pt: 2, pb: 1.5 }, children: [
|
|
3155
|
+
/* @__PURE__ */ jsxs6(Box3, { sx: { display: "flex", alignItems: "center", mb: 1.5 }, children: [
|
|
3148
3156
|
/* @__PURE__ */ jsx18(
|
|
3149
3157
|
TextField2,
|
|
3150
3158
|
{
|
|
@@ -3183,8 +3191,8 @@ var ServiceSelectorPanel = ({
|
|
|
3183
3191
|
overflow: "auto",
|
|
3184
3192
|
py: 1
|
|
3185
3193
|
},
|
|
3186
|
-
children: loading ? /* @__PURE__ */ jsx18(Box3, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx18(Typography3, { variant: "body2", color: "text.secondary", children: "Loading services..." }) }) : filteredServices.length === 0 ? /* @__PURE__ */ jsx18(Box3, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx18(Typography3, { variant: "body2", color: "text.secondary", children: searchTerm ? `No ${showArchived ? "archived " : ""}services matching "${searchTerm}"` : showArchived ? "No archived services found" : "No active services found" }) }) : /* @__PURE__ */
|
|
3187
|
-
/* @__PURE__ */
|
|
3194
|
+
children: loading ? /* @__PURE__ */ jsx18(Box3, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx18(Typography3, { variant: "body2", color: "text.secondary", children: "Loading services..." }) }) : filteredServices.length === 0 ? /* @__PURE__ */ jsx18(Box3, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx18(Typography3, { variant: "body2", color: "text.secondary", children: searchTerm ? `No ${showArchived ? "archived " : ""}services matching "${searchTerm}"` : showArchived ? "No archived services found" : "No active services found" }) }) : /* @__PURE__ */ jsxs6(Fragment2, { children: [
|
|
3195
|
+
/* @__PURE__ */ jsxs6(
|
|
3188
3196
|
Typography3,
|
|
3189
3197
|
{
|
|
3190
3198
|
variant: "caption",
|
|
@@ -3219,7 +3227,7 @@ var ServiceSelectorPanel = ({
|
|
|
3219
3227
|
]
|
|
3220
3228
|
}
|
|
3221
3229
|
),
|
|
3222
|
-
/* @__PURE__ */ jsx18(List2, { disablePadding: true, children: filteredServices.map((service) => /* @__PURE__ */
|
|
3230
|
+
/* @__PURE__ */ jsx18(List2, { disablePadding: true, children: filteredServices.map((service) => /* @__PURE__ */ jsxs6(
|
|
3223
3231
|
ListItem,
|
|
3224
3232
|
{
|
|
3225
3233
|
sx: {
|
|
@@ -3341,7 +3349,7 @@ import KeyboardArrowDownIcon2 from "@mui/icons-material/KeyboardArrowDown";
|
|
|
3341
3349
|
import SearchIcon3 from "@mui/icons-material/Search";
|
|
3342
3350
|
import AddIcon2 from "@mui/icons-material/Add";
|
|
3343
3351
|
import CheckIcon2 from "@mui/icons-material/Check";
|
|
3344
|
-
import { Fragment as Fragment3, jsx as jsx19, jsxs as
|
|
3352
|
+
import { Fragment as Fragment3, jsx as jsx19, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
3345
3353
|
var WorkspaceSelectorButton = ({
|
|
3346
3354
|
workspaces,
|
|
3347
3355
|
selectedWorkspaceId,
|
|
@@ -3373,9 +3381,9 @@ var WorkspaceSelectorButton = ({
|
|
|
3373
3381
|
if (!workspaces || workspaces.length === 0) {
|
|
3374
3382
|
return null;
|
|
3375
3383
|
}
|
|
3376
|
-
return /* @__PURE__ */
|
|
3377
|
-
/* @__PURE__ */
|
|
3378
|
-
selectedWorkspace ? /* @__PURE__ */ jsx19(Fragment3, { children: /* @__PURE__ */
|
|
3384
|
+
return /* @__PURE__ */ jsxs7(Fragment3, { children: [
|
|
3385
|
+
/* @__PURE__ */ jsxs7(Box4, { sx: { display: "flex", alignItems: "center", ...sx }, children: [
|
|
3386
|
+
selectedWorkspace ? /* @__PURE__ */ jsx19(Fragment3, { children: /* @__PURE__ */ jsxs7(
|
|
3379
3387
|
Link2,
|
|
3380
3388
|
{
|
|
3381
3389
|
underline: "hover",
|
|
@@ -3497,7 +3505,7 @@ var WorkspaceSelectorPanel = ({
|
|
|
3497
3505
|
borderRadius: 2
|
|
3498
3506
|
}
|
|
3499
3507
|
},
|
|
3500
|
-
children: /* @__PURE__ */
|
|
3508
|
+
children: /* @__PURE__ */ jsxs7(Box4, { children: [
|
|
3501
3509
|
/* @__PURE__ */ jsx19(Box4, { sx: { px: 2, pt: 2, pb: 1.5 }, children: /* @__PURE__ */ jsx19(
|
|
3502
3510
|
TextField3,
|
|
3503
3511
|
{
|
|
@@ -3511,7 +3519,7 @@ var WorkspaceSelectorPanel = ({
|
|
|
3511
3519
|
}
|
|
3512
3520
|
}
|
|
3513
3521
|
) }),
|
|
3514
|
-
/* @__PURE__ */ jsx19(Box4, { sx: { maxHeight: 400, overflowY: "auto" }, children: loading ? /* @__PURE__ */ jsx19(Box4, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx19(Typography4, { variant: "body2", color: "text.secondary", children: "Loading..." }) }) : filteredWorkspaces.length === 0 ? /* @__PURE__ */ jsx19(Box4, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx19(Typography4, { variant: "body2", color: "text.secondary", children: "No workspaces found" }) }) : /* @__PURE__ */ jsx19(List3, { dense: true, children: filteredWorkspaces.map((workspace) => /* @__PURE__ */
|
|
3522
|
+
/* @__PURE__ */ jsx19(Box4, { sx: { maxHeight: 400, overflowY: "auto" }, children: loading ? /* @__PURE__ */ jsx19(Box4, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx19(Typography4, { variant: "body2", color: "text.secondary", children: "Loading..." }) }) : filteredWorkspaces.length === 0 ? /* @__PURE__ */ jsx19(Box4, { sx: { p: 2, textAlign: "center" }, children: /* @__PURE__ */ jsx19(Typography4, { variant: "body2", color: "text.secondary", children: "No workspaces found" }) }) : /* @__PURE__ */ jsx19(List3, { dense: true, children: filteredWorkspaces.map((workspace) => /* @__PURE__ */ jsxs7(
|
|
3515
3523
|
ListItem2,
|
|
3516
3524
|
{
|
|
3517
3525
|
onClick: () => handleSelect(workspace.id),
|
|
@@ -3534,7 +3542,7 @@ var WorkspaceSelectorPanel = ({
|
|
|
3534
3542
|
/* @__PURE__ */ jsx19(
|
|
3535
3543
|
ListItemText3,
|
|
3536
3544
|
{
|
|
3537
|
-
primary: /* @__PURE__ */
|
|
3545
|
+
primary: /* @__PURE__ */ jsxs7(Box4, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
3538
3546
|
/* @__PURE__ */ jsx19(Typography4, { variant: "body2", fontWeight: 500, children: workspace.name }),
|
|
3539
3547
|
workspace.id === selectedWorkspaceId && /* @__PURE__ */ jsx19(CheckIcon2, { fontSize: "small", color: "primary" })
|
|
3540
3548
|
] }),
|
|
@@ -3775,7 +3783,7 @@ import { Box as Box6, Typography as Typography5, IconButton as IconButton4, Tool
|
|
|
3775
3783
|
import { styled as styled12 } from "@mui/material/styles";
|
|
3776
3784
|
import ChevronLeftIcon from "@mui/icons-material/ChevronLeft";
|
|
3777
3785
|
import ChevronRightIcon from "@mui/icons-material/ChevronRight";
|
|
3778
|
-
import { Fragment as Fragment4, jsx as jsx22, jsxs as
|
|
3786
|
+
import { Fragment as Fragment4, jsx as jsx22, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
3779
3787
|
var HeaderContainer = styled12(Box6, {
|
|
3780
3788
|
shouldForwardProp: (prop) => prop !== "isCollapsed"
|
|
3781
3789
|
})(({ theme: theme2, isCollapsed }) => ({
|
|
@@ -3816,7 +3824,7 @@ var SideNavHeader = React5.memo(({
|
|
|
3816
3824
|
collapsed = false
|
|
3817
3825
|
}) => {
|
|
3818
3826
|
const headerAriaLabel = ariaLabel || `${title} navigation header`;
|
|
3819
|
-
const brandingContent = /* @__PURE__ */
|
|
3827
|
+
const brandingContent = /* @__PURE__ */ jsxs8(Fragment4, { children: [
|
|
3820
3828
|
logo && /* @__PURE__ */ jsx22(
|
|
3821
3829
|
Box6,
|
|
3822
3830
|
{
|
|
@@ -3844,7 +3852,7 @@ var SideNavHeader = React5.memo(({
|
|
|
3844
3852
|
}
|
|
3845
3853
|
)
|
|
3846
3854
|
] });
|
|
3847
|
-
return /* @__PURE__ */
|
|
3855
|
+
return /* @__PURE__ */ jsxs8(
|
|
3848
3856
|
HeaderContainer,
|
|
3849
3857
|
{
|
|
3850
3858
|
"data-testid": "sidenav-header-content",
|
|
@@ -3918,7 +3926,7 @@ import {
|
|
|
3918
3926
|
Tooltip as Tooltip3
|
|
3919
3927
|
} from "@mui/material";
|
|
3920
3928
|
import { styled as styled13 } from "@mui/material/styles";
|
|
3921
|
-
import { jsx as jsx23, jsxs as
|
|
3929
|
+
import { jsx as jsx23, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
3922
3930
|
var StyledListItemButton2 = styled13(ListItemButton2, {
|
|
3923
3931
|
shouldForwardProp: (prop) => !["selected", "size", "iconPosition", "isCollapsed"].includes(prop)
|
|
3924
3932
|
})(({ theme: theme2, selected, size: size3, isCollapsed }) => {
|
|
@@ -4035,7 +4043,7 @@ var NavigationItem = React6.memo(({
|
|
|
4035
4043
|
}
|
|
4036
4044
|
}
|
|
4037
4045
|
);
|
|
4038
|
-
const buttonContent = /* @__PURE__ */
|
|
4046
|
+
const buttonContent = /* @__PURE__ */ jsxs9(
|
|
4039
4047
|
StyledListItemButton2,
|
|
4040
4048
|
{
|
|
4041
4049
|
selected,
|
|
@@ -4161,7 +4169,7 @@ import React8 from "react";
|
|
|
4161
4169
|
import { Box as Box8, Typography as Typography6, Tooltip as Tooltip4 } from "@mui/material";
|
|
4162
4170
|
import { styled as styled14 } from "@mui/material/styles";
|
|
4163
4171
|
import PowerIcon from "@mui/icons-material/Power";
|
|
4164
|
-
import { jsx as jsx25, jsxs as
|
|
4172
|
+
import { jsx as jsx25, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
4165
4173
|
var StatusPill = styled14(Box8, {
|
|
4166
4174
|
shouldForwardProp: (prop) => !["variant", "interactive"].includes(prop)
|
|
4167
4175
|
})(({ theme: theme2, variant = "info", interactive }) => {
|
|
@@ -4236,7 +4244,7 @@ var ConnectionStatus = React8.memo(({
|
|
|
4236
4244
|
onClick();
|
|
4237
4245
|
}
|
|
4238
4246
|
};
|
|
4239
|
-
const statusContent = /* @__PURE__ */
|
|
4247
|
+
const statusContent = /* @__PURE__ */ jsxs10(
|
|
4240
4248
|
StatusPill,
|
|
4241
4249
|
{
|
|
4242
4250
|
role: "status",
|
|
@@ -4295,7 +4303,7 @@ import React9 from "react";
|
|
|
4295
4303
|
import { Box as Box9, Avatar as Avatar3, Typography as Typography7, Button as Button5, IconButton as IconButton5, Tooltip as Tooltip5 } from "@mui/material";
|
|
4296
4304
|
import { styled as styled15 } from "@mui/material/styles";
|
|
4297
4305
|
import LogoutIcon from "@mui/icons-material/Logout";
|
|
4298
|
-
import { jsx as jsx26, jsxs as
|
|
4306
|
+
import { jsx as jsx26, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
4299
4307
|
var AccountContainer = styled15(Box9, {
|
|
4300
4308
|
shouldForwardProp: (prop) => !["layout", "isCompact"].includes(prop)
|
|
4301
4309
|
})(({ theme: theme2, layout = "horizontal", isCompact }) => ({
|
|
@@ -4337,7 +4345,7 @@ var AccountSection = React9.memo(({
|
|
|
4337
4345
|
const initials = user.initials || deriveInitials(user.name);
|
|
4338
4346
|
const avatarSrc = user.avatarUrl;
|
|
4339
4347
|
if (compact) {
|
|
4340
|
-
return /* @__PURE__ */
|
|
4348
|
+
return /* @__PURE__ */ jsxs11(AccountContainer, { layout, isCompact: true, "aria-label": "Account section", children: [
|
|
4341
4349
|
/* @__PURE__ */ jsx26(
|
|
4342
4350
|
Tooltip5,
|
|
4343
4351
|
{
|
|
@@ -4381,7 +4389,7 @@ var AccountSection = React9.memo(({
|
|
|
4381
4389
|
) })
|
|
4382
4390
|
] });
|
|
4383
4391
|
}
|
|
4384
|
-
return /* @__PURE__ */
|
|
4392
|
+
return /* @__PURE__ */ jsxs11(AccountContainer, { layout, isCompact: false, "aria-label": "Account section", children: [
|
|
4385
4393
|
/* @__PURE__ */ jsx26(
|
|
4386
4394
|
Avatar3,
|
|
4387
4395
|
{
|
|
@@ -4398,7 +4406,7 @@ var AccountSection = React9.memo(({
|
|
|
4398
4406
|
children: initials
|
|
4399
4407
|
}
|
|
4400
4408
|
),
|
|
4401
|
-
/* @__PURE__ */
|
|
4409
|
+
/* @__PURE__ */ jsxs11(
|
|
4402
4410
|
Box9,
|
|
4403
4411
|
{
|
|
4404
4412
|
sx: {
|
|
@@ -4542,7 +4550,7 @@ import {
|
|
|
4542
4550
|
Divider
|
|
4543
4551
|
} from "@mui/material";
|
|
4544
4552
|
import { styled as styled18 } from "@mui/material/styles";
|
|
4545
|
-
import { Fragment as Fragment5, jsx as jsx29, jsxs as
|
|
4553
|
+
import { Fragment as Fragment5, jsx as jsx29, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
4546
4554
|
var StyledMenu = styled18(MuiMenu)(({ theme: theme2 }) => ({
|
|
4547
4555
|
"& .MuiPaper-root": {
|
|
4548
4556
|
borderRadius: 8,
|
|
@@ -4583,8 +4591,8 @@ var MenuItem = ({
|
|
|
4583
4591
|
disabled = false,
|
|
4584
4592
|
divider = false
|
|
4585
4593
|
}) => {
|
|
4586
|
-
return /* @__PURE__ */
|
|
4587
|
-
/* @__PURE__ */
|
|
4594
|
+
return /* @__PURE__ */ jsxs12(Fragment5, { children: [
|
|
4595
|
+
/* @__PURE__ */ jsxs12(MuiMenuItem, { onClick, disabled, children: [
|
|
4588
4596
|
icon && /* @__PURE__ */ jsx29(ListItemIcon3, { children: icon }),
|
|
4589
4597
|
/* @__PURE__ */ jsx29(ListItemText5, { children: label })
|
|
4590
4598
|
] }),
|
|
@@ -4648,7 +4656,7 @@ var Link3 = ({ underline = "hover", ...props }) => {
|
|
|
4648
4656
|
};
|
|
4649
4657
|
|
|
4650
4658
|
// src/components/navigation/Selector.tsx
|
|
4651
|
-
import { Fragment as Fragment6, jsx as jsx32, jsxs as
|
|
4659
|
+
import { Fragment as Fragment6, jsx as jsx32, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
4652
4660
|
var Selector = ({
|
|
4653
4661
|
options: options2,
|
|
4654
4662
|
selectedId,
|
|
@@ -4681,12 +4689,12 @@ var Selector = ({
|
|
|
4681
4689
|
onSelect(id);
|
|
4682
4690
|
handleClose();
|
|
4683
4691
|
};
|
|
4684
|
-
const defaultRenderSelected = (option) => /* @__PURE__ */
|
|
4692
|
+
const defaultRenderSelected = (option) => /* @__PURE__ */ jsxs13(Box10, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
4685
4693
|
option.avatar ? /* @__PURE__ */ jsx32(Avatar4, { src: option.avatar, sx: { width: 20, height: 20 } }) : option.icon ? option.icon : /* @__PURE__ */ jsx32(Avatar4, { sx: { width: 20, height: 20, bgcolor: theme2.palette.primary.main, fontSize: "0.7rem" }, children: option.name.charAt(0) }),
|
|
4686
4694
|
/* @__PURE__ */ jsx32(Typography8, { variant: "body2", children: option.name })
|
|
4687
4695
|
] });
|
|
4688
4696
|
if (compact) {
|
|
4689
|
-
return /* @__PURE__ */
|
|
4697
|
+
return /* @__PURE__ */ jsxs13(Fragment6, { children: [
|
|
4690
4698
|
/* @__PURE__ */ jsx32(IconButton, { onClick: handleOpen, size: "small", children: selectedOption ? selectedOption.avatar ? /* @__PURE__ */ jsx32(Avatar4, { src: selectedOption.avatar, sx: { width: 32, height: 32 } }) : /* @__PURE__ */ jsx32(Avatar4, { sx: { width: 32, height: 32, bgcolor: theme2.palette.primary.main }, children: selectedOption.name.charAt(0) }) : /* @__PURE__ */ jsx32(Avatar4, { sx: { width: 32, height: 32, bgcolor: theme2.palette.grey[400] }, children: "?" }) }),
|
|
4691
4699
|
/* @__PURE__ */ jsx32(
|
|
4692
4700
|
Menu4,
|
|
@@ -4697,7 +4705,7 @@ var Selector = ({
|
|
|
4697
4705
|
PaperProps: {
|
|
4698
4706
|
sx: { width, maxHeight: 600, mt: 1 }
|
|
4699
4707
|
},
|
|
4700
|
-
children: loading ? /* @__PURE__ */ jsx32(Box10, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ jsx32(CircularProgress, { size: 24 }) }) : /* @__PURE__ */
|
|
4708
|
+
children: loading ? /* @__PURE__ */ jsx32(Box10, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ jsx32(CircularProgress, { size: 24 }) }) : /* @__PURE__ */ jsxs13(Fragment6, { children: [
|
|
4701
4709
|
options2.length > 5 && /* @__PURE__ */ jsx32(Box10, { sx: { p: 1, borderBottom: `1px solid ${theme2.palette.grey[200]}` }, children: /* @__PURE__ */ jsx32(
|
|
4702
4710
|
TextField,
|
|
4703
4711
|
{
|
|
@@ -4711,8 +4719,8 @@ var Selector = ({
|
|
|
4711
4719
|
}
|
|
4712
4720
|
}
|
|
4713
4721
|
) }),
|
|
4714
|
-
/* @__PURE__ */
|
|
4715
|
-
filteredOptions.map((option) => /* @__PURE__ */
|
|
4722
|
+
/* @__PURE__ */ jsxs13(List5, { sx: { maxHeight: 400, overflow: "auto" }, children: [
|
|
4723
|
+
filteredOptions.map((option) => /* @__PURE__ */ jsxs13(
|
|
4716
4724
|
ListItemButton3,
|
|
4717
4725
|
{
|
|
4718
4726
|
selected: option.id === selectedId,
|
|
@@ -4744,8 +4752,8 @@ var Selector = ({
|
|
|
4744
4752
|
)
|
|
4745
4753
|
] });
|
|
4746
4754
|
}
|
|
4747
|
-
return /* @__PURE__ */
|
|
4748
|
-
/* @__PURE__ */
|
|
4755
|
+
return /* @__PURE__ */ jsxs13(Fragment6, { children: [
|
|
4756
|
+
/* @__PURE__ */ jsxs13(Box10, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: [
|
|
4749
4757
|
selectedOption ? renderSelected ? /* @__PURE__ */ jsx32(Link3, { onClick: handleOpen, underline: "hover", children: renderSelected(selectedOption) }) : /* @__PURE__ */ jsx32(Link3, { onClick: handleOpen, underline: "hover", children: defaultRenderSelected(selectedOption) }) : /* @__PURE__ */ jsx32(Typography8, { variant: "body2", color: "text.secondary", children: placeholder }),
|
|
4750
4758
|
/* @__PURE__ */ jsx32(IconButton, { onClick: handleOpen, size: "small", sx: { p: 0.2, ml: 0.5 }, children: /* @__PURE__ */ jsx32(KeyboardArrowDownIcon3, { fontSize: "small" }) })
|
|
4751
4759
|
] }),
|
|
@@ -4758,7 +4766,7 @@ var Selector = ({
|
|
|
4758
4766
|
PaperProps: {
|
|
4759
4767
|
sx: { width, maxHeight: 600, mt: 1 }
|
|
4760
4768
|
},
|
|
4761
|
-
children: loading ? /* @__PURE__ */ jsx32(Box10, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ jsx32(CircularProgress, { size: 24 }) }) : /* @__PURE__ */
|
|
4769
|
+
children: loading ? /* @__PURE__ */ jsx32(Box10, { sx: { display: "flex", justifyContent: "center", p: 2 }, children: /* @__PURE__ */ jsx32(CircularProgress, { size: 24 }) }) : /* @__PURE__ */ jsxs13(Fragment6, { children: [
|
|
4762
4770
|
options2.length > 5 && /* @__PURE__ */ jsx32(Box10, { sx: { p: 1, borderBottom: `1px solid ${theme2.palette.grey[200]}` }, children: /* @__PURE__ */ jsx32(
|
|
4763
4771
|
TextField,
|
|
4764
4772
|
{
|
|
@@ -4772,8 +4780,8 @@ var Selector = ({
|
|
|
4772
4780
|
}
|
|
4773
4781
|
}
|
|
4774
4782
|
) }),
|
|
4775
|
-
/* @__PURE__ */
|
|
4776
|
-
filteredOptions.map((option) => /* @__PURE__ */
|
|
4783
|
+
/* @__PURE__ */ jsxs13(List5, { sx: { maxHeight: 400, overflow: "auto" }, children: [
|
|
4784
|
+
filteredOptions.map((option) => /* @__PURE__ */ jsxs13(
|
|
4777
4785
|
ListItemButton3,
|
|
4778
4786
|
{
|
|
4779
4787
|
selected: option.id === selectedId,
|
|
@@ -4922,7 +4930,7 @@ import Box11 from "@mui/material/Box";
|
|
|
4922
4930
|
import Tooltip6 from "@mui/material/Tooltip";
|
|
4923
4931
|
import CheckIcon3 from "@mui/icons-material/Check";
|
|
4924
4932
|
import ContentCopyIcon from "@mui/icons-material/ContentCopy";
|
|
4925
|
-
import { jsx as jsx35, jsxs as
|
|
4933
|
+
import { jsx as jsx35, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4926
4934
|
var COPY_FEEDBACK_MS = 1200;
|
|
4927
4935
|
var CopyChip = ({
|
|
4928
4936
|
text,
|
|
@@ -4950,7 +4958,7 @@ var CopyChip = ({
|
|
|
4950
4958
|
if (timerRef.current != null) clearTimeout(timerRef.current);
|
|
4951
4959
|
timerRef.current = setTimeout(() => setCopied(false), COPY_FEEDBACK_MS);
|
|
4952
4960
|
};
|
|
4953
|
-
return /* @__PURE__ */ jsx35(Tooltip6, { title: copied ? tooltipCopiedLabel : tooltipLabel, placement: "top", children: /* @__PURE__ */
|
|
4961
|
+
return /* @__PURE__ */ jsx35(Tooltip6, { title: copied ? tooltipCopiedLabel : tooltipLabel, placement: "top", children: /* @__PURE__ */ jsxs14(
|
|
4954
4962
|
Box11,
|
|
4955
4963
|
{
|
|
4956
4964
|
component: "button",
|
|
@@ -5044,7 +5052,7 @@ import Snackbar from "@mui/material/Snackbar";
|
|
|
5044
5052
|
import Alert from "@mui/material/Alert";
|
|
5045
5053
|
import ContentCopyIcon2 from "@mui/icons-material/ContentCopy";
|
|
5046
5054
|
import { styled as styled24 } from "@mui/material/styles";
|
|
5047
|
-
import { Fragment as Fragment7, jsx as jsx37, jsxs as
|
|
5055
|
+
import { Fragment as Fragment7, jsx as jsx37, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
5048
5056
|
var IDContainer = styled24(Box12)(() => ({
|
|
5049
5057
|
display: "inline-flex",
|
|
5050
5058
|
alignItems: "center",
|
|
@@ -5080,9 +5088,9 @@ var IDBlock = ({
|
|
|
5080
5088
|
const handleSnackbarClose = () => {
|
|
5081
5089
|
setSnackbar((prev) => ({ ...prev, open: false }));
|
|
5082
5090
|
};
|
|
5083
|
-
return /* @__PURE__ */
|
|
5084
|
-
/* @__PURE__ */
|
|
5085
|
-
/* @__PURE__ */
|
|
5091
|
+
return /* @__PURE__ */ jsxs15(Fragment7, { children: [
|
|
5092
|
+
/* @__PURE__ */ jsxs15(IDContainer, { children: [
|
|
5093
|
+
/* @__PURE__ */ jsxs15(
|
|
5086
5094
|
Typography9,
|
|
5087
5095
|
{
|
|
5088
5096
|
variant: "body2",
|
|
@@ -5210,7 +5218,7 @@ import MuiAlert from "@mui/material/Alert";
|
|
|
5210
5218
|
import { AlertTitle as MuiAlertTitle } from "@mui/material";
|
|
5211
5219
|
import MuiSnackbar from "@mui/material/Snackbar";
|
|
5212
5220
|
import { styled as styled27 } from "@mui/material/styles";
|
|
5213
|
-
import { jsx as jsx40, jsxs as
|
|
5221
|
+
import { jsx as jsx40, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
5214
5222
|
var StyledAlert = styled27(MuiAlert)({
|
|
5215
5223
|
borderRadius: 8,
|
|
5216
5224
|
"&.MuiAlert-filled": {
|
|
@@ -5223,7 +5231,7 @@ var Alert2 = ({
|
|
|
5223
5231
|
children,
|
|
5224
5232
|
...props
|
|
5225
5233
|
}) => {
|
|
5226
|
-
return /* @__PURE__ */
|
|
5234
|
+
return /* @__PURE__ */ jsxs16(StyledAlert, { severity, ...props, children: [
|
|
5227
5235
|
title && /* @__PURE__ */ jsx40(MuiAlertTitle, { children: title }),
|
|
5228
5236
|
children
|
|
5229
5237
|
] });
|
|
@@ -5293,14 +5301,14 @@ var Snackbar2 = ({
|
|
|
5293
5301
|
|
|
5294
5302
|
// src/components/feedback/EmptyState.tsx
|
|
5295
5303
|
import { Box as Box13, Typography as Typography10 } from "@mui/material";
|
|
5296
|
-
import { jsx as jsx41, jsxs as
|
|
5304
|
+
import { jsx as jsx41, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
5297
5305
|
var EmptyState = ({
|
|
5298
5306
|
title = "No items found",
|
|
5299
5307
|
description,
|
|
5300
5308
|
icon,
|
|
5301
5309
|
action
|
|
5302
5310
|
}) => {
|
|
5303
|
-
return /* @__PURE__ */
|
|
5311
|
+
return /* @__PURE__ */ jsxs17(
|
|
5304
5312
|
Box13,
|
|
5305
5313
|
{
|
|
5306
5314
|
sx: {
|
|
@@ -5334,13 +5342,13 @@ var EmptyState = ({
|
|
|
5334
5342
|
|
|
5335
5343
|
// src/components/feedback/Loading.tsx
|
|
5336
5344
|
import { Box as Box14, CircularProgress as CircularProgress3, Typography as Typography11 } from "@mui/material";
|
|
5337
|
-
import { jsx as jsx42, jsxs as
|
|
5345
|
+
import { jsx as jsx42, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
5338
5346
|
var Loading = ({
|
|
5339
5347
|
message = "Loading...",
|
|
5340
5348
|
size: size3 = 40,
|
|
5341
5349
|
fullScreen = false
|
|
5342
5350
|
}) => {
|
|
5343
|
-
const content = /* @__PURE__ */
|
|
5351
|
+
const content = /* @__PURE__ */ jsxs18(
|
|
5344
5352
|
Box14,
|
|
5345
5353
|
{
|
|
5346
5354
|
sx: {
|
|
@@ -5373,13 +5381,13 @@ var Loading = ({
|
|
|
5373
5381
|
|
|
5374
5382
|
// src/components/feedback/AppLoading.tsx
|
|
5375
5383
|
import { Box as Box15, CircularProgress as CircularProgress4, Typography as Typography12 } from "@mui/material";
|
|
5376
|
-
import { jsx as jsx43, jsxs as
|
|
5384
|
+
import { jsx as jsx43, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
5377
5385
|
var AppLoading = ({
|
|
5378
5386
|
message = "Loading...",
|
|
5379
5387
|
logo = "/icons/logo.png",
|
|
5380
5388
|
sx = {}
|
|
5381
5389
|
}) => {
|
|
5382
|
-
return /* @__PURE__ */
|
|
5390
|
+
return /* @__PURE__ */ jsxs19(
|
|
5383
5391
|
Box15,
|
|
5384
5392
|
{
|
|
5385
5393
|
sx: [
|
|
@@ -5438,8 +5446,8 @@ import { Stack as Stack3, styled as styled28, svgIconClasses } from "@mui/materi
|
|
|
5438
5446
|
// src/components/icons/CereIcon.tsx
|
|
5439
5447
|
import { memo } from "react";
|
|
5440
5448
|
import { SvgIcon } from "@mui/material";
|
|
5441
|
-
import { jsx as jsx45, jsxs as
|
|
5442
|
-
var CereIcon = memo((props) => /* @__PURE__ */
|
|
5449
|
+
import { jsx as jsx45, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
5450
|
+
var CereIcon = memo((props) => /* @__PURE__ */ jsxs20(SvgIcon, { ...props, viewBox: "0 0 24 28", children: [
|
|
5443
5451
|
/* @__PURE__ */ jsx45("g", { clipPath: "url(#a)", children: /* @__PURE__ */ jsx45(
|
|
5444
5452
|
"path",
|
|
5445
5453
|
{
|
|
@@ -5451,7 +5459,7 @@ var CereIcon = memo((props) => /* @__PURE__ */ jsxs21(SvgIcon, { ...props, viewB
|
|
|
5451
5459
|
] }));
|
|
5452
5460
|
|
|
5453
5461
|
// src/components/layout/Logo.tsx
|
|
5454
|
-
import { jsx as jsx46, jsxs as
|
|
5462
|
+
import { jsx as jsx46, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
5455
5463
|
var sizesMap = {
|
|
5456
5464
|
large: 38,
|
|
5457
5465
|
medium: 32,
|
|
@@ -5462,7 +5470,7 @@ var Container = styled28(Stack3)({
|
|
|
5462
5470
|
fontSize: "inherit"
|
|
5463
5471
|
}
|
|
5464
5472
|
});
|
|
5465
|
-
var Logo = ({ children, size: size3 = "medium", icon = /* @__PURE__ */ jsx46(CereIcon, { color: "primary" }) }) => /* @__PURE__ */
|
|
5473
|
+
var Logo = ({ children, size: size3 = "medium", icon = /* @__PURE__ */ jsx46(CereIcon, { color: "primary" }) }) => /* @__PURE__ */ jsxs21(Container, { direction: "row", alignItems: "center", spacing: 2, fontSize: sizesMap[size3], children: [
|
|
5466
5474
|
icon,
|
|
5467
5475
|
children && /* @__PURE__ */ jsx46(Stack3, { children })
|
|
5468
5476
|
] });
|
|
@@ -5481,7 +5489,7 @@ import {
|
|
|
5481
5489
|
CircularProgress as CircularProgress6
|
|
5482
5490
|
} from "@mui/material";
|
|
5483
5491
|
import CloseIcon from "@mui/icons-material/Close";
|
|
5484
|
-
import { Fragment as Fragment8, jsx as jsx47, jsxs as
|
|
5492
|
+
import { Fragment as Fragment8, jsx as jsx47, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
5485
5493
|
var Dialog = ({
|
|
5486
5494
|
open,
|
|
5487
5495
|
title,
|
|
@@ -5505,7 +5513,7 @@ var Dialog = ({
|
|
|
5505
5513
|
if (e) e.stopPropagation();
|
|
5506
5514
|
onClose();
|
|
5507
5515
|
};
|
|
5508
|
-
return /* @__PURE__ */
|
|
5516
|
+
return /* @__PURE__ */ jsxs22(
|
|
5509
5517
|
MuiDialog,
|
|
5510
5518
|
{
|
|
5511
5519
|
open,
|
|
@@ -5522,9 +5530,9 @@ var Dialog = ({
|
|
|
5522
5530
|
...dialogProps.PaperProps
|
|
5523
5531
|
},
|
|
5524
5532
|
children: [
|
|
5525
|
-
/* @__PURE__ */
|
|
5533
|
+
/* @__PURE__ */ jsxs22(DialogTitle, { sx: { display: "flex", justifyContent: "space-between", alignItems: "center", p: 2 }, children: [
|
|
5526
5534
|
/* @__PURE__ */ jsx47(Box16, { sx: { display: "flex", alignItems: "center" }, children: typeof title === "string" ? /* @__PURE__ */ jsx47(Typography13, { variant: "h6", children: title }) : title }),
|
|
5527
|
-
/* @__PURE__ */
|
|
5535
|
+
/* @__PURE__ */ jsxs22(Box16, { sx: { display: "flex", alignItems: "center" }, children: [
|
|
5528
5536
|
headerAction,
|
|
5529
5537
|
/* @__PURE__ */ jsx47(
|
|
5530
5538
|
IconButton7,
|
|
@@ -5540,9 +5548,9 @@ var Dialog = ({
|
|
|
5540
5548
|
] }),
|
|
5541
5549
|
dividers && /* @__PURE__ */ jsx47(Divider2, {}),
|
|
5542
5550
|
/* @__PURE__ */ jsx47(DialogContent, { dividers, children }),
|
|
5543
|
-
(showActions || customActions) && /* @__PURE__ */
|
|
5551
|
+
(showActions || customActions) && /* @__PURE__ */ jsxs22(Fragment8, { children: [
|
|
5544
5552
|
dividers && /* @__PURE__ */ jsx47(Divider2, {}),
|
|
5545
|
-
/* @__PURE__ */ jsx47(DialogActions, { children: customActions || /* @__PURE__ */
|
|
5553
|
+
/* @__PURE__ */ jsx47(DialogActions, { children: customActions || /* @__PURE__ */ jsxs22(Fragment8, { children: [
|
|
5546
5554
|
/* @__PURE__ */ jsx47(
|
|
5547
5555
|
Button6,
|
|
5548
5556
|
{
|
|
@@ -5595,7 +5603,7 @@ function resolveDrawerWidth(width, theme2, defaultWidth) {
|
|
|
5595
5603
|
}
|
|
5596
5604
|
|
|
5597
5605
|
// src/components/layout/Drawer.tsx
|
|
5598
|
-
import { Fragment as Fragment9, jsx as jsx48, jsxs as
|
|
5606
|
+
import { Fragment as Fragment9, jsx as jsx48, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
5599
5607
|
var StyledDrawer2 = styled29(MuiDrawer, {
|
|
5600
5608
|
shouldForwardProp: (prop) => prop !== "width" && prop !== "miniWidth" && prop !== "collapsed" && prop !== "topOffset"
|
|
5601
5609
|
})(({ theme: theme2, width, miniWidth = 72, collapsed, topOffset = 0 }) => {
|
|
@@ -5645,7 +5653,7 @@ var Drawer2 = ({
|
|
|
5645
5653
|
const finalWidth = width ?? defaultWidth;
|
|
5646
5654
|
const shouldShowClose = showCloseButton ?? (variant === "temporary" || variant === "persistent");
|
|
5647
5655
|
const hasHeader = title || header || shouldShowClose || tabs;
|
|
5648
|
-
return /* @__PURE__ */
|
|
5656
|
+
return /* @__PURE__ */ jsxs23(
|
|
5649
5657
|
StyledDrawer2,
|
|
5650
5658
|
{
|
|
5651
5659
|
width: finalWidth,
|
|
@@ -5670,7 +5678,7 @@ var Drawer2 = ({
|
|
|
5670
5678
|
},
|
|
5671
5679
|
...props,
|
|
5672
5680
|
children: [
|
|
5673
|
-
hasHeader && /* @__PURE__ */
|
|
5681
|
+
hasHeader && /* @__PURE__ */ jsxs23(Fragment9, { children: [
|
|
5674
5682
|
/* @__PURE__ */ jsx48(
|
|
5675
5683
|
Box17,
|
|
5676
5684
|
{
|
|
@@ -5683,7 +5691,7 @@ var Drawer2 = ({
|
|
|
5683
5691
|
borderBottom: 1,
|
|
5684
5692
|
borderColor: "divider"
|
|
5685
5693
|
},
|
|
5686
|
-
children: header || /* @__PURE__ */
|
|
5694
|
+
children: header || /* @__PURE__ */ jsxs23(Fragment9, { children: [
|
|
5687
5695
|
/* @__PURE__ */ jsx48(Box17, { sx: { flex: 1 }, children: typeof title === "string" ? /* @__PURE__ */ jsx48(Typography14, { variant: "h6", children: title }) : title }),
|
|
5688
5696
|
shouldShowClose && onClose && /* @__PURE__ */ jsx48(
|
|
5689
5697
|
IconButton8,
|
|
@@ -5733,7 +5741,7 @@ var Drawer2 = ({
|
|
|
5733
5741
|
children
|
|
5734
5742
|
}
|
|
5735
5743
|
),
|
|
5736
|
-
footer && /* @__PURE__ */
|
|
5744
|
+
footer && /* @__PURE__ */ jsxs23(Fragment9, { children: [
|
|
5737
5745
|
/* @__PURE__ */ jsx48(Divider3, {}),
|
|
5738
5746
|
/* @__PURE__ */ jsx48(
|
|
5739
5747
|
Box17,
|
|
@@ -5755,10 +5763,10 @@ var Drawer2 = ({
|
|
|
5755
5763
|
// src/components/layout/MetaField.tsx
|
|
5756
5764
|
import Box18 from "@mui/material/Box";
|
|
5757
5765
|
import Typography15 from "@mui/material/Typography";
|
|
5758
|
-
import { jsx as jsx49, jsxs as
|
|
5766
|
+
import { jsx as jsx49, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
5759
5767
|
var MetaField = ({ label, value, mono = false, title }) => {
|
|
5760
5768
|
const resolvedTitle = title ?? (typeof value === "string" ? value : void 0);
|
|
5761
|
-
return /* @__PURE__ */
|
|
5769
|
+
return /* @__PURE__ */ jsxs24(Box18, { sx: { display: "flex", flexDirection: "column", gap: 0.25, minWidth: 0 }, children: [
|
|
5762
5770
|
/* @__PURE__ */ jsx49(
|
|
5763
5771
|
Typography15,
|
|
5764
5772
|
{
|
|
@@ -5797,7 +5805,7 @@ import Box19 from "@mui/material/Box";
|
|
|
5797
5805
|
import IconButton9 from "@mui/material/IconButton";
|
|
5798
5806
|
import ChevronLeftIcon2 from "@mui/icons-material/ChevronLeft";
|
|
5799
5807
|
import ChevronRightIcon2 from "@mui/icons-material/ChevronRight";
|
|
5800
|
-
import { jsx as jsx50, jsxs as
|
|
5808
|
+
import { jsx as jsx50, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
5801
5809
|
var EDGE_TOLERANCE_PX = 4;
|
|
5802
5810
|
var ScrollableRow = ({
|
|
5803
5811
|
children,
|
|
@@ -5837,7 +5845,7 @@ var ScrollableRow = ({
|
|
|
5837
5845
|
if (!el) return;
|
|
5838
5846
|
el.scrollBy({ left: dir * Math.max(minNudge, el.clientWidth * nudgeFraction), behavior: "smooth" });
|
|
5839
5847
|
};
|
|
5840
|
-
return /* @__PURE__ */
|
|
5848
|
+
return /* @__PURE__ */ jsxs25(Box19, { sx: { position: "relative", flex: 1, minWidth: 0 }, children: [
|
|
5841
5849
|
/* @__PURE__ */ jsx50(
|
|
5842
5850
|
Box19,
|
|
5843
5851
|
{
|
|
@@ -5896,7 +5904,7 @@ var ScrollableRow = ({
|
|
|
5896
5904
|
// src/components/layout/SectionRow.tsx
|
|
5897
5905
|
import Box20 from "@mui/material/Box";
|
|
5898
5906
|
import Typography16 from "@mui/material/Typography";
|
|
5899
|
-
import { jsx as jsx51, jsxs as
|
|
5907
|
+
import { jsx as jsx51, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
5900
5908
|
function SectionRow({
|
|
5901
5909
|
title,
|
|
5902
5910
|
subtitle,
|
|
@@ -5905,8 +5913,8 @@ function SectionRow({
|
|
|
5905
5913
|
rightLabel,
|
|
5906
5914
|
children
|
|
5907
5915
|
}) {
|
|
5908
|
-
return /* @__PURE__ */
|
|
5909
|
-
/* @__PURE__ */
|
|
5916
|
+
return /* @__PURE__ */ jsxs26(Box20, { component: "section", sx: { mb: 4 }, children: [
|
|
5917
|
+
/* @__PURE__ */ jsxs26(
|
|
5910
5918
|
Box20,
|
|
5911
5919
|
{
|
|
5912
5920
|
component: "header",
|
|
@@ -5918,7 +5926,7 @@ function SectionRow({
|
|
|
5918
5926
|
mb: 1.5
|
|
5919
5927
|
},
|
|
5920
5928
|
children: [
|
|
5921
|
-
/* @__PURE__ */
|
|
5929
|
+
/* @__PURE__ */ jsxs26(Box20, { sx: { minWidth: 0 }, children: [
|
|
5922
5930
|
/* @__PURE__ */ jsx51(Typography16, { component: "h2", variant: "h6", sx: { m: 0 }, children: title }),
|
|
5923
5931
|
subtitle && /* @__PURE__ */ jsx51(Typography16, { variant: "caption", sx: { color: "text.secondary" }, children: subtitle })
|
|
5924
5932
|
] }),
|
|
@@ -5931,14 +5939,16 @@ function SectionRow({
|
|
|
5931
5939
|
}
|
|
5932
5940
|
|
|
5933
5941
|
// src/components/layout/Carousel.tsx
|
|
5934
|
-
import { useEffect as useEffect5, useState as useState10 } from "react";
|
|
5942
|
+
import { useEffect as useEffect5, useMemo, useState as useState10 } from "react";
|
|
5935
5943
|
import Box21 from "@mui/material/Box";
|
|
5936
5944
|
import IconButton10 from "@mui/material/IconButton";
|
|
5937
5945
|
import Typography17 from "@mui/material/Typography";
|
|
5938
5946
|
import ChevronLeftIcon3 from "@mui/icons-material/ChevronLeft";
|
|
5939
5947
|
import ChevronRightIcon3 from "@mui/icons-material/ChevronRight";
|
|
5948
|
+
import { alpha } from "@mui/material/styles";
|
|
5940
5949
|
import useEmblaCarousel from "embla-carousel-react";
|
|
5941
|
-
import
|
|
5950
|
+
import Autoplay from "embla-carousel-autoplay";
|
|
5951
|
+
import { Fragment as Fragment10, jsx as jsx52, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
5942
5952
|
var pad2 = (n) => String(n).padStart(2, "0");
|
|
5943
5953
|
function Carousel({
|
|
5944
5954
|
slides,
|
|
@@ -5955,33 +5965,49 @@ function Carousel({
|
|
|
5955
5965
|
onSelect,
|
|
5956
5966
|
arrowSx,
|
|
5957
5967
|
dotColor,
|
|
5958
|
-
dotActiveColor
|
|
5968
|
+
dotActiveColor,
|
|
5969
|
+
emblaOptions
|
|
5959
5970
|
}) {
|
|
5960
|
-
const
|
|
5971
|
+
const plugins = useMemo(
|
|
5972
|
+
() => autoplay ? [
|
|
5973
|
+
Autoplay({
|
|
5974
|
+
delay: autoplayDelayMs,
|
|
5975
|
+
stopOnInteraction: true,
|
|
5976
|
+
stopOnMouseEnter: pauseOnHover
|
|
5977
|
+
})
|
|
5978
|
+
] : [],
|
|
5979
|
+
[autoplay, autoplayDelayMs, pauseOnHover]
|
|
5980
|
+
);
|
|
5981
|
+
const [emblaRef, emblaApi] = useEmblaCarousel(
|
|
5982
|
+
{ loop: true, align: "start", ...emblaOptions },
|
|
5983
|
+
plugins
|
|
5984
|
+
);
|
|
5961
5985
|
const [selected, setSelected] = useState10(0);
|
|
5962
|
-
const [
|
|
5986
|
+
const [snapCount, setSnapCount] = useState10(0);
|
|
5963
5987
|
const count = slides.length;
|
|
5964
5988
|
useEffect5(() => {
|
|
5965
5989
|
if (!emblaApi) return;
|
|
5990
|
+
const refreshSnaps = () => {
|
|
5991
|
+
setSnapCount(emblaApi.scrollSnapList().length);
|
|
5992
|
+
};
|
|
5966
5993
|
const handleSelect = () => {
|
|
5967
5994
|
const next = emblaApi.selectedScrollSnap();
|
|
5968
5995
|
setSelected(next);
|
|
5969
5996
|
onSelect?.(next);
|
|
5970
5997
|
};
|
|
5971
5998
|
emblaApi.on("select", handleSelect);
|
|
5999
|
+
emblaApi.on("reInit", refreshSnaps);
|
|
6000
|
+
refreshSnaps();
|
|
5972
6001
|
handleSelect();
|
|
5973
6002
|
return () => {
|
|
5974
6003
|
emblaApi.off("select", handleSelect);
|
|
6004
|
+
emblaApi.off("reInit", refreshSnaps);
|
|
5975
6005
|
};
|
|
5976
6006
|
}, [emblaApi, onSelect]);
|
|
5977
|
-
useEffect5(() => {
|
|
5978
|
-
if (!emblaApi || !autoplay || paused || count <= 1) return;
|
|
5979
|
-
const id = window.setInterval(() => emblaApi.scrollNext(), autoplayDelayMs);
|
|
5980
|
-
return () => window.clearInterval(id);
|
|
5981
|
-
}, [emblaApi, autoplay, paused, count, autoplayDelayMs]);
|
|
5982
6007
|
if (count === 0) return null;
|
|
5983
6008
|
const showControls = count > 1;
|
|
5984
6009
|
const slideBasis = `${100 / Math.max(1, slidesPerView)}%`;
|
|
6010
|
+
const dotCount = snapCount > 0 ? snapCount : count;
|
|
5985
6011
|
const arrowBaseSx = {
|
|
5986
6012
|
position: "absolute",
|
|
5987
6013
|
top: "50%",
|
|
@@ -5990,14 +6016,12 @@ function Carousel({
|
|
|
5990
6016
|
boxShadow: 1,
|
|
5991
6017
|
"&:hover": { bgcolor: "background.paper" }
|
|
5992
6018
|
};
|
|
5993
|
-
return /* @__PURE__ */
|
|
6019
|
+
return /* @__PURE__ */ jsxs27(
|
|
5994
6020
|
Box21,
|
|
5995
6021
|
{
|
|
5996
6022
|
role: "region",
|
|
5997
6023
|
"aria-roledescription": "carousel",
|
|
5998
6024
|
"aria-label": ariaLabel,
|
|
5999
|
-
onPointerEnter: pauseOnHover ? () => setPaused(true) : void 0,
|
|
6000
|
-
onPointerLeave: pauseOnHover ? () => setPaused(false) : void 0,
|
|
6001
6025
|
sx: { position: "relative", width: "100%" },
|
|
6002
6026
|
children: [
|
|
6003
6027
|
/* @__PURE__ */ jsx52(Box21, { ref: emblaRef, sx: { overflow: "hidden" }, children: /* @__PURE__ */ jsx52(Box21, { sx: { display: "flex" }, children: slides.map((item, i) => /* @__PURE__ */ jsx52(
|
|
@@ -6011,7 +6035,7 @@ function Carousel({
|
|
|
6011
6035
|
},
|
|
6012
6036
|
getKey ? getKey(item, i) : i
|
|
6013
6037
|
)) }) }),
|
|
6014
|
-
showControls && showArrows && /* @__PURE__ */
|
|
6038
|
+
showControls && showArrows && /* @__PURE__ */ jsxs27(Fragment10, { children: [
|
|
6015
6039
|
/* @__PURE__ */ jsx52(
|
|
6016
6040
|
IconButton10,
|
|
6017
6041
|
{
|
|
@@ -6031,25 +6055,25 @@ function Carousel({
|
|
|
6031
6055
|
}
|
|
6032
6056
|
)
|
|
6033
6057
|
] }),
|
|
6034
|
-
showControls && showCounter && /* @__PURE__ */
|
|
6058
|
+
showControls && showCounter && /* @__PURE__ */ jsxs27(
|
|
6035
6059
|
Typography17,
|
|
6036
6060
|
{
|
|
6037
6061
|
variant: "caption",
|
|
6038
|
-
sx: {
|
|
6062
|
+
sx: (theme2) => ({
|
|
6039
6063
|
position: "absolute",
|
|
6040
6064
|
top: 12,
|
|
6041
6065
|
right: 16,
|
|
6042
6066
|
px: 1,
|
|
6043
6067
|
py: 0.25,
|
|
6044
6068
|
borderRadius: 1,
|
|
6045
|
-
bgcolor:
|
|
6069
|
+
bgcolor: alpha(theme2.palette.common.black, 0.5),
|
|
6046
6070
|
color: "common.white",
|
|
6047
6071
|
letterSpacing: 1
|
|
6048
|
-
},
|
|
6072
|
+
}),
|
|
6049
6073
|
children: [
|
|
6050
6074
|
pad2(selected + 1),
|
|
6051
6075
|
" / ",
|
|
6052
|
-
pad2(
|
|
6076
|
+
pad2(dotCount)
|
|
6053
6077
|
]
|
|
6054
6078
|
}
|
|
6055
6079
|
),
|
|
@@ -6067,7 +6091,7 @@ function Carousel({
|
|
|
6067
6091
|
justifyContent: "center",
|
|
6068
6092
|
gap: 1
|
|
6069
6093
|
},
|
|
6070
|
-
children:
|
|
6094
|
+
children: Array.from({ length: dotCount }).map((_, i) => /* @__PURE__ */ jsx52(
|
|
6071
6095
|
Box21,
|
|
6072
6096
|
{
|
|
6073
6097
|
component: "button",
|
|
@@ -6087,7 +6111,7 @@ function Carousel({
|
|
|
6087
6111
|
transition: "width 0.2s ease, background 0.2s ease"
|
|
6088
6112
|
})
|
|
6089
6113
|
},
|
|
6090
|
-
|
|
6114
|
+
i
|
|
6091
6115
|
))
|
|
6092
6116
|
}
|
|
6093
6117
|
)
|
|
@@ -6155,7 +6179,7 @@ function GradientSurface({ index, children, sx }) {
|
|
|
6155
6179
|
// src/components/layout/DefinitionRow.tsx
|
|
6156
6180
|
import Box23 from "@mui/material/Box";
|
|
6157
6181
|
import Typography18 from "@mui/material/Typography";
|
|
6158
|
-
import { jsx as jsx54, jsxs as
|
|
6182
|
+
import { jsx as jsx54, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
6159
6183
|
function DefinitionRow({
|
|
6160
6184
|
icon,
|
|
6161
6185
|
label,
|
|
@@ -6165,7 +6189,7 @@ function DefinitionRow({
|
|
|
6165
6189
|
dense = false,
|
|
6166
6190
|
divider = true
|
|
6167
6191
|
}) {
|
|
6168
|
-
return /* @__PURE__ */
|
|
6192
|
+
return /* @__PURE__ */ jsxs28(
|
|
6169
6193
|
Box23,
|
|
6170
6194
|
{
|
|
6171
6195
|
"data-density": dense ? "dense" : "normal",
|
|
@@ -6177,16 +6201,16 @@ function DefinitionRow({
|
|
|
6177
6201
|
...divider && {
|
|
6178
6202
|
borderBottom: "1px solid",
|
|
6179
6203
|
borderColor: "divider",
|
|
6180
|
-
"&:last-
|
|
6204
|
+
"&:last-child": { borderBottom: "none" }
|
|
6181
6205
|
}
|
|
6182
6206
|
},
|
|
6183
6207
|
children: [
|
|
6184
6208
|
icon && /* @__PURE__ */ jsx54(Box23, { sx: { display: "flex", alignItems: "center", color: "text.secondary" }, children: icon }),
|
|
6185
|
-
/* @__PURE__ */
|
|
6209
|
+
/* @__PURE__ */ jsxs28(Box23, { sx: { minWidth: 0, flex: 1 }, children: [
|
|
6186
6210
|
/* @__PURE__ */ jsx54(Typography18, { variant: "body2", sx: { fontWeight: 500, lineHeight: 1.2 }, children: label }),
|
|
6187
6211
|
sublabel && /* @__PURE__ */ jsx54(Typography18, { variant: "caption", sx: { color: "text.secondary" }, children: sublabel })
|
|
6188
6212
|
] }),
|
|
6189
|
-
(value || hint) && /* @__PURE__ */
|
|
6213
|
+
(value || hint) && /* @__PURE__ */ jsxs28(
|
|
6190
6214
|
Box23,
|
|
6191
6215
|
{
|
|
6192
6216
|
sx: {
|
|
@@ -6214,7 +6238,7 @@ import Box24 from "@mui/material/Box";
|
|
|
6214
6238
|
import Typography19 from "@mui/material/Typography";
|
|
6215
6239
|
import Slide from "@mui/material/Slide";
|
|
6216
6240
|
import CloseIcon3 from "@mui/icons-material/Close";
|
|
6217
|
-
import { jsx as jsx55, jsxs as
|
|
6241
|
+
import { jsx as jsx55, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
6218
6242
|
var WIDTH_PX = {
|
|
6219
6243
|
sm: 420,
|
|
6220
6244
|
md: 640,
|
|
@@ -6252,23 +6276,29 @@ function PanelDialog({
|
|
|
6252
6276
|
const paperBaseSx = {
|
|
6253
6277
|
width: WIDTH_PX[width],
|
|
6254
6278
|
maxWidth: "100%",
|
|
6279
|
+
// Lay paper children out as a flex column so the body can `flex: 1` and
|
|
6280
|
+
// own its own scroll region.
|
|
6281
|
+
display: "flex",
|
|
6282
|
+
flexDirection: "column",
|
|
6255
6283
|
...isRight && {
|
|
6256
6284
|
position: "absolute",
|
|
6257
6285
|
right: 0,
|
|
6258
6286
|
top: 0,
|
|
6259
6287
|
bottom: 0,
|
|
6260
6288
|
margin: 0,
|
|
6261
|
-
|
|
6262
|
-
|
|
6289
|
+
// Use dynamic viewport units so mobile browsers (esp. iOS Safari) don't
|
|
6290
|
+
// pop the layout when the URL bar shows/hides.
|
|
6291
|
+
maxHeight: "100dvh",
|
|
6292
|
+
height: "100dvh",
|
|
6263
6293
|
borderRadius: 0
|
|
6264
6294
|
}
|
|
6265
6295
|
};
|
|
6266
|
-
return /* @__PURE__ */
|
|
6296
|
+
return /* @__PURE__ */ jsxs29(
|
|
6267
6297
|
MuiDialog2,
|
|
6268
6298
|
{
|
|
6269
6299
|
open,
|
|
6270
6300
|
onClose,
|
|
6271
|
-
TransitionComponent,
|
|
6301
|
+
slots: TransitionComponent ? { transition: TransitionComponent } : void 0,
|
|
6272
6302
|
slotProps: {
|
|
6273
6303
|
paper: {
|
|
6274
6304
|
"aria-label": accessibleName,
|
|
@@ -6277,7 +6307,7 @@ function PanelDialog({
|
|
|
6277
6307
|
...backdropSx ? { backdrop: { sx: backdropSx } } : {}
|
|
6278
6308
|
},
|
|
6279
6309
|
children: [
|
|
6280
|
-
!hideHeader && /* @__PURE__ */
|
|
6310
|
+
!hideHeader && /* @__PURE__ */ jsxs29(
|
|
6281
6311
|
Box24,
|
|
6282
6312
|
{
|
|
6283
6313
|
sx: {
|
|
@@ -6292,7 +6322,7 @@ function PanelDialog({
|
|
|
6292
6322
|
},
|
|
6293
6323
|
children: [
|
|
6294
6324
|
/* @__PURE__ */ jsx55(Box24, { sx: { display: "flex", alignItems: "center", minWidth: 0 }, children: typeof title === "string" ? /* @__PURE__ */ jsx55(Typography19, { variant: "h6", noWrap: true, children: title }) : title }),
|
|
6295
|
-
/* @__PURE__ */
|
|
6325
|
+
/* @__PURE__ */ jsxs29(Box24, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
6296
6326
|
headerActions,
|
|
6297
6327
|
/* @__PURE__ */ jsx55(IconButton11, { "aria-label": "Close", onClick: onClose, edge: "end", size: "small", children: /* @__PURE__ */ jsx55(CloseIcon3, { fontSize: "small" }) })
|
|
6298
6328
|
] })
|
|
@@ -6339,7 +6369,7 @@ var StyledCard = styled30(MuiCard, {
|
|
|
6339
6369
|
borderRadius: 8,
|
|
6340
6370
|
transition: "all 0.2s ease-in-out",
|
|
6341
6371
|
...dsVariant === "standard" && {
|
|
6342
|
-
boxShadow:
|
|
6372
|
+
boxShadow: theme2.shadows[1],
|
|
6343
6373
|
backgroundColor: theme2.palette.background.paper
|
|
6344
6374
|
},
|
|
6345
6375
|
...dsVariant === "tinted" && {
|
|
@@ -6357,7 +6387,7 @@ var StyledCard = styled30(MuiCard, {
|
|
|
6357
6387
|
},
|
|
6358
6388
|
...hoverable && {
|
|
6359
6389
|
"&:hover": {
|
|
6360
|
-
boxShadow:
|
|
6390
|
+
boxShadow: theme2.shadows[4],
|
|
6361
6391
|
transform: "translateY(-2px)"
|
|
6362
6392
|
}
|
|
6363
6393
|
}
|
|
@@ -6401,7 +6431,7 @@ import {
|
|
|
6401
6431
|
ListItemSecondaryAction
|
|
6402
6432
|
} from "@mui/material";
|
|
6403
6433
|
import { styled as styled31 } from "@mui/material/styles";
|
|
6404
|
-
import { jsx as jsx57, jsxs as
|
|
6434
|
+
import { jsx as jsx57, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
6405
6435
|
var List6 = (props) => {
|
|
6406
6436
|
return /* @__PURE__ */ jsx57(MuiList, { ...props });
|
|
6407
6437
|
};
|
|
@@ -6426,7 +6456,7 @@ var ListItem4 = ({
|
|
|
6426
6456
|
children,
|
|
6427
6457
|
...props
|
|
6428
6458
|
}) => {
|
|
6429
|
-
return /* @__PURE__ */
|
|
6459
|
+
return /* @__PURE__ */ jsxs30(StyledListItem, { hoverable, ...props, children: [
|
|
6430
6460
|
icon && /* @__PURE__ */ jsx57(ListItemIcon4, { children: icon }),
|
|
6431
6461
|
(primary || secondary) && /* @__PURE__ */ jsx57(
|
|
6432
6462
|
ListItemText7,
|
|
@@ -6561,7 +6591,7 @@ import {
|
|
|
6561
6591
|
} from "@mui/material";
|
|
6562
6592
|
import ExpandMoreIcon from "@mui/icons-material/ExpandMore";
|
|
6563
6593
|
import { styled as styled35 } from "@mui/material/styles";
|
|
6564
|
-
import { jsx as jsx61, jsxs as
|
|
6594
|
+
import { jsx as jsx61, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
6565
6595
|
var StyledAccordion = styled35(MuiAccordion)(({ theme: theme2 }) => ({
|
|
6566
6596
|
borderRadius: 8,
|
|
6567
6597
|
boxShadow: "none",
|
|
@@ -6592,7 +6622,7 @@ var Accordion = ({
|
|
|
6592
6622
|
defaultExpanded = false,
|
|
6593
6623
|
...props
|
|
6594
6624
|
}) => {
|
|
6595
|
-
return /* @__PURE__ */
|
|
6625
|
+
return /* @__PURE__ */ jsxs31(StyledAccordion, { defaultExpanded, ...props, children: [
|
|
6596
6626
|
/* @__PURE__ */ jsx61(StyledAccordionSummary, { expandIcon: /* @__PURE__ */ jsx61(ExpandMoreIcon, {}), children: title }),
|
|
6597
6627
|
/* @__PURE__ */ jsx61(StyledAccordionDetails, { children })
|
|
6598
6628
|
] });
|
|
@@ -6680,7 +6710,7 @@ import Typography22 from "@mui/material/Typography";
|
|
|
6680
6710
|
import IconButton12 from "@mui/material/IconButton";
|
|
6681
6711
|
import Divider5 from "@mui/material/Divider";
|
|
6682
6712
|
import MoreHorizIcon from "@mui/icons-material/MoreHoriz";
|
|
6683
|
-
import { jsx as jsx66, jsxs as
|
|
6713
|
+
import { jsx as jsx66, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
6684
6714
|
var EntityHeader = ({
|
|
6685
6715
|
title,
|
|
6686
6716
|
subtitle,
|
|
@@ -6699,8 +6729,8 @@ var EntityHeader = ({
|
|
|
6699
6729
|
const { label, count } = primaryAction;
|
|
6700
6730
|
return count !== void 0 ? `${label} (${count})` : label;
|
|
6701
6731
|
};
|
|
6702
|
-
return /* @__PURE__ */
|
|
6703
|
-
/* @__PURE__ */
|
|
6732
|
+
return /* @__PURE__ */ jsxs32(Box26, { children: [
|
|
6733
|
+
/* @__PURE__ */ jsxs32(
|
|
6704
6734
|
Box26,
|
|
6705
6735
|
{
|
|
6706
6736
|
sx: {
|
|
@@ -6712,7 +6742,7 @@ var EntityHeader = ({
|
|
|
6712
6742
|
gap: 1
|
|
6713
6743
|
},
|
|
6714
6744
|
children: [
|
|
6715
|
-
/* @__PURE__ */
|
|
6745
|
+
/* @__PURE__ */ jsxs32(
|
|
6716
6746
|
Box26,
|
|
6717
6747
|
{
|
|
6718
6748
|
sx: {
|
|
@@ -6722,7 +6752,7 @@ var EntityHeader = ({
|
|
|
6722
6752
|
flexWrap: "wrap"
|
|
6723
6753
|
},
|
|
6724
6754
|
children: [
|
|
6725
|
-
/* @__PURE__ */
|
|
6755
|
+
/* @__PURE__ */ jsxs32(
|
|
6726
6756
|
Box26,
|
|
6727
6757
|
{
|
|
6728
6758
|
sx: {
|
|
@@ -6767,7 +6797,7 @@ var EntityHeader = ({
|
|
|
6767
6797
|
]
|
|
6768
6798
|
}
|
|
6769
6799
|
),
|
|
6770
|
-
/* @__PURE__ */
|
|
6800
|
+
/* @__PURE__ */ jsxs32(
|
|
6771
6801
|
Box26,
|
|
6772
6802
|
{
|
|
6773
6803
|
sx: {
|
|
@@ -6863,7 +6893,7 @@ function useControlledExpand(controlledExpanded, onToggle, defaultExpanded = fal
|
|
|
6863
6893
|
}
|
|
6864
6894
|
|
|
6865
6895
|
// src/components/layout/DeploymentDashboardCard/DeploymentDashboardCard.tsx
|
|
6866
|
-
import { Fragment as Fragment11, jsx as jsx67, jsxs as
|
|
6896
|
+
import { Fragment as Fragment11, jsx as jsx67, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
6867
6897
|
var ENTITY_LABELS = {
|
|
6868
6898
|
workspace: "Workspace",
|
|
6869
6899
|
stream: "Stream",
|
|
@@ -6907,7 +6937,7 @@ var StatusDot2 = styled39(Box27, {
|
|
|
6907
6937
|
backgroundColor: status ? STATUS_DOT_COLORS[status] ?? "transparent" : "transparent",
|
|
6908
6938
|
flexShrink: 0
|
|
6909
6939
|
}));
|
|
6910
|
-
var EntityChip = ({ entityType, color }) => /* @__PURE__ */
|
|
6940
|
+
var EntityChip = ({ entityType, color }) => /* @__PURE__ */ jsxs33(
|
|
6911
6941
|
Box27,
|
|
6912
6942
|
{
|
|
6913
6943
|
sx: {
|
|
@@ -6941,10 +6971,10 @@ var EntityChip = ({ entityType, color }) => /* @__PURE__ */ jsxs34(
|
|
|
6941
6971
|
]
|
|
6942
6972
|
}
|
|
6943
6973
|
);
|
|
6944
|
-
var CapacityBar = ({ value, indented = false }) => /* @__PURE__ */
|
|
6945
|
-
/* @__PURE__ */
|
|
6974
|
+
var CapacityBar = ({ value, indented = false }) => /* @__PURE__ */ jsxs33(Box27, { sx: { pl: indented ? "40px" : 0, pr: "20px", py: 1 }, children: [
|
|
6975
|
+
/* @__PURE__ */ jsxs33(Box27, { sx: { display: "flex", justifyContent: "space-between", mb: 1 }, children: [
|
|
6946
6976
|
/* @__PURE__ */ jsx67(Typography23, { variant: "body2", sx: { color: deploymentSurfaceTokens.textPrimary }, children: "Capacity" }),
|
|
6947
|
-
/* @__PURE__ */
|
|
6977
|
+
/* @__PURE__ */ jsxs33(Typography23, { variant: "body2", sx: { color: deploymentSurfaceTokens.accentBlue }, children: [
|
|
6948
6978
|
value,
|
|
6949
6979
|
"%"
|
|
6950
6980
|
] })
|
|
@@ -6989,7 +7019,7 @@ var getActionButtonStyles = (action) => {
|
|
|
6989
7019
|
};
|
|
6990
7020
|
return { ...baseStyles, ...variantStyles };
|
|
6991
7021
|
};
|
|
6992
|
-
var CardAction = ({ action }) => /* @__PURE__ */
|
|
7022
|
+
var CardAction = ({ action }) => /* @__PURE__ */ jsxs33(
|
|
6993
7023
|
Box27,
|
|
6994
7024
|
{
|
|
6995
7025
|
component: action.onClick ? "button" : "span",
|
|
@@ -7034,7 +7064,7 @@ var DeploymentDashboardCard = ({
|
|
|
7034
7064
|
return Math.min(100, Math.max(0, capacity2));
|
|
7035
7065
|
};
|
|
7036
7066
|
const capacityClamped = getClampedCapacity(capacity);
|
|
7037
|
-
return /* @__PURE__ */
|
|
7067
|
+
return /* @__PURE__ */ jsxs33(
|
|
7038
7068
|
Paper2,
|
|
7039
7069
|
{
|
|
7040
7070
|
className,
|
|
@@ -7051,7 +7081,7 @@ var DeploymentDashboardCard = ({
|
|
|
7051
7081
|
gap: 0
|
|
7052
7082
|
},
|
|
7053
7083
|
children: [
|
|
7054
|
-
/* @__PURE__ */
|
|
7084
|
+
/* @__PURE__ */ jsxs33(
|
|
7055
7085
|
Box27,
|
|
7056
7086
|
{
|
|
7057
7087
|
sx: {
|
|
@@ -7061,8 +7091,8 @@ var DeploymentDashboardCard = ({
|
|
|
7061
7091
|
width: "100%"
|
|
7062
7092
|
},
|
|
7063
7093
|
children: [
|
|
7064
|
-
/* @__PURE__ */
|
|
7065
|
-
/* @__PURE__ */
|
|
7094
|
+
/* @__PURE__ */ jsxs33(Box27, { sx: { display: "flex", flexDirection: "column", gap: 0.5, minWidth: 0 }, children: [
|
|
7095
|
+
/* @__PURE__ */ jsxs33(Box27, { sx: { display: "flex", gap: 1, alignItems: "center" }, children: [
|
|
7066
7096
|
expandable ? /* @__PURE__ */ jsx67(
|
|
7067
7097
|
IconButton13,
|
|
7068
7098
|
{
|
|
@@ -7086,7 +7116,7 @@ var DeploymentDashboardCard = ({
|
|
|
7086
7116
|
),
|
|
7087
7117
|
idDisplay != null && /* @__PURE__ */ jsx67(IDBlock, { id: idDisplay, label: "ID", entityType, onCopy: onCopyId })
|
|
7088
7118
|
] }),
|
|
7089
|
-
(createdAt != null || updatedAt != null) && /* @__PURE__ */
|
|
7119
|
+
(createdAt != null || updatedAt != null) && /* @__PURE__ */ jsxs33(
|
|
7090
7120
|
Box27,
|
|
7091
7121
|
{
|
|
7092
7122
|
sx: {
|
|
@@ -7096,11 +7126,11 @@ var DeploymentDashboardCard = ({
|
|
|
7096
7126
|
color: deploymentSurfaceTokens.textSecondary
|
|
7097
7127
|
},
|
|
7098
7128
|
children: [
|
|
7099
|
-
createdAt != null && /* @__PURE__ */
|
|
7129
|
+
createdAt != null && /* @__PURE__ */ jsxs33(Typography23, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
|
|
7100
7130
|
"Created: ",
|
|
7101
7131
|
createdAt
|
|
7102
7132
|
] }),
|
|
7103
|
-
updatedAt != null && /* @__PURE__ */
|
|
7133
|
+
updatedAt != null && /* @__PURE__ */ jsxs33(Typography23, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
|
|
7104
7134
|
"Last Updated: ",
|
|
7105
7135
|
updatedAt
|
|
7106
7136
|
] })
|
|
@@ -7109,7 +7139,7 @@ var DeploymentDashboardCard = ({
|
|
|
7109
7139
|
),
|
|
7110
7140
|
capacityClamped !== void 0 && /* @__PURE__ */ jsx67(CapacityBar, { value: capacityClamped, indented: expandable })
|
|
7111
7141
|
] }),
|
|
7112
|
-
/* @__PURE__ */
|
|
7142
|
+
/* @__PURE__ */ jsxs33(Box27, { sx: { display: "flex", gap: 1, alignItems: "center", flexShrink: 0 }, children: [
|
|
7113
7143
|
statusIndicator != null && /* @__PURE__ */ jsx67(StatusDot2, { status: statusIndicator, "aria-hidden": true }),
|
|
7114
7144
|
/* @__PURE__ */ jsx67(CardActionList, { actions })
|
|
7115
7145
|
] })
|
|
@@ -7125,7 +7155,7 @@ var DeploymentDashboardCard = ({
|
|
|
7125
7155
|
// src/components/layout/DeploymentEntityContextMenu/DeploymentEntityContextMenu.tsx
|
|
7126
7156
|
import { Menu as Menu5, MenuItem as MenuItem2, Switch as Switch2, Divider as Divider6, ListItemIcon as ListItemIcon5, ListItemText as ListItemText8 } from "@mui/material";
|
|
7127
7157
|
import { styled as styled40 } from "@mui/material/styles";
|
|
7128
|
-
import { Fragment as Fragment12, jsx as jsx68, jsxs as
|
|
7158
|
+
import { Fragment as Fragment12, jsx as jsx68, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
7129
7159
|
var StyledMenu2 = styled40(Menu5)({
|
|
7130
7160
|
"& .MuiPaper-root": {
|
|
7131
7161
|
borderRadius: 4,
|
|
@@ -7223,7 +7253,7 @@ var DeploymentEntityContextMenu = ({
|
|
|
7223
7253
|
enableChecked = false,
|
|
7224
7254
|
onEnableChange
|
|
7225
7255
|
}) => {
|
|
7226
|
-
return /* @__PURE__ */
|
|
7256
|
+
return /* @__PURE__ */ jsxs34(
|
|
7227
7257
|
StyledMenu2,
|
|
7228
7258
|
{
|
|
7229
7259
|
anchorEl,
|
|
@@ -7238,7 +7268,7 @@ var DeploymentEntityContextMenu = ({
|
|
|
7238
7268
|
return /* @__PURE__ */ jsx68(StyledDivider2, {}, item.id);
|
|
7239
7269
|
}
|
|
7240
7270
|
if (item.type === "toggle") {
|
|
7241
|
-
return /* @__PURE__ */
|
|
7271
|
+
return /* @__PURE__ */ jsxs34(ToggleMenuItem, { disableRipple: true, children: [
|
|
7242
7272
|
onEnableChange && /* @__PURE__ */ jsx68(
|
|
7243
7273
|
EnableSwitch,
|
|
7244
7274
|
{
|
|
@@ -7252,7 +7282,7 @@ var DeploymentEntityContextMenu = ({
|
|
|
7252
7282
|
] }, item.id);
|
|
7253
7283
|
}
|
|
7254
7284
|
const Row = item.highlighted ? HighlightedMenuItem : StyledMenuItem;
|
|
7255
|
-
return /* @__PURE__ */
|
|
7285
|
+
return /* @__PURE__ */ jsxs34(
|
|
7256
7286
|
Row,
|
|
7257
7287
|
{
|
|
7258
7288
|
onClick: () => {
|
|
@@ -7267,9 +7297,9 @@ var DeploymentEntityContextMenu = ({
|
|
|
7267
7297
|
item.id
|
|
7268
7298
|
);
|
|
7269
7299
|
}),
|
|
7270
|
-
enableToggle && /* @__PURE__ */
|
|
7300
|
+
enableToggle && /* @__PURE__ */ jsxs34(Fragment12, { children: [
|
|
7271
7301
|
/* @__PURE__ */ jsx68(StyledDivider2, {}),
|
|
7272
|
-
/* @__PURE__ */
|
|
7302
|
+
/* @__PURE__ */ jsxs34(ToggleMenuItem, { disableRipple: true, children: [
|
|
7273
7303
|
onEnableChange && /* @__PURE__ */ jsx68(
|
|
7274
7304
|
EnableSwitch,
|
|
7275
7305
|
{
|
|
@@ -7369,8 +7399,8 @@ var contextMenuItems = {
|
|
|
7369
7399
|
|
|
7370
7400
|
// src/components/layout/DeploymentDashboardTree/DeploymentDashboardTree.tsx
|
|
7371
7401
|
import { Box as Box28 } from "@mui/material";
|
|
7372
|
-
import { styled as styled41, alpha } from "@mui/material/styles";
|
|
7373
|
-
import { jsx as jsx70, jsxs as
|
|
7402
|
+
import { styled as styled41, alpha as alpha2 } from "@mui/material/styles";
|
|
7403
|
+
import { jsx as jsx70, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
7374
7404
|
var TREE_SP = {
|
|
7375
7405
|
/** Vertical gap between sibling rows (Figma S / sp-8) */
|
|
7376
7406
|
rowGap: 8,
|
|
@@ -7406,8 +7436,8 @@ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
|
|
|
7406
7436
|
);
|
|
7407
7437
|
const entityColor = deploymentEntityColors[node.entityType] ?? deploymentEntityColors.workspace;
|
|
7408
7438
|
const railOpacity = RAIL_OPACITY[node.entityType] ?? 0.5;
|
|
7409
|
-
const railColor =
|
|
7410
|
-
const renderedChildren = hasChildren && expanded ? /* @__PURE__ */
|
|
7439
|
+
const railColor = alpha2(entityColor, railOpacity);
|
|
7440
|
+
const renderedChildren = hasChildren && expanded ? /* @__PURE__ */ jsxs35(Box28, { sx: { display: "flex", gap: `${TREE_SP.railGap}px` }, children: [
|
|
7411
7441
|
/* @__PURE__ */ jsx70(Rail, { railColor, "aria-hidden": true, "data-rail": true }),
|
|
7412
7442
|
/* @__PURE__ */ jsx70(
|
|
7413
7443
|
Box28,
|
|
@@ -7524,7 +7554,7 @@ import CheckCircleOutlineIcon from "@mui/icons-material/CheckCircleOutline";
|
|
|
7524
7554
|
import ForkRightIcon from "@mui/icons-material/ForkRight";
|
|
7525
7555
|
import CallMergeIcon from "@mui/icons-material/CallMerge";
|
|
7526
7556
|
import { useTheme as useTheme5 } from "@mui/material";
|
|
7527
|
-
import { jsx as jsx72, jsxs as
|
|
7557
|
+
import { jsx as jsx72, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
7528
7558
|
var WORKFLOW_NODE_LABELS = {
|
|
7529
7559
|
start: "Start",
|
|
7530
7560
|
input: "Input",
|
|
@@ -7589,7 +7619,7 @@ var SideConnectorDot = ({
|
|
|
7589
7619
|
})
|
|
7590
7620
|
}
|
|
7591
7621
|
);
|
|
7592
|
-
var NodeTypeBadge = ({ nodeType, badgeBackground, badgeBorder, badgeText, icon, label }) => /* @__PURE__ */
|
|
7622
|
+
var NodeTypeBadge = ({ nodeType, badgeBackground, badgeBorder, badgeText, icon, label }) => /* @__PURE__ */ jsxs36(
|
|
7593
7623
|
Box30,
|
|
7594
7624
|
{
|
|
7595
7625
|
sx: {
|
|
@@ -7639,7 +7669,7 @@ var WorkflowNode = ({
|
|
|
7639
7669
|
const nodeTokens = theme2.palette.workflow.node[nodeType];
|
|
7640
7670
|
const chrome = theme2.palette.workflow.chrome;
|
|
7641
7671
|
const accentColor = nodeTokens.accent;
|
|
7642
|
-
return /* @__PURE__ */
|
|
7672
|
+
return /* @__PURE__ */ jsxs36(
|
|
7643
7673
|
Paper3,
|
|
7644
7674
|
{
|
|
7645
7675
|
elevation: 0,
|
|
@@ -7665,7 +7695,7 @@ var WorkflowNode = ({
|
|
|
7665
7695
|
children: [
|
|
7666
7696
|
showSideDots && /* @__PURE__ */ jsx72(SideConnectorDot, { accentColor, side: "left" }),
|
|
7667
7697
|
showSideDots && /* @__PURE__ */ jsx72(SideConnectorDot, { accentColor, side: "right" }),
|
|
7668
|
-
/* @__PURE__ */
|
|
7698
|
+
/* @__PURE__ */ jsxs36(
|
|
7669
7699
|
Box30,
|
|
7670
7700
|
{
|
|
7671
7701
|
sx: {
|
|
@@ -7679,7 +7709,7 @@ var WorkflowNode = ({
|
|
|
7679
7709
|
minWidth: 0
|
|
7680
7710
|
},
|
|
7681
7711
|
children: [
|
|
7682
|
-
/* @__PURE__ */
|
|
7712
|
+
/* @__PURE__ */ jsxs36(Box30, { sx: { minWidth: 0, flex: 1 }, children: [
|
|
7683
7713
|
/* @__PURE__ */ jsx72(
|
|
7684
7714
|
Typography24,
|
|
7685
7715
|
{
|
|
@@ -7740,12 +7770,12 @@ import {
|
|
|
7740
7770
|
IconButton as IconButton14,
|
|
7741
7771
|
InputBase,
|
|
7742
7772
|
Typography as Typography25,
|
|
7743
|
-
alpha as
|
|
7773
|
+
alpha as alpha3
|
|
7744
7774
|
} from "@mui/material";
|
|
7745
7775
|
import CloseIcon4 from "@mui/icons-material/Close";
|
|
7746
7776
|
import CancelIcon from "@mui/icons-material/Cancel";
|
|
7747
7777
|
import { useTheme as useTheme6 } from "@mui/material/styles";
|
|
7748
|
-
import { jsx as jsx73, jsxs as
|
|
7778
|
+
import { jsx as jsx73, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
7749
7779
|
var WorkflowTopBar = ({
|
|
7750
7780
|
title = "Agent visualization flow chart",
|
|
7751
7781
|
executionId,
|
|
@@ -7763,7 +7793,7 @@ var WorkflowTopBar = ({
|
|
|
7763
7793
|
...boxProps
|
|
7764
7794
|
}) => {
|
|
7765
7795
|
const chrome = useTheme6().palette.workflow.chrome;
|
|
7766
|
-
return /* @__PURE__ */
|
|
7796
|
+
return /* @__PURE__ */ jsxs37(
|
|
7767
7797
|
Box31,
|
|
7768
7798
|
{
|
|
7769
7799
|
sx: [
|
|
@@ -7777,7 +7807,7 @@ var WorkflowTopBar = ({
|
|
|
7777
7807
|
],
|
|
7778
7808
|
...boxProps,
|
|
7779
7809
|
children: [
|
|
7780
|
-
/* @__PURE__ */
|
|
7810
|
+
/* @__PURE__ */ jsxs37(
|
|
7781
7811
|
Box31,
|
|
7782
7812
|
{
|
|
7783
7813
|
sx: {
|
|
@@ -7802,7 +7832,7 @@ var WorkflowTopBar = ({
|
|
|
7802
7832
|
children: title
|
|
7803
7833
|
}
|
|
7804
7834
|
),
|
|
7805
|
-
/* @__PURE__ */
|
|
7835
|
+
/* @__PURE__ */ jsxs37(
|
|
7806
7836
|
Box31,
|
|
7807
7837
|
{
|
|
7808
7838
|
sx: {
|
|
@@ -7814,7 +7844,7 @@ var WorkflowTopBar = ({
|
|
|
7814
7844
|
minWidth: 0
|
|
7815
7845
|
},
|
|
7816
7846
|
children: [
|
|
7817
|
-
/* @__PURE__ */
|
|
7847
|
+
/* @__PURE__ */ jsxs37(
|
|
7818
7848
|
Box31,
|
|
7819
7849
|
{
|
|
7820
7850
|
sx: {
|
|
@@ -7830,7 +7860,7 @@ var WorkflowTopBar = ({
|
|
|
7830
7860
|
minHeight: 56
|
|
7831
7861
|
},
|
|
7832
7862
|
children: [
|
|
7833
|
-
/* @__PURE__ */
|
|
7863
|
+
/* @__PURE__ */ jsxs37(Box31, { sx: { flex: 1, minWidth: 0 }, children: [
|
|
7834
7864
|
/* @__PURE__ */ jsx73(
|
|
7835
7865
|
Typography25,
|
|
7836
7866
|
{
|
|
@@ -7901,7 +7931,7 @@ var WorkflowTopBar = ({
|
|
|
7901
7931
|
sx: {
|
|
7902
7932
|
width: 30,
|
|
7903
7933
|
height: 30,
|
|
7904
|
-
backgroundColor:
|
|
7934
|
+
backgroundColor: alpha3(chrome.closeBtnBg, 0.28),
|
|
7905
7935
|
color: chrome.iconColor
|
|
7906
7936
|
},
|
|
7907
7937
|
children: /* @__PURE__ */ jsx73(CloseIcon4, { fontSize: "small" })
|
|
@@ -7926,14 +7956,14 @@ import {
|
|
|
7926
7956
|
IconButton as IconButton15,
|
|
7927
7957
|
Paper as Paper4,
|
|
7928
7958
|
Typography as Typography26,
|
|
7929
|
-
alpha as
|
|
7959
|
+
alpha as alpha4,
|
|
7930
7960
|
useTheme as useTheme7
|
|
7931
7961
|
} from "@mui/material";
|
|
7932
7962
|
import CloseIcon5 from "@mui/icons-material/Close";
|
|
7933
7963
|
import ContentCopyOutlinedIcon from "@mui/icons-material/ContentCopyOutlined";
|
|
7934
|
-
import { Fragment as Fragment13, jsx as jsx74, jsxs as
|
|
7964
|
+
import { Fragment as Fragment13, jsx as jsx74, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
7935
7965
|
var INSPECTOR_WIDTH = 320;
|
|
7936
|
-
var InfoBlock = ({ label, value, mutedColor }) => /* @__PURE__ */
|
|
7966
|
+
var InfoBlock = ({ label, value, mutedColor }) => /* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
|
|
7937
7967
|
/* @__PURE__ */ jsx74(Typography26, { variant: "body2", sx: { color: mutedColor }, children: label }),
|
|
7938
7968
|
/* @__PURE__ */ jsx74(
|
|
7939
7969
|
Typography26,
|
|
@@ -7972,7 +8002,7 @@ var WorkflowSideInspector = ({
|
|
|
7972
8002
|
return null;
|
|
7973
8003
|
}
|
|
7974
8004
|
const accent = theme2.palette.workflow.node[nodeType].accent;
|
|
7975
|
-
return /* @__PURE__ */
|
|
8005
|
+
return /* @__PURE__ */ jsxs38(
|
|
7976
8006
|
Paper4,
|
|
7977
8007
|
{
|
|
7978
8008
|
elevation: 0,
|
|
@@ -7991,8 +8021,8 @@ var WorkflowSideInspector = ({
|
|
|
7991
8021
|
},
|
|
7992
8022
|
...paperProps,
|
|
7993
8023
|
children: [
|
|
7994
|
-
/* @__PURE__ */
|
|
7995
|
-
/* @__PURE__ */
|
|
8024
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 1.25 }, children: [
|
|
8025
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [
|
|
7996
8026
|
/* @__PURE__ */ jsx74(Typography26, { variant: "subtitle1", sx: { color: deploymentSurfaceTokens.textPrimary }, children: title }),
|
|
7997
8027
|
/* @__PURE__ */ jsx74(
|
|
7998
8028
|
IconButton15,
|
|
@@ -8009,8 +8039,8 @@ var WorkflowSideInspector = ({
|
|
|
8009
8039
|
] }),
|
|
8010
8040
|
/* @__PURE__ */ jsx74(Divider8, { sx: { borderColor: chrome.divider } })
|
|
8011
8041
|
] }),
|
|
8012
|
-
/* @__PURE__ */
|
|
8013
|
-
/* @__PURE__ */
|
|
8042
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 3, flex: 1 }, children: [
|
|
8043
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
|
|
8014
8044
|
/* @__PURE__ */ jsx74(
|
|
8015
8045
|
Typography26,
|
|
8016
8046
|
{
|
|
@@ -8020,7 +8050,7 @@ var WorkflowSideInspector = ({
|
|
|
8020
8050
|
}
|
|
8021
8051
|
),
|
|
8022
8052
|
/* @__PURE__ */ jsx74(Typography26, { variant: "body2", sx: { color: chrome.mutedText }, children: nodeDescription }),
|
|
8023
|
-
/* @__PURE__ */
|
|
8053
|
+
/* @__PURE__ */ jsxs38(
|
|
8024
8054
|
Box32,
|
|
8025
8055
|
{
|
|
8026
8056
|
sx: {
|
|
@@ -8032,7 +8062,7 @@ var WorkflowSideInspector = ({
|
|
|
8032
8062
|
py: 0.5,
|
|
8033
8063
|
borderRadius: "999px",
|
|
8034
8064
|
border: `1px solid ${accent}`,
|
|
8035
|
-
backgroundColor:
|
|
8065
|
+
backgroundColor: alpha4(accent, 0.12)
|
|
8036
8066
|
},
|
|
8037
8067
|
children: [
|
|
8038
8068
|
/* @__PURE__ */ jsx74(
|
|
@@ -8052,14 +8082,14 @@ var WorkflowSideInspector = ({
|
|
|
8052
8082
|
)
|
|
8053
8083
|
] }),
|
|
8054
8084
|
/* @__PURE__ */ jsx74(Divider8, { sx: { borderColor: chrome.divider } }),
|
|
8055
|
-
(showInput || showOutput) && /* @__PURE__ */
|
|
8056
|
-
/* @__PURE__ */
|
|
8085
|
+
(showInput || showOutput) && /* @__PURE__ */ jsxs38(Fragment13, { children: [
|
|
8086
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [
|
|
8057
8087
|
showInput && /* @__PURE__ */ jsx74(InfoBlock, { label: "Input", value: inputValue, mutedColor: chrome.mutedText }),
|
|
8058
8088
|
showOutput && /* @__PURE__ */ jsx74(InfoBlock, { label: "Output", value: outputValue, mutedColor: chrome.mutedText })
|
|
8059
8089
|
] }),
|
|
8060
8090
|
/* @__PURE__ */ jsx74(Divider8, { sx: { borderColor: chrome.divider } })
|
|
8061
8091
|
] }),
|
|
8062
|
-
/* @__PURE__ */
|
|
8092
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
|
|
8063
8093
|
/* @__PURE__ */ jsx74(Typography26, { variant: "body2", sx: { color: chrome.mutedText }, children: "Cubby ID" }),
|
|
8064
8094
|
/* @__PURE__ */ jsx74(
|
|
8065
8095
|
Button,
|
|
@@ -8074,8 +8104,8 @@ var WorkflowSideInspector = ({
|
|
|
8074
8104
|
)
|
|
8075
8105
|
] }),
|
|
8076
8106
|
/* @__PURE__ */ jsx74(Divider8, { sx: { borderColor: chrome.divider } }),
|
|
8077
|
-
(showTimestamp || showDuration) && /* @__PURE__ */
|
|
8078
|
-
/* @__PURE__ */
|
|
8107
|
+
(showTimestamp || showDuration) && /* @__PURE__ */ jsxs38(Fragment13, { children: [
|
|
8108
|
+
/* @__PURE__ */ jsxs38(Box32, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [
|
|
8079
8109
|
showTimestamp && /* @__PURE__ */ jsx74(InfoBlock, { label: "Timestamp", value: timestamp, mutedColor: chrome.mutedText }),
|
|
8080
8110
|
showDuration && /* @__PURE__ */ jsx74(InfoBlock, { label: "Duration", value: duration, mutedColor: chrome.mutedText })
|
|
8081
8111
|
] }),
|
|
@@ -8101,7 +8131,7 @@ import ChevronLeftIcon4 from "@mui/icons-material/ChevronLeft";
|
|
|
8101
8131
|
import ChevronRightIcon5 from "@mui/icons-material/ChevronRight";
|
|
8102
8132
|
import ReplayIcon from "@mui/icons-material/Replay";
|
|
8103
8133
|
import { useTheme as useTheme8 } from "@mui/material/styles";
|
|
8104
|
-
import { jsx as jsx75, jsxs as
|
|
8134
|
+
import { jsx as jsx75, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
8105
8135
|
var SpeedButton = ({ value, selected, onClick }) => /* @__PURE__ */ jsx75(
|
|
8106
8136
|
Button,
|
|
8107
8137
|
{
|
|
@@ -8138,7 +8168,7 @@ var WorkflowTimeBar = ({
|
|
|
8138
8168
|
const boundedProgress = Math.max(0, Math.min(100, progress));
|
|
8139
8169
|
const atFirstStep = currentStep <= 1;
|
|
8140
8170
|
const atLastStep = currentStep >= totalSteps;
|
|
8141
|
-
return /* @__PURE__ */
|
|
8171
|
+
return /* @__PURE__ */ jsxs39(
|
|
8142
8172
|
Box33,
|
|
8143
8173
|
{
|
|
8144
8174
|
sx: [
|
|
@@ -8156,7 +8186,7 @@ var WorkflowTimeBar = ({
|
|
|
8156
8186
|
...boxProps,
|
|
8157
8187
|
children: [
|
|
8158
8188
|
/* @__PURE__ */ jsx75(Divider9, { sx: { borderColor: deploymentSurfaceTokens.strokeOutside } }),
|
|
8159
|
-
/* @__PURE__ */
|
|
8189
|
+
/* @__PURE__ */ jsxs39(Box33, { sx: { display: "flex", alignItems: "center", gap: 2 }, children: [
|
|
8160
8190
|
/* @__PURE__ */ jsx75(
|
|
8161
8191
|
IconButton16,
|
|
8162
8192
|
{
|
|
@@ -8173,7 +8203,7 @@ var WorkflowTimeBar = ({
|
|
|
8173
8203
|
children: /* @__PURE__ */ jsx75(StopIcon, { sx: { fontSize: 16 } })
|
|
8174
8204
|
}
|
|
8175
8205
|
),
|
|
8176
|
-
/* @__PURE__ */
|
|
8206
|
+
/* @__PURE__ */ jsxs39(Box33, { sx: { flex: 1, minWidth: 220, px: 1 }, children: [
|
|
8177
8207
|
/* @__PURE__ */ jsx75(
|
|
8178
8208
|
Typography27,
|
|
8179
8209
|
{
|
|
@@ -8198,8 +8228,8 @@ var WorkflowTimeBar = ({
|
|
|
8198
8228
|
}
|
|
8199
8229
|
)
|
|
8200
8230
|
] }),
|
|
8201
|
-
/* @__PURE__ */
|
|
8202
|
-
/* @__PURE__ */
|
|
8231
|
+
/* @__PURE__ */ jsxs39(Box33, { sx: { display: "flex", alignItems: "center", gap: 3 }, children: [
|
|
8232
|
+
/* @__PURE__ */ jsxs39(Box33, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
8203
8233
|
/* @__PURE__ */ jsx75(Typography27, { variant: "subtitle1", sx: { fontWeight: 500 }, children: "Steps" }),
|
|
8204
8234
|
/* @__PURE__ */ jsx75(
|
|
8205
8235
|
IconButton16,
|
|
@@ -8225,7 +8255,7 @@ var WorkflowTimeBar = ({
|
|
|
8225
8255
|
}
|
|
8226
8256
|
)
|
|
8227
8257
|
] }),
|
|
8228
|
-
/* @__PURE__ */
|
|
8258
|
+
/* @__PURE__ */ jsxs39(Box33, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
8229
8259
|
/* @__PURE__ */ jsx75(Typography27, { variant: "subtitle1", sx: { fontWeight: 500 }, children: "Speed" }),
|
|
8230
8260
|
speedOptions.map((option) => /* @__PURE__ */ jsx75(
|
|
8231
8261
|
SpeedButton,
|
|
@@ -8248,8 +8278,8 @@ var WorkflowTimeBar = ({
|
|
|
8248
8278
|
// src/components/icons/ActivityAppIcon.tsx
|
|
8249
8279
|
import { memo as memo2 } from "react";
|
|
8250
8280
|
import { SvgIcon as SvgIcon2 } from "@mui/material";
|
|
8251
|
-
import { jsx as jsx76, jsxs as
|
|
8252
|
-
var ActivityAppIcon = memo2((props) => /* @__PURE__ */
|
|
8281
|
+
import { jsx as jsx76, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
8282
|
+
var ActivityAppIcon = memo2((props) => /* @__PURE__ */ jsxs40(SvgIcon2, { ...props, viewBox: "0 0 36 36", children: [
|
|
8253
8283
|
/* @__PURE__ */ jsx76("rect", { fill: "none", stroke: "currentColor", width: 34, height: 34, x: 1, y: 1, strokeWidth: 1.5, rx: 6.8 }),
|
|
8254
8284
|
/* @__PURE__ */ jsx76(
|
|
8255
8285
|
"rect",
|
|
@@ -8325,9 +8355,9 @@ var RightArrowIcon = (props) => {
|
|
|
8325
8355
|
|
|
8326
8356
|
// src/components/icons/AvatarIcon.tsx
|
|
8327
8357
|
import { SvgIcon as SvgIcon5 } from "@mui/material";
|
|
8328
|
-
import { jsx as jsx79, jsxs as
|
|
8358
|
+
import { jsx as jsx79, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
8329
8359
|
var AvatarIcon = (props) => {
|
|
8330
|
-
return /* @__PURE__ */
|
|
8360
|
+
return /* @__PURE__ */ jsxs41(SvgIcon5, { ...props, viewBox: "0 0 16 16", children: [
|
|
8331
8361
|
/* @__PURE__ */ jsx79(
|
|
8332
8362
|
"path",
|
|
8333
8363
|
{
|
|
@@ -8352,8 +8382,8 @@ var AvatarIcon = (props) => {
|
|
|
8352
8382
|
// src/components/icons/BarTrackingIcon.tsx
|
|
8353
8383
|
import { memo as memo3 } from "react";
|
|
8354
8384
|
import { SvgIcon as SvgIcon6 } from "@mui/material";
|
|
8355
|
-
import { jsx as jsx80, jsxs as
|
|
8356
|
-
var BarTrackingIcon = memo3((props) => /* @__PURE__ */
|
|
8385
|
+
import { jsx as jsx80, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
8386
|
+
var BarTrackingIcon = memo3((props) => /* @__PURE__ */ jsxs42(SvgIcon6, { ...props, viewBox: "0 0 96 97", children: [
|
|
8357
8387
|
/* @__PURE__ */ jsx80(
|
|
8358
8388
|
"rect",
|
|
8359
8389
|
{
|
|
@@ -8425,8 +8455,8 @@ var ClockIcon = memo4((props) => /* @__PURE__ */ jsx81(SvgIcon7, { ...props, vie
|
|
|
8425
8455
|
// src/components/icons/CloudFlashIcon.tsx
|
|
8426
8456
|
import { memo as memo5 } from "react";
|
|
8427
8457
|
import { SvgIcon as SvgIcon8 } from "@mui/material";
|
|
8428
|
-
import { jsx as jsx82, jsxs as
|
|
8429
|
-
var CloudFlashIcon = memo5((props) => /* @__PURE__ */
|
|
8458
|
+
import { jsx as jsx82, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
8459
|
+
var CloudFlashIcon = memo5((props) => /* @__PURE__ */ jsxs43(SvgIcon8, { ...props, fill: "none", viewBox: "0 0 96 97", children: [
|
|
8430
8460
|
/* @__PURE__ */ jsx82(
|
|
8431
8461
|
"path",
|
|
8432
8462
|
{
|
|
@@ -8450,8 +8480,8 @@ var CloudFlashIcon = memo5((props) => /* @__PURE__ */ jsxs44(SvgIcon8, { ...prop
|
|
|
8450
8480
|
// src/components/icons/DecentralizedServerIcon.tsx
|
|
8451
8481
|
import { memo as memo6 } from "react";
|
|
8452
8482
|
import { SvgIcon as SvgIcon9 } from "@mui/material";
|
|
8453
|
-
import { jsx as jsx83, jsxs as
|
|
8454
|
-
var DecentralizedServerIcon = memo6((props) => /* @__PURE__ */
|
|
8483
|
+
import { jsx as jsx83, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
8484
|
+
var DecentralizedServerIcon = memo6((props) => /* @__PURE__ */ jsxs44(SvgIcon9, { ...props, viewBox: "0 0 96 97", children: [
|
|
8455
8485
|
/* @__PURE__ */ jsx83(
|
|
8456
8486
|
"path",
|
|
8457
8487
|
{
|
|
@@ -8637,8 +8667,8 @@ var DiscordIcon = memo7((props) => /* @__PURE__ */ jsx84(SvgIcon10, { ...props,
|
|
|
8637
8667
|
// src/components/icons/DownloadIcon.tsx
|
|
8638
8668
|
import { memo as memo8 } from "react";
|
|
8639
8669
|
import { SvgIcon as SvgIcon11 } from "@mui/material";
|
|
8640
|
-
import { jsx as jsx85, jsxs as
|
|
8641
|
-
var DownloadIcon = memo8((props) => /* @__PURE__ */
|
|
8670
|
+
import { jsx as jsx85, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
8671
|
+
var DownloadIcon = memo8((props) => /* @__PURE__ */ jsxs45(SvgIcon11, { ...props, viewBox: "0 0 17 16", fill: "none", children: [
|
|
8642
8672
|
/* @__PURE__ */ jsx85(
|
|
8643
8673
|
"path",
|
|
8644
8674
|
{
|
|
@@ -8658,8 +8688,8 @@ var DownloadIcon = memo8((props) => /* @__PURE__ */ jsxs46(SvgIcon11, { ...props
|
|
|
8658
8688
|
// src/components/icons/FilledFolderIcon.tsx
|
|
8659
8689
|
import { memo as memo9 } from "react";
|
|
8660
8690
|
import { SvgIcon as SvgIcon12 } from "@mui/material";
|
|
8661
|
-
import { jsx as jsx86, jsxs as
|
|
8662
|
-
var FilledFolderIcon = memo9((props) => /* @__PURE__ */
|
|
8691
|
+
import { jsx as jsx86, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
8692
|
+
var FilledFolderIcon = memo9((props) => /* @__PURE__ */ jsxs46(SvgIcon12, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
|
|
8663
8693
|
/* @__PURE__ */ jsx86("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#FCF8EC" }),
|
|
8664
8694
|
/* @__PURE__ */ jsx86("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E1B43E" }),
|
|
8665
8695
|
/* @__PURE__ */ jsx86(
|
|
@@ -8676,8 +8706,8 @@ var FilledFolderIcon = memo9((props) => /* @__PURE__ */ jsxs47(SvgIcon12, { sx:
|
|
|
8676
8706
|
// src/components/icons/FolderIcon.tsx
|
|
8677
8707
|
import { memo as memo10 } from "react";
|
|
8678
8708
|
import { SvgIcon as SvgIcon13 } from "@mui/material";
|
|
8679
|
-
import { jsx as jsx87, jsxs as
|
|
8680
|
-
var FolderIcon = memo10((props) => /* @__PURE__ */
|
|
8709
|
+
import { jsx as jsx87, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
8710
|
+
var FolderIcon = memo10((props) => /* @__PURE__ */ jsxs47(SvgIcon13, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
|
|
8681
8711
|
/* @__PURE__ */ jsx87("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#F5F7FA" }),
|
|
8682
8712
|
/* @__PURE__ */ jsx87("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E6E6E6" }),
|
|
8683
8713
|
/* @__PURE__ */ jsx87(
|
|
@@ -8696,8 +8726,8 @@ var FolderIcon = memo10((props) => /* @__PURE__ */ jsxs48(SvgIcon13, { sx: { fil
|
|
|
8696
8726
|
// src/components/icons/GithubLogoIcon.tsx
|
|
8697
8727
|
import { memo as memo11 } from "react";
|
|
8698
8728
|
import { SvgIcon as SvgIcon14 } from "@mui/material";
|
|
8699
|
-
import { jsx as jsx88, jsxs as
|
|
8700
|
-
var GithubLogoIcon = memo11((props) => /* @__PURE__ */
|
|
8729
|
+
import { jsx as jsx88, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
8730
|
+
var GithubLogoIcon = memo11((props) => /* @__PURE__ */ jsxs48(SvgIcon14, { ...props, viewBox: "0 0 17 16", sx: { fill: "none" }, children: [
|
|
8701
8731
|
/* @__PURE__ */ jsx88(
|
|
8702
8732
|
"path",
|
|
8703
8733
|
{
|
|
@@ -8731,8 +8761,8 @@ var ShareIcon = memo12((props) => /* @__PURE__ */ jsx89(SvgIcon15, { ...props, v
|
|
|
8731
8761
|
// src/components/icons/StorageAppIcon.tsx
|
|
8732
8762
|
import { memo as memo13 } from "react";
|
|
8733
8763
|
import { SvgIcon as SvgIcon16 } from "@mui/material";
|
|
8734
|
-
import { jsx as jsx90, jsxs as
|
|
8735
|
-
var StorageAppIcon = memo13((props) => /* @__PURE__ */
|
|
8764
|
+
import { jsx as jsx90, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
8765
|
+
var StorageAppIcon = memo13((props) => /* @__PURE__ */ jsxs49(SvgIcon16, { ...props, viewBox: "0 0 38 29", fill: "none", children: [
|
|
8736
8766
|
/* @__PURE__ */ jsx90(
|
|
8737
8767
|
"path",
|
|
8738
8768
|
{
|
|
@@ -8900,7 +8930,7 @@ import { Box as Box35, Stack as Stack5, Typography as Typography28, styled as st
|
|
|
8900
8930
|
import { LineChart } from "@mui/x-charts";
|
|
8901
8931
|
import size2 from "byte-size";
|
|
8902
8932
|
import { format } from "date-fns";
|
|
8903
|
-
import { jsx as jsx98, jsxs as
|
|
8933
|
+
import { jsx as jsx98, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
8904
8934
|
var Chart = styled44(Box35)(() => ({
|
|
8905
8935
|
height: 200
|
|
8906
8936
|
}));
|
|
@@ -8911,7 +8941,7 @@ var ChartWidget = ({
|
|
|
8911
8941
|
formatValue = (value2) => size2(value2 || 0).toString()
|
|
8912
8942
|
}) => {
|
|
8913
8943
|
const theme2 = useTheme9();
|
|
8914
|
-
return /* @__PURE__ */
|
|
8944
|
+
return /* @__PURE__ */ jsxs50(Stack5, { spacing: 1, children: [
|
|
8915
8945
|
/* @__PURE__ */ jsx98(Typography28, { variant: "caption", color: "text.secondary", children: title }),
|
|
8916
8946
|
/* @__PURE__ */ jsx98(Typography28, { fontWeight: "bold", children: value }),
|
|
8917
8947
|
/* @__PURE__ */ jsx98(Chart, { children: /* @__PURE__ */ jsx98(
|
|
@@ -8999,8 +9029,8 @@ var PeriodSelect = ({ value, onChange }) => /* @__PURE__ */ jsx99(
|
|
|
8999
9029
|
);
|
|
9000
9030
|
|
|
9001
9031
|
// src/components/charts/MetricsChart/MetricsChart.tsx
|
|
9002
|
-
import { useMemo, useState as useState13 } from "react";
|
|
9003
|
-
import { jsx as jsx100, jsxs as
|
|
9032
|
+
import { useMemo as useMemo2, useState as useState13 } from "react";
|
|
9033
|
+
import { jsx as jsx100, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
9004
9034
|
var mapPeriodToFromDate = (period = "month") => {
|
|
9005
9035
|
const date = /* @__PURE__ */ new Date();
|
|
9006
9036
|
if (period === "hour") {
|
|
@@ -9031,12 +9061,12 @@ var LoadingText = styled45("text")(({ theme: theme2 }) => ({
|
|
|
9031
9061
|
var MetricsChart = ({ history = [] }) => {
|
|
9032
9062
|
const theme2 = useTheme10();
|
|
9033
9063
|
const [period, setPeriod] = useState13("week");
|
|
9034
|
-
const periodFrom =
|
|
9035
|
-
const periodHistory =
|
|
9064
|
+
const periodFrom = useMemo2(() => mapPeriodToFromDate(period), [period]);
|
|
9065
|
+
const periodHistory = useMemo2(
|
|
9036
9066
|
() => history.filter((record) => record.recordTime > periodFrom),
|
|
9037
9067
|
[history, periodFrom]
|
|
9038
9068
|
);
|
|
9039
|
-
const total =
|
|
9069
|
+
const total = useMemo2(
|
|
9040
9070
|
() => periodHistory.reduce(
|
|
9041
9071
|
(acc, record) => ({
|
|
9042
9072
|
gets: acc.gets + record.gets,
|
|
@@ -9060,14 +9090,14 @@ var MetricsChart = ({ history = [] }) => {
|
|
|
9060
9090
|
const backgroundHeight = textHeight + padding.top + padding.bottom;
|
|
9061
9091
|
const rectX = left + (width - backgroundWidth) / 2;
|
|
9062
9092
|
const rectY = top + (height - backgroundHeight) / 2;
|
|
9063
|
-
return /* @__PURE__ */
|
|
9093
|
+
return /* @__PURE__ */ jsxs51("g", { children: [
|
|
9064
9094
|
/* @__PURE__ */ jsx100(NoDataRect, { x: rectX, y: rectY, width: backgroundWidth, height: backgroundHeight }),
|
|
9065
9095
|
/* @__PURE__ */ jsx100(LoadingText, { style: { ...theme2.typography.subtitle1 }, x: left + width / 2, y: top + height / 2, children: text })
|
|
9066
9096
|
] });
|
|
9067
9097
|
};
|
|
9068
|
-
return /* @__PURE__ */
|
|
9098
|
+
return /* @__PURE__ */ jsxs51(Card2, { children: [
|
|
9069
9099
|
/* @__PURE__ */ jsx100(CardHeader2, { title: "GET / PUT Requests", action: /* @__PURE__ */ jsx100(PeriodSelect, { value: period, onChange: setPeriod }) }),
|
|
9070
|
-
/* @__PURE__ */
|
|
9100
|
+
/* @__PURE__ */ jsxs51(CardMedia2, { children: [
|
|
9071
9101
|
/* @__PURE__ */ jsx100(
|
|
9072
9102
|
Chart2,
|
|
9073
9103
|
{
|
|
@@ -9129,33 +9159,33 @@ var MetricsChart = ({ history = [] }) => {
|
|
|
9129
9159
|
]
|
|
9130
9160
|
}
|
|
9131
9161
|
),
|
|
9132
|
-
periodHistory.length > 0 && /* @__PURE__ */
|
|
9133
|
-
/* @__PURE__ */
|
|
9162
|
+
periodHistory.length > 0 && /* @__PURE__ */ jsxs51(Stack6, { direction: "row", spacing: 2, marginY: 3, justifyContent: "center", children: [
|
|
9163
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", spacing: 1, alignItems: "center", children: [
|
|
9134
9164
|
/* @__PURE__ */ jsx100(Box36, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.primary.main } }),
|
|
9135
9165
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", children: "Get" })
|
|
9136
9166
|
] }),
|
|
9137
|
-
/* @__PURE__ */
|
|
9167
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", spacing: 1, alignItems: "center", children: [
|
|
9138
9168
|
/* @__PURE__ */ jsx100(Box36, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.success.main } }),
|
|
9139
9169
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", children: "Put" })
|
|
9140
9170
|
] })
|
|
9141
9171
|
] })
|
|
9142
9172
|
] }),
|
|
9143
|
-
/* @__PURE__ */
|
|
9173
|
+
/* @__PURE__ */ jsxs51(CardMedia2, { children: [
|
|
9144
9174
|
/* @__PURE__ */ jsx100(Divider10, { flexItem: true }),
|
|
9145
|
-
/* @__PURE__ */
|
|
9146
|
-
/* @__PURE__ */
|
|
9175
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", spacing: 2, padding: 2, children: [
|
|
9176
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", alignItems: "center", spacing: 1, children: [
|
|
9147
9177
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", color: "secondary", children: "GET Requests per account" }),
|
|
9148
9178
|
/* @__PURE__ */ jsx100(Typography29, { variant: "h3", children: total.gets })
|
|
9149
9179
|
] }),
|
|
9150
|
-
/* @__PURE__ */
|
|
9180
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", alignItems: "center", spacing: 1, children: [
|
|
9151
9181
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", color: "secondary", children: "PUT Requests per account" }),
|
|
9152
9182
|
/* @__PURE__ */ jsx100(Typography29, { variant: "h3", children: total.puts })
|
|
9153
9183
|
] }),
|
|
9154
|
-
/* @__PURE__ */
|
|
9184
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", alignItems: "center", spacing: 1, children: [
|
|
9155
9185
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", color: "secondary", children: "Total Consumed per account" }),
|
|
9156
9186
|
/* @__PURE__ */ jsx100(Typography29, { variant: "h3", children: /* @__PURE__ */ jsx100(BytesSize, { bytes: total.transferredBytes }) })
|
|
9157
9187
|
] }),
|
|
9158
|
-
/* @__PURE__ */
|
|
9188
|
+
/* @__PURE__ */ jsxs51(Stack6, { direction: "row", alignItems: "center", spacing: 1, children: [
|
|
9159
9189
|
/* @__PURE__ */ jsx100(Typography29, { variant: "body2", color: "secondary", children: "Total Stored per account" }),
|
|
9160
9190
|
/* @__PURE__ */ jsx100(Typography29, { variant: "h3", children: /* @__PURE__ */ jsx100(BytesSize, { bytes: total.storedBytes }) })
|
|
9161
9191
|
] })
|
|
@@ -9165,7 +9195,7 @@ var MetricsChart = ({ history = [] }) => {
|
|
|
9165
9195
|
};
|
|
9166
9196
|
|
|
9167
9197
|
// src/components/charts/TimeSeriesGraph/TimeSeriesGraph.tsx
|
|
9168
|
-
import { useCallback as useCallback6, useMemo as
|
|
9198
|
+
import { useCallback as useCallback6, useMemo as useMemo3, useState as useState14 } from "react";
|
|
9169
9199
|
import {
|
|
9170
9200
|
Box as Box37,
|
|
9171
9201
|
Card as Card3,
|
|
@@ -9199,7 +9229,7 @@ var TimeRangeSelect = ({ options: options2, value, onChange }) => /* @__PURE__ *
|
|
|
9199
9229
|
|
|
9200
9230
|
// src/components/charts/TimeSeriesGraph/SummaryStats.tsx
|
|
9201
9231
|
import { Stack as Stack7, Typography as Typography30 } from "@mui/material";
|
|
9202
|
-
import { jsx as jsx102, jsxs as
|
|
9232
|
+
import { jsx as jsx102, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
9203
9233
|
var formatSummaryValue = (value, unit) => {
|
|
9204
9234
|
const displayValue = typeof value === "number" ? value.toLocaleString() : value;
|
|
9205
9235
|
return unit ? `${displayValue} ${unit}` : displayValue;
|
|
@@ -9218,7 +9248,7 @@ var SummaryStats = ({ items }) => {
|
|
|
9218
9248
|
useFlexGap: true,
|
|
9219
9249
|
role: "list",
|
|
9220
9250
|
"aria-label": "Summary statistics",
|
|
9221
|
-
children: items.map((item) => /* @__PURE__ */
|
|
9251
|
+
children: items.map((item) => /* @__PURE__ */ jsxs52(
|
|
9222
9252
|
Stack7,
|
|
9223
9253
|
{
|
|
9224
9254
|
direction: "row",
|
|
@@ -9237,7 +9267,7 @@ var SummaryStats = ({ items }) => {
|
|
|
9237
9267
|
};
|
|
9238
9268
|
|
|
9239
9269
|
// src/components/charts/TimeSeriesGraph/TimeSeriesGraph.tsx
|
|
9240
|
-
import { Fragment as Fragment15, jsx as jsx103, jsxs as
|
|
9270
|
+
import { Fragment as Fragment15, jsx as jsx103, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
9241
9271
|
var ChartContainer = styled46(Box37)({
|
|
9242
9272
|
position: "relative",
|
|
9243
9273
|
height: 320
|
|
@@ -9310,12 +9340,12 @@ var TimeSeriesGraph = ({
|
|
|
9310
9340
|
}) => {
|
|
9311
9341
|
const theme2 = useTheme11();
|
|
9312
9342
|
const [hiddenSeries, setHiddenSeries] = useState14(/* @__PURE__ */ new Set());
|
|
9313
|
-
const dataset =
|
|
9314
|
-
const visibleSeries =
|
|
9343
|
+
const dataset = useMemo3(() => buildDataset(series, hiddenSeries), [series, hiddenSeries]);
|
|
9344
|
+
const visibleSeries = useMemo3(
|
|
9315
9345
|
() => series.filter((s) => !hiddenSeries.has(s.name)),
|
|
9316
9346
|
[series, hiddenSeries]
|
|
9317
9347
|
);
|
|
9318
|
-
const chartColors =
|
|
9348
|
+
const chartColors = useMemo3(() => visibleSeries.map((s) => s.color), [visibleSeries]);
|
|
9319
9349
|
const handleLegendToggle = useCallback6((seriesName) => {
|
|
9320
9350
|
setHiddenSeries((prev) => {
|
|
9321
9351
|
const next = new Set(prev);
|
|
@@ -9327,7 +9357,7 @@ var TimeSeriesGraph = ({
|
|
|
9327
9357
|
return next;
|
|
9328
9358
|
});
|
|
9329
9359
|
}, []);
|
|
9330
|
-
const timeBounds =
|
|
9360
|
+
const timeBounds = useMemo3(() => {
|
|
9331
9361
|
if (dataset.length === 0) return { min: void 0, max: void 0 };
|
|
9332
9362
|
const timestamps = dataset.map((row) => row.timestamp.getTime());
|
|
9333
9363
|
return {
|
|
@@ -9335,13 +9365,13 @@ var TimeSeriesGraph = ({
|
|
|
9335
9365
|
max: new Date(Math.max(...timestamps))
|
|
9336
9366
|
};
|
|
9337
9367
|
}, [dataset]);
|
|
9338
|
-
const resolvedXAxisFormat =
|
|
9368
|
+
const resolvedXAxisFormat = useMemo3(
|
|
9339
9369
|
() => xAxisFormat ?? inferXAxisFormat(timeBounds.min, timeBounds.max),
|
|
9340
9370
|
[xAxisFormat, timeBounds.min, timeBounds.max]
|
|
9341
9371
|
);
|
|
9342
9372
|
const hasData = dataset.length > 0;
|
|
9343
9373
|
const shouldShowSummary = showSummary && summaryItems && summaryItems.length > 0;
|
|
9344
|
-
const headerActionElement = /* @__PURE__ */
|
|
9374
|
+
const headerActionElement = /* @__PURE__ */ jsxs53(Stack8, { direction: "row", spacing: 1, alignItems: "center", children: [
|
|
9345
9375
|
headerAction,
|
|
9346
9376
|
timeRangeOptions && timeRangeOptions.length > 0 && /* @__PURE__ */ jsx103(
|
|
9347
9377
|
TimeRangeSelect,
|
|
@@ -9353,7 +9383,7 @@ var TimeSeriesGraph = ({
|
|
|
9353
9383
|
)
|
|
9354
9384
|
] });
|
|
9355
9385
|
const showHeader = !!title || !!headerAction || timeRangeOptions && timeRangeOptions.length > 0;
|
|
9356
|
-
return /* @__PURE__ */
|
|
9386
|
+
return /* @__PURE__ */ jsxs53(
|
|
9357
9387
|
Card3,
|
|
9358
9388
|
{
|
|
9359
9389
|
"aria-label": title ? `Line chart showing ${title}` : "Line chart",
|
|
@@ -9370,8 +9400,8 @@ var TimeSeriesGraph = ({
|
|
|
9370
9400
|
action: headerActionElement
|
|
9371
9401
|
}
|
|
9372
9402
|
),
|
|
9373
|
-
/* @__PURE__ */
|
|
9374
|
-
/* @__PURE__ */
|
|
9403
|
+
/* @__PURE__ */ jsxs53(CardMedia3, { children: [
|
|
9404
|
+
/* @__PURE__ */ jsxs53(ChartContainer, { children: [
|
|
9375
9405
|
loading && /* @__PURE__ */ jsx103(LoadingOverlay, { role: "status", "aria-label": "Loading chart data", children: /* @__PURE__ */ jsx103(CircularProgress7, { size: 40 }) }),
|
|
9376
9406
|
/* @__PURE__ */ jsx103(
|
|
9377
9407
|
LineChart3,
|
|
@@ -9438,7 +9468,7 @@ var TimeSeriesGraph = ({
|
|
|
9438
9468
|
"aria-label": "Chart legend",
|
|
9439
9469
|
children: series.map((s) => {
|
|
9440
9470
|
const isHidden = hiddenSeries.has(s.name);
|
|
9441
|
-
return /* @__PURE__ */
|
|
9471
|
+
return /* @__PURE__ */ jsxs53(
|
|
9442
9472
|
Stack8,
|
|
9443
9473
|
{
|
|
9444
9474
|
direction: "row",
|
|
@@ -9465,7 +9495,7 @@ var TimeSeriesGraph = ({
|
|
|
9465
9495
|
}
|
|
9466
9496
|
)
|
|
9467
9497
|
] }),
|
|
9468
|
-
shouldShowSummary && /* @__PURE__ */
|
|
9498
|
+
shouldShowSummary && /* @__PURE__ */ jsxs53(Fragment15, { children: [
|
|
9469
9499
|
/* @__PURE__ */ jsx103(Divider11, {}),
|
|
9470
9500
|
/* @__PURE__ */ jsx103(SummaryStats, { items: summaryItems })
|
|
9471
9501
|
] })
|
|
@@ -9487,7 +9517,7 @@ import ReactFlow, {
|
|
|
9487
9517
|
import { Box as Box38 } from "@mui/material";
|
|
9488
9518
|
import { useTheme as useTheme12 } from "@mui/material/styles";
|
|
9489
9519
|
import { Background as Background2, Controls as Controls2, MiniMap as MiniMap2, Panel, BackgroundVariant as BackgroundVariant2, ConnectionLineType as ConnectionLineType2 } from "reactflow";
|
|
9490
|
-
import { jsx as jsx104, jsxs as
|
|
9520
|
+
import { jsx as jsx104, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
9491
9521
|
var FlowEditor = ({
|
|
9492
9522
|
nodes,
|
|
9493
9523
|
edges,
|
|
@@ -9533,7 +9563,7 @@ var FlowEditor = ({
|
|
|
9533
9563
|
...Array.isArray(containerSx) ? containerSx : [containerSx]
|
|
9534
9564
|
],
|
|
9535
9565
|
...restContainerProps,
|
|
9536
|
-
children: /* @__PURE__ */
|
|
9566
|
+
children: /* @__PURE__ */ jsxs54(
|
|
9537
9567
|
ReactFlow,
|
|
9538
9568
|
{
|
|
9539
9569
|
nodes,
|
|
@@ -9598,7 +9628,7 @@ import FullscreenExitIcon from "@mui/icons-material/FullscreenExit";
|
|
|
9598
9628
|
import ErrorOutlineIcon from "@mui/icons-material/ErrorOutline";
|
|
9599
9629
|
import ExpandMoreIcon3 from "@mui/icons-material/ExpandMore";
|
|
9600
9630
|
import ExpandLessIcon from "@mui/icons-material/ExpandLess";
|
|
9601
|
-
import { jsx as jsx105, jsxs as
|
|
9631
|
+
import { jsx as jsx105, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
9602
9632
|
var configureTypeScript = (monaco) => {
|
|
9603
9633
|
monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
|
|
9604
9634
|
target: monaco.languages.typescript.ScriptTarget.ES2020,
|
|
@@ -9837,7 +9867,7 @@ var CodeEditor = ({
|
|
|
9837
9867
|
pb: isFullscreen ? 2 : 0,
|
|
9838
9868
|
overflow: isFullscreen ? "hidden" : "visible"
|
|
9839
9869
|
},
|
|
9840
|
-
children: /* @__PURE__ */
|
|
9870
|
+
children: /* @__PURE__ */ jsxs55(
|
|
9841
9871
|
Box39,
|
|
9842
9872
|
{
|
|
9843
9873
|
sx: {
|
|
@@ -9905,7 +9935,7 @@ var CodeEditor = ({
|
|
|
9905
9935
|
)
|
|
9906
9936
|
}
|
|
9907
9937
|
),
|
|
9908
|
-
validationErrors.length > 0 && /* @__PURE__ */
|
|
9938
|
+
validationErrors.length > 0 && /* @__PURE__ */ jsxs55(
|
|
9909
9939
|
Box39,
|
|
9910
9940
|
{
|
|
9911
9941
|
sx: {
|
|
@@ -9919,7 +9949,7 @@ var CodeEditor = ({
|
|
|
9919
9949
|
transition: "max-height 0.2s ease"
|
|
9920
9950
|
},
|
|
9921
9951
|
children: [
|
|
9922
|
-
/* @__PURE__ */
|
|
9952
|
+
/* @__PURE__ */ jsxs55(
|
|
9923
9953
|
Box39,
|
|
9924
9954
|
{
|
|
9925
9955
|
sx: {
|
|
@@ -9936,7 +9966,7 @@ var CodeEditor = ({
|
|
|
9936
9966
|
children: [
|
|
9937
9967
|
/* @__PURE__ */ jsx105(ErrorOutlineIcon, { color: "error", fontSize: "small" }),
|
|
9938
9968
|
/* @__PURE__ */ jsx105(Box39, { sx: { fontWeight: 600, color: "text.primary" }, children: "Problems" }),
|
|
9939
|
-
/* @__PURE__ */
|
|
9969
|
+
/* @__PURE__ */ jsxs55(Box39, { sx: { ml: 1 }, children: [
|
|
9940
9970
|
validationErrors.length,
|
|
9941
9971
|
" error",
|
|
9942
9972
|
validationErrors.length > 1 ? "s" : ""
|
|
@@ -9957,7 +9987,7 @@ var CodeEditor = ({
|
|
|
9957
9987
|
]
|
|
9958
9988
|
}
|
|
9959
9989
|
),
|
|
9960
|
-
showProblems && /* @__PURE__ */ jsx105(Box39, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */
|
|
9990
|
+
showProblems && /* @__PURE__ */ jsx105(Box39, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */ jsxs55(
|
|
9961
9991
|
Box39,
|
|
9962
9992
|
{
|
|
9963
9993
|
onClick: () => gotoMarker(error),
|
|
@@ -9975,7 +10005,7 @@ var CodeEditor = ({
|
|
|
9975
10005
|
},
|
|
9976
10006
|
children: [
|
|
9977
10007
|
/* @__PURE__ */ jsx105(ErrorOutlineIcon, { color: "error", sx: { fontSize: 18 } }),
|
|
9978
|
-
/* @__PURE__ */
|
|
10008
|
+
/* @__PURE__ */ jsxs55(Box39, { sx: { color: "text.secondary", width: 64 }, children: [
|
|
9979
10009
|
"Line ",
|
|
9980
10010
|
error.startLineNumber
|
|
9981
10011
|
] }),
|
|
@@ -10000,7 +10030,7 @@ import { Panel as Panel2 } from "reactflow";
|
|
|
10000
10030
|
// src/components/third-party/WorkflowNodeHandle.tsx
|
|
10001
10031
|
import { Handle, Position } from "reactflow";
|
|
10002
10032
|
import { useTheme as useTheme13 } from "@mui/material";
|
|
10003
|
-
import { Fragment as Fragment16, jsx as jsx106, jsxs as
|
|
10033
|
+
import { Fragment as Fragment16, jsx as jsx106, jsxs as jsxs56 } from "react/jsx-runtime";
|
|
10004
10034
|
var WorkflowNodeHandle = ({
|
|
10005
10035
|
data,
|
|
10006
10036
|
selected
|
|
@@ -10015,7 +10045,7 @@ var WorkflowNodeHandle = ({
|
|
|
10015
10045
|
background: handleColor,
|
|
10016
10046
|
boxShadow: WORKFLOW_NODE_SHADOW
|
|
10017
10047
|
};
|
|
10018
|
-
return /* @__PURE__ */
|
|
10048
|
+
return /* @__PURE__ */ jsxs56(Fragment16, { children: [
|
|
10019
10049
|
/* @__PURE__ */ jsx106(Handle, { type: "target", position: Position.Left, style: handleStyle }),
|
|
10020
10050
|
/* @__PURE__ */ jsx106(
|
|
10021
10051
|
WorkflowNode,
|
|
@@ -10314,7 +10344,7 @@ function useCodeEditorWorkspace({
|
|
|
10314
10344
|
import React17 from "react";
|
|
10315
10345
|
import { Box as Box40, IconButton as IconButton18, Tooltip as Tooltip9, Typography as Typography32 } from "@mui/material";
|
|
10316
10346
|
import CloseIcon6 from "@mui/icons-material/Close";
|
|
10317
|
-
import { jsx as jsx107, jsxs as
|
|
10347
|
+
import { jsx as jsx107, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
10318
10348
|
var CodeEditorTabs = ({
|
|
10319
10349
|
tabs,
|
|
10320
10350
|
activeTab,
|
|
@@ -10350,7 +10380,7 @@ var CodeEditorTabs = ({
|
|
|
10350
10380
|
onClose: () => onTabClose?.(tab.path)
|
|
10351
10381
|
}) }, tab.path);
|
|
10352
10382
|
}
|
|
10353
|
-
return /* @__PURE__ */
|
|
10383
|
+
return /* @__PURE__ */ jsxs57(
|
|
10354
10384
|
Box40,
|
|
10355
10385
|
{
|
|
10356
10386
|
onClick: () => onTabSelect?.(tab.path),
|
|
@@ -10449,7 +10479,7 @@ import FolderOpenIcon from "@mui/icons-material/FolderOpen";
|
|
|
10449
10479
|
import InsertDriveFileOutlinedIcon from "@mui/icons-material/InsertDriveFileOutlined";
|
|
10450
10480
|
import ExpandMoreIcon4 from "@mui/icons-material/ExpandMore";
|
|
10451
10481
|
import ChevronRightIcon6 from "@mui/icons-material/ChevronRight";
|
|
10452
|
-
import { jsx as jsx108, jsxs as
|
|
10482
|
+
import { jsx as jsx108, jsxs as jsxs58 } from "react/jsx-runtime";
|
|
10453
10483
|
var STATUS_CONFIG = {
|
|
10454
10484
|
new: { label: "N", color: "success.main" },
|
|
10455
10485
|
modified: { label: "M", color: "warning.main" },
|
|
@@ -10498,7 +10528,7 @@ var CodeEditorFileTree = ({
|
|
|
10498
10528
|
const isExpanded = expandedPaths.has(node.path);
|
|
10499
10529
|
const isSelected = node.path === selectedPath;
|
|
10500
10530
|
if (renderNode) {
|
|
10501
|
-
return /* @__PURE__ */
|
|
10531
|
+
return /* @__PURE__ */ jsxs58(React18.Fragment, { children: [
|
|
10502
10532
|
renderNode({
|
|
10503
10533
|
node,
|
|
10504
10534
|
depth,
|
|
@@ -10516,8 +10546,8 @@ var CodeEditorFileTree = ({
|
|
|
10516
10546
|
isFolder && isExpanded && node.children?.map((child) => renderTreeNode(child, depth + 1))
|
|
10517
10547
|
] }, node.path);
|
|
10518
10548
|
}
|
|
10519
|
-
return /* @__PURE__ */
|
|
10520
|
-
/* @__PURE__ */
|
|
10549
|
+
return /* @__PURE__ */ jsxs58(React18.Fragment, { children: [
|
|
10550
|
+
/* @__PURE__ */ jsxs58(
|
|
10521
10551
|
ListItemButton4,
|
|
10522
10552
|
{
|
|
10523
10553
|
selected: isSelected,
|
|
@@ -10604,7 +10634,7 @@ var CodeEditorFileTree = ({
|
|
|
10604
10634
|
|
|
10605
10635
|
// src/components/third-party/CodeEditorWorkspace/CodeEditorStatusBar.tsx
|
|
10606
10636
|
import { Box as Box42, Tooltip as Tooltip10, Typography as Typography33 } from "@mui/material";
|
|
10607
|
-
import { Fragment as Fragment17, jsx as jsx109, jsxs as
|
|
10637
|
+
import { Fragment as Fragment17, jsx as jsx109, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
10608
10638
|
var LANGUAGE_LABELS = {
|
|
10609
10639
|
typescript: "TypeScript",
|
|
10610
10640
|
javascript: "JavaScript",
|
|
@@ -10632,7 +10662,7 @@ var CodeEditorStatusBar = ({
|
|
|
10632
10662
|
}
|
|
10633
10663
|
const leftItems = items?.filter((i) => i.align !== "right") ?? [];
|
|
10634
10664
|
const rightItems = items?.filter((i) => i.align === "right") ?? [];
|
|
10635
|
-
return /* @__PURE__ */
|
|
10665
|
+
return /* @__PURE__ */ jsxs59(
|
|
10636
10666
|
Box42,
|
|
10637
10667
|
{
|
|
10638
10668
|
sx: {
|
|
@@ -10653,7 +10683,7 @@ var CodeEditorStatusBar = ({
|
|
|
10653
10683
|
},
|
|
10654
10684
|
...containerProps,
|
|
10655
10685
|
children: [
|
|
10656
|
-
/* @__PURE__ */
|
|
10686
|
+
/* @__PURE__ */ jsxs59(Box42, { sx: { display: "flex", alignItems: "center", gap: 1.5, overflow: "hidden" }, children: [
|
|
10657
10687
|
gitInfo && /* @__PURE__ */ jsx109(
|
|
10658
10688
|
Tooltip10,
|
|
10659
10689
|
{
|
|
@@ -10664,7 +10694,7 @@ var CodeEditorStatusBar = ({
|
|
|
10664
10694
|
gitInfo.behind != null && `\u2193 ${gitInfo.behind} behind`
|
|
10665
10695
|
].filter(Boolean).join(" \xB7 ") || gitInfo.branch,
|
|
10666
10696
|
enterDelay: 400,
|
|
10667
|
-
children: /* @__PURE__ */
|
|
10697
|
+
children: /* @__PURE__ */ jsxs59(
|
|
10668
10698
|
Box42,
|
|
10669
10699
|
{
|
|
10670
10700
|
onClick: onBranchClick,
|
|
@@ -10724,11 +10754,11 @@ var CodeEditorStatusBar = ({
|
|
|
10724
10754
|
}
|
|
10725
10755
|
}
|
|
10726
10756
|
),
|
|
10727
|
-
gitInfo.ahead != null && gitInfo.ahead > 0 && /* @__PURE__ */
|
|
10757
|
+
gitInfo.ahead != null && gitInfo.ahead > 0 && /* @__PURE__ */ jsxs59(Typography33, { variant: "caption", sx: { fontSize: "inherit", fontFamily: "inherit", color: "inherit", lineHeight: 1, opacity: 0.85 }, children: [
|
|
10728
10758
|
"\u2191",
|
|
10729
10759
|
gitInfo.ahead
|
|
10730
10760
|
] }),
|
|
10731
|
-
gitInfo.behind != null && gitInfo.behind > 0 && /* @__PURE__ */
|
|
10761
|
+
gitInfo.behind != null && gitInfo.behind > 0 && /* @__PURE__ */ jsxs59(Typography33, { variant: "caption", sx: { fontSize: "inherit", fontFamily: "inherit", color: "inherit", lineHeight: 1, opacity: 0.85 }, children: [
|
|
10732
10762
|
"\u2193",
|
|
10733
10763
|
gitInfo.behind
|
|
10734
10764
|
] })
|
|
@@ -10739,9 +10769,9 @@ var CodeEditorStatusBar = ({
|
|
|
10739
10769
|
),
|
|
10740
10770
|
leftItems.map((item) => /* @__PURE__ */ jsx109(StatusBarItemElement, { item }, item.id))
|
|
10741
10771
|
] }),
|
|
10742
|
-
/* @__PURE__ */
|
|
10772
|
+
/* @__PURE__ */ jsxs59(Box42, { sx: { display: "flex", alignItems: "center", gap: 1.5, overflow: "hidden" }, children: [
|
|
10743
10773
|
rightItems.map((item) => /* @__PURE__ */ jsx109(StatusBarItemElement, { item }, item.id)),
|
|
10744
|
-
cursorPosition && /* @__PURE__ */
|
|
10774
|
+
cursorPosition && /* @__PURE__ */ jsxs59(
|
|
10745
10775
|
Typography33,
|
|
10746
10776
|
{
|
|
10747
10777
|
variant: "caption",
|
|
@@ -10798,7 +10828,7 @@ var StatusBarItemElement = ({ item }) => {
|
|
|
10798
10828
|
|
|
10799
10829
|
// src/components/third-party/CodeEditorWorkspace/CodeEditorWelcomeScreen.tsx
|
|
10800
10830
|
import { Box as Box43 } from "@mui/material";
|
|
10801
|
-
import { jsx as jsx110, jsxs as
|
|
10831
|
+
import { jsx as jsx110, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
10802
10832
|
var CodeEditorWelcomeScreen = ({
|
|
10803
10833
|
logo,
|
|
10804
10834
|
children,
|
|
@@ -10814,7 +10844,7 @@ var CodeEditorWelcomeScreen = ({
|
|
|
10814
10844
|
}
|
|
10815
10845
|
}
|
|
10816
10846
|
);
|
|
10817
|
-
return /* @__PURE__ */
|
|
10847
|
+
return /* @__PURE__ */ jsxs60(
|
|
10818
10848
|
Box43,
|
|
10819
10849
|
{
|
|
10820
10850
|
sx: {
|
|
@@ -10850,7 +10880,7 @@ var CodeEditorWelcomeScreen = ({
|
|
|
10850
10880
|
// src/components/third-party/CodeEditorWorkspace/CodeEditorWorkspace.tsx
|
|
10851
10881
|
import React19 from "react";
|
|
10852
10882
|
import { Box as Box44 } from "@mui/material";
|
|
10853
|
-
import { jsx as jsx111, jsxs as
|
|
10883
|
+
import { jsx as jsx111, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
10854
10884
|
var CodeEditorWorkspace = ({
|
|
10855
10885
|
files,
|
|
10856
10886
|
initialOpenPaths,
|
|
@@ -10952,7 +10982,7 @@ var CodeEditorWorkspace = ({
|
|
|
10952
10982
|
...editorProps
|
|
10953
10983
|
}
|
|
10954
10984
|
) : welcomeElement;
|
|
10955
|
-
return /* @__PURE__ */
|
|
10985
|
+
return /* @__PURE__ */ jsxs61(
|
|
10956
10986
|
Box44,
|
|
10957
10987
|
{
|
|
10958
10988
|
sx: {
|
|
@@ -10967,7 +10997,7 @@ var CodeEditorWorkspace = ({
|
|
|
10967
10997
|
...containerProps,
|
|
10968
10998
|
children: [
|
|
10969
10999
|
fileTreeElement,
|
|
10970
|
-
/* @__PURE__ */
|
|
11000
|
+
/* @__PURE__ */ jsxs61(Box44, { sx: { flex: 1, display: "flex", flexDirection: "column", minWidth: 0, overflow: "hidden" }, children: [
|
|
10971
11001
|
tabsElement,
|
|
10972
11002
|
/* @__PURE__ */ jsx111(Box44, { sx: { flex: 1, overflow: "hidden" }, children: editorElement }),
|
|
10973
11003
|
statusBarElement
|