@hygiene/core
Version:
Keep your TODOs and FIXMEs healthy
63 lines (53 loc) • 2.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.filterExpired = filterExpired;
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
function filterExpired(_x, _x2, _x3) {
return _filterExpired.apply(this, arguments);
}
function _filterExpired() {
_filterExpired = _asyncToGenerator(function* (comments, plugins, pluginConfigs) {
var expires = [];
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
var _loop = function* _loop() {
var comment = _step.value;
var index = comments.indexOf(comment);
var pluginConfig = pluginConfigs[index];
var resolver = plugins.find(function (_ref) {
var isMine = _ref.isMine;
return isMine(comment.annotation, pluginConfig);
});
if (!resolver) {
throw new Error("Unknown format: ".concat(JSON.stringify(comment)));
}
if (yield resolver.isResolved(comment, pluginConfig)) {
expires.push(comment);
}
};
for (var _iterator = comments[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
yield* _loop();
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return != null) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
return expires;
});
return _filterExpired.apply(this, arguments);
}