@univerjs/slides 0.2.11 → 0.2.13

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 __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),engineRender=require("@univerjs/engine-render");var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");const DEFAULT_SLIDE_PLUGIN_DATA={},PLUGIN_NAME="slides";var _a;exports.UniverSlidesPlugin=(_a=class extends core.Plugin{constructor(config={},_injector,_renderManagerService){super();__publicField(this,"_config");__publicField(this,"_canvasEngine",null);this._injector=_injector,this._renderManagerService=_renderManagerService,this._config=Object.assign(DEFAULT_SLIDE_PLUGIN_DATA,config),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}onReady(){}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(engineRender.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}_initializeDependencies(slideInjector){[].forEach(d=>{slideInjector.add(d)})}},__name(_a,"UniverSlidesPlugin"),__publicField(_a,"pluginName",PLUGIN_NAME),__publicField(_a,"type",core.UniverInstanceType.UNIVER_SLIDE),_a);exports.UniverSlidesPlugin=__decorateClass$5([__decorateParam$5(1,core.Inject(core.Injector)),__decorateParam$5(2,engineRender.IRenderManagerService)],exports.UniverSlidesPlugin);const _ObjectAdaptor=class _ObjectAdaptor{constructor(){__publicField(this,"zIndex",0);__publicField(this,"viewKey",null)}check(type){if(type===this.viewKey)return this}create(injector){}};__name(_ObjectAdaptor,"ObjectAdaptor");let ObjectAdaptor=_ObjectAdaptor;const CanvasObjectProviderRegistry=core.Registry.create();var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4"),_a2;let DocsAdaptor=(_a2=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",5);__publicField(this,"viewKey",core.PageElementType.DOCUMENT);__publicField(this,"_liquid",new engineRender.Liquid);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){var _a7,_b;const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,document:documentData}=pageElement;if(documentData==null)return;const docDataModel=new core.DocumentDataModel(documentData),docViewModel=new engineRender.DocumentViewModel(docDataModel),documentSkeleton=engineRender.DocumentSkeleton.create(docViewModel,this._localeService),documents=new engineRender.Documents("__DocsRender__",documentSkeleton);documentSkeleton.calculate();const sv=new engineRender.SceneViewer("__DocsViewer__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY}),scene=new engineRender.Scene("__DocsScene__"+id,sv),viewMain=new engineRender.Viewport("__DocsViewPort_"+id,scene,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});scene.attachControl(),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.2:deltaFactor<80?.4:.2;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(e.deltaY>0,e.preventDefault())}else viewMain.onMouseWheel(e,state)}),new engineRender.ScrollBar(viewMain,{mainScene}),scene.addObject(documents);const size=documentSkeleton.getActualSize();documents.resize(size.actualWidth,size.actualHeight),scene.resize(size.actualWidth,size.actualHeight+200),(_a7=documents.getSkeleton())==null||_a7.getPageSize(),documents.pageRender$.subscribe(config=>{const{page,pageLeft,pageTop,ctx}=config;ctx.save(),ctx.translate(pageLeft-.5,pageTop-.5),ctx.restore()});const{left:docsLeft,top:docsTop}=documents,skeletonData=documentSkeleton.getSkeletonData();if(skeletonData==null)return;const{pages}=skeletonData,objectList=[],pageMarginCache=new Map;this._recalculateSizeBySkeleton(documents,scene,documentSkeleton);for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{skeDrawings,marginLeft,marginTop,pageWidth,pageHeight}=page;this._liquid.translatePagePadding(page),skeDrawings.forEach(drawing=>{const{aLeft,aTop,height:height2,width:width2,drawingOrigin}=drawing,rect=new engineRender.Image(drawing.drawingId,{left:aLeft+docsLeft+this._liquid.x,top:aTop+docsTop+this._liquid.y,width:width2,height:height2,zIndex:11});pageMarginCache.set(drawing.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),objectList.push(rect)}),this._liquid.translatePage(page,documents.pageLayoutType,documents.pageMarginLeft,documents.pageMarginTop)}return scene.addObjects(objectList),objectList.forEach(object=>{scene.attachTransformerTo(object)}),(_b=scene.getTransformer())==null||_b.changing$.subscribe(state=>{const{objects}=state;objects.forEach(object=>{const{oKey,left:left2,top:top2,height:height2,width:width2}=object,cache=pageMarginCache.get(oKey),marginLeft=(cache==null?void 0:cache.marginLeft)||0,marginTop=(cache==null?void 0:cache.marginTop)||0;documentSkeleton==null||documentSkeleton.getViewModel().getDataModel().updateDrawing(oKey,{left:left2-docsLeft-marginLeft,top:top2-docsTop-marginTop,height:height2,width:width2})}),documentSkeleton==null||documentSkeleton.calculate()}),this._calculatePagePosition(documents,scene,viewMain),sv}_recalculateSizeBySkeleton(docsComponent,scene,skeleton){var _a7;const pages=(_a7=skeleton.getSkeletonData())==null?void 0:_a7.pages;if(pages==null)return;let width=0,height=0;for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{pageWidth,pageHeight}=page;docsComponent.pageLayoutType===engineRender.PageLayoutType.VERTICAL?(height+=pageHeight,height+=docsComponent.pageMarginTop,i===len-1&&(height+=docsComponent.pageMarginTop),width=Math.max(width,pageWidth)):docsComponent.pageLayoutType===engineRender.PageLayoutType.HORIZONTAL&&(width+=pageWidth,i!==len-1&&(width+=docsComponent.pageMarginLeft),height=Math.max(height,pageHeight))}docsComponent.resize(width,height),scene.resize(width,height)}_calculatePagePosition(docsComponent,scene,viewport,zoomRatio=1){const parent=scene==null?void 0:scene.getParent(),{width:docsWidth,height:docsHeight,pageMarginLeft,pageMarginTop}=docsComponent;if(parent==null||docsWidth===Number.POSITIVE_INFINITY||docsHeight===Number.POSITIVE_INFINITY)return;const{width:engineWidth,height:engineHeight}=parent;let docsLeft=0,docsTop=0,sceneWidth=0,sceneHeight=0,scrollToX=Number.POSITIVE_INFINITY;if(engineWidth>(docsWidth+pageMarginLeft*2)*zoomRatio?(docsLeft=engineWidth/2-docsWidth*zoomRatio/2,docsLeft/=zoomRatio,sceneWidth=(engineWidth-pageMarginLeft*2)/zoomRatio,scrollToX=0):(docsLeft=pageMarginLeft,sceneWidth=docsWidth+pageMarginLeft*2,scrollToX=(sceneWidth-engineWidth/zoomRatio)/2),engineHeight>docsHeight?(docsTop=engineHeight/2-docsHeight/2,sceneHeight=(engineHeight-pageMarginTop*2)/zoomRatio):(docsTop=pageMarginTop,sceneHeight=docsHeight+pageMarginTop*2),scene.resize(sceneWidth,sceneHeight+200),docsComponent.translate(docsLeft,docsTop),scrollToX!==Number.POSITIVE_INFINITY&&viewport!=null){const actualX=viewport.transScroll2ViewportScrollValue(scrollToX,0).x;viewport.scrollToBarPos({x:actualX})}return this}},__name(_a2,"DocsAdaptor"),_a2);DocsAdaptor=__decorateClass$4([__decorateParam$4(0,core.Inject(core.LocaleService))],DocsAdaptor);const _DocsAdaptorFactory=class _DocsAdaptorFactory{constructor(){__publicField(this,"zIndex",5)}create(injector){return injector.createInstance(DocsAdaptor)}};__name(_DocsAdaptorFactory,"DocsAdaptorFactory");let DocsAdaptorFactory=_DocsAdaptorFactory;CanvasObjectProviderRegistry.add(new DocsAdaptorFactory);const _ImageAdaptor=class _ImageAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",1);__publicField(this,"viewKey",core.PageElementType.IMAGE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,image={}}=pageElement,{imageProperties,placeholder,link}=image,contentUrl=(imageProperties==null?void 0:imageProperties.contentUrl)||"";return new engineRender.Image(id,{url:contentUrl,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0})}};__name(_ImageAdaptor,"ImageAdaptor");let ImageAdaptor=_ImageAdaptor;const _ImageAdaptorFactory=class _ImageAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(ImageAdaptor)}};__name(_ImageAdaptorFactory,"ImageAdaptorFactory");let ImageAdaptorFactory=_ImageAdaptorFactory;CanvasObjectProviderRegistry.add(new ImageAdaptorFactory);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3"),_a3;let RichTextAdaptor=(_a3=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.TEXT);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,_mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,richText={}}=pageElement,{text,ff,fs,it,bl,ul,st,ol,bg,bd,cl,rich}=richText;let config={top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0},isNotNull=!1;if(text!=null?(config={...config,text,ff,fs,it,bl,ul,st,ol,bg,bd,cl},isNotNull=!0):rich!=null&&(config={...config,richText:rich},isNotNull=!0),isNotNull!==!1)return new engineRender.RichText(this._localeService,id,config)}},__name(_a3,"RichTextAdaptor"),_a3);RichTextAdaptor=__decorateClass$3([__decorateParam$3(0,core.Inject(core.LocaleService))],RichTextAdaptor);const _RichTextAdaptorFactory=class _RichTextAdaptorFactory{constructor(){__publicField(this,"zIndex",0)}create(injector){return injector.createInstance(RichTextAdaptor)}};__name(_RichTextAdaptorFactory,"RichTextAdaptorFactory");let RichTextAdaptorFactory=_RichTextAdaptorFactory;CanvasObjectProviderRegistry.add(new RichTextAdaptorFactory);const _ShapeAdaptor=class _ShapeAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.SHAPE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description}=pageElement,{shapeType,text,shapeProperties,placeholder,link}=pageElement.shape||{},fill=shapeProperties==null?"":core.getColorStyle(shapeProperties.shapeBackgroundFill)||"rgba(255,255,255,1)",outline=shapeProperties==null?void 0:shapeProperties.outline,strokeStyle={};if(outline){const{outlineFill,weight}=outline;strokeStyle.strokeWidth=weight,strokeStyle.stroke=core.getColorStyle(outlineFill)||"rgba(0,0,0,1)"}if(shapeType===core.BasicShapes.Rect)return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,...strokeStyle});if(shapeType===core.BasicShapes.RoundRect){const radius=(shapeProperties==null?void 0:shapeProperties.radius)||0;return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,radius,...strokeStyle})}}};__name(_ShapeAdaptor,"ShapeAdaptor");let ShapeAdaptor=_ShapeAdaptor;const _ShapeAdaptorFactory=class _ShapeAdaptorFactory{constructor(){__publicField(this,"zIndex",2)}create(injector){return injector.createInstance(ShapeAdaptor)}};__name(_ShapeAdaptorFactory,"ShapeAdaptorFactory");let ShapeAdaptorFactory=_ShapeAdaptorFactory;CanvasObjectProviderRegistry.add(new ShapeAdaptorFactory);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a4;exports.ObjectProvider=(_a4=class{constructor(_injector){__publicField(this,"_adaptors",[]);this._injector=_injector,this._adaptorLoader()}convertToRenderObjects(pageElements,mainScene){const pageKeys=Object.keys(pageElements),objects=[];return pageKeys.forEach(key=>{const pageElement=pageElements[key],o=this._executor(pageElement,mainScene);o!=null&&objects.push(o)}),objects}convertToRenderObject(pageElement,mainScene){return this._executor(pageElement,mainScene)}_executor(pageElement,mainScene){var _a7;const{id:pageElementId,type}=pageElement;for(const adaptor of this._adaptors){const o=(_a7=adaptor.check(type))==null?void 0:_a7.convert(pageElement,mainScene);if(o!=null)return o}}_adaptorLoader(){CanvasObjectProviderRegistry.getData().sort(core.sortRules).forEach(adaptorFactory=>{this._adaptors.push(adaptorFactory.create(this._injector))})}},__name(_a4,"ObjectProvider"),_a4);exports.ObjectProvider=__decorateClass$2([__decorateParam$2(0,core.Inject(core.Injector))],exports.ObjectProvider);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),SLIDE_VIEW_KEY=(SLIDE_VIEW_KEY2=>(SLIDE_VIEW_KEY2.MAIN="__SLIDERender__",SLIDE_VIEW_KEY2.SCENE_VIEWER="__SLIDEViewer__",SLIDE_VIEW_KEY2.SCENE="__SLIDEScene__",SLIDE_VIEW_KEY2.VIEWPORT="__SLIDEViewPort_",SLIDE_VIEW_KEY2))(SLIDE_VIEW_KEY||{}),_a5;let SlideAdaptor=(_a5=class extends ObjectAdaptor{constructor(_injector){super();__publicField(this,"zIndex",6);__publicField(this,"viewKey",core.PageElementType.SLIDE);__publicField(this,"_ObjectProvider",null);this._injector=_injector}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,slide:slideData}=pageElement;if(slideData==null)return;const model=new core.SlideDataModel(slideData),slideComponent=new engineRender.Slide("__SLIDERender__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0});slideComponent.enableNav(),slideComponent.enableSelectedClipElement();const pageOrder=model.getPageOrder(),pages=model.getPages();if(!pageOrder||!pages)return slideComponent;this._ObjectProvider=new exports.ObjectProvider(this._injector);for(let i=0,len=pageOrder.length;i<len;i++){const page=pages[pageOrder[i]],{id:id2}=page;slideComponent.addPageScene(this._createScene(id2,slideComponent,page,mainScene,model))}return slideComponent.activeFirstPage(),slideComponent}_createScene(pageId,parent,page,mainScene,model){var _a7;const{width,height}=parent,scene=new engineRender.Scene(pageId,parent,{width,height});new engineRender.Viewport(`PageViewer_${pageId}`,scene,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements,pageBackgroundFill}=page,objects=(_a7=this._ObjectProvider)==null?void 0:_a7.convertToRenderObjects(pageElements,mainScene);return this._addBackgroundRect(scene,pageBackgroundFill,model),scene.addObjects(objects),objects==null||objects.forEach(object=>{scene.attachTransformerTo(object)}),scene}_addBackgroundRect(scene,fill,model){const pageSize=model.getPageSize(),{width:pageWidth=0,height:pageHeight=0}=pageSize,page=new engineRender.Rect("canvas",{left:0,top:0,width:pageWidth,height:pageHeight,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:core.getColorStyle(fill)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});scene.addObject(page,0)}},__name(_a5,"SlideAdaptor"),_a5);SlideAdaptor=__decorateClass$1([__decorateParam$1(0,core.Inject(core.Injector))],SlideAdaptor);const _SlideAdaptorFactory=class _SlideAdaptorFactory{constructor(){__publicField(this,"zIndex",6)}create(injector){return injector.createInstance(SlideAdaptor)}};__name(_SlideAdaptorFactory,"SlideAdaptorFactory");let SlideAdaptorFactory=_SlideAdaptorFactory;CanvasObjectProviderRegistry.add(new SlideAdaptorFactory);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),_a6;let SpreadsheetAdaptor=(_a6=class extends ObjectAdaptor{constructor(_localeService,_contextService){super();__publicField(this,"zIndex",4);__publicField(this,"viewKey",core.PageElementType.SPREADSHEET);this._localeService=_localeService,this._contextService=_contextService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,spreadsheet:spreadsheetModel}=pageElement;if(spreadsheetModel==null)return;const{worksheet,styles}=spreadsheetModel,{cellData}=worksheet,cellDataMatrix=new core.ObjectMatrix(cellData),styleModel=new core.Styles(styles),spreadsheetSkeleton=new engineRender.SpreadsheetSkeleton(new core.Worksheet(id,worksheet,styleModel),worksheet,cellDataMatrix,styleModel,this._localeService,this._contextService),{rowTotalHeight,columnTotalWidth,rowHeaderWidth,columnHeaderHeight}=spreadsheetSkeleton,allWidth=columnTotalWidth+worksheet.rowHeader.width||0,allHeight=rowTotalHeight+worksheet.columnHeader.height||0,sv=new engineRender.SceneViewer("spreadInSlideSceneViewer"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0}),scene=new engineRender.Scene("spreadInSlideScene"+id,sv,{width:allWidth,height:allHeight});this._updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene);const spreadsheet=new engineRender.Spreadsheet("testSheetViewer",spreadsheetSkeleton,!1),spreadsheetRowHeader=new engineRender.SpreadsheetRowHeader("spreadInSlideRow",spreadsheetSkeleton),spreadsheetColumnHeader=new engineRender.SpreadsheetColumnHeader("spreadInSlideColumn",spreadsheetSkeleton),SpreadsheetLeftTopPlaceholder=new engineRender.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:rowHeaderWidth,height:columnHeaderHeight,fill:engineRender.getColor([248,249,250]),stroke:engineRender.getColor([217,217,217]),strokeWidth:1});return spreadsheet.zIndex=10,scene.addObjects([spreadsheet],1),scene.addObjects([spreadsheetRowHeader,spreadsheetColumnHeader,SpreadsheetLeftTopPlaceholder],2),sv}_updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene){if(mainScene==null)return;const rowHeaderWidthScale=rowHeaderWidth*scene.scaleX,columnHeaderHeightScale=columnHeaderHeight*scene.scaleY,viewMain=new engineRender.Viewport("spreadInSlideViewMain"+id,scene,{left:rowHeaderWidthScale,top:columnHeaderHeightScale,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),viewTop=new engineRender.Viewport("spreadInSlideViewTop"+id,scene,{left:rowHeaderWidthScale,height:columnHeaderHeightScale,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),viewLeft=new engineRender.Viewport("spreadInSlideViewLeft"+id,scene,{left:0,bottom:0,top:columnHeaderHeightScale,width:rowHeaderWidthScale,isRelativeY:!0,isWheelPreventDefaultX:!0});new engineRender.Viewport("spreadInSlideViewLeftTop"+id,scene,{left:0,top:0,width:rowHeaderWidthScale,height:columnHeaderHeightScale,isWheelPreventDefaultX:!0}),viewMain.onScrollAfter$.subscribeEvent(param=>{const{scrollX,scrollY,viewportScrollX,viewportScrollY}=param;viewTop.updateScrollVal({scrollX,viewportScrollX}),viewLeft.updateScrollVal({scrollY,viewportScrollY})}),scene.attachControl(),new engineRender.ScrollBar(viewMain,{mainScene}),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.05:deltaFactor<80?.02:.01;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(scene.scaleBy(scrollNum,scrollNum),e.preventDefault())}else viewMain.onMouseWheel(e,state)})}},__name(_a6,"SpreadsheetAdaptor"),_a6);SpreadsheetAdaptor=__decorateClass([__decorateParam(0,core.Inject(core.LocaleService)),__decorateParam(1,core.IContextService)],SpreadsheetAdaptor);const _SpreadsheetAdaptorFactory=class _SpreadsheetAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(SpreadsheetAdaptor)}};__name(_SpreadsheetAdaptorFactory,"SpreadsheetAdaptorFactory");let SpreadsheetAdaptorFactory=_SpreadsheetAdaptorFactory;CanvasObjectProviderRegistry.add(new SpreadsheetAdaptorFactory);var SLIDE_KEY=(SLIDE_KEY2=>(SLIDE_KEY2.COMPONENT="__slideRender__",SLIDE_KEY2.SCENE="__mainScene__",SLIDE_KEY2.VIEW="__mainView__",SLIDE_KEY2))(SLIDE_KEY||{});exports.CanvasObjectProviderRegistry=CanvasObjectProviderRegistry;exports.ObjectAdaptor=ObjectAdaptor;exports.SLIDE_KEY=SLIDE_KEY;exports.SLIDE_VIEW_KEY=SLIDE_VIEW_KEY;
1
+ "use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),engineRender=require("@univerjs/engine-render"),PLUGIN_CONFIG_KEY="slides.config",defaultPluginConfig={};var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");const PLUGIN_NAME="slides";var _a;exports.UniverSlidesPlugin=(_a=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_renderManagerService,_configService){super();__publicField(this,"_canvasEngine",null);this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{...rest}=this._config;this._configService.setConfig(PLUGIN_CONFIG_KEY,rest),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}onReady(){}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(engineRender.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}_initializeDependencies(slideInjector){[].forEach(d=>{slideInjector.add(d)})}},__name(_a,"UniverSlidesPlugin"),__publicField(_a,"pluginName",PLUGIN_NAME),__publicField(_a,"type",core.UniverInstanceType.UNIVER_SLIDE),_a);exports.UniverSlidesPlugin=__decorateClass$5([__decorateParam$5(1,core.Inject(core.Injector)),__decorateParam$5(2,engineRender.IRenderManagerService),__decorateParam$5(3,core.IConfigService)],exports.UniverSlidesPlugin);const _ObjectAdaptor=class _ObjectAdaptor{constructor(){__publicField(this,"zIndex",0);__publicField(this,"viewKey",null)}check(type){if(type===this.viewKey)return this}create(injector){}};__name(_ObjectAdaptor,"ObjectAdaptor");let ObjectAdaptor=_ObjectAdaptor;const CanvasObjectProviderRegistry=core.Registry.create();var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4"),_a2;let DocsAdaptor=(_a2=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",5);__publicField(this,"viewKey",core.PageElementType.DOCUMENT);__publicField(this,"_liquid",new engineRender.Liquid);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){var _a7,_b;const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,document:documentData}=pageElement;if(documentData==null)return;const docDataModel=new core.DocumentDataModel(documentData),docViewModel=new engineRender.DocumentViewModel(docDataModel),documentSkeleton=engineRender.DocumentSkeleton.create(docViewModel,this._localeService),documents=new engineRender.Documents("__DocsRender__",documentSkeleton);documentSkeleton.calculate();const sv=new engineRender.SceneViewer("__DocsViewer__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY}),scene=new engineRender.Scene("__DocsScene__"+id,sv),viewMain=new engineRender.Viewport("__DocsViewPort_"+id,scene,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});scene.attachControl(),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.2:deltaFactor<80?.4:.2;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(e.deltaY>0,e.preventDefault())}else viewMain.onMouseWheel(e,state)}),new engineRender.ScrollBar(viewMain,{mainScene}),scene.addObject(documents);const size=documentSkeleton.getActualSize();documents.resize(size.actualWidth,size.actualHeight),scene.resize(size.actualWidth,size.actualHeight+200),(_a7=documents.getSkeleton())==null||_a7.getPageSize(),documents.pageRender$.subscribe(config=>{const{page,pageLeft,pageTop,ctx}=config;ctx.save(),ctx.translate(pageLeft-.5,pageTop-.5),ctx.restore()});const{left:docsLeft,top:docsTop}=documents,skeletonData=documentSkeleton.getSkeletonData();if(skeletonData==null)return;const{pages}=skeletonData,objectList=[],pageMarginCache=new Map;this._recalculateSizeBySkeleton(documents,scene,documentSkeleton);for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{skeDrawings,marginLeft,marginTop,pageWidth,pageHeight}=page;this._liquid.translatePagePadding(page),skeDrawings.forEach(drawing=>{const{aLeft,aTop,height:height2,width:width2,drawingOrigin}=drawing,rect=new engineRender.Image(drawing.drawingId,{left:aLeft+docsLeft+this._liquid.x,top:aTop+docsTop+this._liquid.y,width:width2,height:height2,zIndex:11});pageMarginCache.set(drawing.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),objectList.push(rect)}),this._liquid.translatePage(page,documents.pageLayoutType,documents.pageMarginLeft,documents.pageMarginTop)}return scene.addObjects(objectList),objectList.forEach(object=>{scene.attachTransformerTo(object)}),(_b=scene.getTransformer())==null||_b.changing$.subscribe(state=>{const{objects}=state;objects.forEach(object=>{const{oKey,left:left2,top:top2,height:height2,width:width2}=object,cache=pageMarginCache.get(oKey),marginLeft=(cache==null?void 0:cache.marginLeft)||0,marginTop=(cache==null?void 0:cache.marginTop)||0;documentSkeleton==null||documentSkeleton.getViewModel().getDataModel().updateDrawing(oKey,{left:left2-docsLeft-marginLeft,top:top2-docsTop-marginTop,height:height2,width:width2})}),documentSkeleton==null||documentSkeleton.calculate()}),this._calculatePagePosition(documents,scene,viewMain),sv}_recalculateSizeBySkeleton(docsComponent,scene,skeleton){var _a7;const pages=(_a7=skeleton.getSkeletonData())==null?void 0:_a7.pages;if(pages==null)return;let width=0,height=0;for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{pageWidth,pageHeight}=page;docsComponent.pageLayoutType===engineRender.PageLayoutType.VERTICAL?(height+=pageHeight,height+=docsComponent.pageMarginTop,i===len-1&&(height+=docsComponent.pageMarginTop),width=Math.max(width,pageWidth)):docsComponent.pageLayoutType===engineRender.PageLayoutType.HORIZONTAL&&(width+=pageWidth,i!==len-1&&(width+=docsComponent.pageMarginLeft),height=Math.max(height,pageHeight))}docsComponent.resize(width,height),scene.resize(width,height)}_calculatePagePosition(docsComponent,scene,viewport,zoomRatio=1){const parent=scene==null?void 0:scene.getParent(),{width:docsWidth,height:docsHeight,pageMarginLeft,pageMarginTop}=docsComponent;if(parent==null||docsWidth===Number.POSITIVE_INFINITY||docsHeight===Number.POSITIVE_INFINITY)return;const{width:engineWidth,height:engineHeight}=parent;let docsLeft=0,docsTop=0,sceneWidth=0,sceneHeight=0,scrollToX=Number.POSITIVE_INFINITY;if(engineWidth>(docsWidth+pageMarginLeft*2)*zoomRatio?(docsLeft=engineWidth/2-docsWidth*zoomRatio/2,docsLeft/=zoomRatio,sceneWidth=(engineWidth-pageMarginLeft*2)/zoomRatio,scrollToX=0):(docsLeft=pageMarginLeft,sceneWidth=docsWidth+pageMarginLeft*2,scrollToX=(sceneWidth-engineWidth/zoomRatio)/2),engineHeight>docsHeight?(docsTop=engineHeight/2-docsHeight/2,sceneHeight=(engineHeight-pageMarginTop*2)/zoomRatio):(docsTop=pageMarginTop,sceneHeight=docsHeight+pageMarginTop*2),scene.resize(sceneWidth,sceneHeight+200),docsComponent.translate(docsLeft,docsTop),scrollToX!==Number.POSITIVE_INFINITY&&viewport!=null){const actualX=viewport.transScroll2ViewportScrollValue(scrollToX,0).x;viewport.scrollToBarPos({x:actualX})}return this}},__name(_a2,"DocsAdaptor"),_a2);DocsAdaptor=__decorateClass$4([__decorateParam$4(0,core.Inject(core.LocaleService))],DocsAdaptor);const _DocsAdaptorFactory=class _DocsAdaptorFactory{constructor(){__publicField(this,"zIndex",5)}create(injector){return injector.createInstance(DocsAdaptor)}};__name(_DocsAdaptorFactory,"DocsAdaptorFactory");let DocsAdaptorFactory=_DocsAdaptorFactory;CanvasObjectProviderRegistry.add(new DocsAdaptorFactory);const _ImageAdaptor=class _ImageAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",1);__publicField(this,"viewKey",core.PageElementType.IMAGE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,image={}}=pageElement,{imageProperties,placeholder,link}=image,contentUrl=(imageProperties==null?void 0:imageProperties.contentUrl)||"";return new engineRender.Image(id,{url:contentUrl,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0})}};__name(_ImageAdaptor,"ImageAdaptor");let ImageAdaptor=_ImageAdaptor;const _ImageAdaptorFactory=class _ImageAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(ImageAdaptor)}};__name(_ImageAdaptorFactory,"ImageAdaptorFactory");let ImageAdaptorFactory=_ImageAdaptorFactory;CanvasObjectProviderRegistry.add(new ImageAdaptorFactory);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3"),_a3;let RichTextAdaptor=(_a3=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.TEXT);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,_mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,richText={}}=pageElement,{text,ff,fs,it,bl,ul,st,ol,bg,bd,cl,rich}=richText;let config={top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0},isNotNull=!1;if(text!=null?(config={...config,text,ff,fs,it,bl,ul,st,ol,bg,bd,cl},isNotNull=!0):rich!=null&&(config={...config,richText:rich},isNotNull=!0),isNotNull!==!1)return new engineRender.RichText(this._localeService,id,config)}},__name(_a3,"RichTextAdaptor"),_a3);RichTextAdaptor=__decorateClass$3([__decorateParam$3(0,core.Inject(core.LocaleService))],RichTextAdaptor);const _RichTextAdaptorFactory=class _RichTextAdaptorFactory{constructor(){__publicField(this,"zIndex",0)}create(injector){return injector.createInstance(RichTextAdaptor)}};__name(_RichTextAdaptorFactory,"RichTextAdaptorFactory");let RichTextAdaptorFactory=_RichTextAdaptorFactory;CanvasObjectProviderRegistry.add(new RichTextAdaptorFactory);const _ShapeAdaptor=class _ShapeAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.SHAPE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description}=pageElement,{shapeType,text,shapeProperties,placeholder,link}=pageElement.shape||{},fill=shapeProperties==null?"":core.getColorStyle(shapeProperties.shapeBackgroundFill)||"rgba(255,255,255,1)",outline=shapeProperties==null?void 0:shapeProperties.outline,strokeStyle={};if(outline){const{outlineFill,weight}=outline;strokeStyle.strokeWidth=weight,strokeStyle.stroke=core.getColorStyle(outlineFill)||"rgba(0,0,0,1)"}if(shapeType===core.BasicShapes.Rect)return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,...strokeStyle});if(shapeType===core.BasicShapes.RoundRect){const radius=(shapeProperties==null?void 0:shapeProperties.radius)||0;return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,radius,...strokeStyle})}}};__name(_ShapeAdaptor,"ShapeAdaptor");let ShapeAdaptor=_ShapeAdaptor;const _ShapeAdaptorFactory=class _ShapeAdaptorFactory{constructor(){__publicField(this,"zIndex",2)}create(injector){return injector.createInstance(ShapeAdaptor)}};__name(_ShapeAdaptorFactory,"ShapeAdaptorFactory");let ShapeAdaptorFactory=_ShapeAdaptorFactory;CanvasObjectProviderRegistry.add(new ShapeAdaptorFactory);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a4;exports.ObjectProvider=(_a4=class{constructor(_injector){__publicField(this,"_adaptors",[]);this._injector=_injector,this._adaptorLoader()}convertToRenderObjects(pageElements,mainScene){const pageKeys=Object.keys(pageElements),objects=[];return pageKeys.forEach(key=>{const pageElement=pageElements[key],o=this._executor(pageElement,mainScene);o!=null&&objects.push(o)}),objects}convertToRenderObject(pageElement,mainScene){return this._executor(pageElement,mainScene)}_executor(pageElement,mainScene){var _a7;const{id:pageElementId,type}=pageElement;for(const adaptor of this._adaptors){const o=(_a7=adaptor.check(type))==null?void 0:_a7.convert(pageElement,mainScene);if(o!=null)return o}}_adaptorLoader(){CanvasObjectProviderRegistry.getData().sort(core.sortRules).forEach(adaptorFactory=>{this._adaptors.push(adaptorFactory.create(this._injector))})}},__name(_a4,"ObjectProvider"),_a4);exports.ObjectProvider=__decorateClass$2([__decorateParam$2(0,core.Inject(core.Injector))],exports.ObjectProvider);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),SLIDE_VIEW_KEY=(SLIDE_VIEW_KEY2=>(SLIDE_VIEW_KEY2.MAIN="__SLIDERender__",SLIDE_VIEW_KEY2.SCENE_VIEWER="__SLIDEViewer__",SLIDE_VIEW_KEY2.SCENE="__SLIDEScene__",SLIDE_VIEW_KEY2.VIEWPORT="__SLIDEViewPort_",SLIDE_VIEW_KEY2))(SLIDE_VIEW_KEY||{}),_a5;let SlideAdaptor=(_a5=class extends ObjectAdaptor{constructor(_injector){super();__publicField(this,"zIndex",6);__publicField(this,"viewKey",core.PageElementType.SLIDE);__publicField(this,"_ObjectProvider",null);this._injector=_injector}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,slide:slideData}=pageElement;if(slideData==null)return;const model=new core.SlideDataModel(slideData),slideComponent=new engineRender.Slide("__SLIDERender__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0});slideComponent.enableNav(),slideComponent.enableSelectedClipElement();const pageOrder=model.getPageOrder(),pages=model.getPages();if(!pageOrder||!pages)return slideComponent;this._ObjectProvider=new exports.ObjectProvider(this._injector);for(let i=0,len=pageOrder.length;i<len;i++){const page=pages[pageOrder[i]],{id:id2}=page;slideComponent.addPageScene(this._createScene(id2,slideComponent,page,mainScene,model))}return slideComponent.activeFirstPage(),slideComponent}_createScene(pageId,parent,page,mainScene,model){var _a7;const{width,height}=parent,scene=new engineRender.Scene(pageId,parent,{width,height});new engineRender.Viewport(`PageViewer_${pageId}`,scene,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1}).closeClip();const{pageElements,pageBackgroundFill}=page,objects=(_a7=this._ObjectProvider)==null?void 0:_a7.convertToRenderObjects(pageElements,mainScene);return this._addBackgroundRect(scene,pageBackgroundFill,model),scene.addObjects(objects),objects==null||objects.forEach(object=>{scene.attachTransformerTo(object)}),scene}_addBackgroundRect(scene,fill,model){const pageSize=model.getPageSize(),{width:pageWidth=0,height:pageHeight=0}=pageSize,page=new engineRender.Rect("canvas",{left:0,top:0,width:pageWidth,height:pageHeight,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:core.getColorStyle(fill)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});scene.addObject(page,0)}},__name(_a5,"SlideAdaptor"),_a5);SlideAdaptor=__decorateClass$1([__decorateParam$1(0,core.Inject(core.Injector))],SlideAdaptor);const _SlideAdaptorFactory=class _SlideAdaptorFactory{constructor(){__publicField(this,"zIndex",6)}create(injector){return injector.createInstance(SlideAdaptor)}};__name(_SlideAdaptorFactory,"SlideAdaptorFactory");let SlideAdaptorFactory=_SlideAdaptorFactory;CanvasObjectProviderRegistry.add(new SlideAdaptorFactory);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),_a6;let SpreadsheetAdaptor=(_a6=class extends ObjectAdaptor{constructor(_localeService,_contextService){super();__publicField(this,"zIndex",4);__publicField(this,"viewKey",core.PageElementType.SPREADSHEET);this._localeService=_localeService,this._contextService=_contextService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,spreadsheet:spreadsheetModel}=pageElement;if(spreadsheetModel==null)return;const{worksheet,styles}=spreadsheetModel,{cellData}=worksheet,cellDataMatrix=new core.ObjectMatrix(cellData),styleModel=new core.Styles(styles),spreadsheetSkeleton=new engineRender.SpreadsheetSkeleton(new core.Worksheet(id,worksheet,styleModel),worksheet,cellDataMatrix,styleModel,this._localeService,this._contextService),{rowTotalHeight,columnTotalWidth,rowHeaderWidth,columnHeaderHeight}=spreadsheetSkeleton,allWidth=columnTotalWidth+worksheet.rowHeader.width||0,allHeight=rowTotalHeight+worksheet.columnHeader.height||0,sv=new engineRender.SceneViewer("spreadInSlideSceneViewer"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0}),scene=new engineRender.Scene("spreadInSlideScene"+id,sv,{width:allWidth,height:allHeight});this._updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene);const spreadsheet=new engineRender.Spreadsheet("testSheetViewer",spreadsheetSkeleton,!1),spreadsheetRowHeader=new engineRender.SpreadsheetRowHeader("spreadInSlideRow",spreadsheetSkeleton),spreadsheetColumnHeader=new engineRender.SpreadsheetColumnHeader("spreadInSlideColumn",spreadsheetSkeleton),SpreadsheetLeftTopPlaceholder=new engineRender.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:rowHeaderWidth,height:columnHeaderHeight,fill:engineRender.getColor([248,249,250]),stroke:engineRender.getColor([217,217,217]),strokeWidth:1});return spreadsheet.zIndex=10,scene.addObjects([spreadsheet],1),scene.addObjects([spreadsheetRowHeader,spreadsheetColumnHeader,SpreadsheetLeftTopPlaceholder],2),sv}_updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene){if(mainScene==null)return;const rowHeaderWidthScale=rowHeaderWidth*scene.scaleX,columnHeaderHeightScale=columnHeaderHeight*scene.scaleY,viewMain=new engineRender.Viewport("spreadInSlideViewMain"+id,scene,{left:rowHeaderWidthScale,top:columnHeaderHeightScale,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0}),viewTop=new engineRender.Viewport("spreadInSlideViewTop"+id,scene,{left:rowHeaderWidthScale,height:columnHeaderHeightScale,top:0,right:0,explicitViewportWidthSet:!1,isWheelPreventDefaultX:!0}),viewLeft=new engineRender.Viewport("spreadInSlideViewLeft"+id,scene,{left:0,bottom:0,top:columnHeaderHeightScale,width:rowHeaderWidthScale,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});new engineRender.Viewport("spreadInSlideViewLeftTop"+id,scene,{left:0,top:0,width:rowHeaderWidthScale,height:columnHeaderHeightScale,isWheelPreventDefaultX:!0}),viewMain.onScrollAfter$.subscribeEvent(param=>{const{scrollX,scrollY,viewportScrollX,viewportScrollY}=param;viewTop.updateScrollVal({scrollX,viewportScrollX}),viewLeft.updateScrollVal({scrollY,viewportScrollY})}),scene.attachControl(),new engineRender.ScrollBar(viewMain,{mainScene}),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.05:deltaFactor<80?.02:.01;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(scene.scaleBy(scrollNum,scrollNum),e.preventDefault())}else viewMain.onMouseWheel(e,state)})}},__name(_a6,"SpreadsheetAdaptor"),_a6);SpreadsheetAdaptor=__decorateClass([__decorateParam(0,core.Inject(core.LocaleService)),__decorateParam(1,core.IContextService)],SpreadsheetAdaptor);const _SpreadsheetAdaptorFactory=class _SpreadsheetAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(SpreadsheetAdaptor)}};__name(_SpreadsheetAdaptorFactory,"SpreadsheetAdaptorFactory");let SpreadsheetAdaptorFactory=_SpreadsheetAdaptorFactory;CanvasObjectProviderRegistry.add(new SpreadsheetAdaptorFactory);var SLIDE_KEY=(SLIDE_KEY2=>(SLIDE_KEY2.COMPONENT="__slideRender__",SLIDE_KEY2.SCENE="__mainScene__",SLIDE_KEY2.VIEW="__mainView__",SLIDE_KEY2))(SLIDE_KEY||{});exports.CanvasObjectProviderRegistry=CanvasObjectProviderRegistry;exports.ObjectAdaptor=ObjectAdaptor;exports.SLIDE_KEY=SLIDE_KEY;exports.SLIDE_VIEW_KEY=SLIDE_VIEW_KEY;
package/lib/es/index.js CHANGED
@@ -2,22 +2,24 @@ var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
3
3
  var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
5
- import { Plugin, UniverInstanceType, Inject, Injector, Registry, LocaleService, PageElementType, DocumentDataModel, getColorStyle, BasicShapes, sortRules, SlideDataModel, IContextService, ObjectMatrix, Styles, Worksheet } from "@univerjs/core";
5
+ import { Plugin, UniverInstanceType, Inject, Injector, IConfigService, Registry, LocaleService, PageElementType, DocumentDataModel, getColorStyle, BasicShapes, sortRules, SlideDataModel, IContextService, ObjectMatrix, Styles, Worksheet } from "@univerjs/core";
6
6
  import { IRenderingEngine, IRenderManagerService, Liquid, DocumentViewModel, DocumentSkeleton, Documents, SceneViewer, Scene, Viewport, ScrollBar, Image, PageLayoutType, RichText, Rect, Slide, SpreadsheetSkeleton, Spreadsheet, SpreadsheetRowHeader, SpreadsheetColumnHeader, getColor } from "@univerjs/engine-render";
7
+ const PLUGIN_CONFIG_KEY = "slides.config", defaultPluginConfig = {};
7
8
  var __defProp$5 = Object.defineProperty, __getOwnPropDesc$5 = Object.getOwnPropertyDescriptor, __decorateClass$5 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
8
9
  for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$5(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
9
10
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
10
11
  return kind && result && __defProp$5(target, key, result), result;
11
12
  }, "__decorateClass$5"), __decorateParam$5 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$5");
12
- const DEFAULT_SLIDE_PLUGIN_DATA = {}, PLUGIN_NAME = "slides";
13
+ const PLUGIN_NAME = "slides";
13
14
  var _a;
14
15
  let UniverSlidesPlugin = (_a = class extends Plugin {
15
16
  // private _canvasView: CanvasView | null = null;
16
- constructor(config = {}, _injector, _renderManagerService) {
17
+ constructor(_config = defaultPluginConfig, _injector, _renderManagerService, _configService) {
17
18
  super();
18
- __publicField(this, "_config");
19
19
  __publicField(this, "_canvasEngine", null);
20
- this._injector = _injector, this._renderManagerService = _renderManagerService, this._config = Object.assign(DEFAULT_SLIDE_PLUGIN_DATA, config), this._initializeDependencies(this._injector);
20
+ this._config = _config, this._injector = _injector, this._renderManagerService = _renderManagerService, this._configService = _configService;
21
+ const { ...rest } = this._config;
22
+ this._configService.setConfig(PLUGIN_CONFIG_KEY, rest), this._initializeDependencies(this._injector);
21
23
  }
22
24
  initialize() {
23
25
  this.initCanvasEngine();
@@ -39,7 +41,7 @@ let UniverSlidesPlugin = (_a = class extends Plugin {
39
41
  _initializeDependencies(slideInjector) {
40
42
  [
41
43
  // [CanvasView],
42
- // [TextSelectionManagerService],
44
+ // [DocSelectionManagerService],
43
45
  ].forEach((d) => {
44
46
  slideInjector.add(d);
45
47
  });
@@ -47,7 +49,8 @@ let UniverSlidesPlugin = (_a = class extends Plugin {
47
49
  }, __name(_a, "UniverSlidesPlugin"), __publicField(_a, "pluginName", PLUGIN_NAME), __publicField(_a, "type", UniverInstanceType.UNIVER_SLIDE), _a);
48
50
  UniverSlidesPlugin = __decorateClass$5([
49
51
  __decorateParam$5(1, Inject(Injector)),
50
- __decorateParam$5(2, IRenderManagerService)
52
+ __decorateParam$5(2, IRenderManagerService),
53
+ __decorateParam$5(3, IConfigService)
51
54
  ], UniverSlidesPlugin);
52
55
  const _ObjectAdaptor = class _ObjectAdaptor {
53
56
  constructor() {
@@ -124,8 +127,8 @@ let DocsAdaptor = (_a2 = class extends ObjectAdaptor {
124
127
  top: 0,
125
128
  bottom: 0,
126
129
  right: 0,
127
- isRelativeX: !0,
128
- isRelativeY: !0,
130
+ explicitViewportWidthSet: !1,
131
+ explicitViewportHeightSet: !1,
129
132
  isWheelPreventDefaultX: !0
130
133
  });
131
134
  scene.attachControl(), scene.onMouseWheel$.subscribeEvent((evt, state) => {
@@ -554,8 +557,8 @@ let SlideAdaptor = (_a5 = class extends ObjectAdaptor {
554
557
  top: 0,
555
558
  bottom: 0,
556
559
  right: 0,
557
- isRelativeX: !0,
558
- isRelativeY: !0
560
+ explicitViewportWidthSet: !1,
561
+ explicitViewportHeightSet: !1
559
562
  }).closeClip();
560
563
  const { pageElements, pageBackgroundFill } = page, objects = (_a7 = this._ObjectProvider) == null ? void 0 : _a7.convertToRenderObjects(pageElements, mainScene);
561
564
  return this._addBackgroundRect(scene, pageBackgroundFill, model), scene.addObjects(objects), objects == null || objects.forEach((object) => {
@@ -675,22 +678,22 @@ let SpreadsheetAdaptor = (_a6 = class extends ObjectAdaptor {
675
678
  top: columnHeaderHeightScale,
676
679
  bottom: 0,
677
680
  right: 0,
678
- isRelativeX: !0,
679
- isRelativeY: !0,
681
+ explicitViewportWidthSet: !1,
682
+ explicitViewportHeightSet: !1,
680
683
  isWheelPreventDefaultX: !0
681
684
  }), viewTop = new Viewport("spreadInSlideViewTop" + id, scene, {
682
685
  left: rowHeaderWidthScale,
683
686
  height: columnHeaderHeightScale,
684
687
  top: 0,
685
688
  right: 0,
686
- isRelativeX: !0,
689
+ explicitViewportWidthSet: !1,
687
690
  isWheelPreventDefaultX: !0
688
691
  }), viewLeft = new Viewport("spreadInSlideViewLeft" + id, scene, {
689
692
  left: 0,
690
693
  bottom: 0,
691
694
  top: columnHeaderHeightScale,
692
695
  width: rowHeaderWidthScale,
693
- isRelativeY: !0,
696
+ explicitViewportHeightSet: !1,
694
697
  isWheelPreventDefaultX: !0
695
698
  });
696
699
  new Viewport("spreadInSlideViewLeftTop" + id, scene, {
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Copyright 2023-present DreamNum Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export declare const PLUGIN_CONFIG_KEY = "slides.config";
17
+ export declare const configSymbol: unique symbol;
18
+ export interface IUniverSlidesConfig {
19
+ }
20
+ export declare const defaultPluginConfig: IUniverSlidesConfig;
@@ -1,18 +1,19 @@
1
- import { Injector, Plugin, UniverInstanceType } from '@univerjs/core';
2
- import { Engine, IRenderManagerService } from '@univerjs/engine-render';
1
+ import { IConfigService, Injector, Plugin, UniverInstanceType } from '@univerjs/core';
2
+ import { IRenderManagerService, Engine } from '@univerjs/engine-render';
3
3
  export interface IUniverSlidesConfig {
4
4
  }
5
5
  export declare class UniverSlidesPlugin extends Plugin {
6
+ private readonly _config;
6
7
  readonly _injector: Injector;
7
8
  private readonly _renderManagerService;
9
+ private readonly _configService;
8
10
  static pluginName: string;
9
11
  static type: UniverInstanceType;
10
- private _config;
11
12
  private _canvasEngine;
12
- constructor(config: Partial<IUniverSlidesConfig> | undefined, _injector: Injector, _renderManagerService: IRenderManagerService);
13
+ constructor(_config: Partial<IUniverSlidesConfig> | undefined, _injector: Injector, _renderManagerService: IRenderManagerService, _configService: IConfigService);
13
14
  initialize(): void;
14
15
  onReady(): void;
15
- getConfig(): IUniverSlidesConfig;
16
+ getConfig(): Partial<IUniverSlidesConfig>;
16
17
  initCanvasEngine(): void;
17
18
  onRendered(): void;
18
19
  getCanvasEngine(): Engine | null;
@@ -1,4 +1,4 @@
1
- import { Injector, IPageElement, LocaleService, PageElementType } from '@univerjs/core';
1
+ import { LocaleService, PageElementType, Injector, IPageElement } from '@univerjs/core';
2
2
  import { Scene, SceneViewer } from '@univerjs/engine-render';
3
3
  import { ObjectAdaptor } from '../adaptor';
4
4
  export declare enum DOCS_VIEW_KEY {
@@ -1,4 +1,4 @@
1
- import { IPageElement, Injector, PageElementType } from '@univerjs/core';
1
+ import { Injector, PageElementType, IPageElement } from '@univerjs/core';
2
2
  import { Scene, Slide } from '@univerjs/engine-render';
3
3
  import { ObjectAdaptor } from '../adaptor';
4
4
  export declare enum SLIDE_VIEW_KEY {
@@ -1,4 +1,4 @@
1
- import { Injector, IPageElement, IContextService, LocaleService, PageElementType } from '@univerjs/core';
1
+ import { IContextService, LocaleService, PageElementType, Injector, IPageElement } from '@univerjs/core';
2
2
  import { Scene, SceneViewer } from '@univerjs/engine-render';
3
3
  import { ObjectAdaptor } from '../adaptor';
4
4
  export declare class SpreadsheetAdaptor extends ObjectAdaptor {
package/lib/umd/index.js CHANGED
@@ -1 +1 @@
1
- (function(global,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("@univerjs/core"),require("@univerjs/engine-render")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render"],factory):(global=typeof globalThis<"u"?globalThis:global||self,factory(global.UniverSlides={},global.UniverCore,global.UniverEngineRender))})(this,function(exports2,core,engineRender){"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);var _a,_b,_c,_d,_e,_f;var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");const DEFAULT_SLIDE_PLUGIN_DATA={},PLUGIN_NAME="slides";exports2.UniverSlidesPlugin=(_a=class extends core.Plugin{constructor(config={},_injector,_renderManagerService){super();__publicField(this,"_config");__publicField(this,"_canvasEngine",null);this._injector=_injector,this._renderManagerService=_renderManagerService,this._config=Object.assign(DEFAULT_SLIDE_PLUGIN_DATA,config),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}onReady(){}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(engineRender.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}_initializeDependencies(slideInjector){[].forEach(d=>{slideInjector.add(d)})}},__name(_a,"UniverSlidesPlugin"),__publicField(_a,"pluginName",PLUGIN_NAME),__publicField(_a,"type",core.UniverInstanceType.UNIVER_SLIDE),_a),exports2.UniverSlidesPlugin=__decorateClass$5([__decorateParam$5(1,core.Inject(core.Injector)),__decorateParam$5(2,engineRender.IRenderManagerService)],exports2.UniverSlidesPlugin);const _ObjectAdaptor=class _ObjectAdaptor{constructor(){__publicField(this,"zIndex",0);__publicField(this,"viewKey",null)}check(type){if(type===this.viewKey)return this}create(injector){}};__name(_ObjectAdaptor,"ObjectAdaptor");let ObjectAdaptor=_ObjectAdaptor;const CanvasObjectProviderRegistry=core.Registry.create();var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");let DocsAdaptor=(_b=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",5);__publicField(this,"viewKey",core.PageElementType.DOCUMENT);__publicField(this,"_liquid",new engineRender.Liquid);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){var _a2,_b2;const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,document:documentData}=pageElement;if(documentData==null)return;const docDataModel=new core.DocumentDataModel(documentData),docViewModel=new engineRender.DocumentViewModel(docDataModel),documentSkeleton=engineRender.DocumentSkeleton.create(docViewModel,this._localeService),documents=new engineRender.Documents("__DocsRender__",documentSkeleton);documentSkeleton.calculate();const sv=new engineRender.SceneViewer("__DocsViewer__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY}),scene=new engineRender.Scene("__DocsScene__"+id,sv),viewMain=new engineRender.Viewport("__DocsViewPort_"+id,scene,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0});scene.attachControl(),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.2:deltaFactor<80?.4:.2;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(e.deltaY>0,e.preventDefault())}else viewMain.onMouseWheel(e,state)}),new engineRender.ScrollBar(viewMain,{mainScene}),scene.addObject(documents);const size=documentSkeleton.getActualSize();documents.resize(size.actualWidth,size.actualHeight),scene.resize(size.actualWidth,size.actualHeight+200),(_a2=documents.getSkeleton())==null||_a2.getPageSize(),documents.pageRender$.subscribe(config=>{const{page,pageLeft,pageTop,ctx}=config;ctx.save(),ctx.translate(pageLeft-.5,pageTop-.5),ctx.restore()});const{left:docsLeft,top:docsTop}=documents,skeletonData=documentSkeleton.getSkeletonData();if(skeletonData==null)return;const{pages}=skeletonData,objectList=[],pageMarginCache=new Map;this._recalculateSizeBySkeleton(documents,scene,documentSkeleton);for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{skeDrawings,marginLeft,marginTop,pageWidth,pageHeight}=page;this._liquid.translatePagePadding(page),skeDrawings.forEach(drawing=>{const{aLeft,aTop,height:height2,width:width2,drawingOrigin}=drawing,rect=new engineRender.Image(drawing.drawingId,{left:aLeft+docsLeft+this._liquid.x,top:aTop+docsTop+this._liquid.y,width:width2,height:height2,zIndex:11});pageMarginCache.set(drawing.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),objectList.push(rect)}),this._liquid.translatePage(page,documents.pageLayoutType,documents.pageMarginLeft,documents.pageMarginTop)}return scene.addObjects(objectList),objectList.forEach(object=>{scene.attachTransformerTo(object)}),(_b2=scene.getTransformer())==null||_b2.changing$.subscribe(state=>{const{objects}=state;objects.forEach(object=>{const{oKey,left:left2,top:top2,height:height2,width:width2}=object,cache=pageMarginCache.get(oKey),marginLeft=(cache==null?void 0:cache.marginLeft)||0,marginTop=(cache==null?void 0:cache.marginTop)||0;documentSkeleton==null||documentSkeleton.getViewModel().getDataModel().updateDrawing(oKey,{left:left2-docsLeft-marginLeft,top:top2-docsTop-marginTop,height:height2,width:width2})}),documentSkeleton==null||documentSkeleton.calculate()}),this._calculatePagePosition(documents,scene,viewMain),sv}_recalculateSizeBySkeleton(docsComponent,scene,skeleton){var _a2;const pages=(_a2=skeleton.getSkeletonData())==null?void 0:_a2.pages;if(pages==null)return;let width=0,height=0;for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{pageWidth,pageHeight}=page;docsComponent.pageLayoutType===engineRender.PageLayoutType.VERTICAL?(height+=pageHeight,height+=docsComponent.pageMarginTop,i===len-1&&(height+=docsComponent.pageMarginTop),width=Math.max(width,pageWidth)):docsComponent.pageLayoutType===engineRender.PageLayoutType.HORIZONTAL&&(width+=pageWidth,i!==len-1&&(width+=docsComponent.pageMarginLeft),height=Math.max(height,pageHeight))}docsComponent.resize(width,height),scene.resize(width,height)}_calculatePagePosition(docsComponent,scene,viewport,zoomRatio=1){const parent=scene==null?void 0:scene.getParent(),{width:docsWidth,height:docsHeight,pageMarginLeft,pageMarginTop}=docsComponent;if(parent==null||docsWidth===Number.POSITIVE_INFINITY||docsHeight===Number.POSITIVE_INFINITY)return;const{width:engineWidth,height:engineHeight}=parent;let docsLeft=0,docsTop=0,sceneWidth=0,sceneHeight=0,scrollToX=Number.POSITIVE_INFINITY;if(engineWidth>(docsWidth+pageMarginLeft*2)*zoomRatio?(docsLeft=engineWidth/2-docsWidth*zoomRatio/2,docsLeft/=zoomRatio,sceneWidth=(engineWidth-pageMarginLeft*2)/zoomRatio,scrollToX=0):(docsLeft=pageMarginLeft,sceneWidth=docsWidth+pageMarginLeft*2,scrollToX=(sceneWidth-engineWidth/zoomRatio)/2),engineHeight>docsHeight?(docsTop=engineHeight/2-docsHeight/2,sceneHeight=(engineHeight-pageMarginTop*2)/zoomRatio):(docsTop=pageMarginTop,sceneHeight=docsHeight+pageMarginTop*2),scene.resize(sceneWidth,sceneHeight+200),docsComponent.translate(docsLeft,docsTop),scrollToX!==Number.POSITIVE_INFINITY&&viewport!=null){const actualX=viewport.transScroll2ViewportScrollValue(scrollToX,0).x;viewport.scrollToBarPos({x:actualX})}return this}},__name(_b,"DocsAdaptor"),_b);DocsAdaptor=__decorateClass$4([__decorateParam$4(0,core.Inject(core.LocaleService))],DocsAdaptor);const _DocsAdaptorFactory=class _DocsAdaptorFactory{constructor(){__publicField(this,"zIndex",5)}create(injector){return injector.createInstance(DocsAdaptor)}};__name(_DocsAdaptorFactory,"DocsAdaptorFactory");let DocsAdaptorFactory=_DocsAdaptorFactory;CanvasObjectProviderRegistry.add(new DocsAdaptorFactory);const _ImageAdaptor=class _ImageAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",1);__publicField(this,"viewKey",core.PageElementType.IMAGE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,image={}}=pageElement,{imageProperties,placeholder,link}=image,contentUrl=(imageProperties==null?void 0:imageProperties.contentUrl)||"";return new engineRender.Image(id,{url:contentUrl,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0})}};__name(_ImageAdaptor,"ImageAdaptor");let ImageAdaptor=_ImageAdaptor;const _ImageAdaptorFactory=class _ImageAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(ImageAdaptor)}};__name(_ImageAdaptorFactory,"ImageAdaptorFactory");let ImageAdaptorFactory=_ImageAdaptorFactory;CanvasObjectProviderRegistry.add(new ImageAdaptorFactory);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");let RichTextAdaptor=(_c=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.TEXT);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,_mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,richText={}}=pageElement,{text,ff,fs,it,bl,ul,st,ol,bg,bd,cl,rich}=richText;let config={top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0},isNotNull=!1;if(text!=null?(config={...config,text,ff,fs,it,bl,ul,st,ol,bg,bd,cl},isNotNull=!0):rich!=null&&(config={...config,richText:rich},isNotNull=!0),isNotNull!==!1)return new engineRender.RichText(this._localeService,id,config)}},__name(_c,"RichTextAdaptor"),_c);RichTextAdaptor=__decorateClass$3([__decorateParam$3(0,core.Inject(core.LocaleService))],RichTextAdaptor);const _RichTextAdaptorFactory=class _RichTextAdaptorFactory{constructor(){__publicField(this,"zIndex",0)}create(injector){return injector.createInstance(RichTextAdaptor)}};__name(_RichTextAdaptorFactory,"RichTextAdaptorFactory");let RichTextAdaptorFactory=_RichTextAdaptorFactory;CanvasObjectProviderRegistry.add(new RichTextAdaptorFactory);const _ShapeAdaptor=class _ShapeAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.SHAPE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description}=pageElement,{shapeType,text,shapeProperties,placeholder,link}=pageElement.shape||{},fill=shapeProperties==null?"":core.getColorStyle(shapeProperties.shapeBackgroundFill)||"rgba(255,255,255,1)",outline=shapeProperties==null?void 0:shapeProperties.outline,strokeStyle={};if(outline){const{outlineFill,weight}=outline;strokeStyle.strokeWidth=weight,strokeStyle.stroke=core.getColorStyle(outlineFill)||"rgba(0,0,0,1)"}if(shapeType===core.BasicShapes.Rect)return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,...strokeStyle});if(shapeType===core.BasicShapes.RoundRect){const radius=(shapeProperties==null?void 0:shapeProperties.radius)||0;return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,radius,...strokeStyle})}}};__name(_ShapeAdaptor,"ShapeAdaptor");let ShapeAdaptor=_ShapeAdaptor;const _ShapeAdaptorFactory=class _ShapeAdaptorFactory{constructor(){__publicField(this,"zIndex",2)}create(injector){return injector.createInstance(ShapeAdaptor)}};__name(_ShapeAdaptorFactory,"ShapeAdaptorFactory");let ShapeAdaptorFactory=_ShapeAdaptorFactory;CanvasObjectProviderRegistry.add(new ShapeAdaptorFactory);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2");exports2.ObjectProvider=(_d=class{constructor(_injector){__publicField(this,"_adaptors",[]);this._injector=_injector,this._adaptorLoader()}convertToRenderObjects(pageElements,mainScene){const pageKeys=Object.keys(pageElements),objects=[];return pageKeys.forEach(key=>{const pageElement=pageElements[key],o=this._executor(pageElement,mainScene);o!=null&&objects.push(o)}),objects}convertToRenderObject(pageElement,mainScene){return this._executor(pageElement,mainScene)}_executor(pageElement,mainScene){var _a2;const{id:pageElementId,type}=pageElement;for(const adaptor of this._adaptors){const o=(_a2=adaptor.check(type))==null?void 0:_a2.convert(pageElement,mainScene);if(o!=null)return o}}_adaptorLoader(){CanvasObjectProviderRegistry.getData().sort(core.sortRules).forEach(adaptorFactory=>{this._adaptors.push(adaptorFactory.create(this._injector))})}},__name(_d,"ObjectProvider"),_d),exports2.ObjectProvider=__decorateClass$2([__decorateParam$2(0,core.Inject(core.Injector))],exports2.ObjectProvider);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),SLIDE_VIEW_KEY=(SLIDE_VIEW_KEY2=>(SLIDE_VIEW_KEY2.MAIN="__SLIDERender__",SLIDE_VIEW_KEY2.SCENE_VIEWER="__SLIDEViewer__",SLIDE_VIEW_KEY2.SCENE="__SLIDEScene__",SLIDE_VIEW_KEY2.VIEWPORT="__SLIDEViewPort_",SLIDE_VIEW_KEY2))(SLIDE_VIEW_KEY||{});let SlideAdaptor=(_e=class extends ObjectAdaptor{constructor(_injector){super();__publicField(this,"zIndex",6);__publicField(this,"viewKey",core.PageElementType.SLIDE);__publicField(this,"_ObjectProvider",null);this._injector=_injector}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,slide:slideData}=pageElement;if(slideData==null)return;const model=new core.SlideDataModel(slideData),slideComponent=new engineRender.Slide("__SLIDERender__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0});slideComponent.enableNav(),slideComponent.enableSelectedClipElement();const pageOrder=model.getPageOrder(),pages=model.getPages();if(!pageOrder||!pages)return slideComponent;this._ObjectProvider=new exports2.ObjectProvider(this._injector);for(let i=0,len=pageOrder.length;i<len;i++){const page=pages[pageOrder[i]],{id:id2}=page;slideComponent.addPageScene(this._createScene(id2,slideComponent,page,mainScene,model))}return slideComponent.activeFirstPage(),slideComponent}_createScene(pageId,parent,page,mainScene,model){var _a2;const{width,height}=parent,scene=new engineRender.Scene(pageId,parent,{width,height});new engineRender.Viewport(`PageViewer_${pageId}`,scene,{left:0,top:0,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0}).closeClip();const{pageElements,pageBackgroundFill}=page,objects=(_a2=this._ObjectProvider)==null?void 0:_a2.convertToRenderObjects(pageElements,mainScene);return this._addBackgroundRect(scene,pageBackgroundFill,model),scene.addObjects(objects),objects==null||objects.forEach(object=>{scene.attachTransformerTo(object)}),scene}_addBackgroundRect(scene,fill,model){const pageSize=model.getPageSize(),{width:pageWidth=0,height:pageHeight=0}=pageSize,page=new engineRender.Rect("canvas",{left:0,top:0,width:pageWidth,height:pageHeight,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:core.getColorStyle(fill)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});scene.addObject(page,0)}},__name(_e,"SlideAdaptor"),_e);SlideAdaptor=__decorateClass$1([__decorateParam$1(0,core.Inject(core.Injector))],SlideAdaptor);const _SlideAdaptorFactory=class _SlideAdaptorFactory{constructor(){__publicField(this,"zIndex",6)}create(injector){return injector.createInstance(SlideAdaptor)}};__name(_SlideAdaptorFactory,"SlideAdaptorFactory");let SlideAdaptorFactory=_SlideAdaptorFactory;CanvasObjectProviderRegistry.add(new SlideAdaptorFactory);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam");let SpreadsheetAdaptor=(_f=class extends ObjectAdaptor{constructor(_localeService,_contextService){super();__publicField(this,"zIndex",4);__publicField(this,"viewKey",core.PageElementType.SPREADSHEET);this._localeService=_localeService,this._contextService=_contextService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,spreadsheet:spreadsheetModel}=pageElement;if(spreadsheetModel==null)return;const{worksheet,styles}=spreadsheetModel,{cellData}=worksheet,cellDataMatrix=new core.ObjectMatrix(cellData),styleModel=new core.Styles(styles),spreadsheetSkeleton=new engineRender.SpreadsheetSkeleton(new core.Worksheet(id,worksheet,styleModel),worksheet,cellDataMatrix,styleModel,this._localeService,this._contextService),{rowTotalHeight,columnTotalWidth,rowHeaderWidth,columnHeaderHeight}=spreadsheetSkeleton,allWidth=columnTotalWidth+worksheet.rowHeader.width||0,allHeight=rowTotalHeight+worksheet.columnHeader.height||0,sv=new engineRender.SceneViewer("spreadInSlideSceneViewer"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0}),scene=new engineRender.Scene("spreadInSlideScene"+id,sv,{width:allWidth,height:allHeight});this._updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene);const spreadsheet=new engineRender.Spreadsheet("testSheetViewer",spreadsheetSkeleton,!1),spreadsheetRowHeader=new engineRender.SpreadsheetRowHeader("spreadInSlideRow",spreadsheetSkeleton),spreadsheetColumnHeader=new engineRender.SpreadsheetColumnHeader("spreadInSlideColumn",spreadsheetSkeleton),SpreadsheetLeftTopPlaceholder=new engineRender.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:rowHeaderWidth,height:columnHeaderHeight,fill:engineRender.getColor([248,249,250]),stroke:engineRender.getColor([217,217,217]),strokeWidth:1});return spreadsheet.zIndex=10,scene.addObjects([spreadsheet],1),scene.addObjects([spreadsheetRowHeader,spreadsheetColumnHeader,SpreadsheetLeftTopPlaceholder],2),sv}_updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene){if(mainScene==null)return;const rowHeaderWidthScale=rowHeaderWidth*scene.scaleX,columnHeaderHeightScale=columnHeaderHeight*scene.scaleY,viewMain=new engineRender.Viewport("spreadInSlideViewMain"+id,scene,{left:rowHeaderWidthScale,top:columnHeaderHeightScale,bottom:0,right:0,isRelativeX:!0,isRelativeY:!0,isWheelPreventDefaultX:!0}),viewTop=new engineRender.Viewport("spreadInSlideViewTop"+id,scene,{left:rowHeaderWidthScale,height:columnHeaderHeightScale,top:0,right:0,isRelativeX:!0,isWheelPreventDefaultX:!0}),viewLeft=new engineRender.Viewport("spreadInSlideViewLeft"+id,scene,{left:0,bottom:0,top:columnHeaderHeightScale,width:rowHeaderWidthScale,isRelativeY:!0,isWheelPreventDefaultX:!0});new engineRender.Viewport("spreadInSlideViewLeftTop"+id,scene,{left:0,top:0,width:rowHeaderWidthScale,height:columnHeaderHeightScale,isWheelPreventDefaultX:!0}),viewMain.onScrollAfter$.subscribeEvent(param=>{const{scrollX,scrollY,viewportScrollX,viewportScrollY}=param;viewTop.updateScrollVal({scrollX,viewportScrollX}),viewLeft.updateScrollVal({scrollY,viewportScrollY})}),scene.attachControl(),new engineRender.ScrollBar(viewMain,{mainScene}),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.05:deltaFactor<80?.02:.01;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(scene.scaleBy(scrollNum,scrollNum),e.preventDefault())}else viewMain.onMouseWheel(e,state)})}},__name(_f,"SpreadsheetAdaptor"),_f);SpreadsheetAdaptor=__decorateClass([__decorateParam(0,core.Inject(core.LocaleService)),__decorateParam(1,core.IContextService)],SpreadsheetAdaptor);const _SpreadsheetAdaptorFactory=class _SpreadsheetAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(SpreadsheetAdaptor)}};__name(_SpreadsheetAdaptorFactory,"SpreadsheetAdaptorFactory");let SpreadsheetAdaptorFactory=_SpreadsheetAdaptorFactory;CanvasObjectProviderRegistry.add(new SpreadsheetAdaptorFactory);var SLIDE_KEY=(SLIDE_KEY2=>(SLIDE_KEY2.COMPONENT="__slideRender__",SLIDE_KEY2.SCENE="__mainScene__",SLIDE_KEY2.VIEW="__mainView__",SLIDE_KEY2))(SLIDE_KEY||{});exports2.CanvasObjectProviderRegistry=CanvasObjectProviderRegistry,exports2.ObjectAdaptor=ObjectAdaptor,exports2.SLIDE_KEY=SLIDE_KEY,exports2.SLIDE_VIEW_KEY=SLIDE_VIEW_KEY,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});
1
+ (function(global,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("@univerjs/core"),require("@univerjs/engine-render")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render"],factory):(global=typeof globalThis<"u"?globalThis:global||self,factory(global.UniverSlides={},global.UniverCore,global.UniverEngineRender))})(this,function(exports2,core,engineRender){"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);var _a,_b,_c,_d,_e,_f;const PLUGIN_CONFIG_KEY="slides.config",defaultPluginConfig={};var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");const PLUGIN_NAME="slides";exports2.UniverSlidesPlugin=(_a=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_renderManagerService,_configService){super();__publicField(this,"_canvasEngine",null);this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{...rest}=this._config;this._configService.setConfig(PLUGIN_CONFIG_KEY,rest),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}onReady(){}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(engineRender.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}_initializeDependencies(slideInjector){[].forEach(d=>{slideInjector.add(d)})}},__name(_a,"UniverSlidesPlugin"),__publicField(_a,"pluginName",PLUGIN_NAME),__publicField(_a,"type",core.UniverInstanceType.UNIVER_SLIDE),_a),exports2.UniverSlidesPlugin=__decorateClass$5([__decorateParam$5(1,core.Inject(core.Injector)),__decorateParam$5(2,engineRender.IRenderManagerService),__decorateParam$5(3,core.IConfigService)],exports2.UniverSlidesPlugin);const _ObjectAdaptor=class _ObjectAdaptor{constructor(){__publicField(this,"zIndex",0);__publicField(this,"viewKey",null)}check(type){if(type===this.viewKey)return this}create(injector){}};__name(_ObjectAdaptor,"ObjectAdaptor");let ObjectAdaptor=_ObjectAdaptor;const CanvasObjectProviderRegistry=core.Registry.create();var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");let DocsAdaptor=(_b=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",5);__publicField(this,"viewKey",core.PageElementType.DOCUMENT);__publicField(this,"_liquid",new engineRender.Liquid);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){var _a2,_b2;const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,document:documentData}=pageElement;if(documentData==null)return;const docDataModel=new core.DocumentDataModel(documentData),docViewModel=new engineRender.DocumentViewModel(docDataModel),documentSkeleton=engineRender.DocumentSkeleton.create(docViewModel,this._localeService),documents=new engineRender.Documents("__DocsRender__",documentSkeleton);documentSkeleton.calculate();const sv=new engineRender.SceneViewer("__DocsViewer__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY}),scene=new engineRender.Scene("__DocsScene__"+id,sv),viewMain=new engineRender.Viewport("__DocsViewPort_"+id,scene,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});scene.attachControl(),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.2:deltaFactor<80?.4:.2;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(e.deltaY>0,e.preventDefault())}else viewMain.onMouseWheel(e,state)}),new engineRender.ScrollBar(viewMain,{mainScene}),scene.addObject(documents);const size=documentSkeleton.getActualSize();documents.resize(size.actualWidth,size.actualHeight),scene.resize(size.actualWidth,size.actualHeight+200),(_a2=documents.getSkeleton())==null||_a2.getPageSize(),documents.pageRender$.subscribe(config=>{const{page,pageLeft,pageTop,ctx}=config;ctx.save(),ctx.translate(pageLeft-.5,pageTop-.5),ctx.restore()});const{left:docsLeft,top:docsTop}=documents,skeletonData=documentSkeleton.getSkeletonData();if(skeletonData==null)return;const{pages}=skeletonData,objectList=[],pageMarginCache=new Map;this._recalculateSizeBySkeleton(documents,scene,documentSkeleton);for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{skeDrawings,marginLeft,marginTop,pageWidth,pageHeight}=page;this._liquid.translatePagePadding(page),skeDrawings.forEach(drawing=>{const{aLeft,aTop,height:height2,width:width2,drawingOrigin}=drawing,rect=new engineRender.Image(drawing.drawingId,{left:aLeft+docsLeft+this._liquid.x,top:aTop+docsTop+this._liquid.y,width:width2,height:height2,zIndex:11});pageMarginCache.set(drawing.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),objectList.push(rect)}),this._liquid.translatePage(page,documents.pageLayoutType,documents.pageMarginLeft,documents.pageMarginTop)}return scene.addObjects(objectList),objectList.forEach(object=>{scene.attachTransformerTo(object)}),(_b2=scene.getTransformer())==null||_b2.changing$.subscribe(state=>{const{objects}=state;objects.forEach(object=>{const{oKey,left:left2,top:top2,height:height2,width:width2}=object,cache=pageMarginCache.get(oKey),marginLeft=(cache==null?void 0:cache.marginLeft)||0,marginTop=(cache==null?void 0:cache.marginTop)||0;documentSkeleton==null||documentSkeleton.getViewModel().getDataModel().updateDrawing(oKey,{left:left2-docsLeft-marginLeft,top:top2-docsTop-marginTop,height:height2,width:width2})}),documentSkeleton==null||documentSkeleton.calculate()}),this._calculatePagePosition(documents,scene,viewMain),sv}_recalculateSizeBySkeleton(docsComponent,scene,skeleton){var _a2;const pages=(_a2=skeleton.getSkeletonData())==null?void 0:_a2.pages;if(pages==null)return;let width=0,height=0;for(let i=0,len=pages.length;i<len;i++){const page=pages[i],{pageWidth,pageHeight}=page;docsComponent.pageLayoutType===engineRender.PageLayoutType.VERTICAL?(height+=pageHeight,height+=docsComponent.pageMarginTop,i===len-1&&(height+=docsComponent.pageMarginTop),width=Math.max(width,pageWidth)):docsComponent.pageLayoutType===engineRender.PageLayoutType.HORIZONTAL&&(width+=pageWidth,i!==len-1&&(width+=docsComponent.pageMarginLeft),height=Math.max(height,pageHeight))}docsComponent.resize(width,height),scene.resize(width,height)}_calculatePagePosition(docsComponent,scene,viewport,zoomRatio=1){const parent=scene==null?void 0:scene.getParent(),{width:docsWidth,height:docsHeight,pageMarginLeft,pageMarginTop}=docsComponent;if(parent==null||docsWidth===Number.POSITIVE_INFINITY||docsHeight===Number.POSITIVE_INFINITY)return;const{width:engineWidth,height:engineHeight}=parent;let docsLeft=0,docsTop=0,sceneWidth=0,sceneHeight=0,scrollToX=Number.POSITIVE_INFINITY;if(engineWidth>(docsWidth+pageMarginLeft*2)*zoomRatio?(docsLeft=engineWidth/2-docsWidth*zoomRatio/2,docsLeft/=zoomRatio,sceneWidth=(engineWidth-pageMarginLeft*2)/zoomRatio,scrollToX=0):(docsLeft=pageMarginLeft,sceneWidth=docsWidth+pageMarginLeft*2,scrollToX=(sceneWidth-engineWidth/zoomRatio)/2),engineHeight>docsHeight?(docsTop=engineHeight/2-docsHeight/2,sceneHeight=(engineHeight-pageMarginTop*2)/zoomRatio):(docsTop=pageMarginTop,sceneHeight=docsHeight+pageMarginTop*2),scene.resize(sceneWidth,sceneHeight+200),docsComponent.translate(docsLeft,docsTop),scrollToX!==Number.POSITIVE_INFINITY&&viewport!=null){const actualX=viewport.transScroll2ViewportScrollValue(scrollToX,0).x;viewport.scrollToBarPos({x:actualX})}return this}},__name(_b,"DocsAdaptor"),_b);DocsAdaptor=__decorateClass$4([__decorateParam$4(0,core.Inject(core.LocaleService))],DocsAdaptor);const _DocsAdaptorFactory=class _DocsAdaptorFactory{constructor(){__publicField(this,"zIndex",5)}create(injector){return injector.createInstance(DocsAdaptor)}};__name(_DocsAdaptorFactory,"DocsAdaptorFactory");let DocsAdaptorFactory=_DocsAdaptorFactory;CanvasObjectProviderRegistry.add(new DocsAdaptorFactory);const _ImageAdaptor=class _ImageAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",1);__publicField(this,"viewKey",core.PageElementType.IMAGE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,image={}}=pageElement,{imageProperties,placeholder,link}=image,contentUrl=(imageProperties==null?void 0:imageProperties.contentUrl)||"";return new engineRender.Image(id,{url:contentUrl,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0})}};__name(_ImageAdaptor,"ImageAdaptor");let ImageAdaptor=_ImageAdaptor;const _ImageAdaptorFactory=class _ImageAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(ImageAdaptor)}};__name(_ImageAdaptorFactory,"ImageAdaptorFactory");let ImageAdaptorFactory=_ImageAdaptorFactory;CanvasObjectProviderRegistry.add(new ImageAdaptorFactory);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");let RichTextAdaptor=(_c=class extends ObjectAdaptor{constructor(_localeService){super();__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.TEXT);this._localeService=_localeService}check(type){if(type===this.viewKey)return this}convert(pageElement,_mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,richText={}}=pageElement,{text,ff,fs,it,bl,ul,st,ol,bg,bd,cl,rich}=richText;let config={top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0},isNotNull=!1;if(text!=null?(config={...config,text,ff,fs,it,bl,ul,st,ol,bg,bd,cl},isNotNull=!0):rich!=null&&(config={...config,richText:rich},isNotNull=!0),isNotNull!==!1)return new engineRender.RichText(this._localeService,id,config)}},__name(_c,"RichTextAdaptor"),_c);RichTextAdaptor=__decorateClass$3([__decorateParam$3(0,core.Inject(core.LocaleService))],RichTextAdaptor);const _RichTextAdaptorFactory=class _RichTextAdaptorFactory{constructor(){__publicField(this,"zIndex",0)}create(injector){return injector.createInstance(RichTextAdaptor)}};__name(_RichTextAdaptorFactory,"RichTextAdaptorFactory");let RichTextAdaptorFactory=_RichTextAdaptorFactory;CanvasObjectProviderRegistry.add(new RichTextAdaptorFactory);const _ShapeAdaptor=class _ShapeAdaptor extends ObjectAdaptor{constructor(){super(...arguments);__publicField(this,"zIndex",2);__publicField(this,"viewKey",core.PageElementType.SHAPE)}check(type){if(type===this.viewKey)return this}convert(pageElement){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description}=pageElement,{shapeType,text,shapeProperties,placeholder,link}=pageElement.shape||{},fill=shapeProperties==null?"":core.getColorStyle(shapeProperties.shapeBackgroundFill)||"rgba(255,255,255,1)",outline=shapeProperties==null?void 0:shapeProperties.outline,strokeStyle={};if(outline){const{outlineFill,weight}=outline;strokeStyle.strokeWidth=weight,strokeStyle.stroke=core.getColorStyle(outlineFill)||"rgba(0,0,0,1)"}if(shapeType===core.BasicShapes.Rect)return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,...strokeStyle});if(shapeType===core.BasicShapes.RoundRect){const radius=(shapeProperties==null?void 0:shapeProperties.radius)||0;return new engineRender.Rect(id,{fill,top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0,radius,...strokeStyle})}}};__name(_ShapeAdaptor,"ShapeAdaptor");let ShapeAdaptor=_ShapeAdaptor;const _ShapeAdaptorFactory=class _ShapeAdaptorFactory{constructor(){__publicField(this,"zIndex",2)}create(injector){return injector.createInstance(ShapeAdaptor)}};__name(_ShapeAdaptorFactory,"ShapeAdaptorFactory");let ShapeAdaptorFactory=_ShapeAdaptorFactory;CanvasObjectProviderRegistry.add(new ShapeAdaptorFactory);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2");exports2.ObjectProvider=(_d=class{constructor(_injector){__publicField(this,"_adaptors",[]);this._injector=_injector,this._adaptorLoader()}convertToRenderObjects(pageElements,mainScene){const pageKeys=Object.keys(pageElements),objects=[];return pageKeys.forEach(key=>{const pageElement=pageElements[key],o=this._executor(pageElement,mainScene);o!=null&&objects.push(o)}),objects}convertToRenderObject(pageElement,mainScene){return this._executor(pageElement,mainScene)}_executor(pageElement,mainScene){var _a2;const{id:pageElementId,type}=pageElement;for(const adaptor of this._adaptors){const o=(_a2=adaptor.check(type))==null?void 0:_a2.convert(pageElement,mainScene);if(o!=null)return o}}_adaptorLoader(){CanvasObjectProviderRegistry.getData().sort(core.sortRules).forEach(adaptorFactory=>{this._adaptors.push(adaptorFactory.create(this._injector))})}},__name(_d,"ObjectProvider"),_d),exports2.ObjectProvider=__decorateClass$2([__decorateParam$2(0,core.Inject(core.Injector))],exports2.ObjectProvider);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),SLIDE_VIEW_KEY=(SLIDE_VIEW_KEY2=>(SLIDE_VIEW_KEY2.MAIN="__SLIDERender__",SLIDE_VIEW_KEY2.SCENE_VIEWER="__SLIDEViewer__",SLIDE_VIEW_KEY2.SCENE="__SLIDEScene__",SLIDE_VIEW_KEY2.VIEWPORT="__SLIDEViewPort_",SLIDE_VIEW_KEY2))(SLIDE_VIEW_KEY||{});let SlideAdaptor=(_e=class extends ObjectAdaptor{constructor(_injector){super();__publicField(this,"zIndex",6);__publicField(this,"viewKey",core.PageElementType.SLIDE);__publicField(this,"_ObjectProvider",null);this._injector=_injector}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,title,description,slide:slideData}=pageElement;if(slideData==null)return;const model=new core.SlideDataModel(slideData),slideComponent=new engineRender.Slide("__SLIDERender__"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0});slideComponent.enableNav(),slideComponent.enableSelectedClipElement();const pageOrder=model.getPageOrder(),pages=model.getPages();if(!pageOrder||!pages)return slideComponent;this._ObjectProvider=new exports2.ObjectProvider(this._injector);for(let i=0,len=pageOrder.length;i<len;i++){const page=pages[pageOrder[i]],{id:id2}=page;slideComponent.addPageScene(this._createScene(id2,slideComponent,page,mainScene,model))}return slideComponent.activeFirstPage(),slideComponent}_createScene(pageId,parent,page,mainScene,model){var _a2;const{width,height}=parent,scene=new engineRender.Scene(pageId,parent,{width,height});new engineRender.Viewport(`PageViewer_${pageId}`,scene,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1}).closeClip();const{pageElements,pageBackgroundFill}=page,objects=(_a2=this._ObjectProvider)==null?void 0:_a2.convertToRenderObjects(pageElements,mainScene);return this._addBackgroundRect(scene,pageBackgroundFill,model),scene.addObjects(objects),objects==null||objects.forEach(object=>{scene.attachTransformerTo(object)}),scene}_addBackgroundRect(scene,fill,model){const pageSize=model.getPageSize(),{width:pageWidth=0,height:pageHeight=0}=pageSize,page=new engineRender.Rect("canvas",{left:0,top:0,width:pageWidth,height:pageHeight,strokeWidth:1,stroke:"rgba(198,198,198, 1)",fill:core.getColorStyle(fill)||"rgba(255,255,255, 1)",zIndex:0,evented:!1});scene.addObject(page,0)}},__name(_e,"SlideAdaptor"),_e);SlideAdaptor=__decorateClass$1([__decorateParam$1(0,core.Inject(core.Injector))],SlideAdaptor);const _SlideAdaptorFactory=class _SlideAdaptorFactory{constructor(){__publicField(this,"zIndex",6)}create(injector){return injector.createInstance(SlideAdaptor)}};__name(_SlideAdaptorFactory,"SlideAdaptorFactory");let SlideAdaptorFactory=_SlideAdaptorFactory;CanvasObjectProviderRegistry.add(new SlideAdaptorFactory);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam");let SpreadsheetAdaptor=(_f=class extends ObjectAdaptor{constructor(_localeService,_contextService){super();__publicField(this,"zIndex",4);__publicField(this,"viewKey",core.PageElementType.SPREADSHEET);this._localeService=_localeService,this._contextService=_contextService}check(type){if(type===this.viewKey)return this}convert(pageElement,mainScene){const{id,zIndex,left=0,top=0,width,height,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,spreadsheet:spreadsheetModel}=pageElement;if(spreadsheetModel==null)return;const{worksheet,styles}=spreadsheetModel,{cellData}=worksheet,cellDataMatrix=new core.ObjectMatrix(cellData),styleModel=new core.Styles(styles),spreadsheetSkeleton=new engineRender.SpreadsheetSkeleton(new core.Worksheet(id,worksheet,styleModel),worksheet,cellDataMatrix,styleModel,this._localeService,this._contextService),{rowTotalHeight,columnTotalWidth,rowHeaderWidth,columnHeaderHeight}=spreadsheetSkeleton,allWidth=columnTotalWidth+worksheet.rowHeader.width||0,allHeight=rowTotalHeight+worksheet.columnHeader.height||0,sv=new engineRender.SceneViewer("spreadInSlideSceneViewer"+id,{top,left,width,height,zIndex,angle,scaleX,scaleY,skewX,skewY,flipX,flipY,forceRender:!0}),scene=new engineRender.Scene("spreadInSlideScene"+id,sv,{width:allWidth,height:allHeight});this._updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene);const spreadsheet=new engineRender.Spreadsheet("testSheetViewer",spreadsheetSkeleton,!1),spreadsheetRowHeader=new engineRender.SpreadsheetRowHeader("spreadInSlideRow",spreadsheetSkeleton),spreadsheetColumnHeader=new engineRender.SpreadsheetColumnHeader("spreadInSlideColumn",spreadsheetSkeleton),SpreadsheetLeftTopPlaceholder=new engineRender.Rect("spreadInSlideLeftTop",{zIndex:2,left:-1,top:-1,width:rowHeaderWidth,height:columnHeaderHeight,fill:engineRender.getColor([248,249,250]),stroke:engineRender.getColor([217,217,217]),strokeWidth:1});return spreadsheet.zIndex=10,scene.addObjects([spreadsheet],1),scene.addObjects([spreadsheetRowHeader,spreadsheetColumnHeader,SpreadsheetLeftTopPlaceholder],2),sv}_updateViewport(id,rowHeaderWidth,columnHeaderHeight,scene,mainScene){if(mainScene==null)return;const rowHeaderWidthScale=rowHeaderWidth*scene.scaleX,columnHeaderHeightScale=columnHeaderHeight*scene.scaleY,viewMain=new engineRender.Viewport("spreadInSlideViewMain"+id,scene,{left:rowHeaderWidthScale,top:columnHeaderHeightScale,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0}),viewTop=new engineRender.Viewport("spreadInSlideViewTop"+id,scene,{left:rowHeaderWidthScale,height:columnHeaderHeightScale,top:0,right:0,explicitViewportWidthSet:!1,isWheelPreventDefaultX:!0}),viewLeft=new engineRender.Viewport("spreadInSlideViewLeft"+id,scene,{left:0,bottom:0,top:columnHeaderHeightScale,width:rowHeaderWidthScale,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});new engineRender.Viewport("spreadInSlideViewLeftTop"+id,scene,{left:0,top:0,width:rowHeaderWidthScale,height:columnHeaderHeightScale,isWheelPreventDefaultX:!0}),viewMain.onScrollAfter$.subscribeEvent(param=>{const{scrollX,scrollY,viewportScrollX,viewportScrollY}=param;viewTop.updateScrollVal({scrollX,viewportScrollX}),viewLeft.updateScrollVal({scrollY,viewportScrollY})}),scene.attachControl(),new engineRender.ScrollBar(viewMain,{mainScene}),scene.onMouseWheel$.subscribeEvent((evt,state)=>{const e=evt;if(e.ctrlKey){const deltaFactor=Math.abs(e.deltaX);let scrollNum=deltaFactor<40?.05:deltaFactor<80?.02:.01;scrollNum*=e.deltaY>0?-1:1,scene.scaleX<1&&(scrollNum/=2),scene.scaleX+scrollNum>4?scene.scale(4,4):scene.scaleX+scrollNum<.1?scene.scale(.1,.1):(scene.scaleBy(scrollNum,scrollNum),e.preventDefault())}else viewMain.onMouseWheel(e,state)})}},__name(_f,"SpreadsheetAdaptor"),_f);SpreadsheetAdaptor=__decorateClass([__decorateParam(0,core.Inject(core.LocaleService)),__decorateParam(1,core.IContextService)],SpreadsheetAdaptor);const _SpreadsheetAdaptorFactory=class _SpreadsheetAdaptorFactory{constructor(){__publicField(this,"zIndex",4)}create(injector){return injector.createInstance(SpreadsheetAdaptor)}};__name(_SpreadsheetAdaptorFactory,"SpreadsheetAdaptorFactory");let SpreadsheetAdaptorFactory=_SpreadsheetAdaptorFactory;CanvasObjectProviderRegistry.add(new SpreadsheetAdaptorFactory);var SLIDE_KEY=(SLIDE_KEY2=>(SLIDE_KEY2.COMPONENT="__slideRender__",SLIDE_KEY2.SCENE="__mainScene__",SLIDE_KEY2.VIEW="__mainView__",SLIDE_KEY2))(SLIDE_KEY||{});exports2.CanvasObjectProviderRegistry=CanvasObjectProviderRegistry,exports2.ObjectAdaptor=ObjectAdaptor,exports2.SLIDE_KEY=SLIDE_KEY,exports2.SLIDE_VIEW_KEY=SLIDE_VIEW_KEY,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/slides",
3
- "version": "0.2.11",
3
+ "version": "0.2.13",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -46,17 +46,19 @@
46
46
  "lib"
47
47
  ],
48
48
  "peerDependencies": {
49
- "@univerjs/core": "0.2.11",
50
- "@univerjs/engine-render": "0.2.11"
49
+ "@univerjs/core": "0.2.13",
50
+ "@univerjs/engine-render": "0.2.13"
51
+ },
52
+ "dependencies": {
53
+ "@univerjs/engine-render": "0.2.13",
54
+ "@univerjs/core": "0.2.13"
51
55
  },
52
56
  "devDependencies": {
53
57
  "rxjs": "^7.8.1",
54
- "typescript": "^5.5.4",
55
- "vite": "^5.4.2",
58
+ "typescript": "^5.6.2",
59
+ "vite": "^5.4.4",
56
60
  "vitest": "^2.0.5",
57
- "@univerjs/engine-render": "0.2.11",
58
- "@univerjs/shared": "0.2.11",
59
- "@univerjs/core": "0.2.11"
61
+ "@univerjs-infra/shared": "0.2.13"
60
62
  },
61
63
  "univerSpace": {
62
64
  ".": {