!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("path"),require("url"),require("worker_threads"),require("os")):"function"==typeof define&&define.amd?define(["exports","fs","path","url","worker_threads","os"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).compromiseSpeed={},e.fs,e.path,e.url,e.worker_threads,e.os)}(this,(function(e,t,n,o,r,s){"use strict";var c="undefined"!=typeof document?document.currentScript:null;function i(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var u=i(t);var a={lib:{streamFile:function(e,t,n={}){const o=this,r=o.world(),s=o.methods().one.tokenize.splitSentences,c=u.createReadStream(e,n);let i="";const a=[],l=e=>{const n=o(e),r=t(n);r&&r.found&&r.docs.forEach((e=>a.push(e)))};return new Promise(((e,t)=>{c.on("data",(function(e){i+=e;const[t,n]=function(e){const t=i.substring(e.length-300),n=s(t,r),o=n[n.length-1];return[e.substr(0,e.length-o.length),o]}(i);l(t),i=n})),c.on("end",(function(){l(i);const t=o("");t.document=a,e(t)})),c.on("error",(function(e){console.error(e.stack),t(e)}))}))}}};const l={};var f={lib:{keyPress:function(e,t,n={}){const o=this,r=(0,this.methods().one.tokenize.splitSentences)(e,this.world()),s=[];return r.forEach((e=>{if(!0===l.hasOwnProperty(e))s.push(l[e].data),l[e].used=!0;else{n.verbose&&console.log(`parsing: '${e}'\n`);const r=o(e,t).json(0);l[e]={data:r,used:!0},s.push(r)}})),Object.keys(l).forEach((e=>{!0!==l[e].used?delete l[e]:l[e].used=null})),n.verbose&&console.log(`${Object.keys(l).length}' sentences in cache\n`),o(s)}}};const h=function(e,t,n=1){let o=function(e,t=1){const n=Math.ceil(e.length/t),o=new Array(t);for(let r=0,s=0;rconsole.error(e))),o.push(u)}return o}(p,t),c=h(e,o,p),i=[],u=s.map((e=>!0));return s.forEach(((e,t)=>{e.postMessage({type:"work",work:c[t]||[]})})),new Promise((e=>{s.forEach((t=>{t.on("message",(t=>{if("match"===t.type&&t.match.forEach((e=>{i.push(e)})),"drained"===t.type){const n=t.status.workerIndex;if(u[n]=!1,u.every((e=>!1===e))){const t=o("");t.document=i,s.forEach((e=>e.terminate())),e(t)}}}))}))}))}}};const b=function(e,t){const n=function(e){return Object.keys(e.hooks).filter((e=>!e.startsWith("#")&&!e.startsWith("%")))}(t);if(0===n.length)return e;e._cache||e.cache();const o=e._cache;return e.filter(((e,t)=>n.some((e=>o[t].has(e)))))};var g={lib:{lazy:function(e,t){let n=t;"string"==typeof t&&(n=this.buildNet([{match:t}]));const o=this.tokenize(e),r=b(o,n);return r.found?(r.compute(["index","tagger"]),r.match(t)):o.none()}}};const y={lib:Object.assign({},a.lib,f.lib,m.lib,g.lib),version:"0.1.2"};e.default=y,e.keyPress=f,e.lazyParse=g,e.streamFile=a,e.workerPool=m,Object.defineProperty(e,"__esModule",{value:!0})}));