1 changed files with 25 additions and 0 deletions
@ -0,0 +1,25 @@ |
|||||
|
import { listUserMediaAssetsPage } from "#server/service/media"; |
||||
|
import { parseMeMediaAssetsQuery } from "#server/utils/me-media-assets-query"; |
||||
|
|
||||
|
export default defineWrappedResponseHandler(async (event) => { |
||||
|
const user = await event.context.auth.requireUser(); |
||||
|
const q = getQuery(event); |
||||
|
const { page, pageSize } = parseMeMediaAssetsQuery({ |
||||
|
page: typeof q.page === "string" ? q.page : undefined, |
||||
|
pageSize: typeof q.pageSize === "string" ? q.pageSize : undefined, |
||||
|
}); |
||||
|
|
||||
|
const { items, total } = await listUserMediaAssetsPage(user.id, page, pageSize); |
||||
|
return R.success({ |
||||
|
items: items.map((r) => ({ |
||||
|
id: r.id, |
||||
|
storageKey: r.storageKey, |
||||
|
publicPath: "/public/assets/" + r.storageKey, |
||||
|
mime: r.mime, |
||||
|
sizeBytes: r.sizeBytes, |
||||
|
createdAt: r.createdAt.toISOString(), |
||||
|
refCount: r.refCount, |
||||
|
})), |
||||
|
total, |
||||
|
}); |
||||
|
}); |
||||
Loading…
Reference in new issue