Build 589089stable
Module 259407
2,012 characters · in 92727f635b43a62a.jsDependencies
Source Raw
function(e,l,t){t.d(l,{A:()=>m,m:()=>u});var r,s=t(477900),i=t(582128),n=t(998218),a=t(652215),o=t(815472);let d="allow-forms allow-modals allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts";var u=((r={}).YOUTUBE="YouTube",r.TIKTOK="TikTok",r.TWITCH="Twitch",r);let h={YouTube:{params:{autoplay:"1",auto_play:"1",pageType:a.NzX},dynamicParams:e=>{let{autoMute:l}=e;return{mute:l?"1":void 0}}},TikTok:{params:{utm_source:"discord.gg"}},Twitch:{stripParams:["parent"],appendParams:{parent:["discord.co","discord.com","discordapp.com","ptb.discord.com","canary.discord.com","localhost"]},params:{autoplay:"true"},dynamicParams:e=>{let{autoMute:l}=e;return{muted:l?"true":void 0}}}},c=i.forwardRef(function(e,l){let{allowFullScreen:t,...r}=e,i=t?`${d} allow-fullscreen`:d;return(0,s.jsx)("iframe",{ref:l,className:o.Qu,allow:t?"autoplay; fullscreen":"autoplay",frameBorder:0,scrolling:"no",sandbox:i,allowFullScreen:t,...r})});function m(e){var l;let t,{provider:r,src:a,autoMute:o,...d}=e,u=h[r],m=i.useRef(null);l="TikTok"===r,t=i.useCallback(e=>{e.data["x-tiktok-player"]&&"https://www.tiktok.com"===e.origin&&"onPlayerReady"===e.data.type&&(o&&m.current?.contentWindow?.postMessage({type:"mute","x-tiktok-player":!0},e.origin),m.current?.contentWindow?.postMessage({type:"play","x-tiktok-player":!0},e.origin))},[o,m]),i.useEffect(()=>{if(l)return window.addEventListener("message",t),()=>window.removeEventListener("message",t)},[l,t]);let p=function(e,l,t){let r=n.A.toURLSafe(e??"");if(null===r)return"";if(null==l)return r.toString();if(null!=l.stripParams)for(let e of l.stripParams)r.searchParams.delete(e);if(null!=l.params)for(let e in l.params)r.searchParams.set(e,l.params[e]);if(null!=l.appendParams)for(let e in l.appendParams)for(let t of l.appendParams[e])r.searchParams.append(e,t);if(null!=l.dynamicParams){let e=l.dynamicParams(t);for(let l in e){let t=e[l];null!=t&&r.searchParams.set(l,t)}}return r.toString()}(a,u,{autoMute:o});return(0,s.jsx)(c,{ref:m,src:p,...d})}}