{"version":3,"file":"http.cjs","sources":["../../../../../src/libs/transports/http.ts"],"sourcesContent":["import { Opaque, Writable } from \"@hazae41/binary\"\nimport { FullDuplex } from \"@hazae41/cascade\"\nimport { Cursor } from \"@hazae41/cursor\"\nimport { Resizer } from \"libs/resizer/resizer.js\"\n\nexport class BatchedFetchStream {\n\n  readonly duplex: FullDuplex<Opaque, Writable>\n\n  readonly #buffer = new Resizer()\n\n  constructor(\n    readonly request: RequestInfo\n  ) {\n    this.duplex = new FullDuplex({\n      output: {\n        write: c => this.#buffer.writeFromOrThrow(c),\n      }\n    })\n\n    this.loop()\n  }\n\n  async loop() {\n    while (!this.duplex.closed) {\n      try {\n        const body = this.#buffer.inner.before\n        this.#buffer.inner.offset = 0\n\n        const res = await fetch(this.request, { method: \"POST\", body })\n        const data = new Uint8Array(await res.arrayBuffer())\n\n        const chunker = new Cursor(data)\n\n        for (const chunk of chunker.splitOrThrow(16384))\n          this.duplex.input.enqueue(new Opaque(chunk))\n\n        continue\n      } catch (e: unknown) {\n        this.duplex.error(e)\n        break\n      }\n    }\n  }\n\n}"],"names":["Resizer","FullDuplex","Cursor","Opaque"],"mappings":";;;;;;;MAKa,kBAAkB,CAAA;AAOlB,IAAA,OAAA,CAAA;AALF,IAAA,MAAM,CAA8B;AAEpC,IAAA,OAAO,GAAG,IAAIA,eAAO,EAAE,CAAA;AAEhC,IAAA,WAAA,CACW,OAAoB,EAAA;QAApB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAa;AAE7B,QAAA,IAAI,CAAC,MAAM,GAAG,IAAIC,kBAAU,CAAC;AAC3B,YAAA,MAAM,EAAE;AACN,gBAAA,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC7C,aAAA;AACF,SAAA,CAAC,CAAA;QAEF,IAAI,CAAC,IAAI,EAAE,CAAA;KACZ;AAED,IAAA,MAAM,IAAI,GAAA;AACR,QAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAC1B,YAAA,IAAI;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAA;gBACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;AAE7B,gBAAA,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC/D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;AAEpD,gBAAA,MAAM,OAAO,GAAG,IAAIC,aAAM,CAAC,IAAI,CAAC,CAAA;gBAEhC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;AAC7C,oBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAIC,aAAM,CAAC,KAAK,CAAC,CAAC,CAAA;gBAE9C,SAAQ;aACT;YAAC,OAAO,CAAU,EAAE;AACnB,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACpB,MAAK;aACN;SACF;KACF;AAEF;;;;"}