UNPKG

tsch-ej-numbers

Version:

API for analyzing EuroJackpot lottery numbers, trends, and probabilities.

44 lines (43 loc) 1.68 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.handleGetLastDrawOfEuroNumber = handleGetLastDrawOfEuroNumber; exports.handleGetEuroNumbersOverdue = handleGetEuroNumbersOverdue; var lodash_1 = require("lodash"); var __1 = require(".."); var app_constants_1 = require("../constants/app.constants"); var average_handler_1 = require("./average.handler"); function handleGetLastDrawOfEuroNumber(euroNumber) { if (euroNumber === void 0) { euroNumber = 0; } var data = (0, __1.getRecords)(); var counter = 0; var match = false; data.forEach(function (item, index) { if ((item.en1 === euroNumber || item.en2 === euroNumber) && !match) { counter = index; match = true; return; } }); return { key: String(euroNumber), beforeDrawings: counter, }; } function handleGetEuroNumbersOverdue() { var arrayToReturn = []; var averages = (0, average_handler_1.handleAverages)().euroNumbers; app_constants_1.APP.euroNumbersAsString.forEach(function (enKey) { var filterdAvg = averages.find(function (avg) { return avg.key === enKey; }); var enKeyAsNumber = Number(enKey); var lastDraw = handleGetLastDrawOfEuroNumber(enKeyAsNumber); var avgValue = filterdAvg === null || filterdAvg === void 0 ? void 0 : filterdAvg.drawingAvg; var calculatedValue = Number(avgValue) - Number(lastDraw.beforeDrawings); arrayToReturn.push({ key: enKey, overdue: calculatedValue < 0 ? true : false, }); }); return (0, lodash_1.sortBy)(arrayToReturn, "overdue"); }