30 lines
969 B
TypeScript
30 lines
969 B
TypeScript
import type { PaymentOrderResponse } from '@/types/payment'
|
|
|
|
import type { PaymentAdapter } from './payment.types'
|
|
|
|
const adapterModule =
|
|
process.env.TARO_ENV === 'alipay'
|
|
// Taro removes the non-target require branch at compile time.
|
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
? (require('./payment.alipay') as { default: PaymentAdapter })
|
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
: (require('./payment.weapp') as { default: PaymentAdapter })
|
|
|
|
const adapter = adapterModule.default
|
|
|
|
export const PAY_ENVIRONMENT = adapter.environment
|
|
|
|
export function getPlatformAuthCode(): Promise<string> {
|
|
return adapter.getAuthCode()
|
|
}
|
|
|
|
export function getAlipayLaunchQrCode(): string {
|
|
return adapter.getLaunchQrCode()
|
|
}
|
|
|
|
export function requestPlatformPayment(params: PaymentOrderResponse): Promise<void> {
|
|
return adapter.requestPayment(params)
|
|
}
|
|
|
|
export { PlatformPaymentError } from './payment.types'
|