1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,51606,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(22016),l=e.i(57688),i=e.i(83036);function n({short:e}){var o;let a,c=(0,s.useRef)(null),[d,u]=(0,s.useState)(!1),[h,m]=(0,s.useState)(!1),x=(0,i.useToast)();(0,s.useEffect)(()=>{if(!d)return;let e=c.current;if(!e)return;let t=e.parentElement;if(!t)return;let s=new IntersectionObserver(([t])=>{t.isIntersecting||(e.pause(),u(!1))},{threshold:.1});return s.observe(t),()=>s.disconnect()},[d]),(0,s.useEffect)(()=>{if(!d)return;let e=c.current;if(!e)return;let t=()=>{e.play().catch(()=>u(!1))};if(!(e.readyState>=2))return e.addEventListener("canplay",t,{once:!0}),()=>e.removeEventListener("canplay",t);t()},[d]);let g=(0,s.useCallback)(async t=>{t.stopPropagation();let s=e.shareToken?`${window.location.origin}/clip/${e.shareToken}`:`${window.location.origin}/courses/${e.courseSlug}`;try{await navigator.clipboard.writeText(s),x("Link copied to clipboard")}catch{}},[e.shareToken,e.courseSlug,x]);return(0,t.jsxs)("div",{className:"group",children:[(0,t.jsxs)("div",{className:"relative rounded-xl overflow-hidden bg-gray-900 cursor-pointer shadow-lg hover:shadow-xl transition-shadow",style:{aspectRatio:e.isVertical?"9/16":"16/9"},onClick:()=>{if(d){c.current?.pause(),u(!1);return}u(!0)},children:[d?(0,t.jsx)("video",{ref:c,src:e.videoUrl,muted:h,loop:!0,playsInline:!0,preload:"auto",className:"w-full h-full object-cover"}):e.thumbnailUrl?(0,t.jsx)(l.default,{src:e.thumbnailUrl,alt:e.hookLine||e.courseTitle,fill:!0,sizes:"(max-width: 640px) 50vw, (max-width: 1024px) 25vw, 20vw",className:"object-cover"}):(0,t.jsx)("div",{className:"w-full h-full bg-pursuit-navy flex items-center justify-center p-4",children:(0,t.jsx)("p",{className:"text-white/70 text-xs text-center font-medium leading-snug",children:e.hookLine||e.courseTitle})}),!d&&(0,t.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black/20",children:(0,t.jsx)("div",{className:"w-12 h-12 rounded-full bg-white/90 flex items-center justify-center shadow-lg",children:(0,t.jsx)("svg",{className:"w-5 h-5 text-pursuit-navy ml-0.5",fill:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{d:"M8 5v14l11-7z"})})})}),(0,t.jsx)("button",{onClick:g,className:"absolute top-2.5 right-2.5 bg-black/60 hover:bg-black/80 text-white p-2 rounded-full transition-colors z-10 opacity-0 group-hover:opacity-100",children:(0,t.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8.684 13.342C8.886 12.938 9 12.482 9 12c0-.482-.114-.938-.316-1.342m0 2.684a3 3 0 110-2.684m0 2.684l6.632 3.316m-6.632-6l6.632-3.316m0 0a3 3 0 105.367-2.684 3 3 0 00-5.367 2.684zm0 9.316a3 3 0 105.368 2.684 3 3 0 00-5.368-2.684z"})})}),d&&(0,t.jsx)("button",{onClick:e=>{e.stopPropagation();let t=c.current;t&&(t.muted=!t.muted,m(t.muted))},className:"absolute bottom-3 left-3 bg-black/60 hover:bg-black/80 text-white p-2 rounded-full transition-colors z-10",children:h?(0,t.jsxs)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"}),(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2"})]}):(0,t.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15.536 8.464a5 5 0 010 7.072m2.828-9.9a9 9 0 010 12.728M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"})})}),null!=e.duration&&(0,t.jsx)("div",{className:"absolute bottom-3 right-3 bg-black/60 text-white text-[10px] px-1.5 py-0.5 rounded font-mono",children:(a=Math.floor((o=e.duration)/60),`${a}:${(o%60).toString().padStart(2,"0")}`)})]}),(0,t.jsxs)("div",{className:"mt-3 text-center",children:[e.hookLine?(0,t.jsx)("p",{className:"text-sm text-gray-800 font-medium leading-snug mb-1",children:e.hookLine}):e.caption?(0,t.jsxs)("p",{className:"text-sm text-gray-800 font-medium leading-snug mb-1",children:["â",e.caption,"â"]}
1):e.title?(0,t.jsx)("p",{className:"text-sm text-gray-800 font-medium leading-snug mb-1",children:e.title}):null,(0,t.jsx)(r.default,{href:`/courses/${e.courseSlug}`,className:"text-xs text-pursuit-gold hover:text-yellow-600 transition-colors font-medium",children:e.courseTitle}),(0,t.jsx)("p",{className:"text-xs text-gray-400 mt-0.5",children:e.professor})]})]})}e.s(["default",0,function({shorts:e}){let r=e.filter(e=>e.isVertical),l=e.filter(e=>!e.isVertical),[i,o]=(0,s.useState)(20),a=(0,s.useRef)(null);(0,s.useEffect)(()=>{let e=a.current;if(!e)return;let t=new IntersectionObserver(([e])=>{e.isIntersecting&&o(e=>Math.min(e+20,r.length))},{rootMargin:"400px"});return t.observe(e),()=>t.disconnect()},[r.length,20]);let c=r.slice(0,i),d=i<r.length;return(0,t.jsxs)("div",{className:"space-y-20",children:[c.length>0&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 gap-x-10 gap-y-14",children:c.map(e=>(0,t.jsx)(n,{short:e},e.id))}),d&&(0,t.jsx)("div",{ref:a,className:"flex justify-center py-8",children:(0,t.jsx)("div",{className:"animate-pulse text-sm text-gray-400",children:"Loading more shorts..."})})]}),l.length>0&&(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-x-10 gap-y-14",children:l.map(e=>(0,t.jsx)(n,{short:e},e.id))})]})}])}]);
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.