@netless/app-slide 0.2.29 → 0.2.30

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/dist/main.es.js CHANGED
@@ -31049,7 +31049,7 @@ void main(void){
31049
31049
  var t3, e2;
31050
31050
  (t3 = this.strokeGraphics) === null || t3 === void 0 || t3.render(), (e2 = this.backgroundGraphics) === null || e2 === void 0 || e2.render(), this.createBackground(), this.subClassRender(), this.createFilledPathMask(), this.createPathFill(), this.createArrow();
31051
31051
  }), "@ShapeImpl[render]"), this.text && this.text.render(t2), t2.addSubMTask(() => Zv(this, void 0, void 0, function* () {
31052
- var t3, e2, i2, n2, r2, o2, s2, a2, l2, h2, u2;
31052
+ var t3, e2, i2, n2, r2, o2, s2, a2, l2, h2, u2, c2, d2;
31053
31053
  if (((t3 = this.json.textBody) === null || t3 === void 0 ? void 0 : t3.iterateType) === "wd" || ((e2 = this.json.textBody) === null || e2 === void 0 ? void 0 : e2.iterateType) === "lt") {
31054
31054
  if (this.renderContainer.addChild(this.container), this.text) {
31055
31055
  const { x: t4, y: e3 } = (i2 = this.json.scale) !== null && i2 !== void 0 ? i2 : { x: 1, y: 1 };
@@ -31060,12 +31060,12 @@ void main(void){
31060
31060
  if (cg()(this.json.textRotateWithShape) && !this.json.textRotateWithShape) {
31061
31061
  const t5 = this.json.rotation || 0;
31062
31062
  this.text.container.rotation = -t5;
31063
- const { width: e3 } = this.text;
31064
- this.text.container.position.x = e3;
31063
+ const { width: e4 } = this.text;
31064
+ this.text.container.position.x = e4;
31065
31065
  }
31066
31066
  this.text.container.zIndex = 100;
31067
- const t4 = (a2 = this.json.effectList) === null || a2 === void 0 ? void 0 : a2.find((t5) => t5.type === "outerShadow");
31068
- t4 && t4.sx !== 1 ? this.container.addChild(this.text.container) : this.effectContainer.addChild(this.text.container);
31067
+ const t4 = (a2 = this.json.effectList) === null || a2 === void 0 ? void 0 : a2.find((t5) => t5.type === "outerShadow"), e3 = (l2 = this.json.effectList) === null || l2 === void 0 ? void 0 : l2.find((t5) => t5.type === "softEdge"), i3 = (h2 = this.json.effectList) === null || h2 === void 0 ? void 0 : h2.find((t5) => t5.type === "glow");
31068
+ t4 && t4.sx !== 1 || e3 || i3 ? this.container.addChild(this.text.container) : this.effectContainer.addChild(this.text.container);
31069
31069
  }
31070
31070
  this.renderContainer.addChild(this.container);
31071
31071
  }
@@ -31073,7 +31073,7 @@ void main(void){
31073
31073
  const t4 = Vh.p.create({ width: this.json.width, height: this.json.height, resolution: Math.ceil(this.ctx.renderer.resolution) });
31074
31074
  this.ctx.renderer.render(this.renderContainer, { renderTexture: t4 }), this.ctx.bgTexture = t4;
31075
31075
  }
31076
- this.json.effectList && this.json.effectList.length > 0 && ((l2 = this.ctx.featureList) === null || l2 === void 0 ? void 0 : l2.effect) && !this.ctx.forceCanvas && (this.effectObject = new qv(this.effectContainer, this.json.effectList, `${this.ctx.taskId}_${this.ctx.slideIndex}_${this.json.id}`, this.ctx, this.json.rotation || 0, new Lh.g(((h2 = this.json.scale) === null || h2 === void 0 ? void 0 : h2.x) || 1, ((u2 = this.json.scale) === null || u2 === void 0 ? void 0 : u2.y) || 1)), function(t4) {
31076
+ this.json.effectList && this.json.effectList.length > 0 && ((u2 = this.ctx.featureList) === null || u2 === void 0 ? void 0 : u2.effect) && !this.ctx.forceCanvas && !this.json.media && (this.effectObject = new qv(this.effectContainer, this.json.effectList, `${this.ctx.taskId}_${this.ctx.slideIndex}_${this.json.id}`, this.ctx, this.json.rotation || 0, new Lh.g(((c2 = this.json.scale) === null || c2 === void 0 ? void 0 : c2.x) || 1, ((d2 = this.json.scale) === null || d2 === void 0 ? void 0 : d2.y) || 1)), function(t4) {
31077
31077
  var e3, i3, n3;
31078
31078
  return ((e3 = t4.fillStyle) === null || e3 === void 0 ? void 0 : e3.fillType) === "gifFill" || (((n3 = (i3 = t4.lineStyle) === null || i3 === void 0 ? void 0 : i3.fill) === null || n3 === void 0 ? void 0 : n3.fillType) === "gifFill" || !!t4.picFill && t4.picFill.fillType === "gifFill");
31079
31079
  }(this.json) && this.effectObject.setFrameCount(-1), this.effectObject.on("ready", () => {
@@ -31157,10 +31157,10 @@ void main(void){
31157
31157
  this.playButton.style.display = "none", this.pauseButton.style.display = "block", this.playCallBackList.forEach((t3) => {
31158
31158
  t3();
31159
31159
  });
31160
- }, this.playMediaFromCtrl = () => {
31161
- this.ctx.isPlayerPaused() ? this.ctx.logger.info("Media controller prevent play event with paused state", this.ctx.taskId) : (this.ctx.mode !== "interactive" && this.playMedia(), this.ctx.mode !== "local" && this.ctx.eventHub.emit(ky.mediaPlay, { id: this.targetId, time: this.media.currentTime - this.start }));
31162
- }, this.pauseMediaFromCtrl = () => {
31163
- this.ctx.isPlayerPaused() ? this.ctx.logger.info("Media controller prevent pause event with paused state", this.ctx.taskId) : (this.ctx.mode !== "interactive" && this.pauseMedia(), this.ctx.mode !== "local" && this.ctx.eventHub.emit(ky.mediaPause, { id: this.targetId, time: this.media.currentTime - this.start }));
31160
+ }, this._playMediaFromCtrl = () => {
31161
+ this.playMediaFromCtrl(false);
31162
+ }, this._pauseMediaFromCtrl = () => {
31163
+ this.pauseMediaFromCtrl(false);
31164
31164
  }, this.onClickFullScreenButtonHandle = () => {
31165
31165
  this.media.requestFullscreen(), this.ctx.eventHub.emit(ky.fullscreenChange, { targetId: this.targetId, state: true });
31166
31166
  }, this.onClickCancelFullScreenButtonHandle = () => {
@@ -31260,6 +31260,12 @@ void main(void){
31260
31260
  }
31261
31261
  }
31262
31262
  }
31263
+ playMediaFromCtrl(t2) {
31264
+ this.ctx.isPlayerPaused() ? this.ctx.logger.info("Media controller prevent play event with paused state", this.ctx.taskId) : (this.ctx.mode !== "interactive" && this.playMedia(), this.ctx.mode !== "local" && this.ctx.eventHub.emit(ky.mediaPlay, { id: this.targetId, time: this.media.currentTime - this.start, _stateOnly: t2 }));
31265
+ }
31266
+ pauseMediaFromCtrl(t2) {
31267
+ this.ctx.isPlayerPaused() ? this.ctx.logger.info("Media controller prevent pause event with paused state", this.ctx.taskId) : (this.ctx.mode !== "interactive" && this.pauseMedia(), this.ctx.mode === "local" || this.ctx.isRendering || this.ctx.eventHub.emit(ky.mediaPause, { id: this.targetId, time: this.media.currentTime - this.start, _stateOnly: t2 }));
31268
+ }
31263
31269
  setControllerPosition() {
31264
31270
  var t2;
31265
31271
  const { target: e2 } = this, { stageWidth: i2, stageHeight: n2 } = this.ctx, r2 = e2.getGlobalPosition(), o2 = Number((t2 = this.container) === null || t2 === void 0 ? void 0 : t2.getAttribute("data-scale")), s2 = i2 * o2, a2 = 1 / o2 * (300 > s2 ? s2 / 300 : 1);
@@ -31277,11 +31283,11 @@ void main(void){
31277
31283
  i2 === this.ctx.slideIndex ? t2 && this.targetId === e2 ? (this.fullScreenButton.style.display = "none", this.exitFullScreenButton.style.display = "block", this.mediaController.style.display = "flex", this.mediaController.removeEventListener("mouseout", this.onMouseOut, false)) : (this.fullScreenButton.style.display = "block", this.exitFullScreenButton.style.display = "none", this.mediaController.style.display = "none", this.mediaController.addEventListener("mouseout", this.onMouseOut, false)) : this.ctx.logger.info("Media controller prevent fullscreen event with different slide index", this.ctx.taskId);
31278
31284
  }
31279
31285
  bindEvent() {
31280
- this.mediaController.addEventListener("mouseover", this.showController, false), this.mediaController.addEventListener("mouseout", this.onMouseOut, false), this.progress.addEventListener("mousedown", this.changeMediaProgress, false), this.playButton.addEventListener("click", this.playMediaFromCtrl, false), this.pauseButton.addEventListener("click", this.pauseMediaFromCtrl, false), this.media.on("durationchange", this.getMediaDuration, false), this.media.on("timeupdate", this.mediaTimeUpdate, false), this.media.on("pause", this.onPauseMedia, false), this.media.on("play", this.onPlayMedia, false), this.isVideo && (this.ctx.globalEventHub.on("onFullscreenChange", this.onFullScreenChange), this.fullScreenButton.addEventListener("click", this.onClickFullScreenButtonHandle, false), this.exitFullScreenButton.addEventListener("click", this.onClickCancelFullScreenButtonHandle, false), this.containerObserver = new MutationObserver(this.onContainerSizeChange), this.container && this.containerObserver.observe(this.container, { attributes: true, attributeFilter: ["data-scale", "style"] }));
31286
+ this.mediaController.addEventListener("mouseover", this.showController, false), this.mediaController.addEventListener("mouseout", this.onMouseOut, false), this.progress.addEventListener("mousedown", this.changeMediaProgress, false), this.playButton.addEventListener("click", this._playMediaFromCtrl, false), this.pauseButton.addEventListener("click", this._pauseMediaFromCtrl, false), this.media.on("durationchange", this.getMediaDuration, false), this.media.on("timeupdate", this.mediaTimeUpdate, false), this.media.on("pause", this.onPauseMedia, false), this.media.on("play", this.onPlayMedia, false), this.isVideo && (this.ctx.globalEventHub.on("onFullscreenChange", this.onFullScreenChange), this.fullScreenButton.addEventListener("click", this.onClickFullScreenButtonHandle, false), this.exitFullScreenButton.addEventListener("click", this.onClickCancelFullScreenButtonHandle, false), this.containerObserver = new MutationObserver(this.onContainerSizeChange), this.container && this.containerObserver.observe(this.container, { attributes: true, attributeFilter: ["data-scale", "style"] }));
31281
31287
  }
31282
31288
  unbindEvent() {
31283
31289
  var t2;
31284
- this.mediaController.removeEventListener("mouseover", this.showController, false), this.mediaController.removeEventListener("mouseout", this.onMouseOut, false), this.progress.removeEventListener("mousedown", this.changeMediaProgress, false), this.playButton.removeEventListener("click", this.playMediaFromCtrl, false), this.pauseButton.removeEventListener("click", this.pauseMediaFromCtrl, false), this.media.removeAllListeners(), this.isVideo && (this.ctx.globalEventHub.removeListener("onFullscreenChange", this.onFullScreenChange), this.fullScreenButton.removeEventListener("click", this.onClickFullScreenButtonHandle, false), this.exitFullScreenButton.removeEventListener("click", this.onClickCancelFullScreenButtonHandle, false), (t2 = this.containerObserver) === null || t2 === void 0 || t2.disconnect());
31290
+ this.mediaController.removeEventListener("mouseover", this.showController, false), this.mediaController.removeEventListener("mouseout", this.onMouseOut, false), this.progress.removeEventListener("mousedown", this.changeMediaProgress, false), this.playButton.removeEventListener("click", this._playMediaFromCtrl, false), this.pauseButton.removeEventListener("click", this._pauseMediaFromCtrl, false), this.media.removeAllListeners(), this.isVideo && (this.ctx.globalEventHub.removeListener("onFullscreenChange", this.onFullScreenChange), this.fullScreenButton.removeEventListener("click", this.onClickFullScreenButtonHandle, false), this.exitFullScreenButton.removeEventListener("click", this.onClickCancelFullScreenButtonHandle, false), (t2 = this.containerObserver) === null || t2 === void 0 || t2.disconnect());
31285
31291
  }
31286
31292
  show() {
31287
31293
  this.setControllerPosition(), this.mediaController.style.display = "flex";
@@ -31376,7 +31382,7 @@ void main(void){
31376
31382
  };
31377
31383
  class r_ extends Za.a {
31378
31384
  constructor(t2) {
31379
- var e2, i2, n2, r2, o2, s2, a2;
31385
+ var e2, i2, n2, r2;
31380
31386
  super(), this.type = "video", this.sprite = new ep(), this.isPlaying = false, this.isGlobalPause = false, this.fullscreen = false, this.url = "", this.onVideoStalled = () => {
31381
31387
  this.ctx.logger.warn(this.url + ", Failed to fetch data, but trying.", this.ctx.taskId);
31382
31388
  }, this.updateVolume = (t3) => {
@@ -31385,18 +31391,18 @@ void main(void){
31385
31391
  const { targetId: e3, state: i3, slideIndex: n3 } = t3;
31386
31392
  n3 === this.ctx.slideIndex && e3 === this.id && (i3 ? this.requestFullscreen() : this.requestCancelFullscreen());
31387
31393
  }, this.id = t2.id, this.start = (e2 = t2.video.cut) === null || e2 === void 0 ? void 0 : e2.start, this.end = (i2 = t2.video.cut) === null || i2 === void 0 ? void 0 : i2.end, this.fullscreen = (n2 = t2.video.fullscreen) !== null && n2 !== void 0 && n2, this.container = t2.container, this.ctx = t2.ctx, this.ctx.medias[this.id] = this;
31388
- let l2 = t2.video.src;
31389
- this.ctx.loaderDelegate && (l2 = this.ctx.loaderDelegate.redirectMedia(l2), this.ctx.logger.info(`redirect media url from ${t2.video.src} to ${l2} by delegate.`, t2.ctx.taskId)), this.videoResource = new Vh.w(l2, { autoLoad: true, autoPlay: false, updateFPS: 30, crossorigin: true }), (r2 = this.videoElement) === null || r2 === void 0 || r2.addEventListener("stalled", this.onVideoStalled), this.url = t2.video.src;
31390
- let h2 = t2.video.src.replace(/4$/, "3");
31391
- this.ctx.loaderDelegate && (h2 = this.ctx.loaderDelegate.redirectMedia(h2), this.ctx.logger.info(`redirect media url from ${t2.video.src.replace(/4$/, "3")} to ${h2} by delegate.`, t2.ctx.taskId)), this.rtcAudio = new i_(h2, t2.ctx.runningAudio);
31392
- const { video: u2, width: c2, height: d2, target: p2 } = t2;
31393
- this.controller = new t_({ targetId: t2.id, shapeId: t2.shapeId, ctx: t2.ctx, width: c2, height: d2, target: p2, media: this, info: u2, canvasElement: t2.canvasElement }), this.controller.addPlayCallBack(() => {
31394
- this.sprite.width = c2, this.sprite.height = d2, this.ctx.clock.setTimeout(() => {
31394
+ let o2 = t2.video.src;
31395
+ this.ctx.loaderDelegate && (o2 = this.ctx.loaderDelegate.redirectMedia(o2), this.ctx.logger.info(`redirect media url from ${t2.video.src} to ${o2} by delegate.`, t2.ctx.taskId)), this.videoResource = new Vh.w(o2, { autoLoad: true, autoPlay: false, updateFPS: 30, crossorigin: true }), (r2 = this.videoElement) === null || r2 === void 0 || r2.addEventListener("stalled", this.onVideoStalled), this.url = t2.video.src;
31396
+ let s2 = t2.video.src.replace(/4$/, "3");
31397
+ this.ctx.loaderDelegate && (s2 = this.ctx.loaderDelegate.redirectMedia(s2), this.ctx.logger.info(`redirect media url from ${t2.video.src.replace(/4$/, "3")} to ${s2} by delegate.`, t2.ctx.taskId)), this.rtcAudio = new i_(s2, t2.ctx.runningAudio);
31398
+ const { video: a2, width: l2, height: h2, target: u2 } = t2;
31399
+ this.controller = new t_({ targetId: t2.id, shapeId: t2.shapeId, ctx: t2.ctx, width: l2, height: h2, target: u2, media: this, info: a2, canvasElement: t2.canvasElement }), this.controller.addPlayCallBack(() => {
31400
+ this.sprite.width = l2, this.sprite.height = h2, this.ctx.clock.setTimeout(() => {
31395
31401
  this.sprite.visible = true;
31396
31402
  }, 50);
31397
31403
  });
31398
- const f2 = new Vh.c(null, { height: d2, width: c2 });
31399
- f2.resource = this.videoResource, this.videoResource.bind(f2), this.sprite = new ep(), this.sprite.visible = false, this.sprite.texture = new Vh.t(f2), this.sprite.interactive = true, this.container.addChild(this.sprite), this.sprite.on("mouseover", (t3) => {
31404
+ const c2 = new Vh.c(null, { height: h2, width: l2 });
31405
+ c2.resource = this.videoResource, this.videoResource.bind(c2), this.sprite = new ep(), this.sprite.visible = false, this.sprite.texture = new Vh.t(c2), this.sprite.interactive = true, this.container.addChild(this.sprite), this.sprite.on("mouseover", (t3) => {
31400
31406
  t3.stopPropagation(), this.controller.show();
31401
31407
  }), this.sprite.on("mouseout", (t3) => {
31402
31408
  t3.stopPropagation(), this.controller.hide();
@@ -31405,12 +31411,6 @@ void main(void){
31405
31411
  (e3 = this.videoElement) === null || e3 === void 0 || e3.addEventListener(t3, () => {
31406
31412
  t3 === "timeupdate" && this.isPlaying, this.emit(t3);
31407
31413
  });
31408
- }), (o2 = this.videoElement) === null || o2 === void 0 || o2.addEventListener("playing", () => {
31409
- this.rtcAudio.play();
31410
- }), (s2 = this.videoElement) === null || s2 === void 0 || s2.addEventListener("pause", () => {
31411
- console.log("video pause");
31412
- }), (a2 = this.videoElement) === null || a2 === void 0 || a2.addEventListener("stalled", () => {
31413
- console.log("video stalled");
31414
31414
  }), this.ctx.activeMedia.add(this), this.ctx.volumeAdjuster.on("update", this.updateVolume), this.ctx.globalEventHub.on("syncFullscreenVideoState", this.syncFullscreenVideoState);
31415
31415
  }
31416
31416
  get videoElement() {
@@ -31600,12 +31600,12 @@ void main(void){
31600
31600
  if (e2 === "call")
31601
31601
  if (/playFrom\(([0-9.]+)\)/.test(t2)) {
31602
31602
  const e3 = t2.match(/playFrom\(([0-9.]+)\)/), n3 = Number(e3[1] || "0");
31603
- (i2 = this.mediaPlayer) === null || i2 === void 0 || i2.controller.playMediaFromCtrl(), setTimeout(() => {
31603
+ (i2 = this.mediaPlayer) === null || i2 === void 0 || i2.controller.playMediaFromCtrl(true), setTimeout(() => {
31604
31604
  var t3;
31605
31605
  (t3 = this.mediaPlayer) === null || t3 === void 0 || t3.controller.jumpToTime(n3);
31606
31606
  }, 1e3);
31607
31607
  } else
31608
- t2 === "custom-pause" ? (n2 = this.mediaPlayer) === null || n2 === void 0 || n2.controller.pauseMediaFromCtrl() : t2 === "togglePause" ? this.mediaPlayer && (this.mediaPlayer.isPlaying ? this.mediaPlayer.controller.pauseMediaFromCtrl() : this.mediaPlayer.controller.playMediaFromCtrl()) : t2 === "stop" && ((r2 = this.mediaPlayer) === null || r2 === void 0 || r2.stop());
31608
+ t2 === "custom-pause" ? (n2 = this.mediaPlayer) === null || n2 === void 0 || n2.controller.pauseMediaFromCtrl(true) : t2 === "togglePause" ? this.mediaPlayer && (this.mediaPlayer.isPlaying ? this.mediaPlayer.controller.pauseMediaFromCtrl(true) : this.mediaPlayer.controller.playMediaFromCtrl(true)) : t2 === "stop" && ((r2 = this.mediaPlayer) === null || r2 === void 0 || r2.stop());
31609
31609
  }
31610
31610
  renderPic() {
31611
31611
  var t2, e2, i2, n2, r2, o2;
@@ -32413,7 +32413,7 @@ void main(void){
32413
32413
  !this.isApplied && i2 && n2 && (this.isApplied = true, (e2 = (t3 = this.timingTarget) === null || t3 === void 0 ? void 0 : t3.cmd) === null || e2 === void 0 || e2.applyCommand(i2, n2));
32414
32414
  }, this.onSeekToStart = () => {
32415
32415
  var t3, e2;
32416
- (e2 = (t3 = this.timingTarget) === null || t3 === void 0 ? void 0 : t3.cmd) === null || e2 === void 0 || e2.applyCommand("custom-pause", "call");
32416
+ this.commonTimeNode.isInInteractiveSeq || (e2 = (t3 = this.timingTarget) === null || t3 === void 0 ? void 0 : t3.cmd) === null || e2 === void 0 || e2.applyCommand("custom-pause", "call");
32417
32417
  }, this.onSeekToEnd = () => {
32418
32418
  }, this.commonTimeNode.on("timeNodeStart", () => {
32419
32419
  this.isApplied = false;
@@ -33344,7 +33344,7 @@ void main(void){
33344
33344
  createCtx(t2) {
33345
33345
  const { task: e2 } = this.stageStates[t2];
33346
33346
  e2.addMTask(() => Py(this, void 0, void 0, function* () {
33347
- const e3 = new Gm(this.loader), i2 = new Za.a(), n2 = { taskId: this.taskId, mode: this.mode, renderer: this.renderer, graphicsTexture: new Km(), stageWidth: 0, stageHeight: 0, ticker: this.ticker, timingTargets: new $m(i2), eventHub: i2, view: this.view, medias: /* @__PURE__ */ Object.create(null), lastViewedIndex: 0, conflictTimeNodeManager: new Qm(), clock: this.clock, spriteTexture: e3, slideIndex: t2, objectPoolGroup: this.objPoolGroup, hasBackgroundFillShape: false, slideScopeEventHub: new Za.a(), logger: this.logger, sdfManager: this.sdfManager, loaderDelegate: this.loaderDelegate, runningAudio: this.runningAudio, activeMedia: this.activeMedia, isPlayerPaused: this.isPlayerPaused, timingEventHub: new Za.a(), maxResolution: this.maxResolution, animatedIds: /* @__PURE__ */ new Set(), volumeAdjuster: this.volumeAdjuster, forceCanvas: this.forceCanvas, globalEventHub: this.globalEventHub };
33347
+ const e3 = new Gm(this.loader), i2 = new Za.a(), n2 = { taskId: this.taskId, mode: this.mode, renderer: this.renderer, graphicsTexture: new Km(), stageWidth: 0, stageHeight: 0, ticker: this.ticker, timingTargets: new $m(i2), eventHub: i2, view: this.view, medias: /* @__PURE__ */ Object.create(null), lastViewedIndex: 0, conflictTimeNodeManager: new Qm(), clock: this.clock, spriteTexture: e3, slideIndex: t2, objectPoolGroup: this.objPoolGroup, hasBackgroundFillShape: false, slideScopeEventHub: new Za.a(), logger: this.logger, sdfManager: this.sdfManager, loaderDelegate: this.loaderDelegate, runningAudio: this.runningAudio, activeMedia: this.activeMedia, isPlayerPaused: this.isPlayerPaused, timingEventHub: new Za.a(), maxResolution: this.maxResolution, animatedIds: /* @__PURE__ */ new Set(), volumeAdjuster: this.volumeAdjuster, forceCanvas: this.forceCanvas, globalEventHub: this.globalEventHub, isRendering: false };
33348
33348
  this.stageCtxs[t2] = n2;
33349
33349
  }), "@StagePool[createCtx]");
33350
33350
  }
@@ -33688,7 +33688,7 @@ void main(void){
33688
33688
  const r2 = yield this.stagePool.getStage(t2), o2 = `snapshot-${t2}-${this.isForward ? "start" : "end"}`, s2 = yield this.localStorage.getItem(o2);
33689
33689
  if (!r2)
33690
33690
  return;
33691
- this.translateEvent(r2.ctx.eventHub, [ky.mainSeqStepChange, ky.mainSeqStateChange, ky.hyperlinkTrigger, ky.interactiveSeqAction, ky.mainSeqStepStart, ky.mainSeqStepEnd, ky.animateStart, ky.animateEnd, ky.mediaPlay, ky.mediaPause, ky.mediaSeek, ky.mediaStop, ky.requestGotoSlide, ky.requestNextSlide, ky.requestPrevSlide, ky.interactiveSeqStateChange, ky.userInput, ky.fullscreenChange]), this.currentIndex = Number(t2);
33691
+ r2.ctx.isRendering = true, this.translateEvent(r2.ctx.eventHub, [ky.mainSeqStepChange, ky.mainSeqStateChange, ky.hyperlinkTrigger, ky.interactiveSeqAction, ky.mainSeqStepStart, ky.mainSeqStepEnd, ky.animateStart, ky.animateEnd, ky.mediaPlay, ky.mediaPause, ky.mediaSeek, ky.mediaStop, ky.requestGotoSlide, ky.requestNextSlide, ky.requestPrevSlide, ky.interactiveSeqStateChange, ky.userInput, ky.fullscreenChange]), this.currentIndex = Number(t2);
33692
33692
  const { width: a2, height: l2, slideCount: h2 } = r2.json;
33693
33693
  this.slideCount = h2, this.designWidth = a2, this.designHeight = l2, (e2 = this.currentStage) === null || e2 === void 0 || e2.clearOnSlideChange();
33694
33694
  const u2 = this.currentStage;
@@ -33711,7 +33711,7 @@ void main(void){
33711
33711
  }
33712
33712
  (n2 = this.transactionPlayer) === null || n2 === void 0 || n2.dispose();
33713
33713
  }
33714
- this.isForward ? yield r2.startTiming() : r2.setMainSeqApplied(), r2.ctx.slideScopeEventHub.emit("slide-render", r2.ctx.slideIndex), this.emit(ky.renderEnd, t2), this.emit(ky.slideChange, t2), this.preload(t2 + 1).catch((e3) => {
33714
+ this.isForward ? yield r2.startTiming() : r2.setMainSeqApplied(), r2.ctx.slideScopeEventHub.emit("slide-render", r2.ctx.slideIndex), this.emit(ky.renderEnd, t2), this.emit(ky.slideChange, t2), r2.ctx.isRendering = false, this.preload(t2 + 1).catch((e3) => {
33715
33715
  this.errorChannel.emit("error", Tm.transform(e3), t2 + 1);
33716
33716
  }), this.preload(t2 - 1).catch((e3) => {
33717
33717
  this.errorChannel.emit("error", Tm.transform(e3), t2 - 1);
@@ -35626,9 +35626,9 @@ void main(void){
35626
35626
  }
35627
35627
  var aT = { syncDispatch: "syncDispatch", syncReceive: "syncReceive", syncEventLag: "syncEventLag", renderStart: "renderStart", renderEnd: "renderEnd", renderError: "renderError", slideChange: "slideChange", mainSeqStepStart: "mainSeqStepStart", mainSeqStepEnd: "mainSeqStepEnd", animateStart: "animateStart", animateEnd: "animateEnd", stateChange: "stateChange", slideStepEnd: "slideEnd", slideStepStart: "slideStart" }, lT = { taskId: "", url: "", currentSlideIndex: -1, mainSeqStep: -1, mainSeqState: null, mediaState: /* @__PURE__ */ Object.create(null), interactiveSeqState: /* @__PURE__ */ Object.create(null) }, hT = "";
35628
35628
  try {
35629
- hT = "0.10.1-beta";
35629
+ hT = "0.10.2-beta.1";
35630
35630
  } catch (t2) {
35631
- hT = "-dev";
35631
+ hT = "dev";
35632
35632
  }
35633
35633
  var uT = null;
35634
35634
  try {
@@ -35844,12 +35844,16 @@ void main(void){
35844
35844
  r2.emit(aT.mainSeqStepEnd, t4);
35845
35845
  }), o2.on(ky.mediaPlay, function(t4) {
35846
35846
  var e4, i4 = (e4 = r2.__slideState.mediaState[t4.id]) !== null && e4 !== void 0 ? e4 : {};
35847
- i4.type = "play", i4.time = r2.timestamp() - 1e3 * t4.time, r2.__slideState.mediaState[t4.id] = i4, r2.emitSyncDispatch({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPlay", id: t4.id, state: i4 }), r2.emitStateChange();
35847
+ i4.type = "play", i4.time = r2.timestamp() - 1e3 * t4.time, r2.__slideState.mediaState[t4.id] = i4, t4._stateOnly ? r2.config.mode === "interactive" && r2.receiveSyncHandler({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPlay", id: t4.id, state: i4 }).catch(function(t5) {
35848
+ r2.logger.error(t5 == null ? void 0 : t5.message, r2.taskId);
35849
+ }) : r2.emitSyncDispatch({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPlay", id: t4.id, state: i4 }), r2.emitStateChange();
35848
35850
  }), o2.on(ky.mediaStop, function(t4) {
35849
35851
  delete r2.__slideState.mediaState[t4.id], r2.emitStateChange();
35850
35852
  }), o2.on(ky.mediaPause, function(t4) {
35851
35853
  var e4, i4 = (e4 = r2.__slideState.mediaState[t4.id]) !== null && e4 !== void 0 ? e4 : {};
35852
- i4.type = "pause", i4.time = t4.time, r2.__slideState.mediaState[t4.id] = i4, r2.emitSyncDispatch({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPause", id: t4.id, state: i4 }), r2.emitStateChange();
35854
+ i4.type = "pause", i4.time = t4.time, r2.__slideState.mediaState[t4.id] = i4, t4._stateOnly ? r2.config.mode === "interactive" && r2.receiveSyncHandler({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPause", id: t4.id, state: i4 }).catch(function(t5) {
35855
+ r2.logger.error(t5 == null ? void 0 : t5.message, r2.taskId);
35856
+ }) : r2.emitSyncDispatch({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaPause", id: t4.id, state: i4 }), r2.emitStateChange();
35853
35857
  }), o2.on(ky.mediaSeek, function(t4) {
35854
35858
  var e4, i4 = (e4 = r2.__slideState.mediaState[t4.id]) !== null && e4 !== void 0 ? e4 : {};
35855
35859
  t4.isPlaying ? (i4.type = "play", i4.time = r2.timestamp() - 1e3 * t4.time) : (i4.type = "pause", i4.time = t4.time), r2.__slideState.mediaState[t4.id] = i4, r2.emitSyncDispatch({ slideIndex: r2.__slideState.currentSlideIndex, type: "mediaSeek", id: t4.id, time: t4.time, state: i4 }), r2.emitStateChange();
@@ -38691,7 +38695,7 @@ class SlidePreviewer {
38691
38695
  }
38692
38696
  }
38693
38697
  const usePlugin = /* @__PURE__ */ Slide.Slide.usePlugin.bind(Slide.Slide);
38694
- const version = "0.2.29";
38698
+ const version = "0.2.30";
38695
38699
  const SlideApp = {
38696
38700
  kind: "Slide",
38697
38701
  setup(context) {