diff --git a/packages/create/src/create-app.ts b/packages/create/src/create-app.ts index eaa93e0f..8d978c9e 100644 --- a/packages/create/src/create-app.ts +++ b/packages/create/src/create-app.ts @@ -17,14 +17,22 @@ import { runSpecialSteps } from './special-steps/index.js' import type { Environment, FileBundleHandler, Options } from './types.js' -function isDemoRoutePath(path?: string) { +function isDemoFilePath(path?: string) { if (!path) return false const normalized = path.replace(/\\/g, '/') return ( normalized.includes('/routes/demo/') || normalized.includes('/routes/demo.') || normalized.includes('/routes/example/') || - normalized.includes('/routes/example.') + normalized.includes('/routes/example.') || + normalized.includes('/lib/demo-') || + normalized.includes('/lib/demo.') || + normalized.includes('/hooks/demo-') || + normalized.includes('/hooks/demo.') || + normalized.includes('/data/demo-') || + normalized.includes('/data/demo.') || + normalized.includes('/components/demo-') || + normalized.includes('/components/demo.') ) } @@ -38,20 +46,25 @@ function stripExamplesFromOptions(options: Options): Options { .map((addOn) => { const filteredRoutes = (addOn.routes || []).filter( (route) => - !isDemoRoutePath(route.path) && + !isDemoFilePath(route.path) && !(route.url && route.url.startsWith('/demo')), ) + + const filteredIntegrations = (addOn.integrations || []).filter( + (integration) => !isDemoFilePath(integration.path) + ) return { ...addOn, routes: filteredRoutes, + integrations: filteredIntegrations, getFiles: async () => { const files = await addOn.getFiles() - return files.filter((file) => !isDemoRoutePath(file)) + return files.filter((file) => !isDemoFilePath(file)) }, getDeletedFiles: async () => { const deletedFiles = await addOn.getDeletedFiles() - return deletedFiles.filter((file) => !isDemoRoutePath(file)) + return deletedFiles.filter((file) => !isDemoFilePath(file)) }, } }) diff --git a/packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx b/packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs similarity index 89% rename from packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx rename to packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs index 6f07c17b..2fd3dca1 100644 --- a/packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx +++ b/packages/create/src/frameworks/react/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs @@ -1,5 +1,7 @@ import { authClient } from "#/lib/auth-client"; +<%_ if (routes.some(r => r.url === '/demo/better-auth')) { _%> import { Link } from "@tanstack/react-router"; +<%_ } _%> export default function BetterAuthHeader() { const { data: session, isPending } = authClient.useSession(); @@ -34,6 +36,7 @@ export default function BetterAuthHeader() { ); } +<%_ if (routes.some(r => r.url === '/demo/better-auth')) { _%> return ( ); +<%_ } else { _%> + return null; +<%_ } _%> } diff --git a/packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx b/packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs similarity index 92% rename from packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx rename to packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs index a9aee45a..c560fcc6 100644 --- a/packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx +++ b/packages/create/src/frameworks/solid/add-ons/better-auth/assets/src/integrations/better-auth/header-user.tsx.ejs @@ -1,5 +1,7 @@ import { Show } from "solid-js"; +<%_ if (routes.some(r => r.url === '/demo/better-auth')) { _%> import { Link } from "@tanstack/solid-router"; +<%_ } _%> import { authClient } from "../../lib/auth-client"; export default function BetterAuthHeader() { @@ -14,6 +16,7 @@ export default function BetterAuthHeader() { > r.url === '/demo/better-auth')) { _%> fallback={ } +<%_ } _%> > {(user) => (