UNPKG

vinmonopolet-ts

Version:

Extracts information on products, categories and stores from Vinmonopolet

40 lines (39 loc) 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function normalizeNumber(number) { const num = String(number); return num.replace(/,/g, ".").replace(/\s/g, "").replace(/,/g, "."); } function numberFilter(number) { if (!number) { return null; } if (number.value) { return number.value; } const num = String(number); if (num.indexOf("-") !== -1) { return num.split("-").map(numberFilter).join("-"); } if (num.indexOf("<") === 0) { return num; //Sugar with less than <3 g/l } return Number(normalizeNumber(number)); } numberFilter.greedy = function (number) { const num = normalizeNumber(number); if (num === "") { return null; } const normalized = num.replace(/[^\d.]/g, "").replace(/(^\.+|\.+$)/g, ""); return Number(normalized); }; numberFilter.nullify = function (nulls) { return function (number) { if (nulls.indexOf(number) > -1) { return null; } return numberFilter(number); }; }; exports.default = numberFilter;