dev-process-kit 0.2.0 → 0.3.0-beta.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/README.md +178 -60
- package/dist/boards.js +1 -0
- package/dist/chunks/shared-B0QTGEwR.js +1844 -0
- package/dist/chunks/shared-BQqlFaPv.js +4928 -0
- package/dist/chunks/shared-BR7trWLo.js +3586 -0
- package/dist/chunks/shared-BpfuvyBP.js +1636 -0
- package/dist/chunks/shared-C1rWkW_W.js +705 -0
- package/dist/chunks/shared-C6hVLci2.js +574 -0
- package/dist/chunks/shared-CtoQ05tb.js +1 -0
- package/dist/chunks/{shared-DJruxrrR.js → shared-DW3QUBTw.js} +25 -56
- package/dist/chunks/shared-DXoggfKr.js +31 -0
- package/dist/chunks/shared-DbgUhOLb.js +686 -0
- package/dist/chunks/shared-Dj_D4ypT.js +2165 -0
- package/dist/chunks/shared-DuB4veji.js +904 -0
- package/dist/chunks/shared-TrlnHjrJ.js +1 -0
- package/dist/chunks/shared-bW1cft1H.js +2530 -0
- package/dist/chunks/shared-jVZVFFNq.js +602 -0
- package/dist/chunks/shared-xpAS9Ri4.js +6208 -0
- package/dist/chunks/shared-ztEUikTm.js +1 -0
- package/dist/components.js +1 -1
- package/dist/index.js +1 -1
- package/dist/views/delegation-poker.js +1 -0
- package/dist/views/plain.js +1 -0
- package/dist/views/prototype.js +1 -0
- package/dist/views/slides.js +1 -0
- package/dist/views/task-board.js +1 -0
- package/dist/views/usm.js +1 -0
- package/package.json +8 -10
- package/dist/chunks/shared-Ae8HmujL.js +0 -49
- package/dist/chunks/shared-B5lBiq5s.js +0 -1
- package/dist/chunks/shared-BCmqTEeQ.js +0 -1051
- package/dist/chunks/shared-BkM7jfZs.js +0 -1104
- package/dist/chunks/shared-Bo8OdTee.js +0 -4206
- package/dist/chunks/shared-C-7mxPbV.js +0 -301
- package/dist/chunks/shared-C-Os1zsf.js +0 -572
- package/dist/chunks/shared-C02b6b2m.js +0 -1
- package/dist/chunks/shared-DLdJfSN-.js +0 -1
- package/dist/chunks/shared-DYKbMmHn.js +0 -610
- package/dist/chunks/shared-DbBoZvUP.js +0 -1609
- package/dist/chunks/shared-DbnPOaXf.js +0 -4210
- package/dist/chunks/shared-DnJBtKmH.js +0 -3769
- package/dist/chunks/shared-v63w_5VP.js +0 -2774
- package/dist/templates/delegation-poker.js +0 -1
- package/dist/templates/event-storming.js +0 -1
- package/dist/templates/example-mapping.js +0 -1
- package/dist/templates/plain.js +0 -1
- package/dist/templates/prototype.js +0 -1
- package/dist/templates/slides.js +0 -1
- package/dist/templates/task-board.js +0 -1
- package/dist/templates/usm.js +0 -1
- package/dist/templates/whiteboard.js +0 -1
|
@@ -0,0 +1,574 @@
|
|
|
1
|
+
import{ah as a}from"./shared-BQqlFaPv.js";const t=a`
|
|
2
|
+
/* ------------------------------------------------------------ browser window */
|
|
3
|
+
|
|
4
|
+
:where(.dpk-browser-frame) {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
margin: 0;
|
|
8
|
+
border: 1px solid var(--dpk-rule);
|
|
9
|
+
border-radius: var(--dpk-radius-lg);
|
|
10
|
+
background: var(--dpk-paper-raised);
|
|
11
|
+
box-shadow: var(--dpk-bevel), var(--dpk-shadow-lg);
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* The title bar: traffic lights, then the address. Shared with the terminal's bar below. */
|
|
16
|
+
:where(.dpk-browser-frame-bar, .dpk-terminal-bar) {
|
|
17
|
+
display: flex;
|
|
18
|
+
align-items: center;
|
|
19
|
+
gap: 8px;
|
|
20
|
+
padding: 8px 14px;
|
|
21
|
+
background: linear-gradient(
|
|
22
|
+
180deg,
|
|
23
|
+
color-mix(in srgb, var(--dpk-paper-raised) 88%, transparent),
|
|
24
|
+
color-mix(in srgb, var(--dpk-paper-inset) 88%, transparent)
|
|
25
|
+
);
|
|
26
|
+
backdrop-filter: blur(10px);
|
|
27
|
+
border-bottom: 1px solid var(--dpk-rule);
|
|
28
|
+
box-shadow: inset 0 1px 0 var(--dpk-highlight);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
:where(.dpk-browser-frame-bar, .dpk-terminal-bar)::before {
|
|
32
|
+
content: '';
|
|
33
|
+
flex: none;
|
|
34
|
+
width: 10px;
|
|
35
|
+
height: 10px;
|
|
36
|
+
margin-right: 30px;
|
|
37
|
+
border-radius: 50%;
|
|
38
|
+
background: #ff5f57;
|
|
39
|
+
box-shadow:
|
|
40
|
+
15px 0 #febc2e,
|
|
41
|
+
30px 0 #28c840;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
:where(.dpk-browser-frame-url) {
|
|
45
|
+
flex: 1;
|
|
46
|
+
min-width: 0;
|
|
47
|
+
padding: 4px 14px;
|
|
48
|
+
border: 1px solid var(--dpk-rule);
|
|
49
|
+
border-radius: var(--dpk-radius-sm);
|
|
50
|
+
background: var(--dpk-paper-raised);
|
|
51
|
+
box-shadow: inset 0 1px 2px rgba(20, 28, 44, 0.04);
|
|
52
|
+
color: var(--dpk-ink-faint);
|
|
53
|
+
font-family: var(--dpk-mono);
|
|
54
|
+
font-size: 10.5px;
|
|
55
|
+
overflow: hidden;
|
|
56
|
+
white-space: nowrap;
|
|
57
|
+
text-overflow: ellipsis;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* The page: the product's own light surface. */
|
|
61
|
+
:where(.dpk-browser-frame-body, .dpk-smartphone-screen) {
|
|
62
|
+
position: relative;
|
|
63
|
+
display: flex;
|
|
64
|
+
flex-direction: column;
|
|
65
|
+
flex: 1 1 auto;
|
|
66
|
+
min-height: var(--dpk-screen-min-height, 0);
|
|
67
|
+
color-scheme: light;
|
|
68
|
+
background: #fff;
|
|
69
|
+
color: #1f2430;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* ------------------------------------------------------------ phone */
|
|
73
|
+
|
|
74
|
+
/* A device is recognised by its shape: a slim bezel, a punch-hole camera and a home indicator. */
|
|
75
|
+
:where(.dpk-smartphone) {
|
|
76
|
+
--_smartphone-width: var(--dpk-smartphone-width, 320px);
|
|
77
|
+
width: min(var(--_smartphone-width), 100%);
|
|
78
|
+
margin: 0;
|
|
79
|
+
padding: 10px;
|
|
80
|
+
border: 1px solid #22262e;
|
|
81
|
+
border-radius: 28px;
|
|
82
|
+
background: linear-gradient(160deg, #2e3440, #1a1d24);
|
|
83
|
+
box-shadow:
|
|
84
|
+
var(--dpk-shadow-lg),
|
|
85
|
+
inset 0 1px 0 rgba(255, 255, 255, 0.06);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/* Portrait (~1:2.05), and taller when the content is; clip-path keeps the corners without capping the height. */
|
|
89
|
+
:where(.dpk-smartphone-screen) {
|
|
90
|
+
min-height: calc((var(--_smartphone-width) - 22px) * 2.05);
|
|
91
|
+
clip-path: inset(0 round 18px);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* The tabs sit above the home indicator. */
|
|
95
|
+
:where(.dpk-smartphone-screen) > :where(.dpk-tabbar) {
|
|
96
|
+
padding-bottom: 22px;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/* The home indicator. */
|
|
100
|
+
:where(.dpk-smartphone-screen)::after {
|
|
101
|
+
content: '';
|
|
102
|
+
position: absolute;
|
|
103
|
+
z-index: 2;
|
|
104
|
+
bottom: 8px;
|
|
105
|
+
left: 50%;
|
|
106
|
+
width: 88px;
|
|
107
|
+
height: 4px;
|
|
108
|
+
transform: translateX(-50%);
|
|
109
|
+
border-radius: 999px;
|
|
110
|
+
background: rgba(138, 146, 160, 0.55);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/* The status bar: the time as its text; the camera and the signal are drawn. */
|
|
114
|
+
:where(.dpk-status-bar) {
|
|
115
|
+
position: relative;
|
|
116
|
+
display: flex;
|
|
117
|
+
flex: 0 0 auto;
|
|
118
|
+
align-items: center;
|
|
119
|
+
justify-content: space-between;
|
|
120
|
+
height: 30px;
|
|
121
|
+
padding: 0 12px;
|
|
122
|
+
background: #0c0e13;
|
|
123
|
+
color: #e9edf4;
|
|
124
|
+
font-size: 11.5px;
|
|
125
|
+
font-weight: 550;
|
|
126
|
+
letter-spacing: 0.02em;
|
|
127
|
+
font-variant-numeric: tabular-nums;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
:where(.dpk-status-bar)::before {
|
|
131
|
+
content: '';
|
|
132
|
+
position: absolute;
|
|
133
|
+
top: 50%;
|
|
134
|
+
left: 50%;
|
|
135
|
+
width: 10px;
|
|
136
|
+
height: 10px;
|
|
137
|
+
transform: translate(-50%, -50%);
|
|
138
|
+
border-radius: 50%;
|
|
139
|
+
background: #04060a;
|
|
140
|
+
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.07);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
:where(.dpk-status-bar)::after {
|
|
144
|
+
content: '';
|
|
145
|
+
width: 15px;
|
|
146
|
+
height: 12px;
|
|
147
|
+
margin-left: auto;
|
|
148
|
+
background: currentColor;
|
|
149
|
+
mask: var(--dpk-wifi) center / contain no-repeat;
|
|
150
|
+
-webkit-mask: var(--dpk-wifi) center / contain no-repeat;
|
|
151
|
+
--dpk-wifi: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 12'><path d='M8 9.2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z'/><path d='M4.7 7.4a4.8 4.8 0 0 1 6.6 0M2.1 4.7a8.4 8.4 0 0 1 11.8 0' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round'/></svg>");
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/* ------------------------------------------------------------ mail */
|
|
155
|
+
|
|
156
|
+
/* One opened message: the subject, the sender's avatar and the envelope rows, above the body. */
|
|
157
|
+
:where(.dpk-received-mail) {
|
|
158
|
+
display: grid;
|
|
159
|
+
gap: 12px;
|
|
160
|
+
padding: 18px 22px 14px;
|
|
161
|
+
border-bottom: 1px solid #e3e6ec;
|
|
162
|
+
background: #fff;
|
|
163
|
+
color: #1f2430;
|
|
164
|
+
color-scheme: light;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
:where(.dpk-received-mail-subject) {
|
|
168
|
+
margin: 0;
|
|
169
|
+
font-size: 18px;
|
|
170
|
+
font-weight: 650;
|
|
171
|
+
line-height: 1.35;
|
|
172
|
+
letter-spacing: -0.01em;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
:where(.dpk-received-mail-envelope) {
|
|
176
|
+
display: flex;
|
|
177
|
+
align-items: flex-start;
|
|
178
|
+
gap: 12px;
|
|
179
|
+
min-width: 0;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
:where(.dpk-received-mail-envelope) > :where(.dpk-avatar) {
|
|
183
|
+
background: linear-gradient(160deg, #6b8af5, #3f5fd8);
|
|
184
|
+
color: #fff;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
:where(dl.dpk-received-mail-meta) {
|
|
188
|
+
display: grid;
|
|
189
|
+
gap: 2px;
|
|
190
|
+
min-width: 0;
|
|
191
|
+
margin: 0;
|
|
192
|
+
font-size: 12px;
|
|
193
|
+
line-height: 1.5;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
:where(dl.dpk-received-mail-meta) > :where(div) {
|
|
197
|
+
display: flex;
|
|
198
|
+
gap: 8px;
|
|
199
|
+
min-width: 0;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
:where(dl.dpk-received-mail-meta) :where(dt) {
|
|
203
|
+
flex: none;
|
|
204
|
+
min-width: 3.5em;
|
|
205
|
+
color: #7a8294;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
:where(dl.dpk-received-mail-meta) :where(dd) {
|
|
209
|
+
min-width: 0;
|
|
210
|
+
margin: 0;
|
|
211
|
+
overflow-wrap: anywhere;
|
|
212
|
+
color: #1f2430;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
:where(dl.dpk-received-mail-meta) > :where(div:first-child) > :where(dd) {
|
|
216
|
+
font-weight: 600;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
/* ------------------------------------------------------------ native app */
|
|
220
|
+
|
|
221
|
+
/* The app's top bar: back, title, an action. It stays put while the screen scrolls. */
|
|
222
|
+
:where(.dpk-appbar) {
|
|
223
|
+
position: sticky;
|
|
224
|
+
top: 0;
|
|
225
|
+
z-index: 1;
|
|
226
|
+
display: grid;
|
|
227
|
+
grid-template-columns: 28px minmax(0, 1fr) 28px;
|
|
228
|
+
align-items: center;
|
|
229
|
+
padding: 14px 16px 10px;
|
|
230
|
+
border-bottom: 1px solid #e3e6ec;
|
|
231
|
+
background: #fff;
|
|
232
|
+
color: #1f2430;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
:where(.dpk-appbar) > :where(:first-child:not(:only-child)) {
|
|
236
|
+
color: #7a8294;
|
|
237
|
+
font-size: 20px;
|
|
238
|
+
line-height: 1;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
:where(.dpk-appbar) > :where(strong, h1, h2, h3) {
|
|
242
|
+
grid-column: 2;
|
|
243
|
+
justify-self: center;
|
|
244
|
+
max-width: 100%;
|
|
245
|
+
margin: 0;
|
|
246
|
+
overflow: hidden;
|
|
247
|
+
font-size: 14px;
|
|
248
|
+
font-weight: 650;
|
|
249
|
+
white-space: nowrap;
|
|
250
|
+
text-overflow: ellipsis;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/* The app's bottom tabs; the current one is aria-current="page". */
|
|
254
|
+
:where(.dpk-tabbar) {
|
|
255
|
+
position: sticky;
|
|
256
|
+
bottom: 0;
|
|
257
|
+
z-index: 1;
|
|
258
|
+
display: flex;
|
|
259
|
+
margin-top: auto;
|
|
260
|
+
padding: 10px 4px;
|
|
261
|
+
border-top: 1px solid #e3e6ec;
|
|
262
|
+
background: #fff;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
:where(.dpk-tabbar) > :where(*) {
|
|
266
|
+
flex: 1;
|
|
267
|
+
color: #7a8294;
|
|
268
|
+
font-size: 10.5px;
|
|
269
|
+
text-align: center;
|
|
270
|
+
text-decoration: none;
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
:where(.dpk-tabbar) > :where([aria-current='page'], [aria-selected='true']) {
|
|
274
|
+
color: var(--dpk-mock-accent, #2f6fe4);
|
|
275
|
+
font-weight: 650;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/* A lock screen: the clock, then the notifications. */
|
|
279
|
+
:where(.dpk-lockscreen) {
|
|
280
|
+
display: grid;
|
|
281
|
+
flex: 1 1 auto;
|
|
282
|
+
align-content: start;
|
|
283
|
+
gap: 10px;
|
|
284
|
+
padding: 56px 14px 18px;
|
|
285
|
+
background: var(--dpk-lockscreen-wallpaper, linear-gradient(180deg, #3e5a52, #1f2c29));
|
|
286
|
+
color: #fff;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
:where(.dpk-lockscreen) > :where(time) {
|
|
290
|
+
margin-bottom: 18px;
|
|
291
|
+
font-size: 54px;
|
|
292
|
+
font-weight: 300;
|
|
293
|
+
line-height: 1;
|
|
294
|
+
text-align: center;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
:where(.dpk-lockscreen) > :where(time) > :where(small) {
|
|
298
|
+
display: block;
|
|
299
|
+
margin-top: 6px;
|
|
300
|
+
font-size: 13px;
|
|
301
|
+
opacity: 0.8;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
/* A notification: the app's icon, then who sent it and what it says. */
|
|
305
|
+
:where(.dpk-push) {
|
|
306
|
+
display: grid;
|
|
307
|
+
grid-template-columns: 32px minmax(0, 1fr);
|
|
308
|
+
gap: 10px;
|
|
309
|
+
padding: 12px;
|
|
310
|
+
border-radius: 14px;
|
|
311
|
+
background: rgba(255, 255, 255, 0.86);
|
|
312
|
+
backdrop-filter: blur(12px);
|
|
313
|
+
color: #1f2430;
|
|
314
|
+
font-size: 12.5px;
|
|
315
|
+
line-height: 1.45;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
:where(.dpk-push) > :where(:first-child) {
|
|
319
|
+
display: grid;
|
|
320
|
+
place-items: center;
|
|
321
|
+
width: 32px;
|
|
322
|
+
height: 32px;
|
|
323
|
+
border-radius: 8px;
|
|
324
|
+
background: var(--dpk-mock-accent, #2f6fe4);
|
|
325
|
+
color: #fff;
|
|
326
|
+
font-weight: 700;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
:where(.dpk-push) :where(p) {
|
|
330
|
+
margin: 0;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
:where(.dpk-push) :where(small) {
|
|
334
|
+
display: block;
|
|
335
|
+
color: #7a8294;
|
|
336
|
+
font-size: 11px;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
/* ------------------------------------------------------------ agent chat */
|
|
340
|
+
|
|
341
|
+
/* A transcript between the user and an agent: a scrolling log, above an input bar. */
|
|
342
|
+
:where(.dpk-agent-chat) {
|
|
343
|
+
display: flex;
|
|
344
|
+
flex-direction: column;
|
|
345
|
+
min-width: 0;
|
|
346
|
+
margin: 0;
|
|
347
|
+
border: 1px solid var(--dpk-rule);
|
|
348
|
+
border-radius: var(--dpk-radius-lg);
|
|
349
|
+
background: var(--dpk-paper-raised);
|
|
350
|
+
box-shadow: var(--dpk-bevel), var(--dpk-shadow-lg);
|
|
351
|
+
overflow: hidden;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
:where(.dpk-agent-chat-log) {
|
|
355
|
+
display: grid;
|
|
356
|
+
gap: 12px;
|
|
357
|
+
max-height: var(--dpk-agent-chat-height, 360px);
|
|
358
|
+
padding: 16px;
|
|
359
|
+
overflow: auto;
|
|
360
|
+
background: var(--dpk-paper-sunken);
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
/* One turn: its step line (if any) above its bubble, both aligned the same way. */
|
|
364
|
+
:where(.dpk-agent-chat-turn) {
|
|
365
|
+
display: grid;
|
|
366
|
+
gap: 4px;
|
|
367
|
+
max-width: 85%;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
:where(.dpk-agent-chat-turn[data-from='user']) {
|
|
371
|
+
justify-self: end;
|
|
372
|
+
justify-items: end;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
:where(.dpk-agent-chat-turn[data-from='agent']) {
|
|
376
|
+
justify-self: start;
|
|
377
|
+
justify-items: start;
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
:where(.dpk-agent-chat-bubble) {
|
|
381
|
+
max-width: 100%;
|
|
382
|
+
margin: 0;
|
|
383
|
+
padding: 9px 13px;
|
|
384
|
+
border-radius: var(--dpk-radius);
|
|
385
|
+
overflow-wrap: anywhere;
|
|
386
|
+
font-size: 13px;
|
|
387
|
+
line-height: 1.55;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
:where(.dpk-agent-chat-turn[data-from='user']) > :where(.dpk-agent-chat-bubble) {
|
|
391
|
+
border-bottom-right-radius: 4px;
|
|
392
|
+
background: var(--dpk-accent);
|
|
393
|
+
color: var(--dpk-accent-ink);
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
:where(.dpk-agent-chat-turn[data-from='agent']) > :where(.dpk-agent-chat-bubble) {
|
|
397
|
+
border: 1px solid var(--dpk-rule);
|
|
398
|
+
border-bottom-left-radius: 4px;
|
|
399
|
+
background: var(--dpk-paper-raised);
|
|
400
|
+
color: var(--dpk-ink);
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
/* A tool call or a working step: a quiet line above the turn's bubble, not a message of its own. */
|
|
404
|
+
:where(.dpk-agent-chat-step) {
|
|
405
|
+
display: flex;
|
|
406
|
+
align-items: center;
|
|
407
|
+
gap: 6px;
|
|
408
|
+
margin: 0;
|
|
409
|
+
padding: 0 2px;
|
|
410
|
+
color: var(--dpk-ink-faint);
|
|
411
|
+
font-family: var(--dpk-mono);
|
|
412
|
+
font-size: 11px;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
:where(.dpk-agent-chat-step)::before {
|
|
416
|
+
content: '';
|
|
417
|
+
flex: none;
|
|
418
|
+
width: 5px;
|
|
419
|
+
height: 5px;
|
|
420
|
+
border-radius: 50%;
|
|
421
|
+
background: var(--dpk-violet);
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
:where(.dpk-agent-chat-composer) {
|
|
425
|
+
display: flex;
|
|
426
|
+
flex: none;
|
|
427
|
+
align-items: center;
|
|
428
|
+
gap: 8px;
|
|
429
|
+
padding: 10px 12px;
|
|
430
|
+
border-top: 1px solid var(--dpk-rule);
|
|
431
|
+
background: var(--dpk-paper-raised);
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
/* A drawn text field: this is a mock, not a working composer. */
|
|
435
|
+
:where(.dpk-agent-chat-field) {
|
|
436
|
+
flex: 1;
|
|
437
|
+
min-width: 0;
|
|
438
|
+
padding: 7px 12px;
|
|
439
|
+
border: 1px solid var(--dpk-rule-strong);
|
|
440
|
+
border-radius: 999px;
|
|
441
|
+
background: var(--dpk-paper-sunken);
|
|
442
|
+
color: var(--dpk-ink-faint);
|
|
443
|
+
font-size: 12.5px;
|
|
444
|
+
overflow: hidden;
|
|
445
|
+
white-space: nowrap;
|
|
446
|
+
text-overflow: ellipsis;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
/* ------------------------------------------------------------ terminal */
|
|
450
|
+
|
|
451
|
+
/* A terminal window: the title bar shares the browser's glass chrome and traffic lights. */
|
|
452
|
+
:where(.dpk-terminal) {
|
|
453
|
+
display: flex;
|
|
454
|
+
flex-direction: column;
|
|
455
|
+
margin: 0;
|
|
456
|
+
border: 1px solid var(--dpk-rule);
|
|
457
|
+
border-radius: var(--dpk-radius-lg);
|
|
458
|
+
background: var(--dpk-paper-raised);
|
|
459
|
+
box-shadow: var(--dpk-bevel), var(--dpk-shadow-lg);
|
|
460
|
+
overflow: hidden;
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
:where(.dpk-terminal-title) {
|
|
464
|
+
flex: 1;
|
|
465
|
+
min-width: 0;
|
|
466
|
+
overflow: hidden;
|
|
467
|
+
color: var(--dpk-ink-faint);
|
|
468
|
+
font-family: var(--dpk-mono);
|
|
469
|
+
font-size: 10.5px;
|
|
470
|
+
text-align: center;
|
|
471
|
+
white-space: nowrap;
|
|
472
|
+
text-overflow: ellipsis;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
/* The output pane: a terminal reads the same dark palette regardless of the page's theme. */
|
|
476
|
+
:where(.dpk-terminal-body) {
|
|
477
|
+
flex: 1 1 auto;
|
|
478
|
+
min-height: var(--dpk-screen-min-height, 0);
|
|
479
|
+
margin: 0;
|
|
480
|
+
padding: 14px 16px;
|
|
481
|
+
overflow: auto;
|
|
482
|
+
background: #14161c;
|
|
483
|
+
color: #d7dae2;
|
|
484
|
+
color-scheme: dark;
|
|
485
|
+
font-family: var(--dpk-mono);
|
|
486
|
+
font-size: 12.5px;
|
|
487
|
+
line-height: 1.65;
|
|
488
|
+
white-space: pre-wrap;
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
/* The prompt is the user@host; the "$" is drawn here so authors never type it. */
|
|
492
|
+
:where(.dpk-terminal-prompt) {
|
|
493
|
+
color: #58d68d;
|
|
494
|
+
font-weight: 600;
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
:where(.dpk-terminal-prompt)::after {
|
|
498
|
+
content: ' $';
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
:where(.dpk-terminal-command) {
|
|
502
|
+
color: #eef0f5;
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
:where(.dpk-terminal-output) {
|
|
506
|
+
color: #9aa1b4;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
:where(.dpk-terminal-success) {
|
|
510
|
+
color: #4fd486;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
:where(.dpk-terminal-error) {
|
|
514
|
+
color: #ff6b7a;
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
/* ------------------------------------------------------------ paper */
|
|
518
|
+
|
|
519
|
+
/* A handwritten memo: a tilted sheet with its own fixed paper color and a
|
|
520
|
+
handwriting webfont — Klee One for kana/kanji, Caveat for Latin, falling
|
|
521
|
+
back to a system hand-like font if the request is blocked or offline.
|
|
522
|
+
The font is requested by \`ensurePaperFont()\` (see mock.ts) as a
|
|
523
|
+
document-level link, not declared inside this stylesheet: this stylesheet
|
|
524
|
+
is also adopted into shadow roots, where a shadow-scoped font face is not
|
|
525
|
+
reliably applied, and declaring it here would repeat the request once
|
|
526
|
+
per adopting shadow root. */
|
|
527
|
+
:where(.dpk-paper) {
|
|
528
|
+
--_paper-tilt: var(--dpk-paper-tilt, -1.1deg);
|
|
529
|
+
display: block;
|
|
530
|
+
margin: 0;
|
|
531
|
+
padding: 26px 28px;
|
|
532
|
+
border-radius: 2px;
|
|
533
|
+
background: #fbf8f0;
|
|
534
|
+
color: #2d2a22;
|
|
535
|
+
color-scheme: light;
|
|
536
|
+
box-shadow: var(--dpk-shadow-lg);
|
|
537
|
+
transform: rotate(var(--_paper-tilt));
|
|
538
|
+
font-family: 'Klee One', 'Caveat', 'Segoe Print', 'Bradley Hand', 'Chalkboard SE', 'Comic Sans MS', cursive;
|
|
539
|
+
font-size: 15px;
|
|
540
|
+
line-height: 1.75;
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
/* Ruled paper: faint horizontal lines, opt in with data-lines="ruled" (plain by default). */
|
|
544
|
+
:where(.dpk-paper[data-lines='ruled']) {
|
|
545
|
+
background-image: repeating-linear-gradient(
|
|
546
|
+
to bottom,
|
|
547
|
+
transparent 0,
|
|
548
|
+
transparent 27px,
|
|
549
|
+
rgba(68, 110, 196, 0.22) 28px
|
|
550
|
+
);
|
|
551
|
+
background-position: 0 2px;
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
:where(.dpk-paper) > :where(*) {
|
|
555
|
+
margin: 0;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
:where(.dpk-paper) > :where(* + *) {
|
|
559
|
+
margin-top: 10px;
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
:where(.dpk-paper) :where(h1, h2, h3, h4) {
|
|
563
|
+
font-family: inherit;
|
|
564
|
+
font-size: 1.3em;
|
|
565
|
+
font-weight: 700;
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
/* A hand-written sign-off at the end of the note. */
|
|
569
|
+
:where(.dpk-paper-signoff) {
|
|
570
|
+
margin-top: 16px;
|
|
571
|
+
text-align: right;
|
|
572
|
+
font-size: 1.05em;
|
|
573
|
+
}
|
|
574
|
+
`,i="https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&family=Caveat:wght@500;600&display=swap";let r=!1;const o=()=>{if(typeof document>"u"||r||document.querySelector(".dpk-paper")===null)return;r=!0;const e=document.createElement("link");e.rel="stylesheet",e.href=i,document.head.append(e)};export{o as e,t as m};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a5 as S,au as T,av as s,aw as o,aa as _,ac as l,aM as x,ax as B,ay as E,S as $,V as j}from"./shared-BQqlFaPv.js";const r=S({en:{wholePage:"Whole page",sectionGroup:"Section"},ja:{wholePage:"\u30DA\u30FC\u30B8\u5168\u4F53",sectionGroup:"\u30BB\u30AF\u30B7\u30E7\u30F3"}}),k=s({id:x,title:B(l(),E(1))}),c=s({title:o(l(),""),sections:o(_(k),[])}),p=t=>{const e=T(c,t),i=new Set;for(const a of e.sections){if(i.has(a.id))throw new Error(`duplicate section id: ${a.id}`);i.add(a.id)}return{title:e.title,sections:e.sections}},d=()=>({title:"",sections:[]}),n=(t,e)=>t.sections.find(i=>i.id===e),u=t=>t.title===""?"Plain":t.title,g=(t,e,i)=>{switch(i.type){case"section":return n(e,i.id)?.title??i.id;case"page":return t.wholePage;default:return i.id}},m=(t,e,i)=>({title:e.type,targetLabel:g(t,i,e.target),tone:"meta"}),f=t=>`${t.type} ${$(t.target)} ${JSON.stringify(t.payload)}`,w=(t,e)=>e.sections.map(i=>({value:`section:${i.id}`,label:i.title,group:t.sectionGroup})),y=(t,e)=>e,h=(t,e)=>{switch(e.type){case"section":return n(t,e.id)!==void 0;case"page":return!0;default:return!1}},P=t=>{const e=r(t);return{kind:"view",name:"plain",label:"Plain",addable:!1,parseBase:p,emptyBase:d,actions:{},apply:()=>null,hasTarget:h,describe:(i,a)=>m(e,i,a),serialize:f,resolveNavigation:y,commentTargets:i=>w(e,i),title:u}};class b extends j{definitionFor(e){return P(e)}renderRegions(e){return{}}}const v=()=>{customElements.get("dpk-view-plain")||customElements.define("dpk-view-plain",b)},M=Object.freeze(Object.defineProperty({__proto__:null,DpkViewPlain:b,definePlainElement:v,describePlainAction:m,emptyPlainBase:d,findSection:n,parsePlainBase:p,plainBaseSchema:c,plainCommentTargets:w,plainDefinitionFor:P,plainHasTarget:h,plainMessages:r,plainTargetLabel:g,plainTitle:u,resolvePlainNavigation:y,serializePlainAction:f},Symbol.toStringTag,{value:"Module"}));export{v as d,M as i};
|