diff --git a/packages/core/types/src/http/common/request.ts b/packages/core/types/src/http/common/request.ts index e284868d88..5c789fe919 100644 --- a/packages/core/types/src/http/common/request.ts +++ b/packages/core/types/src/http/common/request.ts @@ -23,6 +23,10 @@ export interface FindParams extends SelectParams { * -created_at */ order?: string + /** + * Whether to include soft-deleted items in the results. + */ + with_deleted?: boolean } export interface AdminBatchLink { diff --git a/packages/core/types/src/http/customer/admin/queries.ts b/packages/core/types/src/http/customer/admin/queries.ts index 2aae956cd0..97e87f3cfb 100644 --- a/packages/core/types/src/http/customer/admin/queries.ts +++ b/packages/core/types/src/http/customer/admin/queries.ts @@ -1,3 +1,4 @@ +import { FindParams } from "../../common" import { BaseCustomerAddressFilters, BaseCustomerFilters, @@ -15,4 +16,4 @@ export interface AdminCustomerFilters extends BaseCustomerFilters { has_account?: boolean } export interface AdminCustomerAddressFilters - extends BaseCustomerAddressFilters {} + extends BaseCustomerAddressFilters, FindParams {} \ No newline at end of file diff --git a/packages/medusa/src/api/admin/customer-groups/[id]/customers/route.ts b/packages/medusa/src/api/admin/customer-groups/[id]/customers/route.ts index dd23f91d45..194a80c5bb 100644 --- a/packages/medusa/src/api/admin/customer-groups/[id]/customers/route.ts +++ b/packages/medusa/src/api/admin/customer-groups/[id]/customers/route.ts @@ -4,11 +4,14 @@ import { MedusaResponse, } from "@medusajs/framework/http" -import { HttpTypes, LinkMethodRequest } from "@medusajs/framework/types" +import { HttpTypes } from "@medusajs/framework/types" import { refetchCustomerGroup } from "../../helpers" export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.AdminBatchLink, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const { id } = req.params diff --git a/packages/medusa/src/api/admin/customer-groups/[id]/route.ts b/packages/medusa/src/api/admin/customer-groups/[id]/route.ts index 0cab744cf5..bfe0bf696a 100644 --- a/packages/medusa/src/api/admin/customer-groups/[id]/route.ts +++ b/packages/medusa/src/api/admin/customer-groups/[id]/route.ts @@ -9,11 +9,10 @@ import { import { MedusaError } from "@medusajs/framework/utils" import { refetchCustomerGroup } from "../helpers" -import { AdminUpdateCustomerGroupType } from "../validators" import { HttpTypes } from "@medusajs/framework/types" export const GET = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest, res: MedusaResponse ) => { const customerGroup = await refetchCustomerGroup( @@ -33,7 +32,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.AdminUpdateCustomerGroup, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const existingCustomerGroup = await refetchCustomerGroup( diff --git a/packages/medusa/src/api/admin/customer-groups/route.ts b/packages/medusa/src/api/admin/customer-groups/route.ts index b1d8a28467..6447e833ac 100644 --- a/packages/medusa/src/api/admin/customer-groups/route.ts +++ b/packages/medusa/src/api/admin/customer-groups/route.ts @@ -7,7 +7,6 @@ import { ContainerRegistrationKeys, remoteQueryObjectFromString, } from "@medusajs/framework/utils" -import { AdminCreateCustomerGroupType } from "./validators" import { refetchCustomerGroup } from "./helpers" import { HttpTypes } from "@medusajs/framework/types" @@ -37,7 +36,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.AdminCreateCustomerGroup, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const createGroups = createCustomerGroupsWorkflow(req.scope) diff --git a/packages/medusa/src/api/admin/customers/[id]/addresses/[address_id]/route.ts b/packages/medusa/src/api/admin/customers/[id]/addresses/[address_id]/route.ts index deb393b5b9..956b462192 100644 --- a/packages/medusa/src/api/admin/customers/[id]/addresses/[address_id]/route.ts +++ b/packages/medusa/src/api/admin/customers/[id]/addresses/[address_id]/route.ts @@ -16,7 +16,7 @@ import { refetchCustomer } from "../../../helpers" import { AdditionalData, HttpTypes } from "@medusajs/framework/types" export const GET = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest, res: MedusaResponse ) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) @@ -35,7 +35,8 @@ export const GET = async ( export const POST = async ( req: AuthenticatedMedusaRequest< - AdminCreateCustomerAddressType & AdditionalData + AdminCreateCustomerAddressType & AdditionalData, + HttpTypes.SelectParams >, res: MedusaResponse ) => { @@ -60,7 +61,7 @@ export const POST = async ( } export const DELETE = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest<{}, HttpTypes.SelectParams>, res: MedusaResponse ) => { const id = req.params.address_id diff --git a/packages/medusa/src/api/admin/customers/[id]/addresses/route.ts b/packages/medusa/src/api/admin/customers/[id]/addresses/route.ts index ae03da2aa4..6c1956485b 100644 --- a/packages/medusa/src/api/admin/customers/[id]/addresses/route.ts +++ b/packages/medusa/src/api/admin/customers/[id]/addresses/route.ts @@ -39,7 +39,8 @@ export const GET = async ( export const POST = async ( req: AuthenticatedMedusaRequest< - AdminCreateCustomerAddressType & AdditionalData + AdminCreateCustomerAddressType & AdditionalData, + HttpTypes.SelectParams >, res: MedusaResponse ) => { diff --git a/packages/medusa/src/api/admin/customers/[id]/customer-groups/route.ts b/packages/medusa/src/api/admin/customers/[id]/customer-groups/route.ts index 45ff6077c0..5d9a3579bb 100644 --- a/packages/medusa/src/api/admin/customers/[id]/customer-groups/route.ts +++ b/packages/medusa/src/api/admin/customers/[id]/customer-groups/route.ts @@ -4,12 +4,15 @@ import { MedusaResponse, } from "@medusajs/framework/http" -import { HttpTypes, LinkMethodRequest } from "@medusajs/framework/types" +import { HttpTypes } from "@medusajs/framework/types" import { refetchCustomer } from "../../helpers" export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.AdminBatchLink, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const { id } = req.params diff --git a/packages/medusa/src/api/admin/customers/[id]/route.ts b/packages/medusa/src/api/admin/customers/[id]/route.ts index aa69071927..33d3effdf0 100644 --- a/packages/medusa/src/api/admin/customers/[id]/route.ts +++ b/packages/medusa/src/api/admin/customers/[id]/route.ts @@ -12,7 +12,7 @@ import { refetchCustomer } from "../helpers" import { AdminUpdateCustomerType } from "../validators" export const GET = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest<{}, HttpTypes.SelectParams>, res: MedusaResponse ) => { const customer = await refetchCustomer( @@ -32,7 +32,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + AdminUpdateCustomerType & AdditionalData, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const existingCustomer = await refetchCustomer(req.params.id, req.scope, [ diff --git a/packages/medusa/src/api/admin/customers/route.ts b/packages/medusa/src/api/admin/customers/route.ts index 3a1693855e..e1168ddc61 100644 --- a/packages/medusa/src/api/admin/customers/route.ts +++ b/packages/medusa/src/api/admin/customers/route.ts @@ -38,7 +38,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + AdminCreateCustomerType & AdditionalData, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const { additional_data, ...rest } = req.validatedBody diff --git a/packages/medusa/src/api/store/customers/me/addresses/[address_id]/route.ts b/packages/medusa/src/api/store/customers/me/addresses/[address_id]/route.ts index e1912ffb9f..57fa7f3dcb 100644 --- a/packages/medusa/src/api/store/customers/me/addresses/[address_id]/route.ts +++ b/packages/medusa/src/api/store/customers/me/addresses/[address_id]/route.ts @@ -15,7 +15,6 @@ import { import { refetchCustomer } from "../../../helpers" import { StoreGetCustomerAddressParamsType, - StoreUpdateCustomerAddressType, } from "../../../validators" export const GET = async ( @@ -45,7 +44,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.StoreUpdateCustomerAddress, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const id = req.auth_context.actor_id! @@ -65,7 +67,7 @@ export const POST = async ( } export const DELETE = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest<{}, HttpTypes.SelectParams>, res: MedusaResponse ) => { const id = req.auth_context.actor_id diff --git a/packages/medusa/src/api/store/customers/me/addresses/route.ts b/packages/medusa/src/api/store/customers/me/addresses/route.ts index 1eed1714e7..ddec7f170a 100644 --- a/packages/medusa/src/api/store/customers/me/addresses/route.ts +++ b/packages/medusa/src/api/store/customers/me/addresses/route.ts @@ -4,10 +4,6 @@ import { } from "@medusajs/framework/http" import { createCustomerAddressesWorkflow } from "@medusajs/core-flows" -import { - StoreCreateCustomerAddressType, - StoreGetCustomerAddressesParamsType, -} from "../../validators" import { ContainerRegistrationKeys, remoteQueryObjectFromString, @@ -16,7 +12,9 @@ import { refetchCustomer } from "../../helpers" import { HttpTypes } from "@medusajs/framework/types" export const GET = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.StoreCustomerAddressFilters + >, res: MedusaResponse ) => { const customerId = req.auth_context.actor_id @@ -42,7 +40,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.StoreCreateCustomerAddress, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const customerId = req.auth_context.actor_id diff --git a/packages/medusa/src/api/store/customers/me/route.ts b/packages/medusa/src/api/store/customers/me/route.ts index e23994c4c6..508e050de6 100644 --- a/packages/medusa/src/api/store/customers/me/route.ts +++ b/packages/medusa/src/api/store/customers/me/route.ts @@ -5,7 +5,6 @@ import { import { StoreGetCustomerParamsType, - StoreUpdateCustomerType, } from "../validators" import { refetchCustomer } from "../helpers" import { MedusaError } from "@medusajs/framework/utils" @@ -30,7 +29,10 @@ export const GET = async ( } export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.StoreUpdateCustomer, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { const customerId = req.auth_context.actor_id diff --git a/packages/medusa/src/api/store/customers/route.ts b/packages/medusa/src/api/store/customers/route.ts index 87df269620..e26f709dad 100644 --- a/packages/medusa/src/api/store/customers/route.ts +++ b/packages/medusa/src/api/store/customers/route.ts @@ -9,7 +9,10 @@ import { HttpTypes } from "@medusajs/framework/types" import { refetchCustomer } from "./helpers" export const POST = async ( - req: AuthenticatedMedusaRequest, + req: AuthenticatedMedusaRequest< + HttpTypes.StoreCreateCustomer, + HttpTypes.SelectParams + >, res: MedusaResponse ) => { // If `actor_id` is present, the request carries authentication for an existing customer