25 lines
804 B
JavaScript
25 lines
804 B
JavaScript
import { readBody } from 'h3'
|
|
import { requireAdminSession } from '../../../utils/admin-auth'
|
|
import { renameMediaItem, updateMediaCategories, updateMediaCategory } from '../../../utils/media-library'
|
|
|
|
/**
|
|
* 관리자 미디어 파일명 및 폴더 변경 API
|
|
* @param {import('h3').H3Event} event - 요청 이벤트
|
|
* @returns {Promise<Object|Array<Object>>} 변경된 미디어 항목
|
|
*/
|
|
export default defineEventHandler(async (event) => {
|
|
requireAdminSession(event)
|
|
|
|
const body = await readBody(event)
|
|
|
|
if (body?.category !== undefined && Array.isArray(body?.urls)) {
|
|
return updateMediaCategories(body.urls, body.category)
|
|
}
|
|
|
|
if (body?.category !== undefined) {
|
|
return updateMediaCategory(body?.url, body?.category)
|
|
}
|
|
|
|
return renameMediaItem(body?.url, body?.name || '')
|
|
})
|