@stll/folio-vue 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ListButtons-CDkmhg3v.js → ListButtons-BaILr4AO.js} +79 -79
- package/dist/{ListButtons-3UeVXRAK.cjs → ListButtons-CC7_7-e3.cjs} +2 -2
- package/dist/{PageSetupDialog-Djs8aW5A.js → WatermarkDialog-D-uTab0-.js} +2092 -818
- package/dist/WatermarkDialog-SzyoSZmL.cjs +15 -0
- package/dist/components/DocxEditor/types.d.ts +2 -0
- package/dist/components/dialogs/index.d.ts +13 -9
- package/dist/composables/useDocxEditor.d.ts +2 -0
- package/dist/composables.cjs +1 -1
- package/dist/composables.js +1 -1
- package/dist/dialogs.cjs +1 -1
- package/dist/dialogs.js +5 -3
- package/dist/folio-vue.css +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +3 -1
- package/dist/index.js +1118 -1114
- package/dist/ui.cjs +1 -1
- package/dist/ui.d.ts +6 -2
- package/dist/ui.js +58 -59
- package/dist/useZoom-8M2AQIMJ.cjs +1 -0
- package/dist/{useZoom-CIIRid8U.js → useZoom-BR--m9w3.js} +140 -140
- package/package.json +1 -1
- package/dist/PageSetupDialog-GGWMpoe-.cjs +0 -15
- package/dist/TablePropertiesDialog-B399kZgL.js +0 -901
- package/dist/TablePropertiesDialog-DYbjwevC.cjs +0 -1
- package/dist/useZoom-BryUw3Cu.cjs +0 -1
package/dist/ui.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./PageSetupDialog-GGWMpoe-.cjs"),t=require("./ListButtons-3UeVXRAK.cjs"),n=require("./TablePropertiesDialog-DYbjwevC.cjs");let r=require("vue");require("@stll/folio-core/utils/units");var i={class:`docx-editor-toolbar`},a={class:`docx-editor-toolbar__title-row`},o={class:`docx-editor-toolbar__title-left`},s={class:`docx-editor-toolbar__title-center`},c={class:`docx-editor-toolbar__title-right`},l=(0,r.defineComponent)({inheritAttrs:!1,__name:`EditorToolbar`,props:{showMenuBar:{type:Boolean,default:!0}},emits:[`menu-action`],setup(e){return(n,l)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,i,[(0,r.renderSlot)(n.$slots,`title-bar`,{},()=>[(0,r.createElementVNode)(`div`,a,[(0,r.createElementVNode)(`div`,o,[(0,r.renderSlot)(n.$slots,`title-bar-left`,{},void 0,!0)]),(0,r.createElementVNode)(`div`,s,[(0,r.renderSlot)(n.$slots,`document-name`,{},void 0,!0),e.showMenuBar?((0,r.openBlock)(),(0,r.createBlock)(t.T,{key:0,onAction:l[0]||=e=>n.$emit(`menu-action`,e)})):(0,r.createCommentVNode)(``,!0)]),(0,r.createElementVNode)(`div`,c,[(0,r.renderSlot)(n.$slots,`title-bar-right`,{},void 0,!0)])])],!0),(0,r.renderSlot)(n.$slots,`toolbar`,{},()=>[(0,r.createVNode)(t.b,(0,r.normalizeProps)((0,r.guardReactiveProps)(n.$attrs)),null,16)],!0)]))}}),u=e.E(l,[[`__scopeId`,`data-v-f2023632`]]),d={},f={class:`docx-title-bar`},p={class:`docx-title-bar__left`},m={class:`docx-title-bar__center`},h={class:`docx-title-bar__right`};function g(e,t){return(0,r.openBlock)(),(0,r.createElementBlock)(`div`,f,[(0,r.createElementVNode)(`div`,p,[(0,r.renderSlot)(e.$slots,`left`,{},void 0,!0)]),(0,r.createElementVNode)(`div`,m,[(0,r.renderSlot)(e.$slots,`default`,{},void 0,!0)]),(0,r.createElementVNode)(`div`,h,[(0,r.renderSlot)(e.$slots,`right`,{},void 0,!0)])])}var _=e.E(d,[[`render`,g],[`__scopeId`,`data-v-ae11d49f`]]);function v(e){let t=e.trim();if(!t)return``;let n=null,r=``;for(let e of t){if((e===`"`||e===`'`)&&n===null){n=e,r+=e;continue}if(e===n){n=null,r+=e;continue}if(e===`,`&&n===null)break;r+=e}return r.trim().replace(/^['"]|['"]$/g,``)}var y=[`value`,`disabled`],b={key:0,label:`Sans-serif`},x=[`value`],S={key:1,label:`Serif`},C=[`value`],w={key:2,label:`Monospace`},T=[`value`],E={key:3,label:`Other`},D=[`value`],O=(0,r.defineComponent)({__name:`FontPicker`,props:{value:{},fonts:{},disabled:{type:Boolean,default:!1},className:{},placeholder:{default:`Font`},showPreview:{type:Boolean,default:!0}},emits:[`change`],setup(e,{emit:t}){let n=e,i=t,a=[{name:`Arial`,fontFamily:`Arial, Helvetica, sans-serif`,category:`sans-serif`},{name:`Calibri`,fontFamily:`"Calibri", Arial, sans-serif`,category:`sans-serif`},{name:`Helvetica`,fontFamily:`Helvetica, Arial, sans-serif`,category:`sans-serif`},{name:`Verdana`,fontFamily:`Verdana, Geneva, sans-serif`,category:`sans-serif`},{name:`Open Sans`,fontFamily:`"Open Sans", sans-serif`,category:`sans-serif`},{name:`Roboto`,fontFamily:`Roboto, sans-serif`,category:`sans-serif`},{name:`Times New Roman`,fontFamily:`"Times New Roman", Times, serif`,category:`serif`},{name:`Georgia`,fontFamily:`Georgia, serif`,category:`serif`},{name:`Cambria`,fontFamily:`Cambria, Georgia, serif`,category:`serif`},{name:`Garamond`,fontFamily:`Garamond, serif`,category:`serif`},{name:`Courier New`,fontFamily:`"Courier New", monospace`,category:`monospace`},{name:`Consolas`,fontFamily:`Consolas, monospace`,category:`monospace`}],o=(0,r.computed)(()=>n.fonts??a),s=(0,r.computed)(()=>{let e={"sans-serif":[],serif:[],monospace:[],other:[]};for(let t of o.value)e[t.category??`other`].push(t);return e}),c=(0,r.computed)(()=>{let e=n.value;if(!e)return n.placeholder;let t=e.toLowerCase();return o.value.find(n=>n.fontFamily===e||n.name.toLowerCase()===t||v(n.fontFamily).toLowerCase()===t)?.name??e});function l(e){if(!(e.target instanceof HTMLSelectElement))return;let t=e.target.value,n=o.value.find(e=>e.name===t);i(`change`,n?v(n.fontFamily)||n.name:t)}return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`select`,{class:(0,r.normalizeClass)([`docx-font-picker`,e.className]),value:c.value,disabled:e.disabled,"aria-label":`Font family`,onChange:l},[s.value[`sans-serif`].length?((0,r.openBlock)(),(0,r.createElementBlock)(`optgroup`,b,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value[`sans-serif`],t=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,r.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,r.toDisplayString)(t.name),13,x))),128))])):(0,r.createCommentVNode)(``,!0),s.value.serif.length?((0,r.openBlock)(),(0,r.createElementBlock)(`optgroup`,S,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value.serif,t=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,r.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,r.toDisplayString)(t.name),13,C))),128))])):(0,r.createCommentVNode)(``,!0),s.value.monospace.length?((0,r.openBlock)(),(0,r.createElementBlock)(`optgroup`,w,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value.monospace,t=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,r.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,r.toDisplayString)(t.name),13,T))),128))])):(0,r.createCommentVNode)(``,!0),s.value.other.length?((0,r.openBlock)(),(0,r.createElementBlock)(`optgroup`,E,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(s.value.other,t=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,r.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,r.toDisplayString)(t.name),13,D))),128))])):(0,r.createCommentVNode)(``,!0)],42,y))}}),k=e.E(O,[[`__scopeId`,`data-v-1a9a9f88`]]),A={class:`docx-font-size`},j=[`disabled`],M=[`value`,`disabled`,`placeholder`],N=[`disabled`],P=(0,r.defineComponent)({__name:`FontSizePicker`,props:{value:{},sizes:{},disabled:{type:Boolean,default:!1},minSize:{default:1},maxSize:{default:1638},placeholder:{default:`11`}},emits:[`change`],setup(e,{emit:t}){let n=e,i=t,a=[8,9,10,11,12,14,16,18,20,24,28,36,48,72],o=(0,r.computed)(()=>n.sizes??a),s=(0,r.computed)(()=>n.value??parseInt(n.placeholder,10)??11),c=(0,r.computed)(()=>n.value===void 0?n.placeholder:String(n.value));function l(e){return o.value.find(t=>t>e)??Math.min(e+1,n.maxSize)}function u(e){return[...o.value].reverse().find(t=>t<e)??Math.max(e-1,n.minSize)}function d(){n.disabled||i(`change`,u(s.value))}function f(){n.disabled||i(`change`,l(s.value))}function p(e){if(!(e.target instanceof HTMLInputElement))return;let t=parseFloat(e.target.value);!isNaN(t)&&t>=n.minSize&&t<=n.maxSize&&i(`change`,Math.round(t*2)/2)}return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,A,[(0,r.createElementVNode)(`button`,{type:`button`,class:`docx-font-size__btn`,disabled:e.disabled||s.value<=e.minSize,title:`Decrease font size`,onClick:(0,r.withModifiers)(d,[`prevent`])},`−`,8,j),(0,r.createElementVNode)(`input`,{class:`docx-font-size__input`,type:`text`,value:c.value,disabled:e.disabled,placeholder:e.placeholder,onKeydown:[n[0]||=(0,r.withKeys)((0,r.withModifiers)(e=>{d(),e.stopPropagation()},[`prevent`]),[`up`]),n[1]||=(0,r.withKeys)((0,r.withModifiers)(e=>{f(),e.stopPropagation()},[`prevent`]),[`down`]),n[2]||=(0,r.withKeys)((0,r.withModifiers)(e=>p(e),[`prevent`]),[`enter`])],onBlur:n[3]||=e=>p(e)},null,40,M),(0,r.createElementVNode)(`button`,{type:`button`,class:`docx-font-size__btn`,disabled:e.disabled||s.value>=e.maxSize,title:`Increase font size`,onClick:(0,r.withModifiers)(f,[`prevent`])},`+`,8,N)]))}}),F=e.E(P,[[`__scopeId`,`data-v-4e8ada55`]]),I=[`value`,`disabled`],L=[`value`],R=(0,r.defineComponent)({__name:`LineSpacingPicker`,props:{value:{},options:{},disabled:{type:Boolean,default:!1},className:{}},emits:[`change`],setup(e,{emit:t}){let n=e,i=t,a=[{label:`Single`,value:1,twipsValue:240},{label:`1.15`,value:1.15,twipsValue:276},{label:`1.5`,value:1.5,twipsValue:360},{label:`Double`,value:2,twipsValue:480}],o=(0,r.computed)(()=>n.options??a),s=(0,r.computed)(()=>n.value??o.value[0]?.twipsValue??240);function c(e){if(!(e.target instanceof HTMLSelectElement))return;let t=parseInt(e.target.value,10);isNaN(t)||i(`change`,t)}return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`select`,{class:(0,r.normalizeClass)([`docx-line-spacing`,e.className]),value:String(s.value),disabled:e.disabled,"aria-label":`Line spacing`,onChange:c},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(o.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:e.twipsValue,value:String(e.twipsValue)},(0,r.toDisplayString)(e.label),9,L))),128))],42,I))}}),z=e.E(R,[[`__scopeId`,`data-v-fcda8ecc`]]),B=[`disabled`,`aria-expanded`,`title`,`onClick`],V={class:`docx-table-grid__panel`},H={class:`docx-table-grid__label`},U=[`onMouseenter`,`onClick`],W=(0,r.defineComponent)({__name:`TableGridPicker`,props:{disabled:{type:Boolean,default:!1},gridRows:{default:5},gridColumns:{default:5},tooltip:{default:`Insert table`}},emits:[`insert`],setup(t,{emit:n}){let{Popover:i}=e.u(),a=t,o=n,s=(0,r.ref)(!1),c=(0,r.ref)({rows:1,cols:1}),l=(0,r.computed)(()=>{let e=[];for(let t=1;t<=a.gridRows;t++)for(let n=1;n<=a.gridColumns;n++)e.push({r:t,c:n});return e});function u(e,t){o(`insert`,e,t),s.value=!1}function d(){s.value=!1,c.value={rows:1,cols:1}}return(n,a)=>((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i),{open:s.value,"onUpdate:open":a[0]||=e=>s.value=e,onClose:d},{trigger:(0,r.withCtx)(({toggle:n})=>[(0,r.createElementVNode)(`button`,{type:`button`,class:`docx-table-grid__btn`,disabled:t.disabled,"aria-expanded":s.value,"aria-haspopup":`grid`,title:t.tooltip,onClick:(0,r.withModifiers)(n,[`prevent`])},[(0,r.createVNode)(e.T,{name:`grid_on`,size:20})],8,B)]),panel:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`div`,V,[(0,r.createElementVNode)(`div`,H,(0,r.toDisplayString)(c.value.rows)+` × `+(0,r.toDisplayString)(c.value.cols),1),(0,r.createElementVNode)(`div`,{class:`docx-table-grid__grid`,style:(0,r.normalizeStyle)({gridTemplateColumns:`repeat(${t.gridColumns}, 18px)`})},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(l.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{key:`${e.r}-${e.c}`,class:(0,r.normalizeClass)([`docx-table-grid__cell`,{"docx-table-grid__cell--active":e.r<=c.value.rows&&e.c<=c.value.cols}]),onMouseenter:t=>c.value={rows:e.r,cols:e.c},onClick:(0,r.withModifiers)(t=>u(e.r,e.c),[`prevent`])},null,42,U))),128))],4)])]),_:1},8,[`open`]))}}),G=e.E(W,[[`__scopeId`,`data-v-444ca123`]]),K=[`disabled`,`title`],q={key:0,class:`print-btn__icon`},J=(0,r.defineComponent)({__name:`PrintButton`,props:{disabled:{type:Boolean,default:!1},label:{default:`Print`},compact:{type:Boolean,default:!1}},emits:[`print`],setup(e,{emit:t}){let n=e,i=t;function a(){n.disabled||(i(`print`),window.print())}return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{class:`print-btn`,disabled:e.disabled,title:e.label,onMousedown:(0,r.withModifiers)(a,[`prevent`])},[(0,r.createTextVNode)((0,r.toDisplayString)(e.compact?``:e.label)+` `,1),e.compact?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,q,`🖨`)):(0,r.createCommentVNode)(``,!0)],40,K))}}),Y=e.E(J,[[`__scopeId`,`data-v-3e413c06`]]),X={padding:`8px 10px`,borderRadius:8,backgroundColor:`var(--doc-card)`,cursor:`pointer`,boxShadow:`var(--doc-card-shadow)`},Z={padding:`10px 12px`,borderRadius:8,backgroundColor:`var(--doc-surface)`,cursor:`pointer`,boxShadow:`var(--doc-card-shadow-strong)`};exports.AddCommentCard=t.o,exports.AlignmentButtons=t.r,exports.Button=e.w,exports.CARD_STYLE_COLLAPSED=X,exports.CARD_STYLE_EXPANDED=Z,exports.Checkbox=e.C,exports.ColorPicker=e.v,exports.CommentCard=t.l,exports.CommentMarginMarkers=t.O,exports.DEFAULT_COMPONENTS=e.o,exports.DatePickerPopover=e._,exports.Dialog=e.g,exports.DocumentName=t.D,exports.EditingModeDropdown=t.x,exports.EditorToolbar=u,exports.FindReplaceDialog=e.a,exports.FontPicker=k,exports.FontSizePicker=F,exports.FootnotePropertiesDialog=n.i,exports.HorizontalRuler=t.y,exports.HyperlinkDialog=e.i,exports.IconGridDropdown=t.w,exports.ImagePositionDialog=n.r,exports.ImagePropertiesDialog=e.r,exports.ImageTransformDropdown=t.S,exports.ImageWrapDropdown=t.C,exports.Input=e.h,exports.InsertSymbolDialog=e.n,exports.InsertTableDialog=n.n,exports.LineSpacingPicker=z,exports.ListButtons=t.t,exports.MenuBar=t.T,exports.MenuDropdown=e.p,exports.OutlineRail=e.f,exports.PageSetupDialog=e.t,exports.Popover=e.m,exports.PrintButton=Y,exports.ReplyInput=t.u,exports.ReplyThread=t.d,exports.ResolvedCommentMarker=t.c,exports.Select=e.d,exports.StylePicker=t.i,exports.TableBorderColorPicker=t._,exports.TableBorderPicker=t.v,exports.TableBorderWidthPicker=t.g,exports.TableCellFillPicker=t.h,exports.TableGridInline=t.E,exports.TableGridPicker=G,exports.TableMoreDropdown=t.m,exports.TablePropertiesDialog=n.t,exports.TableStyleGallery=n.a,exports.TableToolbar=t.p,exports.TitleBar=_,exports.Toolbar=t.b,exports.TrackedChangeCard=t.s,exports.UnifiedSidebar=t.a,exports.VerticalRuler=t.f,exports.provideFolioUI=e.c,exports.resolveFolioComponents=e.l,exports.useFolioUI=e.u;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./WatermarkDialog-SzyoSZmL.cjs"),t=require("./ListButtons-CC7_7-e3.cjs");let n=require("vue");require("@stll/folio-core/utils/units");var r={class:`docx-editor-toolbar`},i={class:`docx-editor-toolbar__title-row`},a={class:`docx-editor-toolbar__title-left`},o={class:`docx-editor-toolbar__title-center`},s={class:`docx-editor-toolbar__title-right`},c=(0,n.defineComponent)({inheritAttrs:!1,__name:`EditorToolbar`,props:{showMenuBar:{type:Boolean,default:!0}},emits:[`menu-action`],setup(e){return(c,l)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,r,[(0,n.renderSlot)(c.$slots,`title-bar`,{},()=>[(0,n.createElementVNode)(`div`,i,[(0,n.createElementVNode)(`div`,a,[(0,n.renderSlot)(c.$slots,`title-bar-left`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,o,[(0,n.renderSlot)(c.$slots,`document-name`,{},void 0,!0),e.showMenuBar?((0,n.openBlock)(),(0,n.createBlock)(t.T,{key:0,onAction:l[0]||=e=>c.$emit(`menu-action`,e)})):(0,n.createCommentVNode)(``,!0)]),(0,n.createElementVNode)(`div`,s,[(0,n.renderSlot)(c.$slots,`title-bar-right`,{},void 0,!0)])])],!0),(0,n.renderSlot)(c.$slots,`toolbar`,{},()=>[(0,n.createVNode)(t.b,(0,n.normalizeProps)((0,n.guardReactiveProps)(c.$attrs)),null,16)],!0)]))}}),l=e.F(c,[[`__scopeId`,`data-v-f2023632`]]),u={},d={class:`docx-title-bar`},f={class:`docx-title-bar__left`},p={class:`docx-title-bar__center`},m={class:`docx-title-bar__right`};function h(e,t){return(0,n.openBlock)(),(0,n.createElementBlock)(`div`,d,[(0,n.createElementVNode)(`div`,f,[(0,n.renderSlot)(e.$slots,`left`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,p,[(0,n.renderSlot)(e.$slots,`default`,{},void 0,!0)]),(0,n.createElementVNode)(`div`,m,[(0,n.renderSlot)(e.$slots,`right`,{},void 0,!0)])])}var g=e.F(u,[[`render`,h],[`__scopeId`,`data-v-ae11d49f`]]);function _(e){let t=e.trim();if(!t)return``;let n=null,r=``;for(let e of t){if((e===`"`||e===`'`)&&n===null){n=e,r+=e;continue}if(e===n){n=null,r+=e;continue}if(e===`,`&&n===null)break;r+=e}return r.trim().replace(/^['"]|['"]$/g,``)}var v=[`value`,`disabled`],y={key:0,label:`Sans-serif`},b=[`value`],x={key:1,label:`Serif`},S=[`value`],C={key:2,label:`Monospace`},w=[`value`],T={key:3,label:`Other`},E=[`value`],D=(0,n.defineComponent)({__name:`FontPicker`,props:{value:{},fonts:{},disabled:{type:Boolean,default:!1},className:{},placeholder:{default:`Font`},showPreview:{type:Boolean,default:!0}},emits:[`change`],setup(e,{emit:t}){let r=e,i=t,a=[{name:`Arial`,fontFamily:`Arial, Helvetica, sans-serif`,category:`sans-serif`},{name:`Calibri`,fontFamily:`"Calibri", Arial, sans-serif`,category:`sans-serif`},{name:`Helvetica`,fontFamily:`Helvetica, Arial, sans-serif`,category:`sans-serif`},{name:`Verdana`,fontFamily:`Verdana, Geneva, sans-serif`,category:`sans-serif`},{name:`Open Sans`,fontFamily:`"Open Sans", sans-serif`,category:`sans-serif`},{name:`Roboto`,fontFamily:`Roboto, sans-serif`,category:`sans-serif`},{name:`Times New Roman`,fontFamily:`"Times New Roman", Times, serif`,category:`serif`},{name:`Georgia`,fontFamily:`Georgia, serif`,category:`serif`},{name:`Cambria`,fontFamily:`Cambria, Georgia, serif`,category:`serif`},{name:`Garamond`,fontFamily:`Garamond, serif`,category:`serif`},{name:`Courier New`,fontFamily:`"Courier New", monospace`,category:`monospace`},{name:`Consolas`,fontFamily:`Consolas, monospace`,category:`monospace`}],o=(0,n.computed)(()=>r.fonts??a),s=(0,n.computed)(()=>{let e={"sans-serif":[],serif:[],monospace:[],other:[]};for(let t of o.value)e[t.category??`other`].push(t);return e}),c=(0,n.computed)(()=>{let e=r.value;if(!e)return r.placeholder;let t=e.toLowerCase();return o.value.find(n=>n.fontFamily===e||n.name.toLowerCase()===t||_(n.fontFamily).toLowerCase()===t)?.name??e});function l(e){if(!(e.target instanceof HTMLSelectElement))return;let t=e.target.value,n=o.value.find(e=>e.name===t);i(`change`,n?_(n.fontFamily)||n.name:t)}return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`select`,{class:(0,n.normalizeClass)([`docx-font-picker`,e.className]),value:c.value,disabled:e.disabled,"aria-label":`Font family`,onChange:l},[s.value[`sans-serif`].length?((0,n.openBlock)(),(0,n.createElementBlock)(`optgroup`,y,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(s.value[`sans-serif`],t=>((0,n.openBlock)(),(0,n.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,n.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,n.toDisplayString)(t.name),13,b))),128))])):(0,n.createCommentVNode)(``,!0),s.value.serif.length?((0,n.openBlock)(),(0,n.createElementBlock)(`optgroup`,x,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(s.value.serif,t=>((0,n.openBlock)(),(0,n.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,n.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,n.toDisplayString)(t.name),13,S))),128))])):(0,n.createCommentVNode)(``,!0),s.value.monospace.length?((0,n.openBlock)(),(0,n.createElementBlock)(`optgroup`,C,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(s.value.monospace,t=>((0,n.openBlock)(),(0,n.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,n.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,n.toDisplayString)(t.name),13,w))),128))])):(0,n.createCommentVNode)(``,!0),s.value.other.length?((0,n.openBlock)(),(0,n.createElementBlock)(`optgroup`,T,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(s.value.other,t=>((0,n.openBlock)(),(0,n.createElementBlock)(`option`,{key:t.name,value:t.name,style:(0,n.normalizeStyle)(e.showPreview?{fontFamily:t.fontFamily}:void 0)},(0,n.toDisplayString)(t.name),13,E))),128))])):(0,n.createCommentVNode)(``,!0)],42,v))}}),O=e.F(D,[[`__scopeId`,`data-v-1a9a9f88`]]),k={class:`docx-font-size`},A=[`disabled`],j=[`value`,`disabled`,`placeholder`],M=[`disabled`],N=(0,n.defineComponent)({__name:`FontSizePicker`,props:{value:{},sizes:{},disabled:{type:Boolean,default:!1},minSize:{default:1},maxSize:{default:1638},placeholder:{default:`11`}},emits:[`change`],setup(e,{emit:t}){let r=e,i=t,a=[8,9,10,11,12,14,16,18,20,24,28,36,48,72],o=(0,n.computed)(()=>r.sizes??a),s=(0,n.computed)(()=>r.value??parseInt(r.placeholder,10)??11),c=(0,n.computed)(()=>r.value===void 0?r.placeholder:String(r.value));function l(e){return o.value.find(t=>t>e)??Math.min(e+1,r.maxSize)}function u(e){return[...o.value].reverse().find(t=>t<e)??Math.max(e-1,r.minSize)}function d(){r.disabled||i(`change`,u(s.value))}function f(){r.disabled||i(`change`,l(s.value))}function p(e){if(!(e.target instanceof HTMLInputElement))return;let t=parseFloat(e.target.value);!isNaN(t)&&t>=r.minSize&&t<=r.maxSize&&i(`change`,Math.round(t*2)/2)}return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,k,[(0,n.createElementVNode)(`button`,{type:`button`,class:`docx-font-size__btn`,disabled:e.disabled||s.value<=e.minSize,title:`Decrease font size`,onClick:(0,n.withModifiers)(d,[`prevent`])},`−`,8,A),(0,n.createElementVNode)(`input`,{class:`docx-font-size__input`,type:`text`,value:c.value,disabled:e.disabled,placeholder:e.placeholder,onKeydown:[r[0]||=(0,n.withKeys)((0,n.withModifiers)(e=>{d(),e.stopPropagation()},[`prevent`]),[`up`]),r[1]||=(0,n.withKeys)((0,n.withModifiers)(e=>{f(),e.stopPropagation()},[`prevent`]),[`down`]),r[2]||=(0,n.withKeys)((0,n.withModifiers)(e=>p(e),[`prevent`]),[`enter`])],onBlur:r[3]||=e=>p(e)},null,40,j),(0,n.createElementVNode)(`button`,{type:`button`,class:`docx-font-size__btn`,disabled:e.disabled||s.value>=e.maxSize,title:`Increase font size`,onClick:(0,n.withModifiers)(f,[`prevent`])},`+`,8,M)]))}}),P=e.F(N,[[`__scopeId`,`data-v-4e8ada55`]]),F=[`value`,`disabled`],I=[`value`],L=(0,n.defineComponent)({__name:`LineSpacingPicker`,props:{value:{},options:{},disabled:{type:Boolean,default:!1},className:{}},emits:[`change`],setup(e,{emit:t}){let r=e,i=t,a=[{label:`Single`,value:1,twipsValue:240},{label:`1.15`,value:1.15,twipsValue:276},{label:`1.5`,value:1.5,twipsValue:360},{label:`Double`,value:2,twipsValue:480}],o=(0,n.computed)(()=>r.options??a),s=(0,n.computed)(()=>r.value??o.value[0]?.twipsValue??240);function c(e){if(!(e.target instanceof HTMLSelectElement))return;let t=parseInt(e.target.value,10);isNaN(t)||i(`change`,t)}return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`select`,{class:(0,n.normalizeClass)([`docx-line-spacing`,e.className]),value:String(s.value),disabled:e.disabled,"aria-label":`Line spacing`,onChange:c},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(o.value,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`option`,{key:e.twipsValue,value:String(e.twipsValue)},(0,n.toDisplayString)(e.label),9,I))),128))],42,F))}}),R=e.F(L,[[`__scopeId`,`data-v-fcda8ecc`]]),z=[`disabled`,`aria-expanded`,`title`,`onClick`],B={class:`docx-table-grid__panel`},V={class:`docx-table-grid__label`},H=[`onMouseenter`,`onClick`],U=(0,n.defineComponent)({__name:`TableGridPicker`,props:{disabled:{type:Boolean,default:!1},gridRows:{default:5},gridColumns:{default:5},tooltip:{default:`Insert table`}},emits:[`insert`],setup(t,{emit:r}){let{Popover:i}=e.y(),a=t,o=r,s=(0,n.ref)(!1),c=(0,n.ref)({rows:1,cols:1}),l=(0,n.computed)(()=>{let e=[];for(let t=1;t<=a.gridRows;t++)for(let n=1;n<=a.gridColumns;n++)e.push({r:t,c:n});return e});function u(e,t){o(`insert`,e,t),s.value=!1}function d(){s.value=!1,c.value={rows:1,cols:1}}return(r,a)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i),{open:s.value,"onUpdate:open":a[0]||=e=>s.value=e,onClose:d},{trigger:(0,n.withCtx)(({toggle:r})=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`docx-table-grid__btn`,disabled:t.disabled,"aria-expanded":s.value,"aria-haspopup":`grid`,title:t.tooltip,onClick:(0,n.withModifiers)(r,[`prevent`])},[(0,n.createVNode)(e.P,{name:`grid_on`,size:20})],8,z)]),panel:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,B,[(0,n.createElementVNode)(`div`,V,(0,n.toDisplayString)(c.value.rows)+` × `+(0,n.toDisplayString)(c.value.cols),1),(0,n.createElementVNode)(`div`,{class:`docx-table-grid__grid`,style:(0,n.normalizeStyle)({gridTemplateColumns:`repeat(${t.gridColumns}, 18px)`})},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(l.value,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{key:`${e.r}-${e.c}`,class:(0,n.normalizeClass)([`docx-table-grid__cell`,{"docx-table-grid__cell--active":e.r<=c.value.rows&&e.c<=c.value.cols}]),onMouseenter:t=>c.value={rows:e.r,cols:e.c},onClick:(0,n.withModifiers)(t=>u(e.r,e.c),[`prevent`])},null,42,H))),128))],4)])]),_:1},8,[`open`]))}}),W=e.F(U,[[`__scopeId`,`data-v-444ca123`]]),G=[`disabled`,`title`],K={key:0,class:`print-btn__icon`},q=(0,n.defineComponent)({__name:`PrintButton`,props:{disabled:{type:Boolean,default:!1},label:{default:`Print`},compact:{type:Boolean,default:!1}},emits:[`print`],setup(e,{emit:t}){let r=e,i=t;function a(){r.disabled||(i(`print`),window.print())}return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`button`,{class:`print-btn`,disabled:e.disabled,title:e.label,onMousedown:(0,n.withModifiers)(a,[`prevent`])},[(0,n.createTextVNode)((0,n.toDisplayString)(e.compact?``:e.label)+` `,1),e.compact?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,K,`🖨`)):(0,n.createCommentVNode)(``,!0)],40,G))}}),J=e.F(q,[[`__scopeId`,`data-v-3e413c06`]]),Y={padding:`8px 10px`,borderRadius:8,backgroundColor:`var(--doc-card)`,cursor:`pointer`,boxShadow:`var(--doc-card-shadow)`},X={padding:`10px 12px`,borderRadius:8,backgroundColor:`var(--doc-surface)`,cursor:`pointer`,boxShadow:`var(--doc-card-shadow-strong)`};exports.AddCommentCard=t.o,exports.AlignmentButtons=t.r,exports.Button=e.N,exports.CARD_STYLE_COLLAPSED=Y,exports.CARD_STYLE_EXPANDED=X,exports.Checkbox=e.M,exports.ColorPicker=e.D,exports.CommentCard=t.l,exports.CommentMarginMarkers=t.O,exports.DEFAULT_COMPONENTS=e.h,exports.DatePickerPopover=e.E,exports.Dialog=e.T,exports.DocumentName=t.D,exports.EditingModeDropdown=t.x,exports.EditorToolbar=l,exports.FindReplaceDialog=e.m,exports.FontPicker=O,exports.FontSizePicker=P,exports.FootnotePropertiesDialog=e.l,exports.HorizontalRuler=t.y,exports.HyperlinkDialog=e.p,exports.IconGridDropdown=t.w,exports.ImagePositionDialog=e.c,exports.ImagePropertiesDialog=e.f,exports.ImageTransformDropdown=t.S,exports.ImageWrapDropdown=t.C,exports.Input=e.w,exports.InsertImageDialog=e.s,exports.InsertSymbolDialog=e.d,exports.InsertTableDialog=e.a,exports.LineSpacingPicker=R,exports.ListButtons=t.t,exports.MenuBar=t.T,exports.MenuDropdown=e.S,exports.OutlineRail=e.x,exports.PageSetupDialog=e.u,exports.PasteSpecialDialog=e.i,exports.Popover=e.C,exports.PrintButton=J,exports.ReplyInput=t.u,exports.ReplyThread=t.d,exports.ResolvedCommentMarker=t.c,exports.Select=e.b,exports.SplitCellDialog=e.r,exports.StylePicker=t.i,exports.TableBorderColorPicker=t._,exports.TableBorderPicker=t.v,exports.TableBorderWidthPicker=t.g,exports.TableCellFillPicker=t.h,exports.TableGridInline=t.E,exports.TableGridPicker=W,exports.TableMoreDropdown=t.m,exports.TablePropertiesDialog=e.n,exports.TableStyleGallery=e.o,exports.TableToolbar=t.p,exports.TitleBar=g,exports.Toolbar=t.b,exports.TrackedChangeCard=t.s,exports.UnifiedSidebar=t.a,exports.VerticalRuler=t.f,exports.WatermarkDialog=e.t,exports.provideFolioUI=e._,exports.resolveFolioComponents=e.v,exports.useFolioUI=e.y;
|
package/dist/ui.d.ts
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
* UI entry point — toolbar primitives, pickers, table/image controls, sidebar
|
|
5
5
|
* cards, and dialogs. Mirrors `packages/react/src/ui.ts` (and upstream's Vue
|
|
6
6
|
* `ui.ts`), limited to the components the fork has ported. Components without a
|
|
7
|
-
* Vue equivalent yet (ResponsiveToolbar,
|
|
7
|
+
* Vue equivalent yet (ResponsiveToolbar, Tooltip, LoadingIndicator,
|
|
8
8
|
* TableInsertButtons, TableMergeButton, UnsavedIndicator, PrintPreview, and the
|
|
9
|
-
*
|
|
9
|
+
* KeyboardShortcuts dialog) are omitted.
|
|
10
10
|
*
|
|
11
11
|
* @example
|
|
12
12
|
* ```ts
|
|
@@ -55,12 +55,16 @@ export { default as CommentMarginMarkers } from './components/CommentMarginMarke
|
|
|
55
55
|
export { default as FindReplaceDialog } from './components/dialogs/FindReplaceDialog.vue';
|
|
56
56
|
export { default as FootnotePropertiesDialog } from './components/dialogs/FootnotePropertiesDialog.vue';
|
|
57
57
|
export { default as HyperlinkDialog } from './components/dialogs/HyperlinkDialog.vue';
|
|
58
|
+
export { default as InsertImageDialog } from './components/dialogs/InsertImageDialog.vue';
|
|
58
59
|
export { default as ImagePositionDialog } from './components/dialogs/ImagePositionDialog.vue';
|
|
59
60
|
export { default as ImagePropertiesDialog } from './components/dialogs/ImagePropertiesDialog.vue';
|
|
60
61
|
export { default as InsertSymbolDialog } from './components/dialogs/InsertSymbolDialog.vue';
|
|
61
62
|
export { default as InsertTableDialog } from './components/dialogs/InsertTableDialog.vue';
|
|
62
63
|
export { default as PageSetupDialog } from './components/dialogs/PageSetupDialog.vue';
|
|
64
|
+
export { default as PasteSpecialDialog } from './components/dialogs/PasteSpecialDialog.vue';
|
|
65
|
+
export { default as SplitCellDialog } from './components/dialogs/SplitCellDialog.vue';
|
|
63
66
|
export { default as TablePropertiesDialog } from './components/dialogs/TablePropertiesDialog.vue';
|
|
67
|
+
export { default as WatermarkDialog } from './components/dialogs/WatermarkDialog.vue';
|
|
64
68
|
export { default as PrintButton } from './components/PrintButton.vue';
|
|
65
69
|
export { default as HorizontalRuler } from './components/ui/HorizontalRuler.vue';
|
|
66
70
|
export { default as VerticalRuler } from './components/ui/VerticalRuler.vue';
|
package/dist/ui.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { C as e,
|
|
2
|
-
import { C as
|
|
3
|
-
import {
|
|
4
|
-
import { Fragment as F, computed as I, createBlock as L, createCommentVNode as R, createElementBlock as z, createElementVNode as B, createTextVNode as ve, createVNode as V, defineComponent as H, guardReactiveProps as ye, normalizeClass as U, normalizeProps as be, normalizeStyle as W, openBlock as G, ref as K, renderList as q, renderSlot as J, toDisplayString as Y, unref as xe, withCtx as X, withKeys as Z, withModifiers as Q } from "vue";
|
|
1
|
+
import { C as e, D as t, E as n, F as r, M as i, N as a, P as o, S as s, T as c, _ as l, a as u, b as d, c as f, d as ee, f as te, h as ne, i as re, l as ie, m as ae, n as oe, o as se, p as ce, r as p, s as le, t as ue, u as de, v as fe, w as m, x as pe, y as h } from "./WatermarkDialog-D-uTab0-.js";
|
|
2
|
+
import { C as me, D as he, E as ge, O as _e, S as ve, T as g, _ as ye, a as _, b as v, c as y, d as b, f as x, g as S, h as C, i as w, l as T, m as E, o as D, p as O, r as k, s as A, t as j, u as M, v as N, w as P, x as be, y as xe } from "./ListButtons-BaILr4AO.js";
|
|
3
|
+
import { Fragment as F, computed as I, createBlock as L, createCommentVNode as R, createElementBlock as z, createElementVNode as B, createTextVNode as Se, createVNode as V, defineComponent as H, guardReactiveProps as Ce, normalizeClass as U, normalizeProps as we, normalizeStyle as W, openBlock as G, ref as K, renderList as q, renderSlot as J, toDisplayString as Y, unref as Te, withCtx as X, withKeys as Z, withModifiers as Q } from "vue";
|
|
5
4
|
import "@stll/folio-core/utils/units";
|
|
6
5
|
//#region src/components/EditorToolbar.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
-
var
|
|
6
|
+
var Ee = { class: "docx-editor-toolbar" }, De = { class: "docx-editor-toolbar__title-row" }, Oe = { class: "docx-editor-toolbar__title-left" }, ke = { class: "docx-editor-toolbar__title-center" }, Ae = { class: "docx-editor-toolbar__title-right" }, je = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
8
7
|
inheritAttrs: !1,
|
|
9
8
|
__name: "EditorToolbar",
|
|
10
9
|
props: { showMenuBar: {
|
|
@@ -13,24 +12,24 @@ var Se = { class: "docx-editor-toolbar" }, Ce = { class: "docx-editor-toolbar__t
|
|
|
13
12
|
} },
|
|
14
13
|
emits: ["menu-action"],
|
|
15
14
|
setup(e) {
|
|
16
|
-
return (t, n) => (G(), z("div",
|
|
17
|
-
B("div",
|
|
18
|
-
B("div",
|
|
15
|
+
return (t, n) => (G(), z("div", Ee, [J(t.$slots, "title-bar", {}, () => [B("div", De, [
|
|
16
|
+
B("div", Oe, [J(t.$slots, "title-bar-left", {}, void 0, !0)]),
|
|
17
|
+
B("div", ke, [J(t.$slots, "document-name", {}, void 0, !0), e.showMenuBar ? (G(), L(g, {
|
|
19
18
|
key: 0,
|
|
20
19
|
onAction: n[0] ||= (e) => t.$emit("menu-action", e)
|
|
21
20
|
})) : R("", !0)]),
|
|
22
|
-
B("div",
|
|
23
|
-
])], !0), J(t.$slots, "toolbar", {}, () => [V(v,
|
|
21
|
+
B("div", Ae, [J(t.$slots, "title-bar-right", {}, void 0, !0)])
|
|
22
|
+
])], !0), J(t.$slots, "toolbar", {}, () => [V(v, we(Ce(t.$attrs)), null, 16)], !0)]));
|
|
24
23
|
}
|
|
25
|
-
}), [["__scopeId", "data-v-f2023632"]]),
|
|
26
|
-
function
|
|
27
|
-
return G(), z("div",
|
|
28
|
-
B("div",
|
|
29
|
-
B("div",
|
|
30
|
-
B("div",
|
|
24
|
+
}), [["__scopeId", "data-v-f2023632"]]), Me = {}, Ne = { class: "docx-title-bar" }, Pe = { class: "docx-title-bar__left" }, Fe = { class: "docx-title-bar__center" }, Ie = { class: "docx-title-bar__right" };
|
|
25
|
+
function Le(e, t) {
|
|
26
|
+
return G(), z("div", Ne, [
|
|
27
|
+
B("div", Pe, [J(e.$slots, "left", {}, void 0, !0)]),
|
|
28
|
+
B("div", Fe, [J(e.$slots, "default", {}, void 0, !0)]),
|
|
29
|
+
B("div", Ie, [J(e.$slots, "right", {}, void 0, !0)])
|
|
31
30
|
]);
|
|
32
31
|
}
|
|
33
|
-
var
|
|
32
|
+
var Re = /*#__PURE__*/ r(Me, [["render", Le], ["__scopeId", "data-v-ae11d49f"]]);
|
|
34
33
|
//#endregion
|
|
35
34
|
//#region src/components/ui/fontPickerValue.ts
|
|
36
35
|
function $(e) {
|
|
@@ -53,19 +52,19 @@ function $(e) {
|
|
|
53
52
|
}
|
|
54
53
|
//#endregion
|
|
55
54
|
//#region src/components/ui/FontPicker.vue?vue&type=script&setup=true&lang.ts
|
|
56
|
-
var
|
|
55
|
+
var ze = ["value", "disabled"], Be = {
|
|
57
56
|
key: 0,
|
|
58
57
|
label: "Sans-serif"
|
|
59
|
-
},
|
|
58
|
+
}, Ve = ["value"], He = {
|
|
60
59
|
key: 1,
|
|
61
60
|
label: "Serif"
|
|
62
|
-
},
|
|
61
|
+
}, Ue = ["value"], We = {
|
|
63
62
|
key: 2,
|
|
64
63
|
label: "Monospace"
|
|
65
|
-
},
|
|
64
|
+
}, Ge = ["value"], Ke = {
|
|
66
65
|
key: 3,
|
|
67
66
|
label: "Other"
|
|
68
|
-
},
|
|
67
|
+
}, qe = ["value"], Je = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
69
68
|
__name: "FontPicker",
|
|
70
69
|
props: {
|
|
71
70
|
value: {},
|
|
@@ -171,33 +170,33 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
171
170
|
"aria-label": "Font family",
|
|
172
171
|
onChange: c
|
|
173
172
|
}, [
|
|
174
|
-
o.value["sans-serif"].length ? (G(), z("optgroup",
|
|
173
|
+
o.value["sans-serif"].length ? (G(), z("optgroup", Be, [(G(!0), z(F, null, q(o.value["sans-serif"], (t) => (G(), z("option", {
|
|
175
174
|
key: t.name,
|
|
176
175
|
value: t.name,
|
|
177
176
|
style: W(e.showPreview ? { fontFamily: t.fontFamily } : void 0)
|
|
178
|
-
}, Y(t.name), 13,
|
|
179
|
-
o.value.serif.length ? (G(), z("optgroup",
|
|
177
|
+
}, Y(t.name), 13, Ve))), 128))])) : R("", !0),
|
|
178
|
+
o.value.serif.length ? (G(), z("optgroup", He, [(G(!0), z(F, null, q(o.value.serif, (t) => (G(), z("option", {
|
|
180
179
|
key: t.name,
|
|
181
180
|
value: t.name,
|
|
182
181
|
style: W(e.showPreview ? { fontFamily: t.fontFamily } : void 0)
|
|
183
|
-
}, Y(t.name), 13,
|
|
184
|
-
o.value.monospace.length ? (G(), z("optgroup",
|
|
182
|
+
}, Y(t.name), 13, Ue))), 128))])) : R("", !0),
|
|
183
|
+
o.value.monospace.length ? (G(), z("optgroup", We, [(G(!0), z(F, null, q(o.value.monospace, (t) => (G(), z("option", {
|
|
185
184
|
key: t.name,
|
|
186
185
|
value: t.name,
|
|
187
186
|
style: W(e.showPreview ? { fontFamily: t.fontFamily } : void 0)
|
|
188
|
-
}, Y(t.name), 13,
|
|
189
|
-
o.value.other.length ? (G(), z("optgroup",
|
|
187
|
+
}, Y(t.name), 13, Ge))), 128))])) : R("", !0),
|
|
188
|
+
o.value.other.length ? (G(), z("optgroup", Ke, [(G(!0), z(F, null, q(o.value.other, (t) => (G(), z("option", {
|
|
190
189
|
key: t.name,
|
|
191
190
|
value: t.name,
|
|
192
191
|
style: W(e.showPreview ? { fontFamily: t.fontFamily } : void 0)
|
|
193
|
-
}, Y(t.name), 13,
|
|
194
|
-
], 42,
|
|
192
|
+
}, Y(t.name), 13, qe))), 128))])) : R("", !0)
|
|
193
|
+
], 42, ze));
|
|
195
194
|
}
|
|
196
|
-
}), [["__scopeId", "data-v-1a9a9f88"]]),
|
|
195
|
+
}), [["__scopeId", "data-v-1a9a9f88"]]), Ye = { class: "docx-font-size" }, Xe = ["disabled"], Ze = [
|
|
197
196
|
"value",
|
|
198
197
|
"disabled",
|
|
199
198
|
"placeholder"
|
|
200
|
-
],
|
|
199
|
+
], Qe = ["disabled"], $e = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
201
200
|
__name: "FontSizePicker",
|
|
202
201
|
props: {
|
|
203
202
|
value: {},
|
|
@@ -245,14 +244,14 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
245
244
|
let t = parseFloat(e.target.value);
|
|
246
245
|
!isNaN(t) && t >= n.minSize && t <= n.maxSize && r("change", Math.round(t * 2) / 2);
|
|
247
246
|
}
|
|
248
|
-
return (t, n) => (G(), z("div",
|
|
247
|
+
return (t, n) => (G(), z("div", Ye, [
|
|
249
248
|
B("button", {
|
|
250
249
|
type: "button",
|
|
251
250
|
class: "docx-font-size__btn",
|
|
252
251
|
disabled: e.disabled || o.value <= e.minSize,
|
|
253
252
|
title: "Decrease font size",
|
|
254
253
|
onClick: Q(u, ["prevent"])
|
|
255
|
-
}, "−", 8,
|
|
254
|
+
}, "−", 8, Xe),
|
|
256
255
|
B("input", {
|
|
257
256
|
class: "docx-font-size__input",
|
|
258
257
|
type: "text",
|
|
@@ -269,17 +268,17 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
269
268
|
n[2] ||= Z(Q((e) => f(e), ["prevent"]), ["enter"])
|
|
270
269
|
],
|
|
271
270
|
onBlur: n[3] ||= (e) => f(e)
|
|
272
|
-
}, null, 40,
|
|
271
|
+
}, null, 40, Ze),
|
|
273
272
|
B("button", {
|
|
274
273
|
type: "button",
|
|
275
274
|
class: "docx-font-size__btn",
|
|
276
275
|
disabled: e.disabled || o.value >= e.maxSize,
|
|
277
276
|
title: "Increase font size",
|
|
278
277
|
onClick: Q(d, ["prevent"])
|
|
279
|
-
}, "+", 8,
|
|
278
|
+
}, "+", 8, Qe)
|
|
280
279
|
]));
|
|
281
280
|
}
|
|
282
|
-
}), [["__scopeId", "data-v-4e8ada55"]]),
|
|
281
|
+
}), [["__scopeId", "data-v-4e8ada55"]]), et = ["value", "disabled"], tt = ["value"], nt = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
283
282
|
__name: "LineSpacingPicker",
|
|
284
283
|
props: {
|
|
285
284
|
value: {},
|
|
@@ -328,14 +327,14 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
328
327
|
}, [(G(!0), z(F, null, q(a.value, (e) => (G(), z("option", {
|
|
329
328
|
key: e.twipsValue,
|
|
330
329
|
value: String(e.twipsValue)
|
|
331
|
-
}, Y(e.label), 9,
|
|
330
|
+
}, Y(e.label), 9, tt))), 128))], 42, et));
|
|
332
331
|
}
|
|
333
|
-
}), [["__scopeId", "data-v-fcda8ecc"]]),
|
|
332
|
+
}), [["__scopeId", "data-v-fcda8ecc"]]), rt = [
|
|
334
333
|
"disabled",
|
|
335
334
|
"aria-expanded",
|
|
336
335
|
"title",
|
|
337
336
|
"onClick"
|
|
338
|
-
],
|
|
337
|
+
], it = { class: "docx-table-grid__panel" }, at = { class: "docx-table-grid__label" }, ot = ["onMouseenter", "onClick"], st = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
339
338
|
__name: "TableGridPicker",
|
|
340
339
|
props: {
|
|
341
340
|
disabled: {
|
|
@@ -348,44 +347,44 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
348
347
|
},
|
|
349
348
|
emits: ["insert"],
|
|
350
349
|
setup(e, { emit: t }) {
|
|
351
|
-
let { Popover:
|
|
350
|
+
let { Popover: n } = h(), r = e, i = t, a = K(!1), s = K({
|
|
352
351
|
rows: 1,
|
|
353
352
|
cols: 1
|
|
354
353
|
}), c = I(() => {
|
|
355
354
|
let e = [];
|
|
356
|
-
for (let t = 1; t <=
|
|
355
|
+
for (let t = 1; t <= r.gridRows; t++) for (let n = 1; n <= r.gridColumns; n++) e.push({
|
|
357
356
|
r: t,
|
|
358
357
|
c: n
|
|
359
358
|
});
|
|
360
359
|
return e;
|
|
361
360
|
});
|
|
362
361
|
function l(e, t) {
|
|
363
|
-
|
|
362
|
+
i("insert", e, t), a.value = !1;
|
|
364
363
|
}
|
|
365
364
|
function u() {
|
|
366
|
-
|
|
365
|
+
a.value = !1, s.value = {
|
|
367
366
|
rows: 1,
|
|
368
367
|
cols: 1
|
|
369
368
|
};
|
|
370
369
|
}
|
|
371
|
-
return (t,
|
|
372
|
-
open:
|
|
373
|
-
"onUpdate:open":
|
|
370
|
+
return (t, r) => (G(), L(Te(n), {
|
|
371
|
+
open: a.value,
|
|
372
|
+
"onUpdate:open": r[0] ||= (e) => a.value = e,
|
|
374
373
|
onClose: u
|
|
375
374
|
}, {
|
|
376
375
|
trigger: X(({ toggle: t }) => [B("button", {
|
|
377
376
|
type: "button",
|
|
378
377
|
class: "docx-table-grid__btn",
|
|
379
378
|
disabled: e.disabled,
|
|
380
|
-
"aria-expanded":
|
|
379
|
+
"aria-expanded": a.value,
|
|
381
380
|
"aria-haspopup": "grid",
|
|
382
381
|
title: e.tooltip,
|
|
383
382
|
onClick: Q(t, ["prevent"])
|
|
384
|
-
}, [V(
|
|
383
|
+
}, [V(o, {
|
|
385
384
|
name: "grid_on",
|
|
386
385
|
size: 20
|
|
387
|
-
})], 8,
|
|
388
|
-
panel: X(() => [B("div",
|
|
386
|
+
})], 8, rt)]),
|
|
387
|
+
panel: X(() => [B("div", it, [B("div", at, Y(s.value.rows) + " × " + Y(s.value.cols), 1), B("div", {
|
|
389
388
|
class: "docx-table-grid__grid",
|
|
390
389
|
style: W({ gridTemplateColumns: `repeat(${e.gridColumns}, 18px)` })
|
|
391
390
|
}, [(G(!0), z(F, null, q(c.value, (e) => (G(), z("button", {
|
|
@@ -396,14 +395,14 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
396
395
|
cols: e.c
|
|
397
396
|
},
|
|
398
397
|
onClick: Q((t) => l(e.r, e.c), ["prevent"])
|
|
399
|
-
}, null, 42,
|
|
398
|
+
}, null, 42, ot))), 128))], 4)])]),
|
|
400
399
|
_: 1
|
|
401
400
|
}, 8, ["open"]));
|
|
402
401
|
}
|
|
403
|
-
}), [["__scopeId", "data-v-444ca123"]]),
|
|
402
|
+
}), [["__scopeId", "data-v-444ca123"]]), ct = ["disabled", "title"], lt = {
|
|
404
403
|
key: 0,
|
|
405
404
|
class: "print-btn__icon"
|
|
406
|
-
},
|
|
405
|
+
}, ut = /*#__PURE__*/ r(/* @__PURE__ */ H({
|
|
407
406
|
__name: "PrintButton",
|
|
408
407
|
props: {
|
|
409
408
|
disabled: {
|
|
@@ -427,15 +426,15 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
427
426
|
disabled: e.disabled,
|
|
428
427
|
title: e.label,
|
|
429
428
|
onMousedown: Q(i, ["prevent"])
|
|
430
|
-
}, [
|
|
429
|
+
}, [Se(Y(e.compact ? "" : e.label) + " ", 1), e.compact ? (G(), z("span", lt, "🖨")) : R("", !0)], 40, ct));
|
|
431
430
|
}
|
|
432
|
-
}), [["__scopeId", "data-v-3e413c06"]]),
|
|
431
|
+
}), [["__scopeId", "data-v-3e413c06"]]), dt = {
|
|
433
432
|
padding: "8px 10px",
|
|
434
433
|
borderRadius: 8,
|
|
435
434
|
backgroundColor: "var(--doc-card)",
|
|
436
435
|
cursor: "pointer",
|
|
437
436
|
boxShadow: "var(--doc-card-shadow)"
|
|
438
|
-
},
|
|
437
|
+
}, ft = {
|
|
439
438
|
padding: "10px 12px",
|
|
440
439
|
borderRadius: 8,
|
|
441
440
|
backgroundColor: "var(--doc-surface)",
|
|
@@ -443,4 +442,4 @@ var Fe = ["value", "disabled"], Ie = {
|
|
|
443
442
|
boxShadow: "var(--doc-card-shadow-strong)"
|
|
444
443
|
};
|
|
445
444
|
//#endregion
|
|
446
|
-
export {
|
|
445
|
+
export { D as AddCommentCard, k as AlignmentButtons, a as Button, dt as CARD_STYLE_COLLAPSED, ft as CARD_STYLE_EXPANDED, i as Checkbox, t as ColorPicker, T as CommentCard, _e as CommentMarginMarkers, ne as DEFAULT_COMPONENTS, n as DatePickerPopover, c as Dialog, he as DocumentName, be as EditingModeDropdown, je as EditorToolbar, ae as FindReplaceDialog, Je as FontPicker, $e as FontSizePicker, ie as FootnotePropertiesDialog, xe as HorizontalRuler, ce as HyperlinkDialog, P as IconGridDropdown, f as ImagePositionDialog, te as ImagePropertiesDialog, ve as ImageTransformDropdown, me as ImageWrapDropdown, m as Input, le as InsertImageDialog, ee as InsertSymbolDialog, u as InsertTableDialog, nt as LineSpacingPicker, j as ListButtons, g as MenuBar, s as MenuDropdown, pe as OutlineRail, de as PageSetupDialog, re as PasteSpecialDialog, e as Popover, ut as PrintButton, M as ReplyInput, b as ReplyThread, y as ResolvedCommentMarker, d as Select, p as SplitCellDialog, w as StylePicker, ye as TableBorderColorPicker, N as TableBorderPicker, S as TableBorderWidthPicker, C as TableCellFillPicker, ge as TableGridInline, st as TableGridPicker, E as TableMoreDropdown, oe as TablePropertiesDialog, se as TableStyleGallery, O as TableToolbar, Re as TitleBar, v as Toolbar, A as TrackedChangeCard, _ as UnifiedSidebar, x as VerticalRuler, ue as WatermarkDialog, l as provideFolioUI, fe as resolveFolioComponents, h as useFolioUI };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let e=require("vue"),t=require("@stll/folio-core/paged-layout/sectionGeometry"),n=require("@stll/folio-core/prosemirror/plugins/anonymizationDecorations"),r=require("@stll/folio-core/prosemirror/plugins/templateDirectives"),i=require("@stll/folio-core/prosemirror/plugins/suggestionMode"),a=require("@stll/folio-core/controller/folioEditor"),o=require("@stll/folio-core/controller/folioEditorEvents"),s=require("@stll/folio-core/controller/hiddenEditorManager"),c=require("@stll/folio-core/controller/layoutPipeline"),l=require("@stll/folio-core/controller/layoutScheduler"),u=require("@stll/folio-core/controller/layoutSession"),d=require("@stll/folio-core/docx/parser"),f=require("@stll/folio-core/docx/footnoteParser"),p=require("@stll/folio-core/layout-bridge/convert/headerFooterLayout"),m=require("@stll/folio-core/layout-painter"),h=require("@stll/folio-core/paged-layout/LayoutSelectionGate"),g=require("@stll/folio-core/paged-layout/transactionDirtyRange"),ee=require("@stll/folio-core/prosemirror/conversion/fromProseDoc"),te=require("@stll/folio-core/prosemirror/extensions/ExtensionManager"),_=require("@stll/folio-core/prosemirror/extensions/features/ParagraphChangeTrackerExtension"),ne=require("@stll/folio-core/prosemirror/extensions/StarterKit"),re=require("@stll/folio-core/prosemirror/plugins/templatePreviewValues"),ie=require("@stll/folio-core/prosemirror/plugins/templateSlashMenu"),v=require("@stll/folio-core/utils/findVerticalScrollParent"),y=require("@stll/folio-core/prosemirror/tableResize"),b=require("@stll/folio-core/prosemirror/utils/extractTrackedChanges");var ae=24,oe=32,se=96,ce=250,le=[];function ue(e){let n=e?.columnCount??1;if(n<=1)return;let r={count:n,gap:(0,t.twipsToPixels)(e?.columnSpace??720),equalWidth:e?.equalWidth??!0};return e?.separator!==void 0&&(r.separator=e.separator),r}function x(e){let t={};e.titlePg!==void 0&&(t.titlePg=e.titlePg);for(let n of e.headerReferences??[])n.type==="default"?t.headerDefault=n.rId:n.type===`first`?t.headerFirst=n.rId:t.headerEven=n.rId;for(let n of e.footerReferences??[])n.type==="default"?t.footerDefault=n.rId:n.type===`first`?t.footerFirst=n.rId:t.footerEven=n.rId;return t}function de(e){let t=e?.package.document;if(!t)return;let n=t.sections;if(n&&n.length>0)return n.map(e=>x(e.properties));let r=t.finalSectionProperties;if(r)return[x(r)]}var S={hf:null,rId:null};function fe(e,t){let n=e?.package;if(!n||!t)return{header:S,footer:S,firstHeader:S,firstFooter:S};let r=n.headers,i=n.footers,a=e=>e?r?.get(e)??null:null,o=e=>e?i?.get(e)??null:null,s=null,c=null;for(let e of t.headerReferences??[])e.type==="default"?s=e.rId:e.type===`first`&&(c=e.rId);let l=null,u=null;for(let e of t.footerReferences??[])e.type==="default"?l=e.rId:e.type===`first`&&(u=e.rId);return{header:{hf:a(s),rId:s},footer:{hf:o(l),rId:l},firstHeader:{hf:a(c),rId:c},firstFooter:{hf:o(u),rId:u}}}function pe(e,t,n,r,i,a){if(!e)return;let o=t?{...a,rId:t}:a,s=t?n?.getView(t):null;return s?(0,p.convertHeaderFooterPmDocToContent)(s.state.doc,r,i,o):(0,p.convertHeaderFooterToContent)(e,r,i,o)}function me(e,t,n,r,i){if(!e||e.size===0)return;let a=new Map;for(let[o,s]of e){let e=pe(s,o,t,n,r,i);e&&a.set(o,e)}return a.size>0?a:void 0}function he(e,t,n){let r=new Map;if(!n||!n.package.footnotes)return r;let i=new Map;for(let e of n.package.footnotes)e.noteType&&e.noteType!==`normal`||i.set(e.id,e);for(let[n,a]of e){let e=[];for(let n of a){let r=i.get(n);if(!r)continue;let a=t.get(n),o=a?.displayNumber??0;e.push({displayNumber:String(o),text:(0,f.getFootnoteText)(r),...a?{content:{blocks:a.blocks,measures:a.measures,height:a.height}}:{}})}e.length>0&&r.set(n,e)}return r}var C=new Set([`black`,`blue`,`cyan`,`darkBlue`,`darkCyan`,`darkGray`,`darkGreen`,`darkMagenta`,`darkRed`,`darkYellow`,`green`,`lightGray`,`magenta`,`none`,`red`,`white`,`yellow`]);function ge(e){let t=[],n=(e,r)=>{for(let[n,i]of e.marks.entries())i.type.name===`highlight`&&!C.has(String(i.attrs.color))&&t.push(`${r}.marks[${n}]=${JSON.stringify(i.attrs)}`);e.forEach((e,t,i)=>{n(e,`${r}.content[${i}]`)})};return n(e,`doc`),t.join(`; `)}function _e(){return typeof document>`u`||!(`fonts`in document)?!0:document.fonts.status===`loaded`}function w(f){let{hiddenContainer:p,pagesContainer:v,readOnly:y=!1,pageGap:b=ae,documentKey:x,password:S,editorMode:C,author:w,externalPlugins:T=[],onAnonymizationMatchesChange:E,showTemplateDirectives:D,onSlashMenuChange:O,onSlashMenuKeyAction:k,onChange:A,onError:j,onSelectionUpdate:M,onEditorViewReady:N,onReadOnlyEditAttempt:P,featureFlags:ve,onSelectiveSaveTripwire:F}=f,I=(0,e.shallowRef)(null),L=(0,e.shallowRef)(null),R=(0,e.shallowRef)(null),z=(0,e.shallowRef)(null),ye=(0,e.shallowRef)([]),be=(0,e.shallowRef)([]),B=(0,e.ref)(!1),V=(0,e.ref)(null),H=(0,e.ref)(!1),U=new te.ExtensionManager((0,ne.createStarterKit)());U.buildSchema(),U.initializeRuntime();let xe=(0,i.createSuggestionModePlugin)(!1),Se=(0,n.createAnonymizationDecorationsPlugin)({onMatchesChange:e=>E?.(e)}),W=(0,r.createTemplateDirectivesPlugin)(),G=(0,ie.templateSlashMenuPlugin)({onChange:e=>O?.(e),onKeyAction:e=>k?.(e)??!1}),Ce=(0,re.createTemplatePreviewValuesPlugin)(),K=()=>(0,e.toValue)(D)===!0;function we(){return[xe,...T,Se,...K()?[W,G]:[],Ce]}let q=(0,o.createFolioEditorEmitter)(),J=new h.LayoutSelectionGate,Te=(0,u.createLayoutSession)(),Ee=new m.LayoutPainter({pageGap:b,showShadow:!0});function De(e){e.layout&&(z.value=e.layout),e.blocks&&(ye.value=e.blocks),e.measures&&(be.value=e.measures),e.blockLookup&&Ee.setBlockLookup(e.blockLookup),e.layout&&q.emit(`layoutComplete`,e.layout)}function Y(e,n={}){let r=v.value,i=r instanceof HTMLDivElement?r:null,a=I.value,o=a?.package.document,s=o?.sections?.[0]?.properties??o?.finalSectionProperties??null,l=(0,t.getPageSize)(s),u=(0,t.getMargins)(s),d=ue(s),f=l.w-u.left-u.right,p=a?.package.styles??null,m=a?.package.theme??null,h=a?.package.settings?.defaultTabStop,g=fe(a,s);try{De((0,c.runLayoutPipeline)({contentWidth:f,columns:d,pageSize:l,margins:u,pageGap:b,syncCoordinator:J,headerContent:g.header.hf,footerContent:g.footer.hf,firstPageHeaderContent:g.firstHeader.hf,firstPageFooterContent:g.firstFooter.hf,headerContentRId:g.header.rId,footerContentRId:g.footer.rId,firstPageHeaderContentRId:g.firstHeader.rId,firstPageFooterContentRId:g.firstFooter.rId,sectionHeaderFooterRefs:de(a),theme:m,sectionProperties:s,document:a,defaultTabStop:h,styles:p,layout:z.value,hfPMs:null,painter:Ee,pagesContainer:i,session:Te,renderHfFromContentOrPm:pe,renderHeaderFooterContentByRId:me,documentFontsAreLoaded:_e,buildFootnoteRenderItems:he,describeInvalidHighlightMarks:ge,emptyTemplatePreviewEntries:le},e,n))}catch(e){let t=e instanceof Error?e:Error(String(e));j?.(t)}}let X=(0,l.createLayoutScheduler)({runLayout:(e,t)=>Y(e,t),debounceMs:oe,maxDelayMs:se,clock:l.browserClock}),Z=null;function Oe(){Z!==null&&(window.clearTimeout(Z),Z=null);let e=L.value,t=I.value;if(!(!e||!t))try{let n=(0,ee.fromProseDoc)(e.state.doc,t);I.value=n,A?.(n),q.emit(`docChange`,n)}catch(e){j?.(e instanceof Error?e:Error(String(e)))}}function ke(){Z!==null&&window.clearTimeout(Z),Z=window.setTimeout(()=>{Z=null,Oe()},ce)}let Q=(0,s.createHiddenEditorManager)({getHost:()=>p.value,getDocument:()=>I.value,getStyles:()=>I.value?.package.styles??null,getExtensionManager:()=>U,getExternalPlugins:we,getCollaboration:()=>void 0,getCollaborationModules:()=>null,getPrecomputedInitialState:()=>null,getReadOnly:()=>(0,e.toValue)(y),getDocumentKey:()=>(0,e.toValue)(x),getDocumentContext:()=>I.value,onTransaction:Ae,onSelectionChange:e=>{R.value=e,M?.(e),q.emit(`selectionChange`,{from:e.selection.from,to:e.selection.to})},onKeyDown:()=>!1,onReadOnlyEditAttempt:()=>P?.(),onEditorViewReady:je,onEditorViewDestroy:()=>{L.value=null,B.value=!1,N?.(null)},onRemoteSelectionsChange:()=>{}});function Ae(e,t){R.value=t,e.docChanged&&(H.value=!0,J.incrementStateSeq(),X.schedule(t,(0,g.getTransactionDirtyRange)(e)),ke()),J.requestRender()}function je(t){L.value=t,R.value=t.state,B.value=!0,Y(t.state,{reason:`initial`}),J.requestRender(),Ne(t),N?.(t),(0,e.toValue)(y)||requestAnimationFrame(()=>{L.value===t&&t.focus()})}let Me=(0,a.createFolioEditor)({getEditorApi:()=>Q.api,getLayout:()=>z.value,runLayout:(e,t)=>Y(e,t),emitter:q});function Ne(t){(0,i.setSuggestionMode)((0,e.toValue)(C)===`suggesting`,t.state,t.dispatch,(0,e.toValue)(w))}(0,e.watch)([()=>(0,e.toValue)(C),()=>(0,e.toValue)(w)],()=>{let e=L.value;e&&Ne(e)}),(0,e.watch)(()=>(0,e.toValue)(y),()=>Q.syncEditable());function Pe(e){let t=K();if(t===e.state.plugins.includes(W))return;let n=e.state.plugins.filter(e=>e!==W&&e!==G);if(t){let e=n.indexOf(Ce),t=e===-1?n.length:e;n.splice(t,0,W,G)}e.updateState(e.state.reconfigure({plugins:n}))}(0,e.watch)(()=>K(),()=>{let e=L.value;e&&Pe(e)});function Fe(){Q.ensureView()}function Ie(){H.value=!1,X.dispose(),Q.destroyView(),Q.ensureView(),Q.getView()||Le()}function Le(){let e=I.value;if(e)try{let t=(0,s.createHiddenEditorState)({document:e,styles:e.package.styles??null,manager:U,externalPlugins:we(),collaborationModules:null,reason:`mount`});R.value=t,Y(t,{reason:`initial`})}catch(e){j?.(e instanceof Error?e:Error(String(e)))}}(0,e.watch)([p,v],()=>{p.value&&I.value&&!Q.getView()&&Fe()},{flush:`post`});async function Re(t){V.value=null,B.value=!1;try{I.value=await(0,d.parseDocx)(t,{password:(0,e.toValue)(S)}),Ie()}catch(e){let t=e instanceof Error?e:Error(String(e));V.value=t.message,j?.(t)}}function ze(e){V.value=null,I.value=e,Ie()}async function Be(t){let n=L.value,r=I.value;if(!n||!r)return null;let i=n.state,{resolveSelectiveSaveFlags:a}=await import(`@stll/folio-core/docx/selectiveSaveFlags`),o=a((0,e.toValue)(ve)),s=(0,ee.fromProseDoc)(i.doc,r),c=s.originalBuffer??null,l=o.selectiveSave&&t?.selective!==!1,u=l||o.selectiveSaveTripwire,{repackDocx:d,createDocx:f}=await import(`@stll/folio-core/docx/rezip`),p=null;if(u&&c){let{attemptSelectiveSave:e}=await import(`@stll/folio-core/docx/selectiveSave`);p=await e(s,c,{changedParaIds:(0,_.getChangedParagraphIds)(i),structuralChange:(0,_.hasStructuralChanges)(i),hasUntrackedChanges:(0,_.hasUntrackedChanges)(i),maxBytes:o.selectiveSaveMaxBytes})}let m=l?p:null,h=null;if(!m)h=c?await d(s):await f(s),m=h;else if(o.selectiveSaveTripwire)try{h=await d(s)}catch{}if(o.selectiveSaveTripwire&&h&&F)try{let{compareSelectiveVsFull:e}=await import(`@stll/folio-core/docx/selectiveSaveTripwire`);F(await e(p,h))}catch{}return H.value=!1,new Blob([m],{type:`application/vnd.openxmlformats-officedocument.wordprocessingml.document`})}function Ve(){return I.value}function He(e){I.value=e}function Ue(){return U.getCommands()}function We(){L.value?.focus()}function Ge(){let e=L.value;e&&Y(e.state,{reason:`manual`})}function $(){X.dispose(),Z!==null&&(window.clearTimeout(Z),Z=null),Q.destroyView(),U.destroy(),R.value=null,z.value=null,I.value=null,B.value=!1}return(0,e.onScopeDispose)($),{editor:Me,editorView:L,editorState:R,isReady:B,isDirty:H,parseError:V,layout:z,blocks:ye,measures:be,loadBuffer:Re,loadDocument:ze,save:Be,getDocument:Ve,setDocument:He,getCommands:Ue,focus:We,reLayout:Ge,destroy:$}}function T(e,t){if(t<e.top+40){let n=Math.max(0,e.top+40-t);return-Math.min(12,n/40*12)}if(t>e.bottom-40){let n=Math.max(0,t-(e.bottom-40));return Math.min(12,n/40*12)}return 0}function E({pagesContainer:t,onScrollExtendSelection:n}){let r=null,i=0,a=0,o=!1,s=null;function c(){if(s)return s;let e=t.value;return e?(s=(0,v.findVerticalScrollParent)(e),s):null}function l(){o=!1,r!==null&&(cancelAnimationFrame(r),r=null)}function u(){if(!o)return;let e=c();if(!e)return;let t=T(e.getBoundingClientRect(),a);t!==0&&(e.scrollTop+=t,n(i,a)),r=requestAnimationFrame(u)}function d(){o||(o=!0,r=requestAnimationFrame(u))}function f(e,t){if(i=e,a=t,!o){let e=c();if(!e)return;let n=e.getBoundingClientRect();(t<n.top+40||t>n.bottom-40)&&d()}}return(0,e.onScopeDispose)(()=>l()),{updateMousePosition:f,stopAutoScroll:l}}function D(){let e={active:!1,startX:0,handle:null,columnIndex:0,tablePmStart:0,origWidths:{left:0,right:0}},t={active:!1,startY:0,handle:null,rowIndex:0,isEdge:!1,tablePmStart:0,origHeight:0},n={active:!1,startX:0,handle:null,columnIndex:0,tablePmStart:0,origWidth:0},r=null;function i(){return e.active||t.active||n.active}function a(i,a){let o=i.target;return o instanceof HTMLElement?o.classList.contains(`layout-table-resize-handle`)?(i.preventDefault(),i.stopPropagation(),r=a,e.active=!0,e.startX=i.clientX,e.handle=o,o.classList.add(`dragging`),e.columnIndex=parseInt(o.dataset.columnIndex??`0`,10),e.tablePmStart=parseInt(o.dataset.tablePmStart??`0`,10),O(a,e),!0):o.classList.contains(`layout-table-row-resize-handle`)||o.classList.contains(`layout-table-edge-handle-bottom`)?(i.preventDefault(),i.stopPropagation(),r=a,t.active=!0,t.startY=i.clientY,t.handle=o,t.isEdge=o.dataset.isEdge===`bottom`,o.classList.add(`dragging`),t.rowIndex=parseInt(o.dataset.rowIndex??`0`,10),t.tablePmStart=parseInt(o.dataset.tablePmStart??`0`,10),k(a,t,o),!0):o.classList.contains(`layout-table-edge-handle-right`)?(i.preventDefault(),i.stopPropagation(),r=a,n.active=!0,n.startX=i.clientX,n.handle=o,o.classList.add(`dragging`),n.columnIndex=parseInt(o.dataset.columnIndex??`0`,10),n.tablePmStart=parseInt(o.dataset.tablePmStart??`0`,10),A(a,n),!0):!1:!1}function o(r){if(e.active&&e.handle){r.preventDefault();let t=r.clientX-e.startX,n=parseFloat(e.handle.style.left);e.handle.style.left=`${n+t}px`,e.startX=r.clientX;let i=Math.round(t*y.TWIPS_PER_PIXEL),a=e.origWidths.left+i,o=e.origWidths.right-i;a>=y.MIN_CELL_WIDTH_TWIPS&&o>=y.MIN_CELL_WIDTH_TWIPS&&(e.origWidths={left:a,right:o});return}if(t.active&&t.handle){r.preventDefault();let e=r.clientY-t.startY,n=parseFloat(t.handle.style.top);t.handle.style.top=`${n+e}px`,t.startY=r.clientY;let i=Math.round(e*y.TWIPS_PER_PIXEL),a=t.origHeight+i;a>=y.MIN_ROW_HEIGHT_TWIPS&&(t.origHeight=a);return}if(n.active&&n.handle){r.preventDefault();let e=r.clientX-n.startX,t=parseFloat(n.handle.style.left);n.handle.style.left=`${t+e}px`,n.startX=r.clientX;let i=Math.round(e*y.TWIPS_PER_PIXEL),a=n.origWidth+i;a>=y.MIN_CELL_WIDTH_TWIPS&&(n.origWidth=a)}}function s(i){if(e.active){e.active=!1,e.handle?.classList.remove(`dragging`),r&&(0,y.commitColumnResize)(r,{pmStart:e.tablePmStart,colIdx:e.columnIndex,newLeft:e.origWidths.left,newRight:e.origWidths.right}),e.handle=null;return}if(t.active){t.active=!1,t.handle?.classList.remove(`dragging`),r&&(0,y.commitRowResize)(r,{pmStart:t.tablePmStart,rowIdx:t.rowIndex,newHeight:t.origHeight}),t.handle=null;return}n.active&&(n.active=!1,n.handle?.classList.remove(`dragging`),r&&(0,y.commitRightEdgeResize)(r,{pmStart:n.tablePmStart,colIdx:n.columnIndex,newWidth:n.origWidth}),n.handle=null)}function c(){return document.addEventListener(`mousemove`,o),document.addEventListener(`mouseup`,s),()=>{document.removeEventListener(`mousemove`,o),document.removeEventListener(`mouseup`,s)}}return{tryStartResize:a,install:c,isResizing:i}}function O(e,t){let n=(0,y.readColumnWidths)(e,t.tablePmStart,t.columnIndex);n&&(t.origWidths=n)}function k(e,t,n){let r=(0,y.readRowHeight)(e,t.tablePmStart,t.rowIndex);if(r!=null){t.origHeight=r;return}let i=n.closest(`.layout-table`)?.querySelector(`[data-row-index="${t.rowIndex}"]`),a=i?i.getBoundingClientRect().height:30;t.origHeight=Math.round(a*y.TWIPS_PER_PIXEL)}function A(e,t){let n=(0,y.readColumnWidthAt)(e,t.tablePmStart,t.columnIndex);n!=null&&(t.origWidth=n)}function j(t,n){return(0,e.computed)(()=>(n.value,(0,b.extractTrackedChanges)(t.value?.state??null)))}var M=.5,N=2,P=.1,ve=[.5,.75,1,1.25,1.5,2];function F(t=1){let n=(0,e.ref)(Math.max(M,Math.min(N,t))),r=(0,e.computed)(()=>Math.round(n.value*100)),i=(0,e.computed)(()=>n.value<=M),a=(0,e.computed)(()=>n.value>=N);function o(e){n.value=Math.max(M,Math.min(N,Math.round(e*100)/100))}function s(){o(n.value+P)}function c(){o(n.value-P)}function l(){o(1)}function u(e){(e.ctrlKey||e.metaKey)&&(e.preventDefault(),e.deltaY<0?s():c())}function d(e){(e.ctrlKey||e.metaKey)&&(e.shiftKey||e.altKey||(e.key===`=`||e.key===`+`?(e.preventDefault(),s()):e.key===`-`?(e.preventDefault(),c()):e.key===`0`&&(e.preventDefault(),l())))}function f(){(0,e.onMounted)(()=>document.addEventListener(`keydown`,d)),(0,e.onBeforeUnmount)(()=>document.removeEventListener(`keydown`,d))}return{zoom:n,zoomPercent:r,isMinZoom:i,isMaxZoom:a,setZoom:o,zoomIn:s,zoomOut:c,resetZoom:l,handleWheel:u,handleKeyDown:d,installShortcuts:f,ZOOM_PRESETS:ve}}Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return F}});
|