feat(tax): migration file (#6523)
**What** - Tax Module Migration file. - Skeleton for API routes and integrations tests for tax API in v2
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
import {
|
||||
AuthenticatedMedusaRequest,
|
||||
MedusaResponse,
|
||||
} from "../../../../types/routing"
|
||||
|
||||
import { defaultAdminTaxRateFields } from "../query-config"
|
||||
import { remoteQueryObjectFromString } from "@medusajs/utils"
|
||||
|
||||
export const GET = async (
|
||||
req: AuthenticatedMedusaRequest,
|
||||
res: MedusaResponse
|
||||
) => {
|
||||
const remoteQuery = req.scope.resolve("remoteQuery")
|
||||
|
||||
const variables = { id: req.params.id }
|
||||
|
||||
const queryObject = remoteQueryObjectFromString({
|
||||
entryPoint: "tax_rate",
|
||||
variables,
|
||||
fields: defaultAdminTaxRateFields,
|
||||
})
|
||||
|
||||
const [taxRate] = await remoteQuery(queryObject)
|
||||
|
||||
res.status(200).json({ tax_rate: taxRate })
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
import * as QueryConfig from "./query-config"
|
||||
|
||||
import { AdminGetTaxRatesTaxRateParams } from "./validators"
|
||||
import { transformQuery } from "../../../api/middlewares"
|
||||
|
||||
import { MiddlewareRoute } from "../../../loaders/helpers/routing/types"
|
||||
import { authenticate } from "../../../utils/authenticate-middleware"
|
||||
|
||||
export const adminTaxRateRoutesMiddlewares: MiddlewareRoute[] = [
|
||||
{
|
||||
method: ["ALL"],
|
||||
matcher: "/admin/tax-rates*",
|
||||
middlewares: [authenticate("admin", ["bearer", "session", "api-key"])],
|
||||
},
|
||||
{
|
||||
method: ["GET"],
|
||||
matcher: "/admin/tax-rates/:id",
|
||||
middlewares: [
|
||||
transformQuery(
|
||||
AdminGetTaxRatesTaxRateParams,
|
||||
QueryConfig.retrieveTransformQueryConfig
|
||||
),
|
||||
],
|
||||
},
|
||||
]
|
||||
@@ -0,0 +1,26 @@
|
||||
export const defaultAdminTaxRateRelations = []
|
||||
export const allowedAdminTaxRateRelations = []
|
||||
export const defaultAdminTaxRateFields = [
|
||||
"id",
|
||||
"name",
|
||||
"code",
|
||||
"rate",
|
||||
"tax_region_id",
|
||||
"created_by",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
"deleted_at",
|
||||
"metadata",
|
||||
]
|
||||
|
||||
export const retrieveTransformQueryConfig = {
|
||||
defaultFields: defaultAdminTaxRateFields,
|
||||
defaultRelations: defaultAdminTaxRateRelations,
|
||||
allowedRelations: allowedAdminTaxRateRelations,
|
||||
isList: false,
|
||||
}
|
||||
|
||||
export const listTransformQueryConfig = {
|
||||
defaultLimit: 20,
|
||||
isList: true,
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
import { FindParams } from "../../../types/common"
|
||||
|
||||
export class AdminGetTaxRatesTaxRateParams extends FindParams {}
|
||||
Reference in New Issue
Block a user