advanced-retry
Version:
A retry library with advanced features
29 lines (28 loc) • 933 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.keywordErrorFilterAll = exports.keywordErrorFilterAny = void 0;
exports.errorToString = errorToString;
function errorToString(error) {
if (error instanceof Error) {
return error.message;
}
if (typeof error === 'string') {
return error;
}
if (typeof error === 'object' && error !== null) {
return JSON.stringify(error);
}
return String(error);
}
const keywordErrorFilterAny = (keywords) => ({
canHandleError: error => {
return keywords.some(keyword => errorToString(error).includes(keyword));
},
});
exports.keywordErrorFilterAny = keywordErrorFilterAny;
const keywordErrorFilterAll = (keywords) => ({
canHandleError: error => {
return keywords.every(keyword => errorToString(error).includes(keyword));
},
});
exports.keywordErrorFilterAll = keywordErrorFilterAll;