@univerjs/sheets-drawing-ui 0.8.1 → 0.8.2-nightly.202506211606

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/facade.js CHANGED
@@ -1 +1 @@
1
- "use strict";var B=Object.defineProperty;var F=(r,e,t)=>e in r?B(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var R=(r,e,t)=>F(r,typeof e!="symbol"?e+"":e,t);const g=require("@univerjs/core"),v=require("@univerjs/core/facade"),l=require("@univerjs/drawing"),S=require("@univerjs/engine-render"),d=require("@univerjs/sheets-drawing-ui"),f=require("@univerjs/sheets-ui"),w=require("@univerjs/sheets-drawing"),E=require("@univerjs/sheets-ui/facade"),p=require("@univerjs/sheets/facade"),k=require("@univerjs/ui");var U=Object.getOwnPropertyDescriptor,G=(r,e,t,i)=>{for(var n=i>1?void 0:i?U(e,t):e,s=r.length-1,a;s>=0;s--)(a=r[s])&&(n=a(n)||n);return n},O=(r,e)=>(t,i)=>e(t,i,r);function A(r,e){const{from:t,to:i,flipY:n=!1,flipX:s=!1,angle:a=0,skewX:c=0,skewY:o=0}=r.sheetTransform,{column:h,columnOffset:m,row:I,rowOffset:D}=t,C=f.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:t,to:i},e),{width:b,height:y}=C;return{...r,column:h,columnOffset:m,row:I,rowOffset:D,width:b,height:y,flipY:n,flipX:s,angle:a,skewX:c,skewY:o}}function x(r,e,t){const{column:i,columnOffset:n,row:s,rowOffset:a,flipY:c=!1,flipX:o=!1,angle:h=0,skewX:m=0,skewY:I=0,width:D,height:C}=r,b=f.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:i,columnOffset:n,row:s,rowOffset:a},D,C,e,t),{sheetTransform:y,transform:T}=b;return{...r,sheetTransform:{...y,flipY:c,flipX:o,angle:h,skewX:m,skewY:I},transform:{...T,flipY:c,flipX:o,angle:h,skewX:m,skewY:I}}}let _=class{constructor(r,e,t){R(this,"_image");this._injector=t,this._image={drawingId:g.generateRandomId(6),drawingType:g.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:g.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:e,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const t=this._injector.get(S.IRenderManagerService).getRenderById(r.unitId);if(!t)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const i=t.with(f.SheetSkeletonManagerService);return r.sheetTransform==null&&(r.sheetTransform={from:{column:0,columnOffset:0,row:0,rowOffset:0},to:{column:0,columnOffset:0,row:0,rowOffset:0}}),this._image=A(r,i),this}setSource(r,e){const t=e!=null?e:g.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this}getSource(){return this._image.source}getSourceType(){return this._image.imageSourceType}setColumn(r){return this._image.column=r,this}setRow(r){return this._image.row=r,this}setColumnOffset(r){return this._image.columnOffset=r,this}setRowOffset(r){return this._image.rowOffset=r,this}setWidth(r){return this._image.width=r,this}setHeight(r){return this._image.height=r,this}setAnchorType(r){return this._image.anchorType=r,this}setCropTop(r){return this._initializeSrcRect(),this._image.srcRect.top=r,this}setCropLeft(r){return this._initializeSrcRect(),this._image.srcRect.left=r,this}setCropBottom(r){return this._initializeSrcRect(),this._image.srcRect.bottom=r,this}setCropRight(r){return this._initializeSrcRect(),this._image.srcRect.right=r,this}_initializeSrcRect(){this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0})}setRotate(r){return this._image.angle=r,this}setUnitId(r){return this._image.unitId=r,this}setSubUnitId(r){return this._image.subUnitId=r,this}async buildAsync(){const e=this._injector.get(S.IRenderManagerService).getRenderById(this._image.unitId);if(!e)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const t=e.with(f.ISheetSelectionRenderService),i=e.with(f.SheetSkeletonManagerService);if(this._image.width===0||this._image.height===0){const n=await l.getImageSize(this._image.source),s=n.width,a=n.height;this._image.width===0&&(this._image.width=s),this._image.height===0&&(this._image.height=a)}return x(this._image,t,i)}};_=G([O(2,g.Inject(g.Injector))],_);let u=class extends v.FBase{constructor(r,e,t){super(),this._image=r,this._commandService=e,this._injector=t}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(d.RemoveSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(_);return r.setImage(this._image),r}setSource(r,e){const t=e!=null?e:g.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,e,t,i){const n=this.toBuilder();n.setColumn(e),n.setRow(r),t!=null&&n.setRowOffset(t),i!=null&&n.setColumnOffset(i);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,e){const t=this.toBuilder();t.setWidth(r),t.setHeight(e);const i=await t.buildAsync();return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[i]})}setCrop(r,e,t,i){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),e!=null&&(this._image.srcRect.left=e),t!=null&&(this._image.srcRect.bottom=t),i!=null&&(this._image.srcRect.right=i),this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._image.transform&&(this._image.transform.angle=r),this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.front})}};u=G([O(1,g.ICommandService),O(2,g.Inject(g.Injector))],u);class M extends p.FWorksheet{addFloatDomToPosition(e,t){const i=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:a}=E.transformComponentKey(e,this._injector.get(k.ComponentManager)),o=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...e,componentKey:s,unitId:i,subUnitId:n},t);return o?(a.add(o.dispose),{id:o.id,dispose:()=>{a.dispose(),o.dispose()}}):(a.dispose(),null)}addFloatDomToRange(e,t,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:o}=E.transformComponentKey(t,this._injector.get(k.ComponentManager)),m=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToRange(e.getRange(),{...t,componentKey:c,unitId:s,subUnitId:a},i,n);return m?(o.add(m.dispose),{id:m.id,dispose:()=>{o.dispose(),m.dispose()}}):(o.dispose(),null)}addFloatDomToColumnHeader(e,t,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:o}=E.transformComponentKey(t,this._injector.get(k.ComponentManager)),m=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(e,{...t,componentKey:c,unitId:s,subUnitId:a},i,n);return m?(o.add(m.dispose),{id:m.id,dispose:()=>{o.dispose(),m.dispose()}}):(o.dispose(),null)}async insertImage(e,t,i,n,s){const a=this.newOverGridImage();if(typeof e=="string")a.setSource(e);else{const h=await e.getBlob().getDataAsString();a.setSource(h,g.ImageSourceType.BASE64)}t!==void 0?a.setColumn(t):a.setColumn(0),i!==void 0?a.setRow(i):a.setRow(0),n!==void 0?a.setColumnOffset(n):a.setColumnOffset(0),s!==void 0?a.setRowOffset(s):a.setRowOffset(0);const c=await a.buildAsync();return this._commandService.syncExecuteCommand(d.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[c]})}insertImages(e){const t=e.map(i=>(i.unitId=this._fWorkbook.getId(),i.subUnitId=this.getSheetId(),i));return this._commandService.syncExecuteCommand(d.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}deleteImages(e){const t=e.map(i=>({unitId:this._fWorkbook.getId(),drawingId:i.getId(),subUnitId:this.getSheetId(),drawingType:i.getType()}));return this._commandService.syncExecuteCommand(d.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}getImages(){const t=this._injector.get(w.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),i=[];for(const n in t){const s=t[n];s.drawingType===g.DrawingTypeEnum.DRAWING_IMAGE&&i.push(this._injector.createInstance(u,s))}return i}getImageById(e){const i=this._injector.get(w.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:e});return i&&i.drawingType===g.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(u,i):null}getActiveImages(){const t=this._injector.get(w.ISheetDrawingService).getFocusDrawings(),i=[];for(const n in t){const s=t[n];i.push(this._injector.createInstance(u,s))}return i}updateImages(e){return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}onImageInserted(e){const t=this._injector.get(w.ISheetDrawingService);return g.toDisposable(t.add$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}onImageDeleted(e){const t=this._injector.get(w.ISheetDrawingService);return g.toDisposable(t.remove$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}onImageChanged(e){const t=this._injector.get(w.ISheetDrawingService);return g.toDisposable(t.update$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}newOverGridImage(){const e=this._fWorkbook.getId(),t=this.getSheetId();return this._injector.createInstance(_,e,t)}}p.FWorksheet.extend(M);class j extends v.FEnum{get DrawingType(){return g.DrawingTypeEnum}get ImageSourceType(){return g.ImageSourceType}get SheetDrawingAnchorType(){return w.SheetDrawingAnchorType}}v.FEnum.extend(j);class P extends v.FEventName{get BeforeOverGridImageChange(){return"BeforeOverGridImageChange"}get OverGridImageChanged(){return"OverGridImageChanged"}get BeforeOverGridImageInsert(){return"BeforeOverGridImageInsert"}get OverGridImageInserted(){return"OverGridImageInserted"}get BeforeOverGridImageRemove(){return"BeforeOverGridImageRemove"}get OverGridImageRemoved(){return"OverGridImageRemoved"}get BeforeOverGridImageSelect(){return"BeforeOverGridImageSelect"}get OverGridImageSelected(){return"OverGridImageSelected"}}v.FEventName.extend(P);class W extends v.FUniver{_initialize(e){const t=e.get(g.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.InsertSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c={workbook:s,insertImageParams:a};if(this.fireEvent(this.Event.BeforeOverGridImageInsert,c),c.cancel)throw new Error("Canceled by BeforeOverGridImageInsert event")})),this.registerEventHandler(this.Event.BeforeOverGridImageRemove,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const a=e.get(l.IDrawingManagerService),{drawings:c}=n,o=c.map(m=>a.getDrawingByParam(m)),h={workbook:s,images:this._createFOverGridImage(o)};if(this.fireEvent(this.Event.BeforeOverGridImageRemove,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageRemove event")})),this.registerEventHandler(this.Event.BeforeOverGridImageChange,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=e.get(l.IDrawingManagerService),o=[];a.forEach(m=>{const I=c.getDrawingByParam(m);I!=null&&o.push({changeParam:m,image:this._injector.createInstance(u,I)})});const h={workbook:s,images:o};if(this.fireEvent(this.Event.BeforeOverGridImageChange,h),h.cancel)throw c.updateNotification(a),new Error("Canceled by BeforeOverGridImageChange event")})),this.registerEventHandler(this.Event.BeforeOverGridImageSelect,()=>t.beforeCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=e.get(l.IDrawingManagerService),c=a.getFocusDrawings(),o=n.map(m=>a.getDrawingByParam(m)),h={workbook:s,selectedImages:this._createFOverGridImage(o),oldSelectedImages:this._createFOverGridImage(c)};if(this.fireEvent(this.Event.BeforeOverGridImageSelect,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageSelect event")})),this.registerEventHandler(this.Event.OverGridImageInserted,()=>t.onCommandExecuted(i=>{if(i.id!==d.InsertSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n;this.fireEvent(this.Event.OverGridImageInserted,{workbook:s,images:this._createFOverGridImage(a)})})),this.registerEventHandler(this.Event.OverGridImageRemoved,()=>t.onCommandExecuted(i=>{if(i.id!==d.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n;this.fireEvent(this.Event.OverGridImageRemoved,{workbook:s,removeImageParams:a})})),this.registerEventHandler(this.Event.OverGridImageChanged,()=>t.onCommandExecuted(i=>{if(i.id!==d.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=e.get(l.IDrawingManagerService),o=a.map(h=>this._injector.createInstance(u,c.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:o})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>t.onCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=e.get(l.IDrawingManagerService),c=n.map(o=>a.getDrawingByParam(o));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(c)})}))}_createFOverGridImage(e){return e.map(t=>this._injector.createInstance(u,t))}}v.FUniver.extend(W);class H extends p.FRange{async insertCellImageAsync(e){var s;const t=this._injector.get(S.IRenderManagerService),i=(s=S.getCurrentTypeOfRenderer(g.UniverInstanceType.UNIVER_SHEET,this._injector.get(g.IUniverInstanceService),t))==null?void 0:s.with(d.SheetDrawingUpdateController);if(!i)return!1;const n={unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this.getRow(),col:this.getColumn()};return typeof e=="string"?i.insertCellImageByUrl(e,n):i.insertCellImageByFile(e,n)}}p.FRange.extend(H);
1
+ "use strict";var B=Object.defineProperty;var F=(r,e,t)=>e in r?B(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var R=(r,e,t)=>F(r,typeof e!="symbol"?e+"":e,t);const c=require("@univerjs/core"),v=require("@univerjs/core/facade"),l=require("@univerjs/drawing"),S=require("@univerjs/engine-render"),d=require("@univerjs/sheets-drawing-ui"),f=require("@univerjs/sheets-ui"),w=require("@univerjs/sheets-drawing"),y=require("@univerjs/sheets-ui/facade"),p=require("@univerjs/sheets/facade"),k=require("@univerjs/ui");var U=Object.getOwnPropertyDescriptor,G=(r,e,t,i)=>{for(var n=i>1?void 0:i?U(e,t):e,s=r.length-1,a;s>=0;s--)(a=r[s])&&(n=a(n)||n);return n},O=(r,e)=>(t,i)=>e(t,i,r);function A(r,e){const{from:t,to:i,flipY:n=!1,flipX:s=!1,angle:a=0,skewX:g=0,skewY:o=0}=r.sheetTransform,{column:h,columnOffset:m,row:I,rowOffset:D}=t,C=f.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:t,to:i},e),{width:b,height:E}=C;return{...r,column:h,columnOffset:m,row:I,rowOffset:D,width:b,height:E,flipY:n,flipX:s,angle:a,skewX:g,skewY:o}}function x(r,e,t){const{column:i,columnOffset:n,row:s,rowOffset:a,flipY:g=!1,flipX:o=!1,angle:h=0,skewX:m=0,skewY:I=0,width:D,height:C}=r,b=f.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:i,columnOffset:n,row:s,rowOffset:a},D,C,e,t),{sheetTransform:E,transform:T}=b;return{...r,sheetTransform:{...E,flipY:g,flipX:o,angle:h,skewX:m,skewY:I},transform:{...T,flipY:g,flipX:o,angle:h,skewX:m,skewY:I}}}let _=class{constructor(r,e,t){R(this,"_image");this._injector=t,this._image={drawingId:c.generateRandomId(6),drawingType:c.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:c.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:e,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const t=this._injector.get(S.IRenderManagerService).getRenderById(r.unitId);if(!t)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const i=t.with(f.SheetSkeletonManagerService);return r.sheetTransform==null&&(r.sheetTransform={from:{column:0,columnOffset:0,row:0,rowOffset:0},to:{column:0,columnOffset:0,row:0,rowOffset:0}}),this._image=A(r,i),this}setSource(r,e){const t=e!=null?e:c.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this}getSource(){return this._image.source}getSourceType(){return this._image.imageSourceType}setColumn(r){return this._image.column=r,this}setRow(r){return this._image.row=r,this}setColumnOffset(r){return this._image.columnOffset=r,this}setRowOffset(r){return this._image.rowOffset=r,this}setWidth(r){return this._image.width=r,this}setHeight(r){return this._image.height=r,this}setAnchorType(r){return this._image.anchorType=r,this}setCropTop(r){return this._initializeSrcRect(),this._image.srcRect.top=r,this}setCropLeft(r){return this._initializeSrcRect(),this._image.srcRect.left=r,this}setCropBottom(r){return this._initializeSrcRect(),this._image.srcRect.bottom=r,this}setCropRight(r){return this._initializeSrcRect(),this._image.srcRect.right=r,this}_initializeSrcRect(){this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0})}setRotate(r){return this._image.angle=r,this}setUnitId(r){return this._image.unitId=r,this}setSubUnitId(r){return this._image.subUnitId=r,this}async buildAsync(){const e=this._injector.get(S.IRenderManagerService).getRenderById(this._image.unitId);if(!e)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const t=e.with(f.ISheetSelectionRenderService),i=e.with(f.SheetSkeletonManagerService);if(this._image.width===0||this._image.height===0){const n=await l.getImageSize(this._image.source),s=n.width,a=n.height;this._image.width===0&&(this._image.width=s),this._image.height===0&&(this._image.height=a)}return x(this._image,t,i)}};_=G([O(2,c.Inject(c.Injector))],_);let u=class extends v.FBase{constructor(r,e,t){super(),this._image=r,this._commandService=e,this._injector=t}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(d.RemoveSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(_);return r.setImage(this._image),r}setSource(r,e){const t=e!=null?e:c.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,e,t,i){const n=this.toBuilder();n.setColumn(e),n.setRow(r),t!=null&&n.setRowOffset(t),i!=null&&n.setColumnOffset(i);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,e){const t=this.toBuilder();t.setWidth(r),t.setHeight(e);const i=await t.buildAsync();return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[i]})}setCrop(r,e,t,i){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),e!=null&&(this._image.srcRect.left=e),t!=null&&(this._image.srcRect.bottom=t),i!=null&&(this._image.srcRect.right=i),this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._image.transform&&(this._image.transform.angle=r),this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:c.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:c.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:c.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(d.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:c.ArrangeTypeEnum.front})}};u=G([O(1,c.ICommandService),O(2,c.Inject(c.Injector))],u);class M extends p.FWorksheet{addFloatDomToPosition(e,t){const i=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:a}=y.transformComponentKey(e,this._injector.get(k.ComponentManager)),o=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...e,componentKey:s,unitId:i,subUnitId:n},t);return o?(a.add(o.dispose),{id:o.id,dispose:()=>{a.dispose(),o.dispose()}}):(a.dispose(),null)}addFloatDomToRange(e,t,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:g,disposableCollection:o}=y.transformComponentKey(t,this._injector.get(k.ComponentManager)),m=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToRange(e.getRange(),{...t,componentKey:g,unitId:s,subUnitId:a},i,n);return m?(o.add(m.dispose),{id:m.id,dispose:()=>{o.dispose(),m.dispose()}}):(o.dispose(),null)}addFloatDomToColumnHeader(e,t,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:g,disposableCollection:o}=y.transformComponentKey(t,this._injector.get(k.ComponentManager)),m=this._injector.get(d.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(e,{...t,componentKey:g,unitId:s,subUnitId:a},i,n);return m?(o.add(m.dispose),{id:m.id,dispose:()=>{o.dispose(),m.dispose()}}):(o.dispose(),null)}async insertImage(e,t,i,n,s){const a=this.newOverGridImage();if(typeof e=="string")a.setSource(e);else{const h=await e.getBlob().getDataAsString();a.setSource(h,c.ImageSourceType.BASE64)}t!==void 0?a.setColumn(t):a.setColumn(0),i!==void 0?a.setRow(i):a.setRow(0),n!==void 0?a.setColumnOffset(n):a.setColumnOffset(0),s!==void 0?a.setRowOffset(s):a.setRowOffset(0);const g=await a.buildAsync();return this._commandService.syncExecuteCommand(d.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[g]})}insertImages(e){const t=e.map(i=>(i.unitId=this._fWorkbook.getId(),i.subUnitId=this.getSheetId(),i));return this._commandService.syncExecuteCommand(d.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}deleteImages(e){const t=e.map(i=>({unitId:this._fWorkbook.getId(),drawingId:i.getId(),subUnitId:this.getSheetId(),drawingType:i.getType()}));return this._commandService.syncExecuteCommand(d.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}getImages(){const t=this._injector.get(w.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),i=[];for(const n in t){const s=t[n];s.drawingType===c.DrawingTypeEnum.DRAWING_IMAGE&&i.push(this._injector.createInstance(u,s))}return i}getImageById(e){const i=this._injector.get(w.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:e});return i&&i.drawingType===c.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(u,i):null}getActiveImages(){const t=this._injector.get(w.ISheetDrawingService).getFocusDrawings(),i=[];for(const n in t){const s=t[n];i.push(this._injector.createInstance(u,s))}return i}updateImages(e){return this._commandService.syncExecuteCommand(d.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}onImageInserted(e){const t=this._injector.get(w.ISheetDrawingService);return c.toDisposable(t.add$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}onImageDeleted(e){const t=this._injector.get(w.ISheetDrawingService);return c.toDisposable(t.remove$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}onImageChanged(e){const t=this._injector.get(w.ISheetDrawingService);return c.toDisposable(t.update$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,t.getDrawingByParam(s)));e(n)}))}newOverGridImage(){const e=this._fWorkbook.getId(),t=this.getSheetId();return this._injector.createInstance(_,e,t)}}p.FWorksheet.extend(M);class j extends v.FEnum{get DrawingType(){return c.DrawingTypeEnum}get ImageSourceType(){return c.ImageSourceType}get SheetDrawingAnchorType(){return w.SheetDrawingAnchorType}}v.FEnum.extend(j);class P extends v.FEventName{get BeforeOverGridImageChange(){return"BeforeOverGridImageChange"}get OverGridImageChanged(){return"OverGridImageChanged"}get BeforeOverGridImageInsert(){return"BeforeOverGridImageInsert"}get OverGridImageInserted(){return"OverGridImageInserted"}get BeforeOverGridImageRemove(){return"BeforeOverGridImageRemove"}get OverGridImageRemoved(){return"OverGridImageRemoved"}get BeforeOverGridImageSelect(){return"BeforeOverGridImageSelect"}get OverGridImageSelected(){return"OverGridImageSelected"}}v.FEventName.extend(P);class W extends v.FUniver{_initialize(e){const t=e.get(c.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.InsertSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,g={workbook:s,insertImageParams:a};if(this.fireEvent(this.Event.BeforeOverGridImageInsert,g),g.cancel)throw new c.CanceledError})),this.registerEventHandler(this.Event.BeforeOverGridImageRemove,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const a=e.get(l.IDrawingManagerService),{drawings:g}=n,o=g.map(m=>a.getDrawingByParam(m)),h={workbook:s,images:this._createFOverGridImage(o)};if(this.fireEvent(this.Event.BeforeOverGridImageRemove,h),h.cancel)throw new c.CanceledError})),this.registerEventHandler(this.Event.BeforeOverGridImageChange,()=>t.beforeCommandExecuted(i=>{if(i.id!==d.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,g=e.get(l.IDrawingManagerService),o=[];a.forEach(m=>{const I=g.getDrawingByParam(m);I!=null&&o.push({changeParam:m,image:this._injector.createInstance(u,I)})});const h={workbook:s,images:o};if(this.fireEvent(this.Event.BeforeOverGridImageChange,h),h.cancel)throw g.updateNotification(a),new c.CanceledError})),this.registerEventHandler(this.Event.BeforeOverGridImageSelect,()=>t.beforeCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=e.get(l.IDrawingManagerService),g=a.getFocusDrawings(),o=n.map(m=>a.getDrawingByParam(m)),h={workbook:s,selectedImages:this._createFOverGridImage(o),oldSelectedImages:this._createFOverGridImage(g)};if(this.fireEvent(this.Event.BeforeOverGridImageSelect,h),h.cancel)throw new c.CanceledError})),this.registerEventHandler(this.Event.OverGridImageInserted,()=>t.onCommandExecuted(i=>{if(i.id!==d.InsertSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n;this.fireEvent(this.Event.OverGridImageInserted,{workbook:s,images:this._createFOverGridImage(a)})})),this.registerEventHandler(this.Event.OverGridImageRemoved,()=>t.onCommandExecuted(i=>{if(i.id!==d.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n;this.fireEvent(this.Event.OverGridImageRemoved,{workbook:s,removeImageParams:a})})),this.registerEventHandler(this.Event.OverGridImageChanged,()=>t.onCommandExecuted(i=>{if(i.id!==d.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,g=e.get(l.IDrawingManagerService),o=a.map(h=>this._injector.createInstance(u,g.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:o})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>t.onCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=e.get(l.IDrawingManagerService),g=n.map(o=>a.getDrawingByParam(o));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(g)})}))}_createFOverGridImage(e){return e.map(t=>this._injector.createInstance(u,t))}}v.FUniver.extend(W);class H extends p.FRange{async insertCellImageAsync(e){var s;const t=this._injector.get(S.IRenderManagerService),i=(s=S.getCurrentTypeOfRenderer(c.UniverInstanceType.UNIVER_SHEET,this._injector.get(c.IUniverInstanceService),t))==null?void 0:s.with(d.SheetDrawingUpdateController);if(!i)return!1;const n={unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this.getRow(),col:this.getColumn()};return typeof e=="string"?i.insertCellImageByUrl(e,n):i.insertCellImageByFile(e,n)}}p.FRange.extend(H);