@backstage/plugin-kubernetes 0.7.4 → 0.7.5-next.1

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.esm.js CHANGED
@@ -243,15 +243,8 @@ const EntityKubernetesContent = kubernetesPlugin.provide(
243
243
 
244
244
  const clustersWithErrorsToErrorMessage = (clustersWithErrors) => {
245
245
  return clustersWithErrors.map((c, i) => {
246
- return /* @__PURE__ */ React__default.createElement("div", {
247
- key: i
248
- }, /* @__PURE__ */ React__default.createElement(Typography, {
249
- variant: "body2"
250
- }, `Cluster: ${c.cluster.name}`), c.errors.map((e, j) => {
251
- return /* @__PURE__ */ React__default.createElement(Typography, {
252
- variant: "body2",
253
- key: j
254
- }, `Error fetching Kubernetes resource: '${e.resourcePath}', error: ${e.errorType}, status code: ${e.statusCode}`);
246
+ return /* @__PURE__ */ React__default.createElement("div", { key: i }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "body2" }, `Cluster: ${c.cluster.name}`), c.errors.map((e, j) => {
247
+ return /* @__PURE__ */ React__default.createElement(Typography, { variant: "body2", key: j }, `Error fetching Kubernetes resource: '${e.resourcePath}', error: ${e.errorType}, status code: ${e.statusCode}`);
255
248
  }), /* @__PURE__ */ React__default.createElement("br", null));
256
249
  });
257
250
  };
@@ -259,12 +252,15 @@ const ErrorPanel$1 = ({
259
252
  entityName,
260
253
  errorMessage,
261
254
  clustersWithErrors
262
- }) => /* @__PURE__ */ React__default.createElement(WarningPanel, {
263
- title: "There was a problem retrieving Kubernetes objects",
264
- message: `There was a problem retrieving some Kubernetes resources for the entity: ${entityName}. This could mean that the Error Reporting card is not completely accurate.`
265
- }, clustersWithErrors && /* @__PURE__ */ React__default.createElement("div", null, "Errors: ", clustersWithErrorsToErrorMessage(clustersWithErrors)), errorMessage && /* @__PURE__ */ React__default.createElement(Typography, {
266
- variant: "body2"
267
- }, "Errors: ", errorMessage));
255
+ }) => /* @__PURE__ */ React__default.createElement(
256
+ WarningPanel,
257
+ {
258
+ title: "There was a problem retrieving Kubernetes objects",
259
+ message: `There was a problem retrieving some Kubernetes resources for the entity: ${entityName}. This could mean that the Error Reporting card is not completely accurate.`
260
+ },
261
+ clustersWithErrors && /* @__PURE__ */ React__default.createElement("div", null, "Errors: ", clustersWithErrorsToErrorMessage(clustersWithErrors)),
262
+ errorMessage && /* @__PURE__ */ React__default.createElement(Typography, { variant: "body2" }, "Errors: ", errorMessage)
263
+ );
268
264
 
269
265
  const columns = [
270
266
  {
@@ -292,18 +288,19 @@ const columns = [
292
288
  }
293
289
  const displayName = detectedError.names[0];
294
290
  const otherErrorCount = errorCount - 1;
295
- return /* @__PURE__ */ React.createElement(React.Fragment, null, displayName, " ", otherErrorCount > 0 && /* @__PURE__ */ React.createElement(Chip, {
296
- label: `+ ${otherErrorCount} other${otherErrorCount > 1 ? "s" : ""}`,
297
- size: "small"
298
- }));
291
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, displayName, " ", otherErrorCount > 0 && /* @__PURE__ */ React.createElement(
292
+ Chip,
293
+ {
294
+ label: `+ ${otherErrorCount} other${otherErrorCount > 1 ? "s" : ""}`,
295
+ size: "small"
296
+ }
297
+ ));
299
298
  }
300
299
  },
301
300
  {
302
301
  title: "messages",
303
302
  width: "40%",
304
- render: (detectedError) => /* @__PURE__ */ React.createElement(React.Fragment, null, detectedError.message.map((m, i) => /* @__PURE__ */ React.createElement("div", {
305
- key: i
306
- }, m)))
303
+ render: (detectedError) => /* @__PURE__ */ React.createElement(React.Fragment, null, detectedError.message.map((m, i) => /* @__PURE__ */ React.createElement("div", { key: i }, m)))
307
304
  }
308
305
  ];
309
306
  const sortBySeverity = (a, b) => {
@@ -315,36 +312,37 @@ const sortBySeverity = (a, b) => {
315
312
  return 0;
316
313
  };
317
314
  const ErrorEmptyState = () => {
318
- return /* @__PURE__ */ React.createElement(Grid, {
319
- container: true,
320
- justifyContent: "space-around",
321
- direction: "row",
322
- alignItems: "center",
323
- spacing: 2
324
- }, /* @__PURE__ */ React.createElement(Grid, {
325
- item: true,
326
- xs: 4
327
- }, /* @__PURE__ */ React.createElement(Typography, {
328
- variant: "h5"
329
- }, "Nice! There are no errors to report!")), /* @__PURE__ */ React.createElement(Grid, {
330
- item: true,
331
- xs: 4
332
- }, /* @__PURE__ */ React.createElement("img", {
333
- src: EmptyStateImage,
334
- alt: "EmptyState",
335
- "data-testid": "emptyStateImg"
336
- })));
315
+ return /* @__PURE__ */ React.createElement(
316
+ Grid,
317
+ {
318
+ container: true,
319
+ justifyContent: "space-around",
320
+ direction: "row",
321
+ alignItems: "center",
322
+ spacing: 2
323
+ },
324
+ /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 4 }, /* @__PURE__ */ React.createElement(Typography, { variant: "h5" }, "Nice! There are no errors to report!")),
325
+ /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 4 }, /* @__PURE__ */ React.createElement(
326
+ "img",
327
+ {
328
+ src: EmptyStateImage,
329
+ alt: "EmptyState",
330
+ "data-testid": "emptyStateImg"
331
+ }
332
+ ))
333
+ );
337
334
  };
338
335
  const ErrorReporting = ({ detectedErrors }) => {
339
336
  const errors = Array.from(detectedErrors.values()).flat().sort(sortBySeverity);
340
- return /* @__PURE__ */ React.createElement(React.Fragment, null, errors.length === 0 ? /* @__PURE__ */ React.createElement(InfoCard, {
341
- title: "Error Reporting"
342
- }, /* @__PURE__ */ React.createElement(ErrorEmptyState, null)) : /* @__PURE__ */ React.createElement(Table, {
343
- title: "Error Reporting",
344
- data: errors,
345
- columns,
346
- options: { paging: true, search: false }
347
- }));
337
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, errors.length === 0 ? /* @__PURE__ */ React.createElement(InfoCard, { title: "Error Reporting" }, /* @__PURE__ */ React.createElement(ErrorEmptyState, null)) : /* @__PURE__ */ React.createElement(
338
+ Table,
339
+ {
340
+ title: "Error Reporting",
341
+ data: errors,
342
+ columns,
343
+ options: { paging: true, search: false }
344
+ }
345
+ ));
348
346
  };
349
347
 
350
348
  const groupResponses = (fetchResponse) => {
@@ -407,11 +405,7 @@ const imageChips = (pod) => {
407
405
  var _a, _b;
408
406
  const containerStatuses2 = (_b = (_a = pod.status) == null ? void 0 : _a.containerStatuses) != null ? _b : [];
409
407
  const images = containerStatuses2.map((cs, i) => {
410
- return /* @__PURE__ */ React__default.createElement(Chip, {
411
- key: i,
412
- label: `${cs.name}=${cs.image}`,
413
- size: "small"
414
- });
408
+ return /* @__PURE__ */ React__default.createElement(Chip, { key: i, label: `${cs.name}=${cs.image}`, size: "small" });
415
409
  });
416
410
  return /* @__PURE__ */ React__default.createElement("div", null, images);
417
411
  };
@@ -437,12 +431,13 @@ const containerStatuses = (pod) => {
437
431
  const terminated = next.state.terminated;
438
432
  const renderCell = (reason) => {
439
433
  var _a2;
440
- return /* @__PURE__ */ React__default.createElement(Fragment, {
441
- key: `${(_a2 = pod.metadata) == null ? void 0 : _a2.name}-${next.name}`
442
- }, /* @__PURE__ */ React__default.createElement(SubvalueCell, {
443
- value: reason === "Completed" ? /* @__PURE__ */ React__default.createElement(StatusOK, null, "Container: ", next.name) : /* @__PURE__ */ React__default.createElement(StatusError, null, "Container: ", next.name),
444
- subvalue: reason
445
- }), /* @__PURE__ */ React__default.createElement("br", null));
434
+ return /* @__PURE__ */ React__default.createElement(Fragment, { key: `${(_a2 = pod.metadata) == null ? void 0 : _a2.name}-${next.name}` }, /* @__PURE__ */ React__default.createElement(
435
+ SubvalueCell,
436
+ {
437
+ value: reason === "Completed" ? /* @__PURE__ */ React__default.createElement(StatusOK, null, "Container: ", next.name) : /* @__PURE__ */ React__default.createElement(StatusError, null, "Container: ", next.name),
438
+ subvalue: reason
439
+ }
440
+ ), /* @__PURE__ */ React__default.createElement("br", null));
446
441
  };
447
442
  if (waiting) {
448
443
  accum.push(renderCell(waiting.reason));
@@ -465,10 +460,13 @@ const renderCondition = (condition) => {
465
460
  } else if (status === "False") {
466
461
  return [
467
462
  condition.type,
468
- /* @__PURE__ */ React__default.createElement(SubvalueCell, {
469
- value: /* @__PURE__ */ React__default.createElement(StatusError, null, "False"),
470
- subvalue: (_a = condition.message) != null ? _a : ""
471
- })
463
+ /* @__PURE__ */ React__default.createElement(
464
+ SubvalueCell,
465
+ {
466
+ value: /* @__PURE__ */ React__default.createElement(StatusError, null, "False"),
467
+ subvalue: (_a = condition.message) != null ? _a : ""
468
+ }
469
+ )
472
470
  ];
473
471
  }
474
472
  return [condition.type, /* @__PURE__ */ React__default.createElement(StatusAborted, null)];
@@ -492,32 +490,38 @@ const podStatusToCpuUtil = (podStatus) => {
492
490
  if (typeof cpuUtil.currentUsage === "number") {
493
491
  currentUsage = cpuUtil.currentUsage / 10;
494
492
  }
495
- return /* @__PURE__ */ React__default.createElement(SubvalueCell, {
496
- value: `requests: ${currentToDeclaredResourceToPerc(
497
- currentUsage,
498
- cpuUtil.requestTotal
499
- )} of ${formatMilicores(cpuUtil.requestTotal)}`,
500
- subvalue: `limits: ${currentToDeclaredResourceToPerc(
501
- currentUsage,
502
- cpuUtil.limitTotal
503
- )} of ${formatMilicores(cpuUtil.limitTotal)}`
504
- });
493
+ return /* @__PURE__ */ React__default.createElement(
494
+ SubvalueCell,
495
+ {
496
+ value: `requests: ${currentToDeclaredResourceToPerc(
497
+ currentUsage,
498
+ cpuUtil.requestTotal
499
+ )} of ${formatMilicores(cpuUtil.requestTotal)}`,
500
+ subvalue: `limits: ${currentToDeclaredResourceToPerc(
501
+ currentUsage,
502
+ cpuUtil.limitTotal
503
+ )} of ${formatMilicores(cpuUtil.limitTotal)}`
504
+ }
505
+ );
505
506
  };
506
507
  const bytesToMiB = (value) => {
507
508
  return `${parseFloat(value.toString()) / 1024 / 1024}MiB`;
508
509
  };
509
510
  const podStatusToMemoryUtil = (podStatus) => {
510
511
  const memUtil = podStatus.memory;
511
- return /* @__PURE__ */ React__default.createElement(SubvalueCell, {
512
- value: `requests: ${currentToDeclaredResourceToPerc(
513
- memUtil.currentUsage,
514
- memUtil.requestTotal
515
- )} of ${bytesToMiB(memUtil.requestTotal)}`,
516
- subvalue: `limits: ${currentToDeclaredResourceToPerc(
517
- memUtil.currentUsage,
518
- memUtil.limitTotal
519
- )} of ${bytesToMiB(memUtil.limitTotal)}`
520
- });
512
+ return /* @__PURE__ */ React__default.createElement(
513
+ SubvalueCell,
514
+ {
515
+ value: `requests: ${currentToDeclaredResourceToPerc(
516
+ memUtil.currentUsage,
517
+ memUtil.requestTotal
518
+ )} of ${bytesToMiB(memUtil.requestTotal)}`,
519
+ subvalue: `limits: ${currentToDeclaredResourceToPerc(
520
+ memUtil.currentUsage,
521
+ memUtil.limitTotal
522
+ )} of ${bytesToMiB(memUtil.limitTotal)}`
523
+ }
524
+ );
521
525
  };
522
526
 
523
527
  const detectErrorsInObjects = (objects, kind, clusterName, errorMappers) => {
@@ -1070,12 +1074,14 @@ const PodDrawerButton = withStyles({
1070
1074
  textTransform: "none"
1071
1075
  }
1072
1076
  })(Button);
1073
- const ErrorPanel = ({ cluster, errorMessage }) => /* @__PURE__ */ React__default.createElement(WarningPanel, {
1074
- title: "There was a problem formatting the link to the Kubernetes dashboard",
1075
- message: `Could not format the link to the dashboard of your cluster named '${cluster.name}'. Its dashboardApp property has been set to '${cluster.dashboardApp || "standard"}.'`
1076
- }, errorMessage && /* @__PURE__ */ React__default.createElement(Typography, {
1077
- variant: "body2"
1078
- }, "Errors: ", errorMessage));
1077
+ const ErrorPanel = ({ cluster, errorMessage }) => /* @__PURE__ */ React__default.createElement(
1078
+ WarningPanel,
1079
+ {
1080
+ title: "There was a problem formatting the link to the Kubernetes dashboard",
1081
+ message: `Could not format the link to the dashboard of your cluster named '${cluster.name}'. Its dashboardApp property has been set to '${cluster.dashboardApp || "standard"}.'`
1082
+ },
1083
+ errorMessage && /* @__PURE__ */ React__default.createElement(Typography, { variant: "body2" }, "Errors: ", errorMessage)
1084
+ );
1079
1085
  function replaceNullsWithUndefined(someObj) {
1080
1086
  const replacer = (_, value) => String(value) === "null" || String(value) === "undefined" ? void 0 : value;
1081
1087
  return JSON.parse(JSON.stringify(someObj, replacer));
@@ -1110,59 +1116,56 @@ const KubernetesDrawerContent = ({
1110
1116
  object,
1111
1117
  kind
1112
1118
  });
1113
- return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("div", {
1114
- className: classes.header
1115
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1116
- container: true,
1117
- direction: "column",
1118
- justifyContent: "flex-start",
1119
- alignItems: "flex-start"
1120
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1121
- item: true
1122
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1123
- variant: "h5"
1124
- }, (_b = (_a = object.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown name")), /* @__PURE__ */ React__default.createElement(Grid, {
1125
- item: true
1126
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1127
- color: "textSecondary",
1128
- variant: "body1"
1129
- }, kind))), /* @__PURE__ */ React__default.createElement(IconButton, {
1130
- key: "dismiss",
1131
- title: "Close the drawer",
1132
- onClick: (e) => toggleDrawer(e, false),
1133
- color: "inherit"
1134
- }, /* @__PURE__ */ React__default.createElement(Close, {
1135
- className: classes.icon
1136
- }))), errorMessage && /* @__PURE__ */ React__default.createElement("div", {
1137
- className: classes.errorMessage
1138
- }, /* @__PURE__ */ React__default.createElement(ErrorPanel, {
1139
- cluster,
1140
- errorMessage
1141
- })), /* @__PURE__ */ React__default.createElement("div", {
1142
- className: classes.options
1143
- }, /* @__PURE__ */ React__default.createElement("div", null, clusterLink && /* @__PURE__ */ React__default.createElement(Button$1, {
1144
- variant: "outlined",
1145
- color: "primary",
1146
- size: "small",
1147
- to: clusterLink,
1148
- endIcon: /* @__PURE__ */ React__default.createElement(OpenInNewIcon, null)
1149
- }, "Open Kubernetes Dashboard")), /* @__PURE__ */ React__default.createElement(FormControlLabel, {
1150
- control: /* @__PURE__ */ React__default.createElement(Switch, {
1151
- checked: isYaml,
1152
- onChange: (event) => {
1153
- setIsYaml(event.target.checked);
1154
- },
1155
- name: "YAML"
1156
- }),
1157
- label: "YAML"
1158
- })), /* @__PURE__ */ React__default.createElement("div", {
1159
- className: classes.content
1160
- }, isYaml && /* @__PURE__ */ React__default.createElement(CodeSnippet, {
1161
- language: "yaml",
1162
- text: jsYaml.dump(object)
1163
- }), !isYaml && /* @__PURE__ */ React__default.createElement(StructuredMetadataTable, {
1164
- metadata: renderObject(replaceNullsWithUndefined(object))
1165
- })));
1119
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("div", { className: classes.header }, /* @__PURE__ */ React__default.createElement(
1120
+ Grid,
1121
+ {
1122
+ container: true,
1123
+ direction: "column",
1124
+ justifyContent: "flex-start",
1125
+ alignItems: "flex-start"
1126
+ },
1127
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_b = (_a = object.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown name")),
1128
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, kind))
1129
+ ), /* @__PURE__ */ React__default.createElement(
1130
+ IconButton,
1131
+ {
1132
+ key: "dismiss",
1133
+ title: "Close the drawer",
1134
+ onClick: (e) => toggleDrawer(e, false),
1135
+ color: "inherit"
1136
+ },
1137
+ /* @__PURE__ */ React__default.createElement(Close, { className: classes.icon })
1138
+ )), errorMessage && /* @__PURE__ */ React__default.createElement("div", { className: classes.errorMessage }, /* @__PURE__ */ React__default.createElement(ErrorPanel, { cluster, errorMessage })), /* @__PURE__ */ React__default.createElement("div", { className: classes.options }, /* @__PURE__ */ React__default.createElement("div", null, clusterLink && /* @__PURE__ */ React__default.createElement(
1139
+ Button$1,
1140
+ {
1141
+ variant: "outlined",
1142
+ color: "primary",
1143
+ size: "small",
1144
+ to: clusterLink,
1145
+ endIcon: /* @__PURE__ */ React__default.createElement(OpenInNewIcon, null)
1146
+ },
1147
+ "Open Kubernetes Dashboard"
1148
+ )), /* @__PURE__ */ React__default.createElement(
1149
+ FormControlLabel,
1150
+ {
1151
+ control: /* @__PURE__ */ React__default.createElement(
1152
+ Switch,
1153
+ {
1154
+ checked: isYaml,
1155
+ onChange: (event) => {
1156
+ setIsYaml(event.target.checked);
1157
+ },
1158
+ name: "YAML"
1159
+ }
1160
+ ),
1161
+ label: "YAML"
1162
+ }
1163
+ )), /* @__PURE__ */ React__default.createElement("div", { className: classes.content }, isYaml && /* @__PURE__ */ React__default.createElement(CodeSnippet, { language: "yaml", text: jsYaml.dump(object) }), !isYaml && /* @__PURE__ */ React__default.createElement(
1164
+ StructuredMetadataTable,
1165
+ {
1166
+ metadata: renderObject(replaceNullsWithUndefined(object))
1167
+ }
1168
+ )));
1166
1169
  };
1167
1170
  const KubernetesDrawer = ({
1168
1171
  object,
@@ -1179,56 +1182,68 @@ const KubernetesDrawer = ({
1179
1182
  e.stopPropagation();
1180
1183
  setIsOpen(newValue);
1181
1184
  };
1182
- return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(PodDrawerButton, {
1183
- onClick: (e) => toggleDrawer(e, true),
1184
- onFocus: (event) => event.stopPropagation()
1185
- }, children === void 0 ? /* @__PURE__ */ React__default.createElement(Typography, {
1186
- variant: buttonVariant
1187
- }, (_b = (_a = object.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object") : children), /* @__PURE__ */ React__default.createElement(Drawer, {
1188
- classes: {
1189
- paper: classes.paper
1185
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(
1186
+ PodDrawerButton,
1187
+ {
1188
+ onClick: (e) => toggleDrawer(e, true),
1189
+ onFocus: (event) => event.stopPropagation()
1190
1190
  },
1191
- anchor: "right",
1192
- open: isOpen,
1193
- onClose: (e) => toggleDrawer(e, false),
1194
- onClick: (event) => event.stopPropagation()
1195
- }, /* @__PURE__ */ React__default.createElement(KubernetesDrawerContent, {
1196
- kind,
1197
- toggleDrawer,
1198
- object,
1199
- renderObject
1200
- })));
1191
+ children === void 0 ? /* @__PURE__ */ React__default.createElement(Typography, { variant: buttonVariant }, (_b = (_a = object.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object") : children
1192
+ ), /* @__PURE__ */ React__default.createElement(
1193
+ Drawer,
1194
+ {
1195
+ classes: {
1196
+ paper: classes.paper
1197
+ },
1198
+ anchor: "right",
1199
+ open: isOpen,
1200
+ onClose: (e) => toggleDrawer(e, false),
1201
+ onClick: (event) => event.stopPropagation()
1202
+ },
1203
+ /* @__PURE__ */ React__default.createElement(
1204
+ KubernetesDrawerContent,
1205
+ {
1206
+ kind,
1207
+ toggleDrawer,
1208
+ object,
1209
+ renderObject
1210
+ }
1211
+ )
1212
+ ));
1201
1213
  };
1202
1214
 
1203
1215
  const PodDrawer = (props) => {
1204
1216
  const { pod, expanded } = props;
1205
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1206
- object: pod,
1207
- expanded,
1208
- kind: "Pod",
1209
- renderObject: (podObject) => {
1210
- var _a, _b, _c, _d, _e, _f, _g;
1211
- const phase = (_b = (_a = podObject.status) == null ? void 0 : _a.phase) != null ? _b : "unknown";
1212
- const ports = (_e = (_d = (_c = podObject.spec) == null ? void 0 : _c.containers) == null ? void 0 : _d.map((c) => {
1217
+ return /* @__PURE__ */ React__default.createElement(
1218
+ KubernetesDrawer,
1219
+ {
1220
+ object: pod,
1221
+ expanded,
1222
+ kind: "Pod",
1223
+ renderObject: (podObject) => {
1224
+ var _a, _b, _c, _d, _e, _f, _g;
1225
+ const phase = (_b = (_a = podObject.status) == null ? void 0 : _a.phase) != null ? _b : "unknown";
1226
+ const ports = (_e = (_d = (_c = podObject.spec) == null ? void 0 : _c.containers) == null ? void 0 : _d.map((c) => {
1227
+ return {
1228
+ [c.name]: c.ports
1229
+ };
1230
+ })) != null ? _e : "N/A";
1231
+ const conditions = ((_g = (_f = podObject.status) == null ? void 0 : _f.conditions) != null ? _g : []).map(renderCondition).reduce((accum, next) => {
1232
+ accum[next[0]] = next[1];
1233
+ return accum;
1234
+ }, {});
1213
1235
  return {
1214
- [c.name]: c.ports
1236
+ images: imageChips(podObject),
1237
+ phase,
1238
+ "Containers Ready": containersReady(podObject),
1239
+ "Total Restarts": totalRestarts(podObject),
1240
+ "Container Statuses": containerStatuses(podObject),
1241
+ ...conditions,
1242
+ "Exposed ports": ports
1215
1243
  };
1216
- })) != null ? _e : "N/A";
1217
- const conditions = ((_g = (_f = podObject.status) == null ? void 0 : _f.conditions) != null ? _g : []).map(renderCondition).reduce((accum, next) => {
1218
- accum[next[0]] = next[1];
1219
- return accum;
1220
- }, {});
1221
- return {
1222
- images: imageChips(podObject),
1223
- phase,
1224
- "Containers Ready": containersReady(podObject),
1225
- "Total Restarts": totalRestarts(podObject),
1226
- "Container Statuses": containerStatuses(podObject),
1227
- ...conditions,
1228
- "Exposed ports": ports
1229
- };
1244
+ }
1230
1245
  }
1231
- });
1246
+ );
1232
1247
  };
1233
1248
 
1234
1249
  const READY_COLUMNS = "READY";
@@ -1237,9 +1252,7 @@ const DEFAULT_COLUMNS = [
1237
1252
  {
1238
1253
  title: "name",
1239
1254
  highlight: true,
1240
- render: (pod) => /* @__PURE__ */ React__default.createElement(PodDrawer, {
1241
- pod
1242
- })
1255
+ render: (pod) => /* @__PURE__ */ React__default.createElement(PodDrawer, { pod })
1243
1256
  },
1244
1257
  {
1245
1258
  title: "phase",
@@ -1303,13 +1316,14 @@ const PodsTable = ({ pods, extraColumns = [] }) => {
1303
1316
  minWidth: "0",
1304
1317
  width: "100%"
1305
1318
  };
1306
- return /* @__PURE__ */ React__default.createElement("div", {
1307
- style: tableStyle
1308
- }, /* @__PURE__ */ React__default.createElement(Table, {
1309
- options: { paging: true, search: false },
1310
- data: pods,
1311
- columns
1312
- }));
1319
+ return /* @__PURE__ */ React__default.createElement("div", { style: tableStyle }, /* @__PURE__ */ React__default.createElement(
1320
+ Table,
1321
+ {
1322
+ options: { paging: true, search: false },
1323
+ data: pods,
1324
+ columns
1325
+ }
1326
+ ));
1313
1327
  };
1314
1328
 
1315
1329
  const DeploymentDrawer = ({
@@ -1318,64 +1332,64 @@ const DeploymentDrawer = ({
1318
1332
  }) => {
1319
1333
  var _a, _b, _c;
1320
1334
  const namespace = (_a = deployment.metadata) == null ? void 0 : _a.namespace;
1321
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1322
- object: deployment,
1323
- expanded,
1324
- kind: "Deployment",
1325
- renderObject: (deploymentObj) => {
1326
- var _a2, _b2, _c2, _d, _e, _f, _g, _h;
1327
- const conditions = ((_b2 = (_a2 = deploymentObj.status) == null ? void 0 : _a2.conditions) != null ? _b2 : []).map(renderCondition).reduce((accum, next) => {
1328
- accum[next[0]] = next[1];
1329
- return accum;
1330
- }, {});
1331
- return {
1332
- strategy: (_d = (_c2 = deploymentObj.spec) == null ? void 0 : _c2.strategy) != null ? _d : "???",
1333
- minReadySeconds: (_f = (_e = deploymentObj.spec) == null ? void 0 : _e.minReadySeconds) != null ? _f : "???",
1334
- progressDeadlineSeconds: (_h = (_g = deploymentObj.spec) == null ? void 0 : _g.progressDeadlineSeconds) != null ? _h : "???",
1335
- ...conditions
1336
- };
1337
- }
1338
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1339
- container: true,
1340
- direction: "column",
1341
- justifyContent: "flex-start",
1342
- alignItems: "flex-start",
1343
- spacing: 0
1344
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1345
- item: true
1346
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1347
- variant: "h5"
1348
- }, (_c = (_b = deployment.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
1349
- item: true
1350
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1351
- color: "textSecondary",
1352
- variant: "body1"
1353
- }, "Deployment")), namespace && /* @__PURE__ */ React__default.createElement(Grid, {
1354
- item: true
1355
- }, /* @__PURE__ */ React__default.createElement(Chip, {
1356
- size: "small",
1357
- label: `namespace: ${namespace}`
1358
- }))));
1335
+ return /* @__PURE__ */ React__default.createElement(
1336
+ KubernetesDrawer,
1337
+ {
1338
+ object: deployment,
1339
+ expanded,
1340
+ kind: "Deployment",
1341
+ renderObject: (deploymentObj) => {
1342
+ var _a2, _b2, _c2, _d, _e, _f, _g, _h;
1343
+ const conditions = ((_b2 = (_a2 = deploymentObj.status) == null ? void 0 : _a2.conditions) != null ? _b2 : []).map(renderCondition).reduce((accum, next) => {
1344
+ accum[next[0]] = next[1];
1345
+ return accum;
1346
+ }, {});
1347
+ return {
1348
+ strategy: (_d = (_c2 = deploymentObj.spec) == null ? void 0 : _c2.strategy) != null ? _d : "???",
1349
+ minReadySeconds: (_f = (_e = deploymentObj.spec) == null ? void 0 : _e.minReadySeconds) != null ? _f : "???",
1350
+ progressDeadlineSeconds: (_h = (_g = deploymentObj.spec) == null ? void 0 : _g.progressDeadlineSeconds) != null ? _h : "???",
1351
+ ...conditions
1352
+ };
1353
+ }
1354
+ },
1355
+ /* @__PURE__ */ React__default.createElement(
1356
+ Grid,
1357
+ {
1358
+ container: true,
1359
+ direction: "column",
1360
+ justifyContent: "flex-start",
1361
+ alignItems: "flex-start",
1362
+ spacing: 0
1363
+ },
1364
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_c = (_b = deployment.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")),
1365
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Deployment")),
1366
+ namespace && /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Chip, { size: "small", label: `namespace: ${namespace}` }))
1367
+ )
1368
+ );
1359
1369
  };
1360
1370
 
1361
1371
  const HorizontalPodAutoscalerDrawer = (props) => {
1362
1372
  const { hpa, expanded, children } = props;
1363
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1364
- kind: "HorizontalPodAutoscaler",
1365
- object: hpa,
1366
- expanded,
1367
- renderObject: (hpaObject) => {
1368
- var _a, _b, _c, _d, _e, _f;
1369
- return {
1370
- targetCPUUtilizationPercentage: (_a = hpaObject.spec) == null ? void 0 : _a.targetCPUUtilizationPercentage,
1371
- currentCPUUtilizationPercentage: (_b = hpaObject.status) == null ? void 0 : _b.currentCPUUtilizationPercentage,
1372
- minReplicas: (_c = hpaObject.spec) == null ? void 0 : _c.minReplicas,
1373
- maxReplicas: (_d = hpaObject.spec) == null ? void 0 : _d.maxReplicas,
1374
- currentReplicas: (_e = hpaObject.status) == null ? void 0 : _e.currentReplicas,
1375
- desiredReplicas: (_f = hpaObject.status) == null ? void 0 : _f.desiredReplicas
1376
- };
1377
- }
1378
- }, children);
1373
+ return /* @__PURE__ */ React__default.createElement(
1374
+ KubernetesDrawer,
1375
+ {
1376
+ kind: "HorizontalPodAutoscaler",
1377
+ object: hpa,
1378
+ expanded,
1379
+ renderObject: (hpaObject) => {
1380
+ var _a, _b, _c, _d, _e, _f;
1381
+ return {
1382
+ targetCPUUtilizationPercentage: (_a = hpaObject.spec) == null ? void 0 : _a.targetCPUUtilizationPercentage,
1383
+ currentCPUUtilizationPercentage: (_b = hpaObject.status) == null ? void 0 : _b.currentCPUUtilizationPercentage,
1384
+ minReplicas: (_c = hpaObject.spec) == null ? void 0 : _c.minReplicas,
1385
+ maxReplicas: (_d = hpaObject.spec) == null ? void 0 : _d.maxReplicas,
1386
+ currentReplicas: (_e = hpaObject.status) == null ? void 0 : _e.currentReplicas,
1387
+ desiredReplicas: (_f = hpaObject.status) == null ? void 0 : _f.desiredReplicas
1388
+ };
1389
+ }
1390
+ },
1391
+ children
1392
+ );
1379
1393
  };
1380
1394
 
1381
1395
  function getOwnedResources(potentialOwner, possiblyOwned) {
@@ -1413,58 +1427,44 @@ const DeploymentSummary = ({
1413
1427
  hpa
1414
1428
  }) => {
1415
1429
  var _a, _b, _c, _d, _e, _f, _g, _h;
1416
- return /* @__PURE__ */ React__default.createElement(Grid, {
1417
- container: true,
1418
- direction: "row",
1419
- justifyContent: "flex-start",
1420
- alignItems: "center"
1421
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1422
- xs: 3,
1423
- item: true
1424
- }, /* @__PURE__ */ React__default.createElement(DeploymentDrawer, {
1425
- deployment
1426
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1427
- item: true,
1428
- xs: 1
1429
- }, /* @__PURE__ */ React__default.createElement(Divider, {
1430
- style: { height: "5em" },
1431
- orientation: "vertical"
1432
- })), hpa && /* @__PURE__ */ React__default.createElement(Grid, {
1433
- item: true,
1434
- xs: 3
1435
- }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, {
1436
- hpa
1437
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1438
- item: true,
1439
- container: true,
1440
- direction: "column",
1441
- justifyContent: "flex-start",
1442
- alignItems: "flex-start",
1443
- spacing: 0
1444
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1445
- item: true
1446
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1447
- variant: "subtitle2"
1448
- }, "min replicas ", (_b = (_a = hpa.spec) == null ? void 0 : _a.minReplicas) != null ? _b : "?", " / max replicas", " ", (_d = (_c = hpa.spec) == null ? void 0 : _c.maxReplicas) != null ? _d : "?")), /* @__PURE__ */ React__default.createElement(Grid, {
1449
- item: true
1450
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1451
- variant: "subtitle2"
1452
- }, "current CPU usage:", " ", (_f = (_e = hpa.status) == null ? void 0 : _e.currentCPUUtilizationPercentage) != null ? _f : "?", "%")), /* @__PURE__ */ React__default.createElement(Grid, {
1453
- item: true
1454
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1455
- variant: "subtitle2"
1456
- }, "target CPU usage:", " ", (_h = (_g = hpa.spec) == null ? void 0 : _g.targetCPUUtilizationPercentage) != null ? _h : "?", "%"))))), /* @__PURE__ */ React__default.createElement(Grid, {
1457
- item: true,
1458
- container: true,
1459
- xs: 3,
1460
- direction: "column",
1461
- justifyContent: "flex-start",
1462
- alignItems: "flex-start"
1463
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1464
- item: true
1465
- }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")), /* @__PURE__ */ React__default.createElement(Grid, {
1466
- item: true
1467
- }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))));
1430
+ return /* @__PURE__ */ React__default.createElement(
1431
+ Grid,
1432
+ {
1433
+ container: true,
1434
+ direction: "row",
1435
+ justifyContent: "flex-start",
1436
+ alignItems: "center"
1437
+ },
1438
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(DeploymentDrawer, { deployment })),
1439
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
1440
+ hpa && /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 3 }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, { hpa }, /* @__PURE__ */ React__default.createElement(
1441
+ Grid,
1442
+ {
1443
+ item: true,
1444
+ container: true,
1445
+ direction: "column",
1446
+ justifyContent: "flex-start",
1447
+ alignItems: "flex-start",
1448
+ spacing: 0
1449
+ },
1450
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "min replicas ", (_b = (_a = hpa.spec) == null ? void 0 : _a.minReplicas) != null ? _b : "?", " / max replicas", " ", (_d = (_c = hpa.spec) == null ? void 0 : _c.maxReplicas) != null ? _d : "?")),
1451
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "current CPU usage:", " ", (_f = (_e = hpa.status) == null ? void 0 : _e.currentCPUUtilizationPercentage) != null ? _f : "?", "%")),
1452
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "target CPU usage:", " ", (_h = (_g = hpa.spec) == null ? void 0 : _g.targetCPUUtilizationPercentage) != null ? _h : "?", "%"))
1453
+ ))),
1454
+ /* @__PURE__ */ React__default.createElement(
1455
+ Grid,
1456
+ {
1457
+ item: true,
1458
+ container: true,
1459
+ xs: 3,
1460
+ direction: "column",
1461
+ justifyContent: "flex-start",
1462
+ alignItems: "flex-start"
1463
+ },
1464
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")),
1465
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))
1466
+ )
1467
+ );
1468
1468
  };
1469
1469
  const DeploymentAccordion = ({
1470
1470
  deployment,
@@ -1478,54 +1478,55 @@ const DeploymentAccordion = ({
1478
1478
  return podNamesWithErrors.has((_b = (_a = p.metadata) == null ? void 0 : _a.name) != null ? _b : "");
1479
1479
  }
1480
1480
  );
1481
- return /* @__PURE__ */ React__default.createElement(Accordion, {
1482
- TransitionProps: { unmountOnExit: true }
1483
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
1484
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
1485
- }, /* @__PURE__ */ React__default.createElement(DeploymentSummary, {
1486
- deployment,
1487
- numberOfCurrentPods: ownedPods.length,
1488
- numberOfPodsWithErrors: podsWithErrors.length,
1489
- hpa: matchingHpa
1490
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(PodsTable, {
1491
- pods: ownedPods,
1492
- extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
1493
- })));
1481
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(
1482
+ DeploymentSummary,
1483
+ {
1484
+ deployment,
1485
+ numberOfCurrentPods: ownedPods.length,
1486
+ numberOfPodsWithErrors: podsWithErrors.length,
1487
+ hpa: matchingHpa
1488
+ }
1489
+ )), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(
1490
+ PodsTable,
1491
+ {
1492
+ pods: ownedPods,
1493
+ extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
1494
+ }
1495
+ )));
1494
1496
  };
1495
1497
  const DeploymentsAccordions = ({}) => {
1496
1498
  const groupedResponses = useContext(GroupedResponsesContext);
1497
- return /* @__PURE__ */ React__default.createElement(Grid, {
1498
- container: true,
1499
- direction: "column",
1500
- justifyContent: "flex-start",
1501
- alignItems: "flex-start"
1502
- }, groupedResponses.deployments.map((deployment, i) => {
1503
- var _a, _b;
1504
- return /* @__PURE__ */ React__default.createElement(Grid, {
1499
+ return /* @__PURE__ */ React__default.createElement(
1500
+ Grid,
1501
+ {
1505
1502
  container: true,
1506
- item: true,
1507
- key: i,
1508
- xs: true
1509
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1510
- item: true,
1511
- xs: true
1512
- }, /* @__PURE__ */ React__default.createElement(DeploymentAccordion, {
1513
- matchingHpa: getMatchingHpa(
1503
+ direction: "column",
1504
+ justifyContent: "flex-start",
1505
+ alignItems: "flex-start"
1506
+ },
1507
+ groupedResponses.deployments.map((deployment, i) => {
1508
+ var _a, _b;
1509
+ return /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
1510
+ DeploymentAccordion,
1514
1511
  {
1515
- name: (_a = deployment.metadata) == null ? void 0 : _a.name,
1516
- namespace: (_b = deployment.metadata) == null ? void 0 : _b.namespace,
1517
- kind: "deployment"
1518
- },
1519
- groupedResponses.horizontalPodAutoscalers
1520
- ),
1521
- ownedPods: getOwnedPodsThroughReplicaSets(
1522
- deployment,
1523
- groupedResponses.replicaSets,
1524
- groupedResponses.pods
1525
- ),
1526
- deployment
1527
- })));
1528
- }));
1512
+ matchingHpa: getMatchingHpa(
1513
+ {
1514
+ name: (_a = deployment.metadata) == null ? void 0 : _a.name,
1515
+ namespace: (_b = deployment.metadata) == null ? void 0 : _b.namespace,
1516
+ kind: "deployment"
1517
+ },
1518
+ groupedResponses.horizontalPodAutoscalers
1519
+ ),
1520
+ ownedPods: getOwnedPodsThroughReplicaSets(
1521
+ deployment,
1522
+ groupedResponses.replicaSets,
1523
+ groupedResponses.pods
1524
+ ),
1525
+ deployment
1526
+ }
1527
+ )));
1528
+ })
1529
+ );
1529
1530
  };
1530
1531
 
1531
1532
  const StatefulSetDrawer = ({
@@ -1534,46 +1535,42 @@ const StatefulSetDrawer = ({
1534
1535
  }) => {
1535
1536
  var _a, _b, _c;
1536
1537
  const namespace = (_a = statefulset.metadata) == null ? void 0 : _a.namespace;
1537
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1538
- object: statefulset,
1539
- expanded,
1540
- kind: "StatefulSet",
1541
- renderObject: (statefulsetObj) => {
1542
- var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l;
1543
- const conditions = ((_b2 = (_a2 = statefulsetObj.status) == null ? void 0 : _a2.conditions) != null ? _b2 : []).map(renderCondition).reduce((accum, next) => {
1544
- accum[next[0]] = next[1];
1545
- return accum;
1546
- }, {});
1547
- return {
1548
- updateStrategy: (_d = (_c2 = statefulset.spec) == null ? void 0 : _c2.updateStrategy) != null ? _d : "???",
1549
- podManagementPolicy: (_f = (_e = statefulset.spec) == null ? void 0 : _e.podManagementPolicy) != null ? _f : "???",
1550
- serviceName: (_h = (_g = statefulset.spec) == null ? void 0 : _g.serviceName) != null ? _h : "???",
1551
- selector: (_j = (_i = statefulset.spec) == null ? void 0 : _i.selector) != null ? _j : "???",
1552
- revisionHistoryLimit: (_l = (_k = statefulset.spec) == null ? void 0 : _k.revisionHistoryLimit) != null ? _l : "???",
1553
- ...conditions
1554
- };
1555
- }
1556
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1557
- container: true,
1558
- direction: "column",
1559
- justifyContent: "flex-start",
1560
- alignItems: "flex-start",
1561
- spacing: 0
1562
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1563
- item: true
1564
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1565
- variant: "h5"
1566
- }, (_c = (_b = statefulset.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
1567
- item: true
1568
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1569
- color: "textSecondary",
1570
- variant: "body1"
1571
- }, "Stateful Set")), namespace && /* @__PURE__ */ React__default.createElement(Grid, {
1572
- item: true
1573
- }, /* @__PURE__ */ React__default.createElement(Chip, {
1574
- size: "small",
1575
- label: `namespace: ${namespace}`
1576
- }))));
1538
+ return /* @__PURE__ */ React__default.createElement(
1539
+ KubernetesDrawer,
1540
+ {
1541
+ object: statefulset,
1542
+ expanded,
1543
+ kind: "StatefulSet",
1544
+ renderObject: (statefulsetObj) => {
1545
+ var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l;
1546
+ const conditions = ((_b2 = (_a2 = statefulsetObj.status) == null ? void 0 : _a2.conditions) != null ? _b2 : []).map(renderCondition).reduce((accum, next) => {
1547
+ accum[next[0]] = next[1];
1548
+ return accum;
1549
+ }, {});
1550
+ return {
1551
+ updateStrategy: (_d = (_c2 = statefulset.spec) == null ? void 0 : _c2.updateStrategy) != null ? _d : "???",
1552
+ podManagementPolicy: (_f = (_e = statefulset.spec) == null ? void 0 : _e.podManagementPolicy) != null ? _f : "???",
1553
+ serviceName: (_h = (_g = statefulset.spec) == null ? void 0 : _g.serviceName) != null ? _h : "???",
1554
+ selector: (_j = (_i = statefulset.spec) == null ? void 0 : _i.selector) != null ? _j : "???",
1555
+ revisionHistoryLimit: (_l = (_k = statefulset.spec) == null ? void 0 : _k.revisionHistoryLimit) != null ? _l : "???",
1556
+ ...conditions
1557
+ };
1558
+ }
1559
+ },
1560
+ /* @__PURE__ */ React__default.createElement(
1561
+ Grid,
1562
+ {
1563
+ container: true,
1564
+ direction: "column",
1565
+ justifyContent: "flex-start",
1566
+ alignItems: "flex-start",
1567
+ spacing: 0
1568
+ },
1569
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_c = (_b = statefulset.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")),
1570
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Stateful Set")),
1571
+ namespace && /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Chip, { size: "small", label: `namespace: ${namespace}` }))
1572
+ )
1573
+ );
1577
1574
  };
1578
1575
 
1579
1576
  const StatefulSetSummary = ({
@@ -1583,58 +1580,44 @@ const StatefulSetSummary = ({
1583
1580
  hpa
1584
1581
  }) => {
1585
1582
  var _a, _b, _c, _d, _e, _f, _g, _h;
1586
- return /* @__PURE__ */ React__default.createElement(Grid, {
1587
- container: true,
1588
- direction: "row",
1589
- justifyContent: "flex-start",
1590
- alignItems: "center"
1591
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1592
- xs: 3,
1593
- item: true
1594
- }, /* @__PURE__ */ React__default.createElement(StatefulSetDrawer, {
1595
- statefulset
1596
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1597
- item: true,
1598
- xs: 1
1599
- }, /* @__PURE__ */ React__default.createElement(Divider, {
1600
- style: { height: "5em" },
1601
- orientation: "vertical"
1602
- })), hpa && /* @__PURE__ */ React__default.createElement(Grid, {
1603
- item: true,
1604
- xs: 3
1605
- }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, {
1606
- hpa
1607
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1608
- item: true,
1609
- container: true,
1610
- direction: "column",
1611
- justifyContent: "flex-start",
1612
- alignItems: "flex-start",
1613
- spacing: 0
1614
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1615
- item: true
1616
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1617
- variant: "subtitle2"
1618
- }, "min replicas ", (_b = (_a = hpa.spec) == null ? void 0 : _a.minReplicas) != null ? _b : "?", " / max replicas", " ", (_d = (_c = hpa.spec) == null ? void 0 : _c.maxReplicas) != null ? _d : "?")), /* @__PURE__ */ React__default.createElement(Grid, {
1619
- item: true
1620
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1621
- variant: "subtitle2"
1622
- }, "current CPU usage:", " ", (_f = (_e = hpa.status) == null ? void 0 : _e.currentCPUUtilizationPercentage) != null ? _f : "?", "%")), /* @__PURE__ */ React__default.createElement(Grid, {
1623
- item: true
1624
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1625
- variant: "subtitle2"
1626
- }, "target CPU usage:", " ", (_h = (_g = hpa.spec) == null ? void 0 : _g.targetCPUUtilizationPercentage) != null ? _h : "?", "%"))))), /* @__PURE__ */ React__default.createElement(Grid, {
1627
- item: true,
1628
- container: true,
1629
- xs: 3,
1630
- direction: "column",
1631
- justifyContent: "flex-start",
1632
- alignItems: "flex-start"
1633
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1634
- item: true
1635
- }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")), /* @__PURE__ */ React__default.createElement(Grid, {
1636
- item: true
1637
- }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))));
1583
+ return /* @__PURE__ */ React__default.createElement(
1584
+ Grid,
1585
+ {
1586
+ container: true,
1587
+ direction: "row",
1588
+ justifyContent: "flex-start",
1589
+ alignItems: "center"
1590
+ },
1591
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(StatefulSetDrawer, { statefulset })),
1592
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
1593
+ hpa && /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 3 }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, { hpa }, /* @__PURE__ */ React__default.createElement(
1594
+ Grid,
1595
+ {
1596
+ item: true,
1597
+ container: true,
1598
+ direction: "column",
1599
+ justifyContent: "flex-start",
1600
+ alignItems: "flex-start",
1601
+ spacing: 0
1602
+ },
1603
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "min replicas ", (_b = (_a = hpa.spec) == null ? void 0 : _a.minReplicas) != null ? _b : "?", " / max replicas", " ", (_d = (_c = hpa.spec) == null ? void 0 : _c.maxReplicas) != null ? _d : "?")),
1604
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "current CPU usage:", " ", (_f = (_e = hpa.status) == null ? void 0 : _e.currentCPUUtilizationPercentage) != null ? _f : "?", "%")),
1605
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "target CPU usage:", " ", (_h = (_g = hpa.spec) == null ? void 0 : _g.targetCPUUtilizationPercentage) != null ? _h : "?", "%"))
1606
+ ))),
1607
+ /* @__PURE__ */ React__default.createElement(
1608
+ Grid,
1609
+ {
1610
+ item: true,
1611
+ container: true,
1612
+ xs: 3,
1613
+ direction: "column",
1614
+ justifyContent: "flex-start",
1615
+ alignItems: "flex-start"
1616
+ },
1617
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")),
1618
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))
1619
+ )
1620
+ );
1638
1621
  };
1639
1622
  const StatefulSetAccordion = ({
1640
1623
  statefulset,
@@ -1648,50 +1631,51 @@ const StatefulSetAccordion = ({
1648
1631
  return podNamesWithErrors.has((_b = (_a = p.metadata) == null ? void 0 : _a.name) != null ? _b : "");
1649
1632
  }
1650
1633
  );
1651
- return /* @__PURE__ */ React__default.createElement(Accordion, {
1652
- TransitionProps: { unmountOnExit: true }
1653
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
1654
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
1655
- }, /* @__PURE__ */ React__default.createElement(StatefulSetSummary, {
1656
- statefulset,
1657
- numberOfCurrentPods: ownedPods.length,
1658
- numberOfPodsWithErrors: podsWithErrors.length,
1659
- hpa: matchingHpa
1660
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(PodsTable, {
1661
- pods: ownedPods,
1662
- extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
1663
- })));
1634
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(
1635
+ StatefulSetSummary,
1636
+ {
1637
+ statefulset,
1638
+ numberOfCurrentPods: ownedPods.length,
1639
+ numberOfPodsWithErrors: podsWithErrors.length,
1640
+ hpa: matchingHpa
1641
+ }
1642
+ )), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(
1643
+ PodsTable,
1644
+ {
1645
+ pods: ownedPods,
1646
+ extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
1647
+ }
1648
+ )));
1664
1649
  };
1665
1650
  const StatefulSetsAccordions = ({}) => {
1666
1651
  const groupedResponses = useContext(GroupedResponsesContext);
1667
- return /* @__PURE__ */ React__default.createElement(Grid, {
1668
- container: true,
1669
- direction: "column",
1670
- justifyContent: "flex-start",
1671
- alignItems: "flex-start"
1672
- }, groupedResponses.statefulsets.map((statefulset, i) => {
1673
- var _a, _b;
1674
- return /* @__PURE__ */ React__default.createElement(Grid, {
1652
+ return /* @__PURE__ */ React__default.createElement(
1653
+ Grid,
1654
+ {
1675
1655
  container: true,
1676
- item: true,
1677
- key: i,
1678
- xs: true
1679
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1680
- item: true,
1681
- xs: true
1682
- }, /* @__PURE__ */ React__default.createElement(StatefulSetAccordion, {
1683
- matchingHpa: getMatchingHpa(
1656
+ direction: "column",
1657
+ justifyContent: "flex-start",
1658
+ alignItems: "flex-start"
1659
+ },
1660
+ groupedResponses.statefulsets.map((statefulset, i) => {
1661
+ var _a, _b;
1662
+ return /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
1663
+ StatefulSetAccordion,
1684
1664
  {
1685
- name: (_a = statefulset.metadata) == null ? void 0 : _a.name,
1686
- namespace: (_b = statefulset.metadata) == null ? void 0 : _b.namespace,
1687
- kind: "statefulset"
1688
- },
1689
- groupedResponses.horizontalPodAutoscalers
1690
- ),
1691
- ownedPods: getOwnedResources(statefulset, groupedResponses.pods),
1692
- statefulset
1693
- })));
1694
- }));
1665
+ matchingHpa: getMatchingHpa(
1666
+ {
1667
+ name: (_a = statefulset.metadata) == null ? void 0 : _a.name,
1668
+ namespace: (_b = statefulset.metadata) == null ? void 0 : _b.namespace,
1669
+ kind: "statefulset"
1670
+ },
1671
+ groupedResponses.horizontalPodAutoscalers
1672
+ ),
1673
+ ownedPods: getOwnedResources(statefulset, groupedResponses.pods),
1674
+ statefulset
1675
+ }
1676
+ )));
1677
+ })
1678
+ );
1695
1679
  };
1696
1680
 
1697
1681
  const IngressDrawer = ({
@@ -1699,82 +1683,69 @@ const IngressDrawer = ({
1699
1683
  expanded
1700
1684
  }) => {
1701
1685
  var _a, _b;
1702
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1703
- object: ingress,
1704
- expanded,
1705
- kind: "Ingress",
1706
- renderObject: (ingressObject) => {
1707
- return ingressObject.spec || {};
1708
- }
1709
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1710
- container: true,
1711
- direction: "column",
1712
- justifyContent: "flex-start",
1713
- alignItems: "flex-start",
1714
- spacing: 0
1715
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1716
- item: true
1717
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1718
- variant: "h5"
1719
- }, (_b = (_a = ingress.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
1720
- item: true
1721
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1722
- color: "textSecondary",
1723
- variant: "body1"
1724
- }, "Ingress"))));
1686
+ return /* @__PURE__ */ React__default.createElement(
1687
+ KubernetesDrawer,
1688
+ {
1689
+ object: ingress,
1690
+ expanded,
1691
+ kind: "Ingress",
1692
+ renderObject: (ingressObject) => {
1693
+ return ingressObject.spec || {};
1694
+ }
1695
+ },
1696
+ /* @__PURE__ */ React__default.createElement(
1697
+ Grid,
1698
+ {
1699
+ container: true,
1700
+ direction: "column",
1701
+ justifyContent: "flex-start",
1702
+ alignItems: "flex-start",
1703
+ spacing: 0
1704
+ },
1705
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_b = (_a = ingress.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")),
1706
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Ingress"))
1707
+ )
1708
+ );
1725
1709
  };
1726
1710
 
1727
1711
  const IngressSummary = ({ ingress }) => {
1728
- return /* @__PURE__ */ React__default.createElement(Grid, {
1729
- container: true,
1730
- direction: "row",
1731
- justifyContent: "flex-start",
1732
- alignItems: "center"
1733
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1734
- xs: 3,
1735
- item: true
1736
- }, /* @__PURE__ */ React__default.createElement(IngressDrawer, {
1737
- ingress
1738
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1739
- item: true,
1740
- xs: 1
1741
- }, /* @__PURE__ */ React__default.createElement(Divider, {
1742
- style: { height: "5em" },
1743
- orientation: "vertical"
1744
- })));
1712
+ return /* @__PURE__ */ React__default.createElement(
1713
+ Grid,
1714
+ {
1715
+ container: true,
1716
+ direction: "row",
1717
+ justifyContent: "flex-start",
1718
+ alignItems: "center"
1719
+ },
1720
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(IngressDrawer, { ingress })),
1721
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" }))
1722
+ );
1745
1723
  };
1746
1724
  const IngressCard = ({ ingress }) => {
1747
- return /* @__PURE__ */ React__default.createElement(StructuredMetadataTable, {
1748
- metadata: {
1749
- ...ingress.spec
1725
+ return /* @__PURE__ */ React__default.createElement(
1726
+ StructuredMetadataTable,
1727
+ {
1728
+ metadata: {
1729
+ ...ingress.spec
1730
+ }
1750
1731
  }
1751
- });
1732
+ );
1752
1733
  };
1753
1734
  const IngressAccordion = ({ ingress }) => {
1754
- return /* @__PURE__ */ React__default.createElement(Accordion, {
1755
- TransitionProps: { unmountOnExit: true }
1756
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
1757
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
1758
- }, /* @__PURE__ */ React__default.createElement(IngressSummary, {
1759
- ingress
1760
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(IngressCard, {
1761
- ingress
1762
- })));
1735
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(IngressSummary, { ingress })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(IngressCard, { ingress })));
1763
1736
  };
1764
1737
  const IngressesAccordions = ({}) => {
1765
1738
  const groupedResponses = useContext(GroupedResponsesContext);
1766
- return /* @__PURE__ */ React__default.createElement(Grid, {
1767
- container: true,
1768
- direction: "row",
1769
- justifyContent: "flex-start",
1770
- alignItems: "flex-start"
1771
- }, groupedResponses.ingresses.map((ingress, i) => /* @__PURE__ */ React__default.createElement(Grid, {
1772
- item: true,
1773
- key: i,
1774
- xs: true
1775
- }, /* @__PURE__ */ React__default.createElement(IngressAccordion, {
1776
- ingress
1777
- }))));
1739
+ return /* @__PURE__ */ React__default.createElement(
1740
+ Grid,
1741
+ {
1742
+ container: true,
1743
+ direction: "row",
1744
+ justifyContent: "flex-start",
1745
+ alignItems: "flex-start"
1746
+ },
1747
+ groupedResponses.ingresses.map((ingress, i) => /* @__PURE__ */ React__default.createElement(Grid, { item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(IngressAccordion, { ingress })))
1748
+ );
1778
1749
  };
1779
1750
 
1780
1751
  const ServiceDrawer = ({
@@ -1782,54 +1753,45 @@ const ServiceDrawer = ({
1782
1753
  expanded
1783
1754
  }) => {
1784
1755
  var _a, _b;
1785
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1786
- object: service,
1787
- expanded,
1788
- kind: "Service",
1789
- renderObject: (serviceObject) => {
1790
- return serviceObject.spec || {};
1791
- }
1792
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1793
- container: true,
1794
- direction: "column",
1795
- justifyContent: "flex-start",
1796
- alignItems: "flex-start",
1797
- spacing: 0
1798
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1799
- item: true
1800
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1801
- variant: "h5"
1802
- }, (_b = (_a = service.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
1803
- item: true
1804
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1805
- color: "textSecondary",
1806
- variant: "body1"
1807
- }, "Service"))));
1756
+ return /* @__PURE__ */ React__default.createElement(
1757
+ KubernetesDrawer,
1758
+ {
1759
+ object: service,
1760
+ expanded,
1761
+ kind: "Service",
1762
+ renderObject: (serviceObject) => {
1763
+ return serviceObject.spec || {};
1764
+ }
1765
+ },
1766
+ /* @__PURE__ */ React__default.createElement(
1767
+ Grid,
1768
+ {
1769
+ container: true,
1770
+ direction: "column",
1771
+ justifyContent: "flex-start",
1772
+ alignItems: "flex-start",
1773
+ spacing: 0
1774
+ },
1775
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_b = (_a = service.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")),
1776
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Service"))
1777
+ )
1778
+ );
1808
1779
  };
1809
1780
 
1810
1781
  const ServiceSummary = ({ service }) => {
1811
1782
  var _a, _b;
1812
- return /* @__PURE__ */ React__default.createElement(Grid, {
1813
- container: true,
1814
- direction: "row",
1815
- justifyContent: "flex-start",
1816
- alignItems: "center"
1817
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1818
- xs: 3,
1819
- item: true
1820
- }, /* @__PURE__ */ React__default.createElement(ServiceDrawer, {
1821
- service
1822
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1823
- item: true,
1824
- xs: 1
1825
- }, /* @__PURE__ */ React__default.createElement(Divider, {
1826
- style: { height: "5em" },
1827
- orientation: "vertical"
1828
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1829
- item: true
1830
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1831
- variant: "subtitle2"
1832
- }, "Type: ", (_b = (_a = service.spec) == null ? void 0 : _a.type) != null ? _b : "?")));
1783
+ return /* @__PURE__ */ React__default.createElement(
1784
+ Grid,
1785
+ {
1786
+ container: true,
1787
+ direction: "row",
1788
+ justifyContent: "flex-start",
1789
+ alignItems: "center"
1790
+ },
1791
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(ServiceDrawer, { service })),
1792
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
1793
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "Type: ", (_b = (_a = service.spec) == null ? void 0 : _a.type) != null ? _b : "?"))
1794
+ );
1833
1795
  };
1834
1796
  const ServiceCard = ({ service }) => {
1835
1797
  var _a, _b, _c, _d, _e, _f, _g, _h, _i;
@@ -1843,39 +1805,32 @@ const ServiceCard = ({ service }) => {
1843
1805
  if (((_g = service.spec) == null ? void 0 : _g.type) === "ExternalName") {
1844
1806
  metadata.externalName = service.spec.externalName;
1845
1807
  }
1846
- return /* @__PURE__ */ React__default.createElement(StructuredMetadataTable, {
1847
- metadata: {
1848
- type: (_h = service.spec) == null ? void 0 : _h.type,
1849
- ports: (_i = service.spec) == null ? void 0 : _i.ports,
1850
- ...metadata
1808
+ return /* @__PURE__ */ React__default.createElement(
1809
+ StructuredMetadataTable,
1810
+ {
1811
+ metadata: {
1812
+ type: (_h = service.spec) == null ? void 0 : _h.type,
1813
+ ports: (_i = service.spec) == null ? void 0 : _i.ports,
1814
+ ...metadata
1815
+ }
1851
1816
  }
1852
- });
1817
+ );
1853
1818
  };
1854
1819
  const ServiceAccordion = ({ service }) => {
1855
- return /* @__PURE__ */ React__default.createElement(Accordion, {
1856
- TransitionProps: { unmountOnExit: true }
1857
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
1858
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
1859
- }, /* @__PURE__ */ React__default.createElement(ServiceSummary, {
1860
- service
1861
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(ServiceCard, {
1862
- service
1863
- })));
1820
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(ServiceSummary, { service })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(ServiceCard, { service })));
1864
1821
  };
1865
1822
  const ServicesAccordions = ({}) => {
1866
1823
  const groupedResponses = useContext(GroupedResponsesContext);
1867
- return /* @__PURE__ */ React__default.createElement(Grid, {
1868
- container: true,
1869
- direction: "row",
1870
- justifyContent: "flex-start",
1871
- alignItems: "flex-start"
1872
- }, groupedResponses.services.map((service, i) => /* @__PURE__ */ React__default.createElement(Grid, {
1873
- item: true,
1874
- key: i,
1875
- xs: true
1876
- }, /* @__PURE__ */ React__default.createElement(ServiceAccordion, {
1877
- service
1878
- }))));
1824
+ return /* @__PURE__ */ React__default.createElement(
1825
+ Grid,
1826
+ {
1827
+ container: true,
1828
+ direction: "row",
1829
+ justifyContent: "flex-start",
1830
+ alignItems: "flex-start"
1831
+ },
1832
+ groupedResponses.services.map((service, i) => /* @__PURE__ */ React__default.createElement(Grid, { item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(ServiceAccordion, { service })))
1833
+ );
1879
1834
  };
1880
1835
 
1881
1836
  const JobDrawer = ({
@@ -1883,100 +1838,86 @@ const JobDrawer = ({
1883
1838
  expanded
1884
1839
  }) => {
1885
1840
  var _a, _b;
1886
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1887
- object: job,
1888
- expanded,
1889
- kind: "Job",
1890
- renderObject: (jobObj) => {
1891
- var _a2, _b2, _c, _d, _e, _f, _g, _h;
1892
- return {
1893
- parallelism: (_b2 = (_a2 = jobObj.spec) == null ? void 0 : _a2.parallelism) != null ? _b2 : "???",
1894
- completions: (_d = (_c = jobObj.spec) == null ? void 0 : _c.completions) != null ? _d : "???",
1895
- backoffLimit: (_f = (_e = jobObj.spec) == null ? void 0 : _e.backoffLimit) != null ? _f : "???",
1896
- startTime: (_h = (_g = jobObj.status) == null ? void 0 : _g.startTime) != null ? _h : "???"
1897
- };
1898
- }
1899
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1900
- container: true,
1901
- direction: "column",
1902
- justifyContent: "flex-start",
1903
- alignItems: "flex-start",
1904
- spacing: 0
1905
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1906
- item: true
1907
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1908
- variant: "h6"
1909
- }, (_b = (_a = job.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
1910
- item: true
1911
- }, /* @__PURE__ */ React__default.createElement(Typography, {
1912
- color: "textSecondary",
1913
- variant: "body1"
1914
- }, "Job"))));
1841
+ return /* @__PURE__ */ React__default.createElement(
1842
+ KubernetesDrawer,
1843
+ {
1844
+ object: job,
1845
+ expanded,
1846
+ kind: "Job",
1847
+ renderObject: (jobObj) => {
1848
+ var _a2, _b2, _c, _d, _e, _f, _g, _h;
1849
+ return {
1850
+ parallelism: (_b2 = (_a2 = jobObj.spec) == null ? void 0 : _a2.parallelism) != null ? _b2 : "???",
1851
+ completions: (_d = (_c = jobObj.spec) == null ? void 0 : _c.completions) != null ? _d : "???",
1852
+ backoffLimit: (_f = (_e = jobObj.spec) == null ? void 0 : _e.backoffLimit) != null ? _f : "???",
1853
+ startTime: (_h = (_g = jobObj.status) == null ? void 0 : _g.startTime) != null ? _h : "???"
1854
+ };
1855
+ }
1856
+ },
1857
+ /* @__PURE__ */ React__default.createElement(
1858
+ Grid,
1859
+ {
1860
+ container: true,
1861
+ direction: "column",
1862
+ justifyContent: "flex-start",
1863
+ alignItems: "flex-start",
1864
+ spacing: 0
1865
+ },
1866
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h6" }, (_b = (_a = job.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")),
1867
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Job"))
1868
+ )
1869
+ );
1915
1870
  };
1916
1871
 
1917
1872
  const JobSummary = ({ job }) => {
1918
1873
  var _a, _b, _c, _d, _e, _f;
1919
- return /* @__PURE__ */ React__default.createElement(Grid, {
1920
- container: true,
1921
- direction: "row",
1922
- justifyContent: "flex-start",
1923
- alignItems: "center"
1924
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1925
- xs: 3,
1926
- item: true
1927
- }, /* @__PURE__ */ React__default.createElement(JobDrawer, {
1928
- job
1929
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1930
- item: true,
1931
- xs: 1
1932
- }, /* @__PURE__ */ React__default.createElement(Divider, {
1933
- style: { height: "5em" },
1934
- orientation: "vertical"
1935
- })), /* @__PURE__ */ React__default.createElement(Grid, {
1936
- item: true,
1937
- container: true,
1938
- xs: 8,
1939
- direction: "column",
1940
- justifyContent: "flex-start",
1941
- alignItems: "flex-start"
1942
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1943
- item: true
1944
- }, ((_a = job.status) == null ? void 0 : _a.succeeded) && /* @__PURE__ */ React__default.createElement(StatusOK, null, "Succeeded"), ((_b = job.status) == null ? void 0 : _b.active) && /* @__PURE__ */ React__default.createElement(StatusPending, null, "Running"), ((_c = job.status) == null ? void 0 : _c.failed) && /* @__PURE__ */ React__default.createElement(StatusError, null, "Failed")), /* @__PURE__ */ React__default.createElement(Grid, {
1945
- item: true
1946
- }, "Start time: ", (_e = (_d = job.status) == null ? void 0 : _d.startTime) == null ? void 0 : _e.toString()), ((_f = job.status) == null ? void 0 : _f.completionTime) && /* @__PURE__ */ React__default.createElement(Grid, {
1947
- item: true
1948
- }, "Completion time: ", job.status.completionTime.toString())));
1874
+ return /* @__PURE__ */ React__default.createElement(
1875
+ Grid,
1876
+ {
1877
+ container: true,
1878
+ direction: "row",
1879
+ justifyContent: "flex-start",
1880
+ alignItems: "center"
1881
+ },
1882
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(JobDrawer, { job })),
1883
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
1884
+ /* @__PURE__ */ React__default.createElement(
1885
+ Grid,
1886
+ {
1887
+ item: true,
1888
+ container: true,
1889
+ xs: 8,
1890
+ direction: "column",
1891
+ justifyContent: "flex-start",
1892
+ alignItems: "flex-start"
1893
+ },
1894
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, ((_a = job.status) == null ? void 0 : _a.succeeded) && /* @__PURE__ */ React__default.createElement(StatusOK, null, "Succeeded"), ((_b = job.status) == null ? void 0 : _b.active) && /* @__PURE__ */ React__default.createElement(StatusPending, null, "Running"), ((_c = job.status) == null ? void 0 : _c.failed) && /* @__PURE__ */ React__default.createElement(StatusError, null, "Failed")),
1895
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, "Start time: ", (_e = (_d = job.status) == null ? void 0 : _d.startTime) == null ? void 0 : _e.toString()),
1896
+ ((_f = job.status) == null ? void 0 : _f.completionTime) && /* @__PURE__ */ React__default.createElement(Grid, { item: true }, "Completion time: ", job.status.completionTime.toString())
1897
+ )
1898
+ );
1949
1899
  };
1950
1900
  const JobAccordion = ({ job, ownedPods }) => {
1951
- return /* @__PURE__ */ React__default.createElement(Accordion, {
1952
- TransitionProps: { unmountOnExit: true }
1953
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
1954
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
1955
- }, /* @__PURE__ */ React__default.createElement(JobSummary, {
1956
- job
1957
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(PodsTable, {
1958
- pods: ownedPods
1959
- })));
1901
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(JobSummary, { job })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(PodsTable, { pods: ownedPods })));
1960
1902
  };
1961
1903
  const JobsAccordions = ({ jobs }) => {
1962
1904
  const groupedResponses = useContext(GroupedResponsesContext);
1963
- return /* @__PURE__ */ React__default.createElement(Grid, {
1964
- container: true,
1965
- direction: "column",
1966
- justifyContent: "flex-start",
1967
- alignItems: "flex-start"
1968
- }, jobs.map((job, i) => /* @__PURE__ */ React__default.createElement(Grid, {
1969
- container: true,
1970
- item: true,
1971
- key: i,
1972
- xs: true
1973
- }, /* @__PURE__ */ React__default.createElement(Grid, {
1974
- item: true,
1975
- xs: true
1976
- }, /* @__PURE__ */ React__default.createElement(JobAccordion, {
1977
- ownedPods: getOwnedResources(job, groupedResponses.pods),
1978
- job
1979
- })))));
1905
+ return /* @__PURE__ */ React__default.createElement(
1906
+ Grid,
1907
+ {
1908
+ container: true,
1909
+ direction: "column",
1910
+ justifyContent: "flex-start",
1911
+ alignItems: "flex-start"
1912
+ },
1913
+ jobs.map((job, i) => /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
1914
+ JobAccordion,
1915
+ {
1916
+ ownedPods: getOwnedResources(job, groupedResponses.pods),
1917
+ job
1918
+ }
1919
+ ))))
1920
+ );
1980
1921
  };
1981
1922
 
1982
1923
  const CronJobDrawer = ({
@@ -1985,40 +1926,36 @@ const CronJobDrawer = ({
1985
1926
  }) => {
1986
1927
  var _a, _b, _c;
1987
1928
  const namespace = (_a = cronJob.metadata) == null ? void 0 : _a.namespace;
1988
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
1989
- object: cronJob,
1990
- expanded,
1991
- kind: "CronJob",
1992
- renderObject: (cronJobObj) => {
1993
- var _a2, _b2, _c2, _d, _e, _f, _g, _h;
1994
- return {
1995
- schedule: (_b2 = (_a2 = cronJobObj.spec) == null ? void 0 : _a2.schedule) != null ? _b2 : "???",
1996
- startingDeadlineSeconds: (_d = (_c2 = cronJobObj.spec) == null ? void 0 : _c2.startingDeadlineSeconds) != null ? _d : "???",
1997
- concurrencyPolicy: (_f = (_e = cronJobObj.spec) == null ? void 0 : _e.concurrencyPolicy) != null ? _f : "???",
1998
- lastScheduleTime: (_h = (_g = cronJobObj.status) == null ? void 0 : _g.lastScheduleTime) != null ? _h : "???"
1999
- };
2000
- }
2001
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2002
- container: true,
2003
- direction: "column",
2004
- justifyContent: "flex-start",
2005
- alignItems: "flex-start",
2006
- spacing: 0
2007
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2008
- item: true
2009
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2010
- variant: "h5"
2011
- }, (_c = (_b = cronJob.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
2012
- item: true
2013
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2014
- color: "textSecondary",
2015
- variant: "body1"
2016
- }, "CronJob")), namespace && /* @__PURE__ */ React__default.createElement(Grid, {
2017
- item: true
2018
- }, /* @__PURE__ */ React__default.createElement(Chip, {
2019
- size: "small",
2020
- label: `namespace: ${namespace}`
2021
- }))));
1929
+ return /* @__PURE__ */ React__default.createElement(
1930
+ KubernetesDrawer,
1931
+ {
1932
+ object: cronJob,
1933
+ expanded,
1934
+ kind: "CronJob",
1935
+ renderObject: (cronJobObj) => {
1936
+ var _a2, _b2, _c2, _d, _e, _f, _g, _h;
1937
+ return {
1938
+ schedule: (_b2 = (_a2 = cronJobObj.spec) == null ? void 0 : _a2.schedule) != null ? _b2 : "???",
1939
+ startingDeadlineSeconds: (_d = (_c2 = cronJobObj.spec) == null ? void 0 : _c2.startingDeadlineSeconds) != null ? _d : "???",
1940
+ concurrencyPolicy: (_f = (_e = cronJobObj.spec) == null ? void 0 : _e.concurrencyPolicy) != null ? _f : "???",
1941
+ lastScheduleTime: (_h = (_g = cronJobObj.status) == null ? void 0 : _g.lastScheduleTime) != null ? _h : "???"
1942
+ };
1943
+ }
1944
+ },
1945
+ /* @__PURE__ */ React__default.createElement(
1946
+ Grid,
1947
+ {
1948
+ container: true,
1949
+ direction: "column",
1950
+ justifyContent: "flex-start",
1951
+ alignItems: "flex-start",
1952
+ spacing: 0
1953
+ },
1954
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_c = (_b = cronJob.metadata) == null ? void 0 : _b.name) != null ? _c : "unknown object")),
1955
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "CronJob")),
1956
+ namespace && /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Chip, { size: "small", label: `namespace: ${namespace}` }))
1957
+ )
1958
+ );
2022
1959
  };
2023
1960
 
2024
1961
  const k8sCronAliases = /* @__PURE__ */ new Map([
@@ -2041,69 +1978,54 @@ const humanizeCron = (schedule) => {
2041
1978
 
2042
1979
  const CronJobSummary = ({ cronJob }) => {
2043
1980
  var _a, _b;
2044
- return /* @__PURE__ */ React__default.createElement(Grid, {
2045
- container: true,
2046
- direction: "row",
2047
- justifyContent: "flex-start",
2048
- alignItems: "center"
2049
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2050
- xs: 3,
2051
- item: true
2052
- }, /* @__PURE__ */ React__default.createElement(CronJobDrawer, {
2053
- cronJob
2054
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2055
- item: true,
2056
- xs: 1
2057
- }, /* @__PURE__ */ React__default.createElement(Divider, {
2058
- style: { height: "5em" },
2059
- orientation: "vertical"
2060
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2061
- item: true,
2062
- container: true,
2063
- xs: 5,
2064
- direction: "column",
2065
- justifyContent: "flex-start",
2066
- alignItems: "flex-start"
2067
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2068
- item: true
2069
- }, ((_a = cronJob.spec) == null ? void 0 : _a.suspend) ? /* @__PURE__ */ React__default.createElement(StatusError, null, "Suspended") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "Active")), /* @__PURE__ */ React__default.createElement(Grid, {
2070
- item: true
2071
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2072
- variant: "body1"
2073
- }, "Schedule:", " ", ((_b = cronJob.spec) == null ? void 0 : _b.schedule) ? `${cronJob.spec.schedule} (${humanizeCron(
2074
- cronJob.spec.schedule
2075
- )})` : "N/A"))));
1981
+ return /* @__PURE__ */ React__default.createElement(
1982
+ Grid,
1983
+ {
1984
+ container: true,
1985
+ direction: "row",
1986
+ justifyContent: "flex-start",
1987
+ alignItems: "center"
1988
+ },
1989
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(CronJobDrawer, { cronJob })),
1990
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
1991
+ /* @__PURE__ */ React__default.createElement(
1992
+ Grid,
1993
+ {
1994
+ item: true,
1995
+ container: true,
1996
+ xs: 5,
1997
+ direction: "column",
1998
+ justifyContent: "flex-start",
1999
+ alignItems: "flex-start"
2000
+ },
2001
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, ((_a = cronJob.spec) == null ? void 0 : _a.suspend) ? /* @__PURE__ */ React__default.createElement(StatusError, null, "Suspended") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "Active")),
2002
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "body1" }, "Schedule:", " ", ((_b = cronJob.spec) == null ? void 0 : _b.schedule) ? `${cronJob.spec.schedule} (${humanizeCron(
2003
+ cronJob.spec.schedule
2004
+ )})` : "N/A"))
2005
+ )
2006
+ );
2076
2007
  };
2077
2008
  const CronJobAccordion = ({ cronJob, ownedJobs }) => {
2078
- return /* @__PURE__ */ React__default.createElement(Accordion, {
2079
- TransitionProps: { unmountOnExit: true }
2080
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
2081
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
2082
- }, /* @__PURE__ */ React__default.createElement(CronJobSummary, {
2083
- cronJob
2084
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(JobsAccordions, {
2085
- jobs: ownedJobs.reverse()
2086
- })));
2009
+ return /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(CronJobSummary, { cronJob })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(JobsAccordions, { jobs: ownedJobs.reverse() })));
2087
2010
  };
2088
2011
  const CronJobsAccordions = ({}) => {
2089
2012
  const groupedResponses = useContext(GroupedResponsesContext);
2090
- return /* @__PURE__ */ React__default.createElement(Grid, {
2091
- container: true,
2092
- direction: "column",
2093
- justifyContent: "flex-start",
2094
- alignItems: "flex-start"
2095
- }, groupedResponses.cronJobs.map((cronJob, i) => /* @__PURE__ */ React__default.createElement(Grid, {
2096
- container: true,
2097
- item: true,
2098
- key: i,
2099
- xs: true
2100
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2101
- item: true,
2102
- xs: true
2103
- }, /* @__PURE__ */ React__default.createElement(CronJobAccordion, {
2104
- ownedJobs: getOwnedResources(cronJob, groupedResponses.jobs),
2105
- cronJob
2106
- })))));
2013
+ return /* @__PURE__ */ React__default.createElement(
2014
+ Grid,
2015
+ {
2016
+ container: true,
2017
+ direction: "column",
2018
+ justifyContent: "flex-start",
2019
+ alignItems: "flex-start"
2020
+ },
2021
+ groupedResponses.cronJobs.map((cronJob, i) => /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
2022
+ CronJobAccordion,
2023
+ {
2024
+ ownedJobs: getOwnedResources(cronJob, groupedResponses.jobs),
2025
+ cronJob
2026
+ }
2027
+ ))))
2028
+ );
2107
2029
  };
2108
2030
 
2109
2031
  const RolloutDrawer = ({
@@ -2111,27 +2033,27 @@ const RolloutDrawer = ({
2111
2033
  expanded
2112
2034
  }) => {
2113
2035
  var _a, _b;
2114
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
2115
- object: rollout,
2116
- expanded,
2117
- kind: "Rollout",
2118
- renderObject: () => ({})
2119
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2120
- container: true,
2121
- direction: "column",
2122
- justifyContent: "flex-start",
2123
- alignItems: "flex-start",
2124
- spacing: 0
2125
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2126
- item: true
2127
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2128
- variant: "h5"
2129
- }, (_b = (_a = rollout.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
2130
- item: true
2131
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2132
- color: "textSecondary",
2133
- variant: "body1"
2134
- }, "Rollout"))));
2036
+ return /* @__PURE__ */ React__default.createElement(
2037
+ KubernetesDrawer,
2038
+ {
2039
+ object: rollout,
2040
+ expanded,
2041
+ kind: "Rollout",
2042
+ renderObject: () => ({})
2043
+ },
2044
+ /* @__PURE__ */ React__default.createElement(
2045
+ Grid,
2046
+ {
2047
+ container: true,
2048
+ direction: "column",
2049
+ justifyContent: "flex-start",
2050
+ alignItems: "flex-start",
2051
+ spacing: 0
2052
+ },
2053
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_b = (_a = rollout.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")),
2054
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Rollout"))
2055
+ )
2056
+ );
2135
2057
  };
2136
2058
 
2137
2059
  const isSetWeightStep = (step) => step.hasOwnProperty("setWeight");
@@ -2143,9 +2065,7 @@ const createLabelForStep = (step) => {
2143
2065
  } else if (isPauseStep(step)) {
2144
2066
  return step.pause.duration === void 0 ? "infinite pause" : `pause for ${step.pause.duration}`;
2145
2067
  } else if (isAnalysisStep(step)) {
2146
- return /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("p", null, "analysis templates:"), step.analysis.templates.map((t, i) => /* @__PURE__ */ React__default.createElement("p", {
2147
- key: i
2148
- }, `${t.templateName}${t.clusterScope ? " (cluster scoped)" : ""}`)));
2068
+ return /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("p", null, "analysis templates:"), step.analysis.templates.map((t, i) => /* @__PURE__ */ React__default.createElement("p", { key: i }, `${t.templateName}${t.clusterScope ? " (cluster scoped)" : ""}`)));
2149
2069
  }
2150
2070
  return "unknown step";
2151
2071
  };
@@ -2155,31 +2075,23 @@ const StepsProgress = ({
2155
2075
  steps
2156
2076
  }) => {
2157
2077
  const activeStepIndex = currentStepIndex >= steps.length ? currentStepIndex + 1 : currentStepIndex;
2158
- return /* @__PURE__ */ React__default.createElement(Stepper, {
2159
- activeStep: aborted ? -1 : activeStepIndex,
2160
- alternativeLabel: true
2161
- }, steps.map((step, i) => /* @__PURE__ */ React__default.createElement(Step, {
2162
- key: i
2163
- }, /* @__PURE__ */ React__default.createElement(StepLabel, {
2164
- "data-testid": `step-${i}`
2165
- }, createLabelForStep(step)))).concat(
2166
- /* @__PURE__ */ React__default.createElement(Step, {
2167
- key: "-1"
2168
- }, /* @__PURE__ */ React__default.createElement(StepLabel, {
2169
- "data-testid": "step--1"
2170
- }, "Canary promoted"))
2078
+ return /* @__PURE__ */ React__default.createElement(Stepper, { activeStep: aborted ? -1 : activeStepIndex, alternativeLabel: true }, steps.map((step, i) => /* @__PURE__ */ React__default.createElement(Step, { key: i }, /* @__PURE__ */ React__default.createElement(StepLabel, { "data-testid": `step-${i}` }, createLabelForStep(step)))).concat(
2079
+ /* @__PURE__ */ React__default.createElement(Step, { key: "-1" }, /* @__PURE__ */ React__default.createElement(StepLabel, { "data-testid": "step--1" }, "Canary promoted"))
2171
2080
  ));
2172
2081
  };
2173
2082
 
2174
- const AbortedTitle = /* @__PURE__ */ React__default.createElement("div", {
2175
- style: {
2176
- display: "flex",
2177
- alignItems: "center",
2178
- flexWrap: "wrap"
2179
- }
2180
- }, /* @__PURE__ */ React__default.createElement(ErrorOutlineIcon, null), /* @__PURE__ */ React__default.createElement(Typography, {
2181
- variant: "subtitle1"
2182
- }, "Aborted"));
2083
+ const AbortedTitle = /* @__PURE__ */ React__default.createElement(
2084
+ "div",
2085
+ {
2086
+ style: {
2087
+ display: "flex",
2088
+ alignItems: "center",
2089
+ flexWrap: "wrap"
2090
+ }
2091
+ },
2092
+ /* @__PURE__ */ React__default.createElement(ErrorOutlineIcon, null),
2093
+ /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle1" }, "Aborted")
2094
+ );
2183
2095
  const findAbortedMessage = (rollout) => {
2184
2096
  var _a, _b, _c;
2185
2097
  return (_c = (_b = (_a = rollout.status) == null ? void 0 : _a.conditions) == null ? void 0 : _b.find(
@@ -2197,72 +2109,57 @@ const RolloutSummary = ({
2197
2109
  (p) => p.reason === "CanaryPauseStep"
2198
2110
  )) == null ? void 0 : _c.startTime;
2199
2111
  const abortedMessage = findAbortedMessage(rollout);
2200
- return /* @__PURE__ */ React__default.createElement(Grid, {
2201
- container: true,
2202
- direction: "row",
2203
- justifyContent: "flex-start",
2204
- alignItems: "center"
2205
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2206
- xs: 3,
2207
- item: true
2208
- }, /* @__PURE__ */ React__default.createElement(RolloutDrawer, {
2209
- rollout
2210
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2211
- item: true,
2212
- xs: 1
2213
- }, /* @__PURE__ */ React__default.createElement(Divider, {
2214
- style: { height: "5em" },
2215
- orientation: "vertical"
2216
- })), hpa && /* @__PURE__ */ React__default.createElement(Grid, {
2217
- item: true,
2218
- xs: 3
2219
- }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, {
2220
- hpa
2221
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2222
- item: true,
2223
- container: true,
2224
- direction: "column",
2225
- justifyContent: "flex-start",
2226
- alignItems: "flex-start",
2227
- spacing: 0
2228
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2229
- item: true
2230
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2231
- variant: "subtitle2"
2232
- }, "min replicas ", (_e = (_d = hpa.spec) == null ? void 0 : _d.minReplicas) != null ? _e : "?", " / max replicas", " ", (_g = (_f = hpa.spec) == null ? void 0 : _f.maxReplicas) != null ? _g : "?")), /* @__PURE__ */ React__default.createElement(Grid, {
2233
- item: true
2234
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2235
- variant: "subtitle2"
2236
- }, "current CPU usage:", " ", (_i = (_h = hpa.status) == null ? void 0 : _h.currentCPUUtilizationPercentage) != null ? _i : "?", "%")), /* @__PURE__ */ React__default.createElement(Grid, {
2237
- item: true
2238
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2239
- variant: "subtitle2"
2240
- }, "target CPU usage:", " ", (_k = (_j = hpa.spec) == null ? void 0 : _j.targetCPUUtilizationPercentage) != null ? _k : "?", "%"))))), /* @__PURE__ */ React__default.createElement(Grid, {
2241
- item: true,
2242
- container: true,
2243
- xs: 3,
2244
- direction: "column",
2245
- justifyContent: "flex-start",
2246
- alignItems: "flex-start"
2247
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2248
- item: true
2249
- }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")), /* @__PURE__ */ React__default.createElement(Grid, {
2250
- item: true
2251
- }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))), pauseTime && /* @__PURE__ */ React__default.createElement(Grid, {
2252
- item: true,
2253
- xs: 3
2254
- }, /* @__PURE__ */ React__default.createElement("div", {
2255
- style: {
2256
- display: "flex",
2257
- alignItems: "center",
2258
- flexWrap: "wrap"
2259
- }
2260
- }, /* @__PURE__ */ React__default.createElement(PauseIcon, null), /* @__PURE__ */ React__default.createElement(Typography, {
2261
- variant: "subtitle1"
2262
- }, "Paused (", DateTime.fromISO(pauseTime).toRelative({ locale: "en" }), ")"))), abortedMessage && /* @__PURE__ */ React__default.createElement(Grid, {
2263
- item: true,
2264
- xs: 3
2265
- }, AbortedTitle));
2112
+ return /* @__PURE__ */ React__default.createElement(
2113
+ Grid,
2114
+ {
2115
+ container: true,
2116
+ direction: "row",
2117
+ justifyContent: "flex-start",
2118
+ alignItems: "center"
2119
+ },
2120
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(RolloutDrawer, { rollout })),
2121
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" })),
2122
+ hpa && /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 3 }, /* @__PURE__ */ React__default.createElement(HorizontalPodAutoscalerDrawer, { hpa }, /* @__PURE__ */ React__default.createElement(
2123
+ Grid,
2124
+ {
2125
+ item: true,
2126
+ container: true,
2127
+ direction: "column",
2128
+ justifyContent: "flex-start",
2129
+ alignItems: "flex-start",
2130
+ spacing: 0
2131
+ },
2132
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "min replicas ", (_e = (_d = hpa.spec) == null ? void 0 : _d.minReplicas) != null ? _e : "?", " / max replicas", " ", (_g = (_f = hpa.spec) == null ? void 0 : _f.maxReplicas) != null ? _g : "?")),
2133
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "current CPU usage:", " ", (_i = (_h = hpa.status) == null ? void 0 : _h.currentCPUUtilizationPercentage) != null ? _i : "?", "%")),
2134
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, "target CPU usage:", " ", (_k = (_j = hpa.spec) == null ? void 0 : _j.targetCPUUtilizationPercentage) != null ? _k : "?", "%"))
2135
+ ))),
2136
+ /* @__PURE__ */ React__default.createElement(
2137
+ Grid,
2138
+ {
2139
+ item: true,
2140
+ container: true,
2141
+ xs: 3,
2142
+ direction: "column",
2143
+ justifyContent: "flex-start",
2144
+ alignItems: "flex-start"
2145
+ },
2146
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(StatusOK, null, numberOfCurrentPods, " pods")),
2147
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pod", numberOfPodsWithErrors > 1 ? "s" : "", " with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))
2148
+ ),
2149
+ pauseTime && /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 3 }, /* @__PURE__ */ React__default.createElement(
2150
+ "div",
2151
+ {
2152
+ style: {
2153
+ display: "flex",
2154
+ alignItems: "center",
2155
+ flexWrap: "wrap"
2156
+ }
2157
+ },
2158
+ /* @__PURE__ */ React__default.createElement(PauseIcon, null),
2159
+ /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle1" }, "Paused (", DateTime.fromISO(pauseTime).toRelative({ locale: "en" }), ")")
2160
+ )),
2161
+ abortedMessage && /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 3 }, AbortedTitle)
2162
+ );
2266
2163
  };
2267
2164
  const RolloutAccordion = ({
2268
2165
  rollout,
@@ -2280,71 +2177,74 @@ const RolloutAccordion = ({
2280
2177
  );
2281
2178
  const currentStepIndex = (_b = (_a = rollout.status) == null ? void 0 : _a.currentStepIndex) != null ? _b : 0;
2282
2179
  const abortedMessage = findAbortedMessage(rollout);
2283
- return /* @__PURE__ */ React__default.createElement(Accordion, {
2284
- defaultExpanded,
2285
- TransitionProps: { unmountOnExit: true }
2286
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
2287
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
2288
- }, /* @__PURE__ */ React__default.createElement(RolloutSummary, {
2289
- rollout,
2290
- numberOfCurrentPods: ownedPods.length,
2291
- numberOfPodsWithErrors: podsWithErrors.length,
2292
- hpa: matchingHpa
2293
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement("div", {
2294
- style: { width: "100%" }
2295
- }, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(Typography, {
2296
- variant: "h6"
2297
- }, "Rollout status")), /* @__PURE__ */ React__default.createElement("div", {
2298
- style: { margin: "1rem" }
2299
- }, abortedMessage && /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, AbortedTitle, /* @__PURE__ */ React__default.createElement(Typography, {
2300
- variant: "subtitle2"
2301
- }, abortedMessage)), /* @__PURE__ */ React__default.createElement(StepsProgress, {
2302
- aborted: abortedMessage !== void 0,
2303
- steps: (_f = (_e = (_d = (_c = rollout.spec) == null ? void 0 : _c.strategy) == null ? void 0 : _d.canary) == null ? void 0 : _e.steps) != null ? _f : [],
2304
- currentStepIndex
2305
- })), /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(PodsTable, {
2306
- pods: ownedPods,
2307
- extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
2308
- })))));
2180
+ return /* @__PURE__ */ React__default.createElement(
2181
+ Accordion,
2182
+ {
2183
+ defaultExpanded,
2184
+ TransitionProps: { unmountOnExit: true }
2185
+ },
2186
+ /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(
2187
+ RolloutSummary,
2188
+ {
2189
+ rollout,
2190
+ numberOfCurrentPods: ownedPods.length,
2191
+ numberOfPodsWithErrors: podsWithErrors.length,
2192
+ hpa: matchingHpa
2193
+ }
2194
+ )),
2195
+ /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h6" }, "Rollout status")), /* @__PURE__ */ React__default.createElement("div", { style: { margin: "1rem" } }, abortedMessage && /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, AbortedTitle, /* @__PURE__ */ React__default.createElement(Typography, { variant: "subtitle2" }, abortedMessage)), /* @__PURE__ */ React__default.createElement(
2196
+ StepsProgress,
2197
+ {
2198
+ aborted: abortedMessage !== void 0,
2199
+ steps: (_f = (_e = (_d = (_c = rollout.spec) == null ? void 0 : _c.strategy) == null ? void 0 : _d.canary) == null ? void 0 : _e.steps) != null ? _f : [],
2200
+ currentStepIndex
2201
+ }
2202
+ )), /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(
2203
+ PodsTable,
2204
+ {
2205
+ pods: ownedPods,
2206
+ extraColumns: [READY_COLUMNS, RESOURCE_COLUMNS]
2207
+ }
2208
+ ))))
2209
+ );
2309
2210
  };
2310
2211
  const RolloutAccordions = ({
2311
2212
  rollouts,
2312
2213
  defaultExpanded = false
2313
2214
  }) => {
2314
2215
  const groupedResponses = useContext(GroupedResponsesContext);
2315
- return /* @__PURE__ */ React__default.createElement(Grid, {
2316
- container: true,
2317
- direction: "column",
2318
- justifyContent: "flex-start",
2319
- alignItems: "flex-start"
2320
- }, rollouts.map((rollout, i) => {
2321
- var _a, _b;
2322
- return /* @__PURE__ */ React__default.createElement(Grid, {
2216
+ return /* @__PURE__ */ React__default.createElement(
2217
+ Grid,
2218
+ {
2323
2219
  container: true,
2324
- item: true,
2325
- key: i,
2326
- xs: true
2327
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2328
- item: true,
2329
- xs: true
2330
- }, /* @__PURE__ */ React__default.createElement(RolloutAccordion, {
2331
- defaultExpanded,
2332
- matchingHpa: getMatchingHpa(
2220
+ direction: "column",
2221
+ justifyContent: "flex-start",
2222
+ alignItems: "flex-start"
2223
+ },
2224
+ rollouts.map((rollout, i) => {
2225
+ var _a, _b;
2226
+ return /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
2227
+ RolloutAccordion,
2333
2228
  {
2334
- name: (_a = rollout.metadata) == null ? void 0 : _a.name,
2335
- namespace: (_b = rollout.metadata) == null ? void 0 : _b.namespace,
2336
- kind: "rollout"
2337
- },
2338
- groupedResponses.horizontalPodAutoscalers
2339
- ),
2340
- ownedPods: getOwnedPodsThroughReplicaSets(
2341
- rollout,
2342
- groupedResponses.replicaSets,
2343
- groupedResponses.pods
2344
- ),
2345
- rollout
2346
- })));
2347
- }));
2229
+ defaultExpanded,
2230
+ matchingHpa: getMatchingHpa(
2231
+ {
2232
+ name: (_a = rollout.metadata) == null ? void 0 : _a.name,
2233
+ namespace: (_b = rollout.metadata) == null ? void 0 : _b.namespace,
2234
+ kind: "rollout"
2235
+ },
2236
+ groupedResponses.horizontalPodAutoscalers
2237
+ ),
2238
+ ownedPods: getOwnedPodsThroughReplicaSets(
2239
+ rollout,
2240
+ groupedResponses.replicaSets,
2241
+ groupedResponses.pods
2242
+ ),
2243
+ rollout
2244
+ }
2245
+ )));
2246
+ })
2247
+ );
2348
2248
  };
2349
2249
 
2350
2250
  const capitalize = (str) => str.charAt(0).toLocaleUpperCase("en-US") + str.slice(1);
@@ -2355,92 +2255,94 @@ const DefaultCustomResourceDrawer = ({
2355
2255
  }) => {
2356
2256
  var _a, _b;
2357
2257
  const capitalizedName = capitalize(customResourceName);
2358
- return /* @__PURE__ */ React__default.createElement(KubernetesDrawer, {
2359
- object: customResource,
2360
- expanded,
2361
- kind: capitalizedName,
2362
- renderObject: (cr) => cr
2363
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2364
- container: true,
2365
- direction: "column",
2366
- justifyContent: "flex-start",
2367
- alignItems: "flex-start",
2368
- spacing: 0
2369
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2370
- item: true
2371
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2372
- variant: "h5"
2373
- }, (_b = (_a = customResource.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")), /* @__PURE__ */ React__default.createElement(Grid, {
2374
- item: true
2375
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2376
- color: "textSecondary",
2377
- variant: "body1"
2378
- }, capitalizedName))));
2258
+ return /* @__PURE__ */ React__default.createElement(
2259
+ KubernetesDrawer,
2260
+ {
2261
+ object: customResource,
2262
+ expanded,
2263
+ kind: capitalizedName,
2264
+ renderObject: (cr) => cr
2265
+ },
2266
+ /* @__PURE__ */ React__default.createElement(
2267
+ Grid,
2268
+ {
2269
+ container: true,
2270
+ direction: "column",
2271
+ justifyContent: "flex-start",
2272
+ alignItems: "flex-start",
2273
+ spacing: 0
2274
+ },
2275
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, (_b = (_a = customResource.metadata) == null ? void 0 : _a.name) != null ? _b : "unknown object")),
2276
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, capitalizedName))
2277
+ )
2278
+ );
2379
2279
  };
2380
2280
 
2381
2281
  const DefaultCustomResourceSummary = ({
2382
2282
  customResource,
2383
2283
  customResourceName
2384
2284
  }) => {
2385
- return /* @__PURE__ */ React__default.createElement(Grid, {
2386
- container: true,
2387
- direction: "row",
2388
- justifyContent: "flex-start",
2389
- alignItems: "center"
2390
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2391
- xs: 3,
2392
- item: true
2393
- }, /* @__PURE__ */ React__default.createElement(DefaultCustomResourceDrawer, {
2394
- customResource,
2395
- customResourceName
2396
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2397
- item: true,
2398
- xs: 1
2399
- }, /* @__PURE__ */ React__default.createElement(Divider, {
2400
- style: { height: "5em" },
2401
- orientation: "vertical"
2402
- })));
2285
+ return /* @__PURE__ */ React__default.createElement(
2286
+ Grid,
2287
+ {
2288
+ container: true,
2289
+ direction: "row",
2290
+ justifyContent: "flex-start",
2291
+ alignItems: "center"
2292
+ },
2293
+ /* @__PURE__ */ React__default.createElement(Grid, { xs: 3, item: true }, /* @__PURE__ */ React__default.createElement(
2294
+ DefaultCustomResourceDrawer,
2295
+ {
2296
+ customResource,
2297
+ customResourceName
2298
+ }
2299
+ )),
2300
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "5em" }, orientation: "vertical" }))
2301
+ );
2403
2302
  };
2404
2303
  const DefaultCustomResourceAccordion = ({
2405
2304
  customResource,
2406
2305
  customResourceName,
2407
2306
  defaultExpanded
2408
2307
  }) => {
2409
- return /* @__PURE__ */ React__default.createElement(Accordion, {
2410
- defaultExpanded,
2411
- TransitionProps: { unmountOnExit: true }
2412
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
2413
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
2414
- }, /* @__PURE__ */ React__default.createElement(DefaultCustomResourceSummary, {
2415
- customResource,
2416
- customResourceName
2417
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, customResource.hasOwnProperty("status") && /* @__PURE__ */ React__default.createElement(StructuredMetadataTable, {
2418
- metadata: customResource.status
2419
- })));
2308
+ return /* @__PURE__ */ React__default.createElement(
2309
+ Accordion,
2310
+ {
2311
+ defaultExpanded,
2312
+ TransitionProps: { unmountOnExit: true }
2313
+ },
2314
+ /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(
2315
+ DefaultCustomResourceSummary,
2316
+ {
2317
+ customResource,
2318
+ customResourceName
2319
+ }
2320
+ )),
2321
+ /* @__PURE__ */ React__default.createElement(AccordionDetails, null, customResource.hasOwnProperty("status") && /* @__PURE__ */ React__default.createElement(StructuredMetadataTable, { metadata: customResource.status }))
2322
+ );
2420
2323
  };
2421
2324
  const DefaultCustomResourceAccordions = ({
2422
2325
  customResources,
2423
2326
  customResourceName,
2424
2327
  defaultExpanded = false
2425
2328
  }) => {
2426
- return /* @__PURE__ */ React__default.createElement(Grid, {
2427
- container: true,
2428
- direction: "column",
2429
- justifyContent: "flex-start",
2430
- alignItems: "flex-start"
2431
- }, customResources.map((cr, i) => /* @__PURE__ */ React__default.createElement(Grid, {
2432
- container: true,
2433
- item: true,
2434
- key: i,
2435
- xs: true
2436
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2437
- item: true,
2438
- xs: true
2439
- }, /* @__PURE__ */ React__default.createElement(DefaultCustomResourceAccordion, {
2440
- defaultExpanded,
2441
- customResource: cr,
2442
- customResourceName
2443
- })))));
2329
+ return /* @__PURE__ */ React__default.createElement(
2330
+ Grid,
2331
+ {
2332
+ container: true,
2333
+ direction: "column",
2334
+ justifyContent: "flex-start",
2335
+ alignItems: "flex-start"
2336
+ },
2337
+ customResources.map((cr, i) => /* @__PURE__ */ React__default.createElement(Grid, { container: true, item: true, key: i, xs: true }, /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(
2338
+ DefaultCustomResourceAccordion,
2339
+ {
2340
+ defaultExpanded,
2341
+ customResource: cr,
2342
+ customResourceName
2343
+ }
2344
+ ))))
2345
+ );
2444
2346
  };
2445
2347
 
2446
2348
  const kindToResource = (customResources) => {
@@ -2454,16 +2356,16 @@ const CustomResources = ({}) => {
2454
2356
  return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, Object.entries(kindToResourceMap).map(([kind, resources], i) => {
2455
2357
  switch (kind) {
2456
2358
  case "Rollout":
2457
- return /* @__PURE__ */ React__default.createElement(RolloutAccordions, {
2458
- key: i,
2459
- rollouts: resources
2460
- });
2359
+ return /* @__PURE__ */ React__default.createElement(RolloutAccordions, { key: i, rollouts: resources });
2461
2360
  default:
2462
- return /* @__PURE__ */ React__default.createElement(DefaultCustomResourceAccordions, {
2463
- key: i,
2464
- customResources: resources,
2465
- customResourceName: kind
2466
- });
2361
+ return /* @__PURE__ */ React__default.createElement(
2362
+ DefaultCustomResourceAccordions,
2363
+ {
2364
+ key: i,
2365
+ customResources: resources,
2366
+ customResourceName: kind
2367
+ }
2368
+ );
2467
2369
  }
2468
2370
  }));
2469
2371
  };
@@ -2473,45 +2375,42 @@ const ClusterSummary = ({
2473
2375
  totalNumberOfPods,
2474
2376
  numberOfPodsWithErrors
2475
2377
  }) => {
2476
- return /* @__PURE__ */ React__default.createElement(Grid, {
2477
- container: true,
2478
- direction: "row",
2479
- justifyContent: "flex-start",
2480
- alignItems: "flex-start"
2481
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2482
- xs: 4,
2483
- item: true,
2484
- container: true,
2485
- direction: "column",
2486
- justifyContent: "flex-start",
2487
- alignItems: "flex-start",
2488
- spacing: 0
2489
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2490
- item: true,
2491
- xs: true
2492
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2493
- variant: "h3"
2494
- }, clusterName), /* @__PURE__ */ React__default.createElement(Typography, {
2495
- color: "textSecondary",
2496
- variant: "body1"
2497
- }, "Cluster"))), /* @__PURE__ */ React__default.createElement(Grid, {
2498
- item: true,
2499
- xs: 1
2500
- }, /* @__PURE__ */ React__default.createElement(Divider, {
2501
- style: { height: "4em" },
2502
- orientation: "vertical"
2503
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2504
- item: true,
2505
- container: true,
2506
- xs: 3,
2507
- direction: "column",
2508
- justifyContent: "flex-start",
2509
- alignItems: "flex-start"
2510
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2511
- item: true
2512
- }, /* @__PURE__ */ React__default.createElement(StatusOK, null, totalNumberOfPods, " pods")), /* @__PURE__ */ React__default.createElement(Grid, {
2513
- item: true
2514
- }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pods with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))));
2378
+ return /* @__PURE__ */ React__default.createElement(
2379
+ Grid,
2380
+ {
2381
+ container: true,
2382
+ direction: "row",
2383
+ justifyContent: "flex-start",
2384
+ alignItems: "flex-start"
2385
+ },
2386
+ /* @__PURE__ */ React__default.createElement(
2387
+ Grid,
2388
+ {
2389
+ xs: 4,
2390
+ item: true,
2391
+ container: true,
2392
+ direction: "column",
2393
+ justifyContent: "flex-start",
2394
+ alignItems: "flex-start",
2395
+ spacing: 0
2396
+ },
2397
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h3" }, clusterName), /* @__PURE__ */ React__default.createElement(Typography, { color: "textSecondary", variant: "body1" }, "Cluster"))
2398
+ ),
2399
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 1 }, /* @__PURE__ */ React__default.createElement(Divider, { style: { height: "4em" }, orientation: "vertical" })),
2400
+ /* @__PURE__ */ React__default.createElement(
2401
+ Grid,
2402
+ {
2403
+ item: true,
2404
+ container: true,
2405
+ xs: 3,
2406
+ direction: "column",
2407
+ justifyContent: "flex-start",
2408
+ alignItems: "flex-start"
2409
+ },
2410
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(StatusOK, null, totalNumberOfPods, " pods")),
2411
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true }, numberOfPodsWithErrors > 0 ? /* @__PURE__ */ React__default.createElement(StatusError, null, numberOfPodsWithErrors, " pods with errors") : /* @__PURE__ */ React__default.createElement(StatusOK, null, "No pods with errors"))
2412
+ )
2413
+ );
2515
2414
  };
2516
2415
  const Cluster = ({ clusterObjects, podsWithErrors }) => {
2517
2416
  const groupedResponses = groupResponses(clusterObjects.resources);
@@ -2523,38 +2422,14 @@ const Cluster = ({ clusterObjects, podsWithErrors }) => {
2523
2422
  }
2524
2423
  return accum;
2525
2424
  }, /* @__PURE__ */ new Map());
2526
- return /* @__PURE__ */ React__default.createElement(ClusterContext.Provider, {
2527
- value: clusterObjects.cluster
2528
- }, /* @__PURE__ */ React__default.createElement(GroupedResponsesContext.Provider, {
2529
- value: groupedResponses
2530
- }, /* @__PURE__ */ React__default.createElement(PodNamesWithMetricsContext.Provider, {
2531
- value: podNameToMetrics
2532
- }, /* @__PURE__ */ React__default.createElement(PodNamesWithErrorsContext.Provider, {
2533
- value: podsWithErrors
2534
- }, /* @__PURE__ */ React__default.createElement(Accordion, {
2535
- TransitionProps: { unmountOnExit: true }
2536
- }, /* @__PURE__ */ React__default.createElement(AccordionSummary, {
2537
- expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null)
2538
- }, /* @__PURE__ */ React__default.createElement(ClusterSummary, {
2539
- clusterName: clusterObjects.cluster.name,
2540
- totalNumberOfPods: groupedResponses.pods.length,
2541
- numberOfPodsWithErrors: podsWithErrors.size
2542
- })), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(Grid, {
2543
- container: true,
2544
- direction: "column"
2545
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2546
- item: true
2547
- }, /* @__PURE__ */ React__default.createElement(CustomResources, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2548
- item: true
2549
- }, /* @__PURE__ */ React__default.createElement(DeploymentsAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2550
- item: true
2551
- }, /* @__PURE__ */ React__default.createElement(StatefulSetsAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2552
- item: true
2553
- }, /* @__PURE__ */ React__default.createElement(IngressesAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2554
- item: true
2555
- }, /* @__PURE__ */ React__default.createElement(ServicesAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2556
- item: true
2557
- }, /* @__PURE__ */ React__default.createElement(CronJobsAccordions, null)))))))));
2425
+ return /* @__PURE__ */ React__default.createElement(ClusterContext.Provider, { value: clusterObjects.cluster }, /* @__PURE__ */ React__default.createElement(GroupedResponsesContext.Provider, { value: groupedResponses }, /* @__PURE__ */ React__default.createElement(PodNamesWithMetricsContext.Provider, { value: podNameToMetrics }, /* @__PURE__ */ React__default.createElement(PodNamesWithErrorsContext.Provider, { value: podsWithErrors }, /* @__PURE__ */ React__default.createElement(Accordion, { TransitionProps: { unmountOnExit: true } }, /* @__PURE__ */ React__default.createElement(AccordionSummary, { expandIcon: /* @__PURE__ */ React__default.createElement(ExpandMoreIcon, null) }, /* @__PURE__ */ React__default.createElement(
2426
+ ClusterSummary,
2427
+ {
2428
+ clusterName: clusterObjects.cluster.name,
2429
+ totalNumberOfPods: groupedResponses.pods.length,
2430
+ numberOfPodsWithErrors: podsWithErrors.size
2431
+ }
2432
+ )), /* @__PURE__ */ React__default.createElement(AccordionDetails, null, /* @__PURE__ */ React__default.createElement(Grid, { container: true, direction: "column" }, /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(CustomResources, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(DeploymentsAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(StatefulSetsAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(IngressesAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(ServicesAccordions, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(CronJobsAccordions, null)))))))));
2558
2433
  };
2559
2434
 
2560
2435
  const KubernetesContent = ({
@@ -2568,74 +2443,48 @@ const KubernetesContent = ({
2568
2443
  );
2569
2444
  const clustersWithErrors = (_a = kubernetesObjects == null ? void 0 : kubernetesObjects.items.filter((r) => r.errors.length > 0)) != null ? _a : [];
2570
2445
  const detectedErrors = kubernetesObjects !== void 0 ? detectErrors(kubernetesObjects) : /* @__PURE__ */ new Map();
2571
- return /* @__PURE__ */ React__default.createElement(Page, {
2572
- themeId: "tool"
2573
- }, /* @__PURE__ */ React__default.createElement(Content, null, kubernetesObjects === void 0 && error === void 0 && /* @__PURE__ */ React__default.createElement(Progress, null), clustersWithErrors.length > 0 && /* @__PURE__ */ React__default.createElement(Grid, {
2574
- container: true,
2575
- spacing: 3,
2576
- direction: "column"
2577
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2578
- item: true
2579
- }, /* @__PURE__ */ React__default.createElement(ErrorPanel$1, {
2580
- entityName: entity.metadata.name,
2581
- clustersWithErrors
2582
- }))), error !== void 0 && /* @__PURE__ */ React__default.createElement(Grid, {
2583
- container: true,
2584
- spacing: 3,
2585
- direction: "column"
2586
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2587
- item: true
2588
- }, /* @__PURE__ */ React__default.createElement(ErrorPanel$1, {
2589
- entityName: entity.metadata.name,
2590
- errorMessage: error
2591
- }))), kubernetesObjects && /* @__PURE__ */ React__default.createElement(Grid, {
2592
- container: true,
2593
- spacing: 3,
2594
- direction: "column"
2595
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2596
- item: true
2597
- }, /* @__PURE__ */ React__default.createElement(ErrorReporting, {
2598
- detectedErrors
2599
- })), /* @__PURE__ */ React__default.createElement(Grid, {
2600
- item: true
2601
- }, /* @__PURE__ */ React__default.createElement(Divider, null)), /* @__PURE__ */ React__default.createElement(Grid, {
2602
- item: true
2603
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2604
- variant: "h3"
2605
- }, "Your Clusters")), /* @__PURE__ */ React__default.createElement(Grid, {
2606
- item: true,
2607
- container: true
2608
- }, (kubernetesObjects == null ? void 0 : kubernetesObjects.items.length) <= 0 && /* @__PURE__ */ React__default.createElement(Grid, {
2609
- container: true,
2610
- justifyContent: "space-around",
2611
- direction: "row",
2612
- alignItems: "center",
2613
- spacing: 2
2614
- }, /* @__PURE__ */ React__default.createElement(Grid, {
2615
- item: true,
2616
- xs: 4
2617
- }, /* @__PURE__ */ React__default.createElement(Typography, {
2618
- variant: "h5"
2619
- }, "No resources on any known clusters for", " ", entity.metadata.name)), /* @__PURE__ */ React__default.createElement(Grid, {
2620
- item: true,
2621
- xs: 4
2622
- }, /* @__PURE__ */ React__default.createElement("img", {
2623
- src: EmptyStateImage,
2624
- alt: "EmptyState",
2625
- "data-testid": "emptyStateImg"
2626
- }))), (kubernetesObjects == null ? void 0 : kubernetesObjects.items.length) > 0 && (kubernetesObjects == null ? void 0 : kubernetesObjects.items.map((item, i) => {
2446
+ return /* @__PURE__ */ React__default.createElement(Page, { themeId: "tool" }, /* @__PURE__ */ React__default.createElement(Content, null, kubernetesObjects === void 0 && error === void 0 && /* @__PURE__ */ React__default.createElement(Progress, null), clustersWithErrors.length > 0 && /* @__PURE__ */ React__default.createElement(Grid, { container: true, spacing: 3, direction: "column" }, /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(
2447
+ ErrorPanel$1,
2448
+ {
2449
+ entityName: entity.metadata.name,
2450
+ clustersWithErrors
2451
+ }
2452
+ ))), error !== void 0 && /* @__PURE__ */ React__default.createElement(Grid, { container: true, spacing: 3, direction: "column" }, /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(
2453
+ ErrorPanel$1,
2454
+ {
2455
+ entityName: entity.metadata.name,
2456
+ errorMessage: error
2457
+ }
2458
+ ))), kubernetesObjects && /* @__PURE__ */ React__default.createElement(Grid, { container: true, spacing: 3, direction: "column" }, /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(ErrorReporting, { detectedErrors })), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Divider, null)), /* @__PURE__ */ React__default.createElement(Grid, { item: true }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h3" }, "Your Clusters")), /* @__PURE__ */ React__default.createElement(Grid, { item: true, container: true }, (kubernetesObjects == null ? void 0 : kubernetesObjects.items.length) <= 0 && /* @__PURE__ */ React__default.createElement(
2459
+ Grid,
2460
+ {
2461
+ container: true,
2462
+ justifyContent: "space-around",
2463
+ direction: "row",
2464
+ alignItems: "center",
2465
+ spacing: 2
2466
+ },
2467
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 4 }, /* @__PURE__ */ React__default.createElement(Typography, { variant: "h5" }, "No resources on any known clusters for", " ", entity.metadata.name)),
2468
+ /* @__PURE__ */ React__default.createElement(Grid, { item: true, xs: 4 }, /* @__PURE__ */ React__default.createElement(
2469
+ "img",
2470
+ {
2471
+ src: EmptyStateImage,
2472
+ alt: "EmptyState",
2473
+ "data-testid": "emptyStateImg"
2474
+ }
2475
+ ))
2476
+ ), (kubernetesObjects == null ? void 0 : kubernetesObjects.items.length) > 0 && (kubernetesObjects == null ? void 0 : kubernetesObjects.items.map((item, i) => {
2627
2477
  var _a2, _b;
2628
2478
  const podsWithErrors = new Set(
2629
2479
  (_b = (_a2 = detectedErrors.get(item.cluster.name)) == null ? void 0 : _a2.filter((de) => de.kind === "Pod").map((de) => de.names).flat()) != null ? _b : []
2630
2480
  );
2631
- return /* @__PURE__ */ React__default.createElement(Grid, {
2632
- item: true,
2633
- key: i,
2634
- xs: 12
2635
- }, /* @__PURE__ */ React__default.createElement(Cluster, {
2636
- clusterObjects: item,
2637
- podsWithErrors
2638
- }));
2481
+ return /* @__PURE__ */ React__default.createElement(Grid, { item: true, key: i, xs: 12 }, /* @__PURE__ */ React__default.createElement(
2482
+ Cluster,
2483
+ {
2484
+ clusterObjects: item,
2485
+ podsWithErrors
2486
+ }
2487
+ ));
2639
2488
  }))))));
2640
2489
  };
2641
2490
 
@@ -2653,21 +2502,29 @@ const Router = (props) => {
2653
2502
  const kubernetesAnnotationValue = (_a = entity.metadata.annotations) == null ? void 0 : _a[KUBERNETES_ANNOTATION];
2654
2503
  const kubernetesLabelSelectorQueryAnnotationValue = (_b = entity.metadata.annotations) == null ? void 0 : _b[KUBERNETES_LABEL_SELECTOR_QUERY_ANNOTATION];
2655
2504
  if (kubernetesAnnotationValue || kubernetesLabelSelectorQueryAnnotationValue) {
2656
- return /* @__PURE__ */ React__default.createElement(Routes, null, /* @__PURE__ */ React__default.createElement(Route, {
2657
- path: "/",
2658
- element: /* @__PURE__ */ React__default.createElement(KubernetesContent, {
2659
- entity,
2660
- refreshIntervalMs: props.refreshIntervalMs
2661
- })
2662
- }));
2505
+ return /* @__PURE__ */ React__default.createElement(Routes, null, /* @__PURE__ */ React__default.createElement(
2506
+ Route,
2507
+ {
2508
+ path: "/",
2509
+ element: /* @__PURE__ */ React__default.createElement(
2510
+ KubernetesContent,
2511
+ {
2512
+ entity,
2513
+ refreshIntervalMs: props.refreshIntervalMs
2514
+ }
2515
+ )
2516
+ }
2517
+ ));
2663
2518
  }
2664
- return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(MissingAnnotationEmptyState, {
2665
- annotation: KUBERNETES_ANNOTATION
2666
- }), /* @__PURE__ */ React__default.createElement("h1", null, "Or use a label selector query, which takes precedence over the previous annotation."), /* @__PURE__ */ React__default.createElement(Button, {
2667
- variant: "contained",
2668
- color: "primary",
2669
- href: "https://backstage.io/docs/features/kubernetes/configuration#surfacing-your-kubernetes-components-as-part-of-an-entity"
2670
- }, "Read Kubernetes Plugin Docs"));
2519
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(MissingAnnotationEmptyState, { annotation: KUBERNETES_ANNOTATION }), /* @__PURE__ */ React__default.createElement("h1", null, "Or use a label selector query, which takes precedence over the previous annotation."), /* @__PURE__ */ React__default.createElement(
2520
+ Button,
2521
+ {
2522
+ variant: "contained",
2523
+ color: "primary",
2524
+ href: "https://backstage.io/docs/features/kubernetes/configuration#surfacing-your-kubernetes-components-as-part-of-an-entity"
2525
+ },
2526
+ "Read Kubernetes Plugin Docs"
2527
+ ));
2671
2528
  };
2672
2529
 
2673
2530
  var Router$1 = /*#__PURE__*/Object.freeze({