diff --git a/src/runtime/server/api/mutation/create.ts b/src/runtime/server/api/mutation/create.ts index d0743a2..f2362ac 100644 --- a/src/runtime/server/api/mutation/create.ts +++ b/src/runtime/server/api/mutation/create.ts @@ -1,6 +1,6 @@ import { readMultipartFormData, createError } from 'h3' +import { normalizeKey, getKey, getMeta, verifySize, verifyType } from '../../utils' import { defineEventHandler, useRuntimeConfig } from '#imports' -import { normalizeKey, getKey, getMeta } from '#s3' export default defineEventHandler(async (event) => { const config = useRuntimeConfig() @@ -28,23 +28,3 @@ export default defineEventHandler(async (event) => { throw createError('invalid-file') }) - -function verifyType (type: string | undefined, accept: string) { - const regex = new RegExp(accept) - - if (!type || !regex.test(type)) { - throw createError({ - message: 'invalid-type', - status: 400 - }) - } -} - -function verifySize (size: number, maxSizeMb: number) { - if (maxSizeMb && size > maxSizeMb * 1000000) { - throw createError({ - message: 'invalid-size', - status: 400 - }) - } -} diff --git a/src/runtime/server/api/mutation/delete.ts b/src/runtime/server/api/mutation/delete.ts index 45548dc..dc2192d 100644 --- a/src/runtime/server/api/mutation/delete.ts +++ b/src/runtime/server/api/mutation/delete.ts @@ -1,5 +1,5 @@ +import { getKey, normalizeKey } from '../../utils' import { defineEventHandler } from '#imports' -import { getKey, normalizeKey } from '#s3' export default defineEventHandler(async (event) => { const key = getKey(event) diff --git a/src/runtime/server/utils/index.ts b/src/runtime/server/utils/index.ts index 3005d99..cc005ab 100644 --- a/src/runtime/server/utils/index.ts +++ b/src/runtime/server/utils/index.ts @@ -47,4 +47,24 @@ async function getMeta (event: H3Event) { } } -export { normalizeKey, denormalizeKey, getKey, getMeta } +function verifyType (type: string | undefined, accept: string) { + const regex = new RegExp(accept) + + if (!type || !regex.test(type)) { + throw createError({ + message: 'invalid-type', + status: 400 + }) + } +} + +function verifySize (size: number, maxSizeMb: number) { + if (maxSizeMb && size > maxSizeMb * 1000000) { + throw createError({ + message: 'invalid-size', + status: 400 + }) + } +} + +export { normalizeKey, denormalizeKey, getKey, getMeta, verifySize, verifyType }