@betteroffice/docx 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +522 -3
- package/dist/{chunk-JHJLG4I6.mjs → chunk-5B4VMUXM.mjs} +1 -1
- package/dist/chunk-5JEQC76K.mjs +1 -0
- package/dist/chunk-7GJG6LLU.mjs +1 -0
- package/dist/chunk-FE6FWGBJ.mjs +1 -0
- package/dist/chunk-H5YYCN42.mjs +1 -0
- package/dist/chunk-NT2OYIJ4.mjs +57 -0
- package/dist/chunk-QE4ZDRKV.mjs +1 -0
- package/dist/chunk-VQXNED2P.mjs +2 -0
- package/dist/chunk-Z4HZIPBS.mjs +1 -0
- package/dist/collaboration/index.d.mts +8 -6
- package/dist/compareDocx-XXTZV4CG.mjs +1 -0
- package/dist/computeLayout-LWLAJWYA.mjs +1 -0
- package/dist/{content-CvEtPl0c.d.mts → content-BzoC6bSz.d.mts} +48 -8
- package/dist/core.d.mts +172 -9
- package/dist/core.mjs +1 -1
- package/dist/{displayListQueries-DF8F6fMl.d.mts → displayListQueries-BYFrBkw5.d.mts} +2 -2
- package/dist/docx/index.d.mts +5 -4
- package/dist/docx/index.mjs +1 -1
- package/dist/editor/index.d.mts +10 -8
- package/dist/editor/index.mjs +1 -1
- package/dist/{fontLoader-b8eicJKV.d.mts → fontLoader-CkXcPB1C.d.mts} +1 -1
- package/dist/{formatting-7zKCTu5a.d.mts → formatting-gqLFeJ9X.d.mts} +8 -0
- package/dist/{frameDelta-pA4jrQ1G.d.mts → frameDelta-CVt5FAXT.d.mts} +14 -3
- package/dist/generated/edit/docx_edit_bg.wasm +0 -0
- package/dist/generated/layout/docx_layout_bg.wasm +0 -0
- package/dist/generated/opc/ooxml_opc_bg.wasm +0 -0
- package/dist/generated/parse/docx_parse_bg.wasm +0 -0
- package/dist/{index-CHl2zLJ7.d.mts → index-BbZwdkPz.d.mts} +457 -29
- package/dist/layout/index.d.mts +6 -6
- package/dist/layout/index.mjs +1 -1
- package/dist/layout/pagination/index.d.mts +4 -4
- package/dist/layout/render/index.d.mts +12 -10
- package/dist/layout/render/index.mjs +1 -1
- package/dist/pagedExport-D3E4jZ-B.d.mts +907 -0
- package/dist/plugin-api/RenderedDomContext.d.mts +10 -9
- package/dist/plugin-api/RenderedDomContext.mjs +1 -1
- package/dist/plugin-api/index.d.mts +21 -4
- package/dist/plugin-api/resolveItemPositions.d.mts +3 -3
- package/dist/rezip-Bxiq4Z_R.d.mts +24 -0
- package/dist/{rustDisplayList-BJqaN9tt.d.mts → rustDisplayList-CwOoUn3t.d.mts} +2 -2
- package/dist/{rustMeasureSource-C0EZB055.d.mts → rustMeasureSource-CyBMcy1x.d.mts} +12 -4
- package/dist/{selectiveSave-CRh-_Y_C.d.mts → selectiveSave-r-NMK6aI.d.mts} +1 -22
- package/dist/styles/index.d.mts +2 -2
- package/dist/{styles-7e-mq3c-.d.mts → styles-AryxLAhx.d.mts} +1 -1
- package/dist/types/content.d.mts +2 -2
- package/dist/types/document.d.mts +6 -6
- package/dist/{types-C4A8mWjU.d.mts → types-B4jD0rrc.d.mts} +19 -2
- package/dist/utils/comments.d.mts +2 -2
- package/dist/utils/index.d.mts +7 -4
- package/dist/utils/index.mjs +1 -1
- package/dist/utils/stylePreview.d.mts +2 -2
- package/dist/wasm-G62X4WRW.mjs +1 -0
- package/dist/wasm-US6R7SWN.mjs +1 -0
- package/dist/wasm-edit.d.mts +246 -13
- package/dist/wasm-edit.mjs +1 -1
- package/dist/wasm-layout.d.mts +8 -1
- package/dist/wasm-layout.mjs +1 -1
- package/dist/yrs/index.d.mts +7 -5
- package/dist/yrs/index.mjs +1 -1
- package/dist/yrs/residentEngineWorker.mjs +1 -1
- package/package.json +2 -2
- package/dist/chunk-6LQJAKOC.mjs +0 -1
- package/dist/chunk-AFMVSI4Z.mjs +0 -57
- package/dist/chunk-GD4VNJ64.mjs +0 -1
- package/dist/chunk-WRWRCBLK.mjs +0 -1
- package/dist/chunk-WTFRNX5K.mjs +0 -1
- package/dist/wasm-7SOSHNGP.mjs +0 -1
- package/dist/wasm-ZQAVP7P2.mjs +0 -1
package/dist/layout/index.d.mts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { B as BundledFontProvider } from '../rustMeasureSource-
|
|
2
|
-
export { a as BundledFontProviderSource, E as EmbeddedFaceInput, F as FontScript, b as ResidentFontRequirement, R as ResidentMeasurementConfig, c as RustMeasureSource, d as RustTextEngine, e as createRustMeasureSource, g as getRustTextEngine } from '../rustMeasureSource-
|
|
3
|
-
import { f as SectionProperties, H as HeaderFooter } from '../content-
|
|
4
|
-
export { D as DrawingScene, V as DrawingSceneNode, b as ShapeEffect, aX as ShapeFillPaint, aY as ShapeStrokePaint, c as ShapeTextBodyProperties } from '../content-
|
|
1
|
+
import { B as BundledFontProvider } from '../rustMeasureSource-CyBMcy1x.mjs';
|
|
2
|
+
export { a as BundledFontProviderSource, E as EmbeddedFaceInput, F as FontScript, b as ResidentFontRequirement, R as ResidentMeasurementConfig, c as RustMeasureSource, d as RustTextEngine, e as createRustMeasureSource, g as getRustTextEngine } from '../rustMeasureSource-CyBMcy1x.mjs';
|
|
3
|
+
import { f as SectionProperties, H as HeaderFooter } from '../content-BzoC6bSz.mjs';
|
|
4
|
+
export { D as DrawingScene, V as DrawingSceneNode, b as ShapeEffect, aX as ShapeFillPaint, aY as ShapeStrokePaint, c as ShapeTextBodyProperties } from '../content-BzoC6bSz.mjs';
|
|
5
5
|
import { Document } from '../types/document.mjs';
|
|
6
|
-
import '../formatting-
|
|
6
|
+
import '../formatting-gqLFeJ9X.mjs';
|
|
7
7
|
import '../docx/wrapTypes.mjs';
|
|
8
|
-
import '../styles-
|
|
8
|
+
import '../styles-AryxLAhx.mjs';
|
|
9
9
|
|
|
10
10
|
/** Opt-in bundled-font provider resolution. @packageDocumentation */
|
|
11
11
|
|
package/dist/layout/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {d,e,g as g$1,c,f,b as b$1}from'../chunk-TTRUPDAB.mjs';var I={},R;function q(s){if(s===void 0)return;let e=typeof s=="string"?s:s.href,t=typeof location>"u"?void 0:location.href;try{return new URL(e,t)}catch{throw new TypeError(`configureDefaultFonts baseUrl must be absolute when no browser location exists: ${e}`)}}function U(){return I.fonts!==void 0||I.load!==void 0}function H(s){I={...s,baseUrl:q(s.baseUrl)},R=void 0,I.baseUrl!==void 0&&!U()&&console.warn("[configureDefaultFonts] a baseUrl on its own loads nothing \u2014 the face manifest lives in @betteroffice/fonts. Pass the module too: configureDefaultFonts({ fonts, baseUrl }).");}async function K(){let{baseUrl:s,fonts:e,load:t}=I;try{return (e??await t()).createFontProvider(s===void 0?void 0:{baseUrl:s})}catch(r){console.warn("[configureDefaultFonts] the configured font source failed to load",r);return}}function M(){if(!U())return Promise.resolve(void 0);if(R===void 0){let s=K();s.then(e=>{e===void 0&&R===s&&(R=void 0);}),R=s;}return R}function $(s){return s.trim().toLowerCase()}function C(s,e,t){return `${$(s)}|${e?1:0}|${t?1:0}`}function k(s,e,t,r){t.then(o=>{r(o)&&s.get(e)===t&&s.delete(e);},()=>{s.get(e)===t&&s.delete(e);});}var x=class{constructor(e,t){b$1(this,"sink");b$1(this,"bundledSource");b$1(this,"bundledPromise");b$1(this,"warnedFallback",false);b$1(this,"facesByFamily",new Map);b$1(this,"faceIds",new WeakMap);b$1(this,"bundledIds",new Map);b$1(this,"lastResortIds",new Map);b$1(this,"bufferIds",new WeakMap);b$1(this,"scriptIds",new Map);b$1(this,"scriptResults",new Map);b$1(this,"chains",new Map);b$1(this,"chainResults",new Map);b$1(this,"generation",0);this.sink=e,this.bundledSource=t?.bundled;}bundled(){if(this.bundledPromise===void 0){let e=this.bundledSource,t=Promise.resolve().then(()=>typeof e=="function"?e():e).catch(()=>{});t.then(r=>{r===void 0&&this.bundledPromise===t&&(this.bundledPromise=void 0);}),this.bundledPromise=t;}return this.bundledPromise}setEmbeddedFaces(e){this.generation++,this.facesByFamily=new Map;for(let t of e){let r=$(t.family),o=this.facesByFamily.get(r);o?o.push(t):this.facesByFamily.set(r,[t]);}this.chains=new Map,this.chainResults=new Map;}getFontIdChain(e,t,r){let o=C(e,t,r),i=this.chains.get(o);if(!i){let n=this.chains,a=this.chainResults,f=this.generation,u=this.resolveChain(e,t,r);u.then(d=>{f===this.generation&&(a.set(o,d),d.retryable&&n.get(o)===u&&n.delete(o));},()=>{n.get(o)===u&&n.delete(o);}),n.set(o,u),i=u;}return i.then(n=>n.ids)}getCachedFontIdChain(e,t,r,o=true){let i=C(e,t,r),n=this.chainResults.get(i);if(o&&n?.retryable){let a=this.chainResults;queueMicrotask(()=>{a.get(i)===n&&a.delete(i);});}return n?.ids}getScriptFallbackIds(e){let t=[...new Set(e)];return Promise.all(t.map(r=>this.resolveScript(r))).then(r=>{let o=[];for(let{id:i}of r)i!==null&&!o.includes(i)&&o.push(i);return o})}getCachedScriptFallbackIds(e,t=true){let r=this.scriptResults,o=[];for(let n of e){let a=r.get(n);if(!a)return;o.push([n,a]);}let i=[];for(let[n,a]of o){let{id:f}=a;f!==null&&!i.includes(f)&&i.push(f),t&&a.retryable&&queueMicrotask(()=>{r.get(n)===a&&r.delete(n);});}return i}clear(){this.generation++,this.bundledPromise=void 0,this.faceIds=new WeakMap,this.bundledIds=new Map,this.lastResortIds=new Map,this.bufferIds=new WeakMap,this.scriptIds=new Map,this.scriptResults=new Map,this.chains=new Map,this.chainResults=new Map;}async resolveChain(e,t,r){let o=C(e,t,r),i=[],n=false,a=this.pickEmbeddedFace(e,t,r);if(a){let l=await this.registerFace(a);l!==null?i.push(l):n=true;}let f=await this.bundled();f===void 0&&typeof this.bundledSource=="function"&&(n=true);let u;try{u=f?.resolve(e,t,r);}catch(l){n=true,console.warn(`[fontRegistry] bundled face resolver for "${e}" failed; falling back: ${l instanceof Error?l.message:String(l)}`);}if(u){let l=await this.registerBundled(o,u,e);l!==null&&!i.includes(l)&&i.push(l),l===null&&(n=true);}let d;try{d=f?.resolveLastResort?.(e,t,r);}catch(l){n=true,console.warn(`[fontRegistry] last-resort resolver for "${e}" failed; falling back: ${l instanceof Error?l.message:String(l)}`);}if(d){let l=await this.registerLastResort(o,d,e);l!==null&&!i.includes(l)&&i.push(l),l===null&&(n=true);}return i.length===0&&this.warnFallback(e,f!==void 0,u!==void 0||d!==void 0),{ids:i,retryable:n}}warnFallback(e,t,r){if(this.warnedFallback)return;this.warnedFallback=true;let o="Native measurement is unsupported; browser hosts fall back to measureText and may use different OS fonts, so pagination can vary. Reported once per registry.";console.warn(r?`[fontRegistry] no font bytes for "${e}" \u2014 the font provider resolved but every matching face failed to load. ${o} If a bundler inlined @betteroffice/fonts, mark it external so its asset URLs resolve.`:t?`[fontRegistry] no font bytes for "${e}" \u2014 the configured font provider has no matching face. Add coverage for this family. ${o}`:`[fontRegistry] no font bytes for "${e}" \u2014 no font provider is configured. Install @betteroffice/fonts and pass it with configureDefaultFonts({ fonts }). `+o);}pickEmbeddedFace(e,t,r){let o=this.facesByFamily.get($(e));if(!o)return;let i=t?"bold":"normal",n=r?"italic":"normal";return o.find(a=>a.weight===i&&a.style===n)??o.find(a=>a.weight==="normal"&&a.style==="normal")}registerBuffer(e){let t=this.bufferIds.get(e);if(!t){let r=this.bufferIds;t=Promise.resolve().then(()=>this.sink.registerFont(new Uint8Array(e))),k(r,e,t,()=>false),r.set(e,t);}return t}registerFace(e){let t=this.faceIds.get(e);if(!t){let r=this.faceIds;t=(async()=>{try{return await this.registerBuffer(e.data)}catch{return console.warn(`[fontRegistry] embedded face "${e.family}" (${e.weight} ${e.style}) was rejected by the text engine; falling back`),null}})(),k(r,e,t,o=>o===null),r.set(e,t);}return t}registerBundled(e,t,r){let o=this.bundledIds.get(e);if(!o){let i=this.bundledIds;o=(async()=>{try{let n=await t();return await this.registerBuffer(n)}catch(n){return console.warn(`[fontRegistry] bundled face for "${r}" failed to load or register; falling back: ${n instanceof Error?n.message:String(n)}`),null}})(),k(i,e,o,n=>n===null),i.set(e,o);}return o}registerLastResort(e,t,r){let o=this.lastResortIds.get(e);if(!o){let i=this.lastResortIds;o=(async()=>{try{let n=await t();return await this.registerBuffer(n)}catch{return console.warn(`[fontRegistry] last-resort base face for "${r}" failed to load or register; falling back`),null}})(),k(i,e,o,n=>n===null),i.set(e,o);}return o}resolveScript(e){let t=this.scriptIds.get(e);if(!t){let r=this.scriptIds,o=this.scriptResults;t=(async()=>{let i=null,n=false,a=await this.bundled();a===void 0&&typeof this.bundledSource=="function"&&(n=true);let f;try{f=a?.resolveScriptFallback?.(e,!1,!1);}catch(d){n=true,console.warn(`[fontRegistry] script-fallback resolver for "${e}" failed; falling back: ${d instanceof Error?d.message:String(d)}`);}if(f)try{let d=await f();i=await this.registerBuffer(d);}catch(d){n=true,console.warn(`[fontRegistry] script-fallback face for "${e}" failed to load or register; falling back: ${d instanceof Error?d.message:String(d)}`);}let u={id:i,retryable:n};return o.set(e,u),u})(),k(r,e,t,i=>i.retryable),r.set(e,t);}return t}};var L=null;function j(){return L??(L=import('../wasm-ZQAVP7P2.mjs').then(async s=>(await s.preloadLayoutWasm(),{registerFont:s.registerMeasureFont,clearFonts:s.clearMeasureFonts}))),L}function V(s){let e=new x({registerFont:r=>s.engine.registerFont(r)},{bundled:s.bundled??M}),t;return {setEmbeddedFaces(r){e.setEmbeddedFaces(r);},setCompat(r){t=r;},async prepareFontRequirements(r){return (await Promise.all(r.flatMap(i=>[(async()=>{try{return e.getCachedFontIdChain(i.family,i.bold,i.italic,!1)!==void 0?!1:(await e.getFontIdChain(i.family,i.bold,i.italic),!0)}catch{return false}})(),...Array.from(new Set(i.scripts??[]),async n=>{try{return e.getCachedScriptFallbackIds([n],!1)!==void 0?!1:(await e.getScriptFallbackIds([n]),!0)}catch{return false}})]))).some(Boolean)},measurementConfigForRequirements(r){let o=r.map(n=>({requirement:n,familyIds:e.getCachedFontIdChain(n.family,n.bold,n.italic,false),scriptIds:e.getCachedScriptFallbackIds(n.scripts??[],false)}));if(o.some(({familyIds:n,scriptIds:a})=>n===void 0||a===void 0))return;let i={};for(let{requirement:n}of o){let a=e.getCachedFontIdChain(n.family,n.bold,n.italic),f=e.getCachedScriptFallbackIds(n.scripts??[]);if(a===void 0||f===void 0)return;let u=Array.from(a);for(let d of f)u.includes(d)||u.push(d);u.length>0&&(i[n.key]=u);}return {fontChains:i,defaults:{fontSize:11,fontFamily:"Calibri"},compat:{noLeading:t?.noLeading??false,doNotExpandShiftReturn:t?.doNotExpandShiftReturn??false},authoritativeShaping:true}},clear(){e.clear();}}}var _=1056;function G(s,e){let t=s?.package.headers,r=s?.package.footers,o=e?.headerReferences?.find(F=>F.type==="default"),i=e?.headerReferences?.find(F=>F.type==="first"),n=e?.footerReferences?.find(F=>F.type==="default"),a=e?.footerReferences?.find(F=>F.type==="first"),f=o?t?.get(o.rId)??null:null,u=n?r?.get(n.rId)??null:null,d=i?t?.get(i.rId)??null:null,l=a?r?.get(a.rId)??null:null;return e?.titlePg||(f??(f=d),u??(u=l)),{header:f,footer:u,firstHeader:d,firstFooter:l}}var g,b,m,y,w,B,T,A=class{constructor(){d(this,B);d(this,g,0);d(this,b,0);d(this,m,false);d(this,y,false);d(this,w,new Set);}setStateSeq(e$1){e(this,g,e$1);}incrementStateSeq(){return ++g$1(this,g)._}getStateSeq(){return c(this,g)}getRenderSeq(){return c(this,b)}onLayoutStart(){e(this,m,true);}onLayoutComplete(e$1){e(this,b,e$1),e(this,m,false),c(this,y)&&this.isSafeToRender()&&(e(this,y,false),f(this,B,T).call(this));}isSafeToRender(){return !c(this,m)&&c(this,b)>=c(this,g)}requestRender(){this.isSafeToRender()?f(this,B,T).call(this):e(this,y,true);}onRender(e){return c(this,w).add(e),()=>c(this,w).delete(e)}reset(){e(this,g,0),e(this,b,0),e(this,m,false),e(this,y,false);}getDebugInfo(){return {stateSeq:c(this,g),renderSeq:c(this,b),layoutUpdating:c(this,m),hasPendingRender:c(this,y),isSafe:this.isSafeToRender()}}};g=new WeakMap,b=new WeakMap,m=new WeakMap,y=new WeakMap,w=new WeakMap,B=new WeakSet,T=function(){for(let e of c(this,w))try{e();}catch(t){console.error("LayoutSelectionGate: render callback error",t);}};export{_ as DEFAULT_PAGE_HEIGHT_PX,A as LayoutSelectionGate,H as configureDefaultFonts,V as createRustMeasureSource,j as getRustTextEngine,M as resolveDefaultFontProvider,G as resolveHeaderFooter};
|
|
1
|
+
import {d,e,g as g$1,c,f,b as b$1}from'../chunk-TTRUPDAB.mjs';var I={},R;function q(a){if(a===void 0)return;let e=typeof a=="string"?a:a.href,t=typeof location>"u"?void 0:location.href;try{return new URL(e,t)}catch{throw new TypeError(`configureDefaultFonts baseUrl must be absolute when no browser location exists: ${e}`)}}function U(){return I.fonts!==void 0||I.load!==void 0}function H(a){I={...a,baseUrl:q(a.baseUrl)},R=void 0,I.baseUrl!==void 0&&!U()&&console.warn("[configureDefaultFonts] a baseUrl on its own loads nothing \u2014 the face manifest lives in @betteroffice/fonts. Pass the module too: configureDefaultFonts({ fonts, baseUrl }).");}async function K(){let{baseUrl:a,fonts:e,load:t}=I;try{return (e??await t()).createFontProvider(a===void 0?void 0:{baseUrl:a})}catch(i){console.warn("[configureDefaultFonts] the configured font source failed to load",i);return}}function M(){if(!U())return Promise.resolve(void 0);if(R===void 0){let a=K();a.then(e=>{e===void 0&&R===a&&(R=void 0);}),R=a;}return R}function A(a){return a.trim().toLowerCase()}function C(a,e,t){return `${A(a)}|${e?1:0}|${t?1:0}`}function k(a,e,t,i){t.then(n=>{i(n)&&a.get(e)===t&&a.delete(e);},()=>{a.get(e)===t&&a.delete(e);});}var x=class{constructor(e,t){b$1(this,"sink");b$1(this,"bundledSource");b$1(this,"bundledPromise");b$1(this,"warnedFallback",false);b$1(this,"facesByFamily",new Map);b$1(this,"faceIds",new WeakMap);b$1(this,"bundledIds",new Map);b$1(this,"lastResortIds",new Map);b$1(this,"bufferIds",new WeakMap);b$1(this,"scriptIds",new Map);b$1(this,"scriptResults",new Map);b$1(this,"chains",new Map);b$1(this,"chainResults",new Map);b$1(this,"generation",0);this.sink=e,this.bundledSource=t?.bundled;}bundled(){if(this.bundledPromise===void 0){let e=this.bundledSource,t=Promise.resolve().then(()=>typeof e=="function"?e():e).catch(()=>{});t.then(i=>{i===void 0&&this.bundledPromise===t&&(this.bundledPromise=void 0);}),this.bundledPromise=t;}return this.bundledPromise}setEmbeddedFaces(e){this.generation++,this.facesByFamily=new Map;for(let t of e){let i=A(t.family),n=this.facesByFamily.get(i);n?n.push(t):this.facesByFamily.set(i,[t]);}this.chains=new Map,this.chainResults=new Map;}getFontIdChain(e,t,i){let n=C(e,t,i),o=this.chains.get(n);if(!o){let r=this.chains,s=this.chainResults,u=this.generation,f=this.resolveChain(e,t,i);f.then(l=>{u===this.generation&&(s.set(n,l),l.retryable&&r.get(n)===f&&r.delete(n));},()=>{r.get(n)===f&&r.delete(n);}),r.set(n,f),o=f;}return o.then(r=>r.ids)}getCachedFontIdChain(e,t,i,n=true){let o=C(e,t,i),r=this.chainResults.get(o);if(n&&r?.retryable){let s=this.chainResults;queueMicrotask(()=>{s.get(o)===r&&s.delete(o);});}return r?.ids}getScriptFallbackIds(e){let t=[...new Set(e)];return Promise.all(t.map(i=>this.resolveScript(i))).then(i=>{let n=[];for(let{id:o}of i)o!==null&&!n.includes(o)&&n.push(o);return n})}getCachedScriptFallbackIds(e,t=true){let i=this.scriptResults,n=[];for(let r of e){let s=i.get(r);if(!s)return;n.push([r,s]);}let o=[];for(let[r,s]of n){let{id:u}=s;u!==null&&!o.includes(u)&&o.push(u),t&&s.retryable&&queueMicrotask(()=>{i.get(r)===s&&i.delete(r);});}return o}clear(){this.generation++,this.bundledPromise=void 0,this.faceIds=new WeakMap,this.bundledIds=new Map,this.lastResortIds=new Map,this.bufferIds=new WeakMap,this.scriptIds=new Map,this.scriptResults=new Map,this.chains=new Map,this.chainResults=new Map;}async resolveChain(e,t,i){let n=C(e,t,i),o=[],r=false,s=this.pickEmbeddedFace(e,t,i);if(s){let d=await this.registerFace(s);d!==null?o.push(d):r=true;}let u=await this.bundled();u===void 0&&typeof this.bundledSource=="function"&&(r=true);let f;try{f=u?.resolve(e,t,i);}catch(d){r=true,console.warn(`[fontRegistry] bundled face resolver for "${e}" failed; falling back: ${d instanceof Error?d.message:String(d)}`);}if(f){let d=await this.registerBundled(n,f,e);d!==null&&!o.includes(d)&&o.push(d),d===null&&(r=true);}let l;try{l=u?.resolveLastResort?.(e,t,i,"word");}catch(d){r=true,console.warn(`[fontRegistry] last-resort resolver for "${e}" failed; falling back: ${d instanceof Error?d.message:String(d)}`);}if(l){let d=await this.registerLastResort(n,l,e);d!==null&&!o.includes(d)&&o.push(d),d===null&&(r=true);}return o.length===0&&this.warnFallback(e,u!==void 0,f!==void 0||l!==void 0),{ids:o,retryable:r}}warnFallback(e,t,i){if(this.warnedFallback)return;this.warnedFallback=true;let n="Native measurement is unsupported; browser hosts fall back to measureText and may use different OS fonts, so pagination can vary. Reported once per registry.";console.warn(i?`[fontRegistry] no font bytes for "${e}" \u2014 the font provider resolved but every matching face failed to load. ${n} If a bundler inlined @betteroffice/fonts, mark it external so its asset URLs resolve.`:t?`[fontRegistry] no font bytes for "${e}" \u2014 the configured font provider has no matching face. Add coverage for this family. ${n}`:`[fontRegistry] no font bytes for "${e}" \u2014 no font provider is configured. Install @betteroffice/fonts and pass it with configureDefaultFonts({ fonts }). `+n);}pickEmbeddedFace(e,t,i){let n=this.facesByFamily.get(A(e));if(!n)return;let o=t?"bold":"normal",r=i?"italic":"normal";return n.find(s=>s.weight===o&&s.style===r)??n.find(s=>s.weight==="normal"&&s.style==="normal")}measuredAs(e,t){let i=this.sink.registerSubstituteFont;if(!i)return e;try{return i.call(this.sink,e,t)}catch(n){return console.warn(`[fontRegistry] measurement view of the substitute for "${t}" failed; measuring with the substitute's own metrics: ${n instanceof Error?n.message:String(n)}`),e}}registerBuffer(e){let t=this.bufferIds.get(e);if(!t){let i=this.bufferIds;t=Promise.resolve().then(()=>this.sink.registerFont(new Uint8Array(e))),k(i,e,t,()=>false),i.set(e,t);}return t}registerFace(e){let t=this.faceIds.get(e);if(!t){let i=this.faceIds;t=(async()=>{try{return await this.registerBuffer(e.data)}catch{return console.warn(`[fontRegistry] embedded face "${e.family}" (${e.weight} ${e.style}) was rejected by the text engine; falling back`),null}})(),k(i,e,t,n=>n===null),i.set(e,t);}return t}registerBundled(e,t,i){let n=this.bundledIds.get(e);if(!n){let o=this.bundledIds;n=(async()=>{try{let r=await t();return this.measuredAs(await this.registerBuffer(r),i)}catch(r){return console.warn(`[fontRegistry] bundled face for "${i}" failed to load or register; falling back: ${r instanceof Error?r.message:String(r)}`),null}})(),k(o,e,n,r=>r===null),o.set(e,n);}return n}registerLastResort(e,t,i){let n=this.lastResortIds.get(e);if(!n){let o=this.lastResortIds;n=(async()=>{try{let r=await t();return this.measuredAs(await this.registerBuffer(r),i)}catch{return console.warn(`[fontRegistry] last-resort base face for "${i}" failed to load or register; falling back`),null}})(),k(o,e,n,r=>r===null),o.set(e,n);}return n}resolveScript(e){let t=this.scriptIds.get(e);if(!t){let i=this.scriptIds,n=this.scriptResults;t=(async()=>{let o=null,r=false,s=await this.bundled();s===void 0&&typeof this.bundledSource=="function"&&(r=true);let u;try{u=s?.resolveScriptFallback?.(e,!1,!1);}catch(l){r=true,console.warn(`[fontRegistry] script-fallback resolver for "${e}" failed; falling back: ${l instanceof Error?l.message:String(l)}`);}if(u)try{let l=await u();o=await this.registerBuffer(l);}catch(l){r=true,console.warn(`[fontRegistry] script-fallback face for "${e}" failed to load or register; falling back: ${l instanceof Error?l.message:String(l)}`);}let f={id:o,retryable:r};return n.set(e,f),f})(),k(i,e,t,o=>o.retryable),i.set(e,t);}return t}};var L=null;function j(){return L??(L=import('../wasm-G62X4WRW.mjs').then(async a=>(await a.preloadLayoutWasm(),{registerFont:a.registerMeasureFont,registerSubstituteFont:a.registerSubstituteMeasureFont,clearFonts:a.clearMeasureFonts}))),L}function V(a){let e=a.engine,t=new x({registerFont:n=>e.registerFont(n),...e.registerSubstituteFont&&{registerSubstituteFont:(n,o)=>e.registerSubstituteFont(n,o)}},{bundled:a.bundled??M}),i;return {setEmbeddedFaces(n){t.setEmbeddedFaces(n);},setCompat(n){i=n;},async prepareFontRequirements(n){return (await Promise.all(n.flatMap(r=>[(async()=>{try{return t.getCachedFontIdChain(r.family,r.bold,r.italic,!1)!==void 0?!1:(await t.getFontIdChain(r.family,r.bold,r.italic),!0)}catch{return false}})(),...Array.from(new Set(r.scripts??[]),async s=>{try{return t.getCachedScriptFallbackIds([s],!1)!==void 0?!1:(await t.getScriptFallbackIds([s]),!0)}catch{return false}})]))).some(Boolean)},measurementConfigForRequirements(n){let o=n.map(s=>({requirement:s,familyIds:t.getCachedFontIdChain(s.family,s.bold,s.italic,false),scriptIds:t.getCachedScriptFallbackIds(s.scripts??[],false)}));if(o.some(({familyIds:s,scriptIds:u})=>s===void 0||u===void 0))return;let r={};for(let{requirement:s}of o){let u=t.getCachedFontIdChain(s.family,s.bold,s.italic),f=t.getCachedScriptFallbackIds(s.scripts??[]);if(u===void 0||f===void 0)return;let l=Array.from(u);for(let d of f)l.includes(d)||l.push(d);l.length>0&&(r[s.key]=l);}return {fontChains:r,defaults:{fontSize:11,fontFamily:"Calibri"},compat:{noLeading:i?.noLeading??false,doNotExpandShiftReturn:i?.doNotExpandShiftReturn??false},authoritativeShaping:true}},clear(){t.clear();}}}var _=1056;function G(a,e){let t=a?.package.headers,i=a?.package.footers,n=e?.headerReferences?.find(F=>F.type==="default"),o=e?.headerReferences?.find(F=>F.type==="first"),r=e?.footerReferences?.find(F=>F.type==="default"),s=e?.footerReferences?.find(F=>F.type==="first"),u=n?t?.get(n.rId)??null:null,f=r?i?.get(r.rId)??null:null,l=o?t?.get(o.rId)??null:null,d=s?i?.get(s.rId)??null:null;return e?.titlePg||(u??(u=l),f??(f=d)),{header:u,footer:f,firstHeader:l,firstFooter:d}}var g,b,m,y,w,B,T,$=class{constructor(){d(this,B);d(this,g,0);d(this,b,0);d(this,m,false);d(this,y,false);d(this,w,new Set);}setStateSeq(e$1){e(this,g,e$1);}incrementStateSeq(){return ++g$1(this,g)._}getStateSeq(){return c(this,g)}getRenderSeq(){return c(this,b)}onLayoutStart(){e(this,m,true);}onLayoutComplete(e$1){e(this,b,e$1),e(this,m,false),c(this,y)&&this.isSafeToRender()&&(e(this,y,false),f(this,B,T).call(this));}isSafeToRender(){return !c(this,m)&&c(this,b)>=c(this,g)}requestRender(){this.isSafeToRender()?f(this,B,T).call(this):e(this,y,true);}onRender(e){return c(this,w).add(e),()=>c(this,w).delete(e)}reset(){e(this,g,0),e(this,b,0),e(this,m,false),e(this,y,false);}getDebugInfo(){return {stateSeq:c(this,g),renderSeq:c(this,b),layoutUpdating:c(this,m),hasPendingRender:c(this,y),isSafe:this.isSafeToRender()}}};g=new WeakMap,b=new WeakMap,m=new WeakMap,y=new WeakMap,w=new WeakMap,B=new WeakSet,T=function(){for(let e of c(this,w))try{e();}catch(t){console.error("LayoutSelectionGate: render callback error",t);}};export{_ as DEFAULT_PAGE_HEIGHT_PX,$ as LayoutSelectionGate,H as configureDefaultFonts,V as createRustMeasureSource,j as getRustTextEngine,M as resolveDefaultFontProvider,G as resolveHeaderFooter};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { b as LayoutBlock, B as BlockExtent } from '../../types-
|
|
2
|
-
export { A as AnchoredObjectPositionInput, d as BlockId, e as BorderStyle, C as CellBorderSpec, f as CellBorders, g as ChartBlock, h as ChartExtent, i as ChartFragment, j as ColumnBreakBlock, k as ColumnBreakExtent, l as ColumnLayout, D as DEFAULT_TEXTBOX_MARGINS, m as DEFAULT_TEXTBOX_WIDTH, n as DocumentPosition, o as FieldRun, p as FloatingTablePosition, F as FootnoteContent, q as FootnoteRenderItem, r as Fragment, s as FragmentBase, H as HeaderFooterContent, t as HeaderFooterContentHeights, u as HeaderFooterLayout, v as HitTestResult, w as HyperlinkInfo, I as ImageBlock, x as ImageExtent, y as ImageFragment, z as ImageRun, E as ImageRunPosition, G as InlineSdtWidget, L as Layout, a as LayoutOptions, J as LineBreakRun, K as ListNumPr, N as NoteAreaContract, M as NoteLayoutItem, O as NoteSettingsContract, P as Page, Q as PageBorderContract, S as PageBreakBlock, T as PageBreakExtent, U as PageGeometry, V as PageHeaderFooterRefs, W as PageMargins, X as PageNumberingContract, Y as ParagraphAttrs, Z as ParagraphBlock, _ as ParagraphBorders, $ as ParagraphExtent, a0 as ParagraphFragment, a1 as ParagraphIndent, a2 as ParagraphSpacing, R as ResolvedLine, c as ResolvedSegment, a3 as Run, a4 as RunFontSlots, a5 as RunFormatting, a6 as RunLanguageSlots, a7 as SdtGroup, a8 as SectionBreakBlock, a9 as SectionBreakExtent, aa as ShapeBlock, ab as ShapeBlockFill, ac as ShapeBlockStroke, ad as ShapeBlockTransform, ae as ShapeExtent, af as ShapeFragment, ag as TabAlignment, ah as TabRun, ai as TabStop, aj as TableBlock, ak as TableCell, al as TableCellExtent, am as TableExtent, an as TableFragment, ao as TableRow, ap as TableRowExtent, aq as TextBoxBlock, ar as TextBoxExtent, as as TextBoxFragment, at as TextRun, au as TypesetBidiSlice, av as TypesetClusterAdvance, aw as TypesetRow, ax as TypesetRowSegment, ay as TypesetRunAdvance, az as WrapTextDirection, aA as assertExhaustiveLayoutBlock, aB as isTextWrappingFloatingImageRun, aC as pageGeometryFromPage, aD as resolveAnchoredObjectVerticalTop } from '../../types-
|
|
3
|
-
import '../../content-
|
|
4
|
-
import '../../formatting-
|
|
1
|
+
import { b as LayoutBlock, B as BlockExtent } from '../../types-B4jD0rrc.mjs';
|
|
2
|
+
export { A as AnchoredObjectPositionInput, d as BlockId, e as BorderStyle, C as CellBorderSpec, f as CellBorders, g as ChartBlock, h as ChartExtent, i as ChartFragment, j as ColumnBreakBlock, k as ColumnBreakExtent, l as ColumnLayout, D as DEFAULT_TEXTBOX_MARGINS, m as DEFAULT_TEXTBOX_WIDTH, n as DocumentPosition, o as FieldRun, p as FloatingTablePosition, F as FootnoteContent, q as FootnoteRenderItem, r as Fragment, s as FragmentBase, H as HeaderFooterContent, t as HeaderFooterContentHeights, u as HeaderFooterLayout, v as HitTestResult, w as HyperlinkInfo, I as ImageBlock, x as ImageExtent, y as ImageFragment, z as ImageRun, E as ImageRunPosition, G as InlineSdtWidget, L as Layout, a as LayoutOptions, J as LineBreakRun, K as ListNumPr, N as NoteAreaContract, M as NoteLayoutItem, O as NoteSettingsContract, P as Page, Q as PageBorderContract, S as PageBreakBlock, T as PageBreakExtent, U as PageGeometry, V as PageHeaderFooterRefs, W as PageMargins, X as PageNumberingContract, Y as ParagraphAttrs, Z as ParagraphBlock, _ as ParagraphBorders, $ as ParagraphExtent, a0 as ParagraphFragment, a1 as ParagraphIndent, a2 as ParagraphSpacing, R as ResolvedLine, c as ResolvedSegment, a3 as Run, a4 as RunFontSlots, a5 as RunFormatting, a6 as RunLanguageSlots, a7 as SdtGroup, a8 as SectionBreakBlock, a9 as SectionBreakExtent, aa as ShapeBlock, ab as ShapeBlockFill, ac as ShapeBlockStroke, ad as ShapeBlockTransform, ae as ShapeExtent, af as ShapeFragment, ag as TabAlignment, ah as TabRun, ai as TabStop, aj as TableBlock, ak as TableCell, al as TableCellExtent, am as TableExtent, an as TableFragment, ao as TableRow, ap as TableRowExtent, aq as TextBoxBlock, ar as TextBoxExtent, as as TextBoxFragment, at as TextRun, au as TypesetBidiSlice, av as TypesetClusterAdvance, aw as TypesetRow, ax as TypesetRowSegment, ay as TypesetRunAdvance, az as WrapTextDirection, aA as assertExhaustiveLayoutBlock, aB as isTextWrappingFloatingImageRun, aC as pageGeometryFromPage, aD as resolveAnchoredObjectVerticalTop } from '../../types-B4jD0rrc.mjs';
|
|
3
|
+
import '../../content-BzoC6bSz.mjs';
|
|
4
|
+
import '../../formatting-gqLFeJ9X.mjs';
|
|
5
5
|
import '../../docx/wrapTypes.mjs';
|
|
6
6
|
|
|
7
7
|
interface MeasuredBlock {
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import { a as DisplayPage, b as DisplayPrimitive, D as DisplayList, G as GlyphRunPrimitive, L as LinePrimitive, T as TextRunPrimitive } from '../../frameDelta-
|
|
2
|
-
export { c as DecodedFrameDelta, d as DecorationPrimitive, e as DisplayBounds, f as DocAttrs, F as FRAME_DELTA_HEADER_BYTES, g as FRAME_DELTA_PAGE_OP_BYTES, h as FRAME_DELTA_VERSION, i as FrameDeltaError, j as FrameDeltaErrorCode, k as FramePageOperation, H as HfRegion, I as ImagePrimitive, P as PositionedGlyph, l as RectPrimitive, R as RetainedFrame, m as RetainedFramePage, n as TableCellRef, o as applyFrameDelta, p as applyFrameDeltaOwned, q as decodeFrameDelta } from '../../frameDelta-
|
|
3
|
-
export { a as DisplayListBuildInputs, D as DisplayListHeadersFooters, b as DisplayListHfVariant, c as DisplayListPictureWatermark, d as DisplayListTextWatermark, e as DisplayListWatermark, f as RustDisplayFrameResult, g as RustDisplayListEngine, R as RustDisplayListQueryEngine, h as RustDisplayListSourceError, i as RustDisplayListSourceErrorStage, j as buildRustDisplayFrame, k as buildRustDisplayList, l as encodeDisplayListFrameExtras, m as loadRustDisplayListQueryEngine } from '../../rustDisplayList-
|
|
4
|
-
import { a as DisplayListQueries, b as DisplayListRegionHit, D as DisplayListRect } from '../../displayListQueries-
|
|
5
|
-
export { c as DisplayListHitRegion, d as DisplayListHoverTarget, e as DisplayListImageGeometry, f as DisplayListImageRegion, g as DisplayListParagraphGeometry, h as DisplayListQuerySourceState, i as DisplayListVerticalMove, j as DisplayListVisualLine, L as LocatedImagePrimitive, R as ResidentDisplayListQueryEngine, k as captureInlinePositionEmuFromDisplayList, l as createDisplayListQueries, m as findImagePrimitiveAtPoint, n as findImagePrimitiveByDocPos, o as isDisplayListQuerySourceDead, p as onDisplayListQuerySourceFailure } from '../../displayListQueries-
|
|
6
|
-
import { u as YrsLoc, Y as YrsSession, v as YrsRevisionInfo } from '../../index-
|
|
1
|
+
import { a as DisplayPage, b as DisplayPrimitive, D as DisplayList, G as GlyphRunPrimitive, L as LinePrimitive, T as TextRunPrimitive } from '../../frameDelta-CVt5FAXT.mjs';
|
|
2
|
+
export { c as DecodedFrameDelta, d as DecorationPrimitive, e as DisplayBounds, f as DocAttrs, F as FRAME_DELTA_HEADER_BYTES, g as FRAME_DELTA_PAGE_OP_BYTES, h as FRAME_DELTA_VERSION, i as FrameDeltaError, j as FrameDeltaErrorCode, k as FramePageOperation, H as HfRegion, I as ImagePrimitive, P as PositionedGlyph, l as RectPrimitive, R as RetainedFrame, m as RetainedFramePage, n as TableCellRef, o as applyFrameDelta, p as applyFrameDeltaOwned, q as decodeFrameDelta, r as displayPageRevision } from '../../frameDelta-CVt5FAXT.mjs';
|
|
3
|
+
export { a as DisplayListBuildInputs, D as DisplayListHeadersFooters, b as DisplayListHfVariant, c as DisplayListPictureWatermark, d as DisplayListTextWatermark, e as DisplayListWatermark, f as RustDisplayFrameResult, g as RustDisplayListEngine, R as RustDisplayListQueryEngine, h as RustDisplayListSourceError, i as RustDisplayListSourceErrorStage, j as buildRustDisplayFrame, k as buildRustDisplayList, l as encodeDisplayListFrameExtras, m as loadRustDisplayListQueryEngine } from '../../rustDisplayList-CwOoUn3t.mjs';
|
|
4
|
+
import { a as DisplayListQueries, b as DisplayListRegionHit, D as DisplayListRect } from '../../displayListQueries-BYFrBkw5.mjs';
|
|
5
|
+
export { c as DisplayListHitRegion, d as DisplayListHoverTarget, e as DisplayListImageGeometry, f as DisplayListImageRegion, g as DisplayListParagraphGeometry, h as DisplayListQuerySourceState, i as DisplayListVerticalMove, j as DisplayListVisualLine, L as LocatedImagePrimitive, R as ResidentDisplayListQueryEngine, k as captureInlinePositionEmuFromDisplayList, l as createDisplayListQueries, m as findImagePrimitiveAtPoint, n as findImagePrimitiveByDocPos, o as isDisplayListQuerySourceDead, p as onDisplayListQuerySourceFailure } from '../../displayListQueries-BYFrBkw5.mjs';
|
|
6
|
+
import { u as YrsLoc, Y as YrsSession, v as YrsRevisionInfo } from '../../index-BbZwdkPz.mjs';
|
|
7
7
|
import { TrackedChangeEntry } from '../../utils/comments.mjs';
|
|
8
|
-
import '../../formatting-
|
|
9
|
-
import '../../content-
|
|
8
|
+
import '../../formatting-gqLFeJ9X.mjs';
|
|
9
|
+
import '../../content-BzoC6bSz.mjs';
|
|
10
10
|
import '../../docx/wrapTypes.mjs';
|
|
11
|
-
import '../../types-
|
|
11
|
+
import '../../types-B4jD0rrc.mjs';
|
|
12
12
|
import '../pagination/index.mjs';
|
|
13
13
|
import '../../types/document.mjs';
|
|
14
|
-
import '../../styles-
|
|
14
|
+
import '../../styles-AryxLAhx.mjs';
|
|
15
|
+
import '../../pagedExport-D3E4jZ-B.mjs';
|
|
16
|
+
import '../../rezip-Bxiq4Z_R.mjs';
|
|
15
17
|
|
|
16
18
|
/** a cached glyph: its outline path (font units) plus the font's units-per-em. */
|
|
17
19
|
interface GlyphOutline {
|
|
@@ -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,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-WRWRCBLK.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-ZQAVP7P2.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));re(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`,re(i,e.primitives,r,-e.y,n),i}function re(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);re(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))),re(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&&re(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-ZQAVP7P2.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)}},le=(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,ce=null,Pt=()=>{if(ce)return ce;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),ue=Math.max(S.x+S.width,x.x+x.w),me=Math.max(S.y+S.height,x.y+x.h);S.x=M,S.y=A,S.width=ue-M,S.height=me-A,S.from=Math.min(S.from,f$1.docStart),S.to=Math.max(S.to,f$1.docEnd);}return ce=new Map([...d].map(([m,f])=>[m,[...f.values()]])),ce},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,de=null,Ue=()=>{if(de)return de;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((pe,Ht)=>Math.max(pe,Ht.y),-1/0);if(!Number.isFinite(I))continue;let S=Ie(x)??`anonymous:${b++}`,M=f(x),A=f$1.find(pe=>pe.identity===S&&Math.abs(pe.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 ue=Math.min(A.x,M.x),me=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=ue,A.y=me,A.width=Ct-ue,A.height=Bt-me,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 de=d,de},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:le,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 oe(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 se(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=oe(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=oe(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-${se(p.revisionId)}`,n.locToDisplayPoint({story:p.story,...p.range.start}));return a}function Kn(e,t,r,n){let i=oe(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:se(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 ae(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=ae([...e.cells.values()].map(i=>i.row)),r=ae(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=ae(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=ae(L.verticalLines),B=St(L),w=ae([...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,le=i<T+p&&i>=T-p;if(!(!Z&&!le)){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(le&&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,oe 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,se as yrsIdToNumericId};
|
|
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};
|