UNPKG

@tanstack/offline-transactions

Version:

Offline-first transaction capabilities for TanStack DB

34 lines (33 loc) 1.05 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const types = require("../types.cjs"); const BackoffCalculator = require("./BackoffCalculator.cjs"); class DefaultRetryPolicy { constructor(maxRetries = Number.POSITIVE_INFINITY, jitter = true) { this.backoffCalculator = new BackoffCalculator.BackoffCalculator(jitter); this.maxRetries = maxRetries; } calculateDelay(retryCount) { return this.backoffCalculator.calculate(retryCount); } shouldRetry(error, retryCount) { if (retryCount >= this.maxRetries) { return false; } if (error instanceof types.NonRetriableError) { return false; } if (error.name === `AbortError`) { return false; } if (error.message.includes(`401`) || error.message.includes(`403`)) { return false; } if (error.message.includes(`422`) || error.message.includes(`400`)) { return false; } return true; } } exports.DefaultRetryPolicy = DefaultRetryPolicy; //# sourceMappingURL=RetryPolicy.cjs.map