webCanvasVideoPoster — @gj-kit/expo-media
@gj-kit/expo-media/web에서 공개하는 function입니다. package version 0.6.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { webCanvasVideoPoster } from '@gj-kit/expo-media/web';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * 브라우저 canvas 기반 동영상 포스터 추출기(§5.6). * * ⚠ 실패는 전부 `null`이다 — 예외를 밖으로 내보내지 않는다. **포스터 실패가 동영상 업로드를 * 막지 않는다**는 것이 계약이고(§7.1), 그 정책의 절반이 여기(어댑터가 null을 준다), * 나머지 절반이 코어(`resolvePoster`의 try/catch)에 있다. * * `document`는 주입 가능하지만 **호출 시점에** 해석한다. 생성 시점에 붙잡으면 SSR에서 * 모듈이 평가되는 순간의 `undefined`가 하이드레이션 이후까지 남는다(§8.5 케이스 H 계열의 함정). */declare function webCanvasVideoPoster(input?: { readonly document?: Document | undefined;} | undefined): BinaryPosterAdapter;이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/expo-media - 버전:
0.6.1 - 공개 entry:
./web - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”브라우저 canvas 기반 동영상 포스터 추출기(§5.6).
⚠ 실패는 전부 null이다 — 예외를 밖으로 내보내지 않는다. 포스터 실패가 동영상 업로드를
막지 않는다는 것이 계약이고(§7.1), 그 정책의 절반이 여기(어댑터가 null을 준다),
나머지 절반이 코어(resolvePoster의 try/catch)에 있다.
document는 주입 가능하지만 호출 시점에 해석한다. 생성 시점에 붙잡으면 SSR에서
모듈이 평가되는 순간의 undefined가 하이드레이션 이후까지 남는다(§8.5 케이스 H 계열의 함정).