diff --git a/src/app/configuration/resources/[resourceId]/account/page.tsx b/src/app/configuration/resources/[resourceId]/account/page.tsx new file mode 100644 index 00000000..03df0d89 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/account/page.tsx @@ -0,0 +1,18 @@ +import { Separator } from "@/components/ui/separator" +import { AccountForm } from "@/components/account-form" + +export default function SettingsAccountPage() { + return ( +
+
+

Account

+

+ Update your account settings. Set your preferred language and + timezone. +

+
+ + +
+ ) +} diff --git a/src/app/configuration/resources/[resourceId]/appearance/page.tsx b/src/app/configuration/resources/[resourceId]/appearance/page.tsx new file mode 100644 index 00000000..ca038aa2 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/appearance/page.tsx @@ -0,0 +1,18 @@ +import { Separator } from "@/components/ui/separator" +import { AppearanceForm } from "@/components/appearance-form" + +export default function SettingsAppearancePage() { + return ( +
+
+

Appearance

+

+ Customize the appearance of the app. Automatically switch between day + and night themes. +

+
+ + +
+ ) +} diff --git a/src/app/configuration/resources/[resourceId]/display/page.tsx b/src/app/configuration/resources/[resourceId]/display/page.tsx new file mode 100644 index 00000000..f934f6e6 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/display/page.tsx @@ -0,0 +1,17 @@ +import { Separator } from "@/components/ui/separator" +import { DisplayForm } from "@/components/display-form" + +export default function SettingsDisplayPage() { + return ( +
+
+

Display

+

+ Turn items on or off to control what's displayed in the app. +

+
+ + +
+ ) +} diff --git a/src/app/configuration/resources/[resourceId]/layout.tsx b/src/app/configuration/resources/[resourceId]/layout.tsx new file mode 100644 index 00000000..3a443db7 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/layout.tsx @@ -0,0 +1,76 @@ +import { Metadata } from "next" +import Image from "next/image" + +import { Separator } from "@/components/ui/separator" +import { SidebarNav } from "@/components/sidebar-nav" + +export const metadata: Metadata = { + title: "Forms", + description: "Advanced form example using react-hook-form and Zod.", +} + +const sidebarNavItems = [ + { + title: "Profile", + href: "/configuration/resources/{resourceId}/", + }, + { + title: "Account", + href: "/configuration/resources/{resourceId}/account", + }, + { + title: "Appearance", + href: "/configuration/resources/{resourceId}/appearance", + }, + { + title: "Notifications", + href: "/configuration/resources/{resourceId}/notifications", + }, + { + title: "Display", + href: "/configuration/resources/{resourceId}/display", + }, +] + +interface SettingsLayoutProps { + children: React.ReactNode, + params: { resourceId: string } +} + +export default function SettingsLayout({ children, params }: SettingsLayoutProps) { + return ( + <> +
+ Forms + Forms +
+
+
+

Settings

+

+ Manage your account settings and set e-mail preferences. +

+
+ +
+ +
{children}
+
+
+ + ) +} diff --git a/src/app/configuration/resources/[resourceId]/notifications/page.tsx b/src/app/configuration/resources/[resourceId]/notifications/page.tsx new file mode 100644 index 00000000..7c5c5ec0 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/notifications/page.tsx @@ -0,0 +1,17 @@ +import { Separator } from "@/components/ui/separator" +import { NotificationsForm } from "@/components/notifications-form" + +export default function SettingsNotificationsPage() { + return ( +
+
+

Notifications

+

+ Configure how you receive notifications. +

+
+ + +
+ ) +} diff --git a/src/app/configuration/resources/[resourceId]/page.tsx b/src/app/configuration/resources/[resourceId]/page.tsx new file mode 100644 index 00000000..66744634 --- /dev/null +++ b/src/app/configuration/resources/[resourceId]/page.tsx @@ -0,0 +1,17 @@ +import { Separator } from "@/components/ui/separator" +import { ProfileForm } from "@app/components/profile-form" + +export default function SettingsProfilePage() { + return ( +
+
+

Profile

+

+ This is how others will see you on the site. +

+
+ + +
+ ) +} diff --git a/src/app/configuration/resources/page.tsx b/src/app/configuration/resources/page.tsx new file mode 100644 index 00000000..f720649d --- /dev/null +++ b/src/app/configuration/resources/page.tsx @@ -0,0 +1,7 @@ +export default async function Page() { + return ( + <> +

This is where the table goes...

+ + ); +}