@co0ontty/wand 1.6.2 → 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/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 +4 -1
- 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 +107 -43
- package/dist/types.d.ts +14 -0
- package/dist/web-ui/content/scripts.js +1468 -301
- package/dist/web-ui/content/styles.css +135 -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
|
/* ===== 聊天消息列表 ===== */
|
|
@@ -4786,6 +4876,22 @@
|
|
|
4786
4876
|
.mode-card.active .mode-card-label {
|
|
4787
4877
|
color: var(--accent);
|
|
4788
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
|
+
}
|
|
4789
4895
|
.password-input[data-error="true"],
|
|
4790
4896
|
.password-input[aria-invalid="true"] {
|
|
4791
4897
|
border-color: var(--danger);
|
|
@@ -4893,6 +4999,29 @@
|
|
|
4893
4999
|
.modal-body { padding: 22px; overflow-y: auto; flex: 1 1 auto; min-height: 0; }
|
|
4894
5000
|
.modal-body .field { margin-bottom: 14px; }
|
|
4895
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
|
+
}
|
|
4896
5025
|
.field-hint {
|
|
4897
5026
|
margin-top: 6px;
|
|
4898
5027
|
font-size: 0.75rem;
|
|
@@ -5883,6 +6012,12 @@
|
|
|
5883
6012
|
border-color: rgba(215, 122, 82, 0.22);
|
|
5884
6013
|
}
|
|
5885
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
|
+
|
|
5886
6021
|
.session-kind-display {
|
|
5887
6022
|
display: inline-flex;
|
|
5888
6023
|
align-items: center;
|