UNPKG

@shockpkg/core

Version:
1 lines 3.02 kB
{"version":3,"sources":["request.ts"],"names":["request","property","Request","Object","constructor","defaults","_request","_createRequest","stream","options","cb","req","promise","Promise","resolve","reject","error","response","body"],"mappings":";;;;;;AAAA,OAAOA,OAAP,MAAoB,SAApB;AAEA,SAAQC,QAAR,QAAuB,kBAAvB;;AAUA;;;;;AAKA,WAAaC,OAAb,WAIED,QAAQ,CAAC,KAAD,CAJV,qBAAO,MAAMC,OAAN,SAAsBC,MAAtB,CAA6B;AACnC;;;AAMAC,EAAAA,WAAW,CAACC,QAA0B,GAAG,EAA9B,EAAkC;AAC5C;;AAD4C;;AAG5C,SAAKC,QAAL,GAAgB,KAAKC,cAAL,CAAoBF,QAApB,CAAhB;AACA;AAED;;;;;;;;;AAOOG,EAAAA,MAAP,CACCC,OADD,EAECC,EAFD,EAGkB;AACjB,UAAMC,GAAG,GAAG,KAAKL,QAAjB;AACA,WAAOI,EAAE,GAAGC,GAAG,CAACF,OAAD,EAAUC,EAAV,CAAN,GAAsBC,GAAG,CAACF,OAAD,CAAlC;AACA;AAED;;;;;;;;AAMA,QAAaG,OAAb,CAAqBH,OAArB,EAA+C;AAC9C,WAAO,IAAII,OAAJ,CAAkC,CAACC,OAAD,EAAUC,MAAV,KAAqB;AAC7D,YAAMP,MAAM,GAAG,KAAKA,MAAL,CAAYC,OAAZ,EAAqB,CAACO,KAAD,EAAQC,QAAR,EAAkBC,IAAlB,KAA2B;AAC9D,YAAIF,KAAJ,EAAW;AACVD,UAAAA,MAAM,CAACC,KAAD,CAAN;AACA;AACA;;AACDF,QAAAA,OAAO,CAAC;AACPN,UAAAA,MADO;AAEPS,UAAAA,QAFO;AAGPC,UAAAA;AAHO,SAAD,CAAP;AAKA,OAVc,CAAf;AAWA,KAZM,CAAP;AAaA;AAED;;;;;;;;AAMUX,EAAAA,cAAV,CAAyBF,QAA0B,GAAG,EAAtD,EAA0D;AACzD,WAAOL,OAAO,CAACK,QAAR,CAAiBA,QAAjB,CAAP;AACA;;AA1DkC,CAApC;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["import request from 'request';\n\nimport {property} from './decorators';\nimport {\n\tIRequestCallback,\n\tIRequestDefaults,\n\tIRequestInstance,\n\tIRequestOptions,\n\tIRequestPromiseValue,\n\tIRequestStream\n} from './types';\n\n/**\n * Request wrapper around the request module.\n *\n * @param defaults Default options.\n */\nexport class Request extends Object {\n\t/**\n\t * Request instance.\n\t */\n\t@property(false)\n\tprotected readonly _request: IRequestInstance;\n\n\tconstructor(defaults: IRequestDefaults = {}) {\n\t\tsuper();\n\n\t\tthis._request = this._createRequest(defaults);\n\t}\n\n\t/**\n\t * Make request with an optional callback.\n\t *\n\t * @param options Request options.\n\t * @param cb An optional callback function.\n\t * @returns Stream object.\n\t */\n\tpublic stream(\n\t\toptions: IRequestOptions,\n\t\tcb?: IRequestCallback\n\t): IRequestStream {\n\t\tconst req = this._request;\n\t\treturn cb ? req(options, cb) : req(options);\n\t}\n\n\t/**\n\t * Make request with promise.\n\t *\n\t * @param options Request options.\n\t * @returns Stream response and body.\n\t */\n\tpublic async promise(options: IRequestOptions) {\n\t\treturn new Promise<IRequestPromiseValue>((resolve, reject) => {\n\t\t\tconst stream = this.stream(options, (error, response, body) => {\n\t\t\t\tif (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tresolve({\n\t\t\t\t\tstream,\n\t\t\t\t\tresponse,\n\t\t\t\t\tbody\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Make a request object.\n\t *\n\t * @param defaults Request defaults.\n\t * @returns Request instance.\n\t */\n\tprotected _createRequest(defaults: IRequestDefaults = {}) {\n\t\treturn request.defaults(defaults);\n\t}\n}\n"],"file":"request.mjs","sourceRoot":"../src"}