UNPKG

@foxy.io/sdk

Version:

Universal SDK for a full server-side and a limited in-browser access to Foxy hAPI.

34 lines (33 loc) 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isNextTransactionDate = void 0; const isNextTransactionDate_js_1 = require("../backend/isNextTransactionDate.js"); /** * Checks if given date (YYYY-MM-DD) can be used as the next transaction * date for given subscription. * * @param opts Subscription, customer portal settings and value. * @returns True if given date can be used as next transaction date. */ function isNextTransactionDate(opts) { const customerConfig = opts.settings.subscriptions.allow_next_date_modification; let allowNextDateModification; if (typeof customerConfig === 'boolean') { allowNextDateModification = customerConfig; } else { allowNextDateModification = customerConfig.map(rule => ({ allowedDays: rule.allowed_days, disallowedDates: rule.disallowed_dates, jsonataQuery: rule.jsonata_query, max: rule.max, min: rule.min, })); } return isNextTransactionDate_js_1.isNextTransactionDate({ settings: { subscriptions: { allowNextDateModification } }, subscription: opts.subscription, value: opts.value, }); } exports.isNextTransactionDate = isNextTransactionDate;