{"version":3,"sources":["../../../src/resolvers/promise/index.ts","../../../src/resolvers/promise/promise.resolver.ts"],"sourcesContent":["export * from './promise.resolver';\n","//#region Imports\n\nimport type {\n  DelegatedResolver,\n  Resolver,\n  ResolverContract,\n  ResolverProps,\n} from '../../contracts';\n\n//#endregion\n\n/**\n * The class that implements the resolver using the promise object sent by this library\n *\n * @breadcrumb Resolvers / PromiseResolver\n * @public\n */\nexport class PromiseResolver<TEvent, TContext, TCallback, TResponse, TReturn>\n  implements\n    ResolverContract<TEvent, TContext, TCallback, TResponse, Promise<any>>\n{\n  /**\n   * {@inheritDoc}\n   */\n  public createResolver({\n    event,\n    log,\n    respondWithErrors,\n    adapter,\n  }: ResolverProps<TEvent, TContext, TCallback, TResponse>): Resolver<\n    TResponse,\n    Promise<TReturn>\n  > {\n    return {\n      run: task => {\n        return new Promise((resolve, reject) => {\n          const delegatedResolver: DelegatedResolver<any> = {\n            succeed: response => resolve(response),\n            fail: error => reject(error),\n          };\n\n          task()\n            .then(response => delegatedResolver.succeed(response))\n            .catch(error => {\n              log.error(\n                'SERVERLESS_ADAPTER:RESPOND_TO_EVENT_SOURCE_WITH_ERROR',\n                error,\n              );\n\n              adapter.onErrorWhileForwarding({\n                delegatedResolver,\n                error,\n                log,\n                event,\n                respondWithErrors,\n              });\n            });\n        });\n      },\n    };\n  }\n}\n"],"mappings":"4dAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAAA,eAAAC,EAAAH,GCiBO,IAAMI,EAAN,KAGP,CApBA,MAoBA,CAAAC,EAAA,wBAIS,eAAe,CACpB,MAAAC,EACA,IAAAC,EACA,kBAAAC,EACA,QAAAC,CACF,EAGE,CACA,MAAO,CACL,IAAKJ,EAAAK,GACI,IAAI,QAAQ,CAACC,EAASC,IAAW,CACtC,IAAMC,EAA4C,CAChD,QAASR,EAAAS,GAAYH,EAAQG,CAAQ,EAA5B,WACT,KAAMT,EAAAU,GAASH,EAAOG,CAAK,EAArB,OACR,EAEAL,EAAK,EACF,KAAKI,GAAYD,EAAkB,QAAQC,CAAQ,CAAC,EACpD,MAAMC,GAAS,CACdR,EAAI,MACF,wDACAQ,CACF,EAEAN,EAAQ,uBAAuB,CAC7B,kBAAAI,EACA,MAAAE,EACA,IAAAR,EACA,MAAAD,EACA,kBAAAE,CACF,CAAC,CACH,CAAC,CACL,CAAC,EAvBE,MAyBP,CACF,CACF","names":["promise_exports","__export","PromiseResolver","__toCommonJS","PromiseResolver","__name","event","log","respondWithErrors","adapter","task","resolve","reject","delegatedResolver","response","error"]}