@stll/folio-vue 0.4.0 → 0.5.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/{ListButtons-CC7_7-e3.cjs → ListButtons-BvsV1yti.cjs} +2 -2
- package/dist/{ListButtons-BaILr4AO.js → ListButtons-DXqMvba3.js} +37 -49
- package/dist/WatermarkDialog-DHfk8jrg.cjs +15 -0
- package/dist/{WatermarkDialog-D-uTab0-.js → WatermarkDialog-r4wmldt4.js} +674 -1176
- package/dist/components/DocxEditor/types.d.ts +8 -1
- package/dist/components/sidebar/cardStyles.d.ts +1 -1
- package/dist/composables.cjs +1 -1
- package/dist/composables.js +1 -1
- package/dist/dialogs.cjs +1 -1
- package/dist/dialogs.js +1 -1
- package/dist/folio-vue.css +1 -1
- package/dist/index.cjs +1 -3
- package/dist/index.d.ts +1 -1
- package/dist/index.js +716 -710
- package/dist/ui.cjs +1 -1
- package/dist/ui.js +14 -14
- package/dist/useZoom-BB6hSMvM.cjs +1 -0
- package/dist/{useZoom-BR--m9w3.js → useZoom-BxDANpqb.js} +178 -175
- package/package.json +11 -6
- package/dist/WatermarkDialog-SzyoSZmL.cjs +0 -15
- package/dist/useZoom-8M2AQIMJ.cjs +0 -1
- package/dist/utils/aiEditRange.d.ts +0 -26
- package/dist/utils/pageText.d.ts +0 -14
package/dist/index.cjs
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./WatermarkDialog-SzyoSZmL.cjs"),t=require("./ListButtons-CC7_7-e3.cjs"),n=require("./zIndex-dFsQbASx.cjs"),r=require("./useZoom-8M2AQIMJ.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("@stll/folio-core/prosemirror/commands/formatting"),C=require("@stll/folio-core/prosemirror/extensions/nodes/TableExtension"),w=require("@stll/folio-core/prosemirror/commentIdAllocator"),T=require("@stll/folio-core/prosemirror/commentOps"),E=require("@stll/folio-core/prosemirror/queries"),D=require("@stll/folio-core/prosemirror/commands/comments"),O=require("@stll/folio-core/prosemirror/plugins/suggestionMode"),k=require("@stll/folio-core/prosemirror/plugins/templatePreviewValues"),A=require("@stll/folio-core/prosemirror/plugins/templateSlashMenu"),j=require("@stll/folio-core/ai-edits"),M=require("@stll/folio-core/layout-engine"),N=require("@stll/folio-core/paged-layout/paragraphFlash"),P=require("@stll/folio-core/prosemirror/commands/contentControls"),F=require("@stll/folio-core/prosemirror/commands/contentControlsBlockFill"),I=require("@stll/folio-core/ai-edits/snapshot"),L=require("@stll/folio-core/prosemirror/utils/findParagraphByParaId"),R=require("@stll/folio-core/types/block-id"),z=require("@stll/folio-core/prosemirror/commands/paragraph"),B=require("@stll/folio-core/docx"),te=require("@stll/folio-core/prosemirror/commands/pageBreak"),ne=require("@stll/folio-core/prosemirror/commands/sectionBreak"),re=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/ai-suggestions/types"),ce=require("@stll/folio-core/ai-suggestions/apply"),le=require("@stll/folio-core/ai-suggestions/conflict"),ue=require("@stll/folio-core/ai-suggestions/text-positions"),de=require("@stll/folio-core/prosemirror/plugins/aiSuggestionDecorations"),W=require("@stll/folio-core/paged-layout/scrollToPmPosition"),G=require("@stll/folio-core/paged-layout/selectionViewportRect"),fe=require("@stll/folio-core/prosemirror/plugins/aiCitationDecorations"),K=require("@stll/folio-core/prosemirror/plugins/autocompleteSuggestion"),q=require("@stll/folio-core/markdown");var pe=[`data-folio-anonymization-label`,`data-folio-anonymization-canonical`,`data-folio-anonymization-selected`,`title`],me=(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,pe))),128))],64))),128))],512))}}),he=e.F(me,[[`__scopeId`,`data-v-c7db88e1`]]),ge={class:`doc-outline__header`},_e={class:`doc-outline__body`},ve={key:0,class:`doc-outline__empty`},ye=(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`,ge,[(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`,_e,[t.headings.length===0?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ve,`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)}}),be=e.F(ye,[[`__scopeId`,`data-v-92482e57`]]),xe=(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))}}),Se={key:0,class:`docx-editor-vue__title-bar`},J={class:`docx-editor-vue__title-bar-left`},Y={class:`docx-editor-vue__title-bar-center`},Ce={class:`docx-editor-vue__title-bar-right`},we=(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`,Se,[(0,a.createElementVNode)(`div`,J,[(0,a.renderSlot)(n.$slots,`title-bar-left`)]),(0,a.createElementVNode)(`div`,Y,[(0,a.createVNode)(t.D,{"model-value":e.documentName,editable:e.documentNameEditable,"onUpdate:modelValue":i[0]||=e=>r(`rename`,e)},null,8,[`model-value`,`editable`]),(0,a.createVNode)(t.T,{"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`,Ce,[(0,a.renderSlot)(n.$slots,`title-bar-right`)])])):(0,a.createCommentVNode)(``,!0)}}),Te=Symbol(`docx-portal-class`);function Ee(e){(0,a.provide)(Te,(0,a.computed)(()=>({"ep-root":!0,dark:!!(0,a.unref)(e)})))}function De(){return(0,a.inject)(Te,(0,a.computed)(()=>({"ep-root":!0})))}var Oe=[`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,X=10,He=(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=De(),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-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:`${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,Oe)):(0,a.createCommentVNode)(``,!0)]))}}),Ue=e.F(He,[[`__scopeId`,`data-v-37e33eb5`]]),We=[`disabled`,`onMousedown`],Ge={key:0,class:`ctx-menu__icon`},Ke={class:`ctx-menu__label`},qe={key:1,class:`ctx-menu__shortcut`},Je=220,Z=32,Ye=10,Xe=(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=De(),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*Z+i*9;return typeof window<`u`&&(e+Je+Ye>window.innerWidth&&(e=window.innerWidth-Je-Ye),t+a+Ye>window.innerHeight&&(t=window.innerHeight-a-Ye)),{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`,Ge,[(0,a.createVNode)(i,{node:e.icon},null,8,[`node`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,Ke,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,qe,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],42,We))),128))],38)):(0,a.createCommentVNode)(``,!0)]))}}),Ze=e.F(Xe,[[`__scopeId`,`data-v-f7db4540`]]),Qe=(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)(Ze,{"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)(Ue,{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 $e(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 et=[`data-handle`,`onMousedown`],tt=[`title`],nt={key:0,class:`image-overlay__dim`},rt={key:1,class:`image-overlay__dim image-overlay__dim--rotate`},it=4,at=15,Q=250,ot=700,$=(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();v.value=$e({imageRect:e.getBoundingClientRect(),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>=Q&&n>=2)&&o<ot&&(e=requestAnimationFrame(i))};e=requestAnimationFrame(i);let a=setTimeout(P,Q);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),R=(0,a.computed)(()=>l.value?p.value:v.value?.height||0),z=(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`}}),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||!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`,ne),document.addEventListener(`mouseup`,re))}function ne(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;s&&(v.value={left:S.includes(`w`)?s.left+(s.width-a.width):s.left,top:S.includes(`n`)?s.top+(s.height-a.height):s.top,width:s.width,height:s.height})}function re(){document.removeEventListener(`mousemove`,ne),document.removeEventListener(`mouseup`,re),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/at)*at),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)<it)){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){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 s=a.getBoundingClientRect(),l=o.zoom,u=(0,g.pixelsToEmu)((e-s.left)/l),d=(0,g.pixelsToEmu)((t-s.top)/l),f=(0,b.commitImageFloatMove)(n,r.pmPos,u,d);f!==null&&q(f)}else{let i=M();if(!i)return;let a=(0,y.clickToPositionDom)(i,e,t,1);if(a==null||a<0)return;let o=(0,b.commitImageInlineMove)(n,r.pmPos,a);o!==null&&q(o)}(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`,ne),document.removeEventListener(`mouseup`,re),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)(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=>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)(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,et))),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,tt),l.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,nt,(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`,rt,(0,a.toDisplayString)(Math.round(m.value))+`° `,1)):(0,a.createCommentVNode)(``,!0)],36)):(0,a.createCommentVNode)(``,!0)}}),st=e.F($,[[`__scopeId`,`data-v-4741c675`]]),ct=[`title`,`aria-label`],lt=(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,ct))}}),ut=(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))}}),dt=e.F(ut,[[`__scopeId`,`data-v-877b9ee2`]]),ft=[`data-folio-block-id`],pt=[`data-folio-block-id`,`title`],mt=2.5,ht=5,gt=6,_t=2,vt=2,yt=(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-gt-mt-_t;return t<=0?0:Math.floor(t/ht)}function s(e,t,n){let r=o(n),i=Math.min(Math.max(0,e),r);return t-gt-mt-(r-i)*ht}function c(e,t){if(t.length===0)return e.bottom-e.top>=vt?[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>=vt&&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:`${mt*e.zoom}px`,height:`${Math.max(0,n.bottom-n.top)*e.zoom}px`})},null,14,ft))),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,pt))),128))],64))),128))],32))}}),bt=e.F(yt,[[`__scopeId`,`data-v-142d2ac6`]]),xt=[`href`,`title`],St=[`title`],Ct=[`title`],wt=[`title`],Tt={class:`docx-hyperlink-popup__edit-row`},Et=[`placeholder`,`onKeydown`],Dt={class:`docx-hyperlink-popup__edit-row`},Ot=[`onKeydown`],kt=[`disabled`],At=(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`,Tt,[(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,Et),[[a.vModelText,c.value]])]),(0,a.createElementVNode)(`div`,Dt,[(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,Ot),[[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,kt)])],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-8bc31a34><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-8bc31a34><circle cx="12" cy="12" r="10" data-v-8bc31a34></circle><path d="M2 12h20" data-v-8bc31a34></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-8bc31a34></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,xt),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,St),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,Ct)),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-8bc31a34><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-8bc31a34></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-8bc31a34></path><line x1="8" y1="2" x2="8" y2="5" data-v-8bc31a34></line><line x1="2" y1="8" x2="5" y2="8" data-v-8bc31a34></line><line x1="16" y1="19" x2="16" y2="22" data-v-8bc31a34></line><line x1="19" y1="16" x2="22" y2="16" data-v-8bc31a34></line></svg>`,1)]],8,wt))],64))],38)):(0,a.createCommentVNode)(``,!0)}}),jt=e.F(At,[[`__scopeId`,`data-v-8bc31a34`]]);function Mt(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 Nt({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?Mt(e,i):null}function Pt(e,t,n,r){let i=e.state.schema.marks.comment,a=Mt(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:w.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 Ft(e,t){let n=e.state.schema.marks.comment,r=Mt(e.state.doc.content.size,t);!n||!r||e.dispatch(e.state.tr.removeMark(r.from,r.to,n.create({commentId:w.PENDING_COMMENT_ID})))}var It=408,Lt=12;function Rt(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+Lt:l.width/2+It;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=Nt({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(!Pt(a,u,w.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 Pt(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&&Ft(t,i.value),u()}return{isAddingComment:t,addCommentYPosition:n,floatingCommentButton:r,updateFloatingButton:c,startAddComment:l,handleAddComment:d,handleCancelAddComment:f}}function zt(e){let t=(0,w.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,w.seedCommentAllocator)(t,c.value,e.editorView.value),(0,T.createComment)(t,n,e.author(),r)}function f(){if(o(),s.value)return;let n=e.getDocument()?.package.document.comments;(0,w.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,E.findChangeRange)(r,t);i&&(n?D.acceptChange:D.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,D.acceptChange)(t,n)(r.state,r.dispatch)}function S(t,n){let r=e.editorView.value;r&&(0,D.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 Bt(e,t,n){let r=(0,O.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 Vt(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 Ht(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 Ut(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 Wt(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);Bt(e,o,a),e.dispatch(o)}async function Gt(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 Ht(await n.getType(t)),i=await Ut(r),a=i.width,o=i.height;a>612&&(o=Math.round(612/a*o),a=612),Wt(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;Wt(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 Kt(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 Ht(i),o=await Ut(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 Jt(e){return typeof e==`string`&&qt.has(e)}function Yt(e){return Jt(e)?e:`inline`}function Xt(e){return e===`left`||e===`right`||e===`none`?e:null}function Zt(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},Yt(s.attrs.wrapType),Xt(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,C.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},Yt(o.attrs.wrapType),Xt(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;Vt(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?Vt(n,t.selectedImage.value.pmPos):(n.focus(),document.execCommand(`copy`));break;case`paste`:Gt(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&&Kt(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 Qt(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 $t=({blockId:e,doc:t,snapshot:n})=>{let r=(0,R.getFolioParaIdFromBlockId)(e);if(r!==null){let e=(0,L.findParagraphByParaId)(t,r);if(e!==null)return{from:e.from,to:e.to}}let i=n??(0,I.createFolioAIEditSnapshot)(t),a=i.anchors[e]??en(e,i);return a?tn(t.content.size,a):null},en=(e,t)=>{let n=(0,R.getSequentialFolioBlockIdIndex)(e);if(n===null)return;let r=t.blocks.at(n-1);return r?t.anchors[r.id]:void 0};function tn(e,t){return{from:Math.min(Math.max(t.from,0),e),to:Math.min(Math.max(t.to,0),e)}}var nn=(e,t,n)=>{if(!e||!Number.isInteger(n)||n<1)return null;let r=e.pages[n-1];if(!r)return null;let i=[];for(let e of r.fragments)typeof e.pmStart!=`number`||typeof e.pmEnd!=`number`||i.push(t.textBetween(e.pmStart,e.pmEnd,`
|
|
2
|
-
`));return i.join(`
|
|
3
|
-
`)};function rn(e){function t(){e.onPrint?.(),window.print()}async function n(t){let n=await e.save(t);if(!n)return null;let r=await n.arrayBuffer();return e.clearCommentsDirty(),e.onSave?.(r),r}function r(t,n){let r=e.pagesRef.value;if(!r)return!1;let i=(0,N.findParagraphFragmentsByParaId)(r,t),a=i.at(0);return a?(a.scrollIntoView({block:`center`,behavior:`smooth`}),n?.highlight&&(0,N.flashParagraphElements)(i,n.highlight),!0):!1}function i(){return e.zoom.value}let a=null;function s(){return a??={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:u,scrollToParaId:r,getPageNumberForPmPos:t=>{let n=e.layout.value;if(!n)return null;let r=(0,M.findPageIndexContainingPmPos)(n,t);return r==null?null:r+1}},a}function c(){return e.layout.value?.pages.length??0}function l(){let t=e.layout.value,n=e.editorView.value;if(!t||!n)return 0;let r=(0,M.findPageIndexContainingPmPos)(t,n.state.selection.from);return r==null?0:r+1}function u(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:s,getEditor:()=>e.editor,save:n,setZoom:e.setZoom,getZoom:i,focus:e.focus,getCurrentPage:l,getTotalPages:c,scrollToPage:u,scrollToParaId:r,openPrintPreview:()=>t(),print:t,loadDocument:e.loadDocument,loadDocumentBuffer:e.loadDocumentBuffer,ensureEditorView:()=>e.editor.ensureView(),createAIEditSnapshot:()=>{let t=e.editorView.value;return t?(0,j.createFolioAIEditSnapshot)(t.state.doc):null},applyAIEditOperations:({snapshot:t,operations:n,mode:r=`tracked-changes`,author:i=e.author()})=>{let a=e.editorView.value;return a?(0,j.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,D.acceptAIEditRevision)(t)(n.state,n.dispatch):!1},rejectAIEditOperation:t=>{let n=e.editorView.value;return n?(0,D.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,D.findAIEditRevisionRange)(n.state,t);if(!r)return!1;let{from:i,to:a}=tn(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=$t({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},getTrackedChanges:()=>{let t=e.editorView.value;return t?(0,j.getTrackedChangesFromDoc)(t.state.doc):[]},getCommentAnchors:()=>{let t=e.editorView.value;return t?(0,j.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?nn(e.layout.value,n.state.doc,t):null},getContentControls:(t={})=>{let n=e.editorView.value;return n?(0,P.findBlockSdtMatches)(n.state.doc,t).map(e=>({properties:(0,P.blockSdtAttrsToSdtProperties)(e.node),path:e.path,pmPos:e.pos})):[]},scrollToContentControl:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,P.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,P.setContentControlContentTr)(i.state,t,n,r):(0,F.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,P.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,P.removeContentControlTr)(r.state,t,n);return i?(r.dispatch(i),!0):!1}}}}function an(e){let t=()=>e.activeView?.value??e.editorView.value;function n(){let e=t();e&&((0,ee.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,B.getCachedNumberingMap)(i.package.numbering):null};e.paragraphFormatting&&(t.paragraphFormatting=e.paragraphFormatting),e.runFormatting&&(t.runFormatting=e.runFormatting),(0,z.applyStyle)(n,t)(r.state,e=>r.dispatch(e))}else (0,z.applyStyle)(n)(r.state,e=>r.dispatch(e));r.focus()}function i(){let t=e.editorView.value;t&&((0,te.insertPageBreak)(t.state,e=>t.dispatch(e),t),t.focus())}function a(){let t=e.editorView.value;t&&((0,ne.insertSectionBreakNextPage)(t.state,e=>t.dispatch(e),t),t.focus())}function s(){let t=e.editorView.value;t&&((0,ne.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 on(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,re.editHyperlinkAtCursor)(i,{displayText:n,href:r}),t.value=null,i.focus())}function c(){let n=e.editorView.value;n&&((0,re.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 sn(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 cn(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 ln(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 un(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,z.setIndentLeft)(t)(n.state,n.dispatch)}function c(t){let n=e.editorView.value;n&&(0,z.setIndentRight)(t)(n.state,n.dispatch)}function l(t){let n=e.editorView.value;n&&(t<0?(0,z.setIndentFirstLine)(-t,!0)(n.state,n.dispatch):(0,z.setIndentFirstLine)(t,!1)(n.state,n.dispatch))}function u(t){let n=e.editorView.value;n&&(0,z.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 dn=/[\p{L}\p{N}\p{M}_''-]/u,fn=/\s/;function pn(e){return!e||e.length===0?!1:dn.test(e)}function mn(e){return!e||e.length===0?!1:fn.test(e)}function hn(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(mn(n)){let n=t,r=t;for(;n>0&&mn(e[n-1]);)n--;for(;r<e.length&&mn(e[r]);)r++;return[n,r]}if(pn(n)){let n=t,r=t;for(;n>0&&pn(e[n-1]);)n--;for(;r<e.length&&pn(e[r]);)r++;return[n,r]}return[t,t+1]}function gn(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 _n(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 vn(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 yn(e,t,n,r){if(!e)return;let i=gn(e,t,r);if(!i)return;let a=i.textContent??``,o=Number(i.dataset.pmStart)||0,[s,c]=hn(a,t-o),l=o+s,u=o+c;l<u&&n(l,u)}function bn(e,t,n,r){if(!e)return;let i=gn(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 xn=500;function Sn(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 vn(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){_n(e.pagesRef.value,e.pagesViewportRef.value,t)}function S(t){yn(e.pagesRef.value,t,b,o.value?.position)}function ee(t){bn(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<xn&&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 Cn(e){return typeof e==`string`&&e.trim().length>0}function wn(e){return typeof e!=`object`||!e?!1:Cn(Reflect.get(e,`family`))&&Cn(Reflect.get(e,`src`))}function Tn(e){if(!e)return[];let t=[];for(let n of e){if(!wn(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 En(){return typeof document>`u`||!(`fonts`in document)?null:document.fonts}async function Dn(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 On(e){let t=En();if(!t)return[];let n=Tn(e);if(n.length===0)return[];let r=[];return await Promise.all(n.map(async({family:e,source:n,descriptors:i})=>{let a=await Dn(t,e,n,i);a&&r.push(a)})),r}function kn(e){let t=En();if(t)for(let n of e)t.delete(n)}var An={class:`docx-editor-vue__toolbar-shell`},jn={key:0,class:`docx-editor-vue__error`},Mn={key:1,class:`docx-editor-vue__loading`},Nn={key:2,class:`docx-editor-vue__placeholder`},Pn={class:`docx-editor-vue__editor-area`},Fn={key:0,class:`docx-editor-vue__ruler-h`},In={key:1,class:`docx-editor-vue__ruler-v`},Ln={class:`docx-editor-vue__editor-content-wrapper`,style:{position:`relative`,display:`flex`,flexDirection:`column`,minHeight:`100%`}},Rn={"data-testid":`selection-overlay`,class:`docx-editor-vue__decoration-origin`,"aria-hidden":`true`},zn=[`aria-label`],Bn=(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),Ee((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),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)([]),re=(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)}cn({showKeyboardShortcuts:F,showFindReplace:N,showHyperlink:P,handleZoomKeyDown:le});let{editor:W,editorView:G,editorState:fe,isReady:K,isDirty:q,parseError:pe,layout:me,blocks:ge,measures:_e,loadBuffer:ve,loadDocument:ye,save:Se,getDocument:J,getCommands:Y,focus:Ce,reLayout:Te}=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}),De=(0,a.computed)(()=>!K.value&&T.value&&!(p.preserveDocumentWhileLoading===!0&&E.value));function Oe(){G.value&&((0,l.resetCanvasContext)(),(0,l.clearAllCaches)(),Te())}(0,a.watch)(()=>p.fonts,(e,t,n)=>{if(!e||e.length===0)return;let r=!1,i=[];On(e).then(e=>{if(r){kn(e);return}i=e,e.length!==0&&Oe()}),n(()=>{r=!0,i.length!==0&&(kn(i),Oe())})},{immediate:!0});let{selectedImage:ke,imageInteracting:Ae,imageToolbarContext:je,handleToolbarImageWrap:Me,handleImageTransform:Ne}=sn({editorView:G,zoom:V,stateTick:M,getCommands:Y}),{hyperlinkPopupData:Pe,handleHyperlinkSubmit:Fe,handleHyperlinkRemove:Ie,handleHyperlinkPopupNavigate:Le,handleHyperlinkPopupEdit:Re,handleHyperlinkPopupRemove:ze}=on({editorView:G,getCommands:Y}),Be=r.r(),{tableInsertButton:Ve,scrollPageInfo:X,resolvePos:He,setPmSelection:Ue,scrollVisiblePositionIntoView:We,handlePagesMouseDown:Ge,handlePagesMouseMove:Ke,handlePagesClick:qe,handleTableInsertClick:Je}=Sn({editorView:G,pagesRef:O,pagesViewportRef:k,selectedImage:ke,imageInteracting:Ae,hyperlinkPopupData:Pe,readOnly:g,zoom:V,layout:me,tableResize:{tryStartResize:Be.tryStartResize,isResizing:(0,a.computed)(()=>Be.isResizing())},getCommands:Y,getDocument:J,reLayout:Te,emit:()=>{},clearOverlay:()=>{}}),Z=ln({editorView:G,showOutline:z,showSidebar:B,outlineHeadings:re,activeSidebarItem:te,extractCommentsAndChanges:()=>{},scrollToVisiblePosition:We}),{contextMenu:Ye,imageContextMenu:Xe,imageContextMenuTextActions:Ze,customTextMenuItems:$e,handleContextMenu:et,handleSelectedImageContextMenu:tt,handleImageWrapSelect:nt,handleContextMenuAction:rt}=Zt({editorView:G,selectedImage:ke,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=zt({editorView:G,getDocument:J,author:()=>p.author,commentsProp:()=>p.comments,onCommentsChange:e=>{p.onCommentsChange?.(e),m(`comments-change`,e)},reLayout:Te}),ot=Q.comments,$=Rt({editorView:G,pagesViewport:k,pagesContainer:O,readOnly:g,createComment:Q.createComment,pushComment:Q.pushComment,reLayout:Te,showSidebar:B,setActiveSidebarItem:e=>{te.value=e}});function ct(e){navigator.clipboard?.writeText(e),Pe.value=null}let ut=(0,a.computed)(()=>{M.value;let e=J()?.package.document;return e?e.finalSectionProperties??e.sections?.[0]?.properties??null:null}),ft=(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)(ut.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}=an({editorView:G,getDocument:J});function xt(){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:Mt,handleFirstLineIndentChange:Nt,handleTabStopRemove:Pt}=un({editorView:G,getDocument:J,readOnly:g,stateTick:M,reLayout:Te,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`:R.value=!0;break;case`toggleOutline`:Z.handleToggleOutline();break;case`toggleSidebar`:B.value=!B.value;break;case`insertImage`:xt();break;case`insertPageBreak`:Ct();break;case`insertSectionBreakNextPage`:vt();break;case`insertSectionBreakContinuous`:yt();break;case`insertTOC`:wt();break;default:break}m(`menu-action`,e)}function Bt(e,t){St(e,t)}let Vt=(0,a.ref)(!1);Qt({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=>{z.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,B.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=Be.install(),i=(0,u.onFontsLoaded)(()=>p.onFontsLoaded?.());(0,a.onBeforeUnmount)(()=>{e(),t(),n(),r(),i()})});let{exposed:Gt}=rn({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},focus:Ce,getDocument:J,setZoom:H,save:Se,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`,An,[(0,a.createVNode)(we,{"show-table-insert":p.showTableInsert!==!1,onRename:i[0]||=e=>m(`rename`,e),onMenuAction:Lt,onInsertTable:Bt},{"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.b,(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":B.value,"image-context":(0,a.unref)(je),theme:n.theme??null},ft.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=>R.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=>B.value=!B.value,onModeChange:It,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.p,{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)(xe,{"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)(G),bookmarks:ne.value,"selected-image-pm-pos":(0,a.unref)(ke)?.pmPos??null,"section-properties":ut.value,onInsertSymbol:(0,a.unref)(_t),onHyperlinkSubmit:(0,a.unref)(Fe),onHyperlinkRemove:(0,a.unref)(Ie),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`,jn,(0,a.toDisplayString)((0,a.unref)(pe)),1)):De.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Mn,[(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`,Nn,[(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`,Pn,[j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Fn,[(0,a.createVNode)(t.y,{"section-props":ut.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)(Mt),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`,In,[(0,a.createVNode)(t.f,{"section-props":ut.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`,Ln,[(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`,Rn,[(0,a.createVNode)(he,{"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)(ge),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)(bt,{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)(ge),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)(st,{"image-info":(0,a.unref)(ke),zoom:(0,a.unref)(V),view:(0,a.unref)(G),onDeselect:i[12]||=e=>ke.value=null,onInteractStart:i[13]||=e=>Ae.value=!0,onInteractEnd:i[14]||=e=>Ae.value=!1,onContextMenu:(0,a.unref)(tt)},null,8,[`image-info`,`zoom`,`view`,`onContextMenu`]),(0,a.createVNode)(jt,{data:(0,a.unref)(Pe),"read-only":g.value,onNavigate:(0,a.unref)(Le),onCopy:ct,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,zn)):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(t.O,{comments:(0,a.unref)(ot),"pages-container":O.value,zoom:(0,a.unref)(V),"page-width-px":pt.value,"sidebar-open":B.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.a,{"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":pt.value,zoom:(0,a.unref)(V),"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)(lt,{key:2,"left-offset":12,onToggle:(0,a.unref)(Z).handleToggleOutline},null,8,[`onToggle`])),(0,a.unref)(X).totalPages>1?((0,a.openBlock)(),(0,a.createBlock)(dt,{key:3,"current-page":(0,a.unref)(X).currentPage,"total-pages":(0,a.unref)(X).totalPages,visible:(0,a.unref)(X).visible},null,8,[`current-page`,`total-pages`,`visible`])):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(be,{"is-open":z.value,headings:re.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)(Qe,{"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)($e),"can-open-image-properties":(0,a.unref)(ke)!==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))}}),Vn=e.F(Bn,[[`__scopeId`,`data-v-1313e086`]]),Hn=[`aria-label`],Un=[`aria-label`],Wn=[`disabled`,`title`,`aria-label`],Gn=[`disabled`,`title`,`aria-label`],Kn=[`aria-label`],qn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Jn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Yn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Xn=(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??t.n()),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,Wn),(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,Gn)],8,Un),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.i,(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,qn),(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,Jn),(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,Yn)],8,Kn),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.r,{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,Hn))}}),Zn=e.F(Xn,[[`__scopeId`,`data-v-225f770f`]]),Qn=[{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%`}],$n=(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??Qn),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`]))}}),er=e.F($n,[[`__scopeId`,`data-v-8079e07f`]]),tr=(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)(Vn,{...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 se.DEFAULT_AI_SUGGESTION_PRESETS}}),Object.defineProperty(exports,"DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES",{enumerable:!0,get:function(){return K.DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES}}),exports.DocxEditor=Vn,exports.FindReplaceDialog=i.FindReplaceDialog,exports.FolioUIProvider=e.g,exports.FootnotePropertiesDialog=i.FootnotePropertiesDialog,exports.FormattingBar=Zn,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=er,Object.defineProperty(exports,"acceptAutocompleteSuggestion",{enumerable:!0,get:function(){return K.acceptAutocompleteSuggestion}}),Object.defineProperty(exports,"acceptAutocompleteWord",{enumerable:!0,get:function(){return K.acceptAutocompleteWord}}),Object.defineProperty(exports,"anonymizationDecorationsKey",{enumerable:!0,get:function(){return m.anonymizationDecorationsKey}}),Object.defineProperty(exports,"appendAutocompleteToken",{enumerable:!0,get:function(){return K.appendAutocompleteToken}}),Object.defineProperty(exports,"applyFolioAIEditOperations",{enumerable:!0,get:function(){return j.applyFolioAIEditOperations}}),Object.defineProperty(exports,"applySuggestions",{enumerable:!0,get:function(){return ce.applySuggestions}}),Object.defineProperty(exports,"autocompleteSuggestionKey",{enumerable:!0,get:function(){return K.autocompleteSuggestionKey}}),Object.defineProperty(exports,"autocompleteSuggestionPlugin",{enumerable:!0,get:function(){return K.autocompleteSuggestionPlugin}}),Object.defineProperty(exports,"buildPositionalText",{enumerable:!0,get:function(){return ue.buildPositionalText}}),Object.defineProperty(exports,"clearAutocompleteSuggestion",{enumerable:!0,get:function(){return K.clearAutocompleteSuggestion}}),Object.defineProperty(exports,"clearTemplateSlashMenu",{enumerable:!0,get:function(){return A.clearTemplateSlashMenu}}),Object.defineProperty(exports,"consumeTemplateSlashQuery",{enumerable:!0,get:function(){return A.consumeTemplateSlashQuery}}),Object.defineProperty(exports,"createAICitationDecorationsPlugin",{enumerable:!0,get:function(){return fe.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 j.createFolioAIEditSnapshot}}),exports.defaultLocale=e.O,Object.defineProperty(exports,"deriveBlockId",{enumerable:!0,get:function(){return R.deriveBlockId}}),Object.defineProperty(exports,"diffWordSegments",{enumerable:!0,get:function(){return j.diffWordSegments}}),Object.defineProperty(exports,"finishAutocompleteSuggestion",{enumerable:!0,get:function(){return K.finishAutocompleteSuggestion}}),Object.defineProperty(exports,"fromMarkdown",{enumerable:!0,get:function(){return q.fromMarkdown}}),Object.defineProperty(exports,"getAnonymizationMatches",{enumerable:!0,get:function(){return m.getAnonymizationMatches}}),Object.defineProperty(exports,"getAutocompleteSuggestion",{enumerable:!0,get:function(){return K.getAutocompleteSuggestion}}),Object.defineProperty(exports,"getDocumentWatermark",{enumerable:!0,get:function(){return oe.getDocumentWatermark}}),Object.defineProperty(exports,"getFolioCaretViewportRect",{enumerable:!0,get:function(){return G.getFolioCaretViewportRect}}),Object.defineProperty(exports,"getFolioParaIdFromBlockId",{enumerable:!0,get:function(){return R.getFolioParaIdFromBlockId}}),Object.defineProperty(exports,"getFolioSelectionViewportRect",{enumerable:!0,get:function(){return G.getFolioSelectionViewportRect}}),Object.defineProperty(exports,"getTemplateDirectives",{enumerable:!0,get:function(){return S.getTemplateDirectives}}),Object.defineProperty(exports,"getTemplateSlashMenu",{enumerable:!0,get:function(){return A.getTemplateSlashMenu}}),Object.defineProperty(exports,"hashFolioAIBlockText",{enumerable:!0,get:function(){return j.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 R.isFolioBlockId}}),Object.defineProperty(exports,"isSequentialFolioBlockId",{enumerable:!0,get:function(){return R.isSequentialFolioBlockId}}),Object.defineProperty(exports,"isSuggestionStale",{enumerable:!0,get:function(){return le.isSuggestionStale}}),Object.defineProperty(exports,"normalizeFolioAIBlockText",{enumerable:!0,get:function(){return j.normalizeFolioAIBlockText}}),exports.provideLocale=e.A,exports.renderAsync=tr,Object.defineProperty(exports,"resetTemplateSlashQuery",{enumerable:!0,get:function(){return A.resetTemplateSlashQuery}}),Object.defineProperty(exports,"resolveSuggestionAnchor",{enumerable:!0,get:function(){return le.resolveSuggestionAnchor}}),Object.defineProperty(exports,"scanDirectives",{enumerable:!0,get:function(){return S.scanDirectives}}),Object.defineProperty(exports,"scrollFolioPositionIntoView",{enumerable:!0,get:function(){return W.scrollFolioPositionIntoView}}),Object.defineProperty(exports,"setAICitationsMeta",{enumerable:!0,get:function(){return fe.setAICitationsMeta}}),Object.defineProperty(exports,"setAISuggestionsMeta",{enumerable:!0,get:function(){return de.setAISuggestionsMeta}}),Object.defineProperty(exports,"setActiveCitationMeta",{enumerable:!0,get:function(){return fe.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 de.setFocusedSuggestionMeta}}),Object.defineProperty(exports,"setTemplatePreviewValues",{enumerable:!0,get:function(){return k.setTemplatePreviewValues}}),Object.defineProperty(exports,"shouldTriggerAutocomplete",{enumerable:!0,get:function(){return K.shouldTriggerAutocomplete}}),Object.defineProperty(exports,"startAutocompleteSuggestion",{enumerable:!0,get:function(){return K.startAutocompleteSuggestion}}),Object.defineProperty(exports,"templateSlashMenuKey",{enumerable:!0,get:function(){return A.templateSlashMenuKey}}),Object.defineProperty(exports,"toMarkdown",{enumerable:!0,get:function(){return q.toMarkdown}}),Object.defineProperty(exports,"toMarkdownResult",{enumerable:!0,get:function(){return q.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-BB6hSMvM.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("@stll/folio-core/prosemirror/commands/formatting"),C=require("@stll/folio-core/prosemirror/extensions/nodes/TableExtension"),w=require("@stll/folio-core/prosemirror/commentIdAllocator"),T=require("@stll/folio-core/prosemirror/commentOps"),E=require("@stll/folio-core/prosemirror/queries"),D=require("@stll/folio-core/prosemirror/commands/comments"),O=require("@stll/folio-core/prosemirror/plugins/suggestionMode"),k=require("@stll/folio-core/prosemirror/plugins/templatePreviewValues"),A=require("@stll/folio-core/prosemirror/plugins/templateSlashMenu"),j=require("@stll/folio-core/ai-edits"),M=require("@stll/folio-core/layout-engine"),N=require("@stll/folio-core/paged-layout/paragraphFlash"),P=require("@stll/folio-core/prosemirror/commands/contentControls"),F=require("@stll/folio-core/prosemirror/commands/contentControlsBlockFill"),I=require("@stll/folio-core/ai-edits/blockRange"),L=require("@stll/folio-core/paged-layout/pageText"),R=require("@stll/folio-core/prosemirror/commands/paragraph"),te=require("@stll/folio-core/docx"),z=require("@stll/folio-core/prosemirror/commands/pageBreak"),B=require("@stll/folio-core/prosemirror/commands/sectionBreak"),ne=require("@stll/folio-core/prosemirror/commands/hyperlink"),re=require("@stll/folio-core/utils/headingCollector"),V=require("@stll/folio-core/layout-bridge/tableInsertHover"),ie=require("@stll/folio-core/prosemirror/cellDragSelection"),ae=require("@stll/folio-core/watermark"),oe=require("@stll/folio-core/utils/createDocument"),se=require("@stll/folio-core/docx/rezip"),H=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"),fe=require("@stll/folio-core/prosemirror/plugins/aiSuggestionDecorations"),U=require("@stll/folio-core/paged-layout/scrollToPmPosition"),W=require("@stll/folio-core/paged-layout/selectionViewportRect"),pe=require("@stll/folio-core/prosemirror/plugins/aiCitationDecorations"),G=require("@stll/folio-core/prosemirror/plugins/autocompleteSuggestion"),K=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))}}),Ce={key:0,class:`docx-editor-vue__title-bar`},q={class:`docx-editor-vue__title-bar-left`},J={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`,Ce,[(0,a.createElementVNode)(`div`,q,[(0,a.renderSlot)(n.$slots,`title-bar-left`)]),(0,a.createElementVNode)(`div`,J,[(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)}}),Y=Symbol(`docx-portal-class`);function Ee(e){(0,a.provide)(Y,(0,a.computed)(()=>({"ep-root":!0,dark:!!(0,a.unref)(e)})))}function De(){return(0,a.inject)(Y,(0,a.computed)(()=>({"ep-root":!0})))}var Oe=[`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,X=10,He=(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=De(),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-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:`${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,Oe)):(0,a.createCommentVNode)(``,!0)]))}}),Ue=e.F(He,[[`__scopeId`,`data-v-fc8f35bc`]]),We=[`disabled`,`onMousedown`],Ge={key:0,class:`ctx-menu__icon`},Ke={class:`ctx-menu__label`},qe={key:1,class:`ctx-menu__shortcut`},Je=220,Z=32,Ye=10,Xe=(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=De(),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*Z+i*9;return typeof window<`u`&&(e+Je+Ye>window.innerWidth&&(e=window.innerWidth-Je-Ye),t+a+Ye>window.innerHeight&&(t=window.innerHeight-a-Ye)),{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`,Ge,[(0,a.createVNode)(i,{node:e.icon},null,8,[`node`])])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`span`,Ke,(0,a.toDisplayString)(e.label),1),e.shortcut?((0,a.openBlock)(),(0,a.createElementBlock)(`span`,qe,(0,a.toDisplayString)(e.shortcut),1)):(0,a.createCommentVNode)(``,!0)],42,We))),128))],38)):(0,a.createCommentVNode)(``,!0)]))}}),Ze=e.F(Xe,[[`__scopeId`,`data-v-c1416e84`]]),Qe=(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)(Ze,{"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)(Ue,{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 $e(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 et=[`data-handle`,`onMousedown`],tt=[`title`],nt={key:0,class:`image-overlay__dim`},rt={key:1,class:`image-overlay__dim image-overlay__dim--rotate`},it=4,at=15,Q=250,ot=700,$=(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=$e({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>=Q&&n>=2)&&o<ot&&(e=requestAnimationFrame(i))};e=requestAnimationFrame(i);let a=setTimeout(P,Q);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),R=(0,a.computed)(()=>l.value?p.value:v.value?.height||0),te=(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=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 B(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`,ne),document.addEventListener(`mouseup`,re))}function ne(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 re(){document.removeEventListener(`mousemove`,ne),document.removeEventListener(`mouseup`,re),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&&K(n),(0,a.nextTick)(()=>P())}let V=0,ie=0,ae=0,oe=0,se=null,H=null;function ce(e){if(!e)return 0;let t=e.match(/rotate\((-?\d+(?:\.\d+)?)deg\)/)?.[1];return t?parseFloat(t):0}function le(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 ue(e,t){return Math.atan2(e-V,-(t-ie))*180/Math.PI}function de(e){if(!o.imageInfo)return;let t=o.imageInfo.element.getBoundingClientRect();V=t.left+t.width/2,ie=t.top+t.height/2,se=j(A(o.view,o.imageInfo.pmPos)),oe=ce(se),H=o.imageInfo.element.querySelector(`img`),ae=ue(e.clientX,e.clientY),m.value=oe,d.value=!0,s(`interact-start`),document.addEventListener(`mousemove`,fe),document.addEventListener(`mouseup`,U)}function fe(e){let t=ue(e.clientX,e.clientY)-ae,n=oe+t;e.shiftKey||(n=Math.round(n/at)*at),m.value=(n%360+360)%360,H&&(H.style.transform=le(se,m.value)||``)}function U(){document.removeEventListener(`mousemove`,fe),document.removeEventListener(`mouseup`,U),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:le(j(n),m.value)})),K(t.pmPos))}catch{}finally{H&&(H.style.transform=``),H=null,se=null}(0,a.nextTick)(()=>P())}let W=null;function pe(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)<it)){if(!i){i=!0,u.value=!0,s(`interact-start`),W=document.createElement(`div`),W.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;W.style.width=`${r.width*e}px`,W.style.height=`${r.height*e}px`,document.body.appendChild(W)}if(W){let t=o.zoom;W.style.left=`${e.clientX-r.width*t/2}px`,W.style.top=`${e.clientY-r.height*t/2}px`}}},c=e=>{document.removeEventListener(`mousemove`,a),document.removeEventListener(`mouseup`,c),O=null,k=null,W&&=(W.remove(),null),u.value=!1,i&&(s(`interact-end`),G(e.clientX,e.clientY))};O=a,k=c,document.addEventListener(`mousemove`,a),document.addEventListener(`mouseup`,c)}function G(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&&K(s),(0,a.nextTick)(()=>P())}function K(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`,ne),document.removeEventListener(`mouseup`,re),document.removeEventListener(`mousemove`,fe),document.removeEventListener(`mouseup`,U),O&&document.removeEventListener(`mousemove`,O),k&&document.removeEventListener(`mouseup`,k),W&&=(W.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)(te.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=>pe(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=>B(t,e.pos),[`prevent`,`stop`])},null,44,et))),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=>de(e),[`prevent`,`stop`])},null,44,tt),l.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,nt,(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`,rt,(0,a.toDisplayString)(Math.round(m.value))+`° `,1)):(0,a.createCommentVNode)(``,!0)],36)):(0,a.createCommentVNode)(``,!0)}}),st=e.F($,[[`__scopeId`,`data-v-4c3d1a1d`]]),ct=[`title`,`aria-label`],lt=(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,ct))}}),ut=(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))}}),dt=e.F(ut,[[`__scopeId`,`data-v-f1904974`]]),ft=[`data-folio-block-id`],pt=[`data-folio-block-id`,`title`],mt=2.5,ht=5,gt=6,_t=2,vt=2,yt=(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-gt-mt-_t;return t<=0?0:Math.floor(t/ht)}function s(e,t,n){let r=o(n),i=Math.min(Math.max(0,e),r);return t-gt-mt-(r-i)*ht}function c(e,t){if(t.length===0)return e.bottom-e.top>=vt?[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>=vt&&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:`${mt*e.zoom}px`,height:`${Math.max(0,n.bottom-n.top)*e.zoom}px`})},null,14,ft))),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,pt))),128))],64))),128))],32))}}),bt=e.F(yt,[[`__scopeId`,`data-v-142d2ac6`]]),xt=[`href`,`title`],St=[`title`],Ct=[`title`],wt=[`title`],Tt={class:`docx-hyperlink-popup__edit-row`},Et=[`placeholder`,`onKeydown`],Dt={class:`docx-hyperlink-popup__edit-row`},Ot=[`onKeydown`],kt=[`disabled`],At=(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`,Tt,[(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,Et),[[a.vModelText,c.value]])]),(0,a.createElementVNode)(`div`,Dt,[(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,Ot),[[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,kt)])],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,xt),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,St),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,Ct)),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,wt))],64))],38)):(0,a.createCommentVNode)(``,!0)}}),jt=e.F(At,[[`__scopeId`,`data-v-366df18c`]]);function Mt(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 Nt({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?Mt(e,i):null}function Pt(e,t,n,r){let i=e.state.schema.marks.comment,a=Mt(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:w.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 Ft(e,t){let n=e.state.schema.marks.comment,r=Mt(e.state.doc.content.size,t);!n||!r||e.dispatch(e.state.tr.removeMark(r.from,r.to,n.create({commentId:w.PENDING_COMMENT_ID})))}var It=408,Lt=12;function Rt(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+Lt:l.width/2+It;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=Nt({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(!Pt(a,u,w.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 Pt(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&&Ft(t,i.value),u()}return{isAddingComment:t,addCommentYPosition:n,floatingCommentButton:r,updateFloatingButton:c,startAddComment:l,handleAddComment:d,handleCancelAddComment:f}}function zt(e){let t=(0,w.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,w.seedCommentAllocator)(t,c.value,e.editorView.value),(0,T.createComment)(t,n,e.author(),r)}function f(){if(o(),s.value)return;let n=e.getDocument()?.package.document.comments;(0,w.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,E.findChangeRange)(r,t);i&&(n?D.acceptChange:D.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,D.acceptChange)(t,n)(r.state,r.dispatch)}function S(t,n){let r=e.editorView.value;r&&(0,D.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 Bt(e,t,n){let r=(0,O.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 Vt(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 Ht(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 Ut(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 Wt(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);Bt(e,o,a),e.dispatch(o)}async function Gt(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 Ht(await n.getType(t)),i=await Ut(r),a=i.width,o=i.height;a>612&&(o=Math.round(612/a*o),a=612),Wt(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;Wt(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 Kt(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 Ht(i),o=await Ut(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 Jt(e){return typeof e==`string`&&qt.has(e)}function Yt(e){return Jt(e)?e:`inline`}function Xt(e){return e===`left`||e===`right`||e===`none`?e:null}function Zt(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},Yt(s.attrs.wrapType),Xt(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,C.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},Yt(o.attrs.wrapType),Xt(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;Vt(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?Vt(n,t.selectedImage.value.pmPos):(n.focus(),document.execCommand(`copy`));break;case`paste`:Gt(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&&Kt(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 Qt(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)})}function $t(e){function t(){e.onPrint?.(),window.print()}async function n(t){let n=await e.save(t);if(!n)return null;let r=await n.arrayBuffer();return e.clearCommentsDirty(),e.onSave?.(r),r}function r(t,n){let r=e.pagesRef.value;if(!r)return!1;let i=(0,N.findParagraphFragmentsByParaId)(r,t),a=i.at(0);return a?(a.scrollIntoView({block:`center`,behavior:`smooth`}),n?.highlight&&(0,N.flashParagraphElements)(i,n.highlight),!0):!1}function i(){return e.zoom.value}let a=null;function s(){return a??={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:u,scrollToParaId:r,getPageNumberForPmPos:t=>{let n=e.layout.value;if(!n)return null;let r=(0,M.findPageIndexContainingPmPos)(n,t);return r==null?null:r+1}},a}function c(){return e.layout.value?.pages.length??0}function l(){let t=e.layout.value,n=e.editorView.value;if(!t||!n)return 0;let r=(0,M.findPageIndexContainingPmPos)(t,n.state.selection.from);return r==null?0:r+1}function u(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:s,getEditor:()=>e.editor,save:n,setZoom:e.setZoom,getZoom:i,focus:e.focus,getCurrentPage:l,getTotalPages:c,scrollToPage:u,scrollToParaId:r,openPrintPreview:()=>t(),print:t,loadDocument:e.loadDocument,loadDocumentBuffer:e.loadDocumentBuffer,ensureEditorView:()=>e.editor.ensureView(),createAIEditSnapshot:()=>{let t=e.editorView.value;return t?(0,j.createFolioAIEditSnapshot)(t.state.doc):null},applyDocumentOperations:({snapshot:t,batch:n,author:r=e.author()})=>{(0,j.assertSupportedFolioDocumentOperationVersion)(n.version);let i=e.editorView.value;if(!i){let e=`committed`;n.dryRun===!0?e=`previewed`:n.atomic===!0&&(e=`rejected`);let t=n.operations.map(e=>({id:e.id,reason:`unsupportedBlock`}));return{version:j.FOLIO_DOCUMENT_OPERATION_CONTRACT_VERSION,status:e,applied:[],skipped:t,issues:(0,j.getFolioDocumentOperationIssues)(n.operations,t),receipts:[]}}return(0,j.applyFolioDocumentOperations)({view:i,snapshot:t,batch:n,author:r,createCommentId:e.createAIEditComment})},applyAIEditOperations:({snapshot:t,operations:n,mode:r=`tracked-changes`,author:i=e.author()})=>{let a=e.editorView.value;return a?(0,j.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,D.acceptAIEditRevision)(t)(n.state,n.dispatch):!1},rejectAIEditOperation:t=>{let n=e.editorView.value;return n?(0,D.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,D.findAIEditRevisionRange)(n.state,t);if(!r)return!1;let{from:i,to:a}=(0,I.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,I.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},getTrackedChanges:()=>{let t=e.editorView.value;return t?(0,j.getTrackedChangesFromDoc)(t.state.doc):[]},getCommentAnchors:()=>{let t=e.editorView.value;return t?(0,j.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,L.getPageTextFromLayout)(e.layout.value,n.state.doc,t):null},getContentControls:(t={})=>{let n=e.editorView.value;return n?(0,P.findBlockSdtMatches)(n.state.doc,t).map(e=>({properties:(0,P.blockSdtAttrsToSdtProperties)(e.node),path:e.path,pmPos:e.pos})):[]},scrollToContentControl:t=>{let n=e.editorView.value;if(!n)return!1;let r=(0,P.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,P.setContentControlContentTr)(i.state,t,n,r):(0,F.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,P.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,P.removeContentControlTr)(r.state,t,n);return i?(r.dispatch(i),!0):!1}}}}function en(e){let t=()=>e.activeView?.value??e.editorView.value;function n(){let e=t();e&&((0,ee.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,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,z.insertPageBreak)(t.state,e=>t.dispatch(e),t),t.focus())}function a(){let t=e.editorView.value;t&&((0,B.insertSectionBreakNextPage)(t.state,e=>t.dispatch(e),t),t.focus())}function s(){let t=e.editorView.value;t&&((0,B.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 tn(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,ne.editHyperlinkAtCursor)(i,{displayText:n,href:r}),t.value=null,i.focus())}function c(){let n=e.editorView.value;n&&((0,ne.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 nn(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 rn(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 an(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=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 on(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 sn=/[\p{L}\p{N}\p{M}_''-]/u,cn=/\s/;function ln(e){return!e||e.length===0?!1:sn.test(e)}function un(e){return!e||e.length===0?!1:cn.test(e)}function dn(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(un(n)){let n=t,r=t;for(;n>0&&un(e[n-1]);)n--;for(;r<e.length&&un(e[r]);)r++;return[n,r]}if(ln(n)){let n=t,r=t;for(;n>0&&ln(e[n-1]);)n--;for(;r<e.length&&ln(e[r]);)r++;return[n,r]}return[t,t+1]}function fn(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 pn(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 mn(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 hn(e,t,n,r){if(!e)return;let i=fn(e,t,r);if(!i)return;let a=i.textContent??``,o=Number(i.dataset.pmStart)||0,[s,c]=dn(a,t-o),l=o+s,u=o+c;l<u&&n(l,u)}function gn(e,t,n,r){if(!e)return;let i=fn(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 _n=500;function vn(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,ie.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 mn(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){pn(e.pagesRef.value,e.pagesViewportRef.value,t)}function S(t){hn(e.pagesRef.value,t,b,o.value?.position)}function ee(t){gn(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,V.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},V.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<_n&&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,ie.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 yn(e){return typeof e==`string`&&e.trim().length>0}function bn(e){return typeof e!=`object`||!e?!1:yn(Reflect.get(e,`family`))&&yn(Reflect.get(e,`src`))}function xn(e){if(!e)return[];let t=[];for(let n of e){if(!bn(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 Sn(){return typeof document>`u`||!(`fonts`in document)?null:document.fonts}async function Cn(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 wn(e){let t=Sn();if(!t)return[];let n=xn(e);if(n.length===0)return[];let r=[];return await Promise.all(n.map(async({family:e,source:n,descriptors:i})=>{let a=await Cn(t,e,n,i);a&&r.push(a)})),r}function Tn(e){let t=Sn();if(t)for(let n of e)t.delete(n)}var En={class:`docx-editor-vue__toolbar-shell`},Dn={key:0,class:`docx-editor-vue__error`},On={key:1,class:`docx-editor-vue__loading`},kn={key:2,class:`docx-editor-vue__placeholder`},An={class:`docx-editor-vue__editor-area`},jn={key:0,class:`docx-editor-vue__ruler-h`},Mn={key:1,class:`docx-editor-vue__ruler-v`},Nn={class:`docx-editor-vue__editor-content-wrapper`,style:{position:`relative`,display:`flex`,flexDirection:`column`,minHeight:`100%`}},Pn={"data-testid":`selection-overlay`,class:`docx-editor-vue__decoration-origin`,"aria-hidden":`true`},Fn=[`aria-label`],In=(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),Ee((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),R=(0,a.ref)(!1),te=(0,a.ref)(p.showOutline),z=(0,a.ref)(!1),B=(0,a.ref)(null),ne=(0,a.shallowRef)([]),re=(0,a.shallowRef)([]),{zoom:V,zoomPercent:ie,isMinZoom:ae,isMaxZoom:oe,setZoom:se,zoomIn:H,zoomOut:ce,handleWheel:le,handleKeyDown:ue,ZOOM_PRESETS:de}=r.t(p.initialZoom);function fe(e){p.enableWheelZoom!==!1&&le(e)}rn({showKeyboardShortcuts:F,showFindReplace:N,showHyperlink:P,handleZoomKeyDown:ue});let{editor:U,editorView:W,editorState:pe,isReady:G,isDirty:K,parseError:me,layout:he,blocks:_e,measures:ve,loadBuffer:ye,loadDocument:be,save:Ce,getDocument:q,getCommands:J,focus:we,reLayout:Y}=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}),De=(0,a.computed)(()=>!G.value&&T.value&&!(p.preserveDocumentWhileLoading===!0&&E.value));function Oe(){W.value&&((0,l.resetCanvasContext)(),(0,l.clearAllCaches)(),Y())}(0,a.watch)(()=>p.fonts,(e,t,n)=>{if(!e||e.length===0)return;let r=!1,i=[];wn(e).then(e=>{if(r){Tn(e);return}i=e,e.length!==0&&Oe()}),n(()=>{r=!0,i.length!==0&&(Tn(i),Oe())})},{immediate:!0});let{selectedImage:ke,imageInteracting:Ae,imageToolbarContext:je,handleToolbarImageWrap:Me,handleImageTransform:Ne}=nn({editorView:W,zoom:V,stateTick:M,getCommands:J}),{hyperlinkPopupData:Pe,handleHyperlinkSubmit:Fe,handleHyperlinkRemove:Ie,handleHyperlinkPopupNavigate:Le,handleHyperlinkPopupEdit:Re,handleHyperlinkPopupRemove:ze}=tn({editorView:W,getCommands:J}),Be=r.r(),{tableInsertButton:Ve,scrollPageInfo:X,resolvePos:He,setPmSelection:Ue,scrollVisiblePositionIntoView:We,handlePagesMouseDown:Ge,handlePagesMouseMove:Ke,handlePagesClick:qe,handleTableInsertClick:Je}=vn({editorView:W,pagesRef:O,pagesViewportRef:k,selectedImage:ke,imageInteracting:Ae,hyperlinkPopupData:Pe,readOnly:g,zoom:V,layout:he,tableResize:{tryStartResize:Be.tryStartResize,isResizing:(0,a.computed)(()=>Be.isResizing())},getCommands:J,getDocument:q,reLayout:Y,emit:()=>{},clearOverlay:()=>{}}),Z=an({editorView:W,showOutline:te,showSidebar:z,outlineHeadings:re,activeSidebarItem:B,extractCommentsAndChanges:()=>{},scrollToVisiblePosition:We}),{contextMenu:Ye,imageContextMenu:Xe,imageContextMenuTextActions:Ze,customTextMenuItems:$e,handleContextMenu:et,handleSelectedImageContextMenu:tt,handleImageWrapSelect:nt,handleContextMenuAction:rt}=Zt({editorView:W,selectedImage:ke,zoom:V,showImageProperties:L,getCommands:J,clearOverlay:()=>{},setPmSelection:Ue,resolvePos:He,customContextMenuItems:()=>g.value?void 0:p.customContextMenuItems,onCustomContextAction:(e,t)=>p.onCustomContextAction?.(e,t)}),it=r.n(W,M),at=(0,a.computed)(()=>it.value.entries),Q=zt({editorView:W,getDocument:q,author:()=>p.author,commentsProp:()=>p.comments,onCommentsChange:e=>{p.onCommentsChange?.(e),m(`comments-change`,e)},reLayout:Y}),ot=Q.comments,$=Rt({editorView:W,pagesViewport:k,pagesContainer:O,readOnly:g,createComment:Q.createComment,pushComment:Q.pushComment,reLayout:Y,showSidebar:z,setActiveSidebarItem:e=>{B.value=e}});function ct(e){navigator.clipboard?.writeText(e),Pe.value=null}let ut=(0,a.computed)(()=>{M.value;let e=q()?.package.document;return e?e.finalSectionProperties??e.sections?.[0]?.properties??null:null}),ft=(0,a.computed)(()=>{M.value;let e={};p.fontFamilies!==void 0&&(e.fontFamilies=p.fontFamilies);let t=q()?.package.styles?.styles;return t!==void 0&&(e.documentStyles=t),e}),pt=(0,a.computed)(()=>(0,d.twipsToPixels)(ut.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}=en({editorView:W,getDocument:q});function xt(){if(p.onInsertImage){p.onInsertImage();return}let e=W.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=W.value;n&&((0,o.insertTableInView)(n,e,t),n.focus())}function Ct(){if(p.onInsertPageBreak){p.onInsertPageBreak();return}let e=W.value;e&&((0,o.insertPageBreakInView)(e),e.focus())}function wt(){if(p.onInsertTOC){p.onInsertTOC();return}let e=W.value;e&&((0,o.insertTableOfContentsInView)(e),e.focus())}let{handlePageSetupApply:Tt,handleLeftMarginChange:Et,handleRightMarginChange:Dt,handleTopMarginChange:Ot,handleBottomMarginChange:kt,handleIndentLeftChange:At,handleIndentRightChange:Mt,handleFirstLineIndentChange:Nt,handleTabStopRemove:Pt}=on({editorView:W,getDocument:q,readOnly:g,stateTick:M,reLayout:Y,onChange:e=>{p.onChange?.(e),m(`change`,e),m(`update:document`,e)}}),Ft=(0,a.computed)(()=>{M.value;let e=W.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`:R.value=!0;break;case`toggleOutline`:Z.handleToggleOutline();break;case`toggleSidebar`:z.value=!z.value;break;case`insertImage`:xt();break;case`insertPageBreak`:Ct();break;case`insertSectionBreakNextPage`:vt();break;case`insertSectionBreakContinuous`:yt();break;case`insertTOC`:wt();break;default:break}m(`menu-action`,e)}function Bt(e,t){St(e,t)}let Vt=(0,a.ref)(!1);Qt({documentBuffer:()=>p.documentBuffer??null,document:()=>p.document??null,loadDocumentBuffer:ye,loadDocument:be,sidebarAutoOpenedRef:Vt}),(0,a.watch)(()=>p.mode,e=>{e&&e!==h.value&&(h.value=e)}),(0,a.watch)(()=>p.showOutline,e=>{te.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)(G,e=>{if(!e){Ht.value=!1;return}E.value=!0,Z.recomputeHeadingsIfOpen(),Q.seedFromDocument();let t=q();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=U.on(`selectionChange`,()=>{M.value++,$.updateFloatingButton()}),t=U.on(`docChange`,()=>{M.value++,Z.recomputeHeadingsIfOpen()}),n=U.on(`layoutComplete`,()=>{M.value++}),r=Be.install(),i=(0,u.onFontsLoaded)(()=>p.onFontsLoaded?.());(0,a.onBeforeUnmount)(()=>{e(),t(),n(),r(),i()})});let{exposed:Gt}=$t({editor:U,editorView:W,isDirty:K,commentsDirty:Q.commentsDirty,clearCommentsDirty:Q.clearCommentsDirty,layout:he,pagesRef:O,pagesViewportRef:k,zoom:V,scrollVisiblePositionIntoView:We,author:()=>p.author,createAIEditComment:e=>{let t=Q.createComment(e);return Q.pushComment(t),t.id},focus:we,getDocument:q,setZoom:se,save:Ce,loadDocument:be,loadDocumentBuffer:ye,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`,En,[(0,a.createVNode)(Te,{"show-table-insert":p.showTableInsert!==!1,onRename:i[0]||=e=>m(`rename`,e),onMenuAction:Lt,onInsertTable:Bt},{"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)(W),"get-commands":(0,a.unref)(J),"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)(de),"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)(je),theme:n.theme??null},ft.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=>R.value=!0,onToggleOutline:(0,a.unref)(Z).handleToggleOutline,onApplyStyle:(0,a.unref)(gt),onZoomIn:(0,a.unref)(H),onZoomOut:(0,a.unref)(ce),onZoomSet:(0,a.unref)(se),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)(Me),onImageTransform:(0,a.unref)(Ne)}),(0,a.createSlots)({"table-context":(0,a.withCtx)(()=>[(0,a.createVNode)(t.f,{view:(0,a.unref)(W),"get-commands":(0,a.unref)(J),"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":R.value,"onUpdate:showPageSetup":i[11]||=e=>R.value=e,view:(0,a.unref)(W),bookmarks:ne.value,"selected-image-pm-pos":(0,a.unref)(ke)?.pmPos??null,"section-properties":ut.value,onInsertSymbol:(0,a.unref)(_t),onHyperlinkSubmit:(0,a.unref)(Fe),onHyperlinkRemove:(0,a.unref)(Ie),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)(me)?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,Dn,(0,a.toDisplayString)((0,a.unref)(me)),1)):De.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,On,[(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)(G)&&!T.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,kn,[(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`,An,[j.value&&!g.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,jn,[(0,a.createVNode)(t.v,{"section-props":ut.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)(Mt),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`,Mn,[(0,a.createVNode)(t.d,{"section-props":ut.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:fe,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`,Nn,[(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`,Pn,[(0,a.createVNode)(ge,{"get-view":()=>(0,a.unref)(W),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(pe),zoom:(0,a.unref)(V),layout:(0,a.unref)(he),blocks:(0,a.unref)(_e),measures:(0,a.unref)(ve),"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)(bt,{key:0,"get-view":()=>(0,a.unref)(W),"get-pages-container":()=>O.value,"editor-state":(0,a.unref)(pe),zoom:(0,a.unref)(V),layout:(0,a.unref)(he),blocks:(0,a.unref)(_e),measures:(0,a.unref)(ve)},null,8,[`get-view`,`get-pages-container`,`editor-state`,`zoom`,`layout`,`blocks`,`measures`])):(0,a.createCommentVNode)(``,!0)])]),(0,a.createVNode)(st,{"image-info":(0,a.unref)(ke),zoom:(0,a.unref)(V),view:(0,a.unref)(W),onDeselect:i[12]||=e=>ke.value=null,onInteractStart:i[13]||=e=>Ae.value=!0,onInteractEnd:i[14]||=e=>Ae.value=!1,onContextMenu:(0,a.unref)(tt)},null,8,[`image-info`,`zoom`,`view`,`onContextMenu`]),(0,a.createVNode)(jt,{data:(0,a.unref)(Pe),"read-only":g.value,onNavigate:(0,a.unref)(Le),onCopy:ct,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,Fn)):(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":B.value,onClose:i[17]||=e=>z.value=!1,"onUpdate:activeItemId":i[18]||=e=>B.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),te.value?(0,a.createCommentVNode)(``,!0):((0,a.openBlock)(),(0,a.createBlock)(lt,{key:2,"left-offset":12,onToggle:(0,a.unref)(Z).handleToggleOutline},null,8,[`onToggle`])),(0,a.unref)(X).totalPages>1?((0,a.openBlock)(),(0,a.createBlock)(dt,{key:3,"current-page":(0,a.unref)(X).currentPage,"total-pages":(0,a.unref)(X).totalPages,visible:(0,a.unref)(X).visible},null,8,[`current-page`,`total-pages`,`visible`])):(0,a.createCommentVNode)(``,!0),(0,a.createVNode)(xe,{"is-open":te.value,headings:re.value,"get-scroll-container":()=>O.value,onClose:i[24]||=e=>te.value=!1,onNavigate:(0,a.unref)(Z).handleOutlineNavigate},null,8,[`is-open`,`headings`,`get-scroll-container`,`onNavigate`])])],544),(0,a.createVNode)(Qe,{"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)($e),"can-open-image-properties":(0,a.unref)(ke)!==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))}}),Ln=e.F(In,[[`__scopeId`,`data-v-3d2b5f45`]]);function Rn(){return{type:`none`,level:0,isInList:!1}}var zn=[`aria-label`],Bn=[`aria-label`],Vn=[`disabled`,`title`,`aria-label`],Hn=[`disabled`,`title`,`aria-label`],Un=[`aria-label`],Wn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Gn=[`disabled`,`title`,`aria-label`,`aria-pressed`],Kn=[`disabled`,`title`,`aria-label`,`aria-pressed`],qn=(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??Rn()),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,Vn),(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,Hn)],8,Bn),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,Wn),(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,Gn),(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,Kn)],8,Un),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,zn))}}),Jn=e.F(qn,[[`__scopeId`,`data-v-fc03de2e`]]),Yn=[{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%`}],Xn=(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??Yn),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`]))}}),Zn=e.F(Xn,[[`__scopeId`,`data-v-8079e07f`]]),Qn=(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)(Ln,{...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 G.DEFAULT_AUTOCOMPLETE_DEAD_ZONE_NODES}}),exports.DocxEditor=Ln,exports.FindReplaceDialog=i.FindReplaceDialog,exports.FolioUIProvider=e.g,exports.FootnotePropertiesDialog=i.FootnotePropertiesDialog,exports.FormattingBar=Jn,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=Zn,Object.defineProperty(exports,"acceptAutocompleteSuggestion",{enumerable:!0,get:function(){return G.acceptAutocompleteSuggestion}}),Object.defineProperty(exports,"acceptAutocompleteWord",{enumerable:!0,get:function(){return G.acceptAutocompleteWord}}),Object.defineProperty(exports,"anonymizationDecorationsKey",{enumerable:!0,get:function(){return m.anonymizationDecorationsKey}}),Object.defineProperty(exports,"appendAutocompleteToken",{enumerable:!0,get:function(){return G.appendAutocompleteToken}}),Object.defineProperty(exports,"applyFolioAIEditOperations",{enumerable:!0,get:function(){return j.applyFolioAIEditOperations}}),Object.defineProperty(exports,"applySuggestions",{enumerable:!0,get:function(){return le.applySuggestions}}),Object.defineProperty(exports,"autocompleteSuggestionKey",{enumerable:!0,get:function(){return G.autocompleteSuggestionKey}}),Object.defineProperty(exports,"autocompleteSuggestionPlugin",{enumerable:!0,get:function(){return G.autocompleteSuggestionPlugin}}),Object.defineProperty(exports,"buildPositionalText",{enumerable:!0,get:function(){return de.buildPositionalText}}),Object.defineProperty(exports,"clearAutocompleteSuggestion",{enumerable:!0,get:function(){return G.clearAutocompleteSuggestion}}),Object.defineProperty(exports,"clearTemplateSlashMenu",{enumerable:!0,get:function(){return A.clearTemplateSlashMenu}}),Object.defineProperty(exports,"consumeTemplateSlashQuery",{enumerable:!0,get:function(){return A.consumeTemplateSlashQuery}}),Object.defineProperty(exports,"createAICitationDecorationsPlugin",{enumerable:!0,get:function(){return pe.createAICitationDecorationsPlugin}}),Object.defineProperty(exports,"createDocx",{enumerable:!0,get:function(){return se.createDocx}}),Object.defineProperty(exports,"createEmptyDocument",{enumerable:!0,get:function(){return oe.createEmptyDocument}}),Object.defineProperty(exports,"createFolioAIEditSnapshot",{enumerable:!0,get:function(){return j.createFolioAIEditSnapshot}}),exports.defaultLocale=e.O,Object.defineProperty(exports,"deriveBlockId",{enumerable:!0,get:function(){return H.deriveBlockId}}),Object.defineProperty(exports,"diffWordSegments",{enumerable:!0,get:function(){return j.diffWordSegments}}),Object.defineProperty(exports,"finishAutocompleteSuggestion",{enumerable:!0,get:function(){return G.finishAutocompleteSuggestion}}),Object.defineProperty(exports,"fromMarkdown",{enumerable:!0,get:function(){return K.fromMarkdown}}),Object.defineProperty(exports,"getAnonymizationMatches",{enumerable:!0,get:function(){return m.getAnonymizationMatches}}),Object.defineProperty(exports,"getAutocompleteSuggestion",{enumerable:!0,get:function(){return G.getAutocompleteSuggestion}}),Object.defineProperty(exports,"getDocumentWatermark",{enumerable:!0,get:function(){return ae.getDocumentWatermark}}),Object.defineProperty(exports,"getFolioCaretViewportRect",{enumerable:!0,get:function(){return W.getFolioCaretViewportRect}}),Object.defineProperty(exports,"getFolioParaIdFromBlockId",{enumerable:!0,get:function(){return H.getFolioParaIdFromBlockId}}),Object.defineProperty(exports,"getFolioSelectionViewportRect",{enumerable:!0,get:function(){return W.getFolioSelectionViewportRect}}),Object.defineProperty(exports,"getTemplateDirectives",{enumerable:!0,get:function(){return S.getTemplateDirectives}}),Object.defineProperty(exports,"getTemplateSlashMenu",{enumerable:!0,get:function(){return A.getTemplateSlashMenu}}),Object.defineProperty(exports,"hashFolioAIBlockText",{enumerable:!0,get:function(){return j.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 H.isFolioBlockId}}),Object.defineProperty(exports,"isSequentialFolioBlockId",{enumerable:!0,get:function(){return H.isSequentialFolioBlockId}}),Object.defineProperty(exports,"isSuggestionStale",{enumerable:!0,get:function(){return ue.isSuggestionStale}}),Object.defineProperty(exports,"normalizeFolioAIBlockText",{enumerable:!0,get:function(){return j.normalizeFolioAIBlockText}}),exports.provideLocale=e.A,exports.renderAsync=Qn,Object.defineProperty(exports,"resetTemplateSlashQuery",{enumerable:!0,get:function(){return A.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 U.scrollFolioPositionIntoView}}),Object.defineProperty(exports,"setAICitationsMeta",{enumerable:!0,get:function(){return pe.setAICitationsMeta}}),Object.defineProperty(exports,"setAISuggestionsMeta",{enumerable:!0,get:function(){return fe.setAISuggestionsMeta}}),Object.defineProperty(exports,"setActiveCitationMeta",{enumerable:!0,get:function(){return pe.setActiveCitationMeta}}),Object.defineProperty(exports,"setAnonymizationTermsMeta",{enumerable:!0,get:function(){return m.setAnonymizationTermsMeta}}),Object.defineProperty(exports,"setDocumentWatermark",{enumerable:!0,get:function(){return ae.setDocumentWatermark}}),Object.defineProperty(exports,"setFocusedSuggestionMeta",{enumerable:!0,get:function(){return fe.setFocusedSuggestionMeta}}),Object.defineProperty(exports,"setTemplatePreviewValues",{enumerable:!0,get:function(){return k.setTemplatePreviewValues}}),Object.defineProperty(exports,"shouldTriggerAutocomplete",{enumerable:!0,get:function(){return G.shouldTriggerAutocomplete}}),Object.defineProperty(exports,"startAutocompleteSuggestion",{enumerable:!0,get:function(){return G.startAutocompleteSuggestion}}),Object.defineProperty(exports,"templateSlashMenuKey",{enumerable:!0,get:function(){return A.templateSlashMenuKey}}),Object.defineProperty(exports,"toMarkdown",{enumerable:!0,get:function(){return K.toMarkdown}}),Object.defineProperty(exports,"toMarkdownResult",{enumerable:!0,get:function(){return K.toMarkdownResult}}),exports.useTranslation=e.j,exports.useWheelZoom=r.t;
|
package/dist/index.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export { FindReplaceDialog, FootnotePropertiesDialog, HyperlinkDialog, ImagePosi
|
|
|
20
20
|
export { default as ZoomControl } from './components/ui/ZoomControl.vue';
|
|
21
21
|
export type { ZoomControlProps, ZoomLevel } from './components/ui/ZoomControl.types';
|
|
22
22
|
export { renderAsync, type DocxEditorHandle, type EditorHandle, type RenderAsyncOptions, } from './renderAsync';
|
|
23
|
-
export type { DocxEditorCollaboration, DocxEditorProps, DocxEditorRef, EditorMode, } from './components/DocxEditor/types';
|
|
23
|
+
export type { DocxEditorApplyDocumentOperationsOptions, DocxEditorCollaboration, DocxEditorProps, DocxEditorRef, EditorMode, } from './components/DocxEditor/types';
|
|
24
24
|
export type { ScrollToParaIdOptions } from '@stll/folio-core/paged-layout/paragraphFlash';
|
|
25
25
|
export type { FontOption } from './utils/fontOptions';
|
|
26
26
|
export type { FontDefinition } from './components/DocxEditor/types';
|