@cere/cere-design-system 0.0.17 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -42,7 +42,7 @@ __export(index_exports, {
42
42
  BackgroundVariant: () => import_reactflow2.BackgroundVariant,
43
43
  Badge: () => Badge,
44
44
  BarTrackingIcon: () => BarTrackingIcon,
45
- Box: () => import_material31.Box,
45
+ Box: () => import_material35.Box,
46
46
  Breadcrumbs: () => Breadcrumbs,
47
47
  Button: () => Button,
48
48
  ButtonGroup: () => ButtonGroup,
@@ -63,9 +63,13 @@ __export(index_exports, {
63
63
  Collapse: () => Collapse,
64
64
  ConnectionLineType: () => import_reactflow2.ConnectionLineType,
65
65
  ConnectionStatus: () => ConnectionStatus,
66
- Container: () => import_material33.Container,
66
+ Container: () => import_material37.Container,
67
67
  Controls: () => import_reactflow2.Controls,
68
68
  DecentralizedServerIcon: () => DecentralizedServerIcon,
69
+ DeploymentDashboardCard: () => DeploymentDashboardCard,
70
+ DeploymentDashboardPanel: () => DeploymentDashboardPanel,
71
+ DeploymentDashboardTree: () => DeploymentDashboardTree,
72
+ DeploymentEntityContextMenu: () => DeploymentEntityContextMenu,
69
73
  Dialog: () => Dialog,
70
74
  DiscordIcon: () => DiscordIcon,
71
75
  Divider: () => Divider4,
@@ -82,7 +86,7 @@ __export(index_exports, {
82
86
  FormHelperText: () => import_material4.FormHelperText,
83
87
  FormLabel: () => import_material4.FormLabel,
84
88
  GithubLogoIcon: () => GithubLogoIcon,
85
- Grid: () => import_material28.Grid2,
89
+ Grid: () => import_material32.Grid2,
86
90
  IconButton: () => IconButton,
87
91
  InputAdornment: () => import_material4.InputAdornment,
88
92
  InputLabel: () => import_material4.InputLabel,
@@ -108,7 +112,7 @@ __export(index_exports, {
108
112
  OnboardingProvider: () => OnboardingProvider,
109
113
  Pagination: () => Pagination,
110
114
  Panel: () => import_reactflow3.Panel,
111
- Paper: () => Paper,
115
+ Paper: () => Paper2,
112
116
  PeriodSelect: () => PeriodSelect,
113
117
  Progress: () => Progress,
114
118
  QRCode: () => QRCode,
@@ -124,7 +128,7 @@ __export(index_exports, {
124
128
  Sidebar: () => Sidebar,
125
129
  SidebarItem: () => SidebarItem,
126
130
  Snackbar: () => Snackbar2,
127
- Stack: () => import_material30.Stack,
131
+ Stack: () => import_material34.Stack,
128
132
  Step: () => Step,
129
133
  StepButton: () => StepButton,
130
134
  StepContent: () => StepContent,
@@ -138,14 +142,15 @@ __export(index_exports, {
138
142
  TextField: () => TextField,
139
143
  ToggleButton: () => ToggleButton,
140
144
  ToggleButtonGroup: () => ToggleButtonGroup,
141
- Toolbar: () => import_material34.Toolbar,
145
+ Toolbar: () => import_material38.Toolbar,
142
146
  Tooltip: () => Tooltip6,
143
147
  Truncate: () => Truncate,
144
- Typography: () => import_material32.Typography,
148
+ Typography: () => import_material36.Typography,
145
149
  UploadFileIcon: () => UploadFileIcon,
146
150
  UploadFolderIcon: () => UploadFolderIcon,
147
151
  WorkspaceSelectorButton: () => WorkspaceSelectorButton,
148
152
  colors: () => colors,
153
+ contextMenuItems: () => contextMenuItems,
149
154
  theme: () => theme,
150
155
  useIsDesktop: () => useIsDesktop,
151
156
  useIsMobile: () => useIsMobile,
@@ -219,7 +224,39 @@ var colors = {
219
224
  selected: "rgba(123, 44, 191, 0.1)"
220
225
  }
221
226
  };
222
- var theme = (0, import_styles.createTheme)({
227
+ var deploymentEntityColors = {
228
+ workspace: "#aa44f2",
229
+ stream: "#53b96a",
230
+ deployment: "#eeb510",
231
+ engagement: "#f941e6",
232
+ agent: "#77c3ff"
233
+ };
234
+ var deploymentStatusColors = {
235
+ normal: "#53b96a",
236
+ warning: "#eeb510",
237
+ error: "#ef5059",
238
+ disabled: "#ffffff",
239
+ disabledDim: "#ded8e1"
240
+ };
241
+ var deploymentSurfaceTokens = {
242
+ /** Surface/high background (Figma #fefcff) */
243
+ surfaceHigh: "#fefcff",
244
+ /** Stroke/Outside border (Figma #e6e6e6) */
245
+ strokeOutside: "#e6e6e6",
246
+ /** Default card border (Figma #cdcccd) */
247
+ borderDefault: "#cdcccd",
248
+ /** Primary text (Figma #1d1b20) */
249
+ textPrimary: "#1d1b20",
250
+ /** Secondary/muted text (Figma #818083) */
251
+ textSecondary: "#818083",
252
+ /** Accent blue for workspace border, capacity bar, chevrons (Figma #5865f2) */
253
+ accentBlue: "#5865f2",
254
+ /** Workspace card shadow */
255
+ workspaceShadow: "0px 8px 12px rgba(26, 10, 124, 0.1)",
256
+ /** Hover state for context menu items */
257
+ hoverLight: "#F0F1FF"
258
+ };
259
+ var baseTheme = (0, import_styles.createTheme)({
223
260
  palette: {
224
261
  mode: "light",
225
262
  primary: colors.primary,
@@ -382,6 +419,14 @@ var theme = (0, import_styles.createTheme)({
382
419
  }
383
420
  }
384
421
  });
422
+ var theme = (0, import_styles.createTheme)(baseTheme, {
423
+ palette: {
424
+ deployment: {
425
+ entity: deploymentEntityColors,
426
+ status: deploymentStatusColors
427
+ }
428
+ }
429
+ });
385
430
 
386
431
  // src/animations/CheckMarkAnimation/CheckMarkAnimation.tsx
387
432
  var import_lottie_react = __toESM(require("lottie-react"));
@@ -1911,6 +1956,17 @@ var useIsMobile = () => {
1911
1956
  var import_Button = __toESM(require("@mui/material/Button"));
1912
1957
  var import_styles2 = require("@mui/material/styles");
1913
1958
  var import_jsx_runtime4 = require("react/jsx-runtime");
1959
+ var BUTTON_SPACING = {
1960
+ borderRadius: "8px",
1961
+ padding: "8px 16px",
1962
+ iconMargin: "8px"
1963
+ };
1964
+ var BUTTON_TYPOGRAPHY = {
1965
+ fontSize: "16px",
1966
+ fontWeight: 500,
1967
+ lineHeight: 1.5,
1968
+ letterSpacing: "0.8px"
1969
+ };
1914
1970
  var StyledPrimaryButton = (0, import_styles2.styled)(import_Button.default)(() => ({
1915
1971
  backgroundColor: colors.primary.main,
1916
1972
  color: colors.primary.contrastText,
@@ -1925,21 +1981,42 @@ var StyledPrimaryButton = (0, import_styles2.styled)(import_Button.default)(() =
1925
1981
  color: colors.grey[500]
1926
1982
  }
1927
1983
  }));
1984
+ var iconStyles = {
1985
+ "& > *": {
1986
+ fontSize: BUTTON_TYPOGRAPHY.fontSize
1987
+ }
1988
+ };
1928
1989
  var StyledSecondaryButton = (0, import_styles2.styled)(import_Button.default)(() => ({
1929
- backgroundColor: "transparent",
1930
- color: colors.primary.main,
1931
- border: `1px solid ${colors.primary.main}`,
1990
+ backgroundColor: deploymentSurfaceTokens.surfaceHigh,
1991
+ color: deploymentSurfaceTokens.textPrimary,
1992
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
1993
+ borderRadius: BUTTON_SPACING.borderRadius,
1994
+ padding: BUTTON_SPACING.padding,
1995
+ textTransform: "capitalize",
1996
+ letterSpacing: BUTTON_TYPOGRAPHY.letterSpacing,
1997
+ fontSize: BUTTON_TYPOGRAPHY.fontSize,
1998
+ fontWeight: BUTTON_TYPOGRAPHY.fontWeight,
1999
+ lineHeight: BUTTON_TYPOGRAPHY.lineHeight,
1932
2000
  "&:hover": {
1933
2001
  backgroundColor: colors.background.selected,
1934
- borderColor: colors.primary.light
2002
+ borderColor: deploymentSurfaceTokens.strokeOutside
1935
2003
  },
1936
2004
  "&:active": {
1937
2005
  backgroundColor: colors.background.selected,
1938
- borderColor: colors.primary.dark
2006
+ borderColor: deploymentSurfaceTokens.borderDefault
1939
2007
  },
1940
2008
  "&:disabled": {
1941
2009
  borderColor: colors.grey[300],
1942
- color: colors.grey[500]
2010
+ color: colors.grey[500],
2011
+ backgroundColor: colors.grey[50]
2012
+ },
2013
+ "& .MuiButton-startIcon": {
2014
+ marginRight: BUTTON_SPACING.iconMargin,
2015
+ ...iconStyles
2016
+ },
2017
+ "& .MuiButton-endIcon": {
2018
+ marginLeft: BUTTON_SPACING.iconMargin,
2019
+ ...iconStyles
1943
2020
  }
1944
2021
  }));
1945
2022
  var StyledTertiaryButton = (0, import_styles2.styled)(import_Button.default)(() => ({
@@ -1955,6 +2032,11 @@ var StyledTertiaryButton = (0, import_styles2.styled)(import_Button.default)(()
1955
2032
  color: colors.grey[500]
1956
2033
  }
1957
2034
  }));
2035
+ var BUTTON_COMPONENTS = {
2036
+ primary: StyledPrimaryButton,
2037
+ secondary: StyledSecondaryButton,
2038
+ tertiary: StyledTertiaryButton
2039
+ };
1958
2040
  var Button = ({
1959
2041
  variant = "primary",
1960
2042
  children,
@@ -1962,21 +2044,13 @@ var Button = ({
1962
2044
  endIcon,
1963
2045
  ...props
1964
2046
  }) => {
2047
+ const ButtonComponent = BUTTON_COMPONENTS[variant];
1965
2048
  const buttonProps = {
1966
2049
  ...props,
1967
2050
  startIcon,
1968
2051
  endIcon
1969
2052
  };
1970
- switch (variant) {
1971
- case "primary":
1972
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledPrimaryButton, { ...buttonProps, children });
1973
- case "secondary":
1974
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledSecondaryButton, { ...buttonProps, children });
1975
- case "tertiary":
1976
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledTertiaryButton, { ...buttonProps, children });
1977
- default:
1978
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledPrimaryButton, { ...buttonProps, children });
1979
- }
2053
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ButtonComponent, { ...buttonProps, children });
1980
2054
  };
1981
2055
 
1982
2056
  // src/components/buttons/IconButton.tsx
@@ -4982,16 +5056,626 @@ var ListItem4 = ({
4982
5056
  ] });
4983
5057
  };
4984
5058
 
4985
- // src/components/layout/Avatar.tsx
4986
- var import_Avatar = __toESM(require("@mui/material/Avatar"));
5059
+ // src/components/layout/DeploymentDashboardCard/DeploymentDashboardCard.tsx
5060
+ var import_material27 = require("@mui/material");
5061
+ var import_ExpandMore = __toESM(require("@mui/icons-material/ExpandMore"));
5062
+ var import_ChevronRight2 = __toESM(require("@mui/icons-material/ChevronRight"));
5063
+ var import_ContentCopy = __toESM(require("@mui/icons-material/ContentCopy"));
5064
+ var import_WorkOutline = __toESM(require("@mui/icons-material/WorkOutline"));
5065
+ var import_Waves = __toESM(require("@mui/icons-material/Waves"));
5066
+ var import_RocketLaunchOutlined = __toESM(require("@mui/icons-material/RocketLaunchOutlined"));
5067
+ var import_InsertLink = __toESM(require("@mui/icons-material/InsertLink"));
5068
+ var import_SmartToyOutlined = __toESM(require("@mui/icons-material/SmartToyOutlined"));
4987
5069
  var import_styles26 = require("@mui/material/styles");
5070
+
5071
+ // src/hooks/useControlledExpand.ts
5072
+ var import_react14 = require("react");
5073
+ function useControlledExpand(controlledExpanded, onToggle, defaultExpanded = false) {
5074
+ const [internal, setInternal] = (0, import_react14.useState)(defaultExpanded);
5075
+ const isControlled = controlledExpanded !== void 0 && onToggle != null;
5076
+ const expanded = isControlled ? controlledExpanded : internal;
5077
+ const toggle = isControlled ? () => onToggle() : () => setInternal((prev) => !prev);
5078
+ return { expanded, toggle };
5079
+ }
5080
+
5081
+ // src/components/layout/DeploymentDashboardCard/DeploymentDashboardCard.tsx
4988
5082
  var import_jsx_runtime42 = require("react/jsx-runtime");
5083
+ var ENTITY_LABELS = {
5084
+ workspace: "Workspace",
5085
+ stream: "Stream",
5086
+ deployment: "Deployment",
5087
+ engagement: "Engagement",
5088
+ agent: "Agent"
5089
+ };
5090
+ var ENTITY_ICON_SIZE = 16;
5091
+ var ENTITY_ICONS = {
5092
+ workspace: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_WorkOutline.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5093
+ stream: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_Waves.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5094
+ deployment: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_RocketLaunchOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5095
+ engagement: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_InsertLink.default, { sx: { fontSize: ENTITY_ICON_SIZE } }),
5096
+ agent: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_SmartToyOutlined.default, { sx: { fontSize: ENTITY_ICON_SIZE } })
5097
+ };
5098
+ var STATUS_DOT_COLORS = {
5099
+ normal: deploymentStatusColors.normal,
5100
+ warning: deploymentStatusColors.warning,
5101
+ error: deploymentStatusColors.error,
5102
+ disabled: deploymentStatusColors.disabledDim
5103
+ };
5104
+ var CHEVRON_SIZE = 16;
5105
+ var ENTITY_CHIP_STYLES = {
5106
+ borderRadius: "12px",
5107
+ borderWidth: "1.5px",
5108
+ padding: { left: 0.75, right: 1, vertical: 0.25 },
5109
+ gap: 0.5
5110
+ };
5111
+ var ENTITY_CHIP_TYPOGRAPHY = {
5112
+ fontSize: "12px",
5113
+ fontWeight: 500,
5114
+ lineHeight: 1.33,
5115
+ letterSpacing: "0.07px"
5116
+ };
5117
+ var StatusDot = (0, import_styles26.styled)(import_material27.Box, {
5118
+ shouldForwardProp: (p) => p !== "status"
5119
+ })(({ status }) => ({
5120
+ width: 8,
5121
+ height: 8,
5122
+ borderRadius: "50%",
5123
+ backgroundColor: status ? STATUS_DOT_COLORS[status] ?? "transparent" : "transparent",
5124
+ flexShrink: 0
5125
+ }));
5126
+ var EntityChip = ({ entityType, color }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5127
+ import_material27.Box,
5128
+ {
5129
+ sx: {
5130
+ display: "inline-flex",
5131
+ alignItems: "center",
5132
+ gap: ENTITY_CHIP_STYLES.gap,
5133
+ pl: ENTITY_CHIP_STYLES.padding.left,
5134
+ pr: ENTITY_CHIP_STYLES.padding.right,
5135
+ py: ENTITY_CHIP_STYLES.padding.vertical,
5136
+ borderRadius: ENTITY_CHIP_STYLES.borderRadius,
5137
+ backgroundColor: deploymentSurfaceTokens.surfaceHigh,
5138
+ border: `${ENTITY_CHIP_STYLES.borderWidth} solid ${color}`,
5139
+ flexShrink: 0
5140
+ },
5141
+ children: [
5142
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Box, { sx: { color, display: "flex", alignItems: "center" }, children: ENTITY_ICONS[entityType] }),
5143
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5144
+ import_material27.Typography,
5145
+ {
5146
+ variant: "body2",
5147
+ fontWeight: ENTITY_CHIP_TYPOGRAPHY.fontWeight,
5148
+ sx: {
5149
+ color: "black",
5150
+ lineHeight: ENTITY_CHIP_TYPOGRAPHY.lineHeight,
5151
+ fontSize: ENTITY_CHIP_TYPOGRAPHY.fontSize,
5152
+ letterSpacing: ENTITY_CHIP_TYPOGRAPHY.letterSpacing
5153
+ },
5154
+ children: ENTITY_LABELS[entityType]
5155
+ }
5156
+ )
5157
+ ]
5158
+ }
5159
+ );
5160
+ var IdBadge = ({ id, onCopy }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5161
+ import_material27.Box,
5162
+ {
5163
+ sx: {
5164
+ display: "inline-flex",
5165
+ alignItems: "center",
5166
+ gap: 0.5,
5167
+ px: 2,
5168
+ py: 1,
5169
+ borderRadius: "8px",
5170
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
5171
+ bgcolor: "white",
5172
+ flexShrink: 0
5173
+ },
5174
+ children: [
5175
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5176
+ import_material27.Typography,
5177
+ {
5178
+ variant: "body2",
5179
+ fontWeight: 500,
5180
+ sx: { color: deploymentSurfaceTokens.textPrimary, whiteSpace: "nowrap" },
5181
+ children: [
5182
+ "ID: ",
5183
+ id
5184
+ ]
5185
+ }
5186
+ ),
5187
+ onCopy && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.IconButton, { size: "small", onClick: onCopy, "aria-label": "Copy ID", sx: { p: 0 }, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ContentCopy.default, { sx: { fontSize: 14, color: deploymentSurfaceTokens.textSecondary } }) })
5188
+ ]
5189
+ }
5190
+ );
5191
+ var CapacityBar = ({ value, indented = false }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Box, { sx: { pl: indented ? "40px" : 0, pr: "20px", py: 1 }, children: [
5192
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Box, { sx: { display: "flex", justifyContent: "space-between", mb: 1 }, children: [
5193
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.textPrimary }, children: "Capacity" }),
5194
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Typography, { variant: "body2", sx: { color: deploymentSurfaceTokens.accentBlue }, children: [
5195
+ value,
5196
+ "%"
5197
+ ] })
5198
+ ] }),
5199
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5200
+ import_material27.LinearProgress,
5201
+ {
5202
+ variant: "determinate",
5203
+ value,
5204
+ sx: {
5205
+ height: 4,
5206
+ borderRadius: "20px",
5207
+ backgroundColor: deploymentSurfaceTokens.strokeOutside,
5208
+ "& .MuiLinearProgress-bar": {
5209
+ borderRadius: "20px",
5210
+ backgroundColor: deploymentSurfaceTokens.accentBlue
5211
+ }
5212
+ }
5213
+ }
5214
+ )
5215
+ ] });
5216
+ var getActionButtonStyles = (action) => {
5217
+ const baseStyles = {
5218
+ display: "inline-flex",
5219
+ alignItems: "center",
5220
+ gap: 0.5,
5221
+ cursor: action.onClick ? "pointer" : "default",
5222
+ background: "none",
5223
+ font: "inherit",
5224
+ color: deploymentSurfaceTokens.textPrimary,
5225
+ whiteSpace: "nowrap",
5226
+ "&:hover": action.onClick ? { opacity: 0.7 } : void 0
5227
+ };
5228
+ const variantStyles = action.outlined ? {
5229
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
5230
+ borderRadius: "8px",
5231
+ p: 1,
5232
+ bgcolor: "white"
5233
+ } : {
5234
+ border: "none",
5235
+ p: 0
5236
+ };
5237
+ return { ...baseStyles, ...variantStyles };
5238
+ };
5239
+ var CardAction = ({ action }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5240
+ import_material27.Box,
5241
+ {
5242
+ component: action.onClick ? "button" : "span",
5243
+ onClick: action.onClick,
5244
+ sx: getActionButtonStyles(action),
5245
+ children: [
5246
+ action.icon && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Box, { component: "span", sx: { display: "flex", alignItems: "center" }, children: action.icon }),
5247
+ action.label && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Typography, { variant: "body2", fontWeight: 500, component: "span", sx: { fontSize: "14px" }, children: action.label })
5248
+ ]
5249
+ }
5250
+ );
5251
+ var CardActionList = ({ actions }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_jsx_runtime42.Fragment, { children: actions.map((action) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(CardAction, { action }, action.id)) });
5252
+ var DeploymentDashboardCard = ({
5253
+ entityType,
5254
+ title,
5255
+ id: idDisplay,
5256
+ createdAt,
5257
+ updatedAt,
5258
+ capacity,
5259
+ actions = [],
5260
+ statusIndicator = null,
5261
+ expandable = false,
5262
+ expanded: controlledExpanded,
5263
+ onExpandToggle,
5264
+ onCopyId,
5265
+ className,
5266
+ children
5267
+ }) => {
5268
+ const theme2 = (0, import_material27.useTheme)();
5269
+ const entityColor = theme2.palette.deployment?.entity?.[entityType] ?? deploymentEntityColors[entityType];
5270
+ const isControlled = expandable && onExpandToggle != null;
5271
+ const { expanded, toggle } = useControlledExpand(
5272
+ isControlled ? controlledExpanded : void 0,
5273
+ isControlled ? onExpandToggle : void 0
5274
+ );
5275
+ const isWorkspace = entityType === "workspace";
5276
+ const isDeployment = entityType === "deployment";
5277
+ const getClampedCapacity = (capacity2) => {
5278
+ if (!isDeployment || capacity2 == null) {
5279
+ return void 0;
5280
+ }
5281
+ return Math.min(100, Math.max(0, capacity2));
5282
+ };
5283
+ const capacityClamped = getClampedCapacity(capacity);
5284
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5285
+ import_material27.Paper,
5286
+ {
5287
+ className,
5288
+ elevation: 0,
5289
+ sx: {
5290
+ border: `1px solid ${isWorkspace ? deploymentSurfaceTokens.accentBlue : deploymentSurfaceTokens.borderDefault}`,
5291
+ borderRadius: isWorkspace ? "4px" : "12px",
5292
+ boxShadow: isWorkspace ? deploymentSurfaceTokens.workspaceShadow : "none",
5293
+ px: 1,
5294
+ py: isDeployment ? 2 : 1,
5295
+ pl: 1,
5296
+ display: "flex",
5297
+ flexDirection: "column",
5298
+ gap: 0
5299
+ },
5300
+ children: [
5301
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5302
+ import_material27.Box,
5303
+ {
5304
+ sx: {
5305
+ display: "flex",
5306
+ justifyContent: "space-between",
5307
+ alignItems: isDeployment ? "flex-start" : "center",
5308
+ width: "100%"
5309
+ },
5310
+ children: [
5311
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Box, { sx: { display: "flex", flexDirection: "column", gap: 0.5, minWidth: 0 }, children: [
5312
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Box, { sx: { display: "flex", gap: 1, alignItems: "center" }, children: [
5313
+ expandable ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5314
+ import_material27.IconButton,
5315
+ {
5316
+ size: "small",
5317
+ onClick: toggle,
5318
+ "aria-label": expanded ? "Collapse" : "Expand",
5319
+ sx: { p: "5px" },
5320
+ children: expanded ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ExpandMore.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ChevronRight2.default, { sx: { fontSize: CHEVRON_SIZE, color: deploymentSurfaceTokens.accentBlue } })
5321
+ }
5322
+ ) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Box, { sx: { width: 26, flexShrink: 0 } }),
5323
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(EntityChip, { entityType, color: entityColor }),
5324
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
5325
+ import_material27.Typography,
5326
+ {
5327
+ variant: "subtitle1",
5328
+ fontWeight: 500,
5329
+ noWrap: true,
5330
+ sx: { color: deploymentSurfaceTokens.textPrimary, fontSize: "16px", letterSpacing: "0.08px" },
5331
+ children: title
5332
+ }
5333
+ ),
5334
+ idDisplay != null && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(IdBadge, { id: idDisplay, onCopy: onCopyId })
5335
+ ] }),
5336
+ (createdAt != null || updatedAt != null) && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
5337
+ import_material27.Box,
5338
+ {
5339
+ sx: {
5340
+ display: "flex",
5341
+ gap: 2,
5342
+ px: "34px",
5343
+ color: deploymentSurfaceTokens.textSecondary
5344
+ },
5345
+ children: [
5346
+ createdAt != null && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5347
+ "Created: ",
5348
+ createdAt
5349
+ ] }),
5350
+ updatedAt != null && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Typography, { variant: "body2", sx: { color: "inherit", fontSize: "14px" }, children: [
5351
+ "Last Updated: ",
5352
+ updatedAt
5353
+ ] })
5354
+ ]
5355
+ }
5356
+ ),
5357
+ capacityClamped !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(CapacityBar, { value: capacityClamped, indented: expandable })
5358
+ ] }),
5359
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_material27.Box, { sx: { display: "flex", gap: 1, alignItems: "center", flexShrink: 0 }, children: [
5360
+ statusIndicator != null && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(StatusDot, { status: statusIndicator, "aria-hidden": true }),
5361
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(CardActionList, { actions })
5362
+ ] })
5363
+ ]
5364
+ }
5365
+ ),
5366
+ children && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_material27.Box, { sx: { mt: 1.5, display: "flex", flexDirection: "column", gap: 1 }, children })
5367
+ ]
5368
+ }
5369
+ );
5370
+ };
5371
+
5372
+ // src/components/layout/DeploymentEntityContextMenu/DeploymentEntityContextMenu.tsx
5373
+ var import_material28 = require("@mui/material");
5374
+ var import_styles27 = require("@mui/material/styles");
5375
+ var import_jsx_runtime43 = require("react/jsx-runtime");
5376
+ var StyledMenu2 = (0, import_styles27.styled)(import_material28.Menu)({
5377
+ "& .MuiPaper-root": {
5378
+ borderRadius: 10,
5379
+ boxShadow: "0px 4px 12px rgba(0, 0, 0, 0.15)",
5380
+ minWidth: 220,
5381
+ border: "1px solid",
5382
+ borderColor: "grey.200"
5383
+ }
5384
+ });
5385
+ var MenuListWrapper = (0, import_styles27.styled)("div")({
5386
+ "& .MuiList-root": {
5387
+ padding: 8
5388
+ },
5389
+ "& .MuiListItem-root": {
5390
+ borderRadius: 8,
5391
+ marginBottom: 4,
5392
+ "&:hover": {
5393
+ backgroundColor: deploymentSurfaceTokens.hoverLight
5394
+ }
5395
+ }
5396
+ });
5397
+ var DeploymentEntityContextMenu = ({
5398
+ open,
5399
+ anchorEl,
5400
+ onClose,
5401
+ items,
5402
+ enableToggle = false,
5403
+ enableChecked = false,
5404
+ onEnableChange
5405
+ }) => {
5406
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5407
+ StyledMenu2,
5408
+ {
5409
+ anchorEl,
5410
+ open,
5411
+ onClose,
5412
+ anchorOrigin: { vertical: "bottom", horizontal: "right" },
5413
+ transformOrigin: { vertical: "top", horizontal: "right" },
5414
+ slotProps: { paper: { "aria-label": "Entity context menu" } },
5415
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(MenuListWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(List6, { disablePadding: true, children: [
5416
+ items.map(
5417
+ (item) => item.type === "toggle" ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5418
+ ListItem4,
5419
+ {
5420
+ primary: item.label,
5421
+ icon: item.icon,
5422
+ action: onEnableChange ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5423
+ import_material28.Switch,
5424
+ {
5425
+ size: "small",
5426
+ checked: enableChecked,
5427
+ onChange: (_, checked) => onEnableChange(checked),
5428
+ color: "success"
5429
+ }
5430
+ ) : void 0,
5431
+ hoverable: true,
5432
+ sx: { cursor: "default" }
5433
+ },
5434
+ item.id
5435
+ ) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5436
+ ListItem4,
5437
+ {
5438
+ primary: item.label,
5439
+ icon: item.icon,
5440
+ onClick: () => {
5441
+ item.onClick?.();
5442
+ onClose();
5443
+ },
5444
+ hoverable: true
5445
+ },
5446
+ item.id
5447
+ )
5448
+ ),
5449
+ enableToggle && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5450
+ ListItem4,
5451
+ {
5452
+ primary: "Enable",
5453
+ action: onEnableChange ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5454
+ import_material28.Switch,
5455
+ {
5456
+ size: "small",
5457
+ checked: enableChecked,
5458
+ onChange: (_, checked) => onEnableChange(checked),
5459
+ color: "success"
5460
+ }
5461
+ ) : void 0,
5462
+ hoverable: true,
5463
+ sx: { cursor: "default" }
5464
+ }
5465
+ )
5466
+ ] }) })
5467
+ }
5468
+ );
5469
+ };
5470
+
5471
+ // src/components/layout/DeploymentEntityContextMenu/contextMenuItems.tsx
5472
+ var import_AddCircleOutline = __toESM(require("@mui/icons-material/AddCircleOutline"));
5473
+ var import_Edit = __toESM(require("@mui/icons-material/Edit"));
5474
+ var import_ContentCopy2 = __toESM(require("@mui/icons-material/ContentCopy"));
5475
+ var import_AccountTree = __toESM(require("@mui/icons-material/AccountTree"));
5476
+ var import_Description = __toESM(require("@mui/icons-material/Description"));
5477
+ var import_Settings2 = __toESM(require("@mui/icons-material/Settings"));
5478
+ var import_jsx_runtime44 = require("react/jsx-runtime");
5479
+ var contextMenuItems = {
5480
+ addEngagement: (onClick) => ({
5481
+ id: "add-engagement",
5482
+ label: "Add Engagement",
5483
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_AddCircleOutline.default, { fontSize: "small" }),
5484
+ onClick
5485
+ }),
5486
+ addAgent: (onClick) => ({
5487
+ id: "add-agent",
5488
+ label: "Add Agent",
5489
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_AddCircleOutline.default, { fontSize: "small" }),
5490
+ onClick
5491
+ }),
5492
+ addStream: (onClick) => ({
5493
+ id: "add-stream",
5494
+ label: "Add Stream",
5495
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_AddCircleOutline.default, { fontSize: "small" }),
5496
+ onClick
5497
+ }),
5498
+ edit: (onClick) => ({
5499
+ id: "edit",
5500
+ label: "Edit",
5501
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Edit.default, { fontSize: "small" }),
5502
+ onClick
5503
+ }),
5504
+ copyId: (onClick) => ({
5505
+ id: "copy-id",
5506
+ label: "Copy ID",
5507
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_ContentCopy2.default, { fontSize: "small" }),
5508
+ onClick
5509
+ }),
5510
+ agentFlowVisualization: (onClick) => ({
5511
+ id: "agent-flow",
5512
+ label: "Agent Flow Visualization",
5513
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_AccountTree.default, { fontSize: "small" }),
5514
+ onClick
5515
+ }),
5516
+ viewLogs: (onClick) => ({
5517
+ id: "view-logs",
5518
+ label: "View Logs",
5519
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Description.default, { fontSize: "small" }),
5520
+ onClick
5521
+ }),
5522
+ settings: (onClick) => ({
5523
+ id: "settings",
5524
+ label: "Settings",
5525
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Settings2.default, { fontSize: "small" }),
5526
+ onClick
5527
+ })
5528
+ };
5529
+
5530
+ // src/components/layout/DeploymentDashboardTree/DeploymentDashboardTree.tsx
5531
+ var import_material29 = require("@mui/material");
5532
+ var import_styles28 = require("@mui/material/styles");
5533
+ var import_jsx_runtime45 = require("react/jsx-runtime");
5534
+ var TREE_SP = {
5535
+ /** Vertical gap between sibling rows (Figma S / sp-8) */
5536
+ rowGap: 8,
5537
+ /** Gap between rail and children column (Figma sp-12) */
5538
+ railGap: 12,
5539
+ /** Rail width (Figma) */
5540
+ railWidth: 4,
5541
+ /** Total horizontal indent per level = railWidth + railGap (Figma M = 16) */
5542
+ indentPerLevel: 4 + 12
5543
+ };
5544
+ var RAIL_OPACITY = {
5545
+ workspace: 0.5,
5546
+ stream: 0.5,
5547
+ deployment: 0.4,
5548
+ engagement: 0.4,
5549
+ agent: 0.4
5550
+ };
5551
+ var Rail = (0, import_styles28.styled)(import_material29.Box, {
5552
+ shouldForwardProp: (p) => p !== "railColor"
5553
+ })(({ railColor }) => ({
5554
+ width: TREE_SP.railWidth,
5555
+ borderRadius: TREE_SP.railWidth / 2,
5556
+ backgroundColor: railColor,
5557
+ flexShrink: 0,
5558
+ alignSelf: "stretch"
5559
+ }));
5560
+ var TreeRow = ({ node, depth, onExpandToggle, onCopyId, renderCard }) => {
5561
+ const hasChildren = Boolean(node.children && node.children.length > 0);
5562
+ const { expanded, toggle } = useControlledExpand(
5563
+ onExpandToggle != null ? node.expanded : void 0,
5564
+ onExpandToggle ? () => onExpandToggle(node.id) : void 0,
5565
+ node.expanded ?? false
5566
+ );
5567
+ const entityColor = deploymentEntityColors[node.entityType] ?? deploymentEntityColors.workspace;
5568
+ const railOpacity = RAIL_OPACITY[node.entityType] ?? 0.5;
5569
+ const railColor = (0, import_styles28.alpha)(entityColor, railOpacity);
5570
+ const renderedChildren = hasChildren && expanded ? /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_material29.Box, { sx: { display: "flex", gap: `${TREE_SP.railGap}px` }, children: [
5571
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Rail, { railColor, "aria-hidden": true, "data-rail": true }),
5572
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5573
+ import_material29.Box,
5574
+ {
5575
+ role: "group",
5576
+ sx: {
5577
+ flex: 1,
5578
+ minWidth: 0,
5579
+ display: "flex",
5580
+ flexDirection: "column",
5581
+ gap: `${TREE_SP.rowGap}px`
5582
+ },
5583
+ children: node.children.map((child) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5584
+ TreeRow,
5585
+ {
5586
+ node: child,
5587
+ depth: depth + 1,
5588
+ onExpandToggle,
5589
+ onCopyId,
5590
+ renderCard
5591
+ },
5592
+ child.id
5593
+ ))
5594
+ }
5595
+ )
5596
+ ] }) : null;
5597
+ const cardContent = renderCard?.(node) ?? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5598
+ DeploymentDashboardCard,
5599
+ {
5600
+ entityType: node.entityType,
5601
+ title: node.title,
5602
+ id: node.idDisplay,
5603
+ createdAt: node.createdAt,
5604
+ updatedAt: node.updatedAt,
5605
+ capacity: node.capacity,
5606
+ actions: node.actions,
5607
+ statusIndicator: node.statusIndicator,
5608
+ expandable: hasChildren,
5609
+ expanded,
5610
+ onExpandToggle: hasChildren ? toggle : void 0,
5611
+ onCopyId: onCopyId && node.idDisplay ? () => onCopyId(node.id) : void 0,
5612
+ children: renderedChildren
5613
+ }
5614
+ );
5615
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_material29.Box, { role: "treeitem", children: cardContent });
5616
+ };
5617
+ var DeploymentDashboardTree = ({
5618
+ nodes,
5619
+ onExpandToggle,
5620
+ onCopyId,
5621
+ renderCard
5622
+ }) => {
5623
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5624
+ import_material29.Box,
5625
+ {
5626
+ role: "tree",
5627
+ sx: {
5628
+ display: "flex",
5629
+ flexDirection: "column",
5630
+ gap: `${TREE_SP.rowGap}px`,
5631
+ p: `${TREE_SP.rowGap}px`
5632
+ },
5633
+ children: nodes.map((node) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
5634
+ TreeRow,
5635
+ {
5636
+ node,
5637
+ depth: 0,
5638
+ onExpandToggle,
5639
+ onCopyId,
5640
+ renderCard
5641
+ },
5642
+ node.id
5643
+ ))
5644
+ }
5645
+ );
5646
+ };
5647
+
5648
+ // src/components/layout/DeploymentDashboardPanel/DeploymentDashboardPanel.tsx
5649
+ var import_material30 = require("@mui/material");
5650
+ var import_styles29 = require("@mui/material/styles");
5651
+ var import_jsx_runtime46 = require("react/jsx-runtime");
5652
+ var PANEL_RADIUS = 12;
5653
+ var PANEL_SHADOW = "0px 1px 3px rgba(0, 0, 0, 0.08)";
5654
+ var StyledPanel = (0, import_styles29.styled)(import_material30.Box)({
5655
+ backgroundColor: deploymentSurfaceTokens.surfaceHigh,
5656
+ border: `1px solid ${deploymentSurfaceTokens.strokeOutside}`,
5657
+ borderRadius: PANEL_RADIUS,
5658
+ boxShadow: PANEL_SHADOW,
5659
+ overflow: "hidden"
5660
+ });
5661
+ var DeploymentDashboardPanel = ({
5662
+ children,
5663
+ className,
5664
+ padding = 2
5665
+ }) => {
5666
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(StyledPanel, { className, sx: { p: padding }, children });
5667
+ };
5668
+
5669
+ // src/components/layout/Avatar.tsx
5670
+ var import_Avatar = __toESM(require("@mui/material/Avatar"));
5671
+ var import_styles30 = require("@mui/material/styles");
5672
+ var import_jsx_runtime47 = require("react/jsx-runtime");
4989
5673
  var sizeMap = {
4990
5674
  small: 32,
4991
5675
  medium: 40,
4992
5676
  large: 56
4993
5677
  };
4994
- var StyledAvatar = (0, import_styles26.styled)(import_Avatar.default, {
5678
+ var StyledAvatar = (0, import_styles30.styled)(import_Avatar.default, {
4995
5679
  shouldForwardProp: (prop) => prop !== "avatarSize"
4996
5680
  })(({ avatarSize = 40 }) => ({
4997
5681
  width: avatarSize,
@@ -5002,18 +5686,18 @@ var StyledAvatar = (0, import_styles26.styled)(import_Avatar.default, {
5002
5686
  }));
5003
5687
  var Avatar5 = ({ size: size3 = "medium", ...props }) => {
5004
5688
  const avatarSize = typeof size3 === "number" ? size3 : sizeMap[size3];
5005
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(StyledAvatar, { avatarSize, ...props });
5689
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(StyledAvatar, { avatarSize, ...props });
5006
5690
  };
5007
5691
 
5008
5692
  // src/components/layout/Table.tsx
5009
- var import_material27 = require("@mui/material");
5010
- var import_styles27 = require("@mui/material/styles");
5011
- var import_jsx_runtime43 = require("react/jsx-runtime");
5012
- var StyledTableContainer = (0, import_styles27.styled)(import_material27.TableContainer)({
5693
+ var import_material31 = require("@mui/material");
5694
+ var import_styles31 = require("@mui/material/styles");
5695
+ var import_jsx_runtime48 = require("react/jsx-runtime");
5696
+ var StyledTableContainer = (0, import_styles31.styled)(import_material31.TableContainer)({
5013
5697
  borderRadius: 8,
5014
5698
  border: `1px solid ${colors.grey[200]}`
5015
5699
  });
5016
- var StyledTableHead = (0, import_styles27.styled)(import_material27.TableHead)({
5700
+ var StyledTableHead = (0, import_styles31.styled)(import_material31.TableHead)({
5017
5701
  backgroundColor: colors.grey[50],
5018
5702
  "& .MuiTableCell-head": {
5019
5703
  fontWeight: 600,
@@ -5021,7 +5705,7 @@ var StyledTableHead = (0, import_styles27.styled)(import_material27.TableHead)({
5021
5705
  }
5022
5706
  });
5023
5707
  var Table = ({ stickyHeader = false, children, ...props }) => {
5024
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(StyledTableContainer, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_material27.Table, { stickyHeader, ...props, children }) });
5708
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyledTableContainer, { children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_material31.Table, { stickyHeader, ...props, children }) });
5025
5709
  };
5026
5710
  var TableHeader = ({
5027
5711
  columns,
@@ -5029,8 +5713,8 @@ var TableHeader = ({
5029
5713
  order = "asc",
5030
5714
  onSort
5031
5715
  }) => {
5032
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(StyledTableHead, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_material27.TableRow, { children: columns.map((column) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_material27.TableCell, { align: column.align || "left", children: column.sortable && onSort ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
5033
- import_material27.TableSortLabel,
5716
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyledTableHead, { children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_material31.TableRow, { children: columns.map((column) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_material31.TableCell, { align: column.align || "left", children: column.sortable && onSort ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
5717
+ import_material31.TableSortLabel,
5034
5718
  {
5035
5719
  active: orderBy === column.id,
5036
5720
  direction: orderBy === column.id ? order : "asc",
@@ -5041,15 +5725,15 @@ var TableHeader = ({
5041
5725
  };
5042
5726
 
5043
5727
  // src/components/layout/Grid.tsx
5044
- var import_material28 = require("@mui/material");
5728
+ var import_material32 = require("@mui/material");
5045
5729
 
5046
5730
  // src/components/layout/Breadcrumbs.tsx
5047
5731
  var import_Breadcrumbs = __toESM(require("@mui/material/Breadcrumbs"));
5048
5732
  var import_Link3 = __toESM(require("@mui/material/Link"));
5049
5733
  var import_Typography = __toESM(require("@mui/material/Typography"));
5050
- var import_styles28 = require("@mui/material/styles");
5051
- var import_jsx_runtime44 = require("react/jsx-runtime");
5052
- var StyledBreadcrumbs = (0, import_styles28.styled)(import_Breadcrumbs.default)({
5734
+ var import_styles32 = require("@mui/material/styles");
5735
+ var import_jsx_runtime49 = require("react/jsx-runtime");
5736
+ var StyledBreadcrumbs = (0, import_styles32.styled)(import_Breadcrumbs.default)({
5053
5737
  "& .MuiBreadcrumbs-ol": {
5054
5738
  flexWrap: "nowrap"
5055
5739
  },
@@ -5057,7 +5741,7 @@ var StyledBreadcrumbs = (0, import_styles28.styled)(import_Breadcrumbs.default)(
5057
5741
  color: colors.text.secondary
5058
5742
  }
5059
5743
  });
5060
- var StyledLink2 = (0, import_styles28.styled)(import_Link3.default)({
5744
+ var StyledLink2 = (0, import_styles32.styled)(import_Link3.default)({
5061
5745
  color: colors.primary.main,
5062
5746
  textDecoration: "none",
5063
5747
  "&:hover": {
@@ -5065,12 +5749,12 @@ var StyledLink2 = (0, import_styles28.styled)(import_Link3.default)({
5065
5749
  }
5066
5750
  });
5067
5751
  var Breadcrumbs = ({ items, ...props }) => {
5068
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(StyledBreadcrumbs, { ...props, children: items.map((item, index) => {
5752
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(StyledBreadcrumbs, { ...props, children: items.map((item, index) => {
5069
5753
  const isLast = index === items.length - 1;
5070
5754
  if (isLast || !item.href && !item.onClick) {
5071
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Typography.default, { color: "text.primary", children: item.label }, index);
5755
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_Typography.default, { color: "text.primary", children: item.label }, index);
5072
5756
  }
5073
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
5757
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
5074
5758
  StyledLink2,
5075
5759
  {
5076
5760
  href: item.href,
@@ -5088,11 +5772,11 @@ var Breadcrumbs = ({ items, ...props }) => {
5088
5772
  };
5089
5773
 
5090
5774
  // src/components/layout/Accordion.tsx
5091
- var import_material29 = require("@mui/material");
5092
- var import_ExpandMore = __toESM(require("@mui/icons-material/ExpandMore"));
5093
- var import_styles29 = require("@mui/material/styles");
5094
- var import_jsx_runtime45 = require("react/jsx-runtime");
5095
- var StyledAccordion = (0, import_styles29.styled)(import_material29.Accordion)({
5775
+ var import_material33 = require("@mui/material");
5776
+ var import_ExpandMore2 = __toESM(require("@mui/icons-material/ExpandMore"));
5777
+ var import_styles33 = require("@mui/material/styles");
5778
+ var import_jsx_runtime50 = require("react/jsx-runtime");
5779
+ var StyledAccordion = (0, import_styles33.styled)(import_material33.Accordion)({
5096
5780
  borderRadius: 8,
5097
5781
  boxShadow: "none",
5098
5782
  border: `1px solid ${colors.grey[200]}`,
@@ -5103,7 +5787,7 @@ var StyledAccordion = (0, import_styles29.styled)(import_material29.Accordion)({
5103
5787
  margin: 0
5104
5788
  }
5105
5789
  });
5106
- var StyledAccordionSummary = (0, import_styles29.styled)(import_material29.AccordionSummary)({
5790
+ var StyledAccordionSummary = (0, import_styles33.styled)(import_material33.AccordionSummary)({
5107
5791
  backgroundColor: colors.grey[50],
5108
5792
  borderRadius: "8px 8px 0 0",
5109
5793
  "&.Mui-expanded": {
@@ -5113,7 +5797,7 @@ var StyledAccordionSummary = (0, import_styles29.styled)(import_material29.Accor
5113
5797
  margin: "12px 0"
5114
5798
  }
5115
5799
  });
5116
- var StyledAccordionDetails = (0, import_styles29.styled)(import_material29.AccordionDetails)({
5800
+ var StyledAccordionDetails = (0, import_styles33.styled)(import_material33.AccordionDetails)({
5117
5801
  padding: "16px"
5118
5802
  });
5119
5803
  var Accordion = ({
@@ -5122,17 +5806,17 @@ var Accordion = ({
5122
5806
  defaultExpanded = false,
5123
5807
  ...props
5124
5808
  }) => {
5125
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(StyledAccordion, { defaultExpanded, ...props, children: [
5126
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StyledAccordionSummary, { expandIcon: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_ExpandMore.default, {}), children: title }),
5127
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(StyledAccordionDetails, { children })
5809
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(StyledAccordion, { defaultExpanded, ...props, children: [
5810
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(StyledAccordionSummary, { expandIcon: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_ExpandMore2.default, {}), children: title }),
5811
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(StyledAccordionDetails, { children })
5128
5812
  ] });
5129
5813
  };
5130
5814
 
5131
5815
  // src/components/layout/Paper.tsx
5132
5816
  var import_Paper = __toESM(require("@mui/material/Paper"));
5133
- var import_styles30 = require("@mui/material/styles");
5134
- var import_jsx_runtime46 = require("react/jsx-runtime");
5135
- var StyledPaper = (0, import_styles30.styled)(import_Paper.default)({
5817
+ var import_styles34 = require("@mui/material/styles");
5818
+ var import_jsx_runtime51 = require("react/jsx-runtime");
5819
+ var StyledPaper = (0, import_styles34.styled)(import_Paper.default)({
5136
5820
  borderRadius: 8,
5137
5821
  "&.MuiPaper-elevation": {
5138
5822
  boxShadow: "0px 2px 8px rgba(0, 0, 0, 0.08)"
@@ -5142,38 +5826,38 @@ var StyledPaper = (0, import_styles30.styled)(import_Paper.default)({
5142
5826
  boxShadow: "none"
5143
5827
  }
5144
5828
  });
5145
- var Paper = ({ variant = "elevation", ...props }) => {
5146
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(StyledPaper, { variant, elevation: variant === "elevation" ? 1 : 0, ...props });
5829
+ var Paper2 = ({ variant = "elevation", ...props }) => {
5830
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(StyledPaper, { variant, elevation: variant === "elevation" ? 1 : 0, ...props });
5147
5831
  };
5148
5832
 
5149
5833
  // src/components/layout/Divider.tsx
5150
5834
  var import_Divider = __toESM(require("@mui/material/Divider"));
5151
- var import_styles31 = require("@mui/material/styles");
5152
- var import_jsx_runtime47 = require("react/jsx-runtime");
5153
- var StyledDivider = (0, import_styles31.styled)(import_Divider.default)({
5835
+ var import_styles35 = require("@mui/material/styles");
5836
+ var import_jsx_runtime52 = require("react/jsx-runtime");
5837
+ var StyledDivider = (0, import_styles35.styled)(import_Divider.default)({
5154
5838
  borderColor: colors.grey[200]
5155
5839
  });
5156
5840
  var Divider4 = ({ ...props }) => {
5157
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(StyledDivider, { ...props });
5841
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StyledDivider, { ...props });
5158
5842
  };
5159
5843
 
5160
5844
  // src/components/layout/Stack.tsx
5161
- var import_material30 = require("@mui/material");
5845
+ var import_material34 = require("@mui/material");
5162
5846
 
5163
5847
  // src/components/layout/Box.tsx
5164
- var import_material31 = require("@mui/material");
5848
+ var import_material35 = require("@mui/material");
5165
5849
 
5166
5850
  // src/components/layout/Typography.tsx
5167
- var import_material32 = require("@mui/material");
5851
+ var import_material36 = require("@mui/material");
5168
5852
 
5169
5853
  // src/components/layout/Container.tsx
5170
- var import_material33 = require("@mui/material");
5854
+ var import_material37 = require("@mui/material");
5171
5855
 
5172
5856
  // src/components/layout/AppBar.tsx
5173
- var import_material34 = require("@mui/material");
5174
- var import_styles32 = require("@mui/material/styles");
5175
- var import_jsx_runtime48 = require("react/jsx-runtime");
5176
- var StyledAppBar = (0, import_styles32.styled)(import_material34.AppBar, {
5857
+ var import_material38 = require("@mui/material");
5858
+ var import_styles36 = require("@mui/material/styles");
5859
+ var import_jsx_runtime53 = require("react/jsx-runtime");
5860
+ var StyledAppBar = (0, import_styles36.styled)(import_material38.AppBar, {
5177
5861
  shouldForwardProp: (prop) => prop !== "appBarHeight"
5178
5862
  })(({ appBarHeight = 64 }) => ({
5179
5863
  backgroundColor: colors.background.paper,
@@ -5182,31 +5866,31 @@ var StyledAppBar = (0, import_styles32.styled)(import_material34.AppBar, {
5182
5866
  height: appBarHeight,
5183
5867
  zIndex: 1300
5184
5868
  }));
5185
- var StyledToolbar = (0, import_styles32.styled)(import_material34.Toolbar)(({ theme: theme2 }) => ({
5869
+ var StyledToolbar = (0, import_styles36.styled)(import_material38.Toolbar)(({ theme: theme2 }) => ({
5186
5870
  height: "100%",
5187
5871
  paddingLeft: theme2.spacing(2),
5188
5872
  paddingRight: theme2.spacing(2),
5189
5873
  gap: theme2.spacing(2)
5190
5874
  }));
5191
5875
  var AppBar = ({ height = 64, children, ...props }) => {
5192
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyledAppBar, { position: "fixed", appBarHeight: height, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(StyledToolbar, { children }) });
5876
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StyledAppBar, { position: "fixed", appBarHeight: height, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(StyledToolbar, { children }) });
5193
5877
  };
5194
5878
 
5195
5879
  // src/components/layout/Collapse.tsx
5196
- var import_material35 = require("@mui/material");
5197
- var import_jsx_runtime49 = require("react/jsx-runtime");
5880
+ var import_material39 = require("@mui/material");
5881
+ var import_jsx_runtime54 = require("react/jsx-runtime");
5198
5882
  var Collapse = (props) => {
5199
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material35.Collapse, { ...props });
5883
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_material39.Collapse, { ...props });
5200
5884
  };
5201
5885
 
5202
5886
  // src/components/feedback/Alert.tsx
5203
- var import_react14 = __toESM(require("react"));
5887
+ var import_react15 = __toESM(require("react"));
5204
5888
  var import_Alert = __toESM(require("@mui/material/Alert"));
5205
- var import_material36 = require("@mui/material");
5889
+ var import_material40 = require("@mui/material");
5206
5890
  var import_Snackbar = __toESM(require("@mui/material/Snackbar"));
5207
- var import_styles33 = require("@mui/material/styles");
5208
- var import_jsx_runtime50 = require("react/jsx-runtime");
5209
- var StyledAlert = (0, import_styles33.styled)(import_Alert.default)({
5891
+ var import_styles37 = require("@mui/material/styles");
5892
+ var import_jsx_runtime55 = require("react/jsx-runtime");
5893
+ var StyledAlert = (0, import_styles37.styled)(import_Alert.default)({
5210
5894
  borderRadius: 8,
5211
5895
  "&.MuiAlert-filled": {
5212
5896
  borderRadius: 8
@@ -5218,12 +5902,12 @@ var Alert2 = ({
5218
5902
  children,
5219
5903
  ...props
5220
5904
  }) => {
5221
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(StyledAlert, { severity, ...props, children: [
5222
- title && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_material36.AlertTitle, { children: title }),
5905
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(StyledAlert, { severity, ...props, children: [
5906
+ title && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_material40.AlertTitle, { children: title }),
5223
5907
  children
5224
5908
  ] });
5225
5909
  };
5226
- var StyledSnackbar = (0, import_styles33.styled)(import_Snackbar.default)({});
5910
+ var StyledSnackbar = (0, import_styles37.styled)(import_Snackbar.default)({});
5227
5911
  var Snackbar2 = ({
5228
5912
  message,
5229
5913
  severity = "info",
@@ -5241,7 +5925,7 @@ var Snackbar2 = ({
5241
5925
  }
5242
5926
  onClose?.();
5243
5927
  };
5244
- const content = children || (message ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
5928
+ const content = children || (message ? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
5245
5929
  Alert2,
5246
5930
  {
5247
5931
  onClose: onClose ? handleClose : void 0,
@@ -5255,9 +5939,9 @@ var Snackbar2 = ({
5255
5939
  if (!content) {
5256
5940
  return null;
5257
5941
  }
5258
- const NoTransition = import_react14.default.forwardRef(
5942
+ const NoTransition = import_react15.default.forwardRef(
5259
5943
  (props2, ref) => {
5260
- return import_react14.default.cloneElement(props2.children, {
5944
+ return import_react15.default.cloneElement(props2.children, {
5261
5945
  ref,
5262
5946
  style: {
5263
5947
  ...props2.children.props.style,
@@ -5267,7 +5951,7 @@ var Snackbar2 = ({
5267
5951
  }
5268
5952
  );
5269
5953
  NoTransition.displayName = "NoTransition";
5270
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
5954
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
5271
5955
  StyledSnackbar,
5272
5956
  {
5273
5957
  anchorOrigin,
@@ -5287,16 +5971,16 @@ var Snackbar2 = ({
5287
5971
  };
5288
5972
 
5289
5973
  // src/components/feedback/EmptyState.tsx
5290
- var import_material37 = require("@mui/material");
5291
- var import_jsx_runtime51 = require("react/jsx-runtime");
5974
+ var import_material41 = require("@mui/material");
5975
+ var import_jsx_runtime56 = require("react/jsx-runtime");
5292
5976
  var EmptyState = ({
5293
5977
  title = "No items found",
5294
5978
  description,
5295
5979
  icon,
5296
5980
  action
5297
5981
  }) => {
5298
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
5299
- import_material37.Box,
5982
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
5983
+ import_material41.Box,
5300
5984
  {
5301
5985
  sx: {
5302
5986
  display: "flex",
@@ -5308,8 +5992,8 @@ var EmptyState = ({
5308
5992
  minHeight: 200
5309
5993
  },
5310
5994
  children: [
5311
- icon && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
5312
- import_material37.Box,
5995
+ icon && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
5996
+ import_material41.Box,
5313
5997
  {
5314
5998
  sx: {
5315
5999
  color: colors.text.secondary,
@@ -5319,24 +6003,24 @@ var EmptyState = ({
5319
6003
  children: icon
5320
6004
  }
5321
6005
  ),
5322
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_material37.Typography, { variant: "h6", sx: { marginBottom: 1, color: colors.text.primary }, children: title }),
5323
- description && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_material37.Typography, { variant: "body2", sx: { color: colors.text.secondary, marginBottom: 3 }, children: description }),
5324
- action && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_material37.Box, { children: action })
6006
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_material41.Typography, { variant: "h6", sx: { marginBottom: 1, color: colors.text.primary }, children: title }),
6007
+ description && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_material41.Typography, { variant: "body2", sx: { color: colors.text.secondary, marginBottom: 3 }, children: description }),
6008
+ action && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_material41.Box, { children: action })
5325
6009
  ]
5326
6010
  }
5327
6011
  );
5328
6012
  };
5329
6013
 
5330
6014
  // src/components/feedback/Loading.tsx
5331
- var import_material38 = require("@mui/material");
5332
- var import_jsx_runtime52 = require("react/jsx-runtime");
6015
+ var import_material42 = require("@mui/material");
6016
+ var import_jsx_runtime57 = require("react/jsx-runtime");
5333
6017
  var Loading = ({
5334
6018
  message = "Loading...",
5335
6019
  size: size3 = 40,
5336
6020
  fullScreen = false
5337
6021
  }) => {
5338
- const content = /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
5339
- import_material38.Box,
6022
+ const content = /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
6023
+ import_material42.Box,
5340
6024
  {
5341
6025
  sx: {
5342
6026
  display: "flex",
@@ -5358,8 +6042,8 @@ var Loading = ({
5358
6042
  }
5359
6043
  },
5360
6044
  children: [
5361
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material38.CircularProgress, { size: size3, thickness: 4 }),
5362
- message && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material38.Typography, { variant: "body2", color: "text.secondary", children: message })
6045
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_material42.CircularProgress, { size: size3, thickness: 4 }),
6046
+ message && /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_material42.Typography, { variant: "body2", color: "text.secondary", children: message })
5363
6047
  ]
5364
6048
  }
5365
6049
  );
@@ -5367,15 +6051,15 @@ var Loading = ({
5367
6051
  };
5368
6052
 
5369
6053
  // src/components/feedback/AppLoading.tsx
5370
- var import_material39 = require("@mui/material");
5371
- var import_jsx_runtime53 = require("react/jsx-runtime");
6054
+ var import_material43 = require("@mui/material");
6055
+ var import_jsx_runtime58 = require("react/jsx-runtime");
5372
6056
  var AppLoading = ({
5373
6057
  message = "Loading...",
5374
6058
  logo = "/icons/logo.png",
5375
6059
  sx = {}
5376
6060
  }) => {
5377
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
5378
- import_material39.Box,
6061
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6062
+ import_material43.Box,
5379
6063
  {
5380
6064
  sx: {
5381
6065
  display: "flex",
@@ -5393,8 +6077,8 @@ var AppLoading = ({
5393
6077
  ...sx
5394
6078
  },
5395
6079
  children: [
5396
- logo && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
5397
- import_material39.Box,
6080
+ logo && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6081
+ import_material43.Box,
5398
6082
  {
5399
6083
  component: "img",
5400
6084
  src: logo,
@@ -5406,31 +6090,31 @@ var AppLoading = ({
5406
6090
  }
5407
6091
  }
5408
6092
  ),
5409
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_material39.CircularProgress, { size: 40, thickness: 4, sx: { mb: 2 } }),
5410
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_material39.Typography, { variant: "body1", color: "text.secondary", children: message })
6093
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material43.CircularProgress, { size: 40, thickness: 4, sx: { mb: 2 } }),
6094
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_material43.Typography, { variant: "body1", color: "text.secondary", children: message })
5411
6095
  ]
5412
6096
  }
5413
6097
  );
5414
6098
  };
5415
6099
 
5416
6100
  // src/components/feedback/CircularProgress.tsx
5417
- var import_material40 = require("@mui/material");
5418
- var import_jsx_runtime54 = require("react/jsx-runtime");
6101
+ var import_material44 = require("@mui/material");
6102
+ var import_jsx_runtime59 = require("react/jsx-runtime");
5419
6103
  var CircularProgress6 = ({
5420
6104
  size: size3 = 40,
5421
6105
  thickness = 4,
5422
6106
  ...props
5423
6107
  }) => {
5424
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_material40.CircularProgress, { size: size3, thickness, ...props });
6108
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_material44.CircularProgress, { size: size3, thickness, ...props });
5425
6109
  };
5426
6110
 
5427
6111
  // src/components/icons/ActivityAppIcon.tsx
5428
- var import_react15 = require("react");
5429
- var import_material41 = require("@mui/material");
5430
- var import_jsx_runtime55 = require("react/jsx-runtime");
5431
- var ActivityAppIcon = (0, import_react15.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_material41.SvgIcon, { ...props, viewBox: "0 0 36 36", children: [
5432
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("rect", { fill: "none", stroke: "currentColor", width: 34, height: 34, x: 1, y: 1, strokeWidth: 1.5, rx: 6.8 }),
5433
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6112
+ var import_react16 = require("react");
6113
+ var import_material45 = require("@mui/material");
6114
+ var import_jsx_runtime60 = require("react/jsx-runtime");
6115
+ var ActivityAppIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_material45.SvgIcon, { ...props, viewBox: "0 0 36 36", children: [
6116
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("rect", { fill: "none", stroke: "currentColor", width: 34, height: 34, x: 1, y: 1, strokeWidth: 1.5, rx: 6.8 }),
6117
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5434
6118
  "rect",
5435
6119
  {
5436
6120
  fill: "none",
@@ -5443,7 +6127,7 @@ var ActivityAppIcon = (0, import_react15.memo)((props) => /* @__PURE__ */ (0, im
5443
6127
  rx: 1.7
5444
6128
  }
5445
6129
  ),
5446
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6130
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5447
6131
  "rect",
5448
6132
  {
5449
6133
  fill: "none",
@@ -5456,7 +6140,7 @@ var ActivityAppIcon = (0, import_react15.memo)((props) => /* @__PURE__ */ (0, im
5456
6140
  rx: 1.7
5457
6141
  }
5458
6142
  ),
5459
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6143
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5460
6144
  "rect",
5461
6145
  {
5462
6146
  fill: "none",
@@ -5472,10 +6156,10 @@ var ActivityAppIcon = (0, import_react15.memo)((props) => /* @__PURE__ */ (0, im
5472
6156
  ] }));
5473
6157
 
5474
6158
  // src/components/icons/ArrowLeft.tsx
5475
- var import_material42 = require("@mui/material");
5476
- var import_jsx_runtime56 = require("react/jsx-runtime");
6159
+ var import_material46 = require("@mui/material");
6160
+ var import_jsx_runtime61 = require("react/jsx-runtime");
5477
6161
  var LeftArrowIcon = (props) => {
5478
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_material42.SvgIcon, { ...props, width: "24", height: "24", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("g", { id: " Arrow Left", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6162
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_material46.SvgIcon, { ...props, width: "24", height: "24", viewBox: "0 0 24 24", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("g", { id: " Arrow Left", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5479
6163
  "path",
5480
6164
  {
5481
6165
  id: "Vector (Stroke)",
@@ -5488,10 +6172,10 @@ var LeftArrowIcon = (props) => {
5488
6172
  };
5489
6173
 
5490
6174
  // src/components/icons/ArrowRight.tsx
5491
- var import_material43 = require("@mui/material");
5492
- var import_jsx_runtime57 = require("react/jsx-runtime");
6175
+ var import_material47 = require("@mui/material");
6176
+ var import_jsx_runtime62 = require("react/jsx-runtime");
5493
6177
  var RightArrowIcon = (props) => {
5494
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_material43.SvgIcon, { ...props, width: "25", height: "24", viewBox: "0 0 25 24", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6178
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_material47.SvgIcon, { ...props, width: "25", height: "24", viewBox: "0 0 25 24", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
5495
6179
  "path",
5496
6180
  {
5497
6181
  fillRule: "evenodd",
@@ -5503,11 +6187,11 @@ var RightArrowIcon = (props) => {
5503
6187
  };
5504
6188
 
5505
6189
  // src/components/icons/AvatarIcon.tsx
5506
- var import_material44 = require("@mui/material");
5507
- var import_jsx_runtime58 = require("react/jsx-runtime");
6190
+ var import_material48 = require("@mui/material");
6191
+ var import_jsx_runtime63 = require("react/jsx-runtime");
5508
6192
  var AvatarIcon = (props) => {
5509
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(import_material44.SvgIcon, { ...props, viewBox: "0 0 16 16", children: [
5510
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6193
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_material48.SvgIcon, { ...props, viewBox: "0 0 16 16", children: [
6194
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
5511
6195
  "path",
5512
6196
  {
5513
6197
  fillRule: "evenodd",
@@ -5516,7 +6200,7 @@ var AvatarIcon = (props) => {
5516
6200
  fill: "#1D1B20"
5517
6201
  }
5518
6202
  ),
5519
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6203
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
5520
6204
  "path",
5521
6205
  {
5522
6206
  fillRule: "evenodd",
@@ -5529,11 +6213,11 @@ var AvatarIcon = (props) => {
5529
6213
  };
5530
6214
 
5531
6215
  // src/components/icons/BarTrackingIcon.tsx
5532
- var import_react16 = require("react");
5533
- var import_material45 = require("@mui/material");
5534
- var import_jsx_runtime59 = require("react/jsx-runtime");
5535
- var BarTrackingIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_material45.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
5536
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6216
+ var import_react17 = require("react");
6217
+ var import_material49 = require("@mui/material");
6218
+ var import_jsx_runtime64 = require("react/jsx-runtime");
6219
+ var BarTrackingIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_material49.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
6220
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
5537
6221
  "rect",
5538
6222
  {
5539
6223
  x: "7.19922",
@@ -5546,7 +6230,7 @@ var BarTrackingIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
5546
6230
  fill: "none"
5547
6231
  }
5548
6232
  ),
5549
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6233
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
5550
6234
  "rect",
5551
6235
  {
5552
6236
  x: "21.0371",
@@ -5559,7 +6243,7 @@ var BarTrackingIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
5559
6243
  strokeWidth: "2"
5560
6244
  }
5561
6245
  ),
5562
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6246
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
5563
6247
  "rect",
5564
6248
  {
5565
6249
  x: "40.4746",
@@ -5572,7 +6256,7 @@ var BarTrackingIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
5572
6256
  strokeWidth: "2"
5573
6257
  }
5574
6258
  ),
5575
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6259
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
5576
6260
  "rect",
5577
6261
  {
5578
6262
  x: "59.8828",
@@ -5588,10 +6272,10 @@ var BarTrackingIcon = (0, import_react16.memo)((props) => /* @__PURE__ */ (0, im
5588
6272
  ] }));
5589
6273
 
5590
6274
  // src/components/icons/ClockIcon.tsx
5591
- var import_react17 = require("react");
5592
- var import_material46 = require("@mui/material");
5593
- var import_jsx_runtime60 = require("react/jsx-runtime");
5594
- var ClockIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_material46.SvgIcon, { ...props, viewBox: "0 0 22 22", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
6275
+ var import_react18 = require("react");
6276
+ var import_material50 = require("@mui/material");
6277
+ var import_jsx_runtime65 = require("react/jsx-runtime");
6278
+ var ClockIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_material50.SvgIcon, { ...props, viewBox: "0 0 22 22", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
5595
6279
  "path",
5596
6280
  {
5597
6281
  fill: "currentColor",
@@ -5602,11 +6286,11 @@ var ClockIcon = (0, import_react17.memo)((props) => /* @__PURE__ */ (0, import_j
5602
6286
  ) }));
5603
6287
 
5604
6288
  // src/components/icons/CloudFlashIcon.tsx
5605
- var import_react18 = require("react");
5606
- var import_material47 = require("@mui/material");
5607
- var import_jsx_runtime61 = require("react/jsx-runtime");
5608
- var CloudFlashIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(import_material47.SvgIcon, { ...props, fill: "none", viewBox: "0 0 96 97", children: [
5609
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
6289
+ var import_react19 = require("react");
6290
+ var import_material51 = require("@mui/material");
6291
+ var import_jsx_runtime66 = require("react/jsx-runtime");
6292
+ var CloudFlashIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_material51.SvgIcon, { ...props, fill: "none", viewBox: "0 0 96 97", children: [
6293
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5610
6294
  "path",
5611
6295
  {
5612
6296
  d: "M18.8029 43.3396V43.2933H19.8029C20.3752 43.2933 20.9384 43.328 21.4908 43.3937C21.9111 39.4438 22.9817 34.2181 25.6601 29.8138C28.6259 24.937 33.5595 21.0898 41.5689 21.0898C46.9417 21.0898 50.8839 22.9055 53.7292 25.6773C56.5498 28.4249 58.2303 32.0495 59.2307 35.5901C60.1768 38.9386 60.5315 42.2718 60.6446 44.8476C60.891 44.4671 61.1651 44.0792 61.4696 43.691C63.7235 40.8178 67.6089 37.9824 74.0317 37.9824C77.222 37.9824 79.8196 38.6871 81.9219 39.7574L81.9232 39.7581C86.8327 42.2671 89.793 47.4136 89.793 52.8846V54.7368C89.793 65.644 80.9404 74.4889 70.0269 74.4889H18.865C11.867 74.4889 6.19295 68.8202 6.19295 61.8256V57.184C6.19295 49.9845 11.6911 43.8799 18.8029 43.3396Z",
@@ -5615,7 +6299,7 @@ var CloudFlashIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, imp
5615
6299
  strokeWidth: "2"
5616
6300
  }
5617
6301
  ),
5618
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
6302
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
5619
6303
  "path",
5620
6304
  {
5621
6305
  d: "M79.1804 45.7001C79.1804 45.7001 60.7908 47.259 60.7908 10.0898C60.7908 10.0898 60.9856 45.7768 43.1934 45.7768C43.1934 45.7768 61.1933 48.1151 61.1933 67.6899C61.1933 67.6899 61.1933 45.7001 79.1934 45.7001H79.1804Z",
@@ -5627,11 +6311,11 @@ var CloudFlashIcon = (0, import_react18.memo)((props) => /* @__PURE__ */ (0, imp
5627
6311
  ] }));
5628
6312
 
5629
6313
  // src/components/icons/DecentralizedServerIcon.tsx
5630
- var import_react19 = require("react");
5631
- var import_material48 = require("@mui/material");
5632
- var import_jsx_runtime62 = require("react/jsx-runtime");
5633
- var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_material48.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
5634
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6314
+ var import_react20 = require("react");
6315
+ var import_material52 = require("@mui/material");
6316
+ var import_jsx_runtime67 = require("react/jsx-runtime");
6317
+ var DecentralizedServerIcon = (0, import_react20.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_material52.SvgIcon, { ...props, viewBox: "0 0 96 97", children: [
6318
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5635
6319
  "path",
5636
6320
  {
5637
6321
  d: "M14.5706 15.0858L48.016 8.29688L81.3694 15.0858L88.2242 48.3742L81.3694 81.6556L48.016 88.4445L14.5706 81.6556L7.80078 48.3742L14.5706 15.0858Z",
@@ -5642,7 +6326,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5642
6326
  strokeLinejoin: "round"
5643
6327
  }
5644
6328
  ),
5645
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6329
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5646
6330
  "path",
5647
6331
  {
5648
6332
  d: "M48.0118 11.2609C49.6622 11.2609 51.0001 9.92755 51.0001 8.28279C51.0001 6.63803 49.6622 5.30469 48.0118 5.30469C46.3614 5.30469 45.0234 6.63803 45.0234 8.28279C45.0234 9.92755 46.3614 11.2609 48.0118 11.2609Z",
@@ -5653,7 +6337,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5653
6337
  strokeLinejoin: "round"
5654
6338
  }
5655
6339
  ),
5656
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6340
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5657
6341
  "path",
5658
6342
  {
5659
6343
  d: "M48.0118 91.4132C49.6622 91.4132 51.0001 90.0799 51.0001 88.4351C51.0001 86.7904 49.6622 85.457 48.0118 85.457C46.3614 85.457 45.0234 86.7904 45.0234 88.4351C45.0234 90.0799 46.3614 91.4132 48.0118 91.4132Z",
@@ -5664,7 +6348,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5664
6348
  strokeLinejoin: "round"
5665
6349
  }
5666
6350
  ),
5667
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6351
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5668
6352
  "path",
5669
6353
  {
5670
6354
  d: "M7.79304 51.339C9.44346 51.339 10.7814 50.0057 10.7814 48.3609C10.7814 46.7162 9.44346 45.3828 7.79304 45.3828C6.14262 45.3828 4.80469 46.7162 4.80469 48.3609C4.80469 50.0057 6.14262 51.339 7.79304 51.339Z",
@@ -5675,7 +6359,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5675
6359
  strokeLinejoin: "round"
5676
6360
  }
5677
6361
  ),
5678
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6362
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5679
6363
  "path",
5680
6364
  {
5681
6365
  d: "M88.2247 51.339C89.8751 51.339 91.213 50.0057 91.213 48.3609C91.213 46.7162 89.8751 45.3828 88.2247 45.3828C86.5743 45.3828 85.2363 46.7162 85.2363 48.3609C85.2363 50.0057 86.5743 51.339 88.2247 51.339Z",
@@ -5686,7 +6370,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5686
6370
  strokeLinejoin: "round"
5687
6371
  }
5688
6372
  ),
5689
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6373
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5690
6374
  "path",
5691
6375
  {
5692
6376
  d: "M81.3477 18.0539C82.9982 18.0539 84.3361 16.7205 84.3361 15.0758C84.3361 13.431 82.9982 12.0977 81.3477 12.0977C79.6973 12.0977 78.3594 13.431 78.3594 15.0758C78.3594 16.7205 79.6973 18.0539 81.3477 18.0539Z",
@@ -5697,7 +6381,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5697
6381
  strokeLinejoin: "round"
5698
6382
  }
5699
6383
  ),
5700
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6384
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5701
6385
  "path",
5702
6386
  {
5703
6387
  d: "M14.5508 84.6203C16.2013 84.6203 17.5392 83.2869 17.5392 81.6422C17.5392 79.9974 16.2013 78.6641 14.5508 78.6641C12.9004 78.6641 11.5625 79.9974 11.5625 81.6422C11.5625 83.2869 12.9004 84.6203 14.5508 84.6203Z",
@@ -5708,7 +6392,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5708
6392
  strokeLinejoin: "round"
5709
6393
  }
5710
6394
  ),
5711
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6395
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5712
6396
  "path",
5713
6397
  {
5714
6398
  d: "M81.3477 84.6203C82.9982 84.6203 84.3361 83.2869 84.3361 81.6422C84.3361 79.9974 82.9982 78.6641 81.3477 78.6641C79.6973 78.6641 78.3594 79.9974 78.3594 81.6422C78.3594 83.2869 79.6973 84.6203 81.3477 84.6203Z",
@@ -5719,7 +6403,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5719
6403
  strokeLinejoin: "round"
5720
6404
  }
5721
6405
  ),
5722
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6406
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5723
6407
  "path",
5724
6408
  {
5725
6409
  d: "M14.5508 18.0539C16.2013 18.0539 17.5392 16.7205 17.5392 15.0758C17.5392 13.431 16.2013 12.0977 14.5508 12.0977C12.9004 12.0977 11.5625 13.431 11.5625 15.0758C11.5625 16.7205 12.9004 18.0539 14.5508 18.0539Z",
@@ -5730,7 +6414,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5730
6414
  strokeLinejoin: "round"
5731
6415
  }
5732
6416
  ),
5733
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6417
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5734
6418
  "rect",
5735
6419
  {
5736
6420
  x: "22.623",
@@ -5743,7 +6427,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5743
6427
  strokeWidth: "2"
5744
6428
  }
5745
6429
  ),
5746
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6430
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5747
6431
  "rect",
5748
6432
  {
5749
6433
  x: "22.623",
@@ -5756,7 +6440,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5756
6440
  strokeWidth: "2"
5757
6441
  }
5758
6442
  ),
5759
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6443
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5760
6444
  "rect",
5761
6445
  {
5762
6446
  x: "22.623",
@@ -5769,7 +6453,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5769
6453
  strokeWidth: "2"
5770
6454
  }
5771
6455
  ),
5772
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6456
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5773
6457
  "path",
5774
6458
  {
5775
6459
  d: "M29.612 37.1542C31.2803 37.1542 32.634 35.8026 32.634 34.1337C32.634 32.4649 31.2803 31.1133 29.612 31.1133C27.9437 31.1133 26.5901 32.4649 26.5901 34.1337C26.5901 35.8026 27.9437 37.1542 29.612 37.1542Z",
@@ -5779,7 +6463,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5779
6463
  strokeMiterlimit: "10"
5780
6464
  }
5781
6465
  ),
5782
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6466
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5783
6467
  "path",
5784
6468
  {
5785
6469
  d: "M40.3464 37.1542C42.0147 37.1542 43.3684 35.8026 43.3684 34.1337C43.3684 32.4649 42.0147 31.1133 40.3464 31.1133C38.6782 31.1133 37.3245 32.4649 37.3245 34.1337C37.3245 35.8026 38.6782 37.1542 40.3464 37.1542Z",
@@ -5789,7 +6473,7 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5789
6473
  strokeMiterlimit: "10"
5790
6474
  }
5791
6475
  ),
5792
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6476
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
5793
6477
  "path",
5794
6478
  {
5795
6479
  d: "M51.0808 37.1542C52.7491 37.1542 54.1028 35.8026 54.1028 34.1337C54.1028 32.4649 52.7491 31.1133 51.0808 31.1133C49.4125 31.1133 48.0588 32.4649 48.0588 34.1337C48.0588 35.8026 49.4125 37.1542 51.0808 37.1542Z",
@@ -5802,10 +6486,10 @@ var DecentralizedServerIcon = (0, import_react19.memo)((props) => /* @__PURE__ *
5802
6486
  ] }));
5803
6487
 
5804
6488
  // src/components/icons/DiscordIcon.tsx
5805
- var import_react20 = require("react");
5806
- var import_material49 = require("@mui/material");
5807
- var import_jsx_runtime63 = require("react/jsx-runtime");
5808
- var DiscordIcon = (0, import_react20.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_material49.SvgIcon, { ...props, viewBox: "0 0 15 12", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
6489
+ var import_react21 = require("react");
6490
+ var import_material53 = require("@mui/material");
6491
+ var import_jsx_runtime68 = require("react/jsx-runtime");
6492
+ var DiscordIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_material53.SvgIcon, { ...props, viewBox: "0 0 15 12", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
5809
6493
  "path",
5810
6494
  {
5811
6495
  fill: "currentColor",
@@ -5814,18 +6498,18 @@ var DiscordIcon = (0, import_react20.memo)((props) => /* @__PURE__ */ (0, import
5814
6498
  ) }));
5815
6499
 
5816
6500
  // src/components/icons/DownloadIcon.tsx
5817
- var import_react21 = require("react");
5818
- var import_material50 = require("@mui/material");
5819
- var import_jsx_runtime64 = require("react/jsx-runtime");
5820
- var DownloadIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_material50.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: [
5821
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6501
+ var import_react22 = require("react");
6502
+ var import_material54 = require("@mui/material");
6503
+ var import_jsx_runtime69 = require("react/jsx-runtime");
6504
+ var DownloadIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_material54.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: [
6505
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5822
6506
  "path",
5823
6507
  {
5824
6508
  d: "M8.86902 11.0041C8.77429 11.1077 8.64038 11.1667 8.5 11.1667C8.35962 11.1667 8.22571 11.1077 8.13099 11.0041L5.46432 8.08738C5.27799 7.88358 5.29215 7.56732 5.49595 7.38099C5.69975 7.19465 6.01602 7.20881 6.20235 7.41262L8 9.3788V2C8 1.72386 8.22386 1.5 8.5 1.5C8.77614 1.5 9 1.72386 9 2V9.3788L10.7977 7.41262C10.984 7.20881 11.3003 7.19465 11.5041 7.38099C11.7079 7.56732 11.722 7.88358 11.5357 8.08738L8.86902 11.0041Z",
5825
6509
  fill: "currentColor"
5826
6510
  }
5827
6511
  ),
5828
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6512
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5829
6513
  "path",
5830
6514
  {
5831
6515
  d: "M3 10C3 9.72386 2.77614 9.5 2.5 9.5C2.22386 9.5 2 9.72386 2 10V10.0366C1.99999 10.9483 1.99998 11.6832 2.07768 12.2612C2.15836 12.8612 2.33096 13.3665 2.73223 13.7678C3.13351 14.169 3.63876 14.3416 4.23883 14.4223C4.81681 14.5 5.55169 14.5 6.46342 14.5H10.5366C11.4483 14.5 12.1832 14.5 12.7612 14.4223C13.3612 14.3416 13.8665 14.169 14.2678 13.7678C14.669 13.3665 14.8416 12.8612 14.9223 12.2612C15 11.6832 15 10.9483 15 10.0366V10C15 9.72386 14.7761 9.5 14.5 9.5C14.2239 9.5 14 9.72386 14 10C14 10.9569 13.9989 11.6244 13.9312 12.1279C13.8655 12.6171 13.7452 12.8762 13.5607 13.0607C13.3762 13.2452 13.1171 13.3655 12.6279 13.4312C12.1244 13.4989 11.4569 13.5 10.5 13.5H6.5C5.54306 13.5 4.87565 13.4989 4.37208 13.4312C3.8829 13.3655 3.62385 13.2452 3.43934 13.0607C3.25483 12.8762 3.13453 12.6171 3.06877 12.1279C3.00106 11.6244 3 10.9569 3 10Z",
@@ -5835,13 +6519,13 @@ var DownloadIcon = (0, import_react21.memo)((props) => /* @__PURE__ */ (0, impor
5835
6519
  ] }));
5836
6520
 
5837
6521
  // src/components/icons/FilledFolderIcon.tsx
5838
- var import_react22 = require("react");
5839
- var import_material51 = require("@mui/material");
5840
- var import_jsx_runtime65 = require("react/jsx-runtime");
5841
- var FilledFolderIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_material51.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
5842
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#FCF8EC" }),
5843
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E1B43E" }),
5844
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6522
+ var import_react23 = require("react");
6523
+ var import_material55 = require("@mui/material");
6524
+ var import_jsx_runtime70 = require("react/jsx-runtime");
6525
+ var FilledFolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(import_material55.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
6526
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#FCF8EC" }),
6527
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E1B43E" }),
6528
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
5845
6529
  "path",
5846
6530
  {
5847
6531
  fillRule: "evenodd",
@@ -5853,13 +6537,13 @@ var FilledFolderIcon = (0, import_react22.memo)((props) => /* @__PURE__ */ (0, i
5853
6537
  ] }));
5854
6538
 
5855
6539
  // src/components/icons/FolderIcon.tsx
5856
- var import_react23 = require("react");
5857
- var import_material52 = require("@mui/material");
5858
- var import_jsx_runtime66 = require("react/jsx-runtime");
5859
- var FolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_material52.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
5860
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#F5F7FA" }),
5861
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E6E6E6" }),
5862
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6540
+ var import_react24 = require("react");
6541
+ var import_material56 = require("@mui/material");
6542
+ var import_jsx_runtime71 = require("react/jsx-runtime");
6543
+ var FolderIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_material56.SvgIcon, { sx: { fill: "none" }, ...props, fill: "none", viewBox: "0 0 22 22", children: [
6544
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", fill: "#F5F7FA" }),
6545
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("rect", { x: "0.5", y: "0.5", width: "21", height: "21", rx: "4.5", stroke: "#E6E6E6" }),
6546
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
5863
6547
  "path",
5864
6548
  {
5865
6549
  fillRule: "evenodd",
@@ -5873,18 +6557,18 @@ var FolderIcon = (0, import_react23.memo)((props) => /* @__PURE__ */ (0, import_
5873
6557
  ] }));
5874
6558
 
5875
6559
  // src/components/icons/GithubLogoIcon.tsx
5876
- var import_react24 = require("react");
5877
- var import_material53 = require("@mui/material");
5878
- var import_jsx_runtime67 = require("react/jsx-runtime");
5879
- var GithubLogoIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_material53.SvgIcon, { ...props, viewBox: "0 0 17 16", sx: { fill: "none" }, children: [
5880
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6560
+ var import_react25 = require("react");
6561
+ var import_material57 = require("@mui/material");
6562
+ var import_jsx_runtime72 = require("react/jsx-runtime");
6563
+ var GithubLogoIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(import_material57.SvgIcon, { ...props, viewBox: "0 0 17 16", sx: { fill: "none" }, children: [
6564
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
5881
6565
  "path",
5882
6566
  {
5883
6567
  d: "M8.79754 0C4.268 0 0.595032 3.67233 0.595032 8.20251C0.595032 11.8267 2.9453 14.9013 6.20443 15.9859C6.61435 16.0618 6.76488 15.808 6.76488 15.5913C6.76488 15.3957 6.75723 14.7495 6.75375 14.0642C4.47174 14.5603 3.99022 13.0964 3.99022 13.0964C3.61711 12.1483 3.07949 11.8962 3.07949 11.8962C2.33531 11.3871 3.13559 11.3975 3.13559 11.3975C3.95928 11.4554 4.393 12.2428 4.393 12.2428C5.12457 13.4968 6.31186 13.1343 6.77993 12.9247C6.85353 12.3945 7.06614 12.0327 7.30069 11.8279C5.47884 11.6204 3.56358 10.9171 3.56358 7.77413C3.56358 6.87865 3.88401 6.14688 4.40876 5.57247C4.32359 5.36584 4.04285 4.5316 4.48821 3.40175C4.48821 3.40175 5.177 3.18129 6.74449 4.24256C7.39873 4.06076 8.10045 3.96967 8.79754 3.96658C9.49463 3.96967 10.1969 4.06076 10.8524 4.24256C12.418 3.18129 13.1059 3.40175 13.1059 3.40175C13.5523 4.5316 13.2714 5.36584 13.1863 5.57247C13.7122 6.14688 14.0304 6.87858 14.0304 7.77413C14.0304 10.9245 12.1116 11.6183 10.2851 11.8213C10.5793 12.0759 10.8414 12.5751 10.8414 13.3403C10.8414 14.4378 10.8319 15.3211 10.8319 15.5913C10.8319 15.8096 10.9795 16.0654 11.3954 15.9848C14.6527 14.899 17 11.8254 17 8.20251C17 3.67233 13.3275 0 8.79754 0Z",
5884
6568
  fill: "white"
5885
6569
  }
5886
6570
  ),
5887
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6571
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
5888
6572
  "path",
5889
6573
  {
5890
6574
  d: "M3.66696 11.6845C3.64895 11.7252 3.58474 11.7374 3.5264 11.7095C3.46689 11.6828 3.43344 11.6272 3.45274 11.5863C3.47043 11.5443 3.53463 11.5326 3.59401 11.5608C3.65364 11.5875 3.68761 11.6436 3.66696 11.6845ZM4.07044 12.0445C4.03133 12.0808 3.95484 12.0639 3.90292 12.0066C3.84927 11.9494 3.83924 11.873 3.87893 11.8361C3.91926 11.7999 3.99344 11.8168 4.04722 11.8741C4.10087 11.9319 4.11129 12.0079 4.07038 12.0446M4.34726 12.5051C4.29695 12.54 4.21474 12.5073 4.16398 12.4343C4.11374 12.3615 4.11374 12.274 4.16507 12.2389C4.21602 12.2038 4.29695 12.2354 4.34842 12.3077C4.39859 12.3819 4.39859 12.4694 4.34719 12.5052M4.81533 13.0386C4.77036 13.0881 4.67464 13.0749 4.60452 13.0072C4.53285 12.9411 4.51285 12.8472 4.55794 12.7976C4.60342 12.748 4.69973 12.7619 4.77036 12.829C4.84158 12.895 4.86332 12.9896 4.81539 13.0386M5.4203 13.2187C5.40055 13.2829 5.3083 13.3121 5.2154 13.2849C5.12264 13.2568 5.06191 13.1815 5.08063 13.1166C5.09993 13.0519 5.19257 13.0215 5.28617 13.0507C5.37881 13.0787 5.43966 13.1534 5.42036 13.2187M6.1089 13.2951C6.11121 13.3628 6.03241 13.4189 5.93488 13.4201C5.83678 13.4222 5.75746 13.3675 5.75643 13.3009C5.75643 13.2326 5.83343 13.177 5.93147 13.1754C6.029 13.1735 6.1089 13.2279 6.1089 13.2951ZM6.78527 13.2692C6.79698 13.3352 6.72918 13.403 6.63236 13.421C6.53715 13.4384 6.44901 13.3976 6.43686 13.3322C6.42502 13.2645 6.49411 13.1968 6.58913 13.1792C6.68614 13.1624 6.77292 13.2021 6.78527 13.2692Z",
@@ -5894,10 +6578,10 @@ var GithubLogoIcon = (0, import_react24.memo)((props) => /* @__PURE__ */ (0, imp
5894
6578
  ] }));
5895
6579
 
5896
6580
  // src/components/icons/ShareIcon.tsx
5897
- var import_react25 = require("react");
5898
- var import_material54 = require("@mui/material");
5899
- var import_jsx_runtime68 = require("react/jsx-runtime");
5900
- var ShareIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_material54.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6581
+ var import_react26 = require("react");
6582
+ var import_material58 = require("@mui/material");
6583
+ var import_jsx_runtime73 = require("react/jsx-runtime");
6584
+ var ShareIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_material58.SvgIcon, { ...props, viewBox: "0 0 17 16", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
5901
6585
  "path",
5902
6586
  {
5903
6587
  fillRule: "evenodd",
@@ -5908,11 +6592,11 @@ var ShareIcon = (0, import_react25.memo)((props) => /* @__PURE__ */ (0, import_j
5908
6592
  ) }));
5909
6593
 
5910
6594
  // src/components/icons/StorageAppIcon.tsx
5911
- var import_react26 = require("react");
5912
- var import_material55 = require("@mui/material");
5913
- var import_jsx_runtime69 = require("react/jsx-runtime");
5914
- var StorageAppIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_material55.SvgIcon, { ...props, viewBox: "0 0 38 29", fill: "none", children: [
5915
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6595
+ var import_react27 = require("react");
6596
+ var import_material59 = require("@mui/material");
6597
+ var import_jsx_runtime74 = require("react/jsx-runtime");
6598
+ var StorageAppIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_material59.SvgIcon, { ...props, viewBox: "0 0 38 29", fill: "none", children: [
6599
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
5916
6600
  "path",
5917
6601
  {
5918
6602
  d: "M6.25415 13.3371V13.2515H7.25415C7.31809 13.2515 7.38176 13.2524 7.44516 13.2543C7.66366 11.6446 8.14354 9.64623 9.19625 7.91521C10.5234 5.73296 12.756 4 16.3233 4C18.7076 4 20.4981 4.81149 21.7972 6.07693C23.0714 7.31823 23.8108 8.93436 24.2437 10.4665C24.4895 11.3363 24.6426 12.2007 24.7362 12.9909C25.8141 11.9297 27.4506 11.0385 29.8495 11.0385C31.2681 11.0385 32.4415 11.3528 33.4017 11.8416L33.4031 11.8423C35.655 12.9932 37 15.3454 37 17.8312V18.6029C37 23.4701 33.0499 27.4163 28.1808 27.4163H6.86335C3.62577 27.4163 1 24.7935 1 21.5565V19.6226C1 16.5122 3.24401 13.8341 6.25415 13.3371Z",
@@ -5921,7 +6605,7 @@ var StorageAppIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, imp
5921
6605
  fill: "none"
5922
6606
  }
5923
6607
  ),
5924
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6608
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
5925
6609
  "path",
5926
6610
  {
5927
6611
  d: "M31.9946 14.8376C31.9946 14.8376 24.3322 15.4871 24.3322 0C24.3322 0 24.4134 14.8696 17 14.8696C17 14.8696 24.5 15.8438 24.5 24C24.5 24 24.5 14.8376 32 14.8376H31.9946Z",
@@ -5933,10 +6617,10 @@ var StorageAppIcon = (0, import_react26.memo)((props) => /* @__PURE__ */ (0, imp
5933
6617
  ] }));
5934
6618
 
5935
6619
  // src/components/icons/UploadFileIcon.tsx
5936
- var import_react27 = require("react");
5937
- var import_material56 = require("@mui/material");
5938
- var import_jsx_runtime70 = require("react/jsx-runtime");
5939
- var UploadFileIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_material56.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6620
+ var import_react28 = require("react");
6621
+ var import_material60 = require("@mui/material");
6622
+ var import_jsx_runtime75 = require("react/jsx-runtime");
6623
+ var UploadFileIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_material60.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
5940
6624
  "path",
5941
6625
  {
5942
6626
  fillRule: "evenodd",
@@ -5949,10 +6633,10 @@ var UploadFileIcon = (0, import_react27.memo)((props) => /* @__PURE__ */ (0, imp
5949
6633
  ) }));
5950
6634
 
5951
6635
  // src/components/icons/UploadFolderIcon.tsx
5952
- var import_react28 = require("react");
5953
- var import_material57 = require("@mui/material");
5954
- var import_jsx_runtime71 = require("react/jsx-runtime");
5955
- var UploadFolderIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_material57.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6636
+ var import_react29 = require("react");
6637
+ var import_material61 = require("@mui/material");
6638
+ var import_jsx_runtime76 = require("react/jsx-runtime");
6639
+ var UploadFolderIcon = (0, import_react29.memo)((props) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_material61.SvgIcon, { ...props, viewBox: "0 0 12 12", children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
5956
6640
  "path",
5957
6641
  {
5958
6642
  fillRule: "evenodd",
@@ -5965,14 +6649,14 @@ var UploadFolderIcon = (0, import_react28.memo)((props) => /* @__PURE__ */ (0, i
5965
6649
  ) }));
5966
6650
 
5967
6651
  // src/components/utilities/Markdown/Markdown.tsx
5968
- var import_material58 = require("@mui/material");
6652
+ var import_material62 = require("@mui/material");
5969
6653
  var import_github = require("highlight.js/styles/github.css");
5970
6654
  var import_github_markdown_light = require("github-markdown-css/github-markdown-light.css");
5971
6655
  var import_react_markdown = __toESM(require("react-markdown"));
5972
6656
  var import_rehype_highlight = __toESM(require("rehype-highlight"));
5973
6657
  var import_rehype_raw = __toESM(require("rehype-raw"));
5974
- var import_jsx_runtime72 = require("react/jsx-runtime");
5975
- var Content = (0, import_material58.styled)(import_material58.Box)(({ theme: theme2 }) => ({
6658
+ var import_jsx_runtime77 = require("react/jsx-runtime");
6659
+ var Content = (0, import_material62.styled)(import_material62.Box)(({ theme: theme2 }) => ({
5976
6660
  backgroundColor: "transparent",
5977
6661
  ...theme2.typography.body1,
5978
6662
  color: theme2.palette.text.primary,
@@ -5989,36 +6673,36 @@ var Content = (0, import_material58.styled)(import_material58.Box)(({ theme: the
5989
6673
  backgroundColor: theme2.palette.background.paper
5990
6674
  }
5991
6675
  }));
5992
- var Markdown = ({ content, children }) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(Content, { className: "markdown-body", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react_markdown.default, { rehypePlugins: [import_rehype_highlight.default, import_rehype_raw.default], children: content || children }) });
6676
+ var Markdown = ({ content, children }) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Content, { className: "markdown-body", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_react_markdown.default, { rehypePlugins: [import_rehype_highlight.default, import_rehype_raw.default], children: content || children }) });
5993
6677
 
5994
6678
  // src/components/utilities/OnboardingProvider/OnboardingProvider.tsx
5995
- var import_react29 = require("react");
5996
- var import_jsx_runtime73 = require("react/jsx-runtime");
5997
- var OnboardingContext = (0, import_react29.createContext)(void 0);
6679
+ var import_react30 = require("react");
6680
+ var import_jsx_runtime78 = require("react/jsx-runtime");
6681
+ var OnboardingContext = (0, import_react30.createContext)(void 0);
5998
6682
  var useOnboarding = () => {
5999
- const context = (0, import_react29.useContext)(OnboardingContext);
6683
+ const context = (0, import_react30.useContext)(OnboardingContext);
6000
6684
  if (!context) {
6001
6685
  throw new Error("useOnboarding should be used inside OnboardingProvider");
6002
6686
  }
6003
6687
  return context;
6004
6688
  };
6005
6689
  var OnboardingProvider = ({ children }) => {
6006
- const [isOnboardingActive, setIsOnboardingActive] = (0, import_react29.useState)(() => {
6690
+ const [isOnboardingActive, setIsOnboardingActive] = (0, import_react30.useState)(() => {
6007
6691
  const savedState = localStorage.getItem("isOnboardingActive");
6008
6692
  return savedState !== null ? JSON.parse(savedState) : true;
6009
6693
  });
6010
- (0, import_react29.useEffect)(() => {
6694
+ (0, import_react30.useEffect)(() => {
6011
6695
  localStorage.setItem("isOnboardingActive", JSON.stringify(isOnboardingActive));
6012
6696
  }, [isOnboardingActive]);
6013
- const startOnboarding = (0, import_react29.useCallback)(() => setIsOnboardingActive(true), []);
6014
- const stopOnboarding = (0, import_react29.useCallback)(() => {
6697
+ const startOnboarding = (0, import_react30.useCallback)(() => setIsOnboardingActive(true), []);
6698
+ const stopOnboarding = (0, import_react30.useCallback)(() => {
6015
6699
  setIsOnboardingActive(false);
6016
6700
  }, []);
6017
- const restartOnboarding = (0, import_react29.useCallback)(() => {
6701
+ const restartOnboarding = (0, import_react30.useCallback)(() => {
6018
6702
  setIsOnboardingActive(false);
6019
6703
  setTimeout(() => setIsOnboardingActive(true), 0);
6020
6704
  }, []);
6021
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6705
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
6022
6706
  OnboardingContext.Provider,
6023
6707
  {
6024
6708
  value: {
@@ -6033,7 +6717,7 @@ var OnboardingProvider = ({ children }) => {
6033
6717
  };
6034
6718
 
6035
6719
  // src/components/utilities/Truncate/Truncate.tsx
6036
- var import_jsx_runtime74 = require("react/jsx-runtime");
6720
+ var import_jsx_runtime79 = require("react/jsx-runtime");
6037
6721
  var getDefaultEndingLength = ({ text, variant, maxLength = text.length }) => {
6038
6722
  if (variant === "hex") {
6039
6723
  return 4;
@@ -6057,30 +6741,30 @@ var Truncate = ({
6057
6741
  const truncated = text.slice(0, maxLength - endingLength);
6058
6742
  truncatedText = [truncated, ending].filter(Boolean).join("...");
6059
6743
  }
6060
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("span", { ...props, "data-full": text, children: truncatedText });
6744
+ return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { ...props, "data-full": text, children: truncatedText });
6061
6745
  };
6062
6746
 
6063
6747
  // src/components/utilities/BytesSize/BytesSize.tsx
6064
6748
  var import_byte_size = __toESM(require("byte-size"));
6065
- var import_jsx_runtime75 = require("react/jsx-runtime");
6749
+ var import_jsx_runtime80 = require("react/jsx-runtime");
6066
6750
  var BytesSize = ({ bytes }) => {
6067
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_jsx_runtime75.Fragment, { children: (0, import_byte_size.default)(bytes).toString() });
6751
+ return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_jsx_runtime80.Fragment, { children: (0, import_byte_size.default)(bytes).toString() });
6068
6752
  };
6069
6753
 
6070
6754
  // src/components/utilities/QRCode/QRCode.tsx
6071
- var import_react30 = require("react");
6755
+ var import_react31 = require("react");
6072
6756
  var import_react_qr_code = __toESM(require("react-qr-code"));
6073
- var import_jsx_runtime76 = require("react/jsx-runtime");
6074
- var QRCode = (0, import_react30.forwardRef)(({ size: size3 = 168, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_react_qr_code.default, { ref, size: size3, ...props }));
6757
+ var import_jsx_runtime81 = require("react/jsx-runtime");
6758
+ var QRCode = (0, import_react31.forwardRef)(({ size: size3 = 168, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_react_qr_code.default, { ref, size: size3, ...props }));
6075
6759
  QRCode.displayName = "QRCode";
6076
6760
 
6077
6761
  // src/components/charts/ChartWidget/ChartWidget.tsx
6078
- var import_material59 = require("@mui/material");
6762
+ var import_material63 = require("@mui/material");
6079
6763
  var import_x_charts = require("@mui/x-charts");
6080
6764
  var import_byte_size2 = __toESM(require("byte-size"));
6081
6765
  var import_date_fns = require("date-fns");
6082
- var import_jsx_runtime77 = require("react/jsx-runtime");
6083
- var Chart = (0, import_material59.styled)(import_material59.Box)(() => ({
6766
+ var import_jsx_runtime82 = require("react/jsx-runtime");
6767
+ var Chart = (0, import_material63.styled)(import_material63.Box)(() => ({
6084
6768
  height: 200
6085
6769
  }));
6086
6770
  var ChartWidget = ({
@@ -6089,11 +6773,11 @@ var ChartWidget = ({
6089
6773
  history,
6090
6774
  formatValue = (value2) => (0, import_byte_size2.default)(value2 || 0).toString()
6091
6775
  }) => {
6092
- const theme2 = (0, import_material59.useTheme)();
6093
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(import_material59.Stack, { spacing: 1, children: [
6094
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_material59.Typography, { variant: "caption", color: "text.secondary", children: title }),
6095
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_material59.Typography, { fontWeight: "bold", children: value }),
6096
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Chart, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
6776
+ const theme2 = (0, import_material63.useTheme)();
6777
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(import_material63.Stack, { spacing: 1, children: [
6778
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_material63.Typography, { variant: "caption", color: "text.secondary", children: title }),
6779
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_material63.Typography, { fontWeight: "bold", children: value }),
6780
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(Chart, { children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
6097
6781
  import_x_charts.LineChart,
6098
6782
  {
6099
6783
  dataset: history || [],
@@ -6151,11 +6835,11 @@ var ChartWidget = ({
6151
6835
  var import_date_fns2 = require("date-fns");
6152
6836
  var import_x_charts2 = require("@mui/x-charts");
6153
6837
  var import_hooks = require("@mui/x-charts/hooks");
6154
- var import_material61 = require("@mui/material");
6838
+ var import_material65 = require("@mui/material");
6155
6839
 
6156
6840
  // src/components/charts/MetricsChart/PeriodSelect.tsx
6157
- var import_material60 = require("@mui/material");
6158
- var import_jsx_runtime78 = require("react/jsx-runtime");
6841
+ var import_material64 = require("@mui/material");
6842
+ var import_jsx_runtime83 = require("react/jsx-runtime");
6159
6843
  var options = [
6160
6844
  /**
6161
6845
  * TODO: Enable the options below when the backend supports them
@@ -6165,21 +6849,21 @@ var options = [
6165
6849
  { value: "week", label: "1 week" },
6166
6850
  { value: "month", label: "1 month" }
6167
6851
  ];
6168
- var PeriodSelect = ({ value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
6169
- import_material60.TextField,
6852
+ var PeriodSelect = ({ value, onChange }) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
6853
+ import_material64.TextField,
6170
6854
  {
6171
6855
  select: true,
6172
6856
  size: "small",
6173
6857
  value,
6174
6858
  defaultValue: options[0].value,
6175
6859
  onChange: (e) => onChange?.(e.target.value),
6176
- children: options.map(({ value: value2, label }) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_material60.MenuItem, { value: value2, children: label }, value2))
6860
+ children: options.map(({ value: value2, label }) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_material64.MenuItem, { value: value2, children: label }, value2))
6177
6861
  }
6178
6862
  );
6179
6863
 
6180
6864
  // src/components/charts/MetricsChart/MetricsChart.tsx
6181
- var import_react31 = require("react");
6182
- var import_jsx_runtime79 = require("react/jsx-runtime");
6865
+ var import_react32 = require("react");
6866
+ var import_jsx_runtime84 = require("react/jsx-runtime");
6183
6867
  var mapPeriodToFromDate = (period = "month") => {
6184
6868
  const date = /* @__PURE__ */ new Date();
6185
6869
  if (period === "hour") {
@@ -6193,14 +6877,14 @@ var mapPeriodToFromDate = (period = "month") => {
6193
6877
  }
6194
6878
  return (0, import_date_fns2.startOfDay)((0, import_date_fns2.subMonths)(date, 1));
6195
6879
  };
6196
- var Chart2 = (0, import_material61.styled)(import_x_charts2.LineChart)({
6880
+ var Chart2 = (0, import_material65.styled)(import_x_charts2.LineChart)({
6197
6881
  height: 320,
6198
6882
  marginBottom: 16
6199
6883
  });
6200
- var NoDataRect = (0, import_material61.styled)("rect")({
6884
+ var NoDataRect = (0, import_material65.styled)("rect")({
6201
6885
  fill: "#F5F6FF"
6202
6886
  });
6203
- var LoadingText = (0, import_material61.styled)("text")(({ theme: theme2 }) => ({
6887
+ var LoadingText = (0, import_material65.styled)("text")(({ theme: theme2 }) => ({
6204
6888
  stroke: "none",
6205
6889
  fill: theme2.palette.text.primary,
6206
6890
  shapeRendering: "crispEdges",
@@ -6208,14 +6892,14 @@ var LoadingText = (0, import_material61.styled)("text")(({ theme: theme2 }) => (
6208
6892
  dominantBaseline: "middle"
6209
6893
  }));
6210
6894
  var MetricsChart = ({ history = [] }) => {
6211
- const theme2 = (0, import_material61.useTheme)();
6212
- const [period, setPeriod] = (0, import_react31.useState)("week");
6213
- const periodFrom = (0, import_react31.useMemo)(() => mapPeriodToFromDate(period), [period]);
6214
- const periodHistory = (0, import_react31.useMemo)(
6895
+ const theme2 = (0, import_material65.useTheme)();
6896
+ const [period, setPeriod] = (0, import_react32.useState)("week");
6897
+ const periodFrom = (0, import_react32.useMemo)(() => mapPeriodToFromDate(period), [period]);
6898
+ const periodHistory = (0, import_react32.useMemo)(
6215
6899
  () => history.filter((record) => record.recordTime > periodFrom),
6216
6900
  [history, periodFrom]
6217
6901
  );
6218
- const total = (0, import_react31.useMemo)(
6902
+ const total = (0, import_react32.useMemo)(
6219
6903
  () => periodHistory.reduce(
6220
6904
  (acc, record) => ({
6221
6905
  gets: acc.gets + record.gets,
@@ -6239,15 +6923,15 @@ var MetricsChart = ({ history = [] }) => {
6239
6923
  const backgroundHeight = textHeight + padding.top + padding.bottom;
6240
6924
  const rectX = left + (width - backgroundWidth) / 2;
6241
6925
  const rectY = top + (height - backgroundHeight) / 2;
6242
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("g", { children: [
6243
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(NoDataRect, { x: rectX, y: rectY, width: backgroundWidth, height: backgroundHeight }),
6244
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(LoadingText, { style: { ...theme2.typography.subtitle1 }, x: left + width / 2, y: top + height / 2, children: text })
6926
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("g", { children: [
6927
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(NoDataRect, { x: rectX, y: rectY, width: backgroundWidth, height: backgroundHeight }),
6928
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(LoadingText, { style: { ...theme2.typography.subtitle1 }, x: left + width / 2, y: top + height / 2, children: text })
6245
6929
  ] });
6246
6930
  };
6247
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Card, { children: [
6248
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.CardHeader, { title: "GET / PUT Requests", action: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(PeriodSelect, { value: period, onChange: setPeriod }) }),
6249
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.CardMedia, { children: [
6250
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
6931
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Card, { children: [
6932
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.CardHeader, { title: "GET / PUT Requests", action: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(PeriodSelect, { value: period, onChange: setPeriod }) }),
6933
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.CardMedia, { children: [
6934
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
6251
6935
  Chart2,
6252
6936
  {
6253
6937
  skipAnimation: true,
@@ -6308,35 +6992,35 @@ var MetricsChart = ({ history = [] }) => {
6308
6992
  ]
6309
6993
  }
6310
6994
  ),
6311
- periodHistory.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", spacing: 2, marginY: 3, justifyContent: "center", children: [
6312
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
6313
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.primary.main } }),
6314
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", children: "Get" })
6995
+ periodHistory.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", spacing: 2, marginY: 3, justifyContent: "center", children: [
6996
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
6997
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.primary.main } }),
6998
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", children: "Get" })
6315
6999
  ] }),
6316
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
6317
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.success.main } }),
6318
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", children: "Put" })
7000
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", spacing: 1, alignItems: "center", children: [
7001
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Box, { sx: { width: 14, height: 14, borderRadius: "4px", backgroundColor: theme2.palette.success.main } }),
7002
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", children: "Put" })
6319
7003
  ] })
6320
7004
  ] })
6321
7005
  ] }),
6322
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.CardMedia, { children: [
6323
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Divider, { flexItem: true }),
6324
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", spacing: 2, padding: 2, children: [
6325
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
6326
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", color: "secondary", children: "GET Requests per account" }),
6327
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "h3", children: total.gets })
7006
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.CardMedia, { children: [
7007
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Divider, { flexItem: true }),
7008
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", spacing: 2, padding: 2, children: [
7009
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7010
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", color: "secondary", children: "GET Requests per account" }),
7011
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "h3", children: total.gets })
6328
7012
  ] }),
6329
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
6330
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", color: "secondary", children: "PUT Requests per account" }),
6331
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "h3", children: total.puts })
7013
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7014
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", color: "secondary", children: "PUT Requests per account" }),
7015
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "h3", children: total.puts })
6332
7016
  ] }),
6333
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
6334
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", color: "secondary", children: "Total Consumed per account" }),
6335
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(BytesSize, { bytes: total.transferredBytes }) })
7017
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7018
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", color: "secondary", children: "Total Consumed per account" }),
7019
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(BytesSize, { bytes: total.transferredBytes }) })
6336
7020
  ] }),
6337
- /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(import_material61.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
6338
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "body2", color: "secondary", children: "Total Stored per account" }),
6339
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_material61.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(BytesSize, { bytes: total.storedBytes }) })
7021
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(import_material65.Stack, { direction: "row", alignItems: "center", spacing: 1, children: [
7022
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "body2", color: "secondary", children: "Total Stored per account" }),
7023
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_material65.Typography, { variant: "h3", children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(BytesSize, { bytes: total.storedBytes }) })
6340
7024
  ] })
6341
7025
  ] })
6342
7026
  ] })
@@ -6344,12 +7028,12 @@ var MetricsChart = ({ history = [] }) => {
6344
7028
  };
6345
7029
 
6346
7030
  // src/components/third-party/FlowEditor.tsx
6347
- var import_react32 = require("react");
7031
+ var import_react33 = require("react");
6348
7032
  var import_reactflow = __toESM(require("reactflow"));
6349
- var import_material62 = require("@mui/material");
6350
- var import_styles34 = require("@mui/material/styles");
7033
+ var import_material66 = require("@mui/material");
7034
+ var import_styles38 = require("@mui/material/styles");
6351
7035
  var import_reactflow2 = require("reactflow");
6352
- var import_jsx_runtime80 = require("react/jsx-runtime");
7036
+ var import_jsx_runtime85 = require("react/jsx-runtime");
6353
7037
  var FlowEditor = ({
6354
7038
  nodes,
6355
7039
  edges,
@@ -6366,8 +7050,8 @@ var FlowEditor = ({
6366
7050
  onInit,
6367
7051
  ...reactFlowProps
6368
7052
  }) => {
6369
- const theme2 = (0, import_styles34.useTheme)();
6370
- const handleInit = (0, import_react32.useCallback)(
7053
+ const theme2 = (0, import_styles38.useTheme)();
7054
+ const handleInit = (0, import_react33.useCallback)(
6371
7055
  (instance) => {
6372
7056
  if (onInit) {
6373
7057
  onInit(instance);
@@ -6375,8 +7059,8 @@ var FlowEditor = ({
6375
7059
  },
6376
7060
  [onInit]
6377
7061
  );
6378
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_reactflow.ReactFlowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
6379
- import_material62.Box,
7062
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_reactflow.ReactFlowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
7063
+ import_material66.Box,
6380
7064
  {
6381
7065
  sx: {
6382
7066
  width: "100%",
@@ -6388,7 +7072,7 @@ var FlowEditor = ({
6388
7072
  ...containerProps?.sx
6389
7073
  },
6390
7074
  ...containerProps,
6391
- children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(
7075
+ children: /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
6392
7076
  import_reactflow.default,
6393
7077
  {
6394
7078
  nodes,
@@ -6410,7 +7094,7 @@ var FlowEditor = ({
6410
7094
  },
6411
7095
  ...reactFlowProps,
6412
7096
  children: [
6413
- showBackground && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
7097
+ showBackground && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
6414
7098
  import_reactflow.Background,
6415
7099
  {
6416
7100
  variant: backgroundVariant,
@@ -6419,8 +7103,8 @@ var FlowEditor = ({
6419
7103
  color: theme2.palette.divider
6420
7104
  }
6421
7105
  ),
6422
- showControls && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_reactflow.Controls, {}),
6423
- showMinimap && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
7106
+ showControls && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_reactflow.Controls, {}),
7107
+ showMinimap && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
6424
7108
  import_reactflow.MiniMap,
6425
7109
  {
6426
7110
  nodeColor: (node) => {
@@ -6443,15 +7127,15 @@ var FlowEditor = ({
6443
7127
  };
6444
7128
 
6445
7129
  // src/components/third-party/CodeEditor.tsx
6446
- var import_react33 = require("react");
6447
- var import_react34 = __toESM(require("@monaco-editor/react"));
6448
- var import_material63 = require("@mui/material");
7130
+ var import_react34 = require("react");
7131
+ var import_react35 = __toESM(require("@monaco-editor/react"));
7132
+ var import_material67 = require("@mui/material");
6449
7133
  var import_Fullscreen = __toESM(require("@mui/icons-material/Fullscreen"));
6450
7134
  var import_FullscreenExit = __toESM(require("@mui/icons-material/FullscreenExit"));
6451
7135
  var import_ErrorOutline = __toESM(require("@mui/icons-material/ErrorOutline"));
6452
- var import_ExpandMore2 = __toESM(require("@mui/icons-material/ExpandMore"));
7136
+ var import_ExpandMore3 = __toESM(require("@mui/icons-material/ExpandMore"));
6453
7137
  var import_ExpandLess = __toESM(require("@mui/icons-material/ExpandLess"));
6454
- var import_jsx_runtime81 = require("react/jsx-runtime");
7138
+ var import_jsx_runtime86 = require("react/jsx-runtime");
6455
7139
  var configureTypeScript = (monaco) => {
6456
7140
  monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
6457
7141
  target: monaco.languages.typescript.ScriptTarget.ES2020,
@@ -6495,16 +7179,16 @@ var CodeEditor = ({
6495
7179
  containerProps,
6496
7180
  typeDefinitions
6497
7181
  }) => {
6498
- const [isEditorReady, setIsEditorReady] = (0, import_react33.useState)(false);
6499
- const [validationErrors, setValidationErrors] = (0, import_react33.useState)([]);
6500
- const [isFullscreen, setIsFullscreen] = (0, import_react33.useState)(false);
6501
- const [tsCode, setTsCode] = (0, import_react33.useState)(value);
6502
- const [actualHeight, setActualHeight] = (0, import_react33.useState)(
7182
+ const [isEditorReady, setIsEditorReady] = (0, import_react34.useState)(false);
7183
+ const [validationErrors, setValidationErrors] = (0, import_react34.useState)([]);
7184
+ const [isFullscreen, setIsFullscreen] = (0, import_react34.useState)(false);
7185
+ const [tsCode, setTsCode] = (0, import_react34.useState)(value);
7186
+ const [actualHeight, setActualHeight] = (0, import_react34.useState)(
6503
7187
  typeof height === "number" ? `${height}px` : height
6504
7188
  );
6505
- const [showProblems, setShowProblems] = (0, import_react33.useState)(false);
6506
- const [hasUserToggledProblems, setHasUserToggledProblems] = (0, import_react33.useState)(false);
6507
- (0, import_react33.useEffect)(() => {
7189
+ const [showProblems, setShowProblems] = (0, import_react34.useState)(false);
7190
+ const [hasUserToggledProblems, setHasUserToggledProblems] = (0, import_react34.useState)(false);
7191
+ (0, import_react34.useEffect)(() => {
6508
7192
  if (hasUserToggledProblems) return;
6509
7193
  if (validationErrors.length > 0) {
6510
7194
  setShowProblems(true);
@@ -6512,25 +7196,25 @@ var CodeEditor = ({
6512
7196
  setShowProblems(false);
6513
7197
  }
6514
7198
  }, [validationErrors, hasUserToggledProblems]);
6515
- const internalEditorRef = (0, import_react33.useRef)(null);
6516
- const internalMonacoRef = (0, import_react33.useRef)(null);
7199
+ const internalEditorRef = (0, import_react34.useRef)(null);
7200
+ const internalMonacoRef = (0, import_react34.useRef)(null);
6517
7201
  const finalEditorRef = editorRef || internalEditorRef;
6518
7202
  const finalMonacoRef = monacoRef || internalMonacoRef;
6519
- (0, import_react33.useEffect)(() => {
7203
+ (0, import_react34.useEffect)(() => {
6520
7204
  if (isFullscreen) {
6521
7205
  setActualHeight("calc(100vh - 80px)");
6522
7206
  } else {
6523
7207
  setActualHeight(typeof height === "number" ? `${height}px` : height);
6524
7208
  }
6525
7209
  }, [height, isFullscreen]);
6526
- const toggleFullscreen = (0, import_react33.useCallback)(() => {
7210
+ const toggleFullscreen = (0, import_react34.useCallback)(() => {
6527
7211
  const newFullscreenState = !isFullscreen;
6528
7212
  setIsFullscreen(newFullscreenState);
6529
7213
  if (onFullscreenChange) {
6530
7214
  onFullscreenChange(newFullscreenState);
6531
7215
  }
6532
7216
  }, [isFullscreen, onFullscreenChange]);
6533
- const gotoMarker = (0, import_react33.useCallback)(
7217
+ const gotoMarker = (0, import_react34.useCallback)(
6534
7218
  (marker) => {
6535
7219
  const ed = finalEditorRef?.current;
6536
7220
  if (!ed) return;
@@ -6545,7 +7229,7 @@ var CodeEditor = ({
6545
7229
  },
6546
7230
  [finalEditorRef]
6547
7231
  );
6548
- (0, import_react33.useEffect)(() => {
7232
+ (0, import_react34.useEffect)(() => {
6549
7233
  if (!isFullscreen) return;
6550
7234
  function escapeHandler(event) {
6551
7235
  if (event.key === "Escape") {
@@ -6562,7 +7246,7 @@ var CodeEditor = ({
6562
7246
  window.removeEventListener("keydown", escapeHandler, { capture: true });
6563
7247
  };
6564
7248
  }, [isFullscreen, onFullscreenChange]);
6565
- const handleEditorDidMount = (0, import_react33.useCallback)(
7249
+ const handleEditorDidMount = (0, import_react34.useCallback)(
6566
7250
  (editor, monaco) => {
6567
7251
  console.log("CodeEditor: onMount called", { editor: !!editor, monaco: !!monaco });
6568
7252
  try {
@@ -6616,7 +7300,7 @@ var CodeEditor = ({
6616
7300
  },
6617
7301
  [isFullscreen, onFullscreenChange, onValidate, onMount, finalEditorRef, finalMonacoRef]
6618
7302
  );
6619
- (0, import_react33.useEffect)(() => {
7303
+ (0, import_react34.useEffect)(() => {
6620
7304
  if (!isEditorReady || !finalMonacoRef?.current || !typeDefinitions) return;
6621
7305
  const monaco = finalMonacoRef.current;
6622
7306
  const definitions = Array.isArray(typeDefinitions) ? typeDefinitions : [typeDefinitions];
@@ -6638,7 +7322,7 @@ var CodeEditor = ({
6638
7322
  setTsCode(valueStr);
6639
7323
  onChange(valueStr);
6640
7324
  };
6641
- (0, import_react33.useEffect)(() => {
7325
+ (0, import_react34.useEffect)(() => {
6642
7326
  if (value !== tsCode) {
6643
7327
  setTsCode(value);
6644
7328
  if (isEditorReady && finalEditorRef?.current) {
@@ -6663,8 +7347,8 @@ var CodeEditor = ({
6663
7347
  theme: themeProp || "vs",
6664
7348
  ...options2
6665
7349
  };
6666
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6667
- import_material63.Box,
7350
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
7351
+ import_material67.Box,
6668
7352
  {
6669
7353
  sx: {
6670
7354
  display: "flex",
@@ -6684,8 +7368,8 @@ var CodeEditor = ({
6684
7368
  pb: isFullscreen ? 2 : 0,
6685
7369
  overflow: isFullscreen ? "hidden" : "visible"
6686
7370
  },
6687
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
6688
- import_material63.Box,
7371
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
7372
+ import_material67.Box,
6689
7373
  {
6690
7374
  sx: {
6691
7375
  flex: 1,
@@ -6700,8 +7384,8 @@ var CodeEditor = ({
6700
7384
  },
6701
7385
  ...containerProps,
6702
7386
  children: [
6703
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Tooltip, { title: isFullscreen ? "Exit Fullscreen" : "Fullscreen", children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6704
- import_material63.IconButton,
7387
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Tooltip, { title: isFullscreen ? "Exit Fullscreen" : "Fullscreen", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
7388
+ import_material67.IconButton,
6705
7389
  {
6706
7390
  onClick: toggleFullscreen,
6707
7391
  size: "small",
@@ -6718,11 +7402,11 @@ var CodeEditor = ({
6718
7402
  },
6719
7403
  boxShadow: 1
6720
7404
  },
6721
- children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_FullscreenExit.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_Fullscreen.default, { fontSize: "small" })
7405
+ children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_FullscreenExit.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_Fullscreen.default, { fontSize: "small" })
6722
7406
  }
6723
7407
  ) }),
6724
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6725
- import_material63.Box,
7408
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
7409
+ import_material67.Box,
6726
7410
  {
6727
7411
  sx: {
6728
7412
  flex: 1,
@@ -6733,8 +7417,8 @@ var CodeEditor = ({
6733
7417
  position: "relative",
6734
7418
  height: isFullscreen ? "100%" : actualHeight
6735
7419
  },
6736
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6737
- import_react34.default,
7420
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
7421
+ import_react35.default,
6738
7422
  {
6739
7423
  height: "100%",
6740
7424
  defaultLanguage: language,
@@ -6744,7 +7428,7 @@ var CodeEditor = ({
6744
7428
  onMount: handleEditorDidMount,
6745
7429
  theme: themeProp || "vs",
6746
7430
  options: defaultOptions,
6747
- loading: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Box, { sx: { p: 2, textAlign: "center" }, children: "Loading Monaco Editor..." }),
7431
+ loading: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Box, { sx: { p: 2, textAlign: "center" }, children: "Loading Monaco Editor..." }),
6748
7432
  beforeMount: (monaco) => {
6749
7433
  console.log("CodeEditor: beforeMount called", { monaco: !!monaco });
6750
7434
  }
@@ -6752,8 +7436,8 @@ var CodeEditor = ({
6752
7436
  )
6753
7437
  }
6754
7438
  ),
6755
- validationErrors.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
6756
- import_material63.Box,
7439
+ validationErrors.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
7440
+ import_material67.Box,
6757
7441
  {
6758
7442
  sx: {
6759
7443
  borderTop: 1,
@@ -6766,8 +7450,8 @@ var CodeEditor = ({
6766
7450
  transition: "max-height 0.2s ease"
6767
7451
  },
6768
7452
  children: [
6769
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
6770
- import_material63.Box,
7453
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
7454
+ import_material67.Box,
6771
7455
  {
6772
7456
  sx: {
6773
7457
  display: "flex",
@@ -6781,16 +7465,16 @@ var CodeEditor = ({
6781
7465
  color: "text.secondary"
6782
7466
  },
6783
7467
  children: [
6784
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_ErrorOutline.default, { color: "error", fontSize: "small" }),
6785
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Box, { sx: { fontWeight: 600, color: "text.primary" }, children: "Problems" }),
6786
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(import_material63.Box, { sx: { ml: 1 }, children: [
7468
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_ErrorOutline.default, { color: "error", fontSize: "small" }),
7469
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Box, { sx: { fontWeight: 600, color: "text.primary" }, children: "Problems" }),
7470
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material67.Box, { sx: { ml: 1 }, children: [
6787
7471
  validationErrors.length,
6788
7472
  " error",
6789
7473
  validationErrors.length > 1 ? "s" : ""
6790
7474
  ] }),
6791
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Box, { sx: { flex: 1 } }),
6792
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
6793
- import_material63.IconButton,
7475
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Box, { sx: { flex: 1 } }),
7476
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
7477
+ import_material67.IconButton,
6794
7478
  {
6795
7479
  size: "small",
6796
7480
  "aria-label": "Toggle problems panel",
@@ -6798,14 +7482,14 @@ var CodeEditor = ({
6798
7482
  setHasUserToggledProblems(true);
6799
7483
  setShowProblems((s) => !s);
6800
7484
  },
6801
- children: showProblems ? /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_ExpandMore2.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_ExpandLess.default, { fontSize: "small" })
7485
+ children: showProblems ? /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_ExpandMore3.default, { fontSize: "small" }) : /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_ExpandLess.default, { fontSize: "small" })
6802
7486
  }
6803
7487
  )
6804
7488
  ]
6805
7489
  }
6806
7490
  ),
6807
- showProblems && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Box, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
6808
- import_material63.Box,
7491
+ showProblems && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Box, { sx: { overflow: "auto" }, children: validationErrors.map((error, index) => /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
7492
+ import_material67.Box,
6809
7493
  {
6810
7494
  onClick: () => gotoMarker(error),
6811
7495
  sx: {
@@ -6821,12 +7505,12 @@ var CodeEditor = ({
6821
7505
  fontSize: "0.85rem"
6822
7506
  },
6823
7507
  children: [
6824
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_ErrorOutline.default, { color: "error", sx: { fontSize: 18 } }),
6825
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(import_material63.Box, { sx: { color: "text.secondary", width: 64 }, children: [
7508
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_ErrorOutline.default, { color: "error", sx: { fontSize: 18 } }),
7509
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(import_material67.Box, { sx: { color: "text.secondary", width: 64 }, children: [
6826
7510
  "Line ",
6827
7511
  error.startLineNumber
6828
7512
  ] }),
6829
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_material63.Box, { sx: { color: "text.primary", flex: 1, minWidth: 0 }, children: error.message })
7513
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_material67.Box, { sx: { color: "text.primary", flex: 1, minWidth: 0 }, children: error.message })
6830
7514
  ]
6831
7515
  },
6832
7516
  `${error.startLineNumber}-${error.startColumn}-${index}`
@@ -6881,6 +7565,10 @@ var import_reactflow3 = require("reactflow");
6881
7565
  Container,
6882
7566
  Controls,
6883
7567
  DecentralizedServerIcon,
7568
+ DeploymentDashboardCard,
7569
+ DeploymentDashboardPanel,
7570
+ DeploymentDashboardTree,
7571
+ DeploymentEntityContextMenu,
6884
7572
  Dialog,
6885
7573
  DiscordIcon,
6886
7574
  Divider,
@@ -6961,6 +7649,7 @@ var import_reactflow3 = require("reactflow");
6961
7649
  UploadFolderIcon,
6962
7650
  WorkspaceSelectorButton,
6963
7651
  colors,
7652
+ contextMenuItems,
6964
7653
  theme,
6965
7654
  useIsDesktop,
6966
7655
  useIsMobile,