@phenx-inc/ctlsurf 0.12.0 → 0.12.1
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/out/headless/index.mjs +5 -1
- package/out/headless/index.mjs.map +2 -2
- package/out/main/index.js +5 -1
- package/out/renderer/assets/{cssMode-R8fTFLae.js → cssMode-D7r66wvO.js} +3 -3
- package/out/renderer/assets/{freemarker2-CyjWzWoP.js → freemarker2-jSWJIjPG.js} +1 -1
- package/out/renderer/assets/{handlebars-CrhCGIRM.js → handlebars-BnFyz5RH.js} +1 -1
- package/out/renderer/assets/{html-Cc3dPNZr.js → html-Bl5UFavp.js} +1 -1
- package/out/renderer/assets/{htmlMode-BWtG6ywk.js → htmlMode-D4VByBT6.js} +3 -3
- package/out/renderer/assets/{index-BL9njXIL.css → index-Cc_TqOCL.css} +117 -0
- package/out/renderer/assets/{index-kkG56aKv.js → index-DxhW1emk.js} +173 -73
- package/out/renderer/assets/{javascript-C8T_SdLC.js → javascript-CMN1OmwG.js} +2 -2
- package/out/renderer/assets/{jsonMode-D1zR4VVU.js → jsonMode-CJ5AYSPV.js} +3 -3
- package/out/renderer/assets/{liquid-COSMe9Uf.js → liquid-BGMIDTEm.js} +1 -1
- package/out/renderer/assets/{lspLanguageFeatures-CXGfrtzl.js → lspLanguageFeatures-DGifVYB5.js} +1 -1
- package/out/renderer/assets/{mdx-RfS44T-L.js → mdx-B2Z7R10Q.js} +1 -1
- package/out/renderer/assets/{python-DFSWKHUu.js → python-LMDMSSdn.js} +1 -1
- package/out/renderer/assets/{razor-DtH2_uvo.js → razor-BZSrziPu.js} +1 -1
- package/out/renderer/assets/{tsMode-BYIQ-S9Z.js → tsMode-DF9m6_3n.js} +1 -1
- package/out/renderer/assets/{typescript-HhQUr1Rb.js → typescript-rZeCMf0a.js} +1 -1
- package/out/renderer/assets/{xml-KuhgdKfD.js → xml-fNSZ-7so.js} +1 -1
- package/out/renderer/assets/{yaml-W_kzCFH7.js → yaml-1wxIuvzh.js} +1 -1
- package/out/renderer/index.html +2 -2
- package/package.json +1 -1
- package/src/main/index.ts +4 -1
- package/src/main/orchestrator.ts +7 -0
- package/src/renderer/App.tsx +5 -1
- package/src/renderer/components/SpeakControls.tsx +8 -2
- package/src/renderer/components/TerminalPanel.tsx +134 -23
- package/src/renderer/components/TicketPanel.tsx +67 -26
- package/src/renderer/styles.css +117 -0
package/out/main/index.js
CHANGED
|
@@ -11924,12 +11924,16 @@ class Orchestrator {
|
|
|
11924
11924
|
}
|
|
11925
11925
|
}
|
|
11926
11926
|
setActiveTab(tabId) {
|
|
11927
|
+
const prevProjectPath = this.getActiveTabProjectPath();
|
|
11927
11928
|
this.activeTabId = tabId;
|
|
11928
11929
|
const tab = this.tabs.get(tabId);
|
|
11929
11930
|
if (tab) {
|
|
11930
11931
|
this.currentAgent = tab.agent;
|
|
11931
11932
|
this.currentCwd = tab.cwd;
|
|
11932
11933
|
}
|
|
11934
|
+
if (this.getActiveTabProjectPath() !== prevProjectPath) {
|
|
11935
|
+
this.events.onCwdChanged();
|
|
11936
|
+
}
|
|
11933
11937
|
}
|
|
11934
11938
|
getTabIds() {
|
|
11935
11939
|
return [...this.tabs.keys()];
|
|
@@ -12270,7 +12274,7 @@ const orchestrator = new Orchestrator(
|
|
|
12270
12274
|
},
|
|
12271
12275
|
onCwdChanged: () => {
|
|
12272
12276
|
mainWindow?.webContents.send("app:cwdChanged");
|
|
12273
|
-
updateProjectBadge(orchestrator.cwd);
|
|
12277
|
+
updateProjectBadge(orchestrator.getActiveTabProjectPath() || orchestrator.cwd);
|
|
12274
12278
|
}
|
|
12275
12279
|
}
|
|
12276
12280
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as createWebWorker, l as languages } from "./index-
|
|
2
|
-
import { C as CompletionAdapter, H as HoverAdapter, D as DocumentHighlightAdapter, a as DefinitionAdapter, R as ReferenceAdapter, b as DocumentSymbolAdapter, c as RenameAdapter, d as DocumentColorAdapter, F as FoldingRangeAdapter, e as DiagnosticsAdapter, S as SelectionRangeAdapter, f as DocumentFormattingEditProvider, g as DocumentRangeFormattingEditProvider } from "./lspLanguageFeatures-
|
|
3
|
-
import { h, i, j, t, k } from "./lspLanguageFeatures-
|
|
1
|
+
import { c as createWebWorker, l as languages } from "./index-DxhW1emk.js";
|
|
2
|
+
import { C as CompletionAdapter, H as HoverAdapter, D as DocumentHighlightAdapter, a as DefinitionAdapter, R as ReferenceAdapter, b as DocumentSymbolAdapter, c as RenameAdapter, d as DocumentColorAdapter, F as FoldingRangeAdapter, e as DiagnosticsAdapter, S as SelectionRangeAdapter, f as DocumentFormattingEditProvider, g as DocumentRangeFormattingEditProvider } from "./lspLanguageFeatures-DGifVYB5.js";
|
|
3
|
+
import { h, i, j, t, k } from "./lspLanguageFeatures-DGifVYB5.js";
|
|
4
4
|
const STOP_WHEN_IDLE_FOR = 2 * 60 * 1e3;
|
|
5
5
|
class WorkerManager {
|
|
6
6
|
constructor(defaults) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as createWebWorker, l as languages } from "./index-
|
|
2
|
-
import { H as HoverAdapter, D as DocumentHighlightAdapter, h as DocumentLinkAdapter, F as FoldingRangeAdapter, b as DocumentSymbolAdapter, S as SelectionRangeAdapter, c as RenameAdapter, f as DocumentFormattingEditProvider, g as DocumentRangeFormattingEditProvider, C as CompletionAdapter } from "./lspLanguageFeatures-
|
|
3
|
-
import { a, e, d, R, i, j, t, k } from "./lspLanguageFeatures-
|
|
1
|
+
import { c as createWebWorker, l as languages } from "./index-DxhW1emk.js";
|
|
2
|
+
import { H as HoverAdapter, D as DocumentHighlightAdapter, h as DocumentLinkAdapter, F as FoldingRangeAdapter, b as DocumentSymbolAdapter, S as SelectionRangeAdapter, c as RenameAdapter, f as DocumentFormattingEditProvider, g as DocumentRangeFormattingEditProvider, C as CompletionAdapter } from "./lspLanguageFeatures-DGifVYB5.js";
|
|
3
|
+
import { a, e, d, R, i, j, t, k } from "./lspLanguageFeatures-DGifVYB5.js";
|
|
4
4
|
const STOP_WHEN_IDLE_FOR = 2 * 60 * 1e3;
|
|
5
5
|
class WorkerManager {
|
|
6
6
|
constructor(defaults) {
|
|
@@ -7486,6 +7486,17 @@ html, body, #root {
|
|
|
7486
7486
|
background: #1f2335;
|
|
7487
7487
|
}
|
|
7488
7488
|
|
|
7489
|
+
.titlebar-btn:disabled {
|
|
7490
|
+
opacity: 0.4;
|
|
7491
|
+
cursor: not-allowed;
|
|
7492
|
+
}
|
|
7493
|
+
|
|
7494
|
+
/* Keep the greyed-out look stable on hover for disabled buttons. */
|
|
7495
|
+
.titlebar-btn:disabled:hover {
|
|
7496
|
+
color: #565f89;
|
|
7497
|
+
border-color: #3b3d57;
|
|
7498
|
+
}
|
|
7499
|
+
|
|
7489
7500
|
.titlebar-separator {
|
|
7490
7501
|
width: 1px;
|
|
7491
7502
|
height: 16px;
|
|
@@ -7652,6 +7663,15 @@ html, body, #root {
|
|
|
7652
7663
|
}
|
|
7653
7664
|
|
|
7654
7665
|
/* Terminal container */
|
|
7666
|
+
.terminal-wrap {
|
|
7667
|
+
position: relative;
|
|
7668
|
+
flex: 1;
|
|
7669
|
+
min-width: 0;
|
|
7670
|
+
min-height: 0;
|
|
7671
|
+
width: 100%;
|
|
7672
|
+
height: 100%;
|
|
7673
|
+
}
|
|
7674
|
+
|
|
7655
7675
|
.terminal-container {
|
|
7656
7676
|
width: 100%;
|
|
7657
7677
|
height: 100%;
|
|
@@ -7663,6 +7683,34 @@ html, body, #root {
|
|
|
7663
7683
|
height: 100%;
|
|
7664
7684
|
}
|
|
7665
7685
|
|
|
7686
|
+
/* Floating "jump to latest" pill — shown only while scrolled up. */
|
|
7687
|
+
.term-jump-latest {
|
|
7688
|
+
position: absolute;
|
|
7689
|
+
bottom: 14px;
|
|
7690
|
+
right: 20px;
|
|
7691
|
+
z-index: 5;
|
|
7692
|
+
display: inline-flex;
|
|
7693
|
+
align-items: center;
|
|
7694
|
+
gap: 5px;
|
|
7695
|
+
padding: 5px 12px;
|
|
7696
|
+
border-radius: 14px;
|
|
7697
|
+
background: #2a2b3d;
|
|
7698
|
+
border: 1px solid #7aa2f7;
|
|
7699
|
+
color: #c0caf5;
|
|
7700
|
+
font-family: inherit;
|
|
7701
|
+
font-size: 11.5px;
|
|
7702
|
+
font-weight: 600;
|
|
7703
|
+
cursor: pointer;
|
|
7704
|
+
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
|
|
7705
|
+
transition: background 0.13s ease, transform 0.06s ease;
|
|
7706
|
+
}
|
|
7707
|
+
.term-jump-latest:hover {
|
|
7708
|
+
background: #343650;
|
|
7709
|
+
}
|
|
7710
|
+
.term-jump-latest:active {
|
|
7711
|
+
transform: translateY(1px);
|
|
7712
|
+
}
|
|
7713
|
+
|
|
7666
7714
|
.terminal-fullscreen {
|
|
7667
7715
|
width: 100%;
|
|
7668
7716
|
height: 100%;
|
|
@@ -9098,6 +9146,32 @@ html, body, #root {
|
|
|
9098
9146
|
color: #7aa2f7;
|
|
9099
9147
|
font-weight: 600;
|
|
9100
9148
|
}
|
|
9149
|
+
/* "+ New" action in the header (replaces the old footer button). */
|
|
9150
|
+
.ticket-drawer-new {
|
|
9151
|
+
flex-shrink: 0;
|
|
9152
|
+
align-self: center;
|
|
9153
|
+
display: inline-flex;
|
|
9154
|
+
align-items: center;
|
|
9155
|
+
gap: 3px;
|
|
9156
|
+
padding: 5px 11px;
|
|
9157
|
+
border-radius: 7px;
|
|
9158
|
+
background: rgba(122, 162, 247, 0.14);
|
|
9159
|
+
border: 1px solid rgba(122, 162, 247, 0.3);
|
|
9160
|
+
color: #9db4f5;
|
|
9161
|
+
font-family: inherit;
|
|
9162
|
+
font-size: 12px;
|
|
9163
|
+
font-weight: 600;
|
|
9164
|
+
cursor: pointer;
|
|
9165
|
+
transition: background 0.13s ease, border-color 0.13s ease, color 0.13s ease, transform 0.06s ease;
|
|
9166
|
+
}
|
|
9167
|
+
.ticket-drawer-new:hover {
|
|
9168
|
+
background: rgba(122, 162, 247, 0.22);
|
|
9169
|
+
border-color: rgba(122, 162, 247, 0.5);
|
|
9170
|
+
color: #c0d0fb;
|
|
9171
|
+
}
|
|
9172
|
+
.ticket-drawer-new:active {
|
|
9173
|
+
transform: translateY(1px);
|
|
9174
|
+
}
|
|
9101
9175
|
.ticket-drawer-warn {
|
|
9102
9176
|
color: #e0af68;
|
|
9103
9177
|
}
|
|
@@ -9295,6 +9369,49 @@ html, body, #root {
|
|
|
9295
9369
|
text-align: center;
|
|
9296
9370
|
}
|
|
9297
9371
|
|
|
9372
|
+
/* ── collapsible "Done" section header ── */
|
|
9373
|
+
.ticket-done-toggle {
|
|
9374
|
+
display: flex;
|
|
9375
|
+
align-items: center;
|
|
9376
|
+
gap: 7px;
|
|
9377
|
+
width: 100%;
|
|
9378
|
+
margin-top: 3px;
|
|
9379
|
+
padding: 7px 4px;
|
|
9380
|
+
background: none;
|
|
9381
|
+
border: none;
|
|
9382
|
+
border-top: 1px solid #262a3f;
|
|
9383
|
+
color: #6b739b;
|
|
9384
|
+
font-family: inherit;
|
|
9385
|
+
font-size: 11.5px;
|
|
9386
|
+
font-weight: 600;
|
|
9387
|
+
letter-spacing: 0.03em;
|
|
9388
|
+
text-transform: uppercase;
|
|
9389
|
+
cursor: pointer;
|
|
9390
|
+
transition: color 0.13s ease;
|
|
9391
|
+
}
|
|
9392
|
+
.ticket-done-toggle:hover {
|
|
9393
|
+
color: #a9b1d6;
|
|
9394
|
+
}
|
|
9395
|
+
.ticket-done-caret {
|
|
9396
|
+
display: inline-block;
|
|
9397
|
+
font-size: 10px;
|
|
9398
|
+
transition: transform 0.13s ease;
|
|
9399
|
+
}
|
|
9400
|
+
.ticket-done-caret.open {
|
|
9401
|
+
transform: rotate(90deg);
|
|
9402
|
+
}
|
|
9403
|
+
.ticket-done-count {
|
|
9404
|
+
margin-left: auto;
|
|
9405
|
+
min-width: 18px;
|
|
9406
|
+
padding: 1px 6px;
|
|
9407
|
+
border-radius: 9px;
|
|
9408
|
+
background: #262a3f;
|
|
9409
|
+
color: #8088ac;
|
|
9410
|
+
font-size: 11px;
|
|
9411
|
+
font-weight: 600;
|
|
9412
|
+
text-align: center;
|
|
9413
|
+
}
|
|
9414
|
+
|
|
9298
9415
|
.ticket-empty {
|
|
9299
9416
|
display: flex;
|
|
9300
9417
|
flex-direction: column;
|