{"version":3,"sources":["webpack:///../node_modules/can-ndjson-stream/can-ndjson-stream.js","webpack:///../node_modules/can-namespace/can-namespace.js"],"names":["namespace","module","exports","ndjsonStream","response","is_reader","cancellationRequest","ReadableStream","start","controller","reader","getReader","decoder","TextDecoder","data_buf","read","then","processResult","result","done","data","decode","value","stream","lines","split","i","length","l","trim","data_line","JSON","parse","enqueue","e","error","cancel","data_l","close","reason","console","log"],"mappings":"8EAGA,IAAIA,EAAY,EAAQ,KAgExBC,EAAOC,QAAUF,EAAUG,aA9DR,SAASC,GAE1B,IAAIC,EAAWC,GAAsB,EACrC,OAAO,IAAIC,eAAe,CACxBC,MAAO,SAASC,GACd,IAAIC,EAASN,EAASO,YACtBN,EAAYK,EACZ,IAAIE,EAAU,IAAIC,YACdC,EAAW,GAEfJ,EAAOK,OAAOC,MAAK,SAASC,EAAcC,GACxC,IAAIA,EAAOC,KAAX,CAuBA,IAHA,IAAIC,EAAOR,EAAQS,OAAOH,EAAOI,MAAO,CAACC,QAAQ,IAE7CC,GADJV,GAAYM,GACSK,MAAM,MACnBC,EAAI,EAAGA,EAAIF,EAAMG,OAAS,IAAKD,EAAG,CACxC,IAAIE,EAAIJ,EAAME,GAAGG,OACjB,GAAID,EAAED,OAAS,EACb,IACE,IAAIG,EAAYC,KAAKC,MAAMJ,GAC3BnB,EAAWwB,QAAQH,GACnB,MAAMI,GAIN,OAHAzB,EAAW0B,MAAMD,GACjB5B,GAAsB,OACtBI,EAAO0B,UAOb,OAFAtB,EAAWU,EAAMA,EAAMG,OAAO,GAEvBjB,EAAOK,OAAOC,KAAKC,GAtCxB,IAAIX,EAAJ,CAMA,GAAwB,KADxBQ,EAAWA,EAASe,QACPF,OACX,IACE,IAAIU,EAASN,KAAKC,MAAMlB,GACxBL,EAAWwB,QAAQI,GACnB,MAAMH,GAEN,YADAzB,EAAW0B,MAAMD,GAIrBzB,EAAW6B,aA2BjBF,OAAQ,SAASG,GACfC,QAAQC,IAAI,4BAA6BF,GACzCjC,GAAsB,EACtBD,EAAU+B,c,kBC9DhBnC,EAAOC,QAAU","file":"pex-static/40/11.2500596143a7998b434c.chunk.js","sourcesContent":["\"use strict\";\n/*exported ndjsonStream*/\n\nvar namespace = require('can-namespace');\n\nvar ndjsonStream = function(response) {\n // For cancellation\n var is_reader, cancellationRequest = false;\n return new ReadableStream({\n start: function(controller) {\n var reader = response.getReader();\n is_reader = reader;\n var decoder = new TextDecoder();\n var data_buf = \"\";\n\n reader.read().then(function processResult(result) {\n if (result.done) {\n if (cancellationRequest) {\n // Immediately exit\n return;\n }\n\n data_buf = data_buf.trim();\n if (data_buf.length !== 0) {\n try {\n var data_l = JSON.parse(data_buf);\n controller.enqueue(data_l);\n } catch(e) {\n controller.error(e);\n return;\n }\n }\n controller.close();\n return;\n }\n\n var data = decoder.decode(result.value, {stream: true});\n data_buf += data;\n var lines = data_buf.split(\"\\n\");\n for(var i = 0; i < lines.length - 1; ++i) {\n var l = lines[i].trim();\n if (l.length > 0) {\n try {\n var data_line = JSON.parse(l);\n controller.enqueue(data_line);\n } catch(e) {\n controller.error(e);\n cancellationRequest = true;\n reader.cancel();\n return;\n }\n }\n }\n data_buf = lines[lines.length-1];\n\n return reader.read().then(processResult);\n });\n\n },\n cancel: function(reason) {\n console.log(\"Cancel registered due to \", reason);\n cancellationRequest = true;\n is_reader.cancel();\n }\n });\n};\n\nmodule.exports = namespace.ndjsonStream = ndjsonStream;\n","module.exports = {};\n"],"sourceRoot":""}