@univerjs/slides 0.20.1 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -1 +1,1184 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@univerjs/core`),t=require(`@univerjs/engine-render`);var n=`@univerjs/slides`,r=`0.20.1`;const i=`slides.config`;Symbol(i);const a={};function o(e){"@babel/helpers - typeof";return o=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},o(e)}function s(e,t){if(o(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(o(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function c(e){var t=s(e,`string`);return o(t)==`symbol`?t:t+``}function l(e,t,n){return(t=c(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e,t){return function(n,r){t(n,r,e)}}function d(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let f=class extends e.Plugin{constructor(t=a,n,r,o){super(),this._config=t,this._injector=n,this._renderManagerService=r,this._configService=o,l(this,`_canvasEngine`,null);let{...s}=(0,e.merge)({},a,this._config);this._configService.setConfig(i,s),this._initializeDependencies(this._injector)}initialize(){this.initCanvasEngine()}onReady(){}getConfig(){return this._config}initCanvasEngine(){this._canvasEngine=this._injector.get(t.IRenderingEngine)}onRendered(){this.initialize()}getCanvasEngine(){return this._canvasEngine}_initializeDependencies(e){[].forEach(t=>{e.add(t)})}};l(f,`pluginName`,`UNIVER_SLIDES_PLUGIN`),l(f,`packageName`,n),l(f,`version`,r),l(f,`type`,e.UniverInstanceType.UNIVER_SLIDE),f=d([u(1,(0,e.Inject)(e.Injector)),u(2,t.IRenderManagerService),u(3,e.IConfigService)],f);var p=class{constructor(){l(this,`zIndex`,0),l(this,`viewKey`,null)}check(e){if(e===this.viewKey)return this}create(e){}};const m=e.Registry.create();let h=function(e){return e.MAIN=`__DocsRender__`,e.SCENE_VIEWER=`__DocsViewer__`,e.SCENE=`__DocsScene__`,e.VIEWPORT=`__DocsViewPort_`,e}({}),g=class extends p{constructor(n){super(),this._localeService=n,l(this,`zIndex`,5),l(this,`viewKey`,e.PageElementType.DOCUMENT),l(this,`_liquid`,new t.Liquid)}check(e){if(e===this.viewKey)return this}convert(n,r){var i,a;let{id:o,zIndex:s,left:c=0,top:l=0,width:u,height:d,angle:f,scaleX:p,scaleY:m,skewX:g,skewY:_,flipX:v,flipY:y,title:b,description:x,document:S}=n;if(S==null)return;let C=new t.DocumentViewModel(new e.DocumentDataModel(S)),w=t.DocumentSkeleton.create(C,this._localeService),T=new t.Documents(h.MAIN,w);w.calculate();let E=new t.SceneViewer(h.SCENE_VIEWER+o,{top:l,left:c,width:u,height:d,zIndex:s,angle:f,scaleX:p,scaleY:m,skewX:g,skewY:_,flipX:v,flipY:y}),D=new t.Scene(h.SCENE+o,E),O=new t.Viewport(h.VIEWPORT+o,D,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});D.attachControl(),D.onMouseWheel$.subscribeEvent((e,t)=>{let n=e;if(n.ctrlKey){let e=Math.abs(n.deltaX),t=e<40?.2:e<80?.4:.2;t*=n.deltaY>0?-1:1,D.scaleX<1&&(t/=2),D.scaleX+t>4?D.scale(4,4):D.scaleX+t<.1?D.scale(.1,.1):(n.deltaY,n.preventDefault())}else O.onMouseWheel(n,t)}),new t.ScrollBar(O,{mainScene:r}),D.addObject(T);let k=w.getActualSize();T.resize(k.actualWidth,k.actualHeight),D.resize(k.actualWidth,k.actualHeight+200),(i=T.getSkeleton())==null||i.getPageSize(),T.pageRender$.subscribe(e=>{let{page:t,pageLeft:n,pageTop:r,ctx:i}=e,{width:a,height:o,marginBottom:s,marginLeft:c,marginRight:l,marginTop:u}=t;i.save(),i.translate(n-.5,r-.5),i.restore()});let{left:A,top:j}=T,M=w.getSkeletonData();if(M==null)return;let{pages:N}=M,P=[],F=new Map;this._recalculateSizeBySkeleton(T,D,w);for(let e=0,n=N.length;e<n;e++){let n=N[e],{skeDrawings:r,marginLeft:i,marginTop:a,pageWidth:o,pageHeight:s}=n;this._liquid.translatePagePadding(n),r.forEach(e=>{let{aLeft:n,aTop:r,height:i,width:a,drawingOrigin:o}=e,{docTransform:s}=o,c=new t.Image(e.drawingId,{left:n+A+this._liquid.x,top:r+j+this._liquid.y,width:a,height:i,zIndex:11});F.set(e.drawingId,{marginLeft:this._liquid.x,marginTop:this._liquid.y}),P.push(c)}),this._liquid.translatePage(n,T.pageLayoutType,T.pageMarginLeft,T.pageMarginTop)}return D.addObjects(P),P.forEach(e=>{D.attachTransformerTo(e)}),(a=D.getTransformer())==null||a.changing$.subscribe(e=>{let{objects:t}=e;t.forEach(e=>{let{oKey:t,left:n,top:r,height:i,width:a}=e,o=F.get(t),s=(o==null?void 0:o.marginLeft)||0,c=(o==null?void 0:o.marginTop)||0;w==null||w.getViewModel().getDataModel().updateDrawing(t,{left:n-A-s,top:r-j-c,height:i,width:a})}),w==null||w.calculate()}),this._calculatePagePosition(T,D,O),E}_recalculateSizeBySkeleton(e,n,r){var i;let a=(i=r.getSkeletonData())==null?void 0:i.pages;if(a==null)return;let o=0,s=0;for(let n=0,r=a.length;n<r;n++){let{pageWidth:i,pageHeight:c}=a[n];e.pageLayoutType===t.PageLayoutType.VERTICAL?(s+=c,s+=e.pageMarginTop,n===r-1&&(s+=e.pageMarginTop),o=Math.max(o,i)):e.pageLayoutType===t.PageLayoutType.HORIZONTAL&&(o+=i,n!==r-1&&(o+=e.pageMarginLeft),s=Math.max(s,c))}e.resize(o,s),n.resize(o,s)}_calculatePagePosition(e,t,n,r=1){let i=t==null?void 0:t.getParent(),{width:a,height:o,pageMarginLeft:s,pageMarginTop:c}=e;if(i==null||a===1/0||o===1/0)return;let{width:l,height:u}=i,d=0,f=0,p=0,m=0,h=1/0;if(l>(a+s*2)*r?(d=l/2-a*r/2,d/=r,p=(l-s*2)/r,h=0):(d=s,p=a+s*2,h=(p-l/r)/2),u>o?(f=u/2-o/2,m=(u-c*2)/r):(f=c,m=o+c*2),t.resize(p,m+200),e.translate(d,f),h!==1/0&&n!=null){let e=n.transScroll2ViewportScrollValue(h,0).x;n.scrollToBarPos({x:e})}return this}};g=d([u(0,(0,e.Inject)(e.LocaleService))],g);var _=class{constructor(){l(this,`zIndex`,5)}create(e){return e.createInstance(g)}};m.add(new _);var v=class extends p{constructor(...t){super(...t),l(this,`zIndex`,1),l(this,`viewKey`,e.PageElementType.IMAGE)}check(e){if(e===this.viewKey)return this}convert(e){let{id:n,zIndex:r,left:i=0,top:a=0,width:o,height:s,angle:c,scaleX:l,scaleY:u,skewX:d,skewY:f,flipX:p,flipY:m,title:h,description:g,image:_={}}=e,{imageProperties:v,placeholder:y,link:b}=_;return new t.Image(n,{url:(v==null?void 0:v.contentUrl)||``,top:a,left:i,width:o,height:s,zIndex:r,angle:c,scaleX:l,scaleY:u,skewX:d,skewY:f,flipX:p,flipY:m,forceRender:!0})}},y=class{constructor(){l(this,`zIndex`,4)}create(e){return e.createInstance(v)}};m.add(new y);let b=class extends p{constructor(t){super(),this._localeService=t,l(this,`zIndex`,2),l(this,`viewKey`,e.PageElementType.TEXT)}check(e){if(e===this.viewKey)return this}convert(e,n){let{id:r,zIndex:i,left:a=0,top:o=0,width:s,height:c,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,title:g,description:_,richText:v={}}=e,{text:y,ff:b,fs:x,it:S,bl:C,ul:w,st:T,ol:E,bg:D,bd:O,cl:k,rich:A}=v,j={top:o,left:a,width:s,height:c,zIndex:i,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,forceRender:!0},M=!1;if(y==null?A!=null&&(j={...j,richText:A},M=!0):(j={...j,text:y,ff:b,fs:x,it:S,bl:C,ul:w,st:T,ol:E,bg:D,bd:O,cl:k},M=!0),M!==!1)return new t.RichText(this._localeService,r,j)}};b=d([u(0,(0,e.Inject)(e.LocaleService))],b);var x=class{constructor(){l(this,`zIndex`,0)}create(e){return e.createInstance(b)}};m.add(new x);var S=class extends p{constructor(...t){super(...t),l(this,`zIndex`,2),l(this,`viewKey`,e.PageElementType.SHAPE)}check(e){if(e===this.viewKey)return this}convert(n){let{id:r,zIndex:i,left:a=0,top:o=0,width:s,height:c,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,title:g,description:_}=n,{shapeType:v,text:y,shapeProperties:b,placeholder:x,link:S}=n.shape||{},C=b==null?``:(0,e.getColorStyle)(b.shapeBackgroundFill)||`rgba(255,255,255,1)`,w=b==null?void 0:b.outline,T={};if(w){let{outlineFill:t,weight:n}=w;T.strokeWidth=n,T.stroke=(0,e.getColorStyle)(t)||`rgba(0,0,0,1)`}if(v===e.BasicShapes.Rect)return new t.Rect(r,{fill:C,top:o,left:a,width:s,height:c,zIndex:i,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,forceRender:!0,...T});if(v===e.BasicShapes.RoundRect)return new t.Rect(r,{fill:C,top:o,left:a,width:s,height:c,zIndex:i,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,forceRender:!0,radius:(b==null?void 0:b.radius)||0,...T});if(v===e.BasicShapes.Ellipse)return console.warn(b==null?void 0:b.radius),new t.Circle(r,{fill:C,top:o,left:a,width:s,height:c,zIndex:i,angle:l,scaleX:u,scaleY:d,skewX:f,skewY:p,flipX:m,flipY:h,forceRender:!0,radius:(b==null?void 0:b.radius)||0,...T})}},C=class{constructor(){l(this,`zIndex`,2)}create(e){return e.createInstance(S)}};m.add(new C);let w=class{constructor(e){this._injector=e,l(this,`_adaptors`,[]),this._adaptorLoader()}convertToRenderObjects(e,t){let n=Object.keys(e),r=[];return n.forEach(n=>{let i=e[n],a=this._executor(i,t);a!=null&&r.push(a)}),r}convertToRenderObject(e,t){return this._executor(e,t)}_executor(e,t){let{id:n,type:r}=e;for(let n of this._adaptors){var i;let a=(i=n.check(r))==null?void 0:i.convert(e,t);if(a!=null)return a}}_adaptorLoader(){m.getData().sort(e.sortRules).forEach(e=>{this._adaptors.push(e.create(this._injector))})}};w=d([u(0,(0,e.Inject)(e.Injector))],w);let T=function(e){return e.MAIN=`__SLIDERender__`,e.SCENE_VIEWER=`__SLIDEViewer__`,e.SCENE=`__SLIDEScene__`,e.VIEWPORT=`__SLIDEViewPort_`,e}({}),E=class extends p{constructor(t){super(),this._injector=t,l(this,`zIndex`,6),l(this,`viewKey`,e.PageElementType.SLIDE),l(this,`_ObjectProvider`,null)}check(e){if(e===this.viewKey)return this}convert(n,r){let{id:i,zIndex:a,left:o=0,top:s=0,width:c,height:l,angle:u,scaleX:d,scaleY:f,skewX:p,skewY:m,flipX:h,flipY:g,title:_,description:v,slide:y}=n;if(y==null)return;let b=new e.SlideDataModel(y),x=new t.Slide(T.MAIN+i,{top:s,left:o,width:c,height:l,zIndex:a,angle:u,scaleX:d,scaleY:f,skewX:p,skewY:m,flipX:h,flipY:g,forceRender:!0});x.enableNav(),x.enableSelectedClipElement();let S=b.getPageOrder(),C=b.getPages();if(!S||!C)return x;this._ObjectProvider=new w(this._injector);for(let e=0,t=S.length;e<t;e++){let t=C[S[e]],{id:n}=t;x.addPageScene(this._createScene(n,x,t,r,b))}return x.activeFirstPage(),x}_createScene(e,n,r,i,a){var o;let{width:s,height:c}=n,l=new t.Scene(e,n,{width:s,height:c});new t.Viewport(`PageViewer_${e}`,l,{left:0,top:0,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1}).closeClip();let{pageElements:u,pageBackgroundFill:d}=r,f=(o=this._ObjectProvider)==null?void 0:o.convertToRenderObjects(u,i);return this._addBackgroundRect(l,d,a),l.addObjects(f),f==null||f.forEach(e=>{l.attachTransformerTo(e)}),l}_addBackgroundRect(n,r,i){let{width:a=0,height:o=0}=i.getPageSize(),s=new t.Rect(`canvas`,{left:0,top:0,width:a,height:o,strokeWidth:1,stroke:`rgba(198,198,198, 1)`,fill:(0,e.getColorStyle)(r)||`rgba(255,255,255, 1)`,zIndex:0,evented:!1});n.addObject(s,0)}};E=d([u(0,(0,e.Inject)(e.Injector))],E);var D=class{constructor(){l(this,`zIndex`,6)}create(e){return e.createInstance(E)}};m.add(new D);var O=function(e){return e.MAIN=`spreadInSlide`,e.SCENE=`spreadInSlideScene`,e.SCENE_VIEWER=`spreadInSlideSceneViewer`,e.ROW=`spreadInSlideRow`,e.COLUMN=`spreadInSlideColumn`,e.LEFT_TOP=`spreadInSlideLeftTop`,e.VIEW_MAIN=`spreadInSlideViewMain`,e.VIEW_TOP=`spreadInSlideViewTop`,e.VIEW_LEFT=`spreadInSlideViewLeft`,e.VIEW_LEFT_TOP=`spreadInSlideViewLeftTop`,e}(O||{});let k=class extends p{constructor(t,n,r,i){super(),this._localeService=t,this._contextService=n,this._configService=r,this._injector=i,l(this,`zIndex`,4),l(this,`viewKey`,e.PageElementType.SPREADSHEET)}check(e){if(e===this.viewKey)return this}convert(n,r){let{id:i,zIndex:a,left:o=0,top:s=0,width:c,height:l,angle:u,scaleX:d,scaleY:f,skewX:p,skewY:m,flipX:h,flipY:g,spreadsheet:_}=n;if(_==null)return;let{worksheet:v,styles:y}=_,b=new e.Styles(y),x=new t.SpreadsheetSkeleton(new e.Worksheet(i,v,b),b,this._localeService,this._contextService,this._configService,this._injector),{rowTotalHeight:S,columnTotalWidth:C,rowHeaderWidth:w,columnHeaderHeight:T}=x,E=C+v.rowHeader.width||0,D=S+v.columnHeader.height||0,k=new t.SceneViewer(O.SCENE_VIEWER+i,{top:s,left:o,width:c,height:l,zIndex:a,angle:u,scaleX:d,scaleY:f,skewX:p,skewY:m,flipX:h,flipY:g,forceRender:!0}),A=new t.Scene(O.SCENE+i,k,{width:E,height:D});this._updateViewport(i,w,T,A,r);let j=new t.Spreadsheet(`testSheetViewer`,x,!1),M=new t.SpreadsheetRowHeader(O.ROW,x),N=new t.SpreadsheetColumnHeader(O.COLUMN,x),P=new t.Rect(O.LEFT_TOP,{zIndex:2,left:-1,top:-1,width:w,height:T,fill:(0,t.getColor)([248,249,250]),stroke:(0,t.getColor)([217,217,217]),strokeWidth:1});return j.zIndex=10,A.addObjects([j],1),A.addObjects([M,N,P],2),k}_updateViewport(e,n,r,i,a){if(a==null)return;let o=n*i.scaleX,s=r*i.scaleY,c=new t.Viewport(O.VIEW_MAIN+e,i,{left:o,top:s,bottom:0,right:0,explicitViewportWidthSet:!1,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0}),l=new t.Viewport(O.VIEW_TOP+e,i,{left:o,height:s,top:0,right:0,explicitViewportWidthSet:!1,isWheelPreventDefaultX:!0}),u=new t.Viewport(O.VIEW_LEFT+e,i,{left:0,bottom:0,top:s,width:o,explicitViewportHeightSet:!1,isWheelPreventDefaultX:!0});new t.Viewport(O.VIEW_LEFT_TOP+e,i,{left:0,top:0,width:o,height:s,isWheelPreventDefaultX:!0}),c.onScrollAfter$.subscribeEvent(e=>{let{scrollX:t,scrollY:n,viewportScrollX:r,viewportScrollY:i}=e;l.updateScrollVal({scrollX:t,viewportScrollX:r}),u.updateScrollVal({scrollY:n,viewportScrollY:i})}),i.attachControl(),new t.ScrollBar(c,{mainScene:a}),i.onMouseWheel$.subscribeEvent((e,t)=>{let n=e;if(n.ctrlKey){let e=Math.abs(n.deltaX),t=e<40?.05:e<80?.02:.01;t*=n.deltaY>0?-1:1,i.scaleX<1&&(t/=2),i.scaleX+t>4?i.scale(4,4):i.scaleX+t<.1?i.scale(.1,.1):(i.scaleBy(t,t),n.preventDefault())}else c.onMouseWheel(n,t)})}};k=d([u(0,(0,e.Inject)(e.LocaleService)),u(1,e.IContextService),u(2,e.IConfigService),u(3,(0,e.Inject)(e.Injector))],k);var A=class{constructor(){l(this,`zIndex`,4)}create(e){return e.createInstance(k)}};m.add(new A);let j=function(e){return e.COMPONENT=`__slideRender__`,e.SCENE=`__mainScene__`,e.VIEW=`__mainView__`,e}({});exports.CanvasObjectProviderRegistry=m,exports.ObjectAdaptor=p,Object.defineProperty(exports,`ObjectProvider`,{enumerable:!0,get:function(){return w}}),exports.SLIDE_KEY=j,exports.SLIDE_VIEW_KEY=T,Object.defineProperty(exports,`UniverSlidesPlugin`,{enumerable:!0,get:function(){return f}});
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ let _univerjs_core = require("@univerjs/core");
3
+ let rxjs = require("rxjs");
4
+ let _univerjs_engine_render = require("@univerjs/engine-render");
5
+
6
+ //#region src/basics/const/default-slide.ts
7
+ /**
8
+ * Copyright 2023-present DreamNum Co., Ltd.
9
+ *
10
+ * Licensed under the Apache License, Version 2.0 (the "License");
11
+ * you may not use this file except in compliance with the License.
12
+ * You may obtain a copy of the License at
13
+ *
14
+ * http://www.apache.org/licenses/LICENSE-2.0
15
+ *
16
+ * Unless required by applicable law or agreed to in writing, software
17
+ * distributed under the License is distributed on an "AS IS" BASIS,
18
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ * See the License for the specific language governing permissions and
20
+ * limitations under the License.
21
+ */
22
+ const DEFAULT_SLIDE = {
23
+ id: "default_slide",
24
+ title: "defaultSlide",
25
+ pageSize: {
26
+ width: 300,
27
+ height: 300
28
+ }
29
+ };
30
+
31
+ //#endregion
32
+ //#region src/types/interfaces/i-slide-data.ts
33
+ let PageType = /* @__PURE__ */ function(PageType) {
34
+ PageType[PageType["SLIDE"] = 0] = "SLIDE";
35
+ PageType[PageType["MASTER"] = 1] = "MASTER";
36
+ PageType[PageType["LAYOUT"] = 2] = "LAYOUT";
37
+ PageType[PageType["HANDOUT_MASTER"] = 3] = "HANDOUT_MASTER";
38
+ PageType[PageType["NOTES_MASTER"] = 4] = "NOTES_MASTER";
39
+ return PageType;
40
+ }({});
41
+ let PageElementType = /* @__PURE__ */ function(PageElementType) {
42
+ PageElementType[PageElementType["SHAPE"] = 0] = "SHAPE";
43
+ PageElementType[PageElementType["IMAGE"] = 1] = "IMAGE";
44
+ PageElementType[PageElementType["TEXT"] = 2] = "TEXT";
45
+ PageElementType[PageElementType["SPREADSHEET"] = 3] = "SPREADSHEET";
46
+ PageElementType[PageElementType["DOCUMENT"] = 4] = "DOCUMENT";
47
+ PageElementType[PageElementType["SLIDE"] = 5] = "SLIDE";
48
+ return PageElementType;
49
+ }({});
50
+ let RelativeSlideLink = /* @__PURE__ */ function(RelativeSlideLink) {
51
+ RelativeSlideLink[RelativeSlideLink["RELATIVE_SLIDE_LINK_UNSPECIFIED"] = 0] = "RELATIVE_SLIDE_LINK_UNSPECIFIED";
52
+ RelativeSlideLink[RelativeSlideLink["NEXT_SLIDE"] = 1] = "NEXT_SLIDE";
53
+ RelativeSlideLink[RelativeSlideLink["PREVIOUS_SLIDE"] = 2] = "PREVIOUS_SLIDE";
54
+ RelativeSlideLink[RelativeSlideLink["FIRST_SLIDE"] = 3] = "FIRST_SLIDE";
55
+ RelativeSlideLink[RelativeSlideLink["LAST_SLIDE"] = 4] = "LAST_SLIDE";
56
+ return RelativeSlideLink;
57
+ }({});
58
+
59
+ //#endregion
60
+ //#region \0@oxc-project+runtime@0.124.0/helpers/typeof.js
61
+ function _typeof(o) {
62
+ "@babel/helpers - typeof";
63
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
64
+ return typeof o;
65
+ } : function(o) {
66
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
67
+ }, _typeof(o);
68
+ }
69
+
70
+ //#endregion
71
+ //#region \0@oxc-project+runtime@0.124.0/helpers/toPrimitive.js
72
+ function toPrimitive(t, r) {
73
+ if ("object" != _typeof(t) || !t) return t;
74
+ var e = t[Symbol.toPrimitive];
75
+ if (void 0 !== e) {
76
+ var i = e.call(t, r || "default");
77
+ if ("object" != _typeof(i)) return i;
78
+ throw new TypeError("@@toPrimitive must return a primitive value.");
79
+ }
80
+ return ("string" === r ? String : Number)(t);
81
+ }
82
+
83
+ //#endregion
84
+ //#region \0@oxc-project+runtime@0.124.0/helpers/toPropertyKey.js
85
+ function toPropertyKey(t) {
86
+ var i = toPrimitive(t, "string");
87
+ return "symbol" == _typeof(i) ? i : i + "";
88
+ }
89
+
90
+ //#endregion
91
+ //#region \0@oxc-project+runtime@0.124.0/helpers/defineProperty.js
92
+ function _defineProperty(e, r, t) {
93
+ return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
94
+ value: t,
95
+ enumerable: !0,
96
+ configurable: !0,
97
+ writable: !0
98
+ }) : e[r] = t, e;
99
+ }
100
+
101
+ //#endregion
102
+ //#region src/data-model/slide-data-model.ts
103
+ var SlideDataModel = class extends _univerjs_core.UnitModel {
104
+ get _activePage() {
105
+ const activePage = this._activePage$.getValue();
106
+ if (!activePage) {
107
+ var _this$getPageOrder, _this$getPages;
108
+ const activePageId = (_this$getPageOrder = this.getPageOrder()) === null || _this$getPageOrder === void 0 ? void 0 : _this$getPageOrder[0];
109
+ if (!activePageId) return null;
110
+ return (_this$getPages = this.getPages()) === null || _this$getPages === void 0 ? void 0 : _this$getPages[activePageId];
111
+ }
112
+ return activePage;
113
+ }
114
+ constructor(snapshot) {
115
+ var _this$_snapshot$id;
116
+ super();
117
+ _defineProperty(this, "type", _univerjs_core.UniverInstanceType.UNIVER_SLIDE);
118
+ _defineProperty(this, "_activePage$", new rxjs.BehaviorSubject(null));
119
+ _defineProperty(this, "activePage$", this._activePage$.asObservable());
120
+ _defineProperty(this, "_name$", void 0);
121
+ _defineProperty(this, "name$", void 0);
122
+ _defineProperty(this, "_snapshot", void 0);
123
+ _defineProperty(this, "_unitId", void 0);
124
+ this._snapshot = {
125
+ ...DEFAULT_SLIDE,
126
+ ...snapshot
127
+ };
128
+ this._unitId = (_this$_snapshot$id = this._snapshot.id) !== null && _this$_snapshot$id !== void 0 ? _this$_snapshot$id : (0, _univerjs_core.generateRandomId)(6);
129
+ this._name$ = new rxjs.BehaviorSubject(this._snapshot.title);
130
+ this.name$ = this._name$.asObservable();
131
+ }
132
+ setName(name) {
133
+ var _this$_snapshot$id2;
134
+ this._snapshot.title = name;
135
+ this._name$.next(name);
136
+ this._unitId = (_this$_snapshot$id2 = this._snapshot.id) !== null && _this$_snapshot$id2 !== void 0 ? _this$_snapshot$id2 : (0, _univerjs_core.generateRandomId)(6);
137
+ }
138
+ getRev() {
139
+ return 0;
140
+ }
141
+ incrementRev() {}
142
+ setRev(_rev) {}
143
+ getSnapshot() {
144
+ return this._snapshot;
145
+ }
146
+ getUnitId() {
147
+ return this._unitId;
148
+ }
149
+ getPages() {
150
+ var _this$_snapshot$body;
151
+ return (_this$_snapshot$body = this._snapshot.body) === null || _this$_snapshot$body === void 0 ? void 0 : _this$_snapshot$body.pages;
152
+ }
153
+ getPageOrder() {
154
+ var _this$_snapshot$body2;
155
+ return (_this$_snapshot$body2 = this._snapshot.body) === null || _this$_snapshot$body2 === void 0 ? void 0 : _this$_snapshot$body2.pageOrder;
156
+ }
157
+ getPage(pageId) {
158
+ const pages = this.getPages();
159
+ return pages === null || pages === void 0 ? void 0 : pages[pageId];
160
+ }
161
+ getElementsByPage(pageId) {
162
+ var _this$getPage;
163
+ return (_this$getPage = this.getPage(pageId)) === null || _this$getPage === void 0 ? void 0 : _this$getPage.pageElements;
164
+ }
165
+ getElement(pageId, elementId) {
166
+ var _this$getElementsByPa;
167
+ return (_this$getElementsByPa = this.getElementsByPage(pageId)) === null || _this$getElementsByPa === void 0 ? void 0 : _this$getElementsByPa[elementId];
168
+ }
169
+ getPageSize() {
170
+ return this._snapshot.pageSize;
171
+ }
172
+ getBlankPage() {
173
+ const id = (0, _univerjs_core.generateRandomId)(6);
174
+ return {
175
+ id,
176
+ pageType: PageType.SLIDE,
177
+ zIndex: 10,
178
+ title: id,
179
+ description: "",
180
+ pageBackgroundFill: { rgb: "rgb(255,255,255)" },
181
+ pageElements: {}
182
+ };
183
+ }
184
+ setActivePage(page) {
185
+ this._activePage$.next(page);
186
+ }
187
+ getActivePage() {
188
+ return this._activePage;
189
+ }
190
+ updatePage(pageId, page) {
191
+ if (!this._snapshot.body) return;
192
+ this._snapshot.body.pages[pageId] = page;
193
+ }
194
+ appendPage(page) {
195
+ var _activePage$id;
196
+ if (!this._snapshot.body) return;
197
+ this._snapshot.body.pages[page.id] = page;
198
+ const activePage = this._activePage;
199
+ const index = this._snapshot.body.pageOrder.indexOf((_activePage$id = activePage === null || activePage === void 0 ? void 0 : activePage.id) !== null && _activePage$id !== void 0 ? _activePage$id : "");
200
+ this._snapshot.body.pageOrder.splice(index + 1, 0, page.id);
201
+ }
202
+ };
203
+
204
+ //#endregion
205
+ //#region package.json
206
+ var name = "@univerjs/slides";
207
+ var version = "0.21.0";
208
+
209
+ //#endregion
210
+ //#region src/config/config.ts
211
+ /**
212
+ * Copyright 2023-present DreamNum Co., Ltd.
213
+ *
214
+ * Licensed under the Apache License, Version 2.0 (the "License");
215
+ * you may not use this file except in compliance with the License.
216
+ * You may obtain a copy of the License at
217
+ *
218
+ * http://www.apache.org/licenses/LICENSE-2.0
219
+ *
220
+ * Unless required by applicable law or agreed to in writing, software
221
+ * distributed under the License is distributed on an "AS IS" BASIS,
222
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
223
+ * See the License for the specific language governing permissions and
224
+ * limitations under the License.
225
+ */
226
+ const SLIDES_PLUGIN_CONFIG_KEY = "slides.config";
227
+ const configSymbol = Symbol(SLIDES_PLUGIN_CONFIG_KEY);
228
+ const defaultPluginConfig = {};
229
+
230
+ //#endregion
231
+ //#region \0@oxc-project+runtime@0.124.0/helpers/decorateParam.js
232
+ function __decorateParam(paramIndex, decorator) {
233
+ return function(target, key) {
234
+ decorator(target, key, paramIndex);
235
+ };
236
+ }
237
+
238
+ //#endregion
239
+ //#region \0@oxc-project+runtime@0.124.0/helpers/decorate.js
240
+ function __decorate(decorators, target, key, desc) {
241
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
242
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
243
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
244
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
245
+ }
246
+
247
+ //#endregion
248
+ //#region src/plugin.ts
249
+ let UniverSlidesPlugin = class UniverSlidesPlugin extends _univerjs_core.Plugin {
250
+ constructor(_config = defaultPluginConfig, _injector, _configService, _univerInstanceService) {
251
+ super();
252
+ this._config = _config;
253
+ this._injector = _injector;
254
+ this._configService = _configService;
255
+ this._univerInstanceService = _univerInstanceService;
256
+ _defineProperty(this, "_canvasEngine", null);
257
+ const { ...rest } = (0, _univerjs_core.merge)({}, defaultPluginConfig, this._config);
258
+ this._configService.setConfig(SLIDES_PLUGIN_CONFIG_KEY, rest);
259
+ this._initializeDependencies(this._injector);
260
+ }
261
+ onStarting() {
262
+ this._univerInstanceService.registerCtorForType(_univerjs_core.UniverInstanceType.UNIVER_SLIDE, SlideDataModel);
263
+ }
264
+ initialize() {
265
+ this.initCanvasEngine();
266
+ }
267
+ onReady() {}
268
+ getConfig() {
269
+ return this._config;
270
+ }
271
+ initCanvasEngine() {
272
+ this._canvasEngine = this._injector.get(_univerjs_engine_render.IRenderingEngine);
273
+ }
274
+ onRendered() {
275
+ this.initialize();
276
+ }
277
+ getCanvasEngine() {
278
+ return this._canvasEngine;
279
+ }
280
+ _initializeDependencies(slideInjector) {
281
+ [].forEach((d) => {
282
+ slideInjector.add(d);
283
+ });
284
+ }
285
+ };
286
+ _defineProperty(UniverSlidesPlugin, "pluginName", "UNIVER_SLIDES_PLUGIN");
287
+ _defineProperty(UniverSlidesPlugin, "packageName", name);
288
+ _defineProperty(UniverSlidesPlugin, "version", version);
289
+ _defineProperty(UniverSlidesPlugin, "type", _univerjs_core.UniverInstanceType.UNIVER_SLIDE);
290
+ UniverSlidesPlugin = __decorate([
291
+ __decorateParam(1, (0, _univerjs_core.Inject)(_univerjs_core.Injector)),
292
+ __decorateParam(2, _univerjs_core.IConfigService),
293
+ __decorateParam(3, _univerjs_core.IUniverInstanceService)
294
+ ], UniverSlidesPlugin);
295
+
296
+ //#endregion
297
+ //#region src/types/enum/prst-geom-type.ts
298
+ /**
299
+ * Copyright 2023-present DreamNum Co., Ltd.
300
+ *
301
+ * Licensed under the Apache License, Version 2.0 (the "License");
302
+ * you may not use this file except in compliance with the License.
303
+ * You may obtain a copy of the License at
304
+ *
305
+ * http://www.apache.org/licenses/LICENSE-2.0
306
+ *
307
+ * Unless required by applicable law or agreed to in writing, software
308
+ * distributed under the License is distributed on an "AS IS" BASIS,
309
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
310
+ * See the License for the specific language governing permissions and
311
+ * limitations under the License.
312
+ */
313
+ let BasicShapes = /* @__PURE__ */ function(BasicShapes) {
314
+ BasicShapes["Line"] = "line";
315
+ BasicShapes["LineInv"] = "lineInv";
316
+ BasicShapes["Triangle"] = "triangle";
317
+ BasicShapes["RtTriangle"] = "rtTriangle";
318
+ BasicShapes["Rect"] = "rect";
319
+ BasicShapes["Diamond"] = "diamond";
320
+ BasicShapes["Parallelogram"] = "parallelogram";
321
+ BasicShapes["Trapezoid"] = "trapezoid";
322
+ BasicShapes["NonIsocelesTrapezoid"] = "nonIsocelesTrapezoid";
323
+ BasicShapes["Pentagon"] = "pentagon";
324
+ BasicShapes["Hexagon"] = "hexagon";
325
+ BasicShapes["Heptagon"] = "heptagon";
326
+ BasicShapes["Octagon"] = "octagon";
327
+ BasicShapes["Decagon"] = "decagon";
328
+ BasicShapes["Dodecagon"] = "dodecagon";
329
+ BasicShapes["Star4"] = "star4";
330
+ BasicShapes["Star5"] = "star5";
331
+ BasicShapes["Star6"] = "star6";
332
+ BasicShapes["Star7"] = "star7";
333
+ BasicShapes["Star8"] = "star8";
334
+ BasicShapes["Star10"] = "star10";
335
+ BasicShapes["Star12"] = "star12";
336
+ BasicShapes["Star16"] = "star16";
337
+ BasicShapes["Star24"] = "star24";
338
+ BasicShapes["Star32"] = "star32";
339
+ BasicShapes["RoundRect"] = "roundRect";
340
+ BasicShapes["Round1Rect"] = "round1Rect";
341
+ BasicShapes["Round2SameRect"] = "round2SameRect";
342
+ BasicShapes["Round2DiagRect"] = "round2DiagRect";
343
+ BasicShapes["Ellipse"] = "ellipse";
344
+ return BasicShapes;
345
+ }({});
346
+ let ArrowsAndMarkersShapes = /* @__PURE__ */ function(ArrowsAndMarkersShapes) {
347
+ ArrowsAndMarkersShapes["RightArrow"] = "rightArrow";
348
+ ArrowsAndMarkersShapes["LeftArrow"] = "leftArrow";
349
+ ArrowsAndMarkersShapes["UpArrow"] = "upArrow";
350
+ ArrowsAndMarkersShapes["DownArrow"] = "downArrow";
351
+ ArrowsAndMarkersShapes["LeftRightArrow"] = "leftRightArrow";
352
+ ArrowsAndMarkersShapes["UpDownArrow"] = "upDownArrow";
353
+ ArrowsAndMarkersShapes["QuadArrow"] = "quadArrow";
354
+ ArrowsAndMarkersShapes["LeftRightUpArrow"] = "leftRightUpArrow";
355
+ ArrowsAndMarkersShapes["BentArrow"] = "bentArrow";
356
+ ArrowsAndMarkersShapes["UturnArrow"] = "uturnArrow";
357
+ ArrowsAndMarkersShapes["CircularArrow"] = "circularArrow";
358
+ ArrowsAndMarkersShapes["NotchedRightArrow"] = "notchedRightArrow";
359
+ ArrowsAndMarkersShapes["HomePlate"] = "homePlate";
360
+ ArrowsAndMarkersShapes["Chevron"] = "chevron";
361
+ ArrowsAndMarkersShapes["LeftCircularArrow"] = "leftCircularArrow";
362
+ ArrowsAndMarkersShapes["LeftRightCircularArrow"] = "leftRightCircularArrow";
363
+ return ArrowsAndMarkersShapes;
364
+ }({});
365
+ let OtherShapes = /* @__PURE__ */ function(OtherShapes) {
366
+ OtherShapes["Plaque"] = "plaque";
367
+ OtherShapes["Can"] = "can";
368
+ OtherShapes["Cube"] = "cube";
369
+ OtherShapes["Bevel"] = "bevel";
370
+ OtherShapes["Donut"] = "donut";
371
+ OtherShapes["NoSmoking"] = "noSmoking";
372
+ OtherShapes["BlockArc"] = "blockArc";
373
+ OtherShapes["FoldedCorner"] = "foldedCorner";
374
+ return OtherShapes;
375
+ }({});
376
+ let SpecialShapes = /* @__PURE__ */ function(SpecialShapes) {
377
+ SpecialShapes["SmileyFace"] = "smileyFace";
378
+ SpecialShapes["Heart"] = "heart";
379
+ SpecialShapes["LightningBolt"] = "lightningBolt";
380
+ SpecialShapes["Sun"] = "sun";
381
+ SpecialShapes["Moon"] = "moon";
382
+ SpecialShapes["Cloud"] = "cloud";
383
+ SpecialShapes["Arc"] = "arc";
384
+ SpecialShapes["Backpack"] = "backpack";
385
+ SpecialShapes["Frame"] = "frame";
386
+ SpecialShapes["HalfFrame"] = "halfFrame";
387
+ SpecialShapes["Corner"] = "corner";
388
+ SpecialShapes["Chord"] = "chord";
389
+ SpecialShapes["Pie"] = "pie";
390
+ SpecialShapes["Teardrop"] = "teardrop";
391
+ SpecialShapes["WedgeRectCallout"] = "wedgeRectCallout";
392
+ SpecialShapes["WedgeRRectCallout"] = "wedgeRRectCallout";
393
+ SpecialShapes["WedgeEllipseCallout"] = "wedgeEllipseCallout";
394
+ SpecialShapes["CloudCallout"] = "cloudCallout";
395
+ SpecialShapes["BorderCallout1"] = "borderCallout1";
396
+ SpecialShapes["BorderCallout2"] = "borderCallout2";
397
+ SpecialShapes["BorderCallout3"] = "borderCallout3";
398
+ SpecialShapes["AccentCallout1"] = "accentCallout1";
399
+ SpecialShapes["AccentCallout2"] = "accentCallout2";
400
+ SpecialShapes["AccentCallout3"] = "accentCallout3";
401
+ SpecialShapes["Callout1"] = "callout1";
402
+ SpecialShapes["Callout2"] = "callout2";
403
+ SpecialShapes["Callout3"] = "callout3";
404
+ SpecialShapes["ActionButtonBackPrevious"] = "actionButtonBackPrevious";
405
+ SpecialShapes["ActionButtonEnd"] = "actionButtonEnd";
406
+ SpecialShapes["ActionButtonForwardNext"] = "actionButtonForwardNext";
407
+ SpecialShapes["ActionButtonHelp"] = "actionButtonHelp";
408
+ SpecialShapes["ActionButtonHome"] = "actionButtonHome";
409
+ SpecialShapes["ActionButtonInformation"] = "actionButtonInformation";
410
+ SpecialShapes["ActionButtonMovie"] = "actionButtonMovie";
411
+ SpecialShapes["ActionButtonReturn"] = "actionButtonReturn";
412
+ SpecialShapes["ActionButtonSound"] = "actionButtonSound";
413
+ return SpecialShapes;
414
+ }({});
415
+
416
+ //#endregion
417
+ //#region src/views/render/adaptor.ts
418
+ var ObjectAdaptor = class {
419
+ constructor() {
420
+ _defineProperty(this, "zIndex", 0);
421
+ _defineProperty(this, "viewKey", null);
422
+ }
423
+ check(type) {
424
+ if (type !== this.viewKey) return;
425
+ return this;
426
+ }
427
+ create(injector) {}
428
+ };
429
+ const CanvasObjectProviderRegistry = _univerjs_core.Registry.create();
430
+
431
+ //#endregion
432
+ //#region src/views/render/adaptors/docs-adaptor.ts
433
+ let DOCS_VIEW_KEY = /* @__PURE__ */ function(DOCS_VIEW_KEY) {
434
+ DOCS_VIEW_KEY["MAIN"] = "__DocsRender__";
435
+ DOCS_VIEW_KEY["SCENE_VIEWER"] = "__DocsViewer__";
436
+ DOCS_VIEW_KEY["SCENE"] = "__DocsScene__";
437
+ DOCS_VIEW_KEY["VIEWPORT"] = "__DocsViewPort_";
438
+ return DOCS_VIEW_KEY;
439
+ }({});
440
+ let DocsAdaptor = class DocsAdaptor extends ObjectAdaptor {
441
+ constructor(_localeService) {
442
+ super();
443
+ this._localeService = _localeService;
444
+ _defineProperty(this, "zIndex", 5);
445
+ _defineProperty(this, "viewKey", PageElementType.DOCUMENT);
446
+ _defineProperty(this, "_liquid", new _univerjs_engine_render.Liquid());
447
+ }
448
+ check(type) {
449
+ if (type !== this.viewKey) return;
450
+ return this;
451
+ }
452
+ convert(pageElement, mainScene) {
453
+ var _documents$getSkeleto, _scene$getTransformer;
454
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, title, description, document: documentData } = pageElement;
455
+ if (documentData == null) return;
456
+ const docViewModel = new _univerjs_engine_render.DocumentViewModel(new _univerjs_core.DocumentDataModel(documentData));
457
+ const documentSkeleton = _univerjs_engine_render.DocumentSkeleton.create(docViewModel, this._localeService);
458
+ const documents = new _univerjs_engine_render.Documents(DOCS_VIEW_KEY.MAIN, documentSkeleton);
459
+ documentSkeleton.calculate();
460
+ const sv = new _univerjs_engine_render.SceneViewer(DOCS_VIEW_KEY.SCENE_VIEWER + id, {
461
+ top,
462
+ left,
463
+ width,
464
+ height,
465
+ zIndex,
466
+ angle,
467
+ scaleX,
468
+ scaleY,
469
+ skewX,
470
+ skewY,
471
+ flipX,
472
+ flipY
473
+ });
474
+ const scene = new _univerjs_engine_render.Scene(DOCS_VIEW_KEY.SCENE + id, sv);
475
+ const viewMain = new _univerjs_engine_render.Viewport(DOCS_VIEW_KEY.VIEWPORT + id, scene, {
476
+ left: 0,
477
+ top: 0,
478
+ bottom: 0,
479
+ right: 0,
480
+ explicitViewportWidthSet: false,
481
+ explicitViewportHeightSet: false,
482
+ isWheelPreventDefaultX: true
483
+ });
484
+ scene.attachControl();
485
+ scene.onMouseWheel$.subscribeEvent((evt, state) => {
486
+ const e = evt;
487
+ if (e.ctrlKey) {
488
+ const deltaFactor = Math.abs(e.deltaX);
489
+ let scrollNum = deltaFactor < 40 ? .2 : deltaFactor < 80 ? .4 : .2;
490
+ scrollNum *= e.deltaY > 0 ? -1 : 1;
491
+ if (scene.scaleX < 1) scrollNum /= 2;
492
+ if (scene.scaleX + scrollNum > 4) scene.scale(4, 4);
493
+ else if (scene.scaleX + scrollNum < .1) scene.scale(.1, .1);
494
+ else {
495
+ e.deltaY;
496
+ e.preventDefault();
497
+ }
498
+ } else viewMain.onMouseWheel(e, state);
499
+ });
500
+ new _univerjs_engine_render.ScrollBar(viewMain, { mainScene });
501
+ scene.addObject(documents);
502
+ const size = documentSkeleton.getActualSize();
503
+ documents.resize(size.actualWidth, size.actualHeight);
504
+ scene.resize(size.actualWidth, size.actualHeight + 200);
505
+ (_documents$getSkeleto = documents.getSkeleton()) === null || _documents$getSkeleto === void 0 || _documents$getSkeleto.getPageSize();
506
+ documents.pageRender$.subscribe((config) => {
507
+ const { page, pageLeft, pageTop, ctx } = config;
508
+ const { width, height, marginBottom, marginLeft, marginRight, marginTop } = page;
509
+ ctx.save();
510
+ ctx.translate(pageLeft - .5, pageTop - .5);
511
+ ctx.restore();
512
+ });
513
+ const { left: docsLeft, top: docsTop } = documents;
514
+ const skeletonData = documentSkeleton.getSkeletonData();
515
+ if (skeletonData == null) return;
516
+ const { pages } = skeletonData;
517
+ const objectList = [];
518
+ const pageMarginCache = /* @__PURE__ */ new Map();
519
+ this._recalculateSizeBySkeleton(documents, scene, documentSkeleton);
520
+ for (let i = 0, len = pages.length; i < len; i++) {
521
+ const page = pages[i];
522
+ const { skeDrawings, marginLeft, marginTop, pageWidth, pageHeight } = page;
523
+ this._liquid.translatePagePadding(page);
524
+ skeDrawings.forEach((drawing) => {
525
+ const { aLeft, aTop, height, width, drawingOrigin } = drawing;
526
+ const { docTransform } = drawingOrigin;
527
+ const rect = new _univerjs_engine_render.Image(drawing.drawingId, {
528
+ left: aLeft + docsLeft + this._liquid.x,
529
+ top: aTop + docsTop + this._liquid.y,
530
+ width,
531
+ height,
532
+ zIndex: 11
533
+ });
534
+ pageMarginCache.set(drawing.drawingId, {
535
+ marginLeft: this._liquid.x,
536
+ marginTop: this._liquid.y
537
+ });
538
+ objectList.push(rect);
539
+ });
540
+ this._liquid.translatePage(page, documents.pageLayoutType, documents.pageMarginLeft, documents.pageMarginTop);
541
+ }
542
+ scene.addObjects(objectList);
543
+ objectList.forEach((object) => {
544
+ scene.attachTransformerTo(object);
545
+ });
546
+ (_scene$getTransformer = scene.getTransformer()) === null || _scene$getTransformer === void 0 || _scene$getTransformer.changing$.subscribe((state) => {
547
+ const { objects } = state;
548
+ objects.forEach((object) => {
549
+ const { oKey, left, top, height, width } = object;
550
+ const cache = pageMarginCache.get(oKey);
551
+ const marginLeft = (cache === null || cache === void 0 ? void 0 : cache.marginLeft) || 0;
552
+ const marginTop = (cache === null || cache === void 0 ? void 0 : cache.marginTop) || 0;
553
+ documentSkeleton === null || documentSkeleton === void 0 || documentSkeleton.getViewModel().getDataModel().updateDrawing(oKey, {
554
+ left: left - docsLeft - marginLeft,
555
+ top: top - docsTop - marginTop,
556
+ height,
557
+ width
558
+ });
559
+ });
560
+ documentSkeleton === null || documentSkeleton === void 0 || documentSkeleton.calculate();
561
+ });
562
+ this._calculatePagePosition(documents, scene, viewMain);
563
+ return sv;
564
+ }
565
+ _recalculateSizeBySkeleton(docsComponent, scene, skeleton) {
566
+ var _skeleton$getSkeleton;
567
+ const pages = (_skeleton$getSkeleton = skeleton.getSkeletonData()) === null || _skeleton$getSkeleton === void 0 ? void 0 : _skeleton$getSkeleton.pages;
568
+ if (pages == null) return;
569
+ let width = 0;
570
+ let height = 0;
571
+ for (let i = 0, len = pages.length; i < len; i++) {
572
+ const { pageWidth, pageHeight } = pages[i];
573
+ if (docsComponent.pageLayoutType === _univerjs_engine_render.PageLayoutType.VERTICAL) {
574
+ height += pageHeight;
575
+ height += docsComponent.pageMarginTop;
576
+ if (i === len - 1) height += docsComponent.pageMarginTop;
577
+ width = Math.max(width, pageWidth);
578
+ } else if (docsComponent.pageLayoutType === _univerjs_engine_render.PageLayoutType.HORIZONTAL) {
579
+ width += pageWidth;
580
+ if (i !== len - 1) width += docsComponent.pageMarginLeft;
581
+ height = Math.max(height, pageHeight);
582
+ }
583
+ }
584
+ docsComponent.resize(width, height);
585
+ scene.resize(width, height);
586
+ }
587
+ _calculatePagePosition(docsComponent, scene, viewport, zoomRatio = 1) {
588
+ const parent = scene === null || scene === void 0 ? void 0 : scene.getParent();
589
+ const { width: docsWidth, height: docsHeight, pageMarginLeft, pageMarginTop } = docsComponent;
590
+ if (parent == null || docsWidth === Number.POSITIVE_INFINITY || docsHeight === Number.POSITIVE_INFINITY) return;
591
+ const { width: engineWidth, height: engineHeight } = parent;
592
+ let docsLeft = 0;
593
+ let docsTop = 0;
594
+ let sceneWidth = 0;
595
+ let sceneHeight = 0;
596
+ let scrollToX = Number.POSITIVE_INFINITY;
597
+ if (engineWidth > (docsWidth + pageMarginLeft * 2) * zoomRatio) {
598
+ docsLeft = engineWidth / 2 - docsWidth * zoomRatio / 2;
599
+ docsLeft /= zoomRatio;
600
+ sceneWidth = (engineWidth - pageMarginLeft * 2) / zoomRatio;
601
+ scrollToX = 0;
602
+ } else {
603
+ docsLeft = pageMarginLeft;
604
+ sceneWidth = docsWidth + pageMarginLeft * 2;
605
+ scrollToX = (sceneWidth - engineWidth / zoomRatio) / 2;
606
+ }
607
+ if (engineHeight > docsHeight) {
608
+ docsTop = engineHeight / 2 - docsHeight / 2;
609
+ sceneHeight = (engineHeight - pageMarginTop * 2) / zoomRatio;
610
+ } else {
611
+ docsTop = pageMarginTop;
612
+ sceneHeight = docsHeight + pageMarginTop * 2;
613
+ }
614
+ scene.resize(sceneWidth, sceneHeight + 200);
615
+ docsComponent.translate(docsLeft, docsTop);
616
+ if (scrollToX !== Number.POSITIVE_INFINITY && viewport != null) {
617
+ const actualX = viewport.transScroll2ViewportScrollValue(scrollToX, 0).x;
618
+ viewport.scrollToBarPos({ x: actualX });
619
+ }
620
+ return this;
621
+ }
622
+ };
623
+ DocsAdaptor = __decorate([__decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_core.LocaleService))], DocsAdaptor);
624
+ var DocsAdaptorFactory = class {
625
+ constructor() {
626
+ _defineProperty(this, "zIndex", 5);
627
+ }
628
+ create(injector) {
629
+ return injector.createInstance(DocsAdaptor);
630
+ }
631
+ };
632
+ CanvasObjectProviderRegistry.add(new DocsAdaptorFactory());
633
+
634
+ //#endregion
635
+ //#region src/views/render/adaptors/image-adaptor.ts
636
+ var ImageAdaptor = class extends ObjectAdaptor {
637
+ constructor(..._args) {
638
+ super(..._args);
639
+ _defineProperty(this, "zIndex", 1);
640
+ _defineProperty(this, "viewKey", PageElementType.IMAGE);
641
+ }
642
+ check(type) {
643
+ if (type !== this.viewKey) return;
644
+ return this;
645
+ }
646
+ convert(pageElement) {
647
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, title, description, image = {} } = pageElement;
648
+ const { imageProperties, placeholder, link } = image;
649
+ return new _univerjs_engine_render.Image(id, {
650
+ url: (imageProperties === null || imageProperties === void 0 ? void 0 : imageProperties.contentUrl) || "",
651
+ top,
652
+ left,
653
+ width,
654
+ height,
655
+ zIndex,
656
+ angle,
657
+ scaleX,
658
+ scaleY,
659
+ skewX,
660
+ skewY,
661
+ flipX,
662
+ flipY,
663
+ forceRender: true
664
+ });
665
+ }
666
+ };
667
+ var ImageAdaptorFactory = class {
668
+ constructor() {
669
+ _defineProperty(this, "zIndex", 4);
670
+ }
671
+ create(injector) {
672
+ return injector.createInstance(ImageAdaptor);
673
+ }
674
+ };
675
+ CanvasObjectProviderRegistry.add(new ImageAdaptorFactory());
676
+
677
+ //#endregion
678
+ //#region src/views/render/adaptors/rich-text-adaptor.ts
679
+ let RichTextAdaptor = class RichTextAdaptor extends ObjectAdaptor {
680
+ constructor(_localeService) {
681
+ super();
682
+ this._localeService = _localeService;
683
+ _defineProperty(this, "zIndex", 2);
684
+ _defineProperty(this, "viewKey", PageElementType.TEXT);
685
+ }
686
+ check(type) {
687
+ if (type !== this.viewKey) return;
688
+ return this;
689
+ }
690
+ convert(pageElement, _mainScene) {
691
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, title, description, richText = {} } = pageElement;
692
+ const { text, ff, fs, it, bl, ul, st, ol, bg, bd, cl, rich } = richText;
693
+ let config = {
694
+ top,
695
+ left,
696
+ width,
697
+ height,
698
+ zIndex,
699
+ angle,
700
+ scaleX,
701
+ scaleY,
702
+ skewX,
703
+ skewY,
704
+ flipX,
705
+ flipY,
706
+ forceRender: true
707
+ };
708
+ let isNotNull = false;
709
+ if (text != null) {
710
+ config = {
711
+ ...config,
712
+ text,
713
+ ff,
714
+ fs,
715
+ it,
716
+ bl,
717
+ ul,
718
+ st,
719
+ ol,
720
+ bg,
721
+ bd,
722
+ cl
723
+ };
724
+ isNotNull = true;
725
+ } else if (rich != null) {
726
+ config = {
727
+ ...config,
728
+ richText: rich
729
+ };
730
+ isNotNull = true;
731
+ }
732
+ if (isNotNull === false) return;
733
+ return new _univerjs_engine_render.RichText(this._localeService, id, config);
734
+ }
735
+ };
736
+ RichTextAdaptor = __decorate([__decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_core.LocaleService))], RichTextAdaptor);
737
+ var RichTextAdaptorFactory = class {
738
+ constructor() {
739
+ _defineProperty(this, "zIndex", 0);
740
+ }
741
+ create(injector) {
742
+ return injector.createInstance(RichTextAdaptor);
743
+ }
744
+ };
745
+ CanvasObjectProviderRegistry.add(new RichTextAdaptorFactory());
746
+
747
+ //#endregion
748
+ //#region src/views/render/adaptors/shape-adaptor.ts
749
+ var ShapeAdaptor = class extends ObjectAdaptor {
750
+ constructor(..._args) {
751
+ super(..._args);
752
+ _defineProperty(this, "zIndex", 2);
753
+ _defineProperty(this, "viewKey", PageElementType.SHAPE);
754
+ }
755
+ check(type) {
756
+ if (type !== this.viewKey) return;
757
+ return this;
758
+ }
759
+ convert(pageElement) {
760
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, title, description } = pageElement;
761
+ const { shapeType, text, shapeProperties, placeholder, link } = pageElement.shape || {};
762
+ const fill = shapeProperties == null ? "" : (0, _univerjs_core.getColorStyle)(shapeProperties.shapeBackgroundFill) || "rgba(255,255,255,1)";
763
+ const outline = shapeProperties === null || shapeProperties === void 0 ? void 0 : shapeProperties.outline;
764
+ const strokeStyle = {};
765
+ if (outline) {
766
+ const { outlineFill, weight } = outline;
767
+ strokeStyle.strokeWidth = weight;
768
+ strokeStyle.stroke = (0, _univerjs_core.getColorStyle)(outlineFill) || "rgba(0,0,0,1)";
769
+ }
770
+ if (shapeType === BasicShapes.Rect) return new _univerjs_engine_render.Rect(id, {
771
+ fill,
772
+ top,
773
+ left,
774
+ width,
775
+ height,
776
+ zIndex,
777
+ angle,
778
+ scaleX,
779
+ scaleY,
780
+ skewX,
781
+ skewY,
782
+ flipX,
783
+ flipY,
784
+ forceRender: true,
785
+ ...strokeStyle
786
+ });
787
+ if (shapeType === BasicShapes.RoundRect) return new _univerjs_engine_render.Rect(id, {
788
+ fill,
789
+ top,
790
+ left,
791
+ width,
792
+ height,
793
+ zIndex,
794
+ angle,
795
+ scaleX,
796
+ scaleY,
797
+ skewX,
798
+ skewY,
799
+ flipX,
800
+ flipY,
801
+ forceRender: true,
802
+ radius: (shapeProperties === null || shapeProperties === void 0 ? void 0 : shapeProperties.radius) || 0,
803
+ ...strokeStyle
804
+ });
805
+ if (shapeType === BasicShapes.Ellipse) {
806
+ console.warn(shapeProperties === null || shapeProperties === void 0 ? void 0 : shapeProperties.radius);
807
+ return new _univerjs_engine_render.Circle(id, {
808
+ fill,
809
+ top,
810
+ left,
811
+ width,
812
+ height,
813
+ zIndex,
814
+ angle,
815
+ scaleX,
816
+ scaleY,
817
+ skewX,
818
+ skewY,
819
+ flipX,
820
+ flipY,
821
+ forceRender: true,
822
+ radius: (shapeProperties === null || shapeProperties === void 0 ? void 0 : shapeProperties.radius) || 0,
823
+ ...strokeStyle
824
+ });
825
+ }
826
+ }
827
+ };
828
+ var ShapeAdaptorFactory = class {
829
+ constructor() {
830
+ _defineProperty(this, "zIndex", 2);
831
+ }
832
+ create(injector) {
833
+ return injector.createInstance(ShapeAdaptor);
834
+ }
835
+ };
836
+ CanvasObjectProviderRegistry.add(new ShapeAdaptorFactory());
837
+
838
+ //#endregion
839
+ //#region src/views/render/object-provider.ts
840
+ let ObjectProvider = class ObjectProvider {
841
+ constructor(_injector) {
842
+ this._injector = _injector;
843
+ _defineProperty(this, "_adaptors", []);
844
+ this._adaptorLoader();
845
+ }
846
+ convertToRenderObjects(pageElements, mainScene) {
847
+ const pageKeys = Object.keys(pageElements);
848
+ const objects = [];
849
+ pageKeys.forEach((key) => {
850
+ const pageElement = pageElements[key];
851
+ const o = this._executor(pageElement, mainScene);
852
+ if (o != null) objects.push(o);
853
+ });
854
+ return objects;
855
+ }
856
+ convertToRenderObject(pageElement, mainScene) {
857
+ return this._executor(pageElement, mainScene);
858
+ }
859
+ _executor(pageElement, mainScene) {
860
+ const { id: pageElementId, type } = pageElement;
861
+ for (const adaptor of this._adaptors) {
862
+ var _adaptor$check;
863
+ const o = (_adaptor$check = adaptor.check(type)) === null || _adaptor$check === void 0 ? void 0 : _adaptor$check.convert(pageElement, mainScene);
864
+ if (o != null) return o;
865
+ }
866
+ }
867
+ _adaptorLoader() {
868
+ CanvasObjectProviderRegistry.getData().sort(_univerjs_core.sortRules).forEach((adaptorFactory) => {
869
+ this._adaptors.push(adaptorFactory.create(this._injector));
870
+ });
871
+ }
872
+ };
873
+ ObjectProvider = __decorate([__decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_core.Injector))], ObjectProvider);
874
+
875
+ //#endregion
876
+ //#region src/views/render/adaptors/slide-adaptor.ts
877
+ let SLIDE_VIEW_KEY = /* @__PURE__ */ function(SLIDE_VIEW_KEY) {
878
+ SLIDE_VIEW_KEY["MAIN"] = "__SLIDERender__";
879
+ SLIDE_VIEW_KEY["SCENE_VIEWER"] = "__SLIDEViewer__";
880
+ SLIDE_VIEW_KEY["SCENE"] = "__SLIDEScene__";
881
+ SLIDE_VIEW_KEY["VIEWPORT"] = "__SLIDEViewPort_";
882
+ return SLIDE_VIEW_KEY;
883
+ }({});
884
+ let SlideAdaptor = class SlideAdaptor extends ObjectAdaptor {
885
+ constructor(_injector) {
886
+ super();
887
+ this._injector = _injector;
888
+ _defineProperty(this, "zIndex", 6);
889
+ _defineProperty(this, "viewKey", PageElementType.SLIDE);
890
+ _defineProperty(this, "_ObjectProvider", null);
891
+ }
892
+ check(type) {
893
+ if (type !== this.viewKey) return;
894
+ return this;
895
+ }
896
+ convert(pageElement, mainScene) {
897
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, title, description, slide: slideData } = pageElement;
898
+ if (slideData == null) return;
899
+ const model = new SlideDataModel(slideData);
900
+ const slideComponent = new _univerjs_engine_render.Slide(SLIDE_VIEW_KEY.MAIN + id, {
901
+ top,
902
+ left,
903
+ width,
904
+ height,
905
+ zIndex,
906
+ angle,
907
+ scaleX,
908
+ scaleY,
909
+ skewX,
910
+ skewY,
911
+ flipX,
912
+ flipY,
913
+ forceRender: true
914
+ });
915
+ slideComponent.enableNav();
916
+ slideComponent.enableSelectedClipElement();
917
+ const pageOrder = model.getPageOrder();
918
+ const pages = model.getPages();
919
+ if (!pageOrder || !pages) return slideComponent;
920
+ this._ObjectProvider = new ObjectProvider(this._injector);
921
+ for (let i = 0, len = pageOrder.length; i < len; i++) {
922
+ const page = pages[pageOrder[i]];
923
+ const { id } = page;
924
+ slideComponent.addPageScene(this._createScene(id, slideComponent, page, mainScene, model));
925
+ }
926
+ slideComponent.activeFirstPage();
927
+ return slideComponent;
928
+ }
929
+ _createScene(pageId, parent, page, mainScene, model) {
930
+ var _this$_ObjectProvider;
931
+ const { width, height } = parent;
932
+ const scene = new _univerjs_engine_render.Scene(pageId, parent, {
933
+ width,
934
+ height
935
+ });
936
+ new _univerjs_engine_render.Viewport(`PageViewer_${pageId}`, scene, {
937
+ left: 0,
938
+ top: 0,
939
+ bottom: 0,
940
+ right: 0,
941
+ explicitViewportWidthSet: false,
942
+ explicitViewportHeightSet: false
943
+ }).closeClip();
944
+ const { pageElements, pageBackgroundFill } = page;
945
+ const objects = (_this$_ObjectProvider = this._ObjectProvider) === null || _this$_ObjectProvider === void 0 ? void 0 : _this$_ObjectProvider.convertToRenderObjects(pageElements, mainScene);
946
+ this._addBackgroundRect(scene, pageBackgroundFill, model);
947
+ scene.addObjects(objects);
948
+ objects === null || objects === void 0 || objects.forEach((object) => {
949
+ scene.attachTransformerTo(object);
950
+ });
951
+ return scene;
952
+ }
953
+ _addBackgroundRect(scene, fill, model) {
954
+ const { width: pageWidth = 0, height: pageHeight = 0 } = model.getPageSize();
955
+ const page = new _univerjs_engine_render.Rect("canvas", {
956
+ left: 0,
957
+ top: 0,
958
+ width: pageWidth,
959
+ height: pageHeight,
960
+ strokeWidth: 1,
961
+ stroke: "rgba(198,198,198, 1)",
962
+ fill: (0, _univerjs_core.getColorStyle)(fill) || "rgba(255,255,255, 1)",
963
+ zIndex: 0,
964
+ evented: false
965
+ });
966
+ scene.addObject(page, 0);
967
+ }
968
+ };
969
+ SlideAdaptor = __decorate([__decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_core.Injector))], SlideAdaptor);
970
+ var SlideAdaptorFactory = class {
971
+ constructor() {
972
+ _defineProperty(this, "zIndex", 6);
973
+ }
974
+ create(injector) {
975
+ return injector.createInstance(SlideAdaptor);
976
+ }
977
+ };
978
+ CanvasObjectProviderRegistry.add(new SlideAdaptorFactory());
979
+
980
+ //#endregion
981
+ //#region src/views/render/adaptors/spreadsheet-adaptor.ts
982
+ var SHEET_VIEW_KEY = /* @__PURE__ */ function(SHEET_VIEW_KEY) {
983
+ SHEET_VIEW_KEY["MAIN"] = "spreadInSlide";
984
+ SHEET_VIEW_KEY["SCENE"] = "spreadInSlideScene";
985
+ SHEET_VIEW_KEY["SCENE_VIEWER"] = "spreadInSlideSceneViewer";
986
+ SHEET_VIEW_KEY["ROW"] = "spreadInSlideRow";
987
+ SHEET_VIEW_KEY["COLUMN"] = "spreadInSlideColumn";
988
+ SHEET_VIEW_KEY["LEFT_TOP"] = "spreadInSlideLeftTop";
989
+ SHEET_VIEW_KEY["VIEW_MAIN"] = "spreadInSlideViewMain";
990
+ SHEET_VIEW_KEY["VIEW_TOP"] = "spreadInSlideViewTop";
991
+ SHEET_VIEW_KEY["VIEW_LEFT"] = "spreadInSlideViewLeft";
992
+ SHEET_VIEW_KEY["VIEW_LEFT_TOP"] = "spreadInSlideViewLeftTop";
993
+ return SHEET_VIEW_KEY;
994
+ }(SHEET_VIEW_KEY || {});
995
+ let SpreadsheetAdaptor = class SpreadsheetAdaptor extends ObjectAdaptor {
996
+ constructor(_localeService, _contextService, _configService, _injector) {
997
+ super();
998
+ this._localeService = _localeService;
999
+ this._contextService = _contextService;
1000
+ this._configService = _configService;
1001
+ this._injector = _injector;
1002
+ _defineProperty(this, "zIndex", 4);
1003
+ _defineProperty(this, "viewKey", PageElementType.SPREADSHEET);
1004
+ }
1005
+ check(type) {
1006
+ if (type !== this.viewKey) return;
1007
+ return this;
1008
+ }
1009
+ convert(pageElement, mainScene) {
1010
+ const { id, zIndex, left = 0, top = 0, width, height, angle, scaleX, scaleY, skewX, skewY, flipX, flipY, spreadsheet: spreadsheetModel } = pageElement;
1011
+ if (spreadsheetModel == null) return;
1012
+ const { worksheet, styles } = spreadsheetModel;
1013
+ const styleModel = new _univerjs_core.Styles(styles);
1014
+ const spreadsheetSkeleton = new _univerjs_engine_render.SpreadsheetSkeleton(new _univerjs_core.Worksheet(id, worksheet, styleModel), styleModel, this._localeService, this._contextService, this._configService, this._injector);
1015
+ const { rowTotalHeight, columnTotalWidth, rowHeaderWidth, columnHeaderHeight } = spreadsheetSkeleton;
1016
+ const allWidth = columnTotalWidth + worksheet.rowHeader.width || 0;
1017
+ const allHeight = rowTotalHeight + worksheet.columnHeader.height || 0;
1018
+ const sv = new _univerjs_engine_render.SceneViewer(SHEET_VIEW_KEY.SCENE_VIEWER + id, {
1019
+ top,
1020
+ left,
1021
+ width,
1022
+ height,
1023
+ zIndex,
1024
+ angle,
1025
+ scaleX,
1026
+ scaleY,
1027
+ skewX,
1028
+ skewY,
1029
+ flipX,
1030
+ flipY,
1031
+ forceRender: true
1032
+ });
1033
+ const scene = new _univerjs_engine_render.Scene(SHEET_VIEW_KEY.SCENE + id, sv, {
1034
+ width: allWidth,
1035
+ height: allHeight
1036
+ });
1037
+ this._updateViewport(id, rowHeaderWidth, columnHeaderHeight, scene, mainScene);
1038
+ const spreadsheet = new _univerjs_engine_render.Spreadsheet("testSheetViewer", spreadsheetSkeleton, false);
1039
+ const spreadsheetRowHeader = new _univerjs_engine_render.SpreadsheetRowHeader(SHEET_VIEW_KEY.ROW, spreadsheetSkeleton);
1040
+ const spreadsheetColumnHeader = new _univerjs_engine_render.SpreadsheetColumnHeader(SHEET_VIEW_KEY.COLUMN, spreadsheetSkeleton);
1041
+ const SpreadsheetLeftTopPlaceholder = new _univerjs_engine_render.Rect(SHEET_VIEW_KEY.LEFT_TOP, {
1042
+ zIndex: 2,
1043
+ left: -1,
1044
+ top: -1,
1045
+ width: rowHeaderWidth,
1046
+ height: columnHeaderHeight,
1047
+ fill: (0, _univerjs_engine_render.getColor)([
1048
+ 248,
1049
+ 249,
1050
+ 250
1051
+ ]),
1052
+ stroke: (0, _univerjs_engine_render.getColor)([
1053
+ 217,
1054
+ 217,
1055
+ 217
1056
+ ]),
1057
+ strokeWidth: 1
1058
+ });
1059
+ spreadsheet.zIndex = 10;
1060
+ scene.addObjects([spreadsheet], 1);
1061
+ scene.addObjects([
1062
+ spreadsheetRowHeader,
1063
+ spreadsheetColumnHeader,
1064
+ SpreadsheetLeftTopPlaceholder
1065
+ ], 2);
1066
+ return sv;
1067
+ }
1068
+ _updateViewport(id, rowHeaderWidth, columnHeaderHeight, scene, mainScene) {
1069
+ if (mainScene == null) return;
1070
+ const rowHeaderWidthScale = rowHeaderWidth * scene.scaleX;
1071
+ const columnHeaderHeightScale = columnHeaderHeight * scene.scaleY;
1072
+ const viewMain = new _univerjs_engine_render.Viewport(SHEET_VIEW_KEY.VIEW_MAIN + id, scene, {
1073
+ left: rowHeaderWidthScale,
1074
+ top: columnHeaderHeightScale,
1075
+ bottom: 0,
1076
+ right: 0,
1077
+ explicitViewportWidthSet: false,
1078
+ explicitViewportHeightSet: false,
1079
+ isWheelPreventDefaultX: true
1080
+ });
1081
+ const viewTop = new _univerjs_engine_render.Viewport(SHEET_VIEW_KEY.VIEW_TOP + id, scene, {
1082
+ left: rowHeaderWidthScale,
1083
+ height: columnHeaderHeightScale,
1084
+ top: 0,
1085
+ right: 0,
1086
+ explicitViewportWidthSet: false,
1087
+ isWheelPreventDefaultX: true
1088
+ });
1089
+ const viewLeft = new _univerjs_engine_render.Viewport(SHEET_VIEW_KEY.VIEW_LEFT + id, scene, {
1090
+ left: 0,
1091
+ bottom: 0,
1092
+ top: columnHeaderHeightScale,
1093
+ width: rowHeaderWidthScale,
1094
+ explicitViewportHeightSet: false,
1095
+ isWheelPreventDefaultX: true
1096
+ });
1097
+ new _univerjs_engine_render.Viewport(SHEET_VIEW_KEY.VIEW_LEFT_TOP + id, scene, {
1098
+ left: 0,
1099
+ top: 0,
1100
+ width: rowHeaderWidthScale,
1101
+ height: columnHeaderHeightScale,
1102
+ isWheelPreventDefaultX: true
1103
+ });
1104
+ viewMain.onScrollAfter$.subscribeEvent((param) => {
1105
+ const { scrollX, scrollY, viewportScrollX, viewportScrollY } = param;
1106
+ viewTop.updateScrollVal({
1107
+ scrollX,
1108
+ viewportScrollX
1109
+ });
1110
+ viewLeft.updateScrollVal({
1111
+ scrollY,
1112
+ viewportScrollY
1113
+ });
1114
+ });
1115
+ scene.attachControl();
1116
+ new _univerjs_engine_render.ScrollBar(viewMain, { mainScene });
1117
+ scene.onMouseWheel$.subscribeEvent((evt, state) => {
1118
+ const e = evt;
1119
+ if (e.ctrlKey) {
1120
+ const deltaFactor = Math.abs(e.deltaX);
1121
+ let scrollNum = deltaFactor < 40 ? .05 : deltaFactor < 80 ? .02 : .01;
1122
+ scrollNum *= e.deltaY > 0 ? -1 : 1;
1123
+ if (scene.scaleX < 1) scrollNum /= 2;
1124
+ if (scene.scaleX + scrollNum > 4) scene.scale(4, 4);
1125
+ else if (scene.scaleX + scrollNum < .1) scene.scale(.1, .1);
1126
+ else {
1127
+ scene.scaleBy(scrollNum, scrollNum);
1128
+ e.preventDefault();
1129
+ }
1130
+ } else viewMain.onMouseWheel(e, state);
1131
+ });
1132
+ }
1133
+ };
1134
+ SpreadsheetAdaptor = __decorate([
1135
+ __decorateParam(0, (0, _univerjs_core.Inject)(_univerjs_core.LocaleService)),
1136
+ __decorateParam(1, _univerjs_core.IContextService),
1137
+ __decorateParam(2, _univerjs_core.IConfigService),
1138
+ __decorateParam(3, (0, _univerjs_core.Inject)(_univerjs_core.Injector))
1139
+ ], SpreadsheetAdaptor);
1140
+ var SpreadsheetAdaptorFactory = class {
1141
+ constructor() {
1142
+ _defineProperty(this, "zIndex", 4);
1143
+ }
1144
+ create(injector) {
1145
+ return injector.createInstance(SpreadsheetAdaptor);
1146
+ }
1147
+ };
1148
+ CanvasObjectProviderRegistry.add(new SpreadsheetAdaptorFactory());
1149
+
1150
+ //#endregion
1151
+ //#region src/views/render/index.ts
1152
+ let SLIDE_KEY = /* @__PURE__ */ function(SLIDE_KEY) {
1153
+ SLIDE_KEY["COMPONENT"] = "__slideRender__";
1154
+ SLIDE_KEY["SCENE"] = "__mainScene__";
1155
+ SLIDE_KEY["VIEW"] = "__mainView__";
1156
+ return SLIDE_KEY;
1157
+ }({});
1158
+
1159
+ //#endregion
1160
+ exports.ArrowsAndMarkersShapes = ArrowsAndMarkersShapes;
1161
+ exports.BasicShapes = BasicShapes;
1162
+ exports.CanvasObjectProviderRegistry = CanvasObjectProviderRegistry;
1163
+ exports.DEFAULT_SLIDE = DEFAULT_SLIDE;
1164
+ exports.ObjectAdaptor = ObjectAdaptor;
1165
+ Object.defineProperty(exports, 'ObjectProvider', {
1166
+ enumerable: true,
1167
+ get: function () {
1168
+ return ObjectProvider;
1169
+ }
1170
+ });
1171
+ exports.OtherShapes = OtherShapes;
1172
+ exports.PageElementType = PageElementType;
1173
+ exports.PageType = PageType;
1174
+ exports.RelativeSlideLink = RelativeSlideLink;
1175
+ exports.SLIDE_KEY = SLIDE_KEY;
1176
+ exports.SLIDE_VIEW_KEY = SLIDE_VIEW_KEY;
1177
+ exports.SlideDataModel = SlideDataModel;
1178
+ exports.SpecialShapes = SpecialShapes;
1179
+ Object.defineProperty(exports, 'UniverSlidesPlugin', {
1180
+ enumerable: true,
1181
+ get: function () {
1182
+ return UniverSlidesPlugin;
1183
+ }
1184
+ });