{"version":3,"sources":["jsdelivr-header.js","/npm/node-rx-http@1.0.1/index.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,a,yMACO,KAAI,QAAW,QACf,GAAE,QAAW,QAMhB,eAAiB,GAMrB,SAAA,cAAuB,GACnB,OAAO,kBAAkB,EAC7B,CAEA,SAAA,kBAA2B,EAAkC,GACzD,OAAO,IAAI,kBAAkB,EAAS,EAC1C,CAXA,eAAoB,IAAI,cACxB,eAAwB,QAAI,kBAE5B,OAAO,QAAU,eAUjB,IAAA,kBAAA,SAAA,GACI,SAAA,EAAoB,EAA0C,GAC1D,EAAA,KAAA,MADgB,KAAA,UAA0C,KAAA,MAE9D,CA0BJ,OA7BgC,UAAA,EAAA,GAKlB,EAAA,UAAA,WAAV,SAAqB,GACjB,IAAI,EAAe,IAAI,GAAG,aACtB,EAAM,KAAK,QAAQ,KAAK,SAaxB,GAXK,GAAG,WAAW,UAAU,EAAK,YACjC,QACA,SAAQ,SAAC,GACN,IAAI,EAAO,GAAG,WAAW,UAAU,EAAK,QACpC,EAAO,GAAG,WAAW,UAAU,EAAK,OACxC,OAAO,EAAK,UAAU,GACjB,QAAO,SAAC,EAAc,GAAkB,OAAA,EAAO,CAAP,GAAc,IACtD,KAAI,SAAC,GAAiB,OAAE,KAAM,EAAM,OAAQ,EAAI,WAAY,OAAQ,EAAI,QAAlD,GAC/B,IACC,UAAU,GAEN,GAAG,WAAW,UAAU,EAAK,SAAS,SAAA,GAAO,MAAM,CAAG,IAC1D,UAAU,IAMf,OALA,EAAa,IAAI,GAEjB,KAAK,MAAQ,EAAI,MAAM,KAAK,MAC5B,EAAI,MAEG,CACX,EACJ,CAAA,CA7BA,CAAgC,GAAG","file":"/npm/node-rx-http@1.0.1/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/node-rx-http@1.0.1/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\r\nimport http = require('http');\r\nimport Rx = require('rxjs');\r\n\r\ndeclare const module;\r\n\r\ntype RequestOptions = http.RequestOptions;\r\n\r\nvar observableHttp = {};\r\nobservableHttp['get'] = observableGet;\r\nobservableHttp['request'] = observableRequest;\r\n\r\nmodule.exports = observableHttp;\r\n\r\nfunction observableGet(options: RequestOptions | string) {\r\n    return observableRequest(options);\r\n}\r\n\r\nfunction observableRequest(options: RequestOptions | string, body?: any) {\r\n    return new RequestObservable(options, body);\r\n}\r\n\r\nclass RequestObservable extends Rx.Observable<any> {\r\n    constructor(private options: RequestOptions | string, private body?: any) {\r\n        super();\r\n    }\r\n\r\n    protected _subscribe(subscriber: Rx.Subscriber<any>) {\r\n        var subscription = new Rx.Subscription();\r\n        var req = http.request(this.options);\r\n\r\n        var s1 = Rx.Observable.fromEvent(req, 'response')\r\n            .first()\r\n            .flatMap((res: http.IncomingMessage) => {\r\n                var data = Rx.Observable.fromEvent(res, 'data');\r\n                var done = Rx.Observable.fromEvent(res, 'end');\r\n                return data.takeUntil(done)\r\n                    .reduce((body: string, delta: string) => body + delta, '')\r\n                    .map((body: string) => ({body: body, status: res.statusCode, header: res.headers}));\r\n            })\r\n            .subscribe(subscriber);\r\n\r\n        var s2 = Rx.Observable.fromEvent(req, 'error', e => { throw e; })\r\n            .subscribe(subscriber);\r\n        subscription.add(s2);\r\n\r\n        this.body && req.write(this.body);\r\n        req.end();\r\n\r\n        return subscription;\r\n    }\r\n}\r\n\r\n"]}