diff --git a/.changeset/moody-chefs-follow.md b/.changeset/moody-chefs-follow.md
new file mode 100644
index 0000000..d8f3fa9
--- /dev/null
+++ b/.changeset/moody-chefs-follow.md
@@ -0,0 +1,5 @@
+---
+"create-better-t-stack": patch
+---
+
+Add conditional rendering for private data based on API type in dashboard page
diff --git a/apps/cli/src/helpers/project-generation/template-manager.ts b/apps/cli/src/helpers/project-generation/template-manager.ts
index 2f4c512..c9f8c88 100644
--- a/apps/cli/src/helpers/project-generation/template-manager.ts
+++ b/apps/cli/src/helpers/project-generation/template-manager.ts
@@ -475,33 +475,16 @@ export async function setupAuthTemplate(
} else {
}
} else if (hasSvelteWeb) {
- if (context.api === "orpc") {
- const authWebSvelteSrc = path.join(
- PKG_ROOT,
- "templates/auth/web/svelte",
- );
- if (await fs.pathExists(authWebSvelteSrc)) {
- await processAndCopyFiles(
- "**/*",
- authWebSvelteSrc,
- webAppDir,
- context,
- );
- } else {
- }
+ const authWebSvelteSrc = path.join(PKG_ROOT, "templates/auth/web/svelte");
+ if (await fs.pathExists(authWebSvelteSrc)) {
+ await processAndCopyFiles("**/*", authWebSvelteSrc, webAppDir, context);
+ } else {
}
} else if (hasSolidWeb) {
- if (context.api === "orpc") {
- const authWebSolidSrc = path.join(PKG_ROOT, "templates/auth/web/solid");
- if (await fs.pathExists(authWebSolidSrc)) {
- await processAndCopyFiles(
- "**/*",
- authWebSolidSrc,
- webAppDir,
- context,
- );
- } else {
- }
+ const authWebSolidSrc = path.join(PKG_ROOT, "templates/auth/web/solid");
+ if (await fs.pathExists(authWebSolidSrc)) {
+ await processAndCopyFiles("**/*", authWebSolidSrc, webAppDir, context);
+ } else {
}
}
}
diff --git a/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue b/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue
deleted file mode 100644
index 16aba27..0000000
--- a/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
Dashboard
-
-
Welcome {{ session.data.user.name }}
-
-
Loading private data...
-
Error loading private data: {{ privateData.error.value?.message }}
-
Private Data: {{ privateData.data.value.message }}
-
-
diff --git a/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue.hbs b/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue.hbs
new file mode 100644
index 0000000..b2d3dfd
--- /dev/null
+++ b/apps/cli/templates/auth/web/nuxt/app/pages/dashboard.vue.hbs
@@ -0,0 +1,33 @@
+
+
+
+
+
Dashboard
+
+
Welcome \{{ session.data.user.name }}
+
+ {{#if (eq api "orpc")}}
+
Loading private data...
+
Error loading private data: \{{ privateData.error.value?.message }}
+
Private Data: \{{ privateData.data.value.message }}
+ {{/if}}
+
+
diff --git a/apps/cli/templates/auth/web/react/react-router/src/routes/dashboard.tsx.hbs b/apps/cli/templates/auth/web/react/react-router/src/routes/dashboard.tsx.hbs
index 80bbb8d..361bc7c 100644
--- a/apps/cli/templates/auth/web/react/react-router/src/routes/dashboard.tsx.hbs
+++ b/apps/cli/templates/auth/web/react/react-router/src/routes/dashboard.tsx.hbs
@@ -5,7 +5,9 @@ import { orpc } from "@/utils/orpc";
{{#if (eq api "trpc")}}
import { trpc } from "@/utils/trpc";
{{/if}}
+{{#if ( or (eq api "orpc") (eq api "trpc"))}}
import { useQuery } from "@tanstack/react-query";
+{{/if}}
import { useEffect } from "react";
import { useNavigate } from "react-router";
@@ -34,7 +36,9 @@ export default function Dashboard() {
Dashboard
Welcome {session?.user.name}
+ {{#if ( or (eq api "orpc") (eq api "trpc"))}}
privateData: {privateData.data?.message}
+ {{/if}}
);
}
diff --git a/apps/cli/templates/auth/web/react/tanstack-router/src/routes/dashboard.tsx.hbs b/apps/cli/templates/auth/web/react/tanstack-router/src/routes/dashboard.tsx.hbs
index 5f114f3..3ae44b6 100644
--- a/apps/cli/templates/auth/web/react/tanstack-router/src/routes/dashboard.tsx.hbs
+++ b/apps/cli/templates/auth/web/react/tanstack-router/src/routes/dashboard.tsx.hbs
@@ -5,7 +5,9 @@ import { orpc } from "@/utils/orpc";
{{#if (eq api "trpc")}}
import { trpc } from "@/utils/trpc";
{{/if}}
+{{#if ( or (eq api "orpc") (eq api "trpc"))}}
import { useQuery } from "@tanstack/react-query";
+{{/if}}
import { createFileRoute } from "@tanstack/react-router";
import { useEffect } from "react";
@@ -41,7 +43,9 @@ function RouteComponent() {
Dashboard
Welcome {session?.user.name}
+ {{#if ( or (eq api "orpc") (eq api "trpc"))}}
privateData: {privateData.data?.message}
+ {{/if}}
);
}
diff --git a/apps/cli/templates/auth/web/react/tanstack-start/src/routes/dashboard.tsx.hbs b/apps/cli/templates/auth/web/react/tanstack-start/src/routes/dashboard.tsx.hbs
index 32cf329..18e9585 100644
--- a/apps/cli/templates/auth/web/react/tanstack-start/src/routes/dashboard.tsx.hbs
+++ b/apps/cli/templates/auth/web/react/tanstack-start/src/routes/dashboard.tsx.hbs
@@ -1,11 +1,12 @@
import { authClient } from "@/lib/auth-client";
{{#if (eq api "trpc")}}
import { useTRPC } from "@/utils/trpc";
+import { useQuery } from "@tanstack/react-query";
{{/if}}
{{#if (eq api "orpc")}}
import { orpc } from "@/utils/orpc";
-{{/if}}
import { useQuery } from "@tanstack/react-query";
+{{/if}}
import { createFileRoute } from "@tanstack/react-router";
import { useEffect } from "react";
@@ -45,7 +46,9 @@ function RouteComponent() {
Dashboard
Welcome {session?.user.name}
+ {{#if ( or (eq api "orpc") (eq api "trpc"))}}
privateData: {privateData.data?.message}
+ {{/if}}
);
}
diff --git a/apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx b/apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx.hbs
similarity index 89%
rename from apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx
rename to apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx.hbs
index c4b888f..235d08e 100644
--- a/apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx
+++ b/apps/cli/templates/auth/web/solid/src/routes/dashboard.tsx.hbs
@@ -1,6 +1,8 @@
import { authClient } from "@/lib/auth-client";
+{{#if (eq api "orpc")}}
import { orpc } from "@/utils/orpc";
import { useQuery } from "@tanstack/solid-query";
+{{/if}}
import { createFileRoute } from "@tanstack/solid-router";
import { createEffect, Show } from "solid-js";
@@ -12,7 +14,9 @@ function RouteComponent() {
const session = authClient.useSession();
const navigate = Route.useNavigate();
+{{#if (eq api "orpc")}}
const privateData = useQuery(() => orpc.privateData.queryOptions());
+{{/if}}
createEffect(() => {
if (!session().data && !session().isPending) {
@@ -31,7 +35,9 @@ function RouteComponent() {
Dashboard
Welcome {session().data?.user.name}
+ {{#if (eq api "orpc")}}
privateData: {privateData.data?.message}
+ {{/if}}
);
diff --git a/apps/cli/templates/auth/web/svelte/src/components/UserMenu.svelte b/apps/cli/templates/auth/web/svelte/src/components/UserMenu.svelte
index 98e64bc..9f81671 100644
--- a/apps/cli/templates/auth/web/svelte/src/components/UserMenu.svelte
+++ b/apps/cli/templates/auth/web/svelte/src/components/UserMenu.svelte
@@ -1,7 +1,6 @@