@theoplayer/react-ui 1.6.0 → 1.7.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 +9 -0
- package/dist/THEOplayerReactUI.d.ts +92 -14
- package/dist/THEOplayerReactUI.es5.js +3 -3
- package/dist/THEOplayerReactUI.es5.mjs +2 -2
- package/dist/THEOplayerReactUI.js +2 -2
- package/dist/THEOplayerReactUI.js.map +1 -1
- package/dist/THEOplayerReactUI.mjs +1 -1
- package/dist/THEOplayerReactUI.mjs.map +1 -1
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,15 @@
|
|
|
10
10
|
> - 🏠 Internal
|
|
11
11
|
> - 💅 Polish
|
|
12
12
|
|
|
13
|
+
## v1.7.0 (2024-02-15)
|
|
14
|
+
|
|
15
|
+
- 🚀 Added support for loading in Node for static site generation (SSG) or server-side rendering (SSR). ([#50](https://github.com/THEOplayer/web-ui/pull/50))
|
|
16
|
+
- This allows you to pass React components (such as `<DefaultUI>`, `<UIContainer>` or `<PlayButton>`) to the [Server React DOM APIs](https://react.dev/reference/react-dom/server), or to use them with a framework that supports SSG or SSR (such as Next.js, Remix or Gatsby).
|
|
17
|
+
- ⚠️ The rendered HTML must still be [hydrated](https://react.dev/reference/react-dom/client/hydrateRoot#hydrating-server-rendered-html) on the client to load the Open Video UI properly. (Usually, this handled automatically by your React framework.)
|
|
18
|
+
- 🚀 Added utility hooks such as `useCurrentTime()`, `usePaused()` and `useVolume()`. ([#51](https://github.com/THEOplayer/web-ui/pull/51))
|
|
19
|
+
- See [the API documentation](https://theoplayer.github.io/web-ui/react-api/) for more information.
|
|
20
|
+
- 🏠 See changes to [Open Video UI for Web v1.7.0](https://github.com/THEOplayer/web-ui/blob/v1.7.0/CHANGELOG.md)
|
|
21
|
+
|
|
13
22
|
## v1.6.0 (2024-02-08)
|
|
14
23
|
|
|
15
24
|
- 🚀 Initial release
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* THEOplayer Open Video UI for React (v1.
|
|
2
|
+
* THEOplayer Open Video UI for React (v1.7.0)
|
|
3
3
|
* License: MIT
|
|
4
4
|
*/
|
|
5
5
|
import * as react from 'react';
|
|
@@ -9,6 +9,7 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
9
9
|
import { UIContainer as UIContainer$1, DefaultUI as DefaultUI$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, AdDisplay as AdDisplay$1, AdCountdown as AdCountdown$1, AdClickThroughButton as AdClickThroughButton$1, AdSkipButton as AdSkipButton$1 } from '@theoplayer/web-ui';
|
|
10
10
|
import * as _lit_react from '@lit/react';
|
|
11
11
|
import { WebComponentProps } from '@lit/react';
|
|
12
|
+
import { SourceDescription } from 'theoplayer';
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* The {@link theoplayer!ChromelessPlayer | ChromelessPlayer} instance of the parent {@link DefaultUI} or {@link UIContainer}.
|
|
@@ -16,7 +17,7 @@ import { WebComponentProps } from '@lit/react';
|
|
|
16
17
|
* This can be used to access the backing player's state and add event listeners from within a custom React component.
|
|
17
18
|
* The component *must* be a child of {@link DefaultUI} or {@link UIContainer} in order to receive the context.
|
|
18
19
|
* ```jsx
|
|
19
|
-
* import { useContext,
|
|
20
|
+
* import { useCallback, useContext, useSyncExternalStore } from 'react';
|
|
20
21
|
* import { PlayerContext } from '@theoplayer/react-ui';
|
|
21
22
|
*
|
|
22
23
|
* const MyCustomComponent = () => {
|
|
@@ -24,17 +25,24 @@ import { WebComponentProps } from '@lit/react';
|
|
|
24
25
|
* const player = useContext(PlayerContext);
|
|
25
26
|
*
|
|
26
27
|
* // Track the paused state of the player
|
|
27
|
-
* const
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
28
|
+
* const subscribe = useCallback(
|
|
29
|
+
* (callback) => {
|
|
30
|
+
* player?.addEventListener(['play', 'pause'], callback);
|
|
31
|
+
* return () => {
|
|
32
|
+
* player?.removeEventListener(['play', 'pause'], callback);
|
|
33
|
+
* };
|
|
34
|
+
* },
|
|
35
|
+
* [player]
|
|
36
|
+
* );
|
|
37
|
+
* const paused = useSyncExternalStore(
|
|
38
|
+
* subscribe,
|
|
39
|
+
* () => player?.paused ?? true,
|
|
40
|
+
* () => true
|
|
41
|
+
* );
|
|
42
|
+
*
|
|
43
|
+
* // Alternatively, you can use the built-in hook:
|
|
44
|
+
* // import { usePaused } from '@theoplayer/react-ui';
|
|
45
|
+
* // const paused = usePaused();
|
|
38
46
|
*
|
|
39
47
|
* // Show the paused state in your UI
|
|
40
48
|
* return <p>Player is {paused ? "paused" : "playing"}</p>
|
|
@@ -680,5 +688,75 @@ declare const AdSkipButton: _lit_react.ReactWebComponent<AdSkipButton$1, {
|
|
|
680
688
|
readonly onClick: "click";
|
|
681
689
|
}>;
|
|
682
690
|
|
|
683
|
-
|
|
691
|
+
/**
|
|
692
|
+
* Returns {@link theoplayer!ChromelessPlayer.currentTime | the player's current time}, automatically updating whenever it changes.
|
|
693
|
+
*
|
|
694
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
695
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
696
|
+
*
|
|
697
|
+
* @group Hooks
|
|
698
|
+
*/
|
|
699
|
+
declare function useCurrentTime(): number;
|
|
700
|
+
|
|
701
|
+
/**
|
|
702
|
+
* Returns {@link theoplayer!ChromelessPlayer.duration | the player's duration}, automatically updating whenever it changes.
|
|
703
|
+
*
|
|
704
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
705
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
706
|
+
*
|
|
707
|
+
* @group Hooks
|
|
708
|
+
*/
|
|
709
|
+
declare function useDuration(): number;
|
|
710
|
+
|
|
711
|
+
/**
|
|
712
|
+
* Returns {@link theoplayer!ChromelessPlayer.muted | the player's muted state}, automatically updating whenever it changes.
|
|
713
|
+
*
|
|
714
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
715
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
716
|
+
*
|
|
717
|
+
* @group Hooks
|
|
718
|
+
*/
|
|
719
|
+
declare function useMuted(): boolean;
|
|
720
|
+
|
|
721
|
+
/**
|
|
722
|
+
* Returns {@link theoplayer!ChromelessPlayer.paused | the player's paused state}, automatically updating whenever it changes.
|
|
723
|
+
*
|
|
724
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
725
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
726
|
+
*
|
|
727
|
+
* @group Hooks
|
|
728
|
+
*/
|
|
729
|
+
declare function usePaused(): boolean;
|
|
730
|
+
|
|
731
|
+
/**
|
|
732
|
+
* Returns {@link theoplayer!ChromelessPlayer.seeking | the player's seeking state}, automatically updating whenever it changes.
|
|
733
|
+
*
|
|
734
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
735
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
736
|
+
*
|
|
737
|
+
* @group Hooks
|
|
738
|
+
*/
|
|
739
|
+
declare function useSeeking(): boolean;
|
|
740
|
+
|
|
741
|
+
/**
|
|
742
|
+
* Returns {@link theoplayer!ChromelessPlayer.source | the player's source}, automatically updating whenever it changes.
|
|
743
|
+
*
|
|
744
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
745
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
746
|
+
*
|
|
747
|
+
* @group Hooks
|
|
748
|
+
*/
|
|
749
|
+
declare function useSource(): SourceDescription | undefined;
|
|
750
|
+
|
|
751
|
+
/**
|
|
752
|
+
* Returns {@link theoplayer!ChromelessPlayer.volume | the player's volume}, automatically updating whenever it changes.
|
|
753
|
+
*
|
|
754
|
+
* This hook must only be used in a component mounted inside a {@link DefaultUI} or {@link UIContainer},
|
|
755
|
+
* or alternatively any other component that provides a {@link PlayerContext}.
|
|
756
|
+
*
|
|
757
|
+
* @group Hooks
|
|
758
|
+
*/
|
|
759
|
+
declare function useVolume(): number;
|
|
760
|
+
|
|
761
|
+
export { ActiveQualityDisplay, AdClickThroughButton, AdCountdown, AdDisplay, AdSkipButton, AirPlayButton, Button, ButtonEvents, CastButton, ChromecastButton, ChromecastDisplay, CloseMenuButton, CommonMenuProps, ControlBar, DefaultUI, DefaultUIProps, DurationDisplay, ErrorDisplay, FullscreenButton, GestureReceiver, LanguageMenu, LanguageMenuButton, LanguageMenuProps, LinkButton, LiveButton, LoadingIndicator, MediaTrackRadioButton, Menu, MenuButton, MenuGroup, MenuProps, MuteButton, PlayButton, PlaybackRateDisplay, PlaybackRateMenu, PlaybackRateMenuButton, PlaybackRateMenuProps, PlaybackRateRadioGroup, PlayerContext, PreviewThumbnail, PreviewTimeDisplay, QualityRadioButton, QualityRadioGroup, RadioButton, RadioButtonEvents, RadioGroup, RadioGroupEvents, RangeEvents, SeekButton, SettingsMenu, SettingsMenuButton, SettingsMenuProps, TextTrackOffRadioButton, TextTrackRadioButton, TextTrackStyleDisplay, TextTrackStyleMenu, TextTrackStyleMenuProps, TextTrackStyleRadioGroup, TextTrackStyleResetButton, TimeDisplay, TimeRange, TrackRadioGroup, UIContainer, UIContainerProps, VolumeRange, useCurrentTime, useDuration, useMuted, usePaused, useSeeking, useSource, useVolume };
|
|
684
762
|
export as namespace THEOplayerReactUI;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* THEOplayer Open Video UI for React (v1.
|
|
2
|
+
* THEOplayer Open Video UI for React (v1.7.0)
|
|
3
3
|
* License: MIT
|
|
4
|
-
*/!function(e,t){"object"==typeof exports&&"undefined"!=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="undefined"!=typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI)}(this,function(e,t,a){"use strict";var n,
|
|
4
|
+
*/!function(e,t){"object"==typeof exports&&"undefined"!=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="undefined"!=typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI)}(this,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.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}/**
|
|
5
5
|
* @license
|
|
6
6
|
* Copyright 2018 Google LLC
|
|
7
7
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
8
|
-
*/let i=new Set(["children","localName","ref","style","className"]),u=new WeakMap,m=(e,t,a,n,l)=>{let r,o;let s=l?.[t];void 0===s||a===n?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(void 0===(r=u.get(e))&&u.set(e,r=new Map),o=r.get(s),void 0!==a?void 0===o?(r.set(s,o={handleEvent:a}),e.addEventListener(s,o)):o.handleEvent=a:void 0!==o&&(r.delete(s),e.removeEventListener(s,o)))},c=({react:e,tagName:t,elementClass:a,events:n,displayName:l})=>{let r=new Set(Object.keys(n??{})),o=e.forwardRef((l,o)=>{let s=e.useRef(null),u=e.useRef(null),c={},y={};for(let[e,t]of Object.entries(l))i.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!==u.current){for(let e in y)m(u.current,e,l[e],s.current?s.current[e]:void 0,n);s.current=l}}),e.useLayoutEffect(()=>{u.current?.removeAttribute("defer-hydration")},[]),c.suppressHydrationWarning=!0,e.createElement(t,{...c,ref:e.useCallback(e=>{u.current=e,"function"==typeof o?o(e):null!==o&&(o.current=e)},[o])})});return o.displayName=l??a.name,o};function y(e){var a=t.useState(null),n=a[0],l=a[1],r=t.useState(void 0),o=r[0],s=r[1];t.useEffect(function(){s(null==n?void 0:n.player)},[n]);var i=t.useCallback(function(e){s(null==n?void 0:n.player)},[n]);return t.useEffect(function(){o&&(null==e||e(o))},[o,e]),{player:o,setUi:l,onReadyHandler:i}}var d=function(e){var t=e.slot,a=e.children;return a?l.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},p=function(e){var a=e.slot,n=e.children;return n?t.Children.map(n,function(e){return t.isValidElement(e)?e.type===t.Fragment?t.cloneElement(e,void 0,l.createElement(p,{slot:a,children:e.props.children})):t.cloneElement(e,{slot:a}):l.createElement(d,{slot:a,children:e})}):null},h=c({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:l,events:{onReady:"theoplayerready"}}),g=c({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:l,events:{onReady:"theoplayerready"}}),N=c({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:l}),v={onClick:"click"},C=c({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:l,events:v}),f=c({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:l,events:v}),B=c({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:l,events:v}),R=c({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:l,events:v}),k=c({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:l,events:v}),b=c({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:l}),T=c({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:l}),E={onChange:"change"},M=c({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:l,events:E}),D=o({},v,{onChange:"change",onInput:"input"}),x=c({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:l,events:D}),P=c({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:l}),S=c({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:l}),G=c({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:l,events:v}),L=c({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:l,events:v}),w=c({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:l,events:D}),A=c({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:l,events:E}),O=c({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:l,events:D}),I=c({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:l,events:D}),j=c({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:l}),U=c({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:l,events:v}),Q=c({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:l,events:E}),H=c({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:l,events:v}),q=c({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:l}),F=c({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:l}),V=c({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:l}),W=c({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:l,events:D}),z=c({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:l,events:E}),J=c({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:l,events:E}),K=c({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:l,events:v}),X=c({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:l}),Y=c({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:l}),Z=c({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:l}),$=c({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:l,events:v}),_=c({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:l,events:v}),ee={onChange:"change",onInput:"input"},et=c({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:l,events:ee}),ea=c({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:l,events:ee}),en=c({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:l}),el=c({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:l,events:v}),er=c({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:l,events:v}),eo=c({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:l}),es=c({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:l,events:v}),ei=c({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:l}),eu=c({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:l}),em=c({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:l}),ec=c({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:l}),ey=c({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:l,events:v}),ed=c({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:l}),ep=c({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:l}),eh=c({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:l,events:v}),eg=c({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:l,events:v});e.ActiveQualityDisplay=V,e.AdClickThroughButton=eh,e.AdCountdown=ep,e.AdDisplay=ed,e.AdSkipButton=eg,e.AirPlayButton=es,e.Button=C,e.ButtonEvents=v,e.CastButton=el,e.ChromecastButton=er,e.ChromecastDisplay=eo,e.CloseMenuButton=L,e.ControlBar=N,e.DefaultUI=function(e){var t=e.title,a=e.topControlBar,n=e.bottomControlBar,i=e.menu,u=e.onReady,m=s(e,["title","topControlBar","bottomControlBar","menu","onReady"]),c=y(u),h=c.player,N=c.setUi,v=c.onReadyHandler;return l.createElement(g,o({},m,{ref:N,onReady:v}),l.createElement(r.Provider,{value:h},l.createElement(d,{slot:"title"},t),l.createElement(d,{slot:"top-control-bar"},a),l.createElement(d,{slot:"bottom-control-bar"},n),l.createElement(p,{slot:"menu"},i)))},e.DurationDisplay=T,e.ErrorDisplay=en,e.FullscreenButton=_,e.GestureReceiver=eu,e.LanguageMenu=function(e){var t=e.heading,a=e.children,n=s(e,["heading","children"]);return l.createElement(j,n,l.createElement(d,{slot:"heading"},t),a)},e.LanguageMenuButton=U,e.LinkButton=f,e.LiveButton=ey,e.LoadingIndicator=ei,e.MediaTrackRadioButton=w,e.Menu=function(e){var t=e.heading,a=e.children,n=s(e,["heading","children"]);return l.createElement(P,n,l.createElement(d,{slot:"heading"},t),a)},e.MenuButton=G,e.MenuGroup=S,e.MuteButton=R,e.PlayButton=B,e.PlaybackRateDisplay=F,e.PlaybackRateMenu=function(e){var t=e.heading,a=e.children,n=s(e,["heading","children"]);return l.createElement(q,n,l.createElement(d,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=H,e.PlaybackRateRadioGroup=Q,e.PlayerContext=r,e.PreviewThumbnail=ec,e.PreviewTimeDisplay=em,e.QualityRadioButton=W,e.QualityRadioGroup=z,e.RadioButton=x,e.RadioButtonEvents=D,e.RadioGroup=M,e.RadioGroupEvents=E,e.RangeEvents=ee,e.SeekButton=k,e.SettingsMenu=function(e){var t=e.heading,a=e.children,n=s(e,["heading","children"]);return l.createElement(Z,n,l.createElement(d,{slot:"heading"},t),a)},e.SettingsMenuButton=$,e.TextTrackOffRadioButton=I,e.TextTrackRadioButton=O,e.TextTrackStyleDisplay=X,e.TextTrackStyleMenu=function(e){var t=e.heading,a=e.children,n=s(e,["heading","children"]);return l.createElement(Y,n,l.createElement(d,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=J,e.TextTrackStyleResetButton=K,e.TimeDisplay=b,e.TimeRange=et,e.TrackRadioGroup=A,e.UIContainer=function(e){var t=e.topChrome,a=e.middleChrome,n=e.bottomChrome,i=e.centeredChrome,u=e.centeredLoading,m=e.menu,c=e.error,g=e.onReady,N=s(e,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),v=y(g),C=v.player,f=v.setUi,B=v.onReadyHandler;return l.createElement(h,o({},N,{ref:f,onReady:B}),l.createElement(r.Provider,{value:C},l.createElement(d,{slot:"top-chrome"},t),l.createElement(d,{slot:"middle-chrome"},a),l.createElement(d,{slot:"centered-chrome"},i),l.createElement(d,{slot:"centered-loading"},u),n,l.createElement(p,{slot:"menu"},m),l.createElement(d,{slot:"error"},c)))},e.VolumeRange=ea});
|
|
8
|
+
*/let i=new Set(["children","localName","ref","style","className"]),s=new WeakMap,c=(e,t,a,n,r)=>{let l,o;let u=r?.[t];void 0===u||a===n?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(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(null),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){for(let e in d)c(s.current,e,r[e],u.current?u.current[e]:void 0,n);u.current=r}}),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]),r}var y=function(e){var t=e.slot,a=e.children;return a?r.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},p=function(e){var a=e.slot,n=e.children;return n?t.Children.map(n,function(e){return t.isValidElement(e)?e.type===t.Fragment?t.cloneElement(e,void 0,r.createElement(p,{slot:a,children:e.props.children})):t.cloneElement(e,{slot:a}):r.createElement(y,{slot:a,children:e})}):null},g=m({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:r,events:{onReady:"theoplayerready"}}),h=m({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:r,events:{onReady:"theoplayerready"}}),v=m({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:r}),f={onClick:"click"},N=m({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:r,events:f}),C=m({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:r,events:f}),k=m({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:r,events:f}),b=m({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:r,events:f}),B=m({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:r,events:f}),E=m({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:r}),R=m({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:r}),T={onChange:"change"},S=m({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:r,events:T}),x=o({},f,{onChange:"change",onInput:"input"}),M=m({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:r,events:x}),L=m({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:r}),D=m({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:r}),P=m({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:r,events:f}),G=m({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:r,events:f}),w=m({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:r,events:x}),A=m({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:r,events:T}),O=m({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:r,events:x}),I=m({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:r,events:x}),j=m({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:r}),Q=m({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:r,events:f}),U=m({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:r,events:T}),q=m({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:r,events:f}),V=m({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:r}),F=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}),W=m({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:r,events:x}),z=m({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:r,events:T}),J=m({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:r,events:T}),K=m({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:r,events:f}),X=m({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:r}),Y=m({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:r}),Z=m({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:r}),$=m({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:r,events:f}),_=m({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:r,events:f}),ee={onChange:"change",onInput:"input"},et=m({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:r,events:ee}),ea=m({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:r,events:ee}),en=m({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:r}),er=m({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:r,events:f}),el=m({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:r,events:f}),eo=m({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:r}),eu=m({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:r,events:f}),ei=m({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:r}),es=m({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:r}),ec=m({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:r}),em=m({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:r}),ed=m({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:r,events:f}),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:f}),eh=m({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:r,events:f}),ev=["timeupdate","seeking","seeked","emptied"],ef=["durationchange","emptied"],eN=["play","pause"],eC=["seeking","seeked","emptied"];e.ActiveQualityDisplay=H,e.AdClickThroughButton=eg,e.AdCountdown=ep,e.AdDisplay=ey,e.AdSkipButton=eh,e.AirPlayButton=eu,e.Button=N,e.ButtonEvents=f,e.CastButton=er,e.ChromecastButton=el,e.ChromecastDisplay=eo,e.CloseMenuButton=G,e.ControlBar=v,e.DefaultUI=function(e){var a=e.title,n=e.topControlBar,i=e.bottomControlBar,s=e.menu,c=e.onReady,m=u(e,["title","topControlBar","bottomControlBar","menu","onReady"]),g=t.useState(null),v=g[0],f=g[1],N=d(v,c);return r.createElement(h,o({},m,{ref:f}),r.createElement(l.Provider,{value:N},r.createElement(y,{slot:"title"},a),r.createElement(y,{slot:"top-control-bar"},n),r.createElement(y,{slot:"bottom-control-bar"},i),r.createElement(p,{slot:"menu"},s)))},e.DurationDisplay=R,e.ErrorDisplay=en,e.FullscreenButton=_,e.GestureReceiver=es,e.LanguageMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(j,n,r.createElement(y,{slot:"heading"},t),a)},e.LanguageMenuButton=Q,e.LinkButton=C,e.LiveButton=ed,e.LoadingIndicator=ei,e.MediaTrackRadioButton=w,e.Menu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(L,n,r.createElement(y,{slot:"heading"},t),a)},e.MenuButton=P,e.MenuGroup=D,e.MuteButton=b,e.PlayButton=k,e.PlaybackRateDisplay=F,e.PlaybackRateMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(V,n,r.createElement(y,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=q,e.PlaybackRateRadioGroup=U,e.PlayerContext=l,e.PreviewThumbnail=em,e.PreviewTimeDisplay=ec,e.QualityRadioButton=W,e.QualityRadioGroup=z,e.RadioButton=M,e.RadioButtonEvents=x,e.RadioGroup=S,e.RadioGroupEvents=T,e.RangeEvents=ee,e.SeekButton=B,e.SettingsMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(Z,n,r.createElement(y,{slot:"heading"},t),a)},e.SettingsMenuButton=$,e.TextTrackOffRadioButton=I,e.TextTrackRadioButton=O,e.TextTrackStyleDisplay=X,e.TextTrackStyleMenu=function(e){var t=e.heading,a=e.children,n=u(e,["heading","children"]);return r.createElement(Y,n,r.createElement(y,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=J,e.TextTrackStyleResetButton=K,e.TimeDisplay=E,e.TimeRange=et,e.TrackRadioGroup=A,e.UIContainer=function(e){var a=e.topChrome,n=e.middleChrome,i=e.bottomChrome,s=e.centeredChrome,c=e.centeredLoading,m=e.menu,h=e.error,v=e.onReady,f=u(e,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),N=t.useState(null),C=N[0],k=N[1],b=d(C,v);return r.createElement(g,o({},f,{ref:k}),r.createElement(l.Provider,{value:b},r.createElement(y,{slot:"top-chrome"},a),r.createElement(y,{slot:"middle-chrome"},n),r.createElement(y,{slot:"centered-chrome"},s),r.createElement(y,{slot:"centered-loading"},c),i,r.createElement(p,{slot:"menu"},m),r.createElement(y,{slot:"error"},h)))},e.VolumeRange=ea,e.useCurrentTime=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(ev,t),function(){return null==e?void 0:e.removeEventListener(ev,t)}},[e]);return t.useSyncExternalStore(a,function(){return e?e.currentTime:0},function(){return 0})},e.useDuration=function(){var e=t.useContext(l),a=t.useCallback(function(t){return null==e||e.addEventListener(ef,t),function(){return null==e?void 0:e.removeEventListener(ef,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(eC,t),function(){return null==e?void 0:e.removeEventListener(eC,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})}});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import*as e from"react";import{createContext as t,
|
|
1
|
+
import*as e from"react";import{createContext as t,useCallback as a,useSyncExternalStore as n,useEffect as r,Children as l,isValidElement as o,Fragment as s,cloneElement as u,useState as i,useContext as m}from"react";import{UIContainer as c,DefaultUI as d,ControlBar as y,Button as p,LinkButton as v,PlayButton as g,MuteButton as h,SeekButton as N,TimeDisplay as C,DurationDisplay as f,RadioGroup as B,RadioButton as k,Menu as R,MenuGroup as b,MenuButton as T,CloseMenuButton as E,MediaTrackRadioButton as M,TrackRadioGroup as L,TextTrackRadioButton as D,TextTrackOffRadioButton as P,LanguageMenu as S,LanguageMenuButton as x,PlaybackRateRadioGroup as G,PlaybackRateMenuButton as A,PlaybackRateMenu as w,PlaybackRateDisplay as I,ActiveQualityDisplay as O,QualityRadioButton as Q,QualityRadioGroup as U,TextTrackStyleRadioGroup as j,TextTrackStyleResetButton as V,TextTrackStyleDisplay as q,TextTrackStyleMenu as F,SettingsMenu as H,SettingsMenuButton as W,FullscreenButton as z,TimeRange as J,VolumeRange as K,ErrorDisplay as X,CastButton as Y,ChromecastButton as Z,ChromecastDisplay as $,AirPlayButton as _,LoadingIndicator as ee,GestureReceiver as et,PreviewTimeDisplay as ea,PreviewThumbnail as en,LiveButton as er,AdDisplay as el,AdCountdown as eo,AdClickThroughButton as es,AdSkipButton as eu}from"@theoplayer/web-ui/es5";var ei=t(void 0);function em(){return(em=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 ec(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}/**
|
|
2
2
|
* @license
|
|
3
3
|
* Copyright 2018 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
-
*/let em=new Set(["children","localName","ref","style","className"]),ec=new WeakMap,ey=(e,t,a,n,l)=>{let r,o;let s=l?.[t];void 0===s||a===n?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(void 0===(r=ec.get(e))&&ec.set(e,r=new Map),o=r.get(s),void 0!==a?void 0===o?(r.set(s,o={handleEvent:a}),e.addEventListener(s,o)):o.handleEvent=a:void 0!==o&&(r.delete(s),e.removeEventListener(s,o)))},ed=({react:e,tagName:t,elementClass:a,events:n,displayName:l})=>{let r=new Set(Object.keys(n??{})),o=e.forwardRef((l,o)=>{let s=e.useRef(null),i=e.useRef(null),u={},m={};for(let[e,t]of Object.entries(l))em.has(e)?u["className"===e?"class":e]=t:r.has(e)||e in a.prototype?m[e]=t:u[e]=t;return e.useLayoutEffect(()=>{if(null!==i.current){for(let e in m)ey(i.current,e,l[e],s.current?s.current[e]:void 0,n);s.current=l}}),e.useLayoutEffect(()=>{i.current?.removeAttribute("defer-hydration")},[]),u.suppressHydrationWarning=!0,e.createElement(t,{...u,ref:e.useCallback(e=>{i.current=e,"function"==typeof o?o(e):null!==o&&(o.current=e)},[o])})});return o.displayName=l??a.name,o};function ep(e){var t=a(null),r=t[0],o=t[1],s=a(void 0),i=s[0],u=s[1];n(function(){u(null==r?void 0:r.player)},[r]);var m=l(function(e){u(null==r?void 0:r.player)},[r]);return n(function(){i&&(null==e||e(i))},[i,e]),{player:i,setUi:o,onReadyHandler:m}}var eh=function(t){var a=t.slot,n=t.children;return n?e.createElement("div",{slot:a,style:{display:"contents"},children:n}):null},eg=function(t){var a=t.slot,n=t.children;return n?r.map(n,function(t){return o(t)?t.type===s?i(t,void 0,e.createElement(eg,{slot:a,children:t.props.children})):i(t,{slot:a}):e.createElement(eh,{slot:a,children:t})}):null},eN=ed({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:u,react:e,events:{onReady:"theoplayerready"}}),ev=function(t){var a=t.topChrome,n=t.middleChrome,l=t.bottomChrome,r=t.centeredChrome,o=t.centeredLoading,s=t.menu,i=t.error,u=t.onReady,m=eu(t,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),c=ep(u),y=c.player,d=c.setUi,p=c.onReadyHandler;return e.createElement(eN,ei({},m,{ref:d,onReady:p}),e.createElement(es.Provider,{value:y},e.createElement(eh,{slot:"top-chrome"},a),e.createElement(eh,{slot:"middle-chrome"},n),e.createElement(eh,{slot:"centered-chrome"},r),e.createElement(eh,{slot:"centered-loading"},o),l,e.createElement(eg,{slot:"menu"},s),e.createElement(eh,{slot:"error"},i)))},eC=ed({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:m,react:e,events:{onReady:"theoplayerready"}}),eB=function(t){var a=t.title,n=t.topControlBar,l=t.bottomControlBar,r=t.menu,o=t.onReady,s=eu(t,["title","topControlBar","bottomControlBar","menu","onReady"]),i=ep(o),u=i.player,m=i.setUi,c=i.onReadyHandler;return e.createElement(eC,ei({},s,{ref:m,onReady:c}),e.createElement(es.Provider,{value:u},e.createElement(eh,{slot:"title"},a),e.createElement(eh,{slot:"top-control-bar"},n),e.createElement(eh,{slot:"bottom-control-bar"},l),e.createElement(eg,{slot:"menu"},r)))},eR=ed({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:c,react:e}),ek={onClick:"click"},eb=ed({tagName:"theoplayer-button",displayName:"Button",elementClass:y,react:e,events:ek}),eT=ed({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:d,react:e,events:ek}),ef=ed({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:p,react:e,events:ek}),eE=ed({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:h,react:e,events:ek}),eM=ed({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:g,react:e,events:ek}),eD=ed({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:N,react:e}),eP=ed({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:v,react:e}),ex={onChange:"change"},eS=ed({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:C,react:e,events:ex}),eG=ei({},ek,{onChange:"change",onInput:"input"}),eL=ed({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:B,react:e,events:eG}),eA=ed({tagName:"theoplayer-menu",displayName:"Menu",elementClass:R,react:e}),ew=function(t){var a=t.heading,n=t.children,l=eu(t,["heading","children"]);return e.createElement(eA,l,e.createElement(eh,{slot:"heading"},a),n)},eI=ed({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:k,react:e}),eO=ed({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:b,react:e,events:ek}),eQ=ed({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:T,react:e,events:ek}),eU=ed({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:f,react:e,events:eG}),ej=ed({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:E,react:e,events:ex}),eH=ed({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:M,react:e,events:eG}),eq=ed({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:D,react:e,events:eG}),eF=ed({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:P,react:e}),eV=function(t){var a=t.heading,n=t.children,l=eu(t,["heading","children"]);return e.createElement(eF,l,e.createElement(eh,{slot:"heading"},a),n)},eW=ed({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:x,react:e,events:ek}),ez=ed({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:S,react:e,events:ex}),eJ=ed({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:G,react:e,events:ek}),eK=ed({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:L,react:e}),eX=function(t){var a=t.heading,n=t.children,l=eu(t,["heading","children"]);return e.createElement(eK,l,e.createElement(eh,{slot:"heading"},a),n)},eY=ed({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:A,react:e}),eZ=ed({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:w,react:e}),e$=ed({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:I,react:e,events:eG}),e_=ed({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:O,react:e,events:ex}),e0=ed({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:Q,react:e,events:ex}),e1=ed({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:U,react:e,events:ek}),e5=ed({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:j,react:e}),e2=ed({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:H,react:e}),e3=function(t){var a=t.heading,n=t.children,l=eu(t,["heading","children"]);return e.createElement(e2,l,e.createElement(eh,{slot:"heading"},a),n)},e4=ed({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:q,react:e}),e6=function(t){var a=t.heading,n=t.children,l=eu(t,["heading","children"]);return e.createElement(e4,l,e.createElement(eh,{slot:"heading"},a),n)},e7=ed({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:F,react:e,events:ek}),e8=ed({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:V,react:e,events:ek}),e9={onChange:"change",onInput:"input"},te=ed({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:W,react:e,events:e9}),tt=ed({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:z,react:e,events:e9}),ta=ed({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:J,react:e}),tn=ed({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:K,react:e,events:ek}),tl=ed({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:X,react:e,events:ek}),tr=ed({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:Y,react:e}),to=ed({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:Z,react:e,events:ek}),ts=ed({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:$,react:e}),ti=ed({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:_,react:e}),tu=ed({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:ee,react:e}),tm=ed({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:et,react:e}),tc=ed({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:ea,react:e,events:ek}),ty=ed({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:en,react:e}),td=ed({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:el,react:e}),tp=ed({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:er,react:e,events:ek}),th=ed({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:eo,react:e,events:ek});export{eZ as ActiveQualityDisplay,tp as AdClickThroughButton,td as AdCountdown,ty as AdDisplay,th as AdSkipButton,to as AirPlayButton,eb as Button,ek as ButtonEvents,tn as CastButton,tl as ChromecastButton,tr as ChromecastDisplay,eQ as CloseMenuButton,eR as ControlBar,eB as DefaultUI,eP as DurationDisplay,ta as ErrorDisplay,e8 as FullscreenButton,ti as GestureReceiver,eV as LanguageMenu,eW as LanguageMenuButton,eT as LinkButton,tc as LiveButton,ts as LoadingIndicator,eU as MediaTrackRadioButton,ew as Menu,eO as MenuButton,eI as MenuGroup,eE as MuteButton,ef as PlayButton,eY as PlaybackRateDisplay,eX as PlaybackRateMenu,eJ as PlaybackRateMenuButton,ez as PlaybackRateRadioGroup,es as PlayerContext,tm as PreviewThumbnail,tu as PreviewTimeDisplay,e$ as QualityRadioButton,e_ as QualityRadioGroup,eL as RadioButton,eG as RadioButtonEvents,eS as RadioGroup,ex as RadioGroupEvents,e9 as RangeEvents,eM as SeekButton,e6 as SettingsMenu,e7 as SettingsMenuButton,eq as TextTrackOffRadioButton,eH as TextTrackRadioButton,e5 as TextTrackStyleDisplay,e3 as TextTrackStyleMenu,e0 as TextTrackStyleRadioGroup,e1 as TextTrackStyleResetButton,eD as TimeDisplay,te as TimeRange,ej as TrackRadioGroup,ev as UIContainer,tt as VolumeRange};
|
|
5
|
+
*/let ed=new Set(["children","localName","ref","style","className"]),ey=new WeakMap,ep=(e,t,a,n,r)=>{let l,o;let s=r?.[t];void 0===s||a===n?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(void 0===(l=ey.get(e))&&ey.set(e,l=new Map),o=l.get(s),void 0!==a?void 0===o?(l.set(s,o={handleEvent:a}),e.addEventListener(s,o)):o.handleEvent=a:void 0!==o&&(l.delete(s),e.removeEventListener(s,o)))},ev=({react:e,tagName:t,elementClass:a,events:n,displayName:r})=>{let l=new Set(Object.keys(n??{})),o=e.forwardRef((r,o)=>{let s=e.useRef(null),u=e.useRef(null),i={},m={};for(let[e,t]of Object.entries(r))ed.has(e)?i["className"===e?"class":e]=t:l.has(e)||e in a.prototype?m[e]=t:i[e]=t;return e.useLayoutEffect(()=>{if(null!==u.current){for(let e in m)ep(u.current,e,r[e],s.current?s.current[e]:void 0,n);s.current=r}}),e.useLayoutEffect(()=>{u.current?.removeAttribute("defer-hydration")},[]),i.suppressHydrationWarning=!0,e.createElement(t,{...i,ref:e.useCallback(e=>{u.current=e,"function"==typeof o?o(e):null!==o&&(o.current=e)},[o])})});return o.displayName=r??a.name,o};function eg(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]),l}var eh=function(t){var a=t.slot,n=t.children;return n?e.createElement("div",{slot:a,style:{display:"contents"},children:n}):null},eN=function(t){var a=t.slot,n=t.children;return n?l.map(n,function(t){return o(t)?t.type===s?u(t,void 0,e.createElement(eN,{slot:a,children:t.props.children})):u(t,{slot:a}):e.createElement(eh,{slot:a,children:t})}):null},eC=ev({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:c,react:e,events:{onReady:"theoplayerready"}}),ef=function(t){var a=t.topChrome,n=t.middleChrome,r=t.bottomChrome,l=t.centeredChrome,o=t.centeredLoading,s=t.menu,u=t.error,m=t.onReady,c=ec(t,["topChrome","middleChrome","bottomChrome","centeredChrome","centeredLoading","menu","error","onReady"]),d=i(null),y=d[0],p=d[1],v=eg(y,m);return e.createElement(eC,em({},c,{ref:p}),e.createElement(ei.Provider,{value:v},e.createElement(eh,{slot:"top-chrome"},a),e.createElement(eh,{slot:"middle-chrome"},n),e.createElement(eh,{slot:"centered-chrome"},l),e.createElement(eh,{slot:"centered-loading"},o),r,e.createElement(eN,{slot:"menu"},s),e.createElement(eh,{slot:"error"},u)))},eB=ev({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:d,react:e,events:{onReady:"theoplayerready"}}),ek=function(t){var a=t.title,n=t.topControlBar,r=t.bottomControlBar,l=t.menu,o=t.onReady,s=ec(t,["title","topControlBar","bottomControlBar","menu","onReady"]),u=i(null),m=u[0],c=u[1],d=eg(m,o);return e.createElement(eB,em({},s,{ref:c}),e.createElement(ei.Provider,{value:d},e.createElement(eh,{slot:"title"},a),e.createElement(eh,{slot:"top-control-bar"},n),e.createElement(eh,{slot:"bottom-control-bar"},r),e.createElement(eN,{slot:"menu"},l)))},eR=ev({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:y,react:e}),eb={onClick:"click"},eT=ev({tagName:"theoplayer-button",displayName:"Button",elementClass:p,react:e,events:eb}),eE=ev({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:v,react:e,events:eb}),eM=ev({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:g,react:e,events:eb}),eL=ev({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:h,react:e,events:eb}),eD=ev({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:N,react:e,events:eb}),eP=ev({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:C,react:e}),eS=ev({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:f,react:e}),ex={onChange:"change"},eG=ev({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:B,react:e,events:ex}),eA=em({},eb,{onChange:"change",onInput:"input"}),ew=ev({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:k,react:e,events:eA}),eI=ev({tagName:"theoplayer-menu",displayName:"Menu",elementClass:R,react:e}),eO=function(t){var a=t.heading,n=t.children,r=ec(t,["heading","children"]);return e.createElement(eI,r,e.createElement(eh,{slot:"heading"},a),n)},eQ=ev({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:b,react:e}),eU=ev({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:T,react:e,events:eb}),ej=ev({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:E,react:e,events:eb}),eV=ev({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:M,react:e,events:eA}),eq=ev({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:L,react:e,events:ex}),eF=ev({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:D,react:e,events:eA}),eH=ev({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:P,react:e,events:eA}),eW=ev({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:S,react:e}),ez=function(t){var a=t.heading,n=t.children,r=ec(t,["heading","children"]);return e.createElement(eW,r,e.createElement(eh,{slot:"heading"},a),n)},eJ=ev({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:x,react:e,events:eb}),eK=ev({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:G,react:e,events:ex}),eX=ev({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:A,react:e,events:eb}),eY=ev({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:w,react:e}),eZ=function(t){var a=t.heading,n=t.children,r=ec(t,["heading","children"]);return e.createElement(eY,r,e.createElement(eh,{slot:"heading"},a),n)},e$=ev({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:I,react:e}),e_=ev({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:O,react:e}),e0=ev({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:Q,react:e,events:eA}),e1=ev({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:U,react:e,events:ex}),e5=ev({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:j,react:e,events:ex}),e2=ev({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:V,react:e,events:eb}),e3=ev({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:q,react:e}),e4=ev({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:F,react:e}),e6=function(t){var a=t.heading,n=t.children,r=ec(t,["heading","children"]);return e.createElement(e4,r,e.createElement(eh,{slot:"heading"},a),n)},e7=ev({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:H,react:e}),e8=function(t){var a=t.heading,n=t.children,r=ec(t,["heading","children"]);return e.createElement(e7,r,e.createElement(eh,{slot:"heading"},a),n)},e9=ev({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:W,react:e,events:eb}),te=ev({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:z,react:e,events:eb}),tt={onChange:"change",onInput:"input"},ta=ev({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:J,react:e,events:tt}),tn=ev({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:K,react:e,events:tt}),tr=ev({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:X,react:e}),tl=ev({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:Y,react:e,events:eb}),to=ev({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:Z,react:e,events:eb}),ts=ev({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:$,react:e}),tu=ev({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:_,react:e,events:eb}),ti=ev({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:ee,react:e}),tm=ev({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:et,react:e}),tc=ev({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:ea,react:e}),td=ev({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:en,react:e}),ty=ev({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:er,react:e,events:eb}),tp=ev({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:el,react:e}),tv=ev({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:eo,react:e}),tg=ev({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:es,react:e,events:eb}),th=ev({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:eu,react:e,events:eb}),tN=["timeupdate","seeking","seeked","emptied"];function tC(){var e=m(ei);return n(a(function(t){return null==e||e.addEventListener(tN,t),function(){return null==e?void 0:e.removeEventListener(tN,t)}},[e]),function(){return e?e.currentTime:0},function(){return 0})}var tf=["durationchange","emptied"];function tB(){var e=m(ei);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.duration:NaN},function(){return NaN})}function tk(){var e=m(ei);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 tR=["play","pause"];function tb(){var e=m(ei);return n(a(function(t){return null==e||e.addEventListener(tR,t),function(){return null==e?void 0:e.removeEventListener(tR,t)}},[e]),function(){return!e||e.paused},function(){return!0})}var tT=["seeking","seeked","emptied"];function tE(){var e=m(ei);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.seeking},function(){return!1})}function tM(){var e=m(ei);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=m(ei);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})}export{e_ as ActiveQualityDisplay,tg as AdClickThroughButton,tv as AdCountdown,tp as AdDisplay,th as AdSkipButton,tu as AirPlayButton,eT as Button,eb as ButtonEvents,tl as CastButton,to as ChromecastButton,ts as ChromecastDisplay,ej as CloseMenuButton,eR as ControlBar,ek as DefaultUI,eS as DurationDisplay,tr as ErrorDisplay,te as FullscreenButton,tm as GestureReceiver,ez as LanguageMenu,eJ as LanguageMenuButton,eE as LinkButton,ty as LiveButton,ti as LoadingIndicator,eV as MediaTrackRadioButton,eO as Menu,eU as MenuButton,eQ as MenuGroup,eL as MuteButton,eM as PlayButton,e$ as PlaybackRateDisplay,eZ as PlaybackRateMenu,eX as PlaybackRateMenuButton,eK as PlaybackRateRadioGroup,ei as PlayerContext,td as PreviewThumbnail,tc as PreviewTimeDisplay,e0 as QualityRadioButton,e1 as QualityRadioGroup,ew as RadioButton,eA as RadioButtonEvents,eG as RadioGroup,ex as RadioGroupEvents,tt as RangeEvents,eD as SeekButton,e8 as SettingsMenu,e9 as SettingsMenuButton,eH as TextTrackOffRadioButton,eF as TextTrackRadioButton,e3 as TextTrackStyleDisplay,e6 as TextTrackStyleMenu,e5 as TextTrackStyleRadioGroup,e2 as TextTrackStyleResetButton,eP as TimeDisplay,ta as TimeRange,eq as TrackRadioGroup,ef as UIContainer,tn as VolumeRange,tC as useCurrentTime,tB as useDuration,tk as useMuted,tb as usePaused,tE as useSeeking,tM as useSource,tL as useVolume};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* THEOplayer Open Video UI for React (v1.
|
|
2
|
+
* THEOplayer Open Video UI for React (v1.7.0)
|
|
3
3
|
* License: MIT
|
|
4
|
-
*/!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@theoplayer/web-ui")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI)}(this,function(e,t,a){"use strict";var l,n=(l=Object.create(null),t&&Object.keys(t).forEach(function(e){if("default"!==e){var a=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(l,e,a.get?a:{enumerable:!0,get:function(){return t[e]}})}}),l.default=t,Object.freeze(l));let r=t.createContext(void 0),o=new Set(["children","localName","ref","style","className"]),s=new WeakMap,i=(e,t,a,l,n)=>{let r,o;let i=n?.[t];void 0===i||a===l?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(void 0===(r=s.get(e))&&s.set(e,r=new Map),o=r.get(i),void 0!==a?void 0===o?(r.set(i,o={handleEvent:a}),e.addEventListener(i,o)):o.handleEvent=a:void 0!==o&&(r.delete(i),e.removeEventListener(i,o)))},u=({react:e,tagName:t,elementClass:a,events:l,displayName:n})=>{let r=new Set(Object.keys(l??{})),s=e.forwardRef((n,s)=>{let u=e.useRef(null),m=e.useRef(null),y={},c={};for(let[e,t]of Object.entries(n))o.has(e)?y["className"===e?"class":e]=t:r.has(e)||e in a.prototype?c[e]=t:y[e]=t;return e.useLayoutEffect(()=>{if(null!==m.current){for(let e in c)i(m.current,e,n[e],u.current?u.current[e]:void 0,l);u.current=n}}),e.useLayoutEffect(()=>{m.current?.removeAttribute("defer-hydration")},[]),y.suppressHydrationWarning=!0,e.createElement(t,{...y,ref:e.useCallback(e=>{m.current=e,"function"==typeof s?s(e):null!==s&&(s.current=e)},[s])})});return s.displayName=n??a.name,s};function m(e){let[a,l]=t.useState(null),[n,r]=t.useState(void 0);t.useEffect(()=>{r(null==a?void 0:a.player)},[a]);let o=t.useCallback(e=>{r(null==a?void 0:a.player)},[a]);return t.useEffect(()=>{n&&(null==e||e(n))},[n,e]),{player:n,setUi:l,onReadyHandler:o}}let y=e=>{let{slot:t,children:a}=e;return a?n.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},c=e=>{let{slot:a,children:l}=e;return l?t.Children.map(l,e=>t.isValidElement(e)?e.type===t.Fragment?t.cloneElement(e,void 0,n.createElement(c,{slot:a,children:e.props.children})):t.cloneElement(e,{slot:a}):n.createElement(y,{slot:a,children:e})):null},p=u({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:n,events:{onReady:"theoplayerready"}}),d=u({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:n,events:{onReady:"theoplayerready"}}),g=u({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:n}),N={onClick:"click"},h=u({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:n,events:N}),C=u({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:n,events:N}),v=u({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:n,events:N}),B=u({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:n,events:N}),k=u({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:n,events:N}),R=u({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:n}),b=u({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:n}),T={onChange:"change"},f=u({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:n,events:T}),E={...N,onChange:"change",onInput:"input"},M=u({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:n,events:E}),D=u({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:n}),x=u({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:n}),P=u({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:n,events:N}),S=u({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:n,events:N}),G=u({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:n,events:E}),w=u({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:n,events:T}),A=u({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:n,events:E}),L=u({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:n,events:E}),I=u({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:n}),O=u({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:n,events:N}),Q=u({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:n,events:T}),j=u({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:n,events:N}),U=u({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:n}),q=u({tagName:"theoplayer-playback-rate-display",displayName:"PlaybackRateDisplay",elementClass:a.PlaybackRateDisplay,react:n}),F=u({tagName:"theoplayer-active-quality-display",displayName:"ActiveQualityDisplay",elementClass:a.ActiveQualityDisplay,react:n}),H=u({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:n,events:E}),V=u({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:n,events:T}),W=u({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:n,events:T}),z=u({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:n,events:N}),J=u({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:n}),K=u({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:n}),X=u({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:n}),Y=u({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:n,events:N}),Z=u({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:n,events:N}),$={onChange:"change",onInput:"input"},_=u({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:n,events:$}),ee=u({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:n,events:$}),et=u({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:n}),ea=u({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:n,events:N}),el=u({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:n,events:N}),en=u({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:n}),er=u({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:n,events:N}),eo=u({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:n}),es=u({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:n}),ei=u({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:n}),eu=u({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:n}),em=u({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:n,events:N}),ey=u({tagName:"theoplayer-ad-display",displayName:"AdDisplay",elementClass:a.AdDisplay,react:n}),ec=u({tagName:"theoplayer-ad-countdown",displayName:"AdCountdown",elementClass:a.AdCountdown,react:n}),ep=u({tagName:"theoplayer-ad-clickthrough-button",displayName:"AdClickThroughButton",elementClass:a.AdClickThroughButton,react:n,events:N}),ed=u({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:n,events:N});e.ActiveQualityDisplay=F,e.AdClickThroughButton=ep,e.AdCountdown=ec,e.AdDisplay=ey,e.AdSkipButton=ed,e.AirPlayButton=er,e.Button=h,e.ButtonEvents=N,e.CastButton=ea,e.ChromecastButton=el,e.ChromecastDisplay=en,e.CloseMenuButton=S,e.ControlBar=g,e.DefaultUI=e=>{let{title:t,topControlBar:a,bottomControlBar:l,menu:o,onReady:s,...i}=e,{player:u,setUi:p,onReadyHandler:g}=m(s);return n.createElement(d,{...i,ref:p,onReady:g},n.createElement(r.Provider,{value:u},n.createElement(y,{slot:"title"},t),n.createElement(y,{slot:"top-control-bar"},a),n.createElement(y,{slot:"bottom-control-bar"},l),n.createElement(c,{slot:"menu"},o)))},e.DurationDisplay=b,e.ErrorDisplay=et,e.FullscreenButton=Z,e.GestureReceiver=es,e.LanguageMenu=e=>{let{heading:t,children:a,...l}=e;return n.createElement(I,l,n.createElement(y,{slot:"heading"},t),a)},e.LanguageMenuButton=O,e.LinkButton=C,e.LiveButton=em,e.LoadingIndicator=eo,e.MediaTrackRadioButton=G,e.Menu=e=>{let{heading:t,children:a,...l}=e;return n.createElement(D,l,n.createElement(y,{slot:"heading"},t),a)},e.MenuButton=P,e.MenuGroup=x,e.MuteButton=B,e.PlayButton=v,e.PlaybackRateDisplay=q,e.PlaybackRateMenu=e=>{let{heading:t,children:a,...l}=e;return n.createElement(U,l,n.createElement(y,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=j,e.PlaybackRateRadioGroup=Q,e.PlayerContext=r,e.PreviewThumbnail=eu,e.PreviewTimeDisplay=ei,e.QualityRadioButton=H,e.QualityRadioGroup=V,e.RadioButton=M,e.RadioButtonEvents=E,e.RadioGroup=f,e.RadioGroupEvents=T,e.RangeEvents=$,e.SeekButton=k,e.SettingsMenu=e=>{let{heading:t,children:a,...l}=e;return n.createElement(X,l,n.createElement(y,{slot:"heading"},t),a)},e.SettingsMenuButton=Y,e.TextTrackOffRadioButton=L,e.TextTrackRadioButton=A,e.TextTrackStyleDisplay=J,e.TextTrackStyleMenu=e=>{let{heading:t,children:a,...l}=e;return n.createElement(K,l,n.createElement(y,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=W,e.TextTrackStyleResetButton=z,e.TimeDisplay=R,e.TimeRange=_,e.TrackRadioGroup=w,e.UIContainer=e=>{let{topChrome:t,middleChrome:a,bottomChrome:l,centeredChrome:o,centeredLoading:s,menu:i,error:u,onReady:d,...g}=e,{player:N,setUi:h,onReadyHandler:C}=m(d);return n.createElement(p,{...g,ref:h,onReady:C},n.createElement(r.Provider,{value:N},n.createElement(y,{slot:"top-chrome"},t),n.createElement(y,{slot:"middle-chrome"},a),n.createElement(y,{slot:"centered-chrome"},o),n.createElement(y,{slot:"centered-loading"},s),l,n.createElement(c,{slot:"menu"},i),n.createElement(y,{slot:"error"},u)))},e.VolumeRange=ee});
|
|
4
|
+
*/!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@theoplayer/web-ui")):"function"==typeof define&&define.amd?define(["exports","react","@theoplayer/web-ui"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).THEOplayerReactUI={},e.React,e.THEOplayerUI)}(this,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;let u=l?.[t];void 0===u||a===n?(e[t]=a,null==a&&t in HTMLElement.prototype&&e.removeAttribute(t)):(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(null),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){for(let e in y)u(m.current,e,l[e],i.current?i.current[e]:void 0,n);i.current=l}}),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]),l}let c=e=>{let{slot:t,children:a}=e;return a?l.createElement("div",{slot:t,style:{display:"contents"},children:a}):null},y=e=>{let{slot:a,children:n}=e;return n?t.Children.map(n,e=>t.isValidElement(e)?e.type===t.Fragment?t.cloneElement(e,void 0,l.createElement(y,{slot:a,children:e.props.children})):t.cloneElement(e,{slot:a}):l.createElement(c,{slot:a,children:e})):null},d=i({tagName:"theoplayer-ui",displayName:"UIContainer",elementClass:a.UIContainer,react:l,events:{onReady:"theoplayerready"}}),p=i({tagName:"theoplayer-default-ui",displayName:"DefaultUI",elementClass:a.DefaultUI,react:l,events:{onReady:"theoplayerready"}}),g=i({tagName:"theoplayer-control-bar",displayName:"ControlBar",elementClass:a.ControlBar,react:l}),v={onClick:"click"},h=i({tagName:"theoplayer-button",displayName:"Button",elementClass:a.Button,react:l,events:v}),N=i({tagName:"theoplayer-link-button",displayName:"LinkButton",elementClass:a.LinkButton,react:l,events:v}),C=i({tagName:"theoplayer-play-button",displayName:"PlayButton",elementClass:a.PlayButton,react:l,events:v}),k=i({tagName:"theoplayer-mute-button",displayName:"MuteButton",elementClass:a.MuteButton,react:l,events:v}),B=i({tagName:"theoplayer-seek-button",displayName:"SeekButton",elementClass:a.SeekButton,react:l,events:v}),E=i({tagName:"theoplayer-time-display",displayName:"TimeDisplay",elementClass:a.TimeDisplay,react:l}),b=i({tagName:"theoplayer-duration-display",displayName:"DurationDisplay",elementClass:a.DurationDisplay,react:l}),R={onChange:"change"},T=i({tagName:"theoplayer-radio-group",displayName:"RadioGroup",elementClass:a.RadioGroup,react:l,events:R}),f={...v,onChange:"change",onInput:"input"},S=i({tagName:"theoplayer-radio-button",displayName:"RadioButton",elementClass:a.RadioButton,react:l,events:f}),x=i({tagName:"theoplayer-menu",displayName:"Menu",elementClass:a.Menu,react:l}),M=i({tagName:"theoplayer-menu-group",displayName:"MenuGroup",elementClass:a.MenuGroup,react:l}),L=i({tagName:"theoplayer-menu-button",displayName:"MenuButton",elementClass:a.MenuButton,react:l,events:v}),D=i({tagName:"theoplayer-close-menu-button",displayName:"CloseMenuButton",elementClass:a.CloseMenuButton,react:l,events:v}),P=i({tagName:"theoplayer-media-track-radio-button",displayName:"MediaTrackRadioButton",elementClass:a.MediaTrackRadioButton,react:l,events:f}),G=i({tagName:"theoplayer-track-radio-group",displayName:"TrackRadioGroup",elementClass:a.TrackRadioGroup,react:l,events:R}),w=i({tagName:"theoplayer-text-track-radio-button",displayName:"TextTrackRadioButton",elementClass:a.TextTrackRadioButton,react:l,events:f}),A=i({tagName:"theoplayer-text-track-off-radio-button",displayName:"TextTrackOffRadioButton",elementClass:a.TextTrackOffRadioButton,react:l,events:f}),I=i({tagName:"theoplayer-language-menu",displayName:"LanguageMenu",elementClass:a.LanguageMenu,react:l}),O=i({tagName:"theoplayer-language-menu-button",displayName:"LanguageMenuButton",elementClass:a.LanguageMenuButton,react:l,events:v}),Q=i({tagName:"theoplayer-playback-rate-radio-group",displayName:"PlaybackRateRadioGroup",elementClass:a.PlaybackRateRadioGroup,react:l,events:R}),j=i({tagName:"theoplayer-playback-rate-menu-button",displayName:"PlaybackRateMenuButton",elementClass:a.PlaybackRateMenuButton,react:l,events:v}),U=i({tagName:"theoplayer-playback-rate-menu",displayName:"PlaybackRateMenu",elementClass:a.PlaybackRateMenu,react:l}),q=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}),F=i({tagName:"theoplayer-quality-radio-button",displayName:"QualityRadioButton",elementClass:a.QualityRadioButton,react:l,events:f}),H=i({tagName:"theoplayer-quality-radio-group",displayName:"QualityRadioGroup",elementClass:a.QualityRadioGroup,react:l,events:R}),W=i({tagName:"theoplayer-text-track-style-radio-group",displayName:"TextTrackStyleRadioGroup",elementClass:a.TextTrackStyleRadioGroup,react:l,events:R}),z=i({tagName:"theoplayer-text-track-style-reset-button",displayName:"TextTrackStyleResetButton",elementClass:a.TextTrackStyleResetButton,react:l,events:v}),J=i({tagName:"theoplayer-text-track-style-display",displayName:"TextTrackStyleDisplay",elementClass:a.TextTrackStyleDisplay,react:l}),K=i({tagName:"theoplayer-text-track-style-menu",displayName:"TextTrackStyleMenu",elementClass:a.TextTrackStyleMenu,react:l}),X=i({tagName:"theoplayer-settings-menu",displayName:"SettingsMenu",elementClass:a.SettingsMenu,react:l}),Y=i({tagName:"theoplayer-settings-menu-button",displayName:"SettingsMenuButton",elementClass:a.SettingsMenuButton,react:l,events:v}),Z=i({tagName:"theoplayer-fullscreen-button",displayName:"FullscreenButton",elementClass:a.FullscreenButton,react:l,events:v}),$={onChange:"change",onInput:"input"},_=i({tagName:"theoplayer-time-range",displayName:"TimeRange",elementClass:a.TimeRange,react:l,events:$}),ee=i({tagName:"theoplayer-volume-range",displayName:"VolumeRange",elementClass:a.VolumeRange,react:l,events:$}),et=i({tagName:"theoplayer-error-display",displayName:"ErrorDisplay",elementClass:a.ErrorDisplay,react:l}),ea=i({tagName:"theoplayer-cast-button",displayName:"CastButton",elementClass:a.CastButton,react:l,events:v}),en=i({tagName:"theoplayer-chromecast-button",displayName:"ChromecastButton",elementClass:a.ChromecastButton,react:l,events:v}),el=i({tagName:"theoplayer-chromecast-display",displayName:"ChromecastDisplay",elementClass:a.ChromecastDisplay,react:l}),er=i({tagName:"theoplayer-airplay-button",displayName:"AirPlayButton",elementClass:a.AirPlayButton,react:l,events:v}),eo=i({tagName:"theoplayer-loading-indicator",displayName:"LoadingIndicator",elementClass:a.LoadingIndicator,react:l}),es=i({tagName:"theoplayer-gesture-receiver",displayName:"GestureReceiver",elementClass:a.GestureReceiver,react:l}),eu=i({tagName:"theoplayer-preview-time-display",displayName:"PreviewTimeDisplay",elementClass:a.PreviewTimeDisplay,react:l}),ei=i({tagName:"theoplayer-preview-thumbnail",displayName:"PreviewThumbnail",elementClass:a.PreviewThumbnail,react:l}),em=i({tagName:"theoplayer-live-button",displayName:"LiveButton",elementClass:a.LiveButton,react:l,events:v}),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:v}),ep=i({tagName:"theoplayer-ad-skip-button",displayName:"AdSkipButton",elementClass:a.AdSkipButton,react:l,events:v}),eg=["timeupdate","seeking","seeked","emptied"],ev=["durationchange","emptied"],eh=["play","pause"],eN=["seeking","seeked","emptied"];e.ActiveQualityDisplay=V,e.AdClickThroughButton=ed,e.AdCountdown=ey,e.AdDisplay=ec,e.AdSkipButton=ep,e.AirPlayButton=er,e.Button=h,e.ButtonEvents=v,e.CastButton=ea,e.ChromecastButton=en,e.ChromecastDisplay=el,e.CloseMenuButton=D,e.ControlBar=g,e.DefaultUI=e=>{let{title:a,topControlBar:n,bottomControlBar:o,menu:s,onReady:u,...i}=e,[d,g]=t.useState(null),v=m(d,u);return l.createElement(p,{...i,ref:g},l.createElement(r.Provider,{value:v},l.createElement(c,{slot:"title"},a),l.createElement(c,{slot:"top-control-bar"},n),l.createElement(c,{slot:"bottom-control-bar"},o),l.createElement(y,{slot:"menu"},s)))},e.DurationDisplay=b,e.ErrorDisplay=et,e.FullscreenButton=Z,e.GestureReceiver=es,e.LanguageMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(I,n,l.createElement(c,{slot:"heading"},t),a)},e.LanguageMenuButton=O,e.LinkButton=N,e.LiveButton=em,e.LoadingIndicator=eo,e.MediaTrackRadioButton=P,e.Menu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(x,n,l.createElement(c,{slot:"heading"},t),a)},e.MenuButton=L,e.MenuGroup=M,e.MuteButton=k,e.PlayButton=C,e.PlaybackRateDisplay=q,e.PlaybackRateMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(U,n,l.createElement(c,{slot:"heading"},t),a)},e.PlaybackRateMenuButton=j,e.PlaybackRateRadioGroup=Q,e.PlayerContext=r,e.PreviewThumbnail=ei,e.PreviewTimeDisplay=eu,e.QualityRadioButton=F,e.QualityRadioGroup=H,e.RadioButton=S,e.RadioButtonEvents=f,e.RadioGroup=T,e.RadioGroupEvents=R,e.RangeEvents=$,e.SeekButton=B,e.SettingsMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(X,n,l.createElement(c,{slot:"heading"},t),a)},e.SettingsMenuButton=Y,e.TextTrackOffRadioButton=A,e.TextTrackRadioButton=w,e.TextTrackStyleDisplay=J,e.TextTrackStyleMenu=e=>{let{heading:t,children:a,...n}=e;return l.createElement(K,n,l.createElement(c,{slot:"heading"},t),a)},e.TextTrackStyleRadioGroup=W,e.TextTrackStyleResetButton=z,e.TimeDisplay=E,e.TimeRange=_,e.TrackRadioGroup=G,e.UIContainer=e=>{let{topChrome:a,middleChrome:n,bottomChrome:o,centeredChrome:s,centeredLoading:u,menu:i,error:p,onReady:g,...v}=e,[h,N]=t.useState(null),C=m(h,g);return l.createElement(d,{...v,ref:N},l.createElement(r.Provider,{value:C},l.createElement(c,{slot:"top-chrome"},a),l.createElement(c,{slot:"middle-chrome"},n),l.createElement(c,{slot:"centered-chrome"},s),l.createElement(c,{slot:"centered-loading"},u),o,l.createElement(y,{slot:"menu"},i),l.createElement(c,{slot:"error"},p)))},e.VolumeRange=ee,e.useCurrentTime=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(eg,t),()=>null==e?void 0:e.removeEventListener(eg,t)),[e]);return t.useSyncExternalStore(a,()=>e?e.currentTime:0,()=>0)},e.useDuration=function(){let e=t.useContext(r),a=t.useCallback(t=>(null==e||e.addEventListener(ev,t),()=>null==e?void 0:e.removeEventListener(ev,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(eN,t),()=>null==e?void 0:e.removeEventListener(eN,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)}});
|
|
5
5
|
//# sourceMappingURL=THEOplayerReactUI.js.map
|