create-rudder-app 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +100 -20
- package/dist/index.js.map +1 -1
- package/dist/templates/app/auth-controller.d.ts +2 -0
- package/dist/templates/app/auth-controller.d.ts.map +1 -0
- package/dist/templates/app/auth-controller.js +51 -0
- package/dist/templates/app/auth-controller.js.map +1 -0
- package/dist/templates/app/mcp-echo-server.d.ts +2 -0
- package/dist/templates/app/mcp-echo-server.d.ts.map +1 -0
- package/dist/templates/app/mcp-echo-server.js +13 -0
- package/dist/templates/app/mcp-echo-server.js.map +1 -0
- package/dist/templates/app/mcp-echo-tool.d.ts +2 -0
- package/dist/templates/app/mcp-echo-tool.d.ts.map +1 -0
- package/dist/templates/app/mcp-echo-tool.js +20 -0
- package/dist/templates/app/mcp-echo-tool.js.map +1 -0
- package/dist/templates/app/service-provider.d.ts +3 -0
- package/dist/templates/app/service-provider.d.ts.map +1 -0
- package/dist/templates/app/service-provider.js +27 -0
- package/dist/templates/app/service-provider.js.map +1 -0
- package/dist/templates/app/user-model.d.ts +2 -0
- package/dist/templates/app/user-model.d.ts.map +1 -0
- package/dist/templates/app/user-model.js +19 -0
- package/dist/templates/app/user-model.js.map +1 -0
- package/dist/templates/bootstrap/app.d.ts +3 -0
- package/dist/templates/bootstrap/app.d.ts.map +1 -0
- package/dist/templates/bootstrap/app.js +41 -0
- package/dist/templates/bootstrap/app.js.map +1 -0
- package/dist/templates/bootstrap/providers.d.ts +3 -0
- package/dist/templates/bootstrap/providers.d.ts.map +1 -0
- package/dist/templates/bootstrap/providers.js +27 -0
- package/dist/templates/bootstrap/providers.js.map +1 -0
- package/dist/templates/configs/ai.d.ts +2 -0
- package/dist/templates/configs/ai.d.ts.map +1 -0
- package/dist/templates/configs/ai.js +32 -0
- package/dist/templates/configs/ai.js.map +1 -0
- package/dist/templates/configs/app.d.ts +2 -0
- package/dist/templates/configs/app.d.ts.map +1 -0
- package/dist/templates/configs/app.js +12 -0
- package/dist/templates/configs/app.js.map +1 -0
- package/dist/templates/configs/auth.d.ts +3 -0
- package/dist/templates/configs/auth.d.ts.map +1 -0
- package/dist/templates/configs/auth.js +16 -0
- package/dist/templates/configs/auth.js.map +1 -0
- package/dist/templates/configs/cache.d.ts +2 -0
- package/dist/templates/configs/cache.d.ts.map +1 -0
- package/dist/templates/configs/cache.js +28 -0
- package/dist/templates/configs/cache.js.map +1 -0
- package/dist/templates/configs/cashier.d.ts +2 -0
- package/dist/templates/configs/cashier.d.ts.map +1 -0
- package/dist/templates/configs/cashier.js +22 -0
- package/dist/templates/configs/cashier.js.map +1 -0
- package/dist/templates/configs/crypt.d.ts +2 -0
- package/dist/templates/configs/crypt.d.ts.map +1 -0
- package/dist/templates/configs/crypt.js +16 -0
- package/dist/templates/configs/crypt.js.map +1 -0
- package/dist/templates/configs/database.d.ts +3 -0
- package/dist/templates/configs/database.d.ts.map +1 -0
- package/dist/templates/configs/database.js +28 -0
- package/dist/templates/configs/database.js.map +1 -0
- package/dist/templates/configs/hash.d.ts +2 -0
- package/dist/templates/configs/hash.d.ts.map +1 -0
- package/dist/templates/configs/hash.js +12 -0
- package/dist/templates/configs/hash.js.map +1 -0
- package/dist/templates/configs/horizon.d.ts +2 -0
- package/dist/templates/configs/horizon.d.ts.map +1 -0
- package/dist/templates/configs/horizon.js +30 -0
- package/dist/templates/configs/horizon.js.map +1 -0
- package/dist/templates/configs/index.d.ts +3 -0
- package/dist/templates/configs/index.d.ts.map +1 -0
- package/dist/templates/configs/index.js +96 -0
- package/dist/templates/configs/index.js.map +1 -0
- package/dist/templates/configs/localization.d.ts +2 -0
- package/dist/templates/configs/localization.d.ts.map +1 -0
- package/dist/templates/configs/localization.js +13 -0
- package/dist/templates/configs/localization.js.map +1 -0
- package/dist/templates/configs/log.d.ts +2 -0
- package/dist/templates/configs/log.d.ts.map +1 -0
- package/dist/templates/configs/log.js +40 -0
- package/dist/templates/configs/log.js.map +1 -0
- package/dist/templates/configs/mail.d.ts +2 -0
- package/dist/templates/configs/mail.d.ts.map +1 -0
- package/dist/templates/configs/mail.js +33 -0
- package/dist/templates/configs/mail.js.map +1 -0
- package/dist/templates/configs/passport.d.ts +2 -0
- package/dist/templates/configs/passport.d.ts.map +1 -0
- package/dist/templates/configs/passport.js +22 -0
- package/dist/templates/configs/passport.js.map +1 -0
- package/dist/templates/configs/pennant.d.ts +2 -0
- package/dist/templates/configs/pennant.d.ts.map +1 -0
- package/dist/templates/configs/pennant.js +16 -0
- package/dist/templates/configs/pennant.js.map +1 -0
- package/dist/templates/configs/pulse.d.ts +2 -0
- package/dist/templates/configs/pulse.d.ts.map +1 -0
- package/dist/templates/configs/pulse.js +21 -0
- package/dist/templates/configs/pulse.js.map +1 -0
- package/dist/templates/configs/queue.d.ts +2 -0
- package/dist/templates/configs/queue.d.ts.map +1 -0
- package/dist/templates/configs/queue.js +28 -0
- package/dist/templates/configs/queue.js.map +1 -0
- package/dist/templates/configs/sanctum.d.ts +2 -0
- package/dist/templates/configs/sanctum.d.ts.map +1 -0
- package/dist/templates/configs/sanctum.js +19 -0
- package/dist/templates/configs/sanctum.js.map +1 -0
- package/dist/templates/configs/server.d.ts +2 -0
- package/dist/templates/configs/server.d.ts.map +1 -0
- package/dist/templates/configs/server.js +15 -0
- package/dist/templates/configs/server.js.map +1 -0
- package/dist/templates/configs/session.d.ts +2 -0
- package/dist/templates/configs/session.d.ts.map +1 -0
- package/dist/templates/configs/session.js +26 -0
- package/dist/templates/configs/session.js.map +1 -0
- package/dist/templates/configs/socialite.d.ts +2 -0
- package/dist/templates/configs/socialite.d.ts.map +1 -0
- package/dist/templates/configs/socialite.js +27 -0
- package/dist/templates/configs/socialite.js.map +1 -0
- package/dist/templates/configs/storage.d.ts +2 -0
- package/dist/templates/configs/storage.d.ts.map +1 -0
- package/dist/templates/configs/storage.js +35 -0
- package/dist/templates/configs/storage.js.map +1 -0
- package/dist/templates/configs/sync.d.ts +3 -0
- package/dist/templates/configs/sync.d.ts.map +1 -0
- package/dist/templates/configs/sync.js +17 -0
- package/dist/templates/configs/sync.js.map +1 -0
- package/dist/templates/configs/telescope.d.ts +2 -0
- package/dist/templates/configs/telescope.d.ts.map +1 -0
- package/dist/templates/configs/telescope.js +25 -0
- package/dist/templates/configs/telescope.js.map +1 -0
- package/dist/templates/css/index.d.ts +3 -0
- package/dist/templates/css/index.d.ts.map +1 -0
- package/dist/templates/css/index.js +140 -0
- package/dist/templates/css/index.js.map +1 -0
- package/dist/templates/css/plain.d.ts +2 -0
- package/dist/templates/css/plain.d.ts.map +1 -0
- package/dist/templates/css/plain.js +373 -0
- package/dist/templates/css/plain.js.map +1 -0
- package/dist/templates/css/tailwind.d.ts +2 -0
- package/dist/templates/css/tailwind.d.ts.map +1 -0
- package/dist/templates/css/tailwind.js +176 -0
- package/dist/templates/css/tailwind.js.map +1 -0
- package/dist/templates/demos/bk-socket.d.ts +2 -0
- package/dist/templates/demos/bk-socket.d.ts.map +1 -0
- package/dist/templates/demos/bk-socket.js +95 -0
- package/dist/templates/demos/bk-socket.js.map +1 -0
- package/dist/templates/demos/contact.d.ts +3 -0
- package/dist/templates/demos/contact.d.ts.map +1 -0
- package/dist/templates/demos/contact.js +106 -0
- package/dist/templates/demos/contact.js.map +1 -0
- package/dist/templates/demos/index-view.d.ts +3 -0
- package/dist/templates/demos/index-view.d.ts.map +1 -0
- package/dist/templates/demos/index-view.js +67 -0
- package/dist/templates/demos/index-view.js.map +1 -0
- package/dist/templates/demos/live.d.ts +2 -0
- package/dist/templates/demos/live.d.ts.map +1 -0
- package/dist/templates/demos/live.js +97 -0
- package/dist/templates/demos/live.js.map +1 -0
- package/dist/templates/demos/registry.d.ts +13 -0
- package/dist/templates/demos/registry.d.ts.map +1 -0
- package/dist/templates/demos/registry.js +15 -0
- package/dist/templates/demos/registry.js.map +1 -0
- package/dist/templates/demos/ws.d.ts +2 -0
- package/dist/templates/demos/ws.d.ts.map +1 -0
- package/dist/templates/demos/ws.js +106 -0
- package/dist/templates/demos/ws.js.map +1 -0
- package/dist/templates/env.d.ts +7 -0
- package/dist/templates/env.d.ts.map +1 -0
- package/dist/templates/env.js +127 -0
- package/dist/templates/env.js.map +1 -0
- package/dist/templates/package-json.d.ts +3 -0
- package/dist/templates/package-json.d.ts.map +1 -0
- package/dist/templates/package-json.js +195 -0
- package/dist/templates/package-json.js.map +1 -0
- package/dist/templates/package-managers.d.ts +14 -0
- package/dist/templates/package-managers.d.ts.map +1 -0
- package/dist/templates/package-managers.js +49 -0
- package/dist/templates/package-managers.js.map +1 -0
- package/dist/templates/pages/ai-chat.d.ts +7 -0
- package/dist/templates/pages/ai-chat.d.ts.map +1 -0
- package/dist/templates/pages/ai-chat.js +285 -0
- package/dist/templates/pages/ai-chat.js.map +1 -0
- package/dist/templates/pages/demo.d.ts +4 -0
- package/dist/templates/pages/demo.d.ts.map +1 -0
- package/dist/templates/pages/demo.js +71 -0
- package/dist/templates/pages/demo.js.map +1 -0
- package/dist/templates/pages/error.d.ts +7 -0
- package/dist/templates/pages/error.d.ts.map +1 -0
- package/dist/templates/pages/error.js +148 -0
- package/dist/templates/pages/error.js.map +1 -0
- package/dist/templates/pages/index.d.ts +9 -0
- package/dist/templates/pages/index.d.ts.map +1 -0
- package/dist/templates/pages/index.js +311 -0
- package/dist/templates/pages/index.js.map +1 -0
- package/dist/templates/prisma/auth.d.ts +2 -0
- package/dist/templates/prisma/auth.d.ts.map +1 -0
- package/dist/templates/prisma/auth.js +22 -0
- package/dist/templates/prisma/auth.js.map +1 -0
- package/dist/templates/prisma/base.d.ts +3 -0
- package/dist/templates/prisma/base.d.ts.map +1 -0
- package/dist/templates/prisma/base.js +14 -0
- package/dist/templates/prisma/base.js.map +1 -0
- package/dist/templates/prisma/config.d.ts +3 -0
- package/dist/templates/prisma/config.d.ts.map +1 -0
- package/dist/templates/prisma/config.js +15 -0
- package/dist/templates/prisma/config.js.map +1 -0
- package/dist/templates/prisma/notification.d.ts +2 -0
- package/dist/templates/prisma/notification.d.ts.map +1 -0
- package/dist/templates/prisma/notification.js +16 -0
- package/dist/templates/prisma/notification.js.map +1 -0
- package/dist/templates/prisma/passport.d.ts +2 -0
- package/dist/templates/prisma/passport.d.ts.map +1 -0
- package/dist/templates/prisma/passport.js +69 -0
- package/dist/templates/prisma/passport.js.map +1 -0
- package/dist/templates/routes/api.d.ts +3 -0
- package/dist/templates/routes/api.d.ts.map +1 -0
- package/dist/templates/routes/api.js +118 -0
- package/dist/templates/routes/api.js.map +1 -0
- package/dist/templates/routes/console.d.ts +2 -0
- package/dist/templates/routes/console.d.ts.map +1 -0
- package/dist/templates/routes/console.js +22 -0
- package/dist/templates/routes/console.js.map +1 -0
- package/dist/templates/routes/web.d.ts +4 -0
- package/dist/templates/routes/web.d.ts.map +1 -0
- package/dist/templates/routes/web.js +108 -0
- package/dist/templates/routes/web.js.map +1 -0
- package/dist/templates/server.d.ts +2 -0
- package/dist/templates/server.d.ts.map +1 -0
- package/dist/templates/server.js +10 -0
- package/dist/templates/server.js.map +1 -0
- package/dist/templates/tsconfig.d.ts +3 -0
- package/dist/templates/tsconfig.d.ts.map +1 -0
- package/dist/templates/tsconfig.js +33 -0
- package/dist/templates/tsconfig.js.map +1 -0
- package/dist/templates/views/welcome.d.ts +6 -0
- package/dist/templates/views/welcome.d.ts.map +1 -0
- package/dist/templates/views/welcome.js +396 -0
- package/dist/templates/views/welcome.js.map +1 -0
- package/dist/templates/vite.d.ts +3 -0
- package/dist/templates/vite.d.ts.map +1 -0
- package/dist/templates/vite.js +61 -0
- package/dist/templates/vite.js.map +1 -0
- package/dist/templates.d.ts +28 -17
- package/dist/templates.d.ts.map +1 -1
- package/dist/templates.js +99 -3779
- package/dist/templates.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
export function welcomeView(ctx) {
|
|
2
|
+
switch (ctx.primary) {
|
|
3
|
+
case 'vue': return welcomeViewVue(ctx);
|
|
4
|
+
case 'solid': return welcomeViewSolid(ctx);
|
|
5
|
+
default: return welcomeViewReact(ctx);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
const WELCOME_FEATURES = `const DEFAULT_DOCS = 'https://github.com/rudderjs/rudder'
|
|
9
|
+
const DEFAULT_GITHUB = 'https://github.com/rudderjs/rudder'
|
|
10
|
+
|
|
11
|
+
const features: Feature[] = [
|
|
12
|
+
{
|
|
13
|
+
title: 'Controllers & Routing',
|
|
14
|
+
description: 'Explicit routes in routes/api.ts with middleware, params, named routes, and return types that just work.',
|
|
15
|
+
href: \`\${DEFAULT_DOCS}#routing\`,
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
title: 'Eloquent ORM',
|
|
19
|
+
description: 'Laravel-style models on Prisma or Drizzle. Query relationships, scopes, and eager loading without changing mental models.',
|
|
20
|
+
href: \`\${DEFAULT_DOCS}#orm\`,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
title: 'Controller Views',
|
|
24
|
+
description: "The page you're looking at — return view() from a controller, rendered through Vike SSR. Zero adapter, full SPA nav.",
|
|
25
|
+
href: \`\${DEFAULT_DOCS}#views\`,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
title: 'Rudder CLI',
|
|
29
|
+
description: 'Laravel-style make:* generators, schedule, db:seed, and custom commands. Run \\\`pnpm rudder\\\` for the full list.',
|
|
30
|
+
href: \`\${DEFAULT_DOCS}#cli\`,
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
title: 'Queues & Jobs',
|
|
34
|
+
description: 'Dispatch background jobs with sync, database, or Redis drivers. Monitor them with @rudderjs/horizon.',
|
|
35
|
+
href: \`\${DEFAULT_DOCS}#queue\`,
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
title: 'Auth, Guards, Policies',
|
|
39
|
+
description: 'Session-backed auth, password reset, gates, and RequireAuth / RequireGuest middleware — all through one provider.',
|
|
40
|
+
href: \`\${DEFAULT_DOCS}#auth\`,
|
|
41
|
+
},
|
|
42
|
+
]`;
|
|
43
|
+
export function welcomeViewReact(ctx) {
|
|
44
|
+
const cssImport = `import '@/index.css'\n\n`;
|
|
45
|
+
return `${cssImport}// URL this view is served at — MUST match the Route.get('/', ...) in routes/web.ts.
|
|
46
|
+
// The scanner reads this constant and writes it into the generated +route.ts,
|
|
47
|
+
// so Vike's client router can SPA-navigate here instead of doing full reloads.
|
|
48
|
+
export const route = '/'
|
|
49
|
+
|
|
50
|
+
export interface WelcomeProps {
|
|
51
|
+
appName: string
|
|
52
|
+
rudderVersion: string
|
|
53
|
+
nodeVersion: string
|
|
54
|
+
env: string
|
|
55
|
+
user: { name: string; email: string } | null
|
|
56
|
+
// null when the auth package isn't installed (Laravel's Route::has() idiom).
|
|
57
|
+
loginUrl: string | null
|
|
58
|
+
registerUrl: string | null
|
|
59
|
+
signOutUrl?: string
|
|
60
|
+
docsUrl?: string
|
|
61
|
+
githubUrl?: string
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
interface Feature {
|
|
65
|
+
title: string
|
|
66
|
+
description: string
|
|
67
|
+
href: string
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
${WELCOME_FEATURES}
|
|
71
|
+
|
|
72
|
+
export default function Welcome(props: WelcomeProps) {
|
|
73
|
+
const signOutUrl = props.signOutUrl ?? '/api/auth/sign-out'
|
|
74
|
+
const docsUrl = props.docsUrl ?? DEFAULT_DOCS
|
|
75
|
+
const githubUrl = props.githubUrl ?? DEFAULT_GITHUB
|
|
76
|
+
|
|
77
|
+
async function handleSignOut() {
|
|
78
|
+
await fetch(signOutUrl, {
|
|
79
|
+
method: 'POST',
|
|
80
|
+
headers: { 'Content-Type': 'application/json' },
|
|
81
|
+
body: '{}',
|
|
82
|
+
})
|
|
83
|
+
// Full reload so the server resolves a fresh pageContext (logged-out user).
|
|
84
|
+
window.location.href = '/'
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
return (
|
|
88
|
+
<div className="page">
|
|
89
|
+
<nav className="page-nav">
|
|
90
|
+
<div className="brand">
|
|
91
|
+
<span className="brand-dot" />
|
|
92
|
+
RudderJS
|
|
93
|
+
</div>
|
|
94
|
+
<div className="nav-right">
|
|
95
|
+
{props.loginUrl && (props.user ? (
|
|
96
|
+
<>
|
|
97
|
+
<span className="nav-badge">
|
|
98
|
+
Signed in as <strong>{props.user.name}</strong>
|
|
99
|
+
</span>
|
|
100
|
+
<button type="button" onClick={handleSignOut} className="nav-button">
|
|
101
|
+
Sign out
|
|
102
|
+
</button>
|
|
103
|
+
</>
|
|
104
|
+
) : (
|
|
105
|
+
<>
|
|
106
|
+
<a href={props.loginUrl} className="nav-link">Log in</a>
|
|
107
|
+
{props.registerUrl && (
|
|
108
|
+
<a href={props.registerUrl} className="nav-button">Register</a>
|
|
109
|
+
)}
|
|
110
|
+
</>
|
|
111
|
+
))}
|
|
112
|
+
</div>
|
|
113
|
+
</nav>
|
|
114
|
+
|
|
115
|
+
<section className="hero">
|
|
116
|
+
<h1 className="hero-title">{props.appName}</h1>
|
|
117
|
+
<p className="hero-lead">
|
|
118
|
+
Laravel's developer experience, Vike's performance, Node's ecosystem.
|
|
119
|
+
This page is served by a controller, rendered through{' '}
|
|
120
|
+
<code className="inline-code">view('welcome')</code>.
|
|
121
|
+
</p>
|
|
122
|
+
<div className="hero-meta">
|
|
123
|
+
<span>RudderJS v{props.rudderVersion}</span>
|
|
124
|
+
<span>•</span>
|
|
125
|
+
<span>Node {props.nodeVersion}</span>
|
|
126
|
+
<span>•</span>
|
|
127
|
+
<span>env={props.env}</span>
|
|
128
|
+
</div>
|
|
129
|
+
</section>
|
|
130
|
+
|
|
131
|
+
<section className="feature-section">
|
|
132
|
+
<div className="feature-grid">
|
|
133
|
+
{features.map(f => (
|
|
134
|
+
<a key={f.title} href={f.href} className="feature-card">
|
|
135
|
+
<h3 className="feature-title">{f.title}</h3>
|
|
136
|
+
<p className="feature-desc">{f.description}</p>
|
|
137
|
+
</a>
|
|
138
|
+
))}
|
|
139
|
+
</div>
|
|
140
|
+
</section>
|
|
141
|
+
|
|
142
|
+
<footer className="page-footer">
|
|
143
|
+
<div className="footer-inner">
|
|
144
|
+
<div>Built with RudderJS. Edit <code>app/Views/Welcome.tsx</code> to customize this page.</div>
|
|
145
|
+
<div className="footer-links">
|
|
146
|
+
<a href={docsUrl} className="footer-link">Docs</a>
|
|
147
|
+
<a href={githubUrl} className="footer-link">GitHub</a>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
</footer>
|
|
151
|
+
</div>
|
|
152
|
+
)
|
|
153
|
+
}
|
|
154
|
+
`;
|
|
155
|
+
}
|
|
156
|
+
export function welcomeViewVue(ctx) {
|
|
157
|
+
const cssImport = `import '@/index.css'\n`;
|
|
158
|
+
// Vue SFC quirk: top-level `export` statements must live in a regular
|
|
159
|
+
// <script> block, NOT <script setup> (the compiler rejects exports there).
|
|
160
|
+
// The scanner reads both blocks as plain text, so the route override is
|
|
161
|
+
// still picked up. Keep this dual-script structure whenever a Vue view
|
|
162
|
+
// needs `export const route = '/...'`.
|
|
163
|
+
return `<script lang="ts">
|
|
164
|
+
// URL this view is served at — see the React variant for rationale.
|
|
165
|
+
export const route = '/'
|
|
166
|
+
</script>
|
|
167
|
+
|
|
168
|
+
<script setup lang="ts">
|
|
169
|
+
${cssImport}
|
|
170
|
+
export interface WelcomeProps {
|
|
171
|
+
appName: string
|
|
172
|
+
rudderVersion: string
|
|
173
|
+
nodeVersion: string
|
|
174
|
+
env: string
|
|
175
|
+
user: { name: string; email: string } | null
|
|
176
|
+
// null when the auth package isn't installed (Laravel's Route::has() idiom).
|
|
177
|
+
loginUrl: string | null
|
|
178
|
+
registerUrl: string | null
|
|
179
|
+
signOutUrl?: string
|
|
180
|
+
docsUrl?: string
|
|
181
|
+
githubUrl?: string
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
const props = defineProps<WelcomeProps>()
|
|
185
|
+
|
|
186
|
+
interface Feature {
|
|
187
|
+
title: string
|
|
188
|
+
description: string
|
|
189
|
+
href: string
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
${WELCOME_FEATURES}
|
|
193
|
+
|
|
194
|
+
const signOutUrl = props.signOutUrl ?? '/api/auth/sign-out'
|
|
195
|
+
const docsUrl = props.docsUrl ?? DEFAULT_DOCS
|
|
196
|
+
const githubUrl = props.githubUrl ?? DEFAULT_GITHUB
|
|
197
|
+
|
|
198
|
+
async function handleSignOut() {
|
|
199
|
+
await fetch(signOutUrl, {
|
|
200
|
+
method: 'POST',
|
|
201
|
+
headers: { 'Content-Type': 'application/json' },
|
|
202
|
+
body: '{}',
|
|
203
|
+
})
|
|
204
|
+
// Full reload so the server resolves a fresh pageContext (logged-out user).
|
|
205
|
+
window.location.href = '/'
|
|
206
|
+
}
|
|
207
|
+
</script>
|
|
208
|
+
|
|
209
|
+
<template>
|
|
210
|
+
<div class="page">
|
|
211
|
+
<nav class="page-nav">
|
|
212
|
+
<div class="brand">
|
|
213
|
+
<span class="brand-dot"></span>
|
|
214
|
+
RudderJS
|
|
215
|
+
</div>
|
|
216
|
+
<div v-if="props.loginUrl" class="nav-right">
|
|
217
|
+
<template v-if="props.user">
|
|
218
|
+
<span class="nav-badge">
|
|
219
|
+
Signed in as <strong>{{ props.user.name }}</strong>
|
|
220
|
+
</span>
|
|
221
|
+
<button type="button" @click="handleSignOut" class="nav-button">
|
|
222
|
+
Sign out
|
|
223
|
+
</button>
|
|
224
|
+
</template>
|
|
225
|
+
<template v-else>
|
|
226
|
+
<a :href="props.loginUrl" class="nav-link">Log in</a>
|
|
227
|
+
<a v-if="props.registerUrl" :href="props.registerUrl" class="nav-button">Register</a>
|
|
228
|
+
</template>
|
|
229
|
+
</div>
|
|
230
|
+
</nav>
|
|
231
|
+
|
|
232
|
+
<section class="hero">
|
|
233
|
+
<h1 class="hero-title">{{ props.appName }}</h1>
|
|
234
|
+
<p class="hero-lead">
|
|
235
|
+
Laravel's developer experience, Vike's performance, Node's ecosystem.
|
|
236
|
+
This page is served by a controller, rendered through
|
|
237
|
+
<code class="inline-code">view('welcome')</code>.
|
|
238
|
+
</p>
|
|
239
|
+
<div class="hero-meta">
|
|
240
|
+
<span>RudderJS v{{ props.rudderVersion }}</span>
|
|
241
|
+
<span>•</span>
|
|
242
|
+
<span>Node {{ props.nodeVersion }}</span>
|
|
243
|
+
<span>•</span>
|
|
244
|
+
<span>env={{ props.env }}</span>
|
|
245
|
+
</div>
|
|
246
|
+
</section>
|
|
247
|
+
|
|
248
|
+
<section class="feature-section">
|
|
249
|
+
<div class="feature-grid">
|
|
250
|
+
<a v-for="f in features" :key="f.title" :href="f.href" class="feature-card">
|
|
251
|
+
<h3 class="feature-title">{{ f.title }}</h3>
|
|
252
|
+
<p class="feature-desc">{{ f.description }}</p>
|
|
253
|
+
</a>
|
|
254
|
+
</div>
|
|
255
|
+
</section>
|
|
256
|
+
|
|
257
|
+
<footer class="page-footer">
|
|
258
|
+
<div class="footer-inner">
|
|
259
|
+
<div>Built with RudderJS. Edit <code>app/Views/Welcome.vue</code> to customize this page.</div>
|
|
260
|
+
<div class="footer-links">
|
|
261
|
+
<a :href="docsUrl" class="footer-link">Docs</a>
|
|
262
|
+
<a :href="githubUrl" class="footer-link">GitHub</a>
|
|
263
|
+
</div>
|
|
264
|
+
</div>
|
|
265
|
+
</footer>
|
|
266
|
+
</div>
|
|
267
|
+
</template>
|
|
268
|
+
`;
|
|
269
|
+
}
|
|
270
|
+
export function welcomeViewSolid(ctx) {
|
|
271
|
+
const cssImport = `import '@/index.css'\n`;
|
|
272
|
+
return `${cssImport}import { For, Show } from 'solid-js'
|
|
273
|
+
|
|
274
|
+
// URL this view is served at — see the React variant for rationale.
|
|
275
|
+
export const route = '/'
|
|
276
|
+
|
|
277
|
+
export interface WelcomeProps {
|
|
278
|
+
appName: string
|
|
279
|
+
rudderVersion: string
|
|
280
|
+
nodeVersion: string
|
|
281
|
+
env: string
|
|
282
|
+
user: { name: string; email: string } | null
|
|
283
|
+
// null when the auth package isn't installed (Laravel's Route::has() idiom).
|
|
284
|
+
loginUrl: string | null
|
|
285
|
+
registerUrl: string | null
|
|
286
|
+
signOutUrl?: string
|
|
287
|
+
docsUrl?: string
|
|
288
|
+
githubUrl?: string
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
interface Feature {
|
|
292
|
+
title: string
|
|
293
|
+
description: string
|
|
294
|
+
href: string
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
${WELCOME_FEATURES}
|
|
298
|
+
|
|
299
|
+
export default function Welcome(props: WelcomeProps) {
|
|
300
|
+
const signOutUrl = () => props.signOutUrl ?? '/api/auth/sign-out'
|
|
301
|
+
const docsUrl = () => props.docsUrl ?? DEFAULT_DOCS
|
|
302
|
+
const githubUrl = () => props.githubUrl ?? DEFAULT_GITHUB
|
|
303
|
+
|
|
304
|
+
async function handleSignOut() {
|
|
305
|
+
await fetch(signOutUrl(), {
|
|
306
|
+
method: 'POST',
|
|
307
|
+
headers: { 'Content-Type': 'application/json' },
|
|
308
|
+
body: '{}',
|
|
309
|
+
})
|
|
310
|
+
// Full reload so the server resolves a fresh pageContext (logged-out user).
|
|
311
|
+
window.location.href = '/'
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
return (
|
|
315
|
+
<div class="page">
|
|
316
|
+
<nav class="page-nav">
|
|
317
|
+
<div class="brand">
|
|
318
|
+
<span class="brand-dot" />
|
|
319
|
+
RudderJS
|
|
320
|
+
</div>
|
|
321
|
+
<Show when={props.loginUrl}>
|
|
322
|
+
{(loginUrl) => (
|
|
323
|
+
<div class="nav-right">
|
|
324
|
+
<Show
|
|
325
|
+
when={props.user}
|
|
326
|
+
fallback={
|
|
327
|
+
<>
|
|
328
|
+
<a href={loginUrl()} class="nav-link">Log in</a>
|
|
329
|
+
<Show when={props.registerUrl}>
|
|
330
|
+
{(registerUrl) => (
|
|
331
|
+
<a href={registerUrl()} class="nav-button">Register</a>
|
|
332
|
+
)}
|
|
333
|
+
</Show>
|
|
334
|
+
</>
|
|
335
|
+
}
|
|
336
|
+
>
|
|
337
|
+
{(user) => (
|
|
338
|
+
<>
|
|
339
|
+
<span class="nav-badge">
|
|
340
|
+
Signed in as <strong>{user().name}</strong>
|
|
341
|
+
</span>
|
|
342
|
+
<button type="button" onClick={handleSignOut} class="nav-button">
|
|
343
|
+
Sign out
|
|
344
|
+
</button>
|
|
345
|
+
</>
|
|
346
|
+
)}
|
|
347
|
+
</Show>
|
|
348
|
+
</div>
|
|
349
|
+
)}
|
|
350
|
+
</Show>
|
|
351
|
+
</nav>
|
|
352
|
+
|
|
353
|
+
<section class="hero">
|
|
354
|
+
<h1 class="hero-title">{props.appName}</h1>
|
|
355
|
+
<p class="hero-lead">
|
|
356
|
+
Laravel's developer experience, Vike's performance, Node's ecosystem.
|
|
357
|
+
This page is served by a controller, rendered through{' '}
|
|
358
|
+
<code class="inline-code">view('welcome')</code>.
|
|
359
|
+
</p>
|
|
360
|
+
<div class="hero-meta">
|
|
361
|
+
<span>RudderJS v{props.rudderVersion}</span>
|
|
362
|
+
<span>•</span>
|
|
363
|
+
<span>Node {props.nodeVersion}</span>
|
|
364
|
+
<span>•</span>
|
|
365
|
+
<span>env={props.env}</span>
|
|
366
|
+
</div>
|
|
367
|
+
</section>
|
|
368
|
+
|
|
369
|
+
<section class="feature-section">
|
|
370
|
+
<div class="feature-grid">
|
|
371
|
+
<For each={features}>
|
|
372
|
+
{(f) => (
|
|
373
|
+
<a href={f.href} class="feature-card">
|
|
374
|
+
<h3 class="feature-title">{f.title}</h3>
|
|
375
|
+
<p class="feature-desc">{f.description}</p>
|
|
376
|
+
</a>
|
|
377
|
+
)}
|
|
378
|
+
</For>
|
|
379
|
+
</div>
|
|
380
|
+
</section>
|
|
381
|
+
|
|
382
|
+
<footer class="page-footer">
|
|
383
|
+
<div class="footer-inner">
|
|
384
|
+
<div>Built with RudderJS. Edit <code>app/Views/Welcome.tsx</code> to customize this page.</div>
|
|
385
|
+
<div class="footer-links">
|
|
386
|
+
<a href={docsUrl()} class="footer-link">Docs</a>
|
|
387
|
+
<a href={githubUrl()} class="footer-link">GitHub</a>
|
|
388
|
+
</div>
|
|
389
|
+
</div>
|
|
390
|
+
</footer>
|
|
391
|
+
</div>
|
|
392
|
+
)
|
|
393
|
+
}
|
|
394
|
+
`;
|
|
395
|
+
}
|
|
396
|
+
//# sourceMappingURL=welcome.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"welcome.js","sourceRoot":"","sources":["../../../src/templates/views/welcome.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,GAAoB;IAC9C,QAAQ,GAAG,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,KAAK,CAAC,CAAG,OAAO,cAAc,CAAC,GAAG,CAAC,CAAA;QACxC,KAAK,OAAO,CAAC,CAAC,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,CAAC,CAAM,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCvB,CAAA;AAEF,MAAM,UAAU,gBAAgB,CAAC,GAAoB;IACnD,MAAM,SAAS,GAAG,0BAA0B,CAAA;IAC5C,OAAO,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;EAyBnB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoFjB,CAAA;AACD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAoB;IACjD,MAAM,SAAS,GAAG,wBAAwB,CAAA;IAC1C,sEAAsE;IACtE,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,uCAAuC;IACvC,OAAO;;;;;;EAMP,SAAS;;;;;;;;;;;;;;;;;;;;;;;EAuBT,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4EjB,CAAA;AACD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAoB;IACnD,MAAM,SAAS,GAAG,wBAAwB,CAAA;IAC1C,OAAO,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;EAyBnB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiGjB,CAAA;AACD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/templates/vite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAyDvD"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export function viteConfig(ctx) {
|
|
2
|
+
const { frameworks, primary, tailwind } = ctx;
|
|
3
|
+
const hasReact = frameworks.includes('react');
|
|
4
|
+
const hasVue = frameworks.includes('vue');
|
|
5
|
+
const hasSolid = frameworks.includes('solid');
|
|
6
|
+
const hasReactSolidConflict = hasReact && hasSolid;
|
|
7
|
+
const imports = [
|
|
8
|
+
`import { defineConfig } from 'vite'`,
|
|
9
|
+
`import rudderjs from '@rudderjs/vite'`,
|
|
10
|
+
];
|
|
11
|
+
if (tailwind)
|
|
12
|
+
imports.push(`import tailwindcss from '@tailwindcss/vite'`);
|
|
13
|
+
if (hasReact)
|
|
14
|
+
imports.push(`import react from '@vitejs/plugin-react'`);
|
|
15
|
+
if (hasVue)
|
|
16
|
+
imports.push(`import vue from '@vitejs/plugin-vue'`);
|
|
17
|
+
if (hasSolid)
|
|
18
|
+
imports.push(`import solid from 'vike-solid/vite'`);
|
|
19
|
+
const plugins = ['rudderjs()'];
|
|
20
|
+
if (tailwind)
|
|
21
|
+
plugins.push('tailwindcss()');
|
|
22
|
+
if (hasReact) {
|
|
23
|
+
if (hasReactSolidConflict) {
|
|
24
|
+
if (primary === 'react') {
|
|
25
|
+
plugins.push(`react({ exclude: ['**/pages/solid-demo/**'] })`);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
plugins.push(`react({ include: ['**/pages/react-demo/**'] })`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
plugins.push('react()');
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (hasVue) {
|
|
36
|
+
plugins.push('vue()');
|
|
37
|
+
}
|
|
38
|
+
if (hasSolid) {
|
|
39
|
+
if (hasReactSolidConflict) {
|
|
40
|
+
if (primary === 'solid') {
|
|
41
|
+
plugins.push(`solid({ exclude: ['**/pages/react-demo/**'] })`);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
plugins.push(`solid({ include: ['**/pages/solid-demo/**'] })`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
plugins.push('solid()');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const pluginsStr = plugins.map(p => ` ${p},`).join('\n');
|
|
52
|
+
return `${imports.join('\n')}
|
|
53
|
+
|
|
54
|
+
export default defineConfig({
|
|
55
|
+
plugins: [
|
|
56
|
+
${pluginsStr}
|
|
57
|
+
],
|
|
58
|
+
})
|
|
59
|
+
`;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=vite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vite.js","sourceRoot":"","sources":["../../src/templates/vite.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,GAAoB;IAC7C,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;IAC7C,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAK,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,qBAAqB,GAAG,QAAQ,IAAI,QAAQ,CAAA;IAElD,MAAM,OAAO,GAAa;QACxB,qCAAqC;QACrC,uCAAuC;KACxC,CAAA;IACD,IAAI,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;IACzE,IAAI,QAAQ;QAAG,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;IACvE,IAAI,MAAM;QAAK,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;IACnE,IAAI,QAAQ;QAAG,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAElE,MAAM,OAAO,GAAa,CAAC,YAAY,CAAC,CAAA;IACxC,IAAI,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAE3C,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE3D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;;;EAI5B,UAAU;;;CAGX,CAAA;AACD,CAAC"}
|
package/dist/templates.d.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
import { detectPackageManager, pmExec, pmInstall, pmRun, type PackageManager } from './templates/package-managers.js';
|
|
2
|
+
export { detectPackageManager, pmExec, pmInstall, pmRun };
|
|
3
|
+
export type { PackageManager };
|
|
2
4
|
export interface TemplateContext {
|
|
3
5
|
name: string;
|
|
4
6
|
db: 'sqlite' | 'postgresql' | 'mysql';
|
|
5
7
|
orm: 'prisma' | 'drizzle' | false;
|
|
6
8
|
authSecret: string;
|
|
9
|
+
/** Random base64-encoded 32-byte key for @rudderjs/crypt's APP_KEY. */
|
|
10
|
+
appKey: string;
|
|
7
11
|
frameworks: ('react' | 'vue' | 'solid')[];
|
|
8
12
|
primary: 'react' | 'vue' | 'solid';
|
|
9
13
|
tailwind: boolean;
|
|
@@ -11,33 +15,40 @@ export interface TemplateContext {
|
|
|
11
15
|
pm: PackageManager;
|
|
12
16
|
packages: {
|
|
13
17
|
auth: boolean;
|
|
14
|
-
|
|
18
|
+
sanctum: boolean;
|
|
19
|
+
passport: boolean;
|
|
20
|
+
socialite: boolean;
|
|
15
21
|
queue: boolean;
|
|
16
22
|
storage: boolean;
|
|
23
|
+
scheduler: boolean;
|
|
24
|
+
image: boolean;
|
|
17
25
|
mail: boolean;
|
|
18
26
|
notifications: boolean;
|
|
19
|
-
scheduler: boolean;
|
|
20
27
|
broadcast: boolean;
|
|
21
28
|
sync: boolean;
|
|
22
29
|
ai: boolean;
|
|
23
30
|
mcp: boolean;
|
|
24
|
-
|
|
31
|
+
boost: boolean;
|
|
25
32
|
localization: boolean;
|
|
33
|
+
cashierPaddle: boolean;
|
|
34
|
+
pennant: boolean;
|
|
26
35
|
telescope: boolean;
|
|
27
|
-
|
|
28
|
-
|
|
36
|
+
pulse: boolean;
|
|
37
|
+
horizon: boolean;
|
|
38
|
+
crypt: boolean;
|
|
39
|
+
http: boolean;
|
|
40
|
+
process: boolean;
|
|
41
|
+
concurrency: boolean;
|
|
29
42
|
};
|
|
43
|
+
/** Demo IDs to scaffold (e.g. 'contact', 'ws', 'live'). See templates/demos/registry.ts. */
|
|
44
|
+
demos: string[];
|
|
30
45
|
}
|
|
31
|
-
/** Detect which package manager invoked the installer.
|
|
32
|
-
* 1. Check npm_config_user_agent (set by pnpm/npm/yarn/bun create commands)
|
|
33
|
-
* 2. Fall back to checking which binaries are available on PATH
|
|
34
|
-
*/
|
|
35
|
-
export declare function detectPackageManager(): PackageManager;
|
|
36
|
-
/** `<pm> exec <bin>` equivalent per package manager. */
|
|
37
|
-
export declare function pmExec(pm: PackageManager, bin: string): string;
|
|
38
|
-
/** `<pm> run <script>` equivalent (yarn/bun allow omitting "run"). */
|
|
39
|
-
export declare function pmRun(pm: PackageManager, script: string): string;
|
|
40
|
-
/** `<pm> install` command. */
|
|
41
|
-
export declare function pmInstall(pm: PackageManager): string;
|
|
42
46
|
export declare function getTemplates(ctx: TemplateContext): Record<string, string>;
|
|
47
|
+
/**
|
|
48
|
+
* Demos are React-primary only for v1 — vue/solid variants aren't written yet.
|
|
49
|
+
* `name` is a demo ID from `templates/demos/registry.ts` (e.g. 'contact', 'ws', 'live').
|
|
50
|
+
* Returns true when the demo was selected AND its package gates are satisfied.
|
|
51
|
+
*/
|
|
52
|
+
export declare function shouldScaffoldDemo(ctx: TemplateContext, name: string): boolean;
|
|
53
|
+
export declare function shouldScaffoldAnyDemo(ctx: TemplateContext): boolean;
|
|
43
54
|
//# sourceMappingURL=templates.d.ts.map
|
package/dist/templates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAW,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAA;AA0D9H,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AACzD,YAAY,EAAE,cAAc,EAAE,CAAA;AAE9B,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAQ,MAAM,CAAA;IAClB,EAAE,EAAU,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAA;IAC7C,GAAG,EAAS,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAA;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,uEAAuE;IACvE,MAAM,EAAM,MAAM,CAAA;IAClB,UAAU,EAAE,CAAC,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC,EAAE,CAAA;IACzC,OAAO,EAAK,OAAO,GAAG,KAAK,GAAG,OAAO,CAAA;IACrC,QAAQ,EAAI,OAAO,CAAA;IACnB,MAAM,EAAM,OAAO,CAAA;IACnB,EAAE,EAAU,cAAc,CAAA;IAC1B,QAAQ,EAAE;QACR,IAAI,EAAW,OAAO,CAAA;QACtB,OAAO,EAAQ,OAAO,CAAA;QACtB,QAAQ,EAAO,OAAO,CAAA;QACtB,SAAS,EAAM,OAAO,CAAA;QACtB,KAAK,EAAU,OAAO,CAAA;QACtB,OAAO,EAAQ,OAAO,CAAA;QACtB,SAAS,EAAM,OAAO,CAAA;QACtB,KAAK,EAAU,OAAO,CAAA;QACtB,IAAI,EAAW,OAAO,CAAA;QACtB,aAAa,EAAE,OAAO,CAAA;QACtB,SAAS,EAAM,OAAO,CAAA;QACtB,IAAI,EAAW,OAAO,CAAA;QACtB,EAAE,EAAa,OAAO,CAAA;QACtB,GAAG,EAAY,OAAO,CAAA;QACtB,KAAK,EAAU,OAAO,CAAA;QACtB,YAAY,EAAG,OAAO,CAAA;QACtB,aAAa,EAAE,OAAO,CAAA;QACtB,OAAO,EAAQ,OAAO,CAAA;QACtB,SAAS,EAAM,OAAO,CAAA;QACtB,KAAK,EAAU,OAAO,CAAA;QACtB,OAAO,EAAQ,OAAO,CAAA;QACtB,KAAK,EAAU,OAAO,CAAA;QACtB,IAAI,EAAW,OAAO,CAAA;QACtB,OAAO,EAAQ,OAAO,CAAA;QACtB,WAAW,EAAI,OAAO,CAAA;KACvB,CAAA;IACD,4FAA4F;IAC5F,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAoHzE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAO9E;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAGnE"}
|