batiao-pay/src/platform/payment.ts

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'