@netless/app-slide 0.2.74-beta.0 → 0.2.74

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2020 netless
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/main.cjs.js CHANGED
@@ -7985,6 +7985,6 @@ self.onmessage = function(e) {
7985
7985
  `),t.trackLogger.addLog(s,"error",a,o.randomId);var h=(l=o.config.logger)===null||l===void 0?void 0:l.error;h&&h("["+a+"] "+s)}},o.logger.info("new slide with clientId: "+o.config.clientId+", version: "+o.version,o.taskId),o.tracker({name:"initSlide",result:"",reason:"",payload:{taskId:o.taskId}}),o.anchor=o.config.anchor,o.syncQueue=new BS(o.receiveSyncHandler),o.lock=new kS(o.mode==="interactive"),o.cacheImage.style.position="absolute",o.cacheImage.style.display="block",o.cacheImage.style.zIndex="100",o.setMedianControllerAttribute(),o.canvasContainer.style.position="relative",o.canvasContainer.style.fontSize="0",o.canvasContainer.appendChild(o.medianController),o.frame.appendChild(o.canvasContainer),o.frame.appendChild(o.cacheImage),o.frameResizeObserver.observe(o.frame),o.on(rr.syncReceive,function(s){o.lock.unlock(s.type,s.uuid),!o.player&&o.config.skipActionWhenFrozen||o.mode==="sync"&&o.config.clientId===s.clientId||o.syncQueue.addTask(s)}),o.renderingTaskManager.eventHub.on("task-error",function(s){var a=s.error,l=s.task,h=bi.transform(a);h.errorType===Vi.RuntimeWarn?o.logger.warn(h.message,o.taskId):o.logger.error(h.message,o.taskId),o.isLoading=!1,o.reportError(h,l.slideIndex)}),window.addEventListener("__slide_ref__",o.handleSlideRef),o.resizeView=uh()(o.resizeView.bind(o),50),o.player=o.initPlayer(o.config),o.config.controller&&o.createController(),o.player.view&&o.canvasContainer.appendChild(o.player.view),o.handleViewClick=uh()(o.handleViewClick,300),o.player.errorChannel.on("error",function(s,a){var l=bi.transform(s);l.errorType===Vi.RuntimeWarn?o.logger.warn(l.message,o.taskId):o.logger.error(l.message,o.taskId),o.isLoading=!1,o.reportError(s,a),o.tracker({name:"slideError",reason:l.errorMsg,result:"",payload:{code:l.errorType}})}),window.addEventListener("message",o.recoverHandler),t.volumeAdjuster.on("update",o._updateVolumeByStaticAdjuster),o.volumeAdjuster.volume=t.volumeAdjuster.volume,o}var e,n;return VS(t,i),t.flushLog=function(r){return r===void 0&&(r=!1),Xi(this,void 0,void 0,function(){return Yi(this,function(o){switch(o.label){case 0:if(!(t._tempLog.length>131072||r&&t._tempLog.length>0))return[3,5];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,dr==null?void 0:dr.setItem("run_time_log_"+t._tempLogIndex,t._tempLog)];case 2:return o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:t._tempLog="",t._tempLogIndex+=1,o.label=5;case 5:return[2]}})})},t.stopRemoteLog=function(){t.remoteLogAddress=null},t.startRemoteLog=function(r){return Xi(this,void 0,void 0,function(){var o,s,a,l,h;return Yi(this,function(u){switch(u.label){case 0:return t.remoteLogAddress=r,[4,t.flushLog(!0)];case 1:if(u.sent(),!dr)return[3,13];o=[],u.label=2;case 2:return u.trys.push([2,4,,5]),[4,dr.keys()];case 3:return o=(u.sent()||[]).sort(function(p,_){return parseInt(p.replace("run_time_log_",""))-parseInt(_.replace("run_time_log_",""))}),[3,5];case 4:return u.sent(),[3,5];case 5:s=0,a=o,u.label=6;case 6:if(!(s<a.length))return[3,13];l=a[s],l.replace("run_time_log_",""),h="",u.label=7;case 7:return u.trys.push([7,9,,10]),[4,dr.getItem(l)];case 8:return h=u.sent()||"",[3,10];case 9:return u.sent(),[3,10];case 10:return[4,fetch(t.remoteLogAddress+"/logs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({log:h})})];case 11:u.sent(),u.label=12;case 12:return s++,[3,6];case 13:return[2]}})})},t.appendLogString=function(r){t._tempLog+=r,t.remoteLogAddress&&fetch(t.remoteLogAddress+"/logs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({log:r})}).catch(function(){})},Object.defineProperty(t.prototype,"dispatchIncrId",{get:function(){return this._dispatchIncrId++},enumerable:!1,configurable:!0}),t.prototype.reportError=function(r,o){this.emit(rr.renderError,{error:r,index:o}),window.postMessage({type:"@slide/_error_",errorType:r.errorType,errorMsg:r.errorMsg,slideId:this.randomId,slideIndex:o,customMessage:"@slide/_error_"},"*"),t.trackLogger.uploadLog(!0)},t.prototype.initSlideConfig=function(r){return r.timestamp&&(this.timestamp=r.timestamp),r.rtcAudio&&(lr.RtcAudioClazz=r.rtcAudio),r.enableWebAudio!==!1&&(r.enableWebAudio=!0),this.mode=r.mode,this.anchor=r.anchor,this.anchor.appendChild(this.frame),this.enableGlobalClick=!xi()(r.enableGlobalClick)&&r.enableGlobalClick,this.resize=r.resize||!1,this.interactive=r.interactive,this.frame.style.cssText=r.fixedFrameSize?"width:"+r.fixedFrameSize.width+"px;height:"+r.fixedFrameSize.height+"px;":"width:100%;height:100%",this.frame.style.cssText+="display:flex;justify-content:center;align-items:center;visibility:hidden;position:relative;z-index:1;",r.fixedFrameSize&&(this.frameWidth=r.fixedFrameSize.width,this.frameHeight=r.fixedFrameSize.height),r},t.prototype.initPlayer=function(r){var o,s,a,l=this,h=new lr({mode:this.mode,useLocalCache:!!xi()(this.config.useLocalCache)||this.config.useLocalCache,logger:this.logger,resourceTimeout:xi()(this.config.resourceTimeout)?15e3:this.config.resourceTimeout,loadDelegate:this.config.loaderDelegate,volumeAdjuster:this.volumeAdjuster,urlInterrupter:this.urlInterrupter,tracker:this.tracker,enableWebAudio:this.config.enableWebAudio,enableAutoForward:this.config.enableAutoForward,customLinks:this.config.customLinks},r.renderOptions);return h.setInteractive(this.interactive),h.updateConfig(r.renderOptions||{}),h.on(We.renderStart,function(u){l.isLoading=!0,l.emit(rr.renderStart,u),window.postMessage({type:"@slide/_render_start_",taskId:l.taskId,index:u},"*")}),h.on(We.renderEnd,function(u){l.isLoading=!1,l.player&&(l.designHeight=l.player.designHeight,l.designWidth=l.player.designWidth,l.cacheImage.style.width=l.player.designWidth+"px",l.cacheImage.style.height=l.player.designHeight+"px",l.cacheImage.style.maxWidth=l.player.designWidth+"px",l.cacheImage.style.minWidth=l.player.designHeight+"px",l._slideCount=l.player.slideCount),l.emit(rr.renderEnd,u),window.postMessage({type:"@slide/_render_end_",taskId:l.taskId,index:u},"*")}),h.on(We.slideChange,function(u){l.__slideState.currentSlideIndex=u,l.emitStateChange(),l.emit(rr.slideChange,u)}),h.on(We.mainSeqStateChange,function(u){l.__slideState.mainSeqState=u,l.emitStateChange()}),h.on(We.mainSeqStepChange,function(u){l.__slideState.mainSeqStep=u,l.emitStateChange()}),h.on(We.interactiveSeqStateChange,function(u){var p=u.id,_=u.state;l.__slideState.interactiveSeqState[p]=_,l.emitStateChange()}),h.on(We.animateStart,function(){l.isAnimating!==!0&&(l.isAnimating=!0,l.emit(rr.animateStart))}),h.on(We.animateEnd,function(){l.isAnimating!==!1&&(l.isAnimating=!1,l.emit(rr.animateEnd))}),h.on(We.interactiveSeqAction,function(u){var p=u.action,_=u.seqId;l.emitSyncDispatch({slideIndex:l.__slideState.currentSlideIndex,type:"interactiveAnim",action:p,seqId:_}),l.emitStateChange()}),h.on(We.mainSeqStepStart,function(u){l.emit(rr.mainSeqStepStart,u)}),h.on(We.mainSeqStepEnd,function(u){l.emit(rr.mainSeqStepEnd,u)}),h.on(We.mediaPlay,function(u){var p,_=(p=l.__slideState.mediaState[u.id])!==null&&p!==void 0?p:{};_.type="play",_.time=l.timestamp()-1e3*u.time,l.__slideState.mediaState[u.id]=_,u._stateOnly?l.config.mode==="interactive"&&l.receiveSyncHandler({slideIndex:l.__slideState.currentSlideIndex,type:"mediaPlay",id:u.id,state:_}).catch(function(x){l.logger.error(x==null?void 0:x.message,l.taskId)}):l.emitSyncDispatch({slideIndex:l.__slideState.currentSlideIndex,type:"mediaPlay",id:u.id,state:_}),l.emitStateChange()}),h.on(We.mediaStop,function(u){delete l.__slideState.mediaState[u.id],l.emitStateChange()}),h.on(We.mediaPause,function(u){var p,_=(p=l.__slideState.mediaState[u.id])!==null&&p!==void 0?p:{};_.type="pause",_.time=u.time,l.__slideState.mediaState[u.id]=_,u._stateOnly?l.config.mode==="interactive"&&l.receiveSyncHandler({slideIndex:l.__slideState.currentSlideIndex,type:"mediaPause",id:u.id,state:_}).catch(function(x){l.logger.error(x==null?void 0:x.message,l.taskId)}):l.emitSyncDispatch({slideIndex:l.__slideState.currentSlideIndex,type:"mediaPause",id:u.id,state:_}),l.emitStateChange()}),h.on(We.mediaSeek,function(u){var p,_=(p=l.__slideState.mediaState[u.id])!==null&&p!==void 0?p:{};u.isPlaying?(_.type="play",_.time=l.timestamp()-1e3*u.time):(_.type="pause",_.time=u.time),l.__slideState.mediaState[u.id]=_,l.emitSyncDispatch({slideIndex:l.__slideState.currentSlideIndex,type:"mediaSeek",id:u.id,time:u.time,state:_}),l.emitStateChange()}),h.on(We.requestNextStep,function(){l.nextStep()}),h.on(We.requestPrevSlide,function(u){l.handlePrevSlide(u)}),h.on(We.requestNextSlide,function(u){l.handleNextSlide(u)}),h.on(We.useraddLink,function(u){l.emit(rr.useraddLink,l.taskId,l.renderingIndex,u)}),h.on(We.requestGotoSlide,function(u){var p;!((p=l.config.navigatorDelegate)===null||p===void 0)&&p.gotoPage?l.config.navigatorDelegate.gotoPage(u):l.handleGotoSlide(u)}),h.on(We.requestOpenUrl,function(u){var p;!((p=l.config.navigatorDelegate)===null||p===void 0)&&p.openUrl&&l.config.navigatorDelegate.openUrl(u)}),h.on(We.fullscreenChange,function(u){var p,_=u.targetId,x=u.state;l.emitSyncDispatch({slideIndex:l.__slideState.currentSlideIndex,type:"mediaFullscreen",targetId:_,state:x});var S=(p=l.__slideState.mediaState[_])!==null&&p!==void 0?p:{};S.fullscreen=x,l.__slideState.mediaState[_]=S,l.emitStateChange()}),h.on(We.changeLocalFullscreenState,function(u){u.slideIndex===l.__slideState.currentSlideIndex?(u.targetId&&l.__slideState.mediaState[u.targetId]&&(l.__slideState.mediaState[u.targetId].fullscreen=u.status),l.emitStateChange()):l.logger.info("event slideIndex: "+u.slideIndex+", current slideIndex: "+l.__slideState.currentSlideIndex,l.taskId)}),(o=h.view)===null||o===void 0||o.addEventListener("touchend",this.handleViewTouchEnd),(s=h.view)===null||s===void 0||s.addEventListener("touchstart",this.handleViewTouchStart),(a=h.view)===null||a===void 0||a.addEventListener("click",this.handleViewClick),h.on(We.userInput,this.userInputHandle),h},t.prototype._handleViewClick=function(){var r=this;setTimeout(function(){var o=Date.now();Math.abs(o-r.userInputTime)>500&&r.enableGlobalClick&&r.nextStep()})},t.prototype.createController=function(){this.player&&(this.playerController=new FS(this.player,this.frame))},t.prototype.setMedianControllerAttribute=function(){this.medianController.className="median-container",this.medianController.style.position="absolute",this.medianController.style.left="0",this.medianController.style.top="0",this.medianController.style.zIndex="2",this.medianController.style.fontSize="16px"},t.prototype.frameResizeHandler=function(){if(!this.config.fixedFrameSize){var r=this.frame.getBoundingClientRect(),o=r.width,s=r.height;this.frameWidth=o,this.frameHeight=s,this.resizeView()}},t.prototype.updateFixedFrameSize=function(r,o,s){this.config.fixedFrameSize&&(this.frameWidth=r,this.frameHeight=o,this.frame.style.width=r+"px",this.frame.style.height=o+"px",this.resizeView(s))},t.prototype._resizeView=function(r){var o,s,a=this,l=this.width,h=this.height;if(l>0&&h>0){var u=this.frameWidth/l,p=u*h;p>this.frameHeight&&(u*=this.frameHeight/p),(o=this.player)===null||o===void 0||o.scaleView(u,this.resize,r),this.cacheImage.style.transform="scale("+u+")",this.medianController.style.transform="scale("+u+")",this.medianController.setAttribute("data-scale",u.toString()),this.isInitResized||(this.isInitResized=!0,(s=this.player)===null||s===void 0||s.clock.setTimeout(function(){a.frame.style.visibility="visible"},32))}},t.prototype.setSlideState=function(r){var o,s,a;return Xi(this,void 0,void 0,function(){var l,h=this;return Yi(this,function(u){switch(u.label){case 0:return this.isSyncingSlideState=!0,this.logger.info("stateChange receive "+JSON.stringify(r),this.taskId),r.taskId&&r.taskId!==this.__slideState.taskId&&(this.__slideState.taskId=r.taskId,(o=this.player)===null||o===void 0||o.setResourceData(r.taskId,this.__slideState.url)),r.url&&r.url!==this.__slideState.url&&(this.__slideState.url=r.url,(s=this.player)===null||s===void 0||s.setResourceData(this.__slideState.taskId,r.url)),Number.isInteger(r.currentSlideIndex)&&r.currentSlideIndex!==this.__slideState.currentSlideIndex?(this.__slideState.currentSlideIndex=r.currentSlideIndex,[4,this.doRenderSlide(r.currentSlideIndex)]):[3,2];case 1:u.sent(),u.label=2;case 2:return[4,(a=this.player)===null||a===void 0?void 0:a.clock.waitUntil(function(){var p,_;return((p=h.player)===null||p===void 0?void 0:p.currentIndex)===r.currentSlideIndex&&((_=h.player)===null||_===void 0?void 0:_.currentStage)},3e3)];case 3:return u.sent(),l=!1,Number.isInteger(r.mainSeqStep)&&r.mainSeqStep!==this.__slideState.mainSeqStep&&(l=!0,this.__slideState.mainSeqStep=r.mainSeqStep),r.mainSeqState&&r.mainSeqState!==this.__slideState.mainSeqState&&(l=!0,this.__slideState.mainSeqState=r.mainSeqState),l&&this.setMainSeqStep(this.__slideState.mainSeqStep,this.__slideState.mainSeqState==="idle"?"start":"end"),r.interactiveSeqState&&(this.initInteractiveSeq(r),this.__slideState.interactiveSeqState=r.interactiveSeqState),[4,yh(1500)];case 4:return u.sent(),r.mediaState&&(this.initMedia(r),this.__slideState.mediaState=r.mediaState),this.isSyncingSlideState=!1,[2]}})})},t.prototype.initInteractiveSeq=function(r){var o;for(var s in r.interactiveSeqState){var a=r.interactiveSeqState[s];(o=this.player)===null||o===void 0||o.setInteractiveSeqState(s,a.step,a.state==="idle"?"start":"end")}},t.prototype.initMedia=function(r){var o,s,a;for(var l in r.mediaState){var h=r.mediaState[l],u=this.__slideState.mediaState[l];if((o=this.player)===null||o===void 0||o.syncFullscreenVideoState({targetId:l,state:!!h.fullscreen,slideIndex:this.slideState.currentSlideIndex}),!u||h.type!==u.type||h.time!==u.time)if(h.type==="play"){var p=(this.timestamp()-h.time)/1e3;(s=this.player)===null||s===void 0||s.setMediaState(l,!0,p)}else(a=this.player)===null||a===void 0||a.setMediaState(l,!1,h.time)}},Object.defineProperty(t.prototype,"slideCount",{get:function(){return this._slideCount},enumerable:!1,configurable:!0}),t.prototype.getSizeAsync=function(){return Xi(this,void 0,void 0,function(){var r;return Yi(this,function(o){switch(o.label){case 0:if(this.width>0&&this.height>0)return[2,[this.width,this.height]];o.label=1;case 1:return o.trys.push([1,4,,5]),[4,fetch(this.__slideState.url+"/"+this.__slideState.taskId+"/jsonOutput/slide-1.json")];case 2:return[4,o.sent().json()];case 3:return[2,[(r=o.sent()).width,r.height]];case 4:return o.sent(),[2,[0,0]];case 5:return[2]}})})},t.prototype.getSlideCountAsync=function(){return Xi(this,void 0,void 0,function(){return Yi(this,function(r){switch(r.label){case 0:if(this._slideCount>0)return[2,this._slideCount];r.label=1;case 1:return r.trys.push([1,4,,5]),[4,fetch(this.__slideState.url+"/"+this.__slideState.taskId+"/jsonOutput/slide-1.json")];case 2:return[4,r.sent().json()];case 3:return[2,r.sent().slideCount];case 4:return r.sent(),[2,0];case 5:return[2]}})})},Object.defineProperty(t.prototype,"slideState",{get:function(){return this.__slideState.mainSeqState=this.mainSeqState,this.__slideState.mainSeqStep=this.mainSeqStep,JSON.parse(JSON.stringify(this.__slideState))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"mainSeqLength",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.mainSeqLength())||0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"mainSeqStep",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.mainSeqStep())||0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"mainSeqState",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.mainSeqState())||null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"renderOptions",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.config)||null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"drawCall",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.runtime.drawCall)||0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"renderFps",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.runtime.fps)||0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"runtimeFps",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.fps.value)||0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"view",{get:function(){var r;return((r=this.player)===null||r===void 0?void 0:r.view)||null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"width",{get:function(){return this.designWidth},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this.designHeight},enumerable:!1,configurable:!0}),t.prototype.updateRenderOption=function(r){this.player&&(this.player.updateConfig(r),this.renderOptions&&(this.config.renderOptions=this.renderOptions))},t.prototype.setResource=function(r,o){var s;this.taskId=r,(s=this.player)===null||s===void 0||s.setResourceData(r,o),this.__slideState.taskId=r,this.__slideState.url=o,this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"setResource",taskId:r,url:o})},t.prototype.setResourceList=function(r,o){var s;this.taskId=r,this.resourceList=o,(s=this.player)===null||s===void 0||s.setResourceData(r,"__internal__"),this.__slideState.taskId=r,this.__slideState.url="__internal__"},t.prototype._renderSlide=function(r){var o;return Xi(this,void 0,void 0,function(){var s=this;return Yi(this,function(a){switch(a.label){case 0:return this.renderingIndex=r,this.player&&r===this.player.currentIndex?[2]:((lr.platform.isIOS()||lr.platform.isAndroid())&&this.iosResetCache.indexOf(r)<0&&this.iosResetCache.push(r),this.flushDebounce(),[4,(o=this.player)===null||o===void 0?void 0:o.renderSlide(r)]);case 1:return a.sent(),this.__slideState.currentSlideIndex=r,this.resizeView(),this.__slideState.interactiveSeqState={},this.__slideState.mediaState={},this.emitStateChange(),setTimeout(function(){var l,h;((h=(l=s.player)===null||l===void 0?void 0:l.view)===null||h===void 0?void 0:h.style.visibility)==="hidden"&&(s.player.view.style.visibility="visible"),s.frame.style.visibility==="hidden"&&(s.frame.style.visibility="visible"),s.cacheImage.style.display="none"},100),[2]}})})},t.prototype.renderSlide=function(r,o){if(o===void 0&&(o=!0),this.player){var s=Number(r);(s!==this.player.currentIndex||this.renderingTaskManager.hasStartTask())&&(s>this.slideCount&&this.slideCount>0||this.poseRenderSlide(s,o))}},t.prototype.needCreateNewPlayer=function(){var r=lr.platform.isLowGpuMemory()?15:30;return(lr.platform.isIOS()||lr.platform.isAndroid())&&this.iosResetCache.length>r},t.prototype.poseRenderSlide=function(r,o){this.mode==="interactive"?this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"renderSlide",index:r,isForward:o}):this.mode==="sync"?(this.doRenderSlide(r,o),this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"renderSlide",index:r,isForward:o})):this.doRenderSlide(r,o)},t.prototype.doRenderSlide=function(r,o){var s,a,l,h=this;if(o===void 0&&(o=!0),!this.player)return Promise.resolve();if(this.needCreateNewPlayer()&&(this.iosResetCache=[],this.iosNewPlayer=this.initPlayer(this.config),this.iosNewPlayer.setResourceData(this.__slideState.taskId,this.__slideState.url)),this.iosNewPlayer){var u=this.player.getSnapshot();this.cacheImage.src=u,this.player.destroy(),(s=this.playerController)===null||s===void 0||s.destroy(),this.player=this.iosNewPlayer,this.iosNewPlayer=void 0,!((a=this.config)===null||a===void 0)&&a.controller&&this.createController(),!((l=this==null?void 0:this.player)===null||l===void 0)&&l.view&&(this.player.view.style.visibility="hidden",this.canvasContainer.appendChild(this.player.view))}var p=Math.random().toString(32).substr(2);return this.player.isForward=o,this.renderingTaskManager.addTask(function(){return h._renderSlide(r)},r,p),new Promise(function(_,x){h.renderingTaskManager.eventHub.once("task-end-"+p,_),h.renderingTaskManager.eventHub.once("task-error-"+p,x)})},t.prototype.getSnapshot=function(){var r,o;return(o=(r=this.player)===null||r===void 0?void 0:r.getSnapshot())!==null&&o!==void 0?o:null},t.prototype.nextStep=function(){!this.isLoading&&this.player&&this.interactive?(this.hasNextStep()||this.emit(rr.slideStepEnd),this.player.mainSeqHasNextStep()?this.mode==="interactive"?this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"nextStep",next:this.player.mainSeqStep()+1}):this.mode==="sync"?(this.doNextStep(!1,""),this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"nextStep",next:this.player.mainSeqStep()})):this.doNextStep(!1,""):this.handleNextSlide()):this.logger.info("prevent nextStep. isLoading: "+this.isLoading+", player: "+!!this.player+", interactive: "+this.interactive,this.taskId)},t.prototype.doNextStep=function(r,o){if(this.player){var s=!this.config.clientId||o===this.config.clientId;this.player.nextStep(r,s);var a=this.player.mainSeqStep();this.__slideState.mainSeqStep=a,this.emitStateChange()}},t.prototype.prevStep=function(){!this.isLoading&&this.player&&this.interactive?(this.hasPrevStep()||this.emit(rr.slideStepStart),this.player.mainSeqHasPrevStep()?this.mode==="interactive"?this.emitSyncDispatch({type:"prevStep",slideIndex:this.__slideState.currentSlideIndex,next:this.player.mainSeqStep()-1}):this.mode==="sync"?(this.doPrevStep(),this.emitSyncDispatch({slideIndex:this.__slideState.currentSlideIndex,type:"prevStep",next:this.player.mainSeqStep()})):this.doPrevStep():this.handlePrevSlide()):this.logger.info("prevent nextStep. isLoading: "+this.isLoading+", player: "+this.player+", interactive: "+this.interactive,this.taskId)},t.prototype.doPrevStep=function(r){if(r===void 0&&(r=!1),this.player){this.player.prevStep(r);var o=this.player.mainSeqStep();this.__slideState.mainSeqStep=o,this.emitStateChange()}},t.prototype.isSlideStateReady=function(r){return r.taskId.length>0&&r.url.length>0&&r.currentSlideIndex>0},t.prototype.emitStateChange=function(){if(this.mode!=="local"&&!this.isSyncingSlideState){var r=this.slideState;!iS()(this.lastEmitedState,r)&&this.isSlideStateReady(r)&&(this.lastEmitedState=r,this.emit(rr.stateChange,r),this.logger.info("stateChange dispatch "+JSON.stringify(this.slideState),this.taskId))}},t.prototype.emitSyncDispatch=function(r){if(!this.lock.isLocked(r.type)){var o=Math.random().toString(32).substr(2);this.lock.addLock(r.type,o);var s=fs(fs({},r),{uuid:o,clientId:this.config.clientId});this.config.mode==="sync"&&(s.incrId=this.dispatchIncrId),this.emit(rr.syncDispatch,s),this.logger.info("sync dispatch "+JSON.stringify(s),this.taskId)}},t.prototype.setMainSeqStep=function(r,o){var s;(s=this.player)===null||s===void 0||s.setMainSeqStep(r,o)},t.prototype.setInteractive=function(r){var o;this.interactive=r,(o=this.player)===null||o===void 0||o.setInteractive(r)},t.prototype.pause=function(){var r;(r=this.player)===null||r===void 0||r.pause()},t.prototype.resume=function(){var r;(r=this.player)===null||r===void 0||r.resume()},t.prototype._doFrozen=function(r){var o;return Xi(this,void 0,void 0,function(){var s,a,l,h=this;return Yi(this,function(u){switch(u.label){case 0:return this.logger.info("do frozen with player["+!!this.player+"]",this.taskId),this.tracker({name:"frozenSlide",reason:"",result:"",payload:{taskId:this.taskId}}),this.view&&this.player?[4,this.player.clock.waitUntil(function(){return!h.isLoading},6e4)]:[3,2];case 1:for(a in u.sent(),s=this.player.getSnapshot()||"",this.cacheImage.src=s,this.cacheImage.style.display="block",this.player.destroy(),(o=this.playerController)===null||o===void 0||o.destroy(),this.player=void 0,this.__slideState.mediaState)l=this.__slideState.mediaState[a],this.__slideState.mediaState[a]=fs(fs({},l),{frozenTime:this.timestamp()});u.label=2;case 2:return r&&r(),[2]}})})},t.prototype.frozen=function(r){var o=this;this.frozenTaskManager.addTask("frozen",function(){return o._doFrozen(r)})},t.prototype._doRelease=function(r){var o,s;return Xi(this,void 0,void 0,function(){var a,l,h,u;return Yi(this,function(p){switch(p.label){case 0:if(this.logger.info("do release slide",this.taskId),this.tracker({name:"releaseSlide",reason:"",result:"",payload:{taskId:this.taskId}}),this.player)return[2];for(l in this.player=this.initPlayer(this.config),!((o=this.config)===null||o===void 0)&&o.controller&&this.createController(),this.player.view&&(this.canvasContainer.appendChild(this.player.view),this.player.view.style.visibility="hidden"),a=this.__slideState,this.__slideState=p0()(z0),a.mediaState)(h=a.mediaState[l]).type==="play"&&(u=Math.max((s=h.frozenTime)!==null&&s!==void 0?s:0,h.time),h.time=this.timestamp()-(u-h.time),h.frozenTime=void 0);return[4,this.setSlideState(a)];case 1:return p.sent(),[4,this.player.clock.delay(333)];case 2:return p.sent(),this.player.view&&(this.player.view.style.visibility="visible"),this.cacheImage.style.display="none",r&&r(),[2]}})})},t.prototype.release=function(r){var o=this;this.frozenTaskManager.addTask("release",function(){return o._doRelease(r)})},t.prototype._doDestroy=function(){var r,o,s,a,l=this;this.logger.info("do destroy slide",this.taskId),this.tracker({name:"destroySlide",reason:"",result:"",payload:{taskId:this.taskId}});var h=t.instances.findIndex(function(u){return u.randomId===l.randomId});if(h>=0&&t.instances.splice(h,1),this.playerController&&this.playerController.destroy(),this.frameResizeObserver.disconnect(),(r=this.player)===null||r===void 0||r.removeAllListeners(),(o=this.player)===null||o===void 0||o.destroy(),(s=this.player)===null||s===void 0||s.removeAllListeners(),this.logger={warn:function(){return{}},info:function(){return{}},error:function(){return{}}},this.syncQueue.destroy(),this.renderingTaskManager.destroy(),this.frozenTaskManager.destroy(),window.removeEventListener("__slide_ref__",this.handleSlideRef),window.removeEventListener("message",this.recoverHandler),this.removeAllListeners(),(a=this.player)===null||a===void 0?void 0:a.view)try{this.anchor.removeChild(this.player.view)}catch{this.logger.error("removeChild error Slide.ts:1982",this.taskId)}try{this.anchor.removeChild(this.frame)}catch{this.logger.error("removeChild error Slide.ts:1988",this.taskId)}t.volumeAdjuster.off("update",this._updateVolumeByStaticAdjuster)},t.prototype.waitLoadEnd=function(){return Xi(this,void 0,void 0,function(){var r;return Yi(this,function(o){switch(o.label){case 0:r=0,o.label=1;case 1:return this.isLoading&&r<10?[4,yh(100)]:[3,3];case 2:return o.sent(),r+=1,[3,1];case 3:return[2]}})})},t.prototype.preload=function(r){return this.player?this.player.preload(r):Promise.resolve()},t.prototype.preloadResource=function(r){return this.player?this.player.preloadResource(r):Promise.resolve()},t.prototype.destroy=function(){var r=this;this.logger.info("pre destroy slide",""),this.isLoading?this.waitLoadEnd().then(function(){r._doDestroy()}):this._doDestroy()},t.prototype.clearSlideCache=function(){var r;(r=this.player)===null||r===void 0||r.clearLocalCache()},t.prototype.hasNextStep=function(){if(!this.player)return!1;var r=this.player.currentIndex===this.slideCount,o=this.mainSeqLength===0||this.mainSeqStep>=this.mainSeqLength-1,s=this.mainSeqState==="end"||this.mainSeqState==="running"||this.mainSeqState==null;return!(r&&o&&s)},t.prototype.hasPrevStep=function(){if(!this.player)return!1;var r=this.player.currentIndex===1,o=this.mainSeqLength===0||this.mainSeqStep===0,s=this.mainSeqState==="idle"||this.mainSeqState===null;return!(r&&o&&s)},t.prototype.snapshot=function(){return Xi(this,void 0,void 0,function(){return Yi(this,function(r){return this.player?[2,this.player.getSnapshot()]:[2,null]})})},t.prototype.snapshotWithTimingEnd=function(r){return Xi(this,void 0,void 0,function(){return Yi(this,function(o){return this.player?[2,this.player.snapshotWithTimingEnd(r)]:[2,null]})})},t.prototype.updateGlobalVolume=function(r){this.volumeAdjuster.volume=r},t.prototype.getGlobalVolume=function(){return this.volumeAdjuster.volume},t.clearLocalCache=function(){lr.clearLocalCache()},t.disposeLocalCache=function(){},e=t,t.preloadResource=zS,t.instances=[],t._tempFrozenIds=[],t._tempLog="",t._tempLogIndex=1,t.remoteLogAddress=null,t.usePlugin=function(r){r.context({logger:{info:function(o){t.appendLogString("INFO - "+new Date().toISOString()+" - "+o+`
7986
7986
  `)},warn:function(o){t.appendLogString("WARN - "+new Date().toISOString()+" - "+o+`
7987
7987
  `)},error:function(o){t.appendLogString("ERROR - "+new Date().toISOString()+" - "+o+`
7988
- `)}}}),function(o){var s=oc.get(o.hookPoint)||[];s.push(o),oc.set(o.hookPoint,s)}(r)},t.volumeAdjuster=new c0,t.trackLogger=new GS,t.handleFrozenAllSlide=function(){t.instances.forEach(function(r){r.player&&(t._tempFrozenIds.push(r.randomId),r.frozen())})},t.handleReleaseAllSlide=function(){t._tempFrozenIds.forEach(function(r){var o=t.instances.find(function(s){return s.randomId===r});o&&o.release()}),t._tempFrozenIds=[]},t.handleLogReport=function(r){return Xi(void 0,void 0,void 0,function(){var o,s,a,l,h,u;return Yi(e,function(p){switch(p.label){case 0:return[4,t.flushLog(!0)];case 1:if(p.sent(),!dr)return[3,12];o=[],p.label=2;case 2:return p.trys.push([2,4,,5]),[4,dr.keys()];case 3:return o=(p.sent()||[]).sort(function(_,x){return parseInt(_.replace("run_time_log_",""))-parseInt(x.replace("run_time_log_",""))}),[3,5];case 4:return p.sent(),[3,5];case 5:if(o.length===0)return window.postMessage({type:"@slide/_report_log_",log:"",index:1,total:1,customMessage:"@slide/_report_log_",sessionId:r},"*"),[2];s=0,a=o,p.label=6;case 6:if(!(s<a.length))return[3,12];l=a[s],h=l.replace("run_time_log_",""),u="",p.label=7;case 7:return p.trys.push([7,9,,10]),[4,dr.getItem(l)];case 8:return u=p.sent()||"",[3,10];case 9:return p.sent(),[3,10];case 10:window.postMessage({type:"@slide/_report_log_",log:u,index:parseInt(h,10),total:o.length,customMessage:"@slide/_report_log_",sessionId:r},"*"),p.label=11;case 11:return s++,[3,6];case 12:return[2]}})})},t.handleLogDownload=function(){return Xi(void 0,void 0,void 0,function(){var r,o,s,a,l,h,u;return Yi(e,function(p){switch(p.label){case 0:return p.trys.push([0,7,,8]),[4,t.flushLog(!0)];case 1:return p.sent(),r="",dr?[4,dr.keys()]:[3,6];case 2:o=(p.sent()||[]).sort(function(_,x){return parseInt(_.replace("run_time_log_",""))-parseInt(x.replace("run_time_log_",""))}),s=0,a=o,p.label=3;case 3:return s<a.length?(l=a[s],h=r,[4,dr.getItem(l)]):[3,6];case 4:r=h+(p.sent()||""),p.label=5;case 5:return s++,[3,3];case 6:return(u=document.createElement("a")).setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(r)),u.setAttribute("download","slide_log"),u.style.display="none",document.body.appendChild(u),u.click(),document.body.removeChild(u),[3,8];case 7:return p.sent(),[3,8];case 8:return[2]}})})},WS([(n="Slide.initConfig",function(r,o,s){var a=s.value;s.value=function(){for(var l=[],h=0;h<arguments.length;h++)l[h]=arguments[h];for(var u=oc.get(n)||[],p=l,_=0,x=u;_<x.length;_++){var S=x[_];try{p=S.before(p)}catch{}if(!Array.isArray(p)||p.length!==l.length)throw new Error("plugin before hook return invalid args")}for(var E=a.bind(this).apply(void 0,p),C=0,G=u.reverse();C<G.length;C++){S=G[C];try{E=S.after(E)}catch{}if(!E)throw new Error("plugin after hook return undefined result")}return E}})],t.prototype,"initSlideConfig",null),t}(pi.a);dr==null||dr.clear().catch(function(){}),window.addEventListener("__slide_log__",to.handleLogDownload),window.addEventListener("message",function(i){var t;if(i.data.type==="@slide/_request_log_")to.handleLogReport(i.data.sessionId).catch(function(){});else if(i.data.type==="@slide/_request_frozen_")to.handleFrozenAllSlide();else if(i.data.type==="@slide/_request_release_")to.handleReleaseAllSlide();else if(i.data.type==="@slide/_update_volume_"){var e=.5;try{e=parseFloat(i.data.volume.toString())}catch{}to.volumeAdjuster.volume=e}else if(i.data.type==="@slide/_get_volume_")window.postMessage({type:"@slide/_report_volume_",volume:to.volumeAdjuster.volume,customMessage:"@slide/_report_volume_"},"*");else if(i.data.type==="@slide/_preload_slide_"){var n=(t=i.data.sessionId)!==null&&t!==void 0?t:Math.random().toString(32).substr(2);to.preloadResource(i.data.taskId,i.data.prefix,i.data.maxResolutionLevel,function(r){window.postMessage({type:"@slide/_preload_slide_progress_",sessionId:n,taskId:i.data.taskId,progress:r},"*")},i.data.pages).catch(function(r){window.postMessage({type:"@slide/_preload_slide_error_",sessionId:n,taskId:i.data.taskId,error:r},"*")})}}),window.setInterval(function(){to.flushLog().catch(function(){})},2e3)}]),JS="!#%()*+,-./:;=?@[]^_`{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",KS=87,ZS=20,tg=[],QS=()=>{for(let b=0;b<ZS;b++)tg[b]=JS.charAt(Math.random()*KS);return tg.join("")};function lg(b){try{return b()}catch(A){console.error(A)}}var Ka=class{constructor(){this.push=this.addDisposer,this.disposers=new Map}addDisposer(b,A=this.genUID()){return this.flush(A),this.disposers.set(A,Array.isArray(b)?$S(b):b),A}add(b,A=this.genUID()){const v=b();return v?this.addDisposer(v,A):A}addEventListener(b,A,v,P,M=this.genUID()){return b.addEventListener(A,v,P),this.addDisposer(()=>b.removeEventListener(A,v,P),M),M}setTimeout(b,A,v=this.genUID()){const P=window.setTimeout(()=>{this.remove(v),b()},A);return this.addDisposer(()=>window.clearTimeout(P),v)}setInterval(b,A,v=this.genUID()){const P=window.setInterval(b,A);return this.addDisposer(()=>window.clearInterval(P),v)}remove(b){const A=this.disposers.get(b);return this.disposers.delete(b),A}flush(b){const A=this.remove(b);A&&A()}flushAll(){this.disposers.forEach(lg),this.disposers.clear()}genUID(){let b;do b=QS();while(this.disposers.has(b));return b}};function $S(b){return()=>b.forEach(lg)}function hg(b,A,v){return Math.min(Math.max(b,A),v)}function tw(b){return typeof b=="object"&&b!==null}function ew(b){if(!b)return!1;const A=b.tagName;return A==="INPUT"||A==="TEXTAREA"||A==="SELECT"}var ug={exports:{}},nw={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},cg={exports:{}},iw=function(A){return!A||typeof A=="string"?!1:A instanceof Array||Array.isArray(A)||A.length>=0&&(A.splice instanceof Function||Object.getOwnPropertyDescriptor(A,A.length-1)&&A.constructor.name!=="String")},rw=iw,ow=Array.prototype.concat,sw=Array.prototype.slice,eg=cg.exports=function(A){for(var v=[],P=0,M=A.length;P<M;P++){var I=A[P];rw(I)?v=ow.call(v,sw.call(I)):v.push(I)}return v};eg.wrap=function(b){return function(){return b(eg(arguments))}};var qa=nw,Za=cg.exports,dg=Object.hasOwnProperty,pg=Object.create(null);for(var Ac in qa)dg.call(qa,Ac)&&(pg[qa[Ac]]=Ac);var wr=ug.exports={to:{},get:{}};wr.get=function(b){var A=b.substring(0,3).toLowerCase(),v,P;switch(A){case"hsl":v=wr.get.hsl(b),P="hsl";break;case"hwb":v=wr.get.hwb(b),P="hwb";break;default:v=wr.get.rgb(b),P="rgb";break}return v?{model:P,value:v}:null};wr.get.rgb=function(b){if(!b)return null;var A=/^#([a-f0-9]{3,4})$/i,v=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,P=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,M=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,I=/^(\w+)$/,D=[0,0,0,1],k,V,X;if(k=b.match(v)){for(X=k[2],k=k[1],V=0;V<3;V++){var Z=V*2;D[V]=parseInt(k.slice(Z,Z+2),16)}X&&(D[3]=parseInt(X,16)/255)}else if(k=b.match(A)){for(k=k[1],X=k[3],V=0;V<3;V++)D[V]=parseInt(k[V]+k[V],16);X&&(D[3]=parseInt(X+X,16)/255)}else if(k=b.match(P)){for(V=0;V<3;V++)D[V]=parseInt(k[V+1],0);k[4]&&(k[5]?D[3]=parseFloat(k[4])*.01:D[3]=parseFloat(k[4]))}else if(k=b.match(M)){for(V=0;V<3;V++)D[V]=Math.round(parseFloat(k[V+1])*2.55);k[4]&&(k[5]?D[3]=parseFloat(k[4])*.01:D[3]=parseFloat(k[4]))}else return(k=b.match(I))?k[1]==="transparent"?[0,0,0,0]:dg.call(qa,k[1])?(D=qa[k[1]],D[3]=1,D):null:null;for(V=0;V<3;V++)D[V]=zo(D[V],0,255);return D[3]=zo(D[3],0,1),D};wr.get.hsl=function(b){if(!b)return null;var A=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,v=b.match(A);if(v){var P=parseFloat(v[4]),M=(parseFloat(v[1])%360+360)%360,I=zo(parseFloat(v[2]),0,100),D=zo(parseFloat(v[3]),0,100),k=zo(isNaN(P)?1:P,0,1);return[M,I,D,k]}return null};wr.get.hwb=function(b){if(!b)return null;var A=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,v=b.match(A);if(v){var P=parseFloat(v[4]),M=(parseFloat(v[1])%360+360)%360,I=zo(parseFloat(v[2]),0,100),D=zo(parseFloat(v[3]),0,100),k=zo(isNaN(P)?1:P,0,1);return[M,I,D,k]}return null};wr.to.hex=function(){var b=Za(arguments);return"#"+bh(b[0])+bh(b[1])+bh(b[2])+(b[3]<1?bh(Math.round(b[3]*255)):"")};wr.to.rgb=function(){var b=Za(arguments);return b.length<4||b[3]===1?"rgb("+Math.round(b[0])+", "+Math.round(b[1])+", "+Math.round(b[2])+")":"rgba("+Math.round(b[0])+", "+Math.round(b[1])+", "+Math.round(b[2])+", "+b[3]+")"};wr.to.rgb.percent=function(){var b=Za(arguments),A=Math.round(b[0]/255*100),v=Math.round(b[1]/255*100),P=Math.round(b[2]/255*100);return b.length<4||b[3]===1?"rgb("+A+"%, "+v+"%, "+P+"%)":"rgba("+A+"%, "+v+"%, "+P+"%, "+b[3]+")"};wr.to.hsl=function(){var b=Za(arguments);return b.length<4||b[3]===1?"hsl("+b[0]+", "+b[1]+"%, "+b[2]+"%)":"hsla("+b[0]+", "+b[1]+"%, "+b[2]+"%, "+b[3]+")"};wr.to.hwb=function(){var b=Za(arguments),A="";return b.length>=4&&b[3]!==1&&(A=", "+b[3]),"hwb("+b[0]+", "+b[1]+"%, "+b[2]+"%"+A+")"};wr.to.keyword=function(b){return pg[b.slice(0,3)]};function zo(b,A,v){return Math.min(Math.max(A,b),v)}function bh(b){var A=Math.round(b).toString(16).toUpperCase();return A.length<2?"0"+A:A}var aw=ug.exports;class lw{constructor(A){this.enable=A,this.apps={},this.level="debug",this.roomLogger=null,this._onMessage=v=>{let P;v instanceof CustomEvent?P=v.detail:tw(v.data)&&(P=v.data),P&&(typeof P.slide=="boolean"?this.enable=P.slide:P.slide==="__instance"?console.log(this):P.slide==="__debug"&&Object.values(this.apps).forEach(M=>{var I,D;(D=(I=M.controller)==null?void 0:I.slide)==null||D.createController()}))},this.initialize()}setAppContext(A,v){var P;((P=this.apps)[A]||(P[A]={})).context=v,this.log(`[Slide] new ${A}`)}setAppController(A,v){var P;((P=this.apps)[A]||(P[A]={})).controller=v}deleteApp(A){delete this.apps[A],this.log(`[Slide] delete ${A}`)}initialize(){window.addEventListener("message",this._onMessage)}dispose(){window.removeEventListener("message",this._onMessage)}log(...A){this.roomLogger?this.roomLogger.info(...A):this.enable&&console.log(...A)}verbose(...A){this.roomLogger?this.roomLogger.debug(...A):this.enable&&this.level==="verbose"&&console.log(...A)}warn(...A){this.roomLogger?this.roomLogger.warn(...A):console.warn(...A)}}const Lr=new lw(!1),Oi=Lr.log.bind(Lr),Mc=Lr.verbose.bind(Lr),hw=b=>{Lr.roomLogger=b.logger};function fg(b){try{const A=window.getComputedStyle(b).backgroundColor;if(A!=="rgba(0, 0, 0, 0)"&&A!=="transparent")return A;if(b.parentElement)return fg(b.parentElement)}catch{}return"#ffffff"}function uw(b){const A=aw.get(b);if(A&&A.model==="rgb"){const v=A.value,M=(((Math.round(v[0])&255)<<16)+((Math.round(v[1])&255)<<8)+(Math.round(v[2])&255)).toString(16);return"#"+"000000".substring(M.length)+M}else return b}let Th="";function mg(b){return Th||(Th=uw(fg(b)),Oi("[Slide] guess bg color",Th)),Th}const cw=b=>b.tracker;function gg(b,A=[]){const{width:v,height:P,slideCount:M,slideState:I}=b,{taskId:D,url:k}=I,V=[];for(let X=1;X<=M;++X){const Z=A.find($=>$.indexOf(`preview/${X}.png`)>=0);Z?V.push({width:v,height:P,thumbnail:Z,src:"ppt"}):V.push({width:v,height:P,thumbnail:`${k}/${D}/preview/${X}.png`,src:"ppt"})}return V}function ng(b,A,v,P){var k;const M=v.slideState.currentSlideIndex;if(!(M>0)||!A.getIsWritable())return;const I=[P,M].join("/");if(A.isAddApp&&b.scenePathType(I)!=="page"){b.removeScenes(P);const V=v.slideCount,X=[];for(let Z=1;Z<=V;++Z)X.push({name:`${Z}`});b.putScenes(P,X)}let D;A.getBox().focus?D=b.state.sceneState.scenePath:D=((k=A.getView())==null?void 0:k.focusScenePath)||"",D!==I&&b.scenePathType(I)==="page"&&A.setScenePath(I)}const Nc="https://convertcdn.netless.link/dynamicConvert",dw=40,Cc={taskId:"",url:"",state:null,resourceList:[],previewList:[]},pw=function(){};class fw{constructor({context:A,anchor:v,onRenderStart:P,onPageChanged:M,onTransitionStart:I,onTransitionEnd:D,onNavigate:k,onError:V,onRenderError:X,showRenderError:Z,invisibleBehavior:$}){this.sideEffect=new Ka,this.previewList=[],this.ready=!1,this.readyPromise=new Promise(ht=>{this.resolveReady=Mt=>{this.ready?Oi("[Slide] render end",Mt):setTimeout(()=>{this.ready=!0,ht()},1e3)}}),this.onSyncDispatch=ht=>{if(this.context.getIsWritable()&&this.room){const Mt={type:li.SLIDE_EVENTS.syncDispatch,payload:ht};Mc("[Slide] dispatch",JSON.stringify(ht)),this.context.dispatchMagixEvent(li.SLIDE_EVENTS.syncDispatch,Mt)}},this.magixEventListener=ht=>{const{type:Mt,payload:wt}=ht.payload;Mt===li.SLIDE_EVENTS.syncDispatch&&(this.syncStateOnce(),Mc("[Slide] receive",JSON.stringify(wt)),this.slide.emit(li.SLIDE_EVENTS.syncReceive,wt))},this.onStateChange=ht=>{this.context.getIsWritable()&&(Mc("[Slide] state change",JSON.stringify(ht,null,2)),this.context.storage.setState({state:ht}))},this.pollCount=0,this.pollReadyState=()=>{this.ready?this._toFreeze===1?this.freeze():this._toFreeze===-1&&this.unfreeze():this.pollCount<dw?(this.pollCount++,setTimeout(this.pollReadyState,500)):(this.pollCount=0,Oi("[Slide] init timeout"))},this._pageCount=0,this.destroyed=!1,this.timestamp=()=>this.room&&this.room.calibrationTimestamp?this.room.calibrationTimestamp:this.player?this.player.beginTimestamp+this.player.progressTime:Date.now(),this.isFrozen=!1,this._toFreeze=0,this.freeze=()=>{this.isFrozen=!0,this.ready?(Oi("[Slide] freeze",this.context.appId),this.invisibleBehavior==="frozen"?this.slide.frozen():this.slide.pause()):this._toFreeze=1},this.unfreeze=async()=>{if(!!this.visible)if(this.isFrozen=!1,this.ready){let ht=!1;if(Oi("[Slide] unfreeze",this.context.appId),this.invisibleBehavior==="frozen"&&!this.slide.view?(this.slide.release(),ht=!0):this.slide.resume(),ht){const Mt=this.context.storage.state.state;Mt&&(Oi("[Slide] sync storage",JSON.stringify(Mt)),this.slide.setSlideState(Mt))}}else this._toFreeze=-1},this.onVisibilityChange=async()=>{(this.visible=document.visibilityState==="visible")?(Oi("[Slide] unfreeze because tab becomes visible",{savedIsFrozen:this.savedIsFrozen}),this.savedIsFrozen||this.unfreeze()):(this.savedIsFrozen=this.isFrozen,Oi("[Slide] freeze because tab becomes invisible"),this.freeze())},this.invisibleBehavior=$!=null?$:"frozen",this.onRenderStart=P,this.onPageChanged=M,this.onTransitionStart=I,this.onTransitionEnd=D,this.onNavigate=k||pw,this.onError=V,this.onRenderError=X,this.showRenderError=Z!=null?Z:!0,this.context=A,this.room=A.getRoom(),this.player=this.room?void 0:A.getDisplayer(),hw(this.room||this.player),this.slide=this.createSlide(v,{whiteTracker:cw(A.getDisplayer())}),this.syncStateOnceFlag=!this.context.isAddApp,this.visible=document.visibilityState==="visible",this.savedIsFrozen=!1,this.initialize()}jumpToPage(A,v){this.ready&&(A=hg(A,1,this.pageCount),this.onNavigate(A,v),this.slide.renderSlide(A))}initialize(){this.registerEventListeners(),this.kickStart()}kickStart(){const{context:A,slide:v}=this;A.getIsWritable()&&A.storage.ensureState(Cc);const{taskId:P,url:M,resourceList:I,previewList:D,state:k}=A.storage.state;this.previewList=D,I&&I.length>0?v.setResourceList(P,I):v.setResource(P,M||Nc),k?(Oi("[Slide] init with state",JSON.stringify(k)),this.syncStateOnceFlag=!1,v.setSlideState(k)):A.isAddApp&&(Oi("[Slide] init by renderSlide",1),v.renderSlide(1)),this.pollReadyState()}registerEventListeners(){const{context:A,slide:v}=this,P=this.sideEffect.addDisposer(A.storage.addStateChangedListener(()=>{A.storage.state.state&&(this.syncStateOnce(),this.sideEffect.flush(P))}));this.sideEffect.add(()=>A.addMagixEventListener(li.SLIDE_EVENTS.syncDispatch,this.magixEventListener,{fireSelfEventAfterCommit:!0})),v.on(li.SLIDE_EVENTS.renderStart,this.onRenderStart),v.on(li.SLIDE_EVENTS.slideChange,this.onPageChanged),v.on(li.SLIDE_EVENTS.renderEnd,this.onTransitionEnd),v.on(li.SLIDE_EVENTS.mainSeqStepStart,this.onTransitionStart),v.on(li.SLIDE_EVENTS.mainSeqStepEnd,this.onTransitionEnd),v.on(li.SLIDE_EVENTS.renderError,this.onError),v.on(li.SLIDE_EVENTS.stateChange,this.onStateChange),v.on(li.SLIDE_EVENTS.syncDispatch,this.onSyncDispatch),v.on(li.SLIDE_EVENTS.renderEnd,this.resolveReady),this.sideEffect.add(()=>(document.addEventListener("visibilitychange",this.onVisibilityChange),()=>document.removeEventListener("visibilitychange",this.onVisibilityChange)))}syncStateOnce(){if(this.syncStateOnceFlag){this.context.getIsWritable()&&this.context.storage.ensureState(Cc);const{state:A}=this.context.storage.state;A&&(Oi("[Slide] sync with state (once)",JSON.stringify(A)),this.slide.setSlideState(A),this.syncStateOnceFlag=!1)}}get pageCount(){return this._pageCount>0?this._pageCount:(this._pageCount=this.slide.slideCount,this._pageCount)}get page(){return this.slide.slideState.currentSlideIndex}createSlide(A,v={}){var I,D,k;const P=this.context.getAppOptions()||{};return new li.Slide({anchor:A,interactive:!0,mode:"interactive",controller:Lr.enable,enableGlobalClick:(I=P.enableGlobalClick)!=null?I:!0,renderOptions:{minFPS:P.minFPS||25,maxFPS:P.maxFPS||30,autoFPS:(D=P.autoFPS)!=null?D:!0,autoResolution:(k=P.autoResolution)!=null?k:!0,resolution:P.resolution,transactionBgColor:P.bgColor||mg(A),maxResolutionLevel:P.maxResolutionLevel,forceCanvas:P.forceCanvas,enableNvidiaDetect:P.enableNvidiaDetect},fixedFrameSize:P.fixedFrameSize,loaderDelegate:P.loaderDelegate,navigatorDelegate:P.navigatorDelegate,urlInterrupter:P.urlInterrupter,resourceTimeout:P.resourceTimeout,rtcAudio:P.rtcAudio,useLocalCache:P.useLocalCache,logger:P.logger,whiteTracker:v.whiteTracker,timestamp:this.timestamp,skipActionWhenFrozen:!0,customLinks:P.customLinks})}destroy(){this.sideEffect.flushAll(),this.destroyed||(Oi("[Slide] destroy slide (once)"),this.slide.destroy(),this.destroyed=!0)}}function mw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-sidebar`),v.setAttribute("viewBox","0 0 64 64");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M50 8H14c-3.309 0-6 2.691-6 6v36c0 3.309 2.691 6 6 6h36c3.309 0 6-2.691 6-6V14c0-3.309-2.691-6-6-6zM12 50V14c0-1.103.897-2 2-2h8v40h-8c-1.103 0-2-.897-2-2zm40 0c0 1.103-.897 2-2 2H26V12h24c1.103 0 2 .897 2 2z"),v.appendChild(P),v}function gw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-arrow-left`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M177.81 249.959L337.473 90.295c2.722-2.865 2.651-7.378-.143-10.1-2.793-2.65-7.163-2.65-9.956 0l-164.75 164.75c-2.793 2.793-2.793 7.306 0 10.1l164.75 164.75c2.865 2.722 7.378 2.65 10.099-.143 2.651-2.794 2.651-7.163 0-9.957L177.809 249.959z"),v.appendChild(P),v}function vw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-arrow-right`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M322.19 250.041L162.527 409.705c-2.722 2.865-2.651 7.378.143 10.1 2.793 2.65 7.163 2.65 9.956 0l164.75-164.75c2.793-2.793 2.793-7.306 0-10.1l-164.75-164.75c-2.865-2.722-7.378-2.65-10.099.143-2.651 2.794-2.651 7.163 0 9.957l159.664 159.736z"),v.appendChild(P),v}function _w(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-play`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M418.158 257.419L174.663 413.33c-6.017 3.919-15.708 3.772-21.291-.29-2.791-2.018-4.295-4.483-4.295-7.084V94.109c0-5.65 6.883-10.289 15.271-10.289 4.298 0 8.391 1.307 11.181 3.332l242.629 155.484c6.016 3.917 6.451 10.292.649 14.491-.216.154-.432.154-.649.292zM170.621 391.288l223.116-141.301L170.71 107.753l-.089 283.535z"),v.appendChild(P),v}function yw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-pause`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M312.491 78.261c0-6.159 4.893-11.213 11.04-11.213 6.158 0 11.211 5.054 11.211 11.213v343.478c0 6.159-5.053 11.213-11.211 11.213-6.147 0-11.04-5.054-11.04-11.213V78.261zM165.257 78.261c0-6.159 4.893-11.213 11.04-11.213 6.158 0 11.211 5.054 11.211 11.213v343.478c0 6.159-5.053 11.213-11.211 11.213-6.147 0-11.04-5.054-11.04-11.213V78.261z"),v.appendChild(P),v}const Wo=typeof window!="undefined",vg=Wo&&!("onscroll"in window)||typeof navigator!="undefined"&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),_g=Wo&&"IntersectionObserver"in window,yg=Wo&&"classList"in document.createElement("p"),xg=Wo&&window.devicePixelRatio>1,xw={elements_selector:".lazy",container:vg||Wo?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_bg_set:"bg-set",data_poster:"poster",class_applied:"applied",class_loading:"loading",class_loaded:"loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1,restore_on_error:!1},bg=b=>Object.assign({},xw,b),ig=function(b,A){let v;const P="LazyLoad::Initialized",M=new b(A);try{v=new CustomEvent(P,{detail:{instance:M}})}catch{v=document.createEvent("CustomEvent"),v.initCustomEvent(P,!1,!1,{instance:M})}window.dispatchEvent(v)},bw=(b,A)=>{if(!!A)if(!A.length)ig(b,A);else for(let v=0,P;P=A[v];v+=1)ig(b,P)},po="src",Dc="srcset",Fc="sizes",Tg="poster",Qa="llOriginalAttrs",Sg="data",Bc="loading",wg="loaded",Eg="applied",Tw="entered",kc="error",Ag="native",Mg="data-",Cg="ll-status",mr=(b,A)=>b.getAttribute(Mg+A),Sw=(b,A,v)=>{const P=Mg+A;if(v===null){b.removeAttribute(P);return}b.setAttribute(P,v)},$a=b=>mr(b,Cg),vs=(b,A)=>Sw(b,Cg,A),Eh=b=>vs(b,null),Uc=b=>$a(b)===null,ww=b=>$a(b)===Bc,Ew=b=>$a(b)===kc,Gc=b=>$a(b)===Ag,Aw=[Bc,wg,Eg,kc],Mw=b=>Aw.indexOf($a(b))>=0,Xo=(b,A,v,P)=>{if(!(!b||typeof b!="function")){if(P!==void 0){b(A,v,P);return}if(v!==void 0){b(A,v);return}b(A)}},ea=(b,A)=>{if(A!==""){if(yg){b.classList.add(A);return}b.className+=(b.className?" ":"")+A}},no=(b,A)=>{if(A!==""){if(yg){b.classList.remove(A);return}b.className=b.className.replace(new RegExp("(^|\\s+)"+A+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")}},Cw=b=>{b.llTempImage=document.createElement("IMG")},Rw=b=>{delete b.llTempImage},Rg=b=>b.llTempImage,Ah=(b,A)=>{if(!A)return;const v=A._observer;!v||v.unobserve(b)},Iw=b=>{b.disconnect()},Pw=(b,A,v)=>{A.unobserve_entered&&Ah(b,v)},Hc=(b,A)=>{!b||(b.loadingCount+=A)},Ow=b=>{!b||(b.toLoadCount-=1)},Ig=(b,A)=>{!b||(b.toLoadCount=A)},Lw=b=>b.loadingCount>0,Nw=b=>b.toLoadCount>0,Pg=b=>{let A=[];for(let v=0,P;P=b.children[v];v+=1)P.tagName==="SOURCE"&&A.push(P);return A},jc=(b,A)=>{const v=b.parentNode;if(!v||v.tagName!=="PICTURE")return;Pg(v).forEach(A)},Og=(b,A)=>{Pg(b).forEach(A)},Mh=[po],Lg=[po,Tg],Ja=[po,Dc,Fc],Ng=[Sg],Ch=b=>!!b[Qa],Dg=b=>b[Qa],Fg=b=>delete b[Qa],ta=(b,A)=>{if(Ch(b))return;const v={};A.forEach(P=>{v[P]=b.getAttribute(P)}),b[Qa]=v},Dw=b=>{Ch(b)||(b[Qa]={backgroundImage:b.style.backgroundImage})},Fw=(b,A,v)=>{if(!v){b.removeAttribute(A);return}b.setAttribute(A,v)},gs=(b,A)=>{if(!Ch(b))return;const v=Dg(b);A.forEach(P=>{Fw(b,P,v[P])})},Bw=b=>{if(!Ch(b))return;const A=Dg(b);b.style.backgroundImage=A.backgroundImage},Bg=(b,A,v)=>{ea(b,A.class_applied),vs(b,Eg),v&&(A.unobserve_completed&&Ah(b,A),Xo(A.callback_applied,b,v))},kg=(b,A,v)=>{ea(b,A.class_loading),vs(b,Bc),v&&(Hc(v,1),Xo(A.callback_loading,b,v))},Vo=(b,A,v)=>{!v||b.setAttribute(A,v)},rg=(b,A)=>{Vo(b,Fc,mr(b,A.data_sizes)),Vo(b,Dc,mr(b,A.data_srcset)),Vo(b,po,mr(b,A.data_src))},kw=(b,A)=>{jc(b,v=>{ta(v,Ja),rg(v,A)}),ta(b,Ja),rg(b,A)},Uw=(b,A)=>{ta(b,Mh),Vo(b,po,mr(b,A.data_src))},Gw=(b,A)=>{Og(b,v=>{ta(v,Mh),Vo(v,po,mr(v,A.data_src))}),ta(b,Lg),Vo(b,Tg,mr(b,A.data_poster)),Vo(b,po,mr(b,A.data_src)),b.load()},Hw=(b,A)=>{ta(b,Ng),Vo(b,Sg,mr(b,A.data_src))},jw=(b,A,v)=>{const P=mr(b,A.data_bg),M=mr(b,A.data_bg_hidpi),I=xg&&M?M:P;!I||(b.style.backgroundImage=`url("${I}")`,Rg(b).setAttribute(po,I),kg(b,A,v))},zw=(b,A,v)=>{const P=mr(b,A.data_bg_multi),M=mr(b,A.data_bg_multi_hidpi),I=xg&&M?M:P;!I||(b.style.backgroundImage=I,Bg(b,A,v))},Vw=(b,A,v)=>{const P=mr(b,A.data_bg_set);if(!P)return;const M=P.split("|");let I=M.map(D=>`image-set(${D})`);b.style.backgroundImage=I.join(),b.style.backgroundImage===""&&(I=M.map(D=>`-webkit-image-set(${D})`),b.style.backgroundImage=I.join()),Bg(b,A,v)},Ug={IMG:kw,IFRAME:Uw,VIDEO:Gw,OBJECT:Hw},Ww=(b,A)=>{const v=Ug[b.tagName];!v||v(b,A)},Xw=(b,A,v)=>{const P=Ug[b.tagName];!P||(P(b,A),kg(b,A,v))},Yw=["IMG","IFRAME","VIDEO","OBJECT"],qw=b=>Yw.indexOf(b.tagName)>-1,Gg=(b,A)=>{A&&!Lw(A)&&!Nw(A)&&Xo(b.callback_finish,A)},og=(b,A,v)=>{b.addEventListener(A,v),b.llEvLisnrs[A]=v},Jw=(b,A,v)=>{b.removeEventListener(A,v)},zc=b=>!!b.llEvLisnrs,Kw=(b,A,v)=>{zc(b)||(b.llEvLisnrs={});const P=b.tagName==="VIDEO"?"loadeddata":"load";og(b,P,A),og(b,"error",v)},Rc=b=>{if(!zc(b))return;const A=b.llEvLisnrs;for(let v in A){const P=A[v];Jw(b,v,P)}delete b.llEvLisnrs},Hg=(b,A,v)=>{Rw(b),Hc(v,-1),Ow(v),no(b,A.class_loading),A.unobserve_completed&&Ah(b,v)},Zw=(b,A,v,P)=>{const M=Gc(A);Hg(A,v,P),ea(A,v.class_loaded),vs(A,wg),Xo(v.callback_loaded,A,P),M||Gg(v,P)},Qw=(b,A,v,P)=>{const M=Gc(A);Hg(A,v,P),ea(A,v.class_error),vs(A,kc),Xo(v.callback_error,A,P),v.restore_on_error&&gs(A,Ja),M||Gg(v,P)},Vc=(b,A,v)=>{const P=Rg(b)||b;if(zc(P))return;Kw(P,D=>{Zw(D,b,A,v),Rc(P)},D=>{Qw(D,b,A,v),Rc(P)})},$w=(b,A,v)=>{Cw(b),Vc(b,A,v),Dw(b),jw(b,A,v),zw(b,A,v),Vw(b,A,v)},tE=(b,A,v)=>{Vc(b,A,v),Xw(b,A,v)},Wc=(b,A,v)=>{qw(b)?tE(b,A,v):$w(b,A,v)},eE=(b,A,v)=>{b.setAttribute("loading","lazy"),Vc(b,A,v),Ww(b,A),vs(b,Ag)},sg=b=>{b.removeAttribute(po),b.removeAttribute(Dc),b.removeAttribute(Fc)},nE=b=>{jc(b,A=>{sg(A)}),sg(b)},jg=b=>{jc(b,A=>{gs(A,Ja)}),gs(b,Ja)},iE=b=>{Og(b,A=>{gs(A,Mh)}),gs(b,Lg),b.load()},rE=b=>{gs(b,Mh)},oE=b=>{gs(b,Ng)},sE={IMG:jg,IFRAME:rE,VIDEO:iE,OBJECT:oE},aE=b=>{const A=sE[b.tagName];if(!A){Bw(b);return}A(b)},lE=(b,A)=>{Uc(b)||Gc(b)||(no(b,A.class_entered),no(b,A.class_exited),no(b,A.class_applied),no(b,A.class_loading),no(b,A.class_loaded),no(b,A.class_error))},hE=(b,A)=>{aE(b),lE(b,A),Eh(b),Fg(b)},uE=(b,A,v,P)=>{!v.cancel_on_exit||!ww(b)||b.tagName==="IMG"&&(Rc(b),nE(b),jg(b),no(b,v.class_loading),Hc(P,-1),Eh(b),Xo(v.callback_cancel,b,A,P))},cE=(b,A,v,P)=>{const M=Mw(b);vs(b,Tw),ea(b,v.class_entered),no(b,v.class_exited),Pw(b,v,P),Xo(v.callback_enter,b,A,P),!M&&Wc(b,v,P)},dE=(b,A,v,P)=>{Uc(b)||(ea(b,v.class_exited),uE(b,A,v,P),Xo(v.callback_exit,b,A,P))},pE=["IMG","IFRAME","VIDEO"],zg=b=>b.use_native&&"loading"in HTMLImageElement.prototype,fE=(b,A,v)=>{b.forEach(P=>{pE.indexOf(P.tagName)!==-1&&eE(P,A,v)}),Ig(v,0)},mE=b=>b.isIntersecting||b.intersectionRatio>0,gE=b=>({root:b.container===document?null:b.container,rootMargin:b.thresholds||b.threshold+"px"}),vE=(b,A,v)=>{b.forEach(P=>mE(P)?cE(P.target,P,A,v):dE(P.target,P,A,v))},_E=(b,A)=>{A.forEach(v=>{b.observe(v)})},yE=(b,A)=>{Iw(b),_E(b,A)},xE=(b,A)=>{!_g||zg(b)||(A._observer=new IntersectionObserver(v=>{vE(v,b,A)},gE(b)))},Vg=b=>Array.prototype.slice.call(b),Sh=b=>b.container.querySelectorAll(b.elements_selector),bE=b=>Vg(b).filter(Uc),TE=b=>Ew(b),SE=b=>Vg(b).filter(TE),ag=(b,A)=>bE(b||Sh(A)),wE=(b,A)=>{SE(Sh(b)).forEach(P=>{no(P,b.class_error),Eh(P)}),A.update()},EE=(b,A)=>{!Wo||(A._onlineHandler=()=>{wE(b,A)},window.addEventListener("online",A._onlineHandler))},AE=b=>{!Wo||window.removeEventListener("online",b._onlineHandler)},tl=function(b,A){const v=bg(b);this._settings=v,this.loadingCount=0,xE(v,this),EE(v,this),this.update(A)};tl.prototype={update:function(b){const A=this._settings,v=ag(b,A);if(Ig(this,v.length),vg||!_g){this.loadAll(v);return}if(zg(A)){fE(v,A,this);return}yE(this._observer,v)},destroy:function(){this._observer&&this._observer.disconnect(),AE(this),Sh(this._settings).forEach(b=>{Fg(b)}),delete this._observer,delete this._settings,delete this._onlineHandler,delete this.loadingCount,delete this.toLoadCount},loadAll:function(b){const A=this._settings;ag(b,A).forEach(P=>{Ah(P,this),Wc(P,A,this)})},restoreAll:function(){const b=this._settings;Sh(b).forEach(A=>{hE(A,b)})}};tl.load=(b,A)=>{const v=bg(A);Wc(b,v)};tl.resetStatus=b=>{Eh(b)};Wo&&bw(tl,window.lazyLoadOptions);class Wg{constructor({readonly:A,onNewPageIndex:v,onPlay:P,onPagesReady:M,urlInterrupter:I}){this._pages=[],this.pageIndex=0,this.setPaused=()=>{this.$btnPlay.classList.toggle(this.wrapClassName("footer-btn-playing"),!1)},this.setPlaying=()=>{this.$btnPlay.classList.toggle(this.wrapClassName("footer-btn-playing"),!0)},this.namespace="netless-app-slide",this.isShowPreview=!1,this.isSmallBox=!1,this.sideEffect=new Ka,this.readonly=A,this.onNewPageIndex=v,this.onPlay=P,this.onPagesReady=M,this.urlInterrupter=I||(D=>D),this.render()}set pages(A){this._pages=A,this.refreshPreview().then(this.refreshBtnSidebar.bind(this)),this.refreshTotalPage(),this.onPagesReady&&this.onPagesReady(A)}get pages(){return this._pages}unmount(){this.$content.remove(),this.$footer.remove()}setReadonly(A){this.readonly=A,this.$content.classList.toggle(this.wrapClassName("readonly"),A),this.$footer.classList.toggle(this.wrapClassName("readonly"),A),this.$pageNumberInput.disabled=A}destroy(){var A;(A=this.previewLazyLoad)==null||A.destroy(),this.sideEffect.flushAll(),this.unmount()}setPageIndex(A){Number.isNaN(A)||(this.pageIndex=A,this.$pageNumberInput.value=String(A+1))}refreshTotalPage(){this.pages.length?this.$totalPage.textContent=" / "+this.pages.length:this.$totalPage.textContent=""}setSmallBox(A){this.isSmallBox!==A&&(this.isSmallBox=A,this.$footer.classList.toggle(this.wrapClassName("float-footer"),A))}render(){return this.renderContent(),this.renderFooter(),this.$content}renderContent(){if(!this.$content){const A=document.createElement("div");A.className=this.wrapClassName("content"),this.$content=A,this.readonly&&A.classList.add(this.wrapClassName("readonly")),A.appendChild(this.renderPreviewMask()),A.appendChild(this.renderPreview())}return this.$content}renderPreview(){if(!this.$preview){const A=document.createElement("div");A.className=this.wrapClassName("preview")+" tele-fancy-scrollbar",this.$preview=A,this.refreshPreview(),this.sideEffect.addEventListener(A,"click",v=>{var M;if(this.readonly)return;const P=(M=v.target.dataset)==null?void 0:M.pageIndex;P&&(v.preventDefault(),v.stopPropagation(),v.stopImmediatePropagation(),this.onNewPageIndex(Number(P),"preview"),this.togglePreview(!1))})}return this.$preview}async refreshPreview(){var I,D;const{$preview:A}=this,v=this.wrapClassName("preview-page"),P=this.wrapClassName("preview-page-name");for(;A.firstChild;)A.firstChild.remove();const M=[];for(let k=0,V=this.pages.length;k<V;k++){const X=this.pages[k],Z=(I=X.thumbnail)!=null?I:X.src.startsWith("ppt")?void 0:X.src;Z&&(M[k]=this.urlInterrupter(Z))}for(let k=0,V=this.pages.length;k<V;k++)M[k]=await M[k];this.pages.forEach((k,V)=>{const X=M[V];if(!X)return;const Z=String(V),$=document.createElement("a");$.className=v+" "+this.wrapClassName(`preview-page-${V}`),$.setAttribute("href","#"),$.dataset.pageIndex=Z;const ht=document.createElement("span");ht.className=P,ht.textContent=String(V+1),ht.dataset.pageIndex=Z;const Mt=document.createElement("img");Mt.width=k.width,Mt.height=k.height,Mt.dataset.src=X,Mt.dataset.pageIndex=Z,$.appendChild(Mt),$.appendChild(ht),A.appendChild($)}),(D=this.previewLazyLoad)==null||D.update()}renderPreviewMask(){return this.$previewMask||(this.$previewMask=document.createElement("div"),this.$previewMask.className=this.wrapClassName("preview-mask"),this.sideEffect.addEventListener(this.$previewMask,"click",A=>{this.readonly||A.target===this.$previewMask&&this.togglePreview(!1)})),this.$previewMask}refreshBtnSidebar(){this.$btnSidebar.style.display=this.pages.length>0?"":"none"}renderFooter(){if(!this.$footer){const A=document.createElement("div");A.className=this.wrapClassName("footer"),this.$footer=A,this.readonly&&A.classList.add(this.wrapClassName("readonly")),this.isSmallBox&&A.classList.add(this.wrapClassName("float-footer"));const v=this.renderFooterBtn("btn-sidebar",mw(this.namespace));this.sideEffect.addEventListener(v,"click",()=>{this.readonly||this.togglePreview()}),this.$btnSidebar=v,this.$btnSidebar.style.display="none",this.$footer.appendChild(v);const P=document.createElement("div");P.className=this.wrapClassName("page-jumps");const M=this.renderFooterBtn("btn-page-back",gw(this.namespace));if(this.sideEffect.addEventListener(M,"click",()=>{this.readonly||this.onNewPageIndex(this.pageIndex-1,"navigation")}),P.appendChild(M),this.onPlay){const X=this.renderFooterBtn("btn-page-play",_w(this.namespace),yw(this.namespace));this.$btnPlay=X,this.sideEffect.addEventListener(X,"click",()=>{this.readonly||(this.setPlaying(),this.onPlay&&this.onPlay())}),P.appendChild(X)}const I=this.renderFooterBtn("btn-page-next",vw(this.namespace));this.sideEffect.addEventListener(I,"click",()=>{this.readonly||this.onNewPageIndex(this.pageIndex+1,"navigation")}),P.appendChild(I);const D=document.createElement("div");D.className=this.wrapClassName("page-number");const k=document.createElement("input");k.className=this.wrapClassName("page-number-input"),k.value=String(this.pageIndex+1),this.readonly&&(k.disabled=!0),this.$pageNumberInput=k,this.sideEffect.addEventListener(k,"focus",()=>{k.select()}),this.sideEffect.addEventListener(k,"change",()=>{this.readonly||k.value&&this.onNewPageIndex(Number(k.value)-1,"input")});const V=document.createElement("span");this.$totalPage=V,D.appendChild(k),D.appendChild(V),this.$footer.appendChild(P),this.$footer.appendChild(D)}return this.$footer}renderFooterBtn(A,v,P){const M=document.createElement("button");return M.className=this.wrapClassName("footer-btn")+" "+this.wrapClassName(A),M.appendChild(v),P&&M.appendChild(P),M}togglePreview(A){if(this.isShowPreview=A!=null?A:!this.isShowPreview,this.$content.classList.toggle(this.wrapClassName("preview-active"),this.isShowPreview),this.isShowPreview){const v=this.$preview.querySelector("."+this.wrapClassName(`preview-page-${this.pageIndex}`));v&&(this.previewLazyLoad||(this.previewLazyLoad=new tl({container:this.$preview,elements_selector:`.${this.wrapClassName("preview-page>img")}`})),this.$preview.scrollTo({top:v.offsetTop-16}))}}wrapClassName(A){return`${this.namespace}-${A}`}}const ME=new Set(["clicker"]),CE=function(){};class RE{constructor({context:A,box:v,view:P,mountSlideController:M,mountWhiteboard:I,baseScenePath:D,appId:k,urlInterrupter:V,onPagesReady:X,onNavigate:Z}){this.slideController=null,this.isViewMounted=!1,this.justSildeReadonly=!1,this.onError=({error:$,index:ht})=>{var Mt,wt;this.viewer.setPaused(),(Mt=this.slideController)!=null&&Mt.showRenderError&&(this.$overlay.textContent=`Error on slide[page=${this.slideController.page}]: ${$.message}`,this.$overlay.style.opacity="1"),(wt=this.slideController)!=null&&wt.onRenderError&&this.slideController.onRenderError($,ht),Lr.warn("[Slide] render error",$)},this.onRenderStart=()=>{this.$whiteboardView.classList.add(this.wrapClassName("wb-view-hidden")),this.viewer.setPlaying()},this.onRenderEnd=()=>{},this.onPageChanged=()=>{clearTimeout(this._onPageChangedTimer),this._onPageChangedTimer=setTimeout(this._onPageChanged,200)},this._onPageChangedTimer=0,this._onPageChanged=()=>{this.$overlay.style.opacity="",this.$whiteboardView.classList.remove(this.wrapClassName("wb-view-hidden"))},this.refreshPages=()=>{this.slideController&&(this.viewer.pages=gg(this.slideController.slide,this.slideController.previewList),this.viewer.setPageIndex(this.getPageIndex(this.slideController.page)),this.scaleDocsToFit())},this.scaleDocsToFit=()=>{if(this.slideController){const{width:$,height:ht}=this.slideController.slide;$&&ht&&(this.whiteboardView.moveCameraToContain({originX:-$/2,originY:-ht/2,width:$,height:ht,animationMode:"immediately"}),this.whiteboardView.setCameraBound({damping:1,maxContentMode:()=>this.whiteboardView.camera.scale,minContentMode:()=>this.whiteboardView.camera.scale,centerX:0,centerY:0,width:$,height:ht}),this.isViewMounted||(this.isViewMounted=!0,console.log("[Slide] mount whiteboard view"),this.mountWhiteboard(this.$whiteboardView)))}},this.onPlay=()=>{this.slideController&&this.slideController.slide.nextStep()},this.onNewPageIndex=($,ht)=>{this.slideController&&this.slideController.jumpToPage($+1,ht)},this.sideEffect=new Ka,this.namespace="netless-app-slide",this.toPdf=async()=>{if(!this.slideController){this.reportProgress(100,null);return}const{slide:$}=this.slideController,ht=1920,Mt=document.createElement("canvas"),wt=Mt.getContext("2d"),{slideCount:N,width:R,height:U}=$;let W=Math.floor(R),O=Math.floor(U);W>ht&&(W=ht,O=Math.floor(U*W/R)),O>ht&&(O=ht,W=Math.floor(R*O/U)),Mt.width=W,Mt.height=O;const j=document.createElement("canvas");j.width=W,j.height=O;const tt=j.getContext("2d");if(!tt||!this.getWhiteSnapshot||!wt)return this.reportProgress(100,null),null;const H=W>O?"l":"p",{jsPDF:Lt}=await Promise.resolve().then(function(){return qS(require("jspdf"))}),Vt=new Lt({format:[W,O],orientation:H,compress:!0});for(let F=1;F<=N;F++){let mt=null;try{mt=await this.slideController.slide.snapshotWithTimingEnd(F)}catch{}if(mt){const Dt=document.createElement("img");Dt.src=mt,await new Promise(J=>Dt.onload=J),wt.drawImage(Dt,0,0,W,O)}tt.clearRect(0,0,W,O),await this.getWhiteSnapshot(F,j,tt,R,U);try{const Dt=j.toDataURL("image/png"),J=document.createElement("img");J.src=Dt,await new Promise(dt=>J.onload=dt),wt.drawImage(J,0,0,W,O)}catch{}const et=Mt.toDataURL("image/jpeg",.6);F>1&&Vt.addPage(),Vt.addImage(et,"JPEG",0,0,W,O,"","FAST"),wt.clearRect(0,0,W,O),Math.ceil(F/N*100)<100&&this.reportProgress(Math.ceil(F/N*100),null)}const st=Vt.output("arraybuffer"),z=this.box.title;this.reportProgress(100,{pdf:st,title:z})},this.context=A,this.box=v,this.whiteboardView=P,this.mountSlideController=M,this.mountWhiteboard=I,this.onNavigate=Z||CE,this.baseScenePath=D,this.appId=k,this.viewer=new Wg({readonly:v.readonly,onNewPageIndex:this.onNewPageIndex,onPlay:this.onPlay,urlInterrupter:V,onPagesReady:X}),this.sideEffect.add(()=>{const $=ht=>{this.setReadonly(ht)};return v.events.on("readonly",$),()=>v.events.off("readonly",$)}),this.sideEffect.add(()=>{const $=ht=>{ht.data.type==="@netless/_request_save_pdf_"&&ht.data.appId===this.appId&&this.toPdf().catch(()=>this.reportProgress(100,null))};return window.addEventListener("message",$),()=>{window.removeEventListener("message",$)}}),this.render()}setJustSildeReadonly(A){var v;this.justSildeReadonly=A,(v=this.slideController)==null||v.slide.setInteractive(!this.justSildeReadonly)}render(){this.viewer.$content.appendChild(this.renderSlideContainer()),this.viewer.$content.appendChild(this.renderWhiteboardView()),this.viewer.$content.appendChild(this.renderOverlay()),this.sideEffect.addEventListener(window,"keydown",A=>{if(!this.justSildeReadonly&&this.box.focus&&this.slideController&&!ew(A.target))switch(A.key){case"ArrowUp":case"ArrowLeft":{this.slideController.slide.prevStep(),this.onNavigate(this.slideController.page,"keydown");break}case"ArrowRight":case"ArrowDown":{this.slideController.slide.nextStep(),this.onNavigate(this.slideController.page,"keydown");break}}})}renderOverlay(){if(!this.$overlay){const A=document.createElement("div");A.className=this.wrapClassName("overlay"),this.$overlay=A}return this.$overlay}renderSlideContainer(){if(!this.$slide){const A=document.createElement("div");A.className=this.wrapClassName("slide"),A.dataset.appKind="Slide",this.$slide=A}return this.$slide}renderWhiteboardView(){return this.$whiteboardView||(this.$whiteboardView=document.createElement("div"),this.$whiteboardView.className=this.wrapClassName("wb-view")),this.$whiteboardView}mount(){return this.box.mountContent(this.viewer.$content),this.box.mountFooter(this.viewer.$footer),this.slideController=this.mountSlideController({anchor:this.$slide,onRenderStart:this.onRenderStart,onRenderEnd:this.onRenderEnd,onTransitionStart:this.viewer.setPlaying,onTransitionEnd:this.viewer.setPaused,onReady:this.refreshPages,onNavigate:this.onNavigate,onError:this.onError}),this.scaleDocsToFit(),this.sideEffect.add(()=>(this.whiteboardView.callbacks.on("onSizeUpdated",this.scaleDocsToFit),()=>this.whiteboardView.callbacks.off("onSizeUpdated",this.scaleDocsToFit))),this}getPageIndex(A){return(A>0?A:1)-1}unmount(){return this.slideController&&(this.slideController.destroy(),this.slideController=null),this.viewer.unmount(),this}setReadonly(A){this.viewer.setReadonly(A)}destroy(){this.sideEffect.flushAll(),this.unmount(),this.viewer.destroy()}toggleClickThrough(A){this.$whiteboardView.style.pointerEvents=!A||ME.has(A)?"none":"auto"}wrapClassName(A){return`${this.namespace}-${A}`}async getWhiteSnapshot(A,v,P,M,I){const D={centerX:0,centerY:0,scale:Math.min(v.width/M,v.height/I)},k=`${this.baseScenePath}/${A}`,V=this.context.manager.windowManger;V._appliancePlugin?await V._appliancePlugin.screenshotToCanvasAsync(P,k,v.width,v.height,D):this.whiteboardView.screenshotToCanvas(P,k,v.width,v.height,D)}reportProgress(A,v){window.postMessage({type:"@netless/_result_save_pdf_",appId:this.appId,progress:A,result:v})}}let Ic=!1;exports.FreezerLength=2;function IE(){return exports.FreezerLength}function PE(b){exports.FreezerLength=b<1?1/0:b}const Ya=b=>"["+b+"]",wh={map:new Map,boxes:new Map,queue:[],validateQueue(){for(this.queue.sort((b,A)=>{var M,I,D,k;const v=(I=(M=this.boxes.get(b))==null?void 0:M.zIndex)!=null?I:0,P=(k=(D=this.boxes.get(A))==null?void 0:D.zIndex)!=null?k:0;return-(v-P)}),Oi("[Slide] freezer: validate",Ya(this.queue));this.queue.length>exports.FreezerLength;){const b=this.queue.pop(),A=this.map.get(b);A&&(Oi("[Slide] freezer: validate-freeze",b,Ya(this.queue)),A.freeze())}},set(b,A,v){Oi("[Slide] freezer: add",b,Ya(this.queue)),this.map.set(b,A),this.boxes.set(b,v),this.queue.includes(b)||this.queue.unshift(b),this.validateQueue()},delete(b){this.map.delete(b),this.boxes.delete(b),this.queue=this.queue.filter(A=>A!==b),Oi("[Slide] freezer: delete",b,Ya(this.queue))},focus(b){const A=this.map.get(b),v=this.queue.indexOf(b);v>-1&&this.queue.splice(v,1),this.queue.unshift(b),this.validateQueue(),Oi("[Slide] freezer: focus",b,Ya(this.queue)),A&&A.unfreeze()}},Pc=new Set;function OE(b){return Pc.add(b),()=>Pc.delete(b)}const Oc=new Set;function LE(b){return Oc.add(b),()=>Oc.delete(b)}const NE=b=>{Ic=!0,b.on("focus",({appId:A})=>{wh.focus(A)}),b.on("created",({appId:A})=>{Pc.forEach(v=>v(A))}),b.on("destroy",({appId:A})=>{Oc.forEach(v=>v(A))})};var Xg=`.netless-app-slide-content{position:relative;height:100%;overflow:hidden}.netless-app-slide-preview-mask{display:none;position:absolute;z-index:200;top:0;left:0;width:100%;height:100%}.netless-app-slide-preview{display:flex;flex-direction:column;align-items:center;position:absolute;z-index:300;top:0;left:0;width:33%;max-width:200px;height:100%;padding-top:10px;transform:translate(-100%);background:rgba(237,237,240,.9);box-shadow:inset -1px 0 #0000001c;transition:transform .4s}.netless-app-slide-preview-active .netless-app-slide-preview-mask{display:block}.netless-app-slide-preview-active .netless-app-slide-preview{transform:translate(0)}.netless-app-slide-preview-page{position:relative;display:block;width:55%;margin-bottom:10px;font-size:0;color:transparent;outline:none;border:7px solid transparent;border-radius:4px;transition:border-color .3s;user-select:none}.netless-app-slide-preview-page:hover,.netless-app-slide-preview-page.netless-app-slide-preview-page-active{border-color:#444e601a}.netless-app-slide-preview-page>img{width:100%;height:auto;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);border-radius:1px;background-color:#fff;box-shadow:0 2px 8px #0000004d}.netless-app-slide-preview-page-name{position:absolute;top:1px;left:-10px;transform:translate(-100%);text-align:right;font-size:12px;color:#5f5f5f;user-select:none}.netless-app-slide-footer{box-sizing:border-box;height:26px;display:flex;align-items:center;padding:0 16px;border-top:1px solid #eeeef7;color:#191919}.netless-app-slide-float-footer{width:100%;min-height:26px;position:absolute;left:0;bottom:0;z-index:2000;background:rgba(249,249,252,.9);transition:opacity .4s}.netless-app-slide-footer-btn{box-sizing:border-box;width:26px;height:26px;font-size:0;margin:0;padding:3px;border:none;border-radius:1px;outline:none;color:currentColor;background:transparent;transition:background .4s;cursor:pointer;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.netless-app-slide-footer-btn:hover{background:rgba(237,237,240,.9)}@media (hover: none){.netless-app-slide-footer-btn:hover{background:transparent!important}}.netless-app-slide-footer-btn>svg{width:100%;height:100%}.netless-app-slide-footer-btn>svg:nth-of-type(2){display:none}.netless-app-slide-footer-btn.netless-app-slide-footer-btn-playing>svg:nth-of-type(1){display:none}.netless-app-slide-footer-btn.netless-app-slide-footer-btn-playing>svg:nth-of-type(2){display:initial}.netless-app-slide-footer-btn~.netless-app-slide-footer-btn{margin-left:15px}.netless-app-slide-page-jumps{flex:1;display:flex;justify-content:center;align-items:center}.netless-app-slide-page-number{margin-left:auto;font-size:13px;user-select:none;white-space:nowrap;word-break:keep-all}.netless-app-slide-page-number-input{border:none;outline:none;width:3em;margin:0;padding:0 2px;text-align:right;font-size:13px;line-height:1;font-weight:400;font-family:inherit;border-radius:2px;color:currentColor;background:transparent;transition:background .4s;user-select:text;-webkit-tap-highlight-color:rgba(0,0,0,0)}.netless-app-slide-page-number-input:hover,.netless-app-slide-page-number-input:focus,.netless-app-slide-page-number-input:active{background:#fff;box-shadow:#63636333 0 2px 8px}.netless-app-slide-readonly.netless-app-slide-footer{display:none}.telebox-color-scheme-dark .netless-app-slide-page-number-input{color:#a6a6a8}.telebox-color-scheme-dark .netless-app-slide-page-number-input:active,.telebox-color-scheme-dark .netless-app-slide-page-number-input:focus,.telebox-color-scheme-dark .netless-app-slide-page-number-input:hover{color:#222}.telebox-color-scheme-dark .netless-app-slide-footer{color:#a6a6a8;background:#2d2d33;border-top:none}.telebox-color-scheme-dark .netless-app-slide-footer-btn:hover{background:#212126}.telebox-color-scheme-dark .netless-app-slide-preview{background:rgba(50,50,50,.9)}.netless-app-slide-wb-view{position:absolute;top:0;left:0;width:100%;height:100%;z-index:100;overflow:hidden;transition:opacity .2s}.netless-app-slide-wb-view-hidden{opacity:0}.netless-app-slide-overlay{display:flex;align-items:center;justify-content:center;position:absolute;z-index:200;top:0;left:0;width:100%;height:100%;padding:8px;background:rgba(255,0,0,.25);transition:opacity .3s;opacity:0;pointer-events:none}.netless-app-slide-slide{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.netless-app-slide-slide canvas{transform:scale(var(--netless-app-slide-scale, 1))}
7989
- `;function DE({container:b,taskId:A,resourceList:v=[],url:P=Nc,debug:M=!1}){if(!A)throw new Error("[Slide] taskId is required");b.style.cssText+="display:flex;flex-direction:column";const I=new Yg({target:b});return I.debug=!!M,I.mount(A,P,v),I}class Yg{constructor(A){this.slide=null,this.debug=!1,this.previewList=[],this.sideEffect=new Ka,this.ready=!1,this.readyPromise=new Promise(v=>{this.resolveReady=()=>{this.ready=!0,v()}}),this.hotkeyListener=v=>{if(this.slide)switch(v.key){case"ArrowUp":case"ArrowLeft":{this.slide.prevStep();break}case"ArrowRight":case"ArrowDown":{this.slide.nextStep();break}}},this.onPageChanged=v=>{this.viewer.setPageIndex(v-1)},this.onTransitionStart=()=>{this.viewer.setPlaying()},this.onTransitionEnd=()=>{this.viewer.setPaused()},this.onError=({error:v})=>{this.viewer.setPaused(),console.warn("[Slide] render error",v)},this.destroyed=!1,this.refreshPages=()=>{this.slide&&(this.viewer.pages=gg(this.slide,this.previewList),this.viewer.setPageIndex(this.getPageIndex(this.slide.slideState.currentSlideIndex)))},this.onPlay=()=>{this.slide&&this.slide.nextStep()},this.onNewPageIndex=v=>{this.slide&&this.slide.slideCount>0&&this.slide.renderSlide(hg(v+1,1,this.slide.slideCount))},this.namespace="netless-app-slide",this.target=A.target,this.bgColor=mg(this.target),this.viewer=new Wg({readonly:!1,onNewPageIndex:this.onNewPageIndex,onPlay:this.onPlay}),this.render()}render(){this.viewer.$content.appendChild(this.renderSlideContainer()),this.registerHotKeys(window)}registerHotKeys(A){this.sideEffect.addEventListener(A,"keydown",this.hotkeyListener,void 0,"hotkey")}mount(A,v,P,M=[]){this.target.appendChild(this.renderStyle()),this.target.appendChild(this.viewer.$content),this.target.appendChild(this.viewer.$footer),this.slide=new li.Slide({anchor:this.$slide,interactive:!0,mode:"local",controller:this.debug,enableGlobalClick:!0,renderOptions:{minFPS:25,maxFPS:30,autoFPS:!0,autoResolution:!0,transactionBgColor:this.bgColor}}),this.registerEventListeners(),P.length>0?this.slide.setResourceList(A,P):this.slide.setResource(A,v),this.slide.renderSlide(1),this.previewList=M}renderStyle(){const A=document.createElement("style");return A.appendChild(document.createTextNode(Xg)),A}registerEventListeners(){if(!this.slide)return;const{slide:A}=this;A.on(li.SLIDE_EVENTS.slideChange,this.onPageChanged),A.on(li.SLIDE_EVENTS.renderStart,this.onTransitionStart),A.on(li.SLIDE_EVENTS.renderEnd,this.onTransitionEnd),A.on(li.SLIDE_EVENTS.mainSeqStepStart,this.onTransitionStart),A.on(li.SLIDE_EVENTS.mainSeqStepEnd,this.onTransitionEnd),A.on(li.SLIDE_EVENTS.renderError,this.onError),A.on(li.SLIDE_EVENTS.renderEnd,this.resolveReady),this.readyPromise.then(this.refreshPages)}destroy(){this.sideEffect.flushAll(),this.slide&&!this.destroyed&&(this.slide.destroy(),this.destroyed=!0),this.viewer.destroy()}getPageIndex(A){return(A>0?A:1)-1}renderSlideContainer(){if(!this.$slide){const A=document.createElement("div");A.className=this.wrapClassName("slide"),A.dataset.appKind="Slide",this.$slide=A}return this.$slide}wrapClassName(A){return`${this.namespace}-${A}`}}const FE=li.Slide.usePlugin.bind(li.Slide),Lc="0.2.74-beta.0",BE={kind:"Slide",setup(b){var X,Z;if(console.log("[Slide] setup @ "+Lc),b.getIsWritable()&&b.storage.ensureState(Cc),!b.storage.state.taskId)throw new Error("[Slide] no taskId");const A=b.getView();if(!A)throw new Error("[Slide] no view, please set scenePath on addApp()");A.disableCameraTransform=!0;const v=b.getBox();v.mountStyles(Xg);try{v.$content.dataset.appSlideVersion=Lc}catch{}const P=b.getInitScenePath();let M=null;const I=$=>{const ht=b.getRoom();if(M&&M.slideController){let Mt=!1;ht&&b.getIsWritable()&&(ng(ht,b,M.slideController.slide,P),Mt=!0),Oi("[Slide] page to",$,Mt?"(synced)":""),M.viewer.setPageIndex($-1),M.viewer.setPaused(),M.onPageChanged();const wt=M.viewer.pages.length;wt>0&&b.dispatchAppEvent("pageStateChange",{index:$-1,length:wt})}},D=$=>{const ht=b.getAppOptions()||{},Mt=new fw({context:b,...$,onPageChanged:I,onNavigate:$.onNavigate,onRenderError:ht.onRenderError,showRenderError:ht.showRenderError,invisibleBehavior:ht.invisibleBehavior});return Ic&&wh.set(b.appId,Mt,v),Lr.setAppController(b.appId,Mt),Mt.readyPromise.then($.onReady).then(()=>{const wt=b.getRoom();let N=!1;wt&&b.getIsWritable()&&(ng(wt,b,Mt.slide,P),N=!0);const R=Mt.slide.slideState.currentSlideIndex;Oi("[Slide] page to",R,N?"(synced)":"","(on ready)"),Mt.slide.on("renderEnd",$.onRenderEnd)}),Mt};M=new RE({context:b,box:v,view:A,mountSlideController:D,mountWhiteboard:b.mountView.bind(b),baseScenePath:P,appId:b.appId,urlInterrupter:(X=b.getAppOptions())==null?void 0:X.urlInterrupter,onPagesReady:({length:$})=>{const ht=(M==null?void 0:M.viewer.pageIndex)||0;b.dispatchAppEvent("pageStateChange",{index:ht,length:$})},onNavigate:($,ht)=>{Oi("[Slide] user navigate to",$,ht?`(${ht})`:"")}}),(Z=b.getAppOptions())!=null&&Z.justSildeReadonly&&(M==null||M.setJustSildeReadonly(!0));const k=b.getRoom(),V=new Ka;return V.add(()=>{var $;return Lr.setAppContext(b.appId,b),Lr.enable=(($=b.getAppOptions())==null?void 0:$.debug)||!1,Lr.level="debug",()=>Lr.deleteApp(b.appId)}),k&&(M.toggleClickThrough(k.state.memberState.currentApplianceName),V.add(()=>{const $=ht=>{ht.memberState&&M&&M.toggleClickThrough(ht.memberState.currentApplianceName)};return k.callbacks.on("onRoomStateChanged",$),()=>k.callbacks.off("onRoomStateChanged",$)})),b.emitter.on("destroy",()=>{Oi("[Slide] destroy",b.appId),Ic&&wh.delete(b.appId),V.flushAll(),M&&(M.destroy(),M=null)}),M.mount(),{setSildeReadonly:$=>{M==null||M.setJustSildeReadonly($)},viewer:()=>M,controller:()=>M==null?void 0:M.slideController,slide:()=>{var $;return($=M==null?void 0:M.slideController)==null?void 0:$.slide},nextStep:()=>{var $;return M&&M.slideController?(($=M==null?void 0:M.slideController)==null||$.slide.nextStep(),!0):!1},prevStep:()=>{var $;return M&&M.slideController?(($=M==null?void 0:M.slideController)==null||$.slide.prevStep(),!0):!1},position:()=>{const $=M==null?void 0:M.slideController;if($)return[$.page,$.pageCount]},nextPage:()=>{const $=M==null?void 0:M.slideController;if($){const{page:ht,pageCount:Mt}=$;if(Mt>0&&ht<Mt)return $.jumpToPage(ht+1),!0}return!1},prevPage:()=>{const $=M==null?void 0:M.slideController;if($){const{page:ht,pageCount:Mt}=$;if(Mt>0&&ht>1)return $.jumpToPage(ht-1),!0}return!1},jumpToPage:$=>{const ht=M==null?void 0:M.slideController;if(ht){const{page:Mt,pageCount:wt}=ht;if(wt>0&&Mt>0&&Mt<=wt)return ht.jumpToPage($),!0}return!1}}}};exports.DefaultUrl=Nc;exports.Slide=li.Slide;exports.SlidePreviewer=Yg;exports.addHooks=NE;exports.apps=wh;exports.default=BE;exports.getFreezerLength=IE;exports.onCreated=OE;exports.onDestroyed=LE;exports.previewSlide=DE;exports.setFreezerLength=PE;exports.usePlugin=FE;exports.version=Lc;
7988
+ `)}}}),function(o){var s=oc.get(o.hookPoint)||[];s.push(o),oc.set(o.hookPoint,s)}(r)},t.volumeAdjuster=new c0,t.trackLogger=new GS,t.handleFrozenAllSlide=function(){t.instances.forEach(function(r){r.player&&(t._tempFrozenIds.push(r.randomId),r.frozen())})},t.handleReleaseAllSlide=function(){t._tempFrozenIds.forEach(function(r){var o=t.instances.find(function(s){return s.randomId===r});o&&o.release()}),t._tempFrozenIds=[]},t.handleLogReport=function(r){return Xi(void 0,void 0,void 0,function(){var o,s,a,l,h,u;return Yi(e,function(p){switch(p.label){case 0:return[4,t.flushLog(!0)];case 1:if(p.sent(),!dr)return[3,12];o=[],p.label=2;case 2:return p.trys.push([2,4,,5]),[4,dr.keys()];case 3:return o=(p.sent()||[]).sort(function(_,x){return parseInt(_.replace("run_time_log_",""))-parseInt(x.replace("run_time_log_",""))}),[3,5];case 4:return p.sent(),[3,5];case 5:if(o.length===0)return window.postMessage({type:"@slide/_report_log_",log:"",index:1,total:1,customMessage:"@slide/_report_log_",sessionId:r},"*"),[2];s=0,a=o,p.label=6;case 6:if(!(s<a.length))return[3,12];l=a[s],h=l.replace("run_time_log_",""),u="",p.label=7;case 7:return p.trys.push([7,9,,10]),[4,dr.getItem(l)];case 8:return u=p.sent()||"",[3,10];case 9:return p.sent(),[3,10];case 10:window.postMessage({type:"@slide/_report_log_",log:u,index:parseInt(h,10),total:o.length,customMessage:"@slide/_report_log_",sessionId:r},"*"),p.label=11;case 11:return s++,[3,6];case 12:return[2]}})})},t.handleLogDownload=function(){return Xi(void 0,void 0,void 0,function(){var r,o,s,a,l,h,u;return Yi(e,function(p){switch(p.label){case 0:return p.trys.push([0,7,,8]),[4,t.flushLog(!0)];case 1:return p.sent(),r="",dr?[4,dr.keys()]:[3,6];case 2:o=(p.sent()||[]).sort(function(_,x){return parseInt(_.replace("run_time_log_",""))-parseInt(x.replace("run_time_log_",""))}),s=0,a=o,p.label=3;case 3:return s<a.length?(l=a[s],h=r,[4,dr.getItem(l)]):[3,6];case 4:r=h+(p.sent()||""),p.label=5;case 5:return s++,[3,3];case 6:return(u=document.createElement("a")).setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(r)),u.setAttribute("download","slide_log"),u.style.display="none",document.body.appendChild(u),u.click(),document.body.removeChild(u),[3,8];case 7:return p.sent(),[3,8];case 8:return[2]}})})},WS([(n="Slide.initConfig",function(r,o,s){var a=s.value;s.value=function(){for(var l=[],h=0;h<arguments.length;h++)l[h]=arguments[h];for(var u=oc.get(n)||[],p=l,_=0,x=u;_<x.length;_++){var S=x[_];try{p=S.before(p)}catch{}if(!Array.isArray(p)||p.length!==l.length)throw new Error("plugin before hook return invalid args")}for(var E=a.bind(this).apply(void 0,p),C=0,G=u.reverse();C<G.length;C++){S=G[C];try{E=S.after(E)}catch{}if(!E)throw new Error("plugin after hook return undefined result")}return E}})],t.prototype,"initSlideConfig",null),t}(pi.a);dr==null||dr.clear().catch(function(){}),window.addEventListener("__slide_log__",to.handleLogDownload),window.addEventListener("message",function(i){var t;if(i.data.type==="@slide/_request_log_")to.handleLogReport(i.data.sessionId).catch(function(){});else if(i.data.type==="@slide/_request_frozen_")to.handleFrozenAllSlide();else if(i.data.type==="@slide/_request_release_")to.handleReleaseAllSlide();else if(i.data.type==="@slide/_update_volume_"){var e=.5;try{e=parseFloat(i.data.volume.toString())}catch{}to.volumeAdjuster.volume=e}else if(i.data.type==="@slide/_get_volume_")window.postMessage({type:"@slide/_report_volume_",volume:to.volumeAdjuster.volume,customMessage:"@slide/_report_volume_"},"*");else if(i.data.type==="@slide/_preload_slide_"){var n=(t=i.data.sessionId)!==null&&t!==void 0?t:Math.random().toString(32).substr(2);to.preloadResource(i.data.taskId,i.data.prefix,i.data.maxResolutionLevel,function(r){window.postMessage({type:"@slide/_preload_slide_progress_",sessionId:n,taskId:i.data.taskId,progress:r},"*")},i.data.pages).catch(function(r){window.postMessage({type:"@slide/_preload_slide_error_",sessionId:n,taskId:i.data.taskId,error:r},"*")})}}),window.setInterval(function(){to.flushLog().catch(function(){})},2e3)}]),JS="!#%()*+,-./:;=?@[]^_`{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",KS=87,ZS=20,tg=[],QS=()=>{for(let b=0;b<ZS;b++)tg[b]=JS.charAt(Math.random()*KS);return tg.join("")};function lg(b){try{return b()}catch(A){console.error(A)}}var Ka=class{constructor(){this.push=this.addDisposer,this.disposers=new Map}addDisposer(b,A=this.genUID()){return this.flush(A),this.disposers.set(A,Array.isArray(b)?$S(b):b),A}add(b,A=this.genUID()){const v=b();return v?this.addDisposer(v,A):A}addEventListener(b,A,v,P,M=this.genUID()){return b.addEventListener(A,v,P),this.addDisposer(()=>b.removeEventListener(A,v,P),M),M}setTimeout(b,A,v=this.genUID()){const P=window.setTimeout(()=>{this.remove(v),b()},A);return this.addDisposer(()=>window.clearTimeout(P),v)}setInterval(b,A,v=this.genUID()){const P=window.setInterval(b,A);return this.addDisposer(()=>window.clearInterval(P),v)}remove(b){const A=this.disposers.get(b);return this.disposers.delete(b),A}flush(b){const A=this.remove(b);A&&A()}flushAll(){this.disposers.forEach(lg),this.disposers.clear()}genUID(){let b;do b=QS();while(this.disposers.has(b));return b}};function $S(b){return()=>b.forEach(lg)}function hg(b,A,v){return Math.min(Math.max(b,A),v)}function tw(b){return typeof b=="object"&&b!==null}function ew(b){if(!b)return!1;const A=b.tagName;return A==="INPUT"||A==="TEXTAREA"||A==="SELECT"}var ug={exports:{}},nw={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},cg={exports:{}},iw=function(A){return!A||typeof A=="string"?!1:A instanceof Array||Array.isArray(A)||A.length>=0&&(A.splice instanceof Function||Object.getOwnPropertyDescriptor(A,A.length-1)&&A.constructor.name!=="String")},rw=iw,ow=Array.prototype.concat,sw=Array.prototype.slice,eg=cg.exports=function(A){for(var v=[],P=0,M=A.length;P<M;P++){var I=A[P];rw(I)?v=ow.call(v,sw.call(I)):v.push(I)}return v};eg.wrap=function(b){return function(){return b(eg(arguments))}};var qa=nw,Za=cg.exports,dg=Object.hasOwnProperty,pg=Object.create(null);for(var Ac in qa)dg.call(qa,Ac)&&(pg[qa[Ac]]=Ac);var wr=ug.exports={to:{},get:{}};wr.get=function(b){var A=b.substring(0,3).toLowerCase(),v,P;switch(A){case"hsl":v=wr.get.hsl(b),P="hsl";break;case"hwb":v=wr.get.hwb(b),P="hwb";break;default:v=wr.get.rgb(b),P="rgb";break}return v?{model:P,value:v}:null};wr.get.rgb=function(b){if(!b)return null;var A=/^#([a-f0-9]{3,4})$/i,v=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,P=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,M=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,I=/^(\w+)$/,D=[0,0,0,1],k,V,X;if(k=b.match(v)){for(X=k[2],k=k[1],V=0;V<3;V++){var Z=V*2;D[V]=parseInt(k.slice(Z,Z+2),16)}X&&(D[3]=parseInt(X,16)/255)}else if(k=b.match(A)){for(k=k[1],X=k[3],V=0;V<3;V++)D[V]=parseInt(k[V]+k[V],16);X&&(D[3]=parseInt(X+X,16)/255)}else if(k=b.match(P)){for(V=0;V<3;V++)D[V]=parseInt(k[V+1],0);k[4]&&(k[5]?D[3]=parseFloat(k[4])*.01:D[3]=parseFloat(k[4]))}else if(k=b.match(M)){for(V=0;V<3;V++)D[V]=Math.round(parseFloat(k[V+1])*2.55);k[4]&&(k[5]?D[3]=parseFloat(k[4])*.01:D[3]=parseFloat(k[4]))}else return(k=b.match(I))?k[1]==="transparent"?[0,0,0,0]:dg.call(qa,k[1])?(D=qa[k[1]],D[3]=1,D):null:null;for(V=0;V<3;V++)D[V]=zo(D[V],0,255);return D[3]=zo(D[3],0,1),D};wr.get.hsl=function(b){if(!b)return null;var A=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,v=b.match(A);if(v){var P=parseFloat(v[4]),M=(parseFloat(v[1])%360+360)%360,I=zo(parseFloat(v[2]),0,100),D=zo(parseFloat(v[3]),0,100),k=zo(isNaN(P)?1:P,0,1);return[M,I,D,k]}return null};wr.get.hwb=function(b){if(!b)return null;var A=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,v=b.match(A);if(v){var P=parseFloat(v[4]),M=(parseFloat(v[1])%360+360)%360,I=zo(parseFloat(v[2]),0,100),D=zo(parseFloat(v[3]),0,100),k=zo(isNaN(P)?1:P,0,1);return[M,I,D,k]}return null};wr.to.hex=function(){var b=Za(arguments);return"#"+bh(b[0])+bh(b[1])+bh(b[2])+(b[3]<1?bh(Math.round(b[3]*255)):"")};wr.to.rgb=function(){var b=Za(arguments);return b.length<4||b[3]===1?"rgb("+Math.round(b[0])+", "+Math.round(b[1])+", "+Math.round(b[2])+")":"rgba("+Math.round(b[0])+", "+Math.round(b[1])+", "+Math.round(b[2])+", "+b[3]+")"};wr.to.rgb.percent=function(){var b=Za(arguments),A=Math.round(b[0]/255*100),v=Math.round(b[1]/255*100),P=Math.round(b[2]/255*100);return b.length<4||b[3]===1?"rgb("+A+"%, "+v+"%, "+P+"%)":"rgba("+A+"%, "+v+"%, "+P+"%, "+b[3]+")"};wr.to.hsl=function(){var b=Za(arguments);return b.length<4||b[3]===1?"hsl("+b[0]+", "+b[1]+"%, "+b[2]+"%)":"hsla("+b[0]+", "+b[1]+"%, "+b[2]+"%, "+b[3]+")"};wr.to.hwb=function(){var b=Za(arguments),A="";return b.length>=4&&b[3]!==1&&(A=", "+b[3]),"hwb("+b[0]+", "+b[1]+"%, "+b[2]+"%"+A+")"};wr.to.keyword=function(b){return pg[b.slice(0,3)]};function zo(b,A,v){return Math.min(Math.max(A,b),v)}function bh(b){var A=Math.round(b).toString(16).toUpperCase();return A.length<2?"0"+A:A}var aw=ug.exports;class lw{constructor(A){this.enable=A,this.apps={},this.level="debug",this.roomLogger=null,this._onMessage=v=>{let P;v instanceof CustomEvent?P=v.detail:tw(v.data)&&(P=v.data),P&&(typeof P.slide=="boolean"?this.enable=P.slide:P.slide==="__instance"?console.log(this):P.slide==="__debug"&&Object.values(this.apps).forEach(M=>{var I,D;(D=(I=M.controller)==null?void 0:I.slide)==null||D.createController()}))},this.initialize()}setAppContext(A,v){var P;((P=this.apps)[A]||(P[A]={})).context=v,this.log(`[Slide] new ${A}`)}setAppController(A,v){var P;((P=this.apps)[A]||(P[A]={})).controller=v}deleteApp(A){delete this.apps[A],this.log(`[Slide] delete ${A}`)}initialize(){window.addEventListener("message",this._onMessage)}dispose(){window.removeEventListener("message",this._onMessage)}log(...A){this.roomLogger?this.roomLogger.info(...A):this.enable&&console.log(...A)}verbose(...A){this.roomLogger?this.roomLogger.debug(...A):this.enable&&this.level==="verbose"&&console.log(...A)}warn(...A){this.roomLogger?this.roomLogger.warn(...A):console.warn(...A)}}const Lr=new lw(!1),Oi=Lr.log.bind(Lr),Mc=Lr.verbose.bind(Lr),hw=b=>{Lr.roomLogger=b.logger};function fg(b){try{const A=window.getComputedStyle(b).backgroundColor;if(A!=="rgba(0, 0, 0, 0)"&&A!=="transparent")return A;if(b.parentElement)return fg(b.parentElement)}catch{}return"#ffffff"}function uw(b){const A=aw.get(b);if(A&&A.model==="rgb"){const v=A.value,M=(((Math.round(v[0])&255)<<16)+((Math.round(v[1])&255)<<8)+(Math.round(v[2])&255)).toString(16);return"#"+"000000".substring(M.length)+M}else return b}let Th="";function mg(b){return Th||(Th=uw(fg(b)),Oi("[Slide] guess bg color",Th)),Th}const cw=b=>b.tracker;function gg(b,A=[]){const{width:v,height:P,slideCount:M,slideState:I}=b,{taskId:D,url:k}=I,V=[];for(let X=1;X<=M;++X){const Z=A.find($=>$.indexOf(`preview/${X}.png`)>=0);Z?V.push({width:v,height:P,thumbnail:Z,src:"ppt"}):V.push({width:v,height:P,thumbnail:`${k}/${D}/preview/${X}.png`,src:"ppt"})}return V}function ng(b,A,v,P){var k;const M=v.slideState.currentSlideIndex;if(!(M>0)||!A.getIsWritable())return;const I=[P,M].join("/");if(b.scenePathType(I)!=="page"){b.removeScenes(P);const V=v.slideCount,X=[];for(let Z=1;Z<=V;++Z)X.push({name:`${Z}`});b.putScenes(P,X)}let D;A.getBox().focus?D=b.state.sceneState.scenePath:D=((k=A.getView())==null?void 0:k.focusScenePath)||"",D!==I&&A.setScenePath(I)}const Nc="https://convertcdn.netless.link/dynamicConvert",dw=40,Cc={taskId:"",url:"",state:null,resourceList:[],previewList:[]},pw=function(){};class fw{constructor({context:A,anchor:v,onRenderStart:P,onPageChanged:M,onTransitionStart:I,onTransitionEnd:D,onNavigate:k,onError:V,onRenderError:X,showRenderError:Z,invisibleBehavior:$}){this.sideEffect=new Ka,this.previewList=[],this.ready=!1,this.readyPromise=new Promise(ht=>{this.resolveReady=Mt=>{this.ready?Oi("[Slide] render end",Mt):setTimeout(()=>{this.ready=!0,ht()},1e3)}}),this.onSyncDispatch=ht=>{if(this.context.getIsWritable()&&this.room){const Mt={type:li.SLIDE_EVENTS.syncDispatch,payload:ht};Mc("[Slide] dispatch",JSON.stringify(ht)),this.context.dispatchMagixEvent(li.SLIDE_EVENTS.syncDispatch,Mt)}},this.magixEventListener=ht=>{const{type:Mt,payload:wt}=ht.payload;Mt===li.SLIDE_EVENTS.syncDispatch&&(this.syncStateOnce(),Mc("[Slide] receive",JSON.stringify(wt)),this.slide.emit(li.SLIDE_EVENTS.syncReceive,wt))},this.onStateChange=ht=>{this.context.getIsWritable()&&(Mc("[Slide] state change",JSON.stringify(ht,null,2)),this.context.storage.setState({state:ht}))},this.pollCount=0,this.pollReadyState=()=>{this.ready?this._toFreeze===1?this.freeze():this._toFreeze===-1&&this.unfreeze():this.pollCount<dw?(this.pollCount++,setTimeout(this.pollReadyState,500)):(this.pollCount=0,Oi("[Slide] init timeout"))},this._pageCount=0,this.destroyed=!1,this.timestamp=()=>this.room&&this.room.calibrationTimestamp?this.room.calibrationTimestamp:this.player?this.player.beginTimestamp+this.player.progressTime:Date.now(),this.isFrozen=!1,this._toFreeze=0,this.freeze=()=>{this.isFrozen=!0,this.ready?(Oi("[Slide] freeze",this.context.appId),this.invisibleBehavior==="frozen"?this.slide.frozen():this.slide.pause()):this._toFreeze=1},this.unfreeze=async()=>{if(!!this.visible)if(this.isFrozen=!1,this.ready){let ht=!1;if(Oi("[Slide] unfreeze",this.context.appId),this.invisibleBehavior==="frozen"&&!this.slide.view?(this.slide.release(),ht=!0):this.slide.resume(),ht){const Mt=this.context.storage.state.state;Mt&&(Oi("[Slide] sync storage",JSON.stringify(Mt)),this.slide.setSlideState(Mt))}}else this._toFreeze=-1},this.onVisibilityChange=async()=>{(this.visible=document.visibilityState==="visible")?(Oi("[Slide] unfreeze because tab becomes visible",{savedIsFrozen:this.savedIsFrozen}),this.savedIsFrozen||this.unfreeze()):(this.savedIsFrozen=this.isFrozen,Oi("[Slide] freeze because tab becomes invisible"),this.freeze())},this.invisibleBehavior=$!=null?$:"frozen",this.onRenderStart=P,this.onPageChanged=M,this.onTransitionStart=I,this.onTransitionEnd=D,this.onNavigate=k||pw,this.onError=V,this.onRenderError=X,this.showRenderError=Z!=null?Z:!0,this.context=A,this.room=A.getRoom(),this.player=this.room?void 0:A.getDisplayer(),hw(this.room||this.player),this.slide=this.createSlide(v,{whiteTracker:cw(A.getDisplayer())}),this.syncStateOnceFlag=!this.context.isAddApp,this.visible=document.visibilityState==="visible",this.savedIsFrozen=!1,this.initialize()}jumpToPage(A,v){this.ready&&(A=hg(A,1,this.pageCount),this.onNavigate(A,v),this.slide.renderSlide(A))}initialize(){this.registerEventListeners(),this.kickStart()}kickStart(){const{context:A,slide:v}=this;A.getIsWritable()&&A.storage.ensureState(Cc);const{taskId:P,url:M,resourceList:I,previewList:D,state:k}=A.storage.state;this.previewList=D,I&&I.length>0?v.setResourceList(P,I):v.setResource(P,M||Nc),k?(Oi("[Slide] init with state",JSON.stringify(k)),this.syncStateOnceFlag=!1,v.setSlideState(k)):A.isAddApp&&(Oi("[Slide] init by renderSlide",1),v.renderSlide(1)),this.pollReadyState()}registerEventListeners(){const{context:A,slide:v}=this,P=this.sideEffect.addDisposer(A.storage.addStateChangedListener(()=>{A.storage.state.state&&(this.syncStateOnce(),this.sideEffect.flush(P))}));this.sideEffect.add(()=>A.addMagixEventListener(li.SLIDE_EVENTS.syncDispatch,this.magixEventListener,{fireSelfEventAfterCommit:!0})),v.on(li.SLIDE_EVENTS.renderStart,this.onRenderStart),v.on(li.SLIDE_EVENTS.slideChange,this.onPageChanged),v.on(li.SLIDE_EVENTS.renderEnd,this.onTransitionEnd),v.on(li.SLIDE_EVENTS.mainSeqStepStart,this.onTransitionStart),v.on(li.SLIDE_EVENTS.mainSeqStepEnd,this.onTransitionEnd),v.on(li.SLIDE_EVENTS.renderError,this.onError),v.on(li.SLIDE_EVENTS.stateChange,this.onStateChange),v.on(li.SLIDE_EVENTS.syncDispatch,this.onSyncDispatch),v.on(li.SLIDE_EVENTS.renderEnd,this.resolveReady),this.sideEffect.add(()=>(document.addEventListener("visibilitychange",this.onVisibilityChange),()=>document.removeEventListener("visibilitychange",this.onVisibilityChange)))}syncStateOnce(){if(this.syncStateOnceFlag){this.context.getIsWritable()&&this.context.storage.ensureState(Cc);const{state:A}=this.context.storage.state;A&&(Oi("[Slide] sync with state (once)",JSON.stringify(A)),this.slide.setSlideState(A),this.syncStateOnceFlag=!1)}}get pageCount(){return this._pageCount>0?this._pageCount:(this._pageCount=this.slide.slideCount,this._pageCount)}get page(){return this.slide.slideState.currentSlideIndex}createSlide(A,v={}){var I,D,k;const P=this.context.getAppOptions()||{};return new li.Slide({anchor:A,interactive:!0,mode:"interactive",controller:Lr.enable,enableGlobalClick:(I=P.enableGlobalClick)!=null?I:!0,renderOptions:{minFPS:P.minFPS||25,maxFPS:P.maxFPS||30,autoFPS:(D=P.autoFPS)!=null?D:!0,autoResolution:(k=P.autoResolution)!=null?k:!0,resolution:P.resolution,transactionBgColor:P.bgColor||mg(A),maxResolutionLevel:P.maxResolutionLevel,forceCanvas:P.forceCanvas,enableNvidiaDetect:P.enableNvidiaDetect},fixedFrameSize:P.fixedFrameSize,loaderDelegate:P.loaderDelegate,navigatorDelegate:P.navigatorDelegate,urlInterrupter:P.urlInterrupter,resourceTimeout:P.resourceTimeout,rtcAudio:P.rtcAudio,useLocalCache:P.useLocalCache,logger:P.logger,whiteTracker:v.whiteTracker,timestamp:this.timestamp,skipActionWhenFrozen:!0,customLinks:P.customLinks})}destroy(){this.sideEffect.flushAll(),this.destroyed||(Oi("[Slide] destroy slide (once)"),this.slide.destroy(),this.destroyed=!0)}}function mw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-sidebar`),v.setAttribute("viewBox","0 0 64 64");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M50 8H14c-3.309 0-6 2.691-6 6v36c0 3.309 2.691 6 6 6h36c3.309 0 6-2.691 6-6V14c0-3.309-2.691-6-6-6zM12 50V14c0-1.103.897-2 2-2h8v40h-8c-1.103 0-2-.897-2-2zm40 0c0 1.103-.897 2-2 2H26V12h24c1.103 0 2 .897 2 2z"),v.appendChild(P),v}function gw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-arrow-left`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M177.81 249.959L337.473 90.295c2.722-2.865 2.651-7.378-.143-10.1-2.793-2.65-7.163-2.65-9.956 0l-164.75 164.75c-2.793 2.793-2.793 7.306 0 10.1l164.75 164.75c2.865 2.722 7.378 2.65 10.099-.143 2.651-2.794 2.651-7.163 0-9.957L177.809 249.959z"),v.appendChild(P),v}function vw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-arrow-right`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M322.19 250.041L162.527 409.705c-2.722 2.865-2.651 7.378.143 10.1 2.793 2.65 7.163 2.65 9.956 0l164.75-164.75c2.793-2.793 2.793-7.306 0-10.1l-164.75-164.75c-2.865-2.722-7.378-2.65-10.099.143-2.651 2.794-2.651 7.163 0 9.957l159.664 159.736z"),v.appendChild(P),v}function _w(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-play`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M418.158 257.419L174.663 413.33c-6.017 3.919-15.708 3.772-21.291-.29-2.791-2.018-4.295-4.483-4.295-7.084V94.109c0-5.65 6.883-10.289 15.271-10.289 4.298 0 8.391 1.307 11.181 3.332l242.629 155.484c6.016 3.917 6.451 10.292.649 14.491-.216.154-.432.154-.649.292zM170.621 391.288l223.116-141.301L170.71 107.753l-.089 283.535z"),v.appendChild(P),v}function yw(b){const A="http://www.w3.org/2000/svg",v=document.createElementNS(A,"svg");v.setAttribute("class",`${b}-footer-icon-pause`),v.setAttribute("viewBox","0 0 500 500");const P=document.createElementNS(A,"path");return P.setAttribute("fill","currentColor"),P.setAttribute("d","M312.491 78.261c0-6.159 4.893-11.213 11.04-11.213 6.158 0 11.211 5.054 11.211 11.213v343.478c0 6.159-5.053 11.213-11.211 11.213-6.147 0-11.04-5.054-11.04-11.213V78.261zM165.257 78.261c0-6.159 4.893-11.213 11.04-11.213 6.158 0 11.211 5.054 11.211 11.213v343.478c0 6.159-5.053 11.213-11.211 11.213-6.147 0-11.04-5.054-11.04-11.213V78.261z"),v.appendChild(P),v}const Wo=typeof window!="undefined",vg=Wo&&!("onscroll"in window)||typeof navigator!="undefined"&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),_g=Wo&&"IntersectionObserver"in window,yg=Wo&&"classList"in document.createElement("p"),xg=Wo&&window.devicePixelRatio>1,xw={elements_selector:".lazy",container:vg||Wo?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_bg_set:"bg-set",data_poster:"poster",class_applied:"applied",class_loading:"loading",class_loaded:"loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1,restore_on_error:!1},bg=b=>Object.assign({},xw,b),ig=function(b,A){let v;const P="LazyLoad::Initialized",M=new b(A);try{v=new CustomEvent(P,{detail:{instance:M}})}catch{v=document.createEvent("CustomEvent"),v.initCustomEvent(P,!1,!1,{instance:M})}window.dispatchEvent(v)},bw=(b,A)=>{if(!!A)if(!A.length)ig(b,A);else for(let v=0,P;P=A[v];v+=1)ig(b,P)},po="src",Dc="srcset",Fc="sizes",Tg="poster",Qa="llOriginalAttrs",Sg="data",Bc="loading",wg="loaded",Eg="applied",Tw="entered",kc="error",Ag="native",Mg="data-",Cg="ll-status",mr=(b,A)=>b.getAttribute(Mg+A),Sw=(b,A,v)=>{const P=Mg+A;if(v===null){b.removeAttribute(P);return}b.setAttribute(P,v)},$a=b=>mr(b,Cg),vs=(b,A)=>Sw(b,Cg,A),Eh=b=>vs(b,null),Uc=b=>$a(b)===null,ww=b=>$a(b)===Bc,Ew=b=>$a(b)===kc,Gc=b=>$a(b)===Ag,Aw=[Bc,wg,Eg,kc],Mw=b=>Aw.indexOf($a(b))>=0,Xo=(b,A,v,P)=>{if(!(!b||typeof b!="function")){if(P!==void 0){b(A,v,P);return}if(v!==void 0){b(A,v);return}b(A)}},ea=(b,A)=>{if(A!==""){if(yg){b.classList.add(A);return}b.className+=(b.className?" ":"")+A}},no=(b,A)=>{if(A!==""){if(yg){b.classList.remove(A);return}b.className=b.className.replace(new RegExp("(^|\\s+)"+A+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")}},Cw=b=>{b.llTempImage=document.createElement("IMG")},Rw=b=>{delete b.llTempImage},Rg=b=>b.llTempImage,Ah=(b,A)=>{if(!A)return;const v=A._observer;!v||v.unobserve(b)},Iw=b=>{b.disconnect()},Pw=(b,A,v)=>{A.unobserve_entered&&Ah(b,v)},Hc=(b,A)=>{!b||(b.loadingCount+=A)},Ow=b=>{!b||(b.toLoadCount-=1)},Ig=(b,A)=>{!b||(b.toLoadCount=A)},Lw=b=>b.loadingCount>0,Nw=b=>b.toLoadCount>0,Pg=b=>{let A=[];for(let v=0,P;P=b.children[v];v+=1)P.tagName==="SOURCE"&&A.push(P);return A},jc=(b,A)=>{const v=b.parentNode;if(!v||v.tagName!=="PICTURE")return;Pg(v).forEach(A)},Og=(b,A)=>{Pg(b).forEach(A)},Mh=[po],Lg=[po,Tg],Ja=[po,Dc,Fc],Ng=[Sg],Ch=b=>!!b[Qa],Dg=b=>b[Qa],Fg=b=>delete b[Qa],ta=(b,A)=>{if(Ch(b))return;const v={};A.forEach(P=>{v[P]=b.getAttribute(P)}),b[Qa]=v},Dw=b=>{Ch(b)||(b[Qa]={backgroundImage:b.style.backgroundImage})},Fw=(b,A,v)=>{if(!v){b.removeAttribute(A);return}b.setAttribute(A,v)},gs=(b,A)=>{if(!Ch(b))return;const v=Dg(b);A.forEach(P=>{Fw(b,P,v[P])})},Bw=b=>{if(!Ch(b))return;const A=Dg(b);b.style.backgroundImage=A.backgroundImage},Bg=(b,A,v)=>{ea(b,A.class_applied),vs(b,Eg),v&&(A.unobserve_completed&&Ah(b,A),Xo(A.callback_applied,b,v))},kg=(b,A,v)=>{ea(b,A.class_loading),vs(b,Bc),v&&(Hc(v,1),Xo(A.callback_loading,b,v))},Vo=(b,A,v)=>{!v||b.setAttribute(A,v)},rg=(b,A)=>{Vo(b,Fc,mr(b,A.data_sizes)),Vo(b,Dc,mr(b,A.data_srcset)),Vo(b,po,mr(b,A.data_src))},kw=(b,A)=>{jc(b,v=>{ta(v,Ja),rg(v,A)}),ta(b,Ja),rg(b,A)},Uw=(b,A)=>{ta(b,Mh),Vo(b,po,mr(b,A.data_src))},Gw=(b,A)=>{Og(b,v=>{ta(v,Mh),Vo(v,po,mr(v,A.data_src))}),ta(b,Lg),Vo(b,Tg,mr(b,A.data_poster)),Vo(b,po,mr(b,A.data_src)),b.load()},Hw=(b,A)=>{ta(b,Ng),Vo(b,Sg,mr(b,A.data_src))},jw=(b,A,v)=>{const P=mr(b,A.data_bg),M=mr(b,A.data_bg_hidpi),I=xg&&M?M:P;!I||(b.style.backgroundImage=`url("${I}")`,Rg(b).setAttribute(po,I),kg(b,A,v))},zw=(b,A,v)=>{const P=mr(b,A.data_bg_multi),M=mr(b,A.data_bg_multi_hidpi),I=xg&&M?M:P;!I||(b.style.backgroundImage=I,Bg(b,A,v))},Vw=(b,A,v)=>{const P=mr(b,A.data_bg_set);if(!P)return;const M=P.split("|");let I=M.map(D=>`image-set(${D})`);b.style.backgroundImage=I.join(),b.style.backgroundImage===""&&(I=M.map(D=>`-webkit-image-set(${D})`),b.style.backgroundImage=I.join()),Bg(b,A,v)},Ug={IMG:kw,IFRAME:Uw,VIDEO:Gw,OBJECT:Hw},Ww=(b,A)=>{const v=Ug[b.tagName];!v||v(b,A)},Xw=(b,A,v)=>{const P=Ug[b.tagName];!P||(P(b,A),kg(b,A,v))},Yw=["IMG","IFRAME","VIDEO","OBJECT"],qw=b=>Yw.indexOf(b.tagName)>-1,Gg=(b,A)=>{A&&!Lw(A)&&!Nw(A)&&Xo(b.callback_finish,A)},og=(b,A,v)=>{b.addEventListener(A,v),b.llEvLisnrs[A]=v},Jw=(b,A,v)=>{b.removeEventListener(A,v)},zc=b=>!!b.llEvLisnrs,Kw=(b,A,v)=>{zc(b)||(b.llEvLisnrs={});const P=b.tagName==="VIDEO"?"loadeddata":"load";og(b,P,A),og(b,"error",v)},Rc=b=>{if(!zc(b))return;const A=b.llEvLisnrs;for(let v in A){const P=A[v];Jw(b,v,P)}delete b.llEvLisnrs},Hg=(b,A,v)=>{Rw(b),Hc(v,-1),Ow(v),no(b,A.class_loading),A.unobserve_completed&&Ah(b,v)},Zw=(b,A,v,P)=>{const M=Gc(A);Hg(A,v,P),ea(A,v.class_loaded),vs(A,wg),Xo(v.callback_loaded,A,P),M||Gg(v,P)},Qw=(b,A,v,P)=>{const M=Gc(A);Hg(A,v,P),ea(A,v.class_error),vs(A,kc),Xo(v.callback_error,A,P),v.restore_on_error&&gs(A,Ja),M||Gg(v,P)},Vc=(b,A,v)=>{const P=Rg(b)||b;if(zc(P))return;Kw(P,D=>{Zw(D,b,A,v),Rc(P)},D=>{Qw(D,b,A,v),Rc(P)})},$w=(b,A,v)=>{Cw(b),Vc(b,A,v),Dw(b),jw(b,A,v),zw(b,A,v),Vw(b,A,v)},tE=(b,A,v)=>{Vc(b,A,v),Xw(b,A,v)},Wc=(b,A,v)=>{qw(b)?tE(b,A,v):$w(b,A,v)},eE=(b,A,v)=>{b.setAttribute("loading","lazy"),Vc(b,A,v),Ww(b,A),vs(b,Ag)},sg=b=>{b.removeAttribute(po),b.removeAttribute(Dc),b.removeAttribute(Fc)},nE=b=>{jc(b,A=>{sg(A)}),sg(b)},jg=b=>{jc(b,A=>{gs(A,Ja)}),gs(b,Ja)},iE=b=>{Og(b,A=>{gs(A,Mh)}),gs(b,Lg),b.load()},rE=b=>{gs(b,Mh)},oE=b=>{gs(b,Ng)},sE={IMG:jg,IFRAME:rE,VIDEO:iE,OBJECT:oE},aE=b=>{const A=sE[b.tagName];if(!A){Bw(b);return}A(b)},lE=(b,A)=>{Uc(b)||Gc(b)||(no(b,A.class_entered),no(b,A.class_exited),no(b,A.class_applied),no(b,A.class_loading),no(b,A.class_loaded),no(b,A.class_error))},hE=(b,A)=>{aE(b),lE(b,A),Eh(b),Fg(b)},uE=(b,A,v,P)=>{!v.cancel_on_exit||!ww(b)||b.tagName==="IMG"&&(Rc(b),nE(b),jg(b),no(b,v.class_loading),Hc(P,-1),Eh(b),Xo(v.callback_cancel,b,A,P))},cE=(b,A,v,P)=>{const M=Mw(b);vs(b,Tw),ea(b,v.class_entered),no(b,v.class_exited),Pw(b,v,P),Xo(v.callback_enter,b,A,P),!M&&Wc(b,v,P)},dE=(b,A,v,P)=>{Uc(b)||(ea(b,v.class_exited),uE(b,A,v,P),Xo(v.callback_exit,b,A,P))},pE=["IMG","IFRAME","VIDEO"],zg=b=>b.use_native&&"loading"in HTMLImageElement.prototype,fE=(b,A,v)=>{b.forEach(P=>{pE.indexOf(P.tagName)!==-1&&eE(P,A,v)}),Ig(v,0)},mE=b=>b.isIntersecting||b.intersectionRatio>0,gE=b=>({root:b.container===document?null:b.container,rootMargin:b.thresholds||b.threshold+"px"}),vE=(b,A,v)=>{b.forEach(P=>mE(P)?cE(P.target,P,A,v):dE(P.target,P,A,v))},_E=(b,A)=>{A.forEach(v=>{b.observe(v)})},yE=(b,A)=>{Iw(b),_E(b,A)},xE=(b,A)=>{!_g||zg(b)||(A._observer=new IntersectionObserver(v=>{vE(v,b,A)},gE(b)))},Vg=b=>Array.prototype.slice.call(b),Sh=b=>b.container.querySelectorAll(b.elements_selector),bE=b=>Vg(b).filter(Uc),TE=b=>Ew(b),SE=b=>Vg(b).filter(TE),ag=(b,A)=>bE(b||Sh(A)),wE=(b,A)=>{SE(Sh(b)).forEach(P=>{no(P,b.class_error),Eh(P)}),A.update()},EE=(b,A)=>{!Wo||(A._onlineHandler=()=>{wE(b,A)},window.addEventListener("online",A._onlineHandler))},AE=b=>{!Wo||window.removeEventListener("online",b._onlineHandler)},tl=function(b,A){const v=bg(b);this._settings=v,this.loadingCount=0,xE(v,this),EE(v,this),this.update(A)};tl.prototype={update:function(b){const A=this._settings,v=ag(b,A);if(Ig(this,v.length),vg||!_g){this.loadAll(v);return}if(zg(A)){fE(v,A,this);return}yE(this._observer,v)},destroy:function(){this._observer&&this._observer.disconnect(),AE(this),Sh(this._settings).forEach(b=>{Fg(b)}),delete this._observer,delete this._settings,delete this._onlineHandler,delete this.loadingCount,delete this.toLoadCount},loadAll:function(b){const A=this._settings;ag(b,A).forEach(P=>{Ah(P,this),Wc(P,A,this)})},restoreAll:function(){const b=this._settings;Sh(b).forEach(A=>{hE(A,b)})}};tl.load=(b,A)=>{const v=bg(A);Wc(b,v)};tl.resetStatus=b=>{Eh(b)};Wo&&bw(tl,window.lazyLoadOptions);class Wg{constructor({readonly:A,onNewPageIndex:v,onPlay:P,onPagesReady:M,urlInterrupter:I}){this._pages=[],this.pageIndex=0,this.setPaused=()=>{this.$btnPlay.classList.toggle(this.wrapClassName("footer-btn-playing"),!1)},this.setPlaying=()=>{this.$btnPlay.classList.toggle(this.wrapClassName("footer-btn-playing"),!0)},this.namespace="netless-app-slide",this.isShowPreview=!1,this.isSmallBox=!1,this.sideEffect=new Ka,this.readonly=A,this.onNewPageIndex=v,this.onPlay=P,this.onPagesReady=M,this.urlInterrupter=I||(D=>D),this.render()}set pages(A){this._pages=A,this.refreshPreview().then(this.refreshBtnSidebar.bind(this)),this.refreshTotalPage(),this.onPagesReady&&this.onPagesReady(A)}get pages(){return this._pages}unmount(){this.$content.remove(),this.$footer.remove()}setReadonly(A){this.readonly=A,this.$content.classList.toggle(this.wrapClassName("readonly"),A),this.$footer.classList.toggle(this.wrapClassName("readonly"),A),this.$pageNumberInput.disabled=A}destroy(){var A;(A=this.previewLazyLoad)==null||A.destroy(),this.sideEffect.flushAll(),this.unmount()}setPageIndex(A){Number.isNaN(A)||(this.pageIndex=A,this.$pageNumberInput.value=String(A+1))}refreshTotalPage(){this.pages.length?this.$totalPage.textContent=" / "+this.pages.length:this.$totalPage.textContent=""}setSmallBox(A){this.isSmallBox!==A&&(this.isSmallBox=A,this.$footer.classList.toggle(this.wrapClassName("float-footer"),A))}render(){return this.renderContent(),this.renderFooter(),this.$content}renderContent(){if(!this.$content){const A=document.createElement("div");A.className=this.wrapClassName("content"),this.$content=A,this.readonly&&A.classList.add(this.wrapClassName("readonly")),A.appendChild(this.renderPreviewMask()),A.appendChild(this.renderPreview())}return this.$content}renderPreview(){if(!this.$preview){const A=document.createElement("div");A.className=this.wrapClassName("preview")+" tele-fancy-scrollbar",this.$preview=A,this.refreshPreview(),this.sideEffect.addEventListener(A,"click",v=>{var M;if(this.readonly)return;const P=(M=v.target.dataset)==null?void 0:M.pageIndex;P&&(v.preventDefault(),v.stopPropagation(),v.stopImmediatePropagation(),this.onNewPageIndex(Number(P),"preview"),this.togglePreview(!1))})}return this.$preview}async refreshPreview(){var I,D;const{$preview:A}=this,v=this.wrapClassName("preview-page"),P=this.wrapClassName("preview-page-name");for(;A.firstChild;)A.firstChild.remove();const M=[];for(let k=0,V=this.pages.length;k<V;k++){const X=this.pages[k],Z=(I=X.thumbnail)!=null?I:X.src.startsWith("ppt")?void 0:X.src;Z&&(M[k]=this.urlInterrupter(Z))}for(let k=0,V=this.pages.length;k<V;k++)M[k]=await M[k];this.pages.forEach((k,V)=>{const X=M[V];if(!X)return;const Z=String(V),$=document.createElement("a");$.className=v+" "+this.wrapClassName(`preview-page-${V}`),$.setAttribute("href","#"),$.dataset.pageIndex=Z;const ht=document.createElement("span");ht.className=P,ht.textContent=String(V+1),ht.dataset.pageIndex=Z;const Mt=document.createElement("img");Mt.width=k.width,Mt.height=k.height,Mt.dataset.src=X,Mt.dataset.pageIndex=Z,$.appendChild(Mt),$.appendChild(ht),A.appendChild($)}),(D=this.previewLazyLoad)==null||D.update()}renderPreviewMask(){return this.$previewMask||(this.$previewMask=document.createElement("div"),this.$previewMask.className=this.wrapClassName("preview-mask"),this.sideEffect.addEventListener(this.$previewMask,"click",A=>{this.readonly||A.target===this.$previewMask&&this.togglePreview(!1)})),this.$previewMask}refreshBtnSidebar(){this.$btnSidebar.style.display=this.pages.length>0?"":"none"}renderFooter(){if(!this.$footer){const A=document.createElement("div");A.className=this.wrapClassName("footer"),this.$footer=A,this.readonly&&A.classList.add(this.wrapClassName("readonly")),this.isSmallBox&&A.classList.add(this.wrapClassName("float-footer"));const v=this.renderFooterBtn("btn-sidebar",mw(this.namespace));this.sideEffect.addEventListener(v,"click",()=>{this.readonly||this.togglePreview()}),this.$btnSidebar=v,this.$btnSidebar.style.display="none",this.$footer.appendChild(v);const P=document.createElement("div");P.className=this.wrapClassName("page-jumps");const M=this.renderFooterBtn("btn-page-back",gw(this.namespace));if(this.sideEffect.addEventListener(M,"click",()=>{this.readonly||this.onNewPageIndex(this.pageIndex-1,"navigation")}),P.appendChild(M),this.onPlay){const X=this.renderFooterBtn("btn-page-play",_w(this.namespace),yw(this.namespace));this.$btnPlay=X,this.sideEffect.addEventListener(X,"click",()=>{this.readonly||(this.setPlaying(),this.onPlay&&this.onPlay())}),P.appendChild(X)}const I=this.renderFooterBtn("btn-page-next",vw(this.namespace));this.sideEffect.addEventListener(I,"click",()=>{this.readonly||this.onNewPageIndex(this.pageIndex+1,"navigation")}),P.appendChild(I);const D=document.createElement("div");D.className=this.wrapClassName("page-number");const k=document.createElement("input");k.className=this.wrapClassName("page-number-input"),k.value=String(this.pageIndex+1),this.readonly&&(k.disabled=!0),this.$pageNumberInput=k,this.sideEffect.addEventListener(k,"focus",()=>{k.select()}),this.sideEffect.addEventListener(k,"change",()=>{this.readonly||k.value&&this.onNewPageIndex(Number(k.value)-1,"input")});const V=document.createElement("span");this.$totalPage=V,D.appendChild(k),D.appendChild(V),this.$footer.appendChild(P),this.$footer.appendChild(D)}return this.$footer}renderFooterBtn(A,v,P){const M=document.createElement("button");return M.className=this.wrapClassName("footer-btn")+" "+this.wrapClassName(A),M.appendChild(v),P&&M.appendChild(P),M}togglePreview(A){if(this.isShowPreview=A!=null?A:!this.isShowPreview,this.$content.classList.toggle(this.wrapClassName("preview-active"),this.isShowPreview),this.isShowPreview){const v=this.$preview.querySelector("."+this.wrapClassName(`preview-page-${this.pageIndex}`));v&&(this.previewLazyLoad||(this.previewLazyLoad=new tl({container:this.$preview,elements_selector:`.${this.wrapClassName("preview-page>img")}`})),this.$preview.scrollTo({top:v.offsetTop-16}))}}wrapClassName(A){return`${this.namespace}-${A}`}}const ME=new Set(["clicker"]),CE=function(){};class RE{constructor({context:A,box:v,view:P,mountSlideController:M,mountWhiteboard:I,baseScenePath:D,appId:k,urlInterrupter:V,onPagesReady:X,onNavigate:Z}){this.slideController=null,this.isViewMounted=!1,this.justSildeReadonly=!1,this.onError=({error:$,index:ht})=>{var Mt,wt;this.viewer.setPaused(),(Mt=this.slideController)!=null&&Mt.showRenderError&&(this.$overlay.textContent=`Error on slide[page=${this.slideController.page}]: ${$.message}`,this.$overlay.style.opacity="1"),(wt=this.slideController)!=null&&wt.onRenderError&&this.slideController.onRenderError($,ht),Lr.warn("[Slide] render error",$)},this.onRenderStart=()=>{this.$whiteboardView.classList.add(this.wrapClassName("wb-view-hidden")),this.viewer.setPlaying()},this.onRenderEnd=()=>{},this.onPageChanged=()=>{clearTimeout(this._onPageChangedTimer),this._onPageChangedTimer=setTimeout(this._onPageChanged,200)},this._onPageChangedTimer=0,this._onPageChanged=()=>{this.$overlay.style.opacity="",this.$whiteboardView.classList.remove(this.wrapClassName("wb-view-hidden"))},this.refreshPages=()=>{this.slideController&&(this.viewer.pages=gg(this.slideController.slide,this.slideController.previewList),this.viewer.setPageIndex(this.getPageIndex(this.slideController.page)),this.scaleDocsToFit())},this.scaleDocsToFit=()=>{if(this.slideController){const{width:$,height:ht}=this.slideController.slide;$&&ht&&(this.whiteboardView.moveCameraToContain({originX:-$/2,originY:-ht/2,width:$,height:ht,animationMode:"immediately"}),this.whiteboardView.setCameraBound({damping:1,maxContentMode:()=>this.whiteboardView.camera.scale,minContentMode:()=>this.whiteboardView.camera.scale,centerX:0,centerY:0,width:$,height:ht}),this.isViewMounted||(this.isViewMounted=!0,console.log("[Slide] mount whiteboard view"),this.mountWhiteboard(this.$whiteboardView)))}},this.onPlay=()=>{this.slideController&&this.slideController.slide.nextStep()},this.onNewPageIndex=($,ht)=>{this.slideController&&this.slideController.jumpToPage($+1,ht)},this.sideEffect=new Ka,this.namespace="netless-app-slide",this.toPdf=async()=>{if(!this.slideController){this.reportProgress(100,null);return}const{slide:$}=this.slideController,ht=1920,Mt=document.createElement("canvas"),wt=Mt.getContext("2d"),{slideCount:N,width:R,height:U}=$;let W=Math.floor(R),O=Math.floor(U);W>ht&&(W=ht,O=Math.floor(U*W/R)),O>ht&&(O=ht,W=Math.floor(R*O/U)),Mt.width=W,Mt.height=O;const j=document.createElement("canvas");j.width=W,j.height=O;const tt=j.getContext("2d");if(!tt||!this.getWhiteSnapshot||!wt)return this.reportProgress(100,null),null;const H=W>O?"l":"p",{jsPDF:Lt}=await Promise.resolve().then(function(){return qS(require("jspdf"))}),Vt=new Lt({format:[W,O],orientation:H,compress:!0});for(let F=1;F<=N;F++){let mt=null;try{mt=await this.slideController.slide.snapshotWithTimingEnd(F)}catch{}if(mt){const Dt=document.createElement("img");Dt.src=mt,await new Promise(J=>Dt.onload=J),wt.drawImage(Dt,0,0,W,O)}tt.clearRect(0,0,W,O),await this.getWhiteSnapshot(F,j,tt,R,U);try{const Dt=j.toDataURL("image/png"),J=document.createElement("img");J.src=Dt,await new Promise(dt=>J.onload=dt),wt.drawImage(J,0,0,W,O)}catch{}const et=Mt.toDataURL("image/jpeg",.6);F>1&&Vt.addPage(),Vt.addImage(et,"JPEG",0,0,W,O,"","FAST"),wt.clearRect(0,0,W,O),Math.ceil(F/N*100)<100&&this.reportProgress(Math.ceil(F/N*100),null)}const st=Vt.output("arraybuffer"),z=this.box.title;this.reportProgress(100,{pdf:st,title:z})},this.context=A,this.box=v,this.whiteboardView=P,this.mountSlideController=M,this.mountWhiteboard=I,this.onNavigate=Z||CE,this.baseScenePath=D,this.appId=k,this.viewer=new Wg({readonly:v.readonly,onNewPageIndex:this.onNewPageIndex,onPlay:this.onPlay,urlInterrupter:V,onPagesReady:X}),this.sideEffect.add(()=>{const $=ht=>{this.setReadonly(ht)};return v.events.on("readonly",$),()=>v.events.off("readonly",$)}),this.sideEffect.add(()=>{const $=ht=>{ht.data.type==="@netless/_request_save_pdf_"&&ht.data.appId===this.appId&&this.toPdf().catch(()=>this.reportProgress(100,null))};return window.addEventListener("message",$),()=>{window.removeEventListener("message",$)}}),this.render()}setJustSildeReadonly(A){var v;this.justSildeReadonly=A,(v=this.slideController)==null||v.slide.setInteractive(!this.justSildeReadonly)}render(){this.viewer.$content.appendChild(this.renderSlideContainer()),this.viewer.$content.appendChild(this.renderWhiteboardView()),this.viewer.$content.appendChild(this.renderOverlay()),this.sideEffect.addEventListener(window,"keydown",A=>{if(!this.justSildeReadonly&&this.box.focus&&this.slideController&&!ew(A.target))switch(A.key){case"ArrowUp":case"ArrowLeft":{this.slideController.slide.prevStep(),this.onNavigate(this.slideController.page,"keydown");break}case"ArrowRight":case"ArrowDown":{this.slideController.slide.nextStep(),this.onNavigate(this.slideController.page,"keydown");break}}})}renderOverlay(){if(!this.$overlay){const A=document.createElement("div");A.className=this.wrapClassName("overlay"),this.$overlay=A}return this.$overlay}renderSlideContainer(){if(!this.$slide){const A=document.createElement("div");A.className=this.wrapClassName("slide"),A.dataset.appKind="Slide",this.$slide=A}return this.$slide}renderWhiteboardView(){return this.$whiteboardView||(this.$whiteboardView=document.createElement("div"),this.$whiteboardView.className=this.wrapClassName("wb-view")),this.$whiteboardView}mount(){return this.box.mountContent(this.viewer.$content),this.box.mountFooter(this.viewer.$footer),this.slideController=this.mountSlideController({anchor:this.$slide,onRenderStart:this.onRenderStart,onRenderEnd:this.onRenderEnd,onTransitionStart:this.viewer.setPlaying,onTransitionEnd:this.viewer.setPaused,onReady:this.refreshPages,onNavigate:this.onNavigate,onError:this.onError}),this.scaleDocsToFit(),this.sideEffect.add(()=>(this.whiteboardView.callbacks.on("onSizeUpdated",this.scaleDocsToFit),()=>this.whiteboardView.callbacks.off("onSizeUpdated",this.scaleDocsToFit))),this}getPageIndex(A){return(A>0?A:1)-1}unmount(){return this.slideController&&(this.slideController.destroy(),this.slideController=null),this.viewer.unmount(),this}setReadonly(A){this.viewer.setReadonly(A)}destroy(){this.sideEffect.flushAll(),this.unmount(),this.viewer.destroy()}toggleClickThrough(A){this.$whiteboardView.style.pointerEvents=!A||ME.has(A)?"none":"auto"}wrapClassName(A){return`${this.namespace}-${A}`}async getWhiteSnapshot(A,v,P,M,I){const D={centerX:0,centerY:0,scale:Math.min(v.width/M,v.height/I)},k=`${this.baseScenePath}/${A}`,V=this.context.manager.windowManger;V._appliancePlugin?await V._appliancePlugin.screenshotToCanvasAsync(P,k,v.width,v.height,D):this.whiteboardView.screenshotToCanvas(P,k,v.width,v.height,D)}reportProgress(A,v){window.postMessage({type:"@netless/_result_save_pdf_",appId:this.appId,progress:A,result:v})}}let Ic=!1;exports.FreezerLength=2;function IE(){return exports.FreezerLength}function PE(b){exports.FreezerLength=b<1?1/0:b}const Ya=b=>"["+b+"]",wh={map:new Map,boxes:new Map,queue:[],validateQueue(){for(this.queue.sort((b,A)=>{var M,I,D,k;const v=(I=(M=this.boxes.get(b))==null?void 0:M.zIndex)!=null?I:0,P=(k=(D=this.boxes.get(A))==null?void 0:D.zIndex)!=null?k:0;return-(v-P)}),Oi("[Slide] freezer: validate",Ya(this.queue));this.queue.length>exports.FreezerLength;){const b=this.queue.pop(),A=this.map.get(b);A&&(Oi("[Slide] freezer: validate-freeze",b,Ya(this.queue)),A.freeze())}},set(b,A,v){Oi("[Slide] freezer: add",b,Ya(this.queue)),this.map.set(b,A),this.boxes.set(b,v),this.queue.includes(b)||this.queue.unshift(b),this.validateQueue()},delete(b){this.map.delete(b),this.boxes.delete(b),this.queue=this.queue.filter(A=>A!==b),Oi("[Slide] freezer: delete",b,Ya(this.queue))},focus(b){const A=this.map.get(b),v=this.queue.indexOf(b);v>-1&&this.queue.splice(v,1),this.queue.unshift(b),this.validateQueue(),Oi("[Slide] freezer: focus",b,Ya(this.queue)),A&&A.unfreeze()}},Pc=new Set;function OE(b){return Pc.add(b),()=>Pc.delete(b)}const Oc=new Set;function LE(b){return Oc.add(b),()=>Oc.delete(b)}const NE=b=>{Ic=!0,b.on("focus",({appId:A})=>{wh.focus(A)}),b.on("created",({appId:A})=>{Pc.forEach(v=>v(A))}),b.on("destroy",({appId:A})=>{Oc.forEach(v=>v(A))})};var Xg=`.netless-app-slide-content{position:relative;height:100%;overflow:hidden}.netless-app-slide-preview-mask{display:none;position:absolute;z-index:200;top:0;left:0;width:100%;height:100%}.netless-app-slide-preview{display:flex;flex-direction:column;align-items:center;position:absolute;z-index:300;top:0;left:0;width:33%;max-width:200px;height:100%;padding-top:10px;transform:translate(-100%);background:rgba(237,237,240,.9);box-shadow:inset -1px 0 #0000001c;transition:transform .4s}.netless-app-slide-preview-active .netless-app-slide-preview-mask{display:block}.netless-app-slide-preview-active .netless-app-slide-preview{transform:translate(0)}.netless-app-slide-preview-page{position:relative;display:block;width:55%;margin-bottom:10px;font-size:0;color:transparent;outline:none;border:7px solid transparent;border-radius:4px;transition:border-color .3s;user-select:none}.netless-app-slide-preview-page:hover,.netless-app-slide-preview-page.netless-app-slide-preview-page-active{border-color:#444e601a}.netless-app-slide-preview-page>img{width:100%;height:auto;box-sizing:border-box;border:1px solid rgba(0,0,0,.5);border-radius:1px;background-color:#fff;box-shadow:0 2px 8px #0000004d}.netless-app-slide-preview-page-name{position:absolute;top:1px;left:-10px;transform:translate(-100%);text-align:right;font-size:12px;color:#5f5f5f;user-select:none}.netless-app-slide-footer{box-sizing:border-box;height:26px;display:flex;align-items:center;padding:0 16px;border-top:1px solid #eeeef7;color:#191919}.netless-app-slide-float-footer{width:100%;min-height:26px;position:absolute;left:0;bottom:0;z-index:2000;background:rgba(249,249,252,.9);transition:opacity .4s}.netless-app-slide-footer-btn{box-sizing:border-box;width:26px;height:26px;font-size:0;margin:0;padding:3px;border:none;border-radius:1px;outline:none;color:currentColor;background:transparent;transition:background .4s;cursor:pointer;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.netless-app-slide-footer-btn:hover{background:rgba(237,237,240,.9)}@media (hover: none){.netless-app-slide-footer-btn:hover{background:transparent!important}}.netless-app-slide-footer-btn>svg{width:100%;height:100%}.netless-app-slide-footer-btn>svg:nth-of-type(2){display:none}.netless-app-slide-footer-btn.netless-app-slide-footer-btn-playing>svg:nth-of-type(1){display:none}.netless-app-slide-footer-btn.netless-app-slide-footer-btn-playing>svg:nth-of-type(2){display:initial}.netless-app-slide-footer-btn~.netless-app-slide-footer-btn{margin-left:15px}.netless-app-slide-page-jumps{flex:1;display:flex;justify-content:center;align-items:center}.netless-app-slide-page-number{margin-left:auto;font-size:13px;user-select:none;white-space:nowrap;word-break:keep-all}.netless-app-slide-page-number-input{border:none;outline:none;width:3em;margin:0;padding:0 2px;text-align:right;font-size:13px;line-height:1;font-weight:400;font-family:inherit;border-radius:2px;color:currentColor;background:transparent;transition:background .4s;user-select:text;-webkit-tap-highlight-color:rgba(0,0,0,0)}.netless-app-slide-page-number-input:hover,.netless-app-slide-page-number-input:focus,.netless-app-slide-page-number-input:active{background:#fff;box-shadow:#63636333 0 2px 8px}.netless-app-slide-readonly.netless-app-slide-footer{display:none}.telebox-color-scheme-dark .netless-app-slide-page-number-input{color:#a6a6a8}.telebox-color-scheme-dark .netless-app-slide-page-number-input:active,.telebox-color-scheme-dark .netless-app-slide-page-number-input:focus,.telebox-color-scheme-dark .netless-app-slide-page-number-input:hover{color:#222}.telebox-color-scheme-dark .netless-app-slide-footer{color:#a6a6a8;background:#2d2d33;border-top:none}.telebox-color-scheme-dark .netless-app-slide-footer-btn:hover{background:#212126}.telebox-color-scheme-dark .netless-app-slide-preview{background:rgba(50,50,50,.9)}.netless-app-slide-wb-view{position:absolute;top:0;left:0;width:100%;height:100%;z-index:100;overflow:hidden;transition:opacity .2s}.netless-app-slide-wb-view-hidden{opacity:0}.netless-app-slide-overlay{display:flex;align-items:center;justify-content:center;position:absolute;z-index:200;top:0;left:0;width:100%;height:100%;padding:8px;background:rgba(255,0,0,.25);transition:opacity .3s;opacity:0;pointer-events:none}.netless-app-slide-slide{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.netless-app-slide-slide canvas{transform:scale(var(--netless-app-slide-scale, 1))}
7989
+ `;function DE({container:b,taskId:A,resourceList:v=[],url:P=Nc,debug:M=!1}){if(!A)throw new Error("[Slide] taskId is required");b.style.cssText+="display:flex;flex-direction:column";const I=new Yg({target:b});return I.debug=!!M,I.mount(A,P,v),I}class Yg{constructor(A){this.slide=null,this.debug=!1,this.previewList=[],this.sideEffect=new Ka,this.ready=!1,this.readyPromise=new Promise(v=>{this.resolveReady=()=>{this.ready=!0,v()}}),this.hotkeyListener=v=>{if(this.slide)switch(v.key){case"ArrowUp":case"ArrowLeft":{this.slide.prevStep();break}case"ArrowRight":case"ArrowDown":{this.slide.nextStep();break}}},this.onPageChanged=v=>{this.viewer.setPageIndex(v-1)},this.onTransitionStart=()=>{this.viewer.setPlaying()},this.onTransitionEnd=()=>{this.viewer.setPaused()},this.onError=({error:v})=>{this.viewer.setPaused(),console.warn("[Slide] render error",v)},this.destroyed=!1,this.refreshPages=()=>{this.slide&&(this.viewer.pages=gg(this.slide,this.previewList),this.viewer.setPageIndex(this.getPageIndex(this.slide.slideState.currentSlideIndex)))},this.onPlay=()=>{this.slide&&this.slide.nextStep()},this.onNewPageIndex=v=>{this.slide&&this.slide.slideCount>0&&this.slide.renderSlide(hg(v+1,1,this.slide.slideCount))},this.namespace="netless-app-slide",this.target=A.target,this.bgColor=mg(this.target),this.viewer=new Wg({readonly:!1,onNewPageIndex:this.onNewPageIndex,onPlay:this.onPlay}),this.render()}render(){this.viewer.$content.appendChild(this.renderSlideContainer()),this.registerHotKeys(window)}registerHotKeys(A){this.sideEffect.addEventListener(A,"keydown",this.hotkeyListener,void 0,"hotkey")}mount(A,v,P,M=[]){this.target.appendChild(this.renderStyle()),this.target.appendChild(this.viewer.$content),this.target.appendChild(this.viewer.$footer),this.slide=new li.Slide({anchor:this.$slide,interactive:!0,mode:"local",controller:this.debug,enableGlobalClick:!0,renderOptions:{minFPS:25,maxFPS:30,autoFPS:!0,autoResolution:!0,transactionBgColor:this.bgColor}}),this.registerEventListeners(),P.length>0?this.slide.setResourceList(A,P):this.slide.setResource(A,v),this.slide.renderSlide(1),this.previewList=M}renderStyle(){const A=document.createElement("style");return A.appendChild(document.createTextNode(Xg)),A}registerEventListeners(){if(!this.slide)return;const{slide:A}=this;A.on(li.SLIDE_EVENTS.slideChange,this.onPageChanged),A.on(li.SLIDE_EVENTS.renderStart,this.onTransitionStart),A.on(li.SLIDE_EVENTS.renderEnd,this.onTransitionEnd),A.on(li.SLIDE_EVENTS.mainSeqStepStart,this.onTransitionStart),A.on(li.SLIDE_EVENTS.mainSeqStepEnd,this.onTransitionEnd),A.on(li.SLIDE_EVENTS.renderError,this.onError),A.on(li.SLIDE_EVENTS.renderEnd,this.resolveReady),this.readyPromise.then(this.refreshPages)}destroy(){this.sideEffect.flushAll(),this.slide&&!this.destroyed&&(this.slide.destroy(),this.destroyed=!0),this.viewer.destroy()}getPageIndex(A){return(A>0?A:1)-1}renderSlideContainer(){if(!this.$slide){const A=document.createElement("div");A.className=this.wrapClassName("slide"),A.dataset.appKind="Slide",this.$slide=A}return this.$slide}wrapClassName(A){return`${this.namespace}-${A}`}}const FE=li.Slide.usePlugin.bind(li.Slide),Lc="0.2.74",BE={kind:"Slide",setup(b){var X,Z;if(console.log("[Slide] setup @ "+Lc),b.getIsWritable()&&b.storage.ensureState(Cc),!b.storage.state.taskId)throw new Error("[Slide] no taskId");const A=b.getView();if(!A)throw new Error("[Slide] no view, please set scenePath on addApp()");A.disableCameraTransform=!0;const v=b.getBox();v.mountStyles(Xg);try{v.$content.dataset.appSlideVersion=Lc}catch{}const P=b.getInitScenePath();let M=null;const I=$=>{const ht=b.getRoom();if(M&&M.slideController){let Mt=!1;ht&&b.getIsWritable()&&(ng(ht,b,M.slideController.slide,P),Mt=!0),Oi("[Slide] page to",$,Mt?"(synced)":""),M.viewer.setPageIndex($-1),M.viewer.setPaused(),M.onPageChanged();const wt=M.viewer.pages.length;wt>0&&b.dispatchAppEvent("pageStateChange",{index:$-1,length:wt})}},D=$=>{const ht=b.getAppOptions()||{},Mt=new fw({context:b,...$,onPageChanged:I,onNavigate:$.onNavigate,onRenderError:ht.onRenderError,showRenderError:ht.showRenderError,invisibleBehavior:ht.invisibleBehavior});return Ic&&wh.set(b.appId,Mt,v),Lr.setAppController(b.appId,Mt),Mt.readyPromise.then($.onReady).then(()=>{const wt=b.getRoom();let N=!1;wt&&b.getIsWritable()&&(ng(wt,b,Mt.slide,P),N=!0);const R=Mt.slide.slideState.currentSlideIndex;Oi("[Slide] page to",R,N?"(synced)":"","(on ready)"),Mt.slide.on("renderEnd",$.onRenderEnd)}),Mt};M=new RE({context:b,box:v,view:A,mountSlideController:D,mountWhiteboard:b.mountView.bind(b),baseScenePath:P,appId:b.appId,urlInterrupter:(X=b.getAppOptions())==null?void 0:X.urlInterrupter,onPagesReady:({length:$})=>{const ht=(M==null?void 0:M.viewer.pageIndex)||0;b.dispatchAppEvent("pageStateChange",{index:ht,length:$})},onNavigate:($,ht)=>{Oi("[Slide] user navigate to",$,ht?`(${ht})`:"")}}),(Z=b.getAppOptions())!=null&&Z.justSildeReadonly&&(M==null||M.setJustSildeReadonly(!0));const k=b.getRoom(),V=new Ka;return V.add(()=>{var $;return Lr.setAppContext(b.appId,b),Lr.enable=(($=b.getAppOptions())==null?void 0:$.debug)||!1,Lr.level="debug",()=>Lr.deleteApp(b.appId)}),k&&(M.toggleClickThrough(k.state.memberState.currentApplianceName),V.add(()=>{const $=ht=>{ht.memberState&&M&&M.toggleClickThrough(ht.memberState.currentApplianceName)};return k.callbacks.on("onRoomStateChanged",$),()=>k.callbacks.off("onRoomStateChanged",$)})),b.emitter.on("destroy",()=>{Oi("[Slide] destroy",b.appId),Ic&&wh.delete(b.appId),V.flushAll(),M&&(M.destroy(),M=null)}),M.mount(),{setSildeReadonly:$=>{M==null||M.setJustSildeReadonly($)},viewer:()=>M,controller:()=>M==null?void 0:M.slideController,slide:()=>{var $;return($=M==null?void 0:M.slideController)==null?void 0:$.slide},nextStep:()=>{var $;return M&&M.slideController?(($=M==null?void 0:M.slideController)==null||$.slide.nextStep(),!0):!1},prevStep:()=>{var $;return M&&M.slideController?(($=M==null?void 0:M.slideController)==null||$.slide.prevStep(),!0):!1},position:()=>{const $=M==null?void 0:M.slideController;if($)return[$.page,$.pageCount]},nextPage:()=>{const $=M==null?void 0:M.slideController;if($){const{page:ht,pageCount:Mt}=$;if(Mt>0&&ht<Mt)return $.jumpToPage(ht+1),!0}return!1},prevPage:()=>{const $=M==null?void 0:M.slideController;if($){const{page:ht,pageCount:Mt}=$;if(Mt>0&&ht>1)return $.jumpToPage(ht-1),!0}return!1},jumpToPage:$=>{const ht=M==null?void 0:M.slideController;if(ht){const{page:Mt,pageCount:wt}=ht;if(wt>0&&Mt>0&&Mt<=wt)return ht.jumpToPage($),!0}return!1}}}};exports.DefaultUrl=Nc;exports.Slide=li.Slide;exports.SlidePreviewer=Yg;exports.addHooks=NE;exports.apps=wh;exports.default=BE;exports.getFreezerLength=IE;exports.onCreated=OE;exports.onDestroyed=LE;exports.previewSlide=DE;exports.setFreezerLength=PE;exports.usePlugin=FE;exports.version=Lc;
7990
7990
  //# sourceMappingURL=main.cjs.js.map