{"version":3,"sources":["../../../src/handlers/gcp/gcp.handler.ts"],"sourcesContent":["//#region Imports\n\nimport type { IncomingMessage, ServerResponse } from 'http';\nimport { http } from '@google-cloud/functions-framework';\nimport type { FrameworkContract, HandlerContract } from '../../contracts';\nimport { RawRequest } from '../base';\n\n//#endregion\n\n/**\n * The class that implements a handler for GCP Http Functions\n *\n * @remarks Read more about Http Cloud Function {@link https://cloud.google.com/functions/docs/create-deploy-http-nodejs | here}\n *\n * @breadcrumb Handlers / GCPHandler\n * @public\n */\nexport class GCPHandler<TApp>\n  extends RawRequest<TApp>\n  implements\n    HandlerContract<TApp, never, never, never, void, void | Promise<void>>\n{\n  //#region Constructor\n\n  /**\n   * Default Constructor\n   *\n   * @param name - The name of this function, should be the during deploy.\n   */\n  constructor(protected readonly name: string) {\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  ): (req: IncomingMessage, res: ServerResponse) => void | Promise<void> {\n    const callback = this.onRequestCallback(app, framework);\n\n    http(this.name, callback);\n\n    return callback;\n  }\n\n  //#endregion\n}\n"],"mappings":"2HAGA,OAAS,QAAAA,MAAY,oCAcd,IAAMC,EAAN,cACGC,CAGV,CAQE,YAA+BC,EAAc,CAC3C,MAAM,EADuB,UAAAA,CAE/B,CA/BF,MAqBA,CAAAC,EAAA,mBAmBS,WACLC,EACAC,EACqE,CACrE,IAAMC,EAAW,KAAK,kBAAkBF,EAAKC,CAAS,EAEtD,OAAAE,EAAK,KAAK,KAAMD,CAAQ,EAEjBA,CACT,CAGF","names":["http","GCPHandler","RawRequest","name","__name","app","framework","callback","http"]}