mediaFileName — @gj-kit/expo-media
@gj-kit/expo-media에서 공개하는 function입니다. package version 0.6.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { mediaFileName } from '@gj-kit/expo-media';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * 전신의 `defaultMediaFileName`·`inferFileName`·`inferWebFileName` **3종을 하나로 통합**(§5.7.2-③). * * `fileName`이 있으면 그대로 쓰고, 없으면 `${prefix}-${now}.${ext}`(전신 규칙 보존). * ⚠ `now`는 결정론적 테스트를 위한 주입구다 — 생략 시 `Date.now()`로 전신과 동일하게 동작한다 * (§5.4.1-15). 전신은 `Date.now()`를 직접 호출해 파일명 규칙에 테스트가 없었다. * ⚠ `prefix` 기본값은 `'media'`다 — 전신 `'photo'`에서 바꿨다(§5.4.1-13). 호스트는 항상 자기 * 프리픽스를 주입하므로 이관 영향이 0이며, 라이브러리 이름과의 일관성을 택했다. */declare function mediaFileName(input: { readonly fileName?: string | null | undefined; readonly contentType: MediaContentType; readonly prefix?: string | undefined; readonly now?: number | undefined;}): string;이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/expo-media - 버전:
0.6.1 - 공개 entry:
. - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”전신의 defaultMediaFileName·inferFileName·inferWebFileName 3종을 하나로 통합(§5.7.2-③).
fileName이 있으면 그대로 쓰고, 없으면 ${prefix}-${now}.${ext}(전신 규칙 보존).
⚠ now는 결정론적 테스트를 위한 주입구다 — 생략 시 Date.now()로 전신과 동일하게 동작한다
(§5.4.1-15). 전신은 Date.now()를 직접 호출해 파일명 규칙에 테스트가 없었다.
⚠ prefix 기본값은 'media'다 — 전신 'photo'에서 바꿨다(§5.4.1-13). 호스트는 항상 자기
프리픽스를 주입하므로 이관 영향이 0이며, 라이브러리 이름과의 일관성을 택했다.