@mux/mux-audio-react 0.15.27-canary.0 → 0.16.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/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";"use client";var w=Object.create;var p=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,H=Object.prototype.hasOwnProperty;var V=(t,n)=>{for(var o in n)p(t,o,{get:n[o],enumerable:!0})},P=(t,n,o,u)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of I(n))!H.call(t,s)&&s!==o&&p(t,s,{get:()=>n[s],enumerable:!(u=L(n,s))||u.enumerable});return t};var g=(t,n,o)=>(o=t!=null?w(h(t)):{},P(n||!t||!t.__esModule?p(o,"default",{value:t,enumerable:!0}):o,t)),N=t=>P(p({},"__esModule",{value:!0}),t);var W={};V(W,{default:()=>U,generatePlayerInitTime:()=>r.generatePlayerInitTime,playerSoftwareName:()=>k,playerSoftwareVersion:()=>x});module.exports=N(W);var d=require("react"),O=(...t)=>{let n=(0,d.useRef)(null);return(0,d.useEffect)(()=>{t.forEach(o=>{o&&(typeof o=="function"?o(n.current):o.current=n.current)})},[t]),n};var a=g(require("react")),e=g(require("prop-types")),r=require("@mux/playback-core");var D=()=>{try{return"0.
|
|
1
|
+
"use strict";"use client";var w=Object.create;var p=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,H=Object.prototype.hasOwnProperty;var V=(t,n)=>{for(var o in n)p(t,o,{get:n[o],enumerable:!0})},P=(t,n,o,u)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of I(n))!H.call(t,s)&&s!==o&&p(t,s,{get:()=>n[s],enumerable:!(u=L(n,s))||u.enumerable});return t};var g=(t,n,o)=>(o=t!=null?w(h(t)):{},P(n||!t||!t.__esModule?p(o,"default",{value:t,enumerable:!0}):o,t)),N=t=>P(p({},"__esModule",{value:!0}),t);var W={};V(W,{default:()=>U,generatePlayerInitTime:()=>r.generatePlayerInitTime,playerSoftwareName:()=>k,playerSoftwareVersion:()=>x});module.exports=N(W);var d=require("react"),O=(...t)=>{let n=(0,d.useRef)(null);return(0,d.useEffect)(()=>{t.forEach(o=>{o&&(typeof o=="function"?o(n.current):o.current=n.current)})},[t]),n};var a=g(require("react")),e=g(require("prop-types")),r=require("@mux/playback-core");var D=()=>{try{return"0.16.0"}catch{}return"UNKNOWN"},K=D(),E=()=>K;var x=E(),k="mux-audio-react";var m=a.default.forwardRef((t,n)=>{var R,M;let{playbackId:o,src:u,children:s,autoPlay:f,preload:b,tokens:_,playbackToken:B,...C}=t,S=Object.fromEntries(Object.entries(C).filter(([i])=>!Object.keys(m.propTypes).includes(i))),[j]=(0,a.useState)((R=t.playerInitTime)!=null?R:(0,r.generatePlayerInitTime)()),[y,v]=(0,a.useState)((M=(0,r.toMuxVideoURL)(t))!=null?M:u),l=(0,a.useRef)(void 0),A=(0,a.useRef)(null),T=O(A,n);return(0,a.useEffect)(()=>{var i;v((i=(0,r.toMuxVideoURL)(t))!=null?i:u)},[u,o]),(0,a.useEffect)(()=>{let i={playerInitTime:j,...t,src:y,playerSoftwareName:k,playerSoftwareVersion:x,autoplay:f},c=T.current;return c&&(l.current=(0,r.initialize)(i,c,l.current)),()=>{(0,r.teardown)(c,l.current),c=void 0,l.current=void 0}},[y]),(0,a.useEffect)(()=>{var i;(i=l.current)==null||i.setAutoplay(f)},[f]),(0,a.useEffect)(()=>{var i;(i=l.current)==null||i.setPreload(b)},[b]),a.default.createElement("audio",{ref:T,...S},s)});m.propTypes={_hlsConfig:e.default.any,beaconCollectionDomain:e.default.string,customDomain:e.default.string,debug:e.default.bool,disableCookies:e.default.bool,disableTracking:e.default.bool,envKey:e.default.string,errorTranslator:e.default.any,liveEdgeStart:e.default.number,maxResolution:e.default.oneOf(["720p","1080p","1440p","2160p"]),metadata:e.default.any,minResolution:e.default.oneOf(["480p","540p","720p","1080p","1440p","2160p"]),playbackId:e.default.string,playbackToken:e.default.string,playerInitTime:e.default.number,preferCmcd:e.default.oneOf(Object.values(r.CmcdTypes)),programStartTime:e.default.number,programEndTime:e.default.number,assetStartTime:e.default.number,assetEndTime:e.default.number,preferPlayback:e.default.oneOf(Object.values(r.PlaybackTypes)),renditionOrder:e.default.oneOf(["desc"]),startTime:e.default.number,initialBandwidthEstimateKbps:e.default.number,initialEstimateSegments:e.default.number,minPreloadSegments:e.default.number,streamType:e.default.oneOf(Object.values(r.StreamTypes)),targetLiveWindow:e.default.number,tokens:e.default.object,type:e.default.oneOf(r.allMediaTypes)};var U=m;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.tsx", "../src/use-combined-refs.ts", "../src/env.ts"],
|
|
4
4
|
"sourcesContent": ["'use client';\n\nimport { useCombinedRefs } from './use-combined-refs';\nimport React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n allMediaTypes,\n initialize,\n teardown,\n MuxMediaProps,\n StreamTypes,\n PlaybackTypes,\n toMuxVideoURL,\n generatePlayerInitTime,\n CmcdTypes,\n} from '@mux/playback-core';\nimport type { PlaybackCore } from '@mux/playback-core';\nimport { getPlayerVersion } from './env';\n\nexport type Props = Omit<\n React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>, HTMLAudioElement>,\n 'autoPlay'\n> &\n MuxMediaProps;\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-audio-react';\nexport { generatePlayerInitTime };\n\nconst MuxAudio = React.forwardRef<HTMLAudioElement | undefined, Partial<Props>>((props, ref) => {\n const { playbackId, src: outerSrc, children, autoPlay, preload, tokens, playbackToken, ...restProps } = props;\n\n const nativeAudioProps = Object.fromEntries(\n Object.entries(restProps).filter(([key]) => !Object.keys(MuxAudio.propTypes as any).includes(key))\n );\n\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n const [src, setSrc] = useState<MuxMediaProps['src']>(toMuxVideoURL(props) ?? outerSrc);\n const playbackCoreRef = useRef<PlaybackCore | undefined>(undefined);\n const innerMediaElRef = useRef<HTMLAudioElement>(null);\n const mediaElRef = useCombinedRefs(innerMediaElRef, ref);\n\n useEffect(() => {\n setSrc(toMuxVideoURL(props) ?? outerSrc);\n }, [outerSrc, playbackId]);\n\n useEffect(() => {\n const propsWithState = {\n // NOTE: Applying playerInitTime first as a simple way of overriding it if/when folks update\n // the value via props after initial load (e.g. when swapping src)\n playerInitTime,\n ...props,\n src,\n playerSoftwareName,\n playerSoftwareVersion,\n autoplay: autoPlay,\n };\n\n // mediaEl required caching here so the ref was not null in the unmount callback.\n let mediaEl = mediaElRef.current;\n if (mediaEl) {\n playbackCoreRef.current = initialize(propsWithState, mediaEl, playbackCoreRef.current);\n }\n\n return () => {\n teardown(mediaEl, playbackCoreRef.current);\n mediaEl = undefined;\n playbackCoreRef.current = undefined;\n };\n }, [src]);\n\n useEffect(() => {\n playbackCoreRef.current?.setAutoplay(autoPlay);\n }, [autoPlay]);\n\n useEffect(() => {\n playbackCoreRef.current?.setPreload(preload);\n }, [preload]);\n\n return (\n /** @TODO Fix types relationships (CJP) */\n <audio ref={mediaElRef as typeof innerMediaElRef} {...nativeAudioProps}>\n {children}\n </audio>\n );\n});\n\nMuxAudio.propTypes = {\n _hlsConfig: PropTypes.any,\n beaconCollectionDomain: PropTypes.string,\n customDomain: PropTypes.string,\n debug: PropTypes.bool,\n disableCookies: PropTypes.bool,\n disableTracking: PropTypes.bool,\n envKey: PropTypes.string,\n errorTranslator: PropTypes.any,\n liveEdgeStart: PropTypes.number,\n maxResolution: PropTypes.oneOf(['720p', '1080p', '1440p', '2160p']),\n metadata: PropTypes.any,\n minResolution: PropTypes.oneOf(['480p', '540p', '720p', '1080p', '1440p', '2160p']),\n playbackId: PropTypes.string,\n playbackToken: PropTypes.string,\n playerInitTime: PropTypes.number,\n preferCmcd: PropTypes.oneOf(Object.values(CmcdTypes)),\n programStartTime: PropTypes.number,\n programEndTime: PropTypes.number,\n assetStartTime: PropTypes.number,\n assetEndTime: PropTypes.number,\n preferPlayback: PropTypes.oneOf(Object.values(PlaybackTypes)),\n renditionOrder: PropTypes.oneOf(['desc']),\n startTime: PropTypes.number,\n initialBandwidthEstimateKbps: PropTypes.number,\n initialEstimateSegments: PropTypes.number,\n minPreloadSegments: PropTypes.number,\n streamType: PropTypes.oneOf(Object.values(StreamTypes)),\n targetLiveWindow: PropTypes.number,\n tokens: PropTypes.object,\n type: PropTypes.oneOf(allMediaTypes),\n};\n\nexport default MuxAudio;\n", "import { useEffect, useRef, MutableRefObject } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "export const isMaybeBrowser = () => typeof window != 'undefined';\n// @ts-ignore\nexport const isMaybeServer = () => typeof global != 'undefined';\n\nconst 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"],
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,2EAAAC,EAAA,0BAAAC,IAAA,eAAAC,EAAAL,GCAA,IAAAM,EAAoD,iBAUvCC,EAAmC,IAAIC,IAAS,CAC3D,IAAMC,KAAY,UAAO,IAAI,EAE7B,sBAAU,IAAM,CACdD,EAAK,QAASE,GAAQ,CACfA,IAED,OAAOA,GAAQ,WACjBA,EAAID,EAAU,OAAO,EAErBC,EAAI,QAAUD,EAAU,QAE5B,CAAC,CACH,EAAG,CAACD,CAAI,CAAC,EAEFC,CACT,EDvBA,IAAAE,EAAmD,oBACnDC,EAAsB,yBACtBC,EAUO,8BEXP,IAAMC,EAAsB,IAAM,CAChC,GAAI,CAEF,MAAO,
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["index_exports", "__export", "index_default", "playerSoftwareName", "playerSoftwareVersion", "__toCommonJS", "import_react", "useCombinedRefs", "refs", "targetRef", "ref", "import_react", "import_prop_types", "import_playback_core", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxAudio", "React", "props", "ref", "_a", "_b", "playbackId", "outerSrc", "children", "autoPlay", "preload", "tokens", "playbackToken", "restProps", "nativeAudioProps", "key", "playerInitTime", "src", "setSrc", "playbackCoreRef", "innerMediaElRef", "mediaElRef", "useCombinedRefs", "propsWithState", "playerSoftwareName", "playerSoftwareVersion", "mediaEl", "PropTypes", "index_default"]
|
|
7
7
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{useEffect as j,useRef as v}from"react";var y=(...r)=>{let a=v(null);return j(()=>{r.forEach(n=>{n&&(typeof n=="function"?n(a.current):n.current=a.current)})},[r]),a};import R,{useEffect as s,useRef as M,useState as P}from"react";import e from"prop-types";import{allMediaTypes as L,initialize as I,teardown as h,StreamTypes as H,PlaybackTypes as V,toMuxVideoURL as g,generatePlayerInitTime as N,CmcdTypes as D}from"@mux/playback-core";var A=()=>{try{return"0.
|
|
1
|
+
"use client";import{useEffect as j,useRef as v}from"react";var y=(...r)=>{let a=v(null);return j(()=>{r.forEach(n=>{n&&(typeof n=="function"?n(a.current):n.current=a.current)})},[r]),a};import R,{useEffect as s,useRef as M,useState as P}from"react";import e from"prop-types";import{allMediaTypes as L,initialize as I,teardown as h,StreamTypes as H,PlaybackTypes as V,toMuxVideoURL as g,generatePlayerInitTime as N,CmcdTypes as D}from"@mux/playback-core";var A=()=>{try{return"0.16.0"}catch{}return"UNKNOWN"},w=A(),T=()=>w;var K=T(),U="mux-audio-react";var c=R.forwardRef((r,a)=>{var m,b;let{playbackId:n,src:u,children:O,autoPlay:l,preload:p,tokens:W,playbackToken:_,...E}=r,x=Object.fromEntries(Object.entries(E).filter(([t])=>!Object.keys(c.propTypes).includes(t))),[k]=P((m=r.playerInitTime)!=null?m:N()),[d,C]=P((b=g(r))!=null?b:u),o=M(void 0),S=M(null),f=y(S,a);return s(()=>{var t;C((t=g(r))!=null?t:u)},[u,n]),s(()=>{let t={playerInitTime:k,...r,src:d,playerSoftwareName:U,playerSoftwareVersion:K,autoplay:l},i=f.current;return i&&(o.current=I(t,i,o.current)),()=>{h(i,o.current),i=void 0,o.current=void 0}},[d]),s(()=>{var t;(t=o.current)==null||t.setAutoplay(l)},[l]),s(()=>{var t;(t=o.current)==null||t.setPreload(p)},[p]),R.createElement("audio",{ref:f,...x},O)});c.propTypes={_hlsConfig:e.any,beaconCollectionDomain:e.string,customDomain:e.string,debug:e.bool,disableCookies:e.bool,disableTracking:e.bool,envKey:e.string,errorTranslator:e.any,liveEdgeStart:e.number,maxResolution:e.oneOf(["720p","1080p","1440p","2160p"]),metadata:e.any,minResolution:e.oneOf(["480p","540p","720p","1080p","1440p","2160p"]),playbackId:e.string,playbackToken:e.string,playerInitTime:e.number,preferCmcd:e.oneOf(Object.values(D)),programStartTime:e.number,programEndTime:e.number,assetStartTime:e.number,assetEndTime:e.number,preferPlayback:e.oneOf(Object.values(V)),renditionOrder:e.oneOf(["desc"]),startTime:e.number,initialBandwidthEstimateKbps:e.number,initialEstimateSegments:e.number,minPreloadSegments:e.number,streamType:e.oneOf(Object.values(H)),targetLiveWindow:e.number,tokens:e.object,type:e.oneOf(L)};var $=c;export{$ as default,N as generatePlayerInitTime,U as playerSoftwareName,K as playerSoftwareVersion};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/use-combined-refs.ts", "../src/index.tsx", "../src/env.ts"],
|
|
4
4
|
"sourcesContent": ["import { useEffect, useRef, MutableRefObject } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "'use client';\n\nimport { useCombinedRefs } from './use-combined-refs';\nimport React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n allMediaTypes,\n initialize,\n teardown,\n MuxMediaProps,\n StreamTypes,\n PlaybackTypes,\n toMuxVideoURL,\n generatePlayerInitTime,\n CmcdTypes,\n} from '@mux/playback-core';\nimport type { PlaybackCore } from '@mux/playback-core';\nimport { getPlayerVersion } from './env';\n\nexport type Props = Omit<\n React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>, HTMLAudioElement>,\n 'autoPlay'\n> &\n MuxMediaProps;\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-audio-react';\nexport { generatePlayerInitTime };\n\nconst MuxAudio = React.forwardRef<HTMLAudioElement | undefined, Partial<Props>>((props, ref) => {\n const { playbackId, src: outerSrc, children, autoPlay, preload, tokens, playbackToken, ...restProps } = props;\n\n const nativeAudioProps = Object.fromEntries(\n Object.entries(restProps).filter(([key]) => !Object.keys(MuxAudio.propTypes as any).includes(key))\n );\n\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n const [src, setSrc] = useState<MuxMediaProps['src']>(toMuxVideoURL(props) ?? outerSrc);\n const playbackCoreRef = useRef<PlaybackCore | undefined>(undefined);\n const innerMediaElRef = useRef<HTMLAudioElement>(null);\n const mediaElRef = useCombinedRefs(innerMediaElRef, ref);\n\n useEffect(() => {\n setSrc(toMuxVideoURL(props) ?? outerSrc);\n }, [outerSrc, playbackId]);\n\n useEffect(() => {\n const propsWithState = {\n // NOTE: Applying playerInitTime first as a simple way of overriding it if/when folks update\n // the value via props after initial load (e.g. when swapping src)\n playerInitTime,\n ...props,\n src,\n playerSoftwareName,\n playerSoftwareVersion,\n autoplay: autoPlay,\n };\n\n // mediaEl required caching here so the ref was not null in the unmount callback.\n let mediaEl = mediaElRef.current;\n if (mediaEl) {\n playbackCoreRef.current = initialize(propsWithState, mediaEl, playbackCoreRef.current);\n }\n\n return () => {\n teardown(mediaEl, playbackCoreRef.current);\n mediaEl = undefined;\n playbackCoreRef.current = undefined;\n };\n }, [src]);\n\n useEffect(() => {\n playbackCoreRef.current?.setAutoplay(autoPlay);\n }, [autoPlay]);\n\n useEffect(() => {\n playbackCoreRef.current?.setPreload(preload);\n }, [preload]);\n\n return (\n /** @TODO Fix types relationships (CJP) */\n <audio ref={mediaElRef as typeof innerMediaElRef} {...nativeAudioProps}>\n {children}\n </audio>\n );\n});\n\nMuxAudio.propTypes = {\n _hlsConfig: PropTypes.any,\n beaconCollectionDomain: PropTypes.string,\n customDomain: PropTypes.string,\n debug: PropTypes.bool,\n disableCookies: PropTypes.bool,\n disableTracking: PropTypes.bool,\n envKey: PropTypes.string,\n errorTranslator: PropTypes.any,\n liveEdgeStart: PropTypes.number,\n maxResolution: PropTypes.oneOf(['720p', '1080p', '1440p', '2160p']),\n metadata: PropTypes.any,\n minResolution: PropTypes.oneOf(['480p', '540p', '720p', '1080p', '1440p', '2160p']),\n playbackId: PropTypes.string,\n playbackToken: PropTypes.string,\n playerInitTime: PropTypes.number,\n preferCmcd: PropTypes.oneOf(Object.values(CmcdTypes)),\n programStartTime: PropTypes.number,\n programEndTime: PropTypes.number,\n assetStartTime: PropTypes.number,\n assetEndTime: PropTypes.number,\n preferPlayback: PropTypes.oneOf(Object.values(PlaybackTypes)),\n renditionOrder: PropTypes.oneOf(['desc']),\n startTime: PropTypes.number,\n initialBandwidthEstimateKbps: PropTypes.number,\n initialEstimateSegments: PropTypes.number,\n minPreloadSegments: PropTypes.number,\n streamType: PropTypes.oneOf(Object.values(StreamTypes)),\n targetLiveWindow: PropTypes.number,\n tokens: PropTypes.object,\n type: PropTypes.oneOf(allMediaTypes),\n};\n\nexport default MuxAudio;\n", "export const isMaybeBrowser = () => typeof window != 'undefined';\n// @ts-ignore\nexport const isMaybeServer = () => typeof global != 'undefined';\n\nconst 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"],
|
|
5
|
-
"mappings": "aAAA,OAAS,aAAAA,EAAW,UAAAC,MAAgC,QAU7C,IAAMC,EAAmC,IAAIC,IAAS,CAC3D,IAAMC,EAAYH,EAAO,IAAI,EAE7B,OAAAD,EAAU,IAAM,CACdG,EAAK,QAASE,GAAQ,CACfA,IAED,OAAOA,GAAQ,WACjBA,EAAID,EAAU,OAAO,EAErBC,EAAI,QAAUD,EAAU,QAE5B,CAAC,CACH,EAAG,CAACD,CAAI,CAAC,EAEFC,CACT,ECvBA,OAAOE,GAAS,aAAAC,EAAW,UAAAC,EAAQ,YAAAC,MAAgB,QACnD,OAAOC,MAAe,aACtB,OACE,iBAAAC,EACA,cAAAC,EACA,YAAAC,EAEA,eAAAC,EACA,iBAAAC,EACA,iBAAAC,EACA,0BAAAC,EACA,aAAAC,MACK,qBCXP,IAAMC,EAAsB,IAAM,CAChC,GAAI,CAEF,MAAO,
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["useEffect", "useRef", "useCombinedRefs", "refs", "targetRef", "ref", "React", "useEffect", "useRef", "useState", "PropTypes", "allMediaTypes", "initialize", "teardown", "StreamTypes", "PlaybackTypes", "toMuxVideoURL", "generatePlayerInitTime", "CmcdTypes", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxAudio", "React", "props", "ref", "_a", "_b", "playbackId", "outerSrc", "children", "autoPlay", "preload", "tokens", "playbackToken", "restProps", "nativeAudioProps", "key", "playerInitTime", "useState", "generatePlayerInitTime", "src", "setSrc", "toMuxVideoURL", "playbackCoreRef", "useRef", "innerMediaElRef", "mediaElRef", "useCombinedRefs", "useEffect", "propsWithState", "playerSoftwareName", "playerSoftwareVersion", "mediaEl", "initialize", "teardown", "PropTypes", "CmcdTypes", "PlaybackTypes", "StreamTypes", "allMediaTypes", "index_default"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mux/mux-audio-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.16.0",
|
|
4
4
|
"description": "A custom mux audio element for React that Just Works™",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"audio",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
}
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@mux/playback-core": "0.
|
|
69
|
+
"@mux/playback-core": "0.35.0",
|
|
70
70
|
"prop-types": "^15.8.1"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|