@compose-market/theme 0.0.90 → 0.0.92

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.
Files changed (61) hide show
  1. package/dist/agents/index.d.ts +2 -2
  2. package/dist/agents/index.d.ts.map +1 -1
  3. package/dist/agents/styles.d.ts +1 -1
  4. package/dist/agents/styles.d.ts.map +1 -1
  5. package/dist/agents/styles.js +168 -5
  6. package/dist/agents/styles.js.map +1 -1
  7. package/dist/app/index.d.ts +1 -1
  8. package/dist/app/index.d.ts.map +1 -1
  9. package/dist/app/styles.d.ts +1 -1
  10. package/dist/app/styles.d.ts.map +1 -1
  11. package/dist/app/styles.js +64 -4
  12. package/dist/app/styles.js.map +1 -1
  13. package/dist/css/agents.css +168 -5
  14. package/dist/css/app.css +64 -4
  15. package/dist/css/dark.css +18 -18
  16. package/dist/css/effects.css +293 -30
  17. package/dist/css/mirror.css +335 -138
  18. package/dist/css/session.css +28 -0
  19. package/dist/css/shell.css +1118 -32
  20. package/dist/css/tokens.css +1 -1
  21. package/dist/css/utilities.css +289 -6
  22. package/dist/effects/styles.d.ts +3 -3
  23. package/dist/effects/styles.d.ts.map +1 -1
  24. package/dist/effects/styles.js +295 -32
  25. package/dist/effects/styles.js.map +1 -1
  26. package/dist/mirror/index.d.ts +39 -6
  27. package/dist/mirror/index.d.ts.map +1 -1
  28. package/dist/mirror/index.js +18 -6
  29. package/dist/mirror/index.js.map +1 -1
  30. package/dist/mirror/styles.d.ts +2 -2
  31. package/dist/mirror/styles.d.ts.map +1 -1
  32. package/dist/mirror/styles.js +336 -139
  33. package/dist/mirror/styles.js.map +1 -1
  34. package/dist/session/index.d.ts +16 -4
  35. package/dist/session/index.d.ts.map +1 -1
  36. package/dist/session/index.js +31 -2
  37. package/dist/session/index.js.map +1 -1
  38. package/dist/session/styles.d.ts +1 -1
  39. package/dist/session/styles.d.ts.map +1 -1
  40. package/dist/session/styles.js +28 -0
  41. package/dist/session/styles.js.map +1 -1
  42. package/dist/shell/index.d.ts +40 -19
  43. package/dist/shell/index.d.ts.map +1 -1
  44. package/dist/shell/index.js +20 -0
  45. package/dist/shell/index.js.map +1 -1
  46. package/dist/shell/styles.d.ts +1 -1
  47. package/dist/shell/styles.d.ts.map +1 -1
  48. package/dist/shell/styles.js +1118 -32
  49. package/dist/shell/styles.js.map +1 -1
  50. package/dist/themes/dark.js +25 -25
  51. package/dist/themes/dark.js.map +1 -1
  52. package/dist/tokens/typography.d.ts +1 -1
  53. package/dist/tokens/typography.js +2 -2
  54. package/dist/tokens/typography.js.map +1 -1
  55. package/dist/utilities/styles.d.ts +2 -2
  56. package/dist/utilities/styles.d.ts.map +1 -1
  57. package/dist/utilities/styles.js +290 -7
  58. package/dist/utilities/styles.js.map +1 -1
  59. package/dist/workflows/index.d.ts +4 -4
  60. package/dist/workflows/index.d.ts.map +1 -1
  61. package/package.json +11 -10
@@ -1,258 +1,455 @@
1
1
  /**
2
2
  * Mirror Pane Styles
3
3
  *
4
- * BEM CSS for the MirrorPane component pattern (model info panel).
4
+ * Shared BEM CSS for model/detail panes.
5
5
  */
6
6
  export const mirrorStyles = /* css */ `
7
- /* ── Mirror Pane ── */
8
7
  .cm-mirror-pane {
8
+ container-type: inline-size;
9
9
  display: flex;
10
10
  flex-direction: column;
11
- border: 1px solid hsl(var(--primary) / 0.3);
12
- border-radius: 8px;
13
- background: hsl(var(--card));
14
- overflow: hidden;
11
+ min-width: 0;
12
+ min-height: 0;
15
13
  height: 100%;
14
+ overflow: hidden;
15
+ border: 1px solid hsl(var(--primary) / 0.18);
16
+ border-radius: 16px;
17
+ background:
18
+ linear-gradient(145deg, hsl(226 21% 23% / 0.42), hsl(221 50% 9% / 0.34)),
19
+ radial-gradient(circle at 18% 0%, hsl(var(--primary) / 0.09), transparent 34%),
20
+ hsl(224 36% 13% / 0.24);
21
+ box-shadow:
22
+ inset 0 1px 0 hsl(0 0% 100% / 0.06),
23
+ 0 0 34px hsl(var(--primary) / 0.06);
24
+ color: hsl(var(--foreground));
25
+ font-family: var(--font-sans), sans-serif;
26
+ backdrop-filter: blur(16px) saturate(1.12);
16
27
  }
17
28
 
18
- /* Toolbar (icon tabs) */
19
29
  .cm-mirror-pane__toolbar {
20
- flex-shrink: 0;
30
+ flex: 0 0 auto;
21
31
  display: flex;
22
32
  align-items: center;
23
- gap: 4px;
24
- padding: 8px;
25
- border-bottom: 1px solid hsl(var(--sidebar-border));
26
- background: hsl(var(--background) / 0.3);
33
+ gap: 0.35rem;
34
+ padding: 0.45rem;
35
+ border-bottom: 1px solid hsl(var(--primary) / 0.1);
36
+ background: hsl(221 50% 9% / 0.28);
27
37
  }
28
38
 
29
39
  .cm-mirror-pane__toolbar-btn {
30
- padding: 8px;
31
- border-radius: 6px;
32
- border: none;
33
- background: transparent;
34
- color: hsl(var(--muted-foreground));
35
- cursor: pointer;
36
- transition: color 0.15s ease, background 0.15s ease;
37
40
  display: inline-flex;
38
41
  align-items: center;
39
42
  justify-content: center;
43
+ gap: 0.4rem;
44
+ min-width: 2.2rem;
45
+ min-height: 2.2rem;
46
+ padding: 0 0.62rem;
47
+ border: 1px solid transparent;
48
+ border-radius: 999px;
49
+ background: transparent;
50
+ color: hsl(var(--muted-foreground));
51
+ cursor: pointer;
52
+ font-family: var(--font-mono), monospace;
53
+ font-size: 0.68rem;
54
+ letter-spacing: 0.08em;
55
+ text-transform: uppercase;
56
+ transition:
57
+ transform 160ms ease,
58
+ border-color 180ms ease,
59
+ background-color 180ms ease,
60
+ color 180ms ease,
61
+ box-shadow 180ms ease;
40
62
  }
41
63
 
42
- .cm-mirror-pane__toolbar-btn:hover {
64
+ .cm-mirror-pane__toolbar-btn:hover,
65
+ .cm-mirror-pane__toolbar-btn:focus-visible {
66
+ outline: none;
43
67
  color: hsl(var(--foreground));
44
- background: hsl(var(--muted));
68
+ border-color: hsl(var(--primary) / 0.2);
69
+ background: hsl(var(--primary) / 0.08);
45
70
  }
46
71
 
47
72
  .cm-mirror-pane__toolbar-btn--active-cyan {
48
- background: hsl(var(--primary) / 0.2);
73
+ border-color: hsl(var(--primary) / 0.36);
74
+ background: hsl(var(--primary) / 0.12);
49
75
  color: hsl(var(--primary));
76
+ box-shadow: 0 0 18px hsl(var(--primary) / 0.12);
50
77
  }
51
78
 
52
79
  .cm-mirror-pane__toolbar-btn--active-fuchsia {
53
- background: hsl(var(--accent) / 0.2);
80
+ border-color: hsl(var(--accent) / 0.34);
81
+ background: hsl(var(--accent) / 0.11);
54
82
  color: hsl(var(--accent));
83
+ box-shadow: 0 0 18px hsl(var(--accent) / 0.1);
84
+ }
85
+
86
+ .cm-mirror-pane__toolbar-btn svg {
87
+ width: 1rem;
88
+ height: 1rem;
89
+ }
90
+
91
+ .cm-mirror-pane__toolbar-label {
92
+ display: none;
93
+ }
94
+
95
+ @container (min-width: 24rem) {
96
+ .cm-mirror-pane__toolbar-label {
97
+ display: inline;
98
+ }
55
99
  }
56
100
 
57
- /* Body */
58
101
  .cm-mirror-pane__body {
59
- padding: 12px;
102
+ flex: 1;
103
+ min-height: 0;
60
104
  display: flex;
61
105
  flex-direction: column;
62
- gap: 16px;
106
+ gap: clamp(0.75rem, 3cqi, 1rem);
107
+ overflow: auto;
108
+ padding: clamp(0.75rem, 3cqi, 1rem);
109
+ }
110
+
111
+ .cm-mirror-pane__footer {
112
+ flex: 0 0 auto;
113
+ border-top: 1px solid hsl(var(--primary) / 0.1);
114
+ padding: 0.75rem 1rem;
115
+ }
116
+
117
+ .cm-mirror-pane__empty {
63
118
  flex: 1;
64
- overflow-y: auto;
119
+ min-height: 14rem;
120
+ display: grid;
121
+ place-items: center;
122
+ align-content: center;
123
+ gap: 0.75rem;
124
+ padding: 1.5rem;
125
+ text-align: center;
65
126
  }
66
127
 
67
- @media (min-width: 640px) {
68
- .cm-mirror-pane__body {
69
- padding: 16px;
70
- }
128
+ .cm-mirror-pane__empty-icon {
129
+ display: inline-flex;
130
+ color: hsl(var(--primary));
131
+ opacity: 0.72;
71
132
  }
72
133
 
73
- @media (min-width: 768px) {
74
- .cm-mirror-pane__body {
75
- padding: 20px;
76
- }
134
+ .cm-mirror-pane__empty-icon svg {
135
+ width: 2.5rem;
136
+ height: 2.5rem;
137
+ }
138
+
139
+ .cm-mirror-pane__empty-text {
140
+ max-width: 18rem;
141
+ color: hsl(var(--muted-foreground));
142
+ line-height: 1.45;
77
143
  }
78
144
 
79
- /* Model identity */
80
145
  .cm-mirror-pane__model-header {
81
146
  display: flex;
82
147
  align-items: flex-start;
83
- gap: 12px;
148
+ gap: 0.75rem;
149
+ min-width: 0;
84
150
  }
85
151
 
86
152
  .cm-mirror-pane__model-icon-box {
87
- padding: 8px;
88
- background: hsl(var(--primary) / 0.1);
89
- border: 1px solid hsl(var(--primary) / 0.3);
90
- border-radius: 8px;
91
- flex-shrink: 0;
153
+ display: grid;
154
+ width: 2.65rem;
155
+ height: 2.65rem;
156
+ place-items: center;
157
+ flex: 0 0 auto;
158
+ border: 1px solid hsl(var(--primary) / 0.24);
159
+ border-radius: 12px;
160
+ background: hsl(var(--primary) / 0.09);
161
+ color: hsl(var(--primary));
162
+ box-shadow: inset 0 0 18px hsl(var(--primary) / 0.08);
163
+ }
164
+
165
+ .cm-mirror-pane__model-icon-box svg {
166
+ width: 1.2rem;
167
+ height: 1.2rem;
92
168
  }
93
169
 
94
170
  .cm-mirror-pane__model-copy {
95
- min-width: 0;
96
171
  flex: 1;
172
+ min-width: 0;
173
+ display: grid;
174
+ gap: 0.25rem;
175
+ }
176
+
177
+ .cm-mirror-pane__model-name-row {
178
+ display: flex;
179
+ align-items: center;
180
+ gap: 0.5rem;
181
+ min-width: 0;
182
+ flex-wrap: wrap;
97
183
  }
98
184
 
99
185
  .cm-mirror-pane__model-name {
100
- font-weight: 600;
186
+ min-width: 0;
187
+ margin: 0;
101
188
  color: hsl(var(--foreground));
102
- white-space: nowrap;
103
- overflow: hidden;
104
- text-overflow: ellipsis;
105
- font-size: 14px;
189
+ font-family: var(--font-display), sans-serif;
190
+ font-size: clamp(0.98rem, 4cqi, 1.14rem);
191
+ font-weight: 800;
192
+ line-height: 1.08;
193
+ overflow-wrap: anywhere;
106
194
  }
107
195
 
108
- @media (min-width: 768px) {
109
- .cm-mirror-pane__model-name {
110
- font-size: 16px;
111
- }
196
+ .cm-mirror-pane__model-types {
197
+ display: inline-flex;
198
+ align-items: center;
199
+ gap: 0.3rem;
200
+ flex-wrap: wrap;
112
201
  }
113
202
 
114
- .cm-mirror-pane__model-provider {
115
- font-size: 12px;
203
+ .cm-mirror-pane__badge {
204
+ display: inline-flex;
205
+ align-items: center;
206
+ min-height: 1.35rem;
207
+ border: 1px solid hsl(var(--primary) / 0.18);
208
+ border-radius: 999px;
209
+ background: hsl(var(--primary) / 0.08);
210
+ color: hsl(var(--primary));
211
+ padding: 0 0.45rem;
212
+ font-family: var(--font-mono), monospace;
213
+ font-size: 0.6rem;
214
+ font-weight: 700;
215
+ letter-spacing: 0.06em;
216
+ text-transform: uppercase;
217
+ }
218
+
219
+ .cm-mirror-pane__badge[data-tone="fuchsia"] {
220
+ border-color: hsl(var(--accent) / 0.24);
221
+ background: hsl(var(--accent) / 0.1);
222
+ color: hsl(var(--accent));
223
+ }
224
+
225
+ .cm-mirror-pane__badge[data-tone="green"] {
226
+ border-color: hsl(142 71% 45% / 0.28);
227
+ background: hsl(142 71% 45% / 0.1);
228
+ color: hsl(142 71% 55%);
229
+ }
230
+
231
+ .cm-mirror-pane__badge[data-tone="warning"] {
232
+ border-color: hsl(42 100% 48% / 0.28);
233
+ background: hsl(42 100% 48% / 0.1);
234
+ color: hsl(42 100% 58%);
235
+ }
236
+
237
+ .cm-mirror-pane__badge[data-tone="danger"] {
238
+ border-color: hsl(var(--destructive) / 0.3);
239
+ background: hsl(var(--destructive) / 0.12);
240
+ color: hsl(var(--destructive));
241
+ }
242
+
243
+ .cm-mirror-pane__model-provider,
244
+ .cm-mirror-pane__model-id {
245
+ margin: 0;
116
246
  color: hsl(var(--muted-foreground));
117
- white-space: nowrap;
118
- overflow: hidden;
119
- text-overflow: ellipsis;
247
+ font-family: var(--font-mono), monospace;
248
+ font-size: 0.72rem;
249
+ line-height: 1.35;
250
+ overflow-wrap: anywhere;
251
+ }
252
+
253
+ .cm-mirror-pane__model-id {
254
+ color: hsl(var(--primary) / 0.72);
255
+ }
256
+
257
+ .cm-mirror-pane__description,
258
+ .cm-mirror-pane__description--clamped,
259
+ .cm-mirror-pane__section,
260
+ .cm-mirror-pane__pricing-compact,
261
+ .cm-mirror-pane__pricing-block,
262
+ .cm-mirror-pane__tool-group,
263
+ .cm-mirror-pane__no-params,
264
+ .cm-mirror-pane__text-area,
265
+ .cm-mirror-pane__field {
266
+ border: 1px solid hsl(var(--primary) / 0.12);
267
+ border-radius: 12px;
268
+ background: hsl(221 50% 9% / 0.3);
269
+ }
270
+
271
+ .cm-mirror-pane__description,
272
+ .cm-mirror-pane__description--clamped {
273
+ padding: 0.75rem;
274
+ color: hsl(var(--muted-foreground));
275
+ line-height: 1.5;
120
276
  }
121
277
 
122
- /* Section panel */
123
278
  .cm-mirror-pane__section {
124
- border-radius: 2px;
125
- border: 1px solid hsl(var(--sidebar-border));
126
- background: hsl(var(--background) / 0.3);
127
- padding: 12px;
128
279
  display: flex;
129
280
  flex-direction: column;
130
- gap: 12px;
281
+ gap: 0.6rem;
282
+ min-width: 0;
131
283
  }
132
284
 
133
- .cm-mirror-pane__section-label {
134
- font-size: 11px;
135
- text-transform: uppercase;
136
- letter-spacing: 0.06em;
285
+ .cm-mirror-pane__section--compact {
286
+ padding: 0.75rem;
287
+ }
288
+
289
+ .cm-mirror-pane__section-label,
290
+ .cm-mirror-pane__tool-group-label {
137
291
  color: hsl(var(--muted-foreground));
292
+ font-family: var(--font-mono), monospace;
293
+ font-size: 0.68rem;
294
+ font-weight: 800;
295
+ letter-spacing: 0.1em;
296
+ text-transform: uppercase;
138
297
  }
139
298
 
140
- /* Key-value rows */
141
- .cm-mirror-pane__kv-row {
299
+ .cm-mirror-pane__io-row,
300
+ .cm-mirror-pane__kv-row,
301
+ .cm-mirror-pane__pricing-header,
302
+ .cm-mirror-pane__tool-toggle {
142
303
  display: flex;
143
304
  align-items: center;
144
305
  justify-content: space-between;
145
- gap: 12px;
146
- font-family: var(--font-mono, monospace);
306
+ gap: 0.75rem;
307
+ min-width: 0;
147
308
  }
148
309
 
310
+ .cm-mirror-pane__io-row {
311
+ align-items: flex-start;
312
+ }
313
+
314
+ .cm-mirror-pane__io-label,
149
315
  .cm-mirror-pane__kv-label {
316
+ flex: 0 0 auto;
150
317
  color: hsl(var(--muted-foreground));
318
+ font-family: var(--font-mono), monospace;
319
+ font-size: 0.7rem;
320
+ }
321
+
322
+ .cm-mirror-pane__io-badges,
323
+ .cm-mirror-pane__kv-grid,
324
+ .cm-mirror-pane__pricing-entries,
325
+ .cm-mirror-pane__custom-content,
326
+ .cm-mirror-pane__custom-section {
327
+ display: flex;
328
+ flex-direction: column;
329
+ gap: 0.45rem;
330
+ min-width: 0;
331
+ }
332
+
333
+ .cm-mirror-pane__io-badges {
334
+ flex-direction: row;
335
+ flex-wrap: wrap;
151
336
  }
152
337
 
153
338
  .cm-mirror-pane__kv-value {
339
+ min-width: 0;
154
340
  color: hsl(var(--foreground));
341
+ font-family: var(--font-mono), monospace;
342
+ font-size: 0.74rem;
155
343
  text-align: right;
344
+ overflow-wrap: anywhere;
156
345
  }
157
346
 
158
- /* Pricing sub-panel */
159
- .cm-mirror-pane__pricing-block {
160
- border-radius: 2px;
161
- border: 1px solid hsl(var(--sidebar-border));
162
- background: hsl(var(--background) / 0.4);
163
- padding: 8px;
347
+ .cm-mirror-pane__pricing-compact,
348
+ .cm-mirror-pane__pricing-block,
349
+ .cm-mirror-pane__tool-group {
164
350
  display: flex;
165
351
  flex-direction: column;
166
- gap: 6px;
352
+ gap: 0.45rem;
353
+ padding: 0.62rem 0.7rem;
167
354
  }
168
355
 
169
- .cm-mirror-pane__pricing-header {
170
- display: flex;
171
- align-items: center;
172
- justify-content: space-between;
173
- gap: 12px;
356
+ .cm-mirror-pane__pricing-unit {
357
+ color: hsl(var(--muted-foreground) / 0.72);
358
+ font-family: var(--font-mono), monospace;
359
+ font-size: 0.64rem;
360
+ letter-spacing: 0.08em;
361
+ text-transform: uppercase;
174
362
  }
175
363
 
176
364
  .cm-mirror-pane__pricing-name {
177
- font-family: var(--font-mono, monospace);
178
- color: hsl(var(--primary));
179
- }
180
-
181
- /* Description block */
182
- .cm-mirror-pane__description {
183
- border-radius: 2px;
184
- border: 1px solid hsl(var(--sidebar-border));
185
- background: hsl(var(--background) / 0.3);
186
- padding: 12px;
187
- color: hsl(var(--muted-foreground));
188
- line-height: 1.6;
365
+ color: hsl(var(--accent));
366
+ font-family: var(--font-mono), monospace;
367
+ font-weight: 700;
189
368
  }
190
369
 
191
- /* Settings: tool group */
192
370
  .cm-mirror-pane__tool-group {
193
- border-radius: 2px;
194
- border: 1px solid hsl(var(--primary) / 0.2);
371
+ border-color: hsl(var(--primary) / 0.18);
195
372
  background: hsl(var(--primary) / 0.05);
196
- padding: 12px;
197
- display: flex;
198
- flex-direction: column;
199
- gap: 12px;
200
373
  }
201
374
 
202
375
  .cm-mirror-pane__tool-group--fuchsia {
203
- border-color: hsl(var(--accent) / 0.2);
376
+ border-color: hsl(var(--accent) / 0.18);
204
377
  background: hsl(var(--accent) / 0.05);
205
378
  }
206
379
 
207
- .cm-mirror-pane__tool-group-label {
208
- font-size: 12px;
209
- font-family: var(--font-mono, monospace);
210
- }
211
-
212
- .cm-mirror-pane__tool-toggle {
213
- display: flex;
380
+ .cm-mirror-pane__tool-toggle-label {
381
+ display: inline-flex;
214
382
  align-items: center;
215
- justify-content: space-between;
383
+ gap: 0.42rem;
384
+ min-width: 0;
385
+ color: hsl(var(--foreground));
216
386
  }
217
387
 
218
- .cm-mirror-pane__tool-toggle-label {
219
- display: flex;
220
- align-items: center;
221
- gap: 8px;
222
- font-size: 14px;
388
+ .cm-mirror-pane__tool-toggle-label svg,
389
+ .cm-mirror-pane__tool-toggle-label-icon {
390
+ width: 1rem;
391
+ height: 1rem;
392
+ flex: 0 0 auto;
223
393
  }
224
394
 
225
- /* Empty state */
226
- .cm-mirror-pane__empty {
227
- padding: 16px 20px;
228
- display: flex;
229
- flex-direction: column;
230
- align-items: center;
231
- justify-content: center;
232
- flex: 1;
233
- text-align: center;
395
+ .cm-mirror-pane__text-area {
396
+ width: 100%;
397
+ min-height: 7rem;
398
+ padding: 0.72rem;
399
+ color: hsl(var(--foreground));
400
+ font-family: var(--font-mono), monospace;
401
+ font-size: 0.78rem;
402
+ resize: vertical;
234
403
  }
235
404
 
236
- .cm-mirror-pane__empty-icon {
237
- width: 40px;
238
- height: 40px;
239
- color: hsl(var(--muted-foreground) / 0.4);
240
- margin-bottom: 12px;
405
+ .cm-mirror-pane__field {
406
+ width: 100%;
407
+ min-height: 2.45rem;
408
+ color: hsl(var(--foreground));
409
+ font-family: var(--font-mono), monospace;
410
+ font-size: 0.78rem;
241
411
  }
242
412
 
243
- .cm-mirror-pane__empty-text {
244
- font-size: 14px;
245
- color: hsl(var(--muted-foreground) / 0.7);
413
+ .cm-mirror-pane__field:focus,
414
+ .cm-mirror-pane__field:focus-visible,
415
+ .cm-mirror-pane__text-area:focus,
416
+ .cm-mirror-pane__text-area:focus-visible {
417
+ outline: none;
418
+ border-color: hsl(var(--primary) / 0.5);
419
+ box-shadow: 0 0 0 1px hsl(var(--primary) / 0.16);
246
420
  }
247
421
 
248
- /* No-params state */
422
+ .cm-mirror-pane__param-description,
249
423
  .cm-mirror-pane__no-params {
250
- border-radius: 2px;
251
- border: 1px solid hsl(var(--sidebar-border));
252
- background: hsl(var(--background) / 0.3);
253
- padding: 16px;
254
- font-size: 14px;
255
424
  color: hsl(var(--muted-foreground));
425
+ font-size: 0.78rem;
426
+ line-height: 1.4;
427
+ }
428
+
429
+ .cm-mirror-pane__no-params {
430
+ padding: 1rem;
431
+ text-align: center;
432
+ }
433
+
434
+ @container (max-width: 22rem) {
435
+ .cm-mirror-pane__io-row,
436
+ .cm-mirror-pane__kv-row,
437
+ .cm-mirror-pane__pricing-header,
438
+ .cm-mirror-pane__tool-toggle {
439
+ align-items: flex-start;
440
+ flex-direction: column;
441
+ gap: 0.35rem;
442
+ }
443
+
444
+ .cm-mirror-pane__kv-value {
445
+ text-align: left;
446
+ }
447
+ }
448
+
449
+ @media (prefers-reduced-motion: reduce) {
450
+ .cm-mirror-pane__toolbar-btn {
451
+ transition-duration: 0.01ms !important;
452
+ }
256
453
  }
257
454
  `;
258
455
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/mirror/styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2PrC,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/mirror/styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgcrC,CAAC"}
@@ -8,6 +8,15 @@ export interface SessionSummaryRow {
8
8
  label: React.ReactNode;
9
9
  value: React.ReactNode;
10
10
  }
11
+ export interface SessionBudgetInputProps {
12
+ value: string;
13
+ onChange: (value: string) => void;
14
+ placeholder?: string;
15
+ inputMode?: React.HTMLAttributes<HTMLInputElement>["inputMode"];
16
+ prefix?: React.ReactNode;
17
+ suffix?: React.ReactNode;
18
+ description?: React.ReactNode;
19
+ }
11
20
  export interface SessionManageKey {
12
21
  id: string;
13
22
  title: React.ReactNode;
@@ -44,6 +53,7 @@ export interface SessionBudgetDialogShellProps {
44
53
  subtitle?: React.ReactNode;
45
54
  titleIcon?: React.ReactNode;
46
55
  budgetLabel?: React.ReactNode;
56
+ budgetInput?: SessionBudgetInputProps;
47
57
  durationLabel?: React.ReactNode;
48
58
  durationIcon?: React.ReactNode;
49
59
  budgetChoices: SessionChoice[];
@@ -106,8 +116,10 @@ export interface ComposeKeyDialogShellProps {
106
116
  copiedIcon?: React.ReactNode;
107
117
  closeLabel?: React.ReactNode;
108
118
  }
109
- export declare function SessionIndicatorShell({ active, budgetLabel, expiresLabel, mobileBudgetLabel, startLabel, activeLabel, leadingIcon, trailingIcon, manageIcon, manageLabel, keyIcon, keyLabel, onStart, onOpenManage, onOpenKey, className, }: SessionIndicatorShellProps): import("react/jsx-runtime").JSX.Element;
110
- export declare function SessionBudgetDialogShell({ open, title, subtitle, titleIcon, budgetLabel, durationLabel, durationIcon, budgetChoices, durationChoices, summaryRows, error, onClose, onSubmit, submitting, submitLabel, submittingLabel, cancelLabel, }: SessionBudgetDialogShellProps): import("react/jsx-runtime").JSX.Element;
111
- export declare function SessionManageDialogShell({ open, title, subtitle, titleIcon, currentSessionTitle, currentSessionIcon, currentSessionRows, sectionLabel, newKeyLabel, newKeyIcon, loading, loadingLabel, emptyState, keys, onClose, onCreateKey, }: SessionManageDialogShellProps): import("react/jsx-runtime").JSX.Element;
112
- export declare function ComposeKeyDialogShell({ open, title, subtitle, titleIcon, keyName, keyNameLabel, keyNamePlaceholder, onKeyNameChange, summaryRows, generatedKey, warning, usageLabel, usageValue, onClose, onGenerate, generating, generateLabel, generatingLabel, onCopy, copied, copyLabel, copiedLabel, copyIcon, copiedIcon, closeLabel, }: ComposeKeyDialogShellProps): import("react/jsx-runtime").JSX.Element;
119
+ export declare function parseUsdcBudgetInput(value: string): bigint | null;
120
+ export declare function formatUsdcBudgetInput(value: bigint | number | string): string;
121
+ export declare function SessionIndicatorShell({ active, budgetLabel, expiresLabel, mobileBudgetLabel, startLabel, activeLabel, leadingIcon, trailingIcon, manageIcon, manageLabel, keyIcon, keyLabel, onStart, onOpenManage, onOpenKey, className, }: SessionIndicatorShellProps): React.JSX.Element;
122
+ export declare function SessionBudgetDialogShell({ open, title, subtitle, titleIcon, budgetLabel, budgetInput, durationLabel, durationIcon, budgetChoices, durationChoices, summaryRows, error, onClose, onSubmit, submitting, submitLabel, submittingLabel, cancelLabel, }: SessionBudgetDialogShellProps): React.JSX.Element;
123
+ export declare function SessionManageDialogShell({ open, title, subtitle, titleIcon, currentSessionTitle, currentSessionIcon, currentSessionRows, sectionLabel, newKeyLabel, newKeyIcon, loading, loadingLabel, emptyState, keys, onClose, onCreateKey, }: SessionManageDialogShellProps): React.JSX.Element;
124
+ export declare function ComposeKeyDialogShell({ open, title, subtitle, titleIcon, keyName, keyNameLabel, keyNamePlaceholder, onKeyNameChange, summaryRows, generatedKey, warning, usageLabel, usageValue, onClose, onGenerate, generating, generateLabel, generatingLabel, onCopy, copied, copyLabel, copiedLabel, copyIcon, copiedIcon, closeLabel, }: ComposeKeyDialogShellProps): React.JSX.Element;
113
125
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.tsx"],"names":[],"mappings":"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"}