23 lines
1.3 KiB
JavaScript
23 lines
1.3 KiB
JavaScript
|
"use strict";
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
exports.isTransientError = exports.isThrottlingError = exports.isClockSkewError = exports.isRetryableByTrait = void 0;
|
||
|
const constants_1 = require("./constants");
|
||
|
const isRetryableByTrait = (error) => error.$retryable !== undefined;
|
||
|
exports.isRetryableByTrait = isRetryableByTrait;
|
||
|
const isClockSkewError = (error) => constants_1.CLOCK_SKEW_ERROR_CODES.includes(error.name);
|
||
|
exports.isClockSkewError = isClockSkewError;
|
||
|
const isThrottlingError = (error) => {
|
||
|
var _a, _b;
|
||
|
return ((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) === 429 ||
|
||
|
constants_1.THROTTLING_ERROR_CODES.includes(error.name) ||
|
||
|
((_b = error.$retryable) === null || _b === void 0 ? void 0 : _b.throttling) == true;
|
||
|
};
|
||
|
exports.isThrottlingError = isThrottlingError;
|
||
|
const isTransientError = (error) => {
|
||
|
var _a;
|
||
|
return constants_1.TRANSIENT_ERROR_CODES.includes(error.name) ||
|
||
|
constants_1.NODEJS_TIMEOUT_ERROR_CODES.includes((error === null || error === void 0 ? void 0 : error.code) || "") ||
|
||
|
constants_1.TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) || 0);
|
||
|
};
|
||
|
exports.isTransientError = isTransientError;
|