UNPKG

currencies-exchange-rates

Version:
43 lines (30 loc) 3.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.prepareAbbreviation = exports.prepareDate = void 0; var _moment = _interopRequireDefault(require("moment")); var _constants = require("../constants"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const prepareDate = date => { const today = (0, _moment.default)().startOf('day'); if (!date) { return _constants.LATEST; } if (!(0, _moment.default)(date, 'YYYY-MM-DD', true).isValid()) { throw new Error(`Invalid Date: ${date}`); } return today - (0, _moment.default)(date) > 0 ? (0, _moment.default)(date).format('YYYY-MM-DD') : _constants.LATEST; }; exports.prepareDate = prepareDate; const prepareAbbreviation = value => { if (!value || typeof value !== 'string') { throw new Error(`Invalid value: ${value}! Currency Abbreviation is required and must be type of string!`); } if (value.replace(/\s+/g, '').length !== 3) { throw TypeError(`Invalid value: ${value}! Letter count not equal to 3!`); } return value.toUpperCase(); }; exports.prepareAbbreviation = prepareAbbreviation; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9oZWxwZXJzLmpzIl0sIm5hbWVzIjpbInByZXBhcmVEYXRlIiwiZGF0ZSIsInRvZGF5Iiwic3RhcnRPZiIsIkxBVEVTVCIsImlzVmFsaWQiLCJFcnJvciIsImZvcm1hdCIsInByZXBhcmVBYmJyZXZpYXRpb24iLCJ2YWx1ZSIsInJlcGxhY2UiLCJsZW5ndGgiLCJUeXBlRXJyb3IiLCJ0b1VwcGVyQ2FzZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOzs7O0FBRU8sTUFBTUEsV0FBVyxHQUFHQyxJQUFJLElBQUk7QUFDL0IsUUFBTUMsS0FBSyxHQUFHLHVCQUFTQyxPQUFULENBQWlCLEtBQWpCLENBQWQ7O0FBQ0EsTUFBSSxDQUFDRixJQUFMLEVBQVc7QUFDUCxXQUFPRyxpQkFBUDtBQUNIOztBQUNELE1BQUksQ0FBQyxxQkFBT0gsSUFBUCxFQUFhLFlBQWIsRUFBMkIsSUFBM0IsRUFBaUNJLE9BQWpDLEVBQUwsRUFBaUQ7QUFDN0MsVUFBTSxJQUFJQyxLQUFKLENBQVcsaUJBQWdCTCxJQUFLLEVBQWhDLENBQU47QUFDSDs7QUFDRCxTQUFPQyxLQUFLLEdBQUcscUJBQU9ELElBQVAsQ0FBUixHQUF1QixDQUF2QixHQUEyQixxQkFBT0EsSUFBUCxFQUFhTSxNQUFiLENBQW9CLFlBQXBCLENBQTNCLEdBQStESCxpQkFBdEU7QUFDSCxDQVRNOzs7O0FBV0EsTUFBTUksbUJBQW1CLEdBQUdDLEtBQUssSUFBSTtBQUN4QyxNQUFJLENBQUNBLEtBQUQsSUFBVSxPQUFPQSxLQUFQLEtBQWlCLFFBQS9CLEVBQXlDO0FBQ3JDLFVBQU0sSUFBSUgsS0FBSixDQUFXLGtCQUFpQkcsS0FBTSxpRUFBbEMsQ0FBTjtBQUNIOztBQUNELE1BQUlBLEtBQUssQ0FBQ0MsT0FBTixDQUFjLE1BQWQsRUFBc0IsRUFBdEIsRUFBMEJDLE1BQTFCLEtBQXFDLENBQXpDLEVBQTRDO0FBQ3hDLFVBQU1DLFNBQVMsQ0FBRSxrQkFBaUJILEtBQU0sZ0NBQXpCLENBQWY7QUFDSDs7QUFDRCxTQUFPQSxLQUFLLENBQUNJLFdBQU4sRUFBUDtBQUNILENBUk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7IExBVEVTVCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XHJcblxyXG5leHBvcnQgY29uc3QgcHJlcGFyZURhdGUgPSBkYXRlID0+IHtcclxuICAgIGNvbnN0IHRvZGF5ID0gbW9tZW50KCkuc3RhcnRPZignZGF5Jyk7XHJcbiAgICBpZiAoIWRhdGUpIHtcclxuICAgICAgICByZXR1cm4gTEFURVNUO1xyXG4gICAgfVxyXG4gICAgaWYgKCFtb21lbnQoZGF0ZSwgJ1lZWVktTU0tREQnLCB0cnVlKS5pc1ZhbGlkKCkpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgRGF0ZTogJHtkYXRlfWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRvZGF5IC0gbW9tZW50KGRhdGUpID4gMCA/IG1vbWVudChkYXRlKS5mb3JtYXQoJ1lZWVktTU0tREQnKSA6IExBVEVTVDtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBwcmVwYXJlQWJicmV2aWF0aW9uID0gdmFsdWUgPT4ge1xyXG4gICAgaWYgKCF2YWx1ZSB8fCB0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlfSEgQ3VycmVuY3kgQWJicmV2aWF0aW9uIGlzIHJlcXVpcmVkIGFuZCBtdXN0IGJlIHR5cGUgb2Ygc3RyaW5nIWApXHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUucmVwbGFjZSgvXFxzKy9nLCAnJykubGVuZ3RoICE9PSAzKSB7XHJcbiAgICAgICAgdGhyb3cgVHlwZUVycm9yKGBJbnZhbGlkIHZhbHVlOiAke3ZhbHVlfSEgTGV0dGVyIGNvdW50IG5vdCBlcXVhbCB0byAzIWApO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbHVlLnRvVXBwZXJDYXNlKCk7XHJcbn07Il19