@univerjs/slides 0.2.4-alpha.0 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var he=Object.defineProperty;var ge=(a,r,e)=>r in a?he(a,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[r]=e;var _=(a,r,e)=>ge(a,typeof r!="symbol"?r+"":r,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@univerjs/core"),h=require("@univerjs/engine-render"),Q=require("rxjs");class Y{constructor(){_(this,"zIndex",0);_(this,"viewKey",null)}check(r){if(r===this.viewKey)return this}create(r){}}const A=l.Registry.create();var ue=Object.defineProperty,pe=Object.getOwnPropertyDescriptor,_e=(a,r,e,n)=>{for(var t=n>1?void 0:n?pe(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&ue(r,e,t),t},ve=(a,r)=>(e,n)=>r(e,n,a);let te=class extends Y{constructor(r){super();_(this,"zIndex",5);_(this,"viewKey",l.PageElementType.DOCUMENT);_(this,"_liquid",new h.Liquid);this._localeService=r}check(r){if(r===this.viewKey)return this}convert(r,e){var F,se;const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,document:E}=r;if(E==null)return;const m=new l.DocumentDataModel(E),I=new h.DocumentViewModel(m),b=h.DocumentSkeleton.create(I,this._localeService),P=new h.Documents("__DocsRender__",b);b.calculate();const O=new h.SceneViewer("__DocsViewer__"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f}),S=new h.Scene("__DocsScene__"+n,O),T=new h.Viewport("__DocsViewPort_"+n,S,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});S.attachControl(),S.onMouseWheel$.subscribeEvent((M,N)=>{const D=M;if(D.ctrlKey){const z=Math.abs(D.deltaX);let C=z<40?.2:z<80?.4:.2;C*=D.deltaY>0?-1:1,S.scaleX<1&&(C/=2),S.scaleX+C>4?S.scale(4,4):S.scaleX+C<.1?S.scale(.1,.1):(D.deltaY>0,D.preventDefault())}else T.onMouseWheel(D,N)}),new h.ScrollBar(T,{mainScene:e}),S.addObject(P);const y=b.getActualSize();P.resize(y.actualWidth,y.actualHeight),S.resize(y.actualWidth,y.actualHeight+200);const x=(F=P.getSkeleton())==null?void 0:F.getPageSize();P.pageRender$.subscribe(M=>{const{page:N,pageLeft:D,pageTop:z,ctx:C}=M,{width:B,height:K,marginBottom:J,marginLeft:L,marginRight:k,marginTop:q}=N;C.save(),C.translate(D-.5,z-.5),h.Rect.drawWith(C,{width:(x==null?void 0:x.width)||B,height:(x==null?void 0:x.height)||K,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:"rgba(255,255,255, 1)",zIndex:3}),C.restore()});const{left:W,top:$}=P,X=b.getSkeletonData();if(X==null)return;const{pages:V}=X,U=[],H=new Map;this._recalculateSizeBySkeleton(P,S,b);for(let M=0,N=V.length;M<N;M++){const D=V[M],{skeDrawings:z,marginLeft:C,marginTop:B,pageWidth:K,pageHeight:J}=D;this._liquid.translatePagePadding(D),z.forEach(L=>{const{aLeft:k,aTop:q,height:oe,width:le,drawingOrigin:qe}=L,de=new h.Image(L.drawingId,{left:k+W+this._liquid.x,top:q+$+this._liquid.y,width:le,height:oe,zIndex:11});H.set(L.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),U.push(de)}),this._liquid.translatePage(D,P.pageLayoutType,P.pageMarginLeft,P.pageMarginTop)}return S.addObjects(U),U.forEach(M=>{S.attachTransformerTo(M)}),(se=S.getTransformer())==null||se.changing$.subscribe(M=>{const{objects:N}=M;N.forEach(D=>{const{oKey:z,left:C,top:B,height:K,width:J}=D,L=H.get(z),k=(L==null?void 0:L.marginLeft)||0,q=(L==null?void 0:L.marginTop)||0;b==null||b.getViewModel().getDataModel().updateDrawing(z,{left:C-W-k,top:B-$-q,height:K,width:J})}),b==null||b.calculate()}),this._calculatePagePosition(P,S,T),O}_recalculateSizeBySkeleton(r,e,n){var c;const t=(c=n.getSkeletonData())==null?void 0:c.pages;if(t==null)return;let i=0,s=0;for(let o=0,d=t.length;o<d;o++){const u=t[o],{pageWidth:w,pageHeight:g}=u;r.pageLayoutType===h.PageLayoutType.VERTICAL?(s+=g,s+=r.pageMarginTop,o===d-1&&(s+=r.pageMarginTop),i=Math.max(i,w)):r.pageLayoutType===h.PageLayoutType.HORIZONTAL&&(i+=w,o!==d-1&&(i+=r.pageMarginLeft),s=Math.max(s,g))}r.resize(i,s),e.resize(i,s)}_calculatePagePosition(r,e,n,t=1){const i=e==null?void 0:e.getParent(),{width:s,height:c,pageMarginLeft:o,pageMarginTop:d}=r;if(i==null||s===Number.POSITIVE_INFINITY||c===Number.POSITIVE_INFINITY)return;const{width:u,height:w}=i;let g=0,v=0,p=0,f=0,R=Number.POSITIVE_INFINITY;if(u>(s+o*2)*t?(g=u/2-s*t/2,g/=t,p=(u-o*2)/t,R=0):(g=o,p=s+o*2,R=(p-u/t)/2),w>c?(v=w/2-c/2,f=(w-d*2)/t):(v=d,f=c+d*2),e.resize(p,f+200),r.translate(g,v),R!==Number.POSITIVE_INFINITY&&n!=null){const j=n.transScroll2ViewportScrollValue(R,0).x;n.scrollTo({x:j})}return this}};te=_e([ve(0,l.Inject(l.LocaleService))],te);class fe{constructor(){_(this,"zIndex",5)}create(r){return r.createInstance(te)}}A.add(new fe);class we extends Y{constructor(){super(...arguments);_(this,"zIndex",1);_(this,"viewKey",l.PageElementType.IMAGE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,image:E={}}=e,{imageProperties:m,placeholder:I,link:b}=E,P=(m==null?void 0:m.contentUrl)||"";return new h.Image(n,{url:P,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0})}}class Se{constructor(){_(this,"zIndex",4)}create(r){return r.createInstance(we)}}A.add(new Se);var Ie=Object.defineProperty,Pe=Object.getOwnPropertyDescriptor,be=(a,r,e,n)=>{for(var t=n>1?void 0:n?Pe(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ie(r,e,t),t},Te=(a,r)=>(e,n)=>r(e,n,a);let re=class extends Y{constructor(r){super();_(this,"zIndex",2);_(this,"viewKey",l.PageElementType.TEXT);this._localeService=r}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,richText:E={}}=r,{text:m,ff:I,fs:b,it:P,bl:O,ul:S,st:T,ol:y,bg:x,bd:W,cl:$,rich:X}=E;let V={top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0},U=!1;if(m!=null?(V={...V,text:m,ff:I,fs:b,it:P,bl:O,ul:S,st:T,ol:y,bg:x,bd:W,cl:$},U=!0):X!=null&&(V={...V,richText:X},U=!0),U!==!1)return new h.RichText(this._localeService,n,V)}};re=be([Te(0,l.Inject(l.LocaleService))],re);class me{constructor(){_(this,"zIndex",0)}create(r){return r.createInstance(re)}}A.add(new me);class ye extends Y{constructor(){super(...arguments);_(this,"zIndex",2);_(this,"viewKey",l.PageElementType.SHAPE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j}=e,{shapeType:E,text:m,shapeProperties:I,placeholder:b,link:P}=e.shape||{},O=I==null?"":l.getColorStyle(I.shapeBackgroundFill)||"rgba(255,255,255,1)",S=I==null?void 0:I.outline,T={};if(S){const{outlineFill:y,weight:x}=S;T.strokeWidth=x,T.stroke=l.getColorStyle(y)||"rgba(0,0,0,1)"}if(E===l.BasicShapes.Rect)return new h.Rect(n,{fill:O,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0,...T});if(E===l.BasicShapes.RoundRect){const y=(I==null?void 0:I.radius)||0;return new h.Rect(n,{fill:O,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0,radius:y,...T})}}}class Re{constructor(){_(this,"zIndex",2)}create(r){return r.createInstance(ye)}}A.add(new Re);var Ee=Object.defineProperty,De=Object.getOwnPropertyDescriptor,Oe=(a,r,e,n)=>{for(var t=n>1?void 0:n?De(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ee(r,e,t),t},je=(a,r)=>(e,n)=>r(e,n,a);let ne=class extends Y{constructor(r){super();_(this,"zIndex",6);_(this,"viewKey",l.PageElementType.SLIDE);_(this,"_ObjectProvider",null);this._injector=r}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,slide:E}=r;if(E==null)return;const m=new l.SlideDataModel(E),I=new h.Slide("__SLIDERender__"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0});I.enableNav(),I.enableSelectedClipElement();const b=m.getPageOrder(),P=m.getPages();if(!b||!P)return I;this._ObjectProvider=new Z(this._injector);for(let O=0,S=b.length;O<S;O++){const T=P[b[O]],{id:y}=T;I.addPage(this._createScene(y,I,T,e,m))}return I.activeFirstPage(),I}_createScene(r,e,n,t,i){var v;const{width:s,height:c}=e,o=new h.Scene(r,e,{width:s,height:c});new h.Viewport(`PageViewer_${r}`,o,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:u,pageBackgroundFill:w}=n,g=(v=this._ObjectProvider)==null?void 0:v.convertToRenderObjects(u,t);return this._addBackgroundRect(o,w,i),o.addObjects(g),g==null||g.forEach(p=>{o.attachTransformerTo(p)}),o}_addBackgroundRect(r,e,n){const t=n.getPageSize(),{width:i=0,height:s=0}=t,c=new h.Rect("canvas",{left:0,top:0,width:i,height:s,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:l.getColorStyle(e)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});r.addObject(c,0)}};ne=Oe([je(0,l.Inject(l.Injector))],ne);class xe{constructor(){_(this,"zIndex",6)}create(r){return r.createInstance(ne)}}A.add(new xe);var Ce=Object.defineProperty,Ve=Object.getOwnPropertyDescriptor,Me=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ve(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ce(r,e,t),t},ae=(a,r)=>(e,n)=>r(e,n,a);let ie=class extends Y{constructor(r,e){super();_(this,"zIndex",4);_(this,"viewKey",l.PageElementType.SPREADSHEET);this._localeService=r,this._contextService=e}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,spreadsheet:R}=r;if(R==null)return;const{worksheet:j,styles:E}=R,{cellData:m}=j,I=new l.ObjectMatrix(m),b=new l.Styles(E),P=new h.SpreadsheetSkeleton(new l.Worksheet(n,j,b),j,I,b,this._localeService,this._contextService),{rowTotalHeight:O,columnTotalWidth:S,rowHeaderWidth:T,columnHeaderHeight:y}=P,x=S+j.rowHeader.width||0,W=O+j.columnHeader.height||0,$=new h.SceneViewer("spreadInSlideSceneViewer"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0}),X=new h.Scene("spreadInSlideScene"+n,$,{width:x,height:W});this._updateViewport(n,T,y,X,e);const V=new h.Spreadsheet("testSheetViewer",P,!1),U=new h.SpreadsheetRowHeader("spreadInSlideRow",P),H=new h.SpreadsheetColumnHeader("spreadInSlideColumn",P),F=new h.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:T,height:y,fill:h.getColor([248,249,250]),stroke:h.getColor([217,217,217]),strokeWidth:1});return V.zIndex=10,X.addObjects([V],1),X.addObjects([U,H,F],2),$}_updateViewport(r,e,n,t,i){if(i==null)return;const s=e*t.scaleX,c=n*t.scaleY,o=new h.Viewport("spreadInSlideViewMain"+r,t,{left:s,top:c,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),d=new h.Viewport("spreadInSlideViewTop"+r,t,{left:s,height:c,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),u=new h.Viewport("spreadInSlideViewLeft"+r,t,{left:0,bottom:0,top:c,width:s,isRelativeY:!0,isWheelPreventDefaultX:!0});new h.Viewport("spreadInSlideViewLeftTop"+r,t,{left:0,top:0,width:s,height:c,isWheelPreventDefaultX:!0}),o.onScrollAfter$.subscribeEvent(w=>{const{scrollX:g,scrollY:v,viewportScrollX:p,viewportScrollY:f}=w;d.updateScroll({scrollX:g,viewportScrollX:p}),u.updateScroll({scrollY:v,viewportScrollY:f})}),t.attachControl(),new h.ScrollBar(o,{mainScene:i}),t.onMouseWheel$.subscribeEvent((w,g)=>{const v=w;if(v.ctrlKey){const p=Math.abs(v.deltaX);let f=p<40?.05:p<80?.02:.01;f*=v.deltaY>0?-1:1,t.scaleX<1&&(f/=2),t.scaleX+f>4?t.scale(4,4):t.scaleX+f<.1?t.scale(.1,.1):(t.scaleBy(f,f),v.preventDefault())}else o.onMouseWheel(v,g)})}};ie=Me([ae(0,l.Inject(l.LocaleService)),ae(1,l.IContextService)],ie);class Le{constructor(){_(this,"zIndex",4)}create(r){return r.createInstance(ie)}}A.add(new Le);var Xe=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,ze=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ue(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Xe(r,e,t),t},$e=(a,r)=>(e,n)=>r(e,n,a);let Z=class{constructor(a){_(this,"_adaptors",[]);this._injector=a,this._adaptorLoader()}convertToRenderObjects(a,r){const e=Object.keys(a),n=[];return e.forEach(t=>{const i=a[t],s=this._executor(i,r);s!=null&&n.push(s)}),n}_executor(a,r){var t;const{id:e,type:n}=a;for(const i of this._adaptors){const s=(t=i.check(n))==null?void 0:t.convert(a,r);if(s!=null)return s}}_adaptorLoader(){A.getData().sort(l.sortRules).forEach(a=>{this._adaptors.push(a.create(this._injector))})}};Z=ze([$e(0,l.Inject(l.Injector))],Z);var Ne=Object.defineProperty,Ae=Object.getOwnPropertyDescriptor,We=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ae(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ne(r,e,t),t},ee=(a,r)=>(e,n)=>r(e,n,a),ce=(a=>(a.COMPONENT="__slideRender__",a.SCENE="__mainScene__",a.VIEW="__mainView__",a))(ce||{});exports.CanvasView=class extends l.RxDisposable{constructor(e,n,t){super();_(this,"_objectProvider",null);_(this,"_activePageId","");_(this,"activePageId$",new Q.Subject);_(this,"_refreshThumb",l.debounce(()=>{this.createThumbs()},300));this._univerInstanceService=e,this._injector=n,this._renderManagerService=t,this._initializeDependencies(this._injector),this._initialize()}_initialize(){this._renderManagerService.createRender$.pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e)}),this._univerInstanceService.getCurrentTypeOfUnit$(l.UniverInstanceType.UNIVER_SLIDE).pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e==null?void 0:e.getUnitId())}),this._univerInstanceService.getAllUnitsForType(l.UniverInstanceType.UNIVER_SLIDE).forEach(e=>{this._create(e.getUnitId())})}activePage(e){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE);let t;if(e)t=n.getPage(e);else{const o=n.getPages(),d=n.getPageOrder();if(d==null||o==null)return;t=o[d[0]],e=t.id}const i=this._currentRender();if(t==null||i==null||i.mainComponent==null)return;const{id:s}=t,c=i.mainComponent;if(this._activePageId=e,this.activePageId$.next(e),c!=null&&c.hasPage(s)){c.changePage(s);return}this._createScene(s,t)}_scrollToCenter(){var d;const e=(d=this._currentRender())==null?void 0:d.scene,n=e==null?void 0:e.getViewport("__mainView__"),t=this._getCenterPositionViewPort(e);if(!n||!t)return;const{left:i,top:s}=t,{x:c,y:o}=n.transViewportScroll2ScrollValue(i,s);n.scrollTo({x:c,y:o})}_create(e){e==null||this._univerInstanceService.getUnit(e,l.UniverInstanceType.UNIVER_SLIDE)==null||this._renderManagerService.has(e)||this._addNewRender(e)}_currentRender(){const e=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE);return this._renderManagerService.getRenderById(e.getUnitId())}_addNewRender(e){const n=this._univerInstanceService.getUnit(e,l.UniverInstanceType.UNIVER_SLIDE);if(n==null)return;this._renderManagerService.createRender(e);const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{scene:i,engine:s}=t,c=s.onTransformChange$.subscribeEvent(()=>{this._scrollToCenter(),c==null||c.unsubscribe()});s.onTransformChange$.subscribeEvent(()=>{setTimeout(()=>{this.createThumbs()},300)}),i.resize(2400,1800);const o=new h.Viewport("__mainView__",i,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});i.attachControl(),i.onMouseWheel$.subscribeEvent((u,w)=>{const g=u;if(g.ctrlKey){const v=Math.abs(g.deltaX);let p=v<40?.2:v<80?.4:.2;p*=g.deltaY>0?-1:1,i.scaleX<1&&(p/=2),i.scaleX+p>4?i.scale(4,4):i.scaleX+p<.1?i.scale(.1,.1):(g.deltaY>0,g.preventDefault())}else o.onMouseWheel(g,w)}),i.onFileLoaded$.subscribeEvent(()=>{this._refreshThumb()}),h.ScrollBar.attachTo(o),this._renderManagerService.setCurrent(e);const d=this._createSlide(i);t.mainComponent=d,t.components.set("__slideRender__",d),this._createSlidePages(n,d),s.runRenderLoop(()=>{i.render()})}_createSlide(e){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE),{width:t,height:i}=e,s=n.getPageSize(),{width:c=100,height:o=100}=s,d=new h.Slide("__slideRender__",{left:(t-c)/2,top:(i-o)/2,width:c,height:o,zIndex:10});return d.enableNav(),d.enableSelectedClipElement(),e.addObject(d),d}_addBackgroundRect(e,n){const i=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE).getPageSize(),{width:s=0,height:c=0}=i,o=new h.Rect("canvas",{left:0,top:0,width:s,height:c,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:l.getColorStyle(n)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});e.addObject(o,0)}_getCenterPositionViewPort(e){if(!e)return{left:0,top:0};const{width:n,height:t}=e,i=e.getEngine(),s=(i==null?void 0:i.width)||0,c=(i==null?void 0:i.height)||0;return{left:(n-s)/2,top:(t-c)/2}}_thumbSceneRender(e,n){const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{engine:i}=t;if(i==null)return;const{width:s,height:c}=n,{width:o=s,height:d=c}=i,u=i.getCanvas().getContext();n.renderToThumb(u,e,o/s,d/c)}_createSlidePages(e,n){const t=e.getPages(),i=e.getPageOrder();if(!(!t||!i)&&i.length!==0){for(let s=0,c=i.length;s<c;s++){const o=i[s];this._createScene(o,t[o]),this._createThumb(o)}this._activePageId=i[0],n.activeFirstPage()}}createThumbs(){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE).getPageOrder(),t=this._currentRender();if(!(!n||!t)&&n.length!==0)for(let i=0,s=n.length;i<s;i++){const c=n[i];this._thumbSceneRender(c,t.mainComponent)}}_createThumb(e){this._renderManagerService.createRender(e)}_createScene(e,n){const t=this._currentRender();if(!t||!this._objectProvider)return;const{scene:i,mainComponent:s}=t,c=s,{width:o,height:d}=c,u=new h.Scene(e,c,{width:o,height:d});new h.Viewport(`PageViewer_${e}`,u,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:g,pageBackgroundFill:v}=n,p=this._objectProvider.convertToRenderObjects(g,i);if(!p||!c)return;this._addBackgroundRect(u,v),u.addObjects(p),p.forEach(R=>{u.attachTransformerTo(R)});const f=u.getTransformer();return f==null||f.changeEnd$.subscribe(()=>{this._thumbSceneRender(this._activePageId,c)}),f==null||f.clearControl$.subscribe(()=>{this._thumbSceneRender(this._activePageId,c)}),c.addPage(u),u}_initializeDependencies(e){this._objectProvider=e.createInstance(Z)}};exports.CanvasView=We([l.OnLifecycle(l.LifecycleStages.Ready,exports.CanvasView),ee(0,l.IUniverInstanceService),ee(1,l.Inject(l.Injector)),ee(2,h.IRenderManagerService)],exports.CanvasView);var Ye=Object.defineProperty,He=Object.getOwnPropertyDescriptor,Fe=(a,r,e,n)=>{for(var t=n>1?void 0:n?He(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ye(r,e,t),t},Be=(a,r)=>(e,n)=>r(e,n,a);const Ke={},ke="slides";var G;exports.UniverSlidesPlugin=(G=class extends l.Plugin{constructor(e={},n){super();_(this,"_config");_(this,"_canvasEngine",null);_(this,"_canvasView",null);this._injector=n,this._config=Object.assign(Ke,e),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(h.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}getCanvasView(){return this._canvasView}_initializeDependencies(e){[[exports.CanvasView]].forEach(t=>{e.add(t)})}},_(G,"pluginName",ke),_(G,"type",l.UniverInstanceType.UNIVER_SLIDE),G);exports.UniverSlidesPlugin=Fe([Be(1,l.Inject(l.Injector))],exports.UniverSlidesPlugin);exports.SLIDE_KEY=ce;
1
+ "use strict";var he=Object.defineProperty;var ge=(a,r,e)=>r in a?he(a,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[r]=e;var _=(a,r,e)=>ge(a,typeof r!="symbol"?r+"":r,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@univerjs/core"),h=require("@univerjs/engine-render"),Q=require("rxjs");class Y{constructor(){_(this,"zIndex",0);_(this,"viewKey",null)}check(r){if(r===this.viewKey)return this}create(r){}}const A=l.Registry.create();var ue=Object.defineProperty,pe=Object.getOwnPropertyDescriptor,_e=(a,r,e,n)=>{for(var t=n>1?void 0:n?pe(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&ue(r,e,t),t},ve=(a,r)=>(e,n)=>r(e,n,a);let te=class extends Y{constructor(r){super();_(this,"zIndex",5);_(this,"viewKey",l.PageElementType.DOCUMENT);_(this,"_liquid",new h.Liquid);this._localeService=r}check(r){if(r===this.viewKey)return this}convert(r,e){var F,se;const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,document:E}=r;if(E==null)return;const m=new l.DocumentDataModel(E),I=new h.DocumentViewModel(m),b=h.DocumentSkeleton.create(I,this._localeService),P=new h.Documents("__DocsRender__",b);b.calculate();const O=new h.SceneViewer("__DocsViewer__"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f}),S=new h.Scene("__DocsScene__"+n,O),T=new h.Viewport("__DocsViewPort_"+n,S,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});S.attachControl(),S.onMouseWheel$.subscribeEvent((M,N)=>{const D=M;if(D.ctrlKey){const z=Math.abs(D.deltaX);let V=z<40?.2:z<80?.4:.2;V*=D.deltaY>0?-1:1,S.scaleX<1&&(V/=2),S.scaleX+V>4?S.scale(4,4):S.scaleX+V<.1?S.scale(.1,.1):(D.deltaY>0,D.preventDefault())}else T.onMouseWheel(D,N)}),new h.ScrollBar(T,{mainScene:e}),S.addObject(P);const y=b.getActualSize();P.resize(y.actualWidth,y.actualHeight),S.resize(y.actualWidth,y.actualHeight+200);const x=(F=P.getSkeleton())==null?void 0:F.getPageSize();P.pageRender$.subscribe(M=>{const{page:N,pageLeft:D,pageTop:z,ctx:V}=M,{width:B,height:K,marginBottom:J,marginLeft:L,marginRight:k,marginTop:q}=N;V.save(),V.translate(D-.5,z-.5),h.Rect.drawWith(V,{width:(x==null?void 0:x.width)||B,height:(x==null?void 0:x.height)||K,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:"rgba(255,255,255, 1)",zIndex:3}),V.restore()});const{left:W,top:$}=P,X=b.getSkeletonData();if(X==null)return;const{pages:C}=X,U=[],H=new Map;this._recalculateSizeBySkeleton(P,S,b);for(let M=0,N=C.length;M<N;M++){const D=C[M],{skeDrawings:z,marginLeft:V,marginTop:B,pageWidth:K,pageHeight:J}=D;this._liquid.translatePagePadding(D),z.forEach(L=>{const{aLeft:k,aTop:q,height:oe,width:le,drawingOrigin:qe}=L,de=new h.Image(L.drawingId,{left:k+W+this._liquid.x,top:q+$+this._liquid.y,width:le,height:oe,zIndex:11});H.set(L.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),U.push(de)}),this._liquid.translatePage(D,P.pageLayoutType,P.pageMarginLeft,P.pageMarginTop)}return S.addObjects(U),U.forEach(M=>{S.attachTransformerTo(M)}),(se=S.getTransformer())==null||se.changing$.subscribe(M=>{const{objects:N}=M;N.forEach(D=>{const{oKey:z,left:V,top:B,height:K,width:J}=D,L=H.get(z),k=(L==null?void 0:L.marginLeft)||0,q=(L==null?void 0:L.marginTop)||0;b==null||b.getViewModel().getDataModel().updateDrawing(z,{left:V-W-k,top:B-$-q,height:K,width:J})}),b==null||b.calculate()}),this._calculatePagePosition(P,S,T),O}_recalculateSizeBySkeleton(r,e,n){var c;const t=(c=n.getSkeletonData())==null?void 0:c.pages;if(t==null)return;let i=0,s=0;for(let o=0,d=t.length;o<d;o++){const u=t[o],{pageWidth:w,pageHeight:g}=u;r.pageLayoutType===h.PageLayoutType.VERTICAL?(s+=g,s+=r.pageMarginTop,o===d-1&&(s+=r.pageMarginTop),i=Math.max(i,w)):r.pageLayoutType===h.PageLayoutType.HORIZONTAL&&(i+=w,o!==d-1&&(i+=r.pageMarginLeft),s=Math.max(s,g))}r.resize(i,s),e.resize(i,s)}_calculatePagePosition(r,e,n,t=1){const i=e==null?void 0:e.getParent(),{width:s,height:c,pageMarginLeft:o,pageMarginTop:d}=r;if(i==null||s===Number.POSITIVE_INFINITY||c===Number.POSITIVE_INFINITY)return;const{width:u,height:w}=i;let g=0,v=0,p=0,f=0,R=Number.POSITIVE_INFINITY;if(u>(s+o*2)*t?(g=u/2-s*t/2,g/=t,p=(u-o*2)/t,R=0):(g=o,p=s+o*2,R=(p-u/t)/2),w>c?(v=w/2-c/2,f=(w-d*2)/t):(v=d,f=c+d*2),e.resize(p,f+200),r.translate(g,v),R!==Number.POSITIVE_INFINITY&&n!=null){const j=n.transScroll2ViewportScrollValue(R,0).x;n.scrollToBarPos({x:j})}return this}};te=_e([ve(0,l.Inject(l.LocaleService))],te);class fe{constructor(){_(this,"zIndex",5)}create(r){return r.createInstance(te)}}A.add(new fe);class we extends Y{constructor(){super(...arguments);_(this,"zIndex",1);_(this,"viewKey",l.PageElementType.IMAGE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,image:E={}}=e,{imageProperties:m,placeholder:I,link:b}=E,P=(m==null?void 0:m.contentUrl)||"";return new h.Image(n,{url:P,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0})}}class Se{constructor(){_(this,"zIndex",4)}create(r){return r.createInstance(we)}}A.add(new Se);var Ie=Object.defineProperty,Pe=Object.getOwnPropertyDescriptor,be=(a,r,e,n)=>{for(var t=n>1?void 0:n?Pe(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ie(r,e,t),t},Te=(a,r)=>(e,n)=>r(e,n,a);let re=class extends Y{constructor(r){super();_(this,"zIndex",2);_(this,"viewKey",l.PageElementType.TEXT);this._localeService=r}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,richText:E={}}=r,{text:m,ff:I,fs:b,it:P,bl:O,ul:S,st:T,ol:y,bg:x,bd:W,cl:$,rich:X}=E;let C={top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0},U=!1;if(m!=null?(C={...C,text:m,ff:I,fs:b,it:P,bl:O,ul:S,st:T,ol:y,bg:x,bd:W,cl:$},U=!0):X!=null&&(C={...C,richText:X},U=!0),U!==!1)return new h.RichText(this._localeService,n,C)}};re=be([Te(0,l.Inject(l.LocaleService))],re);class me{constructor(){_(this,"zIndex",0)}create(r){return r.createInstance(re)}}A.add(new me);class ye extends Y{constructor(){super(...arguments);_(this,"zIndex",2);_(this,"viewKey",l.PageElementType.SHAPE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j}=e,{shapeType:E,text:m,shapeProperties:I,placeholder:b,link:P}=e.shape||{},O=I==null?"":l.getColorStyle(I.shapeBackgroundFill)||"rgba(255,255,255,1)",S=I==null?void 0:I.outline,T={};if(S){const{outlineFill:y,weight:x}=S;T.strokeWidth=x,T.stroke=l.getColorStyle(y)||"rgba(0,0,0,1)"}if(E===l.BasicShapes.Rect)return new h.Rect(n,{fill:O,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0,...T});if(E===l.BasicShapes.RoundRect){const y=(I==null?void 0:I.radius)||0;return new h.Rect(n,{fill:O,top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0,radius:y,...T})}}}class Re{constructor(){_(this,"zIndex",2)}create(r){return r.createInstance(ye)}}A.add(new Re);var Ee=Object.defineProperty,De=Object.getOwnPropertyDescriptor,Oe=(a,r,e,n)=>{for(var t=n>1?void 0:n?De(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ee(r,e,t),t},je=(a,r)=>(e,n)=>r(e,n,a);let ne=class extends Y{constructor(r){super();_(this,"zIndex",6);_(this,"viewKey",l.PageElementType.SLIDE);_(this,"_ObjectProvider",null);this._injector=r}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,title:R,description:j,slide:E}=r;if(E==null)return;const m=new l.SlideDataModel(E),I=new h.Slide("__SLIDERender__"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0});I.enableNav(),I.enableSelectedClipElement();const b=m.getPageOrder(),P=m.getPages();if(!b||!P)return I;this._ObjectProvider=new Z(this._injector);for(let O=0,S=b.length;O<S;O++){const T=P[b[O]],{id:y}=T;I.addPage(this._createScene(y,I,T,e,m))}return I.activeFirstPage(),I}_createScene(r,e,n,t,i){var v;const{width:s,height:c}=e,o=new h.Scene(r,e,{width:s,height:c});new h.Viewport(`PageViewer_${r}`,o,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:u,pageBackgroundFill:w}=n,g=(v=this._ObjectProvider)==null?void 0:v.convertToRenderObjects(u,t);return this._addBackgroundRect(o,w,i),o.addObjects(g),g==null||g.forEach(p=>{o.attachTransformerTo(p)}),o}_addBackgroundRect(r,e,n){const t=n.getPageSize(),{width:i=0,height:s=0}=t,c=new h.Rect("canvas",{left:0,top:0,width:i,height:s,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:l.getColorStyle(e)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});r.addObject(c,0)}};ne=Oe([je(0,l.Inject(l.Injector))],ne);class xe{constructor(){_(this,"zIndex",6)}create(r){return r.createInstance(ne)}}A.add(new xe);var Ve=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,Me=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ce(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ve(r,e,t),t},ae=(a,r)=>(e,n)=>r(e,n,a);let ie=class extends Y{constructor(r,e){super();_(this,"zIndex",4);_(this,"viewKey",l.PageElementType.SPREADSHEET);this._localeService=r,this._contextService=e}check(r){if(r===this.viewKey)return this}convert(r,e){const{id:n,zIndex:t,left:i=0,top:s=0,width:c,height:o,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,spreadsheet:R}=r;if(R==null)return;const{worksheet:j,styles:E}=R,{cellData:m}=j,I=new l.ObjectMatrix(m),b=new l.Styles(E),P=new h.SpreadsheetSkeleton(new l.Worksheet(n,j,b),j,I,b,this._localeService,this._contextService),{rowTotalHeight:O,columnTotalWidth:S,rowHeaderWidth:T,columnHeaderHeight:y}=P,x=S+j.rowHeader.width||0,W=O+j.columnHeader.height||0,$=new h.SceneViewer("spreadInSlideSceneViewer"+n,{top:s,left:i,width:c,height:o,zIndex:t,angle:d,scaleX:u,scaleY:w,skewX:g,skewY:v,flipX:p,flipY:f,forceRender:!0}),X=new h.Scene("spreadInSlideScene"+n,$,{width:x,height:W});this._updateViewport(n,T,y,X,e);const C=new h.Spreadsheet("testSheetViewer",P,!1),U=new h.SpreadsheetRowHeader("spreadInSlideRow",P),H=new h.SpreadsheetColumnHeader("spreadInSlideColumn",P),F=new h.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:T,height:y,fill:h.getColor([248,249,250]),stroke:h.getColor([217,217,217]),strokeWidth:1});return C.zIndex=10,X.addObjects([C],1),X.addObjects([U,H,F],2),$}_updateViewport(r,e,n,t,i){if(i==null)return;const s=e*t.scaleX,c=n*t.scaleY,o=new h.Viewport("spreadInSlideViewMain"+r,t,{left:s,top:c,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),d=new h.Viewport("spreadInSlideViewTop"+r,t,{left:s,height:c,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),u=new h.Viewport("spreadInSlideViewLeft"+r,t,{left:0,bottom:0,top:c,width:s,isRelativeY:!0,isWheelPreventDefaultX:!0});new h.Viewport("spreadInSlideViewLeftTop"+r,t,{left:0,top:0,width:s,height:c,isWheelPreventDefaultX:!0}),o.onScrollAfter$.subscribeEvent(w=>{const{scrollX:g,scrollY:v,viewportScrollX:p,viewportScrollY:f}=w;d.updateScrollVal({scrollX:g,viewportScrollX:p}),u.updateScrollVal({scrollY:v,viewportScrollY:f})}),t.attachControl(),new h.ScrollBar(o,{mainScene:i}),t.onMouseWheel$.subscribeEvent((w,g)=>{const v=w;if(v.ctrlKey){const p=Math.abs(v.deltaX);let f=p<40?.05:p<80?.02:.01;f*=v.deltaY>0?-1:1,t.scaleX<1&&(f/=2),t.scaleX+f>4?t.scale(4,4):t.scaleX+f<.1?t.scale(.1,.1):(t.scaleBy(f,f),v.preventDefault())}else o.onMouseWheel(v,g)})}};ie=Me([ae(0,l.Inject(l.LocaleService)),ae(1,l.IContextService)],ie);class Le{constructor(){_(this,"zIndex",4)}create(r){return r.createInstance(ie)}}A.add(new Le);var Xe=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,ze=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ue(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Xe(r,e,t),t},$e=(a,r)=>(e,n)=>r(e,n,a);let Z=class{constructor(a){_(this,"_adaptors",[]);this._injector=a,this._adaptorLoader()}convertToRenderObjects(a,r){const e=Object.keys(a),n=[];return e.forEach(t=>{const i=a[t],s=this._executor(i,r);s!=null&&n.push(s)}),n}_executor(a,r){var t;const{id:e,type:n}=a;for(const i of this._adaptors){const s=(t=i.check(n))==null?void 0:t.convert(a,r);if(s!=null)return s}}_adaptorLoader(){A.getData().sort(l.sortRules).forEach(a=>{this._adaptors.push(a.create(this._injector))})}};Z=ze([$e(0,l.Inject(l.Injector))],Z);var Ne=Object.defineProperty,Ae=Object.getOwnPropertyDescriptor,We=(a,r,e,n)=>{for(var t=n>1?void 0:n?Ae(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ne(r,e,t),t},ee=(a,r)=>(e,n)=>r(e,n,a),ce=(a=>(a.COMPONENT="__slideRender__",a.SCENE="__mainScene__",a.VIEW="__mainView__",a))(ce||{});exports.CanvasView=class extends l.RxDisposable{constructor(e,n,t){super();_(this,"_objectProvider",null);_(this,"_activePageId","");_(this,"activePageId$",new Q.Subject);_(this,"_refreshThumb",l.debounce(()=>{this.createThumbs()},300));this._univerInstanceService=e,this._injector=n,this._renderManagerService=t,this._initializeDependencies(this._injector),this._initialize()}_initialize(){this._renderManagerService.createRender$.pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e)}),this._univerInstanceService.getCurrentTypeOfUnit$(l.UniverInstanceType.UNIVER_SLIDE).pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e==null?void 0:e.getUnitId())}),this._univerInstanceService.getAllUnitsForType(l.UniverInstanceType.UNIVER_SLIDE).forEach(e=>{this._create(e.getUnitId())})}activePage(e){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE);let t;if(e)t=n.getPage(e);else{const o=n.getPages(),d=n.getPageOrder();if(d==null||o==null)return;t=o[d[0]],e=t.id}const i=this._currentRender();if(t==null||i==null||i.mainComponent==null)return;const{id:s}=t,c=i.mainComponent;if(this._activePageId=e,this.activePageId$.next(e),c!=null&&c.hasPage(s)){c.changePage(s);return}this._createScene(s,t)}_scrollToCenter(){var d;const e=(d=this._currentRender())==null?void 0:d.scene,n=e==null?void 0:e.getViewport("__mainView__"),t=this._getCenterPositionViewPort(e);if(!n||!t)return;const{left:i,top:s}=t,{x:c,y:o}=n.transViewportScroll2ScrollValue(i,s);n.scrollToBarPos({x:c,y:o})}_create(e){e==null||this._univerInstanceService.getUnit(e,l.UniverInstanceType.UNIVER_SLIDE)==null||this._renderManagerService.has(e)||this._addNewRender(e)}_currentRender(){const e=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE);return this._renderManagerService.getRenderById(e.getUnitId())}_addNewRender(e){const n=this._univerInstanceService.getUnit(e,l.UniverInstanceType.UNIVER_SLIDE);if(n==null)return;this._renderManagerService.createRender(e);const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{scene:i,engine:s}=t,c=s.onTransformChange$.subscribeEvent(()=>{this._scrollToCenter(),c==null||c.unsubscribe()});s.onTransformChange$.subscribeEvent(()=>{setTimeout(()=>{this.createThumbs()},300)}),i.resize(2400,1800);const o=new h.Viewport("__mainView__",i,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});i.attachControl(),i.onMouseWheel$.subscribeEvent((u,w)=>{const g=u;if(g.ctrlKey){const v=Math.abs(g.deltaX);let p=v<40?.2:v<80?.4:.2;p*=g.deltaY>0?-1:1,i.scaleX<1&&(p/=2),i.scaleX+p>4?i.scale(4,4):i.scaleX+p<.1?i.scale(.1,.1):(g.deltaY>0,g.preventDefault())}else o.onMouseWheel(g,w)}),i.onFileLoaded$.subscribeEvent(()=>{this._refreshThumb()}),h.ScrollBar.attachTo(o),this._renderManagerService.setCurrent(e);const d=this._createSlide(i);t.mainComponent=d,t.components.set("__slideRender__",d),this._createSlidePages(n,d),s.runRenderLoop(()=>{i.render()})}_createSlide(e){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE),{width:t,height:i}=e,s=n.getPageSize(),{width:c=100,height:o=100}=s,d=new h.Slide("__slideRender__",{left:(t-c)/2,top:(i-o)/2,width:c,height:o,zIndex:10});return d.enableNav(),d.enableSelectedClipElement(),e.addObject(d),d}_addBackgroundRect(e,n){const i=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE).getPageSize(),{width:s=0,height:c=0}=i,o=new h.Rect("canvas",{left:0,top:0,width:s,height:c,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:l.getColorStyle(n)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});e.addObject(o,0)}_getCenterPositionViewPort(e){if(!e)return{left:0,top:0};const{width:n,height:t}=e,i=e.getEngine(),s=(i==null?void 0:i.width)||0,c=(i==null?void 0:i.height)||0;return{left:(n-s)/2,top:(t-c)/2}}_thumbSceneRender(e,n){const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{engine:i}=t;if(i==null)return;const{width:s,height:c}=n,{width:o=s,height:d=c}=i,u=i.getCanvas().getContext();n.renderToThumb(u,e,o/s,d/c)}_createSlidePages(e,n){const t=e.getPages(),i=e.getPageOrder();if(!(!t||!i)&&i.length!==0){for(let s=0,c=i.length;s<c;s++){const o=i[s];this._createScene(o,t[o]),this._createThumb(o)}this._activePageId=i[0],n.activeFirstPage()}}createThumbs(){const n=this._univerInstanceService.getCurrentUnitForType(l.UniverInstanceType.UNIVER_SLIDE).getPageOrder(),t=this._currentRender();if(!(!n||!t)&&n.length!==0)for(let i=0,s=n.length;i<s;i++){const c=n[i];this._thumbSceneRender(c,t.mainComponent)}}_createThumb(e){this._renderManagerService.createRender(e)}_createScene(e,n){const t=this._currentRender();if(!t||!this._objectProvider)return;const{scene:i,mainComponent:s}=t,c=s,{width:o,height:d}=c,u=new h.Scene(e,c,{width:o,height:d});new h.Viewport(`PageViewer_${e}`,u,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:g,pageBackgroundFill:v}=n,p=this._objectProvider.convertToRenderObjects(g,i);if(!p||!c)return;this._addBackgroundRect(u,v),u.addObjects(p),p.forEach(R=>{u.attachTransformerTo(R)});const f=u.getTransformer();return f==null||f.changeEnd$.subscribe(()=>{this._thumbSceneRender(this._activePageId,c)}),f==null||f.clearControl$.subscribe(()=>{this._thumbSceneRender(this._activePageId,c)}),c.addPage(u),u}_initializeDependencies(e){this._objectProvider=e.createInstance(Z)}};exports.CanvasView=We([l.OnLifecycle(l.LifecycleStages.Ready,exports.CanvasView),ee(0,l.IUniverInstanceService),ee(1,l.Inject(l.Injector)),ee(2,h.IRenderManagerService)],exports.CanvasView);var Ye=Object.defineProperty,He=Object.getOwnPropertyDescriptor,Fe=(a,r,e,n)=>{for(var t=n>1?void 0:n?He(r,e):r,i=a.length-1,s;i>=0;i--)(s=a[i])&&(t=(n?s(r,e,t):s(t))||t);return n&&t&&Ye(r,e,t),t},Be=(a,r)=>(e,n)=>r(e,n,a);const Ke={},ke="slides";var G;exports.UniverSlidesPlugin=(G=class extends l.Plugin{constructor(e={},n){super();_(this,"_config");_(this,"_canvasEngine",null);_(this,"_canvasView",null);this._injector=n,this._config=Object.assign(Ke,e),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(h.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}getCanvasView(){return this._canvasView}_initializeDependencies(e){[[exports.CanvasView]].forEach(t=>{e.add(t)})}},_(G,"pluginName",ke),_(G,"type",l.UniverInstanceType.UNIVER_SLIDE),G);exports.UniverSlidesPlugin=Fe([Be(1,l.Inject(l.Injector))],exports.UniverSlidesPlugin);exports.SLIDE_KEY=ce;
package/lib/es/index.js CHANGED
@@ -2,9 +2,9 @@ var De = Object.defineProperty;
2
2
  var Oe = (a, e, r) => e in a ? De(a, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : a[e] = r;
3
3
  var g = (a, e, r) => Oe(a, typeof e != "symbol" ? e + "" : e, r);
4
4
  import { Registry as Ee, Inject as W, LocaleService as he, PageElementType as F, DocumentDataModel as ye, getColorStyle as te, BasicShapes as pe, Injector as ne, SlideDataModel as xe, IContextService as je, ObjectMatrix as Me, Styles as Ce, Worksheet as Ve, sortRules as Xe, OnLifecycle as Le, LifecycleStages as ze, RxDisposable as $e, UniverInstanceType as V, debounce as Ne, IUniverInstanceService as Ae, Plugin as We } from "@univerjs/core";
5
- import { Liquid as Ye, DocumentViewModel as Ue, DocumentSkeleton as He, Documents as Fe, SceneViewer as Ie, Scene as ie, Viewport as $, ScrollBar as ue, Rect as H, Image as be, PageLayoutType as _e, RichText as Ke, Slide as Pe, SpreadsheetSkeleton as ke, Spreadsheet as Be, SpreadsheetRowHeader as qe, SpreadsheetColumnHeader as Ge, getColor as fe, IRenderManagerService as Ze, IRenderingEngine as Je } from "@univerjs/engine-render";
5
+ import { Liquid as Ye, DocumentViewModel as Ue, DocumentSkeleton as He, Documents as Fe, SceneViewer as Ie, Scene as ie, Viewport as $, ScrollBar as ue, Rect as H, Image as be, PageLayoutType as _e, RichText as Be, Slide as Pe, SpreadsheetSkeleton as Ke, Spreadsheet as ke, SpreadsheetRowHeader as qe, SpreadsheetColumnHeader as Ge, getColor as fe, IRenderManagerService as Ze, IRenderingEngine as Je } from "@univerjs/engine-render";
6
6
  import { Subject as Qe, takeUntil as ve } from "rxjs";
7
- class K {
7
+ class B {
8
8
  constructor() {
9
9
  g(this, "zIndex", 0);
10
10
  g(this, "viewKey", null);
@@ -22,7 +22,7 @@ var et = Object.defineProperty, tt = Object.getOwnPropertyDescriptor, rt = (a, e
22
22
  (i = a[s]) && (t = (n ? i(e, r, t) : i(t)) || t);
23
23
  return n && t && et(e, r, t), t;
24
24
  }, nt = (a, e) => (r, n) => e(r, n, a);
25
- let ce = class extends K {
25
+ let ce = class extends B {
26
26
  constructor(e) {
27
27
  super();
28
28
  g(this, "zIndex", 5);
@@ -36,7 +36,7 @@ let ce = class extends K {
36
36
  }
37
37
  // eslint-disable-next-line max-lines-per-function
38
38
  convert(e, r) {
39
- var B, ge;
39
+ var k, ge;
40
40
  const {
41
41
  id: n,
42
42
  zIndex: t,
@@ -94,7 +94,7 @@ let ce = class extends K {
94
94
  }), v.addObject(S);
95
95
  const m = I.getActualSize();
96
96
  S.resize(m.actualWidth, m.actualHeight), v.resize(m.actualWidth, m.actualHeight + 200);
97
- const y = (B = S.getSkeleton()) == null ? void 0 : B.getPageSize();
97
+ const y = (k = S.getSkeleton()) == null ? void 0 : k.getPageSize();
98
98
  S.pageRender$.subscribe((M) => {
99
99
  const { page: A, pageLeft: R, pageTop: z, ctx: x } = M, { width: q, height: G, marginBottom: se, marginLeft: C, marginRight: Z, marginTop: J } = A;
100
100
  x.save(), x.translate(R - 0.5, z - 0.5), H.drawWith(x, {
@@ -109,7 +109,7 @@ let ce = class extends K {
109
109
  const { left: U, top: N } = S, X = I.getSkeletonData();
110
110
  if (X == null)
111
111
  return;
112
- const { pages: j } = X, L = [], k = /* @__PURE__ */ new Map();
112
+ const { pages: j } = X, L = [], K = /* @__PURE__ */ new Map();
113
113
  this._recalculateSizeBySkeleton(S, v, I);
114
114
  for (let M = 0, A = j.length; M < A; M++) {
115
115
  const R = j[M], { skeDrawings: z, marginLeft: x, marginTop: q, pageWidth: G, pageHeight: se } = R;
@@ -122,7 +122,7 @@ let ce = class extends K {
122
122
  height: me,
123
123
  zIndex: 11
124
124
  });
125
- k.set(C.drawingId, {
125
+ K.set(C.drawingId, {
126
126
  marginLeft: this._liquid.x,
127
127
  marginTop: this._liquid.y
128
128
  }), L.push(Re);
@@ -138,7 +138,7 @@ let ce = class extends K {
138
138
  }), (ge = v.getTransformer()) == null || ge.changing$.subscribe((M) => {
139
139
  const { objects: A } = M;
140
140
  A.forEach((R) => {
141
- const { oKey: z, left: x, top: q, height: G, width: se } = R, C = k.get(z), Z = (C == null ? void 0 : C.marginLeft) || 0, J = (C == null ? void 0 : C.marginTop) || 0;
141
+ const { oKey: z, left: x, top: q, height: G, width: se } = R, C = K.get(z), Z = (C == null ? void 0 : C.marginLeft) || 0, J = (C == null ? void 0 : C.marginTop) || 0;
142
142
  I == null || I.getViewModel().getDataModel().updateDrawing(z, {
143
143
  left: x - U - Z,
144
144
  top: q - N - J,
@@ -168,7 +168,7 @@ let ce = class extends K {
168
168
  let u = 0, l = 0, p = 0, _ = 0, O = Number.POSITIVE_INFINITY;
169
169
  if (f > (i + c * 2) * t ? (u = f / 2 - i * t / 2, u /= t, p = (f - c * 2) / t, O = 0) : (u = c, p = i + c * 2, O = (p - f / t) / 2), h > o ? (l = h / 2 - o / 2, _ = (h - d * 2) / t) : (l = d, _ = o + d * 2), r.resize(p, _ + 200), e.translate(u, l), O !== Number.POSITIVE_INFINITY && n != null) {
170
170
  const E = n.transScroll2ViewportScrollValue(O, 0).x;
171
- n.scrollTo({
171
+ n.scrollToBarPos({
172
172
  x: E
173
173
  });
174
174
  }
@@ -187,7 +187,7 @@ class it {
187
187
  }
188
188
  }
189
189
  Y.add(new it());
190
- class st extends K {
190
+ class st extends B {
191
191
  constructor() {
192
192
  super(...arguments);
193
193
  g(this, "zIndex", 1);
@@ -248,7 +248,7 @@ var ct = Object.defineProperty, ot = Object.getOwnPropertyDescriptor, lt = (a, e
248
248
  (i = a[s]) && (t = (n ? i(e, r, t) : i(t)) || t);
249
249
  return n && t && ct(e, r, t), t;
250
250
  }, dt = (a, e) => (r, n) => e(r, n, a);
251
- let oe = class extends K {
251
+ let oe = class extends B {
252
252
  constructor(e) {
253
253
  super();
254
254
  g(this, "zIndex", 2);
@@ -294,7 +294,7 @@ let oe = class extends K {
294
294
  forceRender: !0
295
295
  }, L = !1;
296
296
  if (P != null ? (j = { ...j, text: P, ff: w, fs: I, it: S, bl: D, ul: v, st: b, ol: m, bg: y, bd: U, cl: N }, L = !0) : X != null && (j = { ...j, richText: X }, L = !0), L !== !1)
297
- return new Ke(this._localeService, n, j);
297
+ return new Be(this._localeService, n, j);
298
298
  }
299
299
  };
300
300
  oe = lt([
@@ -309,7 +309,7 @@ class ht {
309
309
  }
310
310
  }
311
311
  Y.add(new ht());
312
- class ut extends K {
312
+ class ut extends B {
313
313
  constructor() {
314
314
  super(...arguments);
315
315
  g(this, "zIndex", 2);
@@ -396,7 +396,7 @@ var pt = Object.defineProperty, _t = Object.getOwnPropertyDescriptor, ft = (a, e
396
396
  (i = a[s]) && (t = (n ? i(e, r, t) : i(t)) || t);
397
397
  return n && t && pt(e, r, t), t;
398
398
  }, vt = (a, e) => (r, n) => e(r, n, a);
399
- let le = class extends K {
399
+ let le = class extends B {
400
400
  constructor(e) {
401
401
  super();
402
402
  g(this, "zIndex", 6);
@@ -506,7 +506,7 @@ var St = Object.defineProperty, It = Object.getOwnPropertyDescriptor, bt = (a, e
506
506
  (i = a[s]) && (t = (n ? i(e, r, t) : i(t)) || t);
507
507
  return n && t && St(e, r, t), t;
508
508
  }, we = (a, e) => (r, n) => e(r, n, a);
509
- let de = class extends K {
509
+ let de = class extends B {
510
510
  constructor(e, r) {
511
511
  super();
512
512
  g(this, "zIndex", 4);
@@ -537,7 +537,7 @@ let de = class extends K {
537
537
  } = e;
538
538
  if (O == null)
539
539
  return;
540
- const { worksheet: E, styles: T } = O, { cellData: P } = E, w = new Me(P), I = new Ce(T), S = new ke(
540
+ const { worksheet: E, styles: T } = O, { cellData: P } = E, w = new Me(P), I = new Ce(T), S = new Ke(
541
541
  new Ve(n, E, I),
542
542
  // FIXME: worksheet in slide doesn't has a Worksheet object
543
543
  E,
@@ -564,7 +564,7 @@ let de = class extends K {
564
564
  height: U
565
565
  });
566
566
  this._updateViewport(n, b, m, X, r);
567
- const j = new Be("testSheetViewer", S, !1), L = new qe("spreadInSlideRow", S), k = new Ge("spreadInSlideColumn", S), B = new H("spreadInSlideLeftTop", {
567
+ const j = new ke("testSheetViewer", S, !1), L = new qe("spreadInSlideRow", S), K = new Ge("spreadInSlideColumn", S), k = new H("spreadInSlideLeftTop", {
568
568
  zIndex: 2,
569
569
  left: -1,
570
570
  top: -1,
@@ -574,7 +574,7 @@ let de = class extends K {
574
574
  stroke: fe([217, 217, 217]),
575
575
  strokeWidth: 1
576
576
  });
577
- return j.zIndex = 10, X.addObjects([j], 1), X.addObjects([L, k, B], 2), N;
577
+ return j.zIndex = 10, X.addObjects([j], 1), X.addObjects([L, K, k], 2), N;
578
578
  }
579
579
  // eslint-disable-next-line max-lines-per-function
580
580
  _updateViewport(e, r, n, t, s) {
@@ -611,10 +611,10 @@ let de = class extends K {
611
611
  isWheelPreventDefaultX: !0
612
612
  }), c.onScrollAfter$.subscribeEvent((h) => {
613
613
  const { scrollX: u, scrollY: l, viewportScrollX: p, viewportScrollY: _ } = h;
614
- d.updateScroll({
614
+ d.updateScrollVal({
615
615
  scrollX: u,
616
616
  viewportScrollX: p
617
- }), f.updateScroll({
617
+ }), f.updateScrollVal({
618
618
  scrollY: l,
619
619
  viewportScrollY: _
620
620
  });
@@ -730,7 +730,7 @@ let ee = class extends $e {
730
730
  const e = (c = this._currentRender()) == null ? void 0 : c.scene, r = e == null ? void 0 : e.getViewport("__mainView__"), n = this._getCenterPositionViewPort(e);
731
731
  if (!r || !n) return;
732
732
  const { left: t, top: s } = n, { x: i, y: o } = r.transViewportScroll2ScrollValue(t, s);
733
- r.scrollTo({
733
+ r.scrollToBarPos({
734
734
  x: i,
735
735
  y: o
736
736
  });
package/lib/umd/index.js CHANGED
@@ -1 +1 @@
1
- (function(I,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/engine-render"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render","rxjs"],c):(I=typeof globalThis<"u"?globalThis:I||self,c(I.UniverSlides={},I.UniverCore,I.UniverEngineRender,I.rxjs))})(this,function(I,c,h,Q){"use strict";var ke=Object.defineProperty;var qe=(I,c,h)=>c in I?ke(I,c,{enumerable:!0,configurable:!0,writable:!0,value:h}):I[c]=h;var _=(I,c,h)=>qe(I,typeof c!="symbol"?c+"":c,h);var B;class Y{constructor(){_(this,"zIndex",0);_(this,"viewKey",null)}check(i){if(i===this.viewKey)return this}create(i){}}const N=c.Registry.create();var oe=Object.defineProperty,he=Object.getOwnPropertyDescriptor,de=(a,i,e,r)=>{for(var t=r>1?void 0:r?he(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&oe(i,e,t),t},ue=(a,i)=>(e,r)=>i(e,r,a);let ee=class extends Y{constructor(i){super();_(this,"zIndex",5);_(this,"viewKey",c.PageElementType.DOCUMENT);_(this,"_liquid",new h.Liquid);this._localeService=i}check(i){if(i===this.viewKey)return this}convert(i,e){var k,le;const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:V,document:D}=i;if(D==null)return;const y=new c.DocumentDataModel(D),P=new h.DocumentViewModel(y),T=h.DocumentSkeleton.create(P,this._localeService),b=new h.Documents("__DocsRender__",T);T.calculate();const C=new h.SceneViewer("__DocsViewer__"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f}),S=new h.Scene("__DocsScene__"+r,C),m=new h.Viewport("__DocsViewPort_"+r,S,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});S.attachControl(),S.onMouseWheel$.subscribeEvent((U,W)=>{const O=U;if(O.ctrlKey){const R=Math.abs(O.deltaX);let M=R<40?.2:R<80?.4:.2;M*=O.deltaY>0?-1:1,S.scaleX<1&&(M/=2),S.scaleX+M>4?S.scale(4,4):S.scaleX+M<.1?S.scale(.1,.1):(O.deltaY>0,O.preventDefault())}else m.onMouseWheel(O,W)}),new h.ScrollBar(m,{mainScene:e}),S.addObject(b);const E=T.getActualSize();b.resize(E.actualWidth,E.actualHeight),S.resize(E.actualWidth,E.actualHeight+200);const x=(k=b.getSkeleton())==null?void 0:k.getPageSize();b.pageRender$.subscribe(U=>{const{page:W,pageLeft:O,pageTop:R,ctx:M}=U,{width:q,height:G,marginBottom:se,marginLeft:X,marginRight:Z,marginTop:J}=W;M.save(),M.translate(O-.5,R-.5),h.Rect.drawWith(M,{width:(x==null?void 0:x.width)||q,height:(x==null?void 0:x.height)||G,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:"rgba(255,255,255, 1)",zIndex:3}),M.restore()});const{left:H,top:A}=b,z=T.getSkeletonData();if(z==null)return;const{pages:L}=z,$=[],K=new Map;this._recalculateSizeBySkeleton(b,S,T);for(let U=0,W=L.length;U<W;U++){const O=L[U],{skeDrawings:R,marginLeft:M,marginTop:q,pageWidth:G,pageHeight:se}=O;this._liquid.translatePagePadding(O),R.forEach(X=>{const{aLeft:Z,aTop:J,height:Fe,width:Be,drawingOrigin:Ge}=X,Ke=new h.Image(X.drawingId,{left:Z+H+this._liquid.x,top:J+A+this._liquid.y,width:Be,height:Fe,zIndex:11});K.set(X.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),$.push(Ke)}),this._liquid.translatePage(O,b.pageLayoutType,b.pageMarginLeft,b.pageMarginTop)}return S.addObjects($),$.forEach(U=>{S.attachTransformerTo(U)}),(le=S.getTransformer())==null||le.changing$.subscribe(U=>{const{objects:W}=U;W.forEach(O=>{const{oKey:R,left:M,top:q,height:G,width:se}=O,X=K.get(R),Z=(X==null?void 0:X.marginLeft)||0,J=(X==null?void 0:X.marginTop)||0;T==null||T.getViewModel().getDataModel().updateDrawing(R,{left:M-H-Z,top:q-A-J,height:G,width:se})}),T==null||T.calculate()}),this._calculatePagePosition(b,S,m),C}_recalculateSizeBySkeleton(i,e,r){var l;const t=(l=r.getSkeletonData())==null?void 0:l.pages;if(t==null)return;let n=0,s=0;for(let o=0,d=t.length;o<d;o++){const p=t[o],{pageWidth:w,pageHeight:u}=p;i.pageLayoutType===h.PageLayoutType.VERTICAL?(s+=u,s+=i.pageMarginTop,o===d-1&&(s+=i.pageMarginTop),n=Math.max(n,w)):i.pageLayoutType===h.PageLayoutType.HORIZONTAL&&(n+=w,o!==d-1&&(n+=i.pageMarginLeft),s=Math.max(s,u))}i.resize(n,s),e.resize(n,s)}_calculatePagePosition(i,e,r,t=1){const n=e==null?void 0:e.getParent(),{width:s,height:l,pageMarginLeft:o,pageMarginTop:d}=i;if(n==null||s===Number.POSITIVE_INFINITY||l===Number.POSITIVE_INFINITY)return;const{width:p,height:w}=n;let u=0,v=0,g=0,f=0,j=Number.POSITIVE_INFINITY;if(p>(s+o*2)*t?(u=p/2-s*t/2,u/=t,g=(p-o*2)/t,j=0):(u=o,g=s+o*2,j=(g-p/t)/2),w>l?(v=w/2-l/2,f=(w-d*2)/t):(v=d,f=l+d*2),e.resize(g,f+200),i.translate(u,v),j!==Number.POSITIVE_INFINITY&&r!=null){const V=r.transScroll2ViewportScrollValue(j,0).x;r.scrollTo({x:V})}return this}};ee=de([ue(0,c.Inject(c.LocaleService))],ee);class pe{constructor(){_(this,"zIndex",5)}create(i){return i.createInstance(ee)}}N.add(new pe);class ge extends Y{constructor(){super(...arguments);_(this,"zIndex",1);_(this,"viewKey",c.PageElementType.IMAGE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:V,image:D={}}=e,{imageProperties:y,placeholder:P,link:T}=D,b=(y==null?void 0:y.contentUrl)||"";return new h.Image(r,{url:b,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0})}}class _e{constructor(){_(this,"zIndex",4)}create(i){return i.createInstance(ge)}}N.add(new _e);var ve=Object.defineProperty,fe=Object.getOwnPropertyDescriptor,we=(a,i,e,r)=>{for(var t=r>1?void 0:r?fe(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&ve(i,e,t),t},Se=(a,i)=>(e,r)=>i(e,r,a);let te=class extends Y{constructor(i){super();_(this,"zIndex",2);_(this,"viewKey",c.PageElementType.TEXT);this._localeService=i}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:V,richText:D={}}=i,{text:y,ff:P,fs:T,it:b,bl:C,ul:S,st:m,ol:E,bg:x,bd:H,cl:A,rich:z}=D;let L={top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0},$=!1;if(y!=null?(L={...L,text:y,ff:P,fs:T,it:b,bl:C,ul:S,st:m,ol:E,bg:x,bd:H,cl:A},$=!0):z!=null&&(L={...L,richText:z},$=!0),$!==!1)return new h.RichText(this._localeService,r,L)}};te=we([Se(0,c.Inject(c.LocaleService))],te);class Ie{constructor(){_(this,"zIndex",0)}create(i){return i.createInstance(te)}}N.add(new Ie);class Pe extends Y{constructor(){super(...arguments);_(this,"zIndex",2);_(this,"viewKey",c.PageElementType.SHAPE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:V}=e,{shapeType:D,text:y,shapeProperties:P,placeholder:T,link:b}=e.shape||{},C=P==null?"":c.getColorStyle(P.shapeBackgroundFill)||"rgba(255,255,255,1)",S=P==null?void 0:P.outline,m={};if(S){const{outlineFill:E,weight:x}=S;m.strokeWidth=x,m.stroke=c.getColorStyle(E)||"rgba(0,0,0,1)"}if(D===c.BasicShapes.Rect)return new h.Rect(r,{fill:C,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0,...m});if(D===c.BasicShapes.RoundRect){const E=(P==null?void 0:P.radius)||0;return new h.Rect(r,{fill:C,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0,radius:E,...m})}}}class be{constructor(){_(this,"zIndex",2)}create(i){return i.createInstance(Pe)}}N.add(new be);var Te=Object.defineProperty,me=Object.getOwnPropertyDescriptor,ye=(a,i,e,r)=>{for(var t=r>1?void 0:r?me(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Te(i,e,t),t},Ee=(a,i)=>(e,r)=>i(e,r,a);let re=class extends Y{constructor(i){super();_(this,"zIndex",6);_(this,"viewKey",c.PageElementType.SLIDE);_(this,"_ObjectProvider",null);this._injector=i}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:V,slide:D}=i;if(D==null)return;const y=new c.SlideDataModel(D),P=new h.Slide("__SLIDERender__"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0});P.enableNav(),P.enableSelectedClipElement();const T=y.getPageOrder(),b=y.getPages();if(!T||!b)return P;this._ObjectProvider=new F(this._injector);for(let C=0,S=T.length;C<S;C++){const m=b[T[C]],{id:E}=m;P.addPage(this._createScene(E,P,m,e,y))}return P.activeFirstPage(),P}_createScene(i,e,r,t,n){var v;const{width:s,height:l}=e,o=new h.Scene(i,e,{width:s,height:l});new h.Viewport(`PageViewer_${i}`,o,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:p,pageBackgroundFill:w}=r,u=(v=this._ObjectProvider)==null?void 0:v.convertToRenderObjects(p,t);return this._addBackgroundRect(o,w,n),o.addObjects(u),u==null||u.forEach(g=>{o.attachTransformerTo(g)}),o}_addBackgroundRect(i,e,r){const t=r.getPageSize(),{width:n=0,height:s=0}=t,l=new h.Rect("canvas",{left:0,top:0,width:n,height:s,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:c.getColorStyle(e)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});i.addObject(l,0)}};re=ye([Ee(0,c.Inject(c.Injector))],re);class je{constructor(){_(this,"zIndex",6)}create(i){return i.createInstance(re)}}N.add(new je);var De=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,Ce=(a,i,e,r)=>{for(var t=r>1?void 0:r?Oe(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&De(i,e,t),t},ae=(a,i)=>(e,r)=>i(e,r,a);let ie=class extends Y{constructor(i,e){super();_(this,"zIndex",4);_(this,"viewKey",c.PageElementType.SPREADSHEET);this._localeService=i,this._contextService=e}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,spreadsheet:j}=i;if(j==null)return;const{worksheet:V,styles:D}=j,{cellData:y}=V,P=new c.ObjectMatrix(y),T=new c.Styles(D),b=new h.SpreadsheetSkeleton(new c.Worksheet(r,V,T),V,P,T,this._localeService,this._contextService),{rowTotalHeight:C,columnTotalWidth:S,rowHeaderWidth:m,columnHeaderHeight:E}=b,x=S+V.rowHeader.width||0,H=C+V.columnHeader.height||0,A=new h.SceneViewer("spreadInSlideSceneViewer"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0}),z=new h.Scene("spreadInSlideScene"+r,A,{width:x,height:H});this._updateViewport(r,m,E,z,e);const L=new h.Spreadsheet("testSheetViewer",b,!1),$=new h.SpreadsheetRowHeader("spreadInSlideRow",b),K=new h.SpreadsheetColumnHeader("spreadInSlideColumn",b),k=new h.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:m,height:E,fill:h.getColor([248,249,250]),stroke:h.getColor([217,217,217]),strokeWidth:1});return L.zIndex=10,z.addObjects([L],1),z.addObjects([$,K,k],2),A}_updateViewport(i,e,r,t,n){if(n==null)return;const s=e*t.scaleX,l=r*t.scaleY,o=new h.Viewport("spreadInSlideViewMain"+i,t,{left:s,top:l,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),d=new h.Viewport("spreadInSlideViewTop"+i,t,{left:s,height:l,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),p=new h.Viewport("spreadInSlideViewLeft"+i,t,{left:0,bottom:0,top:l,width:s,isRelativeY:!0,isWheelPreventDefaultX:!0});new h.Viewport("spreadInSlideViewLeftTop"+i,t,{left:0,top:0,width:s,height:l,isWheelPreventDefaultX:!0}),o.onScrollAfter$.subscribeEvent(w=>{const{scrollX:u,scrollY:v,viewportScrollX:g,viewportScrollY:f}=w;d.updateScroll({scrollX:u,viewportScrollX:g}),p.updateScroll({scrollY:v,viewportScrollY:f})}),t.attachControl(),new h.ScrollBar(o,{mainScene:n}),t.onMouseWheel$.subscribeEvent((w,u)=>{const v=w;if(v.ctrlKey){const g=Math.abs(v.deltaX);let f=g<40?.05:g<80?.02:.01;f*=v.deltaY>0?-1:1,t.scaleX<1&&(f/=2),t.scaleX+f>4?t.scale(4,4):t.scaleX+f<.1?t.scale(.1,.1):(t.scaleBy(f,f),v.preventDefault())}else o.onMouseWheel(v,u)})}};ie=Ce([ae(0,c.Inject(c.LocaleService)),ae(1,c.IContextService)],ie);class Ve{constructor(){_(this,"zIndex",4)}create(i){return i.createInstance(ie)}}N.add(new Ve);var xe=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,Le=(a,i,e,r)=>{for(var t=r>1?void 0:r?Me(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&xe(i,e,t),t},Ue=(a,i)=>(e,r)=>i(e,r,a);let F=class{constructor(a){_(this,"_adaptors",[]);this._injector=a,this._adaptorLoader()}convertToRenderObjects(a,i){const e=Object.keys(a),r=[];return e.forEach(t=>{const n=a[t],s=this._executor(n,i);s!=null&&r.push(s)}),r}_executor(a,i){var t;const{id:e,type:r}=a;for(const n of this._adaptors){const s=(t=n.check(r))==null?void 0:t.convert(a,i);if(s!=null)return s}}_adaptorLoader(){N.getData().sort(c.sortRules).forEach(a=>{this._adaptors.push(a.create(this._injector))})}};F=Le([Ue(0,c.Inject(c.Injector))],F);var Xe=Object.defineProperty,ze=Object.getOwnPropertyDescriptor,$e=(a,i,e,r)=>{for(var t=r>1?void 0:r?ze(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Xe(i,e,t),t},ne=(a,i)=>(e,r)=>i(e,r,a),ce=(a=>(a.COMPONENT="__slideRender__",a.SCENE="__mainScene__",a.VIEW="__mainView__",a))(ce||{});I.CanvasView=class extends c.RxDisposable{constructor(e,r,t){super();_(this,"_objectProvider",null);_(this,"_activePageId","");_(this,"activePageId$",new Q.Subject);_(this,"_refreshThumb",c.debounce(()=>{this.createThumbs()},300));this._univerInstanceService=e,this._injector=r,this._renderManagerService=t,this._initializeDependencies(this._injector),this._initialize()}_initialize(){this._renderManagerService.createRender$.pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e)}),this._univerInstanceService.getCurrentTypeOfUnit$(c.UniverInstanceType.UNIVER_SLIDE).pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e==null?void 0:e.getUnitId())}),this._univerInstanceService.getAllUnitsForType(c.UniverInstanceType.UNIVER_SLIDE).forEach(e=>{this._create(e.getUnitId())})}activePage(e){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE);let t;if(e)t=r.getPage(e);else{const o=r.getPages(),d=r.getPageOrder();if(d==null||o==null)return;t=o[d[0]],e=t.id}const n=this._currentRender();if(t==null||n==null||n.mainComponent==null)return;const{id:s}=t,l=n.mainComponent;if(this._activePageId=e,this.activePageId$.next(e),l!=null&&l.hasPage(s)){l.changePage(s);return}this._createScene(s,t)}_scrollToCenter(){var d;const e=(d=this._currentRender())==null?void 0:d.scene,r=e==null?void 0:e.getViewport("__mainView__"),t=this._getCenterPositionViewPort(e);if(!r||!t)return;const{left:n,top:s}=t,{x:l,y:o}=r.transViewportScroll2ScrollValue(n,s);r.scrollTo({x:l,y:o})}_create(e){e==null||this._univerInstanceService.getUnit(e,c.UniverInstanceType.UNIVER_SLIDE)==null||this._renderManagerService.has(e)||this._addNewRender(e)}_currentRender(){const e=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE);return this._renderManagerService.getRenderById(e.getUnitId())}_addNewRender(e){const r=this._univerInstanceService.getUnit(e,c.UniverInstanceType.UNIVER_SLIDE);if(r==null)return;this._renderManagerService.createRender(e);const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{scene:n,engine:s}=t,l=s.onTransformChange$.subscribeEvent(()=>{this._scrollToCenter(),l==null||l.unsubscribe()});s.onTransformChange$.subscribeEvent(()=>{setTimeout(()=>{this.createThumbs()},300)}),n.resize(2400,1800);const o=new h.Viewport("__mainView__",n,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});n.attachControl(),n.onMouseWheel$.subscribeEvent((p,w)=>{const u=p;if(u.ctrlKey){const v=Math.abs(u.deltaX);let g=v<40?.2:v<80?.4:.2;g*=u.deltaY>0?-1:1,n.scaleX<1&&(g/=2),n.scaleX+g>4?n.scale(4,4):n.scaleX+g<.1?n.scale(.1,.1):(u.deltaY>0,u.preventDefault())}else o.onMouseWheel(u,w)}),n.onFileLoaded$.subscribeEvent(()=>{this._refreshThumb()}),h.ScrollBar.attachTo(o),this._renderManagerService.setCurrent(e);const d=this._createSlide(n);t.mainComponent=d,t.components.set("__slideRender__",d),this._createSlidePages(r,d),s.runRenderLoop(()=>{n.render()})}_createSlide(e){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE),{width:t,height:n}=e,s=r.getPageSize(),{width:l=100,height:o=100}=s,d=new h.Slide("__slideRender__",{left:(t-l)/2,top:(n-o)/2,width:l,height:o,zIndex:10});return d.enableNav(),d.enableSelectedClipElement(),e.addObject(d),d}_addBackgroundRect(e,r){const n=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE).getPageSize(),{width:s=0,height:l=0}=n,o=new h.Rect("canvas",{left:0,top:0,width:s,height:l,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:c.getColorStyle(r)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});e.addObject(o,0)}_getCenterPositionViewPort(e){if(!e)return{left:0,top:0};const{width:r,height:t}=e,n=e.getEngine(),s=(n==null?void 0:n.width)||0,l=(n==null?void 0:n.height)||0;return{left:(r-s)/2,top:(t-l)/2}}_thumbSceneRender(e,r){const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{engine:n}=t;if(n==null)return;const{width:s,height:l}=r,{width:o=s,height:d=l}=n,p=n.getCanvas().getContext();r.renderToThumb(p,e,o/s,d/l)}_createSlidePages(e,r){const t=e.getPages(),n=e.getPageOrder();if(!(!t||!n)&&n.length!==0){for(let s=0,l=n.length;s<l;s++){const o=n[s];this._createScene(o,t[o]),this._createThumb(o)}this._activePageId=n[0],r.activeFirstPage()}}createThumbs(){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE).getPageOrder(),t=this._currentRender();if(!(!r||!t)&&r.length!==0)for(let n=0,s=r.length;n<s;n++){const l=r[n];this._thumbSceneRender(l,t.mainComponent)}}_createThumb(e){this._renderManagerService.createRender(e)}_createScene(e,r){const t=this._currentRender();if(!t||!this._objectProvider)return;const{scene:n,mainComponent:s}=t,l=s,{width:o,height:d}=l,p=new h.Scene(e,l,{width:o,height:d});new h.Viewport(`PageViewer_${e}`,p,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:u,pageBackgroundFill:v}=r,g=this._objectProvider.convertToRenderObjects(u,n);if(!g||!l)return;this._addBackgroundRect(p,v),p.addObjects(g),g.forEach(j=>{p.attachTransformerTo(j)});const f=p.getTransformer();return f==null||f.changeEnd$.subscribe(()=>{this._thumbSceneRender(this._activePageId,l)}),f==null||f.clearControl$.subscribe(()=>{this._thumbSceneRender(this._activePageId,l)}),l.addPage(p),p}_initializeDependencies(e){this._objectProvider=e.createInstance(F)}},I.CanvasView=$e([c.OnLifecycle(c.LifecycleStages.Ready,I.CanvasView),ne(0,c.IUniverInstanceService),ne(1,c.Inject(c.Injector)),ne(2,h.IRenderManagerService)],I.CanvasView);var Re=Object.defineProperty,Ne=Object.getOwnPropertyDescriptor,Ae=(a,i,e,r)=>{for(var t=r>1?void 0:r?Ne(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Re(i,e,t),t},We=(a,i)=>(e,r)=>i(e,r,a);const Ye={},He="slides";I.UniverSlidesPlugin=(B=class extends c.Plugin{constructor(e={},r){super();_(this,"_config");_(this,"_canvasEngine",null);_(this,"_canvasView",null);this._injector=r,this._config=Object.assign(Ye,e),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(h.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}getCanvasView(){return this._canvasView}_initializeDependencies(e){[[I.CanvasView]].forEach(t=>{e.add(t)})}},_(B,"pluginName",He),_(B,"type",c.UniverInstanceType.UNIVER_SLIDE),B),I.UniverSlidesPlugin=Ae([We(1,c.Inject(c.Injector))],I.UniverSlidesPlugin),I.SLIDE_KEY=ce,Object.defineProperty(I,Symbol.toStringTag,{value:"Module"})});
1
+ (function(I,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/engine-render"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render","rxjs"],c):(I=typeof globalThis<"u"?globalThis:I||self,c(I.UniverSlides={},I.UniverCore,I.UniverEngineRender,I.rxjs))})(this,function(I,c,h,Q){"use strict";var ke=Object.defineProperty;var qe=(I,c,h)=>c in I?ke(I,c,{enumerable:!0,configurable:!0,writable:!0,value:h}):I[c]=h;var _=(I,c,h)=>qe(I,typeof c!="symbol"?c+"":c,h);var B;class Y{constructor(){_(this,"zIndex",0);_(this,"viewKey",null)}check(i){if(i===this.viewKey)return this}create(i){}}const N=c.Registry.create();var oe=Object.defineProperty,he=Object.getOwnPropertyDescriptor,de=(a,i,e,r)=>{for(var t=r>1?void 0:r?he(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&oe(i,e,t),t},ue=(a,i)=>(e,r)=>i(e,r,a);let ee=class extends Y{constructor(i){super();_(this,"zIndex",5);_(this,"viewKey",c.PageElementType.DOCUMENT);_(this,"_liquid",new h.Liquid);this._localeService=i}check(i){if(i===this.viewKey)return this}convert(i,e){var k,le;const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:C,document:D}=i;if(D==null)return;const y=new c.DocumentDataModel(D),P=new h.DocumentViewModel(y),T=h.DocumentSkeleton.create(P,this._localeService),b=new h.Documents("__DocsRender__",T);T.calculate();const V=new h.SceneViewer("__DocsViewer__"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f}),S=new h.Scene("__DocsScene__"+r,V),m=new h.Viewport("__DocsViewPort_"+r,S,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});S.attachControl(),S.onMouseWheel$.subscribeEvent((U,W)=>{const O=U;if(O.ctrlKey){const R=Math.abs(O.deltaX);let M=R<40?.2:R<80?.4:.2;M*=O.deltaY>0?-1:1,S.scaleX<1&&(M/=2),S.scaleX+M>4?S.scale(4,4):S.scaleX+M<.1?S.scale(.1,.1):(O.deltaY>0,O.preventDefault())}else m.onMouseWheel(O,W)}),new h.ScrollBar(m,{mainScene:e}),S.addObject(b);const E=T.getActualSize();b.resize(E.actualWidth,E.actualHeight),S.resize(E.actualWidth,E.actualHeight+200);const x=(k=b.getSkeleton())==null?void 0:k.getPageSize();b.pageRender$.subscribe(U=>{const{page:W,pageLeft:O,pageTop:R,ctx:M}=U,{width:q,height:G,marginBottom:se,marginLeft:X,marginRight:Z,marginTop:J}=W;M.save(),M.translate(O-.5,R-.5),h.Rect.drawWith(M,{width:(x==null?void 0:x.width)||q,height:(x==null?void 0:x.height)||G,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:"rgba(255,255,255, 1)",zIndex:3}),M.restore()});const{left:H,top:A}=b,z=T.getSkeletonData();if(z==null)return;const{pages:L}=z,$=[],K=new Map;this._recalculateSizeBySkeleton(b,S,T);for(let U=0,W=L.length;U<W;U++){const O=L[U],{skeDrawings:R,marginLeft:M,marginTop:q,pageWidth:G,pageHeight:se}=O;this._liquid.translatePagePadding(O),R.forEach(X=>{const{aLeft:Z,aTop:J,height:Fe,width:Be,drawingOrigin:Ge}=X,Ke=new h.Image(X.drawingId,{left:Z+H+this._liquid.x,top:J+A+this._liquid.y,width:Be,height:Fe,zIndex:11});K.set(X.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),$.push(Ke)}),this._liquid.translatePage(O,b.pageLayoutType,b.pageMarginLeft,b.pageMarginTop)}return S.addObjects($),$.forEach(U=>{S.attachTransformerTo(U)}),(le=S.getTransformer())==null||le.changing$.subscribe(U=>{const{objects:W}=U;W.forEach(O=>{const{oKey:R,left:M,top:q,height:G,width:se}=O,X=K.get(R),Z=(X==null?void 0:X.marginLeft)||0,J=(X==null?void 0:X.marginTop)||0;T==null||T.getViewModel().getDataModel().updateDrawing(R,{left:M-H-Z,top:q-A-J,height:G,width:se})}),T==null||T.calculate()}),this._calculatePagePosition(b,S,m),V}_recalculateSizeBySkeleton(i,e,r){var l;const t=(l=r.getSkeletonData())==null?void 0:l.pages;if(t==null)return;let n=0,s=0;for(let o=0,d=t.length;o<d;o++){const p=t[o],{pageWidth:w,pageHeight:u}=p;i.pageLayoutType===h.PageLayoutType.VERTICAL?(s+=u,s+=i.pageMarginTop,o===d-1&&(s+=i.pageMarginTop),n=Math.max(n,w)):i.pageLayoutType===h.PageLayoutType.HORIZONTAL&&(n+=w,o!==d-1&&(n+=i.pageMarginLeft),s=Math.max(s,u))}i.resize(n,s),e.resize(n,s)}_calculatePagePosition(i,e,r,t=1){const n=e==null?void 0:e.getParent(),{width:s,height:l,pageMarginLeft:o,pageMarginTop:d}=i;if(n==null||s===Number.POSITIVE_INFINITY||l===Number.POSITIVE_INFINITY)return;const{width:p,height:w}=n;let u=0,v=0,g=0,f=0,j=Number.POSITIVE_INFINITY;if(p>(s+o*2)*t?(u=p/2-s*t/2,u/=t,g=(p-o*2)/t,j=0):(u=o,g=s+o*2,j=(g-p/t)/2),w>l?(v=w/2-l/2,f=(w-d*2)/t):(v=d,f=l+d*2),e.resize(g,f+200),i.translate(u,v),j!==Number.POSITIVE_INFINITY&&r!=null){const C=r.transScroll2ViewportScrollValue(j,0).x;r.scrollToBarPos({x:C})}return this}};ee=de([ue(0,c.Inject(c.LocaleService))],ee);class pe{constructor(){_(this,"zIndex",5)}create(i){return i.createInstance(ee)}}N.add(new pe);class ge extends Y{constructor(){super(...arguments);_(this,"zIndex",1);_(this,"viewKey",c.PageElementType.IMAGE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:C,image:D={}}=e,{imageProperties:y,placeholder:P,link:T}=D,b=(y==null?void 0:y.contentUrl)||"";return new h.Image(r,{url:b,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0})}}class _e{constructor(){_(this,"zIndex",4)}create(i){return i.createInstance(ge)}}N.add(new _e);var ve=Object.defineProperty,fe=Object.getOwnPropertyDescriptor,we=(a,i,e,r)=>{for(var t=r>1?void 0:r?fe(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&ve(i,e,t),t},Se=(a,i)=>(e,r)=>i(e,r,a);let te=class extends Y{constructor(i){super();_(this,"zIndex",2);_(this,"viewKey",c.PageElementType.TEXT);this._localeService=i}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:C,richText:D={}}=i,{text:y,ff:P,fs:T,it:b,bl:V,ul:S,st:m,ol:E,bg:x,bd:H,cl:A,rich:z}=D;let L={top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0},$=!1;if(y!=null?(L={...L,text:y,ff:P,fs:T,it:b,bl:V,ul:S,st:m,ol:E,bg:x,bd:H,cl:A},$=!0):z!=null&&(L={...L,richText:z},$=!0),$!==!1)return new h.RichText(this._localeService,r,L)}};te=we([Se(0,c.Inject(c.LocaleService))],te);class Ie{constructor(){_(this,"zIndex",0)}create(i){return i.createInstance(te)}}N.add(new Ie);class Pe extends Y{constructor(){super(...arguments);_(this,"zIndex",2);_(this,"viewKey",c.PageElementType.SHAPE)}check(e){if(e===this.viewKey)return this}convert(e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:C}=e,{shapeType:D,text:y,shapeProperties:P,placeholder:T,link:b}=e.shape||{},V=P==null?"":c.getColorStyle(P.shapeBackgroundFill)||"rgba(255,255,255,1)",S=P==null?void 0:P.outline,m={};if(S){const{outlineFill:E,weight:x}=S;m.strokeWidth=x,m.stroke=c.getColorStyle(E)||"rgba(0,0,0,1)"}if(D===c.BasicShapes.Rect)return new h.Rect(r,{fill:V,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0,...m});if(D===c.BasicShapes.RoundRect){const E=(P==null?void 0:P.radius)||0;return new h.Rect(r,{fill:V,top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0,radius:E,...m})}}}class be{constructor(){_(this,"zIndex",2)}create(i){return i.createInstance(Pe)}}N.add(new be);var Te=Object.defineProperty,me=Object.getOwnPropertyDescriptor,ye=(a,i,e,r)=>{for(var t=r>1?void 0:r?me(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Te(i,e,t),t},Ee=(a,i)=>(e,r)=>i(e,r,a);let re=class extends Y{constructor(i){super();_(this,"zIndex",6);_(this,"viewKey",c.PageElementType.SLIDE);_(this,"_ObjectProvider",null);this._injector=i}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,title:j,description:C,slide:D}=i;if(D==null)return;const y=new c.SlideDataModel(D),P=new h.Slide("__SLIDERender__"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0});P.enableNav(),P.enableSelectedClipElement();const T=y.getPageOrder(),b=y.getPages();if(!T||!b)return P;this._ObjectProvider=new F(this._injector);for(let V=0,S=T.length;V<S;V++){const m=b[T[V]],{id:E}=m;P.addPage(this._createScene(E,P,m,e,y))}return P.activeFirstPage(),P}_createScene(i,e,r,t,n){var v;const{width:s,height:l}=e,o=new h.Scene(i,e,{width:s,height:l});new h.Viewport(`PageViewer_${i}`,o,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:p,pageBackgroundFill:w}=r,u=(v=this._ObjectProvider)==null?void 0:v.convertToRenderObjects(p,t);return this._addBackgroundRect(o,w,n),o.addObjects(u),u==null||u.forEach(g=>{o.attachTransformerTo(g)}),o}_addBackgroundRect(i,e,r){const t=r.getPageSize(),{width:n=0,height:s=0}=t,l=new h.Rect("canvas",{left:0,top:0,width:n,height:s,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:c.getColorStyle(e)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});i.addObject(l,0)}};re=ye([Ee(0,c.Inject(c.Injector))],re);class je{constructor(){_(this,"zIndex",6)}create(i){return i.createInstance(re)}}N.add(new je);var De=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,Ve=(a,i,e,r)=>{for(var t=r>1?void 0:r?Oe(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&De(i,e,t),t},ae=(a,i)=>(e,r)=>i(e,r,a);let ie=class extends Y{constructor(i,e){super();_(this,"zIndex",4);_(this,"viewKey",c.PageElementType.SPREADSHEET);this._localeService=i,this._contextService=e}check(i){if(i===this.viewKey)return this}convert(i,e){const{id:r,zIndex:t,left:n=0,top:s=0,width:l,height:o,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,spreadsheet:j}=i;if(j==null)return;const{worksheet:C,styles:D}=j,{cellData:y}=C,P=new c.ObjectMatrix(y),T=new c.Styles(D),b=new h.SpreadsheetSkeleton(new c.Worksheet(r,C,T),C,P,T,this._localeService,this._contextService),{rowTotalHeight:V,columnTotalWidth:S,rowHeaderWidth:m,columnHeaderHeight:E}=b,x=S+C.rowHeader.width||0,H=V+C.columnHeader.height||0,A=new h.SceneViewer("spreadInSlideSceneViewer"+r,{top:s,left:n,width:l,height:o,zIndex:t,angle:d,scaleX:p,scaleY:w,skewX:u,skewY:v,flipX:g,flipY:f,forceRender:!0}),z=new h.Scene("spreadInSlideScene"+r,A,{width:x,height:H});this._updateViewport(r,m,E,z,e);const L=new h.Spreadsheet("testSheetViewer",b,!1),$=new h.SpreadsheetRowHeader("spreadInSlideRow",b),K=new h.SpreadsheetColumnHeader("spreadInSlideColumn",b),k=new h.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:m,height:E,fill:h.getColor([248,249,250]),stroke:h.getColor([217,217,217]),strokeWidth:1});return L.zIndex=10,z.addObjects([L],1),z.addObjects([$,K,k],2),A}_updateViewport(i,e,r,t,n){if(n==null)return;const s=e*t.scaleX,l=r*t.scaleY,o=new h.Viewport("spreadInSlideViewMain"+i,t,{left:s,top:l,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),d=new h.Viewport("spreadInSlideViewTop"+i,t,{left:s,height:l,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),p=new h.Viewport("spreadInSlideViewLeft"+i,t,{left:0,bottom:0,top:l,width:s,isRelativeY:!0,isWheelPreventDefaultX:!0});new h.Viewport("spreadInSlideViewLeftTop"+i,t,{left:0,top:0,width:s,height:l,isWheelPreventDefaultX:!0}),o.onScrollAfter$.subscribeEvent(w=>{const{scrollX:u,scrollY:v,viewportScrollX:g,viewportScrollY:f}=w;d.updateScrollVal({scrollX:u,viewportScrollX:g}),p.updateScrollVal({scrollY:v,viewportScrollY:f})}),t.attachControl(),new h.ScrollBar(o,{mainScene:n}),t.onMouseWheel$.subscribeEvent((w,u)=>{const v=w;if(v.ctrlKey){const g=Math.abs(v.deltaX);let f=g<40?.05:g<80?.02:.01;f*=v.deltaY>0?-1:1,t.scaleX<1&&(f/=2),t.scaleX+f>4?t.scale(4,4):t.scaleX+f<.1?t.scale(.1,.1):(t.scaleBy(f,f),v.preventDefault())}else o.onMouseWheel(v,u)})}};ie=Ve([ae(0,c.Inject(c.LocaleService)),ae(1,c.IContextService)],ie);class Ce{constructor(){_(this,"zIndex",4)}create(i){return i.createInstance(ie)}}N.add(new Ce);var xe=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,Le=(a,i,e,r)=>{for(var t=r>1?void 0:r?Me(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&xe(i,e,t),t},Ue=(a,i)=>(e,r)=>i(e,r,a);let F=class{constructor(a){_(this,"_adaptors",[]);this._injector=a,this._adaptorLoader()}convertToRenderObjects(a,i){const e=Object.keys(a),r=[];return e.forEach(t=>{const n=a[t],s=this._executor(n,i);s!=null&&r.push(s)}),r}_executor(a,i){var t;const{id:e,type:r}=a;for(const n of this._adaptors){const s=(t=n.check(r))==null?void 0:t.convert(a,i);if(s!=null)return s}}_adaptorLoader(){N.getData().sort(c.sortRules).forEach(a=>{this._adaptors.push(a.create(this._injector))})}};F=Le([Ue(0,c.Inject(c.Injector))],F);var Xe=Object.defineProperty,ze=Object.getOwnPropertyDescriptor,$e=(a,i,e,r)=>{for(var t=r>1?void 0:r?ze(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Xe(i,e,t),t},ne=(a,i)=>(e,r)=>i(e,r,a),ce=(a=>(a.COMPONENT="__slideRender__",a.SCENE="__mainScene__",a.VIEW="__mainView__",a))(ce||{});I.CanvasView=class extends c.RxDisposable{constructor(e,r,t){super();_(this,"_objectProvider",null);_(this,"_activePageId","");_(this,"activePageId$",new Q.Subject);_(this,"_refreshThumb",c.debounce(()=>{this.createThumbs()},300));this._univerInstanceService=e,this._injector=r,this._renderManagerService=t,this._initializeDependencies(this._injector),this._initialize()}_initialize(){this._renderManagerService.createRender$.pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e)}),this._univerInstanceService.getCurrentTypeOfUnit$(c.UniverInstanceType.UNIVER_SLIDE).pipe(Q.takeUntil(this.dispose$)).subscribe(e=>{this._create(e==null?void 0:e.getUnitId())}),this._univerInstanceService.getAllUnitsForType(c.UniverInstanceType.UNIVER_SLIDE).forEach(e=>{this._create(e.getUnitId())})}activePage(e){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE);let t;if(e)t=r.getPage(e);else{const o=r.getPages(),d=r.getPageOrder();if(d==null||o==null)return;t=o[d[0]],e=t.id}const n=this._currentRender();if(t==null||n==null||n.mainComponent==null)return;const{id:s}=t,l=n.mainComponent;if(this._activePageId=e,this.activePageId$.next(e),l!=null&&l.hasPage(s)){l.changePage(s);return}this._createScene(s,t)}_scrollToCenter(){var d;const e=(d=this._currentRender())==null?void 0:d.scene,r=e==null?void 0:e.getViewport("__mainView__"),t=this._getCenterPositionViewPort(e);if(!r||!t)return;const{left:n,top:s}=t,{x:l,y:o}=r.transViewportScroll2ScrollValue(n,s);r.scrollToBarPos({x:l,y:o})}_create(e){e==null||this._univerInstanceService.getUnit(e,c.UniverInstanceType.UNIVER_SLIDE)==null||this._renderManagerService.has(e)||this._addNewRender(e)}_currentRender(){const e=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE);return this._renderManagerService.getRenderById(e.getUnitId())}_addNewRender(e){const r=this._univerInstanceService.getUnit(e,c.UniverInstanceType.UNIVER_SLIDE);if(r==null)return;this._renderManagerService.createRender(e);const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{scene:n,engine:s}=t,l=s.onTransformChange$.subscribeEvent(()=>{this._scrollToCenter(),l==null||l.unsubscribe()});s.onTransformChange$.subscribeEvent(()=>{setTimeout(()=>{this.createThumbs()},300)}),n.resize(2400,1800);const o=new h.Viewport("__mainView__",n,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});n.attachControl(),n.onMouseWheel$.subscribeEvent((p,w)=>{const u=p;if(u.ctrlKey){const v=Math.abs(u.deltaX);let g=v<40?.2:v<80?.4:.2;g*=u.deltaY>0?-1:1,n.scaleX<1&&(g/=2),n.scaleX+g>4?n.scale(4,4):n.scaleX+g<.1?n.scale(.1,.1):(u.deltaY>0,u.preventDefault())}else o.onMouseWheel(u,w)}),n.onFileLoaded$.subscribeEvent(()=>{this._refreshThumb()}),h.ScrollBar.attachTo(o),this._renderManagerService.setCurrent(e);const d=this._createSlide(n);t.mainComponent=d,t.components.set("__slideRender__",d),this._createSlidePages(r,d),s.runRenderLoop(()=>{n.render()})}_createSlide(e){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE),{width:t,height:n}=e,s=r.getPageSize(),{width:l=100,height:o=100}=s,d=new h.Slide("__slideRender__",{left:(t-l)/2,top:(n-o)/2,width:l,height:o,zIndex:10});return d.enableNav(),d.enableSelectedClipElement(),e.addObject(d),d}_addBackgroundRect(e,r){const n=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE).getPageSize(),{width:s=0,height:l=0}=n,o=new h.Rect("canvas",{left:0,top:0,width:s,height:l,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:c.getColorStyle(r)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});e.addObject(o,0)}_getCenterPositionViewPort(e){if(!e)return{left:0,top:0};const{width:r,height:t}=e,n=e.getEngine(),s=(n==null?void 0:n.width)||0,l=(n==null?void 0:n.height)||0;return{left:(r-s)/2,top:(t-l)/2}}_thumbSceneRender(e,r){const t=this._renderManagerService.getRenderById(e);if(t==null)return;const{engine:n}=t;if(n==null)return;const{width:s,height:l}=r,{width:o=s,height:d=l}=n,p=n.getCanvas().getContext();r.renderToThumb(p,e,o/s,d/l)}_createSlidePages(e,r){const t=e.getPages(),n=e.getPageOrder();if(!(!t||!n)&&n.length!==0){for(let s=0,l=n.length;s<l;s++){const o=n[s];this._createScene(o,t[o]),this._createThumb(o)}this._activePageId=n[0],r.activeFirstPage()}}createThumbs(){const r=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE).getPageOrder(),t=this._currentRender();if(!(!r||!t)&&r.length!==0)for(let n=0,s=r.length;n<s;n++){const l=r[n];this._thumbSceneRender(l,t.mainComponent)}}_createThumb(e){this._renderManagerService.createRender(e)}_createScene(e,r){const t=this._currentRender();if(!t||!this._objectProvider)return;const{scene:n,mainComponent:s}=t,l=s,{width:o,height:d}=l,p=new h.Scene(e,l,{width:o,height:d});new h.Viewport(`PageViewer_${e}`,p,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements:u,pageBackgroundFill:v}=r,g=this._objectProvider.convertToRenderObjects(u,n);if(!g||!l)return;this._addBackgroundRect(p,v),p.addObjects(g),g.forEach(j=>{p.attachTransformerTo(j)});const f=p.getTransformer();return f==null||f.changeEnd$.subscribe(()=>{this._thumbSceneRender(this._activePageId,l)}),f==null||f.clearControl$.subscribe(()=>{this._thumbSceneRender(this._activePageId,l)}),l.addPage(p),p}_initializeDependencies(e){this._objectProvider=e.createInstance(F)}},I.CanvasView=$e([c.OnLifecycle(c.LifecycleStages.Ready,I.CanvasView),ne(0,c.IUniverInstanceService),ne(1,c.Inject(c.Injector)),ne(2,h.IRenderManagerService)],I.CanvasView);var Re=Object.defineProperty,Ne=Object.getOwnPropertyDescriptor,Ae=(a,i,e,r)=>{for(var t=r>1?void 0:r?Ne(i,e):i,n=a.length-1,s;n>=0;n--)(s=a[n])&&(t=(r?s(i,e,t):s(t))||t);return r&&t&&Re(i,e,t),t},We=(a,i)=>(e,r)=>i(e,r,a);const Ye={},He="slides";I.UniverSlidesPlugin=(B=class extends c.Plugin{constructor(e={},r){super();_(this,"_config");_(this,"_canvasEngine",null);_(this,"_canvasView",null);this._injector=r,this._config=Object.assign(Ye,e),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(h.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}getCanvasView(){return this._canvasView}_initializeDependencies(e){[[I.CanvasView]].forEach(t=>{e.add(t)})}},_(B,"pluginName",He),_(B,"type",c.UniverInstanceType.UNIVER_SLIDE),B),I.UniverSlidesPlugin=Ae([We(1,c.Inject(c.Injector))],I.UniverSlidesPlugin),I.SLIDE_KEY=ce,Object.defineProperty(I,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/slides",
3
- "version": "0.2.4-alpha.0",
3
+ "version": "0.2.5",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -48,17 +48,17 @@
48
48
  ],
49
49
  "peerDependencies": {
50
50
  "rxjs": ">=7.0.0",
51
- "@univerjs/core": "0.2.4-alpha.0",
52
- "@univerjs/engine-render": "0.2.4-alpha.0"
51
+ "@univerjs/core": "0.2.5",
52
+ "@univerjs/engine-render": "0.2.5"
53
53
  },
54
54
  "devDependencies": {
55
55
  "rxjs": "^7.8.1",
56
56
  "typescript": "^5.5.3",
57
57
  "vite": "^5.3.4",
58
58
  "vitest": "^2.0.3",
59
- "@univerjs/core": "0.2.4-alpha.0",
60
- "@univerjs/shared": "0.2.4-alpha.0",
61
- "@univerjs/engine-render": "0.2.4-alpha.0"
59
+ "@univerjs/core": "0.2.5",
60
+ "@univerjs/engine-render": "0.2.5",
61
+ "@univerjs/shared": "0.2.5"
62
62
  },
63
63
  "univerSpace": {
64
64
  ".": {