create-prisma 0.3.2 → 0.4.0-pr.32.60.1
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/README.md +86 -117
- package/dist/cli.mjs +1 -1
- package/dist/{create-DOr8R2_6.mjs → create-Dm_HiTCj.mjs} +221 -120
- package/dist/index.d.mts +6 -0
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
- package/templates/create/astro/src/pages/index.astro.hbs +39 -49
- package/templates/create/elysia/README.md.hbs +32 -0
- package/templates/create/elysia/deno.json.hbs +5 -0
- package/templates/create/elysia/package.json.hbs +21 -0
- package/templates/create/elysia/prisma/schema.prisma.hbs +25 -0
- package/templates/create/elysia/prisma/seed.ts.hbs +42 -0
- package/templates/create/elysia/prisma.config.ts.hbs +15 -0
- package/templates/create/elysia/src/index.ts.hbs +43 -0
- package/templates/create/elysia/src/lib/prisma.ts.hbs +56 -0
- package/templates/create/elysia/tsconfig.json +14 -0
- package/templates/create/hono/README.md.hbs +3 -2
- package/templates/create/hono/package.json.hbs +3 -4
- package/templates/create/hono/prisma/schema.prisma.hbs +4 -0
- package/templates/create/hono/prisma/seed.ts.hbs +5 -1
- package/templates/create/hono/prisma.config.ts.hbs +15 -0
- package/templates/create/hono/src/index.ts.hbs +8 -2
- package/templates/create/hono/src/lib/prisma.ts.hbs +6 -3
- package/templates/create/nest/.yarnrc.yml.hbs +3 -0
- package/templates/create/nest/README.md.hbs +32 -0
- package/templates/create/nest/deno.json.hbs +5 -0
- package/templates/create/nest/package.json.hbs +24 -0
- package/templates/create/nest/prisma/schema.prisma.hbs +25 -0
- package/templates/create/nest/prisma/seed.ts.hbs +44 -0
- package/templates/create/nest/prisma.config.ts.hbs +15 -0
- package/templates/create/nest/src/app.controller.ts.hbs +11 -0
- package/templates/create/nest/src/app.module.ts.hbs +20 -0
- package/templates/create/nest/src/lib/prisma.ts.hbs +58 -0
- package/templates/create/nest/src/main.ts.hbs +27 -0
- package/templates/create/nest/src/prisma.service.ts.hbs +10 -0
- package/templates/create/nest/src/users.controller.ts.hbs +15 -0
- package/templates/create/nest/src/users.service.ts.hbs +19 -0
- package/templates/create/nest/tsconfig.json +16 -0
- package/templates/create/next/src/app/globals.css +38 -46
- package/templates/create/nuxt/app/pages/index.vue.hbs +45 -55
- package/templates/create/svelte/src/routes/+page.svelte.hbs +78 -99
- package/templates/create/tanstack-start/prisma/schema.prisma.hbs +0 -1
- package/templates/create/tanstack-start/src/routes/index.tsx.hbs +28 -30
- package/templates/create/tanstack-start/src/styles.css +80 -121
- package/templates/create/turborepo/apps/api/package.json.hbs +0 -2
- package/templates/create/turborepo/apps/api/src/index.ts.hbs +7 -1
- package/templates/create/hono/prisma.config.ts +0 -13
|
@@ -60,53 +60,48 @@
|
|
|
60
60
|
<style>
|
|
61
61
|
:global(body) {
|
|
62
62
|
margin: 0;
|
|
63
|
-
font-family:
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
sans-serif;
|
|
67
|
-
background: #f7f8fb;
|
|
68
|
-
color: #0f172a;
|
|
63
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
|
64
|
+
background: #fff;
|
|
65
|
+
color: #111;
|
|
69
66
|
}
|
|
70
67
|
|
|
71
68
|
.shell {
|
|
72
|
-
max-width:
|
|
69
|
+
max-width: 40rem;
|
|
73
70
|
margin: 0 auto;
|
|
74
|
-
padding:
|
|
71
|
+
padding: 3rem 1.5rem;
|
|
75
72
|
}
|
|
76
73
|
|
|
77
74
|
.hero {
|
|
78
|
-
margin-bottom:
|
|
75
|
+
margin-bottom: 1.5rem;
|
|
79
76
|
}
|
|
80
77
|
|
|
81
78
|
.eyebrow {
|
|
82
|
-
margin: 0 0 0.
|
|
83
|
-
color: #
|
|
84
|
-
font-size: 0.
|
|
85
|
-
font-weight:
|
|
86
|
-
letter-spacing: 0.
|
|
79
|
+
margin: 0 0 0.5rem;
|
|
80
|
+
color: #666;
|
|
81
|
+
font-size: 0.75rem;
|
|
82
|
+
font-weight: 600;
|
|
83
|
+
letter-spacing: 0.06em;
|
|
87
84
|
text-transform: uppercase;
|
|
88
85
|
}
|
|
89
86
|
|
|
90
87
|
h1 {
|
|
91
88
|
margin: 0;
|
|
92
|
-
|
|
93
|
-
font-
|
|
94
|
-
line-height:
|
|
89
|
+
font-size: 1.25rem;
|
|
90
|
+
font-weight: 600;
|
|
91
|
+
line-height: 1.4;
|
|
95
92
|
}
|
|
96
93
|
|
|
97
94
|
.lede {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
95
|
+
margin: 0.5rem 0 0;
|
|
96
|
+
color: #666;
|
|
97
|
+
font-size: 0.875rem;
|
|
98
|
+
line-height: 1.6;
|
|
102
99
|
}
|
|
103
100
|
|
|
104
101
|
.panel {
|
|
105
|
-
|
|
106
|
-
border:
|
|
107
|
-
|
|
108
|
-
background: #ffffff;
|
|
109
|
-
box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06);
|
|
102
|
+
border: 1px solid #e5e5e5;
|
|
103
|
+
border-radius: 0.5rem;
|
|
104
|
+
padding: 1rem;
|
|
110
105
|
}
|
|
111
106
|
|
|
112
107
|
.panel-header {
|
|
@@ -114,22 +109,25 @@
|
|
|
114
109
|
align-items: center;
|
|
115
110
|
justify-content: space-between;
|
|
116
111
|
gap: 1rem;
|
|
117
|
-
margin-bottom:
|
|
112
|
+
margin-bottom: 0.75rem;
|
|
118
113
|
}
|
|
119
114
|
|
|
120
115
|
h2 {
|
|
121
116
|
margin: 0;
|
|
122
|
-
font-size:
|
|
117
|
+
font-size: 0.875rem;
|
|
118
|
+
font-weight: 600;
|
|
123
119
|
}
|
|
124
120
|
|
|
125
121
|
.panel-header span,
|
|
126
122
|
.empty,
|
|
127
123
|
time {
|
|
128
|
-
color: #
|
|
124
|
+
color: #888;
|
|
125
|
+
font-size: 0.8rem;
|
|
129
126
|
}
|
|
130
127
|
|
|
131
128
|
.panel p {
|
|
132
|
-
color: #
|
|
129
|
+
color: #666;
|
|
130
|
+
font-size: 0.8rem;
|
|
133
131
|
}
|
|
134
132
|
|
|
135
133
|
.users {
|
|
@@ -137,7 +135,7 @@
|
|
|
137
135
|
margin: 0;
|
|
138
136
|
padding: 0;
|
|
139
137
|
display: grid;
|
|
140
|
-
gap: 0.
|
|
138
|
+
gap: 0.5rem;
|
|
141
139
|
}
|
|
142
140
|
|
|
143
141
|
.users li {
|
|
@@ -145,37 +143,29 @@
|
|
|
145
143
|
align-items: center;
|
|
146
144
|
justify-content: space-between;
|
|
147
145
|
gap: 1rem;
|
|
148
|
-
padding:
|
|
149
|
-
border
|
|
150
|
-
|
|
151
|
-
border: 1px solid #dbe2ea;
|
|
146
|
+
padding: 0.625rem 0.75rem;
|
|
147
|
+
border: 1px solid #eee;
|
|
148
|
+
border-radius: 0.375rem;
|
|
152
149
|
}
|
|
153
150
|
|
|
154
151
|
.users p {
|
|
155
|
-
margin: 0.
|
|
152
|
+
margin: 0.125rem 0 0;
|
|
156
153
|
}
|
|
157
154
|
|
|
158
155
|
time {
|
|
159
|
-
font-size: 0.
|
|
156
|
+
font-size: 0.75rem;
|
|
160
157
|
white-space: nowrap;
|
|
161
158
|
}
|
|
162
159
|
|
|
163
160
|
code {
|
|
164
|
-
padding: 0.
|
|
165
|
-
border-radius: 0.
|
|
166
|
-
background: #
|
|
167
|
-
font-family:
|
|
168
|
-
|
|
169
|
-
Consolas,
|
|
170
|
-
monospace;
|
|
171
|
-
font-size: 0.95em;
|
|
161
|
+
padding: 0.125rem 0.25rem;
|
|
162
|
+
border-radius: 0.25rem;
|
|
163
|
+
background: #f5f5f5;
|
|
164
|
+
font-family: SFMono-Regular, Consolas, monospace;
|
|
165
|
+
font-size: 0.875em;
|
|
172
166
|
}
|
|
173
167
|
|
|
174
168
|
@media (max-width: 640px) {
|
|
175
|
-
.shell {
|
|
176
|
-
padding-top: 3rem;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
169
|
.users li,
|
|
180
170
|
.panel-header {
|
|
181
171
|
flex-direction: column;
|
|
@@ -230,53 +220,48 @@
|
|
|
230
220
|
<style>
|
|
231
221
|
:global(body) {
|
|
232
222
|
margin: 0;
|
|
233
|
-
font-family:
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
sans-serif;
|
|
237
|
-
background: #f7f8fb;
|
|
238
|
-
color: #0f172a;
|
|
223
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
|
224
|
+
background: #fff;
|
|
225
|
+
color: #111;
|
|
239
226
|
}
|
|
240
227
|
|
|
241
228
|
.shell {
|
|
242
|
-
max-width:
|
|
229
|
+
max-width: 40rem;
|
|
243
230
|
margin: 0 auto;
|
|
244
|
-
padding:
|
|
231
|
+
padding: 3rem 1.5rem;
|
|
245
232
|
}
|
|
246
233
|
|
|
247
234
|
.hero {
|
|
248
|
-
margin-bottom:
|
|
235
|
+
margin-bottom: 1.5rem;
|
|
249
236
|
}
|
|
250
237
|
|
|
251
238
|
.eyebrow {
|
|
252
|
-
margin: 0 0 0.
|
|
253
|
-
color: #
|
|
254
|
-
font-size: 0.
|
|
255
|
-
font-weight:
|
|
256
|
-
letter-spacing: 0.
|
|
239
|
+
margin: 0 0 0.5rem;
|
|
240
|
+
color: #666;
|
|
241
|
+
font-size: 0.75rem;
|
|
242
|
+
font-weight: 600;
|
|
243
|
+
letter-spacing: 0.06em;
|
|
257
244
|
text-transform: uppercase;
|
|
258
245
|
}
|
|
259
246
|
|
|
260
247
|
h1 {
|
|
261
248
|
margin: 0;
|
|
262
|
-
|
|
263
|
-
font-
|
|
264
|
-
line-height:
|
|
249
|
+
font-size: 1.25rem;
|
|
250
|
+
font-weight: 600;
|
|
251
|
+
line-height: 1.4;
|
|
265
252
|
}
|
|
266
253
|
|
|
267
254
|
.lede {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
255
|
+
margin: 0.5rem 0 0;
|
|
256
|
+
color: #666;
|
|
257
|
+
font-size: 0.875rem;
|
|
258
|
+
line-height: 1.6;
|
|
272
259
|
}
|
|
273
260
|
|
|
274
261
|
.panel {
|
|
275
|
-
|
|
276
|
-
border:
|
|
277
|
-
|
|
278
|
-
background: #ffffff;
|
|
279
|
-
box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06);
|
|
262
|
+
border: 1px solid #e5e5e5;
|
|
263
|
+
border-radius: 0.5rem;
|
|
264
|
+
padding: 1rem;
|
|
280
265
|
}
|
|
281
266
|
|
|
282
267
|
.panel-header {
|
|
@@ -284,21 +269,23 @@
|
|
|
284
269
|
align-items: center;
|
|
285
270
|
justify-content: space-between;
|
|
286
271
|
gap: 1rem;
|
|
287
|
-
margin-bottom:
|
|
272
|
+
margin-bottom: 0.75rem;
|
|
288
273
|
}
|
|
289
274
|
|
|
290
275
|
h2 {
|
|
291
276
|
margin: 0;
|
|
292
|
-
font-size:
|
|
277
|
+
font-size: 0.875rem;
|
|
278
|
+
font-weight: 600;
|
|
293
279
|
}
|
|
294
280
|
|
|
295
|
-
.panel-header span
|
|
296
|
-
|
|
297
|
-
|
|
281
|
+
.panel-header span {
|
|
282
|
+
color: #888;
|
|
283
|
+
font-size: 0.8rem;
|
|
298
284
|
}
|
|
299
285
|
|
|
300
286
|
.panel p {
|
|
301
|
-
color: #
|
|
287
|
+
color: #666;
|
|
288
|
+
font-size: 0.8rem;
|
|
302
289
|
}
|
|
303
290
|
|
|
304
291
|
.users {
|
|
@@ -306,7 +293,7 @@
|
|
|
306
293
|
margin: 0;
|
|
307
294
|
padding: 0;
|
|
308
295
|
display: grid;
|
|
309
|
-
gap: 0.
|
|
296
|
+
gap: 0.5rem;
|
|
310
297
|
}
|
|
311
298
|
|
|
312
299
|
.users li {
|
|
@@ -314,32 +301,24 @@
|
|
|
314
301
|
align-items: center;
|
|
315
302
|
justify-content: space-between;
|
|
316
303
|
gap: 1rem;
|
|
317
|
-
padding:
|
|
318
|
-
border
|
|
319
|
-
|
|
320
|
-
border: 1px solid #dbe2ea;
|
|
304
|
+
padding: 0.625rem 0.75rem;
|
|
305
|
+
border: 1px solid #eee;
|
|
306
|
+
border-radius: 0.375rem;
|
|
321
307
|
}
|
|
322
308
|
|
|
323
309
|
.users p {
|
|
324
|
-
margin: 0.
|
|
310
|
+
margin: 0.125rem 0 0;
|
|
325
311
|
}
|
|
326
312
|
|
|
327
313
|
code {
|
|
328
|
-
padding: 0.
|
|
329
|
-
border-radius: 0.
|
|
330
|
-
background: #
|
|
331
|
-
font-family:
|
|
332
|
-
|
|
333
|
-
Consolas,
|
|
334
|
-
monospace;
|
|
335
|
-
font-size: 0.95em;
|
|
314
|
+
padding: 0.125rem 0.25rem;
|
|
315
|
+
border-radius: 0.25rem;
|
|
316
|
+
background: #f5f5f5;
|
|
317
|
+
font-family: SFMono-Regular, Consolas, monospace;
|
|
318
|
+
font-size: 0.875em;
|
|
336
319
|
}
|
|
337
320
|
|
|
338
321
|
@media (max-width: 640px) {
|
|
339
|
-
.shell {
|
|
340
|
-
padding-top: 3rem;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
322
|
.users li,
|
|
344
323
|
.panel-header {
|
|
345
324
|
flex-direction: column;
|
|
@@ -50,28 +50,20 @@ function Home() {
|
|
|
50
50
|
{{/if}}
|
|
51
51
|
|
|
52
52
|
return (
|
|
53
|
-
<main className="
|
|
54
|
-
<
|
|
55
|
-
<p className="eyebrow">TanStack Start</p>
|
|
53
|
+
<main className="shell">
|
|
54
|
+
<div className="hero">
|
|
55
|
+
<p className="eyebrow">TanStack Start + Prisma 7</p>
|
|
56
56
|
{{#if (eq schemaPreset "basic")}}
|
|
57
|
-
<
|
|
57
|
+
<h1>Users from your database, loaded through a server function.</h1>
|
|
58
58
|
<p className="lede">
|
|
59
59
|
This route uses TanStack Start's server function API and the Prisma client in{" "}
|
|
60
60
|
<code>src/lib/prisma.server.ts</code>.
|
|
61
61
|
</p>
|
|
62
|
-
|
|
63
|
-
<h2>Your TanStack Start app is ready.</h2>
|
|
64
|
-
<p className="lede">
|
|
65
|
-
Edit <code>prisma/schema.prisma</code>, run <code>db:migrate</code>, then query your
|
|
66
|
-
database from server functions or route loaders.
|
|
67
|
-
</p>
|
|
68
|
-
{{/if}}
|
|
69
|
-
</section>
|
|
62
|
+
</div>
|
|
70
63
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
<h3>Seeded users</h3>
|
|
64
|
+
<section className="panel">
|
|
65
|
+
<div className="panelHeader">
|
|
66
|
+
<h2>Seeded users</h2>
|
|
75
67
|
<span>{users?.length ?? 0} total</span>
|
|
76
68
|
</div>
|
|
77
69
|
|
|
@@ -83,9 +75,9 @@ function Home() {
|
|
|
83
75
|
) : users.length === 0 ? (
|
|
84
76
|
<p className="empty">No users yet. Run <code>db:seed</code> after your first migration.</p>
|
|
85
77
|
) : (
|
|
86
|
-
<ul className="
|
|
78
|
+
<ul className="users">
|
|
87
79
|
{users.map((user) => (
|
|
88
|
-
<li
|
|
80
|
+
<li key={user.id}>
|
|
89
81
|
<div>
|
|
90
82
|
<strong>{user.name ?? "Unnamed user"}</strong>
|
|
91
83
|
<p>{user.email}</p>
|
|
@@ -99,26 +91,33 @@ function Home() {
|
|
|
99
91
|
)}
|
|
100
92
|
</section>
|
|
101
93
|
{{else}}
|
|
102
|
-
|
|
103
|
-
<
|
|
104
|
-
<
|
|
94
|
+
<h1>Your TanStack Start app is ready.</h1>
|
|
95
|
+
<p className="lede">
|
|
96
|
+
Edit <code>prisma/schema.prisma</code>, run <code>db:migrate</code>, then query your
|
|
97
|
+
database from server functions or route loaders.
|
|
98
|
+
</p>
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
<section className="panel">
|
|
102
|
+
<div className="panelHeader">
|
|
103
|
+
<h2>What's included</h2>
|
|
105
104
|
<span>Starter kit</span>
|
|
106
105
|
</div>
|
|
107
106
|
|
|
108
|
-
<ul className="
|
|
109
|
-
<li
|
|
107
|
+
<ul className="users">
|
|
108
|
+
<li>
|
|
110
109
|
<div>
|
|
111
110
|
<strong>File-based routing</strong>
|
|
112
111
|
<p>Add new routes in <code>src/routes</code>.</p>
|
|
113
112
|
</div>
|
|
114
113
|
</li>
|
|
115
|
-
<li
|
|
114
|
+
<li>
|
|
116
115
|
<div>
|
|
117
116
|
<strong>Prisma client</strong>
|
|
118
117
|
<p>Use the shared instance from <code>src/lib/prisma.server.ts</code>.</p>
|
|
119
118
|
</div>
|
|
120
119
|
</li>
|
|
121
|
-
<li
|
|
120
|
+
<li>
|
|
122
121
|
<div>
|
|
123
122
|
<strong>Seed script</strong>
|
|
124
123
|
<p>Run <code>db:seed</code> after your first migration.</p>
|
|
@@ -128,13 +127,12 @@ function Home() {
|
|
|
128
127
|
</section>
|
|
129
128
|
{{/if}}
|
|
130
129
|
|
|
131
|
-
<section className="
|
|
132
|
-
<div className="
|
|
133
|
-
<
|
|
134
|
-
<span>Keep building</span>
|
|
130
|
+
<section className="panel">
|
|
131
|
+
<div className="panelHeader">
|
|
132
|
+
<h2>Next steps</h2>
|
|
135
133
|
</div>
|
|
136
134
|
|
|
137
|
-
<ul className="
|
|
135
|
+
<ul className="steps">
|
|
138
136
|
<li>Run <code>db:generate</code> after schema changes.</li>
|
|
139
137
|
<li>Use TanStack Start server functions for server-only logic.</li>
|
|
140
138
|
<li>Preview production output with <code>preview</code>.</li>
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
:root {
|
|
2
2
|
color-scheme: light;
|
|
3
|
-
font-family: "IBM Plex Sans", "Segoe UI", sans-serif;
|
|
4
|
-
line-height: 1.5;
|
|
5
|
-
font-weight: 400;
|
|
6
|
-
background:
|
|
7
|
-
radial-gradient(circle at top left, rgba(88, 180, 141, 0.18), transparent 28rem),
|
|
8
|
-
linear-gradient(180deg, #f6fbf8 0%, #eef5f1 100%);
|
|
9
|
-
color: #153127;
|
|
10
3
|
}
|
|
11
4
|
|
|
12
5
|
* {
|
|
@@ -15,172 +8,138 @@
|
|
|
15
8
|
|
|
16
9
|
body {
|
|
17
10
|
margin: 0;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
a {
|
|
22
|
-
color: inherit;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
code {
|
|
26
|
-
font-family: "IBM Plex Mono", "SFMono-Regular", monospace;
|
|
27
|
-
font-size: 0.92em;
|
|
11
|
+
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
|
|
12
|
+
background: #fff;
|
|
13
|
+
color: #111;
|
|
28
14
|
}
|
|
29
15
|
|
|
30
16
|
.shell {
|
|
17
|
+
max-width: 40rem;
|
|
31
18
|
margin: 0 auto;
|
|
32
|
-
|
|
33
|
-
padding: 2rem 1.25rem 3rem;
|
|
19
|
+
padding: 3rem 1.5rem;
|
|
34
20
|
}
|
|
35
21
|
|
|
36
|
-
.
|
|
37
|
-
display: flex;
|
|
38
|
-
flex-wrap: wrap;
|
|
39
|
-
align-items: end;
|
|
40
|
-
justify-content: space-between;
|
|
41
|
-
gap: 1rem;
|
|
22
|
+
.hero {
|
|
42
23
|
margin-bottom: 1.5rem;
|
|
43
24
|
}
|
|
44
25
|
|
|
45
|
-
.topbar h1,
|
|
46
|
-
.hero h2,
|
|
47
|
-
.sectionHeader h3 {
|
|
48
|
-
margin: 0;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
26
|
.eyebrow {
|
|
52
|
-
margin: 0 0 0.
|
|
53
|
-
color: #
|
|
54
|
-
font-size: 0.
|
|
55
|
-
font-weight:
|
|
56
|
-
letter-spacing: 0.
|
|
27
|
+
margin: 0 0 0.5rem;
|
|
28
|
+
color: #666;
|
|
29
|
+
font-size: 0.75rem;
|
|
30
|
+
font-weight: 600;
|
|
31
|
+
letter-spacing: 0.06em;
|
|
57
32
|
text-transform: uppercase;
|
|
58
33
|
}
|
|
59
34
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
.navLink {
|
|
66
|
-
border: 1px solid rgba(21, 49, 39, 0.12);
|
|
67
|
-
border-radius: 999px;
|
|
68
|
-
padding: 0.55rem 0.95rem;
|
|
69
|
-
background: rgba(255, 255, 255, 0.72);
|
|
70
|
-
text-decoration: none;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.content {
|
|
74
|
-
display: grid;
|
|
75
|
-
gap: 1rem;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.card {
|
|
79
|
-
border: 1px solid rgba(21, 49, 39, 0.1);
|
|
80
|
-
border-radius: 1.5rem;
|
|
81
|
-
padding: 1.25rem;
|
|
82
|
-
background: rgba(255, 255, 255, 0.78);
|
|
83
|
-
backdrop-filter: blur(10px);
|
|
84
|
-
box-shadow: 0 18px 44px rgba(21, 49, 39, 0.08);
|
|
35
|
+
h1 {
|
|
36
|
+
margin: 0;
|
|
37
|
+
font-size: 1.25rem;
|
|
38
|
+
font-weight: 600;
|
|
39
|
+
line-height: 1.4;
|
|
85
40
|
}
|
|
86
41
|
|
|
87
|
-
.
|
|
88
|
-
|
|
42
|
+
.lede {
|
|
43
|
+
margin: 0.5rem 0 0;
|
|
44
|
+
color: #666;
|
|
45
|
+
font-size: 0.875rem;
|
|
46
|
+
line-height: 1.6;
|
|
89
47
|
}
|
|
90
48
|
|
|
91
|
-
.
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
49
|
+
.panel {
|
|
50
|
+
border: 1px solid #e5e5e5;
|
|
51
|
+
border-radius: 0.5rem;
|
|
52
|
+
padding: 1rem;
|
|
95
53
|
}
|
|
96
54
|
|
|
97
|
-
.
|
|
98
|
-
|
|
99
|
-
margin: 1rem 0 0;
|
|
100
|
-
color: #456759;
|
|
101
|
-
font-size: 1.05rem;
|
|
55
|
+
.panel + .panel {
|
|
56
|
+
margin-top: 1rem;
|
|
102
57
|
}
|
|
103
58
|
|
|
104
|
-
.
|
|
59
|
+
.panelHeader {
|
|
105
60
|
display: flex;
|
|
106
|
-
align-items:
|
|
61
|
+
align-items: center;
|
|
107
62
|
justify-content: space-between;
|
|
108
63
|
gap: 1rem;
|
|
109
|
-
margin-bottom:
|
|
64
|
+
margin-bottom: 0.75rem;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
h2 {
|
|
68
|
+
margin: 0;
|
|
69
|
+
font-size: 0.875rem;
|
|
70
|
+
font-weight: 600;
|
|
110
71
|
}
|
|
111
72
|
|
|
112
|
-
.
|
|
113
|
-
|
|
114
|
-
|
|
73
|
+
.panelHeader span,
|
|
74
|
+
.empty,
|
|
75
|
+
time {
|
|
76
|
+
color: #888;
|
|
77
|
+
font-size: 0.8rem;
|
|
115
78
|
}
|
|
116
79
|
|
|
117
|
-
.
|
|
118
|
-
|
|
119
|
-
|
|
80
|
+
.panel p {
|
|
81
|
+
color: #666;
|
|
82
|
+
font-size: 0.8rem;
|
|
120
83
|
}
|
|
121
84
|
|
|
122
|
-
.
|
|
123
|
-
.checklist {
|
|
85
|
+
.users {
|
|
124
86
|
list-style: none;
|
|
125
87
|
margin: 0;
|
|
126
88
|
padding: 0;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
.list {
|
|
130
89
|
display: grid;
|
|
131
|
-
gap: 0.
|
|
90
|
+
gap: 0.5rem;
|
|
132
91
|
}
|
|
133
92
|
|
|
134
|
-
.
|
|
93
|
+
.users li {
|
|
135
94
|
display: flex;
|
|
136
|
-
|
|
95
|
+
align-items: center;
|
|
137
96
|
justify-content: space-between;
|
|
138
|
-
gap:
|
|
139
|
-
padding: 0.
|
|
140
|
-
border
|
|
141
|
-
|
|
97
|
+
gap: 1rem;
|
|
98
|
+
padding: 0.625rem 0.75rem;
|
|
99
|
+
border: 1px solid #eee;
|
|
100
|
+
border-radius: 0.375rem;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.users p {
|
|
104
|
+
margin: 0.125rem 0 0;
|
|
142
105
|
}
|
|
143
106
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
107
|
+
time {
|
|
108
|
+
font-size: 0.75rem;
|
|
109
|
+
white-space: nowrap;
|
|
147
110
|
}
|
|
148
111
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
112
|
+
code {
|
|
113
|
+
padding: 0.125rem 0.25rem;
|
|
114
|
+
border-radius: 0.25rem;
|
|
115
|
+
background: #f5f5f5;
|
|
116
|
+
font-family: SFMono-Regular, Consolas, monospace;
|
|
117
|
+
font-size: 0.875em;
|
|
152
118
|
}
|
|
153
119
|
|
|
154
|
-
.
|
|
120
|
+
.steps {
|
|
121
|
+
list-style: none;
|
|
122
|
+
margin: 0;
|
|
123
|
+
padding: 0;
|
|
155
124
|
display: grid;
|
|
156
|
-
gap: 0.
|
|
125
|
+
gap: 0.25rem;
|
|
157
126
|
}
|
|
158
127
|
|
|
159
|
-
.
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
128
|
+
.steps li {
|
|
129
|
+
color: #444;
|
|
130
|
+
font-size: 0.8rem;
|
|
131
|
+
line-height: 1.5;
|
|
132
|
+
padding: 0.375rem 0;
|
|
133
|
+
border-bottom: 1px solid #f5f5f5;
|
|
163
134
|
}
|
|
164
135
|
|
|
165
|
-
.
|
|
166
|
-
|
|
167
|
-
position: absolute;
|
|
168
|
-
top: 0.55rem;
|
|
169
|
-
left: 0;
|
|
170
|
-
width: 0.45rem;
|
|
171
|
-
height: 0.45rem;
|
|
172
|
-
border-radius: 999px;
|
|
173
|
-
background: #58b48d;
|
|
136
|
+
.steps li:last-child {
|
|
137
|
+
border-bottom: none;
|
|
174
138
|
}
|
|
175
139
|
|
|
176
140
|
@media (max-width: 640px) {
|
|
177
|
-
.
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
.topbar,
|
|
182
|
-
.sectionHeader,
|
|
183
|
-
.listItem {
|
|
141
|
+
.users li,
|
|
142
|
+
.panelHeader {
|
|
184
143
|
flex-direction: column;
|
|
185
144
|
align-items: flex-start;
|
|
186
145
|
}
|