typebulb 0.24.0 → 0.24.2
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/agents/claude/client.js +248 -248
- package/dist/agents/claude/styles.css +33 -0
- package/dist/agents/pi/client.js +167 -167
- package/dist/agents/pi/matchu-patchu.ts +1 -1
- package/dist/agents/pi/styles.css +33 -0
- package/dist/index.js +201 -201
- package/package.json +1 -1
|
@@ -2217,7 +2217,7 @@ var Patcher = class _Patcher {
|
|
|
2217
2217
|
|
|
2218
2218
|
// cli/agents/pi/server/piPatcherExtension.ts
|
|
2219
2219
|
var DESCRIPTION = true ? "Apply unified diffs to files \u2014 tolerant of form, strict about intent. Repairs sloppy AI-generated diffs (mangled headers, whitespace drift, missing prefixes; line numbers can be wrong or absent \u2014 hunks anchor by fuzzy-matched context lines) and applies all hunks atomically when the intent is unambiguous; fails with a precise, typed error when it isn't. Use for multi-hunk edits in one step, or when exact string-replacement editing fails on whitespace or invisible characters." : "Apply unified diffs to files.";
|
|
2220
|
-
var BUILD_TAG = true ? "matchu-patchu-pi 0.2.0, built 2026-07-
|
|
2220
|
+
var BUILD_TAG = true ? "matchu-patchu-pi 0.2.0, built 2026-07-12 21:55:42" : "matchu-patchu-pi dev";
|
|
2221
2221
|
var errorBlocks = (errors) => {
|
|
2222
2222
|
const parts = [`Patch failed with ${errors.length} error(s):`];
|
|
2223
2223
|
for (const e of errors) parts.push("", e.toString());
|
|
@@ -446,6 +446,9 @@ body {
|
|
|
446
446
|
jumps as the filtered list changes height; the row list scrolls inside the capped box, resting at
|
|
447
447
|
its end (newest-at-bottom) — same shape as the launcher's .servers-pop / .bulb-list. */
|
|
448
448
|
.picker-list { display: flex; flex-direction: column; gap: .15rem; flex: 1; min-height: 0; overflow-y: auto; padding-right: 4px; }
|
|
449
|
+
/* Positioned wrapper around just the list (not the filter) so the hover-peek card anchors to the
|
|
450
|
+
list's bottom edge, sitting above the filter input. */
|
|
451
|
+
.picker-body { position: relative; flex: 1; min-height: 0; display: flex; flex-direction: column; }
|
|
449
452
|
.picker-empty { padding: .8rem; color: var(--muted); font-size: .85rem; text-align: center; }
|
|
450
453
|
.picker-row {
|
|
451
454
|
display: flex;
|
|
@@ -491,6 +494,9 @@ body {
|
|
|
491
494
|
font-size: .72rem;
|
|
492
495
|
min-width: 2.6rem; text-align: right;
|
|
493
496
|
}
|
|
497
|
+
/* Unread cue (TB-Agent-Mirror-Ready.md): the row's time turns the launcher's running-:port green
|
|
498
|
+
(--fold-marker) when the session changed since the mirror opened and hasn't been viewed. */
|
|
499
|
+
.picker-time.unseen { color: var(--fold-marker); }
|
|
494
500
|
.picker-hits { color: var(--muted); font-size: .72rem; white-space: nowrap; }
|
|
495
501
|
/* Full-text result context: first matching turn, indented past the dot gutter into the title column. */
|
|
496
502
|
.picker-snippet {
|
|
@@ -505,6 +511,29 @@ body {
|
|
|
505
511
|
border-radius: 2px;
|
|
506
512
|
color: var(--fg);
|
|
507
513
|
}
|
|
514
|
+
/* Hover-peek (TB-Agent-Mirror-Ready.md): the session's last output, overlaid over the TOP of the
|
|
515
|
+
list — not a floating card but part of the menu, opaque over the rows it covers and set off from
|
|
516
|
+
the rows below by one thick divider. Stops at the left edge of the time column (right), so the
|
|
517
|
+
elapsed column stays an uninterrupted strip. The list rests newest-at-bottom, so a top overlay
|
|
518
|
+
rarely sits on the row being hovered. Out of flow (no reflow); pointer-events:none. */
|
|
519
|
+
.picker-peek {
|
|
520
|
+
position: absolute;
|
|
521
|
+
top: 0; left: 0; right: 3.4rem;
|
|
522
|
+
z-index: 5;
|
|
523
|
+
max-height: 18em;
|
|
524
|
+
overflow: hidden;
|
|
525
|
+
padding: .5rem .6rem .6rem;
|
|
526
|
+
border-radius: 8px 8px 0 0; /* top rounded to match the menu; bottom square where it meets the rows */
|
|
527
|
+
/* One veil step over the opaque panel — the mirror's nested-panel shade (a hair off the menu bg,
|
|
528
|
+
still opaque over the rows it covers). */
|
|
529
|
+
background: linear-gradient(var(--veil), var(--veil)), var(--panel);
|
|
530
|
+
border-bottom: 3px solid color-mix(in srgb, var(--fg) 35%, transparent);
|
|
531
|
+
color: var(--fg);
|
|
532
|
+
font-size: .8rem; line-height: 1.5;
|
|
533
|
+
overflow-wrap: anywhere;
|
|
534
|
+
pointer-events: none;
|
|
535
|
+
}
|
|
536
|
+
.picker-peek.muted { color: var(--muted); font-style: italic; }
|
|
508
537
|
|
|
509
538
|
/* Agent switcher (TB-Agent-Switcher.md) — reuses the .picker popover + rows; just its own width and
|
|
510
539
|
the no-key entry form. The active model is marked with .picker-row.current (the accent dot), like
|
|
@@ -1604,6 +1633,10 @@ html[data-theme="dark"] .masthead-logo.dark { display: block; }
|
|
|
1604
1633
|
/* The <summary> toggle defaults to a text cursor — give it the pointer every other expandable uses. */
|
|
1605
1634
|
.thinking summary { cursor: pointer; }
|
|
1606
1635
|
.thinking pre { white-space: pre-wrap; }
|
|
1636
|
+
/* Streaming (draft) thinking: capped + scrollable at the bulb-streaming card's height — ambient
|
|
1637
|
+
progress, not reading material — stuck to the live edge unless the user scrolls up
|
|
1638
|
+
(#draftThinkingPre). Durable rows stay uncapped: finished thinking IS reading material. */
|
|
1639
|
+
.draft .thinking pre { max-height: 220px; overflow-y: auto; }
|
|
1607
1640
|
|
|
1608
1641
|
/* Copy button: an .overlay-pill revealed on bubble-hover. */
|
|
1609
1642
|
.bubble:hover .copy { opacity: 1; }
|