tsch-ej-numbers
Version:
A powerful TypeScript API for analyzing EuroJackpot draws. Perfect for developers who want to evaluate historical data, generate statistics, or build lottery-related applications.
72 lines (71 loc) • 2.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatNumberToEuroString = formatNumberToEuroString;
exports.stringToNumber = stringToNumber;
exports.euroStringToNumber = euroStringToNumber;
exports.formatNumberToString = formatNumberToString;
function formatNumberToEuroString(amount, decimalCount, decimal, thousands) {
if (amount === void 0) { amount = 0; }
if (decimalCount === void 0) { decimalCount = 2; }
if (decimal === void 0) { decimal = ","; }
if (thousands === void 0) { thousands = "."; }
try {
decimalCount = Math.abs(decimalCount);
var negativeSign = amount < 0 ? "-" : "";
var i = parseInt(Math.abs(Number(amount) || 0).toFixed(decimalCount), 10).toString();
var j = i.length > 3 ? i.length % 3 : 0;
return (negativeSign +
(j ? i.substring(0, j) + thousands : "") +
i.substring(j).replace(/(\d{3})(?=\d)/g, "$1".concat(thousands)) +
(decimalCount
? "".concat(decimal +
Math.abs(amount - Number(i))
.toFixed(decimalCount)
.slice(2), " \u20AC")
: ""));
}
catch (e) {
// eslint-disable-next-line no-console
/* istanbul ignore next */
console.error(e);
}
}
function stringToNumber(numberString) {
var normalizedString = numberString
.replace(".", "")
.replace(".", "")
.replace(".", "");
return Number(normalizedString);
}
function euroStringToNumber(euroString) {
var trim1 = euroString.replace(/€/g, "").trim();
var trim2 = trim1.replace(/\./g, "");
var trim3 = trim2.replace(/,/g, ".");
return Number(trim3);
}
function formatNumberToString(rawNumber, decimalCount, decimal, thousands) {
if (rawNumber === void 0) { rawNumber = 0; }
if (decimalCount === void 0) { decimalCount = 2; }
if (decimal === void 0) { decimal = ","; }
if (thousands === void 0) { thousands = "."; }
try {
decimalCount = Math.abs(decimalCount);
var negativeSign = rawNumber < 0 ? "-" : "";
var i = parseInt(Math.abs(Number(rawNumber) || 0).toFixed(decimalCount), 10).toString();
var j = i.length > 3 ? i.length % 3 : 0;
return (negativeSign +
(j ? i.substring(0, j) + thousands : "") +
i.substring(j).replace(/(\d{3})(?=\d)/g, "$1".concat(thousands)) +
(decimalCount
? "".concat(decimal +
Math.abs(rawNumber - Number(i))
.toFixed(decimalCount)
.slice(2))
: ""));
}
catch (e) {
// eslint-disable-next-line no-console
/* istanbul ignore next */
console.error(e);
}
}