diff --git a/packages/core/types/src/http/fulfillment-provider/admin/entities.ts b/packages/core/types/src/http/fulfillment-provider/admin/entities.ts index ec716a6d6e..907ae77be6 100644 --- a/packages/core/types/src/http/fulfillment-provider/admin/entities.ts +++ b/packages/core/types/src/http/fulfillment-provider/admin/entities.ts @@ -1,4 +1,3 @@ -export interface AdminFulfillmentProvider { - id: string - is_enabled: boolean -} +import { BaseFulfillmentProvider } from "../common"; + +export interface AdminFulfillmentProvider extends BaseFulfillmentProvider {} diff --git a/packages/core/types/src/http/fulfillment-provider/common.ts b/packages/core/types/src/http/fulfillment-provider/common.ts new file mode 100644 index 0000000000..f2a744b519 --- /dev/null +++ b/packages/core/types/src/http/fulfillment-provider/common.ts @@ -0,0 +1,4 @@ +export interface BaseFulfillmentProvider { + id: string + is_enabled: boolean +} \ No newline at end of file diff --git a/packages/core/types/src/http/region/store/entities.ts b/packages/core/types/src/http/region/store/entities.ts new file mode 100644 index 0000000000..a0157f33a0 --- /dev/null +++ b/packages/core/types/src/http/region/store/entities.ts @@ -0,0 +1,7 @@ +import { + BaseRegion, + BaseRegionCountry, +} from "../common" + +export interface StoreRegion extends BaseRegion {} +export interface StoreRegionCountry extends BaseRegionCountry {} \ No newline at end of file diff --git a/packages/core/types/src/http/region/store/index.ts b/packages/core/types/src/http/region/store/index.ts new file mode 100644 index 0000000000..bedb8f98bc --- /dev/null +++ b/packages/core/types/src/http/region/store/index.ts @@ -0,0 +1,3 @@ +export * from "./entities" +export * from "./queries" +export * from "./responses" \ No newline at end of file diff --git a/packages/core/types/src/http/region/store.ts b/packages/core/types/src/http/region/store/queries.ts similarity index 54% rename from packages/core/types/src/http/region/store.ts rename to packages/core/types/src/http/region/store/queries.ts index 8460543e0e..203a095d5d 100644 --- a/packages/core/types/src/http/region/store.ts +++ b/packages/core/types/src/http/region/store/queries.ts @@ -1,11 +1,7 @@ import { - BaseRegion, - BaseRegionCountry, BaseRegionCountryFilters, BaseRegionFilters, -} from "./common" +} from "../common" -export interface StoreRegion extends BaseRegion {} -export interface StoreRegionCountry extends BaseRegionCountry {} export interface StoreRegionFilters extends BaseRegionFilters {} export interface StoreRegionCountryFilters extends BaseRegionCountryFilters {} diff --git a/packages/core/types/src/http/region/store/responses.ts b/packages/core/types/src/http/region/store/responses.ts new file mode 100644 index 0000000000..fb01c28c35 --- /dev/null +++ b/packages/core/types/src/http/region/store/responses.ts @@ -0,0 +1,8 @@ +import { PaginatedResponse } from "../../common"; +import { StoreRegion } from "./entities"; + +export type StoreRegionResponse = { + region: StoreRegion +} + +export type StoreRegionListResponse = PaginatedResponse<{ regions: StoreRegion[] }> \ No newline at end of file diff --git a/packages/core/types/src/http/return-reason/index.ts b/packages/core/types/src/http/return-reason/index.ts index 26b8eb9dad..9ef1c8109b 100644 --- a/packages/core/types/src/http/return-reason/index.ts +++ b/packages/core/types/src/http/return-reason/index.ts @@ -1 +1,2 @@ export * from "./admin" +export * from "./store" \ No newline at end of file diff --git a/packages/core/types/src/http/return-reason/store/entities.ts b/packages/core/types/src/http/return-reason/store/entities.ts new file mode 100644 index 0000000000..d6e116dcc7 --- /dev/null +++ b/packages/core/types/src/http/return-reason/store/entities.ts @@ -0,0 +1,3 @@ +import { BaseReturnReason } from "../common"; + +export interface StoreReturnReason extends BaseReturnReason {} \ No newline at end of file diff --git a/packages/core/types/src/http/return-reason/store/index.ts b/packages/core/types/src/http/return-reason/store/index.ts new file mode 100644 index 0000000000..57fa23181b --- /dev/null +++ b/packages/core/types/src/http/return-reason/store/index.ts @@ -0,0 +1,2 @@ +export * from "./entities" +export * from "./responses" \ No newline at end of file diff --git a/packages/core/types/src/http/return-reason/store/responses.ts b/packages/core/types/src/http/return-reason/store/responses.ts new file mode 100644 index 0000000000..7e6dffb443 --- /dev/null +++ b/packages/core/types/src/http/return-reason/store/responses.ts @@ -0,0 +1,10 @@ +import { PaginatedResponse } from "../../common"; +import { StoreReturnReason } from "./entities"; + +export interface StoreReturnReasonResponse { + return_reason: StoreReturnReason +} + +export type StoreReturnReasonListResponse = PaginatedResponse<{ + return_reasons: StoreReturnReason[] +}> \ No newline at end of file diff --git a/packages/core/types/src/http/return/common.ts b/packages/core/types/src/http/return/common.ts new file mode 100644 index 0000000000..1b32289aaf --- /dev/null +++ b/packages/core/types/src/http/return/common.ts @@ -0,0 +1,24 @@ +export interface BaseReturnItem { + id: string + quantity: number + received_quantity: number + reason_id?: string + note?: string + item_id: string + return_id: string + metadata?: Record +} + +export interface BaseReturn { + id: string + order_id: string + status?: string + exchange_id?: string + location_id?: string + claim_id?: string + order_version: number + display_id: number + no_notification?: boolean + refund_amount?: number + items: BaseReturnItem[] +} diff --git a/packages/core/types/src/http/return/index.ts b/packages/core/types/src/http/return/index.ts index 26b8eb9dad..9ef1c8109b 100644 --- a/packages/core/types/src/http/return/index.ts +++ b/packages/core/types/src/http/return/index.ts @@ -1 +1,2 @@ export * from "./admin" +export * from "./store" \ No newline at end of file diff --git a/packages/core/types/src/http/return/store/entities.ts b/packages/core/types/src/http/return/store/entities.ts new file mode 100644 index 0000000000..b8be7b4a40 --- /dev/null +++ b/packages/core/types/src/http/return/store/entities.ts @@ -0,0 +1,3 @@ +import { BaseReturn } from "../common"; + +export interface StoreReturn extends BaseReturn {} diff --git a/packages/core/types/src/http/return/store/index.ts b/packages/core/types/src/http/return/store/index.ts new file mode 100644 index 0000000000..57fa23181b --- /dev/null +++ b/packages/core/types/src/http/return/store/index.ts @@ -0,0 +1,2 @@ +export * from "./entities" +export * from "./responses" \ No newline at end of file diff --git a/packages/core/types/src/http/return/store/responses.ts b/packages/core/types/src/http/return/store/responses.ts new file mode 100644 index 0000000000..b8aae4b3ea --- /dev/null +++ b/packages/core/types/src/http/return/store/responses.ts @@ -0,0 +1,5 @@ +import { StoreReturn } from "./entities"; + +export interface StoreReturnResponse { + return: StoreReturn +} \ No newline at end of file diff --git a/packages/core/types/src/http/shipping-option/index.ts b/packages/core/types/src/http/shipping-option/index.ts index 26b8eb9dad..9ef1c8109b 100644 --- a/packages/core/types/src/http/shipping-option/index.ts +++ b/packages/core/types/src/http/shipping-option/index.ts @@ -1 +1,2 @@ export * from "./admin" +export * from "./store" \ No newline at end of file diff --git a/packages/core/types/src/http/shipping-option/store/entities.ts b/packages/core/types/src/http/shipping-option/store/entities.ts new file mode 100644 index 0000000000..32ef95a1ec --- /dev/null +++ b/packages/core/types/src/http/shipping-option/store/entities.ts @@ -0,0 +1,29 @@ +import { ShippingOptionPriceType } from "../../../fulfillment" +import { BaseFulfillmentProvider } from "../../fulfillment-provider/common" + +export interface StoreShippingOptionType { + id: string + label: string + description: string + code: string + shipping_option_id: string + created_at: string + updated_at: string + deleted_at: string | null +} + +export interface StoreShippingOption { + id: string + name: string + price_type: ShippingOptionPriceType + service_zone_id: string + provider_id: string + provider: BaseFulfillmentProvider + shipping_option_type_id: string | null + type: StoreShippingOptionType + shipping_profile_id: string + amount: number + is_tax_inclusive: boolean + data: Record | null + metadata: Record | null +} \ No newline at end of file diff --git a/packages/core/types/src/http/shipping-option/store/index.ts b/packages/core/types/src/http/shipping-option/store/index.ts new file mode 100644 index 0000000000..57fa23181b --- /dev/null +++ b/packages/core/types/src/http/shipping-option/store/index.ts @@ -0,0 +1,2 @@ +export * from "./entities" +export * from "./responses" \ No newline at end of file diff --git a/packages/core/types/src/http/shipping-option/store/responses.ts b/packages/core/types/src/http/shipping-option/store/responses.ts new file mode 100644 index 0000000000..e6402d6a30 --- /dev/null +++ b/packages/core/types/src/http/shipping-option/store/responses.ts @@ -0,0 +1,5 @@ +import { StoreShippingOption } from "."; + +export interface StoreShippingOptionListResponse { + shipping_options: StoreShippingOption[] +} \ No newline at end of file diff --git a/packages/medusa/src/api/store/products/[id]/route.ts b/packages/medusa/src/api/store/products/[id]/route.ts index 9e1f5f05ec..5e537dd84d 100644 --- a/packages/medusa/src/api/store/products/[id]/route.ts +++ b/packages/medusa/src/api/store/products/[id]/route.ts @@ -7,10 +7,11 @@ import { wrapProductsWithTaxPrices, } from "../helpers" import { StoreGetProductParamsType } from "../validators" +import { HttpTypes } from "@medusajs/types" export const GET = async ( req: RequestWithContext, - res: MedusaResponse + res: MedusaResponse ) => { const withInventoryQuantity = req.remoteQueryConfig.fields.some((field) => field.includes("variants.inventory_quantity") diff --git a/packages/medusa/src/api/store/products/route.ts b/packages/medusa/src/api/store/products/route.ts index 9a5f4ee52a..c691b5dcb9 100644 --- a/packages/medusa/src/api/store/products/route.ts +++ b/packages/medusa/src/api/store/products/route.ts @@ -7,10 +7,11 @@ import { MedusaResponse } from "../../../types/routing" import { wrapVariantsWithInventoryQuantity } from "../../utils/middlewares" import { StoreGetProductsParamsType } from "./validators" import { RequestWithContext, wrapProductsWithTaxPrices } from "./helpers" +import { HttpTypes } from "@medusajs/types" export const GET = async ( req: RequestWithContext, - res: MedusaResponse + res: MedusaResponse ) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) const context: object = {} diff --git a/packages/medusa/src/api/store/regions/[id]/route.ts b/packages/medusa/src/api/store/regions/[id]/route.ts index 546395d311..2eccb5c687 100644 --- a/packages/medusa/src/api/store/regions/[id]/route.ts +++ b/packages/medusa/src/api/store/regions/[id]/route.ts @@ -4,8 +4,12 @@ import { remoteQueryObjectFromString, } from "@medusajs/utils" import { MedusaRequest, MedusaResponse } from "../../../../types/routing" +import { HttpTypes } from "@medusajs/types" -export const GET = async (req: MedusaRequest, res: MedusaResponse) => { +export const GET = async ( + req: MedusaRequest, + res: MedusaResponse +) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) const queryObject = remoteQueryObjectFromString({ entryPoint: "region", diff --git a/packages/medusa/src/api/store/regions/route.ts b/packages/medusa/src/api/store/regions/route.ts index 7c7d4c0885..cb100add5f 100644 --- a/packages/medusa/src/api/store/regions/route.ts +++ b/packages/medusa/src/api/store/regions/route.ts @@ -3,8 +3,12 @@ import { remoteQueryObjectFromString, } from "@medusajs/utils" import { MedusaRequest, MedusaResponse } from "../../../types/routing" +import { HttpTypes } from "@medusajs/types" -export const GET = async (req: MedusaRequest, res: MedusaResponse) => { +export const GET = async ( + req: MedusaRequest, + res: MedusaResponse +) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) const queryObject = remoteQueryObjectFromString({ diff --git a/packages/medusa/src/api/store/return-reasons/[id]/route.ts b/packages/medusa/src/api/store/return-reasons/[id]/route.ts index c76a56dbb0..d695f8aa5f 100644 --- a/packages/medusa/src/api/store/return-reasons/[id]/route.ts +++ b/packages/medusa/src/api/store/return-reasons/[id]/route.ts @@ -4,10 +4,11 @@ import { } from "@medusajs/utils" import { MedusaRequest, MedusaResponse } from "../../../../types/routing" import { StoreReturnReasonParamsType } from "../validators" +import { HttpTypes } from "@medusajs/types" export const GET = async ( req: MedusaRequest, - res: MedusaResponse + res: MedusaResponse ) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) diff --git a/packages/medusa/src/api/store/return-reasons/route.ts b/packages/medusa/src/api/store/return-reasons/route.ts index 4f507c94ad..4eeab980cf 100644 --- a/packages/medusa/src/api/store/return-reasons/route.ts +++ b/packages/medusa/src/api/store/return-reasons/route.ts @@ -3,8 +3,12 @@ import { remoteQueryObjectFromString, } from "@medusajs/utils" import { MedusaRequest, MedusaResponse } from "../../../types/routing" +import { HttpTypes } from "@medusajs/types" -export const GET = async (req: MedusaRequest, res: MedusaResponse) => { +export const GET = async ( + req: MedusaRequest, + res: MedusaResponse +) => { const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY) const queryObject = remoteQueryObjectFromString({ diff --git a/packages/medusa/src/api/store/return/route.ts b/packages/medusa/src/api/store/return/route.ts index 90ce2b426d..2bd2c59adc 100644 --- a/packages/medusa/src/api/store/return/route.ts +++ b/packages/medusa/src/api/store/return/route.ts @@ -1,10 +1,11 @@ import { createAndCompleteReturnOrderWorkflow } from "@medusajs/core-flows" import { MedusaRequest, MedusaResponse } from "../../../types/routing" import { StorePostReturnsReqSchemaType } from "./validators" +import { HttpTypes } from "@medusajs/types" export const POST = async ( req: MedusaRequest, - res: MedusaResponse + res: MedusaResponse ) => { const input = req.validatedBody as StorePostReturnsReqSchemaType @@ -13,5 +14,5 @@ export const POST = async ( input, }) - res.status(200).json({ return: result }) + res.status(200).json({ return: result as HttpTypes.StoreReturn }) } diff --git a/packages/medusa/src/api/store/shipping-options/route.ts b/packages/medusa/src/api/store/shipping-options/route.ts index 797b855567..a9a72a3318 100644 --- a/packages/medusa/src/api/store/shipping-options/route.ts +++ b/packages/medusa/src/api/store/shipping-options/route.ts @@ -1,9 +1,12 @@ import { listShippingOptionsForCartWorkflow } from "@medusajs/core-flows" -import { ICartModuleService } from "@medusajs/types" +import { HttpTypes, ICartModuleService } from "@medusajs/types" import { MedusaError, ModuleRegistrationName } from "@medusajs/utils" import { MedusaRequest, MedusaResponse } from "../../../types/routing" -export const GET = async (req: MedusaRequest, res: MedusaResponse) => { +export const GET = async ( + req: MedusaRequest, + res: MedusaResponse +) => { const { cart_id } = req.filterableFields as { cart_id: string } if (!cart_id) { throw new MedusaError(