medusa-payment-yookassa
Version:
YooKassa payment provider for Medusa
51 lines • 3.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getCurrencyDecimals = getCurrencyDecimals;
exports.getCurrencyMultiplier = getCurrencyMultiplier;
exports.formatCurrency = formatCurrency;
const currencyMultipliers = {
0: [
"BIF",
"CLP",
"DJF",
"GNF",
"JPY",
"KMF",
"KRW",
"MGA",
"PYG",
"RWF",
"UGX",
"VND",
"VUV",
"XAF",
"XOF",
"XPF",
],
3: ["BHD", "IQD", "JOD", "KWD", "OMR", "TND"],
};
function getCurrencyDecimals(currency) {
const code = currency.toUpperCase();
let power = 2;
for (const [key, list] of Object.entries(currencyMultipliers)) {
if (list.includes(code)) {
power = parseInt(key, 10);
break;
}
}
return power;
}
function getCurrencyMultiplier(currency) {
return 10 ** getCurrencyDecimals(currency);
}
function formatCurrency(amount, currency) {
const decimals = getCurrencyDecimals(currency);
const n = typeof amount === "bigint"
? Number(amount)
: typeof amount === "string"
? Number(amount.replace(",", "."))
: amount;
const s = n.toFixed(decimals);
return Number(s) === 0 ? (0).toFixed(decimals) : s;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LWN1cnJlbmN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy9wYXltZW50LXlvb2thc3NhL3V0aWxzL2Zvcm1hdC1jdXJyZW5jeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXNCQSxrREFXQztBQUNELHNEQUVDO0FBRUQsd0NBZUM7QUFyREQsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixDQUFDLEVBQUU7UUFDRCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0tBQ047SUFDRCxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQztDQUM5QyxDQUFBO0FBRUQsU0FBZ0IsbUJBQW1CLENBQUMsUUFBZ0I7SUFDbEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQ25DLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQTtJQUViLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztRQUM5RCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN4QixLQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtZQUN6QixNQUFLO1FBQ1AsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFDRCxTQUFnQixxQkFBcUIsQ0FBQyxRQUFnQjtJQUNwRCxPQUFPLEVBQUUsSUFBSSxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM1QyxDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUM1QixNQUFnQyxFQUNoQyxRQUFnQjtJQUVoQixNQUFNLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUU5QyxNQUFNLENBQUMsR0FDTCxPQUFPLE1BQU0sS0FBSyxRQUFRO1FBQ3hCLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxRQUFRO1lBQzVCLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtJQUVaLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDN0IsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ3BELENBQUMifQ==