@rnw-community/react-native-payments
Version:
Accept Payments with Apple Pay and Android Pay using the Payment Request API.
20 lines • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateShippingOptions = void 0;
const shared_1 = require("@rnw-community/shared");
const is_valid_decimal_monetary_value_util_js_1 = require("./is-valid-decimal-monetary-value/is-valid-decimal-monetary-value.util.js");
const validateShippingOptions = (ErrorType, shippingOptions = []) => {
shippingOptions.forEach(shippingOption => {
if (!(0, shared_1.isDefined)(shippingOption) || !(0, shared_1.isNotEmptyString)(shippingOption.id) || !(0, shared_1.isNotEmptyString)(shippingOption.label)) {
throw new ErrorType(`Missing required member(s): id, label.`);
}
if (!(0, shared_1.isDefined)(shippingOption.amount) || !(0, shared_1.isDefined)(shippingOption.amount.value)) {
throw new ErrorType(`required member value is undefined.`);
}
if (!(0, shared_1.isString)(shippingOption.amount.value) || !(0, is_valid_decimal_monetary_value_util_js_1.isValidDecimalMonetaryValue)(shippingOption.amount.value)) {
throw new ErrorType(`'${shippingOption.amount.value}' is not a valid amount format for shipping options`);
}
});
};
exports.validateShippingOptions = validateShippingOptions;
//# sourceMappingURL=validate-shipping-options.util.js.map