@univerjs/docs-drawing-ui 0.17.0 → 0.18.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/lib/cjs/index.js +37 -1
- package/lib/cjs/locale/ca-ES.js +1 -1
- package/lib/cjs/locale/en-US.js +1 -1
- package/lib/cjs/locale/es-ES.js +1 -1
- package/lib/cjs/locale/fa-IR.js +1 -1
- package/lib/cjs/locale/fr-FR.js +1 -1
- package/lib/cjs/locale/ja-JP.js +1 -1
- package/lib/cjs/locale/ko-KR.js +1 -1
- package/lib/cjs/locale/ru-RU.js +1 -1
- package/lib/cjs/locale/sk-SK.js +1 -1
- package/lib/cjs/locale/vi-VN.js +1 -1
- package/lib/cjs/locale/zh-CN.js +1 -1
- package/lib/cjs/locale/zh-TW.js +1 -1
- package/lib/es/index.js +37 -2891
- package/lib/es/locale/ca-ES.js +1 -62
- package/lib/es/locale/en-US.js +1 -62
- package/lib/es/locale/es-ES.js +1 -62
- package/lib/es/locale/fa-IR.js +1 -62
- package/lib/es/locale/fr-FR.js +1 -62
- package/lib/es/locale/ja-JP.js +1 -62
- package/lib/es/locale/ko-KR.js +1 -62
- package/lib/es/locale/ru-RU.js +1 -62
- package/lib/es/locale/sk-SK.js +1 -62
- package/lib/es/locale/vi-VN.js +1 -62
- package/lib/es/locale/zh-CN.js +1 -62
- package/lib/es/locale/zh-TW.js +1 -62
- package/lib/index.css +57 -1
- package/lib/index.js +37 -2891
- package/lib/locale/ca-ES.js +1 -62
- package/lib/locale/en-US.js +1 -62
- package/lib/locale/es-ES.js +1 -62
- package/lib/locale/fa-IR.js +1 -62
- package/lib/locale/fr-FR.js +1 -62
- package/lib/locale/ja-JP.js +1 -62
- package/lib/locale/ko-KR.js +1 -62
- package/lib/locale/ru-RU.js +1 -62
- package/lib/locale/sk-SK.js +1 -62
- package/lib/locale/vi-VN.js +1 -62
- package/lib/locale/zh-CN.js +1 -62
- package/lib/locale/zh-TW.js +1 -62
- package/lib/types/commands/commands/delete-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/group-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/insert-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/insert-image.command.d.ts +16 -1
- package/lib/types/commands/commands/interfaces.d.ts +17 -2
- package/lib/types/commands/commands/move-drawings.command.d.ts +17 -1
- package/lib/types/commands/commands/remove-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/set-drawing-arrange.command.d.ts +18 -2
- package/lib/types/commands/commands/ungroup-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/update-doc-drawing.command.d.ts +16 -1
- package/lib/types/commands/commands/utils.d.ts +16 -1
- package/lib/types/commands/operations/clear-drawing-transformer.operation.d.ts +16 -1
- package/lib/types/commands/operations/edit-doc-drawing.operation.d.ts +16 -1
- package/lib/types/commands/operations/open-drawing-panel.operation.d.ts +16 -1
- package/lib/types/controllers/doc-drawing-notification.controller.d.ts +15 -0
- package/lib/types/controllers/doc-drawing-printing.controller.d.ts +15 -0
- package/lib/types/controllers/doc-drawing-transformer-update.controller.d.ts +15 -0
- package/lib/types/controllers/doc-drawing.controller.d.ts +15 -0
- package/lib/types/controllers/doc-float-dom.controller.d.ts +21 -3
- package/lib/types/controllers/render-controllers/doc-drawing-transform-update.controller.d.ts +18 -2
- package/lib/types/controllers/render-controllers/doc-drawing-update.render-controller.d.ts +19 -2
- package/lib/types/controllers/shortcuts/drawing.shortcut.d.ts +18 -3
- package/lib/types/locale/ca-ES.d.ts +16 -1
- package/lib/types/locale/es-ES.d.ts +16 -1
- package/lib/types/locale/fa-IR.d.ts +16 -1
- package/lib/types/locale/fr-FR.d.ts +16 -1
- package/lib/types/locale/ja-JP.d.ts +16 -1
- package/lib/types/locale/ko-KR.d.ts +16 -1
- package/lib/types/locale/ru-RU.d.ts +16 -1
- package/lib/types/locale/sk-SK.d.ts +16 -1
- package/lib/types/locale/vi-VN.d.ts +16 -1
- package/lib/types/locale/zh-CN.d.ts +16 -1
- package/lib/types/locale/zh-TW.d.ts +16 -1
- package/lib/types/menu/drawing-popup-menu.controller.d.ts +15 -0
- package/lib/types/menu/image.menu.d.ts +17 -2
- package/lib/types/menu/schema.d.ts +16 -1
- package/lib/types/plugin.d.ts +16 -1
- package/lib/types/services/doc-refresh-drawings.service.d.ts +18 -3
- package/lib/types/views/doc-image-panel/DocDrawingPosition.d.ts +16 -1
- package/lib/types/views/doc-image-panel/DocDrawingTextWrap.d.ts +16 -1
- package/lib/types/views/printing-float-dom/index.d.ts +17 -2
- package/lib/umd/index.js +37 -1
- package/lib/umd/locale/ca-ES.js +1 -1
- package/lib/umd/locale/en-US.js +1 -1
- package/lib/umd/locale/es-ES.js +1 -1
- package/lib/umd/locale/fa-IR.js +1 -1
- package/lib/umd/locale/fr-FR.js +1 -1
- package/lib/umd/locale/ja-JP.js +1 -1
- package/lib/umd/locale/ko-KR.js +1 -1
- package/lib/umd/locale/ru-RU.js +1 -1
- package/lib/umd/locale/sk-SK.js +1 -1
- package/lib/umd/locale/vi-VN.js +1 -1
- package/lib/umd/locale/zh-CN.js +1 -1
- package/lib/umd/locale/zh-TW.js +1 -1
- package/package.json +15 -14
package/lib/umd/index.js
CHANGED
|
@@ -1 +1,37 @@
|
|
|
1
|
-
(function(b,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("@univerjs/core"),require("@univerjs/docs-drawing"),require("@univerjs/docs"),require("@univerjs/docs-ui"),require("@univerjs/engine-render"),require("@univerjs/design"),require("@univerjs/drawing"),require("@univerjs/ui"),require("rxjs"),require("@univerjs/drawing-ui"),require("react/jsx-runtime"),require("react")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/docs-drawing","@univerjs/docs","@univerjs/docs-ui","@univerjs/engine-render","@univerjs/design","@univerjs/drawing","@univerjs/ui","rxjs","@univerjs/drawing-ui","react/jsx-runtime","react"],i):(b=typeof globalThis<"u"?globalThis:b||self,i(b.UniverDocsDrawingUi={},b.UniverCore,b.UniverDocsDrawing,b.UniverDocs,b.UniverDocsUi,b.UniverEngineRender,b.UniverDesign,b.UniverDrawing,b.UniverUi,b.rxjs,b.UniverDrawingUi,b.React,b.React))})(this,(function(b,i,te,k,W,L,$,X,B,Z,he,S,Y){"use strict";var ln=Object.defineProperty;var gn=(b,i,te)=>i in b?ln(b,i,{enumerable:!0,configurable:!0,writable:!0,value:te}):b[i]=te;var le=(b,i,te)=>gn(b,typeof i!="symbol"?i+"":i,te);const Ne={id:"doc.command.remove-doc-image",type:i.CommandType.COMMAND,handler:(s,e)=>{var P,C,R,H;const t=s.get(i.ICommandService),n=s.get(i.IUniverInstanceService),r=s.get(L.IRenderManagerService),o=n.getCurrentUniverDocInstance();if(e==null||o==null)return!1;const a=r.getRenderById(e.unitId).with(W.DocSelectionRenderService),{drawings:d}=e,l=(P=a.getSegment())!=null?P:"",c=new i.TextX,g=i.JSONX.getInstance(),h=(R=(C=o.getSelfOrHeaderFooterModel(l).getBody())==null?void 0:C.customBlocks)!=null?R:[],u=d.map(N=>h.find(w=>w.blockId===N.drawingId)).filter(N=>!!N).sort((N,w)=>N.startIndex>w.startIndex?1:-1),m=d[0].unitId,p=new i.MemoryCursor;p.reset();const v=u[0].startIndex,I=[{startOffset:v,endOffset:v}],f={id:k.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:I}},T=[];for(const N of u){const{startIndex:w}=N;w>p.cursor&&c.push({t:i.TextXActionType.RETAIN,len:w-p.cursor}),c.push({t:i.TextXActionType.DELETE,len:1}),p.moveCursorTo(w+1)}const y=W.getRichTextEditPath(o,l);T.push(g.editOp(c.serialize(),y));for(const N of u){const{blockId:w}=N,U=((H=o.getDrawings())!=null?H:{})[w],F=o.getDrawingsOrder().indexOf(w),q=g.removeOp(["drawings",w],U),_=g.removeOp(["drawingsOrder",F],w);T.push(q),T.push(_)}return f.params.actions=T.reduce((N,w)=>i.JSONX.compose(N,w),null),!!t.syncExecuteCommand(f.id,f.params)}},$e={id:"doc.command.delete-drawing",type:i.CommandType.COMMAND,handler:s=>{const e=s.get(i.ICommandService),n=s.get(te.IDocDrawingService).getFocusDrawings();if(n.length===0)return!1;const{unitId:r}=n[0],o=n.map(a=>{const{unitId:d,subUnitId:l,drawingId:c,drawingType:g}=a;return{unitId:d,subUnitId:l,drawingId:c,drawingType:g}});return e.executeCommand(Ne.id,{unitId:r,drawings:o})}},ze={id:"doc.command.group-doc-image",type:i.CommandType.COMMAND,handler:(s,e)=>!1},Re={id:"doc.command.insert-doc-image",type:i.CommandType.COMMAND,handler:(s,e)=>{var C,R,H,N;if(e==null)return!1;const t=s.get(i.ICommandService),n=s.get(k.DocSelectionManagerService),r=s.get(i.IUniverInstanceService),o=n.getActiveTextRange(),a=r.getCurrentUniverDocInstance();if(o==null||a==null)return!1;const d=a.getUnitId(),{drawings:l}=e,{collapsed:c,startOffset:g,segmentId:h}=o,u=a.getSelfOrHeaderFooterModel(h).getBody();if(u==null)return!1;const m=new i.TextX,p=i.JSONX.getInstance(),v=[],I=(R=(C=a.getSnapshot().drawingsOrder)==null?void 0:C.length)!=null?R:0;let f=0;if(c)g>0&&m.push({t:i.TextXActionType.RETAIN,len:g});else{const w=i.BuildTextUtils.selection.delete([o],u,0,null,!1);m.push(...w);const U=W.getCustomBlockIdsInSelections(u,[o]),z=(H=a.getDrawings())!=null?H:{},F=(N=a.getDrawingsOrder())!=null?N:[],q=U.sort((_,D)=>F.indexOf(_)>F.indexOf(D)?-1:F.indexOf(_)<F.indexOf(D)?1:0);if(q.length>0)for(const _ of q){const D=z[_],A=F.indexOf(_);if(D==null||A<0)continue;const M=p.removeOp(["drawings",_],D),j=p.removeOp(["drawingsOrder",A],_);v.push(M),v.push(j),f++}}m.push({t:i.TextXActionType.INSERT,body:{dataStream:"\b".repeat(l.length),customBlocks:l.map((w,U)=>({startIndex:U,blockId:w.drawingId}))},len:l.length});const T=W.getRichTextEditPath(a,h),y=p.editOp(m.serialize(),T);v.push(y);for(const w of l){const{drawingId:U}=w,z=p.insertOp(["drawings",U],w),F=p.insertOp(["drawingsOrder",I-f],U);v.push(z),v.push(F)}const O={id:k.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:[]}};return O.params.actions=v.reduce((w,U)=>i.JSONX.compose(w,U),null),!!t.syncExecuteCommand(O.id,O.params)}},qe={id:"doc.command.set-drawing-arrange",type:i.CommandType.COMMAND,handler:(s,e)=>{const t=s.get(i.ICommandService),n=s.get(te.IDocDrawingService);if(e==null)return!1;const{unitId:r,subUnitId:o,drawingIds:a,arrangeType:d}=e,l={unitId:r,subUnitId:o,drawingIds:a};let c;if(d===i.ArrangeTypeEnum.forward?c=n.getForwardDrawingsOp(l):d===i.ArrangeTypeEnum.backward?c=n.getBackwardDrawingOp(l):d===i.ArrangeTypeEnum.front?c=n.getFrontDrawingsOp(l):d===i.ArrangeTypeEnum.back&&(c=n.getBackDrawingsOp(l)),c==null)return!1;const{redo:g}=c;if(g==null)return!1;const h=[];let u=i.Tools.deepClone(g);u=u.slice(3),u.unshift("drawingsOrder"),h.push(u);const m={id:k.RichTextEditingMutation.id,params:{unitId:r,actions:[],textRanges:null}};return m.params.actions=h.reduce((v,I)=>i.JSONX.compose(v,I),null),!!t.syncExecuteCommand(m.id,m.params)}},Ke={id:"doc.command.ungroup-doc-image",type:i.CommandType.COMMAND,handler:(s,e)=>{const t=s.get(te.IDocDrawingService);if(!e)return!1;const n=[];e.forEach(({parent:g,children:h})=>{n.push(g.unitId),h.forEach(u=>{n.push(u.unitId)})});const r=t.getUngroupDrawingOp(e),{unitId:o,subUnitId:a,undo:d,redo:l,objects:c}=r;return!1}};class xe{constructor(){le(this,"_refreshDrawings$",new Z.BehaviorSubject(null));le(this,"refreshDrawings$",this._refreshDrawings$.asObservable())}refreshDrawings(e){this._refreshDrawings$.next(e)}}var Dt=Object.getOwnPropertyDescriptor,Tt=(s,e,t,n)=>{for(var r=n>1?void 0:n?Dt(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},ne=(s,e)=>(t,n)=>e(t,n,s);let Fe=class extends i.Disposable{constructor(s,e,t,n,r,o,a,d,l,c,g,h,u){super(),this._context=s,this._commandService=e,this._docSelectionManagerService=t,this._renderManagerSrv=n,this._imageIoService=r,this._docDrawingService=o,this._drawingManagerService=a,this._contextService=d,this._messageService=l,this._localeService=c,this._docSelectionRenderService=g,this._docRefreshDrawingsService=h,this._fileOpenerService=u,this._updateOrderListener(),this._groupDrawingListener(),this._focusDrawingListener(),this._transformDrawingListener(),this._editAreaChangeListener()}dispose(){super.dispose(),delete this._context}async insertDocImage(){const s=await this._fileOpenerService.openFile({multiple:!0,accept:X.DRAWING_IMAGE_ALLOW_IMAGE_LIST.map(t=>`.${t.replace("image/","")}`).join(",")}),e=s.length;return e>X.DRAWING_IMAGE_COUNT_LIMIT?(this._messageService.show({type:$.MessageType.Error,content:this._localeService.t("update-status.exceedMaxCount",String(X.DRAWING_IMAGE_COUNT_LIMIT))}),!1):e===0?!1:(await this._insertFloatImages(s),!0)}async _insertFloatImages(s){let e=[];try{e=await Promise.all(s.map(r=>this._imageIoService.saveImage(r)))}catch(r){const o=r.message;let a="";switch(o){case X.ImageUploadStatusType.ERROR_EXCEED_SIZE:a=this._localeService.t("update-status.exceedMaxSize",String(X.DRAWING_IMAGE_ALLOW_SIZE/(1024*1024)));break;case X.ImageUploadStatusType.ERROR_IMAGE_TYPE:a=this._localeService.t("update-status.invalidImageType");break;case X.ImageUploadStatusType.ERROR_IMAGE:a=this._localeService.t("update-status.invalidImage");break}this._messageService.show({type:$.MessageType.Error,content:a})}if(e.length===0)return;const{unitId:t}=this._context,n=[];for(const r of e){if(r==null)continue;const{imageId:o,imageSourceType:a,source:d,base64Cache:l}=r,{width:c,height:g,image:h}=await X.getImageSize(l||"");this._imageIoService.addImageSourceCache(o,a,h);let u=1;if(c>X.DRAWING_IMAGE_WIDTH_LIMIT||g>X.DRAWING_IMAGE_HEIGHT_LIMIT){const I=X.DRAWING_IMAGE_WIDTH_LIMIT/c,f=X.DRAWING_IMAGE_HEIGHT_LIMIT/g;u=Math.min(I,f)}const m=this._getImagePosition(c*u,g*u);if(m==null)return;const p={unitId:t,subUnitId:t,drawingId:o,drawingType:i.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:a,source:d,transform:W.docDrawingPositionToTransform(m),docTransform:m,behindDoc:i.BooleanNumber.FALSE,title:"",description:"",layoutType:i.PositionedObjectLayoutType.INLINE,wrapText:i.WrapTextType.BOTH_SIDES,distB:0,distL:0,distR:0,distT:0};this._isInsertInHeaderFooter()&&(p.isMultiTransform=i.BooleanNumber.TRUE,p.transforms=p.transform?[p.transform]:null),n.push(p)}this._commandService.executeCommand(Re.id,{unitId:t,drawings:n})}_isInsertInHeaderFooter(){var n;const{unitId:s}=this._context,e=(n=this._renderManagerSrv.getRenderById(s))==null?void 0:n.with(k.DocSkeletonManagerService).getViewModel(),t=e==null?void 0:e.getEditArea();return t===L.DocumentEditArea.HEADER||t===L.DocumentEditArea.FOOTER}_getImagePosition(s,e){const t=this._docSelectionRenderService.getActiveTextRange(),n=(t==null?void 0:t.getAbsolutePosition())||{left:0};return{size:{width:s,height:e},positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:n.left},positionV:{relativeFrom:i.ObjectRelativeFromV.PARAGRAPH,posOffset:0},angle:0}}_updateOrderListener(){this.disposeWithMe(this._drawingManagerService.featurePluginOrderUpdate$.subscribe(s=>{const{unitId:e,subUnitId:t,drawingIds:n,arrangeType:r}=s;this._commandService.executeCommand(qe.id,{unitId:e,subUnitId:t,drawingIds:n,arrangeType:r})}))}_groupDrawingListener(){this.disposeWithMe(this._drawingManagerService.featurePluginGroupUpdate$.subscribe(s=>{this._commandService.executeCommand(ze.id,s)})),this.disposeWithMe(this._drawingManagerService.featurePluginUngroupUpdate$.subscribe(s=>{this._commandService.executeCommand(Ke.id,s)}))}_getCurrentSceneAndTransformer(){const{scene:s,mainComponent:e}=this._context;if(s==null||e==null)return;const t=s.getTransformerByCreate(),{docsLeft:n,docsTop:r}=e.getOffsetConfig();return{scene:s,transformer:t,docsLeft:n,docsTop:r}}_transformDrawingListener(){const s=this._getCurrentSceneAndTransformer();if(s&&s.transformer)this.disposeWithMe(s.transformer.changeEnd$.pipe(Z.debounceTime(30)).subscribe(e=>{this._docSelectionManagerService.refreshSelection()}));else throw new Error("transformer is not init")}_focusDrawingListener(){this.disposeWithMe(this._drawingManagerService.focus$.subscribe(s=>{var r;const{transformer:e,docsLeft:t,docsTop:n}=(r=this._getCurrentSceneAndTransformer())!=null?r:{};if(s==null||s.length===0)this._contextService.setContextValue(i.FOCUSING_COMMON_DRAWINGS,!1),this._docDrawingService.focusDrawing([]),e&&e.resetProps({zeroTop:0,zeroLeft:0});else{this._contextService.setContextValue(i.FOCUSING_COMMON_DRAWINGS,!0),this._docDrawingService.focusDrawing(s),this._setDrawingSelections(s);const o=this._docSelectionRenderService.getSegment(),a=this._findSegmentIdByDrawingId(s[0].drawingId);o!==a&&this._docSelectionRenderService.setSegment(a),e&&e.resetProps({zeroTop:n,zeroLeft:t})}}))}_findSegmentIdByDrawingId(s){var a,d,l;const{unit:e}=this._context,{body:t,headers:n={},footers:r={}}=e.getSnapshot();if(((a=t==null?void 0:t.customBlocks)!=null?a:[]).some(c=>c.blockId===s))return"";for(const c of Object.keys(n))if((d=n[c].body.customBlocks)!=null&&d.some(g=>g.blockId===s))return c;for(const c of Object.keys(r))if((l=r[c].body.customBlocks)!=null&&l.some(g=>g.blockId===s))return c;return""}_updateDrawingsEditStatus(){var d;if(!this._context)return;const{unit:s,scene:e,unitId:t}=this._context,n=(d=this._renderManagerSrv.getRenderById(t))==null?void 0:d.with(k.DocSkeletonManagerService).getViewModel();if(n==null||s==null)return;const r=s.getSnapshot(),{drawings:o={}}=r,a=n.getEditArea()===L.DocumentEditArea.BODY;for(const l of Object.keys(o)){const c=o[l],g=X.getDrawingShapeKeyByDrawingSearch({unitId:t,drawingId:c.drawingId,subUnitId:t}),h=e.fuzzyMathObjects(g,!0);if(h.length)for(const u of h){e.detachTransformerFrom(u);try{u.setOpacity(.5)}catch{}if(a&&c.isMultiTransform!==i.BooleanNumber.TRUE||!a&&c.isMultiTransform===i.BooleanNumber.TRUE){c.allowTransform!==!1&&e.attachTransformerTo(u);try{u.setOpacity(1)}catch{}}}}}_editAreaChangeListener(){var t;const{unitId:s}=this._context,e=(t=this._renderManagerSrv.getRenderById(s))==null?void 0:t.with(k.DocSkeletonManagerService).getViewModel();e!=null&&(this._updateDrawingsEditStatus(),this.disposeWithMe(e.editAreaChange$.subscribe(()=>{this._updateDrawingsEditStatus()})),this.disposeWithMe(this._docRefreshDrawingsService.refreshDrawings$.subscribe(n=>{n!=null&&queueMicrotask(()=>{this._updateDrawingsEditStatus()})})),this.disposeWithMe(this._commandService.onCommandExecuted(async n=>{n.id===k.RichTextEditingMutation.id&&queueMicrotask(()=>{this._updateDrawingsEditStatus()})})))}_setDrawingSelections(s){var r,o;const{unit:e}=this._context,t=(o=(r=e.getSnapshot().body)==null?void 0:r.customBlocks)!=null?o:[],n=s.map(a=>{const d=a.drawingId,l=t.find(c=>c.blockId===d);return l?l.startIndex:null}).filter(a=>a!==null).map(a=>({startOffset:a,endOffset:a+1}));this._docSelectionManagerService.replaceDocRanges(n)}};Fe=Tt([ne(1,i.ICommandService),ne(2,i.Inject(k.DocSelectionManagerService)),ne(3,L.IRenderManagerService),ne(4,X.IImageIoService),ne(5,te.IDocDrawingService),ne(6,X.IDrawingManagerService),ne(7,i.IContextService),ne(8,B.IMessageService),ne(9,i.Inject(i.LocaleService)),ne(10,i.Inject(W.DocSelectionRenderService)),ne(11,i.Inject(xe)),ne(12,B.ILocalFileService)],Fe);const Ye={id:"doc.command.insert-float-image",type:i.CommandType.COMMAND,handler:s=>{var n,r;const e=s.get(i.IUniverInstanceService),t=s.get(L.IRenderManagerService);return(r=(n=L.getCurrentTypeOfRenderer(i.UniverInstanceType.UNIVER_DOC,e,t))==null?void 0:n.with(Fe).insertDocImage())!=null?r:!1}};var ie=(s=>(s.INLINE="inline",s.BEHIND_TEXT="behindText",s.IN_FRONT_OF_TEXT="inFrontOfText",s.WRAP_SQUARE="wrapSquare",s.WRAP_TOP_AND_BOTTOM="wrapTopAndBottom",s))(ie||{});const yt={inline:i.PositionedObjectLayoutType.INLINE,wrapSquare:i.PositionedObjectLayoutType.WRAP_SQUARE,wrapTopAndBottom:i.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM,inFrontOfText:i.PositionedObjectLayoutType.WRAP_NONE,behindText:i.PositionedObjectLayoutType.WRAP_NONE};function st(s,e,t,n,r,o,a){var m,p;const d=new i.TextX,l=i.JSONX.getInstance(),c=[],g=o.getSelfOrHeaderFooterModel(e).getBody(),h=o.getSelfOrHeaderFooterModel(s).getBody();if(g==null||h==null)return;const u=(p=(m=g.customBlocks)==null?void 0:m.find(v=>v.blockId===r))==null?void 0:p.startIndex;if(u!=null){if(n=Math.min(h.dataStream.length-2,n),s===e){if(n<u?(n>0&&d.push({t:i.TextXActionType.RETAIN,len:n}),d.push({t:i.TextXActionType.INSERT,body:{dataStream:"\b",customBlocks:[{startIndex:0,blockId:r}]},len:1}),d.push({t:i.TextXActionType.RETAIN,len:u-n}),d.push({t:i.TextXActionType.DELETE,len:1})):(u>0&&d.push({t:i.TextXActionType.RETAIN,len:u}),d.push({t:i.TextXActionType.DELETE,len:1}),n-u-1>0&&d.push({t:i.TextXActionType.RETAIN,len:n-u-1}),d.push({t:i.TextXActionType.INSERT,body:{dataStream:"\b",customBlocks:[{startIndex:0,blockId:r}]},len:1})),n!==u){const v=W.getRichTextEditPath(o,e),I=l.editOp(d.serialize(),v);c.push(I)}}else{u>0&&d.push({t:i.TextXActionType.RETAIN,len:u}),d.push({t:i.TextXActionType.DELETE,len:1});let v=W.getRichTextEditPath(o,e),I=l.editOp(d.serialize(),v);c.push(I),d.empty(),n>0&&d.push({t:i.TextXActionType.RETAIN,len:n}),d.push({t:i.TextXActionType.INSERT,body:{dataStream:"\b",customBlocks:[{startIndex:0,blockId:r}]},len:1}),v=W.getRichTextEditPath(o,s),I=l.editOp(d.serialize(),v),c.push(I),a.setSegment(s),a.setSegmentPage(t)}return c}}const ot={id:"doc.command.update-doc-drawing-wrapping-style",type:i.CommandType.COMMAND,handler:(s,e)=>{var R,H;if(e==null)return!1;const{drawings:t,wrappingStyle:n,unitId:r}=e,o=s.get(i.ICommandService),a=s.get(i.IUniverInstanceService),l=s.get(L.IRenderManagerService).getRenderById(r),c=l==null?void 0:l.with(k.DocSkeletonManagerService).getSkeleton().getSkeletonData(),g=l==null?void 0:l.with(k.DocSkeletonManagerService).getViewModel(),h=l==null?void 0:l.scene,u=a.getCurrentUniverDocInstance();if(u==null||c==null||h==null||g==null)return!1;const m=g.getEditArea(),p=h.getTransformerByCreate(),{pages:v,skeHeaders:I,skeFooters:f}=c,T=i.JSONX.getInstance(),y=[],{drawings:O={}}=u.getSnapshot();for(const N of t){const{drawingId:w}=N,U=O[w].layoutType,z=yt[n];if(U!==z){const D=T.replaceOp(["drawings",w,"layoutType"],U,z);y.push(D)}if(n==="behindText"||n==="inFrontOfText"){const D=O[w].behindDoc,A=n==="behindText"?i.BooleanNumber.TRUE:i.BooleanNumber.FALSE;if(D!==A){const M=T.replaceOp(["drawings",w,"behindDoc"],D,A);y.push(M)}}if(n==="inline")continue;let F=null,q=0,_=0;for(const D of v){const{headerId:A,footerId:M,marginTop:j,marginLeft:G,marginBottom:E,pageWidth:x,pageHeight:K}=D;switch(m){case L.DocumentEditArea.HEADER:{const V=(R=I.get(A))==null?void 0:R.get(x);V!=null&&V.skeDrawings.has(w)&&(F=V.skeDrawings.get(w),q=V.marginTop,_=G);break}case L.DocumentEditArea.FOOTER:{const V=(H=f.get(M))==null?void 0:H.get(x);V!=null&&V.skeDrawings.has(w)&&(F=V.skeDrawings.get(w),q=K-E+V.marginTop,_=G);break}case L.DocumentEditArea.BODY:{D.skeDrawings.has(w)&&(F=D.skeDrawings.get(w),q=j,_=G);break}}if(F!=null)break}if(F!=null){const{aTop:D,aLeft:A}=F,M=O[w].docTransform.positionH;let j=A;M.relativeFrom===i.ObjectRelativeFromH.MARGIN?j-=_:M.relativeFrom===i.ObjectRelativeFromH.COLUMN&&(j-=F.columnLeft);const G={relativeFrom:M.relativeFrom,posOffset:j};if(M.posOffset!==G.posOffset){const V=T.replaceOp(["drawings",w,"docTransform","positionH"],M,G);y.push(V)}const E=O[w].docTransform.positionV;let x=D;E.relativeFrom===i.ObjectRelativeFromV.PAGE?x+=q:E.relativeFrom===i.ObjectRelativeFromV.LINE?x-=F.lineTop:E.relativeFrom===i.ObjectRelativeFromV.PARAGRAPH&&(x-=F.blockAnchorTop);const K={relativeFrom:E.relativeFrom,posOffset:x};if(E.posOffset!==K.posOffset){const V=T.replaceOp(["drawings",w,"docTransform","positionV"],E,K);y.push(V)}}}const P={id:k.RichTextEditingMutation.id,params:{unitId:r,actions:[],textRanges:null}};P.params.actions=y.reduce((N,w)=>i.JSONX.compose(N,w),null);const C=o.syncExecuteCommand(P.id,P.params);return p.refreshControls(),!!C}},at={id:"doc.command.update-doc-drawing-distance",type:i.CommandType.COMMAND,handler:(s,e)=>{if(e==null)return!1;const t=s.get(i.ICommandService),r=s.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(r==null)return!1;const{drawings:o,dist:a,unitId:d}=e,l=i.JSONX.getInstance(),c=[],{drawings:g={}}=r.getSnapshot();for(const m of o){const{drawingId:p}=m;for(const[v,I]of Object.entries(a)){const f=g[p][v];if(f!==I){const T=l.replaceOp(["drawings",p,v],f,I);c.push(T)}}}const h={id:k.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:null}};return h.params.actions=c.reduce((m,p)=>i.JSONX.compose(m,p),null),!!t.syncExecuteCommand(h.id,h.params)}},ct={id:"doc.command.update-doc-drawing-wrap-text",type:i.CommandType.COMMAND,handler:(s,e)=>{if(e==null)return!1;const t=s.get(i.ICommandService),r=s.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(r==null)return!1;const{drawings:o,wrapText:a,unitId:d}=e,l=i.JSONX.getInstance(),c=[],{drawings:g={}}=r.getSnapshot();for(const m of o){const{drawingId:p}=m,v=g[p].wrapText;if(v!==a){const I=l.replaceOp(["drawings",p,"wrapText"],v,a);c.push(I)}}const h={id:k.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:null}};return h.params.actions=c.reduce((m,p)=>i.JSONX.compose(m,p),null),!!t.syncExecuteCommand(h.id,h.params)}},Oe={id:"doc.command.update-drawing-doc-transform",type:i.CommandType.COMMAND,handler:(s,e)=>{if(e==null)return!1;const t=s.get(i.ICommandService),n=s.get(i.IUniverInstanceService),o=s.get(L.IRenderManagerService).getRenderById(e.unitId),a=o==null?void 0:o.scene;if(a==null)return!1;const d=a.getTransformerByCreate(),l=n.getCurrentUniverDocInstance();if(l==null)return!1;const{drawings:c,unitId:g}=e,h=i.JSONX.getInstance(),u=[],{drawings:m={}}=l.getSnapshot();for(const I of c){const{drawingId:f,key:T,value:y}=I,O=m[f].docTransform[T];if(!i.Tools.diffValue(O,y)){const P=h.replaceOp(["drawings",f,"docTransform",T],O,y);u.push(P)}}const p={id:k.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:null,debounce:!0}};p.params.actions=u.reduce((I,f)=>i.JSONX.compose(I,f),null);const v=t.syncExecuteCommand(p.id,p.params);return d.refreshControls(),!!v}},dt={id:"doc.command.move-inline-drawing",type:i.CommandType.COMMAND,handler:(s,e)=>{var H,N;if(e==null)return!1;const t=s.get(L.IRenderManagerService),n=(H=t.getRenderById(e.unitId))==null?void 0:H.with(W.DocSelectionRenderService),r=s.get(xe),o=t.getRenderById(e.unitId),a=o==null?void 0:o.scene,d=o==null?void 0:o.with(k.DocSkeletonManagerService).getSkeleton();if(a==null||n==null)return!1;const l=a.getTransformerByCreate(),c=s.get(i.ICommandService),h=s.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(h==null)return!1;const{drawing:u,unitId:m,offset:p,segmentId:v,segmentPage:I,needRefreshDrawings:f}=e;if(f)return r.refreshDrawings(d),l.refreshControls(),!0;const T=[],{drawingId:y}=u,O=(N=n.getSegment())!=null?N:"",P=st(v,O,I,p,y,h,n);if(P==null||P.length===0)return r.refreshDrawings(d),l.refreshControls(),!1;T.push(...P);const C={id:k.RichTextEditingMutation.id,params:{unitId:m,actions:[],textRanges:null}};C.params.actions=T.reduce((w,U)=>i.JSONX.compose(w,U),null);const R=c.syncExecuteCommand(C.id,C.params);return l.refreshControls(),!!R}},lt={id:"doc.command.transform-non-inline-drawing",type:i.CommandType.COMMAND,handler:(s,e)=>{var F,q;if(e==null)return!1;const t=s.get(L.IRenderManagerService),n=(F=t.getRenderById(e.unitId))==null?void 0:F.with(W.DocSelectionRenderService),r=t.getRenderById(e.unitId),o=r==null?void 0:r.scene;if(o==null||n==null)return!1;const a=o.getTransformerByCreate(),d=s.get(i.ICommandService),c=s.get(i.IUniverInstanceService).getCurrentUniverDocInstance();if(c==null)return!1;const{drawing:g,unitId:h,offset:u,docTransform:m,segmentId:p,segmentPage:v}=e,I=[],{drawingId:f}=g,T=(q=n.getSegment())!=null?q:"",y=st(p,T,v,u,f,c,n);if(y==null)return!1;y.length>0&&I.push(...y);const O=i.JSONX.getInstance(),{drawings:P={}}=c.getSnapshot(),C=P[f].docTransform,{positionH:R,positionV:H,size:N,angle:w}=C;if(!i.Tools.diffValue(R,m.positionH)){const _=O.replaceOp(["drawings",f,"docTransform","positionH"],R,m.positionH);I.push(_)}if(!i.Tools.diffValue(H,m.positionV)){const _=O.replaceOp(["drawings",f,"docTransform","positionV"],H,m.positionV);I.push(_)}if(!i.Tools.diffValue(N,m.size)){const _=O.replaceOp(["drawings",f,"docTransform","size"],N,m.size);I.push(_)}if(!i.Tools.diffValue(w,m.angle)){const _=O.replaceOp(["drawings",f,"docTransform","angle"],w,m.angle);I.push(_)}const U={id:k.RichTextEditingMutation.id,params:{unitId:h,actions:[],textRanges:null,debounce:!0}};U.params.actions=I.reduce((_,D)=>i.JSONX.compose(_,D),null);const z=d.syncExecuteCommand(U.id,U.params);return a.refreshControls(),!!z}},De={id:"doc.command.move-drawing",type:i.CommandType.COMMAND,handler:(s,e)=>{const t=s.get(i.ICommandService),n=s.get(te.IDocDrawingService),r=s.get(i.IUniverInstanceService),o=s.get(L.IRenderManagerService),{direction:a}=e,d=n.getFocusDrawings();if(d.length===0)return!1;const l=d[0].unitId,c=o.getRenderById(l),g=c==null?void 0:c.scene;if(g==null)return!1;const h=g.getTransformerByCreate(),u=r.getUniverDocInstance(l),m=d.map(v=>{var C,R,H,N,w;const{drawingId:I}=v,f=(C=u==null?void 0:u.getSnapshot().drawings)==null?void 0:C[I];if(f==null||f.layoutType===i.PositionedObjectLayoutType.INLINE)return null;const{positionH:T,positionV:y}=f.docTransform,O={...T},P={...y};return a===i.Direction.UP?P.posOffset=((R=P.posOffset)!=null?R:0)-2:a===i.Direction.DOWN?P.posOffset=((H=P.posOffset)!=null?H:0)+2:a===i.Direction.LEFT?O.posOffset=((N=O.posOffset)!=null?N:0)-2:a===i.Direction.RIGHT&&(O.posOffset=((w=O.posOffset)!=null?w:0)+2),{drawingId:I,key:a===i.Direction.UP||a===i.Direction.DOWN?"positionV":"positionH",value:a===i.Direction.UP||a===i.Direction.DOWN?P:O}}).filter(v=>v!=null);if(m.length===0)return!1;const p=t.syncExecuteCommand(Oe.id,{unitId:l,subUnitId:l,drawings:m});return h.refreshControls(),!!p}},gt={id:"doc.operation.clear-drawing-transformer",type:i.CommandType.MUTATION,handler:(s,e)=>{const t=s.get(L.IRenderManagerService);return e.forEach(n=>{var r,o;(o=(r=t.getRenderById(n))==null?void 0:r.scene.getTransformer())==null||o.debounceRefreshControls()}),!0}},ut="COMPONENT_DOC_DRAWING_PANEL",Je={id:"sidebar.operation.doc-image",type:i.CommandType.COMMAND,handler:async(s,e)=>{const t=s.get(B.ISidebarService),n=s.get(i.LocaleService),r=s.get(X.IDrawingManagerService);return e.value==="open"?t.open({header:{title:n.t("docImage.panel.title")},children:{label:ut},onClose:()=>{r.focusDrawing(null)},width:360}):t.close(),!0}},Ze={id:"doc.operation.edit-doc-image",type:i.CommandType.OPERATION,handler:(s,e)=>{const t=s.get(X.IDrawingManagerService),n=s.get(i.ICommandService);return e==null?!1:(t.focusDrawing([e]),n.executeCommand(Je.id,{value:"open"}),!0)}};var Ot=Object.getOwnPropertyDescriptor,Mt=(s,e,t,n)=>{for(var r=n>1?void 0:n?Ot(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},Te=(s,e)=>(t,n)=>e(t,n,s);function ht(s,e,t=1,n=0){const{top:r,left:o,bottom:a,right:d}=s,l=d-o,c=a-r,g=e.getViewport(W.VIEWPORT_KEY.VIEW_MAIN),{viewportScrollX:h,viewportScrollY:u}=g,{scaleX:m,scaleY:p}=e.getAncestorScale();return{startX:(o-h)*m,startY:(r-u)*p,endX:(o+l-h)*m,endY:(r+c-u)*p,width:l*m,height:c*p,rotate:n,absolute:{left:!1,top:!1},opacity:t!=null?t:1}}function Qe(s,e){const{top:t,left:n,width:r,height:o,angle:a,opacity:d}=s;return ht({top:t,left:n,bottom:t+o,right:n+r},e.scene,d,a)}b.DocFloatDomController=class extends i.Disposable{constructor(t,n,r,o,a,d){super();le(this,"_domLayerInfoMap",new Map);this._renderManagerService=t,this._drawingManagerService=n,this._drawingRenderService=r,this._canvasFloatDomService=o,this._univerInstanceService=a,this._commandService=d,this._initialize()}dispose(){super.dispose()}_initialize(){this._drawingAddRemoveListener(),this._initScrollAndZoomEvent()}_getSceneAndTransformerByDrawingSearch(t){if(t==null)return;const n=this._renderManagerService.getRenderById(t);if(n==null)return null;const r=n.scene,o=r.getTransformerByCreate();return{scene:r,transformer:o,renderUnit:n,canvas:n.engine.getCanvasElement()}}_drawingAddRemoveListener(){this.disposeWithMe(this._drawingManagerService.add$.subscribe(t=>{this._insertRects(t)})),this.disposeWithMe(this._drawingManagerService.remove$.subscribe(t=>{t.forEach(n=>{this._removeDom(n.drawingId)})}))}_insertRects(t){t.forEach(async n=>{const{unitId:r}=n;if(!this._univerInstanceService.getUnit(r,i.UniverInstanceType.UNIVER_DOC))return;const a=this._getSceneAndTransformerByDrawingSearch(r);if(a==null)return;const d=this._drawingManagerService.getDrawingByParam(n);if(d==null)return;const l=await this._drawingRenderService.renderFloatDom(d,a.scene);if(!(l==null||l.length===0))for(const c of l){this._addHoverForRect(c);const g=new i.DisposableCollection,h=Qe(c,a.renderUnit),u=new Z.BehaviorSubject(h),m=a.canvas,p=d.data,v={dispose:g,rect:c,position$:u,unitId:r};this._canvasFloatDomService.addFloatDom({position$:u,id:d.drawingId,componentKey:d.componentKey,onPointerDown:f=>{m.dispatchEvent(new PointerEvent(f.type,f))},onPointerMove:f=>{m.dispatchEvent(new PointerEvent(f.type,f))},onPointerUp:f=>{m.dispatchEvent(new PointerEvent(f.type,f))},onWheel:f=>{m.dispatchEvent(new WheelEvent(f.type,f))},data:p,unitId:r});const I=c.onTransformChange$.subscribeEvent(()=>{const f=Qe(c,a.renderUnit);u.next(f)});g.add(()=>{this._canvasFloatDomService.removeFloatDom(d.drawingId)}),I&&g.add(I),this._domLayerInfoMap.set(d.drawingId,v)}})}_addHoverForRect(t){this.disposeWithMe(i.toDisposable(t.onPointerEnter$.subscribeEvent(()=>{t.cursor=L.CURSOR_TYPE.GRAB}))),this.disposeWithMe(i.toDisposable(t.onPointerLeave$.subscribeEvent(()=>{t.cursor=L.CURSOR_TYPE.DEFAULT})))}_removeDom(t){const n=this._domLayerInfoMap.get(t);if(!n)return;const{unitId:r}=n;this._domLayerInfoMap.delete(t),n.dispose.dispose();const o=this._getSceneAndTransformerByDrawingSearch(r);o&&o.scene.removeObject(n.rect)}_initScrollAndZoomEvent(){const t=n=>{const r=this._getSceneAndTransformerByDrawingSearch(n);r&&this._domLayerInfoMap.forEach(o=>{if(o.unitId!==n)return;const a=Qe(o.rect,r.renderUnit);o.position$.next(a)})};this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).pipe(Z.map(n=>{if(!n)return null;const r=n.getUnitId(),o=this._renderManagerService.getRenderById(r);return o?{render:o,unitId:r}:null}),Z.switchMap(n=>n?i.fromEventSubject(n.render.scene.getViewport(W.VIEWPORT_KEY.VIEW_MAIN).onScrollAfter$).pipe(Z.map(()=>({unitId:n.unitId}))):Z.of(null))).subscribe(n=>{if(!n)return;const{unitId:r}=n;t(r)})),this.disposeWithMe(this._commandService.onCommandExecuted(n=>{if(n.id===W.SetDocZoomRatioOperation.id){const r=n.params,{unitId:o}=r;t(o)}}))}insertFloatDom(t,n){var I,f,T;const r=this._univerInstanceService.getCurrentUnitOfType(i.UniverInstanceType.UNIVER_DOC);if(!r)return!1;const o=this._getSceneAndTransformerByDrawingSearch(r.getUnitId());if(!o)return!1;const l=(I=o.renderUnit.with(k.DocSkeletonManagerService).getSkeleton().getSkeletonData())==null?void 0:I.pages[0];if(!l)return!1;const{pageWidth:c,marginLeft:g,marginRight:h}=l,u=c-g-h,m={size:{width:(f=n.width)!=null?f:u,height:n.height},positionH:{relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:0},angle:0},p=(T=n.drawingId)!=null?T:i.generateRandomId(),v={unitId:r.getUnitId(),drawings:[{drawingId:p,drawingType:i.DrawingTypeEnum.DRAWING_DOM,subUnitId:r.getUnitId(),unitId:r.getUnitId(),...t,title:"",description:"",docTransform:m,layoutType:i.PositionedObjectLayoutType.INLINE,transform:W.docDrawingPositionToTransform(m)}]};return this._commandService.syncExecuteCommand(Re.id,v),p}},b.DocFloatDomController=Mt([Te(0,L.IRenderManagerService),Te(1,X.IDrawingManagerService),Te(2,i.Inject(he.DrawingRenderService)),Te(3,i.Inject(B.CanvasFloatDomService)),Te(4,i.IUniverInstanceService),Te(5,i.ICommandService)],b.DocFloatDomController);const et="doc.menu.image",pt=Ye.id,bt=s=>{const e=s.get(k.DocSelectionManagerService),t=s.get(i.IUniverInstanceService);return new Z.Observable(n=>{const r=e.textSelection$.subscribe(()=>{var a;const o=e.getActiveTextRange();if(o){const{segmentId:d,startOffset:l,endOffset:c}=o,g=t.getCurrentUniverDocInstance(),h=(a=g==null?void 0:g.getSelfOrHeaderFooterModel(d).getBody())==null?void 0:a.tables;if(h&&h.length&&h.some(u=>{const{startIndex:m,endIndex:p}=u;return l>=m&&l<p||c>=m&&c<p})){n.next(!0);return}}else{n.next(!0);return}n.next(!1)});return()=>r.unsubscribe()})};function Ct(s){return{id:et,type:B.MenuItemType.SUBITEMS,icon:"AddImageIcon",tooltip:"docImage.title",disabled$:bt(s),hidden$:B.getMenuHiddenObservable(s,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function Et(s){return{id:pt,title:"docImage.upload.float",type:B.MenuItemType.BUTTON,hidden$:B.getMenuHiddenObservable(s,i.UniverInstanceType.UNIVER_DOC,void 0,i.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}const mt={name:"@univerjs/docs-drawing-ui",version:"0.17.0"},Pt="docs-drawing-ui.config",ft={};var At=Object.getOwnPropertyDescriptor,Nt=(s,e,t,n)=>{for(var r=n>1?void 0:n?At(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},Me=(s,e)=>(t,n)=>e(t,n,s);function Rt(s){var n,r,o,a;if(i.JSONX.isNoop(s)||!Array.isArray(s))return null;const e=s.find(d=>Array.isArray(d)&&(d==null?void 0:d[0])==="drawings");if(e==null||!Array.isArray(e)||e.length<3||typeof e[1]=="string"&&typeof e[2]!="object"||Array.isArray(e[1])&&typeof e[1][1]!="object")return null;const t=[];if(Array.isArray(e==null?void 0:e[1]))for(const d of e)Array.isArray(d)&&t.push({type:(n=d==null?void 0:d[1])!=null&&n.i?"add":"remove",drawingId:d==null?void 0:d[0],drawing:(r=d==null?void 0:d[1])==null?void 0:r.i});else t.push({type:(o=e[2])!=null&&o.i?"add":"remove",drawingId:e[1],drawing:(a=e[2])==null?void 0:a.i});return t}function xt(s){if(!Array.isArray(s)||s.length<3||s[0]!=="drawingsOrder")return[];const e=[];for(let t=1;t<s.length;t++){const n=s[t];if(Array.isArray(n)&&typeof n[0]=="number"&&typeof n[1]=="object")e.push(n[0]);else{e.length=0;break}}return e}let Le=class extends i.Disposable{constructor(s,e,t,n,r){super(),this._univerInstanceService=s,this._commandService=e,this._drawingManagerService=t,this._docDrawingService=n,this._renderManagerService=r,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(s=>{if(s.id!==k.RichTextEditingMutation.id)return;const e=s.params,{unitId:t,actions:n}=e,r=Rt(n);if(r!=null)for(const{type:o,drawingId:a,drawing:d}of r)o==="add"?this._addDrawings(t,[d]):this._removeDrawings(t,[a])})),this.disposeWithMe(this._commandService.onCommandExecuted(s=>{if(s.id!==k.RichTextEditingMutation.id)return;const e=s.params,{unitId:t,actions:n}=e;xt(n).length>0&&this._updateDrawingsOrder(t)})),this.disposeWithMe(this._commandService.onCommandExecuted(s=>{var a;if(s.id!==i.UndoCommand.id&&s.id!==i.RedoCommand.id)return;const e=(a=this._univerInstanceService.getCurrentUniverDocInstance())==null?void 0:a.getUnitId(),t=this._drawingManagerService.getFocusDrawings();if(e==null||t.length===0)return;const n=this._renderManagerService.getRenderById(e),r=n==null?void 0:n.scene;if(r==null)return!1;r.getTransformerByCreate().refreshControls()}))}_addDrawings(s,e){const t=this._drawingManagerService,n=this._docDrawingService,r=this._docDrawingService.getBatchAddOp(e),{subUnitId:o,redo:a,objects:d}=r;t.applyJson1(s,o,a),n.applyJson1(s,o,a),t.addNotification(d),n.addNotification(d)}_removeDrawings(s,e){const t=this._drawingManagerService,n=this._docDrawingService,r=this._docDrawingService.getBatchRemoveOp(e.map(l=>({unitId:s,subUnitId:s,drawingId:l}))),{subUnitId:o,redo:a,objects:d}=r;t.applyJson1(s,o,a),n.applyJson1(s,o,a),t.removeNotification(d),n.removeNotification(d)}_updateDrawingsOrder(s){const e=this._univerInstanceService.getUniverDocInstance(s);if(e==null)return;const t=e.getSnapshot().drawingsOrder;if(t==null)return;const n=this._drawingManagerService,r=this._docDrawingService;n.setDrawingOrder(s,s,t),r.setDrawingOrder(s,s,t);const o={unitId:s,subUnitId:s,drawingIds:t};n.orderNotification(o),r.orderNotification(o)}};Le=Nt([Me(0,i.IUniverInstanceService),Me(1,i.ICommandService),Me(2,X.IDrawingManagerService),Me(3,te.IDocDrawingService),Me(4,L.IRenderManagerService)],Le);const Ft=s=>{const{floatDomInfos:e,scene:t,offset:n,bound:r}=s,o=r.right-r.left,a=r.bottom-r.top,d=Y.useMemo(()=>e.map(l=>{const{width:c=0,height:g=0,left:h=0,top:u=0}=l.transform,p=ht({left:h,right:h+c,top:u,bottom:u+g},t),v={position$:new Z.BehaviorSubject(p),position:p,id:l.drawingId,componentKey:l.componentKey,onPointerMove:()=>{},onPointerDown:()=>{},onPointerUp:()=>{},onWheel:()=>{},unitId:l.unitId,data:l.data};return[l.drawingId,v]}).filter(([l,c])=>!(c.position.endX<0||c.position.endY<0||c.position.startX>o||c.position.startY>a)),[e,t,n,o,a]);return S.jsx("div",{className:"univer-absolute univer-left-0 univer-top-0",children:d.map(([l,c])=>S.jsx(B.PrintFloatDomSingle,{layer:c,id:l,position:c.position},l))})};var Lt=Object.getOwnPropertyDescriptor,Ut=(s,e,t,n)=>{for(var r=n>1?void 0:n?Lt(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},be=(s,e)=>(t,n)=>e(t,n,s);let Ue=class extends i.Disposable{constructor(s,e,t,n,r){super(),this._docPrintInterceptorService=s,this._drawingRenderService=e,this._drawingManagerService=t,this._componetManager=n,this._injector=r,this._initPrinting(),this._initPrintingDom()}_initPrinting(){this.disposeWithMe(this._docPrintInterceptorService.interceptor.intercept(this._docPrintInterceptorService.interceptor.getInterceptPoints().PRINTING_COMPONENT_COLLECT,{handler:(s,e,t)=>{const{unitId:n,scene:r}=e,o=this._drawingManagerService.getDrawingDataForUnit(n),a=o==null?void 0:o[n];return a&&a.order.forEach(d=>{const l=a.data[d];l.drawingType!==i.DrawingTypeEnum.DRAWING_CHART&&l.drawingType!==i.DrawingTypeEnum.DRAWING_DOM&&this._drawingRenderService.renderDrawing(l,r)}),t()}}))}_initPrintingDom(){this.disposeWithMe(this._docPrintInterceptorService.interceptor.intercept(this._docPrintInterceptorService.interceptor.getInterceptPoints().PRINTING_DOM_COLLECT,{handler:(s,e,t)=>{const{unitId:n}=e,r=this._drawingManagerService.getDrawingDataForUnit(n),o=r==null?void 0:r[n];if(o){const a=o.order.map(l=>{const c=o.data[l];if(c.drawingType===i.DrawingTypeEnum.DRAWING_CHART)return{...c,componentKey:this._componetManager.get(i.DOC_DRAWING_PRINTING_COMPONENT_KEY)};if(c.drawingType===i.DrawingTypeEnum.DRAWING_DOM){const g=this._docPrintInterceptorService.getPrintComponent(c.componentKey);return{...c,componentKey:this._componetManager.get(g||c.componentKey)}}return null}).filter(Boolean),d=B.connectInjector(Ft,this._injector);return $.render(S.jsx(d,{unitId:n,floatDomInfos:a,scene:e.scene,skeleton:e.skeleton,offset:e.offset,bound:e.bound}),e.root),s==null||s.add(()=>{$.unmount(e.root)}),t(s)}}}))}};Ue=Ut([be(0,i.Inject(W.DocPrintInterceptorService)),be(1,i.Inject(he.DrawingRenderService)),be(2,X.IDrawingManagerService),be(3,i.Inject(B.ComponentManager)),be(4,i.Inject(i.Injector))],Ue);var Bt=Object.getOwnPropertyDescriptor,jt=(s,e,t,n)=>{for(var r=n>1?void 0:n?Bt(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},Be=(s,e)=>(t,n)=>e(t,n,s);const kt="__InlineDrawingAnchor__";function vt(s){const{path:e}=s;return e.some(t=>t==="cells")}let je=class extends i.Disposable{constructor(e,t,n,r){super();le(this,"_liquid",new L.Liquid);le(this,"_listenerOnImageMap",new Set);le(this,"_transformerCache",new Map);le(this,"_anchorShape");this._commandService=e,this._univerInstanceService=t,this._drawingManagerService=n,this._renderManagerService=r,this._init()}_init(){this._listenDrawingFocus()}_listenDrawingFocus(){this.disposeWithMe(this._drawingManagerService.add$.subscribe(e=>{if(e.length!==0)for(const t of e){const{unitId:n}=t;this._listenerOnImageMap.has(n)||(this._listenTransformerChange(n),this._listenerOnImageMap.add(n))}}))}_listenTransformerChange(e){var r;const t=(r=this._getSceneAndTransformerByDrawingSearch(e))==null?void 0:r.transformer;if(t==null)return;this.disposeWithMe(i.toDisposable(t.changeStart$.subscribe(o=>{var d;this._transformerCache.clear();const{objects:a}=o;for(const l of a.values()){const{oKey:c,width:g,height:h,left:u,top:m,angle:p}=l,v=this._drawingManagerService.getDrawingOKey(c);if(v==null)continue;const I=this._univerInstanceService.getUniverDocInstance(v.unitId),f=(d=I==null?void 0:I.getSnapshot().drawings)==null?void 0:d[v.drawingId];if((f==null?void 0:f.layoutType)===i.PositionedObjectLayoutType.INLINE)try{l.setOpacity(.2)}catch{}f!=null&&this._transformerCache.set(v.drawingId,{drawing:f,top:m,left:u,width:g,height:h,angle:p})}})));const n=i.throttle(this._updateMultipleDrawingDocTransform.bind(this),50);i.throttle(this._nonInlineDrawingTransform.bind(this),50),this.disposeWithMe(i.toDisposable(t.changing$.subscribe(o=>{const{objects:a,offsetX:d,offsetY:l}=o;if(a.size>1)n(a);else if(a.size===1){const c=this._transformerCache.values().next().value,g=a.values().next().value,{width:h,height:u,top:m,left:p,angle:v}=g;if(c&&h===c.width&&u===c.height&&m===c.top&&p===c.left&&v===c.angle)return;c&&(c.drawing.layoutType,i.PositionedObjectLayoutType.INLINE),c&&c.drawing.layoutType===i.PositionedObjectLayoutType.INLINE&&d!=null&&l!=null&&this._updateInlineDrawingAnchor(c.drawing,d,l)}}))),this.disposeWithMe(i.toDisposable(t.changeEnd$.subscribe(o=>{const{objects:a,offsetX:d,offsetY:l}=o;for(const c of a.values()){const g=this._drawingManagerService.getDrawingOKey(c.oKey);if(g==null)continue;const h=this._transformerCache.get(g==null?void 0:g.drawingId);if((h==null?void 0:h.drawing.layoutType)===i.PositionedObjectLayoutType.INLINE)try{c.setOpacity(1)}catch{}}if(this._anchorShape&&this._anchorShape.hide(),a.size>1)this._updateMultipleDrawingDocTransform(a);else if(a.size===1){const c=this._transformerCache.values().next().value,g=a.values().next().value,{width:h,height:u,top:m,left:p,angle:v}=g;if(c&&h===c.width&&u===c.height&&m===c.top&&p===c.left&&v===c.angle)return;c&&c.drawing.layoutType===i.PositionedObjectLayoutType.INLINE?h!==c.width||u!==c.height||v!==c.angle?this._updateDrawingSize(c,g):d!=null&&l!=null&&this._moveInlineDrawing(c.drawing,d,l):c&&this._nonInlineDrawingTransform(c.drawing,g)}this._transformerCache.clear()})))}_updateMultipleDrawingDocTransform(e){if(e.size<1)return;const t=[];let n,r;for(const o of e.values()){const{oKey:a,left:d,top:l,angle:c}=o;let{width:g,height:h}=o;const u=this._drawingManagerService.getDrawingOKey(a);if(u==null)continue;n==null&&(n=u.unitId),r==null&&(r=u.subUnitId);const m=this._transformerCache.get(u.drawingId);if(m==null)continue;const{drawing:p,top:v,left:I,width:f,height:T,angle:y}=m,{width:O,height:P}=this._getPageContentSize(p);if(g=Math.min(g,O),h=Math.min(h,P),(f!==g||T!==h)&&t.push({drawingId:u.drawingId,key:"size",value:{width:g,height:h}}),y!==c&&t.push({drawingId:u.drawingId,key:"angle",value:c}),v!==l||I!==d){const C=l-v,R=d-I;C!==0&&t.push({drawingId:u.drawingId,key:"positionV",value:{relativeFrom:p.docTransform.positionV.relativeFrom,posOffset:p.docTransform.positionV.posOffset+C}}),R!==0&&t.push({drawingId:u.drawingId,key:"positionH",value:{relativeFrom:p.docTransform.positionH.relativeFrom,posOffset:p.docTransform.positionH.posOffset+R}})}}t.length>0&&n&&r&&this._commandService.executeCommand(Oe.id,{unitId:n,subUnitId:r,drawings:t})}_updateDrawingAnchor(e){if(this._transformerCache.size!==1)return;const t=this._transformerCache.values().next().value,n=e.values().next().value;this._getDrawingAnchor(t.drawing,n)}_updateInlineDrawingAnchor(e,t,n){var o;if(this._transformerCache.size!==1)return;const{contentBoxPointGroup:r}=(o=this._getInlineDrawingAnchor(e,t,n))!=null?o:{};r!=null&&this._createOrUpdateInlineAnchor(e.unitId,r)}_getInlineDrawingAnchor(e,t,n){var F,q;const r=this._renderManagerService.getRenderById(e.unitId),o=r==null?void 0:r.with(k.DocSkeletonManagerService).getSkeleton();if(r==null)return;const{mainComponent:a,scene:d}=r,l=a,c=d.getViewports()[0],{pageLayoutType:g=L.PageLayoutType.VERTICAL,pageMarginLeft:h,pageMarginTop:u}=l.getOffsetConfig();let m=null,p=!1,v=-1,I="";const f=.5,T=this._getTransformCoordForDocumentOffset(l,c,t,n);if(T==null)return;const y=(F=this._renderManagerService.getRenderById(e.unitId))==null?void 0:F.with(W.DocSelectionRenderService);if(y==null)return;const O=o==null?void 0:o.findNodeByCoord(T,g,h,u,{strict:!1,segmentId:y.getSegment(),segmentPage:y.getSegmentPage()});if(O){const{node:_,ratioX:D,segmentPage:A,segmentId:M}=O;p=D<f,m=_,v=A,I=M}if(m==null)return;const P=o==null?void 0:o.findPositionByGlyph(m,v),C=this._getDocObject();if(P==null||o==null||C==null||vt(P))return;const R={...P,isBack:p},H=C.document.getOffsetConfig(),N=new W.NodePositionConvertToCursor(H,o),{cursorList:w,contentBoxPointGroup:U}=N.getRangePointData(R,R),{startOffset:z}=(q=W.getOneTextSelectionRange(w))!=null?q:{};if(z!=null)return{offset:z,contentBoxPointGroup:U,segmentId:I,segmentPage:v}}_getDrawingAnchor(e,t){var ge,ue,oe,pe,me,we,Se,fe,ae,ce,_e;const n=this._renderManagerService.getRenderById(e.unitId),r=n==null?void 0:n.with(k.DocSkeletonManagerService).getSkeleton(),o=r==null?void 0:r.getSkeletonData();if(o==null||n==null)return;const{pages:a,skeHeaders:d,skeFooters:l}=o,{mainComponent:c,scene:g}=n,h=c,u=g.getViewports()[0],{pageLayoutType:m=L.PageLayoutType.VERTICAL,pageMarginLeft:p,pageMarginTop:v,docsLeft:I,docsTop:f}=h.getOffsetConfig(),{left:T,top:y,angle:O}=t;let{width:P,height:C}=t;const{positionV:R,positionH:H}=e.docTransform,{width:N,height:w}=this._getPageContentSize(e);P=Math.min(P,N),C=Math.min(C,w);let U=null,z="",F=-1;const q=!1,_={...e.docTransform,size:{width:P,height:C},angle:O},{x:D,y:A}=g.getViewportScrollXY(u),M=this._getTransformCoordForDocumentOffset(h,u,T-D,y-A);if(M==null)return;const j=(ge=this._renderManagerService.getRenderById(e.unitId))==null?void 0:ge.with(W.DocSelectionRenderService);if(j==null)return;const G=r==null?void 0:r.findNodeByCoord(M,m,p,v,{strict:!1,segmentId:j.getSegment(),segmentPage:j.getSegmentPage()});if(G){const{node:de,segmentPage:it,segmentId:rt}=G;U=de,F=it,z=rt}if(U==null)return;const E=(ue=U.parent)==null?void 0:ue.parent,x=E==null?void 0:E.parent,K=(oe=x==null?void 0:x.lines.find(de=>de.paragraphIndex===(E==null?void 0:E.paragraphIndex)&&de.paragraphStart))!=null?oe:x==null?void 0:x.lines[0],V=(pe=x==null?void 0:x.parent)==null?void 0:pe.parent;if(E==null||x==null||K==null||V==null)return;this._liquid.reset();const J=V.type;for(const de of a){const{headerId:it,footerId:rt,pageHeight:an,pageWidth:St,marginLeft:_t,marginBottom:cn}=de,dn=a.indexOf(de);if(F>-1&&dn===F){switch(J){case L.DocumentSkeletonPageType.HEADER:{const Ae=(me=d.get(it))==null?void 0:me.get(St);if(Ae)this._liquid.translatePagePadding({marginTop:Ae.marginTop,marginLeft:_t});else throw new Error("header skeleton not found");break}case L.DocumentSkeletonPageType.FOOTER:{const Ae=(we=l.get(rt))==null?void 0:we.get(St);if(Ae)this._liquid.translatePagePadding({marginTop:an-cn+Ae.marginTop,marginLeft:_t});else throw new Error("footer skeleton not found");break}}break}if(this._liquid.translatePagePadding(de),de===V)break;this._liquid.restorePagePadding(de),this._liquid.translatePage(de,m,p,v)}switch(R.relativeFrom===i.ObjectRelativeFromV.LINE?U=E.divides[0].glyphGroup[0]:U=(ce=(ae=(fe=(Se=K.divides)==null?void 0:Se[0])==null?void 0:fe.glyphGroup)==null?void 0:ae[0])!=null?ce:U,_.positionH={relativeFrom:H.relativeFrom,posOffset:T-this._liquid.x-I},H.relativeFrom){case i.ObjectRelativeFromH.MARGIN:{_.positionH.posOffset=T-this._liquid.x-I-V.marginLeft;break}case i.ObjectRelativeFromH.COLUMN:{_.positionH.posOffset=T-this._liquid.x-I-x.left;break}}switch(_.positionV={relativeFrom:R.relativeFrom,posOffset:y-this._liquid.y-f},R.relativeFrom){case i.ObjectRelativeFromV.PAGE:{_.positionV.posOffset=y-this._liquid.y-f-V.marginTop;break}case i.ObjectRelativeFromV.LINE:{_.positionV.posOffset=y-this._liquid.y-f-E.top;break}case i.ObjectRelativeFromV.PARAGRAPH:{_.positionV.posOffset=y-this._liquid.y-f-K.top;break}}if(U==null)return;const re=r==null?void 0:r.findPositionByGlyph(U,F),ye=this._getDocObject();if(re==null||r==null||ye==null||vt(re))return;const Ie={...re,isBack:q},Pe=ye.document.getOffsetConfig(),se=new W.NodePositionConvertToCursor(Pe,r),{cursorList:Q}=se.getRangePointData(Ie,Ie),{startOffset:ee}=(_e=W.getOneTextSelectionRange(Q))!=null?_e:{};if(ee!=null)return{offset:ee,docTransform:_,segmentId:z,segmentPage:F}}_updateDrawingSize(e,t){const n=[],{drawing:r,width:o,height:a,angle:d}=e,{unitId:l,subUnitId:c}=r;let{width:g,height:h,angle:u}=t;const{width:m,height:p}=this._getPageContentSize(r);g=Math.min(m,g),h=Math.min(p,h),(g!==o||h!==a)&&n.push({drawingId:r.drawingId,key:"size",value:{width:g,height:h}}),u!==d&&n.push({drawingId:r.drawingId,key:"angle",value:u}),n.length>0&&l&&c&&this._commandService.executeCommand(Oe.id,{unitId:l,subUnitId:c,drawings:n})}_moveInlineDrawing(e,t,n){const r=this._getInlineDrawingAnchor(e,t,n),{offset:o,segmentId:a,segmentPage:d}=r!=null?r:{};return this._commandService.executeCommand(dt.id,{unitId:e.unitId,subUnitId:e.unitId,drawing:e,offset:o,segmentId:a,segmentPage:d,needRefreshDrawings:o==null})}_limitDrawingInPage(e,t){const n=this._renderManagerService.getRenderById(e.unitId),{left:r,top:o,width:a,height:d,angle:l}=t,c=n==null?void 0:n.with(k.DocSkeletonManagerService).getSkeleton(),g=c==null?void 0:c.getSkeletonData(),{pages:h}=g!=null?g:{};if(g==null||n==null||h==null)return{left:r,top:o,width:a,height:d,angle:l};const{mainComponent:u}=n,m=u,{top:p,pageLayoutType:v,pageMarginLeft:I,pageMarginTop:f}=m;let T=o;this._liquid.reset();for(const y of h){const{marginBottom:O,pageHeight:P}=y,C=h.indexOf(y),R=h[C+1];if(R==null)continue;if(i.Tools.hasIntersectionBetweenTwoRanges(o,o+d,this._liquid.y+p+P-O,this._liquid.y+p+P+f+R.marginTop)){const N=o+d/2,w=this._liquid.y+p+P+f/2;N<w?T=Math.min(o,this._liquid.y+p+P-O-d):T=Math.max(o,this._liquid.y+p+P+f+R.marginTop)}this._liquid.translatePage(y,v,I,f)}return{left:r,top:T,width:a,height:d,angle:l}}_nonInlineDrawingTransform(e,t,n=!1){const r=e.isMultiTransform===i.BooleanNumber.TRUE?t:this._limitDrawingInPage(e,t);if(n&&r.top!==t.top)return;const o=this._getDrawingAnchor(e,r),{offset:a,docTransform:d,segmentId:l,segmentPage:c}=o!=null?o:{};return a==null||d==null?this._updateMultipleDrawingDocTransform(new Map([[e.drawingId,t]])):this._commandService.executeCommand(lt.id,{unitId:e.unitId,subUnitId:e.unitId,drawing:e,offset:a,docTransform:d,segmentId:l,segmentPage:c})}_getSceneAndTransformerByDrawingSearch(e){if(e==null)return;const t=this._renderManagerService.getRenderById(e),n=t==null?void 0:t.scene;if(n==null)return;const r=n.getTransformerByCreate();return{scene:n,transformer:r}}_getTransformCoordForDocumentOffset(e,t,n,r){const{documentTransform:o}=e.getOffsetConfig(),a=t.transformVector2SceneCoord(L.Vector2.FromArray([n,r]));if(a)return o.clone().invert().applyPoint(a)}_createOrUpdateInlineAnchor(e,t){const n=this._renderManagerService.getRenderById(e);if(n==null)return;const{mainComponent:r,scene:o}=n,a=r,{docsLeft:d,docsTop:l}=a.getOffsetConfig(),c=W.getAnchorBounding(t),{left:g,top:h,height:u}=c,m=g+d,p=h+l;if(this._anchorShape){this._anchorShape.transformByState({left:m,top:p,height:u}),this._anchorShape.show();return}const v=6,I=new L.Rect(kt+i.generateRandomId(v),{left:m,top:p,height:u,strokeWidth:2,stroke:L.getColor(i.COLORS.darkgray,1),evented:!1});this._anchorShape=I,o.addObject(I,W.TEXT_RANGE_LAYER_INDEX)}_getDocObject(){return W.getDocObject(this._univerInstanceService,this._renderManagerService)}_getPageContentSize(e){const t=this._renderManagerService.getRenderById(e.unitId),n=t==null?void 0:t.with(k.DocSkeletonManagerService).getSkeleton(),r=500,o=500,a=n==null?void 0:n.getSkeletonData();if(a==null||t==null)return{width:r,height:o};const{pages:d}=a;let l=null;for(const c of d){const{skeDrawings:g}=c;if(g.has(e.drawingId)){l=c;break}}if(l){const{pageWidth:c,pageHeight:g,marginLeft:h,marginBottom:u,marginRight:m,marginTop:p}=l;return{width:Math.max(r,c-h-m),height:Math.max(o,g-p-u)}}else return{width:r,height:o}}};je=jt([Be(0,i.ICommandService),Be(1,i.IUniverInstanceService),Be(2,X.IDrawingManagerService),Be(3,L.IRenderManagerService)],je);const Wt={[B.RibbonInsertGroup.MEDIA]:{[et]:{order:0,menuItemFactory:Ct,[pt]:{order:0,menuItemFactory:Et}}}},It=-1e3,wt=1e3,Ht=s=>{const e=B.useDependency(i.ICommandService),t=B.useDependency(i.LocaleService),n=B.useDependency(X.IDrawingManagerService),r=B.useDependency(L.IRenderManagerService),o=B.useDependency(i.IUniverInstanceService),{drawings:a}=s,d=a[0];if(d==null)return;const{unitId:l}=d,c=o.getUniverDocInstance(l),g=c==null?void 0:c.getSnapshot().documentStyle.documentFlavor,h=r.getRenderById(l),u=h==null?void 0:h.scene;if(u==null)return;const m=u.getTransformerByCreate(),p=[{label:t.t("image-position.column"),value:String(i.ObjectRelativeFromH.COLUMN)},{label:t.t("image-position.page"),value:String(i.ObjectRelativeFromH.PAGE)},{label:t.t("image-position.margin"),value:String(i.ObjectRelativeFromH.MARGIN)}],v=[{label:t.t("image-position.line"),value:String(i.ObjectRelativeFromV.LINE),disabled:g===i.DocumentFlavor.MODERN},{label:t.t("image-position.page"),value:String(i.ObjectRelativeFromV.PAGE),disabled:g===i.DocumentFlavor.MODERN},{label:t.t("image-position.margin"),value:String(i.ObjectRelativeFromV.MARGIN),disabled:g===i.DocumentFlavor.MODERN},{label:t.t("image-position.paragraph"),value:String(i.ObjectRelativeFromV.PARAGRAPH)}],[I,f]=Y.useState(!0),[T,y]=Y.useState({relativeFrom:i.ObjectRelativeFromH.PAGE,posOffset:0}),[O,P]=Y.useState({relativeFrom:i.ObjectRelativeFromV.PAGE,posOffset:0}),[C,R]=Y.useState(!0),[H,N]=Y.useState(!0);function w(D,A){var E;D==="positionH"?y(A):P(A);const M=n.getFocusDrawings();if(M.length===0)return;const j=M.map(x=>({unitId:x.unitId,subUnitId:x.subUnitId,drawingId:x.drawingId}));e.executeCommand(Oe.id,{unitId:M[0].unitId,subUnitId:M[0].unitId,drawings:j.map(x=>({drawingId:x.drawingId,key:D,value:A}))});const G=(E=r.getRenderById(l))==null?void 0:E.with(W.DocSelectionRenderService);G&&G.blur(),m.refreshControls()}function U(D){var ee,ge,ue;const A=T.relativeFrom,M=T.posOffset,j=Number(D);if(A===j)return;const G=n.getFocusDrawings();if(G.length===0)return;const E=G[0].drawingId,x=G[0].unitId;let K=null,V=0;const J=(ee=r.getRenderById(x))==null?void 0:ee.with(k.DocSkeletonManagerService).getSkeleton(),re=J==null?void 0:J.getSkeletonData();if(re==null)return;const{pages:ye,skeHeaders:Ie,skeFooters:Pe}=re;for(const oe of ye){const{marginLeft:pe,skeDrawings:me,headerId:we,footerId:Se,pageWidth:fe}=oe;if(me.has(E)){K=me.get(E),V=pe;break}const ae=(ge=Ie.get(we))==null?void 0:ge.get(fe);if(ae!=null&&ae.skeDrawings.has(E)){K=ae==null?void 0:ae.skeDrawings.get(E),V=pe;break}const ce=(ue=Pe.get(Se))==null?void 0:ue.get(fe);if(ce!=null&&ce.skeDrawings.has(E)){K=ce==null?void 0:ce.skeDrawings.get(E),V=pe;break}}if(K==null)return;let se=0;A===i.ObjectRelativeFromH.COLUMN?se-=K.columnLeft:A===i.ObjectRelativeFromH.MARGIN&&(se-=V),j===i.ObjectRelativeFromH.COLUMN?se+=K.columnLeft:j===i.ObjectRelativeFromH.MARGIN?se+=V:i.ObjectRelativeFromH.PAGE;const Q={relativeFrom:j,posOffset:(M!=null?M:0)-se};w("positionH",Q)}function z(D){var me,we,Se,fe,ae,ce;const A=O.relativeFrom,M=O.posOffset,j=Number(D);if(A===j)return;const G=n.getFocusDrawings();if(G.length===0)return;const{drawingId:E,unitId:x}=G[0],K=o.getUniverDocInstance(x),V=(me=r.getRenderById(x))==null?void 0:me.with(k.DocSkeletonManagerService).getSkeleton(),J=(we=r.getRenderById(x))==null?void 0:we.with(W.DocSelectionRenderService),re=J==null?void 0:J.getSegment(),ye=J==null?void 0:J.getSegmentPage(),Ie=(fe=(Se=K==null?void 0:K.getSelfOrHeaderFooterModel(re).getBody())==null?void 0:Se.customBlocks)==null?void 0:fe.find(_e=>_e.blockId===E);if(Ie==null||V==null||J==null)return;const{startIndex:Pe}=Ie,se=V.findNodeByCharIndex(Pe,re,ye),Q=(ae=se==null?void 0:se.parent)==null?void 0:ae.parent,ee=Q==null?void 0:Q.parent,ge=ee==null?void 0:ee.lines.find(_e=>_e.paragraphIndex===(Q==null?void 0:Q.paragraphIndex)&&_e.paragraphStart),ue=(ce=ee==null?void 0:ee.parent)==null?void 0:ce.parent;if(se==null||Q==null||ge==null||ee==null||ue==null)return;let oe=0;A===i.ObjectRelativeFromV.PARAGRAPH?oe-=ge.top:A===i.ObjectRelativeFromV.LINE?oe-=Q.top:A===i.ObjectRelativeFromV.PAGE&&(oe+=ue.marginTop),j===i.ObjectRelativeFromV.PARAGRAPH?oe+=ge.top:j===i.ObjectRelativeFromV.LINE?oe+=Q.top:j===i.ObjectRelativeFromV.PAGE&&(oe-=ue.marginTop);const pe={relativeFrom:j,posOffset:(M!=null?M:0)-oe};w("positionV",pe)}function F(D){var x;const A=c==null?void 0:c.getSnapshot(),M=(x=A==null?void 0:A.drawings)==null?void 0:x[D.drawingId];if(M==null)return;const{layoutType:j}=M,{positionH:G,positionV:E}=M.docTransform;y(G),P(E),f(j===i.PositionedObjectLayoutType.INLINE),R(E.relativeFrom===i.ObjectRelativeFromV.PARAGRAPH||E.relativeFrom===i.ObjectRelativeFromV.LINE)}function q(){const D=n.getFocusDrawings();D.length!==0&&F(D[0])}function _(D){R(D),z(String(D?i.ObjectRelativeFromV.PARAGRAPH:i.ObjectRelativeFromV.PAGE))}return Y.useEffect(()=>{q();const D=n.focus$.subscribe(M=>{if(M.length===0){N(!1);return}N(!0),F(M[0])}),A=e.onCommandExecuted(async M=>{M.id===k.RichTextEditingMutation.id&&q()});return()=>{D.unsubscribe(),A.dispose()}},[]),S.jsxs("div",{className:$.clsx("univer-grid univer-gap-2 univer-py-2 univer-text-gray-400",{"univer-hidden":!H}),children:[S.jsx("header",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-position.title")})}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-position.horizontal")})}),S.jsxs("div",{className:"univer-grid univer-grid-cols-2 univer-gap-2 [&>div]:univer-grid [&>div]:univer-gap-2",children:[S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-position.absolutePosition")}),S.jsx($.InputNumber,{min:It,max:wt,precision:1,disabled:I,value:T.posOffset,onChange:D=>{w("positionH",{relativeFrom:T.relativeFrom,posOffset:D})}})]}),S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-position.toTheRightOf")}),S.jsx($.Select,{value:String(T.relativeFrom),disabled:I,options:p,onChange:U})]})]}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-position.vertical")})}),S.jsxs("div",{className:"univer-grid univer-grid-cols-2 univer-gap-2 [&>div]:univer-grid [&>div]:univer-gap-2",children:[S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-position.absolutePosition")}),S.jsx($.InputNumber,{min:It,max:wt,precision:1,disabled:I,value:O.posOffset,onChange:D=>{w("positionV",{relativeFrom:O.relativeFrom,posOffset:D})}})]}),S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-position.bellow")}),S.jsx($.Select,{disabled:I,value:String(O.relativeFrom),options:v,onChange:z})]})]}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-position.options")})}),S.jsx("div",{children:S.jsx($.Checkbox,{disabled:I,checked:C,onChange:_,children:t.t("image-position.moveObjectWithText")})})]})},ke=0,We=100,Gt=s=>{const e=B.useDependency(i.ICommandService),t=B.useDependency(i.LocaleService),n=B.useDependency(X.IDrawingManagerService),r=B.useDependency(L.IRenderManagerService),o=B.useDependency(i.IUniverInstanceService),{drawings:a}=s,d=a[0];if(d==null)return null;const{unitId:l}=d,c=o.getUniverDocInstance(l),g=r.getRenderById(l);if((g==null?void 0:g.scene)==null)return null;const[u,m]=Y.useState(!0),[p,v]=Y.useState(!0),[I,f]=Y.useState(!0),[T,y]=Y.useState(ie.INLINE),[O,P]=Y.useState(""),[C,R]=Y.useState({distT:0,distL:0,distB:0,distR:0}),[H,N]=Y.useState(!0);function w(_){y(_);const D=n.getFocusDrawings();if(D.length===0)return;const{unitId:A,subUnitId:M}=D[0],j=D.map(({unitId:G,subUnitId:E,drawingId:x})=>({unitId:G,subUnitId:E,drawingId:x}));e.executeCommand(ot.id,{unitId:A,subUnitId:M,drawings:j,wrappingStyle:_})}function U(_){P(_);const D=n.getFocusDrawings();if(D.length===0)return;const A=D.map(M=>({unitId:M.unitId,subUnitId:M.subUnitId,drawingId:M.drawingId}));e.executeCommand(ct.id,{unitId:D[0].unitId,subUnitId:D[0].unitId,drawings:A,wrapText:_})}function z(_,D){if(_==null)return;const A={...C,[D]:_};R(A);const M=n.getFocusDrawings();if(M.length===0)return;const j=M.map(G=>({unitId:G.unitId,subUnitId:G.subUnitId,drawingId:G.drawingId}));e.executeCommand(at.id,{unitId:M[0].unitId,subUnitId:M[0].unitId,drawings:j,dist:{[D]:_}})}function F(){const _=n.getFocusDrawings();_.length!==0&&q(_[0])}function q(_){var J,re;const D=(re=(J=c==null?void 0:c.getSnapshot())==null?void 0:J.drawings)==null?void 0:re[_.drawingId];if(D==null)return;const{distT:A=0,distL:M=0,distB:j=0,distR:G=0,layoutType:E=i.PositionedObjectLayoutType.INLINE,behindDoc:x=i.BooleanNumber.FALSE,wrapText:K=i.WrapTextType.BOTH_SIDES}=D;if(R({distT:A,distL:M,distB:j,distR:G}),P(K),m(E!==i.PositionedObjectLayoutType.WRAP_SQUARE),E===i.PositionedObjectLayoutType.WRAP_NONE||E===i.PositionedObjectLayoutType.INLINE?v(!0):v(!1),E===i.PositionedObjectLayoutType.WRAP_NONE||E===i.PositionedObjectLayoutType.INLINE||E===i.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM?f(!0):f(!1),E===i.PositionedObjectLayoutType.WRAP_NONE)x===i.BooleanNumber.TRUE?y(ie.BEHIND_TEXT):y(ie.IN_FRONT_OF_TEXT);else switch(E){case i.PositionedObjectLayoutType.INLINE:y(ie.INLINE);break;case i.PositionedObjectLayoutType.WRAP_SQUARE:y(ie.WRAP_SQUARE);break;case i.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM:y(ie.WRAP_TOP_AND_BOTTOM);break;default:throw new Error(`Unsupported layout type: ${E}`)}}return Y.useEffect(()=>{F();const _=n.focus$.subscribe(A=>{if(A.length===0){N(!1);return}N(!0),q(A[0])}),D=e.onCommandExecuted(async A=>{A.id===k.RichTextEditingMutation.id&&F()});return()=>{_.unsubscribe(),D.dispose()}},[]),S.jsxs("div",{className:$.clsx("univer-grid univer-gap-2 univer-py-2 univer-text-gray-400",{"univer-hidden":!H}),children:[S.jsx("header",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-text-wrap.title")})}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-text-wrap.wrappingStyle")})}),S.jsx("div",{children:S.jsxs($.RadioGroup,{value:T,onChange:w,direction:"vertical",children:[S.jsx($.Radio,{value:ie.INLINE,children:t.t("image-text-wrap.inline")}),S.jsx($.Radio,{value:ie.WRAP_SQUARE,children:t.t("image-text-wrap.square")}),S.jsx($.Radio,{value:ie.WRAP_TOP_AND_BOTTOM,children:t.t("image-text-wrap.topAndBottom")}),S.jsx($.Radio,{value:ie.BEHIND_TEXT,children:t.t("image-text-wrap.behindText")}),S.jsx($.Radio,{value:ie.IN_FRONT_OF_TEXT,children:t.t("image-text-wrap.inFrontText")})]})}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-text-wrap.wrapText")})}),S.jsx("div",{children:S.jsxs($.RadioGroup,{disabled:u,value:O,onChange:U,direction:"horizontal",children:[S.jsx($.Radio,{value:i.WrapTextType.BOTH_SIDES,children:t.t("image-text-wrap.bothSide")}),S.jsx($.Radio,{value:i.WrapTextType.LEFT,children:t.t("image-text-wrap.leftOnly")}),S.jsx($.Radio,{value:i.WrapTextType.RIGHT,children:t.t("image-text-wrap.rightOnly")})]})}),S.jsx("div",{className:"univer-text-gray-600 dark:!univer-text-gray-200",children:S.jsx("div",{children:t.t("image-text-wrap.distanceFromText")})}),S.jsxs("div",{className:"univer-grid univer-grid-cols-2 univer-gap-2 [&>div]:univer-grid [&>div]:univer-gap-2",children:[S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-text-wrap.top")}),S.jsx($.InputNumber,{min:ke,max:We,disabled:p,precision:1,value:C.distT,onChange:_=>{z(_,"distT")}})]}),S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-text-wrap.left")}),S.jsx($.InputNumber,{min:ke,max:We,disabled:I,precision:1,value:C.distL,onChange:_=>{z(_,"distL")}})]})]}),S.jsxs("div",{className:"univer-grid univer-grid-cols-2 univer-gap-2 [&>div]:univer-grid [&>div]:univer-gap-2",children:[S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-text-wrap.bottom")}),S.jsx($.InputNumber,{min:ke,max:We,disabled:p,precision:1,value:C.distB,onChange:_=>{z(_,"distB")}})]}),S.jsxs("div",{children:[S.jsx("span",{children:t.t("image-text-wrap.right")}),S.jsx($.InputNumber,{min:ke,max:We,disabled:I,precision:1,value:C.distR,onChange:_=>{z(_,"distR")}})]})]})]})},Vt=()=>{const s=B.useDependency(X.IDrawingManagerService),e=s.getFocusDrawings(),[t,n]=Y.useState(e);return Y.useEffect(()=>{const r=s.focus$.subscribe(o=>{n(o)});return()=>{r.unsubscribe()}},[]),!!(t!=null&&t.length)&&S.jsxs("div",{className:"univer-text-sm",children:[S.jsx(he.DrawingCommonPanel,{drawings:t,hasAlign:!1,hasCropper:!1,hasGroup:!1,hasTransform:!1}),S.jsx(Gt,{drawings:t}),S.jsx(Ht,{drawings:t})]})};function Ce(s){return s.getContextValue(i.FOCUSING_DOC)&&s.getContextValue(i.FOCUSING_UNIVER_EDITOR)&&s.getContextValue(i.FOCUSING_COMMON_DRAWINGS)}const Xt={id:De.id,description:"shortcut.drawing-move-down",group:"4_drawing-view",binding:B.KeyCode.ARROW_DOWN,priority:100,preconditions:Ce,staticParameters:{direction:i.Direction.DOWN}},$t={id:De.id,description:"shortcut.drawing-move-up",group:"4_drawing-view",binding:B.KeyCode.ARROW_UP,priority:100,preconditions:Ce,staticParameters:{direction:i.Direction.UP}},zt={id:De.id,description:"shortcut.drawing-move-left",group:"4_drawing-view",binding:B.KeyCode.ARROW_LEFT,priority:100,preconditions:Ce,staticParameters:{direction:i.Direction.LEFT}},qt={id:De.id,description:"shortcut.drawing-move-right",group:"4_drawing-view",binding:B.KeyCode.ARROW_RIGHT,priority:100,preconditions:Ce,staticParameters:{direction:i.Direction.RIGHT}},Kt={id:$e.id,description:"shortcut.drawing-delete",group:"4_drawing-view",preconditions:Ce,binding:B.KeyCode.DELETE,mac:B.KeyCode.BACKSPACE};var Yt=Object.getOwnPropertyDescriptor,Jt=(s,e,t,n)=>{for(var r=n>1?void 0:n?Yt(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},He=(s,e)=>(t,n)=>e(t,n,s);let Ge=class extends i.Disposable{constructor(s,e,t,n){super(),this._componentManager=s,this._menuManagerService=e,this._commandService=t,this._shortcutService=n,this._init()}_initCustomComponents(){const s=this._componentManager;this.disposeWithMe(s.register(ut,Vt))}_initMenus(){this._menuManagerService.mergeMenu(Wt)}_initCommands(){[Ye,Re,ot,at,ct,Oe,dt,lt,Ne,Je,gt,Ze,ze,Ke,De,$e,qe].forEach(s=>this.disposeWithMe(this._commandService.registerCommand(s)))}_initShortcuts(){[Xt,$t,zt,qt,Kt].forEach(s=>{this.disposeWithMe(this._shortcutService.registerShortcut(s))})}_init(){this._initCommands(),this._initCustomComponents(),this._initMenus(),this._initShortcuts()}};Ge=Jt([He(0,i.Inject(B.ComponentManager)),He(1,B.IMenuManagerService),He(2,i.ICommandService),He(3,B.IShortcutService)],Ge);var Zt=Object.getOwnPropertyDescriptor,Qt=(s,e,t,n)=>{for(var r=n>1?void 0:n?Zt(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},ve=(s,e)=>(t,n)=>e(t,n,s);let tt=class extends i.Disposable{constructor(e,t,n,r,o,a,d,l){super();le(this,"_liquid",new L.Liquid);this._context=e,this._docSkeletonManagerService=t,this._commandService=n,this._editorService=r,this._drawingManagerService=o,this._docRefreshDrawingsService=a,this._univerInstanceService=d,this._lifecycleService=l,this._initialize(),this._commandExecutedListener()}_initialize(){this._initialRenderRefresh(),this._drawingInitializeListener(),this._initResize()}_initialRenderRefresh(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{e!=null&&this._refreshDrawing(e)})),this.disposeWithMe(this._docRefreshDrawingsService.refreshDrawings$.subscribe(e=>{e!=null&&this._refreshDrawing(e)}))}_commandExecutedListener(){const e=[k.RichTextEditingMutation.id,W.SetDocZoomRatioOperation.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(e.includes(t.id)){const n=t.params,{unitId:r}=n,{unitId:o,mainComponent:a}=this._context;if(r!==o)return;const d=this._docSkeletonManagerService.getSkeleton();if(d==null)return;if(this._editorService.isEditor(o)&&o!==i.DOCS_ZEN_EDITOR_UNIT_ID_KEY){a==null||a.makeDirty();return}this._refreshDrawing(d)}}))}_initResize(){this.disposeWithMe(i.fromEventSubject(this._context.engine.onTransformChange$).pipe(Z.filter(e=>e.type===L.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),Z.debounceTime(16)).subscribe(()=>{var n;const e=this._docSkeletonManagerService.getSkeleton(),{scene:t}=this._context;(n=t.getTransformer())==null||n.refreshControls(),this._refreshDrawing(e)}))}_refreshDrawing(e){var T,y;const t=e==null?void 0:e.getSkeletonData(),{mainComponent:n,unitId:r}=this._context,o=n;if(!t)return;const{left:a,top:d,pageLayoutType:l,pageMarginLeft:c,pageMarginTop:g}=o,{pages:h,skeHeaders:u,skeFooters:m}=t,p={};this._liquid.reset();for(let O=0,P=h.length;O<P;O++){const C=h[O],{headerId:R,footerId:H,pageWidth:N}=C;if(R){const w=(T=u.get(R))==null?void 0:T.get(N);w&&this._calculateDrawingPosition(r,w,a,d,p,w.marginTop,C.marginLeft)}if(H){const w=(y=m.get(H))==null?void 0:y.get(N);w&&this._calculateDrawingPosition(r,w,a,d,p,C.pageHeight-C.marginBottom+w.marginTop,C.marginLeft)}this._calculateDrawingPosition(r,C,a,d,p,C.marginTop,C.marginLeft),this._liquid.translatePage(C,l,c,g)}const v=Object.values(p),I=v.filter(O=>!O.isMultiTransform),f=v.filter(O=>O.isMultiTransform);I.length>0&&this._drawingManagerService.refreshTransform(I),this._handleMultiDrawingsTransform(f)}_handleMultiDrawingsTransform(e){const{scene:t,unitId:n}=this._context,r=t.getTransformerByCreate();e.forEach(l=>{const c=this._drawingManagerService.getDrawingByParam(l);c!=null&&(c.transform=l.transform,c.transforms=l.transforms,c.isMultiTransform=l.isMultiTransform)});const a=[...r.getSelectedObjectMap().keys()],d=Object.values(this._drawingManagerService.getDrawingData(n,n)).filter(l=>l.isMultiTransform===i.BooleanNumber.TRUE);this._drawingManagerService.removeNotification(d),e.length>0&&this._drawingManagerService.addNotification(e);for(const l of a){const c=t.getObject(l);c&&r.setSelectedControl(c)}}_calculateDrawingPosition(e,t,n,r,o,a,d){const{skeDrawings:l}=t;this._liquid.translatePagePadding({marginTop:a,marginLeft:d}),l.forEach(c=>{const{aLeft:g,aTop:h,height:u,width:m,angle:p,drawingId:v,drawingOrigin:I}=c,f=I.layoutType===i.PositionedObjectLayoutType.WRAP_NONE&&I.behindDoc===i.BooleanNumber.TRUE,{isMultiTransform:T=i.BooleanNumber.FALSE}=I,y={left:g+n+this._liquid.x,top:h+r+this._liquid.y,width:m,height:u,angle:p};o[v]==null?o[v]={unitId:e,subUnitId:e,drawingId:v,behindText:f,transform:y,transforms:[y],isMultiTransform:T}:T===i.BooleanNumber.TRUE&&o[v].transforms.push(y)}),this._liquid.restorePagePadding({marginTop:a,marginLeft:d})}_drawingInitializeListener(){const e=()=>{const t=this._docSkeletonManagerService.getSkeleton();t!=null&&(this._refreshDrawing(t),this._drawingManagerService.initializeNotification(this._context.unitId))};this._lifecycleService.stage>=i.LifecycleStages.Rendered?this._docSkeletonManagerService.getSkeleton()?e():setTimeout(e,500):this.disposeWithMe(this._lifecycleService.lifecycle$.pipe(Z.filter(t=>t===i.LifecycleStages.Rendered)).subscribe(e))}};tt=Qt([ve(1,i.Inject(k.DocSkeletonManagerService)),ve(2,i.ICommandService),ve(3,W.IEditorService),ve(4,X.IDrawingManagerService),ve(5,i.Inject(xe)),ve(6,i.IUniverInstanceService),ve(7,i.Inject(i.LifecycleService))],tt);var en=Object.getOwnPropertyDescriptor,tn=(s,e,t,n)=>{for(var r=n>1?void 0:n?en(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},Ee=(s,e)=>(t,n)=>e(t,n,s);let Ve=class extends i.RxDisposable{constructor(e,t,n,r,o){super();le(this,"_initImagePopupMenu",new Set);le(this,"_disposePopups",[]);this._drawingManagerService=e,this._canvasPopManagerService=t,this._renderManagerService=n,this._univerInstanceService=r,this._contextService=o,this._init()}_init(){this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_DOC).pipe(Z.takeUntil(this.dispose$)).subscribe(e=>this._create(e))),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(i.UniverInstanceType.UNIVER_DOC).pipe(Z.takeUntil(this.dispose$)).subscribe(e=>this._dispose(e))),this._univerInstanceService.getAllUnitsForType(i.UniverInstanceType.UNIVER_DOC).forEach(e=>this._create(e))}_dispose(e){const t=e.getUnitId();this._disposePopups.length&&(this._disposePopups.forEach(n=>n.dispose()),this._disposePopups.length=0),this._renderManagerService.removeRender(t)}_create(e){if(!e)return;const t=e.getUnitId();i.isInternalEditorID(t)||this._renderManagerService.has(t)&&!this._initImagePopupMenu.has(t)&&(this._popupMenuListener(t),this._initImagePopupMenu.add(t))}_hasCropObject(e){const t=e.getAllObjects();for(const n of t)if(n instanceof he.ImageCropperObject)return!0;return!1}_popupMenuListener(e){var o;const t=(o=this._renderManagerService.getRenderById(e))==null?void 0:o.scene;if(!t)return;const n=t.getTransformerByCreate();if(!n)return;const r=this._disposePopups;this.disposeWithMe(n.createControl$.subscribe(()=>{if(this._hasCropObject(t))return;const a=n.getSelectedObjectMap();if(r.forEach(f=>f.dispose()),r.length=0,a.size>1)return;const d=a.values().next().value;if(!d)return;const l=d.oKey,c=this._drawingManagerService.getDrawingOKey(l);if(!c||c.drawingType===i.DrawingTypeEnum.DRAWING_DOM)return;const{unitId:g,subUnitId:h,drawingId:u,drawingType:m}=c,p=this._canvasPopManagerService.attachPopupToObject(d,{componentKey:he.COMPONENT_IMAGE_POPUP_MENU,direction:"horizontal",offset:[2,0],extraProps:{menuItems:this._getImageMenuItems(g,h,u,m)}},g);r.push(this.disposeWithMe(p)),!this._drawingManagerService.getFocusDrawings().find(f=>f.unitId===g&&f.subUnitId===h&&f.drawingId===u)&&this._drawingManagerService.focusDrawing([{unitId:g,subUnitId:h,drawingId:u}])})),this.disposeWithMe(n.clearControl$.subscribe(()=>{r.forEach(a=>a.dispose()),r.length=0,this._contextService.setContextValue(i.FOCUSING_COMMON_DRAWINGS,!1),this._drawingManagerService.focusDrawing(null)})),this.disposeWithMe(n.changing$.subscribe(()=>{r.forEach(a=>a.dispose()),r.length=0})),this.disposeWithMe(n.changeStart$.subscribe(()=>{r.forEach(a=>a.dispose()),r.length=0}))}_getImageMenuItems(e,t,n,r){return[{label:"image-popup.edit",index:0,commandId:Ze.id,commandParams:{unitId:e,subUnitId:t,drawingId:n},disable:!0},{label:"image-popup.delete",index:1,commandId:Ne.id,commandParams:{unitId:e,drawings:[{unitId:e,subUnitId:t,drawingId:n}]},disable:!1},{label:"image-popup.crop",index:2,commandId:he.OpenImageCropOperation.id,commandParams:{unitId:e,subUnitId:t,drawingId:n},disable:!0},{label:"image-popup.reset",index:3,commandId:he.ImageResetSizeOperation.id,commandParams:[{unitId:e,subUnitId:t,drawingId:n}],disable:!0}]}};Ve=tn([Ee(0,X.IDrawingManagerService),Ee(1,i.Inject(W.DocCanvasPopManagerService)),Ee(2,L.IRenderManagerService),Ee(3,i.IUniverInstanceService),Ee(4,i.IContextService)],Ve);var nn=Object.defineProperty,rn=Object.getOwnPropertyDescriptor,sn=(s,e,t)=>e in s?nn(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,on=(s,e,t,n)=>{for(var r=n>1?void 0:n?rn(e,t):e,o=s.length-1,a;o>=0;o--)(a=s[o])&&(r=a(r)||r);return r},nt=(s,e)=>(t,n)=>e(t,n,s),Xe=(s,e,t)=>sn(s,typeof e!="symbol"?e+"":e,t);b.UniverDocsDrawingUIPlugin=class extends i.Plugin{constructor(e=ft,t,n,r){super(),this._config=e,this._injector=t,this._renderManagerSrv=n,this._configService=r;const{...o}=i.merge({},ft,this._config);this._configService.setConfig(Pt,o)}onStarting(){[[Ge],[Ve],[je],[Le],[xe],[b.DocFloatDomController],[Ue]].forEach(t=>this._injector.add(t))}onReady(){[[Fe],[tt]].forEach(e=>this._renderManagerSrv.registerRenderModule(i.UniverInstanceType.UNIVER_DOC,e)),this._injector.get(Le),this._injector.get(Ge),this._injector.get(je),this._injector.get(Ue)}onRendered(){this._injector.get(Ve),this._injector.get(b.DocFloatDomController)}},Xe(b.UniverDocsDrawingUIPlugin,"type",i.UniverInstanceType.UNIVER_DOC),Xe(b.UniverDocsDrawingUIPlugin,"pluginName","DOC_DRAWING_UI_PLUGIN"),Xe(b.UniverDocsDrawingUIPlugin,"packageName",mt.name),Xe(b.UniverDocsDrawingUIPlugin,"version",mt.version),b.UniverDocsDrawingUIPlugin=on([i.DependentOn(he.UniverDrawingUIPlugin,X.UniverDrawingPlugin,te.UniverDocsDrawingPlugin,B.UniverUIPlugin),nt(1,i.Inject(i.Injector)),nt(2,L.IRenderManagerService),nt(3,i.IConfigService)],b.UniverDocsDrawingUIPlugin),b.ClearDocDrawingTransformerOperation=gt,b.DOCS_IMAGE_MENU_ID=et,b.DeleteDocDrawingsCommand=$e,b.EditDocDrawingOperation=Ze,b.GroupDocDrawingCommand=ze,b.InsertDocDrawingCommand=Re,b.InsertDocImageCommand=Ye,b.MoveDocDrawingsCommand=De,b.RemoveDocDrawingCommand=Ne,b.SetDocDrawingArrangeCommand=qe,b.SidebarDocDrawingOperation=Je,b.UngroupDocDrawingCommand=Ke,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@univerjs/core`),require(`@univerjs/docs-drawing`),require(`@univerjs/docs`),require(`@univerjs/docs-ui`),require(`@univerjs/engine-render`),require(`@univerjs/design`),require(`@univerjs/drawing`),require(`@univerjs/ui`),require(`rxjs`),require(`@univerjs/drawing-ui`),require(`react`),require(`react/jsx-runtime`)):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs-drawing`,`@univerjs/docs`,`@univerjs/docs-ui`,`@univerjs/engine-render`,`@univerjs/design`,`@univerjs/drawing`,`@univerjs/ui`,`rxjs`,`@univerjs/drawing-ui`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverDocsDrawingUi={},e.UniverCore,e.UniverDocsDrawing,e.UniverDocs,e.UniverDocsUi,e.UniverEngineRender,e.UniverDesign,e.UniverDrawing,e.UniverUi,e.rxjs,e.UniverDrawingUi,e.React,e.React))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let p={id:`doc.command.remove-doc-image`,type:t.CommandType.COMMAND,handler:(e,n)=>{var o,s,c;let l=e.get(t.ICommandService),u=e.get(t.IUniverInstanceService),d=e.get(a.IRenderManagerService),f=u.getCurrentUniverDocInstance();if(n==null||f==null)return!1;let p=d.getRenderById(n.unitId).with(i.DocSelectionRenderService),{drawings:m}=n,h=(o=p.getSegment())==null?``:o,g=new t.TextX,_=t.JSONX.getInstance(),v=(s=(c=f.getSelfOrHeaderFooterModel(h).getBody())==null?void 0:c.customBlocks)==null?[]:s,y=m.map(e=>v.find(t=>t.blockId===e.drawingId)).filter(e=>!!e).sort((e,t)=>e.startIndex>t.startIndex?1:-1),b=m[0].unitId,x=new t.MemoryCursor;x.reset();let S=y[0].startIndex,C=[{startOffset:S,endOffset:S}],w={id:r.RichTextEditingMutation.id,params:{unitId:b,actions:[],textRanges:C}},T=[];for(let e of y){let{startIndex:n}=e;n>x.cursor&&g.push({t:t.TextXActionType.RETAIN,len:n-x.cursor}),g.push({t:t.TextXActionType.DELETE,len:1}),x.moveCursorTo(n+1)}let E=(0,i.getRichTextEditPath)(f,h);T.push(_.editOp(g.serialize(),E));for(let e of y){var D;let{blockId:t}=e,n=((D=f.getDrawings())==null?{}:D)[t],r=f.getDrawingsOrder().indexOf(t),i=_.removeOp([`drawings`,t],n),a=_.removeOp([`drawingsOrder`,r],t);T.push(i),T.push(a)}return w.params.actions=T.reduce((e,n)=>t.JSONX.compose(e,n),null),!!l.syncExecuteCommand(w.id,w.params)}},m={id:`doc.command.delete-drawing`,type:t.CommandType.COMMAND,handler:e=>{let r=e.get(t.ICommandService),i=e.get(n.IDocDrawingService).getFocusDrawings();if(i.length===0)return!1;let{unitId:a}=i[0],o=i.map(e=>{let{unitId:t,subUnitId:n,drawingId:r,drawingType:i}=e;return{unitId:t,subUnitId:n,drawingId:r,drawingType:i}});return r.executeCommand(p.id,{unitId:a,drawings:o})}},h={id:`doc.command.group-doc-image`,type:t.CommandType.COMMAND,handler:(e,t)=>!1},g={id:`doc.command.insert-doc-image`,type:t.CommandType.COMMAND,handler:(e,n)=>{var a,o;if(n==null)return!1;let s=e.get(t.ICommandService),c=e.get(r.DocSelectionManagerService),l=e.get(t.IUniverInstanceService),u=c.getActiveTextRange(),d=l.getCurrentUniverDocInstance();if(u==null||d==null)return!1;let f=d.getUnitId(),{drawings:p}=n,{collapsed:m,startOffset:h,segmentId:g}=u,_=d.getSelfOrHeaderFooterModel(g).getBody();if(_==null)return!1;let v=new t.TextX,y=t.JSONX.getInstance(),b=[],x=(a=(o=d.getSnapshot().drawingsOrder)==null?void 0:o.length)==null?0:a,S=0;if(m)h>0&&v.push({t:t.TextXActionType.RETAIN,len:h});else{var C,w;let e=t.BuildTextUtils.selection.delete([u],_,0,null,!1);v.push(...e);let n=(0,i.getCustomBlockIdsInSelections)(_,[u]),r=(C=d.getDrawings())==null?{}:C,a=(w=d.getDrawingsOrder())==null?[]:w,o=n.sort((e,t)=>a.indexOf(e)>a.indexOf(t)?-1:a.indexOf(e)<a.indexOf(t)?1:0);if(o.length>0)for(let e of o){let t=r[e],n=a.indexOf(e);if(t==null||n<0)continue;let i=y.removeOp([`drawings`,e],t),o=y.removeOp([`drawingsOrder`,n],e);b.push(i),b.push(o),S++}}v.push({t:t.TextXActionType.INSERT,body:{dataStream:`\b`.repeat(p.length),customBlocks:p.map((e,t)=>({startIndex:t,blockId:e.drawingId}))},len:p.length});let T=(0,i.getRichTextEditPath)(d,g),E=y.editOp(v.serialize(),T);b.push(E);for(let e of p){let{drawingId:t}=e,n=y.insertOp([`drawings`,t],e),r=y.insertOp([`drawingsOrder`,x-S],t);b.push(n),b.push(r)}let D={id:r.RichTextEditingMutation.id,params:{unitId:f,actions:[],textRanges:[]}};return D.params.actions=b.reduce((e,n)=>t.JSONX.compose(e,n),null),!!s.syncExecuteCommand(D.id,D.params)}},_={id:`doc.command.set-drawing-arrange`,type:t.CommandType.COMMAND,handler:(e,i)=>{let a=e.get(t.ICommandService),o=e.get(n.IDocDrawingService);if(i==null)return!1;let{unitId:s,subUnitId:c,drawingIds:l,arrangeType:u}=i,d={unitId:s,subUnitId:c,drawingIds:l},f;if(u===t.ArrangeTypeEnum.forward?f=o.getForwardDrawingsOp(d):u===t.ArrangeTypeEnum.backward?f=o.getBackwardDrawingOp(d):u===t.ArrangeTypeEnum.front?f=o.getFrontDrawingsOp(d):u===t.ArrangeTypeEnum.back&&(f=o.getBackDrawingsOp(d)),f==null)return!1;let{redo:p}=f;if(p==null)return!1;let m=[],h=t.Tools.deepClone(p);h=h.slice(3),h.unshift(`drawingsOrder`),m.push(h);let g={id:r.RichTextEditingMutation.id,params:{unitId:s,actions:[],textRanges:null}};return g.params.actions=m.reduce((e,n)=>t.JSONX.compose(e,n),null),!!a.syncExecuteCommand(g.id,g.params)}},v={id:`doc.command.ungroup-doc-image`,type:t.CommandType.COMMAND,handler:(e,t)=>{let r=e.get(n.IDocDrawingService);if(!t)return!1;let i=[];t.forEach(({parent:e,children:t})=>{i.push(e.unitId),t.forEach(e=>{i.push(e.unitId)})});let{unitId:a,subUnitId:o,undo:s,redo:c,objects:l}=r.getUngroupDrawingOp(t);return!1}};function y(e){"@babel/helpers - typeof";return y=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},y(e)}function b(e,t){if(y(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(y(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function x(e){var t=b(e,`string`);return y(t)==`symbol`?t:t+``}function S(e,t,n){return(t=x(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var C=class{constructor(){S(this,`_refreshDrawings$`,new l.BehaviorSubject(null)),S(this,`refreshDrawings$`,this._refreshDrawings$.asObservable())}refreshDrawings(e){this._refreshDrawings$.next(e)}};function w(e,t){return function(n,r){t(n,r,e)}}function T(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let E=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){super(),this._context=e,this._commandService=t,this._docSelectionManagerService=n,this._renderManagerSrv=r,this._imageIoService=i,this._docDrawingService=a,this._drawingManagerService=o,this._contextService=s,this._messageService=c,this._localeService=l,this._docSelectionRenderService=u,this._docRefreshDrawingsService=d,this._fileOpenerService=f,this._updateOrderListener(),this._groupDrawingListener(),this._focusDrawingListener(),this._transformDrawingListener(),this._editAreaChangeListener()}dispose(){super.dispose(),delete this._context}async insertDocImage(){let e=await this._fileOpenerService.openFile({multiple:!0,accept:s.DRAWING_IMAGE_ALLOW_IMAGE_LIST.map(e=>`.${e.replace(`image/`,``)}`).join(`,`)}),t=e.length;return t>s.DRAWING_IMAGE_COUNT_LIMIT?(this._messageService.show({type:o.MessageType.Error,content:this._localeService.t(`update-status.exceedMaxCount`,String(s.DRAWING_IMAGE_COUNT_LIMIT))}),!1):t===0?!1:(await this._insertFloatImages(e),!0)}async _insertFloatImages(e){let n=[];try{n=await Promise.all(e.map(e=>this._imageIoService.saveImage(e)))}catch(e){let t=e.message,n=``;switch(t){case s.ImageUploadStatusType.ERROR_EXCEED_SIZE:n=this._localeService.t(`update-status.exceedMaxSize`,String(s.DRAWING_IMAGE_ALLOW_SIZE/(1024*1024)));break;case s.ImageUploadStatusType.ERROR_IMAGE_TYPE:n=this._localeService.t(`update-status.invalidImageType`);break;case s.ImageUploadStatusType.ERROR_IMAGE:n=this._localeService.t(`update-status.invalidImage`);break;default:break}this._messageService.show({type:o.MessageType.Error,content:n})}if(n.length===0)return;let{unitId:r}=this._context,a=[];for(let e of n){if(e==null)continue;let{imageId:n,imageSourceType:o,source:c,base64Cache:l}=e,{width:u,height:d,image:f}=await(0,s.getImageSize)(l||``);this._imageIoService.addImageSourceCache(n,o,f);let p=1;if(u>s.DRAWING_IMAGE_WIDTH_LIMIT||d>s.DRAWING_IMAGE_HEIGHT_LIMIT){let e=s.DRAWING_IMAGE_WIDTH_LIMIT/u,t=s.DRAWING_IMAGE_HEIGHT_LIMIT/d;p=Math.min(e,t)}let m=this._getImagePosition(u*p,d*p);if(m==null)return;let h={unitId:r,subUnitId:r,drawingId:n,drawingType:t.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:o,source:c,transform:(0,i.docDrawingPositionToTransform)(m),docTransform:m,behindDoc:t.BooleanNumber.FALSE,title:``,description:``,layoutType:t.PositionedObjectLayoutType.INLINE,wrapText:t.WrapTextType.BOTH_SIDES,distB:0,distL:0,distR:0,distT:0};this._isInsertInHeaderFooter()&&(h.isMultiTransform=t.BooleanNumber.TRUE,h.transforms=h.transform?[h.transform]:null),a.push(h)}this._commandService.executeCommand(g.id,{unitId:r,drawings:a})}_isInsertInHeaderFooter(){var e;let{unitId:t}=this._context,n=(e=this._renderManagerSrv.getRenderById(t))==null?void 0:e.with(r.DocSkeletonManagerService).getViewModel(),i=n==null?void 0:n.getEditArea();return i===a.DocumentEditArea.HEADER||i===a.DocumentEditArea.FOOTER}_getImagePosition(e,n){let r=this._docSelectionRenderService.getActiveTextRange(),i=(r==null?void 0:r.getAbsolutePosition())||{left:0,top:0};return{size:{width:e,height:n},positionH:{relativeFrom:t.ObjectRelativeFromH.PAGE,posOffset:i.left},positionV:{relativeFrom:t.ObjectRelativeFromV.PARAGRAPH,posOffset:0},angle:0}}_updateOrderListener(){this.disposeWithMe(this._drawingManagerService.featurePluginOrderUpdate$.subscribe(e=>{let{unitId:t,subUnitId:n,drawingIds:r,arrangeType:i}=e;this._commandService.executeCommand(_.id,{unitId:t,subUnitId:n,drawingIds:r,arrangeType:i})}))}_groupDrawingListener(){this.disposeWithMe(this._drawingManagerService.featurePluginGroupUpdate$.subscribe(e=>{this._commandService.executeCommand(h.id,e)})),this.disposeWithMe(this._drawingManagerService.featurePluginUngroupUpdate$.subscribe(e=>{this._commandService.executeCommand(v.id,e)}))}_getCurrentSceneAndTransformer(){let{scene:e,mainComponent:t}=this._context;if(e==null||t==null)return;let n=e.getTransformerByCreate(),{docsLeft:r,docsTop:i}=t.getOffsetConfig();return{scene:e,transformer:n,docsLeft:r,docsTop:i}}_transformDrawingListener(){let e=this._getCurrentSceneAndTransformer();if(e&&e.transformer)this.disposeWithMe(e.transformer.changeEnd$.pipe((0,l.debounceTime)(30)).subscribe(e=>{this._docSelectionManagerService.refreshSelection()}));else throw Error(`transformer is not init`)}_focusDrawingListener(){this.disposeWithMe(this._drawingManagerService.focus$.subscribe(e=>{var n;let{transformer:r,docsLeft:i,docsTop:a}=(n=this._getCurrentSceneAndTransformer())==null?{}:n;if(e==null||e.length===0)this._contextService.setContextValue(t.FOCUSING_COMMON_DRAWINGS,!1),this._docDrawingService.focusDrawing([]),r&&r.resetProps({zeroTop:0,zeroLeft:0});else{this._contextService.setContextValue(t.FOCUSING_COMMON_DRAWINGS,!0),this._docDrawingService.focusDrawing(e),this._setDrawingSelections(e);let n=this._docSelectionRenderService.getSegment(),o=this._findSegmentIdByDrawingId(e[0].drawingId);n!==o&&this._docSelectionRenderService.setSegment(o),r&&r.resetProps({zeroTop:a,zeroLeft:i})}}))}_findSegmentIdByDrawingId(e){var t;let{unit:n}=this._context,{body:r,headers:i={},footers:a={}}=n.getSnapshot();if(((t=r==null?void 0:r.customBlocks)==null?[]:t).some(t=>t.blockId===e))return``;for(let t of Object.keys(i)){var o;if((o=i[t].body.customBlocks)!=null&&o.some(t=>t.blockId===e))return t}for(let t of Object.keys(a)){var s;if((s=a[t].body.customBlocks)!=null&&s.some(t=>t.blockId===e))return t}return``}_updateDrawingsEditStatus(){var e;if(!this._context)return;let{unit:n,scene:i,unitId:o}=this._context,c=(e=this._renderManagerSrv.getRenderById(o))==null?void 0:e.with(r.DocSkeletonManagerService).getViewModel();if(c==null||n==null)return;let{drawings:l={}}=n.getSnapshot(),u=c.getEditArea()===a.DocumentEditArea.BODY;for(let e of Object.keys(l)){let n=l[e],r=(0,s.getDrawingShapeKeyByDrawingSearch)({unitId:o,drawingId:n.drawingId,subUnitId:o}),a=i.fuzzyMathObjects(r,!0);if(a.length)for(let e of a){i.detachTransformerFrom(e);try{e.setOpacity(.5)}catch{}if(u&&n.isMultiTransform!==t.BooleanNumber.TRUE||!u&&n.isMultiTransform===t.BooleanNumber.TRUE){n.allowTransform!==!1&&i.attachTransformerTo(e);try{e.setOpacity(1)}catch{}}}}}_editAreaChangeListener(){var e;let{unitId:t}=this._context,n=(e=this._renderManagerSrv.getRenderById(t))==null?void 0:e.with(r.DocSkeletonManagerService).getViewModel();n!=null&&(this._updateDrawingsEditStatus(),this.disposeWithMe(n.editAreaChange$.subscribe(()=>{this._updateDrawingsEditStatus()})),this.disposeWithMe(this._docRefreshDrawingsService.refreshDrawings$.subscribe(e=>{e!=null&&queueMicrotask(()=>{this._updateDrawingsEditStatus()})})),this.disposeWithMe(this._commandService.onCommandExecuted(async e=>{e.id===r.RichTextEditingMutation.id&&queueMicrotask(()=>{this._updateDrawingsEditStatus()})})))}_setDrawingSelections(e){var t,n;let{unit:r}=this._context,i=(t=(n=r.getSnapshot().body)==null?void 0:n.customBlocks)==null?[]:t,a=e.map(e=>{let t=e.drawingId,n=i.find(e=>e.blockId===t);return n?n.startIndex:null}).filter(e=>e!==null).map(e=>({startOffset:e,endOffset:e+1}));this._docSelectionManagerService.replaceDocRanges(a)}};E=T([w(1,t.ICommandService),w(2,(0,t.Inject)(r.DocSelectionManagerService)),w(3,a.IRenderManagerService),w(4,s.IImageIoService),w(5,n.IDocDrawingService),w(6,s.IDrawingManagerService),w(7,t.IContextService),w(8,c.IMessageService),w(9,(0,t.Inject)(t.LocaleService)),w(10,(0,t.Inject)(i.DocSelectionRenderService)),w(11,(0,t.Inject)(C)),w(12,c.ILocalFileService)],E);let D={id:`doc.command.insert-float-image`,type:t.CommandType.COMMAND,handler:e=>{var n,r;let i=e.get(t.IUniverInstanceService),o=e.get(a.IRenderManagerService);return(n=(r=(0,a.getCurrentTypeOfRenderer)(t.UniverInstanceType.UNIVER_DOC,i,o))==null?void 0:r.with(E).insertDocImage())==null?!1:n}},O=function(e){return e.INLINE=`inline`,e.BEHIND_TEXT=`behindText`,e.IN_FRONT_OF_TEXT=`inFrontOfText`,e.WRAP_SQUARE=`wrapSquare`,e.WRAP_TOP_AND_BOTTOM=`wrapTopAndBottom`,e}({}),k={[O.INLINE]:t.PositionedObjectLayoutType.INLINE,[O.WRAP_SQUARE]:t.PositionedObjectLayoutType.WRAP_SQUARE,[O.WRAP_TOP_AND_BOTTOM]:t.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM,[O.IN_FRONT_OF_TEXT]:t.PositionedObjectLayoutType.WRAP_NONE,[O.BEHIND_TEXT]:t.PositionedObjectLayoutType.WRAP_NONE};function A(e,n,r,a,o,s,c){var l;let u=new t.TextX,d=t.JSONX.getInstance(),f=[],p=s.getSelfOrHeaderFooterModel(n).getBody(),m=s.getSelfOrHeaderFooterModel(e).getBody();if(p==null||m==null)return;let h=(l=p.customBlocks)==null||(l=l.find(e=>e.blockId===o))==null?void 0:l.startIndex;if(h!=null){if(a=Math.min(m.dataStream.length-2,a),e===n){if(a<h?(a>0&&u.push({t:t.TextXActionType.RETAIN,len:a}),u.push({t:t.TextXActionType.INSERT,body:{dataStream:`\b`,customBlocks:[{startIndex:0,blockId:o}]},len:1}),u.push({t:t.TextXActionType.RETAIN,len:h-a}),u.push({t:t.TextXActionType.DELETE,len:1})):(h>0&&u.push({t:t.TextXActionType.RETAIN,len:h}),u.push({t:t.TextXActionType.DELETE,len:1}),a-h-1>0&&u.push({t:t.TextXActionType.RETAIN,len:a-h-1}),u.push({t:t.TextXActionType.INSERT,body:{dataStream:`\b`,customBlocks:[{startIndex:0,blockId:o}]},len:1})),a!==h){let e=(0,i.getRichTextEditPath)(s,n),t=d.editOp(u.serialize(),e);f.push(t)}}else{h>0&&u.push({t:t.TextXActionType.RETAIN,len:h}),u.push({t:t.TextXActionType.DELETE,len:1});let l=(0,i.getRichTextEditPath)(s,n),p=d.editOp(u.serialize(),l);f.push(p),u.empty(),a>0&&u.push({t:t.TextXActionType.RETAIN,len:a}),u.push({t:t.TextXActionType.INSERT,body:{dataStream:`\b`,customBlocks:[{startIndex:0,blockId:o}]},len:1}),l=(0,i.getRichTextEditPath)(s,e),p=d.editOp(u.serialize(),l),f.push(p),c.setSegment(e),c.setSegmentPage(r)}return f}}let j={id:`doc.command.update-doc-drawing-wrapping-style`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(n==null)return!1;let{drawings:i,wrappingStyle:o,unitId:s}=n,c=e.get(t.ICommandService),l=e.get(t.IUniverInstanceService),u=e.get(a.IRenderManagerService).getRenderById(s),d=u==null?void 0:u.with(r.DocSkeletonManagerService).getSkeleton().getSkeletonData(),f=u==null?void 0:u.with(r.DocSkeletonManagerService).getViewModel(),p=u==null?void 0:u.scene,m=l.getCurrentUniverDocInstance();if(m==null||d==null||p==null||f==null)return!1;let h=f.getEditArea(),g=p.getTransformerByCreate(),{pages:_,skeHeaders:v,skeFooters:y}=d,b=t.JSONX.getInstance(),x=[],{drawings:S={}}=m.getSnapshot();for(let e of i){let{drawingId:n}=e,r=S[n].layoutType,i=k[o];if(r!==i){let e=b.replaceOp([`drawings`,n,`layoutType`],r,i);x.push(e)}if(o===O.BEHIND_TEXT||o===O.IN_FRONT_OF_TEXT){let e=S[n].behindDoc,r=o===O.BEHIND_TEXT?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE;if(e!==r){let t=b.replaceOp([`drawings`,n,`behindDoc`],e,r);x.push(t)}}if(o===O.INLINE)continue;let s=null,c=0,l=0;for(let e of _){let{headerId:t,footerId:r,marginTop:i,marginLeft:o,marginBottom:u,pageWidth:d,pageHeight:f}=e;switch(h){case a.DocumentEditArea.HEADER:{var C;let e=(C=v.get(t))==null?void 0:C.get(d);e!=null&&e.skeDrawings.has(n)&&(s=e.skeDrawings.get(n),c=e.marginTop,l=o);break}case a.DocumentEditArea.FOOTER:{var w;let e=(w=y.get(r))==null?void 0:w.get(d);e!=null&&e.skeDrawings.has(n)&&(s=e.skeDrawings.get(n),c=f-u+e.marginTop,l=o);break}case a.DocumentEditArea.BODY:e.skeDrawings.has(n)&&(s=e.skeDrawings.get(n),c=i,l=o);break}if(s!=null)break}if(s!=null){let{aTop:e,aLeft:r}=s,i=S[n].docTransform.positionH,a=r;i.relativeFrom===t.ObjectRelativeFromH.MARGIN?a-=l:i.relativeFrom===t.ObjectRelativeFromH.COLUMN&&(a-=s.columnLeft);let o={relativeFrom:i.relativeFrom,posOffset:a};if(i.posOffset!==o.posOffset){let e=b.replaceOp([`drawings`,n,`docTransform`,`positionH`],i,o);x.push(e)}let u=S[n].docTransform.positionV,d=e;u.relativeFrom===t.ObjectRelativeFromV.PAGE?d+=c:u.relativeFrom===t.ObjectRelativeFromV.LINE?d-=s.lineTop:u.relativeFrom===t.ObjectRelativeFromV.PARAGRAPH&&(d-=s.blockAnchorTop);let f={relativeFrom:u.relativeFrom,posOffset:d};if(u.posOffset!==f.posOffset){let e=b.replaceOp([`drawings`,n,`docTransform`,`positionV`],u,f);x.push(e)}}}let T={id:r.RichTextEditingMutation.id,params:{unitId:s,actions:[],textRanges:null}};T.params.actions=x.reduce((e,n)=>t.JSONX.compose(e,n),null);let E=c.syncExecuteCommand(T.id,T.params);return g.refreshControls(),!!E}},M={id:`doc.command.update-doc-drawing-distance`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(n==null)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUniverInstanceService).getCurrentUniverDocInstance();if(a==null)return!1;let{drawings:o,dist:s,unitId:c}=n,l=t.JSONX.getInstance(),u=[],{drawings:d={}}=a.getSnapshot();for(let e of o){let{drawingId:t}=e;for(let[e,n]of Object.entries(s)){let r=d[t][e];if(r!==n){let i=l.replaceOp([`drawings`,t,e],r,n);u.push(i)}}}let f={id:r.RichTextEditingMutation.id,params:{unitId:c,actions:[],textRanges:null}};return f.params.actions=u.reduce((e,n)=>t.JSONX.compose(e,n),null),!!i.syncExecuteCommand(f.id,f.params)}},N={id:`doc.command.update-doc-drawing-wrap-text`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(n==null)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUniverInstanceService).getCurrentUniverDocInstance();if(a==null)return!1;let{drawings:o,wrapText:s,unitId:c}=n,l=t.JSONX.getInstance(),u=[],{drawings:d={}}=a.getSnapshot();for(let e of o){let{drawingId:t}=e,n=d[t].wrapText;if(n!==s){let e=l.replaceOp([`drawings`,t,`wrapText`],n,s);u.push(e)}}let f={id:r.RichTextEditingMutation.id,params:{unitId:c,actions:[],textRanges:null}};return f.params.actions=u.reduce((e,n)=>t.JSONX.compose(e,n),null),!!i.syncExecuteCommand(f.id,f.params)}},P={id:`doc.command.update-drawing-doc-transform`,type:t.CommandType.COMMAND,handler:(e,n)=>{if(n==null)return!1;let i=e.get(t.ICommandService),o=e.get(t.IUniverInstanceService),s=e.get(a.IRenderManagerService).getRenderById(n.unitId),c=s==null?void 0:s.scene;if(c==null)return!1;let l=c.getTransformerByCreate(),u=o.getCurrentUniverDocInstance();if(u==null)return!1;let{drawings:d,unitId:f}=n,p=t.JSONX.getInstance(),m=[],{drawings:h={}}=u.getSnapshot();for(let e of d){let{drawingId:n,key:r,value:i}=e,a=h[n].docTransform[r];if(!t.Tools.diffValue(a,i)){let e=p.replaceOp([`drawings`,n,`docTransform`,r],a,i);m.push(e)}}let g={id:r.RichTextEditingMutation.id,params:{unitId:f,actions:[],textRanges:null,debounce:!0}};g.params.actions=m.reduce((e,n)=>t.JSONX.compose(e,n),null);let _=i.syncExecuteCommand(g.id,g.params);return l.refreshControls(),!!_}},F={id:`doc.command.move-inline-drawing`,type:t.CommandType.COMMAND,handler:(e,n)=>{var o,s;if(n==null)return!1;let c=e.get(a.IRenderManagerService),l=(o=c.getRenderById(n.unitId))==null?void 0:o.with(i.DocSelectionRenderService),u=e.get(C),d=c.getRenderById(n.unitId),f=d==null?void 0:d.scene,p=d==null?void 0:d.with(r.DocSkeletonManagerService).getSkeleton();if(f==null||l==null)return!1;let m=f.getTransformerByCreate(),h=e.get(t.ICommandService),g=e.get(t.IUniverInstanceService).getCurrentUniverDocInstance();if(g==null)return!1;let{drawing:_,unitId:v,offset:y,segmentId:b,segmentPage:x,needRefreshDrawings:S}=n;if(S)return u.refreshDrawings(p),m.refreshControls(),!0;let w=[],{drawingId:T}=_,E=A(b,(s=l.getSegment())==null?``:s,x,y,T,g,l);if(E==null||E.length===0)return u.refreshDrawings(p),m.refreshControls(),!1;w.push(...E);let D={id:r.RichTextEditingMutation.id,params:{unitId:v,actions:[],textRanges:null}};D.params.actions=w.reduce((e,n)=>t.JSONX.compose(e,n),null);let O=h.syncExecuteCommand(D.id,D.params);return m.refreshControls(),!!O}},I={id:`doc.command.transform-non-inline-drawing`,type:t.CommandType.COMMAND,handler:(e,n)=>{var o,s;if(n==null)return!1;let c=e.get(a.IRenderManagerService),l=(o=c.getRenderById(n.unitId))==null?void 0:o.with(i.DocSelectionRenderService),u=c.getRenderById(n.unitId),d=u==null?void 0:u.scene;if(d==null||l==null)return!1;let f=d.getTransformerByCreate(),p=e.get(t.ICommandService),m=e.get(t.IUniverInstanceService).getCurrentUniverDocInstance();if(m==null)return!1;let{drawing:h,unitId:g,offset:_,docTransform:v,segmentId:y,segmentPage:b}=n,x=[],{drawingId:S}=h,C=A(y,(s=l.getSegment())==null?``:s,b,_,S,m,l);if(C==null)return!1;C.length>0&&x.push(...C);let w=t.JSONX.getInstance(),{drawings:T={}}=m.getSnapshot(),{positionH:E,positionV:D,size:O,angle:k}=T[S].docTransform;if(!t.Tools.diffValue(E,v.positionH)){let e=w.replaceOp([`drawings`,S,`docTransform`,`positionH`],E,v.positionH);x.push(e)}if(!t.Tools.diffValue(D,v.positionV)){let e=w.replaceOp([`drawings`,S,`docTransform`,`positionV`],D,v.positionV);x.push(e)}if(!t.Tools.diffValue(O,v.size)){let e=w.replaceOp([`drawings`,S,`docTransform`,`size`],O,v.size);x.push(e)}if(!t.Tools.diffValue(k,v.angle)){let e=w.replaceOp([`drawings`,S,`docTransform`,`angle`],k,v.angle);x.push(e)}let j={id:r.RichTextEditingMutation.id,params:{unitId:g,actions:[],textRanges:null,debounce:!0}};j.params.actions=x.reduce((e,n)=>t.JSONX.compose(e,n),null);let M=p.syncExecuteCommand(j.id,j.params);return f.refreshControls(),!!M}},L={id:`doc.command.move-drawing`,type:t.CommandType.COMMAND,handler:(e,r)=>{let i=e.get(t.ICommandService),o=e.get(n.IDocDrawingService),s=e.get(t.IUniverInstanceService),c=e.get(a.IRenderManagerService),{direction:l}=r,u=o.getFocusDrawings();if(u.length===0)return!1;let d=u[0].unitId,f=c.getRenderById(d),p=f==null?void 0:f.scene;if(p==null)return!1;let m=p.getTransformerByCreate(),h=s.getUniverDocInstance(d),g=u.map(e=>{var n;let{drawingId:r}=e,i=h==null||(n=h.getSnapshot().drawings)==null?void 0:n[r];if(i==null||i.layoutType===t.PositionedObjectLayoutType.INLINE)return null;let{positionH:a,positionV:o}=i.docTransform,s={...a},c={...o};if(l===t.Direction.UP){var u;c.posOffset=((u=c.posOffset)==null?0:u)-2}else if(l===t.Direction.DOWN){var d;c.posOffset=((d=c.posOffset)==null?0:d)+2}else if(l===t.Direction.LEFT){var f;s.posOffset=((f=s.posOffset)==null?0:f)-2}else if(l===t.Direction.RIGHT){var p;s.posOffset=((p=s.posOffset)==null?0:p)+2}return{drawingId:r,key:l===t.Direction.UP||l===t.Direction.DOWN?`positionV`:`positionH`,value:l===t.Direction.UP||l===t.Direction.DOWN?c:s}}).filter(e=>e!=null);if(g.length===0)return!1;let _=i.syncExecuteCommand(P.id,{unitId:d,subUnitId:d,drawings:g});return m.refreshControls(),!!_}},R={id:`doc.operation.clear-drawing-transformer`,type:t.CommandType.MUTATION,handler:(e,t)=>{let n=e.get(a.IRenderManagerService);return t.forEach(e=>{var t;(t=n.getRenderById(e))==null||(t=t.scene.getTransformer())==null||t.debounceRefreshControls()}),!0}},z=`COMPONENT_DOC_DRAWING_PANEL`,B={id:`sidebar.operation.doc-image`,type:t.CommandType.COMMAND,handler:async(e,n)=>{let r=e.get(c.ISidebarService),i=e.get(t.LocaleService),a=e.get(s.IDrawingManagerService);switch(n.value){case`open`:r.open({header:{title:i.t(`docImage.panel.title`)},children:{label:z},onClose:()=>{a.focusDrawing(null)},width:360});break;default:r.close();break}return!0}},V={id:`doc.operation.edit-doc-image`,type:t.CommandType.OPERATION,handler:(e,n)=>{let r=e.get(s.IDrawingManagerService),i=e.get(t.ICommandService);return n==null?!1:(r.focusDrawing([n]),i.executeCommand(B.id,{value:`open`}),!0)}};function H(e,t,n=1,r=0){let{top:a,left:o,bottom:s,right:c}=e,l=c-o,u=s-a,{viewportScrollX:d,viewportScrollY:f}=t.getViewport(i.VIEWPORT_KEY.VIEW_MAIN),{scaleX:p,scaleY:m}=t.getAncestorScale();return{startX:(o-d)*p,startY:(a-f)*m,endX:(o+l-d)*p,endY:(a+u-f)*m,width:l*p,height:u*m,rotate:r,absolute:{left:!1,top:!1},opacity:n==null?1:n}}function U(e,t){let{top:n,left:r,width:i,height:a,angle:o,opacity:s}=e;return H({top:n,left:r,bottom:n+a,right:r+i},t.scene,s,o)}let W=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._renderManagerService=e,this._drawingManagerService=t,this._drawingRenderService=n,this._canvasFloatDomService=r,this._univerInstanceService=i,this._commandService=a,S(this,`_domLayerInfoMap`,new Map),this._initialize()}dispose(){super.dispose()}_initialize(){this._drawingAddRemoveListener(),this._initScrollAndZoomEvent()}_getSceneAndTransformerByDrawingSearch(e){if(e==null)return;let t=this._renderManagerService.getRenderById(e);if(t==null)return null;let n=t.scene;return{scene:n,transformer:n.getTransformerByCreate(),renderUnit:t,canvas:t.engine.getCanvasElement()}}_drawingAddRemoveListener(){this.disposeWithMe(this._drawingManagerService.add$.subscribe(e=>{this._insertRects(e)})),this.disposeWithMe(this._drawingManagerService.remove$.subscribe(e=>{e.forEach(e=>{this._removeDom(e.drawingId)})}))}_insertRects(e){e.forEach(async e=>{let{unitId:n}=e;if(!this._univerInstanceService.getUnit(n,t.UniverInstanceType.UNIVER_DOC))return;let r=this._getSceneAndTransformerByDrawingSearch(n);if(r==null)return;let i=this._drawingManagerService.getDrawingByParam(e);if(i==null)return;let a=await this._drawingRenderService.renderFloatDom(i,r.scene);if(!(a==null||a.length===0))for(let e of a){this._addHoverForRect(e);let a=new t.DisposableCollection,o=new l.BehaviorSubject(U(e,r.renderUnit)),s=r.canvas,c=i.data,u={dispose:a,rect:e,position$:o,unitId:n};this._canvasFloatDomService.addFloatDom({position$:o,id:i.drawingId,componentKey:i.componentKey,onPointerDown:e=>{s.dispatchEvent(new PointerEvent(e.type,e))},onPointerMove:e=>{s.dispatchEvent(new PointerEvent(e.type,e))},onPointerUp:e=>{s.dispatchEvent(new PointerEvent(e.type,e))},onWheel:e=>{s.dispatchEvent(new WheelEvent(e.type,e))},data:c,unitId:n});let d=e.onTransformChange$.subscribeEvent(()=>{let t=U(e,r.renderUnit);o.next(t)});a.add(()=>{this._canvasFloatDomService.removeFloatDom(i.drawingId)}),d&&a.add(d),this._domLayerInfoMap.set(i.drawingId,u)}})}_addHoverForRect(e){this.disposeWithMe((0,t.toDisposable)(e.onPointerEnter$.subscribeEvent(()=>{e.cursor=a.CURSOR_TYPE.GRAB}))),this.disposeWithMe((0,t.toDisposable)(e.onPointerLeave$.subscribeEvent(()=>{e.cursor=a.CURSOR_TYPE.DEFAULT})))}_removeDom(e){let t=this._domLayerInfoMap.get(e);if(!t)return;let{unitId:n}=t;this._domLayerInfoMap.delete(e),t.dispose.dispose();let r=this._getSceneAndTransformerByDrawingSearch(n);r&&r.scene.removeObject(t.rect)}_initScrollAndZoomEvent(){let e=e=>{let t=this._getSceneAndTransformerByDrawingSearch(e);t&&this._domLayerInfoMap.forEach(n=>{if(n.unitId!==e)return;let r=U(n.rect,t.renderUnit);n.position$.next(r)})};this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,l.map)(e=>{if(!e)return null;let t=e.getUnitId(),n=this._renderManagerService.getRenderById(t);return n?{render:n,unitId:t}:null}),(0,l.switchMap)(e=>e?(0,t.fromEventSubject)(e.render.scene.getViewport(i.VIEWPORT_KEY.VIEW_MAIN).onScrollAfter$).pipe((0,l.map)(()=>({unitId:e.unitId}))):(0,l.of)(null))).subscribe(t=>{if(!t)return;let{unitId:n}=t;e(n)})),this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(t.id===i.SetDocZoomRatioOperation.id){let{unitId:n}=t.params;e(n)}}))}insertFloatDom(e,n){var a,o,s;let c=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=this._getSceneAndTransformerByDrawingSearch(c.getUnitId());if(!l)return!1;let u=(a=l.renderUnit.with(r.DocSkeletonManagerService).getSkeleton().getSkeletonData())==null?void 0:a.pages[0];if(!u)return!1;let{pageWidth:d,marginLeft:f,marginRight:p}=u,m=d-f-p,h={size:{width:(o=n.width)==null?m:o,height:n.height},positionH:{relativeFrom:t.ObjectRelativeFromH.PAGE,posOffset:0},positionV:{relativeFrom:t.ObjectRelativeFromV.PAGE,posOffset:0},angle:0},_=(s=n.drawingId)==null?(0,t.generateRandomId)():s,v={unitId:c.getUnitId(),drawings:[{drawingId:_,drawingType:t.DrawingTypeEnum.DRAWING_DOM,subUnitId:c.getUnitId(),unitId:c.getUnitId(),...e,title:``,description:``,docTransform:h,layoutType:t.PositionedObjectLayoutType.INLINE,transform:(0,i.docDrawingPositionToTransform)(h)}]};return this._commandService.syncExecuteCommand(g.id,v),_}};W=T([w(0,a.IRenderManagerService),w(1,s.IDrawingManagerService),w(2,(0,t.Inject)(u.DrawingRenderService)),w(3,(0,t.Inject)(c.CanvasFloatDomService)),w(4,t.IUniverInstanceService),w(5,t.ICommandService)],W);let G=`doc.menu.image`,K=D.id,q=e=>{let n=e.get(r.DocSelectionManagerService),i=e.get(t.IUniverInstanceService);return new l.Observable(e=>{let t=n.textSelection$.subscribe(()=>{let t=n.getActiveTextRange();if(t){var r;let{segmentId:n,startOffset:a,endOffset:o}=t,s=i.getCurrentUniverDocInstance(),c=s==null||(r=s.getSelfOrHeaderFooterModel(n).getBody())==null?void 0:r.tables;if(c&&c.length&&c.some(e=>{let{startIndex:t,endIndex:n}=e;return a>=t&&a<n||o>=t&&o<n})){e.next(!0);return}}else{e.next(!0);return}e.next(!1)});return()=>t.unsubscribe()})};function ee(e){return{id:G,type:c.MenuItemType.SUBITEMS,icon:`AddImageIcon`,tooltip:`docImage.title`,disabled$:q(e),hidden$:(0,c.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC,void 0,t.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}function te(e){return{id:K,title:`docImage.upload.float`,type:c.MenuItemType.BUTTON,hidden$:(0,c.getMenuHiddenObservable)(e,t.UniverInstanceType.UNIVER_DOC,void 0,t.DOCS_ZEN_EDITOR_UNIT_ID_KEY)}}var ne=`@univerjs/docs-drawing-ui`,re=`0.18.0`;let J=`docs-drawing-ui.config`;Symbol(J);let Y={};function ie(e){if(t.JSONX.isNoop(e)||!Array.isArray(e))return null;let n=e.find(e=>Array.isArray(e)&&(e==null?void 0:e[0])===`drawings`);if(n==null||!Array.isArray(n)||n.length<3||typeof n[1]==`string`&&typeof n[2]!=`object`||Array.isArray(n[1])&&typeof n[1][1]!=`object`)return null;let r=[];if(Array.isArray(n==null?void 0:n[1])){for(let e of n)if(Array.isArray(e)){var i,a;r.push({type:!(e==null||(i=e[1])==null)&&i.i?`add`:`remove`,drawingId:e==null?void 0:e[0],drawing:e==null||(a=e[1])==null?void 0:a.i})}}else{var o,s;r.push({type:(o=n[2])!=null&&o.i?`add`:`remove`,drawingId:n[1],drawing:(s=n[2])==null?void 0:s.i})}return r}function ae(e){if(!Array.isArray(e)||e.length<3||e[0]!==`drawingsOrder`)return[];let t=[];for(let n=1;n<e.length;n++){let r=e[n];if(Array.isArray(r)&&typeof r[0]==`number`&&typeof r[1]==`object`)t.push(r[0]);else{t.length=0;break}}return t}let X=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._univerInstanceService=e,this._commandService=t,this._drawingManagerService=n,this._docDrawingService=r,this._renderManagerService=i,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(e=>{if(e.id!==r.RichTextEditingMutation.id)return;let{unitId:t,actions:n}=e.params,i=ie(n);if(i!=null)for(let{type:e,drawingId:n,drawing:r}of i)e===`add`?this._addDrawings(t,[r]):this._removeDrawings(t,[n])})),this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id!==r.RichTextEditingMutation.id)return;let{unitId:t,actions:n}=e.params;ae(n).length>0&&this._updateDrawingsOrder(t)})),this.disposeWithMe(this._commandService.onCommandExecuted(e=>{var n;if(e.id!==t.UndoCommand.id&&e.id!==t.RedoCommand.id)return;let r=(n=this._univerInstanceService.getCurrentUniverDocInstance())==null?void 0:n.getUnitId(),i=this._drawingManagerService.getFocusDrawings();if(r==null||i.length===0)return;let a=this._renderManagerService.getRenderById(r),o=a==null?void 0:a.scene;if(o==null)return!1;o.getTransformerByCreate().refreshControls()}))}_addDrawings(e,t){let n=this._drawingManagerService,r=this._docDrawingService,{subUnitId:i,redo:a,objects:o}=this._docDrawingService.getBatchAddOp(t);n.applyJson1(e,i,a),r.applyJson1(e,i,a),n.addNotification(o),r.addNotification(o)}_removeDrawings(e,t){let n=this._drawingManagerService,r=this._docDrawingService,{subUnitId:i,redo:a,objects:o}=this._docDrawingService.getBatchRemoveOp(t.map(t=>({unitId:e,subUnitId:e,drawingId:t})));n.applyJson1(e,i,a),r.applyJson1(e,i,a),n.removeNotification(o),r.removeNotification(o)}_updateDrawingsOrder(e){let t=this._univerInstanceService.getUniverDocInstance(e);if(t==null)return;let n=t.getSnapshot().drawingsOrder;if(n==null)return;let r=this._drawingManagerService,i=this._docDrawingService;r.setDrawingOrder(e,e,n),i.setDrawingOrder(e,e,n);let a={unitId:e,subUnitId:e,drawingIds:n};r.orderNotification(a),i.orderNotification(a)}};X=T([w(0,t.IUniverInstanceService),w(1,t.ICommandService),w(2,s.IDrawingManagerService),w(3,n.IDocDrawingService),w(4,a.IRenderManagerService)],X);let oe=e=>{let{floatDomInfos:t,scene:n,offset:r,bound:i}=e,a=i.right-i.left,o=i.bottom-i.top;return(0,f.jsx)(`div`,{className:`univer-absolute univer-left-0 univer-top-0`,children:(0,d.useMemo)(()=>t.map(e=>{let{width:t=0,height:r=0,left:i=0,top:a=0}=e.transform,o=H({left:i,right:i+t,top:a,bottom:a+r},n),s={position$:new l.BehaviorSubject(o),position:o,id:e.drawingId,componentKey:e.componentKey,onPointerMove:()=>{},onPointerDown:()=>{},onPointerUp:()=>{},onWheel:()=>{},unitId:e.unitId,data:e.data};return[e.drawingId,s]}).filter(([e,t])=>!(t.position.endX<0||t.position.endY<0||t.position.startX>a||t.position.startY>o)),[t,n,r,a,o]).map(([e,t])=>(0,f.jsx)(c.PrintFloatDomSingle,{layer:t,id:e,position:t.position},e))})},Z=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._docPrintInterceptorService=e,this._drawingRenderService=t,this._drawingManagerService=n,this._componetManager=r,this._injector=i,this._initPrinting(),this._initPrintingDom()}_initPrinting(){this.disposeWithMe(this._docPrintInterceptorService.interceptor.intercept(this._docPrintInterceptorService.interceptor.getInterceptPoints().PRINTING_COMPONENT_COLLECT,{handler:(e,n,r)=>{let{unitId:i,scene:a}=n,o=this._drawingManagerService.getDrawingDataForUnit(i),s=o==null?void 0:o[i];return s&&s.order.forEach(e=>{let n=s.data[e];n.drawingType!==t.DrawingTypeEnum.DRAWING_CHART&&n.drawingType!==t.DrawingTypeEnum.DRAWING_DOM&&this._drawingRenderService.renderDrawing(n,a)}),r()}}))}_initPrintingDom(){this.disposeWithMe(this._docPrintInterceptorService.interceptor.intercept(this._docPrintInterceptorService.interceptor.getInterceptPoints().PRINTING_DOM_COLLECT,{handler:(e,n,r)=>{let{unitId:i}=n,a=this._drawingManagerService.getDrawingDataForUnit(i),s=a==null?void 0:a[i];if(s){let a=s.order.map(e=>{let n=s.data[e];if(n.drawingType===t.DrawingTypeEnum.DRAWING_CHART)return{...n,componentKey:this._componetManager.get(t.DOC_DRAWING_PRINTING_COMPONENT_KEY)};if(n.drawingType===t.DrawingTypeEnum.DRAWING_DOM){let e=this._docPrintInterceptorService.getPrintComponent(n.componentKey);return{...n,componentKey:this._componetManager.get(e||n.componentKey)}}return null}).filter(Boolean);return(0,o.render)((0,f.jsx)((0,c.connectInjector)(oe,this._injector),{unitId:i,floatDomInfos:a,scene:n.scene,skeleton:n.skeleton,offset:n.offset,bound:n.bound}),n.root),e==null||e.add(()=>{(0,o.unmount)(n.root)}),r(e)}}}))}};Z=T([w(0,(0,t.Inject)(i.DocPrintInterceptorService)),w(1,(0,t.Inject)(u.DrawingRenderService)),w(2,s.IDrawingManagerService),w(3,(0,t.Inject)(c.ComponentManager)),w(4,(0,t.Inject)(t.Injector))],Z);function se(e){let{path:t}=e;return t.some(e=>e===`cells`)}let ce=class extends t.Disposable{constructor(e,t,n,r){super(),this._commandService=e,this._univerInstanceService=t,this._drawingManagerService=n,this._renderManagerService=r,S(this,`_liquid`,new a.Liquid),S(this,`_listenerOnImageMap`,new Set),S(this,`_transformerCache`,new Map),S(this,`_anchorShape`,void 0),this._init()}_init(){this._listenDrawingFocus()}_listenDrawingFocus(){this.disposeWithMe(this._drawingManagerService.add$.subscribe(e=>{if(e.length!==0)for(let t of e){let{unitId:e}=t;this._listenerOnImageMap.has(e)||(this._listenTransformerChange(e),this._listenerOnImageMap.add(e))}}))}_listenTransformerChange(e){var n;let r=(n=this._getSceneAndTransformerByDrawingSearch(e))==null?void 0:n.transformer;if(r==null)return;this.disposeWithMe((0,t.toDisposable)(r.changeStart$.subscribe(e=>{this._transformerCache.clear();let{objects:n}=e;for(let e of n.values()){var r;let{oKey:n,width:i,height:a,left:o,top:s,angle:c}=e,l=this._drawingManagerService.getDrawingOKey(n);if(l==null)continue;let u=this._univerInstanceService.getUniverDocInstance(l.unitId),d=u==null||(r=u.getSnapshot().drawings)==null?void 0:r[l.drawingId];if((d==null?void 0:d.layoutType)===t.PositionedObjectLayoutType.INLINE)try{e.setOpacity(.2)}catch{}d!=null&&this._transformerCache.set(l.drawingId,{drawing:d,top:s,left:o,width:i,height:a,angle:c})}})));let i=(0,t.throttle)(this._updateMultipleDrawingDocTransform.bind(this),50);(0,t.throttle)(this._nonInlineDrawingTransform.bind(this),50),this.disposeWithMe((0,t.toDisposable)(r.changing$.subscribe(e=>{let{objects:n,offsetX:r,offsetY:a}=e;if(n.size>1)i(n);else if(n.size===1){let e=this._transformerCache.values().next().value,{width:i,height:o,top:s,left:c,angle:l}=n.values().next().value;if(e&&i===e.width&&o===e.height&&s===e.top&&c===e.left&&l===e.angle)return;e&&(e.drawing.layoutType,t.PositionedObjectLayoutType.INLINE),e&&e.drawing.layoutType===t.PositionedObjectLayoutType.INLINE&&r!=null&&a!=null&&this._updateInlineDrawingAnchor(e.drawing,r,a)}}))),this.disposeWithMe((0,t.toDisposable)(r.changeEnd$.subscribe(e=>{let{objects:n,offsetX:r,offsetY:i}=e;for(let e of n.values()){let n=this._drawingManagerService.getDrawingOKey(e.oKey);if(n==null)continue;let r=this._transformerCache.get(n==null?void 0:n.drawingId);if((r==null?void 0:r.drawing.layoutType)===t.PositionedObjectLayoutType.INLINE)try{e.setOpacity(1)}catch{}}if(this._anchorShape&&this._anchorShape.hide(),n.size>1)this._updateMultipleDrawingDocTransform(n);else if(n.size===1){let e=this._transformerCache.values().next().value,a=n.values().next().value,{width:o,height:s,top:c,left:l,angle:u}=a;if(e&&o===e.width&&s===e.height&&c===e.top&&l===e.left&&u===e.angle)return;e&&e.drawing.layoutType===t.PositionedObjectLayoutType.INLINE?o!==e.width||s!==e.height||u!==e.angle?this._updateDrawingSize(e,a):r!=null&&i!=null&&this._moveInlineDrawing(e.drawing,r,i):e&&this._nonInlineDrawingTransform(e.drawing,a)}this._transformerCache.clear()})))}_updateMultipleDrawingDocTransform(e){if(e.size<1)return;let t=[],n,r;for(let i of e.values()){let{oKey:e,left:a,top:o,angle:s}=i,{width:c,height:l}=i,u=this._drawingManagerService.getDrawingOKey(e);if(u==null)continue;n==null&&(n=u.unitId),r==null&&(r=u.subUnitId);let d=this._transformerCache.get(u.drawingId);if(d==null)continue;let{drawing:f,top:p,left:m,width:h,height:g,angle:_}=d,{width:v,height:y}=this._getPageContentSize(f);if(c=Math.min(c,v),l=Math.min(l,y),(h!==c||g!==l)&&t.push({drawingId:u.drawingId,key:`size`,value:{width:c,height:l}}),_!==s&&t.push({drawingId:u.drawingId,key:`angle`,value:s}),p!==o||m!==a){let e=o-p,n=a-m;e!==0&&t.push({drawingId:u.drawingId,key:`positionV`,value:{relativeFrom:f.docTransform.positionV.relativeFrom,posOffset:f.docTransform.positionV.posOffset+e}}),n!==0&&t.push({drawingId:u.drawingId,key:`positionH`,value:{relativeFrom:f.docTransform.positionH.relativeFrom,posOffset:f.docTransform.positionH.posOffset+n}})}}t.length>0&&n&&r&&this._commandService.executeCommand(P.id,{unitId:n,subUnitId:r,drawings:t})}_updateDrawingAnchor(e){if(this._transformerCache.size!==1)return;let t=this._transformerCache.values().next().value,n=e.values().next().value;this._getDrawingAnchor(t.drawing,n)}_updateInlineDrawingAnchor(e,t,n){var r;if(this._transformerCache.size!==1)return;let{contentBoxPointGroup:i}=(r=this._getInlineDrawingAnchor(e,t,n))==null?{}:r;i!=null&&this._createOrUpdateInlineAnchor(e.unitId,i)}_getInlineDrawingAnchor(e,t,n){var o,s;let c=this._renderManagerService.getRenderById(e.unitId),l=c==null?void 0:c.with(r.DocSkeletonManagerService).getSkeleton();if(c==null)return;let{mainComponent:u,scene:d}=c,f=u,p=d.getViewports()[0],{pageLayoutType:m=a.PageLayoutType.VERTICAL,pageMarginLeft:h,pageMarginTop:g}=f.getOffsetConfig(),_=null,v=!1,y=-1,b=``,x=this._getTransformCoordForDocumentOffset(f,p,t,n);if(x==null)return;let S=(o=this._renderManagerService.getRenderById(e.unitId))==null?void 0:o.with(i.DocSelectionRenderService);if(S==null)return;let C=l==null?void 0:l.findNodeByCoord(x,m,h,g,{strict:!1,segmentId:S.getSegment(),segmentPage:S.getSegmentPage()});if(C){let{node:e,ratioX:t,segmentPage:n,segmentId:r}=C;v=t<.5,_=e,y=n,b=r}if(_==null)return;let w=l==null?void 0:l.findPositionByGlyph(_,y),T=this._getDocObject();if(w==null||l==null||T==null||se(w))return;let E={...w,isBack:v},{cursorList:D,contentBoxPointGroup:O}=new i.NodePositionConvertToCursor(T.document.getOffsetConfig(),l).getRangePointData(E,E),{startOffset:k}=(s=(0,i.getOneTextSelectionRange)(D))==null?{}:s;if(k!=null)return{offset:k,contentBoxPointGroup:O,segmentId:b,segmentPage:y}}_getDrawingAnchor(e,n){var o,s,c,l,u;let d=this._renderManagerService.getRenderById(e.unitId),f=d==null?void 0:d.with(r.DocSkeletonManagerService).getSkeleton(),p=f==null?void 0:f.getSkeletonData();if(p==null||d==null)return;let{pages:m,skeHeaders:h,skeFooters:g}=p,{mainComponent:_,scene:v}=d,y=_,b=v.getViewports()[0],{pageLayoutType:x=a.PageLayoutType.VERTICAL,pageMarginLeft:S,pageMarginTop:C,docsLeft:w,docsTop:T}=y.getOffsetConfig(),{left:E,top:D,angle:O}=n,{width:k,height:A}=n,{positionV:j,positionH:M}=e.docTransform,{width:N,height:P}=this._getPageContentSize(e);k=Math.min(k,N),A=Math.min(A,P);let F=null,I=``,L=-1,R={...e.docTransform,size:{width:k,height:A},angle:O},{x:z,y:B}=v.getViewportScrollXY(b),V=this._getTransformCoordForDocumentOffset(y,b,E-z,D-B);if(V==null)return;let H=(o=this._renderManagerService.getRenderById(e.unitId))==null?void 0:o.with(i.DocSelectionRenderService);if(H==null)return;let U=f==null?void 0:f.findNodeByCoord(V,x,S,C,{strict:!1,segmentId:H.getSegment(),segmentPage:H.getSegmentPage()});if(U){let{node:e,segmentPage:t,segmentId:n}=U;F=e,L=t,I=n}if(F==null)return;let W=(s=F.parent)==null?void 0:s.parent,G=W==null?void 0:W.parent,K=(c=G==null?void 0:G.lines.find(e=>e.paragraphIndex===(W==null?void 0:W.paragraphIndex)&&e.paragraphStart))==null?G==null?void 0:G.lines[0]:c,q=G==null||(l=G.parent)==null?void 0:l.parent;if(W==null||G==null||K==null||q==null)return;this._liquid.reset();let ee=q.type;for(let e of m){let{headerId:t,footerId:n,pageHeight:r,pageWidth:i,marginLeft:o,marginBottom:s}=e,c=m.indexOf(e);if(L>-1&&c===L){switch(ee){case a.DocumentSkeletonPageType.HEADER:{var te;let e=(te=h.get(t))==null?void 0:te.get(i);if(e)this._liquid.translatePagePadding({marginTop:e.marginTop,marginLeft:o});else throw Error(`header skeleton not found`);break}case a.DocumentSkeletonPageType.FOOTER:{var ne;let e=(ne=g.get(n))==null?void 0:ne.get(i);if(e)this._liquid.translatePagePadding({marginTop:r-s+e.marginTop,marginLeft:o});else throw Error(`footer skeleton not found`);break}}break}if(this._liquid.translatePagePadding(e),e===q)break;this._liquid.restorePagePadding(e),this._liquid.translatePage(e,x,S,C)}if(j.relativeFrom===t.ObjectRelativeFromV.LINE)F=W.divides[0].glyphGroup[0];else{var re,J;F=(re=(J=K.divides)==null||(J=J[0])==null||(J=J.glyphGroup)==null?void 0:J[0])==null?F:re}switch(R.positionH={relativeFrom:M.relativeFrom,posOffset:E-this._liquid.x-w},M.relativeFrom){case t.ObjectRelativeFromH.MARGIN:R.positionH.posOffset=E-this._liquid.x-w-q.marginLeft;break;case t.ObjectRelativeFromH.COLUMN:R.positionH.posOffset=E-this._liquid.x-w-G.left;break}switch(R.positionV={relativeFrom:j.relativeFrom,posOffset:D-this._liquid.y-T},j.relativeFrom){case t.ObjectRelativeFromV.PAGE:R.positionV.posOffset=D-this._liquid.y-T-q.marginTop;break;case t.ObjectRelativeFromV.LINE:R.positionV.posOffset=D-this._liquid.y-T-W.top;break;case t.ObjectRelativeFromV.PARAGRAPH:R.positionV.posOffset=D-this._liquid.y-T-K.top;break}if(F==null)return;let Y=f==null?void 0:f.findPositionByGlyph(F,L),ie=this._getDocObject();if(Y==null||f==null||ie==null||se(Y))return;let ae={...Y,isBack:!1},{cursorList:X}=new i.NodePositionConvertToCursor(ie.document.getOffsetConfig(),f).getRangePointData(ae,ae),{startOffset:oe}=(u=(0,i.getOneTextSelectionRange)(X))==null?{}:u;if(oe!=null)return{offset:oe,docTransform:R,segmentId:I,segmentPage:L}}_updateDrawingSize(e,t){let n=[],{drawing:r,width:i,height:a,angle:o}=e,{unitId:s,subUnitId:c}=r,{width:l,height:u,angle:d}=t,{width:f,height:p}=this._getPageContentSize(r);l=Math.min(f,l),u=Math.min(p,u),(l!==i||u!==a)&&n.push({drawingId:r.drawingId,key:`size`,value:{width:l,height:u}}),d!==o&&n.push({drawingId:r.drawingId,key:`angle`,value:d}),n.length>0&&s&&c&&this._commandService.executeCommand(P.id,{unitId:s,subUnitId:c,drawings:n})}_moveInlineDrawing(e,t,n){let r=this._getInlineDrawingAnchor(e,t,n),{offset:i,segmentId:a,segmentPage:o}=r==null?{}:r;return this._commandService.executeCommand(F.id,{unitId:e.unitId,subUnitId:e.unitId,drawing:e,offset:i,segmentId:a,segmentPage:o,needRefreshDrawings:i==null})}_limitDrawingInPage(e,n){let i=this._renderManagerService.getRenderById(e.unitId),{left:a,top:o,width:s,height:c,angle:l}=n,u=i==null?void 0:i.with(r.DocSkeletonManagerService).getSkeleton(),d=u==null?void 0:u.getSkeletonData(),{pages:f}=d==null?{}:d;if(d==null||i==null||f==null)return{left:a,top:o,width:s,height:c,angle:l};let{mainComponent:p}=i,{top:m,pageLayoutType:h,pageMarginLeft:g,pageMarginTop:_}=p,v=o;this._liquid.reset();for(let e of f){let{marginBottom:n,pageHeight:r}=e,i=f[f.indexOf(e)+1];i!=null&&(t.Tools.hasIntersectionBetweenTwoRanges(o,o+c,this._liquid.y+m+r-n,this._liquid.y+m+r+_+i.marginTop)&&(v=o+c/2<this._liquid.y+m+r+_/2?Math.min(o,this._liquid.y+m+r-n-c):Math.max(o,this._liquid.y+m+r+_+i.marginTop)),this._liquid.translatePage(e,h,g,_))}return{left:a,top:v,width:s,height:c,angle:l}}_nonInlineDrawingTransform(e,n,r=!1){let i=e.isMultiTransform===t.BooleanNumber.TRUE?n:this._limitDrawingInPage(e,n);if(r&&i.top!==n.top)return;let a=this._getDrawingAnchor(e,i),{offset:o,docTransform:s,segmentId:c,segmentPage:l}=a==null?{}:a;return o==null||s==null?this._updateMultipleDrawingDocTransform(new Map([[e.drawingId,n]])):this._commandService.executeCommand(I.id,{unitId:e.unitId,subUnitId:e.unitId,drawing:e,offset:o,docTransform:s,segmentId:c,segmentPage:l})}_getSceneAndTransformerByDrawingSearch(e){if(e==null)return;let t=this._renderManagerService.getRenderById(e),n=t==null?void 0:t.scene;if(n!=null)return{scene:n,transformer:n.getTransformerByCreate()}}_getTransformCoordForDocumentOffset(e,t,n,r){let{documentTransform:i}=e.getOffsetConfig(),o=t.transformVector2SceneCoord(a.Vector2.FromArray([n,r]));if(o)return i.clone().invert().applyPoint(o)}_createOrUpdateInlineAnchor(e,n){let r=this._renderManagerService.getRenderById(e);if(r==null)return;let{mainComponent:o,scene:s}=r,{docsLeft:c,docsTop:l}=o.getOffsetConfig(),{left:u,top:d,height:f}=(0,i.getAnchorBounding)(n),p=u+c,m=d+l;if(this._anchorShape){this._anchorShape.transformByState({left:p,top:m,height:f}),this._anchorShape.show();return}let h=new a.Rect(`__InlineDrawingAnchor__`+(0,t.generateRandomId)(6),{left:p,top:m,height:f,strokeWidth:2,stroke:(0,a.getColor)(t.COLORS.darkgray,1),evented:!1});this._anchorShape=h,s.addObject(h,i.TEXT_RANGE_LAYER_INDEX)}_getDocObject(){return(0,i.getDocObject)(this._univerInstanceService,this._renderManagerService)}_getPageContentSize(e){let t=this._renderManagerService.getRenderById(e.unitId),n=t==null?void 0:t.with(r.DocSkeletonManagerService).getSkeleton(),i=n==null?void 0:n.getSkeletonData();if(i==null||t==null)return{width:500,height:500};let{pages:a}=i,o=null;for(let t of a){let{skeDrawings:n}=t;if(n.has(e.drawingId)){o=t;break}}if(o){let{pageWidth:e,pageHeight:t,marginLeft:n,marginBottom:r,marginRight:i,marginTop:a}=o;return{width:Math.max(500,e-n-i),height:Math.max(500,t-a-r)}}else return{width:500,height:500}}};ce=T([w(0,t.ICommandService),w(1,t.IUniverInstanceService),w(2,s.IDrawingManagerService),w(3,a.IRenderManagerService)],ce);let le={[c.RibbonInsertGroup.MEDIA]:{[G]:{order:0,menuItemFactory:ee,[K]:{order:0,menuItemFactory:te}}}},ue=-1e3,de=1e3,fe=e=>{let n=(0,c.useDependency)(t.ICommandService),l=(0,c.useDependency)(t.LocaleService),u=(0,c.useDependency)(s.IDrawingManagerService),p=(0,c.useDependency)(a.IRenderManagerService),m=(0,c.useDependency)(t.IUniverInstanceService),{drawings:h}=e,g=h[0];if(g==null)return;let{unitId:_}=g,v=m.getUniverDocInstance(_),y=v==null?void 0:v.getSnapshot().documentStyle.documentFlavor,b=p.getRenderById(_),x=b==null?void 0:b.scene;if(x==null)return;let S=x.getTransformerByCreate(),C=[{label:l.t(`image-position.column`),value:String(t.ObjectRelativeFromH.COLUMN)},{label:l.t(`image-position.page`),value:String(t.ObjectRelativeFromH.PAGE)},{label:l.t(`image-position.margin`),value:String(t.ObjectRelativeFromH.MARGIN)}],w=[{label:l.t(`image-position.line`),value:String(t.ObjectRelativeFromV.LINE),disabled:y===t.DocumentFlavor.MODERN},{label:l.t(`image-position.page`),value:String(t.ObjectRelativeFromV.PAGE),disabled:y===t.DocumentFlavor.MODERN},{label:l.t(`image-position.margin`),value:String(t.ObjectRelativeFromV.MARGIN),disabled:y===t.DocumentFlavor.MODERN},{label:l.t(`image-position.paragraph`),value:String(t.ObjectRelativeFromV.PARAGRAPH)}],[T,E]=(0,d.useState)(!0),[D,O]=(0,d.useState)({relativeFrom:t.ObjectRelativeFromH.PAGE,posOffset:0}),[k,A]=(0,d.useState)({relativeFrom:t.ObjectRelativeFromV.PAGE,posOffset:0}),[j,M]=(0,d.useState)(!0),[N,F]=(0,d.useState)(!0);function I(e,t){var r;e===`positionH`?O(t):A(t);let a=u.getFocusDrawings();if(a.length===0)return;let o=a.map(e=>({unitId:e.unitId,subUnitId:e.subUnitId,drawingId:e.drawingId}));n.executeCommand(P.id,{unitId:a[0].unitId,subUnitId:a[0].unitId,drawings:o.map(n=>({drawingId:n.drawingId,key:e,value:t}))});let s=(r=p.getRenderById(_))==null?void 0:r.with(i.DocSelectionRenderService);s&&s.blur(),S.refreshControls()}function L(e){var n;let i=D.relativeFrom,a=D.posOffset,o=Number(e);if(i===o)return;let s=u.getFocusDrawings();if(s.length===0)return;let c=s[0].drawingId,l=s[0].unitId,d=null,f=0,m=(n=p.getRenderById(l))==null?void 0:n.with(r.DocSkeletonManagerService).getSkeleton(),h=m==null?void 0:m.getSkeletonData();if(h==null)return;let{pages:g,skeHeaders:_,skeFooters:v}=h;for(let e of g){var y,b;let{marginLeft:t,skeDrawings:n,headerId:r,footerId:i,pageWidth:a}=e;if(n.has(c)){d=n.get(c),f=t;break}let o=(y=_.get(r))==null?void 0:y.get(a);if(o!=null&&o.skeDrawings.has(c)){d=o==null?void 0:o.skeDrawings.get(c),f=t;break}let s=(b=v.get(i))==null?void 0:b.get(a);if(s!=null&&s.skeDrawings.has(c)){d=s==null?void 0:s.skeDrawings.get(c),f=t;break}}if(d==null)return;let x=0;i===t.ObjectRelativeFromH.COLUMN?x-=d.columnLeft:i===t.ObjectRelativeFromH.MARGIN&&(x-=f),o===t.ObjectRelativeFromH.COLUMN?x+=d.columnLeft:o===t.ObjectRelativeFromH.MARGIN?x+=f:t.ObjectRelativeFromH.PAGE,I(`positionH`,{relativeFrom:o,posOffset:(a==null?0:a)-x})}function R(e){var n,a,o,s,c;let l=k.relativeFrom,d=k.posOffset,f=Number(e);if(l===f)return;let h=u.getFocusDrawings();if(h.length===0)return;let{drawingId:g,unitId:_}=h[0],v=m.getUniverDocInstance(_),y=(n=p.getRenderById(_))==null?void 0:n.with(r.DocSkeletonManagerService).getSkeleton(),b=(a=p.getRenderById(_))==null?void 0:a.with(i.DocSelectionRenderService),x=b==null?void 0:b.getSegment(),S=b==null?void 0:b.getSegmentPage(),C=v==null||(o=v.getSelfOrHeaderFooterModel(x).getBody())==null||(o=o.customBlocks)==null?void 0:o.find(e=>e.blockId===g);if(C==null||y==null||b==null)return;let{startIndex:w}=C,T=y.findNodeByCharIndex(w,x,S),E=T==null||(s=T.parent)==null?void 0:s.parent,D=E==null?void 0:E.parent,O=D==null?void 0:D.lines.find(e=>e.paragraphIndex===(E==null?void 0:E.paragraphIndex)&&e.paragraphStart),A=D==null||(c=D.parent)==null?void 0:c.parent;if(T==null||E==null||O==null||D==null||A==null)return;let j=0;l===t.ObjectRelativeFromV.PARAGRAPH?j-=O.top:l===t.ObjectRelativeFromV.LINE?j-=E.top:l===t.ObjectRelativeFromV.PAGE&&(j+=A.marginTop),f===t.ObjectRelativeFromV.PARAGRAPH?j+=O.top:f===t.ObjectRelativeFromV.LINE?j+=E.top:f===t.ObjectRelativeFromV.PAGE&&(j-=A.marginTop),I(`positionV`,{relativeFrom:f,posOffset:(d==null?0:d)-j})}function z(e){var n;let r=v==null?void 0:v.getSnapshot(),i=r==null||(n=r.drawings)==null?void 0:n[e.drawingId];if(i==null)return;let{layoutType:a}=i,{positionH:o,positionV:s}=i.docTransform;O(o),A(s),E(a===t.PositionedObjectLayoutType.INLINE),M(s.relativeFrom===t.ObjectRelativeFromV.PARAGRAPH||s.relativeFrom===t.ObjectRelativeFromV.LINE)}function B(){let e=u.getFocusDrawings();e.length!==0&&z(e[0])}function V(e){M(e),R(e?String(t.ObjectRelativeFromV.PARAGRAPH):String(t.ObjectRelativeFromV.PAGE))}return(0,d.useEffect)(()=>{B();let e=u.focus$.subscribe(e=>{if(e.length===0){F(!1);return}F(!0),z(e[0])}),t=n.onCommandExecuted(async e=>{e.id===r.RichTextEditingMutation.id&&B()});return()=>{e.unsubscribe(),t.dispose()}},[]),(0,f.jsxs)(`div`,{className:(0,o.clsx)(`univer-grid univer-gap-2 univer-py-2 univer-text-gray-400`,{"univer-hidden":!N}),children:[(0,f.jsx)(`header`,{className:`
|
|
2
|
+
univer-text-gray-600
|
|
3
|
+
dark:!univer-text-gray-200
|
|
4
|
+
`,children:(0,f.jsx)(`div`,{children:l.t(`image-position.title`)})}),(0,f.jsx)(`div`,{className:`
|
|
5
|
+
univer-text-gray-600
|
|
6
|
+
dark:!univer-text-gray-200
|
|
7
|
+
`,children:(0,f.jsx)(`div`,{children:l.t(`image-position.horizontal`)})}),(0,f.jsxs)(`div`,{className:`
|
|
8
|
+
univer-grid univer-grid-cols-2 univer-gap-2
|
|
9
|
+
[&>div]:univer-grid [&>div]:univer-gap-2
|
|
10
|
+
`,children:[(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:l.t(`image-position.absolutePosition`)}),(0,f.jsx)(o.InputNumber,{min:ue,max:de,precision:1,disabled:T,value:D.posOffset,onChange:e=>{I(`positionH`,{relativeFrom:D.relativeFrom,posOffset:e})}})]}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:l.t(`image-position.toTheRightOf`)}),(0,f.jsx)(o.Select,{value:String(D.relativeFrom),disabled:T,options:C,onChange:L})]})]}),(0,f.jsx)(`div`,{className:`
|
|
11
|
+
univer-text-gray-600
|
|
12
|
+
dark:!univer-text-gray-200
|
|
13
|
+
`,children:(0,f.jsx)(`div`,{children:l.t(`image-position.vertical`)})}),(0,f.jsxs)(`div`,{className:`
|
|
14
|
+
univer-grid univer-grid-cols-2 univer-gap-2
|
|
15
|
+
[&>div]:univer-grid [&>div]:univer-gap-2
|
|
16
|
+
`,children:[(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:l.t(`image-position.absolutePosition`)}),(0,f.jsx)(o.InputNumber,{min:ue,max:de,precision:1,disabled:T,value:k.posOffset,onChange:e=>{I(`positionV`,{relativeFrom:k.relativeFrom,posOffset:e})}})]}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:l.t(`image-position.bellow`)}),(0,f.jsx)(o.Select,{disabled:T,value:String(k.relativeFrom),options:w,onChange:R})]})]}),(0,f.jsx)(`div`,{className:`
|
|
17
|
+
univer-text-gray-600
|
|
18
|
+
dark:!univer-text-gray-200
|
|
19
|
+
`,children:(0,f.jsx)(`div`,{children:l.t(`image-position.options`)})}),(0,f.jsx)(`div`,{children:(0,f.jsx)(o.Checkbox,{disabled:T,checked:j,onChange:V,children:l.t(`image-position.moveObjectWithText`)})})]})},pe=e=>{let n=(0,c.useDependency)(t.ICommandService),i=(0,c.useDependency)(t.LocaleService),l=(0,c.useDependency)(s.IDrawingManagerService),u=(0,c.useDependency)(a.IRenderManagerService),p=(0,c.useDependency)(t.IUniverInstanceService),{drawings:m}=e,h=m[0];if(h==null)return null;let{unitId:g}=h,_=p.getUniverDocInstance(g),v=u.getRenderById(g);if((v==null?void 0:v.scene)==null)return null;let[y,b]=(0,d.useState)(!0),[x,S]=(0,d.useState)(!0),[C,w]=(0,d.useState)(!0),[T,E]=(0,d.useState)(O.INLINE),[D,k]=(0,d.useState)(``),[A,P]=(0,d.useState)({distT:0,distL:0,distB:0,distR:0}),[F,I]=(0,d.useState)(!0);function L(e){E(e);let t=l.getFocusDrawings();if(t.length===0)return;let{unitId:r,subUnitId:i}=t[0],a=t.map(({unitId:e,subUnitId:t,drawingId:n})=>({unitId:e,subUnitId:t,drawingId:n}));n.executeCommand(j.id,{unitId:r,subUnitId:i,drawings:a,wrappingStyle:e})}function R(e){k(e);let t=l.getFocusDrawings();if(t.length===0)return;let r=t.map(e=>({unitId:e.unitId,subUnitId:e.subUnitId,drawingId:e.drawingId}));n.executeCommand(N.id,{unitId:t[0].unitId,subUnitId:t[0].unitId,drawings:r,wrapText:e})}function z(e,t){if(e==null)return;P({...A,[t]:e});let r=l.getFocusDrawings();if(r.length===0)return;let i=r.map(e=>({unitId:e.unitId,subUnitId:e.subUnitId,drawingId:e.drawingId}));n.executeCommand(M.id,{unitId:r[0].unitId,subUnitId:r[0].unitId,drawings:i,dist:{[t]:e}})}function B(){let e=l.getFocusDrawings();e.length!==0&&V(e[0])}function V(e){var n;let r=_==null||(n=_.getSnapshot())==null||(n=n.drawings)==null?void 0:n[e.drawingId];if(r==null)return;let{distT:i=0,distL:a=0,distB:o=0,distR:s=0,layoutType:c=t.PositionedObjectLayoutType.INLINE,behindDoc:l=t.BooleanNumber.FALSE,wrapText:u=t.WrapTextType.BOTH_SIDES}=r;if(P({distT:i,distL:a,distB:o,distR:s}),k(u),b(c!==t.PositionedObjectLayoutType.WRAP_SQUARE),c===t.PositionedObjectLayoutType.WRAP_NONE||c===t.PositionedObjectLayoutType.INLINE?S(!0):S(!1),c===t.PositionedObjectLayoutType.WRAP_NONE||c===t.PositionedObjectLayoutType.INLINE||c===t.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM?w(!0):w(!1),c===t.PositionedObjectLayoutType.WRAP_NONE)l===t.BooleanNumber.TRUE?E(O.BEHIND_TEXT):E(O.IN_FRONT_OF_TEXT);else switch(c){case t.PositionedObjectLayoutType.INLINE:E(O.INLINE);break;case t.PositionedObjectLayoutType.WRAP_SQUARE:E(O.WRAP_SQUARE);break;case t.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM:E(O.WRAP_TOP_AND_BOTTOM);break;default:throw Error(`Unsupported layout type: ${c}`)}}return(0,d.useEffect)(()=>{B();let e=l.focus$.subscribe(e=>{if(e.length===0){I(!1);return}I(!0),V(e[0])}),t=n.onCommandExecuted(async e=>{e.id===r.RichTextEditingMutation.id&&B()});return()=>{e.unsubscribe(),t.dispose()}},[]),(0,f.jsxs)(`div`,{className:(0,o.clsx)(`univer-grid univer-gap-2 univer-py-2 univer-text-gray-400`,{"univer-hidden":!F}),children:[(0,f.jsx)(`header`,{className:`
|
|
20
|
+
univer-text-gray-600
|
|
21
|
+
dark:!univer-text-gray-200
|
|
22
|
+
`,children:(0,f.jsx)(`div`,{children:i.t(`image-text-wrap.title`)})}),(0,f.jsx)(`div`,{className:`
|
|
23
|
+
univer-text-gray-600
|
|
24
|
+
dark:!univer-text-gray-200
|
|
25
|
+
`,children:(0,f.jsx)(`div`,{children:i.t(`image-text-wrap.wrappingStyle`)})}),(0,f.jsx)(`div`,{children:(0,f.jsxs)(o.RadioGroup,{value:T,onChange:L,direction:`vertical`,children:[(0,f.jsx)(o.Radio,{value:O.INLINE,children:i.t(`image-text-wrap.inline`)}),(0,f.jsx)(o.Radio,{value:O.WRAP_SQUARE,children:i.t(`image-text-wrap.square`)}),(0,f.jsx)(o.Radio,{value:O.WRAP_TOP_AND_BOTTOM,children:i.t(`image-text-wrap.topAndBottom`)}),(0,f.jsx)(o.Radio,{value:O.BEHIND_TEXT,children:i.t(`image-text-wrap.behindText`)}),(0,f.jsx)(o.Radio,{value:O.IN_FRONT_OF_TEXT,children:i.t(`image-text-wrap.inFrontText`)})]})}),(0,f.jsx)(`div`,{className:`
|
|
26
|
+
univer-text-gray-600
|
|
27
|
+
dark:!univer-text-gray-200
|
|
28
|
+
`,children:(0,f.jsx)(`div`,{children:i.t(`image-text-wrap.wrapText`)})}),(0,f.jsx)(`div`,{children:(0,f.jsxs)(o.RadioGroup,{disabled:y,value:D,onChange:R,direction:`horizontal`,children:[(0,f.jsx)(o.Radio,{value:t.WrapTextType.BOTH_SIDES,children:i.t(`image-text-wrap.bothSide`)}),(0,f.jsx)(o.Radio,{value:t.WrapTextType.LEFT,children:i.t(`image-text-wrap.leftOnly`)}),(0,f.jsx)(o.Radio,{value:t.WrapTextType.RIGHT,children:i.t(`image-text-wrap.rightOnly`)})]})}),(0,f.jsx)(`div`,{className:`
|
|
29
|
+
univer-text-gray-600
|
|
30
|
+
dark:!univer-text-gray-200
|
|
31
|
+
`,children:(0,f.jsx)(`div`,{children:i.t(`image-text-wrap.distanceFromText`)})}),(0,f.jsxs)(`div`,{className:`
|
|
32
|
+
univer-grid univer-grid-cols-2 univer-gap-2
|
|
33
|
+
[&>div]:univer-grid [&>div]:univer-gap-2
|
|
34
|
+
`,children:[(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:i.t(`image-text-wrap.top`)}),(0,f.jsx)(o.InputNumber,{min:0,max:100,disabled:x,precision:1,value:A.distT,onChange:e=>{z(e,`distT`)}})]}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:i.t(`image-text-wrap.left`)}),(0,f.jsx)(o.InputNumber,{min:0,max:100,disabled:C,precision:1,value:A.distL,onChange:e=>{z(e,`distL`)}})]})]}),(0,f.jsxs)(`div`,{className:`
|
|
35
|
+
univer-grid univer-grid-cols-2 univer-gap-2
|
|
36
|
+
[&>div]:univer-grid [&>div]:univer-gap-2
|
|
37
|
+
`,children:[(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:i.t(`image-text-wrap.bottom`)}),(0,f.jsx)(o.InputNumber,{min:0,max:100,disabled:x,precision:1,value:A.distB,onChange:e=>{z(e,`distB`)}})]}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`span`,{children:i.t(`image-text-wrap.right`)}),(0,f.jsx)(o.InputNumber,{min:0,max:100,disabled:C,precision:1,value:A.distR,onChange:e=>{z(e,`distR`)}})]})]})]})},me=()=>{let e=(0,c.useDependency)(s.IDrawingManagerService),[t,n]=(0,d.useState)(e.getFocusDrawings());return(0,d.useEffect)(()=>{let t=e.focus$.subscribe(e=>{n(e)});return()=>{t.unsubscribe()}},[]),!!(t!=null&&t.length)&&(0,f.jsxs)(`div`,{className:`univer-text-sm`,children:[(0,f.jsx)(u.DrawingCommonPanel,{drawings:t,hasAlign:!1,hasCropper:!1,hasGroup:!1,hasTransform:!1}),(0,f.jsx)(pe,{drawings:t}),(0,f.jsx)(fe,{drawings:t})]})};function Q(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&e.getContextValue(t.FOCUSING_COMMON_DRAWINGS)}let he={id:L.id,description:`shortcut.drawing-move-down`,group:`4_drawing-view`,binding:c.KeyCode.ARROW_DOWN,priority:100,preconditions:Q,staticParameters:{direction:t.Direction.DOWN}},ge={id:L.id,description:`shortcut.drawing-move-up`,group:`4_drawing-view`,binding:c.KeyCode.ARROW_UP,priority:100,preconditions:Q,staticParameters:{direction:t.Direction.UP}},_e={id:L.id,description:`shortcut.drawing-move-left`,group:`4_drawing-view`,binding:c.KeyCode.ARROW_LEFT,priority:100,preconditions:Q,staticParameters:{direction:t.Direction.LEFT}},ve={id:L.id,description:`shortcut.drawing-move-right`,group:`4_drawing-view`,binding:c.KeyCode.ARROW_RIGHT,priority:100,preconditions:Q,staticParameters:{direction:t.Direction.RIGHT}},ye={id:m.id,description:`shortcut.drawing-delete`,group:`4_drawing-view`,preconditions:Q,binding:c.KeyCode.DELETE,mac:c.KeyCode.BACKSPACE},be=class extends t.Disposable{constructor(e,t,n,r){super(),this._componentManager=e,this._menuManagerService=t,this._commandService=n,this._shortcutService=r,this._init()}_initCustomComponents(){let e=this._componentManager;this.disposeWithMe(e.register(z,me))}_initMenus(){this._menuManagerService.mergeMenu(le)}_initCommands(){[D,g,j,M,N,P,F,I,p,B,R,V,h,v,L,m,_].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}_initShortcuts(){[he,ge,_e,ve,ye].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}_init(){this._initCommands(),this._initCustomComponents(),this._initMenus(),this._initShortcuts()}};be=T([w(0,(0,t.Inject)(c.ComponentManager)),w(1,c.IMenuManagerService),w(2,t.ICommandService),w(3,c.IShortcutService)],be);let xe=class extends t.Disposable{constructor(e,t,n,r,i,o,s,c){super(),this._context=e,this._docSkeletonManagerService=t,this._commandService=n,this._editorService=r,this._drawingManagerService=i,this._docRefreshDrawingsService=o,this._univerInstanceService=s,this._lifecycleService=c,S(this,`_liquid`,new a.Liquid),this._initialize(),this._commandExecutedListener()}_initialize(){this._initialRenderRefresh(),this._drawingInitializeListener(),this._initResize()}_initialRenderRefresh(){this.disposeWithMe(this._docSkeletonManagerService.currentSkeleton$.subscribe(e=>{e!=null&&this._refreshDrawing(e)})),this.disposeWithMe(this._docRefreshDrawingsService.refreshDrawings$.subscribe(e=>{e!=null&&this._refreshDrawing(e)}))}_commandExecutedListener(){let e=[r.RichTextEditingMutation.id,i.SetDocZoomRatioOperation.id];this.disposeWithMe(this._commandService.onCommandExecuted(n=>{if(e.includes(n.id)){let{unitId:e}=n.params,{unitId:r,mainComponent:i}=this._context;if(e!==r)return;let a=this._docSkeletonManagerService.getSkeleton();if(a==null)return;if(this._editorService.isEditor(r)&&r!==t.DOCS_ZEN_EDITOR_UNIT_ID_KEY){i==null||i.makeDirty();return}this._refreshDrawing(a)}}))}_initResize(){this.disposeWithMe((0,t.fromEventSubject)(this._context.engine.onTransformChange$).pipe((0,l.filter)(e=>e.type===a.TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),(0,l.debounceTime)(16)).subscribe(()=>{var e;let t=this._docSkeletonManagerService.getSkeleton(),{scene:n}=this._context;(e=n.getTransformer())==null||e.refreshControls(),this._refreshDrawing(t)}))}_refreshDrawing(e){let t=e==null?void 0:e.getSkeletonData(),{mainComponent:n,unitId:r}=this._context,i=n;if(!t)return;let{left:a,top:o,pageLayoutType:s,pageMarginLeft:c,pageMarginTop:l}=i,{pages:u,skeHeaders:d,skeFooters:f}=t,p={};this._liquid.reset();for(let e=0,t=u.length;e<t;e++){let t=u[e],{headerId:n,footerId:i,pageWidth:g}=t;if(n){var m;let e=(m=d.get(n))==null?void 0:m.get(g);e&&this._calculateDrawingPosition(r,e,a,o,p,e.marginTop,t.marginLeft)}if(i){var h;let e=(h=f.get(i))==null?void 0:h.get(g);e&&this._calculateDrawingPosition(r,e,a,o,p,t.pageHeight-t.marginBottom+e.marginTop,t.marginLeft)}this._calculateDrawingPosition(r,t,a,o,p,t.marginTop,t.marginLeft),this._liquid.translatePage(t,s,c,l)}let g=Object.values(p),_=g.filter(e=>!e.isMultiTransform),v=g.filter(e=>e.isMultiTransform);_.length>0&&this._drawingManagerService.refreshTransform(_),this._handleMultiDrawingsTransform(v)}_handleMultiDrawingsTransform(e){let{scene:n,unitId:r}=this._context,i=n.getTransformerByCreate();e.forEach(e=>{let t=this._drawingManagerService.getDrawingByParam(e);t!=null&&(t.transform=e.transform,t.transforms=e.transforms,t.isMultiTransform=e.isMultiTransform)});let a=[...i.getSelectedObjectMap().keys()],o=Object.values(this._drawingManagerService.getDrawingData(r,r)).filter(e=>e.isMultiTransform===t.BooleanNumber.TRUE);this._drawingManagerService.removeNotification(o),e.length>0&&this._drawingManagerService.addNotification(e);for(let e of a){let t=n.getObject(e);t&&i.setSelectedControl(t)}}_calculateDrawingPosition(e,n,r,i,a,o,s){let{skeDrawings:c}=n;this._liquid.translatePagePadding({marginTop:o,marginLeft:s}),c.forEach(n=>{let{aLeft:o,aTop:s,height:c,width:l,angle:u,drawingId:d,drawingOrigin:f}=n,p=f.layoutType===t.PositionedObjectLayoutType.WRAP_NONE&&f.behindDoc===t.BooleanNumber.TRUE,{isMultiTransform:m=t.BooleanNumber.FALSE}=f,h={left:o+r+this._liquid.x,top:s+i+this._liquid.y,width:l,height:c,angle:u};a[d]==null?a[d]={unitId:e,subUnitId:e,drawingId:d,behindText:p,transform:h,transforms:[h],isMultiTransform:m}:m===t.BooleanNumber.TRUE&&a[d].transforms.push(h)}),this._liquid.restorePagePadding({marginTop:o,marginLeft:s})}_drawingInitializeListener(){let e=()=>{let e=this._docSkeletonManagerService.getSkeleton();e!=null&&(this._refreshDrawing(e),this._drawingManagerService.initializeNotification(this._context.unitId))};this._lifecycleService.stage>=t.LifecycleStages.Rendered?this._docSkeletonManagerService.getSkeleton()?e():setTimeout(e,500):this.disposeWithMe(this._lifecycleService.lifecycle$.pipe((0,l.filter)(e=>e===t.LifecycleStages.Rendered)).subscribe(e))}};xe=T([w(1,(0,t.Inject)(r.DocSkeletonManagerService)),w(2,t.ICommandService),w(3,i.IEditorService),w(4,s.IDrawingManagerService),w(5,(0,t.Inject)(C)),w(6,t.IUniverInstanceService),w(7,(0,t.Inject)(t.LifecycleService))],xe);let Se=class extends t.RxDisposable{constructor(e,t,n,r,i){super(),this._drawingManagerService=e,this._canvasPopManagerService=t,this._renderManagerService=n,this._univerInstanceService=r,this._contextService=i,S(this,`_initImagePopupMenu`,new Set),S(this,`_disposePopups`,[]),this._init()}_init(){this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_DOC).pipe((0,l.takeUntil)(this.dispose$)).subscribe(e=>this._create(e))),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(t.UniverInstanceType.UNIVER_DOC).pipe((0,l.takeUntil)(this.dispose$)).subscribe(e=>this._dispose(e))),this._univerInstanceService.getAllUnitsForType(t.UniverInstanceType.UNIVER_DOC).forEach(e=>this._create(e))}_dispose(e){let t=e.getUnitId();this._disposePopups.length&&(this._disposePopups.forEach(e=>e.dispose()),this._disposePopups.length=0),this._renderManagerService.removeRender(t)}_create(e){if(!e)return;let n=e.getUnitId();(0,t.isInternalEditorID)(n)||this._renderManagerService.has(n)&&!this._initImagePopupMenu.has(n)&&(this._popupMenuListener(n),this._initImagePopupMenu.add(n))}_hasCropObject(e){let t=e.getAllObjects();for(let e of t)if(e instanceof u.ImageCropperObject)return!0;return!1}_popupMenuListener(e){var n;let r=(n=this._renderManagerService.getRenderById(e))==null?void 0:n.scene;if(!r)return;let i=r.getTransformerByCreate();if(!i)return;let a=this._disposePopups;this.disposeWithMe(i.createControl$.subscribe(()=>{if(this._hasCropObject(r))return;let e=i.getSelectedObjectMap();if(a.forEach(e=>e.dispose()),a.length=0,e.size>1)return;let n=e.values().next().value;if(!n)return;let o=n.oKey,s=this._drawingManagerService.getDrawingOKey(o);if(!s||s.drawingType===t.DrawingTypeEnum.DRAWING_DOM)return;let{unitId:c,subUnitId:l,drawingId:d,drawingType:f}=s,p=this._canvasPopManagerService.attachPopupToObject(n,{componentKey:u.COMPONENT_IMAGE_POPUP_MENU,direction:`horizontal`,offset:[2,0],extraProps:{menuItems:this._getImageMenuItems(c,l,d,f)}},c);a.push(this.disposeWithMe(p)),!this._drawingManagerService.getFocusDrawings().find(e=>e.unitId===c&&e.subUnitId===l&&e.drawingId===d)&&this._drawingManagerService.focusDrawing([{unitId:c,subUnitId:l,drawingId:d}])})),this.disposeWithMe(i.clearControl$.subscribe(()=>{a.forEach(e=>e.dispose()),a.length=0,this._contextService.setContextValue(t.FOCUSING_COMMON_DRAWINGS,!1),this._drawingManagerService.focusDrawing(null)})),this.disposeWithMe(i.changing$.subscribe(()=>{a.forEach(e=>e.dispose()),a.length=0})),this.disposeWithMe(i.changeStart$.subscribe(()=>{a.forEach(e=>e.dispose()),a.length=0}))}_getImageMenuItems(e,t,n,r){return[{label:`image-popup.edit`,index:0,commandId:V.id,commandParams:{unitId:e,subUnitId:t,drawingId:n},disable:!0},{label:`image-popup.delete`,index:1,commandId:p.id,commandParams:{unitId:e,drawings:[{unitId:e,subUnitId:t,drawingId:n}]},disable:!1},{label:`image-popup.crop`,index:2,commandId:u.OpenImageCropOperation.id,commandParams:{unitId:e,subUnitId:t,drawingId:n},disable:!0},{label:`image-popup.reset`,index:3,commandId:u.ImageResetSizeOperation.id,commandParams:[{unitId:e,subUnitId:t,drawingId:n}],disable:!0}]}};Se=T([w(0,s.IDrawingManagerService),w(1,(0,t.Inject)(i.DocCanvasPopManagerService)),w(2,a.IRenderManagerService),w(3,t.IUniverInstanceService),w(4,t.IContextService)],Se);let $=class extends t.Plugin{constructor(e=Y,n,r,i){super(),this._config=e,this._injector=n,this._renderManagerSrv=r,this._configService=i;let{...a}=(0,t.merge)({},Y,this._config);this._configService.setConfig(J,a)}onStarting(){[[be],[Se],[ce],[X],[C],[W],[Z]].forEach(e=>this._injector.add(e))}onReady(){[[E],[xe]].forEach(e=>this._renderManagerSrv.registerRenderModule(t.UniverInstanceType.UNIVER_DOC,e)),this._injector.get(X),this._injector.get(be),this._injector.get(ce),this._injector.get(Z)}onRendered(){this._injector.get(Se),this._injector.get(W)}};S($,`type`,t.UniverInstanceType.UNIVER_DOC),S($,`pluginName`,`DOC_DRAWING_UI_PLUGIN`),S($,`packageName`,ne),S($,`version`,re),$=T([(0,t.DependentOn)(u.UniverDrawingUIPlugin,s.UniverDrawingPlugin,n.UniverDocsDrawingPlugin,c.UniverUIPlugin),w(1,(0,t.Inject)(t.Injector)),w(2,a.IRenderManagerService),w(3,t.IConfigService)],$),e.ClearDocDrawingTransformerOperation=R,e.DOCS_IMAGE_MENU_ID=G,e.DeleteDocDrawingsCommand=m,Object.defineProperty(e,`DocFloatDomController`,{enumerable:!0,get:function(){return W}}),e.EditDocDrawingOperation=V,e.GroupDocDrawingCommand=h,e.InsertDocDrawingCommand=g,e.InsertDocImageCommand=D,e.MoveDocDrawingsCommand=L,e.RemoveDocDrawingCommand=p,e.SetDocDrawingArrangeCommand=_,e.SidebarDocDrawingOperation=B,e.UngroupDocDrawingCommand=v,Object.defineProperty(e,`UniverDocsDrawingUIPlugin`,{enumerable:!0,get:function(){return $}})});
|
package/lib/umd/locale/ca-ES.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiCaES=t())})(this,function(){return{docImage:{title:`Imatge`,upload:{float:`Insereix imatge`},panel:{title:`Edita la imatge`}},"image-popup":{replace:`Reemplaça`,delete:`Elimina`,edit:`Edita`,crop:`Retalla`,reset:`Restableix la mida`},"image-text-wrap":{title:`Ajust del text`,wrappingStyle:`Estil d'ajust`,square:`Quadrat`,topAndBottom:`A dalt i a baix`,inline:`En línia amb el text`,behindText:`Darrere del text`,inFrontText:`Davant del text`,wrapText:`Ajusta el text`,bothSide:`Ambdós costats`,leftOnly:`Només esquerra`,rightOnly:`Només dreta`,distanceFromText:`Distància del text`,top:`A dalt(px)`,left:`Esquerra(px)`,bottom:`A baix(px)`,right:`Dreta(px)`},"image-position":{title:`Posició`,horizontal:`Horitzontal`,vertical:`Vertical`,absolutePosition:`Posició absoluta(px)`,relativePosition:`Posició relativa`,toTheRightOf:`a la dreta de`,relativeTo:`relatiu a`,bellow:`a sota`,options:`Opcions`,moveObjectWithText:`Mou l'objecte amb el text`,column:`Columna`,margin:`Marge`,page:`Pàgina`,line:`Línia`,paragraph:`Paràgraf`},"update-status":{exceedMaxSize:`La mida de la imatge supera el límit, el límit és {0}M`,invalidImageType:`Tipus d'imatge no vàlid`,exceedMaxCount:`Només es poden pujar {0} imatges alhora`,invalidImage:`Imatge no vàlida`}}});
|
package/lib/umd/locale/en-US.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiEnUS=t())})(this,function(){return{docImage:{title:`Image`,upload:{float:`Insert Image`},panel:{title:`Edit Image`}},"image-popup":{replace:`Replace`,delete:`Delete`,edit:`Edit`,crop:`Crop`,reset:`Reset Size`},"image-text-wrap":{title:`Text Wrapping`,wrappingStyle:`Wrapping Style`,square:`Square`,topAndBottom:`Top and Bottom`,inline:`In line with text`,behindText:`Behind text`,inFrontText:`In front of text`,wrapText:`Wrap text`,bothSide:`Both sides`,leftOnly:`Left only`,rightOnly:`Right only`,distanceFromText:`Distance from text`,top:`Top(px)`,left:`Left(px)`,bottom:`Bottom(px)`,right:`Right(px)`},"image-position":{title:`Position`,horizontal:`Horizontal`,vertical:`Vertical`,absolutePosition:`Absolute Position(px)`,relativePosition:`Relative Position`,toTheRightOf:`to the right of`,relativeTo:`relative to`,bellow:`bellow`,options:`Options`,moveObjectWithText:`Move object with text`,column:`Column`,margin:`Margin`,page:`Page`,line:`Line`,paragraph:`Paragraph`},"update-status":{exceedMaxSize:`Image size exceeds limit, limit is {0}M`,invalidImageType:`Invalid image type`,exceedMaxCount:`Only {0} images can be uploaded at a time`,invalidImage:`Invalid image`}}});
|
package/lib/umd/locale/es-ES.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiEsES=t())})(this,function(){return{docImage:{title:`Imagen`,upload:{float:`Insertar imagen`},panel:{title:`Editar imagen`}},"image-popup":{replace:`Reemplazar`,delete:`Eliminar`,edit:`Editar`,crop:`Recortar`,reset:`Restablecer tamaño`},"image-text-wrap":{title:`Ajuste de texto`,wrappingStyle:`Estilo de ajuste`,square:`Cuadrado`,topAndBottom:`Arriba y abajo`,inline:`En línea con el texto`,behindText:`Detrás del texto`,inFrontText:`Delante del texto`,wrapText:`Ajustar texto`,bothSide:`Ambos lados`,leftOnly:`Solo izquierda`,rightOnly:`Solo derecha`,distanceFromText:`Distancia del texto`,top:`Arriba(px)`,left:`Izquierda(px)`,bottom:`Abajo(px)`,right:`Derecha(px)`},"image-position":{title:`Posición`,horizontal:`Horizontal`,vertical:`Vertical`,absolutePosition:`Posición absoluta(px)`,relativePosition:`Posición relativa`,toTheRightOf:`a la derecha de`,relativeTo:`relativo a`,bellow:`debajo`,options:`Opciones`,moveObjectWithText:`Mover objeto con el texto`,column:`Columna`,margin:`Margen`,page:`Página`,line:`Línea`,paragraph:`Párrafo`},"update-status":{exceedMaxSize:`El tamaño de la imagen excede el límite, el límite es {0}M`,invalidImageType:`Tipo de imagen no válido`,exceedMaxCount:`Solo se pueden subir {0} imágenes a la vez`,invalidImage:`Imagen no válida`}}});
|
package/lib/umd/locale/fa-IR.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiFaIR=t())})(this,function(){return{docImage:{title:`تصویر`,upload:{float:`درج تصویر`},panel:{title:`ویرایش تصویر`}},"image-popup":{replace:`تعویض`,delete:`حذف`,edit:`ویرایش`,crop:`کراپ`,reset:`بازنشانی اندازه`},"image-text-wrap":{title:`پیچش متن`,wrappingStyle:`سبک پیچش`,square:`مربع`,topAndBottom:`بالا و پایین`,inline:`در یک خط با متن`,behindText:`پشت متن`,inFrontText:`جلوی متن`,wrapText:`پیچش متن`,bothSide:`هر دو طرف`,leftOnly:`فقط سمت چپ`,rightOnly:`فقط سمت راست`,distanceFromText:`فاصله از متن`,top:`بالا(px)`,left:`چپ(px)`,bottom:`پایین(px)`,right:`راست(px)`},"image-position":{title:`موقعیت`,horizontal:`افقی`,vertical:`عمودی`,absolutePosition:`موقعیت مطلق(px)`,relativePosition:`موقعیت نسبی`,toTheRightOf:`سمت راست`,relativeTo:`نسبت به`,bellow:`زیر`,options:`گزینهها`,moveObjectWithText:`جابهجایی شیء با متن`,column:`ستون`,margin:`حاشیه`,page:`صفحه`,line:`خط`,paragraph:`پاراگراف`},"update-status":{exceedMaxSize:`اندازه تصویر از حد مجاز فراتر رفته است، حد مجاز {0}M است`,invalidImageType:`نوع تصویر نامعتبر است`,exceedMaxCount:`فقط {0} تصویر میتوانند همزمان آپلود شوند`,invalidImage:`تصویر نامعتبر است`}}});
|
package/lib/umd/locale/fr-FR.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiFrFR=t())})(this,function(){return{docImage:{title:`Image`,upload:{float:`Insérer une image`},panel:{title:`Modifier l'image`}},"image-popup":{replace:`Remplacer`,delete:`Supprimer`,edit:`Modifier`,crop:`Rogner`,reset:`Réinitialiser la taille`},"image-text-wrap":{title:`Habillage du texte`,wrappingStyle:`Style d'habillage`,square:`Carré`,topAndBottom:`Haut et bas`,inline:`Aligné avec le texte`,behindText:`Derrière le texte`,inFrontText:`Devant le texte`,wrapText:`Habiller le texte`,bothSide:`Des deux côtés`,leftOnly:`Seulement à gauche`,rightOnly:`Seulement à droite`,distanceFromText:`Distance du texte`,top:`Haut(px)`,left:`Gauche(px)`,bottom:`Bas(px)`,right:`Droite(px)`},"image-position":{title:`Position`,horizontal:`Horizontal`,vertical:`Vertical`,absolutePosition:`Position absolue(px)`,relativePosition:`Position relative`,toTheRightOf:`à droite de`,relativeTo:`par rapport à`,bellow:`en dessous`,options:`Options`,moveObjectWithText:`Déplacer l'objet avec le texte`,column:`Colonne`,margin:`Marge`,page:`Page`,line:`Ligne`,paragraph:`Paragraphe`},"update-status":{exceedMaxSize:`La taille de l'image dépasse la limite, la limite est de {0}M`,invalidImageType:`Type d'image invalide`,exceedMaxCount:`Seulement {0} images peuvent être téléchargées à la fois`,invalidImage:`Image invalide`}}});
|
package/lib/umd/locale/ja-JP.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiJaJP=t())})(this,function(){return{docImage:{title:`画像`,upload:{float:`画像を挿入`},panel:{title:`画像の編集`}},"image-popup":{replace:`置換`,delete:`削除`,edit:`編集`,crop:`トリミング`,reset:`サイズをリセット`},"image-text-wrap":{title:`文字列の折り返し`,wrappingStyle:`折り返しのスタイル`,square:`四角形`,topAndBottom:`上下`,inline:`行内`,behindText:`文字列の背面`,inFrontText:`文字列の前面`,wrapText:`文字列の折り返し`,bothSide:`両側`,leftOnly:`左のみ`,rightOnly:`右のみ`,distanceFromText:`文字列からの距離`,top:`上(px)`,left:`左(px)`,bottom:`下(px)`,right:`右(px)`},"image-position":{title:`位置`,horizontal:`水平方向`,vertical:`垂直方向`,absolutePosition:`絶対位置(px)`,relativePosition:`相対位置`,toTheRightOf:`右側に`,relativeTo:`基準に対して`,bellow:`下に`,options:`オプション`,moveObjectWithText:`文字列と一緒にオブジェクトを移動`,column:`列`,margin:`余白`,page:`ページ`,line:`行`,paragraph:`段落`},"update-status":{exceedMaxSize:`画像のサイズが制限を超えています。制限: {0}MB`,invalidImageType:`無効な画像形式です`,exceedMaxCount:`一度にアップロードできる最大数は{0}件です`,invalidImage:`無効な画像です`}}});
|
package/lib/umd/locale/ko-KR.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiKoKR=t())})(this,function(){return{docImage:{title:`이미지`,upload:{float:`이미지 삽입`},panel:{title:`이미지 편집`}},"image-popup":{replace:`교체`,delete:`삭제`,edit:`편집`,crop:`자르기`,reset:`크기 초기화`},"image-text-wrap":{title:`텍스트 감싸기`,wrappingStyle:`감싸기 스타일`,square:`사각형`,topAndBottom:`위아래`,inline:`텍스트와 같은 줄`,behindText:`텍스트 뒤`,inFrontText:`텍스트 앞`,wrapText:`텍스트 감싸기`,bothSide:`양쪽`,leftOnly:`왼쪽만`,rightOnly:`오른쪽만`,distanceFromText:`텍스트와 거리`,top:`위(px)`,left:`왼쪽(px)`,bottom:`아래(px)`,right:`오른쪽(px)`},"image-position":{title:`위치`,horizontal:`수평`,vertical:`수직`,absolutePosition:`절대 위치(px)`,relativePosition:`상대 위치`,toTheRightOf:`우측에`,relativeTo:`상대적으로`,bellow:`아래에`,options:`옵션`,moveObjectWithText:`텍스트와 함께 객체 이동`,column:`열`,margin:`여백`,page:`페이지`,line:`줄`,paragraph:`문단`},"update-status":{exceedMaxSize:`이미지 크기가 제한을 초과했습니다. 제한: {0}MB`,invalidImageType:`유효하지 않은 이미지 유형입니다`,exceedMaxCount:`한 번에 최대 {0}개만 업로드할 수 있습니다`,invalidImage:`유효하지 않은 이미지입니다`}}});
|
package/lib/umd/locale/ru-RU.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiRuRU=t())})(this,function(){return{docImage:{title:`Изображение`,upload:{float:`Вставить изображение`},panel:{title:`Редактировать изображение`}},"image-popup":{replace:`Заменить`,delete:`Удалить`,edit:`Редактировать`,crop:`Обрезать`,reset:`Сбросить размер`},"image-text-wrap":{title:`Text Wrapping`,wrappingStyle:`Wrapping Style`,square:`Square`,topAndBottom:`Top and Bottom`,inline:`In line with text`,behindText:`Behind text`,inFrontText:`In front of text`,wrapText:`Wrap text`,bothSide:`Both sides`,leftOnly:`Left only`,rightOnly:`Right only`,distanceFromText:`Distance from text`,top:`Top(px)`,left:`Left(px)`,bottom:`Bottom(px)`,right:`Right(px)`},"image-position":{title:`Position`,horizontal:`Horizontal`,vertical:`Vertical`,absolutePosition:`Absolute Position(px)`,relativePosition:`Relative Position`,toTheRightOf:`to the right of`,relativeTo:`relative to`,bellow:`bellow`,options:`Options`,moveObjectWithText:`Move object with text`,column:`Column`,margin:`Margin`,page:`Page`,line:`Line`,paragraph:`Paragraph`},"update-status":{exceedMaxSize:`Размер изображения превышает лимит, лимит составляет {0}М`,invalidImageType:`Недопустимый тип изображения`,exceedMaxCount:`За один раз можно загрузить только {0} изображений`,invalidImage:`Недопустимое изображение`}}});
|
package/lib/umd/locale/sk-SK.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiSkSK=t())})(this,function(){return{docImage:{title:`Obrázok`,upload:{float:`Vložiť obrázok`},panel:{title:`Upraviť obrázok`}},"image-popup":{replace:`Nahradiť`,delete:`Odstrániť`,edit:`Upraviť`,crop:`Orezať`,reset:`Obnoviť veľkosť`},"image-text-wrap":{title:`Obtekanie textu`,wrappingStyle:`Štýl obtekania`,square:`Obdĺžnikové`,topAndBottom:`Hore a dole`,inline:`V riadku s textom`,behindText:`Za textom`,inFrontText:`Pred textom`,wrapText:`Obtekať text`,bothSide:`Obe strany`,leftOnly:`Len ľavá`,rightOnly:`Len pravá`,distanceFromText:`Vzdialenosť od textu`,top:`Hore (px)`,left:`Vľavo (px)`,bottom:`Dole (px)`,right:`Vpravo (px)`},"image-position":{title:`Pozícia`,horizontal:`Vodorovne`,vertical:`Zvisle`,absolutePosition:`Absolútna pozícia (px)`,relativePosition:`Relatívna pozícia`,toTheRightOf:`vpravo od`,relativeTo:`vzhľadom na`,bellow:`pod`,options:`Možnosti`,moveObjectWithText:`Presunúť objekt s textom`,column:`Stĺpec`,margin:`Okraj`,page:`Strana`,line:`Riadok`,paragraph:`Odsek`},"update-status":{exceedMaxSize:`Veľkosť obrázka prekračuje limit, limit je {0}M`,invalidImageType:`Neplatný typ obrázka`,exceedMaxCount:`Naraz možno nahrať iba {0} obrázkov`,invalidImage:`Neplatný obrázok`}}});
|
package/lib/umd/locale/vi-VN.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(t
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiViVN=t())})(this,function(){return{docImage:{title:`Hình ảnh`,upload:{float:`Chèn hình ảnh`},panel:{title:`Chỉnh sửa hình ảnh`}},"image-popup":{replace:`Thay thế`,delete:`Xóa`,edit:`Chỉnh sửa`,crop:`Cắt`,reset:`Đặt lại kích thước`},"image-text-wrap":{title:`Text Wrapping`,wrappingStyle:`Wrapping Style`,square:`Square`,topAndBottom:`Top and Bottom`,inline:`In line with text`,behindText:`Behind text`,inFrontText:`In front of text`,wrapText:`Wrap text`,bothSide:`Both sides`,leftOnly:`Left only`,rightOnly:`Right only`,distanceFromText:`Distance from text`,top:`Top(px)`,left:`Left(px)`,bottom:`Bottom(px)`,right:`Right(px)`},"image-position":{title:`Position`,horizontal:`Horizontal`,vertical:`Vertical`,absolutePosition:`Absolute Position(px)`,relativePosition:`Relative Position`,toTheRightOf:`to the right of`,relativeTo:`relative to`,bellow:`bellow`,options:`Options`,moveObjectWithText:`Move object with text`,column:`Column`,margin:`Margin`,page:`Page`,line:`Line`,paragraph:`Paragraph`},"update-status":{exceedMaxSize:`Kích thước hình ảnh vượt quá giới hạn, giới hạn là {0}M`,invalidImageType:`Loại hình ảnh không hợp lệ`,exceedMaxCount:`Chỉ có thể tải lên tối đa {0} hình ảnh một lần`,invalidImage:`Hình ảnh không hợp lệ`}}});
|
package/lib/umd/locale/zh-CN.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiZhCN=t())})(this,function(){return{docImage:{title:`图片`,upload:{float:`插入图片`},panel:{title:`编辑图片`}},"image-popup":{replace:`替换`,delete:`删除`,edit:`编辑`,crop:`裁剪`,reset:`重置大小`},"image-text-wrap":{title:`文字环绕`,wrappingStyle:`环绕方式`,square:`四周型`,topAndBottom:`上下型`,inline:`嵌入型`,behindText:`衬于文字下方`,inFrontText:`浮于文字上方`,wrapText:`自动换行`,bothSide:`两侧`,leftOnly:`左侧`,rightOnly:`右侧`,distanceFromText:`距正文`,top:`上(px)`,left:`左(px)`,bottom:`下(px)`,right:`右(px)`},"image-position":{title:`位置`,horizontal:`水平`,vertical:`垂直`,absolutePosition:`绝对位置(px)`,relativePosition:`相对位置`,toTheRightOf:`右侧`,relativeTo:`相对于`,bellow:`下方`,options:`选项`,moveObjectWithText:`对象随文字移动`,column:`栏`,margin:`页边距`,page:`页面`,line:`行`,paragraph:`段落`},"update-status":{exceedMaxSize:`图片大小超过限制, 限制为{0}M`,invalidImageType:`图片类型错误`,exceedMaxCount:`图片只能一次上传{0}张`,invalidImage:`无效图片`}}});
|
package/lib/umd/locale/zh-TW.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverDocsDrawingUiZhTW=t())})(this,function(){return{docImage:{title:`圖片`,upload:{float:`插入圖片`},panel:{title:`編圖`}},"image-popup":{replace:`替換`,delete:`刪除`,edit:`編輯`,crop:`裁切`,reset:`重置大小`},"image-text-wrap":{title:`文繞圖`,wrappingStyle:`文繞圖方式`,square:`矩形`,topAndBottom:`上及下`,inline:`與文字排列`,behindText:`文字在前`,inFrontText:`文字在後`,wrapText:`自動換行`,bothSide:`兩側`,leftOnly:`僅左側`,rightOnly:`僅右側`,distanceFromText:`與文字距離`,top:`上(px)`,left:`左(px)`,bottom:`下(px)`,right:`右(px)`},"image-position":{title:`位置`,horizontal:`水平`,vertical:`垂直`,absolutePosition:`絕對位置(px)`,relativePosition:`相對位置`,toTheRightOf:`右側`,relativeTo:`相對於`,bellow:`下方`,options:`選項`,moveObjectWithText:`物件隨文字移動`,column:`欄`,margin:`邊界`,page:`頁面`,line:`行`,paragraph:`段落`},"update-status":{exceedMaxSize:`圖片大小超過限制, 限制為{0}M`,invalidImageType:`圖片類型錯誤`,exceedMaxCount:`圖片只能一次上傳{0}張`,invalidImage:`無效圖片`}}});
|