feat(media): add admin media CRUD preview and storage cleanup
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
createGroupingInputSchema,
|
||||
createMediaAssetInputSchema,
|
||||
linkArtworkGroupingInputSchema,
|
||||
updateMediaAssetInputSchema,
|
||||
} from "@cms/content"
|
||||
|
||||
import { db } from "./client"
|
||||
@@ -107,6 +108,28 @@ export async function createMediaAsset(input: unknown) {
|
||||
})
|
||||
}
|
||||
|
||||
export async function getMediaAssetById(id: string) {
|
||||
return db.mediaAsset.findUnique({
|
||||
where: { id },
|
||||
})
|
||||
}
|
||||
|
||||
export async function updateMediaAsset(input: unknown) {
|
||||
const payload = updateMediaAssetInputSchema.parse(input)
|
||||
const { id, ...data } = payload
|
||||
|
||||
return db.mediaAsset.update({
|
||||
where: { id },
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
export async function deleteMediaAsset(id: string) {
|
||||
return db.mediaAsset.delete({
|
||||
where: { id },
|
||||
})
|
||||
}
|
||||
|
||||
export async function createArtwork(input: unknown) {
|
||||
const payload = createArtworkInputSchema.parse(input)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user