UNPKG

@rnw-community/react-native-payments

Version:

Accept Payments with Apple Pay and Android Pay using the Payment Request API.

22 lines (16 loc) 847 B
import { isDefined } from '@rnw-community/shared'; import { validateDisplayItems } from './validate-display-items.util.js'; import { validateTotal } from './validate-total.util.js'; import type { PaymentDetailsModifier } from '../@standard/w3c/payment-details-modifier.js'; import type { ClassType } from '@rnw-community/shared'; export const validateModifiers = (ErrorType: ClassType<Error>, modifiers: PaymentDetailsModifier[] = []): void => { modifiers.forEach(modifier => { if (!isDefined(modifier) || !isDefined(modifier.supportedMethods)) { throw new ErrorType(`required member supportedMethods is undefined.`); } if (isDefined(modifier.total)) { validateTotal(modifier.total, ErrorType); } validateDisplayItems(ErrorType, modifier.additionalDisplayItems); }); };