2021-03-06 14:42:56 +01:00
|
|
|
|
|
|
|
import { memo } from "react";
|
|
|
|
import { Template } from "./Template";
|
|
|
|
import type { KcProps } from "./KcProps";
|
|
|
|
import { assert } from "../tools/assert";
|
2021-06-23 08:16:51 +02:00
|
|
|
import type { KcContextBase } from "../getKcContext/KcContextBase";
|
2021-03-07 15:37:37 +01:00
|
|
|
import { useKcMessage } from "../i18n/useKcMessage";
|
2021-03-06 14:42:56 +01:00
|
|
|
|
2021-06-23 08:16:51 +02:00
|
|
|
export const Info = memo(({ kcContext, ...props }: { kcContext: KcContextBase.Info; } & KcProps) => {
|
2021-03-06 14:42:56 +01:00
|
|
|
|
2021-03-07 15:37:37 +01:00
|
|
|
const { msg } = useKcMessage();
|
2021-03-06 14:42:56 +01:00
|
|
|
|
2021-03-08 00:09:52 +01:00
|
|
|
assert(kcContext.message !== undefined);
|
2021-03-06 14:42:56 +01:00
|
|
|
|
|
|
|
const {
|
|
|
|
messageHeader,
|
|
|
|
message,
|
|
|
|
requiredActions,
|
|
|
|
skipLink,
|
|
|
|
pageRedirectUri,
|
|
|
|
actionUri,
|
|
|
|
client
|
|
|
|
} = kcContext;
|
|
|
|
|
|
|
|
return (
|
|
|
|
<Template
|
2021-03-08 00:09:52 +01:00
|
|
|
{...{ kcContext, ...props }}
|
2021-03-06 14:42:56 +01:00
|
|
|
displayMessage={false}
|
|
|
|
headerNode={
|
|
|
|
messageHeader !== undefined ?
|
|
|
|
<>{messageHeader}</>
|
|
|
|
:
|
|
|
|
<>{message.summary}</>
|
|
|
|
}
|
|
|
|
formNode={
|
|
|
|
<div id="kc-info-message">
|
|
|
|
<p className="instruction">{message.summary}
|
|
|
|
|
|
|
|
{
|
|
|
|
requiredActions !== undefined &&
|
|
|
|
<b>
|
|
|
|
{
|
|
|
|
requiredActions
|
2021-03-07 15:37:37 +01:00
|
|
|
.map(requiredAction => msg(`requiredAction.${requiredAction}` as const))
|
2021-03-06 14:42:56 +01:00
|
|
|
.join(",")
|
|
|
|
}
|
|
|
|
|
|
|
|
</b>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</p>
|
|
|
|
{
|
|
|
|
!skipLink &&
|
|
|
|
pageRedirectUri !== undefined ?
|
2021-04-08 12:54:29 +02:00
|
|
|
<p><a href={pageRedirectUri}>{(msg("backToApplication"))}</a></p>
|
2021-03-06 14:42:56 +01:00
|
|
|
:
|
|
|
|
actionUri !== undefined ?
|
2021-04-08 12:54:29 +02:00
|
|
|
<p><a href={actionUri}>{msg("proceedWithAction")}</a></p>
|
2021-03-06 14:42:56 +01:00
|
|
|
:
|
|
|
|
client.baseUrl !== undefined &&
|
2021-04-08 12:54:29 +02:00
|
|
|
<p><a href={client.baseUrl}>{msg("backToApplication")}</a></p>
|
2021-03-06 14:42:56 +01:00
|
|
|
}
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
/>
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
|
|
|
|