beast-agent 2.49.0 → 2.49.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "beast-agent",
3
3
  "productName": "Beast Agent",
4
- "version": "2.49.0",
4
+ "version": "2.49.1",
5
5
  "description": "Ultra-fast local agent shell for Windows.",
6
6
  "author": "algokodcom (AlgoKod)",
7
7
  "license": "MIT",
@@ -5549,6 +5549,30 @@ function toggleDmRail(hide) {
5549
5549
 
5550
5550
  /* --- modal: SOHBET (yalnız burada tam döküm) --- */
5551
5551
 
5552
+ /* Yeni mesaj / geç decode olan görsellerde sohbeti otomatik en alta indir:
5553
+ anında + rAF + kısa gecikmeler + görsel load olayları (görsel sonradan
5554
+ yüklenince içerik uzar; tek seferlik scroll yetmez). */
5555
+ function dmStickBottom(box) {
5556
+ if (!box) return;
5557
+ const toBottom = () => {
5558
+ try {
5559
+ box.scrollTop = box.scrollHeight;
5560
+ const p = box.parentElement;
5561
+ if (p && p.scrollHeight > p.clientHeight) p.scrollTop = p.scrollHeight;
5562
+ } catch {}
5563
+ };
5564
+ toBottom();
5565
+ try { requestAnimationFrame(toBottom); } catch {}
5566
+ setTimeout(toBottom, 60);
5567
+ setTimeout(toBottom, 300);
5568
+ for (const img of box.querySelectorAll('img.dmt-img')) {
5569
+ if (img.dataset.dmStick) continue;
5570
+ img.dataset.dmStick = '1';
5571
+ img.addEventListener('load', toBottom, { once: true });
5572
+ img.addEventListener('error', toBottom, { once: true });
5573
+ }
5574
+ }
5575
+
5552
5576
  function renderDmModal() {
5553
5577
  const list = els.dmDialogList;
5554
5578
  if (!list) return;
@@ -5570,8 +5594,7 @@ function renderDmModal() {
5570
5594
  if (els.dmBackBtn) els.dmBackBtn.hidden = false;
5571
5595
  if (els.dmModalDel) els.dmModalDel.hidden = false;
5572
5596
  list.innerHTML = '<div class="dm-thread-msgs">' + msgs.map(dmMsgHtml).join('') + '</div>';
5573
- const box = list.querySelector('.dm-thread-msgs');
5574
- if (box) box.scrollTop = box.scrollHeight;
5597
+ dmStickBottom(list.querySelector('.dm-thread-msgs'));
5575
5598
  return;
5576
5599
  }
5577
5600
  /* OTURUM LİSTESİ — AKTİF + GEÇMİŞ bölümleri */