keycloak-theme-cloud/src/keycloak-theme/login/createPageStory.tsx

25 lines
613 B
TypeScript
Raw Normal View History

2023-04-17 00:15:41 +02:00
import { getKcContext, type KcContext } from "./kcContext";
import KcApp from "./KcApp";
import type { DeepPartial } from "keycloakify/tools/DeepPartial";
export function createPageStory<PageId extends KcContext["pageId"]>(params: {
pageId: PageId;
}) {
const { pageId } = params;
function PageStory(params: { kcContext?: DeepPartial<Extract<KcContext, { pageId: PageId }>>; }) {
const { kcContext } = getKcContext({
mockPageId: pageId,
storyParams: params.kcContext
});
return <KcApp kcContext={kcContext} />;
}
return { PageStory };
}