UNPKG

@snap/camera-kit

Version:
23 lines 984 B
import { Injectable } from "@snap/ts-inject"; import { HandlerChainBuilder } from "./HandlerChainBuilder"; import { createNoCorsRetryingFetchHandler } from "./noCorsRetryingFetchHandler"; import { createRetryingHandler } from "./retryingHandler"; import { createTimeoutHandler } from "./timeoutHandler"; export const defaultFetchHandlerFactory = Injectable("defaultFetchHandler", () => { return (new HandlerChainBuilder(fetch) .map(createTimeoutHandler({ timeout: 20 * 1000 })) .map(createNoCorsRetryingFetchHandler()) .map(createRetryingHandler({ maxRetries: 3, retryPredicate: (responseOrError) => { if (responseOrError instanceof Response) { if (responseOrError.ok) return false; if (responseOrError.status % 400 < 100) return false; } return true; }, })).handler); }); //# sourceMappingURL=defaultFetchHandler.js.map