@stll/folio-vue 0.7.0 → 0.8.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/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./WatermarkDialog-DHfk8jrg.cjs"),t=require("./ListButtons-BvsV1yti.cjs"),n=require("./zIndex-dFsQbASx.cjs"),r=require("./useZoom-C7jhL696.cjs"),i=require("./dialogs.cjs");let a=require("vue"),o=require("@stll/folio-core/prosemirror"),s=require("@stll/folio-core/prosemirror/plugins/selectionTracker"),c=require("@stll/folio-core/docx/compatibility"),l=require("@stll/folio-core/layout-bridge/engine/measuring"),u=require("@stll/folio-core/utils/fontLoader"),d=require("@stll/folio-core/paged-layout/sectionGeometry"),f=require("@stll/folio-core/paged-layout/rangeProjection"),p=require("@stll/folio-core/paged-layout/scrollNavigation"),m=require("@stll/folio-core/prosemirror/plugins/anonymizationDecorations"),h=require("prosemirror-state"),g=require("@stll/folio-core/utils/units"),_=require("@stll/folio-core/layout-painter/imageLayout"),v=require("@stll/folio-core/managers/EditorModeManager"),y=require("@stll/folio-core/layout-bridge/dom/clickToPositionDom"),b=require("@stll/folio-core/prosemirror/imageCommit"),x=require("@stll/folio-core/layout-bridge/dom/findBodyPmSpans"),S=require("@stll/folio-core/prosemirror/plugins/templateDirectives"),ee=require("prosemirror-history"),C=require("@stll/folio-core/prosemirror/commands/formatting"),w=require("@stll/folio-core/prosemirror/extensions/nodes/TableExtension"),T=require("@stll/folio-core/prosemirror/commentIdAllocator"),E=require("@stll/folio-core/prosemirror/commentOps"),D=require("@stll/folio-core/prosemirror/queries"),O=require("@stll/folio-core/prosemirror/commands/comments"),k=require("@stll/folio-core/prosemirror/plugins/suggestionMode"),A=require("@stll/folio-core/layout-engine"),j=require("@stll/folio-core/prosemirror/plugins/templatePreviewValues"),M=require("@stll/folio-core/prosemirror/plugins/templateSlashMenu"),N=require("@stll/folio-core/ai-edits"),P=require("@stll/folio-core/paged-layout/paragraphFlash"),F=require("@stll/folio-core/prosemirror/commands/contentControls"),I=require("@stll/folio-core/prosemirror/commands/contentControlsBlockFill"),L=require("@stll/folio-core/ai-edits/blockRange"),te=require("@stll/folio-core/paged-layout/pageText"),R=require("@stll/folio-core/prosemirror/commands/paragraph"),z=require("@stll/folio-core/docx"),ne=require("@stll/folio-core/prosemirror/commands/pageBreak"),re=require("@stll/folio-core/prosemirror/commands/sectionBreak"),B=require("@stll/folio-core/prosemirror/commands/hyperlink"),V=require("@stll/folio-core/utils/headingCollector"),ie=require("@stll/folio-core/layout-bridge/tableInsertHover"),ae=require("@stll/folio-core/prosemirror/cellDragSelection"),oe=require("@stll/folio-core/watermark"),H=require("@stll/folio-core/utils/createDocument"),U=require("@stll/folio-core/docx/rezip"),se=require("@stll/folio-core/types/block-id"),ce=require("@stll/folio-core/ai-suggestions/types"),le=require("@stll/folio-core/ai-suggestions/apply"),ue=require("@stll/folio-core/ai-suggestions/conflict"),de=require("@stll/folio-core/ai-suggestions/text-positions"),W=require("@stll/folio-core/prosemirror/plugins/aiSuggestionDecorations"),G=require("@stll/folio-core/paged-layout/scrollToPmPosition"),fe=require("@stll/folio-core/paged-layout/selectionViewportRect"),K=require("@stll/folio-core/prosemirror/plugins/aiCitationDecorations"),q=require("@stll/folio-core/prosemirror/plugins/autocompleteSuggestion"),pe=require("@stll/folio-core/markdown");var me=[`data-folio-anonymization-label`,`data-folio-anonymization-canonical`,`data-folio-anonymization-selected`,`title`],he=(0,a.defineComponent)({__name:`AnonymizationRectsOverlay`,props:{getView:{type:Function},getPagesContainer:{type:Function},editorState:{},zoom:{},layout:{},blocks:{},measures:{},onTermClick:{type:Function},selectedCanonical:{},selectionSeq:{}},setup(e){let t=e,n=(0,a.ref)(null),r=(0,a.ref)([]),i=0,o=null;function s(){o!==null&&cancelAnimationFrame(o),o=requestAnimationFrame(()=>{o=null,c()})}async function c(){let e=++i,n=t.getView(),a=t.getPagesContainer(),o=t.editorState;if(!n||!a||!o){r.value=[];return}let s=(0,m.getAnonymizationMatches)(o);if(s.length===0){r.value=[];return}let c=await(0,f.projectRangesToRects)(s,{pagesContainer:a,zoom:t.zoom,layout:t.layout,blocks:t.blocks,measures:t.measures});if(e!==i)return;let l=t.zoom;r.value=c.map(({range:e,rects:t})=>({label:e.label,canonical:e.canonical,rects:t.map(e=>({left:e.x*l,top:e.y*l,width:e.width*l,height:e.height*l}))}))}(0,a.watch)(()=>[t.editorState,t.zoom,t.layout,t.blocks,t.measures],()=>s());let l=null;function u(){let e=n.value,r=t.selectedCanonical;if(!e||!r){l=null;return}let i=e.querySelectorAll(`[data-folio-anonymization-canonical="${CSS.escape(r)}"]`);if(i.length===0)return;let a=l?.canonical===r?(l.index+1)%i.length:0;l={canonical:r,index:a},i.item(a)?.scrollIntoView({block:`center`,behavior:(0,p.prefersReducedMotionBehavior)()})}(0,a.watch)(()=>[t.selectedCanonical,t.selectionSeq],()=>u(),{flush:`post`});function d(e){if(e.button!==0||!t.onTermClick)return;let r=n.value;if(!r)return;let i=r.querySelectorAll(`[data-folio-anonymization-canonical]`);for(let n=i.length-1;n>=0;--n){let r=i.item(n);if(!r)continue;let a=r.getBoundingClientRect();if(e.clientX>=a.left&&e.clientX<a.right&&e.clientY>=a.top&&e.clientY<a.bottom){let e=r.dataset.folioAnonymizationCanonical,n=r.dataset.folioAnonymizationLabel;e&&n&&t.onTermClick(e,n);return}}}return(0,a.onMounted)(()=>{document.addEventListener(`click`,d),s()}),(0,a.onBeforeUnmount)(()=>{document.removeEventListener(`click`,d),o!==null&&(cancelAnimationFrame(o),o=null)}),(t,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{ref_key:`rootRef`,ref:n,class:`folio-anonymization-overlay`,"data-folio-anonymization-overlay":``},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(r.value,t=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`${t.label}:${t.canonical}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.rects,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:`${t.canonical}:${r}:${n.left}:${n.top}`,class:(0,a.normalizeClass)([`folio-anonymization-term`,`folio-anonymization-term--${(0,a.unref)(m.slugAnonymizationLabel)(t.label)}`]),"data-folio-anonymization-label":t.label,"data-folio-anonymization-canonical":t.canonical,"data-folio-anonymization-selected":t.canonical===e.selectedCanonical?`true`:void 0,title:`Anonymized: ${t.canonical}`,style:(0,a.normalizeStyle)({position:`absolute`,left:`${n.left}px`,top:`${n.top}px`,width:`${n.width}px`,height:`${n.height}px`})},null,14,me))),128))],64))),128))],512))}}),ge=e.F(he,[[`__scopeId`,`data-v-c7db88e1`]]),_e={class:`doc-outline__header`},ve={class:`doc-outline__body`},ye={key:0,class:`doc-outline__empty`},be=(0,a.defineComponent)({__name:`DocumentOutline`,props:{isOpen:{type:Boolean},headings:{},leftOffset:{default:12},topPx:{default:24},getScrollContainer:{}},emits:[`close`,`navigate`],setup(t,{emit:n}){let r=t,{OutlineRail:i}=e.y(),o=(0,a.computed)(()=>r.headings.length?Math.min(...r.headings.map(e=>e.level)):0),s=(0,a.computed)(()=>r.headings.map(e=>({id:String(e.pmPos),label:e.text||`(untitled)`,level:e.level-o.value}))),c=n;function l(e){c(`navigate`,Number(e))}return(n,r)=>t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`nav`,{key:0,class:`doc-outline`,style:(0,a.normalizeStyle)({left:t.leftOffset+`px`,top:t.topPx+`px`}),role:`navigation`,"aria-label":`Document outline`,onMousedown:r[1]||=(0,a.withModifiers)(()=>{},[`stop`])},[(0,a.createElementVNode)(`div`,_e,[(0,a.createElementVNode)(`button`,{class:`doc-outline__back`,title:`Close outline`,"aria-label":`Close outline`,onClick:r[0]||=e=>n.$emit(`close`)},[(0,a.createVNode)(e.P,{name:`arrow_back`,size:20})]),r[2]||=(0,a.createElementVNode)(`span`,{class:`doc-outline__title`},`Document Outline`,-1)]),(0,a.createElementVNode)(`div`,ve,[t.headings.length===0?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ye,`No headings found`)):((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(i),{key:1,items:s.value,"get-scroll-container":t.getScrollContainer??(()=>null),"on-jump":l,"aria-label":`Document outline`},null,8,[`items`,`get-scroll-container`]))])],36)):(0,a.createCommentVNode)(``,!0)}}),xe=e.F(be,[[`__scopeId`,`data-v-0797b3b1`]]),Se=(0,a.defineComponent)({__name:`DocxEditorDialogs`,props:{view:{},bookmarks:{},selectedImagePmPos:{},sectionProperties:{},showFindReplace:{type:Boolean},showHyperlink:{type:Boolean},showInsertSymbol:{type:Boolean},showImageProperties:{type:Boolean},showPageSetup:{type:Boolean}},emits:[`update:showFindReplace`,`update:showHyperlink`,`update:showInsertSymbol`,`update:showImageProperties`,`update:showPageSetup`,`insert-symbol`,`hyperlink-submit`,`hyperlink-remove`,`page-setup-apply`],setup(t,{emit:n}){let r=n;return(n,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,null,[(0,a.createVNode)(e.m,{"is-open":t.showFindReplace,view:t.view,onClose:i[0]||=e=>r(`update:showFindReplace`,!1)},null,8,[`is-open`,`view`]),(0,a.createVNode)(e.p,{"is-open":t.showHyperlink,view:t.view,bookmarks:t.bookmarks,onClose:i[1]||=e=>r(`update:showHyperlink`,!1),onSubmit:i[2]||=e=>r(`hyperlink-submit`,e),onRemove:i[3]||=e=>r(`hyperlink-remove`)},null,8,[`is-open`,`view`,`bookmarks`]),(0,a.createVNode)(e.d,{"is-open":t.showInsertSymbol,onClose:i[4]||=e=>r(`update:showInsertSymbol`,!1),onInsert:i[5]||=e=>r(`insert-symbol`,e)},null,8,[`is-open`]),(0,a.createVNode)(e.f,{"is-open":t.showImageProperties,view:t.view,"pm-pos":t.selectedImagePmPos,onClose:i[6]||=e=>r(`update:showImageProperties`,!1)},null,8,[`is-open`,`view`,`pm-pos`]),(0,a.createVNode)(e.u,{"is-open":t.showPageSetup,"section-properties":t.sectionProperties,onClose:i[7]||=e=>r(`update:showPageSetup`,!1),onApply:i[8]||=e=>r(`page-setup-apply`,e)},null,8,[`is-open`,`section-properties`])],64))}}),J={key:0,class:`docx-editor-vue__title-bar`},Y={class:`docx-editor-vue__title-bar-left`},Ce={class:`docx-editor-vue__title-bar-center`},we={class:`docx-editor-vue__title-bar-right`},Te=(0,a.defineComponent)({__name:`DocxEditorMenuBar`,props:{showMenuBar:{type:Boolean,default:!0},documentName:{default:``},documentNameEditable:{type:Boolean,default:!0},showFileOpen:{type:Boolean,default:!0},showHelpMenu:{type:Boolean,default:!0},showTableInsert:{type:Boolean,default:!0}},emits:[`rename`,`menu-action`,`insert-table`],setup(e,{emit:n}){let r=n;return(n,i)=>e.showMenuBar?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,J,[(0,a.createElementVNode)(`div`,Y,[(0,a.renderSlot)(n.$slots,`title-bar-left`)]),(0,a.createElementVNode)(`div`,Ce,[(0,a.createVNode)(t.E,{"model-value":e.documentName,editable:e.documentNameEditable,"onUpdate:modelValue":i[0]||=e=>r(`rename`,e)},null,8,[`model-value`,`editable`]),(0,a.createVNode)(t.w,{"show-file-open":e.showFileOpen,"show-help-menu":e.showHelpMenu,"show-table-insert":e.showTableInsert,onAction:i[1]||=e=>r(`menu-action`,e),onInsertTable:i[2]||=(e,t)=>r(`insert-table`,e,t)},null,8,[`show-file-open`,`show-help-menu`,`show-table-insert`])]),(0,a.createElementVNode)(`div`,we,[(0,a.renderSlot)(n.$slots,`title-bar-right`)])])):(0,a.createCommentVNode)(``,!0)}}),Ee=Symbol(`docx-portal-class`);function De(e){(0,a.provide)(Ee,(0,a.computed)(()=>({"ep-root":!0,dark:!!(0,a.unref)(e)})))}function Oe(){return(0,a.inject)(Ee,(0,a.computed)(()=>({"ep-root":!0})))}var X=[`aria-label`],ke={class:`image-ctx-menu__icon`},Ae={class:`image-ctx-menu__label`},je={key:1,class:`image-ctx-menu__divider`,role:`separator`},Me=[`data-wrap-type`,`data-current`,`data-disabled`,`disabled`,`title`,`onClick`],Ne={class:`image-ctx-menu__icon`},Pe={class:`image-ctx-menu__label`},Fe=[`aria-label`],Ie=[`disabled`,`onClick`],Le={class:`image-ctx-menu__label`},Re={key:0,class:`image-ctx-menu__shortcut`},ze={key:0,class:`image-ctx-menu__divider`,role:`separator`},Be=18,Ve=260,He=10,Ue=(0,a.defineComponent)({__name:`ImageContextMenu`,props:{state:{},textActions:{},canOpenProperties:{type:Boolean,default:!1}},emits:[`close`,`select`,`text-action`,`open-properties`],setup(t,{emit:n}){let r=t,i=n;function o(){i(`open-properties`),i(`close`)}let{t:s}=e.j(),c=Oe(),l=_.IMAGE_LAYOUT_OPTIONS,u=(0,a.computed)(()=>r.state?(0,_.deriveLayoutChoice)(r.state.currentWrapType,r.state.currentCssFloat??null):null),d={inline:`wrap_text`,squareLeft:`format_image_left`,squareRight:`format_image_right`,behind:`flip_to_back`,inFront:`flip_to_front`};function f(e){return d[e]}let p=(0,a.computed)(()=>{if(!r.state)return{};let e=_.IMAGE_LAYOUT_OPTIONS.length*36+16,t=r.state.position.x,n=r.state.position.y;return typeof window<`u`&&(t+Ve>window.innerWidth&&(t=window.innerWidth-Ve-He),n+e>window.innerHeight&&(n=window.innerHeight-e-He),t<He&&(t=He),n<He&&(n=He)),{position:`fixed`,left:`${t}px`,top:`${n}px`,minWidth:`${Ve}px`,zIndex:400}});function m(e){return r.state?(0,_.isImageLayoutOptionEnabled)(e,r.state.currentWrapType):!1}function h(e){m(e)&&(i(`select`,e.choice),i(`close`))}function g(e){e.disabled||(i(`text-action`,e.action),i(`close`))}function v(e){e.preventDefault(),i(`close`)}function y(e){e.key===`Escape`&&(e.preventDefault(),i(`close`))}return(n,r)=>((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`},[t.state&&t.state.open?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`image-ctx-menu-backdrop`,onMousedown:v,onContextmenu:r[0]||=(0,a.withModifiers)(e=>n.$emit(`close`),[`prevent`])},null,32)):(0,a.createCommentVNode)(``,!0),t.state&&t.state.open?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:1,class:(0,a.normalizeClass)([`image-ctx-menu`,(0,a.unref)(c)]),role:`menu`,"aria-label":(0,a.unref)(s)(`imageWrap.menu.ariaLabel`),"data-testid":`image-context-menu`,style:(0,a.normalizeStyle)(p.value),onContextmenu:r[4]||=(0,a.withModifiers)(()=>{},[`prevent`]),onKeydown:y},[t.canOpenProperties?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,type:`button`,role:`menuitem`,class:`image-ctx-menu__item`,"data-action":`open-properties`,onMousedown:r[1]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:o},[(0,a.createElementVNode)(`span`,ke,[(0,a.createVNode)(e.P,{name:`settings`,size:Be})]),(0,a.createElementVNode)(`span`,Ae,(0,a.toDisplayString)((0,a.unref)(s)(`imageWrap.menu.imageProperties`)),1)],32)):(0,a.createCommentVNode)(``,!0),t.canOpenProperties?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,je)):(0,a.createCommentVNode)(``,!0),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)((0,a.unref)(l),t=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:t.choice,type:`button`,role:`menuitem`,class:(0,a.normalizeClass)([`image-ctx-menu__item`,{"image-ctx-menu__item--current":t.choice===u.value}]),"data-wrap-type":t.choice,"data-current":t.choice===u.value?`true`:`false`,"data-disabled":m(t)?`false`:`true`,disabled:!m(t),title:(0,a.unref)(s)(`imageWrap.menuDesc.${t.i18nDescKey}`),onMousedown:r[2]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:e=>h(t)},[(0,a.createElementVNode)(`span`,Ne,[(0,a.createVNode)(e.P,{name:f(t.iconHint),size:Be},null,8,[`name`])]),(0,a.createElementVNode)(`span`,Pe,(0,a.toDisplayString)((0,a.unref)(s)(`imageWrap.menu.${t.i18nLabelKey}`)),1),t.choice===u.value?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:0,class:`image-ctx-menu__current-dot`,"aria-label":(0,a.unref)(s)(`imageWrap.menu.ariaLabel`)},`●`,8,Fe)):(0,a.createCommentVNode)(``,!0)],42,Me))),128)),t.textActions&&t.textActions.length>0?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:2},[r[5]||=(0,a.createElementVNode)(`div`,{class:`image-ctx-menu__divider`,role:`separator`},null,-1),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.textActions,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`${e.action}-${t}`},[(0,a.createElementVNode)(`button`,{type:`button`,role:`menuitem`,class:`image-ctx-menu__item image-ctx-menu__item--text`,disabled:e.disabled,onMousedown:r[3]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:t=>g(e)},[(0,a.createElementVNode)(`span`,Le,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Re,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],40,Ie),e.dividerAfter?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ze)):(0,a.createCommentVNode)(``,!0)],64))),128))],64)):(0,a.createCommentVNode)(``,!0)],46,X)):(0,a.createCommentVNode)(``,!0)]))}}),We=e.F(Ue,[[`__scopeId`,`data-v-fc8f35bc`]]),Ge=[`disabled`,`onMousedown`],Ke={key:0,class:`ctx-menu__icon`},qe={class:`ctx-menu__label`},Je={key:1,class:`ctx-menu__shortcut`},Z=220,Ye=32,Xe=10,Ze=(0,a.defineComponent)({__name:`TextContextMenu`,props:{isOpen:{type:Boolean},position:{},hasSelection:{type:Boolean},isEditable:{type:Boolean},inTable:{type:Boolean},onImage:{type:Boolean},canMergeCells:{type:Boolean},canSplitCell:{type:Boolean},customItems:{}},emits:[`close`,`action`],setup(t,{emit:n}){let r=t,i=({node:e})=>e;i.props=[`node`];let o=n,{t:s}=e.j(),c=Oe(),l=(0,a.ref)(null),u=(0,a.computed)(()=>{let e=[],t=r.customItems??[];for(let[n,r]of t.entries())e.push({id:`custom-${r.id}`,label:r.label,action:`custom:${r.id}`,emphasis:!0,...r.icon===void 0?{}:{icon:r.icon}}),n===t.length-1&&e.push({id:`div-custom`,label:``,action:``,divider:!0});return e.push({id:`cut`,label:s(`cut`),action:`cut`,shortcut:s(`contextMenu.cutShortcut`),disabled:!r.hasSelection||!r.isEditable},{id:`copy`,label:s(`copy`),action:`copy`,shortcut:s(`contextMenu.copyShortcut`),disabled:!r.hasSelection},{id:`paste`,label:s(`paste`),action:`paste`,shortcut:s(`contextMenu.pasteShortcut`),disabled:!r.isEditable},{id:`pasteAsPlainText`,label:s(`pasteUnformatted`),action:`pasteAsPlainText`,shortcut:s(`contextMenu.pastePlainTextShortcut`),disabled:!r.isEditable},{id:`div1`,label:``,action:``,divider:!0},{id:`delete`,label:s(`delete`),action:`delete`,shortcut:s(`contextMenu.deleteShortcut`),disabled:!r.hasSelection||!r.isEditable},{id:`selectAll`,label:s(`selectAll`),action:`selectAll`,shortcut:s(`contextMenu.selectAllShortcut`)}),r.onImage&&r.isEditable&&e.push({id:`div-img`,label:``,action:``,divider:!0},{id:`replaceImage`,label:s(`imageOverlay.replaceImage`),action:`replaceImage`},{id:`imageProperties`,label:s(`imageWrap.menu.imageProperties`),action:`imageProperties`},{id:`deleteImage`,label:s(`imageOverlay.deleteImage`),action:`deleteImage`,shortcut:s(`contextMenu.deleteShortcut`)}),r.inTable&&r.isEditable&&e.push({id:`div2`,label:``,action:``,divider:!0},{id:`addRowAbove`,label:s(`insertRowAbove`),action:`addRowAbove`},{id:`addRowBelow`,label:s(`insertRowBelow`),action:`addRowBelow`},{id:`deleteRow`,label:s(`deleteRow`),action:`deleteRow`},{id:`div3`,label:``,action:``,divider:!0},{id:`addColLeft`,label:s(`insertColumnLeft`),action:`addColumnLeft`},{id:`addColRight`,label:s(`insertColumnRight`),action:`addColumnRight`},{id:`deleteCol`,label:s(`deleteColumn`),action:`deleteColumn`},{id:`div4`,label:``,action:``,divider:!0},{id:`mergeCells`,label:s(`table.mergeCells`),action:`mergeCells`,disabled:!r.canMergeCells},{id:`splitCell`,label:s(`table.splitCell`),action:`splitCell`,disabled:!r.canSplitCell},{id:`div5`,label:``,action:``,divider:!0},{id:`selectTable`,label:s(`table.selectTable`),action:`selectTable`},{id:`deleteTable`,label:s(`table.deleteTable`),action:`deleteTable`}),e}),d=(0,a.computed)(()=>{let e=r.position.x,t=r.position.y,n=u.value.filter(e=>!e.divider).length,i=u.value.filter(e=>e.divider).length,a=n*Ye+i*9;return typeof window<`u`&&(e+Z+Xe>window.innerWidth&&(e=window.innerWidth-Z-Xe),t+a+Xe>window.innerHeight&&(t=window.innerHeight-a-Xe)),{position:`fixed`,left:`${e}px`,top:`${t}px`,zIndex:400}});function f(e){e&&(o(`action`,e),o(`close`))}function p(e){e.key===`Escape`&&o(`close`)}return(0,a.watch)(()=>r.isOpen,e=>{e&&(0,a.nextTick)(()=>l.value?.focus())}),(e,n)=>((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`},[t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`ctx-menu-backdrop`,onMousedown:n[0]||=t=>e.$emit(`close`),onContextmenu:n[1]||=(0,a.withModifiers)(t=>e.$emit(`close`),[`prevent`])},null,32)):(0,a.createCommentVNode)(``,!0),t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:1,ref_key:`menuRef`,ref:l,class:(0,a.normalizeClass)([`ctx-menu`,(0,a.unref)(c)]),style:(0,a.normalizeStyle)(d.value),onContextmenu:n[2]||=(0,a.withModifiers)(()=>{},[`prevent`]),onKeydown:p},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(u.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:e.id||t,class:(0,a.normalizeClass)([`ctx-menu__item`,{"ctx-menu__item--disabled":e.disabled,"ctx-menu__item--divider":e.divider,"ctx-menu__item--emphasis":e.emphasis}]),disabled:e.disabled,onMousedown:(0,a.withModifiers)(t=>f(e.action),[`prevent`])},[e.icon?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Ke,[(0,a.createVNode)(i,{node:e.icon},null,8,[`node`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,qe,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Je,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],42,Ge))),128))],38)):(0,a.createCommentVNode)(``,!0)]))}}),Qe=e.F(Ze,[[`__scopeId`,`data-v-c1416e84`]]),$e=(0,a.defineComponent)({__name:`DocxEditorOverlays`,props:{readOnly:{type:Boolean},contextMenu:{},imageContextMenu:{},imageContextMenuTextActions:{},canOpenImageProperties:{type:Boolean},customTextMenuItems:{}},emits:[`context-menu-action`,`close-context-menu`,`image-wrap-select`,`close-image-context-menu`,`open-image-properties`],setup(e,{emit:t}){let n=t;return(t,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,null,[(0,a.createVNode)(Qe,{"is-open":e.contextMenu.isOpen,position:e.contextMenu.position,"has-selection":e.contextMenu.hasSelection,"is-editable":!e.readOnly,"in-table":e.contextMenu.inTable,"on-image":e.contextMenu.onImage,"can-merge-cells":e.contextMenu.canMergeCells,"can-split-cell":e.contextMenu.canSplitCell,"custom-items":e.customTextMenuItems,onAction:r[0]||=e=>n(`context-menu-action`,e),onClose:r[1]||=e=>n(`close-context-menu`)},null,8,[`is-open`,`position`,`has-selection`,`is-editable`,`in-table`,`on-image`,`can-merge-cells`,`can-split-cell`,`custom-items`]),(0,a.createVNode)(We,{state:e.imageContextMenu,"text-actions":e.imageContextMenuTextActions,"can-open-properties":e.canOpenImageProperties,onClose:r[2]||=e=>n(`close-image-context-menu`),onSelect:r[3]||=e=>n(`image-wrap-select`,e),onTextAction:r[4]||=e=>n(`context-menu-action`,e),onOpenProperties:r[5]||=e=>n(`open-image-properties`)},null,8,[`state`,`text-actions`,`can-open-properties`])],64))}});function et(e){let t=Math.max(0,e.parentOffsetWidth-e.parentClientWidth)/2,n=e.zoom||1;return{left:(e.imageRect.left-e.parentRect.left-t+e.scrollLeft)/n,top:(e.imageRect.top-e.parentRect.top+e.scrollTop)/n,width:e.imageRect.width/n,height:e.imageRect.height/n}}var tt=[`data-handle`,`onMousedown`],nt=[`title`],rt={key:0,class:`image-overlay__dim`},it={key:1,class:`image-overlay__dim image-overlay__dim--rotate`},at=4,Q=15,ot=250,$=700,st=(0,a.defineComponent)({__name:`ImageSelectionOverlay`,props:{imageInfo:{},zoom:{},view:{}},emits:[`deselect`,`interact-start`,`interact-end`,`context-menu`],setup(t,{emit:r}){let{t:i}=e.j(),o=t,s=r,c=(0,a.ref)(null),l=(0,a.ref)(!1),u=(0,a.ref)(!1),d=(0,a.ref)(!1),f=(0,a.ref)(0),p=(0,a.ref)(0),m=(0,a.ref)(0),v=(0,a.ref)(null),S=`se`,ee=0,C=0,w=0,T=0,E=null,D=null,O=null,k=null;function A(e,t){if(!e)return null;try{let n=e.state.doc.nodeAt(t);return n&&n.type.name===`image`?n:null}catch{return null}}function j(e){if(!e)return null;let t=e.attrs.transform;return typeof t==`string`?t:null}function M(){return c.value?.closest(`.docx-editor-vue__pages-viewport`)?.querySelector(`.docx-editor-vue__pages`)??null}function N(){let e=o.imageInfo;if(!e)return null;if(e.element.isConnected)return e.element;let t=M();if(!t)return null;let n=(0,x.findBodyPmAnchor)(t,e.pmPos);return n?(0,_.findImageElement)(n):null}function P(){let e=N();if(!e||!c.value){v.value=null;return}let t=c.value.offsetParent;if(!(t instanceof HTMLElement)){v.value=null;return}let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();v.value=et({imageRect:r,parentRect:n,scrollLeft:t.scrollLeft,scrollTop:t.scrollTop,parentOffsetWidth:t.offsetWidth,parentClientWidth:t.clientWidth,zoom:o.zoom})}let F=null;function I(){F?.();let e=0,t=``,n=0,r=0,i=a=>{r===0&&(r=a);let o=a-r;P();let s=v.value,c=s?`${s.left}|${s.top}|${s.width}|${s.height}`:``;n=c===t?n+1:0,t=c,!(o>=ot&&n>=2)&&o<$&&(e=requestAnimationFrame(i))};e=requestAnimationFrame(i);let a=setTimeout(P,ot);F=()=>{cancelAnimationFrame(e),clearTimeout(a)}}(0,a.watch)(()=>o.imageInfo,(e,t,n)=>{if(!o.imageInfo){v.value=null;return}I(),n(()=>F?.())},{immediate:!0}),(0,a.watch)(()=>o.zoom,()=>{o.imageInfo&&I()}),(0,a.watch)(()=>o.imageInfo,(e,t,n)=>{if(!o.imageInfo)return;let r=()=>{D&&cancelAnimationFrame(D),D=requestAnimationFrame(P)},i=c.value?.closest(`.docx-editor-vue__pages-viewport`);i?.addEventListener(`scroll`,r,{passive:!0}),window.addEventListener(`resize`,r,{passive:!0});let s=null,l=!1;(0,a.nextTick)(()=>{if(l||!o.imageInfo)return;let e=M();e&&(s=new MutationObserver(()=>I()),s.observe(e,{attributes:!0,attributeFilter:[`style`]}))}),n(()=>{l=!0,i?.removeEventListener(`scroll`,r),window.removeEventListener(`resize`,r),s?.disconnect(),D&&cancelAnimationFrame(D)})},{immediate:!0});let L=(0,a.computed)(()=>l.value?f.value:v.value?.width||0),te=(0,a.computed)(()=>l.value?p.value:v.value?.height||0),R=(0,a.computed)(()=>{let e=v.value;if(!e)return{position:`absolute`,top:`0px`,left:`0px`,visibility:`hidden`,pointerEvents:`none`};let t=l.value?f.value:e.width,r=l.value?p.value:e.height,i=o.zoom||1;return{position:`absolute`,left:`${e.left*i}px`,top:`${e.top*i}px`,width:`${t}px`,height:`${r}px`,transform:i===1?void 0:`scale(${i})`,transformOrigin:`top left`,zIndex:n.t.imageOverlay,pointerEvents:`auto`}}),z=(0,a.computed)(()=>{let e=L.value,t=te.value,n=`${e/2-5}px`,r=`${t/2-5}px`,i=`${e-5}px`,a=`${t-5}px`,o=`-5px`;return[{pos:`nw`,style:{left:o,top:o,cursor:`nwse-resize`}},{pos:`n`,style:{left:n,top:o,cursor:`ns-resize`}},{pos:`ne`,style:{left:i,top:o,cursor:`nesw-resize`}},{pos:`e`,style:{left:i,top:r,cursor:`ew-resize`}},{pos:`se`,style:{left:i,top:a,cursor:`nwse-resize`}},{pos:`s`,style:{left:n,top:a,cursor:`ns-resize`}},{pos:`sw`,style:{left:o,top:a,cursor:`nesw-resize`}},{pos:`w`,style:{left:o,top:r,cursor:`ew-resize`}}]});function ne(e,t){!o.imageInfo||!v.value||(S=t,ee=e.clientX,C=e.clientY,w=v.value.width,T=v.value.height,E={...v.value},f.value=Math.round(w),p.value=Math.round(T),l.value=!0,s(`interact-start`),document.addEventListener(`mousemove`,re),document.addEventListener(`mouseup`,B))}function re(e){let t=o.zoom,n=(e.clientX-ee)/t,r=(e.clientY-C)/t,i=!e.shiftKey,a=(0,b.calculateResizedImageDimensions)(S,n,r,w,T,i);f.value=Math.round(a.width),p.value=Math.round(a.height);let s=E;if(s){let e=S.includes(`w`)?s.left+(s.width-a.width):s.left,t=S.includes(`n`)?s.top+(s.height-a.height):s.top;v.value={left:e,top:t,width:s.width,height:s.height}}}function B(){document.removeEventListener(`mousemove`,re),document.removeEventListener(`mouseup`,B),l.value=!1,E=null,s(`interact-end`);let e=o.view,t=o.imageInfo;if(!e||!t){P();return}let n=(0,b.commitImageResize)(e,t.pmPos,f.value,p.value);n!==null&&q(n),(0,a.nextTick)(()=>P())}let V=0,ie=0,ae=0,oe=0,H=null,U=null;function se(e){if(!e)return 0;let t=e.match(/rotate\((-?\d+(?:\.\d+)?)deg\)/)?.[1];return t?parseFloat(t):0}function ce(e,t){let n=/scaleX\(-1\)/.test(e||``),r=/scaleY\(-1\)/.test(e||``),i=[],a=(t%360+360)%360;return a!==0&&i.push(`rotate(${a}deg)`),n&&i.push(`scaleX(-1)`),r&&i.push(`scaleY(-1)`),i.length>0?i.join(` `):null}function le(e,t){return Math.atan2(e-V,-(t-ie))*180/Math.PI}function ue(e){if(!o.imageInfo)return;let t=o.imageInfo.element.getBoundingClientRect();V=t.left+t.width/2,ie=t.top+t.height/2,H=j(A(o.view,o.imageInfo.pmPos)),oe=se(H),U=o.imageInfo.element.querySelector(`img`),ae=le(e.clientX,e.clientY),m.value=oe,d.value=!0,s(`interact-start`),document.addEventListener(`mousemove`,de),document.addEventListener(`mouseup`,W)}function de(e){let t=le(e.clientX,e.clientY)-ae,n=oe+t;e.shiftKey||(n=Math.round(n/Q)*Q),m.value=(n%360+360)%360,U&&(U.style.transform=ce(H,m.value)||``)}function W(){document.removeEventListener(`mousemove`,de),document.removeEventListener(`mouseup`,W),d.value=!1,s(`interact-end`);let e=o.view,t=o.imageInfo;try{let n=e&&t?A(e,t.pmPos):null;e&&t&&n&&(e.dispatch(e.state.tr.setNodeMarkup(t.pmPos,void 0,{...n.attrs,transform:ce(j(n),m.value)})),q(t.pmPos))}catch{}finally{U&&(U.style.transform=``),U=null,H=null}(0,a.nextTick)(()=>P())}let G=null;function fe(e){if(!o.imageInfo||!v.value)return;let t=e.clientX,n=e.clientY,r=v.value,i=!1,a=e=>{let a=e.clientX-t,c=e.clientY-n;if(!(!i&&Math.sqrt(a*a+c*c)<at)){if(!i){i=!0,u.value=!0,s(`interact-start`),G=document.createElement(`div`),G.style.cssText=`position: fixed; pointer-events: none; z-index: 10000; opacity: 0.5; border: 2px dashed #2563eb; border-radius: 4px; background: rgba(37, 99, 235, 0.1);`;let e=o.zoom;G.style.width=`${r.width*e}px`,G.style.height=`${r.height*e}px`,document.body.appendChild(G)}if(G){let t=o.zoom;G.style.left=`${e.clientX-r.width*t/2}px`,G.style.top=`${e.clientY-r.height*t/2}px`}}},c=e=>{document.removeEventListener(`mousemove`,a),document.removeEventListener(`mouseup`,c),O=null,k=null,G&&=(G.remove(),null),u.value=!1,i&&(s(`interact-end`),K(e.clientX,e.clientY))};O=a,k=c,document.addEventListener(`mousemove`,a),document.addEventListener(`mouseup`,c)}function K(e,t){let n=o.view,r=o.imageInfo;if(!n||!r)return;let i=A(n,r.pmPos);if(!i)return;let s;if((0,b.isFloatingImage)(i)){let i=(c.value?.closest(`.docx-editor-vue__pages-viewport`))?.querySelectorAll(`.layout-page`);if(!i||i.length===0)return;let a=null;for(let e of i){let n=e.getBoundingClientRect();if(t>=n.top&&t<=n.bottom){a=e.querySelector(`.layout-page-content`);break}}if(!a){let e=i.item(i.length-1);a=e?e.querySelector(`.layout-page-content`):null}if(!a)return;let l=a.getBoundingClientRect(),u=o.zoom,d=(0,g.pixelsToEmu)((e-l.left)/u),f=(0,g.pixelsToEmu)((t-l.top)/u);s=(0,b.commitImageFloatMove)(n,r.pmPos,d,f)}else{let i=M();if(!i)return;let a=(0,y.clickToPositionDom)(i,e,t,1);if(a==null||a<0)return;s=(0,b.commitImageInlineMove)(n,r.pmPos,a)}s!==null&&q(s),(0,a.nextTick)(()=>P())}function q(e){let t=o.view;if(t)try{let n=h.NodeSelection.create(t.state.doc,e);t.dispatch(t.state.tr.setSelection(n))}catch{}}return(0,a.onBeforeUnmount)(()=>{document.removeEventListener(`mousemove`,re),document.removeEventListener(`mouseup`,B),document.removeEventListener(`mousemove`,de),document.removeEventListener(`mouseup`,W),O&&document.removeEventListener(`mousemove`,O),k&&document.removeEventListener(`mouseup`,k),G&&=(G.remove(),null),D&&cancelAnimationFrame(D),F?.()}),(e,n)=>t.imageInfo?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,ref_key:`overlayRootRef`,ref:c,class:`image-overlay`,style:(0,a.normalizeStyle)(R.value),onMousedown:n[3]||=(0,a.withModifiers)(()=>{},[`stop`])},[n[4]||=(0,a.createElementVNode)(`div`,{class:`image-overlay__border`},null,-1),(0,a.createElementVNode)(`div`,{class:`image-overlay__body`,style:(0,a.normalizeStyle)({cursor:u.value?`grabbing`:`grab`}),onMousedown:n[0]||=(0,a.withModifiers)(e=>fe(e),[`prevent`,`stop`]),onContextmenu:n[1]||=(0,a.withModifiers)(t=>e.$emit(`context-menu`,t),[`prevent`,`stop`])},null,36),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(z.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:e.pos,class:`image-overlay__handle`,style:(0,a.normalizeStyle)(e.style),"data-handle":e.pos,onMousedown:(0,a.withModifiers)(t=>ne(t,e.pos),[`prevent`,`stop`])},null,44,tt))),128)),n[5]||=(0,a.createElementVNode)(`div`,{class:`image-overlay__rotate-line`},null,-1),(0,a.createElementVNode)(`div`,{class:`image-overlay__rotate-handle`,style:(0,a.normalizeStyle)({left:`${L.value/2-7}px`}),title:(0,a.unref)(i)(`imageOverlay.rotate`),onMousedown:n[2]||=(0,a.withModifiers)(e=>ue(e),[`prevent`,`stop`])},null,44,nt),l.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,rt,(0,a.toDisplayString)(Math.round(f.value))+` × `+(0,a.toDisplayString)(Math.round(p.value)),1)):(0,a.createCommentVNode)(``,!0),d.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,it,(0,a.toDisplayString)(Math.round(m.value))+`° `,1)):(0,a.createCommentVNode)(``,!0)],36)):(0,a.createCommentVNode)(``,!0)}}),ct=e.F(st,[[`__scopeId`,`data-v-4c3d1a1d`]]),lt=[`title`,`aria-label`],ut=(0,a.defineComponent)({__name:`OutlineToggleButton`,props:{leftOffset:{},topPx:{default:24}},emits:[`toggle`],setup(t){let{t:n}=e.j();return(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{type:`button`,class:`docx-outline-toggle docx-editor-vue__outline-toggle`,style:(0,a.normalizeStyle)({left:t.leftOffset+`px`,top:t.topPx+`px`}),title:(0,a.unref)(n)(`editor.showDocumentOutline`),"aria-label":(0,a.unref)(n)(`editor.showDocumentOutline`),onClick:i[0]||=e=>r.$emit(`toggle`),onMousedown:i[1]||=(0,a.withModifiers)(()=>{},[`stop`])},[(0,a.createVNode)(e.P,{name:`format_list_bulleted`,size:20})],44,lt))}}),dt=(0,a.defineComponent)({__name:`PageIndicator`,props:{currentPage:{},totalPages:{},visible:{type:Boolean}},setup(t){let{t:n}=e.j();return(e,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:`docx-editor-vue__page-indicator`,style:(0,a.normalizeStyle)({opacity:+!!t.visible}),"aria-live":`polite`,role:`status`},(0,a.toDisplayString)((0,a.unref)(n)(`viewer.pageIndicator`,{current:t.currentPage,total:t.totalPages})),5))}}),ft=e.F(dt,[[`__scopeId`,`data-v-f1904974`]]),pt=[`data-folio-block-id`],mt=[`data-folio-block-id`,`title`],ht=2.5,gt=5,_t=6,vt=2,yt=2,bt=(0,a.defineComponent)({__name:`TemplateDirectivesOverlay`,props:{getView:{type:Function},getPagesContainer:{type:Function},editorState:{},zoom:{},layout:{},blocks:{},measures:{}},setup(e){let t=e,n=new Set([`if`,`each`]),r=new Set([`endif`,`endeach`]),i=e=>e===`each`?`each`:`if`;function o(e){let t=e-_t-ht-vt;return t<=0?0:Math.floor(t/gt)}function s(e,t,n){let r=o(n),i=Math.min(Math.max(0,e),r);return t-_t-ht-(r-i)*gt}function c(e,t){if(t.length===0)return e.bottom-e.top>=yt?[e]:[];let n=[];for(let r of t){let t=Math.max(e.top,r.top),i=Math.min(e.bottom,r.bottom);i-t>=yt&&n.push({top:t,bottom:i})}return n}function l(e){let t=e.filter(e=>e.block&&(n.has(e.kind)||r.has(e.kind))).slice().sort((e,t)=>e.from-t.from),a=[],o=[];for(let e of t){if(n.has(e.kind)){o.push({range:e,depth:o.length});continue}let t=e.kind===`endif`?`if`:`each`,r,s=-1;for(let e=o.length-1;e>=0;--e){let n=o[e];if(n?.range.kind===t){r=n,s=e;break}}r&&(o.length=s,a.push({blockId:r.range.from,kind:i(r.range.kind),depth:r.depth,openerFrom:r.range.from,closerFrom:e.from,closerTo:e.to,openerExpr:r.range.expr}))}return a}function u(e,t){let n=e===`each`?`/each`:`/if`;return t?`${n} · ${t}`:n}function d(e,t){if(t===null)return null;let n=null,r=-1/0;for(let i of e)t>=i.openerFrom&&t<=i.closerTo&&i.openerFrom>r&&(r=i.openerFrom,n=i.blockId);return n}function p(e,t,n){let r=new Map(t.map(e=>[e.range.from,e])),i=[];for(let t of e){let e=r.get(t.openerFrom)?.rects[0],a=r.get(t.closerFrom)?.rects[0];if(!e||!a)continue;let o=c({top:e.y,bottom:a.y+a.height},n.pageBands);o.length!==0&&i.push({blockId:t.blockId,kind:t.kind,railX:s(t.depth,n.contentLeft,n.marginWidth),segments:o})}return i}let m=(0,a.ref)([]),h=(0,a.ref)([]),g=(0,a.ref)(null),_=(0,a.ref)(null),v=(0,a.ref)(null),y=0,b=null;function x(){b!==null&&cancelAnimationFrame(b),b=requestAnimationFrame(()=>{b=null,ee()})}async function ee(){let e=++y,n=t.getView(),r=t.getPagesContainer(),i=t.editorState;if(!n||!r||!i){m.value=[],h.value=[],g.value=null,_.value=null;return}let a=(0,S.getTemplateDirectives)(i);if(a.length===0){m.value=[],h.value=[],g.value=null,_.value=null;return}let o=(0,f.measureDirectiveGutter)(r,t.zoom),s=await(0,f.projectRangesToRects)(a,{pagesContainer:r,zoom:t.zoom,layout:t.layout,blocks:t.blocks,measures:t.measures});e===y&&(m.value=a,_.value=i.selection.head,g.value=o,h.value=s)}(0,a.watch)(()=>[t.editorState,t.zoom,t.layout,t.blocks,t.measures],()=>x());let C=(0,a.computed)(()=>l(m.value)),w=(0,a.computed)(()=>g.value?p(C.value,h.value,g.value):[]),T=(0,a.computed)(()=>{let e=new Map;for(let t of C.value)e.set(t.openerFrom,t.blockId),e.set(t.closerFrom,t.blockId);return e}),E=(0,a.computed)(()=>{let e=new Map;for(let t of C.value)e.set(t.closerFrom,u(t.kind,t.openerExpr));return e}),D=(0,a.computed)(()=>d(C.value,_.value));function O(e){return e===v.value||e===D.value}function k(e){return e.block&&(n.has(e.kind)||r.has(e.kind))}function A(e){return e.block?T.value.get(e.from):void 0}function j(e){return e.block?E.value.get(e.from):void 0}function M(e){let t=A(e),n=t!==void 0&&O(t);return[`folio-template-directive`,`folio-template-directive--${e.kind}`,{"folio-template-directive--block":k(e)},{"folio-template-directive--active":n}]}function N(e){if(!(e instanceof HTMLElement))return null;let t=e.dataset.folioBlockId;return t===void 0?null:Number(t)}function P(e){let t=N(e.target);t!==null&&(v.value=t)}function F(e){let t=N(e.target);if(t===null)return;let n=N(e.relatedTarget);n!==t&&v.value===t&&(v.value=n)}return(0,a.onMounted)(()=>x()),(0,a.onBeforeUnmount)(()=>{b!==null&&(cancelAnimationFrame(b),b=null)}),(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:`folio-template-directives-overlay`,"data-folio-template-directives-overlay":``,onPointerover:P,onPointerout:F},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,t=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`rail:${t.blockId}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.segments,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:`rail:${t.blockId}:${r}`,class:(0,a.normalizeClass)([`folio-template-band-rail`,`folio-template-band-rail--${t.kind}`,{"folio-template-band-rail--active":O(t.blockId)}]),"data-folio-block-id":t.blockId,style:(0,a.normalizeStyle)({position:`absolute`,left:`${t.railX*e.zoom}px`,top:`${n.top*e.zoom}px`,width:`${ht*e.zoom}px`,height:`${Math.max(0,n.bottom-n.top)*e.zoom}px`})},null,14,pt))),128))],64))),128)),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(h.value,(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`d:${n}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.rects,(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:`d:${n}:${i}`,class:(0,a.normalizeClass)(M(t.range)),"data-folio-block-id":A(t.range),title:j(t.range),style:(0,a.normalizeStyle)({position:`absolute`,left:`${(r.x-1)*e.zoom}px`,top:`${(r.y+1)*e.zoom}px`,width:`${(r.width+2)*e.zoom}px`,height:`${Math.max(0,r.height-2)*e.zoom}px`})},null,14,mt))),128))],64))),128))],32))}}),xt=e.F(bt,[[`__scopeId`,`data-v-142d2ac6`]]),St=[`href`,`title`],Ct=[`title`],wt=[`title`],Tt=[`title`],Et={class:`docx-hyperlink-popup__edit-row`},Dt=[`placeholder`,`onKeydown`],Ot={class:`docx-hyperlink-popup__edit-row`},kt=[`onKeydown`],At=[`disabled`],jt=(0,a.defineComponent)({__name:`HyperlinkPopup`,props:{data:{},readOnly:{type:Boolean}},emits:[`navigate`,`copy`,`edit`,`remove`,`close`],setup(t,{emit:n}){let{t:r}=e.j(),i=t,o=n,s=(0,a.ref)(!1),c=(0,a.ref)(``),l=(0,a.ref)(``),u=(0,a.ref)(null),d=(0,a.computed)(()=>({left:(i.data?.position.left??0)+`px`,top:(i.data?.position.top??0)+`px`}));(0,a.watch)(()=>i.data?.href,()=>{s.value=!1});let f=null,p=null;function m(){p&&=(clearTimeout(p),null),f&&=(document.removeEventListener(`mousedown`,f),null)}(0,a.watch)(()=>i.data,e=>{m(),e&&(f=e=>{let t=u.value,n=e.target;t&&n instanceof Node&&!t.contains(n)&&o(`close`)},p=setTimeout(()=>{f&&document.addEventListener(`mousedown`,f)},0))},{immediate:!0}),(0,a.onBeforeUnmount)(m);function h(){i.data&&(c.value=i.data.displayText,l.value=i.data.href,s.value=!0)}function g(){l.value.trim()&&(o(`edit`,c.value,l.value),s.value=!1)}function _(){i.data&&(o(`copy`,i.data.href),typeof navigator<`u`&&navigator.clipboard&&navigator.clipboard.writeText(i.data.href).catch(()=>{}))}return(e,n)=>t.data?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,ref_key:`popupRef`,ref:u,class:(0,a.normalizeClass)([`docx-hyperlink-popup`,{"docx-hyperlink-popup--edit":s.value}]),style:(0,a.normalizeStyle)(d.value),onMousedown:n[6]||=(0,a.withModifiers)(()=>{},[`stop`])},[s.value?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createElementVNode)(`div`,Et,[(0,a.withDirectives)((0,a.createElementVNode)(`input`,{class:`docx-hyperlink-popup__input`,placeholder:(0,a.unref)(r)(`displayText`),"onUpdate:modelValue":n[2]||=e=>c.value=e,onKeydown:[(0,a.withKeys)((0,a.withModifiers)(g,[`prevent`]),[`enter`]),n[3]||=(0,a.withKeys)(t=>e.$emit(`close`),[`esc`])]},null,40,Dt),[[a.vModelText,c.value]])]),(0,a.createElementVNode)(`div`,Ot,[(0,a.withDirectives)((0,a.createElementVNode)(`input`,{class:`docx-hyperlink-popup__input`,placeholder:`https://...`,"onUpdate:modelValue":n[4]||=e=>l.value=e,onKeydown:[(0,a.withKeys)((0,a.withModifiers)(g,[`prevent`]),[`enter`]),n[5]||=(0,a.withKeys)(t=>e.$emit(`close`),[`esc`])]},null,40,kt),[[a.vModelText,l.value]]),(0,a.createElementVNode)(`button`,{class:`docx-hyperlink-popup__apply`,disabled:!l.value.trim(),onClick:(0,a.withModifiers)(g,[`prevent`])},(0,a.toDisplayString)((0,a.unref)(r)(`common.apply`)),9,At)])],64)):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[n[10]||=(0,a.createStaticVNode)(`<span class="docx-hyperlink-popup__icon" aria-hidden data-v-366df18c><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-366df18c><circle cx="12" cy="12" r="10" data-v-366df18c></circle><path d="M2 12h20" data-v-366df18c></path><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z" data-v-366df18c></path></svg></span>`,1),(0,a.createElementVNode)(`a`,{class:`docx-hyperlink-popup__url`,href:t.data.href,title:t.data.href,onClick:n[0]||=(0,a.withModifiers)(n=>e.$emit(`navigate`,t.data.href),[`prevent`])},(0,a.toDisplayString)(t.data.href),9,St),n[11]||=(0,a.createElementVNode)(`span`,{class:`docx-hyperlink-popup__sep`},null,-1),(0,a.createElementVNode)(`button`,{class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`copyLink`),onClick:(0,a.withModifiers)(_,[`prevent`])},[...n[7]||=[(0,a.createElementVNode)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[(0,a.createElementVNode)(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),(0,a.createElementVNode)(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})],-1)]],8,Ct),t.readOnly?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`editLink`),onClick:(0,a.withModifiers)(h,[`prevent`])},[...n[8]||=[(0,a.createElementVNode)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[(0,a.createElementVNode)(`path`,{d:`M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`}),(0,a.createElementVNode)(`path`,{d:`M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z`})],-1)]],8,wt)),t.readOnly?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:1,class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`removeLink`),onClick:n[1]||=(0,a.withModifiers)(t=>e.$emit(`remove`),[`prevent`])},[...n[9]||=[(0,a.createStaticVNode)(`<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-366df18c><path d="M18.84 12.25l1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71" data-v-366df18c></path><path d="M5.17 11.75l-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71" data-v-366df18c></path><line x1="8" y1="2" x2="8" y2="5" data-v-366df18c></line><line x1="2" y1="8" x2="5" y2="8" data-v-366df18c></line><line x1="16" y1="19" x2="16" y2="22" data-v-366df18c></line><line x1="19" y1="16" x2="22" y2="16" data-v-366df18c></line></svg>`,1)]],8,Tt))],64))],38)):(0,a.createCommentVNode)(``,!0)}}),Mt=e.F(jt,[[`__scopeId`,`data-v-366df18c`]]);function Nt(e,t){let n=Math.max(0,Math.min(t.from,e)),r=Math.max(n,Math.min(t.to,e));return n===r?null:{from:n,to:r}}function Pt({docSize:e,capturedRange:t,currentRange:n,savedRange:r}){let i=t.from===t.to?n.from===n.to?r&&r.from!==r.to?r:null:n:t;return i?Nt(e,i):null}function Ft(e,t,n,r){let i=e.state.schema.marks.comment,a=Nt(e.state.doc.content.size,t);if(!i||!a)return!1;let o=e.state.tr;return r?.replacePending&&(o=o.removeMark(a.from,a.to,i.create({commentId:T.PENDING_COMMENT_ID}))),o=o.addMark(a.from,a.to,i.create({commentId:n})),r?.selectEnd&&(o=o.setSelection(h.Selection.near(o.doc.resolve(a.to),-1))),e.dispatch(o),!0}function It(e,t){let n=e.state.schema.marks.comment,r=Nt(e.state.doc.content.size,t);!n||!r||e.dispatch(e.state.tr.removeMark(r.from,r.to,n.create({commentId:T.PENDING_COMMENT_ID})))}var Lt=408,Rt=12;function zt(e){let t=(0,a.ref)(!1),n=(0,a.ref)(null),r=(0,a.ref)(null),i=(0,a.ref)(null),o=(0,a.ref)(null);function s(t){let n=e.editorView.value,r=e.pagesContainer.value;if(!n||!r)return null;try{return n.coordsAtPos(t).top-r.getBoundingClientRect().top}catch{return null}}function c(){let n=e.editorView.value,i=e.pagesViewport.value;if(!n||!i||t.value||e.readOnly.value){r.value=null;return}let{from:a,to:s}=n.state.selection;if(a===s){r.value=null;return}o.value={from:a,to:s};let c;try{c=n.coordsAtPos(a)}catch{r.value=null;return}let l=i.getBoundingClientRect(),u=e.pagesContainer.value?.getBoundingClientRect(),d=u?u.right-l.left+Rt:l.width/2+Lt;r.value={top:c.top-l.top,left:Math.max(16,Math.min(d,l.width-16)),from:a,to:s}}function l(){let a=e.editorView.value;if(!a)return;let c=r.value,l=a.state.selection,u=Pt({docSize:a.state.doc.content.size,capturedRange:c?{from:c.from,to:c.to}:{from:0,to:0},currentRange:{from:l.from,to:l.to},savedRange:o.value});if(!u){r.value=null;return}if(!Ft(a,u,T.PENDING_COMMENT_ID,{selectEnd:!0})){r.value=null,i.value=null;return}i.value=u,n.value=s(u.from)??c?.top??null,e.showSidebar.value=!0,t.value=!0,r.value=null}function u(){t.value=!1,i.value=null,n.value=null}function d(t){let n=e.editorView.value,r=i.value;if(!n||!r)return!1;let a=e.createComment(t);return Ft(n,r,a.id,{replacePending:!0})?(e.pushComment(a),e.reLayout(),e.setActiveSidebarItem(`comment-${a.id}`),u(),!0):!1}function f(){let t=e.editorView.value;t&&i.value&&It(t,i.value),u()}return{isAddingComment:t,addCommentYPosition:n,floatingCommentButton:r,updateFloatingButton:c,startAddComment:l,handleAddComment:d,handleCancelAddComment:f}}function Bt(e){let t=(0,T.createCommentIdAllocator)(),n=(0,a.ref)([]),r=(0,a.ref)(!1);function i(){r.value=!0}function o(){r.value=!1}let s=(0,a.computed)(()=>e.commentsProp()!==void 0),c=(0,a.computed)(()=>s.value?e.commentsProp()??[]:n.value);function l(t){s.value||(n.value=t),e.onCommentsChange(t)}function u(e){i(),l([...c.value,e])}function d(n,r){return(0,T.seedCommentAllocator)(t,c.value,e.editorView.value),(0,E.createComment)(t,n,e.author(),r)}function f(){if(o(),s.value)return;let n=e.getDocument()?.package.document.comments;(0,T.seedCommentAllocator)(t,n,e.editorView.value),l(n&&n.length>0?n:[])}function p(e,t){u(d(t,e))}function m(e){i(),l(c.value.map(t=>t.id===e?{...t,done:!0}:t))}function h(e){i(),l(c.value.map(t=>t.id===e?{...t,done:!1}:t))}function g(e){i(),l(c.value.filter(t=>t.id!==e&&t.parentId!==e))}function _(e,t){u(d(t,e))}function v(t,n){let r=e.editorView.value;if(!r)return;let i=(0,D.findChangeRange)(r,t);i&&(n?O.acceptChange:O.rejectChange)(i.from,i.to)(r.state,r.dispatch)}function y(e){v(e,!0)}function b(e){v(e,!1)}function x(t,n){let r=e.editorView.value;r&&(0,O.acceptChange)(t,n)(r.state,r.dispatch)}function S(t,n){let r=e.editorView.value;r&&(0,O.rejectChange)(t,n)(r.state,r.dispatch)}return{comments:c,commentsDirty:(0,a.computed)(()=>r.value),clearCommentsDirty:o,createComment:d,pushComment:u,setComments:l,seedFromDocument:f,handleReply:p,handleResolve:m,handleUnresolve:h,handleDelete:g,handleTrackedChangeReply:_,handleAcceptChangeById:y,handleRejectChangeById:b,handleAcceptChange:x,handleRejectChange:S}}function Vt(e,t,n){let r=(0,k.makeRevisionInfo)(e.state),i=e.state.schema.marks.insertion;if(!r||!i)return;let a=t.selection.from,o=a-n.nodeSize;o<0||t.addMark(o,a,i.create({revisionId:r.id,author:r.author,date:r.date}))}function Ht(e,t){let n=e.state.doc.nodeAt(t);if(!n||n.type.name!==`image`)return;let r=n.attrs.src;if(typeof r!=`string`)return;let i=`<img src="${r}" data-pm-image="true" data-width="${String(n.attrs.width??``)}" data-height="${String(n.attrs.height??``)}" data-wrap-type="${String(n.attrs.wrapType??``)}" data-display-mode="${String(n.attrs.displayMode??``)}" data-rid="${String(n.attrs.rId??``)}" />`,a=new ClipboardItem({"text/html":new Blob([i],{type:`text/html`}),"text/plain":new Blob([`[image]`],{type:`text/plain`})});navigator.clipboard.write([a]).catch(()=>{let e=document.createElement(`textarea`);e.value=i,document.body.appendChild(e),e.select(),document.execCommand(`copy`),document.body.removeChild(e)})}function Ut(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{typeof r.result==`string`?t(r.result):n(Error(`Failed to read blob as data URL`))},r.onerror=()=>n(r.error??Error(`Failed to read blob`)),r.readAsDataURL(e)})}function Wt(e){return new Promise(t=>{let n=new Image;n.onload=()=>t({width:n.naturalWidth,height:n.naturalHeight}),n.onerror=()=>t({width:200,height:200}),n.src=e})}function Gt(e,t,n,r){let i=e.state.schema.nodes.image;if(!i)return;let a=i.create({src:t,width:n,height:r,rId:`rId_img_${Date.now()}`,wrapType:`inline`,displayMode:`inline`}),o=e.state.tr.replaceSelectionWith(a);Vt(e,o,a),e.dispatch(o)}async function Kt(e){try{let t=await navigator.clipboard.read();for(let n of t){let t=n.types.find(e=>e.startsWith(`image/`));if(t){let r=await Ut(await n.getType(t)),i=await Wt(r),a=i.width,o=i.height;a>612&&(o=Math.round(612/a*o),a=612),Gt(e,r,a,o);return}if(n.types.includes(`text/html`)){let t=await(await n.getType(`text/html`)).text(),r=/<img[^>]+src="(?<src>[^"]+)"[^>]*>/iu.exec(t)?.groups?.src;if(r){let n=/data-width="(?<w>\d+)"/u.exec(t)?.groups?.w,i=/data-height="(?<h>\d+)"/u.exec(t)?.groups?.h,a=n?Number(n):200,o=i?Number(i):200;Gt(e,r,a||200,o||200);return}}if(n.types.includes(`text/plain`)){let t=await(await n.getType(`text/plain`)).text();if(t&&t!==`[image]`){let{from:n}=e.state.selection;e.dispatch(e.state.tr.insertText(t,n))}return}}}catch{let t=await navigator.clipboard?.readText();if(t){let{from:n}=e.state.selection;e.dispatch(e.state.tr.insertText(t,n))}}}function qt(e,t){let n=e.state.doc.nodeAt(t);if(!n||n.type.name!==`image`)return;let r=document.createElement(`input`);r.type=`file`,r.accept=`image/*`,r.onchange=async()=>{let i=r.files?.[0];if(!i)return;let a=await Ut(i),o=await Wt(a),s=n.attrs.width,c=n.attrs.height,l=typeof s==`number`?s:o.width,u=typeof c==`number`?c:o.height,d=Math.min(l/o.width,u/o.height),f=Math.round(o.width*d),p=Math.round(o.height*d);try{let r=e.state.tr.setNodeMarkup(t,void 0,{...n.attrs,src:a,width:f,height:p,rId:`rId_img_${Date.now()}`});e.dispatch(r)}catch{}},r.click()}var Jt=new Set([`inline`,`square`,`tight`,`through`,`topAndBottom`,`behind`,`inFront`]);function Yt(e){return typeof e==`string`&&Jt.has(e)}function Xt(e){return Yt(e)?e:`inline`}function Zt(e){return e===`left`||e===`right`||e===`none`?e:null}function Qt(t){let{t:n}=e.j(),r=(0,a.ref)({isOpen:!1,position:{x:0,y:0},hasSelection:!1,inTable:!1,onImage:!1,canMergeCells:!1,canSplitCell:!1}),i=(0,a.ref)(null),o=(0,a.ref)({from:0,to:0}),s=(0,a.computed)(()=>(t.customContextMenuItems?.()??[]).filter(e=>!e.requiresSelection||r.value.hasSelection)),c=(0,a.computed)(()=>[{action:`cut`,label:n(`contextMenu.cut`),shortcut:n(`contextMenu.cutShortcut`)},{action:`copy`,label:n(`contextMenu.copy`),shortcut:n(`contextMenu.copyShortcut`)},{action:`paste`,label:n(`contextMenu.paste`),shortcut:n(`contextMenu.pasteShortcut`),dividerAfter:!0},{action:`delete`,label:n(`contextMenu.delete`),shortcut:n(`contextMenu.deleteShortcut`)}]);function l(e,t){t(e.state,t=>e.dispatch(t),e)}function u(e,n,r,i,a){let o=i===`inline`?(0,_.captureInlinePositionEmu)(e,t.zoom.value):void 0;return{open:!0,position:r,pmPos:n,currentWrapType:i,currentCssFloat:a,...o!==void 0&&{inlinePositionEmu:o}}}function d(e){let n=t.editorView.value;if(!n)return;let a=(0,_.findImageElement)(e.target);if(a){let o=Number(a.dataset.pmStart);if(!Number.isNaN(o)){try{let e=h.NodeSelection.create(n.state.doc,o);n.dispatch(n.state.tr.setSelection(e))}catch{}t.selectedImage.value={element:a,pmPos:o,width:a.offsetWidth,height:a.offsetHeight},t.clearOverlay();let s=n.state.doc.nodeAt(o);if(s&&s.type.name===`image`){i.value=u(a,o,{x:e.clientX,y:e.clientY},Xt(s.attrs.wrapType),Zt(s.attrs.cssFloat)),r.value.isOpen=!1;return}}}{let{from:r,to:i}=n.state.selection,a=t.resolvePos(e.clientX,e.clientY);if(a!==null&&(a<r||a>i))try{t.setPmSelection(a)}catch{}}let s=(0,w.getTableContext)(n.state),{empty:c,from:l,to:d}=n.state.selection;o.value={from:l,to:d},i.value&&=null,r.value={isOpen:!0,position:{x:e.clientX,y:e.clientY},hasSelection:!c,inTable:s.isInTable,onImage:!!a,canMergeCells:!!s.hasMultiCellSelection,canSplitCell:!!s.canSplitCell}}function f(e){let n=t.editorView.value,a=t.selectedImage.value;if(!n||!a)return;let o=n.state.doc.nodeAt(a.pmPos);!o||o.type.name!==`image`||(i.value=u(a.element,a.pmPos,{x:e.clientX,y:e.clientY},Xt(o.attrs.wrapType),Zt(o.attrs.cssFloat)),r.value.isOpen=!1)}function p(e){let n=t.editorView.value,r=i.value;if(!n||!r)return;let a=r.inlinePositionEmu&&e!==`inline`?{initialPositionEmu:r.inlinePositionEmu}:void 0,o=t.getCommands().setImageWrapType;o&&(l(n,o(r.pmPos,e,a)),n.focus())}function m(e){let n=t.editorView.value;if(!n)return;let r=t.getCommands();if(e.startsWith(`custom:`)){let r=o.value,i=r.from===r.to?{from:n.state.selection.from,to:n.state.selection.to}:r;t.onCustomContextAction?.(e.slice(7),i),n.focus();return}switch(e){case`cut`:if(t.selectedImage.value){let e=t.selectedImage.value.pmPos;Ht(n,e);let r=n.state.doc.nodeAt(e);r&&(n.dispatch(n.state.tr.delete(e,e+r.nodeSize)),t.selectedImage.value=null)}else n.focus(),document.execCommand(`cut`);break;case`copy`:t.selectedImage.value?Ht(n,t.selectedImage.value.pmPos):(n.focus(),document.execCommand(`copy`));break;case`paste`:Kt(n);break;case`pasteAsPlainText`:navigator.clipboard.readText().then(e=>{e&&n.dispatch(n.state.tr.insertText(e).scrollIntoView())}).catch(()=>{});break;case`delete`:{let{from:e,to:t}=n.state.selection;e!==t&&n.dispatch(n.state.tr.delete(e,t));break}case`selectAll`:{let e=h.TextSelection.create(n.state.doc,0,n.state.doc.content.size);n.dispatch(n.state.tr.setSelection(e));break}case`imageProperties`:t.selectedImage.value&&(t.showImageProperties.value=!0);break;case`replaceImage`:t.selectedImage.value&&qt(n,t.selectedImage.value.pmPos);break;case`deleteImage`:if(t.selectedImage.value){let e=t.selectedImage.value.pmPos,r=n.state.doc.nodeAt(e);r&&(n.dispatch(n.state.tr.delete(e,e+r.nodeSize)),t.selectedImage.value=null)}break;case`addRowAbove`:case`addRowBelow`:case`deleteRow`:case`addColumnLeft`:case`addColumnRight`:case`deleteColumn`:case`mergeCells`:case`splitCell`:case`selectTable`:case`deleteTable`:{let t=r[e];t&&l(n,t());break}}n.focus()}return{contextMenu:r,imageContextMenu:i,imageContextMenuTextActions:c,customTextMenuItems:s,handleContextMenu:d,handleSelectedImageContextMenu:f,handleImageWrapSelect:p,handleContextMenuAction:m}}function $t(e){async function t(t){e.sidebarAutoOpenedRef.value=!1,await e.loadDocumentBuffer(t)}function n(t){e.sidebarAutoOpenedRef.value=!1,e.loadDocument(t)}(0,a.watch)(e.documentBuffer,e=>{e&&t(e)}),(0,a.watch)(e.document,e=>{e&&n(e)}),(0,a.onMounted)(async()=>{await(0,a.nextTick)();let r=e.documentBuffer(),i=e.document();r?await t(r):i&&n(i)})}var en=Date.now();function tn(e){let t=[];function n(){e.onPrint?.(),window.print()}async function r(t){let n=await e.save(t);if(!n)return null;let r=await n.arrayBuffer();return e.clearCommentsDirty(),e.onSave?.(r),r}function i(t,n){let r=e.pagesRef.value;if(!r)return!1;let i=(0,P.findParagraphFragmentsByParaId)(r,t),a=i.at(0);return a?(a.scrollIntoView({block:`center`,behavior:`smooth`}),n?.highlight&&(0,P.flashParagraphElements)(i,n.highlight),!0):!1}function a(){return e.zoom.value}let s=null;function c(){return s??={getEditor:()=>e.editor,getDocument:()=>e.editor.getDocument(),getState:()=>e.editor.getState(),getView:()=>e.editor.getView(),getHfView:()=>null,ensureView:()=>e.editor.ensureView(),focus:()=>e.editor.focus(),blur:()=>e.editor.blur(),isFocused:()=>e.editor.isFocused(),dispatch:t=>e.editor.dispatch(t),undo:()=>e.editor.undo(),redo:()=>e.editor.redo(),canUndo:()=>e.editor.canUndo(),canRedo:()=>e.editor.canRedo(),setSelection:(t,n)=>e.editor.setSelection(t,n),getLayout:()=>e.editor.getLayout(),relayout:()=>e.editor.relayout(),scrollToPosition:t=>e.scrollVisiblePositionIntoView(t),scrollToPage:d,scrollToParaId:i,getPageNumberForPmPos:t=>{let n=e.layout.value;if(!n)return null;let r=(0,A.findPageIndexContainingPmPos)(n,t);return r==null?null:r+1}},s}function l(){return e.layout.value?.pages.length??0}function u(){let t=e.layout.value,n=e.editorView.value;if(!t||!n)return 0;let r=(0,A.findPageIndexContainingPmPos)(t,n.state.selection.from);return r==null?0:r+1}function d(t){if(!Number.isInteger(t)||t<1)return;let n=e.pagesViewportRef.value,r=e.pagesRef.value?.querySelector(`[data-page-number="${t}"]`);if(!n||!r)return;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect();n.scrollTo({top:a.top-i.top+n.scrollTop-24,behavior:`smooth`})}return{exposed:{getDocument:e.getDocument,hasPendingChanges:()=>e.editorView.value?e.isDirty.value||e.commentsDirty.value:!1,getEditorRef:c,getEditor:()=>e.editor,save:r,setZoom:e.setZoom,getZoom:a,focus:e.focus,getCurrentPage:u,getTotalPages:l,scrollToPage:d,scrollToParaId:i,openPrintPreview:()=>n(),print:n,loadDocument:e.loadDocument,loadDocumentBuffer:e.loadDocumentBuffer,ensureEditorView:()=>e.editor.ensureView(),createAIEditSnapshot:()=>{let t=e.editorView.value;return t?(0,N.createFolioAIEditSnapshot)(t.state.doc):null},applyDocumentOperations:({snapshot:n,batch:r,author:i=e.author()})=>{(0,N.assertSupportedFolioDocumentOperationVersion)(r.version);let a=e.editorView.value;if(!a){let e=`committed`;r.dryRun===!0?e=`previewed`:r.atomic===!0&&(e=`rejected`);let t=r.operations.map(e=>({id:e.id,reason:`unsupportedBlock`}));return{version:N.FOLIO_DOCUMENT_OPERATION_CONTRACT_VERSION,status:e,applied:[],skipped:t,issues:(0,N.getFolioDocumentOperationIssues)(r.operations,t),receipts:[],undoHandle:null}}let o=t.at(-1);o&&(!a.state.doc.eq(o.afterState.doc)||e.getComments()!==o.commentsAfter)&&(t.length=0);let s=e.getComments(),c={state:a.state,dispatch:e=>{a.dispatch((0,ee.closeHistory)(e)),c.state=a.state}},l=(0,N.applyFolioDocumentOperations)({view:c,snapshot:n,batch:r,author:i,createCommentId:e.createAIEditComment,createUndoHandle:()=>({type:`documentOperationUndo`,id:`vue-${String(en++)}`})});return l.undoHandle!==null&&t.push({undoHandle:l.undoHandle,afterState:a.state,commentsBefore:s,commentsAfter:e.getComments()}),l},undoDocumentOperations:n=>{let r=t.findIndex(e=>e.undoHandle.type===n.type&&e.undoHandle.id===n.id);if(r===-1)return{status:`rejected`,undoHandle:n,reason:`unknownHandle`};if(r!==t.length-1)return{status:`rejected`,undoHandle:n,reason:`notLatest`};let i=t.at(-1),a=e.editorView.value;return!i||!a?{status:`rejected`,undoHandle:n,reason:`unknownHandle`}:!a.state.doc.eq(i.afterState.doc)||e.getComments()!==i.commentsAfter||!e.editor.undo()?{status:`rejected`,undoHandle:n,reason:`documentChanged`}:(e.setComments(i.commentsBefore),t.pop(),{status:`undone`,undoHandle:n})},applyAIEditOperations:({snapshot:t,operations:n,mode:r=`tracked-changes`,author:i=e.author()})=>{let a=e.editorView.value;return a?(0,N.applyFolioAIEditOperations)({view:a,snapshot:t,operations:n,mode:r,author:i,createCommentId:e.createAIEditComment}):{applied:[],skipped:n.map(e=>({id:e.id,reason:`unsupportedBlock`}))}},acceptAIEditOperation:t=>{let n=e.editorView.value;return n?(0,O.acceptAIEditRevision)(t)(n.state,n.dispatch):!1},rejectAIEditOperation:t=>{let n=e.editorView.value;return n?(0,O.rejectAIEditRevision)(t)(n.state,n.dispatch):!1},undo:()=>e.editor.undo(),redo:()=>e.editor.redo(),scrollToAIEditOperation:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,O.findAIEditRevisionRange)(n.state,t);if(!r)return!1;let{from:i,to:a}=(0,L.clampRangeToDocSize)(n.state.doc.content.size,r),o=n.state.doc.resolve(i),s=n.state.doc.resolve(a);return n.dispatch(n.state.tr.setSelection(h.TextSelection.between(o,s))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(i)),!0},scrollToBlock:(t,n)=>{let r=e.editorView.value;if(!r)return!1;let i=(0,L.resolveFolioAIBlockRange)({blockId:t,doc:r.state.doc,snapshot:n});if(i===null)return!1;let{from:a,to:o}=i,s=r.state.doc.resolve(a),c=r.state.doc.resolve(o);return r.dispatch(r.state.tr.setSelection(h.TextSelection.between(s,c))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(a)),!0},showInDocument:()=>!1,getTrackedChanges:()=>{let t=e.editorView.value;return t?(0,N.getTrackedChangesFromDoc)(t.state.doc):[]},getCommentAnchors:()=>{let t=e.editorView.value;return t?(0,N.getCommentAnchorsFromDoc)(t.state.doc):[]},getSelectionText:()=>{let t=e.editorView.value;return t?(0,o.getSelectedText)(t.state):``},getPageText:t=>{let n=e.editorView.value;return n?(0,te.getPageTextFromLayout)(e.layout.value,n.state.doc,t):null},getTargetPage:()=>null,getContentControls:(t={})=>{let n=e.editorView.value;return n?(0,F.findBlockSdtMatches)(n.state.doc,t).map(e=>({properties:(0,F.blockSdtAttrsToSdtProperties)(e.node),path:e.path,pmPos:e.pos})):[]},scrollToContentControl:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,F.findBlockSdtMatch)(n.state.doc,t);if(!r)return!1;let i=r.pos+1,a=n.state.doc.resolve(i);return n.dispatch(n.state.tr.setSelection(h.TextSelection.near(a))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(i)),!0},setContentControlContent:(t,n,r={})=>{let i=e.editorView.value;if(!i)return!1;let a=typeof n==`string`?(0,F.setContentControlContentTr)(i.state,t,n,r):(0,I.setContentControlContentBlocksTr)(i.state,t,n,r);return a?(i.dispatch(a),!0):!1},setContentControlValue:(t,n,r={})=>{let i=e.editorView.value;if(!i)return!1;let a=(0,F.setContentControlValueTr)(i.state,t,n,r);return a?(i.dispatch(a),!0):!1},removeContentControl:(t,n={})=>{let r=e.editorView.value;if(!r)return!1;let i=(0,F.removeContentControlTr)(r.state,t,n);return i?(r.dispatch(i),!0):!1}}}}function nn(e){let t=()=>e.activeView?.value??e.editorView.value;function n(){let e=t();e&&((0,C.clearFormatting)(e.state,e.dispatch,e),e.focus())}function r(n){let r=t();if(!r)return;let i=e.getDocument(),a=i?.package?.styles;if(a){let e=(0,o.createStyleResolver)(a).resolveParagraphStyle(n),t={numbering:i?.package?.numbering?(0,z.getCachedNumberingMap)(i.package.numbering):null};e.paragraphFormatting&&(t.paragraphFormatting=e.paragraphFormatting),e.runFormatting&&(t.runFormatting=e.runFormatting),(0,R.applyStyle)(n,t)(r.state,e=>r.dispatch(e))}else(0,R.applyStyle)(n)(r.state,e=>r.dispatch(e));r.focus()}function i(){let t=e.editorView.value;t&&((0,ne.insertPageBreak)(t.state,e=>t.dispatch(e),t),t.focus())}function a(){let t=e.editorView.value;t&&((0,re.insertSectionBreakNextPage)(t.state,e=>t.dispatch(e),t),t.focus())}function s(){let t=e.editorView.value;t&&((0,re.insertSectionBreakContinuous)(t.state,e=>t.dispatch(e),t),t.focus())}function c(e){let n=t();if(!n)return;let{from:r}=n.state.selection,i=n.state.tr.insertText(e,r);n.dispatch(i.scrollIntoView()),n.focus()}return{handleClearFormatting:n,handleApplyStyle:r,handleInsertPageBreak:i,handleInsertSectionBreakNextPage:a,handleInsertSectionBreakContinuous:s,handleInsertSymbol:c}}function rn(e){let t=(0,a.ref)(null);function n(e,t){t(e.state,t=>e.dispatch(t),e)}function r(t){let r=e.editorView.value;if(!r)return;let i=e.getCommands(),{empty:a}=r.state.selection,o=t.bookmark?`#${t.bookmark}`:t.url;if(o){if(a&&t.displayText){let e=i.insertHyperlink;e&&n(r,e(t.displayText,o,t.tooltip||void 0))}else{let e=i.setHyperlink;e&&n(r,e(o,t.tooltip||void 0))}r.focus()}}function i(){let t=e.editorView.value;if(!t)return;let r=e.getCommands().removeHyperlink;r&&n(t,r()),t.focus()}function o(e){window.open(e,`_blank`,`noopener,noreferrer`),t.value=null}function s(n,r){let i=e.editorView.value;i&&((0,B.editHyperlinkAtCursor)(i,{displayText:n,href:r}),t.value=null,i.focus())}function c(){let n=e.editorView.value;n&&((0,B.removeHyperlinkAtCursor)(n,{popupHref:t.value?.href}),t.value=null,n.focus())}return{hyperlinkPopupData:t,handleHyperlinkSubmit:r,handleHyperlinkRemove:i,handleHyperlinkPopupNavigate:o,handleHyperlinkPopupEdit:s,handleHyperlinkPopupRemove:c}}function an(e){let t=(0,a.shallowRef)(null),n=(0,a.ref)(!1),r=(0,a.computed)(()=>{e.stateTick.value;let n=e.editorView.value,r=t.value;if(!n||!r)return null;let i=n.state.doc.nodeAt(r.pmPos);if(!i||i.type.name!==`image`)return null;let a=i.attrs.wrapType,o=i.attrs.displayMode,s=i.attrs.cssFloat;return{wrapType:typeof a==`string`?a:`inline`,displayMode:typeof o==`string`?o:`inline`,cssFloat:typeof s==`string`?s:null}});function i(e,t){t(e.state,t=>e.dispatch(t),e)}function o(n){let r=e.editorView.value,a=t.value;if(!r||!a)return;let o=(0,_.toolbarValueToLayoutTarget)(n);if(!o)return;let s=r.state.doc.nodeAt(a.pmPos)?.attrs.wrapType===`inline`&&o!==`inline`?{initialPositionEmu:(0,_.captureInlinePositionEmu)(a.element,e.zoom.value)}:void 0,c=e.getCommands().setImageWrapType;c&&(i(r,c(a.pmPos,o,s)),r.focus())}function s(n){let r=e.editorView.value,i=t.value;if(!r||!i)return;let a=r.state.doc.nodeAt(i.pmPos);if(!a||a.type.name!==`image`)return;let o=a.attrs.transform,s=typeof o==`string`?o:``,c=/rotate\((?<deg>-?\d+(?:\.\d+)?)deg\)/u.exec(s)?.groups?.deg,l=c?Number.parseFloat(c):0,u=/scaleX\(-1\)/u.test(s),d=/scaleY\(-1\)/u.test(s);n===`rotateCW`?l=(l+90)%360:n===`rotateCCW`?l=(l-90+360)%360:n===`flipH`?u=!u:n===`flipV`&&(d=!d);let f=[];l!==0&&f.push(`rotate(${l}deg)`),u&&f.push(`scaleX(-1)`),d&&f.push(`scaleY(-1)`);let p=f.length>0?f.join(` `):null,m=r.state.tr.setNodeMarkup(i.pmPos,void 0,{...a.attrs,transform:p});r.dispatch(m.scrollIntoView()),r.focus()}return{selectedImage:t,imageInteracting:n,imageToolbarContext:r,handleToolbarImageWrap:o,handleImageTransform:s}}function on(e){function t(t){if(t.key===`F1`){t.preventDefault(),e.showKeyboardShortcuts.value=!0;return}if(e.handleZoomKeyDown(t),t.ctrlKey||t.metaKey){if(t.key===`o`){if(!e.showFileOpen?.()||!e.onOpenDocument)return;t.preventDefault(),e.onOpenDocument();return}e.disableFindReplaceShortcuts?.()&&(t.key===`f`||t.key===`h`)||(t.key===`f`||t.key===`h`?(t.preventDefault(),e.showFindReplace.value=!0):t.key===`k`?(t.preventDefault(),e.showHyperlink.value=!0):t.key===`/`&&(t.preventDefault(),e.showKeyboardShortcuts.value=!e.showKeyboardShortcuts.value))}}return(0,a.onMounted)(()=>window.addEventListener(`keydown`,t)),(0,a.onBeforeUnmount)(()=>window.removeEventListener(`keydown`,t)),{handleKeyDown:t}}function sn(e){function t(){let t=e.editorView.value;t&&(e.outlineHeadings.value=(0,V.collectHeadings)(t.state.doc))}function n(){e.showOutline.value||t(),e.showOutline.value=!e.showOutline.value}function r(){e.showOutline.value&&t()}function i(t){let n=e.editorView.value;if(!n)return;let r=n.state.doc.resolve(Math.min(t+1,n.state.doc.content.size)),i=h.TextSelection.near(r);n.dispatch(n.state.tr.setSelection(i)),e.scrollToVisiblePosition(t),n.focus()}function a(){e.showSidebar.value||e.extractCommentsAndChanges(),e.showSidebar.value=!e.showSidebar.value}function o(t){let n=t.target;n instanceof HTMLElement&&(n.closest(`.paged-editor__pages`)||n.closest(`.unified-sidebar`)||n.closest(`.docx-comment-margin-markers`)||(e.activeSidebarItem.value=null))}return{handleToggleOutline:n,handleOutlineNavigate:i,handleToggleSidebar:a,handleEditorScrollMouseDown:o,recomputeHeadingsIfOpen:r}}function cn(e){function t(t){let n=e.getDocument();if(!n?.package?.document)return;let r=n.package.document.finalSectionProperties??{};n.package.document.finalSectionProperties={...r,...t},e.stateTick.value++,e.reLayout(),e.onChange(n)}function n(n,r){e.readOnly.value||t({[n]:r})}function r(e){n(`marginLeft`,e)}function i(e){n(`marginRight`,e)}function a(e){n(`marginTop`,e)}function o(e){n(`marginBottom`,e)}function s(t){let n=e.editorView.value;n&&(0,R.setIndentLeft)(t)(n.state,n.dispatch)}function c(t){let n=e.editorView.value;n&&(0,R.setIndentRight)(t)(n.state,n.dispatch)}function l(t){let n=e.editorView.value;n&&(t<0?(0,R.setIndentFirstLine)(-t,!0)(n.state,n.dispatch):(0,R.setIndentFirstLine)(t,!1)(n.state,n.dispatch))}function u(t){let n=e.editorView.value;n&&(0,R.removeTabStop)(t)(n.state,n.dispatch)}return{handlePageSetupApply:t,handleLeftMarginChange:r,handleRightMarginChange:i,handleTopMarginChange:a,handleBottomMarginChange:o,handleIndentLeftChange:s,handleIndentRightChange:c,handleFirstLineIndentChange:l,handleTabStopRemove:u}}var ln=/[\p{L}\p{N}\p{M}_''-]/u,un=/\s/;function dn(e){return!e||e.length===0?!1:ln.test(e)}function fn(e){return!e||e.length===0?!1:un.test(e)}function pn(e,t){if(!e||e.length===0)return[0,0];t=Math.max(0,Math.min(t,e.length-1));let n=e[t];if(fn(n)){let n=t,r=t;for(;n>0&&fn(e[n-1]);)n--;for(;r<e.length&&fn(e[r]);)r++;return[n,r]}if(dn(n)){let n=t,r=t;for(;n>0&&dn(e[n-1]);)n--;for(;r<e.length&&dn(e[r]);)r++;return[n,r]}return[t,t+1]}function mn(e,t,n){let r=n?Array.from(e.querySelectorAll(`.layout-page-${n} span[data-pm-start][data-pm-end]`)):(0,x.findBodyPmSpans)(e);for(let e of r){let n=Number(e.dataset.pmStart),r=Number(e.dataset.pmEnd);if(!Number.isNaN(n)&&!Number.isNaN(r)&&t>=n&&t<=r)return e}return null}function hn(e,t,n){if(!e||!t)return;let r=(0,x.findBodyPmAnchor)(e,n);if(!r)for(let t of(0,x.findBodyPmSpans)(e)){let e=Number(t.dataset.pmStart),i=Number(t.dataset.pmEnd);if(Number.isFinite(e)&&Number.isFinite(i)&&n>=e&&n<=i){r=t;break}}if(!r)return;let i=t.getBoundingClientRect(),a=r.getBoundingClientRect();t.scrollTo({top:a.top-i.top+t.scrollTop-48,behavior:`smooth`})}function gn(e,t,n,r){if(!e||!t)return null;let i=(0,y.clickToPositionDom)(e,n,r,1);return i===null||i<0?null:Math.min(i,t.state.doc.content.size)}function _n(e,t,n,r){if(!e)return;let i=mn(e,t,r);if(!i)return;let a=i.textContent??``,o=Number(i.dataset.pmStart)||0,[s,c]=pn(a,t-o),l=o+s,u=o+c;l<u&&n(l,u)}function vn(e,t,n,r){if(!e)return;let i=mn(e,t,r);if(!i)return;let a=i.closest(`.layout-paragraph`);if(!a)return;let o=Number(a.dataset.pmStart),s=Number(a.dataset.pmEnd);!Number.isNaN(o)&&!Number.isNaN(s)&&o<s&&n(o,s)}var yn=500;function bn(e){let t=(0,a.ref)(null),n=null;function i(){n!==null&&(clearTimeout(n),n=null)}let o=(0,a.shallowRef)(null),s=0,c=null,l=0,u=!1,d=null,f=(0,ae.createCellDragTracker)(),p=r.i({pagesContainer:e.pagesRef,onScrollExtendSelection:(e,t)=>{if(!u||d===null)return;let n=v(e,t);n!==null&&n!==d&&b(d,n)}}),m=(0,a.ref)({currentPage:1,totalPages:1,visible:!1}),g=null;function v(t,n){return gn(e.pagesRef.value,e.editorView.value,t,n)}function y(){let t=o.value;if(t?.headerFooter&&e.getHfPmView){let n=e.getHfPmView(t.headerFooter);if(n)return n}return e.editorView.value}function b(e,t){let n=y();if(n)try{let r=n.state.doc.resolve(e),i=t===void 0?r:n.state.doc.resolve(t),a=h.TextSelection.between(r,i);n.dispatch(n.state.tr.setSelection(a))}catch{}}function x(t){hn(e.pagesRef.value,e.pagesViewportRef.value,t)}function S(t){_n(e.pagesRef.value,t,b,o.value?.position)}function ee(t){vn(e.pagesRef.value,t,b,o.value?.position)}function C(t){let n=e.editorView.value;if(!n)return;let r=null;if(n.state.doc.descendants((e,n)=>{if(r!==null)return!1;let i=e.attrs.bookmarks;if(Array.isArray(i)){let e=i;for(let i of e)if(typeof i==`object`&&i&&`name`in i&&i.name===t)return r=n,!1}return!0}),r!==null){x(r);try{b(Math.min(r+1,n.state.doc.content.size))}catch{b(r)}}}function w(r){if(e.readOnly.value||u)return;let a=e.pagesRef.value;if(!a)return;let s=e.pagesViewportRef.value;if(!s||!(r.target instanceof HTMLElement))return;let c=(0,ie.detectTableInsertHover)({mouseX:r.clientX,mouseY:r.clientY,pagesContainer:a,target:r.target,hfEditMode:o.value?.position??null});if(!c){n===null&&(n=setTimeout(()=>{t.value=null,n=null},ie.TABLE_INSERT_HIDE_DELAY_MS));return}let l=e.zoom.value||1,d=s.getBoundingClientRect();t.value={type:c.type,x:(c.clientX-d.left)/l,y:(c.clientY-d.top)/l,cellPmPos:c.cellPmPos},i()}function T(n){n.preventDefault(),n.stopPropagation();let r=t.value,i=e.editorView.value;if(!r||!i)return;let a=i.state.tr.setSelection(h.TextSelection.create(i.state.doc,r.cellPmPos+1));i.dispatch(a);let o=e.getCommands(),s=r.type===`row`?o.addRowBelow:o.addColumnRight;s&&(s()(i.state,e=>i.dispatch(e),i),t.value=null,i.focus())}function E(t){let n=t.target,r=n instanceof HTMLElement?n.closest(`a[href]`):null;if(!r)return;t.preventDefault();let i=r.getAttribute(`href`)??``;if(i.startsWith(`#`)){let e=i.slice(1);e&&C(e);return}let a=y();if(a&&a.state.selection.from!==a.state.selection.to)return;let o=e.pagesViewportRef.value;if(!o)return;let s=o.getBoundingClientRect(),c=r.getBoundingClientRect(),l=r.getAttribute(`title`);e.hyperlinkPopupData.value={href:i,displayText:r.textContent??``,position:{top:c.bottom-s.top+o.scrollTop+4,left:c.left-s.left+o.scrollLeft},...l?{tooltip:l}:{}}}function D(t){if(!(t.target instanceof HTMLElement))return;let n=t.target,r=n.closest(`.layout-page-header`),i=n.closest(`.layout-page-footer`),a=r??i;if(!a)return;let s=r?`header`:`footer`,c=e.getDocument();if(!c?.package)return;let l=c.package.document?.sections?.[0]?.properties??c.package.document?.finalSectionProperties??null,u=s===`header`?l?.headerReferences:l?.footerReferences,d=s===`header`?c.package.headers:c.package.footers,f=(u?.find(e=>e.type==="default")??u?.find(e=>e.type===`first`)??null)?.rId??null,p=f?d?.get(f)??null:null;if(!p){if(!l)return;let t=`default`,n=`rId_new_${s}_${t}`,r={type:s,hdrFtrType:t,content:[{type:`paragraph`,content:[]}]},i=s===`header`?`headers`:`footers`,a=s===`header`?`headerReferences`:`footerReferences`,o=new Map(c.package[i]??[]);o.set(n,r);let u=c.package.relationships,d=new Set;for(let e of u?.values()??[])e.target&&d.add(e.target);let m=1;for(;d.has(`${s}${m}.xml`);)m++;let h=s===`header`?`http://schemas.openxmlformats.org/officeDocument/2006/relationships/header`:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer`,g=new Map(u);g.set(n,{id:n,type:h,target:`${s}${m}.xml`});let _={type:t,rId:n},v={...l,[a]:[...l[a]??[],_]},y=c.package.document,b=y?.sections?.map((e,t)=>t===0?{...e,properties:v}:e),x=y?.finalSectionProperties===l?v:y?.finalSectionProperties,S={...c,package:{...c.package,[i]:o,relationships:g,document:y&&{...y,...b!==void 0&&{sections:b},...x!==void 0&&{finalSectionProperties:x}}}};f=n,p=r,e.setDocument?.(S),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,S)}let m=e.pagesViewportRef.value;if(!m)return;let h=a.getBoundingClientRect(),g=m.getBoundingClientRect(),_=e.zoom.value||1;o.value={position:s,rId:f,headerFooter:p,targetRect:{top:(h.top-g.top+m.scrollTop)/_,left:(h.left-g.left+m.scrollLeft)/_,width:h.width/_,height:h.height/_}}}function O(t){let n=e.getDocument(),r=o.value;if(!n?.package||!r)return;let i=r.position===`header`?n.package.headers:n.package.footers;if(!i||!r.rId)return;let a=i.get(r.rId);a&&(a.content=t),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,n)}function k(){let t=e.getDocument(),n=o.value;if(!t?.package||!n||!n.rId){o.value=null;return}let r=n.position===`header`?`headers`:`footers`,i=n.position===`header`?`headerReferences`:`footerReferences`,a=n.rId,s=new Map(t.package[r]??[]);s.delete(a);let c=e=>({...e,[i]:(e[i]??[]).filter(e=>e.rId!==a)}),l=e=>`sectionProperties`in e&&e.sectionProperties?{...e,sectionProperties:c(e.sectionProperties)}:e,u=t.package.document,d=u?.sections?.map(e=>({...e,properties:c(e.properties)})),f=u?.finalSectionProperties?c(u.finalSectionProperties):void 0,p={...t,package:{...t.package,[r]:s,document:u&&{...u,content:u.content.map(l),...d!==void 0&&{sections:d},...f!==void 0&&{finalSectionProperties:f}}}};o.value=null,e.setDocument?.(p),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,p)}function A(t){if(t.button!==0||e.imageInteracting.value)return;let n=e.editorView.value;if(!n)return;let r=t.target,i=r instanceof HTMLElement?r:null;o.value&&i&&(i.closest(`.layout-page-header`)||i.closest(`.layout-page-footer`)||i.closest(`.hf-editor`)||(o.value=null,n.focus()));let a=y()??n;if(!e.readOnly.value&&e.tableResize.tryStartResize(t,a))return;let p=(0,_.findImageElement)(r);if(p){t.preventDefault(),t.stopPropagation();let n=Number(p.dataset.pmStart);if(!Number.isNaN(n)){try{a.dispatch(a.state.tr.setSelection(h.NodeSelection.create(a.state.doc,n)))}catch{}e.selectedImage.value={element:p,pmPos:n,width:p.offsetWidth,height:p.offsetHeight},e.clearOverlay()}a.focus();return}e.selectedImage.value=null,t.preventDefault();let m=v(t.clientX,t.clientY);if(m===null){a.focus();return}let g=Date.now();if(g-s<yn&&c===m?l++:l=1,s=g,c=m,l===2)S(m);else if(l>=3)ee(m),l=0;else if(t.shiftKey){let{from:e}=a.state.selection;b(e,m)}else b(m),d=m,u=!0,f.begin((0,ae.findCellPosFromPmPos)(a,m));a.focus()}function j(e){if(!u||d===null)return;let t=v(e.clientX,e.clientY);if(t!==null){let n=y();if(n&&f.update(n,t,e.clientX)){p.updateMousePosition(e.clientX,e.clientY);return}t!==d&&b(d,t)}p.updateMousePosition(e.clientX,e.clientY)}function M(){u=!1,f.end(),p.stopAutoScroll()}function N(){let t=e.pagesViewportRef.value,n=e.layout.value;if(!t||!n||n.pages.length===0)return;let r=t.scrollTop,i=n.pages.length,a=r+t.clientHeight/2,o=24,s=1;for(let e=0;e<n.pages.length;e++){let t=n.pages[e];if(!t)continue;let r=o+t.size.h;if(a<r){s=e+1;break}o=r+24,s=e+2}s=Math.min(s,i),m.value={currentPage:s,totalPages:i,visible:!0},g&&clearTimeout(g),g=setTimeout(()=>{m.value={...m.value,visible:!1}},600)}return(0,a.onMounted)(()=>{window.addEventListener(`mousemove`,j),window.addEventListener(`mouseup`,M),e.pagesViewportRef.value?.addEventListener(`scroll`,N,{passive:!0})}),(0,a.onBeforeUnmount)(()=>{i(),window.removeEventListener(`mousemove`,j),window.removeEventListener(`mouseup`,M),e.pagesViewportRef.value?.removeEventListener(`scroll`,N),g&&clearTimeout(g)}),{tableInsertButton:t,hfEdit:o,scrollPageInfo:m,resolvePos:v,setPmSelection:b,scrollVisiblePositionIntoView:x,navigateToBookmark:C,handlePagesMouseDown:A,handlePagesMouseMove:w,handlePagesClick:E,handlePagesDoubleClick:D,handleTableInsertClick:T,clearTableInsertTimer:i,handleHfSave:O,handleHfRemove:k}}function xn(e){return typeof e==`string`&&e.trim().length>0}function Sn(e){return typeof e!=`object`||!e?!1:xn(Reflect.get(e,`family`))&&xn(Reflect.get(e,`src`))}function Cn(e){if(!e)return[];let t=[];for(let n of e){if(!Sn(n))continue;let e={display:`swap`};(typeof n.weight==`number`||typeof n.weight==`string`)&&(e.weight=String(n.weight)),t.push({family:n.family.trim(),source:`url(${JSON.stringify(n.src.trim())})`,descriptors:e})}return t}function wn(){return typeof document>`u`||!(`fonts`in document)?null:document.fonts}async function Tn(e,t,n,r){let i;try{i=new FontFace(t,n,r),e.add(i)}catch{return null}return await i.load().then(()=>!0,()=>!1)?i:(e.delete(i),null)}async function En(e){let t=wn();if(!t)return[];let n=Cn(e);if(n.length===0)return[];let r=[];return await Promise.all(n.map(async({family:e,source:n,descriptors:i})=>{let a=await Tn(t,e,n,i);a&&r.push(a)})),r}function Dn(e){let t=wn();if(t)for(let n of e)t.delete(n)}var On={class:`docx-editor-vue__toolbar-shell`},kn={key:0,class:`docx-editor-vue__error`},An={key:1,class:`docx-editor-vue__loading`},jn={key:2,class:`docx-editor-vue__placeholder`},Mn={class:`docx-editor-vue__editor-area`},Nn={key:0,class:`docx-editor-vue__ruler-h`},Pn={key:1,class:`docx-editor-vue__ruler-v`},Fn={class:`docx-editor-vue__editor-content-wrapper`,style:{position:`relative`,display:`flex`,flexDirection:`column`,minHeight:`100%`}},In={"data-testid":`selection-overlay`,class:`docx-editor-vue__decoration-origin`,"aria-hidden":`true`},Ln=[`aria-label`],Rn=(0,a.defineComponent)({__name:`DocxEditor`,props:{documentBuffer:{default:null},password:{},document:{default:null},documentKey:{},onSave:{},author:{default:`User`},onChange:{},onSelectionChange:{},onSelectionTextChange:{},onError:{},onFontsLoaded:{},fontFamilies:{},fonts:{},theme:{},showToolbar:{type:Boolean,default:!0},showZoomControl:{type:Boolean,default:!0},showReviewControls:{type:Boolean,default:!0},showHeaderFooterEditing:{type:Boolean},showMarginGuides:{type:Boolean},marginGuideColor:{},showRuler:{type:Boolean},rulerUnit:{},initialZoom:{default:1},enableWheelZoom:{type:Boolean},readOnly:{type:Boolean,default:!1},autoOpenReviewSidebar:{type:Boolean},components:{},toolbarExtra:{type:[Object,String,Number,Boolean,null,Array]},className:{default:``},style:{},placeholder:{type:[Object,String,Number,Boolean,null,Array]},loadingIndicator:{type:[Object,String,Number,Boolean,null,Array]},preserveDocumentWhileLoading:{type:Boolean},initialScrollTop:{},onScrollTopChange:{},showOutline:{type:Boolean,default:!1},showPrintButton:{type:Boolean},onPrint:{},onInsertImage:{},onInsertTable:{},showTableInsert:{type:Boolean,default:!0},onInsertPageBreak:{},onInsertTOC:{},onCopy:{},onCut:{},onPaste:{},mode:{default:`editing`},onModeChange:{},onReadonlyEditAttempt:{},comments:{},onCommentsChange:{},onCompatibilityChange:{},onEditorViewReady:{},collaboration:{},onAnonymizationMatchesChange:{},onAnonymizationTermClick:{},selectedAnonymizationCanonical:{},anonymizationSelectionSeq:{},showTemplateDirectives:{type:Boolean},onSlashMenuChange:{},onSlashMenuKeyAction:{},customContextMenuItems:{},onCustomContextAction:{},featureFlags:{},onSelectiveSaveTripwire:{}},emits:[`change`,`update:document`,`error`,`ready`,`rename`,`menu-action`,`mode-change`,`comments-change`],setup(n,{expose:i,emit:f}){let p=n,m=f;e.A(),e._(p.components),De((0,a.ref)(!1));let h=(0,a.ref)(p.mode),g=(0,a.computed)(()=>p.readOnly||h.value===`viewing`),_=(0,a.computed)(()=>p.showReviewControls),y=(0,a.computed)(()=>(0,v.isTrackChangesMode)(h.value)),b=(0,a.ref)(`all-markup`);function x(){It((0,v.toggledTrackChangesMode)(h.value))}function S(e){b.value=e}let ee=(0,a.computed)(()=>b.value===`all-markup`?``:`folio-root--${b.value}`),{t:C}=e.j(),w=({node:e})=>e;w.props=[`node`];let T=(0,a.computed)(()=>p.documentBuffer!=null||p.document!=null),E=(0,a.ref)(!1);(0,a.watch)(T,e=>{e||(E.value=!1)});let D=(0,a.ref)(null),O=(0,a.ref)(null),k=(0,a.ref)(null),A=(0,a.ref)(null),j=(0,a.computed)(()=>p.showRuler??!1),M=(0,a.ref)(0),N=(0,a.ref)(!1),P=(0,a.ref)(!1),F=(0,a.ref)(!1),I=(0,a.ref)(!1),L=(0,a.ref)(!1),te=(0,a.ref)(!1),R=(0,a.ref)(p.showOutline),z=(0,a.ref)(!1),ne=(0,a.ref)(null),re=(0,a.shallowRef)([]),B=(0,a.shallowRef)([]),{zoom:V,zoomPercent:ie,isMinZoom:ae,isMaxZoom:oe,setZoom:H,zoomIn:U,zoomOut:se,handleWheel:ce,handleKeyDown:le,ZOOM_PRESETS:ue}=r.t(p.initialZoom);function de(e){p.enableWheelZoom!==!1&&ce(e)}on({showKeyboardShortcuts:F,showFindReplace:N,showHyperlink:P,handleZoomKeyDown:le});let{editor:W,editorView:G,editorState:fe,isReady:K,isDirty:q,parseError:pe,layout:me,blocks:he,measures:_e,loadBuffer:ve,loadDocument:ye,save:be,getDocument:J,getCommands:Y,focus:Ce,reLayout:we}=r.a({hiddenContainer:D,pagesContainer:O,readOnly:g,editorMode:h,author:()=>p.author,password:()=>p.password,documentKey:()=>p.documentKey,externalPlugins:[],onAnonymizationMatchesChange:e=>p.onAnonymizationMatchesChange?.(e),showTemplateDirectives:()=>p.showTemplateDirectives,onSlashMenuChange:e=>p.onSlashMenuChange?.(e),onSlashMenuKeyAction:e=>p.onSlashMenuKeyAction?.(e)??!1,onChange:e=>{p.onChange?.(e),m(`change`,e),m(`update:document`,e)},onError:e=>{p.onError?.(e),m(`error`,e)},onSelectionUpdate:e=>{if(p.onSelectionChange?.((0,o.extractSelectionState)(e)),p.onSelectionTextChange){let{from:t,to:n}=e.selection,r=t===n?``:e.doc.textBetween(t,n,` `,` `);p.onSelectionTextChange({from:t,to:n,text:r})}},onEditorViewReady:e=>p.onEditorViewReady?.(e),onReadOnlyEditAttempt:()=>p.onReadonlyEditAttempt?.(),featureFlags:()=>p.featureFlags,onSelectiveSaveTripwire:p.onSelectiveSaveTripwire?e=>p.onSelectiveSaveTripwire?.(e):void 0}),Ee=(0,a.computed)(()=>!K.value&&T.value&&!(p.preserveDocumentWhileLoading===!0&&E.value));function Oe(){G.value&&((0,l.resetCanvasContext)(),(0,l.clearAllCaches)(),we())}(0,a.watch)(()=>p.fonts,(e,t,n)=>{if(!e||e.length===0)return;let r=!1,i=[];En(e).then(e=>{if(r){Dn(e);return}i=e,e.length!==0&&Oe()}),n(()=>{r=!0,i.length!==0&&(Dn(i),Oe())})},{immediate:!0});let{selectedImage:X,imageInteracting:ke,imageToolbarContext:Ae,handleToolbarImageWrap:je,handleImageTransform:Me}=an({editorView:G,zoom:V,stateTick:M,getCommands:Y}),{hyperlinkPopupData:Ne,handleHyperlinkSubmit:Pe,handleHyperlinkRemove:Fe,handleHyperlinkPopupNavigate:Ie,handleHyperlinkPopupEdit:Le,handleHyperlinkPopupRemove:Re}=rn({editorView:G,getCommands:Y}),ze=r.r(),{tableInsertButton:Be,scrollPageInfo:Ve,resolvePos:He,setPmSelection:Ue,scrollVisiblePositionIntoView:We,handlePagesMouseDown:Ge,handlePagesMouseMove:Ke,handlePagesClick:qe,handleTableInsertClick:Je}=bn({editorView:G,pagesRef:O,pagesViewportRef:k,selectedImage:X,imageInteracting:ke,hyperlinkPopupData:Ne,readOnly:g,zoom:V,layout:me,tableResize:{tryStartResize:ze.tryStartResize,isResizing:(0,a.computed)(()=>ze.isResizing())},getCommands:Y,getDocument:J,reLayout:we,emit:()=>{},clearOverlay:()=>{}}),Z=sn({editorView:G,showOutline:R,showSidebar:z,outlineHeadings:B,activeSidebarItem:ne,extractCommentsAndChanges:()=>{},scrollToVisiblePosition:We}),{contextMenu:Ye,imageContextMenu:Xe,imageContextMenuTextActions:Ze,customTextMenuItems:Qe,handleContextMenu:et,handleSelectedImageContextMenu:tt,handleImageWrapSelect:nt,handleContextMenuAction:rt}=Qt({editorView:G,selectedImage:X,zoom:V,showImageProperties:L,getCommands:Y,clearOverlay:()=>{},setPmSelection:Ue,resolvePos:He,customContextMenuItems:()=>g.value?void 0:p.customContextMenuItems,onCustomContextAction:(e,t)=>p.onCustomContextAction?.(e,t)}),it=r.n(G,M),at=(0,a.computed)(()=>it.value.entries),Q=Bt({editorView:G,getDocument:J,author:()=>p.author,commentsProp:()=>p.comments,onCommentsChange:e=>{p.onCommentsChange?.(e),m(`comments-change`,e)},reLayout:we}),ot=Q.comments,$=zt({editorView:G,pagesViewport:k,pagesContainer:O,readOnly:g,createComment:Q.createComment,pushComment:Q.pushComment,reLayout:we,showSidebar:z,setActiveSidebarItem:e=>{ne.value=e}});function st(e){navigator.clipboard?.writeText(e),Ne.value=null}let lt=(0,a.computed)(()=>{M.value;let e=J()?.package.document;return e?e.finalSectionProperties??e.sections?.[0]?.properties??null:null}),dt=(0,a.computed)(()=>{M.value;let e={};p.fontFamilies!==void 0&&(e.fontFamilies=p.fontFamilies);let t=J()?.package.styles?.styles;return t!==void 0&&(e.documentStyles=t),e}),pt=(0,a.computed)(()=>(0,d.twipsToPixels)(lt.value?.pageWidth??12240)*V.value),mt=(0,a.computed)(()=>{let e=new Set;for(let t of ot.value)t.done&&e.add(t.id);return e}),ht=(0,a.computed)(()=>({transform:V.value===1?void 0:`scale(${V.value})`,transformOrigin:`top center`,transition:`transform 0.2s ease`})),{handleApplyStyle:gt,handleInsertSymbol:_t,handleInsertSectionBreakNextPage:vt,handleInsertSectionBreakContinuous:yt}=nn({editorView:G,getDocument:J});function bt(){if(p.onInsertImage){p.onInsertImage();return}let e=G.value;if(!e)return;let t=document.createElement(`input`);t.type=`file`,t.accept=`image/*`,t.style.display=`none`,t.addEventListener(`change`,()=>{let n=t.files?.[0];n&&(0,o.insertImageFromFile)(e,n,()=>e.focus()),t.remove()}),document.body.appendChild(t),t.click()}function St(e,t){if(p.onInsertTable){p.onInsertTable(e,t);return}let n=G.value;n&&((0,o.insertTableInView)(n,e,t),n.focus())}function Ct(){if(p.onInsertPageBreak){p.onInsertPageBreak();return}let e=G.value;e&&((0,o.insertPageBreakInView)(e),e.focus())}function wt(){if(p.onInsertTOC){p.onInsertTOC();return}let e=G.value;e&&((0,o.insertTableOfContentsInView)(e),e.focus())}let{handlePageSetupApply:Tt,handleLeftMarginChange:Et,handleRightMarginChange:Dt,handleTopMarginChange:Ot,handleBottomMarginChange:kt,handleIndentLeftChange:At,handleIndentRightChange:jt,handleFirstLineIndentChange:Nt,handleTabStopRemove:Pt}=cn({editorView:G,getDocument:J,readOnly:g,stateTick:M,reLayout:we,onChange:e=>{p.onChange?.(e),m(`change`,e),m(`update:document`,e)}}),Ft=(0,a.computed)(()=>{M.value;let e=G.value,t=e?(0,s.extractSelectionContext)(e.state).paragraphFormatting:{};return{indentLeft:t.indentLeft??0,indentRight:t.indentRight??0,firstLineIndent:t.indentFirstLine??0,hangingIndent:t.hangingIndent??!1,tabs:t.tabs??null}});function It(e){h.value!==e&&(h.value=e,p.onModeChange?.(e),m(`mode-change`,e))}function Lt(e){switch(e){case`find`:case`findReplace`:N.value=!0;break;case`insertSymbol`:I.value=!0;break;case`insertHyperlink`:P.value=!0;break;case`pageSetup`:te.value=!0;break;case`toggleOutline`:Z.handleToggleOutline();break;case`toggleSidebar`:z.value=!z.value;break;case`insertImage`:bt();break;case`insertPageBreak`:Ct();break;case`insertSectionBreakNextPage`:vt();break;case`insertSectionBreakContinuous`:yt();break;case`insertTOC`:wt();break;default:break}m(`menu-action`,e)}function Rt(e,t){St(e,t)}let Vt=(0,a.ref)(!1);$t({documentBuffer:()=>p.documentBuffer??null,document:()=>p.document??null,loadDocumentBuffer:ve,loadDocument:ye,sidebarAutoOpenedRef:Vt}),(0,a.watch)(()=>p.mode,e=>{e&&e!==h.value&&(h.value=e)}),(0,a.watch)(()=>p.showOutline,e=>{R.value=!!e,Z.recomputeHeadingsIfOpen()});let Ht=(0,a.ref)(!1);function Ut(e){let t=e.currentTarget;t instanceof HTMLElement&&p.onScrollTopChange?.(t.scrollTop)}function Wt(){if(p.initialScrollTop===void 0||Ht.value)return;Ht.value=!0;let e=p.initialScrollTop;requestAnimationFrame(()=>{A.value&&(A.value.scrollTop=e)})}(0,a.watch)(K,e=>{if(!e){Ht.value=!1;return}E.value=!0,Z.recomputeHeadingsIfOpen(),Q.seedFromDocument();let t=J();t&&p.onCompatibilityChange?.((0,c.inspectDocxCompatibility)(t)),p.autoOpenReviewSidebar!==!1&&!Vt.value&&(ot.value.length>0||at.value.length>0)&&(Vt.value=!0,z.value=!0),Wt(),m(`ready`)}),(0,a.onMounted)(()=>{let e=W.on(`selectionChange`,()=>{M.value++,$.updateFloatingButton()}),t=W.on(`docChange`,()=>{M.value++,Z.recomputeHeadingsIfOpen()}),n=W.on(`layoutComplete`,()=>{M.value++}),r=ze.install(),i=(0,u.onFontsLoaded)(()=>p.onFontsLoaded?.());(0,a.onBeforeUnmount)(()=>{e(),t(),n(),r(),i()})});let{exposed:Gt}=tn({editor:W,editorView:G,isDirty:q,commentsDirty:Q.commentsDirty,clearCommentsDirty:Q.clearCommentsDirty,layout:me,pagesRef:O,pagesViewportRef:k,zoom:V,scrollVisiblePositionIntoView:We,author:()=>p.author,createAIEditComment:e=>{let t=Q.createComment(e);return Q.pushComment(t),t.id},getComments:()=>Q.comments.value,setComments:Q.setComments,focus:Ce,getDocument:J,setZoom:H,save:be,loadDocument:ye,loadDocumentBuffer:ve,onPrint:p.onPrint,onSave:p.onSave});return i(Gt),(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)([`docx-editor-vue ep-root paged-editor`,n.className,ee.value,{"paged-editor--readonly":g.value}]),style:(0,a.normalizeStyle)(n.style)},[(0,a.createElementVNode)(`div`,On,[(0,a.createVNode)(Te,{"show-table-insert":p.showTableInsert!==!1,onRename:i[0]||=e=>m(`rename`,e),onMenuAction:Lt,onInsertTable:Rt},{"title-bar-left":(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`title-bar-left`,{},void 0,!0)]),"title-bar-right":(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`title-bar-right`,{},void 0,!0)]),_:3},8,[`show-table-insert`]),n.showToolbar?((0,a.openBlock)(),(0,a.createBlock)(t.y,(0,a.mergeProps)({key:0,view:(0,a.unref)(G),"get-commands":(0,a.unref)(Y),"state-tick":M.value,"zoom-percent":(0,a.unref)(ie),"is-min-zoom":(0,a.unref)(ae),"is-max-zoom":(0,a.unref)(oe),"zoom-presets":(0,a.unref)(ue),"show-zoom-control":n.showZoomControl,"editor-mode":h.value,"show-review-controls":_.value,"track-changes-on":y.value,"display-mode":b.value,"read-only":g.value,"comments-sidebar-open":z.value,"image-context":(0,a.unref)(Ae),theme:n.theme??null},dt.value,{onFindReplace:i[1]||=e=>N.value=!0,onInsertLink:i[2]||=e=>P.value=!0,onInsertSymbol:i[3]||=e=>I.value=!0,onInsertPageBreak:Ct,onPageSetup:i[4]||=e=>te.value=!0,onToggleOutline:(0,a.unref)(Z).handleToggleOutline,onApplyStyle:(0,a.unref)(gt),onZoomIn:(0,a.unref)(U),onZoomOut:(0,a.unref)(se),onZoomSet:(0,a.unref)(H),onToggleSidebar:i[5]||=e=>z.value=!z.value,onModeChange:It,onToggleTrackChanges:x,"onUpdate:displayMode":S,onImageProperties:i[6]||=e=>L.value=!0,onImageWrapType:(0,a.unref)(je),onImageTransform:(0,a.unref)(Me)}),(0,a.createSlots)({"table-context":(0,a.withCtx)(()=>[(0,a.createVNode)(t.f,{view:(0,a.unref)(G),"get-commands":(0,a.unref)(Y),"state-tick":M.value,theme:n.theme??null},null,8,[`view`,`get-commands`,`state-tick`,`theme`])]),_:2},[r.$slots[`toolbar-extra`]||n.toolbarExtra?{name:`toolbar-extra`,fn:(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`toolbar-extra`,{},()=>[n.toolbarExtra?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.toolbarExtra},null,8,[`node`])):(0,a.createCommentVNode)(``,!0)],!0)]),key:`0`}:void 0]),1040,[`view`,`get-commands`,`state-tick`,`zoom-percent`,`is-min-zoom`,`is-max-zoom`,`zoom-presets`,`show-zoom-control`,`editor-mode`,`show-review-controls`,`track-changes-on`,`display-mode`,`read-only`,`comments-sidebar-open`,`image-context`,`theme`,`onToggleOutline`,`onApplyStyle`,`onZoomIn`,`onZoomOut`,`onZoomSet`,`onImageWrapType`,`onImageTransform`])):(0,a.createCommentVNode)(``,!0)]),(0,a.createVNode)(Se,{"show-find-replace":N.value,"onUpdate:showFindReplace":i[7]||=e=>N.value=e,"show-hyperlink":P.value,"onUpdate:showHyperlink":i[8]||=e=>P.value=e,"show-insert-symbol":I.value,"onUpdate:showInsertSymbol":i[9]||=e=>I.value=e,"show-image-properties":L.value,"onUpdate:showImageProperties":i[10]||=e=>L.value=e,"show-page-setup":te.value,"onUpdate:showPageSetup":i[11]||=e=>te.value=e,view:(0,a.unref)(G),bookmarks:re.value,"selected-image-pm-pos":(0,a.unref)(X)?.pmPos??null,"section-properties":lt.value,onInsertSymbol:(0,a.unref)(_t),onHyperlinkSubmit:(0,a.unref)(Pe),onHyperlinkRemove:(0,a.unref)(Fe),onPageSetupApply:(0,a.unref)(Tt)},null,8,[`show-find-replace`,`show-hyperlink`,`show-insert-symbol`,`show-image-properties`,`show-page-setup`,`view`,`bookmarks`,`selected-image-pm-pos`,`section-properties`,`onInsertSymbol`,`onHyperlinkSubmit`,`onHyperlinkRemove`,`onPageSetupApply`]),(0,a.unref)(pe)?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,kn,(0,a.toDisplayString)((0,a.unref)(pe)),1)):Ee.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,An,[(0,a.renderSlot)(r.$slots,`loading-indicator`,{},()=>[n.loadingIndicator?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.loadingIndicator},null,8,[`node`])):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)((0,a.toDisplayString)((0,a.unref)(C)(`loadingDocument`)),1)],64))],!0)])):!(0,a.unref)(K)&&!T.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,jn,[(0,a.renderSlot)(r.$slots,`placeholder`,{},()=>[n.placeholder?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.placeholder},null,8,[`node`])):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)(`No document loaded`)],64))],!0)])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{ref_key:`hiddenPmRef`,ref:D,class:`docx-editor-vue__hidden-pm paged-editor__hidden-pm`},null,512),(0,a.createElementVNode)(`div`,{ref_key:`editorScrollRef`,ref:A,class:`docx-editor-vue__editor-scroll`,onScroll:Ut},[(0,a.createElementVNode)(`div`,Mn,[j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Nn,[(0,a.createVNode)(t.v,{"section-props":lt.value,zoom:(0,a.unref)(V),unit:n.rulerUnit??`inch`,editable:!g.value,"indent-left":Ft.value.indentLeft,"indent-right":Ft.value.indentRight,"first-line-indent":Ft.value.firstLineIndent,"hanging-indent":Ft.value.hangingIndent,"show-first-line-indent":!0,"tab-stops":Ft.value.tabs,onLeftMarginChange:(0,a.unref)(Et),onRightMarginChange:(0,a.unref)(Dt),onIndentLeftChange:(0,a.unref)(At),onIndentRightChange:(0,a.unref)(jt),onFirstLineIndentChange:(0,a.unref)(Nt),onTabStopRemove:(0,a.unref)(Pt)},null,8,[`section-props`,`zoom`,`unit`,`editable`,`indent-left`,`indent-right`,`first-line-indent`,`hanging-indent`,`tab-stops`,`onLeftMarginChange`,`onRightMarginChange`,`onIndentLeftChange`,`onIndentRightChange`,`onFirstLineIndentChange`,`onTabStopRemove`])])):(0,a.createCommentVNode)(``,!0),j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Pn,[(0,a.createVNode)(t.d,{"section-props":lt.value,zoom:(0,a.unref)(V),unit:n.rulerUnit??`inch`,editable:!g.value,onTopMarginChange:(0,a.unref)(Ot),onBottomMarginChange:(0,a.unref)(kt)},null,8,[`section-props`,`zoom`,`unit`,`editable`,`onTopMarginChange`,`onBottomMarginChange`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{ref_key:`pagesViewportRef`,ref:k,class:`docx-editor-vue__pages-viewport`,onWheel:de,onMousedown:i[20]||=(...e)=>(0,a.unref)(Ge)&&(0,a.unref)(Ge)(...e),onMousemove:i[21]||=(...e)=>(0,a.unref)(Ke)&&(0,a.unref)(Ke)(...e),onClick:i[22]||=(...e)=>(0,a.unref)(qe)&&(0,a.unref)(qe)(...e),onContextmenu:i[23]||=(0,a.withModifiers)((...e)=>(0,a.unref)(et)&&(0,a.unref)(et)(...e),[`prevent`])},[(0,a.createElementVNode)(`div`,Fn,[(0,a.createElementVNode)(`div`,{ref_key:`pagesRef`,ref:O,class:`docx-editor-vue__pages paged-editor__pages`,style:(0,a.normalizeStyle)(ht.value)},null,4),(0,a.createElementVNode)(`div`,In,[(0,a.createVNode)(ge,{"get-view":()=>(0,a.unref)(G),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(fe),zoom:(0,a.unref)(V),layout:(0,a.unref)(me),blocks:(0,a.unref)(he),measures:(0,a.unref)(_e),"on-term-click":p.onAnonymizationTermClick,"selected-canonical":p.selectedAnonymizationCanonical,"selection-seq":p.anonymizationSelectionSeq},null,8,[`get-view`,`get-pages-container`,`editor-state`,`zoom`,`layout`,`blocks`,`measures`,`on-term-click`,`selected-canonical`,`selection-seq`]),p.showTemplateDirectives?((0,a.openBlock)(),(0,a.createBlock)(xt,{key:0,"get-view":()=>(0,a.unref)(G),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(fe),zoom:(0,a.unref)(V),layout:(0,a.unref)(me),blocks:(0,a.unref)(he),measures:(0,a.unref)(_e)},null,8,[`get-view`,`get-pages-container`,`editor-state`,`zoom`,`layout`,`blocks`,`measures`])):(0,a.createCommentVNode)(``,!0)])]),(0,a.createVNode)(ct,{"image-info":(0,a.unref)(X),zoom:(0,a.unref)(V),view:(0,a.unref)(G),onDeselect:i[12]||=e=>X.value=null,onInteractStart:i[13]||=e=>ke.value=!0,onInteractEnd:i[14]||=e=>ke.value=!1,onContextMenu:(0,a.unref)(tt)},null,8,[`image-info`,`zoom`,`view`,`onContextMenu`]),(0,a.createVNode)(Mt,{data:(0,a.unref)(Ne),"read-only":g.value,onNavigate:(0,a.unref)(Ie),onCopy:st,onEdit:(0,a.unref)(Le),onRemove:(0,a.unref)(Re),onClose:i[15]||=e=>Ne.value=null},null,8,[`data`,`read-only`,`onNavigate`,`onEdit`,`onRemove`]),(0,a.unref)(Be)?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,type:`button`,class:`docx-editor-vue__table-insert-btn`,style:(0,a.normalizeStyle)({left:(0,a.unref)(Be).x+`px`,top:(0,a.unref)(Be).y+`px`}),"aria-label":(0,a.unref)(Be).type===`row`?`Insert row`:`Insert column`,onMousedown:i[16]||=(...e)=>(0,a.unref)(Je)&&(0,a.unref)(Je)(...e)},` + `,44,Ln)):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(t.D,{comments:(0,a.unref)(ot),"pages-container":O.value,zoom:(0,a.unref)(V),"page-width-px":pt.value,"sidebar-open":z.value,"resolved-comment-ids":mt.value,onMarkerClick:()=>{}},null,8,[`comments`,`pages-container`,`zoom`,`page-width-px`,`sidebar-open`,`resolved-comment-ids`]),(0,a.createVNode)(t.i,{"is-open":z.value,comments:(0,a.unref)(ot),"tracked-changes":at.value,"show-resolved":!0,"is-adding-comment":(0,a.unref)($).isAddingComment.value,"add-comment-y-position":(0,a.unref)($).addCommentYPosition.value,"pages-container":O.value,"page-width-px":pt.value,zoom:(0,a.unref)(V),"active-item-id":ne.value,onClose:i[17]||=e=>z.value=!1,"onUpdate:activeItemId":i[18]||=e=>ne.value=e,onAddComment:(0,a.unref)($).handleAddComment,onCancelAddComment:(0,a.unref)($).handleCancelAddComment,onCommentReply:(0,a.unref)(Q).handleReply,onCommentResolve:(0,a.unref)(Q).handleResolve,onCommentUnresolve:(0,a.unref)(Q).handleUnresolve,onCommentDelete:(0,a.unref)(Q).handleDelete,onAcceptChange:(0,a.unref)(Q).handleAcceptChange,onRejectChange:(0,a.unref)(Q).handleRejectChange,onAcceptChangeById:(0,a.unref)(Q).handleAcceptChangeById,onRejectChangeById:(0,a.unref)(Q).handleRejectChangeById,onTrackedChangeReply:(0,a.unref)(Q).handleTrackedChangeReply},null,8,[`is-open`,`comments`,`tracked-changes`,`is-adding-comment`,`add-comment-y-position`,`pages-container`,`page-width-px`,`zoom`,`active-item-id`,`onAddComment`,`onCancelAddComment`,`onCommentReply`,`onCommentResolve`,`onCommentUnresolve`,`onCommentDelete`,`onAcceptChange`,`onRejectChange`,`onAcceptChangeById`,`onRejectChangeById`,`onTrackedChangeReply`]),(0,a.unref)($).floatingCommentButton.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:1,type:`button`,class:`docx-editor-vue__add-comment-btn`,style:(0,a.normalizeStyle)({top:(0,a.unref)($).floatingCommentButton.value.top+`px`,left:(0,a.unref)($).floatingCommentButton.value.left+`px`}),"aria-label":`Add comment`,title:`Add comment`,onMousedown:i[19]||=(0,a.withModifiers)((...e)=>(0,a.unref)($).startAddComment&&(0,a.unref)($).startAddComment(...e),[`prevent`,`stop`])},[(0,a.createVNode)(e.P,{name:`add_comment`,size:18})],36)):(0,a.createCommentVNode)(``,!0)],544),R.value?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createBlock)(ut,{key:2,"left-offset":12,onToggle:(0,a.unref)(Z).handleToggleOutline},null,8,[`onToggle`])),(0,a.unref)(Ve).totalPages>1?((0,a.openBlock)(),(0,a.createBlock)(ft,{key:3,"current-page":(0,a.unref)(Ve).currentPage,"total-pages":(0,a.unref)(Ve).totalPages,visible:(0,a.unref)(Ve).visible},null,8,[`current-page`,`total-pages`,`visible`])):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(xe,{"is-open":R.value,headings:B.value,"get-scroll-container":()=>O.value,onClose:i[24]||=e=>R.value=!1,onNavigate:(0,a.unref)(Z).handleOutlineNavigate},null,8,[`is-open`,`headings`,`get-scroll-container`,`onNavigate`])])],544),(0,a.createVNode)($e,{"read-only":g.value,"context-menu":(0,a.unref)(Ye),"image-context-menu":(0,a.unref)(Xe),"image-context-menu-text-actions":(0,a.unref)(Ze),"custom-text-menu-items":(0,a.unref)(Qe),"can-open-image-properties":(0,a.unref)(X)!==null,onContextMenuAction:(0,a.unref)(rt),onCloseContextMenu:i[25]||=e=>(0,a.unref)(Ye).isOpen=!1,onImageWrapSelect:(0,a.unref)(nt),onCloseImageContextMenu:i[26]||=e=>Xe.value=null,onOpenImageProperties:i[27]||=e=>L.value=!0},null,8,[`read-only`,`context-menu`,`image-context-menu`,`image-context-menu-text-actions`,`custom-text-menu-items`,`can-open-image-properties`,`onContextMenuAction`,`onImageWrapSelect`])],6))}}),zn=e.F(Rn,[[`__scopeId`,`data-v-69ec23e0`]]);function Bn(){return{type:`none`,level:0,isInList:!1}}var Vn=[`aria-label`],Hn=[`aria-label`],Un=[`disabled`,`title`,`aria-label`],Wn=[`disabled`,`title`,`aria-label`],Gn=[`aria-label`],Kn=[`disabled`,`title`,`aria-label`,`aria-pressed`],qn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Jn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Yn=(0,a.defineComponent)({__name:`FormattingBar`,props:{currentFormatting:{},disabled:{type:Boolean,default:!1},canUndo:{type:Boolean,default:!1},canRedo:{type:Boolean,default:!1},className:{},showStylePicker:{type:Boolean,default:!0},showTextColorPicker:{type:Boolean,default:!0},showAlignmentButtons:{type:Boolean,default:!0},showListButtons:{type:Boolean,default:!0},documentStyles:{},theme:{}},emits:[`format`,`undo`,`redo`],setup(n,{emit:r}){let{ColorPicker:i}=e.y(),o=n,s=r,{t:c}=e.j(),l=(0,a.computed)(()=>o.currentFormatting??{}),u=(0,a.computed)(()=>o.documentStyles?{styles:o.documentStyles}:{}),d=(0,a.computed)(()=>l.value.listState??Bn()),f=(0,a.computed)(()=>{let e=l.value.color;return e?e.replace(/^#/,``).toUpperCase():void 0}),p=(0,a.computed)(()=>{let e=d.value;return e.isInList&&e.level>0||(l.value.indentLeft??0)>0});function m(e){s(`format`,{type:`textColor`,value:e})}return(r,o)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)([`docx-formatting-bar`,n.className]),role:`toolbar`,"aria-label":(0,a.unref)(c)(`formattingToolbar`),"data-folio-toolbar":`true`},[(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__group`,role:`group`,"aria-label":(0,a.unref)(c)(`historyGroup`)},[(0,a.createElementVNode)(`button`,{type:`button`,class:`docx-formatting-bar__btn`,disabled:n.disabled||!n.canUndo,title:(0,a.unref)(c)(`undoShortcut`),"aria-label":(0,a.unref)(c)(`undo`),onMousedown:o[0]||=(0,a.withModifiers)(e=>s(`undo`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`undo`,size:18})],40,Un),(0,a.createElementVNode)(`button`,{type:`button`,class:`docx-formatting-bar__btn`,disabled:n.disabled||!n.canRedo,title:(0,a.unref)(c)(`redoShortcut`),"aria-label":(0,a.unref)(c)(`redo`),onMousedown:o[1]||=(0,a.withModifiers)(e=>s(`redo`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`redo`,size:18})],40,Wn)],8,Hn),o[13]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),n.showStylePicker?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[(0,a.createVNode)(t.r,(0,a.mergeProps)({value:l.value.styleId??`Normal`},u.value,{disabled:n.disabled,onChange:o[2]||=e=>s(`format`,{type:`applyStyle`,value:e})}),null,16,[`value`,`disabled`]),o[11]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1)],64)):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__group`,role:`group`,"aria-label":(0,a.unref)(c)(`textFormattingGroup`)},[(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.bold}]),disabled:n.disabled,title:(0,a.unref)(c)(`boldShortcut`),"aria-label":(0,a.unref)(c)(`bold`),"aria-pressed":!!l.value.bold,onMousedown:o[3]||=(0,a.withModifiers)(e=>s(`format`,`bold`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_bold`,size:18})],42,Kn),(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.italic}]),disabled:n.disabled,title:(0,a.unref)(c)(`italicShortcut`),"aria-label":(0,a.unref)(c)(`italic`),"aria-pressed":!!l.value.italic,onMousedown:o[4]||=(0,a.withModifiers)(e=>s(`format`,`italic`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_italic`,size:18})],42,qn),(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.underline}]),disabled:n.disabled,title:(0,a.unref)(c)(`underlineShortcut`),"aria-label":(0,a.unref)(c)(`underline`),"aria-pressed":!!l.value.underline,onMousedown:o[5]||=(0,a.withModifiers)(e=>s(`format`,`underline`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_underlined`,size:18})],42,Jn)],8,Gn),n.showTextColorPicker?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[o[12]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),(0,a.createVNode)((0,a.unref)(i),{mode:`text`,value:f.value,theme:n.theme??null,disabled:n.disabled,onChange:m},null,8,[`value`,`theme`,`disabled`])],64)):(0,a.createCommentVNode)(``,!0),o[14]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),n.showAlignmentButtons?((0,a.openBlock)(),(0,a.createBlock)(t.n,{key:2,value:l.value.alignment??`left`,disabled:n.disabled,onChange:o[6]||=e=>s(`format`,{type:`alignment`,value:e})},null,8,[`value`,`disabled`])):(0,a.createCommentVNode)(``,!0),n.showListButtons?((0,a.openBlock)(),(0,a.createBlock)(t.t,{key:3,"list-state":d.value,disabled:n.disabled,"can-outdent":p.value,onBulletList:o[7]||=e=>s(`format`,`bulletList`),onNumberedList:o[8]||=e=>s(`format`,`numberedList`),onIndent:o[9]||=e=>s(`format`,`indent`),onOutdent:o[10]||=e=>s(`format`,`outdent`)},null,8,[`list-state`,`disabled`,`can-outdent`])):(0,a.createCommentVNode)(``,!0)],10,Vn))}}),Xn=e.F(Yn,[[`__scopeId`,`data-v-fc03de2e`]]),Zn=[{value:.5,label:`50%`},{value:.75,label:`75%`},{value:1,label:`100%`},{value:1.25,label:`125%`},{value:1.5,label:`150%`},{value:2,label:`200%`}],Qn=(0,a.defineComponent)({__name:`ZoomControl`,props:{value:{default:1},levels:{},disabled:{type:Boolean,default:!1},className:{},compact:{type:Boolean,default:!1}},emits:[`change`],setup(t,{emit:n}){let{Select:r}=e.y(),i=t,o=n,s=(0,a.computed)(()=>i.levels??Zn),c=(0,a.computed)(()=>s.value.find(e=>Math.abs(e.value-i.value)<.001)),l=(0,a.computed)(()=>c.value?c.value.label:`${Math.round(i.value*100)}%`),u=(0,a.computed)(()=>c.value?String(c.value.value):String(i.value)),d=(0,a.computed)(()=>{let e=s.value.map(e=>({value:String(e.value),label:e.label}));return c.value||e.unshift({value:u.value,label:l.value}),e});function f(e){let t=Number.parseFloat(e);Number.isNaN(t)||o(`change`,t)}return(e,n)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(r),{class:(0,a.normalizeClass)([`docx-zoom-control`,[{"docx-zoom-control--compact":t.compact},t.className]]),value:u.value,items:d.value,disabled:t.disabled,"aria-label":`Zoom level`,onChange:f},null,8,[`class`,`value`,`items`,`disabled`]))}}),$n=e.F(Qn,[[`__scopeId`,`data-v-8079e07f`]]),er=(t,n,r={})=>{let{locale:i=`en`,...o}=r;return new Promise((r,s)=>{let c=(0,a.ref)(null),l=null,u=!1,d={save:async()=>{let e=await(c.value?.save()??Promise.resolve(null));return e?new Blob([e],{type:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`}):null},getDocument:()=>c.value?.getDocument()??null,focus:()=>{c.value?.focus()},setZoom:e=>{c.value?.setZoom(e)},scrollToPosition:e=>{c.value?.getEditorRef()?.scrollToPosition(e)},scrollToPage:e=>{c.value?.scrollToPage(e)},destroy:()=>{u||(u=!0,s(Error(`Editor was destroyed before mounting completed.`))),l?.unmount(),l=null}};l=(0,a.createApp)({setup(){return()=>(0,a.h)(zn,{...o,documentBuffer:t,ref:c,onReady:()=>{u||(u=!0,r(d))},onError:e=>{o.onError?.(e),u||(u=!0,l?.unmount(),l=null,s(e))}})}}),l.use(e.k,i),l.mount(n)})};Object.defineProperty(exports,"DEFAULT_AI_SUGGESTION_PRESETS",{enumerable:!0,get:function(){return ce.DEFAULT_AI_SUGGESTION_PRESETS}}),Object.defineProperty(exports,"DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES",{enumerable:!0,get:function(){return q.DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES}}),exports.DocxEditor=zn,exports.FindReplaceDialog=i.FindReplaceDialog,exports.FolioUIProvider=e.g,exports.FootnotePropertiesDialog=i.FootnotePropertiesDialog,exports.FormattingBar=Xn,exports.HyperlinkDialog=i.HyperlinkDialog,exports.ImagePositionDialog=i.ImagePositionDialog,exports.ImagePropertiesDialog=i.ImagePropertiesDialog,exports.InsertImageDialog=i.InsertImageDialog,exports.InsertSymbolDialog=i.InsertSymbolDialog,exports.InsertTableDialog=i.InsertTableDialog,exports.PageSetupDialog=i.PageSetupDialog,exports.PasteSpecialDialog=i.PasteSpecialDialog,exports.SplitCellDialog=i.SplitCellDialog,exports.TablePropertiesDialog=i.TablePropertiesDialog,exports.WatermarkDialog=i.WatermarkDialog,exports.ZoomControl=$n,Object.defineProperty(exports,"acceptAutocompleteSuggestion",{enumerable:!0,get:function(){return q.acceptAutocompleteSuggestion}}),Object.defineProperty(exports,"acceptAutocompleteWord",{enumerable:!0,get:function(){return q.acceptAutocompleteWord}}),Object.defineProperty(exports,"anonymizationDecorationsKey",{enumerable:!0,get:function(){return m.anonymizationDecorationsKey}}),Object.defineProperty(exports,"appendAutocompleteToken",{enumerable:!0,get:function(){return q.appendAutocompleteToken}}),Object.defineProperty(exports,"applyFolioAIEditOperations",{enumerable:!0,get:function(){return N.applyFolioAIEditOperations}}),Object.defineProperty(exports,"applySuggestions",{enumerable:!0,get:function(){return le.applySuggestions}}),Object.defineProperty(exports,"autocompleteSuggestionKey",{enumerable:!0,get:function(){return q.autocompleteSuggestionKey}}),Object.defineProperty(exports,"autocompleteSuggestionPlugin",{enumerable:!0,get:function(){return q.autocompleteSuggestionPlugin}}),Object.defineProperty(exports,"buildPositionalText",{enumerable:!0,get:function(){return de.buildPositionalText}}),Object.defineProperty(exports,"clearAutocompleteSuggestion",{enumerable:!0,get:function(){return q.clearAutocompleteSuggestion}}),Object.defineProperty(exports,"clearTemplateSlashMenu",{enumerable:!0,get:function(){return M.clearTemplateSlashMenu}}),Object.defineProperty(exports,"consumeTemplateSlashQuery",{enumerable:!0,get:function(){return M.consumeTemplateSlashQuery}}),Object.defineProperty(exports,"createAICitationDecorationsPlugin",{enumerable:!0,get:function(){return K.createAICitationDecorationsPlugin}}),Object.defineProperty(exports,"createDocx",{enumerable:!0,get:function(){return U.createDocx}}),Object.defineProperty(exports,"createEmptyDocument",{enumerable:!0,get:function(){return H.createEmptyDocument}}),Object.defineProperty(exports,"createFolioAIEditSnapshot",{enumerable:!0,get:function(){return N.createFolioAIEditSnapshot}}),exports.defaultLocale=e.O,Object.defineProperty(exports,"deriveBlockId",{enumerable:!0,get:function(){return se.deriveBlockId}}),Object.defineProperty(exports,"diffWordSegments",{enumerable:!0,get:function(){return N.diffWordSegments}}),Object.defineProperty(exports,"finishAutocompleteSuggestion",{enumerable:!0,get:function(){return q.finishAutocompleteSuggestion}}),Object.defineProperty(exports,"fromMarkdown",{enumerable:!0,get:function(){return pe.fromMarkdown}}),Object.defineProperty(exports,"getAnonymizationMatches",{enumerable:!0,get:function(){return m.getAnonymizationMatches}}),Object.defineProperty(exports,"getAutocompleteSuggestion",{enumerable:!0,get:function(){return q.getAutocompleteSuggestion}}),Object.defineProperty(exports,"getDocumentWatermark",{enumerable:!0,get:function(){return oe.getDocumentWatermark}}),Object.defineProperty(exports,"getFolioCaretViewportRect",{enumerable:!0,get:function(){return fe.getFolioCaretViewportRect}}),Object.defineProperty(exports,"getFolioParaIdFromBlockId",{enumerable:!0,get:function(){return se.getFolioParaIdFromBlockId}}),Object.defineProperty(exports,"getFolioSelectionViewportRect",{enumerable:!0,get:function(){return fe.getFolioSelectionViewportRect}}),Object.defineProperty(exports,"getTemplateDirectives",{enumerable:!0,get:function(){return S.getTemplateDirectives}}),Object.defineProperty(exports,"getTemplateSlashMenu",{enumerable:!0,get:function(){return M.getTemplateSlashMenu}}),Object.defineProperty(exports,"hashFolioAIBlockText",{enumerable:!0,get:function(){return N.hashFolioAIBlockText}}),exports.i18nPlugin=e.k,Object.defineProperty(exports,"insertImageFromFile",{enumerable:!0,get:function(){return o.insertImageFromFile}}),Object.defineProperty(exports,"insertPageBreakInView",{enumerable:!0,get:function(){return o.insertPageBreakInView}}),Object.defineProperty(exports,"insertTableInView",{enumerable:!0,get:function(){return o.insertTableInView}}),Object.defineProperty(exports,"insertTableOfContentsInView",{enumerable:!0,get:function(){return o.insertTableOfContentsInView}}),Object.defineProperty(exports,"isFolioBlockId",{enumerable:!0,get:function(){return se.isFolioBlockId}}),Object.defineProperty(exports,"isSequentialFolioBlockId",{enumerable:!0,get:function(){return se.isSequentialFolioBlockId}}),Object.defineProperty(exports,"isSuggestionStale",{enumerable:!0,get:function(){return ue.isSuggestionStale}}),Object.defineProperty(exports,"normalizeFolioAIBlockText",{enumerable:!0,get:function(){return N.normalizeFolioAIBlockText}}),exports.provideLocale=e.A,exports.renderAsync=er,Object.defineProperty(exports,"resetTemplateSlashQuery",{enumerable:!0,get:function(){return M.resetTemplateSlashQuery}}),Object.defineProperty(exports,"resolveSuggestionAnchor",{enumerable:!0,get:function(){return ue.resolveSuggestionAnchor}}),Object.defineProperty(exports,"scanDirectives",{enumerable:!0,get:function(){return S.scanDirectives}}),Object.defineProperty(exports,"scrollFolioPositionIntoView",{enumerable:!0,get:function(){return G.scrollFolioPositionIntoView}}),Object.defineProperty(exports,"setAICitationsMeta",{enumerable:!0,get:function(){return K.setAICitationsMeta}}),Object.defineProperty(exports,"setAISuggestionsMeta",{enumerable:!0,get:function(){return W.setAISuggestionsMeta}}),Object.defineProperty(exports,"setActiveCitationMeta",{enumerable:!0,get:function(){return K.setActiveCitationMeta}}),Object.defineProperty(exports,"setAnonymizationTermsMeta",{enumerable:!0,get:function(){return m.setAnonymizationTermsMeta}}),Object.defineProperty(exports,"setDocumentWatermark",{enumerable:!0,get:function(){return oe.setDocumentWatermark}}),Object.defineProperty(exports,"setFocusedSuggestionMeta",{enumerable:!0,get:function(){return W.setFocusedSuggestionMeta}}),Object.defineProperty(exports,"setTemplatePreviewValues",{enumerable:!0,get:function(){return j.setTemplatePreviewValues}}),Object.defineProperty(exports,"shouldTriggerAutocomplete",{enumerable:!0,get:function(){return q.shouldTriggerAutocomplete}}),Object.defineProperty(exports,"startAutocompleteSuggestion",{enumerable:!0,get:function(){return q.startAutocompleteSuggestion}}),Object.defineProperty(exports,"templateSlashMenuKey",{enumerable:!0,get:function(){return M.templateSlashMenuKey}}),Object.defineProperty(exports,"toMarkdown",{enumerable:!0,get:function(){return pe.toMarkdown}}),Object.defineProperty(exports,"toMarkdownResult",{enumerable:!0,get:function(){return pe.toMarkdownResult}}),exports.useTranslation=e.j,exports.useWheelZoom=r.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./WatermarkDialog-DHfk8jrg.cjs"),t=require("./ListButtons-BvsV1yti.cjs"),n=require("./zIndex-dFsQbASx.cjs"),r=require("./useZoom-C7jhL696.cjs"),i=require("./dialogs.cjs");let a=require("vue"),o=require("@stll/folio-core/prosemirror"),s=require("@stll/folio-core/prosemirror/plugins/selectionTracker"),c=require("@stll/folio-core/docx/compatibility"),l=require("@stll/folio-core/layout-bridge/engine/measuring"),u=require("@stll/folio-core/utils/fontLoader"),d=require("@stll/folio-core/paged-layout/sectionGeometry"),f=require("@stll/folio-core/controller/latestRequestGate"),p=require("@stll/folio-core/paged-layout/rangeProjection"),m=require("@stll/folio-core/paged-layout/scrollNavigation"),h=require("@stll/folio-core/prosemirror/plugins/anonymizationDecorations"),g=require("prosemirror-state"),_=require("@stll/folio-core/utils/units"),v=require("@stll/folio-core/layout-painter/imageLayout"),y=require("@stll/folio-core/managers/EditorModeManager"),b=require("@stll/folio-core/layout-bridge/dom/clickToPositionDom"),x=require("@stll/folio-core/prosemirror/imageCommit"),S=require("@stll/folio-core/layout-bridge/dom/findBodyPmSpans"),C=require("@stll/folio-core/prosemirror/plugins/templateDirectives"),ee=require("prosemirror-history"),w=require("@stll/folio-core/prosemirror/commands/formatting"),T=require("@stll/folio-core/prosemirror/extensions/nodes/TableExtension"),E=require("@stll/folio-core/prosemirror/commentIdAllocator"),D=require("@stll/folio-core/prosemirror/commentOps"),O=require("@stll/folio-core/prosemirror/queries"),k=require("@stll/folio-core/prosemirror/commands/comments"),A=require("@stll/folio-core/prosemirror/plugins/suggestionMode"),j=require("@stll/folio-core/layout-engine"),M=require("@stll/folio-core/prosemirror/plugins/templatePreviewValues"),N=require("@stll/folio-core/prosemirror/plugins/templateSlashMenu"),P=require("@stll/folio-core/ai-edits"),F=require("@stll/folio-core/paged-layout/paragraphFlash"),I=require("@stll/folio-core/prosemirror/commands/contentControls"),L=require("@stll/folio-core/prosemirror/commands/contentControlsBlockFill"),R=require("@stll/folio-core/ai-edits/blockRange"),z=require("@stll/folio-core/paged-layout/pageText"),B=require("@stll/folio-core/prosemirror/commands/paragraph"),te=require("@stll/folio-core/docx"),ne=require("@stll/folio-core/prosemirror/commands/pageBreak"),V=require("@stll/folio-core/prosemirror/commands/sectionBreak"),H=require("@stll/folio-core/prosemirror/commands/hyperlink"),re=require("@stll/folio-core/utils/headingCollector"),ie=require("@stll/folio-core/layout-bridge/tableInsertHover"),ae=require("@stll/folio-core/prosemirror/cellDragSelection"),U=require("@stll/folio-core/watermark"),W=require("@stll/folio-core/utils/createDocument"),oe=require("@stll/folio-core/style-sets/extract"),se=require("@stll/folio-core/style-sets/stellaStyle"),ce=require("@stll/folio-core/style-sets/types"),le=require("@stll/folio-core/docx/rezip"),G=require("@stll/folio-core/types/block-id"),K=require("@stll/folio-core/ai-suggestions/types"),q=require("@stll/folio-core/ai-suggestions/apply"),ue=require("@stll/folio-core/ai-suggestions/conflict"),de=require("@stll/folio-core/ai-suggestions/text-positions"),fe=require("@stll/folio-core/prosemirror/plugins/aiSuggestionDecorations"),pe=require("@stll/folio-core/paged-layout/scrollToPmPosition"),me=require("@stll/folio-core/paged-layout/selectionViewportRect"),he=require("@stll/folio-core/prosemirror/plugins/aiCitationDecorations"),J=require("@stll/folio-core/prosemirror/plugins/autocompleteSuggestion"),ge=require("@stll/folio-core/markdown");var _e=[`data-folio-anonymization-label`,`data-folio-anonymization-canonical`,`data-folio-anonymization-selected`,`title`],ve=(0,a.defineComponent)({__name:`AnonymizationRectsOverlay`,props:{getView:{type:Function},getPagesContainer:{type:Function},editorState:{},zoom:{},layout:{},blocks:{},measures:{},onTermClick:{type:Function},selectedCanonical:{},selectionSeq:{}},setup(e){let t=e,n=(0,a.ref)(null),r=(0,a.ref)([]),i=(0,f.createLatestRequestGate)(),o=null;function s(){o!==null&&cancelAnimationFrame(o),o=requestAnimationFrame(()=>{o=null,c()})}async function c(){let e=i.begin(),n=t.getView(),a=t.getPagesContainer(),o=t.editorState;if(!n||!a||!o){r.value=[];return}let s=(0,h.getAnonymizationMatches)(o);if(s.length===0){r.value=[];return}let c=await(0,p.projectRangesToRects)(s,{pagesContainer:a,zoom:t.zoom,layout:t.layout,blocks:t.blocks,measures:t.measures});if(!e())return;let l=t.zoom;r.value=c.map(({range:e,rects:t})=>({label:e.label,canonical:e.canonical,rects:t.map(e=>({left:e.x*l,top:e.y*l,width:e.width*l,height:e.height*l}))}))}(0,a.watch)(()=>[t.editorState,t.zoom,t.layout,t.blocks,t.measures],()=>s());let l=null;function u(){let e=n.value,r=t.selectedCanonical;if(!e||!r){l=null;return}let i=e.querySelectorAll(`[data-folio-anonymization-canonical="${CSS.escape(r)}"]`);if(i.length===0)return;let a=l?.canonical===r?(l.index+1)%i.length:0;l={canonical:r,index:a},i.item(a)?.scrollIntoView({block:`center`,behavior:(0,m.prefersReducedMotionBehavior)()})}(0,a.watch)(()=>[t.selectedCanonical,t.selectionSeq],()=>u(),{flush:`post`});function d(e){if(e.button!==0||!t.onTermClick)return;let r=n.value;if(!r)return;let i=r.querySelectorAll(`[data-folio-anonymization-canonical]`);for(let n=i.length-1;n>=0;--n){let r=i.item(n);if(!r)continue;let a=r.getBoundingClientRect();if(e.clientX>=a.left&&e.clientX<a.right&&e.clientY>=a.top&&e.clientY<a.bottom){let e=r.dataset.folioAnonymizationCanonical,n=r.dataset.folioAnonymizationLabel;e&&n&&t.onTermClick(e,n);return}}}return(0,a.onMounted)(()=>{document.addEventListener(`click`,d),s()}),(0,a.onBeforeUnmount)(()=>{i.invalidate(),document.removeEventListener(`click`,d),o!==null&&(cancelAnimationFrame(o),o=null)}),(t,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{ref_key:`rootRef`,ref:n,class:`folio-anonymization-overlay`,"data-folio-anonymization-overlay":``},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(r.value,t=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`${t.label}:${t.canonical}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.rects,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:`${t.canonical}:${r}:${n.left}:${n.top}`,class:(0,a.normalizeClass)([`folio-anonymization-term`,`folio-anonymization-term--${(0,a.unref)(h.slugAnonymizationLabel)(t.label)}`]),"data-folio-anonymization-label":t.label,"data-folio-anonymization-canonical":t.canonical,"data-folio-anonymization-selected":t.canonical===e.selectedCanonical?`true`:void 0,title:`Anonymized: ${t.canonical}`,style:(0,a.normalizeStyle)({position:`absolute`,left:`${n.left}px`,top:`${n.top}px`,width:`${n.width}px`,height:`${n.height}px`})},null,14,_e))),128))],64))),128))],512))}}),ye=e.F(ve,[[`__scopeId`,`data-v-df8fe7df`]]),Y={class:`doc-outline__header`},be={class:`doc-outline__body`},xe={key:0,class:`doc-outline__empty`},Se=(0,a.defineComponent)({__name:`DocumentOutline`,props:{isOpen:{type:Boolean},headings:{},leftOffset:{default:12},topPx:{default:24},getScrollContainer:{}},emits:[`close`,`navigate`],setup(t,{emit:n}){let r=t,{OutlineRail:i}=e.y(),o=(0,a.computed)(()=>r.headings.length?Math.min(...r.headings.map(e=>e.level)):0),s=(0,a.computed)(()=>r.headings.map(e=>({id:String(e.pmPos),label:e.text||`(untitled)`,level:e.level-o.value}))),c=n;function l(e){c(`navigate`,Number(e))}return(n,r)=>t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`nav`,{key:0,class:`doc-outline`,style:(0,a.normalizeStyle)({left:t.leftOffset+`px`,top:t.topPx+`px`}),role:`navigation`,"aria-label":`Document outline`,onMousedown:r[1]||=(0,a.withModifiers)(()=>{},[`stop`])},[(0,a.createElementVNode)(`div`,Y,[(0,a.createElementVNode)(`button`,{class:`doc-outline__back`,title:`Close outline`,"aria-label":`Close outline`,onClick:r[0]||=e=>n.$emit(`close`)},[(0,a.createVNode)(e.P,{name:`arrow_back`,size:20})]),r[2]||=(0,a.createElementVNode)(`span`,{class:`doc-outline__title`},`Document Outline`,-1)]),(0,a.createElementVNode)(`div`,be,[t.headings.length===0?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,xe,`No headings found`)):((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(i),{key:1,items:s.value,"get-scroll-container":t.getScrollContainer??(()=>null),"on-jump":l,"aria-label":`Document outline`},null,8,[`items`,`get-scroll-container`]))])],36)):(0,a.createCommentVNode)(``,!0)}}),Ce=e.F(Se,[[`__scopeId`,`data-v-0797b3b1`]]),we=(0,a.defineComponent)({__name:`DocxEditorDialogs`,props:{view:{},bookmarks:{},selectedImagePmPos:{},sectionProperties:{},showFindReplace:{type:Boolean},showHyperlink:{type:Boolean},showInsertSymbol:{type:Boolean},showImageProperties:{type:Boolean},showPageSetup:{type:Boolean}},emits:[`update:showFindReplace`,`update:showHyperlink`,`update:showInsertSymbol`,`update:showImageProperties`,`update:showPageSetup`,`insert-symbol`,`hyperlink-submit`,`hyperlink-remove`,`page-setup-apply`],setup(t,{emit:n}){let r=n;return(n,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,null,[(0,a.createVNode)(e.m,{"is-open":t.showFindReplace,view:t.view,onClose:i[0]||=e=>r(`update:showFindReplace`,!1)},null,8,[`is-open`,`view`]),(0,a.createVNode)(e.p,{"is-open":t.showHyperlink,view:t.view,bookmarks:t.bookmarks,onClose:i[1]||=e=>r(`update:showHyperlink`,!1),onSubmit:i[2]||=e=>r(`hyperlink-submit`,e),onRemove:i[3]||=e=>r(`hyperlink-remove`)},null,8,[`is-open`,`view`,`bookmarks`]),(0,a.createVNode)(e.d,{"is-open":t.showInsertSymbol,onClose:i[4]||=e=>r(`update:showInsertSymbol`,!1),onInsert:i[5]||=e=>r(`insert-symbol`,e)},null,8,[`is-open`]),(0,a.createVNode)(e.f,{"is-open":t.showImageProperties,view:t.view,"pm-pos":t.selectedImagePmPos,onClose:i[6]||=e=>r(`update:showImageProperties`,!1)},null,8,[`is-open`,`view`,`pm-pos`]),(0,a.createVNode)(e.u,{"is-open":t.showPageSetup,"section-properties":t.sectionProperties,onClose:i[7]||=e=>r(`update:showPageSetup`,!1),onApply:i[8]||=e=>r(`page-setup-apply`,e)},null,8,[`is-open`,`section-properties`])],64))}}),Te={key:0,class:`docx-editor-vue__title-bar`},Ee={class:`docx-editor-vue__title-bar-left`},De={class:`docx-editor-vue__title-bar-center`},Oe={class:`docx-editor-vue__title-bar-right`},ke=(0,a.defineComponent)({__name:`DocxEditorMenuBar`,props:{showMenuBar:{type:Boolean,default:!0},documentName:{default:``},documentNameEditable:{type:Boolean,default:!0},showFileOpen:{type:Boolean,default:!0},showHelpMenu:{type:Boolean,default:!0},showTableInsert:{type:Boolean,default:!0}},emits:[`rename`,`menu-action`,`insert-table`],setup(e,{emit:n}){let r=n;return(n,i)=>e.showMenuBar?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Te,[(0,a.createElementVNode)(`div`,Ee,[(0,a.renderSlot)(n.$slots,`title-bar-left`)]),(0,a.createElementVNode)(`div`,De,[(0,a.createVNode)(t.E,{"model-value":e.documentName,editable:e.documentNameEditable,"onUpdate:modelValue":i[0]||=e=>r(`rename`,e)},null,8,[`model-value`,`editable`]),(0,a.createVNode)(t.w,{"show-file-open":e.showFileOpen,"show-help-menu":e.showHelpMenu,"show-table-insert":e.showTableInsert,onAction:i[1]||=e=>r(`menu-action`,e),onInsertTable:i[2]||=(e,t)=>r(`insert-table`,e,t)},null,8,[`show-file-open`,`show-help-menu`,`show-table-insert`])]),(0,a.createElementVNode)(`div`,Oe,[(0,a.renderSlot)(n.$slots,`title-bar-right`)])])):(0,a.createCommentVNode)(``,!0)}}),Ae=Symbol(`docx-portal-class`);function je(e){(0,a.provide)(Ae,(0,a.computed)(()=>({"ep-root":!0,dark:!!(0,a.unref)(e)})))}function Me(){return(0,a.inject)(Ae,(0,a.computed)(()=>({"ep-root":!0})))}var Ne=[`aria-label`],Pe={class:`image-ctx-menu__icon`},Fe={class:`image-ctx-menu__label`},Ie={key:1,class:`image-ctx-menu__divider`,role:`separator`},Le=[`data-wrap-type`,`data-current`,`data-disabled`,`disabled`,`title`,`onClick`],Re={class:`image-ctx-menu__icon`},ze={class:`image-ctx-menu__label`},Be=[`aria-label`],Ve=[`disabled`,`onClick`],He={class:`image-ctx-menu__label`},Ue={key:0,class:`image-ctx-menu__shortcut`},We={key:0,class:`image-ctx-menu__divider`,role:`separator`},Ge=18,Ke=260,X=10,qe=(0,a.defineComponent)({__name:`ImageContextMenu`,props:{state:{},textActions:{},canOpenProperties:{type:Boolean,default:!1}},emits:[`close`,`select`,`text-action`,`open-properties`],setup(t,{emit:n}){let r=t,i=n;function o(){i(`open-properties`),i(`close`)}let{t:s}=e.j(),c=Me(),l=v.IMAGE_LAYOUT_OPTIONS,u=(0,a.computed)(()=>r.state?(0,v.deriveLayoutChoice)(r.state.currentWrapType,r.state.currentCssFloat??null):null),d={inline:`wrap_text`,squareLeft:`format_image_left`,squareRight:`format_image_right`,behind:`flip_to_back`,inFront:`flip_to_front`};function f(e){return d[e]}let p=(0,a.computed)(()=>{if(!r.state)return{};let e=v.IMAGE_LAYOUT_OPTIONS.length*36+16,t=r.state.position.x,n=r.state.position.y;return typeof window<`u`&&(t+Ke>window.innerWidth&&(t=window.innerWidth-Ke-X),n+e>window.innerHeight&&(n=window.innerHeight-e-X),t<X&&(t=X),n<X&&(n=X)),{position:`fixed`,left:`${t}px`,top:`${n}px`,minWidth:`${Ke}px`,zIndex:400}});function m(e){return r.state?(0,v.isImageLayoutOptionEnabled)(e,r.state.currentWrapType):!1}function h(e){m(e)&&(i(`select`,e.choice),i(`close`))}function g(e){e.disabled||(i(`text-action`,e.action),i(`close`))}function _(e){e.preventDefault(),i(`close`)}function y(e){e.key===`Escape`&&(e.preventDefault(),i(`close`))}return(n,r)=>((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`},[t.state&&t.state.open?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`image-ctx-menu-backdrop`,onMousedown:_,onContextmenu:r[0]||=(0,a.withModifiers)(e=>n.$emit(`close`),[`prevent`])},null,32)):(0,a.createCommentVNode)(``,!0),t.state&&t.state.open?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:1,class:(0,a.normalizeClass)([`image-ctx-menu`,(0,a.unref)(c)]),role:`menu`,"aria-label":(0,a.unref)(s)(`imageWrap.menu.ariaLabel`),"data-testid":`image-context-menu`,style:(0,a.normalizeStyle)(p.value),onContextmenu:r[4]||=(0,a.withModifiers)(()=>{},[`prevent`]),onKeydown:y},[t.canOpenProperties?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,type:`button`,role:`menuitem`,class:`image-ctx-menu__item`,"data-action":`open-properties`,onMousedown:r[1]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:o},[(0,a.createElementVNode)(`span`,Pe,[(0,a.createVNode)(e.P,{name:`settings`,size:Ge})]),(0,a.createElementVNode)(`span`,Fe,(0,a.toDisplayString)((0,a.unref)(s)(`imageWrap.menu.imageProperties`)),1)],32)):(0,a.createCommentVNode)(``,!0),t.canOpenProperties?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Ie)):(0,a.createCommentVNode)(``,!0),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)((0,a.unref)(l),t=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:t.choice,type:`button`,role:`menuitem`,class:(0,a.normalizeClass)([`image-ctx-menu__item`,{"image-ctx-menu__item--current":t.choice===u.value}]),"data-wrap-type":t.choice,"data-current":t.choice===u.value?`true`:`false`,"data-disabled":m(t)?`false`:`true`,disabled:!m(t),title:(0,a.unref)(s)(`imageWrap.menuDesc.${t.i18nDescKey}`),onMousedown:r[2]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:e=>h(t)},[(0,a.createElementVNode)(`span`,Re,[(0,a.createVNode)(e.P,{name:f(t.iconHint),size:Ge},null,8,[`name`])]),(0,a.createElementVNode)(`span`,ze,(0,a.toDisplayString)((0,a.unref)(s)(`imageWrap.menu.${t.i18nLabelKey}`)),1),t.choice===u.value?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:0,class:`image-ctx-menu__current-dot`,"aria-label":(0,a.unref)(s)(`imageWrap.menu.ariaLabel`)},`●`,8,Be)):(0,a.createCommentVNode)(``,!0)],42,Le))),128)),t.textActions&&t.textActions.length>0?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:2},[r[5]||=(0,a.createElementVNode)(`div`,{class:`image-ctx-menu__divider`,role:`separator`},null,-1),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.textActions,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`${e.action}-${t}`},[(0,a.createElementVNode)(`button`,{type:`button`,role:`menuitem`,class:`image-ctx-menu__item image-ctx-menu__item--text`,disabled:e.disabled,onMousedown:r[3]||=(0,a.withModifiers)(()=>{},[`prevent`]),onClick:t=>g(e)},[(0,a.createElementVNode)(`span`,He,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Ue,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],40,Ve),e.dividerAfter?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,We)):(0,a.createCommentVNode)(``,!0)],64))),128))],64)):(0,a.createCommentVNode)(``,!0)],46,Ne)):(0,a.createCommentVNode)(``,!0)]))}}),Je=e.F(qe,[[`__scopeId`,`data-v-fc8f35bc`]]),Z=[`disabled`,`onMousedown`],Ye={key:0,class:`ctx-menu__icon`},Xe={class:`ctx-menu__label`},Ze={key:1,class:`ctx-menu__shortcut`},Qe=220,$e=32,et=10,tt=(0,a.defineComponent)({__name:`TextContextMenu`,props:{isOpen:{type:Boolean},position:{},hasSelection:{type:Boolean},isEditable:{type:Boolean},inTable:{type:Boolean},onImage:{type:Boolean},canMergeCells:{type:Boolean},canSplitCell:{type:Boolean},customItems:{}},emits:[`close`,`action`],setup(t,{emit:n}){let r=t,i=({node:e})=>e;i.props=[`node`];let o=n,{t:s}=e.j(),c=Me(),l=(0,a.ref)(null),u=(0,a.computed)(()=>{let e=[],t=r.customItems??[];for(let[n,r]of t.entries())e.push({id:`custom-${r.id}`,label:r.label,action:`custom:${r.id}`,emphasis:!0,...r.icon===void 0?{}:{icon:r.icon}}),n===t.length-1&&e.push({id:`div-custom`,label:``,action:``,divider:!0});return e.push({id:`cut`,label:s(`cut`),action:`cut`,shortcut:s(`contextMenu.cutShortcut`),disabled:!r.hasSelection||!r.isEditable},{id:`copy`,label:s(`copy`),action:`copy`,shortcut:s(`contextMenu.copyShortcut`),disabled:!r.hasSelection},{id:`paste`,label:s(`paste`),action:`paste`,shortcut:s(`contextMenu.pasteShortcut`),disabled:!r.isEditable},{id:`pasteAsPlainText`,label:s(`pasteUnformatted`),action:`pasteAsPlainText`,shortcut:s(`contextMenu.pastePlainTextShortcut`),disabled:!r.isEditable},{id:`div1`,label:``,action:``,divider:!0},{id:`delete`,label:s(`delete`),action:`delete`,shortcut:s(`contextMenu.deleteShortcut`),disabled:!r.hasSelection||!r.isEditable},{id:`selectAll`,label:s(`selectAll`),action:`selectAll`,shortcut:s(`contextMenu.selectAllShortcut`)}),r.onImage&&r.isEditable&&e.push({id:`div-img`,label:``,action:``,divider:!0},{id:`replaceImage`,label:s(`imageOverlay.replaceImage`),action:`replaceImage`},{id:`imageProperties`,label:s(`imageWrap.menu.imageProperties`),action:`imageProperties`},{id:`deleteImage`,label:s(`imageOverlay.deleteImage`),action:`deleteImage`,shortcut:s(`contextMenu.deleteShortcut`)}),r.inTable&&r.isEditable&&e.push({id:`div2`,label:``,action:``,divider:!0},{id:`addRowAbove`,label:s(`insertRowAbove`),action:`addRowAbove`},{id:`addRowBelow`,label:s(`insertRowBelow`),action:`addRowBelow`},{id:`deleteRow`,label:s(`deleteRow`),action:`deleteRow`},{id:`div3`,label:``,action:``,divider:!0},{id:`addColLeft`,label:s(`insertColumnLeft`),action:`addColumnLeft`},{id:`addColRight`,label:s(`insertColumnRight`),action:`addColumnRight`},{id:`deleteCol`,label:s(`deleteColumn`),action:`deleteColumn`},{id:`div4`,label:``,action:``,divider:!0},{id:`mergeCells`,label:s(`table.mergeCells`),action:`mergeCells`,disabled:!r.canMergeCells},{id:`splitCell`,label:s(`table.splitCell`),action:`splitCell`,disabled:!r.canSplitCell},{id:`div5`,label:``,action:``,divider:!0},{id:`selectTable`,label:s(`table.selectTable`),action:`selectTable`},{id:`deleteTable`,label:s(`table.deleteTable`),action:`deleteTable`}),e}),d=(0,a.computed)(()=>{let e=r.position.x,t=r.position.y,n=u.value.filter(e=>!e.divider).length,i=u.value.filter(e=>e.divider).length,a=n*$e+i*9;return typeof window<`u`&&(e+Qe+et>window.innerWidth&&(e=window.innerWidth-Qe-et),t+a+et>window.innerHeight&&(t=window.innerHeight-a-et)),{position:`fixed`,left:`${e}px`,top:`${t}px`,zIndex:400}});function f(e){e&&(o(`action`,e),o(`close`))}function p(e){e.key===`Escape`&&o(`close`)}return(0,a.watch)(()=>r.isOpen,e=>{e&&(0,a.nextTick)(()=>l.value?.focus())}),(e,n)=>((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`},[t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`ctx-menu-backdrop`,onMousedown:n[0]||=t=>e.$emit(`close`),onContextmenu:n[1]||=(0,a.withModifiers)(t=>e.$emit(`close`),[`prevent`])},null,32)):(0,a.createCommentVNode)(``,!0),t.isOpen?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:1,ref_key:`menuRef`,ref:l,class:(0,a.normalizeClass)([`ctx-menu`,(0,a.unref)(c)]),style:(0,a.normalizeStyle)(d.value),onContextmenu:n[2]||=(0,a.withModifiers)(()=>{},[`prevent`]),onKeydown:p},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(u.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:e.id||t,class:(0,a.normalizeClass)([`ctx-menu__item`,{"ctx-menu__item--disabled":e.disabled,"ctx-menu__item--divider":e.divider,"ctx-menu__item--emphasis":e.emphasis}]),disabled:e.disabled,onMousedown:(0,a.withModifiers)(t=>f(e.action),[`prevent`])},[e.icon?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Ye,[(0,a.createVNode)(i,{node:e.icon},null,8,[`node`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,Xe,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,Ze,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],42,Z))),128))],38)):(0,a.createCommentVNode)(``,!0)]))}}),nt=e.F(tt,[[`__scopeId`,`data-v-c1416e84`]]),rt=(0,a.defineComponent)({__name:`DocxEditorOverlays`,props:{readOnly:{type:Boolean},contextMenu:{},imageContextMenu:{},imageContextMenuTextActions:{},canOpenImageProperties:{type:Boolean},customTextMenuItems:{}},emits:[`context-menu-action`,`close-context-menu`,`image-wrap-select`,`close-image-context-menu`,`open-image-properties`],setup(e,{emit:t}){let n=t;return(t,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,null,[(0,a.createVNode)(nt,{"is-open":e.contextMenu.isOpen,position:e.contextMenu.position,"has-selection":e.contextMenu.hasSelection,"is-editable":!e.readOnly,"in-table":e.contextMenu.inTable,"on-image":e.contextMenu.onImage,"can-merge-cells":e.contextMenu.canMergeCells,"can-split-cell":e.contextMenu.canSplitCell,"custom-items":e.customTextMenuItems,onAction:r[0]||=e=>n(`context-menu-action`,e),onClose:r[1]||=e=>n(`close-context-menu`)},null,8,[`is-open`,`position`,`has-selection`,`is-editable`,`in-table`,`on-image`,`can-merge-cells`,`can-split-cell`,`custom-items`]),(0,a.createVNode)(Je,{state:e.imageContextMenu,"text-actions":e.imageContextMenuTextActions,"can-open-properties":e.canOpenImageProperties,onClose:r[2]||=e=>n(`close-image-context-menu`),onSelect:r[3]||=e=>n(`image-wrap-select`,e),onTextAction:r[4]||=e=>n(`context-menu-action`,e),onOpenProperties:r[5]||=e=>n(`open-image-properties`)},null,8,[`state`,`text-actions`,`can-open-properties`])],64))}});function it(e){let t=Math.max(0,e.parentOffsetWidth-e.parentClientWidth)/2,n=e.zoom||1;return{left:(e.imageRect.left-e.parentRect.left-t+e.scrollLeft)/n,top:(e.imageRect.top-e.parentRect.top+e.scrollTop)/n,width:e.imageRect.width/n,height:e.imageRect.height/n}}var at=[`data-handle`,`onMousedown`],Q=[`title`],ot={key:0,class:`image-overlay__dim`},$={key:1,class:`image-overlay__dim image-overlay__dim--rotate`},st=4,ct=15,lt=250,ut=700,dt=(0,a.defineComponent)({__name:`ImageSelectionOverlay`,props:{imageInfo:{},zoom:{},view:{}},emits:[`deselect`,`interact-start`,`interact-end`,`context-menu`],setup(t,{emit:r}){let{t:i}=e.j(),o=t,s=r,c=(0,a.ref)(null),l=(0,a.ref)(!1),u=(0,a.ref)(!1),d=(0,a.ref)(!1),f=(0,a.ref)(0),p=(0,a.ref)(0),m=(0,a.ref)(0),h=(0,a.ref)(null),y=`se`,C=0,ee=0,w=0,T=0,E=null,D=null,O=null,k=null;function A(e,t){if(!e)return null;try{let n=e.state.doc.nodeAt(t);return n&&n.type.name===`image`?n:null}catch{return null}}function j(e){if(!e)return null;let t=e.attrs.transform;return typeof t==`string`?t:null}function M(){return c.value?.closest(`.docx-editor-vue__pages-viewport`)?.querySelector(`.docx-editor-vue__pages`)??null}function N(){let e=o.imageInfo;if(!e)return null;if(e.element.isConnected)return e.element;let t=M();if(!t)return null;let n=(0,S.findBodyPmAnchor)(t,e.pmPos);return n?(0,v.findImageElement)(n):null}function P(){let e=N();if(!e||!c.value){h.value=null;return}let t=c.value.offsetParent;if(!(t instanceof HTMLElement)){h.value=null;return}let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();h.value=it({imageRect:r,parentRect:n,scrollLeft:t.scrollLeft,scrollTop:t.scrollTop,parentOffsetWidth:t.offsetWidth,parentClientWidth:t.clientWidth,zoom:o.zoom})}let F=null;function I(){F?.();let e=0,t=``,n=0,r=0,i=a=>{r===0&&(r=a);let o=a-r;P();let s=h.value,c=s?`${s.left}|${s.top}|${s.width}|${s.height}`:``;n=c===t?n+1:0,t=c,!(o>=lt&&n>=2)&&o<ut&&(e=requestAnimationFrame(i))};e=requestAnimationFrame(i);let a=setTimeout(P,lt);F=()=>{cancelAnimationFrame(e),clearTimeout(a)}}(0,a.watch)(()=>o.imageInfo,(e,t,n)=>{if(!o.imageInfo){h.value=null;return}I(),n(()=>F?.())},{immediate:!0}),(0,a.watch)(()=>o.zoom,()=>{o.imageInfo&&I()}),(0,a.watch)(()=>o.imageInfo,(e,t,n)=>{if(!o.imageInfo)return;let r=()=>{D&&cancelAnimationFrame(D),D=requestAnimationFrame(P)},i=c.value?.closest(`.docx-editor-vue__pages-viewport`);i?.addEventListener(`scroll`,r,{passive:!0}),window.addEventListener(`resize`,r,{passive:!0});let s=null,l=!1;(0,a.nextTick)(()=>{if(l||!o.imageInfo)return;let e=M();e&&(s=new MutationObserver(()=>I()),s.observe(e,{attributes:!0,attributeFilter:[`style`]}))}),n(()=>{l=!0,i?.removeEventListener(`scroll`,r),window.removeEventListener(`resize`,r),s?.disconnect(),D&&cancelAnimationFrame(D)})},{immediate:!0});let L=(0,a.computed)(()=>l.value?f.value:h.value?.width||0),R=(0,a.computed)(()=>l.value?p.value:h.value?.height||0),z=(0,a.computed)(()=>{let e=h.value;if(!e)return{position:`absolute`,top:`0px`,left:`0px`,visibility:`hidden`,pointerEvents:`none`};let t=l.value?f.value:e.width,r=l.value?p.value:e.height,i=o.zoom||1;return{position:`absolute`,left:`${e.left*i}px`,top:`${e.top*i}px`,width:`${t}px`,height:`${r}px`,transform:i===1?void 0:`scale(${i})`,transformOrigin:`top left`,zIndex:n.t.imageOverlay,pointerEvents:`auto`}}),B=(0,a.computed)(()=>{let e=L.value,t=R.value,n=`${e/2-5}px`,r=`${t/2-5}px`,i=`${e-5}px`,a=`${t-5}px`,o=`-5px`;return[{pos:`nw`,style:{left:o,top:o,cursor:`nwse-resize`}},{pos:`n`,style:{left:n,top:o,cursor:`ns-resize`}},{pos:`ne`,style:{left:i,top:o,cursor:`nesw-resize`}},{pos:`e`,style:{left:i,top:r,cursor:`ew-resize`}},{pos:`se`,style:{left:i,top:a,cursor:`nwse-resize`}},{pos:`s`,style:{left:n,top:a,cursor:`ns-resize`}},{pos:`sw`,style:{left:o,top:a,cursor:`nesw-resize`}},{pos:`w`,style:{left:o,top:r,cursor:`ew-resize`}}]});function te(e,t){!o.imageInfo||!h.value||(y=t,C=e.clientX,ee=e.clientY,w=h.value.width,T=h.value.height,E={...h.value},f.value=Math.round(w),p.value=Math.round(T),l.value=!0,s(`interact-start`),document.addEventListener(`mousemove`,ne),document.addEventListener(`mouseup`,V))}function ne(e){let t=o.zoom,n=(e.clientX-C)/t,r=(e.clientY-ee)/t,i=!e.shiftKey,a=(0,x.calculateResizedImageDimensions)(y,n,r,w,T,i);f.value=Math.round(a.width),p.value=Math.round(a.height);let s=E;if(s){let e=y.includes(`w`)?s.left+(s.width-a.width):s.left,t=y.includes(`n`)?s.top+(s.height-a.height):s.top;h.value={left:e,top:t,width:s.width,height:s.height}}}function V(){document.removeEventListener(`mousemove`,ne),document.removeEventListener(`mouseup`,V),l.value=!1,E=null,s(`interact-end`);let e=o.view,t=o.imageInfo;if(!e||!t){P();return}let n=(0,x.commitImageResize)(e,t.pmPos,f.value,p.value);n!==null&&fe(n),(0,a.nextTick)(()=>P())}let H=0,re=0,ie=0,ae=0,U=null,W=null;function oe(e){if(!e)return 0;let t=e.match(/rotate\((-?\d+(?:\.\d+)?)deg\)/)?.[1];return t?parseFloat(t):0}function se(e,t){let n=/scaleX\(-1\)/.test(e||``),r=/scaleY\(-1\)/.test(e||``),i=[],a=(t%360+360)%360;return a!==0&&i.push(`rotate(${a}deg)`),n&&i.push(`scaleX(-1)`),r&&i.push(`scaleY(-1)`),i.length>0?i.join(` `):null}function ce(e,t){return Math.atan2(e-H,-(t-re))*180/Math.PI}function le(e){if(!o.imageInfo)return;let t=o.imageInfo.element.getBoundingClientRect();H=t.left+t.width/2,re=t.top+t.height/2,U=j(A(o.view,o.imageInfo.pmPos)),ae=oe(U),W=o.imageInfo.element.querySelector(`img`),ie=ce(e.clientX,e.clientY),m.value=ae,d.value=!0,s(`interact-start`),document.addEventListener(`mousemove`,G),document.addEventListener(`mouseup`,K)}function G(e){let t=ce(e.clientX,e.clientY)-ie,n=ae+t;e.shiftKey||(n=Math.round(n/ct)*ct),m.value=(n%360+360)%360,W&&(W.style.transform=se(U,m.value)||``)}function K(){document.removeEventListener(`mousemove`,G),document.removeEventListener(`mouseup`,K),d.value=!1,s(`interact-end`);let e=o.view,t=o.imageInfo;try{let n=e&&t?A(e,t.pmPos):null;e&&t&&n&&(e.dispatch(e.state.tr.setNodeMarkup(t.pmPos,void 0,{...n.attrs,transform:se(j(n),m.value)})),fe(t.pmPos))}catch{}finally{W&&(W.style.transform=``),W=null,U=null}(0,a.nextTick)(()=>P())}let q=null;function ue(e){if(!o.imageInfo||!h.value)return;let t=e.clientX,n=e.clientY,r=h.value,i=!1,a=e=>{let a=e.clientX-t,c=e.clientY-n;if(!(!i&&Math.sqrt(a*a+c*c)<st)){if(!i){i=!0,u.value=!0,s(`interact-start`),q=document.createElement(`div`),q.style.cssText=`position: fixed; pointer-events: none; z-index: 10000; opacity: 0.5; border: 2px dashed #2563eb; border-radius: 4px; background: rgba(37, 99, 235, 0.1);`;let e=o.zoom;q.style.width=`${r.width*e}px`,q.style.height=`${r.height*e}px`,document.body.appendChild(q)}if(q){let t=o.zoom;q.style.left=`${e.clientX-r.width*t/2}px`,q.style.top=`${e.clientY-r.height*t/2}px`}}},c=e=>{document.removeEventListener(`mousemove`,a),document.removeEventListener(`mouseup`,c),O=null,k=null,q&&=(q.remove(),null),u.value=!1,i&&(s(`interact-end`),de(e.clientX,e.clientY))};O=a,k=c,document.addEventListener(`mousemove`,a),document.addEventListener(`mouseup`,c)}function de(e,t){let n=o.view,r=o.imageInfo;if(!n||!r)return;let i=A(n,r.pmPos);if(!i)return;let s;if((0,x.isFloatingImage)(i)){let i=(c.value?.closest(`.docx-editor-vue__pages-viewport`))?.querySelectorAll(`.layout-page`);if(!i||i.length===0)return;let a=null;for(let e of i){let n=e.getBoundingClientRect();if(t>=n.top&&t<=n.bottom){a=e.querySelector(`.layout-page-content`);break}}if(!a){let e=i.item(i.length-1);a=e?e.querySelector(`.layout-page-content`):null}if(!a)return;let l=a.getBoundingClientRect(),u=o.zoom,d=(0,_.pixelsToEmu)((e-l.left)/u),f=(0,_.pixelsToEmu)((t-l.top)/u);s=(0,x.commitImageFloatMove)(n,r.pmPos,d,f)}else{let i=M();if(!i)return;let a=(0,b.clickToPositionDom)(i,e,t,1);if(a==null||a<0)return;s=(0,x.commitImageInlineMove)(n,r.pmPos,a)}s!==null&&fe(s),(0,a.nextTick)(()=>P())}function fe(e){let t=o.view;if(t)try{let n=g.NodeSelection.create(t.state.doc,e);t.dispatch(t.state.tr.setSelection(n))}catch{}}return(0,a.onBeforeUnmount)(()=>{document.removeEventListener(`mousemove`,ne),document.removeEventListener(`mouseup`,V),document.removeEventListener(`mousemove`,G),document.removeEventListener(`mouseup`,K),O&&document.removeEventListener(`mousemove`,O),k&&document.removeEventListener(`mouseup`,k),q&&=(q.remove(),null),D&&cancelAnimationFrame(D),F?.()}),(e,n)=>t.imageInfo?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,ref_key:`overlayRootRef`,ref:c,class:`image-overlay`,style:(0,a.normalizeStyle)(z.value),onMousedown:n[3]||=(0,a.withModifiers)(()=>{},[`stop`])},[n[4]||=(0,a.createElementVNode)(`div`,{class:`image-overlay__border`},null,-1),(0,a.createElementVNode)(`div`,{class:`image-overlay__body`,style:(0,a.normalizeStyle)({cursor:u.value?`grabbing`:`grab`}),onMousedown:n[0]||=(0,a.withModifiers)(e=>ue(e),[`prevent`,`stop`]),onContextmenu:n[1]||=(0,a.withModifiers)(t=>e.$emit(`context-menu`,t),[`prevent`,`stop`])},null,36),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(B.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:e.pos,class:`image-overlay__handle`,style:(0,a.normalizeStyle)(e.style),"data-handle":e.pos,onMousedown:(0,a.withModifiers)(t=>te(t,e.pos),[`prevent`,`stop`])},null,44,at))),128)),n[5]||=(0,a.createElementVNode)(`div`,{class:`image-overlay__rotate-line`},null,-1),(0,a.createElementVNode)(`div`,{class:`image-overlay__rotate-handle`,style:(0,a.normalizeStyle)({left:`${L.value/2-7}px`}),title:(0,a.unref)(i)(`imageOverlay.rotate`),onMousedown:n[2]||=(0,a.withModifiers)(e=>le(e),[`prevent`,`stop`])},null,44,Q),l.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ot,(0,a.toDisplayString)(Math.round(f.value))+` × `+(0,a.toDisplayString)(Math.round(p.value)),1)):(0,a.createCommentVNode)(``,!0),d.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,$,(0,a.toDisplayString)(Math.round(m.value))+`° `,1)):(0,a.createCommentVNode)(``,!0)],36)):(0,a.createCommentVNode)(``,!0)}}),ft=e.F(dt,[[`__scopeId`,`data-v-4c3d1a1d`]]),pt=[`title`,`aria-label`],mt=(0,a.defineComponent)({__name:`OutlineToggleButton`,props:{leftOffset:{},topPx:{default:24}},emits:[`toggle`],setup(t){let{t:n}=e.j();return(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{type:`button`,class:`docx-outline-toggle docx-editor-vue__outline-toggle`,style:(0,a.normalizeStyle)({left:t.leftOffset+`px`,top:t.topPx+`px`}),title:(0,a.unref)(n)(`editor.showDocumentOutline`),"aria-label":(0,a.unref)(n)(`editor.showDocumentOutline`),onClick:i[0]||=e=>r.$emit(`toggle`),onMousedown:i[1]||=(0,a.withModifiers)(()=>{},[`stop`])},[(0,a.createVNode)(e.P,{name:`format_list_bulleted`,size:20})],44,pt))}}),ht=(0,a.defineComponent)({__name:`PageIndicator`,props:{currentPage:{},totalPages:{},visible:{type:Boolean}},setup(t){let{t:n}=e.j();return(e,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:`docx-editor-vue__page-indicator`,style:(0,a.normalizeStyle)({opacity:+!!t.visible}),"aria-live":`polite`,role:`status`},(0,a.toDisplayString)((0,a.unref)(n)(`viewer.pageIndicator`,{current:t.currentPage,total:t.totalPages})),5))}}),gt=e.F(ht,[[`__scopeId`,`data-v-f1904974`]]),_t=[`data-folio-block-id`],vt=[`data-folio-block-id`,`title`],yt=2.5,bt=5,xt=6,St=2,Ct=2,wt=(0,a.defineComponent)({__name:`TemplateDirectivesOverlay`,props:{getView:{type:Function},getPagesContainer:{type:Function},editorState:{},zoom:{},layout:{},blocks:{},measures:{}},setup(e){let t=e,n=new Set([`if`,`each`]),r=new Set([`endif`,`endeach`]),i=e=>e===`each`?`each`:`if`;function o(e){let t=e-xt-yt-St;return t<=0?0:Math.floor(t/bt)}function s(e,t,n){let r=o(n),i=Math.min(Math.max(0,e),r);return t-xt-yt-(r-i)*bt}function c(e,t){if(t.length===0)return e.bottom-e.top>=Ct?[e]:[];let n=[];for(let r of t){let t=Math.max(e.top,r.top),i=Math.min(e.bottom,r.bottom);i-t>=Ct&&n.push({top:t,bottom:i})}return n}function l(e){let t=e.filter(e=>e.block&&(n.has(e.kind)||r.has(e.kind))).slice().sort((e,t)=>e.from-t.from),a=[],o=[];for(let e of t){if(n.has(e.kind)){o.push({range:e,depth:o.length});continue}let t=e.kind===`endif`?`if`:`each`,r,s=-1;for(let e=o.length-1;e>=0;--e){let n=o[e];if(n?.range.kind===t){r=n,s=e;break}}r&&(o.length=s,a.push({blockId:r.range.from,kind:i(r.range.kind),depth:r.depth,openerFrom:r.range.from,closerFrom:e.from,closerTo:e.to,openerExpr:r.range.expr}))}return a}function u(e,t){let n=e===`each`?`/each`:`/if`;return t?`${n} · ${t}`:n}function d(e,t){if(t===null)return null;let n=null,r=-1/0;for(let i of e)t>=i.openerFrom&&t<=i.closerTo&&i.openerFrom>r&&(r=i.openerFrom,n=i.blockId);return n}function m(e,t,n){let r=new Map(t.map(e=>[e.range.from,e])),i=[];for(let t of e){let e=r.get(t.openerFrom)?.rects[0],a=r.get(t.closerFrom)?.rects[0];if(!e||!a)continue;let o=c({top:e.y,bottom:a.y+a.height},n.pageBands);o.length!==0&&i.push({blockId:t.blockId,kind:t.kind,railX:s(t.depth,n.contentLeft,n.marginWidth),segments:o})}return i}let h=(0,a.ref)([]),g=(0,a.ref)([]),_=(0,a.ref)(null),v=(0,a.ref)(null),y=(0,a.ref)(null),b=(0,f.createLatestRequestGate)(),x=null;function S(){x!==null&&cancelAnimationFrame(x),x=requestAnimationFrame(()=>{x=null,ee()})}async function ee(){let e=b.begin(),n=t.getView(),r=t.getPagesContainer(),i=t.editorState;if(!n||!r||!i){h.value=[],g.value=[],_.value=null,v.value=null;return}let a=(0,C.getTemplateDirectives)(i);if(a.length===0){h.value=[],g.value=[],_.value=null,v.value=null;return}let o=(0,p.measureDirectiveGutter)(r,t.zoom),s=await(0,p.projectRangesToRects)(a,{pagesContainer:r,zoom:t.zoom,layout:t.layout,blocks:t.blocks,measures:t.measures});e()&&(h.value=a,v.value=i.selection.head,_.value=o,g.value=s)}(0,a.watch)(()=>[t.editorState,t.zoom,t.layout,t.blocks,t.measures],()=>S());let w=(0,a.computed)(()=>l(h.value)),T=(0,a.computed)(()=>_.value?m(w.value,g.value,_.value):[]),E=(0,a.computed)(()=>{let e=new Map;for(let t of w.value)e.set(t.openerFrom,t.blockId),e.set(t.closerFrom,t.blockId);return e}),D=(0,a.computed)(()=>{let e=new Map;for(let t of w.value)e.set(t.closerFrom,u(t.kind,t.openerExpr));return e}),O=(0,a.computed)(()=>d(w.value,v.value));function k(e){return e===y.value||e===O.value}function A(e){return e.block&&(n.has(e.kind)||r.has(e.kind))}function j(e){return e.block?E.value.get(e.from):void 0}function M(e){return e.block?D.value.get(e.from):void 0}function N(e){let t=j(e),n=t!==void 0&&k(t);return[`folio-template-directive`,`folio-template-directive--${e.kind}`,{"folio-template-directive--block":A(e)},{"folio-template-directive--active":n}]}function P(e){if(!(e instanceof HTMLElement))return null;let t=e.dataset.folioBlockId;return t===void 0?null:Number(t)}function F(e){let t=P(e.target);t!==null&&(y.value=t)}function I(e){let t=P(e.target);if(t===null)return;let n=P(e.relatedTarget);n!==t&&y.value===t&&(y.value=n)}return(0,a.onMounted)(()=>S()),(0,a.onBeforeUnmount)(()=>{b.invalidate(),x!==null&&(cancelAnimationFrame(x),x=null)}),(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:`folio-template-directives-overlay`,"data-folio-template-directives-overlay":``,onPointerover:F,onPointerout:I},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(T.value,t=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`rail:${t.blockId}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.segments,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:`rail:${t.blockId}:${r}`,class:(0,a.normalizeClass)([`folio-template-band-rail`,`folio-template-band-rail--${t.kind}`,{"folio-template-band-rail--active":k(t.blockId)}]),"data-folio-block-id":t.blockId,style:(0,a.normalizeStyle)({position:`absolute`,left:`${t.railX*e.zoom}px`,top:`${n.top*e.zoom}px`,width:`${yt*e.zoom}px`,height:`${Math.max(0,n.bottom-n.top)*e.zoom}px`})},null,14,_t))),128))],64))),128)),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(g.value,(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:`d:${n}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(t.rects,(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`span`,{key:`d:${n}:${i}`,class:(0,a.normalizeClass)(N(t.range)),"data-folio-block-id":j(t.range),title:M(t.range),style:(0,a.normalizeStyle)({position:`absolute`,left:`${(r.x-1)*e.zoom}px`,top:`${(r.y+1)*e.zoom}px`,width:`${(r.width+2)*e.zoom}px`,height:`${Math.max(0,r.height-2)*e.zoom}px`})},null,14,vt))),128))],64))),128))],32))}}),Tt=e.F(wt,[[`__scopeId`,`data-v-c72dfa21`]]),Et=[`href`,`title`],Dt=[`title`],Ot=[`title`],kt=[`title`],At={class:`docx-hyperlink-popup__edit-row`},jt=[`placeholder`,`onKeydown`],Mt={class:`docx-hyperlink-popup__edit-row`},Nt=[`onKeydown`],Pt=[`disabled`],Ft=(0,a.defineComponent)({__name:`HyperlinkPopup`,props:{data:{},readOnly:{type:Boolean}},emits:[`navigate`,`copy`,`edit`,`remove`,`close`],setup(t,{emit:n}){let{t:r}=e.j(),i=t,o=n,s=(0,a.ref)(!1),c=(0,a.ref)(``),l=(0,a.ref)(``),u=(0,a.ref)(null),d=(0,a.computed)(()=>({left:(i.data?.position.left??0)+`px`,top:(i.data?.position.top??0)+`px`}));(0,a.watch)(()=>i.data?.href,()=>{s.value=!1});let f=null,p=null;function m(){p&&=(clearTimeout(p),null),f&&=(document.removeEventListener(`mousedown`,f),null)}(0,a.watch)(()=>i.data,e=>{m(),e&&(f=e=>{let t=u.value,n=e.target;t&&n instanceof Node&&!t.contains(n)&&o(`close`)},p=setTimeout(()=>{f&&document.addEventListener(`mousedown`,f)},0))},{immediate:!0}),(0,a.onBeforeUnmount)(m);function h(){i.data&&(c.value=i.data.displayText,l.value=i.data.href,s.value=!0)}function g(){l.value.trim()&&(o(`edit`,c.value,l.value),s.value=!1)}function _(){i.data&&(o(`copy`,i.data.href),typeof navigator<`u`&&navigator.clipboard&&navigator.clipboard.writeText(i.data.href).catch(()=>{}))}return(e,n)=>t.data?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,ref_key:`popupRef`,ref:u,class:(0,a.normalizeClass)([`docx-hyperlink-popup`,{"docx-hyperlink-popup--edit":s.value}]),style:(0,a.normalizeStyle)(d.value),onMousedown:n[6]||=(0,a.withModifiers)(()=>{},[`stop`])},[s.value?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createElementVNode)(`div`,At,[(0,a.withDirectives)((0,a.createElementVNode)(`input`,{class:`docx-hyperlink-popup__input`,placeholder:(0,a.unref)(r)(`displayText`),"onUpdate:modelValue":n[2]||=e=>c.value=e,onKeydown:[(0,a.withKeys)((0,a.withModifiers)(g,[`prevent`]),[`enter`]),n[3]||=(0,a.withKeys)(t=>e.$emit(`close`),[`esc`])]},null,40,jt),[[a.vModelText,c.value]])]),(0,a.createElementVNode)(`div`,Mt,[(0,a.withDirectives)((0,a.createElementVNode)(`input`,{class:`docx-hyperlink-popup__input`,placeholder:`https://...`,"onUpdate:modelValue":n[4]||=e=>l.value=e,onKeydown:[(0,a.withKeys)((0,a.withModifiers)(g,[`prevent`]),[`enter`]),n[5]||=(0,a.withKeys)(t=>e.$emit(`close`),[`esc`])]},null,40,Nt),[[a.vModelText,l.value]]),(0,a.createElementVNode)(`button`,{class:`docx-hyperlink-popup__apply`,disabled:!l.value.trim(),onClick:(0,a.withModifiers)(g,[`prevent`])},(0,a.toDisplayString)((0,a.unref)(r)(`common.apply`)),9,Pt)])],64)):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[n[10]||=(0,a.createStaticVNode)(`<span class="docx-hyperlink-popup__icon" aria-hidden data-v-366df18c><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-366df18c><circle cx="12" cy="12" r="10" data-v-366df18c></circle><path d="M2 12h20" data-v-366df18c></path><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z" data-v-366df18c></path></svg></span>`,1),(0,a.createElementVNode)(`a`,{class:`docx-hyperlink-popup__url`,href:t.data.href,title:t.data.href,onClick:n[0]||=(0,a.withModifiers)(n=>e.$emit(`navigate`,t.data.href),[`prevent`])},(0,a.toDisplayString)(t.data.href),9,Et),n[11]||=(0,a.createElementVNode)(`span`,{class:`docx-hyperlink-popup__sep`},null,-1),(0,a.createElementVNode)(`button`,{class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`copyLink`),onClick:(0,a.withModifiers)(_,[`prevent`])},[...n[7]||=[(0,a.createElementVNode)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[(0,a.createElementVNode)(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),(0,a.createElementVNode)(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})],-1)]],8,Dt),t.readOnly?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`editLink`),onClick:(0,a.withModifiers)(h,[`prevent`])},[...n[8]||=[(0,a.createElementVNode)(`svg`,{width:`18`,height:`18`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[(0,a.createElementVNode)(`path`,{d:`M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`}),(0,a.createElementVNode)(`path`,{d:`M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z`})],-1)]],8,Ot)),t.readOnly?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:1,class:`docx-hyperlink-popup__btn`,title:(0,a.unref)(r)(`removeLink`),onClick:n[1]||=(0,a.withModifiers)(t=>e.$emit(`remove`),[`prevent`])},[...n[9]||=[(0,a.createStaticVNode)(`<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-366df18c><path d="M18.84 12.25l1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71" data-v-366df18c></path><path d="M5.17 11.75l-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71" data-v-366df18c></path><line x1="8" y1="2" x2="8" y2="5" data-v-366df18c></line><line x1="2" y1="8" x2="5" y2="8" data-v-366df18c></line><line x1="16" y1="19" x2="16" y2="22" data-v-366df18c></line><line x1="19" y1="16" x2="22" y2="16" data-v-366df18c></line></svg>`,1)]],8,kt))],64))],38)):(0,a.createCommentVNode)(``,!0)}}),It=e.F(Ft,[[`__scopeId`,`data-v-366df18c`]]);function Lt(e,t){let n=Math.max(0,Math.min(t.from,e)),r=Math.max(n,Math.min(t.to,e));return n===r?null:{from:n,to:r}}function Rt({docSize:e,capturedRange:t,currentRange:n,savedRange:r}){let i=t.from===t.to?n.from===n.to?r&&r.from!==r.to?r:null:n:t;return i?Lt(e,i):null}function zt(e,t,n,r){let i=e.state.schema.marks.comment,a=Lt(e.state.doc.content.size,t);if(!i||!a)return!1;let o=e.state.tr;return r?.replacePending&&(o=o.removeMark(a.from,a.to,i.create({commentId:E.PENDING_COMMENT_ID}))),o=o.addMark(a.from,a.to,i.create({commentId:n})),r?.selectEnd&&(o=o.setSelection(g.Selection.near(o.doc.resolve(a.to),-1))),e.dispatch(o),!0}function Bt(e,t){let n=e.state.schema.marks.comment,r=Lt(e.state.doc.content.size,t);!n||!r||e.dispatch(e.state.tr.removeMark(r.from,r.to,n.create({commentId:E.PENDING_COMMENT_ID})))}var Vt=408,Ht=12;function Ut(e){let t=(0,a.ref)(!1),n=(0,a.ref)(null),r=(0,a.ref)(null),i=(0,a.ref)(null),o=(0,a.ref)(null);function s(t){let n=e.editorView.value,r=e.pagesContainer.value;if(!n||!r)return null;try{return n.coordsAtPos(t).top-r.getBoundingClientRect().top}catch{return null}}function c(){let n=e.editorView.value,i=e.pagesViewport.value;if(!n||!i||t.value||e.readOnly.value){r.value=null;return}let{from:a,to:s}=n.state.selection;if(a===s){r.value=null;return}o.value={from:a,to:s};let c;try{c=n.coordsAtPos(a)}catch{r.value=null;return}let l=i.getBoundingClientRect(),u=e.pagesContainer.value?.getBoundingClientRect(),d=u?u.right-l.left+Ht:l.width/2+Vt;r.value={top:c.top-l.top,left:Math.max(16,Math.min(d,l.width-16)),from:a,to:s}}function l(){let a=e.editorView.value;if(!a)return;let c=r.value,l=a.state.selection,u=Rt({docSize:a.state.doc.content.size,capturedRange:c?{from:c.from,to:c.to}:{from:0,to:0},currentRange:{from:l.from,to:l.to},savedRange:o.value});if(!u){r.value=null;return}if(!zt(a,u,E.PENDING_COMMENT_ID,{selectEnd:!0})){r.value=null,i.value=null;return}i.value=u,n.value=s(u.from)??c?.top??null,e.showSidebar.value=!0,t.value=!0,r.value=null}function u(){t.value=!1,i.value=null,n.value=null}function d(t){let n=e.editorView.value,r=i.value;if(!n||!r)return!1;let a=e.createComment(t);return zt(n,r,a.id,{replacePending:!0})?(e.pushComment(a),e.reLayout(),e.setActiveSidebarItem(`comment-${a.id}`),u(),!0):!1}function f(){let t=e.editorView.value;t&&i.value&&Bt(t,i.value),u()}return{isAddingComment:t,addCommentYPosition:n,floatingCommentButton:r,updateFloatingButton:c,startAddComment:l,handleAddComment:d,handleCancelAddComment:f}}function Wt(e){let t=(0,E.createCommentIdAllocator)(),n=(0,a.ref)([]),r=(0,a.ref)(!1);function i(){r.value=!0}function o(){r.value=!1}let s=(0,a.computed)(()=>e.commentsProp()!==void 0),c=(0,a.computed)(()=>s.value?e.commentsProp()??[]:n.value);function l(t){s.value||(n.value=t),e.onCommentsChange(t)}function u(e){i(),l([...c.value,e])}function d(n,r){return(0,E.seedCommentAllocator)(t,c.value,e.editorView.value),(0,D.createComment)(t,n,e.author(),r)}function f(){if(o(),s.value)return;let n=e.getDocument()?.package.document.comments;(0,E.seedCommentAllocator)(t,n,e.editorView.value),l(n&&n.length>0?n:[])}function p(e,t){u(d(t,e))}function m(e){i(),l(c.value.map(t=>t.id===e?{...t,done:!0}:t))}function h(e){i(),l(c.value.map(t=>t.id===e?{...t,done:!1}:t))}function g(e){i(),l(c.value.filter(t=>t.id!==e&&t.parentId!==e))}function _(e,t){u(d(t,e))}function v(t,n){let r=e.editorView.value;if(!r)return;let i=(0,O.findChangeRange)(r,t);i&&(n?k.acceptChange:k.rejectChange)(i.from,i.to)(r.state,r.dispatch)}function y(e){v(e,!0)}function b(e){v(e,!1)}function x(t,n){let r=e.editorView.value;r&&(0,k.acceptChange)(t,n)(r.state,r.dispatch)}function S(t,n){let r=e.editorView.value;r&&(0,k.rejectChange)(t,n)(r.state,r.dispatch)}return{comments:c,commentsDirty:(0,a.computed)(()=>r.value),clearCommentsDirty:o,createComment:d,pushComment:u,setComments:l,seedFromDocument:f,handleReply:p,handleResolve:m,handleUnresolve:h,handleDelete:g,handleTrackedChangeReply:_,handleAcceptChangeById:y,handleRejectChangeById:b,handleAcceptChange:x,handleRejectChange:S}}function Gt(e,t,n){let r=(0,A.makeRevisionInfo)(e.state),i=e.state.schema.marks.insertion;if(!r||!i)return;let a=t.selection.from,o=a-n.nodeSize;o<0||t.addMark(o,a,i.create({revisionId:r.id,author:r.author,date:r.date}))}function Kt(e,t){let n=e.state.doc.nodeAt(t);if(!n||n.type.name!==`image`)return;let r=n.attrs.src;if(typeof r!=`string`)return;let i=`<img src="${r}" data-pm-image="true" data-width="${String(n.attrs.width??``)}" data-height="${String(n.attrs.height??``)}" data-wrap-type="${String(n.attrs.wrapType??``)}" data-display-mode="${String(n.attrs.displayMode??``)}" data-rid="${String(n.attrs.rId??``)}" />`,a=new ClipboardItem({"text/html":new Blob([i],{type:`text/html`}),"text/plain":new Blob([`[image]`],{type:`text/plain`})});navigator.clipboard.write([a]).catch(()=>{let e=document.createElement(`textarea`);e.value=i,document.body.appendChild(e),e.select(),document.execCommand(`copy`),document.body.removeChild(e)})}function qt(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{typeof r.result==`string`?t(r.result):n(Error(`Failed to read blob as data URL`))},r.onerror=()=>n(r.error??Error(`Failed to read blob`)),r.readAsDataURL(e)})}function Jt(e){return new Promise(t=>{let n=new Image;n.onload=()=>t({width:n.naturalWidth,height:n.naturalHeight}),n.onerror=()=>t({width:200,height:200}),n.src=e})}function Yt(e,t,n,r){let i=e.state.schema.nodes.image;if(!i)return;let a=i.create({src:t,width:n,height:r,rId:`rId_img_${Date.now()}`,wrapType:`inline`,displayMode:`inline`}),o=e.state.tr.replaceSelectionWith(a);Gt(e,o,a),e.dispatch(o)}async function Xt(e){try{let t=await navigator.clipboard.read();for(let n of t){let t=n.types.find(e=>e.startsWith(`image/`));if(t){let r=await qt(await n.getType(t)),i=await Jt(r),a=i.width,o=i.height;a>612&&(o=Math.round(612/a*o),a=612),Yt(e,r,a,o);return}if(n.types.includes(`text/html`)){let t=await(await n.getType(`text/html`)).text(),r=/<img[^>]+src="(?<src>[^"]+)"[^>]*>/iu.exec(t)?.groups?.src;if(r){let n=/data-width="(?<w>\d+)"/u.exec(t)?.groups?.w,i=/data-height="(?<h>\d+)"/u.exec(t)?.groups?.h,a=n?Number(n):200,o=i?Number(i):200;Yt(e,r,a||200,o||200);return}}if(n.types.includes(`text/plain`)){let t=await(await n.getType(`text/plain`)).text();if(t&&t!==`[image]`){let{from:n}=e.state.selection;e.dispatch(e.state.tr.insertText(t,n))}return}}}catch{let t=await navigator.clipboard?.readText();if(t){let{from:n}=e.state.selection;e.dispatch(e.state.tr.insertText(t,n))}}}function Zt(e,t){let n=e.state.doc.nodeAt(t);if(!n||n.type.name!==`image`)return;let r=document.createElement(`input`);r.type=`file`,r.accept=`image/*`,r.onchange=async()=>{let i=r.files?.[0];if(!i)return;let a=await qt(i),o=await Jt(a),s=n.attrs.width,c=n.attrs.height,l=typeof s==`number`?s:o.width,u=typeof c==`number`?c:o.height,d=Math.min(l/o.width,u/o.height),f=Math.round(o.width*d),p=Math.round(o.height*d);try{let r=e.state.tr.setNodeMarkup(t,void 0,{...n.attrs,src:a,width:f,height:p,rId:`rId_img_${Date.now()}`});e.dispatch(r)}catch{}},r.click()}var Qt=new Set([`inline`,`square`,`tight`,`through`,`topAndBottom`,`behind`,`inFront`]);function $t(e){return typeof e==`string`&&Qt.has(e)}function en(e){return $t(e)?e:`inline`}function tn(e){return e===`left`||e===`right`||e===`none`?e:null}function nn(t){let{t:n}=e.j(),r=(0,a.ref)({isOpen:!1,position:{x:0,y:0},hasSelection:!1,inTable:!1,onImage:!1,canMergeCells:!1,canSplitCell:!1}),i=(0,a.ref)(null),o=(0,a.ref)({from:0,to:0}),s=(0,a.computed)(()=>(t.customContextMenuItems?.()??[]).filter(e=>!e.requiresSelection||r.value.hasSelection)),c=(0,a.computed)(()=>[{action:`cut`,label:n(`contextMenu.cut`),shortcut:n(`contextMenu.cutShortcut`)},{action:`copy`,label:n(`contextMenu.copy`),shortcut:n(`contextMenu.copyShortcut`)},{action:`paste`,label:n(`contextMenu.paste`),shortcut:n(`contextMenu.pasteShortcut`),dividerAfter:!0},{action:`delete`,label:n(`contextMenu.delete`),shortcut:n(`contextMenu.deleteShortcut`)}]);function l(e,t){t(e.state,t=>e.dispatch(t),e)}function u(e,n,r,i,a){let o=i===`inline`?(0,v.captureInlinePositionEmu)(e,t.zoom.value):void 0;return{open:!0,position:r,pmPos:n,currentWrapType:i,currentCssFloat:a,...o!==void 0&&{inlinePositionEmu:o}}}function d(e){let n=t.editorView.value;if(!n)return;let a=(0,v.findImageElement)(e.target);if(a){let o=Number(a.dataset.pmStart);if(!Number.isNaN(o)){try{let e=g.NodeSelection.create(n.state.doc,o);n.dispatch(n.state.tr.setSelection(e))}catch{}t.selectedImage.value={element:a,pmPos:o,width:a.offsetWidth,height:a.offsetHeight},t.clearOverlay();let s=n.state.doc.nodeAt(o);if(s&&s.type.name===`image`){i.value=u(a,o,{x:e.clientX,y:e.clientY},en(s.attrs.wrapType),tn(s.attrs.cssFloat)),r.value.isOpen=!1;return}}}{let{from:r,to:i}=n.state.selection,a=t.resolvePos(e.clientX,e.clientY);if(a!==null&&(a<r||a>i))try{t.setPmSelection(a)}catch{}}let s=(0,T.getTableContext)(n.state),{empty:c,from:l,to:d}=n.state.selection;o.value={from:l,to:d},i.value&&=null,r.value={isOpen:!0,position:{x:e.clientX,y:e.clientY},hasSelection:!c,inTable:s.isInTable,onImage:!!a,canMergeCells:!!s.hasMultiCellSelection,canSplitCell:!!s.canSplitCell}}function f(e){let n=t.editorView.value,a=t.selectedImage.value;if(!n||!a)return;let o=n.state.doc.nodeAt(a.pmPos);!o||o.type.name!==`image`||(i.value=u(a.element,a.pmPos,{x:e.clientX,y:e.clientY},en(o.attrs.wrapType),tn(o.attrs.cssFloat)),r.value.isOpen=!1)}function p(e){let n=t.editorView.value,r=i.value;if(!n||!r)return;let a=r.inlinePositionEmu&&e!==`inline`?{initialPositionEmu:r.inlinePositionEmu}:void 0,o=t.getCommands().setImageWrapType;o&&(l(n,o(r.pmPos,e,a)),n.focus())}function m(e){let n=t.editorView.value;if(!n)return;let r=t.getCommands();if(e.startsWith(`custom:`)){let r=o.value,i=r.from===r.to?{from:n.state.selection.from,to:n.state.selection.to}:r;t.onCustomContextAction?.(e.slice(7),i),n.focus();return}switch(e){case`cut`:if(t.selectedImage.value){let e=t.selectedImage.value.pmPos;Kt(n,e);let r=n.state.doc.nodeAt(e);r&&(n.dispatch(n.state.tr.delete(e,e+r.nodeSize)),t.selectedImage.value=null)}else n.focus(),document.execCommand(`cut`);break;case`copy`:t.selectedImage.value?Kt(n,t.selectedImage.value.pmPos):(n.focus(),document.execCommand(`copy`));break;case`paste`:Xt(n);break;case`pasteAsPlainText`:navigator.clipboard.readText().then(e=>{e&&n.dispatch(n.state.tr.insertText(e).scrollIntoView())}).catch(()=>{});break;case`delete`:{let{from:e,to:t}=n.state.selection;e!==t&&n.dispatch(n.state.tr.delete(e,t));break}case`selectAll`:{let e=g.TextSelection.create(n.state.doc,0,n.state.doc.content.size);n.dispatch(n.state.tr.setSelection(e));break}case`imageProperties`:t.selectedImage.value&&(t.showImageProperties.value=!0);break;case`replaceImage`:t.selectedImage.value&&Zt(n,t.selectedImage.value.pmPos);break;case`deleteImage`:if(t.selectedImage.value){let e=t.selectedImage.value.pmPos,r=n.state.doc.nodeAt(e);r&&(n.dispatch(n.state.tr.delete(e,e+r.nodeSize)),t.selectedImage.value=null)}break;case`addRowAbove`:case`addRowBelow`:case`deleteRow`:case`addColumnLeft`:case`addColumnRight`:case`deleteColumn`:case`mergeCells`:case`splitCell`:case`selectTable`:case`deleteTable`:{let t=r[e];t&&l(n,t());break}}n.focus()}return{contextMenu:r,imageContextMenu:i,imageContextMenuTextActions:c,customTextMenuItems:s,handleContextMenu:d,handleSelectedImageContextMenu:f,handleImageWrapSelect:p,handleContextMenuAction:m}}function rn(e){async function t(t){e.sidebarAutoOpenedRef.value=!1,await e.loadDocumentBuffer(t)}function n(t){e.sidebarAutoOpenedRef.value=!1,e.loadDocument(t)}(0,a.watch)(e.documentBuffer,e=>{e&&t(e)}),(0,a.watch)(e.document,e=>{e&&n(e)}),(0,a.onMounted)(async()=>{await(0,a.nextTick)();let r=e.documentBuffer(),i=e.document();r?await t(r):i&&n(i)})}var an=Date.now();function on(e){let t=[];function n(){e.onPrint?.(),window.print()}async function r(t){let n=await e.save(t);if(!n)return null;let r=await n.arrayBuffer();return e.clearCommentsDirty(),e.onSave?.(r),r}function i(t,n){let r=e.pagesRef.value;if(!r)return!1;let i=(0,F.findParagraphFragmentsByParaId)(r,t),a=i.at(0);return a?(a.scrollIntoView({block:`center`,behavior:`smooth`}),n?.highlight&&(0,F.flashParagraphElements)(i,n.highlight),!0):!1}function a(){return e.zoom.value}let s=null;function c(){return s??={getEditor:()=>e.editor,getDocument:()=>e.editor.getDocument(),getState:()=>e.editor.getState(),getView:()=>e.editor.getView(),getHfView:()=>null,ensureView:()=>e.editor.ensureView(),focus:()=>e.editor.focus(),blur:()=>e.editor.blur(),isFocused:()=>e.editor.isFocused(),dispatch:t=>e.editor.dispatch(t),undo:()=>e.editor.undo(),redo:()=>e.editor.redo(),canUndo:()=>e.editor.canUndo(),canRedo:()=>e.editor.canRedo(),setSelection:(t,n)=>e.editor.setSelection(t,n),getLayout:()=>e.editor.getLayout(),relayout:()=>e.editor.relayout(),scrollToPosition:t=>e.scrollVisiblePositionIntoView(t),scrollToPage:d,scrollToParaId:i,getPageNumberForPmPos:t=>{let n=e.layout.value;if(!n)return null;let r=(0,j.findPageIndexContainingPmPos)(n,t);return r==null?null:r+1}},s}function l(){return e.layout.value?.pages.length??0}function u(){let t=e.layout.value,n=e.editorView.value;if(!t||!n)return 0;let r=(0,j.findPageIndexContainingPmPos)(t,n.state.selection.from);return r==null?0:r+1}function d(t){if(!Number.isInteger(t)||t<1)return;let n=e.pagesViewportRef.value,r=e.pagesRef.value?.querySelector(`[data-page-number="${t}"]`);if(!n||!r)return;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect();n.scrollTo({top:a.top-i.top+n.scrollTop-24,behavior:`smooth`})}return{exposed:{getDocument:e.getDocument,hasPendingChanges:()=>e.editorView.value?e.isDirty.value||e.commentsDirty.value:!1,getEditorRef:c,getEditor:()=>e.editor,save:r,setZoom:e.setZoom,getZoom:a,focus:e.focus,getCurrentPage:u,getTotalPages:l,scrollToPage:d,scrollToParaId:i,openPrintPreview:()=>n(),print:n,loadDocument:e.loadDocument,loadDocumentBuffer:e.loadDocumentBuffer,ensureEditorView:()=>e.editor.ensureView(),createAIEditSnapshot:()=>{let t=e.editorView.value;return t?(0,P.createFolioAIEditSnapshot)(t.state.doc):null},applyDocumentOperations:({snapshot:n,batch:r,author:i=e.author()})=>{(0,P.assertSupportedFolioDocumentOperationVersion)(r.version);let a=e.editorView.value;if(!a){let e=`committed`;r.dryRun===!0?e=`previewed`:r.atomic===!0&&(e=`rejected`);let t=r.operations.map(e=>({id:e.id,reason:`unsupportedBlock`}));return{version:P.FOLIO_DOCUMENT_OPERATION_CONTRACT_VERSION,status:e,applied:[],skipped:t,issues:(0,P.getFolioDocumentOperationIssues)(r.operations,t),receipts:[],undoHandle:null}}let o=t.at(-1);o&&(!a.state.doc.eq(o.afterState.doc)||e.getComments()!==o.commentsAfter)&&(t.length=0);let s=e.getComments(),c={state:a.state,dispatch:e=>{a.dispatch((0,ee.closeHistory)(e)),c.state=a.state}},l=(0,P.applyFolioDocumentOperations)({view:c,snapshot:n,batch:r,author:i,createCommentId:e.createAIEditComment,createUndoHandle:()=>({type:`documentOperationUndo`,id:`vue-${String(an++)}`})});return l.undoHandle!==null&&t.push({undoHandle:l.undoHandle,afterState:a.state,commentsBefore:s,commentsAfter:e.getComments()}),l},undoDocumentOperations:n=>{let r=t.findIndex(e=>e.undoHandle.type===n.type&&e.undoHandle.id===n.id);if(r===-1)return{status:`rejected`,undoHandle:n,reason:`unknownHandle`};if(r!==t.length-1)return{status:`rejected`,undoHandle:n,reason:`notLatest`};let i=t.at(-1),a=e.editorView.value;return!i||!a?{status:`rejected`,undoHandle:n,reason:`unknownHandle`}:!a.state.doc.eq(i.afterState.doc)||e.getComments()!==i.commentsAfter||!e.editor.undo()?{status:`rejected`,undoHandle:n,reason:`documentChanged`}:(e.setComments(i.commentsBefore),t.pop(),{status:`undone`,undoHandle:n})},applyAIEditOperations:({snapshot:t,operations:n,mode:r=`tracked-changes`,author:i=e.author()})=>{let a=e.editorView.value;return a?(0,P.applyFolioAIEditOperations)({view:a,snapshot:t,operations:n,mode:r,author:i,createCommentId:e.createAIEditComment}):{applied:[],skipped:n.map(e=>({id:e.id,reason:`unsupportedBlock`}))}},acceptAIEditOperation:t=>{let n=e.editorView.value;return n?(0,k.acceptAIEditRevision)(t)(n.state,n.dispatch):!1},rejectAIEditOperation:t=>{let n=e.editorView.value;return n?(0,k.rejectAIEditRevision)(t)(n.state,n.dispatch):!1},undo:()=>e.editor.undo(),redo:()=>e.editor.redo(),scrollToAIEditOperation:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,k.findAIEditRevisionRange)(n.state,t);if(!r)return!1;let{from:i,to:a}=(0,R.clampRangeToDocSize)(n.state.doc.content.size,r),o=n.state.doc.resolve(i),s=n.state.doc.resolve(a);return n.dispatch(n.state.tr.setSelection(g.TextSelection.between(o,s))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(i)),!0},scrollToBlock:(t,n)=>{let r=e.editorView.value;if(!r)return!1;let i=(0,R.resolveFolioAIBlockRange)({blockId:t,doc:r.state.doc,snapshot:n});if(i===null)return!1;let{from:a,to:o}=i,s=r.state.doc.resolve(a),c=r.state.doc.resolve(o);return r.dispatch(r.state.tr.setSelection(g.TextSelection.between(s,c))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(a)),!0},showInDocument:()=>!1,getTrackedChanges:()=>{let t=e.editorView.value;return t?(0,P.getTrackedChangesFromDoc)(t.state.doc):[]},getCommentAnchors:()=>{let t=e.editorView.value;return t?(0,P.getCommentAnchorsFromDoc)(t.state.doc):[]},getSelectionText:()=>{let t=e.editorView.value;return t?(0,o.getSelectedText)(t.state):``},getPageText:t=>{let n=e.editorView.value;return n?(0,z.getPageTextFromLayout)(e.layout.value,n.state.doc,t):null},getTargetPage:()=>null,getContentControls:(t={})=>{let n=e.editorView.value;return n?(0,I.findBlockSdtMatches)(n.state.doc,t).map(e=>({properties:(0,I.blockSdtAttrsToSdtProperties)(e.node),path:e.path,pmPos:e.pos})):[]},scrollToContentControl:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,I.findBlockSdtMatch)(n.state.doc,t);if(!r)return!1;let i=r.pos+1,a=n.state.doc.resolve(i);return n.dispatch(n.state.tr.setSelection(g.TextSelection.near(a))),requestAnimationFrame(()=>e.scrollVisiblePositionIntoView(i)),!0},setContentControlContent:(t,n,r={})=>{let i=e.editorView.value;if(!i)return!1;let a=typeof n==`string`?(0,I.setContentControlContentTr)(i.state,t,n,r):(0,L.setContentControlContentBlocksTr)(i.state,t,n,r);return a?(i.dispatch(a),!0):!1},setContentControlValue:(t,n,r={})=>{let i=e.editorView.value;if(!i)return!1;let a=(0,I.setContentControlValueTr)(i.state,t,n,r);return a?(i.dispatch(a),!0):!1},removeContentControl:(t,n={})=>{let r=e.editorView.value;if(!r)return!1;let i=(0,I.removeContentControlTr)(r.state,t,n);return i?(r.dispatch(i),!0):!1}}}}function sn(e){let t=()=>e.activeView?.value??e.editorView.value;function n(){let e=t();e&&((0,w.clearFormatting)(e.state,e.dispatch,e),e.focus())}function r(n){let r=t();if(!r)return;let i=e.getDocument(),a=i?.package?.styles;if(a){let e=(0,o.createStyleResolver)(a).resolveParagraphStyle(n),t={numbering:i?.package?.numbering?(0,te.getCachedNumberingMap)(i.package.numbering):null};e.paragraphFormatting&&(t.paragraphFormatting=e.paragraphFormatting),e.runFormatting&&(t.runFormatting=e.runFormatting),(0,B.applyStyle)(n,t)(r.state,e=>r.dispatch(e))}else(0,B.applyStyle)(n)(r.state,e=>r.dispatch(e));r.focus()}function i(){let t=e.editorView.value;t&&((0,ne.insertPageBreak)(t.state,e=>t.dispatch(e),t),t.focus())}function a(){let t=e.editorView.value;t&&((0,V.insertSectionBreakNextPage)(t.state,e=>t.dispatch(e),t),t.focus())}function s(){let t=e.editorView.value;t&&((0,V.insertSectionBreakContinuous)(t.state,e=>t.dispatch(e),t),t.focus())}function c(e){let n=t();if(!n)return;let{from:r}=n.state.selection,i=n.state.tr.insertText(e,r);n.dispatch(i.scrollIntoView()),n.focus()}return{handleClearFormatting:n,handleApplyStyle:r,handleInsertPageBreak:i,handleInsertSectionBreakNextPage:a,handleInsertSectionBreakContinuous:s,handleInsertSymbol:c}}function cn(e){let t=(0,a.ref)(null);function n(e,t){t(e.state,t=>e.dispatch(t),e)}function r(t){let r=e.editorView.value;if(!r)return;let i=e.getCommands(),{empty:a}=r.state.selection,o=t.bookmark?`#${t.bookmark}`:t.url;if(o){if(a&&t.displayText){let e=i.insertHyperlink;e&&n(r,e(t.displayText,o,t.tooltip||void 0))}else{let e=i.setHyperlink;e&&n(r,e(o,t.tooltip||void 0))}r.focus()}}function i(){let t=e.editorView.value;if(!t)return;let r=e.getCommands().removeHyperlink;r&&n(t,r()),t.focus()}function o(e){window.open(e,`_blank`,`noopener,noreferrer`),t.value=null}function s(n,r){let i=e.editorView.value;i&&((0,H.editHyperlinkAtCursor)(i,{displayText:n,href:r}),t.value=null,i.focus())}function c(){let n=e.editorView.value;n&&((0,H.removeHyperlinkAtCursor)(n,{popupHref:t.value?.href}),t.value=null,n.focus())}return{hyperlinkPopupData:t,handleHyperlinkSubmit:r,handleHyperlinkRemove:i,handleHyperlinkPopupNavigate:o,handleHyperlinkPopupEdit:s,handleHyperlinkPopupRemove:c}}function ln(e){let t=(0,a.shallowRef)(null),n=(0,a.ref)(!1),r=(0,a.computed)(()=>{e.stateTick.value;let n=e.editorView.value,r=t.value;if(!n||!r)return null;let i=n.state.doc.nodeAt(r.pmPos);if(!i||i.type.name!==`image`)return null;let a=i.attrs.wrapType,o=i.attrs.displayMode,s=i.attrs.cssFloat;return{wrapType:typeof a==`string`?a:`inline`,displayMode:typeof o==`string`?o:`inline`,cssFloat:typeof s==`string`?s:null}});function i(e,t){t(e.state,t=>e.dispatch(t),e)}function o(n){let r=e.editorView.value,a=t.value;if(!r||!a)return;let o=(0,v.toolbarValueToLayoutTarget)(n);if(!o)return;let s=r.state.doc.nodeAt(a.pmPos)?.attrs.wrapType===`inline`&&o!==`inline`?{initialPositionEmu:(0,v.captureInlinePositionEmu)(a.element,e.zoom.value)}:void 0,c=e.getCommands().setImageWrapType;c&&(i(r,c(a.pmPos,o,s)),r.focus())}function s(n){let r=e.editorView.value,i=t.value;if(!r||!i)return;let a=r.state.doc.nodeAt(i.pmPos);if(!a||a.type.name!==`image`)return;let o=a.attrs.transform,s=typeof o==`string`?o:``,c=/rotate\((?<deg>-?\d+(?:\.\d+)?)deg\)/u.exec(s)?.groups?.deg,l=c?Number.parseFloat(c):0,u=/scaleX\(-1\)/u.test(s),d=/scaleY\(-1\)/u.test(s);n===`rotateCW`?l=(l+90)%360:n===`rotateCCW`?l=(l-90+360)%360:n===`flipH`?u=!u:n===`flipV`&&(d=!d);let f=[];l!==0&&f.push(`rotate(${l}deg)`),u&&f.push(`scaleX(-1)`),d&&f.push(`scaleY(-1)`);let p=f.length>0?f.join(` `):null,m=r.state.tr.setNodeMarkup(i.pmPos,void 0,{...a.attrs,transform:p});r.dispatch(m.scrollIntoView()),r.focus()}return{selectedImage:t,imageInteracting:n,imageToolbarContext:r,handleToolbarImageWrap:o,handleImageTransform:s}}function un(e){function t(t){if(t.key===`F1`){t.preventDefault(),e.showKeyboardShortcuts.value=!0;return}if(e.handleZoomKeyDown(t),t.ctrlKey||t.metaKey){if(t.key===`o`){if(!e.showFileOpen?.()||!e.onOpenDocument)return;t.preventDefault(),e.onOpenDocument();return}e.disableFindReplaceShortcuts?.()&&(t.key===`f`||t.key===`h`)||(t.key===`f`||t.key===`h`?(t.preventDefault(),e.showFindReplace.value=!0):t.key===`k`?(t.preventDefault(),e.showHyperlink.value=!0):t.key===`/`&&(t.preventDefault(),e.showKeyboardShortcuts.value=!e.showKeyboardShortcuts.value))}}return(0,a.onMounted)(()=>window.addEventListener(`keydown`,t)),(0,a.onBeforeUnmount)(()=>window.removeEventListener(`keydown`,t)),{handleKeyDown:t}}function dn(e){function t(){let t=e.editorView.value;t&&(e.outlineHeadings.value=(0,re.collectHeadings)(t.state.doc))}function n(){e.showOutline.value||t(),e.showOutline.value=!e.showOutline.value}function r(){e.showOutline.value&&t()}function i(t){let n=e.editorView.value;if(!n)return;let r=n.state.doc.resolve(Math.min(t+1,n.state.doc.content.size)),i=g.TextSelection.near(r);n.dispatch(n.state.tr.setSelection(i)),e.scrollToVisiblePosition(t),n.focus()}function a(){e.showSidebar.value||e.extractCommentsAndChanges(),e.showSidebar.value=!e.showSidebar.value}function o(t){let n=t.target;n instanceof HTMLElement&&(n.closest(`.paged-editor__pages`)||n.closest(`.unified-sidebar`)||n.closest(`.docx-comment-margin-markers`)||(e.activeSidebarItem.value=null))}return{handleToggleOutline:n,handleOutlineNavigate:i,handleToggleSidebar:a,handleEditorScrollMouseDown:o,recomputeHeadingsIfOpen:r}}function fn(e){function t(t){let n=e.getDocument();if(!n?.package?.document)return;let r=n.package.document.finalSectionProperties??{};n.package.document.finalSectionProperties={...r,...t},e.stateTick.value++,e.reLayout(),e.onChange(n)}function n(n,r){e.readOnly.value||t({[n]:r})}function r(e){n(`marginLeft`,e)}function i(e){n(`marginRight`,e)}function a(e){n(`marginTop`,e)}function o(e){n(`marginBottom`,e)}function s(t){let n=e.editorView.value;n&&(0,B.setIndentLeft)(t)(n.state,n.dispatch)}function c(t){let n=e.editorView.value;n&&(0,B.setIndentRight)(t)(n.state,n.dispatch)}function l(t){let n=e.editorView.value;n&&(t<0?(0,B.setIndentFirstLine)(-t,!0)(n.state,n.dispatch):(0,B.setIndentFirstLine)(t,!1)(n.state,n.dispatch))}function u(t){let n=e.editorView.value;n&&(0,B.removeTabStop)(t)(n.state,n.dispatch)}return{handlePageSetupApply:t,handleLeftMarginChange:r,handleRightMarginChange:i,handleTopMarginChange:a,handleBottomMarginChange:o,handleIndentLeftChange:s,handleIndentRightChange:c,handleFirstLineIndentChange:l,handleTabStopRemove:u}}var pn=/[\p{L}\p{N}\p{M}_''-]/u,mn=/\s/;function hn(e){return!e||e.length===0?!1:pn.test(e)}function gn(e){return!e||e.length===0?!1:mn.test(e)}function _n(e,t){if(!e||e.length===0)return[0,0];t=Math.max(0,Math.min(t,e.length-1));let n=e[t];if(gn(n)){let n=t,r=t;for(;n>0&&gn(e[n-1]);)n--;for(;r<e.length&&gn(e[r]);)r++;return[n,r]}if(hn(n)){let n=t,r=t;for(;n>0&&hn(e[n-1]);)n--;for(;r<e.length&&hn(e[r]);)r++;return[n,r]}return[t,t+1]}function vn(e,t,n){let r=n?Array.from(e.querySelectorAll(`.layout-page-${n} span[data-pm-start][data-pm-end]`)):(0,S.findBodyPmSpans)(e);for(let e of r){let n=Number(e.dataset.pmStart),r=Number(e.dataset.pmEnd);if(!Number.isNaN(n)&&!Number.isNaN(r)&&t>=n&&t<=r)return e}return null}function yn(e,t,n){if(!e||!t)return;let r=(0,S.findBodyPmAnchor)(e,n);if(!r)for(let t of(0,S.findBodyPmSpans)(e)){let e=Number(t.dataset.pmStart),i=Number(t.dataset.pmEnd);if(Number.isFinite(e)&&Number.isFinite(i)&&n>=e&&n<=i){r=t;break}}if(!r)return;let i=t.getBoundingClientRect(),a=r.getBoundingClientRect();t.scrollTo({top:a.top-i.top+t.scrollTop-48,behavior:`smooth`})}function bn(e,t,n,r){if(!e||!t)return null;let i=(0,b.clickToPositionDom)(e,n,r,1);return i===null||i<0?null:Math.min(i,t.state.doc.content.size)}function xn(e,t,n,r){if(!e)return;let i=vn(e,t,r);if(!i)return;let a=i.textContent??``,o=Number(i.dataset.pmStart)||0,[s,c]=_n(a,t-o),l=o+s,u=o+c;l<u&&n(l,u)}function Sn(e,t,n,r){if(!e)return;let i=vn(e,t,r);if(!i)return;let a=i.closest(`.layout-paragraph`);if(!a)return;let o=Number(a.dataset.pmStart),s=Number(a.dataset.pmEnd);!Number.isNaN(o)&&!Number.isNaN(s)&&o<s&&n(o,s)}var Cn=500;function wn(e){let t=(0,a.ref)(null),n=null;function i(){n!==null&&(clearTimeout(n),n=null)}let o=(0,a.shallowRef)(null),s=0,c=null,l=0,u=!1,d=null,f=(0,ae.createCellDragTracker)(),p=r.i({pagesContainer:e.pagesRef,onScrollExtendSelection:(e,t)=>{if(!u||d===null)return;let n=_(e,t);n!==null&&n!==d&&b(d,n)}}),m=(0,a.ref)({currentPage:1,totalPages:1,visible:!1}),h=null;function _(t,n){return bn(e.pagesRef.value,e.editorView.value,t,n)}function y(){let t=o.value;if(t?.headerFooter&&e.getHfPmView){let n=e.getHfPmView(t.headerFooter);if(n)return n}return e.editorView.value}function b(e,t){let n=y();if(n)try{let r=n.state.doc.resolve(e),i=t===void 0?r:n.state.doc.resolve(t),a=g.TextSelection.between(r,i);n.dispatch(n.state.tr.setSelection(a))}catch{}}function x(t){yn(e.pagesRef.value,e.pagesViewportRef.value,t)}function S(t){xn(e.pagesRef.value,t,b,o.value?.position)}function C(t){Sn(e.pagesRef.value,t,b,o.value?.position)}function ee(t){let n=e.editorView.value;if(!n)return;let r=null;if(n.state.doc.descendants((e,n)=>{if(r!==null)return!1;let i=e.attrs.bookmarks;if(Array.isArray(i)){let e=i;for(let i of e)if(typeof i==`object`&&i&&`name`in i&&i.name===t)return r=n,!1}return!0}),r!==null){x(r);try{b(Math.min(r+1,n.state.doc.content.size))}catch{b(r)}}}function w(r){if(e.readOnly.value||u)return;let a=e.pagesRef.value;if(!a)return;let s=e.pagesViewportRef.value;if(!s||!(r.target instanceof HTMLElement))return;let c=(0,ie.detectTableInsertHover)({mouseX:r.clientX,mouseY:r.clientY,pagesContainer:a,target:r.target,hfEditMode:o.value?.position??null});if(!c){n===null&&(n=setTimeout(()=>{t.value=null,n=null},ie.TABLE_INSERT_HIDE_DELAY_MS));return}let l=e.zoom.value||1,d=s.getBoundingClientRect();t.value={type:c.type,x:(c.clientX-d.left)/l,y:(c.clientY-d.top)/l,cellPmPos:c.cellPmPos},i()}function T(n){n.preventDefault(),n.stopPropagation();let r=t.value,i=e.editorView.value;if(!r||!i)return;let a=i.state.tr.setSelection(g.TextSelection.create(i.state.doc,r.cellPmPos+1));i.dispatch(a);let o=e.getCommands(),s=r.type===`row`?o.addRowBelow:o.addColumnRight;s&&(s()(i.state,e=>i.dispatch(e),i),t.value=null,i.focus())}function E(t){let n=t.target,r=n instanceof HTMLElement?n.closest(`a[href]`):null;if(!r)return;t.preventDefault();let i=r.getAttribute(`href`)??``;if(i.startsWith(`#`)){let e=i.slice(1);e&&ee(e);return}let a=y();if(a&&a.state.selection.from!==a.state.selection.to)return;let o=e.pagesViewportRef.value;if(!o)return;let s=o.getBoundingClientRect(),c=r.getBoundingClientRect(),l=r.getAttribute(`title`);e.hyperlinkPopupData.value={href:i,displayText:r.textContent??``,position:{top:c.bottom-s.top+o.scrollTop+4,left:c.left-s.left+o.scrollLeft},...l?{tooltip:l}:{}}}function D(t){if(!(t.target instanceof HTMLElement))return;let n=t.target,r=n.closest(`.layout-page-header`),i=n.closest(`.layout-page-footer`),a=r??i;if(!a)return;let s=r?`header`:`footer`,c=e.getDocument();if(!c?.package)return;let l=c.package.document?.sections?.[0]?.properties??c.package.document?.finalSectionProperties??null,u=s===`header`?l?.headerReferences:l?.footerReferences,d=s===`header`?c.package.headers:c.package.footers,f=(u?.find(e=>e.type==="default")??u?.find(e=>e.type===`first`)??null)?.rId??null,p=f?d?.get(f)??null:null;if(!p){if(!l)return;let t=`default`,n=`rId_new_${s}_${t}`,r={type:s,hdrFtrType:t,content:[{type:`paragraph`,content:[]}]},i=s===`header`?`headers`:`footers`,a=s===`header`?`headerReferences`:`footerReferences`,o=new Map(c.package[i]??[]);o.set(n,r);let u=c.package.relationships,d=new Set;for(let e of u?.values()??[])e.target&&d.add(e.target);let m=1;for(;d.has(`${s}${m}.xml`);)m++;let h=s===`header`?`http://schemas.openxmlformats.org/officeDocument/2006/relationships/header`:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer`,g=new Map(u);g.set(n,{id:n,type:h,target:`${s}${m}.xml`});let _={type:t,rId:n},v={...l,[a]:[...l[a]??[],_]},y=c.package.document,b=y?.sections?.map((e,t)=>t===0?{...e,properties:v}:e),x=y?.finalSectionProperties===l?v:y?.finalSectionProperties,S={...c,package:{...c.package,[i]:o,relationships:g,document:y&&{...y,...b!==void 0&&{sections:b},...x!==void 0&&{finalSectionProperties:x}}}};f=n,p=r,e.setDocument?.(S),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,S)}let m=e.pagesViewportRef.value;if(!m)return;let h=a.getBoundingClientRect(),g=m.getBoundingClientRect(),_=e.zoom.value||1;o.value={position:s,rId:f,headerFooter:p,targetRect:{top:(h.top-g.top+m.scrollTop)/_,left:(h.left-g.left+m.scrollLeft)/_,width:h.width/_,height:h.height/_}}}function O(t){let n=e.getDocument(),r=o.value;if(!n?.package||!r)return;let i=r.position===`header`?n.package.headers:n.package.footers;if(!i||!r.rId)return;let a=i.get(r.rId);a&&(a.content=t),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,n)}function k(){let t=e.getDocument(),n=o.value;if(!t?.package||!n||!n.rId){o.value=null;return}let r=n.position===`header`?`headers`:`footers`,i=n.position===`header`?`headerReferences`:`footerReferences`,a=n.rId,s=new Map(t.package[r]??[]);s.delete(a);let c=e=>({...e,[i]:(e[i]??[]).filter(e=>e.rId!==a)}),l=e=>`sectionProperties`in e&&e.sectionProperties?{...e,sectionProperties:c(e.sectionProperties)}:e,u=t.package.document,d=u?.sections?.map(e=>({...e,properties:c(e.properties)})),f=u?.finalSectionProperties?c(u.finalSectionProperties):void 0,p={...t,package:{...t.package,[r]:s,document:u&&{...u,content:u.content.map(l),...d!==void 0&&{sections:d},...f!==void 0&&{finalSectionProperties:f}}}};o.value=null,e.setDocument?.(p),e.syncHfPMs?.(),e.reLayout(),e.emit(`change`,p)}function A(t){if(t.button!==0||e.imageInteracting.value)return;let n=e.editorView.value;if(!n)return;let r=t.target,i=r instanceof HTMLElement?r:null;o.value&&i&&(i.closest(`.layout-page-header`)||i.closest(`.layout-page-footer`)||i.closest(`.hf-editor`)||(o.value=null,n.focus()));let a=y()??n;if(!e.readOnly.value&&e.tableResize.tryStartResize(t,a))return;let p=(0,v.findImageElement)(r);if(p){t.preventDefault(),t.stopPropagation();let n=Number(p.dataset.pmStart);if(!Number.isNaN(n)){try{a.dispatch(a.state.tr.setSelection(g.NodeSelection.create(a.state.doc,n)))}catch{}e.selectedImage.value={element:p,pmPos:n,width:p.offsetWidth,height:p.offsetHeight},e.clearOverlay()}a.focus();return}e.selectedImage.value=null,t.preventDefault();let m=_(t.clientX,t.clientY);if(m===null){a.focus();return}let h=Date.now();if(h-s<Cn&&c===m?l++:l=1,s=h,c=m,l===2)S(m);else if(l>=3)C(m),l=0;else if(t.shiftKey){let{from:e}=a.state.selection;b(e,m)}else b(m),d=m,u=!0,f.begin((0,ae.findCellPosFromPmPos)(a,m));a.focus()}function j(e){if(!u||d===null)return;let t=_(e.clientX,e.clientY);if(t!==null){let n=y();if(n&&f.update(n,t,e.clientX)){p.updateMousePosition(e.clientX,e.clientY);return}t!==d&&b(d,t)}p.updateMousePosition(e.clientX,e.clientY)}function M(){u=!1,f.end(),p.stopAutoScroll()}function N(){let t=e.pagesViewportRef.value,n=e.layout.value;if(!t||!n||n.pages.length===0)return;let r=t.scrollTop,i=n.pages.length,a=r+t.clientHeight/2,o=24,s=1;for(let e=0;e<n.pages.length;e++){let t=n.pages[e];if(!t)continue;let r=o+t.size.h;if(a<r){s=e+1;break}o=r+24,s=e+2}s=Math.min(s,i),m.value={currentPage:s,totalPages:i,visible:!0},h&&clearTimeout(h),h=setTimeout(()=>{m.value={...m.value,visible:!1}},600)}return(0,a.onMounted)(()=>{window.addEventListener(`mousemove`,j),window.addEventListener(`mouseup`,M),e.pagesViewportRef.value?.addEventListener(`scroll`,N,{passive:!0})}),(0,a.onBeforeUnmount)(()=>{i(),window.removeEventListener(`mousemove`,j),window.removeEventListener(`mouseup`,M),e.pagesViewportRef.value?.removeEventListener(`scroll`,N),h&&clearTimeout(h)}),{tableInsertButton:t,hfEdit:o,scrollPageInfo:m,resolvePos:_,setPmSelection:b,scrollVisiblePositionIntoView:x,navigateToBookmark:ee,handlePagesMouseDown:A,handlePagesMouseMove:w,handlePagesClick:E,handlePagesDoubleClick:D,handleTableInsertClick:T,clearTableInsertTimer:i,handleHfSave:O,handleHfRemove:k}}function Tn(e){return typeof e==`string`&&e.trim().length>0}function En(e){return typeof e!=`object`||!e?!1:Tn(Reflect.get(e,`family`))&&Tn(Reflect.get(e,`src`))}function Dn(e){if(!e)return[];let t=[];for(let n of e){if(!En(n))continue;let e={display:`swap`};(typeof n.weight==`number`||typeof n.weight==`string`)&&(e.weight=String(n.weight)),t.push({family:n.family.trim(),source:`url(${JSON.stringify(n.src.trim())})`,descriptors:e})}return t}function On(){return typeof document>`u`||!(`fonts`in document)?null:document.fonts}async function kn(e,t,n,r){let i;try{i=new FontFace(t,n,r),e.add(i)}catch{return null}return await i.load().then(()=>!0,()=>!1)?i:(e.delete(i),null)}async function An(e){let t=On();if(!t)return[];let n=Dn(e);if(n.length===0)return[];let r=[];return await Promise.all(n.map(async({family:e,source:n,descriptors:i})=>{let a=await kn(t,e,n,i);a&&r.push(a)})),r}function jn(e){let t=On();if(t)for(let n of e)t.delete(n)}var Mn={class:`docx-editor-vue__toolbar-shell`},Nn={key:0,class:`docx-editor-vue__error`},Pn={key:1,class:`docx-editor-vue__loading`},Fn={key:2,class:`docx-editor-vue__placeholder`},In={class:`docx-editor-vue__editor-area`},Ln={key:0,class:`docx-editor-vue__ruler-h`},Rn={key:1,class:`docx-editor-vue__ruler-v`},zn={class:`docx-editor-vue__editor-content-wrapper`,style:{position:`relative`,display:`flex`,flexDirection:`column`,minHeight:`100%`}},Bn={"data-testid":`selection-overlay`,class:`docx-editor-vue__decoration-origin`,"aria-hidden":`true`},Vn=[`aria-label`],Hn=(0,a.defineComponent)({__name:`DocxEditor`,props:{documentBuffer:{default:null},password:{},document:{default:null},documentKey:{},onSave:{},author:{default:`User`},onChange:{},onSelectionChange:{},onSelectionTextChange:{},onError:{},onFontsLoaded:{},fontFamilies:{},fonts:{},theme:{},showToolbar:{type:Boolean,default:!0},showZoomControl:{type:Boolean,default:!0},showReviewControls:{type:Boolean,default:!0},showHeaderFooterEditing:{type:Boolean},showMarginGuides:{type:Boolean},marginGuideColor:{},showRuler:{type:Boolean},rulerUnit:{},initialZoom:{default:1},enableWheelZoom:{type:Boolean},readOnly:{type:Boolean,default:!1},autoOpenReviewSidebar:{type:Boolean},components:{},toolbarExtra:{type:[Object,String,Number,Boolean,null,Array]},className:{default:``},style:{},placeholder:{type:[Object,String,Number,Boolean,null,Array]},loadingIndicator:{type:[Object,String,Number,Boolean,null,Array]},preserveDocumentWhileLoading:{type:Boolean},initialScrollTop:{},onScrollTopChange:{},showOutline:{type:Boolean,default:!1},showPrintButton:{type:Boolean},onPrint:{},onInsertImage:{},onInsertTable:{},showTableInsert:{type:Boolean,default:!0},onInsertPageBreak:{},onInsertTOC:{},onCopy:{},onCut:{},onPaste:{},mode:{default:`editing`},onModeChange:{},onReadonlyEditAttempt:{},comments:{},onCommentsChange:{},onCompatibilityChange:{},onEditorViewReady:{},collaboration:{},onAnonymizationMatchesChange:{},onAnonymizationTermClick:{},selectedAnonymizationCanonical:{},anonymizationSelectionSeq:{},showTemplateDirectives:{type:Boolean},onSlashMenuChange:{},onSlashMenuKeyAction:{},customContextMenuItems:{},onCustomContextAction:{},featureFlags:{},onSelectiveSaveTripwire:{}},emits:[`change`,`update:document`,`error`,`ready`,`rename`,`menu-action`,`mode-change`,`comments-change`],setup(n,{expose:i,emit:f}){let p=n,m=f;e.A(),e._(p.components),je((0,a.ref)(!1));let h=(0,a.ref)(p.mode),g=(0,a.computed)(()=>p.readOnly||h.value===`viewing`),_=(0,a.computed)(()=>p.showReviewControls),v=(0,a.computed)(()=>(0,y.isTrackChangesMode)(h.value)),b=(0,a.ref)(`all-markup`);function x(){Ft((0,y.toggledTrackChangesMode)(h.value))}function S(e){b.value=e}let C=(0,a.computed)(()=>b.value===`all-markup`?``:`folio-root--${b.value}`),{t:ee}=e.j(),w=({node:e})=>e;w.props=[`node`];let T=(0,a.computed)(()=>p.documentBuffer!=null||p.document!=null),E=(0,a.ref)(!1);(0,a.watch)(T,e=>{e||(E.value=!1)});let D=(0,a.ref)(null),O=(0,a.ref)(null),k=(0,a.ref)(null),A=(0,a.ref)(null),j=(0,a.computed)(()=>p.showRuler??!1),M=(0,a.ref)(0),N=(0,a.ref)(!1),P=(0,a.ref)(!1),F=(0,a.ref)(!1),I=(0,a.ref)(!1),L=(0,a.ref)(!1),R=(0,a.ref)(!1),z=(0,a.ref)(p.showOutline),B=(0,a.ref)(!1),te=(0,a.ref)(null),ne=(0,a.shallowRef)([]),V=(0,a.shallowRef)([]),{zoom:H,zoomPercent:re,isMinZoom:ie,isMaxZoom:ae,setZoom:U,zoomIn:W,zoomOut:oe,handleWheel:se,handleKeyDown:ce,ZOOM_PRESETS:le}=r.t(p.initialZoom);function G(e){p.enableWheelZoom!==!1&&se(e)}un({showKeyboardShortcuts:F,showFindReplace:N,showHyperlink:P,handleZoomKeyDown:ce});let{editor:K,editorView:q,editorState:ue,isReady:de,isDirty:fe,parseError:pe,layout:me,blocks:he,measures:J,loadBuffer:ge,loadDocument:_e,save:ve,getDocument:Y,getCommands:be,focus:xe,reLayout:Se}=r.a({hiddenContainer:D,pagesContainer:O,readOnly:g,editorMode:h,author:()=>p.author,password:()=>p.password,documentKey:()=>p.documentKey,externalPlugins:[],onAnonymizationMatchesChange:e=>p.onAnonymizationMatchesChange?.(e),showTemplateDirectives:()=>p.showTemplateDirectives,onSlashMenuChange:e=>p.onSlashMenuChange?.(e),onSlashMenuKeyAction:e=>p.onSlashMenuKeyAction?.(e)??!1,onChange:e=>{p.onChange?.(e),m(`change`,e),m(`update:document`,e)},onError:e=>{p.onError?.(e),m(`error`,e)},onSelectionUpdate:e=>{if(p.onSelectionChange?.((0,o.extractSelectionState)(e)),p.onSelectionTextChange){let{from:t,to:n}=e.selection,r=t===n?``:e.doc.textBetween(t,n,` `,` `);p.onSelectionTextChange({from:t,to:n,text:r})}},onEditorViewReady:e=>p.onEditorViewReady?.(e),onReadOnlyEditAttempt:()=>p.onReadonlyEditAttempt?.(),featureFlags:()=>p.featureFlags,onSelectiveSaveTripwire:p.onSelectiveSaveTripwire?e=>p.onSelectiveSaveTripwire?.(e):void 0}),Te=(0,a.computed)(()=>!de.value&&T.value&&!(p.preserveDocumentWhileLoading===!0&&E.value));function Ee(){q.value&&((0,l.resetCanvasContext)(),(0,l.clearAllCaches)(),Se())}(0,a.watch)(()=>p.fonts,(e,t,n)=>{if(!e||e.length===0)return;let r=!1,i=[];An(e).then(e=>{if(r){jn(e);return}i=e,e.length!==0&&Ee()}),n(()=>{r=!0,i.length!==0&&(jn(i),Ee())})},{immediate:!0});let{selectedImage:De,imageInteracting:Oe,imageToolbarContext:Ae,handleToolbarImageWrap:Me,handleImageTransform:Ne}=ln({editorView:q,zoom:H,stateTick:M,getCommands:be}),{hyperlinkPopupData:Pe,handleHyperlinkSubmit:Fe,handleHyperlinkRemove:Ie,handleHyperlinkPopupNavigate:Le,handleHyperlinkPopupEdit:Re,handleHyperlinkPopupRemove:ze}=cn({editorView:q,getCommands:be}),Be=r.r(),{tableInsertButton:Ve,scrollPageInfo:He,resolvePos:Ue,setPmSelection:We,scrollVisiblePositionIntoView:Ge,handlePagesMouseDown:Ke,handlePagesMouseMove:X,handlePagesClick:qe,handleTableInsertClick:Je}=wn({editorView:q,pagesRef:O,pagesViewportRef:k,selectedImage:De,imageInteracting:Oe,hyperlinkPopupData:Pe,readOnly:g,zoom:H,layout:me,tableResize:{tryStartResize:Be.tryStartResize,isResizing:(0,a.computed)(()=>Be.isResizing())},getCommands:be,getDocument:Y,reLayout:Se,emit:()=>{},clearOverlay:()=>{}}),Z=dn({editorView:q,showOutline:z,showSidebar:B,outlineHeadings:V,activeSidebarItem:te,extractCommentsAndChanges:()=>{},scrollToVisiblePosition:Ge}),{contextMenu:Ye,imageContextMenu:Xe,imageContextMenuTextActions:Ze,customTextMenuItems:Qe,handleContextMenu:$e,handleSelectedImageContextMenu:et,handleImageWrapSelect:tt,handleContextMenuAction:nt}=nn({editorView:q,selectedImage:De,zoom:H,showImageProperties:L,getCommands:be,clearOverlay:()=>{},setPmSelection:We,resolvePos:Ue,customContextMenuItems:()=>g.value?void 0:p.customContextMenuItems,onCustomContextAction:(e,t)=>p.onCustomContextAction?.(e,t)}),it=r.n(q,M),at=(0,a.computed)(()=>it.value.entries),Q=Wt({editorView:q,getDocument:Y,author:()=>p.author,commentsProp:()=>p.comments,onCommentsChange:e=>{p.onCommentsChange?.(e),m(`comments-change`,e)},reLayout:Se}),ot=Q.comments,$=Ut({editorView:q,pagesViewport:k,pagesContainer:O,readOnly:g,createComment:Q.createComment,pushComment:Q.pushComment,reLayout:Se,showSidebar:B,setActiveSidebarItem:e=>{te.value=e}});function st(e){navigator.clipboard?.writeText(e),Pe.value=null}let ct=(0,a.computed)(()=>{M.value;let e=Y()?.package.document;return e?e.finalSectionProperties??e.sections?.[0]?.properties??null:null}),lt=(0,a.computed)(()=>{M.value;let e={};p.fontFamilies!==void 0&&(e.fontFamilies=p.fontFamilies);let t=Y()?.package.styles?.styles;return t!==void 0&&(e.documentStyles=t),e}),ut=(0,a.computed)(()=>(0,d.twipsToPixels)(ct.value?.pageWidth??12240)*H.value),dt=(0,a.computed)(()=>{let e=new Set;for(let t of ot.value)t.done&&e.add(t.id);return e}),pt=(0,a.computed)(()=>({transform:H.value===1?void 0:`scale(${H.value})`,transformOrigin:`top center`,transition:`transform 0.2s ease`})),{handleApplyStyle:ht,handleInsertSymbol:_t,handleInsertSectionBreakNextPage:vt,handleInsertSectionBreakContinuous:yt}=sn({editorView:q,getDocument:Y});function bt(){if(p.onInsertImage){p.onInsertImage();return}let e=q.value;if(!e)return;let t=document.createElement(`input`);t.type=`file`,t.accept=`image/*`,t.style.display=`none`,t.addEventListener(`change`,()=>{let n=t.files?.[0];n&&(0,o.insertImageFromFile)(e,n,()=>e.focus()),t.remove()}),document.body.appendChild(t),t.click()}function xt(e,t){if(p.onInsertTable){p.onInsertTable(e,t);return}let n=q.value;n&&((0,o.insertTableInView)(n,e,t),n.focus())}function St(){if(p.onInsertPageBreak){p.onInsertPageBreak();return}let e=q.value;e&&((0,o.insertPageBreakInView)(e),e.focus())}function Ct(){if(p.onInsertTOC){p.onInsertTOC();return}let e=q.value;e&&((0,o.insertTableOfContentsInView)(e),e.focus())}let{handlePageSetupApply:wt,handleLeftMarginChange:Et,handleRightMarginChange:Dt,handleTopMarginChange:Ot,handleBottomMarginChange:kt,handleIndentLeftChange:At,handleIndentRightChange:jt,handleFirstLineIndentChange:Mt,handleTabStopRemove:Nt}=fn({editorView:q,getDocument:Y,readOnly:g,stateTick:M,reLayout:Se,onChange:e=>{p.onChange?.(e),m(`change`,e),m(`update:document`,e)}}),Pt=(0,a.computed)(()=>{M.value;let e=q.value,t=e?(0,s.extractSelectionContext)(e.state).paragraphFormatting:{};return{indentLeft:t.indentLeft??0,indentRight:t.indentRight??0,firstLineIndent:t.indentFirstLine??0,hangingIndent:t.hangingIndent??!1,tabs:t.tabs??null}});function Ft(e){h.value!==e&&(h.value=e,p.onModeChange?.(e),m(`mode-change`,e))}function Lt(e){switch(e){case`find`:case`findReplace`:N.value=!0;break;case`insertSymbol`:I.value=!0;break;case`insertHyperlink`:P.value=!0;break;case`pageSetup`:R.value=!0;break;case`toggleOutline`:Z.handleToggleOutline();break;case`toggleSidebar`:B.value=!B.value;break;case`insertImage`:bt();break;case`insertPageBreak`:St();break;case`insertSectionBreakNextPage`:vt();break;case`insertSectionBreakContinuous`:yt();break;case`insertTOC`:Ct();break;default:break}m(`menu-action`,e)}function Rt(e,t){xt(e,t)}let zt=(0,a.ref)(!1);rn({documentBuffer:()=>p.documentBuffer??null,document:()=>p.document??null,loadDocumentBuffer:ge,loadDocument:_e,sidebarAutoOpenedRef:zt}),(0,a.watch)(()=>p.mode,e=>{e&&e!==h.value&&(h.value=e)}),(0,a.watch)(()=>p.showOutline,e=>{z.value=!!e,Z.recomputeHeadingsIfOpen()});let Bt=(0,a.ref)(!1);function Vt(e){let t=e.currentTarget;t instanceof HTMLElement&&p.onScrollTopChange?.(t.scrollTop)}function Ht(){if(p.initialScrollTop===void 0||Bt.value)return;Bt.value=!0;let e=p.initialScrollTop;requestAnimationFrame(()=>{A.value&&(A.value.scrollTop=e)})}(0,a.watch)(de,e=>{if(!e){Bt.value=!1;return}E.value=!0,Z.recomputeHeadingsIfOpen(),Q.seedFromDocument();let t=Y();t&&p.onCompatibilityChange?.((0,c.inspectDocxCompatibility)(t)),p.autoOpenReviewSidebar!==!1&&!zt.value&&(ot.value.length>0||at.value.length>0)&&(zt.value=!0,B.value=!0),Ht(),m(`ready`)}),(0,a.onMounted)(()=>{let e=K.on(`selectionChange`,()=>{M.value++,$.updateFloatingButton()}),t=K.on(`docChange`,()=>{M.value++,Z.recomputeHeadingsIfOpen()}),n=K.on(`layoutComplete`,()=>{M.value++}),r=Be.install(),i=(0,u.onFontsLoaded)(()=>p.onFontsLoaded?.());(0,a.onBeforeUnmount)(()=>{e(),t(),n(),r(),i()})});let{exposed:Gt}=on({editor:K,editorView:q,isDirty:fe,commentsDirty:Q.commentsDirty,clearCommentsDirty:Q.clearCommentsDirty,layout:me,pagesRef:O,pagesViewportRef:k,zoom:H,scrollVisiblePositionIntoView:Ge,author:()=>p.author,createAIEditComment:e=>{let t=Q.createComment(e);return Q.pushComment(t),t.id},getComments:()=>Q.comments.value,setComments:Q.setComments,focus:xe,getDocument:Y,setZoom:U,save:ve,loadDocument:_e,loadDocumentBuffer:ge,onPrint:p.onPrint,onSave:p.onSave});return i(Gt),(r,i)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)([`docx-editor-vue ep-root paged-editor`,n.className,C.value,{"paged-editor--readonly":g.value}]),style:(0,a.normalizeStyle)(n.style)},[(0,a.createElementVNode)(`div`,Mn,[(0,a.createVNode)(ke,{"show-table-insert":p.showTableInsert!==!1,onRename:i[0]||=e=>m(`rename`,e),onMenuAction:Lt,onInsertTable:Rt},{"title-bar-left":(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`title-bar-left`,{},void 0,!0)]),"title-bar-right":(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`title-bar-right`,{},void 0,!0)]),_:3},8,[`show-table-insert`]),n.showToolbar?((0,a.openBlock)(),(0,a.createBlock)(t.y,(0,a.mergeProps)({key:0,view:(0,a.unref)(q),"get-commands":(0,a.unref)(be),"state-tick":M.value,"zoom-percent":(0,a.unref)(re),"is-min-zoom":(0,a.unref)(ie),"is-max-zoom":(0,a.unref)(ae),"zoom-presets":(0,a.unref)(le),"show-zoom-control":n.showZoomControl,"editor-mode":h.value,"show-review-controls":_.value,"track-changes-on":v.value,"display-mode":b.value,"read-only":g.value,"comments-sidebar-open":B.value,"image-context":(0,a.unref)(Ae),theme:n.theme??null},lt.value,{onFindReplace:i[1]||=e=>N.value=!0,onInsertLink:i[2]||=e=>P.value=!0,onInsertSymbol:i[3]||=e=>I.value=!0,onInsertPageBreak:St,onPageSetup:i[4]||=e=>R.value=!0,onToggleOutline:(0,a.unref)(Z).handleToggleOutline,onApplyStyle:(0,a.unref)(ht),onZoomIn:(0,a.unref)(W),onZoomOut:(0,a.unref)(oe),onZoomSet:(0,a.unref)(U),onToggleSidebar:i[5]||=e=>B.value=!B.value,onModeChange:Ft,onToggleTrackChanges:x,"onUpdate:displayMode":S,onImageProperties:i[6]||=e=>L.value=!0,onImageWrapType:(0,a.unref)(Me),onImageTransform:(0,a.unref)(Ne)}),(0,a.createSlots)({"table-context":(0,a.withCtx)(()=>[(0,a.createVNode)(t.f,{view:(0,a.unref)(q),"get-commands":(0,a.unref)(be),"state-tick":M.value,theme:n.theme??null},null,8,[`view`,`get-commands`,`state-tick`,`theme`])]),_:2},[r.$slots[`toolbar-extra`]||n.toolbarExtra?{name:`toolbar-extra`,fn:(0,a.withCtx)(()=>[(0,a.renderSlot)(r.$slots,`toolbar-extra`,{},()=>[n.toolbarExtra?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.toolbarExtra},null,8,[`node`])):(0,a.createCommentVNode)(``,!0)],!0)]),key:`0`}:void 0]),1040,[`view`,`get-commands`,`state-tick`,`zoom-percent`,`is-min-zoom`,`is-max-zoom`,`zoom-presets`,`show-zoom-control`,`editor-mode`,`show-review-controls`,`track-changes-on`,`display-mode`,`read-only`,`comments-sidebar-open`,`image-context`,`theme`,`onToggleOutline`,`onApplyStyle`,`onZoomIn`,`onZoomOut`,`onZoomSet`,`onImageWrapType`,`onImageTransform`])):(0,a.createCommentVNode)(``,!0)]),(0,a.createVNode)(we,{"show-find-replace":N.value,"onUpdate:showFindReplace":i[7]||=e=>N.value=e,"show-hyperlink":P.value,"onUpdate:showHyperlink":i[8]||=e=>P.value=e,"show-insert-symbol":I.value,"onUpdate:showInsertSymbol":i[9]||=e=>I.value=e,"show-image-properties":L.value,"onUpdate:showImageProperties":i[10]||=e=>L.value=e,"show-page-setup":R.value,"onUpdate:showPageSetup":i[11]||=e=>R.value=e,view:(0,a.unref)(q),bookmarks:ne.value,"selected-image-pm-pos":(0,a.unref)(De)?.pmPos??null,"section-properties":ct.value,onInsertSymbol:(0,a.unref)(_t),onHyperlinkSubmit:(0,a.unref)(Fe),onHyperlinkRemove:(0,a.unref)(Ie),onPageSetupApply:(0,a.unref)(wt)},null,8,[`show-find-replace`,`show-hyperlink`,`show-insert-symbol`,`show-image-properties`,`show-page-setup`,`view`,`bookmarks`,`selected-image-pm-pos`,`section-properties`,`onInsertSymbol`,`onHyperlinkSubmit`,`onHyperlinkRemove`,`onPageSetupApply`]),(0,a.unref)(pe)?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Nn,(0,a.toDisplayString)((0,a.unref)(pe)),1)):Te.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Pn,[(0,a.renderSlot)(r.$slots,`loading-indicator`,{},()=>[n.loadingIndicator?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.loadingIndicator},null,8,[`node`])):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)((0,a.toDisplayString)((0,a.unref)(ee)(`loadingDocument`)),1)],64))],!0)])):!(0,a.unref)(de)&&!T.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Fn,[(0,a.renderSlot)(r.$slots,`placeholder`,{},()=>[n.placeholder?((0,a.openBlock)(),(0,a.createBlock)(w,{key:0,node:n.placeholder},null,8,[`node`])):((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)(`No document loaded`)],64))],!0)])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{ref_key:`hiddenPmRef`,ref:D,class:`docx-editor-vue__hidden-pm paged-editor__hidden-pm`},null,512),(0,a.createElementVNode)(`div`,{ref_key:`editorScrollRef`,ref:A,class:`docx-editor-vue__editor-scroll`,onScroll:Vt},[(0,a.createElementVNode)(`div`,In,[j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Ln,[(0,a.createVNode)(t.v,{"section-props":ct.value,zoom:(0,a.unref)(H),unit:n.rulerUnit??`inch`,editable:!g.value,"indent-left":Pt.value.indentLeft,"indent-right":Pt.value.indentRight,"first-line-indent":Pt.value.firstLineIndent,"hanging-indent":Pt.value.hangingIndent,"show-first-line-indent":!0,"tab-stops":Pt.value.tabs,onLeftMarginChange:(0,a.unref)(Et),onRightMarginChange:(0,a.unref)(Dt),onIndentLeftChange:(0,a.unref)(At),onIndentRightChange:(0,a.unref)(jt),onFirstLineIndentChange:(0,a.unref)(Mt),onTabStopRemove:(0,a.unref)(Nt)},null,8,[`section-props`,`zoom`,`unit`,`editable`,`indent-left`,`indent-right`,`first-line-indent`,`hanging-indent`,`tab-stops`,`onLeftMarginChange`,`onRightMarginChange`,`onIndentLeftChange`,`onIndentRightChange`,`onFirstLineIndentChange`,`onTabStopRemove`])])):(0,a.createCommentVNode)(``,!0),j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Rn,[(0,a.createVNode)(t.d,{"section-props":ct.value,zoom:(0,a.unref)(H),unit:n.rulerUnit??`inch`,editable:!g.value,onTopMarginChange:(0,a.unref)(Ot),onBottomMarginChange:(0,a.unref)(kt)},null,8,[`section-props`,`zoom`,`unit`,`editable`,`onTopMarginChange`,`onBottomMarginChange`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`div`,{ref_key:`pagesViewportRef`,ref:k,class:`docx-editor-vue__pages-viewport`,onWheel:G,onMousedown:i[20]||=(...e)=>(0,a.unref)(Ke)&&(0,a.unref)(Ke)(...e),onMousemove:i[21]||=(...e)=>(0,a.unref)(X)&&(0,a.unref)(X)(...e),onClick:i[22]||=(...e)=>(0,a.unref)(qe)&&(0,a.unref)(qe)(...e),onContextmenu:i[23]||=(0,a.withModifiers)((...e)=>(0,a.unref)($e)&&(0,a.unref)($e)(...e),[`prevent`])},[(0,a.createElementVNode)(`div`,zn,[(0,a.createElementVNode)(`div`,{ref_key:`pagesRef`,ref:O,class:`docx-editor-vue__pages paged-editor__pages`,style:(0,a.normalizeStyle)(pt.value)},null,4),(0,a.createElementVNode)(`div`,Bn,[(0,a.createVNode)(ye,{"get-view":()=>(0,a.unref)(q),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(ue),zoom:(0,a.unref)(H),layout:(0,a.unref)(me),blocks:(0,a.unref)(he),measures:(0,a.unref)(J),"on-term-click":p.onAnonymizationTermClick,"selected-canonical":p.selectedAnonymizationCanonical,"selection-seq":p.anonymizationSelectionSeq},null,8,[`get-view`,`get-pages-container`,`editor-state`,`zoom`,`layout`,`blocks`,`measures`,`on-term-click`,`selected-canonical`,`selection-seq`]),p.showTemplateDirectives?((0,a.openBlock)(),(0,a.createBlock)(Tt,{key:0,"get-view":()=>(0,a.unref)(q),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(ue),zoom:(0,a.unref)(H),layout:(0,a.unref)(me),blocks:(0,a.unref)(he),measures:(0,a.unref)(J)},null,8,[`get-view`,`get-pages-container`,`editor-state`,`zoom`,`layout`,`blocks`,`measures`])):(0,a.createCommentVNode)(``,!0)])]),(0,a.createVNode)(ft,{"image-info":(0,a.unref)(De),zoom:(0,a.unref)(H),view:(0,a.unref)(q),onDeselect:i[12]||=e=>De.value=null,onInteractStart:i[13]||=e=>Oe.value=!0,onInteractEnd:i[14]||=e=>Oe.value=!1,onContextMenu:(0,a.unref)(et)},null,8,[`image-info`,`zoom`,`view`,`onContextMenu`]),(0,a.createVNode)(It,{data:(0,a.unref)(Pe),"read-only":g.value,onNavigate:(0,a.unref)(Le),onCopy:st,onEdit:(0,a.unref)(Re),onRemove:(0,a.unref)(ze),onClose:i[15]||=e=>Pe.value=null},null,8,[`data`,`read-only`,`onNavigate`,`onEdit`,`onRemove`]),(0,a.unref)(Ve)?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:0,type:`button`,class:`docx-editor-vue__table-insert-btn`,style:(0,a.normalizeStyle)({left:(0,a.unref)(Ve).x+`px`,top:(0,a.unref)(Ve).y+`px`}),"aria-label":(0,a.unref)(Ve).type===`row`?`Insert row`:`Insert column`,onMousedown:i[16]||=(...e)=>(0,a.unref)(Je)&&(0,a.unref)(Je)(...e)},` + `,44,Vn)):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(t.D,{comments:(0,a.unref)(ot),"pages-container":O.value,zoom:(0,a.unref)(H),"page-width-px":ut.value,"sidebar-open":B.value,"resolved-comment-ids":dt.value,onMarkerClick:()=>{}},null,8,[`comments`,`pages-container`,`zoom`,`page-width-px`,`sidebar-open`,`resolved-comment-ids`]),(0,a.createVNode)(t.i,{"is-open":B.value,comments:(0,a.unref)(ot),"tracked-changes":at.value,"show-resolved":!0,"is-adding-comment":(0,a.unref)($).isAddingComment.value,"add-comment-y-position":(0,a.unref)($).addCommentYPosition.value,"pages-container":O.value,"page-width-px":ut.value,zoom:(0,a.unref)(H),"active-item-id":te.value,onClose:i[17]||=e=>B.value=!1,"onUpdate:activeItemId":i[18]||=e=>te.value=e,onAddComment:(0,a.unref)($).handleAddComment,onCancelAddComment:(0,a.unref)($).handleCancelAddComment,onCommentReply:(0,a.unref)(Q).handleReply,onCommentResolve:(0,a.unref)(Q).handleResolve,onCommentUnresolve:(0,a.unref)(Q).handleUnresolve,onCommentDelete:(0,a.unref)(Q).handleDelete,onAcceptChange:(0,a.unref)(Q).handleAcceptChange,onRejectChange:(0,a.unref)(Q).handleRejectChange,onAcceptChangeById:(0,a.unref)(Q).handleAcceptChangeById,onRejectChangeById:(0,a.unref)(Q).handleRejectChangeById,onTrackedChangeReply:(0,a.unref)(Q).handleTrackedChangeReply},null,8,[`is-open`,`comments`,`tracked-changes`,`is-adding-comment`,`add-comment-y-position`,`pages-container`,`page-width-px`,`zoom`,`active-item-id`,`onAddComment`,`onCancelAddComment`,`onCommentReply`,`onCommentResolve`,`onCommentUnresolve`,`onCommentDelete`,`onAcceptChange`,`onRejectChange`,`onAcceptChangeById`,`onRejectChangeById`,`onTrackedChangeReply`]),(0,a.unref)($).floatingCommentButton.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`button`,{key:1,type:`button`,class:`docx-editor-vue__add-comment-btn`,style:(0,a.normalizeStyle)({top:(0,a.unref)($).floatingCommentButton.value.top+`px`,left:(0,a.unref)($).floatingCommentButton.value.left+`px`}),"aria-label":`Add comment`,title:`Add comment`,onMousedown:i[19]||=(0,a.withModifiers)((...e)=>(0,a.unref)($).startAddComment&&(0,a.unref)($).startAddComment(...e),[`prevent`,`stop`])},[(0,a.createVNode)(e.P,{name:`add_comment`,size:18})],36)):(0,a.createCommentVNode)(``,!0)],544),z.value?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createBlock)(mt,{key:2,"left-offset":12,onToggle:(0,a.unref)(Z).handleToggleOutline},null,8,[`onToggle`])),(0,a.unref)(He).totalPages>1?((0,a.openBlock)(),(0,a.createBlock)(gt,{key:3,"current-page":(0,a.unref)(He).currentPage,"total-pages":(0,a.unref)(He).totalPages,visible:(0,a.unref)(He).visible},null,8,[`current-page`,`total-pages`,`visible`])):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(Ce,{"is-open":z.value,headings:V.value,"get-scroll-container":()=>O.value,onClose:i[24]||=e=>z.value=!1,onNavigate:(0,a.unref)(Z).handleOutlineNavigate},null,8,[`is-open`,`headings`,`get-scroll-container`,`onNavigate`])])],544),(0,a.createVNode)(rt,{"read-only":g.value,"context-menu":(0,a.unref)(Ye),"image-context-menu":(0,a.unref)(Xe),"image-context-menu-text-actions":(0,a.unref)(Ze),"custom-text-menu-items":(0,a.unref)(Qe),"can-open-image-properties":(0,a.unref)(De)!==null,onContextMenuAction:(0,a.unref)(nt),onCloseContextMenu:i[25]||=e=>(0,a.unref)(Ye).isOpen=!1,onImageWrapSelect:(0,a.unref)(tt),onCloseImageContextMenu:i[26]||=e=>Xe.value=null,onOpenImageProperties:i[27]||=e=>L.value=!0},null,8,[`read-only`,`context-menu`,`image-context-menu`,`image-context-menu-text-actions`,`custom-text-menu-items`,`can-open-image-properties`,`onContextMenuAction`,`onImageWrapSelect`])],6))}}),Un=e.F(Hn,[[`__scopeId`,`data-v-69ec23e0`]]);function Wn(){return{type:`none`,level:0,isInList:!1}}var Gn=[`aria-label`],Kn=[`aria-label`],qn=[`disabled`,`title`,`aria-label`],Jn=[`disabled`,`title`,`aria-label`],Yn=[`aria-label`],Xn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Zn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Qn=[`disabled`,`title`,`aria-label`,`aria-pressed`],$n=(0,a.defineComponent)({__name:`FormattingBar`,props:{currentFormatting:{},disabled:{type:Boolean,default:!1},canUndo:{type:Boolean,default:!1},canRedo:{type:Boolean,default:!1},className:{},showStylePicker:{type:Boolean,default:!0},showTextColorPicker:{type:Boolean,default:!0},showAlignmentButtons:{type:Boolean,default:!0},showListButtons:{type:Boolean,default:!0},documentStyles:{},theme:{}},emits:[`format`,`undo`,`redo`],setup(n,{emit:r}){let{ColorPicker:i}=e.y(),o=n,s=r,{t:c}=e.j(),l=(0,a.computed)(()=>o.currentFormatting??{}),u=(0,a.computed)(()=>o.documentStyles?{styles:o.documentStyles}:{}),d=(0,a.computed)(()=>l.value.listState??Wn()),f=(0,a.computed)(()=>{let e=l.value.color;return e?e.replace(/^#/,``).toUpperCase():void 0}),p=(0,a.computed)(()=>{let e=d.value;return e.isInList&&e.level>0||(l.value.indentLeft??0)>0});function m(e){s(`format`,{type:`textColor`,value:e})}return(r,o)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:(0,a.normalizeClass)([`docx-formatting-bar`,n.className]),role:`toolbar`,"aria-label":(0,a.unref)(c)(`formattingToolbar`),"data-folio-toolbar":`true`},[(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__group`,role:`group`,"aria-label":(0,a.unref)(c)(`historyGroup`)},[(0,a.createElementVNode)(`button`,{type:`button`,class:`docx-formatting-bar__btn`,disabled:n.disabled||!n.canUndo,title:(0,a.unref)(c)(`undoShortcut`),"aria-label":(0,a.unref)(c)(`undo`),onMousedown:o[0]||=(0,a.withModifiers)(e=>s(`undo`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`undo`,size:18})],40,qn),(0,a.createElementVNode)(`button`,{type:`button`,class:`docx-formatting-bar__btn`,disabled:n.disabled||!n.canRedo,title:(0,a.unref)(c)(`redoShortcut`),"aria-label":(0,a.unref)(c)(`redo`),onMousedown:o[1]||=(0,a.withModifiers)(e=>s(`redo`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`redo`,size:18})],40,Jn)],8,Kn),o[13]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),n.showStylePicker?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[(0,a.createVNode)(t.r,(0,a.mergeProps)({value:l.value.styleId??`Normal`},u.value,{disabled:n.disabled,onChange:o[2]||=e=>s(`format`,{type:`applyStyle`,value:e})}),null,16,[`value`,`disabled`]),o[11]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1)],64)):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__group`,role:`group`,"aria-label":(0,a.unref)(c)(`textFormattingGroup`)},[(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.bold}]),disabled:n.disabled,title:(0,a.unref)(c)(`boldShortcut`),"aria-label":(0,a.unref)(c)(`bold`),"aria-pressed":!!l.value.bold,onMousedown:o[3]||=(0,a.withModifiers)(e=>s(`format`,`bold`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_bold`,size:18})],42,Xn),(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.italic}]),disabled:n.disabled,title:(0,a.unref)(c)(`italicShortcut`),"aria-label":(0,a.unref)(c)(`italic`),"aria-pressed":!!l.value.italic,onMousedown:o[4]||=(0,a.withModifiers)(e=>s(`format`,`italic`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_italic`,size:18})],42,Zn),(0,a.createElementVNode)(`button`,{type:`button`,class:(0,a.normalizeClass)([`docx-formatting-bar__btn`,{"docx-formatting-bar__btn--active":l.value.underline}]),disabled:n.disabled,title:(0,a.unref)(c)(`underlineShortcut`),"aria-label":(0,a.unref)(c)(`underline`),"aria-pressed":!!l.value.underline,onMousedown:o[5]||=(0,a.withModifiers)(e=>s(`format`,`underline`),[`prevent`])},[(0,a.createVNode)(e.P,{name:`format_underlined`,size:18})],42,Qn)],8,Yn),n.showTextColorPicker?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[o[12]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),(0,a.createVNode)((0,a.unref)(i),{mode:`text`,value:f.value,theme:n.theme??null,disabled:n.disabled,onChange:m},null,8,[`value`,`theme`,`disabled`])],64)):(0,a.createCommentVNode)(``,!0),o[14]||=(0,a.createElementVNode)(`span`,{class:`docx-formatting-bar__divider`,role:`separator`},null,-1),n.showAlignmentButtons?((0,a.openBlock)(),(0,a.createBlock)(t.n,{key:2,value:l.value.alignment??`left`,disabled:n.disabled,onChange:o[6]||=e=>s(`format`,{type:`alignment`,value:e})},null,8,[`value`,`disabled`])):(0,a.createCommentVNode)(``,!0),n.showListButtons?((0,a.openBlock)(),(0,a.createBlock)(t.t,{key:3,"list-state":d.value,disabled:n.disabled,"can-outdent":p.value,onBulletList:o[7]||=e=>s(`format`,`bulletList`),onNumberedList:o[8]||=e=>s(`format`,`numberedList`),onIndent:o[9]||=e=>s(`format`,`indent`),onOutdent:o[10]||=e=>s(`format`,`outdent`)},null,8,[`list-state`,`disabled`,`can-outdent`])):(0,a.createCommentVNode)(``,!0)],10,Gn))}}),er=e.F($n,[[`__scopeId`,`data-v-fc03de2e`]]),tr=[{value:.5,label:`50%`},{value:.75,label:`75%`},{value:1,label:`100%`},{value:1.25,label:`125%`},{value:1.5,label:`150%`},{value:2,label:`200%`}],nr=(0,a.defineComponent)({__name:`ZoomControl`,props:{value:{default:1},levels:{},disabled:{type:Boolean,default:!1},className:{},compact:{type:Boolean,default:!1}},emits:[`change`],setup(t,{emit:n}){let{Select:r}=e.y(),i=t,o=n,s=(0,a.computed)(()=>i.levels??tr),c=(0,a.computed)(()=>s.value.find(e=>Math.abs(e.value-i.value)<.001)),l=(0,a.computed)(()=>c.value?c.value.label:`${Math.round(i.value*100)}%`),u=(0,a.computed)(()=>c.value?String(c.value.value):String(i.value)),d=(0,a.computed)(()=>{let e=s.value.map(e=>({value:String(e.value),label:e.label}));return c.value||e.unshift({value:u.value,label:l.value}),e});function f(e){let t=Number.parseFloat(e);Number.isNaN(t)||o(`change`,t)}return(e,n)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(r),{class:(0,a.normalizeClass)([`docx-zoom-control`,[{"docx-zoom-control--compact":t.compact},t.className]]),value:u.value,items:d.value,disabled:t.disabled,"aria-label":`Zoom level`,onChange:f},null,8,[`class`,`value`,`items`,`disabled`]))}}),rr=e.F(nr,[[`__scopeId`,`data-v-8079e07f`]]),ir=(t,n,r={})=>{let{locale:i=`en`,...o}=r;return new Promise((r,s)=>{let c=(0,a.ref)(null),l=null,u=!1,d={save:async()=>{let e=await(c.value?.save()??Promise.resolve(null));return e?new Blob([e],{type:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`}):null},getDocument:()=>c.value?.getDocument()??null,focus:()=>{c.value?.focus()},setZoom:e=>{c.value?.setZoom(e)},scrollToPosition:e=>{c.value?.getEditorRef()?.scrollToPosition(e)},scrollToPage:e=>{c.value?.scrollToPage(e)},destroy:()=>{u||(u=!0,s(Error(`Editor was destroyed before mounting completed.`))),l?.unmount(),l=null}};l=(0,a.createApp)({setup(){return()=>(0,a.h)(Un,{...o,documentBuffer:t,ref:c,onReady:()=>{u||(u=!0,r(d))},onError:e=>{o.onError?.(e),u||(u=!0,l?.unmount(),l=null,s(e))}})}}),l.use(e.k,i),l.mount(n)})};Object.defineProperty(exports,"DEFAULT_AI_SUGGESTION_PRESETS",{enumerable:!0,get:function(){return K.DEFAULT_AI_SUGGESTION_PRESETS}}),Object.defineProperty(exports,"DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES",{enumerable:!0,get:function(){return J.DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES}}),Object.defineProperty(exports,"DOCUMENT_PRESET_VERSION",{enumerable:!0,get:function(){return ce.DOCUMENT_PRESET_VERSION}}),Object.defineProperty(exports,"DOCUMENT_STYLE_SET_VERSION",{enumerable:!0,get:function(){return ce.DOCUMENT_STYLE_SET_VERSION}}),exports.DocxEditor=Un,exports.FindReplaceDialog=i.FindReplaceDialog,exports.FolioUIProvider=e.g,exports.FootnotePropertiesDialog=i.FootnotePropertiesDialog,exports.FormattingBar=er,exports.HyperlinkDialog=i.HyperlinkDialog,exports.ImagePositionDialog=i.ImagePositionDialog,exports.ImagePropertiesDialog=i.ImagePropertiesDialog,exports.InsertImageDialog=i.InsertImageDialog,exports.InsertSymbolDialog=i.InsertSymbolDialog,exports.InsertTableDialog=i.InsertTableDialog,exports.PageSetupDialog=i.PageSetupDialog,exports.PasteSpecialDialog=i.PasteSpecialDialog,Object.defineProperty(exports,"STELLA_STYLE_SET_NAME",{enumerable:!0,get:function(){return se.STELLA_STYLE_SET_NAME}}),exports.SplitCellDialog=i.SplitCellDialog,exports.TablePropertiesDialog=i.TablePropertiesDialog,exports.WatermarkDialog=i.WatermarkDialog,exports.ZoomControl=rr,Object.defineProperty(exports,"acceptAutocompleteSuggestion",{enumerable:!0,get:function(){return J.acceptAutocompleteSuggestion}}),Object.defineProperty(exports,"acceptAutocompleteWord",{enumerable:!0,get:function(){return J.acceptAutocompleteWord}}),Object.defineProperty(exports,"anonymizationDecorationsKey",{enumerable:!0,get:function(){return h.anonymizationDecorationsKey}}),Object.defineProperty(exports,"appendAutocompleteToken",{enumerable:!0,get:function(){return J.appendAutocompleteToken}}),Object.defineProperty(exports,"applyFolioAIEditOperations",{enumerable:!0,get:function(){return P.applyFolioAIEditOperations}}),Object.defineProperty(exports,"applySuggestions",{enumerable:!0,get:function(){return q.applySuggestions}}),Object.defineProperty(exports,"autocompleteSuggestionKey",{enumerable:!0,get:function(){return J.autocompleteSuggestionKey}}),Object.defineProperty(exports,"autocompleteSuggestionPlugin",{enumerable:!0,get:function(){return J.autocompleteSuggestionPlugin}}),Object.defineProperty(exports,"buildPositionalText",{enumerable:!0,get:function(){return de.buildPositionalText}}),Object.defineProperty(exports,"clearAutocompleteSuggestion",{enumerable:!0,get:function(){return J.clearAutocompleteSuggestion}}),Object.defineProperty(exports,"clearTemplateSlashMenu",{enumerable:!0,get:function(){return N.clearTemplateSlashMenu}}),Object.defineProperty(exports,"consumeTemplateSlashQuery",{enumerable:!0,get:function(){return N.consumeTemplateSlashQuery}}),Object.defineProperty(exports,"createAICitationDecorationsPlugin",{enumerable:!0,get:function(){return he.createAICitationDecorationsPlugin}}),Object.defineProperty(exports,"createDocx",{enumerable:!0,get:function(){return le.createDocx}}),Object.defineProperty(exports,"createEmptyDocument",{enumerable:!0,get:function(){return W.createEmptyDocument}}),Object.defineProperty(exports,"createFolioAIEditSnapshot",{enumerable:!0,get:function(){return P.createFolioAIEditSnapshot}}),Object.defineProperty(exports,"createStellaStyleDocumentPreset",{enumerable:!0,get:function(){return se.createStellaStyleDocumentPreset}}),Object.defineProperty(exports,"createStellaStyleSet",{enumerable:!0,get:function(){return se.createStellaStyleSet}}),exports.defaultLocale=e.O,Object.defineProperty(exports,"deriveBlockId",{enumerable:!0,get:function(){return G.deriveBlockId}}),Object.defineProperty(exports,"diffWordSegments",{enumerable:!0,get:function(){return P.diffWordSegments}}),Object.defineProperty(exports,"extractDocumentStyleSet",{enumerable:!0,get:function(){return oe.extractDocumentStyleSet}}),Object.defineProperty(exports,"extractDocumentStyleSetFromDocx",{enumerable:!0,get:function(){return oe.extractDocumentStyleSetFromDocx}}),Object.defineProperty(exports,"finishAutocompleteSuggestion",{enumerable:!0,get:function(){return J.finishAutocompleteSuggestion}}),Object.defineProperty(exports,"fromMarkdown",{enumerable:!0,get:function(){return ge.fromMarkdown}}),Object.defineProperty(exports,"getAnonymizationMatches",{enumerable:!0,get:function(){return h.getAnonymizationMatches}}),Object.defineProperty(exports,"getAutocompleteSuggestion",{enumerable:!0,get:function(){return J.getAutocompleteSuggestion}}),Object.defineProperty(exports,"getDocumentWatermark",{enumerable:!0,get:function(){return U.getDocumentWatermark}}),Object.defineProperty(exports,"getFolioCaretViewportRect",{enumerable:!0,get:function(){return me.getFolioCaretViewportRect}}),Object.defineProperty(exports,"getFolioParaIdFromBlockId",{enumerable:!0,get:function(){return G.getFolioParaIdFromBlockId}}),Object.defineProperty(exports,"getFolioSelectionViewportRect",{enumerable:!0,get:function(){return me.getFolioSelectionViewportRect}}),Object.defineProperty(exports,"getTemplateDirectives",{enumerable:!0,get:function(){return C.getTemplateDirectives}}),Object.defineProperty(exports,"getTemplateSlashMenu",{enumerable:!0,get:function(){return N.getTemplateSlashMenu}}),Object.defineProperty(exports,"hashFolioAIBlockText",{enumerable:!0,get:function(){return P.hashFolioAIBlockText}}),exports.i18nPlugin=e.k,Object.defineProperty(exports,"insertImageFromFile",{enumerable:!0,get:function(){return o.insertImageFromFile}}),Object.defineProperty(exports,"insertPageBreakInView",{enumerable:!0,get:function(){return o.insertPageBreakInView}}),Object.defineProperty(exports,"insertTableInView",{enumerable:!0,get:function(){return o.insertTableInView}}),Object.defineProperty(exports,"insertTableOfContentsInView",{enumerable:!0,get:function(){return o.insertTableOfContentsInView}}),Object.defineProperty(exports,"inspectDocumentStyles",{enumerable:!0,get:function(){return oe.inspectDocumentStyles}}),Object.defineProperty(exports,"inspectDocumentStylesFromDocx",{enumerable:!0,get:function(){return oe.inspectDocumentStylesFromDocx}}),Object.defineProperty(exports,"isFolioBlockId",{enumerable:!0,get:function(){return G.isFolioBlockId}}),Object.defineProperty(exports,"isSequentialFolioBlockId",{enumerable:!0,get:function(){return G.isSequentialFolioBlockId}}),Object.defineProperty(exports,"isSuggestionStale",{enumerable:!0,get:function(){return ue.isSuggestionStale}}),Object.defineProperty(exports,"normalizeFolioAIBlockText",{enumerable:!0,get:function(){return P.normalizeFolioAIBlockText}}),exports.provideLocale=e.A,exports.renderAsync=ir,Object.defineProperty(exports,"resetTemplateSlashQuery",{enumerable:!0,get:function(){return N.resetTemplateSlashQuery}}),Object.defineProperty(exports,"resolveSuggestionAnchor",{enumerable:!0,get:function(){return ue.resolveSuggestionAnchor}}),Object.defineProperty(exports,"scanDirectives",{enumerable:!0,get:function(){return C.scanDirectives}}),Object.defineProperty(exports,"scrollFolioPositionIntoView",{enumerable:!0,get:function(){return pe.scrollFolioPositionIntoView}}),Object.defineProperty(exports,"setAICitationsMeta",{enumerable:!0,get:function(){return he.setAICitationsMeta}}),Object.defineProperty(exports,"setAISuggestionsMeta",{enumerable:!0,get:function(){return fe.setAISuggestionsMeta}}),Object.defineProperty(exports,"setActiveCitationMeta",{enumerable:!0,get:function(){return he.setActiveCitationMeta}}),Object.defineProperty(exports,"setAnonymizationTermsMeta",{enumerable:!0,get:function(){return h.setAnonymizationTermsMeta}}),Object.defineProperty(exports,"setDocumentWatermark",{enumerable:!0,get:function(){return U.setDocumentWatermark}}),Object.defineProperty(exports,"setFocusedSuggestionMeta",{enumerable:!0,get:function(){return fe.setFocusedSuggestionMeta}}),Object.defineProperty(exports,"setTemplatePreviewValues",{enumerable:!0,get:function(){return M.setTemplatePreviewValues}}),Object.defineProperty(exports,"shouldTriggerAutocomplete",{enumerable:!0,get:function(){return J.shouldTriggerAutocomplete}}),Object.defineProperty(exports,"startAutocompleteSuggestion",{enumerable:!0,get:function(){return J.startAutocompleteSuggestion}}),Object.defineProperty(exports,"templateSlashMenuKey",{enumerable:!0,get:function(){return N.templateSlashMenuKey}}),Object.defineProperty(exports,"toMarkdown",{enumerable:!0,get:function(){return ge.toMarkdown}}),Object.defineProperty(exports,"toMarkdownResult",{enumerable:!0,get:function(){return ge.toMarkdownResult}}),exports.useTranslation=e.j,exports.useWheelZoom=r.t;
package/dist/index.d.ts CHANGED
@@ -31,6 +31,9 @@ export { useWheelZoom } from './composables/useWheelZoom';
31
31
  export { insertImageFromFile, insertPageBreakInView, insertTableInView, insertTableOfContentsInView, } from '@stll/folio-core/prosemirror';
32
32
  export { getDocumentWatermark, setDocumentWatermark, type PictureWatermark, type TextWatermark, type Watermark, } from '@stll/folio-core/watermark';
33
33
  export { createEmptyDocument, type CreateEmptyDocumentOptions, } from '@stll/folio-core/utils/createDocument';
34
+ export { extractDocumentStyleSet, extractDocumentStyleSetFromDocx, inspectDocumentStyles, inspectDocumentStylesFromDocx, type DocumentStyleCatalog, type DocumentStyleCatalogEntry, type ExtractDocumentStyleSetOptions, } from '@stll/folio-core/style-sets/extract';
35
+ export { createStellaStyleDocumentPreset, createStellaStyleSet, STELLA_STYLE_SET_NAME, } from '@stll/folio-core/style-sets/stellaStyle';
36
+ export { DOCUMENT_PRESET_VERSION, DOCUMENT_STYLE_SET_VERSION, type DocumentPreset, type DocumentStyleSet, } from '@stll/folio-core/style-sets/types';
34
37
  export { createDocx } from '@stll/folio-core/docx/rezip';
35
38
  export type { Document } from '@stll/folio-core/types/document';
36
39
  export type { DocxCompatibility } from '@stll/folio-core/docx/compatibility';