@phenx-inc/ctlsurf 0.13.1 → 0.13.5
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/LICENSE +22 -0
- package/out/headless/index.mjs +9 -23
- package/out/headless/index.mjs.map +3 -3
- package/out/main/index.js +17 -22
- package/out/preload/index.js +1 -0
- package/out/renderer/assets/{cssMode-KhYyY-BM.js → cssMode-CAEObGNt.js} +3 -3
- package/out/renderer/assets/{freemarker2-BFsSgcWk.js → freemarker2-D63hnnDq.js} +1 -1
- package/out/renderer/assets/{handlebars-Be6_aBsm.js → handlebars-UYo_IYpi.js} +1 -1
- package/out/renderer/assets/{html-G8mvsyfc.js → html-2dvYDi3g.js} +1 -1
- package/out/renderer/assets/{htmlMode-Cfd5VCjw.js → htmlMode-B6fxDDPF.js} +3 -3
- package/out/renderer/assets/{index-Bi_MjBqs.css → index-BEekQe3-.css} +116 -0
- package/out/renderer/assets/{index-MqgBcJzy.js → index-CMb4AqkZ.js} +552 -411
- package/out/renderer/assets/{javascript-XyDWi6dC.js → javascript-8RyFDDdk.js} +2 -2
- package/out/renderer/assets/{jsonMode-DZT5gBVW.js → jsonMode-CqspkWCb.js} +3 -3
- package/out/renderer/assets/{liquid-BuajCNJ9.js → liquid-DaEnAsYY.js} +1 -1
- package/out/renderer/assets/{lspLanguageFeatures-BYkg2Yc-.js → lspLanguageFeatures-Czkp5sZb.js} +1 -1
- package/out/renderer/assets/{mdx-D0Qx2GMS.js → mdx-Q-qSZsFg.js} +1 -1
- package/out/renderer/assets/{python-ChncNy6S.js → python-Sw0S0BJV.js} +1 -1
- package/out/renderer/assets/{razor-C6MUtfaS.js → razor-C7zQmabz.js} +1 -1
- package/out/renderer/assets/{tsMode-C2aMdzdU.js → tsMode-BWdOxk6v.js} +1 -1
- package/out/renderer/assets/{typescript-CB71AtAT.js → typescript-BrdIiKZf.js} +1 -1
- package/out/renderer/assets/{xml-tHS1Ec9w.js → xml-DbKLNPOq.js} +1 -1
- package/out/renderer/assets/{yaml-CZcp5ueF.js → yaml-ehupJBsZ.js} +1 -1
- package/out/renderer/index.html +2 -2
- package/package.json +2 -2
- package/src/main/bridge.ts +3 -2
- package/src/main/headless.ts +9 -13
- package/src/main/index.ts +6 -0
- package/src/main/pty.ts +2 -5
- package/src/main/ticketStore.ts +2 -1
- package/src/main/timeTracker.ts +4 -1
- package/src/main/transcripts.ts +3 -2
- package/src/preload/index.ts +2 -0
- package/src/renderer/App.tsx +1 -0
- package/src/renderer/components/SettingsDialog.tsx +13 -0
- package/src/renderer/components/SpeakControls.tsx +5 -0
- package/src/renderer/components/TerminalPanel.tsx +151 -30
- package/src/renderer/lib/speech.ts +2 -1
- package/src/renderer/styles.css +116 -0
package/src/renderer/styles.css
CHANGED
|
@@ -1616,6 +1616,22 @@ html, body, #root {
|
|
|
1616
1616
|
font-size: 16px;
|
|
1617
1617
|
}
|
|
1618
1618
|
|
|
1619
|
+
/* About section inside the Settings dialog. */
|
|
1620
|
+
.settings-about {
|
|
1621
|
+
border-top: 1px solid #2a2b3d;
|
|
1622
|
+
padding-top: 16px;
|
|
1623
|
+
}
|
|
1624
|
+
.settings-about .about-name {
|
|
1625
|
+
color: #c0caf5;
|
|
1626
|
+
font-size: 14px;
|
|
1627
|
+
font-weight: 600;
|
|
1628
|
+
}
|
|
1629
|
+
.settings-about .about-copyright {
|
|
1630
|
+
color: #9aa5ce;
|
|
1631
|
+
font-size: 12px;
|
|
1632
|
+
margin: 6px 0 8px;
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1619
1635
|
.settings-section {
|
|
1620
1636
|
margin-bottom: 20px;
|
|
1621
1637
|
}
|
|
@@ -2252,6 +2268,106 @@ html, body, #root {
|
|
|
2252
2268
|
.term-context-menu button:hover {
|
|
2253
2269
|
background: #2a2b3d;
|
|
2254
2270
|
}
|
|
2271
|
+
/* Always-visible utility button (top-right) — opens the snapshot panel. */
|
|
2272
|
+
.term-util-btn {
|
|
2273
|
+
position: absolute;
|
|
2274
|
+
top: 6px;
|
|
2275
|
+
right: 14px;
|
|
2276
|
+
z-index: 6;
|
|
2277
|
+
width: 26px;
|
|
2278
|
+
height: 26px;
|
|
2279
|
+
display: inline-flex;
|
|
2280
|
+
align-items: center;
|
|
2281
|
+
justify-content: center;
|
|
2282
|
+
border-radius: 6px;
|
|
2283
|
+
background: #2a2b3d;
|
|
2284
|
+
border: 1px solid #414868;
|
|
2285
|
+
color: #c0caf5;
|
|
2286
|
+
font-size: 16px;
|
|
2287
|
+
line-height: 1;
|
|
2288
|
+
cursor: pointer;
|
|
2289
|
+
opacity: 0.55;
|
|
2290
|
+
transition: opacity 0.13s ease, background 0.13s ease;
|
|
2291
|
+
}
|
|
2292
|
+
.term-util-btn:hover {
|
|
2293
|
+
opacity: 1;
|
|
2294
|
+
background: #343650;
|
|
2295
|
+
}
|
|
2296
|
+
|
|
2297
|
+
/* Snapshot panel: a frozen, selectable copy of the screen text. */
|
|
2298
|
+
.term-snapshot {
|
|
2299
|
+
position: absolute;
|
|
2300
|
+
inset: 0;
|
|
2301
|
+
z-index: 20;
|
|
2302
|
+
display: flex;
|
|
2303
|
+
flex-direction: column;
|
|
2304
|
+
background: #16161e;
|
|
2305
|
+
border: 1px solid #414868;
|
|
2306
|
+
}
|
|
2307
|
+
.term-snapshot-head {
|
|
2308
|
+
display: flex;
|
|
2309
|
+
align-items: center;
|
|
2310
|
+
justify-content: space-between;
|
|
2311
|
+
gap: 12px;
|
|
2312
|
+
padding: 8px 12px;
|
|
2313
|
+
background: #1f2335;
|
|
2314
|
+
border-bottom: 1px solid #414868;
|
|
2315
|
+
color: #9aa5ce;
|
|
2316
|
+
font-size: 12px;
|
|
2317
|
+
}
|
|
2318
|
+
.term-snapshot-x {
|
|
2319
|
+
background: transparent;
|
|
2320
|
+
border: none;
|
|
2321
|
+
color: #9aa5ce;
|
|
2322
|
+
font-size: 14px;
|
|
2323
|
+
cursor: pointer;
|
|
2324
|
+
padding: 2px 6px;
|
|
2325
|
+
border-radius: 4px;
|
|
2326
|
+
}
|
|
2327
|
+
.term-snapshot-x:hover {
|
|
2328
|
+
background: #2a2b3d;
|
|
2329
|
+
color: #c0caf5;
|
|
2330
|
+
}
|
|
2331
|
+
.term-snapshot-text {
|
|
2332
|
+
flex: 1;
|
|
2333
|
+
min-height: 0;
|
|
2334
|
+
overflow: auto;
|
|
2335
|
+
margin: 0;
|
|
2336
|
+
padding: 10px 12px;
|
|
2337
|
+
white-space: pre;
|
|
2338
|
+
user-select: text;
|
|
2339
|
+
cursor: text;
|
|
2340
|
+
color: #c0caf5;
|
|
2341
|
+
background: #16161e;
|
|
2342
|
+
font-family: 'JetBrains Mono', 'Fira Code', 'SF Mono', monospace;
|
|
2343
|
+
font-size: 13px;
|
|
2344
|
+
line-height: 1.4;
|
|
2345
|
+
}
|
|
2346
|
+
.term-snapshot-text::selection {
|
|
2347
|
+
background: #33467c;
|
|
2348
|
+
}
|
|
2349
|
+
.term-snapshot-actions {
|
|
2350
|
+
display: flex;
|
|
2351
|
+
gap: 6px;
|
|
2352
|
+
padding: 8px 12px;
|
|
2353
|
+
background: #1f2335;
|
|
2354
|
+
border-top: 1px solid #414868;
|
|
2355
|
+
}
|
|
2356
|
+
.term-snapshot-actions button {
|
|
2357
|
+
background: #2a2b3d;
|
|
2358
|
+
border: 1px solid #414868;
|
|
2359
|
+
border-radius: 5px;
|
|
2360
|
+
color: #c0caf5;
|
|
2361
|
+
font-size: 12.5px;
|
|
2362
|
+
padding: 6px 12px;
|
|
2363
|
+
cursor: pointer;
|
|
2364
|
+
}
|
|
2365
|
+
.term-snapshot-actions button:hover {
|
|
2366
|
+
background: #343650;
|
|
2367
|
+
}
|
|
2368
|
+
.term-snapshot-done {
|
|
2369
|
+
margin-left: auto;
|
|
2370
|
+
}
|
|
2255
2371
|
.term-toast {
|
|
2256
2372
|
position: fixed;
|
|
2257
2373
|
bottom: 24px;
|