Files
docmost/apps/client/src/ee/licence/components/license-details.tsx
T
Philip Okugbe 33895b0607 bug fixes (#2250)
* util

* fix page position collation

* support fixed toolbar in templates editor

* date localization

* fix clipped emoji in templates editor

* fix page updated time object

* fix flickers

* fix: remove redundant breadcrumb from destination modal
2026-05-28 16:20:37 +01:00

88 lines
2.6 KiB
TypeScript

import { Badge, Table } from "@mantine/core";
import { useLicenseInfo } from "@/ee/licence/queries/license-query.ts";
import { isLicenseExpired } from "@/ee/licence/license.utils.ts";
import { useAtom } from "jotai";
import { workspaceAtom } from "@/features/user/atoms/current-user-atom.ts";
import { formatLocalized, useDateFnsLocale } from "@/lib/date-locale.ts";
export default function LicenseDetails() {
const { data: license, isError } = useLicenseInfo();
const [workspace] = useAtom(workspaceAtom);
const locale = useDateFnsLocale();
if (!license) {
return null;
}
if (isError) {
return null;
}
return (
<Table.ScrollContainer minWidth={500} py="md">
<Table
variant="vertical"
verticalSpacing="sm"
layout="fixed"
withTableBorder
>
<Table.Caption>
Contact sales@docmost.com for support and enquiries.
</Table.Caption>
<Table.Tbody>
<Table.Tr>
<Table.Th w={160}>Edition</Table.Th>
<Table.Td>
{license.licenseType === "business" ? "Business" : "Enterprise"}{" "}
{license.trial && <Badge color="green">Trial</Badge>}
</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>Licensed to</Table.Th>
<Table.Td>{license.customerName}</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>Seat count</Table.Th>
<Table.Td>
{license.seatCount} ({workspace?.memberCount} used)
</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>Issued at</Table.Th>
<Table.Td>
{formatLocalized(license.issuedAt, "dd MMMM, yyyy", "PPP", locale)}
</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>Expires at</Table.Th>
<Table.Td>
{formatLocalized(license.expiresAt, "dd MMMM, yyyy", "PPP", locale)}
</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>License ID</Table.Th>
<Table.Td>{license.id}</Table.Td>
</Table.Tr>
<Table.Tr>
<Table.Th>Status</Table.Th>
<Table.Td>
{isLicenseExpired(license) ? (
<Badge color="red" variant="light">
Expired
</Badge>
) : (
<Badge color="blue" variant="light">
Valid
</Badge>
)}
</Table.Td>
</Table.Tr>
</Table.Tbody>
</Table>
</Table.ScrollContainer>
);
}