@storybook/telemetry 8.0.0-alpha.3 → 8.0.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2812,6 +2812,7 @@ interface LoadOptions {
2812
2812
  packageJson: PackageJson;
2813
2813
  outputDir?: string;
2814
2814
  configDir?: string;
2815
+ cacheKey?: string;
2815
2816
  ignorePreview?: boolean;
2816
2817
  extendServer?: (server: Server) => void;
2817
2818
  }
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var require_ponyfill_es2018=__commonJS({"../../node_modules/web-streams-polyfill/dist/ponyfill.es2018.js"(exports,module2){"use strict";(function(global2,factory){typeof exports=="object"&&typeof module2<"u"?factory(exports):typeof define=="function"&&define.amd?define(["exports"],factory):(global2=typeof globalThis<"u"?globalThis:global2||self,factory(global2.WebStreamsPolyfill={}))})(exports,function(exports2){"use strict";let SymbolPolyfill=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol:description=>`Symbol(${description})`;function noop2(){}function getGlobals(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}let globals=getGlobals();function typeIsObject(x2){return typeof x2=="object"&&x2!==null||typeof x2=="function"}let rethrowAssertionErrorRejection=noop2,originalPromise=Promise,originalPromiseThen=Promise.prototype.then,originalPromiseResolve=Promise.resolve.bind(originalPromise),originalPromiseReject=Promise.reject.bind(originalPromise);function newPromise(executor){return new originalPromise(executor)}function promiseResolvedWith(value){return originalPromiseResolve(value)}function promiseRejectedWith(reason){return originalPromiseReject(reason)}function PerformPromiseThen(promise,onFulfilled,onRejected){return originalPromiseThen.call(promise,onFulfilled,onRejected)}function uponPromise(promise,onFulfilled,onRejected){PerformPromiseThen(PerformPromiseThen(promise,onFulfilled,onRejected),void 0,rethrowAssertionErrorRejection)}function uponFulfillment(promise,onFulfilled){uponPromise(promise,onFulfilled)}function uponRejection(promise,onRejected){uponPromise(promise,void 0,onRejected)}function transformPromiseWith(promise,fulfillmentHandler,rejectionHandler){return PerformPromiseThen(promise,fulfillmentHandler,rejectionHandler)}function setPromiseIsHandledToTrue(promise){PerformPromiseThen(promise,void 0,rethrowAssertionErrorRejection)}let queueMicrotask=(()=>{let globalQueueMicrotask=globals&&globals.queueMicrotask;if(typeof globalQueueMicrotask=="function")return globalQueueMicrotask;let resolvedPromise=promiseResolvedWith(void 0);return fn=>PerformPromiseThen(resolvedPromise,fn)})();function reflectCall(F2,V,args){if(typeof F2!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(F2,V,args)}function promiseCall(F2,V,args){try{return promiseResolvedWith(reflectCall(F2,V,args))}catch(value){return promiseRejectedWith(value)}}let QUEUE_MAX_ARRAY_SIZE=16384;class SimpleQueue{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(element){let oldBack=this._back,newBack=oldBack;oldBack._elements.length===QUEUE_MAX_ARRAY_SIZE-1&&(newBack={_elements:[],_next:void 0}),oldBack._elements.push(element),newBack!==oldBack&&(this._back=newBack,oldBack._next=newBack),++this._size}shift(){let oldFront=this._front,newFront=oldFront,oldCursor=this._cursor,newCursor=oldCursor+1,elements=oldFront._elements,element=elements[oldCursor];return newCursor===QUEUE_MAX_ARRAY_SIZE&&(newFront=oldFront._next,newCursor=0),--this._size,this._cursor=newCursor,oldFront!==newFront&&(this._front=newFront),elements[oldCursor]=void 0,element}forEach(callback){let i2=this._cursor,node=this._front,elements=node._elements;for(;(i2!==elements.length||node._next!==void 0)&&!(i2===elements.length&&(node=node._next,elements=node._elements,i2=0,elements.length===0));)callback(elements[i2]),++i2}peek(){let front=this._front,cursor=this._cursor;return front._elements[cursor]}}function ReadableStreamReaderGenericInitialize(reader,stream){reader._ownerReadableStream=stream,stream._reader=reader,stream._state==="readable"?defaultReaderClosedPromiseInitialize(reader):stream._state==="closed"?defaultReaderClosedPromiseInitializeAsResolved(reader):defaultReaderClosedPromiseInitializeAsRejected(reader,stream._storedError)}function ReadableStreamReaderGenericCancel(reader,reason){let stream=reader._ownerReadableStream;return ReadableStreamCancel(stream,reason)}function ReadableStreamReaderGenericRelease(reader){reader._ownerReadableStream._state==="readable"?defaultReaderClosedPromiseReject(reader,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):defaultReaderClosedPromiseResetToRejected(reader,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),reader._ownerReadableStream._reader=void 0,reader._ownerReadableStream=void 0}function readerLockException(name){return new TypeError("Cannot "+name+" a stream using a released reader")}function defaultReaderClosedPromiseInitialize(reader){reader._closedPromise=newPromise((resolve,reject)=>{reader._closedPromise_resolve=resolve,reader._closedPromise_reject=reject})}function defaultReaderClosedPromiseInitializeAsRejected(reader,reason){defaultReaderClosedPromiseInitialize(reader),defaultReaderClosedPromiseReject(reader,reason)}function defaultReaderClosedPromiseInitializeAsResolved(reader){defaultReaderClosedPromiseInitialize(reader),defaultReaderClosedPromiseResolve(reader)}function defaultReaderClosedPromiseReject(reader,reason){reader._closedPromise_reject!==void 0&&(setPromiseIsHandledToTrue(reader._closedPromise),reader._closedPromise_reject(reason),reader._closedPromise_resolve=void 0,reader._closedPromise_reject=void 0)}function defaultReaderClosedPromiseResetToRejected(reader,reason){defaultReaderClosedPromiseInitializeAsRejected(reader,reason)}function defaultReaderClosedPromiseResolve(reader){reader._closedPromise_resolve!==void 0&&(reader._closedPromise_resolve(void 0),reader._closedPromise_resolve=void 0,reader._closedPromise_reject=void 0)}let AbortSteps=SymbolPolyfill("[[AbortSteps]]"),ErrorSteps=SymbolPolyfill("[[ErrorSteps]]"),CancelSteps=SymbolPolyfill("[[CancelSteps]]"),PullSteps=SymbolPolyfill("[[PullSteps]]"),NumberIsFinite=Number.isFinite||function(x2){return typeof x2=="number"&&isFinite(x2)},MathTrunc=Math.trunc||function(v){return v<0?Math.ceil(v):Math.floor(v)};function isDictionary(x2){return typeof x2=="object"||typeof x2=="function"}function assertDictionary(obj,context){if(obj!==void 0&&!isDictionary(obj))throw new TypeError(`${context} is not an object.`)}function assertFunction(x2,context){if(typeof x2!="function")throw new TypeError(`${context} is not a function.`)}function isObject(x2){return typeof x2=="object"&&x2!==null||typeof x2=="function"}function assertObject(x2,context){if(!isObject(x2))throw new TypeError(`${context} is not an object.`)}function assertRequiredArgument(x2,position,context){if(x2===void 0)throw new TypeError(`Parameter ${position} is required in '${context}'.`)}function assertRequiredField(x2,field,context){if(x2===void 0)throw new TypeError(`${field} is required in '${context}'.`)}function convertUnrestrictedDouble(value){return Number(value)}function censorNegativeZero(x2){return x2===0?0:x2}function integerPart(x2){return censorNegativeZero(MathTrunc(x2))}function convertUnsignedLongLongWithEnforceRange(value,context){let upperBound=Number.MAX_SAFE_INTEGER,x2=Number(value);if(x2=censorNegativeZero(x2),!NumberIsFinite(x2))throw new TypeError(`${context} is not a finite number`);if(x2=integerPart(x2),x2<0||x2>upperBound)throw new TypeError(`${context} is outside the accepted range of 0 to ${upperBound}, inclusive`);return!NumberIsFinite(x2)||x2===0?0:x2}function assertReadableStream(x2,context){if(!IsReadableStream(x2))throw new TypeError(`${context} is not a ReadableStream.`)}function AcquireReadableStreamDefaultReader(stream){return new ReadableStreamDefaultReader(stream)}function ReadableStreamAddReadRequest(stream,readRequest){stream._reader._readRequests.push(readRequest)}function ReadableStreamFulfillReadRequest(stream,chunk,done){let readRequest=stream._reader._readRequests.shift();done?readRequest._closeSteps():readRequest._chunkSteps(chunk)}function ReadableStreamGetNumReadRequests(stream){return stream._reader._readRequests.length}function ReadableStreamHasDefaultReader(stream){let reader=stream._reader;return!(reader===void 0||!IsReadableStreamDefaultReader(reader))}class ReadableStreamDefaultReader{constructor(stream){if(assertRequiredArgument(stream,1,"ReadableStreamDefaultReader"),assertReadableStream(stream,"First parameter"),IsReadableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive reading by another reader");ReadableStreamReaderGenericInitialize(this,stream),this._readRequests=new SimpleQueue}get closed(){return IsReadableStreamDefaultReader(this)?this._closedPromise:promiseRejectedWith(defaultReaderBrandCheckException("closed"))}cancel(reason=void 0){return IsReadableStreamDefaultReader(this)?this._ownerReadableStream===void 0?promiseRejectedWith(readerLockException("cancel")):ReadableStreamReaderGenericCancel(this,reason):promiseRejectedWith(defaultReaderBrandCheckException("cancel"))}read(){if(!IsReadableStreamDefaultReader(this))return promiseRejectedWith(defaultReaderBrandCheckException("read"));if(this._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("read from"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamDefaultReaderRead(this,{_chunkSteps:chunk=>resolvePromise({value:chunk,done:!1}),_closeSteps:()=>resolvePromise({value:void 0,done:!0}),_errorSteps:e2=>rejectPromise(e2)}),promise}releaseLock(){if(!IsReadableStreamDefaultReader(this))throw defaultReaderBrandCheckException("releaseLock");if(this._ownerReadableStream!==void 0){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");ReadableStreamReaderGenericRelease(this)}}}Object.defineProperties(ReadableStreamDefaultReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamDefaultReader.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function IsReadableStreamDefaultReader(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readRequests")?!1:x2 instanceof ReadableStreamDefaultReader}function ReadableStreamDefaultReaderRead(reader,readRequest){let stream=reader._ownerReadableStream;stream._disturbed=!0,stream._state==="closed"?readRequest._closeSteps():stream._state==="errored"?readRequest._errorSteps(stream._storedError):stream._readableStreamController[PullSteps](readRequest)}function defaultReaderBrandCheckException(name){return new TypeError(`ReadableStreamDefaultReader.prototype.${name} can only be used on a ReadableStreamDefaultReader`)}let AsyncIteratorPrototype=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class ReadableStreamAsyncIteratorImpl{constructor(reader,preventCancel){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=reader,this._preventCancel=preventCancel}next(){let nextSteps=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?transformPromiseWith(this._ongoingPromise,nextSteps,nextSteps):nextSteps(),this._ongoingPromise}return(value){let returnSteps=()=>this._returnSteps(value);return this._ongoingPromise?transformPromiseWith(this._ongoingPromise,returnSteps,returnSteps):returnSteps()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let reader=this._reader;if(reader._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("iterate"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{this._ongoingPromise=void 0,queueMicrotask(()=>resolvePromise({value:chunk,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,ReadableStreamReaderGenericRelease(reader),resolvePromise({value:void 0,done:!0})},_errorSteps:reason=>{this._ongoingPromise=void 0,this._isFinished=!0,ReadableStreamReaderGenericRelease(reader),rejectPromise(reason)}}),promise}_returnSteps(value){if(this._isFinished)return Promise.resolve({value,done:!0});this._isFinished=!0;let reader=this._reader;if(reader._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("finish iterating"));if(!this._preventCancel){let result=ReadableStreamReaderGenericCancel(reader,value);return ReadableStreamReaderGenericRelease(reader),transformPromiseWith(result,()=>({value,done:!0}))}return ReadableStreamReaderGenericRelease(reader),promiseResolvedWith({value,done:!0})}}let ReadableStreamAsyncIteratorPrototype={next(){return IsReadableStreamAsyncIterator(this)?this._asyncIteratorImpl.next():promiseRejectedWith(streamAsyncIteratorBrandCheckException("next"))},return(value){return IsReadableStreamAsyncIterator(this)?this._asyncIteratorImpl.return(value):promiseRejectedWith(streamAsyncIteratorBrandCheckException("return"))}};AsyncIteratorPrototype!==void 0&&Object.setPrototypeOf(ReadableStreamAsyncIteratorPrototype,AsyncIteratorPrototype);function AcquireReadableStreamAsyncIterator(stream,preventCancel){let reader=AcquireReadableStreamDefaultReader(stream),impl=new ReadableStreamAsyncIteratorImpl(reader,preventCancel),iterator=Object.create(ReadableStreamAsyncIteratorPrototype);return iterator._asyncIteratorImpl=impl,iterator}function IsReadableStreamAsyncIterator(x2){if(!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_asyncIteratorImpl"))return!1;try{return x2._asyncIteratorImpl instanceof ReadableStreamAsyncIteratorImpl}catch{return!1}}function streamAsyncIteratorBrandCheckException(name){return new TypeError(`ReadableStreamAsyncIterator.${name} can only be used on a ReadableSteamAsyncIterator`)}let NumberIsNaN=Number.isNaN||function(x2){return x2!==x2};function CreateArrayFromList(elements){return elements.slice()}function CopyDataBlockBytes(dest,destOffset,src,srcOffset,n){new Uint8Array(dest).set(new Uint8Array(src,srcOffset,n),destOffset)}function TransferArrayBuffer(O){return O}function IsDetachedBuffer(O){return!1}function ArrayBufferSlice(buffer,begin,end){if(buffer.slice)return buffer.slice(begin,end);let length=end-begin,slice=new ArrayBuffer(length);return CopyDataBlockBytes(slice,0,buffer,begin,length),slice}function IsNonNegativeNumber(v){return!(typeof v!="number"||NumberIsNaN(v)||v<0)}function CloneAsUint8Array(O){let buffer=ArrayBufferSlice(O.buffer,O.byteOffset,O.byteOffset+O.byteLength);return new Uint8Array(buffer)}function DequeueValue(container){let pair=container._queue.shift();return container._queueTotalSize-=pair.size,container._queueTotalSize<0&&(container._queueTotalSize=0),pair.value}function EnqueueValueWithSize(container,value,size){if(!IsNonNegativeNumber(size)||size===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");container._queue.push({value,size}),container._queueTotalSize+=size}function PeekQueueValue(container){return container._queue.peek().value}function ResetQueue(container){container._queue=new SimpleQueue,container._queueTotalSize=0}class ReadableStreamBYOBRequest{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("view");return this._view}respond(bytesWritten){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("respond");if(assertRequiredArgument(bytesWritten,1,"respond"),bytesWritten=convertUnsignedLongLongWithEnforceRange(bytesWritten,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");IsDetachedBuffer(this._view.buffer),ReadableByteStreamControllerRespond(this._associatedReadableByteStreamController,bytesWritten)}respondWithNewView(view){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("respondWithNewView");if(assertRequiredArgument(view,1,"respondWithNewView"),!ArrayBuffer.isView(view))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");IsDetachedBuffer(view.buffer),ReadableByteStreamControllerRespondWithNewView(this._associatedReadableByteStreamController,view)}}Object.defineProperties(ReadableStreamBYOBRequest.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamBYOBRequest.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class ReadableByteStreamController{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("byobRequest");return ReadableByteStreamControllerGetBYOBRequest(this)}get desiredSize(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("desiredSize");return ReadableByteStreamControllerGetDesiredSize(this)}close(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let state=this._controlledReadableByteStream._state;if(state!=="readable")throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be closed`);ReadableByteStreamControllerClose(this)}enqueue(chunk){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("enqueue");if(assertRequiredArgument(chunk,1,"enqueue"),!ArrayBuffer.isView(chunk))throw new TypeError("chunk must be an array buffer view");if(chunk.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(chunk.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let state=this._controlledReadableByteStream._state;if(state!=="readable")throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be enqueued to`);ReadableByteStreamControllerEnqueue(this,chunk)}error(e2=void 0){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("error");ReadableByteStreamControllerError(this,e2)}[CancelSteps](reason){ReadableByteStreamControllerClearPendingPullIntos(this),ResetQueue(this);let result=this._cancelAlgorithm(reason);return ReadableByteStreamControllerClearAlgorithms(this),result}[PullSteps](readRequest){let stream=this._controlledReadableByteStream;if(this._queueTotalSize>0){let entry=this._queue.shift();this._queueTotalSize-=entry.byteLength,ReadableByteStreamControllerHandleQueueDrain(this);let view=new Uint8Array(entry.buffer,entry.byteOffset,entry.byteLength);readRequest._chunkSteps(view);return}let autoAllocateChunkSize=this._autoAllocateChunkSize;if(autoAllocateChunkSize!==void 0){let buffer;try{buffer=new ArrayBuffer(autoAllocateChunkSize)}catch(bufferE){readRequest._errorSteps(bufferE);return}let pullIntoDescriptor={buffer,bufferByteLength:autoAllocateChunkSize,byteOffset:0,byteLength:autoAllocateChunkSize,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pullIntoDescriptor)}ReadableStreamAddReadRequest(stream,readRequest),ReadableByteStreamControllerCallPullIfNeeded(this)}}Object.defineProperties(ReadableByteStreamController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableByteStreamController.prototype,SymbolPolyfill.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function IsReadableByteStreamController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledReadableByteStream")?!1:x2 instanceof ReadableByteStreamController}function IsReadableStreamBYOBRequest(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_associatedReadableByteStreamController")?!1:x2 instanceof ReadableStreamBYOBRequest}function ReadableByteStreamControllerCallPullIfNeeded(controller){if(!ReadableByteStreamControllerShouldCallPull(controller))return;if(controller._pulling){controller._pullAgain=!0;return}controller._pulling=!0;let pullPromise=controller._pullAlgorithm();uponPromise(pullPromise,()=>{controller._pulling=!1,controller._pullAgain&&(controller._pullAgain=!1,ReadableByteStreamControllerCallPullIfNeeded(controller))},e2=>{ReadableByteStreamControllerError(controller,e2)})}function ReadableByteStreamControllerClearPendingPullIntos(controller){ReadableByteStreamControllerInvalidateBYOBRequest(controller),controller._pendingPullIntos=new SimpleQueue}function ReadableByteStreamControllerCommitPullIntoDescriptor(stream,pullIntoDescriptor){let done=!1;stream._state==="closed"&&(done=!0);let filledView=ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);pullIntoDescriptor.readerType==="default"?ReadableStreamFulfillReadRequest(stream,filledView,done):ReadableStreamFulfillReadIntoRequest(stream,filledView,done)}function ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor){let bytesFilled=pullIntoDescriptor.bytesFilled,elementSize=pullIntoDescriptor.elementSize;return new pullIntoDescriptor.viewConstructor(pullIntoDescriptor.buffer,pullIntoDescriptor.byteOffset,bytesFilled/elementSize)}function ReadableByteStreamControllerEnqueueChunkToQueue(controller,buffer,byteOffset,byteLength){controller._queue.push({buffer,byteOffset,byteLength}),controller._queueTotalSize+=byteLength}function ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor){let elementSize=pullIntoDescriptor.elementSize,currentAlignedBytes=pullIntoDescriptor.bytesFilled-pullIntoDescriptor.bytesFilled%elementSize,maxBytesToCopy=Math.min(controller._queueTotalSize,pullIntoDescriptor.byteLength-pullIntoDescriptor.bytesFilled),maxBytesFilled=pullIntoDescriptor.bytesFilled+maxBytesToCopy,maxAlignedBytes=maxBytesFilled-maxBytesFilled%elementSize,totalBytesToCopyRemaining=maxBytesToCopy,ready=!1;maxAlignedBytes>currentAlignedBytes&&(totalBytesToCopyRemaining=maxAlignedBytes-pullIntoDescriptor.bytesFilled,ready=!0);let queue=controller._queue;for(;totalBytesToCopyRemaining>0;){let headOfQueue=queue.peek(),bytesToCopy=Math.min(totalBytesToCopyRemaining,headOfQueue.byteLength),destStart=pullIntoDescriptor.byteOffset+pullIntoDescriptor.bytesFilled;CopyDataBlockBytes(pullIntoDescriptor.buffer,destStart,headOfQueue.buffer,headOfQueue.byteOffset,bytesToCopy),headOfQueue.byteLength===bytesToCopy?queue.shift():(headOfQueue.byteOffset+=bytesToCopy,headOfQueue.byteLength-=bytesToCopy),controller._queueTotalSize-=bytesToCopy,ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,bytesToCopy,pullIntoDescriptor),totalBytesToCopyRemaining-=bytesToCopy}return ready}function ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,size,pullIntoDescriptor){pullIntoDescriptor.bytesFilled+=size}function ReadableByteStreamControllerHandleQueueDrain(controller){controller._queueTotalSize===0&&controller._closeRequested?(ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamClose(controller._controlledReadableByteStream)):ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerInvalidateBYOBRequest(controller){controller._byobRequest!==null&&(controller._byobRequest._associatedReadableByteStreamController=void 0,controller._byobRequest._view=null,controller._byobRequest=null)}function ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller){for(;controller._pendingPullIntos.length>0;){if(controller._queueTotalSize===0)return;let pullIntoDescriptor=controller._pendingPullIntos.peek();ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor)&&(ReadableByteStreamControllerShiftPendingPullInto(controller),ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream,pullIntoDescriptor))}}function ReadableByteStreamControllerPullInto(controller,view,readIntoRequest){let stream=controller._controlledReadableByteStream,elementSize=1;view.constructor!==DataView&&(elementSize=view.constructor.BYTES_PER_ELEMENT);let ctor=view.constructor,buffer=view.buffer,pullIntoDescriptor={buffer,bufferByteLength:buffer.byteLength,byteOffset:view.byteOffset,byteLength:view.byteLength,bytesFilled:0,elementSize,viewConstructor:ctor,readerType:"byob"};if(controller._pendingPullIntos.length>0){controller._pendingPullIntos.push(pullIntoDescriptor),ReadableStreamAddReadIntoRequest(stream,readIntoRequest);return}if(stream._state==="closed"){let emptyView=new ctor(pullIntoDescriptor.buffer,pullIntoDescriptor.byteOffset,0);readIntoRequest._closeSteps(emptyView);return}if(controller._queueTotalSize>0){if(ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor)){let filledView=ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);ReadableByteStreamControllerHandleQueueDrain(controller),readIntoRequest._chunkSteps(filledView);return}if(controller._closeRequested){let e2=new TypeError("Insufficient bytes to fill elements in the given buffer");ReadableByteStreamControllerError(controller,e2),readIntoRequest._errorSteps(e2);return}}controller._pendingPullIntos.push(pullIntoDescriptor),ReadableStreamAddReadIntoRequest(stream,readIntoRequest),ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerRespondInClosedState(controller,firstDescriptor){let stream=controller._controlledReadableByteStream;if(ReadableStreamHasBYOBReader(stream))for(;ReadableStreamGetNumReadIntoRequests(stream)>0;){let pullIntoDescriptor=ReadableByteStreamControllerShiftPendingPullInto(controller);ReadableByteStreamControllerCommitPullIntoDescriptor(stream,pullIntoDescriptor)}}function ReadableByteStreamControllerRespondInReadableState(controller,bytesWritten,pullIntoDescriptor){if(ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,bytesWritten,pullIntoDescriptor),pullIntoDescriptor.bytesFilled<pullIntoDescriptor.elementSize)return;ReadableByteStreamControllerShiftPendingPullInto(controller);let remainderSize=pullIntoDescriptor.bytesFilled%pullIntoDescriptor.elementSize;if(remainderSize>0){let end=pullIntoDescriptor.byteOffset+pullIntoDescriptor.bytesFilled,remainder=ArrayBufferSlice(pullIntoDescriptor.buffer,end-remainderSize,end);ReadableByteStreamControllerEnqueueChunkToQueue(controller,remainder,0,remainder.byteLength)}pullIntoDescriptor.bytesFilled-=remainderSize,ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream,pullIntoDescriptor),ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller)}function ReadableByteStreamControllerRespondInternal(controller,bytesWritten){let firstDescriptor=controller._pendingPullIntos.peek();ReadableByteStreamControllerInvalidateBYOBRequest(controller),controller._controlledReadableByteStream._state==="closed"?ReadableByteStreamControllerRespondInClosedState(controller):ReadableByteStreamControllerRespondInReadableState(controller,bytesWritten,firstDescriptor),ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerShiftPendingPullInto(controller){return controller._pendingPullIntos.shift()}function ReadableByteStreamControllerShouldCallPull(controller){let stream=controller._controlledReadableByteStream;return stream._state!=="readable"||controller._closeRequested||!controller._started?!1:!!(ReadableStreamHasDefaultReader(stream)&&ReadableStreamGetNumReadRequests(stream)>0||ReadableStreamHasBYOBReader(stream)&&ReadableStreamGetNumReadIntoRequests(stream)>0||ReadableByteStreamControllerGetDesiredSize(controller)>0)}function ReadableByteStreamControllerClearAlgorithms(controller){controller._pullAlgorithm=void 0,controller._cancelAlgorithm=void 0}function ReadableByteStreamControllerClose(controller){let stream=controller._controlledReadableByteStream;if(!(controller._closeRequested||stream._state!=="readable")){if(controller._queueTotalSize>0){controller._closeRequested=!0;return}if(controller._pendingPullIntos.length>0&&controller._pendingPullIntos.peek().bytesFilled>0){let e2=new TypeError("Insufficient bytes to fill elements in the given buffer");throw ReadableByteStreamControllerError(controller,e2),e2}ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamClose(stream)}}function ReadableByteStreamControllerEnqueue(controller,chunk){let stream=controller._controlledReadableByteStream;if(controller._closeRequested||stream._state!=="readable")return;let buffer=chunk.buffer,byteOffset=chunk.byteOffset,byteLength=chunk.byteLength,transferredBuffer=buffer;if(controller._pendingPullIntos.length>0){let firstPendingPullInto=controller._pendingPullIntos.peek();IsDetachedBuffer(firstPendingPullInto.buffer),firstPendingPullInto.buffer=firstPendingPullInto.buffer}if(ReadableByteStreamControllerInvalidateBYOBRequest(controller),ReadableStreamHasDefaultReader(stream))if(ReadableStreamGetNumReadRequests(stream)===0)ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength);else{controller._pendingPullIntos.length>0&&ReadableByteStreamControllerShiftPendingPullInto(controller);let transferredView=new Uint8Array(transferredBuffer,byteOffset,byteLength);ReadableStreamFulfillReadRequest(stream,transferredView,!1)}else ReadableStreamHasBYOBReader(stream)?(ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength),ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller)):ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength);ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerError(controller,e2){let stream=controller._controlledReadableByteStream;stream._state==="readable"&&(ReadableByteStreamControllerClearPendingPullIntos(controller),ResetQueue(controller),ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamError(stream,e2))}function ReadableByteStreamControllerGetBYOBRequest(controller){if(controller._byobRequest===null&&controller._pendingPullIntos.length>0){let firstDescriptor=controller._pendingPullIntos.peek(),view=new Uint8Array(firstDescriptor.buffer,firstDescriptor.byteOffset+firstDescriptor.bytesFilled,firstDescriptor.byteLength-firstDescriptor.bytesFilled),byobRequest=Object.create(ReadableStreamBYOBRequest.prototype);SetUpReadableStreamBYOBRequest(byobRequest,controller,view),controller._byobRequest=byobRequest}return controller._byobRequest}function ReadableByteStreamControllerGetDesiredSize(controller){let state=controller._controlledReadableByteStream._state;return state==="errored"?null:state==="closed"?0:controller._strategyHWM-controller._queueTotalSize}function ReadableByteStreamControllerRespond(controller,bytesWritten){let firstDescriptor=controller._pendingPullIntos.peek();if(controller._controlledReadableByteStream._state==="closed"){if(bytesWritten!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(bytesWritten===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(firstDescriptor.bytesFilled+bytesWritten>firstDescriptor.byteLength)throw new RangeError("bytesWritten out of range")}firstDescriptor.buffer=firstDescriptor.buffer,ReadableByteStreamControllerRespondInternal(controller,bytesWritten)}function ReadableByteStreamControllerRespondWithNewView(controller,view){let firstDescriptor=controller._pendingPullIntos.peek();if(controller._controlledReadableByteStream._state==="closed"){if(view.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(view.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(firstDescriptor.byteOffset+firstDescriptor.bytesFilled!==view.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(firstDescriptor.bufferByteLength!==view.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(firstDescriptor.bytesFilled+view.byteLength>firstDescriptor.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let viewByteLength=view.byteLength;firstDescriptor.buffer=view.buffer,ReadableByteStreamControllerRespondInternal(controller,viewByteLength)}function SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,autoAllocateChunkSize){controller._controlledReadableByteStream=stream,controller._pullAgain=!1,controller._pulling=!1,controller._byobRequest=null,controller._queue=controller._queueTotalSize=void 0,ResetQueue(controller),controller._closeRequested=!1,controller._started=!1,controller._strategyHWM=highWaterMark,controller._pullAlgorithm=pullAlgorithm,controller._cancelAlgorithm=cancelAlgorithm,controller._autoAllocateChunkSize=autoAllocateChunkSize,controller._pendingPullIntos=new SimpleQueue,stream._readableStreamController=controller;let startResult=startAlgorithm();uponPromise(promiseResolvedWith(startResult),()=>{controller._started=!0,ReadableByteStreamControllerCallPullIfNeeded(controller)},r2=>{ReadableByteStreamControllerError(controller,r2)})}function SetUpReadableByteStreamControllerFromUnderlyingSource(stream,underlyingByteSource,highWaterMark){let controller=Object.create(ReadableByteStreamController.prototype),startAlgorithm=()=>{},pullAlgorithm=()=>promiseResolvedWith(void 0),cancelAlgorithm=()=>promiseResolvedWith(void 0);underlyingByteSource.start!==void 0&&(startAlgorithm=()=>underlyingByteSource.start(controller)),underlyingByteSource.pull!==void 0&&(pullAlgorithm=()=>underlyingByteSource.pull(controller)),underlyingByteSource.cancel!==void 0&&(cancelAlgorithm=reason=>underlyingByteSource.cancel(reason));let autoAllocateChunkSize=underlyingByteSource.autoAllocateChunkSize;if(autoAllocateChunkSize===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,autoAllocateChunkSize)}function SetUpReadableStreamBYOBRequest(request,controller,view){request._associatedReadableByteStreamController=controller,request._view=view}function byobRequestBrandCheckException(name){return new TypeError(`ReadableStreamBYOBRequest.prototype.${name} can only be used on a ReadableStreamBYOBRequest`)}function byteStreamControllerBrandCheckException(name){return new TypeError(`ReadableByteStreamController.prototype.${name} can only be used on a ReadableByteStreamController`)}function AcquireReadableStreamBYOBReader(stream){return new ReadableStreamBYOBReader(stream)}function ReadableStreamAddReadIntoRequest(stream,readIntoRequest){stream._reader._readIntoRequests.push(readIntoRequest)}function ReadableStreamFulfillReadIntoRequest(stream,chunk,done){let readIntoRequest=stream._reader._readIntoRequests.shift();done?readIntoRequest._closeSteps(chunk):readIntoRequest._chunkSteps(chunk)}function ReadableStreamGetNumReadIntoRequests(stream){return stream._reader._readIntoRequests.length}function ReadableStreamHasBYOBReader(stream){let reader=stream._reader;return!(reader===void 0||!IsReadableStreamBYOBReader(reader))}class ReadableStreamBYOBReader{constructor(stream){if(assertRequiredArgument(stream,1,"ReadableStreamBYOBReader"),assertReadableStream(stream,"First parameter"),IsReadableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!IsReadableByteStreamController(stream._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");ReadableStreamReaderGenericInitialize(this,stream),this._readIntoRequests=new SimpleQueue}get closed(){return IsReadableStreamBYOBReader(this)?this._closedPromise:promiseRejectedWith(byobReaderBrandCheckException("closed"))}cancel(reason=void 0){return IsReadableStreamBYOBReader(this)?this._ownerReadableStream===void 0?promiseRejectedWith(readerLockException("cancel")):ReadableStreamReaderGenericCancel(this,reason):promiseRejectedWith(byobReaderBrandCheckException("cancel"))}read(view){if(!IsReadableStreamBYOBReader(this))return promiseRejectedWith(byobReaderBrandCheckException("read"));if(!ArrayBuffer.isView(view))return promiseRejectedWith(new TypeError("view must be an array buffer view"));if(view.byteLength===0)return promiseRejectedWith(new TypeError("view must have non-zero byteLength"));if(view.buffer.byteLength===0)return promiseRejectedWith(new TypeError("view's buffer must have non-zero byteLength"));if(IsDetachedBuffer(view.buffer),this._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("read from"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamBYOBReaderRead(this,view,{_chunkSteps:chunk=>resolvePromise({value:chunk,done:!1}),_closeSteps:chunk=>resolvePromise({value:chunk,done:!0}),_errorSteps:e2=>rejectPromise(e2)}),promise}releaseLock(){if(!IsReadableStreamBYOBReader(this))throw byobReaderBrandCheckException("releaseLock");if(this._ownerReadableStream!==void 0){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");ReadableStreamReaderGenericRelease(this)}}}Object.defineProperties(ReadableStreamBYOBReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamBYOBReader.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function IsReadableStreamBYOBReader(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readIntoRequests")?!1:x2 instanceof ReadableStreamBYOBReader}function ReadableStreamBYOBReaderRead(reader,view,readIntoRequest){let stream=reader._ownerReadableStream;stream._disturbed=!0,stream._state==="errored"?readIntoRequest._errorSteps(stream._storedError):ReadableByteStreamControllerPullInto(stream._readableStreamController,view,readIntoRequest)}function byobReaderBrandCheckException(name){return new TypeError(`ReadableStreamBYOBReader.prototype.${name} can only be used on a ReadableStreamBYOBReader`)}function ExtractHighWaterMark(strategy,defaultHWM){let{highWaterMark}=strategy;if(highWaterMark===void 0)return defaultHWM;if(NumberIsNaN(highWaterMark)||highWaterMark<0)throw new RangeError("Invalid highWaterMark");return highWaterMark}function ExtractSizeAlgorithm(strategy){let{size}=strategy;return size||(()=>1)}function convertQueuingStrategy(init,context){assertDictionary(init,context);let highWaterMark=init==null?void 0:init.highWaterMark,size=init==null?void 0:init.size;return{highWaterMark:highWaterMark===void 0?void 0:convertUnrestrictedDouble(highWaterMark),size:size===void 0?void 0:convertQueuingStrategySize(size,`${context} has member 'size' that`)}}function convertQueuingStrategySize(fn,context){return assertFunction(fn,context),chunk=>convertUnrestrictedDouble(fn(chunk))}function convertUnderlyingSink(original,context){assertDictionary(original,context);let abort=original==null?void 0:original.abort,close=original==null?void 0:original.close,start=original==null?void 0:original.start,type=original==null?void 0:original.type,write=original==null?void 0:original.write;return{abort:abort===void 0?void 0:convertUnderlyingSinkAbortCallback(abort,original,`${context} has member 'abort' that`),close:close===void 0?void 0:convertUnderlyingSinkCloseCallback(close,original,`${context} has member 'close' that`),start:start===void 0?void 0:convertUnderlyingSinkStartCallback(start,original,`${context} has member 'start' that`),write:write===void 0?void 0:convertUnderlyingSinkWriteCallback(write,original,`${context} has member 'write' that`),type}}function convertUnderlyingSinkAbortCallback(fn,original,context){return assertFunction(fn,context),reason=>promiseCall(fn,original,[reason])}function convertUnderlyingSinkCloseCallback(fn,original,context){return assertFunction(fn,context),()=>promiseCall(fn,original,[])}function convertUnderlyingSinkStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertUnderlyingSinkWriteCallback(fn,original,context){return assertFunction(fn,context),(chunk,controller)=>promiseCall(fn,original,[chunk,controller])}function assertWritableStream(x2,context){if(!IsWritableStream(x2))throw new TypeError(`${context} is not a WritableStream.`)}function isAbortSignal2(value){if(typeof value!="object"||value===null)return!1;try{return typeof value.aborted=="boolean"}catch{return!1}}let supportsAbortController=typeof AbortController=="function";function createAbortController(){if(supportsAbortController)return new AbortController}class WritableStream{constructor(rawUnderlyingSink={},rawStrategy={}){rawUnderlyingSink===void 0?rawUnderlyingSink=null:assertObject(rawUnderlyingSink,"First parameter");let strategy=convertQueuingStrategy(rawStrategy,"Second parameter"),underlyingSink=convertUnderlyingSink(rawUnderlyingSink,"First parameter");if(InitializeWritableStream(this),underlyingSink.type!==void 0)throw new RangeError("Invalid type is specified");let sizeAlgorithm=ExtractSizeAlgorithm(strategy),highWaterMark=ExtractHighWaterMark(strategy,1);SetUpWritableStreamDefaultControllerFromUnderlyingSink(this,underlyingSink,highWaterMark,sizeAlgorithm)}get locked(){if(!IsWritableStream(this))throw streamBrandCheckException$2("locked");return IsWritableStreamLocked(this)}abort(reason=void 0){return IsWritableStream(this)?IsWritableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot abort a stream that already has a writer")):WritableStreamAbort(this,reason):promiseRejectedWith(streamBrandCheckException$2("abort"))}close(){return IsWritableStream(this)?IsWritableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot close a stream that already has a writer")):WritableStreamCloseQueuedOrInFlight(this)?promiseRejectedWith(new TypeError("Cannot close an already-closing stream")):WritableStreamClose(this):promiseRejectedWith(streamBrandCheckException$2("close"))}getWriter(){if(!IsWritableStream(this))throw streamBrandCheckException$2("getWriter");return AcquireWritableStreamDefaultWriter(this)}}Object.defineProperties(WritableStream.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStream.prototype,SymbolPolyfill.toStringTag,{value:"WritableStream",configurable:!0});function AcquireWritableStreamDefaultWriter(stream){return new WritableStreamDefaultWriter(stream)}function CreateWritableStream(startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark=1,sizeAlgorithm=()=>1){let stream=Object.create(WritableStream.prototype);InitializeWritableStream(stream);let controller=Object.create(WritableStreamDefaultController.prototype);return SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm),stream}function InitializeWritableStream(stream){stream._state="writable",stream._storedError=void 0,stream._writer=void 0,stream._writableStreamController=void 0,stream._writeRequests=new SimpleQueue,stream._inFlightWriteRequest=void 0,stream._closeRequest=void 0,stream._inFlightCloseRequest=void 0,stream._pendingAbortRequest=void 0,stream._backpressure=!1}function IsWritableStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_writableStreamController")?!1:x2 instanceof WritableStream}function IsWritableStreamLocked(stream){return stream._writer!==void 0}function WritableStreamAbort(stream,reason){var _a;if(stream._state==="closed"||stream._state==="errored")return promiseResolvedWith(void 0);stream._writableStreamController._abortReason=reason,(_a=stream._writableStreamController._abortController)===null||_a===void 0||_a.abort();let state=stream._state;if(state==="closed"||state==="errored")return promiseResolvedWith(void 0);if(stream._pendingAbortRequest!==void 0)return stream._pendingAbortRequest._promise;let wasAlreadyErroring=!1;state==="erroring"&&(wasAlreadyErroring=!0,reason=void 0);let promise=newPromise((resolve,reject)=>{stream._pendingAbortRequest={_promise:void 0,_resolve:resolve,_reject:reject,_reason:reason,_wasAlreadyErroring:wasAlreadyErroring}});return stream._pendingAbortRequest._promise=promise,wasAlreadyErroring||WritableStreamStartErroring(stream,reason),promise}function WritableStreamClose(stream){let state=stream._state;if(state==="closed"||state==="errored")return promiseRejectedWith(new TypeError(`The stream (in ${state} state) is not in the writable state and cannot be closed`));let promise=newPromise((resolve,reject)=>{let closeRequest={_resolve:resolve,_reject:reject};stream._closeRequest=closeRequest}),writer=stream._writer;return writer!==void 0&&stream._backpressure&&state==="writable"&&defaultWriterReadyPromiseResolve(writer),WritableStreamDefaultControllerClose(stream._writableStreamController),promise}function WritableStreamAddWriteRequest(stream){return newPromise((resolve,reject)=>{let writeRequest={_resolve:resolve,_reject:reject};stream._writeRequests.push(writeRequest)})}function WritableStreamDealWithRejection(stream,error){if(stream._state==="writable"){WritableStreamStartErroring(stream,error);return}WritableStreamFinishErroring(stream)}function WritableStreamStartErroring(stream,reason){let controller=stream._writableStreamController;stream._state="erroring",stream._storedError=reason;let writer=stream._writer;writer!==void 0&&WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,reason),!WritableStreamHasOperationMarkedInFlight(stream)&&controller._started&&WritableStreamFinishErroring(stream)}function WritableStreamFinishErroring(stream){stream._state="errored",stream._writableStreamController[ErrorSteps]();let storedError=stream._storedError;if(stream._writeRequests.forEach(writeRequest=>{writeRequest._reject(storedError)}),stream._writeRequests=new SimpleQueue,stream._pendingAbortRequest===void 0){WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);return}let abortRequest=stream._pendingAbortRequest;if(stream._pendingAbortRequest=void 0,abortRequest._wasAlreadyErroring){abortRequest._reject(storedError),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);return}let promise=stream._writableStreamController[AbortSteps](abortRequest._reason);uponPromise(promise,()=>{abortRequest._resolve(),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream)},reason=>{abortRequest._reject(reason),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream)})}function WritableStreamFinishInFlightWrite(stream){stream._inFlightWriteRequest._resolve(void 0),stream._inFlightWriteRequest=void 0}function WritableStreamFinishInFlightWriteWithError(stream,error){stream._inFlightWriteRequest._reject(error),stream._inFlightWriteRequest=void 0,WritableStreamDealWithRejection(stream,error)}function WritableStreamFinishInFlightClose(stream){stream._inFlightCloseRequest._resolve(void 0),stream._inFlightCloseRequest=void 0,stream._state==="erroring"&&(stream._storedError=void 0,stream._pendingAbortRequest!==void 0&&(stream._pendingAbortRequest._resolve(),stream._pendingAbortRequest=void 0)),stream._state="closed";let writer=stream._writer;writer!==void 0&&defaultWriterClosedPromiseResolve(writer)}function WritableStreamFinishInFlightCloseWithError(stream,error){stream._inFlightCloseRequest._reject(error),stream._inFlightCloseRequest=void 0,stream._pendingAbortRequest!==void 0&&(stream._pendingAbortRequest._reject(error),stream._pendingAbortRequest=void 0),WritableStreamDealWithRejection(stream,error)}function WritableStreamCloseQueuedOrInFlight(stream){return!(stream._closeRequest===void 0&&stream._inFlightCloseRequest===void 0)}function WritableStreamHasOperationMarkedInFlight(stream){return!(stream._inFlightWriteRequest===void 0&&stream._inFlightCloseRequest===void 0)}function WritableStreamMarkCloseRequestInFlight(stream){stream._inFlightCloseRequest=stream._closeRequest,stream._closeRequest=void 0}function WritableStreamMarkFirstWriteRequestInFlight(stream){stream._inFlightWriteRequest=stream._writeRequests.shift()}function WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream){stream._closeRequest!==void 0&&(stream._closeRequest._reject(stream._storedError),stream._closeRequest=void 0);let writer=stream._writer;writer!==void 0&&defaultWriterClosedPromiseReject(writer,stream._storedError)}function WritableStreamUpdateBackpressure(stream,backpressure){let writer=stream._writer;writer!==void 0&&backpressure!==stream._backpressure&&(backpressure?defaultWriterReadyPromiseReset(writer):defaultWriterReadyPromiseResolve(writer)),stream._backpressure=backpressure}class WritableStreamDefaultWriter{constructor(stream){if(assertRequiredArgument(stream,1,"WritableStreamDefaultWriter"),assertWritableStream(stream,"First parameter"),IsWritableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=stream,stream._writer=this;let state=stream._state;if(state==="writable")!WritableStreamCloseQueuedOrInFlight(stream)&&stream._backpressure?defaultWriterReadyPromiseInitialize(this):defaultWriterReadyPromiseInitializeAsResolved(this),defaultWriterClosedPromiseInitialize(this);else if(state==="erroring")defaultWriterReadyPromiseInitializeAsRejected(this,stream._storedError),defaultWriterClosedPromiseInitialize(this);else if(state==="closed")defaultWriterReadyPromiseInitializeAsResolved(this),defaultWriterClosedPromiseInitializeAsResolved(this);else{let storedError=stream._storedError;defaultWriterReadyPromiseInitializeAsRejected(this,storedError),defaultWriterClosedPromiseInitializeAsRejected(this,storedError)}}get closed(){return IsWritableStreamDefaultWriter(this)?this._closedPromise:promiseRejectedWith(defaultWriterBrandCheckException("closed"))}get desiredSize(){if(!IsWritableStreamDefaultWriter(this))throw defaultWriterBrandCheckException("desiredSize");if(this._ownerWritableStream===void 0)throw defaultWriterLockException("desiredSize");return WritableStreamDefaultWriterGetDesiredSize(this)}get ready(){return IsWritableStreamDefaultWriter(this)?this._readyPromise:promiseRejectedWith(defaultWriterBrandCheckException("ready"))}abort(reason=void 0){return IsWritableStreamDefaultWriter(this)?this._ownerWritableStream===void 0?promiseRejectedWith(defaultWriterLockException("abort")):WritableStreamDefaultWriterAbort(this,reason):promiseRejectedWith(defaultWriterBrandCheckException("abort"))}close(){if(!IsWritableStreamDefaultWriter(this))return promiseRejectedWith(defaultWriterBrandCheckException("close"));let stream=this._ownerWritableStream;return stream===void 0?promiseRejectedWith(defaultWriterLockException("close")):WritableStreamCloseQueuedOrInFlight(stream)?promiseRejectedWith(new TypeError("Cannot close an already-closing stream")):WritableStreamDefaultWriterClose(this)}releaseLock(){if(!IsWritableStreamDefaultWriter(this))throw defaultWriterBrandCheckException("releaseLock");this._ownerWritableStream!==void 0&&WritableStreamDefaultWriterRelease(this)}write(chunk=void 0){return IsWritableStreamDefaultWriter(this)?this._ownerWritableStream===void 0?promiseRejectedWith(defaultWriterLockException("write to")):WritableStreamDefaultWriterWrite(this,chunk):promiseRejectedWith(defaultWriterBrandCheckException("write"))}}Object.defineProperties(WritableStreamDefaultWriter.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStreamDefaultWriter.prototype,SymbolPolyfill.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function IsWritableStreamDefaultWriter(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_ownerWritableStream")?!1:x2 instanceof WritableStreamDefaultWriter}function WritableStreamDefaultWriterAbort(writer,reason){let stream=writer._ownerWritableStream;return WritableStreamAbort(stream,reason)}function WritableStreamDefaultWriterClose(writer){let stream=writer._ownerWritableStream;return WritableStreamClose(stream)}function WritableStreamDefaultWriterCloseWithErrorPropagation(writer){let stream=writer._ownerWritableStream,state=stream._state;return WritableStreamCloseQueuedOrInFlight(stream)||state==="closed"?promiseResolvedWith(void 0):state==="errored"?promiseRejectedWith(stream._storedError):WritableStreamDefaultWriterClose(writer)}function WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer,error){writer._closedPromiseState==="pending"?defaultWriterClosedPromiseReject(writer,error):defaultWriterClosedPromiseResetToRejected(writer,error)}function WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,error){writer._readyPromiseState==="pending"?defaultWriterReadyPromiseReject(writer,error):defaultWriterReadyPromiseResetToRejected(writer,error)}function WritableStreamDefaultWriterGetDesiredSize(writer){let stream=writer._ownerWritableStream,state=stream._state;return state==="errored"||state==="erroring"?null:state==="closed"?0:WritableStreamDefaultControllerGetDesiredSize(stream._writableStreamController)}function WritableStreamDefaultWriterRelease(writer){let stream=writer._ownerWritableStream,releasedError=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,releasedError),WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer,releasedError),stream._writer=void 0,writer._ownerWritableStream=void 0}function WritableStreamDefaultWriterWrite(writer,chunk){let stream=writer._ownerWritableStream,controller=stream._writableStreamController,chunkSize=WritableStreamDefaultControllerGetChunkSize(controller,chunk);if(stream!==writer._ownerWritableStream)return promiseRejectedWith(defaultWriterLockException("write to"));let state=stream._state;if(state==="errored")return promiseRejectedWith(stream._storedError);if(WritableStreamCloseQueuedOrInFlight(stream)||state==="closed")return promiseRejectedWith(new TypeError("The stream is closing or closed and cannot be written to"));if(state==="erroring")return promiseRejectedWith(stream._storedError);let promise=WritableStreamAddWriteRequest(stream);return WritableStreamDefaultControllerWrite(controller,chunk,chunkSize),promise}let closeSentinel={};class WritableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("abortReason");return this._abortReason}get signal(){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e2=void 0){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("error");this._controlledWritableStream._state==="writable"&&WritableStreamDefaultControllerError(this,e2)}[AbortSteps](reason){let result=this._abortAlgorithm(reason);return WritableStreamDefaultControllerClearAlgorithms(this),result}[ErrorSteps](){ResetQueue(this)}}Object.defineProperties(WritableStreamDefaultController.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function IsWritableStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledWritableStream")?!1:x2 instanceof WritableStreamDefaultController}function SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm){controller._controlledWritableStream=stream,stream._writableStreamController=controller,controller._queue=void 0,controller._queueTotalSize=void 0,ResetQueue(controller),controller._abortReason=void 0,controller._abortController=createAbortController(),controller._started=!1,controller._strategySizeAlgorithm=sizeAlgorithm,controller._strategyHWM=highWaterMark,controller._writeAlgorithm=writeAlgorithm,controller._closeAlgorithm=closeAlgorithm,controller._abortAlgorithm=abortAlgorithm;let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure);let startResult=startAlgorithm(),startPromise=promiseResolvedWith(startResult);uponPromise(startPromise,()=>{controller._started=!0,WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)},r2=>{controller._started=!0,WritableStreamDealWithRejection(stream,r2)})}function SetUpWritableStreamDefaultControllerFromUnderlyingSink(stream,underlyingSink,highWaterMark,sizeAlgorithm){let controller=Object.create(WritableStreamDefaultController.prototype),startAlgorithm=()=>{},writeAlgorithm=()=>promiseResolvedWith(void 0),closeAlgorithm=()=>promiseResolvedWith(void 0),abortAlgorithm=()=>promiseResolvedWith(void 0);underlyingSink.start!==void 0&&(startAlgorithm=()=>underlyingSink.start(controller)),underlyingSink.write!==void 0&&(writeAlgorithm=chunk=>underlyingSink.write(chunk,controller)),underlyingSink.close!==void 0&&(closeAlgorithm=()=>underlyingSink.close()),underlyingSink.abort!==void 0&&(abortAlgorithm=reason=>underlyingSink.abort(reason)),SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm)}function WritableStreamDefaultControllerClearAlgorithms(controller){controller._writeAlgorithm=void 0,controller._closeAlgorithm=void 0,controller._abortAlgorithm=void 0,controller._strategySizeAlgorithm=void 0}function WritableStreamDefaultControllerClose(controller){EnqueueValueWithSize(controller,closeSentinel,0),WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)}function WritableStreamDefaultControllerGetChunkSize(controller,chunk){try{return controller._strategySizeAlgorithm(chunk)}catch(chunkSizeE){return WritableStreamDefaultControllerErrorIfNeeded(controller,chunkSizeE),1}}function WritableStreamDefaultControllerGetDesiredSize(controller){return controller._strategyHWM-controller._queueTotalSize}function WritableStreamDefaultControllerWrite(controller,chunk,chunkSize){try{EnqueueValueWithSize(controller,chunk,chunkSize)}catch(enqueueE){WritableStreamDefaultControllerErrorIfNeeded(controller,enqueueE);return}let stream=controller._controlledWritableStream;if(!WritableStreamCloseQueuedOrInFlight(stream)&&stream._state==="writable"){let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure)}WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)}function WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller){let stream=controller._controlledWritableStream;if(!controller._started||stream._inFlightWriteRequest!==void 0)return;if(stream._state==="erroring"){WritableStreamFinishErroring(stream);return}if(controller._queue.length===0)return;let value=PeekQueueValue(controller);value===closeSentinel?WritableStreamDefaultControllerProcessClose(controller):WritableStreamDefaultControllerProcessWrite(controller,value)}function WritableStreamDefaultControllerErrorIfNeeded(controller,error){controller._controlledWritableStream._state==="writable"&&WritableStreamDefaultControllerError(controller,error)}function WritableStreamDefaultControllerProcessClose(controller){let stream=controller._controlledWritableStream;WritableStreamMarkCloseRequestInFlight(stream),DequeueValue(controller);let sinkClosePromise=controller._closeAlgorithm();WritableStreamDefaultControllerClearAlgorithms(controller),uponPromise(sinkClosePromise,()=>{WritableStreamFinishInFlightClose(stream)},reason=>{WritableStreamFinishInFlightCloseWithError(stream,reason)})}function WritableStreamDefaultControllerProcessWrite(controller,chunk){let stream=controller._controlledWritableStream;WritableStreamMarkFirstWriteRequestInFlight(stream);let sinkWritePromise=controller._writeAlgorithm(chunk);uponPromise(sinkWritePromise,()=>{WritableStreamFinishInFlightWrite(stream);let state=stream._state;if(DequeueValue(controller),!WritableStreamCloseQueuedOrInFlight(stream)&&state==="writable"){let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure)}WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)},reason=>{stream._state==="writable"&&WritableStreamDefaultControllerClearAlgorithms(controller),WritableStreamFinishInFlightWriteWithError(stream,reason)})}function WritableStreamDefaultControllerGetBackpressure(controller){return WritableStreamDefaultControllerGetDesiredSize(controller)<=0}function WritableStreamDefaultControllerError(controller,error){let stream=controller._controlledWritableStream;WritableStreamDefaultControllerClearAlgorithms(controller),WritableStreamStartErroring(stream,error)}function streamBrandCheckException$2(name){return new TypeError(`WritableStream.prototype.${name} can only be used on a WritableStream`)}function defaultControllerBrandCheckException$2(name){return new TypeError(`WritableStreamDefaultController.prototype.${name} can only be used on a WritableStreamDefaultController`)}function defaultWriterBrandCheckException(name){return new TypeError(`WritableStreamDefaultWriter.prototype.${name} can only be used on a WritableStreamDefaultWriter`)}function defaultWriterLockException(name){return new TypeError("Cannot "+name+" a stream using a released writer")}function defaultWriterClosedPromiseInitialize(writer){writer._closedPromise=newPromise((resolve,reject)=>{writer._closedPromise_resolve=resolve,writer._closedPromise_reject=reject,writer._closedPromiseState="pending"})}function defaultWriterClosedPromiseInitializeAsRejected(writer,reason){defaultWriterClosedPromiseInitialize(writer),defaultWriterClosedPromiseReject(writer,reason)}function defaultWriterClosedPromiseInitializeAsResolved(writer){defaultWriterClosedPromiseInitialize(writer),defaultWriterClosedPromiseResolve(writer)}function defaultWriterClosedPromiseReject(writer,reason){writer._closedPromise_reject!==void 0&&(setPromiseIsHandledToTrue(writer._closedPromise),writer._closedPromise_reject(reason),writer._closedPromise_resolve=void 0,writer._closedPromise_reject=void 0,writer._closedPromiseState="rejected")}function defaultWriterClosedPromiseResetToRejected(writer,reason){defaultWriterClosedPromiseInitializeAsRejected(writer,reason)}function defaultWriterClosedPromiseResolve(writer){writer._closedPromise_resolve!==void 0&&(writer._closedPromise_resolve(void 0),writer._closedPromise_resolve=void 0,writer._closedPromise_reject=void 0,writer._closedPromiseState="resolved")}function defaultWriterReadyPromiseInitialize(writer){writer._readyPromise=newPromise((resolve,reject)=>{writer._readyPromise_resolve=resolve,writer._readyPromise_reject=reject}),writer._readyPromiseState="pending"}function defaultWriterReadyPromiseInitializeAsRejected(writer,reason){defaultWriterReadyPromiseInitialize(writer),defaultWriterReadyPromiseReject(writer,reason)}function defaultWriterReadyPromiseInitializeAsResolved(writer){defaultWriterReadyPromiseInitialize(writer),defaultWriterReadyPromiseResolve(writer)}function defaultWriterReadyPromiseReject(writer,reason){writer._readyPromise_reject!==void 0&&(setPromiseIsHandledToTrue(writer._readyPromise),writer._readyPromise_reject(reason),writer._readyPromise_resolve=void 0,writer._readyPromise_reject=void 0,writer._readyPromiseState="rejected")}function defaultWriterReadyPromiseReset(writer){defaultWriterReadyPromiseInitialize(writer)}function defaultWriterReadyPromiseResetToRejected(writer,reason){defaultWriterReadyPromiseInitializeAsRejected(writer,reason)}function defaultWriterReadyPromiseResolve(writer){writer._readyPromise_resolve!==void 0&&(writer._readyPromise_resolve(void 0),writer._readyPromise_resolve=void 0,writer._readyPromise_reject=void 0,writer._readyPromiseState="fulfilled")}let NativeDOMException=typeof DOMException<"u"?DOMException:void 0;function isDOMExceptionConstructor(ctor){if(!(typeof ctor=="function"||typeof ctor=="object"))return!1;try{return new ctor,!0}catch{return!1}}function createDOMExceptionPolyfill(){let ctor=function(message,name){this.message=message||"",this.name=name||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return ctor.prototype=Object.create(Error.prototype),Object.defineProperty(ctor.prototype,"constructor",{value:ctor,writable:!0,configurable:!0}),ctor}let DOMException$1=isDOMExceptionConstructor(NativeDOMException)?NativeDOMException:createDOMExceptionPolyfill();function ReadableStreamPipeTo(source,dest,preventClose,preventAbort,preventCancel,signal){let reader=AcquireReadableStreamDefaultReader(source),writer=AcquireWritableStreamDefaultWriter(dest);source._disturbed=!0;let shuttingDown=!1,currentWrite=promiseResolvedWith(void 0);return newPromise((resolve,reject)=>{let abortAlgorithm;if(signal!==void 0){if(abortAlgorithm=()=>{let error=new DOMException$1("Aborted","AbortError"),actions=[];preventAbort||actions.push(()=>dest._state==="writable"?WritableStreamAbort(dest,error):promiseResolvedWith(void 0)),preventCancel||actions.push(()=>source._state==="readable"?ReadableStreamCancel(source,error):promiseResolvedWith(void 0)),shutdownWithAction(()=>Promise.all(actions.map(action=>action())),!0,error)},signal.aborted){abortAlgorithm();return}signal.addEventListener("abort",abortAlgorithm)}function pipeLoop(){return newPromise((resolveLoop,rejectLoop)=>{function next(done){done?resolveLoop():PerformPromiseThen(pipeStep(),next,rejectLoop)}next(!1)})}function pipeStep(){return shuttingDown?promiseResolvedWith(!0):PerformPromiseThen(writer._readyPromise,()=>newPromise((resolveRead,rejectRead)=>{ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{currentWrite=PerformPromiseThen(WritableStreamDefaultWriterWrite(writer,chunk),void 0,noop2),resolveRead(!1)},_closeSteps:()=>resolveRead(!0),_errorSteps:rejectRead})}))}if(isOrBecomesErrored(source,reader._closedPromise,storedError=>{preventAbort?shutdown(!0,storedError):shutdownWithAction(()=>WritableStreamAbort(dest,storedError),!0,storedError)}),isOrBecomesErrored(dest,writer._closedPromise,storedError=>{preventCancel?shutdown(!0,storedError):shutdownWithAction(()=>ReadableStreamCancel(source,storedError),!0,storedError)}),isOrBecomesClosed(source,reader._closedPromise,()=>{preventClose?shutdown():shutdownWithAction(()=>WritableStreamDefaultWriterCloseWithErrorPropagation(writer))}),WritableStreamCloseQueuedOrInFlight(dest)||dest._state==="closed"){let destClosed=new TypeError("the destination writable stream closed before all data could be piped to it");preventCancel?shutdown(!0,destClosed):shutdownWithAction(()=>ReadableStreamCancel(source,destClosed),!0,destClosed)}setPromiseIsHandledToTrue(pipeLoop());function waitForWritesToFinish(){let oldCurrentWrite=currentWrite;return PerformPromiseThen(currentWrite,()=>oldCurrentWrite!==currentWrite?waitForWritesToFinish():void 0)}function isOrBecomesErrored(stream,promise,action){stream._state==="errored"?action(stream._storedError):uponRejection(promise,action)}function isOrBecomesClosed(stream,promise,action){stream._state==="closed"?action():uponFulfillment(promise,action)}function shutdownWithAction(action,originalIsError,originalError){if(shuttingDown)return;shuttingDown=!0,dest._state==="writable"&&!WritableStreamCloseQueuedOrInFlight(dest)?uponFulfillment(waitForWritesToFinish(),doTheRest):doTheRest();function doTheRest(){uponPromise(action(),()=>finalize(originalIsError,originalError),newError=>finalize(!0,newError))}}function shutdown(isError,error){shuttingDown||(shuttingDown=!0,dest._state==="writable"&&!WritableStreamCloseQueuedOrInFlight(dest)?uponFulfillment(waitForWritesToFinish(),()=>finalize(isError,error)):finalize(isError,error))}function finalize(isError,error){WritableStreamDefaultWriterRelease(writer),ReadableStreamReaderGenericRelease(reader),signal!==void 0&&signal.removeEventListener("abort",abortAlgorithm),isError?reject(error):resolve(void 0)}})}class ReadableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("desiredSize");return ReadableStreamDefaultControllerGetDesiredSize(this)}close(){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("close");if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(this))throw new TypeError("The stream is not in a state that permits close");ReadableStreamDefaultControllerClose(this)}enqueue(chunk=void 0){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("enqueue");if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(this))throw new TypeError("The stream is not in a state that permits enqueue");return ReadableStreamDefaultControllerEnqueue(this,chunk)}error(e2=void 0){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("error");ReadableStreamDefaultControllerError(this,e2)}[CancelSteps](reason){ResetQueue(this);let result=this._cancelAlgorithm(reason);return ReadableStreamDefaultControllerClearAlgorithms(this),result}[PullSteps](readRequest){let stream=this._controlledReadableStream;if(this._queue.length>0){let chunk=DequeueValue(this);this._closeRequested&&this._queue.length===0?(ReadableStreamDefaultControllerClearAlgorithms(this),ReadableStreamClose(stream)):ReadableStreamDefaultControllerCallPullIfNeeded(this),readRequest._chunkSteps(chunk)}else ReadableStreamAddReadRequest(stream,readRequest),ReadableStreamDefaultControllerCallPullIfNeeded(this)}}Object.defineProperties(ReadableStreamDefaultController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function IsReadableStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledReadableStream")?!1:x2 instanceof ReadableStreamDefaultController}function ReadableStreamDefaultControllerCallPullIfNeeded(controller){if(!ReadableStreamDefaultControllerShouldCallPull(controller))return;if(controller._pulling){controller._pullAgain=!0;return}controller._pulling=!0;let pullPromise=controller._pullAlgorithm();uponPromise(pullPromise,()=>{controller._pulling=!1,controller._pullAgain&&(controller._pullAgain=!1,ReadableStreamDefaultControllerCallPullIfNeeded(controller))},e2=>{ReadableStreamDefaultControllerError(controller,e2)})}function ReadableStreamDefaultControllerShouldCallPull(controller){let stream=controller._controlledReadableStream;return!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)||!controller._started?!1:!!(IsReadableStreamLocked(stream)&&ReadableStreamGetNumReadRequests(stream)>0||ReadableStreamDefaultControllerGetDesiredSize(controller)>0)}function ReadableStreamDefaultControllerClearAlgorithms(controller){controller._pullAlgorithm=void 0,controller._cancelAlgorithm=void 0,controller._strategySizeAlgorithm=void 0}function ReadableStreamDefaultControllerClose(controller){if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller))return;let stream=controller._controlledReadableStream;controller._closeRequested=!0,controller._queue.length===0&&(ReadableStreamDefaultControllerClearAlgorithms(controller),ReadableStreamClose(stream))}function ReadableStreamDefaultControllerEnqueue(controller,chunk){if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller))return;let stream=controller._controlledReadableStream;if(IsReadableStreamLocked(stream)&&ReadableStreamGetNumReadRequests(stream)>0)ReadableStreamFulfillReadRequest(stream,chunk,!1);else{let chunkSize;try{chunkSize=controller._strategySizeAlgorithm(chunk)}catch(chunkSizeE){throw ReadableStreamDefaultControllerError(controller,chunkSizeE),chunkSizeE}try{EnqueueValueWithSize(controller,chunk,chunkSize)}catch(enqueueE){throw ReadableStreamDefaultControllerError(controller,enqueueE),enqueueE}}ReadableStreamDefaultControllerCallPullIfNeeded(controller)}function ReadableStreamDefaultControllerError(controller,e2){let stream=controller._controlledReadableStream;stream._state==="readable"&&(ResetQueue(controller),ReadableStreamDefaultControllerClearAlgorithms(controller),ReadableStreamError(stream,e2))}function ReadableStreamDefaultControllerGetDesiredSize(controller){let state=controller._controlledReadableStream._state;return state==="errored"?null:state==="closed"?0:controller._strategyHWM-controller._queueTotalSize}function ReadableStreamDefaultControllerHasBackpressure(controller){return!ReadableStreamDefaultControllerShouldCallPull(controller)}function ReadableStreamDefaultControllerCanCloseOrEnqueue(controller){let state=controller._controlledReadableStream._state;return!controller._closeRequested&&state==="readable"}function SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm){controller._controlledReadableStream=stream,controller._queue=void 0,controller._queueTotalSize=void 0,ResetQueue(controller),controller._started=!1,controller._closeRequested=!1,controller._pullAgain=!1,controller._pulling=!1,controller._strategySizeAlgorithm=sizeAlgorithm,controller._strategyHWM=highWaterMark,controller._pullAlgorithm=pullAlgorithm,controller._cancelAlgorithm=cancelAlgorithm,stream._readableStreamController=controller;let startResult=startAlgorithm();uponPromise(promiseResolvedWith(startResult),()=>{controller._started=!0,ReadableStreamDefaultControllerCallPullIfNeeded(controller)},r2=>{ReadableStreamDefaultControllerError(controller,r2)})}function SetUpReadableStreamDefaultControllerFromUnderlyingSource(stream,underlyingSource,highWaterMark,sizeAlgorithm){let controller=Object.create(ReadableStreamDefaultController.prototype),startAlgorithm=()=>{},pullAlgorithm=()=>promiseResolvedWith(void 0),cancelAlgorithm=()=>promiseResolvedWith(void 0);underlyingSource.start!==void 0&&(startAlgorithm=()=>underlyingSource.start(controller)),underlyingSource.pull!==void 0&&(pullAlgorithm=()=>underlyingSource.pull(controller)),underlyingSource.cancel!==void 0&&(cancelAlgorithm=reason=>underlyingSource.cancel(reason)),SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm)}function defaultControllerBrandCheckException$1(name){return new TypeError(`ReadableStreamDefaultController.prototype.${name} can only be used on a ReadableStreamDefaultController`)}function ReadableStreamTee(stream,cloneForBranch2){return IsReadableByteStreamController(stream._readableStreamController)?ReadableByteStreamTee(stream):ReadableStreamDefaultTee(stream)}function ReadableStreamDefaultTee(stream,cloneForBranch2){let reader=AcquireReadableStreamDefaultReader(stream),reading=!1,readAgain=!1,canceled1=!1,canceled2=!1,reason1,reason2,branch1,branch2,resolveCancelPromise,cancelPromise=newPromise(resolve=>{resolveCancelPromise=resolve});function pullAlgorithm(){return reading?(readAgain=!0,promiseResolvedWith(void 0)):(reading=!0,ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgain=!1;let chunk1=chunk,chunk2=chunk;canceled1||ReadableStreamDefaultControllerEnqueue(branch1._readableStreamController,chunk1),canceled2||ReadableStreamDefaultControllerEnqueue(branch2._readableStreamController,chunk2),reading=!1,readAgain&&pullAlgorithm()})},_closeSteps:()=>{reading=!1,canceled1||ReadableStreamDefaultControllerClose(branch1._readableStreamController),canceled2||ReadableStreamDefaultControllerClose(branch2._readableStreamController),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}}),promiseResolvedWith(void 0))}function cancel1Algorithm(reason){if(canceled1=!0,reason1=reason,canceled2){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function cancel2Algorithm(reason){if(canceled2=!0,reason2=reason,canceled1){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function startAlgorithm(){}return branch1=CreateReadableStream(startAlgorithm,pullAlgorithm,cancel1Algorithm),branch2=CreateReadableStream(startAlgorithm,pullAlgorithm,cancel2Algorithm),uponRejection(reader._closedPromise,r2=>{ReadableStreamDefaultControllerError(branch1._readableStreamController,r2),ReadableStreamDefaultControllerError(branch2._readableStreamController,r2),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)}),[branch1,branch2]}function ReadableByteStreamTee(stream){let reader=AcquireReadableStreamDefaultReader(stream),reading=!1,readAgainForBranch1=!1,readAgainForBranch2=!1,canceled1=!1,canceled2=!1,reason1,reason2,branch1,branch2,resolveCancelPromise,cancelPromise=newPromise(resolve=>{resolveCancelPromise=resolve});function forwardReaderError(thisReader){uponRejection(thisReader._closedPromise,r2=>{thisReader===reader&&(ReadableByteStreamControllerError(branch1._readableStreamController,r2),ReadableByteStreamControllerError(branch2._readableStreamController,r2),(!canceled1||!canceled2)&&resolveCancelPromise(void 0))})}function pullWithDefaultReader(){IsReadableStreamBYOBReader(reader)&&(ReadableStreamReaderGenericRelease(reader),reader=AcquireReadableStreamDefaultReader(stream),forwardReaderError(reader)),ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgainForBranch1=!1,readAgainForBranch2=!1;let chunk1=chunk,chunk2=chunk;if(!canceled1&&!canceled2)try{chunk2=CloneAsUint8Array(chunk)}catch(cloneE){ReadableByteStreamControllerError(branch1._readableStreamController,cloneE),ReadableByteStreamControllerError(branch2._readableStreamController,cloneE),resolveCancelPromise(ReadableStreamCancel(stream,cloneE));return}canceled1||ReadableByteStreamControllerEnqueue(branch1._readableStreamController,chunk1),canceled2||ReadableByteStreamControllerEnqueue(branch2._readableStreamController,chunk2),reading=!1,readAgainForBranch1?pull1Algorithm():readAgainForBranch2&&pull2Algorithm()})},_closeSteps:()=>{reading=!1,canceled1||ReadableByteStreamControllerClose(branch1._readableStreamController),canceled2||ReadableByteStreamControllerClose(branch2._readableStreamController),branch1._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(branch1._readableStreamController,0),branch2._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(branch2._readableStreamController,0),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}})}function pullWithBYOBReader(view,forBranch2){IsReadableStreamDefaultReader(reader)&&(ReadableStreamReaderGenericRelease(reader),reader=AcquireReadableStreamBYOBReader(stream),forwardReaderError(reader));let byobBranch=forBranch2?branch2:branch1,otherBranch=forBranch2?branch1:branch2;ReadableStreamBYOBReaderRead(reader,view,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgainForBranch1=!1,readAgainForBranch2=!1;let byobCanceled=forBranch2?canceled2:canceled1;if(forBranch2?canceled1:canceled2)byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk);else{let clonedChunk;try{clonedChunk=CloneAsUint8Array(chunk)}catch(cloneE){ReadableByteStreamControllerError(byobBranch._readableStreamController,cloneE),ReadableByteStreamControllerError(otherBranch._readableStreamController,cloneE),resolveCancelPromise(ReadableStreamCancel(stream,cloneE));return}byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk),ReadableByteStreamControllerEnqueue(otherBranch._readableStreamController,clonedChunk)}reading=!1,readAgainForBranch1?pull1Algorithm():readAgainForBranch2&&pull2Algorithm()})},_closeSteps:chunk=>{reading=!1;let byobCanceled=forBranch2?canceled2:canceled1,otherCanceled=forBranch2?canceled1:canceled2;byobCanceled||ReadableByteStreamControllerClose(byobBranch._readableStreamController),otherCanceled||ReadableByteStreamControllerClose(otherBranch._readableStreamController),chunk!==void 0&&(byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk),!otherCanceled&&otherBranch._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(otherBranch._readableStreamController,0)),(!byobCanceled||!otherCanceled)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}})}function pull1Algorithm(){if(reading)return readAgainForBranch1=!0,promiseResolvedWith(void 0);reading=!0;let byobRequest=ReadableByteStreamControllerGetBYOBRequest(branch1._readableStreamController);return byobRequest===null?pullWithDefaultReader():pullWithBYOBReader(byobRequest._view,!1),promiseResolvedWith(void 0)}function pull2Algorithm(){if(reading)return readAgainForBranch2=!0,promiseResolvedWith(void 0);reading=!0;let byobRequest=ReadableByteStreamControllerGetBYOBRequest(branch2._readableStreamController);return byobRequest===null?pullWithDefaultReader():pullWithBYOBReader(byobRequest._view,!0),promiseResolvedWith(void 0)}function cancel1Algorithm(reason){if(canceled1=!0,reason1=reason,canceled2){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function cancel2Algorithm(reason){if(canceled2=!0,reason2=reason,canceled1){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function startAlgorithm(){}return branch1=CreateReadableByteStream(startAlgorithm,pull1Algorithm,cancel1Algorithm),branch2=CreateReadableByteStream(startAlgorithm,pull2Algorithm,cancel2Algorithm),forwardReaderError(reader),[branch1,branch2]}function convertUnderlyingDefaultOrByteSource(source,context){assertDictionary(source,context);let original=source,autoAllocateChunkSize=original==null?void 0:original.autoAllocateChunkSize,cancel=original==null?void 0:original.cancel,pull=original==null?void 0:original.pull,start=original==null?void 0:original.start,type=original==null?void 0:original.type;return{autoAllocateChunkSize:autoAllocateChunkSize===void 0?void 0:convertUnsignedLongLongWithEnforceRange(autoAllocateChunkSize,`${context} has member 'autoAllocateChunkSize' that`),cancel:cancel===void 0?void 0:convertUnderlyingSourceCancelCallback(cancel,original,`${context} has member 'cancel' that`),pull:pull===void 0?void 0:convertUnderlyingSourcePullCallback(pull,original,`${context} has member 'pull' that`),start:start===void 0?void 0:convertUnderlyingSourceStartCallback(start,original,`${context} has member 'start' that`),type:type===void 0?void 0:convertReadableStreamType(type,`${context} has member 'type' that`)}}function convertUnderlyingSourceCancelCallback(fn,original,context){return assertFunction(fn,context),reason=>promiseCall(fn,original,[reason])}function convertUnderlyingSourcePullCallback(fn,original,context){return assertFunction(fn,context),controller=>promiseCall(fn,original,[controller])}function convertUnderlyingSourceStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertReadableStreamType(type,context){if(type=`${type}`,type!=="bytes")throw new TypeError(`${context} '${type}' is not a valid enumeration value for ReadableStreamType`);return type}function convertReaderOptions(options,context){assertDictionary(options,context);let mode=options==null?void 0:options.mode;return{mode:mode===void 0?void 0:convertReadableStreamReaderMode(mode,`${context} has member 'mode' that`)}}function convertReadableStreamReaderMode(mode,context){if(mode=`${mode}`,mode!=="byob")throw new TypeError(`${context} '${mode}' is not a valid enumeration value for ReadableStreamReaderMode`);return mode}function convertIteratorOptions(options,context){return assertDictionary(options,context),{preventCancel:!!(options==null?void 0:options.preventCancel)}}function convertPipeOptions(options,context){assertDictionary(options,context);let preventAbort=options==null?void 0:options.preventAbort,preventCancel=options==null?void 0:options.preventCancel,preventClose=options==null?void 0:options.preventClose,signal=options==null?void 0:options.signal;return signal!==void 0&&assertAbortSignal(signal,`${context} has member 'signal' that`),{preventAbort:!!preventAbort,preventCancel:!!preventCancel,preventClose:!!preventClose,signal}}function assertAbortSignal(signal,context){if(!isAbortSignal2(signal))throw new TypeError(`${context} is not an AbortSignal.`)}function convertReadableWritablePair(pair,context){assertDictionary(pair,context);let readable=pair==null?void 0:pair.readable;assertRequiredField(readable,"readable","ReadableWritablePair"),assertReadableStream(readable,`${context} has member 'readable' that`);let writable=pair==null?void 0:pair.writable;return assertRequiredField(writable,"writable","ReadableWritablePair"),assertWritableStream(writable,`${context} has member 'writable' that`),{readable,writable}}class ReadableStream2{constructor(rawUnderlyingSource={},rawStrategy={}){rawUnderlyingSource===void 0?rawUnderlyingSource=null:assertObject(rawUnderlyingSource,"First parameter");let strategy=convertQueuingStrategy(rawStrategy,"Second parameter"),underlyingSource=convertUnderlyingDefaultOrByteSource(rawUnderlyingSource,"First parameter");if(InitializeReadableStream(this),underlyingSource.type==="bytes"){if(strategy.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let highWaterMark=ExtractHighWaterMark(strategy,0);SetUpReadableByteStreamControllerFromUnderlyingSource(this,underlyingSource,highWaterMark)}else{let sizeAlgorithm=ExtractSizeAlgorithm(strategy),highWaterMark=ExtractHighWaterMark(strategy,1);SetUpReadableStreamDefaultControllerFromUnderlyingSource(this,underlyingSource,highWaterMark,sizeAlgorithm)}}get locked(){if(!IsReadableStream(this))throw streamBrandCheckException$1("locked");return IsReadableStreamLocked(this)}cancel(reason=void 0){return IsReadableStream(this)?IsReadableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot cancel a stream that already has a reader")):ReadableStreamCancel(this,reason):promiseRejectedWith(streamBrandCheckException$1("cancel"))}getReader(rawOptions=void 0){if(!IsReadableStream(this))throw streamBrandCheckException$1("getReader");return convertReaderOptions(rawOptions,"First parameter").mode===void 0?AcquireReadableStreamDefaultReader(this):AcquireReadableStreamBYOBReader(this)}pipeThrough(rawTransform,rawOptions={}){if(!IsReadableStream(this))throw streamBrandCheckException$1("pipeThrough");assertRequiredArgument(rawTransform,1,"pipeThrough");let transform=convertReadableWritablePair(rawTransform,"First parameter"),options=convertPipeOptions(rawOptions,"Second parameter");if(IsReadableStreamLocked(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(IsWritableStreamLocked(transform.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let promise=ReadableStreamPipeTo(this,transform.writable,options.preventClose,options.preventAbort,options.preventCancel,options.signal);return setPromiseIsHandledToTrue(promise),transform.readable}pipeTo(destination,rawOptions={}){if(!IsReadableStream(this))return promiseRejectedWith(streamBrandCheckException$1("pipeTo"));if(destination===void 0)return promiseRejectedWith("Parameter 1 is required in 'pipeTo'.");if(!IsWritableStream(destination))return promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let options;try{options=convertPipeOptions(rawOptions,"Second parameter")}catch(e2){return promiseRejectedWith(e2)}return IsReadableStreamLocked(this)?promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):IsWritableStreamLocked(destination)?promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):ReadableStreamPipeTo(this,destination,options.preventClose,options.preventAbort,options.preventCancel,options.signal)}tee(){if(!IsReadableStream(this))throw streamBrandCheckException$1("tee");let branches=ReadableStreamTee(this);return CreateArrayFromList(branches)}values(rawOptions=void 0){if(!IsReadableStream(this))throw streamBrandCheckException$1("values");let options=convertIteratorOptions(rawOptions,"First parameter");return AcquireReadableStreamAsyncIterator(this,options.preventCancel)}}Object.defineProperties(ReadableStream2.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStream2.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStream",configurable:!0}),typeof SymbolPolyfill.asyncIterator=="symbol"&&Object.defineProperty(ReadableStream2.prototype,SymbolPolyfill.asyncIterator,{value:ReadableStream2.prototype.values,writable:!0,configurable:!0});function CreateReadableStream(startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark=1,sizeAlgorithm=()=>1){let stream=Object.create(ReadableStream2.prototype);InitializeReadableStream(stream);let controller=Object.create(ReadableStreamDefaultController.prototype);return SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm),stream}function CreateReadableByteStream(startAlgorithm,pullAlgorithm,cancelAlgorithm){let stream=Object.create(ReadableStream2.prototype);InitializeReadableStream(stream);let controller=Object.create(ReadableByteStreamController.prototype);return SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,0,void 0),stream}function InitializeReadableStream(stream){stream._state="readable",stream._reader=void 0,stream._storedError=void 0,stream._disturbed=!1}function IsReadableStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readableStreamController")?!1:x2 instanceof ReadableStream2}function IsReadableStreamLocked(stream){return stream._reader!==void 0}function ReadableStreamCancel(stream,reason){if(stream._disturbed=!0,stream._state==="closed")return promiseResolvedWith(void 0);if(stream._state==="errored")return promiseRejectedWith(stream._storedError);ReadableStreamClose(stream);let reader=stream._reader;reader!==void 0&&IsReadableStreamBYOBReader(reader)&&(reader._readIntoRequests.forEach(readIntoRequest=>{readIntoRequest._closeSteps(void 0)}),reader._readIntoRequests=new SimpleQueue);let sourceCancelPromise=stream._readableStreamController[CancelSteps](reason);return transformPromiseWith(sourceCancelPromise,noop2)}function ReadableStreamClose(stream){stream._state="closed";let reader=stream._reader;reader!==void 0&&(defaultReaderClosedPromiseResolve(reader),IsReadableStreamDefaultReader(reader)&&(reader._readRequests.forEach(readRequest=>{readRequest._closeSteps()}),reader._readRequests=new SimpleQueue))}function ReadableStreamError(stream,e2){stream._state="errored",stream._storedError=e2;let reader=stream._reader;reader!==void 0&&(defaultReaderClosedPromiseReject(reader,e2),IsReadableStreamDefaultReader(reader)?(reader._readRequests.forEach(readRequest=>{readRequest._errorSteps(e2)}),reader._readRequests=new SimpleQueue):(reader._readIntoRequests.forEach(readIntoRequest=>{readIntoRequest._errorSteps(e2)}),reader._readIntoRequests=new SimpleQueue))}function streamBrandCheckException$1(name){return new TypeError(`ReadableStream.prototype.${name} can only be used on a ReadableStream`)}function convertQueuingStrategyInit(init,context){assertDictionary(init,context);let highWaterMark=init==null?void 0:init.highWaterMark;return assertRequiredField(highWaterMark,"highWaterMark","QueuingStrategyInit"),{highWaterMark:convertUnrestrictedDouble(highWaterMark)}}let byteLengthSizeFunction=chunk=>chunk.byteLength;try{Object.defineProperty(byteLengthSizeFunction,"name",{value:"size",configurable:!0})}catch{}class ByteLengthQueuingStrategy{constructor(options){assertRequiredArgument(options,1,"ByteLengthQueuingStrategy"),options=convertQueuingStrategyInit(options,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=options.highWaterMark}get highWaterMark(){if(!IsByteLengthQueuingStrategy(this))throw byteLengthBrandCheckException("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!IsByteLengthQueuingStrategy(this))throw byteLengthBrandCheckException("size");return byteLengthSizeFunction}}Object.defineProperties(ByteLengthQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ByteLengthQueuingStrategy.prototype,SymbolPolyfill.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function byteLengthBrandCheckException(name){return new TypeError(`ByteLengthQueuingStrategy.prototype.${name} can only be used on a ByteLengthQueuingStrategy`)}function IsByteLengthQueuingStrategy(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_byteLengthQueuingStrategyHighWaterMark")?!1:x2 instanceof ByteLengthQueuingStrategy}let countSizeFunction=()=>1;try{Object.defineProperty(countSizeFunction,"name",{value:"size",configurable:!0})}catch{}class CountQueuingStrategy{constructor(options){assertRequiredArgument(options,1,"CountQueuingStrategy"),options=convertQueuingStrategyInit(options,"First parameter"),this._countQueuingStrategyHighWaterMark=options.highWaterMark}get highWaterMark(){if(!IsCountQueuingStrategy(this))throw countBrandCheckException("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!IsCountQueuingStrategy(this))throw countBrandCheckException("size");return countSizeFunction}}Object.defineProperties(CountQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(CountQueuingStrategy.prototype,SymbolPolyfill.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function countBrandCheckException(name){return new TypeError(`CountQueuingStrategy.prototype.${name} can only be used on a CountQueuingStrategy`)}function IsCountQueuingStrategy(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_countQueuingStrategyHighWaterMark")?!1:x2 instanceof CountQueuingStrategy}function convertTransformer(original,context){assertDictionary(original,context);let flush=original==null?void 0:original.flush,readableType=original==null?void 0:original.readableType,start=original==null?void 0:original.start,transform=original==null?void 0:original.transform,writableType=original==null?void 0:original.writableType;return{flush:flush===void 0?void 0:convertTransformerFlushCallback(flush,original,`${context} has member 'flush' that`),readableType,start:start===void 0?void 0:convertTransformerStartCallback(start,original,`${context} has member 'start' that`),transform:transform===void 0?void 0:convertTransformerTransformCallback(transform,original,`${context} has member 'transform' that`),writableType}}function convertTransformerFlushCallback(fn,original,context){return assertFunction(fn,context),controller=>promiseCall(fn,original,[controller])}function convertTransformerStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertTransformerTransformCallback(fn,original,context){return assertFunction(fn,context),(chunk,controller)=>promiseCall(fn,original,[chunk,controller])}class TransformStream{constructor(rawTransformer={},rawWritableStrategy={},rawReadableStrategy={}){rawTransformer===void 0&&(rawTransformer=null);let writableStrategy=convertQueuingStrategy(rawWritableStrategy,"Second parameter"),readableStrategy=convertQueuingStrategy(rawReadableStrategy,"Third parameter"),transformer=convertTransformer(rawTransformer,"First parameter");if(transformer.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(transformer.writableType!==void 0)throw new RangeError("Invalid writableType specified");let readableHighWaterMark=ExtractHighWaterMark(readableStrategy,0),readableSizeAlgorithm=ExtractSizeAlgorithm(readableStrategy),writableHighWaterMark=ExtractHighWaterMark(writableStrategy,1),writableSizeAlgorithm=ExtractSizeAlgorithm(writableStrategy),startPromise_resolve,startPromise=newPromise(resolve=>{startPromise_resolve=resolve});InitializeTransformStream(this,startPromise,writableHighWaterMark,writableSizeAlgorithm,readableHighWaterMark,readableSizeAlgorithm),SetUpTransformStreamDefaultControllerFromTransformer(this,transformer),transformer.start!==void 0?startPromise_resolve(transformer.start(this._transformStreamController)):startPromise_resolve(void 0)}get readable(){if(!IsTransformStream(this))throw streamBrandCheckException("readable");return this._readable}get writable(){if(!IsTransformStream(this))throw streamBrandCheckException("writable");return this._writable}}Object.defineProperties(TransformStream.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(TransformStream.prototype,SymbolPolyfill.toStringTag,{value:"TransformStream",configurable:!0});function InitializeTransformStream(stream,startPromise,writableHighWaterMark,writableSizeAlgorithm,readableHighWaterMark,readableSizeAlgorithm){function startAlgorithm(){return startPromise}function writeAlgorithm(chunk){return TransformStreamDefaultSinkWriteAlgorithm(stream,chunk)}function abortAlgorithm(reason){return TransformStreamDefaultSinkAbortAlgorithm(stream,reason)}function closeAlgorithm(){return TransformStreamDefaultSinkCloseAlgorithm(stream)}stream._writable=CreateWritableStream(startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,writableHighWaterMark,writableSizeAlgorithm);function pullAlgorithm(){return TransformStreamDefaultSourcePullAlgorithm(stream)}function cancelAlgorithm(reason){return TransformStreamErrorWritableAndUnblockWrite(stream,reason),promiseResolvedWith(void 0)}stream._readable=CreateReadableStream(startAlgorithm,pullAlgorithm,cancelAlgorithm,readableHighWaterMark,readableSizeAlgorithm),stream._backpressure=void 0,stream._backpressureChangePromise=void 0,stream._backpressureChangePromise_resolve=void 0,TransformStreamSetBackpressure(stream,!0),stream._transformStreamController=void 0}function IsTransformStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_transformStreamController")?!1:x2 instanceof TransformStream}function TransformStreamError(stream,e2){ReadableStreamDefaultControllerError(stream._readable._readableStreamController,e2),TransformStreamErrorWritableAndUnblockWrite(stream,e2)}function TransformStreamErrorWritableAndUnblockWrite(stream,e2){TransformStreamDefaultControllerClearAlgorithms(stream._transformStreamController),WritableStreamDefaultControllerErrorIfNeeded(stream._writable._writableStreamController,e2),stream._backpressure&&TransformStreamSetBackpressure(stream,!1)}function TransformStreamSetBackpressure(stream,backpressure){stream._backpressureChangePromise!==void 0&&stream._backpressureChangePromise_resolve(),stream._backpressureChangePromise=newPromise(resolve=>{stream._backpressureChangePromise_resolve=resolve}),stream._backpressure=backpressure}class TransformStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("desiredSize");let readableController=this._controlledTransformStream._readable._readableStreamController;return ReadableStreamDefaultControllerGetDesiredSize(readableController)}enqueue(chunk=void 0){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("enqueue");TransformStreamDefaultControllerEnqueue(this,chunk)}error(reason=void 0){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("error");TransformStreamDefaultControllerError(this,reason)}terminate(){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("terminate");TransformStreamDefaultControllerTerminate(this)}}Object.defineProperties(TransformStreamDefaultController.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(TransformStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function IsTransformStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledTransformStream")?!1:x2 instanceof TransformStreamDefaultController}function SetUpTransformStreamDefaultController(stream,controller,transformAlgorithm,flushAlgorithm){controller._controlledTransformStream=stream,stream._transformStreamController=controller,controller._transformAlgorithm=transformAlgorithm,controller._flushAlgorithm=flushAlgorithm}function SetUpTransformStreamDefaultControllerFromTransformer(stream,transformer){let controller=Object.create(TransformStreamDefaultController.prototype),transformAlgorithm=chunk=>{try{return TransformStreamDefaultControllerEnqueue(controller,chunk),promiseResolvedWith(void 0)}catch(transformResultE){return promiseRejectedWith(transformResultE)}},flushAlgorithm=()=>promiseResolvedWith(void 0);transformer.transform!==void 0&&(transformAlgorithm=chunk=>transformer.transform(chunk,controller)),transformer.flush!==void 0&&(flushAlgorithm=()=>transformer.flush(controller)),SetUpTransformStreamDefaultController(stream,controller,transformAlgorithm,flushAlgorithm)}function TransformStreamDefaultControllerClearAlgorithms(controller){controller._transformAlgorithm=void 0,controller._flushAlgorithm=void 0}function TransformStreamDefaultControllerEnqueue(controller,chunk){let stream=controller._controlledTransformStream,readableController=stream._readable._readableStreamController;if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(readableController))throw new TypeError("Readable side is not in a state that permits enqueue");try{ReadableStreamDefaultControllerEnqueue(readableController,chunk)}catch(e2){throw TransformStreamErrorWritableAndUnblockWrite(stream,e2),stream._readable._storedError}ReadableStreamDefaultControllerHasBackpressure(readableController)!==stream._backpressure&&TransformStreamSetBackpressure(stream,!0)}function TransformStreamDefaultControllerError(controller,e2){TransformStreamError(controller._controlledTransformStream,e2)}function TransformStreamDefaultControllerPerformTransform(controller,chunk){let transformPromise=controller._transformAlgorithm(chunk);return transformPromiseWith(transformPromise,void 0,r2=>{throw TransformStreamError(controller._controlledTransformStream,r2),r2})}function TransformStreamDefaultControllerTerminate(controller){let stream=controller._controlledTransformStream,readableController=stream._readable._readableStreamController;ReadableStreamDefaultControllerClose(readableController);let error=new TypeError("TransformStream terminated");TransformStreamErrorWritableAndUnblockWrite(stream,error)}function TransformStreamDefaultSinkWriteAlgorithm(stream,chunk){let controller=stream._transformStreamController;if(stream._backpressure){let backpressureChangePromise=stream._backpressureChangePromise;return transformPromiseWith(backpressureChangePromise,()=>{let writable=stream._writable;if(writable._state==="erroring")throw writable._storedError;return TransformStreamDefaultControllerPerformTransform(controller,chunk)})}return TransformStreamDefaultControllerPerformTransform(controller,chunk)}function TransformStreamDefaultSinkAbortAlgorithm(stream,reason){return TransformStreamError(stream,reason),promiseResolvedWith(void 0)}function TransformStreamDefaultSinkCloseAlgorithm(stream){let readable=stream._readable,controller=stream._transformStreamController,flushPromise=controller._flushAlgorithm();return TransformStreamDefaultControllerClearAlgorithms(controller),transformPromiseWith(flushPromise,()=>{if(readable._state==="errored")throw readable._storedError;ReadableStreamDefaultControllerClose(readable._readableStreamController)},r2=>{throw TransformStreamError(stream,r2),readable._storedError})}function TransformStreamDefaultSourcePullAlgorithm(stream){return TransformStreamSetBackpressure(stream,!1),stream._backpressureChangePromise}function defaultControllerBrandCheckException(name){return new TypeError(`TransformStreamDefaultController.prototype.${name} can only be used on a TransformStreamDefaultController`)}function streamBrandCheckException(name){return new TypeError(`TransformStream.prototype.${name} can only be used on a TransformStream`)}exports2.ByteLengthQueuingStrategy=ByteLengthQueuingStrategy,exports2.CountQueuingStrategy=CountQueuingStrategy,exports2.ReadableByteStreamController=ReadableByteStreamController,exports2.ReadableStream=ReadableStream2,exports2.ReadableStreamBYOBReader=ReadableStreamBYOBReader,exports2.ReadableStreamBYOBRequest=ReadableStreamBYOBRequest,exports2.ReadableStreamDefaultController=ReadableStreamDefaultController,exports2.ReadableStreamDefaultReader=ReadableStreamDefaultReader,exports2.TransformStream=TransformStream,exports2.TransformStreamDefaultController=TransformStreamDefaultController,exports2.WritableStream=WritableStream,exports2.WritableStreamDefaultController=WritableStreamDefaultController,exports2.WritableStreamDefaultWriter=WritableStreamDefaultWriter,Object.defineProperty(exports2,"__esModule",{value:!0})})}});var require_streams=__commonJS({"../../node_modules/fetch-blob/streams.cjs"(){"use strict";if(!globalThis.ReadableStream)try{let process2=require("process"),{emitWarning}=process2;try{process2.emitWarning=()=>{},Object.assign(globalThis,require("stream/web")),process2.emitWarning=emitWarning}catch(error){throw process2.emitWarning=emitWarning,error}}catch{Object.assign(globalThis,require_ponyfill_es2018())}try{let{Blob:Blob3}=require("buffer");Blob3&&!Blob3.prototype.stream&&(Blob3.prototype.stream=function(params){let position=0,blob=this;return new ReadableStream({type:"bytes",async pull(ctrl){let buffer=await blob.slice(position,Math.min(blob.size,position+65536)).arrayBuffer();position+=buffer.byteLength,ctrl.enqueue(new Uint8Array(buffer)),position===blob.size&&ctrl.close()}})})}catch{}}});async function*toIterator(parts,clone2=!0){for(let part of parts)if("stream"in part)yield*part.stream();else if(ArrayBuffer.isView(part))if(clone2){let position=part.byteOffset,end=part.byteOffset+part.byteLength;for(;position!==end;){let size=Math.min(end-position,POOL_SIZE),chunk=part.buffer.slice(position,position+size);position+=chunk.byteLength,yield new Uint8Array(chunk)}}else yield part;else{let position=0,b=part;for(;position!==b.size;){let buffer=await b.slice(position,Math.min(b.size,position+POOL_SIZE)).arrayBuffer();position+=buffer.byteLength,yield new Uint8Array(buffer)}}}var import_streams,POOL_SIZE,_Blob,Blob2,fetch_blob_default,init_fetch_blob=__esm({"../../node_modules/fetch-blob/index.js"(){"use strict";import_streams=__toESM(require_streams(),1);POOL_SIZE=65536;_Blob=class Blob{#parts=[];#type="";#size=0;#endings="transparent";constructor(blobParts=[],options={}){if(typeof blobParts!="object"||blobParts===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof blobParts[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof options!="object"&&typeof options!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");options===null&&(options={});let encoder=new TextEncoder;for(let element of blobParts){let part;ArrayBuffer.isView(element)?part=new Uint8Array(element.buffer.slice(element.byteOffset,element.byteOffset+element.byteLength)):element instanceof ArrayBuffer?part=new Uint8Array(element.slice(0)):element instanceof Blob?part=element:part=encoder.encode(`${element}`),this.#size+=ArrayBuffer.isView(part)?part.byteLength:part.size,this.#parts.push(part)}this.#endings=`${options.endings===void 0?"transparent":options.endings}`;let type=options.type===void 0?"":String(options.type);this.#type=/^[\x20-\x7E]*$/.test(type)?type:""}get size(){return this.#size}get type(){return this.#type}async text(){let decoder=new TextDecoder,str="";for await(let part of toIterator(this.#parts,!1))str+=decoder.decode(part,{stream:!0});return str+=decoder.decode(),str}async arrayBuffer(){let data=new Uint8Array(this.size),offset=0;for await(let chunk of toIterator(this.#parts,!1))data.set(chunk,offset),offset+=chunk.length;return data.buffer}stream(){let it=toIterator(this.#parts,!0);return new globalThis.ReadableStream({type:"bytes",async pull(ctrl){let chunk=await it.next();chunk.done?ctrl.close():ctrl.enqueue(chunk.value)},async cancel(){await it.return()}})}slice(start=0,end=this.size,type=""){let{size}=this,relativeStart=start<0?Math.max(size+start,0):Math.min(start,size),relativeEnd=end<0?Math.max(size+end,0):Math.min(end,size),span=Math.max(relativeEnd-relativeStart,0),parts=this.#parts,blobParts=[],added=0;for(let part of parts){if(added>=span)break;let size2=ArrayBuffer.isView(part)?part.byteLength:part.size;if(relativeStart&&size2<=relativeStart)relativeStart-=size2,relativeEnd-=size2;else{let chunk;ArrayBuffer.isView(part)?(chunk=part.subarray(relativeStart,Math.min(size2,relativeEnd)),added+=chunk.byteLength):(chunk=part.slice(relativeStart,Math.min(size2,relativeEnd)),added+=chunk.size),relativeEnd-=size2,blobParts.push(chunk),relativeStart=0}}let blob=new Blob([],{type:String(type).toLowerCase()});return blob.#size=span,blob.#parts=blobParts,blob}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](object){return object&&typeof object=="object"&&typeof object.constructor=="function"&&(typeof object.stream=="function"||typeof object.arrayBuffer=="function")&&/^(Blob|File)$/.test(object[Symbol.toStringTag])}};Object.defineProperties(_Blob.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Blob2=_Blob,fetch_blob_default=Blob2}});var _File,File2,file_default,init_file=__esm({"../../node_modules/fetch-blob/file.js"(){"use strict";init_fetch_blob();_File=class extends fetch_blob_default{#lastModified=0;#name="";constructor(fileBits,fileName,options={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(fileBits,options),options===null&&(options={});let lastModified=options.lastModified===void 0?Date.now():Number(options.lastModified);Number.isNaN(lastModified)||(this.#lastModified=lastModified),this.#name=String(fileName)}get name(){return this.#name}get lastModified(){return this.#lastModified}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](object){return!!object&&object instanceof fetch_blob_default&&/^(File)$/.test(object[Symbol.toStringTag])}},File2=_File,file_default=File2}});function formDataToBlob(F2,B=fetch_blob_default){var b=`${r()}${r()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),c=[],p=`--${b}\r
1
+ "use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var require_ponyfill_es2018=__commonJS({"../../node_modules/web-streams-polyfill/dist/ponyfill.es2018.js"(exports,module2){"use strict";(function(global2,factory){typeof exports=="object"&&typeof module2<"u"?factory(exports):typeof define=="function"&&define.amd?define(["exports"],factory):(global2=typeof globalThis<"u"?globalThis:global2||self,factory(global2.WebStreamsPolyfill={}))})(exports,function(exports2){"use strict";let SymbolPolyfill=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol:description=>`Symbol(${description})`;function noop2(){}function getGlobals(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global}let globals=getGlobals();function typeIsObject(x2){return typeof x2=="object"&&x2!==null||typeof x2=="function"}let rethrowAssertionErrorRejection=noop2,originalPromise=Promise,originalPromiseThen=Promise.prototype.then,originalPromiseResolve=Promise.resolve.bind(originalPromise),originalPromiseReject=Promise.reject.bind(originalPromise);function newPromise(executor){return new originalPromise(executor)}function promiseResolvedWith(value){return originalPromiseResolve(value)}function promiseRejectedWith(reason){return originalPromiseReject(reason)}function PerformPromiseThen(promise,onFulfilled,onRejected){return originalPromiseThen.call(promise,onFulfilled,onRejected)}function uponPromise(promise,onFulfilled,onRejected){PerformPromiseThen(PerformPromiseThen(promise,onFulfilled,onRejected),void 0,rethrowAssertionErrorRejection)}function uponFulfillment(promise,onFulfilled){uponPromise(promise,onFulfilled)}function uponRejection(promise,onRejected){uponPromise(promise,void 0,onRejected)}function transformPromiseWith(promise,fulfillmentHandler,rejectionHandler){return PerformPromiseThen(promise,fulfillmentHandler,rejectionHandler)}function setPromiseIsHandledToTrue(promise){PerformPromiseThen(promise,void 0,rethrowAssertionErrorRejection)}let queueMicrotask=(()=>{let globalQueueMicrotask=globals&&globals.queueMicrotask;if(typeof globalQueueMicrotask=="function")return globalQueueMicrotask;let resolvedPromise=promiseResolvedWith(void 0);return fn=>PerformPromiseThen(resolvedPromise,fn)})();function reflectCall(F2,V,args){if(typeof F2!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(F2,V,args)}function promiseCall(F2,V,args){try{return promiseResolvedWith(reflectCall(F2,V,args))}catch(value){return promiseRejectedWith(value)}}let QUEUE_MAX_ARRAY_SIZE=16384;class SimpleQueue{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(element){let oldBack=this._back,newBack=oldBack;oldBack._elements.length===QUEUE_MAX_ARRAY_SIZE-1&&(newBack={_elements:[],_next:void 0}),oldBack._elements.push(element),newBack!==oldBack&&(this._back=newBack,oldBack._next=newBack),++this._size}shift(){let oldFront=this._front,newFront=oldFront,oldCursor=this._cursor,newCursor=oldCursor+1,elements=oldFront._elements,element=elements[oldCursor];return newCursor===QUEUE_MAX_ARRAY_SIZE&&(newFront=oldFront._next,newCursor=0),--this._size,this._cursor=newCursor,oldFront!==newFront&&(this._front=newFront),elements[oldCursor]=void 0,element}forEach(callback){let i2=this._cursor,node=this._front,elements=node._elements;for(;(i2!==elements.length||node._next!==void 0)&&!(i2===elements.length&&(node=node._next,elements=node._elements,i2=0,elements.length===0));)callback(elements[i2]),++i2}peek(){let front=this._front,cursor=this._cursor;return front._elements[cursor]}}function ReadableStreamReaderGenericInitialize(reader,stream){reader._ownerReadableStream=stream,stream._reader=reader,stream._state==="readable"?defaultReaderClosedPromiseInitialize(reader):stream._state==="closed"?defaultReaderClosedPromiseInitializeAsResolved(reader):defaultReaderClosedPromiseInitializeAsRejected(reader,stream._storedError)}function ReadableStreamReaderGenericCancel(reader,reason){let stream=reader._ownerReadableStream;return ReadableStreamCancel(stream,reason)}function ReadableStreamReaderGenericRelease(reader){reader._ownerReadableStream._state==="readable"?defaultReaderClosedPromiseReject(reader,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):defaultReaderClosedPromiseResetToRejected(reader,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),reader._ownerReadableStream._reader=void 0,reader._ownerReadableStream=void 0}function readerLockException(name){return new TypeError("Cannot "+name+" a stream using a released reader")}function defaultReaderClosedPromiseInitialize(reader){reader._closedPromise=newPromise((resolve,reject)=>{reader._closedPromise_resolve=resolve,reader._closedPromise_reject=reject})}function defaultReaderClosedPromiseInitializeAsRejected(reader,reason){defaultReaderClosedPromiseInitialize(reader),defaultReaderClosedPromiseReject(reader,reason)}function defaultReaderClosedPromiseInitializeAsResolved(reader){defaultReaderClosedPromiseInitialize(reader),defaultReaderClosedPromiseResolve(reader)}function defaultReaderClosedPromiseReject(reader,reason){reader._closedPromise_reject!==void 0&&(setPromiseIsHandledToTrue(reader._closedPromise),reader._closedPromise_reject(reason),reader._closedPromise_resolve=void 0,reader._closedPromise_reject=void 0)}function defaultReaderClosedPromiseResetToRejected(reader,reason){defaultReaderClosedPromiseInitializeAsRejected(reader,reason)}function defaultReaderClosedPromiseResolve(reader){reader._closedPromise_resolve!==void 0&&(reader._closedPromise_resolve(void 0),reader._closedPromise_resolve=void 0,reader._closedPromise_reject=void 0)}let AbortSteps=SymbolPolyfill("[[AbortSteps]]"),ErrorSteps=SymbolPolyfill("[[ErrorSteps]]"),CancelSteps=SymbolPolyfill("[[CancelSteps]]"),PullSteps=SymbolPolyfill("[[PullSteps]]"),NumberIsFinite=Number.isFinite||function(x2){return typeof x2=="number"&&isFinite(x2)},MathTrunc=Math.trunc||function(v){return v<0?Math.ceil(v):Math.floor(v)};function isDictionary(x2){return typeof x2=="object"||typeof x2=="function"}function assertDictionary(obj,context){if(obj!==void 0&&!isDictionary(obj))throw new TypeError(`${context} is not an object.`)}function assertFunction(x2,context){if(typeof x2!="function")throw new TypeError(`${context} is not a function.`)}function isObject(x2){return typeof x2=="object"&&x2!==null||typeof x2=="function"}function assertObject(x2,context){if(!isObject(x2))throw new TypeError(`${context} is not an object.`)}function assertRequiredArgument(x2,position,context){if(x2===void 0)throw new TypeError(`Parameter ${position} is required in '${context}'.`)}function assertRequiredField(x2,field,context){if(x2===void 0)throw new TypeError(`${field} is required in '${context}'.`)}function convertUnrestrictedDouble(value){return Number(value)}function censorNegativeZero(x2){return x2===0?0:x2}function integerPart(x2){return censorNegativeZero(MathTrunc(x2))}function convertUnsignedLongLongWithEnforceRange(value,context){let upperBound=Number.MAX_SAFE_INTEGER,x2=Number(value);if(x2=censorNegativeZero(x2),!NumberIsFinite(x2))throw new TypeError(`${context} is not a finite number`);if(x2=integerPart(x2),x2<0||x2>upperBound)throw new TypeError(`${context} is outside the accepted range of 0 to ${upperBound}, inclusive`);return!NumberIsFinite(x2)||x2===0?0:x2}function assertReadableStream(x2,context){if(!IsReadableStream(x2))throw new TypeError(`${context} is not a ReadableStream.`)}function AcquireReadableStreamDefaultReader(stream){return new ReadableStreamDefaultReader(stream)}function ReadableStreamAddReadRequest(stream,readRequest){stream._reader._readRequests.push(readRequest)}function ReadableStreamFulfillReadRequest(stream,chunk,done){let readRequest=stream._reader._readRequests.shift();done?readRequest._closeSteps():readRequest._chunkSteps(chunk)}function ReadableStreamGetNumReadRequests(stream){return stream._reader._readRequests.length}function ReadableStreamHasDefaultReader(stream){let reader=stream._reader;return!(reader===void 0||!IsReadableStreamDefaultReader(reader))}class ReadableStreamDefaultReader{constructor(stream){if(assertRequiredArgument(stream,1,"ReadableStreamDefaultReader"),assertReadableStream(stream,"First parameter"),IsReadableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive reading by another reader");ReadableStreamReaderGenericInitialize(this,stream),this._readRequests=new SimpleQueue}get closed(){return IsReadableStreamDefaultReader(this)?this._closedPromise:promiseRejectedWith(defaultReaderBrandCheckException("closed"))}cancel(reason=void 0){return IsReadableStreamDefaultReader(this)?this._ownerReadableStream===void 0?promiseRejectedWith(readerLockException("cancel")):ReadableStreamReaderGenericCancel(this,reason):promiseRejectedWith(defaultReaderBrandCheckException("cancel"))}read(){if(!IsReadableStreamDefaultReader(this))return promiseRejectedWith(defaultReaderBrandCheckException("read"));if(this._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("read from"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamDefaultReaderRead(this,{_chunkSteps:chunk=>resolvePromise({value:chunk,done:!1}),_closeSteps:()=>resolvePromise({value:void 0,done:!0}),_errorSteps:e2=>rejectPromise(e2)}),promise}releaseLock(){if(!IsReadableStreamDefaultReader(this))throw defaultReaderBrandCheckException("releaseLock");if(this._ownerReadableStream!==void 0){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");ReadableStreamReaderGenericRelease(this)}}}Object.defineProperties(ReadableStreamDefaultReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamDefaultReader.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function IsReadableStreamDefaultReader(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readRequests")?!1:x2 instanceof ReadableStreamDefaultReader}function ReadableStreamDefaultReaderRead(reader,readRequest){let stream=reader._ownerReadableStream;stream._disturbed=!0,stream._state==="closed"?readRequest._closeSteps():stream._state==="errored"?readRequest._errorSteps(stream._storedError):stream._readableStreamController[PullSteps](readRequest)}function defaultReaderBrandCheckException(name){return new TypeError(`ReadableStreamDefaultReader.prototype.${name} can only be used on a ReadableStreamDefaultReader`)}let AsyncIteratorPrototype=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class ReadableStreamAsyncIteratorImpl{constructor(reader,preventCancel){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=reader,this._preventCancel=preventCancel}next(){let nextSteps=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?transformPromiseWith(this._ongoingPromise,nextSteps,nextSteps):nextSteps(),this._ongoingPromise}return(value){let returnSteps=()=>this._returnSteps(value);return this._ongoingPromise?transformPromiseWith(this._ongoingPromise,returnSteps,returnSteps):returnSteps()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let reader=this._reader;if(reader._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("iterate"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{this._ongoingPromise=void 0,queueMicrotask(()=>resolvePromise({value:chunk,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,ReadableStreamReaderGenericRelease(reader),resolvePromise({value:void 0,done:!0})},_errorSteps:reason=>{this._ongoingPromise=void 0,this._isFinished=!0,ReadableStreamReaderGenericRelease(reader),rejectPromise(reason)}}),promise}_returnSteps(value){if(this._isFinished)return Promise.resolve({value,done:!0});this._isFinished=!0;let reader=this._reader;if(reader._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("finish iterating"));if(!this._preventCancel){let result=ReadableStreamReaderGenericCancel(reader,value);return ReadableStreamReaderGenericRelease(reader),transformPromiseWith(result,()=>({value,done:!0}))}return ReadableStreamReaderGenericRelease(reader),promiseResolvedWith({value,done:!0})}}let ReadableStreamAsyncIteratorPrototype={next(){return IsReadableStreamAsyncIterator(this)?this._asyncIteratorImpl.next():promiseRejectedWith(streamAsyncIteratorBrandCheckException("next"))},return(value){return IsReadableStreamAsyncIterator(this)?this._asyncIteratorImpl.return(value):promiseRejectedWith(streamAsyncIteratorBrandCheckException("return"))}};AsyncIteratorPrototype!==void 0&&Object.setPrototypeOf(ReadableStreamAsyncIteratorPrototype,AsyncIteratorPrototype);function AcquireReadableStreamAsyncIterator(stream,preventCancel){let reader=AcquireReadableStreamDefaultReader(stream),impl=new ReadableStreamAsyncIteratorImpl(reader,preventCancel),iterator=Object.create(ReadableStreamAsyncIteratorPrototype);return iterator._asyncIteratorImpl=impl,iterator}function IsReadableStreamAsyncIterator(x2){if(!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_asyncIteratorImpl"))return!1;try{return x2._asyncIteratorImpl instanceof ReadableStreamAsyncIteratorImpl}catch{return!1}}function streamAsyncIteratorBrandCheckException(name){return new TypeError(`ReadableStreamAsyncIterator.${name} can only be used on a ReadableSteamAsyncIterator`)}let NumberIsNaN=Number.isNaN||function(x2){return x2!==x2};function CreateArrayFromList(elements){return elements.slice()}function CopyDataBlockBytes(dest,destOffset,src,srcOffset,n){new Uint8Array(dest).set(new Uint8Array(src,srcOffset,n),destOffset)}function TransferArrayBuffer(O){return O}function IsDetachedBuffer(O){return!1}function ArrayBufferSlice(buffer,begin,end){if(buffer.slice)return buffer.slice(begin,end);let length=end-begin,slice=new ArrayBuffer(length);return CopyDataBlockBytes(slice,0,buffer,begin,length),slice}function IsNonNegativeNumber(v){return!(typeof v!="number"||NumberIsNaN(v)||v<0)}function CloneAsUint8Array(O){let buffer=ArrayBufferSlice(O.buffer,O.byteOffset,O.byteOffset+O.byteLength);return new Uint8Array(buffer)}function DequeueValue(container){let pair=container._queue.shift();return container._queueTotalSize-=pair.size,container._queueTotalSize<0&&(container._queueTotalSize=0),pair.value}function EnqueueValueWithSize(container,value,size){if(!IsNonNegativeNumber(size)||size===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");container._queue.push({value,size}),container._queueTotalSize+=size}function PeekQueueValue(container){return container._queue.peek().value}function ResetQueue(container){container._queue=new SimpleQueue,container._queueTotalSize=0}class ReadableStreamBYOBRequest{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("view");return this._view}respond(bytesWritten){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("respond");if(assertRequiredArgument(bytesWritten,1,"respond"),bytesWritten=convertUnsignedLongLongWithEnforceRange(bytesWritten,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");IsDetachedBuffer(this._view.buffer),ReadableByteStreamControllerRespond(this._associatedReadableByteStreamController,bytesWritten)}respondWithNewView(view){if(!IsReadableStreamBYOBRequest(this))throw byobRequestBrandCheckException("respondWithNewView");if(assertRequiredArgument(view,1,"respondWithNewView"),!ArrayBuffer.isView(view))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");IsDetachedBuffer(view.buffer),ReadableByteStreamControllerRespondWithNewView(this._associatedReadableByteStreamController,view)}}Object.defineProperties(ReadableStreamBYOBRequest.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamBYOBRequest.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class ReadableByteStreamController{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("byobRequest");return ReadableByteStreamControllerGetBYOBRequest(this)}get desiredSize(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("desiredSize");return ReadableByteStreamControllerGetDesiredSize(this)}close(){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let state=this._controlledReadableByteStream._state;if(state!=="readable")throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be closed`);ReadableByteStreamControllerClose(this)}enqueue(chunk){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("enqueue");if(assertRequiredArgument(chunk,1,"enqueue"),!ArrayBuffer.isView(chunk))throw new TypeError("chunk must be an array buffer view");if(chunk.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(chunk.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let state=this._controlledReadableByteStream._state;if(state!=="readable")throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be enqueued to`);ReadableByteStreamControllerEnqueue(this,chunk)}error(e2=void 0){if(!IsReadableByteStreamController(this))throw byteStreamControllerBrandCheckException("error");ReadableByteStreamControllerError(this,e2)}[CancelSteps](reason){ReadableByteStreamControllerClearPendingPullIntos(this),ResetQueue(this);let result=this._cancelAlgorithm(reason);return ReadableByteStreamControllerClearAlgorithms(this),result}[PullSteps](readRequest){let stream=this._controlledReadableByteStream;if(this._queueTotalSize>0){let entry=this._queue.shift();this._queueTotalSize-=entry.byteLength,ReadableByteStreamControllerHandleQueueDrain(this);let view=new Uint8Array(entry.buffer,entry.byteOffset,entry.byteLength);readRequest._chunkSteps(view);return}let autoAllocateChunkSize=this._autoAllocateChunkSize;if(autoAllocateChunkSize!==void 0){let buffer;try{buffer=new ArrayBuffer(autoAllocateChunkSize)}catch(bufferE){readRequest._errorSteps(bufferE);return}let pullIntoDescriptor={buffer,bufferByteLength:autoAllocateChunkSize,byteOffset:0,byteLength:autoAllocateChunkSize,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pullIntoDescriptor)}ReadableStreamAddReadRequest(stream,readRequest),ReadableByteStreamControllerCallPullIfNeeded(this)}}Object.defineProperties(ReadableByteStreamController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableByteStreamController.prototype,SymbolPolyfill.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function IsReadableByteStreamController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledReadableByteStream")?!1:x2 instanceof ReadableByteStreamController}function IsReadableStreamBYOBRequest(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_associatedReadableByteStreamController")?!1:x2 instanceof ReadableStreamBYOBRequest}function ReadableByteStreamControllerCallPullIfNeeded(controller){if(!ReadableByteStreamControllerShouldCallPull(controller))return;if(controller._pulling){controller._pullAgain=!0;return}controller._pulling=!0;let pullPromise=controller._pullAlgorithm();uponPromise(pullPromise,()=>{controller._pulling=!1,controller._pullAgain&&(controller._pullAgain=!1,ReadableByteStreamControllerCallPullIfNeeded(controller))},e2=>{ReadableByteStreamControllerError(controller,e2)})}function ReadableByteStreamControllerClearPendingPullIntos(controller){ReadableByteStreamControllerInvalidateBYOBRequest(controller),controller._pendingPullIntos=new SimpleQueue}function ReadableByteStreamControllerCommitPullIntoDescriptor(stream,pullIntoDescriptor){let done=!1;stream._state==="closed"&&(done=!0);let filledView=ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);pullIntoDescriptor.readerType==="default"?ReadableStreamFulfillReadRequest(stream,filledView,done):ReadableStreamFulfillReadIntoRequest(stream,filledView,done)}function ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor){let bytesFilled=pullIntoDescriptor.bytesFilled,elementSize=pullIntoDescriptor.elementSize;return new pullIntoDescriptor.viewConstructor(pullIntoDescriptor.buffer,pullIntoDescriptor.byteOffset,bytesFilled/elementSize)}function ReadableByteStreamControllerEnqueueChunkToQueue(controller,buffer,byteOffset,byteLength){controller._queue.push({buffer,byteOffset,byteLength}),controller._queueTotalSize+=byteLength}function ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor){let elementSize=pullIntoDescriptor.elementSize,currentAlignedBytes=pullIntoDescriptor.bytesFilled-pullIntoDescriptor.bytesFilled%elementSize,maxBytesToCopy=Math.min(controller._queueTotalSize,pullIntoDescriptor.byteLength-pullIntoDescriptor.bytesFilled),maxBytesFilled=pullIntoDescriptor.bytesFilled+maxBytesToCopy,maxAlignedBytes=maxBytesFilled-maxBytesFilled%elementSize,totalBytesToCopyRemaining=maxBytesToCopy,ready=!1;maxAlignedBytes>currentAlignedBytes&&(totalBytesToCopyRemaining=maxAlignedBytes-pullIntoDescriptor.bytesFilled,ready=!0);let queue=controller._queue;for(;totalBytesToCopyRemaining>0;){let headOfQueue=queue.peek(),bytesToCopy=Math.min(totalBytesToCopyRemaining,headOfQueue.byteLength),destStart=pullIntoDescriptor.byteOffset+pullIntoDescriptor.bytesFilled;CopyDataBlockBytes(pullIntoDescriptor.buffer,destStart,headOfQueue.buffer,headOfQueue.byteOffset,bytesToCopy),headOfQueue.byteLength===bytesToCopy?queue.shift():(headOfQueue.byteOffset+=bytesToCopy,headOfQueue.byteLength-=bytesToCopy),controller._queueTotalSize-=bytesToCopy,ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,bytesToCopy,pullIntoDescriptor),totalBytesToCopyRemaining-=bytesToCopy}return ready}function ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,size,pullIntoDescriptor){pullIntoDescriptor.bytesFilled+=size}function ReadableByteStreamControllerHandleQueueDrain(controller){controller._queueTotalSize===0&&controller._closeRequested?(ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamClose(controller._controlledReadableByteStream)):ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerInvalidateBYOBRequest(controller){controller._byobRequest!==null&&(controller._byobRequest._associatedReadableByteStreamController=void 0,controller._byobRequest._view=null,controller._byobRequest=null)}function ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller){for(;controller._pendingPullIntos.length>0;){if(controller._queueTotalSize===0)return;let pullIntoDescriptor=controller._pendingPullIntos.peek();ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor)&&(ReadableByteStreamControllerShiftPendingPullInto(controller),ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream,pullIntoDescriptor))}}function ReadableByteStreamControllerPullInto(controller,view,readIntoRequest){let stream=controller._controlledReadableByteStream,elementSize=1;view.constructor!==DataView&&(elementSize=view.constructor.BYTES_PER_ELEMENT);let ctor=view.constructor,buffer=view.buffer,pullIntoDescriptor={buffer,bufferByteLength:buffer.byteLength,byteOffset:view.byteOffset,byteLength:view.byteLength,bytesFilled:0,elementSize,viewConstructor:ctor,readerType:"byob"};if(controller._pendingPullIntos.length>0){controller._pendingPullIntos.push(pullIntoDescriptor),ReadableStreamAddReadIntoRequest(stream,readIntoRequest);return}if(stream._state==="closed"){let emptyView=new ctor(pullIntoDescriptor.buffer,pullIntoDescriptor.byteOffset,0);readIntoRequest._closeSteps(emptyView);return}if(controller._queueTotalSize>0){if(ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller,pullIntoDescriptor)){let filledView=ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);ReadableByteStreamControllerHandleQueueDrain(controller),readIntoRequest._chunkSteps(filledView);return}if(controller._closeRequested){let e2=new TypeError("Insufficient bytes to fill elements in the given buffer");ReadableByteStreamControllerError(controller,e2),readIntoRequest._errorSteps(e2);return}}controller._pendingPullIntos.push(pullIntoDescriptor),ReadableStreamAddReadIntoRequest(stream,readIntoRequest),ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerRespondInClosedState(controller,firstDescriptor){let stream=controller._controlledReadableByteStream;if(ReadableStreamHasBYOBReader(stream))for(;ReadableStreamGetNumReadIntoRequests(stream)>0;){let pullIntoDescriptor=ReadableByteStreamControllerShiftPendingPullInto(controller);ReadableByteStreamControllerCommitPullIntoDescriptor(stream,pullIntoDescriptor)}}function ReadableByteStreamControllerRespondInReadableState(controller,bytesWritten,pullIntoDescriptor){if(ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller,bytesWritten,pullIntoDescriptor),pullIntoDescriptor.bytesFilled<pullIntoDescriptor.elementSize)return;ReadableByteStreamControllerShiftPendingPullInto(controller);let remainderSize=pullIntoDescriptor.bytesFilled%pullIntoDescriptor.elementSize;if(remainderSize>0){let end=pullIntoDescriptor.byteOffset+pullIntoDescriptor.bytesFilled,remainder=ArrayBufferSlice(pullIntoDescriptor.buffer,end-remainderSize,end);ReadableByteStreamControllerEnqueueChunkToQueue(controller,remainder,0,remainder.byteLength)}pullIntoDescriptor.bytesFilled-=remainderSize,ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream,pullIntoDescriptor),ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller)}function ReadableByteStreamControllerRespondInternal(controller,bytesWritten){let firstDescriptor=controller._pendingPullIntos.peek();ReadableByteStreamControllerInvalidateBYOBRequest(controller),controller._controlledReadableByteStream._state==="closed"?ReadableByteStreamControllerRespondInClosedState(controller):ReadableByteStreamControllerRespondInReadableState(controller,bytesWritten,firstDescriptor),ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerShiftPendingPullInto(controller){return controller._pendingPullIntos.shift()}function ReadableByteStreamControllerShouldCallPull(controller){let stream=controller._controlledReadableByteStream;return stream._state!=="readable"||controller._closeRequested||!controller._started?!1:!!(ReadableStreamHasDefaultReader(stream)&&ReadableStreamGetNumReadRequests(stream)>0||ReadableStreamHasBYOBReader(stream)&&ReadableStreamGetNumReadIntoRequests(stream)>0||ReadableByteStreamControllerGetDesiredSize(controller)>0)}function ReadableByteStreamControllerClearAlgorithms(controller){controller._pullAlgorithm=void 0,controller._cancelAlgorithm=void 0}function ReadableByteStreamControllerClose(controller){let stream=controller._controlledReadableByteStream;if(!(controller._closeRequested||stream._state!=="readable")){if(controller._queueTotalSize>0){controller._closeRequested=!0;return}if(controller._pendingPullIntos.length>0&&controller._pendingPullIntos.peek().bytesFilled>0){let e2=new TypeError("Insufficient bytes to fill elements in the given buffer");throw ReadableByteStreamControllerError(controller,e2),e2}ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamClose(stream)}}function ReadableByteStreamControllerEnqueue(controller,chunk){let stream=controller._controlledReadableByteStream;if(controller._closeRequested||stream._state!=="readable")return;let buffer=chunk.buffer,byteOffset=chunk.byteOffset,byteLength=chunk.byteLength,transferredBuffer=buffer;if(controller._pendingPullIntos.length>0){let firstPendingPullInto=controller._pendingPullIntos.peek();IsDetachedBuffer(firstPendingPullInto.buffer),firstPendingPullInto.buffer=firstPendingPullInto.buffer}if(ReadableByteStreamControllerInvalidateBYOBRequest(controller),ReadableStreamHasDefaultReader(stream))if(ReadableStreamGetNumReadRequests(stream)===0)ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength);else{controller._pendingPullIntos.length>0&&ReadableByteStreamControllerShiftPendingPullInto(controller);let transferredView=new Uint8Array(transferredBuffer,byteOffset,byteLength);ReadableStreamFulfillReadRequest(stream,transferredView,!1)}else ReadableStreamHasBYOBReader(stream)?(ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength),ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller)):ReadableByteStreamControllerEnqueueChunkToQueue(controller,transferredBuffer,byteOffset,byteLength);ReadableByteStreamControllerCallPullIfNeeded(controller)}function ReadableByteStreamControllerError(controller,e2){let stream=controller._controlledReadableByteStream;stream._state==="readable"&&(ReadableByteStreamControllerClearPendingPullIntos(controller),ResetQueue(controller),ReadableByteStreamControllerClearAlgorithms(controller),ReadableStreamError(stream,e2))}function ReadableByteStreamControllerGetBYOBRequest(controller){if(controller._byobRequest===null&&controller._pendingPullIntos.length>0){let firstDescriptor=controller._pendingPullIntos.peek(),view=new Uint8Array(firstDescriptor.buffer,firstDescriptor.byteOffset+firstDescriptor.bytesFilled,firstDescriptor.byteLength-firstDescriptor.bytesFilled),byobRequest=Object.create(ReadableStreamBYOBRequest.prototype);SetUpReadableStreamBYOBRequest(byobRequest,controller,view),controller._byobRequest=byobRequest}return controller._byobRequest}function ReadableByteStreamControllerGetDesiredSize(controller){let state=controller._controlledReadableByteStream._state;return state==="errored"?null:state==="closed"?0:controller._strategyHWM-controller._queueTotalSize}function ReadableByteStreamControllerRespond(controller,bytesWritten){let firstDescriptor=controller._pendingPullIntos.peek();if(controller._controlledReadableByteStream._state==="closed"){if(bytesWritten!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(bytesWritten===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(firstDescriptor.bytesFilled+bytesWritten>firstDescriptor.byteLength)throw new RangeError("bytesWritten out of range")}firstDescriptor.buffer=firstDescriptor.buffer,ReadableByteStreamControllerRespondInternal(controller,bytesWritten)}function ReadableByteStreamControllerRespondWithNewView(controller,view){let firstDescriptor=controller._pendingPullIntos.peek();if(controller._controlledReadableByteStream._state==="closed"){if(view.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(view.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(firstDescriptor.byteOffset+firstDescriptor.bytesFilled!==view.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(firstDescriptor.bufferByteLength!==view.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(firstDescriptor.bytesFilled+view.byteLength>firstDescriptor.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let viewByteLength=view.byteLength;firstDescriptor.buffer=view.buffer,ReadableByteStreamControllerRespondInternal(controller,viewByteLength)}function SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,autoAllocateChunkSize){controller._controlledReadableByteStream=stream,controller._pullAgain=!1,controller._pulling=!1,controller._byobRequest=null,controller._queue=controller._queueTotalSize=void 0,ResetQueue(controller),controller._closeRequested=!1,controller._started=!1,controller._strategyHWM=highWaterMark,controller._pullAlgorithm=pullAlgorithm,controller._cancelAlgorithm=cancelAlgorithm,controller._autoAllocateChunkSize=autoAllocateChunkSize,controller._pendingPullIntos=new SimpleQueue,stream._readableStreamController=controller;let startResult=startAlgorithm();uponPromise(promiseResolvedWith(startResult),()=>{controller._started=!0,ReadableByteStreamControllerCallPullIfNeeded(controller)},r2=>{ReadableByteStreamControllerError(controller,r2)})}function SetUpReadableByteStreamControllerFromUnderlyingSource(stream,underlyingByteSource,highWaterMark){let controller=Object.create(ReadableByteStreamController.prototype),startAlgorithm=()=>{},pullAlgorithm=()=>promiseResolvedWith(void 0),cancelAlgorithm=()=>promiseResolvedWith(void 0);underlyingByteSource.start!==void 0&&(startAlgorithm=()=>underlyingByteSource.start(controller)),underlyingByteSource.pull!==void 0&&(pullAlgorithm=()=>underlyingByteSource.pull(controller)),underlyingByteSource.cancel!==void 0&&(cancelAlgorithm=reason=>underlyingByteSource.cancel(reason));let autoAllocateChunkSize=underlyingByteSource.autoAllocateChunkSize;if(autoAllocateChunkSize===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,autoAllocateChunkSize)}function SetUpReadableStreamBYOBRequest(request,controller,view){request._associatedReadableByteStreamController=controller,request._view=view}function byobRequestBrandCheckException(name){return new TypeError(`ReadableStreamBYOBRequest.prototype.${name} can only be used on a ReadableStreamBYOBRequest`)}function byteStreamControllerBrandCheckException(name){return new TypeError(`ReadableByteStreamController.prototype.${name} can only be used on a ReadableByteStreamController`)}function AcquireReadableStreamBYOBReader(stream){return new ReadableStreamBYOBReader(stream)}function ReadableStreamAddReadIntoRequest(stream,readIntoRequest){stream._reader._readIntoRequests.push(readIntoRequest)}function ReadableStreamFulfillReadIntoRequest(stream,chunk,done){let readIntoRequest=stream._reader._readIntoRequests.shift();done?readIntoRequest._closeSteps(chunk):readIntoRequest._chunkSteps(chunk)}function ReadableStreamGetNumReadIntoRequests(stream){return stream._reader._readIntoRequests.length}function ReadableStreamHasBYOBReader(stream){let reader=stream._reader;return!(reader===void 0||!IsReadableStreamBYOBReader(reader))}class ReadableStreamBYOBReader{constructor(stream){if(assertRequiredArgument(stream,1,"ReadableStreamBYOBReader"),assertReadableStream(stream,"First parameter"),IsReadableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!IsReadableByteStreamController(stream._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");ReadableStreamReaderGenericInitialize(this,stream),this._readIntoRequests=new SimpleQueue}get closed(){return IsReadableStreamBYOBReader(this)?this._closedPromise:promiseRejectedWith(byobReaderBrandCheckException("closed"))}cancel(reason=void 0){return IsReadableStreamBYOBReader(this)?this._ownerReadableStream===void 0?promiseRejectedWith(readerLockException("cancel")):ReadableStreamReaderGenericCancel(this,reason):promiseRejectedWith(byobReaderBrandCheckException("cancel"))}read(view){if(!IsReadableStreamBYOBReader(this))return promiseRejectedWith(byobReaderBrandCheckException("read"));if(!ArrayBuffer.isView(view))return promiseRejectedWith(new TypeError("view must be an array buffer view"));if(view.byteLength===0)return promiseRejectedWith(new TypeError("view must have non-zero byteLength"));if(view.buffer.byteLength===0)return promiseRejectedWith(new TypeError("view's buffer must have non-zero byteLength"));if(IsDetachedBuffer(view.buffer),this._ownerReadableStream===void 0)return promiseRejectedWith(readerLockException("read from"));let resolvePromise,rejectPromise,promise=newPromise((resolve,reject)=>{resolvePromise=resolve,rejectPromise=reject});return ReadableStreamBYOBReaderRead(this,view,{_chunkSteps:chunk=>resolvePromise({value:chunk,done:!1}),_closeSteps:chunk=>resolvePromise({value:chunk,done:!0}),_errorSteps:e2=>rejectPromise(e2)}),promise}releaseLock(){if(!IsReadableStreamBYOBReader(this))throw byobReaderBrandCheckException("releaseLock");if(this._ownerReadableStream!==void 0){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");ReadableStreamReaderGenericRelease(this)}}}Object.defineProperties(ReadableStreamBYOBReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamBYOBReader.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function IsReadableStreamBYOBReader(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readIntoRequests")?!1:x2 instanceof ReadableStreamBYOBReader}function ReadableStreamBYOBReaderRead(reader,view,readIntoRequest){let stream=reader._ownerReadableStream;stream._disturbed=!0,stream._state==="errored"?readIntoRequest._errorSteps(stream._storedError):ReadableByteStreamControllerPullInto(stream._readableStreamController,view,readIntoRequest)}function byobReaderBrandCheckException(name){return new TypeError(`ReadableStreamBYOBReader.prototype.${name} can only be used on a ReadableStreamBYOBReader`)}function ExtractHighWaterMark(strategy,defaultHWM){let{highWaterMark}=strategy;if(highWaterMark===void 0)return defaultHWM;if(NumberIsNaN(highWaterMark)||highWaterMark<0)throw new RangeError("Invalid highWaterMark");return highWaterMark}function ExtractSizeAlgorithm(strategy){let{size}=strategy;return size||(()=>1)}function convertQueuingStrategy(init,context){assertDictionary(init,context);let highWaterMark=init?.highWaterMark,size=init?.size;return{highWaterMark:highWaterMark===void 0?void 0:convertUnrestrictedDouble(highWaterMark),size:size===void 0?void 0:convertQueuingStrategySize(size,`${context} has member 'size' that`)}}function convertQueuingStrategySize(fn,context){return assertFunction(fn,context),chunk=>convertUnrestrictedDouble(fn(chunk))}function convertUnderlyingSink(original,context){assertDictionary(original,context);let abort=original?.abort,close=original?.close,start=original?.start,type=original?.type,write=original?.write;return{abort:abort===void 0?void 0:convertUnderlyingSinkAbortCallback(abort,original,`${context} has member 'abort' that`),close:close===void 0?void 0:convertUnderlyingSinkCloseCallback(close,original,`${context} has member 'close' that`),start:start===void 0?void 0:convertUnderlyingSinkStartCallback(start,original,`${context} has member 'start' that`),write:write===void 0?void 0:convertUnderlyingSinkWriteCallback(write,original,`${context} has member 'write' that`),type}}function convertUnderlyingSinkAbortCallback(fn,original,context){return assertFunction(fn,context),reason=>promiseCall(fn,original,[reason])}function convertUnderlyingSinkCloseCallback(fn,original,context){return assertFunction(fn,context),()=>promiseCall(fn,original,[])}function convertUnderlyingSinkStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertUnderlyingSinkWriteCallback(fn,original,context){return assertFunction(fn,context),(chunk,controller)=>promiseCall(fn,original,[chunk,controller])}function assertWritableStream(x2,context){if(!IsWritableStream(x2))throw new TypeError(`${context} is not a WritableStream.`)}function isAbortSignal2(value){if(typeof value!="object"||value===null)return!1;try{return typeof value.aborted=="boolean"}catch{return!1}}let supportsAbortController=typeof AbortController=="function";function createAbortController(){if(supportsAbortController)return new AbortController}class WritableStream{constructor(rawUnderlyingSink={},rawStrategy={}){rawUnderlyingSink===void 0?rawUnderlyingSink=null:assertObject(rawUnderlyingSink,"First parameter");let strategy=convertQueuingStrategy(rawStrategy,"Second parameter"),underlyingSink=convertUnderlyingSink(rawUnderlyingSink,"First parameter");if(InitializeWritableStream(this),underlyingSink.type!==void 0)throw new RangeError("Invalid type is specified");let sizeAlgorithm=ExtractSizeAlgorithm(strategy),highWaterMark=ExtractHighWaterMark(strategy,1);SetUpWritableStreamDefaultControllerFromUnderlyingSink(this,underlyingSink,highWaterMark,sizeAlgorithm)}get locked(){if(!IsWritableStream(this))throw streamBrandCheckException$2("locked");return IsWritableStreamLocked(this)}abort(reason=void 0){return IsWritableStream(this)?IsWritableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot abort a stream that already has a writer")):WritableStreamAbort(this,reason):promiseRejectedWith(streamBrandCheckException$2("abort"))}close(){return IsWritableStream(this)?IsWritableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot close a stream that already has a writer")):WritableStreamCloseQueuedOrInFlight(this)?promiseRejectedWith(new TypeError("Cannot close an already-closing stream")):WritableStreamClose(this):promiseRejectedWith(streamBrandCheckException$2("close"))}getWriter(){if(!IsWritableStream(this))throw streamBrandCheckException$2("getWriter");return AcquireWritableStreamDefaultWriter(this)}}Object.defineProperties(WritableStream.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStream.prototype,SymbolPolyfill.toStringTag,{value:"WritableStream",configurable:!0});function AcquireWritableStreamDefaultWriter(stream){return new WritableStreamDefaultWriter(stream)}function CreateWritableStream(startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark=1,sizeAlgorithm=()=>1){let stream=Object.create(WritableStream.prototype);InitializeWritableStream(stream);let controller=Object.create(WritableStreamDefaultController.prototype);return SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm),stream}function InitializeWritableStream(stream){stream._state="writable",stream._storedError=void 0,stream._writer=void 0,stream._writableStreamController=void 0,stream._writeRequests=new SimpleQueue,stream._inFlightWriteRequest=void 0,stream._closeRequest=void 0,stream._inFlightCloseRequest=void 0,stream._pendingAbortRequest=void 0,stream._backpressure=!1}function IsWritableStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_writableStreamController")?!1:x2 instanceof WritableStream}function IsWritableStreamLocked(stream){return stream._writer!==void 0}function WritableStreamAbort(stream,reason){var _a;if(stream._state==="closed"||stream._state==="errored")return promiseResolvedWith(void 0);stream._writableStreamController._abortReason=reason,(_a=stream._writableStreamController._abortController)===null||_a===void 0||_a.abort();let state=stream._state;if(state==="closed"||state==="errored")return promiseResolvedWith(void 0);if(stream._pendingAbortRequest!==void 0)return stream._pendingAbortRequest._promise;let wasAlreadyErroring=!1;state==="erroring"&&(wasAlreadyErroring=!0,reason=void 0);let promise=newPromise((resolve,reject)=>{stream._pendingAbortRequest={_promise:void 0,_resolve:resolve,_reject:reject,_reason:reason,_wasAlreadyErroring:wasAlreadyErroring}});return stream._pendingAbortRequest._promise=promise,wasAlreadyErroring||WritableStreamStartErroring(stream,reason),promise}function WritableStreamClose(stream){let state=stream._state;if(state==="closed"||state==="errored")return promiseRejectedWith(new TypeError(`The stream (in ${state} state) is not in the writable state and cannot be closed`));let promise=newPromise((resolve,reject)=>{let closeRequest={_resolve:resolve,_reject:reject};stream._closeRequest=closeRequest}),writer=stream._writer;return writer!==void 0&&stream._backpressure&&state==="writable"&&defaultWriterReadyPromiseResolve(writer),WritableStreamDefaultControllerClose(stream._writableStreamController),promise}function WritableStreamAddWriteRequest(stream){return newPromise((resolve,reject)=>{let writeRequest={_resolve:resolve,_reject:reject};stream._writeRequests.push(writeRequest)})}function WritableStreamDealWithRejection(stream,error){if(stream._state==="writable"){WritableStreamStartErroring(stream,error);return}WritableStreamFinishErroring(stream)}function WritableStreamStartErroring(stream,reason){let controller=stream._writableStreamController;stream._state="erroring",stream._storedError=reason;let writer=stream._writer;writer!==void 0&&WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,reason),!WritableStreamHasOperationMarkedInFlight(stream)&&controller._started&&WritableStreamFinishErroring(stream)}function WritableStreamFinishErroring(stream){stream._state="errored",stream._writableStreamController[ErrorSteps]();let storedError=stream._storedError;if(stream._writeRequests.forEach(writeRequest=>{writeRequest._reject(storedError)}),stream._writeRequests=new SimpleQueue,stream._pendingAbortRequest===void 0){WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);return}let abortRequest=stream._pendingAbortRequest;if(stream._pendingAbortRequest=void 0,abortRequest._wasAlreadyErroring){abortRequest._reject(storedError),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);return}let promise=stream._writableStreamController[AbortSteps](abortRequest._reason);uponPromise(promise,()=>{abortRequest._resolve(),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream)},reason=>{abortRequest._reject(reason),WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream)})}function WritableStreamFinishInFlightWrite(stream){stream._inFlightWriteRequest._resolve(void 0),stream._inFlightWriteRequest=void 0}function WritableStreamFinishInFlightWriteWithError(stream,error){stream._inFlightWriteRequest._reject(error),stream._inFlightWriteRequest=void 0,WritableStreamDealWithRejection(stream,error)}function WritableStreamFinishInFlightClose(stream){stream._inFlightCloseRequest._resolve(void 0),stream._inFlightCloseRequest=void 0,stream._state==="erroring"&&(stream._storedError=void 0,stream._pendingAbortRequest!==void 0&&(stream._pendingAbortRequest._resolve(),stream._pendingAbortRequest=void 0)),stream._state="closed";let writer=stream._writer;writer!==void 0&&defaultWriterClosedPromiseResolve(writer)}function WritableStreamFinishInFlightCloseWithError(stream,error){stream._inFlightCloseRequest._reject(error),stream._inFlightCloseRequest=void 0,stream._pendingAbortRequest!==void 0&&(stream._pendingAbortRequest._reject(error),stream._pendingAbortRequest=void 0),WritableStreamDealWithRejection(stream,error)}function WritableStreamCloseQueuedOrInFlight(stream){return!(stream._closeRequest===void 0&&stream._inFlightCloseRequest===void 0)}function WritableStreamHasOperationMarkedInFlight(stream){return!(stream._inFlightWriteRequest===void 0&&stream._inFlightCloseRequest===void 0)}function WritableStreamMarkCloseRequestInFlight(stream){stream._inFlightCloseRequest=stream._closeRequest,stream._closeRequest=void 0}function WritableStreamMarkFirstWriteRequestInFlight(stream){stream._inFlightWriteRequest=stream._writeRequests.shift()}function WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream){stream._closeRequest!==void 0&&(stream._closeRequest._reject(stream._storedError),stream._closeRequest=void 0);let writer=stream._writer;writer!==void 0&&defaultWriterClosedPromiseReject(writer,stream._storedError)}function WritableStreamUpdateBackpressure(stream,backpressure){let writer=stream._writer;writer!==void 0&&backpressure!==stream._backpressure&&(backpressure?defaultWriterReadyPromiseReset(writer):defaultWriterReadyPromiseResolve(writer)),stream._backpressure=backpressure}class WritableStreamDefaultWriter{constructor(stream){if(assertRequiredArgument(stream,1,"WritableStreamDefaultWriter"),assertWritableStream(stream,"First parameter"),IsWritableStreamLocked(stream))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=stream,stream._writer=this;let state=stream._state;if(state==="writable")!WritableStreamCloseQueuedOrInFlight(stream)&&stream._backpressure?defaultWriterReadyPromiseInitialize(this):defaultWriterReadyPromiseInitializeAsResolved(this),defaultWriterClosedPromiseInitialize(this);else if(state==="erroring")defaultWriterReadyPromiseInitializeAsRejected(this,stream._storedError),defaultWriterClosedPromiseInitialize(this);else if(state==="closed")defaultWriterReadyPromiseInitializeAsResolved(this),defaultWriterClosedPromiseInitializeAsResolved(this);else{let storedError=stream._storedError;defaultWriterReadyPromiseInitializeAsRejected(this,storedError),defaultWriterClosedPromiseInitializeAsRejected(this,storedError)}}get closed(){return IsWritableStreamDefaultWriter(this)?this._closedPromise:promiseRejectedWith(defaultWriterBrandCheckException("closed"))}get desiredSize(){if(!IsWritableStreamDefaultWriter(this))throw defaultWriterBrandCheckException("desiredSize");if(this._ownerWritableStream===void 0)throw defaultWriterLockException("desiredSize");return WritableStreamDefaultWriterGetDesiredSize(this)}get ready(){return IsWritableStreamDefaultWriter(this)?this._readyPromise:promiseRejectedWith(defaultWriterBrandCheckException("ready"))}abort(reason=void 0){return IsWritableStreamDefaultWriter(this)?this._ownerWritableStream===void 0?promiseRejectedWith(defaultWriterLockException("abort")):WritableStreamDefaultWriterAbort(this,reason):promiseRejectedWith(defaultWriterBrandCheckException("abort"))}close(){if(!IsWritableStreamDefaultWriter(this))return promiseRejectedWith(defaultWriterBrandCheckException("close"));let stream=this._ownerWritableStream;return stream===void 0?promiseRejectedWith(defaultWriterLockException("close")):WritableStreamCloseQueuedOrInFlight(stream)?promiseRejectedWith(new TypeError("Cannot close an already-closing stream")):WritableStreamDefaultWriterClose(this)}releaseLock(){if(!IsWritableStreamDefaultWriter(this))throw defaultWriterBrandCheckException("releaseLock");this._ownerWritableStream!==void 0&&WritableStreamDefaultWriterRelease(this)}write(chunk=void 0){return IsWritableStreamDefaultWriter(this)?this._ownerWritableStream===void 0?promiseRejectedWith(defaultWriterLockException("write to")):WritableStreamDefaultWriterWrite(this,chunk):promiseRejectedWith(defaultWriterBrandCheckException("write"))}}Object.defineProperties(WritableStreamDefaultWriter.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStreamDefaultWriter.prototype,SymbolPolyfill.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function IsWritableStreamDefaultWriter(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_ownerWritableStream")?!1:x2 instanceof WritableStreamDefaultWriter}function WritableStreamDefaultWriterAbort(writer,reason){let stream=writer._ownerWritableStream;return WritableStreamAbort(stream,reason)}function WritableStreamDefaultWriterClose(writer){let stream=writer._ownerWritableStream;return WritableStreamClose(stream)}function WritableStreamDefaultWriterCloseWithErrorPropagation(writer){let stream=writer._ownerWritableStream,state=stream._state;return WritableStreamCloseQueuedOrInFlight(stream)||state==="closed"?promiseResolvedWith(void 0):state==="errored"?promiseRejectedWith(stream._storedError):WritableStreamDefaultWriterClose(writer)}function WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer,error){writer._closedPromiseState==="pending"?defaultWriterClosedPromiseReject(writer,error):defaultWriterClosedPromiseResetToRejected(writer,error)}function WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,error){writer._readyPromiseState==="pending"?defaultWriterReadyPromiseReject(writer,error):defaultWriterReadyPromiseResetToRejected(writer,error)}function WritableStreamDefaultWriterGetDesiredSize(writer){let stream=writer._ownerWritableStream,state=stream._state;return state==="errored"||state==="erroring"?null:state==="closed"?0:WritableStreamDefaultControllerGetDesiredSize(stream._writableStreamController)}function WritableStreamDefaultWriterRelease(writer){let stream=writer._ownerWritableStream,releasedError=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer,releasedError),WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer,releasedError),stream._writer=void 0,writer._ownerWritableStream=void 0}function WritableStreamDefaultWriterWrite(writer,chunk){let stream=writer._ownerWritableStream,controller=stream._writableStreamController,chunkSize=WritableStreamDefaultControllerGetChunkSize(controller,chunk);if(stream!==writer._ownerWritableStream)return promiseRejectedWith(defaultWriterLockException("write to"));let state=stream._state;if(state==="errored")return promiseRejectedWith(stream._storedError);if(WritableStreamCloseQueuedOrInFlight(stream)||state==="closed")return promiseRejectedWith(new TypeError("The stream is closing or closed and cannot be written to"));if(state==="erroring")return promiseRejectedWith(stream._storedError);let promise=WritableStreamAddWriteRequest(stream);return WritableStreamDefaultControllerWrite(controller,chunk,chunkSize),promise}let closeSentinel={};class WritableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("abortReason");return this._abortReason}get signal(){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e2=void 0){if(!IsWritableStreamDefaultController(this))throw defaultControllerBrandCheckException$2("error");this._controlledWritableStream._state==="writable"&&WritableStreamDefaultControllerError(this,e2)}[AbortSteps](reason){let result=this._abortAlgorithm(reason);return WritableStreamDefaultControllerClearAlgorithms(this),result}[ErrorSteps](){ResetQueue(this)}}Object.defineProperties(WritableStreamDefaultController.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(WritableStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function IsWritableStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledWritableStream")?!1:x2 instanceof WritableStreamDefaultController}function SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm){controller._controlledWritableStream=stream,stream._writableStreamController=controller,controller._queue=void 0,controller._queueTotalSize=void 0,ResetQueue(controller),controller._abortReason=void 0,controller._abortController=createAbortController(),controller._started=!1,controller._strategySizeAlgorithm=sizeAlgorithm,controller._strategyHWM=highWaterMark,controller._writeAlgorithm=writeAlgorithm,controller._closeAlgorithm=closeAlgorithm,controller._abortAlgorithm=abortAlgorithm;let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure);let startResult=startAlgorithm(),startPromise=promiseResolvedWith(startResult);uponPromise(startPromise,()=>{controller._started=!0,WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)},r2=>{controller._started=!0,WritableStreamDealWithRejection(stream,r2)})}function SetUpWritableStreamDefaultControllerFromUnderlyingSink(stream,underlyingSink,highWaterMark,sizeAlgorithm){let controller=Object.create(WritableStreamDefaultController.prototype),startAlgorithm=()=>{},writeAlgorithm=()=>promiseResolvedWith(void 0),closeAlgorithm=()=>promiseResolvedWith(void 0),abortAlgorithm=()=>promiseResolvedWith(void 0);underlyingSink.start!==void 0&&(startAlgorithm=()=>underlyingSink.start(controller)),underlyingSink.write!==void 0&&(writeAlgorithm=chunk=>underlyingSink.write(chunk,controller)),underlyingSink.close!==void 0&&(closeAlgorithm=()=>underlyingSink.close()),underlyingSink.abort!==void 0&&(abortAlgorithm=reason=>underlyingSink.abort(reason)),SetUpWritableStreamDefaultController(stream,controller,startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,highWaterMark,sizeAlgorithm)}function WritableStreamDefaultControllerClearAlgorithms(controller){controller._writeAlgorithm=void 0,controller._closeAlgorithm=void 0,controller._abortAlgorithm=void 0,controller._strategySizeAlgorithm=void 0}function WritableStreamDefaultControllerClose(controller){EnqueueValueWithSize(controller,closeSentinel,0),WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)}function WritableStreamDefaultControllerGetChunkSize(controller,chunk){try{return controller._strategySizeAlgorithm(chunk)}catch(chunkSizeE){return WritableStreamDefaultControllerErrorIfNeeded(controller,chunkSizeE),1}}function WritableStreamDefaultControllerGetDesiredSize(controller){return controller._strategyHWM-controller._queueTotalSize}function WritableStreamDefaultControllerWrite(controller,chunk,chunkSize){try{EnqueueValueWithSize(controller,chunk,chunkSize)}catch(enqueueE){WritableStreamDefaultControllerErrorIfNeeded(controller,enqueueE);return}let stream=controller._controlledWritableStream;if(!WritableStreamCloseQueuedOrInFlight(stream)&&stream._state==="writable"){let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure)}WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)}function WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller){let stream=controller._controlledWritableStream;if(!controller._started||stream._inFlightWriteRequest!==void 0)return;if(stream._state==="erroring"){WritableStreamFinishErroring(stream);return}if(controller._queue.length===0)return;let value=PeekQueueValue(controller);value===closeSentinel?WritableStreamDefaultControllerProcessClose(controller):WritableStreamDefaultControllerProcessWrite(controller,value)}function WritableStreamDefaultControllerErrorIfNeeded(controller,error){controller._controlledWritableStream._state==="writable"&&WritableStreamDefaultControllerError(controller,error)}function WritableStreamDefaultControllerProcessClose(controller){let stream=controller._controlledWritableStream;WritableStreamMarkCloseRequestInFlight(stream),DequeueValue(controller);let sinkClosePromise=controller._closeAlgorithm();WritableStreamDefaultControllerClearAlgorithms(controller),uponPromise(sinkClosePromise,()=>{WritableStreamFinishInFlightClose(stream)},reason=>{WritableStreamFinishInFlightCloseWithError(stream,reason)})}function WritableStreamDefaultControllerProcessWrite(controller,chunk){let stream=controller._controlledWritableStream;WritableStreamMarkFirstWriteRequestInFlight(stream);let sinkWritePromise=controller._writeAlgorithm(chunk);uponPromise(sinkWritePromise,()=>{WritableStreamFinishInFlightWrite(stream);let state=stream._state;if(DequeueValue(controller),!WritableStreamCloseQueuedOrInFlight(stream)&&state==="writable"){let backpressure=WritableStreamDefaultControllerGetBackpressure(controller);WritableStreamUpdateBackpressure(stream,backpressure)}WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller)},reason=>{stream._state==="writable"&&WritableStreamDefaultControllerClearAlgorithms(controller),WritableStreamFinishInFlightWriteWithError(stream,reason)})}function WritableStreamDefaultControllerGetBackpressure(controller){return WritableStreamDefaultControllerGetDesiredSize(controller)<=0}function WritableStreamDefaultControllerError(controller,error){let stream=controller._controlledWritableStream;WritableStreamDefaultControllerClearAlgorithms(controller),WritableStreamStartErroring(stream,error)}function streamBrandCheckException$2(name){return new TypeError(`WritableStream.prototype.${name} can only be used on a WritableStream`)}function defaultControllerBrandCheckException$2(name){return new TypeError(`WritableStreamDefaultController.prototype.${name} can only be used on a WritableStreamDefaultController`)}function defaultWriterBrandCheckException(name){return new TypeError(`WritableStreamDefaultWriter.prototype.${name} can only be used on a WritableStreamDefaultWriter`)}function defaultWriterLockException(name){return new TypeError("Cannot "+name+" a stream using a released writer")}function defaultWriterClosedPromiseInitialize(writer){writer._closedPromise=newPromise((resolve,reject)=>{writer._closedPromise_resolve=resolve,writer._closedPromise_reject=reject,writer._closedPromiseState="pending"})}function defaultWriterClosedPromiseInitializeAsRejected(writer,reason){defaultWriterClosedPromiseInitialize(writer),defaultWriterClosedPromiseReject(writer,reason)}function defaultWriterClosedPromiseInitializeAsResolved(writer){defaultWriterClosedPromiseInitialize(writer),defaultWriterClosedPromiseResolve(writer)}function defaultWriterClosedPromiseReject(writer,reason){writer._closedPromise_reject!==void 0&&(setPromiseIsHandledToTrue(writer._closedPromise),writer._closedPromise_reject(reason),writer._closedPromise_resolve=void 0,writer._closedPromise_reject=void 0,writer._closedPromiseState="rejected")}function defaultWriterClosedPromiseResetToRejected(writer,reason){defaultWriterClosedPromiseInitializeAsRejected(writer,reason)}function defaultWriterClosedPromiseResolve(writer){writer._closedPromise_resolve!==void 0&&(writer._closedPromise_resolve(void 0),writer._closedPromise_resolve=void 0,writer._closedPromise_reject=void 0,writer._closedPromiseState="resolved")}function defaultWriterReadyPromiseInitialize(writer){writer._readyPromise=newPromise((resolve,reject)=>{writer._readyPromise_resolve=resolve,writer._readyPromise_reject=reject}),writer._readyPromiseState="pending"}function defaultWriterReadyPromiseInitializeAsRejected(writer,reason){defaultWriterReadyPromiseInitialize(writer),defaultWriterReadyPromiseReject(writer,reason)}function defaultWriterReadyPromiseInitializeAsResolved(writer){defaultWriterReadyPromiseInitialize(writer),defaultWriterReadyPromiseResolve(writer)}function defaultWriterReadyPromiseReject(writer,reason){writer._readyPromise_reject!==void 0&&(setPromiseIsHandledToTrue(writer._readyPromise),writer._readyPromise_reject(reason),writer._readyPromise_resolve=void 0,writer._readyPromise_reject=void 0,writer._readyPromiseState="rejected")}function defaultWriterReadyPromiseReset(writer){defaultWriterReadyPromiseInitialize(writer)}function defaultWriterReadyPromiseResetToRejected(writer,reason){defaultWriterReadyPromiseInitializeAsRejected(writer,reason)}function defaultWriterReadyPromiseResolve(writer){writer._readyPromise_resolve!==void 0&&(writer._readyPromise_resolve(void 0),writer._readyPromise_resolve=void 0,writer._readyPromise_reject=void 0,writer._readyPromiseState="fulfilled")}let NativeDOMException=typeof DOMException<"u"?DOMException:void 0;function isDOMExceptionConstructor(ctor){if(!(typeof ctor=="function"||typeof ctor=="object"))return!1;try{return new ctor,!0}catch{return!1}}function createDOMExceptionPolyfill(){let ctor=function(message,name){this.message=message||"",this.name=name||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return ctor.prototype=Object.create(Error.prototype),Object.defineProperty(ctor.prototype,"constructor",{value:ctor,writable:!0,configurable:!0}),ctor}let DOMException$1=isDOMExceptionConstructor(NativeDOMException)?NativeDOMException:createDOMExceptionPolyfill();function ReadableStreamPipeTo(source,dest,preventClose,preventAbort,preventCancel,signal){let reader=AcquireReadableStreamDefaultReader(source),writer=AcquireWritableStreamDefaultWriter(dest);source._disturbed=!0;let shuttingDown=!1,currentWrite=promiseResolvedWith(void 0);return newPromise((resolve,reject)=>{let abortAlgorithm;if(signal!==void 0){if(abortAlgorithm=()=>{let error=new DOMException$1("Aborted","AbortError"),actions=[];preventAbort||actions.push(()=>dest._state==="writable"?WritableStreamAbort(dest,error):promiseResolvedWith(void 0)),preventCancel||actions.push(()=>source._state==="readable"?ReadableStreamCancel(source,error):promiseResolvedWith(void 0)),shutdownWithAction(()=>Promise.all(actions.map(action=>action())),!0,error)},signal.aborted){abortAlgorithm();return}signal.addEventListener("abort",abortAlgorithm)}function pipeLoop(){return newPromise((resolveLoop,rejectLoop)=>{function next(done){done?resolveLoop():PerformPromiseThen(pipeStep(),next,rejectLoop)}next(!1)})}function pipeStep(){return shuttingDown?promiseResolvedWith(!0):PerformPromiseThen(writer._readyPromise,()=>newPromise((resolveRead,rejectRead)=>{ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{currentWrite=PerformPromiseThen(WritableStreamDefaultWriterWrite(writer,chunk),void 0,noop2),resolveRead(!1)},_closeSteps:()=>resolveRead(!0),_errorSteps:rejectRead})}))}if(isOrBecomesErrored(source,reader._closedPromise,storedError=>{preventAbort?shutdown(!0,storedError):shutdownWithAction(()=>WritableStreamAbort(dest,storedError),!0,storedError)}),isOrBecomesErrored(dest,writer._closedPromise,storedError=>{preventCancel?shutdown(!0,storedError):shutdownWithAction(()=>ReadableStreamCancel(source,storedError),!0,storedError)}),isOrBecomesClosed(source,reader._closedPromise,()=>{preventClose?shutdown():shutdownWithAction(()=>WritableStreamDefaultWriterCloseWithErrorPropagation(writer))}),WritableStreamCloseQueuedOrInFlight(dest)||dest._state==="closed"){let destClosed=new TypeError("the destination writable stream closed before all data could be piped to it");preventCancel?shutdown(!0,destClosed):shutdownWithAction(()=>ReadableStreamCancel(source,destClosed),!0,destClosed)}setPromiseIsHandledToTrue(pipeLoop());function waitForWritesToFinish(){let oldCurrentWrite=currentWrite;return PerformPromiseThen(currentWrite,()=>oldCurrentWrite!==currentWrite?waitForWritesToFinish():void 0)}function isOrBecomesErrored(stream,promise,action){stream._state==="errored"?action(stream._storedError):uponRejection(promise,action)}function isOrBecomesClosed(stream,promise,action){stream._state==="closed"?action():uponFulfillment(promise,action)}function shutdownWithAction(action,originalIsError,originalError){if(shuttingDown)return;shuttingDown=!0,dest._state==="writable"&&!WritableStreamCloseQueuedOrInFlight(dest)?uponFulfillment(waitForWritesToFinish(),doTheRest):doTheRest();function doTheRest(){uponPromise(action(),()=>finalize(originalIsError,originalError),newError=>finalize(!0,newError))}}function shutdown(isError,error){shuttingDown||(shuttingDown=!0,dest._state==="writable"&&!WritableStreamCloseQueuedOrInFlight(dest)?uponFulfillment(waitForWritesToFinish(),()=>finalize(isError,error)):finalize(isError,error))}function finalize(isError,error){WritableStreamDefaultWriterRelease(writer),ReadableStreamReaderGenericRelease(reader),signal!==void 0&&signal.removeEventListener("abort",abortAlgorithm),isError?reject(error):resolve(void 0)}})}class ReadableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("desiredSize");return ReadableStreamDefaultControllerGetDesiredSize(this)}close(){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("close");if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(this))throw new TypeError("The stream is not in a state that permits close");ReadableStreamDefaultControllerClose(this)}enqueue(chunk=void 0){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("enqueue");if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(this))throw new TypeError("The stream is not in a state that permits enqueue");return ReadableStreamDefaultControllerEnqueue(this,chunk)}error(e2=void 0){if(!IsReadableStreamDefaultController(this))throw defaultControllerBrandCheckException$1("error");ReadableStreamDefaultControllerError(this,e2)}[CancelSteps](reason){ResetQueue(this);let result=this._cancelAlgorithm(reason);return ReadableStreamDefaultControllerClearAlgorithms(this),result}[PullSteps](readRequest){let stream=this._controlledReadableStream;if(this._queue.length>0){let chunk=DequeueValue(this);this._closeRequested&&this._queue.length===0?(ReadableStreamDefaultControllerClearAlgorithms(this),ReadableStreamClose(stream)):ReadableStreamDefaultControllerCallPullIfNeeded(this),readRequest._chunkSteps(chunk)}else ReadableStreamAddReadRequest(stream,readRequest),ReadableStreamDefaultControllerCallPullIfNeeded(this)}}Object.defineProperties(ReadableStreamDefaultController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function IsReadableStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledReadableStream")?!1:x2 instanceof ReadableStreamDefaultController}function ReadableStreamDefaultControllerCallPullIfNeeded(controller){if(!ReadableStreamDefaultControllerShouldCallPull(controller))return;if(controller._pulling){controller._pullAgain=!0;return}controller._pulling=!0;let pullPromise=controller._pullAlgorithm();uponPromise(pullPromise,()=>{controller._pulling=!1,controller._pullAgain&&(controller._pullAgain=!1,ReadableStreamDefaultControllerCallPullIfNeeded(controller))},e2=>{ReadableStreamDefaultControllerError(controller,e2)})}function ReadableStreamDefaultControllerShouldCallPull(controller){let stream=controller._controlledReadableStream;return!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)||!controller._started?!1:!!(IsReadableStreamLocked(stream)&&ReadableStreamGetNumReadRequests(stream)>0||ReadableStreamDefaultControllerGetDesiredSize(controller)>0)}function ReadableStreamDefaultControllerClearAlgorithms(controller){controller._pullAlgorithm=void 0,controller._cancelAlgorithm=void 0,controller._strategySizeAlgorithm=void 0}function ReadableStreamDefaultControllerClose(controller){if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller))return;let stream=controller._controlledReadableStream;controller._closeRequested=!0,controller._queue.length===0&&(ReadableStreamDefaultControllerClearAlgorithms(controller),ReadableStreamClose(stream))}function ReadableStreamDefaultControllerEnqueue(controller,chunk){if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller))return;let stream=controller._controlledReadableStream;if(IsReadableStreamLocked(stream)&&ReadableStreamGetNumReadRequests(stream)>0)ReadableStreamFulfillReadRequest(stream,chunk,!1);else{let chunkSize;try{chunkSize=controller._strategySizeAlgorithm(chunk)}catch(chunkSizeE){throw ReadableStreamDefaultControllerError(controller,chunkSizeE),chunkSizeE}try{EnqueueValueWithSize(controller,chunk,chunkSize)}catch(enqueueE){throw ReadableStreamDefaultControllerError(controller,enqueueE),enqueueE}}ReadableStreamDefaultControllerCallPullIfNeeded(controller)}function ReadableStreamDefaultControllerError(controller,e2){let stream=controller._controlledReadableStream;stream._state==="readable"&&(ResetQueue(controller),ReadableStreamDefaultControllerClearAlgorithms(controller),ReadableStreamError(stream,e2))}function ReadableStreamDefaultControllerGetDesiredSize(controller){let state=controller._controlledReadableStream._state;return state==="errored"?null:state==="closed"?0:controller._strategyHWM-controller._queueTotalSize}function ReadableStreamDefaultControllerHasBackpressure(controller){return!ReadableStreamDefaultControllerShouldCallPull(controller)}function ReadableStreamDefaultControllerCanCloseOrEnqueue(controller){let state=controller._controlledReadableStream._state;return!controller._closeRequested&&state==="readable"}function SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm){controller._controlledReadableStream=stream,controller._queue=void 0,controller._queueTotalSize=void 0,ResetQueue(controller),controller._started=!1,controller._closeRequested=!1,controller._pullAgain=!1,controller._pulling=!1,controller._strategySizeAlgorithm=sizeAlgorithm,controller._strategyHWM=highWaterMark,controller._pullAlgorithm=pullAlgorithm,controller._cancelAlgorithm=cancelAlgorithm,stream._readableStreamController=controller;let startResult=startAlgorithm();uponPromise(promiseResolvedWith(startResult),()=>{controller._started=!0,ReadableStreamDefaultControllerCallPullIfNeeded(controller)},r2=>{ReadableStreamDefaultControllerError(controller,r2)})}function SetUpReadableStreamDefaultControllerFromUnderlyingSource(stream,underlyingSource,highWaterMark,sizeAlgorithm){let controller=Object.create(ReadableStreamDefaultController.prototype),startAlgorithm=()=>{},pullAlgorithm=()=>promiseResolvedWith(void 0),cancelAlgorithm=()=>promiseResolvedWith(void 0);underlyingSource.start!==void 0&&(startAlgorithm=()=>underlyingSource.start(controller)),underlyingSource.pull!==void 0&&(pullAlgorithm=()=>underlyingSource.pull(controller)),underlyingSource.cancel!==void 0&&(cancelAlgorithm=reason=>underlyingSource.cancel(reason)),SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm)}function defaultControllerBrandCheckException$1(name){return new TypeError(`ReadableStreamDefaultController.prototype.${name} can only be used on a ReadableStreamDefaultController`)}function ReadableStreamTee(stream,cloneForBranch2){return IsReadableByteStreamController(stream._readableStreamController)?ReadableByteStreamTee(stream):ReadableStreamDefaultTee(stream)}function ReadableStreamDefaultTee(stream,cloneForBranch2){let reader=AcquireReadableStreamDefaultReader(stream),reading=!1,readAgain=!1,canceled1=!1,canceled2=!1,reason1,reason2,branch1,branch2,resolveCancelPromise,cancelPromise=newPromise(resolve=>{resolveCancelPromise=resolve});function pullAlgorithm(){return reading?(readAgain=!0,promiseResolvedWith(void 0)):(reading=!0,ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgain=!1;let chunk1=chunk,chunk2=chunk;canceled1||ReadableStreamDefaultControllerEnqueue(branch1._readableStreamController,chunk1),canceled2||ReadableStreamDefaultControllerEnqueue(branch2._readableStreamController,chunk2),reading=!1,readAgain&&pullAlgorithm()})},_closeSteps:()=>{reading=!1,canceled1||ReadableStreamDefaultControllerClose(branch1._readableStreamController),canceled2||ReadableStreamDefaultControllerClose(branch2._readableStreamController),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}}),promiseResolvedWith(void 0))}function cancel1Algorithm(reason){if(canceled1=!0,reason1=reason,canceled2){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function cancel2Algorithm(reason){if(canceled2=!0,reason2=reason,canceled1){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function startAlgorithm(){}return branch1=CreateReadableStream(startAlgorithm,pullAlgorithm,cancel1Algorithm),branch2=CreateReadableStream(startAlgorithm,pullAlgorithm,cancel2Algorithm),uponRejection(reader._closedPromise,r2=>{ReadableStreamDefaultControllerError(branch1._readableStreamController,r2),ReadableStreamDefaultControllerError(branch2._readableStreamController,r2),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)}),[branch1,branch2]}function ReadableByteStreamTee(stream){let reader=AcquireReadableStreamDefaultReader(stream),reading=!1,readAgainForBranch1=!1,readAgainForBranch2=!1,canceled1=!1,canceled2=!1,reason1,reason2,branch1,branch2,resolveCancelPromise,cancelPromise=newPromise(resolve=>{resolveCancelPromise=resolve});function forwardReaderError(thisReader){uponRejection(thisReader._closedPromise,r2=>{thisReader===reader&&(ReadableByteStreamControllerError(branch1._readableStreamController,r2),ReadableByteStreamControllerError(branch2._readableStreamController,r2),(!canceled1||!canceled2)&&resolveCancelPromise(void 0))})}function pullWithDefaultReader(){IsReadableStreamBYOBReader(reader)&&(ReadableStreamReaderGenericRelease(reader),reader=AcquireReadableStreamDefaultReader(stream),forwardReaderError(reader)),ReadableStreamDefaultReaderRead(reader,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgainForBranch1=!1,readAgainForBranch2=!1;let chunk1=chunk,chunk2=chunk;if(!canceled1&&!canceled2)try{chunk2=CloneAsUint8Array(chunk)}catch(cloneE){ReadableByteStreamControllerError(branch1._readableStreamController,cloneE),ReadableByteStreamControllerError(branch2._readableStreamController,cloneE),resolveCancelPromise(ReadableStreamCancel(stream,cloneE));return}canceled1||ReadableByteStreamControllerEnqueue(branch1._readableStreamController,chunk1),canceled2||ReadableByteStreamControllerEnqueue(branch2._readableStreamController,chunk2),reading=!1,readAgainForBranch1?pull1Algorithm():readAgainForBranch2&&pull2Algorithm()})},_closeSteps:()=>{reading=!1,canceled1||ReadableByteStreamControllerClose(branch1._readableStreamController),canceled2||ReadableByteStreamControllerClose(branch2._readableStreamController),branch1._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(branch1._readableStreamController,0),branch2._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(branch2._readableStreamController,0),(!canceled1||!canceled2)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}})}function pullWithBYOBReader(view,forBranch2){IsReadableStreamDefaultReader(reader)&&(ReadableStreamReaderGenericRelease(reader),reader=AcquireReadableStreamBYOBReader(stream),forwardReaderError(reader));let byobBranch=forBranch2?branch2:branch1,otherBranch=forBranch2?branch1:branch2;ReadableStreamBYOBReaderRead(reader,view,{_chunkSteps:chunk=>{queueMicrotask(()=>{readAgainForBranch1=!1,readAgainForBranch2=!1;let byobCanceled=forBranch2?canceled2:canceled1;if(forBranch2?canceled1:canceled2)byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk);else{let clonedChunk;try{clonedChunk=CloneAsUint8Array(chunk)}catch(cloneE){ReadableByteStreamControllerError(byobBranch._readableStreamController,cloneE),ReadableByteStreamControllerError(otherBranch._readableStreamController,cloneE),resolveCancelPromise(ReadableStreamCancel(stream,cloneE));return}byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk),ReadableByteStreamControllerEnqueue(otherBranch._readableStreamController,clonedChunk)}reading=!1,readAgainForBranch1?pull1Algorithm():readAgainForBranch2&&pull2Algorithm()})},_closeSteps:chunk=>{reading=!1;let byobCanceled=forBranch2?canceled2:canceled1,otherCanceled=forBranch2?canceled1:canceled2;byobCanceled||ReadableByteStreamControllerClose(byobBranch._readableStreamController),otherCanceled||ReadableByteStreamControllerClose(otherBranch._readableStreamController),chunk!==void 0&&(byobCanceled||ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController,chunk),!otherCanceled&&otherBranch._readableStreamController._pendingPullIntos.length>0&&ReadableByteStreamControllerRespond(otherBranch._readableStreamController,0)),(!byobCanceled||!otherCanceled)&&resolveCancelPromise(void 0)},_errorSteps:()=>{reading=!1}})}function pull1Algorithm(){if(reading)return readAgainForBranch1=!0,promiseResolvedWith(void 0);reading=!0;let byobRequest=ReadableByteStreamControllerGetBYOBRequest(branch1._readableStreamController);return byobRequest===null?pullWithDefaultReader():pullWithBYOBReader(byobRequest._view,!1),promiseResolvedWith(void 0)}function pull2Algorithm(){if(reading)return readAgainForBranch2=!0,promiseResolvedWith(void 0);reading=!0;let byobRequest=ReadableByteStreamControllerGetBYOBRequest(branch2._readableStreamController);return byobRequest===null?pullWithDefaultReader():pullWithBYOBReader(byobRequest._view,!0),promiseResolvedWith(void 0)}function cancel1Algorithm(reason){if(canceled1=!0,reason1=reason,canceled2){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function cancel2Algorithm(reason){if(canceled2=!0,reason2=reason,canceled1){let compositeReason=CreateArrayFromList([reason1,reason2]),cancelResult=ReadableStreamCancel(stream,compositeReason);resolveCancelPromise(cancelResult)}return cancelPromise}function startAlgorithm(){}return branch1=CreateReadableByteStream(startAlgorithm,pull1Algorithm,cancel1Algorithm),branch2=CreateReadableByteStream(startAlgorithm,pull2Algorithm,cancel2Algorithm),forwardReaderError(reader),[branch1,branch2]}function convertUnderlyingDefaultOrByteSource(source,context){assertDictionary(source,context);let original=source,autoAllocateChunkSize=original?.autoAllocateChunkSize,cancel=original?.cancel,pull=original?.pull,start=original?.start,type=original?.type;return{autoAllocateChunkSize:autoAllocateChunkSize===void 0?void 0:convertUnsignedLongLongWithEnforceRange(autoAllocateChunkSize,`${context} has member 'autoAllocateChunkSize' that`),cancel:cancel===void 0?void 0:convertUnderlyingSourceCancelCallback(cancel,original,`${context} has member 'cancel' that`),pull:pull===void 0?void 0:convertUnderlyingSourcePullCallback(pull,original,`${context} has member 'pull' that`),start:start===void 0?void 0:convertUnderlyingSourceStartCallback(start,original,`${context} has member 'start' that`),type:type===void 0?void 0:convertReadableStreamType(type,`${context} has member 'type' that`)}}function convertUnderlyingSourceCancelCallback(fn,original,context){return assertFunction(fn,context),reason=>promiseCall(fn,original,[reason])}function convertUnderlyingSourcePullCallback(fn,original,context){return assertFunction(fn,context),controller=>promiseCall(fn,original,[controller])}function convertUnderlyingSourceStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertReadableStreamType(type,context){if(type=`${type}`,type!=="bytes")throw new TypeError(`${context} '${type}' is not a valid enumeration value for ReadableStreamType`);return type}function convertReaderOptions(options,context){assertDictionary(options,context);let mode=options?.mode;return{mode:mode===void 0?void 0:convertReadableStreamReaderMode(mode,`${context} has member 'mode' that`)}}function convertReadableStreamReaderMode(mode,context){if(mode=`${mode}`,mode!=="byob")throw new TypeError(`${context} '${mode}' is not a valid enumeration value for ReadableStreamReaderMode`);return mode}function convertIteratorOptions(options,context){return assertDictionary(options,context),{preventCancel:!!options?.preventCancel}}function convertPipeOptions(options,context){assertDictionary(options,context);let preventAbort=options?.preventAbort,preventCancel=options?.preventCancel,preventClose=options?.preventClose,signal=options?.signal;return signal!==void 0&&assertAbortSignal(signal,`${context} has member 'signal' that`),{preventAbort:!!preventAbort,preventCancel:!!preventCancel,preventClose:!!preventClose,signal}}function assertAbortSignal(signal,context){if(!isAbortSignal2(signal))throw new TypeError(`${context} is not an AbortSignal.`)}function convertReadableWritablePair(pair,context){assertDictionary(pair,context);let readable=pair?.readable;assertRequiredField(readable,"readable","ReadableWritablePair"),assertReadableStream(readable,`${context} has member 'readable' that`);let writable=pair?.writable;return assertRequiredField(writable,"writable","ReadableWritablePair"),assertWritableStream(writable,`${context} has member 'writable' that`),{readable,writable}}class ReadableStream2{constructor(rawUnderlyingSource={},rawStrategy={}){rawUnderlyingSource===void 0?rawUnderlyingSource=null:assertObject(rawUnderlyingSource,"First parameter");let strategy=convertQueuingStrategy(rawStrategy,"Second parameter"),underlyingSource=convertUnderlyingDefaultOrByteSource(rawUnderlyingSource,"First parameter");if(InitializeReadableStream(this),underlyingSource.type==="bytes"){if(strategy.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let highWaterMark=ExtractHighWaterMark(strategy,0);SetUpReadableByteStreamControllerFromUnderlyingSource(this,underlyingSource,highWaterMark)}else{let sizeAlgorithm=ExtractSizeAlgorithm(strategy),highWaterMark=ExtractHighWaterMark(strategy,1);SetUpReadableStreamDefaultControllerFromUnderlyingSource(this,underlyingSource,highWaterMark,sizeAlgorithm)}}get locked(){if(!IsReadableStream(this))throw streamBrandCheckException$1("locked");return IsReadableStreamLocked(this)}cancel(reason=void 0){return IsReadableStream(this)?IsReadableStreamLocked(this)?promiseRejectedWith(new TypeError("Cannot cancel a stream that already has a reader")):ReadableStreamCancel(this,reason):promiseRejectedWith(streamBrandCheckException$1("cancel"))}getReader(rawOptions=void 0){if(!IsReadableStream(this))throw streamBrandCheckException$1("getReader");return convertReaderOptions(rawOptions,"First parameter").mode===void 0?AcquireReadableStreamDefaultReader(this):AcquireReadableStreamBYOBReader(this)}pipeThrough(rawTransform,rawOptions={}){if(!IsReadableStream(this))throw streamBrandCheckException$1("pipeThrough");assertRequiredArgument(rawTransform,1,"pipeThrough");let transform=convertReadableWritablePair(rawTransform,"First parameter"),options=convertPipeOptions(rawOptions,"Second parameter");if(IsReadableStreamLocked(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(IsWritableStreamLocked(transform.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let promise=ReadableStreamPipeTo(this,transform.writable,options.preventClose,options.preventAbort,options.preventCancel,options.signal);return setPromiseIsHandledToTrue(promise),transform.readable}pipeTo(destination,rawOptions={}){if(!IsReadableStream(this))return promiseRejectedWith(streamBrandCheckException$1("pipeTo"));if(destination===void 0)return promiseRejectedWith("Parameter 1 is required in 'pipeTo'.");if(!IsWritableStream(destination))return promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let options;try{options=convertPipeOptions(rawOptions,"Second parameter")}catch(e2){return promiseRejectedWith(e2)}return IsReadableStreamLocked(this)?promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):IsWritableStreamLocked(destination)?promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):ReadableStreamPipeTo(this,destination,options.preventClose,options.preventAbort,options.preventCancel,options.signal)}tee(){if(!IsReadableStream(this))throw streamBrandCheckException$1("tee");let branches=ReadableStreamTee(this);return CreateArrayFromList(branches)}values(rawOptions=void 0){if(!IsReadableStream(this))throw streamBrandCheckException$1("values");let options=convertIteratorOptions(rawOptions,"First parameter");return AcquireReadableStreamAsyncIterator(this,options.preventCancel)}}Object.defineProperties(ReadableStream2.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ReadableStream2.prototype,SymbolPolyfill.toStringTag,{value:"ReadableStream",configurable:!0}),typeof SymbolPolyfill.asyncIterator=="symbol"&&Object.defineProperty(ReadableStream2.prototype,SymbolPolyfill.asyncIterator,{value:ReadableStream2.prototype.values,writable:!0,configurable:!0});function CreateReadableStream(startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark=1,sizeAlgorithm=()=>1){let stream=Object.create(ReadableStream2.prototype);InitializeReadableStream(stream);let controller=Object.create(ReadableStreamDefaultController.prototype);return SetUpReadableStreamDefaultController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,highWaterMark,sizeAlgorithm),stream}function CreateReadableByteStream(startAlgorithm,pullAlgorithm,cancelAlgorithm){let stream=Object.create(ReadableStream2.prototype);InitializeReadableStream(stream);let controller=Object.create(ReadableByteStreamController.prototype);return SetUpReadableByteStreamController(stream,controller,startAlgorithm,pullAlgorithm,cancelAlgorithm,0,void 0),stream}function InitializeReadableStream(stream){stream._state="readable",stream._reader=void 0,stream._storedError=void 0,stream._disturbed=!1}function IsReadableStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_readableStreamController")?!1:x2 instanceof ReadableStream2}function IsReadableStreamLocked(stream){return stream._reader!==void 0}function ReadableStreamCancel(stream,reason){if(stream._disturbed=!0,stream._state==="closed")return promiseResolvedWith(void 0);if(stream._state==="errored")return promiseRejectedWith(stream._storedError);ReadableStreamClose(stream);let reader=stream._reader;reader!==void 0&&IsReadableStreamBYOBReader(reader)&&(reader._readIntoRequests.forEach(readIntoRequest=>{readIntoRequest._closeSteps(void 0)}),reader._readIntoRequests=new SimpleQueue);let sourceCancelPromise=stream._readableStreamController[CancelSteps](reason);return transformPromiseWith(sourceCancelPromise,noop2)}function ReadableStreamClose(stream){stream._state="closed";let reader=stream._reader;reader!==void 0&&(defaultReaderClosedPromiseResolve(reader),IsReadableStreamDefaultReader(reader)&&(reader._readRequests.forEach(readRequest=>{readRequest._closeSteps()}),reader._readRequests=new SimpleQueue))}function ReadableStreamError(stream,e2){stream._state="errored",stream._storedError=e2;let reader=stream._reader;reader!==void 0&&(defaultReaderClosedPromiseReject(reader,e2),IsReadableStreamDefaultReader(reader)?(reader._readRequests.forEach(readRequest=>{readRequest._errorSteps(e2)}),reader._readRequests=new SimpleQueue):(reader._readIntoRequests.forEach(readIntoRequest=>{readIntoRequest._errorSteps(e2)}),reader._readIntoRequests=new SimpleQueue))}function streamBrandCheckException$1(name){return new TypeError(`ReadableStream.prototype.${name} can only be used on a ReadableStream`)}function convertQueuingStrategyInit(init,context){assertDictionary(init,context);let highWaterMark=init?.highWaterMark;return assertRequiredField(highWaterMark,"highWaterMark","QueuingStrategyInit"),{highWaterMark:convertUnrestrictedDouble(highWaterMark)}}let byteLengthSizeFunction=chunk=>chunk.byteLength;try{Object.defineProperty(byteLengthSizeFunction,"name",{value:"size",configurable:!0})}catch{}class ByteLengthQueuingStrategy{constructor(options){assertRequiredArgument(options,1,"ByteLengthQueuingStrategy"),options=convertQueuingStrategyInit(options,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=options.highWaterMark}get highWaterMark(){if(!IsByteLengthQueuingStrategy(this))throw byteLengthBrandCheckException("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!IsByteLengthQueuingStrategy(this))throw byteLengthBrandCheckException("size");return byteLengthSizeFunction}}Object.defineProperties(ByteLengthQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(ByteLengthQueuingStrategy.prototype,SymbolPolyfill.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function byteLengthBrandCheckException(name){return new TypeError(`ByteLengthQueuingStrategy.prototype.${name} can only be used on a ByteLengthQueuingStrategy`)}function IsByteLengthQueuingStrategy(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_byteLengthQueuingStrategyHighWaterMark")?!1:x2 instanceof ByteLengthQueuingStrategy}let countSizeFunction=()=>1;try{Object.defineProperty(countSizeFunction,"name",{value:"size",configurable:!0})}catch{}class CountQueuingStrategy{constructor(options){assertRequiredArgument(options,1,"CountQueuingStrategy"),options=convertQueuingStrategyInit(options,"First parameter"),this._countQueuingStrategyHighWaterMark=options.highWaterMark}get highWaterMark(){if(!IsCountQueuingStrategy(this))throw countBrandCheckException("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!IsCountQueuingStrategy(this))throw countBrandCheckException("size");return countSizeFunction}}Object.defineProperties(CountQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(CountQueuingStrategy.prototype,SymbolPolyfill.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function countBrandCheckException(name){return new TypeError(`CountQueuingStrategy.prototype.${name} can only be used on a CountQueuingStrategy`)}function IsCountQueuingStrategy(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_countQueuingStrategyHighWaterMark")?!1:x2 instanceof CountQueuingStrategy}function convertTransformer(original,context){assertDictionary(original,context);let flush=original?.flush,readableType=original?.readableType,start=original?.start,transform=original?.transform,writableType=original?.writableType;return{flush:flush===void 0?void 0:convertTransformerFlushCallback(flush,original,`${context} has member 'flush' that`),readableType,start:start===void 0?void 0:convertTransformerStartCallback(start,original,`${context} has member 'start' that`),transform:transform===void 0?void 0:convertTransformerTransformCallback(transform,original,`${context} has member 'transform' that`),writableType}}function convertTransformerFlushCallback(fn,original,context){return assertFunction(fn,context),controller=>promiseCall(fn,original,[controller])}function convertTransformerStartCallback(fn,original,context){return assertFunction(fn,context),controller=>reflectCall(fn,original,[controller])}function convertTransformerTransformCallback(fn,original,context){return assertFunction(fn,context),(chunk,controller)=>promiseCall(fn,original,[chunk,controller])}class TransformStream{constructor(rawTransformer={},rawWritableStrategy={},rawReadableStrategy={}){rawTransformer===void 0&&(rawTransformer=null);let writableStrategy=convertQueuingStrategy(rawWritableStrategy,"Second parameter"),readableStrategy=convertQueuingStrategy(rawReadableStrategy,"Third parameter"),transformer=convertTransformer(rawTransformer,"First parameter");if(transformer.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(transformer.writableType!==void 0)throw new RangeError("Invalid writableType specified");let readableHighWaterMark=ExtractHighWaterMark(readableStrategy,0),readableSizeAlgorithm=ExtractSizeAlgorithm(readableStrategy),writableHighWaterMark=ExtractHighWaterMark(writableStrategy,1),writableSizeAlgorithm=ExtractSizeAlgorithm(writableStrategy),startPromise_resolve,startPromise=newPromise(resolve=>{startPromise_resolve=resolve});InitializeTransformStream(this,startPromise,writableHighWaterMark,writableSizeAlgorithm,readableHighWaterMark,readableSizeAlgorithm),SetUpTransformStreamDefaultControllerFromTransformer(this,transformer),transformer.start!==void 0?startPromise_resolve(transformer.start(this._transformStreamController)):startPromise_resolve(void 0)}get readable(){if(!IsTransformStream(this))throw streamBrandCheckException("readable");return this._readable}get writable(){if(!IsTransformStream(this))throw streamBrandCheckException("writable");return this._writable}}Object.defineProperties(TransformStream.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(TransformStream.prototype,SymbolPolyfill.toStringTag,{value:"TransformStream",configurable:!0});function InitializeTransformStream(stream,startPromise,writableHighWaterMark,writableSizeAlgorithm,readableHighWaterMark,readableSizeAlgorithm){function startAlgorithm(){return startPromise}function writeAlgorithm(chunk){return TransformStreamDefaultSinkWriteAlgorithm(stream,chunk)}function abortAlgorithm(reason){return TransformStreamDefaultSinkAbortAlgorithm(stream,reason)}function closeAlgorithm(){return TransformStreamDefaultSinkCloseAlgorithm(stream)}stream._writable=CreateWritableStream(startAlgorithm,writeAlgorithm,closeAlgorithm,abortAlgorithm,writableHighWaterMark,writableSizeAlgorithm);function pullAlgorithm(){return TransformStreamDefaultSourcePullAlgorithm(stream)}function cancelAlgorithm(reason){return TransformStreamErrorWritableAndUnblockWrite(stream,reason),promiseResolvedWith(void 0)}stream._readable=CreateReadableStream(startAlgorithm,pullAlgorithm,cancelAlgorithm,readableHighWaterMark,readableSizeAlgorithm),stream._backpressure=void 0,stream._backpressureChangePromise=void 0,stream._backpressureChangePromise_resolve=void 0,TransformStreamSetBackpressure(stream,!0),stream._transformStreamController=void 0}function IsTransformStream(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_transformStreamController")?!1:x2 instanceof TransformStream}function TransformStreamError(stream,e2){ReadableStreamDefaultControllerError(stream._readable._readableStreamController,e2),TransformStreamErrorWritableAndUnblockWrite(stream,e2)}function TransformStreamErrorWritableAndUnblockWrite(stream,e2){TransformStreamDefaultControllerClearAlgorithms(stream._transformStreamController),WritableStreamDefaultControllerErrorIfNeeded(stream._writable._writableStreamController,e2),stream._backpressure&&TransformStreamSetBackpressure(stream,!1)}function TransformStreamSetBackpressure(stream,backpressure){stream._backpressureChangePromise!==void 0&&stream._backpressureChangePromise_resolve(),stream._backpressureChangePromise=newPromise(resolve=>{stream._backpressureChangePromise_resolve=resolve}),stream._backpressure=backpressure}class TransformStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("desiredSize");let readableController=this._controlledTransformStream._readable._readableStreamController;return ReadableStreamDefaultControllerGetDesiredSize(readableController)}enqueue(chunk=void 0){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("enqueue");TransformStreamDefaultControllerEnqueue(this,chunk)}error(reason=void 0){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("error");TransformStreamDefaultControllerError(this,reason)}terminate(){if(!IsTransformStreamDefaultController(this))throw defaultControllerBrandCheckException("terminate");TransformStreamDefaultControllerTerminate(this)}}Object.defineProperties(TransformStreamDefaultController.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),typeof SymbolPolyfill.toStringTag=="symbol"&&Object.defineProperty(TransformStreamDefaultController.prototype,SymbolPolyfill.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function IsTransformStreamDefaultController(x2){return!typeIsObject(x2)||!Object.prototype.hasOwnProperty.call(x2,"_controlledTransformStream")?!1:x2 instanceof TransformStreamDefaultController}function SetUpTransformStreamDefaultController(stream,controller,transformAlgorithm,flushAlgorithm){controller._controlledTransformStream=stream,stream._transformStreamController=controller,controller._transformAlgorithm=transformAlgorithm,controller._flushAlgorithm=flushAlgorithm}function SetUpTransformStreamDefaultControllerFromTransformer(stream,transformer){let controller=Object.create(TransformStreamDefaultController.prototype),transformAlgorithm=chunk=>{try{return TransformStreamDefaultControllerEnqueue(controller,chunk),promiseResolvedWith(void 0)}catch(transformResultE){return promiseRejectedWith(transformResultE)}},flushAlgorithm=()=>promiseResolvedWith(void 0);transformer.transform!==void 0&&(transformAlgorithm=chunk=>transformer.transform(chunk,controller)),transformer.flush!==void 0&&(flushAlgorithm=()=>transformer.flush(controller)),SetUpTransformStreamDefaultController(stream,controller,transformAlgorithm,flushAlgorithm)}function TransformStreamDefaultControllerClearAlgorithms(controller){controller._transformAlgorithm=void 0,controller._flushAlgorithm=void 0}function TransformStreamDefaultControllerEnqueue(controller,chunk){let stream=controller._controlledTransformStream,readableController=stream._readable._readableStreamController;if(!ReadableStreamDefaultControllerCanCloseOrEnqueue(readableController))throw new TypeError("Readable side is not in a state that permits enqueue");try{ReadableStreamDefaultControllerEnqueue(readableController,chunk)}catch(e2){throw TransformStreamErrorWritableAndUnblockWrite(stream,e2),stream._readable._storedError}ReadableStreamDefaultControllerHasBackpressure(readableController)!==stream._backpressure&&TransformStreamSetBackpressure(stream,!0)}function TransformStreamDefaultControllerError(controller,e2){TransformStreamError(controller._controlledTransformStream,e2)}function TransformStreamDefaultControllerPerformTransform(controller,chunk){let transformPromise=controller._transformAlgorithm(chunk);return transformPromiseWith(transformPromise,void 0,r2=>{throw TransformStreamError(controller._controlledTransformStream,r2),r2})}function TransformStreamDefaultControllerTerminate(controller){let stream=controller._controlledTransformStream,readableController=stream._readable._readableStreamController;ReadableStreamDefaultControllerClose(readableController);let error=new TypeError("TransformStream terminated");TransformStreamErrorWritableAndUnblockWrite(stream,error)}function TransformStreamDefaultSinkWriteAlgorithm(stream,chunk){let controller=stream._transformStreamController;if(stream._backpressure){let backpressureChangePromise=stream._backpressureChangePromise;return transformPromiseWith(backpressureChangePromise,()=>{let writable=stream._writable;if(writable._state==="erroring")throw writable._storedError;return TransformStreamDefaultControllerPerformTransform(controller,chunk)})}return TransformStreamDefaultControllerPerformTransform(controller,chunk)}function TransformStreamDefaultSinkAbortAlgorithm(stream,reason){return TransformStreamError(stream,reason),promiseResolvedWith(void 0)}function TransformStreamDefaultSinkCloseAlgorithm(stream){let readable=stream._readable,controller=stream._transformStreamController,flushPromise=controller._flushAlgorithm();return TransformStreamDefaultControllerClearAlgorithms(controller),transformPromiseWith(flushPromise,()=>{if(readable._state==="errored")throw readable._storedError;ReadableStreamDefaultControllerClose(readable._readableStreamController)},r2=>{throw TransformStreamError(stream,r2),readable._storedError})}function TransformStreamDefaultSourcePullAlgorithm(stream){return TransformStreamSetBackpressure(stream,!1),stream._backpressureChangePromise}function defaultControllerBrandCheckException(name){return new TypeError(`TransformStreamDefaultController.prototype.${name} can only be used on a TransformStreamDefaultController`)}function streamBrandCheckException(name){return new TypeError(`TransformStream.prototype.${name} can only be used on a TransformStream`)}exports2.ByteLengthQueuingStrategy=ByteLengthQueuingStrategy,exports2.CountQueuingStrategy=CountQueuingStrategy,exports2.ReadableByteStreamController=ReadableByteStreamController,exports2.ReadableStream=ReadableStream2,exports2.ReadableStreamBYOBReader=ReadableStreamBYOBReader,exports2.ReadableStreamBYOBRequest=ReadableStreamBYOBRequest,exports2.ReadableStreamDefaultController=ReadableStreamDefaultController,exports2.ReadableStreamDefaultReader=ReadableStreamDefaultReader,exports2.TransformStream=TransformStream,exports2.TransformStreamDefaultController=TransformStreamDefaultController,exports2.WritableStream=WritableStream,exports2.WritableStreamDefaultController=WritableStreamDefaultController,exports2.WritableStreamDefaultWriter=WritableStreamDefaultWriter,Object.defineProperty(exports2,"__esModule",{value:!0})})}});var require_streams=__commonJS({"../../node_modules/fetch-blob/streams.cjs"(){"use strict";if(!globalThis.ReadableStream)try{let process2=require("process"),{emitWarning}=process2;try{process2.emitWarning=()=>{},Object.assign(globalThis,require("stream/web")),process2.emitWarning=emitWarning}catch(error){throw process2.emitWarning=emitWarning,error}}catch{Object.assign(globalThis,require_ponyfill_es2018())}try{let{Blob:Blob3}=require("buffer");Blob3&&!Blob3.prototype.stream&&(Blob3.prototype.stream=function(params){let position=0,blob=this;return new ReadableStream({type:"bytes",async pull(ctrl){let buffer=await blob.slice(position,Math.min(blob.size,position+65536)).arrayBuffer();position+=buffer.byteLength,ctrl.enqueue(new Uint8Array(buffer)),position===blob.size&&ctrl.close()}})})}catch{}}});async function*toIterator(parts,clone2=!0){for(let part of parts)if("stream"in part)yield*part.stream();else if(ArrayBuffer.isView(part))if(clone2){let position=part.byteOffset,end=part.byteOffset+part.byteLength;for(;position!==end;){let size=Math.min(end-position,POOL_SIZE),chunk=part.buffer.slice(position,position+size);position+=chunk.byteLength,yield new Uint8Array(chunk)}}else yield part;else{let position=0,b=part;for(;position!==b.size;){let buffer=await b.slice(position,Math.min(b.size,position+POOL_SIZE)).arrayBuffer();position+=buffer.byteLength,yield new Uint8Array(buffer)}}}var import_streams,POOL_SIZE,_Blob,Blob2,fetch_blob_default,init_fetch_blob=__esm({"../../node_modules/fetch-blob/index.js"(){"use strict";import_streams=__toESM(require_streams(),1);POOL_SIZE=65536;_Blob=class Blob{#parts=[];#type="";#size=0;#endings="transparent";constructor(blobParts=[],options={}){if(typeof blobParts!="object"||blobParts===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof blobParts[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof options!="object"&&typeof options!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");options===null&&(options={});let encoder=new TextEncoder;for(let element of blobParts){let part;ArrayBuffer.isView(element)?part=new Uint8Array(element.buffer.slice(element.byteOffset,element.byteOffset+element.byteLength)):element instanceof ArrayBuffer?part=new Uint8Array(element.slice(0)):element instanceof Blob?part=element:part=encoder.encode(`${element}`),this.#size+=ArrayBuffer.isView(part)?part.byteLength:part.size,this.#parts.push(part)}this.#endings=`${options.endings===void 0?"transparent":options.endings}`;let type=options.type===void 0?"":String(options.type);this.#type=/^[\x20-\x7E]*$/.test(type)?type:""}get size(){return this.#size}get type(){return this.#type}async text(){let decoder=new TextDecoder,str="";for await(let part of toIterator(this.#parts,!1))str+=decoder.decode(part,{stream:!0});return str+=decoder.decode(),str}async arrayBuffer(){let data=new Uint8Array(this.size),offset=0;for await(let chunk of toIterator(this.#parts,!1))data.set(chunk,offset),offset+=chunk.length;return data.buffer}stream(){let it=toIterator(this.#parts,!0);return new globalThis.ReadableStream({type:"bytes",async pull(ctrl){let chunk=await it.next();chunk.done?ctrl.close():ctrl.enqueue(chunk.value)},async cancel(){await it.return()}})}slice(start=0,end=this.size,type=""){let{size}=this,relativeStart=start<0?Math.max(size+start,0):Math.min(start,size),relativeEnd=end<0?Math.max(size+end,0):Math.min(end,size),span=Math.max(relativeEnd-relativeStart,0),parts=this.#parts,blobParts=[],added=0;for(let part of parts){if(added>=span)break;let size2=ArrayBuffer.isView(part)?part.byteLength:part.size;if(relativeStart&&size2<=relativeStart)relativeStart-=size2,relativeEnd-=size2;else{let chunk;ArrayBuffer.isView(part)?(chunk=part.subarray(relativeStart,Math.min(size2,relativeEnd)),added+=chunk.byteLength):(chunk=part.slice(relativeStart,Math.min(size2,relativeEnd)),added+=chunk.size),relativeEnd-=size2,blobParts.push(chunk),relativeStart=0}}let blob=new Blob([],{type:String(type).toLowerCase()});return blob.#size=span,blob.#parts=blobParts,blob}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](object){return object&&typeof object=="object"&&typeof object.constructor=="function"&&(typeof object.stream=="function"||typeof object.arrayBuffer=="function")&&/^(Blob|File)$/.test(object[Symbol.toStringTag])}};Object.defineProperties(_Blob.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Blob2=_Blob,fetch_blob_default=Blob2}});var _File,File2,file_default,init_file=__esm({"../../node_modules/fetch-blob/file.js"(){"use strict";init_fetch_blob();_File=class extends fetch_blob_default{#lastModified=0;#name="";constructor(fileBits,fileName,options={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(fileBits,options),options===null&&(options={});let lastModified=options.lastModified===void 0?Date.now():Number(options.lastModified);Number.isNaN(lastModified)||(this.#lastModified=lastModified),this.#name=String(fileName)}get name(){return this.#name}get lastModified(){return this.#lastModified}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](object){return!!object&&object instanceof fetch_blob_default&&/^(File)$/.test(object[Symbol.toStringTag])}},File2=_File,file_default=File2}});function formDataToBlob(F2,B=fetch_blob_default){var b=`${r()}${r()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),c=[],p=`--${b}\r
2
2
  Content-Disposition: form-data; name="`;return F2.forEach((v,n)=>typeof v=="string"?c.push(p+e(n)+`"\r
3
3
  \r
4
4
  ${v.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
@@ -9,7 +9,7 @@ Content-Type: ${v.type||"application/octet-stream"}\r
9
9
  `,v,`\r
10
10
  `)),c.push(`--${b}--`),new B(c,{type:"multipart/form-data; boundary="+b})}var t,i,h,r,m,f,e,x,FormData,init_esm_min=__esm({"../../node_modules/formdata-polyfill/esm.min.js"(){"use strict";init_fetch_blob();init_file();({toStringTag:t,iterator:i,hasInstance:h}=Symbol),r=Math.random,m="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),f=(a,b,c)=>(a+="",/^(Blob|File)$/.test(b&&b[t])?[(c=c!==void 0?c+"":b[t]=="File"?b.name:"blob",a),b.name!==c||b[t]=="blob"?new file_default([b],c,b):b]:[a,b+""]),e=(c,f3)=>(f3?c:c.replace(/\r?\n|\r/g,`\r
11
11
  `)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),x=(n,a,e2)=>{if(a.length<e2)throw new TypeError(`Failed to execute '${n}' on 'FormData': ${e2} arguments required, but only ${a.length} present.`)},FormData=class{#d=[];constructor(...a){if(a.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[t](){return"FormData"}[i](){return this.entries()}static[h](o){return o&&typeof o=="object"&&o[t]==="FormData"&&!m.some(m2=>typeof o[m2]!="function")}append(...a){x("append",arguments,2),this.#d.push(f(...a))}delete(a){x("delete",arguments,1),a+="",this.#d=this.#d.filter(([b])=>b!==a)}get(a){x("get",arguments,1),a+="";for(var b=this.#d,l=b.length,c=0;c<l;c++)if(b[c][0]===a)return b[c][1];return null}getAll(a,b){return x("getAll",arguments,1),b=[],a+="",this.#d.forEach(c=>c[0]===a&&b.push(c[1])),b}has(a){return x("has",arguments,1),a+="",this.#d.some(b=>b[0]===a)}forEach(a,b){x("forEach",arguments,1);for(var[c,d]of this)a.call(b,d,c,this)}set(...a){x("set",arguments,2);var b=[],c=!0;a=f(...a),this.#d.forEach(d=>{d[0]===a[0]?c&&(c=!b.push(a)):b.push(d)}),c&&b.push(a),this.#d=b}*entries(){yield*this.#d}*keys(){for(var[a]of this)yield a}*values(){for(var[,a]of this)yield a}}}});var require_node_domexception=__commonJS({"../../node_modules/node-domexception/index.js"(exports,module2){"use strict";if(!globalThis.DOMException)try{let{MessageChannel}=require("worker_threads"),port=new MessageChannel().port1,ab=new ArrayBuffer;port.postMessage(ab,[ab,ab])}catch(err){err.constructor.name==="DOMException"&&(globalThis.DOMException=err.constructor)}module2.exports=globalThis.DOMException}});var import_node_fs,import_node_path,import_node_domexception,stat,BlobDataItem,init_from=__esm({"../../node_modules/fetch-blob/from.js"(){"use strict";import_node_fs=require("fs"),import_node_path=require("path"),import_node_domexception=__toESM(require_node_domexception(),1);init_file();init_fetch_blob();({stat}=import_node_fs.promises),BlobDataItem=class _BlobDataItem{#path;#start;constructor(options){this.#path=options.path,this.#start=options.start,this.size=options.size,this.lastModified=options.lastModified}slice(start,end){return new _BlobDataItem({path:this.#path,lastModified:this.lastModified,size:end-start,start:this.#start+start})}async*stream(){let{mtimeMs}=await stat(this.#path);if(mtimeMs>this.lastModified)throw new import_node_domexception.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,import_node_fs.createReadStream)(this.#path,{start:this.#start,end:this.#start+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}}});var multipart_parser_exports={};__export(multipart_parser_exports,{toFormData:()=>toFormData});function _fileName(headerValue){let m2=headerValue.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!m2)return;let match=m2[2]||m2[3]||"",filename=match.slice(match.lastIndexOf("\\")+1);return filename=filename.replace(/%22/g,'"'),filename=filename.replace(/&#(\d{4});/g,(m3,code)=>String.fromCharCode(code)),filename}async function toFormData(Body2,ct){if(!/multipart/i.test(ct))throw new TypeError("Failed to fetch");let m2=ct.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!m2)throw new TypeError("no or bad content-type header, no multipart boundary");let parser=new MultipartParser(m2[1]||m2[2]),headerField,headerValue,entryValue,entryName,contentType,filename,entryChunks=[],formData=new FormData,onPartData=ui8a=>{entryValue+=decoder.decode(ui8a,{stream:!0})},appendToFile=ui8a=>{entryChunks.push(ui8a)},appendFileToFormData=()=>{let file=new file_default(entryChunks,filename,{type:contentType});formData.append(entryName,file)},appendEntryToFormData=()=>{formData.append(entryName,entryValue)},decoder=new TextDecoder("utf-8");decoder.decode(),parser.onPartBegin=function(){parser.onPartData=onPartData,parser.onPartEnd=appendEntryToFormData,headerField="",headerValue="",entryValue="",entryName="",contentType="",filename=null,entryChunks.length=0},parser.onHeaderField=function(ui8a){headerField+=decoder.decode(ui8a,{stream:!0})},parser.onHeaderValue=function(ui8a){headerValue+=decoder.decode(ui8a,{stream:!0})},parser.onHeaderEnd=function(){if(headerValue+=decoder.decode(),headerField=headerField.toLowerCase(),headerField==="content-disposition"){let m3=headerValue.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);m3&&(entryName=m3[2]||m3[3]||""),filename=_fileName(headerValue),filename&&(parser.onPartData=appendToFile,parser.onPartEnd=appendFileToFormData)}else headerField==="content-type"&&(contentType=headerValue);headerValue="",headerField=""};for await(let chunk of Body2)parser.write(chunk);return parser.end(),formData}var s,S,f2,F,LF,CR,SPACE,HYPHEN,COLON,A,Z,lower,noop,MultipartParser,init_multipart_parser=__esm({"node_modules/node-fetch/src/utils/multipart-parser.js"(){"use strict";init_from();init_esm_min();s=0,S={START_BOUNDARY:s++,HEADER_FIELD_START:s++,HEADER_FIELD:s++,HEADER_VALUE_START:s++,HEADER_VALUE:s++,HEADER_VALUE_ALMOST_DONE:s++,HEADERS_ALMOST_DONE:s++,PART_DATA_START:s++,PART_DATA:s++,END:s++},f2=1,F={PART_BOUNDARY:f2,LAST_BOUNDARY:f2*=2},LF=10,CR=13,SPACE=32,HYPHEN=45,COLON=58,A=97,Z=122,lower=c=>c|32,noop=()=>{},MultipartParser=class{constructor(boundary){this.index=0,this.flags=0,this.onHeaderEnd=noop,this.onHeaderField=noop,this.onHeadersEnd=noop,this.onHeaderValue=noop,this.onPartBegin=noop,this.onPartData=noop,this.onPartEnd=noop,this.boundaryChars={},boundary=`\r
12
- --`+boundary;let ui8a=new Uint8Array(boundary.length);for(let i2=0;i2<boundary.length;i2++)ui8a[i2]=boundary.charCodeAt(i2),this.boundaryChars[ui8a[i2]]=!0;this.boundary=ui8a,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=S.START_BOUNDARY}write(data){let i2=0,length_=data.length,previousIndex=this.index,{lookbehind,boundary,boundaryChars,index,state,flags}=this,boundaryLength=this.boundary.length,boundaryEnd=boundaryLength-1,bufferLength=data.length,c,cl,mark=name=>{this[name+"Mark"]=i2},clear=name=>{delete this[name+"Mark"]},callback=(callbackSymbol,start,end,ui8a)=>{(start===void 0||start!==end)&&this[callbackSymbol](ui8a&&ui8a.subarray(start,end))},dataCallback=(name,clear2)=>{let markSymbol=name+"Mark";markSymbol in this&&(clear2?(callback(name,this[markSymbol],i2,data),delete this[markSymbol]):(callback(name,this[markSymbol],data.length,data),this[markSymbol]=0))};for(i2=0;i2<length_;i2++)switch(c=data[i2],state){case S.START_BOUNDARY:if(index===boundary.length-2){if(c===HYPHEN)flags|=F.LAST_BOUNDARY;else if(c!==CR)return;index++;break}else if(index-1===boundary.length-2){if(flags&F.LAST_BOUNDARY&&c===HYPHEN)state=S.END,flags=0;else if(!(flags&F.LAST_BOUNDARY)&&c===LF)index=0,callback("onPartBegin"),state=S.HEADER_FIELD_START;else return;break}c!==boundary[index+2]&&(index=-2),c===boundary[index+2]&&index++;break;case S.HEADER_FIELD_START:state=S.HEADER_FIELD,mark("onHeaderField"),index=0;case S.HEADER_FIELD:if(c===CR){clear("onHeaderField"),state=S.HEADERS_ALMOST_DONE;break}if(index++,c===HYPHEN)break;if(c===COLON){if(index===1)return;dataCallback("onHeaderField",!0),state=S.HEADER_VALUE_START;break}if(cl=lower(c),cl<A||cl>Z)return;break;case S.HEADER_VALUE_START:if(c===SPACE)break;mark("onHeaderValue"),state=S.HEADER_VALUE;case S.HEADER_VALUE:c===CR&&(dataCallback("onHeaderValue",!0),callback("onHeaderEnd"),state=S.HEADER_VALUE_ALMOST_DONE);break;case S.HEADER_VALUE_ALMOST_DONE:if(c!==LF)return;state=S.HEADER_FIELD_START;break;case S.HEADERS_ALMOST_DONE:if(c!==LF)return;callback("onHeadersEnd"),state=S.PART_DATA_START;break;case S.PART_DATA_START:state=S.PART_DATA,mark("onPartData");case S.PART_DATA:if(previousIndex=index,index===0){for(i2+=boundaryEnd;i2<bufferLength&&!(data[i2]in boundaryChars);)i2+=boundaryLength;i2-=boundaryEnd,c=data[i2]}if(index<boundary.length)boundary[index]===c?(index===0&&dataCallback("onPartData",!0),index++):index=0;else if(index===boundary.length)index++,c===CR?flags|=F.PART_BOUNDARY:c===HYPHEN?flags|=F.LAST_BOUNDARY:index=0;else if(index-1===boundary.length)if(flags&F.PART_BOUNDARY){if(index=0,c===LF){flags&=~F.PART_BOUNDARY,callback("onPartEnd"),callback("onPartBegin"),state=S.HEADER_FIELD_START;break}}else flags&F.LAST_BOUNDARY&&c===HYPHEN?(callback("onPartEnd"),state=S.END,flags=0):index=0;if(index>0)lookbehind[index-1]=c;else if(previousIndex>0){let _lookbehind=new Uint8Array(lookbehind.buffer,lookbehind.byteOffset,lookbehind.byteLength);callback("onPartData",0,previousIndex,_lookbehind),previousIndex=0,mark("onPartData"),i2--}break;case S.END:break;default:throw new Error(`Unexpected state entered: ${state}`)}dataCallback("onHeaderField"),dataCallback("onHeaderValue"),dataCallback("onPartData"),this.index=index,this.state=state,this.flags=flags}end(){if(this.state===S.HEADER_FIELD_START&&this.index===0||this.state===S.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==S.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}}});var src_exports={};__export(src_exports,{addToGlobalContext:()=>addToGlobalContext,computeStorybookMetadata:()=>computeStorybookMetadata,getPrecedingUpgrade:()=>getPrecedingUpgrade,getStorybookCoreVersion:()=>getStorybookCoreVersion,getStorybookMetadata:()=>getStorybookMetadata,metaFrameworks:()=>metaFrameworks,oneWayHash:()=>oneWayHash,sanitizeAddonName:()=>sanitizeAddonName,telemetry:()=>telemetry});module.exports=__toCommonJS(src_exports);var import_client_logger=require("@storybook/client-logger");var import_read_pkg_up=__toESM(require("read-pkg-up")),import_detect_package_manager=require("detect-package-manager"),import_core_common3=require("@storybook/core-common"),import_csf_tools=require("@storybook/csf-tools");var fs=__toESM(require("fs-extra")),import_path=__toESM(require("path")),getActualPackageVersions=async packages=>{let packageNames=Object.keys(packages);return Promise.all(packageNames.map(getActualPackageVersion))},getActualPackageVersion=async packageName=>{try{let packageJson=await getActualPackageJson(packageName);return{name:packageName,version:packageJson.version}}catch{return{name:packageName,version:null}}},getActualPackageJson=async packageName=>{let resolvedPackageJson=require.resolve(import_path.default.join(packageName,"package.json"),{paths:[process.cwd()]});return await fs.readJson(resolvedPackageJson)},getStorybookCoreVersion=async()=>{var _a;return(_a=(await Promise.all(["@storybook/core-common","@storybook/core-server"].map(getActualPackageVersion))).find(v=>v.version))==null?void 0:_a.version};var import_fs_extra=__toESM(require("fs-extra")),import_path2=__toESM(require("path")),import_core_common=require("@storybook/core-common"),monorepoConfigs={Nx:"nx.json",Turborepo:"turbo.json",Lerna:"lerna.json",Rush:"rush.json",Lage:"lage.config.json"},getMonorepoType=()=>{let projectRootPath=(0,import_core_common.getProjectRoot)();if(!projectRootPath)return;let monorepoType=Object.keys(monorepoConfigs).find(monorepo=>{let configFile=import_path2.default.join(projectRootPath,monorepoConfigs[monorepo]);return import_fs_extra.default.existsSync(configFile)});if(monorepoType)return monorepoType;if(!import_fs_extra.default.existsSync(import_path2.default.join(projectRootPath,"package.json")))return;let packageJson=import_fs_extra.default.readJsonSync(import_path2.default.join(projectRootPath,"package.json"));if(packageJson!=null&&packageJson.workspaces)return"Workspaces"};var import_path3=require("path");function regexpEscape(str){return str.replace(/[-[/{}()*+?.\\^$|]/g,"\\$&")}function removeAnsiEscapeCodes(input=""){return input.replace(/\u001B\[[0-9;]*m/g,"")}function cleanPaths(str,separator=import_path3.sep){if(!str)return str;let stack=process.cwd().split(separator);for(;stack.length>1;){let currentPath=stack.join(separator),currentRegex=new RegExp(regexpEscape(currentPath),"gi");str=str.replace(currentRegex,"$SNIP");let currentPath2=stack.join(separator+separator),currentRegex2=new RegExp(regexpEscape(currentPath2),"gi");str=str.replace(currentRegex2,"$SNIP"),stack.pop()}return str}function sanitizeError(error,pathSeparator=import_path3.sep){try{error={...JSON.parse(JSON.stringify(error)),message:removeAnsiEscapeCodes(error.message),stack:removeAnsiEscapeCodes(error.stack),cause:error.cause,name:error.name};let errorString=cleanPaths(JSON.stringify(error),pathSeparator);return JSON.parse(errorString)}catch(err){return`Sanitization error: ${err==null?void 0:err.message}`}}var import_path4=__toESM(require("path")),import_core_common2=require("@storybook/core-common");var knownRenderers=["html","react","svelte","vue3","preact","server","vue","web-components","angular","ember"],knownBuilders=["builder-webpack5","builder-vite"];function findMatchingPackage(packageJson,suffixes){let{name="",version,dependencies,devDependencies,peerDependencies}=packageJson,allDependencies={[name]:version,...dependencies,...devDependencies,...peerDependencies};return suffixes.map(suffix=>`@storybook/${suffix}`).find(pkg=>allDependencies[pkg])}var getFrameworkPackageName=packageNameOrPath=>{let normalizedPath=import_path4.default.normalize(packageNameOrPath).replace(new RegExp(/\\/,"g"),"/");return Object.keys(import_core_common2.frameworkPackages).find(pkg=>normalizedPath.endsWith(pkg))||cleanPaths(packageNameOrPath).replace(/.*node_modules[\\/]/,"")};async function getFrameworkInfo(mainConfig){var _a;if(!(mainConfig!=null&&mainConfig.framework))return{};let rawName=typeof mainConfig.framework=="string"?mainConfig.framework:(_a=mainConfig.framework)==null?void 0:_a.name;if(!rawName)return{};let frameworkPackageJson=await getActualPackageJson(rawName);if(!frameworkPackageJson)return{};let builder=findMatchingPackage(frameworkPackageJson,knownBuilders),renderer=findMatchingPackage(frameworkPackageJson,knownRenderers),sanitizedFrameworkName=getFrameworkPackageName(rawName),frameworkOptions=typeof mainConfig.framework=="object"?mainConfig.framework.options:{};return{framework:{name:sanitizedFrameworkName,options:frameworkOptions},builder,renderer}}function getChromaticVersionSpecifier(packageJson){var _a,_b,_c;let dependency=((_a=packageJson.dependencies)==null?void 0:_a.chromatic)||((_b=packageJson.devDependencies)==null?void 0:_b.chromatic)||((_c=packageJson.peerDependencies)==null?void 0:_c.chromatic);return dependency||(packageJson.scripts&&Object.values(packageJson.scripts).find(s2=>s2==null?void 0:s2.match(/chromatic/))?"latest":void 0)}var metaFrameworks={next:"Next","react-scripts":"CRA",gatsby:"Gatsby","@nuxtjs/storybook":"nuxt","@nrwl/storybook":"nx","@vue/cli-service":"vue-cli","@sveltejs/kit":"sveltekit"},sanitizeAddonName=name=>cleanPaths(name).replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,""),computeStorybookMetadata=async({packageJson,mainConfig})=>{var _a;let metadata={generatedAt:new Date().getTime(),hasCustomBabel:!1,hasCustomWebpack:!1,hasStaticDirs:!1,hasStorybookEslint:!1,refCount:0},allDependencies={...packageJson==null?void 0:packageJson.dependencies,...packageJson==null?void 0:packageJson.devDependencies,...packageJson==null?void 0:packageJson.peerDependencies},metaFramework=Object.keys(allDependencies).find(dep=>!!metaFrameworks[dep]);if(metaFramework){let{version}=await getActualPackageVersion(metaFramework);metadata.metaFramework={name:metaFrameworks[metaFramework],packageName:metaFramework,version}}let monorepoType=getMonorepoType();monorepoType&&(metadata.monorepo=monorepoType);try{let packageManagerType=await(0,import_detect_package_manager.detect)({cwd:(0,import_core_common3.getProjectRoot)()}),packageManagerVerson=await(0,import_detect_package_manager.getNpmVersion)(packageManagerType);metadata.packageManager={type:packageManagerType,version:packageManagerVerson}}catch{}metadata.hasCustomBabel=!!mainConfig.babel,metadata.hasCustomWebpack=!!mainConfig.webpackFinal,metadata.hasStaticDirs=!!mainConfig.staticDirs,typeof mainConfig.typescript=="object"&&(metadata.typescriptOptions=mainConfig.typescript);let frameworkInfo=await getFrameworkInfo(mainConfig);typeof mainConfig.refs=="object"&&(metadata.refCount=Object.keys(mainConfig.refs).length),typeof mainConfig.features=="object"&&(metadata.features=mainConfig.features);let addons={};mainConfig.addons&&mainConfig.addons.forEach(addon=>{let addonName,options;typeof addon=="string"?addonName=sanitizeAddonName(addon):(addon.name.includes("addon-essentials")&&(options=addon.options),addonName=sanitizeAddonName(addon.name)),addons[addonName]={options,version:void 0}});let chromaticVersionSpecifier=getChromaticVersionSpecifier(packageJson);chromaticVersionSpecifier&&(addons.chromatic={version:void 0,versionSpecifier:chromaticVersionSpecifier,options:void 0}),(await getActualPackageVersions(addons)).forEach(({name,version})=>{addons[name].version=version});let addonNames=Object.keys(addons),storybookPackages=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")&&!addonNames.includes(dep)).reduce((acc,dep)=>({...acc,[dep]:{version:void 0}}),{});(await getActualPackageVersions(storybookPackages)).forEach(({name,version})=>{storybookPackages[name].version=version});let language=allDependencies.typescript?"typescript":"javascript",hasStorybookEslint=!!allDependencies["eslint-plugin-storybook"],storybookInfo=(0,import_core_common3.getStorybookInfo)(packageJson);try{let{previewConfig}=storybookInfo;if(previewConfig){let config=await(0,import_csf_tools.readConfig)(previewConfig),usesGlobals=!!(config.getFieldNode(["globals"])||config.getFieldNode(["globalTypes"]));metadata.preview={...metadata.preview,usesGlobals}}}catch{}let storybookVersion=(_a=storybookPackages[storybookInfo.frameworkPackage])==null?void 0:_a.version;return{...metadata,...frameworkInfo,storybookVersion,storybookVersionSpecifier:storybookInfo.version,language,storybookPackages,addons,hasStorybookEslint}},cachedMetadata,getStorybookMetadata=async _configDir=>{var _a;if(cachedMetadata)return cachedMetadata;let{packageJson={}}=import_read_pkg_up.default.sync({cwd:process.cwd(),normalize:!1})||{},configDir=(_configDir||(0,import_core_common3.getStorybookConfiguration)(((_a=packageJson==null?void 0:packageJson.scripts)==null?void 0:_a.storybook)||"","-c","--config-dir"))??".storybook",mainConfig=await(0,import_core_common3.loadMainConfig)({configDir});return cachedMetadata=await computeStorybookMetadata({mainConfig,packageJson}),cachedMetadata};var os=__toESM(require("os"));var import_node_http2=__toESM(require("http"),1),import_node_https=__toESM(require("https"),1),import_node_zlib=__toESM(require("zlib"),1),import_node_stream2=__toESM(require("stream"),1),import_node_buffer2=require("buffer");function dataUriToBuffer(uri){if(!/^data:/i.test(uri))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');uri=uri.replace(/\r?\n/g,"");let firstComma=uri.indexOf(",");if(firstComma===-1||firstComma<=4)throw new TypeError("malformed data: URI");let meta=uri.substring(5,firstComma).split(";"),charset="",base64=!1,type=meta[0]||"text/plain",typeFull=type;for(let i2=1;i2<meta.length;i2++)meta[i2]==="base64"?base64=!0:meta[i2]&&(typeFull+=`;${meta[i2]}`,meta[i2].indexOf("charset=")===0&&(charset=meta[i2].substring(8)));!meta[0]&&!charset.length&&(typeFull+=";charset=US-ASCII",charset="US-ASCII");let encoding=base64?"base64":"ascii",data=unescape(uri.substring(firstComma+1)),buffer=Buffer.from(data,encoding);return buffer.type=type,buffer.typeFull=typeFull,buffer.charset=charset,buffer}var dist_default=dataUriToBuffer;var import_node_stream=__toESM(require("stream"),1),import_node_util=require("util"),import_node_buffer=require("buffer");init_fetch_blob();init_esm_min();var FetchBaseError=class extends Error{constructor(message,type){super(message),Error.captureStackTrace(this,this.constructor),this.type=type}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}};var FetchError=class extends FetchBaseError{constructor(message,type,systemError){super(message,type),systemError&&(this.code=this.errno=systemError.code,this.erroredSysCall=systemError.syscall)}};var NAME=Symbol.toStringTag,isURLSearchParameters=object=>typeof object=="object"&&typeof object.append=="function"&&typeof object.delete=="function"&&typeof object.get=="function"&&typeof object.getAll=="function"&&typeof object.has=="function"&&typeof object.set=="function"&&typeof object.sort=="function"&&object[NAME]==="URLSearchParams",isBlob=object=>object&&typeof object=="object"&&typeof object.arrayBuffer=="function"&&typeof object.type=="string"&&typeof object.stream=="function"&&typeof object.constructor=="function"&&/^(Blob|File)$/.test(object[NAME]),isAbortSignal=object=>typeof object=="object"&&(object[NAME]==="AbortSignal"||object[NAME]==="EventTarget"),isDomainOrSubdomain=(destination,original)=>{let orig=new URL(original).hostname,dest=new URL(destination).hostname;return orig===dest||orig.endsWith(`.${dest}`)},isSameProtocol=(destination,original)=>{let orig=new URL(original).protocol,dest=new URL(destination).protocol;return orig===dest};var pipeline=(0,import_node_util.promisify)(import_node_stream.default.pipeline),INTERNALS=Symbol("Body internals"),Body=class{constructor(body,{size=0}={}){let boundary=null;body===null?body=null:isURLSearchParameters(body)?body=import_node_buffer.Buffer.from(body.toString()):isBlob(body)||import_node_buffer.Buffer.isBuffer(body)||(import_node_util.types.isAnyArrayBuffer(body)?body=import_node_buffer.Buffer.from(body):ArrayBuffer.isView(body)?body=import_node_buffer.Buffer.from(body.buffer,body.byteOffset,body.byteLength):body instanceof import_node_stream.default||(body instanceof FormData?(body=formDataToBlob(body),boundary=body.type.split("=")[1]):body=import_node_buffer.Buffer.from(String(body))));let stream=body;import_node_buffer.Buffer.isBuffer(body)?stream=import_node_stream.default.Readable.from(body):isBlob(body)&&(stream=import_node_stream.default.Readable.from(body.stream())),this[INTERNALS]={body,stream,boundary,disturbed:!1,error:null},this.size=size,body instanceof import_node_stream.default&&body.on("error",error_=>{let error=error_ instanceof FetchBaseError?error_:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`,"system",error_);this[INTERNALS].error=error})}get body(){return this[INTERNALS].stream}get bodyUsed(){return this[INTERNALS].disturbed}async arrayBuffer(){let{buffer,byteOffset,byteLength}=await consumeBody(this);return buffer.slice(byteOffset,byteOffset+byteLength)}async formData(){let ct=this.headers.get("content-type");if(ct.startsWith("application/x-www-form-urlencoded")){let formData=new FormData,parameters=new URLSearchParams(await this.text());for(let[name,value]of parameters)formData.append(name,value);return formData}let{toFormData:toFormData2}=await Promise.resolve().then(()=>(init_multipart_parser(),multipart_parser_exports));return toFormData2(this.body,ct)}async blob(){let ct=this.headers&&this.headers.get("content-type")||this[INTERNALS].body&&this[INTERNALS].body.type||"",buf=await this.arrayBuffer();return new fetch_blob_default([buf],{type:ct})}async json(){let text=await this.text();return JSON.parse(text)}async text(){let buffer=await consumeBody(this);return new TextDecoder().decode(buffer)}buffer(){return consumeBody(this)}};Body.prototype.buffer=(0,import_node_util.deprecate)(Body.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,import_node_util.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});async function consumeBody(data){if(data[INTERNALS].disturbed)throw new TypeError(`body used already for: ${data.url}`);if(data[INTERNALS].disturbed=!0,data[INTERNALS].error)throw data[INTERNALS].error;let{body}=data;if(body===null)return import_node_buffer.Buffer.alloc(0);if(!(body instanceof import_node_stream.default))return import_node_buffer.Buffer.alloc(0);let accum=[],accumBytes=0;try{for await(let chunk of body){if(data.size>0&&accumBytes+chunk.length>data.size){let error=new FetchError(`content size at ${data.url} over limit: ${data.size}`,"max-size");throw body.destroy(error),error}accumBytes+=chunk.length,accum.push(chunk)}}catch(error){throw error instanceof FetchBaseError?error:new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`,"system",error)}if(body.readableEnded===!0||body._readableState.ended===!0)try{return accum.every(c=>typeof c=="string")?import_node_buffer.Buffer.from(accum.join("")):import_node_buffer.Buffer.concat(accum,accumBytes)}catch(error){throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`,"system",error)}else throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`)}var clone=(instance,highWaterMark)=>{let p1,p2,{body}=instance[INTERNALS];if(instance.bodyUsed)throw new Error("cannot clone body after it is used");return body instanceof import_node_stream.default&&typeof body.getBoundary!="function"&&(p1=new import_node_stream.PassThrough({highWaterMark}),p2=new import_node_stream.PassThrough({highWaterMark}),body.pipe(p1),body.pipe(p2),instance[INTERNALS].stream=p1,body=p2),body},getNonSpecFormDataBoundary=(0,import_node_util.deprecate)(body=>body.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),extractContentType=(body,request)=>body===null?null:typeof body=="string"?"text/plain;charset=UTF-8":isURLSearchParameters(body)?"application/x-www-form-urlencoded;charset=UTF-8":isBlob(body)?body.type||null:import_node_buffer.Buffer.isBuffer(body)||import_node_util.types.isAnyArrayBuffer(body)||ArrayBuffer.isView(body)?null:body instanceof FormData?`multipart/form-data; boundary=${request[INTERNALS].boundary}`:body&&typeof body.getBoundary=="function"?`multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`:body instanceof import_node_stream.default?null:"text/plain;charset=UTF-8",getTotalBytes=request=>{let{body}=request[INTERNALS];return body===null?0:isBlob(body)?body.size:import_node_buffer.Buffer.isBuffer(body)?body.length:body&&typeof body.getLengthSync=="function"&&body.hasKnownLength&&body.hasKnownLength()?body.getLengthSync():null},writeToStream=async(dest,{body})=>{body===null?dest.end():await pipeline(body,dest)};var import_node_util2=require("util"),import_node_http=__toESM(require("http"),1),validateHeaderName=typeof import_node_http.default.validateHeaderName=="function"?import_node_http.default.validateHeaderName:name=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)){let error=new TypeError(`Header name must be a valid HTTP token [${name}]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),error}},validateHeaderValue=typeof import_node_http.default.validateHeaderValue=="function"?import_node_http.default.validateHeaderValue:(name,value)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)){let error=new TypeError(`Invalid character in header content ["${name}"]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_CHAR"}),error}},Headers=class _Headers extends URLSearchParams{constructor(init){let result=[];if(init instanceof _Headers){let raw=init.raw();for(let[name,values]of Object.entries(raw))result.push(...values.map(value=>[name,value]))}else if(init!=null)if(typeof init=="object"&&!import_node_util2.types.isBoxedPrimitive(init)){let method=init[Symbol.iterator];if(method==null)result.push(...Object.entries(init));else{if(typeof method!="function")throw new TypeError("Header pairs must be iterable");result=[...init].map(pair=>{if(typeof pair!="object"||import_node_util2.types.isBoxedPrimitive(pair))throw new TypeError("Each header pair must be an iterable object");return[...pair]}).map(pair=>{if(pair.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...pair]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return result=result.length>0?result.map(([name,value])=>(validateHeaderName(name),validateHeaderValue(name,String(value)),[String(name).toLowerCase(),String(value)])):void 0,super(result),new Proxy(this,{get(target,p,receiver){switch(p){case"append":case"set":return(name,value)=>(validateHeaderName(name),validateHeaderValue(name,String(value)),URLSearchParams.prototype[p].call(target,String(name).toLowerCase(),String(value)));case"delete":case"has":case"getAll":return name=>(validateHeaderName(name),URLSearchParams.prototype[p].call(target,String(name).toLowerCase()));case"keys":return()=>(target.sort(),new Set(URLSearchParams.prototype.keys.call(target)).keys());default:return Reflect.get(target,p,receiver)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(name){let values=this.getAll(name);if(values.length===0)return null;let value=values.join(", ");return/^content-encoding$/i.test(name)&&(value=value.toLowerCase()),value}forEach(callback,thisArg=void 0){for(let name of this.keys())Reflect.apply(callback,thisArg,[this.get(name),name,this])}*values(){for(let name of this.keys())yield this.get(name)}*entries(){for(let name of this.keys())yield[name,this.get(name)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((result,key)=>(result[key]=this.getAll(key),result),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((result,key)=>{let values=this.getAll(key);return key==="host"?result[key]=values[0]:result[key]=values.length>1?values:values[0],result},{})}};Object.defineProperties(Headers.prototype,["get","entries","forEach","values"].reduce((result,property)=>(result[property]={enumerable:!0},result),{}));function fromRawHeaders(headers=[]){return new Headers(headers.reduce((result,value,index,array)=>(index%2===0&&result.push(array.slice(index,index+2)),result),[]).filter(([name,value])=>{try{return validateHeaderName(name),validateHeaderValue(name,String(value)),!0}catch{return!1}}))}var redirectStatus=new Set([301,302,303,307,308]),isRedirect=code=>redirectStatus.has(code);var INTERNALS2=Symbol("Response internals"),Response=class _Response extends Body{constructor(body=null,options={}){super(body,options);let status=options.status!=null?options.status:200,headers=new Headers(options.headers);if(body!==null&&!headers.has("Content-Type")){let contentType=extractContentType(body,this);contentType&&headers.append("Content-Type",contentType)}this[INTERNALS2]={type:"default",url:options.url,status,statusText:options.statusText||"",headers,counter:options.counter,highWaterMark:options.highWaterMark}}get type(){return this[INTERNALS2].type}get url(){return this[INTERNALS2].url||""}get status(){return this[INTERNALS2].status}get ok(){return this[INTERNALS2].status>=200&&this[INTERNALS2].status<300}get redirected(){return this[INTERNALS2].counter>0}get statusText(){return this[INTERNALS2].statusText}get headers(){return this[INTERNALS2].headers}get highWaterMark(){return this[INTERNALS2].highWaterMark}clone(){return new _Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(url,status=302){if(!isRedirect(status))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new _Response(null,{headers:{location:new URL(url).toString()},status})}static error(){let response=new _Response(null,{status:0,statusText:""});return response[INTERNALS2].type="error",response}static json(data=void 0,init={}){let body=JSON.stringify(data);if(body===void 0)throw new TypeError("data is not JSON serializable");let headers=new Headers(init&&init.headers);return headers.has("content-type")||headers.set("content-type","application/json"),new _Response(body,{...init,headers})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(Response.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});var import_node_url=require("url"),import_node_util3=require("util");var getSearch=parsedURL=>{if(parsedURL.search)return parsedURL.search;let lastOffset=parsedURL.href.length-1,hash=parsedURL.hash||(parsedURL.href[lastOffset]==="#"?"#":"");return parsedURL.href[lastOffset-hash.length]==="?"?"?":""};var import_node_net=require("net");function stripURLForUseAsAReferrer(url,originOnly=!1){return url==null||(url=new URL(url),/^(about|blob|data):$/.test(url.protocol))?"no-referrer":(url.username="",url.password="",url.hash="",originOnly&&(url.pathname="",url.search=""),url)}var ReferrerPolicy=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),DEFAULT_REFERRER_POLICY="strict-origin-when-cross-origin";function validateReferrerPolicy(referrerPolicy){if(!ReferrerPolicy.has(referrerPolicy))throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`);return referrerPolicy}function isOriginPotentiallyTrustworthy(url){if(/^(http|ws)s:$/.test(url.protocol))return!0;let hostIp=url.host.replace(/(^\[)|(]$)/g,""),hostIPVersion=(0,import_node_net.isIP)(hostIp);return hostIPVersion===4&&/^127\./.test(hostIp)||hostIPVersion===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)?!0:url.host==="localhost"||url.host.endsWith(".localhost")?!1:url.protocol==="file:"}function isUrlPotentiallyTrustworthy(url){return/^about:(blank|srcdoc)$/.test(url)||url.protocol==="data:"||/^(blob|filesystem):$/.test(url.protocol)?!0:isOriginPotentiallyTrustworthy(url)}function determineRequestsReferrer(request,{referrerURLCallback,referrerOriginCallback}={}){if(request.referrer==="no-referrer"||request.referrerPolicy==="")return null;let policy=request.referrerPolicy;if(request.referrer==="about:client")return"no-referrer";let referrerSource=request.referrer,referrerURL=stripURLForUseAsAReferrer(referrerSource),referrerOrigin=stripURLForUseAsAReferrer(referrerSource,!0);referrerURL.toString().length>4096&&(referrerURL=referrerOrigin),referrerURLCallback&&(referrerURL=referrerURLCallback(referrerURL)),referrerOriginCallback&&(referrerOrigin=referrerOriginCallback(referrerOrigin));let currentURL=new URL(request.url);switch(policy){case"no-referrer":return"no-referrer";case"origin":return referrerOrigin;case"unsafe-url":return referrerURL;case"strict-origin":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin.toString();case"strict-origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin;case"same-origin":return referrerURL.origin===currentURL.origin?referrerURL:"no-referrer";case"origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:referrerOrigin;case"no-referrer-when-downgrade":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerURL;default:throw new TypeError(`Invalid referrerPolicy: ${policy}`)}}function parseReferrerPolicyFromHeader(headers){let policyTokens=(headers.get("referrer-policy")||"").split(/[,\s]+/),policy="";for(let token of policyTokens)token&&ReferrerPolicy.has(token)&&(policy=token);return policy}var INTERNALS3=Symbol("Request internals"),isRequest=object=>typeof object=="object"&&typeof object[INTERNALS3]=="object",doBadDataWarn=(0,import_node_util3.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Request=class _Request extends Body{constructor(input,init={}){let parsedURL;if(isRequest(input)?parsedURL=new URL(input.url):(parsedURL=new URL(input),input={}),parsedURL.username!==""||parsedURL.password!=="")throw new TypeError(`${parsedURL} is an url with embedded credentials.`);let method=init.method||input.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(method)&&(method=method.toUpperCase()),!isRequest(init)&&"data"in init&&doBadDataWarn(),(init.body!=null||isRequest(input)&&input.body!==null)&&(method==="GET"||method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let inputBody=init.body?init.body:isRequest(input)&&input.body!==null?clone(input):null;super(inputBody,{size:init.size||input.size||0});let headers=new Headers(init.headers||input.headers||{});if(inputBody!==null&&!headers.has("Content-Type")){let contentType=extractContentType(inputBody,this);contentType&&headers.set("Content-Type",contentType)}let signal=isRequest(input)?input.signal:null;if("signal"in init&&(signal=init.signal),signal!=null&&!isAbortSignal(signal))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let referrer=init.referrer==null?input.referrer:init.referrer;if(referrer==="")referrer="no-referrer";else if(referrer){let parsedReferrer=new URL(referrer);referrer=/^about:(\/\/)?client$/.test(parsedReferrer)?"client":parsedReferrer}else referrer=void 0;this[INTERNALS3]={method,redirect:init.redirect||input.redirect||"follow",headers,parsedURL,signal,referrer},this.follow=init.follow===void 0?input.follow===void 0?20:input.follow:init.follow,this.compress=init.compress===void 0?input.compress===void 0?!0:input.compress:init.compress,this.counter=init.counter||input.counter||0,this.agent=init.agent||input.agent,this.highWaterMark=init.highWaterMark||input.highWaterMark||16384,this.insecureHTTPParser=init.insecureHTTPParser||input.insecureHTTPParser||!1,this.referrerPolicy=init.referrerPolicy||input.referrerPolicy||""}get method(){return this[INTERNALS3].method}get url(){return(0,import_node_url.format)(this[INTERNALS3].parsedURL)}get headers(){return this[INTERNALS3].headers}get redirect(){return this[INTERNALS3].redirect}get signal(){return this[INTERNALS3].signal}get referrer(){if(this[INTERNALS3].referrer==="no-referrer")return"";if(this[INTERNALS3].referrer==="client")return"about:client";if(this[INTERNALS3].referrer)return this[INTERNALS3].referrer.toString()}get referrerPolicy(){return this[INTERNALS3].referrerPolicy}set referrerPolicy(referrerPolicy){this[INTERNALS3].referrerPolicy=validateReferrerPolicy(referrerPolicy)}clone(){return new _Request(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Request.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});var getNodeRequestOptions=request=>{let{parsedURL}=request[INTERNALS3],headers=new Headers(request[INTERNALS3].headers);headers.has("Accept")||headers.set("Accept","*/*");let contentLengthValue=null;if(request.body===null&&/^(post|put)$/i.test(request.method)&&(contentLengthValue="0"),request.body!==null){let totalBytes=getTotalBytes(request);typeof totalBytes=="number"&&!Number.isNaN(totalBytes)&&(contentLengthValue=String(totalBytes))}contentLengthValue&&headers.set("Content-Length",contentLengthValue),request.referrerPolicy===""&&(request.referrerPolicy=DEFAULT_REFERRER_POLICY),request.referrer&&request.referrer!=="no-referrer"?request[INTERNALS3].referrer=determineRequestsReferrer(request):request[INTERNALS3].referrer="no-referrer",request[INTERNALS3].referrer instanceof URL&&headers.set("Referer",request.referrer),headers.has("User-Agent")||headers.set("User-Agent","node-fetch"),request.compress&&!headers.has("Accept-Encoding")&&headers.set("Accept-Encoding","gzip, deflate, br");let{agent}=request;typeof agent=="function"&&(agent=agent(parsedURL));let search=getSearch(parsedURL),options={path:parsedURL.pathname+search,method:request.method,headers:headers[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:request.insecureHTTPParser,agent};return{parsedURL,options}};var AbortError=class extends FetchBaseError{constructor(message,type="aborted"){super(message,type)}};init_esm_min();init_from();var supportedSchemas=new Set(["data:","http:","https:"]);async function fetch(url,options_){return new Promise((resolve,reject)=>{let request=new Request(url,options_),{parsedURL,options}=getNodeRequestOptions(request);if(!supportedSchemas.has(parsedURL.protocol))throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/,"")}" is not supported.`);if(parsedURL.protocol==="data:"){let data=dist_default(request.url),response2=new Response(data,{headers:{"Content-Type":data.typeFull}});resolve(response2);return}let send=(parsedURL.protocol==="https:"?import_node_https.default:import_node_http2.default).request,{signal}=request,response=null,abort=()=>{let error=new AbortError("The operation was aborted.");reject(error),request.body&&request.body instanceof import_node_stream2.default.Readable&&request.body.destroy(error),!(!response||!response.body)&&response.body.emit("error",error)};if(signal&&signal.aborted){abort();return}let abortAndFinalize=()=>{abort(),finalize()},request_=send(parsedURL.toString(),options);signal&&signal.addEventListener("abort",abortAndFinalize);let finalize=()=>{request_.abort(),signal&&signal.removeEventListener("abort",abortAndFinalize)};request_.on("error",error=>{reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`,"system",error)),finalize()}),fixResponseChunkedTransferBadEnding(request_,error=>{response&&response.body&&response.body.destroy(error)}),process.version<"v14"&&request_.on("socket",s2=>{let endedWithEventsCount;s2.prependListener("end",()=>{endedWithEventsCount=s2._eventsCount}),s2.prependListener("close",hadError=>{if(response&&endedWithEventsCount<s2._eventsCount&&!hadError){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",response.body.emit("error",error)}})}),request_.on("response",response_=>{request_.setTimeout(0);let headers=fromRawHeaders(response_.rawHeaders);if(isRedirect(response_.statusCode)){let location=headers.get("Location"),locationURL=null;try{locationURL=location===null?null:new URL(location,request.url)}catch{if(request.redirect!=="manual"){reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`,"invalid-redirect")),finalize();return}}switch(request.redirect){case"error":reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`,"no-redirect")),finalize();return;case"manual":break;case"follow":{if(locationURL===null)break;if(request.counter>=request.follow){reject(new FetchError(`maximum redirect reached at: ${request.url}`,"max-redirect")),finalize();return}let requestOptions={headers:new Headers(request.headers),follow:request.follow,counter:request.counter+1,agent:request.agent,compress:request.compress,method:request.method,body:clone(request),signal:request.signal,size:request.size,referrer:request.referrer,referrerPolicy:request.referrerPolicy};if(!isDomainOrSubdomain(request.url,locationURL)||!isSameProtocol(request.url,locationURL))for(let name of["authorization","www-authenticate","cookie","cookie2"])requestOptions.headers.delete(name);if(response_.statusCode!==303&&request.body&&options_.body instanceof import_node_stream2.default.Readable){reject(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect")),finalize();return}(response_.statusCode===303||(response_.statusCode===301||response_.statusCode===302)&&request.method==="POST")&&(requestOptions.method="GET",requestOptions.body=void 0,requestOptions.headers.delete("content-length"));let responseReferrerPolicy=parseReferrerPolicyFromHeader(headers);responseReferrerPolicy&&(requestOptions.referrerPolicy=responseReferrerPolicy),resolve(fetch(new Request(locationURL,requestOptions))),finalize();return}default:return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`))}}signal&&response_.once("end",()=>{signal.removeEventListener("abort",abortAndFinalize)});let body=(0,import_node_stream2.pipeline)(response_,new import_node_stream2.PassThrough,error=>{error&&reject(error)});process.version<"v12.10"&&response_.on("aborted",abortAndFinalize);let responseOptions={url:request.url,status:response_.statusCode,statusText:response_.statusMessage,headers,size:request.size,counter:request.counter,highWaterMark:request.highWaterMark},codings=headers.get("Content-Encoding");if(!request.compress||request.method==="HEAD"||codings===null||response_.statusCode===204||response_.statusCode===304){response=new Response(body,responseOptions),resolve(response);return}let zlibOptions={flush:import_node_zlib.default.Z_SYNC_FLUSH,finishFlush:import_node_zlib.default.Z_SYNC_FLUSH};if(codings==="gzip"||codings==="x-gzip"){body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createGunzip(zlibOptions),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response);return}if(codings==="deflate"||codings==="x-deflate"){let raw=(0,import_node_stream2.pipeline)(response_,new import_node_stream2.PassThrough,error=>{error&&reject(error)});raw.once("data",chunk=>{(chunk[0]&15)===8?body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createInflate(),error=>{error&&reject(error)}):body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createInflateRaw(),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response)}),raw.once("end",()=>{response||(response=new Response(body,responseOptions),resolve(response))});return}if(codings==="br"){body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createBrotliDecompress(),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response);return}response=new Response(body,responseOptions),resolve(response)}),writeToStream(request_,request).catch(reject)})}function fixResponseChunkedTransferBadEnding(request,errorCallback){let LAST_CHUNK=import_node_buffer2.Buffer.from(`0\r
12
+ --`+boundary;let ui8a=new Uint8Array(boundary.length);for(let i2=0;i2<boundary.length;i2++)ui8a[i2]=boundary.charCodeAt(i2),this.boundaryChars[ui8a[i2]]=!0;this.boundary=ui8a,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=S.START_BOUNDARY}write(data){let i2=0,length_=data.length,previousIndex=this.index,{lookbehind,boundary,boundaryChars,index,state,flags}=this,boundaryLength=this.boundary.length,boundaryEnd=boundaryLength-1,bufferLength=data.length,c,cl,mark=name=>{this[name+"Mark"]=i2},clear=name=>{delete this[name+"Mark"]},callback=(callbackSymbol,start,end,ui8a)=>{(start===void 0||start!==end)&&this[callbackSymbol](ui8a&&ui8a.subarray(start,end))},dataCallback=(name,clear2)=>{let markSymbol=name+"Mark";markSymbol in this&&(clear2?(callback(name,this[markSymbol],i2,data),delete this[markSymbol]):(callback(name,this[markSymbol],data.length,data),this[markSymbol]=0))};for(i2=0;i2<length_;i2++)switch(c=data[i2],state){case S.START_BOUNDARY:if(index===boundary.length-2){if(c===HYPHEN)flags|=F.LAST_BOUNDARY;else if(c!==CR)return;index++;break}else if(index-1===boundary.length-2){if(flags&F.LAST_BOUNDARY&&c===HYPHEN)state=S.END,flags=0;else if(!(flags&F.LAST_BOUNDARY)&&c===LF)index=0,callback("onPartBegin"),state=S.HEADER_FIELD_START;else return;break}c!==boundary[index+2]&&(index=-2),c===boundary[index+2]&&index++;break;case S.HEADER_FIELD_START:state=S.HEADER_FIELD,mark("onHeaderField"),index=0;case S.HEADER_FIELD:if(c===CR){clear("onHeaderField"),state=S.HEADERS_ALMOST_DONE;break}if(index++,c===HYPHEN)break;if(c===COLON){if(index===1)return;dataCallback("onHeaderField",!0),state=S.HEADER_VALUE_START;break}if(cl=lower(c),cl<A||cl>Z)return;break;case S.HEADER_VALUE_START:if(c===SPACE)break;mark("onHeaderValue"),state=S.HEADER_VALUE;case S.HEADER_VALUE:c===CR&&(dataCallback("onHeaderValue",!0),callback("onHeaderEnd"),state=S.HEADER_VALUE_ALMOST_DONE);break;case S.HEADER_VALUE_ALMOST_DONE:if(c!==LF)return;state=S.HEADER_FIELD_START;break;case S.HEADERS_ALMOST_DONE:if(c!==LF)return;callback("onHeadersEnd"),state=S.PART_DATA_START;break;case S.PART_DATA_START:state=S.PART_DATA,mark("onPartData");case S.PART_DATA:if(previousIndex=index,index===0){for(i2+=boundaryEnd;i2<bufferLength&&!(data[i2]in boundaryChars);)i2+=boundaryLength;i2-=boundaryEnd,c=data[i2]}if(index<boundary.length)boundary[index]===c?(index===0&&dataCallback("onPartData",!0),index++):index=0;else if(index===boundary.length)index++,c===CR?flags|=F.PART_BOUNDARY:c===HYPHEN?flags|=F.LAST_BOUNDARY:index=0;else if(index-1===boundary.length)if(flags&F.PART_BOUNDARY){if(index=0,c===LF){flags&=~F.PART_BOUNDARY,callback("onPartEnd"),callback("onPartBegin"),state=S.HEADER_FIELD_START;break}}else flags&F.LAST_BOUNDARY&&c===HYPHEN?(callback("onPartEnd"),state=S.END,flags=0):index=0;if(index>0)lookbehind[index-1]=c;else if(previousIndex>0){let _lookbehind=new Uint8Array(lookbehind.buffer,lookbehind.byteOffset,lookbehind.byteLength);callback("onPartData",0,previousIndex,_lookbehind),previousIndex=0,mark("onPartData"),i2--}break;case S.END:break;default:throw new Error(`Unexpected state entered: ${state}`)}dataCallback("onHeaderField"),dataCallback("onHeaderValue"),dataCallback("onPartData"),this.index=index,this.state=state,this.flags=flags}end(){if(this.state===S.HEADER_FIELD_START&&this.index===0||this.state===S.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==S.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}}});var src_exports={};__export(src_exports,{addToGlobalContext:()=>addToGlobalContext,computeStorybookMetadata:()=>computeStorybookMetadata,getPrecedingUpgrade:()=>getPrecedingUpgrade,getStorybookCoreVersion:()=>getStorybookCoreVersion,getStorybookMetadata:()=>getStorybookMetadata,metaFrameworks:()=>metaFrameworks,oneWayHash:()=>oneWayHash,sanitizeAddonName:()=>sanitizeAddonName,telemetry:()=>telemetry});module.exports=__toCommonJS(src_exports);var import_client_logger=require("@storybook/client-logger");var import_read_pkg_up=__toESM(require("read-pkg-up")),import_detect_package_manager=require("detect-package-manager"),import_core_common3=require("@storybook/core-common"),import_csf_tools=require("@storybook/csf-tools");var fs=__toESM(require("fs-extra")),import_path=__toESM(require("path")),getActualPackageVersions=async packages=>{let packageNames=Object.keys(packages);return Promise.all(packageNames.map(getActualPackageVersion))},getActualPackageVersion=async packageName=>{try{let packageJson=await getActualPackageJson(packageName);return{name:packageName,version:packageJson.version}}catch{return{name:packageName,version:null}}},getActualPackageJson=async packageName=>{let resolvedPackageJson=require.resolve(import_path.default.join(packageName,"package.json"),{paths:[process.cwd()]});return await fs.readJson(resolvedPackageJson)},getStorybookCoreVersion=async()=>(await Promise.all(["@storybook/core-common","@storybook/core-server"].map(getActualPackageVersion))).find(v=>v.version)?.version;var import_fs_extra=__toESM(require("fs-extra")),import_path2=__toESM(require("path")),import_core_common=require("@storybook/core-common"),monorepoConfigs={Nx:"nx.json",Turborepo:"turbo.json",Lerna:"lerna.json",Rush:"rush.json",Lage:"lage.config.json"},getMonorepoType=()=>{let projectRootPath=(0,import_core_common.getProjectRoot)();if(!projectRootPath)return;let monorepoType=Object.keys(monorepoConfigs).find(monorepo=>{let configFile=import_path2.default.join(projectRootPath,monorepoConfigs[monorepo]);return import_fs_extra.default.existsSync(configFile)});if(monorepoType)return monorepoType;if(!import_fs_extra.default.existsSync(import_path2.default.join(projectRootPath,"package.json")))return;if(import_fs_extra.default.readJsonSync(import_path2.default.join(projectRootPath,"package.json"))?.workspaces)return"Workspaces"};var import_path3=__toESM(require("path"));function regexpEscape(str){return str.replace(/[-[/{}()*+?.\\^$|]/g,"\\$&")}function removeAnsiEscapeCodes(input=""){return input.replace(/\u001B\[[0-9;]*m/g,"")}function cleanPaths(str,separator=import_path3.default.sep){if(!str)return str;let stack=process.cwd().split(separator);for(;stack.length>1;){let currentPath=stack.join(separator),currentRegex=new RegExp(regexpEscape(currentPath),"gi");str=str.replace(currentRegex,"$SNIP");let currentPath2=stack.join(separator+separator),currentRegex2=new RegExp(regexpEscape(currentPath2),"gi");str=str.replace(currentRegex2,"$SNIP"),stack.pop()}return str}function sanitizeError(error,pathSeparator=import_path3.default.sep){try{error={...JSON.parse(JSON.stringify(error)),message:removeAnsiEscapeCodes(error.message),stack:removeAnsiEscapeCodes(error.stack),cause:error.cause,name:error.name};let errorString=cleanPaths(JSON.stringify(error),pathSeparator);return JSON.parse(errorString)}catch(err){return`Sanitization error: ${err?.message}`}}var import_path4=__toESM(require("path")),import_core_common2=require("@storybook/core-common");var knownRenderers=["html","react","svelte","vue3","preact","server","vue","web-components","angular","ember"],knownBuilders=["builder-webpack5","builder-vite"];function findMatchingPackage(packageJson,suffixes){let{name="",version,dependencies,devDependencies,peerDependencies}=packageJson,allDependencies={[name]:version,...dependencies,...devDependencies,...peerDependencies};return suffixes.map(suffix=>`@storybook/${suffix}`).find(pkg=>allDependencies[pkg])}var getFrameworkPackageName=packageNameOrPath=>{let normalizedPath=import_path4.default.normalize(packageNameOrPath).replace(new RegExp(/\\/,"g"),"/");return Object.keys(import_core_common2.frameworkPackages).find(pkg=>normalizedPath.endsWith(pkg))||cleanPaths(packageNameOrPath).replace(/.*node_modules[\\/]/,"")};async function getFrameworkInfo(mainConfig){if(!mainConfig?.framework)return{};let rawName=typeof mainConfig.framework=="string"?mainConfig.framework:mainConfig.framework?.name;if(!rawName)return{};let frameworkPackageJson=await getActualPackageJson(rawName);if(!frameworkPackageJson)return{};let builder=findMatchingPackage(frameworkPackageJson,knownBuilders),renderer=findMatchingPackage(frameworkPackageJson,knownRenderers),sanitizedFrameworkName=getFrameworkPackageName(rawName),frameworkOptions=typeof mainConfig.framework=="object"?mainConfig.framework.options:{};return{framework:{name:sanitizedFrameworkName,options:frameworkOptions},builder,renderer}}function getChromaticVersionSpecifier(packageJson){let dependency=packageJson.dependencies?.chromatic||packageJson.devDependencies?.chromatic||packageJson.peerDependencies?.chromatic;return dependency||(packageJson.scripts&&Object.values(packageJson.scripts).find(s2=>s2?.match(/chromatic/))?"latest":void 0)}var metaFrameworks={next:"Next","react-scripts":"CRA",gatsby:"Gatsby","@nuxtjs/storybook":"nuxt","@nrwl/storybook":"nx","@vue/cli-service":"vue-cli","@sveltejs/kit":"sveltekit"},sanitizeAddonName=name=>cleanPaths(name).replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,""),computeStorybookMetadata=async({packageJson,mainConfig})=>{let metadata={generatedAt:new Date().getTime(),hasCustomBabel:!1,hasCustomWebpack:!1,hasStaticDirs:!1,hasStorybookEslint:!1,refCount:0},allDependencies={...packageJson?.dependencies,...packageJson?.devDependencies,...packageJson?.peerDependencies},metaFramework=Object.keys(allDependencies).find(dep=>!!metaFrameworks[dep]);if(metaFramework){let{version}=await getActualPackageVersion(metaFramework);metadata.metaFramework={name:metaFrameworks[metaFramework],packageName:metaFramework,version}}let monorepoType=getMonorepoType();monorepoType&&(metadata.monorepo=monorepoType);try{let packageManagerType=await(0,import_detect_package_manager.detect)({cwd:(0,import_core_common3.getProjectRoot)()}),packageManagerVerson=await(0,import_detect_package_manager.getNpmVersion)(packageManagerType);metadata.packageManager={type:packageManagerType,version:packageManagerVerson}}catch{}metadata.hasCustomBabel=!!mainConfig.babel,metadata.hasCustomWebpack=!!mainConfig.webpackFinal,metadata.hasStaticDirs=!!mainConfig.staticDirs,typeof mainConfig.typescript=="object"&&(metadata.typescriptOptions=mainConfig.typescript);let frameworkInfo=await getFrameworkInfo(mainConfig);typeof mainConfig.refs=="object"&&(metadata.refCount=Object.keys(mainConfig.refs).length),typeof mainConfig.features=="object"&&(metadata.features=mainConfig.features);let addons={};mainConfig.addons&&mainConfig.addons.forEach(addon=>{let addonName,options;typeof addon=="string"?addonName=sanitizeAddonName(addon):(addon.name.includes("addon-essentials")&&(options=addon.options),addonName=sanitizeAddonName(addon.name)),addons[addonName]={options,version:void 0}});let chromaticVersionSpecifier=getChromaticVersionSpecifier(packageJson);chromaticVersionSpecifier&&(addons.chromatic={version:void 0,versionSpecifier:chromaticVersionSpecifier,options:void 0}),(await getActualPackageVersions(addons)).forEach(({name,version})=>{addons[name].version=version});let addonNames=Object.keys(addons),storybookPackages=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")&&!addonNames.includes(dep)).reduce((acc,dep)=>({...acc,[dep]:{version:void 0}}),{});(await getActualPackageVersions(storybookPackages)).forEach(({name,version})=>{storybookPackages[name].version=version});let language=allDependencies.typescript?"typescript":"javascript",hasStorybookEslint=!!allDependencies["eslint-plugin-storybook"],storybookInfo=(0,import_core_common3.getStorybookInfo)(packageJson);try{let{previewConfig}=storybookInfo;if(previewConfig){let config=await(0,import_csf_tools.readConfig)(previewConfig),usesGlobals=!!(config.getFieldNode(["globals"])||config.getFieldNode(["globalTypes"]));metadata.preview={...metadata.preview,usesGlobals}}}catch{}let storybookVersion=storybookPackages[storybookInfo.frameworkPackage]?.version;return{...metadata,...frameworkInfo,storybookVersion,storybookVersionSpecifier:storybookInfo.version,language,storybookPackages,addons,hasStorybookEslint}},cachedMetadata,getStorybookMetadata=async _configDir=>{if(cachedMetadata)return cachedMetadata;let{packageJson={}}=import_read_pkg_up.default.sync({cwd:process.cwd(),normalize:!1})||{},configDir=(_configDir||(0,import_core_common3.getStorybookConfiguration)(packageJson?.scripts?.storybook||"","-c","--config-dir"))??".storybook",mainConfig=await(0,import_core_common3.loadMainConfig)({configDir});return cachedMetadata=await computeStorybookMetadata({mainConfig,packageJson}),cachedMetadata};var os=__toESM(require("os"));var import_node_http2=__toESM(require("http"),1),import_node_https=__toESM(require("https"),1),import_node_zlib=__toESM(require("zlib"),1),import_node_stream2=__toESM(require("stream"),1),import_node_buffer2=require("buffer");function dataUriToBuffer(uri){if(!/^data:/i.test(uri))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');uri=uri.replace(/\r?\n/g,"");let firstComma=uri.indexOf(",");if(firstComma===-1||firstComma<=4)throw new TypeError("malformed data: URI");let meta=uri.substring(5,firstComma).split(";"),charset="",base64=!1,type=meta[0]||"text/plain",typeFull=type;for(let i2=1;i2<meta.length;i2++)meta[i2]==="base64"?base64=!0:meta[i2]&&(typeFull+=`;${meta[i2]}`,meta[i2].indexOf("charset=")===0&&(charset=meta[i2].substring(8)));!meta[0]&&!charset.length&&(typeFull+=";charset=US-ASCII",charset="US-ASCII");let encoding=base64?"base64":"ascii",data=unescape(uri.substring(firstComma+1)),buffer=Buffer.from(data,encoding);return buffer.type=type,buffer.typeFull=typeFull,buffer.charset=charset,buffer}var dist_default=dataUriToBuffer;var import_node_stream=__toESM(require("stream"),1),import_node_util=require("util"),import_node_buffer=require("buffer");init_fetch_blob();init_esm_min();var FetchBaseError=class extends Error{constructor(message,type){super(message),Error.captureStackTrace(this,this.constructor),this.type=type}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}};var FetchError=class extends FetchBaseError{constructor(message,type,systemError){super(message,type),systemError&&(this.code=this.errno=systemError.code,this.erroredSysCall=systemError.syscall)}};var NAME=Symbol.toStringTag,isURLSearchParameters=object=>typeof object=="object"&&typeof object.append=="function"&&typeof object.delete=="function"&&typeof object.get=="function"&&typeof object.getAll=="function"&&typeof object.has=="function"&&typeof object.set=="function"&&typeof object.sort=="function"&&object[NAME]==="URLSearchParams",isBlob=object=>object&&typeof object=="object"&&typeof object.arrayBuffer=="function"&&typeof object.type=="string"&&typeof object.stream=="function"&&typeof object.constructor=="function"&&/^(Blob|File)$/.test(object[NAME]),isAbortSignal=object=>typeof object=="object"&&(object[NAME]==="AbortSignal"||object[NAME]==="EventTarget"),isDomainOrSubdomain=(destination,original)=>{let orig=new URL(original).hostname,dest=new URL(destination).hostname;return orig===dest||orig.endsWith(`.${dest}`)},isSameProtocol=(destination,original)=>{let orig=new URL(original).protocol,dest=new URL(destination).protocol;return orig===dest};var pipeline=(0,import_node_util.promisify)(import_node_stream.default.pipeline),INTERNALS=Symbol("Body internals"),Body=class{constructor(body,{size=0}={}){let boundary=null;body===null?body=null:isURLSearchParameters(body)?body=import_node_buffer.Buffer.from(body.toString()):isBlob(body)||import_node_buffer.Buffer.isBuffer(body)||(import_node_util.types.isAnyArrayBuffer(body)?body=import_node_buffer.Buffer.from(body):ArrayBuffer.isView(body)?body=import_node_buffer.Buffer.from(body.buffer,body.byteOffset,body.byteLength):body instanceof import_node_stream.default||(body instanceof FormData?(body=formDataToBlob(body),boundary=body.type.split("=")[1]):body=import_node_buffer.Buffer.from(String(body))));let stream=body;import_node_buffer.Buffer.isBuffer(body)?stream=import_node_stream.default.Readable.from(body):isBlob(body)&&(stream=import_node_stream.default.Readable.from(body.stream())),this[INTERNALS]={body,stream,boundary,disturbed:!1,error:null},this.size=size,body instanceof import_node_stream.default&&body.on("error",error_=>{let error=error_ instanceof FetchBaseError?error_:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`,"system",error_);this[INTERNALS].error=error})}get body(){return this[INTERNALS].stream}get bodyUsed(){return this[INTERNALS].disturbed}async arrayBuffer(){let{buffer,byteOffset,byteLength}=await consumeBody(this);return buffer.slice(byteOffset,byteOffset+byteLength)}async formData(){let ct=this.headers.get("content-type");if(ct.startsWith("application/x-www-form-urlencoded")){let formData=new FormData,parameters=new URLSearchParams(await this.text());for(let[name,value]of parameters)formData.append(name,value);return formData}let{toFormData:toFormData2}=await Promise.resolve().then(()=>(init_multipart_parser(),multipart_parser_exports));return toFormData2(this.body,ct)}async blob(){let ct=this.headers&&this.headers.get("content-type")||this[INTERNALS].body&&this[INTERNALS].body.type||"",buf=await this.arrayBuffer();return new fetch_blob_default([buf],{type:ct})}async json(){let text=await this.text();return JSON.parse(text)}async text(){let buffer=await consumeBody(this);return new TextDecoder().decode(buffer)}buffer(){return consumeBody(this)}};Body.prototype.buffer=(0,import_node_util.deprecate)(Body.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,import_node_util.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});async function consumeBody(data){if(data[INTERNALS].disturbed)throw new TypeError(`body used already for: ${data.url}`);if(data[INTERNALS].disturbed=!0,data[INTERNALS].error)throw data[INTERNALS].error;let{body}=data;if(body===null)return import_node_buffer.Buffer.alloc(0);if(!(body instanceof import_node_stream.default))return import_node_buffer.Buffer.alloc(0);let accum=[],accumBytes=0;try{for await(let chunk of body){if(data.size>0&&accumBytes+chunk.length>data.size){let error=new FetchError(`content size at ${data.url} over limit: ${data.size}`,"max-size");throw body.destroy(error),error}accumBytes+=chunk.length,accum.push(chunk)}}catch(error){throw error instanceof FetchBaseError?error:new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`,"system",error)}if(body.readableEnded===!0||body._readableState.ended===!0)try{return accum.every(c=>typeof c=="string")?import_node_buffer.Buffer.from(accum.join("")):import_node_buffer.Buffer.concat(accum,accumBytes)}catch(error){throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`,"system",error)}else throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`)}var clone=(instance,highWaterMark)=>{let p1,p2,{body}=instance[INTERNALS];if(instance.bodyUsed)throw new Error("cannot clone body after it is used");return body instanceof import_node_stream.default&&typeof body.getBoundary!="function"&&(p1=new import_node_stream.PassThrough({highWaterMark}),p2=new import_node_stream.PassThrough({highWaterMark}),body.pipe(p1),body.pipe(p2),instance[INTERNALS].stream=p1,body=p2),body},getNonSpecFormDataBoundary=(0,import_node_util.deprecate)(body=>body.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),extractContentType=(body,request)=>body===null?null:typeof body=="string"?"text/plain;charset=UTF-8":isURLSearchParameters(body)?"application/x-www-form-urlencoded;charset=UTF-8":isBlob(body)?body.type||null:import_node_buffer.Buffer.isBuffer(body)||import_node_util.types.isAnyArrayBuffer(body)||ArrayBuffer.isView(body)?null:body instanceof FormData?`multipart/form-data; boundary=${request[INTERNALS].boundary}`:body&&typeof body.getBoundary=="function"?`multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`:body instanceof import_node_stream.default?null:"text/plain;charset=UTF-8",getTotalBytes=request=>{let{body}=request[INTERNALS];return body===null?0:isBlob(body)?body.size:import_node_buffer.Buffer.isBuffer(body)?body.length:body&&typeof body.getLengthSync=="function"&&body.hasKnownLength&&body.hasKnownLength()?body.getLengthSync():null},writeToStream=async(dest,{body})=>{body===null?dest.end():await pipeline(body,dest)};var import_node_util2=require("util"),import_node_http=__toESM(require("http"),1),validateHeaderName=typeof import_node_http.default.validateHeaderName=="function"?import_node_http.default.validateHeaderName:name=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)){let error=new TypeError(`Header name must be a valid HTTP token [${name}]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),error}},validateHeaderValue=typeof import_node_http.default.validateHeaderValue=="function"?import_node_http.default.validateHeaderValue:(name,value)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)){let error=new TypeError(`Invalid character in header content ["${name}"]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_CHAR"}),error}},Headers=class _Headers extends URLSearchParams{constructor(init){let result=[];if(init instanceof _Headers){let raw=init.raw();for(let[name,values]of Object.entries(raw))result.push(...values.map(value=>[name,value]))}else if(init!=null)if(typeof init=="object"&&!import_node_util2.types.isBoxedPrimitive(init)){let method=init[Symbol.iterator];if(method==null)result.push(...Object.entries(init));else{if(typeof method!="function")throw new TypeError("Header pairs must be iterable");result=[...init].map(pair=>{if(typeof pair!="object"||import_node_util2.types.isBoxedPrimitive(pair))throw new TypeError("Each header pair must be an iterable object");return[...pair]}).map(pair=>{if(pair.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...pair]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return result=result.length>0?result.map(([name,value])=>(validateHeaderName(name),validateHeaderValue(name,String(value)),[String(name).toLowerCase(),String(value)])):void 0,super(result),new Proxy(this,{get(target,p,receiver){switch(p){case"append":case"set":return(name,value)=>(validateHeaderName(name),validateHeaderValue(name,String(value)),URLSearchParams.prototype[p].call(target,String(name).toLowerCase(),String(value)));case"delete":case"has":case"getAll":return name=>(validateHeaderName(name),URLSearchParams.prototype[p].call(target,String(name).toLowerCase()));case"keys":return()=>(target.sort(),new Set(URLSearchParams.prototype.keys.call(target)).keys());default:return Reflect.get(target,p,receiver)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(name){let values=this.getAll(name);if(values.length===0)return null;let value=values.join(", ");return/^content-encoding$/i.test(name)&&(value=value.toLowerCase()),value}forEach(callback,thisArg=void 0){for(let name of this.keys())Reflect.apply(callback,thisArg,[this.get(name),name,this])}*values(){for(let name of this.keys())yield this.get(name)}*entries(){for(let name of this.keys())yield[name,this.get(name)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((result,key)=>(result[key]=this.getAll(key),result),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((result,key)=>{let values=this.getAll(key);return key==="host"?result[key]=values[0]:result[key]=values.length>1?values:values[0],result},{})}};Object.defineProperties(Headers.prototype,["get","entries","forEach","values"].reduce((result,property)=>(result[property]={enumerable:!0},result),{}));function fromRawHeaders(headers=[]){return new Headers(headers.reduce((result,value,index,array)=>(index%2===0&&result.push(array.slice(index,index+2)),result),[]).filter(([name,value])=>{try{return validateHeaderName(name),validateHeaderValue(name,String(value)),!0}catch{return!1}}))}var redirectStatus=new Set([301,302,303,307,308]),isRedirect=code=>redirectStatus.has(code);var INTERNALS2=Symbol("Response internals"),Response=class _Response extends Body{constructor(body=null,options={}){super(body,options);let status=options.status!=null?options.status:200,headers=new Headers(options.headers);if(body!==null&&!headers.has("Content-Type")){let contentType=extractContentType(body,this);contentType&&headers.append("Content-Type",contentType)}this[INTERNALS2]={type:"default",url:options.url,status,statusText:options.statusText||"",headers,counter:options.counter,highWaterMark:options.highWaterMark}}get type(){return this[INTERNALS2].type}get url(){return this[INTERNALS2].url||""}get status(){return this[INTERNALS2].status}get ok(){return this[INTERNALS2].status>=200&&this[INTERNALS2].status<300}get redirected(){return this[INTERNALS2].counter>0}get statusText(){return this[INTERNALS2].statusText}get headers(){return this[INTERNALS2].headers}get highWaterMark(){return this[INTERNALS2].highWaterMark}clone(){return new _Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(url,status=302){if(!isRedirect(status))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new _Response(null,{headers:{location:new URL(url).toString()},status})}static error(){let response=new _Response(null,{status:0,statusText:""});return response[INTERNALS2].type="error",response}static json(data=void 0,init={}){let body=JSON.stringify(data);if(body===void 0)throw new TypeError("data is not JSON serializable");let headers=new Headers(init&&init.headers);return headers.has("content-type")||headers.set("content-type","application/json"),new _Response(body,{...init,headers})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(Response.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});var import_node_url=require("url"),import_node_util3=require("util");var getSearch=parsedURL=>{if(parsedURL.search)return parsedURL.search;let lastOffset=parsedURL.href.length-1,hash=parsedURL.hash||(parsedURL.href[lastOffset]==="#"?"#":"");return parsedURL.href[lastOffset-hash.length]==="?"?"?":""};var import_node_net=require("net");function stripURLForUseAsAReferrer(url,originOnly=!1){return url==null||(url=new URL(url),/^(about|blob|data):$/.test(url.protocol))?"no-referrer":(url.username="",url.password="",url.hash="",originOnly&&(url.pathname="",url.search=""),url)}var ReferrerPolicy=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),DEFAULT_REFERRER_POLICY="strict-origin-when-cross-origin";function validateReferrerPolicy(referrerPolicy){if(!ReferrerPolicy.has(referrerPolicy))throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`);return referrerPolicy}function isOriginPotentiallyTrustworthy(url){if(/^(http|ws)s:$/.test(url.protocol))return!0;let hostIp=url.host.replace(/(^\[)|(]$)/g,""),hostIPVersion=(0,import_node_net.isIP)(hostIp);return hostIPVersion===4&&/^127\./.test(hostIp)||hostIPVersion===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)?!0:url.host==="localhost"||url.host.endsWith(".localhost")?!1:url.protocol==="file:"}function isUrlPotentiallyTrustworthy(url){return/^about:(blank|srcdoc)$/.test(url)||url.protocol==="data:"||/^(blob|filesystem):$/.test(url.protocol)?!0:isOriginPotentiallyTrustworthy(url)}function determineRequestsReferrer(request,{referrerURLCallback,referrerOriginCallback}={}){if(request.referrer==="no-referrer"||request.referrerPolicy==="")return null;let policy=request.referrerPolicy;if(request.referrer==="about:client")return"no-referrer";let referrerSource=request.referrer,referrerURL=stripURLForUseAsAReferrer(referrerSource),referrerOrigin=stripURLForUseAsAReferrer(referrerSource,!0);referrerURL.toString().length>4096&&(referrerURL=referrerOrigin),referrerURLCallback&&(referrerURL=referrerURLCallback(referrerURL)),referrerOriginCallback&&(referrerOrigin=referrerOriginCallback(referrerOrigin));let currentURL=new URL(request.url);switch(policy){case"no-referrer":return"no-referrer";case"origin":return referrerOrigin;case"unsafe-url":return referrerURL;case"strict-origin":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin.toString();case"strict-origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin;case"same-origin":return referrerURL.origin===currentURL.origin?referrerURL:"no-referrer";case"origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:referrerOrigin;case"no-referrer-when-downgrade":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerURL;default:throw new TypeError(`Invalid referrerPolicy: ${policy}`)}}function parseReferrerPolicyFromHeader(headers){let policyTokens=(headers.get("referrer-policy")||"").split(/[,\s]+/),policy="";for(let token of policyTokens)token&&ReferrerPolicy.has(token)&&(policy=token);return policy}var INTERNALS3=Symbol("Request internals"),isRequest=object=>typeof object=="object"&&typeof object[INTERNALS3]=="object",doBadDataWarn=(0,import_node_util3.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Request=class _Request extends Body{constructor(input,init={}){let parsedURL;if(isRequest(input)?parsedURL=new URL(input.url):(parsedURL=new URL(input),input={}),parsedURL.username!==""||parsedURL.password!=="")throw new TypeError(`${parsedURL} is an url with embedded credentials.`);let method=init.method||input.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(method)&&(method=method.toUpperCase()),!isRequest(init)&&"data"in init&&doBadDataWarn(),(init.body!=null||isRequest(input)&&input.body!==null)&&(method==="GET"||method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let inputBody=init.body?init.body:isRequest(input)&&input.body!==null?clone(input):null;super(inputBody,{size:init.size||input.size||0});let headers=new Headers(init.headers||input.headers||{});if(inputBody!==null&&!headers.has("Content-Type")){let contentType=extractContentType(inputBody,this);contentType&&headers.set("Content-Type",contentType)}let signal=isRequest(input)?input.signal:null;if("signal"in init&&(signal=init.signal),signal!=null&&!isAbortSignal(signal))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let referrer=init.referrer==null?input.referrer:init.referrer;if(referrer==="")referrer="no-referrer";else if(referrer){let parsedReferrer=new URL(referrer);referrer=/^about:(\/\/)?client$/.test(parsedReferrer)?"client":parsedReferrer}else referrer=void 0;this[INTERNALS3]={method,redirect:init.redirect||input.redirect||"follow",headers,parsedURL,signal,referrer},this.follow=init.follow===void 0?input.follow===void 0?20:input.follow:init.follow,this.compress=init.compress===void 0?input.compress===void 0?!0:input.compress:init.compress,this.counter=init.counter||input.counter||0,this.agent=init.agent||input.agent,this.highWaterMark=init.highWaterMark||input.highWaterMark||16384,this.insecureHTTPParser=init.insecureHTTPParser||input.insecureHTTPParser||!1,this.referrerPolicy=init.referrerPolicy||input.referrerPolicy||""}get method(){return this[INTERNALS3].method}get url(){return(0,import_node_url.format)(this[INTERNALS3].parsedURL)}get headers(){return this[INTERNALS3].headers}get redirect(){return this[INTERNALS3].redirect}get signal(){return this[INTERNALS3].signal}get referrer(){if(this[INTERNALS3].referrer==="no-referrer")return"";if(this[INTERNALS3].referrer==="client")return"about:client";if(this[INTERNALS3].referrer)return this[INTERNALS3].referrer.toString()}get referrerPolicy(){return this[INTERNALS3].referrerPolicy}set referrerPolicy(referrerPolicy){this[INTERNALS3].referrerPolicy=validateReferrerPolicy(referrerPolicy)}clone(){return new _Request(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Request.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});var getNodeRequestOptions=request=>{let{parsedURL}=request[INTERNALS3],headers=new Headers(request[INTERNALS3].headers);headers.has("Accept")||headers.set("Accept","*/*");let contentLengthValue=null;if(request.body===null&&/^(post|put)$/i.test(request.method)&&(contentLengthValue="0"),request.body!==null){let totalBytes=getTotalBytes(request);typeof totalBytes=="number"&&!Number.isNaN(totalBytes)&&(contentLengthValue=String(totalBytes))}contentLengthValue&&headers.set("Content-Length",contentLengthValue),request.referrerPolicy===""&&(request.referrerPolicy=DEFAULT_REFERRER_POLICY),request.referrer&&request.referrer!=="no-referrer"?request[INTERNALS3].referrer=determineRequestsReferrer(request):request[INTERNALS3].referrer="no-referrer",request[INTERNALS3].referrer instanceof URL&&headers.set("Referer",request.referrer),headers.has("User-Agent")||headers.set("User-Agent","node-fetch"),request.compress&&!headers.has("Accept-Encoding")&&headers.set("Accept-Encoding","gzip, deflate, br");let{agent}=request;typeof agent=="function"&&(agent=agent(parsedURL));let search=getSearch(parsedURL),options={path:parsedURL.pathname+search,method:request.method,headers:headers[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:request.insecureHTTPParser,agent};return{parsedURL,options}};var AbortError=class extends FetchBaseError{constructor(message,type="aborted"){super(message,type)}};init_esm_min();init_from();var supportedSchemas=new Set(["data:","http:","https:"]);async function fetch(url,options_){return new Promise((resolve,reject)=>{let request=new Request(url,options_),{parsedURL,options}=getNodeRequestOptions(request);if(!supportedSchemas.has(parsedURL.protocol))throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/,"")}" is not supported.`);if(parsedURL.protocol==="data:"){let data=dist_default(request.url),response2=new Response(data,{headers:{"Content-Type":data.typeFull}});resolve(response2);return}let send=(parsedURL.protocol==="https:"?import_node_https.default:import_node_http2.default).request,{signal}=request,response=null,abort=()=>{let error=new AbortError("The operation was aborted.");reject(error),request.body&&request.body instanceof import_node_stream2.default.Readable&&request.body.destroy(error),!(!response||!response.body)&&response.body.emit("error",error)};if(signal&&signal.aborted){abort();return}let abortAndFinalize=()=>{abort(),finalize()},request_=send(parsedURL.toString(),options);signal&&signal.addEventListener("abort",abortAndFinalize);let finalize=()=>{request_.abort(),signal&&signal.removeEventListener("abort",abortAndFinalize)};request_.on("error",error=>{reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`,"system",error)),finalize()}),fixResponseChunkedTransferBadEnding(request_,error=>{response&&response.body&&response.body.destroy(error)}),process.version<"v14"&&request_.on("socket",s2=>{let endedWithEventsCount;s2.prependListener("end",()=>{endedWithEventsCount=s2._eventsCount}),s2.prependListener("close",hadError=>{if(response&&endedWithEventsCount<s2._eventsCount&&!hadError){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",response.body.emit("error",error)}})}),request_.on("response",response_=>{request_.setTimeout(0);let headers=fromRawHeaders(response_.rawHeaders);if(isRedirect(response_.statusCode)){let location=headers.get("Location"),locationURL=null;try{locationURL=location===null?null:new URL(location,request.url)}catch{if(request.redirect!=="manual"){reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`,"invalid-redirect")),finalize();return}}switch(request.redirect){case"error":reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`,"no-redirect")),finalize();return;case"manual":break;case"follow":{if(locationURL===null)break;if(request.counter>=request.follow){reject(new FetchError(`maximum redirect reached at: ${request.url}`,"max-redirect")),finalize();return}let requestOptions={headers:new Headers(request.headers),follow:request.follow,counter:request.counter+1,agent:request.agent,compress:request.compress,method:request.method,body:clone(request),signal:request.signal,size:request.size,referrer:request.referrer,referrerPolicy:request.referrerPolicy};if(!isDomainOrSubdomain(request.url,locationURL)||!isSameProtocol(request.url,locationURL))for(let name of["authorization","www-authenticate","cookie","cookie2"])requestOptions.headers.delete(name);if(response_.statusCode!==303&&request.body&&options_.body instanceof import_node_stream2.default.Readable){reject(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect")),finalize();return}(response_.statusCode===303||(response_.statusCode===301||response_.statusCode===302)&&request.method==="POST")&&(requestOptions.method="GET",requestOptions.body=void 0,requestOptions.headers.delete("content-length"));let responseReferrerPolicy=parseReferrerPolicyFromHeader(headers);responseReferrerPolicy&&(requestOptions.referrerPolicy=responseReferrerPolicy),resolve(fetch(new Request(locationURL,requestOptions))),finalize();return}default:return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`))}}signal&&response_.once("end",()=>{signal.removeEventListener("abort",abortAndFinalize)});let body=(0,import_node_stream2.pipeline)(response_,new import_node_stream2.PassThrough,error=>{error&&reject(error)});process.version<"v12.10"&&response_.on("aborted",abortAndFinalize);let responseOptions={url:request.url,status:response_.statusCode,statusText:response_.statusMessage,headers,size:request.size,counter:request.counter,highWaterMark:request.highWaterMark},codings=headers.get("Content-Encoding");if(!request.compress||request.method==="HEAD"||codings===null||response_.statusCode===204||response_.statusCode===304){response=new Response(body,responseOptions),resolve(response);return}let zlibOptions={flush:import_node_zlib.default.Z_SYNC_FLUSH,finishFlush:import_node_zlib.default.Z_SYNC_FLUSH};if(codings==="gzip"||codings==="x-gzip"){body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createGunzip(zlibOptions),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response);return}if(codings==="deflate"||codings==="x-deflate"){let raw=(0,import_node_stream2.pipeline)(response_,new import_node_stream2.PassThrough,error=>{error&&reject(error)});raw.once("data",chunk=>{(chunk[0]&15)===8?body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createInflate(),error=>{error&&reject(error)}):body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createInflateRaw(),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response)}),raw.once("end",()=>{response||(response=new Response(body,responseOptions),resolve(response))});return}if(codings==="br"){body=(0,import_node_stream2.pipeline)(body,import_node_zlib.default.createBrotliDecompress(),error=>{error&&reject(error)}),response=new Response(body,responseOptions),resolve(response);return}response=new Response(body,responseOptions),resolve(response)}),writeToStream(request_,request).catch(reject)})}function fixResponseChunkedTransferBadEnding(request,errorCallback){let LAST_CHUNK=import_node_buffer2.Buffer.from(`0\r
13
13
  \r
14
- `),isChunkedTransfer=!1,properLastChunkReceived=!1,previousChunk;request.on("response",response=>{let{headers}=response;isChunkedTransfer=headers["transfer-encoding"]==="chunked"&&!headers["content-length"]}),request.on("socket",socket=>{let onSocketClose=()=>{if(isChunkedTransfer&&!properLastChunkReceived){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",errorCallback(error)}},onData=buf=>{properLastChunkReceived=import_node_buffer2.Buffer.compare(buf.slice(-5),LAST_CHUNK)===0,!properLastChunkReceived&&previousChunk&&(properLastChunkReceived=import_node_buffer2.Buffer.compare(previousChunk.slice(-3),LAST_CHUNK.slice(0,3))===0&&import_node_buffer2.Buffer.compare(buf.slice(-2),LAST_CHUNK.slice(3))===0),previousChunk=buf};socket.prependListener("close",onSocketClose),socket.on("data",onData),request.on("close",()=>{socket.removeListener("close",onSocketClose),socket.removeListener("data",onData)})})}var import_fetch_retry=__toESM(require("fetch-retry"));var import_crypto=require("crypto");var urlAlphabet="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var POOL_SIZE_MULTIPLIER=128,pool,poolOffset,fillPool=bytes=>{!pool||pool.length<bytes?(pool=Buffer.allocUnsafe(bytes*POOL_SIZE_MULTIPLIER),(0,import_crypto.randomFillSync)(pool),poolOffset=0):poolOffset+bytes>pool.length&&((0,import_crypto.randomFillSync)(pool),poolOffset=0),poolOffset+=bytes};var nanoid=(size=21)=>{fillPool(size-=0);let id="";for(let i2=poolOffset-size;i2<poolOffset;i2++)id+=urlAlphabet[pool[i2]&63];return id};var import_path5=__toESM(require("path")),import_child_process=require("child_process"),import_core_common4=require("@storybook/core-common");var import_crypto2=require("crypto"),oneWayHash=payload=>{let hash=(0,import_crypto2.createHash)("sha256");return hash.update("storybook-telemetry-salt"),hash.update(payload),hash.digest("hex")};function normalizeGitUrl(rawUrl){return rawUrl.trim().replace(/#.*$/,"").replace(/^.*@/,"").replace(/^.*\/\//,"").replace(":","/")}var anonymousProjectId,getAnonymousProjectId=()=>{if(anonymousProjectId)return anonymousProjectId;let unhashedProjectId;try{let projectRoot=(0,import_core_common4.getProjectRoot)(),projectRootPath=import_path5.default.relative(projectRoot,process.cwd()),originBuffer=(0,import_child_process.execSync)("git config --local --get remote.origin.url",{timeout:1e3,stdio:"pipe"});unhashedProjectId=`${normalizeGitUrl(String(originBuffer))}${projectRootPath}`,anonymousProjectId=oneWayHash(unhashedProjectId)}catch{}return anonymousProjectId};var import_core_common5=require("@storybook/core-common"),operation=Promise.resolve(),setHelper=async(eventType,body)=>{let lastEvents=await import_core_common5.cache.get("lastEvents")||{};lastEvents[eventType]={body,timestamp:Date.now()},await import_core_common5.cache.set("lastEvents",lastEvents)},set=async(eventType,body)=>(await operation,operation=setHelper(eventType,body),operation);var upgradeFields=event=>{let{body,timestamp}=event;return{timestamp,eventType:body==null?void 0:body.eventType,eventId:body==null?void 0:body.eventId,sessionId:body==null?void 0:body.sessionId}},UPGRADE_EVENTS=["init","upgrade"],RUN_EVENTS=["build","dev","error"],lastEvent=(lastEvents,eventTypes)=>{let descendingEvents=eventTypes.map(eventType=>lastEvents==null?void 0:lastEvents[eventType]).filter(Boolean).sort((a,b)=>b.timestamp-a.timestamp);return descendingEvents.length>0?descendingEvents[0]:void 0},getPrecedingUpgrade=async(events=void 0)=>{let lastEvents=events||await import_core_common5.cache.get("lastEvents")||{},lastUpgradeEvent=lastEvent(lastEvents,UPGRADE_EVENTS),lastRunEvent=lastEvent(lastEvents,RUN_EVENTS);if(lastUpgradeEvent)return!(lastRunEvent!=null&&lastRunEvent.timestamp)||lastUpgradeEvent.timestamp>lastRunEvent.timestamp?upgradeFields(lastUpgradeEvent):void 0};var import_core_common6=require("@storybook/core-common"),SESSION_TIMEOUT=1e3*60*60*2,sessionId;var getSessionId=async()=>{let now=Date.now();if(!sessionId){let session=await import_core_common6.cache.get("session");session&&session.lastUsed>=now-SESSION_TIMEOUT?sessionId=session.id:sessionId=nanoid()}return await import_core_common6.cache.set("session",{id:sessionId,lastUsed:now}),sessionId};var URL2=process.env.STORYBOOK_TELEMETRY_URL||"https://storybook.js.org/event-log",fetch2=(0,import_fetch_retry.default)(fetch),tasks=[],addToGlobalContext=(key,value)=>{globalContext[key]=value},getOperatingSystem=()=>{try{let platform2=os.platform();return platform2==="win32"?"Windows":platform2==="darwin"?"macOS":platform2==="linux"?"Linux":`Other: ${platform2}`}catch{return"Unknown"}},globalContext={inCI:!!process.env.CI,isTTY:process.stdout.isTTY,platform:getOperatingSystem()},prepareRequest=async(data,context,options)=>{let{eventType,payload,metadata,...rest}=data,sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};return fetch2(URL2,{method:"POST",body:JSON.stringify(body),headers:{"Content-Type":"application/json"},retries:3,retryOn:[503,504],retryDelay:attempt=>2**attempt*(typeof(options==null?void 0:options.retryDelay)=="number"&&!Number.isNaN(options==null?void 0:options.retryDelay)?options.retryDelay:1e3)})};async function sendTelemetry(data,options={retryDelay:1e3,immediate:!1}){let{eventType,payload,metadata,...rest}=data,context=options.stripMetadata?globalContext:{...globalContext,anonymousId:getAnonymousProjectId()},request;try{request=prepareRequest(data,context,options),tasks.push(request),options.immediate?await Promise.all(tasks):await request;let sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};await set(eventType,body)}catch{}finally{tasks=tasks.filter(task=>task!==request)}}var import_chalk=__toESM(require("chalk")),import_core_common7=require("@storybook/core-common"),TELEMETRY_KEY_NOTIFY_DATE="telemetry-notification-date",logger=console,notify=async()=>{await import_core_common7.cache.get(TELEMETRY_KEY_NOTIFY_DATE,null)||(import_core_common7.cache.set(TELEMETRY_KEY_NOTIFY_DATE,Date.now()),logger.log(),logger.log(`${import_chalk.default.magenta.bold("attention")} => Storybook now collects completely anonymous telemetry regarding usage.`),logger.log("This information is used to shape Storybook's roadmap and prioritize features."),logger.log("You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:"),logger.log(import_chalk.default.cyan("https://storybook.js.org/telemetry")),logger.log())};var telemetry=async(eventType,payload={},options={})=>{var _a;eventType!=="boot"&&await notify();let telemetryData={eventType,payload};try{options!=null&&options.stripMetadata||(telemetryData.metadata=await getStorybookMetadata(options==null?void 0:options.configDir))}catch(error){telemetryData.payload.metadataErrorMessage=sanitizeError(error).message,options!=null&&options.enableCrashReports&&(telemetryData.payload.metadataError=sanitizeError(error))}finally{let{error}=telemetryData.payload;error&&(telemetryData.payload.error=sanitizeError(error)),(!telemetryData.payload.error||options!=null&&options.enableCrashReports)&&((_a=process.env)!=null&&_a.STORYBOOK_TELEMETRY_DEBUG&&(import_client_logger.logger.info(`
14
+ `),isChunkedTransfer=!1,properLastChunkReceived=!1,previousChunk;request.on("response",response=>{let{headers}=response;isChunkedTransfer=headers["transfer-encoding"]==="chunked"&&!headers["content-length"]}),request.on("socket",socket=>{let onSocketClose=()=>{if(isChunkedTransfer&&!properLastChunkReceived){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",errorCallback(error)}},onData=buf=>{properLastChunkReceived=import_node_buffer2.Buffer.compare(buf.slice(-5),LAST_CHUNK)===0,!properLastChunkReceived&&previousChunk&&(properLastChunkReceived=import_node_buffer2.Buffer.compare(previousChunk.slice(-3),LAST_CHUNK.slice(0,3))===0&&import_node_buffer2.Buffer.compare(buf.slice(-2),LAST_CHUNK.slice(3))===0),previousChunk=buf};socket.prependListener("close",onSocketClose),socket.on("data",onData),request.on("close",()=>{socket.removeListener("close",onSocketClose),socket.removeListener("data",onData)})})}var import_fetch_retry=__toESM(require("fetch-retry"));var import_crypto=require("crypto");var urlAlphabet="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var POOL_SIZE_MULTIPLIER=128,pool,poolOffset,fillPool=bytes=>{!pool||pool.length<bytes?(pool=Buffer.allocUnsafe(bytes*POOL_SIZE_MULTIPLIER),(0,import_crypto.randomFillSync)(pool),poolOffset=0):poolOffset+bytes>pool.length&&((0,import_crypto.randomFillSync)(pool),poolOffset=0),poolOffset+=bytes};var nanoid=(size=21)=>{fillPool(size-=0);let id="";for(let i2=poolOffset-size;i2<poolOffset;i2++)id+=urlAlphabet[pool[i2]&63];return id};var import_path5=__toESM(require("path")),import_child_process=require("child_process"),import_core_common4=require("@storybook/core-common");var import_crypto2=require("crypto"),oneWayHash=payload=>{let hash=(0,import_crypto2.createHash)("sha256");return hash.update("storybook-telemetry-salt"),hash.update(payload),hash.digest("hex")};function normalizeGitUrl(rawUrl){return rawUrl.trim().replace(/#.*$/,"").replace(/^.*@/,"").replace(/^.*\/\//,"").replace(":","/")}var anonymousProjectId,getAnonymousProjectId=()=>{if(anonymousProjectId)return anonymousProjectId;let unhashedProjectId;try{let projectRoot=(0,import_core_common4.getProjectRoot)(),projectRootPath=import_path5.default.relative(projectRoot,process.cwd()),originBuffer=(0,import_child_process.execSync)("git config --local --get remote.origin.url",{timeout:1e3,stdio:"pipe"});unhashedProjectId=`${normalizeGitUrl(String(originBuffer))}${projectRootPath}`,anonymousProjectId=oneWayHash(unhashedProjectId)}catch{}return anonymousProjectId};var import_core_common5=require("@storybook/core-common"),operation=Promise.resolve(),setHelper=async(eventType,body)=>{let lastEvents=await import_core_common5.cache.get("lastEvents")||{};lastEvents[eventType]={body,timestamp:Date.now()},await import_core_common5.cache.set("lastEvents",lastEvents)},set=async(eventType,body)=>(await operation,operation=setHelper(eventType,body),operation);var upgradeFields=event=>{let{body,timestamp}=event;return{timestamp,eventType:body?.eventType,eventId:body?.eventId,sessionId:body?.sessionId}},UPGRADE_EVENTS=["init","upgrade"],RUN_EVENTS=["build","dev","error"],lastEvent=(lastEvents,eventTypes)=>{let descendingEvents=eventTypes.map(eventType=>lastEvents?.[eventType]).filter(Boolean).sort((a,b)=>b.timestamp-a.timestamp);return descendingEvents.length>0?descendingEvents[0]:void 0},getPrecedingUpgrade=async(events=void 0)=>{let lastEvents=events||await import_core_common5.cache.get("lastEvents")||{},lastUpgradeEvent=lastEvent(lastEvents,UPGRADE_EVENTS),lastRunEvent=lastEvent(lastEvents,RUN_EVENTS);if(lastUpgradeEvent)return!lastRunEvent?.timestamp||lastUpgradeEvent.timestamp>lastRunEvent.timestamp?upgradeFields(lastUpgradeEvent):void 0};var import_core_common6=require("@storybook/core-common"),SESSION_TIMEOUT=1e3*60*60*2,sessionId;var getSessionId=async()=>{let now=Date.now();if(!sessionId){let session=await import_core_common6.cache.get("session");session&&session.lastUsed>=now-SESSION_TIMEOUT?sessionId=session.id:sessionId=nanoid()}return await import_core_common6.cache.set("session",{id:sessionId,lastUsed:now}),sessionId};var URL2=process.env.STORYBOOK_TELEMETRY_URL||"https://storybook.js.org/event-log",fetch2=(0,import_fetch_retry.default)(fetch),tasks=[],addToGlobalContext=(key,value)=>{globalContext[key]=value},getOperatingSystem=()=>{try{let platform2=os.platform();return platform2==="win32"?"Windows":platform2==="darwin"?"macOS":platform2==="linux"?"Linux":`Other: ${platform2}`}catch{return"Unknown"}},globalContext={inCI:!!process.env.CI,isTTY:process.stdout.isTTY,platform:getOperatingSystem()},prepareRequest=async(data,context,options)=>{let{eventType,payload,metadata,...rest}=data,sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};return fetch2(URL2,{method:"POST",body:JSON.stringify(body),headers:{"Content-Type":"application/json"},retries:3,retryOn:[503,504],retryDelay:attempt=>2**attempt*(typeof options?.retryDelay=="number"&&!Number.isNaN(options?.retryDelay)?options.retryDelay:1e3)})};async function sendTelemetry(data,options={retryDelay:1e3,immediate:!1}){let{eventType,payload,metadata,...rest}=data,context=options.stripMetadata?globalContext:{...globalContext,anonymousId:getAnonymousProjectId()},request;try{request=prepareRequest(data,context,options),tasks.push(request),options.immediate?await Promise.all(tasks):await request;let sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};await set(eventType,body)}catch{}finally{tasks=tasks.filter(task=>task!==request)}}var import_chalk=__toESM(require("chalk")),import_core_common7=require("@storybook/core-common"),TELEMETRY_KEY_NOTIFY_DATE="telemetry-notification-date",logger=console,notify=async()=>{await import_core_common7.cache.get(TELEMETRY_KEY_NOTIFY_DATE,null)||(import_core_common7.cache.set(TELEMETRY_KEY_NOTIFY_DATE,Date.now()),logger.log(),logger.log(`${import_chalk.default.magenta.bold("attention")} => Storybook now collects completely anonymous telemetry regarding usage.`),logger.log("This information is used to shape Storybook's roadmap and prioritize features."),logger.log("You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:"),logger.log(import_chalk.default.cyan("https://storybook.js.org/telemetry")),logger.log())};var telemetry=async(eventType,payload={},options={})=>{eventType!=="boot"&&await notify();let telemetryData={eventType,payload};try{options?.stripMetadata||(telemetryData.metadata=await getStorybookMetadata(options?.configDir))}catch(error){telemetryData.payload.metadataErrorMessage=sanitizeError(error).message,options?.enableCrashReports&&(telemetryData.payload.metadataError=sanitizeError(error))}finally{let{error}=telemetryData.payload;error&&(telemetryData.payload.error=sanitizeError(error)),(!telemetryData.payload.error||options?.enableCrashReports)&&(process.env?.STORYBOOK_TELEMETRY_DEBUG&&(import_client_logger.logger.info(`
15
15
  [telemetry]`),import_client_logger.logger.info(JSON.stringify(telemetryData,null,2))),await sendTelemetry(telemetryData,options))}};0&&(module.exports={addToGlobalContext,computeStorybookMetadata,getPrecedingUpgrade,getStorybookCoreVersion,getStorybookMetadata,metaFrameworks,oneWayHash,sanitizeAddonName,telemetry});
package/dist/index.mjs CHANGED
@@ -6,7 +6,7 @@ import { getProjectRoot, getStorybookInfo, getStorybookConfiguration, loadMainCo
6
6
  import { readConfig } from '@storybook/csf-tools';
7
7
  import * as fs2 from 'fs-extra';
8
8
  import fs2__default from 'fs-extra';
9
- import path2, { sep } from 'path';
9
+ import path2 from 'path';
10
10
  import * as os from 'os';
11
11
  import http from 'http';
12
12
  import https from 'https';
@@ -21,7 +21,7 @@ import { createHash, randomFillSync } from 'crypto';
21
21
  import { execSync } from 'child_process';
22
22
  import chalk from 'chalk';
23
23
 
24
- var getActualPackageVersions=async packages=>{let packageNames=Object.keys(packages);return Promise.all(packageNames.map(getActualPackageVersion))},getActualPackageVersion=async packageName=>{try{let packageJson=await getActualPackageJson(packageName);return {name:packageName,version:packageJson.version}}catch{return {name:packageName,version:null}}},getActualPackageJson=async packageName=>{let resolvedPackageJson=__require.resolve(path2.join(packageName,"package.json"),{paths:[process.cwd()]});return await fs2.readJson(resolvedPackageJson)},getStorybookCoreVersion=async()=>(await Promise.all(["@storybook/core-common","@storybook/core-server"].map(getActualPackageVersion))).find(v=>v.version)?.version;var monorepoConfigs={Nx:"nx.json",Turborepo:"turbo.json",Lerna:"lerna.json",Rush:"rush.json",Lage:"lage.config.json"},getMonorepoType=()=>{let projectRootPath=getProjectRoot();if(!projectRootPath)return;let monorepoType=Object.keys(monorepoConfigs).find(monorepo=>{let configFile=path2.join(projectRootPath,monorepoConfigs[monorepo]);return fs2__default.existsSync(configFile)});if(monorepoType)return monorepoType;if(!fs2__default.existsSync(path2.join(projectRootPath,"package.json")))return;if(fs2__default.readJsonSync(path2.join(projectRootPath,"package.json"))?.workspaces)return "Workspaces"};function regexpEscape(str){return str.replace(/[-[/{}()*+?.\\^$|]/g,"\\$&")}function removeAnsiEscapeCodes(input=""){return input.replace(/\u001B\[[0-9;]*m/g,"")}function cleanPaths(str,separator=sep){if(!str)return str;let stack=process.cwd().split(separator);for(;stack.length>1;){let currentPath=stack.join(separator),currentRegex=new RegExp(regexpEscape(currentPath),"gi");str=str.replace(currentRegex,"$SNIP");let currentPath2=stack.join(separator+separator),currentRegex2=new RegExp(regexpEscape(currentPath2),"gi");str=str.replace(currentRegex2,"$SNIP"),stack.pop();}return str}function sanitizeError(error,pathSeparator=sep){try{error={...JSON.parse(JSON.stringify(error)),message:removeAnsiEscapeCodes(error.message),stack:removeAnsiEscapeCodes(error.stack),cause:error.cause,name:error.name};let errorString=cleanPaths(JSON.stringify(error),pathSeparator);return JSON.parse(errorString)}catch(err){return `Sanitization error: ${err?.message}`}}var knownRenderers=["html","react","svelte","vue3","preact","server","vue","web-components","angular","ember"],knownBuilders=["builder-webpack5","builder-vite"];function findMatchingPackage(packageJson,suffixes){let{name="",version,dependencies,devDependencies,peerDependencies}=packageJson,allDependencies={[name]:version,...dependencies,...devDependencies,...peerDependencies};return suffixes.map(suffix=>`@storybook/${suffix}`).find(pkg=>allDependencies[pkg])}var getFrameworkPackageName=packageNameOrPath=>{let normalizedPath=path2.normalize(packageNameOrPath).replace(new RegExp(/\\/,"g"),"/");return Object.keys(frameworkPackages).find(pkg=>normalizedPath.endsWith(pkg))||cleanPaths(packageNameOrPath).replace(/.*node_modules[\\/]/,"")};async function getFrameworkInfo(mainConfig){if(!mainConfig?.framework)return {};let rawName=typeof mainConfig.framework=="string"?mainConfig.framework:mainConfig.framework?.name;if(!rawName)return {};let frameworkPackageJson=await getActualPackageJson(rawName);if(!frameworkPackageJson)return {};let builder=findMatchingPackage(frameworkPackageJson,knownBuilders),renderer=findMatchingPackage(frameworkPackageJson,knownRenderers),sanitizedFrameworkName=getFrameworkPackageName(rawName),frameworkOptions=typeof mainConfig.framework=="object"?mainConfig.framework.options:{};return {framework:{name:sanitizedFrameworkName,options:frameworkOptions},builder,renderer}}function getChromaticVersionSpecifier(packageJson){let dependency=packageJson.dependencies?.chromatic||packageJson.devDependencies?.chromatic||packageJson.peerDependencies?.chromatic;return dependency||(packageJson.scripts&&Object.values(packageJson.scripts).find(s=>s?.match(/chromatic/))?"latest":void 0)}var metaFrameworks={next:"Next","react-scripts":"CRA",gatsby:"Gatsby","@nuxtjs/storybook":"nuxt","@nrwl/storybook":"nx","@vue/cli-service":"vue-cli","@sveltejs/kit":"sveltekit"},sanitizeAddonName=name=>cleanPaths(name).replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,""),computeStorybookMetadata=async({packageJson,mainConfig})=>{let metadata={generatedAt:new Date().getTime(),hasCustomBabel:!1,hasCustomWebpack:!1,hasStaticDirs:!1,hasStorybookEslint:!1,refCount:0},allDependencies={...packageJson?.dependencies,...packageJson?.devDependencies,...packageJson?.peerDependencies},metaFramework=Object.keys(allDependencies).find(dep=>!!metaFrameworks[dep]);if(metaFramework){let{version}=await getActualPackageVersion(metaFramework);metadata.metaFramework={name:metaFrameworks[metaFramework],packageName:metaFramework,version};}let monorepoType=getMonorepoType();monorepoType&&(metadata.monorepo=monorepoType);try{let packageManagerType=await detect({cwd:getProjectRoot()}),packageManagerVerson=await getNpmVersion(packageManagerType);metadata.packageManager={type:packageManagerType,version:packageManagerVerson};}catch{}metadata.hasCustomBabel=!!mainConfig.babel,metadata.hasCustomWebpack=!!mainConfig.webpackFinal,metadata.hasStaticDirs=!!mainConfig.staticDirs,typeof mainConfig.typescript=="object"&&(metadata.typescriptOptions=mainConfig.typescript);let frameworkInfo=await getFrameworkInfo(mainConfig);typeof mainConfig.refs=="object"&&(metadata.refCount=Object.keys(mainConfig.refs).length),typeof mainConfig.features=="object"&&(metadata.features=mainConfig.features);let addons={};mainConfig.addons&&mainConfig.addons.forEach(addon=>{let addonName,options;typeof addon=="string"?addonName=sanitizeAddonName(addon):(addon.name.includes("addon-essentials")&&(options=addon.options),addonName=sanitizeAddonName(addon.name)),addons[addonName]={options,version:void 0};});let chromaticVersionSpecifier=getChromaticVersionSpecifier(packageJson);chromaticVersionSpecifier&&(addons.chromatic={version:void 0,versionSpecifier:chromaticVersionSpecifier,options:void 0}),(await getActualPackageVersions(addons)).forEach(({name,version})=>{addons[name].version=version;});let addonNames=Object.keys(addons),storybookPackages=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")&&!addonNames.includes(dep)).reduce((acc,dep)=>({...acc,[dep]:{version:void 0}}),{});(await getActualPackageVersions(storybookPackages)).forEach(({name,version})=>{storybookPackages[name].version=version;});let language=allDependencies.typescript?"typescript":"javascript",hasStorybookEslint=!!allDependencies["eslint-plugin-storybook"],storybookInfo=getStorybookInfo(packageJson);try{let{previewConfig}=storybookInfo;if(previewConfig){let config=await readConfig(previewConfig),usesGlobals=!!(config.getFieldNode(["globals"])||config.getFieldNode(["globalTypes"]));metadata.preview={...metadata.preview,usesGlobals};}}catch{}let storybookVersion=storybookPackages[storybookInfo.frameworkPackage]?.version;return {...metadata,...frameworkInfo,storybookVersion,storybookVersionSpecifier:storybookInfo.version,language,storybookPackages,addons,hasStorybookEslint}},cachedMetadata,getStorybookMetadata=async _configDir=>{if(cachedMetadata)return cachedMetadata;let{packageJson={}}=readPkgUp.sync({cwd:process.cwd(),normalize:!1})||{},configDir=(_configDir||getStorybookConfiguration(packageJson?.scripts?.storybook||"","-c","--config-dir"))??".storybook",mainConfig=await loadMainConfig({configDir});return cachedMetadata=await computeStorybookMetadata({mainConfig,packageJson}),cachedMetadata};function dataUriToBuffer(uri){if(!/^data:/i.test(uri))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');uri=uri.replace(/\r?\n/g,"");let firstComma=uri.indexOf(",");if(firstComma===-1||firstComma<=4)throw new TypeError("malformed data: URI");let meta=uri.substring(5,firstComma).split(";"),charset="",base64=!1,type=meta[0]||"text/plain",typeFull=type;for(let i=1;i<meta.length;i++)meta[i]==="base64"?base64=!0:meta[i]&&(typeFull+=`;${meta[i]}`,meta[i].indexOf("charset=")===0&&(charset=meta[i].substring(8)));!meta[0]&&!charset.length&&(typeFull+=";charset=US-ASCII",charset="US-ASCII");let encoding=base64?"base64":"ascii",data=unescape(uri.substring(firstComma+1)),buffer=Buffer.from(data,encoding);return buffer.type=type,buffer.typeFull=typeFull,buffer.charset=charset,buffer}var dist_default=dataUriToBuffer;var FetchBaseError=class extends Error{constructor(message,type){super(message),Error.captureStackTrace(this,this.constructor),this.type=type;}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}};var FetchError=class extends FetchBaseError{constructor(message,type,systemError){super(message,type),systemError&&(this.code=this.errno=systemError.code,this.erroredSysCall=systemError.syscall);}};var NAME=Symbol.toStringTag,isURLSearchParameters=object=>typeof object=="object"&&typeof object.append=="function"&&typeof object.delete=="function"&&typeof object.get=="function"&&typeof object.getAll=="function"&&typeof object.has=="function"&&typeof object.set=="function"&&typeof object.sort=="function"&&object[NAME]==="URLSearchParams",isBlob=object=>object&&typeof object=="object"&&typeof object.arrayBuffer=="function"&&typeof object.type=="string"&&typeof object.stream=="function"&&typeof object.constructor=="function"&&/^(Blob|File)$/.test(object[NAME]),isAbortSignal=object=>typeof object=="object"&&(object[NAME]==="AbortSignal"||object[NAME]==="EventTarget"),isDomainOrSubdomain=(destination,original)=>{let orig=new URL(original).hostname,dest=new URL(destination).hostname;return orig===dest||orig.endsWith(`.${dest}`)},isSameProtocol=(destination,original)=>{let orig=new URL(original).protocol,dest=new URL(destination).protocol;return orig===dest};var pipeline=promisify(Stream.pipeline),INTERNALS=Symbol("Body internals"),Body=class{constructor(body,{size=0}={}){let boundary=null;body===null?body=null:isURLSearchParameters(body)?body=Buffer$1.from(body.toString()):isBlob(body)||Buffer$1.isBuffer(body)||(types.isAnyArrayBuffer(body)?body=Buffer$1.from(body):ArrayBuffer.isView(body)?body=Buffer$1.from(body.buffer,body.byteOffset,body.byteLength):body instanceof Stream||(body instanceof FormData?(body=formDataToBlob(body),boundary=body.type.split("=")[1]):body=Buffer$1.from(String(body))));let stream=body;Buffer$1.isBuffer(body)?stream=Stream.Readable.from(body):isBlob(body)&&(stream=Stream.Readable.from(body.stream())),this[INTERNALS]={body,stream,boundary,disturbed:!1,error:null},this.size=size,body instanceof Stream&&body.on("error",error_=>{let error=error_ instanceof FetchBaseError?error_:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`,"system",error_);this[INTERNALS].error=error;});}get body(){return this[INTERNALS].stream}get bodyUsed(){return this[INTERNALS].disturbed}async arrayBuffer(){let{buffer,byteOffset,byteLength}=await consumeBody(this);return buffer.slice(byteOffset,byteOffset+byteLength)}async formData(){let ct=this.headers.get("content-type");if(ct.startsWith("application/x-www-form-urlencoded")){let formData=new FormData,parameters=new URLSearchParams(await this.text());for(let[name,value]of parameters)formData.append(name,value);return formData}let{toFormData}=await import('./multipart-parser-LDVOFH5H.mjs');return toFormData(this.body,ct)}async blob(){let ct=this.headers&&this.headers.get("content-type")||this[INTERNALS].body&&this[INTERNALS].body.type||"",buf=await this.arrayBuffer();return new fetch_blob_default([buf],{type:ct})}async json(){let text=await this.text();return JSON.parse(text)}async text(){let buffer=await consumeBody(this);return new TextDecoder().decode(buffer)}buffer(){return consumeBody(this)}};Body.prototype.buffer=deprecate(Body.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:deprecate(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});async function consumeBody(data){if(data[INTERNALS].disturbed)throw new TypeError(`body used already for: ${data.url}`);if(data[INTERNALS].disturbed=!0,data[INTERNALS].error)throw data[INTERNALS].error;let{body}=data;if(body===null)return Buffer$1.alloc(0);if(!(body instanceof Stream))return Buffer$1.alloc(0);let accum=[],accumBytes=0;try{for await(let chunk of body){if(data.size>0&&accumBytes+chunk.length>data.size){let error=new FetchError(`content size at ${data.url} over limit: ${data.size}`,"max-size");throw body.destroy(error),error}accumBytes+=chunk.length,accum.push(chunk);}}catch(error){throw error instanceof FetchBaseError?error:new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`,"system",error)}if(body.readableEnded===!0||body._readableState.ended===!0)try{return accum.every(c=>typeof c=="string")?Buffer$1.from(accum.join("")):Buffer$1.concat(accum,accumBytes)}catch(error){throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`,"system",error)}else throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`)}var clone=(instance,highWaterMark)=>{let p1,p2,{body}=instance[INTERNALS];if(instance.bodyUsed)throw new Error("cannot clone body after it is used");return body instanceof Stream&&typeof body.getBoundary!="function"&&(p1=new PassThrough({highWaterMark}),p2=new PassThrough({highWaterMark}),body.pipe(p1),body.pipe(p2),instance[INTERNALS].stream=p1,body=p2),body},getNonSpecFormDataBoundary=deprecate(body=>body.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),extractContentType=(body,request)=>body===null?null:typeof body=="string"?"text/plain;charset=UTF-8":isURLSearchParameters(body)?"application/x-www-form-urlencoded;charset=UTF-8":isBlob(body)?body.type||null:Buffer$1.isBuffer(body)||types.isAnyArrayBuffer(body)||ArrayBuffer.isView(body)?null:body instanceof FormData?`multipart/form-data; boundary=${request[INTERNALS].boundary}`:body&&typeof body.getBoundary=="function"?`multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`:body instanceof Stream?null:"text/plain;charset=UTF-8",getTotalBytes=request=>{let{body}=request[INTERNALS];return body===null?0:isBlob(body)?body.size:Buffer$1.isBuffer(body)?body.length:body&&typeof body.getLengthSync=="function"&&body.hasKnownLength&&body.hasKnownLength()?body.getLengthSync():null},writeToStream=async(dest,{body})=>{body===null?dest.end():await pipeline(body,dest);};var validateHeaderName=typeof http.validateHeaderName=="function"?http.validateHeaderName:name=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)){let error=new TypeError(`Header name must be a valid HTTP token [${name}]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),error}},validateHeaderValue=typeof http.validateHeaderValue=="function"?http.validateHeaderValue:(name,value)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)){let error=new TypeError(`Invalid character in header content ["${name}"]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_CHAR"}),error}},Headers=class _Headers extends URLSearchParams{constructor(init){let result=[];if(init instanceof _Headers){let raw=init.raw();for(let[name,values]of Object.entries(raw))result.push(...values.map(value=>[name,value]));}else if(init!=null)if(typeof init=="object"&&!types.isBoxedPrimitive(init)){let method=init[Symbol.iterator];if(method==null)result.push(...Object.entries(init));else {if(typeof method!="function")throw new TypeError("Header pairs must be iterable");result=[...init].map(pair=>{if(typeof pair!="object"||types.isBoxedPrimitive(pair))throw new TypeError("Each header pair must be an iterable object");return [...pair]}).map(pair=>{if(pair.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return [...pair]});}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return result=result.length>0?result.map(([name,value])=>(validateHeaderName(name),validateHeaderValue(name,String(value)),[String(name).toLowerCase(),String(value)])):void 0,super(result),new Proxy(this,{get(target,p,receiver){switch(p){case"append":case"set":return (name,value)=>(validateHeaderName(name),validateHeaderValue(name,String(value)),URLSearchParams.prototype[p].call(target,String(name).toLowerCase(),String(value)));case"delete":case"has":case"getAll":return name=>(validateHeaderName(name),URLSearchParams.prototype[p].call(target,String(name).toLowerCase()));case"keys":return ()=>(target.sort(),new Set(URLSearchParams.prototype.keys.call(target)).keys());default:return Reflect.get(target,p,receiver)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(name){let values=this.getAll(name);if(values.length===0)return null;let value=values.join(", ");return /^content-encoding$/i.test(name)&&(value=value.toLowerCase()),value}forEach(callback,thisArg=void 0){for(let name of this.keys())Reflect.apply(callback,thisArg,[this.get(name),name,this]);}*values(){for(let name of this.keys())yield this.get(name);}*entries(){for(let name of this.keys())yield [name,this.get(name)];}[Symbol.iterator](){return this.entries()}raw(){return [...this.keys()].reduce((result,key)=>(result[key]=this.getAll(key),result),{})}[Symbol.for("nodejs.util.inspect.custom")](){return [...this.keys()].reduce((result,key)=>{let values=this.getAll(key);return key==="host"?result[key]=values[0]:result[key]=values.length>1?values:values[0],result},{})}};Object.defineProperties(Headers.prototype,["get","entries","forEach","values"].reduce((result,property)=>(result[property]={enumerable:!0},result),{}));function fromRawHeaders(headers=[]){return new Headers(headers.reduce((result,value,index,array)=>(index%2===0&&result.push(array.slice(index,index+2)),result),[]).filter(([name,value])=>{try{return validateHeaderName(name),validateHeaderValue(name,String(value)),!0}catch{return !1}}))}var redirectStatus=new Set([301,302,303,307,308]),isRedirect=code=>redirectStatus.has(code);var INTERNALS2=Symbol("Response internals"),Response=class _Response extends Body{constructor(body=null,options={}){super(body,options);let status=options.status!=null?options.status:200,headers=new Headers(options.headers);if(body!==null&&!headers.has("Content-Type")){let contentType=extractContentType(body,this);contentType&&headers.append("Content-Type",contentType);}this[INTERNALS2]={type:"default",url:options.url,status,statusText:options.statusText||"",headers,counter:options.counter,highWaterMark:options.highWaterMark};}get type(){return this[INTERNALS2].type}get url(){return this[INTERNALS2].url||""}get status(){return this[INTERNALS2].status}get ok(){return this[INTERNALS2].status>=200&&this[INTERNALS2].status<300}get redirected(){return this[INTERNALS2].counter>0}get statusText(){return this[INTERNALS2].statusText}get headers(){return this[INTERNALS2].headers}get highWaterMark(){return this[INTERNALS2].highWaterMark}clone(){return new _Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(url,status=302){if(!isRedirect(status))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new _Response(null,{headers:{location:new URL(url).toString()},status})}static error(){let response=new _Response(null,{status:0,statusText:""});return response[INTERNALS2].type="error",response}static json(data=void 0,init={}){let body=JSON.stringify(data);if(body===void 0)throw new TypeError("data is not JSON serializable");let headers=new Headers(init&&init.headers);return headers.has("content-type")||headers.set("content-type","application/json"),new _Response(body,{...init,headers})}get[Symbol.toStringTag](){return "Response"}};Object.defineProperties(Response.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});var getSearch=parsedURL=>{if(parsedURL.search)return parsedURL.search;let lastOffset=parsedURL.href.length-1,hash=parsedURL.hash||(parsedURL.href[lastOffset]==="#"?"#":"");return parsedURL.href[lastOffset-hash.length]==="?"?"?":""};function stripURLForUseAsAReferrer(url,originOnly=!1){return url==null||(url=new URL(url),/^(about|blob|data):$/.test(url.protocol))?"no-referrer":(url.username="",url.password="",url.hash="",originOnly&&(url.pathname="",url.search=""),url)}var ReferrerPolicy=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),DEFAULT_REFERRER_POLICY="strict-origin-when-cross-origin";function validateReferrerPolicy(referrerPolicy){if(!ReferrerPolicy.has(referrerPolicy))throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`);return referrerPolicy}function isOriginPotentiallyTrustworthy(url){if(/^(http|ws)s:$/.test(url.protocol))return !0;let hostIp=url.host.replace(/(^\[)|(]$)/g,""),hostIPVersion=isIP(hostIp);return hostIPVersion===4&&/^127\./.test(hostIp)||hostIPVersion===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)?!0:url.host==="localhost"||url.host.endsWith(".localhost")?!1:url.protocol==="file:"}function isUrlPotentiallyTrustworthy(url){return /^about:(blank|srcdoc)$/.test(url)||url.protocol==="data:"||/^(blob|filesystem):$/.test(url.protocol)?!0:isOriginPotentiallyTrustworthy(url)}function determineRequestsReferrer(request,{referrerURLCallback,referrerOriginCallback}={}){if(request.referrer==="no-referrer"||request.referrerPolicy==="")return null;let policy=request.referrerPolicy;if(request.referrer==="about:client")return "no-referrer";let referrerSource=request.referrer,referrerURL=stripURLForUseAsAReferrer(referrerSource),referrerOrigin=stripURLForUseAsAReferrer(referrerSource,!0);referrerURL.toString().length>4096&&(referrerURL=referrerOrigin),referrerURLCallback&&(referrerURL=referrerURLCallback(referrerURL)),referrerOriginCallback&&(referrerOrigin=referrerOriginCallback(referrerOrigin));let currentURL=new URL(request.url);switch(policy){case"no-referrer":return "no-referrer";case"origin":return referrerOrigin;case"unsafe-url":return referrerURL;case"strict-origin":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin.toString();case"strict-origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin;case"same-origin":return referrerURL.origin===currentURL.origin?referrerURL:"no-referrer";case"origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:referrerOrigin;case"no-referrer-when-downgrade":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerURL;default:throw new TypeError(`Invalid referrerPolicy: ${policy}`)}}function parseReferrerPolicyFromHeader(headers){let policyTokens=(headers.get("referrer-policy")||"").split(/[,\s]+/),policy="";for(let token of policyTokens)token&&ReferrerPolicy.has(token)&&(policy=token);return policy}var INTERNALS3=Symbol("Request internals"),isRequest=object=>typeof object=="object"&&typeof object[INTERNALS3]=="object",doBadDataWarn=deprecate(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Request=class _Request extends Body{constructor(input,init={}){let parsedURL;if(isRequest(input)?parsedURL=new URL(input.url):(parsedURL=new URL(input),input={}),parsedURL.username!==""||parsedURL.password!=="")throw new TypeError(`${parsedURL} is an url with embedded credentials.`);let method=init.method||input.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(method)&&(method=method.toUpperCase()),!isRequest(init)&&"data"in init&&doBadDataWarn(),(init.body!=null||isRequest(input)&&input.body!==null)&&(method==="GET"||method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let inputBody=init.body?init.body:isRequest(input)&&input.body!==null?clone(input):null;super(inputBody,{size:init.size||input.size||0});let headers=new Headers(init.headers||input.headers||{});if(inputBody!==null&&!headers.has("Content-Type")){let contentType=extractContentType(inputBody,this);contentType&&headers.set("Content-Type",contentType);}let signal=isRequest(input)?input.signal:null;if("signal"in init&&(signal=init.signal),signal!=null&&!isAbortSignal(signal))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let referrer=init.referrer==null?input.referrer:init.referrer;if(referrer==="")referrer="no-referrer";else if(referrer){let parsedReferrer=new URL(referrer);referrer=/^about:(\/\/)?client$/.test(parsedReferrer)?"client":parsedReferrer;}else referrer=void 0;this[INTERNALS3]={method,redirect:init.redirect||input.redirect||"follow",headers,parsedURL,signal,referrer},this.follow=init.follow===void 0?input.follow===void 0?20:input.follow:init.follow,this.compress=init.compress===void 0?input.compress===void 0?!0:input.compress:init.compress,this.counter=init.counter||input.counter||0,this.agent=init.agent||input.agent,this.highWaterMark=init.highWaterMark||input.highWaterMark||16384,this.insecureHTTPParser=init.insecureHTTPParser||input.insecureHTTPParser||!1,this.referrerPolicy=init.referrerPolicy||input.referrerPolicy||"";}get method(){return this[INTERNALS3].method}get url(){return format(this[INTERNALS3].parsedURL)}get headers(){return this[INTERNALS3].headers}get redirect(){return this[INTERNALS3].redirect}get signal(){return this[INTERNALS3].signal}get referrer(){if(this[INTERNALS3].referrer==="no-referrer")return "";if(this[INTERNALS3].referrer==="client")return "about:client";if(this[INTERNALS3].referrer)return this[INTERNALS3].referrer.toString()}get referrerPolicy(){return this[INTERNALS3].referrerPolicy}set referrerPolicy(referrerPolicy){this[INTERNALS3].referrerPolicy=validateReferrerPolicy(referrerPolicy);}clone(){return new _Request(this)}get[Symbol.toStringTag](){return "Request"}};Object.defineProperties(Request.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});var getNodeRequestOptions=request=>{let{parsedURL}=request[INTERNALS3],headers=new Headers(request[INTERNALS3].headers);headers.has("Accept")||headers.set("Accept","*/*");let contentLengthValue=null;if(request.body===null&&/^(post|put)$/i.test(request.method)&&(contentLengthValue="0"),request.body!==null){let totalBytes=getTotalBytes(request);typeof totalBytes=="number"&&!Number.isNaN(totalBytes)&&(contentLengthValue=String(totalBytes));}contentLengthValue&&headers.set("Content-Length",contentLengthValue),request.referrerPolicy===""&&(request.referrerPolicy=DEFAULT_REFERRER_POLICY),request.referrer&&request.referrer!=="no-referrer"?request[INTERNALS3].referrer=determineRequestsReferrer(request):request[INTERNALS3].referrer="no-referrer",request[INTERNALS3].referrer instanceof URL&&headers.set("Referer",request.referrer),headers.has("User-Agent")||headers.set("User-Agent","node-fetch"),request.compress&&!headers.has("Accept-Encoding")&&headers.set("Accept-Encoding","gzip, deflate, br");let{agent}=request;typeof agent=="function"&&(agent=agent(parsedURL));let search=getSearch(parsedURL),options={path:parsedURL.pathname+search,method:request.method,headers:headers[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:request.insecureHTTPParser,agent};return {parsedURL,options}};var AbortError=class extends FetchBaseError{constructor(message,type="aborted"){super(message,type);}};var supportedSchemas=new Set(["data:","http:","https:"]);async function fetch(url,options_){return new Promise((resolve,reject)=>{let request=new Request(url,options_),{parsedURL,options}=getNodeRequestOptions(request);if(!supportedSchemas.has(parsedURL.protocol))throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/,"")}" is not supported.`);if(parsedURL.protocol==="data:"){let data=dist_default(request.url),response2=new Response(data,{headers:{"Content-Type":data.typeFull}});resolve(response2);return}let send=(parsedURL.protocol==="https:"?https:http).request,{signal}=request,response=null,abort=()=>{let error=new AbortError("The operation was aborted.");reject(error),request.body&&request.body instanceof Stream.Readable&&request.body.destroy(error),!(!response||!response.body)&&response.body.emit("error",error);};if(signal&&signal.aborted){abort();return}let abortAndFinalize=()=>{abort(),finalize();},request_=send(parsedURL.toString(),options);signal&&signal.addEventListener("abort",abortAndFinalize);let finalize=()=>{request_.abort(),signal&&signal.removeEventListener("abort",abortAndFinalize);};request_.on("error",error=>{reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`,"system",error)),finalize();}),fixResponseChunkedTransferBadEnding(request_,error=>{response&&response.body&&response.body.destroy(error);}),process.version<"v14"&&request_.on("socket",s=>{let endedWithEventsCount;s.prependListener("end",()=>{endedWithEventsCount=s._eventsCount;}),s.prependListener("close",hadError=>{if(response&&endedWithEventsCount<s._eventsCount&&!hadError){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",response.body.emit("error",error);}});}),request_.on("response",response_=>{request_.setTimeout(0);let headers=fromRawHeaders(response_.rawHeaders);if(isRedirect(response_.statusCode)){let location=headers.get("Location"),locationURL=null;try{locationURL=location===null?null:new URL(location,request.url);}catch{if(request.redirect!=="manual"){reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`,"invalid-redirect")),finalize();return}}switch(request.redirect){case"error":reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`,"no-redirect")),finalize();return;case"manual":break;case"follow":{if(locationURL===null)break;if(request.counter>=request.follow){reject(new FetchError(`maximum redirect reached at: ${request.url}`,"max-redirect")),finalize();return}let requestOptions={headers:new Headers(request.headers),follow:request.follow,counter:request.counter+1,agent:request.agent,compress:request.compress,method:request.method,body:clone(request),signal:request.signal,size:request.size,referrer:request.referrer,referrerPolicy:request.referrerPolicy};if(!isDomainOrSubdomain(request.url,locationURL)||!isSameProtocol(request.url,locationURL))for(let name of ["authorization","www-authenticate","cookie","cookie2"])requestOptions.headers.delete(name);if(response_.statusCode!==303&&request.body&&options_.body instanceof Stream.Readable){reject(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect")),finalize();return}(response_.statusCode===303||(response_.statusCode===301||response_.statusCode===302)&&request.method==="POST")&&(requestOptions.method="GET",requestOptions.body=void 0,requestOptions.headers.delete("content-length"));let responseReferrerPolicy=parseReferrerPolicyFromHeader(headers);responseReferrerPolicy&&(requestOptions.referrerPolicy=responseReferrerPolicy),resolve(fetch(new Request(locationURL,requestOptions))),finalize();return}default:return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`))}}signal&&response_.once("end",()=>{signal.removeEventListener("abort",abortAndFinalize);});let body=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});process.version<"v12.10"&&response_.on("aborted",abortAndFinalize);let responseOptions={url:request.url,status:response_.statusCode,statusText:response_.statusMessage,headers,size:request.size,counter:request.counter,highWaterMark:request.highWaterMark},codings=headers.get("Content-Encoding");if(!request.compress||request.method==="HEAD"||codings===null||response_.statusCode===204||response_.statusCode===304){response=new Response(body,responseOptions),resolve(response);return}let zlibOptions={flush:zlib.Z_SYNC_FLUSH,finishFlush:zlib.Z_SYNC_FLUSH};if(codings==="gzip"||codings==="x-gzip"){body=pipeline$1(body,zlib.createGunzip(zlibOptions),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);return}if(codings==="deflate"||codings==="x-deflate"){let raw=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});raw.once("data",chunk=>{(chunk[0]&15)===8?body=pipeline$1(body,zlib.createInflate(),error=>{error&&reject(error);}):body=pipeline$1(body,zlib.createInflateRaw(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);}),raw.once("end",()=>{response||(response=new Response(body,responseOptions),resolve(response));});return}if(codings==="br"){body=pipeline$1(body,zlib.createBrotliDecompress(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);return}response=new Response(body,responseOptions),resolve(response);}),writeToStream(request_,request).catch(reject);})}function fixResponseChunkedTransferBadEnding(request,errorCallback){let LAST_CHUNK=Buffer$1.from(`0\r
24
+ var getActualPackageVersions=async packages=>{let packageNames=Object.keys(packages);return Promise.all(packageNames.map(getActualPackageVersion))},getActualPackageVersion=async packageName=>{try{let packageJson=await getActualPackageJson(packageName);return {name:packageName,version:packageJson.version}}catch{return {name:packageName,version:null}}},getActualPackageJson=async packageName=>{let resolvedPackageJson=__require.resolve(path2.join(packageName,"package.json"),{paths:[process.cwd()]});return await fs2.readJson(resolvedPackageJson)},getStorybookCoreVersion=async()=>(await Promise.all(["@storybook/core-common","@storybook/core-server"].map(getActualPackageVersion))).find(v=>v.version)?.version;var monorepoConfigs={Nx:"nx.json",Turborepo:"turbo.json",Lerna:"lerna.json",Rush:"rush.json",Lage:"lage.config.json"},getMonorepoType=()=>{let projectRootPath=getProjectRoot();if(!projectRootPath)return;let monorepoType=Object.keys(monorepoConfigs).find(monorepo=>{let configFile=path2.join(projectRootPath,monorepoConfigs[monorepo]);return fs2__default.existsSync(configFile)});if(monorepoType)return monorepoType;if(!fs2__default.existsSync(path2.join(projectRootPath,"package.json")))return;if(fs2__default.readJsonSync(path2.join(projectRootPath,"package.json"))?.workspaces)return "Workspaces"};function regexpEscape(str){return str.replace(/[-[/{}()*+?.\\^$|]/g,"\\$&")}function removeAnsiEscapeCodes(input=""){return input.replace(/\u001B\[[0-9;]*m/g,"")}function cleanPaths(str,separator=path2.sep){if(!str)return str;let stack=process.cwd().split(separator);for(;stack.length>1;){let currentPath=stack.join(separator),currentRegex=new RegExp(regexpEscape(currentPath),"gi");str=str.replace(currentRegex,"$SNIP");let currentPath2=stack.join(separator+separator),currentRegex2=new RegExp(regexpEscape(currentPath2),"gi");str=str.replace(currentRegex2,"$SNIP"),stack.pop();}return str}function sanitizeError(error,pathSeparator=path2.sep){try{error={...JSON.parse(JSON.stringify(error)),message:removeAnsiEscapeCodes(error.message),stack:removeAnsiEscapeCodes(error.stack),cause:error.cause,name:error.name};let errorString=cleanPaths(JSON.stringify(error),pathSeparator);return JSON.parse(errorString)}catch(err){return `Sanitization error: ${err?.message}`}}var knownRenderers=["html","react","svelte","vue3","preact","server","vue","web-components","angular","ember"],knownBuilders=["builder-webpack5","builder-vite"];function findMatchingPackage(packageJson,suffixes){let{name="",version,dependencies,devDependencies,peerDependencies}=packageJson,allDependencies={[name]:version,...dependencies,...devDependencies,...peerDependencies};return suffixes.map(suffix=>`@storybook/${suffix}`).find(pkg=>allDependencies[pkg])}var getFrameworkPackageName=packageNameOrPath=>{let normalizedPath=path2.normalize(packageNameOrPath).replace(new RegExp(/\\/,"g"),"/");return Object.keys(frameworkPackages).find(pkg=>normalizedPath.endsWith(pkg))||cleanPaths(packageNameOrPath).replace(/.*node_modules[\\/]/,"")};async function getFrameworkInfo(mainConfig){if(!mainConfig?.framework)return {};let rawName=typeof mainConfig.framework=="string"?mainConfig.framework:mainConfig.framework?.name;if(!rawName)return {};let frameworkPackageJson=await getActualPackageJson(rawName);if(!frameworkPackageJson)return {};let builder=findMatchingPackage(frameworkPackageJson,knownBuilders),renderer=findMatchingPackage(frameworkPackageJson,knownRenderers),sanitizedFrameworkName=getFrameworkPackageName(rawName),frameworkOptions=typeof mainConfig.framework=="object"?mainConfig.framework.options:{};return {framework:{name:sanitizedFrameworkName,options:frameworkOptions},builder,renderer}}function getChromaticVersionSpecifier(packageJson){let dependency=packageJson.dependencies?.chromatic||packageJson.devDependencies?.chromatic||packageJson.peerDependencies?.chromatic;return dependency||(packageJson.scripts&&Object.values(packageJson.scripts).find(s=>s?.match(/chromatic/))?"latest":void 0)}var metaFrameworks={next:"Next","react-scripts":"CRA",gatsby:"Gatsby","@nuxtjs/storybook":"nuxt","@nrwl/storybook":"nx","@vue/cli-service":"vue-cli","@sveltejs/kit":"sveltekit"},sanitizeAddonName=name=>cleanPaths(name).replace(/\/dist\/.*/,"").replace(/\.[mc]?[tj]?s[x]?$/,"").replace(/\/register$/,"").replace(/\/manager$/,"").replace(/\/preset$/,""),computeStorybookMetadata=async({packageJson,mainConfig})=>{let metadata={generatedAt:new Date().getTime(),hasCustomBabel:!1,hasCustomWebpack:!1,hasStaticDirs:!1,hasStorybookEslint:!1,refCount:0},allDependencies={...packageJson?.dependencies,...packageJson?.devDependencies,...packageJson?.peerDependencies},metaFramework=Object.keys(allDependencies).find(dep=>!!metaFrameworks[dep]);if(metaFramework){let{version}=await getActualPackageVersion(metaFramework);metadata.metaFramework={name:metaFrameworks[metaFramework],packageName:metaFramework,version};}let monorepoType=getMonorepoType();monorepoType&&(metadata.monorepo=monorepoType);try{let packageManagerType=await detect({cwd:getProjectRoot()}),packageManagerVerson=await getNpmVersion(packageManagerType);metadata.packageManager={type:packageManagerType,version:packageManagerVerson};}catch{}metadata.hasCustomBabel=!!mainConfig.babel,metadata.hasCustomWebpack=!!mainConfig.webpackFinal,metadata.hasStaticDirs=!!mainConfig.staticDirs,typeof mainConfig.typescript=="object"&&(metadata.typescriptOptions=mainConfig.typescript);let frameworkInfo=await getFrameworkInfo(mainConfig);typeof mainConfig.refs=="object"&&(metadata.refCount=Object.keys(mainConfig.refs).length),typeof mainConfig.features=="object"&&(metadata.features=mainConfig.features);let addons={};mainConfig.addons&&mainConfig.addons.forEach(addon=>{let addonName,options;typeof addon=="string"?addonName=sanitizeAddonName(addon):(addon.name.includes("addon-essentials")&&(options=addon.options),addonName=sanitizeAddonName(addon.name)),addons[addonName]={options,version:void 0};});let chromaticVersionSpecifier=getChromaticVersionSpecifier(packageJson);chromaticVersionSpecifier&&(addons.chromatic={version:void 0,versionSpecifier:chromaticVersionSpecifier,options:void 0}),(await getActualPackageVersions(addons)).forEach(({name,version})=>{addons[name].version=version;});let addonNames=Object.keys(addons),storybookPackages=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")&&!addonNames.includes(dep)).reduce((acc,dep)=>({...acc,[dep]:{version:void 0}}),{});(await getActualPackageVersions(storybookPackages)).forEach(({name,version})=>{storybookPackages[name].version=version;});let language=allDependencies.typescript?"typescript":"javascript",hasStorybookEslint=!!allDependencies["eslint-plugin-storybook"],storybookInfo=getStorybookInfo(packageJson);try{let{previewConfig}=storybookInfo;if(previewConfig){let config=await readConfig(previewConfig),usesGlobals=!!(config.getFieldNode(["globals"])||config.getFieldNode(["globalTypes"]));metadata.preview={...metadata.preview,usesGlobals};}}catch{}let storybookVersion=storybookPackages[storybookInfo.frameworkPackage]?.version;return {...metadata,...frameworkInfo,storybookVersion,storybookVersionSpecifier:storybookInfo.version,language,storybookPackages,addons,hasStorybookEslint}},cachedMetadata,getStorybookMetadata=async _configDir=>{if(cachedMetadata)return cachedMetadata;let{packageJson={}}=readPkgUp.sync({cwd:process.cwd(),normalize:!1})||{},configDir=(_configDir||getStorybookConfiguration(packageJson?.scripts?.storybook||"","-c","--config-dir"))??".storybook",mainConfig=await loadMainConfig({configDir});return cachedMetadata=await computeStorybookMetadata({mainConfig,packageJson}),cachedMetadata};function dataUriToBuffer(uri){if(!/^data:/i.test(uri))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');uri=uri.replace(/\r?\n/g,"");let firstComma=uri.indexOf(",");if(firstComma===-1||firstComma<=4)throw new TypeError("malformed data: URI");let meta=uri.substring(5,firstComma).split(";"),charset="",base64=!1,type=meta[0]||"text/plain",typeFull=type;for(let i=1;i<meta.length;i++)meta[i]==="base64"?base64=!0:meta[i]&&(typeFull+=`;${meta[i]}`,meta[i].indexOf("charset=")===0&&(charset=meta[i].substring(8)));!meta[0]&&!charset.length&&(typeFull+=";charset=US-ASCII",charset="US-ASCII");let encoding=base64?"base64":"ascii",data=unescape(uri.substring(firstComma+1)),buffer=Buffer.from(data,encoding);return buffer.type=type,buffer.typeFull=typeFull,buffer.charset=charset,buffer}var dist_default=dataUriToBuffer;var FetchBaseError=class extends Error{constructor(message,type){super(message),Error.captureStackTrace(this,this.constructor),this.type=type;}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}};var FetchError=class extends FetchBaseError{constructor(message,type,systemError){super(message,type),systemError&&(this.code=this.errno=systemError.code,this.erroredSysCall=systemError.syscall);}};var NAME=Symbol.toStringTag,isURLSearchParameters=object=>typeof object=="object"&&typeof object.append=="function"&&typeof object.delete=="function"&&typeof object.get=="function"&&typeof object.getAll=="function"&&typeof object.has=="function"&&typeof object.set=="function"&&typeof object.sort=="function"&&object[NAME]==="URLSearchParams",isBlob=object=>object&&typeof object=="object"&&typeof object.arrayBuffer=="function"&&typeof object.type=="string"&&typeof object.stream=="function"&&typeof object.constructor=="function"&&/^(Blob|File)$/.test(object[NAME]),isAbortSignal=object=>typeof object=="object"&&(object[NAME]==="AbortSignal"||object[NAME]==="EventTarget"),isDomainOrSubdomain=(destination,original)=>{let orig=new URL(original).hostname,dest=new URL(destination).hostname;return orig===dest||orig.endsWith(`.${dest}`)},isSameProtocol=(destination,original)=>{let orig=new URL(original).protocol,dest=new URL(destination).protocol;return orig===dest};var pipeline=promisify(Stream.pipeline),INTERNALS=Symbol("Body internals"),Body=class{constructor(body,{size=0}={}){let boundary=null;body===null?body=null:isURLSearchParameters(body)?body=Buffer$1.from(body.toString()):isBlob(body)||Buffer$1.isBuffer(body)||(types.isAnyArrayBuffer(body)?body=Buffer$1.from(body):ArrayBuffer.isView(body)?body=Buffer$1.from(body.buffer,body.byteOffset,body.byteLength):body instanceof Stream||(body instanceof FormData?(body=formDataToBlob(body),boundary=body.type.split("=")[1]):body=Buffer$1.from(String(body))));let stream=body;Buffer$1.isBuffer(body)?stream=Stream.Readable.from(body):isBlob(body)&&(stream=Stream.Readable.from(body.stream())),this[INTERNALS]={body,stream,boundary,disturbed:!1,error:null},this.size=size,body instanceof Stream&&body.on("error",error_=>{let error=error_ instanceof FetchBaseError?error_:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`,"system",error_);this[INTERNALS].error=error;});}get body(){return this[INTERNALS].stream}get bodyUsed(){return this[INTERNALS].disturbed}async arrayBuffer(){let{buffer,byteOffset,byteLength}=await consumeBody(this);return buffer.slice(byteOffset,byteOffset+byteLength)}async formData(){let ct=this.headers.get("content-type");if(ct.startsWith("application/x-www-form-urlencoded")){let formData=new FormData,parameters=new URLSearchParams(await this.text());for(let[name,value]of parameters)formData.append(name,value);return formData}let{toFormData}=await import('./multipart-parser-LDVOFH5H.mjs');return toFormData(this.body,ct)}async blob(){let ct=this.headers&&this.headers.get("content-type")||this[INTERNALS].body&&this[INTERNALS].body.type||"",buf=await this.arrayBuffer();return new fetch_blob_default([buf],{type:ct})}async json(){let text=await this.text();return JSON.parse(text)}async text(){let buffer=await consumeBody(this);return new TextDecoder().decode(buffer)}buffer(){return consumeBody(this)}};Body.prototype.buffer=deprecate(Body.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:deprecate(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});async function consumeBody(data){if(data[INTERNALS].disturbed)throw new TypeError(`body used already for: ${data.url}`);if(data[INTERNALS].disturbed=!0,data[INTERNALS].error)throw data[INTERNALS].error;let{body}=data;if(body===null)return Buffer$1.alloc(0);if(!(body instanceof Stream))return Buffer$1.alloc(0);let accum=[],accumBytes=0;try{for await(let chunk of body){if(data.size>0&&accumBytes+chunk.length>data.size){let error=new FetchError(`content size at ${data.url} over limit: ${data.size}`,"max-size");throw body.destroy(error),error}accumBytes+=chunk.length,accum.push(chunk);}}catch(error){throw error instanceof FetchBaseError?error:new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`,"system",error)}if(body.readableEnded===!0||body._readableState.ended===!0)try{return accum.every(c=>typeof c=="string")?Buffer$1.from(accum.join("")):Buffer$1.concat(accum,accumBytes)}catch(error){throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`,"system",error)}else throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`)}var clone=(instance,highWaterMark)=>{let p1,p2,{body}=instance[INTERNALS];if(instance.bodyUsed)throw new Error("cannot clone body after it is used");return body instanceof Stream&&typeof body.getBoundary!="function"&&(p1=new PassThrough({highWaterMark}),p2=new PassThrough({highWaterMark}),body.pipe(p1),body.pipe(p2),instance[INTERNALS].stream=p1,body=p2),body},getNonSpecFormDataBoundary=deprecate(body=>body.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),extractContentType=(body,request)=>body===null?null:typeof body=="string"?"text/plain;charset=UTF-8":isURLSearchParameters(body)?"application/x-www-form-urlencoded;charset=UTF-8":isBlob(body)?body.type||null:Buffer$1.isBuffer(body)||types.isAnyArrayBuffer(body)||ArrayBuffer.isView(body)?null:body instanceof FormData?`multipart/form-data; boundary=${request[INTERNALS].boundary}`:body&&typeof body.getBoundary=="function"?`multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`:body instanceof Stream?null:"text/plain;charset=UTF-8",getTotalBytes=request=>{let{body}=request[INTERNALS];return body===null?0:isBlob(body)?body.size:Buffer$1.isBuffer(body)?body.length:body&&typeof body.getLengthSync=="function"&&body.hasKnownLength&&body.hasKnownLength()?body.getLengthSync():null},writeToStream=async(dest,{body})=>{body===null?dest.end():await pipeline(body,dest);};var validateHeaderName=typeof http.validateHeaderName=="function"?http.validateHeaderName:name=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)){let error=new TypeError(`Header name must be a valid HTTP token [${name}]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),error}},validateHeaderValue=typeof http.validateHeaderValue=="function"?http.validateHeaderValue:(name,value)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)){let error=new TypeError(`Invalid character in header content ["${name}"]`);throw Object.defineProperty(error,"code",{value:"ERR_INVALID_CHAR"}),error}},Headers=class _Headers extends URLSearchParams{constructor(init){let result=[];if(init instanceof _Headers){let raw=init.raw();for(let[name,values]of Object.entries(raw))result.push(...values.map(value=>[name,value]));}else if(init!=null)if(typeof init=="object"&&!types.isBoxedPrimitive(init)){let method=init[Symbol.iterator];if(method==null)result.push(...Object.entries(init));else {if(typeof method!="function")throw new TypeError("Header pairs must be iterable");result=[...init].map(pair=>{if(typeof pair!="object"||types.isBoxedPrimitive(pair))throw new TypeError("Each header pair must be an iterable object");return [...pair]}).map(pair=>{if(pair.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return [...pair]});}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return result=result.length>0?result.map(([name,value])=>(validateHeaderName(name),validateHeaderValue(name,String(value)),[String(name).toLowerCase(),String(value)])):void 0,super(result),new Proxy(this,{get(target,p,receiver){switch(p){case"append":case"set":return (name,value)=>(validateHeaderName(name),validateHeaderValue(name,String(value)),URLSearchParams.prototype[p].call(target,String(name).toLowerCase(),String(value)));case"delete":case"has":case"getAll":return name=>(validateHeaderName(name),URLSearchParams.prototype[p].call(target,String(name).toLowerCase()));case"keys":return ()=>(target.sort(),new Set(URLSearchParams.prototype.keys.call(target)).keys());default:return Reflect.get(target,p,receiver)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(name){let values=this.getAll(name);if(values.length===0)return null;let value=values.join(", ");return /^content-encoding$/i.test(name)&&(value=value.toLowerCase()),value}forEach(callback,thisArg=void 0){for(let name of this.keys())Reflect.apply(callback,thisArg,[this.get(name),name,this]);}*values(){for(let name of this.keys())yield this.get(name);}*entries(){for(let name of this.keys())yield [name,this.get(name)];}[Symbol.iterator](){return this.entries()}raw(){return [...this.keys()].reduce((result,key)=>(result[key]=this.getAll(key),result),{})}[Symbol.for("nodejs.util.inspect.custom")](){return [...this.keys()].reduce((result,key)=>{let values=this.getAll(key);return key==="host"?result[key]=values[0]:result[key]=values.length>1?values:values[0],result},{})}};Object.defineProperties(Headers.prototype,["get","entries","forEach","values"].reduce((result,property)=>(result[property]={enumerable:!0},result),{}));function fromRawHeaders(headers=[]){return new Headers(headers.reduce((result,value,index,array)=>(index%2===0&&result.push(array.slice(index,index+2)),result),[]).filter(([name,value])=>{try{return validateHeaderName(name),validateHeaderValue(name,String(value)),!0}catch{return !1}}))}var redirectStatus=new Set([301,302,303,307,308]),isRedirect=code=>redirectStatus.has(code);var INTERNALS2=Symbol("Response internals"),Response=class _Response extends Body{constructor(body=null,options={}){super(body,options);let status=options.status!=null?options.status:200,headers=new Headers(options.headers);if(body!==null&&!headers.has("Content-Type")){let contentType=extractContentType(body,this);contentType&&headers.append("Content-Type",contentType);}this[INTERNALS2]={type:"default",url:options.url,status,statusText:options.statusText||"",headers,counter:options.counter,highWaterMark:options.highWaterMark};}get type(){return this[INTERNALS2].type}get url(){return this[INTERNALS2].url||""}get status(){return this[INTERNALS2].status}get ok(){return this[INTERNALS2].status>=200&&this[INTERNALS2].status<300}get redirected(){return this[INTERNALS2].counter>0}get statusText(){return this[INTERNALS2].statusText}get headers(){return this[INTERNALS2].headers}get highWaterMark(){return this[INTERNALS2].highWaterMark}clone(){return new _Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(url,status=302){if(!isRedirect(status))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new _Response(null,{headers:{location:new URL(url).toString()},status})}static error(){let response=new _Response(null,{status:0,statusText:""});return response[INTERNALS2].type="error",response}static json(data=void 0,init={}){let body=JSON.stringify(data);if(body===void 0)throw new TypeError("data is not JSON serializable");let headers=new Headers(init&&init.headers);return headers.has("content-type")||headers.set("content-type","application/json"),new _Response(body,{...init,headers})}get[Symbol.toStringTag](){return "Response"}};Object.defineProperties(Response.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});var getSearch=parsedURL=>{if(parsedURL.search)return parsedURL.search;let lastOffset=parsedURL.href.length-1,hash=parsedURL.hash||(parsedURL.href[lastOffset]==="#"?"#":"");return parsedURL.href[lastOffset-hash.length]==="?"?"?":""};function stripURLForUseAsAReferrer(url,originOnly=!1){return url==null||(url=new URL(url),/^(about|blob|data):$/.test(url.protocol))?"no-referrer":(url.username="",url.password="",url.hash="",originOnly&&(url.pathname="",url.search=""),url)}var ReferrerPolicy=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),DEFAULT_REFERRER_POLICY="strict-origin-when-cross-origin";function validateReferrerPolicy(referrerPolicy){if(!ReferrerPolicy.has(referrerPolicy))throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`);return referrerPolicy}function isOriginPotentiallyTrustworthy(url){if(/^(http|ws)s:$/.test(url.protocol))return !0;let hostIp=url.host.replace(/(^\[)|(]$)/g,""),hostIPVersion=isIP(hostIp);return hostIPVersion===4&&/^127\./.test(hostIp)||hostIPVersion===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)?!0:url.host==="localhost"||url.host.endsWith(".localhost")?!1:url.protocol==="file:"}function isUrlPotentiallyTrustworthy(url){return /^about:(blank|srcdoc)$/.test(url)||url.protocol==="data:"||/^(blob|filesystem):$/.test(url.protocol)?!0:isOriginPotentiallyTrustworthy(url)}function determineRequestsReferrer(request,{referrerURLCallback,referrerOriginCallback}={}){if(request.referrer==="no-referrer"||request.referrerPolicy==="")return null;let policy=request.referrerPolicy;if(request.referrer==="about:client")return "no-referrer";let referrerSource=request.referrer,referrerURL=stripURLForUseAsAReferrer(referrerSource),referrerOrigin=stripURLForUseAsAReferrer(referrerSource,!0);referrerURL.toString().length>4096&&(referrerURL=referrerOrigin),referrerURLCallback&&(referrerURL=referrerURLCallback(referrerURL)),referrerOriginCallback&&(referrerOrigin=referrerOriginCallback(referrerOrigin));let currentURL=new URL(request.url);switch(policy){case"no-referrer":return "no-referrer";case"origin":return referrerOrigin;case"unsafe-url":return referrerURL;case"strict-origin":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin.toString();case"strict-origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerOrigin;case"same-origin":return referrerURL.origin===currentURL.origin?referrerURL:"no-referrer";case"origin-when-cross-origin":return referrerURL.origin===currentURL.origin?referrerURL:referrerOrigin;case"no-referrer-when-downgrade":return isUrlPotentiallyTrustworthy(referrerURL)&&!isUrlPotentiallyTrustworthy(currentURL)?"no-referrer":referrerURL;default:throw new TypeError(`Invalid referrerPolicy: ${policy}`)}}function parseReferrerPolicyFromHeader(headers){let policyTokens=(headers.get("referrer-policy")||"").split(/[,\s]+/),policy="";for(let token of policyTokens)token&&ReferrerPolicy.has(token)&&(policy=token);return policy}var INTERNALS3=Symbol("Request internals"),isRequest=object=>typeof object=="object"&&typeof object[INTERNALS3]=="object",doBadDataWarn=deprecate(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Request=class _Request extends Body{constructor(input,init={}){let parsedURL;if(isRequest(input)?parsedURL=new URL(input.url):(parsedURL=new URL(input),input={}),parsedURL.username!==""||parsedURL.password!=="")throw new TypeError(`${parsedURL} is an url with embedded credentials.`);let method=init.method||input.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(method)&&(method=method.toUpperCase()),!isRequest(init)&&"data"in init&&doBadDataWarn(),(init.body!=null||isRequest(input)&&input.body!==null)&&(method==="GET"||method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let inputBody=init.body?init.body:isRequest(input)&&input.body!==null?clone(input):null;super(inputBody,{size:init.size||input.size||0});let headers=new Headers(init.headers||input.headers||{});if(inputBody!==null&&!headers.has("Content-Type")){let contentType=extractContentType(inputBody,this);contentType&&headers.set("Content-Type",contentType);}let signal=isRequest(input)?input.signal:null;if("signal"in init&&(signal=init.signal),signal!=null&&!isAbortSignal(signal))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let referrer=init.referrer==null?input.referrer:init.referrer;if(referrer==="")referrer="no-referrer";else if(referrer){let parsedReferrer=new URL(referrer);referrer=/^about:(\/\/)?client$/.test(parsedReferrer)?"client":parsedReferrer;}else referrer=void 0;this[INTERNALS3]={method,redirect:init.redirect||input.redirect||"follow",headers,parsedURL,signal,referrer},this.follow=init.follow===void 0?input.follow===void 0?20:input.follow:init.follow,this.compress=init.compress===void 0?input.compress===void 0?!0:input.compress:init.compress,this.counter=init.counter||input.counter||0,this.agent=init.agent||input.agent,this.highWaterMark=init.highWaterMark||input.highWaterMark||16384,this.insecureHTTPParser=init.insecureHTTPParser||input.insecureHTTPParser||!1,this.referrerPolicy=init.referrerPolicy||input.referrerPolicy||"";}get method(){return this[INTERNALS3].method}get url(){return format(this[INTERNALS3].parsedURL)}get headers(){return this[INTERNALS3].headers}get redirect(){return this[INTERNALS3].redirect}get signal(){return this[INTERNALS3].signal}get referrer(){if(this[INTERNALS3].referrer==="no-referrer")return "";if(this[INTERNALS3].referrer==="client")return "about:client";if(this[INTERNALS3].referrer)return this[INTERNALS3].referrer.toString()}get referrerPolicy(){return this[INTERNALS3].referrerPolicy}set referrerPolicy(referrerPolicy){this[INTERNALS3].referrerPolicy=validateReferrerPolicy(referrerPolicy);}clone(){return new _Request(this)}get[Symbol.toStringTag](){return "Request"}};Object.defineProperties(Request.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});var getNodeRequestOptions=request=>{let{parsedURL}=request[INTERNALS3],headers=new Headers(request[INTERNALS3].headers);headers.has("Accept")||headers.set("Accept","*/*");let contentLengthValue=null;if(request.body===null&&/^(post|put)$/i.test(request.method)&&(contentLengthValue="0"),request.body!==null){let totalBytes=getTotalBytes(request);typeof totalBytes=="number"&&!Number.isNaN(totalBytes)&&(contentLengthValue=String(totalBytes));}contentLengthValue&&headers.set("Content-Length",contentLengthValue),request.referrerPolicy===""&&(request.referrerPolicy=DEFAULT_REFERRER_POLICY),request.referrer&&request.referrer!=="no-referrer"?request[INTERNALS3].referrer=determineRequestsReferrer(request):request[INTERNALS3].referrer="no-referrer",request[INTERNALS3].referrer instanceof URL&&headers.set("Referer",request.referrer),headers.has("User-Agent")||headers.set("User-Agent","node-fetch"),request.compress&&!headers.has("Accept-Encoding")&&headers.set("Accept-Encoding","gzip, deflate, br");let{agent}=request;typeof agent=="function"&&(agent=agent(parsedURL));let search=getSearch(parsedURL),options={path:parsedURL.pathname+search,method:request.method,headers:headers[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:request.insecureHTTPParser,agent};return {parsedURL,options}};var AbortError=class extends FetchBaseError{constructor(message,type="aborted"){super(message,type);}};var supportedSchemas=new Set(["data:","http:","https:"]);async function fetch(url,options_){return new Promise((resolve,reject)=>{let request=new Request(url,options_),{parsedURL,options}=getNodeRequestOptions(request);if(!supportedSchemas.has(parsedURL.protocol))throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/,"")}" is not supported.`);if(parsedURL.protocol==="data:"){let data=dist_default(request.url),response2=new Response(data,{headers:{"Content-Type":data.typeFull}});resolve(response2);return}let send=(parsedURL.protocol==="https:"?https:http).request,{signal}=request,response=null,abort=()=>{let error=new AbortError("The operation was aborted.");reject(error),request.body&&request.body instanceof Stream.Readable&&request.body.destroy(error),!(!response||!response.body)&&response.body.emit("error",error);};if(signal&&signal.aborted){abort();return}let abortAndFinalize=()=>{abort(),finalize();},request_=send(parsedURL.toString(),options);signal&&signal.addEventListener("abort",abortAndFinalize);let finalize=()=>{request_.abort(),signal&&signal.removeEventListener("abort",abortAndFinalize);};request_.on("error",error=>{reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`,"system",error)),finalize();}),fixResponseChunkedTransferBadEnding(request_,error=>{response&&response.body&&response.body.destroy(error);}),process.version<"v14"&&request_.on("socket",s=>{let endedWithEventsCount;s.prependListener("end",()=>{endedWithEventsCount=s._eventsCount;}),s.prependListener("close",hadError=>{if(response&&endedWithEventsCount<s._eventsCount&&!hadError){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",response.body.emit("error",error);}});}),request_.on("response",response_=>{request_.setTimeout(0);let headers=fromRawHeaders(response_.rawHeaders);if(isRedirect(response_.statusCode)){let location=headers.get("Location"),locationURL=null;try{locationURL=location===null?null:new URL(location,request.url);}catch{if(request.redirect!=="manual"){reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`,"invalid-redirect")),finalize();return}}switch(request.redirect){case"error":reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`,"no-redirect")),finalize();return;case"manual":break;case"follow":{if(locationURL===null)break;if(request.counter>=request.follow){reject(new FetchError(`maximum redirect reached at: ${request.url}`,"max-redirect")),finalize();return}let requestOptions={headers:new Headers(request.headers),follow:request.follow,counter:request.counter+1,agent:request.agent,compress:request.compress,method:request.method,body:clone(request),signal:request.signal,size:request.size,referrer:request.referrer,referrerPolicy:request.referrerPolicy};if(!isDomainOrSubdomain(request.url,locationURL)||!isSameProtocol(request.url,locationURL))for(let name of ["authorization","www-authenticate","cookie","cookie2"])requestOptions.headers.delete(name);if(response_.statusCode!==303&&request.body&&options_.body instanceof Stream.Readable){reject(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect")),finalize();return}(response_.statusCode===303||(response_.statusCode===301||response_.statusCode===302)&&request.method==="POST")&&(requestOptions.method="GET",requestOptions.body=void 0,requestOptions.headers.delete("content-length"));let responseReferrerPolicy=parseReferrerPolicyFromHeader(headers);responseReferrerPolicy&&(requestOptions.referrerPolicy=responseReferrerPolicy),resolve(fetch(new Request(locationURL,requestOptions))),finalize();return}default:return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`))}}signal&&response_.once("end",()=>{signal.removeEventListener("abort",abortAndFinalize);});let body=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});process.version<"v12.10"&&response_.on("aborted",abortAndFinalize);let responseOptions={url:request.url,status:response_.statusCode,statusText:response_.statusMessage,headers,size:request.size,counter:request.counter,highWaterMark:request.highWaterMark},codings=headers.get("Content-Encoding");if(!request.compress||request.method==="HEAD"||codings===null||response_.statusCode===204||response_.statusCode===304){response=new Response(body,responseOptions),resolve(response);return}let zlibOptions={flush:zlib.Z_SYNC_FLUSH,finishFlush:zlib.Z_SYNC_FLUSH};if(codings==="gzip"||codings==="x-gzip"){body=pipeline$1(body,zlib.createGunzip(zlibOptions),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);return}if(codings==="deflate"||codings==="x-deflate"){let raw=pipeline$1(response_,new PassThrough,error=>{error&&reject(error);});raw.once("data",chunk=>{(chunk[0]&15)===8?body=pipeline$1(body,zlib.createInflate(),error=>{error&&reject(error);}):body=pipeline$1(body,zlib.createInflateRaw(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);}),raw.once("end",()=>{response||(response=new Response(body,responseOptions),resolve(response));});return}if(codings==="br"){body=pipeline$1(body,zlib.createBrotliDecompress(),error=>{error&&reject(error);}),response=new Response(body,responseOptions),resolve(response);return}response=new Response(body,responseOptions),resolve(response);}),writeToStream(request_,request).catch(reject);})}function fixResponseChunkedTransferBadEnding(request,errorCallback){let LAST_CHUNK=Buffer$1.from(`0\r
25
25
  \r
26
26
  `),isChunkedTransfer=!1,properLastChunkReceived=!1,previousChunk;request.on("response",response=>{let{headers}=response;isChunkedTransfer=headers["transfer-encoding"]==="chunked"&&!headers["content-length"];}),request.on("socket",socket=>{let onSocketClose=()=>{if(isChunkedTransfer&&!properLastChunkReceived){let error=new Error("Premature close");error.code="ERR_STREAM_PREMATURE_CLOSE",errorCallback(error);}},onData=buf=>{properLastChunkReceived=Buffer$1.compare(buf.slice(-5),LAST_CHUNK)===0,!properLastChunkReceived&&previousChunk&&(properLastChunkReceived=Buffer$1.compare(previousChunk.slice(-3),LAST_CHUNK.slice(0,3))===0&&Buffer$1.compare(buf.slice(-2),LAST_CHUNK.slice(3))===0),previousChunk=buf;};socket.prependListener("close",onSocketClose),socket.on("data",onData),request.on("close",()=>{socket.removeListener("close",onSocketClose),socket.removeListener("data",onData);});});}var urlAlphabet="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var POOL_SIZE_MULTIPLIER=128,pool,poolOffset,fillPool=bytes=>{!pool||pool.length<bytes?(pool=Buffer.allocUnsafe(bytes*POOL_SIZE_MULTIPLIER),randomFillSync(pool),poolOffset=0):poolOffset+bytes>pool.length&&(randomFillSync(pool),poolOffset=0),poolOffset+=bytes;};var nanoid=(size=21)=>{fillPool(size-=0);let id="";for(let i=poolOffset-size;i<poolOffset;i++)id+=urlAlphabet[pool[i]&63];return id};var oneWayHash=payload=>{let hash=createHash("sha256");return hash.update("storybook-telemetry-salt"),hash.update(payload),hash.digest("hex")};function normalizeGitUrl(rawUrl){return rawUrl.trim().replace(/#.*$/,"").replace(/^.*@/,"").replace(/^.*\/\//,"").replace(":","/")}var anonymousProjectId,getAnonymousProjectId=()=>{if(anonymousProjectId)return anonymousProjectId;let unhashedProjectId;try{let projectRoot=getProjectRoot(),projectRootPath=path2.relative(projectRoot,process.cwd()),originBuffer=execSync("git config --local --get remote.origin.url",{timeout:1e3,stdio:"pipe"});unhashedProjectId=`${normalizeGitUrl(String(originBuffer))}${projectRootPath}`,anonymousProjectId=oneWayHash(unhashedProjectId);}catch{}return anonymousProjectId};var operation=Promise.resolve(),setHelper=async(eventType,body)=>{let lastEvents=await cache.get("lastEvents")||{};lastEvents[eventType]={body,timestamp:Date.now()},await cache.set("lastEvents",lastEvents);},set=async(eventType,body)=>(await operation,operation=setHelper(eventType,body),operation);var upgradeFields=event=>{let{body,timestamp}=event;return {timestamp,eventType:body?.eventType,eventId:body?.eventId,sessionId:body?.sessionId}},UPGRADE_EVENTS=["init","upgrade"],RUN_EVENTS=["build","dev","error"],lastEvent=(lastEvents,eventTypes)=>{let descendingEvents=eventTypes.map(eventType=>lastEvents?.[eventType]).filter(Boolean).sort((a,b)=>b.timestamp-a.timestamp);return descendingEvents.length>0?descendingEvents[0]:void 0},getPrecedingUpgrade=async(events=void 0)=>{let lastEvents=events||await cache.get("lastEvents")||{},lastUpgradeEvent=lastEvent(lastEvents,UPGRADE_EVENTS),lastRunEvent=lastEvent(lastEvents,RUN_EVENTS);if(lastUpgradeEvent)return !lastRunEvent?.timestamp||lastUpgradeEvent.timestamp>lastRunEvent.timestamp?upgradeFields(lastUpgradeEvent):void 0};var SESSION_TIMEOUT=1e3*60*60*2,sessionId;var getSessionId=async()=>{let now=Date.now();if(!sessionId){let session=await cache.get("session");session&&session.lastUsed>=now-SESSION_TIMEOUT?sessionId=session.id:sessionId=nanoid();}return await cache.set("session",{id:sessionId,lastUsed:now}),sessionId};var URL2=process.env.STORYBOOK_TELEMETRY_URL||"https://storybook.js.org/event-log",fetch2=retry(fetch),tasks=[],addToGlobalContext=(key,value)=>{globalContext[key]=value;},getOperatingSystem=()=>{try{let platform2=os.platform();return platform2==="win32"?"Windows":platform2==="darwin"?"macOS":platform2==="linux"?"Linux":`Other: ${platform2}`}catch{return "Unknown"}},globalContext={inCI:!!process.env.CI,isTTY:process.stdout.isTTY,platform:getOperatingSystem()},prepareRequest=async(data,context,options)=>{let{eventType,payload,metadata,...rest}=data,sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};return fetch2(URL2,{method:"POST",body:JSON.stringify(body),headers:{"Content-Type":"application/json"},retries:3,retryOn:[503,504],retryDelay:attempt=>2**attempt*(typeof options?.retryDelay=="number"&&!Number.isNaN(options?.retryDelay)?options.retryDelay:1e3)})};async function sendTelemetry(data,options={retryDelay:1e3,immediate:!1}){let{eventType,payload,metadata,...rest}=data,context=options.stripMetadata?globalContext:{...globalContext,anonymousId:getAnonymousProjectId()},request;try{request=prepareRequest(data,context,options),tasks.push(request),options.immediate?await Promise.all(tasks):await request;let sessionId2=await getSessionId(),eventId=nanoid(),body={...rest,eventType,eventId,sessionId:sessionId2,metadata,payload,context};await set(eventType,body);}catch{}finally{tasks=tasks.filter(task=>task!==request);}}var TELEMETRY_KEY_NOTIFY_DATE="telemetry-notification-date",logger=console,notify=async()=>{await cache.get(TELEMETRY_KEY_NOTIFY_DATE,null)||(cache.set(TELEMETRY_KEY_NOTIFY_DATE,Date.now()),logger.log(),logger.log(`${chalk.magenta.bold("attention")} => Storybook now collects completely anonymous telemetry regarding usage.`),logger.log("This information is used to shape Storybook's roadmap and prioritize features."),logger.log("You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:"),logger.log(chalk.cyan("https://storybook.js.org/telemetry")),logger.log());};var telemetry=async(eventType,payload={},options={})=>{eventType!=="boot"&&await notify();let telemetryData={eventType,payload};try{options?.stripMetadata||(telemetryData.metadata=await getStorybookMetadata(options?.configDir));}catch(error){telemetryData.payload.metadataErrorMessage=sanitizeError(error).message,options?.enableCrashReports&&(telemetryData.payload.metadataError=sanitizeError(error));}finally{let{error}=telemetryData.payload;error&&(telemetryData.payload.error=sanitizeError(error)),(!telemetryData.payload.error||options?.enableCrashReports)&&(process.env?.STORYBOOK_TELEMETRY_DEBUG&&(logger$1.info(`
27
27
  [telemetry]`),logger$1.info(JSON.stringify(telemetryData,null,2))),await sendTelemetry(telemetryData,options));}};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/telemetry",
3
- "version": "8.0.0-alpha.3",
3
+ "version": "8.0.0-alpha.5",
4
4
  "description": "Telemetry logging for crash reports and usage statistics",
5
5
  "keywords": [
6
6
  "storybook"
@@ -44,9 +44,9 @@
44
44
  "prep": "node --loader ../../../scripts/node_modules/esbuild-register/loader.js -r ../../../scripts/node_modules/esbuild-register/register.js ../../../scripts/prepare/bundle.ts"
45
45
  },
46
46
  "dependencies": {
47
- "@storybook/client-logger": "8.0.0-alpha.3",
48
- "@storybook/core-common": "8.0.0-alpha.3",
49
- "@storybook/csf-tools": "8.0.0-alpha.3",
47
+ "@storybook/client-logger": "8.0.0-alpha.5",
48
+ "@storybook/core-common": "8.0.0-alpha.5",
49
+ "@storybook/csf-tools": "8.0.0-alpha.5",
50
50
  "chalk": "^4.1.0",
51
51
  "detect-package-manager": "^2.0.1",
52
52
  "fetch-retry": "^5.0.2",
package/jest.config.js DELETED
@@ -1,7 +0,0 @@
1
- const path = require('path');
2
- const baseConfig = require('../../jest.config.node');
3
-
4
- module.exports = {
5
- ...baseConfig,
6
- displayName: __dirname.split(path.sep).slice(-2).join(path.posix.sep),
7
- };