@cardonexinc/freelens-argo-rollouts-extension
Version:
Argo Rollouts extension for Freelens
69 lines (68 loc) • 3 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const react_jsxRuntime = require("../_virtual/react_jsx-runtime.js");
const _freelensapp_extensions = require("../_virtual/@freelensapp_extensions.js");
const mobxReact = require("../_virtual/mobx-react.js");
const reactRouterDom = require("../_virtual/react-router-dom.js");
const errorPage = require("../components/error-page.js");
const argoRollout = require("../k8s/argo-rollout/argo-rollout.js");
const {
Component: {
KubeObjectAge,
KubeObjectListLayout
},
K8sApi: {
namespacesApi
},
Navigation: {
getDetailsUrl
}
} = _freelensapp_extensions._freelensapp_extensionsExports.Renderer;
const {
Util: {
stopPropagation
}
} = _freelensapp_extensions._freelensapp_extensionsExports.Common;
const KubeObject = argoRollout.ArgoRollout;
const ArgoRolloutsPage = mobxReact.mobxReactExports.observer((props) => errorPage.withErrorPage(props, () => {
const store = KubeObject.getStore();
return /* @__PURE__ */ react_jsxRuntime.react_jsxRuntimeExports.jsx(KubeObjectListLayout, { tableId: `${KubeObject.crd.singular}Table`, className: "argoRolloutsPage", store, sortingCallbacks: {
name: (object) => object.getName(),
namespace: (object) => object.getNs(),
phase: (object) => object.status?.phase ?? "",
replicas: (object) => object.spec.replicas,
currentPodHash: (object) => object.status?.currentPodHash ?? "",
type: (object) => object.spec.strategy?.blueGreen ? "BlueGreen" : object.spec.strategy?.canary ? "Canary" : "Unknown",
revision: (object) => object.metadata.annotations?.["rollout.argoproj.io/revision"] || "-"
}, searchFilters: [(object) => object.getSearchFields()], renderHeaderTitle: KubeObject.crd.title, renderTableHeader: [{
title: "Name",
sortBy: "name"
}, {
title: "Namespace",
sortBy: "namespace"
}, {
title: "Phase",
sortBy: "phase"
}, {
title: "Replicas",
sortBy: "replicas"
}, {
title: "Current Pod Hash",
sortBy: "currentPodHash"
}, {
title: "Type",
sortBy: "type"
}, {
title: "Revision",
sortBy: "revision"
}, {
title: "Age",
sortBy: "age"
}], renderTableContents: (object) => {
return [object.getName(), /* @__PURE__ */ react_jsxRuntime.react_jsxRuntimeExports.jsx(reactRouterDom.reactRouterDomExports.Link, { to: getDetailsUrl(namespacesApi.formatUrlForNotListing({
name: object.getNs()
})), onClick: stopPropagation, children: object.getNs() }, "link"), object.status?.phase ?? "-", object.status?.readyReplicas ?? "-", object.status?.currentPodHash ?? "-", object.spec.strategy?.blueGreen ? "BlueGreen" : object.spec.strategy?.canary ? "Canary" : "Unknown", object.metadata.annotations?.["rollout.argoproj.io/revision"] || "-", /* @__PURE__ */ react_jsxRuntime.react_jsxRuntimeExports.jsx(KubeObjectAge, { object }, "age")];
} });
}));
exports.ArgoRolloutsPage = ArgoRolloutsPage;
//# sourceMappingURL=argo-rollouts-page.js.map