UNPKG

@daiso-tech/core

Version:

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

65 lines 2.2 kB
/** * @module BackoffPolicy */ import { resolveConstantBackoffSettings, serializeConstantBackoffSettings, } from "../backoff-policies/constant-backoff/_module.js"; import { resolveExponentialBackoffSettings, serializeExponentialBackoffSettings, } from "../backoff-policies/exponential-backoff/_module.js"; import { resolveLinearBackoffSettings, serializeLinearBackoffSettings, } from "../backoff-policies/linear-backoff/_module.js"; import { resolvePolynomialBackoffSettings, serializePolynomialBackoffSettings, } from "../backoff-policies/polynomial-backoff/_module.js"; import { BACKOFFS, } from "../backoff-policies/types.js"; import {} from "../time-span/contracts/_module.js"; import {} from "../utilities/_module.js"; /** * @internal */ export function resolveBackoffSettingsEnum(settings) { if (settings.type === BACKOFFS.CONSTANT) { return { type: BACKOFFS.CONSTANT, ...resolveConstantBackoffSettings(settings), }; } if (settings.type === BACKOFFS.EXPONENTIAL) { return { type: BACKOFFS.EXPONENTIAL, ...resolveExponentialBackoffSettings(settings), }; } if (settings.type === BACKOFFS.LINEAR) { return { type: BACKOFFS.LINEAR, ...resolveLinearBackoffSettings(settings), }; } return { type: BACKOFFS.POLYNOMIAL, ...resolvePolynomialBackoffSettings(settings), }; } /** * @internal */ export function serializeBackoffSettingsEnum(settings) { if (settings.type === BACKOFFS.CONSTANT) { return { type: BACKOFFS.CONSTANT, ...serializeConstantBackoffSettings(settings), }; } if (settings.type === BACKOFFS.EXPONENTIAL) { return { type: BACKOFFS.EXPONENTIAL, ...serializeExponentialBackoffSettings(settings), }; } if (settings.type === BACKOFFS.LINEAR) { return { type: BACKOFFS.LINEAR, ...serializeLinearBackoffSettings(settings), }; } return { type: BACKOFFS.POLYNOMIAL, ...serializePolynomialBackoffSettings(settings), }; } //# sourceMappingURL=_shared.js.map