@yeaft/webchat-agent 1.0.677 → 1.0.678

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.
@@ -1 +1 @@
1
- {"version":"1.0.677"}
1
+ {"version":"1.0.678"}
@@ -9962,7 +9962,7 @@ ${String(e||"").trim()}
9962
9962
  </aside>
9963
9963
  `,setup(e,{emit:t}){let s=window.Pinia&&window.Pinia.useVpStore?window.Pinia.useVpStore():null,n=V=>s&&typeof s.vpTextColor=="function"?s.vpTextColor(V):"var(--text-primary)",r=Vue.getCurrentInstance(),i=r&&r.appContext.config.globalProperties.$t||(V=>V),o=Vue.computed(()=>(typeof e.announcementText=="string"?e.announcementText:"").trim()),a=Vue.computed(()=>!!o.value),l=Vue.computed(()=>{let V=o.value.replace(/\s+/g," ");return V.length<=96?V:V.slice(0,95)+"\u2026"}),c=Vue.ref({}),d=V=>JSON.stringify([V.vpId,V.queryProgress?.sessionId,V.queryProgress?.turnId,V.queryProgress?.threadId]),u=(V,ne)=>!!c.value[d(V)]?.[ne],p=(V,ne)=>{let ke=d(V);c.value={...c.value,[ke]:{...c.value[ke],[ne]:!u(V,ne)}}};Vue.watch(()=>e.rows.filter(V=>V.queryProgress).map(d),V=>{c.value=Object.fromEntries(Object.entries(c.value).filter(([ne])=>V.includes(ne)))});let f=V=>Number.isSafeInteger(V)&&V>=0?V.toLocaleString():"\u2014",g=V=>Number.isSafeInteger(V)&&V>=0?f(V):i("yeaft.queryProgress.unavailable"),v=V=>(V.toolStats||[]).filter(ne=>ne.failedCalls>0).slice().sort((ne,ke)=>ke.failedCalls-ne.failedCalls||ne.name.localeCompare(ke.name)),h=Vue.ref({}),m=new Map,y=new Map,k=V=>{let ne=m.get(V);ne&&(ne.scrollTop=ne.scrollHeight,y.set(V,!0))},w=V=>{let ne=!h.value[V];h.value={...h.value,[V]:ne},ne&&(y.set(V,!0),Vue.nextTick(()=>k(V)))},b=(V,ne)=>{ne?(m.set(V,ne),y.has(V)||y.set(V,!0),Vue.nextTick(()=>{y.get(V)&&k(V)})):m.delete(V)},S=V=>{let ne=m.get(V);if(!ne)return;let ke=ne.scrollHeight-ne.scrollTop-ne.clientHeight;y.set(V,ke<8)};Vue.watch(()=>JSON.stringify((Array.isArray(e.tasks)?e.tasks:[]).map(V=>[V.id,V?.log?.preview||""])),()=>Vue.nextTick(()=>{m.forEach((V,ne)=>{y.get(ne)&&k(ne)})}));let C=V=>{let ne=V?.ownerVpId||"";return ne?s&&typeof s.vpLabel=="function"?s.vpLabel(ne):ne:"unknown"},P=V=>{if(!V)return"";try{return new Date(V).toLocaleTimeString()}catch{return String(V)}},_=V=>{switch(V?.kind){case"sub_agent":return i("yeaft.sessionStatus.task.kind.subAgent");case"shell":return i("yeaft.sessionStatus.task.kind.shell");default:return V?.kind||""}},E=V=>{let ne=V?.runtime?.command;return typeof ne=="string"?ne.trim():""},q=V=>{let ne=[],ke=V?.title||V?.id||"",ve=E(V);return ke&&ne.push(`${i("yeaft.sessionStatus.task.title")}: ${ke}`),ve&&ne.push(`${i("yeaft.sessionStatus.task.command")}: ${ve}`),ne.join(`
9964
9964
  `)},$=V=>`${V?.agentId||""}${V?.sessionId||""}::${V?.id||""}`,M=V=>V?.status==="running"&&(V.kind==="shell"&&!!V.runtime?.pid||V.kind==="sub_agent"&&!!V.runtime?.subAgentId),D=V=>!!(V?.id&&e.stoppingTasksById?.[$(V)]),Z=V=>c1(V,i),Q=V=>bC(V,i),R=V=>{switch(V.status){case"idle":return i("yeaft.vpTimeline.status.idle");case"typing":return i("yeaft.vpTimeline.status.typing");case"thinking":return i("yeaft.vpTimeline.status.thinking");case"retrying":return i("yeaft.vpTimeline.status.retrying");case"streaming":return i("yeaft.vpTimeline.status.streaming");case"tool":return i("yeaft.vpTimeline.status.tool");case"error":return i("yeaft.vpTimeline.status.error");case"offline":return i("yeaft.vpTimeline.status.offline");default:return V.status}},A=new Set(["typing","thinking","retrying","streaming","tool"]);return{hasAnnouncement:a,announcementPreview:l,statusLabel:R,isActiveStatus:V=>A.has(V),threadCountTitle:V=>{let ne=Array.isArray(V&&V.threads)?V.threads:[];return ne.length?ne.slice(0,5).map(ke=>`${ke.title||ke.threadId||"thread"}: ${ke.status||"idle"}`).join(`
9965
- `):""},vpTextColorFor:n,isProgressExpanded:u,toggleProgress:p,formatCount:f,formatTokenCount:g,failedTools:v,expandedTasks:h,toggleTaskExpanded:w,taskOwnerName:C,formatTaskTime:P,taskKindLabel:_,shellTaskCommand:E,taskSummaryTitle:q,isTaskCancellable:M,isTaskStopping:D,taskDetailLines:Z,subAgentTaskStreamText:Q,setTaskLogRef:b,onTaskLogScroll:S}}}});var SC,CC=L(()=>{Ds();SC={components:{NavigationIcon:$t},name:"YeaftSessionActions",emits:["toggle-search","reload-messages","toggle-session-status","toggle-workbench","reload-page","fork-session","merge-session"],props:{mergeDisabled:{type:Boolean,default:!1},mergeTitle:{type:String,default:""},showFork:{type:Boolean,default:!1},forkDisabled:{type:Boolean,default:!1},forkState:{type:String,default:"idle"},forkTitle:{type:String,default:""},searchOpen:{type:Boolean,default:!1},loadingMoreHistory:{type:Boolean,default:!1},sessionStatusVisible:{type:Boolean,default:!0},workbenchVisible:{type:Boolean,default:!1},canUseWorkbench:{type:Boolean,default:!1},showPageReload:{type:Boolean,default:!1}},template:`
9965
+ `):""},vpTextColorFor:n,isProgressExpanded:u,toggleProgress:p,formatCount:f,formatTokenCount:g,failedTools:v,expandedTasks:h,toggleTaskExpanded:w,taskOwnerName:C,formatTaskTime:P,taskKindLabel:_,shellTaskCommand:E,taskSummaryTitle:q,isTaskCancellable:M,isTaskStopping:D,taskDetailLines:Z,subAgentTaskStreamText:Q,setTaskLogRef:b,onTaskLogScroll:S}}}});var SC,CC=L(()=>{Ds();SC={components:{NavigationIcon:$t},name:"YeaftSessionActions",emits:["toggle-search","toggle-session-status","toggle-workbench","reload-page","fork-session","merge-session"],props:{mergeDisabled:{type:Boolean,default:!1},mergeTitle:{type:String,default:""},showFork:{type:Boolean,default:!1},forkDisabled:{type:Boolean,default:!1},forkState:{type:String,default:"idle"},forkTitle:{type:String,default:""},searchOpen:{type:Boolean,default:!1},sessionStatusVisible:{type:Boolean,default:!0},workbenchVisible:{type:Boolean,default:!1},canUseWorkbench:{type:Boolean,default:!1},showPageReload:{type:Boolean,default:!1}},template:`
9966
9966
  <div class="yeaft-session-actions">
9967
9967
  <div class="yeaft-session-actions-scroll">
9968
9968
  <button
@@ -10010,21 +10010,10 @@ ${String(e||"").trim()}
10010
10010
  >
10011
10011
  <NavigationIcon name="search" :size="16" />
10012
10012
  </button>
10013
- <!-- Message refresh \u2014 replays current Yeaft session history without a full page reload. -->
10014
- <button
10015
- class="yeaft-reload-btn"
10016
- :class="{ 'is-loading': loadingMoreHistory }"
10017
- @click="$emit('reload-messages')"
10018
- :disabled="loadingMoreHistory"
10019
- :aria-busy="loadingMoreHistory ? 'true' : 'false'"
10020
- :title="$t('yeaft.reloadMessages')"
10021
- :aria-label="$t('yeaft.reloadMessages')"
10022
- >
10023
- <NavigationIcon name="refresh" :size="16" />
10024
- </button>
10025
10013
  <!-- Page refresh is a mobile-only escape hatch; desktop keeps the header focused on session actions. -->
10026
10014
  <button
10027
10015
  v-if="showPageReload"
10016
+ type="button"
10028
10017
  class="yeaft-reload-btn yeaft-page-reload-btn"
10029
10018
  @click="$emit('reload-page')"
10030
10019
  :title="$t('yeaft.reloadPage')"
@@ -10192,13 +10181,11 @@ ${String(e||"").trim()}
10192
10181
  :merge-title="store.sessionMergeUnavailableReason(forkSessionRow) ? $t('yeaft.session.error.' + store.sessionMergeUnavailableReason(forkSessionRow)) : $t('yeaft.session.merge')"
10193
10182
  @merge-session="store.openSessionMerge(forkSessionRow)"
10194
10183
  :search-open="historySearchOpen"
10195
- :loading-more-history="store.yeaftManualHistoryRefreshLoading"
10196
10184
  :session-status-visible="sessionStatusVisible"
10197
10185
  :workbench-visible="store.workbenchExpanded"
10198
10186
  :can-use-workbench="canUseWorkbench"
10199
10187
  :show-page-reload="isMobile"
10200
10188
  @toggle-search="toggleHistorySearch"
10201
- @reload-messages="reloadMessages"
10202
10189
  @toggle-session-status="toggleSessionStatus"
10203
10190
  @toggle-workbench="toggleWorkbench"
10204
10191
  @reload-page="reloadPage"
Binary file
@@ -6,7 +6,7 @@
6
6
  <title>Yeaft</title>
7
7
  <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><rect width='32' height='32' rx='8' fill='%232c2c2c'/><path d='M16 22V13M16 13L10 8M16 13L22 8' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round' fill='none'/><circle cx='10' cy='8' r='2.4' fill='white'/><circle cx='22' cy='8' r='2.4' fill='white'/><circle cx='16' cy='22' r='2.4' fill='white'/></svg>">
8
8
  <link rel="stylesheet" href="vendor/katex/katex.min.css?v=b0d91614">
9
- <link rel="stylesheet" href="style.bundle.css?v=e3fe0ff3">
9
+ <link rel="stylesheet" href="style.bundle.css?v=2280cd95">
10
10
  <script src="vendor.bundle.js?v=b4d2c175"></script>
11
11
  <script defer src="jszip.min.js"></script>
12
12
  <script defer src="docx-preview.min.js"></script>
@@ -17,6 +17,6 @@
17
17
  </head>
18
18
  <body>
19
19
  <div id="app"></div>
20
- <script type="module" src="app.bundle.js?v=0251076a"></script>
20
+ <script type="module" src="app.bundle.js?v=7e59ce80"></script>
21
21
  </body>
22
22
  </html>