@bitmovin/player-web-x 10.2.0-beta.4 → 10.2.0-beta.6
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/bundles/playerx-bitmovin-v8-core.js +2 -2
- package/bundles/playerx-bitmovin-v8.js +2 -2
- package/bundles/playerx-core.js +2 -2
- package/bundles/playerx-dash.js +2 -2
- package/bundles/playerx-hls-ts-audio.js +2 -2
- package/bundles/playerx-hls.js +2 -2
- package/bundles/playerx-playback.js +2 -2
- package/bundles/playerx-tv.js +2 -2
- package/package.json +1 -1
- package/packages/playerx-adaptation.package.js +2 -2
- package/packages/playerx-advertising-api.package.js +2 -2
- package/packages/playerx-advertising-base.package.js +1 -1
- package/packages/playerx-advertising-bitmovin.package.js +2 -2
- package/packages/playerx-analytics.package.js +1 -1
- package/packages/playerx-bitmovin-advertising-bundle.package.js +2 -2
- package/packages/playerx-bitmovin-source-api.package.js +1 -1
- package/packages/playerx-bitmovin-ui.package.js +1 -1
- package/packages/playerx-bitmovin-v8-core.package.js +1 -1
- package/packages/playerx-bitmovin-v8-static-api.package.js +2 -2
- package/packages/playerx-bitmovin-video-element-utils.package.js +1 -1
- package/packages/playerx-capabilities.package.js +1 -1
- package/packages/playerx-container-mp4.package.js +1 -1
- package/packages/playerx-container-ts.package.js +1 -1
- package/packages/playerx-core.package.js +2 -2
- package/packages/playerx-dash-manifest-technology.package.js +1 -1
- package/packages/playerx-dash-manifest.package.js +2 -2
- package/packages/playerx-dash-parsing.package.js +1 -1
- package/packages/playerx-dash-translation.package.js +1 -1
- package/packages/playerx-dash.package.js +2 -2
- package/packages/playerx-data.package.js +2 -2
- package/packages/playerx-event-bus.package.js +2 -2
- package/packages/playerx-hls-manifest-technology.package.js +1 -1
- package/packages/playerx-hls-manifest.package.js +1 -1
- package/packages/playerx-hls-parsing.package.js +1 -1
- package/packages/playerx-hls-translation.package.js +1 -1
- package/packages/playerx-hls.package.js +1 -1
- package/packages/playerx-mse-playback.package.js +1 -1
- package/packages/playerx-mse-presentation.package.js +1 -1
- package/packages/playerx-native-playback.package.js +2 -2
- package/packages/playerx-native-presentation.package.js +1 -1
- package/packages/playerx-network.package.js +2 -2
- package/packages/playerx-no-adaptation.package.js +2 -2
- package/packages/playerx-playback-api.package.js +2 -2
- package/packages/playerx-playback-technology.package.js +1 -1
- package/packages/playerx-playback.package.js +1 -1
- package/packages/playerx-player-api.package.js +2 -2
- package/packages/playerx-segment-processing.package.js +1 -1
- package/packages/playerx-source.package.js +1 -1
- package/packages/playerx-sources-api.package.js +2 -2
- package/packages/playerx-stream-data-structure.package.js +1 -1
- package/packages/playerx-streaming.package.js +1 -1
- package/packages/playerx-subtitle-api.package.js +2 -2
- package/packages/playerx-subtitle-base.package.js +1 -1
- package/packages/playerx-subtitle-format-detection.package.js +1 -1
- package/packages/playerx-subtitle-native-renderer.package.js +1 -1
- package/packages/playerx-subtitles.package.js +2 -2
- package/packages/playerx-trick-play.package.js +1 -1
- package/packages/playerx-ts-transmuxer.package.js +1 -1
- package/packages/playerx-tv.package.js +1 -1
- package/packages/playerx-ui.package.js +1 -1
- package/packages/playerx-view-mode.package.js +1 -1
- package/packages/playerx-web-vtt.package.js +1 -1
- package/playerx-framework-utils.js +1 -1
- package/types/packages/event-bus/EventBus.d.ts +6 -3
- package/types/packages/event-bus/EventBus.package.d.ts +2 -1
- package/types/packages/event-bus/Types.d.ts +14 -4
- package/types/packages/playback-api/Types.d.ts +2 -2
- package/types/packages/playback-api/playback-api-events/Types.d.ts +3 -1
- package/types/packages/player-api/PlayerApi.package.d.ts +2 -1
- package/types/packages/player-api/Types.d.ts +1 -1
- package/types/packages/sources-api/Types.d.ts +3 -2
- package/types/packages/subtitles/subtitle-api/Types.d.ts +3 -1
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.2.0-beta.
|
|
8
|
+
* Bitmovin Player X Version 10.2.0-beta.6
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ui=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx.ui=t())}(self,(()=>(()=>{"use strict";var e={97085:(e,t)=>{function a(e,t,a){const r=t;return r._name=e,{onAdd:r,dependencies:a}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=a},91270:(e,t)=>{function a(e,t){const a=t;return a._name=e,a}function r(e){return(...t)=>{const[r,o]=e(...t);return a(r,o)}}function o(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=a,t.createTaskClosure=r,t.getTaskName=o},68668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},99302:(e,t)=>{function a(e,a){if(isNaN(a))return t.AdPositionNotYetKnown;if(e===1/0)return a;if(void 0===e||0===e||"pre"===e||"start"===e)return 0;if("post"===e||"end"===e)return a;if("number"==typeof e)return Math.max(Math.min(e,a),0);if(e.includes("%")){return a/100*parseFloat(e.replace("%",""))}return Math.max(Math.min(parseFloat(e),a),0)}function r(e){return t=>a(e,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createAdPosition=t.resolveAdPosition=t.AdPositionNotYetKnown=void 0,t.AdPositionNotYetKnown=Symbol("Ad position not yet known"),t.resolveAdPosition=a,t.createAdPosition=r},76954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdSourceExportNames=t.ContentSourceExportNames=t.AdvertisingBaseExportNames=t.BaseAdState=t.BaseAdBreakState=t.AdQuartile=t.AdType=void 0,function(e){e.VAST="vast",e.VMAP="vmap"}(t.AdType||(t.AdType={})),function(e){e.FirstQuartile="first-quartile",e.Midpoint="midpoint",e.ThirdQuartile="third-quartile"}(t.AdQuartile||(t.AdQuartile={})),function(e){e.Scheduled="scheduled",e.Loaded="loaded",e.Playing="playing",e.Error="error",e.Completed="completed"}(t.BaseAdBreakState||(t.BaseAdBreakState={})),function(e){e.Scheduled="scheduled",e.Playing="playing",e.Completed="completed",e.Skipped="skipped",e.Error="error"}(t.BaseAdState||(t.BaseAdState={})),function(e){e.AdType="ad-type",e.AdQuartile="ad-quartile",e.BaseAdBreakState="base-ad-break-state",e.BaseAdState="base-ad-state",e.CreateBaseAdBreak="create-base-ad-break",e.CreateBaseAd="create-base-ad"}(t.AdvertisingBaseExportNames||(t.AdvertisingBaseExportNames={})),function(e){e.AdSchedule="ad-schedule"}(t.ContentSourceExportNames||(t.ContentSourceExportNames={})),function(e){e.AssociatedAd="associated-ad"}(t.AdSourceExportNames||(t.AdSourceExportNames={}))},14809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},36921:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayPauseExportNames=void 0,function(e){e.TargetPlaybackStateAtom="target-playback-state-atom",e.TargetPlaybackState="target-playback-state"}(t.PlayPauseExportNames||(t.PlayPauseExportNames={}))},78443:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MediaElementReadyState=t.VideoElementStateExportNames=void 0,function(e){e.VideoElementState="video-element-state",e.MediaElementReadyState="media-element-ready-state",e.SeekRestriction="seek-restriction"}(t.VideoElementStateExportNames||(t.VideoElementStateExportNames={})),function(e){e[e.HaveNothing=HTMLMediaElement.HAVE_NOTHING]="HaveNothing",e[e.HaveMetadata=HTMLMediaElement.HAVE_METADATA]="HaveMetadata",e[e.HaveCurrentData=HTMLMediaElement.HAVE_CURRENT_DATA]="HaveCurrentData",e[e.HaveFutureData=HTMLMediaElement.HAVE_FUTURE_DATA]="HaveFutureData",e[e.HaveEnoughData=HTMLMediaElement.HAVE_ENOUGH_DATA]="HaveEnoughData"}(t.MediaElementReadyState||(t.MediaElementReadyState={}))},17031:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TargetVolumeState=void 0,t.TargetVolumeState="target-volume-state"},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},89523:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UiExportNames=void 0,function(e){e.UiState="ui-state"}(t.UiExportNames||(t.UiExportNames={}))},14832:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UiPackage=void 0;const r=a(97085),o=a(68668),n=a(60103),s=a(36618),i=a(1569),u=a(88575),c=a(67073),l=a(89523),d=a(29543);t.UiPackage=(0,r.createPackage)("ui-package",((e,t)=>{const a=t.registry.get(o.BundleExportNames.PlayerConfig).defaultContainer,r=d.DefaultUiConfig;(0,u.injectStyles)(),a.classList.add("bmpx-ui-container"),a.style.aspectRatio=r.aspectRatio;const p=(0,c.createUiElements)();a.appendChild(p.overlay);const m={overlay:p.overlay,container:a,seekbarTrack:p.seekbarTrack,seekbarProgress:p.seekbarProgress,seekbarThumb:p.seekbarThumb,seekbarContainer:p.seekbarContainer,currentTimeLabel:p.currentTimeLabel,durationLabel:p.durationLabel,playPauseButton:p.playPauseButton,bottomBar:p.bottomBar,volumeContainer:p.volumeContainer,volumeIcon:p.volumeIcon,volumeTrack:p.volumeTrack,volumeProgress:p.volumeProgress,volumeThumb:p.volumeThumb,config:r};t.registry.set(l.UiExportNames.UiState,m);const b=e.get("packages");b.add(i.BaseUiPackage),b.add(n.AdMarkersPackage),b.add(s.AdPlaybackPackage)}),[o.BundleExportNames.PlayerConfig]),t.default=t.UiPackage},29543:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultUiConfig=void 0,t.DefaultUiConfig={aspectRatio:"16/9",hideTimeout:3e3,seekbarColors:{content:"#fff",advertisement:"#ffc107"}}},60103:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdMarkersPackage=void 0;const r=a(97085),o=a(91270),n=a(99302),s=a(76954),i=a(14809),u=a(7269),c=a(89523);function l(e,t){for(const a of e.values())a.style.display=t?"":"none"}function d(e,t){const a=t.playback.duration.value;for(const[t,r]of e){const e=t.position(a);if(e===n.AdPositionNotYetKnown||!isFinite(a)||a<=0){r.style.display="none";continue}const o=e/a*100;r.style.left=`${o}%`,r.style.display=""}}const p=(0,o.createTaskClosure)((e=>["ad-marker-subscriber",(t,a)=>{const r=a.registry.get(c.UiExportNames.UiState),o=a.registry.get(u.SourceExportNames.SourceState),n=document.createElement("div");return n.className="bmpx-ui-ad-marker",r.seekbarTrack.appendChild(n),e.set(t,n),o.video.element?d(e,o):n.style.display="none",a.effects.loop(a.abortSignal).finally((()=>{n.remove(),e.delete(t)}))}])),m=(0,o.createTaskClosure)((e=>["ad-markers-video-update",(t,a)=>{const r=a.registry.get(u.SourceExportNames.SourceState);r.video.element?(l(e,!0),d(e,r)):l(e,!1)}])),b=(0,o.createTaskClosure)((e=>["ad-markers-duration-update",(t,a)=>{const r=a.registry.get(u.SourceExportNames.SourceState);r.video.element&&d(e,r)}]));t.AdMarkersPackage=(0,r.createPackage)("ad-markers-package",((e,t)=>{const{StateEffectFactory:a,EventListenerEffectFactory:r}=t.registry.get(i.CoreExportNames.CoreEffects),o=t.using(a,r),n=o.registry.get(s.ContentSourceExportNames.AdSchedule),c=o.registry.get(u.SourceExportNames.SourceState),{mapSubscribe:l,subscribeAndRun:d}=o.registry.get(i.CoreExportNames.Utils).State,g=new Map;l(o,n,p(g)),d(o,c.video,m(g)),d(o,c.playback.duration,b(g))}),[c.UiExportNames.UiState,s.ContentSourceExportNames.AdSchedule,u.SourceExportNames.SourceState,i.CoreExportNames.CoreEffects,i.CoreExportNames.Utils]),t.default=t.AdMarkersPackage},36618:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdPlaybackPackage=void 0;const r=a(97085),o=a(91270),n=a(76954),s=a(14809),i=a(7269),u=a(89523),c=a(82791),l=a(9621),d=(0,o.createTask)("ad-skip-click",((e,t)=>{e.stopPropagation();const a=t.registry.get(n.AdSourceExportNames.AssociatedAd);!0===a.isSkippable.value&&t.effects.state.dispatch(a.skip.trigger,void 0)})),p=(0,o.createTask)("ad-click-through",((e,t)=>{e.stopPropagation();const a=t.registry.get(i.SourceExportNames.SourceState).video.element;a&&a.dispatchEvent(new MouseEvent("click",{bubbles:!0}))})),m=(0,o.createTask)("ad-clicked-handler",((e,t)=>{const a=t.registry.get(n.AdSourceExportNames.AssociatedAd).clicked.value;a&&window.open(a,"_blank")})),b=(0,o.createTaskClosure)((e=>["ad-skippable-update",(t,a)=>{!0===a.registry.get(n.AdSourceExportNames.AssociatedAd).isSkippable.value?e.classList.remove("bmpx-ui-skip-disabled"):e.classList.add("bmpx-ui-skip-disabled")}])),g=(0,o.createTaskClosure)(((e,t,a)=>["ad-playback-video-activator",(r,o)=>{const c=o.registry.get(u.UiExportNames.UiState),l=o.registry.get(i.SourceExportNames.SourceState),m=o.registry.get(n.AdSourceExportNames.AssociatedAd);if(!l.video.element)return;isFinite(m.skipDelay.value)&&c.overlay.appendChild(e),c.overlay.insertBefore(t,c.overlay.firstChild),c.container.appendChild(a);const{subscribeAndRun:g}=o.registry.get(s.CoreExportNames.Utils).State,{events:f,loop:v}=o.effects;return f.subscribe(o,e,"click",d),f.subscribe(o,t,"click",p),g(o,m.isSkippable,b(e)),v(o.abortSignal).finally((()=>{e.remove(),t.remove(),a.remove()}))}]));t.AdPlaybackPackage=(0,r.createPackage)("ad-playback-package",((e,t)=>{const{StateEffectFactory:a,EventListenerEffectFactory:r}=t.registry.get(s.CoreExportNames.CoreEffects),o=t.using(a,r),u=o.registry.get(n.AdSourceExportNames.AssociatedAd),d=o.registry.get(i.SourceExportNames.SourceState),{subscribeAndRun:p,subscribeOnce:b}=o.registry.get(s.CoreExportNames.Utils).State,f=(0,l.createSkipButtonElement)(),v=(0,c.createClickThroughElement)(),x=document.createElement("div");x.className="bmpx-ui-ad-badge",x.textContent="Advertisement",p(o,d.video,g(f,v,x)),b(o,u.clicked,m)}),[u.UiExportNames.UiState,n.AdSourceExportNames.AssociatedAd,i.SourceExportNames.SourceState,s.CoreExportNames.CoreEffects,s.CoreExportNames.Utils]),t.default=t.AdPlaybackPackage},82791:(e,t)=>{function a(){const e=document.createElement("div");return e.className="bmpx-ui-click-through",e}Object.defineProperty(t,"__esModule",{value:!0}),t.createClickThroughElement=void 0,t.createClickThroughElement=a},9621:(e,t)=>{function a(){const e=document.createElement("div");return e.className="bmpx-ui-skip-button bmpx-ui-skip-disabled",e.textContent="Skip Ad",e}Object.defineProperty(t,"__esModule",{value:!0}),t.createSkipButtonElement=void 0,t.createSkipButtonElement=a},27395:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AutoHideForcedVisibilityClosure=t.AutoHideInteractionClosure=t.showOverlay=t.createAutoHideState=void 0;const r=a(91270),o=a(78443);function n(e,t){return{timer:void 0,forcedVisible:!1,overlay:e,timeout:t}}function s(e){e.overlay.classList.remove("bmpx-ui-hidden"),clearTimeout(e.timer),e.forcedVisible||(e.timer=setTimeout((()=>{e.overlay.classList.add("bmpx-ui-hidden")}),e.timeout))}t.createAutoHideState=n,t.showOverlay=s,t.AutoHideInteractionClosure=(0,r.createTaskClosure)((e=>["auto-hide-interaction",(t,a)=>{s(e)}])),t.AutoHideForcedVisibilityClosure=(0,r.createTaskClosure)((e=>["auto-hide-forced-visibility",(t,a)=>{const r=a.registry.get(o.VideoElementStateExportNames.VideoElementState).paused.value;e.forcedVisible=!0===r,r?(clearTimeout(e.timer),e.overlay.classList.remove("bmpx-ui-hidden")):s(e)}]))},1569:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseUiPackage=void 0;const r=a(97085),o=a(91270),n=a(14809),s=a(36921),i=a(78443),u=a(17031),c=a(7269),l=a(89523),d=a(27395),p=a(76693),m=a(53128),b=a(81622),g=(0,o.createTask)("ui-playhead-update",((e,t)=>{const a=t.registry.get(l.UiExportNames.UiState),r=t.registry.get(c.SourceExportNames.SourceState),o=r.playback.playhead.position,n=r.playback.duration.value;(0,p.updateSeekbarProgress)(a.seekbarProgress,a.seekbarThumb,o,n),(0,m.updateTimeDisplay)(a.currentTimeLabel,o)})),f=(0,o.createTask)("ui-duration-update",((e,t)=>{const a=t.registry.get(l.UiExportNames.UiState),r=t.registry.get(c.SourceExportNames.SourceState),o=r.playback.duration.value;(0,m.updateTimeDisplay)(a.durationLabel,o),(0,p.updateSeekbarProgress)(a.seekbarProgress,a.seekbarThumb,r.playback.playhead.position,o)})),v=(0,o.createTask)("ui-play-pause-icon",((e,t)=>{const a=t.registry.get(l.UiExportNames.UiState),r=t.registry.get(s.PlayPauseExportNames.TargetPlaybackStateAtom),o=t.registry.get(s.PlayPauseExportNames.TargetPlaybackState),n=r.value===o.Playing;a.playPauseButton.textContent=n?"❚❚":"▶"})),x=(0,o.createTask)("ui-play-pause-click",((e,t)=>{e.stopPropagation();const a=t.registry.get(s.PlayPauseExportNames.TargetPlaybackStateAtom),r=t.registry.get(s.PlayPauseExportNames.TargetPlaybackState),o=a.value===r.Playing?r.Paused:r.Playing;t.effects.state.dispatch(a.setValue,o)})),y=(0,o.createTask)("ui-volume-update",((e,t)=>{const a=t.registry.get(l.UiExportNames.UiState),r=t.registry.get(u.TargetVolumeState).volume.value;"number"==typeof r&&(0,b.updateVolumeProgress)(a.volumeProgress,a.volumeThumb,r)})),k=(0,o.createTask)("ui-muted-update",((e,t)=>{const a=t.registry.get(l.UiExportNames.UiState),r=t.registry.get(u.TargetVolumeState).muted.value;(0,b.updateVolumeIcon)(a.volumeIcon,r)})),S=(0,o.createTaskClosure)((e=>["ui-video-activator",(t,a)=>{const r=a.registry.get(l.UiExportNames.UiState),o=a.registry.get(c.SourceExportNames.SourceState),m=a.registry.get(s.PlayPauseExportNames.TargetPlaybackStateAtom),S=a.registry.get(i.VideoElementStateExportNames.VideoElementState),{ContentType:E}=a.registry.get(n.CoreExportNames.Constants),h=o.video.element;if(!h)return;const C=o.sourceConfig.contentType===E.Advertisement,P=o.playbackConfig.preventSeeking||C,N=C?r.config.seekbarColors.advertisement:r.config.seekbarColors.content;h.removeAttribute("controls"),h.after(r.overlay),r.seekbarProgress.style.background=N,r.seekbarThumb.style.background=N;const{subscribeAndRun:A}=a.registry.get(n.CoreExportNames.Utils).State,{events:T,loop:U}=a.effects,M=a.registry.get(u.TargetVolumeState);return P?r.seekbarContainer.classList.add("bmpx-ui-seekbar-disabled"):(r.seekbarContainer.classList.remove("bmpx-ui-seekbar-disabled"),(0,p.setupSeekBar)(a)),(0,b.setupVolumeSlider)(a),T.subscribe(a,r.playPauseButton,"click",x),A(a,o.playback.playhead,g),A(a,o.playback.duration,f),A(a,m,v),A(a,S.paused,(0,d.AutoHideForcedVisibilityClosure)(e)),A(a,M.volume,y),A(a,M.muted,k),U(a.abortSignal)}]));t.BaseUiPackage=(0,r.createPackage)("base-ui-package",((e,t)=>{const{StateEffectFactory:a,EventListenerEffectFactory:r}=t.registry.get(n.CoreExportNames.CoreEffects),o=t.using(a,r),s=o.registry.get(l.UiExportNames.UiState),i=o.registry.get(c.SourceExportNames.SourceState),{subscribeAndRun:u}=o.registry.get(n.CoreExportNames.Utils).State,p=s.config,m=(0,d.createAutoHideState)(s.overlay,p.hideTimeout),b=(0,d.AutoHideInteractionClosure)(m);o.effects.events.subscribe(o,s.container,"mousemove",b),o.effects.events.subscribe(o,s.container,"touchstart",b),o.effects.events.subscribe(o,s.container,"click",b),(0,d.showOverlay)(m),o.abortSignal.addEventListener("abort",(()=>clearTimeout(m.timer))),u(o,i.video,S(m))}),[l.UiExportNames.UiState,c.SourceExportNames.SourceState,s.PlayPauseExportNames.TargetPlaybackStateAtom,s.PlayPauseExportNames.TargetPlaybackState,i.VideoElementStateExportNames.VideoElementState,u.TargetVolumeState,n.CoreExportNames.CoreEffects,n.CoreExportNames.CoreStateAtoms,n.CoreExportNames.Utils,n.CoreExportNames.Constants]),t.default=t.BaseUiPackage},76693:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setupSeekBar=t.getSeekPosition=t.updateSeekbarProgress=void 0;const r=a(91270),o=a(14809),n=a(7269),s=a(89523);function i(e){return e instanceof MouseEvent}function u(e,t,a,r){if(!isFinite(r)||r<=0)return;const o=100*Math.max(0,Math.min(1,a/r))+"%";e.style.width=o,t.style.left=o}function c(e,t,a){const r=t.getBoundingClientRect();return Math.max(0,Math.min(1,(e.clientX-r.left)/r.width))*a}function l(e,t,a){const r=a.video.element;if(!r)return;const o=a.playback.duration.value;if(!isFinite(o)||o<=0)return;const n=c(e,t.seekbarContainer,o);u(t.seekbarProgress,t.seekbarThumb,n,o),r.currentTime=n}t.updateSeekbarProgress=u,t.getSeekPosition=c;const d=(0,r.createTask)("seekbar-mousemove",((e,t)=>{i(e)&&l(e,t.registry.get(s.UiExportNames.UiState),t.registry.get(n.SourceExportNames.SourceState))})),p=(0,r.createTaskClosure)((e=>["seekbar-mouseup",(t,a)=>{i(t)&&(l(t,a.registry.get(s.UiExportNames.UiState),a.registry.get(n.SourceExportNames.SourceState)),a.effects.state.dispatch(e.setValue,!1))}])),m=(0,r.createTaskClosure)((e=>["seekbar-mousedown",(t,a)=>{i(t)&&(t.preventDefault(),l(t,a.registry.get(s.UiExportNames.UiState),a.registry.get(n.SourceExportNames.SourceState)),a.effects.state.dispatch(e.setValue,!0))}])),b=(0,r.createTaskClosure)((e=>["seekbar-drag-active",(t,a)=>{if(!e.value)return;const{events:r,loop:o}=a.effects;return r.subscribe(a,document,"mousemove",d),r.subscribe(a,document,"mouseup",p(e)),o(a.abortSignal)}]));function g(e){const{createPrimitiveAtom:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms),a=e.registry.get(s.UiExportNames.UiState),{subscribeAndRun:r}=e.registry.get(o.CoreExportNames.Utils).State,n=t(e,!1);e.effects.events.subscribe(e,a.seekbarContainer,"mousedown",m(n)),r(e,n,b(n))}t.setupSeekBar=g},88575:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.injectStyles=void 0;const a="\n.bmpx-ui-container {\n position: relative;\n width: 100%;\n background: #000;\n overflow: hidden;\n}\n\n.bmpx-ui-container video {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: contain;\n display: block;\n}\n\n.bmpx-ui-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n transition: opacity 0.3s ease;\n}\n\n.bmpx-ui-overlay.bmpx-ui-hidden {\n opacity: 0;\n pointer-events: none;\n}\n\n.bmpx-ui-play-pause {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 64px;\n height: 64px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 50%;\n cursor: pointer;\n user-select: none;\n color: #fff;\n font-size: 24px;\n transition: background 0.2s ease;\n}\n\n.bmpx-ui-play-pause:hover {\n background: rgba(0, 0, 0, 0.7);\n}\n\n.bmpx-ui-bottom-bar {\n position: relative;\n display: flex;\n align-items: center;\n padding: 8px 12px;\n gap: 10px;\n background: rgba(0, 0, 0, 0.7);\n}\n\n.bmpx-ui-current-time,\n.bmpx-ui-duration {\n color: #fff;\n font-family: monospace;\n font-size: 13px;\n min-width: 40px;\n text-align: center;\n user-select: none;\n}\n\n.bmpx-ui-seekbar-container {\n flex: 1;\n display: flex;\n align-items: center;\n height: 20px;\n cursor: pointer;\n}\n\n.bmpx-ui-seekbar-container.bmpx-ui-seekbar-disabled {\n cursor: default;\n pointer-events: none;\n}\n\n.bmpx-ui-seekbar-track {\n position: relative;\n width: 100%;\n height: 4px;\n background: rgba(255, 255, 255, 0.3);\n border-radius: 2px;\n}\n\n.bmpx-ui-seekbar-container:hover .bmpx-ui-seekbar-track {\n height: 6px;\n}\n\n.bmpx-ui-seekbar-progress {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n background: #fff;\n border-radius: 2px;\n pointer-events: none;\n}\n\n.bmpx-ui-seekbar-thumb {\n position: absolute;\n top: 50%;\n width: 12px;\n height: 12px;\n background: #fff;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n pointer-events: none;\n opacity: 0;\n transition: opacity 0.1s ease;\n}\n\n.bmpx-ui-seekbar-container:hover .bmpx-ui-seekbar-thumb {\n opacity: 1;\n}\n\n.bmpx-ui-seekbar-disabled .bmpx-ui-seekbar-thumb {\n opacity: 0 !important;\n}\n\n.bmpx-ui-volume-container {\n display: flex;\n align-items: center;\n gap: 6px;\n width: 100px;\n height: 20px;\n cursor: pointer;\n flex-shrink: 0;\n}\n\n.bmpx-ui-volume-icon {\n font-size: 14px;\n line-height: 1;\n user-select: none;\n cursor: pointer;\n flex-shrink: 0;\n}\n\n.bmpx-ui-volume-track {\n position: relative;\n flex: 1;\n height: 4px;\n background: rgba(255, 255, 255, 0.3);\n border-radius: 2px;\n}\n\n.bmpx-ui-volume-container:hover .bmpx-ui-volume-track {\n height: 6px;\n}\n\n.bmpx-ui-volume-progress {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n background: #fff;\n border-radius: 2px;\n pointer-events: none;\n}\n\n.bmpx-ui-volume-thumb {\n position: absolute;\n top: 50%;\n left: 100%;\n width: 12px;\n height: 12px;\n background: #fff;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n pointer-events: none;\n opacity: 0;\n transition: opacity 0.1s ease;\n}\n\n.bmpx-ui-volume-container:hover .bmpx-ui-volume-thumb {\n opacity: 1;\n}\n\n.bmpx-ui-ad-marker {\n position: absolute;\n top: 0;\n width: 4px;\n height: 100%;\n background: #ffc107;\n border-radius: 1px;\n transform: translateX(-50%);\n pointer-events: none;\n}\n\n.bmpx-ui-skip-button {\n position: absolute;\n bottom: 60px;\n right: 12px;\n padding: 8px 16px;\n background: rgba(0, 0, 0, 0.7);\n color: #fff;\n border: 1px solid rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n font-size: 14px;\n cursor: pointer;\n user-select: none;\n transition: opacity 0.2s ease;\n font-family: sans-serif;\n}\n\n.bmpx-ui-skip-button:hover:not(.bmpx-ui-skip-disabled) {\n background: rgba(0, 0, 0, 0.9);\n}\n\n.bmpx-ui-skip-disabled {\n opacity: 0.5;\n cursor: default;\n}\n\n.bmpx-ui-click-through {\n position: absolute;\n inset: 0;\n cursor: pointer;\n}\n\n.bmpx-ui-ad-badge {\n position: absolute;\n top: 12px;\n left: 12px;\n padding: 4px 10px;\n background: rgba(0, 0, 0, 0.7);\n color: #ffc107;\n font-family: sans-serif;\n font-size: 12px;\n font-weight: 600;\n letter-spacing: 0.5px;\n border-radius: 3px;\n user-select: none;\n pointer-events: none;\n}\n";let r=!1;function o(){if(r)return;r=!0;const e=document.createElement("style");e.textContent=a,document.head.appendChild(e)}t.injectStyles=o},53128:(e,t)=>{function a(e){if(!isFinite(e)||e<0)return"0:00";const t=Math.floor(e),a=Math.floor(t/3600),r=Math.floor(t%3600/60),o=t%60;return a>0?`${a}:${String(r).padStart(2,"0")}:${String(o).padStart(2,"0")}`:`${r}:${String(o).padStart(2,"0")}`}function r(e,t){const r=a(t);e.textContent!==r&&(e.textContent=r)}Object.defineProperty(t,"__esModule",{value:!0}),t.updateTimeDisplay=void 0,t.updateTimeDisplay=r},67073:(e,t)=>{function a(e,t){const a=document.createElement(e);return a.className=t,a}function r(){const e=a("div","bmpx-ui-overlay"),t=a("div","bmpx-ui-play-pause"),r=a("div","bmpx-ui-bottom-bar"),o=a("span","bmpx-ui-current-time");o.textContent="0:00";const n=a("div","bmpx-ui-seekbar-container"),s=a("div","bmpx-ui-seekbar-track"),i=a("div","bmpx-ui-seekbar-progress"),u=a("div","bmpx-ui-seekbar-thumb"),c=a("span","bmpx-ui-duration");c.textContent="0:00";const l=a("div","bmpx-ui-volume-container"),d=a("span","bmpx-ui-volume-icon");d.textContent="🔊";const p=a("div","bmpx-ui-volume-track"),m=a("div","bmpx-ui-volume-progress"),b=a("div","bmpx-ui-volume-thumb");return s.appendChild(i),s.appendChild(u),n.appendChild(s),p.appendChild(m),p.appendChild(b),l.appendChild(p),r.appendChild(o),r.appendChild(n),r.appendChild(c),r.appendChild(d),r.appendChild(l),e.appendChild(t),e.appendChild(r),{overlay:e,playPauseButton:t,bottomBar:r,currentTimeLabel:o,durationLabel:c,seekbarContainer:n,seekbarTrack:s,seekbarProgress:i,seekbarThumb:u,volumeContainer:l,volumeIcon:d,volumeTrack:p,volumeProgress:m,volumeThumb:b}}Object.defineProperty(t,"__esModule",{value:!0}),t.createUiElements=void 0,t.createUiElements=r},81622:(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.setupVolumeSlider=t.updateVolumeIcon=t.updateVolumeProgress=void 0;const r=a(91270),o=a(14809),n=a(17031),s=a(89523);function i(e){return e instanceof MouseEvent}function u(e,t,a){const r=100*Math.max(0,Math.min(1,a))+"%";e.style.width=r,t.style.left=r}function c(e,t){const a=t.getBoundingClientRect();return Math.max(0,Math.min(1,(e.clientX-a.left)/a.width))}function l(e,t,a){const r=c(e,t.volumeTrack),o=a.registry.get(n.TargetVolumeState);u(t.volumeProgress,t.volumeThumb,r),a.effects.state.dispatch(o.volume.setValue,r)}function d(e,t){e.textContent=t?"🔇":"🔊"}t.updateVolumeProgress=u,t.updateVolumeIcon=d;const p=(0,r.createTask)("volume-icon-click",((e,t)=>{e.preventDefault(),e.stopPropagation();const a=t.registry.get(n.TargetVolumeState),r=!a.muted.value;t.effects.state.dispatch(a.muted.setValue,r)})),m=(0,r.createTask)("volume-mousemove",((e,t)=>{i(e)&&l(e,t.registry.get(s.UiExportNames.UiState),t)})),b=(0,r.createTaskClosure)((e=>["volume-mouseup",(t,a)=>{i(t)&&(l(t,a.registry.get(s.UiExportNames.UiState),a),a.effects.state.dispatch(e.setValue,!1))}])),g=(0,r.createTaskClosure)((e=>["volume-mousedown",(t,a)=>{i(t)&&(t.preventDefault(),t.stopPropagation(),l(t,a.registry.get(s.UiExportNames.UiState),a),a.effects.state.dispatch(e.setValue,!0))}])),f=(0,r.createTaskClosure)((e=>["volume-drag-active",(t,a)=>{if(!e.value)return;const{events:r,loop:o}=a.effects;return r.subscribe(a,document,"mousemove",m),r.subscribe(a,document,"mouseup",b(e)),o(a.abortSignal)}]));function v(e){const{createPrimitiveAtom:t}=e.registry.get(o.CoreExportNames.CoreStateAtoms),a=e.registry.get(s.UiExportNames.UiState),{subscribeAndRun:r}=e.registry.get(o.CoreExportNames.Utils).State,n=t(e,!1);e.effects.events.subscribe(e,a.volumeIcon,"click",p),e.effects.events.subscribe(e,a.volumeContainer,"mousedown",g(n)),r(e,n,f(n))}t.setupVolumeSlider=v}},t={};function a(r){var o=t[r];if(void 0!==o)return o.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,a),n.exports}return a(14832)})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.2.0-beta.
|
|
8
|
+
* Bitmovin Player X Version 10.2.0-beta.6
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["view-mode"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["view-mode"]=t())}(self,(()=>(()=>{"use strict";var e={97085:(e,t)=>{function o(e,t,o){const r=t;return r._name=e,{onAdd:r,dependencies:o}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=o},91270:(e,t)=>{function o(e,t){const o=t;return o._name=e,o}function r(e){return(...t)=>{const[r,n]=e(...t);return o(r,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=o,t.createTaskClosure=r,t.getTaskName=n},68668:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BundleExportNames=void 0,function(e){e.Logger="logger",e.PlayerConfig="player-config"}(t.BundleExportNames||(t.BundleExportNames={}))},14809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},21010:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcesApiExportNames=t.SourcesApiEvent=void 0,function(e){e.SourceAdded="source-added",e.SourceRemoved="source-removed",e.VideoAttached="video-attached",e.VideoDetached="video-detached",e.SourceError="source-error"}(t.SourcesApiEvent||(t.SourcesApiEvent={})),function(e){e.SourceApiManager="source-api-manager",e.VideoElementUtils="video-element-utils",e.SourceEventBus="source-event-bus",e.SourceApiComponentMap="source-api-component-map",e.SourceRemovedError="source-removed-error"}(t.SourcesApiExportNames||(t.SourcesApiExportNames={}))},71458:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerSubscriberTaskClosure=void 0;const r=o(91270),n=o(6481),i=o(11107);t.ContainerSubscriberTaskClosure=(0,r.createTaskClosure)((e=>{const t=(0,i.ViewModeChangedTaskClosure)(e);return["container-subscriber",(o,r)=>{const i=o.value;return i&&r.effects.events.subscribe(r,i,"fullscreenchange",t),r.effects.state.dispatch(e.setViewMode,(0,n.getViewMode)(r)),r.effects.loop(r.abortSignal)}]}))},24171:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ViewModePackageExportNames=t.ViewMode=void 0,function(e){e[e.Inline=0]="Inline",e[e.Fullscreen=1]="Fullscreen",e[e.PictureInPicture=2]="PictureInPicture"}(t.ViewMode||(t.ViewMode={})),function(e){e.ViewModeState="view-mode-state"}(t.ViewModePackageExportNames||(t.ViewModePackageExportNames={}))},89109:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VideoSubscriberTaskClosure=void 0;const r=o(91270),n=o(6481),i=o(11107);t.VideoSubscriberTaskClosure=(0,r.createTaskClosure)((e=>{const t=(0,i.ViewModeChangedTaskClosure)(e);return["video-element-subscriber",(o,r)=>{const i=o.element;return i&&(r.effects.events.subscribe(r,i,"enterpictureinpicture",t),r.effects.events.subscribe(r,i,"leavepictureinpicture",t)),r.effects.state.dispatch(e.setViewMode,(0,n.getViewMode)(r)),r.effects.loop(r.abortSignal)}]}))},63666:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createViewModeAtom=void 0;const r=o(24171);function n(e,t){return e.viewMode!==t&&(e.viewMode=t,!0)}function i(e,t=r.ViewMode.Inline){return e.effects.state.create({viewMode:t},{setViewMode:n})}t.createViewModeAtom=i},11107:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ViewModeChangedTaskClosure=void 0;const r=o(91270),n=o(6481);t.ViewModeChangedTaskClosure=(0,r.createTaskClosure)((e=>["view-mode-change",(t,o)=>o.effects.state.dispatch(e.setViewMode,(0,n.getViewMode)(o))]))},6481:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getViewMode=void 0;const r=o(7269),n=o(24171);function i(e){const t=e.registry.get(r.SourceExportNames.SourceState),o=t.container.value,i=t.video.element;return i&&document.pictureInPictureElement===i?n.ViewMode.PictureInPicture:document.fullscreenElement===o||i&&document.fullscreenElement===i?n.ViewMode.Fullscreen:n.ViewMode.Inline}t.getViewMode=i},30937:(e,t,o)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getViewModeApi=void 0;const r=o(7269),n=o(82038),i=o(24171);function c(e){var t;return"function"==typeof(null!==(t=e.registry.get(r.SourceExportNames.SourceState).video.element)&&void 0!==t?t:document.createElement("video")).requestPictureInPicture}function s(e){const t=e.registry.get(r.SourceExportNames.SourceState).container.value;return t&&"function"==typeof t.requestFullscreen}function u(e,t){switch(t){case i.ViewMode.Fullscreen:return s(e);case i.ViewMode.PictureInPicture:return c(e);case i.ViewMode.Inline:return!0;default:return!1}}function a(e,t){const o={isAvailable:t=>u(e,t),transitionTo:o=>{(0,n.transitionToViewMode)(e,t,o).catch((()=>{}))}};return Object.defineProperty(o,"currentMode",{get:()=>t.viewMode}),o}t.getViewModeApi=a},82038:function(e,t,o){var r=this&&this.__awaiter||function(e,t,o,r){function n(e){return e instanceof o?e:new o((function(t){t(e)}))}return new(o||(o=Promise))((function(o,i){function c(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?o(e.value):n(e.value).then(c,s)}u((r=r.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.transitionToViewMode=void 0;const n=o(68668),i=o(7269),c=o(24171);function s(e,{viewMode:t},o){return r(this,void 0,void 0,(function*(){if(t===o)return Promise.resolve();const r=e.registry.get(i.SourceExportNames.SourceState),s=r.container.value,u=r.video.element,a=e.registry.get(n.BundleExportNames.Logger);try{o===c.ViewMode.Fullscreen&&s?yield s.requestFullscreen():o===c.ViewMode.Inline?(document.fullscreenElement===s&&(yield document.exitFullscreen()),document.pictureInPictureElement===u&&(yield document.exitPictureInPicture())):o===c.ViewMode.PictureInPicture&&u&&(yield u.requestPictureInPicture())}catch(e){a.warn(`Failed to transition to ViewMode (${t} to ${o})`,e)}}))}t.transitionToViewMode=s}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,o),i.exports}var r={};return(()=>{var e=r;Object.defineProperty(e,"__esModule",{value:!0});const t=o(97085),n=o(91270),i=o(68668),c=o(14809),s=o(7269),u=o(21010),a=o(71458),d=o(6481),l=o(30937),f=o(24171),p=o(89109),v=o(63666),m=()=>{},M=new Error("Execution was aborted due to a state change"),g=e=>e===M,w=(0,t.createPackage)("view-mode-package",((e,t)=>{const{EventListenerEffectFactory:o,StateEffectFactory:r}=t.registry.get(c.CoreExportNames.CoreEffects),n=t.using(r,o),i=(0,v.createViewModeAtom)(n,(0,d.getViewMode)(n)),a=n.registry.get(u.SourcesApiExportNames.SourceApiManager),p=n.registry.get(s.SourceExportNames.SourceState);a.set("viewMode",(0,l.getViewModeApi)(n,i)),n.registry.set(f.ViewModePackageExportNames.ViewModeState,i),S(n,p,i),b(n,p,i)}),[i.BundleExportNames.Logger,c.CoreExportNames.CoreEffects,s.SourceExportNames.SourceState,u.SourcesApiExportNames.SourceApiManager]);function b(e,t,o){const r=(0,p.VideoSubscriberTaskClosure)(o),i=(0,n.createTask)("video-state-change",((e,t)=>c.abort(M))),c=e.fork(r,t.video,g);c.catch(m),e.effects.state.subscribe(e,t.video,i),e.effects.state.subscribe(e,t.video,r)}function S(e,t,o){const r=(0,a.ContainerSubscriberTaskClosure)(o),i=(0,n.createTask)("container-state-change",((e,t)=>c.abort(M))),c=e.fork(r,t.container,g);c.catch(m),e.effects.state.subscribe(e,t.container,i),e.effects.state.subscribe(e,t.container,r)}e.default=w})(),r})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.2.0-beta.
|
|
8
|
+
* Bitmovin Player X Version 10.2.0-beta.6
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["web-vtt"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["web-vtt"]=t())}(self,(()=>(()=>{var e={33576:e=>{!function(t,r){e.exports=r()}(self,(()=>(()=>{"use strict";var e={61:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.WebVttParser=void 0;var i=r(266);function a(e,t,r){return(t?o(t,"cue-past"):"")+e+(r?o(r,"cue-future"):"")}function o(e,t){return"<c.".concat(t,">").concat(e,"</c>")}t.WebVttParser={parse:function(e,t){void 0===t&&(t=0);var r=(e=e.replace(/\r\n/gm,"\n")).split(/\n{2,}|^[WEBVTT\n+]?X-TIMESTAMP-MAP=.*\n+|^WEBVTT\n+/m).filter((function(e){return null!=e&&""!==e})).map((function(e){return e.split("\n")})),o=function(e){var t=/X-TIMESTAMP-MAP=(.*)\n/.exec(e);if(null==(null==t?void 0:t[1]))return 0;var r=t[0],n=/LOCAL:((?:(\d{1,}):)?(\d{2}):(\d{2})\.(\d{3}))/m.exec(r),a=/MPEGTS:(\d+)/m.exec(r),o=0;if(null==n?void 0:n[1]){var s=i.parseTime(n[1]);null!=s&&(o=s)}var u=0;return null!=a&&(u=Number(a[1])),u/9e4-o}(e),s=function(e){for(var t=[],r=[],n=0,a=e;n<a.length;n++){var o=a[n],s=o[0];/^STYLE/.test(s.trim())&&r.push.apply(r,i.parseStyles(o)),/^region:?/i.test(s.trim())&&t.push.apply(t,i.parseRegions(o))}return{regions:t,styles:r}}(r);return function(e,t,r){var o=[],s=0,u=t.regions,c=function(e){var t={},r=[];return e.forEach((function(e){null==e.identifier&&(t=n(n({},t),e.style));var i=r.findIndex((function(t){return t.identifier===e.identifier}));-1!==i?r[i]={identifier:e.identifier,style:n(n({},r[i].style),e.style)}:r.push(e)})),i.getPlaceholderVttStyleProperties().forEach((function(e){r.find((function(t){return t.identifier===e.identifier}))||r.push(e)})),{globalStyle:t,contentStyles:r}}(t.styles),l=c.globalStyle,f=c.contentStyles;return e.filter((function(e){return t=e[0],r=/^NOTE/.test(t),n=/^STYLE/.test(t),i=/^region:?/i.test(t),!r&&!n&&!i;var t,r,n,i})).forEach((function(e){var t=void 0;e[0].includes("--\x3e")||(t=e[0].trim(),e.splice(0,1));var c,p=function(e,t){var r=Number(e);return null==e||isNaN(r)?t+1:r}(t,s);if(s=p,null!=(c=e[0])&&""!==c&&c.includes("--\x3e")){var d=i.parseOptions(e[0],u);d.id=t;var v=function(e,t,r){var n=/(<\d+:\d{2}:\d{2}[.,]\d{3}>)/g,o=[],s=function(e){var t=e[0].split(/[ \t]+-->[ \t]+/);return{start:i.parseTime(t[0]),end:i.parseTime(t[1])}}(e),u=s.start,c=s.end;if(null!==u&&null!==c){for(var l,f=function(e){return e.slice(1).join("\n").trim()}(e),p=f.split(n),d="",v=f.replace(n,""),m=u;p.length>0;){var b=p.shift(),g=p.shift(),y=g?i.parseTime(g):c,h=null!=y?y:c;if(m!==h){var S=a(b,d,v=v.substring(b.length));d+=b;var x=i.parseContents(S,r,t,(l=void 0,l="ReactNative"===window.navigator.product,!(window&&window.document&&"function"==typeof window.document.createElement)||l));o.push({updateTime:m,html:x}),m=h}}var P=o.shift();if(P)return{start:u,end:c,html:P.html,subCues:o}}}(e,f,r.base);if(void 0!==v){var m=function(e,t,r){var i=e.filter((function(e){return e.identifier==="#"+r})).reduce((function(e,t){return n(n({},e),t.style)}),{});return n(n({},t),i)}(f,l,t),b=function(e,t,r,a,o){var s,u,c={i:t,start:e.start+a.base,end:e.end+a.base,text:(null===(s=e.html)||void 0===s?void 0:s.textContent)||(null===(u=e.html)||void 0===u?void 0:u.innerText)||"",html:i.stringifyCueHtml(e.html),vtt:n({},o),updates:e.subCues.map((function(e){return{updateTime:e.updateTime+a.base,html:i.stringifyCueHtml(e.html)}}))},l=i.stringifyCssProperties(r);return 0!==a.vtt&&(c.offset=a.vtt),l&&(c.layout=l),c}(v,p,m,r,d);o.push(b)}}})),o}(r,s,{vtt:o,base:t})}},t.default=t.WebVttParser},156:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WebVttParser=void 0;var n=r(505),i=r(61);t.WebVttParser={parse:i.WebVttParser.parse,extractVttProperties:n.extractVttProperties},t.default=t.WebVttParser},853:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},n.apply(this,arguments)},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,i=0,a=t.length;i<a;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:!0}),t.parseContents=function(e,t,r,n){var i=function(e){var t;if(e){var r=(a||(a=new DOMParser),a).parseFromString("<span></span>","text/html");return(null===(t=r.body)||void 0===t?void 0:t.firstChild)||r.firstChild}return document.createElement("span")}(n);return v({input:e,root:i,current:i,tagStack:[],offset:t,styles:r})};var a,o=r(839),s=r(505),u={"&":"&","<":"<",">":">","‎":"","‏":""," ":" "},c={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},l={v:"title",lang:"lang"},f={rt:"ruby"},p={"cue-future":":future","cue-past":":past"},d=2;function v(e){var t=function(e){if(!e)return null;var t=/^([^<]*)(<[^>]+>?)?/.exec(e);if(!t)return null;var r=t[1],n=t[2];return r||n}(e.input);return null==t?e.root:(e.input=e.input.substring(t.length),function(e,t){if("<"!==e[0]){var r=t.current.ownerDocument.createTextNode((a=e,Object.keys(u).forEach((function(e){a=a.replace(new RegExp(e,"g"),u[e])})),a));return t.current.appendChild(r),v(t)}var a,m,b;if("/"===e[1])return m=e,(b=t.tagStack).length>0&&b[b.length-1]===m.substring(d).replace(">","")&&(t.tagStack.pop(),t.current=t.current.parentNode),v(t);var g=(0,s.parseTime)(e.substring(1,e.length-1));if(null!=g){var y=t.current.ownerDocument.createComment("time: ".concat(g+t.offset));return t.current.appendChild(y),v(t)}var h=/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/.exec(e);if(!h)return v(t);var S,x,P=h[0],N=h[1],C=h[2],T=h[3],E=function(e,t,r){var n=c[e];if(!n)return null;var i=r.createElement(n),a=l[e];return a&&t&&(i[a]=t.trim()),i}(N,T,t.current.ownerDocument);return E?(S=t.current,f[(x=E).localName]&&f[x.localName]!==S.localName||(function(e,t,r){var a=function(e,t){var r,a,u,c,l;e=i(i([],e,!0),o.webVttDefaultClassStyles,!0);var f="",d="",v={};if(t.type&&"v"!==t.type&&(v=null!==(a=null===(r=e.find((function(e){return e.identifier===t.type})))||void 0===r?void 0:r.style)&&void 0!==a?a:v),t.contents){var m=t.contents.substring(1).split(".").map((function(e){return p[e]||".".concat(e)})),b=[];m.forEach((function(t){var r,n=null===(r=e.find((function(e){return e.identifier===t})))||void 0===r?void 0:r.style;n&&b.push(n)})),v=b.reduce((function(e,t){return n(n({},e),t)}),{}),f=t.contents.split(".").join(" ").trim()}return"v"===t.type&&t.annotation&&(d=t.annotation.substring(1),v=null!==(c=null===(u=e.find((function(e){return e.identifier==="".concat(t.type,'[voice="').concat(d,'"]')})))||void 0===u?void 0:u.style)&&void 0!==c?c:v),{className:f,title:d,styleString:null!==(l=(0,s.stringifyCssProperties)(v))&&void 0!==l?l:""}}(t,r),u=a.className,c=a.title,l=a.styleString;c&&(e.title=c),u&&(e.className=u),l&&e.setAttribute("style",l)}(E,t.styles,{type:N,contents:C,annotation:T}),t.tagStack.push(P[1]),t.current.appendChild(E),t.current=E),v(t)):v(t)}(t,e))}},839:function(e,t){var r=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,i=0,a=t.length;i<a;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:!0}),t.webVttDefaultClassStyles=void 0;var n=["white","lime","cyan","red","yellow","magenta","blue","black"];t.webVttDefaultClassStyles=r(r([],n.map((function(e){return{identifier:".".concat(e),style:{color:e}}})),!0),n.map((function(e){return{identifier:".bg_".concat(e),style:{background:e}}})),!0)},499:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parseOptions=function(e,t){var r=e.split(/\s/),n=(0,i.getDefaultVttProperties)();return r.forEach((function(e){a(e.split(":"),t,n)})),function(e){var t=(0,i.getDefaultVttProperties)();null!=e.region&&(e.vertical!==t.vertical||e.size!==t.size||e.line!==t.line)&&delete e.region}(n),n},t.setOptionProperty=a;var n=r(358),i=r(505);function a(e,t,r){var a=e[0],s=e[1];switch(a){case"region":!function(e,t,r){var n=t.find((function(t){return t.id===e}));null!=n&&(r.region=n)}(s,t,r);break;case"vertical":!function(e,t){var r=(0,i.ensureArray)(/^(lr|rl)$/.exec(e))[1];null!=r&&(t.vertical=r)}(s,r);break;case"align":!function(e,t){var r=(0,i.ensureArray)(/^(start|middle|center|end|left|right)$/.exec(e))[1];null!=r&&(t.align=r),t.positionAlign=o(void 0,t)}(s,r);break;case"size":!function(e,t){var r=(0,i.ensureArray)(/^([\d.]+)%$/.exec(e))[1];null!=r&&(t.size=Number(r))}(s,r);break;case"position":!function(e,t){var r=(0,i.ensureArray)(/^([\d.]+|auto)%?(?:,(line-left|line-right|center))?$/.exec(e)),n=r[1],a=r[2];"auto"===n?t.position="auto":void 0!==n&&(t.position=Number(n)),t.positionAlign=o(a,t)}(s,r);break;case"line":!function(e,t){var r=(0,i.ensureArray)(/^(-?[\d.]+|auto)(%)?(?:,(start|end|center|auto))?$/.exec(e)),a=r[1],o=r[2],s=r[3],u="%"===o;"auto"===a?t.line="auto":u?t.line="".concat(a,"%"):null!=e&&(t.line=Number(a)),null!=s&&(t.lineAlign=s),t.snapToLines=(0,n.isNumber)(t.line)}(s,r)}}function o(e,t){if(null!=e)return e;switch(t.align){case"start":case"left":return"line-left";case"end":case"right":return"line-right";default:return"center"}}},505:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getDefaultVttProperties=function(){return{vertical:"",align:"center",size:100,line:"auto",lineAlign:"start",position:"auto",positionAlign:"center",snapToLines:!1}},t.extractVttProperties=function(e){var t={vertical:"",align:"center",size:100,line:"auto",lineAlign:"start",position:"auto",positionAlign:"center",snapToLines:!1},r={id:null,width:100,lines:3,regionAnchorX:0,regionAnchorY:100,viewportAnchorX:0,viewportAnchorY:100,scroll:""};return Object.keys(t).forEach((function(a){return(0,i.setOptionProperty)(function(e,t,r){var i=[e,t[e]?"".concat(t[e]):r[e]],a="line"===e;return("position"===e&&(0,n.isNumber)(t[e])||a&&!1===t.snapToLines)&&(i[1]+="%"),i}(a,e,t),[r],t)})),t},t.getDefaultVttRegionProperties=function(){return{id:null,width:100,lines:3,regionAnchorX:0,regionAnchorY:100,viewportAnchorX:0,viewportAnchorY:100,scroll:""}},t.parseTime=function(e){var t=/(?:(\d{1,}):)?(\d{2}):(\d{2})[.,](\d{3})/g.exec(e);if(null==t)return null;var r=t[1],n=t[2],i=t[3],a=t[4];return Number(a)/1e3+Number(i)+60*Number(n)+3600*(Number(r)||0)},t.ensureArray=function(e){return Array.isArray(e)?e:[]},t.stringifyCssProperties=function(e){return e?Object.entries(e).map((function(e){return"".concat(e[0],":").concat(e[1],";")})).join(""):null},t.stringifyCueHtml=function(e){return function(e){return e.replace(/(\r\n|\r|\n)/g,"<br />")}((null==e?void 0:e.outerHTML)||"")};var n=r(358),i=r(499)},627:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parseRegions=function(e){for(var t=[],r=0,n=e;r<n.length;r++){var o=n[r];if(o=o.trim(),/^REGION$/i.test(o)){t.push(a(e.slice(1),":"));break}/^Region:/i.test(o)&&t.push(i(o))}return t};var n=r(505);function i(e){return a(e.split(/[ \t]+/).slice(1),"=")}function a(e,t){var r=(0,n.getDefaultVttRegionProperties)();return e.forEach((function(e){!function(e,t){var r=e[0],i=e[1];switch(r){case"id":!function(e,t){null!=e&&(t.id=e)}(i,t);break;case"width":!function(e,t){var r=(0,n.ensureArray)(/^(\d{1,2}|100)%$/.exec(e))[1];null!=r&&(t.width=Number(r))}(i,t);break;case"lines":!function(e,t){var r=(0,n.ensureArray)(/^(\d+)$/.exec(e))[1];null!=r&&(t.lines=Number(r))}(i,t);break;case"regionanchor":!function(e,t){var r=(0,n.ensureArray)(/^(\d{1,2}|100)%,(\d{1,2}|100)%$/.exec(e)),i=r[1],a=r[2];null!=i&&(t.regionAnchorX=Number(i)),null!=a&&(t.regionAnchorY=Number(a))}(i,t);break;case"viewportanchor":!function(e,t){var r=(0,n.ensureArray)(/^(\d{1,2}|100)%,(\d{1,2}|100)%$/.exec(e)),i=r[1],a=r[2];null!=i&&(t.viewportAnchorX=Number(i)),null!=a&&(t.viewportAnchorY=Number(a))}(i,t);break;case"scroll":!function(e,t){var r=(0,n.ensureArray)(/^(up)$/.exec(e))[1];null!=r&&(t.scroll=r)}(i,t)}}(e.split(t),r)})),r}},393:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parseStyles=function(e){var t=[],r=/::cue(\((.+)\))?(?= |{)/,n=/([a-zA-Z0-9-]+):(.+?(?=;|}|$))/g,i=r.exec(e[1]);if(!i)return t;for(var a=1;a<e.length;a++){for(var o=r.exec(e[a]),s=null!==o,u=(i=s?o:i)[2],c={},l=n.exec(e[a]);null!==l;){var f=l[1],p=l[2];c[f]=p.trim(),l=n.exec(e[a])}(s||Object.keys(c).length>0)&&t.push({identifier:u,style:c})}return t},t.getPlaceholderVttStyleProperties=function(){return[{identifier:":future",style:{visibility:"hidden"}}]}},266:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(853),t),i(r(499),t),i(r(505),t),i(r(627),t),i(r(393),t)},358:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isNumber=void 0,t.isNumber=function(e){return"number"==typeof e}}},t={};return function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}(156)})()))},97085:(e,t)=>{"use strict";function r(e,t,r){const n=t;return n._name=e,{onAdd:n,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},91270:(e,t)=>{"use strict";function r(e,t){const r=t;return r._name=e,r}function n(e){return(...t)=>{const[n,i]=e(...t);return r(n,i)}}function i(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=n,t.getTaskName=i},14809:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},1146:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataExportNames=void 0,function(e){e.StreamTimeline="stream-timeline"}(t.DataExportNames||(t.DataExportNames={}))},7269:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},27134:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamDataStructureSelectionGroups=void 0,t.StreamDataStructureSelectionGroups="stream-data-structure-selection-groups"},62411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SubtitleBaseExportNames=void 0,function(e){e.SubtitleCueMapAtom="subtitle-cue-map-atom",e.CreateSubtitleCueAtom="create-subtitle-cue-map-atom",e.SubtitleBufferClearingTask="subtitle-buffer-clearing-task"}(t.SubtitleBaseExportNames||(t.SubtitleBaseExportNames={}))},91043:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){function i(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,a){function o(e){try{u(n.next(e))}catch(e){a(e)}}function s(e){try{u(n.throw(e))}catch(e){a(e)}}function u(e){e.done?r(e.value):i(e.value).then(o,s)}u((n=n.apply(e,t||[])).next())}))},i=this&&this.__asyncValues||function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,a){i(n,a,(t=e[r](t)).done,t.value)}))}}function i(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}};Object.defineProperty(t,"__esModule",{value:!0}),t.ParseAndSetSegmentCuesTask=void 0;const a=r(91270),o=r(14809),s=r(62411),u=r(68465);function c(e,t){return 0===e.entries().length?t:t.filter((t=>{const r=e.get(t);for(const e of r)if(e.html===t.html&&e.start===t.start&&e.end===t.end)return!1;return!0}))}t.ParseAndSetSegmentCuesTask=(0,a.createTask)("webvtt-segment-processing",(({segment:e,selectionGroup:t},r)=>n(void 0,void 0,void 0,(function*(){const n=r.registry.get(s.SubtitleBaseExportNames.SubtitleCueMapAtom),i=r.registry.get(u.WebVttExportNames.WebVttParseTask),a=n.get(t);if(!a)throw new Error(`Subtitle cue timeline not found for ${t.mediaId}`);const o=yield r.fork(l,e),f=c(a,yield r.fork(i,o));r.effects.state.dispatch(a.add,...f),r.effects.state.dispatch(n.add,t,a)}))));const l=(0,a.createTask)("get-segment-vtt-data",((e,t)=>n(void 0,void 0,void 0,(function*(){var r,n,a,s;const{merge:u}=t.registry.get(o.CoreExportNames.Utils).TypedArrays,c=[];try{for(var l,f=!0,p=i(e.data);!(r=(l=yield p.next()).done);){s=l.value,f=!1;try{const e=s;c.push(e)}finally{f=!0}}}catch(e){n={error:e}}finally{try{f||r||!(a=p.return)||(yield a.call(p))}finally{if(n)throw n.error}}const d=u(c);return new TextDecoder("UTF-8").decode(d)}))))},53255:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamTimelineSubscribeTask=void 0;const n=r(91270),i=r(14809),a=r(27134),o=r(62411),s=r(91043);t.StreamTimelineSubscribeTask=(0,n.createTask)("stream-timeline-subscribe",((e,t)=>{const{mapSubscribe:r,subscribeAndRun:n}=t.registry.get(i.CoreExportNames.Utils).State;return r(t,e.streamSequenceMap,c),n(t,e.streamSequenceMap,u),t.effects.loop(t.abortSignal)}));const u=(0,n.createTask)("segment-cache-clear-task",((e,t)=>{const r=t.registry.get(o.SubtitleBaseExportNames.SubtitleCueMapAtom),n=[],i=t.effects.store.subtitleSegmentCache,s=Array.from(e.entries()),{isSubtitleSelectionGroup:u}=t.registry.get(a.StreamDataStructureSelectionGroups);s.forEach((([e])=>{u(e)&&n.push(e)}));for(const e of i.keys())if(!n.includes(e)){const n=r.get(e);n&&(t.effects.state.dispatch(n.clear),t.effects.state.dispatch(r.remove,e)),i.delete(e)}})),c=(0,n.createTask)("stream-sequence-map-subscribe",(([e,t],r)=>{const n=r.registry.get(o.SubtitleBaseExportNames.SubtitleCueMapAtom),{isSubtitleSelectionGroup:s}=r.registry.get(a.StreamDataStructureSelectionGroups),{createTimelineAtom:u}=r.registry.get(i.CoreExportNames.CoreStateAtoms),{subscribeAndRun:c}=r.registry.get(i.CoreExportNames.Utils).State;if(s(e)){n.has(e)||r.effects.state.dispatch(n.add,e,u(r));const i=e.tracks[0];if(i){c(r,i.formatType,l(e,t))}}return r.effects.loop(r.abortSignal)})),l=(0,n.createTaskClosure)(((e,t)=>["track-format-type-subscribe",(r,n)=>{const a=n.registry.get(i.CoreExportNames.Constants),{subscribeAndRun:o}=n.registry.get(i.CoreExportNames.Utils).State;if(r.value===a.SubtitleFormatType.WebVTT)return o(n,t,f(e)),n.effects.loop(n.abortSignal)}])),f=(0,n.createTaskClosure)((e=>["vtt-segments-subscribe",(t,r)=>{var n;const i=(null!==(n=r.effects.store.subtitleSegmentCache.get(e))&&void 0!==n?n:[]).filter((e=>t.includes(e)));for(const n of t)i.includes(n)||r.fork(s.ParseAndSetSegmentCuesTask,{segment:n,selectionGroup:e}).then((()=>i.push(n))).catch((()=>{}));r.effects.store.subtitleSegmentCache.set(e,i)}]))},68465:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebVttExportNames=void 0,function(e){e.WebVttParseTask="web-vtt-parse-task"}(t.WebVttExportNames||(t.WebVttExportNames={}))},70966:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebVttPackage=void 0;const n=r(97085),i=r(14809),a=r(1146),o=r(7269),s=r(27134),u=r(62411),c=r(53255),l=r(68465),f=r(39565);t.WebVttPackage=(0,n.createPackage)("web-vtt-package",((e,t)=>{const{StateEffectFactory:r,EventListenerEffectFactory:n,StoreEffectFactory:o}=t.registry.get(i.CoreExportNames.CoreEffects),s=new Map,u=t.using(r,n,o("subtitleSegmentCache",s));u.registry.maybeSet(l.WebVttExportNames.WebVttParseTask,f.WebVttParseTask);const p=u.registry.get(a.DataExportNames.StreamTimeline),{mapSubscribe:d}=u.registry.get(i.CoreExportNames.Utils).State;d(u,p,c.StreamTimelineSubscribeTask)}),[i.CoreExportNames.CoreStateAtoms,i.CoreExportNames.CoreEffects,u.SubtitleBaseExportNames.SubtitleCueMapAtom,u.SubtitleBaseExportNames.CreateSubtitleCueAtom,o.SourceExportNames.SourceState,a.DataExportNames.StreamTimeline,s.StreamDataStructureSelectionGroups]),t.default=t.WebVttPackage},39565:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebVttParseTask=void 0;const n=r(91270),i=r(33576),a=r(14809),o=r(62411);function s(e,t){const r=t.registry.get(o.SubtitleBaseExportNames.CreateSubtitleCueAtom),{generateUuid:n}=t.registry.get(a.CoreExportNames.Utils).String;return e.flatMap((e=>{const i=r(t,{id:n(),start:e.start,end:e.end,html:e.html,text:e.text,metadata:{i:e.i,vttProperties:Object.assign({},e.vtt),offset:e.offset,layout:e.layout,updates:e.updates}});return[i,...u(i,t)]}))}function u(e,t){var r;const n=[],{generateUuid:i}=t.registry.get(a.CoreExportNames.Utils).String,s=t.registry.get(o.SubtitleBaseExportNames.CreateSubtitleCueAtom),u=e.metadata;for(let a=0;a<u.updates.length;a++){const o=u.updates[a],c=u.updates[a+1],l=o.updateTime,f=o.html,p=null!==(r=null==c?void 0:c.updateTime)&&void 0!==r?r:e.end;n.push(s(t,{id:i(),start:l,end:p,html:f,text:e.text,referenceCue:e,metadata:{i:u.i,vttProperties:Object.assign({},u.vttProperties),offset:u.offset,layout:u.layout}}))}return n}t.WebVttParseTask=(0,n.createTask)("web-vtt-parse",((e,t)=>s(i.default.parse(e),t)))}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}return r(70966)})()));
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* source code is subject to the terms and conditions of the accompanying
|
|
6
6
|
* license agreement.
|
|
7
7
|
*
|
|
8
|
-
* Bitmovin Player X Version 10.2.0-beta.
|
|
8
|
+
* Bitmovin Player X Version 10.2.0-beta.6
|
|
9
9
|
*******************************************************************************/
|
|
10
10
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["framework-utils"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["framework-utils"]=t())}(self,(()=>(()=>{"use strict";var e={281:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createEffectFactory=void 0;const r=e=>e;t.createEffectFactory=r},85:(e,t)=>{function r(e,t,r){const a=t;return a._name=e,{onAdd:a,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function a(e){return(...t)=>{const[a,o]=e(...t);return r(a,o)}}function o(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=a,t.getTaskName=o}},t={};function r(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,r),n.exports}var a={};return(()=>{var e=a;Object.defineProperty(e,"__esModule",{value:!0}),e.createTaskClosure=e.createTask=e.createPackage=e.createEffectFactory=void 0;var t=r(281);Object.defineProperty(e,"createEffectFactory",{enumerable:!0,get:function(){return t.createEffectFactory}});var o=r(85);Object.defineProperty(e,"createPackage",{enumerable:!0,get:function(){return o.createPackage}});var n=r(270);Object.defineProperty(e,"createTask",{enumerable:!0,get:function(){return n.createTask}}),Object.defineProperty(e,"createTaskClosure",{enumerable:!0,get:function(){return n.createTaskClosure}})})(),a})()));
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
1
|
+
import type { EmptyObject } from '../../../framework-types/BaseTypes';
|
|
2
|
+
import type { BaseContext } from '../../../framework-types/Types';
|
|
3
|
+
import type { EventBus, EventMap } from './Types';
|
|
4
|
+
export declare function createEventBus<Events extends {
|
|
3
5
|
[key: string]: object;
|
|
4
|
-
}>(): EventBus<
|
|
6
|
+
}, Type extends Record<string, string> = EmptyObject>(): EventBus<Events, Type>;
|
|
7
|
+
export declare function extendEventBusTypes(eventBus: EventBus<EventMap>, context: BaseContext, types: Record<string, string>): void;
|
|
@@ -7,10 +7,11 @@
|
|
|
7
7
|
* <svg aria-roledescription="flowchart-v2" role="graphics-document document" viewBox="-8 -8 16 16" style="max-width: 16px; background-color: transparent;" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" width="100%" id="my-svg"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#ccc;}#my-svg .error-icon{fill:#a44141;}#my-svg .error-text{fill:#ddd;stroke:#ddd;}#my-svg .edge-thickness-normal{stroke-width:2px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:lightgrey;stroke:lightgrey;}#my-svg .marker.cross{stroke:lightgrey;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#ccc;}#my-svg .cluster-label text{fill:#F9FFFE;}#my-svg .cluster-label span,#my-svg p{color:#F9FFFE;}#my-svg .label text,#my-svg span,#my-svg p{fill:#ccc;color:#ccc;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#1f2020;stroke:#81B1DB;stroke-width:1px;}#my-svg .flowchart-label text{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .node .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .arrowheadPath{fill:lightgrey;}#my-svg .edgePath .path{stroke:lightgrey;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:lightgrey;fill:none;}#my-svg .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#my-svg .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#my-svg .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#my-svg .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#my-svg .cluster text{fill:#F9FFFE;}#my-svg .cluster span,#my-svg p{color:#F9FFFE;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker orient="auto" markerHeight="12" markerWidth="12" markerUnits="userSpaceOnUse" refY="5" refX="6" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-pointEnd"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 0 L 10 5 L 0 10 z"/></marker><marker orient="auto" markerHeight="12" markerWidth="12" markerUnits="userSpaceOnUse" refY="5" refX="4.5" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-pointStart"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 5 L 10 10 L 10 0 z"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="11" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-circleEnd"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="-1" viewBox="0 0 10 10" class="marker flowchart" id="my-svg_flowchart-circleStart"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="12" viewBox="0 0 11 11" class="marker cross flowchart" id="my-svg_flowchart-crossEnd"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="-1" viewBox="0 0 11 11" class="marker cross flowchart" id="my-svg_flowchart-crossStart"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"/><g class="edgeLabels"/><g class="nodes"/></g></g></svg>
|
|
8
8
|
*/
|
|
9
9
|
import type { EmptyObject } from '../../Types';
|
|
10
|
-
import { createEventBus } from './EventBus';
|
|
10
|
+
import { createEventBus, extendEventBusTypes } from './EventBus';
|
|
11
11
|
import { EventBusExportNames } from './Types';
|
|
12
12
|
export type EventBusExports = {
|
|
13
13
|
[EventBusExportNames.CreateEventBus]: typeof createEventBus;
|
|
14
|
+
[EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
|
|
14
15
|
};
|
|
15
16
|
declare const EventBusPackage: import("../../../framework-types/package-api/Package").Package<EmptyObject, EventBusExports, EmptyObject>;
|
|
16
17
|
export default EventBusPackage;
|
|
@@ -14,25 +14,35 @@ export type EventBusContext = ContextHaving<{
|
|
|
14
14
|
export type EventMap = {
|
|
15
15
|
[key: string]: object;
|
|
16
16
|
};
|
|
17
|
-
export type EventBus<Events extends EventMap> = {
|
|
17
|
+
export type EventBus<Events extends EventMap, Type extends Record<string, string> = EmptyObject> = {
|
|
18
18
|
on<Name extends keyof Events & string>(name: Name | `${Name}`, listener: EventListener<Events[Name]>): void;
|
|
19
19
|
off<Name extends keyof Events & string>(name: Name | `${Name}`, listener: EventListener<Events[Name]>): void;
|
|
20
20
|
dispatch<Name extends keyof Events & string>(context: EventBusContext, name: Name | `${Name}`, event: Omit<Events[Name], 'type' | 'timestamp'> & Partial<EventBase>): void;
|
|
21
|
+
readonly Type: Type;
|
|
21
22
|
};
|
|
22
23
|
type EventMaps<Apis extends object[]> = {
|
|
23
24
|
[key in keyof Apis]: Apis[key] extends {
|
|
24
|
-
events: EventBus<infer Events extends EventMap
|
|
25
|
+
events: EventBus<infer Events extends EventMap, Record<string, string>>;
|
|
25
26
|
} ? Events : EmptyObject;
|
|
26
27
|
};
|
|
28
|
+
type ApiEventTypes<Apis extends object[]> = {
|
|
29
|
+
[key in keyof Apis]: Apis[key] extends {
|
|
30
|
+
events: {
|
|
31
|
+
readonly Type: infer T extends Record<string, string>;
|
|
32
|
+
};
|
|
33
|
+
} ? T : EmptyObject;
|
|
34
|
+
};
|
|
27
35
|
type WithoutEventBuses<Apis extends object[]> = {
|
|
28
36
|
[key in keyof Apis]: Omit<Apis[key], 'events'>;
|
|
29
37
|
};
|
|
30
38
|
type MergeEventMaps<EventMaps extends EventMap[]> = EventMaps extends [infer Events extends EventMap] ? Events : EventMaps extends [infer Events extends EventMap, ...infer OtherMaps extends EventMap[]] ? Events & MergeEventMaps<OtherMaps> : EmptyObject;
|
|
39
|
+
type MergeRecords<Records extends Record<string, string>[]> = Records extends [infer R extends Record<string, string>] ? R : Records extends [infer R extends Record<string, string>, ...infer Rest extends Record<string, string>[]] ? R & MergeRecords<Rest> : EmptyObject;
|
|
31
40
|
type MergeApis<Apis extends object[]> = Apis extends [infer Api] ? Api : Apis extends [infer Api, ...infer RemainingApis extends object[]] ? Api & MergeApis<RemainingApis> : EmptyObject;
|
|
32
41
|
export type MergeApisAndEventBuses<Apis extends object[]> = MergeApis<WithoutEventBuses<Apis>> & {
|
|
33
|
-
events: EventBus<MergeEventMaps<EventMaps<Apis>>>;
|
|
42
|
+
events: EventBus<MergeEventMaps<EventMaps<Apis>>, MergeRecords<ApiEventTypes<Apis>>>;
|
|
34
43
|
};
|
|
35
44
|
export declare enum EventBusExportNames {
|
|
36
|
-
CreateEventBus = "create-event-bus"
|
|
45
|
+
CreateEventBus = "create-event-bus",
|
|
46
|
+
ExtendEventBusTypes = "extend-event-bus-types"
|
|
37
47
|
}
|
|
38
48
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { EventBus } from '../event-bus/Types';
|
|
2
2
|
import type { PlayPauseApi } from './play-pause-api/Types';
|
|
3
|
-
import type { PlaybackEventMap } from './playback-api-events/events/PlaybackEventMap';
|
|
3
|
+
import type { PlaybackEvent, PlaybackEventMap } from './playback-api-events/events/PlaybackEventMap';
|
|
4
4
|
import type { TimeApi } from './time-api/Types';
|
|
5
5
|
import type { VolumeApi } from './volume-api/Types';
|
|
6
6
|
export type PlaybackApi = PlayPauseApi & TimeApi & VolumeApi & {
|
|
7
|
-
events: EventBus<PlaybackEventMap>;
|
|
7
|
+
events: EventBus<PlaybackEventMap, typeof PlaybackEvent>;
|
|
8
8
|
};
|
|
@@ -3,7 +3,8 @@ import type { ContextHaving } from '../../../../framework-types/execution-contex
|
|
|
3
3
|
import type { BundleExportNames } from '../../../bundles/Types';
|
|
4
4
|
import type { CoreEffects, CoreExportNames } from '../../core/Types';
|
|
5
5
|
import type { Logger } from '../../core/utils/Logger';
|
|
6
|
-
import type {
|
|
6
|
+
import type { extendEventBusTypes } from '../../event-bus/EventBus';
|
|
7
|
+
import type { EventBus, EventBusExportNames } from '../../event-bus/Types';
|
|
7
8
|
import type { PlaybackState, PlaybackStateMachineAtom, PlaybackStatePackageExportNames } from '../../playback/playback-state/Types';
|
|
8
9
|
import type { VideoElementStateExportNames } from '../../playback/video-element-state/Types';
|
|
9
10
|
import type { VideoElementStateAtom } from '../../playback/video-element-state/VideoElementStateAtom';
|
|
@@ -15,6 +16,7 @@ import type { PlaybackEvent, PlaybackEventMap } from './events/PlaybackEventMap'
|
|
|
15
16
|
export type PlaybackApiEventsPackageDependencies = {
|
|
16
17
|
[BundleExportNames.Logger]: Logger;
|
|
17
18
|
[CoreExportNames.CoreEffects]: CoreEffects;
|
|
19
|
+
[EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
|
|
18
20
|
[PlaybackStatePackageExportNames.PlaybackState]: typeof PlaybackState;
|
|
19
21
|
[PlaybackStatePackageExportNames.PlaybackStateMachine]: PlaybackStateMachineAtom;
|
|
20
22
|
[SourcesApiExportNames.SourceEventBus]: EventBus<PlaybackEventMap>;
|
|
@@ -12,7 +12,7 @@ import type { ContextHaving } from '../../../framework-types/execution-context/T
|
|
|
12
12
|
import type { BaseContext } from '../../../framework-types/Types';
|
|
13
13
|
import { BundleExportNames } from '../../bundles/Types';
|
|
14
14
|
import type { Logger } from '../core/utils/Logger';
|
|
15
|
-
import type { createEventBus } from '../event-bus/EventBus';
|
|
15
|
+
import type { createEventBus, extendEventBusTypes } from '../event-bus/EventBus';
|
|
16
16
|
import type { EventBus } from '../event-bus/Types';
|
|
17
17
|
import { EventBusExportNames } from '../event-bus/Types';
|
|
18
18
|
import type { PlayerApi, PlayerEventMap } from './Types';
|
|
@@ -20,6 +20,7 @@ import { PlayerApiExportNames } from './Types';
|
|
|
20
20
|
type PlayerApiDependencies = {
|
|
21
21
|
[BundleExportNames.Logger]: Logger;
|
|
22
22
|
[EventBusExportNames.CreateEventBus]: typeof createEventBus;
|
|
23
|
+
[EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
|
|
23
24
|
};
|
|
24
25
|
type PlayerApiExports = {
|
|
25
26
|
[PlayerApiExportNames.PlayerEventBus]: EventBus<PlayerEventMap>;
|
|
@@ -7,7 +7,7 @@ import type { MapStateAtom } from '../core/state/MapStateAtom';
|
|
|
7
7
|
import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../core/Types';
|
|
8
8
|
import type { Logger, LogLevel } from '../core/utils/Logger';
|
|
9
9
|
import type { CoreUtils } from '../core/utils/Types';
|
|
10
|
-
import type { createEventBus } from '../event-bus/EventBus';
|
|
10
|
+
import type { createEventBus, extendEventBusTypes } from '../event-bus/EventBus';
|
|
11
11
|
import type { EventBus, EventBusExportNames } from '../event-bus/Types';
|
|
12
12
|
import type { PlayerApiExportNames } from '../player-api/Types';
|
|
13
13
|
import type { SourceConfig } from '../source/atoms/SourceConfigAtom';
|
|
@@ -76,7 +76,7 @@ export type SourceErrorEvent = {
|
|
|
76
76
|
error: Error;
|
|
77
77
|
};
|
|
78
78
|
export type SourcesApi<SourceApi extends EmptyObject> = {
|
|
79
|
-
events: EventBus<SourcesApiEventMap>;
|
|
79
|
+
events: EventBus<SourcesApiEventMap, typeof SourcesApiEvent>;
|
|
80
80
|
sources: SourcesApiObject<SourceApi>;
|
|
81
81
|
};
|
|
82
82
|
export interface SourceApiBase {
|
|
@@ -99,6 +99,7 @@ export type SourcesApiDependencies = {
|
|
|
99
99
|
[SourceExportNames.CreateSourceReference]: typeof createSourceReference;
|
|
100
100
|
[SourceExportNames.SourceReferences]: SourceReferences;
|
|
101
101
|
[EventBusExportNames.CreateEventBus]: typeof createEventBus;
|
|
102
|
+
[EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
|
|
102
103
|
[PlayerApiExportNames.PlayerEventBus]: EventBus<SourcesApiEventMap>;
|
|
103
104
|
} & StreamDataStructurePackageExports & StreamingPackageExports;
|
|
104
105
|
export declare enum SourcesApiExportNames {
|
|
@@ -7,7 +7,8 @@ import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Ty
|
|
|
7
7
|
import type { Logger } from '../../core/utils/Logger';
|
|
8
8
|
import type { CoreUtils } from '../../core/utils/Types';
|
|
9
9
|
import type { DataExportNames } from '../../data/Types';
|
|
10
|
-
import type {
|
|
10
|
+
import type { extendEventBusTypes } from '../../event-bus/EventBus';
|
|
11
|
+
import type { EventBase, EventBus, EventBusExportNames } from '../../event-bus/Types';
|
|
11
12
|
import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
|
|
12
13
|
import type { SourceExportNames } from '../../source/Types';
|
|
13
14
|
import type { SourcesApiExportNames } from '../../sources-api/Types';
|
|
@@ -26,6 +27,7 @@ export type SubtitleApiDependencies = {
|
|
|
26
27
|
[CoreExportNames.Constants]: Constants;
|
|
27
28
|
[DataExportNames.StreamTimeline]: StreamTimelineAtom;
|
|
28
29
|
[BundleExportNames.Logger]: Logger;
|
|
30
|
+
[EventBusExportNames.ExtendEventBusTypes]: typeof extendEventBusTypes;
|
|
29
31
|
[SourceExportNames.SourceState]: SourceStateAtom;
|
|
30
32
|
[SourcesApiExportNames.SourceApiManager]: ApiManager<SubtitleSourceApi>;
|
|
31
33
|
[SourcesApiExportNames.SourceEventBus]: EventBus<SubtitleEventMap>;
|