@betteroffice/docx 0.3.0 → 0.4.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.
Files changed (78) hide show
  1. package/README.md +64 -0
  2. package/dist/chunk-24Z6ZVFZ.mjs +1 -0
  3. package/dist/chunk-2QHGQA3V.mjs +1 -0
  4. package/dist/{chunk-ACGKK7IB.mjs → chunk-3CYO46ML.mjs} +1 -1
  5. package/dist/chunk-6CHGYCFU.mjs +1 -0
  6. package/dist/chunk-AOWJ4WDE.mjs +1 -0
  7. package/dist/chunk-DLXIZBB6.mjs +1 -0
  8. package/dist/chunk-F2VBW6RB.mjs +1 -0
  9. package/dist/chunk-HPZFJGGM.mjs +0 -0
  10. package/dist/chunk-L2ML3DDI.mjs +1 -0
  11. package/dist/chunk-LIGZ75FP.mjs +1 -0
  12. package/dist/chunk-LT2GCWZ3.mjs +0 -0
  13. package/dist/chunk-ND3FBCB3.mjs +16 -0
  14. package/dist/{chunk-NT2OYIJ4.mjs → chunk-NMDQHUQB.mjs} +1 -1
  15. package/dist/chunk-NVN26RHH.mjs +1 -0
  16. package/dist/{chunk-H5YYCN42.mjs → chunk-OK5UFGX3.mjs} +1 -1
  17. package/dist/{chunk-VQXNED2P.mjs → chunk-RZQ3OXZY.mjs} +1 -1
  18. package/dist/{chunk-QE4ZDRKV.mjs → chunk-YLFKV2NT.mjs} +1 -1
  19. package/dist/collaboration/index.d.mts +5 -4
  20. package/dist/compareDocx-IHFPGIGV.mjs +1 -0
  21. package/dist/computeLayout-4MNWHE2T.mjs +1 -0
  22. package/dist/core.d.mts +4 -4
  23. package/dist/core.mjs +1 -1
  24. package/dist/{displayListQueries-BYFrBkw5.d.mts → displayListQueries-H5YnU_hX.d.mts} +23 -5
  25. package/dist/docx/index.mjs +1 -1
  26. package/dist/editor/index.d.mts +15 -7
  27. package/dist/editor/index.mjs +1 -1
  28. package/dist/{fontLoader-CkXcPB1C.d.mts → fontLoader-BNSs0E8K.d.mts} +54 -1
  29. package/dist/{frameDelta-CVt5FAXT.d.mts → frameDelta-ByU7HBuB.d.mts} +21 -1
  30. package/dist/generated/edit/docx_edit_bg.wasm +0 -0
  31. package/dist/generated/layout/docx_layout_bg.wasm +0 -0
  32. package/dist/generated/opc/ooxml_opc_bg.wasm +0 -0
  33. package/dist/generated/parse/docx_parse_bg.wasm +0 -0
  34. package/dist/{index-BbZwdkPz.d.mts → index-CHy6_Yuo.d.mts} +470 -14
  35. package/dist/layout/index.d.mts +2 -2
  36. package/dist/layout/index.mjs +1 -1
  37. package/dist/layout/pagination/index.d.mts +2 -2
  38. package/dist/layout/render/index.d.mts +118 -31
  39. package/dist/layout/render/index.mjs +1 -1
  40. package/dist/loadWasmAsset-Cr95TImt.d.mts +25 -0
  41. package/dist/{pagedExport-D3E4jZ-B.d.mts → pagedExport---0Dlmzo.d.mts} +1 -1
  42. package/dist/parseWasm-NLAG22EU.mjs +1 -0
  43. package/dist/plugin-api/RenderedDomContext.d.mts +6 -4
  44. package/dist/plugin-api/RenderedDomContext.mjs +1 -1
  45. package/dist/{rustDisplayList-CwOoUn3t.d.mts → rustDisplayList-LcRZHCSL.d.mts} +12 -4
  46. package/dist/{rustMeasureSource-CyBMcy1x.d.mts → rustMeasureSource-BkCx1FDx.d.mts} +2 -0
  47. package/dist/types/document.d.mts +3 -0
  48. package/dist/{types-B4jD0rrc.d.mts → types-D6Pra38E.d.mts} +12 -3
  49. package/dist/utils/index.d.mts +14 -2
  50. package/dist/utils/index.mjs +1 -1
  51. package/dist/wasm-GSI2XMOH.mjs +1 -0
  52. package/dist/{wasm-G62X4WRW.mjs → wasm-K6DRABAA.mjs} +1 -1
  53. package/dist/wasm-NF6B3AH7.mjs +1 -0
  54. package/dist/wasm-edit.d.mts +177 -18
  55. package/dist/wasm-edit.mjs +1 -1
  56. package/dist/wasm-layout.d.mts +1 -1
  57. package/dist/wasm-layout.mjs +1 -1
  58. package/dist/wasm-opc.d.mts +1 -1
  59. package/dist/wasm-opc.mjs +1 -1
  60. package/dist/wasm-parse.d.mts +1 -1
  61. package/dist/wasm-parse.mjs +1 -1
  62. package/dist/yrs/index.d.mts +4 -3
  63. package/dist/yrs/index.mjs +1 -1
  64. package/dist/yrs/residentEngineWorker.mjs +1 -1
  65. package/package.json +2 -2
  66. package/dist/chunk-5B4VMUXM.mjs +0 -16
  67. package/dist/chunk-5F6DLQZP.mjs +0 -1
  68. package/dist/chunk-5JEQC76K.mjs +0 -1
  69. package/dist/chunk-7GJG6LLU.mjs +0 -1
  70. package/dist/chunk-FE6FWGBJ.mjs +0 -1
  71. package/dist/chunk-HLDJMU3R.mjs +0 -1
  72. package/dist/chunk-J7LNO6SM.mjs +0 -1
  73. package/dist/chunk-PGMXWI5X.mjs +0 -1
  74. package/dist/chunk-Z4HZIPBS.mjs +0 -1
  75. package/dist/compareDocx-XXTZV4CG.mjs +0 -1
  76. package/dist/computeLayout-LWLAJWYA.mjs +0 -1
  77. package/dist/loadWasmAsset-CMvnVkfA.d.mts +0 -3
  78. package/dist/wasm-US6R7SWN.mjs +0 -1
@@ -1 +1 @@
1
- import {d,c,e,s,t,f,v,w}from'../../chunk-PGMXWI5X.mjs';export{p as FRAME_DELTA_HEADER_BYTES,q as FRAME_DELTA_PAGE_OP_BYTES,o as FRAME_DELTA_VERSION,r as FrameDeltaError,a as GlyphCache,t as applyFrameDelta,u as applyFrameDeltaOwned,s as decodeFrameDelta,v as displayPageRevision,m as drawDisplayPage,n as drawPrimitive,b as fontSizePxFromShorthand,d as glyphRunRect,e as lineRect,h as presentDisplayPageBackBuffer,i as presentOffscreenPageBackBuffer,l as rasterizeDisplayListPages,g as rasterizeDisplayPageToBackBuffer,k as sizeCanvasForPage,c as textRunRect}from'../../chunk-PGMXWI5X.mjs';export{b as resolveCanvasPoint,a as resolveDisplayPageClientRect}from'../../chunk-7GJG6LLU.mjs';import {c as c$1}from'../../chunk-CTBUQRYQ.mjs';import {b}from'../../chunk-TTRUPDAB.mjs';var tt={pages:[{pageIndex:0,width:816,height:1056,primitives:[{kind:"rect",x:96,y:96,w:624,h:20,fill:"#fff9c4",blockId:0,docStart:1,docEnd:12},{kind:"text",text:"Hello Word",x:96,baselineY:110,width:84.5,font:"700 16px Calibri, sans-serif",color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"decoration",deco:"underline",x:96,y:113,w:84.5,h:1,color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"text",text:" \u2014 second run",x:180.5,baselineY:110,width:96.25,font:"400 16px Calibri, sans-serif",color:"#c0392b",docStart:11,docEnd:24,blockId:0},{kind:"line",x1:96,y1:140,x2:720,y2:140,strokeWidth:.75,color:"#666666",role:"table-border"},{kind:"image",relId:"rId7",x:96,y:160,w:200,h:120,docStart:30,docEnd:31,blockId:2}]}]};function Zt(){return import('../../wasm-G62X4WRW.mjs').then(async e=>(await e.preloadLayoutWasm(),e.outlineGlyphJson))}var R={page:"layout-page layout-page-mirror",content:"layout-page-content",header:"layout-page-header",footer:"layout-page-footer",block:"layout-paragraph",table:"layout-table",tableRow:"layout-table-row",tableCell:"layout-table-cell",text:"layout-run layout-run-text",rect:"layout-mirror-rect",image:"layout-run layout-run-image",shape:"layout-run layout-run-shape",chart:"layout-run layout-run-chart",decoration:"layout-decoration",line:"layout-mirror-line",pageBorder:"layout-page-border",tableCut:"layout-table-cut-border",blockSdt:"layout-block-sdt",inlineSdtWidget:"layout-inline-sdt-widget",revisionPmark:"layout-revision-pmark",revisionPmarkGlyph:"layout-revision-pmark-glyph",revisionPmarkIns:"layout-revision-ins",revisionPmarkDel:"layout-revision-del",listMarker:"layout-list-marker",revisionTable:"oox-revision-table",revisionRow:"oox-revision-row",revisionCell:"oox-revision-cell",revisionIns:"oox-revision-ins",revisionDel:"oox-revision-del",revisionMerge:"oox-revision-merge",notes:"layout-page-notes",note:"layout-note",noteBacklink:"layout-note-backlink"};function en(e,t={}){let r=t.document??document,n=t.labels,i={labels:n,noteRefIds:new Set},s=r.createElement("div");s.className=R.page,s.setAttribute("role","document"),n?.page&&s.setAttribute("aria-label",n.page),s.dataset.pageIndex=String(e.pageIndex),e.sectionId!==void 0&&(s.dataset.sectionId=e.sectionId),e.sectionIndex!==void 0&&(s.dataset.sectionIndex=String(e.sectionIndex)),e.sectionPageIndex!==void 0&&(s.dataset.sectionPageIndex=String(e.sectionPageIndex)),e.sectionPageNumber!==void 0&&(s.dataset.sectionPageNumber=String(e.sectionPageNumber)),e.pageLabel!==void 0&&(s.dataset.pageLabel=e.pageLabel),s.style.position="relative",s.style.width=`${e.width}px`,s.style.height=`${e.height}px`,s.style.opacity="0",s.style.pointerEvents="none";let o=r.createElement("div");o.className=R.content,o.style.position="absolute",o.style.left="0",o.style.top="0",o.style.width=`${e.width}px`,o.style.height=`${e.height}px`,s.appendChild(o);for(let a of (e.pageBorders??[]).filter(l=>l.zOrder==="back"))o.appendChild(rt(a,r,0));oe(o,e.primitives,r,0,i);for(let a of e.noteAreas??[])o.appendChild(mn(a,e,r,i));for(let a of [e.header,e.footer])a&&s.appendChild(tn(a,e,r,i));for(let a of (e.pageBorders??[]).filter(l=>l.zOrder!=="back"))s.appendChild(rt(a,r,0));return s}function tn(e,t,r,n){let i=r.createElement("div");i.className=e.kind==="header"?R.header:R.footer,i.dataset.hfRid=e.rId;let s=e.kind==="header"?n.labels?.header:n.labels?.footer;return s&&(i.setAttribute("role","region"),i.setAttribute("aria-label",s)),i.style.position="absolute",i.style.left="0",i.style.top=`${e.y}px`,i.style.width=`${t.width}px`,i.style.height=`${e.height}px`,oe(i,e.primitives,r,-e.y,n),i}function oe(e,t,r,n,i){let s=new Map;for(let o of t){let a=o.kind==="line"?void 0:o.blockKey??o.blockId;if(a===void 0){e.appendChild(be(o,r,n,i));continue}let l=o.table,c=l?.tableId!==void 0?`table:${l.tableId}#${l.rowStart??0}`:a,p=s.get(c);if(!p){let g=r.createElement("div");g.dataset.blockId=String(l?.tableId??a),g.style.position="absolute",g.style.left="0",g.style.top="0",e.appendChild(g),p={el:g,prims:[]},s.set(c,p);}p.prims.push(o);}for(let o of s.values())nn(o,r,n,i);sn(s);}function nn(e,t,r,n){let{el:i,prims:s}=e;if(!s.some(y=>y.cell!==void 0||y.structuralRevision?.scope==="table"||y.structuralRevision?.scope==="row"||y.structuralRevision?.scope==="cell")){nt(i,s,t,r,n);return}i.className=R.table,i.setAttribute("role","table");let a=s.find(y=>y.table!==void 0)?.table;e.table=a,e.cells=[],a?.tableId!==void 0&&(i.dataset.tableId=a.tableId),a?.rowStart!==void 0&&(i.dataset.rowStart=String(a.rowStart)),a?.rowEnd!==void 0&&(i.dataset.rowEnd=String(a.rowEnd)),a?.headerRowCount!==void 0&&(i.dataset.headerRowCount=String(a.headerRowCount)),a?.parentTableId!==void 0&&(i.dataset.parentTableId=a.parentTableId),a?.caption&&i.setAttribute("aria-label",a.caption),a?.description&&i.setAttribute("aria-description",a.description);let l=ge(s,"table");l&&he(i,l),He(i,s.find(y=>y.sdt!==void 0)?.sdt);for(let y of s)y.cell===void 0&&i.appendChild(be(y,t,r,n));let c=new Map,p=0,g=0;for(let y of s){if(y.cell===void 0)continue;let{row:u,col:h}=y.cell;p=Math.max(p,u+(y.cell.rowSpan??1)),g=Math.max(g,h+(y.cell.colSpan??1));let D=c.get(u);D||(D=new Map,c.set(u,D));let k=D.get(h);k||(k={ref:y.cell,prims:[]},D.set(h,k)),k.prims.push(y);}i.setAttribute("aria-rowcount",String(a?.rowCount??p)),i.setAttribute("aria-colcount",String(a?.columnCount??g));for(let y of [...c.keys()].sort((u,h)=>u-h)){let u=t.createElement("div");u.className=R.tableRow,u.setAttribute("role","row"),u.setAttribute("aria-rowindex",String(y+1));let h=ge(s,"row",y);h&&he(u,h),u.style.position="absolute",u.style.left="0",u.style.top="0",i.appendChild(u);let D=c.get(y);for(let k of [...D.keys()].sort((v,L)=>v-L)){let v=D.get(k),L=t.createElement("div");L.className=R.tableCell,L.setAttribute("role",v.ref.isHeader?"columnheader":"cell"),L.setAttribute("aria-colindex",String(k+1)),v.ref.cellId&&(L.id=v.ref.cellId),v.ref.headerIds?.length&&L.setAttribute("aria-labelledby",v.ref.headerIds.join(" ")),v.ref.repeatedHeader&&(L.dataset.repeatedHeader="true"),v.ref.noWrap&&(L.dataset.noWrap="true");let E=v.ref.rowSpan??1,B=v.ref.colSpan??1;E>1&&L.setAttribute("aria-rowspan",String(E)),B>1&&L.setAttribute("aria-colspan",String(B));let w=ge(v.prims,"cell",y,k);w&&he(L,w),v.ref.continuation&&(L.dataset.vmergeContinuation="true"),L.style.position="absolute",L.style.left="0",L.style.top="0";let N=new Map,ee=[];for(let T of v.prims){let Y=T.blockKey??T.blockId;if(Y===void 0){ee.push(T);continue}let P=N.get(Y);P?P.push(T):N.set(Y,[T]);}for(let T of Ce(ee))L.appendChild(be(T,t,r,n));for(let[T,Y]of N){let P=t.createElement("div");P.dataset.blockId=String(T),P.style.position="absolute",P.style.left="0",P.style.top="0",nt(P,Y,t,r,n),L.appendChild(P);}on(L,v.prims),ct(L,v.prims),e.cells.push({el:L,bounds:lt(v.prims)}),u.appendChild(L);}}Be(i,s);}function nt(e,t,r,n,i){let s=t.find(c=>c.chart!==void 0)?.chart;e.className=s?`${R.block} ${R.chart}`:R.block,e.setAttribute("role",s?"img":"paragraph"),s?.label&&e.setAttribute("aria-label",s.label);for(let c of Ce(t))e.appendChild(be(c,r,n,i));let o=ge(t,"pmark");o&&he(e,o),rn(e,t,r,n),He(e,t.find(c=>c.sdt!==void 0)?.sdt);let a=t.find(c=>c.paraId!==void 0)?.paraId;a!==void 0&&(e.dataset.paraId=a);let l=t.find(c=>c.fromLine!==void 0);l?.fromLine!==void 0&&(e.dataset.fromLine=String(l.fromLine),l.toLine!==void 0&&(e.dataset.toLine=String(l.toLine))),ct(e,t),ln(e,t);}function rn(e,t,r,n){Be(e,t);let i=Number(e.dataset.docStart),s=Number(e.dataset.docEnd),o=t.map(g=>g.fragmentDocStart).filter(g=>Number.isFinite(g)),a=t.map(g=>g.fragmentDocEnd).filter(g=>Number.isFinite(g)),l=o.length>0?Math.min(...o):void 0,c=a.length>0?Math.max(...a):void 0,p=l??(Number.isFinite(i)&&i===s&&i>0?i-1:void 0);if(p!==void 0&&(e.dataset.docStart=String(p)),c!==void 0&&(e.dataset.docEnd=String(c)),p!==void 0&&!t.some(g=>g.docStart===p)){let g=Ce(t).find(u=>Te(u)!==void 0),y=g?Te(g):void 0;if(y){let u=r.createElement("span");u.className="layout-mirror-structural-anchor",u.dataset.docStart=String(p),u.dataset.docEnd=String(p),j(u,y,n),e.insertBefore(u,e.firstChild);}}}function on(e,t){let r=e.querySelectorAll(".layout-paragraph[data-doc-start]"),n=1/0,i=-1/0;for(let s of r){let o=Number(s.dataset.docStart),a=Number(s.dataset.docEnd);Number.isFinite(o)&&(n=Math.min(n,o)),Number.isFinite(a)&&(i=Math.max(i,a));}n!==1/0&&(e.dataset.docStart=String(n)),i!==-1/0&&(e.dataset.docEnd=String(i)),n===1/0&&i===-1/0&&Be(e,t);}function sn(e){let t=new Map;for(let r of e.values())r.table?.tableId&&t.set(r.table.tableId,r);for(let r of e.values()){let n=r.table?.parentTableId;if(!n)continue;let i=t.get(n),s=lt(r.prims);if(!i?.cells?.length||!s)continue;let o=s.x+s.w/2,a=s.y+s.h/2,l=i.cells.filter(c=>c.bounds&&an(o,a,c.bounds));l.sort((c,p)=>it(c.bounds)-it(p.bounds)),l[0]?.el.appendChild(r.el);}}function an(e,t,r){return e>=r.x&&e<=r.x+r.w&&t>=r.y&&t<=r.y+r.h}function it(e){return e.w*e.h}function lt(e){let t;for(let r of e){let n=r.clipGroup?.clip,i=n?.x!==void 0&&n.y!==void 0&&n.w!==void 0&&n.h!==void 0?{x:n.x,y:n.y,w:n.w,h:n.h}:Te(r);if(!i)continue;if(!t){t={...i};continue}let s=Math.max(t.x+t.w,i.x+i.w),o=Math.max(t.y+t.h,i.y+i.h);t.x=Math.min(t.x,i.x),t.y=Math.min(t.y,i.y),t.w=s-t.x,t.h=o-t.y;}return t}function Te(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":return {x:e.x,y:e.y,w:e.w,h:e.h};case "image":case "shape":return {x:e.x,y:e.y,w:e.w,h:e.h};case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h}}}function Ce(e){let t=e.filter(n=>n.logicalOrder!==void 0).sort((n,i)=>(n.logicalOrder??0)-(i.logicalOrder??0)||(n.docStart??0)-(i.docStart??0));if(t.length<2)return e;let r=0;return e.map(n=>n.logicalOrder===void 0?n:t[r++])}function ct(e,t){let r=t.find(s=>s.lang)?.lang;r&&(e.lang=r);let n=t.find(s=>s.bidiLevel!==void 0||"rtl"in s);if(!n)return;let i=n.bidiLevel!==void 0?n.bidiLevel%2===1:"rtl"in n?n.rtl:false;e.dir=i?"rtl":"ltr";}function ln(e,t){let r=t.find(n=>n.ariaLabel||n.ariaDescription||n.decorative||n.hiddenObject||n.groupId);r&&ut(e,r);}function Be(e,t){let r,n;for(let i of t)i.docStart!==void 0&&(r=r===void 0?i.docStart:Math.min(r,i.docStart)),i.docEnd!==void 0&&(n=n===void 0?i.docEnd:Math.max(n,i.docEnd));r!==void 0&&(e.dataset.docStart=String(r)),n!==void 0&&(e.dataset.docEnd=String(n));}function ge(e,t,r,n){return e.find(i=>{let s=i.structuralRevision;return !(!s||s.scope!==t||r!==void 0&&s.rowIndex!==r||n!==void 0&&s.colIndex!==n)})?.structuralRevision}function be(e$1,t,r,n){switch(e$1.kind){case "text":{let i=ot(t,e$1,n);return i.className=R.text,i.textContent=e$1.text,j(i,c(e$1),r),i.style.font=e$1.font,st(i,e$1),at(i,e$1),Ee(i,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),e$1.structuralRevision?.scope==="pmark"&&(i.classList.add(R.revisionPmarkGlyph),e$1.structuralRevision.kind==="ins"&&i.classList.add(R.revisionPmarkIns),e$1.structuralRevision.kind==="del"&&i.classList.add(R.revisionPmarkDel),i.setAttribute("aria-hidden","true")),e$1.listMarker&&(i.classList.add(R.listMarker),i.setAttribute("aria-hidden","true"),e$1.listMarkerRevision&&(i.style.color=e$1.listMarkerRevision==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)")),ne(i,e$1),i}case "glyphRun":{let i=ot(t,e$1,n);return i.className=R.text,i.textContent=e$1.text,j(i,d(e$1),r),i.style.fontSize=`${e$1.size}px`,cn(i,e$1.fallbackFont),st(i,e$1),at(i,e$1),Ee(i,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),ne(i,e$1),i}case "rect":{let i=t.createElement("div");return i.className=R.rect,j(i,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(i,e$1),i}case "line":{let i=t.createElement("div");return i.className=e$1.role==="table-cut"?R.tableCut:R.line,e$1.role&&e$1.role!=="table-cut"&&(i.dataset.role=e$1.role),j(i,e(e$1),r),i.setAttribute("aria-hidden","true"),i}case "image":{let i=e$1.href?t.createElement("a"):t.createElement("div");return i.className=R.image,e$1.decorative?i.setAttribute("aria-hidden","true"):(i.setAttribute("role","img"),e$1.altText&&i.setAttribute("aria-label",e$1.altText)),dt(i,e$1),i.dataset.relId=e$1.relId,j(i,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),Ee(i,e$1.opacity,e$1.rotationDeg),e$1.filter&&(i.style.filter=e$1.filter),ne(i,e$1),e$1.revision&&(i.style.outline=`2px solid ${e$1.revision.kind==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)"}`),e$1.href||(i.style.pointerEvents="auto"),i}case "shape":{let i=t.createElement("div");return i.className=R.shape,e$1.decorative?i.setAttribute("aria-hidden","true"):i.setAttribute("role","img"),j(i,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),dn(i,e$1.transform),ne(i,e$1),i}case "decoration":{let i=t.createElement("span");return i.className=R.decoration,i.dataset.deco=e$1.deco,j(i,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(i,e$1),i}}}function rt(e,t,r){let n=t.createElement("div");return n.className=R.pageBorder,j(n,{x:e.x,y:e.y,w:e.w,h:e.h},r),n.style.boxSizing="border-box",n.style.pointerEvents="none",n.style.zIndex=e.zOrder==="back"?"0":"20",ye(n,"Top",e.top),ye(n,"Right",e.right),ye(n,"Bottom",e.bottom),ye(n,"Left",e.left),n}function j(e,t,r=0){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y+r}px`,e.style.width=`${t.w}px`,e.style.height=`${t.h}px`;}function ot(e,t,r){let n=t.noteRef?.id!==void 0?t.noteRef:void 0,i=t.href||n?e.createElement("a"):e.createElement("span");if(dt(i,t),n&&!t.href){let s=n.kind??"footnote",o=`oox-${s}-${n.id}`;i.setAttribute("href",`#${o}`),i.setAttribute("role","doc-noteref");let a=`oox-noteref-${s}-${n.id}`;r.noteRefIds.has(a)||(r.noteRefIds.add(a),i.id=a);}return i}function dt(e,t){let{href:r}=t;if(!r)return;e.setAttribute("href",r),e.dataset.href=r;let n=t.linkTitle??t.tooltip;n&&(e.title=n),t.linkTarget?e.setAttribute("target",t.linkTarget):r.startsWith("#")||e.setAttribute("target","_blank"),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener noreferrer"),t.linkHistory!==void 0&&(e.dataset.linkHistory=String(t.linkHistory)),t.linkDocLocation!==void 0&&(e.dataset.linkDocLocation=t.linkDocLocation);}function cn(e,t){if(t)for(let r of t.split(" ")){if(r.endsWith("px"))break;r==="italic"?e.style.fontStyle="italic":/^[1-9]00$/.test(r)&&r!=="400"&&(e.style.fontWeight=r);}}function st(e,t){t.lang&&(e.lang=t.lang),t.bidiLevel!==void 0?e.dir=t.bidiLevel%2===1?"rtl":"ltr":t.rtl&&(e.dir="rtl");}function ye(e,t,r){if(!r)return;let n=e.style;n[`border${t}Width`]=`${r.width}px`,n[`border${t}Style`]=r.style,n[`border${t}Color`]=r.color;}function Ee(e,t,r,n){t!==void 0&&(e.style.opacity=String(t));let i=[];r&&i.push(`rotate(${r}deg)`),n!==void 0&&n!==100&&i.push(`scaleX(${n/100})`),i.length>0&&(e.style.transform=i.join(" "),e.style.transformOrigin=n!==void 0&&n!==100?"left center":"center center");}function dn(e,t){if(!t)return;let r=[];t.rotation&&r.push(`rotate(${t.rotation}deg)`),t.flipH&&r.push("scaleX(-1)"),t.flipV&&r.push("scaleY(-1)"),r.length!==0&&(e.style.transform=r.join(" "),e.style.transformOrigin="center center");}function at(e,t){if(t.allCaps&&(e.style.textTransform="uppercase"),t.smallCaps&&(e.style.fontVariant="small-caps"),t.hidden&&(e.classList.add("docx-hidden"),e.style.textDecoration="underline dotted"),t.textShadow==="emboss"?e.style.textShadow="1px 1px 1px rgba(255,255,255,0.5), -1px -1px 1px rgba(0,0,0,0.3)":t.textShadow==="imprint"?e.style.textShadow="-1px -1px 1px rgba(255,255,255,0.5), 1px 1px 1px rgba(0,0,0,0.3)":t.textShadow==="shadow"&&(e.style.textShadow="1px 1px 2px rgba(0,0,0,0.3)"),t.textOutline&&(e.style.webkitTextStroke="1px currentColor",e.style.webkitTextFillColor="transparent"),t.emphasisMark){let r=t.emphasisMark==="comma"?"filled sesame":t.emphasisMark==="circle"?"filled circle":"filled dot",n=t.emphasisMark==="underDot"?"under right":"over right";e.style.textEmphasis=r,e.style.textEmphasisPosition=n,e.style.webkitTextEmphasis=r,e.style.webkitTextEmphasisPosition=n;}t.textEffect&&(e.classList.add("docx-text-effect",`docx-text-effect-${t.textEffect}`),e.dataset.effect=t.textEffect);}function ne(e,t){if(t.docStart!==void 0&&(e.dataset.docStart=String(t.docStart)),t.docEnd!==void 0&&(e.dataset.docEnd=String(t.docEnd)),t.commentIds&&t.commentIds.length>0&&(e.dataset.commentId=t.commentIds.join(" ")),t.field){let r=t.field.type??t.field.category;r&&(e.dataset.fieldType=r),t.field.category&&(e.dataset.fieldCategory=t.field.category),t.field.instruction&&(e.dataset.fieldInstruction=t.field.instruction);let n=t.field.instruction?.trim()||r;n&&e.setAttribute("aria-description",n);}if(t.noteRef?.id!==void 0&&(e.dataset.noteRefKind=t.noteRef.kind??"footnote",e.dataset.noteRefId=String(t.noteRef.id)),t.comment){t.comment.status&&(e.dataset.commentStatus=t.comment.status),t.comment.authorId&&(e.dataset.commentAuthorId=t.comment.authorId),t.comment.paletteIndex!==void 0&&(e.dataset.commentPaletteIndex=String(t.comment.paletteIndex)),t.comment.color&&(e.dataset.commentColor=t.comment.color),t.comment.selected!==void 0&&(e.dataset.commentSelected=String(t.comment.selected)),t.comment.authorName&&(e.dataset.commentAuthorName=t.comment.authorName),t.comment.date&&(e.dataset.commentDate=t.comment.date),t.comment.replyCount!==void 0&&(e.dataset.commentReplyCount=String(t.comment.replyCount));let r=[t.comment.status,t.comment.authorName??t.comment.authorId,t.comment.date,t.comment.text,...(t.comment.replies??[]).map(n=>[n.authorName,n.text].filter(Boolean).join(": "))].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}if(t.revision){e.dataset.changeAuthor=t.revision.author,e.dataset.changeDate=t.revision.date,e.dataset.revisionId=t.revision.revisionId,e.classList.add(t.revision.kind==="ins"?"docx-insertion":"docx-deletion"),e.hasAttribute("role")||e.setAttribute("role",t.revision.kind==="ins"?"insertion":"deletion");let r=[t.revision.author,t.revision.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}t.href&&(e.dataset.href=t.href),un(e,t.inlineSdtWidget),He(e,t.sdt),t.sdtPath?.length&&(e.dataset.sdtPath=t.sdtPath.map(r=>r.groupId).join(" ")),t.logicalOrder!==void 0&&(e.dataset.logicalOrder=String(t.logicalOrder)),t.bidiLevel!==void 0&&(e.dataset.bidiLevel=String(t.bidiLevel)),ut(e,t);}function ut(e,t){if(t.groupId&&(e.dataset.groupId=t.groupId),t.decorative||t.hiddenObject){e.setAttribute("aria-hidden","true"),e.removeAttribute("role"),e.removeAttribute("aria-label"),e.removeAttribute("aria-description");return}t.ariaLabel&&e.setAttribute("aria-label",t.ariaLabel),t.ariaDescription&&e.setAttribute("aria-description",t.ariaDescription);}function He(e,t){t&&(e.classList.add(R.blockSdt),e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.lock!==void 0&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem)),!e.hasAttribute("aria-label")&&(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.lock&&e.setAttribute("aria-readonly","true"));}function un(e,t){if(!t)return;e.classList.add(R.inlineSdtWidget);let r=t.controlKind??t.kind;e.dataset.sdtWidget=r,e.dataset.sdtGroupId=t.groupId,e.dataset.sdtPos=String(t.pos),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked),e.setAttribute("aria-checked",String(t.checked))),t.controlId!==void 0&&(e.dataset.sdtControlId=String(t.controlId)),t.value!==void 0&&(e.dataset.sdtValue=t.value),t.selectedIndex!==void 0&&(e.dataset.sdtSelectedIndex=String(t.selectedIndex)),t.dateFormat!==void 0&&(e.dataset.sdtDateFormat=t.dateFormat),t.dateLanguage!==void 0&&(e.dataset.sdtDateLanguage=t.dateLanguage),t.locked!==void 0&&(e.dataset.sdtLocked=String(t.locked)),r==="checkbox"?e.setAttribute("role","checkbox"):r==="dropDownList"||r==="comboBox"?(e.setAttribute("role","combobox"),e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-expanded","false")):r==="date"?(e.setAttribute("role","button"),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("role","group"),e.removeAttribute("tabindex"),(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.locked&&e.setAttribute("aria-disabled","true");}function he(e,t){switch(t.scope){case "pmark":e.classList.add(R.revisionPmark),t.kind==="ins"&&e.classList.add(R.revisionPmarkIns),t.kind==="del"&&e.classList.add(R.revisionPmarkDel);break;case "table":e.classList.add(R.revisionTable,Ae(t.kind));break;case "row":e.classList.add(R.revisionRow,Ae(t.kind));break;case "cell":e.classList.add(R.revisionCell,Ae(t.kind));break}e.dataset.revisionId=t.revisionId,e.dataset.revisionAuthor=t.author,t.date&&(e.dataset.revisionDate=t.date);let r=[t.author,t.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}function Ae(e){return e==="ins"?R.revisionIns:e==="del"?R.revisionDel:R.revisionMerge}function mn(e,t,r,n){let i=r.createElement("section");i.className=R.notes,i.dataset.noteKind=e.kind??"footnote",e.sectionId&&(i.dataset.sectionId=e.sectionId),e.columns!==void 0&&(i.dataset.columns=String(e.columns)),i.style.position="absolute",i.style.left="0",i.style.top=`${e.y??0}px`,i.style.width=`${t.width}px`,i.style.height=`${e.height??0}px`;let s=new Map;for(let a of e.notes??[])a.id!==void 0&&s.set(a.id,a);oe(i,e.separatorPrimitives??[],r,-(e.y??0),n);let o=[...e.primitives??[]];for(let a of e.noteIds??[]){let c=`${e.kind??"footnote"}-${a}`,p=o.filter(u=>u.groupId===c);if(p.length===0)continue;for(let u of p){let h=o.indexOf(u);h>=0&&o.splice(h,1);}let g=r.createElement("aside");g.className=R.note,g.id=`oox-${c}`,g.dataset.noteId=String(a),g.setAttribute("role",e.kind==="endnote"?"doc-endnote":"doc-footnote");let y=s.get(a);if(y&&(y.label!==void 0&&(g.dataset.noteLabel=y.label),y.anchorDocStart!==void 0&&(g.dataset.anchorDocStart=String(y.anchorDocStart)),y.anchorDocEnd!==void 0&&(g.dataset.anchorDocEnd=String(y.anchorDocEnd))),oe(g,p,r,-(e.y??0),n),y){let u=r.createElement("a");u.className=R.noteBacklink,u.setAttribute("role","doc-backlink"),u.setAttribute("href",`#oox-noteref-${c}`);let h=n.labels?.noteBacklink??y.label??String(a);u.setAttribute("aria-label",h),g.appendChild(u);}i.appendChild(g);}return o.length>0&&oe(i,o,r,-(e.y??0),n),i}function pn(e,t){for(let r of Array.from(e.querySelectorAll(".layout-canvas-sdt-box[data-sdt-group-id]")))r.classList.toggle("layout-sdt-focused",t.has(r.dataset.sdtGroupId??""));}var fn=".layout-sdt-widget, .layout-inline-sdt-widget, .layout-sdt-repeat-btn";function yn(e,t={}){let r=t.document??document,n=r.createElement("div");n.className="layout-interactive-overlay",n.dataset.pageIndex=String(e.pageIndex),n.style.position="absolute",n.style.inset="0",n.style.width=`${e.width}px`,n.style.height=`${e.height}px`,n.style.pointerEvents="none",n.addEventListener("mousedown",a=>{a.target?.closest?.(fn)&&(a.preventDefault(),a.stopPropagation());});let i=gn(e),s=hn(i);for(let a of [...s.values()].sort(xn))n.appendChild(Ln(a,r,t.labels));let o=bn(i);for(let a of o.values())n.appendChild(Rn(a,r,t.labels));return n}function gn(e){return [...e.primitives,...e.header?.primitives??[],...e.footer?.primitives??[],...(e.noteAreas??[]).flatMap(t=>[...t.separatorPrimitives??[],...t.primitives??[]])]}function hn(e){let t=new Map;for(let r of e){let n=pt(r);if(!n)continue;let i=r.sdtPath?.length?r.sdtPath:r.sdt?[r.sdt]:[];for(let s of i){let o=t.get(s.groupId);o?o.rect=ft(o.rect,n):t.set(s.groupId,{attrs:s,rect:{...n}});}}return t}function bn(e){let t=new Map;for(let r of e){let n=r.inlineSdtWidget,i=pt(r);if(!n||!i)continue;let s=`${n.groupId}:${n.pos}:${n.controlKind??n.kind}`,o=t.get(s);o?o.rect=ft(o.rect,i):t.set(s,{attrs:n,rect:{...i}});}return t}function xn(e,t){return (e.attrs.depth??0)-(t.attrs.depth??0)||e.rect.y-t.rect.y||e.rect.x-t.rect.x}function Ln(e,t,r){let{attrs:n,rect:i}=e,s=t.createElement("div");s.className="layout-block-sdt-box layout-canvas-sdt-box",Sn(s,n),yt(s,i),s.style.pointerEvents="none";let o=n.alias||n.tag;if(o){let c=t.createElement("span");c.className="layout-block-sdt-label",c.textContent=o,s.appendChild(c);}let a=vn(n.sdtType),l=!n.bound&&!In(n.lock);if(a&&l){let c=t.createElement("button");c.type="button",c.className="layout-sdt-widget",c.dataset.sdtWidget=a,c.dataset.sdtGroupId=n.groupId,n.tag&&(c.dataset.sdtTag=n.tag),n.alias&&(c.dataset.sdtAlias=n.alias),(o||r?.control)&&c.setAttribute("aria-label",o||r?.control||""),a==="dropdown"&&c.setAttribute("aria-haspopup","listbox"),a==="date"&&c.setAttribute("aria-haspopup","dialog"),a==="checkbox"&&(c.setAttribute("role","checkbox"),c.setAttribute("aria-checked",String(n.checked??false))),c.textContent=a==="dropdown"?"\u25BE":a==="date"?"\u25A3":n.checked?"\u2612":"\u2610",c.style.pointerEvents="auto",s.appendChild(c);}if(n.repeatingItem&&l){let c=t.createElement("div");c.className="layout-sdt-repeat-controls",c.style.pointerEvents="auto",c.appendChild(mt(t,n,"add","\uFF0B",r?.addRepeatingItem,o)),c.appendChild(mt(t,n,"remove","\u2715",r?.removeRepeatingItem,o)),s.appendChild(c);}return s}function mt(e,t,r,n,i,s){let o=e.createElement("button");return o.type="button",o.className="layout-sdt-repeat-btn",o.dataset.sdtRepeat=r,o.dataset.sdtGroupId=t.groupId,t.tag&&(o.dataset.sdtTag=t.tag),(i||s)&&o.setAttribute("aria-label",i||s||""),o.textContent=n,o}function Rn(e,t,r){let{attrs:n,rect:i}=e,s=n.controlKind??n.kind,o=t.createElement("button");return o.type="button",o.className="layout-sdt-widget layout-inline-sdt-widget layout-canvas-inline-sdt-widget",o.dataset.sdtWidget=Dn(s),o.dataset.sdtGroupId=n.groupId,o.dataset.sdtPos=String(n.pos),n.tag&&(o.dataset.sdtTag=n.tag),n.alias&&(o.dataset.sdtAlias=n.alias),n.controlId!==void 0&&(o.dataset.sdtControlId=String(n.controlId)),n.value!==void 0&&(o.dataset.sdtValue=n.value),n.selectedIndex!==void 0&&(o.dataset.sdtSelectedIndex=String(n.selectedIndex)),n.dateFormat&&(o.dataset.sdtDateFormat=n.dateFormat),n.dateLanguage&&(o.dataset.sdtDateLanguage=n.dateLanguage),n.listItems?.length&&(o.dataset.sdtListItems=JSON.stringify(n.listItems)),(n.alias||n.tag||r?.control)&&o.setAttribute("aria-label",n.alias||n.tag||r?.control||""),s==="checkbox"?(o.setAttribute("role","checkbox"),o.setAttribute("aria-checked",String(n.checked??false))):s==="dropDownList"||s==="comboBox"?(o.setAttribute("aria-haspopup","listbox"),o.setAttribute("aria-expanded","false")):s==="date"&&o.setAttribute("aria-haspopup","dialog"),o.disabled=n.locked===true,o.textContent=s==="checkbox"?n.checked?"\u2612":"\u2610":s==="date"?"\u25A3":s==="picture"?"\u25A7":"\u25BE",yt(o,i),o.style.pointerEvents="auto",o}function Dn(e){return e==="dropDownList"||e==="comboBox"?"dropdown":e}function vn(e){return e==="checkbox"?"checkbox":e==="dropDownList"||e==="comboBox"?"dropdown":e==="date"?"date":null}function In(e){return e==="contentLocked"||e==="sdtContentLocked"||e==="sdtLocked"}function Sn(e,t){e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag&&(e.dataset.sdtTag=t.tag),t.alias&&(e.dataset.sdtAlias=t.alias),t.lock&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem));}function pt(e$1){let t=e$1.clipGroup?.clip;if(t?.x!==void 0&&t.y!==void 0&&t.w!==void 0&&t.h!==void 0)return {x:t.x,y:t.y,w:t.w,h:t.h};switch(e$1.kind){case "text":return c(e$1);case "glyphRun":return d(e$1);case "rect":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "line":return e(e$1);case "image":case "shape":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "decoration":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h}}}function ft(e,t){let r=Math.min(e.x,t.x),n=Math.min(e.y,t.y),i=Math.max(e.x+e.w,t.x+t.w),s=Math.max(e.y+e.h,t.y+t.h);return {x:r,y:n,w:i-r,h:s-n}}function yt(e,t){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y}px`,e.style.width=`${Math.max(1,t.w)}px`,e.style.height=`${Math.max(1,t.h)}px`;}var K=class extends Error{constructor(r,n){let i=n instanceof Error?n.message:String(n);super(`Rust display-list ${r} failed: ${i}`);b(this,"stage");this.name="RustDisplayListSourceError",this.stage=r;}},gt=null;function Fe(){return gt??(gt=import('../../wasm-G62X4WRW.mjs').then(async e=>(await e.preloadLayoutWasm(),{buildDisplayListJson:e.buildDisplayListJson,hitTestRegionsJson:e.hitTestRegionsJson,verticalMoveJson:e.verticalMoveJson,rangeRectsJson:e.rangeRectsJson,rangeRectsRegionJson:e.rangeRectsRegionJson,hasRangeRectsRegion:e.hasRangeRectsRegion,hasDisplayListSession:e.hasDisplayListSession,openDisplayList:e.openDisplayList,closeDisplayList:e.closeDisplayList,updateDisplayList:e.updateDisplayList,hasDisplayListUpdate:e.hasDisplayListUpdate,hitTestRegionsByHandle:e.hitTestRegionsByHandle,verticalMoveByHandle:e.verticalMoveByHandle,rangeRectsByHandle:e.rangeRectsByHandle,rangeRectsRegionByHandle:e.rangeRectsRegionByHandle}))),gt}function Ge(){return Fe()}function kn(e,t){let r=e.measured,n="[";for(let s=0;s<r.length;s++){s>0&&(n+=",");let o=r[s],a=o.measure,l;if(t&&a!==null&&typeof a=="object"){let c=a;l=t.get(c),l===void 0&&(l=JSON.stringify(o.measure),t.set(c,l));}else l=JSON.stringify(o.measure);n+='{"block":'+JSON.stringify(o.block)+',"measure":'+l+"}";}n+="]";let i='{"measured":'+n+',"options":'+JSON.stringify(e.options)+',"layout":'+JSON.stringify(e.layout);return e.contractVersion!==void 0&&(i+=',"contractVersion":'+JSON.stringify(e.contractVersion)),e.headersFooters!==void 0&&(i+=',"headersFooters":'+JSON.stringify(e.headersFooters)),e.fontChains!==void 0&&(i+=',"fontChains":'+JSON.stringify(e.fontChains)),e.noteAreas!==void 0&&(i+=',"noteAreas":'+JSON.stringify(e.noteAreas)),e.resolvedCommentIds!==void 0&&(i+=',"resolvedCommentIds":'+JSON.stringify(e.resolvedCommentIds)),e.commentAuthors!==void 0&&(i+=',"commentAuthors":'+JSON.stringify(e.commentAuthors)),e.commentThreads!==void 0&&(i+=',"commentThreads":'+JSON.stringify(e.commentThreads)),i+="}",i}function ht(e){let t={};return e.contractVersion!==void 0&&(t.contractVersion=e.contractVersion),e.headersFooters!==void 0&&(t.headersFooters=e.headersFooters),e.fontChains!==void 0&&(t.fontChains=e.fontChains),e.noteAreas!==void 0&&(t.noteAreas=e.noteAreas),e.resolvedCommentIds!==void 0&&(t.resolvedCommentIds=e.resolvedCommentIds),e.commentAuthors!==void 0&&(t.commentAuthors=e.commentAuthors),e.commentThreads!==void 0&&(t.commentThreads=e.commentThreads),JSON.stringify(t)}var wn=new WeakMap;async function bt(e,t){let r;try{r=t??await Fe();}catch(s){throw new K("load",s)}let n,i;try{n=kn(e,wn),i=r.buildDisplayListJson(n);}catch(s){throw new K("build",s)}try{return JSON.parse(i)}catch(s){throw new K("parse",s)}}async function Mn(e,t$1,r=null){let n;try{n=t$1??await Fe();}catch(l){throw new K("load",l)}if(!n.buildDisplayListFrame)return {displayList:await bt(e,n),frame:null,transport:"json"};let i=ht(e),s$1;try{s$1=n.buildDisplayListFrame(i,r?.frameEpoch??0);}catch(l){throw new K("build",l)}let o;try{o=s(s$1);}catch(l){throw new K("decode",l)}let a;try{a=t(r,o);}catch(l){throw new K("apply",l)}return {displayList:a.displayList,frame:a,transport:"frame-delta-v1"}}function xt(e,t,r){if(t==="body")return e.primitives.filter(i=>i.kind==="image");let n=t==="header"?e.header:e.footer;return !n||r!==void 0&&n.rId!==r?[]:n.primitives.filter(i=>i.kind==="image")}function Ne(e,t,r="body",n){for(let i of e.pages)for(let s of xt(i,r,n))if(s.docStart===t)return {primitive:s,pageIndex:i.pageIndex,...r!=="body"?{region:r,rId:n}:{}};return null}function Ye(e,t,r,n,i="body",s){let o=e.pages[t];if(!o)return null;let a=xt(o,i,s);for(let l=a.length-1;l>=0;l--){let c=a[l];if(!(r<c.x||r>c.x+c.w)&&!(n<c.y||n>c.y+c.h))return {primitive:c,pageIndex:o.pageIndex,...i!=="body"?{region:i,rId:s}:{}}}return null}function Pn(e,t){let r=e.imageByPos(t);if(!r)return;let n=e.contentBounds(r.pageIndex),i=e.paragraphRects(t).find(s=>s.pageIndex===r.pageIndex);if(!(!n||!i))return {horizontalEmu:Math.round(c$1(r.primitive.x-n.x)),verticalEmu:Math.round(c$1(r.primitive.y-i.y))}}var xe=(()=>{let e=globalThis.FinalizationRegistry;return e?new e(t=>t()):null})(),Oe=new WeakMap,Re=new WeakSet,_e=new Set;function En(e){return e!=null&&Re.has(e)}function An(e){return _e.add(e),()=>{_e.delete(e);}}function Le(e){return e instanceof Error?typeof WebAssembly<"u"&&e instanceof WebAssembly.RuntimeError?true:e.name==="RuntimeError":false}function Tn(e,t){let r=e.storeRevisions();if(!r)return null;let n=new Map;e.list.pages.forEach((a,l)=>n.set(a,l));let i=[],s=[],o=[];return t.pages.forEach((a,l)=>{let c=n.get(a);if(c===void 0){s.push([l,a]);return}n.delete(a);let p=r[c];if(p===void 0){s.push([l,a]);return}let g=v(a)===p?[]:w(a,p);g===null?s.push([l,a]):g.length===0?i.push([l,c]):o.push([l,c,g.map(y=>y.map(u=>[u.start,u.count,u.changedMask,u.delta]))]);}),i.length===0&&o.length===0?null:JSON.stringify({total:t.pages.length,...t.contractVersion!==void 0?{contractVersion:t.contractVersion}:{},reuse:i,replace:s,...o.length>0?{shift:o}:{}})}function Cn(e,t,r){let n=null,i=null,s=()=>(n===null&&(i=e.pages.map(v),n=JSON.stringify(e)),n),o=null,a=Bn(t)?t:null,l=a?null:t??null,c=null,p,g,y=new Promise((d,m)=>{p=d,g=m;});y.catch(()=>{});let u=null,h=false,D=false,k=false,v$1={},L=null;if(r){let d=Oe.get(r);d&&(L=d.hasHandle()?r:d.donor(),d.supersede());}let E=()=>a??l,B=()=>{let d=E();return d!==null&&Re.has(d)},w=(d,m)=>{let f=m instanceof Error?m:new Error(String(m));c=f,u=null,xe?.unregister(v$1);let b=E();if(!(!b||Re.has(b))){Re.add(b),console.error(`[CanvasRenderer] ${d} trapped in wasm; the session is unusable and must be rebuilt`,f);for(let x of _e)try{x(f);}catch(I){console.error("[CanvasRenderer] display-list source failure listener threw",I);}}},N=()=>{if(u!==null&&B()){u=null;return}if(u!==null){try{l?.closeDisplayList?.(u);}catch{}u=null;}},ee=()=>{let d=L;if(L=null,!d||!l?.updateDisplayList||!l.hasDisplayListUpdate?.())return false;let m=Oe.get(d);if(!m||m.engine()!==l)return false;let f=e.pages.map(v),b=Tn(m,e);if(!b)return false;let x=m.takeHandle();if(x===null)return false;try{return l.updateDisplayList(x,b),u=x,o=f,!0}catch(I){try{l.closeDisplayList?.(x);}catch{}return console.warn("[CanvasRenderer] display-list delta update failed; reopening",I),false}},T=()=>{if(!(k||D||h||u!==null||!l||B())&&!(!l.hasDisplayListSession?.()||!l.openDisplayList)&&(h=true,!ee()))try{u=l.openDisplayList(s()),o=i;}catch(d){if(u=null,Le(d)){w("display-list session open",d);return}console.warn("[CanvasRenderer] display-list session open failed; using JSON-arg queries",d);}};a||l?p():Ge().then(d=>{l=d,p();},d=>{c=d instanceof Error?d:new Error(String(d)),g(c),console.warn("[CanvasRenderer] display-list query engine failed to load",c);});let Y=(d,m,f)=>{if(!l||B())return null;if(u===null&&T(),u!==null&&d)try{return d(u)}catch(b){if(Le(b))return w(f,b),null;console.warn(`[CanvasRenderer] ${f} session query failed; falling back`,b),N();}try{return m()}catch(b){return Le(b)?(w(f,b),null):(c=b instanceof Error?b:new Error(String(b)),console.warn(`[CanvasRenderer] ${f} query failed`,b),null)}},P=(d,m,f)=>{if(d===null)return m;try{return JSON.parse(d)}catch(b){return c=b instanceof Error?b:new Error(String(b)),console.warn(`[CanvasRenderer] ${f} returned invalid JSON`,b),m}},Z=(d,m)=>{if(B())return null;try{return d()}catch(f){return Le(f)?(w(`resident ${m}`,f),null):(c=f instanceof Error?f:new Error(String(f)),console.warn(`[CanvasRenderer] resident ${m} query failed`,f),null)}},ce=(d,m,f)=>{if(a)return P(Z(()=>a.displayHitTestRegionsJson(d,m,f),"hit_test_regions"),null,"hit_test_regions");let b=Y(l?.hitTestRegionsByHandle&&(x=>l.hitTestRegionsByHandle(x,d,m,f)),()=>l.hitTestRegionsJson(s(),d,m,f),"hit_test_regions");return P(b,null,"hit_test_regions")},H=(d,m)=>{if(a)return P(Z(()=>a.displayRangeRectsJson(d,m),"range_rects"),[],"range_rects");let f=Y(l?.rangeRectsByHandle&&(b=>l.rangeRectsByHandle(b,d,m)),()=>l.rangeRectsJson(s(),d,m),"range_rects");return P(f,[],"range_rects")},te=(d,m,f)=>{let b=f??Number.NaN;if(a)return P(Z(()=>a.displayVerticalMoveJson(d,m,b),"vertical_move"),null,"vertical_move");if(!l?.verticalMoveJson)return null;let x=Y(l.verticalMoveByHandle&&(I=>l.verticalMoveByHandle(I,d,m,b)),()=>l.verticalMoveJson(s(),d,m,b),"vertical_move");return P(x,null,"vertical_move")},C=(d,m,f,b)=>{if(a)return P(Z(()=>a.displayRangeRectsRegionJson(d,m,f,b),"range_rects_region"),[],"range_rects_region");if(!l||!l.hasRangeRectsRegion?.())return [];let x=Y(l.rangeRectsRegionByHandle&&(I=>l.rangeRectsRegionByHandle(I,d,m,f,b)),()=>l.rangeRectsRegionJson(s(),d,m,f,b),"range_rects_region");return P(x,[],"range_rects_region")},O=(d,m,f,b)=>C(d,m,f,b),_=(d,m,f,b)=>C(d,String(m),f,b),J=(d,m)=>{let f=(x,I)=>{let S=new Map;for(let M of x)I&&S.has(M.pageIndex)||S.set(M.pageIndex,{pageIndex:M.pageIndex,x:I?M.x:M.x+M.width,y:M.y,width:0,height:M.height});return [...S.values()]},b=d(m,m+1);if(b.length>0)return f(b,true);if(m>0){let x=d(m-1,m);if(x.length>0)return f(x,false)}return []},X=(d,m,f)=>J((b,x)=>O(d,m,b,x),f),V=(d,m,f)=>J((b,x)=>_(d,m,b,x),f),U=d=>{let m=H(d,d+1);if(m.length>0){let f=m[0];return {pageIndex:f.pageIndex,x:f.x,y:f.y,width:0,height:f.height}}if(d>0){let f=H(d-1,d);if(f.length>0){let b=f[f.length-1];return {pageIndex:b.pageIndex,x:b.x+b.width,y:b.y,width:0,height:b.height}}}return null},z=d=>{let m=H(d,d+2);return m.length>0?m[0]:U(d)},ve=(d,m,f)=>{let b=O(d,m,f,f+2);if(b.length===0)return X(d,m,f);let x=new Map;for(let I of b)x.has(I.pageIndex)||x.set(I.pageIndex,I);return [...x.values()]},ze=(d,m)=>({pageIndex:d,x:m.x,y:m.y,width:m.w,height:m.h}),kt=d=>{let m=e.pages[d];return m?{pageIndex:m.pageIndex,x:0,y:0,width:m.width,height:m.height}:null},wt=d=>{let m=e.pages[d],f=m?.contentBounds;return m&&f?{pageIndex:m.pageIndex,x:f.x,y:f.y,width:f.width,height:f.height}:null},Mt=d=>{let m=e.pages[d];return m?(m.columnBounds??[]).map(f=>({pageIndex:m.pageIndex,x:f.x,y:f.y,width:f.width,height:f.height})):[]},Ie=d=>d.paraId?`para:${d.paraId}`:d.blockKey!==void 0?`block-key:${d.blockKey}`:d.blockId!==void 0?`block-id:${d.blockId}`:null,je=d=>d.blockKey??d.blockId,de=null,Pt=()=>{if(de)return de;let d=new Map;for(let m of e.pages)for(let f$1 of m.primitives){let b=Ie(f$1);if(!b||f$1.docStart===void 0||f$1.docEnd===void 0)continue;let x=f(f$1),I=d.get(b);I||(I=new Map,d.set(b,I));let S=I.get(m.pageIndex);if(!S){I.set(m.pageIndex,{...ze(m.pageIndex,x),from:f$1.docStart,to:f$1.docEnd,blockId:je(f$1),paraId:f$1.paraId});continue}let M=Math.min(S.x,x.x),A=Math.min(S.y,x.y),me=Math.max(S.x+S.width,x.x+x.w),pe=Math.max(S.y+S.height,x.y+x.h);S.x=M,S.y=A,S.width=me-M,S.height=pe-A,S.from=Math.min(S.from,f$1.docStart),S.to=Math.max(S.to,f$1.docEnd);}return de=new Map([...d].map(([m,f])=>[m,[...f.values()]])),de},Et=d=>{let m=null;for(let f of e.pages)for(let b of f.primitives){let x=Ie(b),I=b.docStart,S=b.docEnd;if(!x||I===void 0||S===void 0||d<I||d>S)continue;let M={identity:x,span:Math.max(0,S-I),startsAtPos:I===d};(!m||M.startsAtPos&&!m.startsAtPos||M.startsAtPos===m.startsAtPos&&M.span<m.span)&&(m=M);}return m?Pt().get(m.identity)??[]:[]},At=1.5,ue=null,Ue=()=>{if(ue)return ue;let d=[];for(let m of e.pages){let f$1=[],b=0;for(let x of m.primitives){if(x.kind!=="text"&&x.kind!=="glyphRun"||x.docStart===void 0||x.docEnd===void 0||x.kind==="glyphRun"&&x.glyphs.length===0)continue;let I=x.kind==="text"?x.baselineY:x.glyphs.reduce((fe,Ht)=>Math.max(fe,Ht.y),-1/0);if(!Number.isFinite(I))continue;let S=Ie(x)??`anonymous:${b++}`,M=f(x),A=f$1.find(fe=>fe.identity===S&&Math.abs(fe.baseline-I)<=At);if(!A){f$1.push({identity:S,...ze(m.pageIndex,M),baseline:I,from:x.docStart,to:x.docEnd,blockId:je(x),paraId:x.paraId});continue}let me=Math.min(A.x,M.x),pe=Math.min(A.y,M.y),Ct=Math.max(A.x+A.width,M.x+M.w),Bt=Math.max(A.y+A.height,M.y+M.h);A.x=me,A.y=pe,A.width=Ct-me,A.height=Bt-pe,A.from=Math.min(A.from,x.docStart),A.to=Math.max(A.to,x.docEnd);}d.push(...f$1.map(({identity:x,...I})=>I));}return ue=d,ue},Tt=d=>{let m=null;for(let f of Ue())d<f.from||d>f.to||(!m||f.to-f.from<m.to-m.from)&&(m=f);return m},qe=d=>{if(!d)return null;let m=d.primitive.docStart;if(m===void 0)return null;let{primitive:f}=d;return {...d,pos:m,rect:{pageIndex:d.pageIndex,x:f.x,y:f.y,width:f.w,height:f.h}}},Se={displayList:e,isReady:()=>(a!==null||l!==null)&&c===null,sourceState:()=>c?{status:"error",error:c}:a||l?{status:"ready"}:{status:"loading"},whenReady:()=>y,pageCount:()=>e.pages.length,pageSize:d=>{let m=e.pages[d];return m?{width:m.width,height:m.height}:null},pageBounds:kt,contentBounds:wt,columnBounds:Mt,paragraphRects:Et,visualLines:Ue,visualLineAtPosition:Tt,imageAtPoint:(d,m,f,b="body",x)=>qe(Ye(e,d,m,f,b,x)),imageByPos:(d,m="body",f)=>qe(Ne(e,d,m,f)),hitTestRegions:ce,verticalMove:te,rangeRects:H,hfRangeRects:O,noteRangeRects:_,hfCaretRects:X,noteCaretRects:V,hfAnchorRects:ve,caretRect:U,anchorRect:z,sidebarAnchorRect:z,prime:T,dispose:()=>{k||(k=true,N(),xe?.unregister(v$1));}};return xe?.register(Se,N,v$1),Oe.set(Se,{list:e,storeRevisions:()=>o,engine:()=>l,hasHandle:()=>u!==null,donor:()=>L,supersede:()=>{D=true;},takeHandle:()=>{let d=u;return d!==null&&(u=null,xe?.unregister(v$1)),d}}),Se}function Bn(e){return typeof e?.displayHitTestRegionsJson=="function"&&typeof e?.displayVerticalMoveJson=="function"&&typeof e?.displayRangeRectsJson=="function"&&typeof e?.displayRangeRectsRegionJson=="function"}var Hn=16,Fn=24;function se(e){let t=[],r=24;for(let n=0;n<e.pageCount();n++)t.push(r),r+=(e.pageSize(n)?.height??0)+16;return t}function Gn(){let e=new Map;return t=>{if(!t.startsWith("blob:")&&!t.startsWith("data:"))return null;let r=e.get(t);return r||(r=new Promise(n=>{let i=new Image;i.onload=()=>n(i),i.onerror=()=>n(null),i.src=t;}),e.set(t,r)),r}}function Nn(e,t){let r=e.activeCommentIds.length>0?t?.(e.activeCommentIds):void 0;return {hasSelection:e.hasSelection,inInsertion:e.inInsertion,inDeletion:e.inDeletion,hasComment:e.activeCommentIds.length>0,inList:e.inList,listLevel:e.listLevel??0,...r?.authorName!==void 0?{commentAuthor:r.authorName}:{},...r?.replyCount!==void 0?{commentReplyCount:r.replyCount}:{}}}function Yn(e,t){if(!e)return [];let r=[];return !e.hasSelection&&t.hasSelection&&r.push({key:"selected"}),e.hasSelection&&!t.hasSelection&&r.push({key:"selectionCleared"}),!e.hasComment&&t.hasComment&&r.push({key:"commentedText",...t.commentAuthor!==void 0||t.commentReplyCount!==void 0?{vars:{...t.commentAuthor!==void 0?{author:t.commentAuthor}:{},...t.commentReplyCount!==void 0?{replies:t.commentReplyCount}:{}}}:{}}),!e.inInsertion&&t.inInsertion&&r.push({key:"trackedInsertion"}),!e.inDeletion&&t.inDeletion&&r.push({key:"trackedDeletion"}),(!e.inList&&t.inList||t.inList&&e.listLevel!==t.listLevel)&&r.push({key:"listItem",vars:{level:t.listLevel+1}}),r}function ae(e){let t=Number(e);if(Number.isFinite(t))return t;let r=0xcbf29ce484222325n;for(let n of new TextEncoder().encode(e))r=(r^BigInt(n))*0x100000001b3n,r&=0xffffffffffffffffn;return Number(r&(1n<<53n)-1n)}function De(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function On(e){let t=typeof e.story=="string"?[e.story]:[],r=Array.isArray(e.rows)?e.rows:[];for(let n of r){let i=De(n),s=i&&Array.isArray(i.cells)?i.cells:[];for(let o of s){let a=De(o)?.story;typeof a=="string"&&t.push(a);}}return t}function _n(e){let t=e.storyIds(),r=new Map,n=new Set;for(let o of t){let a=[];try{for(let l of e.storySegments(o))if(l.kind==="embed")for(let c of On(l.payload))a.push(c),n.add(c);}catch{}r.set(o,a);}let i=new Map,s=(o,a,l)=>{if(!(l.has(o)||i.has(o))){l.add(o),i.set(o,a);for(let c of r.get(o)??[])s(c,a,l);l.delete(o);}};t.includes("body")&&s("body",{story:"body"},new Set);for(let o of t)!o.startsWith("hf:")||n.has(o)||s(o,{story:o,hfRid:o.slice(3)},new Set);return i}function Xn(e,t,r,n,i){let s=Array.isArray(t.rows)?t.rows:[],o=r+1;for(let a of s){let l=De(a),c=l&&Array.isArray(l.cells)?l.cells:[],p=o+1;for(let g of c){let y=De(g),u=typeof y?.story=="string"?y.story:null,h=u?Xe(e,u,p+1,n,i):0;p+=h+2;}o=p+1;}return o+1-r}function Xe(e,t,r,n,i){if(i.has(t))throw new Error(`recursive yrs story: ${t}`);i.add(t);try{let s=r,o=r,a=0,l=!0;for(let c of e.storySegments(t)){if(c.kind==="text"){a+=c.text.length,l=!1;continue}if(c.kind==="pilcrow"){let p=o+a+2;n.set(c.paraId,{pmStart:o,pmEnd:p}),s=p,o=s,a=0,l=!0;continue}if(c.embedKind==="table"&&l){s+=Xn(e,c.payload,s,n,i),o=s;continue}if(c.embedKind==="blockSdt"&&l){let p=typeof c.payload.story=="string"?c.payload.story:null,g=p?Xe(e,p,s+1,n,i):0;s+=g+2,o=s;continue}if(l&&(c.embedKind==="pageBreak"||c.embedKind==="columnBreak")){s+=1,o=s;continue}a+=1,l=!1;}return s-r}finally{i.delete(t);}}function $n(e){let t=new Map,r=_n(e),n=o=>{let a=r.get(o)?.story;if(!a)return null;if(t.has(a))return t.get(a)??null;try{let l=new Map;return Xe(e,a,0,l,new Set),t.set(a,l),l}catch{return t.set(a,null),null}},i=o=>{let a=r.get(o.story);if(!a)return null;let l=n(o.story)?.get(o.paraId);if(!l)return null;let c=Math.max(0,l.pmEnd-l.pmStart-2),p=Math.min(Math.max(0,Math.trunc(o.offset)),c);return {story:o.story,position:l.pmStart+1+p,...a.hfRid?{hfRid:a.hfRid}:{}}};return {locToDisplayPoint:i,storyOffsetToDisplayPoint:(o,a)=>{if(!r.has(o))return null;let l=Math.max(0,Math.trunc(a));try{for(let c of e.paragraphs(o)){let p=e.locateParagraph(o,c.paraId);if(!(l<p.start||l>p.end))return i({story:o,paraId:c.paraId,offset:Math.min(l-p.start,p.end-p.start)})}}catch{return null}return null}}}function $e(e,t){let{doc:r,schema:n}=e.state,i=n.marks.comment,s=n.marks.insertion,o=n.marks.deletion;!i&&!s&&!o||r.descendants((a,l)=>{let c=a.attrs;if(c){let p=[c.trIns,c.trDel,c.pPrIns,c.pPrDel];for(let h of p){let D=h?.revisionId;typeof D=="number"&&t(`revision-${D}`,l);}let y=c.cellMarker?.info?.revisionId;typeof y=="number"&&t(`revision-${y}`,l);let u=[c.pPrChange,c.trPrChange,c.tcPrChange,c.tblPrChange];for(let h of u)if(Array.isArray(h))for(let D of h){let k=D?.info?.id;typeof k=="number"&&t(`revision-${k}`,l);}}if(a.isInline)for(let p of a.marks){let g=null;i&&p.type===i?g=`comment-${p.attrs.commentId}`:(s&&p.type===s||o&&p.type===o)&&(g=`revision-${p.attrs.revisionId}`),g&&t(g,l);}});}function Jn(e,t,r){let n=new Map;if(!e?.state)return n;let i=se(t),s=new Set;return $e(e,(o,a)=>{if(s.has(o))return;s.add(o);let l=t.anchorRect(a);if(!l)return;let c=r?r(l):(i[l.pageIndex]??0)+l.y;c!=null&&n.set(o,c);}),n}function Qn(e,t,r){if(!e.hfRid)return t.anchorRect(e.position);let n=r?.get(e.hfRid);return n?t.hfAnchorRects(n,e.hfRid,e.position)[0]??null:null}function Wn(e,t,r,n,i,s,o){let a=new Map,l=se(i),c=(p,g)=>{if(!g||a.has(p))return a.has(p);let y=Qn(g,i,s);if(!y)return false;let u=o?o(y):(l[y.pageIndex]??0)+y.y;return u==null?false:(a.set(p,u),true)};for(let p of t){let g=`comment-${p}`;try{for(let y of e.resolveComment(String(p)))if(c(g,n.storyOffsetToDisplayPoint(y.story,y.start)))break}catch{}}for(let p of r)c(`revision-${ae(p.revisionId)}`,n.locToDisplayPoint({story:p.story,...p.range.start}));return a}function Kn(e,t,r,n){let i=se(t);for(let{region:s,rId:o,view:a}of e)$e(a,(l,c)=>{if(r.has(l))return;let p=t.hfAnchorRects(s,o,c)[0];if(!p)return;let g=n?n(p):(i[p.pageIndex]??0)+p.y;g!=null&&r.set(l,g);});return r}function Vn(e,t){let r=e.map(o=>{let a=t.locToDisplayPoint({story:o.range.story,...o.range.start}),l=t.locToDisplayPoint({story:o.range.story,...o.range.end}),c=a?.position??0,p=Math.max(c,l?.position??c);return {type:o.kind==="pPrIns"?"paragraphMarkInsertion":o.kind==="pPrDel"?"paragraphMarkDeletion":o.kind==="pPrChange"?"paragraphPropertiesChanged":o.kind==="trIns"?"rowInserted":o.kind==="trDel"?"rowDeleted":o.kind==="tableIns"?"tableInserted":o.kind==="tableDel"?"tableDeleted":o.kind,text:o.preview,author:o.author,date:o.date||void 0,from:c,to:p,revisionId:ae(o.revisionId),...a?.hfRid?{hfRid:a.hfRid}:{}}}),n=new Map;for(let o of r){let a=n.get(o.revisionId)??[];a.push(o),n.set(o.revisionId,a);}let i=[...n.values()].map(o=>{let a=Math.min(...o.map(u=>u.from)),l=Math.max(...o.map(u=>u.to)),c=o.filter(u=>u.type==="insertion"),p=o.filter(u=>u.type==="deletion");if(c.length>0&&p.length>0)return {...c[0],type:"replacement",text:c.map(h=>h.text).join(""),deletedText:p.map(h=>h.text).join(""),from:a,to:l};let g=o.find(u=>u.type==="insertion"||u.type==="deletion")??o[0],y=o.filter(u=>u.type===g.type).map(u=>u.text).join("");return {...g,text:y,from:a,to:l}}),s=[];for(let o=0;o<i.length;o+=1){let a=i[o],l=i[o+1];a.type==="deletion"&&l?.type==="insertion"&&a.author===l.author&&a.date===l.date&&a.to===l.from&&a.hfRid===l.hfRid?(s.push({type:"replacement",text:l.text,deletedText:a.text,author:a.author,date:a.date,from:a.from,to:l.to,revisionId:a.revisionId,insertionRevisionId:l.revisionId,...a.hfRid?{hfRid:a.hfRid}:{}}),o+=1):s.push(a);}return {entries:s,commentToRevision:new Map}}function zn(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let n=r==="header"?e.header:e.footer;return !n||n.kind!==r||t.rId&&n.rId!==t.rId?null:{kind:r,rId:n.rId,primitives:n.primitives}}function jn(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":case "image":case "shape":case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h};case "line":return {x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)}}}function Un(e){let t=jn(e),r=e.clipGroup?.clip;if(!r)return t;let n=r.x??0,i=r.y??0,s=n+Math.max(0,r.w??0),o=i+Math.max(0,r.h??0),a=Math.max(t.x,n),l=Math.max(t.y,i),c=Math.min(t.x+t.w,s),p=Math.min(t.y+t.h,o);return c<a||p<l?null:{x:a,y:l,w:c-a,h:p-l}}function qn(e){return e.kind==="text"||e.kind==="glyphRun"?e.text:e.kind==="image"?e.altText??"":""}function Zn(e,t,r){return t>=e.x&&t<=e.x+e.w&&r>=e.y&&r<=e.y+e.h}function ei(e,t,r,n,i={kind:"body"}){let s=e.pages[t];if(!s)return null;let o=zn(s,i);if(!o)return null;for(let a=o.primitives.length-1;a>=0;a--){let l=o.primitives[a];if(l.kind==="line"||!l.href||l.hiddenObject)continue;let c=Un(l);if(c&&Zn(c,r,n))return {pageIndex:t,region:o.kind,rId:o.rId,href:l.href,tooltip:l.linkTitle??l.tooltip,displayText:qn(l)||l.href,rect:c}}return null}var $=7.5,q=16,Lt=320,ti=30,ni=200,ii=24,ri=10,oi=10,si=24;function Rt(e){let t;switch(e.kind){case "text":t=c(e);break;case "glyphRun":t=d(e);break;case "rect":case "image":case "shape":case "decoration":t={x:e.x,y:e.y,w:e.w,h:e.h};break;case "line":t={x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)};break}let r=Qe(e);return r?ai(t,r)??{x:r.x,y:r.y,w:0,h:0}:t}function Qe(e){let t=e.clipGroup?.clip;return t?{x:t.x??0,y:t.y??0,w:Math.max(0,t.w??0),h:Math.max(0,t.h??0)}:null}function ai(e,t){let r=Math.max(e.x,t.x),n=Math.max(e.y,t.y),i=Math.min(e.x+e.w,t.x+t.w),s=Math.min(e.y+e.h,t.y+t.h);return i<r||s<n?null:{x:r,y:n,w:i-r,h:s-n}}function Dt(e,t,r){if(e.docStart!=null){let n=t(e.docStart);if(n!=null){let i={tableKey:n,docStartSample:e.docStart};return e.table?.tableId&&!r.has(e.table.tableId)&&r.set(e.table.tableId,i),i}}return e.table?.tableId?r.get(e.table.tableId)??null:null}function vt(e,t,r){let n=e.table?.tableId;if(!n)return null;let i=t.get(n);return i?r.get(i.tableKey)??null:null}function li(e,t,r,n){let i=new Map;for(let o of t){if(o.kind==="line")continue;let a=o.cell;if(!a)continue;let l=Dt(o,r,n);if(!l)continue;let{tableKey:c,docStartSample:p}=l,g=Rt(o),y=Qe(o),u=y??g,h=i.get(c);if(h||(h={tableKey:c,docStartSample:p,contentMinX:u.x,contentMinY:u.y,contentMaxX:u.x+u.w,contentMaxY:u.y+u.h,exactLeftX:[],exactBottomY:[],exactClipLeftX:[],exactClipBottomY:[],rows:new Map},i.set(c,h)),p<h.docStartSample&&(h.docStartSample=p),h.contentMinX=Math.min(h.contentMinX,u.x),h.contentMinY=Math.min(h.contentMinY,u.y),h.contentMaxX=Math.max(h.contentMaxX,u.x+u.w),h.contentMaxY=Math.max(h.contentMaxY,u.y+u.h),y&&(h.exactClipLeftX.push(y.x),h.exactClipBottomY.push(y.y+y.h)),!a.continuation){let D=h.rows.get(a.row);D?(D.top=Math.min(D.top,u.y),D.bottom=Math.max(D.bottom,u.y+u.h)):h.rows.set(a.row,{top:u.y,bottom:u.y+u.h});}}if(i.size===0)return [];for(let o of t){if(o.kind!=="line"||o.role!=="table-border"&&o.role!=="table-cut")continue;let a=vt(o,n,i);if(!a){let p=(o.x1+o.x2)/2,g=(o.y1+o.y2)/2,y=1/0;for(let u of i.values()){let h=p>=u.contentMinX-q&&p<=u.contentMaxX+q,D=g>=u.contentMinY-q&&g<=u.contentMaxY+q;if(!h||!D)continue;let k=Math.max(0,u.contentMinX-p,p-u.contentMaxX),v=Math.max(0,u.contentMinY-g,g-u.contentMaxY),L=k+v;L<y&&(y=L,a=u);}}if(!a)continue;let l=Math.abs(o.x1-o.x2)<.5,c=Math.abs(o.y1-o.y2)<.5;l&&a.exactLeftX.push(Math.min(o.x1,o.x2)),c&&a.exactBottomY.push(Math.max(o.y1,o.y2));}let s=[];for(let o of i.values()){if(o.rows.size===0)continue;let a=o.exactLeftX.length>0||o.exactClipLeftX.length>0,l=a?Math.min(...o.exactLeftX,...o.exactClipLeftX):o.contentMinX-$,c=o.exactBottomY.length>0||o.exactClipBottomY.length>0?Math.max(...o.exactBottomY,...o.exactClipBottomY):o.contentMaxY,p=[...o.rows.entries()].map(([g,y])=>({rowIndex:g,top:y.top,bottom:y.bottom})).sort((g,y)=>g.rowIndex-y.rowIndex);s.push({pageIndex:e,tableKey:o.tableKey,docStartSample:o.docStartSample,originX:l,originY:o.contentMinY,bottomY:c,originExact:a,rowBands:p});}return s}function ci(e,t){let r=[],n=Ke(e,t,{kind:"body"});for(let i of e.pages)r.push(...li(i.pageIndex,i.primitives,t,n));return r}function We(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let n=r==="header"?e.header:e.footer;return !n||n.kind!==r||t.rId&&n.rId!==t.rId?null:{kind:r,rId:n.rId,primitives:n.primitives}}function Ke(e,t,r){let n=new Map;for(let i of e.pages){let s=We(i,r);if(s)for(let o of s.primitives){if(!o.cell||!o.table?.tableId||o.docStart==null)continue;let a=t(o.docStart);if(a==null)continue;let l=n.get(o.table.tableId);(!l||o.docStart<l.docStartSample)&&n.set(o.table.tableId,{tableKey:a,docStartSample:o.docStart});}}return n}function Ve(e,t){return `${e}:${t}`}function di(e,t,r,n){let i=Ve(t.row,t.col),s=e.cells.get(i);s?(s.minX=Math.min(s.minX,r.x),s.minY=Math.min(s.minY,r.y),s.maxX=Math.max(s.maxX,r.x+r.w),s.maxY=Math.max(s.maxY,r.y+r.h),s.rowSpan=Math.max(s.rowSpan,t.rowSpan),s.colSpan=Math.max(s.colSpan,t.colSpan),n&&(s.exactClip=n)):e.cells.set(i,{row:t.row,col:t.col,rowSpan:t.rowSpan,colSpan:t.colSpan,minX:r.x,minY:r.y,maxX:r.x+r.w,maxY:r.y+r.h,exactClip:n??void 0});}function It(e,t,r){let n=new Map;for(let i of e){if(i.kind==="line")continue;let s=i.cell;if(!s)continue;let o=Dt(i,t,r);if(!o)continue;let a=o.tableKey,l=Rt(i),c=n.get(a);c||(c={tableKey:a,contentMinX:l.x,contentMinY:l.y,contentMaxX:l.x+l.w,contentMaxY:l.y+l.h,cells:new Map,verticalLines:[],horizontalLines:[]},n.set(a,c)),c.contentMinX=Math.min(c.contentMinX,l.x),c.contentMinY=Math.min(c.contentMinY,l.y),c.contentMaxX=Math.max(c.contentMaxX,l.x+l.w),c.contentMaxY=Math.max(c.contentMaxY,l.y+l.h),di(c,s,l,Qe(i));}if(n.size===0)return [];for(let i of e){if(i.kind!=="line"||i.role!=="table-border"&&i.role!=="table-cut")continue;let s=Math.abs(i.x1-i.x2)<.5,o=Math.abs(i.y1-i.y2)<.5;if(!s&&!o)continue;let a=Math.min(i.x1,i.x2),l=Math.max(i.x1,i.x2),c=Math.min(i.y1,i.y2),p=Math.max(i.y1,i.y2),g=vt(i,r,n);if(g){s?g.verticalLines.push(a):g.horizontalLines.push(c);continue}for(let y of n.values())if(s){if(!(p>=y.contentMinY-q&&c<=y.contentMaxY+q))continue;let h=a;Math.max(0,y.contentMinX-h,h-y.contentMaxX)<=Lt&&y.verticalLines.push(h);}else if(o){if(!(l>=y.contentMinX-q&&a<=y.contentMaxX+q))continue;let h=c;Math.max(0,y.contentMinY-h,h-y.contentMaxY)<=Lt&&y.horizontalLines.push(h);}}return [...n.values()]}function le(e){let t=[];for(let r of [...e].sort((n,i)=>n-i))(t.length===0||Math.abs(t[t.length-1]-r)>.5)&&t.push(r);return t}function St(e){let t=le([...e.cells.values()].map(i=>i.row)),r=le(e.horizontalLines),n=new Map;if(t.length>0&&r.length>=t.length+1)for(let i=0;i<t.length;i++)n.set(t[i],r[i]),n.set(t[i]+1,r[i+1]);return n}function Je(e){if(!e)return null;if(e.exactClip)return e.exactClip;let t=e.minX-$,r=e.minY-$;return {x:t,y:r,w:Math.max(1,e.maxX-e.minX+$*2),h:Math.max(1,e.maxY-e.minY+$*2)}}function ui(e,t){let r=1/0,n=-1/0;for(let i of e.cells.values())i.row===t&&(r=Math.min(r,i.exactClip?.y??i.minY-$),n=Math.max(n,i.exactClip?i.exactClip.y+i.exactClip.h:i.maxY+$));return !Number.isFinite(r)||!Number.isFinite(n)||n<=r?null:{top:r,bottom:n}}function mi(e,t,r){let n=Je(e.cells.get(Ve(t,r)));return n?{left:n.x,right:n.x+n.w,top:n.y,bottom:n.y+n.h}:null}function pi(e,t,r,n={kind:"body"}){if(t.length===0)return [];let i=new Map;for(let a of t){let l=i.get(a.tableKey);l?l.push(a):i.set(a.tableKey,[a]);}let s=[],o=Ke(e,r,n);for(let a of e.pages){let l=We(a,n);if(!l)continue;let c=It(l.primitives,r,o);for(let p of c){let g=i.get(p.tableKey);if(!g)continue;let y=le(p.verticalLines),u=St(p);for(let h of g){let D=p.cells.get(Ve(h.row,h.col)),k=y[h.col],v=y[h.col+h.colSpan],L=u.get(h.row),E=u.get(h.row+h.rowSpan),B=true;if(k==null||v==null||v<=k){let w=D?.exactClip??Je(D);if(!w)continue;k=w.x,v=w.x+w.w,B=D?.exactClip!=null;}if(L==null||E==null||E<=L){let w=D?.exactClip??Je(D);if(!w)continue;L=w.y,E=w.y+w.h,B&&(B=D?.exactClip!=null);}s.push({pageIndex:a.pageIndex,tableKey:p.tableKey,row:h.row,col:h.col,rowSpan:h.rowSpan,colSpan:h.colSpan,x:k,y:L,w:Math.max(1,v-k),h:Math.max(1,E-L),exact:B,region:l.kind,rId:l.rId});}}}return s}function fi(e){let{list:t,pageIndex:r,x:n,y:i,canvasRect:s,pageSize:o,tableKeyOf:a,cellPmPosOf:l,region:c={kind:"body"},edgeProximity:p=ti}=e,g=t.pages[r];if(!g)return null;let y=We(g,c);if(!y)return null;let u=o.width>0?s.width/o.width:1,h=o.height>0?s.height/o.height:1,D=(L,E)=>({clientX:s.left+L*u,clientY:s.top+E*h}),k=Ke(t,a,c),v=It(y.primitives,a,k);for(let L of v){let E=le(L.verticalLines),B=St(L),w=le([...L.cells.values()].map(H=>H.row));if(w.length===0)continue;let N=E[0]??L.contentMinX-$,ee=E[E.length-1]??L.contentMaxX+$,T=B.get(w[0])??L.contentMinY-$,Y=w[w.length-1],P=B.get(Y+1)??L.contentMaxY+$,Z=n<N+p&&n>=N-p,ce=i<T+p&&i>=T-p;if(!(!Z&&!ce)){if(Z&&i>=T-p&&i<=P)for(let H of w){let te=B.get(H),C=B.get(H+1),O=te==null||C==null?ui(L,H):null,_=te??O?.top,J=C??O?.bottom;if(_==null||J==null||J<=_||i<_||i>J)continue;let X=[...L.cells.values()].filter(z=>z.row===H).sort((z,ve)=>z.col-ve.col)[0];if(!X)continue;let V=l(L.tableKey,H,X.col);if(!V)continue;let U=D(N,_+(J-_)/2);return {type:"row",clientX:U.clientX-ii,clientY:U.clientY-ri,cellPmPos:V}}if(ce&&n>=N-p&&n<=ee){let H=w[0],te=[...L.cells.values()].filter(C=>C.row===H).sort((C,O)=>C.col-O.col);for(let C of te){let O=E[C.col],_=E[C.col+C.colSpan],J=O==null||_==null?mi(L,C.row,C.col):null,X=O??J?.left,V=_??J?.right;if(X==null||V==null||V<=X||n<X||n>V)continue;let U=l(L.tableKey,C.row,C.col);if(!U)continue;let z=D(X+(V-X)/2,T);return {type:"column",clientX:z.clientX-oi,clientY:z.clientY-si,cellPmPos:U}}}}}return null}var lr=tt;export{Fn as CANVAS_PAGES_PADDING_PX,Hn as CANVAS_PAGE_GAP_PX,ni as DISPLAY_LIST_TABLE_INSERT_HIDE_DELAY_MS,R as MIRROR_CLASS_NAMES,K as RustDisplayListSourceError,pn as applyInteractiveSdtFocus,yn as buildInteractiveOverlayPage,en as buildMirrorPage,Mn as buildRustDisplayFrame,bt as buildRustDisplayList,se as canvasPageTops,Pn as captureInlinePositionEmuFromDisplayList,Yn as computeA11yAnnouncements,Jn as computeAnchorPositionsFromDisplayList,Wn as computeAnchorPositionsFromYrs,Gn as createCanvasImageResolver,Cn as createDisplayListQueries,$n as createYrsSidebarProjection,lr as demoDisplayList,pi as deriveDisplayListSelectedCellRects,ci as deriveDisplayListTableFragments,fi as detectDisplayListTableInsertHover,ht as encodeDisplayListFrameExtras,Vn as extractTrackedChangesFromYrs,ei as findDisplayListHyperlinkAtPoint,Ye as findImagePrimitiveAtPoint,Ne as findImagePrimitiveByDocPos,En as isDisplayListQuerySourceDead,Zt as loadGlyphOutlineProvider,Ge as loadRustDisplayListQueryEngine,Kn as mergeHfAnchorPositionsFromDisplayList,An as onDisplayListQuerySourceFailure,Nn as snapshotFromSelectionContext,$e as visitAnchorKeys,ae as yrsIdToNumericId};
1
+ import {f,g,e,d,c,B,x,z}from'../../chunk-24Z6ZVFZ.mjs';export{r as FRAME_DELTA_HEADER_BYTES,s as FRAME_DELTA_PAGE_OP_BYTES,q as FRAME_DELTA_VERSION,t as FrameDeltaError,a as GlyphCache,A as RustDisplayListSourceError,v as applyFrameDelta,w as applyFrameDeltaOwned,E as buildRustDisplayFrame,D as buildRustDisplayList,u as decodeFrameDelta,y as displayPageNoteAnchorRevision,x as displayPageRevision,o as drawDisplayPage,p as drawPrimitive,C as encodeDisplayListFrameExtras,b as fontSizePxFromShorthand,d as glyphRunRect,e as lineRect,B as loadRustDisplayListQueryEngine,i as presentDisplayPageBackBuffer,j as presentOffscreenPageBackBuffer,n as rasterizeDisplayListPages,h as rasterizeDisplayPageToBackBuffer,m as sizeCanvasForPage,c as textRunRect}from'../../chunk-24Z6ZVFZ.mjs';export{b as DisplayPageRegistry,c as bindDisplayPageRegistry,e as displayPageCanvas,f as displayPageCanvases,a as effectiveZoom,d as materializeDisplayPages,h as resolveCanvasPoint,g as resolveDisplayPageClientRect}from'../../chunk-AOWJ4WDE.mjs';import {c as c$1}from'../../chunk-CTBUQRYQ.mjs';import'../../chunk-TTRUPDAB.mjs';var gt={pages:[{pageIndex:0,width:816,height:1056,primitives:[{kind:"rect",x:96,y:96,w:624,h:20,fill:"#fff9c4",blockId:0,docStart:1,docEnd:12},{kind:"text",text:"Hello Word",x:96,baselineY:110,width:84.5,font:"700 16px Calibri, sans-serif",color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"decoration",deco:"underline",x:96,y:113,w:84.5,h:1,color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"text",text:" \u2014 second run",x:180.5,baselineY:110,width:96.25,font:"400 16px Calibri, sans-serif",color:"#c0392b",docStart:11,docEnd:24,blockId:0},{kind:"line",x1:96,y1:140,x2:720,y2:140,strokeWidth:.75,color:"#666666",role:"table-border"},{kind:"image",relId:"rId7",x:96,y:160,w:200,h:120,docStart:30,docEnd:31,blockId:2}]}]};function $n(){return import('../../wasm-K6DRABAA.mjs').then(async e=>(await e.preloadLayoutWasm(),e.outlineGlyphJson))}function Qn(e,t){for(let i of Array.from(e.querySelectorAll(".layout-canvas-sdt-box[data-sdt-group-id]")))i.classList.toggle("layout-sdt-focused",t.has(i.dataset.sdtGroupId??""));}var Wn=".layout-sdt-widget, .layout-inline-sdt-widget, .layout-sdt-repeat-btn",Ge=2,Ne=18,de=16,Vn=2;function Kn(e,t={}){let i=t.document??document,r=i.createElement("div");r.className="layout-interactive-overlay",r.dataset.pageIndex=String(e.pageIndex),r.style.position="absolute",r.style.inset="0",r.style.width=`${e.width}px`,r.style.height=`${e.height}px`,r.style.pointerEvents="none",r.addEventListener("mousedown",n=>{n.target?.closest?.(Wn)&&(n.preventDefault(),n.stopPropagation());});for(let[n,c]of De(e).entries()){for(let o of c.boundaries){let s=ti(o,i,t.labels,c.lowerLayer);s.style.zIndex=String(n),r.appendChild(s);}for(let o of c.widgets){let s=ni(o,i,t.labels);s.style.zIndex=String(n),o.occluded&&ue(s),r.appendChild(s);}}return r}function De(e){let t=Un(e),i=t[3];return t.map((r,n)=>{let c=n<3,o=l=>({rect:l,occluded:c&&ht(i,l)}),s=[...qn(r).values()].sort(ei).map(l=>{let{kind:f,repeat:y}=oi(l.attrs),{rect:p}=l,g=p.x+Math.max(1,p.w)-Ge,h=p.y+Math.max(1,p.h)-Ge;return {...l,kind:f,widget:f?o({x:g-Ne,y:p.y+Ge,w:Ne,h:Ne}):void 0,repeats:y?[0,1].map(R=>o({x:g-de-(1-R)*(de+Vn),y:h-de,w:de,h:de})):[]}}),a=[...Zn(r).values()].map(l=>({...l,occluded:c&&ht(i,l.rect)}));return {lowerLayer:c,boundaries:s,widgets:a}})}function ht(e,t){let i=t.x+Math.max(1,t.w)/2,r=t.y+Math.max(1,t.h)/2;return e.some(n=>{if("opacity"in n&&n.opacity!==void 0&&n.opacity<=0||n.clipGroup?.clip&&(n.clipGroup.opacity??1)<=0)return false;switch(n.kind){case "text":case "glyphRun":if(!n.text.trim()||Jn(n)||(n.rotationDeg??0)%360!==0||n.horizontalScale!==void 0&&!(n.horizontalScale>=100)||n.kind==="glyphRun"&&!n.glyphs.length)return false;break;case "rect":if(!n.fill||n.fill==="transparent"||n.fill==="none")return false;break;case "shape":{let o=n.fillPaint,s=o?.color??n.fill;if(o?.kind==="none")return false;if(o?.kind==="gradient"||o?.kind==="pattern")break;if(o?.kind==="picture"&&(o.pictureSrc||o.pictureRelId)){if((o.pictureOpacity??1)<=0)return false;let a=o.pictureStretchRect;if([a?.left,a?.top,a?.right,a?.bottom].some(f=>(f??0)>0)||!xt(o.pictureSrcRect))return false;break}if(!s||s==="transparent"||s==="none")return false;break}case "image":break;case "decoration":{let{color:o,style:s,dashed:a,dotted:l}=n;if((s??"solid")!=="solid"||a||l||!o||o==="transparent"||o==="none")return false;break}default:return false}let c=n.kind==="shape"?zn(n):n.kind==="image"?jn(n):f(n);return c!==null&&Number.isFinite(c.w)&&Number.isFinite(c.h)&&c.w>0&&c.h>0&&i>=c.x&&i<=c.x+c.w&&r>=c.y&&r<=c.y+c.h&&g(n,i,r)})}function jn(e){let t=(i,r)=>i!==void 0&&Number.isFinite(i)?i:r;return e.shapeType!==void 0&&e.shapeType!=="rect"||t(e.rotationDeg,0)%180!==0||!xt(e.crop)?null:{x:t(e.contentFrame?.x,e.x),y:t(e.contentFrame?.y,e.y),w:t(e.contentFrame?.w,e.w),h:t(e.contentFrame?.h,e.h)}}function xt(e){if(!e)return true;let t=o=>Number.isFinite(o)?o:0,[i,r,n,c]=[e.left,e.top,e.right,e.bottom].map(t);return i>=0&&r>=0&&n>=0&&c>=0&&i+n<1&&r+c<1}function zn(e){let t=e.transform?.rotation??0;if(!Number.isFinite(t)||t%180!==0)return null;let i=e.geometryPath,r=i.at(-1)?.type==="close"?i.length-1:i.length,n=[];for(let R=0;R<r;R++){let L=i[R];if(L.type!=="move"&&L.type!=="line"||L.type==="move"!=(R===0))return null;n.push([L.x,L.y]);}let c=n[0],o=n.at(-1);if(n.length===5&&c&&o&&c[0]===o[0]&&c[1]===o[1]&&n.pop(),n.length!==4)return null;let s=[...new Set(n.map(([R])=>R))],a=[...new Set(n.map(([,R])=>R))];if(s.length!==2||a.length!==2||new Set(n.map(([R,L])=>`${R},${L}`)).size!==4||!n.every(([R,L],k)=>{let[v,w]=n[(k+1)%4];return R===v!=(L===w)}))return null;let f=Math.min(...s),y=Math.min(...a),p=Math.abs(s[0]-s[1]),g=Math.abs(a[0]-a[1]),h=Math.abs(t%360)===180;return !!e.transform?.flipH!==h&&(f=2*e.x+e.w-f-p),!!e.transform?.flipV!==h&&(y=2*e.y+e.h-y-g),{x:f,y,w:p,h:g}}function Jn(e){return e.modernEffects?.textFill?.kind==="none"}function ue(e){e.style.visibility="hidden",e.style.pointerEvents="none",e.tabIndex=-1,e.setAttribute("inert",""),e.setAttribute("aria-hidden","true"),e.setAttribute("aria-disabled","true"),e.tagName==="BUTTON"&&(e.disabled=true);}function Un(e){let t=Math.min(e.watermarkPrimitiveCount??0,e.primitives.length);return [e.primitives.slice(0,t),e.header?.primitives??[],e.footer?.primitives??[],e.primitives.slice(t),...(e.noteAreas??[]).map(i=>[...i.separatorPrimitives??[],...i.primitives??[]])]}function qn(e){let t=new Map;for(let i of e){let r=Rt(i);if(!r)continue;let n=i.sdtPath?.length?i.sdtPath:i.sdt?[i.sdt]:[];for(let c of n){let o=t.get(c.groupId);o?o.rect=Lt(o.rect,r):t.set(c.groupId,{attrs:c,rect:{...r}});}}return t}function Zn(e){let t=new Map;for(let i of e){let r=i.inlineSdtWidget,n=Rt(i);if(!r||!n)continue;let c=`${r.groupId}:${r.pos}:${r.controlKind??r.kind}`,o=t.get(c);o?(o.rect=Lt(o.rect,n),o.primitives.push(i)):t.set(c,{attrs:r,rect:{...n},primitives:[i]});}return t}function ei(e,t){return (e.attrs.depth??0)-(t.attrs.depth??0)||e.rect.y-t.rect.y||e.rect.x-t.rect.x}function ti(e,t,i,r){let{attrs:n,rect:c,kind:o}=e,s=t.createElement("div");s.className="layout-block-sdt-box layout-canvas-sdt-box",li(s,n),vt(s,c),s.style.pointerEvents="none";let a=n.alias||n.tag;if(a){let l=t.createElement("span");l.className="layout-block-sdt-label",l.textContent=a,s.appendChild(l);}if(o){let l=t.createElement("button");l.type="button",l.className="layout-sdt-widget",l.dataset.sdtWidget=o,l.dataset.sdtGroupId=n.groupId,n.tag&&(l.dataset.sdtTag=n.tag),n.alias&&(l.dataset.sdtAlias=n.alias),(a||i?.control)&&l.setAttribute("aria-label",a||i?.control||""),o==="dropdown"&&l.setAttribute("aria-haspopup","listbox"),o==="date"&&l.setAttribute("aria-haspopup","dialog"),o==="checkbox"&&(l.setAttribute("role","checkbox"),l.setAttribute("aria-checked",String(n.checked??false))),l.textContent=o==="dropdown"?"\u25BE":o==="date"?"\u25A3":n.checked?"\u2612":"\u2610",l.style.pointerEvents="auto",e.widget?.occluded&&ue(l),s.appendChild(l);}if(e.repeats.length){let l=t.createElement("div");l.className="layout-sdt-repeat-controls",l.style.pointerEvents=r?"none":"auto";let f=[bt(t,n,"add","\uFF0B",i?.addRepeatingItem,a),bt(t,n,"remove","\u2715",i?.removeRepeatingItem,a)];for(let[y,p]of f.entries()){let g=e.repeats[y];r&&(p.style.pointerEvents="auto"),g.occluded&&ue(p),l.appendChild(p);}s.appendChild(l);}return s}function bt(e,t,i,r,n,c){let o=e.createElement("button");return o.type="button",o.className="layout-sdt-repeat-btn",o.dataset.sdtRepeat=i,o.dataset.sdtGroupId=t.groupId,t.tag&&(o.dataset.sdtTag=t.tag),(n||c)&&o.setAttribute("aria-label",n||c||""),o.textContent=r,o}function ni(e,t,i){let{attrs:r,rect:n}=e,c=r.controlKind??r.kind,o=t.createElement("button");return o.type="button",o.className="layout-sdt-widget layout-inline-sdt-widget layout-canvas-inline-sdt-widget",o.dataset.sdtWidget=ii(c),o.dataset.sdtGroupId=r.groupId,o.dataset.sdtPos=String(r.pos),r.tag&&(o.dataset.sdtTag=r.tag),r.alias&&(o.dataset.sdtAlias=r.alias),r.controlId!==void 0&&(o.dataset.sdtControlId=String(r.controlId)),r.value!==void 0&&(o.dataset.sdtValue=r.value),r.selectedIndex!==void 0&&(o.dataset.sdtSelectedIndex=String(r.selectedIndex)),r.dateFormat&&(o.dataset.sdtDateFormat=r.dateFormat),r.dateLanguage&&(o.dataset.sdtDateLanguage=r.dateLanguage),r.listItems?.length&&(o.dataset.sdtListItems=JSON.stringify(r.listItems)),(r.alias||r.tag||i?.control)&&o.setAttribute("aria-label",r.alias||r.tag||i?.control||""),c==="checkbox"?(o.setAttribute("role","checkbox"),o.setAttribute("aria-checked",String(r.checked??false))):c==="dropDownList"||c==="comboBox"?(o.setAttribute("aria-haspopup","listbox"),o.setAttribute("aria-expanded","false")):c==="date"&&o.setAttribute("aria-haspopup","dialog"),o.disabled=r.locked===true,o.textContent=c==="checkbox"?r.checked?"\u2612":"\u2610":c==="date"?"\u25A3":c==="picture"?"\u25A7":"\u25BE",vt(o,n),o.style.pointerEvents="auto",o}function ii(e){return e==="dropDownList"||e==="comboBox"?"dropdown":e}function ri(e){return e==="checkbox"?"checkbox":e==="dropDownList"||e==="comboBox"?"dropdown":e==="date"?"date":null}function oi(e){let t=!e.bound&&!ai(e.lock);return {kind:t?ri(e.sdtType):null,repeat:!!e.repeatingItem&&t}}function si(e){for(let t of De(e)){for(let i of t.boundaries)if(i.widget&&!i.widget.occluded||i.repeats.some(r=>!r.occluded))return true;for(let i of t.widgets)if(!i.occluded&&i.attrs.locked!==true)return true}return false}function ai(e){return e==="contentLocked"||e==="sdtContentLocked"||e==="sdtLocked"}function li(e,t){e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag&&(e.dataset.sdtTag=t.tag),t.alias&&(e.dataset.sdtAlias=t.alias),t.lock&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem));}function Rt(e$1){let t=e$1.clipGroup?.clip;if(t?.x!==void 0&&t.y!==void 0&&t.w!==void 0&&t.h!==void 0)return {x:t.x,y:t.y,w:t.w,h:t.h};switch(e$1.kind){case "text":return c(e$1);case "glyphRun":return d(e$1);case "rect":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "line":return e(e$1);case "image":case "shape":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "decoration":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h}}}function Lt(e,t){let i=Math.min(e.x,t.x),r=Math.min(e.y,t.y),n=Math.max(e.x+e.w,t.x+t.w),c=Math.max(e.y+e.h,t.y+t.h);return {x:i,y:r,w:n-i,h:c-r}}function vt(e,t){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y}px`,e.style.width=`${Math.max(1,t.w)}px`,e.style.height=`${Math.max(1,t.h)}px`;}var D={page:"layout-page layout-page-mirror",content:"layout-page-content",header:"layout-page-header",footer:"layout-page-footer",block:"layout-paragraph",table:"layout-table",tableRow:"layout-table-row",tableCell:"layout-table-cell",text:"layout-run layout-run-text",rect:"layout-mirror-rect",image:"layout-run layout-run-image",shape:"layout-run layout-run-shape",chart:"layout-run layout-run-chart",decoration:"layout-decoration",line:"layout-mirror-line",pageBorder:"layout-page-border",tableCut:"layout-table-cut-border",blockSdt:"layout-block-sdt",inlineSdtWidget:"layout-inline-sdt-widget",revisionPmark:"layout-revision-pmark",revisionPmarkGlyph:"layout-revision-pmark-glyph",revisionPmarkIns:"layout-revision-ins",revisionPmarkDel:"layout-revision-del",listMarker:"layout-list-marker",revisionTable:"oox-revision-table",revisionRow:"oox-revision-row",revisionCell:"oox-revision-cell",revisionIns:"oox-revision-ins",revisionDel:"oox-revision-del",revisionMerge:"oox-revision-merge",notes:"layout-page-notes",note:"layout-note",noteBacklink:"layout-note-backlink"};function Xe(e){return [...e.primitives,...e.header?.primitives??[],...e.footer?.primitives??[],...(e.noteAreas??[]).flatMap(t=>[...t.separatorPrimitives??[],...t.primitives??[]])]}function ci(e){return e.kind==="image"?!!e.href:(e.kind==="text"||e.kind==="glyphRun")&&(!!e.href||e.noteRef?.id!==void 0)}function Mt(e,t){let i=`${e.kind??"footnote"}-${t}`;return (e.notes??[]).some(r=>r.id===t)&&(e.primitives??[]).some(r=>r.groupId===i)}function di(e){return Xe(e).some(t=>t.cell?.isHeader===true)}function ui(e){return Xe(e).some(ci)||(e.noteAreas??[]).some(t=>(t.noteIds??[]).some(i=>Mt(t,i)))}var Et=["aria-labelledby","aria-describedby"],fi=Et.map(e=>`[${e}]`).join(", "),Fe=`.${D.tableCell}`,pi=`${Fe}[role="columnheader"]`;function At(e){let t=new Map;for(let s of e.querySelectorAll("[id]"))t.set(s.id,s);let i=s=>{let a=s;for(let l=s.closest(Fe);l&&e.contains(l);l=l.parentElement?.closest(Fe)??null)a=l;return a},r=new Set,n=new Set([e]),c=Array.from(e.querySelectorAll(`a[href], .${D.note}, ${pi}`));for(;c.length>0;){let s=i(c.pop());if(r.has(s))continue;r.add(s);let a=[s,...s.querySelectorAll(fi)];for(let l=s.parentElement;l&&!n.has(l);l=l.parentElement)n.add(l),a.push(l);for(let l of a)for(let f of Et)for(let y of l.getAttribute(f)?.split(/\s+/)??[]){let p=t.get(y);p&&!r.has(p)&&c.push(p);}}let o=s=>{for(let a of Array.from(s.childNodes))r.has(a)||(n.has(a)?o(a):a.remove());};return o(e),e}function mi(e,t={}){return At(Tt(e,t))}function yi(e,t){let i=/^oox-(footnote|endnote)-(.+)$/.exec(t);if(i){let[,o,s]=i;return (e.noteAreas??[]).some(a=>(a.kind??"footnote")===o&&(a.noteIds??[]).some(l=>String(l)===s)&&(a.primitives??[]).some(l=>l.groupId===`${o}-${s}`))}let r=/^oox-noteref-(footnote|endnote)-(.+)$/.exec(t);if(!r)return false;let[,n,c]=r;return Xe(e).some(o=>(o.kind==="text"||o.kind==="glyphRun")&&!o.href&&o.noteRef?.id!==void 0&&String(o.noteRef.id)===c&&(o.noteRef.kind??"footnote")===n)}function Tt(e,t={}){let i=t.document??document,r=t.labels,n=new Set(De(e).flatMap(a=>a.widgets.filter(l=>l.occluded).flatMap(l=>l.primitives))),c={labels:r,noteRefIds:new Set,occludedWidgets:n},o=i.createElement("div");o.className=D.page,o.setAttribute("role","document"),r?.page&&o.setAttribute("aria-label",r.page),o.dataset.pageIndex=String(e.pageIndex),e.sectionId!==void 0&&(o.dataset.sectionId=e.sectionId),e.sectionIndex!==void 0&&(o.dataset.sectionIndex=String(e.sectionIndex)),e.sectionPageIndex!==void 0&&(o.dataset.sectionPageIndex=String(e.sectionPageIndex)),e.sectionPageNumber!==void 0&&(o.dataset.sectionPageNumber=String(e.sectionPageNumber)),e.pageLabel!==void 0&&(o.dataset.pageLabel=e.pageLabel),o.style.position="relative",o.style.width=`${e.width}px`,o.style.height=`${e.height}px`,o.style.opacity="0",o.style.pointerEvents="none";let s=i.createElement("div");s.className=D.content,s.style.position="absolute",s.style.left="0",s.style.top="0",s.style.width=`${e.width}px`,s.style.height=`${e.height}px`,o.appendChild(s);for(let a of (e.pageBorders??[]).filter(l=>l.zOrder==="back"))s.appendChild(It(a,i,0));fe(s,e.primitives,i,0,c);for(let a of e.noteAreas??[])s.appendChild(wi(a,e,i,c));for(let a of [e.header,e.footer])a&&o.appendChild(gi(a,e,i,c));for(let a of (e.pageBorders??[]).filter(l=>l.zOrder!=="back"))o.appendChild(It(a,i,0));return o}function gi(e,t,i,r){let n=i.createElement("div");n.className=e.kind==="header"?D.header:D.footer,n.dataset.hfRid=e.rId;let c=e.kind==="header"?r.labels?.header:r.labels?.footer;return c&&(n.setAttribute("role","region"),n.setAttribute("aria-label",c)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height}px`,fe(n,e.primitives,i,-e.y,r),n}function fe(e,t,i,r,n){let c=new Map;for(let o of t){let s=o.kind==="line"?void 0:o.blockKey??o.blockId;if(s===void 0){e.appendChild(Pe(o,i,r,n));continue}let a=o.table,l=a?.tableId!==void 0?`table:${a.tableId}#${a.rowStart??0}`:s,f=c.get(l);if(!f){let y=i.createElement("div");y.dataset.blockId=String(a?.tableId??s),y.style.position="absolute",y.style.left="0",y.style.top="0",e.appendChild(y),f={el:y,prims:[]},c.set(l,f);}f.prims.push(o);}for(let o of c.values())hi(o,i,r,n);Ri(c);}function hi(e,t,i,r){let{el:n,prims:c}=e;if(!c.some(p=>p.cell!==void 0||p.structuralRevision?.scope==="table"||p.structuralRevision?.scope==="row"||p.structuralRevision?.scope==="cell")){St(n,c,t,i,r);return}n.className=D.table,n.setAttribute("role","table");let s=c.find(p=>p.table!==void 0)?.table;e.table=s,e.cells=[],s?.tableId!==void 0&&(n.dataset.tableId=s.tableId),s?.rowStart!==void 0&&(n.dataset.rowStart=String(s.rowStart)),s?.rowEnd!==void 0&&(n.dataset.rowEnd=String(s.rowEnd)),s?.headerRowCount!==void 0&&(n.dataset.headerRowCount=String(s.headerRowCount)),s?.parentTableId!==void 0&&(n.dataset.parentTableId=s.parentTableId),s?.caption&&n.setAttribute("aria-label",s.caption),s?.description&&n.setAttribute("aria-description",s.description);let a=ke(c,"table");a&&we(n,a),We(n,c.find(p=>p.sdt!==void 0)?.sdt);for(let p of c)p.cell===void 0&&n.appendChild(Pe(p,t,i,r));let l=new Map,f=0,y=0;for(let p of c){if(p.cell===void 0)continue;let{row:g,col:h}=p.cell;f=Math.max(f,g+(p.cell.rowSpan??1)),y=Math.max(y,h+(p.cell.colSpan??1));let R=l.get(g);R||(R=new Map,l.set(g,R));let L=R.get(h);L||(L={ref:p.cell,prims:[]},R.set(h,L)),L.prims.push(p);}n.setAttribute("aria-rowcount",String(s?.rowCount??f)),n.setAttribute("aria-colcount",String(s?.columnCount??y));for(let p of [...l.keys()].sort((g,h)=>g-h)){let g=t.createElement("div");g.className=D.tableRow,g.setAttribute("role","row"),g.setAttribute("aria-rowindex",String(p+1));let h=ke(c,"row",p);h&&we(g,h),g.style.position="absolute",g.style.left="0",g.style.top="0",n.appendChild(g);let R=l.get(p);for(let L of [...R.keys()].sort((k,v)=>k-v)){let k=R.get(L),v=t.createElement("div");v.className=D.tableCell,v.setAttribute("role",k.ref.isHeader?"columnheader":"cell"),v.setAttribute("aria-colindex",String(L+1)),k.ref.cellId&&(v.id=k.ref.cellId),k.ref.headerIds?.length&&v.setAttribute("aria-labelledby",k.ref.headerIds.join(" ")),k.ref.repeatedHeader&&(v.dataset.repeatedHeader="true"),k.ref.noWrap&&(v.dataset.noWrap="true");let w=k.ref.rowSpan??1,T=k.ref.colSpan??1;w>1&&v.setAttribute("aria-rowspan",String(w)),T>1&&v.setAttribute("aria-colspan",String(T));let M=ke(k.prims,"cell",p,L);M&&we(v,M),k.ref.continuation&&(v.dataset.vmergeContinuation="true"),v.style.position="absolute",v.style.left="0",v.style.top="0";let C=new Map,X=[];for(let H of k.prims){let G=H.blockKey??H.blockId;if(G===void 0){X.push(H);continue}let N=C.get(G);N?N.push(H):C.set(G,[H]);}for(let H of $e(X))v.appendChild(Pe(H,t,i,r));for(let[H,G]of C){let N=t.createElement("div");N.dataset.blockId=String(H),N.style.position="absolute",N.style.left="0",N.style.top="0",St(N,G,t,i,r),v.appendChild(N);}xi(v,k.prims),Bt(v,k.prims),e.cells.push({el:v,bounds:Ct(k.prims)}),g.appendChild(v);}}Qe(n,c);}function St(e,t,i,r,n){let c=t.find(l=>l.chart!==void 0)?.chart;e.className=c?`${D.block} ${D.chart}`:D.block,e.setAttribute("role",c?"img":"paragraph"),c?.label&&e.setAttribute("aria-label",c.label);for(let l of $e(t))e.appendChild(Pe(l,i,r,n));let o=ke(t,"pmark");o&&we(e,o),bi(e,t,i,r),We(e,t.find(l=>l.sdt!==void 0)?.sdt);let s=t.find(l=>l.paraId!==void 0)?.paraId;s!==void 0&&(e.dataset.paraId=s);let a=t.find(l=>l.fromLine!==void 0);a?.fromLine!==void 0&&(e.dataset.fromLine=String(a.fromLine),a.toLine!==void 0&&(e.dataset.toLine=String(a.toLine))),Bt(e,t),vi(e,t);}function bi(e,t,i,r){Qe(e,t);let n=Number(e.dataset.docStart),c=Number(e.dataset.docEnd),o=t.map(y=>y.fragmentDocStart).filter(y=>Number.isFinite(y)),s=t.map(y=>y.fragmentDocEnd).filter(y=>Number.isFinite(y)),a=o.length>0?Math.min(...o):void 0,l=s.length>0?Math.max(...s):void 0,f=a??(Number.isFinite(n)&&n===c&&n>0?n-1:void 0);if(f!==void 0&&(e.dataset.docStart=String(f)),l!==void 0&&(e.dataset.docEnd=String(l)),f!==void 0&&!t.some(y=>y.docStart===f)){let y=$e(t).find(g=>_e(g)!==void 0),p=y?_e(y):void 0;if(p){let g=i.createElement("span");g.className="layout-mirror-structural-anchor",g.dataset.docStart=String(f),g.dataset.docEnd=String(f),ee(g,p,r),e.insertBefore(g,e.firstChild);}}}function xi(e,t){let i=e.querySelectorAll(".layout-paragraph[data-doc-start]"),r=1/0,n=-1/0;for(let c of i){let o=Number(c.dataset.docStart),s=Number(c.dataset.docEnd);Number.isFinite(o)&&(r=Math.min(r,o)),Number.isFinite(s)&&(n=Math.max(n,s));}r!==1/0&&(e.dataset.docStart=String(r)),n!==-1/0&&(e.dataset.docEnd=String(n)),r===1/0&&n===-1/0&&Qe(e,t);}function Ri(e){let t=new Map;for(let i of e.values())i.table?.tableId&&t.set(i.table.tableId,i);for(let i of e.values()){let r=i.table?.parentTableId;if(!r)continue;let n=t.get(r),c=Ct(i.prims);if(!n?.cells?.length||!c)continue;let o=c.x+c.w/2,s=c.y+c.h/2,a=n.cells.filter(l=>l.bounds&&Li(o,s,l.bounds));a.sort((l,f)=>Dt(l.bounds)-Dt(f.bounds)),a[0]?.el.appendChild(i.el);}}function Li(e,t,i){return e>=i.x&&e<=i.x+i.w&&t>=i.y&&t<=i.y+i.h}function Dt(e){return e.w*e.h}function Ct(e){let t;for(let i of e){let r=i.clipGroup?.clip,n=r?.x!==void 0&&r.y!==void 0&&r.w!==void 0&&r.h!==void 0?{x:r.x,y:r.y,w:r.w,h:r.h}:_e(i);if(!n)continue;if(!t){t={...n};continue}let c=Math.max(t.x+t.w,n.x+n.w),o=Math.max(t.y+t.h,n.y+n.h);t.x=Math.min(t.x,n.x),t.y=Math.min(t.y,n.y),t.w=c-t.x,t.h=o-t.y;}return t}function _e(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":return {x:e.x,y:e.y,w:e.w,h:e.h};case "image":case "shape":return {x:e.x,y:e.y,w:e.w,h:e.h};case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h}}}function $e(e){let t=e.filter(r=>r.logicalOrder!==void 0).sort((r,n)=>(r.logicalOrder??0)-(n.logicalOrder??0)||(r.docStart??0)-(n.docStart??0));if(t.length<2)return e;let i=0;return e.map(r=>r.logicalOrder===void 0?r:t[i++])}function Bt(e,t){let i=t.find(c=>c.lang)?.lang;i&&(e.lang=i);let r=t.find(c=>c.bidiLevel!==void 0||"rtl"in c);if(!r)return;let n=r.bidiLevel!==void 0?r.bidiLevel%2===1:"rtl"in r?r.rtl:false;e.dir=n?"rtl":"ltr";}function vi(e,t){let i=t.find(r=>r.ariaLabel||r.ariaDescription||r.decorative||r.hiddenObject||r.groupId);i&&Gt(e,i);}function Qe(e,t){let i,r;for(let n of t)n.docStart!==void 0&&(i=i===void 0?n.docStart:Math.min(i,n.docStart)),n.docEnd!==void 0&&(r=r===void 0?n.docEnd:Math.max(r,n.docEnd));i!==void 0&&(e.dataset.docStart=String(i)),r!==void 0&&(e.dataset.docEnd=String(r));}function ke(e,t,i,r){return e.find(n=>{let c=n.structuralRevision;return !(!c||c.scope!==t||i!==void 0&&c.rowIndex!==i||r!==void 0&&c.colIndex!==r)})?.structuralRevision}function Pe(e,t,i,r){let n=Si(e,t,i,r);return r.occludedWidgets.has(e)&&ue(n),n}function Si(e$1,t,i,r){switch(e$1.kind){case "text":{let n=kt(t,e$1,r);return n.className=D.text,n.textContent=e$1.text,ee(n,c(e$1),i),n.style.font=e$1.font,wt(n,e$1),Pt(n,e$1),Oe(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),e$1.structuralRevision?.scope==="pmark"&&(n.classList.add(D.revisionPmarkGlyph),e$1.structuralRevision.kind==="ins"&&n.classList.add(D.revisionPmarkIns),e$1.structuralRevision.kind==="del"&&n.classList.add(D.revisionPmarkDel),n.setAttribute("aria-hidden","true")),e$1.listMarker&&(n.classList.add(D.listMarker),n.setAttribute("aria-hidden","true"),e$1.listMarkerRevision&&(n.style.color=e$1.listMarkerRevision==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)")),se(n,e$1),n}case "glyphRun":{let n=kt(t,e$1,r);return n.className=D.text,n.textContent=e$1.text,ee(n,d(e$1),i),n.style.fontSize=`${e$1.size}px`,Di(n,e$1.fallbackFont),wt(n,e$1),Pt(n,e$1),Oe(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),se(n,e$1),n}case "rect":{let n=t.createElement("div");return n.className=D.rect,ee(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},i),se(n,e$1),n}case "line":{let n=t.createElement("div");return n.className=e$1.role==="table-cut"?D.tableCut:D.line,e$1.role&&e$1.role!=="table-cut"&&(n.dataset.role=e$1.role),ee(n,e(e$1),i),n.setAttribute("aria-hidden","true"),n}case "image":{let n=e$1.href?t.createElement("a"):t.createElement("div");return n.className=D.image,e$1.decorative?n.setAttribute("aria-hidden","true"):(n.setAttribute("role","img"),e$1.altText&&n.setAttribute("aria-label",e$1.altText)),Ht(n,e$1),n.dataset.relId=e$1.relId,ee(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},i),Oe(n,e$1.opacity,e$1.rotationDeg),e$1.filter&&(n.style.filter=e$1.filter),se(n,e$1),e$1.revision&&(n.style.outline=`2px solid ${e$1.revision.kind==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)"}`),e$1.href||(n.style.pointerEvents="auto"),n}case "shape":{let n=t.createElement("div");return n.className=D.shape,e$1.decorative?n.setAttribute("aria-hidden","true"):n.setAttribute("role","img"),ee(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},i),Ii(n,e$1.transform),se(n,e$1),n}case "decoration":{let n=t.createElement("span");return n.className=D.decoration,n.dataset.deco=e$1.deco,ee(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},i),se(n,e$1),n}}}function It(e,t,i){let r=t.createElement("div");return r.className=D.pageBorder,ee(r,{x:e.x,y:e.y,w:e.w,h:e.h},i),r.style.boxSizing="border-box",r.style.pointerEvents="none",r.style.zIndex=e.zOrder==="back"?"0":"20",Ie(r,"Top",e.top),Ie(r,"Right",e.right),Ie(r,"Bottom",e.bottom),Ie(r,"Left",e.left),r}function ee(e,t,i=0){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y+i}px`,e.style.width=`${t.w}px`,e.style.height=`${t.h}px`;}function kt(e,t,i){let r=t.noteRef?.id!==void 0?t.noteRef:void 0,n=t.href||r?e.createElement("a"):e.createElement("span");if(Ht(n,t),r&&!t.href){let c=r.kind??"footnote",o=`oox-${c}-${r.id}`;n.setAttribute("href",`#${o}`),n.setAttribute("role","doc-noteref");let s=`oox-noteref-${c}-${r.id}`;i.noteRefIds.has(s)||(i.noteRefIds.add(s),n.id=s);}return n}function Ht(e,t){let{href:i}=t;if(!i)return;e.setAttribute("href",i),e.dataset.href=i;let r=t.linkTitle??t.tooltip;r&&(e.title=r),t.linkTarget?e.setAttribute("target",t.linkTarget):i.startsWith("#")||e.setAttribute("target","_blank"),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener noreferrer"),t.linkHistory!==void 0&&(e.dataset.linkHistory=String(t.linkHistory)),t.linkDocLocation!==void 0&&(e.dataset.linkDocLocation=t.linkDocLocation);}function Di(e,t){if(t)for(let i of t.split(" ")){if(i.endsWith("px"))break;i==="italic"?e.style.fontStyle="italic":/^[1-9]00$/.test(i)&&i!=="400"&&(e.style.fontWeight=i);}}function wt(e,t){t.lang&&(e.lang=t.lang),t.bidiLevel!==void 0?e.dir=t.bidiLevel%2===1?"rtl":"ltr":t.rtl&&(e.dir="rtl");}function Ie(e,t,i){if(!i)return;let r=e.style;r[`border${t}Width`]=`${i.width}px`,r[`border${t}Style`]=i.style,r[`border${t}Color`]=i.color;}function Oe(e,t,i,r){t!==void 0&&(e.style.opacity=String(t));let n=[];i&&n.push(`rotate(${i}deg)`),r!==void 0&&r!==100&&n.push(`scaleX(${r/100})`),n.length>0&&(e.style.transform=n.join(" "),e.style.transformOrigin=r!==void 0&&r!==100?"left center":"center center");}function Ii(e,t){if(!t)return;let i=[];t.rotation&&i.push(`rotate(${t.rotation}deg)`),t.flipH&&i.push("scaleX(-1)"),t.flipV&&i.push("scaleY(-1)"),i.length!==0&&(e.style.transform=i.join(" "),e.style.transformOrigin="center center");}function Pt(e,t){if(t.allCaps&&(e.style.textTransform="uppercase"),t.smallCaps&&(e.style.fontVariant="small-caps"),t.hidden&&(e.classList.add("docx-hidden"),e.style.textDecoration="underline dotted"),t.textShadow==="emboss"?e.style.textShadow="1px 1px 1px rgba(255,255,255,0.5), -1px -1px 1px rgba(0,0,0,0.3)":t.textShadow==="imprint"?e.style.textShadow="-1px -1px 1px rgba(255,255,255,0.5), 1px 1px 1px rgba(0,0,0,0.3)":t.textShadow==="shadow"&&(e.style.textShadow="1px 1px 2px rgba(0,0,0,0.3)"),t.textOutline&&(e.style.webkitTextStroke="1px currentColor",e.style.webkitTextFillColor="transparent"),t.emphasisMark){let i=t.emphasisMark==="comma"?"filled sesame":t.emphasisMark==="circle"?"filled circle":"filled dot",r=t.emphasisMark==="underDot"?"under right":"over right";e.style.textEmphasis=i,e.style.textEmphasisPosition=r,e.style.webkitTextEmphasis=i,e.style.webkitTextEmphasisPosition=r;}t.textEffect&&(e.classList.add("docx-text-effect",`docx-text-effect-${t.textEffect}`),e.dataset.effect=t.textEffect);}function se(e,t){if(t.docStart!==void 0&&(e.dataset.docStart=String(t.docStart)),t.docEnd!==void 0&&(e.dataset.docEnd=String(t.docEnd)),t.commentIds&&t.commentIds.length>0&&(e.dataset.commentId=t.commentIds.join(" ")),t.field){let i=t.field.type??t.field.category;i&&(e.dataset.fieldType=i),t.field.category&&(e.dataset.fieldCategory=t.field.category),t.field.instruction&&(e.dataset.fieldInstruction=t.field.instruction);let r=t.field.instruction?.trim()||i;r&&e.setAttribute("aria-description",r);}if(t.noteRef?.id!==void 0&&(e.dataset.noteRefKind=t.noteRef.kind??"footnote",e.dataset.noteRefId=String(t.noteRef.id)),t.comment){t.comment.status&&(e.dataset.commentStatus=t.comment.status),t.comment.authorId&&(e.dataset.commentAuthorId=t.comment.authorId),t.comment.paletteIndex!==void 0&&(e.dataset.commentPaletteIndex=String(t.comment.paletteIndex)),t.comment.color&&(e.dataset.commentColor=t.comment.color),t.comment.selected!==void 0&&(e.dataset.commentSelected=String(t.comment.selected)),t.comment.authorName&&(e.dataset.commentAuthorName=t.comment.authorName),t.comment.date&&(e.dataset.commentDate=t.comment.date),t.comment.replyCount!==void 0&&(e.dataset.commentReplyCount=String(t.comment.replyCount));let i=[t.comment.status,t.comment.authorName??t.comment.authorId,t.comment.date,t.comment.text,...(t.comment.replies??[]).map(r=>[r.authorName,r.text].filter(Boolean).join(": "))].filter(Boolean).join(", ");i&&e.setAttribute("aria-description",i);}if(t.revision){e.dataset.changeAuthor=t.revision.author,e.dataset.changeDate=t.revision.date,e.dataset.revisionId=t.revision.revisionId,e.classList.add(t.revision.kind==="ins"?"docx-insertion":"docx-deletion"),e.hasAttribute("role")||e.setAttribute("role",t.revision.kind==="ins"?"insertion":"deletion");let i=[t.revision.author,t.revision.date].filter(Boolean).join(", ");i&&e.setAttribute("aria-description",i);}t.href&&(e.dataset.href=t.href),ki(e,t.inlineSdtWidget),We(e,t.sdt),t.sdtPath?.length&&(e.dataset.sdtPath=t.sdtPath.map(i=>i.groupId).join(" ")),t.logicalOrder!==void 0&&(e.dataset.logicalOrder=String(t.logicalOrder)),t.bidiLevel!==void 0&&(e.dataset.bidiLevel=String(t.bidiLevel)),Gt(e,t);}function Gt(e,t){if(t.groupId&&(e.dataset.groupId=t.groupId),t.decorative||t.hiddenObject){e.setAttribute("aria-hidden","true"),e.removeAttribute("role"),e.removeAttribute("aria-label"),e.removeAttribute("aria-description");return}t.ariaLabel&&e.setAttribute("aria-label",t.ariaLabel),t.ariaDescription&&e.setAttribute("aria-description",t.ariaDescription);}function We(e,t){t&&(e.classList.add(D.blockSdt),e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.lock!==void 0&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem)),!e.hasAttribute("aria-label")&&(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.lock&&e.setAttribute("aria-readonly","true"));}function ki(e,t){if(!t)return;e.classList.add(D.inlineSdtWidget);let i=t.controlKind??t.kind;e.dataset.sdtWidget=i,e.dataset.sdtGroupId=t.groupId,e.dataset.sdtPos=String(t.pos),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked),e.setAttribute("aria-checked",String(t.checked))),t.controlId!==void 0&&(e.dataset.sdtControlId=String(t.controlId)),t.value!==void 0&&(e.dataset.sdtValue=t.value),t.selectedIndex!==void 0&&(e.dataset.sdtSelectedIndex=String(t.selectedIndex)),t.dateFormat!==void 0&&(e.dataset.sdtDateFormat=t.dateFormat),t.dateLanguage!==void 0&&(e.dataset.sdtDateLanguage=t.dateLanguage),t.locked!==void 0&&(e.dataset.sdtLocked=String(t.locked)),i==="checkbox"?e.setAttribute("role","checkbox"):i==="dropDownList"||i==="comboBox"?(e.setAttribute("role","combobox"),e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-expanded","false")):i==="date"?(e.setAttribute("role","button"),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("role","group"),e.removeAttribute("tabindex"),(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.locked&&e.setAttribute("aria-disabled","true");}function we(e,t){switch(t.scope){case "pmark":e.classList.add(D.revisionPmark),t.kind==="ins"&&e.classList.add(D.revisionPmarkIns),t.kind==="del"&&e.classList.add(D.revisionPmarkDel);break;case "table":e.classList.add(D.revisionTable,Ye(t.kind));break;case "row":e.classList.add(D.revisionRow,Ye(t.kind));break;case "cell":e.classList.add(D.revisionCell,Ye(t.kind));break}e.dataset.revisionId=t.revisionId,e.dataset.revisionAuthor=t.author,t.date&&(e.dataset.revisionDate=t.date);let i=[t.author,t.date].filter(Boolean).join(", ");i&&e.setAttribute("aria-description",i);}function Ye(e){return e==="ins"?D.revisionIns:e==="del"?D.revisionDel:D.revisionMerge}function wi(e,t,i,r){let n=i.createElement("section");n.className=D.notes,n.dataset.noteKind=e.kind??"footnote",e.sectionId&&(n.dataset.sectionId=e.sectionId),e.columns!==void 0&&(n.dataset.columns=String(e.columns)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y??0}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height??0}px`;let c=new Map;for(let s of e.notes??[])s.id!==void 0&&c.set(s.id,s);fe(n,e.separatorPrimitives??[],i,-(e.y??0),r);let o=[...e.primitives??[]];for(let s of e.noteIds??[]){let l=`${e.kind??"footnote"}-${s}`,f=o.filter(g=>g.groupId===l);if(f.length===0)continue;for(let g of f){let h=o.indexOf(g);h>=0&&o.splice(h,1);}let y=i.createElement("aside");y.className=D.note,y.id=`oox-${l}`,y.dataset.noteId=String(s),y.setAttribute("role",e.kind==="endnote"?"doc-endnote":"doc-footnote");let p=c.get(s);if(p&&(p.label!==void 0&&(y.dataset.noteLabel=p.label),p.anchorDocStart!==void 0&&(y.dataset.anchorDocStart=String(p.anchorDocStart)),p.anchorDocEnd!==void 0&&(y.dataset.anchorDocEnd=String(p.anchorDocEnd))),fe(y,f,i,-(e.y??0),r),p&&Mt(e,s)){let g=i.createElement("a");g.className=D.noteBacklink,g.setAttribute("role","doc-backlink"),g.setAttribute("href",`#oox-noteref-${l}`);let h=r.labels?.noteBacklink??p.label??String(s);g.setAttribute("aria-label",h),y.appendChild(g);}n.appendChild(y);}return o.length>0&&fe(n,o,i,-(e.y??0),r),n}function Nt(e,t,i){if(t==="body")return e.primitives.filter(n=>n.kind==="image");let r=t==="header"?e.header:e.footer;return !r||i!==void 0&&r.rId!==i?[]:r.primitives.filter(n=>n.kind==="image")}function Ve(e,t,i="body",r){for(let n of e.pages)for(let c of Nt(n,i,r))if(c.docStart===t)return {primitive:c,pageIndex:n.pageIndex,...i!=="body"?{region:i,rId:r}:{}};return null}function Ke(e,t,i,r,n="body",c){let o=e.pages[t];if(!o)return null;let s=Nt(o,n,c);for(let a=s.length-1;a>=0;a--){let l=s[a];if(!(i<l.x||i>l.x+l.w)&&!(r<l.y||r>l.y+l.h)&&g(l,i,r))return {primitive:l,pageIndex:o.pageIndex,...n!=="body"?{region:n,rId:c}:{}}}return null}function Pi(e,t){let i=e.imageByPos(t);if(!i)return;let r=e.contentBounds(i.pageIndex),n=e.paragraphRects(t).find(c=>c.pageIndex===i.pageIndex);if(!(!r||!n))return {horizontalEmu:Math.round(c$1(i.primitive.x-r.x)),verticalEmu:Math.round(c$1(i.primitive.y-n.y))}}var pe=(()=>{let e=globalThis.FinalizationRegistry;return e?new e(t=>t()):null})();function Mi(e){return ()=>{let t=e.handle;if(e.handle=null,!(t===null||!e.eng||ge.has(e.eng)))try{e.eng.closeDisplayList?.(t);}catch{}}}var Ot=globalThis.WeakRef;function Ei(e){return Ot?new Ot(e):Ai(e)}function Ai(e){return {deref:()=>e}}var Me=new WeakMap,ze=new WeakMap;function Ti(e){let t=ze.get(e);t&&(t.newest=null);}var ge=new WeakSet,Je=new Set;function Ci(e){return e!=null&&ge.has(e)}function Bi(e){return Je.add(e),()=>{Je.delete(e);}}function me(e){return e instanceof Error?typeof WebAssembly<"u"&&e instanceof WebAssembly.RuntimeError?true:e.name==="RuntimeError":false}var ye=-1;function Ue(e){return {pageIndex:e.pageIndex,width:e.width,height:e.height,primitives:[]}}function _t(e){if(e.kind!=="text"&&e.kind!=="glyphRun"||e.docStart===void 0||e.docEnd===void 0||e.kind==="glyphRun"&&e.glyphs.length===0)return null;let t=e.kind==="text"?e.baselineY:e.glyphs.reduce((i,r)=>Math.max(i,r.y),-1/0);return Number.isFinite(t)?t:null}var je=new WeakMap;function Hi(e){if(je.has(e))return je.get(e)??null;let t=1/0,i=-1/0;for(let n of e.primitives){if(_t(n)===null)continue;let c=f(n);t=Math.min(t,c.y),i=Math.max(i,c.y+c.h);}let r=t<=i?{top:t,bottom:i}:null;return je.set(e,r),r}function Gi(e,t){let i=e.storeRevisions();if(!i)return null;let r=new Map;e.list.pages.forEach((a,l)=>r.set(a,l));let n=[],c=[],o=[],s=[];return t.pages.forEach((a,l)=>{let f=r.get(a);f!==void 0&&r.delete(a);let y=f===void 0?void 0:i[f];if(f===void 0||y===void 0){c.push([l,Ue(a)]),s.push(ye);return}if(y===ye){n.push([l,f]),s.push(ye);return}let p=x(a)===y?[]:z(a,y);if(p===null)c.push([l,Ue(a)]),s.push(ye);else if(p.length===0)n.push([l,f]),s.push(y);else {let g=p.map(h=>h.runs.map(R=>[R.start,R.count,R.changedMask,R.delta]));if(p.some(h=>h.anchors.length>0)){let h=p.map(R=>R.anchors.map(L=>[L.area,L.note,L.start,L.end]));o.push([l,f,g,h]);}else o.push([l,f,g]);s.push(x(a));}}),n.length===0&&o.length===0?null:{json:JSON.stringify({total:t.pages.length,...t.contractVersion!==void 0?{contractVersion:t.contractVersion}:{},reuse:n,replace:c,...o.length>0?{shift:o}:{}}),revisions:s}}var Yt=new WeakMap;function Ni(e){let t=x(e),i=Yt.get(e);if(i&&i.revision===t)return i;let r=1/0,n=-1/0,c=s=>{typeof s=="number"&&(s<r&&(r=s),s>n&&(n=s));};for(let s of e.primitives)c(s.docStart),c(s.docEnd),c(s.fragmentDocStart),c(s.fragmentDocEnd),c(s.inlineSdtWidget?.pos);let o={revision:t,min:r,max:n};return Yt.set(e,o),o}function Ft(e,t,i,r=0){let n=Math.min(t,i)-1,c=Math.max(t,i)+1,o=new Set;return e.pages.forEach((s,a)=>{let l=Ni(s);if(!(l.min>c||l.max<n))for(let f=-r;f<=r;f+=1){let y=a+f;y>=0&&y<e.pages.length&&o.add(y);}}),[...o]}function Oi(e,t,i,r){let n=null,c=()=>(n??(n=JSON.stringify(e)),n),o=null,s=Yi(t)?t:null,a={handle:null,eng:s?null:t??null},l=null,f$1,y,p=new Promise((d,u)=>{f$1=d,y=u;});p.catch(()=>{});let g=false,h=false,R=false,L={},k=null,v=i?Me.get(i):void 0;v&&(k=v.hasHandle()?i:v.donor(),v.supersede()),v&&v.line!==(r??null)&&(v.lineage.newest=null);let w={newest:null};r&&(w=ze.get(r)??w,ze.set(r,w));let T=()=>s??a.eng,M=()=>{let d=T();return d!==null&&ge.has(d)},C=(d,u)=>{let m=u instanceof Error?u:new Error(String(u));l=m,a.handle=null,pe?.unregister(L);let b=T();if(!(!b||ge.has(b))){ge.add(b),console.error(`[CanvasRenderer] ${d} trapped in wasm; the session is unusable and must be rebuilt`,m);for(let x of Je)try{x(m);}catch(I){console.error("[CanvasRenderer] display-list source failure listener threw",I);}}},X=Mi(a),H=()=>{let d=k;if(k=null,!d||!a.eng?.updateDisplayList||!a.eng.hasDisplayListUpdate?.())return false;let u=Me.get(d);if(!u||u.engine()!==a.eng)return false;let m=Gi(u,e);if(!m)return false;let b=u.takeHandle();if(b===null)return false;try{return a.eng.updateDisplayList(b,m.json),a.handle=b,o=m.revisions,!0}catch(x){try{a.eng.closeDisplayList?.(b);}catch{}return console.warn("[CanvasRenderer] display-list delta update failed; reopening",x),false}},G=()=>{if(!(R||h||g||a.handle!==null||!a.eng||M())&&!(!a.eng.hasDisplayListSession?.()||!a.eng.openDisplayList)&&(g=true,!H()))try{a.eng.updateDisplayList&&a.eng.hasDisplayListUpdate?.()?(a.handle=a.eng.openDisplayList(JSON.stringify({...e.contractVersion!==void 0?{contractVersion:e.contractVersion}:{},pages:e.pages.map(Ue)})),o=e.pages.map(()=>ye)):(a.handle=a.eng.openDisplayList(c()),o=e.pages.map(x));}catch(d){if(a.handle=null,me(d)){C("display-list session open",d);return}console.warn("[CanvasRenderer] display-list session open failed; using JSON-arg queries",d);}},N=d=>{if(a.handle===null||!o||!a.eng?.updateDisplayList)return;let u=o,m=[];for(let b of d){let x$1=e.pages[b];x$1&&u[b]!==x(x$1)&&m.push([b,x$1]);}if(m.length!==0)try{a.eng.updateDisplayList(a.handle,JSON.stringify({total:e.pages.length,...e.contractVersion!==void 0?{contractVersion:e.contractVersion}:{},keep:!0,replace:m}));for(let[b,x$1]of m)u[b]=x(x$1);}catch(b){if(me(b)){C("display-list page load",b),o=null;return}X(),pe?.unregister(L),o=null,console.warn("[CanvasRenderer] display-list page load failed; using JSON-arg queries",b);}},Te=()=>e.pages.map((d,u)=>u);s||a.eng?f$1():B().then(d=>{a.eng=d,f$1();},d=>{l=d instanceof Error?d:new Error(String(d)),y(l),console.warn("[CanvasRenderer] display-list query engine failed to load",l);});let re=(d,u,m,b)=>{if(!a.eng||M()||(a.handle===null&&G(),a.handle!==null&&d&&N(b()),M()))return null;if(a.handle!==null&&d)try{return d(a.handle)}catch(x){if(me(x))return C(m,x),null;console.warn(`[CanvasRenderer] ${m} session query failed; falling back`,x),X();}try{return u()}catch(x){return me(x)?(C(m,x),null):(l=x instanceof Error?x:new Error(String(x)),console.warn(`[CanvasRenderer] ${m} query failed`,x),null)}},$=(d,u,m)=>{if(d===null)return u;try{return JSON.parse(d)}catch(b){return l=b instanceof Error?b:new Error(String(b)),console.warn(`[CanvasRenderer] ${m} returned invalid JSON`,b),u}},E=()=>{if(s||!h||a.handle!==null||!r)return;let d=w.newest?.deref();return d&&!Me.get(d)?.disposed()?d:null},O=(d,u)=>(...m)=>{let b=E();return b?u(b,...m):d(...m)},A=(d,u)=>{if(M())return null;try{return d()}catch(m){return me(m)?(C(`resident ${u}`,m),null):(l=m instanceof Error?m:new Error(String(m)),console.warn(`[CanvasRenderer] resident ${u} query failed`,m),null)}},z=(d,u,m)=>{let b=E();if(b!==void 0)return b?.hitTestRegions(d,u,m)??null;if(s)return $(A(()=>s.displayHitTestRegionsJson(d,u,m),"hit_test_regions"),null,"hit_test_regions");let x=re(a.eng?.hitTestRegionsByHandle&&(I=>a.eng.hitTestRegionsByHandle(I,d,u,m)),()=>a.eng.hitTestRegionsJson(c(),d,u,m),"hit_test_regions",()=>[d]);return $(x,null,"hit_test_regions")},Y=(d,u)=>{let m=E();if(m!==void 0)return m?.rangeRects(d,u)??[];if(s)return $(A(()=>s.displayRangeRectsJson(d,u),"range_rects"),[],"range_rects");let b=re(a.eng?.rangeRectsByHandle&&(x=>a.eng.rangeRectsByHandle(x,d,u)),()=>a.eng.rangeRectsJson(c(),d,u),"range_rects",()=>Ft(e,d,u));return $(b,[],"range_rects")},J=(d,u,m)=>{let b=E();if(b!==void 0)return b?.verticalMove(d,u,m)??null;let x=m??Number.NaN;if(s)return $(A(()=>s.displayVerticalMoveJson(d,u,x),"vertical_move"),null,"vertical_move");if(!a.eng?.verticalMoveJson)return null;let I=re(a.eng.verticalMoveByHandle&&(S=>a.eng.verticalMoveByHandle(S,d,u,x)),()=>a.eng.verticalMoveJson(c(),d,u,x),"vertical_move",()=>Ft(e,d,d,1));return $(I,null,"vertical_move")},Q=(d,u,m,b)=>{let x=E();if(x!==void 0)return x?d==="header"||d==="footer"?x.hfRangeRects(d,u,m,b):d==="footnote"||d==="endnote"?x.noteRangeRects(d,Number(u),m,b):[]:[];if(s)return $(A(()=>s.displayRangeRectsRegionJson(d,u,m,b),"range_rects_region"),[],"range_rects_region");if(!a.eng||!a.eng.hasRangeRectsRegion?.())return [];let I=re(a.eng.rangeRectsRegionByHandle&&(S=>a.eng.rangeRectsRegionByHandle(S,d,u,m,b)),()=>a.eng.rangeRectsRegionJson(c(),d,u,m,b),"range_rects_region",Te);return $(I,[],"range_rects_region")},W=(d,u,m,b)=>Q(d,u,m,b),te=(d,u,m,b)=>Q(d,String(u),m,b),U=(d,u)=>{let m=(x,I)=>{let S=new Map;for(let P of x)I&&S.has(P.pageIndex)||S.set(P.pageIndex,{pageIndex:P.pageIndex,x:I?P.x:P.x+P.width,y:P.y,width:0,height:P.height});return [...S.values()]},b=d(u,u+1);if(b.length>0)return m(b,true);if(u>0){let x=d(u-1,u);if(x.length>0)return m(x,false)}return []},Re=(d,u,m)=>U((b,x)=>W(d,u,b,x),m),Ut=(d,u,m)=>U((b,x)=>te(d,u,b,x),m),qt=d=>{let u=e.pages.filter(P=>{let q=P.unbuilt?P.positionSpan:void 0;return q!==void 0&&d>=q[0]&&d<=q[1]});if(u.length===0)return null;let m=Math.max(...u.map(P=>P.positionSpan[0])),b=Math.min(...u.map(P=>P.positionSpan[1])),x=b>m?(d-m)/(b-m+1):1,I=Math.min(u.length-1,Math.floor(x*u.length)),S=u[I];return {pageIndex:S.pageIndex,x:S.contentBounds?.x??0,y:S.contentBounds?.y??0,width:0,height:0}},rt=d=>{let u=E();if(u!==void 0)return u?.caretRect(d)??null;let m=Y(d,d+1);if(m.length>0){let x=m[0];return {pageIndex:x.pageIndex,x:x.x,y:x.y,width:0,height:x.height}}let b=qt(d);if(b)return b;if(d>0){let x=Y(d-1,d);if(x.length>0){let I=x[x.length-1];return {pageIndex:I.pageIndex,x:I.x+I.width,y:I.y,width:0,height:I.height}}}return null},ot=d=>{let u=E();if(u!==void 0)return u?.anchorRect(d)??null;let m=Y(d,d+2);return m.length>0?m[0]:rt(d)},Zt=(d,u,m)=>{let b=W(d,u,m,m+2);if(b.length===0)return Re(d,u,m);let x=new Map;for(let I of b)x.has(I.pageIndex)||x.set(I.pageIndex,I);return [...x.values()]},st=(d,u)=>({pageIndex:d,x:u.x,y:u.y,width:u.w,height:u.h}),en=d=>{let u=e.pages[d];return u?{pageIndex:u.pageIndex,x:0,y:0,width:u.width,height:u.height}:null},tn=d=>{let u=e.pages[d],m=u?.contentBounds;return u&&m?{pageIndex:u.pageIndex,x:m.x,y:m.y,width:m.width,height:m.height}:null},nn=d=>{let u=e.pages[d];return u?(u.columnBounds??[]).map(m=>({pageIndex:u.pageIndex,x:m.x,y:m.y,width:m.width,height:m.height})):[]},Ce=d=>d.paraId?`para:${d.paraId}`:d.blockKey!==void 0?`block-key:${d.blockKey}`:d.blockId!==void 0?`block-id:${d.blockId}`:null,at=d=>d.blockKey??d.blockId,Le=null,rn=()=>{if(Le)return Le;let d=new Map;for(let u of e.pages)for(let m of u.primitives){let b=Ce(m);if(!b||m.docStart===void 0||m.docEnd===void 0)continue;let x=f(m),I=d.get(b);I||(I=new Map,d.set(b,I));let S=I.get(u.pageIndex);if(!S){I.set(u.pageIndex,{...st(u.pageIndex,x),from:m.docStart,to:m.docEnd,blockId:at(m),paraId:m.paraId});continue}let P=Math.min(S.x,x.x),q=Math.min(S.y,x.y),Z=Math.max(S.x+S.width,x.x+x.w),ae=Math.max(S.y+S.height,x.y+x.h);S.x=P,S.y=q,S.width=Z-P,S.height=ae-q,S.from=Math.min(S.from,m.docStart),S.to=Math.max(S.to,m.docEnd);}return Le=new Map([...d].map(([u,m])=>[u,[...m.values()]])),Le},on=d=>{let u=null;for(let m of e.pages)for(let b of m.primitives){let x=Ce(b),I=b.docStart,S=b.docEnd;if(!x||I===void 0||S===void 0||d<I||d>S)continue;let P={identity:x,span:Math.max(0,S-I),startsAtPos:I===d};(!u||P.startsAtPos&&!u.startsAtPos||P.startsAtPos===u.startsAtPos&&P.span<u.span)&&(u=P);}return u?rn().get(u.identity)??[]:[]},sn=1.5,lt=[],ct=d=>{let u=lt[d];if(u)return u;let m=e.pages[d];if(!m)return [];let b=[],x=new Map,I=0;for(let S of m.primitives){let P=_t(S);if(P===null||S.docStart===void 0||S.docEnd===void 0)continue;let q=Ce(S)??`anonymous:${I++}`,Z=f(S),ae=x.get(q),B=ae?.find(le=>Math.abs(le.baseline-P)<=sn);if(!B){let le={...st(m.pageIndex,Z),baseline:P,from:S.docStart,to:S.docEnd,blockId:at(S),paraId:S.paraId};b.push(le),ae?ae.push(le):x.set(q,[le]);continue}let pt=Math.min(B.x,Z.x),mt=Math.min(B.y,Z.y),un=Math.max(B.x+B.width,Z.x+Z.w),fn=Math.max(B.y+B.height,Z.y+Z.h);B.x=pt,B.y=mt,B.width=un-pt,B.height=fn-mt,B.from=Math.min(B.from,S.docStart),B.to=Math.max(B.to,S.docEnd);}return lt[d]=b,b},dt=null,ut=()=>(dt??(dt=e.pages.flatMap((d,u)=>ct(u))),dt),an=d=>{let u=null;for(let m of ut())d<m.from||d>m.to||(!u||m.to-m.from<u.to-u.from)&&(u=m);return u},ft=d=>{if(!d)return null;let u=d.primitive.docStart;if(u===void 0)return null;let{primitive:m}=d;return {...d,pos:u,rect:{pageIndex:d.pageIndex,x:m.x,y:m.y,width:m.w,height:m.h}}},ln=(d,u,m,b="body",x)=>ft(Ke(e,d,u,m,b,x)),cn=(d,u="body",m)=>ft(Ve(e,d,u,m)),dn=()=>{R||(R=true,X(),pe?.unregister(L));},ve={get displayList(){return E()?.displayList??e},isReady:()=>(s!==null||a.eng!==null)&&l===null,sourceState:()=>l?{status:"error",error:l}:s||a.eng?{status:"ready"}:{status:"loading"},whenReady:()=>p,pageCount:()=>{let d=E();return d?d.pageCount():e.pages.length},pageSize:d=>{let u=E();if(u)return u.pageSize(d);let m=e.pages[d];return m?{width:m.width,height:m.height}:null},pageBounds:d=>{let u=E();return u?u.pageBounds(d):en(d)},contentBounds:O(tn,(d,u)=>d.contentBounds(u)),columnBounds:O(nn,(d,u)=>d.columnBounds(u)),paragraphRects:O(on,(d,u)=>d.paragraphRects(u)),visualLines:O(ut,d=>d.visualLines()),visualLinesOnPage:d=>{let u=E();return u?u.visualLinesOnPage(d):ct(d)},visualLineExtent:O(d=>{let u=e.pages[d];return u?Hi(u):null},(d,u)=>d.visualLineExtent(u)),visualLineAtPosition:O(an,(d,u)=>d.visualLineAtPosition(u)),imageAtPoint:O(ln,(d,...u)=>d.imageAtPoint(...u)),imageByPos:O(cn,(d,...u)=>d.imageByPos(...u)),hitTestRegions:z,verticalMove:J,rangeRects:Y,hfRangeRects:W,noteRangeRects:te,hfCaretRects:Re,noteCaretRects:Ut,hfAnchorRects:Zt,caretRect:rt,anchorRect:ot,sidebarAnchorRect:ot,prime:G,dispose:dn};return pe?.register(ve,X,L),Me.set(ve,{list:e,storeRevisions:()=>o,engine:()=>a.eng,hasHandle:()=>a.handle!==null,donor:()=>k,supersede:()=>{h=true;},lineage:w,line:r??null,disposed:()=>R,takeHandle:()=>{let d=a.handle;return d!==null&&(a.handle=null,pe?.unregister(L)),d}}),w.newest=Ei(ve),ve}function Yi(e){return typeof e?.displayHitTestRegionsJson=="function"&&typeof e?.displayVerticalMoveJson=="function"&&typeof e?.displayRangeRectsJson=="function"&&typeof e?.displayRangeRectsRegionJson=="function"}var Fi=16,_i=24;function he(e){let t=[],i=24;for(let r=0;r<e.pageCount();r++)t.push(i),i+=(e.pageSize(r)?.height??0)+16;return t}var Xi=/^media:(0|[1-9]\d*)$/;function Xt(){let e=typeof OffscreenCanvas<"u"?new OffscreenCanvas(1,1):typeof document<"u"?Object.assign(document.createElement("canvas"),{width:1,height:1}):null,t=e?.getContext("2d");return !e||!t?null:(t.fillStyle="#e6e6e6",t.fillRect(0,0,1,1),e)}function $i(e={}){let t=new Map,{media:i,mediaScope:r}=e,n=r?.();return c=>{let o=i&&Xi.test(c);if(!o&&!c.startsWith("blob:")&&!c.startsWith("data:"))return null;r&&r()!==n&&(n=r(),t.clear());let s=t.get(c);return s||(s=new Promise(a=>{let l=c;if(o){let p=i(c);if(!p){a(Xt());return}l=URL.createObjectURL(new Blob([p.bytes],{type:p.mimeType}));}let f=new Image,y=p=>{o&&URL.revokeObjectURL(l),a(p);};f.onload=()=>y(f),f.onerror=()=>y(o?Xt():null),f.src=l;}),t.set(c,s)),s}}function Qi(e,t){let i=e.activeCommentIds.length>0?t?.(e.activeCommentIds):void 0;return {hasSelection:e.hasSelection,inInsertion:e.inInsertion,inDeletion:e.inDeletion,hasComment:e.activeCommentIds.length>0,inList:e.inList,listLevel:e.listLevel??0,...i?.authorName!==void 0?{commentAuthor:i.authorName}:{},...i?.replyCount!==void 0?{commentReplyCount:i.replyCount}:{}}}function Wi(e,t){if(!e)return [];let i=[];return !e.hasSelection&&t.hasSelection&&i.push({key:"selected"}),e.hasSelection&&!t.hasSelection&&i.push({key:"selectionCleared"}),!e.hasComment&&t.hasComment&&i.push({key:"commentedText",...t.commentAuthor!==void 0||t.commentReplyCount!==void 0?{vars:{...t.commentAuthor!==void 0?{author:t.commentAuthor}:{},...t.commentReplyCount!==void 0?{replies:t.commentReplyCount}:{}}}:{}}),!e.inInsertion&&t.inInsertion&&i.push({key:"trackedInsertion"}),!e.inDeletion&&t.inDeletion&&i.push({key:"trackedDeletion"}),(!e.inList&&t.inList||t.inList&&e.listLevel!==t.listLevel)&&i.push({key:"listItem",vars:{level:t.listLevel+1}}),i}function be(e){let t=Number(e);if(Number.isFinite(t))return t;let i=0xcbf29ce484222325n;for(let r of new TextEncoder().encode(e))i=(i^BigInt(r))*0x100000001b3n,i&=0xffffffffffffffffn;return Number(i&(1n<<53n)-1n)}function Ee(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function Vi(e){let t=typeof e.story=="string"?[e.story]:[],i=Array.isArray(e.rows)?e.rows:[];for(let r of i){let n=Ee(r),c=n&&Array.isArray(n.cells)?n.cells:[];for(let o of c){let s=Ee(o)?.story;typeof s=="string"&&t.push(s);}}return t}function Ki(e,t){let i=e.storyIds(),r=new Map,n=new Set;for(let s of i){let a=[];try{let l=e.storySegments(s);t.set(s,l);for(let f of l)if(f.kind==="embed")for(let y of Vi(f.payload))a.push(y),n.add(y);}catch{}r.set(s,a);}let c=new Map,o=(s,a,l)=>{if(!(l.has(s)||c.has(s))){l.add(s),c.set(s,a);for(let f of r.get(s)??[])o(f,a,l);l.delete(s);}};i.includes("body")&&o("body",{story:"body"},new Set);for(let s of i)!s.startsWith("hf:")||n.has(s)||o(s,{story:s,hfRid:s.slice(3)},new Set);return c}function ji(e,t,i,r,n){let c=Array.isArray(t.rows)?t.rows:[],o=i+1;for(let s of c){let a=Ee(s),l=a&&Array.isArray(a.cells)?a.cells:[],f=o+1;for(let y of l){let p=Ee(y),g=typeof p?.story=="string"?p.story:null,h=g?qe(e,g,f+1,r,n):0;f+=h+2;}o=f+1;}return o+1-i}function qe(e,t,i,r,n){if(n.has(t))throw new Error(`recursive yrs story: ${t}`);n.add(t);try{let c=i,o=i,s=0,a=!0;for(let l of e(t)){if(l.kind==="text"){s+=l.text.length,a=!1;continue}if(l.kind==="pilcrow"){let f=o+s+2;r.set(l.paraId,{pmStart:o,pmEnd:f}),c=f,o=c,s=0,a=!0;continue}if(l.embedKind==="table"&&a){c+=ji(e,l.payload,c,r,n),o=c;continue}if(l.embedKind==="blockSdt"&&a){let f=typeof l.payload.story=="string"?l.payload.story:null,y=f?qe(e,f,c+1,r,n):0;c+=y+2,o=c;continue}if(a&&(l.embedKind==="pageBreak"||l.embedKind==="columnBreak")){c+=1,o=c;continue}s+=1,a=!1;}return c-i}finally{n.delete(t);}}var $t=new WeakMap;function zi(e){let t=e.version(),i=$t.get(e);if(i?.version===t)return i.projection;let r=Ji(e);return $t.set(e,{version:t,projection:r}),r}function Ji(e){let t=new Map,i=new Map,r=a=>{let l=i.get(a);return l!==void 0?(i.delete(a),l):e.storySegments(a)},n=Ki(e,i);for(let a of i.keys())n.has(a)||i.delete(a);let c=a=>{let l=n.get(a)?.story;if(!l)return null;if(t.has(l))return t.get(l)??null;try{let f=new Map;return qe(r,l,0,f,new Set),t.set(l,f),f}catch{return t.set(l,null),null}finally{for(let[f,y]of n)y.story===l&&i.delete(f);}},o=a=>{let l=n.get(a.story);if(!l)return null;let f=c(a.story)?.get(a.paraId);if(!f)return null;let y=Math.max(0,f.pmEnd-f.pmStart-2),p=Math.min(Math.max(0,Math.trunc(a.offset)),y);return {story:a.story,position:f.pmStart+1+p,...l.hfRid?{hfRid:l.hfRid}:{}}};return {locToDisplayPoint:o,storyOffsetToDisplayPoint:(a,l)=>{if(!n.has(a))return null;let f=Math.max(0,Math.trunc(l));try{for(let y of e.paragraphs(a)){let p=e.locateParagraph(a,y.paraId);if(!(f<p.start||f>p.end))return o({story:a,paraId:y.paraId,offset:Math.min(f-p.start,p.end-p.start)})}}catch{return null}return null}}}function Ze(e,t){let{doc:i,schema:r}=e.state,n=r.marks.comment,c=r.marks.insertion,o=r.marks.deletion;!n&&!c&&!o||i.descendants((s,a)=>{let l=s.attrs;if(l){let f=[l.trIns,l.trDel,l.pPrIns,l.pPrDel];for(let h of f){let R=h?.revisionId;typeof R=="number"&&t(`revision-${R}`,a);}let p=l.cellMarker?.info?.revisionId;typeof p=="number"&&t(`revision-${p}`,a);let g=[l.pPrChange,l.trPrChange,l.tcPrChange,l.tblPrChange];for(let h of g)if(Array.isArray(h))for(let R of h){let L=R?.info?.id;typeof L=="number"&&t(`revision-${L}`,a);}}if(s.isInline)for(let f of s.marks){let y=null;n&&f.type===n?y=`comment-${f.attrs.commentId}`:(c&&f.type===c||o&&f.type===o)&&(y=`revision-${f.attrs.revisionId}`),y&&t(y,a);}});}function Ui(e,t,i){let r=new Map;if(!e?.state)return r;let n=he(t),c=new Set;return Ze(e,(o,s)=>{if(c.has(o))return;c.add(o);let a=t.anchorRect(s);if(!a)return;let l=i?i(a):(n[a.pageIndex]??0)+a.y;l!=null&&r.set(o,l);}),r}function qi(e,t,i){if(!e.hfRid)return t.anchorRect(e.position);let r=i?.get(e.hfRid);return r?t.hfAnchorRects(r,e.hfRid,e.position)[0]??null:null}function Zi(e,t,i,r,n,c,o){let s=new Map,a=he(n),l=(f,y)=>{if(!y||s.has(f))return s.has(f);let p=qi(y,n,c);if(!p)return false;let g=o?o(p):(a[p.pageIndex]??0)+p.y;return g==null?false:(s.set(f,g),true)};for(let f of t){let y=`comment-${f}`;try{for(let p of e.resolveComment(String(f)))if(l(y,r.storyOffsetToDisplayPoint(p.story,p.start)))break}catch{}}for(let f of i)l(`revision-${be(f.revisionId)}`,r.locToDisplayPoint({story:f.story,...f.range.start}));return s}function er(e,t,i,r){let n=he(t);for(let{region:c,rId:o,view:s}of e)Ze(s,(a,l)=>{if(i.has(a))return;let f=t.hfAnchorRects(c,o,l)[0];if(!f)return;let y=r?r(f):(n[f.pageIndex]??0)+f.y;y!=null&&i.set(a,y);});return i}var tr=new Set(["tableInserted","tableDeleted","rowInserted","rowDeleted"]);function nr(e,t){let i=e.map(o=>{let s=t.locToDisplayPoint({story:o.range.story,...o.range.start}),a=t.locToDisplayPoint({story:o.range.story,...o.range.end}),l=s?.position??0,f=Math.max(l,a?.position??l);return {type:o.kind==="pPrIns"?"paragraphMarkInsertion":o.kind==="pPrDel"?"paragraphMarkDeletion":o.kind==="pPrChange"?"paragraphPropertiesChanged":o.kind==="trIns"?"rowInserted":o.kind==="trDel"?"rowDeleted":o.kind==="tableIns"?"tableInserted":o.kind==="tableDel"?"tableDeleted":o.kind,text:o.preview,author:o.author,date:o.date||void 0,from:l,to:f,revisionId:be(o.revisionId),...s?.hfRid?{hfRid:s.hfRid}:{}}}),r=new Map;for(let o of i){let s=r.get(o.revisionId)??[];s.push(o),r.set(o.revisionId,s);}let n=[...r.values()].map(o=>{let s=Math.min(...o.map(g=>g.from)),a=Math.max(...o.map(g=>g.to)),l=o.filter(g=>g.type==="insertion"),f=o.filter(g=>g.type==="deletion");if(l.length>0&&f.length>0)return {...l[0],type:"replacement",text:l.map(h=>h.text).join(""),deletedText:f.map(h=>h.text).join(""),from:s,to:a};let y=o.find(g=>g.type==="insertion"||g.type==="deletion")??o.find(g=>tr.has(g.type))??o[0],p=o.filter(g=>g.type===y.type).map(g=>g.text).join("");return {...y,text:p,from:s,to:a}}),c=[];for(let o=0;o<n.length;o+=1){let s=n[o],a=n[o+1];s.type==="deletion"&&a?.type==="insertion"&&s.author===a.author&&s.date===a.date&&s.to===a.from&&s.hfRid===a.hfRid?(c.push({type:"replacement",text:a.text,deletedText:s.text,author:s.author,date:s.date,from:s.from,to:a.to,revisionId:s.revisionId,insertionRevisionId:a.revisionId,...s.hfRid?{hfRid:s.hfRid}:{}}),o+=1):c.push(s);}return {entries:c,commentToRevision:new Map}}function ir(e,t){let i=t.kind??"body";if(i==="body")return {kind:i,primitives:e.primitives};let r=i==="header"?e.header:e.footer;return !r||r.kind!==i||t.rId&&r.rId!==t.rId?null:{kind:i,rId:r.rId,primitives:r.primitives}}function rr(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":case "image":case "shape":case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h};case "line":return {x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)}}}function or(e){let t=rr(e),i=e.clipGroup?.clip;if(!i)return t;let r=i.x??0,n=i.y??0,c=r+Math.max(0,i.w??0),o=n+Math.max(0,i.h??0),s=Math.max(t.x,r),a=Math.max(t.y,n),l=Math.min(t.x+t.w,c),f=Math.min(t.y+t.h,o);return l<s||f<a?null:{x:s,y:a,w:l-s,h:f-a}}function sr(e){return e.kind==="text"||e.kind==="glyphRun"?e.text:e.kind==="image"?e.altText??"":""}function ar(e,t,i){return t>=e.x&&t<=e.x+e.w&&i>=e.y&&i<=e.y+e.h}function lr(e,t,i,r,n={kind:"body"}){let c=e.pages[t];if(!c)return null;let o=ir(c,n);if(!o)return null;for(let s=o.primitives.length-1;s>=0;s--){let a=o.primitives[s];if(a.kind==="line"||!a.href||a.hiddenObject)continue;let l=or(a);if(l&&ar(l,i,r))return {pageIndex:t,region:o.kind,rId:o.rId,href:a.href,tooltip:a.linkTitle??a.tooltip,displayText:sr(a)||a.href,rect:l}}return null}var V=7.5,ie=16,Qt=320,cr=30,dr=200,ur=24,fr=10,pr=10,mr=24;function Wt(e){let t;switch(e.kind){case "text":t=c(e);break;case "glyphRun":t=d(e);break;case "rect":case "image":case "shape":case "decoration":t={x:e.x,y:e.y,w:e.w,h:e.h};break;case "line":t={x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)};break}let i=tt(e);return i?yr(t,i)??{x:i.x,y:i.y,w:0,h:0}:t}function tt(e){let t=e.clipGroup?.clip;return t?{x:t.x??0,y:t.y??0,w:Math.max(0,t.w??0),h:Math.max(0,t.h??0)}:null}function yr(e,t){let i=Math.max(e.x,t.x),r=Math.max(e.y,t.y),n=Math.min(e.x+e.w,t.x+t.w),c=Math.min(e.y+e.h,t.y+t.h);return n<i||c<r?null:{x:i,y:r,w:n-i,h:c-r}}function Vt(e,t,i){if(e.docStart!=null){let r=t(e.docStart);if(r!=null){let n={tableKey:r,docStartSample:e.docStart};return e.table?.tableId&&!i.has(e.table.tableId)&&i.set(e.table.tableId,n),n}}return e.table?.tableId?i.get(e.table.tableId)??null:null}function Kt(e,t,i){let r=e.table?.tableId;if(!r)return null;let n=t.get(r);return n?i.get(n.tableKey)??null:null}function jt(e,t,i,r){let n=new Map;for(let o of t){if(o.kind==="line")continue;let s=o.cell;if(!s)continue;let a=Vt(o,i,r);if(!a)continue;let{tableKey:l,docStartSample:f}=a,y=Wt(o),p=tt(o),g=p??y,h=n.get(l);if(h||(h={tableKey:l,docStartSample:f,contentMinX:g.x,contentMinY:g.y,contentMaxX:g.x+g.w,contentMaxY:g.y+g.h,exactLeftX:[],exactBottomY:[],exactClipLeftX:[],exactClipBottomY:[],rows:new Map},n.set(l,h)),f<h.docStartSample&&(h.docStartSample=f),h.contentMinX=Math.min(h.contentMinX,g.x),h.contentMinY=Math.min(h.contentMinY,g.y),h.contentMaxX=Math.max(h.contentMaxX,g.x+g.w),h.contentMaxY=Math.max(h.contentMaxY,g.y+g.h),p&&(h.exactClipLeftX.push(p.x),h.exactClipBottomY.push(p.y+p.h)),!s.continuation){let R=h.rows.get(s.row);R?(R.top=Math.min(R.top,g.y),R.bottom=Math.max(R.bottom,g.y+g.h)):h.rows.set(s.row,{top:g.y,bottom:g.y+g.h});}}if(n.size===0)return [];for(let o of t){if(o.kind!=="line"||o.role!=="table-border"&&o.role!=="table-cut")continue;let s=Kt(o,r,n);if(!s){let f=(o.x1+o.x2)/2,y=(o.y1+o.y2)/2,p=1/0;for(let g of n.values()){let h=f>=g.contentMinX-ie&&f<=g.contentMaxX+ie,R=y>=g.contentMinY-ie&&y<=g.contentMaxY+ie;if(!h||!R)continue;let L=Math.max(0,g.contentMinX-f,f-g.contentMaxX),k=Math.max(0,g.contentMinY-y,y-g.contentMaxY),v=L+k;v<p&&(p=v,s=g);}}if(!s)continue;let a=Math.abs(o.x1-o.x2)<.5,l=Math.abs(o.y1-o.y2)<.5;a&&s.exactLeftX.push(Math.min(o.x1,o.x2)),l&&s.exactBottomY.push(Math.max(o.y1,o.y2));}let c=[];for(let o of n.values()){if(o.rows.size===0)continue;let s=o.exactLeftX.length>0||o.exactClipLeftX.length>0,a=s?Math.min(...o.exactLeftX,...o.exactClipLeftX):o.contentMinX-V,l=o.exactBottomY.length>0||o.exactClipBottomY.length>0?Math.max(...o.exactBottomY,...o.exactClipBottomY):o.contentMaxY,f=[...o.rows.entries()].map(([y,p])=>({rowIndex:y,top:p.top,bottom:p.bottom})).sort((y,p)=>y.rowIndex-p.rowIndex);c.push({pageIndex:e,tableKey:o.tableKey,docStartSample:o.docStartSample,originX:a,originY:o.contentMinY,bottomY:l,originExact:s,rowBands:f});}return c}function gr(e,t){let i=[],r=Ae(e,t,{kind:"body"});for(let n of e.pages)i.push(...jt(n.pageIndex,n.primitives,t,r));return i}function hr(e,t,i,r){let n=e.pages.slice(i,r+1),c=new Set,o=false;for(let a of n)for(let l of a.primitives)l.kind!=="line"&&l.cell&&(o=true),l.table?.tableId&&c.add(l.table.tableId);if(!o)return [];let s=Ae(e,t,{kind:"body"},c);return n.flatMap(a=>jt(a.pageIndex,a.primitives,t,s))}function nt(e,t){let i=t.kind??"body";if(i==="body")return {kind:i,primitives:e.primitives};let r=i==="header"?e.header:e.footer;return !r||r.kind!==i||t.rId&&r.rId!==t.rId?null:{kind:i,rId:r.rId,primitives:r.primitives}}function Ae(e,t,i,r){let n=new Map;for(let c of e.pages){let o=nt(c,i);if(o)for(let s of o.primitives){if(!s.cell||!s.table?.tableId||s.docStart==null||r&&!r.has(s.table.tableId))continue;let a=t(s.docStart);if(a==null)continue;let l=n.get(s.table.tableId);(!l||s.docStart<l.docStartSample)&&n.set(s.table.tableId,{tableKey:a,docStartSample:s.docStart});}}return n}function it(e,t){return `${e}:${t}`}function br(e,t,i,r){let n=it(t.row,t.col),c=e.cells.get(n);c?(c.minX=Math.min(c.minX,i.x),c.minY=Math.min(c.minY,i.y),c.maxX=Math.max(c.maxX,i.x+i.w),c.maxY=Math.max(c.maxY,i.y+i.h),c.rowSpan=Math.max(c.rowSpan,t.rowSpan),c.colSpan=Math.max(c.colSpan,t.colSpan),r&&(c.exactClip=r)):e.cells.set(n,{row:t.row,col:t.col,rowSpan:t.rowSpan,colSpan:t.colSpan,minX:i.x,minY:i.y,maxX:i.x+i.w,maxY:i.y+i.h,exactClip:r??void 0});}function zt(e,t,i){let r=new Map;for(let n of e){if(n.kind==="line")continue;let c=n.cell;if(!c)continue;let o=Vt(n,t,i);if(!o)continue;let s=o.tableKey,a=Wt(n),l=r.get(s);l||(l={tableKey:s,contentMinX:a.x,contentMinY:a.y,contentMaxX:a.x+a.w,contentMaxY:a.y+a.h,cells:new Map,verticalLines:[],horizontalLines:[]},r.set(s,l)),l.contentMinX=Math.min(l.contentMinX,a.x),l.contentMinY=Math.min(l.contentMinY,a.y),l.contentMaxX=Math.max(l.contentMaxX,a.x+a.w),l.contentMaxY=Math.max(l.contentMaxY,a.y+a.h),br(l,c,a,tt(n));}if(r.size===0)return [];for(let n of e){if(n.kind!=="line"||n.role!=="table-border"&&n.role!=="table-cut")continue;let c=Math.abs(n.x1-n.x2)<.5,o=Math.abs(n.y1-n.y2)<.5;if(!c&&!o)continue;let s=Math.min(n.x1,n.x2),a=Math.max(n.x1,n.x2),l=Math.min(n.y1,n.y2),f=Math.max(n.y1,n.y2),y=Kt(n,i,r);if(y){c?y.verticalLines.push(s):y.horizontalLines.push(l);continue}for(let p of r.values())if(c){if(!(f>=p.contentMinY-ie&&l<=p.contentMaxY+ie))continue;let h=s;Math.max(0,p.contentMinX-h,h-p.contentMaxX)<=Qt&&p.verticalLines.push(h);}else if(o){if(!(a>=p.contentMinX-ie&&s<=p.contentMaxX+ie))continue;let h=l;Math.max(0,p.contentMinY-h,h-p.contentMaxY)<=Qt&&p.horizontalLines.push(h);}}return [...r.values()]}function xe(e){let t=[];for(let i of [...e].sort((r,n)=>r-n))(t.length===0||Math.abs(t[t.length-1]-i)>.5)&&t.push(i);return t}function Jt(e){let t=xe([...e.cells.values()].map(n=>n.row)),i=xe(e.horizontalLines),r=new Map;if(t.length>0&&i.length>=t.length+1)for(let n=0;n<t.length;n++)r.set(t[n],i[n]),r.set(t[n]+1,i[n+1]);return r}function et(e){if(!e)return null;if(e.exactClip)return e.exactClip;let t=e.minX-V,i=e.minY-V;return {x:t,y:i,w:Math.max(1,e.maxX-e.minX+V*2),h:Math.max(1,e.maxY-e.minY+V*2)}}function xr(e,t){let i=1/0,r=-1/0;for(let n of e.cells.values())n.row===t&&(i=Math.min(i,n.exactClip?.y??n.minY-V),r=Math.max(r,n.exactClip?n.exactClip.y+n.exactClip.h:n.maxY+V));return !Number.isFinite(i)||!Number.isFinite(r)||r<=i?null:{top:i,bottom:r}}function Rr(e,t,i){let r=et(e.cells.get(it(t,i)));return r?{left:r.x,right:r.x+r.w,top:r.y,bottom:r.y+r.h}:null}function Lr(e,t,i,r={kind:"body"}){if(t.length===0)return [];let n=new Map;for(let s of t){let a=n.get(s.tableKey);a?a.push(s):n.set(s.tableKey,[s]);}let c=[],o=Ae(e,i,r);for(let s of e.pages){let a=nt(s,r);if(!a)continue;let l=zt(a.primitives,i,o);for(let f of l){let y=n.get(f.tableKey);if(!y)continue;let p=xe(f.verticalLines),g=Jt(f);for(let h of y){let R=f.cells.get(it(h.row,h.col)),L=p[h.col],k=p[h.col+h.colSpan],v=g.get(h.row),w=g.get(h.row+h.rowSpan),T=true;if(L==null||k==null||k<=L){let M=R?.exactClip??et(R);if(!M)continue;L=M.x,k=M.x+M.w,T=R?.exactClip!=null;}if(v==null||w==null||w<=v){let M=R?.exactClip??et(R);if(!M)continue;v=M.y,w=M.y+M.h,T&&(T=R?.exactClip!=null);}c.push({pageIndex:s.pageIndex,tableKey:f.tableKey,row:h.row,col:h.col,rowSpan:h.rowSpan,colSpan:h.colSpan,x:L,y:v,w:Math.max(1,k-L),h:Math.max(1,w-v),exact:T,region:a.kind,rId:a.rId});}}}return c}function vr(e){let{list:t,pageIndex:i,x:r,y:n,canvasRect:c,pageSize:o,tableKeyOf:s,cellPmPosOf:a,region:l={kind:"body"},edgeProximity:f=cr,buttonZoom:y=1}=e,p=t.pages[i];if(!p)return null;let g=nt(p,l);if(!g)return null;let h=o.width>0?c.width/o.width:1,R=o.height>0?c.height/o.height:1,L=(w,T)=>({clientX:c.left+w*h,clientY:c.top+T*R}),k=Ae(t,s,l),v=zt(g.primitives,s,k);for(let w of v){let T=xe(w.verticalLines),M=Jt(w),C=xe([...w.cells.values()].map(E=>E.row));if(C.length===0)continue;let X=T[0]??w.contentMinX-V,H=T[T.length-1]??w.contentMaxX+V,G=M.get(C[0])??w.contentMinY-V,N=C[C.length-1],Te=M.get(N+1)??w.contentMaxY+V,re=r<X+f&&r>=X-f,$=n<G+f&&n>=G-f;if(!(!re&&!$)){if(re&&n>=G-f&&n<=Te)for(let E of C){let O=M.get(E),A=M.get(E+1),z=O==null||A==null?xr(w,E):null,Y=O??z?.top,J=A??z?.bottom;if(Y==null||J==null||J<=Y||n<Y||n>J)continue;let Q=[...w.cells.values()].filter(U=>U.row===E).sort((U,Re)=>U.col-Re.col)[0];if(!Q)continue;let W=a(w.tableKey,E,Q.col);if(!W)continue;let te=L(X,Y+(J-Y)/2);return {type:"row",clientX:te.clientX-ur*y,clientY:te.clientY-fr*y,cellPmPos:W}}if($&&r>=X-f&&r<=H){let E=C[0],O=[...w.cells.values()].filter(A=>A.row===E).sort((A,z)=>A.col-z.col);for(let A of O){let z=T[A.col],Y=T[A.col+A.colSpan],J=z==null||Y==null?Rr(w,A.row,A.col):null,Q=z??J?.left,W=Y??J?.right;if(Q==null||W==null||W<=Q||r<Q||r>W)continue;let te=a(w.tableKey,A.row,A.col);if(!te)continue;let U=L(Q+(W-Q)/2,G);return {type:"column",clientX:U.clientX-pr*y,clientY:U.clientY-mr*y,cellPmPos:te}}}}}return null}var fo=gt;export{_i as CANVAS_PAGES_PADDING_PX,Fi as CANVAS_PAGE_GAP_PX,dr as DISPLAY_LIST_TABLE_INSERT_HIDE_DELAY_MS,D as MIRROR_CLASS_NAMES,Qn as applyInteractiveSdtFocus,Kn as buildInteractiveOverlayPage,Tt as buildMirrorPage,mi as buildMirrorPageLinks,he as canvasPageTops,Pi as captureInlinePositionEmuFromDisplayList,Wi as computeA11yAnnouncements,Ui as computeAnchorPositionsFromDisplayList,Zi as computeAnchorPositionsFromYrs,$i as createCanvasImageResolver,Oi as createDisplayListQueries,zi as createYrsSidebarProjection,fo as demoDisplayList,Lr as deriveDisplayListSelectedCellRects,gr as deriveDisplayListTableFragments,hr as deriveDisplayListTableFragmentsOnPages,vr as detectDisplayListTableInsertHover,yi as displayPageHoldsMirrorId,Ti as endDisplayListQueriesLine,nr as extractTrackedChangesFromYrs,lr as findDisplayListHyperlinkAtPoint,Ke as findImagePrimitiveAtPoint,Ve as findImagePrimitiveByDocPos,si as interactiveOverlayHasTabStops,Ci as isDisplayListQuerySourceDead,$n as loadGlyphOutlineProvider,er as mergeHfAnchorPositionsFromDisplayList,di as mirrorPageHasHeaderCells,ui as mirrorPageHasTabStops,Bi as onDisplayListQuerySourceFailure,At as reduceMirrorToLinks,Qi as snapshotFromSelectionContext,Ze as visitAnchorKeys,be as yrsIdToNumericId};
@@ -0,0 +1,25 @@
1
+ type WasmAsyncInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
2
+ /** A wasm module's Rust heap, from the allocator's counters. */
3
+ interface WasmHeapStats {
4
+ /** Bytes allocated now. */
5
+ liveBytes: number;
6
+ /** The most bytes allocated at once since the module started. */
7
+ peakBytes: number;
8
+ /** Size of the allocation the memory could not satisfy, or 0. */
9
+ failedAllocationBytes: number;
10
+ }
11
+ /** One instantiated wasm module's memory in this thread; heap counters only for modules that keep them. */
12
+ interface WasmModuleMemory extends Partial<WasmHeapStats> {
13
+ label: string;
14
+ /**
15
+ * Size of its linear memory. It only grows, so it is also the module's
16
+ * high-water mark.
17
+ */
18
+ bufferBytes: number;
19
+ }
20
+ /** The address space of a wasm32 memory: 4 GiB. */
21
+ declare const WASM32_MEMORY_LIMIT_BYTES: number;
22
+ /** The memory of every wasm module instantiated in this thread, by label. */
23
+ declare function wasmModuleMemories(): WasmModuleMemory[];
24
+
25
+ export { type WasmAsyncInput as W, type WasmModuleMemory as a, WASM32_MEMORY_LIMIT_BYTES as b, type WasmHeapStats as c, wasmModuleMemories as w };
@@ -904,4 +904,4 @@ interface DocxHeadlessLayoutOptions {
904
904
  };
905
905
  }
906
906
 
907
- export type { DocxUnlocatedReason as $, DocxExportDiagnostic as A, DocxExportDiagnosticCode as B, DocxExportFailureCode as C, DocxExportFailure as D, DocxExportInline as E, DocxExportPage as F, DocxExportRefusal as G, DocxExportResult as H, DocxExportStory as I, DocxExportTable as J, DocxFormattingMark as K, DocxFragmentGeometry as L, DocxHeadingInfo as M, DocxHeadlessFont as N, DocxInlineRevision as O, DocxLayoutProvenance as P, DocxListInfo as Q, DocxPageDiagnostic as R, DocxPageFragment as S, DocxPageMapContent as T, DocxParagraphData as U, DocxParagraphHeading as V, DocxRevisionView as W, DocxSnapshotLayoutProvenance as X, DocxStoryKind as Y, DocxStoryOccurrence as Z, DocxStorySelection as _, DocxExportOptions as a, DocxReadParagraphsRequest as a0, DocxReadParagraphsResult as a1, DocxFindTextRequest as a2, DocxFindTextResult as a3, DocxEditRequest as a4, DocxValidationResult as a5, DocxEditResult as a6, DocxTextTarget as a7, DocxEditRefusal as a8, DocxAtomKind as a9, ValidationSuccess as aA, DocxEditFailure as aa, DocxEditFailureCode as ab, DocxEditFailureReason as ac, DocxEditGuard as ad, DocxEditHistory as ae, DocxEditOperation as af, DocxEditPreview as ag, DocxEditReceipt as ah, DocxEditSource as ai, DocxEditStep as aj, DocxEditSuggestion as ak, DocxEditTarget as al, DocxParagraphInput as am, DocxParagraphTarget as an, DocxParagraphText as ao, DocxResolvedControl as ap, DocxSearchScope as aq, DocxSetContentControlTextStep as ar, DocxTextAtom as as, DocxTextMatch as at, DocxTextPosition as au, DocxTextRange as av, DocxTextView as aw, EditSuccess as ax, OperationFailure as ay, OperationRefusal as az, DocxMarkdownContent as b, DocxStructuredContent as c, DocxPageExportOptions as d, DocxHeadlessLayoutOptions as e, DocxPagedStructuredContent as f, DocxSnapshotLayoutMap as g, DocxMarkdownOptions as h, DocxLayoutMap as i, DocxPageMarkdownOptions as j, DocxContentControlReadFailure as k, DocxContentControlQuery as l, DocxContentControlsOptions as m, DocxContentControlsSnapshot as n, DocxAnchor as o, DocxAnchorScope as p, DocxCachedResult as q, DocxCommentMetadata as r, DocxContentControl as s, DocxContentControlDiagnostic as t, DocxContentControlSelector as u, DocxContentControlValue as v, DocxContentControlsResult as w, DocxControlMetadata as x, DocxExportBlock as y, DocxExportCell as z };
907
+ export type { DocxUnlocatedReason as $, DocxExportDiagnostic as A, DocxExportDiagnosticCode as B, DocxExportFailureCode as C, DocxExportFailure as D, DocxExportInline as E, DocxExportPage as F, DocxExportRefusal as G, DocxExportResult as H, DocxExportStory as I, DocxExportTable as J, DocxFormattingMark as K, DocxFragmentGeometry as L, DocxHeadingInfo as M, DocxHeadlessFont as N, DocxInlineRevision as O, DocxLayoutProvenance as P, DocxListInfo as Q, DocxPageDiagnostic as R, DocxPageFragment as S, DocxPageMapContent as T, DocxParagraphData as U, DocxParagraphHeading as V, DocxRevisionView as W, DocxSnapshotLayoutProvenance as X, DocxStoryKind as Y, DocxStoryOccurrence as Z, DocxStorySelection as _, DocxExportOptions as a, DocxEditSuggestion as a0, DocxEditFailure as a1, DocxEditFailureCode as a2, DocxReadParagraphsRequest as a3, DocxReadParagraphsResult as a4, DocxFindTextRequest as a5, DocxFindTextResult as a6, DocxEditRequest as a7, DocxValidationResult as a8, DocxEditResult as a9, ValidationSuccess as aA, DocxTextTarget as aa, DocxEditRefusal as ab, DocxAtomKind as ac, DocxEditFailureReason as ad, DocxEditGuard as ae, DocxEditHistory as af, DocxEditOperation as ag, DocxEditPreview as ah, DocxEditReceipt as ai, DocxEditSource as aj, DocxEditStep as ak, DocxEditTarget as al, DocxParagraphInput as am, DocxParagraphTarget as an, DocxParagraphText as ao, DocxResolvedControl as ap, DocxSearchScope as aq, DocxSetContentControlTextStep as ar, DocxTextAtom as as, DocxTextMatch as at, DocxTextPosition as au, DocxTextRange as av, DocxTextView as aw, EditSuccess as ax, OperationFailure as ay, OperationRefusal as az, DocxMarkdownContent as b, DocxStructuredContent as c, DocxPageExportOptions as d, DocxHeadlessLayoutOptions as e, DocxPagedStructuredContent as f, DocxSnapshotLayoutMap as g, DocxMarkdownOptions as h, DocxLayoutMap as i, DocxPageMarkdownOptions as j, DocxContentControlReadFailure as k, DocxContentControlQuery as l, DocxContentControlsOptions as m, DocxContentControlsSnapshot as n, DocxAnchor as o, DocxAnchorScope as p, DocxCachedResult as q, DocxCommentMetadata as r, DocxContentControl as s, DocxContentControlDiagnostic as t, DocxContentControlSelector as u, DocxContentControlValue as v, DocxContentControlsResult as w, DocxControlMetadata as x, DocxExportBlock as y, DocxExportCell as z };
@@ -0,0 +1 @@
1
+ import'./chunk-LT2GCWZ3.mjs';export{h as decodeTiffImage,b as parseDocxS9Wire,c as parseRelationshipsXmlWire,a as preloadParseWasm,d as serializeDocxS10Wire,e as serializeDocxS11Wire,f as serializeDocxS12Wire,g as writeDocxS13Wire}from'./chunk-3CYO46ML.mjs';import'./chunk-6CHGYCFU.mjs';import'./chunk-TTRUPDAB.mjs';
@@ -1,13 +1,13 @@
1
1
  import { RenderedDomContext, PositionCoordinates, PointPosition } from './index.mjs';
2
- import { D as DisplayListRect, a as DisplayListQueries } from '../displayListQueries-BYFrBkw5.mjs';
2
+ import { D as DisplayListRect, a as DisplayListQueries } from '../displayListQueries-H5YnU_hX.mjs';
3
3
  import '../types/document.mjs';
4
4
  import '../content-BzoC6bSz.mjs';
5
5
  import '../formatting-gqLFeJ9X.mjs';
6
6
  import '../docx/wrapTypes.mjs';
7
7
  import '../styles-AryxLAhx.mjs';
8
- import '../frameDelta-CVt5FAXT.mjs';
9
- import '../rustDisplayList-CwOoUn3t.mjs';
10
- import '../types-B4jD0rrc.mjs';
8
+ import '../frameDelta-ByU7HBuB.mjs';
9
+ import '../rustDisplayList-LcRZHCSL.mjs';
10
+ import '../types-D6Pra38E.mjs';
11
11
  import '../layout/pagination/index.mjs';
12
12
 
13
13
  /**
@@ -62,6 +62,8 @@ declare class RenderedDomContextImpl implements RenderedDomContext {
62
62
  private readonly queries;
63
63
  private readonly projector;
64
64
  constructor(pagesContainer: HTMLElement, zoom?: number, options?: RenderedDomContextOptions);
65
+ /** Client pixels per unit of this context: its zoom times the container's ancestor CSS zoom. */
66
+ private clientScale;
65
67
  /**
66
68
  * Run spans (`data-doc-start`/`data-doc-end`) in reading order, deep-queried
67
69
  * from the a11y mirror subtree nested under `.canvas-pages`.
@@ -1 +1 @@
1
- import {b as b$1,a}from'../chunk-7GJG6LLU.mjs';import {b}from'../chunk-TTRUPDAB.mjs';function L(h,n,r=1){let t=r>0?r:1,e=o=>{let i=n.pageSize(o.pageIndex),s=a(h,n,o.pageIndex);if(!s||!i||i.width<=0||i.height<=0)return null;let a$1=h.getBoundingClientRect(),c=s.width/i.width,u=s.height/i.height;return {x:(s.left-a$1.left+o.x*c)/t,y:(s.top-a$1.top+o.y*u)/t,width:o.width*c/t,height:o.height*u/t}};return {projectRect:e,getPageBounds:o=>{let i=n.pageBounds(o);return i?e(i):null}}}var f=class{constructor(n,r=1,t){b(this,"pagesContainer");b(this,"zoom");b(this,"queries");b(this,"projector");if(this.pagesContainer=n,this.zoom=r,this.queries=t?.displayListQueries??null,this.projector=t?.projector??null,this.queries===null!=(this.projector===null))throw new Error("RenderedDomContext requires displayListQueries and projector together")}spanEntries(){let n=[],r=Array.from(this.pagesContainer.querySelectorAll(".layout-page-content")),t=r.length>0?r:[this.pagesContainer];for(let e of t)for(let o of Array.from(e.querySelectorAll("span[data-doc-start][data-doc-end]")))n.push({el:o,start:Number(o.dataset.docStart),end:Number(o.dataset.docEnd)});return n}emptyRuns(){return Array.from(this.pagesContainer.querySelectorAll(".layout-empty-run"))}getCoordinatesForPosition(n){if(this.queries&&this.projector){let t=this.queries.caretRect(n),e=t?this.projector.projectRect(t):null;return e?{x:e.x,y:e.y,height:e.height}:null}let r=this.pagesContainer.getBoundingClientRect();for(let{el:t,start:e,end:o}of this.spanEntries()){let i=t;if(t.classList.contains("layout-run-tab")){if(n>=e&&n<o){let s=t.getBoundingClientRect(),a=t.closest(".layout-line"),c=a?a.offsetHeight:16;return {x:(s.left-r.left)/this.zoom,y:(s.top-r.top)/this.zoom,height:c/this.zoom}}continue}if(n>=e&&n<=o&&i.firstChild?.nodeType===Node.TEXT_NODE){let s=i.firstChild,a=Math.min(n-e,s.length),c=t.ownerDocument;if(!c)continue;let u=c.createRange();u.setStart(s,a),u.setEnd(s,a);let p=u.getBoundingClientRect(),d=t.closest(".layout-line"),l=d?d.offsetHeight:16;return {x:(p.left-r.left)/this.zoom,y:(p.top-r.top)/this.zoom,height:l/this.zoom}}}for(let t of this.emptyRuns()){let e=t.closest(".layout-paragraph");if(!e)continue;let o=Number(e.dataset.docStart),i=Number(e.dataset.docEnd);if(n>=o&&n<=i){let s=t.getBoundingClientRect(),a=t.closest(".layout-line"),c=a?a.offsetHeight:16;return {x:(s.left-r.left)/this.zoom,y:(s.top-r.top)/this.zoom,height:c/this.zoom}}}return null}getPositionAtPoint(n,r){if(!this.queries||!Number.isFinite(n)||!Number.isFinite(r))return null;let t=b$1(this.pagesContainer,this.queries,n,r),e=t?.hit;return !t||!e||e.pos===null||e.target!=="text"||(e.region==="header"||e.region==="footer")&&!e.rId||(e.region==="footnote"||e.region==="endnote")&&e.noteId===void 0?null:{position:e.pos,pageIndex:t.pageIndex,region:e.region,...e.rId===void 0?{}:{rId:e.rId},...e.noteId===void 0?{}:{noteId:e.noteId}}}findElementsForRange(n,r){let t=[];for(let{el:e,start:o,end:i}of this.spanEntries())i>n&&o<r&&t.push(e);return t}getRectsForRange(n,r){if(this.queries&&this.projector)return this.queries.rangeRects(n,r).map(o=>this.projector.projectRect(o)).filter(o=>o!==null);let t=this.pagesContainer.getBoundingClientRect(),e=[];for(let{el:o,start:i,end:s}of this.spanEntries()){let a=o;if(s>n&&i<r){if(o.classList.contains("layout-run-tab")){let l=o.getBoundingClientRect();e.push({x:(l.left-t.left)/this.zoom,y:(l.top-t.top)/this.zoom,width:l.width/this.zoom,height:l.height/this.zoom});continue}if(a.firstChild?.nodeType!==Node.TEXT_NODE)continue;let c=a.firstChild,u=o.ownerDocument;if(!u)continue;let p=Math.max(0,n-i),d=Math.min(c.length,r-i);if(p<d){let l=u.createRange();l.setStart(c,p),l.setEnd(c,d);let b=l.getClientRects();for(let m of Array.from(b))e.push({x:(m.left-t.left)/this.zoom,y:(m.top-t.top)/this.zoom,width:m.width/this.zoom,height:m.height/this.zoom});}}}return e}getCoordinatesForHfPosition(n,r,t,e){if(!this.queries||!this.projector)return null;let o=this.queries.hfCaretRects(n,r,t).find(s=>s.pageIndex===e),i=o?this.projector.projectRect(o):null;return i?{x:i.x,y:i.y,height:i.height}:null}getRectsForHfRange(n,r,t,e,o){return !this.queries||!this.projector?[]:this.queries.hfRangeRects(n,r,t,e).filter(i=>i.pageIndex===o).map(i=>this.projector.projectRect(i)).filter(i=>i!==null)}getPageBounds(n){if(this.projector)return this.projector.getPageBounds(n);let r=this.pagesContainer.querySelectorAll(".layout-page"),t=Array.from(r).find((i,s)=>Number(i.dataset.pageIndex??s)===n);if(!t)return null;let e=t.getBoundingClientRect(),o=this.pagesContainer.getBoundingClientRect();return {x:(e.left-o.left)/this.zoom,y:(e.top-o.top)/this.zoom,width:e.width/this.zoom,height:e.height/this.zoom}}getContainerOffset(){let n=this.pagesContainer.parentElement;if(!n)return {x:0,y:0};let r=this.pagesContainer.getBoundingClientRect(),t=n.getBoundingClientRect();return {x:(r.left-t.left)/this.zoom,y:(r.top-t.top)/this.zoom}}};function j(h,n=1,r){return new f(h,n,r)}export{f as RenderedDomContextImpl,L as createCanvasHostProjector,j as createRenderedDomContext};
1
+ import {a,h,d,g}from'../chunk-AOWJ4WDE.mjs';import {b}from'../chunk-TTRUPDAB.mjs';function D(h,r,o=1){let i=o>0?o:1,e=t=>{let n=r.pageSize(t.pageIndex),s=g(h,r,t.pageIndex);if(!s||!n||n.width<=0||n.height<=0)return null;let a$1=h.getBoundingClientRect(),c=s.width/n.width,l=s.height/n.height,u=i*a(h);return {x:(s.left-a$1.left+t.x*c)/u,y:(s.top-a$1.top+t.y*l)/u,width:t.width*c/u,height:t.height*l/u}};return {projectRect:e,getPageBounds:t=>{let n=r.pageBounds(t);return n?e(n):null}}}var R=class{constructor(r,o=1,i){b(this,"pagesContainer");b(this,"zoom");b(this,"queries");b(this,"projector");if(this.pagesContainer=r,this.zoom=o,this.queries=i?.displayListQueries??null,this.projector=i?.projector??null,this.queries===null!=(this.projector===null))throw new Error("RenderedDomContext requires displayListQueries and projector together")}clientScale(){return this.zoom*a(this.pagesContainer)}spanEntries(){let r=[],o=Array.from(this.pagesContainer.querySelectorAll(".layout-page-content")),i=o.length>0?o:[this.pagesContainer];for(let e of i)for(let t of Array.from(e.querySelectorAll("span[data-doc-start][data-doc-end]")))r.push({el:t,start:Number(t.dataset.docStart),end:Number(t.dataset.docEnd)});return r}emptyRuns(){return Array.from(this.pagesContainer.querySelectorAll(".layout-empty-run"))}getCoordinatesForPosition(r){if(this.queries&&this.projector){let e=this.queries.caretRect(r),t=e?this.projector.projectRect(e):null;return t?{x:t.x,y:t.y,height:t.height}:null}let o=this.pagesContainer.getBoundingClientRect(),i=this.clientScale();for(let{el:e,start:t,end:n}of this.spanEntries()){let s=e;if(e.classList.contains("layout-run-tab")){if(r>=t&&r<n){let a=e.getBoundingClientRect(),c=e.closest(".layout-line"),l=c?c.offsetHeight:16;return {x:(a.left-o.left)/i,y:(a.top-o.top)/i,height:l/this.zoom}}continue}if(r>=t&&r<=n&&s.firstChild?.nodeType===Node.TEXT_NODE){let a=s.firstChild,c=Math.min(r-t,a.length),l=e.ownerDocument;if(!l)continue;let u=l.createRange();u.setStart(a,c),u.setEnd(a,c);let d=u.getBoundingClientRect(),g=e.closest(".layout-line"),p=g?g.offsetHeight:16;return {x:(d.left-o.left)/i,y:(d.top-o.top)/i,height:p/this.zoom}}}for(let e of this.emptyRuns()){let t=e.closest(".layout-paragraph");if(!t)continue;let n=Number(t.dataset.docStart),s=Number(t.dataset.docEnd);if(r>=n&&r<=s){let a=e.getBoundingClientRect(),c=e.closest(".layout-line"),l=c?c.offsetHeight:16;return {x:(a.left-o.left)/i,y:(a.top-o.top)/i,height:l/this.zoom}}}return null}getPositionAtPoint(r,o){if(!this.queries||!Number.isFinite(r)||!Number.isFinite(o))return null;let i=h(this.pagesContainer,this.queries,r,o),e=i?.hit;return !i||!e||e.pos===null||e.target!=="text"||(e.region==="header"||e.region==="footer")&&!e.rId||(e.region==="footnote"||e.region==="endnote")&&e.noteId===void 0?null:{position:e.pos,pageIndex:i.pageIndex,region:e.region,...e.rId===void 0?{}:{rId:e.rId},...e.noteId===void 0?{}:{noteId:e.noteId}}}findElementsForRange(r,o){if(this.queries){let e=new Set(this.queries.rangeRects(r,o).map(t=>t.pageIndex));d(this.pagesContainer,[...e]);}let i=[];for(let{el:e,start:t,end:n}of this.spanEntries())n>r&&t<o&&i.push(e);return i}getRectsForRange(r,o){if(this.queries&&this.projector)return this.queries.rangeRects(r,o).map(n=>this.projector.projectRect(n)).filter(n=>n!==null);let i=this.pagesContainer.getBoundingClientRect(),e=this.clientScale(),t=[];for(let{el:n,start:s,end:a}of this.spanEntries()){let c=n;if(a>r&&s<o){if(n.classList.contains("layout-run-tab")){let p=n.getBoundingClientRect();t.push({x:(p.left-i.left)/e,y:(p.top-i.top)/e,width:p.width/e,height:p.height/e});continue}if(c.firstChild?.nodeType!==Node.TEXT_NODE)continue;let l=c.firstChild,u=n.ownerDocument;if(!u)continue;let d=Math.max(0,r-s),g=Math.min(l.length,o-s);if(d<g){let p=u.createRange();p.setStart(l,d),p.setEnd(l,g);let E=p.getClientRects();for(let m of Array.from(E))t.push({x:(m.left-i.left)/e,y:(m.top-i.top)/e,width:m.width/e,height:m.height/e});}}}return t}getCoordinatesForHfPosition(r,o,i,e){if(!this.queries||!this.projector)return null;let t=this.queries.hfCaretRects(r,o,i).find(s=>s.pageIndex===e),n=t?this.projector.projectRect(t):null;return n?{x:n.x,y:n.y,height:n.height}:null}getRectsForHfRange(r,o,i,e,t){return !this.queries||!this.projector?[]:this.queries.hfRangeRects(r,o,i,e).filter(n=>n.pageIndex===t).map(n=>this.projector.projectRect(n)).filter(n=>n!==null)}getPageBounds(r){if(this.projector)return this.projector.getPageBounds(r);let o=this.pagesContainer.querySelectorAll(".layout-page"),i=Array.from(o).find((s,a)=>Number(s.dataset.pageIndex??a)===r);if(!i)return null;let e=i.getBoundingClientRect(),t=this.pagesContainer.getBoundingClientRect(),n=this.clientScale();return {x:(e.left-t.left)/n,y:(e.top-t.top)/n,width:e.width/n,height:e.height/n}}getContainerOffset(){let r=this.pagesContainer.parentElement;if(!r)return {x:0,y:0};let o=this.pagesContainer.getBoundingClientRect(),i=r.getBoundingClientRect(),e=this.clientScale();return {x:(o.left-i.left)/e,y:(o.top-i.top)/e}}};function H(h,r=1,o){return new R(h,r,o)}export{R as RenderedDomContextImpl,D as createCanvasHostProjector,H as createRenderedDomContext};
@@ -1,6 +1,6 @@
1
- import { L as Layout } from './types-B4jD0rrc.mjs';
1
+ import { L as Layout } from './types-D6Pra38E.mjs';
2
2
  import { MeasuredBlock } from './layout/pagination/index.mjs';
3
- import { D as DisplayList, R as RetainedFrame } from './frameDelta-CVt5FAXT.mjs';
3
+ import { D as DisplayList, R as RetainedFrame } from './frameDelta-ByU7HBuB.mjs';
4
4
 
5
5
  /**
6
6
  * JS seam to the Rust display-list builder.
@@ -205,6 +205,13 @@ interface RustDisplayListEngine {
205
205
  displayVerticalMoveJson?(position: number, direction: 'up' | 'down', goalX: number): string;
206
206
  displayRangeRectsJson?(from: number, to: number): string;
207
207
  displayRangeRectsRegionJson?(region: string, partId: string, from: number, to: number): string;
208
+ /** The bytes and media type of the part a `media:{n}` image source names. */
209
+ mediaSource?(token: string): {
210
+ bytes: Uint8Array;
211
+ mimeType: string;
212
+ } | null;
213
+ /** Changes whenever the package `mediaSource` reads changes. */
214
+ mediaScope?(): number;
208
215
  }
209
216
  type RustDisplayListSourceErrorStage = 'load' | 'build' | 'parse' | 'decode' | 'apply';
210
217
  interface RustDisplayFrameResult {
@@ -295,13 +302,14 @@ declare function buildRustDisplayList(inputs: DisplayListBuildInputs, engine?: R
295
302
  * Build one display frame. An engine that retains pagination returns a binary
296
303
  * FrameDelta, decoded and applied on top of `previous` so unchanged pages keep
297
304
  * object identity; `previous` also supplies the frame epoch the engine checks
298
- * before sending a delta rather than a full frame. An engine without
305
+ * before sending a delta rather than a full frame, unless `expectedFrameEpoch`
306
+ * overrides it (the engine numbers its frame after that epoch). An engine without
299
307
  * `buildDisplayListFrame` takes the full-JSON path, and its result carries
300
308
  * `frame: null` and `transport: 'json'`.
301
309
  *
302
310
  * Throws {@link RustDisplayListSourceError} tagged with the failing stage:
303
311
  * `load`, `build`, `decode` or `apply`.
304
312
  */
305
- declare function buildRustDisplayFrame(inputs: DisplayListBuildInputs, engine?: RustDisplayListEngine, previous?: RetainedFrame | null): Promise<RustDisplayFrameResult>;
313
+ declare function buildRustDisplayFrame(inputs: DisplayListBuildInputs, engine?: RustDisplayListEngine, previous?: RetainedFrame | null, expectedFrameEpoch?: number): Promise<RustDisplayFrameResult>;
306
314
 
307
315
  export { type DisplayListHeadersFooters as D, type RustDisplayListQueryEngine as R, type DisplayListBuildInputs as a, type DisplayListHfVariant as b, type DisplayListPictureWatermark as c, type DisplayListTextWatermark as d, type DisplayListWatermark as e, type RustDisplayFrameResult as f, type RustDisplayListEngine as g, RustDisplayListSourceError as h, type RustDisplayListSourceErrorStage as i, buildRustDisplayFrame as j, buildRustDisplayList as k, encodeDisplayListFrameExtras as l, loadRustDisplayListQueryEngine as m };
@@ -20,6 +20,8 @@ type FontScript = 'cjk-sc' | 'cjk-tc' | 'cjk-jp' | 'cjk-kr' | 'arabic' | 'hebrew
20
20
  interface BundledFontProvider {
21
21
  /** Resolve a Word family to bundled metric-compatible face byte loaders, or undefined. */
22
22
  resolve(family: string, bold: boolean, italic: boolean): (() => Promise<ArrayBuffer>) | undefined;
23
+ /** Like {@link BundledFontProvider.resolve}, but also accepts bundled family names such as `"Gelasio"`, and never substitutes another style. */
24
+ resolveFamily?(family: string, bold: boolean, italic: boolean): (() => Promise<ArrayBuffer>) | undefined;
23
25
  /**
24
26
  * Optional per-script coverage fallback (Noto CJK/RTL faces). Same loader
25
27
  * contract as {@link BundledFontProvider.resolve}; providers without
@@ -12,6 +12,9 @@ interface CompatibilityFlags {
12
12
  doNotExpandShiftReturn: boolean;
13
13
  useWord97LineBreakRules: boolean;
14
14
  balanceSingleByteDoubleByteWidth: boolean;
15
+ doNotUseHTMLParagraphAutoSpacing?: boolean;
16
+ suppressSpBfAfterPgBrk?: boolean;
17
+ allowSpaceOfSameStyleInTable?: boolean;
15
18
  }
16
19
  /** Public model contract rehydrated by the Rust parser. */
17
20
  interface DocumentSettings {
@@ -350,16 +350,22 @@ type FieldRun = RunFormatting & {
350
350
  fieldType: 'PAGE' | 'NUMPAGES' | 'DATE' | 'TIME' | 'OTHER';
351
351
  /**
352
352
  * Raw Word field type token (e.g. `TOC`, `PAGEREF`) when `fieldType`
353
- * collapsed it to a painter category. Carried for a11y announcement only.
353
+ * collapsed it to a painter category. Carried for a11y announcement, and
354
+ * read to number `SEQ` fields.
354
355
  */
355
356
  rawType?: string;
356
357
  /**
357
358
  * Raw field instruction text (`w:instrText`), carried INERT so the display
358
- * list can announce field identity. Never parsed into behavior or executed.
359
+ * list can announce field identity. Never executed; only a `SEQ` field's is
360
+ * parsed, to number it.
359
361
  */
360
362
  instruction?: string;
361
- /** Fallback text if field can't be resolved */
363
+ /** Text shown when the painter doesn't resolve the field: Word's cached result, or a `SEQ` field's number. */
362
364
  fallback?: string;
365
+ /** `w:fldLock`: the field keeps its cached result. */
366
+ locked?: boolean;
367
+ /** Sequences of `SEQ` fields nested in this field; they keep their cached results. */
368
+ nestedSequences?: string[];
363
369
  pmStart?: number;
364
370
  pmEnd?: number;
365
371
  };
@@ -835,6 +841,7 @@ type ShapeBlock = {
835
841
  y?: number;
836
842
  /** Optional inner paragraphs for future text-bearing shape rendering. */
837
843
  innerText?: ParagraphBlock[];
844
+ nestedSequences?: string[];
838
845
  /** Pre-measured inner paragraph measures for display-list shape text. */
839
846
  innerMeasures?: ParagraphExtent[];
840
847
  /** Child shapes positioned relative to this shape's top-left corner. */
@@ -1515,6 +1522,8 @@ type Layout = {
1515
1522
  footers?: Record<string, HeaderFooterLayout>;
1516
1523
  /** Gap between pages in pixels (for rendering). */
1517
1524
  pageGap?: number;
1525
+ /** Lays out only part of the document, so its page count is not the document's. */
1526
+ partial?: boolean;
1518
1527
  };
1519
1528
  /**
1520
1529
  * Measured header/footer heights keyed by variant.