1 |
- {"ast":null,"code":"import _asyncToGenerator from \"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport _awaitAsyncGenerator from \"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js\";\nimport _wrapAsyncGenerator from \"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js\";\nimport { AsyncLocalStorageProviderSingleton } from \"../singletons/index.js\";\nimport { raceWithSignal } from \"./signal.js\";\n/*\n * Support async iterator syntax for ReadableStreams in all environments.\n * Source: https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490\n */\nexport class IterableReadableStream extends ReadableStream {\n constructor() {\n super(...arguments);\n Object.defineProperty(this, \"reader\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n }\n ensureReader() {\n if (!this.reader) {\n this.reader = this.getReader();\n }\n }\n next() {\n var _this = this;\n return _asyncToGenerator(function* () {\n _this.ensureReader();\n try {\n const result = yield _this.reader.read();\n if (result.done) {\n _this.reader.releaseLock(); // release lock when stream becomes closed\n return {\n done: true,\n value: undefined\n };\n } else {\n return {\n done: false,\n value: result.value\n };\n }\n } catch (e) {\n _this.reader.releaseLock(); // release lock when stream becomes errored\n throw e;\n }\n })();\n }\n return() {\n var _this2 = this;\n return _asyncToGenerator(function* () {\n _this2.ensureReader();\n // If wrapped in a Node stream, cancel is already called.\n if (_this2.locked) {\n const cancelPromise = _this2.reader.cancel(); // cancel first, but don't await yet\n _this2.reader.releaseLock(); // release lock first\n yield cancelPromise; // now await it\n }\n return {\n done: true,\n value: undefined\n };\n })();\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n throw(e) {\n var _this3 = this;\n return _asyncToGenerator(function* () {\n _this3.ensureReader();\n if (_this3.locked) {\n const cancelPromise = _this3.reader.cancel(); // cancel first, but don't await yet\n _this3.reader.releaseLock(); // release lock first\n yield cancelPromise; // now await it\n }\n throw e;\n })();\n }\n [Symbol.asyncIterator]() {\n return this;\n }\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore Not present in Node 18 types, required in latest Node 22\n [Symbol.asyncDispose]() {\n var _this4 = this;\n return _asyncToGenerator(function* () {\n yield _this4.return();\n })();\n }\n static fromReadableStream(stream) {\n // From https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_streams#reading_the_stream\n const reader = stream.getReader();\n return new IterableReadableStream({\n start(controller) {\n return pump();\n function pump() {\n return reader.read().then(({\n done,\n value\n }) => {\n // When no more data needs to be consumed, close the stream\n if (done) {\n controller.close();\n return;\n }\n // Enqueue the next data chunk into our target stream\n controller.enqueue(value);\n return pump();\n });\n }\n },\n cancel() {\n reader.releaseLock();\n }\n });\n }\n static fromAsyncGenerator(generator) {\n return new IterableReadableStream({\n pull(controller) {\n return _asyncToGenerator(function* () {\n const {\n value,\n done\n } = yield generator.next();\n // When no more data needs to be consumed, close the stream\n if (done) {\n controller.close();\n }\n // Fix: `else if (value)` will hang the streaming when nullish value (e.g. empty string) is pulled\n controller.enqueue(value);\n })();\n },\n cancel(reason) {\n return _asyncToGenerator(function* () {\n yield generator.return(reason);\n })();\n }\n });\n }\n}\nexport function atee(iter, length = 2) {\n const buffers = Array.from({\n length\n }, () => []);\n return buffers.map( /*#__PURE__*/function () {\n var _makeIter = _wrapAsyncGenerator(function* (buffer) {\n while (true) {\n if (buffer.length === 0) {\n const result = yield _awaitAsyncGenerator(iter.next());\n for (const buffer of buffers) {\n buffer.push(result);\n }\n } else if (buffer[0].done) {\n return;\n } else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n yield buffer.shift().value;\n }\n }\n });\n function makeIter(_x) {\n return _makeIter.apply(this, arguments);\n }\n return makeIter;\n }());\n}\nexport function concat(first, second) {\n if (Array.isArray(first) && Array.isArray(second)) {\n return first.concat(second);\n } else if (typeof first === \"string\" && typeof second === \"string\") {\n return first + second;\n } else if (typeof first === \"number\" && typeof second === \"number\") {\n return first + second;\n } else if (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n \"concat\" in first &&\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof first.concat === \"function\") {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return first.concat(second);\n } else if (typeof first === \"object\" && typeof second === \"object\") {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const chunk = {\n ...first\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n for (const [key, value] of Object.entries(second)) {\n if (key in chunk && !Array.isArray(chunk[key])) {\n chunk[key] = concat(chunk[key], value);\n } else {\n chunk[key] = value;\n }\n }\n return chunk;\n } else {\n throw new Error(`Cannot concat ${typeof first} and ${typeof second}`);\n }\n}\nexport class AsyncGeneratorWithSetup {\n constructor(params) {\n var _params$signal,\n _this$config,\n _this5 = this;\n Object.defineProperty(this, \"generator\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"setup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"config\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"signal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"firstResult\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"firstResultUsed\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n this.generator = params.generator;\n this.config = params.config;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.signal = (_params$signal = params.signal) !== null && _params$signal !== void 0 ? _params$signal : (_this$config = this.config) === null || _this$config === void 0 ? void 0 : _this$config.signal;\n // setup is a promise that resolves only after the first iterator value\n // is available. this is useful when setup of several piped generators\n // needs to happen in logical order, ie. in the order in which input to\n // to each generator is available.\n this.setup = new Promise((resolve, reject) => {\n void AsyncLocalStorageProviderSingleton.runWithConfig(params.config, /*#__PURE__*/_asyncToGenerator(function* () {\n _this5.firstResult = params.generator.next();\n if (params.startSetup) {\n _this5.firstResult.then(params.startSetup).then(resolve, reject);\n } else {\n _this5.firstResult.then(_result => resolve(undefined), reject);\n }\n }), true);\n });\n }\n next(...args) {\n var _this6 = this;\n return _asyncToGenerator(function* () {\n var _this6$signal;\n (_this6$signal = _this6.signal) === null || _this6$signal === void 0 || _this6$signal.throwIfAborted();\n if (!_this6.firstResultUsed) {\n _this6.firstResultUsed = true;\n return _this6.firstResult;\n }\n return AsyncLocalStorageProviderSingleton.runWithConfig(_this6.config, _this6.signal ? /*#__PURE__*/_asyncToGenerator(function* () {\n return raceWithSignal(_this6.generator.next(...args), _this6.signal);\n }) : /*#__PURE__*/_asyncToGenerator(function* () {\n return _this6.generator.next(...args);\n }), true);\n })();\n }\n return(value) {\n var _this7 = this;\n return _asyncToGenerator(function* () {\n return _this7.generator.return(value);\n })();\n }\n throw(e) {\n var _this8 = this;\n return _asyncToGenerator(function* () {\n return _this8.generator.throw(e);\n })();\n }\n [Symbol.asyncIterator]() {\n return this;\n }\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore Not present in Node 18 types, required in latest Node 22\n [Symbol.asyncDispose]() {\n var _this9 = this;\n return _asyncToGenerator(function* () {\n yield _this9.return();\n })();\n }\n}\nexport function pipeGeneratorWithSetup(_x2, _x3, _x4, _x5) {\n return _pipeGeneratorWithSetup.apply(this, arguments);\n}\nfunction _pipeGeneratorWithSetup() {\n _pipeGeneratorWithSetup = _asyncToGenerator(function* (to, generator, startSetup, signal, ...args) {\n const gen = new AsyncGeneratorWithSetup({\n generator,\n startSetup,\n signal\n });\n const setup = yield gen.setup;\n return {\n output: to(gen, setup, ...args),\n setup\n };\n });\n return _pipeGeneratorWithSetup.apply(this, arguments);\n}","map":{"version":3,"names":["AsyncLocalStorageProviderSingleton","raceWithSignal","IterableReadableStream","ReadableStream","constructor","arguments","Object","defineProperty","enumerable","configurable","writable","value","ensureReader","reader","getReader","next","_this","_asyncToGenerator","result","read","done","releaseLock","undefined","e","return","_this2","locked","cancelPromise","cancel","throw","_this3","Symbol","asyncIterator","asyncDispose","_this4","fromReadableStream","stream","start","controller","pump","then","close","enqueue","fromAsyncGenerator","generator","pull","reason","atee","iter","length","buffers","Array","from","map","_makeIter","_wrapAsyncGenerator","buffer","_awaitAsyncGenerator","push","shift","makeIter","_x","apply","concat","first","second","isArray","chunk","key","entries","Error","AsyncGeneratorWithSetup","params","_params$signal","_this$config","_this5","config","signal","setup","Promise","resolve","reject","runWithConfig","firstResult","startSetup","_result","args","_this6","_this6$signal","throwIfAborted","firstResultUsed","_this7","_this8","_this9","pipeGeneratorWithSetup","_x2","_x3","_x4","_x5","_pipeGeneratorWithSetup","to","gen","output"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@langchain/core/dist/utils/stream.js"],"sourcesContent":["import { AsyncLocalStorageProviderSingleton } from \"../singletons/index.js\";\nimport { raceWithSignal } from \"./signal.js\";\n/*\n * Support async iterator syntax for ReadableStreams in all environments.\n * Source: https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490\n */\nexport class IterableReadableStream extends ReadableStream {\n constructor() {\n super(...arguments);\n Object.defineProperty(this, \"reader\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n }\n ensureReader() {\n if (!this.reader) {\n this.reader = this.getReader();\n }\n }\n async next() {\n this.ensureReader();\n try {\n const result = await this.reader.read();\n if (result.done) {\n this.reader.releaseLock(); // release lock when stream becomes closed\n return {\n done: true,\n value: undefined,\n };\n }\n else {\n return {\n done: false,\n value: result.value,\n };\n }\n }\n catch (e) {\n this.reader.releaseLock(); // release lock when stream becomes errored\n throw e;\n }\n }\n async return() {\n this.ensureReader();\n // If wrapped in a Node stream, cancel is already called.\n if (this.locked) {\n const cancelPromise = this.reader.cancel(); // cancel first, but don't await yet\n this.reader.releaseLock(); // release lock first\n await cancelPromise; // now await it\n }\n return { done: true, value: undefined };\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async throw(e) {\n this.ensureReader();\n if (this.locked) {\n const cancelPromise = this.reader.cancel(); // cancel first, but don't await yet\n this.reader.releaseLock(); // release lock first\n await cancelPromise; // now await it\n }\n throw e;\n }\n [Symbol.asyncIterator]() {\n return this;\n }\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore Not present in Node 18 types, required in latest Node 22\n async [Symbol.asyncDispose]() {\n await this.return();\n }\n static fromReadableStream(stream) {\n // From https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_streams#reading_the_stream\n const reader = stream.getReader();\n return new IterableReadableStream({\n start(controller) {\n return pump();\n function pump() {\n return reader.read().then(({ done, value }) => {\n // When no more data needs to be consumed, close the stream\n if (done) {\n controller.close();\n return;\n }\n // Enqueue the next data chunk into our target stream\n controller.enqueue(value);\n return pump();\n });\n }\n },\n cancel() {\n reader.releaseLock();\n },\n });\n }\n static fromAsyncGenerator(generator) {\n return new IterableReadableStream({\n async pull(controller) {\n const { value, done } = await generator.next();\n // When no more data needs to be consumed, close the stream\n if (done) {\n controller.close();\n }\n // Fix: `else if (value)` will hang the streaming when nullish value (e.g. empty string) is pulled\n controller.enqueue(value);\n },\n async cancel(reason) {\n await generator.return(reason);\n },\n });\n }\n}\nexport function atee(iter, length = 2) {\n const buffers = Array.from({ length }, () => []);\n return buffers.map(async function* makeIter(buffer) {\n while (true) {\n if (buffer.length === 0) {\n const result = await iter.next();\n for (const buffer of buffers) {\n buffer.push(result);\n }\n }\n else if (buffer[0].done) {\n return;\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n yield buffer.shift().value;\n }\n }\n });\n}\nexport function concat(first, second) {\n if (Array.isArray(first) && Array.isArray(second)) {\n return first.concat(second);\n }\n else if (typeof first === \"string\" && typeof second === \"string\") {\n return (first + second);\n }\n else if (typeof first === \"number\" && typeof second === \"number\") {\n return (first + second);\n }\n else if (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n \"concat\" in first &&\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof first.concat === \"function\") {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return first.concat(second);\n }\n else if (typeof first === \"object\" && typeof second === \"object\") {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const chunk = { ...first };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n for (const [key, value] of Object.entries(second)) {\n if (key in chunk && !Array.isArray(chunk[key])) {\n chunk[key] = concat(chunk[key], value);\n }\n else {\n chunk[key] = value;\n }\n }\n return chunk;\n }\n else {\n throw new Error(`Cannot concat ${typeof first} and ${typeof second}`);\n }\n}\nexport class AsyncGeneratorWithSetup {\n constructor(params) {\n Object.defineProperty(this, \"generator\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"setup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"config\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"signal\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"firstResult\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"firstResultUsed\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n this.generator = params.generator;\n this.config = params.config;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this.signal = params.signal ?? this.config?.signal;\n // setup is a promise that resolves only after the first iterator value\n // is available. this is useful when setup of several piped generators\n // needs to happen in logical order, ie. in the order in which input to\n // to each generator is available.\n this.setup = new Promise((resolve, reject) => {\n void AsyncLocalStorageProviderSingleton.runWithConfig(params.config, async () => {\n this.firstResult = params.generator.next();\n if (params.startSetup) {\n this.firstResult.then(params.startSetup).then(resolve, reject);\n }\n else {\n this.firstResult.then((_result) => resolve(undefined), reject);\n }\n }, true);\n });\n }\n async next(...args) {\n this.signal?.throwIfAborted();\n if (!this.firstResultUsed) {\n this.firstResultUsed = true;\n return this.firstResult;\n }\n return AsyncLocalStorageProviderSingleton.runWithConfig(this.config, this.signal\n ? async () => {\n return raceWithSignal(this.generator.next(...args), this.signal);\n }\n : async () => {\n return this.generator.next(...args);\n }, true);\n }\n async return(value) {\n return this.generator.return(value);\n }\n async throw(e) {\n return this.generator.throw(e);\n }\n [Symbol.asyncIterator]() {\n return this;\n }\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore Not present in Node 18 types, required in latest Node 22\n async [Symbol.asyncDispose]() {\n await this.return();\n }\n}\nexport async function pipeGeneratorWithSetup(to, generator, startSetup, signal, ...args) {\n const gen = new AsyncGeneratorWithSetup({\n generator,\n startSetup,\n signal,\n });\n const setup = await gen.setup;\n return { output: to(gen, setup, ...args), setup };\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|