{"version":3,"sources":["../../../src/utilities/retry.ts"],"names":["resolve","ms","cb","tries","waitTimeInMs","EquippedError","sleep"],"mappings":"AAAA,+HAEoD,MAAI,CAAA,CAASA,CAAAA,EAAY,IAAA,OAAWA,CAAAA,CAASC,EAAG,UAErEC,CAAAA,CAA+DC,CAAAA,CAAeC,CAAAA,CAAAA,CAAAA,CAAyB,iBACrI,KAAID,CAAS,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,EAAM,CAAA,EAAA,CAAIE,CAAAA,EAAc,CAAA,CAAA,MAAA,IAAA,+BAAA,CAAgB,cAAS,CAAA,CAAA,KAAA,CAAAD,CAAa,CAAC,YAChE,CAAA,CAAA,CAAA,CAAMF,CAAAA,MACrB,CAAA,CAAA,MAAW,CAAA,CAAA,CAAA,CAAA,OAA6B,CAAA,CAAA,IACxC,GAAA,CAAA,CAAA,CAAMI,CAAAA,CAAMF,KACL,CAAA,CAAA,MAAgBD,CAAAA,CAAQ,CAAA,CAAGC,CAAY,MAC/C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,qCAAA","file":"/home/runner/work/equipped/equipped/dist/cjs/utilities/retry.min.cjs","sourcesContent":["import { EquippedError } from '../errors'\n\nexport const sleep = (ms: number): Promise<void> => new Promise((resolve) => setTimeout(resolve, ms))\n\nexport const retry = async <T>(cb: () => Promise<{ done: true; value: T } | { done: false }>, tries: number, waitTimeInMs: number) => {\n\tif (tries <= 0) throw new EquippedError('out of tries', { tries, waitTimeInMs })\n\tconst result = await cb()\n\tif (result.done === true) return result.value\n\tawait sleep(waitTimeInMs)\n\treturn await retry(cb, tries - 1, waitTimeInMs)\n}\n"]}