beast-agent 2.47.0 → 2.48.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "beast-agent",
3
3
  "productName": "Beast Agent",
4
- "version": "2.47.0",
4
+ "version": "2.48.0",
5
5
  "description": "Ultra-fast local agent shell for Windows.",
6
6
  "author": "algokodcom (AlgoKod)",
7
7
  "license": "MIT",
@@ -540,6 +540,7 @@
540
540
  <button id="dmColumnBtn" title="Yan sütunda canlı akış olarak da göster">&#x25A4;&#xFE0E;</button>
541
541
  <button id="dmModalDel" title="Bu oturumu sil" hidden><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18"/><path d="M8 6V4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2"/><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"/><path d="M10 11v6"/><path d="M14 11v6"/></svg></button>
542
542
  <button id="dmModalClear" title="Tüm DM geçmişini sil"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18"/><path d="M8 6V4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2"/><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"/><path d="M10 11v6"/><path d="M14 11v6"/></svg></button>
543
+ <button id="dmMaxBtn" title="Tam ekran">&#x26F6;&#xFE0E;</button>
543
544
  <button id="dmModalClose" title="Kapat">&#x2715;&#xFE0E;</button>
544
545
  </span>
545
546
  </div>
@@ -51,6 +51,7 @@ const els = {
51
51
  dmModalClear: $('#dmModalClear'),
52
52
  dmModalDel: $('#dmModalDel'),
53
53
  dmColumnBtn: $('#dmColumnBtn'),
54
+ dmMaxBtn: $('#dmMaxBtn'),
54
55
  dmBackBtn: $('#dmBackBtn'),
55
56
  watchBtn: $('#watchBtn'),
56
57
  watchPaneList: $('#watchPaneList'),
@@ -5588,6 +5589,7 @@ function openDmModal(threadKey) {
5588
5589
  if (!els.dmOverlay) return;
5589
5590
  dmState.modalThread = threadKey || null;
5590
5591
  els.dmOverlay.hidden = false;
5592
+ syncDmMaxBtn();
5591
5593
  refreshDmRail().then(() => renderDmModal());
5592
5594
  }
5593
5595
 
@@ -5596,6 +5598,21 @@ function closeDmModal() {
5596
5598
  if (els.dmBtn) els.dmBtn.classList.remove('on');
5597
5599
  }
5598
5600
 
5601
+ /* tam ekran: modal tüm pencereyi kaplar — ikon duruma göre ⛶ / ❐ */
5602
+ function syncDmMaxBtn() {
5603
+ if (!els.dmMaxBtn) return;
5604
+ const on = !!(els.dmOverlay && els.dmOverlay.classList.contains('dm-max'));
5605
+ els.dmMaxBtn.innerHTML = on ? '&#x2750;&#xFE0E;' : '&#x26F6;&#xFE0E;';
5606
+ els.dmMaxBtn.title = on ? 'Tam ekrandan çık' : 'Tam ekran';
5607
+ }
5608
+
5609
+ function toggleDmMax(force) {
5610
+ if (!els.dmOverlay) return;
5611
+ const on = typeof force === 'boolean' ? force : !els.dmOverlay.classList.contains('dm-max');
5612
+ els.dmOverlay.classList.toggle('dm-max', on);
5613
+ syncDmMaxBtn();
5614
+ }
5615
+
5599
5616
  async function dmClearAll() {
5600
5617
  if (!(await uiConfirm('TÜM ajan DM geçmişi silinsin mi?', 'Sil'))) return;
5601
5618
  try { await beast.agentDmsClear(); } catch {}
@@ -5646,9 +5663,14 @@ if (els.dmOverlay) {
5646
5663
  if (e.target === els.dmOverlay) closeDmModal();
5647
5664
  });
5648
5665
  els.dmOverlay.addEventListener('keydown', (e) => {
5649
- if (e.key === 'Escape') { e.stopPropagation(); closeDmModal(); }
5666
+ if (e.key === 'Escape') {
5667
+ e.stopPropagation();
5668
+ if (els.dmOverlay.classList.contains('dm-max')) toggleDmMax(false);
5669
+ else closeDmModal();
5670
+ }
5650
5671
  });
5651
5672
  }
5673
+ if (els.dmMaxBtn) els.dmMaxBtn.addEventListener('click', () => toggleDmMax());
5652
5674
  if (els.dmClear) els.dmClear.addEventListener('click', dmClearAll);
5653
5675
  if (els.dmColumnBtn) {
5654
5676
  els.dmColumnBtn.addEventListener('click', () => {
@@ -2393,6 +2393,21 @@ body.browser-open #settingsDialog { width: min(70vw, calc(100vw - var(--bw, 480p
2393
2393
  }
2394
2394
  #dmDialogHead button:hover { color: var(--accent); background: var(--panel2); }
2395
2395
  #dmDialogHead .bot-bar-btns { display: flex; gap: 4px; }
2396
+ /* tam ekran modu — oturum tüm pencereyi kaplar (sağ üstteki ⛶ butonu) */
2397
+ #dmOverlay.dm-max { align-items: stretch; justify-content: stretch; }
2398
+ #dmOverlay.dm-max #dmDialog {
2399
+ width: 100vw;
2400
+ height: 100vh;
2401
+ max-height: 100vh;
2402
+ border: none;
2403
+ border-radius: 0;
2404
+ }
2405
+ #dmOverlay.dm-max #dmDialogList { min-height: 0; }
2406
+ #dmOverlay.dm-max .dm-thread-msgs {
2407
+ flex: 1 1 auto;
2408
+ min-height: 0;
2409
+ max-height: none;
2410
+ }
2396
2411
  #dmDialogList {
2397
2412
  flex: 1 1 auto;
2398
2413
  min-height: 200px;