@h4ad/serverless-adapter
Version:
Run REST APIs and other web applications using your existing Node.js application framework (NestJS, Express, Koa, Hapi, Fastify and many others), on top of AWS, Azure, Digital Ocean and many other clouds.
1 lines • 2.27 kB
Source Map (JSON)
{"version":3,"sources":["../../../src/resolvers/promise/promise.resolver.ts"],"sourcesContent":["//#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":"6CAiBO,IAAMA,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":["PromiseResolver","__name","event","log","respondWithErrors","adapter","task","resolve","reject","delegatedResolver","response","error"]}