PageSourceSearch

https://cryptonary.com/assets/Livestream2Viewer-zOXdc8zr.js

js cryptonary.com collected 2026-09-24 22:08:19 UTC 3,023 bytes, 1 lines download raw bytes

1import{j as i,J as b}from"./index-CKoX0LkU.js";import{r as o}from"./ui-icons-DZ-xAQXe.js";/* empty css              */import{u as w,L as E,a as L,b as g,c as y,g as x}from"./useLivestream2LandscapeImmersion-mKu6Dtzx.js";import{m as R,r as S,L as j}from"./livestream2MediaDevices-QwPlEyII.js";import{l as V}from"./livestream2MobilePlayerMotion-CpkpnfwL.js";import"./home-startup-core-thq0voGQ.js";import"./ui-icons-deferred-DuTkLIiE.js";import"./use-mobile-Bxlkf_pd.js";import"./dropdown-menu-DMt4gZNN.js";import"./index-BnYIXXA6.js";import"./index-Cgp0uGH3.js";import"./index-Dtk1Y1Tp.js";import"./index-B94emS8f.js";import"./useLivestream2-VX6SYw-s.js";import"./edgeFunctionError-D885XrGM.js";import"./useLivestream2LiveKit-DMN3LyE0.js";import"./onboardingWelcomeVideo-B_59z3k5.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new t.Error().stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="7f1b0557-723a-47de-b2d6-5650fadb0747",t._sentryDebugIdIdentifier="sentry-dbid-7f1b0557-723a-47de-b2d6-5650fadb0747")}catch{}})();const _=2500;function A({rootRef:t,streamId:e}){const[s,u]=o.useState(null),[m,a]=o.useState(null);return o.useEffect(()=>{const n=window.setTimeout(()=>{a(e)},_);return()=>window.clearTimeout(n)},[e]),o.useEffect(()=>{const n=t.current;if(!n)return;let f=!0;const d=new Map,p=()=>{f&&(u(e),R(e))},h=r=>{if(d.has(r))return;const l=()=>{r.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&p()};r.addEventListener("loadeddata",l),r.addEventListener("playing",l),r.addEventListener("timeupdate",l),d.set(r,()=>{r.removeEventListener("loadeddata",l),r.removeEventListener("playing",l),r.removeEventListener("timeupdate",l)}),l()},c=()=>{n.querySelectorAll("video").forEach(h)};c();const v=new MutationObserver(c);return v.observe(n,{childList:!0,subtree:!0}),()=>{f=!1,v.disconnect(),d.forEach(r=>r()),d.clear()}},[t,e]),{mediaReady:s===e,showReadinessOverlay:s!==e&&m!==e}}function Y({streamId:t,compact:e=!1,keyboardCompact:s=!1,liveStartedAt:u,onLeaveStream:m}){const a=o.useRef(null);w({enabled:!0,targetRef:a});const{showReadinessOverlay:n}=A({rootRef:a,streamId:t});return o.useEffect(()=>{S(a.current)},[s]),i.jsx("div",{className:"min-w-0 w-full","data-livestream2-viewer":t,children:i.jsxs("div",{ref:a,"data-chat-swipe-disabled":!0,className:b("livestream2-video-shell group/player relative w-full touch-none overflow-hidden overscroll-none bg-black",e?V({compact:e,keyboardCompact:s}):"aspect-video"),children:[i.jsx(E,{className:"h-full w-full",children:i.jsx(L,{compact:e,keyboardCompact:s,className:e?"h-full min-h-0":"h-full w-full min-h-0"})}),n?i.jsx("div",{className:"pointer-events-none absolute inset-0 z-10 flex items-center justify-center bg-black",children:i.jsx(j,{label:"Starting video",variant:"tile",compact:s})}):null,i.jsx(g,{streamId:t}),i.jsx(y,{targetRef:a}),s?null:i.jsx(x,{targetRef:a,liveStartedAt:u,compact:e,onLeaveStream:m})]})})}export{Y as Livestream2Viewer};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.