@co0ontty/wand 1.6.1 → 1.7.0
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/config.js +23 -0
- package/dist/git-worktree.d.ts +12 -0
- package/dist/git-worktree.js +43 -0
- package/dist/message-parser.d.ts +1 -1
- package/dist/message-parser.js +275 -1
- package/dist/process-manager.d.ts +6 -3
- package/dist/process-manager.js +135 -81
- package/dist/pty-text-utils.js +79 -29
- package/dist/server-session-routes.js +39 -7
- package/dist/server.js +141 -15
- package/dist/session-logger.d.ts +2 -0
- package/dist/session-logger.js +23 -0
- package/dist/storage.js +80 -18
- package/dist/structured-session-manager.d.ts +5 -0
- package/dist/structured-session-manager.js +115 -49
- package/dist/types.d.ts +23 -0
- package/dist/web-ui/content/scripts.js +1511 -306
- package/dist/web-ui/content/styles.css +142 -0
- package/package.json +1 -1
|
@@ -2158,6 +2158,7 @@
|
|
|
2158
2158
|
|
|
2159
2159
|
/* ===== 聊天容器 ===== */
|
|
2160
2160
|
.chat-container {
|
|
2161
|
+
position: relative;
|
|
2161
2162
|
flex: 1;
|
|
2162
2163
|
display: none;
|
|
2163
2164
|
flex-direction: column;
|
|
@@ -2167,6 +2168,95 @@
|
|
|
2167
2168
|
background: linear-gradient(180deg, rgba(255, 252, 248, 0.5) 0%, transparent 100%);
|
|
2168
2169
|
}
|
|
2169
2170
|
|
|
2171
|
+
.chat-overlay-controls {
|
|
2172
|
+
position: absolute;
|
|
2173
|
+
top: 8px;
|
|
2174
|
+
right: 8px;
|
|
2175
|
+
display: inline-flex;
|
|
2176
|
+
align-items: center;
|
|
2177
|
+
gap: 6px;
|
|
2178
|
+
padding: 2px;
|
|
2179
|
+
border-radius: 7px;
|
|
2180
|
+
border: 1px solid rgba(125, 91, 57, 0.12);
|
|
2181
|
+
background: rgba(255, 250, 242, 0.72);
|
|
2182
|
+
backdrop-filter: blur(8px);
|
|
2183
|
+
box-shadow: 0 6px 18px rgba(89, 58, 32, 0.12);
|
|
2184
|
+
opacity: 0.84;
|
|
2185
|
+
transition: opacity 0.18s ease, background 0.18s ease, border-color 0.18s ease;
|
|
2186
|
+
z-index: 12;
|
|
2187
|
+
pointer-events: auto;
|
|
2188
|
+
}
|
|
2189
|
+
|
|
2190
|
+
.chat-container:hover .chat-overlay-controls,
|
|
2191
|
+
.chat-overlay-controls:focus-within {
|
|
2192
|
+
opacity: 1;
|
|
2193
|
+
background: rgba(255, 250, 242, 0.88);
|
|
2194
|
+
border-color: rgba(197, 101, 61, 0.16);
|
|
2195
|
+
}
|
|
2196
|
+
|
|
2197
|
+
.chat-follow-toggle {
|
|
2198
|
+
min-width: 52px;
|
|
2199
|
+
padding: 0 10px;
|
|
2200
|
+
font-size: 0.6875rem;
|
|
2201
|
+
color: var(--text-secondary);
|
|
2202
|
+
background: transparent;
|
|
2203
|
+
border-color: transparent;
|
|
2204
|
+
}
|
|
2205
|
+
|
|
2206
|
+
.chat-follow-toggle.active {
|
|
2207
|
+
background: var(--accent-muted);
|
|
2208
|
+
color: var(--accent);
|
|
2209
|
+
border-color: rgba(197, 101, 61, 0.2);
|
|
2210
|
+
}
|
|
2211
|
+
|
|
2212
|
+
.chat-follow-toggle:hover {
|
|
2213
|
+
background: rgba(255, 255, 255, 0.7);
|
|
2214
|
+
}
|
|
2215
|
+
|
|
2216
|
+
.chat-follow-toggle.active:hover {
|
|
2217
|
+
background: rgba(197, 101, 61, 0.18);
|
|
2218
|
+
}
|
|
2219
|
+
|
|
2220
|
+
.chat-jump-bottom {
|
|
2221
|
+
position: absolute;
|
|
2222
|
+
right: 14px;
|
|
2223
|
+
bottom: 18px;
|
|
2224
|
+
display: inline-flex;
|
|
2225
|
+
align-items: center;
|
|
2226
|
+
justify-content: center;
|
|
2227
|
+
gap: 6px;
|
|
2228
|
+
min-width: 78px;
|
|
2229
|
+
height: 32px;
|
|
2230
|
+
padding: 0 12px;
|
|
2231
|
+
border: 1px solid rgba(125, 91, 57, 0.16);
|
|
2232
|
+
border-radius: 999px;
|
|
2233
|
+
background: rgba(255, 250, 242, 0.9);
|
|
2234
|
+
color: var(--text-primary);
|
|
2235
|
+
box-shadow: 0 10px 24px rgba(89, 58, 32, 0.16);
|
|
2236
|
+
backdrop-filter: blur(10px);
|
|
2237
|
+
cursor: pointer;
|
|
2238
|
+
z-index: 13;
|
|
2239
|
+
opacity: 0;
|
|
2240
|
+
transform: translateY(8px);
|
|
2241
|
+
pointer-events: none;
|
|
2242
|
+
transition: opacity 0.18s ease, transform 0.18s ease, background 0.18s ease, border-color 0.18s ease;
|
|
2243
|
+
}
|
|
2244
|
+
|
|
2245
|
+
.chat-jump-bottom.visible {
|
|
2246
|
+
opacity: 1;
|
|
2247
|
+
transform: translateY(0);
|
|
2248
|
+
pointer-events: auto;
|
|
2249
|
+
}
|
|
2250
|
+
|
|
2251
|
+
.chat-jump-bottom:hover {
|
|
2252
|
+
background: rgba(255, 255, 255, 0.98);
|
|
2253
|
+
border-color: rgba(197, 101, 61, 0.24);
|
|
2254
|
+
}
|
|
2255
|
+
|
|
2256
|
+
.chat-jump-bottom:active {
|
|
2257
|
+
transform: translateY(1px);
|
|
2258
|
+
}
|
|
2259
|
+
|
|
2170
2260
|
.chat-container.active { display: flex; }
|
|
2171
2261
|
|
|
2172
2262
|
/* ===== 聊天消息列表 ===== */
|
|
@@ -2328,6 +2418,13 @@
|
|
|
2328
2418
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
|
|
2329
2419
|
}
|
|
2330
2420
|
|
|
2421
|
+
.pixel-avatar-image {
|
|
2422
|
+
display: block;
|
|
2423
|
+
width: 100%;
|
|
2424
|
+
height: 100%;
|
|
2425
|
+
object-fit: cover;
|
|
2426
|
+
}
|
|
2427
|
+
|
|
2331
2428
|
.pixel-avatar-svg {
|
|
2332
2429
|
display: block;
|
|
2333
2430
|
width: 100%;
|
|
@@ -4779,6 +4876,22 @@
|
|
|
4779
4876
|
.mode-card.active .mode-card-label {
|
|
4780
4877
|
color: var(--accent);
|
|
4781
4878
|
}
|
|
4879
|
+
.mode-card.disabled {
|
|
4880
|
+
opacity: 0.45;
|
|
4881
|
+
cursor: not-allowed;
|
|
4882
|
+
pointer-events: none;
|
|
4883
|
+
}
|
|
4884
|
+
.mode-card.disabled:hover {
|
|
4885
|
+
border-color: rgba(125, 91, 57, 0.2);
|
|
4886
|
+
background: rgba(255, 255, 255, 0.6);
|
|
4887
|
+
}
|
|
4888
|
+
.mode-card.disabled .mode-card-label,
|
|
4889
|
+
.mode-card.disabled .mode-card-desc {
|
|
4890
|
+
color: var(--text-muted);
|
|
4891
|
+
}
|
|
4892
|
+
.mode-card.active.disabled {
|
|
4893
|
+
box-shadow: none;
|
|
4894
|
+
}
|
|
4782
4895
|
.password-input[data-error="true"],
|
|
4783
4896
|
.password-input[aria-invalid="true"] {
|
|
4784
4897
|
border-color: var(--danger);
|
|
@@ -4886,6 +4999,29 @@
|
|
|
4886
4999
|
.modal-body { padding: 22px; overflow-y: auto; flex: 1 1 auto; min-height: 0; }
|
|
4887
5000
|
.modal-body .field { margin-bottom: 14px; }
|
|
4888
5001
|
.modal-body .field:last-of-type { margin-bottom: 16px; }
|
|
5002
|
+
.session-kind-hint-row {
|
|
5003
|
+
display: flex;
|
|
5004
|
+
align-items: center;
|
|
5005
|
+
justify-content: space-between;
|
|
5006
|
+
gap: 12px;
|
|
5007
|
+
}
|
|
5008
|
+
.session-kind-hint-row #session-kind-description {
|
|
5009
|
+
flex: 1 1 auto;
|
|
5010
|
+
}
|
|
5011
|
+
.session-inline-toggle {
|
|
5012
|
+
display: inline-flex;
|
|
5013
|
+
align-items: center;
|
|
5014
|
+
gap: 8px;
|
|
5015
|
+
white-space: nowrap;
|
|
5016
|
+
color: var(--text-secondary);
|
|
5017
|
+
cursor: pointer;
|
|
5018
|
+
user-select: none;
|
|
5019
|
+
}
|
|
5020
|
+
.session-inline-toggle-label {
|
|
5021
|
+
font-size: 0.75rem;
|
|
5022
|
+
font-weight: 600;
|
|
5023
|
+
color: var(--text-secondary);
|
|
5024
|
+
}
|
|
4889
5025
|
.field-hint {
|
|
4890
5026
|
margin-top: 6px;
|
|
4891
5027
|
font-size: 0.75rem;
|
|
@@ -5876,6 +6012,12 @@
|
|
|
5876
6012
|
border-color: rgba(215, 122, 82, 0.22);
|
|
5877
6013
|
}
|
|
5878
6014
|
|
|
6015
|
+
.session-kind-badge.worktree {
|
|
6016
|
+
color: #2f6f54;
|
|
6017
|
+
background: rgba(79, 122, 88, 0.12);
|
|
6018
|
+
border-color: rgba(79, 122, 88, 0.22);
|
|
6019
|
+
}
|
|
6020
|
+
|
|
5879
6021
|
.session-kind-display {
|
|
5880
6022
|
display: inline-flex;
|
|
5881
6023
|
align-items: center;
|