markstream-vue 1.0.4 → 1.0.5-beta.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/dist/CodeBlockNode.js +1 -1
- package/dist/CodeBlockShell.vue_vue_type_style_index_0_lang.js +1 -1
- package/dist/Tooltip.js +1 -1
- package/dist/exports.js +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +11 -6
- package/dist/index.js +1 -1
- package/dist/index.px.css +1 -1
- package/dist/index.tailwind.css +1 -1
- package/dist/index10.js +1 -1
- package/dist/index11.js +1 -1
- package/dist/index2.js +1 -1
- package/dist/index5.js +1 -1
- package/dist/index6.js +1 -1
- package/dist/index7.js +1 -1
- package/dist/index8.js +1 -1
- package/dist/index9.js +1 -1
- package/dist/tailwind.js +0 -0
- package/dist/utils/index.js +1 -1
- package/dist/workers-mermaidWorkerClient.js +1 -1
- package/package.json +4 -4
package/dist/index9.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable,l=(t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r,i=(e,t)=>{for(var n in t||(t={}))o.call(t,n)&&l(e,n,t[n]);if(r)for(var n of r(t))a.call(t,n)&&l(e,n,t[n]);return e},u=(e,r)=>t(e,n(r)),s=(e,t,n)=>l(e,"symbol"!=typeof t?t+"":t,n);import{defineComponent as c,ref as d,reactive as m,provide as f,computed as v,shallowRef as h,watch as g,nextTick as y,onMounted as k,onUpdated as p,onBeforeUnmount as b,openBlock as w,createElementBlock as S,normalizeClass as M,createElementVNode as x,normalizeStyle as B,Fragment as K,renderList as T,renderSlot as H,mergeProps as q,createBlock as F,unref as C,resolveDynamicComponent as A,toDisplayString as N,createCommentVNode as R,createTextVNode as _}from"vue";import{x as P,a8 as j,a2 as I,U as z,a1 as O,a0 as $,$ as E,a3 as L,a9 as D,Z as V,y as W}from"./exports.js";const Y=["data-markstream-item-key","data-markstream-item-kind"],U={key:0,class:"markstream-virtual-timeline__status"},Z=/* @__PURE__ */W(/* @__PURE__ */c(u(i({},{name:"MarkstreamVirtualTimeline"}),{__name:"MarkstreamVirtualTimeline",props:{items:{},threadKey:{},layoutRevision:{},getKey:{},getKind:{},getContent:{},getFinal:{},getRevision:{},estimateItemHeight:{},overscan:{default:4},overscanPx:{default:1200},stickToBottom:{type:[Boolean,String],default:"auto"},measurementKey:{},markdownMode:{default:"docs"},markdownCodeRenderer:{},initialThreadState:{},markdownFade:{type:Boolean,default:!1},restoreMaxLoadingMs:{type:[Number,Boolean],default:!1},debug:{type:Boolean}},emits:["height-change","virtual-state-change","range-change","thread-state-change"],setup(e,{expose:t,emit:n}){const r=e,o=n;function a(e){o("thread-state-change",e)}const l=/* @__PURE__ */new Map;function c(e){var t;!0===r.debug&&l.set(e,(null!=(t=l.get(e))?t:0)+1)}const W=d(null),Z=d(0),G=d(0),J=d(0),Q=d(!0),X=d(!0),ee=m(/* @__PURE__ */new Map),te=/* @__PURE__ */new Map,ne=/* @__PURE__ */new Map,re=/* @__PURE__ */new Map,oe=m(/* @__PURE__ */new Map),ae=m(/* @__PURE__ */new Map),le=/* @__PURE__ */new Map,ie=/* @__PURE__ */new Map,ue=/* @__PURE__ */new Map,se=/* @__PURE__ */new Map,ce=d(!1),de=d(!0),me=d(!0);f("markstreamHostScrollManaged",me);const fe=[0,80,180,360,640];let ve,he,ge=null,ye=0,ke=null,pe=[],be=null,we=null,Se=-1,Me=0,xe=null,Be=!1,Ke=!1,Te=null,He=0,qe=0,Fe={top:0,bottom:0},Ce=!1;const Ae=v(()=>null==r.threadKey?void 0:String(r.threadKey));let Ne=Ae.value;function Re(e){return"chat"===e||"minimal"===e||"docs"===e?e:"docs"}const _e=v(()=>Re(r.markdownMode)),Pe=v(()=>function(e,t=Re(r.markdownMode)){return"pre"===e||"shiki"===e||"monaco"===e?e:"docs"===t?"monaco":"pre"}(r.markdownCodeRenderer,_e.value)),je=v(()=>[null==r.measurementKey?"":String(r.measurementKey),J.value].join(":")),Ie=v(()=>`${je.value}${_e.value}${Pe.value}`);class ze{constructor(e){s(this,"tree"),s(this,"total"),this.tree=Array.from({length:e.length+1},()=>0),this.total=0,e.forEach((e,t)=>this.add(t,e))}add(e,t){if(Number.isFinite(t)&&0!==t){this.total+=t;for(let n=e+1;n<this.tree.length;n+=n&-n)this.tree[n]+=t}}prefixSum(e){let t=Math.max(0,Math.min(e,this.tree.length-1)),n=0;for(;t>0;)n+=this.tree[t],t-=t&-t;return n}lowerBound(e,t="gte"){const n=this.tree.length-1;if(n<=0)return 0;if(e<=0)return 0;if(e>=this.total)return n-1;let r=0,o=1;for(;o<<1<this.tree.length;)o<<=1;let a=0;for(;o>0;o>>=1){const n=r+o;if(n<this.tree.length){const o=a+this.tree[n];("gt"===t?o<=e:o<e)&&(r=n,a=o)}}return Math.min(r,n-1)}}const Oe=h([]),$e=/* @__PURE__ */new Map,Ee=h(new ze([])),Le=d(0);let De=[];const Ve=v(()=>(Le.value,{records:Oe.value,totalHeight:Ee.value.total}));function We(){var e;const t=[],n=[],o=function(){var e;return null!=(e=Ae.value)?e:"timeline"}();$e.clear();for(let a=0;a<r.items.length;a++){const l=r.items[a],s=et(l,a),c={item:l,index:a,key:s,kind:I(l,a,r),markdown:j(l,a,r)};let d=vt(c);null==d&&(d=null!=(e=De[a])?e:z(l,a,r));const m=u(i({},c),{renderKey:`${o}:${s}`,offset:0,size:d,component:null==l?void 0:l.component});t.push(m),n.push(d),$e.has(s)||$e.set(s,m)}Oe.value=t,Ee.value=new ze(n),De=[],Le.value+=1}function Ye(e){return Le.value,Ee.value.prefixSum(e.index)}function Ue(e){return u(i({},e),{offset:Ye(e)})}function Ze(e,t){const n=$e.get(e);if(!n)return;const r=Math.ceil(t),o=r-n.size;0!==o&&(n.size=r,Ee.value.add(n.index,o),Le.value+=1)}function Ge(e,t="gte"){return Le.value,Ee.value.lowerBound(e,t)}const Je=v(()=>{var e;return Math.max(0,null!=(e=r.overscan)?e:4)}),Qe=v(()=>{var e;const t=Math.max(0,null!=(e=r.overscanPx)?e:1200);return de.value?t:Math.min(t,160)}),Xe=v(()=>{var e,t,n;const r=Ve.value.records;if(0===r.length)return{start:0,end:0,records:[],topSpacerHeight:0,bottomSpacerHeight:0};const o=Je.value,a=Qe.value,l=Tt(),i=l+Math.max(1,G.value);let u=Ge(Math.max(0,l-a),"gt"),s=Ge(Math.min(Ve.value.totalHeight,i+a))+1;u=Math.max(0,u-o),s=Math.min(r.length,Math.max(s+o,u+1));const c=r.slice(u,s).map(Ue),d=c[0],m=c[c.length-1],f=null!=(e=null==d?void 0:d.offset)?e:0,v=null!=(t=null==m?void 0:m.offset)?t:0;return{start:u,end:s,records:c,topSpacerHeight:f,bottomSpacerHeight:Math.max(0,Ve.value.totalHeight-(v+(null!=(n=null==m?void 0:m.size)?n:0)))}});function et(e,t){return O(e,t,r)}const tt=/* @__PURE__ */new WeakMap;let nt=1;function rt(e){if("object"!=typeof e&&"function"!=typeof e||null===e)return String(null!=e?e:"");const t=e;let n=tt.get(t);return n||(n=nt++,tt.set(t,n)),String(n)}function ot(e,t,n){var o;if(n)return"";const a="string"==typeof(null==e?void 0:e.text)?e.text:"string"==typeof(null==e?void 0:e.message)?e.message:"string"==typeof(null==e?void 0:e.label)?e.label:String(null!=(o=E(e,t,r))?o:"");return a?`${a.length}:${function(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}(a)}`:""}function at(e,t){if("function"!=typeof r.estimateItemHeight)return"";const n=r.estimateItemHeight(e,t);if(!Number.isFinite(n)||n<=0)return"";const o=Math.ceil(n);return De[t]=o,String(o)}function lt(e){var t;return null!=(t=r.items[e.index])?t:e.item}function it(e){return e.item}function ut(e){var t;const n=lt(e);return null!=(t=null==n?void 0:n.component)?t:e.component}function st(e,t=Ae.value){const n=it(e),o=L(n,e.index,r);return[null!=t?t:"timeline",e.key,null==o?"":String(o)].join(":")}function ct(e,t=Ae.value){if(e.markdown)return st(e,t);const n=it(e),o=L(n,e.index,r);return[null!=t?t:"timeline",e.key,null==o?"":String(o)].join(":")}function dt(e){return{sourceKey:ct(e),measurementKey:e.markdown?Ie.value:je.value,widthBucket:J.value}}function mt(e,t){var n,r,o,a,l,i;return(null!=(n=null==e?void 0:e.sourceKey)?n:"")===(null!=(r=null==t?void 0:t.sourceKey)?r:"")&&(null!=(o=null==e?void 0:e.measurementKey)?o:"")===(null!=(a=null==t?void 0:t.measurementKey)?a:"")&&(null!=(l=null==e?void 0:e.widthBucket)?l:0)===(null!=(i=null==t?void 0:t.widthBucket)?i:0)}function ft(e,t,n=Ae.value){var r;return!(!e||!t)&&t.sourceKey===ct(e,n)&&t.measurementKey===(e.markdown?Ie.value:je.value)&&(null!=(r=t.widthBucket)?r:0)===J.value}function vt(e,t=Ae.value){const n=ee.get(e.key);return ft(e,te.get(e.key),t)&&Number.isFinite(n)&&n>0?n:null}function ht(e){return Ve.value,$e.get(e)}function gt(e,t){var n,r;return!!(e&&e.markdown&&t)&&t.sessionKey===st(e)&&(null!=(n=t.threadKey)?n:"")===(null!=(r=Ae.value)?r:"")&&!!function(e){const t=Ie.value,n=null!=e?e:"";return n===t||n.startsWith(`${t}\0`)}(t.measurementKey)}function yt(e,t){return gt(e,t)}function kt(e,t,n){!Number.isFinite(t)||t<=0||(ae.set(e,Math.ceil(t)),le.set(e,n))}function pt(e,t=oe.get(e)){const n=function(e,t=oe.get(e)){var n;if(!yt(ht(e),t))return 0;const r=Number(null==(n=null==t?void 0:t.metrics)?void 0:n.totalHeight);return Number.isFinite(r)&&r>0?Math.ceil(r):0}(e,t);return n>0&&kt(e,n,t),n}function bt(e){return e===ye&&Me===e&&!de.value}function wt(){if(null!=ke&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(ke),ke=null,null!=be&&"undefined"!=typeof window&&window.clearTimeout(be),be=null,"undefined"!=typeof window)for(const e of pe)window.clearTimeout(e);pe=[]}function St(){var e;return Math.max(0,G.value||(null==(e=W.value)?void 0:e.clientHeight)||0)}function Mt(){const e=W.value;if(!e||"function"!=typeof getComputedStyle)return void(Fe={top:0,bottom:0});const t=getComputedStyle(e),n=Number.parseFloat(t.paddingTop)||0,r=Number.parseFloat(t.paddingBottom)||0;Fe={top:n,bottom:r}}function xt(){return Fe.top}function Bt(){const e=Fe;return Math.max(0,Ve.value.totalHeight+e.top+e.bottom)}function Kt(){var e,t;return Math.max(Bt(),null!=(t=null==(e=W.value)?void 0:e.scrollHeight)?t:0)}function Tt(){return Math.max(0,Z.value-xt())}function Ht(){return Math.max(0,Kt()-St())}function qt(e){const t=Number(e);return Number.isFinite(t)?Math.max(0,Math.min(t,Ht())):0}function Ft(){return Math.max(0,Ht()-Z.value)}function Ct(){const e=Ft();X.value=e<=2,!0!==r.stickToBottom?!1!==r.stickToBottom?Q.value=e<=48:Q.value=!1:Q.value=!0}function At(){var e,t;const n=null!=(t=null==(e=W.value)?void 0:e.clientWidth)?t:0;J.value=Number.isFinite(n)&&n>0?32*Math.round(n/32):0}function Nt(e={}){const t=W.value;t&&(Z.value=Math.max(0,t.scrollTop||0),G.value=t.clientHeight||0),At(),Ct(),(!0===e.remember||!1!==e.remember&&!ce.value)&&ln()}function Rt(e,t={}){const n=qt(e),r=W.value;Z.value=n,r&&(G.value=r.clientHeight||G.value||0,!1!==t.writeDom&&Math.abs((r.scrollTop||0)-n)>.5&&(r.scrollTop=n)),At(),!1!==t.updatePinned&&Ct(),(!0===t.remember||!1!==t.remember&&!ce.value)&&ln()}function _t(){if(!de.value){const e=W.value,t=xe;return e&&null!=t&&Math.abs((e.scrollTop||0)-t)>.5&&(e.scrollTop=t),void mn(Me,he)}Nt()}function Pt(e){Rt(e,{writeDom:!0,remember:!0})}function jt(){Pt(Ht())}function It(e,t){const n=ne.get(e);if(!Number.isFinite(n)||null==n||n<=0)return 0;const r=re.get(e);return t&&r&&!zt(r,t)?0:Math.ceil(n)}function zt(e,t){var n,r,o,a;return e.sourceKey===t.sourceKey&&(0===(null!=(n=t.widthBucket)?n:0)||0===(null!=(r=e.widthBucket)?r:0)||(null!=(o=t.widthBucket)?o:0)===(null!=(a=e.widthBucket)?a:0))&&(Ot(t.measurementKey)||Ot(e.measurementKey)||t.measurementKey===e.measurementKey)}function Ot(e){return":0"===e||!0===(null==e?void 0:e.startsWith(":0"))}function $t(e){ne.delete(e),re.delete(e)}function Et(e,t,n,o={}){if(!Number.isFinite(t)||t<=0)return;const a=ee.get(e),l=n&&!mt(te.get(e),n);!function(e,t){if(!t)return;const n=re.get(e);n&&!zt(n,t)&&(ne.delete(e),re.delete(e))}(e,n);const i=It(e,n),u=i>0?i:Math.ceil(t);if(null!=a&&Math.abs(a-u)<=1&&!l)return;if(!1===o.updateLayout)return n&&te.set(e,n),ee.set(e,u),void sn(o.rememberThreadKey);if(ce.value)return n&&te.set(e,n),ee.set(e,u),Ze(e,u),void function(e=Me,t=he){t&&y(()=>{mn(e,t),null==ke&&"function"==typeof requestAnimationFrame&&(ke=requestAnimationFrame(()=>{ke=null,mn(e,t)}))})}();const s=(c=on(),d=Ft(),!0===r.stickToBottom?{type:"bottom",distanceFromBottomPx:0}:"auto"===r.stickToBottom&&Q.value?{type:"bottom",distanceFromBottomPx:X.value?0:Math.max(0,d)}:c);var c,d;n&&te.set(e,n),ee.set(e,u),Ze(e,u),sn(o.rememberThreadKey),function(e){if(!Lt.scheduled)return Lt.anchor=e,Lt.scheduled=!0,void(Lt.raf=Yt(Zt));!Lt.anchor&&e&&(Lt.anchor=e)}(s)}g([()=>function(){const e=r.layoutRevision;return null!=e?["explicit",String(e),r.items.length].join(""):r.items.map((e,t)=>{var n;const o=et(e,t),a=j(e,t,r);return[o,I(e,t,r),a?1:0,null!=(n=L(e,t,r))?n:"",at(e,t),ot(e,t,a),(l=null==e?void 0:e.component,l?"string"==typeof l?`s:${l}`:`o:${rt(l)}`:"")].join("");var l}).join("\0")}(),je,Ie,Ae,()=>rt(r.estimateItemHeight),()=>rt(r.getKey),()=>rt(r.getKind),()=>rt(r.getContent),()=>rt(r.getFinal),()=>rt(r.getRevision)],()=>We(),{immediate:!0,flush:"sync"});const Lt={scheduled:!1,raf:null,anchor:void 0},Dt=/* @__PURE__ */new Map;let Vt=!1,Wt=null;function Yt(e){return"function"==typeof requestAnimationFrame?requestAnimationFrame(e):(y(e),null)}function Ut(e){null!=e&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(e)}function Zt(){if(!Lt.scheduled)return;Lt.scheduled=!1,Lt.raf=null;const e=Lt.anchor;Lt.anchor=void 0,e&&dn(e),Nt({remember:!1})}function Gt(){var e,t;if(!Vt)return;Vt=!1,Wt=null;const n=Array.from(Dt.entries());Dt.clear();for(const[r,o]of n){if(ae.get(r)!==o.logicalHeight)continue;const n=$e.get(r);if(!n)continue;const a=(null!=(e=o.threadKey)?e:"")===(null!=(t=Ae.value)?t:"");Xt(n,{allowMarkdownShrink:o.allowMarkdownShrink,markdownLogicalHeight:o.logicalHeight,rememberThreadKey:o.threadKey,source:o.itemSizeSource,updateLayout:a})}Zt()}function Jt(){Gt(),Zt()}function Qt(e){var t;null==(t=ue.get(e))||t.disconnect(),ue.delete(e),ie.delete(e)}function Xt(e,t={}){var n,o,a;const i=(u=e.key,D(ie.get(u),c));var u;const s=null!=(n=t.source)?n:dt(e);let d=!1;const m=()=>{d||(d=!0,function(e,t){const n=function(){if(!0!==r.debug||0===l.size)return null;let e=0;for(const n of l.values())e+=n;const t={total:e,byLabel:Object.fromEntries(Array.from(l.entries()).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])))};return l.clear(),t}();n&&console.info("[markstream-vue][timeline][perf] layout-reads",{label:e,itemKey:t,layoutReads:n})}("reconcileRecordSize",e.key))};if(!e.markdown)return i>0&&Et(e.key,i,s,t),void m();const f=mt(te.get(e.key),s)&&null!=(o=ee.get(e.key))?o:0,v=null!=(a=t.markdownLogicalHeight)?a:function(e){var t;return gt(ht(e),le.get(e))?null!=(t=ae.get(e))?t:0:pt(e)}(e.key),h=function(e,t){return V(ie.get(e),c,t)}(e.key,i);if(v>0){let n=Math.max(i,v+h);(!t.allowMarkdownShrink||ce.value)&&f>0&&(n=Math.max(n,f));const r=It(e.key,s);return(r>0&&v>r+1&&!ce.value||t.allowMarkdownShrink&&!ce.value)&&$t(e.key),n>0&&Et(e.key,n,s,t),void m()}return String(E(lt(e),e.index,r)).trim()?f>0?(i>f+1&&Et(e.key,i,s,t),void m()):(i>0&&Et(e.key,i,s,t),void m()):(i>0&&($t(e.key),Et(e.key,i,s,t)),void m())}function en(e){return t=>{!function(e,t){const n=function(e){const t=e&&"$el"in e?e.$el:e;return t instanceof HTMLElement?t:null}(t),r=ie.get(e.key);if(!n)return void Qt(e.key);if(r===n)return void Xt(e);if(Qt(e.key),ie.set(e.key,n),Xt(e),"undefined"==typeof ResizeObserver)return;const o=new ResizeObserver(()=>{Xt(e)});o.observe(n),ue.set(e.key,o)}(e,t)}}function tn(e){const t=lt(e),n=$(t,e.index,r),a=oe.get(e.key),l=_e.value,i=Pe.value,u={enabled:!0,sessionKey:st(e),threadKey:Ae.value,scrollRoot:()=>W.value,restoreState:yt(e,a)?a:null,restoreAnchor:!1,measurementKey:Ie.value,settleMode:"manual",settledToken:n,emitIntervalMs:96,heightDiffThresholdPx:4};return{content:E(t,e.index,r),final:n,mode:l,codeRenderer:i,nodeVirtual:!1,fade:!0===r.markdownFade,indexKey:st(e),virtualScroll:u,onHeightChange(t){if(t.sessionKey!==st(e))return;kt(e.key,t.totalHeight,{sessionKey:t.sessionKey,threadKey:Ae.value,measurementKey:Ie.value});const n=function(e){return"final"===e.phase||!!e.stable&&("measured"===e.confidence||"final"===e.confidence)}(t),r=Math.ceil(t.totalHeight);var a;!function(e,t){Dt.set(e.key,t),Vt||(Vt=!0,Wt=Yt(Gt))}(e,{allowMarkdownShrink:n,itemSizeSource:dt(e),logicalHeight:r,threadKey:Ae.value}),a={itemKey:e.key,metrics:t},o("height-change",a)},onVirtualStateChange(t){var n;t.sessionKey===st(e)&&(oe.set(e.key,t),pt(e.key,t),sn(),n={itemKey:e.key,state:t},o("virtual-state-change",n))}}}function nn(e){return{item:lt(e),index:e.index,itemKey:e.key,kind:e.kind,measureRef:en(e),markdownProps:tn(e)}}function rn(e){var t;const n=null!=(t=lt(e))?t:{};return"string"==typeof n.text?n.text:"string"==typeof n.message?n.message:"string"==typeof n.label?n.label:E(n,e.index,r)}function on(){const e=Ft();if(e<=2)return{type:"bottom",distanceFromBottomPx:Math.max(0,e)};const t=Tt(),n=Ge(t,"gt"),r=Ve.value.records[n];if(r){const e=Ye(r);if(t>=e&&t<e+r.size)return{type:"item",itemKey:r.key,offsetWithinItemPx:t-e}}const o=Xe.value.records[0];return o?{type:"item",itemKey:o.key,offsetWithinItemPx:0}:void 0}function an(e=Ae.value){Jt();const t={},n={};for(const r of Ve.value.records){const o=vt(r,e),a=te.get(r.key);null!=o&&ft(r,a,e)&&(t[r.key]=o,n[r.key]=a)}return{threadKey:e,measurementKey:je.value,widthBucket:J.value,outerAnchor:on(),itemHeights:t,itemSizeSources:n,markdownStates:Object.fromEntries(oe.entries())}}function ln(e=Ae.value){if(!e)return;const t=an(e);return se.set(e,t),e===Ae.value&&(Te=t),a(t),t}function un(){const e=ve;return null!=we&&"undefined"!=typeof window&&window.clearTimeout(we),we=null,ve=void 0,e?ln(e):void 0}function sn(e=Ae.value){e&&(ve=e,null==we&&("undefined"!=typeof window?we=window.setTimeout(()=>{we=null,un()},80):un()))}function cn(e){if(!e)return null;if("bottom"===e.type)return(de.value?Kt():Bt())-St()-Math.max(0,e.distanceFromBottomPx);const t=ht(e.itemKey);return t?xt()+Ye(t)+Math.max(0,e.offsetWithinItemPx):null}function dn(e,t={}){const n=cn(e);return null!=n&&(Rt(n,{writeDom:!0,remember:!0===t.remember}),!0)}function mn(e,t){if(e===ye){if(t){const e=dn(t,{remember:!1});xe=e?Z.value:null}Nt({remember:!1})}}function fn(e,t){const n=e.getBoundingClientRect();return n.width>0&&n.height>0&&n.bottom>t.top&&n.top<t.bottom}function vn(e,t){const n=e.getBoundingClientRect(),r=t.getBoundingClientRect();return n.bottom>r.top&&n.top<r.bottom}function hn(e){if(e.closest(".code-editor-container.is-hidden"))return!1;let t=e;for(;t;){const e=window.getComputedStyle(t);if("none"===e.display||"hidden"===e.visibility||Number.parseFloat(e.opacity||"1")<=.01)return!1;t=t.parentElement}const n=e.getBoundingClientRect();return n.width>0&&n.height>0}function gn(e){return Boolean(e.querySelector(['[data-markstream-pending="true"]','[data-markstream-mermaid][data-markstream-mode="pending"]','.mermaid-block-container[data-markstream-mode="pending"]','[data-markstream-code-loading="1"]'].join(",")))}function yn(e){var t;if(e.querySelector(":scope > .node-placeholder"))return!1;const n=e.querySelector(":scope > .node-content");return!!n&&(!gn(n)&&(!!function(e){const t=Array.from(e.querySelectorAll("[data-markstream-math]"));return!t.length||t.every(e=>{const t=e.dataset.markstreamMode;return!("true"===e.dataset.markstreamPending||"loading"===t||"katex"!==t&&"fallback"!==t)})}(n)&&("code_block"===(null!=(t=e.dataset.nodeType)?t:"")?function(e){if(e.querySelector('[data-markstream-code-loading="1"]'))return!1;const t=e.querySelector('[data-markstream-code-block="1"]');if(t){const e="true"===t.dataset.markstreamEnhanced,r=function(e){if(!e)return!1;if(e.classList.contains("is-fading-out"))return!1;const t=window.getComputedStyle(e);if("none"===t.display||Number.parseFloat(t.opacity||"1")<=.01)return!1;const n=e.getBoundingClientRect();return n.width>0&&n.height>0}(t.querySelector("pre.code-pre-fallback"));return e||r||(n=t,Array.from(n.querySelectorAll(".monaco-editor, .monaco-diff-editor")).some(hn))}var n;return function(e){var t,n;const r=e.querySelector("[data-markstream-mermaid], .mermaid-block-container");if(r){if("true"===r.dataset.markstreamPending)return!1;const e=r.dataset.markstreamMode;return"preview"===e?Boolean(r.querySelector("svg")||r.querySelector('[data-mermaid-svg-layer="1"] svg')):"fallback"===e&&Boolean(null==(n=null==(t=r.querySelector(".mermaid-source-code"))?void 0:t.textContent)?void 0:n.trim())}const o=e.querySelector("[data-markstream-infographic], .infographic-block-container");if(o)return"true"!==o.dataset.markstreamPending;const a=e.querySelector("[data-markstream-d2], .d2-block-container");return a?"true"!==a.dataset.markstreamPending:Boolean(e.querySelector('pre[data-markstream-pre="1"]'))}(e)}(n):function(e){var t;return(null!=(t=e.textContent)?t:"").trim().length>0||Boolean(e.querySelector(["hr","br","table","blockquote","img","svg","canvas","input","button","select","textarea","[role]","[aria-label]","[data-markstream-math]","[data-markstream-mermaid]","[data-markstream-infographic]","[data-markstream-d2]",'[data-markstream-pre="1"]'].join(",")))}(n))))}function kn(e,t){var n;if(!e.markdown)return!0;const o=E(lt(e),e.index,r);if(!String(null!=o?o:"").trim())return!0;if(t.querySelector("[data-node-index]"))return!0;const a=t.querySelector(".markdown-renderer"),l=null!=a?a:t;return!gn(l)&&(!!(null!=(n=l.textContent)?n:"").trim()||Boolean(l.querySelector(["hr","br","table","blockquote","img","svg","canvas","input","button","[role]","[aria-label]","[data-markstream-math]","[data-markstream-mermaid]","[data-markstream-infographic]","[data-markstream-d2]",'[data-markstream-pre="1"]','[data-markstream-code-block="1"]'].join(","))))}function pn(e,t,n){if(!e.markdown)return!0;const o=E(lt(e),e.index,r);if(!String(null!=o?o:"").trim())return!0;const a=n.getBoundingClientRect(),l=Array.from(t.querySelectorAll("[data-node-index]")).filter(e=>fn(e,a));if(l.length>0)return l.every(e=>yn(e));const i=t.querySelector(".markdown-renderer"),u=null!=i?i:t;return u.querySelector("[data-node-index], .node-placeholder")?!!function(e,t,n,r){if("bottom"!==(null==he?void 0:he.type))return!1;if(!bn(e))return!1;const o=n.getBoundingClientRect(),a=t.getBoundingClientRect();return o.width>0&&o.height>0&&o.bottom<=r.top+1&&a.bottom>r.top}(e,t,u,a)&&kn(e,t):kn(e,t)}function bn(e){const t=te.get(e.key);return It(e.key,t)>0}function wn(e,t){var n,o,a,l;if(!e.markdown)return!0;if(!Be&&!Ke)return!0;if(bn(e))return!0;const i=E(lt(e),e.index,r);if(!String(null!=i?i:"").trim())return!0;if(!t.querySelector(".markdown-renderer"))return!1;const u=oe.get(e.key);if(!yt(e,u))return!1;const s=null==u?void 0:u.metrics,c=Number(null!=(n=null==s?void 0:s.totalHeight)?n:0);if(!Number.isFinite(c)||c<=0)return!1;const d=Number(null!=(o=null==s?void 0:s.measuredCount)?o:0),m=Number(null!=(a=null==s?void 0:s.estimatedCount)?a:0),f=Number(null!=(l=null==s?void 0:s.nodeCount)?l:0),v=f<=0||d>=f&&m<=0,h="measured"===(null==s?void 0:s.confidence)||"final"===(null==s?void 0:s.confidence),g=!0===(null==s?void 0:s.stable)||h;return Ke?v&&!0===(null==s?void 0:s.final)&&h:g||!0===(null==s?void 0:s.final)}function Sn(){const e=W.value;if(!e)return!1;const t=cn(he);if(null!=t&&Math.abs((e.scrollTop||0)-qt(t))>.5)return!1;const n=Xe.value.records;if(!n.length)return 0===Ve.value.records.length;const r=new Map(Array.from(e.querySelectorAll("[data-markstream-item-key]")).map(e=>{var t;return[null!=(t=e.dataset.markstreamItemKey)?t:"",e]})),o=[];for(const i of n){const t=r.get(i.key);t&&vn(t,e)&&o.push({record:i,el:t})}if(!o.length)return!1;for(const{record:i,el:u}of o){if(u.offsetHeight+1<i.size)return!1;if(!pn(i,u,e))return!1;if(!wn(i,u))return!1}const a=e.getBoundingClientRect();if(Array.from(e.querySelectorAll(['[data-markstream-pending="true"]','[data-markstream-mermaid][data-markstream-mode="pending"]','.mermaid-block-container[data-markstream-mode="pending"]','[data-markstream-code-loading="1"]'].join(","))).some(e=>fn(e,a)))return!1;const l=Array.from(e.querySelectorAll("[data-node-index]")).filter(e=>fn(e,a));for(const i of l)if(!yn(i))return!1;return!0}function Mn(){const e=W.value;if(!e)return"";const t=e.getBoundingClientRect(),n=new Map(Array.from(e.querySelectorAll("[data-markstream-item-key]")).map(e=>{var t;return[null!=(t=e.dataset.markstreamItemKey)?t:"",e]})),r=Xe.value.records.map(e=>{var t,r,o,a,l,i,u,s,c;const d=n.get(e.key),m=null==d?void 0:d.querySelector(".markdown-renderer"),f=null==(t=oe.get(e.key))?void 0:t.metrics;return[e.key,e.size,null!=(r=null==d?void 0:d.offsetHeight)?r:0,null!=(o=null==d?void 0:d.scrollHeight)?o:0,null!=(a=null==m?void 0:m.offsetHeight)?a:0,null!=(l=null==m?void 0:m.scrollHeight)?l:0,f?Math.round(Number(f.totalHeight||0)):"",null!=(i=null==f?void 0:f.measuredCount)?i:"",null!=(u=null==f?void 0:f.estimatedCount)?u:"",null!=(s=null==f?void 0:f.nodeCount)?s:"",!0===(null==f?void 0:f.final)?1:0,!0===(null==f?void 0:f.stable)?1:0,null!=(c=null==f?void 0:f.confidence)?c:""].join(":")}).join("|"),o=Array.from(e.querySelectorAll("[data-node-index]")).filter(e=>fn(e,t)).map(e=>{var t,n,r,o,a;const l=e.getBoundingClientRect(),i=e.querySelector(":scope > .node-content"),u=null==i?void 0:i.querySelector('[data-markstream-code-block="1"]'),s=null==i?void 0:i.querySelector("pre.code-pre-fallback"),c=null==i?void 0:i.querySelector(".monaco-editor, .monaco-diff-editor");return[null!=(t=e.dataset.nodeIndex)?t:"",null!=(n=e.dataset.nodeType)?n:"",Math.round(l.height),null!=(r=null==i?void 0:i.offsetHeight)?r:0,null!=(o=null==i?void 0:i.scrollHeight)?o:0,null!=(a=null==u?void 0:u.dataset.markstreamEnhanced)?a:"",u?Math.round(u.getBoundingClientRect().height):0,s?Math.round(s.getBoundingClientRect().height):0,c?Math.round(c.getBoundingClientRect().height):0].join(":")}).join("|");return[Math.round(e.scrollTop||0),Math.round(e.scrollHeight||0),Math.round(Ve.value.totalHeight||0),r,o].join("\n")}function xn(){return"undefined"!=typeof performance?performance.now():Date.now()}function Bn(){return Ke?24:2}function Kn(e){bt(e)&&He!==e&&(He=e,function(e){return t=this,n=function*(){const t=xn();let n=0,r="";for(let o=0;o<40;o++){if(yield y(),yield new Promise(e=>{"function"!=typeof requestAnimationFrame?e():requestAnimationFrame(()=>e())}),!bt(e))return!1;mn(e,he);const o=xn(),a=Sn(),l=a?Mn():"";if(a&&l===r&&l){if(n+=1,n>=Bn()&&o-t>=96)return!0}else n=0,r=l}return!1},new Promise((e,r)=>{var o=e=>{try{l(n.next(e))}catch(t){r(t)}},a=e=>{try{l(n.throw(e))}catch(t){r(t)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,a);l((n=n.apply(t,null)).next())});var t,n}(e).then(t=>{if(He===e&&(He=0),bt(e))return t?void Cn(e):function(){if(Se<0)return!1;const e=function(){if(!1===r.restoreMaxLoadingMs)return Number.POSITIVE_INFINITY;const e=Number(r.restoreMaxLoadingMs);return Number.isFinite(e)&&e>0?e:Number.POSITIVE_INFINITY}();return Number.isFinite(e)&&xn()-Se>=e}()?(!0===r.debug&&import.meta,void Cn(e)):(function(e){qe!==e&&(qe=e,!0===r.debug&&import.meta)}(e),void function(e){bt(e)&&"undefined"!=typeof window&&(null!=be&&window.clearTimeout(be),be=window.setTimeout(()=>{be=null,bt(e)&&Kn(e)},120))}(e))}))}function Tn(){de.value=!0,Se=-1,He=0,qe=0,Be=!1,Ke=!1,null!=be&&"undefined"!=typeof window&&window.clearTimeout(be),be=null}function Hn(){Ce=!0}function qn(e){var t,n;const r=[];if(!function(e){var t,n;return!!e&&(null!=(t=e.measurementKey)?t:"")===je.value&&(null!=(n=e.widthBucket)?n:0)===J.value}(e))return r;for(const[o,a]of Object.entries(null!=(t=null==e?void 0:e.itemHeights)?t:{})){if(!Number.isFinite(a)||a<=0)continue;const t=ht(o),l=null==(n=null==e?void 0:e.itemSizeSources)?void 0:n[o];ft(t,l)&&r.push([o,Math.ceil(a),l])}return r}function Fn(e){var t;for(const[n,r]of Object.entries(null!=(t=null==e?void 0:e.markdownStates)?t:{}))if(yt(ht(n),r))return!0;return!1}function Cn(e){if(e===ye){wt(),mn(e,he),ce.value=!1,Se=-1,he=void 0,xe=null,Me=0;for(const e of Ve.value.records)e.markdown||$t(e.key);Nt({remember:!1}),Tn(),Hn()}}function An(e,t={}){var n;const o=++ye;(null==e?void 0:e.widthBucket)&&0===J.value&&(J.value=e.widthBucket);const a=null==e?void 0:e.outerAnchor,l=function(e){return Boolean((null==e?void 0:e.outerAnchor)||qn(e).length>0||Fn(e))}(e),i=Fn(e),u=!(!Ce&&!0!==t.threadSwitch||l),s=l||u,c=null!=a?a:s?function(){if(!1!==r.stickToBottom)return{type:"bottom",distanceFromBottomPx:0};const e=Ve.value.records[0];return e?{type:"item",itemKey:e.key,offsetWithinItemPx:0}:void 0}():void 0;wt(),He=0,qe=0,de.value=!s,ce.value=s&&Boolean(c),Me=o,he=c,Be=s&&i,Ke=s&&u,Se=ce.value?xn():-1,Nn(),ee.clear(),te.clear(),ne.clear(),re.clear(),oe.clear(),ae.clear(),le.clear();for(const[r,m,f]of qn(e)){const e=Math.ceil(m);te.set(r,f),ee.set(r,e),ne.set(r,e),re.set(r,f)}for(const[r,m]of Object.entries(null!=(n=null==e?void 0:e.markdownStates)?n:{}))oe.set(r,m),pt(r,m);We(),!0===r.stickToBottom?(Q.value=!0,X.value=!0):!1===r.stickToBottom?(Q.value=!1,X.value=!1):(Q.value="bottom"===(null==c?void 0:c.type),X.value="bottom"===(null==c?void 0:c.type)&&c.distanceFromBottomPx<=2);const d=cn(c);return xe=null==d?null:qt(d),null!=d&&Rt(d,{writeDom:!0,remember:!1,updatePinned:!1}),Te=(null==e?void 0:e.threadKey)===Ae.value?e:null,s?c?void y(()=>{mn(o,c),"undefined"!=typeof window?(fe.forEach(e=>{const t=window.setTimeout(()=>{mn(o,c)},e);pe.push(t)}),Kn(o)):Cn(o)}):(ce.value=!1,he=void 0,xe=null,Me=0,Nt({remember:!1}),Tn(),void Hn()):(ce.value=!1,he=void 0,xe=null,Me=0,Nt({remember:!1}),Tn(),Hn(),void(!1!==r.stickToBottom&&(Q.value=!0,X.value=!0,y(()=>{ce.value||jt()}))))}function Nn(){for(const e of ue.values())e.disconnect();ue.clear(),ie.clear()}return g(Ae,(e,t)=>{const n=null!=Ne?Ne:t,o=Boolean(n&&n!==e);o&&function(e){var t;Jt(),(null==(t=un())?void 0:t.threadKey)!==e&&((null==Te?void 0:Te.threadKey)===e?(se.set(e,Te),a(Te)):se.has(e)||ln(e))}(n),Ne=e,An(function(e){return(e?se.get(e):null)||function(e){var t;const n=r.initialThreadState;return n?(null!=(t=n.threadKey)?t:"")!==(null!=e?e:"")?null:n:null}(e)}(e),{threadSwitch:o})},{immediate:!0,flush:"sync"}),g(()=>Xe.value.records.map(e=>e.key).join("\0"),()=>{var e;e={start:Xe.value.start,end:Xe.value.end},o("range-change",e)},{immediate:!0}),g(()=>[r.items.length,Ve.value.totalHeight],()=>{ce.value||!1!==r.stickToBottom&&("auto"!==r.stickToBottom||X.value)&&y(()=>{ce.value||!1!==r.stickToBottom&&("auto"!==r.stickToBottom||X.value)&&jt()})},{flush:"post"}),k(()=>{Mt(),At(),he?(mn(Me,he),Nt({remember:!1}),ln()):!1===r.stickToBottom?(Nt({remember:!1}),ln()):(Q.value=!0,Rt(Ht(),{writeDom:!0,remember:!1,updatePinned:!1}),Nt({remember:!1}),ln()),W.value&&"undefined"!=typeof ResizeObserver&&(ge=new ResizeObserver(()=>{Mt(),Nt()}),ge.observe(W.value))}),p(()=>{de.value||Kn(Me)}),b(()=>{un()||ln(),wt(),null!=we&&"undefined"!=typeof window&&window.clearTimeout(we),we=null,ve=void 0,Ut(Lt.raf),Lt.scheduled=!1,Lt.raf=null,Lt.anchor=void 0,Ut(Wt),Vt=!1,Wt=null,Dt.clear(),Nn(),te.clear(),ne.clear(),re.clear(),ae.clear(),le.clear(),null==ge||ge.disconnect(),ge=null}),t({captureThreadState:function(){return an(Ae.value)},restoreThreadState:An,scrollToBottom:jt,scrollToIndex:function(e,t="start"){const n=Ve.value.records[e];if(!n)return;let r=xt()+Ye(n);"center"===t?r-=(G.value-n.size)/2:"end"===t&&(r-=G.value-n.size),Pt(r)},scrollToOffset:Pt,getItemSize:e=>{var t;const n=ht(e);return n&&null!=(t=vt(n))?t:void 0},getTotalHeight:()=>Ve.value.totalHeight,getVisibleRange:()=>({start:Xe.value.start,end:Xe.value.end})}),(e,t)=>(w(),S("div",{ref_key:"scrollRoot",ref:W,class:M(["markstream-virtual-timeline",{"is-restoring-thread":!de.value}]),"data-markstream-virtual-timeline":"1","data-testid":"markstream-virtual-timeline",onScroll:_t},[x("div",{class:"markstream-virtual-timeline__spacer",style:B({height:`${Xe.value.topSpacerHeight}px`}),"aria-hidden":"true"},null,4),(w(!0),S(K,null,T(Xe.value.records,t=>(w(),S("div",{key:t.renderKey,class:"markstream-virtual-timeline__item","data-markstream-item-key":t.key,"data-markstream-item-kind":t.kind,style:B({minHeight:`${t.size}px`})},[H(e.$slots,"default",q({ref_for:!0},nn(t)),()=>{var e,n;return[t.markdown?(w(),F(C(P),q({key:0,ref_for:!0},tn(t)),null,16)):ut(t)?(w(),F(A(ut(t)),{key:1,ref_for:!0,ref:en(t),item:lt(t)},null,8,["item"])):(w(),S("div",{key:2,ref_for:!0,ref:en(t),class:M(["markstream-virtual-timeline__default-item",`markstream-virtual-timeline__default-item--${t.kind||"item"}`])},["tool-call"===t.kind&&(null==(e=lt(t))?void 0:e.status)?(w(),S("span",U,N(null==(n=lt(t))?void 0:n.status),1)):R("",!0),_(" "+N(rn(t)),1)],2))]},!0)],12,Y))),128)),x("div",{class:"markstream-virtual-timeline__spacer",style:B({height:`${Xe.value.bottomSpacerHeight}px`}),"aria-hidden":"true"},null,4),de.value?R("",!0):(w(),S("div",{key:0,class:"markstream-virtual-timeline__restore-loading",style:B({height:`${Math.max(1,St())}px`,transform:`translateY(${Z.value}px)`}),"aria-live":"polite","aria-busy":"true"},[H(e.$slots,"restore-loading",{threadKey:Ae.value,visibleRecords:Xe.value.records},()=>[t[0]||(t[0]=x("div",{class:"markstream-virtual-timeline__restore-loading-card"},[x("span",{class:"markstream-virtual-timeline__restore-spinner","aria-hidden":"true"}),x("span",null,"Loading thread…")],-1))],!0)],4))],34))}})),[["__scopeId","data-v-dff004bf"]]),G=Z;G.install=e=>{var t,n;const r=null!=(n=null!=(t=G.__name)?t:G.name)?n:"MarkstreamVirtualTimeline";e.component(r,Z)};export{G as default};
|
|
1
|
+
var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable,l=(t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r,i=(e,t)=>{for(var n in t||(t={}))o.call(t,n)&&l(e,n,t[n]);if(r)for(var n of r(t))a.call(t,n)&&l(e,n,t[n]);return e},u=(e,r)=>t(e,n(r)),s=(e,t,n)=>l(e,"symbol"!=typeof t?t+"":t,n);import{defineComponent as c,ref as d,reactive as m,provide as f,computed as v,shallowRef as h,watch as g,nextTick as y,onMounted as k,onUpdated as p,onBeforeUnmount as b,openBlock as w,createElementBlock as S,normalizeClass as M,createElementVNode as x,normalizeStyle as B,Fragment as K,renderList as T,renderSlot as H,mergeProps as q,createBlock as F,unref as C,resolveDynamicComponent as A,toDisplayString as N,createCommentVNode as R,createTextVNode as _}from"vue";import{y as P,a9 as j,a3 as I,W as z,a2 as O,a1 as $,a0 as E,a4 as L,aa as W,$ as D,z as V}from"./exports.js";const Y=["data-markstream-item-key","data-markstream-item-kind"],G={key:0,class:"markstream-virtual-timeline__status"},J=/* @__PURE__ */V(/* @__PURE__ */c(u(i({},{name:"MarkstreamVirtualTimeline"}),{__name:"MarkstreamVirtualTimeline",props:{items:{},threadKey:{},layoutRevision:{},getKey:{},getKind:{},getContent:{},getFinal:{},getRevision:{},estimateItemHeight:{},overscan:{default:4},overscanPx:{default:1200},stickToBottom:{type:[Boolean,String],default:"auto"},measurementKey:{},markdownMode:{default:"docs"},markdownCodeRenderer:{},initialThreadState:{},markdownFade:{type:Boolean,default:!1},restoreMaxLoadingMs:{type:[Number,Boolean],default:!1},debug:{type:Boolean}},emits:["height-change","virtual-state-change","range-change","thread-state-change"],setup(e,{expose:t,emit:n}){const r=e,o=n;function a(e){o("thread-state-change",e)}const l=/* @__PURE__ */new Map;function c(e){var t;!0===r.debug&&l.set(e,(null!=(t=l.get(e))?t:0)+1)}const V=d(null),J=d(0),Q=d(0),U=d(0),X=d(!0),Z=d(!0),ee=m(/* @__PURE__ */new Map),te=/* @__PURE__ */new Map,ne=/* @__PURE__ */new Map,re=/* @__PURE__ */new Map,oe=m(/* @__PURE__ */new Map),ae=m(/* @__PURE__ */new Map),le=/* @__PURE__ */new Map,ie=/* @__PURE__ */new Map,ue=/* @__PURE__ */new Map,se=/* @__PURE__ */new Map,ce=d(!1),de=d(!0),me=d(!0);f("markstreamHostScrollManaged",me);const fe=[0,80,180,360,640];let ve,he,ge=null,ye=0,ke=null,pe=[],be=null,we=null,Se=-1,Me=0,xe=null,Be=!1,Ke=!1,Te=null,He=0,qe=0,Fe={top:0,bottom:0},Ce=!1;const Ae=v(()=>null==r.threadKey?void 0:String(r.threadKey));let Ne=Ae.value;function Re(e){return"chat"===e||"minimal"===e||"docs"===e?e:"docs"}const _e=v(()=>Re(r.markdownMode)),Pe=v(()=>function(e,t=Re(r.markdownMode)){return"pre"===e||"shiki"===e||"monaco"===e?e:"docs"===t?"monaco":"pre"}(r.markdownCodeRenderer,_e.value)),je=v(()=>[null==r.measurementKey?"":String(r.measurementKey),U.value].join(":")),Ie=v(()=>`${je.value}${_e.value}${Pe.value}`);class ze{constructor(e){s(this,"tree"),s(this,"total"),this.tree=Array.from({length:e.length+1},()=>0),this.total=0,e.forEach((e,t)=>this.add(t,e))}add(e,t){if(Number.isFinite(t)&&0!==t){this.total+=t;for(let n=e+1;n<this.tree.length;n+=n&-n)this.tree[n]+=t}}prefixSum(e){let t=Math.max(0,Math.min(e,this.tree.length-1)),n=0;for(;t>0;)n+=this.tree[t],t-=t&-t;return n}lowerBound(e,t="gte"){const n=this.tree.length-1;if(n<=0)return 0;if(e<=0)return 0;if(e>=this.total)return n-1;let r=0,o=1;for(;o<<1<this.tree.length;)o<<=1;let a=0;for(;o>0;o>>=1){const n=r+o;if(n<this.tree.length){const o=a+this.tree[n];("gt"===t?o<=e:o<e)&&(r=n,a=o)}}return Math.min(r,n-1)}}const Oe=h([]),$e=/* @__PURE__ */new Map,Ee=h(new ze([])),Le=d(0);let We=[];const De=v(()=>(Le.value,{records:Oe.value,totalHeight:Ee.value.total}));function Ve(){var e;const t=[],n=[],o=function(){var e;return null!=(e=Ae.value)?e:"timeline"}();$e.clear();for(let a=0;a<r.items.length;a++){const l=r.items[a],s=et(l,a),c={item:l,index:a,key:s,kind:I(l,a,r),markdown:j(l,a,r)};let d=vt(c);null==d&&(d=null!=(e=We[a])?e:z(l,a,r));const m=u(i({},c),{renderKey:`${o}:${s}`,offset:0,size:d,component:null==l?void 0:l.component});t.push(m),n.push(d),$e.has(s)||$e.set(s,m)}Oe.value=t,Ee.value=new ze(n),We=[],Le.value+=1}function Ye(e){return Le.value,Ee.value.prefixSum(e.index)}function Ge(e){return u(i({},e),{offset:Ye(e)})}function Je(e,t){const n=$e.get(e);if(!n)return;const r=Math.ceil(t),o=r-n.size;0!==o&&(n.size=r,Ee.value.add(n.index,o),Le.value+=1)}function Qe(e,t="gte"){return Le.value,Ee.value.lowerBound(e,t)}const Ue=v(()=>{var e;return Math.max(0,null!=(e=r.overscan)?e:4)}),Xe=v(()=>{var e;const t=Math.max(0,null!=(e=r.overscanPx)?e:1200);return de.value?t:Math.min(t,160)}),Ze=v(()=>{var e,t,n;const r=De.value.records;if(0===r.length)return{start:0,end:0,records:[],topSpacerHeight:0,bottomSpacerHeight:0};const o=Ue.value,a=Xe.value,l=Tt(),i=l+Math.max(1,Q.value);let u=Qe(Math.max(0,l-a),"gt"),s=Qe(Math.min(De.value.totalHeight,i+a))+1;u=Math.max(0,u-o),s=Math.min(r.length,Math.max(s+o,u+1));const c=r.slice(u,s).map(Ge),d=c[0],m=c[c.length-1],f=null!=(e=null==d?void 0:d.offset)?e:0,v=null!=(t=null==m?void 0:m.offset)?t:0;return{start:u,end:s,records:c,topSpacerHeight:f,bottomSpacerHeight:Math.max(0,De.value.totalHeight-(v+(null!=(n=null==m?void 0:m.size)?n:0)))}});function et(e,t){return O(e,t,r)}const tt=/* @__PURE__ */new WeakMap;let nt=1;function rt(e){if("object"!=typeof e&&"function"!=typeof e||null===e)return String(null!=e?e:"");const t=e;let n=tt.get(t);return n||(n=nt++,tt.set(t,n)),String(n)}function ot(e,t,n){var o;if(n)return"";const a="string"==typeof(null==e?void 0:e.text)?e.text:"string"==typeof(null==e?void 0:e.message)?e.message:"string"==typeof(null==e?void 0:e.label)?e.label:String(null!=(o=E(e,t,r))?o:"");return a?`${a.length}:${function(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(36)}(a)}`:""}function at(e,t){if("function"!=typeof r.estimateItemHeight)return"";const n=r.estimateItemHeight(e,t);if(!Number.isFinite(n)||n<=0)return"";const o=Math.ceil(n);return We[t]=o,String(o)}function lt(e){var t;return null!=(t=r.items[e.index])?t:e.item}function it(e){return e.item}function ut(e){var t;const n=lt(e);return null!=(t=null==n?void 0:n.component)?t:e.component}function st(e,t=Ae.value){const n=it(e),o=L(n,e.index,r);return[null!=t?t:"timeline",e.key,null==o?"":String(o)].join(":")}function ct(e,t=Ae.value){if(e.markdown)return st(e,t);const n=it(e),o=L(n,e.index,r);return[null!=t?t:"timeline",e.key,null==o?"":String(o)].join(":")}function dt(e){return{sourceKey:ct(e),measurementKey:e.markdown?Ie.value:je.value,widthBucket:U.value}}function mt(e,t){var n,r,o,a,l,i;return(null!=(n=null==e?void 0:e.sourceKey)?n:"")===(null!=(r=null==t?void 0:t.sourceKey)?r:"")&&(null!=(o=null==e?void 0:e.measurementKey)?o:"")===(null!=(a=null==t?void 0:t.measurementKey)?a:"")&&(null!=(l=null==e?void 0:e.widthBucket)?l:0)===(null!=(i=null==t?void 0:t.widthBucket)?i:0)}function ft(e,t,n=Ae.value){var r;return!(!e||!t)&&t.sourceKey===ct(e,n)&&t.measurementKey===(e.markdown?Ie.value:je.value)&&(null!=(r=t.widthBucket)?r:0)===U.value}function vt(e,t=Ae.value){const n=ee.get(e.key);return ft(e,te.get(e.key),t)&&Number.isFinite(n)&&n>0?n:null}function ht(e){return De.value,$e.get(e)}function gt(e,t){var n,r;return!!(e&&e.markdown&&t)&&t.sessionKey===st(e)&&(null!=(n=t.threadKey)?n:"")===(null!=(r=Ae.value)?r:"")&&!!function(e){const t=Ie.value,n=null!=e?e:"";return n===t||n.startsWith(`${t}\0`)}(t.measurementKey)}function yt(e,t){return gt(e,t)}function kt(e,t,n){!Number.isFinite(t)||t<=0||(ae.set(e,Math.ceil(t)),le.set(e,n))}function pt(e,t=oe.get(e)){const n=function(e,t=oe.get(e)){var n;if(!yt(ht(e),t))return 0;const r=Number(null==(n=null==t?void 0:t.metrics)?void 0:n.totalHeight);return Number.isFinite(r)&&r>0?Math.ceil(r):0}(e,t);return n>0&&kt(e,n,t),n}function bt(e){return e===ye&&Me===e&&!de.value}function wt(){if(null!=ke&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(ke),ke=null,null!=be&&"undefined"!=typeof window&&window.clearTimeout(be),be=null,"undefined"!=typeof window)for(const e of pe)window.clearTimeout(e);pe=[]}function St(){var e;return Math.max(0,Q.value||(null==(e=V.value)?void 0:e.clientHeight)||0)}function Mt(){const e=V.value;if(!e||"function"!=typeof getComputedStyle)return void(Fe={top:0,bottom:0});const t=getComputedStyle(e),n=Number.parseFloat(t.paddingTop)||0,r=Number.parseFloat(t.paddingBottom)||0;Fe={top:n,bottom:r}}function xt(){return Fe.top}function Bt(){const e=Fe;return Math.max(0,De.value.totalHeight+e.top+e.bottom)}function Kt(){var e,t;return Math.max(Bt(),null!=(t=null==(e=V.value)?void 0:e.scrollHeight)?t:0)}function Tt(){return Math.max(0,J.value-xt())}function Ht(){return Math.max(0,Kt()-St())}function qt(e){const t=Number(e);return Number.isFinite(t)?Math.max(0,Math.min(t,Ht())):0}function Ft(){return Math.max(0,Ht()-J.value)}function Ct(){const e=Ft();Z.value=e<=2,!0!==r.stickToBottom?!1!==r.stickToBottom?X.value=e<=48:X.value=!1:X.value=!0}function At(){var e,t;const n=null!=(t=null==(e=V.value)?void 0:e.clientWidth)?t:0;U.value=Number.isFinite(n)&&n>0?32*Math.round(n/32):0}function Nt(e={}){const t=V.value;t&&(J.value=Math.max(0,t.scrollTop||0),Q.value=t.clientHeight||0),At(),Ct(),(!0===e.remember||!1!==e.remember&&!ce.value)&&ln()}function Rt(e,t={}){const n=qt(e),r=V.value;J.value=n,r&&(Q.value=r.clientHeight||Q.value||0,!1!==t.writeDom&&Math.abs((r.scrollTop||0)-n)>.5&&(r.scrollTop=n)),At(),!1!==t.updatePinned&&Ct(),(!0===t.remember||!1!==t.remember&&!ce.value)&&ln()}function _t(){if(!de.value){const e=V.value,t=xe;return e&&null!=t&&Math.abs((e.scrollTop||0)-t)>.5&&(e.scrollTop=t),void mn(Me,he)}Nt()}function Pt(e){Rt(e,{writeDom:!0,remember:!0})}function jt(){Pt(Ht())}function It(e,t){const n=ne.get(e);if(!Number.isFinite(n)||null==n||n<=0)return 0;const r=re.get(e);return t&&r&&!zt(r,t)?0:Math.ceil(n)}function zt(e,t){var n,r,o,a;return e.sourceKey===t.sourceKey&&(0===(null!=(n=t.widthBucket)?n:0)||0===(null!=(r=e.widthBucket)?r:0)||(null!=(o=t.widthBucket)?o:0)===(null!=(a=e.widthBucket)?a:0))&&(Ot(t.measurementKey)||Ot(e.measurementKey)||t.measurementKey===e.measurementKey)}function Ot(e){return":0"===e||!0===(null==e?void 0:e.startsWith(":0"))}function $t(e){ne.delete(e),re.delete(e)}function Et(e,t,n,o={}){if(!Number.isFinite(t)||t<=0)return;const a=ee.get(e),l=n&&!mt(te.get(e),n);!function(e,t){if(!t)return;const n=re.get(e);n&&!zt(n,t)&&(ne.delete(e),re.delete(e))}(e,n);const i=It(e,n),u=i>0?i:Math.ceil(t);if(null!=a&&Math.abs(a-u)<=1&&!l)return;if(!1===o.updateLayout)return n&&te.set(e,n),ee.set(e,u),void sn(o.rememberThreadKey);if(ce.value)return n&&te.set(e,n),ee.set(e,u),Je(e,u),void function(e=Me,t=he){t&&y(()=>{mn(e,t),null==ke&&"function"==typeof requestAnimationFrame&&(ke=requestAnimationFrame(()=>{ke=null,mn(e,t)}))})}();const s=(c=on(),d=Ft(),!0===r.stickToBottom?{type:"bottom",distanceFromBottomPx:0}:"auto"===r.stickToBottom&&X.value?{type:"bottom",distanceFromBottomPx:Z.value?0:Math.max(0,d)}:c);var c,d;n&&te.set(e,n),ee.set(e,u),Je(e,u),sn(o.rememberThreadKey),function(e){if(!Lt.scheduled)return Lt.anchor=e,Lt.scheduled=!0,void(Lt.raf=Yt(Jt));!Lt.anchor&&e&&(Lt.anchor=e)}(s)}g([()=>function(){const e=r.layoutRevision;return null!=e?["explicit",String(e),r.items.length].join(""):r.items.map((e,t)=>{var n;const o=et(e,t),a=j(e,t,r);return[o,I(e,t,r),a?1:0,null!=(n=L(e,t,r))?n:"",at(e,t),ot(e,t,a),(l=null==e?void 0:e.component,l?"string"==typeof l?`s:${l}`:`o:${rt(l)}`:"")].join("");var l}).join("\0")}(),je,Ie,Ae,()=>rt(r.estimateItemHeight),()=>rt(r.getKey),()=>rt(r.getKind),()=>rt(r.getContent),()=>rt(r.getFinal),()=>rt(r.getRevision)],()=>Ve(),{immediate:!0,flush:"sync"});const Lt={scheduled:!1,raf:null,anchor:void 0},Wt=/* @__PURE__ */new Map;let Dt=!1,Vt=null;function Yt(e){return"function"==typeof requestAnimationFrame?requestAnimationFrame(e):(y(e),null)}function Gt(e){null!=e&&"function"==typeof cancelAnimationFrame&&cancelAnimationFrame(e)}function Jt(){if(!Lt.scheduled)return;Lt.scheduled=!1,Lt.raf=null;const e=Lt.anchor;Lt.anchor=void 0,e&&dn(e),Nt({remember:!1})}function Qt(){var e,t;if(!Dt)return;Dt=!1,Vt=null;const n=Array.from(Wt.entries());Wt.clear();for(const[r,o]of n){if(ae.get(r)!==o.logicalHeight)continue;const n=$e.get(r);if(!n)continue;const a=(null!=(e=o.threadKey)?e:"")===(null!=(t=Ae.value)?t:"");Zt(n,{allowMarkdownShrink:o.allowMarkdownShrink,markdownLogicalHeight:o.logicalHeight,rememberThreadKey:o.threadKey,source:o.itemSizeSource,updateLayout:a})}Jt()}function Ut(){Qt(),Jt()}function Xt(e){var t;null==(t=ue.get(e))||t.disconnect(),ue.delete(e),ie.delete(e)}function Zt(e,t={}){var n,o,a;const i=(u=e.key,W(ie.get(u),c));var u;const s=null!=(n=t.source)?n:dt(e);let d=!1;const m=()=>{d||(d=!0,function(e,t){const n=function(){if(!0!==r.debug||0===l.size)return null;let e=0;for(const n of l.values())e+=n;const t={total:e,byLabel:Object.fromEntries(Array.from(l.entries()).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])))};return l.clear(),t}();n&&console.info("[markstream-vue][timeline][perf] layout-reads",{label:e,itemKey:t,layoutReads:n})}("reconcileRecordSize",e.key))};if(!e.markdown)return i>0&&Et(e.key,i,s,t),void m();const f=mt(te.get(e.key),s)&&null!=(o=ee.get(e.key))?o:0,v=null!=(a=t.markdownLogicalHeight)?a:function(e){var t;return gt(ht(e),le.get(e))?null!=(t=ae.get(e))?t:0:pt(e)}(e.key),h=function(e,t){return D(ie.get(e),c,t)}(e.key,i);if(v>0){let n=Math.max(i,v+h);(!t.allowMarkdownShrink||ce.value)&&f>0&&(n=Math.max(n,f));const r=It(e.key,s);return(r>0&&v>r+1&&!ce.value||t.allowMarkdownShrink&&!ce.value)&&$t(e.key),n>0&&Et(e.key,n,s,t),void m()}return String(E(lt(e),e.index,r)).trim()?f>0?(i>f+1&&Et(e.key,i,s,t),void m()):(i>0&&Et(e.key,i,s,t),void m()):(i>0&&($t(e.key),Et(e.key,i,s,t)),void m())}function en(e){return t=>{!function(e,t){const n=function(e){const t=e&&"$el"in e?e.$el:e;return t instanceof HTMLElement?t:null}(t),r=ie.get(e.key);if(!n)return void Xt(e.key);if(r===n)return void Zt(e);if(Xt(e.key),ie.set(e.key,n),Zt(e),"undefined"==typeof ResizeObserver)return;const o=new ResizeObserver(()=>{Zt(e)});o.observe(n),ue.set(e.key,o)}(e,t)}}function tn(e){const t=lt(e),n=$(t,e.index,r),a=oe.get(e.key),l=_e.value,i=Pe.value,u={enabled:!0,sessionKey:st(e),threadKey:Ae.value,scrollRoot:()=>V.value,restoreState:yt(e,a)?a:null,restoreAnchor:!1,measurementKey:Ie.value,settleMode:"manual",settledToken:n,emitIntervalMs:96,heightDiffThresholdPx:4};return{content:E(t,e.index,r),final:n,mode:l,codeRenderer:i,nodeVirtual:!1,fade:!0===r.markdownFade,indexKey:st(e),virtualScroll:u,onHeightChange(t){if(t.sessionKey!==st(e))return;kt(e.key,t.totalHeight,{sessionKey:t.sessionKey,threadKey:Ae.value,measurementKey:Ie.value});const n=function(e){return"final"===e.phase||!!e.stable&&("measured"===e.confidence||"final"===e.confidence)}(t),r=Math.ceil(t.totalHeight);var a;!function(e,t){Wt.set(e.key,t),Dt||(Dt=!0,Vt=Yt(Qt))}(e,{allowMarkdownShrink:n,itemSizeSource:dt(e),logicalHeight:r,threadKey:Ae.value}),a={itemKey:e.key,metrics:t},o("height-change",a)},onVirtualStateChange(t){var n;t.sessionKey===st(e)&&(oe.set(e.key,t),pt(e.key,t),sn(),n={itemKey:e.key,state:t},o("virtual-state-change",n))}}}function nn(e){return{item:lt(e),index:e.index,itemKey:e.key,kind:e.kind,measureRef:en(e),markdownProps:tn(e)}}function rn(e){var t;const n=null!=(t=lt(e))?t:{};return"string"==typeof n.text?n.text:"string"==typeof n.message?n.message:"string"==typeof n.label?n.label:E(n,e.index,r)}function on(){const e=Ft();if(e<=2)return{type:"bottom",distanceFromBottomPx:Math.max(0,e)};const t=Tt(),n=Qe(t,"gt"),r=De.value.records[n];if(r){const e=Ye(r);if(t>=e&&t<e+r.size)return{type:"item",itemKey:r.key,offsetWithinItemPx:t-e}}const o=Ze.value.records[0];return o?{type:"item",itemKey:o.key,offsetWithinItemPx:0}:void 0}function an(e=Ae.value){Ut();const t={},n={};for(const r of De.value.records){const o=vt(r,e),a=te.get(r.key);null!=o&&ft(r,a,e)&&(t[r.key]=o,n[r.key]=a)}return{threadKey:e,measurementKey:je.value,widthBucket:U.value,outerAnchor:on(),itemHeights:t,itemSizeSources:n,markdownStates:Object.fromEntries(oe.entries())}}function ln(e=Ae.value){if(!e)return;const t=an(e);return se.set(e,t),e===Ae.value&&(Te=t),a(t),t}function un(){const e=ve;return null!=we&&"undefined"!=typeof window&&window.clearTimeout(we),we=null,ve=void 0,e?ln(e):void 0}function sn(e=Ae.value){e&&(ve=e,null==we&&("undefined"!=typeof window?we=window.setTimeout(()=>{we=null,un()},80):un()))}function cn(e){if(!e)return null;if("bottom"===e.type)return(de.value?Kt():Bt())-St()-Math.max(0,e.distanceFromBottomPx);const t=ht(e.itemKey);return t?xt()+Ye(t)+Math.max(0,e.offsetWithinItemPx):null}function dn(e,t={}){const n=cn(e);return null!=n&&(Rt(n,{writeDom:!0,remember:!0===t.remember}),!0)}function mn(e,t){if(e===ye){if(t){const e=dn(t,{remember:!1});xe=e?J.value:null}Nt({remember:!1})}}function fn(e,t){const n=e.getBoundingClientRect();return n.width>0&&n.height>0&&n.bottom>t.top&&n.top<t.bottom}function vn(e,t){const n=e.getBoundingClientRect(),r=t.getBoundingClientRect();return n.bottom>r.top&&n.top<r.bottom}function hn(e){if(e.closest(".code-editor-container.is-hidden"))return!1;let t=e;for(;t;){const e=window.getComputedStyle(t);if("none"===e.display||"hidden"===e.visibility||Number.parseFloat(e.opacity||"1")<=.01)return!1;t=t.parentElement}const n=e.getBoundingClientRect();return n.width>0&&n.height>0}function gn(e){return Boolean(e.querySelector(['[data-markstream-pending="true"]','[data-markstream-mermaid][data-markstream-mode="pending"]','.mermaid-block-container[data-markstream-mode="pending"]','[data-markstream-code-loading="1"]'].join(",")))}function yn(e){var t;if(e.querySelector(":scope > .node-placeholder"))return!1;const n=e.querySelector(":scope > .node-content");return!!n&&(!gn(n)&&(!!function(e){const t=Array.from(e.querySelectorAll("[data-markstream-math]"));return!t.length||t.every(e=>{const t=e.dataset.markstreamMode;return!("true"===e.dataset.markstreamPending||"loading"===t||"katex"!==t&&"fallback"!==t)})}(n)&&("code_block"===(null!=(t=e.dataset.nodeType)?t:"")?function(e){if(e.querySelector('[data-markstream-code-loading="1"]'))return!1;const t=e.querySelector('[data-markstream-code-block="1"]');if(t){const e="true"===t.dataset.markstreamEnhanced,r=function(e){if(!e)return!1;if(e.classList.contains("is-fading-out"))return!1;const t=window.getComputedStyle(e);if("none"===t.display||Number.parseFloat(t.opacity||"1")<=.01)return!1;const n=e.getBoundingClientRect();return n.width>0&&n.height>0}(t.querySelector("pre.code-pre-fallback"));return e||r||(n=t,Array.from(n.querySelectorAll(".monaco-editor, .monaco-diff-editor")).some(hn))}var n;return function(e){var t,n;const r=e.querySelector("[data-markstream-mermaid], .mermaid-block-container");if(r){if("true"===r.dataset.markstreamPending)return!1;const e=r.dataset.markstreamMode;return"preview"===e?Boolean(r.querySelector("svg")||r.querySelector('[data-mermaid-svg-layer="1"] svg')):"fallback"===e&&Boolean(null==(n=null==(t=r.querySelector(".mermaid-source-code"))?void 0:t.textContent)?void 0:n.trim())}const o=e.querySelector("[data-markstream-infographic], .infographic-block-container");if(o)return"true"!==o.dataset.markstreamPending;const a=e.querySelector("[data-markstream-d2], .d2-block-container");return a?"true"!==a.dataset.markstreamPending:Boolean(e.querySelector('pre[data-markstream-pre="1"]'))}(e)}(n):function(e){var t;return(null!=(t=e.textContent)?t:"").trim().length>0||Boolean(e.querySelector(["hr","br","table","blockquote","img","svg","canvas","input","button","select","textarea","[role]","[aria-label]","[data-markstream-math]","[data-markstream-mermaid]","[data-markstream-infographic]","[data-markstream-d2]",'[data-markstream-pre="1"]'].join(",")))}(n))))}function kn(e,t){var n;if(!e.markdown)return!0;const o=E(lt(e),e.index,r);if(!String(null!=o?o:"").trim())return!0;if(t.querySelector("[data-node-index]"))return!0;const a=t.querySelector(".markdown-renderer"),l=null!=a?a:t;return!gn(l)&&(!!(null!=(n=l.textContent)?n:"").trim()||Boolean(l.querySelector(["hr","br","table","blockquote","img","svg","canvas","input","button","[role]","[aria-label]","[data-markstream-math]","[data-markstream-mermaid]","[data-markstream-infographic]","[data-markstream-d2]",'[data-markstream-pre="1"]','[data-markstream-code-block="1"]'].join(","))))}function pn(e,t,n){if(!e.markdown)return!0;const o=E(lt(e),e.index,r);if(!String(null!=o?o:"").trim())return!0;const a=n.getBoundingClientRect(),l=Array.from(t.querySelectorAll("[data-node-index]")).filter(e=>fn(e,a));if(l.length>0)return l.every(e=>yn(e));const i=t.querySelector(".markdown-renderer"),u=null!=i?i:t;return u.querySelector("[data-node-index], .node-placeholder")?!!function(e,t,n,r){if("bottom"!==(null==he?void 0:he.type))return!1;if(!bn(e))return!1;const o=n.getBoundingClientRect(),a=t.getBoundingClientRect();return o.width>0&&o.height>0&&o.bottom<=r.top+1&&a.bottom>r.top}(e,t,u,a)&&kn(e,t):kn(e,t)}function bn(e){const t=te.get(e.key);return It(e.key,t)>0}function wn(e,t){var n,o,a,l;if(!e.markdown)return!0;if(!Be&&!Ke)return!0;if(bn(e))return!0;const i=E(lt(e),e.index,r);if(!String(null!=i?i:"").trim())return!0;if(!t.querySelector(".markdown-renderer"))return!1;const u=oe.get(e.key);if(!yt(e,u))return!1;const s=null==u?void 0:u.metrics,c=Number(null!=(n=null==s?void 0:s.totalHeight)?n:0);if(!Number.isFinite(c)||c<=0)return!1;const d=Number(null!=(o=null==s?void 0:s.measuredCount)?o:0),m=Number(null!=(a=null==s?void 0:s.estimatedCount)?a:0),f=Number(null!=(l=null==s?void 0:s.nodeCount)?l:0),v=f<=0||d>=f&&m<=0,h="measured"===(null==s?void 0:s.confidence)||"final"===(null==s?void 0:s.confidence),g=!0===(null==s?void 0:s.stable)||h;return Ke?v&&!0===(null==s?void 0:s.final)&&h:g||!0===(null==s?void 0:s.final)}function Sn(){const e=V.value;if(!e)return!1;const t=cn(he);if(null!=t&&Math.abs((e.scrollTop||0)-qt(t))>.5)return!1;const n=Ze.value.records;if(!n.length)return 0===De.value.records.length;const r=new Map(Array.from(e.querySelectorAll("[data-markstream-item-key]")).map(e=>{var t;return[null!=(t=e.dataset.markstreamItemKey)?t:"",e]})),o=[];for(const i of n){const t=r.get(i.key);t&&vn(t,e)&&o.push({record:i,el:t})}if(!o.length)return!1;for(const{record:i,el:u}of o){if(u.offsetHeight+1<i.size)return!1;if(!pn(i,u,e))return!1;if(!wn(i,u))return!1}const a=e.getBoundingClientRect();if(Array.from(e.querySelectorAll(['[data-markstream-pending="true"]','[data-markstream-mermaid][data-markstream-mode="pending"]','.mermaid-block-container[data-markstream-mode="pending"]','[data-markstream-code-loading="1"]'].join(","))).some(e=>fn(e,a)))return!1;const l=Array.from(e.querySelectorAll("[data-node-index]")).filter(e=>fn(e,a));for(const i of l)if(!yn(i))return!1;return!0}function Mn(){const e=V.value;if(!e)return"";const t=e.getBoundingClientRect(),n=new Map(Array.from(e.querySelectorAll("[data-markstream-item-key]")).map(e=>{var t;return[null!=(t=e.dataset.markstreamItemKey)?t:"",e]})),r=Ze.value.records.map(e=>{var t,r,o,a,l,i,u,s,c;const d=n.get(e.key),m=null==d?void 0:d.querySelector(".markdown-renderer"),f=null==(t=oe.get(e.key))?void 0:t.metrics;return[e.key,e.size,null!=(r=null==d?void 0:d.offsetHeight)?r:0,null!=(o=null==d?void 0:d.scrollHeight)?o:0,null!=(a=null==m?void 0:m.offsetHeight)?a:0,null!=(l=null==m?void 0:m.scrollHeight)?l:0,f?Math.round(Number(f.totalHeight||0)):"",null!=(i=null==f?void 0:f.measuredCount)?i:"",null!=(u=null==f?void 0:f.estimatedCount)?u:"",null!=(s=null==f?void 0:f.nodeCount)?s:"",!0===(null==f?void 0:f.final)?1:0,!0===(null==f?void 0:f.stable)?1:0,null!=(c=null==f?void 0:f.confidence)?c:""].join(":")}).join("|"),o=Array.from(e.querySelectorAll("[data-node-index]")).filter(e=>fn(e,t)).map(e=>{var t,n,r,o,a;const l=e.getBoundingClientRect(),i=e.querySelector(":scope > .node-content"),u=null==i?void 0:i.querySelector('[data-markstream-code-block="1"]'),s=null==i?void 0:i.querySelector("pre.code-pre-fallback"),c=null==i?void 0:i.querySelector(".monaco-editor, .monaco-diff-editor");return[null!=(t=e.dataset.nodeIndex)?t:"",null!=(n=e.dataset.nodeType)?n:"",Math.round(l.height),null!=(r=null==i?void 0:i.offsetHeight)?r:0,null!=(o=null==i?void 0:i.scrollHeight)?o:0,null!=(a=null==u?void 0:u.dataset.markstreamEnhanced)?a:"",u?Math.round(u.getBoundingClientRect().height):0,s?Math.round(s.getBoundingClientRect().height):0,c?Math.round(c.getBoundingClientRect().height):0].join(":")}).join("|");return[Math.round(e.scrollTop||0),Math.round(e.scrollHeight||0),Math.round(De.value.totalHeight||0),r,o].join("\n")}function xn(){return"undefined"!=typeof performance?performance.now():Date.now()}function Bn(){return Ke?24:2}function Kn(e){bt(e)&&He!==e&&(He=e,function(e){return t=this,n=function*(){const t=xn();let n=0,r="";for(let o=0;o<40;o++){if(yield y(),yield new Promise(e=>{"function"!=typeof requestAnimationFrame?e():requestAnimationFrame(()=>e())}),!bt(e))return!1;mn(e,he);const o=xn(),a=Sn(),l=a?Mn():"";if(a&&l===r&&l){if(n+=1,n>=Bn()&&o-t>=96)return!0}else n=0,r=l}return!1},new Promise((e,r)=>{var o=e=>{try{l(n.next(e))}catch(t){r(t)}},a=e=>{try{l(n.throw(e))}catch(t){r(t)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,a);l((n=n.apply(t,null)).next())});var t,n}(e).then(t=>{if(He===e&&(He=0),bt(e))return t?void Cn(e):function(){if(Se<0)return!1;const e=function(){if(!1===r.restoreMaxLoadingMs)return Number.POSITIVE_INFINITY;const e=Number(r.restoreMaxLoadingMs);return Number.isFinite(e)&&e>0?e:Number.POSITIVE_INFINITY}();return Number.isFinite(e)&&xn()-Se>=e}()?(!0===r.debug&&import.meta,void Cn(e)):(function(e){qe!==e&&(qe=e,!0===r.debug&&import.meta)}(e),void function(e){bt(e)&&"undefined"!=typeof window&&(null!=be&&window.clearTimeout(be),be=window.setTimeout(()=>{be=null,bt(e)&&Kn(e)},120))}(e))}))}function Tn(){de.value=!0,Se=-1,He=0,qe=0,Be=!1,Ke=!1,null!=be&&"undefined"!=typeof window&&window.clearTimeout(be),be=null}function Hn(){Ce=!0}function qn(e){var t,n;const r=[];if(!function(e){var t,n;return!!e&&(null!=(t=e.measurementKey)?t:"")===je.value&&(null!=(n=e.widthBucket)?n:0)===U.value}(e))return r;for(const[o,a]of Object.entries(null!=(t=null==e?void 0:e.itemHeights)?t:{})){if(!Number.isFinite(a)||a<=0)continue;const t=ht(o),l=null==(n=null==e?void 0:e.itemSizeSources)?void 0:n[o];ft(t,l)&&r.push([o,Math.ceil(a),l])}return r}function Fn(e){var t;for(const[n,r]of Object.entries(null!=(t=null==e?void 0:e.markdownStates)?t:{}))if(yt(ht(n),r))return!0;return!1}function Cn(e){if(e===ye){wt(),mn(e,he),ce.value=!1,Se=-1,he=void 0,xe=null,Me=0;for(const e of De.value.records)e.markdown||$t(e.key);Nt({remember:!1}),Tn(),Hn()}}function An(e,t={}){var n;const o=++ye;(null==e?void 0:e.widthBucket)&&0===U.value&&(U.value=e.widthBucket);const a=null==e?void 0:e.outerAnchor,l=function(e){return Boolean((null==e?void 0:e.outerAnchor)||qn(e).length>0||Fn(e))}(e),i=Fn(e),u=!(!Ce&&!0!==t.threadSwitch||l),s=l||u,c=null!=a?a:s?function(){if(!1!==r.stickToBottom)return{type:"bottom",distanceFromBottomPx:0};const e=De.value.records[0];return e?{type:"item",itemKey:e.key,offsetWithinItemPx:0}:void 0}():void 0;wt(),He=0,qe=0,de.value=!s,ce.value=s&&Boolean(c),Me=o,he=c,Be=s&&i,Ke=s&&u,Se=ce.value?xn():-1,Nn(),ee.clear(),te.clear(),ne.clear(),re.clear(),oe.clear(),ae.clear(),le.clear();for(const[r,m,f]of qn(e)){const e=Math.ceil(m);te.set(r,f),ee.set(r,e),ne.set(r,e),re.set(r,f)}for(const[r,m]of Object.entries(null!=(n=null==e?void 0:e.markdownStates)?n:{}))oe.set(r,m),pt(r,m);Ve(),!0===r.stickToBottom?(X.value=!0,Z.value=!0):!1===r.stickToBottom?(X.value=!1,Z.value=!1):(X.value="bottom"===(null==c?void 0:c.type),Z.value="bottom"===(null==c?void 0:c.type)&&c.distanceFromBottomPx<=2);const d=cn(c);return xe=null==d?null:qt(d),null!=d&&Rt(d,{writeDom:!0,remember:!1,updatePinned:!1}),Te=(null==e?void 0:e.threadKey)===Ae.value?e:null,s?c?void y(()=>{mn(o,c),"undefined"!=typeof window?(fe.forEach(e=>{const t=window.setTimeout(()=>{mn(o,c)},e);pe.push(t)}),Kn(o)):Cn(o)}):(ce.value=!1,he=void 0,xe=null,Me=0,Nt({remember:!1}),Tn(),void Hn()):(ce.value=!1,he=void 0,xe=null,Me=0,Nt({remember:!1}),Tn(),Hn(),void(!1!==r.stickToBottom&&(X.value=!0,Z.value=!0,y(()=>{ce.value||jt()}))))}function Nn(){for(const e of ue.values())e.disconnect();ue.clear(),ie.clear()}return g(Ae,(e,t)=>{const n=null!=Ne?Ne:t,o=Boolean(n&&n!==e);o&&function(e){var t;Ut(),(null==(t=un())?void 0:t.threadKey)!==e&&((null==Te?void 0:Te.threadKey)===e?(se.set(e,Te),a(Te)):se.has(e)||ln(e))}(n),Ne=e,An(function(e){return(e?se.get(e):null)||function(e){var t;const n=r.initialThreadState;return n?(null!=(t=n.threadKey)?t:"")!==(null!=e?e:"")?null:n:null}(e)}(e),{threadSwitch:o})},{immediate:!0,flush:"sync"}),g(()=>Ze.value.records.map(e=>e.key).join("\0"),()=>{var e;e={start:Ze.value.start,end:Ze.value.end},o("range-change",e)},{immediate:!0}),g(()=>[r.items.length,De.value.totalHeight],()=>{ce.value||!1!==r.stickToBottom&&("auto"!==r.stickToBottom||Z.value)&&y(()=>{ce.value||!1!==r.stickToBottom&&("auto"!==r.stickToBottom||Z.value)&&jt()})},{flush:"post"}),k(()=>{Mt(),At(),he?(mn(Me,he),Nt({remember:!1}),ln()):!1===r.stickToBottom?(Nt({remember:!1}),ln()):(X.value=!0,Rt(Ht(),{writeDom:!0,remember:!1,updatePinned:!1}),Nt({remember:!1}),ln()),V.value&&"undefined"!=typeof ResizeObserver&&(ge=new ResizeObserver(()=>{Mt(),Nt()}),ge.observe(V.value))}),p(()=>{de.value||Kn(Me)}),b(()=>{un()||ln(),wt(),null!=we&&"undefined"!=typeof window&&window.clearTimeout(we),we=null,ve=void 0,Gt(Lt.raf),Lt.scheduled=!1,Lt.raf=null,Lt.anchor=void 0,Gt(Vt),Dt=!1,Vt=null,Wt.clear(),Nn(),te.clear(),ne.clear(),re.clear(),ae.clear(),le.clear(),null==ge||ge.disconnect(),ge=null}),t({captureThreadState:function(){return an(Ae.value)},restoreThreadState:An,scrollToBottom:jt,scrollToIndex:function(e,t="start"){const n=De.value.records[e];if(!n)return;let r=xt()+Ye(n);"center"===t?r-=(Q.value-n.size)/2:"end"===t&&(r-=Q.value-n.size),Pt(r)},scrollToOffset:Pt,getItemSize:e=>{var t;const n=ht(e);return n&&null!=(t=vt(n))?t:void 0},getTotalHeight:()=>De.value.totalHeight,getVisibleRange:()=>({start:Ze.value.start,end:Ze.value.end})}),(e,t)=>(w(),S("div",{ref_key:"scrollRoot",ref:V,class:M(["markstream-virtual-timeline",{"is-restoring-thread":!de.value}]),"data-markstream-virtual-timeline":"1","data-testid":"markstream-virtual-timeline",onScroll:_t},[x("div",{class:"markstream-virtual-timeline__spacer",style:B({height:`${Ze.value.topSpacerHeight}px`}),"aria-hidden":"true"},null,4),(w(!0),S(K,null,T(Ze.value.records,t=>(w(),S("div",{key:t.renderKey,class:"markstream-virtual-timeline__item","data-markstream-item-key":t.key,"data-markstream-item-kind":t.kind,style:B({minHeight:`${t.size}px`})},[H(e.$slots,"default",q({ref_for:!0},nn(t)),()=>{var e,n;return[t.markdown?(w(),F(C(P),q({key:0,ref_for:!0},tn(t)),null,16)):ut(t)?(w(),F(A(ut(t)),{key:1,ref_for:!0,ref:en(t),item:lt(t)},null,8,["item"])):(w(),S("div",{key:2,ref_for:!0,ref:en(t),class:M(["markstream-virtual-timeline__default-item",`markstream-virtual-timeline__default-item--${t.kind||"item"}`])},["tool-call"===t.kind&&(null==(e=lt(t))?void 0:e.status)?(w(),S("span",G,N(null==(n=lt(t))?void 0:n.status),1)):R("",!0),_(" "+N(rn(t)),1)],2))]},!0)],12,Y))),128)),x("div",{class:"markstream-virtual-timeline__spacer",style:B({height:`${Ze.value.bottomSpacerHeight}px`}),"aria-hidden":"true"},null,4),de.value?R("",!0):(w(),S("div",{key:0,class:"markstream-virtual-timeline__restore-loading",style:B({height:`${Math.max(1,St())}px`,transform:`translateY(${J.value}px)`}),"aria-live":"polite","aria-busy":"true"},[H(e.$slots,"restore-loading",{threadKey:Ae.value,visibleRecords:Ze.value.records},()=>[t[0]||(t[0]=x("div",{class:"markstream-virtual-timeline__restore-loading-card"},[x("span",{class:"markstream-virtual-timeline__restore-spinner","aria-hidden":"true"}),x("span",null,"Loading thread…")],-1))],!0)],4))],34))}})),[["__scopeId","data-v-dff004bf"]]),Q=J;Q.install=e=>{var t,n;const r=null!=(n=null!=(t=Q.__name)?t:Q.name)?n:"MarkstreamVirtualTimeline";e.component(r,J)};export{Q as default};
|
package/dist/tailwind.js
CHANGED
|
Binary file
|
package/dist/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{M as e,g as a,a as o,
|
|
1
|
+
import{M as e,g as a,a as o,c as s,i as r,l as n,d as t,n as m,p as g,e as i,r as d,h as c,s as l,j as p,u as f}from"../index2.js";export*from"stream-markdown-parser";import{defaultRByClass as u,estimateRByFormula as I,recommendNForSamples as R,recommendWorkerThreshold as L}from"./katex-threshold.js";import{disablePerfMonitoring as E,enablePerfMonitoring as M,getPerfReport as h,perfMonitor as k}from"./performance-monitor.js";import{safeCancelRaf as x,safeRaf as j}from"./safeRaf.js";export{e as MARKSTREAM_NODE_LIFECYCLE_KEY,u as defaultRByClass,E as disablePerfMonitoring,M as enablePerfMonitoring,I as estimateRByFormula,a as getLanguageIcon,h as getPerfReport,o as getRegisteredThemes,s as getUseMonaco,r as isCodeBlockRuntimeReady,n as languageIconsRevision,t as languageMap,m as normalizeLanguageIdentifier,k as perfMonitor,g as preloadCodeBlockRuntime,i as preloadExtendedLanguageIcons,R as recommendNForSamples,L as recommendWorkerThreshold,d as registerIconTheme,c as resolveMonacoLanguageId,x as safeCancelRaf,j as safeRaf,l as setIconTheme,p as setLanguageIconResolver,f as useMarkstreamNodeLifecycle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=Object.defineProperty,r=Object.defineProperties,n=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,l=(r,n,t)=>n in r?e(r,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[n]=t,a=(e,r)=>{for(var n in r||(r={}))o.call(r,n)&&l(e,n,r[n]);if(t)for(var n of t(r))i.call(r,n)&&l(e,n,r[n]);return e},c=(e,r,n)=>new Promise((t,o)=>{var i=e=>{try{a(n.next(e))}catch(r){o(r)}},l=e=>{try{a(n.throw(e))}catch(r){o(r)}},a=e=>e.done?t(e.value):Promise.resolve(e.value).then(i,l);a((n=n.apply(e,r)).next())});const s=()=>import("mermaid");let u=null,m=s;function
|
|
1
|
+
var e=Object.defineProperty,r=Object.defineProperties,n=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,l=(r,n,t)=>n in r?e(r,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[n]=t,a=(e,r)=>{for(var n in r||(r={}))o.call(r,n)&&l(e,n,r[n]);if(t)for(var n of t(r))i.call(r,n)&&l(e,n,r[n]);return e},c=(e,r,n)=>new Promise((t,o)=>{var i=e=>{try{a(n.next(e))}catch(r){o(r)}},l=e=>{try{a(n.throw(e))}catch(r){o(r)}},a=e=>e.done?t(e.value):Promise.resolve(e.value).then(i,l);a((n=n.apply(e,r)).next())});const s=()=>import("mermaid");let u=null,m=s,f=null,d=!1,p=!1,y=0;function g(e){m=e,y++,u=null,f=null,d=!1,p=!1}function k(e){g(null!=e?e:s)}function h(){g(null)}function W(){return"function"==typeof m}function b(e){if(!e)return e;const t=e&&e.default?e.default:e;if(t&&("function"==typeof t.render||"function"==typeof t.parse||"function"==typeof t.initialize))return t;if(t&&t.mermaidAPI&&("function"==typeof t.mermaidAPI.render||"function"==typeof t.mermaidAPI.parse)){const e=t.mermaidAPI;return o=a({},t),i={render:e.render.bind(e),parse:e.parse?e.parse.bind(e):void 0,initialize:r=>"function"==typeof t.initialize?t.initialize(r):e.initialize?e.initialize(r):void 0},r(o,n(i))}var o,i;return e.mermaid&&"function"==typeof e.mermaid.render?e.mermaid:t}function v(e){if(e)try{const r=null==e?void 0:e.initialize;e.initialize=n=>{const t=a({suppressErrorRendering:!0},n||{});return"function"==typeof r?r.call(e,t):(null==e?void 0:e.mermaidAPI)&&"function"==typeof e.mermaidAPI.initialize?e.mermaidAPI.initialize(t):void 0}}catch(r){}}function P(){return c(this,null,function*(){if(u)return u;const e=function(){try{const e=globalThis;return b(null==e?void 0:e.mermaid)}catch(e){return null}}();if(e)return u=e,v(u),u;const r=m,n=y;return r?r===s&&d?null:f||(f=c(null,null,function*(){let e;try{e=yield r()}catch(t){if(r===s)return n===y&&r===m&&(d=!0,function(e){p||(p=!0,console.warn('[markstream-vue] Optional dependency "mermaid" is not installed. Mermaid blocks will render as source.',e))}(t)),null;throw t}finally{n===y&&r===m&&(f=null)}return n!==y||r!==m?null:e?(u=b(e),v(u),u):null}),f):null})}let w=null,j=null;const E=/* @__PURE__ */new Map;let z=5,O=!1;function I(e){O=!!e}function M(e){Number.isFinite(e)&&e>0&&(z=Math.floor(e))}function R(){return{inFlight:E.size,max:z}}const A="WORKER_BUSY",T="MERMAID_DISABLED";function C(e){w=e,j=null;const r=e;w.onmessage=e=>{if(w!==r)return;const{id:n,ok:t,result:o,error:i}=e.data,l=E.get(n);l&&(!1===t||i?l.reject(new Error(i||"Unknown error")):l.resolve(o))},w.onerror=e=>{var n,t;if(w===r)if(0!==E.size){try{O?console.error("[mermaidWorkerClient] Worker error:",(null==e?void 0:e.message)||e):null==(t=console.debug)||t.call(console,"[mermaidWorkerClient] Worker error:",(null==e?void 0:e.message)||e)}catch(o){}for(const[r,n]of E.entries())n.reject(new Error(`Worker error: ${e.message}`));E.clear()}else null==(n=console.debug)||n.call(console,"[mermaidWorkerClient] Worker error (no pending):",(null==e?void 0:e.message)||e)},w.onmessageerror=e=>{var n,t;if(w===r)if(0!==E.size){try{O?console.error("[mermaidWorkerClient] Worker messageerror:",e):null==(t=console.debug)||t.call(console,"[mermaidWorkerClient] Worker messageerror:",e)}catch(o){}for(const[e,r]of E.entries())r.reject(new Error("Worker messageerror"));E.clear()}else null==(n=console.debug)||n.call(console,"[mermaidWorkerClient] Worker messageerror (no pending):",e)}}function x(){var e;if(w)try{for(const[e,r]of E.entries())r.reject(new Error("Worker cleared"));E.clear(),null==(e=w.terminate)||e.call(w)}catch(r){}w=null,j=null}function D(e,r,n=1400){if(!W()){const e=new Error("Mermaid rendering disabled");return e.name="MermaidDisabled",e.code=T,Promise.reject(e)}if(j)return Promise.reject(j);const t=w||(j=new Error("[mermaidWorkerClient] No worker instance set. Please inject a Worker via setMermaidWorker()."),j.name="WorkerInitError",j.code="WORKER_INIT_ERROR",null);if(!t)return Promise.reject(j);if(E.size>=z){const e=new Error("Worker busy");return e.name="WorkerBusy",e.code=A,e.inFlight=E.size,e.max=z,Promise.reject(e)}return new Promise((o,i)=>{const l=Math.random().toString(36).slice(2);let a,c=!1;const s=()=>{c||(c=!0,null!=a&&globalThis.clearTimeout(a),E.delete(l))},u={resolve:e=>{s(),o(e)},reject:e=>{s(),i(e)}};E.set(l,u);try{t.postMessage({id:l,action:e,payload:r})}catch(m){return E.delete(l),void i(m)}a=globalThis.setTimeout(()=>{const e=new Error("Worker call timed out");e.name="WorkerTimeout",e.code="WORKER_TIMEOUT";const r=E.get(l);r&&r.reject(e)},n)})}function _(e,r,n=1400){return c(this,null,function*(){try{return yield D("canParse",{code:e,theme:r},n)}catch(t){return Promise.reject(t)}})}function S(e,r,n=1400){return c(this,null,function*(){try{return yield D("findPrefix",{code:e,theme:r},n)}catch(t){return Promise.reject(t)}})}function B(){if(w)try{for(const[e,r]of E.entries())r.reject(new Error("Worker terminated"));E.clear(),w.terminate()}finally{w=null}}export{T as M,A as a,x as b,_ as c,h as d,k as e,S as f,P as g,R as h,W as i,C as j,I as k,M as l,g as s,B as t};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "markstream-vue",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.5-beta.1",
|
|
5
5
|
"description": "Vue/Nuxt streaming Markdown renderer for AI chat, LLM token streams, SSE/WebSocket output, incomplete Markdown, long documents, Mermaid, KaTeX, Shiki, and Monaco.",
|
|
6
6
|
"author": "Simon He",
|
|
7
7
|
"license": "MIT",
|
|
@@ -140,10 +140,10 @@
|
|
|
140
140
|
}
|
|
141
141
|
},
|
|
142
142
|
"dependencies": {
|
|
143
|
-
"@chenglou/pretext": "^0.0.
|
|
143
|
+
"@chenglou/pretext": "^0.0.8",
|
|
144
144
|
"@floating-ui/dom": "^1.7.6",
|
|
145
|
-
"
|
|
146
|
-
"
|
|
145
|
+
"markstream-core": "1.0.3",
|
|
146
|
+
"stream-markdown-parser": "1.0.9"
|
|
147
147
|
},
|
|
148
148
|
"devDependencies": {
|
|
149
149
|
"@antfu/eslint-config": "^5.4.1",
|