on-error-resume-next
Version:
Run a function, synchronously or asynchronously, and ignore errors.
1 lines • 1.17 kB
Source Map (JSON)
{"version":3,"sources":["../src/index.async.ts"],"sourcesContent":["import isPromise from './private/isPromise.ts';\n\nexport function onErrorResumeNext<T extends () => Promise<U>, U = unknown>(\n fn: T,\n context?: undefined\n): Promise<U | undefined>;\n\nexport function onErrorResumeNext<T extends (this: V) => Promise<U>, U = unknown, V = undefined>(\n fn: T,\n context: V\n): Promise<U | undefined>;\n\nexport function onErrorResumeNext<T extends (this: V) => Promise<U>, U = unknown, V = undefined>(\n fn: T,\n context: V\n): Promise<U | undefined> {\n return new Promise<U | undefined>(resolve => {\n try {\n const result = fn.call(context);\n\n if (isPromise(result)) {\n result.then(resolve, () => resolve(undefined));\n } else {\n resolve(result);\n }\n } catch {\n resolve(undefined);\n }\n });\n}\n"],"mappings":";;;;;AAYO,SAAS,kBACd,IACA,SACwB;AACxB,SAAO,IAAI,QAAuB,aAAW;AAC3C,QAAI;AACF,YAAM,SAAS,GAAG,KAAK,OAAO;AAE9B,UAAI,UAAU,MAAM,GAAG;AACrB,eAAO,KAAK,SAAS,MAAM,QAAQ,MAAS,CAAC;AAAA,MAC/C,OAAO;AACL,gBAAQ,MAAM;AAAA,MAChB;AAAA,IACF,QAAQ;AACN,cAAQ,MAAS;AAAA,IACnB;AAAA,EACF,CAAC;AACH;","names":[]}