codexmate 0.0.44 → 0.0.45

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.
@@ -427,6 +427,7 @@
427
427
  line-height: 1.55;
428
428
  max-height: min(32vh, 280px);
429
429
  overflow: auto;
430
+ animation: diffSlideIn var(--transition-normal) var(--ease-spring);
430
431
  }
431
432
 
432
433
 
@@ -497,3 +498,164 @@
497
498
  color: var(--color-error);
498
499
  opacity: 1;
499
500
  }
501
+
502
+ .btn-confirm-mini {
503
+ background: linear-gradient(135deg, var(--color-brand) 0%, var(--color-brand-dark) 100%);
504
+ color: white;
505
+ border: none;
506
+ box-shadow: 0 2px 4px rgba(210, 107, 90, 0.2);
507
+ }
508
+
509
+ .btn-confirm-mini:hover {
510
+ box-shadow: 0 4px 8px rgba(210, 107, 90, 0.25);
511
+ filter: brightness(1.05);
512
+ transform: translateY(-1px);
513
+ }
514
+
515
+ .prompts-editor {
516
+ margin-top: 12px;
517
+ flex: 1;
518
+ display: flex;
519
+ flex-direction: column;
520
+ min-height: 0;
521
+ }
522
+
523
+ .prompts-editor .form-group {
524
+ flex: 1;
525
+ display: flex;
526
+ flex-direction: column;
527
+ min-height: 0;
528
+ }
529
+
530
+ .prompts-editor .editor-frame {
531
+ min-height: 75vh;
532
+ }
533
+
534
+ .prompts-editor .template-editor {
535
+ min-height: 75vh;
536
+ max-height: none;
537
+ }
538
+
539
+ .prompts-editor-toolbar {
540
+ display: flex;
541
+ align-items: center;
542
+ justify-content: space-between;
543
+ gap: 12px;
544
+ margin-bottom: 8px;
545
+ }
546
+
547
+ .prompts-editor-toolbar .form-hint {
548
+ margin-top: 0;
549
+ }
550
+
551
+ .prompts-editor-actions {
552
+ display: flex;
553
+ gap: 6px;
554
+ flex-shrink: 0;
555
+ align-items: center;
556
+ }
557
+
558
+ .prompts-editor-group {
559
+ display: flex;
560
+ gap: 6px;
561
+ align-items: center;
562
+ }
563
+
564
+ .prompts-editor-group--secondary .btn-mini {
565
+ color: var(--color-text-tertiary);
566
+ border-color: transparent;
567
+ background: transparent;
568
+ box-shadow: none;
569
+ }
570
+
571
+ .prompts-editor-group--secondary .btn-mini:hover {
572
+ color: var(--color-brand);
573
+ background: var(--color-brand-light);
574
+ transform: none;
575
+ }
576
+
577
+ .prompts-editor-group--workflow {
578
+ margin-left: 4px;
579
+ padding-left: 10px;
580
+ border-left: 1px solid var(--color-border-soft);
581
+ }
582
+
583
+ .editor-frame {
584
+ position: relative;
585
+ border-radius: var(--radius-md);
586
+ border: 1.5px solid var(--color-border-soft);
587
+ transition: border-color var(--transition-fast) var(--ease-spring),
588
+ box-shadow var(--transition-normal) var(--ease-spring);
589
+ overflow: hidden;
590
+ }
591
+
592
+ .editor-frame:focus-within {
593
+ border-color: var(--color-brand);
594
+ box-shadow: var(--shadow-input-focus);
595
+ }
596
+
597
+ .editor-frame .form-input {
598
+ border: none;
599
+ border-radius: 0;
600
+ box-shadow: none;
601
+ }
602
+
603
+ .editor-frame .form-input:focus {
604
+ border-color: transparent;
605
+ box-shadow: none;
606
+ }
607
+
608
+ .editor-frame--loading .form-input {
609
+ opacity: 0;
610
+ }
611
+
612
+ .editor-skeleton {
613
+ position: absolute;
614
+ inset: 13px var(--spacing-sm);
615
+ display: flex;
616
+ flex-direction: column;
617
+ gap: 10px;
618
+ pointer-events: none;
619
+ }
620
+
621
+ .skeleton-line {
622
+ height: 13px;
623
+ border-radius: 4px;
624
+ background: linear-gradient(90deg, var(--color-border-soft) 25%, rgba(255, 255, 255, 0.6) 50%, var(--color-border-soft) 75%);
625
+ background-size: 200% 100%;
626
+ animation: shimmer 1.5s ease-in-out infinite;
627
+ }
628
+
629
+ .skeleton-line:nth-child(2) { width: 85%; }
630
+ .skeleton-line:nth-child(3) { width: 92%; }
631
+ .skeleton-line:nth-child(4) { width: 60%; }
632
+ .skeleton-line:nth-child(5) { width: 78%; }
633
+ .skeleton-line:nth-child(6) { width: 45%; }
634
+
635
+ @keyframes shimmer {
636
+ 0% { background-position: 200% 0; }
637
+ 100% { background-position: -200% 0; }
638
+ }
639
+
640
+ .prompts-context-hint {
641
+ margin-top: 6px;
642
+ font-size: var(--font-size-caption);
643
+ color: var(--color-text-muted);
644
+ opacity: 0.7;
645
+ transition: opacity var(--transition-fast);
646
+ line-height: 1.4;
647
+ }
648
+
649
+ .prompts-context-hint:hover {
650
+ opacity: 1;
651
+ }
652
+
653
+ .prompts-context-hint--warn {
654
+ color: #8d5b31;
655
+ opacity: 0.85;
656
+ }
657
+
658
+ @keyframes diffSlideIn {
659
+ from { opacity: 0; transform: translateY(-8px); }
660
+ to { opacity: 1; transform: translateY(0); }
661
+ }
@@ -184,6 +184,32 @@ textarea:focus-visible {
184
184
  gap: 6px;
185
185
  }
186
186
 
187
+ .mode-cards > .segmented-control {
188
+ flex-direction: row;
189
+ }
190
+
191
+ .prompts-editor-toolbar {
192
+ flex-direction: column;
193
+ align-items: flex-start;
194
+ gap: 8px;
195
+ }
196
+
197
+ .prompts-editor-actions {
198
+ width: 100%;
199
+ flex-wrap: wrap;
200
+ }
201
+
202
+ .template-editor,
203
+ .agents-diff-editor {
204
+ min-height: min(50vh, 400px);
205
+ max-height: min(56vh, 480px);
206
+ }
207
+
208
+ .prompts-editor .template-editor {
209
+ min-height: 60vh;
210
+ max-height: none;
211
+ }
212
+
187
213
  .status-strip {
188
214
  gap: 12px;
189
215
  }
@@ -216,6 +242,15 @@ textarea:focus-visible {
216
242
  grid-template-columns: 1fr;
217
243
  }
218
244
 
245
+ .usage-wave-container {
246
+ grid-template-columns: 28px 1fr;
247
+ padding: 16px 14px 16px 8px;
248
+ }
249
+
250
+ .usage-wave-ytick {
251
+ font-size: 9px;
252
+ }
253
+
219
254
  }
220
255
 
221
256
  @media (max-width: 540px) {
@@ -268,11 +303,6 @@ textarea:focus-visible {
268
303
  .btn-add,
269
304
  .btn-tool,
270
305
  .card-action-btn,
271
- .btn-session-export,
272
- .btn-session-open,
273
- .btn-session-clone,
274
- .btn-session-refresh,
275
- .btn-session-delete,
276
306
  .btn-icon,
277
307
  .session-item-copy {
278
308
  min-height: 44px;
@@ -280,6 +310,20 @@ textarea:focus-visible {
280
310
  padding-bottom: 12px;
281
311
  }
282
312
 
313
+ .btn-session-export,
314
+ .btn-session-open,
315
+ .btn-session-clone,
316
+ .btn-session-refresh,
317
+ .btn-session-delete {
318
+ width: 44px;
319
+ height: 44px;
320
+ }
321
+
322
+ .session-link-group .btn-session-open {
323
+ width: 44px;
324
+ height: 44px;
325
+ }
326
+
283
327
  .btn-icon,
284
328
  .session-item-copy {
285
329
  min-width: 36px;
@@ -446,6 +490,22 @@ textarea:focus-visible {
446
490
  .skills-root-box {
447
491
  font-size: 11px;
448
492
  }
493
+
494
+ .prompts-editor-actions .btn-mini {
495
+ min-height: 40px;
496
+ padding: 6px 12px;
497
+ }
498
+
499
+ .prompts-editor-toolbar {
500
+ flex-direction: column;
501
+ align-items: flex-start;
502
+ gap: 8px;
503
+ }
504
+
505
+ .prompts-editor-actions {
506
+ width: 100%;
507
+ flex-wrap: wrap;
508
+ }
449
509
  }
450
510
 
451
511
  @media (max-width: 820px) {
@@ -388,31 +388,33 @@
388
388
  .btn-session-open,
389
389
  .btn-session-clone,
390
390
  .btn-session-refresh {
391
+ display: inline-flex;
392
+ align-items: center;
393
+ justify-content: center;
394
+ width: 32px;
395
+ height: 32px;
396
+ padding: 0;
391
397
  border: 1px solid var(--color-border-soft);
392
398
  border-radius: var(--radius-md);
393
399
  background: var(--color-surface);
394
400
  color: var(--color-text-secondary);
395
- padding: 7px 12px;
396
- font-size: var(--font-size-secondary);
397
- font-weight: var(--font-weight-secondary);
398
401
  cursor: pointer;
399
402
  transition: all var(--transition-fast) var(--ease-spring);
400
- white-space: nowrap;
401
- letter-spacing: -0.01em;
402
403
  }
403
404
 
404
405
  .btn-session-delete {
406
+ display: inline-flex;
407
+ align-items: center;
408
+ justify-content: center;
409
+ width: 32px;
410
+ height: 32px;
411
+ padding: 0;
405
412
  border: 1px solid rgba(189, 70, 68, 0.4);
406
413
  border-radius: var(--radius-md);
407
414
  background: var(--color-surface);
408
415
  color: #b74545;
409
- padding: 7px 12px;
410
- font-size: var(--font-size-secondary);
411
- font-weight: var(--font-weight-secondary);
412
416
  cursor: pointer;
413
417
  transition: all var(--transition-fast) var(--ease-spring);
414
- white-space: nowrap;
415
- letter-spacing: -0.01em;
416
418
  }
417
419
 
418
420
  .btn-session-refresh:hover {
@@ -427,6 +429,39 @@
427
429
  transform: none;
428
430
  }
429
431
 
432
+ .btn-session-refresh svg,
433
+ .btn-session-delete svg,
434
+ .btn-session-export svg,
435
+ .btn-session-open svg {
436
+ width: 15px;
437
+ height: 15px;
438
+ flex-shrink: 0;
439
+ }
440
+
441
+ .session-link-group {
442
+ display: inline-flex;
443
+ border-radius: var(--radius-md);
444
+ border: 1px solid var(--color-border-soft);
445
+ overflow: hidden;
446
+ }
447
+
448
+ .session-link-group .btn-session-open {
449
+ border: none;
450
+ border-radius: 0;
451
+ }
452
+
453
+ .session-link-group .btn-session-open + .btn-session-open {
454
+ border-left: 1px solid var(--color-border-soft);
455
+ }
456
+
457
+ .session-link-group:hover {
458
+ border-color: var(--color-brand);
459
+ }
460
+
461
+ .session-link-group .btn-session-open:disabled {
462
+ opacity: 0.45;
463
+ }
464
+
430
465
  .btn-session-export:hover,
431
466
  .btn-session-open:hover {
432
467
  border-color: var(--color-brand);
@@ -264,8 +264,11 @@
264
264
 
265
265
  .usage-wave-container {
266
266
  margin-top: 16px;
267
- position: relative;
268
- padding: 20px;
267
+ display: grid;
268
+ grid-template-columns: 36px 1fr;
269
+ gap: 8px;
270
+ align-items: stretch;
271
+ padding: 20px 20px 20px 12px;
269
272
  border-radius: 18px;
270
273
  background: linear-gradient(135deg, rgba(255,255,255,0.8), rgba(252,248,241,0.6));
271
274
  border: 1px solid rgba(137, 111, 94, 0.06);
@@ -273,6 +276,27 @@
273
276
  backdrop-filter: blur(8px);
274
277
  }
275
278
 
279
+ .usage-wave-yaxis {
280
+ position: relative;
281
+ height: 150px;
282
+ }
283
+
284
+ .usage-wave-ytick {
285
+ position: absolute;
286
+ right: 0;
287
+ font-size: 10px;
288
+ font-weight: 500;
289
+ color: var(--color-text-muted);
290
+ line-height: 1;
291
+ transform: translateY(50%);
292
+ white-space: nowrap;
293
+ pointer-events: none;
294
+ }
295
+
296
+ .usage-wave-chart-area {
297
+ min-width: 0;
298
+ }
299
+
276
300
  .usage-wave-chart {
277
301
  width: 100%;
278
302
  height: 150px;
@@ -332,6 +356,11 @@
332
356
  transition: all 180ms var(--ease-spring);
333
357
  -webkit-tap-highlight-color: transparent;
334
358
  font-weight: 500;
359
+ appearance: none;
360
+ background: none;
361
+ border: none;
362
+ font-family: inherit;
363
+ line-height: inherit;
335
364
  }
336
365
 
337
366
  .usage-wave-label:hover {