9remote 2.1.6 → 2.1.7
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.
|
@@ -1028,6 +1028,9 @@ button {
|
|
|
1028
1028
|
.top-0\.5{
|
|
1029
1029
|
top: 0.125rem;
|
|
1030
1030
|
}
|
|
1031
|
+
.top-1\.5{
|
|
1032
|
+
top: 0.375rem;
|
|
1033
|
+
}
|
|
1031
1034
|
.top-1\/2{
|
|
1032
1035
|
top: 50%;
|
|
1033
1036
|
}
|
|
@@ -1637,6 +1640,9 @@ button {
|
|
|
1637
1640
|
.border-t-2{
|
|
1638
1641
|
border-top-width: 2px;
|
|
1639
1642
|
}
|
|
1643
|
+
.border-dashed{
|
|
1644
|
+
border-style: dashed;
|
|
1645
|
+
}
|
|
1640
1646
|
.border-border{
|
|
1641
1647
|
border-color: var(--border);
|
|
1642
1648
|
}
|
|
@@ -2311,7 +2317,7 @@ button {
|
|
|
2311
2317
|
.dot-bounce {
|
|
2312
2318
|
animation: dot-bounce 1s ease-in-out infinite;
|
|
2313
2319
|
}
|
|
2314
|
-
/* Terminal pane — fix xterm helpers overlay + focus glow (synced with web) */
|
|
2320
|
+
/* Terminal pane — fix xterm helpers overlay + focus glow (synced with web). */
|
|
2315
2321
|
.terminal-wrapper { overflow: hidden !important; }
|
|
2316
2322
|
.terminal-wrapper .xterm-viewport {
|
|
2317
2323
|
overflow-y: auto !important;
|
|
@@ -2326,25 +2332,25 @@ button {
|
|
|
2326
2332
|
border-radius: 3px;
|
|
2327
2333
|
}
|
|
2328
2334
|
.terminal-wrapper:hover .xterm-viewport::-webkit-scrollbar-thumb {
|
|
2329
|
-
background: rgba(
|
|
2335
|
+
background: rgba(128, 128, 128, 0.4);
|
|
2330
2336
|
}
|
|
2331
2337
|
.terminal-wrapper:hover .xterm-viewport::-webkit-scrollbar-thumb:hover {
|
|
2332
|
-
background: rgba(
|
|
2338
|
+
background: rgba(128, 128, 128, 0.8);
|
|
2333
2339
|
}
|
|
2334
2340
|
/* XTerm overlay scrollbar (JS-rendered div) — auto-hide: only .visible while scrolling/hovering. */
|
|
2335
2341
|
.terminal-wrapper .xterm .xterm-scrollable-element > .scrollbar {
|
|
2336
|
-
width:
|
|
2342
|
+
width: 5px !important;
|
|
2337
2343
|
opacity: 0 !important;
|
|
2338
2344
|
pointer-events: none !important;
|
|
2339
2345
|
transition: opacity 0.18s ease !important;
|
|
2340
2346
|
}
|
|
2341
2347
|
.terminal-wrapper .xterm .xterm-scrollable-element > .scrollbar .slider {
|
|
2342
|
-
width:
|
|
2343
|
-
border-radius:
|
|
2344
|
-
background: rgba(
|
|
2348
|
+
width: 5px !important;
|
|
2349
|
+
border-radius: 3px !important;
|
|
2350
|
+
background: rgba(128, 128, 128, 0.5) !important;
|
|
2345
2351
|
}
|
|
2346
2352
|
.terminal-wrapper .xterm .xterm-scrollable-element > .scrollbar .slider:hover {
|
|
2347
|
-
background: rgba(
|
|
2353
|
+
background: rgba(128, 128, 128, 0.8) !important;
|
|
2348
2354
|
}
|
|
2349
2355
|
/* Show overlay scrollbar only while xterm marks it .visible (scrolling / hovering track). */
|
|
2350
2356
|
.terminal-wrapper .xterm .xterm-scrollable-element > .scrollbar.visible {
|
|
@@ -2388,12 +2394,40 @@ button {
|
|
|
2388
2394
|
0%, 100% { opacity: 1; }
|
|
2389
2395
|
50% { opacity: 0.3; }
|
|
2390
2396
|
}
|
|
2397
|
+
/* AI agent status dots — idle/working/blocked/done (see lib/statusVisual.js) */
|
|
2398
|
+
/* KEEP IN SYNC with web/app/globals.css (separate build) */
|
|
2399
|
+
/* Working = spinning ring (border-top + border-right visible, others transparent). */
|
|
2400
|
+
.term-dot.pulse-soft {
|
|
2401
|
+
background: transparent !important;
|
|
2402
|
+
width: 0.6rem !important;
|
|
2403
|
+
height: 0.6rem !important;
|
|
2404
|
+
border: 2px solid rgba(59,130,246,0.25);
|
|
2405
|
+
border-top-color: #3b82f6;
|
|
2406
|
+
border-right-color: #3b82f6;
|
|
2407
|
+
animation: statusSpin 0.7s linear infinite;
|
|
2408
|
+
}
|
|
2409
|
+
@keyframes statusSpin { to { transform: rotate(360deg); } }
|
|
2410
|
+
.term-dot.pulse-strong { animation: statusPulseStrong 0.9s ease-in-out infinite; }
|
|
2411
|
+
@keyframes statusPulseStrong {
|
|
2412
|
+
0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(239,68,68,0.6); }
|
|
2413
|
+
50% { transform: scale(1.3); box-shadow: 0 0 0 4px rgba(239,68,68,0); }
|
|
2414
|
+
}
|
|
2415
|
+
/* SessionList card status border — dashed + state color. */
|
|
2416
|
+
.status-border-working { border: 1px dashed #3b82f6 !important; }
|
|
2417
|
+
.status-border-blocked { border: 1px dashed #ef4444 !important; }
|
|
2418
|
+
.status-border-done { border: 1px dashed #f59e0b !important; }
|
|
2391
2419
|
/* Overlay slide-in (web parity) */
|
|
2392
2420
|
@keyframes slide-in-right { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
|
|
2393
2421
|
.slide-in-right { animation: slide-in-right 0.3s ease-out; }
|
|
2394
2422
|
/* Terminal header hover (web parity) */
|
|
2395
2423
|
.term-btn:hover { background: var(--surface-2); filter: brightness(0.95); }
|
|
2396
|
-
.term-tab
|
|
2424
|
+
.term-tab { border-radius: 8px; }
|
|
2425
|
+
.term-tab:not(.term-tab-active):hover { color: var(--text-main) !important; background: color-mix(in srgb, var(--surface-2) 60%, transparent); }
|
|
2426
|
+
.term-tab-active {
|
|
2427
|
+
color: var(--text-main) !important;
|
|
2428
|
+
font-weight: 600;
|
|
2429
|
+
background: color-mix(in srgb, var(--brand-500) 35%, transparent);
|
|
2430
|
+
}
|
|
2397
2431
|
.term-group-item:hover { background: var(--surface-2); }
|
|
2398
2432
|
/* Connection cards — borderless on dark, subtle border on light (session parity) */
|
|
2399
2433
|
.conn-card { border: none; }
|
package/dist/ui/index.html
CHANGED
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
const savedTheme = localStorage.getItem("9remote-theme") || "dark";
|
|
15
15
|
document.documentElement.setAttribute("data-theme", savedTheme);
|
|
16
16
|
</script>
|
|
17
|
-
<script type="module" crossorigin src="/assets/index-
|
|
18
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
17
|
+
<script type="module" crossorigin src="/assets/index-6avVMwsi.js"></script>
|
|
18
|
+
<link rel="stylesheet" crossorigin href="/assets/index-ByjrCweb.css">
|
|
19
19
|
</head>
|
|
20
20
|
<body>
|
|
21
21
|
<div id="root"></div>
|