/** * Copyright (c) OpenLens Authors. All rights reserved. * Licensed under MIT License. See LICENSE in root directory for more information. */ import "./overview-statuses.scss"; import React from "react"; import { observer } from "mobx-react"; import { OverviewWorkloadStatus } from "./overview-workload-status"; import { Link } from "react-router-dom"; import type { KubeResource } from "../../../common/rbac"; import { withInjectables } from "@ogre-tools/injectable-react"; import type { IComputedValue } from "mobx"; import workloadsInjectable from "./workloads.injectable"; export interface OverviewStatusesProps {} interface Workload { resource: KubeResource; amountOfItems: number; href: string; status: Record; title: string } interface Dependencies { workloads: IComputedValue; } const NonInjectedOverviewStatuses = observer( ({ workloads }: Dependencies & OverviewStatusesProps) => (
{workloads.get() .map(({ resource, title, href, status, amountOfItems }) => (
{title} ({amountOfItems})
))}
), ); export const OverviewStatuses = withInjectables(NonInjectedOverviewStatuses, { getProps: (di, props) => ({ workloads: di.inject(workloadsInjectable), ...props, }), });