2023-04-20 02:52:49 +02:00
|
|
|
import React from "react";
|
2024-06-05 22:48:13 +02:00
|
|
|
import type { KcContext } from "./KcContext";
|
2023-04-20 02:52:49 +02:00
|
|
|
import KcApp from "./KcApp";
|
|
|
|
import type { DeepPartial } from "../../dist/tools/DeepPartial";
|
2024-06-06 07:28:34 +02:00
|
|
|
import { createGetKcContextMock } from "../../dist/account/KcContext";
|
2024-06-05 22:48:13 +02:00
|
|
|
import type { KcContextExtraProperties, KcContextExtraPropertiesPerPage } from "./KcContext";
|
2024-06-05 21:13:58 +02:00
|
|
|
|
|
|
|
const kcContextExtraProperties: KcContextExtraProperties = {};
|
|
|
|
const kcContextExtraPropertiesPerPage: KcContextExtraPropertiesPerPage = {};
|
|
|
|
|
|
|
|
export const { getKcContextMock } = createGetKcContextMock({
|
|
|
|
kcContextExtraProperties,
|
|
|
|
kcContextExtraPropertiesPerPage
|
|
|
|
});
|
2023-04-20 02:52:49 +02:00
|
|
|
|
|
|
|
export function createPageStory<PageId extends KcContext["pageId"]>(params: { pageId: PageId }) {
|
|
|
|
const { pageId } = params;
|
|
|
|
|
2024-06-03 18:28:34 +02:00
|
|
|
function PageStory(props: { kcContext?: DeepPartial<Extract<KcContext, { pageId: PageId }>> }) {
|
|
|
|
const { kcContext: overrides } = props;
|
|
|
|
|
|
|
|
const kcContextMock = getKcContextMock({
|
|
|
|
pageId,
|
|
|
|
overrides
|
2023-04-20 02:52:49 +02:00
|
|
|
});
|
|
|
|
|
2024-06-05 06:10:11 +02:00
|
|
|
return (
|
|
|
|
<React.StrictMode>
|
|
|
|
<KcApp kcContext={kcContextMock} />
|
|
|
|
</React.StrictMode>
|
|
|
|
);
|
2023-04-20 02:52:49 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
return { PageStory };
|
|
|
|
}
|