diff --git a/stories/account/KcApp.tsx b/stories/account/KcApp.tsx
new file mode 100644
index 00000000..6c9fc4ab
--- /dev/null
+++ b/stories/account/KcApp.tsx
@@ -0,0 +1,27 @@
+import React, { lazy, Suspense } from "react";
+import Fallback from "../../dist/account";
+import type { KcContext } from "./kcContext";
+import { useI18n } from "./i18n";
+
+const DefaultTemplate = lazy(() => import("../../dist/account/Template"));
+
+export default function KcApp(props: { kcContext: KcContext }) {
+ const { kcContext } = props;
+
+ const i18n = useI18n({ kcContext });
+
+ if (i18n === null) {
+ return null;
+ }
+
+ return (
+
+ {(() => {
+ switch (kcContext.pageId) {
+ default:
+ return ;
+ }
+ })()}
+
+ );
+}
diff --git a/stories/account/createPageStory.tsx b/stories/account/createPageStory.tsx
new file mode 100644
index 00000000..d768e803
--- /dev/null
+++ b/stories/account/createPageStory.tsx
@@ -0,0 +1,19 @@
+import React from "react";
+import { getKcContext, type KcContext } from "./kcContext";
+import KcApp from "./KcApp";
+import type { DeepPartial } from "../../dist/tools/DeepPartial";
+
+export function createPageStory(params: { pageId: PageId }) {
+ const { pageId } = params;
+
+ function PageStory(params: { kcContext?: DeepPartial> }) {
+ const { kcContext } = getKcContext({
+ mockPageId: pageId,
+ storyPartialKcContext: params.kcContext
+ });
+
+ return ;
+ }
+
+ return { PageStory };
+}
diff --git a/stories/account/i18n.ts b/stories/account/i18n.ts
new file mode 100644
index 00000000..83ad89de
--- /dev/null
+++ b/stories/account/i18n.ts
@@ -0,0 +1,5 @@
+import { createUseI18n } from "../../dist/account";
+
+export const { useI18n } = createUseI18n({});
+
+export type I18n = NonNullable>;
diff --git a/stories/account/kcContext.ts b/stories/account/kcContext.ts
new file mode 100644
index 00000000..392dcd08
--- /dev/null
+++ b/stories/account/kcContext.ts
@@ -0,0 +1,7 @@
+import { createGetKcContext } from "../../dist/account";
+
+export const { getKcContext } = createGetKcContext();
+
+const { kcContext } = getKcContext();
+
+export type KcContext = NonNullable;
diff --git a/stories/account/pages/Account.stories.tsx b/stories/account/pages/Account.stories.tsx
new file mode 100644
index 00000000..64f1d8ca
--- /dev/null
+++ b/stories/account/pages/Account.stories.tsx
@@ -0,0 +1,24 @@
+import React from "react";
+import type { ComponentMeta } from "@storybook/react";
+import { createPageStory } from "../createPageStory";
+
+const pageId = "account.ftl";
+
+const { PageStory } = createPageStory({ pageId });
+
+const meta: ComponentMeta = {
+ title: `account/${pageId}`,
+ component: PageStory,
+ parameters: {
+ viewMode: "story",
+ previewTabs: {
+ "storybook/docs/panel": {
+ hidden: true
+ }
+ }
+ }
+};
+
+export default meta;
+
+export const Default = () => ;
diff --git a/stories/login/pages/Error.stories.tsx b/stories/login/pages/Error.stories.tsx
index 1303196a..e5af2d2a 100644
--- a/stories/login/pages/Error.stories.tsx
+++ b/stories/login/pages/Error.stories.tsx
@@ -7,13 +7,13 @@ const pageId = "error.ftl";
const { PageStory } = createPageStory({ pageId });
const meta: ComponentMeta = {
- "title": `login/${pageId}`,
- "component": PageStory,
- "parameters": {
- "viewMode": "story",
- "previewTabs": {
+ title: `login/${pageId}`,
+ component: PageStory,
+ parameters: {
+ viewMode: "story",
+ previewTabs: {
"storybook/docs/panel": {
- "hidden": true
+ hidden: true
}
}
}
@@ -23,4 +23,10 @@ export default meta;
export const Default = () => ;
-export const WithAnotherMessage = () => ;
+export const WithAnotherMessage = () => (
+
+);
diff --git a/stories/login/pages/Login.stories.tsx b/stories/login/pages/Login.stories.tsx
index 4c892a60..9f3d55b6 100644
--- a/stories/login/pages/Login.stories.tsx
+++ b/stories/login/pages/Login.stories.tsx
@@ -7,11 +7,11 @@ const pageId = "login.ftl";
const { PageStory } = createPageStory({ pageId });
const meta: ComponentMeta = {
- "title": `login/${pageId}`,
- "component": PageStory,
- "parameters": {
- "viewMode": "story",
- "previewTabs": {
+ title: `login/${pageId}`,
+ component: PageStory,
+ parameters: {
+ viewMode: "story",
+ previewTabs: {
"storybook/docs/panel": {
"hidden": true
}