mirror of
https://github.com/pomerium/pomerium.git
synced 2025-07-09 04:48:13 +02:00
* mui v5 wip * wip * wip * wip * use compressor for all controlplane endpoints * wip * wip * add deps * fix authenticate URL * fix test * fix test * fix build * maybe fix build * fix integration test * remove image asset test * add yarn.lock
24 lines
674 B
TypeScript
24 lines
674 B
TypeScript
import IDField from "./IDField";
|
|
import { DateTime } from "luxon";
|
|
import React, { FC } from "react";
|
|
|
|
const unixSecondTimestampFields = new Set(["exp", "iat", "nbf", "auth_time"]);
|
|
|
|
const idFields = new Set(["groups", "jti", "oid", "tid", "wids"]);
|
|
|
|
type ClaimValueProps = {
|
|
claimKey: string;
|
|
claimValue: unknown;
|
|
};
|
|
const ClaimValue: FC<ClaimValueProps> = ({ claimKey, claimValue }) => {
|
|
if (unixSecondTimestampFields.has(claimKey)) {
|
|
return <>{DateTime.fromMillis((claimValue as number) * 1000).toISO()}</>;
|
|
}
|
|
|
|
if (idFields.has(claimKey)) {
|
|
return <IDField value={`${claimValue}`} />;
|
|
}
|
|
|
|
return <>{`${claimValue}`}</>;
|
|
};
|
|
export default ClaimValue;
|