{"version":3,"sources":["../shared/rolling-buffer.ts"],"sourcesContent":["export class RollingBuffer<T> {\n  readonly #maxSize: number;\n  readonly #buffer: T[] = [];\n\n  constructor(maxSize: number) {\n    this.#maxSize = maxSize;\n  }\n\n  add(chunk: T) {\n    this.#buffer.push(chunk);\n    if (this.#buffer.length > this.#maxSize) {\n      this.#buffer.splice(0, this.#buffer.length - this.#maxSize);\n    }\n  }\n\n  get() {\n    return this.#buffer;\n  }\n\n  empty() {\n    this.#buffer.length = 0;\n  }\n\n  length() {\n    return this.#buffer.length;\n  }\n}\n"],"mappings":";;;;;AAAO,IAAM,gBAAN,MAAuB;AAAA,EAA9B,OAA8B;AAAA;AAAA;AAAA,EACnB;AAAA,EACA,UAAe,CAAC;AAAA,EAEzB,YAAY,SAAiB;AAC3B,SAAK,WAAW;AAAA,EAClB;AAAA,EAEA,IAAI,OAAU;AACZ,SAAK,QAAQ,KAAK,KAAK;AACvB,QAAI,KAAK,QAAQ,SAAS,KAAK,UAAU;AACvC,WAAK,QAAQ,OAAO,GAAG,KAAK,QAAQ,SAAS,KAAK,QAAQ;AAAA,IAC5D;AAAA,EACF;AAAA,EAEA,MAAM;AACJ,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,QAAQ;AACN,SAAK,QAAQ,SAAS;AAAA,EACxB;AAAA,EAEA,SAAS;AACP,WAAO,KAAK,QAAQ;AAAA,EACtB;AACF;","names":[]}