@univerjs/sheets-drawing-ui 0.6.0-experimental.20250212-dbe9830 → 0.6.0-experimental.20250220-d9a8e74
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 +1 -1
- package/lib/es/facade.js +126 -125
- package/lib/types/facade/f-enum.d.ts +3 -2
- package/lib/types/facade/f-event.d.ts +3 -2
- package/lib/types/facade/f-over-grid-image.d.ts +2 -1
- package/lib/types/facade/f-univer.d.ts +2 -1
- package/lib/types/facade/f-worksheet.d.ts +2 -1
- package/lib/umd/facade.js +1 -1
- package/package.json +17 -17
package/lib/cjs/facade.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var B=Object.defineProperty;var A=(r,t,e)=>t in r?B(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var y=(r,t,e)=>A(r,typeof t!="symbol"?t+"":t,e);const o=require("@univerjs/core"),l=require("@univerjs/drawing"),k=require("@univerjs/engine-render"),g=require("@univerjs/sheets-drawing-ui"),v=require("@univerjs/sheets-ui"),w=require("@univerjs/sheets-drawing"),D=require("@univerjs/sheets-ui/facade"),R=require("@univerjs/sheets/facade"),C=require("@univerjs/ui");var F=Object.defineProperty,x=Object.getOwnPropertyDescriptor,G=(r,t,e,i)=>{for(var n=i>1?void 0:i?x(t,e):t,s=r.length-1,a;s>=0;s--)(a=r[s])&&(n=(i?a(t,e,n):a(n))||n);return i&&n&&F(t,e,n),n},b=(r,t)=>(e,i)=>t(e,i,r);function M(r,t){const{from:e,to:i,flipY:n=!1,flipX:s=!1,angle:a=0,skewX:c=0,skewY:d=0}=r.sheetTransform,{column:h,columnOffset:m,row:I,rowOffset:S}=e,_=v.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:e,to:i},t),{left:E,top:O,width:p,height:T}=_;return{...r,column:h,columnOffset:m,row:I,rowOffset:S,width:p,height:T,flipY:n,flipX:s,angle:a,skewX:c,skewY:d}}function U(r,t,e){const{column:i,columnOffset:n,row:s,rowOffset:a,flipY:c=!1,flipX:d=!1,angle:h=0,skewX:m=0,skewY:I=0,width:S,height:_}=r,E=v.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:i,columnOffset:n,row:s,rowOffset:a},S,_,t,e),{sheetTransform:O,transform:p}=E;return{...r,sheetTransform:{...O,flipY:c,flipX:d,angle:h,skewX:m,skewY:I},transform:{...p,flipY:c,flipX:d,angle:h,skewX:m,skewY:I}}}let f=class{constructor(r,t,e){y(this,"_image");this._injector=e,this._image={drawingId:o.generateRandomId(6),drawingType:o.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:o.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:t,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const e=this._injector.get(k.IRenderManagerService).getRenderById(r.unitId);if(!e)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const i=e.with(v.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=M(r,i),this}setSource(r,t){const e=t!=null?t:o.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=e,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 t=this._injector.get(k.IRenderManagerService).getRenderById(this._image.unitId);if(!t)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const e=t.with(v.ISheetSelectionRenderService),i=t.with(v.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 U(this._image,e,i)}};f=G([b(2,o.Inject(o.Injector))],f);let u=class extends o.FBase{constructor(r,t,e){super(),this._image=r,this._commandService=t,this._injector=e}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(f);return r.setImage(this._image),r}setSource(r,t){const e=t!=null?t:o.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=e,this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,t,e,i){const n=this.toBuilder();n.setColumn(t),n.setRow(r),e!=null&&n.setRowOffset(e),i!=null&&n.setColumnOffset(i);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,t){const e=this.toBuilder();e.setWidth(r),e.setHeight(t);const i=await e.buildAsync();return this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[i]})}setCrop(r,t,e,i){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),t!=null&&(this._image.srcRect.left=t),e!=null&&(this._image.srcRect.bottom=e),i!=null&&(this._image.srcRect.right=i),this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(g.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(g.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(g.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(g.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.front})}};u=G([b(1,o.ICommandService),b(2,o.Inject(o.Injector))],u);class j extends R.FWorksheet{addFloatDomToPosition(t,e){const i=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:a}=D.transformComponentKey(t,this._injector.get(C.ComponentManager)),d=this._injector.get(g.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...t,componentKey:s,unitId:i,subUnitId:n},e);return d?(a.add(d.dispose),{id:d.id,dispose:()=>{a.dispose(),d.dispose()}}):(a.dispose(),null)}addFloatDomToRange(t,e,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=D.transformComponentKey(e,this._injector.get(C.ComponentManager)),m=this._injector.get(g.SheetCanvasFloatDomManagerService).addFloatDomToRange(t.getRange(),{...e,componentKey:c,unitId:s,subUnitId:a},i,n);return m?(d.add(m.dispose),{id:m.id,dispose:()=>{d.dispose(),m.dispose()}}):(d.dispose(),null)}addFloatDomToColumnHeader(t,e,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=D.transformComponentKey(e,this._injector.get(C.ComponentManager)),m=this._injector.get(g.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(t,{...e,componentKey:c,unitId:s,subUnitId:a},i,n);return m?(d.add(m.dispose),{id:m.id,dispose:()=>{d.dispose(),m.dispose()}}):(d.dispose(),null)}async insertImage(t,e,i,n,s){const a=this.newOverGridImage();if(typeof t=="string")a.setSource(t);else{const h=await t.getBlob().getDataAsString();a.setSource(h,o.ImageSourceType.BASE64)}e!==void 0?a.setColumn(e):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(g.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[c]})}insertImages(t){const e=t.map(i=>(i.unitId=this._fWorkbook.getId(),i.subUnitId=this.getSheetId(),i));return this._commandService.syncExecuteCommand(g.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}deleteImages(t){const e=t.map(i=>({unitId:this._fWorkbook.getId(),drawingId:i.getId(),subUnitId:this.getSheetId(),drawingType:i.getType()}));return this._commandService.syncExecuteCommand(g.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}getImages(){const e=this._injector.get(w.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),i=[];for(const n in e){const s=e[n];s.drawingType===o.DrawingTypeEnum.DRAWING_IMAGE&&i.push(this._injector.createInstance(u,s))}return i}getImageById(t){const i=this._injector.get(w.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:t});return i&&i.drawingType===o.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(u,i):null}getActiveImages(){const e=this._injector.get(w.ISheetDrawingService).getFocusDrawings(),i=[];for(const n in e){const s=e[n];i.push(this._injector.createInstance(u,s))}return i}updateImages(t){return this._commandService.syncExecuteCommand(g.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}onImageInserted(t){const e=this._injector.get(w.ISheetDrawingService);return o.toDisposable(e.add$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}onImageDeleted(t){const e=this._injector.get(w.ISheetDrawingService);return o.toDisposable(e.remove$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}onImageChanged(t){const e=this._injector.get(w.ISheetDrawingService);return o.toDisposable(e.update$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}newOverGridImage(){const t=this._fWorkbook.getId(),e=this.getSheetId();return this._injector.createInstance(f,t,e)}}R.FWorksheet.extend(j);class P extends o.FEnum{get DrawingType(){return o.DrawingTypeEnum}get ImageSourceType(){return o.ImageSourceType}get SheetDrawingAnchorType(){return w.SheetDrawingAnchorType}}o.FEnum.extend(P);class W extends o.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"}}o.FEventName.extend(W);class H extends o.FUniver{_initialize(t){const e=t.get(o.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>e.beforeCommandExecuted(i=>{if(i.id!==g.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,()=>e.beforeCommandExecuted(i=>{if(i.id!==g.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const a=t.get(l.IDrawingManagerService),{drawings:c}=n,d=c.map(m=>a.getDrawingByParam(m)),h={workbook:s,images:this._createFOverGridImage(d)};if(this.fireEvent(this.Event.BeforeOverGridImageRemove,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageRemove event")})),this.registerEventHandler(this.Event.BeforeOverGridImageChange,()=>e.beforeCommandExecuted(i=>{if(i.id!==g.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=t.get(l.IDrawingManagerService),d=[];a.forEach(m=>{const I=c.getDrawingByParam(m);I!=null&&d.push({changeParam:m,image:this._injector.createInstance(u,I)})});const h={workbook:s,images:d};if(this.fireEvent(this.Event.BeforeOverGridImageChange,h),h.cancel)throw c.updateNotification(a),new Error("Canceled by BeforeOverGridImageChange event")})),this.registerEventHandler(this.Event.BeforeOverGridImageSelect,()=>e.beforeCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=t.get(l.IDrawingManagerService),c=a.getFocusDrawings(),d=n.map(m=>a.getDrawingByParam(m)),h={workbook:s,selectedImages:this._createFOverGridImage(d),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,()=>e.onCommandExecuted(i=>{if(i.id!==g.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,()=>e.onCommandExecuted(i=>{if(i.id!==g.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,()=>e.onCommandExecuted(i=>{if(i.id!==g.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=t.get(l.IDrawingManagerService),d=a.map(h=>this._injector.createInstance(u,c.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:d})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>e.onCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=t.get(l.IDrawingManagerService),c=n.map(d=>a.getDrawingByParam(d));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(c)})}))}_createFOverGridImage(t){return t.map(e=>this._injector.createInstance(u,e))}}o.FUniver.extend(H);
|
|
1
|
+
"use strict";var A=Object.defineProperty;var F=(r,t,e)=>t in r?A(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var k=(r,t,e)=>F(r,typeof t!="symbol"?t+"":t,e);const g=require("@univerjs/core"),v=require("@univerjs/core/facade"),l=require("@univerjs/drawing"),R=require("@univerjs/engine-render"),c=require("@univerjs/sheets-drawing-ui"),f=require("@univerjs/sheets-ui"),w=require("@univerjs/sheets-drawing"),C=require("@univerjs/sheets-ui/facade"),G=require("@univerjs/sheets/facade"),b=require("@univerjs/ui");var x=Object.defineProperty,M=Object.getOwnPropertyDescriptor,T=(r,t,e,i)=>{for(var n=i>1?void 0:i?M(t,e):t,s=r.length-1,a;s>=0;s--)(a=r[s])&&(n=(i?a(t,e,n):a(n))||n);return i&&n&&x(t,e,n),n},E=(r,t)=>(e,i)=>t(e,i,r);function U(r,t){const{from:e,to:i,flipY:n=!1,flipX:s=!1,angle:a=0,skewX:d=0,skewY:o=0}=r.sheetTransform,{column:h,columnOffset:m,row:I,rowOffset:_}=e,p=f.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:e,to:i},t),{left:O,top:y,width:D,height:B}=p;return{...r,column:h,columnOffset:m,row:I,rowOffset:_,width:D,height:B,flipY:n,flipX:s,angle:a,skewX:d,skewY:o}}function j(r,t,e){const{column:i,columnOffset:n,row:s,rowOffset:a,flipY:d=!1,flipX:o=!1,angle:h=0,skewX:m=0,skewY:I=0,width:_,height:p}=r,O=f.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:i,columnOffset:n,row:s,rowOffset:a},_,p,t,e),{sheetTransform:y,transform:D}=O;return{...r,sheetTransform:{...y,flipY:d,flipX:o,angle:h,skewX:m,skewY:I},transform:{...D,flipY:d,flipX:o,angle:h,skewX:m,skewY:I}}}let S=class{constructor(r,t,e){k(this,"_image");this._injector=e,this._image={drawingId:g.generateRandomId(6),drawingType:g.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:g.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:t,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const e=this._injector.get(R.IRenderManagerService).getRenderById(r.unitId);if(!e)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const i=e.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=U(r,i),this}setSource(r,t){const e=t!=null?t:g.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=e,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 t=this._injector.get(R.IRenderManagerService).getRenderById(this._image.unitId);if(!t)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const e=t.with(f.ISheetSelectionRenderService),i=t.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 j(this._image,e,i)}};S=T([E(2,g.Inject(g.Injector))],S);let u=class extends v.FBase{constructor(r,t,e){super(),this._image=r,this._commandService=t,this._injector=e}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(S);return r.setImage(this._image),r}setSource(r,t){const e=t!=null?t:g.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=e,this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,t,e,i){const n=this.toBuilder();n.setColumn(t),n.setRow(r),e!=null&&n.setRowOffset(e),i!=null&&n.setColumnOffset(i);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,t){const e=this.toBuilder();e.setWidth(r),e.setHeight(t);const i=await e.buildAsync();return this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[i]})}setCrop(r,t,e,i){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),t!=null&&(this._image.srcRect.left=t),e!=null&&(this._image.srcRect.bottom=e),i!=null&&(this._image.srcRect.right=i),this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(c.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(c.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(c.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(c.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:g.ArrangeTypeEnum.front})}};u=T([E(1,g.ICommandService),E(2,g.Inject(g.Injector))],u);class P extends G.FWorksheet{addFloatDomToPosition(t,e){const i=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:a}=C.transformComponentKey(t,this._injector.get(b.ComponentManager)),o=this._injector.get(c.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...t,componentKey:s,unitId:i,subUnitId:n},e);return o?(a.add(o.dispose),{id:o.id,dispose:()=>{a.dispose(),o.dispose()}}):(a.dispose(),null)}addFloatDomToRange(t,e,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:d,disposableCollection:o}=C.transformComponentKey(e,this._injector.get(b.ComponentManager)),m=this._injector.get(c.SheetCanvasFloatDomManagerService).addFloatDomToRange(t.getRange(),{...e,componentKey:d,unitId:s,subUnitId:a},i,n);return m?(o.add(m.dispose),{id:m.id,dispose:()=>{o.dispose(),m.dispose()}}):(o.dispose(),null)}addFloatDomToColumnHeader(t,e,i,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:d,disposableCollection:o}=C.transformComponentKey(e,this._injector.get(b.ComponentManager)),m=this._injector.get(c.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(t,{...e,componentKey:d,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(t,e,i,n,s){const a=this.newOverGridImage();if(typeof t=="string")a.setSource(t);else{const h=await t.getBlob().getDataAsString();a.setSource(h,g.ImageSourceType.BASE64)}e!==void 0?a.setColumn(e):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 d=await a.buildAsync();return this._commandService.syncExecuteCommand(c.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[d]})}insertImages(t){const e=t.map(i=>(i.unitId=this._fWorkbook.getId(),i.subUnitId=this.getSheetId(),i));return this._commandService.syncExecuteCommand(c.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}deleteImages(t){const e=t.map(i=>({unitId:this._fWorkbook.getId(),drawingId:i.getId(),subUnitId:this.getSheetId(),drawingType:i.getType()}));return this._commandService.syncExecuteCommand(c.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:e}),this}getImages(){const e=this._injector.get(w.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),i=[];for(const n in e){const s=e[n];s.drawingType===g.DrawingTypeEnum.DRAWING_IMAGE&&i.push(this._injector.createInstance(u,s))}return i}getImageById(t){const i=this._injector.get(w.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:t});return i&&i.drawingType===g.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(u,i):null}getActiveImages(){const e=this._injector.get(w.ISheetDrawingService).getFocusDrawings(),i=[];for(const n in e){const s=e[n];i.push(this._injector.createInstance(u,s))}return i}updateImages(t){return this._commandService.syncExecuteCommand(c.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}onImageInserted(t){const e=this._injector.get(w.ISheetDrawingService);return g.toDisposable(e.add$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}onImageDeleted(t){const e=this._injector.get(w.ISheetDrawingService);return g.toDisposable(e.remove$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}onImageChanged(t){const e=this._injector.get(w.ISheetDrawingService);return g.toDisposable(e.update$.subscribe(i=>{const n=i.map(s=>this._injector.createInstance(u,e.getDrawingByParam(s)));t(n)}))}newOverGridImage(){const t=this._fWorkbook.getId(),e=this.getSheetId();return this._injector.createInstance(S,t,e)}}G.FWorksheet.extend(P);class W extends v.FEnum{get DrawingType(){return g.DrawingTypeEnum}get ImageSourceType(){return g.ImageSourceType}get SheetDrawingAnchorType(){return w.SheetDrawingAnchorType}}v.FEnum.extend(W);class H 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(H);class q extends v.FUniver{_initialize(t){const e=t.get(g.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>e.beforeCommandExecuted(i=>{if(i.id!==c.InsertSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,d={workbook:s,insertImageParams:a};if(this.fireEvent(this.Event.BeforeOverGridImageInsert,d),d.cancel)throw new Error("Canceled by BeforeOverGridImageInsert event")})),this.registerEventHandler(this.Event.BeforeOverGridImageRemove,()=>e.beforeCommandExecuted(i=>{if(i.id!==c.RemoveSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const a=t.get(l.IDrawingManagerService),{drawings:d}=n,o=d.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,()=>e.beforeCommandExecuted(i=>{if(i.id!==c.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,d=t.get(l.IDrawingManagerService),o=[];a.forEach(m=>{const I=d.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 d.updateNotification(a),new Error("Canceled by BeforeOverGridImageChange event")})),this.registerEventHandler(this.Event.BeforeOverGridImageSelect,()=>e.beforeCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=t.get(l.IDrawingManagerService),d=a.getFocusDrawings(),o=n.map(m=>a.getDrawingByParam(m)),h={workbook:s,selectedImages:this._createFOverGridImage(o),oldSelectedImages:this._createFOverGridImage(d)};if(this.fireEvent(this.Event.BeforeOverGridImageSelect,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageSelect event")})),this.registerEventHandler(this.Event.OverGridImageInserted,()=>e.onCommandExecuted(i=>{if(i.id!==c.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,()=>e.onCommandExecuted(i=>{if(i.id!==c.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,()=>e.onCommandExecuted(i=>{if(i.id!==c.SetSheetDrawingCommand.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,d=t.get(l.IDrawingManagerService),o=a.map(h=>this._injector.createInstance(u,d.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:o})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>e.onCommandExecuted(i=>{if(i.id!==l.SetDrawingSelectedOperation.id)return;const n=i.params,s=this.getActiveWorkbook();if(s==null)return;const a=t.get(l.IDrawingManagerService),d=n.map(o=>a.getDrawingByParam(o));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(d)})}))}_createFOverGridImage(t){return t.map(e=>this._injector.createInstance(u,e))}}v.FUniver.extend(q);
|
package/lib/es/facade.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
var L = Object.defineProperty;
|
|
2
|
-
var X = (
|
|
3
|
-
var x = (
|
|
4
|
-
import { Inject as P, Injector as j, ICommandService as W, generateRandomId as Y, DrawingTypeEnum as _, ImageSourceType as I,
|
|
2
|
+
var X = (r, t, e) => t in r ? L(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
|
|
3
|
+
var x = (r, t, e) => X(r, typeof t != "symbol" ? t + "" : t, e);
|
|
4
|
+
import { Inject as P, Injector as j, ICommandService as W, generateRandomId as Y, DrawingTypeEnum as _, ImageSourceType as I, ArrangeTypeEnum as v, toDisposable as k } from "@univerjs/core";
|
|
5
|
+
import { FBase as V, FEnum as M, FEventName as H, FUniver as z } from "@univerjs/core/facade";
|
|
5
6
|
import { getImageSize as q, IDrawingManagerService as f, SetDrawingSelectedOperation as A } from "@univerjs/drawing";
|
|
6
7
|
import { IRenderManagerService as F } from "@univerjs/engine-render";
|
|
7
8
|
import { SetSheetDrawingCommand as h, SetDrawingArrangeCommand as w, SheetCanvasFloatDomManagerService as C, InsertSheetDrawingCommand as S, RemoveSheetDrawingCommand as R } from "@univerjs/sheets-drawing-ui";
|
|
@@ -10,20 +11,20 @@ import { ISheetDrawingService as l, SheetDrawingAnchorType as ee } from "@univer
|
|
|
10
11
|
import { transformComponentKey as y } from "@univerjs/sheets-ui/facade";
|
|
11
12
|
import { FWorksheet as N } from "@univerjs/sheets/facade";
|
|
12
13
|
import { ComponentManager as D } from "@univerjs/ui";
|
|
13
|
-
var te = Object.defineProperty,
|
|
14
|
-
for (var n =
|
|
15
|
-
(o =
|
|
16
|
-
return
|
|
17
|
-
}, G = (
|
|
18
|
-
function
|
|
19
|
-
const { from: e, to:
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
{ from: e, to:
|
|
14
|
+
var te = Object.defineProperty, re = Object.getOwnPropertyDescriptor, $ = (r, t, e, i) => {
|
|
15
|
+
for (var n = i > 1 ? void 0 : i ? re(t, e) : t, s = r.length - 1, o; s >= 0; s--)
|
|
16
|
+
(o = r[s]) && (n = (i ? o(t, e, n) : o(n)) || n);
|
|
17
|
+
return i && n && te(t, e, n), n;
|
|
18
|
+
}, G = (r, t) => (e, i) => t(e, i, r);
|
|
19
|
+
function ie(r, t) {
|
|
20
|
+
const { from: e, to: i, flipY: n = !1, flipX: s = !1, angle: o = 0, skewX: d = 0, skewY: a = 0 } = r.sheetTransform, { column: g, columnOffset: c, row: u, rowOffset: b } = e, O = Q(
|
|
21
|
+
r.unitId,
|
|
22
|
+
r.subUnitId,
|
|
23
|
+
{ from: e, to: i },
|
|
23
24
|
t
|
|
24
25
|
), { left: B, top: T, width: E, height: K } = O;
|
|
25
26
|
return {
|
|
26
|
-
...
|
|
27
|
+
...r,
|
|
27
28
|
column: g,
|
|
28
29
|
columnOffset: c,
|
|
29
30
|
row: u,
|
|
@@ -37,18 +38,18 @@ function re(i, t) {
|
|
|
37
38
|
skewY: a
|
|
38
39
|
};
|
|
39
40
|
}
|
|
40
|
-
function ne(
|
|
41
|
-
const { column:
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
{ column:
|
|
41
|
+
function ne(r, t, e) {
|
|
42
|
+
const { column: i, columnOffset: n, row: s, rowOffset: o, flipY: d = !1, flipX: a = !1, angle: g = 0, skewX: c = 0, skewY: u = 0, width: b, height: O } = r, B = Z(
|
|
43
|
+
r.unitId,
|
|
44
|
+
r.subUnitId,
|
|
45
|
+
{ column: i, columnOffset: n, row: s, rowOffset: o },
|
|
45
46
|
b,
|
|
46
47
|
O,
|
|
47
48
|
t,
|
|
48
49
|
e
|
|
49
50
|
), { sheetTransform: T, transform: E } = B;
|
|
50
51
|
return {
|
|
51
|
-
...
|
|
52
|
+
...r,
|
|
52
53
|
sheetTransform: {
|
|
53
54
|
...T,
|
|
54
55
|
flipY: d,
|
|
@@ -68,14 +69,14 @@ function ne(i, t, e) {
|
|
|
68
69
|
};
|
|
69
70
|
}
|
|
70
71
|
let p = class {
|
|
71
|
-
constructor(
|
|
72
|
+
constructor(r, t, e) {
|
|
72
73
|
x(this, "_image");
|
|
73
74
|
this._injector = e, this._image = {
|
|
74
75
|
drawingId: Y(6),
|
|
75
76
|
drawingType: _.DRAWING_IMAGE,
|
|
76
77
|
imageSourceType: I.BASE64,
|
|
77
78
|
source: "",
|
|
78
|
-
unitId:
|
|
79
|
+
unitId: r,
|
|
79
80
|
subUnitId: t,
|
|
80
81
|
column: 0,
|
|
81
82
|
columnOffset: 0,
|
|
@@ -106,12 +107,12 @@ let p = class {
|
|
|
106
107
|
* activeSheet.insertImages([param]);
|
|
107
108
|
* ```
|
|
108
109
|
*/
|
|
109
|
-
setImage(
|
|
110
|
-
const e = this._injector.get(F).getRenderById(
|
|
110
|
+
setImage(r) {
|
|
111
|
+
const e = this._injector.get(F).getRenderById(r.unitId);
|
|
111
112
|
if (!e)
|
|
112
|
-
throw new Error(`Render Unit with unitId ${
|
|
113
|
-
const
|
|
114
|
-
return
|
|
113
|
+
throw new Error(`Render Unit with unitId ${r.unitId} not found`);
|
|
114
|
+
const i = e.with(U);
|
|
115
|
+
return r.sheetTransform == null && (r.sheetTransform = {
|
|
115
116
|
from: {
|
|
116
117
|
column: 0,
|
|
117
118
|
columnOffset: 0,
|
|
@@ -124,11 +125,11 @@ let p = class {
|
|
|
124
125
|
row: 0,
|
|
125
126
|
rowOffset: 0
|
|
126
127
|
}
|
|
127
|
-
}), this._image =
|
|
128
|
+
}), this._image = ie(r, i), this;
|
|
128
129
|
}
|
|
129
|
-
setSource(
|
|
130
|
+
setSource(r, t) {
|
|
130
131
|
const e = t != null ? t : I.URL;
|
|
131
|
-
return this._image.source =
|
|
132
|
+
return this._image.source = r, this._image.imageSourceType = e, this;
|
|
132
133
|
}
|
|
133
134
|
getsource() {
|
|
134
135
|
return this._image.source;
|
|
@@ -150,8 +151,8 @@ let p = class {
|
|
|
150
151
|
* activeSheet.insertImages([param]);
|
|
151
152
|
* ```
|
|
152
153
|
*/
|
|
153
|
-
setColumn(
|
|
154
|
-
return this._image.column =
|
|
154
|
+
setColumn(r) {
|
|
155
|
+
return this._image.column = r, this;
|
|
155
156
|
}
|
|
156
157
|
/**
|
|
157
158
|
* Set the position of the image
|
|
@@ -167,8 +168,8 @@ let p = class {
|
|
|
167
168
|
* activeSheet.insertImages([param]);
|
|
168
169
|
* ```
|
|
169
170
|
*/
|
|
170
|
-
setRow(
|
|
171
|
-
return this._image.row =
|
|
171
|
+
setRow(r) {
|
|
172
|
+
return this._image.row = r, this;
|
|
172
173
|
}
|
|
173
174
|
/**
|
|
174
175
|
* Set the column offset of the image in a unit
|
|
@@ -184,8 +185,8 @@ let p = class {
|
|
|
184
185
|
* activeSheet.insertImages([param]);
|
|
185
186
|
* ```
|
|
186
187
|
*/
|
|
187
|
-
setColumnOffset(
|
|
188
|
-
return this._image.columnOffset =
|
|
188
|
+
setColumnOffset(r) {
|
|
189
|
+
return this._image.columnOffset = r, this;
|
|
189
190
|
}
|
|
190
191
|
/**
|
|
191
192
|
* Set the row offset of the image in a unit
|
|
@@ -201,8 +202,8 @@ let p = class {
|
|
|
201
202
|
* activeSheet.insertImages([param]);
|
|
202
203
|
* ```
|
|
203
204
|
*/
|
|
204
|
-
setRowOffset(
|
|
205
|
-
return this._image.rowOffset =
|
|
205
|
+
setRowOffset(r) {
|
|
206
|
+
return this._image.rowOffset = r, this;
|
|
206
207
|
}
|
|
207
208
|
/**
|
|
208
209
|
* set the width of the image
|
|
@@ -218,8 +219,8 @@ let p = class {
|
|
|
218
219
|
* activeSheet.insertImages([param]);
|
|
219
220
|
* ```
|
|
220
221
|
*/
|
|
221
|
-
setWidth(
|
|
222
|
-
return this._image.width =
|
|
222
|
+
setWidth(r) {
|
|
223
|
+
return this._image.width = r, this;
|
|
223
224
|
}
|
|
224
225
|
/**
|
|
225
226
|
* Set the height of the image
|
|
@@ -235,8 +236,8 @@ let p = class {
|
|
|
235
236
|
* activeSheet.insertImages([param]);
|
|
236
237
|
* ```
|
|
237
238
|
*/
|
|
238
|
-
setHeight(
|
|
239
|
-
return this._image.height =
|
|
239
|
+
setHeight(r) {
|
|
240
|
+
return this._image.height = r, this;
|
|
240
241
|
}
|
|
241
242
|
/**
|
|
242
243
|
* Set the anchor type of the image, whether the position and size change with the cell
|
|
@@ -252,8 +253,8 @@ let p = class {
|
|
|
252
253
|
* activeSheet.insertImages([param]);
|
|
253
254
|
* ```
|
|
254
255
|
*/
|
|
255
|
-
setAnchorType(
|
|
256
|
-
return this._image.anchorType =
|
|
256
|
+
setAnchorType(r) {
|
|
257
|
+
return this._image.anchorType = r, this;
|
|
257
258
|
}
|
|
258
259
|
/**
|
|
259
260
|
* Set the cropping region of the image by defining the top edges, thereby displaying the specific part of the image you want.
|
|
@@ -269,8 +270,8 @@ let p = class {
|
|
|
269
270
|
* activeSheet.insertImages([param]);
|
|
270
271
|
* ```
|
|
271
272
|
*/
|
|
272
|
-
setCropTop(
|
|
273
|
-
return this._initializeSrcRect(), this._image.srcRect.top =
|
|
273
|
+
setCropTop(r) {
|
|
274
|
+
return this._initializeSrcRect(), this._image.srcRect.top = r, this;
|
|
274
275
|
}
|
|
275
276
|
/**
|
|
276
277
|
* Set the cropping region of the image by defining the left edges, thereby displaying the specific part of the image you want.
|
|
@@ -286,8 +287,8 @@ let p = class {
|
|
|
286
287
|
* activeSheet.insertImages([param]);
|
|
287
288
|
* ```
|
|
288
289
|
*/
|
|
289
|
-
setCropLeft(
|
|
290
|
-
return this._initializeSrcRect(), this._image.srcRect.left =
|
|
290
|
+
setCropLeft(r) {
|
|
291
|
+
return this._initializeSrcRect(), this._image.srcRect.left = r, this;
|
|
291
292
|
}
|
|
292
293
|
/**
|
|
293
294
|
* Set the cropping region of the image by defining the bottom edges, thereby displaying the specific part of the image you want.
|
|
@@ -303,8 +304,8 @@ let p = class {
|
|
|
303
304
|
* activeSheet.insertImages([param]);
|
|
304
305
|
* ```
|
|
305
306
|
*/
|
|
306
|
-
setCropBottom(
|
|
307
|
-
return this._initializeSrcRect(), this._image.srcRect.bottom =
|
|
307
|
+
setCropBottom(r) {
|
|
308
|
+
return this._initializeSrcRect(), this._image.srcRect.bottom = r, this;
|
|
308
309
|
}
|
|
309
310
|
/**
|
|
310
311
|
* Set the cropping region of the image by defining the right edges, thereby displaying the specific part of the image you want.
|
|
@@ -320,8 +321,8 @@ let p = class {
|
|
|
320
321
|
* activeSheet.insertImages([param]);
|
|
321
322
|
* ```
|
|
322
323
|
*/
|
|
323
|
-
setCropRight(
|
|
324
|
-
return this._initializeSrcRect(), this._image.srcRect.right =
|
|
324
|
+
setCropRight(r) {
|
|
325
|
+
return this._initializeSrcRect(), this._image.srcRect.right = r, this;
|
|
325
326
|
}
|
|
326
327
|
_initializeSrcRect() {
|
|
327
328
|
this._image.srcRect == null && (this._image.srcRect = {
|
|
@@ -345,37 +346,37 @@ let p = class {
|
|
|
345
346
|
* activeSheet.insertImages([param]);
|
|
346
347
|
* ```
|
|
347
348
|
*/
|
|
348
|
-
setRotate(
|
|
349
|
-
return this._image.angle =
|
|
349
|
+
setRotate(r) {
|
|
350
|
+
return this._image.angle = r, this;
|
|
350
351
|
}
|
|
351
352
|
// setPresetGeometry(prstGeom: PresetGeometryType): FOverGridImageBuilder {
|
|
352
353
|
// this._image.prstGeom = prstGeom;
|
|
353
354
|
// return this;
|
|
354
355
|
// }
|
|
355
|
-
setUnitId(
|
|
356
|
-
return this._image.unitId =
|
|
356
|
+
setUnitId(r) {
|
|
357
|
+
return this._image.unitId = r, this;
|
|
357
358
|
}
|
|
358
|
-
setSubUnitId(
|
|
359
|
-
return this._image.subUnitId =
|
|
359
|
+
setSubUnitId(r) {
|
|
360
|
+
return this._image.subUnitId = r, this;
|
|
360
361
|
}
|
|
361
362
|
async buildAsync() {
|
|
362
363
|
const t = this._injector.get(F).getRenderById(this._image.unitId);
|
|
363
364
|
if (!t)
|
|
364
365
|
throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);
|
|
365
|
-
const e = t.with(J),
|
|
366
|
+
const e = t.with(J), i = t.with(U);
|
|
366
367
|
if (this._image.width === 0 || this._image.height === 0) {
|
|
367
368
|
const n = await q(this._image.source), s = n.width, o = n.height;
|
|
368
369
|
this._image.width === 0 && (this._image.width = s), this._image.height === 0 && (this._image.height = o);
|
|
369
370
|
}
|
|
370
|
-
return ne(this._image, e,
|
|
371
|
+
return ne(this._image, e, i);
|
|
371
372
|
}
|
|
372
373
|
};
|
|
373
374
|
p = $([
|
|
374
375
|
G(2, P(j))
|
|
375
376
|
], p);
|
|
376
377
|
let m = class extends V {
|
|
377
|
-
constructor(
|
|
378
|
-
super(), this._image =
|
|
378
|
+
constructor(r, t, e) {
|
|
379
|
+
super(), this._image = r, this._commandService = t, this._injector = e;
|
|
379
380
|
}
|
|
380
381
|
getId() {
|
|
381
382
|
return this._image.drawingId;
|
|
@@ -413,16 +414,16 @@ let m = class extends V {
|
|
|
413
414
|
* ```
|
|
414
415
|
*/
|
|
415
416
|
toBuilder() {
|
|
416
|
-
const
|
|
417
|
-
return
|
|
417
|
+
const r = this._injector.createInstance(p);
|
|
418
|
+
return r.setImage(this._image), r;
|
|
418
419
|
}
|
|
419
|
-
setSource(
|
|
420
|
+
setSource(r, t) {
|
|
420
421
|
const e = t != null ? t : I.URL;
|
|
421
|
-
return this._image.source =
|
|
422
|
+
return this._image.source = r, this._image.imageSourceType = e, this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [this._image] });
|
|
422
423
|
}
|
|
423
|
-
async setPositionAsync(
|
|
424
|
+
async setPositionAsync(r, t, e, i) {
|
|
424
425
|
const n = this.toBuilder();
|
|
425
|
-
n.setColumn(t), n.setRow(
|
|
426
|
+
n.setColumn(t), n.setRow(r), e != null && n.setRowOffset(e), i != null && n.setColumnOffset(i);
|
|
426
427
|
const s = await n.buildAsync();
|
|
427
428
|
return this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [s] });
|
|
428
429
|
}
|
|
@@ -439,11 +440,11 @@ let m = class extends V {
|
|
|
439
440
|
* const image = activeSheet.getImages()[0];
|
|
440
441
|
* console.log('Set size state is ', image.setSize(50, 120));
|
|
441
442
|
*/
|
|
442
|
-
async setSizeAsync(
|
|
443
|
+
async setSizeAsync(r, t) {
|
|
443
444
|
const e = this.toBuilder();
|
|
444
|
-
e.setWidth(
|
|
445
|
-
const
|
|
446
|
-
return this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [
|
|
445
|
+
e.setWidth(r), e.setHeight(t);
|
|
446
|
+
const i = await e.buildAsync();
|
|
447
|
+
return this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [i] });
|
|
447
448
|
}
|
|
448
449
|
/**
|
|
449
450
|
* Set the cropping region of the image by defining the top, bottom, left, and right edges, thereby displaying the specific part of the image you want.
|
|
@@ -461,13 +462,13 @@ let m = class extends V {
|
|
|
461
462
|
* console.log('Set crop state is ', image.setCrop(10, 10, 10, 10));
|
|
462
463
|
* ```
|
|
463
464
|
*/
|
|
464
|
-
setCrop(
|
|
465
|
+
setCrop(r, t, e, i) {
|
|
465
466
|
return this._image.srcRect == null && (this._image.srcRect = {
|
|
466
467
|
top: 0,
|
|
467
468
|
left: 0,
|
|
468
469
|
bottom: 0,
|
|
469
470
|
right: 0
|
|
470
|
-
}),
|
|
471
|
+
}), r != null && (this._image.srcRect.top = r), t != null && (this._image.srcRect.left = t), e != null && (this._image.srcRect.bottom = e), i != null && (this._image.srcRect.right = i), this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [this._image] });
|
|
471
472
|
}
|
|
472
473
|
// setPresetGeometry(prstGeom: PresetGeometryType): boolean {
|
|
473
474
|
// this._image.prstGeom = prstGeom;
|
|
@@ -486,8 +487,8 @@ let m = class extends V {
|
|
|
486
487
|
* console.log('Set rotate state is ', image.setRotate(90));
|
|
487
488
|
* ```
|
|
488
489
|
*/
|
|
489
|
-
setRotate(
|
|
490
|
-
return this._image.sheetTransform.angle =
|
|
490
|
+
setRotate(r) {
|
|
491
|
+
return this._image.sheetTransform.angle = r, this._commandService.syncExecuteCommand(h.id, { unitId: this._image.unitId, drawings: [this._image] });
|
|
491
492
|
}
|
|
492
493
|
/**
|
|
493
494
|
* Move the image layer forward by one level
|
|
@@ -576,7 +577,7 @@ m = $([
|
|
|
576
577
|
], m);
|
|
577
578
|
class se extends N {
|
|
578
579
|
addFloatDomToPosition(t, e) {
|
|
579
|
-
const
|
|
580
|
+
const i = this._workbook.getUnitId(), n = this._worksheet.getSheetId(), { key: s, disposableCollection: o } = y(t, this._injector.get(D)), a = this._injector.get(C).addFloatDomToPosition({ ...t, componentKey: s, unitId: i, subUnitId: n }, e);
|
|
580
581
|
return a ? (o.add(a.dispose), {
|
|
581
582
|
id: a.id,
|
|
582
583
|
dispose: () => {
|
|
@@ -584,8 +585,8 @@ class se extends N {
|
|
|
584
585
|
}
|
|
585
586
|
}) : (o.dispose(), null);
|
|
586
587
|
}
|
|
587
|
-
addFloatDomToRange(t, e,
|
|
588
|
-
const s = this._workbook.getUnitId(), o = this._worksheet.getSheetId(), { key: d, disposableCollection: a } = y(e, this._injector.get(D)), c = this._injector.get(C).addFloatDomToRange(t.getRange(), { ...e, componentKey: d, unitId: s, subUnitId: o },
|
|
588
|
+
addFloatDomToRange(t, e, i, n) {
|
|
589
|
+
const s = this._workbook.getUnitId(), o = this._worksheet.getSheetId(), { key: d, disposableCollection: a } = y(e, this._injector.get(D)), c = this._injector.get(C).addFloatDomToRange(t.getRange(), { ...e, componentKey: d, unitId: s, subUnitId: o }, i, n);
|
|
589
590
|
return c ? (a.add(c.dispose), {
|
|
590
591
|
id: c.id,
|
|
591
592
|
dispose: () => {
|
|
@@ -593,8 +594,8 @@ class se extends N {
|
|
|
593
594
|
}
|
|
594
595
|
}) : (a.dispose(), null);
|
|
595
596
|
}
|
|
596
|
-
addFloatDomToColumnHeader(t, e,
|
|
597
|
-
const s = this._workbook.getUnitId(), o = this._worksheet.getSheetId(), { key: d, disposableCollection: a } = y(e, this._injector.get(D)), c = this._injector.get(C).addFloatDomToColumnHeader(t, { ...e, componentKey: d, unitId: s, subUnitId: o },
|
|
597
|
+
addFloatDomToColumnHeader(t, e, i, n) {
|
|
598
|
+
const s = this._workbook.getUnitId(), o = this._worksheet.getSheetId(), { key: d, disposableCollection: a } = y(e, this._injector.get(D)), c = this._injector.get(C).addFloatDomToColumnHeader(t, { ...e, componentKey: d, unitId: s, subUnitId: o }, i, n);
|
|
598
599
|
return c ? (a.add(c.dispose), {
|
|
599
600
|
id: c.id,
|
|
600
601
|
dispose: () => {
|
|
@@ -602,7 +603,7 @@ class se extends N {
|
|
|
602
603
|
}
|
|
603
604
|
}) : (a.dispose(), null);
|
|
604
605
|
}
|
|
605
|
-
async insertImage(t, e,
|
|
606
|
+
async insertImage(t, e, i, n, s) {
|
|
606
607
|
const o = this.newOverGridImage();
|
|
607
608
|
if (typeof t == "string")
|
|
608
609
|
o.setSource(t);
|
|
@@ -610,50 +611,50 @@ class se extends N {
|
|
|
610
611
|
const g = await t.getBlob().getDataAsString();
|
|
611
612
|
o.setSource(g, I.BASE64);
|
|
612
613
|
}
|
|
613
|
-
e !== void 0 ? o.setColumn(e) : o.setColumn(0),
|
|
614
|
+
e !== void 0 ? o.setColumn(e) : o.setColumn(0), i !== void 0 ? o.setRow(i) : o.setRow(0), n !== void 0 ? o.setColumnOffset(n) : o.setColumnOffset(0), s !== void 0 ? o.setRowOffset(s) : o.setRowOffset(0);
|
|
614
615
|
const d = await o.buildAsync();
|
|
615
616
|
return this._commandService.syncExecuteCommand(S.id, { unitId: this._fWorkbook.getId(), drawings: [d] });
|
|
616
617
|
}
|
|
617
618
|
insertImages(t) {
|
|
618
|
-
const e = t.map((
|
|
619
|
+
const e = t.map((i) => (i.unitId = this._fWorkbook.getId(), i.subUnitId = this.getSheetId(), i));
|
|
619
620
|
return this._commandService.syncExecuteCommand(S.id, { unitId: this._fWorkbook.getId(), drawings: e }), this;
|
|
620
621
|
}
|
|
621
622
|
deleteImages(t) {
|
|
622
|
-
const e = t.map((
|
|
623
|
+
const e = t.map((i) => ({
|
|
623
624
|
unitId: this._fWorkbook.getId(),
|
|
624
|
-
drawingId:
|
|
625
|
+
drawingId: i.getId(),
|
|
625
626
|
subUnitId: this.getSheetId(),
|
|
626
|
-
drawingType:
|
|
627
|
+
drawingType: i.getType()
|
|
627
628
|
}));
|
|
628
629
|
return this._commandService.syncExecuteCommand(R.id, { unitId: this._fWorkbook.getId(), drawings: e }), this;
|
|
629
630
|
}
|
|
630
631
|
getImages() {
|
|
631
|
-
const e = this._injector.get(l).getDrawingData(this._fWorkbook.getId(), this.getSheetId()),
|
|
632
|
+
const e = this._injector.get(l).getDrawingData(this._fWorkbook.getId(), this.getSheetId()), i = [];
|
|
632
633
|
for (const n in e) {
|
|
633
634
|
const s = e[n];
|
|
634
|
-
s.drawingType === _.DRAWING_IMAGE &&
|
|
635
|
+
s.drawingType === _.DRAWING_IMAGE && i.push(this._injector.createInstance(m, s));
|
|
635
636
|
}
|
|
636
|
-
return
|
|
637
|
+
return i;
|
|
637
638
|
}
|
|
638
639
|
getImageById(t) {
|
|
639
|
-
const
|
|
640
|
-
return
|
|
640
|
+
const i = this._injector.get(l).getDrawingByParam({ unitId: this._fWorkbook.getId(), subUnitId: this.getSheetId(), drawingId: t });
|
|
641
|
+
return i && i.drawingType === _.DRAWING_IMAGE ? this._injector.createInstance(m, i) : null;
|
|
641
642
|
}
|
|
642
643
|
getActiveImages() {
|
|
643
|
-
const e = this._injector.get(l).getFocusDrawings(),
|
|
644
|
+
const e = this._injector.get(l).getFocusDrawings(), i = [];
|
|
644
645
|
for (const n in e) {
|
|
645
646
|
const s = e[n];
|
|
646
|
-
|
|
647
|
+
i.push(this._injector.createInstance(m, s));
|
|
647
648
|
}
|
|
648
|
-
return
|
|
649
|
+
return i;
|
|
649
650
|
}
|
|
650
651
|
updateImages(t) {
|
|
651
652
|
return this._commandService.syncExecuteCommand(h.id, { unitId: this._fWorkbook.getId(), drawings: t }), this;
|
|
652
653
|
}
|
|
653
654
|
onImageInserted(t) {
|
|
654
655
|
const e = this._injector.get(l);
|
|
655
|
-
return k(e.add$.subscribe((
|
|
656
|
-
const n =
|
|
656
|
+
return k(e.add$.subscribe((i) => {
|
|
657
|
+
const n = i.map(
|
|
657
658
|
(s) => this._injector.createInstance(m, e.getDrawingByParam(s))
|
|
658
659
|
);
|
|
659
660
|
t(n);
|
|
@@ -661,8 +662,8 @@ class se extends N {
|
|
|
661
662
|
}
|
|
662
663
|
onImageDeleted(t) {
|
|
663
664
|
const e = this._injector.get(l);
|
|
664
|
-
return k(e.remove$.subscribe((
|
|
665
|
-
const n =
|
|
665
|
+
return k(e.remove$.subscribe((i) => {
|
|
666
|
+
const n = i.map(
|
|
666
667
|
(s) => this._injector.createInstance(m, e.getDrawingByParam(s))
|
|
667
668
|
);
|
|
668
669
|
t(n);
|
|
@@ -670,8 +671,8 @@ class se extends N {
|
|
|
670
671
|
}
|
|
671
672
|
onImageChanged(t) {
|
|
672
673
|
const e = this._injector.get(l);
|
|
673
|
-
return k(e.update$.subscribe((
|
|
674
|
-
const n =
|
|
674
|
+
return k(e.update$.subscribe((i) => {
|
|
675
|
+
const n = i.map(
|
|
675
676
|
(s) => this._injector.createInstance(m, e.getDrawingByParam(s))
|
|
676
677
|
);
|
|
677
678
|
t(n);
|
|
@@ -731,9 +732,9 @@ class de extends z {
|
|
|
731
732
|
const e = t.get(W);
|
|
732
733
|
this.registerEventHandler(
|
|
733
734
|
this.Event.BeforeOverGridImageInsert,
|
|
734
|
-
() => e.beforeCommandExecuted((
|
|
735
|
-
if (
|
|
736
|
-
const n =
|
|
735
|
+
() => e.beforeCommandExecuted((i) => {
|
|
736
|
+
if (i.id !== S.id) return;
|
|
737
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
737
738
|
if (s == null || n == null)
|
|
738
739
|
return;
|
|
739
740
|
const { drawings: o } = n, d = {
|
|
@@ -745,9 +746,9 @@ class de extends z {
|
|
|
745
746
|
})
|
|
746
747
|
), this.registerEventHandler(
|
|
747
748
|
this.Event.BeforeOverGridImageRemove,
|
|
748
|
-
() => e.beforeCommandExecuted((
|
|
749
|
-
if (
|
|
750
|
-
const n =
|
|
749
|
+
() => e.beforeCommandExecuted((i) => {
|
|
750
|
+
if (i.id !== R.id) return;
|
|
751
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
751
752
|
if (s == null || n == null)
|
|
752
753
|
return;
|
|
753
754
|
const o = t.get(f), { drawings: d } = n, a = d.map((c) => o.getDrawingByParam(c)), g = {
|
|
@@ -759,9 +760,9 @@ class de extends z {
|
|
|
759
760
|
})
|
|
760
761
|
), this.registerEventHandler(
|
|
761
762
|
this.Event.BeforeOverGridImageChange,
|
|
762
|
-
() => e.beforeCommandExecuted((
|
|
763
|
-
if (
|
|
764
|
-
const n =
|
|
763
|
+
() => e.beforeCommandExecuted((i) => {
|
|
764
|
+
if (i.id !== h.id) return;
|
|
765
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
765
766
|
if (s == null || n == null)
|
|
766
767
|
return;
|
|
767
768
|
const { drawings: o } = n, d = t.get(f), a = [];
|
|
@@ -781,9 +782,9 @@ class de extends z {
|
|
|
781
782
|
})
|
|
782
783
|
), this.registerEventHandler(
|
|
783
784
|
this.Event.BeforeOverGridImageSelect,
|
|
784
|
-
() => e.beforeCommandExecuted((
|
|
785
|
-
if (
|
|
786
|
-
const n =
|
|
785
|
+
() => e.beforeCommandExecuted((i) => {
|
|
786
|
+
if (i.id !== A.id) return;
|
|
787
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
787
788
|
if (s == null)
|
|
788
789
|
return;
|
|
789
790
|
const o = t.get(f), d = o.getFocusDrawings(), a = n.map((c) => o.getDrawingByParam(c)), g = {
|
|
@@ -796,9 +797,9 @@ class de extends z {
|
|
|
796
797
|
})
|
|
797
798
|
), this.registerEventHandler(
|
|
798
799
|
this.Event.OverGridImageInserted,
|
|
799
|
-
() => e.onCommandExecuted((
|
|
800
|
-
if (
|
|
801
|
-
const n =
|
|
800
|
+
() => e.onCommandExecuted((i) => {
|
|
801
|
+
if (i.id !== S.id) return;
|
|
802
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
802
803
|
if (s == null || n == null)
|
|
803
804
|
return;
|
|
804
805
|
const { drawings: o } = n;
|
|
@@ -809,9 +810,9 @@ class de extends z {
|
|
|
809
810
|
})
|
|
810
811
|
), this.registerEventHandler(
|
|
811
812
|
this.Event.OverGridImageRemoved,
|
|
812
|
-
() => e.onCommandExecuted((
|
|
813
|
-
if (
|
|
814
|
-
const n =
|
|
813
|
+
() => e.onCommandExecuted((i) => {
|
|
814
|
+
if (i.id !== R.id) return;
|
|
815
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
815
816
|
if (s == null || n == null)
|
|
816
817
|
return;
|
|
817
818
|
const { drawings: o } = n;
|
|
@@ -822,9 +823,9 @@ class de extends z {
|
|
|
822
823
|
})
|
|
823
824
|
), this.registerEventHandler(
|
|
824
825
|
this.Event.OverGridImageChanged,
|
|
825
|
-
() => e.onCommandExecuted((
|
|
826
|
-
if (
|
|
827
|
-
const n =
|
|
826
|
+
() => e.onCommandExecuted((i) => {
|
|
827
|
+
if (i.id !== h.id) return;
|
|
828
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
828
829
|
if (s == null || n == null)
|
|
829
830
|
return;
|
|
830
831
|
const { drawings: o } = n, d = t.get(f), a = o.map((g) => this._injector.createInstance(m, d.getDrawingByParam(g)));
|
|
@@ -835,9 +836,9 @@ class de extends z {
|
|
|
835
836
|
})
|
|
836
837
|
), this.registerEventHandler(
|
|
837
838
|
this.Event.OverGridImageSelected,
|
|
838
|
-
() => e.onCommandExecuted((
|
|
839
|
-
if (
|
|
840
|
-
const n =
|
|
839
|
+
() => e.onCommandExecuted((i) => {
|
|
840
|
+
if (i.id !== A.id) return;
|
|
841
|
+
const n = i.params, s = this.getActiveWorkbook();
|
|
841
842
|
if (s == null)
|
|
842
843
|
return;
|
|
843
844
|
const o = t.get(f), d = n.map((a) => o.getDrawingByParam(a));
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { DrawingTypeEnum,
|
|
1
|
+
import { DrawingTypeEnum, ImageSourceType } from '@univerjs/core';
|
|
2
|
+
import { FEnum } from '@univerjs/core/facade';
|
|
2
3
|
import { SheetDrawingAnchorType } from '@univerjs/sheets-drawing';
|
|
3
4
|
/**
|
|
4
5
|
* @ignore
|
|
@@ -16,7 +17,7 @@ export declare class FDrawingEnumMixin extends FEnum implements IFDrawingEnumMix
|
|
|
16
17
|
get ImageSourceType(): Omit<typeof ImageSourceType, 'UUID'>;
|
|
17
18
|
get SheetDrawingAnchorType(): typeof SheetDrawingAnchorType;
|
|
18
19
|
}
|
|
19
|
-
declare module '@univerjs/core' {
|
|
20
|
+
declare module '@univerjs/core/facade' {
|
|
20
21
|
interface FEnum extends IFDrawingEnumMixin {
|
|
21
22
|
}
|
|
22
23
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { IDrawingSearch
|
|
1
|
+
import { IDrawingSearch } from '@univerjs/core';
|
|
2
|
+
import { IEventBase, FEventName } from '@univerjs/core/facade';
|
|
2
3
|
import { ISheetImage } from '@univerjs/sheets-drawing';
|
|
3
4
|
import { FWorkbook } from '@univerjs/sheets/facade';
|
|
4
5
|
import { FOverGridImage } from './f-over-grid-image';
|
|
@@ -233,7 +234,7 @@ interface IFSheetsUIEventParamConfig {
|
|
|
233
234
|
BeforeOverGridImageSelect: IBeforeOverGridImageSelectParam;
|
|
234
235
|
OverGridImageSelected: IOverGridImageSelectedParam;
|
|
235
236
|
}
|
|
236
|
-
declare module '@univerjs/core' {
|
|
237
|
+
declare module '@univerjs/core/facade' {
|
|
237
238
|
interface FEventName extends IFDrawingEventNameMixin {
|
|
238
239
|
}
|
|
239
240
|
interface IEventParamConfig extends IFSheetsUIEventParamConfig {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { IRotationSkewFlipTransform, ISize, DrawingTypeEnum,
|
|
1
|
+
import { IRotationSkewFlipTransform, ISize, DrawingTypeEnum, ICommandService, ImageSourceType, Injector } from '@univerjs/core';
|
|
2
2
|
import { ICellOverGridPosition } from '@univerjs/sheets';
|
|
3
3
|
import { ISheetImage, SheetDrawingAnchorType } from '@univerjs/sheets-drawing';
|
|
4
|
+
import { FBase } from '@univerjs/core/facade';
|
|
4
5
|
export interface IFOverGridImage extends Omit<ISheetImage, 'sheetTransform' | 'transform'>, ICellOverGridPosition, IRotationSkewFlipTransform, Required<ISize> {
|
|
5
6
|
}
|
|
6
7
|
/**
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { IDisposable,
|
|
1
|
+
import { IDisposable, Nullable } from '@univerjs/core';
|
|
2
|
+
import { IFBlobSource } from '@univerjs/core/facade';
|
|
2
3
|
import { ISheetImage } from '@univerjs/sheets-drawing';
|
|
3
4
|
import { ICanvasFloatDom, IDOMAnchor } from '@univerjs/sheets-drawing-ui';
|
|
4
5
|
import { IFComponentKey } from '@univerjs/sheets-ui/facade';
|
package/lib/umd/facade.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(a,u){typeof exports=="object"&&typeof module<"u"?u(require("@univerjs/core"),require("@univerjs/drawing"),require("@univerjs/engine-render"),require("@univerjs/sheets-drawing-ui"),require("@univerjs/sheets-ui"),require("@univerjs/sheets-drawing"),require("@univerjs/sheets-ui/facade"),require("@univerjs/sheets/facade"),require("@univerjs/ui")):typeof define=="function"&&define.amd?define(["@univerjs/core","@univerjs/drawing","@univerjs/engine-render","@univerjs/sheets-drawing-ui","@univerjs/sheets-ui","@univerjs/sheets-drawing","@univerjs/sheets-ui/facade","@univerjs/sheets/facade","@univerjs/ui"],u):(a=typeof globalThis<"u"?globalThis:a||self,u(a.UniverCore,a.UniverDrawing,a.UniverEngineRender,a.UniverSheetsDrawingUi,a.UniverSheetsUi,a.UniverSheetsDrawing,a.UniverSheetsUiFacade,a.UniverSheetsFacade,a.UniverUi))})(this,function(a,u,I,m,w,l,_,O,p){"use strict";var U=Object.defineProperty;var H=(a,u,I)=>u in a?U(a,u,{enumerable:!0,configurable:!0,writable:!0,value:I}):a[u]=I;var G=(a,u,I)=>H(a,typeof u!="symbol"?u+"":u,I);var T=Object.defineProperty,j=Object.getOwnPropertyDescriptor,k=(r,i,t,e)=>{for(var n=e>1?void 0:e?j(i,t):i,s=r.length-1,o;s>=0;s--)(o=r[s])&&(n=(e?o(i,t,n):o(n))||n);return e&&n&&T(i,t,n),n},C=(r,i)=>(t,e)=>i(t,e,r);function B(r,i){const{from:t,to:e,flipY:n=!1,flipX:s=!1,angle:o=0,skewX:c=0,skewY:d=0}=r.sheetTransform,{column:h,columnOffset:g,row:f,rowOffset:b}=t,E=w.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:t,to:e},i),{left:D,top:R,width:y,height:W}=E;return{...r,column:h,columnOffset:g,row:f,rowOffset:b,width:y,height:W,flipY:n,flipX:s,angle:o,skewX:c,skewY:d}}function F(r,i,t){const{column:e,columnOffset:n,row:s,rowOffset:o,flipY:c=!1,flipX:d=!1,angle:h=0,skewX:g=0,skewY:f=0,width:b,height:E}=r,D=w.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:e,columnOffset:n,row:s,rowOffset:o},b,E,i,t),{sheetTransform:R,transform:y}=D;return{...r,sheetTransform:{...R,flipY:c,flipX:d,angle:h,skewX:g,skewY:f},transform:{...y,flipY:c,flipX:d,angle:h,skewX:g,skewY:f}}}let S=class{constructor(r,i,t){G(this,"_image");this._injector=t,this._image={drawingId:a.generateRandomId(6),drawingType:a.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:a.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:i,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const t=this._injector.get(I.IRenderManagerService).getRenderById(r.unitId);if(!t)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const e=t.with(w.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=B(r,e),this}setSource(r,i){const t=i!=null?i:a.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 i=this._injector.get(I.IRenderManagerService).getRenderById(this._image.unitId);if(!i)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const t=i.with(w.ISheetSelectionRenderService),e=i.with(w.SheetSkeletonManagerService);if(this._image.width===0||this._image.height===0){const n=await u.getImageSize(this._image.source),s=n.width,o=n.height;this._image.width===0&&(this._image.width=s),this._image.height===0&&(this._image.height=o)}return F(this._image,t,e)}};S=k([C(2,a.Inject(a.Injector))],S);let v=class extends a.FBase{constructor(r,i,t){super(),this._image=r,this._commandService=i,this._injector=t}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(S);return r.setImage(this._image),r}setSource(r,i){const t=i!=null?i:a.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,i,t,e){const n=this.toBuilder();n.setColumn(i),n.setRow(r),t!=null&&n.setRowOffset(t),e!=null&&n.setColumnOffset(e);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,i){const t=this.toBuilder();t.setWidth(r),t.setHeight(i);const e=await t.buildAsync();return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[e]})}setCrop(r,i,t,e){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),i!=null&&(this._image.srcRect.left=i),t!=null&&(this._image.srcRect.bottom=t),e!=null&&(this._image.srcRect.right=e),this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:a.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:a.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:a.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:a.ArrangeTypeEnum.front})}};v=k([C(1,a.ICommandService),C(2,a.Inject(a.Injector))],v);class A extends O.FWorksheet{addFloatDomToPosition(i,t){const e=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:o}=_.transformComponentKey(i,this._injector.get(p.ComponentManager)),d=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...i,componentKey:s,unitId:e,subUnitId:n},t);return d?(o.add(d.dispose),{id:d.id,dispose:()=>{o.dispose(),d.dispose()}}):(o.dispose(),null)}addFloatDomToRange(i,t,e,n){const s=this._workbook.getUnitId(),o=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=_.transformComponentKey(t,this._injector.get(p.ComponentManager)),g=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToRange(i.getRange(),{...t,componentKey:c,unitId:s,subUnitId:o},e,n);return g?(d.add(g.dispose),{id:g.id,dispose:()=>{d.dispose(),g.dispose()}}):(d.dispose(),null)}addFloatDomToColumnHeader(i,t,e,n){const s=this._workbook.getUnitId(),o=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=_.transformComponentKey(t,this._injector.get(p.ComponentManager)),g=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(i,{...t,componentKey:c,unitId:s,subUnitId:o},e,n);return g?(d.add(g.dispose),{id:g.id,dispose:()=>{d.dispose(),g.dispose()}}):(d.dispose(),null)}async insertImage(i,t,e,n,s){const o=this.newOverGridImage();if(typeof i=="string")o.setSource(i);else{const h=await i.getBlob().getDataAsString();o.setSource(h,a.ImageSourceType.BASE64)}t!==void 0?o.setColumn(t):o.setColumn(0),e!==void 0?o.setRow(e):o.setRow(0),n!==void 0?o.setColumnOffset(n):o.setColumnOffset(0),s!==void 0?o.setRowOffset(s):o.setRowOffset(0);const c=await o.buildAsync();return this._commandService.syncExecuteCommand(m.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[c]})}insertImages(i){const t=i.map(e=>(e.unitId=this._fWorkbook.getId(),e.subUnitId=this.getSheetId(),e));return this._commandService.syncExecuteCommand(m.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}deleteImages(i){const t=i.map(e=>({unitId:this._fWorkbook.getId(),drawingId:e.getId(),subUnitId:this.getSheetId(),drawingType:e.getType()}));return this._commandService.syncExecuteCommand(m.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}getImages(){const t=this._injector.get(l.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),e=[];for(const n in t){const s=t[n];s.drawingType===a.DrawingTypeEnum.DRAWING_IMAGE&&e.push(this._injector.createInstance(v,s))}return e}getImageById(i){const e=this._injector.get(l.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:i});return e&&e.drawingType===a.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(v,e):null}getActiveImages(){const t=this._injector.get(l.ISheetDrawingService).getFocusDrawings(),e=[];for(const n in t){const s=t[n];e.push(this._injector.createInstance(v,s))}return e}updateImages(i){return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:i}),this}onImageInserted(i){const t=this._injector.get(l.ISheetDrawingService);return a.toDisposable(t.add$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(v,t.getDrawingByParam(s)));i(n)}))}onImageDeleted(i){const t=this._injector.get(l.ISheetDrawingService);return a.toDisposable(t.remove$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(v,t.getDrawingByParam(s)));i(n)}))}onImageChanged(i){const t=this._injector.get(l.ISheetDrawingService);return a.toDisposable(t.update$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(v,t.getDrawingByParam(s)));i(n)}))}newOverGridImage(){const i=this._fWorkbook.getId(),t=this.getSheetId();return this._injector.createInstance(S,i,t)}}O.FWorksheet.extend(A);class x extends a.FEnum{get DrawingType(){return a.DrawingTypeEnum}get ImageSourceType(){return a.ImageSourceType}get SheetDrawingAnchorType(){return l.SheetDrawingAnchorType}}a.FEnum.extend(x);class M extends a.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"}}a.FEventName.extend(M);class P extends a.FUniver{_initialize(i){const t=i.get(a.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>t.beforeCommandExecuted(e=>{if(e.id!==m.InsertSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:o}=n,c={workbook:s,insertImageParams:o};if(this.fireEvent(this.Event.BeforeOverGridImageInsert,c),c.cancel)throw new Error("Canceled by BeforeOverGridImageInsert event")})),this.registerEventHandler(this.Event.BeforeOverGridImageRemove,()=>t.beforeCommandExecuted(e=>{if(e.id!==m.RemoveSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const o=i.get(u.IDrawingManagerService),{drawings:c}=n,d=c.map(g=>o.getDrawingByParam(g)),h={workbook:s,images:this._createFOverGridImage(d)};if(this.fireEvent(this.Event.BeforeOverGridImageRemove,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageRemove event")})),this.registerEventHandler(this.Event.BeforeOverGridImageChange,()=>t.beforeCommandExecuted(e=>{if(e.id!==m.SetSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:o}=n,c=i.get(u.IDrawingManagerService),d=[];o.forEach(g=>{const f=c.getDrawingByParam(g);f!=null&&d.push({changeParam:g,image:this._injector.createInstance(v,f)})});const h={workbook:s,images:d};if(this.fireEvent(this.Event.BeforeOverGridImageChange,h),h.cancel)throw c.updateNotification(o),new Error("Canceled by BeforeOverGridImageChange event")})),this.registerEventHandler(this.Event.BeforeOverGridImageSelect,()=>t.beforeCommandExecuted(e=>{if(e.id!==u.SetDrawingSelectedOperation.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null)return;const o=i.get(u.IDrawingManagerService),c=o.getFocusDrawings(),d=n.map(g=>o.getDrawingByParam(g)),h={workbook:s,selectedImages:this._createFOverGridImage(d),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(e=>{if(e.id!==m.InsertSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:o}=n;this.fireEvent(this.Event.OverGridImageInserted,{workbook:s,images:this._createFOverGridImage(o)})})),this.registerEventHandler(this.Event.OverGridImageRemoved,()=>t.onCommandExecuted(e=>{if(e.id!==m.RemoveSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:o}=n;this.fireEvent(this.Event.OverGridImageRemoved,{workbook:s,removeImageParams:o})})),this.registerEventHandler(this.Event.OverGridImageChanged,()=>t.onCommandExecuted(e=>{if(e.id!==m.SetSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:o}=n,c=i.get(u.IDrawingManagerService),d=o.map(h=>this._injector.createInstance(v,c.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:d})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>t.onCommandExecuted(e=>{if(e.id!==u.SetDrawingSelectedOperation.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null)return;const o=i.get(u.IDrawingManagerService),c=n.map(d=>o.getDrawingByParam(d));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(c)})}))}_createFOverGridImage(i){return i.map(t=>this._injector.createInstance(v,t))}}a.FUniver.extend(P)});
|
|
1
|
+
(function(o,u){typeof exports=="object"&&typeof module<"u"?u(require("@univerjs/core"),require("@univerjs/core/facade"),require("@univerjs/drawing"),require("@univerjs/engine-render"),require("@univerjs/sheets-drawing-ui"),require("@univerjs/sheets-ui"),require("@univerjs/sheets-drawing"),require("@univerjs/sheets-ui/facade"),require("@univerjs/sheets/facade"),require("@univerjs/ui")):typeof define=="function"&&define.amd?define(["@univerjs/core","@univerjs/core/facade","@univerjs/drawing","@univerjs/engine-render","@univerjs/sheets-drawing-ui","@univerjs/sheets-ui","@univerjs/sheets-drawing","@univerjs/sheets-ui/facade","@univerjs/sheets/facade","@univerjs/ui"],u):(o=typeof globalThis<"u"?globalThis:o||self,u(o.UniverCore,o.UniverCoreFacade,o.UniverDrawing,o.UniverEngineRender,o.UniverSheetsDrawingUi,o.UniverSheetsUi,o.UniverSheetsDrawing,o.UniverSheetsUiFacade,o.UniverSheetsFacade,o.UniverUi))})(this,function(o,u,v,O,m,w,l,_,k,p){"use strict";var H=Object.defineProperty;var q=(o,u,v)=>u in o?H(o,u,{enumerable:!0,configurable:!0,writable:!0,value:v}):o[u]=v;var j=(o,u,v)=>q(o,typeof u!="symbol"?u+"":u,v);var T=Object.defineProperty,B=Object.getOwnPropertyDescriptor,D=(r,i,t,e)=>{for(var n=e>1?void 0:e?B(i,t):i,s=r.length-1,a;s>=0;s--)(a=r[s])&&(n=(e?a(i,t,n):a(n))||n);return e&&n&&T(i,t,n),n},C=(r,i)=>(t,e)=>i(t,e,r);function F(r,i){const{from:t,to:e,flipY:n=!1,flipX:s=!1,angle:a=0,skewX:c=0,skewY:d=0}=r.sheetTransform,{column:h,columnOffset:g,row:f,rowOffset:b}=t,E=w.convertPositionSheetOverGridToAbsolute(r.unitId,r.subUnitId,{from:t,to:e},i),{left:R,top:G,width:y,height:U}=E;return{...r,column:h,columnOffset:g,row:f,rowOffset:b,width:y,height:U,flipY:n,flipX:s,angle:a,skewX:c,skewY:d}}function A(r,i,t){const{column:e,columnOffset:n,row:s,rowOffset:a,flipY:c=!1,flipX:d=!1,angle:h=0,skewX:g=0,skewY:f=0,width:b,height:E}=r,R=w.convertPositionCellToSheetOverGrid(r.unitId,r.subUnitId,{column:e,columnOffset:n,row:s,rowOffset:a},b,E,i,t),{sheetTransform:G,transform:y}=R;return{...r,sheetTransform:{...G,flipY:c,flipX:d,angle:h,skewX:g,skewY:f},transform:{...y,flipY:c,flipX:d,angle:h,skewX:g,skewY:f}}}let S=class{constructor(r,i,t){j(this,"_image");this._injector=t,this._image={drawingId:o.generateRandomId(6),drawingType:o.DrawingTypeEnum.DRAWING_IMAGE,imageSourceType:o.ImageSourceType.BASE64,source:"",unitId:r,subUnitId:i,column:0,columnOffset:0,row:0,rowOffset:0,width:0,height:0}}setImage(r){const t=this._injector.get(O.IRenderManagerService).getRenderById(r.unitId);if(!t)throw new Error(`Render Unit with unitId ${r.unitId} not found`);const e=t.with(w.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=F(r,e),this}setSource(r,i){const t=i!=null?i:o.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 i=this._injector.get(O.IRenderManagerService).getRenderById(this._image.unitId);if(!i)throw new Error(`Render Unit with unitId ${this._image.unitId} not found`);const t=i.with(w.ISheetSelectionRenderService),e=i.with(w.SheetSkeletonManagerService);if(this._image.width===0||this._image.height===0){const n=await v.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 A(this._image,t,e)}};S=D([C(2,o.Inject(o.Injector))],S);let I=class extends u.FBase{constructor(r,i,t){super(),this._image=r,this._commandService=i,this._injector=t}getId(){return this._image.drawingId}getType(){return this._image.drawingType}remove(){return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}toBuilder(){const r=this._injector.createInstance(S);return r.setImage(this._image),r}setSource(r,i){const t=i!=null?i:o.ImageSourceType.URL;return this._image.source=r,this._image.imageSourceType=t,this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}async setPositionAsync(r,i,t,e){const n=this.toBuilder();n.setColumn(i),n.setRow(r),t!=null&&n.setRowOffset(t),e!=null&&n.setColumnOffset(e);const s=await n.buildAsync();return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[s]})}async setSizeAsync(r,i){const t=this.toBuilder();t.setWidth(r),t.setHeight(i);const e=await t.buildAsync();return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[e]})}setCrop(r,i,t,e){return this._image.srcRect==null&&(this._image.srcRect={top:0,left:0,bottom:0,right:0}),r!=null&&(this._image.srcRect.top=r),i!=null&&(this._image.srcRect.left=i),t!=null&&(this._image.srcRect.bottom=t),e!=null&&(this._image.srcRect.right=e),this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setRotate(r){return this._image.sheetTransform.angle=r,this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._image.unitId,drawings:[this._image]})}setForward(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.forward})}setBackward(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.backward})}setBack(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.back})}setFront(){return this._commandService.syncExecuteCommand(m.SetDrawingArrangeCommand.id,{unitId:this._image.unitId,subUnitId:this._image.subUnitId,drawingIds:[this._image.drawingId],arrangeType:o.ArrangeTypeEnum.front})}};I=D([C(1,o.ICommandService),C(2,o.Inject(o.Injector))],I);class x extends k.FWorksheet{addFloatDomToPosition(i,t){const e=this._workbook.getUnitId(),n=this._worksheet.getSheetId(),{key:s,disposableCollection:a}=_.transformComponentKey(i,this._injector.get(p.ComponentManager)),d=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...i,componentKey:s,unitId:e,subUnitId:n},t);return d?(a.add(d.dispose),{id:d.id,dispose:()=>{a.dispose(),d.dispose()}}):(a.dispose(),null)}addFloatDomToRange(i,t,e,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=_.transformComponentKey(t,this._injector.get(p.ComponentManager)),g=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToRange(i.getRange(),{...t,componentKey:c,unitId:s,subUnitId:a},e,n);return g?(d.add(g.dispose),{id:g.id,dispose:()=>{d.dispose(),g.dispose()}}):(d.dispose(),null)}addFloatDomToColumnHeader(i,t,e,n){const s=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),{key:c,disposableCollection:d}=_.transformComponentKey(t,this._injector.get(p.ComponentManager)),g=this._injector.get(m.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(i,{...t,componentKey:c,unitId:s,subUnitId:a},e,n);return g?(d.add(g.dispose),{id:g.id,dispose:()=>{d.dispose(),g.dispose()}}):(d.dispose(),null)}async insertImage(i,t,e,n,s){const a=this.newOverGridImage();if(typeof i=="string")a.setSource(i);else{const h=await i.getBlob().getDataAsString();a.setSource(h,o.ImageSourceType.BASE64)}t!==void 0?a.setColumn(t):a.setColumn(0),e!==void 0?a.setRow(e):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(m.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:[c]})}insertImages(i){const t=i.map(e=>(e.unitId=this._fWorkbook.getId(),e.subUnitId=this.getSheetId(),e));return this._commandService.syncExecuteCommand(m.InsertSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}deleteImages(i){const t=i.map(e=>({unitId:this._fWorkbook.getId(),drawingId:e.getId(),subUnitId:this.getSheetId(),drawingType:e.getType()}));return this._commandService.syncExecuteCommand(m.RemoveSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:t}),this}getImages(){const t=this._injector.get(l.ISheetDrawingService).getDrawingData(this._fWorkbook.getId(),this.getSheetId()),e=[];for(const n in t){const s=t[n];s.drawingType===o.DrawingTypeEnum.DRAWING_IMAGE&&e.push(this._injector.createInstance(I,s))}return e}getImageById(i){const e=this._injector.get(l.ISheetDrawingService).getDrawingByParam({unitId:this._fWorkbook.getId(),subUnitId:this.getSheetId(),drawingId:i});return e&&e.drawingType===o.DrawingTypeEnum.DRAWING_IMAGE?this._injector.createInstance(I,e):null}getActiveImages(){const t=this._injector.get(l.ISheetDrawingService).getFocusDrawings(),e=[];for(const n in t){const s=t[n];e.push(this._injector.createInstance(I,s))}return e}updateImages(i){return this._commandService.syncExecuteCommand(m.SetSheetDrawingCommand.id,{unitId:this._fWorkbook.getId(),drawings:i}),this}onImageInserted(i){const t=this._injector.get(l.ISheetDrawingService);return o.toDisposable(t.add$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(I,t.getDrawingByParam(s)));i(n)}))}onImageDeleted(i){const t=this._injector.get(l.ISheetDrawingService);return o.toDisposable(t.remove$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(I,t.getDrawingByParam(s)));i(n)}))}onImageChanged(i){const t=this._injector.get(l.ISheetDrawingService);return o.toDisposable(t.update$.subscribe(e=>{const n=e.map(s=>this._injector.createInstance(I,t.getDrawingByParam(s)));i(n)}))}newOverGridImage(){const i=this._fWorkbook.getId(),t=this.getSheetId();return this._injector.createInstance(S,i,t)}}k.FWorksheet.extend(x);class M extends u.FEnum{get DrawingType(){return o.DrawingTypeEnum}get ImageSourceType(){return o.ImageSourceType}get SheetDrawingAnchorType(){return l.SheetDrawingAnchorType}}u.FEnum.extend(M);class P extends u.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"}}u.FEventName.extend(P);class W extends u.FUniver{_initialize(i){const t=i.get(o.ICommandService);this.registerEventHandler(this.Event.BeforeOverGridImageInsert,()=>t.beforeCommandExecuted(e=>{if(e.id!==m.InsertSheetDrawingCommand.id)return;const n=e.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(e=>{if(e.id!==m.RemoveSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const a=i.get(v.IDrawingManagerService),{drawings:c}=n,d=c.map(g=>a.getDrawingByParam(g)),h={workbook:s,images:this._createFOverGridImage(d)};if(this.fireEvent(this.Event.BeforeOverGridImageRemove,h),h.cancel)throw new Error("Canceled by BeforeOverGridImageRemove event")})),this.registerEventHandler(this.Event.BeforeOverGridImageChange,()=>t.beforeCommandExecuted(e=>{if(e.id!==m.SetSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=i.get(v.IDrawingManagerService),d=[];a.forEach(g=>{const f=c.getDrawingByParam(g);f!=null&&d.push({changeParam:g,image:this._injector.createInstance(I,f)})});const h={workbook:s,images:d};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(e=>{if(e.id!==v.SetDrawingSelectedOperation.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null)return;const a=i.get(v.IDrawingManagerService),c=a.getFocusDrawings(),d=n.map(g=>a.getDrawingByParam(g)),h={workbook:s,selectedImages:this._createFOverGridImage(d),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(e=>{if(e.id!==m.InsertSheetDrawingCommand.id)return;const n=e.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(e=>{if(e.id!==m.RemoveSheetDrawingCommand.id)return;const n=e.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(e=>{if(e.id!==m.SetSheetDrawingCommand.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null||n==null)return;const{drawings:a}=n,c=i.get(v.IDrawingManagerService),d=a.map(h=>this._injector.createInstance(I,c.getDrawingByParam(h)));this.fireEvent(this.Event.OverGridImageChanged,{workbook:s,images:d})})),this.registerEventHandler(this.Event.OverGridImageSelected,()=>t.onCommandExecuted(e=>{if(e.id!==v.SetDrawingSelectedOperation.id)return;const n=e.params,s=this.getActiveWorkbook();if(s==null)return;const a=i.get(v.IDrawingManagerService),c=n.map(d=>a.getDrawingByParam(d));this.fireEvent(this.Event.OverGridImageSelected,{workbook:s,selectedImages:this._createFOverGridImage(c)})}))}_createFOverGridImage(i){return i.map(t=>this._injector.createInstance(I,t))}}u.FUniver.extend(W)});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@univerjs/sheets-drawing-ui",
|
|
3
|
-
"version": "0.6.0-experimental.
|
|
3
|
+
"version": "0.6.0-experimental.20250220-d9a8e74",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "",
|
|
6
6
|
"author": "DreamNum <developer@univer.ai>",
|
|
@@ -57,30 +57,30 @@
|
|
|
57
57
|
"rxjs": ">=7.0.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
|
-
"@univerjs/icons": "^0.2.
|
|
60
|
+
"@univerjs/icons": "^0.2.15",
|
|
61
61
|
"clsx": "^2.1.1",
|
|
62
|
-
"@univerjs/core": "0.6.0-experimental.
|
|
63
|
-
"@univerjs/
|
|
64
|
-
"@univerjs/
|
|
65
|
-
"@univerjs/docs-
|
|
66
|
-
"@univerjs/drawing": "0.6.0-experimental.
|
|
67
|
-
"@univerjs/
|
|
68
|
-
"@univerjs/
|
|
69
|
-
"@univerjs/sheets": "0.6.0-experimental.
|
|
70
|
-
"@univerjs/
|
|
71
|
-
"@univerjs/sheets-ui": "0.6.0-experimental.
|
|
72
|
-
"@univerjs/
|
|
62
|
+
"@univerjs/core": "0.6.0-experimental.20250220-d9a8e74",
|
|
63
|
+
"@univerjs/docs-drawing": "0.6.0-experimental.20250220-d9a8e74",
|
|
64
|
+
"@univerjs/design": "0.6.0-experimental.20250220-d9a8e74",
|
|
65
|
+
"@univerjs/docs-ui": "0.6.0-experimental.20250220-d9a8e74",
|
|
66
|
+
"@univerjs/drawing": "0.6.0-experimental.20250220-d9a8e74",
|
|
67
|
+
"@univerjs/drawing-ui": "0.6.0-experimental.20250220-d9a8e74",
|
|
68
|
+
"@univerjs/engine-render": "0.6.0-experimental.20250220-d9a8e74",
|
|
69
|
+
"@univerjs/sheets": "0.6.0-experimental.20250220-d9a8e74",
|
|
70
|
+
"@univerjs/sheets-drawing": "0.6.0-experimental.20250220-d9a8e74",
|
|
71
|
+
"@univerjs/sheets-ui": "0.6.0-experimental.20250220-d9a8e74",
|
|
72
|
+
"@univerjs/ui": "0.6.0-experimental.20250220-d9a8e74"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
75
|
"less": "^4.2.2",
|
|
76
|
-
"postcss": "^8.5.
|
|
76
|
+
"postcss": "^8.5.2",
|
|
77
77
|
"react": "18.3.1",
|
|
78
78
|
"rxjs": "^7.8.1",
|
|
79
79
|
"tailwindcss": "^3.4.17",
|
|
80
80
|
"typescript": "^5.7.3",
|
|
81
|
-
"vite": "^6.0
|
|
82
|
-
"vitest": "^3.0.
|
|
83
|
-
"@univerjs-infra/shared": "0.6.0
|
|
81
|
+
"vite": "^6.1.0",
|
|
82
|
+
"vitest": "^3.0.5",
|
|
83
|
+
"@univerjs-infra/shared": "0.6.0"
|
|
84
84
|
},
|
|
85
85
|
"scripts": {
|
|
86
86
|
"test": "vitest run",
|