import { DetailField } from "@repo/rdx-ui/components/detail-field"; import { EntityListHeader, EntityStatus } from "@repo/rdx-ui/components/entity-list"; import { LayersIcon } from "@repo/rdx-ui/lib/icons"; import { Button } from "@repo/shadcn-ui/components/button"; import { useQuery } from "@tanstack/react-query"; import { useTranslation } from "react-i18next"; import type { GlobalApplicationCapabilitiesDTO } from "../../../../common"; import { OperatingSystemProductFields } from "../../../global-operating-systems/shared/ui/operating-system-product-fields"; import { useGlobalSoftwareCatalog } from "../../shared/global-software-catalog-context"; import { GlobalApplicationFeedback } from "../../shared/ui/global-application-feedback"; import { GlobalApplicationAdministration } from "./global-application-administration"; export function GlobalApplicationDetail({ id, access, onEdit, }: { id: string; access: GlobalApplicationCapabilitiesDTO | undefined; onEdit: (id: string) => void; }) { const { api: globalApplicationsApi, keys: globalApplicationKeys, text, } = useGlobalSoftwareCatalog(); const { t } = useTranslation("resources"); const query = useQuery({ queryKey: globalApplicationKeys.detail(id), queryFn: () => globalApplicationsApi.detail(id), retry: false, }); const resource = query.data?.resource; return (
{t(`${text}.loading`)}
} {query.isError && ( )} {resource && ( <>