UNPKG

@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 3.87 kB
{"version":3,"sources":["../../../src/handlers/firebase/http-firebase.handler.ts","../../../src/handlers/firebase/http-firebase-v2.handler.ts"],"sourcesContent":["//#region Imports\n\n// eslint-disable-next-line import/no-unresolved\nimport { type HttpsFunction, https } from 'firebase-functions/v1';\nimport type { FrameworkContract, HandlerContract } from '../../contracts';\nimport { RawRequest } from '../base';\n\n//#endregion\n/**\n * The class that implements a handler for Firebase Https Events\n *\n * @remarks Read more about Https Events {@link https://firebase.google.com/docs/functions/http-events | here}\n *\n * @breadcrumb Handlers / HttpFirebaseHandler\n * @public\n */\nexport class HttpFirebaseHandler<TApp>\n extends RawRequest<TApp>\n implements\n HandlerContract<TApp, never, never, never, void, void | Promise<void>>\n{\n //#region Public Methods\n\n /**\n * {@inheritDoc}\n */\n public getHandler(\n app: TApp,\n framework: FrameworkContract<TApp>,\n ): HttpsFunction {\n return https.onRequest(this.onRequestCallback(app, framework));\n }\n\n //#endregion\n}\n","//#region Imports\n\nimport { IncomingMessage, ServerResponse } from 'node:http';\n// eslint-disable-next-line import/no-unresolved\nimport { https } from 'firebase-functions/v2';\nimport type { FrameworkContract, HandlerContract } from '../../contracts';\nimport { RawRequest } from '../base';\n\n//#endregion\n\n/**\n * The HTTP handler that is exposed when you use {@link HttpFirebaseV2Handler}.\n *\n * @breadcrumb Handlers / HttpFirebaseHandler\n * @public\n */\nexport type FirebaseHttpHandler = (\n request: IncomingMessage,\n response: ServerResponse,\n) => void | Promise<void>;\n\n/**\n * The class that implements a handler for Firebase Https Events\n *\n * @remarks Read more about Https Events {@link https://firebase.google.com/docs/functions/http-events | here}\n *\n * @breadcrumb Handlers / HttpFirebaseHandler\n * @public\n */\nexport class HttpFirebaseV2Handler<TApp>\n extends RawRequest<TApp>\n implements\n HandlerContract<TApp, never, never, never, void, void | Promise<void>>\n{\n //#region Constructor\n\n /**\n * Construtor padrão\n */\n constructor(protected readonly options?: https.HttpsOptions) {\n super();\n }\n\n //#endregion\n\n //#region Public Methods\n\n /**\n * {@inheritDoc}\n */\n public getHandler(\n app: TApp,\n framework: FrameworkContract<TApp>,\n ): FirebaseHttpHandler {\n if (this.options) {\n return this.onRequestWithOptions(\n this.options,\n this.onRequestCallback(app, framework),\n );\n }\n\n return https.onRequest(\n this.onRequestCallback(app, framework),\n ) as unknown as FirebaseHttpHandler;\n }\n\n //#endregion\n\n //#region Protected Method\n\n /**\n * Wrapper method around onRequest for better testability\n */\n protected onRequestWithOptions(\n options: https.HttpsOptions,\n callback: ReturnType<HttpFirebaseV2Handler<TApp>['onRequestCallback']>,\n ): FirebaseHttpHandler {\n return https.onRequest(options, callback) as unknown as FirebaseHttpHandler;\n }\n\n //#endregion\n}\n"],"mappings":"2HAGA,OAA6B,SAAAA,MAAa,wBAanC,IAAMC,EAAN,cACGC,CAGV,CApBA,MAoBA,CAAAC,EAAA,4BAMS,WACLC,EACAC,EACe,CACf,OAAOC,EAAM,UAAU,KAAK,kBAAkBF,EAAKC,CAAS,CAAC,CAC/D,CAGF,EChCA,MAAgD,YAEhD,OAAS,SAAAE,MAAa,wBAyBf,IAAMC,EAAN,cACGC,CAGV,CAME,YAA+BC,EAA8B,CAC3D,MAAM,EADuB,aAAAA,CAE/B,CAzCF,MAiCA,CAAAC,EAAA,8BAiBS,WACLC,EACAC,EACqB,CACrB,OAAI,KAAK,QACA,KAAK,qBACV,KAAK,QACL,KAAK,kBAAkBD,EAAKC,CAAS,CACvC,EAGKC,EAAM,UACX,KAAK,kBAAkBF,EAAKC,CAAS,CACvC,CACF,CASU,qBACRH,EACAK,EACqB,CACrB,OAAOD,EAAM,UAAUJ,EAASK,CAAQ,CAC1C,CAGF","names":["https","HttpFirebaseHandler","RawRequest","__name","app","framework","https","https","HttpFirebaseV2Handler","RawRequest","options","__name","app","framework","https","callback"]}