@docx-editor.dev/core 2.1.3 → 2.2.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 +4 -5
- package/dist/automation.cjs +1 -1
- package/dist/automation.js +1 -1
- package/dist/binding.cjs +1 -1
- package/dist/binding.js +1 -1
- package/dist/chunk-5OSFUHGF.js +10 -0
- package/dist/chunk-C24AINST.js +12 -0
- package/dist/{chunk-O2WQY7IT.cjs → chunk-CY47CFM5.cjs} +5 -5
- package/dist/chunk-EUTHPVTG.cjs +2 -0
- package/dist/chunk-FJCBZ5BL.cjs +12 -0
- package/dist/{chunk-REZUWYB7.js → chunk-GRGRIDHF.js} +1 -1
- package/dist/{chunk-PC76F2HR.cjs → chunk-KZ5HPHW6.cjs} +1 -1
- package/dist/{chunk-TBBXCC7D.js → chunk-LVZSKP2F.js} +3 -3
- package/dist/{chunk-HBL3NNH5.cjs → chunk-MIUELYVA.cjs} +1 -1
- package/dist/chunk-MO7GAUO7.js +2 -0
- package/dist/chunk-NCGKMEKU.js +2 -0
- package/dist/chunk-PFTVNFMI.js +1 -0
- package/dist/chunk-QVGTZUEV.js +12 -0
- package/dist/chunk-T2LVH6D3.cjs +2 -0
- package/dist/chunk-UAOJHPQ4.cjs +10 -0
- package/dist/chunk-VXEF32A5.cjs +12 -0
- package/dist/contracts/editor.cjs +1 -1
- package/dist/contracts/editor.d.cts +3 -3
- package/dist/contracts/editor.d.ts +3 -3
- package/dist/contracts/editor.js +1 -1
- package/dist/contracts/interaction.d.cts +4 -4
- package/dist/contracts/interaction.d.ts +4 -4
- package/dist/{editor-BGBZn9c9.d.cts → editor-25RmHnxu.d.cts} +64 -2
- package/dist/{editor-DQRRxKMG.d.ts → editor-C8oaTHr3.d.ts} +64 -2
- package/dist/editor.cjs +1 -1
- package/dist/editor.css +86 -11
- package/dist/editor.d.cts +51 -11
- package/dist/editor.d.ts +51 -11
- package/dist/editor.js +1 -1
- package/dist/{index-DptRpcqa.d.cts → index-CiEakUbq.d.cts} +32 -5
- package/dist/{index-BzqHsd4Y.d.ts → index-gvw4VGE9.d.ts} +32 -5
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +6 -6
- package/dist/index.d.ts +6 -6
- package/dist/index.js +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.d.cts +95 -61
- package/dist/layout.d.ts +95 -61
- package/dist/layout.js +1 -1
- package/dist/output.cjs +1 -1
- package/dist/output.d.cts +4 -101
- package/dist/output.d.ts +4 -101
- package/dist/output.js +1 -1
- package/dist/{semantic-cell-selection-DwLB71fF.d.cts → semantic-cell-selection-CI3loBKq.d.cts} +2 -2
- package/dist/{semantic-cell-selection-D_8RbPII.d.ts → semantic-cell-selection-Cx8P64j2.d.ts} +2 -2
- package/dist/{semantic-interaction-DqcEonqD.d.cts → semantic-interaction-B4HrJFQ2.d.cts} +1 -1
- package/dist/{semantic-interaction-CXH2wFqi.d.ts → semantic-interaction-unGpRNCk.d.ts} +1 -1
- package/dist/semantic-paint-BBNaqr1s.d.ts +133 -0
- package/dist/semantic-paint-DdGGra4m.d.cts +133 -0
- package/dist/{semantic-records-zTC0_1zi.d.ts → semantic-records-BC4bIKKL.d.ts} +28 -32
- package/dist/{semantic-records-COVFW5aS.d.cts → semantic-records-DC6V1U3T.d.cts} +28 -32
- package/dist/{shaped-measurer-CZXL-a6v.d.ts → shaped-measurer-ChSWkuAT.d.ts} +1 -1
- package/dist/{shaped-measurer-AFnFxoot.d.cts → shaped-measurer-SIqZp-Ty.d.cts} +1 -1
- package/dist/store.cjs +1 -1
- package/dist/store.d.cts +35 -14
- package/dist/store.d.ts +35 -14
- package/dist/store.js +1 -1
- package/package.json +2 -2
- package/dist/chunk-2DTQDAN7.js +0 -2
- package/dist/chunk-3HEU7MHP.js +0 -12
- package/dist/chunk-3JKQE4QJ.cjs +0 -2
- package/dist/chunk-6WIIHJFY.js +0 -1
- package/dist/chunk-BZK64YU3.cjs +0 -10
- package/dist/chunk-EDLUMMQN.cjs +0 -12
- package/dist/chunk-JQFDLZXQ.cjs +0 -2
- package/dist/chunk-QRAUDDVY.js +0 -2
- package/dist/chunk-STCITBJK.js +0 -12
- package/dist/chunk-TSXT537P.cjs +0 -12
- package/dist/chunk-Y7TA7TPF.js +0 -10
- package/dist/semantic-paint-drawings-B5Wk2so5.d.ts +0 -21
- package/dist/semantic-paint-drawings-x8g44lD_.d.cts +0 -21
package/dist/chunk-3JKQE4QJ.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkTSXT537P_cjs=require('./chunk-TSXT537P.cjs');var ke=8;function Z(t){let e=new Map;for(let n of chunkTSXT537P_cjs.T(t))for(let o of n.spans)for(let r of o.revisions??[])e.has(r.author)||e.set(r.author,e.size);return e}function J(t,e){if(t===void 0||t.length===0)return null;let n=t[t.length-1],o=t.some(i=>i.kind==="delete"||i.kind==="moveFrom"),r=n.kind,a=r==="delete"||r==="moveFrom"?"line-through":r==="insert"||r==="moveTo"?"underline":null;return {attribution:n,line:o&&a==="underline"?"line-through":a,decorationStyle:r==="moveFrom"||r==="moveTo"?"double":r==="insert"?"dashed":"solid",color:o?"var(--doc-revision-deletion)":"var(--doc-revision-insertion)",authorColor:`var(--doc-review-author-${(e?.get(n.author)??0)%ke})`,deleted:o}}function Q(t,e,n,o,r,a){for(let i of [n.footnotes,n.endnotes])i&&e.append(Ie(t,n,i,o,r,a));}function Ie(t,e,n,o,r,a){let i=t.createElement("div");if(i.className="docx-notes",i.dataset.docxNotes=n.kind,i.dataset.docxNotesPlacement=n.placement,i.style.position="absolute",i.style.left=`${(n.box.x-e.box.x)*o.scale}px`,i.style.top=`${(n.box.y-e.box.y)*o.scale}px`,i.style.width=`${n.box.width*o.scale}px`,i.style.height=`${n.box.height*o.scale}px`,n.separator){let s=t.createElement("div");s.className="docx-note-separator",s.dataset.docxNoteSeparator=n.separator.kind,s.setAttribute("contenteditable","false"),s.setAttribute("aria-hidden","true"),s.style.position="absolute",s.style.left=`${(n.separator.box.x-n.box.x)*o.scale}px`,s.style.top=`${(n.separator.box.y-n.box.y)*o.scale}px`,s.style.width=`${n.separator.box.width*o.scale}px`,s.style.height=`${Math.max(n.separator.box.height,.75)*o.scale}px`;let d=n.separator.ruleStyle;if(d||n.separator.synthetic||n.separator.fragments.length===0)Ae(s,t,d??"single",o.scale);else for(let l of n.separator.fragments)s.append(l.kind==="table"?a(t,l,o):r(t,l,o));i.append(s);}for(let s of n.notes){let d=t.createElement("div");d.className="docx-note",d.dataset.docxNote=s.noteKind,d.dataset.docxNoteId=String(s.noteId),d.dataset.docxNoteScope=s.scopeId,s.mark!==null&&(d.dataset.docxNoteMark=s.mark),s.continuation&&(d.dataset.docxNoteContinuation=""),d.setAttribute("role","doc-footnote"),d.style.position="absolute",d.style.left=`${(s.box.x-n.box.x)*o.scale}px`,d.style.top=`${(s.box.y-n.box.y)*o.scale}px`,d.style.width=`${s.box.width*o.scale}px`,d.style.height=`${s.box.height*o.scale}px`;for(let l of s.fragments)d.append(l.kind==="table"?a(t,l,o):r(t,l,o));i.append(d);}return i}function Ae(t,e,n,o){t.dataset.docxNoteRule=n;let r=Math.max(1,o*.75);if(n==="single"){t.style.borderTop=`${r}px solid currentColor`,t.style.opacity="0.85";return}t.style.opacity="0.85";let a=Math.max(1,o*1.25);for(let i of [0,r+a]){let s=e.createElement("div");s.setAttribute("aria-hidden","true"),s.style.position="absolute",s.style.left="0",s.style.right="0",s.style.top=`${i}px`,s.style.height="0",s.style.borderTop=`${r}px solid currentColor`,t.append(s);}}var ee=Object.freeze({"image/svg+xml":"SVG","image/tiff":"TIFF","image/x-emf":"EMF","image/x-wmf":"WMF",unknown:"Unknown"}),H=new WeakMap,B=new WeakMap,He=256;function ne(t,e){let n=H.get(t);if(n)return n;let o=new Map,r=new Map;return n=Object.freeze({urlForReady(a,i){let s=o.get(a.resourceKey);if(s)return s;let d=e.create(a,i);return o.set(a.resourceKey,d),d},imageFor(a,i,s){let d=r.get(a);if(d&&d.resourceKey===i)return d.element;let l=s.createElement("img");return r.size<He&&r.set(a,{element:l,resourceKey:i,...d?.readyElement?{readyElement:d.readyElement}:{}}),l},imageForPending(a){return r.get(a)?.element??null},readyElementFor(a){return r.get(a)?.readyElement??null},rememberReadyElement(a,i){let s=r.get(a);s&&r.set(a,{...s,readyElement:i});},reconcile(a,i){for(let[s,d]of o)a.has(s)||(e.revoke(d),o.delete(s));for(let[s,d]of r)i.has(s)||(d.element.removeAttribute("src"),r.delete(s));},revokeAll(){for(let a of o.values())e.revoke(a);o.clear();for(let a of r.values())a.element.removeAttribute("src");r.clear();}}),H.set(t,n),n}function O(t,e){return `${e.paintInstance??""}|${t.drawingNodeId}`}function kt(t){H.get(t)?.revokeAll(),H.delete(t);}function R(t){return Number.isFinite(t)?String(t):"0"}function oe(t,e){if(t.length<3||e.width<=0||e.height<=0)return null;let n=[];for(let o of t){if(!Number.isFinite(o.x)||!Number.isFinite(o.y))return null;let r=(o.x-e.x)/e.width*100,a=(o.y-e.y)/e.height*100;n.push(`${R(r)}% ${R(a)}%`);}return `polygon(${n.join(", ")})`}function re(t){let e=t.geometry.contentBounds;return chunkTSXT537P_cjs.lb({transform:t.transform,contentWidth:e.width,contentHeight:e.height})}function ae(t){let{effects:e}=t,n=[];if(e.grayscale&&n.push("grayscale(1)"),e.brightness!==0&&Number.isFinite(e.brightness)){let o=1+e.brightness/100;Number.isFinite(o)&&n.push(`brightness(${R(Math.max(0,o))})`);}if(e.contrast!==0&&Number.isFinite(e.contrast)){let o=1+e.contrast/100;Number.isFinite(o)&&n.push(`contrast(${R(Math.max(0,o))})`);}return n.length>0?n.join(" "):void 0}function ie(t,e){let{crop:n}=t,o=Math.max(0,Math.min(1,n.left)),r=Math.max(0,Math.min(1,n.top)),a=Math.max(0,Math.min(1,n.right)),i=Math.max(0,Math.min(1,n.bottom)),s=Math.max(1e-4,1-o-a),d=Math.max(1e-4,1-r-i);return Object.freeze({width:`${R(1/s*100)}%`,height:`${R(1/d*100)}%`,left:`${R(-o/s*100)}%`,top:`${R(-r/d*100)}%`})}function Me(t,e){let{resource:n}=t;switch(n.kind){case "external":return e.externalResource;case "missing":return e.missingResource;case "pending":return e.pendingResource;case "unrenderable":switch(n.reason){case "unsupported-format":return e.unsupportedFormat(ee[n.mime]??ee.unknown);case "non-picture-graphic":return e.nonPictureGraphic(t.placeholderGraphicKind??"graphic");case "signature-mismatch":return e.contentMismatch;case "decode-failed":return e.decodeFailed;case "resource-limit":return e.resourceLimit;default:return e.invalidResource}default:return e.invalidResource}}function D(t,e,n){let{accessibility:o}=e;o.hidden||(t.setAttribute("role",n?"link":"img"),o.label?t.setAttribute("aria-label",o.label):n||t.setAttribute("aria-hidden","true"));}function T(t,e,n,o){let r=o?.x??0,a=o?.y??0;t.style.position="absolute",t.style.left=`${(e.x-r)*n}px`,t.style.top=`${(e.y-a)*n}px`,t.style.width=`${e.width*n}px`,t.style.height=`${e.height*n}px`,t.style.boxSizing="border-box",t.style.overflow="hidden",t.style.pointerEvents="auto";}function Ce(t,e,n,o,r){let a=t.paintBounds,i=t.geometry.contentBounds,s=ie(t);return [o,n.scale,r?.x??0,r?.y??0,a.x,a.y,a.width,a.height,i.x,i.y,i.width,i.height,oe(t.geometry.clipPolygon??[],a)??"",ae(t)??"",re(t)??"",s.width,s.height,s.left,s.top,n.inertLinks?"":t.hyperlinkHref??"",t.accessibility.label??""].join("|")}function L(t,e,n,o){let r=t.createElement("div");r.className="docx-drawing docx-drawing-placeholder",r.dataset.drawingNodeId=e.drawingNodeId,T(r,e.paintBounds,n.scale,o);let a=t.createElement("div");a.className="docx-drawing-placeholder-card";let i=t.createElement("span");return i.className="docx-drawing-placeholder-label",i.textContent=Me(e,n.strings),a.append(i),r.append(a),e.hyperlinkHref&&!n.inertLinks?(r.dataset.docxDrawingLink=e.drawingNodeId,r.dataset.docxDrawingLinkKind="external",r.dataset.docxDrawingLinkHref=e.hyperlinkHref,r.setAttribute("tabindex","-1"),D(r,e,true)):D(r,e,false),r}function Fe(t,e,n,o,r,a){let i=e.resource;if(i.kind!=="ready")return L(t,e,n,a);let s=O(e,n),d=r?.readyElementFor?.(s)??t.createElement("div"),l=Ce(e,i,n,o,a);if(B.get(d)===l)return d;d.className="docx-drawing docx-drawing-ready",d.style.cssText="",d.dataset.drawingNodeId=e.drawingNodeId,delete d.dataset.docxDrawingLink,delete d.dataset.docxDrawingLinkKind,delete d.dataset.docxDrawingLinkHref,d.removeAttribute("aria-hidden"),d.removeAttribute("aria-label"),d.removeAttribute("role"),d.removeAttribute("tabindex"),T(d,e.paintBounds,n.scale,a);let c=oe(e.geometry.clipPolygon??[],e.paintBounds);c&&(d.style.clipPath=c);let y=t.createElement("div");y.className="docx-drawing-image-frame",y.style.position="absolute";let h=e.geometry.contentBounds,p=e.paintBounds;y.style.left=`${(h.x-p.x)*n.scale}px`,y.style.top=`${(h.y-p.y)*n.scale}px`,y.style.width=`${h.width*n.scale}px`,y.style.height=`${h.height*n.scale}px`;let u=ae(e);u&&(y.style.filter=u);let v=t.createElement("div");v.className="docx-drawing-transform-stage",v.style.position="relative",v.style.width="100%",v.style.height="100%";let S=re(e);S&&(v.style.transform=S,v.style.transformOrigin="0 0");let g=t.createElement("div");g.className="docx-drawing-crop-viewport",g.style.position="relative",g.style.width="100%",g.style.height="100%",g.style.overflow="hidden";let x=r?.imageFor?.(s,i.resourceKey,t)??t.createElement("img");x.className="docx-drawing-image",x.setAttribute("draggable","false"),x.getAttribute("src")!==o&&x.setAttribute("src",o),x.setAttribute("alt","");let b=ie(e);return x.style.position="absolute",x.style.width=b.width,x.style.height=b.height,x.style.left=b.left,x.style.top=b.top,x.style.maxWidth="none",x.style.maxHeight="none",g.append(x),v.append(g),y.append(v),d.replaceChildren(y),e.hyperlinkHref&&!n.inertLinks?(d.dataset.docxDrawingLink=e.drawingNodeId,d.dataset.docxDrawingLinkKind="external",d.dataset.docxDrawingLinkHref=e.hyperlinkHref,d.setAttribute("tabindex","-1"),D(d,e,true)):D(d,e,false),r?.rememberReadyElement?.(s,d),B.set(d,l),d}var te="http://www.w3.org/2000/svg";function Ne(t,e,n,o){let r=e.vectorShape,a=t.createElement("div");a.className="docx-drawing docx-drawing-shape",a.dataset.drawingNodeId=e.drawingNodeId,T(a,e.paintBounds,n.scale,o);let i=e.geometry.contentBounds,s=e.paintBounds,d=t.createElement("div");d.className="docx-drawing-image-frame",d.style.position="absolute",d.style.left=`${(i.x-s.x)*n.scale}px`,d.style.top=`${(i.y-s.y)*n.scale}px`,d.style.width=`${i.width*n.scale}px`,d.style.height=`${i.height*n.scale}px`;let l=t.createElementNS(te,"svg");l.setAttribute("viewBox",`0 0 ${R(Math.max(1,r.extentEmu.cx))} ${R(Math.max(1,r.extentEmu.cy))}`),l.setAttribute("preserveAspectRatio","none"),l.setAttribute("width","100%"),l.setAttribute("height","100%"),l.style.display="block";let c=t.createElementNS(te,"path"),y=r.subpathsEmu.map(h=>`M${h.map(p=>`${R(p.x)} ${R(p.y)}`).join("L")}Z`).join("");return c.setAttribute("d",y),c.setAttribute("fill",r.fillHex!==null?`#${r.fillHex}`:"none"),c.setAttribute("fill-rule","evenodd"),r.strokeHex!==null&&(c.setAttribute("stroke",`#${r.strokeHex}`),c.setAttribute("stroke-width",R(Math.max(1,r.strokeWidthEmu)))),l.append(c),d.append(l),a.append(d),e.hyperlinkHref&&!n.inertLinks?(a.dataset.docxDrawingLink=e.drawingNodeId,a.dataset.docxDrawingLinkKind="external",a.dataset.docxDrawingLinkHref=e.hyperlinkHref,a.setAttribute("tabindex","-1"),D(a,e,true)):D(a,e,false),a}function Be(t,e,n,o,r){let a=o.scale,i=t.createElement("div");i.className="docx-drawing docx-drawing-textbox",i.dataset.drawingNodeId=e.drawingNodeId,i.setAttribute("contenteditable","false"),T(i,e.paintBounds,o.scale,r),i.style.overflow="hidden";let s=(e.x-e.paintBounds.x)*a,d=(e.y-e.paintBounds.y)*a;if(n.fillHex!==null||n.strokeHex!==null){let c=t.createElement("div");c.className="docx-drawing-textbox-box",c.style.position="absolute",c.style.left=`${s}px`,c.style.top=`${d}px`,c.style.width=`${e.width*a}px`,c.style.height=`${e.height*a}px`,c.style.boxSizing="border-box",n.fillHex!==null&&(c.style.backgroundColor=`#${n.fillHex}`),n.strokeHex!==null&&(c.style.border=`${Math.max(n.strokeWidthPt*a,.5)}px solid #${n.strokeHex}`),i.append(c);}let l=t.createElement("div");l.className="docx-drawing-textbox-content",l.style.position="absolute",l.style.left=`${s+n.contentOffset.x*a}px`,l.style.top=`${d+n.contentOffset.y*a}px`,l.style.width=`${n.contentWidth*a}px`,l.style.height=`${Math.max(0,n.contentHeight)*a}px`,l.style.overflow="hidden";for(let c of n.fragments)l.append(o.paintStoryFragment(t,c));for(let c of l.querySelectorAll("[data-paragraph-id]"))delete c.dataset.paragraphId;return i.append(l),D(i,e,false),i}function se(t,e,n,o,r){if(e.accessibility.hidden||e.paintBounds.width<=0||e.paintBounds.height<=0)return null;if(e.kind==="anchoredDrawing"&&e.textboxStory!==void 0&&n.paintStoryFragment!==void 0)return Be(t,e,e.textboxStory,n,r);if(e.vectorShape&&e.vectorShape.subpathsEmu.length>0)return Ne(t,e,n,r);let{resource:a}=e;if(a.kind==="ready"){if(!n.imageUrlPort||!o)return L(t,e,n,r);let i=o.urlForReady(a.validatedHandle,a.mime);return i?Fe(t,e,n,i,o,r):L(t,e,n,r)}if(a.kind==="pending"){let i=o?.readyElementFor?.(O(e,n))??o?.imageForPending?.(O(e,n))?.closest(".docx-drawing-ready");return i?(B.delete(i),i.dataset.drawingNodeId=e.drawingNodeId,T(i,e.paintBounds,n.scale,r),i):L(t,e,n,r)}return L(t,e,n,r)}function le(t,e,n,o,r){let a=[];for(let i of e.drawings??[]){let s=se(t,i,n,o,r);s&&a.push(s);}return Object.freeze(a)}function de(t,e,n,o,r,a){let i=[];for(let s of e){if(chunkTSXT537P_cjs.mb(s)!==n)continue;let d=se(t,s,o,r,a);d&&(d.dataset.drawingLayer=n,i.push(d));}return Object.freeze(i)}function ce(t){let e=new Set,n=i=>{i.resource.kind==="ready"&&e.add(i.resource.resourceKey);},o=i=>{for(let s of i.drawings??[])n(s);},r=i=>{for(let s of i.lines)o(s);},a=i=>{if(i.kind==="table"){for(let s of i.rows)for(let d of s.cells)for(let l of d.blocks)a(l);return}r(i);};for(let i of t.pages){for(let s of i.anchoredDrawings??[])n(s);for(let s of i.fragments)a(s);for(let s of [i.header,i.footer])if(s){for(let d of s.anchoredDrawings??[])n(d);for(let d of s.fragments)a(d);}}return e}function ye(t){let e=new Set,n=(r,a)=>{e.add(`p${r}|${a.drawingNodeId}`);},o=(r,a)=>{if(a.kind==="table"){for(let i of a.rows)for(let s of i.cells)for(let d of s.blocks)o(r,d);return}for(let i of a.lines)for(let s of i.drawings??[])n(r,s);};for(let r of t.pages){for(let a of r.anchoredDrawings??[])n(r.index,a);for(let a of r.fragments)o(r.index,a);for(let a of [r.header,r.footer])if(a){for(let i of a.anchoredDrawings??[])n(r.index,i);for(let i of a.fragments)o(r.index,i);}}return e}function pe(t){return [t.missingResource,t.externalResource,t.invalidResource,t.contentMismatch,t.decodeFailed,t.resourceLimit,t.pendingResource,t.unsupportedFormat("probe"),t.nonPictureGraphic("probe")].join("\0")}var U=Object.freeze({unsupportedFormat:t=>`Unsupported image format (${t})`,nonPictureGraphic:t=>`Unsupported graphic (${t})`,missingResource:"Image missing",externalResource:"External image not loaded",invalidResource:"Invalid image",contentMismatch:"Image content does not match its type",decodeFailed:"Image could not be decoded",resourceLimit:"Image exceeds size limits",pendingResource:"Loading image"});function It(t){return Object.freeze({unsupportedFormat:e=>t("image.unsupportedFormat",{format:e}),nonPictureGraphic:e=>t("image.nonPictureGraphic",{kind:e}),missingResource:t("image.missingResource"),externalResource:t("image.externalResource"),invalidResource:t("image.invalidResource"),contentMismatch:t("image.contentMismatch"),decodeFailed:t("image.decodeFailed"),resourceLimit:t("image.resourceLimit"),pendingResource:t("image.pendingResource")})}var Oe=/^[0-9A-Fa-f]{6}$/;function Ue(t){switch(t){case "dashed":return "dashed";case "dotted":return "dotted";case "double":case "triple":return "solid";default:return "solid"}}function he(t){return t&&Oe.test(t)?t:"000000"}function z(t,e){let n=t.createElement("div");return n.className=e,n.setAttribute("aria-hidden","true"),n.setAttribute("contenteditable","false"),n.style.position="absolute",n.style.left="0",n.style.top="0",n.style.right="0",n.style.bottom="0",n.style.overflow="visible",n.style.pointerEvents="none",n.style.boxSizing="border-box",n}function M(t,e,n,o){if(!n)return;let r=`#${he(n.color)}`,a=`${Math.max(0,n.widthPt*o)}px`;if(t.style[`border${e}Width`]=a,t.style[`border${e}Color`]=r,n.style==="double"||n.style==="triple"){t.style[`border${e}Style`]="none";return}t.style[`border${e}Style`]=Ue(n.style);}function K(t,e,n,o,r){let a=t.createElement("div");a.className=r,a.dataset.edge=n.side,a.dataset.stroke=n.role,a.style.position="absolute",a.style.left=`${n.x*o}px`,a.style.top=`${n.y*o}px`,a.style.width=`${n.width*o}px`,a.style.height=`${n.height*o}px`,a.style.pointerEvents="none",a.style.backgroundColor=`#${he(n.color)}`,n.cssStyle!=="solid"&&(a.dataset.cssStyle=n.cssStyle),e.append(a);}function ze(t){let e=new Set;for(let n of t)e.add(`${n.side}\0${n.role}`);return e}function Ke(t,e,n,o){let r=ze(n),a=h=>r.has(`${h}\0middle`),i=z(t,"docx-table-border-double"),s=z(t,"docx-table-border-triple"),d=z(t,"docx-table-border-edge"),l=false,c=false,y=false;for(let h of n){if(h.role==="edge"){y=true,K(t,d,h,o,"docx-table-border-edge-stroke");continue}if(a(h.side)){c=true,K(t,s,h,o,"docx-table-border-triple-stroke");continue}(h.role==="outer"||h.role==="inner")&&(l=true,K(t,i,h,o,"docx-table-border-double-stroke"));}l&&e.append(i),c&&e.append(s),y&&e.append(d);}function ue(t,e,n,o){M(e,"Top",n?.top,o),M(e,"Right",n?.right,o),M(e,"Bottom",n?.bottom,o),M(e,"Left",n?.left,o),n?.strokes&&n.strokes.length>0&&Ke(t,e,n.strokes,o);}var ge=new WeakMap,xe=0;function _e(t){let e=ge.get(t);return e||(xe+=1,e=`alias${xe}`,ge.set(t,e)),e}function Se(t){return {...t,drawingStrings:t.drawingStrings??U,urlRegistry:t.urlRegistry??null}}function Ge(t){let e={...t,inertLinks:true};return Object.freeze({scale:t.scale,strings:t.drawingStrings,...t.imageUrlPort?{imageUrlPort:t.imageUrlPort}:{},...t.inertLinks?{inertLinks:true}:{},...t.paintInstance?{paintInstance:t.paintInstance}:{},paintStoryFragment:(n,o)=>o.kind==="table"?I(n,o,e):k(n,o,e)})}function $e(t){return Object.freeze({ctx:Ge(t),urlRegistry:t.urlRegistry})}function fe(t,e,n,o,r,a){C(t,e,chunkTSXT537P_cjs.U(n),o,r,a);}function C(t,e,n,o,r,a,i=true){if(n.length===0)return;let s=$e(o),d=t.createElement("div");d.className=a==="behind"?"docx-drawing-layer docx-drawing-layer-behind":"docx-drawing-layer docx-drawing-layer-front",d.style.position="absolute",d.style.inset="0",d.style.pointerEvents="none";for(let l of de(t,n,a,s.ctx,s.urlRegistry,r)){if(l.style.pointerEvents=i?"auto":"none",!i)for(let c of l.querySelectorAll(".docx-drawing"))c.style.pointerEvents="none";d.append(l);}d.childElementCount>0&&e.append(d);}function Pe(t){return t.horizontalFrame==="page"||t.verticalFrame==="page"}function De(t,e,n){let o=e.paintBounds,r=e.horizontalFrame==="page"?n.x+(o.x-e.horizontalFrameOrigin):t.box.x+o.x,a=e.verticalFrame==="page"?n.y+(o.y-e.verticalFrameOrigin):t.box.y+o.y,i=r-o.x,s=a-o.y,d=l=>Object.freeze({x:l.x+i,y:l.y+s,width:l.width,height:l.height});return Object.freeze({...e,x:e.x+i,y:e.y+s,paintBounds:d(o),hitBounds:d(e.hitBounds),geometry:Object.freeze({...e.geometry,contentBounds:d(e.geometry.contentBounds),paintBounds:d(e.geometry.paintBounds),...e.geometry.clipPolygon?{clipPolygon:Object.freeze(e.geometry.clipPolygon.map(l=>Object.freeze({x:l.x+i,y:l.y+s})))}:{}})})}function je(t,e,n,o,r,a){let i=o.map(d=>De(n,d,a)),s=t.createElement("div");s.className="docx-hf-behind-layer",s.dataset.docxHfBehind=n.kind,s.setAttribute("contenteditable","false"),s.style.position="absolute",s.style.inset="0",s.style.overflow="hidden",s.style.pointerEvents="none",C(t,s,i,r,a,"behind",false),s.childElementCount>0&&e.append(s);}function We(t,e,n,o,r,a,i,s=false){let d=o.filter(Pe).map(l=>De(n,l,a));C(t,e,d,r,a,i,s);}var E=/^[0-9A-Fa-f]{6}$/,be=/^[\p{L}\p{N}\p{M} \-.+_]{1,64}$/u,Ve=new Map(Object.entries({single:"solid",words:"solid",thick:"solid",double:"double",dotted:"dotted",dottedHeavy:"dotted",dash:"dashed",dashedHeavy:"dashed",dashLong:"dashed",dashLongHeavy:"dashed",dotDash:"dashed",dashDotHeavy:"dashed",dotDotDash:"dashed",dashDotDotHeavy:"dashed",wave:"wavy",wavyHeavy:"wavy",wavyDouble:"wavy"})),Xe=new Map(Object.entries({black:"#000000",blue:"#0000ff",cyan:"#00ffff",darkBlue:"#000080",darkCyan:"#008080",darkGray:"#808080",darkGreen:"#008000",darkMagenta:"#800080",darkRed:"#800000",darkYellow:"#808000",green:"#00ff00",lightGray:"#c0c0c0",magenta:"#ff00ff",red:"#ff0000",yellow:"#ffff00",white:"#ffffff"}));function Ye(t){return t.doubleStrike?"double":t.strike?"single":"none"}function qe(t){return t==="thick"||t.endsWith("Heavy")}function Ee(t){if(!t.underline)return null;let e=t.underline.color&&E.test(t.underline.color)?t.underline.color:null;return {cssStyle:Ve.get(t.underline.variant)??"solid",color:e,heavy:qe(t.underline.variant)}}function Le(t,e,n,o){t.textDecorationLine=e,t.textDecorationStyle=n,o.color&&(t.textDecorationColor=`#${o.color}`),o.heavy&&(t.textDecorationThickness=`max(${2*o.scale}px, 0.12em)`);}function me(t,e,n){e!=="none"&&Le(t,"line-through",e==="double"?"double":"solid",{scale:n});}function ve(t,e,n){Le(t,"underline",e.cssStyle,{color:e.color,heavy:e.heavy,scale:n});}function Ze(t,e,n){let o=e.color?`#${e.color}`:"currentColor";t.borderBottomWidth=`${(e.heavy?2:1)*n}px`,t.borderBottomStyle=e.cssStyle==="wavy"?"solid":e.cssStyle,t.borderBottomColor=o;}function _(t,e,n){let o=t.style,r=n.scale,a=e.verticalAlign==="baseline"?1:.75;o.fontSize=`${e.fontSizePt*a*r}px`,e.bold&&(o.fontWeight="bold"),e.italic&&(o.fontStyle="italic");let i=e.fontFamily&&be.test(e.fontFamily)?e.fontFamily:n.defaultFontFamily&&be.test(n.defaultFontFamily)?n.defaultFontFamily:null;if(i){let l=n.fontAlias?.(i);o.fontFamily=l?`"${l}", "${i}", ${chunkTSXT537P_cjs.gd}`:`"${i}", ${chunkTSXT537P_cjs.gd}`;}e.color&&E.test(e.color)&&(o.color=`#${e.color}`);let s=e.highlight?Xe.get(e.highlight):void 0;s?(o.backgroundColor=s,t.dataset.highlight=e.highlight??""):e.shading&&E.test(e.shading)&&(o.backgroundColor=`#${e.shading}`),e.caps&&(o.textTransform="uppercase"),e.smallCaps&&(o.fontVariant="small-caps");let d=chunkTSXT537P_cjs.hb(e);d!==0&&(o.position="relative",o.top=`${-d*r}px`),e.characterSpacingPt!==0&&(o.letterSpacing=`${e.characterSpacingPt*r}px`),e.horizontalScalePercent!==100&&(o.transformOrigin="left",o.transform=`scaleX(${e.horizontalScalePercent/100})`);}function Te(t,e,n,o,r){let a=n===" "?null:Ee(o),i=Ye(o),s=e;if(a&&i!=="none"){let d=t.createElement("span");d.dataset.docxDeco="underline",ve(d.style,a,r);let l=t.createElement("span");l.dataset.docxDeco="strike",me(l.style,i,r),d.append(l),e.append(d),s=l;}else a?ve(e.style,a,r):i!=="none"&&me(e.style,i,r);s.textContent=n;}function P(t,e,n,o){let r=t.createElement(e);return r.style.position="absolute",r.style.left=`${n.x*o}px`,r.style.top=`${n.y*o}px`,r.style.width=`${n.width*o}px`,r.style.height=`${n.height*o}px`,r}function Je(t,e,n){let o=chunkTSXT537P_cjs.ab(e.props),r=J(e.revisions,n.authorSlots);if(!(!r&&!o)){if(r){let{attribution:a}=r;t.classList.add("docx-revision",`docx-revision-${a.kind}`),t.dataset.revisionKind=a.kind,t.dataset.revisionId=a.id,t.dataset.revisionAuthor=a.author,a.date!==void 0&&(t.dataset.revisionDate=a.date),t.style.color=r.color,t.style.backgroundColor=r.deleted?"var(--doc-revision-deletion-wash)":"var(--doc-revision-insertion-wash)",r.line&&(t.style.textDecorationLine=r.line,t.style.textDecorationStyle=r.decorationStyle,t.style.textDecorationColor=r.color);return}t.classList.add("docx-revision","docx-revision-format"),t.dataset.revisionKind="format",t.dataset.revisionId=o.id,t.dataset.revisionAuthor=o.author,o.date!==void 0&&(t.dataset.revisionDate=o.date);}}function Qe(t,e,n){let o=t.createElement("span");return o.className=`docx-revision-pmark docx-revision-pmark-${e.kind}`,o.setAttribute("aria-hidden","true"),o.contentEditable="false",o.dataset.revisionKind=e.kind,o.dataset.revisionId=e.id,o.dataset.revisionAuthor=e.author,o.textContent="\xB6",o.style.position="absolute",o.style.pointerEvents="none",o.style.marginLeft=`${2*n}px`,o.style.color=e.kind==="delete"?"var(--doc-revision-deletion)":"var(--doc-revision-insertion)",e.kind==="delete"&&(o.style.textDecorationLine="line-through"),o}function et(t,e,n){let o=[];for(let a of e.lines){let i=a.spans.flatMap(y=>y.revisions??[]);if(i.length===0)continue;let s=i.some(y=>y.kind==="delete"||y.kind==="moveFrom"),d=a.box.y-e.box.y,l=d+a.box.height,c=o[o.length-1];if(c&&c.deleted===s&&d<=c.bottom+.5){c.bottom=Math.max(c.bottom,l);continue}o.push({top:d,bottom:l,deleted:s});}if(o.length===0)return null;let r=t.createElement("div");r.className="docx-change-bars",r.setAttribute("aria-hidden","true"),r.style.position="absolute",r.style.inset="0",r.style.pointerEvents="none";for(let a of o){let i=t.createElement("div");i.className=`docx-change-bar docx-change-bar-${a.deleted?"deletion":"insertion"}`,i.style.position="absolute",i.style.top=`${a.top*n}px`,i.style.height=`${(a.bottom-a.top)*n}px`,i.style.left=`${(-e.box.x-tt)*n}px`,i.style.width=`${nt*n}px`,i.style.pointerEvents="none",i.style.backgroundColor=a.deleted?"var(--doc-revision-deletion)":"var(--doc-revision-insertion)",r.append(i);}return r}var tt=7.5,nt=1.5;function ot(t,e,n,o,r){let a=t.createElement("span");if(a.className="layout-run layout-run-text",a.style.display="inline-block",a.style.verticalAlign="baseline",a.style.boxSizing="border-box",a.style.height=`${o*n.scale}px`,a.style.paddingTop=`${r*n.scale}px`,a.style.lineHeight=`${(o-r)*n.scale}px`,e.range.end>e.range.start?(a.dataset.paragraphId=e.range.paragraphId,a.dataset.start=String(e.range.start),a.dataset.end=String(e.range.end)):(a.setAttribute("aria-hidden","true"),a.contentEditable="false"),_(a,e.style,n),Je(a,e,n),(e.style.horizontalScalePercent!==100||e.text===" ")&&(a.style.width=`${e.box.width*n.scale}px`),e.text===" "){a.style.overflow="hidden",a.style.verticalAlign="top";let i=Ee(e.style);i&&(a.dataset.docxTabUnderline="",Ze(a.style,i,n.scale));}return Te(t,a,e.text,e.style,n.scale),e.projected&&(a.dataset.docxField="",a.setAttribute("contenteditable","false"),e.noteNav?(a.style.userSelect="none",e.noteNav.direction==="to-note"?(a.dataset.docxNoteRef="",a.dataset.docxNoteScope=e.noteNav.scopeId,e.text.length>0&&a.setAttribute("aria-description",e.text)):(a.dataset.docxNoteMarkBack="",a.dataset.docxNoteScope=e.noteNav.scopeId)):(a.style.pointerEvents="none",a.style.userSelect="none")),a}function rt(t,e,n){let o=t.createElement("a");return o.className="docx-hyperlink",o.dataset.docxLink=e.id,o.dataset.docxLinkKind=e.kind,o.setAttribute("tabindex","-1"),!n.inertLinks&&e.href&&(o.setAttribute("href",e.href),e.kind==="external"&&o.setAttribute("rel","noopener noreferrer")),e.tooltip&&o.setAttribute("title",e.tooltip),o.style.display="inline-block",o.style.verticalAlign="baseline",o.style.textDecoration="none",o.style.color="inherit",o}function at(t,e,n){let o=n.scale,r=t.createElement("div");r.className="docx-line layout-line",r.dataset.lineId=e.id,r.dataset.paragraphId=e.range.paragraphId,r.style.position="absolute",r.style.top=`${e.box.y*o}px`,r.style.left=`${e.contentX*o}px`,r.style.height=`${e.box.height*o}px`,r.style.fontSize="0",r.style.whiteSpace="pre",r.style.overflow="visible";let a=it(e);a>0&&(r.style.wordSpacing=`${a*o}px`);let i=e.leading??0,s=Math.min(Math.max(i,...e.spans.map(g=>g.box.height+i),e.spans.length===0?e.box.height-(e.trailingSpacing??0):0),e.box.height),d=Math.max(0,e.box.height-s);r.style.boxSizing="border-box",r.style.paddingBottom=`${d*o}px`,r.style.lineHeight=`${(e.box.height-d)*o}px`;let l=null,c=null,y=[...e.drawings??[]].sort((g,x)=>g.start-x.start),h=0,p=g=>{for(;h<y.length&&y[h].start<g;){let x=y[h],b=Math.max(0,x.advanceEnd-x.advanceStart),m=t.createElement("span");m.className="docx-inline-drawing-advance",m.dataset.docxMarker="",m.setAttribute("contenteditable","false"),m.setAttribute("aria-hidden","true"),m.style.display="inline-block",m.style.width=`${b*o}px`,m.style.height=`${x.baselineOffset*o}px`,m.style.lineHeight="0",m.style.pointerEvents="none",m.style.verticalAlign="baseline",r.append(m),h+=1,l=null,c=null;}},u=g=>{let x=g.wrapAdvanceBefore??0;if(x<=.001)return;let b=t.createElement("span");b.className="docx-wrap-advance",b.dataset.docxMarker="",b.setAttribute("contenteditable","false"),b.setAttribute("aria-hidden","true"),b.style.display="inline-block",b.style.width=`${x*o}px`,b.style.height="0",b.style.lineHeight="0",b.style.pointerEvents="none",b.style.verticalAlign="baseline",r.append(b),l=null,c=null;};for(let g of e.spans){p(g.range.start),u(g);let x=Math.min(g.box.height+i,e.box.height),b=ot(t,g,n,x,i),m=g.link;if(!m){l=null,c=null,r.append(b);continue}(!l||c!==m.id)&&(l=rt(t,m,n),c=m.id,r.append(l)),l.append(b);}if(p(Number.POSITIVE_INFINITY),e.spans.length===0){let g=t.createElement("br");g.style.lineHeight=`${e.box.height*o}px`,r.append(g);}let v=Object.freeze({x:e.contentX,y:e.box.y,width:e.box.width,height:e.box.height}),S=$e(Se(n));if(e.drawings&&e.drawings.length>0)for(let g of le(t,e,S.ctx,S.urlRegistry,v))r.append(g);return r}function it(t){if(t.spans.length<2)return 0;let e=[];for(let n=1;n<t.spans.length;n+=1){let o=t.spans[n-1],r=t.spans[n];if(t.drawings?.some(s=>s.start>=o.range.end&&s.start<r.range.start))continue;let i=r.box.x-(o.box.x+o.box.width)-(r.wrapAdvanceBefore??0);i>.25&&e.push(i);}return e.length===0?0:e.reduce((n,o)=>n+o,0)/e.length}function k(t,e,n){let o=n.scale,r=P(t,"div",e.box,o);r.className="docx-paragraph-fragment layout-paragraph",r.dataset.paragraphId=e.paragraphId,r.dataset.fragmentIndex=String(e.fragmentIndex),n.readOnlyParagraphIds?.has(e.paragraphId)&&(r.classList.add("docx-generated-region"),r.dataset.docxReadOnly="",r.setAttribute("contenteditable","false"),r.setAttribute("aria-readonly","true")),n.emptyTocPlaceholderIds?.has(e.paragraphId)&&(r.classList.add("docx-toc-empty-placeholder"),r.dataset.docxTocEmpty=""),e.shading&&E.test(e.shading)&&e.shadingBox&&r.append(ct(t,e,o)),e.marker&&r.append(st(t,e,n));for(let i of e.lines)for(let s of i.spans){if(!s.tabLeader)continue;let d=dt(t,e,i,s,n);d&&r.append(d);}let a=et(t,e,o);if(a&&r.append(a),e.markRevision){let i=Qe(t,e.markRevision,o),s=e.lines[e.lines.length-1];if(s){let d=s.spans[s.spans.length-1];i.style.top=`${(s.box.y-e.box.y)*o}px`,i.style.left=`${((d?d.box.x+d.box.width:s.contentX)-e.box.x)*o}px`,r.append(i);}}for(let i of e.lines){let s=at(t,i,n);s.style.top=`${(i.box.y-e.box.y)*o}px`,s.style.left=`${(i.contentX-e.box.x)*o}px`,r.append(s);}if(e.borders)for(let i of e.borders)r.append(we(t,e,i,o));else e.bottomBorder&&r.append(we(t,e,{side:"bottom",edge:e.bottomBorder.edge,box:e.bottomBorder.box},o));return r}function st(t,e,n){let o=e.marker,r=n.scale,a=e.lines[0]?.leading??0,i=P(t,"span",o.box,r);i.className="docx-list-marker",i.dataset.docxMarker="",i.setAttribute("contenteditable","false"),i.setAttribute("aria-hidden","true"),i.style.left=`${(o.box.x-e.box.x)*r}px`,i.style.top=`${(o.box.y-e.box.y)*r}px`,i.style.display="block",i.style.overflow="visible",i.style.whiteSpace="pre";let s=e.lines[0],d=s?Math.max(a,...s.spans.map(h=>h.box.height+a),s.spans.length===0?s.box.height-(s.trailingSpacing??0):0):o.box.height,l=Math.min(d,o.box.height),c=Math.max(0,o.box.height-l);i.style.fontSize="0",i.style.boxSizing="border-box",i.style.paddingBottom=`${c*r}px`,i.style.lineHeight=`${l*r}px`;let y=t.createElement("span");return y.style.display="inline-block",y.style.verticalAlign="baseline",y.style.boxSizing="border-box",y.style.height=`${l*r}px`,y.style.paddingTop=`${a*r}px`,y.style.lineHeight=`${(l-a)*r}px`,_(y,o.style,n),Te(t,y,o.text,o.style,r),i.append(y),i}var lt=512;function dt(t,e,n,o,r){let a=o.tabLeader?chunkTSXT537P_cjs.Da.get(o.tabLeader):void 0;if(!a||o.box.width<=0)return null;let i=r.scale,s=t.createElement("div");s.className="docx-tab-leader",s.dataset.docxTabLeader="",s.setAttribute("contenteditable","false"),s.setAttribute("aria-hidden","true"),s.style.position="absolute",s.style.left=`${(o.box.x-e.box.x)*i}px`,s.style.top=`${(n.box.y-e.box.y)*i}px`,s.style.width=`${o.box.width*i}px`,s.style.height=`${n.box.height*i}px`,s.style.overflow="hidden",s.style.whiteSpace="pre",s.style.pointerEvents="none",s.style.userSelect="none";let d=n.leading??0,l=Math.min(o.box.height+d,n.box.height),c=Math.max(0,n.box.height-l);s.style.fontSize="0",s.style.boxSizing="border-box",s.style.paddingBottom=`${c*i}px`,s.style.lineHeight=`${(n.box.height-c)*i}px`;let y=t.createElement("span");y.style.display="inline-block",y.style.verticalAlign="baseline",_(y,o.style,r),y.style.boxSizing="border-box",y.style.height=`${l*i}px`,y.style.paddingTop=`${d*i}px`,y.style.lineHeight=`${(l-d)*i}px`,o.tabLeader==="heavy"&&(y.style.fontWeight="bold");let h=o.tabLeaderAdvancePt&&o.tabLeaderAdvancePt>0?o.tabLeaderAdvancePt:Math.max(.5,o.style.fontSizePt*.2),p=Math.min(lt,Math.max(1,Math.floor(o.box.width/h)+2));return y.textContent=a.repeat(p),y.style.letterSpacing="0",s.append(y),s}function ct(t,e,n){let o=e.shadingBox,r=P(t,"div",o,n);return r.className="docx-paragraph-shading",r.setAttribute("aria-hidden","true"),r.style.left=`${(o.x-e.box.x)*n}px`,r.style.top=`${(o.y-e.box.y)*n}px`,r.style.backgroundColor=`#${e.shading}`,r}function we(t,e,n,o){let r=P(t,"div",n.box,o);r.className=`docx-paragraph-border docx-paragraph-border-${n.side}`,r.setAttribute("aria-hidden","true");let a=(n.box.x-e.box.x)*o,i=(n.box.y-e.box.y)*o,s=n.side==="left"||n.side==="right"||n.side==="bar",d=(s?n.box.width:n.box.height)*o,c=yt(n.edge.val)?d:Math.max(1,d);r.style.left=`${n.side==="right"?a-(c-d):a}px`,r.style.top=`${n.side==="bottom"?i-(c-d):i}px`,s?r.style.width=`${c}px`:r.style.height=`${c}px`;let y=n.edge.color&&E.test(n.edge.color)?n.edge.color:"000000";return r.style.backgroundColor=`#${y}`,pt(r,n.edge.val,y,s,c,o),r}function yt(t){return t==="double"||t==="triple"||t==="doubleWave"||t.startsWith("thinThick")||t.startsWith("thickThin")}function pt(t,e,n,o,r,a){switch(e){case "dashed":case "dashSmallGap":case "dotDash":case "dotDotDash":case "dashDotStroked":{let i=Math.max(4,4*a);t.style.backgroundImage=`linear-gradient(to ${o?"bottom":"right"}, #${n} 60%, transparent 60%)`,t.style.backgroundSize=o?`100% ${i}px`:`${i}px 100%`;return}case "dotted":{let i=Math.max(3,3*a);t.style.backgroundImage=`linear-gradient(to ${o?"bottom":"right"}, #${n} 35%, transparent 35%)`,t.style.backgroundSize=o?`100% ${i}px`:`${i}px 100%`;return}case "double":case "doubleWave":case "triple":case "thinThickSmallGap":case "thickThinSmallGap":case "thinThickThinSmallGap":case "thinThickMediumGap":case "thickThinMediumGap":case "thinThickThinMediumGap":case "thinThickLargeGap":case "thickThinLargeGap":case "thinThickThinLargeGap":{let i=Math.max(1,r/3);t.style.backgroundColor="transparent",o?(t.style.borderLeft=`${i}px solid #${n}`,t.style.borderRight=`${i}px solid #${n}`):(t.style.borderTop=`${i}px solid #${n}`,t.style.borderBottom=`${i}px solid #${n}`),t.style.boxSizing="border-box";return}case "threeDEmboss":case "ridge":{t.style.backgroundColor="transparent";let i=o?"borderLeft":"borderTop";t.style[i]=`${Math.max(1,r)}px ridge #${n}`,o?t.style.width="0px":t.style.height="0px";return}case "threeDEngrave":case "groove":{t.style.backgroundColor="transparent";let i=o?"borderLeft":"borderTop";t.style[i]=`${Math.max(1,r)}px groove #${n}`,o?t.style.width="0px":t.style.height="0px";return}case "inset":{t.style.backgroundColor="transparent";let i=o?"borderLeft":"borderTop";t.style[i]=`${Math.max(1,r)}px inset #${n}`,o?t.style.width="0px":t.style.height="0px";return}case "outset":{t.style.backgroundColor="transparent";let i=o?"borderLeft":"borderTop";t.style[i]=`${Math.max(1,r)}px outset #${n}`,o?t.style.width="0px":t.style.height="0px";return}default:return}}function ht(t,e,n,o){let r=o.scale,a=P(t,"div",e.box,r);if(a.className="docx-table-cell",a.style.left=`${(e.box.x-n.x)*r}px`,a.style.top=`${(e.box.y-n.y)*r}px`,a.style.boxSizing="border-box",a.style.overflow="visible",a.dataset.cellId=e.id,a.dataset.gridColumn=String(e.gridColumn),a.dataset.gridSpan=String(e.gridSpan),e.rowSpan&&e.rowSpan>1&&(a.dataset.rowSpan=String(e.rowSpan)),e.paintInert||e.vMergeContinue)return a.dataset.vMergeContinue="true",a.style.border="none",a.style.backgroundColor="transparent",a;a.style.border="none",ue(t,a,e.borders,r),e.shading&&E.test(e.shading)&&(a.style.backgroundColor=`#${e.shading}`);for(let i of e.blocks){let s=i.kind==="table"?I(t,i,o):k(t,i,o);s.style.left=`${(i.box.x-e.box.x)*r}px`,s.style.top=`${(i.box.y-e.box.y)*r}px`,a.append(s);}return a}function I(t,e,n){let o=n.scale,r=P(t,"div",e.box,o);r.className="docx-table-fragment layout-table",r.dataset.tableId=e.tableId,r.dataset.fragmentIndex=String(e.fragmentIndex),r.style.overflow="visible";for(let a of e.rows){let i=P(t,"div",a.box,o);i.className="docx-table-row",a.revisionKind&&(i.classList.add("docx-table-row--revision",a.revisionKind==="insert"?"layout-revision-ins":"layout-revision-del"),i.dataset.revisionKind=a.revisionKind,a.revisionId!==void 0&&(i.dataset.revisionId=a.revisionId),a.revisionAuthor!==void 0&&(i.dataset.revisionAuthor=a.revisionAuthor),a.revisionDate!==void 0&&(i.dataset.revisionDate=a.revisionDate)),i.dataset.rowId=a.id,a.isHeaderRepeat&&(i.dataset.headerRepeat="true"),i.style.left=`${(a.box.x-e.box.x)*o}px`,i.style.top=`${(a.box.y-e.box.y)*o}px`,i.style.overflow="visible";for(let s of a.cells)i.append(ht(t,s,a.box,n));r.append(i);}return r}function ut(t,e,n,o){let r={...n,paintInstance:`p${e.index}`},a=P(t,"div",e.box,r.scale);if(a.className="docx-page",a.style.fontFamily=chunkTSXT537P_cjs.gd,a.dataset.pageIndex=String(e.index),r.ariaHidden&&(a.setAttribute("aria-hidden","true"),a.setAttribute("role","presentation")),a.dataset.materialized=String(o),!o)return a;let i=Object.freeze({x:e.box.x,y:e.box.y,width:e.box.width,height:e.box.height}),s=Object.freeze({x:-(e.contentBox.x-e.box.x),y:-(e.contentBox.y-e.box.y),width:e.box.width,height:e.box.height});fe(t,a,e,r,s,"behind");for(let l of [e.header,e.footer])l?.anchoredDrawings?.length&&je(t,a,l,l.anchoredDrawings,r,{x:e.box.x,y:e.box.y,width:e.box.width,height:e.box.height});let d=t.createElement("div");d.className="docx-page-content",d.style.position="absolute",d.style.left=`${(e.contentBox.x-e.box.x)*r.scale}px`,d.style.top=`${(e.contentBox.y-e.box.y)*r.scale}px`,d.style.width=`${e.contentBox.width*r.scale}px`,d.style.height=`${e.contentBox.height*r.scale}px`,r.activeHeaderFooterRId&&d.setAttribute("contenteditable","false");for(let l of e.columnSeparators??[]){let c=t.createElement("div");c.className="docx-column-separator",c.setAttribute("contenteditable","false"),c.style.position="absolute",c.style.left=`${l.x*r.scale}px`,c.style.top=`${l.y*r.scale}px`,c.style.width=`${l.width*r.scale}px`,c.style.height=`${l.height*r.scale}px`,c.style.backgroundColor="currentColor",c.style.pointerEvents="none",d.append(c);}for(let l of e.fragments)d.append(l.kind==="table"?I(t,l,r):k(t,l,r));a.append(d),fe(t,a,e,r,s,"inFront"),Q(t,a,e,r,k,I);for(let l of ["header","footer"]){if(e[l])continue;let c=t.createElement("div");c.className="docx-hf docx-hf--placeholder",c.dataset.docxHf=l,c.setAttribute("contenteditable","false");let y=l==="header"?e.contentBox.y-e.box.y:e.box.y+e.box.height-(e.contentBox.y+e.contentBox.height),h=Math.min(y,gt);if(h<=0)continue;let p=Math.max(0,Math.min(xt,y-h)),u=l==="header"?p:e.box.height-p-h;c.style.position="absolute",c.style.left=`${(e.contentBox.x-e.box.x)*r.scale}px`,c.style.top=`${u*r.scale}px`,c.style.width=`${e.contentBox.width*r.scale}px`,c.style.height=`${h*r.scale}px`,a.append(c);}for(let l of [e.header,e.footer]){if(!l)continue;let c=l.anchoredDrawings??[],y=!!r.activeHeaderFooterRId&&!!l.rId&&r.activeHeaderFooterRId===l.rId&&(r.activeHeaderFooterPageIndex===void 0||r.activeHeaderFooterPageIndex===e.index),h=t.createElement("div");h.className="docx-hf",h.dataset.docxHf=l.kind,l.rId&&(h.dataset.docxRId=l.rId),y?(h.dataset.docxHfActive="",h.setAttribute("contenteditable","true")):h.setAttribute("contenteditable","false"),h.style.position="absolute",h.style.left=`${(l.box.x-e.box.x)*r.scale}px`,h.style.top=`${(l.box.y-e.box.y)*r.scale}px`,h.style.width=`${l.box.width*r.scale}px`;let p=y?l.kind==="footer"?Math.max(l.box.height,e.box.y+e.box.height-l.box.y):Math.max(l.box.height,e.contentBox.y-l.box.y):l.box.height;h.style.height=`${p*r.scale}px`,h.style.overflow="visible";let u=(e.box.x-l.box.x)*r.scale,v=(e.box.y-l.box.y)*r.scale,S=u+e.box.width*r.scale,g=v+e.box.height*r.scale;h.style.clipPath=`polygon(${u}px ${v}px, ${S}px ${v}px, ${S}px ${g}px, ${u}px ${g}px)`;let x=Object.freeze({x:0,y:0,width:l.box.width,height:l.box.height}),b=c.filter(f=>!Pe(f)),m={...r,inertLinks:true};for(let f of l.fragments)h.append(f.kind==="table"?I(t,f,m):k(t,f,m));C(t,h,b,Se(r),x,"inFront",y),a.append(h);let w=t.createElement("div");w.className="docx-hf-edit-hint",w.dataset.docxHfHint=l.kind,w.setAttribute("contenteditable","false"),w.style.position="absolute",w.style.left=h.style.left,w.style.width=h.style.width,w.style.top=l.kind==="header"?`${(l.box.y+l.box.height-e.box.y)*r.scale}px`:`${(l.box.y-e.box.y)*r.scale}px`,l.kind==="footer"&&(w.style.transform="translateY(-100%)"),a.append(w),We(t,a,l,c,r,i,"inFront",y);}return mt(t,a,e,r),a}var gt=30,xt=36,ft=16,bt=new Set(["dropdown","comboBox","date","checkbox"]);function mt(t,e,n,o){let r=o.contentControlChrome,a=r?.suppressedIds,i=(n.contentControls??[]).filter(h=>a?.has(h.id)!==true),s=[...i,...(r?.additionalBoundaries??[]).filter(h=>a?.has(h.id)!==true&&!i.some(p=>p.id===h.id))];if(s.length===0)return;let d=r?.showAll===true,l=r?.activeIds,c=r?.hoverIds,y=r?.tocControlIds;for(let h of s){let p=y?.has(h.id)===true,u=!p&&l?.has(h.id)===true,v=c?.has(h.id)===true;e.append(vt(t,n,h,o.scale,u,v,d||u||p&&v,r?.checkedIds?.has(h.id),p));}}function vt(t,e,n,o,r,a,i,s,d){let l=t.createElement("div");l.className="docx-content-control-chrome",l.dataset.docxContentControl=n.id,l.dataset.docxMarker="",l.dataset.controlType=n.controlType,l.dataset.lock=n.effectiveLock,n.bound&&(l.dataset.bound=""),n.placeholder&&(l.dataset.placeholder=""),d&&(l.dataset.docxToc=""),r&&(l.dataset.active=""),a&&(l.dataset.hover=""),i&&(l.dataset.boundaryVisible=""),l.setAttribute("contenteditable","false"),l.setAttribute("role","group"),n.alias&&(l.dataset.alias=n.alias),n.tag&&(l.dataset.tag=n.tag),n.alias&&l.setAttribute("aria-label",n.alias),l.style.position="absolute",l.style.inset="0",l.style.pointerEvents="none",l.style.zIndex="2";let c=e.contentBox.x-e.box.x,y=e.contentBox.y-e.box.y;for(let p of n.fragments){if(p.pageIndex!==e.index)continue;let u=t.createElement("div");u.className="docx-content-control-boundary",u.dataset.docxMarker="",u.setAttribute("contenteditable","false"),u.setAttribute("aria-hidden","true"),u.style.position="absolute",u.style.left=`${(c+p.box.x)*o}px`,u.style.top=`${(y+p.box.y)*o}px`,u.style.width=`${Math.max(p.box.width,1)*o}px`,u.style.height=`${Math.max(p.box.height,1)*o}px`,u.style.pointerEvents="none",l.append(u);}let h=n.fragments.find(p=>p.pageIndex===e.index);if(h&&n.alias){let p=t.createElement("div");p.className="docx-content-control-label",p.dataset.docxMarker="",p.setAttribute("contenteditable","false"),p.setAttribute("aria-hidden","true"),p.textContent=n.alias,p.style.position="absolute",p.style.left=`${(c+h.box.x)*o}px`,p.style.top=`${Math.max(0,(y+h.box.y)*o-ft)}px`,p.style.pointerEvents="none",l.append(p);}if(h&&bt.has(n.controlType)){let p=t.createElement("button");p.type="button",p.className="docx-content-control-widget",p.dataset.docxMarker="",p.dataset.docxCcWidget=n.controlType,p.dataset.docxCcId=n.id,p.setAttribute("contenteditable","false"),p.setAttribute("tabindex","-1"),n.controlType==="checkbox"?p.setAttribute("role","checkbox"):n.controlType==="dropdown"||n.controlType==="comboBox"?p.setAttribute("role","listbox"):n.controlType==="date"&&p.setAttribute("role","button"),n.alias&&(p.dataset.name=n.alias),n.alias&&p.setAttribute("aria-label",n.alias),n.controlType==="checkbox"&&(p.setAttribute("data-checked",s?"true":"false"),p.setAttribute("aria-checked",s?"true":"false")),(n.effectiveLock==="contentLocked"||n.effectiveLock==="sdtContentLocked"||n.bound)&&(p.disabled=true,p.dataset.disabledReason=n.bound?"bound":"locked",p.setAttribute("aria-disabled","true")),p.style.position="absolute",p.style.left=`${(c+h.box.x+h.box.width)*o-18}px`,p.style.top=`${(y+h.box.y)*o}px`,p.style.width="16px",p.style.height="16px",p.style.pointerEvents="auto",p.style.padding="0",p.style.margin="0",p.style.cursor=p.disabled?"not-allowed":"pointer",l.append(p);}return l}var Re=new WeakMap;function wt(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function Rt(t,e,n,o){let r=t.element;return !t.materialized&&wt(t.record.box,e.box)&&r.style.left===`${e.box.x*n}px`&&r.style.top===`${e.box.y*n}px`&&r.style.width===`${e.box.width*n}px`&&r.style.height===`${e.box.height*n}px`&&r.getAttribute("aria-hidden")===(o?"true":null)}function St(t,e,n={}){let o=n.contentControlChrome,r=o?`${o.showAll===true?"1":"0"}:${o.activeIds?[...o.activeIds].sort().join(","):""}:${o.checkedIds?[...o.checkedIds].sort().join(","):""}:${o.tocControlIds?[...o.tocControlIds].sort().join(","):""}:${o.suppressedIds?[...o.suppressedIds].sort().join(","):""}`:"",a=n.drawingStrings??U,i=n.imageUrlPort!==void 0?ne(t,n.imageUrlPort):null,s=o?.additionalBoundaries?o.additionalBoundaries.flatMap(f=>f.fragments.map($=>`${f.id}:${$.pageIndex}:${$.box.x}:${$.box.y}:${$.box.width}:${$.box.height}`)).sort().join(","):"",d=n.readOnlyParagraphIds?[...n.readOnlyParagraphIds].sort().join(","):"",l=n.emptyTocPlaceholderIds?[...n.emptyTocPlaceholderIds].sort().join(","):"",c=o?.tocControlIds?[...o.tocControlIds].sort().join(","):"",y={scale:n.scale??96/72,ariaHidden:n.ariaHidden??true,drawingStrings:a,urlRegistry:i,...n.fontAlias?{fontAlias:n.fontAlias}:{},...n.readOnlyParagraphIds?{readOnlyParagraphIds:n.readOnlyParagraphIds}:{},...n.emptyTocPlaceholderIds?{emptyTocPlaceholderIds:n.emptyTocPlaceholderIds}:{},...n.defaultFontFamily?{defaultFontFamily:n.defaultFontFamily}:{},authorSlots:Z(e),...n.imageUrlPort?{imageUrlPort:n.imageUrlPort}:{},...n.activeHeaderFooterRId?{activeHeaderFooterRId:n.activeHeaderFooterRId}:{},...n.activeHeaderFooterPageIndex!==void 0?{activeHeaderFooterPageIndex:n.activeHeaderFooterPageIndex}:{},...o?{contentControlChrome:o}:{}},h=t.ownerDocument,p=`${y.scale}|${y.ariaHidden}|${y.fontAlias?_e(y.fontAlias):""}|${y.defaultFontFamily??""}|${y.activeHeaderFooterRId??""}|${y.activeHeaderFooterPageIndex??""}|cc:${r}:${s}|toc:${c}|ro:${d}|tocEmpty:${l}|${n.imageUrlPort?"url":""}|${pe(a)}`,u=Re.get(t),S=u?.parameters===p?new Map(u.pages.map(f=>[f.record,f])):null,g=u?new Map(u.pages.map(f=>[f.record.index,f])):null,x=e.pages.map(f=>{let $=n.materialize?.has(f.index)??true,F=S?.get(f);if(F&&F.materialized===$)return F;let N=$?null:g?.get(f.index);return N&&Rt(N,f,y.scale,y.ariaHidden)?{record:f,materialized:false,element:N.element}:{record:f,materialized:$,element:ut(h,f,y,$)}});Re.set(t,{parameters:p,pages:x}),t.dataset.revision=String(e.revision),i&&i.reconcile(ce(e),ye(e));let b=new Set(x.map(f=>f.element)),m=t.firstChild;for(;m;){let f=m.nextSibling;b.has(m)||m.remove(),m=f;}let w=t.firstChild;for(let f of x){if(f.element===w){w=w.nextSibling;continue}t.insertBefore(f.element,w);}}function $t(t,e,n,o){let r=t.ownerDocument,a=o.scale,i=[];for(let s of n){let d=e.pages[s.pageIndex];if(!d)continue;let l=r.createElement("div");l.className=s.className??o.className??"docx-cell-selection-rect",l.style.position="absolute";let c=o.pageOffsetX?.get(s.pageIndex)??0;l.style.left=`${(d.contentBox.x+s.x+c)*a}px`,l.style.top=`${(d.contentBox.y+s.y)*a}px`,l.style.width=`${s.width*a}px`,l.style.height=`${s.height*a}px`,i.push(l);}t.replaceChildren(...i);}
|
|
2
|
-
exports.a=kt;exports.b=U;exports.c=It;exports.d=St;exports.e=$t;
|
package/dist/chunk-6WIIHJFY.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {ke,Ea,Rd,sd,jd,hd,Sb,Rb,Hf,Gf,Ld,oe,ie,me,bg,Oc,Ta,Qc,Ra,Hd,Jd,Uf,Sf,Xf,Tf,Yf,Id,ng,og,Ec,Dc,xe,td,ef,ze as ze$1,wf,Ef,Ff,Ce,De as De$1,Be,cg,$f,W as W$1,ye,Hc,la,Qa,vf}from'./chunk-Y7TA7TPF.js';var Nt=Object.freeze(["default","first","even"]),it=Object.freeze({kind:"body"});function _(r){switch(r.kind){case "body":return "body";case "note":return `note:${r.noteKind}:${String(r.noteId)}`;default:return `${r.kind}:${String(r.sectionIndex)}:${r.variant}`}}function Ke(r){if(typeof r!="object"||r===null)return false;let e=r;return e.kind==="body"?true:e.kind==="note"?(e.noteKind==="footnote"||e.noteKind==="endnote")&&Number.isInteger(e.noteId):e.kind!=="header"&&e.kind!=="footer"?false:Number.isInteger(e.sectionIndex)&&e.sectionIndex>=0&&Nt.includes(e.variant)}var Fo=["getDocument","getBody","getParagraphs","getSpanParagraphs","getText","getSpanText","getParagraphId","search","getFont","getParagraphFormat","getStyle","getSections","getPageSetup","getFurniture","getNotes","getNoteBody","getNoteKind","getLists","getListId","getListById","getListParagraphs","getParagraphList","getListLevel","getHyperlink","getBookmarks","getBookmarkName","getBookmarkRange","getComments","getCommentReplies","getCommentId","getCommentAuthor","getCommentDate","getCommentText","getCommentRange","getCommentResolved","getRevisions","getRevisionType","getRevisionAuthor","getRevisionDate","getRevisionRange","getContentControls","getContentControlById","getContentControlsByTag","getContentControlsByTitle","getContentControlTag","getContentControlTitle","getContentControlFileId","getContentControlSubtype","getContentControlLock","getContentControlPlaceholderShown","getContentControlTemporary","getContentControlText","getContentControlParagraphs","getContentControlRange"],Mn=["insertText","replaceSpan","insertParagraph","splitParagraph","deleteParagraph","selectSpan","setFont","setParagraphFormat","setStyle","setPageSetup","deleteNote","setListLevel","insertListParagraph","setHyperlink","setCommentResolved","replyToComment","acceptRevision","rejectRevision","acceptAllRevisions","rejectAllRevisions","setContentControlValue","setContentControlProperties","deleteContentControl","insertContentControlText","insertContentControl","insertCustomNode"],En=["deleteNote","setCommentResolved","replyToComment","insertCustomNode"],_n=new Set(En);function We(r){return _n.has(r.op)}var Fn=new Set(Mn);function $t(r){return Fn.has(r.op)}function Bn(){let r=globalThis.crypto,e=r?.getRandomValues;if(typeof e!="function")throw new Error("automation: no secure random source. globalThis.crypto.getRandomValues is required to scope document handles to one host.");let s=e.call(r,new Uint8Array(16)),a="";for(let l of s)a+=l.toString(16).padStart(2,"0");return a}function jn(r){return typeof r=="object"&&r!==null&&"kind"in r&&"ref"in r}function ze(){let r=new Map,e=new Map,s=new Map,a=new Map,l=Bn(),u=null,h=(m,k)=>{let f=(a.get(m)??0)+1;a.set(m,f);let g=`${m}:${l}:${String(f)}`;return r.set(g,k),Object.freeze({kind:m,ref:g})},b=(m,k,f)=>{let g=`${m}\0${k}`,R=s.get(g);if(R)return Object.freeze({kind:m,ref:R});let A=h(m,f);return s.set(g,A.ref),A};return {document(){return u??=h("document",{kind:"document"}),u},body(m){return b("body",_(m),{kind:"body",story:m})},paragraph(m,k){let f=e.get(m);if(f)return Object.freeze({kind:"paragraph",ref:f});let g=h("paragraph",{kind:"paragraph",paragraphId:m,story:k});return e.set(m,g.ref),g},section(m){return b("section",String(m),{kind:"section",index:m})},note(m,k){return b("note",`${m}:${String(k)}`,{kind:"note",noteKind:m,noteId:k})},comment(m,k){return b("comment",`${_(k)}\0${m}`,{kind:"comment",commentId:m,story:k})},revision(m,k){return b("revision",`${_(k)}\0${m}`,{kind:"revision",revisionId:m,story:k})},bookmark(m,k){return b("bookmark",`${_(k)}\0${m}`,{kind:"bookmark",name:m,story:k})},list(m,k){return b("list",`${_(k)}\0${m}`,{kind:"list",numId:m,story:k})},contentControl(m,k){return b("contentControl",`${_(k)}\0${m}`,{kind:"contentControl",nodeId:m,story:k})},retarget(m,k){let f=e.get(m);if(!f||m===k)return;let g=r.get(f);!g||g.kind!=="paragraph"||(e.delete(m),r.set(f,{kind:"paragraph",paragraphId:k,story:g.story}),e.has(k)||e.set(k,f));},resolve(m,k){if(!jn(m)||m.kind!==k||typeof m.ref!="string")return null;let f=r.get(m.ref);return !f||f.kind!==k?null:f}}}var Kn=255,Wn=Object.freeze({nameOf:()=>null,idOf:()=>null,defaultId:null,present:false});function De(r){let e=Ec(r);if(!e)return Wn;let s=new Map,a=new Map,l=null;for(let u of Dc(e).values())if(u.type==="paragraph"){if(s.set(u.styleId,u.name),u.name!==null){let h=u.name.trim().toLowerCase();a.has(h)||a.set(h,u.styleId);}u.isDefault&&l===null&&(l=u.styleId);}return Object.freeze({nameOf:u=>s.get(u)??null,idOf:u=>a.get(u.trim().toLowerCase())??null,defaultId:l,present:true})}function Ht(r,e,s){let a=Ea(r,e);if(!a||a.kind!=="paragraph")return null;let l=zn(Jd(Hd(a),"pStyle"));return l!==null?s.nameOf(l):s.defaultId===null?null:s.nameOf(s.defaultId)}function zn(r){if(!r)return null;for(let e of r.attributes)if(e.localName==="val")return e.value;return null}function Lt(r,e){if(typeof r!="string"||r.trim().length===0)return {ok:false,detail:"style: not a name"};if(r.length>Kn)return {ok:false,detail:"style: name too long"};if(!W$1(r))return {ok:false,detail:"style: not valid XML text"};if(!e.present)return {ok:false,detail:"style: this document defines no styles"};let s=e.idOf(r);return s===null?{ok:false,detail:"style: this document defines no paragraph style with that name"}:{ok:true,styleId:s}}var $e=20,Dn=31680,Vn=1999,$n=Object.freeze({bold:null,italic:null,name:null,size:null,color:null});function U(r,e){if(!r)return null;for(let s of r.attributes)if(s.localName===e)return s.value;return null}function Ut(r){if(!r)return null;let e=U(r,"val");if(e===null)return true;let s=e.trim().toLowerCase();return !(s==="0"||s==="false"||s==="off"||s==="none")}function Un(r){if(r===null)return null;let e=r.trim();return /^[0-9a-fA-F]{6}$/.test(e)?`#${e.toUpperCase()}`:null}function Xn(r){if(r===null)return null;let e=Number(r.trim());return !Number.isFinite(e)||e<=0?null:e/2}function ct(r){if(r===null)return null;let e=Number(r.trim());return Number.isFinite(e)?e/$e:null}function bt(r){if(r.length===0)return null;let e=r[0];if(e===null)return null;for(let s of r)if(s!==e)return null;return e}function Ue(r,e){let s=[];for(let a of e)for(let l of Yf(r,a.paragraphId,a.start,a.end))s.push(Id(l));return s.length===0?$n:{bold:bt(s.map(a=>Ut(Jd(a,"b")))),italic:bt(s.map(a=>Ut(Jd(a,"i")))),name:bt(s.map(a=>{let l=Jd(a,"rFonts"),u=U(l,"ascii");return u===null||u.length===0?null:u})),size:bt(s.map(a=>Xn(U(Jd(a,"sz"),"val")))),color:bt(s.map(a=>Un(U(Jd(a,"color"),"val"))))}}var Yn=Object.freeze({left:"Left",start:"Left",center:"Centered",right:"Right",end:"Right",both:"Justified",distribute:"Justified"}),Gn=Object.freeze({Left:"left",Centered:"center",Right:"right",Justified:"both"});function Jn(r){let e=U(Jd(r,"jc"),"val");return e===null?"Unknown":Yn[e.trim().toLowerCase()]??"Unknown"}function Xe(r,e,s){let a=Ea(r,e);if(!a||a.kind!=="paragraph")return null;let l=Hd(a),u=Jd(l,"spacing"),h=Jd(l,"ind");return {alignment:Jn(l),style:Ht(r,e,s),firstLineIndent:Qn(h),leftIndent:ct(U(h,"left")??U(h,"start")),rightIndent:ct(U(h,"right")??U(h,"end")),lineSpacing:ct(U(u,"line")),spaceBefore:ct(U(u,"before")),spaceAfter:ct(U(u,"after")),widowControl:Ut(Jd(l,"widowControl"))}}function Qn(r){let e=ct(U(r,"firstLine"));if(e!==null)return e;let s=ct(U(r,"hanging"));return s===null?null:-s}function Mt(r,e){if(typeof r!="number"||!Number.isFinite(r))return {ok:false,detail:`${e}: not a measurement`};let s=Math.round(r*$e);return Math.abs(s)>Dn?{ok:false,detail:`${e}: out of range`}:{ok:true,value:s}}function Ye(r){let e=[];if(r.bold!==void 0){if(typeof r.bold!="boolean")return {ok:false,detail:"bold: not a boolean"};e.push({localName:"b",...r.bold?{}:{attributes:{val:"0"}}});}if(r.italic!==void 0){if(typeof r.italic!="boolean")return {ok:false,detail:"italic: not a boolean"};e.push({localName:"i",...r.italic?{}:{attributes:{val:"0"}}});}if(r.name!==void 0){let s=r.name;if(typeof s!="string"||s.length===0||s.length>128)return {ok:false,detail:"name: not a font name"};if(!W$1(s))return {ok:false,detail:"name: not valid XML text"};e.push({localName:"rFonts",attributes:{ascii:s,hAnsi:s,cs:s}});}if(r.size!==void 0){let s=r.size;if(typeof s!="number"||!Number.isFinite(s)||s<=0)return {ok:false,detail:"size: not a positive number of points"};let a=Math.round(s*2);if(a<1||a>Vn)return {ok:false,detail:"size: out of range"};e.push({localName:"sz",attributes:{val:String(a)}}),e.push({localName:"szCs",attributes:{val:String(a)}});}if(r.color!==void 0){let s=r.color;if(typeof s!="string"||!/^#[0-9a-fA-F]{6}$/.test(s.trim()))return {ok:false,detail:"color: not a #RRGGBB triplet"};e.push({localName:"color",attributes:{val:s.trim().slice(1).toUpperCase()}});}return e.length===0?{ok:false,detail:"no formatting was asked for"}:{ok:true,value:e}}function Ge(r,e,s,a){let l=Ea(r,e);if(!l||l.kind!=="paragraph")return {ok:false,detail:"not a paragraph"};let u=Hd(l),h=[];if(s.style!==void 0){let A=Lt(s.style,a);if(!A.ok)return {ok:false,detail:A.detail};h.push({localName:"pStyle",attributes:{val:A.styleId}});}if(s.alignment!==void 0){let A=Gn[s.alignment];if(A===void 0)return {ok:false,detail:`alignment: ${String(s.alignment)}`};h.push({localName:"jc",attributes:{val:A}});}let b=Jd(u,"ind"),m=Ve(b),k=false;if(s.firstLineIndent!==void 0){let A=Mt(s.firstLineIndent,"firstLineIndent");if(!A.ok)return A;delete m.firstLine,delete m.hanging,A.value<0?m.hanging=String(-A.value):m.firstLine=String(A.value),k=true;}for(let[A,T,O]of [["leftIndent","left","start"],["rightIndent","right","end"]]){let H=s[A];if(H===void 0)continue;let L=Mt(H,A);if(!L.ok)return L;delete m[O],m[T]=String(L.value),k=true;}k&&h.push({localName:"ind",attributes:m});let f=Jd(u,"spacing"),g=Ve(f),R=false;for(let[A,T]of [["spaceBefore","before"],["spaceAfter","after"]]){let O=s[A];if(O===void 0)continue;let H=Mt(O,A);if(!H.ok)return H;if(H.value<0)return {ok:false,detail:`${A}: out of range`};g[T]=String(H.value),R=true;}if(s.lineSpacing!==void 0){let A=Mt(s.lineSpacing,"lineSpacing");if(!A.ok)return A;if(A.value<=0)return {ok:false,detail:"lineSpacing: out of range"};g.line=String(A.value),g.lineRule??="auto",R=true;}if(R&&h.push({localName:"spacing",attributes:g}),s.widowControl!==void 0){if(typeof s.widowControl!="boolean")return {ok:false,detail:"widowControl: not a boolean"};h.push({localName:"widowControl",...s.widowControl?{}:{attributes:{val:"0"}}});}return h.length===0?{ok:false,detail:"no formatting was asked for"}:{ok:true,value:Uf(Sf(r,e),h)}}function Ve(r){let e=Object.create(null);if(!r)return e;for(let s of r.attributes)e[s.localName]=s.value;return e}var Je=20,Zn=63360;function rt(r){return Math.round(r/Je*100)/100}function qn(r,e){if(typeof r!="number"||!Number.isFinite(r))return null;let s=Math.round(r*Je);return s>Zn||s<0||s===0&&!e?null:s}var to=[["pageWidth","pageWidthTwips",false],["pageHeight","pageHeightTwips",false],["topMargin","marginTopTwips",true],["rightMargin","marginRightTwips",true],["bottomMargin","marginBottomTwips",true],["leftMargin","marginLeftTwips",true]];function Qe(r){if(typeof r!="object"||r===null)return {ok:false,reason:"that is not a page setup",detail:"not-an-object"};let e=r,s={},a=0;for(let[u,h,b]of to){let m=e[u];if(m===void 0)continue;let k=qn(m,b);if(k===null)return {ok:false,reason:`that is not a value for ${u}`,detail:String(m)};s[h]=k,a+=1;}let l=e.orientation;if(l!==void 0){if(l!=="portrait"&&l!=="landscape")return {ok:false,reason:"that is not an orientation",detail:String(l)};s.orientation=l,a+=1;}return a===0?{ok:false,reason:"that page setup names nothing to write",detail:"empty"}:{ok:true,value:s}}function eo(r){let e=ef(r),s=e.widthTwips>e.heightTwips?"landscape":"portrait";return Object.freeze({pageWidth:rt(e.widthTwips),pageHeight:rt(e.heightTwips),orientation:s,topMargin:rt(e.topTwips),rightMargin:rt(e.rightTwips),bottomMargin:rt(e.bottomTwips),leftMargin:rt(e.leftTwips),headerDistance:rt(e.headerTwips),footerDistance:rt(e.footerTwips),gutter:rt(e.gutterTwips)})}function no(r,e){if(!e)return null;let s=null,a=(l,u,h)=>{if(s!==null||l.kind==="textValue"||h>64)return;let b=l.kind==="paragraph"?l.id:u;if(l.id===e.id){s=b;return}for(let m of l.children)a(m,b,h+1);};return a(r.root,null,0),s}function Ze(r,e,s){let a=Rb(e.root);return Object.freeze(a.map((l,u)=>{let h=s[u];return Object.freeze({index:u,markParagraphId:no(e,l),pageSetup:eo(l),titlePage:h?.titlePage??false,evenAndOddHeaders:h?.evenAndOddHeaders??false})}))}var Yt="\r",oo=Object.freeze({nameOf:()=>null,idOf:()=>null,defaultId:null,present:false}),ro=Object.freeze([]),ao=Object.freeze([]),qe=Object.freeze([]),so=Object.freeze({package:null,body:null,story:()=>null,storyOf:()=>null,sections:()=>ao,furniture:()=>qe,noteIds:()=>Object.freeze([]),styles:()=>oo});function io(r){return r.kind==="textValue"?ro:Object.freeze(r.children.filter(e=>e.kind!=="textValue").map(e=>{let s=[];ze$1([e],s,0);let a=e.kind==="paragraph"?"paragraph":e.kind==="table"?"table":"other",l=e.kind==="paragraph"&&Jd(Hd(e),"sectPr")!==void 0;return Object.freeze({id:e.id,kind:a,paragraphIds:Object.freeze(s.map(u=>u.id)),removable:a!=="other"&&!l})}))}function Xt(r,e,s,a,l){let u=ye(a),h=Object.freeze(u.map(g=>g.id)),b=new Map,m=new Map;u.forEach((g,R)=>{b.set(g.id,R),m.set(g.id,g);});let k=new Map,f=g=>{if(!b.has(g))return null;let R=k.get(g);if(R!==void 0)return R;let A=vf(e,g)??"";return k.set(g,A),A};return {story:r,part:e,root:a,scope:s,paragraphIds:h,blocks:io(a),has:g=>b.has(g),indexOf:g=>b.get(g)??-1,paragraph(g){let R=m.get(g);return R?{nodeId:g,paraId:Hc(R),text:f(g)??""}:null},node:g=>m.get(g)??null,paragraphText:f,text:()=>h.map(g=>f(g)??"").join(Yt),styles:l}}function tn(r){let e=r.parts.get(r.mainDocumentPart);if(!e)return so;let s,a=()=>s??=De(r),l,u=()=>l??=Sb(r),h,b=new Map,m=A=>{let T=u()[A.sectionIndex];return T?(A.kind==="header"?T.headers:T.footers).get(A.variant)??null:null},k=A=>{if(A.kind==="body"){let O=xe(e);return O?Xt(A,e,{kind:"body"},O,a):null}if(A.kind==="note"){let O=Rd(r,A.noteKind);if(!O)return null;let H=td(O.root,A.noteId);return !H||!jd(H)?null:Xt(A,O,{kind:"notesPart",noteKind:A.noteKind},H,a)}let T=m(A);return T?Xt(A,T.part,{kind:"headerFooter",rId:T.rId},T.part.root,a):null},f=A=>{let T=_(A);if(b.has(T))return b.get(T)??null;let O=k(A);return b.set(T,O),O},g=A=>{if(f(it)?.has(A))return it;for(let[O]of u().entries())for(let H of ["header","footer"])for(let L of Nt){let j={kind:H,sectionIndex:O,variant:L};if(f(j)?.has(A))return j}for(let O of ["footnote","endnote"])for(let H of R(O)){let L={kind:"note",noteKind:O,noteId:H};if(f(L)?.has(A))return L}return null},R=A=>{let T=Rd(r,A);if(!T)return lo;let O=[];for(let H of sd(T.root)){if(!jd(H))continue;let L=hd(H);L!==null&&O.push(L);}return Object.freeze(O)};return {package:r,get body(){return f(it)},story:f,storyOf:g,sections:()=>h??=Ze(r,e,u()),furniture(A){let T=u()[A];if(!T)return qe;let O=[];for(let H of ["header","footer"]){let L=H==="header"?T.headers:T.footers;for(let j of Nt){let Q=L.get(j);Q&&O.push(Object.freeze({kind:H,variant:j,declared:!Q.inherited}));}}return Object.freeze(O)},noteIds:R,styles:a}}var lo=Object.freeze([]);function q(r,e){return {ok:false,code:r,detail:e}}function tt(r){return {ok:true,value:r}}function $(r,e,s,a){let l=s.resolve(r,e);if(!l||l.kind!=="body"&&l.kind!=="paragraph")return q("invalid-handle",`not-a-${e}-handle`);let u=a.story(l.story);return u?tt(u):q("invalid-handle",`no-such-story:${_(l.story)}`)}function G(r,e,s){let a=e.resolve(r,"paragraph");if(!a||a.kind!=="paragraph")return q("invalid-handle","not-a-paragraph-handle");let l=s.story(a.story);if(!l)return q("invalid-handle",`no-such-story:${_(a.story)}`);let u=l.indexOf(a.paragraphId);return u<0?q("invalid-handle","paragraph-not-in-body"):tt({story:a.story,paragraphId:a.paragraphId,index:u,offset:0})}function uo(r,e,s){let a=G(r.paragraph,e,s);if(!a.ok)return a;let u=(s.story(a.value.story)?.paragraphText(a.value.paragraphId)??"").length,{offset:h}=r;return !Number.isInteger(h)||h<0||h>u?q("invalid-offset",`offset ${String(h)} outside 0..${String(u)}`):tt({...a.value,offset:h})}function mt(r,e,s){if("paragraph"in r){if(!("at"in r))return uo(r,e,s);let b=G(r.paragraph,e,s);if(!b.ok||r.at==="start")return b;let k=(s.story(b.value.story)?.paragraphText(b.value.paragraphId)??"").length;return tt({...b.value,offset:k})}let a=$(r.body,"body",e,s);if(!a.ok)return a;let l=a.value.paragraphIds;if(l.length===0)return q("invalid-offset","empty-story");if(r.at==="start")return tt({story:a.value.story,paragraphId:l[0],index:0,offset:0});let u=l.length-1,h=l[u];return tt({story:a.value.story,paragraphId:h,index:u,offset:(a.value.paragraphText(h)??"").length})}function co(r,e){return r.index<e.index||r.index===e.index&&r.offset<=e.offset}function po(r){let e=r.paragraphIds;if(e.length===0)return null;let s=e.length-1,a=e[s];return {start:{story:r.story,paragraphId:e[0],index:0,offset:0},end:{story:r.story,paragraphId:a,index:s,offset:(r.paragraphText(a)??"").length}}}function W(r,e,s){if("body"in r){let u=$(r.body,"body",e,s);return u.ok?tt(po(u.value)):u}if("paragraph"in r){let u=G(r.paragraph,e,s);if(!u.ok)return u;let b=(s.story(u.value.story)?.paragraphText(u.value.paragraphId)??"").length;return tt({start:u.value,end:{...u.value,offset:b}})}let a=mt(r.start,e,s);if(!a.ok)return a;let l=mt(r.end,e,s);return l.ok?_(a.value.story)!==_(l.value.story)?q("invalid-handle","span-crosses-stories"):co(a.value,l.value)?tt({start:a.value,end:l.value}):q("invalid-offset","span-start-after-end"):l}function at(r,e,s){if("body"in r)return $(r.body,"body",e,s);if("paragraph"in r)return $(r.paragraph,"paragraph",e,s);let a=r.start;return "paragraph"in a?$(a.paragraph,"paragraph",e,s):$(a.body,"body",e,s)}function Et(r,e,s){if("paragraph"in r)return G(r.paragraph,e,s);let a=$(r.body,"body",e,s);if(!a.ok)return a;let l=a.value.paragraphIds;if(l.length===0)return q("invalid-offset","empty-story");let u=r.at==="first"?0:l.length-1;return tt({story:a.value.story,paragraphId:l[u],index:u,offset:0})}function et(r,e){return r?e.paragraphIds.slice(r.start.index,r.end.index+1):[]}function Gt(r,e){if(!r)return [];let s=et(r,e),a=s.length-1;return s.map((l,u)=>{let h=(e.paragraphText(l)??"").length,b=u===0?r.start.offset:0,m=u===a?r.end.offset:h;return {paragraphId:l,start:b,end:m,whole:b===0&&m===h}})}function en(r,e,s){if(!r)return "";let a=et(r,e);return a.length===1?(e.paragraphText(r.start.paragraphId)??"").slice(r.start.offset,r.end.offset):a.map((l,u)=>{let h=e.paragraphText(l)??"";return u===0?h.slice(r.start.offset):u===a.length-1?h.slice(0,r.end.offset):h}).join(s)}function Jt(r,e){return {start:{paragraph:e.paragraph(r.start.paragraphId,r.start.story),offset:r.start.offset},end:{paragraph:e.paragraph(r.end.paragraphId,r.end.story),offset:r.end.offset}}}var mo=256,nn=1e4;function Qt(r,e){if(r.kind!=="textValue"){for(let s of r.attributes)if(s.namespaceUri===la&&s.localName===e)return s.value}}function fo(r){return r.startsWith("_")}function Zt(r){let e=new Map,s=[],a=new Set;for(let l of r.paragraphIds){let u=r.node(l);if(u?.kind!=="paragraph")continue;let h=Ld(u),b=m=>{if(m.kind!=="textValue"){if(m.kind==="bookmarkStart"){if(s.length>=nn||e.size>=nn)return;let k=Qt(m,"id"),f=Qt(m,"name");if(k===void 0||f===void 0||f.length===0||f.length>mo||fo(f)||a.has(f)||e.has(k))return;let g=h.spanOf(m)?.start??0;e.set(k,{name:f,start:{paragraphId:l,offset:g}});return}if(m.kind==="bookmarkEnd"){let k=Qt(m,"id");if(k===void 0)return;let f=e.get(k);if(!f)return;e.delete(k),a.add(f.name);let g=h.spanOf(m)?.start??0;s.push(Object.freeze({name:f.name,start:f.start,end:{paragraphId:l,offset:g}}));return}for(let k of m.children)b(k);}};for(let m of u.children)b(m);}return Object.freeze(s)}function qt(r,e){return Zt(r).find(s=>s.name===e)??null}function on(r,e){let s=r.node(e);if(s?.kind!=="paragraph")return Object.freeze([]);let a=Ld(s),l=[],u=(h,b)=>{if(!(h.kind==="textValue"||b>32)){if(Qa(h)){let m=a.spanOf(h);m&&l.push(Object.freeze({id:h.id,paragraphId:e,start:m.start,end:m.end}));return}for(let m of h.children)u(m,b+1);}};for(let h of s.children)u(h,0);return Object.freeze(l)}function rn(r,e,s){let a=Ta(s,l=>Qc(r,e,l));if(a.kind==="external")return a.href;if(a.kind==="internal"){let l=Ra(s);return l===void 0||l.length===0?null:`#${l}`}return null}var ft=8;function an(r){if(!r||r.kind==="textValue")return null;for(let e of r.attributes)if(e.namespaceUri===la&&e.localName==="val")return e.value;return null}function sn(r){let e=Jd(Hd(r),"numPr");if(!e)return null;let s=an(Jd(e,"numId"));if(s===null||!/^\d{1,10}$/.test(s)||s==="0")return null;let a=an(Jd(e,"ilvl")),l=a===null?0:Number(a);return !Number.isInteger(l)||l<0||l>ft?null:{numId:s,level:l}}function _t(r){let e=new Map;for(let s of r.paragraphIds){let a=r.node(s);if(!a)continue;let l=sn(a);if(!l)continue;let u=e.get(l.numId);u?u.push(s):e.set(l.numId,[s]);}return Object.freeze([...e].map(([s,a])=>Object.freeze({numId:s,paragraphIds:Object.freeze(a)})))}function It(r,e){let s=r.node(e);return s?sn(s):null}var go={insert:"Insert",delete:"Delete",replace:"Replace",moveFrom:"MovedFrom",moveTo:"MovedTo",format:"Property",paragraphMark:"ParagraphProperty"};function yo(r){return r.kind==="note"}function ho(r,e){return e.length===0?!yo(r.story):e.every(s=>r.has(s.start.paragraphId))}function te(r){let e=[];for(let s of bg(r.part)){if(s.readOnly||s.revisionKind==="structural"||!ho(r,s.ranges))continue;let a=go[s.revisionKind];a!==void 0&&e.push(Object.freeze({id:s.id,type:a,author:s.author,date:s.date??"",item:s}));}return Object.freeze(e)}function ko(r,e){let s=r;for(let a=0;s!==void 0&&a<=64;a+=1){if(s.parentId===void 0)return s.range!==null;s=e.get(s.parentId);}return false}var Ao=Object.freeze({items:Object.freeze([]),roots:Object.freeze([]),byId:()=>null,textOf:()=>""});function dn(r,e){let s=r.parts.get(Ef(r,e.part.name));if(!s)return Ao;let a=r.parts.get(Ff(r,e.part.name)),l=Ce(s),u=a?De$1(a):new Map,h=Be(e.part).filter(g=>e.has(g.start.paragraphId)),b=cg(l,h,u),m=new Map(b.map(g=>[g.id,g])),k=b.filter(g=>ko(g,m)),f=new Map(k.map(g=>[g.id,g]));return Object.freeze({items:Object.freeze(k),roots:Object.freeze(k.filter(g=>g.parentId===void 0)),byId:g=>f.get(g)??null,textOf:g=>{let R=f.get(g);return R?$f(R.comment):""}})}var vo=1e4;function ln(r,e){let s=[],a=e.kind==="contentControl"?ie(e):e;if(!a)return s;for(let l of me(a))if(!(l.ancestors.length>0)){if(s.length>=vo)break;s.push(mn(r,l.node));}return s}function un(r,e){for(let s of me(r.root))if(s.node.id===e)return mn(r,s.node);return null}function cn(r,e){for(let s of me(r.root))if(s.node.id===e)return s.node;return null}function ee(r,e){let s=fn(e);if(s.length>0){let a=s[0],l=s[s.length-1],u=r.paragraphText(l);return u===null||!r.has(a)?null:{start:{paragraphId:a,offset:0},end:{paragraphId:l,offset:u.length}}}for(let a of r.paragraphIds){let l=r.node(a);if(!l||l.kind!=="paragraph"||!l.children.some(h=>h.id===e.id))continue;let u=Ld(l).spanOf(e);return u?{start:{paragraphId:a,offset:u.start},end:{paragraphId:a,offset:u.end}}:null}return null}function pn(r){return oe(r)}function mn(r,e){return {nodeId:e.id,properties:ke(e),lock:wf(r.part,e.id),paragraphIds:fn(e)}}function fn(r){let e=ie(r);if(!e)return [];let s=[];return ze$1(e.children,s,0),s.map(a=>a.id)}var bo=new Set(["unlocked","sdtLocked","contentLocked","sdtContentLocked"]),Io=4096,gn=64;function yn(r){if(r===void 0)return {ok:true,value:null};if(typeof r!="object"||r===null)return {ok:false,field:"payload"};let e=r;for(let s of ["namespaceUri","rootLocalName","nodeId"]){let a=e[s];if(typeof a!="string"||a.length===0||a.length>Io)return {ok:false,field:s}}return typeof e.label!="string"||e.label.length>Hf?{ok:false,field:"label"}:typeof e.data!="string"||e.data.length===0||e.data.length>Gf?{ok:false,field:"data"}:{ok:true,value:{namespaceUri:e.namespaceUri,rootLocalName:e.rootLocalName,nodeId:e.nodeId,label:e.label,data:e.data}}}function hn(r){let e=r.at!==void 0,s=r.span!==void 0;return e===s?{message:"a custom node goes at a position or over a span, not both",detail:e?"at+span":"no-place"}:typeof r.tag!="string"||r.tag.length===0?{message:"a custom node carries its identity in its tag",detail:"tag"}:r.tag.length>gn?{message:`w:tag caps at ${String(gn)} characters; a longer payload belongs in the store`,detail:"tag"}:typeof r.text!="string"||r.text.length===0?{message:"a custom node shows some text",detail:"text"}:r.lock!==void 0&&!bo.has(r.lock)?{message:"that is not a lock",detail:String(r.lock)}:null}function kn(r,e,s,a){return {paragraphId:e.paragraphId,offset:e.offset,...s.offset>e.offset?{replaceUntil:s.offset}:{},tag:r.tag,text:r.text,...r.title===void 0?{}:{alias:r.title},...r.lock===void 0||r.lock==="unlocked"?{}:{lock:r.lock},...a===null?{}:{payload:a}}}function An(r,e,s){if(r.span){let l=W(r.span,e,s);return l.ok?l.value?l.value.start.paragraphId!==l.value.end.paragraphId?{code:"unsupported-content",message:"a custom node wraps text inside one paragraph",detail:"multi-paragraph"}:{range:l.value}:{code:"invalid-offset",message:"that story holds nothing to wrap",detail:"empty-story"}:{code:l.code,message:"that span is not a place",detail:l.detail}}let a=mt(r.at,e,s);return a.ok?{range:{start:a.value,end:a.value}}:{code:a.code,message:"that is not a place",detail:a.detail}}var xt=/[\r\n\v\f\u2028\u2029]/,xo=16,So=64,vn=/\s/;function Ro(r,e,s){return Object.freeze(s===void 0?{code:r,message:e}:{code:r,message:e,detail:s})}function d(r,e,s){return {ok:false,error:Ro(r,e,s)}}var F=Object.freeze({kind:"applied"});function I(r){return {ok:true,kind:"query",value:r}}function bn(r){let e=r.kind==="contentControl"?ie(r):r;return e?me(e).map(s=>s.node):[]}var Co=new Set(["unlocked","sdtLocked","contentLocked","sdtContentLocked"]),Oo=new Set(["whole","content","start","end","before","after"]),Po=new Set(["richText","plainText","dropDownList","comboBox","date"]),wo=4096;function To(r){let e=(l,u)=>({ok:false,code:"unsupported-content",message:l,detail:u});if(typeof r!="object"||r===null||!("kind"in r))return e("a control value states its kind","value");let s=r,a=s.kind;if(a==="text"||a==="listItem"){let l=a==="text"?s.text:s.value;return typeof l!="string"?e("that value is not a string",String(a)):l.length>wo?e("that value is too long",String(l.length)):{ok:true,value:a==="text"?{kind:"text",text:l}:{kind:"listItem",value:l}}}if(a==="checkbox"){let l=s.checked;return typeof l!="boolean"?e("a checkbox is checked or not","checked"):{ok:true,value:{kind:"checkbox",checked:l}}}if(a==="date"){let l=s.iso;return typeof l!="string"?e("a date is an ISO-8601 string","iso"):l.length>64?e("that is not a date",String(l.length)):{ok:true,value:{kind:"date",iso:l}}}return e("that is not a value any control accepts",String(a))}function No(r,e){let s=[],a=0;for(;a<r.length;){let l=null;for(let u of e){let h=r.indexOf(u,a);h<0||(!l||h<l.start||h===l.start&&u.length>l.length)&&(l={start:h,length:u.length});}if(!l)break;s.push(l),a=l.start+l.length;}return s}function Ho(r,e,s){let a=e[s]?.markParagraphId??null;if(a!==null)return a;let l=r.paragraphIds,u=l[l.length-1];return u===void 0||new Set(e.map(b=>b.markParagraphId).filter(b=>b!==null)).has(u)?null:u}function Lo(r,e){for(let s of [r.start,r.end]){let a=e.paragraphText(s.paragraphId);if(a===null||s.offset>a.length)return false}return true}function Mo(r,e,s){let a=e,l=s;for(;a<l&&vn.test(r[a]);)a+=1;for(;l>a&&vn.test(r[l-1]);)l-=1;return [a,l]}function In(r){let{handles:e,capabilities:s}=r,a=r.reads,l=new Map,u=o=>{let t=_(o.story),n=l.get(t);if(n)return n;let i=new Map,c=o.paragraphIds.map(y=>{let v={id:y};return i.set(y,v),v}),p={reads:o,order:c,slotById:i,created:[],restructured:new Set,touched:new Set,formatted:new Set,selected:new Set,retargets:[]};return l.set(t,p),p},h=[],b=false,m=false,k=null,f=o=>k===null?(k=o,null):k===o?null:d("conflicting-operations","one batch writes into one story",`${_(k.reads.story)} then ${_(o.reads.story)}`),g=o=>{let t=a.package;return t===null?null:dn(t,o)},R=o=>{let t=e.resolve(o,"comment");if(!t||t.kind!=="comment")return {ok:false,planned:d("invalid-handle","that handle does not name a comment","comment")};let n=a.story(t.story);if(!n)return {ok:false,planned:d("invalid-handle","that story is not in this document")};let c=g(n)?.byId(t.commentId)??null;return c?{ok:true,reads:n,item:c}:{ok:false,planned:d("invalid-handle","this document no longer holds that comment",t.commentId)}},A=o=>{let t=e.resolve(o,"revision");if(!t||t.kind!=="revision")return {ok:false,planned:d("invalid-handle","that handle does not name a tracked change","revision")};let n=a.story(t.story);if(!n)return {ok:false,planned:d("invalid-handle","that story is not in this document")};let i=te(n).find(c=>c.id===t.revisionId)??null;return i?{ok:true,reads:n,item:i}:{ok:false,planned:d("invalid-handle","this document no longer holds that tracked change",t.revisionId)}},T=(o,t)=>{let n=o.paragraphText(t.start.paragraphId),i=o.paragraphText(t.end.paragraphId);if(n===null||i===null)return null;let c={story:o.story,paragraphId:t.start.paragraphId,index:o.indexOf(t.start.paragraphId),offset:Math.min(t.start.offset,n.length)},p={story:o.story,paragraphId:t.end.paragraphId,index:o.indexOf(t.end.paragraphId),offset:Math.min(t.end.offset,i.length)};return M({start:c,end:p})},O=(o,t)=>o.order.indexOf(t),H=(o,t)=>o.selected.has(t)?d("conflicting-operations","this batch selects a paragraph it also edits",t):null,L=(o,t)=>{let n=H(o,t);return n||(o.restructured.has(t)||o.touched.has(t)?d("conflicting-operations","another operation in this batch already changes that paragraph",t):(o.restructured.add(t),o.touched.add(t),null))},j=(o,t)=>{let n=H(o,t);return n||(o.restructured.has(t)?d("conflicting-operations","another operation in this batch restructures that paragraph",t):(o.touched.add(t),null))},Q=(o,t,n)=>{let i=`${n}:${t}`;if(o.formatted.has(i))return d("conflicting-operations","another operation in this batch already writes that formatting",t);let c=j(o,t);return c||(o.formatted.add(i),null)},dt=(o,t)=>{let n={id:null};return o.order.splice(t,0,n),o.created.push(n),n},M=o=>Jt(o,e),X=o=>o===null?null:a.story(o.start.story),St=(o,t,n,i)=>{if(i?.matchWildcards===true)return d("unsupported-capability","wildcard search is not implemented","matchWildcards");if(i?.ignorePunct===true)return d("unsupported-capability","ignoring punctuation is not implemented","ignorePunct");if(i?.ignoreSpace===true)return d("unsupported-capability","ignoring whitespace is not implemented","ignoreSpace");if(!ng(n))return d("unsupported-content","that is not a query this host will scan for","text");let c=i?.limit;if(c!==void 0&&(!Number.isInteger(c)||c<0))return d("invalid-offset","limit must be a non-negative integer",String(c));let p=Math.min(c??2e3,2e3),y=[],v=et(t,o),x=v.length-1;for(let[P,w]of v.entries()){if(p<=0)break;let E=o.paragraphText(w)??"",C=og(E,n,p,{matchCase:i?.matchCase===true,wholeWord:i?.matchWholeWord===true,...P===0&&t?{from:t.start.offset}:{},...P===x&&t?{to:t.end.offset}:{}});for(let S of C.matches){let V=e.paragraph(w,o.story);y.push({start:{paragraph:V,offset:S.start},end:{paragraph:V,offset:S.start+S.length}});}p-=C.matches.length;}return I({kind:"spans",spans:y})},gt=(o,t,n)=>{if(typeof n!="string")return d("unsupported-content","insertText needs text","text");if(xt.test(n))return d("unsupported-content","text carrying a paragraph mark is not written by this host","paragraph-mark-in-text");let i=f(o);if(i)return i;let c=j(o,t.paragraphId);if(c)return c;let p=n.length===0?[]:[{op:"insertText",paragraphId:t.paragraphId,offset:t.offset,text:n}],y=()=>({kind:"span",span:M({start:t,end:{...t,offset:t.offset+n.length}})});return {ok:true,kind:"command",ops:p,story:o.reads.story,answer:y}},Rt=(o,t,n)=>{let i=o.reads;if(typeof n!="string")return d("unsupported-content","replaceSpan needs text","text");if(xt.test(n))return d("unsupported-content","text carrying a paragraph mark is not written by this host","paragraph-mark-in-text");let c=et(t,i),p=t.start.paragraphId,y=[],v=f(o);if(v)return v;if(c.length===1){let w=j(o,p);if(w)return w;t.end.offset>t.start.offset&&y.push({op:"deleteText",paragraphId:p,start:t.start.offset,end:t.end.offset});}else {for(let C of c){let S=L(o,C);if(S)return S}let w=t.end.paragraphId,E=(i.paragraphText(p)??"").length;t.start.offset<E&&y.push({op:"deleteText",paragraphId:p,start:t.start.offset,end:E}),t.end.offset>0&&y.push({op:"deleteText",paragraphId:w,start:0,end:t.end.offset});for(let C of c.slice(1,-1))y.push({op:"deleteBlock",blockId:C});y.push({op:"joinParagraphs",firstId:p,secondId:w});for(let C of c.slice(1)){let S=o.slotById.get(C);S&&o.order.splice(O(o,S),1);}}n.length>0&&y.push({op:"insertText",paragraphId:p,offset:t.start.offset,text:n});let x={...t.start,paragraphId:p},P=()=>({kind:"span",span:M({start:x,end:{...x,offset:x.offset+n.length}})});return {ok:true,kind:"command",ops:y,story:o.reads.story,answer:P}},ne=(o,t)=>{let n=o.reads;if(typeof t!="string")return d("unsupported-content","replaceSpan needs text","text");if(xt.test(t))return d("unsupported-content","text carrying a paragraph mark is not written by this host","paragraph-mark-in-text");let i=n.blocks,c=i.filter(S=>S.removable),p=i.filter(S=>!S.removable).flatMap(S=>S.paragraphIds),y=p.length===0?c.find(S=>S.kind==="paragraph"):void 0;if(!y&&p.length===0)return d("invalid-offset","that story holds no paragraph this host can write into","no-top-level-paragraph");let v=f(o);if(v)return v;for(let S of n.paragraphIds){let V=L(o,S);if(V)return V}let x=[],P=(y?[y.id]:[...p]).sort((S,V)=>n.indexOf(S)-n.indexOf(V)),w=P[0];for(let S of P){let V=(n.paragraphText(S)??"").length;V>0&&x.push({op:"deleteText",paragraphId:S,start:0,end:V});}for(let S of c)S.id!==y?.id&&x.push({op:"deleteBlock",blockId:S.id});t.length>0&&x.push({op:"insertText",paragraphId:w,offset:0,text:t});for(let S of c)if(S.id!==y?.id)for(let V of S.paragraphIds){let Ct=o.slotById.get(V);Ct&&o.order.splice(O(o,Ct),1);}let E={story:n.story,paragraphId:w,index:n.indexOf(w),offset:0},C=()=>({kind:"span",span:M({start:E,end:{...E,offset:t.length}})});return {ok:true,kind:"command",ops:x,story:n.story,answer:C}},N=(o,t,n,i)=>{let c=o.reads;if(typeof i!="string")return d("unsupported-content","insertParagraph needs text","text");if(xt.test(i))return d("unsupported-content","a paragraph mark inside a paragraph\u2019s text is not written by this host","paragraph-mark-in-text");let p=f(o);if(p)return p;let y=L(o,t.paragraphId);if(y)return y;let v=o.slotById.get(t.paragraphId);if(!v)return d("invalid-handle","that paragraph is not in the body");let x=(c.paragraphText(t.paragraphId)??"").length,P=[];n==="after"?(i.length>0&&P.push({op:"insertText",paragraphId:t.paragraphId,offset:x,text:i}),P.push({op:"splitParagraph",paragraphId:t.paragraphId,offset:x})):(i.length>0&&P.push({op:"insertText",paragraphId:t.paragraphId,offset:0,text:i}),P.push({op:"splitParagraph",paragraphId:t.paragraphId,offset:i.length}));let w=dt(o,O(o,v)+1);n==="before"&&o.retargets.push({from:t.paragraphId,slot:w});let E=()=>{let C=n==="after"?w.id:t.paragraphId;return C===null?F:{kind:"handle",handle:e.paragraph(C,c.story)}};return {ok:true,kind:"command",ops:P,story:c.story,answer:E}},K=(o,t,n,i,c)=>{let p=o.reads;if(!Array.isArray(n)||n.length===0)return d("unsupported-content","split needs at least one delimiter","delimiters");if(n.length>xo)return d("unsupported-content","too many delimiters",String(n.length));for(let z of n){if(typeof z!="string"||z.length===0)return d("unsupported-content","a delimiter must be a non-empty string","delimiters");if(z.length>So)return d("unsupported-content","that delimiter is too long","delimiters")}let y=f(o);if(y)return y;let v=L(o,t.paragraphId);if(v)return v;let x=o.slotById.get(t.paragraphId);if(!x)return d("invalid-handle","that paragraph is not in the body");let P=p.paragraphText(t.paragraphId)??"",w=No(P,n),E=[],C=[],S=[];if(w.length===0)S.push(P);else if(i){for(let D of [...w].reverse())E.push({op:"deleteText",paragraphId:t.paragraphId,start:D.start,end:D.start+D.length});let z=0,st=0;for(let D of w){let jt=D.start-z;C.push(jt),S.push(P.slice(st,D.start)),st=D.start+D.length,z+=D.length;}S.push(P.slice(st));}else {let z=0;for(let st of w){let D=st.start+st.length;C.push(D),S.push(P.slice(z,D)),z=D;}S.push(P.slice(z));}C.length>0&&E.push({op:"splitParagraphMany",paragraphId:t.paragraphId,offsets:C});let V=[x];for(let z=0;z<C.length;z+=1)V.push(dt(o,O(o,x)+1+z));let Ct=z=>{let st=z.story(p.story),D=[];return V.forEach((jt,Nn)=>{let Kt=jt.id;if(Kt===null)return;let Wt=st?.paragraphText(Kt)??S[Nn]??"",[Hn,Ln]=c?Mo(Wt,0,Wt.length):[0,Wt.length],re=e.paragraph(Kt,p.story);D.push({start:{paragraph:re,offset:Hn},end:{paragraph:re,offset:Ln}});}),{kind:"spans",spans:D}};return {ok:true,kind:"command",ops:E,story:p.story,answer:Ct}},nt=(o,t)=>{let n=f(o);if(n)return n;let i=L(o,t.paragraphId);if(i)return i;let c=o.slotById.get(t.paragraphId);return c&&o.order.splice(O(o,c),1),{ok:true,kind:"command",ops:[{op:"deleteBlock",blockId:t.paragraphId}],story:o.reads.story,answer:()=>F}},yt=(o,t,n)=>{let i=o.reads,c=i.part,p=f(o);if(p)return p;let y=Ye(n??{});if(!y.ok)return d("unsupported-content","that is not formatting this host writes",y.detail);let v=[];for(let x of Gt(t,i)){if(x.end<=x.start&&!x.whole)continue;let P=Q(o,x.paragraphId,"runs");if(P)return P;for(let w of Xf(c,x.paragraphId,x.start,x.end,y.value))v.push({op:"setRunProperties",paragraphId:x.paragraphId,start:w.start,end:w.end,properties:w.properties,...w.targetRunIds?{targetRunIds:w.targetRunIds}:{}});x.whole&&v.push({op:"setParagraphMarkProperties",paragraphId:x.paragraphId,properties:Uf(Tf(c,x.paragraphId),y.value)});}return v.length===0?d("invalid-offset","that range covers no characters to format","collapsed-range"):{ok:true,kind:"command",ops:v,story:i.story,answer:()=>F}},lt=(o,t,n)=>{let i=o.reads,c=i.part,p=f(o);if(p)return p;let y=Lt(n,i.styles());if(!y.ok)return d("unsupported-content","that is not a style this document has",y.detail);let v={localName:"pStyle",attributes:{val:y.styleId}},x=[];for(let P of et(t,i)){let w=Q(o,P,"paragraph");if(w)return w;x.push({op:"setParagraphProperties",paragraphId:P,properties:Uf(Sf(c,P),v)});}return x.length===0?d("invalid-offset","that story holds no paragraph to style","empty-story"):{ok:true,kind:"command",ops:x,story:i.story,answer:()=>F}},xn=(o,t,n)=>{let i=o.reads,c=i.part,p=f(o);if(p)return p;let y=Ge(c,t.paragraphId,n??{},i.styles());if(!y.ok)return d("unsupported-content","that is not paragraph formatting this host writes",y.detail);let v=Q(o,t.paragraphId,"paragraph");return v||{ok:true,kind:"command",ops:[{op:"setParagraphProperties",paragraphId:t.paragraphId,properties:y.value}],story:i.story,answer:()=>F}},Sn=(o,t)=>{let n=a.body;if(!n)return d("document-unavailable","this host holds no document right now");let i=a.sections();if(!i[o])return d("invalid-handle","that section is not in this document");let p=Qe(t);if(!p.ok)return d("unsupported-content",p.reason,p.detail);let y=Ho(n,i,o);if(y===null)return d("unsupported-content","that section holds no paragraph to address it by","no-anchor");let v=u(n),x=f(v);return x||{ok:true,kind:"command",ops:[{op:"setSectionProperties",...p.value,anchorParagraphId:y}],story:it,answer:()=>F}},Rn=(o,t)=>({ok:true,kind:"command",ops:[{op:"deleteNote",noteKind:o,noteId:t}],story:it,lifecycle:true,answer:()=>F}),Ft=o=>{let t=e.resolve(o,"list");if(!t||t.kind!=="list")return d("invalid-handle","that handle does not name a list","list");let n=a.story(t.story);if(!n)return d("invalid-handle","that story is not in this document");let i=_t(n).find(c=>c.numId===t.numId);return i?{ok:true,plan:u(n),list:i}:d("invalid-handle","this story numbers nothing with that list",t.numId)},Bt=o=>{if(typeof o!="object"||o===null)return d("invalid-handle","that is not a scope a control lives in","scope");let t=o;if("body"in o){let n=$(t.body,"body",e,a);return n.ok?{reads:n.value,node:n.value.root}:d(n.code,"that handle does not name a body",n.detail)}if("contentControl"in o){let n=Z(t.contentControl);return "control"in n?{reads:n.reads,node:n.node}:n}return d("invalid-handle","that is not a scope a control lives in","scope")},Z=o=>{let t=e.resolve(o,"contentControl");if(!t||t.kind!=="contentControl")return d("invalid-handle","that handle does not name a content control","contentControl");let n=a.story(t.story);if(!n)return d("invalid-handle","that story is not in this document");let i=un(n,t.nodeId),c=cn(n,t.nodeId);return !i||!c?d("invalid-handle","this document no longer holds that content control"):{reads:n,control:i,node:c}},Cn=(o,t,n)=>{if(!Number.isInteger(n)||n<0||n>ft)return d("invalid-offset",`a list level is 0 to ${String(ft)}`,String(n));if(!It(o.reads,t))return d("unsupported-content","that paragraph is not in a list",t);let i=f(o);if(i)return i;let c=Q(o,t,"paragraph");return c||{ok:true,kind:"command",ops:[{op:"setListLevel",paragraphId:t,level:n}],story:o.reads.story,answer:()=>F}},On=(o,t,n,i)=>{if(n!=="start"&&n!=="end")return d("unknown-operation","a list takes an item at its start or its end",String(n));let c=o.reads,p=n==="start"?t.paragraphIds[0]:t.paragraphIds[t.paragraphIds.length-1];if(p===void 0)return d("invalid-handle","that list holds no paragraph");let y={story:c.story,paragraphId:p,index:c.indexOf(p)};return N(o,y,n==="start"?"before":"after",i)},oe=(o,t)=>{if(t.start.paragraphId!==t.end.paragraphId)return null;for(let n of on(o,t.start.paragraphId))if(n.start<=t.start.offset&&n.end>=t.end.offset)return n;return null},Pn=(o,t,n)=>{if(typeof n!="string")return d("unsupported-content","a hyperlink target is a string","target");let i=o.reads,c=oe(i,t),p=t.start.paragraphId===t.end.paragraphId&&t.start.offset===t.end.offset;if(n.length===0){if(!c)return d("unsupported-content","that text is not a link","no-link");let C=f(o);if(C)return C;let S=j(o,c.paragraphId);return S||{ok:true,kind:"command",ops:[{op:"removeHyperlink",linkId:c.id}],story:i.story,answer:()=>F}}let y={},v=null;if(n.startsWith("#")){let C=n.slice(1);if(C.length===0||!qt(i,C))return d("unsupported-content","this document declares no such bookmark",n);y={anchor:C};}else {if(Oc(n)===null)return d("unsupported-content","this engine will not author that target","target");v=n;}let x=f(o);if(x)return x;let P=C=>v===null?{ok:true,kind:"command",ops:[C(y)],story:i.story,answer:()=>F}:{ok:true,kind:"command",ops:[],relate:{url:v,ops:S=>[C({relationshipId:S})]},story:i.story,answer:()=>F};if(c){let C=j(o,c.paragraphId);return C||P(S=>({op:"setHyperlinkTarget",linkId:c.id,...S}))}if(p)return d("unsupported-content","a link with no text has nothing to click","collapsed");if(t.start.paragraphId!==t.end.paragraphId)return d("unsupported-content","a link lives inside one paragraph","crosses-paragraph-mark");let w=j(o,t.start.paragraphId);if(w)return w;let E=i.styles().idOf("hyperlink");return P(C=>({op:"insertHyperlink",paragraphId:t.start.paragraphId,start:t.start.offset,end:t.end.offset,...C,...E===null?{}:{styleId:E}}))},wn=(o,t,n)=>{let i=o.reads;if(!s.selection||!r.select)return d("unsupported-capability","this host has no reader to move","selection");if(n!=="select"&&n!=="start"&&n!=="end")return d("unknown-operation","that is not a selection mode",String(n));let c=et(t,i);for(let p of c)if(o.touched.has(p))return d("conflicting-operations","this batch edits a paragraph the selection covers",p);for(let p of c)o.selected.add(p);return h.push({range:t,mode:n}),{ok:true,kind:"command",ops:[],story:i.story,answer:()=>F}},Tn=o=>{switch(o.op){case "getDocument":return I({kind:"handle",handle:e.document()});case "getBody":return e.resolve(o.document,"document")?a.body?I({kind:"handle",handle:e.body(it)}):d("document-unavailable","this host holds no document right now"):d("invalid-handle","that handle does not name a document","document");case "getParagraphs":{let t=$(o.body,"body",e,a);return t.ok?I({kind:"handles",handles:t.value.paragraphIds.map(n=>e.paragraph(n,t.value.story))}):d(t.code,"that handle does not name a body",t.detail)}case "getSpanParagraphs":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.span,e,a);return n.ok?I({kind:"handles",handles:et(t.value,n.value).map(i=>e.paragraph(i,n.value.story))}):d(n.code,"that span is not a place",n.detail)}case "getText":{if(e.resolve(o.target,"body")){let c=$(o.target,"body",e,a);return c.ok?I({kind:"text",text:c.value.text()}):d(c.code,"that handle does not name a body",c.detail)}let n=G(o.target,e,a);if(!n.ok)return d(n.code,"that handle does not name a body or a paragraph",n.detail);let i=a.story(n.value.story);return I({kind:"text",text:i?.paragraphText(n.value.paragraphId)??""})}case "getSpanText":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.span,e,a);return n.ok?I({kind:"text",text:en(t.value,n.value,Yt)}):d(n.code,"that span is not a place",n.detail)}case "getParagraphId":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let i=a.story(t.value.story)?.paragraph(t.value.paragraphId);return I({kind:"text",text:i?.paraId??""})}case "search":{let t=W(o.scope,e,a);if(!t.ok)return d(t.code,"that is not a scope to search",t.detail);let n=at(o.scope,e,a);return n.ok?St(n.value,t.value,o.text,o.options):d(n.code,"that is not a scope to search",n.detail)}case "insertText":{let t=mt(o.at,e,a);if(!t.ok)return d(t.code,"that is not a place to insert at",t.detail);let n=a.story(t.value.story);return n?gt(u(n),t.value,o.text):d("invalid-handle","that story is not in this document")}case "replaceSpan":{if("body"in o.span){let i=$(o.span.body,"body",e,a);return i.ok?ne(u(i.value),o.text):d(i.code,"that handle does not name a body",i.detail)}let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds no paragraph to write into","empty-story");let n=X(t.value);return n?Rt(u(n),t.value,o.text):d("invalid-handle","that story is not in this document")}case "insertParagraph":{let t=Et(o.anchor,e,a);if(!t.ok)return d(t.code,"that is not a paragraph to insert beside",t.detail);if(o.where!=="before"&&o.where!=="after")return d("unknown-operation","that is not a place to insert",String(o.where));let n=a.story(t.value.story);return n?N(u(n),t.value,o.where,o.text):d("invalid-handle","that story is not in this document")}case "splitParagraph":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let n=a.story(t.value.story);return n?K(u(n),t.value,o.delimiters,o.trimDelimiters===true,o.trimSpacing===true):d("invalid-handle","that story is not in this document")}case "getFont":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.span,e,a);return n.ok?I({kind:"font",font:Ue(n.value.part,Gt(t.value,n.value))}):d(n.code,"that span is not a place",n.detail)}case "setFont":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds no paragraph to format","empty-story");let n=X(t.value);return n?yt(u(n),t.value,o.font):d("invalid-handle","that story is not in this document")}case "getStyle":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.span,e,a);if(!n.ok)return d(n.code,"that span is not a place",n.detail);let i=n.value.part,c=n.value.styles(),p=et(t.value,n.value).map(v=>Ht(i,v,c)),y=p.length>0&&p.every(v=>v!==null&&v===p[0])?p[0]:null;return I({kind:"style",name:y})}case "setStyle":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds no paragraph to style","empty-story");let n=X(t.value);return n?lt(u(n),t.value,o.name):d("invalid-handle","that story is not in this document")}case "getParagraphFormat":{let t=Et(o.paragraph,e,a);if(!t.ok)return d(t.code,"that is not a paragraph",t.detail);let n=a.story(t.value.story);if(!n)return d("document-unavailable","this host holds no document right now");let i=Xe(n.part,t.value.paragraphId,n.styles());return i?I({kind:"paragraphFormat",format:i}):d("invalid-handle","that handle does not name a paragraph")}case "setParagraphFormat":{let t=Et(o.paragraph,e,a);if(!t.ok)return d(t.code,"that is not a paragraph",t.detail);let n=a.story(t.value.story);return n?xn(u(n),t.value,o.format):d("invalid-handle","that story is not in this document")}case "deleteParagraph":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let n=a.story(t.value.story);return n?nt(u(n),t.value):d("invalid-handle","that story is not in this document")}case "getSections":return e.resolve(o.document,"document")?I({kind:"handles",handles:a.sections().map(t=>e.section(t.index))}):d("invalid-handle","that handle does not name a document","document");case "getPageSetup":{let t=e.resolve(o.section,"section");if(!t||t.kind!=="section")return d("invalid-handle","that handle does not name a section","section");let n=a.sections()[t.index];return n?I({kind:"pageSetup",setup:n.pageSetup}):d("invalid-handle","that section is not in this document")}case "setPageSetup":{let t=e.resolve(o.section,"section");return !t||t.kind!=="section"?d("invalid-handle","that handle does not name a section","section"):Sn(t.index,o.setup)}case "getFurniture":{let t=e.resolve(o.section,"section");if(!t||t.kind!=="section")return d("invalid-handle","that handle does not name a section","section");if(o.kind!=="header"&&o.kind!=="footer")return d("unknown-operation","that is not furniture",String(o.kind));let n={kind:o.kind,sectionIndex:t.index,variant:o.variant};return Ke(n)?a.story(n)?I({kind:"handle",handle:e.body(n)}):d("invalid-handle","this document declares no such header or footer",_(n)):d("unknown-operation","that is not a furniture variant",String(o.variant))}case "getNotes":{if(!e.resolve(o.document,"document"))return d("invalid-handle","that handle does not name a document","document");if(o.noteKind!=="footnote"&&o.noteKind!=="endnote")return d("unknown-operation","that is not a kind of note",String(o.noteKind));let t=o.noteKind;return I({kind:"handles",handles:a.noteIds(t).map(n=>e.note(t,n))})}case "getNoteBody":{let t=e.resolve(o.note,"note");if(!t||t.kind!=="note")return d("invalid-handle","that handle does not name a note","note");let n={kind:"note",noteKind:t.noteKind,noteId:t.noteId};return a.story(n)?I({kind:"handle",handle:e.body(n)}):d("invalid-handle","that note is not in this document",_(n))}case "getNoteKind":{let t=e.resolve(o.note,"note");return !t||t.kind!=="note"?d("invalid-handle","that handle does not name a note","note"):I({kind:"text",text:t.noteKind})}case "deleteNote":{let t=e.resolve(o.note,"note");return !t||t.kind!=="note"?d("invalid-handle","that handle does not name a note","note"):a.noteIds(t.noteKind).includes(t.noteId)?Rn(t.noteKind,t.noteId):d("invalid-handle","that note is not in this document")}case "getLists":{let t=$(o.body,"body",e,a);return t.ok?I({kind:"handles",handles:_t(t.value).map(n=>e.list(n.numId,t.value.story))}):d(t.code,"that handle does not name a body",t.detail)}case "getListId":{let t=Ft(o.list);return "list"in t?I({kind:"number",value:Number(t.list.numId)}):t}case "getListById":{let t=$(o.body,"body",e,a);if(!t.ok)return d(t.code,"that handle does not name a body",t.detail);if(!Number.isInteger(o.id)||o.id<=0)return d("unsupported-content","a list is numbered from one",String(o.id));let n=String(o.id),i=_t(t.value).find(c=>c.numId===n);return i?I({kind:"handle",handle:e.list(i.numId,t.value.story)}):d("invalid-handle","no list in that story carries that number",n)}case "getListParagraphs":{let t=Ft(o.list);if(!("list"in t))return t;let n=o.level;if(n!==void 0&&(!Number.isInteger(n)||n<0||n>ft))return d("invalid-offset",`a list level is 0 to ${String(ft)}`,String(n));let i=t.plan.reads,c=n===void 0?t.list.paragraphIds:t.list.paragraphIds.filter(p=>It(i,p)?.level===n);return I({kind:"handles",handles:c.map(p=>e.paragraph(p,i.story))})}case "getParagraphList":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let n=a.story(t.value.story);if(!n)return d("invalid-handle","that story is not in this document");let i=It(n,t.value.paragraphId);return i?I({kind:"handle",handle:e.list(i.numId,n.story)}):d("unsupported-content","that paragraph is not in a list",t.value.paragraphId)}case "getListLevel":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let n=a.story(t.value.story);if(!n)return d("invalid-handle","that story is not in this document");let i=It(n,t.value.paragraphId);return i?I({kind:"number",value:i.level}):d("unsupported-content","that paragraph is not in a list",t.value.paragraphId)}case "setListLevel":{let t=G(o.paragraph,e,a);if(!t.ok)return d(t.code,"that handle does not name a paragraph",t.detail);let n=a.story(t.value.story);return n?Cn(u(n),t.value.paragraphId,o.level):d("invalid-handle","that story is not in this document")}case "insertListParagraph":{let t=Ft(o.list);return "list"in t?On(t.plan,t.list,o.where,o.text):t}case "getHyperlink":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.span,e,a);if(!n.ok)return d(n.code,"that span is not a place",n.detail);let i=a.package;if(!i||!t.value)return I({kind:"text",text:""});let c=oe(n.value,t.value);if(!c)return I({kind:"text",text:""});let p=Ea(n.value.part,c.id),y=p?rn(i,n.value.part.name,p):null;return I({kind:"text",text:y??""})}case "setHyperlink":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds no text to link","empty-story");let n=X(t.value);return n?Pn(u(n),t.value,o.target):d("invalid-handle","that story is not in this document")}case "getBookmarks":{let t=W(o.scope,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);let n=at(o.scope,e,a);if(!n.ok)return d(n.code,"that span is not a place",n.detail);let i=n.value,c=t.value,p=c===null?null:new Set(et(c,i)),y=Zt(i).filter(v=>{if(!p||!p.has(v.start.paragraphId)&&!p.has(v.end.paragraphId)||c===null)return false;let x=v.start.paragraphId===c.end.paragraphId&&v.start.offset>c.end.offset,P=v.end.paragraphId===c.start.paragraphId&&v.end.offset<c.start.offset;return !x&&!P});return I({kind:"handles",handles:y.map(v=>e.bookmark(v.name,i.story))})}case "getBookmarkName":{let t=e.resolve(o.bookmark,"bookmark");return !t||t.kind!=="bookmark"?d("invalid-handle","that handle does not name a bookmark","bookmark"):I({kind:"text",text:t.name})}case "getBookmarkRange":{let t=e.resolve(o.bookmark,"bookmark");if(!t||t.kind!=="bookmark")return d("invalid-handle","that handle does not name a bookmark","bookmark");let n=a.story(t.story);if(!n)return d("invalid-handle","that story is not in this document");let i=qt(n,t.name);if(!i)return d("invalid-handle","this document no longer declares that bookmark",t.name);let c={story:n.story,paragraphId:i.start.paragraphId,index:n.indexOf(i.start.paragraphId),offset:i.start.offset},p={story:n.story,paragraphId:i.end.paragraphId,index:n.indexOf(i.end.paragraphId),offset:i.end.offset};return I({kind:"span",span:M({start:c,end:p})})}case "getComments":{let t=W(o.scope,e,a);if(!t.ok)return d(t.code,"that scope is not a place",t.detail);let n=at(o.scope,e,a);if(!n.ok)return d(n.code,"that scope names no story",n.detail);let i=n.value,c=g(i);if(!c)return d("document-unavailable","this host holds no document");let p=t.value,y=c.roots.filter(v=>{if(!p)return true;let x=v.range;if(!x)return false;let P=i.indexOf(x.start.paragraphId),w=i.indexOf(x.end.paragraphId),E=i.indexOf(p.start.paragraphId),C=i.indexOf(p.end.paragraphId);return w<E||P>C?false:w===E&&P===E&&C===E?x.end.offset>p.start.offset&&x.start.offset<p.end.offset:true});return I({kind:"handles",handles:y.map(v=>e.comment(v.id,i.story))})}case "getCommentReplies":{let t=R(o.comment);return t.ok?I({kind:"handles",handles:t.item.replyIds.map(n=>e.comment(n,t.reads.story))}):t.planned}case "getCommentId":{let t=R(o.comment);return t.ok?I({kind:"text",text:t.item.id}):t.planned}case "getCommentAuthor":{let t=R(o.comment);return t.ok?I({kind:"text",text:t.item.comment.author}):t.planned}case "getCommentDate":{let t=R(o.comment);return t.ok?I({kind:"text",text:t.item.comment.date??""}):t.planned}case "getCommentText":{let t=R(o.comment);if(!t.ok)return t.planned;let n=g(t.reads);return I({kind:"text",text:n?.textOf(t.item.id)??""})}case "getCommentRange":{let t=R(o.comment);if(!t.ok)return t.planned;let n=t.item.range;if(!n||t.item.orphaned)return d("invalid-handle","that comment has no range in this document");let i=T(t.reads,n);return i?I({kind:"span",span:i}):d("invalid-handle","that comment\u2019s range is no longer in the story")}case "getCommentResolved":{let t=R(o.comment);return t.ok?I({kind:"flag",value:t.item.resolved}):t.planned}case "setCommentResolved":{let t=R(o.comment);if(!t.ok)return t.planned;if(typeof o.resolved!="boolean")return d("unsupported-content","resolved is a yes or a no",String(o.resolved));let n=f(u(t.reads));return n||{ok:true,kind:"commentWrite",write:{kind:"resolve",commentId:t.item.id,resolved:o.resolved},story:t.reads.story,answer:()=>F}}case "replyToComment":{let t=R(o.comment);if(!t.ok)return t.planned;if(typeof o.author!="string"||o.author.trim().length===0)return d("unsupported-content","a comment records who wrote it","author");if(typeof o.text!="string"||o.text.length===0)return d("unsupported-content","a reply says something","text");if(xt.test(o.text))return d("unsupported-content","a reply is one paragraph in this slice","text");let n=t.item.range;if(!n||t.item.orphaned)return d("invalid-handle","that comment has no range to reply over");let i=f(u(t.reads));if(i)return i;let c=t.reads.story;return {ok:true,kind:"commentWrite",write:{kind:"reply",parentCommentId:t.item.id,anchor:{paragraphId:n.start.paragraphId,start:n.start.offset,end:n.end.offset,...n.end.paragraphId===n.start.paragraphId?{}:{endParagraphId:n.end.paragraphId}},text:o.text,author:o.author,...typeof o.date=="string"?{date:o.date}:{}},story:t.reads.story,answer:(p,y)=>y===void 0?F:{kind:"handle",handle:e.comment(y,c)}}}case "getRevisions":{let t=$(o.body,"body",e,a);if(!t.ok)return d(t.code,"that handle does not name a body",t.detail);let n=t.value;return I({kind:"handles",handles:te(n).map(i=>e.revision(i.id,n.story))})}case "getRevisionType":{let t=A(o.revision);return t.ok?I({kind:"text",text:t.item.type}):t.planned}case "getRevisionAuthor":{let t=A(o.revision);return t.ok?I({kind:"text",text:t.item.author}):t.planned}case "getRevisionDate":{let t=A(o.revision);return t.ok?I({kind:"text",text:t.item.date}):t.planned}case "getRevisionRange":{let t=A(o.revision);if(!t.ok)return t.planned;let[n]=t.item.item.ranges;if(!n)return d("invalid-handle","that change covers no characters");let i=T(t.reads,n);return i?I({kind:"span",span:i}):d("invalid-handle","that change\u2019s range is no longer in the story")}case "acceptRevision":case "rejectRevision":{let t=A(o.revision);if(!t.ok)return t.planned;let n=u(t.reads),i=f(n);if(i)return i;let c=o.op==="acceptRevision";return {ok:true,kind:"command",story:t.reads.story,ops:t.item.item.addresses.map(p=>c?{op:"acceptRevision",revision:p}:{op:"rejectRevision",revision:p}),answer:()=>F}}case "acceptAllRevisions":case "rejectAllRevisions":{if(!e.resolve(o.document,"document"))return d("invalid-handle","that handle does not name a document","document");let t=a.body;if(!t)return d("document-unavailable","this host holds no document");let n=u(t),i=f(n);return i||{ok:true,kind:"command",story:t.story,ops:[o.op==="acceptAllRevisions"?{op:"acceptAllRevisions"}:{op:"rejectAllRevisions"}],answer:()=>F}}case "selectSpan":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds no paragraph to select","empty-story");let n=X(t.value);return n?wn(u(n),t.value,o.mode):d("invalid-handle","that story is not in this document")}case "getContentControls":{let t=Bt(o.scope);return "reads"in t?I({kind:"handles",handles:ln(t.reads,t.node).map(n=>e.contentControl(n.nodeId,t.reads.story))}):t}case "getContentControlById":{let t=Bt(o.scope);if(!("reads"in t))return t;if(!Number.isInteger(o.id))return d("unsupported-content","a control id is a whole number",String(o.id));let n=bn(t.node).find(i=>ke(i).id===o.id);return n?I({kind:"handle",handle:e.contentControl(n.id,t.reads.story)}):d("invalid-handle","no control in that scope carries that id",String(o.id))}case "getContentControlsByTag":case "getContentControlsByTitle":{let t=Bt(o.scope);if(!("reads"in t))return t;let n=o.op==="getContentControlsByTag"?o.tag:o.title;if(typeof n!="string"||n.length===0)return d("unsupported-content","a tag or title to match is required",o.op);let i=bn(t.node).filter(c=>{let p=ke(c);return o.op==="getContentControlsByTag"?p.tag===n:p.alias===n});return I({kind:"handles",handles:i.map(c=>e.contentControl(c.id,t.reads.story))})}case "getContentControlTag":case "getContentControlTitle":case "getContentControlFileId":case "getContentControlSubtype":case "getContentControlLock":{let t=Z(o.contentControl);if(!("control"in t))return t;let n=t.control.properties;if(o.op==="getContentControlLock")return I({kind:"text",text:t.control.lock});if(o.op==="getContentControlSubtype")return I({kind:"text",text:n.type});if(o.op==="getContentControlFileId")return I({kind:"text",text:n.id===void 0?"":String(n.id)});let i=o.op==="getContentControlTag"?n.tag:n.alias;return I({kind:"text",text:i??""})}case "getContentControlPlaceholderShown":case "getContentControlTemporary":{let t=Z(o.contentControl);return "control"in t?I({kind:"flag",value:o.op==="getContentControlPlaceholderShown"?t.control.properties.showingPlaceholder:t.control.properties.temporary}):t}case "getContentControlText":{let t=Z(o.contentControl);return "control"in t?I({kind:"text",text:pn(t.node)}):t}case "getContentControlParagraphs":{let t=Z(o.contentControl);return "control"in t?I({kind:"handles",handles:t.control.paragraphIds.map(n=>e.paragraph(n,t.reads.story))}):t}case "getContentControlRange":{let t=Z(o.contentControl);if(!("control"in t))return t;let n=o.location??"whole";if(!Oo.has(n))return d("unsupported-content","that is not a place in a control",n);let i=ee(t.reads,t.node);if(!i)return d("unsupported-content","that control holds nothing addressable","empty");let c=n==="start"||n==="before"?i.start:i.end,p=n!=="whole"&&n!=="content",y=v=>({story:t.reads.story,paragraphId:v.paragraphId,index:t.reads.indexOf(v.paragraphId),offset:v.offset});return I({kind:"span",span:Jt(p?{start:y(c),end:y(c)}:{start:y(i.start),end:y(i.end)},e)})}case "setContentControlValue":{let t=Z(o.contentControl);if(!("control"in t))return t;let n=To(o.value);if(!n.ok)return d(n.code,n.message,n.detail);let i=u(t.reads),c=f(i);return c||{ok:true,kind:"command",story:t.reads.story,ops:[{op:"setContentControlValue",controlId:t.control.nodeId,value:n.value}],answer:()=>F}}case "setContentControlProperties":{let t=Z(o.contentControl);if(!("control"in t))return t;if(o.tag===void 0&&o.title===void 0&&o.lock===void 0)return d("unsupported-content","nothing to write","no-properties");if(o.lock!==void 0&&!Co.has(o.lock))return d("unsupported-content","that is not a lock this schema declares",o.lock);let n=u(t.reads),i=f(n);return i||{ok:true,kind:"command",story:t.reads.story,ops:[{op:"setContentControlProperties",controlId:t.control.nodeId,...o.tag===void 0?{}:{tag:o.tag},...o.title===void 0?{}:{alias:o.title},...o.lock===void 0?{}:{lock:o.lock}}],answer:()=>F}}case "insertContentControlText":{let t=Z(o.contentControl);if(!("control"in t))return t;if(typeof o.text!="string")return d("unsupported-content","text is required","text");if(o.at!=="replace"&&o.at!=="start"&&o.at!=="end")return d("unsupported-content","that is not a place to insert at",String(o.at));let n=u(t.reads),i=f(n);if(i)return i;let c=ee(t.reads,t.node);if(!c)return d("unsupported-content","that control holds nothing addressable","empty");let p=o.at==="end"?c.end:c.start,y=()=>({kind:"span",span:M({start:{story:t.reads.story,paragraphId:p.paragraphId,index:t.reads.indexOf(p.paragraphId),offset:p.offset},end:{story:t.reads.story,paragraphId:p.paragraphId,index:t.reads.indexOf(p.paragraphId),offset:p.offset+o.text.length}})});return o.at==="replace"?{ok:true,kind:"command",story:t.reads.story,ops:[{op:"setContentControlValue",controlId:t.control.nodeId,value:{kind:"text",text:o.text}}],answer:y}:{ok:true,kind:"command",story:t.reads.story,ops:o.text.length===0?[]:[{op:"insertText",paragraphId:p.paragraphId,offset:p.offset,text:o.text,inside:t.node.id}],answer:y}}case "deleteContentControl":{let t=Z(o.contentControl);if(!("control"in t))return t;if(typeof o.keepContent!="boolean")return d("unsupported-content","keepContent is required","keepContent");let n=u(t.reads),i=f(n);return i||{ok:true,kind:"command",story:t.reads.story,ops:[{op:"removeContentControl",controlId:t.control.nodeId,keepContent:o.keepContent}],answer:()=>F}}case "insertContentControl":{let t=W(o.span,e,a);if(!t.ok)return d(t.code,"that span is not a place",t.detail);if(!t.value)return d("invalid-offset","that story holds nothing to wrap","empty-story");let n=X(t.value);if(!n)return d("invalid-handle","that story is not in this document");let i=t.value;if(i.start.paragraphId!==i.end.paragraphId)return d("unsupported-content","wrapping several paragraphs in one control is not supported here","multi-paragraph");if(!Po.has(o.subtype))return d("unsupported-content","that control type cannot be inserted",o.subtype);let c=u(n),p=f(c);return p||{ok:true,kind:"command",story:n.story,ops:[{op:"insertContentControl",paragraphId:i.start.paragraphId,start:i.start.offset,end:i.end.offset,type:o.subtype,...o.tag===void 0?{}:{tag:o.tag},...o.title===void 0?{}:{alias:o.title}}],answer:()=>F}}case "insertCustomNode":{let t=hn(o);if(t)return d("unsupported-content",t.message,t.detail);let n=yn(o.payload);if(!n.ok)return d("unsupported-content","that payload cannot be written",n.field);let i=An(o,e,a);if("code"in i)return d(i.code,i.message,i.detail);let{start:c,end:p}=i.range,y=X(i.range);if(!y)return d("invalid-handle","that story is not in this document");let v=f(u(y));return v||{ok:true,kind:"customNodeWrite",story:y.story,write:kn(o,c,p,n.value),answer:()=>F}}default:return d("unknown-operation","this host does not implement that operation",String(o.op))}};return {plan(o){let t=We(o);if(t&&b||m&&$t(o))return d("conflicting-operations","that command commits on its own and cannot share a batch",o.op);let n=Tn(o);return n.ok&&$t(o)&&(b=true,t&&(m=true)),n},get hasCommands(){return b},get writeScope(){return k?.reads.scope??null},settle(o){let t=k;if(t){let n=o.story(t.reads.story);if(!n)return {ok:false,detail:`the story this batch wrote is gone: ${_(t.reads.story)}`};let i=new Set(t.reads.paragraphIds),c=n.paragraphIds.filter(y=>!i.has(y));if(c.length!==t.created.length)return {ok:false,detail:`planned ${String(t.created.length)} new paragraphs, the transaction made ${String(c.length)}`};t.order.filter(y=>y.id===null).forEach((y,v)=>{y.id=c[v]??null;});for(let y of t.retargets)y.slot.id&&e.retarget(y.from,y.slot.id);}for(let n of h){let i=o.story(n.range.start.story);!i||!Lo(n.range,i)||r.select?.(n.range,n.mode);}return {ok:true}}}}var Eo=Object.freeze({status:"skipped"});function Y(r,e,s){return Object.freeze(s===void 0?{code:r,message:e}:{code:r,message:e,detail:s})}function J(r,e,s,a){return {ok:false,results:r.map((l,u)=>u===e?{status:"error",error:s}:Eo),revision:a,changed:false}}function oa(r){let{port:e}=r,s=Object.freeze({...r.capabilities}),a=ze(),l=new Set,u=false,h=null,b=s.events?e.subscribe(()=>{if(u)return;let f=Object.freeze({revision:e.revision()});for(let g of [...l])g(f);}):()=>{},m=f=>{if(h&&h.pkg===f)return h.value;let g=tn(f);return h={pkg:f,value:g},g};return {capabilities:s,revision:()=>e.revision(),execute:f=>{let g=Array.isArray(f?.operations)?f.operations:[],R=e.revision();if(u)return J(g,0,Y("disposed","this host was disposed"),R);if(!s.document)return J(g,0,Y("unsupported-capability","this host has no document","document"),R);let A=e.currentPackage();if(!A)return J(g,0,Y("document-unavailable","this host holds no document right now"),R);if(f.expectedRevision!==void 0&&f.expectedRevision!==R)return J(g,0,Y("stale-revision","the document moved since that revision",`expected ${String(f.expectedRevision)}, at ${R}`),R);let T=In({handles:a,reads:m(A),capabilities:s,...e.select?{select:e.select.bind(e)}:{}}),O=[],H=[],L=null,j=null,Q,dt=null,M=-1;for(let N=0;N<g.length;N+=1){let K=T.plan(g[N]);if(!K.ok)return J(g,N,K.error,R);if(O.push(K),K.kind==="command")if(M<0&&(M=N),K.lifecycle)L=K.ops[0]??null;else if(K.relate){let nt=K.relate;H.push(yt=>{let lt=yt(nt.url);return lt===null?null:nt.ops(lt)});}else {let{ops:nt}=K;H.push(()=>nt);}else K.kind==="commentWrite"?(M<0&&(M=N),j={write:K.write,scope:T.writeScope??{kind:"body"}}):K.kind==="customNodeWrite"&&(M<0&&(M=N),dt={write:K.write,scope:T.writeScope??{kind:"body"}});}let X=false;if(j){let N=e.applyCommentWrite(j.write,j.scope);if(!N.ok)return J(g,M<0?0:M,Y("transaction-refused","the document store refused the comment write",N.reason),R);X=N.changed,Q=N.commentId;}if(dt){let N=e.applyCustomNodeWrite(dt.write,dt.scope);if(!N.ok)return J(g,M<0?0:M,Y("transaction-refused","the document store refused the custom-node write",N.reason),R);X=N.changed;}if(L){let N=e.applyLifecycle(L);if(!N.ok)return J(g,M<0?0:M,Y("transaction-refused","the document store refused the transaction",N.reason),R);X=N.changed;}if(H.length>0){let N=e.apply(K=>{let nt=[];for(let yt of H){let lt=yt(K);if(lt===null)return null;nt.push(...lt);}return nt},T.writeScope??{kind:"body"});if(!N.ok)return J(g,M<0?0:M,Y("transaction-refused","the document store refused the transaction",N.reason),R);X=N.changed;}let St=e.currentPackage();if(!St)return J(g,0,Y("document-unavailable","this host holds no document right now"),R);let gt=m(St),Rt=T.settle(gt);return Rt.ok?{ok:true,results:O.map(N=>({status:"ok",value:N.kind==="query"?N.value:N.kind==="customNodeWrite"?N.answer(gt):N.answer(gt,Q)})),revision:e.revision(),changed:X}:J(g,M<0?0:M,Y("transaction-refused","the transaction did not produce the document the batch planned",Rt.detail),e.revision())},save(){if(u)return {ok:false,error:Y("disposed","this host was disposed")};if(!s.save)return {ok:false,error:Y("unsupported-capability","this host cannot save","save")};let f=e.save();return f?{ok:true,bytes:f}:{ok:false,error:Y("document-unavailable","this host holds no document right now")}},subscribe(f){return u||!s.events?()=>{}:(l.add(f),()=>{l.delete(f);})},dispose(){u||(u=true,l.clear(),b(),e.dispose(),h=null);}}}export{Nt as a,Fo as b,Mn as c,En as d,We as e,$t as f,oa as g};
|