UNPKG

slate-irc-parser

Version:
3 lines (2 loc) 837 B
import e from"util";import t from"debug";import s from"linewise";import{Writable as i}from"stream";const r=t("slate-irc-parser");class n extends i{constructor(){super(),this.nlstream=void 0,this.nlstream=s.getPerLineBuffer(),this.nlstream.on("data",this.online.bind(this)),this.nlstream.resume()}write(e){return this.nlstream.write(e)}online(t){t=t.replace(/\r$/,""),r("line %s",e.inspect(t));const s=t;let i;if(":"==t[0]){const e=t.indexOf(" ");i=t.slice(1,e),t=t.slice(e+1)}let n=t.indexOf(" ");-1==n&&(n=t.length);const l=t.slice(0,n);n=(t=t.slice(n)).indexOf(" :"),-1==n&&(n=t.length);const m={prefix:i||"",command:l,params:t.slice(1,n)||"",trailing:(t=t.slice(n+2))||"",string:s};r("message %j",m),this.emit("message",m)}end(){return this.emit("end"),this}}export{n as default}; //# sourceMappingURL=slate-irc-parser.modern.mjs.map