{"version":3,"sources":["jsdelivr-header.js","/npm/cycular@0.1.1/src/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,MAAQ,QAAQ,SAChB,UAAY,QAAQ,uBAExB,SAAS,OAAQ,EAAK,GAOpB,OANK,IACH,EAAY,SAAU,GACpB,MAAO,CACL,UAAW,EAEf,GACK,EAAI,KAAI,SAAU,GACvB,MAAO,CACL,SAAU,EAAU,aACpB,QAAQ,EAEZ,GACF,CAEA,SAAS,MAAO,EAAK,EAAS,EAAI,GAChC,IAAI,EAAW,KAaf,IAAI,EAZS,MAAM,MAAM,GAapB,sBAAsB,EAAG,GACzB,QAAO,GAAQ,EAAK,OAAO,IAC3B,SAdL,SAAoB,GAClB,OAAO,MAAM,kBAAiB,IAC5B,IAAI,EAAO,EAAO,KAAI,IACb,CACL,MAAO,EACP,MAAO,MAGX,EAAI,MAAM,EAAM,EAAE,GAEtB,IAQA,OAHA,EAAM,SAAQ,IACZ,EAAW,EAAG,KAAI,GAAK,EAAE,KAAG,IAEvB,CACT,CAEA,OAAO,QAAU,CACf,OAAQ,OACR,MAAO","file":"/npm/cycular@0.1.1/src/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/cycular@0.1.1/src/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","var kefir = require('kefir')\nvar timestamp = require('monotonic-timestamp')\n\nfunction source (inS, metadataF) {\n  if (!metadataF)\n    metadataF = function (timestamp) {\n      return {\n        timestamp: timestamp\n      }\n    }\n  return inS.map(function (v) {\n    return {\n      metadata: metadataF(timestamp()),\n      payload:v,\n    }\n  })\n}\n\nfunction store (log, sources, ms, cnt) {\n  var lastKeys = null\n  var stream = kefir.merge(sources)\n  function saveToLog (values) {\n    return kefir.fromNodeCallback(cb => {\n      var docs = values.map(v => {\n        return {\n          links: lastKeys,\n          value: v,\n        }\n      })\n      log.batch(docs, cb)\n    })\n  }\n  var saved = stream\n      .bufferWithTimeOrCount(ms,cnt)\n      .filter(buff => buff.length>0)\n      .flatMap(saveToLog)\n  saved.onValue(ns => {\n    lastKeys = ns.map(n => n.key)\n  })\n  return saved\n}\n\nmodule.exports = {\n  source: source,\n  store: store,\n}\n"]}