세션·로그인 제한, ZIP/업로드 스트리밍, CSP 최소 강제와 Report-Only, Playwright 격리 검증을 추가하고 미디어 목록을 reconcile 후 database 모드로 고정한다. Co-authored-by: Cursor <cursoragent@cursor.com>
23 lines
732 B
JavaScript
23 lines
732 B
JavaScript
/**
|
|
* 미디어 카탈로그 조회 모드를 환경 변수로 해석한다.
|
|
*/
|
|
|
|
/**
|
|
* 카탈로그 모드 문자열을 허용 값으로 정규화한다.
|
|
* @param {unknown} value - 원본 모드
|
|
* @returns {'filesystem'|'shadow'|'database'|null} 정규화된 모드
|
|
*/
|
|
export const normalizeMediaCatalogMode = (value) => {
|
|
const mode = String(value || '').trim().toLowerCase()
|
|
|
|
return ['filesystem', 'shadow', 'database'].includes(mode) ? mode : null
|
|
}
|
|
|
|
/**
|
|
* 현재 적용 중인 미디어 카탈로그 모드를 반환한다.
|
|
* @returns {'filesystem'|'shadow'|'database'} 조회 모드
|
|
*/
|
|
export const getMediaCatalogMode = () => {
|
|
return normalizeMediaCatalogMode(process.env.MEDIA_CATALOG_MODE) || 'filesystem'
|
|
}
|