Merge branch 'feat/payment-module-models' into feat/payment-module-interfaces
# Conflicts: # packages/payment/src/models/payment.ts
This commit is contained in:
commit
67acdcdc92
10 files changed
+83
-104
No files matched your search
@@ -11,7 +11,7 @@ import {
|
|||||||
import { generateEntityId } from "@medusajs/utils"
|
import { generateEntityId } from "@medusajs/utils"
|
||||||
import Payment from "./payment"
|
import Payment from "./payment"
|
||||||
|
|
||||||
type OptionalCaptureProps = "created_by" | "created_at" | "completed_at"
|
type OptionalCaptureProps = "created_at"
|
||||||
|
|
||||||
@Entity({ tableName: "capture" })
|
@Entity({ tableName: "capture" })
|
||||||
export default class Capture {
|
export default class Capture {
|
||||||
@@ -41,7 +41,7 @@ export default class Capture {
|
|||||||
created_at: Date
|
created_at: Date
|
||||||
|
|
||||||
@Property({ columnType: "text", nullable: true })
|
@Property({ columnType: "text", nullable: true })
|
||||||
created_by: string | null
|
created_by?: string | null
|
||||||
|
|
||||||
@BeforeCreate()
|
@BeforeCreate()
|
||||||
onCreate() {
|
onCreate() {
|
||||||
|
|||||||
@@ -14,45 +14,17 @@ import {
|
|||||||
} from "@mikro-orm/core"
|
} from "@mikro-orm/core"
|
||||||
import { DAL } from "@medusajs/types"
|
import { DAL } from "@medusajs/types"
|
||||||
|
|
||||||
import { DALUtils, generateEntityId } from "@medusajs/utils"
|
import {
|
||||||
|
DALUtils,
|
||||||
|
generateEntityId,
|
||||||
|
optionalNumericSerializer,
|
||||||
|
PaymentCollectionStatus,
|
||||||
|
} from "@medusajs/utils"
|
||||||
import PaymentProvider from "./payment-provider"
|
import PaymentProvider from "./payment-provider"
|
||||||
import PaymentSession from "./payment-session"
|
import PaymentSession from "./payment-session"
|
||||||
import Payment from "./payment"
|
import Payment from "./payment"
|
||||||
|
|
||||||
/**
|
type OptionalPaymentCollectionProps = "status" | DAL.EntityDateColumns
|
||||||
* @enum
|
|
||||||
*
|
|
||||||
* The payment collection's status.
|
|
||||||
*/
|
|
||||||
export enum PaymentCollectionStatus {
|
|
||||||
/**
|
|
||||||
* The payment collection isn't paid.
|
|
||||||
*/
|
|
||||||
NOT_PAID = "not_paid",
|
|
||||||
/**
|
|
||||||
* The payment collection is awaiting payment.
|
|
||||||
*/
|
|
||||||
AWAITING = "awaiting",
|
|
||||||
/**
|
|
||||||
* The payment collection is authorized.
|
|
||||||
*/
|
|
||||||
AUTHORIZED = "authorized",
|
|
||||||
/**
|
|
||||||
* Some of the payments in the payment collection are authorized.
|
|
||||||
*/
|
|
||||||
PARTIALLY_AUTHORIZED = "partially_authorized",
|
|
||||||
/**
|
|
||||||
* The payment collection is canceled.
|
|
||||||
*/
|
|
||||||
CANCELED = "canceled",
|
|
||||||
}
|
|
||||||
|
|
||||||
type OptionalPaymentCollectionProps =
|
|
||||||
| "authorized_amount"
|
|
||||||
| "refunded_amount"
|
|
||||||
| "region_id"
|
|
||||||
| "completed_at"
|
|
||||||
| DAL.SoftDeletableEntityDateColumns
|
|
||||||
|
|
||||||
@Entity({ tableName: "payment_collection" })
|
@Entity({ tableName: "payment_collection" })
|
||||||
@Filter(DALUtils.mikroOrmSoftDeletableFilterOptions)
|
@Filter(DALUtils.mikroOrmSoftDeletableFilterOptions)
|
||||||
@@ -74,16 +46,16 @@ export default class PaymentCollection {
|
|||||||
@Property({
|
@Property({
|
||||||
columnType: "numeric",
|
columnType: "numeric",
|
||||||
nullable: true,
|
nullable: true,
|
||||||
serializer: Number,
|
serializer: optionalNumericSerializer,
|
||||||
})
|
})
|
||||||
authorized_amount: number | null
|
authorized_amount?: number | null
|
||||||
|
|
||||||
@Property({
|
@Property({
|
||||||
columnType: "numeric",
|
columnType: "numeric",
|
||||||
nullable: true,
|
nullable: true,
|
||||||
serializer: Number,
|
serializer: optionalNumericSerializer,
|
||||||
})
|
})
|
||||||
refunded_amount: number | null
|
refunded_amount?: number | null
|
||||||
|
|
||||||
@Property({ columnType: "text", nullable: true })
|
@Property({ columnType: "text", nullable: true })
|
||||||
region_id?: string | null
|
region_id?: string | null
|
||||||
@@ -108,13 +80,13 @@ export default class PaymentCollection {
|
|||||||
nullable: true,
|
nullable: true,
|
||||||
index: "IDX_payment_collection_deleted_at",
|
index: "IDX_payment_collection_deleted_at",
|
||||||
})
|
})
|
||||||
deleted_at: Date | null
|
deleted_at?: Date | null
|
||||||
|
|
||||||
@Property({
|
@Property({
|
||||||
columnType: "timestamptz",
|
columnType: "timestamptz",
|
||||||
nullable: true,
|
nullable: true,
|
||||||
})
|
})
|
||||||
completed_at: Date | null
|
completed_at?: Date | null
|
||||||
|
|
||||||
@Enum({
|
@Enum({
|
||||||
items: () => PaymentCollectionStatus,
|
items: () => PaymentCollectionStatus,
|
||||||
|
|||||||
@@ -2,23 +2,14 @@ import {
|
|||||||
BeforeCreate,
|
BeforeCreate,
|
||||||
Entity,
|
Entity,
|
||||||
OnInit,
|
OnInit,
|
||||||
OptionalProps,
|
|
||||||
PrimaryKey,
|
PrimaryKey,
|
||||||
Property,
|
Property,
|
||||||
} from "@mikro-orm/core"
|
} from "@mikro-orm/core"
|
||||||
|
|
||||||
import { generateEntityId } from "@medusajs/utils"
|
import { generateEntityId } from "@medusajs/utils"
|
||||||
|
|
||||||
type OptionalPaymentMethodTokenProps =
|
|
||||||
| "data"
|
|
||||||
| "type_detail"
|
|
||||||
| "description_detail"
|
|
||||||
| "metadata"
|
|
||||||
|
|
||||||
@Entity({ tableName: "payment_method_token" })
|
@Entity({ tableName: "payment_method_token" })
|
||||||
export default class PaymentMethodToken {
|
export default class PaymentMethodToken {
|
||||||
[OptionalProps]?: OptionalPaymentMethodTokenProps
|
|
||||||
|
|
||||||
@PrimaryKey({ columnType: "text" })
|
@PrimaryKey({ columnType: "text" })
|
||||||
id: string
|
id: string
|
||||||
|
|
||||||
@@ -32,21 +23,21 @@ export default class PaymentMethodToken {
|
|||||||
name: string
|
name: string
|
||||||
|
|
||||||
@Property({ columnType: "text", nullable: true })
|
@Property({ columnType: "text", nullable: true })
|
||||||
type_detail: string | null
|
type_detail?: string | null
|
||||||
|
|
||||||
@Property({ columnType: "text", nullable: true })
|
@Property({ columnType: "text", nullable: true })
|
||||||
description_detail: string | null
|
description_detail?: string | null
|
||||||
|
|
||||||
@Property({ columnType: "jsonb", nullable: true })
|
@Property({ columnType: "jsonb", nullable: true })
|
||||||
metadata?: Record<string, unknown> | null
|
metadata?: Record<string, unknown> | null
|
||||||
|
|
||||||
@BeforeCreate()
|
@BeforeCreate()
|
||||||
onCreate() {
|
onCreate() {
|
||||||
this.id = generateEntityId(this.id, "paymt")
|
this.id = generateEntityId(this.id, "paymttok")
|
||||||
}
|
}
|
||||||
|
|
||||||
@OnInit()
|
@OnInit()
|
||||||
onInit() {
|
onInit() {
|
||||||
this.id = generateEntityId(this.id, "paymt")
|
this.id = generateEntityId(this.id, "paymttok")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,7 +1,9 @@
|
|||||||
import { Entity, PrimaryKey, Property } from "@mikro-orm/core"
|
import { Entity, OptionalProps, PrimaryKey, Property } from "@mikro-orm/core"
|
||||||
|
|
||||||
@Entity({ tableName: "payment_provider" })
|
@Entity({ tableName: "payment_provider" })
|
||||||
export default class PaymentProvider {
|
export default class PaymentProvider {
|
||||||
|
[OptionalProps]?: "is_enabled"
|
||||||
|
|
||||||
@PrimaryKey({ columnType: "text" })
|
@PrimaryKey({ columnType: "text" })
|
||||||
id: string
|
id: string
|
||||||
|
|
||||||
|
|||||||
@@ -5,54 +5,16 @@ import {
|
|||||||
ManyToOne,
|
ManyToOne,
|
||||||
OneToOne,
|
OneToOne,
|
||||||
OnInit,
|
OnInit,
|
||||||
OptionalProps,
|
|
||||||
PrimaryKey,
|
PrimaryKey,
|
||||||
Property,
|
Property,
|
||||||
} from "@mikro-orm/core"
|
} from "@mikro-orm/core"
|
||||||
import { DAL } from "@medusajs/types"
|
import { generateEntityId, PaymentSessionStatus } from "@medusajs/utils"
|
||||||
import { generateEntityId } from "@medusajs/utils"
|
|
||||||
|
|
||||||
import PaymentCollection from "./payment-collection"
|
import PaymentCollection from "./payment-collection"
|
||||||
import Payment from "./payment"
|
import Payment from "./payment"
|
||||||
|
|
||||||
/**
|
|
||||||
* @enum
|
|
||||||
*
|
|
||||||
* The status of a payment session.
|
|
||||||
*/
|
|
||||||
export enum PaymentSessionStatus {
|
|
||||||
/**
|
|
||||||
* The payment is authorized.
|
|
||||||
*/
|
|
||||||
AUTHORIZED = "authorized",
|
|
||||||
/**
|
|
||||||
* The payment is pending.
|
|
||||||
*/
|
|
||||||
PENDING = "pending",
|
|
||||||
/**
|
|
||||||
* The payment requires an action.
|
|
||||||
*/
|
|
||||||
REQUIRES_MORE = "requires_more",
|
|
||||||
/**
|
|
||||||
* An error occurred while processing the payment.
|
|
||||||
*/
|
|
||||||
ERROR = "error",
|
|
||||||
/**
|
|
||||||
* The payment is canceled.
|
|
||||||
*/
|
|
||||||
CANCELED = "canceled",
|
|
||||||
}
|
|
||||||
|
|
||||||
type OptionalPaymentSessionProps =
|
|
||||||
| "data"
|
|
||||||
| "is_selected"
|
|
||||||
| "authorized_at"
|
|
||||||
| DAL.EntityDateColumns
|
|
||||||
|
|
||||||
@Entity({ tableName: "payment_session" })
|
@Entity({ tableName: "payment_session" })
|
||||||
export default class PaymentSession {
|
export default class PaymentSession {
|
||||||
[OptionalProps]?: OptionalPaymentSessionProps
|
|
||||||
|
|
||||||
@PrimaryKey({ columnType: "text" })
|
@PrimaryKey({ columnType: "text" })
|
||||||
id: string
|
id: string
|
||||||
|
|
||||||
@@ -77,13 +39,13 @@ export default class PaymentSession {
|
|||||||
status: PaymentSessionStatus
|
status: PaymentSessionStatus
|
||||||
|
|
||||||
@Property({ columnType: "boolean", nullable: true })
|
@Property({ columnType: "boolean", nullable: true })
|
||||||
is_selected: boolean | null
|
is_selected?: boolean | null
|
||||||
|
|
||||||
@Property({
|
@Property({
|
||||||
columnType: "timestamptz",
|
columnType: "timestamptz",
|
||||||
nullable: true,
|
nullable: true,
|
||||||
})
|
})
|
||||||
authorized_at: Date | null
|
authorized_at?: Date | null
|
||||||
|
|
||||||
@ManyToOne({
|
@ManyToOne({
|
||||||
index: "IDX_payment_session_payment_collection_id",
|
index: "IDX_payment_session_payment_collection_id",
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import {
|
|||||||
Entity,
|
Entity,
|
||||||
ManyToOne,
|
ManyToOne,
|
||||||
OnInit,
|
OnInit,
|
||||||
OptionalProps,
|
|
||||||
PrimaryKey,
|
PrimaryKey,
|
||||||
Property,
|
Property,
|
||||||
} from "@mikro-orm/core"
|
} from "@mikro-orm/core"
|
||||||
@@ -11,12 +10,8 @@ import {
|
|||||||
import { generateEntityId } from "@medusajs/utils"
|
import { generateEntityId } from "@medusajs/utils"
|
||||||
import Payment from "./payment"
|
import Payment from "./payment"
|
||||||
|
|
||||||
type OptionalRefundProps = "created_by" | "completed_at"
|
|
||||||
|
|
||||||
@Entity({ tableName: "refund" })
|
@Entity({ tableName: "refund" })
|
||||||
export default class Refund {
|
export default class Refund {
|
||||||
[OptionalProps]?: OptionalRefundProps
|
|
||||||
|
|
||||||
@PrimaryKey({ columnType: "text" })
|
@PrimaryKey({ columnType: "text" })
|
||||||
id: string
|
id: string
|
||||||
|
|
||||||
@@ -41,7 +36,7 @@ export default class Refund {
|
|||||||
created_at: Date
|
created_at: Date
|
||||||
|
|
||||||
@Property({ columnType: "text", nullable: true })
|
@Property({ columnType: "text", nullable: true })
|
||||||
created_by: string | null
|
created_by?: string | null
|
||||||
|
|
||||||
@BeforeCreate()
|
@BeforeCreate()
|
||||||
onCreate() {
|
onCreate() {
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ export * from "./decorators"
|
|||||||
export * from "./event-bus"
|
export * from "./event-bus"
|
||||||
export * from "./feature-flags"
|
export * from "./feature-flags"
|
||||||
export * from "./modules-sdk"
|
export * from "./modules-sdk"
|
||||||
|
export * from "./payment"
|
||||||
export * from "./pricing"
|
export * from "./pricing"
|
||||||
export * from "./product"
|
export * from "./product"
|
||||||
export * from "./promotion"
|
export * from "./promotion"
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
export * from "./payment-collection"
|
||||||
|
export * from "./payment-session"
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
/**
|
||||||
|
* @enum
|
||||||
|
*
|
||||||
|
* The payment collection's status.
|
||||||
|
*/
|
||||||
|
export enum PaymentCollectionStatus {
|
||||||
|
/**
|
||||||
|
* The payment collection isn't paid.
|
||||||
|
*/
|
||||||
|
NOT_PAID = "not_paid",
|
||||||
|
/**
|
||||||
|
* The payment collection is awaiting payment.
|
||||||
|
*/
|
||||||
|
AWAITING = "awaiting",
|
||||||
|
/**
|
||||||
|
* The payment collection is authorized.
|
||||||
|
*/
|
||||||
|
AUTHORIZED = "authorized",
|
||||||
|
/**
|
||||||
|
* Some of the payments in the payment collection are authorized.
|
||||||
|
*/
|
||||||
|
PARTIALLY_AUTHORIZED = "partially_authorized",
|
||||||
|
/**
|
||||||
|
* The payment collection is canceled.
|
||||||
|
*/
|
||||||
|
CANCELED = "canceled",
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
/**
|
||||||
|
* @enum
|
||||||
|
*
|
||||||
|
* The status of a payment session.
|
||||||
|
*/
|
||||||
|
export enum PaymentSessionStatus {
|
||||||
|
/**
|
||||||
|
* The payment is authorized.
|
||||||
|
*/
|
||||||
|
AUTHORIZED = "authorized",
|
||||||
|
/**
|
||||||
|
* The payment is pending.
|
||||||
|
*/
|
||||||
|
PENDING = "pending",
|
||||||
|
/**
|
||||||
|
* The payment requires an action.
|
||||||
|
*/
|
||||||
|
REQUIRES_MORE = "requires_more",
|
||||||
|
/**
|
||||||
|
* An error occurred while processing the payment.
|
||||||
|
*/
|
||||||
|
ERROR = "error",
|
||||||
|
/**
|
||||||
|
* The payment is canceled.
|
||||||
|
*/
|
||||||
|
CANCELED = "canceled",
|
||||||
|
}
|
||||||
Reference in new issue
Block a user