@theoplayer/react-ui 2.1.3 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @theoplayer/react-ui
2
2
 
3
+ ## 2.3.0
4
+
5
+ ### ✨ Features
6
+
7
+ - Added 360°/VR support: `<theoplayer-vr-button>` and `<theoplayer-vr-compass>`, included by default in `<theoplayer-default-ui>`.
8
+
9
+ ### 📦 Dependency Updates
10
+
11
+ - See changes to [Open Video UI for Web v2.3.0](https://github.com/THEOplayer/web-ui/blob/%40theoplayer%2Fweb-ui%402.3.0/CHANGELOG.md)
12
+
13
+ ## 2.2.0
14
+
15
+ ### ✨ Features
16
+
17
+ - Added localization support. Use `addLocale()` to register a locale, and set the `lang` attribute on the UI to apply it.
18
+
19
+ ### 📦 Dependency Updates
20
+
21
+ - See changes to [Open Video UI for Web v2.2.0](https://github.com/THEOplayer/web-ui/blob/%40theoplayer%2Fweb-ui%402.2.0/CHANGELOG.md)
22
+
3
23
  ## 2.1.3
4
24
 
5
25
  ### 📦 Dependency Updates
@@ -1,12 +1,13 @@
1
1
  /*!
2
- * THEOplayer Open Video UI for React (v2.1.3)
2
+ * THEOplayer Open Video UI for React (v2.3.0)
3
3
  * License: MIT
4
4
  */
5
5
  import * as react from 'react';
6
6
  import { PropsWithoutRef, ReactNode } from 'react';
7
7
  import { ChromelessPlayer, SourceDescription } from 'theoplayer/chromeless';
8
8
  import * as react_jsx_runtime from 'react/jsx-runtime';
9
- import { UIContainer as UIContainer$1, DefaultUI as DefaultUI$1, THEOliveDefaultUI as THEOliveDefaultUI$1, ControlBar as ControlBar$1, Button as Button$1, LinkButton as LinkButton$1, PlayButton as PlayButton$1, MuteButton as MuteButton$1, SeekButton as SeekButton$1, TimeDisplay as TimeDisplay$1, DurationDisplay as DurationDisplay$1, RadioGroup as RadioGroup$1, RadioButton as RadioButton$1, Menu as Menu$1, MenuGroup as MenuGroup$1, MenuButton as MenuButton$1, CloseMenuButton as CloseMenuButton$1, MediaTrackRadioButton as MediaTrackRadioButton$1, TrackRadioGroup as TrackRadioGroup$1, TextTrackRadioButton as TextTrackRadioButton$1, TextTrackOffRadioButton as TextTrackOffRadioButton$1, LanguageMenu as LanguageMenu$1, LanguageMenuButton as LanguageMenuButton$1, PlaybackRateRadioGroup as PlaybackRateRadioGroup$1, PlaybackRateMenuButton as PlaybackRateMenuButton$1, PlaybackRateMenu as PlaybackRateMenu$1, PlaybackRateDisplay as PlaybackRateDisplay$1, ActiveQualityDisplay as ActiveQualityDisplay$1, QualityRadioButton as QualityRadioButton$1, QualityRadioGroup as QualityRadioGroup$1, TextTrackStyleRadioGroup as TextTrackStyleRadioGroup$1, TextTrackStyleResetButton as TextTrackStyleResetButton$1, TextTrackStyleDisplay as TextTrackStyleDisplay$1, TextTrackStyleMenu as TextTrackStyleMenu$1, SettingsMenu as SettingsMenu$1, SettingsMenuButton as SettingsMenuButton$1, FullscreenButton as FullscreenButton$1, TimeRange as TimeRange$1, VolumeRange as VolumeRange$1, ErrorDisplay as ErrorDisplay$1, CastButton as CastButton$1, ChromecastButton as ChromecastButton$1, ChromecastDisplay as ChromecastDisplay$1, AirPlayButton as AirPlayButton$1, LoadingIndicator as LoadingIndicator$1, GestureReceiver as GestureReceiver$1, PreviewTimeDisplay as PreviewTimeDisplay$1, PreviewThumbnail as PreviewThumbnail$1, LiveButton as LiveButton$1, SlotContainer as SlotContainer$1, AdDisplay as AdDisplay$1, AdCountdown as AdCountdown$1, AdClickThroughButton as AdClickThroughButton$1, AdSkipButton as AdSkipButton$1 } from '@theoplayer/web-ui';
9
+ import { UIContainer as UIContainer$1, DefaultUI as DefaultUI$1, THEOliveDefaultUI as THEOliveDefaultUI$1, ControlBar as ControlBar$1, Button as Button$1, LinkButton as LinkButton$1, PlayButton as PlayButton$1, MuteButton as MuteButton$1, SeekButton as SeekButton$1, TimeDisplay as TimeDisplay$1, DurationDisplay as DurationDisplay$1, RadioGroup as RadioGroup$1, RadioButton as RadioButton$1, Menu as Menu$1, MenuGroup as MenuGroup$1, MenuButton as MenuButton$1, CloseMenuButton as CloseMenuButton$1, MediaTrackRadioButton as MediaTrackRadioButton$1, TrackRadioGroup as TrackRadioGroup$1, TextTrackRadioButton as TextTrackRadioButton$1, TextTrackOffRadioButton as TextTrackOffRadioButton$1, LanguageMenu as LanguageMenu$1, LanguageMenuButton as LanguageMenuButton$1, PlaybackRateRadioGroup as PlaybackRateRadioGroup$1, PlaybackRateMenuButton as PlaybackRateMenuButton$1, PlaybackRateMenu as PlaybackRateMenu$1, PlaybackRateDisplay as PlaybackRateDisplay$1, ActiveQualityDisplay as ActiveQualityDisplay$1, QualityRadioButton as QualityRadioButton$1, QualityRadioGroup as QualityRadioGroup$1, TextTrackStyleRadioGroup as TextTrackStyleRadioGroup$1, TextTrackStyleResetButton as TextTrackStyleResetButton$1, TextTrackStyleDisplay as TextTrackStyleDisplay$1, TextTrackStyleMenu as TextTrackStyleMenu$1, SettingsMenu as SettingsMenu$1, SettingsMenuButton as SettingsMenuButton$1, FullscreenButton as FullscreenButton$1, VRButton as VRButton$1, VRCompass as VRCompass$1, TimeRange as TimeRange$1, VolumeRange as VolumeRange$1, ErrorDisplay as ErrorDisplay$1, CastButton as CastButton$1, ChromecastButton as ChromecastButton$1, ChromecastDisplay as ChromecastDisplay$1, AirPlayButton as AirPlayButton$1, LoadingIndicator as LoadingIndicator$1, GestureReceiver as GestureReceiver$1, PreviewTimeDisplay as PreviewTimeDisplay$1, PreviewThumbnail as PreviewThumbnail$1, LiveButton as LiveButton$1, SlotContainer as SlotContainer$1, AdDisplay as AdDisplay$1, AdCountdown as AdCountdown$1, AdClickThroughButton as AdClickThroughButton$1, AdSkipButton as AdSkipButton$1 } from '@theoplayer/web-ui';
10
+ export { Duration, KnownColor, KnownFontFamily, Locale, PartialLocale, addLocale } from '@theoplayer/web-ui';
10
11
  import * as _lit_react from '@lit/react';
11
12
  import { WebComponentProps } from '@lit/react';
12
13
 
@@ -84,6 +85,14 @@ interface UIContainerProps extends PropsWithoutRef<WebComponentProps<UIContainer
84
85
  * A slot for an error display, to show when the player encounters a fatal error (see {@link ErrorDisplay}).
85
86
  */
86
87
  error?: ReactNode;
88
+ /**
89
+ * The language of the UI.
90
+ *
91
+ * When set, this also updates the {@link Locale} of the UI if one is registered with {@link addLocale}.
92
+ *
93
+ * @see {@link HTMLElement.lang}
94
+ */
95
+ lang?: string;
87
96
  /**
88
97
  * Use a named slot instead, such as:
89
98
  * - {@link topChrome}
@@ -195,6 +204,14 @@ interface DefaultUIProps extends PropsWithoutRef<Omit<WebComponentProps<DefaultU
195
204
  * - {@link menu}
196
205
  */
197
206
  children?: never;
207
+ /**
208
+ * The language of the UI.
209
+ *
210
+ * When set, this also updates the {@link Locale} of the UI if one is registered with {@link addLocale}.
211
+ *
212
+ * @see {@link HTMLElement.lang}
213
+ */
214
+ lang?: string;
198
215
  /**
199
216
  * Called when the backing player is created.
200
217
  *
@@ -591,6 +608,22 @@ declare const FullscreenButton: _lit_react.ReactWebComponent<FullscreenButton$1,
591
608
  readonly onClick: "click";
592
609
  }>;
593
610
 
611
+ /**
612
+ * See {@link @theoplayer/web-ui!VRButton | VRButton in @theoplayer/web-ui}.
613
+ *
614
+ * @group Components
615
+ */
616
+ declare const VRButton: _lit_react.ReactWebComponent<VRButton$1, {
617
+ readonly onClick: "click";
618
+ }>;
619
+
620
+ /**
621
+ * See {@link @theoplayer/web-ui!VRCompass | VRCompass in @theoplayer/web-ui}.
622
+ *
623
+ * @group Components
624
+ */
625
+ declare const VRCompass: _lit_react.ReactWebComponent<VRCompass$1, {}>;
626
+
594
627
  declare const RangeEvents: {
595
628
  readonly onChange: "change";
596
629
  readonly onInput: "input";
@@ -809,6 +842,6 @@ declare function useVolume(): number;
809
842
  */
810
843
  declare const version: string;
811
844
 
812
- export { ActiveQualityDisplay, AdClickThroughButton, AdCountdown, AdDisplay, AdSkipButton, AirPlayButton, Button, ButtonEvents, CastButton, ChromecastButton, ChromecastDisplay, CloseMenuButton, ControlBar, DefaultUI, DurationDisplay, ErrorDisplay, FullscreenButton, GestureReceiver, LanguageMenu, LanguageMenuButton, LinkButton, LiveButton, LoadingIndicator, MediaTrackRadioButton, Menu, MenuButton, MenuGroup, MuteButton, PlayButton, PlaybackRateDisplay, PlaybackRateMenu, PlaybackRateMenuButton, PlaybackRateRadioGroup, PlayerContext, PreviewThumbnail, PreviewTimeDisplay, QualityRadioButton, QualityRadioGroup, RadioButton, RadioButtonEvents, RadioGroup, RadioGroupEvents, RangeEvents, SeekButton, SettingsMenu, SettingsMenuButton, SlotContainer, THEOliveDefaultUI, TextTrackOffRadioButton, TextTrackRadioButton, TextTrackStyleDisplay, TextTrackStyleMenu, TextTrackStyleRadioGroup, TextTrackStyleResetButton, TimeDisplay, TimeRange, TrackRadioGroup, UIContainer, VolumeRange, useCurrentTime, useDuration, useMuted, usePaused, useSeeking, useSource, useVolume, version };
845
+ export { ActiveQualityDisplay, AdClickThroughButton, AdCountdown, AdDisplay, AdSkipButton, AirPlayButton, Button, ButtonEvents, CastButton, ChromecastButton, ChromecastDisplay, CloseMenuButton, ControlBar, DefaultUI, DurationDisplay, ErrorDisplay, FullscreenButton, GestureReceiver, LanguageMenu, LanguageMenuButton, LinkButton, LiveButton, LoadingIndicator, MediaTrackRadioButton, Menu, MenuButton, MenuGroup, MuteButton, PlayButton, PlaybackRateDisplay, PlaybackRateMenu, PlaybackRateMenuButton, PlaybackRateRadioGroup, PlayerContext, PreviewThumbnail, PreviewTimeDisplay, QualityRadioButton, QualityRadioGroup, RadioButton, RadioButtonEvents, RadioGroup, RadioGroupEvents, RangeEvents, SeekButton, SettingsMenu, SettingsMenuButton, SlotContainer, THEOliveDefaultUI, TextTrackOffRadioButton, TextTrackRadioButton, TextTrackStyleDisplay, TextTrackStyleMenu, TextTrackStyleRadioGroup, TextTrackStyleResetButton, TimeDisplay, TimeRange, TrackRadioGroup, UIContainer, VRButton, VRCompass, VolumeRange, useCurrentTime, useDuration, useMuted, usePaused, useSeeking, useSource, useVolume, version };
813
846
  export type { CommonMenuProps, DefaultUIProps, LanguageMenuProps, MenuProps, PlaybackRateMenuProps, SettingsMenuProps, THEOliveDefaultUIProps, TextTrackStyleMenuProps, UIContainerProps };
814
847
  export as namespace THEOplayerReactUI;
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,a){"use strict";var n,r=(n=Object.create(null),t&&Object.keys(t).forEach(function(e){if("default"!==e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}}),n.default=t,Object.freeze(n)),l=t.createContext(void 0);function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(this,arguments)}function u(e,t){if(null==e)return{};var a,n,r={},l=Object.getOwnPropertyNames(e);for(n=0;n<l.length;n++)a=l[n],!(t.indexOf(a)>=0)&&Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a]);return r}let i=new Set(["children","localName","ref","style","className"]),s=new WeakMap,c=(e,t,a,n,r)=>{let l,o,u=r?.[t];void 0===u?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):a!==n&&(void 0===(l=s.get(e))&&s.set(e,l=new Map),o=l.get(u),void 0!==a?void 0===o?(l.set(u,o={handleEvent:a}),e.addEventListener(u,o)):o.handleEvent=a:void 0!==o&&(l.delete(u),e.removeEventListener(u,o)))},m=({react:e,tagName:t,elementClass:a,events:n,displayName:r})=>{let l=new Set(Object.keys(n??{})),o=e.forwardRef((r,o)=>{let u=e.useRef(new Map),s=e.useRef(null),m={},d={};for(let[e,t]of Object.entries(r))i.has(e)?m["className"===e?"class":e]=t:l.has(e)||e in a.prototype?d[e]=t:m[e]=t;return e.useLayoutEffect(()=>{if(null===s.current)return;let e=new Map;for(let t in d)c(s.current,t,r[t],u.current.get(t),n),u.current.delete(t),e.set(t,r[t]);for(let[e,t]of u.current)c(s.current,e,void 0,t,n);u.current=e}),e.useLayoutEffect(()=>{s.current?.removeAttribute("defer-hydration")},[]),m.suppressHydrationWarning=!0,e.createElement(t,{...m,ref:e.useCallback(e=>{s.current=e,"function"==typeof o?o(e):null!==o&&(o.current=e)},[o])})});return o.displayName=r??a.name,o};function d(e,a){var n=t.useCallback(function(t){return null==e||e.addEventListener("theoplayerready",t),function(){return null==e?void 0:e.removeEventListener("theoplayerready",t)}},[e]),r=t.useSyncExternalStore(n,function(){return null==e?void 0:e.player},function(){});return t.useEffect(function(){r&&(null==a||a(r))},[r,a]),t.useEffect(function(){return function(){try{null==r||r.destroy()}catch(e){}}},[r]),r}var y=m({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:r}),p={onClick:"click"},g=m({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:r,events:p}),h=m({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:r,events:p}),v=m({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:r,events:p}),f=m({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:r,events:p}),C=m({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:r,events:p}),N=m({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:r}),k=m({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:r}),b={onChange:"change"},E=m({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:r,events:b}),B=o({},p,{onChange:"change",onInput:"input"}),R=m({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:r,events:B}),T=function(e){var t=e.slot,a=e.children;return a?r.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},S=m({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:r}),x=m({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:r}),M=m({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:r,events:p}),D=m({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:r,events:p}),L=m({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:r,events:B}),P=m({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:r,events:b}),w=m({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:r,events:B}),A=m({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:r,events:B}),O=m({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:r}),G=m({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:r,events:p}),I=m({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:r,events:b}),j=m({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:r,events:p}),U=m({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:r}),Q=m({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:r}),H=m({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:r}),q=m({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:r,events:B}),V=m({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:r,events:b}),F=m({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:r,events:b}),W=m({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:r,events:p}),z=m({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:r}),J=m({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:r}),K=m({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:r}),X=m({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:r,events:p}),Y=m({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:r,events:p}),Z={onChange:"change",onInput:"input"},$=m({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:r,events:Z}),_=m({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:r,events:Z}),ee=m({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:r}),et=m({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:r,events:p}),ea=m({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:r,events:p}),en=m({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:r}),er=m({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:r,events:p}),el=m({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:r}),eo=m({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:r}),eu=m({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:r}),ei=m({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:r}),es=m({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:r,events:p}),ec=m({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:a.SlotContainer,react:r}),em=m({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:r}),ed=m({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:r}),ey=m({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:r,events:p}),ep=m({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:r,events:p}),eg=m({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:r,events:{onReady:"theoplayerready"}}),eh=m({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:r,events:{onReady:"theoplayerready"}}),ev=m({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:a.THEOliveDefaultUI,react:r,events:{onReady:"theoplayerready"}}),ef=["timeupdate","seeking","seeked","emptied"],eC=["durationchange","emptied"],eN=["play","pause"],ek=["seeking","seeked","emptied"];e.ActiveQualityDisplay=H,e.AdClickThroughButton=ey,e.AdCountdown=ed,e.AdDisplay=em,e.AdSkipButton=ep,e.AirPlayButton=er,e.Button=g,e.ButtonEvents=p,e.CastButton=et,e.ChromecastButton=ea,e.ChromecastDisplay=en,e.CloseMenuButton=D,e.ControlBar=y,e.DefaultUI=function(e){var a=e.title,n=e.topControlBar,i=e.bottomControlBar,s=e.centeredChrome,c=e.menu,m=e.error,y=e.onReady,p=u(e,["title","topControlBar","bottomControlBar","centeredChrome","menu","error","onReady"]),g=t.useState(null),h=g[0],v=g[1],f=d(h,y);return r.createElement(eh,o({},p,{ref:v}),r.createElement(l.Provider,{value:f},a&&r.createElement(ec,{slot:"title"},a),n&&r.createElement(ec,{slot:"top-control-bar"},n),i&&r.createElement(ec,{slot:"bottom-control-bar"},i),s&&r.createElement(ec,{slot:"centered-chrome"},s),c&&r.createElement(ec,{slot:"menu"},c),m&&r.createElement(ec,{slot:"error"},m)))},e.DurationDisplay=k,e.ErrorDisplay=ee,e.FullscreenButton=Y,e.GestureReceiver=eo,e.LanguageMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(O,n,r.createElement(T,{slot:"heading"},t),a)},e.LanguageMenuButton=G,e.LinkButton=h,e.LiveButton=es,e.LoadingIndicator=el,e.MediaTrackRadioButton=L,e.Menu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(S,n,r.createElement(T,{slot:"heading"},t),a)},e.MenuButton=M,e.MenuGroup=x,e.MuteButton=f,e.PlayButton=v,e.PlaybackRateDisplay=Q,e.PlaybackRateMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(U,n,r.createElement(T,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=j,e.PlaybackRateRadioGroup=I,e.PlayerContext=l,e.PreviewThumbnail=ei,e.PreviewTimeDisplay=eu,e.QualityRadioButton=q,e.QualityRadioGroup=V,e.RadioButton=R,e.RadioButtonEvents=B,e.RadioGroup=E,e.RadioGroupEvents=b,e.RangeEvents=Z,e.SeekButton=C,e.SettingsMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(K,n,r.createElement(T,{slot:"heading"},t),a)},e.SettingsMenuButton=X,e.SlotContainer=ec,e.THEOliveDefaultUI=function(e){var a=e.loadingAnnouncement,n=e.offlineAnnouncement,i=e.onReady,s=u(e,["loadingAnnouncement","offlineAnnouncement","onReady"]),c=t.useState(null),m=c[0],y=c[1],p=d(m,i);return r.createElement(ev,o({},s,{ref:y}),r.createElement(l.Provider,{value:p},a&&r.createElement(ec,{slot:"loading-announcement"},a),n&&r.createElement(ec,{slot:"offline-announcement"},n)))},e.TextTrackOffRadioButton=A,e.TextTrackRadioButton=w,e.TextTrackStyleDisplay=z,e.TextTrackStyleMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(J,n,r.createElement(T,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=F,e.TextTrackStyleResetButton=W,e.TimeDisplay=N,e.TimeRange=$,e.TrackRadioGroup=P,e.UIContainer=function(e){var a=e.topChrome,n=e.middleChrome,i=e.bottomChrome,s=e.centeredChrome,c=e.centeredLoading,m=e.menu,y=e.error,p=e.onReady,g=u(e,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),h=t.useState(null),v=h[0],f=h[1],C=d(v,p);return r.createElement(eg,o({},g,{ref:f}),r.createElement(l.Provider,{value:C},a&&r.createElement(ec,{slot:"top-chrome"},a),n&&r.createElement(ec,{slot:"middle-chrome"},n),s&&r.createElement(ec,{slot:"centered-chrome"},s),c&&r.createElement(ec,{slot:"centered-loading"},c),i,m&&r.createElement(ec,{slot:"menu"},m),y&&r.createElement(ec,{slot:"error"},y)))},e.VolumeRange=_,e.useCurrentTime=function(){var e=t.useContext(l),a=t.useState(e?e.currentTime:0),n=a[0],r=a[1],o=t.useCallback(function(t){var a=function(){r(e.currentTime),t()};return null==e||e.addEventListener(ef,a),function(){return null==e?void 0:e.removeEventListener(ef,a)}},[e]);return t.useSyncExternalStore(o,function(){return n},function(){return n})},e.useDuration=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(eC,t),function(){return null==e?void 0:e.removeEventListener(eC,t)}},[e]);return t.useSyncExternalStore(a,function(){return e?e.duration:NaN},function(){return NaN})},e.useMuted=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return!!e&&e.muted},function(){return!1})},e.usePaused=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(eN,t),function(){return null==e?void 0:e.removeEventListener(eN,t)}},[e]);return t.useSyncExternalStore(a,function(){return!e||e.paused},function(){return!0})},e.useSeeking=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(ek,t),function(){return null==e?void 0:e.removeEventListener(ek,t)}},[e]);return t.useSyncExternalStore(a,function(){return!!e&&e.seeking},function(){return!1})},e.useSource=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("sourcechange",t),function(){return null==e?void 0:e.removeEventListener("sourcechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return null==e?void 0:e.source},function(){})},e.useVolume=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return e?e.volume:1},function(){return 1})},e.version="2.1.3"},"object"==typeof exports&&"u">typeof module?t(exports,require("react"),require("@theoplayer/web-ui/es5")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui/es5"],t):t((e="u">typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI);
1
+ var e,t;e=this,t=function(e,t,a){"use strict";var n,r=(n=Object.create(null),t&&Object.keys(t).forEach(function(e){if("default"!==e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}}),n.default=t,Object.freeze(n)),l=t.createContext(void 0);function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(this,arguments)}function u(e,t){if(null==e)return{};var a,n,r={},l=Object.getOwnPropertyNames(e);for(n=0;n<l.length;n++)a=l[n],!(t.indexOf(a)>=0)&&Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a]);return r}let i=new Set(["children","localName","ref","style","className"]),s=new WeakMap,c=(e,t,a,n,r)=>{let l,o,u=r?.[t];void 0===u?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):a!==n&&(void 0===(l=s.get(e))&&s.set(e,l=new Map),o=l.get(u),void 0!==a?void 0===o?(l.set(u,o={handleEvent:a}),e.addEventListener(u,o)):o.handleEvent=a:void 0!==o&&(l.delete(u),e.removeEventListener(u,o)))},m=({react:e,tagName:t,elementClass:a,events:n,displayName:r})=>{let l=new Set(Object.keys(n??{})),o=e.forwardRef((r,o)=>{let u=e.useRef(new Map),s=e.useRef(null),m={},d={};for(let[e,t]of Object.entries(r))i.has(e)?m["className"===e?"class":e]=t:l.has(e)||e in a.prototype?d[e]=t:m[e]=t;return e.useLayoutEffect(()=>{if(null===s.current)return;let e=new Map;for(let t in d)c(s.current,t,r[t],u.current.get(t),n),u.current.delete(t),e.set(t,r[t]);for(let[e,t]of u.current)c(s.current,e,void 0,t,n);u.current=e}),e.useLayoutEffect(()=>{s.current?.removeAttribute("defer-hydration")},[]),m.suppressHydrationWarning=!0,e.createElement(t,{...m,ref:e.useCallback(e=>{s.current=e,"function"==typeof o?o(e):null!==o&&(o.current=e)},[o])})});return o.displayName=r??a.name,o};function d(e,a){var n=t.useCallback(function(t){return null==e||e.addEventListener("theoplayerready",t),function(){return null==e?void 0:e.removeEventListener("theoplayerready",t)}},[e]),r=t.useSyncExternalStore(n,function(){return null==e?void 0:e.player},function(){});return t.useEffect(function(){r&&(null==a||a(r))},[r,a]),t.useEffect(function(){return function(){try{null==r||r.destroy()}catch(e){}}},[r]),r}var y=m({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:r}),p={onClick:"click"},g=m({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:r,events:p}),v=m({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:r,events:p}),h=m({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:r,events:p}),f=m({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:r,events:p}),C=m({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:r,events:p}),N=m({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:r}),k=m({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:r}),b={onChange:"change"},B=m({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:r,events:b}),E=o({},p,{onChange:"change",onInput:"input"}),R=m({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:r,events:E}),T=function(e){var t=e.slot,a=e.children;return a?r.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},S=m({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:r}),x=m({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:r}),M=m({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:r,events:p}),L=m({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:r,events:p}),D=m({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:r,events:E}),P=m({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:r,events:b}),w=m({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:r,events:E}),A=m({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:r,events:E}),O=m({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:r}),G=m({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:r,events:p}),I=m({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:r,events:b}),j=m({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:r,events:p}),U=m({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:r}),V=m({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:r}),Q=m({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:r}),H=m({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:r,events:E}),q=m({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:r,events:b}),F=m({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:r,events:b}),W=m({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:r,events:p}),z=m({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:r}),J=m({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:r}),K=m({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:r}),X=m({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:r,events:p}),Y=m({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:r,events:p}),Z=m({tagName:"theoplayer-vr-button",displayName:"VRButton",elementClass:a.VRButton,react:r,events:p}),$=m({tagName:"theoplayer-vr-compass",displayName:"VRCompass",elementClass:a.VRCompass,react:r}),_={onChange:"change",onInput:"input"},ee=m({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:r,events:_}),et=m({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:r,events:_}),ea=m({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:r}),en=m({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:r,events:p}),er=m({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:r,events:p}),el=m({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:r}),eo=m({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:r,events:p}),eu=m({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:r}),ei=m({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:r}),es=m({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:r}),ec=m({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:r}),em=m({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:r,events:p}),ed=m({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:a.SlotContainer,react:r}),ey=m({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:r}),ep=m({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:r}),eg=m({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:r,events:p}),ev=m({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:r,events:p}),eh=m({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:r,events:{onReady:"theoplayerready"}}),ef=m({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:r,events:{onReady:"theoplayerready"}}),eC=m({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:a.THEOliveDefaultUI,react:r,events:{onReady:"theoplayerready"}}),eN=["timeupdate","seeking","seeked","emptied"],ek=["durationchange","emptied"],eb=["play","pause"],eB=["seeking","seeked","emptied"];Object.defineProperty(e,"addLocale",{enumerable:!0,get:function(){return a.addLocale}}),e.ActiveQualityDisplay=Q,e.AdClickThroughButton=eg,e.AdCountdown=ep,e.AdDisplay=ey,e.AdSkipButton=ev,e.AirPlayButton=eo,e.Button=g,e.ButtonEvents=p,e.CastButton=en,e.ChromecastButton=er,e.ChromecastDisplay=el,e.CloseMenuButton=L,e.ControlBar=y,e.DefaultUI=function(e){var a=e.title,n=e.topControlBar,i=e.bottomControlBar,s=e.centeredChrome,c=e.menu,m=e.error,y=e.onReady,p=u(e,["title","topControlBar","bottomControlBar","centeredChrome","menu","error","onReady"]),g=t.useState(null),v=g[0],h=g[1],f=d(v,y);return r.createElement(ef,o({},p,{ref:h}),r.createElement(l.Provider,{value:f},a&&r.createElement(ed,{slot:"title"},a),n&&r.createElement(ed,{slot:"top-control-bar"},n),i&&r.createElement(ed,{slot:"bottom-control-bar"},i),s&&r.createElement(ed,{slot:"centered-chrome"},s),c&&r.createElement(ed,{slot:"menu"},c),m&&r.createElement(ed,{slot:"error"},m)))},e.DurationDisplay=k,e.ErrorDisplay=ea,e.FullscreenButton=Y,e.GestureReceiver=ei,e.LanguageMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(O,n,r.createElement(T,{slot:"heading"},t),a)},e.LanguageMenuButton=G,e.LinkButton=v,e.LiveButton=em,e.LoadingIndicator=eu,e.MediaTrackRadioButton=D,e.Menu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(S,n,r.createElement(T,{slot:"heading"},t),a)},e.MenuButton=M,e.MenuGroup=x,e.MuteButton=f,e.PlayButton=h,e.PlaybackRateDisplay=V,e.PlaybackRateMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(U,n,r.createElement(T,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=j,e.PlaybackRateRadioGroup=I,e.PlayerContext=l,e.PreviewThumbnail=ec,e.PreviewTimeDisplay=es,e.QualityRadioButton=H,e.QualityRadioGroup=q,e.RadioButton=R,e.RadioButtonEvents=E,e.RadioGroup=B,e.RadioGroupEvents=b,e.RangeEvents=_,e.SeekButton=C,e.SettingsMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(K,n,r.createElement(T,{slot:"heading"},t),a)},e.SettingsMenuButton=X,e.SlotContainer=ed,e.THEOliveDefaultUI=function(e){var a=e.loadingAnnouncement,n=e.offlineAnnouncement,i=e.onReady,s=u(e,["loadingAnnouncement","offlineAnnouncement","onReady"]),c=t.useState(null),m=c[0],y=c[1],p=d(m,i);return r.createElement(eC,o({},s,{ref:y}),r.createElement(l.Provider,{value:p},a&&r.createElement(ed,{slot:"loading-announcement"},a),n&&r.createElement(ed,{slot:"offline-announcement"},n)))},e.TextTrackOffRadioButton=A,e.TextTrackRadioButton=w,e.TextTrackStyleDisplay=z,e.TextTrackStyleMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(J,n,r.createElement(T,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=F,e.TextTrackStyleResetButton=W,e.TimeDisplay=N,e.TimeRange=ee,e.TrackRadioGroup=P,e.UIContainer=function(e){var a=e.topChrome,n=e.middleChrome,i=e.bottomChrome,s=e.centeredChrome,c=e.centeredLoading,m=e.menu,y=e.error,p=e.onReady,g=u(e,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),v=t.useState(null),h=v[0],f=v[1],C=d(h,p);return r.createElement(eh,o({},g,{ref:f}),r.createElement(l.Provider,{value:C},a&&r.createElement(ed,{slot:"top-chrome"},a),n&&r.createElement(ed,{slot:"middle-chrome"},n),s&&r.createElement(ed,{slot:"centered-chrome"},s),c&&r.createElement(ed,{slot:"centered-loading"},c),i,m&&r.createElement(ed,{slot:"menu"},m),y&&r.createElement(ed,{slot:"error"},y)))},e.VRButton=Z,e.VRCompass=$,e.VolumeRange=et,e.useCurrentTime=function(){var e=t.useContext(l),a=t.useState(e?e.currentTime:0),n=a[0],r=a[1],o=t.useCallback(function(t){var a=function(){r(e.currentTime),t()};return null==e||e.addEventListener(eN,a),function(){return null==e?void 0:e.removeEventListener(eN,a)}},[e]);return t.useSyncExternalStore(o,function(){return n},function(){return n})},e.useDuration=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(ek,t),function(){return null==e?void 0:e.removeEventListener(ek,t)}},[e]);return t.useSyncExternalStore(a,function(){return e?e.duration:NaN},function(){return NaN})},e.useMuted=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return!!e&&e.muted},function(){return!1})},e.usePaused=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(eb,t),function(){return null==e?void 0:e.removeEventListener(eb,t)}},[e]);return t.useSyncExternalStore(a,function(){return!e||e.paused},function(){return!0})},e.useSeeking=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(eB,t),function(){return null==e?void 0:e.removeEventListener(eB,t)}},[e]);return t.useSyncExternalStore(a,function(){return!!e&&e.seeking},function(){return!1})},e.useSource=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("sourcechange",t),function(){return null==e?void 0:e.removeEventListener("sourcechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return null==e?void 0:e.source},function(){})},e.useVolume=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]);return t.useSyncExternalStore(a,function(){return e?e.volume:1},function(){return 1})},e.version="2.3.0"},"object"==typeof exports&&"u">typeof module?t(exports,require("react"),require("@theoplayer/web-ui/es5")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui/es5"],t):t((e="u">typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI);
@@ -1 +1 @@
1
- import*as e from"react";import{createContext as t,useCallback as a,useSyncExternalStore as n,useEffect as r,useState as l,useContext as o}from"react";import{ControlBar as u,Button as s,LinkButton as i,PlayButton as m,MuteButton as c,SeekButton as d,TimeDisplay as y,DurationDisplay as p,RadioGroup as g,RadioButton as h,Menu as v,MenuGroup as N,MenuButton as C,CloseMenuButton as f,MediaTrackRadioButton as B,TrackRadioGroup as k,TextTrackRadioButton as R,TextTrackOffRadioButton as T,LanguageMenu as E,LanguageMenuButton as b,PlaybackRateRadioGroup as M,PlaybackRateMenuButton as D,PlaybackRateMenu as L,PlaybackRateDisplay as P,ActiveQualityDisplay as S,QualityRadioButton as x,QualityRadioGroup as A,TextTrackStyleRadioGroup as G,TextTrackStyleResetButton as w,TextTrackStyleDisplay as I,TextTrackStyleMenu as O,SettingsMenu as Q,SettingsMenuButton as U,FullscreenButton as j,TimeRange as V,VolumeRange as q,ErrorDisplay as F,CastButton as H,ChromecastButton as z,ChromecastDisplay as J,AirPlayButton as K,LoadingIndicator as W,GestureReceiver as X,PreviewTimeDisplay as Y,PreviewThumbnail as Z,LiveButton as $,SlotContainer as _,AdDisplay as ee,AdCountdown as et,AdClickThroughButton as ea,AdSkipButton as en,UIContainer as er,DefaultUI as el,THEOliveDefaultUI as eo}from"@theoplayer/web-ui/es5";import{createComponent as eu}from"@lit/react";var es=t(void 0);function ei(){return(ei=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(this,arguments)}function em(e,t){if(null==e)return{};var a,n,r={},l=Object.getOwnPropertyNames(e);for(n=0;n<l.length;n++)a=l[n],!(t.indexOf(a)>=0)&&Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a]);return r}function ec(e,t){var l=n(a(function(t){return null==e||e.addEventListener("theoplayerready",t),function(){return null==e?void 0:e.removeEventListener("theoplayerready",t)}},[e]),function(){return null==e?void 0:e.player},function(){});return r(function(){l&&(null==t||t(l))},[l,t]),r(function(){return function(){try{null==l||l.destroy()}catch(e){}}},[l]),l}var ed=eu({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:u,react:e}),ey={onClick:"click"},ep=eu({tagName:"theoplayer-button",displayName:"Button",elementClass:s,react:e,events:ey}),eg=eu({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:i,react:e,events:ey}),eh=eu({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:m,react:e,events:ey}),ev=eu({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:c,react:e,events:ey}),eN=eu({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:d,react:e,events:ey}),eC=eu({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:y,react:e}),ef=eu({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:p,react:e}),eB={onChange:"change"},ek=eu({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:g,react:e,events:eB}),eR=ei({},ey,{onChange:"change",onInput:"input"}),eT=eu({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:h,react:e,events:eR}),eE=function(t){var a=t.slot,n=t.children;return n?e.createElement("div",{slot:a,style:{display:"contents"},children:n}):null},eb=eu({tagName:"theoplayer-menu",displayName:"Menu",elementClass:v,react:e}),eM=function(t){var a=t.heading,n=t.children,r=em(t,["heading","children"]);return e.createElement(eb,r,e.createElement(eE,{slot:"heading"},a),n)},eD=eu({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:N,react:e}),eL=eu({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:C,react:e,events:ey}),eP=eu({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:f,react:e,events:ey}),eS=eu({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:B,react:e,events:eR}),ex=eu({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:k,react:e,events:eB}),eA=eu({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:R,react:e,events:eR}),eG=eu({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:T,react:e,events:eR}),ew=eu({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:E,react:e}),eI=function(t){var a=t.heading,n=t.children,r=em(t,["heading","children"]);return e.createElement(ew,r,e.createElement(eE,{slot:"heading"},a),n)},eO=eu({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:b,react:e,events:ey}),eQ=eu({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:M,react:e,events:eB}),eU=eu({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:D,react:e,events:ey}),ej=eu({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:L,react:e}),eV=function(t){var a=t.heading,n=t.children,r=em(t,["heading","children"]);return e.createElement(ej,r,e.createElement(eE,{slot:"heading"},a),n)},eq=eu({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:P,react:e}),eF=eu({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:S,react:e}),eH=eu({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:x,react:e,events:eR}),ez=eu({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:A,react:e,events:eB}),eJ=eu({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:G,react:e,events:eB}),eK=eu({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:w,react:e,events:ey}),eW=eu({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:I,react:e}),eX=eu({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:O,react:e}),eY=function(t){var a=t.heading,n=t.children,r=em(t,["heading","children"]);return e.createElement(eX,r,e.createElement(eE,{slot:"heading"},a),n)},eZ=eu({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:Q,react:e}),e$=function(t){var a=t.heading,n=t.children,r=em(t,["heading","children"]);return e.createElement(eZ,r,e.createElement(eE,{slot:"heading"},a),n)},e_=eu({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:U,react:e,events:ey}),e0=eu({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:j,react:e,events:ey}),e1={onChange:"change",onInput:"input"},e2=eu({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:V,react:e,events:e1}),e3=eu({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:q,react:e,events:e1}),e5=eu({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:F,react:e}),e4=eu({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:H,react:e,events:ey}),e6=eu({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:z,react:e,events:ey}),e7=eu({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:J,react:e}),e8=eu({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:K,react:e,events:ey}),e9=eu({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:W,react:e}),te=eu({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:X,react:e}),tt=eu({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:Y,react:e}),ta=eu({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:Z,react:e}),tn=eu({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:$,react:e,events:ey}),tr=eu({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:_,react:e}),tl=eu({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:ee,react:e}),to=eu({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:et,react:e}),tu=eu({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:ea,react:e,events:ey}),ts=eu({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:en,react:e,events:ey}),ti=eu({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:er,react:e,events:{onReady:"theoplayerready"}}),tm=function(t){var a=t.topChrome,n=t.middleChrome,r=t.bottomChrome,o=t.centeredChrome,u=t.centeredLoading,s=t.menu,i=t.error,m=t.onReady,c=em(t,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),d=l(null),y=d[0],p=d[1],g=ec(y,m);return e.createElement(ti,ei({},c,{ref:p}),e.createElement(es.Provider,{value:g},a&&e.createElement(tr,{slot:"top-chrome"},a),n&&e.createElement(tr,{slot:"middle-chrome"},n),o&&e.createElement(tr,{slot:"centered-chrome"},o),u&&e.createElement(tr,{slot:"centered-loading"},u),r,s&&e.createElement(tr,{slot:"menu"},s),i&&e.createElement(tr,{slot:"error"},i)))},tc=eu({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:el,react:e,events:{onReady:"theoplayerready"}}),td=function(t){var a=t.title,n=t.topControlBar,r=t.bottomControlBar,o=t.centeredChrome,u=t.menu,s=t.error,i=t.onReady,m=em(t,["title","topControlBar","bottomControlBar","centeredChrome","menu","error","onReady"]),c=l(null),d=c[0],y=c[1],p=ec(d,i);return e.createElement(tc,ei({},m,{ref:y}),e.createElement(es.Provider,{value:p},a&&e.createElement(tr,{slot:"title"},a),n&&e.createElement(tr,{slot:"top-control-bar"},n),r&&e.createElement(tr,{slot:"bottom-control-bar"},r),o&&e.createElement(tr,{slot:"centered-chrome"},o),u&&e.createElement(tr,{slot:"menu"},u),s&&e.createElement(tr,{slot:"error"},s)))},ty=eu({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:eo,react:e,events:{onReady:"theoplayerready"}}),tp=function(t){var a=t.loadingAnnouncement,n=t.offlineAnnouncement,r=t.onReady,o=em(t,["loadingAnnouncement","offlineAnnouncement","onReady"]),u=l(null),s=u[0],i=u[1],m=ec(s,r);return e.createElement(ty,ei({},o,{ref:i}),e.createElement(es.Provider,{value:m},a&&e.createElement(tr,{slot:"loading-announcement"},a),n&&e.createElement(tr,{slot:"offline-announcement"},n)))},tg=["timeupdate","seeking","seeked","emptied"];function th(){var e=o(es),t=l(e?e.currentTime:0),r=t[0],u=t[1];return n(a(function(t){var a=function(){u(e.currentTime),t()};return null==e||e.addEventListener(tg,a),function(){return null==e?void 0:e.removeEventListener(tg,a)}},[e]),function(){return r},function(){return r})}var tv=["durationchange","emptied"];function tN(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener(tv,t),function(){return null==e?void 0:e.removeEventListener(tv,t)}},[e]),function(){return e?e.duration:NaN},function(){return NaN})}function tC(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]),function(){return!!e&&e.muted},function(){return!1})}var tf=["play","pause"];function tB(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener(tf,t),function(){return null==e?void 0:e.removeEventListener(tf,t)}},[e]),function(){return!e||e.paused},function(){return!0})}var tk=["seeking","seeked","emptied"];function tR(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener(tk,t),function(){return null==e?void 0:e.removeEventListener(tk,t)}},[e]),function(){return!!e&&e.seeking},function(){return!1})}function tT(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener("sourcechange",t),function(){return null==e?void 0:e.removeEventListener("sourcechange",t)}},[e]),function(){return null==e?void 0:e.source},function(){})}function tE(){var e=o(es);return n(a(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]),function(){return e?e.volume:1},function(){return 1})}var tb="2.1.3";export{eF as ActiveQualityDisplay,tu as AdClickThroughButton,to as AdCountdown,tl as AdDisplay,ts as AdSkipButton,e8 as AirPlayButton,ep as Button,ey as ButtonEvents,e4 as CastButton,e6 as ChromecastButton,e7 as ChromecastDisplay,eP as CloseMenuButton,ed as ControlBar,td as DefaultUI,ef as DurationDisplay,e5 as ErrorDisplay,e0 as FullscreenButton,te as GestureReceiver,eI as LanguageMenu,eO as LanguageMenuButton,eg as LinkButton,tn as LiveButton,e9 as LoadingIndicator,eS as MediaTrackRadioButton,eM as Menu,eL as MenuButton,eD as MenuGroup,ev as MuteButton,eh as PlayButton,eq as PlaybackRateDisplay,eV as PlaybackRateMenu,eU as PlaybackRateMenuButton,eQ as PlaybackRateRadioGroup,es as PlayerContext,ta as PreviewThumbnail,tt as PreviewTimeDisplay,eH as QualityRadioButton,ez as QualityRadioGroup,eT as RadioButton,eR as RadioButtonEvents,ek as RadioGroup,eB as RadioGroupEvents,e1 as RangeEvents,eN as SeekButton,e$ as SettingsMenu,e_ as SettingsMenuButton,tr as SlotContainer,tp as THEOliveDefaultUI,eG as TextTrackOffRadioButton,eA as TextTrackRadioButton,eW as TextTrackStyleDisplay,eY as TextTrackStyleMenu,eJ as TextTrackStyleRadioGroup,eK as TextTrackStyleResetButton,eC as TimeDisplay,e2 as TimeRange,ex as TrackRadioGroup,tm as UIContainer,e3 as VolumeRange,th as useCurrentTime,tN as useDuration,tC as useMuted,tB as usePaused,tR as useSeeking,tT as useSource,tE as useVolume,tb as version};
1
+ import*as e from"react";import{createContext as t,useCallback as a,useSyncExternalStore as n,useEffect as r,useState as l,useContext as o}from"react";import{ControlBar as s,Button as u,LinkButton as i,PlayButton as m,MuteButton as c,SeekButton as d,TimeDisplay as y,DurationDisplay as p,RadioGroup as g,RadioButton as h,Menu as v,MenuGroup as N,MenuButton as C,CloseMenuButton as f,MediaTrackRadioButton as B,TrackRadioGroup as k,TextTrackRadioButton as R,TextTrackOffRadioButton as T,LanguageMenu as b,LanguageMenuButton as E,PlaybackRateRadioGroup as M,PlaybackRateMenuButton as D,PlaybackRateMenu as L,PlaybackRateDisplay as P,ActiveQualityDisplay as S,QualityRadioButton as x,QualityRadioGroup as A,TextTrackStyleRadioGroup as G,TextTrackStyleResetButton as w,TextTrackStyleDisplay as I,TextTrackStyleMenu as O,SettingsMenu as V,SettingsMenuButton as Q,FullscreenButton as U,VRButton as j,VRCompass as q,TimeRange as F,VolumeRange as H,ErrorDisplay as z,CastButton as J,ChromecastButton as K,ChromecastDisplay as W,AirPlayButton as X,LoadingIndicator as Y,GestureReceiver as Z,PreviewTimeDisplay as $,PreviewThumbnail as _,LiveButton as ee,SlotContainer as et,AdDisplay as ea,AdCountdown as en,AdClickThroughButton as er,AdSkipButton as el,UIContainer as eo,DefaultUI as es,THEOliveDefaultUI as eu}from"@theoplayer/web-ui/es5";export{addLocale}from"@theoplayer/web-ui/es5";import{createComponent as ei}from"@lit/react";var em=t(void 0);function ec(){return(ec=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(this,arguments)}function ed(e,t){if(null==e)return{};var a,n,r={},l=Object.getOwnPropertyNames(e);for(n=0;n<l.length;n++)a=l[n],!(t.indexOf(a)>=0)&&Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a]);return r}function ey(e,t){var l=n(a(function(t){return null==e||e.addEventListener("theoplayerready",t),function(){return null==e?void 0:e.removeEventListener("theoplayerready",t)}},[e]),function(){return null==e?void 0:e.player},function(){});return r(function(){l&&(null==t||t(l))},[l,t]),r(function(){return function(){try{null==l||l.destroy()}catch(e){}}},[l]),l}var ep=ei({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:s,react:e}),eg={onClick:"click"},eh=ei({tagName:"theoplayer-button",displayName:"Button",elementClass:u,react:e,events:eg}),ev=ei({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:i,react:e,events:eg}),eN=ei({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:m,react:e,events:eg}),eC=ei({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:c,react:e,events:eg}),ef=ei({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:d,react:e,events:eg}),eB=ei({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:y,react:e}),ek=ei({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:p,react:e}),eR={onChange:"change"},eT=ei({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:g,react:e,events:eR}),eb=ec({},eg,{onChange:"change",onInput:"input"}),eE=ei({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:h,react:e,events:eb}),eM=function(t){var a=t.slot,n=t.children;return n?e.createElement("div",{slot:a,style:{display:"contents"},children:n}):null},eD=ei({tagName:"theoplayer-menu",displayName:"Menu",elementClass:v,react:e}),eL=function(t){var a=t.heading,n=t.children,r=ed(t,["heading","children"]);return e.createElement(eD,r,e.createElement(eM,{slot:"heading"},a),n)},eP=ei({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:N,react:e}),eS=ei({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:C,react:e,events:eg}),ex=ei({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:f,react:e,events:eg}),eA=ei({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:B,react:e,events:eb}),eG=ei({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:k,react:e,events:eR}),ew=ei({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:R,react:e,events:eb}),eI=ei({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:T,react:e,events:eb}),eO=ei({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:b,react:e}),eV=function(t){var a=t.heading,n=t.children,r=ed(t,["heading","children"]);return e.createElement(eO,r,e.createElement(eM,{slot:"heading"},a),n)},eQ=ei({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:E,react:e,events:eg}),eU=ei({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:M,react:e,events:eR}),ej=ei({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:D,react:e,events:eg}),eq=ei({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:L,react:e}),eF=function(t){var a=t.heading,n=t.children,r=ed(t,["heading","children"]);return e.createElement(eq,r,e.createElement(eM,{slot:"heading"},a),n)},eH=ei({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:P,react:e}),ez=ei({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:S,react:e}),eJ=ei({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:x,react:e,events:eb}),eK=ei({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:A,react:e,events:eR}),eW=ei({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:G,react:e,events:eR}),eX=ei({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:w,react:e,events:eg}),eY=ei({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:I,react:e}),eZ=ei({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:O,react:e}),e$=function(t){var a=t.heading,n=t.children,r=ed(t,["heading","children"]);return e.createElement(eZ,r,e.createElement(eM,{slot:"heading"},a),n)},e_=ei({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:V,react:e}),e0=function(t){var a=t.heading,n=t.children,r=ed(t,["heading","children"]);return e.createElement(e_,r,e.createElement(eM,{slot:"heading"},a),n)},e1=ei({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:Q,react:e,events:eg}),e5=ei({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:U,react:e,events:eg}),e2=ei({tagName:"theoplayer-vr-button",displayName:"VRButton",elementClass:j,react:e,events:eg}),e3=ei({tagName:"theoplayer-vr-compass",displayName:"VRCompass",elementClass:q,react:e}),e4={onChange:"change",onInput:"input"},e6=ei({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:F,react:e,events:e4}),e7=ei({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:H,react:e,events:e4}),e8=ei({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:z,react:e}),e9=ei({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:J,react:e,events:eg}),te=ei({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:K,react:e,events:eg}),tt=ei({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:W,react:e}),ta=ei({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:X,react:e,events:eg}),tn=ei({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:Y,react:e}),tr=ei({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:Z,react:e}),tl=ei({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:$,react:e}),to=ei({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:_,react:e}),ts=ei({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:ee,react:e,events:eg}),tu=ei({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:et,react:e}),ti=ei({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:ea,react:e}),tm=ei({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:en,react:e}),tc=ei({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:er,react:e,events:eg}),td=ei({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:el,react:e,events:eg}),ty=ei({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:eo,react:e,events:{onReady:"theoplayerready"}}),tp=function(t){var a=t.topChrome,n=t.middleChrome,r=t.bottomChrome,o=t.centeredChrome,s=t.centeredLoading,u=t.menu,i=t.error,m=t.onReady,c=ed(t,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),d=l(null),y=d[0],p=d[1],g=ey(y,m);return e.createElement(ty,ec({},c,{ref:p}),e.createElement(em.Provider,{value:g},a&&e.createElement(tu,{slot:"top-chrome"},a),n&&e.createElement(tu,{slot:"middle-chrome"},n),o&&e.createElement(tu,{slot:"centered-chrome"},o),s&&e.createElement(tu,{slot:"centered-loading"},s),r,u&&e.createElement(tu,{slot:"menu"},u),i&&e.createElement(tu,{slot:"error"},i)))},tg=ei({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:es,react:e,events:{onReady:"theoplayerready"}}),th=function(t){var a=t.title,n=t.topControlBar,r=t.bottomControlBar,o=t.centeredChrome,s=t.menu,u=t.error,i=t.onReady,m=ed(t,["title","topControlBar","bottomControlBar","centeredChrome","menu","error","onReady"]),c=l(null),d=c[0],y=c[1],p=ey(d,i);return e.createElement(tg,ec({},m,{ref:y}),e.createElement(em.Provider,{value:p},a&&e.createElement(tu,{slot:"title"},a),n&&e.createElement(tu,{slot:"top-control-bar"},n),r&&e.createElement(tu,{slot:"bottom-control-bar"},r),o&&e.createElement(tu,{slot:"centered-chrome"},o),s&&e.createElement(tu,{slot:"menu"},s),u&&e.createElement(tu,{slot:"error"},u)))},tv=ei({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:eu,react:e,events:{onReady:"theoplayerready"}}),tN=function(t){var a=t.loadingAnnouncement,n=t.offlineAnnouncement,r=t.onReady,o=ed(t,["loadingAnnouncement","offlineAnnouncement","onReady"]),s=l(null),u=s[0],i=s[1],m=ey(u,r);return e.createElement(tv,ec({},o,{ref:i}),e.createElement(em.Provider,{value:m},a&&e.createElement(tu,{slot:"loading-announcement"},a),n&&e.createElement(tu,{slot:"offline-announcement"},n)))},tC=["timeupdate","seeking","seeked","emptied"];function tf(){var e=o(em),t=l(e?e.currentTime:0),r=t[0],s=t[1];return n(a(function(t){var a=function(){s(e.currentTime),t()};return null==e||e.addEventListener(tC,a),function(){return null==e?void 0:e.removeEventListener(tC,a)}},[e]),function(){return r},function(){return r})}var tB=["durationchange","emptied"];function tk(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener(tB,t),function(){return null==e?void 0:e.removeEventListener(tB,t)}},[e]),function(){return e?e.duration:NaN},function(){return NaN})}function tR(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]),function(){return!!e&&e.muted},function(){return!1})}var tT=["play","pause"];function tb(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener(tT,t),function(){return null==e?void 0:e.removeEventListener(tT,t)}},[e]),function(){return!e||e.paused},function(){return!0})}var tE=["seeking","seeked","emptied"];function tM(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener(tE,t),function(){return null==e?void 0:e.removeEventListener(tE,t)}},[e]),function(){return!!e&&e.seeking},function(){return!1})}function tD(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener("sourcechange",t),function(){return null==e?void 0:e.removeEventListener("sourcechange",t)}},[e]),function(){return null==e?void 0:e.source},function(){})}function tL(){var e=o(em);return n(a(function(t){return null==e||e.addEventListener("volumechange",t),function(){return null==e?void 0:e.removeEventListener("volumechange",t)}},[e]),function(){return e?e.volume:1},function(){return 1})}var tP="2.3.0";export{ez as ActiveQualityDisplay,tc as AdClickThroughButton,tm as AdCountdown,ti as AdDisplay,td as AdSkipButton,ta as AirPlayButton,eh as Button,eg as ButtonEvents,e9 as CastButton,te as ChromecastButton,tt as ChromecastDisplay,ex as CloseMenuButton,ep as ControlBar,th as DefaultUI,ek as DurationDisplay,e8 as ErrorDisplay,e5 as FullscreenButton,tr as GestureReceiver,eV as LanguageMenu,eQ as LanguageMenuButton,ev as LinkButton,ts as LiveButton,tn as LoadingIndicator,eA as MediaTrackRadioButton,eL as Menu,eS as MenuButton,eP as MenuGroup,eC as MuteButton,eN as PlayButton,eH as PlaybackRateDisplay,eF as PlaybackRateMenu,ej as PlaybackRateMenuButton,eU as PlaybackRateRadioGroup,em as PlayerContext,to as PreviewThumbnail,tl as PreviewTimeDisplay,eJ as QualityRadioButton,eK as QualityRadioGroup,eE as RadioButton,eb as RadioButtonEvents,eT as RadioGroup,eR as RadioGroupEvents,e4 as RangeEvents,ef as SeekButton,e0 as SettingsMenu,e1 as SettingsMenuButton,tu as SlotContainer,tN as THEOliveDefaultUI,eI as TextTrackOffRadioButton,ew as TextTrackRadioButton,eY as TextTrackStyleDisplay,e$ as TextTrackStyleMenu,eW as TextTrackStyleRadioGroup,eX as TextTrackStyleResetButton,eB as TimeDisplay,e6 as TimeRange,eG as TrackRadioGroup,tp as UIContainer,e2 as VRButton,e3 as VRCompass,e7 as VolumeRange,tf as useCurrentTime,tk as useDuration,tR as useMuted,tb as usePaused,tM as useSeeking,tD as useSource,tL as useVolume,tP as version};
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,a){"use strict";var n,l=(n=Object.create(null),t&&Object.keys(t).forEach(function(e){if("default"!==e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}}),n.default=t,Object.freeze(n));let r=t.createContext(void 0),o=new Set(["children","localName","ref","style","className"]),s=new WeakMap,u=(e,t,a,n,l)=>{let r,o,u=l?.[t];void 0===u?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):a!==n&&(void 0===(r=s.get(e))&&s.set(e,r=new Map),o=r.get(u),void 0!==a?void 0===o?(r.set(u,o={handleEvent:a}),e.addEventListener(u,o)):o.handleEvent=a:void 0!==o&&(r.delete(u),e.removeEventListener(u,o)))},i=({react:e,tagName:t,elementClass:a,events:n,displayName:l})=>{let r=new Set(Object.keys(n??{})),s=e.forwardRef((l,s)=>{let i=e.useRef(new Map),m=e.useRef(null),c={},y={};for(let[e,t]of Object.entries(l))o.has(e)?c["className"===e?"class":e]=t:r.has(e)||e in a.prototype?y[e]=t:c[e]=t;return e.useLayoutEffect(()=>{if(null===m.current)return;let e=new Map;for(let t in y)u(m.current,t,l[t],i.current.get(t),n),i.current.delete(t),e.set(t,l[t]);for(let[e,t]of i.current)u(m.current,e,void 0,t,n);i.current=e}),e.useLayoutEffect(()=>{m.current?.removeAttribute("defer-hydration")},[]),c.suppressHydrationWarning=!0,e.createElement(t,{...c,ref:e.useCallback(e=>{m.current=e,"function"==typeof s?s(e):null!==s&&(s.current=e)},[s])})});return s.displayName=l??a.name,s};function m(e,a){let n=t.useCallback(t=>(null==e||e.addEventListener("theoplayerready",t),()=>null==e?void 0:e.removeEventListener("theoplayerready",t)),[e]),l=t.useSyncExternalStore(n,()=>null==e?void 0:e.player,()=>void 0);return t.useEffect(()=>{l&&(null==a||a(l))},[l,a]),t.useEffect(()=>()=>{try{null==l||l.destroy()}catch{}},[l]),l}let c=i({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:l}),y={onClick:"click"},d=i({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:l,events:y}),p=i({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:l,events:y}),g=i({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:l,events:y}),v=i({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:l,events:y}),N=i({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:l,events:y}),h=i({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:l}),C=i({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:l}),k={onChange:"change"},E=i({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:l,events:k}),B={...y,onChange:"change",onInput:"input"},b=i({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:l,events:B}),f=({slot:e,children:t})=>t?l.createElement("div",{slot:e,style:{display:"contents"},children:t}):null,T=i({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:l}),R=i({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:l}),S=i({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:l,events:y}),M=i({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:l,events:y}),x=i({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:l,events:B}),D=i({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:l,events:k}),L=i({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:l,events:B}),P=i({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:l,events:B}),w=i({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:l}),G=i({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:l,events:y}),A=i({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:l,events:k}),I=i({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:l,events:y}),O=i({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:l}),U=i({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:l}),Q=i({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:l}),j=i({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:l,events:B}),H=i({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:l,events:k}),q=i({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:l,events:k}),V=i({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:l,events:y}),F=i({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:l}),W=i({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:l}),z=i({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:l}),J=i({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:l,events:y}),K=i({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:l,events:y}),X={onChange:"change",onInput:"input"},Y=i({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:l,events:X}),Z=i({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:l,events:X}),$=i({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:l}),_=i({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:l,events:y}),ee=i({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:l,events:y}),et=i({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:l}),ea=i({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:l,events:y}),en=i({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:l}),el=i({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:l}),er=i({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:l}),eo=i({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:l}),es=i({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:l,events:y}),eu=i({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:a.SlotContainer,react:l}),ei=i({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:l}),em=i({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:l}),ec=i({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:l,events:y}),ey=i({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:l,events:y}),ed=i({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:l,events:{onReady:"theoplayerready"}}),ep=i({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:l,events:{onReady:"theoplayerready"}}),eg=i({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:a.THEOliveDefaultUI,react:l,events:{onReady:"theoplayerready"}}),ev=["timeupdate","seeking","seeked","emptied"],eN=["durationchange","emptied"],eh=["play","pause"],eC=["seeking","seeked","emptied"];e.ActiveQualityDisplay=Q,e.AdClickThroughButton=ec,e.AdCountdown=em,e.AdDisplay=ei,e.AdSkipButton=ey,e.AirPlayButton=ea,e.Button=d,e.ButtonEvents=y,e.CastButton=_,e.ChromecastButton=ee,e.ChromecastDisplay=et,e.CloseMenuButton=M,e.ControlBar=c,e.DefaultUI=e=>{let{title:a,topControlBar:n,bottomControlBar:o,centeredChrome:s,menu:u,error:i,onReady:c,...y}=e,[d,p]=t.useState(null),g=m(d,c);return l.createElement(ep,{...y,ref:p},l.createElement(r.Provider,{value:g},a&&l.createElement(eu,{slot:"title"},a),n&&l.createElement(eu,{slot:"top-control-bar"},n),o&&l.createElement(eu,{slot:"bottom-control-bar"},o),s&&l.createElement(eu,{slot:"centered-chrome"},s),u&&l.createElement(eu,{slot:"menu"},u),i&&l.createElement(eu,{slot:"error"},i)))},e.DurationDisplay=C,e.ErrorDisplay=$,e.FullscreenButton=K,e.GestureReceiver=el,e.LanguageMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(w,n,l.createElement(f,{slot:"heading"},t),a)},e.LanguageMenuButton=G,e.LinkButton=p,e.LiveButton=es,e.LoadingIndicator=en,e.MediaTrackRadioButton=x,e.Menu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(T,n,l.createElement(f,{slot:"heading"},t),a)},e.MenuButton=S,e.MenuGroup=R,e.MuteButton=v,e.PlayButton=g,e.PlaybackRateDisplay=U,e.PlaybackRateMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(O,n,l.createElement(f,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=I,e.PlaybackRateRadioGroup=A,e.PlayerContext=r,e.PreviewThumbnail=eo,e.PreviewTimeDisplay=er,e.QualityRadioButton=j,e.QualityRadioGroup=H,e.RadioButton=b,e.RadioButtonEvents=B,e.RadioGroup=E,e.RadioGroupEvents=k,e.RangeEvents=X,e.SeekButton=N,e.SettingsMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(z,n,l.createElement(f,{slot:"heading"},t),a)},e.SettingsMenuButton=J,e.SlotContainer=eu,e.THEOliveDefaultUI=e=>{let{loadingAnnouncement:a,offlineAnnouncement:n,onReady:o,...s}=e,[u,i]=t.useState(null),c=m(u,o);return l.createElement(eg,{...s,ref:i},l.createElement(r.Provider,{value:c},a&&l.createElement(eu,{slot:"loading-announcement"},a),n&&l.createElement(eu,{slot:"offline-announcement"},n)))},e.TextTrackOffRadioButton=P,e.TextTrackRadioButton=L,e.TextTrackStyleDisplay=F,e.TextTrackStyleMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(W,n,l.createElement(f,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=q,e.TextTrackStyleResetButton=V,e.TimeDisplay=h,e.TimeRange=Y,e.TrackRadioGroup=D,e.UIContainer=e=>{let{topChrome:a,middleChrome:n,bottomChrome:o,centeredChrome:s,centeredLoading:u,menu:i,error:c,onReady:y,...d}=e,[p,g]=t.useState(null),v=m(p,y);return l.createElement(ed,{...d,ref:g},l.createElement(r.Provider,{value:v},a&&l.createElement(eu,{slot:"top-chrome"},a),n&&l.createElement(eu,{slot:"middle-chrome"},n),s&&l.createElement(eu,{slot:"centered-chrome"},s),u&&l.createElement(eu,{slot:"centered-loading"},u),o,i&&l.createElement(eu,{slot:"menu"},i),c&&l.createElement(eu,{slot:"error"},c)))},e.VolumeRange=Z,e.useCurrentTime=function(){let e=t.useContext(r),[a,n]=t.useState(e?e.currentTime:0),l=t.useCallback(t=>{let a=()=>{n(e.currentTime),t()};return null==e||e.addEventListener(ev,a),()=>null==e?void 0:e.removeEventListener(ev,a)},[e]);return t.useSyncExternalStore(l,()=>a,()=>a)},e.useDuration=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eN,t),()=>null==e?void 0:e.removeEventListener(eN,t)),[e]);return t.useSyncExternalStore(a,()=>e?e.duration:NaN,()=>NaN)},e.useMuted=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("volumechange",t),()=>null==e?void 0:e.removeEventListener("volumechange",t)),[e]);return t.useSyncExternalStore(a,()=>!!e&&e.muted,()=>!1)},e.usePaused=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eh,t),()=>null==e?void 0:e.removeEventListener(eh,t)),[e]);return t.useSyncExternalStore(a,()=>!e||e.paused,()=>!0)},e.useSeeking=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eC,t),()=>null==e?void 0:e.removeEventListener(eC,t)),[e]);return t.useSyncExternalStore(a,()=>!!e&&e.seeking,()=>!1)},e.useSource=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("sourcechange",t),()=>null==e?void 0:e.removeEventListener("sourcechange",t)),[e]);return t.useSyncExternalStore(a,()=>null==e?void 0:e.source,()=>void 0)},e.useVolume=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("volumechange",t),()=>null==e?void 0:e.removeEventListener("volumechange",t)),[e]);return t.useSyncExternalStore(a,()=>e?e.volume:1,()=>1)},e.version="2.1.3"},"object"==typeof exports&&"u">typeof module?t(exports,require("react"),require("@theoplayer/web-ui")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui"],t):t((e="u">typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI);
1
+ var e,t;e=this,t=function(e,t,a){"use strict";var n,l=(n=Object.create(null),t&&Object.keys(t).forEach(function(e){if("default"!==e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}}),n.default=t,Object.freeze(n));let r=t.createContext(void 0),o=new Set(["children","localName","ref","style","className"]),s=new WeakMap,u=(e,t,a,n,l)=>{let r,o,u=l?.[t];void 0===u?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):a!==n&&(void 0===(r=s.get(e))&&s.set(e,r=new Map),o=r.get(u),void 0!==a?void 0===o?(r.set(u,o={handleEvent:a}),e.addEventListener(u,o)):o.handleEvent=a:void 0!==o&&(r.delete(u),e.removeEventListener(u,o)))},i=({react:e,tagName:t,elementClass:a,events:n,displayName:l})=>{let r=new Set(Object.keys(n??{})),s=e.forwardRef((l,s)=>{let i=e.useRef(new Map),m=e.useRef(null),c={},y={};for(let[e,t]of Object.entries(l))o.has(e)?c["className"===e?"class":e]=t:r.has(e)||e in a.prototype?y[e]=t:c[e]=t;return e.useLayoutEffect(()=>{if(null===m.current)return;let e=new Map;for(let t in y)u(m.current,t,l[t],i.current.get(t),n),i.current.delete(t),e.set(t,l[t]);for(let[e,t]of i.current)u(m.current,e,void 0,t,n);i.current=e}),e.useLayoutEffect(()=>{m.current?.removeAttribute("defer-hydration")},[]),c.suppressHydrationWarning=!0,e.createElement(t,{...c,ref:e.useCallback(e=>{m.current=e,"function"==typeof s?s(e):null!==s&&(s.current=e)},[s])})});return s.displayName=l??a.name,s};function m(e,a){let n=t.useCallback(t=>(null==e||e.addEventListener("theoplayerready",t),()=>null==e?void 0:e.removeEventListener("theoplayerready",t)),[e]),l=t.useSyncExternalStore(n,()=>null==e?void 0:e.player,()=>void 0);return t.useEffect(()=>{l&&(null==a||a(l))},[l,a]),t.useEffect(()=>()=>{try{null==l||l.destroy()}catch{}},[l]),l}let c=i({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:l}),y={onClick:"click"},d=i({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:l,events:y}),p=i({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:l,events:y}),g=i({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:l,events:y}),v=i({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:l,events:y}),N=i({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:l,events:y}),h=i({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:l}),C=i({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:l}),k={onChange:"change"},E=i({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:l,events:k}),B={...y,onChange:"change",onInput:"input"},b=i({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:l,events:B}),f=({slot:e,children:t})=>t?l.createElement("div",{slot:e,style:{display:"contents"},children:t}):null,R=i({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:l}),T=i({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:l}),S=i({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:l,events:y}),M=i({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:l,events:y}),x=i({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:l,events:B}),D=i({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:l,events:k}),L=i({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:l,events:B}),P=i({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:l,events:B}),w=i({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:l}),G=i({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:l,events:y}),A=i({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:l,events:k}),O=i({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:l,events:y}),I=i({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:l}),U=i({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:l}),V=i({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:l}),j=i({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:l,events:B}),Q=i({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:l,events:k}),H=i({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:l,events:k}),q=i({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:l,events:y}),F=i({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:l}),W=i({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:l}),z=i({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:l}),J=i({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:l,events:y}),K=i({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:l,events:y}),X=i({tagName:"theoplayer-vr-button",displayName:"VRButton",elementClass:a.VRButton,react:l,events:y}),Y=i({tagName:"theoplayer-vr-compass",displayName:"VRCompass",elementClass:a.VRCompass,react:l}),Z={onChange:"change",onInput:"input"},$=i({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:l,events:Z}),_=i({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:l,events:Z}),ee=i({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:l}),et=i({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:l,events:y}),ea=i({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:l,events:y}),en=i({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:l}),el=i({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:l,events:y}),er=i({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:l}),eo=i({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:l}),es=i({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:l}),eu=i({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:l}),ei=i({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:l,events:y}),em=i({tagName:"theoplayer-slot-container",displayName:"SlotContainer",elementClass:a.SlotContainer,react:l}),ec=i({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:l}),ey=i({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:l}),ed=i({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:l,events:y}),ep=i({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:l,events:y}),eg=i({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:l,events:{onReady:"theoplayerready"}}),ev=i({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:l,events:{onReady:"theoplayerready"}}),eN=i({tagName:"theolive-default-ui",displayName:"THEOliveDefaultUI",elementClass:a.THEOliveDefaultUI,react:l,events:{onReady:"theoplayerready"}}),eh=["timeupdate","seeking","seeked","emptied"],eC=["durationchange","emptied"],ek=["play","pause"],eE=["seeking","seeked","emptied"];Object.defineProperty(e,"addLocale",{enumerable:!0,get:function(){return a.addLocale}}),e.ActiveQualityDisplay=V,e.AdClickThroughButton=ed,e.AdCountdown=ey,e.AdDisplay=ec,e.AdSkipButton=ep,e.AirPlayButton=el,e.Button=d,e.ButtonEvents=y,e.CastButton=et,e.ChromecastButton=ea,e.ChromecastDisplay=en,e.CloseMenuButton=M,e.ControlBar=c,e.DefaultUI=e=>{let{title:a,topControlBar:n,bottomControlBar:o,centeredChrome:s,menu:u,error:i,onReady:c,...y}=e,[d,p]=t.useState(null),g=m(d,c);return l.createElement(ev,{...y,ref:p},l.createElement(r.Provider,{value:g},a&&l.createElement(em,{slot:"title"},a),n&&l.createElement(em,{slot:"top-control-bar"},n),o&&l.createElement(em,{slot:"bottom-control-bar"},o),s&&l.createElement(em,{slot:"centered-chrome"},s),u&&l.createElement(em,{slot:"menu"},u),i&&l.createElement(em,{slot:"error"},i)))},e.DurationDisplay=C,e.ErrorDisplay=ee,e.FullscreenButton=K,e.GestureReceiver=eo,e.LanguageMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(w,n,l.createElement(f,{slot:"heading"},t),a)},e.LanguageMenuButton=G,e.LinkButton=p,e.LiveButton=ei,e.LoadingIndicator=er,e.MediaTrackRadioButton=x,e.Menu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(R,n,l.createElement(f,{slot:"heading"},t),a)},e.MenuButton=S,e.MenuGroup=T,e.MuteButton=v,e.PlayButton=g,e.PlaybackRateDisplay=U,e.PlaybackRateMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(I,n,l.createElement(f,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=O,e.PlaybackRateRadioGroup=A,e.PlayerContext=r,e.PreviewThumbnail=eu,e.PreviewTimeDisplay=es,e.QualityRadioButton=j,e.QualityRadioGroup=Q,e.RadioButton=b,e.RadioButtonEvents=B,e.RadioGroup=E,e.RadioGroupEvents=k,e.RangeEvents=Z,e.SeekButton=N,e.SettingsMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(z,n,l.createElement(f,{slot:"heading"},t),a)},e.SettingsMenuButton=J,e.SlotContainer=em,e.THEOliveDefaultUI=e=>{let{loadingAnnouncement:a,offlineAnnouncement:n,onReady:o,...s}=e,[u,i]=t.useState(null),c=m(u,o);return l.createElement(eN,{...s,ref:i},l.createElement(r.Provider,{value:c},a&&l.createElement(em,{slot:"loading-announcement"},a),n&&l.createElement(em,{slot:"offline-announcement"},n)))},e.TextTrackOffRadioButton=P,e.TextTrackRadioButton=L,e.TextTrackStyleDisplay=F,e.TextTrackStyleMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(W,n,l.createElement(f,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=H,e.TextTrackStyleResetButton=q,e.TimeDisplay=h,e.TimeRange=$,e.TrackRadioGroup=D,e.UIContainer=e=>{let{topChrome:a,middleChrome:n,bottomChrome:o,centeredChrome:s,centeredLoading:u,menu:i,error:c,onReady:y,...d}=e,[p,g]=t.useState(null),v=m(p,y);return l.createElement(eg,{...d,ref:g},l.createElement(r.Provider,{value:v},a&&l.createElement(em,{slot:"top-chrome"},a),n&&l.createElement(em,{slot:"middle-chrome"},n),s&&l.createElement(em,{slot:"centered-chrome"},s),u&&l.createElement(em,{slot:"centered-loading"},u),o,i&&l.createElement(em,{slot:"menu"},i),c&&l.createElement(em,{slot:"error"},c)))},e.VRButton=X,e.VRCompass=Y,e.VolumeRange=_,e.useCurrentTime=function(){let e=t.useContext(r),[a,n]=t.useState(e?e.currentTime:0),l=t.useCallback(t=>{let a=()=>{n(e.currentTime),t()};return null==e||e.addEventListener(eh,a),()=>null==e?void 0:e.removeEventListener(eh,a)},[e]);return t.useSyncExternalStore(l,()=>a,()=>a)},e.useDuration=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eC,t),()=>null==e?void 0:e.removeEventListener(eC,t)),[e]);return t.useSyncExternalStore(a,()=>e?e.duration:NaN,()=>NaN)},e.useMuted=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("volumechange",t),()=>null==e?void 0:e.removeEventListener("volumechange",t)),[e]);return t.useSyncExternalStore(a,()=>!!e&&e.muted,()=>!1)},e.usePaused=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(ek,t),()=>null==e?void 0:e.removeEventListener(ek,t)),[e]);return t.useSyncExternalStore(a,()=>!e||e.paused,()=>!0)},e.useSeeking=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eE,t),()=>null==e?void 0:e.removeEventListener(eE,t)),[e]);return t.useSyncExternalStore(a,()=>!!e&&e.seeking,()=>!1)},e.useSource=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("sourcechange",t),()=>null==e?void 0:e.removeEventListener("sourcechange",t)),[e]);return t.useSyncExternalStore(a,()=>null==e?void 0:e.source,()=>void 0)},e.useVolume=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener("volumechange",t),()=>null==e?void 0:e.removeEventListener("volumechange",t)),[e]);return t.useSyncExternalStore(a,()=>e?e.volume:1,()=>1)},e.version="2.3.0"},"object"==typeof exports&&"u">typeof module?t(exports,require("react"),require("@theoplayer/web-ui")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui"],t):t((e="u">typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI);
2
2
  //# sourceMappingURL=THEOplayerReactUI.js.map