@lambdacurry/medusa-payment-braintree
Version:
Braintree plugin for Medusa
23 lines • 1.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatToTwoDecimalString = formatToTwoDecimalString;
const utils_1 = require("@medusajs/framework/utils");
/**
* Formats a number or string to a two-decimal string representation.
* Validates the input is parseable to a number and throws MedusaError on NaN.
*
* @param amount - The amount to format (number or string)
* @returns A string representation with exactly 2 decimal places
* @throws MedusaError if the amount is not a valid number
*/
function formatToTwoDecimalString(amount) {
if (typeof amount !== 'string') {
amount = amount.toString();
}
const num = Number.parseFloat(amount);
if (Number.isNaN(num)) {
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_ARGUMENT, 'Invalid amount');
}
return num.toFixed(2);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LWFtb3VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9mb3JtYXQtYW1vdW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBVUEsNERBWUM7QUF0QkQscURBQXdEO0FBRXhEOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxNQUF1QjtJQUM5RCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFdEMsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLG1CQUFXLENBQUMsbUJBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hCLENBQUMifQ==