Files
medusa-store/packages/medusa/src/api/admin/api-keys/middlewares.ts
Harminder Virk 48e00169d2 breaking: move shared HTTP utils to the framework (#9402)
Fixes: FRMW-2728, FRMW-2729

After this PR gets merged the following middleware will be exported from the `@medusajs/framework/http` import path.

- applyParamsAsFilters
- clearFiltersByKey
- applyDefaultFilters
- setContext
- getQueryConfig
- httpCompression
- maybeApplyLinkFilter
- refetchEntities
- unlessPath
- validateBody
- validateQuery

Co-authored-by: Adrien de Peretti <25098370+adrien2p@users.noreply.github.com>
2024-10-03 09:42:00 +00:00

88 lines
2.0 KiB
TypeScript

import * as QueryConfig from "./query-config"
import { MiddlewareRoute } from "@medusajs/framework/http"
import {
validateAndTransformBody,
validateAndTransformQuery,
} from "@medusajs/framework"
import {
AdminCreateApiKey,
AdminGetApiKeyParams,
AdminGetApiKeysParams,
AdminRevokeApiKey,
AdminUpdateApiKey,
} from "./validators"
import { createLinkBody } from "../../utils/validators"
export const adminApiKeyRoutesMiddlewares: MiddlewareRoute[] = [
{
method: ["GET"],
matcher: "/admin/api-keys",
middlewares: [
validateAndTransformQuery(
AdminGetApiKeysParams,
QueryConfig.listTransformQueryConfig
),
],
},
{
method: ["GET"],
matcher: "/admin/api-keys/:id",
middlewares: [
validateAndTransformQuery(
AdminGetApiKeyParams,
QueryConfig.retrieveTransformQueryConfig
),
],
},
{
method: ["POST"],
matcher: "/admin/api-keys",
middlewares: [
validateAndTransformBody(AdminCreateApiKey),
validateAndTransformQuery(
AdminGetApiKeyParams,
QueryConfig.retrieveTransformQueryConfig
),
],
},
{
method: ["POST"],
matcher: "/admin/api-keys/:id",
middlewares: [
validateAndTransformBody(AdminUpdateApiKey),
validateAndTransformQuery(
AdminGetApiKeyParams,
QueryConfig.retrieveTransformQueryConfig
),
],
},
{
method: ["DELETE"],
matcher: "/admin/api-keys/:id",
middlewares: [],
},
{
method: ["POST"],
matcher: "/admin/api-keys/:id/revoke",
middlewares: [
validateAndTransformBody(AdminRevokeApiKey),
validateAndTransformQuery(
AdminGetApiKeyParams,
QueryConfig.retrieveTransformQueryConfig
),
],
},
{
method: ["POST"],
matcher: "/admin/api-keys/:id/sales-channels",
middlewares: [
validateAndTransformBody(createLinkBody()),
validateAndTransformQuery(
AdminGetApiKeyParams,
QueryConfig.retrieveTransformQueryConfig
),
],
},
]