anentrypoint-design 0.0.296 → 0.0.298
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/app-shell.css +11 -6
- package/chat.css +21 -20
- package/dist/247420.css +64 -54
- package/dist/247420.js +14 -14
- package/package.json +1 -1
- package/src/components/agent-chat.js +13 -8
- package/src/components/sessions.js +2 -2
- package/src/components/shell.js +1 -1
package/app-shell.css
CHANGED
|
@@ -590,7 +590,7 @@ body.canvas-host { background: transparent !important; }
|
|
|
590
590
|
.glyph {
|
|
591
591
|
display: inline-flex; align-items: center; justify-content: center;
|
|
592
592
|
width: 18px; height: 18px;
|
|
593
|
-
font-family: var(--ff-mono); font-size:
|
|
593
|
+
font-family: var(--ff-mono); font-size: var(--fs-tiny);
|
|
594
594
|
opacity: 0.8;
|
|
595
595
|
}
|
|
596
596
|
|
|
@@ -685,7 +685,7 @@ a.row:hover, button.row:hover, .row[role="button"]:hover {
|
|
|
685
685
|
font-family: var(--ff-mono);
|
|
686
686
|
font-size: var(--fs-sm);
|
|
687
687
|
line-height: var(--lh-snug);
|
|
688
|
-
margin-top:
|
|
688
|
+
margin-top: var(--space-2);
|
|
689
689
|
padding: 10px 12px;
|
|
690
690
|
background: var(--bg);
|
|
691
691
|
border-radius: var(--r-1);
|
|
@@ -1159,7 +1159,7 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
1159
1159
|
|
|
1160
1160
|
/* Field char counter (TextField maxLength) */
|
|
1161
1161
|
.ds-field-count {
|
|
1162
|
-
font-size: var(--fs-tiny,
|
|
1162
|
+
font-size: var(--fs-tiny, 13px);
|
|
1163
1163
|
color: var(--fg-3, var(--fg-2));
|
|
1164
1164
|
text-align: right;
|
|
1165
1165
|
}
|
|
@@ -1607,7 +1607,11 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
1607
1607
|
Shared by FileRow/FileCell (.is-marked) and the file/session select-all +
|
|
1608
1608
|
SessionCard select (aria-checked true/mixed) since the bundle concatenates
|
|
1609
1609
|
all CSS. Replaces the old [x]/[ ] bracket text - no glyphs, AT keeps the
|
|
1610
|
-
role=checkbox/aria-checked name+state.
|
|
1610
|
+
role=checkbox/aria-checked name+state.
|
|
1611
|
+
See also .ds-check in editor-primitives.css — a separate native-input
|
|
1612
|
+
checkbox family for form/settings contexts; intentionally distinct
|
|
1613
|
+
rendering (native vs CSS-drawn), do not let one drift toward the other
|
|
1614
|
+
by accident. */
|
|
1611
1615
|
.ds-check-box {
|
|
1612
1616
|
width: 15px; height: 15px; box-sizing: border-box; flex: 0 0 auto; position: relative;
|
|
1613
1617
|
border: 1.5px solid var(--fg-3); border-radius: var(--r-0);
|
|
@@ -1758,7 +1762,7 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
1758
1762
|
/* Stage — the scrollable content column. */
|
|
1759
1763
|
.ds-file-stage {
|
|
1760
1764
|
display: flex; flex-direction: column; gap: var(--space-3);
|
|
1761
|
-
width: 100%; max-width:
|
|
1765
|
+
width: 100%; max-width: var(--measure-wide); margin: 0 auto;
|
|
1762
1766
|
padding: var(--space-2) var(--space-3) var(--space-4);
|
|
1763
1767
|
}
|
|
1764
1768
|
/* When the stage is the app-main child, the shell already supplies top
|
|
@@ -1767,7 +1771,7 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
1767
1771
|
.app-main .ds-file-stage { padding-top: 0; }
|
|
1768
1772
|
|
|
1769
1773
|
/* Full-width files stack: the stage's space-3 vertical beat without its
|
|
1770
|
-
|
|
1774
|
+
--measure-wide cap/auto-margins, so the roots / toolbar / bulkbar / uploads / grid
|
|
1771
1775
|
bands keep one consistent rhythm instead of touching edge-to-edge. Carries
|
|
1772
1776
|
the same side/bottom padding as .ds-file-stage (top collapses the same way
|
|
1773
1777
|
when mounted directly under .app-main, which already supplies top padding)
|
|
@@ -2711,6 +2715,7 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
2711
2715
|
.ds-select {
|
|
2712
2716
|
width: 100%;
|
|
2713
2717
|
min-width: 0;
|
|
2718
|
+
min-height: 32px; /* shared control floor with .btn/.btn-primary/.btn-ghost */
|
|
2714
2719
|
padding: 10px 30px 10px 14px; /* right gap clears the chevron */
|
|
2715
2720
|
background: var(--bg-2);
|
|
2716
2721
|
border: 0;
|
package/chat.css
CHANGED
|
@@ -151,7 +151,7 @@
|
|
|
151
151
|
}
|
|
152
152
|
.agentchat-jump.show { display: inline-flex; }
|
|
153
153
|
.agentchat-jump:hover { background: var(--bg-3); }
|
|
154
|
-
.agentchat-jump:focus-visible { outline:
|
|
154
|
+
.agentchat-jump:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: var(--focus-offset); }
|
|
155
155
|
|
|
156
156
|
/* Streaming caret: a thin blinking bar at the live edge of an assistant turn. */
|
|
157
157
|
.chat-stream-caret {
|
|
@@ -173,7 +173,7 @@
|
|
|
173
173
|
}
|
|
174
174
|
.chat-msg-action-label { font-size: var(--fs-tiny); }
|
|
175
175
|
.chat-msg-action:hover { background: var(--bg-2); color: var(--fg); }
|
|
176
|
-
.chat-msg-action:focus-visible { outline:
|
|
176
|
+
.chat-msg-action:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; opacity: 1; }
|
|
177
177
|
|
|
178
178
|
/* Empty state: a fresh thread is an invitation, not a void. */
|
|
179
179
|
.agentchat-empty {
|
|
@@ -207,7 +207,7 @@
|
|
|
207
207
|
color: var(--fg-2, var(--fg));
|
|
208
208
|
}
|
|
209
209
|
.agentchat-empty-suggestion:hover, .chat-empty-suggestion:hover { background: color-mix(in srgb, var(--accent, var(--fg)) 12%, transparent); }
|
|
210
|
-
.agentchat-empty-suggestion:focus-visible, .chat-empty-suggestion:focus-visible { outline: 2px solid var(--accent, var(--fg)); outline-offset:
|
|
210
|
+
.agentchat-empty-suggestion:focus-visible, .chat-empty-suggestion:focus-visible { outline: 2px solid var(--accent, var(--fg)); outline-offset: var(--focus-offset); }
|
|
211
211
|
|
|
212
212
|
/* Guided install path in the empty state: copy line + monospaced command rows
|
|
213
213
|
(each with its own copy button) + a recheck button. No animation. */
|
|
@@ -240,7 +240,7 @@
|
|
|
240
240
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
241
241
|
}
|
|
242
242
|
.agentchat-install-copy:hover { background: var(--bg-3); color: var(--fg); }
|
|
243
|
-
.agentchat-install-copy:focus-visible { outline:
|
|
243
|
+
.agentchat-install-copy:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
244
244
|
.agentchat-install-actions { display: flex; justify-content: flex-start; }
|
|
245
245
|
|
|
246
246
|
/* Host-supplied transcript export actions riding the controls row. */
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
252
252
|
}
|
|
253
253
|
.agentchat-export-act:hover { background: var(--bg-2); color: var(--fg); }
|
|
254
|
-
.agentchat-export-act:focus-visible { outline:
|
|
254
|
+
.agentchat-export-act:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
255
255
|
|
|
256
256
|
/* "working" tail: a long silent tool call shouldn't read as frozen. */
|
|
257
257
|
.agentchat-working {
|
|
@@ -382,7 +382,7 @@
|
|
|
382
382
|
/* Rail filter uses the shared .ds-search-input primitive (provides bg/border/
|
|
383
383
|
radius/focus-ring); only the rail layout + touch floor live here. */
|
|
384
384
|
.ds-session-head .ds-search-input { order: 1; flex: 1 1 auto; min-width: 0; min-height: 36px; padding: 0 10px; }
|
|
385
|
-
.ds-session-new:focus-visible { outline:
|
|
385
|
+
.ds-session-new:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: var(--focus-offset); }
|
|
386
386
|
/* Touch floor (must FOLLOW the base rules - same specificity, order decides). */
|
|
387
387
|
@media (pointer: coarse) {
|
|
388
388
|
.ds-session-new { width: 44px; min-height: 44px; }
|
|
@@ -401,7 +401,7 @@
|
|
|
401
401
|
cursor: pointer; text-align: left; color: var(--fg);
|
|
402
402
|
}
|
|
403
403
|
.ds-session-row:hover { background: var(--bg-2); }
|
|
404
|
-
.ds-session-row:focus-visible { outline:
|
|
404
|
+
.ds-session-row:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: calc(var(--focus-offset) * -1); }
|
|
405
405
|
.ds-session-row.active { background: var(--accent-tint); box-shadow: inset 2px 0 0 var(--accent); }
|
|
406
406
|
.ds-session-row.rail-green::before, .ds-session-row.rail-purple::before, .ds-session-row.rail-flame::before {
|
|
407
407
|
content: ''; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; border-radius: var(--r-hair);
|
|
@@ -495,7 +495,7 @@
|
|
|
495
495
|
}
|
|
496
496
|
.chat-code-block:hover .chat-code-copy, .chat-code-block:focus-within .chat-code-copy { opacity: 1; }
|
|
497
497
|
.chat-code-copy.is-copied { color: var(--accent-ink); border-color: var(--accent); }
|
|
498
|
-
.chat-code-copy:focus-visible { outline:
|
|
498
|
+
.chat-code-copy:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; opacity: 1; }
|
|
499
499
|
/* Head-placed copy (structured CodeNode + FilePreviewCode) is always visible. */
|
|
500
500
|
.chat-code-head .spread { flex: 1; }
|
|
501
501
|
.chat-code-copy-head { position: static; opacity: 1; }
|
|
@@ -590,7 +590,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
590
590
|
cursor: pointer; font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
591
591
|
}
|
|
592
592
|
.ds-dash-errors-toggle.active { background: var(--accent-tint); color: var(--fg); border-color: var(--accent); }
|
|
593
|
-
.ds-dash-errors-toggle:focus-visible { outline:
|
|
593
|
+
.ds-dash-errors-toggle:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
594
594
|
|
|
595
595
|
/* --- C3: per-card select checkbox. --- */
|
|
596
596
|
.ds-dash-select {
|
|
@@ -600,7 +600,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
600
600
|
font-family: var(--ff-mono); font-size: var(--fs-sm);
|
|
601
601
|
}
|
|
602
602
|
.ds-dash-select[aria-checked="true"] { color: var(--accent-ink); }
|
|
603
|
-
.ds-dash-select:focus-visible { outline:
|
|
603
|
+
.ds-dash-select:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
604
604
|
|
|
605
605
|
/* --- C5: active dashboard card (current conversation). --- */
|
|
606
606
|
.ds-dash-card.is-active { box-shadow: inset 2px 0 0 var(--accent); }
|
|
@@ -622,7 +622,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
622
622
|
|
|
623
623
|
/* --- E1: inline file preview pane (split view, non-modal). --- */
|
|
624
624
|
.ds-preview-pane { display: flex; flex-direction: column; min-height: 0; height: 100%; overflow: hidden; }
|
|
625
|
-
.ds-preview-pane:focus-visible { outline:
|
|
625
|
+
.ds-preview-pane:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: calc(var(--focus-offset) * -1); }
|
|
626
626
|
.ds-preview-pane .ds-preview-body { flex: 1; min-height: 0; overflow: auto; }
|
|
627
627
|
.ds-preview-pane-empty { align-items: center; justify-content: center; color: var(--fg-3); font-size: var(--fs-sm); }
|
|
628
628
|
.ds-preview-code-wrap { display: flex; flex-direction: column; min-height: 0; }
|
|
@@ -639,7 +639,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
639
639
|
border-radius: var(--r-1); background: var(--bg-2); color: var(--fg-2); cursor: pointer;
|
|
640
640
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
641
641
|
}
|
|
642
|
-
.ds-file-more-btn:focus-visible { outline:
|
|
642
|
+
.ds-file-more-btn:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
643
643
|
/* --- D3: locked/no-access file row. --- */
|
|
644
644
|
.ds-file-row.is-locked { opacity: .6; }
|
|
645
645
|
|
|
@@ -652,7 +652,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
652
652
|
}
|
|
653
653
|
.ds-roots-tab:hover { background: var(--bg-2); color: var(--fg); }
|
|
654
654
|
.ds-roots-tab.active { background: var(--bg); color: var(--fg); }
|
|
655
|
-
.ds-roots-tab:focus-visible { outline:
|
|
655
|
+
.ds-roots-tab:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
656
656
|
|
|
657
657
|
/* --- H4: touch targets. On a coarse pointer / narrow screen the hover-revealed
|
|
658
658
|
action rows are made permanently visible and small controls floor to 44px so
|
|
@@ -660,6 +660,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
660
660
|
@media (pointer: coarse), (max-width: 640px) {
|
|
661
661
|
.chat-msg-actions { opacity: 1; }
|
|
662
662
|
.chat-code-copy { opacity: 1; }
|
|
663
|
+
.chat-tool-copy { opacity: 1; min-width: 44px; min-height: 44px; }
|
|
663
664
|
.chat-msg-action { min-width: 44px; height: 44px; }
|
|
664
665
|
.ds-dash-select { min-width: 44px; min-height: 44px; }
|
|
665
666
|
.ds-file-more-btn, .ds-roots-tab, .ds-dash-errors-toggle { min-height: 44px; }
|
|
@@ -684,7 +685,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
684
685
|
color: var(--fg-3); font-family: var(--ff-body); font-size: var(--fs-micro);
|
|
685
686
|
}
|
|
686
687
|
.ds-session-meta-copy:hover { background: var(--bg-3); color: var(--fg); }
|
|
687
|
-
.ds-session-meta-copy:focus-visible { outline:
|
|
688
|
+
.ds-session-meta-copy:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
688
689
|
@media (pointer: coarse), (max-width: 640px) {
|
|
689
690
|
.ds-session-meta-copy { min-height: 44px; min-width: 44px; }
|
|
690
691
|
}
|
|
@@ -712,7 +713,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
712
713
|
}
|
|
713
714
|
|
|
714
715
|
/* Drag-over ring: token accent, never a hex. */
|
|
715
|
-
.chat-composer.dragover { outline:
|
|
716
|
+
.chat-composer.dragover { outline: var(--focus-w) solid var(--focus-color); outline-offset: calc(var(--focus-offset) * -1); border-radius: var(--r-2); }
|
|
716
717
|
|
|
717
718
|
/* Per-bit composer context: only the bit that owns a control is a button. */
|
|
718
719
|
.chat-composer-context-bit {
|
|
@@ -753,7 +754,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
753
754
|
font-family: var(--ff-body); font-size: var(--fs-tiny);
|
|
754
755
|
}
|
|
755
756
|
.agentchat-earlier-btn:hover { background: var(--bg-2); color: var(--fg); }
|
|
756
|
-
.agentchat-earlier-btn:focus-visible { outline:
|
|
757
|
+
.agentchat-earlier-btn:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
757
758
|
@media (pointer: coarse) {
|
|
758
759
|
.agentchat-earlier-btn { min-height: 44px; }
|
|
759
760
|
}
|
|
@@ -861,7 +862,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
861
862
|
}
|
|
862
863
|
.chat-msg .chat-tool .chat-tool-head::-webkit-details-marker { display: none; }
|
|
863
864
|
.chat-msg .chat-tool .chat-tool-head:hover { background: var(--bg-2); }
|
|
864
|
-
.chat-msg .chat-tool .chat-tool-head:focus-visible { outline:
|
|
865
|
+
.chat-msg .chat-tool .chat-tool-head:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: calc(var(--focus-offset) * -1); }
|
|
865
866
|
.chat-tool-icon { display: inline-flex; color: var(--fg-3); }
|
|
866
867
|
.chat-tool-name { font-family: var(--ff-mono); font-weight: 600; color: var(--fg); }
|
|
867
868
|
.chat-tool-label { color: var(--fg-3); font-size: var(--fs-tiny); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
|
|
@@ -888,7 +889,7 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
888
889
|
.chat-tool-section-label { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); font-size: var(--fs-tiny); font-weight: 600; text-transform: uppercase; letter-spacing: var(--tr-caps); color: var(--fg-3); }
|
|
889
890
|
.chat-tool-copy { position: static; opacity: 0; }
|
|
890
891
|
.chat-tool-section:hover .chat-tool-copy, .chat-tool-section:focus-within .chat-tool-copy { opacity: 1; }
|
|
891
|
-
.chat-tool-copy:focus-visible { outline:
|
|
892
|
+
.chat-tool-copy:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; opacity: 1; }
|
|
892
893
|
.chat-tool-pre { margin: 0; padding: var(--space-2); background: var(--bg-2); border-radius: var(--r-1); font-family: var(--ff-mono); font-size: var(--fs-tiny); line-height: 1.45; overflow-x: auto; max-height: 320px; overflow-y: auto; }
|
|
893
894
|
.chat-tool-pre.is-error { color: var(--flame); }
|
|
894
895
|
.chat-tool-pre.chat-tool-empty { color: var(--fg-3); }
|
|
@@ -952,10 +953,10 @@ button.chat-composer-context:focus-visible { outline: var(--focus-w) solid var(-
|
|
|
952
953
|
.ds-dash-stream-disc { display: inline-flex; align-items: center; gap: var(--space-1); }
|
|
953
954
|
.ds-dash-selectall { display: inline-flex; align-items: center; gap: var(--space-1); font-size: var(--fs-tiny); color: var(--fg-2); cursor: pointer; background: none; border: none; padding: var(--space-1); }
|
|
954
955
|
.ds-dash-selectall:hover { color: var(--fg); }
|
|
955
|
-
.ds-dash-selectall:focus-visible { outline:
|
|
956
|
+
.ds-dash-selectall:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; }
|
|
956
957
|
.ds-dash-clear { background: none; border: none; color: var(--fg-3); cursor: pointer; font-size: var(--fs-tiny); text-decoration: underline dotted; padding: var(--space-1); }
|
|
957
958
|
.ds-dash-clear:hover { color: var(--fg); }
|
|
958
|
-
.ds-dash-clear:focus-visible { outline:
|
|
959
|
+
.ds-dash-clear:focus-visible { outline: var(--focus-w) solid var(--focus-color); outline-offset: 1px; border-radius: var(--r-1); }
|
|
959
960
|
|
|
960
961
|
/* Conversation-rail loading skeleton (cold ccsniff walk). */
|
|
961
962
|
.ds-session-row-skeleton { display: flex; flex-direction: column; gap: 6px; padding: var(--space-2) var(--space-3); }
|