@mux/mux-player-react 3.4.1 → 3.4.2-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/-WMXQZQZY.mjs +2 -0
- package/dist/-WMXQZQZY.mjs.map +7 -0
- package/dist/ads.cjs.js +2 -0
- package/dist/ads.cjs.js.map +7 -0
- package/dist/ads.mjs +2 -0
- package/dist/ads.mjs.map +7 -0
- package/dist/cjs.ads.json +108 -0
- package/dist/esm.ads.json +110 -0
- package/dist/esm.lazy.json +37 -13
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +4 -4
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +4 -4
- package/dist/lazy.mjs +1 -1
- package/dist/news/cjs.json +101 -0
- package/dist/news/esm.json +103 -0
- package/dist/news/index.cjs.js +217 -0
- package/dist/news/index.cjs.js.map +7 -0
- package/dist/news/index.mjs +217 -0
- package/dist/news/index.mjs.map +7 -0
- package/dist/themes/news.cjs.js +2 -0
- package/dist/themes/news.cjs.js.map +7 -0
- package/dist/themes/news.mjs +2 -0
- package/dist/themes/news.mjs.map +7 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/ads.d.ts +27 -0
- package/dist/types/index.d.ts +2 -113
- package/dist/types/news/index.d.ts +14 -0
- package/dist/types/news/playlist-end-screen.d.ts +11 -0
- package/dist/types/themes/news.d.ts +3 -0
- package/dist/types/types.d.ts +118 -0
- package/dist/types/useEventCallbackEffect.d.ts +4 -0
- package/dist/types-ts3.4/ads.d.ts +27 -0
- package/dist/types-ts3.4/index.d.ts +2 -113
- package/dist/types-ts3.4/news/index.d.ts +14 -0
- package/dist/types-ts3.4/news/playlist-end-screen.d.ts +11 -0
- package/dist/types-ts3.4/themes/news.d.ts +3 -0
- package/dist/types-ts3.4/types.d.ts +118 -0
- package/dist/types-ts3.4/useEventCallbackEffect.d.ts +4 -0
- package/package.json +29 -13
- package/dist/-NM4RRKFI.mjs +0 -2
- package/dist/-NM4RRKFI.mjs.map +0 -7
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";import m,{useState as pe,useRef as Ee}from"react";import{MaxResolution as Le,MinResolution as Ae,RenditionOrder as Ie,generatePlayerInitTime as Me}from"@mux/playback-core";import{MediaError as Ke}from"@mux/mux-player";import X from"react";var M=parseInt(X.version)>=19,E={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},B=e=>e==null,ee=(e,t)=>B(t)?!1:e in t,te=e=>e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`),ne=(e,t)=>{if(!(!M&&typeof t=="boolean"&&!t)){if(ee(e,E))return E[e];if(typeof t!="undefined")return/[A-Z]/.test(e)?te(e):e}};var ae=(e,t)=>!M&&typeof e=="boolean"?"":e,P=(e={})=>{let{ref:t,...n}=e;return Object.entries(n).reduce((o,[a,l])=>{let i=ne(a,l);if(!i)return o;let c=ae(l,a);return o[i]=c,o},{})};import*as d from"react";function x(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function re(...e){return t=>{let n=!1,o=e.map(a=>{let l=x(a,t);return!n&&typeof l=="function"&&(n=!0),l});if(n)return()=>{for(let a=0;a<o.length;a++){let l=o[a];typeof l=="function"?l():x(e[a],null)}}}}function f(...e){return d.useCallback(re(...e),e)}import{useEffect as le}from"react";var oe=Object.prototype.hasOwnProperty,ue=(e,t)=>{if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(Array.isArray(e))return!Array.isArray(t)||e.length!==t.length?!1:e.some((a,l)=>t[l]===a);let n=Object.keys(e),o=Object.keys(t);if(n.length!==o.length)return!1;for(let a=0;a<n.length;a++)if(!oe.call(t,n[a])||!Object.is(e[n[a]],t[n[a]]))return!1;return!0},p=(e,t,n)=>!ue(t,e[n]),se=(e,t,n)=>{e[n]=t},ie=(e,t,n,o=se,a=p)=>le(()=>{let l=n==null?void 0:n.current;l&&a(l,t,e)&&o(l,t,e)},[n==null?void 0:n.current,t]),u=ie;var ye=()=>{try{return"3.4.1"}catch{}return"UNKNOWN"},me=ye(),g=()=>me;import{useEffect as ce}from"react";var r=(e,t,n)=>ce(()=>{let o=t==null?void 0:t.current;if(!o||!n)return;let a=e,l=n;return o.addEventListener(a,l),()=>{o.removeEventListener(a,l)}},[t==null?void 0:t.current,n,e]);var Pe=m.forwardRef(({children:e,...t},n)=>m.createElement("mux-player",{suppressHydrationWarning:!0,...P(t),ref:n},e)),xe=(e,t)=>{let{onAbort:n,onCanPlay:o,onCanPlayThrough:a,onEmptied:l,onLoadStart:i,onLoadedData:c,onLoadedMetadata:v,onProgress:R,onDurationChange:T,onVolumeChange:h,onRateChange:b,onResize:C,onWaiting:k,onPlay:O,onPlaying:S,onTimeUpdate:w,onPause:N,onSeeking:L,onSeeked:A,onStalled:I,onSuspend:_,onEnded:K,onError:H,onCuePointChange:D,onChapterChange:V,metadata:W,tokens:U,paused:z,playbackId:F,playbackRates:G,currentTime:Z,themeProps:j,extraSourceParams:q,castCustomData:J,_hlsConfig:Y,...$}=t;return u("playbackRates",G,e),u("metadata",W,e),u("extraSourceParams",q,e),u("_hlsConfig",Y,e),u("themeProps",j,e),u("tokens",U,e),u("playbackId",F,e),u("castCustomData",J,e),u("paused",z,e,(s,y)=>{y!=null&&(y?s.pause():s.play())},(s,y,Q)=>s.hasAttribute("autoplay")&&!s.hasPlayed?!1:p(s,y,Q)),u("currentTime",Z,e,(s,y)=>{y!=null&&(s.currentTime=y)}),r("abort",e,n),r("canplay",e,o),r("canplaythrough",e,a),r("emptied",e,l),r("loadstart",e,i),r("loadeddata",e,c),r("loadedmetadata",e,v),r("progress",e,R),r("durationchange",e,T),r("volumechange",e,h),r("ratechange",e,b),r("resize",e,C),r("waiting",e,k),r("play",e,O),r("playing",e,S),r("timeupdate",e,w),r("pause",e,N),r("seeking",e,L),r("seeked",e,A),r("stalled",e,I),r("suspend",e,_),r("ended",e,K),r("error",e,H),r("cuepointchange",e,D),r("chapterchange",e,V),[$]},de=g(),fe="mux-player-react",ge=m.forwardRef((e,t)=>{var i;let n=Ee(null),o=f(n,t),[a]=xe(n,e),[l]=pe((i=e.playerInitTime)!=null?i:Me());return m.createElement(Pe,{ref:o,defaultHiddenCaptions:e.defaultHiddenCaptions,playerSoftwareName:fe,playerSoftwareVersion:de,playerInitTime:l,...a})}),ze=ge;export{Le as MaxResolution,Ke as MediaError,Ae as MinResolution,Ie as RenditionOrder,ze as default,Me as generatePlayerInitTime,fe as playerSoftwareName,de as playerSoftwareVersion};
|
|
2
|
+
//# sourceMappingURL=-WMXQZQZY.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/index.tsx", "../src/common/utils.ts", "../src/useComposedRefs.ts", "../src/useObjectPropEffect.ts", "../src/env.ts", "../src/useEventCallbackEffect.ts"],
|
|
4
|
+
"sourcesContent": ["'use client';\nimport React, { useState, useRef } from 'react';\nimport { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useComposedRefs } from './useComposedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\nimport { useEventCallbackEffect } from './useEventCallbackEffect';\nimport type { MuxPlayerProps, MuxPlayerRefAttributes } from './types';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };\nexport * from './types';\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement(\n 'mux-player',\n {\n suppressHydrationWarning: true, // prevent issues with SSR / player-init-time\n ...toNativeProps(props),\n ref,\n },\n children\n );\n});\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('abort', ref, onAbort);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('canplay', ref, onCanPlay);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('emptied', ref, onEmptied);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('loadstart', ref, onLoadStart);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('loadeddata', ref, onLoadedData);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('progress', ref, onProgress);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('durationchange', ref, onDurationChange);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('volumechange', ref, onVolumeChange);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('ratechange', ref, onRateChange);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('resize', ref, onResize);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('waiting', ref, onWaiting);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('play', ref, onPlay);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('playing', ref, onPlaying);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('pause', ref, onPause);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('seeking', ref, onSeeking);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('seeked', ref, onSeeked);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('stalled', ref, onStalled);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('suspend', ref, onSuspend);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('ended', ref, onEnded);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('error', ref, onError);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useComposedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as React.Ref<MuxPlayerElement>}\n defaultHiddenCaptions={props.defaultHiddenCaptions}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n playerInitTime={playerInitTime}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "import React from 'react';\n\n// React 19 supports custom elements and setting properties directly on them,\n// older React versions converted all props to attributes on custom elments.\n// Boolean `true` values should not be converted to empty strings in React 19+\n// because that would result in a `false` value if it was set via a property.\n// React 19+ handles primitive values correctly but we still need to convert\n// the camelCase prop names to kebab-case attribute names for mux-player. (WL)\n\nconst IS_REACT_19_OR_NEWER = parseInt(React.version) >= 19;\n\n// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends object = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue === 'undefined') return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, _propName: string) => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props: { ref?: any; [key: string]: any } = {}) => {\n const { ref, ...restProps } = props;\n return Object.entries(restProps).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T): (() => void) | void | undefined {\n if (typeof ref === 'function') {\n return ref(value);\n } else if (ref !== null && ref !== undefined) {\n (ref as React.MutableRefObject<T>).current = value;\n }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == 'function') {\n hasCleanup = true;\n }\n return cleanup;\n });\n\n // React <19 will log an error to the console if a callback ref returns a\n // value. We don't use ref cleanups internally so this will only happen if a\n // user's ref callback returns a value, which we only expect if they are\n // using the cleanup functionality added in React 19.\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == 'function') {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\n\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n", "import React, { useEffect } from 'react';\nimport type { GenericEventListener } from './index';\n\nexport const useEventCallbackEffect = <\n TElement extends EventTarget = EventTarget,\n TEventMap extends Record<string, Event> = Record<string, Event>,\n K extends keyof TEventMap = keyof TEventMap,\n>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<TElement | null> | null | undefined,\n callback: GenericEventListener<TEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n\n // Type assertion needed because TypeScript can't infer the exact event type\n const eventName = type as string;\n const listener = callback as EventListener;\n\n eventTarget.addEventListener(eventName, listener);\n return () => {\n eventTarget.removeEventListener(eventName, listener);\n };\n }, [ref?.current, callback, type]);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "useState", "useRef", "MaxResolution", "MinResolution", "RenditionOrder", "generatePlayerInitTime", "MediaError", "React", "IS_REACT_19_OR_NEWER", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "_propName", "IS_REACT_19_OR_NEWER", "toNativeProps", "props", "ref", "restProps", "transformedProps", "propName", "attrName", "toNativeAttrName", "attrValue", "React", "setRef", "ref", "value", "composeRefs", "refs", "node", "hasCleanup", "cleanups", "cleanup", "i", "useComposedRefs", "useEffect", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "i", "keysA", "keysB", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "useEffect", "useEventCallbackEffect", "type", "ref", "callback", "eventTarget", "eventName", "listener", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "useEventCallbackEffect", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "_a", "innerPlayerRef", "useRef", "playerRef", "useComposedRefs", "playerInitTime", "useState", "generatePlayerInitTime", "index_default"]
|
|
7
|
+
}
|
package/dist/ads.cjs.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";"use client";var y=Object.create;var l=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var T=(e,n)=>{for(var t in n)l(e,t,{get:n[t],enumerable:!0})},E=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of P(n))!L.call(e,r)&&r!==t&&l(e,r,{get:()=>n[r],enumerable:!(o=x(n,r))||o.enumerable});return e};var u=(e,n,t)=>(t=e!=null?y(R(e)):{},E(n||!e||!e.__esModule?l(t,"default",{value:e,enumerable:!0}):t,e)),k=e=>E(l({},"__esModule",{value:!0}),e);var g={};T(g,{default:()=>b});module.exports=k(g);var s=u(require("react")),N=require("@mux/mux-player/ads"),M=u(require("@mux/mux-player-react"));var d=u(require("react"));function p(e,n){if(typeof e=="function")return e(n);e!=null&&(e.current=n)}function A(...e){return n=>{let t=!1,o=e.map(r=>{let a=p(r,n);return!t&&typeof a=="function"&&(t=!0),a});if(t)return()=>{for(let r=0;r<o.length;r++){let a=o[r];typeof a=="function"?a():p(e[r],null)}}}}function c(...e){return d.useCallback(A(...e),e)}var m=require("react"),v=(e,n,t)=>(0,m.useEffect)(()=>{let o=n==null?void 0:n.current;if(!o||!t)return;let r=e,a=t;return o.addEventListener(r,a),()=>{o.removeEventListener(r,a)}},[n==null?void 0:n.current,t,e]);var G=(0,s.forwardRef)((e,n)=>{let t=(0,s.useRef)(null),o={},r={};for(let[a,i]of Object.entries(e))a.startsWith("onAd")?o[a]=i:r[a]=i;for(let a in o){let i=o[a],f=a.slice(2).toLowerCase();v(f,t,i)}return s.default.createElement(M.default,{ref:c(t,n),...r})}),b=G;
|
|
2
|
+
//# sourceMappingURL=ads.cjs.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/ads.tsx", "../src/useComposedRefs.ts", "../src/useEventCallbackEffect.ts"],
|
|
4
|
+
"sourcesContent": ["'use client';\nimport React, { forwardRef, useRef } from 'react';\n// Register <mux-player> (ads) web component.\nimport '@mux/mux-player/ads';\nimport MuxPlayer from '@mux/mux-player-react';\nimport type { GenericEventListener, Props as MuxPlayerIndexProps } from '@mux/mux-player-react';\nimport { useComposedRefs } from './useComposedRefs';\nimport { useEventCallbackEffect } from './useEventCallbackEffect';\nimport type MuxPlayerElement from '@mux/mux-player/ads';\nimport type { EventMap as MuxPlayerElementEventMap } from '@mux/mux-player/ads';\n\nexport interface MuxPlayerProps extends Omit<MuxPlayerIndexProps, 'playerSoftwareVersion' | 'playerSoftwareName'> {\n adTagUrl?: string;\n allowAdBlocker?: boolean;\n\n onAdRequest?: GenericEventListener<MuxPlayerElementEventMap['adrequest']>;\n onAdResponse?: GenericEventListener<MuxPlayerElementEventMap['adresponse']>;\n onAdImpression?: GenericEventListener<MuxPlayerElementEventMap['adimpression']>;\n onAdBreakStart?: GenericEventListener<MuxPlayerElementEventMap['adbreakstart']>;\n onAdPlay?: GenericEventListener<MuxPlayerElementEventMap['adplay']>;\n onAdPlaying?: GenericEventListener<MuxPlayerElementEventMap['adplaying']>;\n onAdPause?: GenericEventListener<MuxPlayerElementEventMap['adpause']>;\n onAdFirstQuartile?: GenericEventListener<MuxPlayerElementEventMap['adfirstquartile']>;\n onAdMidpoint?: GenericEventListener<MuxPlayerElementEventMap['admidpoint']>;\n onAdThirdQuartile?: GenericEventListener<MuxPlayerElementEventMap['adthirdquartile']>;\n onAdError?: GenericEventListener<MuxPlayerElementEventMap['aderror']>;\n onAdClick?: GenericEventListener<MuxPlayerElementEventMap['adclick']>;\n onAdSkip?: GenericEventListener<MuxPlayerElementEventMap['adskip']>;\n onAdEnded?: GenericEventListener<MuxPlayerElementEventMap['adended']>;\n onAdBreakEnd?: GenericEventListener<MuxPlayerElementEventMap['adbreakend']>;\n onAdClose?: GenericEventListener<MuxPlayerElementEventMap['adclose']>;\n}\n\nconst MuxPlayerAds = forwardRef<MuxPlayerElement, MuxPlayerProps>((props, ref) => {\n const playerRef = useRef<MuxPlayerElement>(null);\n\n const adEventProps: Record<string, (e: Event) => void> = {};\n const reactProps: Record<string, unknown> = {};\n\n for (const [k, v] of Object.entries(props)) {\n if (k.startsWith('onAd')) {\n adEventProps[k] = v;\n } else {\n reactProps[k] = v;\n }\n }\n\n // Set up event listeners on the custom element.\n // Still handle events for React 19+ because they don't yet offer\n // a way to have nicely camelCased event prop names on custom elements.\n for (const propName in adEventProps) {\n const callback = adEventProps[propName as keyof typeof adEventProps];\n const eventName = propName.slice(2).toLowerCase() as keyof MuxPlayerElementEventMap;\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>(eventName, playerRef, callback);\n }\n\n return <MuxPlayer ref={useComposedRefs(playerRef, ref)} {...reactProps} />;\n});\n\nexport default MuxPlayerAds;\n", "import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T): (() => void) | void | undefined {\n if (typeof ref === 'function') {\n return ref(value);\n } else if (ref !== null && ref !== undefined) {\n (ref as React.MutableRefObject<T>).current = value;\n }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == 'function') {\n hasCleanup = true;\n }\n return cleanup;\n });\n\n // React <19 will log an error to the console if a callback ref returns a\n // value. We don't use ref cleanups internally so this will only happen if a\n // user's ref callback returns a value, which we only expect if they are\n // using the cleanup functionality added in React 19.\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == 'function') {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\n\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n", "import React, { useEffect } from 'react';\nimport type { GenericEventListener } from './index';\n\nexport const useEventCallbackEffect = <\n TElement extends EventTarget = EventTarget,\n TEventMap extends Record<string, Event> = Record<string, Event>,\n K extends keyof TEventMap = keyof TEventMap,\n>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<TElement | null> | null | undefined,\n callback: GenericEventListener<TEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n\n // Type assertion needed because TypeScript can't infer the exact event type\n const eventName = type as string;\n const listener = callback as EventListener;\n\n eventTarget.addEventListener(eventName, listener);\n return () => {\n eventTarget.removeEventListener(eventName, listener);\n };\n }, [ref?.current, callback, type]);\n};\n"],
|
|
5
|
+
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAA0C,oBAE1CC,EAAO,+BACPC,EAAsB,oCCJtB,IAAAC,EAAuB,oBAQvB,SAASC,EAAUC,EAAqBC,EAA2C,CACjF,GAAI,OAAOD,GAAQ,WACjB,OAAOA,EAAIC,CAAK,EACPD,GAAQ,OAChBA,EAAkC,QAAUC,EAEjD,CAMA,SAASC,KAAkBC,EAA8C,CACvE,OAAQC,GAAS,CACf,IAAIC,EAAa,GACXC,EAAWH,EAAK,IAAKH,GAAQ,CACjC,IAAMO,EAAUR,EAAOC,EAAKI,CAAI,EAChC,MAAI,CAACC,GAAc,OAAOE,GAAW,aACnCF,EAAa,IAERE,CACT,CAAC,EAMD,GAAIF,EACF,MAAO,IAAM,CACX,QAASG,EAAI,EAAGA,EAAIF,EAAS,OAAQE,IAAK,CACxC,IAAMD,EAAUD,EAASE,CAAC,EACtB,OAAOD,GAAW,WACpBA,EAAQ,EAERR,EAAOI,EAAKK,CAAC,EAAG,IAAI,CAExB,CACF,CAEJ,CACF,CAMA,SAASC,KAAsBN,EAA8C,CAE3E,OAAa,cAAYD,EAAY,GAAGC,CAAI,EAAGA,CAAI,CACrD,CCzDA,IAAAO,EAAiC,iBAGpBC,EAAyB,CAKpCC,EACAC,EAEAC,OAEO,aAAU,IAAM,CACrB,IAAMC,EAAcF,GAAA,YAAAA,EAAK,QACzB,GAAI,CAACE,GAAe,CAACD,EAAU,OAG/B,IAAME,EAAYJ,EACZK,EAAWH,EAEjB,OAAAC,EAAY,iBAAiBC,EAAWC,CAAQ,EACzC,IAAM,CACXF,EAAY,oBAAoBC,EAAWC,CAAQ,CACrD,CACF,EAAG,CAACJ,GAAA,YAAAA,EAAK,QAASC,EAAUF,CAAI,CAAC,EFQnC,IAAMM,KAAe,cAA6C,CAACC,EAAOC,IAAQ,CAChF,IAAMC,KAAY,UAAyB,IAAI,EAEzCC,EAAmD,CAAC,EACpDC,EAAsC,CAAC,EAE7C,OAAW,CAACC,EAAGC,CAAC,IAAK,OAAO,QAAQN,CAAK,EACnCK,EAAE,WAAW,MAAM,EACrBF,EAAaE,CAAC,EAAIC,EAElBF,EAAWC,CAAC,EAAIC,EAOpB,QAAWC,KAAYJ,EAAc,CACnC,IAAMK,EAAWL,EAAaI,CAAqC,EAC7DE,EAAYF,EAAS,MAAM,CAAC,EAAE,YAAY,EAChDG,EAAmED,EAAWP,EAAWM,CAAQ,CACnG,CAEA,OAAO,EAAAG,QAAA,cAAC,EAAAC,QAAA,CAAU,IAAKC,EAAgBX,EAAWD,CAAG,EAAI,GAAGG,EAAY,CAC1E,CAAC,EAEMU,EAAQf",
|
|
6
|
+
"names": ["ads_exports", "__export", "ads_default", "__toCommonJS", "import_react", "import_ads", "import_mux_player_react", "React", "setRef", "ref", "value", "composeRefs", "refs", "node", "hasCleanup", "cleanups", "cleanup", "i", "useComposedRefs", "import_react", "useEventCallbackEffect", "type", "ref", "callback", "eventTarget", "eventName", "listener", "MuxPlayerAds", "props", "ref", "playerRef", "adEventProps", "reactProps", "k", "v", "propName", "callback", "eventName", "useEventCallbackEffect", "React", "MuxPlayer", "useComposedRefs", "ads_default"]
|
|
7
|
+
}
|
package/dist/ads.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";import m,{forwardRef as v,useRef as M}from"react";import"@mux/mux-player/ads";import f from"@mux/mux-player-react";import*as l from"react";function i(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function d(...e){return t=>{let a=!1,o=e.map(r=>{let n=i(r,t);return!a&&typeof n=="function"&&(a=!0),n});if(a)return()=>{for(let r=0;r<o.length;r++){let n=o[r];typeof n=="function"?n():i(e[r],null)}}}}function u(...e){return l.useCallback(d(...e),e)}import{useEffect as c}from"react";var E=(e,t,a)=>c(()=>{let o=t==null?void 0:t.current;if(!o||!a)return;let r=e,n=a;return o.addEventListener(r,n),()=>{o.removeEventListener(r,n)}},[t==null?void 0:t.current,a,e]);var y=v((e,t)=>{let a=M(null),o={},r={};for(let[n,s]of Object.entries(e))n.startsWith("onAd")?o[n]=s:r[n]=s;for(let n in o){let s=o[n],p=n.slice(2).toLowerCase();E(p,a,s)}return m.createElement(f,{ref:u(a,t),...r})}),g=y;export{g as default};
|
|
2
|
+
//# sourceMappingURL=ads.mjs.map
|
package/dist/ads.mjs.map
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/ads.tsx", "../src/useComposedRefs.ts", "../src/useEventCallbackEffect.ts"],
|
|
4
|
+
"sourcesContent": ["'use client';\nimport React, { forwardRef, useRef } from 'react';\n// Register <mux-player> (ads) web component.\nimport '@mux/mux-player/ads';\nimport MuxPlayer from '@mux/mux-player-react';\nimport type { GenericEventListener, Props as MuxPlayerIndexProps } from '@mux/mux-player-react';\nimport { useComposedRefs } from './useComposedRefs';\nimport { useEventCallbackEffect } from './useEventCallbackEffect';\nimport type MuxPlayerElement from '@mux/mux-player/ads';\nimport type { EventMap as MuxPlayerElementEventMap } from '@mux/mux-player/ads';\n\nexport interface MuxPlayerProps extends Omit<MuxPlayerIndexProps, 'playerSoftwareVersion' | 'playerSoftwareName'> {\n adTagUrl?: string;\n allowAdBlocker?: boolean;\n\n onAdRequest?: GenericEventListener<MuxPlayerElementEventMap['adrequest']>;\n onAdResponse?: GenericEventListener<MuxPlayerElementEventMap['adresponse']>;\n onAdImpression?: GenericEventListener<MuxPlayerElementEventMap['adimpression']>;\n onAdBreakStart?: GenericEventListener<MuxPlayerElementEventMap['adbreakstart']>;\n onAdPlay?: GenericEventListener<MuxPlayerElementEventMap['adplay']>;\n onAdPlaying?: GenericEventListener<MuxPlayerElementEventMap['adplaying']>;\n onAdPause?: GenericEventListener<MuxPlayerElementEventMap['adpause']>;\n onAdFirstQuartile?: GenericEventListener<MuxPlayerElementEventMap['adfirstquartile']>;\n onAdMidpoint?: GenericEventListener<MuxPlayerElementEventMap['admidpoint']>;\n onAdThirdQuartile?: GenericEventListener<MuxPlayerElementEventMap['adthirdquartile']>;\n onAdError?: GenericEventListener<MuxPlayerElementEventMap['aderror']>;\n onAdClick?: GenericEventListener<MuxPlayerElementEventMap['adclick']>;\n onAdSkip?: GenericEventListener<MuxPlayerElementEventMap['adskip']>;\n onAdEnded?: GenericEventListener<MuxPlayerElementEventMap['adended']>;\n onAdBreakEnd?: GenericEventListener<MuxPlayerElementEventMap['adbreakend']>;\n onAdClose?: GenericEventListener<MuxPlayerElementEventMap['adclose']>;\n}\n\nconst MuxPlayerAds = forwardRef<MuxPlayerElement, MuxPlayerProps>((props, ref) => {\n const playerRef = useRef<MuxPlayerElement>(null);\n\n const adEventProps: Record<string, (e: Event) => void> = {};\n const reactProps: Record<string, unknown> = {};\n\n for (const [k, v] of Object.entries(props)) {\n if (k.startsWith('onAd')) {\n adEventProps[k] = v;\n } else {\n reactProps[k] = v;\n }\n }\n\n // Set up event listeners on the custom element.\n // Still handle events for React 19+ because they don't yet offer\n // a way to have nicely camelCased event prop names on custom elements.\n for (const propName in adEventProps) {\n const callback = adEventProps[propName as keyof typeof adEventProps];\n const eventName = propName.slice(2).toLowerCase() as keyof MuxPlayerElementEventMap;\n useEventCallbackEffect<MuxPlayerElement, MuxPlayerElementEventMap>(eventName, playerRef, callback);\n }\n\n return <MuxPlayer ref={useComposedRefs(playerRef, ref)} {...reactProps} />;\n});\n\nexport default MuxPlayerAds;\n", "import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T): (() => void) | void | undefined {\n if (typeof ref === 'function') {\n return ref(value);\n } else if (ref !== null && ref !== undefined) {\n (ref as React.MutableRefObject<T>).current = value;\n }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == 'function') {\n hasCleanup = true;\n }\n return cleanup;\n });\n\n // React <19 will log an error to the console if a callback ref returns a\n // value. We don't use ref cleanups internally so this will only happen if a\n // user's ref callback returns a value, which we only expect if they are\n // using the cleanup functionality added in React 19.\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == 'function') {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\n\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T> {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n", "import React, { useEffect } from 'react';\nimport type { GenericEventListener } from './index';\n\nexport const useEventCallbackEffect = <\n TElement extends EventTarget = EventTarget,\n TEventMap extends Record<string, Event> = Record<string, Event>,\n K extends keyof TEventMap = keyof TEventMap,\n>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<TElement | null> | null | undefined,\n callback: GenericEventListener<TEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n\n // Type assertion needed because TypeScript can't infer the exact event type\n const eventName = type as string;\n const listener = callback as EventListener;\n\n eventTarget.addEventListener(eventName, listener);\n return () => {\n eventTarget.removeEventListener(eventName, listener);\n };\n }, [ref?.current, callback, type]);\n};\n"],
|
|
5
|
+
"mappings": "aACA,OAAOA,GAAS,cAAAC,EAAY,UAAAC,MAAc,QAE1C,MAAO,sBACP,OAAOC,MAAe,wBCJtB,UAAYC,MAAW,QAQvB,SAASC,EAAUC,EAAqBC,EAA2C,CACjF,GAAI,OAAOD,GAAQ,WACjB,OAAOA,EAAIC,CAAK,EACPD,GAAQ,OAChBA,EAAkC,QAAUC,EAEjD,CAMA,SAASC,KAAkBC,EAA8C,CACvE,OAAQC,GAAS,CACf,IAAIC,EAAa,GACXC,EAAWH,EAAK,IAAKH,GAAQ,CACjC,IAAMO,EAAUR,EAAOC,EAAKI,CAAI,EAChC,MAAI,CAACC,GAAc,OAAOE,GAAW,aACnCF,EAAa,IAERE,CACT,CAAC,EAMD,GAAIF,EACF,MAAO,IAAM,CACX,QAASG,EAAI,EAAGA,EAAIF,EAAS,OAAQE,IAAK,CACxC,IAAMD,EAAUD,EAASE,CAAC,EACtB,OAAOD,GAAW,WACpBA,EAAQ,EAERR,EAAOI,EAAKK,CAAC,EAAG,IAAI,CAExB,CACF,CAEJ,CACF,CAMA,SAASC,KAAsBN,EAA8C,CAE3E,OAAa,cAAYD,EAAY,GAAGC,CAAI,EAAGA,CAAI,CACrD,CCzDA,OAAgB,aAAAO,MAAiB,QAG1B,IAAMC,EAAyB,CAKpCC,EACAC,EAEAC,IAEOJ,EAAU,IAAM,CACrB,IAAMK,EAAcF,GAAA,YAAAA,EAAK,QACzB,GAAI,CAACE,GAAe,CAACD,EAAU,OAG/B,IAAME,EAAYJ,EACZK,EAAWH,EAEjB,OAAAC,EAAY,iBAAiBC,EAAWC,CAAQ,EACzC,IAAM,CACXF,EAAY,oBAAoBC,EAAWC,CAAQ,CACrD,CACF,EAAG,CAACJ,GAAA,YAAAA,EAAK,QAASC,EAAUF,CAAI,CAAC,EFQnC,IAAMM,EAAeC,EAA6C,CAACC,EAAOC,IAAQ,CAChF,IAAMC,EAAYC,EAAyB,IAAI,EAEzCC,EAAmD,CAAC,EACpDC,EAAsC,CAAC,EAE7C,OAAW,CAACC,EAAGC,CAAC,IAAK,OAAO,QAAQP,CAAK,EACnCM,EAAE,WAAW,MAAM,EACrBF,EAAaE,CAAC,EAAIC,EAElBF,EAAWC,CAAC,EAAIC,EAOpB,QAAWC,KAAYJ,EAAc,CACnC,IAAMK,EAAWL,EAAaI,CAAqC,EAC7DE,EAAYF,EAAS,MAAM,CAAC,EAAE,YAAY,EAChDG,EAAmED,EAAWR,EAAWO,CAAQ,CACnG,CAEA,OAAOG,EAAA,cAACC,EAAA,CAAU,IAAKC,EAAgBZ,EAAWD,CAAG,EAAI,GAAGI,EAAY,CAC1E,CAAC,EAEMU,EAAQjB",
|
|
6
|
+
"names": ["React", "forwardRef", "useRef", "MuxPlayer", "React", "setRef", "ref", "value", "composeRefs", "refs", "node", "hasCleanup", "cleanups", "cleanup", "i", "useComposedRefs", "useEffect", "useEventCallbackEffect", "type", "ref", "callback", "eventTarget", "eventName", "listener", "MuxPlayerAds", "forwardRef", "props", "ref", "playerRef", "useRef", "adEventProps", "reactProps", "k", "v", "propName", "callback", "eventName", "useEventCallbackEffect", "React", "MuxPlayer", "useComposedRefs", "ads_default"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
{
|
|
2
|
+
"inputs": {
|
|
3
|
+
"src/useComposedRefs.ts": {
|
|
4
|
+
"bytes": 1822,
|
|
5
|
+
"imports": [
|
|
6
|
+
{
|
|
7
|
+
"path": "react",
|
|
8
|
+
"kind": "import-statement",
|
|
9
|
+
"external": true
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"format": "esm"
|
|
13
|
+
},
|
|
14
|
+
"src/useEventCallbackEffect.ts": {
|
|
15
|
+
"bytes": 950,
|
|
16
|
+
"imports": [
|
|
17
|
+
{
|
|
18
|
+
"path": "react",
|
|
19
|
+
"kind": "import-statement",
|
|
20
|
+
"external": true
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"format": "esm"
|
|
24
|
+
},
|
|
25
|
+
"src/ads.tsx": {
|
|
26
|
+
"bytes": 2980,
|
|
27
|
+
"imports": [
|
|
28
|
+
{
|
|
29
|
+
"path": "react",
|
|
30
|
+
"kind": "import-statement",
|
|
31
|
+
"external": true
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"path": "@mux/mux-player/ads",
|
|
35
|
+
"kind": "import-statement",
|
|
36
|
+
"external": true
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"path": "@mux/mux-player-react",
|
|
40
|
+
"kind": "import-statement",
|
|
41
|
+
"external": true
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"path": "src/useComposedRefs.ts",
|
|
45
|
+
"kind": "import-statement",
|
|
46
|
+
"original": "./useComposedRefs"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"path": "src/useEventCallbackEffect.ts",
|
|
50
|
+
"kind": "import-statement",
|
|
51
|
+
"original": "./useEventCallbackEffect"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"format": "esm"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"outputs": {
|
|
58
|
+
"dist/ads.cjs.js.map": {
|
|
59
|
+
"imports": [],
|
|
60
|
+
"exports": [],
|
|
61
|
+
"inputs": {},
|
|
62
|
+
"bytes": 8061
|
|
63
|
+
},
|
|
64
|
+
"dist/ads.cjs.js": {
|
|
65
|
+
"imports": [
|
|
66
|
+
{
|
|
67
|
+
"path": "react",
|
|
68
|
+
"kind": "require-call",
|
|
69
|
+
"external": true
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"path": "@mux/mux-player/ads",
|
|
73
|
+
"kind": "require-call",
|
|
74
|
+
"external": true
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"path": "@mux/mux-player-react",
|
|
78
|
+
"kind": "require-call",
|
|
79
|
+
"external": true
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"path": "react",
|
|
83
|
+
"kind": "require-call",
|
|
84
|
+
"external": true
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"path": "react",
|
|
88
|
+
"kind": "require-call",
|
|
89
|
+
"external": true
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"exports": [],
|
|
93
|
+
"entryPoint": "src/ads.tsx",
|
|
94
|
+
"inputs": {
|
|
95
|
+
"src/ads.tsx": {
|
|
96
|
+
"bytesInOutput": 410
|
|
97
|
+
},
|
|
98
|
+
"src/useComposedRefs.ts": {
|
|
99
|
+
"bytesInOutput": 351
|
|
100
|
+
},
|
|
101
|
+
"src/useEventCallbackEffect.ts": {
|
|
102
|
+
"bytesInOutput": 212
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"bytes": 1593
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
{
|
|
2
|
+
"inputs": {
|
|
3
|
+
"src/useComposedRefs.ts": {
|
|
4
|
+
"bytes": 1822,
|
|
5
|
+
"imports": [
|
|
6
|
+
{
|
|
7
|
+
"path": "react",
|
|
8
|
+
"kind": "import-statement",
|
|
9
|
+
"external": true
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"format": "esm"
|
|
13
|
+
},
|
|
14
|
+
"src/useEventCallbackEffect.ts": {
|
|
15
|
+
"bytes": 950,
|
|
16
|
+
"imports": [
|
|
17
|
+
{
|
|
18
|
+
"path": "react",
|
|
19
|
+
"kind": "import-statement",
|
|
20
|
+
"external": true
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"format": "esm"
|
|
24
|
+
},
|
|
25
|
+
"src/ads.tsx": {
|
|
26
|
+
"bytes": 2980,
|
|
27
|
+
"imports": [
|
|
28
|
+
{
|
|
29
|
+
"path": "react",
|
|
30
|
+
"kind": "import-statement",
|
|
31
|
+
"external": true
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"path": "@mux/mux-player/ads",
|
|
35
|
+
"kind": "import-statement",
|
|
36
|
+
"external": true
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"path": "@mux/mux-player-react",
|
|
40
|
+
"kind": "import-statement",
|
|
41
|
+
"external": true
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"path": "src/useComposedRefs.ts",
|
|
45
|
+
"kind": "import-statement",
|
|
46
|
+
"original": "./useComposedRefs"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"path": "src/useEventCallbackEffect.ts",
|
|
50
|
+
"kind": "import-statement",
|
|
51
|
+
"original": "./useEventCallbackEffect"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"format": "esm"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"outputs": {
|
|
58
|
+
"dist/ads.mjs.map": {
|
|
59
|
+
"imports": [],
|
|
60
|
+
"exports": [],
|
|
61
|
+
"inputs": {},
|
|
62
|
+
"bytes": 7980
|
|
63
|
+
},
|
|
64
|
+
"dist/ads.mjs": {
|
|
65
|
+
"imports": [
|
|
66
|
+
{
|
|
67
|
+
"path": "react",
|
|
68
|
+
"kind": "import-statement",
|
|
69
|
+
"external": true
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"path": "@mux/mux-player/ads",
|
|
73
|
+
"kind": "import-statement",
|
|
74
|
+
"external": true
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"path": "@mux/mux-player-react",
|
|
78
|
+
"kind": "import-statement",
|
|
79
|
+
"external": true
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"path": "react",
|
|
83
|
+
"kind": "import-statement",
|
|
84
|
+
"external": true
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"path": "react",
|
|
88
|
+
"kind": "import-statement",
|
|
89
|
+
"external": true
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"exports": [
|
|
93
|
+
"default"
|
|
94
|
+
],
|
|
95
|
+
"entryPoint": "src/ads.tsx",
|
|
96
|
+
"inputs": {
|
|
97
|
+
"src/ads.tsx": {
|
|
98
|
+
"bytesInOutput": 336
|
|
99
|
+
},
|
|
100
|
+
"src/useComposedRefs.ts": {
|
|
101
|
+
"bytesInOutput": 349
|
|
102
|
+
},
|
|
103
|
+
"src/useEventCallbackEffect.ts": {
|
|
104
|
+
"bytesInOutput": 213
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
"bytes": 966
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
package/dist/esm.lazy.json
CHANGED
|
@@ -71,8 +71,24 @@
|
|
|
71
71
|
"imports": [],
|
|
72
72
|
"format": "esm"
|
|
73
73
|
},
|
|
74
|
+
"src/useEventCallbackEffect.ts": {
|
|
75
|
+
"bytes": 950,
|
|
76
|
+
"imports": [
|
|
77
|
+
{
|
|
78
|
+
"path": "react",
|
|
79
|
+
"kind": "import-statement",
|
|
80
|
+
"external": true
|
|
81
|
+
}
|
|
82
|
+
],
|
|
83
|
+
"format": "esm"
|
|
84
|
+
},
|
|
85
|
+
"src/types.ts": {
|
|
86
|
+
"bytes": 4954,
|
|
87
|
+
"imports": [],
|
|
88
|
+
"format": "esm"
|
|
89
|
+
},
|
|
74
90
|
"src/index.tsx": {
|
|
75
|
-
"bytes":
|
|
91
|
+
"bytes": 6516,
|
|
76
92
|
"imports": [
|
|
77
93
|
{
|
|
78
94
|
"path": "react",
|
|
@@ -94,11 +110,6 @@
|
|
|
94
110
|
"kind": "import-statement",
|
|
95
111
|
"original": "./common/utils"
|
|
96
112
|
},
|
|
97
|
-
{
|
|
98
|
-
"path": "react",
|
|
99
|
-
"kind": "import-statement",
|
|
100
|
-
"external": true
|
|
101
|
-
},
|
|
102
113
|
{
|
|
103
114
|
"path": "src/useComposedRefs.ts",
|
|
104
115
|
"kind": "import-statement",
|
|
@@ -113,6 +124,16 @@
|
|
|
113
124
|
"path": "src/env.ts",
|
|
114
125
|
"kind": "import-statement",
|
|
115
126
|
"original": "./env"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"path": "src/useEventCallbackEffect.ts",
|
|
130
|
+
"kind": "import-statement",
|
|
131
|
+
"original": "./useEventCallbackEffect"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"path": "src/types.ts",
|
|
135
|
+
"kind": "import-statement",
|
|
136
|
+
"original": "./types"
|
|
116
137
|
}
|
|
117
138
|
],
|
|
118
139
|
"format": "esm"
|
|
@@ -179,7 +200,7 @@
|
|
|
179
200
|
"external": true
|
|
180
201
|
},
|
|
181
202
|
{
|
|
182
|
-
"path": "dist/-
|
|
203
|
+
"path": "dist/-WMXQZQZY.mjs",
|
|
183
204
|
"kind": "dynamic-import"
|
|
184
205
|
}
|
|
185
206
|
],
|
|
@@ -203,13 +224,13 @@
|
|
|
203
224
|
},
|
|
204
225
|
"bytes": 2330
|
|
205
226
|
},
|
|
206
|
-
"dist/-
|
|
227
|
+
"dist/-WMXQZQZY.mjs.map": {
|
|
207
228
|
"imports": [],
|
|
208
229
|
"exports": [],
|
|
209
230
|
"inputs": {},
|
|
210
|
-
"bytes":
|
|
231
|
+
"bytes": 22260
|
|
211
232
|
},
|
|
212
|
-
"dist/-
|
|
233
|
+
"dist/-WMXQZQZY.mjs": {
|
|
213
234
|
"imports": [
|
|
214
235
|
{
|
|
215
236
|
"path": "react",
|
|
@@ -260,10 +281,10 @@
|
|
|
260
281
|
"entryPoint": "src/index.tsx",
|
|
261
282
|
"inputs": {
|
|
262
283
|
"src/index.tsx": {
|
|
263
|
-
"bytesInOutput":
|
|
284
|
+
"bytesInOutput": 1948
|
|
264
285
|
},
|
|
265
286
|
"src/common/utils.ts": {
|
|
266
|
-
"bytesInOutput":
|
|
287
|
+
"bytesInOutput": 619
|
|
267
288
|
},
|
|
268
289
|
"src/useComposedRefs.ts": {
|
|
269
290
|
"bytesInOutput": 351
|
|
@@ -273,9 +294,12 @@
|
|
|
273
294
|
},
|
|
274
295
|
"src/env.ts": {
|
|
275
296
|
"bytesInOutput": 71
|
|
297
|
+
},
|
|
298
|
+
"src/useEventCallbackEffect.ts": {
|
|
299
|
+
"bytesInOutput": 215
|
|
276
300
|
}
|
|
277
301
|
},
|
|
278
|
-
"bytes":
|
|
302
|
+
"bytes": 4041
|
|
279
303
|
}
|
|
280
304
|
}
|
|
281
305
|
}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";"use client";var
|
|
1
|
+
"use strict";"use client";var se=Object.create;var p=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var ye=Object.getOwnPropertyNames;var me=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var pe=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},x=(e,t,n,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of ye(t))!ce.call(e,a)&&a!==n&&p(e,a,{get:()=>t[a],enumerable:!(l=ie(t,a))||l.enumerable});return e};var M=(e,t,n)=>(n=e!=null?se(me(e)):{},x(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)),Ee=e=>x(p({},"__esModule",{value:!0}),e);var Ne={};pe(Ne,{MaxResolution:()=>i.MaxResolution,MediaError:()=>O.MediaError,MinResolution:()=>i.MinResolution,RenditionOrder:()=>i.RenditionOrder,default:()=>we,generatePlayerInitTime:()=>i.generatePlayerInitTime,playerSoftwareName:()=>w,playerSoftwareVersion:()=>S});module.exports=Ee(Ne);var s=M(require("react")),i=require("@mux/playback-core"),O=require("@mux/mux-player");var f=M(require("react")),g=parseInt(f.default.version)>=19,d={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},Me=e=>e==null,Pe=(e,t)=>Me(t)?!1:e in t,xe=e=>e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`),de=(e,t)=>{if(!(!g&&typeof t=="boolean"&&!t)){if(Pe(e,d))return d[e];if(typeof t!="undefined")return/[A-Z]/.test(e)?xe(e):e}};var fe=(e,t)=>!g&&typeof e=="boolean"?"":e,v=(e={})=>{let{ref:t,...n}=e;return Object.entries(n).reduce((l,[a,o])=>{let m=de(a,o);if(!m)return l;let E=fe(o,a);return l[m]=E,l},{})};var T=M(require("react"));function R(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function ge(...e){return t=>{let n=!1,l=e.map(a=>{let o=R(a,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let a=0;a<l.length;a++){let o=l[a];typeof o=="function"?o():R(e[a],null)}}}}function h(...e){return T.useCallback(ge(...e),e)}var b=require("react"),ve=Object.prototype.hasOwnProperty,Re=(e,t)=>{if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(Array.isArray(e))return!Array.isArray(t)||e.length!==t.length?!1:e.some((a,o)=>t[o]===a);let n=Object.keys(e),l=Object.keys(t);if(n.length!==l.length)return!1;for(let a=0;a<n.length;a++)if(!ve.call(t,n[a])||!Object.is(e[n[a]],t[n[a]]))return!1;return!0},P=(e,t,n)=>!Re(t,e[n]),Te=(e,t,n)=>{e[n]=t},he=(e,t,n,l=Te,a=P)=>(0,b.useEffect)(()=>{let o=n==null?void 0:n.current;o&&a(o,t,e)&&l(o,t,e)},[n==null?void 0:n.current,t]),u=he;var be=()=>{try{return"3.4.1"}catch{}return"UNKNOWN"},Ce=be(),C=()=>Ce;var k=require("react"),r=(e,t,n)=>(0,k.useEffect)(()=>{let l=t==null?void 0:t.current;if(!l||!n)return;let a=e,o=n;return l.addEventListener(a,o),()=>{l.removeEventListener(a,o)}},[t==null?void 0:t.current,n,e]);var ke=s.default.forwardRef(({children:e,...t},n)=>s.default.createElement("mux-player",{suppressHydrationWarning:!0,...v(t),ref:n},e)),Oe=(e,t)=>{let{onAbort:n,onCanPlay:l,onCanPlayThrough:a,onEmptied:o,onLoadStart:m,onLoadedData:E,onLoadedMetadata:N,onProgress:L,onDurationChange:A,onVolumeChange:I,onRateChange:_,onResize:K,onWaiting:H,onPlay:D,onPlaying:V,onTimeUpdate:W,onPause:U,onSeeking:z,onSeeked:F,onStalled:G,onSuspend:Z,onEnded:j,onError:q,onCuePointChange:J,onChapterChange:Y,metadata:$,tokens:Q,paused:X,playbackId:B,playbackRates:ee,currentTime:te,themeProps:ne,extraSourceParams:ae,castCustomData:re,_hlsConfig:le,...oe}=t;return u("playbackRates",ee,e),u("metadata",$,e),u("extraSourceParams",ae,e),u("_hlsConfig",le,e),u("themeProps",ne,e),u("tokens",Q,e),u("playbackId",B,e),u("castCustomData",re,e),u("paused",X,e,(y,c)=>{c!=null&&(c?y.pause():y.play())},(y,c,ue)=>y.hasAttribute("autoplay")&&!y.hasPlayed?!1:P(y,c,ue)),u("currentTime",te,e,(y,c)=>{c!=null&&(y.currentTime=c)}),r("abort",e,n),r("canplay",e,l),r("canplaythrough",e,a),r("emptied",e,o),r("loadstart",e,m),r("loadeddata",e,E),r("loadedmetadata",e,N),r("progress",e,L),r("durationchange",e,A),r("volumechange",e,I),r("ratechange",e,_),r("resize",e,K),r("waiting",e,H),r("play",e,D),r("playing",e,V),r("timeupdate",e,W),r("pause",e,U),r("seeking",e,z),r("seeked",e,F),r("stalled",e,G),r("suspend",e,Z),r("ended",e,j),r("error",e,q),r("cuepointchange",e,J),r("chapterchange",e,Y),[oe]},S=C(),w="mux-player-react",Se=s.default.forwardRef((e,t)=>{var m;let n=(0,s.useRef)(null),l=h(n,t),[a]=Oe(n,e),[o]=(0,s.useState)((m=e.playerInitTime)!=null?m:(0,i.generatePlayerInitTime)());return s.default.createElement(ke,{ref:l,defaultHiddenCaptions:e.defaultHiddenCaptions,playerSoftwareName:w,playerSoftwareVersion:S,playerInitTime:o,...a})}),we=Se;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|