UNPKG

@brimdata/zealot

Version:

The Javascript Client for Zed Lakes

32 lines (31 loc) 866 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { NEW_LINE: ()=>NEW_LINE, pipeJson: ()=>pipeJson }); const _parse = require("./parse"); const NEW_LINE = "\n"; async function* pipeJson(iterator) { let leftover = ""; for await (let value of iterator){ let start = 0; let end = 0; let chunk = leftover += value; while((end = chunk.indexOf(NEW_LINE, start)) !== -1){ let line = chunk.substring(start, end); yield (0, _parse.parse)(line); start = end + NEW_LINE.length; } leftover = chunk.substring(start); } if (leftover) yield (0, _parse.parse)(leftover); }