UNPKG

dt-cr

Version:

AI 代码审查工具

2 lines 110 kB
#!/usr/bin/env node import e from"fs";import t,{dirname as r}from"path";import{fileURLToPath as n}from"url";import o from"os";import{execSync as s}from"child_process";import i from"node:http";import a from"node:https";import l from"node:zlib";import c,{PassThrough as u,pipeline as d}from"node:stream";import{Buffer as f}from"node:buffer";import{types as h,promisify as p,deprecate as m}from"node:util";import{format as b}from"node:url";import{isIP as y}from"node:net";import"node:fs";import"node:path";let g={apiKey:"",model:""};function _(){try{const r=t.join(o.homedir(),".dt-cr-config.json");if(e.existsSync(r)){const t=JSON.parse(e.readFileSync(r,"utf8"));g.apiKey=t.apiKey||"",g.model=t.model||"deepseek/deepseek-chat-v3-0324:free"}}catch(e){console.error("读取配置文件失败:",e.message)}return g}var w={commentKeywords:[{pattern:/[\s\/\*]TODO\s*(.*)/gi,type:"TODO"},{pattern:/[\s\/\*]FIXME\s*(.*)/gi,type:"FIXME"},{pattern:/[\s\/\*]BUG\s*(.*)/gi,type:"BUG"},{pattern:/[\s\/\*]XXX\s*(.*)/gi,type:"XXX"},{pattern:/[\s\/\*]HACK\s*(.*)/gi,type:"HACK"},{pattern:/[\s\/\*]NOTE\s*(.*)/gi,type:"NOTE"},{pattern:/[\s\/\*]WARNING\s*(.*)/gi,type:"WARNING"},{pattern:/[\s\/\*]REVIEW\s*(.*)/gi,type:"REVIEW"}],environmentChecks:[{pattern:/(?:api_key|apikey|access_token|secret_key|private_key|password)\s*[:=]\s*['"`][^'"`\s]{8,}/gi,message:"可能存在硬编码的敏感信息"},{pattern:/(?:bearer|token)\s+[A-Za-z0-9\-_]{20,}/gi,message:"可能存在硬编码的认证令牌"},{pattern:/localhost|127\.0\.0\.1|0\.0\.0\.0/g,message:"发现localhost地址,请确认是否为开发环境配置"},{pattern:/api-test|test-api|dev-api|staging-api|api\.dev|dev\.api/g,message:"发现测试API端点,请确认环境配置"},{pattern:/test_token|test_key|test_password|test_secret|dev_token|dev_key/g,message:"可能存在测试凭证,生产环境请移除"},{pattern:/process\.env\.NODE_ENV\s*(?:!==|!=)\s*['"`]production['"`]/g,message:"非生产环境判断,请确认逻辑正确性"}],businessDataPatterns:{amounts:[{pattern:/(?:price|amount|fee|total|sum|cost|salary|wage|income)\s*(?:=|:)\s*(?:"|')?0*(?:\.0*)?1(?:"|')?/gi},{pattern:/(?:"|'|\s)(?:0\.01|1|1\.00|0\.1|100|999|1000|9999)(?:"|'|\s)/g},{pattern:/(?:price|amount|fee|total)\s*(?:=|:)\s*(?:"|')?(?:0|1|2|100|999|1000)(?:"|')?/gi},{pattern:/(?:discount|tax|rate)\s*(?:=|:)\s*(?:"|')?[01](?:\.[0-9]+)?(?:"|')?/gi}],accounts:[{pattern:/test(?:_|-)?(?:account|user|admin|customer|member|client)/gi},{pattern:/(?:user|account|customer|member)(?:_|-)?(?:id|name)?\s*(?:=|:)\s*(?:"|')?(?:12|123|1234|123456)(?:\d{0,6})(?:"|')?/gi},{pattern:/(?:"|'|\s)(?:admin|test|demo|example|sample)(?:_|-)?(?:user|account)(?:"|'|\s)/g},{pattern:/email\s*(?:=|:)\s*(?:"|')?test@|admin@|demo@|example@/gi},{pattern:/(?:username|login)\s*(?:=|:)\s*(?:"|')?(?:admin|test|demo|root|user)(?:"|')?/gi}],sampleData:[{pattern:/(?:demo|example|sample|test|mock|fake)(?:_|-)?(?:data|user|product|order)/gi},{pattern:/(?:data|user|product|order)(?:_|-)?(?:demo|example|sample|test|mock|fake)/gi}],ids:[{pattern:/(?:order|product|transaction|payment|user)(?:_|-)?id\s*(?:=|:)\s*(?:"|')?[A-Z]*\d{4,12}(?:"|')?/gi},{pattern:/(?:"|')[A-Z]{2,8}-\d{4,12}(?:"|')/g},{pattern:/uuid\s*(?:=|:)\s*(?:"|')?[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}(?:"|')?/gi}],environment:[{pattern:/process\.env\.NODE_ENV\s*(?:===|==|!==|!=)\s*(?:"|')(?:test|development|dev|qa|staging)(?:"|')/g},{pattern:/is(?:Test|Dev|Development|Debug|QA|Staging)\s*(?:=|:)\s*true/g},{pattern:/(?:NODE_ENV|ENV|ENVIRONMENT)\s*(?:=|:)\s*(?:"|')?(?:dev|test|staging|qa)(?:"|')?/gi}],status:[{pattern:/status\s*(?:=|:)\s*(?:"|')?(?:success|fail|error|complete|pending|active|inactive)(?:"|')?/gi},{pattern:/state\s*(?:=|:)\s*(?:"|')?(?:loading|loaded|error|success|failed)(?:"|')?/gi}],businessLogic:[{pattern:/if\s*\(\s*(?:user|customer|account)(?:Id|Name)?\s*(?:===|==)\s*(?:"|')?(?:123|admin|test)/gi},{pattern:/(?:role|permission)\s*(?:=|:)\s*(?:"|')?(?:admin|superuser|root)(?:"|')?/gi},{pattern:/(?:level|tier|vip)\s*(?:=|:)\s*(?:"|')?(?:premium|gold|platinum|diamond)(?:"|')?/gi}],datetime:[{pattern:/(?:date|time|timestamp)\s*(?:=|:)\s*(?:"|')?2024-01-01|2023-12-31|1970-01-01(?:"|')?/gi},{pattern:/new Date\((?:"|')?(?:2024|2023|2022)(?:"|')?\)/g}]},ignoredPaths:["tests/","test/","__tests__/","mocks/","mock/","__mocks__/","node_modules/","dist/","docs/","build/","coverage/","package.json","package-lock.json","yarn.lock",".git/",".next/",".nuxt/","public/","assets/","static/","*.min.js","*.min.css","*.map","*.log","*.md"],openRouter:{model:_().model,apiKey:_().apiKey}};const v="",S="",T="",R="",E="",P="",$="",A="";function C(e,t){const r=e.replace(/\\/g,"/");if(w.ignoredPaths&&w.ignoredPaths.length>0)for(const e of w.ignoredPaths)if("string"==typeof e){if(k(r,e))return!0}else if(e instanceof RegExp&&e.test(r))return!0;for(const e of t)if(O(r,e))return!0;return!1}function k(e,t){const r=t.replace(/\\/g,"/");if(r.endsWith("/")){const t=r.slice(0,-1);return e.startsWith(t+"/")||e===t}if(r.includes("*"))return function(e,t){const r=t.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*"),n=new RegExp(`^${r}$`);if(n.test(e))return!0;const o=e.split("/").pop();if(n.test(o))return!0;return!1}(e,r);if(e===r)return!0;return e.split("/").pop()===r||!!e.includes(r)}function O(e,t){if(!t||t.startsWith("#"))return!1;const r=t.trim();if(!r)return!1;if(r.startsWith("/")){return k(e,r.slice(1))}if(r.endsWith("/")){const t=r.slice(0,-1);return e.startsWith(t+"/")||e===t}if(e.endsWith(r))return!0;if(e.includes("/"+r))return!0;return e.split("/").pop()===r}var q,j,L="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},W={},x={exports:{}};function B(){return q||(q=1,function(e){function t(){}function r(e){return"object"==typeof e&&null!==e||"function"==typeof e}const n=t;function o(e,t){try{Object.defineProperty(e,"name",{value:t,configurable:!0})}catch(e){}}const s=Promise,i=Promise.prototype.then,a=Promise.reject.bind(s);function l(e){return new s(e)}function c(e){return l((t=>t(e)))}function u(e){return a(e)}function d(e,t,r){return i.call(e,t,r)}function f(e,t,r){d(d(e,t,r),void 0,n)}function h(e,t){f(e,t)}function p(e,t){f(e,void 0,t)}function m(e,t,r){return d(e,t,r)}function b(e){d(e,void 0,n)}let y=e=>{if("function"==typeof queueMicrotask)y=queueMicrotask;else{const e=c(void 0);y=t=>d(e,t)}return y(e)};function g(e,t,r){if("function"!=typeof e)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(e,t,r)}function _(e,t,r){try{return c(g(e,t,r))}catch(e){return u(e)}}const w=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){const t=this._back;let r=t;t._elements.length===w-1&&(r={_elements:[],_next:void 0}),t._elements.push(e),r!==t&&(this._back=r,t._next=r),++this._size}shift(){const e=this._front;let t=e;const r=this._cursor;let n=r+1;const o=e._elements,s=o[r];return n===w&&(t=e._next,n=0),--this._size,this._cursor=n,e!==t&&(this._front=t),o[r]=void 0,s}forEach(e){let t=this._cursor,r=this._front,n=r._elements;for(;!(t===n.length&&void 0===r._next||t===n.length&&(r=r._next,n=r._elements,t=0,0===n.length));)e(n[t]),++t}peek(){const e=this._front,t=this._cursor;return e._elements[t]}}const S=Symbol("[[AbortSteps]]"),T=Symbol("[[ErrorSteps]]"),R=Symbol("[[CancelSteps]]"),E=Symbol("[[PullSteps]]"),P=Symbol("[[ReleaseSteps]]");function $(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?O(e):"closed"===t._state?j(e):q(e,t._storedError)}function A(e,t){return Xn(e._ownerReadableStream,t)}function C(e){const t=e._ownerReadableStream;"readable"===t._state?W(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):x(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),t._readableStreamController[P](),t._reader=void 0,e._ownerReadableStream=void 0}function k(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function O(e){e._closedPromise=l(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r}))}function q(e,t){O(e),W(e,t)}function j(e){O(e),B(e)}function W(e,t){void 0!==e._closedPromise_reject&&(b(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}function x(e,t){q(e,t)}function B(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}const D=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},I=Math.trunc||function(e){return e<0?Math.ceil(e):Math.floor(e)};function z(e){return"object"==typeof e||"function"==typeof e}function F(e,t){if(void 0!==e&&!z(e))throw new TypeError(`${t} is not an object.`)}function M(e,t){if("function"!=typeof e)throw new TypeError(`${t} is not a function.`)}function N(e){return"object"==typeof e&&null!==e||"function"==typeof e}function U(e,t){if(!N(e))throw new TypeError(`${t} is not an object.`)}function H(e,t,r){if(void 0===e)throw new TypeError(`Parameter ${t} is required in '${r}'.`)}function V(e,t,r){if(void 0===e)throw new TypeError(`${t} is required in '${r}'.`)}function K(e){return Number(e)}function Y(e){return 0===e?0:e}function Q(e){return Y(I(e))}function G(e,t){const r=0,n=Number.MAX_SAFE_INTEGER;let o=Number(e);if(o=Y(o),!D(o))throw new TypeError(`${t} is not a finite number`);if(o=Q(o),o<r||o>n)throw new TypeError(`${t} is outside the accepted range of ${r} to ${n}, inclusive`);return D(o)&&0!==o?o:0}function X(e,t){if(!Qn(e))throw new TypeError(`${t} is not a ReadableStream.`)}function J(e){return new ne(e)}function Z(e,t){e._reader._readRequests.push(t)}function ee(e,t,r){const n=e._reader._readRequests.shift();r?n._closeSteps():n._chunkSteps(t)}function te(e){return e._reader._readRequests.length}function re(e){const t=e._reader;return void 0!==t&&!!oe(t)}class ne{constructor(e){if(H(e,1,"ReadableStreamDefaultReader"),X(e,"First parameter"),Gn(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");$(this,e),this._readRequests=new v}get closed(){return oe(this)?this._closedPromise:u(le("closed"))}cancel(e=void 0){return oe(this)?void 0===this._ownerReadableStream?u(k("cancel")):A(this,e):u(le("cancel"))}read(){if(!oe(this))return u(le("read"));if(void 0===this._ownerReadableStream)return u(k("read from"));let e,t;const r=l(((r,n)=>{e=r,t=n})),n={_chunkSteps:t=>e({value:t,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:e=>t(e)};return se(this,n),r}releaseLock(){if(!oe(this))throw le("releaseLock");void 0!==this._ownerReadableStream&&ie(this)}}function oe(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")&&e instanceof ne}function se(e,t){const r=e._ownerReadableStream;r._disturbed=!0,"closed"===r._state?t._closeSteps():"errored"===r._state?t._errorSteps(r._storedError):r._readableStreamController[E](t)}function ie(e){C(e),ae(e,new TypeError("Reader was released"))}function ae(e,t){const r=e._readRequests;e._readRequests=new v,r.forEach((e=>{e._errorSteps(t)}))}function le(e){return new TypeError(`ReadableStreamDefaultReader.prototype.${e} can only be used on a ReadableStreamDefaultReader`)}Object.defineProperties(ne.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),o(ne.prototype.cancel,"cancel"),o(ne.prototype.read,"read"),o(ne.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(ne.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});const ce=Object.getPrototypeOf(Object.getPrototypeOf((async function*(){})).prototype);class ue{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){const t=()=>this._returnSteps(e);return this._ongoingPromise?m(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const e=this._reader;let t,r;const n=l(((e,n)=>{t=e,r=n}));return se(e,{_chunkSteps:e=>{this._ongoingPromise=void 0,y((()=>t({value:e,done:!1})))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,C(e),t({value:void 0,done:!0})},_errorSteps:t=>{this._ongoingPromise=void 0,this._isFinished=!0,C(e),r(t)}}),n}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;const t=this._reader;if(!this._preventCancel){const r=A(t,e);return C(t),m(r,(()=>({value:e,done:!0})))}return C(t),c({value:e,done:!0})}}const de={next(){return he(this)?this._asyncIteratorImpl.next():u(pe("next"))},return(e){return he(this)?this._asyncIteratorImpl.return(e):u(pe("return"))}};function fe(e,t){const r=J(e),n=new ue(r,t),o=Object.create(de);return o._asyncIteratorImpl=n,o}function he(e){if(!r(e))return!1;if(!Object.prototype.hasOwnProperty.call(e,"_asyncIteratorImpl"))return!1;try{return e._asyncIteratorImpl instanceof ue}catch(e){return!1}}function pe(e){return new TypeError(`ReadableStreamAsyncIterator.${e} can only be used on a ReadableSteamAsyncIterator`)}Object.setPrototypeOf(de,ce);const me=Number.isNaN||function(e){return e!=e};var be,ye,ge;function _e(e){return e.slice()}function we(e,t,r,n,o){new Uint8Array(e).set(new Uint8Array(r,n,o),t)}let ve=e=>(ve="function"==typeof e.transfer?e=>e.transfer():"function"==typeof structuredClone?e=>structuredClone(e,{transfer:[e]}):e=>e,ve(e)),Se=e=>(Se="boolean"==typeof e.detached?e=>e.detached:e=>0===e.byteLength,Se(e));function Te(e,t,r){if(e.slice)return e.slice(t,r);const n=r-t,o=new ArrayBuffer(n);return we(o,0,e,t,n),o}function Re(e,t){const r=e[t];if(null!=r){if("function"!=typeof r)throw new TypeError(`${String(t)} is not a function`);return r}}function Ee(e){const t={[Symbol.iterator]:()=>e.iterator},r=async function*(){return yield*t}();return{iterator:r,nextMethod:r.next,done:!1}}const Pe=null!==(ge=null!==(be=Symbol.asyncIterator)&&void 0!==be?be:null===(ye=Symbol.for)||void 0===ye?void 0:ye.call(Symbol,"Symbol.asyncIterator"))&&void 0!==ge?ge:"@@asyncIterator";function $e(e,t="sync",n){if(void 0===n)if("async"===t){if(void 0===(n=Re(e,Pe)))return Ee($e(e,"sync",Re(e,Symbol.iterator)))}else n=Re(e,Symbol.iterator);if(void 0===n)throw new TypeError("The object is not iterable");const o=g(n,e,[]);if(!r(o))throw new TypeError("The iterator method must return an object");return{iterator:o,nextMethod:o.next,done:!1}}function Ae(e){const t=g(e.nextMethod,e.iterator,[]);if(!r(t))throw new TypeError("The iterator.next() method must return an object");return t}function Ce(e){return Boolean(e.done)}function ke(e){return e.value}function Oe(e){return!("number"!=typeof e||me(e)||e<0)}function qe(e){const t=Te(e.buffer,e.byteOffset,e.byteOffset+e.byteLength);return new Uint8Array(t)}function je(e){const t=e._queue.shift();return e._queueTotalSize-=t.size,e._queueTotalSize<0&&(e._queueTotalSize=0),t.value}function Le(e,t,r){if(!Oe(r)||r===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");e._queue.push({value:t,size:r}),e._queueTotalSize+=r}function We(e){return e._queue.peek().value}function xe(e){e._queue=new v,e._queueTotalSize=0}function Be(e){return e===DataView}function De(e){return Be(e.constructor)}function Ie(e){return Be(e)?1:e.BYTES_PER_ELEMENT}class ze{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Ne(this))throw vt("view");return this._view}respond(e){if(!Ne(this))throw vt("respond");if(H(e,1,"respond"),e=G(e,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(Se(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");bt(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!Ne(this))throw vt("respondWithNewView");if(H(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(Se(e.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");yt(this._associatedReadableByteStreamController,e)}}Object.defineProperties(ze.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),o(ze.prototype.respond,"respond"),o(ze.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(ze.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class Fe{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Me(this))throw St("byobRequest");return pt(this)}get desiredSize(){if(!Me(this))throw St("desiredSize");return mt(this)}close(){if(!Me(this))throw St("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);ut(this)}enqueue(e){if(!Me(this))throw St("enqueue");if(H(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);dt(this,e)}error(e=void 0){if(!Me(this))throw St("error");ft(this,e)}[R](e){He(this),xe(this);const t=this._cancelAlgorithm(e);return ct(this),t}[E](e){const t=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void ht(this,e);const r=this._autoAllocateChunkSize;if(void 0!==r){let t;try{t=new ArrayBuffer(r)}catch(t){return void e._errorSteps(t)}const n={buffer:t,bufferByteLength:r,byteOffset:0,byteLength:r,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}Z(t,e),Ue(this)}[P](){if(this._pendingPullIntos.length>0){const e=this._pendingPullIntos.peek();e.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(e)}}}function Me(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")&&e instanceof Fe}function Ne(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")&&e instanceof ze}function Ue(e){lt(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,f(e._pullAlgorithm(),(()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,Ue(e)),null)),(t=>(ft(e,t),null)))))}function He(e){et(e),e._pendingPullIntos=new v}function Ve(e,t){let r=!1;"closed"===e._state&&(r=!0);const n=Ke(t);"default"===t.readerType?ee(e,n,r):At(e,n,r)}function Ke(e){const t=e.bytesFilled,r=e.elementSize;return new e.viewConstructor(e.buffer,e.byteOffset,t/r)}function Ye(e,t,r,n){e._queue.push({buffer:t,byteOffset:r,byteLength:n}),e._queueTotalSize+=n}function Qe(e,t,r,n){let o;try{o=Te(t,r,r+n)}catch(t){throw ft(e,t),t}Ye(e,o,0,n)}function Ge(e,t){t.bytesFilled>0&&Qe(e,t.buffer,t.byteOffset,t.bytesFilled),at(e)}function Xe(e,t){const r=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),n=t.bytesFilled+r;let o=r,s=!1;const i=n-n%t.elementSize;i>=t.minimumFill&&(o=i-t.bytesFilled,s=!0);const a=e._queue;for(;o>0;){const r=a.peek(),n=Math.min(o,r.byteLength),s=t.byteOffset+t.bytesFilled;we(t.buffer,s,r.buffer,r.byteOffset,n),r.byteLength===n?a.shift():(r.byteOffset+=n,r.byteLength-=n),e._queueTotalSize-=n,Je(e,n,t),o-=n}return s}function Je(e,t,r){r.bytesFilled+=t}function Ze(e){0===e._queueTotalSize&&e._closeRequested?(ct(e),Jn(e._controlledReadableByteStream)):Ue(e)}function et(e){null!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=null,e._byobRequest=null)}function tt(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;const t=e._pendingPullIntos.peek();Xe(e,t)&&(at(e),Ve(e._controlledReadableByteStream,t))}}function rt(e){const t=e._controlledReadableByteStream._reader;for(;t._readRequests.length>0;){if(0===e._queueTotalSize)return;ht(e,t._readRequests.shift())}}function nt(e,t,r,n){const o=e._controlledReadableByteStream,s=t.constructor,i=Ie(s),{byteOffset:a,byteLength:l}=t,c=r*i;let u;try{u=ve(t.buffer)}catch(e){return void n._errorSteps(e)}const d={buffer:u,bufferByteLength:u.byteLength,byteOffset:a,byteLength:l,bytesFilled:0,minimumFill:c,elementSize:i,viewConstructor:s,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(d),void $t(o,n);if("closed"!==o._state){if(e._queueTotalSize>0){if(Xe(e,d)){const t=Ke(d);return Ze(e),void n._chunkSteps(t)}if(e._closeRequested){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");return ft(e,t),void n._errorSteps(t)}}e._pendingPullIntos.push(d),$t(o,n),Ue(e)}else{const e=new s(d.buffer,d.byteOffset,0);n._closeSteps(e)}}function ot(e,t){"none"===t.readerType&&at(e);const r=e._controlledReadableByteStream;if(kt(r))for(;Ct(r)>0;)Ve(r,at(e))}function st(e,t,r){if(Je(e,t,r),"none"===r.readerType)return Ge(e,r),void tt(e);if(r.bytesFilled<r.minimumFill)return;at(e);const n=r.bytesFilled%r.elementSize;if(n>0){const t=r.byteOffset+r.bytesFilled;Qe(e,r.buffer,t-n,n)}r.bytesFilled-=n,Ve(e._controlledReadableByteStream,r),tt(e)}function it(e,t){const r=e._pendingPullIntos.peek();et(e),"closed"===e._controlledReadableByteStream._state?ot(e,r):st(e,t,r),Ue(e)}function at(e){return e._pendingPullIntos.shift()}function lt(e){const t=e._controlledReadableByteStream;return"readable"===t._state&&!e._closeRequested&&!!e._started&&(!!(re(t)&&te(t)>0)||!!(kt(t)&&Ct(t)>0)||mt(e)>0)}function ct(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0}function ut(e){const t=e._controlledReadableByteStream;if(!e._closeRequested&&"readable"===t._state)if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(t.bytesFilled%t.elementSize!==0){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");throw ft(e,t),t}}ct(e),Jn(t)}}function dt(e,t){const r=e._controlledReadableByteStream;if(e._closeRequested||"readable"!==r._state)return;const{buffer:n,byteOffset:o,byteLength:s}=t;if(Se(n))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");const i=ve(n);if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(Se(t.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");et(e),t.buffer=ve(t.buffer),"none"===t.readerType&&Ge(e,t)}re(r)?(rt(e),0===te(r)?Ye(e,i,o,s):(e._pendingPullIntos.length>0&&at(e),ee(r,new Uint8Array(i,o,s),!1))):kt(r)?(Ye(e,i,o,s),tt(e)):Ye(e,i,o,s),Ue(e)}function ft(e,t){const r=e._controlledReadableByteStream;"readable"===r._state&&(He(e),xe(e),ct(e),Zn(r,t))}function ht(e,t){const r=e._queue.shift();e._queueTotalSize-=r.byteLength,Ze(e);const n=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);t._chunkSteps(n)}function pt(e){if(null===e._byobRequest&&e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek(),r=new Uint8Array(t.buffer,t.byteOffset+t.bytesFilled,t.byteLength-t.bytesFilled),n=Object.create(ze.prototype);wt(n,e,r),e._byobRequest=n}return e._byobRequest}function mt(e){const t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function bt(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===t)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range")}r.buffer=ve(r.buffer),it(e,t)}function yt(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t.byteLength)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===t.byteLength)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.bufferByteLength!==t.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(r.bytesFilled+t.byteLength>r.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const n=t.byteLength;r.buffer=ve(t.buffer),it(e,n)}function gt(e,t,r,n,o,s,i){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,t._byobRequest=null,t._queue=t._queueTotalSize=void 0,xe(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=s,t._pullAlgorithm=n,t._cancelAlgorithm=o,t._autoAllocateChunkSize=i,t._pendingPullIntos=new v,e._readableStreamController=t,f(c(r()),(()=>(t._started=!0,Ue(t),null)),(e=>(ft(t,e),null)))}function _t(e,t,r){const n=Object.create(Fe.prototype);let o,s,i;o=void 0!==t.start?()=>t.start(n):()=>{},s=void 0!==t.pull?()=>t.pull(n):()=>c(void 0),i=void 0!==t.cancel?e=>t.cancel(e):()=>c(void 0);const a=t.autoAllocateChunkSize;if(0===a)throw new TypeError("autoAllocateChunkSize must be greater than 0");gt(e,n,o,s,i,r,a)}function wt(e,t,r){e._associatedReadableByteStreamController=t,e._view=r}function vt(e){return new TypeError(`ReadableStreamBYOBRequest.prototype.${e} can only be used on a ReadableStreamBYOBRequest`)}function St(e){return new TypeError(`ReadableByteStreamController.prototype.${e} can only be used on a ReadableByteStreamController`)}function Tt(e,t){F(e,t);const r=null==e?void 0:e.mode;return{mode:void 0===r?void 0:Rt(r,`${t} has member 'mode' that`)}}function Rt(e,t){if("byob"!=(e=`${e}`))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamReaderMode`);return e}function Et(e,t){var r;return F(e,t),{min:G(null!==(r=null==e?void 0:e.min)&&void 0!==r?r:1,`${t} has member 'min' that`)}}function Pt(e){return new Ot(e)}function $t(e,t){e._reader._readIntoRequests.push(t)}function At(e,t,r){const n=e._reader._readIntoRequests.shift();r?n._closeSteps(t):n._chunkSteps(t)}function Ct(e){return e._reader._readIntoRequests.length}function kt(e){const t=e._reader;return void 0!==t&&!!qt(t)}Object.defineProperties(Fe.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),o(Fe.prototype.close,"close"),o(Fe.prototype.enqueue,"enqueue"),o(Fe.prototype.error,"error"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Fe.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class Ot{constructor(e){if(H(e,1,"ReadableStreamBYOBReader"),X(e,"First parameter"),Gn(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Me(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");$(this,e),this._readIntoRequests=new v}get closed(){return qt(this)?this._closedPromise:u(xt("closed"))}cancel(e=void 0){return qt(this)?void 0===this._ownerReadableStream?u(k("cancel")):A(this,e):u(xt("cancel"))}read(e,t={}){if(!qt(this))return u(xt("read"));if(!ArrayBuffer.isView(e))return u(new TypeError("view must be an array buffer view"));if(0===e.byteLength)return u(new TypeError("view must have non-zero byteLength"));if(0===e.buffer.byteLength)return u(new TypeError("view's buffer must have non-zero byteLength"));if(Se(e.buffer))return u(new TypeError("view's buffer has been detached"));let r;try{r=Et(t,"options")}catch(e){return u(e)}const n=r.min;if(0===n)return u(new TypeError("options.min must be greater than 0"));if(De(e)){if(n>e.byteLength)return u(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(n>e.length)return u(new RangeError("options.min must be less than or equal to view's length"));if(void 0===this._ownerReadableStream)return u(k("read from"));let o,s;const i=l(((e,t)=>{o=e,s=t})),a={_chunkSteps:e=>o({value:e,done:!1}),_closeSteps:e=>o({value:e,done:!0}),_errorSteps:e=>s(e)};return jt(this,e,n,a),i}releaseLock(){if(!qt(this))throw xt("releaseLock");void 0!==this._ownerReadableStream&&Lt(this)}}function qt(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")&&e instanceof Ot}function jt(e,t,r,n){const o=e._ownerReadableStream;o._disturbed=!0,"errored"===o._state?n._errorSteps(o._storedError):nt(o._readableStreamController,t,r,n)}function Lt(e){C(e),Wt(e,new TypeError("Reader was released"))}function Wt(e,t){const r=e._readIntoRequests;e._readIntoRequests=new v,r.forEach((e=>{e._errorSteps(t)}))}function xt(e){return new TypeError(`ReadableStreamBYOBReader.prototype.${e} can only be used on a ReadableStreamBYOBReader`)}function Bt(e,t){const{highWaterMark:r}=e;if(void 0===r)return t;if(me(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function Dt(e){const{size:t}=e;return t||(()=>1)}function It(e,t){F(e,t);const r=null==e?void 0:e.highWaterMark,n=null==e?void 0:e.size;return{highWaterMark:void 0===r?void 0:K(r),size:void 0===n?void 0:zt(n,`${t} has member 'size' that`)}}function zt(e,t){return M(e,t),t=>K(e(t))}function Ft(e,t){F(e,t);const r=null==e?void 0:e.abort,n=null==e?void 0:e.close,o=null==e?void 0:e.start,s=null==e?void 0:e.type,i=null==e?void 0:e.write;return{abort:void 0===r?void 0:Mt(r,e,`${t} has member 'abort' that`),close:void 0===n?void 0:Nt(n,e,`${t} has member 'close' that`),start:void 0===o?void 0:Ut(o,e,`${t} has member 'start' that`),write:void 0===i?void 0:Ht(i,e,`${t} has member 'write' that`),type:s}}function Mt(e,t,r){return M(e,r),r=>_(e,t,[r])}function Nt(e,t,r){return M(e,r),()=>_(e,t,[])}function Ut(e,t,r){return M(e,r),r=>g(e,t,[r])}function Ht(e,t,r){return M(e,r),(r,n)=>_(e,t,[r,n])}function Vt(e,t){if(!er(e))throw new TypeError(`${t} is not a WritableStream.`)}function Kt(e){if("object"!=typeof e||null===e)return!1;try{return"boolean"==typeof e.aborted}catch(e){return!1}}Object.defineProperties(Ot.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),o(Ot.prototype.cancel,"cancel"),o(Ot.prototype.read,"read"),o(Ot.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Ot.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});const Yt="function"==typeof AbortController;function Qt(){if(Yt)return new AbortController}class Gt{constructor(e={},t={}){void 0===e?e=null:U(e,"First parameter");const r=It(t,"Second parameter"),n=Ft(e,"First parameter");if(Zt(this),void 0!==n.type)throw new RangeError("Invalid type is specified");const o=Dt(r);qr(this,n,Bt(r,1),o)}get locked(){if(!er(this))throw Ur("locked");return tr(this)}abort(e=void 0){return er(this)?tr(this)?u(new TypeError("Cannot abort a stream that already has a writer")):rr(this,e):u(Ur("abort"))}close(){return er(this)?tr(this)?u(new TypeError("Cannot close a stream that already has a writer")):fr(this)?u(new TypeError("Cannot close an already-closing stream")):nr(this):u(Ur("close"))}getWriter(){if(!er(this))throw Ur("getWriter");return Xt(this)}}function Xt(e){return new gr(e)}function Jt(e,t,r,n,o=1,s=()=>1){const i=Object.create(Gt.prototype);return Zt(i),Or(i,Object.create(Cr.prototype),e,t,r,n,o,s),i}function Zt(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=new v,e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function er(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")&&e instanceof Gt}function tr(e){return void 0!==e._writer}function rr(e,t){var r;if("closed"===e._state||"errored"===e._state)return c(void 0);e._writableStreamController._abortReason=t,null===(r=e._writableStreamController._abortController)||void 0===r||r.abort(t);const n=e._state;if("closed"===n||"errored"===n)return c(void 0);if(void 0!==e._pendingAbortRequest)return e._pendingAbortRequest._promise;let o=!1;"erroring"===n&&(o=!0,t=void 0);const s=l(((r,n)=>{e._pendingAbortRequest={_promise:void 0,_resolve:r,_reject:n,_reason:t,_wasAlreadyErroring:o}}));return e._pendingAbortRequest._promise=s,o||ir(e,t),s}function nr(e){const t=e._state;if("closed"===t||"errored"===t)return u(new TypeError(`The stream (in ${t} state) is not in the writable state and cannot be closed`));const r=l(((t,r)=>{const n={_resolve:t,_reject:r};e._closeRequest=n})),n=e._writer;return void 0!==n&&e._backpressure&&"writable"===t&&an(n),Lr(e._writableStreamController),r}function or(e){return l(((t,r)=>{const n={_resolve:t,_reject:r};e._writeRequests.push(n)}))}function sr(e,t){"writable"!==e._state?ar(e):ir(e,t)}function ir(e,t){const r=e._writableStreamController;e._state="erroring",e._storedError=t;const n=e._writer;void 0!==n&&Rr(n,t),!hr(e)&&r._started&&ar(e)}function ar(e){e._state="errored",e._writableStreamController[T]();const t=e._storedError;if(e._writeRequests.forEach((e=>{e._reject(t)})),e._writeRequests=new v,void 0===e._pendingAbortRequest)return void br(e);const r=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(t),void br(e);f(e._writableStreamController[S](r._reason),(()=>(r._resolve(),br(e),null)),(t=>(r._reject(t),br(e),null)))}function lr(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}function cr(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,sr(e,t)}function ur(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";const t=e._writer;void 0!==t&&Zr(t)}function dr(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),sr(e,t)}function fr(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function hr(e){return void 0!==e._inFlightWriteRequest||void 0!==e._inFlightCloseRequest}function pr(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0}function mr(e){e._inFlightWriteRequest=e._writeRequests.shift()}function br(e){void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);const t=e._writer;void 0!==t&&Xr(t,e._storedError)}function yr(e,t){const r=e._writer;void 0!==r&&t!==e._backpressure&&(t?on(r):an(r)),e._backpressure=t}Object.defineProperties(Gt.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),o(Gt.prototype.abort,"abort"),o(Gt.prototype.close,"close"),o(Gt.prototype.getWriter,"getWriter"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Gt.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});class gr{constructor(e){if(H(e,1,"WritableStreamDefaultWriter"),Vt(e,"First parameter"),tr(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;const t=e._state;if("writable"===t)!fr(e)&&e._backpressure?en(this):rn(this),Yr(this);else if("erroring"===t)tn(this,e._storedError),Yr(this);else if("closed"===t)rn(this),Gr(this);else{const t=e._storedError;tn(this,t),Qr(this,t)}}get closed(){return _r(this)?this._closedPromise:u(Vr("closed"))}get desiredSize(){if(!_r(this))throw Vr("desiredSize");if(void 0===this._ownerWritableStream)throw Kr("desiredSize");return Er(this)}get ready(){return _r(this)?this._readyPromise:u(Vr("ready"))}abort(e=void 0){return _r(this)?void 0===this._ownerWritableStream?u(Kr("abort")):wr(this,e):u(Vr("abort"))}close(){if(!_r(this))return u(Vr("close"));const e=this._ownerWritableStream;return void 0===e?u(Kr("close")):fr(e)?u(new TypeError("Cannot close an already-closing stream")):vr(this)}releaseLock(){if(!_r(this))throw Vr("releaseLock");void 0!==this._ownerWritableStream&&Pr(this)}write(e=void 0){return _r(this)?void 0===this._ownerWritableStream?u(Kr("write to")):$r(this,e):u(Vr("write"))}}function _r(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")&&e instanceof gr}function wr(e,t){return rr(e._ownerWritableStream,t)}function vr(e){return nr(e._ownerWritableStream)}function Sr(e){const t=e._ownerWritableStream,r=t._state;return fr(t)||"closed"===r?c(void 0):"errored"===r?u(t._storedError):vr(e)}function Tr(e,t){"pending"===e._closedPromiseState?Xr(e,t):Jr(e,t)}function Rr(e,t){"pending"===e._readyPromiseState?nn(e,t):sn(e,t)}function Er(e){const t=e._ownerWritableStream,r=t._state;return"errored"===r||"erroring"===r?null:"closed"===r?0:xr(t._writableStreamController)}function Pr(e){const t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");Rr(e,r),Tr(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function $r(e,t){const r=e._ownerWritableStream,n=r._writableStreamController,o=Wr(n,t);if(r!==e._ownerWritableStream)return u(Kr("write to"));const s=r._state;if("errored"===s)return u(r._storedError);if(fr(r)||"closed"===s)return u(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===s)return u(r._storedError);const i=or(r);return Br(n,t,o),i}Object.defineProperties(gr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),o(gr.prototype.abort,"abort"),o(gr.prototype.close,"close"),o(gr.prototype.releaseLock,"releaseLock"),o(gr.prototype.write,"write"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(gr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const Ar={};class Cr{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!kr(this))throw Hr("abortReason");return this._abortReason}get signal(){if(!kr(this))throw Hr("signal");if(void 0===this._abortController)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e=void 0){if(!kr(this))throw Hr("error");"writable"===this._controlledWritableStream._state&&Nr(this,e)}[S](e){const t=this._abortAlgorithm(e);return jr(this),t}[T](){xe(this)}}function kr(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledWritableStream")&&e instanceof Cr}function Or(e,t,r,n,o,s,i,a){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,xe(t),t._abortReason=void 0,t._abortController=Qt(),t._started=!1,t._strategySizeAlgorithm=a,t._strategyHWM=i,t._writeAlgorithm=n,t._closeAlgorithm=o,t._abortAlgorithm=s;const l=Mr(t);yr(e,l),f(c(r()),(()=>(t._started=!0,Dr(t),null)),(r=>(t._started=!0,sr(e,r),null)))}function qr(e,t,r,n){const o=Object.create(Cr.prototype);let s,i,a,l;s=void 0!==t.start?()=>t.start(o):()=>{},i=void 0!==t.write?e=>t.write(e,o):()=>c(void 0),a=void 0!==t.close?()=>t.close():()=>c(void 0),l=void 0!==t.abort?e=>t.abort(e):()=>c(void 0),Or(e,o,s,i,a,l,r,n)}function jr(e){e._writeAlgorithm=void 0,e._closeAlgorithm=void 0,e._abortAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function Lr(e){Le(e,Ar,0),Dr(e)}function Wr(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return Ir(e,t),1}}function xr(e){return e._strategyHWM-e._queueTotalSize}function Br(e,t,r){try{Le(e,t,r)}catch(t){return void Ir(e,t)}const n=e._controlledWritableStream;fr(n)||"writable"!==n._state||yr(n,Mr(e)),Dr(e)}function Dr(e){const t=e._controlledWritableStream;if(!e._started)return;if(void 0!==t._inFlightWriteRequest)return;if("erroring"===t._state)return void ar(t);if(0===e._queue.length)return;const r=We(e);r===Ar?zr(e):Fr(e,r)}function Ir(e,t){"writable"===e._controlledWritableStream._state&&Nr(e,t)}function zr(e){const t=e._controlledWritableStream;pr(t),je(e);const r=e._closeAlgorithm();jr(e),f(r,(()=>(ur(t),null)),(e=>(dr(t,e),null)))}function Fr(e,t){const r=e._controlledWritableStream;mr(r),f(e._writeAlgorithm(t),(()=>{lr(r);const t=r._state;if(je(e),!fr(r)&&"writable"===t){const t=Mr(e);yr(r,t)}return Dr(e),null}),(t=>("writable"===r._state&&jr(e),cr(r,t),null)))}function Mr(e){return xr(e)<=0}function Nr(e,t){const r=e._controlledWritableStream;jr(e),ir(r,t)}function Ur(e){return new TypeError(`WritableStream.prototype.${e} can only be used on a WritableStream`)}function Hr(e){return new TypeError(`WritableStreamDefaultController.prototype.${e} can only be used on a WritableStreamDefaultController`)}function Vr(e){return new TypeError(`WritableStreamDefaultWriter.prototype.${e} can only be used on a WritableStreamDefaultWriter`)}function Kr(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function Yr(e){e._closedPromise=l(((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"}))}function Qr(e,t){Yr(e),Xr(e,t)}function Gr(e){Yr(e),Zr(e)}function Xr(e,t){void 0!==e._closedPromise_reject&&(b(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected")}function Jr(e,t){Qr(e,t)}function Zr(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved")}function en(e){e._readyPromise=l(((t,r)=>{e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}function tn(e,t){en(e),nn(e,t)}function rn(e){en(e),an(e)}function nn(e,t){void 0!==e._readyPromise_reject&&(b(e._readyPromise),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected")}function on(e){en(e)}function sn(e,t){tn(e,t)}function an(e){void 0!==e._readyPromise_resolve&&(e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled")}function ln(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:void 0!==L?L:void 0}Object.defineProperties(Cr.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Cr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const cn=ln();function un(e){if("function"!=typeof e&&"object"!=typeof e)return!1;if("DOMException"!==e.name)return!1;try{return new e,!0}catch(e){return!1}}function dn(){const e=null==cn?void 0:cn.DOMException;return un(e)?e:void 0}function fn(){const e=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return o(e,"DOMException"),e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}const hn=dn()||fn();function pn(e,r,n,o,s,i){const a=J(e),u=Xt(r);e._disturbed=!0;let m=!1,y=c(void 0);return l(((g,_)=>{let w;if(void 0!==i){if(w=()=>{const t=void 0!==i.reason?i.reason:new hn("Aborted","AbortError"),n=[];o||n.push((()=>"writable"===r._state?rr(r,t):c(void 0))),s||n.push((()=>"readable"===e._state?Xn(e,t):c(void 0))),P((()=>Promise.all(n.map((e=>e())))),!0,t)},i.aborted)return void w();i.addEventListener("abort",w)}function v(){return l(((e,t)=>{function r(n){n?e():d(S(),r,t)}r(!1)}))}function S(){return m?c(!0):d(u._readyPromise,(()=>l(((e,r)=>{se(a,{_chunkSteps:r=>{y=d($r(u,r),void 0,t),e(!1)},_closeSteps:()=>e(!0),_errorSteps:r})}))))}if(R(e,a._closedPromise,(e=>(o?$(!0,e):P((()=>rr(r,e)),!0,e),null))),R(r,u._closedPromise,(t=>(s?$(!0,t):P((()=>Xn(e,t)),!0,t),null))),E(e,a._closedPromise,(()=>(n?$():P((()=>Sr(u))),null))),fr(r)||"closed"===r._state){const t=new TypeError("the destination writable stream closed before all data could be piped to it");s?$(!0,t):P((()=>Xn(e,t)),!0,t)}function T(){const e=y;return d(y,(()=>e!==y?T():void 0))}function R(e,t,r){"errored"===e._state?r(e._storedError):p(t,r)}function E(e,t,r){"closed"===e._state?r():h(t,r)}function P(e,t,n){function o(){return f(e(),(()=>A(t,n)),(e=>A(!0,e))),null}m||(m=!0,"writable"!==r._state||fr(r)?o():h(T(),o))}function $(e,t){m||(m=!0,"writable"!==r._state||fr(r)?A(e,t):h(T(),(()=>A(e,t))))}function A(e,t){return Pr(u),C(a),void 0!==i&&i.removeEventListener("abort",w),e?_(t):g(void 0),null}b(v())}))}class mn{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!bn(this))throw An("desiredSize");return Tn(this)}close(){if(!bn(this))throw An("close");if(!En(this))throw new TypeError("The stream is not in a state that permits close");wn(this)}enqueue(e=void 0){if(!bn(this))throw An("enqueue");if(!En(this))throw new TypeError("The stream is not in a state that permits enqueue");return vn(this,e)}error(e=void 0){if(!bn(this))throw An("error");Sn(this,e)}[R](e){xe(this);const t=this._cancelAlgorithm(e);return _n(this),t}[E](e){const t=this._controlledReadableStream;if(this._queue.length>0){const r=je(this);this._closeRequested&&0===this._queue.length?(_n(this),Jn(t)):yn(this),e._chunkSteps(r)}else Z(t,e),yn(this)}[P](){}}function bn(e){return!!r(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")&&e instanceof mn}function yn(e){gn(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,f(e._pullAlgorithm(),(()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,yn(e)),null)),(t=>(Sn(e,t),null)))))}function gn(e){const t=e._controlledReadableStream;return!!En(e)&&!!e._started&&(!!(Gn(t)&&te(t)>0)||Tn(e)>0)}function _n(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function wn(e){if(!En(e))return;const t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&(_n(e),Jn(t))}function vn(e,t){if(!En(e))return;const r=e._controlledReadableStream;if(Gn(r)&&te(r)>0)ee(r,t,!1);else{let r;try{r=e._strategySizeAlgorithm(t)}catch(t){throw Sn(e,t),t}try{Le(e,t,r)}catch(t){throw Sn(e,t),t}}yn(e)}function Sn(e,t){const r=e._controlledReadableStream;"readable"===r._state&&(xe(e),_n(e),Zn(r,t))}function Tn(e){const t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Rn(e){return!gn(e)}function En(e){const t=e._controlledReadableStream._state;return!e._closeRequested&&"readable"===t}function Pn(e,t,r,n,o,s,i){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,xe(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=i,t._strategyHWM=s,t._pullAlgorithm=n,t._cancelAlgorithm=o,e._readableStreamController=t,f(c(r()),(()=>(t._started=!0,yn(t),null)),(e=>(Sn(t,e),null)))}function $n(e,t,r,n){const o=Object.create(mn.prototype);let s,i,a;s=void 0!==t.start?()=>t.start(o):()=>{},i=void 0!==t.pull?()=>t.pull(o):()=>c(void 0),a=void 0!==t.cancel?e=>t.cancel(e):()=>c(void 0),Pn(e,o,s,i,a,r,n)}function An(e){return new TypeError(`ReadableStreamDefaultController.prototype.${e} can only be used on a ReadableStreamDefaultController`)}function Cn(e,t){return Me(e._readableStreamController)?On(e):kn(e)}function kn(e,t){const r=J(e);let n,o,s,i,a,u=!1,d=!1,f=!1,h=!1;const m=l((e=>{a=e}));function b(){return u?(d=!0,c(void 0)):(u=!0,se(r,{_chunkSteps:e=>{y((()=>{d=!1;const t=e,r=e;f||vn(s._readableStreamController,t),h||vn(i._readableStreamController,r),u=!1,d&&b()}))},_closeSteps:()=>{u=!1,f||wn(s._readableStreamController),h||wn(i._readableStreamController),f&&h||a(void 0)},_errorSteps:()=>{u=!1}}),c(void 0))}function g(t){if(f=!0,n=t,h){const t=_e([n,o]),r=Xn(e,t);a(r)}return m}function _(t){if(h=!0,o=t,f){const t=_e([n,o]),r=Xn(e,t);a(r)}return m}function w(){}return s=Vn(w,b,g),i=Vn(w,b,_),p(r._closedPromise,(e=>(Sn(s._readableStreamController,e),Sn(i._readableStreamController,e),f&&h||a(void 0),null))),[s,i]}function On(e){let t,r,n,o,s,i=J(e),a=!1,u=!1,d=!1,f=!1,h=!1;const m=l((e=>{s=e}));function b(e){p(e._closedPromise,(t=>(e!==i||(ft(n._readableStreamController,t),ft(o._readableStreamController,t),f&&h||s(void 0)),null)))}function g(){qt(i)&&(C(i),i=J(e),b(i)),se(i,{_chunkSteps:t=>{y((()=>{u=!1,d=!1;const r=t;let i=t;if(!f&&!h)try{i=qe(t)}catch(t){return ft(n._readableStreamController,t),ft(o._readableStreamController,t),void s(Xn(e,t))}f||dt(n._readableStreamController,r),h||dt(o._readableStreamController,i),a=!1,u?w():d&&v()}))},_closeSteps:()=>{a=!1,f||ut(n._readableStreamController),h||ut(o._readableStreamController),n._readableStreamController._pendingPullIntos.length>0&&bt(n._readableStreamController,0),o._readableStreamController._pendingPullIntos.length>0&&bt(o._readableStreamController,0),f&&h||s(void 0)},_errorSteps:()=>{a=!1}})}function _(t,r){oe(i)&&(C(i),i=Pt(e),b(i));const l=r?o:n,c=r?n:o;jt(i,t,1,{_chunkSteps:t=>{y((()=>{u=!1,d=!1;const n=r?h:f;if(r?f:h)n||yt(l._readableStreamController,t);else{let r;try{r=qe(t)}catch(t){return ft(l._readableStreamController,t),ft(c._readableStreamController,t),void s(Xn(e,t))}n||yt(l._readableStreamController,t),dt(c._readableStreamController,r)}a=!1,u?w():d&&v()}))},_closeSteps:e=>{a=!1;const t=r?h:f,n=r?f:h;t||ut(l._readableStreamController),n||ut(c._readableStreamCo