diff --git a/dist/artifact-X8n9-E0a.js b/dist/artifact-TLiPkbkg.js similarity index 99% rename from dist/artifact-X8n9-E0a.js rename to dist/artifact-TLiPkbkg.js index 1f1ab2e0..1a7b0445 100644 --- a/dist/artifact-X8n9-E0a.js +++ b/dist/artifact-TLiPkbkg.js @@ -145,8 +145,8 @@ Every response you post — regardless of channel (issue, PR, discussion, review `),o=t.computeHMACSHA256(a);return{sasQueryParameters:new hk(e.version,o,i,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,n,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,t.userDelegationKey),stringToSign:a}}function Sk(e,t){if(e=Ek(e),!e.permissions||!e.expiresOn)throw RangeError(`Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.`);let n=`c`,r=e.snapshotTime;e.blobName&&(n=`b`,e.snapshotTime?n=`bs`:e.versionId&&(n=`bv`,r=e.versionId));let i;e.permissions&&(i=e.blobName?dk.parse(e.permissions.toString()).toString():fk.parse(e.permissions.toString()).toString());let a=[i||``,e.startsOn?JO(e.startsOn,!1):``,e.expiresOn?JO(e.expiresOn,!1):``,Tk(t.accountName,e.containerName,e.blobName),t.userDelegationKey.signedObjectId,t.userDelegationKey.signedTenantId,t.userDelegationKey.signedStartsOn?JO(t.userDelegationKey.signedStartsOn,!1):``,t.userDelegationKey.signedExpiresOn?JO(t.userDelegationKey.signedExpiresOn,!1):``,t.userDelegationKey.signedService,t.userDelegationKey.signedVersion,e.preauthorizedAgentObjectId,void 0,e.correlationId,e.ipRange?pk(e.ipRange):``,e.protocol?e.protocol:``,e.version,n,r,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join(` `),o=t.computeHMACSHA256(a);return{sasQueryParameters:new hk(e.version,o,i,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,n,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,t.userDelegationKey,e.preauthorizedAgentObjectId,e.correlationId),stringToSign:a}}function Ck(e,t){if(e=Ek(e),!e.permissions||!e.expiresOn)throw RangeError(`Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.`);let n=`c`,r=e.snapshotTime;e.blobName&&(n=`b`,e.snapshotTime?n=`bs`:e.versionId&&(n=`bv`,r=e.versionId));let i;e.permissions&&(i=e.blobName?dk.parse(e.permissions.toString()).toString():fk.parse(e.permissions.toString()).toString());let a=[i||``,e.startsOn?JO(e.startsOn,!1):``,e.expiresOn?JO(e.expiresOn,!1):``,Tk(t.accountName,e.containerName,e.blobName),t.userDelegationKey.signedObjectId,t.userDelegationKey.signedTenantId,t.userDelegationKey.signedStartsOn?JO(t.userDelegationKey.signedStartsOn,!1):``,t.userDelegationKey.signedExpiresOn?JO(t.userDelegationKey.signedExpiresOn,!1):``,t.userDelegationKey.signedService,t.userDelegationKey.signedVersion,e.preauthorizedAgentObjectId,void 0,e.correlationId,e.ipRange?pk(e.ipRange):``,e.protocol?e.protocol:``,e.version,n,r,e.encryptionScope,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join(` `),o=t.computeHMACSHA256(a);return{sasQueryParameters:new hk(e.version,o,i,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,n,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,t.userDelegationKey,e.preauthorizedAgentObjectId,e.correlationId,e.encryptionScope),stringToSign:a}}function wk(e,t){if(e=Ek(e),!e.permissions||!e.expiresOn)throw RangeError(`Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.`);let n=`c`,r=e.snapshotTime;e.blobName&&(n=`b`,e.snapshotTime?n=`bs`:e.versionId&&(n=`bv`,r=e.versionId));let i;e.permissions&&(i=e.blobName?dk.parse(e.permissions.toString()).toString():fk.parse(e.permissions.toString()).toString());let a=[i||``,e.startsOn?JO(e.startsOn,!1):``,e.expiresOn?JO(e.expiresOn,!1):``,Tk(t.accountName,e.containerName,e.blobName),t.userDelegationKey.signedObjectId,t.userDelegationKey.signedTenantId,t.userDelegationKey.signedStartsOn?JO(t.userDelegationKey.signedStartsOn,!1):``,t.userDelegationKey.signedExpiresOn?JO(t.userDelegationKey.signedExpiresOn,!1):``,t.userDelegationKey.signedService,t.userDelegationKey.signedVersion,e.preauthorizedAgentObjectId,void 0,e.correlationId,void 0,e.delegatedUserObjectId,e.ipRange?pk(e.ipRange):``,e.protocol?e.protocol:``,e.version,n,r,e.encryptionScope,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join(` -`),o=t.computeHMACSHA256(a);return{sasQueryParameters:new hk(e.version,o,i,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,n,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,t.userDelegationKey,e.preauthorizedAgentObjectId,e.correlationId,e.encryptionScope,e.delegatedUserObjectId),stringToSign:a}}function Tk(e,t,n){let r=[`/blob/${e}/${t}`];return n&&r.push(`/${n}`),r.join(``)}function Ek(e){let t=e.version?e.version:Ib;if(e.snapshotTime&&t<`2018-11-09`)throw RangeError(`'version' must be >= '2018-11-09' when providing 'snapshotTime'.`);if(e.blobName===void 0&&e.snapshotTime)throw RangeError(`Must provide 'blobName' when providing 'snapshotTime'.`);if(e.versionId&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'versionId'.`);if(e.blobName===void 0&&e.versionId)throw RangeError(`Must provide 'blobName' when providing 'versionId'.`);if(e.permissions&&e.permissions.setImmutabilityPolicy&&t<`2020-08-04`)throw RangeError(`'version' must be >= '2020-08-04' when provided 'i' permission.`);if(e.permissions&&e.permissions.deleteVersion&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'x' permission.`);if(e.permissions&&e.permissions.permanentDelete&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'y' permission.`);if(e.permissions&&e.permissions.tag&&t<`2019-12-12`)throw RangeError(`'version' must be >= '2019-12-12' when providing 't' permission.`);if(t<`2020-02-10`&&e.permissions&&(e.permissions.move||e.permissions.execute))throw RangeError(`'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.`);if(t<`2021-04-10`&&e.permissions&&e.permissions.filterByTags)throw RangeError(`'version' must be >= '2021-04-10' when providing the 'f' permission.`);if(t<`2020-02-10`&&(e.preauthorizedAgentObjectId||e.correlationId))throw RangeError(`'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.`);if(e.encryptionScope&&t<`2020-12-06`)throw RangeError(`'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.`);return e.version=t,e}var Dk=class{_leaseId;_url;_containerOrBlobOperation;_isContainer;get leaseId(){return this._leaseId}get url(){return this._url}constructor(e,t){let n=e.storageClientContext;this._url=e.url,e.name===void 0?(this._isContainer=!0,this._containerOrBlobOperation=n.container):(this._isContainer=!1,this._containerOrBlobOperation=n.blob),t||=Pm(),this._leaseId=t}async acquireLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-acquireLease`,t,async n=>ck(await this._containerOrBlobOperation.acquireLease({abortSignal:t.abortSignal,duration:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},proposedLeaseId:this._leaseId,tracingOptions:n.tracingOptions})))}async changeLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-changeLease`,t,async n=>{let r=ck(await this._containerOrBlobOperation.changeLease(this._leaseId,e,{abortSignal:t.abortSignal,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return this._leaseId=e,r})}async releaseLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==``||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==``||e.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-releaseLease`,e,async t=>ck(await this._containerOrBlobOperation.releaseLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async renewLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==``||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==``||e.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-renewLease`,e,async t=>this._containerOrBlobOperation.renewLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions}))}async breakLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-breakLease`,t,async n=>{let r={abortSignal:t.abortSignal,breakPeriod:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions};return ck(await this._containerOrBlobOperation.breakLease(r))})}},Ok=class extends je{start;offset;end;getter;source;retries=0;maxRetryRequests;onProgress;options;constructor(e,t,n,r,i={}){super({highWaterMark:i.highWaterMark}),this.getter=t,this.source=e,this.start=n,this.offset=n,this.end=n+r-1,this.maxRetryRequests=i.maxRetryRequests&&i.maxRetryRequests>=0?i.maxRetryRequests:0,this.onProgress=i.onProgress,this.options=i,this.setSourceEventHandlers()}_read(){this.source.resume()}setSourceEventHandlers(){this.source.on(`data`,this.sourceDataHandler),this.source.on(`end`,this.sourceErrorOrEndHandler),this.source.on(`error`,this.sourceErrorOrEndHandler),this.source.on(`aborted`,this.sourceAbortedHandler)}removeSourceEventHandlers(){this.source.removeListener(`data`,this.sourceDataHandler),this.source.removeListener(`end`,this.sourceErrorOrEndHandler),this.source.removeListener(`error`,this.sourceErrorOrEndHandler),this.source.removeListener(`aborted`,this.sourceAbortedHandler)}sourceDataHandler=e=>{if(this.options.doInjectErrorOnce){this.options.doInjectErrorOnce=void 0,this.source.pause(),this.sourceErrorOrEndHandler(),this.source.destroy();return}this.offset+=e.length,this.onProgress&&this.onProgress({loadedBytes:this.offset-this.start}),this.push(e)||this.source.pause()};sourceAbortedHandler=()=>{let e=new km(`The operation was aborted.`);this.destroy(e)};sourceErrorOrEndHandler=e=>{if(e&&e.name===`AbortError`){this.destroy(e);return}this.removeSourceEventHandlers(),this.offset-1===this.end?this.push(null):this.offset<=this.end?this.retries{this.source=e,this.setSourceEventHandlers()}).catch(e=>{this.destroy(e)})):this.destroy(Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset-1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`)):this.destroy(Error(`Data corruption failure: Received more data than original request, data needed offset is ${this.end}, received offset: ${this.offset-1}`))};_destroy(e,t){this.removeSourceEventHandlers(),this.source.destroy(),t(e===null?void 0:e)}},kk=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){return this.originalResponse.copyCompletedOn}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get tagCount(){return this.originalResponse.tagCount}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get lastAccessed(){return this.originalResponse.lastAccessed}get createdOn(){return this.originalResponse.createdOn}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get versionId(){return this.originalResponse.versionId}get isCurrentVersion(){return this.originalResponse.isCurrentVersion}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get objectReplicationDestinationPolicyId(){return this.originalResponse.objectReplicationDestinationPolicyId}get objectReplicationSourceProperties(){return this.originalResponse.objectReplicationSourceProperties}get isSealed(){return this.originalResponse.isSealed}get immutabilityPolicyExpiresOn(){return this.originalResponse.immutabilityPolicyExpiresOn}get immutabilityPolicyMode(){return this.originalResponse.immutabilityPolicyMode}get legalHold(){return this.originalResponse.legalHold}get contentAsBlob(){return this.originalResponse.blobBody}get readableStreamBody(){return Fm?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,t,n,r,i={}){this.originalResponse=e,this.blobDownloadStream=new Ok(this.originalResponse.readableStreamBody,t,n,r,i)}};const Ak=new Uint8Array([79,98,106,1]);var jk=class e{static async readFixedBytes(e,t,n={}){let r=await e.read(t,{abortSignal:n.abortSignal});if(r.length!==t)throw Error(`Hit stream end.`);return r}static async readByte(t,n={}){return(await e.readFixedBytes(t,1,n))[0]}static async readZigZagLong(t,n={}){let r=0,i=0,a,o,s;do a=await e.readByte(t,n),o=a&128,r|=(a&127)<2**53-1)throw Error(`Integer overflow.`);return i}return r>>1^-(r&1)}static async readLong(t,n={}){return e.readZigZagLong(t,n)}static async readInt(t,n={}){return e.readZigZagLong(t,n)}static async readNull(){return null}static async readBoolean(t,n={}){let r=await e.readByte(t,n);if(r===1)return!0;if(r===0)return!1;throw Error(`Byte was not a boolean.`)}static async readFloat(t,n={}){let r=await e.readFixedBytes(t,4,n);return new DataView(r.buffer,r.byteOffset,r.byteLength).getFloat32(0,!0)}static async readDouble(t,n={}){let r=await e.readFixedBytes(t,8,n);return new DataView(r.buffer,r.byteOffset,r.byteLength).getFloat64(0,!0)}static async readBytes(t,n={}){let r=await e.readLong(t,n);if(r<0)throw Error(`Bytes size was negative.`);return t.read(r,{abortSignal:n.abortSignal})}static async readString(t,n={}){let r=await e.readBytes(t,n);return new TextDecoder().decode(r)}static async readMapPair(t,n,r={}){return{key:await e.readString(t,r),value:await n(t,r)}}static async readMap(t,n,r={}){let i=await e.readArray(t,(t,r={})=>e.readMapPair(t,n,r),r),a={};for(let e of i)a[e.key]=e.value;return a}static async readArray(t,n,r={}){let i=[];for(let a=await e.readLong(t,r);a!==0;a=await e.readLong(t,r))for(a<0&&(await e.readLong(t,r),a=-a);a--;){let e=await n(t,r);i.push(e)}return i}},Mk;(function(e){e.RECORD=`record`,e.ENUM=`enum`,e.ARRAY=`array`,e.MAP=`map`,e.UNION=`union`,e.FIXED=`fixed`})(Mk||={});var Nk;(function(e){e.NULL=`null`,e.BOOLEAN=`boolean`,e.INT=`int`,e.LONG=`long`,e.FLOAT=`float`,e.DOUBLE=`double`,e.BYTES=`bytes`,e.STRING=`string`})(Nk||={});var Pk=class e{static fromSchema(t){return typeof t==`string`?e.fromStringSchema(t):Array.isArray(t)?e.fromArraySchema(t):e.fromObjectSchema(t)}static fromStringSchema(e){switch(e){case Nk.NULL:case Nk.BOOLEAN:case Nk.INT:case Nk.LONG:case Nk.FLOAT:case Nk.DOUBLE:case Nk.BYTES:case Nk.STRING:return new Fk(e);default:throw Error(`Unexpected Avro type ${e}`)}}static fromArraySchema(t){return new Lk(t.map(e.fromSchema))}static fromObjectSchema(t){let n=t.type;try{return e.fromStringSchema(n)}catch{}switch(n){case Mk.RECORD:if(t.aliases)throw Error(`aliases currently is not supported, schema: ${t}`);if(!t.name)throw Error(`Required attribute 'name' doesn't exist on schema: ${t}`);let r={};if(!t.fields)throw Error(`Required attribute 'fields' doesn't exist on schema: ${t}`);for(let n of t.fields)r[n.name]=e.fromSchema(n.type);return new zk(r,t.name);case Mk.ENUM:if(t.aliases)throw Error(`aliases currently is not supported, schema: ${t}`);if(!t.symbols)throw Error(`Required attribute 'symbols' doesn't exist on schema: ${t}`);return new Ik(t.symbols);case Mk.MAP:if(!t.values)throw Error(`Required attribute 'values' doesn't exist on schema: ${t}`);return new Rk(e.fromSchema(t.values));case Mk.ARRAY:case Mk.FIXED:default:throw Error(`Unexpected Avro type ${n} in ${t}`)}}},Fk=class extends Pk{_primitive;constructor(e){super(),this._primitive=e}read(e,t={}){switch(this._primitive){case Nk.NULL:return jk.readNull();case Nk.BOOLEAN:return jk.readBoolean(e,t);case Nk.INT:return jk.readInt(e,t);case Nk.LONG:return jk.readLong(e,t);case Nk.FLOAT:return jk.readFloat(e,t);case Nk.DOUBLE:return jk.readDouble(e,t);case Nk.BYTES:return jk.readBytes(e,t);case Nk.STRING:return jk.readString(e,t);default:throw Error(`Unknown Avro Primitive`)}}},Ik=class extends Pk{_symbols;constructor(e){super(),this._symbols=e}async read(e,t={}){let n=await jk.readInt(e,t);return this._symbols[n]}},Lk=class extends Pk{_types;constructor(e){super(),this._types=e}async read(e,t={}){let n=await jk.readInt(e,t);return this._types[n].read(e,t)}},Rk=class extends Pk{_itemType;constructor(e){super(),this._itemType=e}read(e,t={}){return jk.readMap(e,(e,t)=>this._itemType.read(e,t),t)}},zk=class extends Pk{_name;_fields;constructor(e,t){super(),this._fields=e,this._name=t}async read(e,t={}){let n={};n.$schema=this._name;for(let r in this._fields)Object.prototype.hasOwnProperty.call(this._fields,r)&&(n[r]=await this._fields[r].read(e,t));return n}};function Bk(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(let n=0;n0)for(let t=0;t0}async*parseObjects(e={}){for(this._initialized||await this.initialize(e);this.hasNext();){let t=await this._itemType.read(this._dataStream,{abortSignal:e.abortSignal});if(this._itemsRemainingInBlock--,this._objectIndex++,this._itemsRemainingInBlock===0){let t=await jk.readFixedBytes(this._dataStream,16,{abortSignal:e.abortSignal});if(this._blockOffset=this._initialBlockOffset+this._dataStream.position,this._objectIndex=0,!Bk(this._syncMarker,t))throw Error(`Stream is not a valid Avro file.`);try{this._itemsRemainingInBlock=await jk.readLong(this._dataStream,{abortSignal:e.abortSignal})}catch{this._itemsRemainingInBlock=0}this._itemsRemainingInBlock>0&&await jk.readLong(this._dataStream,{abortSignal:e.abortSignal})}yield t}}},Hk=class{};const Uk=new km(`Reading from the avro stream was aborted.`);var Wk=class extends Hk{_position;_readable;toUint8Array(e){return typeof e==`string`?Qe.from(e):e}constructor(e){super(),this._readable=e,this._position=0}get position(){return this._position}async read(e,t={}){if(t.abortSignal?.aborted)throw Uk;if(e<0)throw Error(`size parameter should be positive: ${e}`);if(e===0)return new Uint8Array;if(!this._readable.readable)throw Error(`Stream no longer readable.`);let n=this._readable.read(e);return n?(this._position+=n.length,this.toUint8Array(n)):new Promise((n,r)=>{let i=()=>{this._readable.removeListener(`readable`,a),this._readable.removeListener(`error`,o),this._readable.removeListener(`end`,o),this._readable.removeListener(`close`,o),t.abortSignal&&t.abortSignal.removeEventListener(`abort`,s)},a=()=>{let t=this._readable.read(e);t&&(this._position+=t.length,i(),n(this.toUint8Array(t)))},o=()=>{i(),r()},s=()=>{i(),r(Uk)};this._readable.on(`readable`,a),this._readable.once(`error`,o),this._readable.once(`end`,o),this._readable.once(`close`,o),t.abortSignal&&t.abortSignal.addEventListener(`abort`,s)})}},Gk=class extends je{source;avroReader;avroIter;avroPaused=!0;onProgress;onError;constructor(e,t={}){super(),this.source=e,this.onProgress=t.onProgress,this.onError=t.onError,this.avroReader=new Vk(new Wk(this.source)),this.avroIter=this.avroReader.parseObjects({abortSignal:t.abortSignal})}_read(){this.avroPaused&&this.readInternal().catch(e=>{this.emit(`error`,e)})}async readInternal(){this.avroPaused=!1;let e;do{if(e=await this.avroIter.next(),e.done)break;let t=e.value,n=t.$schema;if(typeof n!=`string`)throw Error(`Missing schema in avro record.`);switch(n){case`com.microsoft.azure.storage.queryBlobContents.resultData`:{let e=t.data;if(!(e instanceof Uint8Array))throw Error(`Invalid data in avro result record.`);this.push(Buffer.from(e))||(this.avroPaused=!0)}break;case`com.microsoft.azure.storage.queryBlobContents.progress`:{let e=t.bytesScanned;if(typeof e!=`number`)throw Error(`Invalid bytesScanned in avro progress record.`);this.onProgress&&this.onProgress({loadedBytes:e})}break;case`com.microsoft.azure.storage.queryBlobContents.end`:if(this.onProgress){let e=t.totalBytes;if(typeof e!=`number`)throw Error(`Invalid totalBytes in avro end record.`);this.onProgress({loadedBytes:e})}this.push(null);break;case`com.microsoft.azure.storage.queryBlobContents.error`:if(this.onError){let e=t.fatal;if(typeof e!=`boolean`)throw Error(`Invalid fatal in avro error record.`);let n=t.name;if(typeof n!=`string`)throw Error(`Invalid name in avro error record.`);let r=t.description;if(typeof r!=`string`)throw Error(`Invalid description in avro error record.`);let i=t.position;if(typeof i!=`number`)throw Error(`Invalid position in avro error record.`);this.onError({position:i,name:n,isFatal:e,description:r})}break;default:throw Error(`Unknown schema ${n} in avro progress record.`)}}while(!e.done&&!this.avroPaused)}},Kk=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get blobBody(){}get readableStreamBody(){return Fm?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,t={}){this.originalResponse=e,this.blobDownloadStream=new Gk(this.originalResponse.readableStreamBody,t)}},qk;(function(e){e.Hot=`Hot`,e.Cool=`Cool`,e.Cold=`Cold`,e.Archive=`Archive`})(qk||={});var Jk;(function(e){e.P4=`P4`,e.P6=`P6`,e.P10=`P10`,e.P15=`P15`,e.P20=`P20`,e.P30=`P30`,e.P40=`P40`,e.P50=`P50`,e.P60=`P60`,e.P70=`P70`,e.P80=`P80`})(Jk||={});function Yk(e){if(e!==void 0)return e}function Xk(e,t){if(e&&!t)throw RangeError(`Customer-provided encryption key must be used over HTTPS.`);e&&!e.encryptionAlgorithm&&(e.encryptionAlgorithm=`AES256`)}var Zk;(function(e){e.StorageOAuthScopes=`https://storage.azure.com/.default`,e.DiskComputeOAuthScopes=`https://disk.compute.azure.com/.default`})(Zk||={});function Qk(e){let t=(e._response.parsedBody.pageRange||[]).map(e=>({offset:e.start,count:e.end-e.start})),n=(e._response.parsedBody.clearRange||[]).map(e=>({offset:e.start,count:e.end-e.start}));return{...e,pageRange:t,clearRange:n,_response:{...e._response,parsedBody:{pageRange:t,clearRange:n}}}}var $k=class e extends Error{constructor(t){super(t),this.name=`PollerStoppedError`,Object.setPrototypeOf(this,e.prototype)}},eA=class e extends Error{constructor(t){super(t),this.name=`PollerCancelledError`,Object.setPrototypeOf(this,e.prototype)}},tA=class{constructor(e){this.resolveOnUnsuccessful=!1,this.stopped=!0,this.pollProgressCallbacks=[],this.operation=e,this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t}),this.promise.catch(()=>{})}async startPolling(e={}){for(this.stopped&&=!1;!this.isStopped()&&!this.isDone();)await this.poll(e),await this.delay()}async pollOnce(e={}){this.isDone()||(this.operation=await this.operation.update({abortSignal:e.abortSignal,fireProgress:this.fireProgress.bind(this)})),this.processUpdatedState()}fireProgress(e){for(let t of this.pollProgressCallbacks)t(e)}async cancelOnce(e={}){this.operation=await this.operation.cancel(e)}poll(e={}){if(!this.pollOncePromise){this.pollOncePromise=this.pollOnce(e);let t=()=>{this.pollOncePromise=void 0};this.pollOncePromise.then(t,t).catch(this.reject)}return this.pollOncePromise}processUpdatedState(){if(this.operation.state.error&&(this.stopped=!0,!this.resolveOnUnsuccessful))throw this.reject(this.operation.state.error),this.operation.state.error;if(this.operation.state.isCancelled&&(this.stopped=!0,!this.resolveOnUnsuccessful)){let e=new eA(`Operation was canceled`);throw this.reject(e),e}this.isDone()&&this.resolve&&this.resolve(this.getResult())}async pollUntilDone(e={}){return this.stopped&&this.startPolling(e).catch(this.reject),this.processUpdatedState(),this.promise}onProgress(e){return this.pollProgressCallbacks.push(e),()=>{this.pollProgressCallbacks=this.pollProgressCallbacks.filter(t=>t!==e)}}isDone(){let e=this.operation.state;return!!(e.isCompleted||e.isCancelled||e.error)}stopPolling(){this.stopped||(this.stopped=!0,this.reject&&this.reject(new $k(`This poller is already stopped`)))}isStopped(){return this.stopped}cancelOperation(e={}){if(!this.cancelPromise)this.cancelPromise=this.cancelOnce(e);else if(e.abortSignal)throw Error(`A cancel request is currently pending`);return this.cancelPromise}getOperationState(){return this.operation.state}getResult(){return this.operation.state.result}toString(){return this.operation.toString()}},nA=class extends tA{intervalInMs;constructor(e){let{blobClient:t,copySource:n,intervalInMs:r=15e3,onProgress:i,resumeFrom:a,startCopyFromURLOptions:o}=e,s;a&&(s=JSON.parse(a).state);let c=oA({...s,blobClient:t,copySource:n,startCopyFromURLOptions:o});super(c),typeof i==`function`&&this.onProgress(i),this.intervalInMs=r}delay(){return jm(this.intervalInMs)}};const rA=async function(e={}){let t=this.state,{copyId:n}=t;return t.isCompleted?oA(t):n?(await t.blobClient.abortCopyFromURL(n,{abortSignal:e.abortSignal}),t.isCancelled=!0,oA(t)):(t.isCancelled=!0,oA(t))},iA=async function(e={}){let t=this.state,{blobClient:n,copySource:r,startCopyFromURLOptions:i}=t;if(!t.isStarted){t.isStarted=!0;let e=await n.startCopyFromURL(r,i);t.copyId=e.copyId,e.copyStatus===`success`&&(t.result=e,t.isCompleted=!0)}else if(!t.isCompleted)try{let n=await t.blobClient.getProperties({abortSignal:e.abortSignal}),{copyStatus:r,copyProgress:i}=n,a=t.copyProgress;i&&(t.copyProgress=i),r===`pending`&&i!==a&&typeof e.fireProgress==`function`?e.fireProgress(t):r===`success`?(t.result=n,t.isCompleted=!0):r===`failed`&&(t.error=Error(`Blob copy failed with reason: "${n.copyStatusDescription||`unknown`}"`),t.isCompleted=!0)}catch(e){t.error=e,t.isCompleted=!0}return oA(t)},aA=function(){return JSON.stringify({state:this.state},(e,t)=>{if(e!==`blobClient`)return t})};function oA(e){return{state:{...e},cancel:rA,toString:aA,update:iA}}function sA(e){if(e.offset<0)throw RangeError(`Range.offset cannot be smaller than 0.`);if(e.count&&e.count<=0)throw RangeError(`Range.count must be larger than 0. Leave it undefined if you want a range from offset to the end.`);return e.count?`bytes=${e.offset}-${e.offset+e.count-1}`:`bytes=${e.offset}-`}var cA;(function(e){e[e.Good=0]=`Good`,e[e.Error=1]=`Error`})(cA||={});var lA=class{concurrency;actives=0;completed=0;offset=0;operations=[];state=cA.Good;emitter;constructor(e=5){if(e<1)throw RangeError(`concurrency must be larger than 0`);this.concurrency=e,this.emitter=new Te}addOperation(e){this.operations.push(async()=>{try{this.actives++,await e(),this.actives--,this.completed++,this.parallelExecute()}catch(e){this.emitter.emit(`error`,e)}})}async do(){return this.operations.length===0?Promise.resolve():(this.parallelExecute(),new Promise((e,t)=>{this.emitter.on(`finish`,e),this.emitter.on(`error`,e=>{this.state=cA.Error,t(e)})}))}nextOperation(){return this.offset=this.operations.length){this.emitter.emit(`finish`);return}for(;this.actives{let c=setTimeout(()=>s(Error(`The operation cannot be completed in timeout.`)),1e5);e.on(`readable`,()=>{if(a>=o){clearTimeout(c),r();return}let s=e.read();if(!s)return;typeof s==`string`&&(s=Buffer.from(s,i));let l=a+s.length>o?o-a:s.length;t.fill(s.slice(0,l),n+a,n+a+l),a+=l}),e.on(`end`,()=>{clearTimeout(c),a{clearTimeout(c),s(e)})})}async function dA(e,t){return new Promise((n,r)=>{let i=Ye.createWriteStream(t);e.on(`error`,e=>{r(e)}),i.on(`error`,e=>{r(e)}),i.on(`close`,n),e.pipe(i)})}const fA=Fe.promisify(Ye.stat),pA=Ye.createReadStream;var mA=class e extends lk{blobContext;_name;_containerName;_versionId;_snapshot;get name(){return this._name}get containerName(){return this._containerName}constructor(e,t,n,r){r||={};let i,a;if(Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,n&&typeof n!=`string`&&(r=n),i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),{blobName:this._name,containerName:this._containerName}=this.getBlobAndContainerNamesFromUrl(),this.blobContext=this.storageClientContext.blob,this._snapshot=GO(this.url,zb.Parameters.SNAPSHOT),this._versionId=GO(this.url,zb.Parameters.VERSIONID)}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}withVersion(t){return new e(WO(this.url,zb.Parameters.VERSIONID,t.length===0?void 0:t),this.pipeline)}getAppendBlobClient(){return new hA(this.url,this.pipeline)}getBlockBlobClient(){return new gA(this.url,this.pipeline)}getPageBlobClient(){return new _A(this.url,this.pipeline)}async download(e=0,t,n={}){return n.conditions=n.conditions||{},n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-download`,n,async r=>{let i=ck(await this.blobContext.download({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onDownloadProgress:Fm?void 0:n.onProgress},range:e===0&&!t?void 0:sA({offset:e,count:t}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey,tracingOptions:r.tracingOptions})),a={...i,_response:i._response,objectReplicationDestinationPolicyId:i.objectReplicationPolicyId,objectReplicationSourceProperties:ak(i.objectReplicationRules)};if(!Fm)return a;if((n.maxRetryRequests===void 0||n.maxRetryRequests<0)&&(n.maxRetryRequests=5),i.contentLength===void 0)throw RangeError(`File download response doesn't contain valid content length header`);if(!i.etag)throw RangeError(`File download response doesn't contain valid etag header`);return new kk(a,async t=>{let r={leaseAccessConditions:n.conditions,modifiedAccessConditions:{ifMatch:n.conditions.ifMatch||i.etag,ifModifiedSince:n.conditions.ifModifiedSince,ifNoneMatch:n.conditions.ifNoneMatch,ifUnmodifiedSince:n.conditions.ifUnmodifiedSince,ifTags:n.conditions?.tagConditions},range:sA({count:e+i.contentLength-t,offset:t}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey};return(await this.blobContext.download({abortSignal:n.abortSignal,...r})).readableStreamBody},e,i.contentLength,{maxRetryRequests:n.maxRetryRequests,onProgress:n.onProgress})})}async exists(e={}){return uk.withSpan(`BlobClient-exists`,e,async t=>{try{return Xk(e.customerProvidedKey,this.isHttps),await this.getProperties({abortSignal:e.abortSignal,customerProvidedKey:e.customerProvidedKey,conditions:e.conditions,tracingOptions:t.tracingOptions}),!0}catch(e){if(e.statusCode===404)return!1;if(e.statusCode===409&&(e.details.errorCode===`BlobUsesCustomerSpecifiedEncryption`||e.details.errorCode===`BlobDoesNotUseCustomerSpecifiedEncryption`))return!0;throw e}})}async getProperties(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-getProperties`,e,async t=>{let n=ck(await this.blobContext.getProperties({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,tracingOptions:t.tracingOptions}));return{...n,_response:n._response,objectReplicationDestinationPolicyId:n.objectReplicationPolicyId,objectReplicationSourceProperties:ak(n.objectReplicationRules)}})}async delete(e={}){return e.conditions=e.conditions||{},uk.withSpan(`BlobClient-delete`,e,async t=>ck(await this.blobContext.delete({abortSignal:e.abortSignal,deleteSnapshots:e.deleteSnapshots,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async deleteIfExists(e={}){return uk.withSpan(`BlobClient-deleteIfExists`,e,async e=>{try{let t=ck(await this.delete(e));return{succeeded:!0,...t,_response:t._response}}catch(e){if(e.details?.errorCode===`BlobNotFound`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async undelete(e={}){return uk.withSpan(`BlobClient-undelete`,e,async t=>ck(await this.blobContext.undelete({abortSignal:e.abortSignal,tracingOptions:t.tracingOptions})))}async setHTTPHeaders(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-setHTTPHeaders`,t,async n=>ck(await this.blobContext.setHttpHeaders({abortSignal:t.abortSignal,blobHttpHeaders:e,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}async setMetadata(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-setMetadata`,t,async n=>ck(await this.blobContext.setMetadata({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,metadata:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,tracingOptions:n.tracingOptions})))}async setTags(e,t={}){return uk.withSpan(`BlobClient-setTags`,t,async n=>ck(await this.blobContext.setTags({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},blobModifiedAccessConditions:t.conditions,tracingOptions:n.tracingOptions,tags:nk(e)})))}async getTags(e={}){return uk.withSpan(`BlobClient-getTags`,e,async t=>{let n=ck(await this.blobContext.getTags({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},blobModifiedAccessConditions:e.conditions,tracingOptions:t.tracingOptions}));return{...n,_response:n._response,tags:rk({blobTagSet:n.blobTagSet})||{}}})}getBlobLeaseClient(e){return new Dk(this,e)}async createSnapshot(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-createSnapshot`,e,async t=>ck(await this.blobContext.createSnapshot({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,tracingOptions:t.tracingOptions})))}async beginCopyFromURL(e,t={}){let n=new nA({blobClient:{abortCopyFromURL:(...e)=>this.abortCopyFromURL(...e),getProperties:(...e)=>this.getProperties(...e),startCopyFromURL:(...e)=>this.startCopyFromURL(...e)},copySource:e,intervalInMs:t.intervalInMs,onProgress:t.onProgress,resumeFrom:t.resumeFrom,startCopyFromURLOptions:t});return await n.poll(),n}async abortCopyFromURL(e,t={}){return uk.withSpan(`BlobClient-abortCopyFromURL`,t,async n=>ck(await this.blobContext.abortCopyFromURL(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,tracingOptions:n.tracingOptions})))}async syncCopyFromURL(e,t={}){return t.conditions=t.conditions||{},t.sourceConditions=t.sourceConditions||{},uk.withSpan(`BlobClient-syncCopyFromURL`,t,async n=>ck(await this.blobContext.copyFromURL(e,{abortSignal:t.abortSignal,metadata:t.metadata,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions?.ifMatch,sourceIfModifiedSince:t.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions?.ifUnmodifiedSince},sourceContentMD5:t.sourceContentMD5,copySourceAuthorization:ok(t.sourceAuthorization),tier:Yk(t.tier),blobTagsString:tk(t.tags),immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,encryptionScope:t.encryptionScope,copySourceTags:t.copySourceTags,fileRequestIntent:t.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async setAccessTier(e,t={}){return uk.withSpan(`BlobClient-setAccessTier`,t,async n=>ck(await this.blobContext.setTier(Yk(e),{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},rehydratePriority:t.rehydratePriority,tracingOptions:n.tracingOptions})))}async downloadToBuffer(e,t,n,r={}){let i,a=0,o=0,s=r;e instanceof Buffer?(i=e,a=t||0,o=typeof n==`number`?n:0):(a=typeof e==`number`?e:0,o=typeof t==`number`?t:0,s=n||{});let c=s.blockSize??0;if(c<0)throw RangeError(`blockSize option must be >= 0`);if(c===0&&(c=Rb),a<0)throw RangeError(`offset option must be >= 0`);if(o&&o<=0)throw RangeError(`count option must be greater than 0`);return s.conditions||={},uk.withSpan(`BlobClient-downloadToBuffer`,s,async e=>{if(!o){let t=await this.getProperties({...s,tracingOptions:e.tracingOptions});if(o=t.contentLength-a,o<0)throw RangeError(`offset ${a} shouldn't be larger than blob size ${t.contentLength}`)}if(!i)try{i=Buffer.alloc(o)}catch(e){throw Error(`Unable to allocate the buffer of size: ${o}(in bytes). Please try passing your own buffer to the "downloadToBuffer" method or try using other methods like "download" or "downloadToFile".\t ${e.message}`)}if(i.length{let n=a+o;r+c{let a=await this.download(t,n,{...r,tracingOptions:i.tracingOptions});return a.readableStreamBody&&await dA(a.readableStreamBody,e),a.blobDownloadStream=void 0,a})}getBlobAndContainerNamesFromUrl(){let e,t;try{let n=new URL(this.url);if(n.host.split(`.`)[1]===`blob`){let r=n.pathname.match(`/([^/]*)(/(.*))?`);e=r[1],t=r[3]}else if(ek(n)){let r=n.pathname.match(`/([^/]*)/([^/]*)(/(.*))?`);e=r[2],t=r[4]}else{let r=n.pathname.match(`/([^/]*)(/(.*))?`);e=r[1],t=r[3]}if(e=decodeURIComponent(e),t=decodeURIComponent(t),t=t.replace(/\\/g,`/`),!e)throw Error(`Provided containerName is invalid.`);return{blobName:t,containerName:e}}catch{throw Error(`Unable to extract blobName and containerName with provided information.`)}}async startCopyFromURL(e,t={}){return uk.withSpan(`BlobClient-startCopyFromURL`,t,async n=>(t.conditions=t.conditions||{},t.sourceConditions=t.sourceConditions||{},ck(await this.blobContext.startCopyFromURL(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions.ifMatch,sourceIfModifiedSince:t.sourceConditions.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions.ifUnmodifiedSince,sourceIfTags:t.sourceConditions.tagConditions},immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,rehydratePriority:t.rehydratePriority,tier:Yk(t.tier),blobTagsString:tk(t.tags),sealBlob:t.sealBlob,tracingOptions:n.tracingOptions}))))}generateSasUrl(e){return new Promise(t=>{if(!(this.credential instanceof yb))throw RangeError(`Can only generate the SAS when the client is initialized with a shared key credential`);let n=gk({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).toString();t(qO(this.url,n))})}generateSasStringToSign(e){if(!(this.credential instanceof yb))throw RangeError(`Can only generate the SAS when the client is initialized with a shared key credential`);return _k({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).stringToSign}generateUserDelegationSasUrl(e,t){return new Promise(n=>{let r=gk({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},t,this.accountName).toString();n(qO(this.url,r))})}generateUserDelegationSasStringToSign(e,t){return _k({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},t,this.accountName).stringToSign}async deleteImmutabilityPolicy(e={}){return uk.withSpan(`BlobClient-deleteImmutabilityPolicy`,e,async e=>ck(await this.blobContext.deleteImmutabilityPolicy({tracingOptions:e.tracingOptions})))}async setImmutabilityPolicy(e,t={}){return uk.withSpan(`BlobClient-setImmutabilityPolicy`,t,async t=>ck(await this.blobContext.setImmutabilityPolicy({immutabilityPolicyExpiry:e.expiriesOn,immutabilityPolicyMode:e.policyMode,tracingOptions:t.tracingOptions})))}async setLegalHold(e,t={}){return uk.withSpan(`BlobClient-setLegalHold`,t,async t=>ck(await this.blobContext.setLegalHold(e,{tracingOptions:t.tracingOptions})))}async getAccountInfo(e={}){return uk.withSpan(`BlobClient-getAccountInfo`,e,async t=>ck(await this.blobContext.getAccountInfo({abortSignal:e.abortSignal,tracingOptions:t.tracingOptions})))}},hA=class e extends mA{appendBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.appendBlobContext=this.storageClientContext.appendBlob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async create(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-create`,e,async t=>ck(await this.appendBlobContext.create(0,{abortSignal:e.abortSignal,blobHttpHeaders:e.blobHTTPHeaders,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,immutabilityPolicyExpiry:e.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:e.immutabilityPolicy?.policyMode,legalHold:e.legalHold,blobTagsString:tk(e.tags),tracingOptions:t.tracingOptions})))}async createIfNotExists(e={}){let t={ifNoneMatch:`*`};return uk.withSpan(`AppendBlobClient-createIfNotExists`,e,async e=>{try{let n=ck(await this.create({...e,conditions:t}));return{succeeded:!0,...n,_response:n._response}}catch(e){if(e.details?.errorCode===`BlobAlreadyExists`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async seal(e={}){return e.conditions=e.conditions||{},uk.withSpan(`AppendBlobClient-seal`,e,async t=>ck(await this.appendBlobContext.seal({abortSignal:e.abortSignal,appendPositionAccessConditions:e.conditions,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async appendBlock(e,t,n={}){return n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-appendBlock`,n,async r=>ck(await this.appendBlobContext.appendBlock(t,e,{abortSignal:n.abortSignal,appendPositionAccessConditions:n.conditions,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},transactionalContentMD5:n.transactionalContentMD5,transactionalContentCrc64:n.transactionalContentCrc64,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:r.tracingOptions})))}async appendBlockFromURL(e,t,n,r={}){return r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-appendBlockFromURL`,r,async i=>ck(await this.appendBlobContext.appendBlockFromUrl(e,0,{abortSignal:r.abortSignal,sourceRange:sA({offset:t,count:n}),sourceContentMD5:r.sourceContentMD5,sourceContentCrc64:r.sourceContentCrc64,leaseAccessConditions:r.conditions,appendPositionAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince},copySourceAuthorization:ok(r.sourceAuthorization),cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:i.tracingOptions})))}},gA=class e extends mA{_blobContext;blockBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,n&&typeof n!=`string`&&(r=n),i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.blockBlobContext=this.storageClientContext.blockBlob,this._blobContext=this.storageClientContext.blob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async query(e,t={}){if(Xk(t.customerProvidedKey,this.isHttps),!Fm)throw Error(`This operation currently is only supported in Node.js.`);return uk.withSpan(`BlockBlobClient-query`,t,async n=>new Kk(ck(await this._blobContext.query({abortSignal:t.abortSignal,queryRequest:{queryType:`SQL`,expression:e,inputSerialization:ik(t.inputTextConfiguration),outputSerialization:ik(t.outputTextConfiguration)},leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,tracingOptions:n.tracingOptions})),{abortSignal:t.abortSignal,onProgress:t.onProgress,onError:t.onError}))}async upload(e,t,n={}){return n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-upload`,n,async r=>ck(await this.blockBlobContext.upload(t,e,{abortSignal:n.abortSignal,blobHttpHeaders:n.blobHTTPHeaders,leaseAccessConditions:n.conditions,metadata:n.metadata,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,immutabilityPolicyExpiry:n.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:n.immutabilityPolicy?.policyMode,legalHold:n.legalHold,tier:Yk(n.tier),blobTagsString:tk(n.tags),tracingOptions:r.tracingOptions})))}async syncUploadFromURL(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-syncUploadFromURL`,t,async n=>ck(await this.blockBlobContext.putBlobFromUrl(0,e,{...t,blobHttpHeaders:t.blobHTTPHeaders,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions?.ifMatch,sourceIfModifiedSince:t.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions?.ifUnmodifiedSince,sourceIfTags:t.sourceConditions?.tagConditions},cpkInfo:t.customerProvidedKey,copySourceAuthorization:ok(t.sourceAuthorization),tier:Yk(t.tier),blobTagsString:tk(t.tags),copySourceTags:t.copySourceTags,fileRequestIntent:t.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async stageBlock(e,t,n,r={}){return Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-stageBlock`,r,async i=>ck(await this.blockBlobContext.stageBlock(e,n,t,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,requestOptions:{onUploadProgress:r.onProgress},transactionalContentMD5:r.transactionalContentMD5,transactionalContentCrc64:r.transactionalContentCrc64,cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions})))}async stageBlockFromURL(e,t,n=0,r,i={}){return Xk(i.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-stageBlockFromURL`,i,async a=>ck(await this.blockBlobContext.stageBlockFromURL(e,0,t,{abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,sourceContentMD5:i.sourceContentMD5,sourceContentCrc64:i.sourceContentCrc64,sourceRange:n===0&&!r?void 0:sA({offset:n,count:r}),cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope,copySourceAuthorization:ok(i.sourceAuthorization),fileRequestIntent:i.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async commitBlockList(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-commitBlockList`,t,async n=>ck(await this.blockBlobContext.commitBlockList({latest:e},{abortSignal:t.abortSignal,blobHttpHeaders:t.blobHTTPHeaders,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,tier:Yk(t.tier),blobTagsString:tk(t.tags),tracingOptions:n.tracingOptions})))}async getBlockList(e,t={}){return uk.withSpan(`BlockBlobClient-getBlockList`,t,async n=>{let r=ck(await this.blockBlobContext.getBlockList(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return r.committedBlocks||=[],r.uncommittedBlocks||=[],r})}async uploadData(e,t={}){return uk.withSpan(`BlockBlobClient-uploadData`,t,async t=>{if(Fm){let n;return e instanceof Buffer?n=e:e instanceof ArrayBuffer?n=Buffer.from(e):(e=e,n=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.byteLength,t)}else{let n=new Blob([e]);return this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.size,t)}})}async uploadBrowserData(e,t={}){return uk.withSpan(`BlockBlobClient-uploadBrowserData`,t,async t=>{let n=new Blob([e]);return this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.size,t)})}async uploadSeekableInternal(e,t,n={}){let r=n.blockSize??0;if(r<0||r>4194304e3)throw RangeError(`blockSize option must be >= 0 and <= 4194304000`);let i=n.maxSingleShotSize??268435456;if(i<0||i>268435456)throw RangeError(`maxSingleShotSize option must be >= 0 and <= 268435456`);if(r===0){if(t>4194304e3*5e4)throw RangeError(`${t} is too larger to upload to a block blob.`);t>i&&(r=Math.ceil(t/Lb),r<4194304&&(r=Rb))}return n.blobHTTPHeaders||={},n.conditions||={},uk.withSpan(`BlockBlobClient-uploadSeekableInternal`,n,async a=>{if(t<=i)return ck(await this.upload(e(0,t),t,a));let o=Math.floor((t-1)/r)+1;if(o>5e4)throw RangeError(`The buffer's size is too big or the BlockSize is too small;the number of blocks must be <= ${Lb}`);let s=[],c=Pm(),l=0,u=new lA(n.concurrency);for(let i=0;i{let u=XO(c,i),d=r*i,f=(i===o-1?t:d+r)-d;s.push(u),await this.stageBlock(u,e(d,f),f,{abortSignal:n.abortSignal,conditions:n.conditions,encryptionScope:n.encryptionScope,tracingOptions:a.tracingOptions}),l+=f,n.onProgress&&n.onProgress({loadedBytes:l})});return await u.do(),this.commitBlockList(s,a)})}async uploadFile(e,t={}){return uk.withSpan(`BlockBlobClient-uploadFile`,t,async n=>{let r=(await fA(e)).size;return this.uploadSeekableInternal((t,n)=>()=>pA(e,{autoClose:!0,end:n?t+n-1:1/0,start:t}),r,{...t,tracingOptions:n.tracingOptions})})}async uploadStream(e,t=8388608,n=5,r={}){return r.blobHTTPHeaders||={},r.conditions||={},uk.withSpan(`BlockBlobClient-uploadStream`,r,async i=>{let a=0,o=Pm(),s=0,c=[];return await new Xy(e,t,n,async(e,t)=>{let n=XO(o,a);c.push(n),a++,await this.stageBlock(n,e,t,{customerProvidedKey:r.customerProvidedKey,conditions:r.conditions,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions}),s+=t,r.onProgress&&r.onProgress({loadedBytes:s})},Math.ceil(n/4*3)).do(),ck(await this.commitBlockList(c,{...r,tracingOptions:i.tracingOptions}))})}},_A=class e extends mA{pageBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.pageBlobContext=this.storageClientContext.pageBlob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async create(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-create`,t,async n=>ck(await this.pageBlobContext.create(0,e,{abortSignal:t.abortSignal,blobHttpHeaders:t.blobHTTPHeaders,blobSequenceNumber:t.blobSequenceNumber,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,tier:Yk(t.tier),blobTagsString:tk(t.tags),tracingOptions:n.tracingOptions})))}async createIfNotExists(e,t={}){return uk.withSpan(`PageBlobClient-createIfNotExists`,t,async n=>{try{let r={ifNoneMatch:`*`},i=ck(await this.create(e,{...t,conditions:r,tracingOptions:n.tracingOptions}));return{succeeded:!0,...i,_response:i._response}}catch(e){if(e.details?.errorCode===`BlobAlreadyExists`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async uploadPages(e,t,n,r={}){return r.conditions=r.conditions||{},Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-uploadPages`,r,async i=>ck(await this.pageBlobContext.uploadPages(n,e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},requestOptions:{onUploadProgress:r.onProgress},range:sA({offset:t,count:n}),sequenceNumberAccessConditions:r.conditions,transactionalContentMD5:r.transactionalContentMD5,transactionalContentCrc64:r.transactionalContentCrc64,cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions})))}async uploadPagesFromURL(e,t,n,r,i={}){return i.conditions=i.conditions||{},i.sourceConditions=i.sourceConditions||{},Xk(i.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-uploadPagesFromURL`,i,async a=>ck(await this.pageBlobContext.uploadPagesFromURL(e,sA({offset:t,count:r}),0,sA({offset:n,count:r}),{abortSignal:i.abortSignal,sourceContentMD5:i.sourceContentMD5,sourceContentCrc64:i.sourceContentCrc64,leaseAccessConditions:i.conditions,sequenceNumberAccessConditions:i.conditions,modifiedAccessConditions:{...i.conditions,ifTags:i.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:i.sourceConditions?.ifMatch,sourceIfModifiedSince:i.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:i.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:i.sourceConditions?.ifUnmodifiedSince},cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope,copySourceAuthorization:ok(i.sourceAuthorization),fileRequestIntent:i.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async clearPages(e=0,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-clearPages`,n,async r=>ck(await this.pageBlobContext.clearPages(0,{abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:sA({offset:e,count:t}),sequenceNumberAccessConditions:n.conditions,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:r.tracingOptions})))}async getPageRanges(e=0,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-getPageRanges`,n,async r=>Qk(ck(await this.pageBlobContext.getPageRanges({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:sA({offset:e,count:t}),tracingOptions:r.tracingOptions}))))}async listPageRangesSegment(e=0,t,n,r={}){return uk.withSpan(`PageBlobClient-getPageRangesSegment`,r,async i=>ck(await this.pageBlobContext.getPageRanges({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},range:sA({offset:e,count:t}),marker:n,maxPageSize:r.maxPageSize,tracingOptions:i.tracingOptions})))}async*listPageRangeItemSegments(e=0,t,n,r={}){let i;if(n||n===void 0)do i=await this.listPageRangesSegment(e,t,n,r),n=i.continuationToken,yield await i;while(n)}async*listPageRangeItems(e=0,t,n={}){for await(let r of this.listPageRangeItemSegments(e,t,void 0,n))yield*sk(r)}listPageRanges(e=0,t,n={}){n.conditions=n.conditions||{};let r=this.listPageRangeItems(e,t,n);return{next(){return r.next()},[Symbol.asyncIterator](){return this},byPage:(r={})=>this.listPageRangeItemSegments(e,t,r.continuationToken,{maxPageSize:r.maxPageSize,...n})}}async getPageRangesDiff(e,t,n,r={}){return r.conditions=r.conditions||{},uk.withSpan(`PageBlobClient-getPageRangesDiff`,r,async i=>Qk(ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},prevsnapshot:n,range:sA({offset:e,count:t}),tracingOptions:i.tracingOptions}))))}async listPageRangesDiffSegment(e,t,n,r,i={}){return uk.withSpan(`PageBlobClient-getPageRangesDiffSegment`,i,async a=>ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:i?.abortSignal,leaseAccessConditions:i?.conditions,modifiedAccessConditions:{...i?.conditions,ifTags:i?.conditions?.tagConditions},prevsnapshot:n,range:sA({offset:e,count:t}),marker:r,maxPageSize:i?.maxPageSize,tracingOptions:a.tracingOptions})))}async*listPageRangeDiffItemSegments(e,t,n,r,i){let a;if(r||r===void 0)do a=await this.listPageRangesDiffSegment(e,t,n,r,i),r=a.continuationToken,yield await a;while(r)}async*listPageRangeDiffItems(e,t,n,r){for await(let i of this.listPageRangeDiffItemSegments(e,t,n,void 0,r))yield*sk(i)}listPageRangesDiff(e,t,n,r={}){r.conditions=r.conditions||{};let i=this.listPageRangeDiffItems(e,t,n,{...r});return{next(){return i.next()},[Symbol.asyncIterator](){return this},byPage:(i={})=>this.listPageRangeDiffItemSegments(e,t,n,i.continuationToken,{maxPageSize:i.maxPageSize,...r})}}async getPageRangesDiffForManagedDisks(e,t,n,r={}){return r.conditions=r.conditions||{},uk.withSpan(`PageBlobClient-GetPageRangesDiffForManagedDisks`,r,async i=>Qk(ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},prevSnapshotUrl:n,range:sA({offset:e,count:t}),tracingOptions:i.tracingOptions}))))}async resize(e,t={}){return t.conditions=t.conditions||{},uk.withSpan(`PageBlobClient-resize`,t,async n=>ck(await this.pageBlobContext.resize(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},encryptionScope:t.encryptionScope,tracingOptions:n.tracingOptions})))}async updateSequenceNumber(e,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-updateSequenceNumber`,n,async r=>ck(await this.pageBlobContext.updateSequenceNumber(e,{abortSignal:n.abortSignal,blobSequenceNumber:t,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async startCopyIncremental(e,t={}){return uk.withSpan(`PageBlobClient-startCopyIncremental`,t,async n=>ck(await this.pageBlobContext.copyIncremental(e,{abortSignal:t.abortSignal,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}},vA=class extends Error{constructor(e){super(e),this.name=`InvalidResponseError`}},yA=class extends Error{constructor(e){let t=`Unable to make request: ${e}\nIf you are using self-hosted runners, please make sure your runner has access to all GitHub endpoints: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github`;super(t),this.code=e,this.name=`NetworkError`}};yA.isNetworkErrorCode=e=>e?[`ECONNRESET`,`ENOTFOUND`,`ETIMEDOUT`,`ECONNREFUSED`,`EHOSTUNREACH`].includes(e):!1;var bA=class extends Error{constructor(){super(`Cache storage quota has been hit. Unable to upload any new cache entries. Usage is recalculated every 6-12 hours. -More info on storage limits: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#calculating-minute-and-storage-spending`),this.name=`UsageError`}};bA.isUsageErrorMessage=e=>e?e.includes(`insufficient usage`):!1;var xA=class extends Error{constructor(e){super(e),this.name=`RateLimitError`}},SA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},CA=class{constructor(e){this.contentLength=e,this.sentBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}setSentBytes(e){this.sentBytes=e}getTransferredBytes(){return this.sentBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.sentBytes,t=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,r=(e/(1024*1024)/(n/1e3)).toFixed(1);xi(`Sent ${e} of ${this.contentLength} (${t}%), ${r} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setSentBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let t=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(t,e))};this.timeoutHandle=setTimeout(t,e)}stopDisplayTimer(){this.timeoutHandle&&=(clearTimeout(this.timeoutHandle),void 0),this.display()}};function wA(e,t,n){return SA(this,void 0,void 0,function*(){let r=new mA(e),i=r.getBlockBlobClient(),a=new CA(n?.archiveSizeBytes??0),o={blockSize:n?.uploadChunkSize,concurrency:n?.uploadConcurrency,maxSingleShotSize:128*1024*1024,onProgress:a.onProgress()};try{a.startDisplayTimer(),K(`BlobClient: ${r.name}:${r.accountName}:${r.containerName}`);let e=yield i.uploadFile(t,o);if(e._response.status>=400)throw new vA(`uploadCacheArchiveSDK: upload failed with status code ${e._response.status}`);return e}catch(e){throw bi(`uploadCacheArchiveSDK: internal error uploading cache archive: ${e.message}`),e}finally{a.stopDisplayTimer()}})}var TA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function EA(e){return e?e>=200&&e<300:!1}function DA(e){return e?e>=500:!0}function OA(e){return e?[ur.BadGateway,ur.ServiceUnavailable,ur.GatewayTimeout].includes(e):!1}function kA(e){return TA(this,void 0,void 0,function*(){return new Promise(t=>setTimeout(t,e))})}function AA(e,t,n){return TA(this,arguments,void 0,function*(e,t,n,r=2,i=Nd,a=void 0){let o=``,s=1;for(;s<=r;){let c,l,u=!1;try{c=yield t()}catch(e){a&&(c=a(e)),u=!0,o=e.message}if(c&&(l=n(c),!DA(l)))return c;if(l&&(u=OA(l),o=`Cache service responded with ${l}`),K(`${e} - Attempt ${s} of ${r} failed with error: ${o}`),!u){K(`${e} - Error is not retryable`);break}yield kA(i),s++}throw Error(`${e} failed: ${o}`)})}function jA(e,t){return TA(this,arguments,void 0,function*(e,t,n=2,r=Nd){return yield AA(e,t,e=>e.statusCode,n,r,e=>{if(e instanceof gr)return{statusCode:e.statusCode,result:null,headers:{},error:e}})})}function MA(e,t){return TA(this,arguments,void 0,function*(e,t,n=2,r=Nd){return yield AA(e,t,e=>e.message.statusCode,n,r)})}var NA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function PA(e,t){return NA(this,void 0,void 0,function*(){yield Oe.promisify($e.pipeline)(e.message,t)})}var FA=class{constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset+=this.segmentSize,this.segmentIndex+=1,this.segmentSize=e,this.receivedBytes=0,K(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){this.receivedBytes=e}getTransferredBytes(){return this.segmentOffset+this.receivedBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.segmentOffset+this.receivedBytes,t=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,r=(e/(1024*1024)/(n/1e3)).toFixed(1);xi(`Received ${e} of ${this.contentLength} (${t}%), ${r} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setReceivedBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let t=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(t,e))};this.timeoutHandle=setTimeout(t,e)}stopDisplayTimer(){this.timeoutHandle&&=(clearTimeout(this.timeoutHandle),void 0),this.display()}};function IA(e,t){return NA(this,void 0,void 0,function*(){let n=me.createWriteStream(t),r=new vr(`actions/cache`),i=yield MA(`downloadCache`,()=>NA(this,void 0,void 0,function*(){return r.get(e)}));i.message.socket.setTimeout(Pd,()=>{i.message.destroy(),K(`Aborting download, socket timed out after ${Pd} ms`)}),yield PA(i,n);let a=i.message.headers[`content-length`];if(a){let e=parseInt(a),n=Hd(t);if(n!==e)throw Error(`Incomplete download. Expected file size: ${e}, actual file size: ${n}`)}else K(`Unable to validate download, no Content-Length header`)})}function LA(e,t,n){return NA(this,void 0,void 0,function*(){let r=yield me.promises.open(t,`w`),i=new vr(`actions/cache`,void 0,{socketTimeout:n.timeoutInMs,keepAlive:!0});try{let t=(yield MA(`downloadCacheMetadata`,()=>NA(this,void 0,void 0,function*(){return yield i.request(`HEAD`,e,null,{})}))).message.headers[`content-length`];if(t==null)throw Error(`Content-Length not found on blob response`);let a=parseInt(t);if(Number.isNaN(a))throw Error(`Could not interpret Content-Length: ${a}`);let o=[],s=4*1024*1024;for(let t=0;tNA(this,void 0,void 0,function*(){return yield RA(i,e,t,n)})})}o.reverse();let c=0,l=0,u=new FA(a);u.startDisplayTimer();let d=u.onProgress(),f=[],p,m=()=>NA(this,void 0,void 0,function*(){let e=yield Promise.race(Object.values(f));yield r.write(e.buffer,0,e.count,e.offset),c--,delete f[e.offset],l+=e.count,d({loadedBytes:l})});for(;p=o.pop();)f[p.offset]=p.promiseGetter(),c++,c>=(n.downloadConcurrency??10)&&(yield m());for(;c>0;)yield m()}finally{i.dispose(),yield r.close()}})}function RA(e,t,n,r){return NA(this,void 0,void 0,function*(){let i=0;for(;;)try{let i=yield VA(3e4,zA(e,t,n,r));if(typeof i==`string`)throw Error(`downloadSegmentRetry failed due to timeout`);return i}catch(e){if(i>=5)throw e;i++}})}function zA(e,t,n,r){return NA(this,void 0,void 0,function*(){let i=yield MA(`downloadCachePart`,()=>NA(this,void 0,void 0,function*(){return yield e.get(t,{Range:`bytes=${n}-${n+r-1}`})}));if(!i.readBodyBuffer)throw Error(`Expected HttpClientResponse to implement readBodyBuffer`);return{offset:n,count:r,buffer:yield i.readBodyBuffer()}})}function BA(e,t,n){return NA(this,void 0,void 0,function*(){let r=new gA(e,void 0,{retryOptions:{tryTimeoutInMs:n.timeoutInMs}}),i=(yield r.getProperties()).contentLength??-1;if(i<0)K(`Unable to determine content length, downloading file with http-client...`),yield IA(e,t);else{let e=Math.min(134217728,Ze.constants.MAX_LENGTH),a=new FA(i),o=me.openSync(t,`w`);try{a.startDisplayTimer();let t=new AbortController,s=t.signal;for(;!a.isDone();){let c=a.segmentOffset+a.segmentSize,l=Math.min(e,i-c);a.nextSegment(l);let u=yield VA(n.segmentTimeoutInMs||36e5,r.downloadToBuffer(c,l,{abortSignal:s,concurrency:n.downloadConcurrency,onProgress:a.onProgress()}));if(u===`timeout`)throw t.abort(),Error(`Aborting cache download as the download time exceeded the timeout.`);Buffer.isBuffer(u)&&me.writeFileSync(o,u)}}finally{a.stopDisplayTimer(),me.closeSync(o)}}})}const VA=(e,t)=>NA(void 0,void 0,void 0,function*(){let n,r=new Promise(t=>{n=setTimeout(()=>t(`timeout`),e)});return Promise.race([t,r]).then(e=>(clearTimeout(n),e))});function HA(e){let t={useAzureSdk:!1,uploadConcurrency:4,uploadChunkSize:32*1024*1024};return e&&(typeof e.useAzureSdk==`boolean`&&(t.useAzureSdk=e.useAzureSdk),typeof e.uploadConcurrency==`number`&&(t.uploadConcurrency=e.uploadConcurrency),typeof e.uploadChunkSize==`number`&&(t.uploadChunkSize=e.uploadChunkSize)),t.uploadConcurrency=isNaN(Number(process.env.CACHE_UPLOAD_CONCURRENCY))?t.uploadConcurrency:Math.min(32,Number(process.env.CACHE_UPLOAD_CONCURRENCY)),t.uploadChunkSize=isNaN(Number(process.env.CACHE_UPLOAD_CHUNK_SIZE))?t.uploadChunkSize:Math.min(128*1024*1024,Number(process.env.CACHE_UPLOAD_CHUNK_SIZE)*1024*1024),K(`Use Azure SDK: ${t.useAzureSdk}`),K(`Upload concurrency: ${t.uploadConcurrency}`),K(`Upload chunk size: ${t.uploadChunkSize}`),t}function UA(e){let t={useAzureSdk:!1,concurrentBlobDownloads:!0,downloadConcurrency:8,timeoutInMs:3e4,segmentTimeoutInMs:6e5,lookupOnly:!1};e&&(typeof e.useAzureSdk==`boolean`&&(t.useAzureSdk=e.useAzureSdk),typeof e.concurrentBlobDownloads==`boolean`&&(t.concurrentBlobDownloads=e.concurrentBlobDownloads),typeof e.downloadConcurrency==`number`&&(t.downloadConcurrency=e.downloadConcurrency),typeof e.timeoutInMs==`number`&&(t.timeoutInMs=e.timeoutInMs),typeof e.segmentTimeoutInMs==`number`&&(t.segmentTimeoutInMs=e.segmentTimeoutInMs),typeof e.lookupOnly==`boolean`&&(t.lookupOnly=e.lookupOnly));let n=process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS;return n&&!isNaN(Number(n))&&isFinite(Number(n))&&(t.segmentTimeoutInMs=Number(n)*60*1e3),K(`Use Azure SDK: ${t.useAzureSdk}`),K(`Download concurrency: ${t.downloadConcurrency}`),K(`Request timeout (ms): ${t.timeoutInMs}`),K(`Cache segment download timeout mins env var: ${process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS}`),K(`Segment download timeout (ms): ${t.segmentTimeoutInMs}`),K(`Lookup only: ${t.lookupOnly}`),t}function WA(){let e=new URL(process.env.GITHUB_SERVER_URL||`https://github.com`).hostname.trimEnd().toUpperCase(),t=e===`GITHUB.COM`,n=e.endsWith(`.GHE.COM`),r=e.endsWith(`.LOCALHOST`);return!t&&!n&&!r}function GA(){return WA()?`v1`:process.env.ACTIONS_CACHE_SERVICE_V2?`v2`:`v1`}function KA(){let e=GA();switch(e){case`v1`:return process.env.ACTIONS_CACHE_URL||process.env.ACTIONS_RESULTS_URL||``;case`v2`:return process.env.ACTIONS_RESULTS_URL||``;default:throw Error(`Unsupported cache service version: ${e}`)}}var qA=i(((e,t)=>{t.exports={name:`@actions/cache`,version:`6.0.0`,description:`Actions cache lib`,keywords:[`github`,`actions`,`cache`],homepage:`https://github.com/actions/toolkit/tree/main/packages/cache`,license:`MIT`,type:`module`,main:`lib/cache.js`,types:`lib/cache.d.ts`,exports:{".":{types:`./lib/cache.d.ts`,import:`./lib/cache.js`}},directories:{lib:`lib`,test:`__tests__`},files:[`lib`,`!.DS_Store`],publishConfig:{access:`public`},repository:{type:`git`,url:`git+https://github.com/actions/toolkit.git`,directory:`packages/cache`},scripts:{"audit-moderate":`npm install && npm audit --json --audit-level=moderate > audit.json`,test:`echo "Error: run tests from root" && exit 1`,tsc:`tsc && cp src/internal/shared/package-version.cjs lib/internal/shared/`},bugs:{url:`https://github.com/actions/toolkit/issues`},dependencies:{"@actions/core":`^3.0.0`,"@actions/exec":`^3.0.0`,"@actions/glob":`^0.6.1`,"@actions/http-client":`^4.0.0`,"@actions/io":`^3.0.0`,"@azure/core-rest-pipeline":`^1.22.0`,"@azure/storage-blob":`^12.30.0`,"@protobuf-ts/runtime-rpc":`^2.11.1`,semver:`^7.7.3`},devDependencies:{"@protobuf-ts/plugin":`^2.9.4`,"@types/node":`^25.1.0`,"@types/semver":`^7.7.1`,typescript:`^5.2.2`},overrides:{"uri-js":`npm:uri-js-replace@^1.0.1`,"node-fetch":`^3.3.2`}}})),JA=i(((e,t)=>{t.exports={version:qA().version}}))();function YA(){return`@actions/cache-${JA.version}`}var XA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function ZA(e){let t=KA();if(!t)throw Error(`Cache Service Url not found, unable to restore cache.`);let n=`${t}_apis/artifactcache/${e}`;return K(`Resource Url: ${n}`),n}function QA(e,t){return`${e};api-version=${t}`}function $A(){return{headers:{Accept:QA(`application/json`,`6.0-preview.1`)}}}function ej(){let e=new xr(process.env.ACTIONS_RUNTIME_TOKEN||``);return new vr(YA(),[e],$A())}function tj(e,t,n){return XA(this,void 0,void 0,function*(){let r=ej(),i=Xd(t,n?.compressionMethod,n?.enableCrossOsArchive),a=`cache?keys=${encodeURIComponent(e.join(`,`))}&version=${i}`,o=yield jA(`getCacheEntry`,()=>XA(this,void 0,void 0,function*(){return r.getJson(ZA(a))}));if(o.statusCode===204)return vi()&&(yield nj(e[0],r,i)),null;if(!EA(o.statusCode))throw Error(`Cache service responded with ${o.statusCode}`);let s=o.result,c=s?.archiveLocation;if(!c)throw Error(`Cache not found.`);return pi(c),K(`Cache Result:`),K(JSON.stringify(s)),s})}function nj(e,t,n){return XA(this,void 0,void 0,function*(){let r=`caches?key=${encodeURIComponent(e)}`,i=yield jA(`listCache`,()=>XA(this,void 0,void 0,function*(){return t.getJson(ZA(r))}));if(i.statusCode===200){let t=i.result,r=t?.totalCount;if(r&&r>0){K(`No matching cache found for cache key '${e}', version '${n} and scope ${process.env.GITHUB_REF}. There exist one or more cache(s) with similar key but they have different version or scope. See more info on cache matching here: https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#matching-a-cache-key \nOther caches with similar key:`);for(let e of t?.artifactCaches||[])K(`Cache Key: ${e?.cacheKey}, Cache Version: ${e?.cacheVersion}, Cache Scope: ${e?.scope}, Cache Created: ${e?.creationTime}`)}}})}function rj(e,t,n){return XA(this,void 0,void 0,function*(){let r=new rt(e),i=UA(n);r.hostname.endsWith(`.blob.core.windows.net`)?i.useAzureSdk?yield BA(e,t,i):i.concurrentBlobDownloads?yield LA(e,t,i):yield IA(e,t):yield IA(e,t)})}function ij(e,t,n){return XA(this,void 0,void 0,function*(){let r=ej(),i={key:e,version:Xd(t,n?.compressionMethod,n?.enableCrossOsArchive),cacheSize:n?.cacheSize};return yield jA(`reserveCache`,()=>XA(this,void 0,void 0,function*(){return r.postJson(ZA(`caches`),i)}))})}function aj(e,t){return`bytes ${e}-${t}/*`}function oj(e,t,n,r,i){return XA(this,void 0,void 0,function*(){K(`Uploading chunk of size ${i-r+1} bytes at offset ${r} with content range: ${aj(r,i)}`);let a={"Content-Type":`application/octet-stream`,"Content-Range":aj(r,i)},o=yield MA(`uploadChunk (start: ${r}, end: ${i})`,()=>XA(this,void 0,void 0,function*(){return e.sendStream(`PATCH`,t,n(),a)}));if(!EA(o.message.statusCode))throw Error(`Cache service responded with ${o.message.statusCode} during upload chunk.`)})}function sj(e,t,n,r){return XA(this,void 0,void 0,function*(){let i=Hd(n),a=ZA(`caches/${t.toString()}`),o=me.openSync(n,`r`),s=HA(r),c=Yd(`uploadConcurrency`,s.uploadConcurrency),l=Yd(`uploadChunkSize`,s.uploadChunkSize),u=[...Array(c).keys()];K(`Awaiting all uploads`);let d=0;try{yield Promise.all(u.map(()=>XA(this,void 0,void 0,function*(){for(;dme.createReadStream(n,{fd:o,start:r,end:s,autoClose:!1}).on(`error`,e=>{throw Error(`Cache upload failed because file read failed with ${e.message}`)}),r,s)}})))}finally{me.closeSync(o)}})}function cj(e,t,n){return XA(this,void 0,void 0,function*(){let r={size:n};return yield jA(`commitCache`,()=>XA(this,void 0,void 0,function*(){return e.postJson(ZA(`caches/${t.toString()}`),r)}))})}function lj(e,t,n,r){return XA(this,void 0,void 0,function*(){if(HA(r).useAzureSdk){if(!n)throw Error(`Azure Storage SDK can only be used when a signed URL is provided.`);yield wA(n,t,r)}else{let n=ej();K(`Upload cache`),yield sj(n,e,t,r),K(`Commiting cache`);let i=Hd(t);xi(`Cache Size: ~${Math.round(i/(1024*1024))} MB (${i} B)`);let a=yield cj(n,e,i);if(!EA(a.statusCode))throw Error(`Cache service responded with ${a.statusCode} during commit cache.`);xi(`Cache saved successfully`)}})}var uj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isJsonObject=e.typeofJsonValue=void 0;function t(e){let t=typeof e;if(t==`object`){if(Array.isArray(e))return`array`;if(e===null)return`null`}return t}e.typeofJsonValue=t;function n(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}e.isJsonObject=n})),dj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.base64encode=e.base64decode=void 0;let t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``),n=[];for(let e=0;e= '2018-11-09' when providing 'snapshotTime'.`);if(e.blobName===void 0&&e.snapshotTime)throw RangeError(`Must provide 'blobName' when providing 'snapshotTime'.`);if(e.versionId&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'versionId'.`);if(e.blobName===void 0&&e.versionId)throw RangeError(`Must provide 'blobName' when providing 'versionId'.`);if(e.permissions&&e.permissions.setImmutabilityPolicy&&t<`2020-08-04`)throw RangeError(`'version' must be >= '2020-08-04' when provided 'i' permission.`);if(e.permissions&&e.permissions.deleteVersion&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'x' permission.`);if(e.permissions&&e.permissions.permanentDelete&&t<`2019-10-10`)throw RangeError(`'version' must be >= '2019-10-10' when providing 'y' permission.`);if(e.permissions&&e.permissions.tag&&t<`2019-12-12`)throw RangeError(`'version' must be >= '2019-12-12' when providing 't' permission.`);if(t<`2020-02-10`&&e.permissions&&(e.permissions.move||e.permissions.execute))throw RangeError(`'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.`);if(t<`2021-04-10`&&e.permissions&&e.permissions.filterByTags)throw RangeError(`'version' must be >= '2021-04-10' when providing the 'f' permission.`);if(t<`2020-02-10`&&(e.preauthorizedAgentObjectId||e.correlationId))throw RangeError(`'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.`);if(e.encryptionScope&&t<`2020-12-06`)throw RangeError(`'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.`);return e.version=t,e}var Dk=class{_leaseId;_url;_containerOrBlobOperation;_isContainer;get leaseId(){return this._leaseId}get url(){return this._url}constructor(e,t){let n=e.storageClientContext;this._url=e.url,e.name===void 0?(this._isContainer=!0,this._containerOrBlobOperation=n.container):(this._isContainer=!1,this._containerOrBlobOperation=n.blob),t||=Pm(),this._leaseId=t}async acquireLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-acquireLease`,t,async n=>ck(await this._containerOrBlobOperation.acquireLease({abortSignal:t.abortSignal,duration:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},proposedLeaseId:this._leaseId,tracingOptions:n.tracingOptions})))}async changeLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-changeLease`,t,async n=>{let r=ck(await this._containerOrBlobOperation.changeLease(this._leaseId,e,{abortSignal:t.abortSignal,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return this._leaseId=e,r})}async releaseLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==``||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==``||e.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-releaseLease`,e,async t=>ck(await this._containerOrBlobOperation.releaseLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async renewLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==``||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==``||e.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-renewLease`,e,async t=>this._containerOrBlobOperation.renewLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions}))}async breakLease(e,t={}){if(this._isContainer&&(t.conditions?.ifMatch&&t.conditions?.ifMatch!==``||t.conditions?.ifNoneMatch&&t.conditions?.ifNoneMatch!==``||t.conditions?.tagConditions))throw RangeError(`The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.`);return uk.withSpan(`BlobLeaseClient-breakLease`,t,async n=>{let r={abortSignal:t.abortSignal,breakPeriod:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions};return ck(await this._containerOrBlobOperation.breakLease(r))})}},Ok=class extends je{start;offset;end;getter;source;retries=0;maxRetryRequests;onProgress;options;constructor(e,t,n,r,i={}){super({highWaterMark:i.highWaterMark}),this.getter=t,this.source=e,this.start=n,this.offset=n,this.end=n+r-1,this.maxRetryRequests=i.maxRetryRequests&&i.maxRetryRequests>=0?i.maxRetryRequests:0,this.onProgress=i.onProgress,this.options=i,this.setSourceEventHandlers()}_read(){this.source.resume()}setSourceEventHandlers(){this.source.on(`data`,this.sourceDataHandler),this.source.on(`end`,this.sourceErrorOrEndHandler),this.source.on(`error`,this.sourceErrorOrEndHandler),this.source.on(`aborted`,this.sourceAbortedHandler)}removeSourceEventHandlers(){this.source.removeListener(`data`,this.sourceDataHandler),this.source.removeListener(`end`,this.sourceErrorOrEndHandler),this.source.removeListener(`error`,this.sourceErrorOrEndHandler),this.source.removeListener(`aborted`,this.sourceAbortedHandler)}sourceDataHandler=e=>{if(this.options.doInjectErrorOnce){this.options.doInjectErrorOnce=void 0,this.source.pause(),this.sourceErrorOrEndHandler(),this.source.destroy();return}this.offset+=e.length,this.onProgress&&this.onProgress({loadedBytes:this.offset-this.start}),this.push(e)||this.source.pause()};sourceAbortedHandler=()=>{let e=new km(`The operation was aborted.`);this.destroy(e)};sourceErrorOrEndHandler=e=>{if(e&&e.name===`AbortError`){this.destroy(e);return}this.removeSourceEventHandlers(),this.offset-1===this.end?this.push(null):this.offset<=this.end?this.retries{this.source=e,this.setSourceEventHandlers()}).catch(e=>{this.destroy(e)})):this.destroy(Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset-1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`)):this.destroy(Error(`Data corruption failure: Received more data than original request, data needed offset is ${this.end}, received offset: ${this.offset-1}`))};_destroy(e,t){this.removeSourceEventHandlers(),this.source.destroy(),t(e===null?void 0:e)}},kk=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){return this.originalResponse.copyCompletedOn}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get tagCount(){return this.originalResponse.tagCount}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get lastAccessed(){return this.originalResponse.lastAccessed}get createdOn(){return this.originalResponse.createdOn}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get versionId(){return this.originalResponse.versionId}get isCurrentVersion(){return this.originalResponse.isCurrentVersion}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get objectReplicationDestinationPolicyId(){return this.originalResponse.objectReplicationDestinationPolicyId}get objectReplicationSourceProperties(){return this.originalResponse.objectReplicationSourceProperties}get isSealed(){return this.originalResponse.isSealed}get immutabilityPolicyExpiresOn(){return this.originalResponse.immutabilityPolicyExpiresOn}get immutabilityPolicyMode(){return this.originalResponse.immutabilityPolicyMode}get legalHold(){return this.originalResponse.legalHold}get contentAsBlob(){return this.originalResponse.blobBody}get readableStreamBody(){return Fm?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,t,n,r,i={}){this.originalResponse=e,this.blobDownloadStream=new Ok(this.originalResponse.readableStreamBody,t,n,r,i)}};const Ak=new Uint8Array([79,98,106,1]);var jk=class e{static async readFixedBytes(e,t,n={}){let r=await e.read(t,{abortSignal:n.abortSignal});if(r.length!==t)throw Error(`Hit stream end.`);return r}static async readByte(t,n={}){return(await e.readFixedBytes(t,1,n))[0]}static async readZigZagLong(t,n={}){let r=0,i=0,a,o,s;do a=await e.readByte(t,n),o=a&128,r|=(a&127)<2**53-1)throw Error(`Integer overflow.`);return i}return r>>1^-(r&1)}static async readLong(t,n={}){return e.readZigZagLong(t,n)}static async readInt(t,n={}){return e.readZigZagLong(t,n)}static async readNull(){return null}static async readBoolean(t,n={}){let r=await e.readByte(t,n);if(r===1)return!0;if(r===0)return!1;throw Error(`Byte was not a boolean.`)}static async readFloat(t,n={}){let r=await e.readFixedBytes(t,4,n);return new DataView(r.buffer,r.byteOffset,r.byteLength).getFloat32(0,!0)}static async readDouble(t,n={}){let r=await e.readFixedBytes(t,8,n);return new DataView(r.buffer,r.byteOffset,r.byteLength).getFloat64(0,!0)}static async readBytes(t,n={}){let r=await e.readLong(t,n);if(r<0)throw Error(`Bytes size was negative.`);return t.read(r,{abortSignal:n.abortSignal})}static async readString(t,n={}){let r=await e.readBytes(t,n);return new TextDecoder().decode(r)}static async readMapPair(t,n,r={}){return{key:await e.readString(t,r),value:await n(t,r)}}static async readMap(t,n,r={}){let i=await e.readArray(t,(t,r={})=>e.readMapPair(t,n,r),r),a={};for(let e of i)a[e.key]=e.value;return a}static async readArray(t,n,r={}){let i=[];for(let a=await e.readLong(t,r);a!==0;a=await e.readLong(t,r))for(a<0&&(await e.readLong(t,r),a=-a);a--;){let e=await n(t,r);i.push(e)}return i}},Mk;(function(e){e.RECORD=`record`,e.ENUM=`enum`,e.ARRAY=`array`,e.MAP=`map`,e.UNION=`union`,e.FIXED=`fixed`})(Mk||={});var Nk;(function(e){e.NULL=`null`,e.BOOLEAN=`boolean`,e.INT=`int`,e.LONG=`long`,e.FLOAT=`float`,e.DOUBLE=`double`,e.BYTES=`bytes`,e.STRING=`string`})(Nk||={});var Pk=class e{static fromSchema(t){return typeof t==`string`?e.fromStringSchema(t):Array.isArray(t)?e.fromArraySchema(t):e.fromObjectSchema(t)}static fromStringSchema(e){switch(e){case Nk.NULL:case Nk.BOOLEAN:case Nk.INT:case Nk.LONG:case Nk.FLOAT:case Nk.DOUBLE:case Nk.BYTES:case Nk.STRING:return new Fk(e);default:throw Error(`Unexpected Avro type ${e}`)}}static fromArraySchema(t){return new Lk(t.map(e.fromSchema))}static fromObjectSchema(t){let n=t.type;try{return e.fromStringSchema(n)}catch{}switch(n){case Mk.RECORD:if(t.aliases)throw Error(`aliases currently is not supported, schema: ${t}`);if(!t.name)throw Error(`Required attribute 'name' doesn't exist on schema: ${t}`);let r={};if(!t.fields)throw Error(`Required attribute 'fields' doesn't exist on schema: ${t}`);for(let n of t.fields)r[n.name]=e.fromSchema(n.type);return new zk(r,t.name);case Mk.ENUM:if(t.aliases)throw Error(`aliases currently is not supported, schema: ${t}`);if(!t.symbols)throw Error(`Required attribute 'symbols' doesn't exist on schema: ${t}`);return new Ik(t.symbols);case Mk.MAP:if(!t.values)throw Error(`Required attribute 'values' doesn't exist on schema: ${t}`);return new Rk(e.fromSchema(t.values));case Mk.ARRAY:case Mk.FIXED:default:throw Error(`Unexpected Avro type ${n} in ${t}`)}}},Fk=class extends Pk{_primitive;constructor(e){super(),this._primitive=e}read(e,t={}){switch(this._primitive){case Nk.NULL:return jk.readNull();case Nk.BOOLEAN:return jk.readBoolean(e,t);case Nk.INT:return jk.readInt(e,t);case Nk.LONG:return jk.readLong(e,t);case Nk.FLOAT:return jk.readFloat(e,t);case Nk.DOUBLE:return jk.readDouble(e,t);case Nk.BYTES:return jk.readBytes(e,t);case Nk.STRING:return jk.readString(e,t);default:throw Error(`Unknown Avro Primitive`)}}},Ik=class extends Pk{_symbols;constructor(e){super(),this._symbols=e}async read(e,t={}){let n=await jk.readInt(e,t);return this._symbols[n]}},Lk=class extends Pk{_types;constructor(e){super(),this._types=e}async read(e,t={}){let n=await jk.readInt(e,t);return this._types[n].read(e,t)}},Rk=class extends Pk{_itemType;constructor(e){super(),this._itemType=e}read(e,t={}){return jk.readMap(e,(e,t)=>this._itemType.read(e,t),t)}},zk=class extends Pk{_name;_fields;constructor(e,t){super(),this._fields=e,this._name=t}async read(e,t={}){let n={};n.$schema=this._name;for(let r in this._fields)Object.prototype.hasOwnProperty.call(this._fields,r)&&(n[r]=await this._fields[r].read(e,t));return n}};function Bk(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(let n=0;n0)for(let t=0;t0}async*parseObjects(e={}){for(this._initialized||await this.initialize(e);this.hasNext();){let t=await this._itemType.read(this._dataStream,{abortSignal:e.abortSignal});if(this._itemsRemainingInBlock--,this._objectIndex++,this._itemsRemainingInBlock===0){let t=await jk.readFixedBytes(this._dataStream,16,{abortSignal:e.abortSignal});if(this._blockOffset=this._initialBlockOffset+this._dataStream.position,this._objectIndex=0,!Bk(this._syncMarker,t))throw Error(`Stream is not a valid Avro file.`);try{this._itemsRemainingInBlock=await jk.readLong(this._dataStream,{abortSignal:e.abortSignal})}catch{this._itemsRemainingInBlock=0}this._itemsRemainingInBlock>0&&await jk.readLong(this._dataStream,{abortSignal:e.abortSignal})}yield t}}},Hk=class{};const Uk=new km(`Reading from the avro stream was aborted.`);var Wk=class extends Hk{_position;_readable;toUint8Array(e){return typeof e==`string`?Qe.from(e):e}constructor(e){super(),this._readable=e,this._position=0}get position(){return this._position}async read(e,t={}){if(t.abortSignal?.aborted)throw Uk;if(e<0)throw Error(`size parameter should be positive: ${e}`);if(e===0)return new Uint8Array;if(!this._readable.readable)throw Error(`Stream no longer readable.`);let n=this._readable.read(e);return n?(this._position+=n.length,this.toUint8Array(n)):new Promise((n,r)=>{let i=()=>{this._readable.removeListener(`readable`,a),this._readable.removeListener(`error`,o),this._readable.removeListener(`end`,o),this._readable.removeListener(`close`,o),t.abortSignal&&t.abortSignal.removeEventListener(`abort`,s)},a=()=>{let t=this._readable.read(e);t&&(this._position+=t.length,i(),n(this.toUint8Array(t)))},o=()=>{i(),r()},s=()=>{i(),r(Uk)};this._readable.on(`readable`,a),this._readable.once(`error`,o),this._readable.once(`end`,o),this._readable.once(`close`,o),t.abortSignal&&t.abortSignal.addEventListener(`abort`,s)})}},Gk=class extends je{source;avroReader;avroIter;avroPaused=!0;onProgress;onError;constructor(e,t={}){super(),this.source=e,this.onProgress=t.onProgress,this.onError=t.onError,this.avroReader=new Vk(new Wk(this.source)),this.avroIter=this.avroReader.parseObjects({abortSignal:t.abortSignal})}_read(){this.avroPaused&&this.readInternal().catch(e=>{this.emit(`error`,e)})}async readInternal(){this.avroPaused=!1;let e;do{if(e=await this.avroIter.next(),e.done)break;let t=e.value,n=t.$schema;if(typeof n!=`string`)throw Error(`Missing schema in avro record.`);switch(n){case`com.microsoft.azure.storage.queryBlobContents.resultData`:{let e=t.data;if(!(e instanceof Uint8Array))throw Error(`Invalid data in avro result record.`);this.push(Buffer.from(e))||(this.avroPaused=!0)}break;case`com.microsoft.azure.storage.queryBlobContents.progress`:{let e=t.bytesScanned;if(typeof e!=`number`)throw Error(`Invalid bytesScanned in avro progress record.`);this.onProgress&&this.onProgress({loadedBytes:e})}break;case`com.microsoft.azure.storage.queryBlobContents.end`:if(this.onProgress){let e=t.totalBytes;if(typeof e!=`number`)throw Error(`Invalid totalBytes in avro end record.`);this.onProgress({loadedBytes:e})}this.push(null);break;case`com.microsoft.azure.storage.queryBlobContents.error`:if(this.onError){let e=t.fatal;if(typeof e!=`boolean`)throw Error(`Invalid fatal in avro error record.`);let n=t.name;if(typeof n!=`string`)throw Error(`Invalid name in avro error record.`);let r=t.description;if(typeof r!=`string`)throw Error(`Invalid description in avro error record.`);let i=t.position;if(typeof i!=`number`)throw Error(`Invalid position in avro error record.`);this.onError({position:i,name:n,isFatal:e,description:r})}break;default:throw Error(`Unknown schema ${n} in avro progress record.`)}}while(!e.done&&!this.avroPaused)}},Kk=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get blobBody(){}get readableStreamBody(){return Fm?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,t={}){this.originalResponse=e,this.blobDownloadStream=new Gk(this.originalResponse.readableStreamBody,t)}},qk;(function(e){e.Hot=`Hot`,e.Cool=`Cool`,e.Cold=`Cold`,e.Archive=`Archive`})(qk||={});var Jk;(function(e){e.P4=`P4`,e.P6=`P6`,e.P10=`P10`,e.P15=`P15`,e.P20=`P20`,e.P30=`P30`,e.P40=`P40`,e.P50=`P50`,e.P60=`P60`,e.P70=`P70`,e.P80=`P80`})(Jk||={});function Yk(e){if(e!==void 0)return e}function Xk(e,t){if(e&&!t)throw RangeError(`Customer-provided encryption key must be used over HTTPS.`);e&&!e.encryptionAlgorithm&&(e.encryptionAlgorithm=`AES256`)}var Zk;(function(e){e.StorageOAuthScopes=`https://storage.azure.com/.default`,e.DiskComputeOAuthScopes=`https://disk.compute.azure.com/.default`})(Zk||={});function Qk(e){let t=(e._response.parsedBody.pageRange||[]).map(e=>({offset:e.start,count:e.end-e.start})),n=(e._response.parsedBody.clearRange||[]).map(e=>({offset:e.start,count:e.end-e.start}));return{...e,pageRange:t,clearRange:n,_response:{...e._response,parsedBody:{pageRange:t,clearRange:n}}}}var $k=class e extends Error{constructor(t){super(t),this.name=`PollerStoppedError`,Object.setPrototypeOf(this,e.prototype)}},eA=class e extends Error{constructor(t){super(t),this.name=`PollerCancelledError`,Object.setPrototypeOf(this,e.prototype)}},tA=class{constructor(e){this.resolveOnUnsuccessful=!1,this.stopped=!0,this.pollProgressCallbacks=[],this.operation=e,this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t}),this.promise.catch(()=>{})}async startPolling(e={}){for(this.stopped&&=!1;!this.isStopped()&&!this.isDone();)await this.poll(e),await this.delay()}async pollOnce(e={}){this.isDone()||(this.operation=await this.operation.update({abortSignal:e.abortSignal,fireProgress:this.fireProgress.bind(this)})),this.processUpdatedState()}fireProgress(e){for(let t of this.pollProgressCallbacks)t(e)}async cancelOnce(e={}){this.operation=await this.operation.cancel(e)}poll(e={}){if(!this.pollOncePromise){this.pollOncePromise=this.pollOnce(e);let t=()=>{this.pollOncePromise=void 0};this.pollOncePromise.then(t,t).catch(this.reject)}return this.pollOncePromise}processUpdatedState(){if(this.operation.state.error&&(this.stopped=!0,!this.resolveOnUnsuccessful))throw this.reject(this.operation.state.error),this.operation.state.error;if(this.operation.state.isCancelled&&(this.stopped=!0,!this.resolveOnUnsuccessful)){let e=new eA(`Operation was canceled`);throw this.reject(e),e}this.isDone()&&this.resolve&&this.resolve(this.getResult())}async pollUntilDone(e={}){return this.stopped&&this.startPolling(e).catch(this.reject),this.processUpdatedState(),this.promise}onProgress(e){return this.pollProgressCallbacks.push(e),()=>{this.pollProgressCallbacks=this.pollProgressCallbacks.filter(t=>t!==e)}}isDone(){let e=this.operation.state;return!!(e.isCompleted||e.isCancelled||e.error)}stopPolling(){this.stopped||(this.stopped=!0,this.reject&&this.reject(new $k(`This poller is already stopped`)))}isStopped(){return this.stopped}cancelOperation(e={}){if(!this.cancelPromise)this.cancelPromise=this.cancelOnce(e);else if(e.abortSignal)throw Error(`A cancel request is currently pending`);return this.cancelPromise}getOperationState(){return this.operation.state}getResult(){return this.operation.state.result}toString(){return this.operation.toString()}},nA=class extends tA{intervalInMs;constructor(e){let{blobClient:t,copySource:n,intervalInMs:r=15e3,onProgress:i,resumeFrom:a,startCopyFromURLOptions:o}=e,s;a&&(s=JSON.parse(a).state);let c=oA({...s,blobClient:t,copySource:n,startCopyFromURLOptions:o});super(c),typeof i==`function`&&this.onProgress(i),this.intervalInMs=r}delay(){return jm(this.intervalInMs)}};const rA=async function(e={}){let t=this.state,{copyId:n}=t;return t.isCompleted?oA(t):n?(await t.blobClient.abortCopyFromURL(n,{abortSignal:e.abortSignal}),t.isCancelled=!0,oA(t)):(t.isCancelled=!0,oA(t))},iA=async function(e={}){let t=this.state,{blobClient:n,copySource:r,startCopyFromURLOptions:i}=t;if(!t.isStarted){t.isStarted=!0;let e=await n.startCopyFromURL(r,i);t.copyId=e.copyId,e.copyStatus===`success`&&(t.result=e,t.isCompleted=!0)}else if(!t.isCompleted)try{let n=await t.blobClient.getProperties({abortSignal:e.abortSignal}),{copyStatus:r,copyProgress:i}=n,a=t.copyProgress;i&&(t.copyProgress=i),r===`pending`&&i!==a&&typeof e.fireProgress==`function`?e.fireProgress(t):r===`success`?(t.result=n,t.isCompleted=!0):r===`failed`&&(t.error=Error(`Blob copy failed with reason: "${n.copyStatusDescription||`unknown`}"`),t.isCompleted=!0)}catch(e){t.error=e,t.isCompleted=!0}return oA(t)},aA=function(){return JSON.stringify({state:this.state},(e,t)=>{if(e!==`blobClient`)return t})};function oA(e){return{state:{...e},cancel:rA,toString:aA,update:iA}}function sA(e){if(e.offset<0)throw RangeError(`Range.offset cannot be smaller than 0.`);if(e.count&&e.count<=0)throw RangeError(`Range.count must be larger than 0. Leave it undefined if you want a range from offset to the end.`);return e.count?`bytes=${e.offset}-${e.offset+e.count-1}`:`bytes=${e.offset}-`}var cA;(function(e){e[e.Good=0]=`Good`,e[e.Error=1]=`Error`})(cA||={});var lA=class{concurrency;actives=0;completed=0;offset=0;operations=[];state=cA.Good;emitter;constructor(e=5){if(e<1)throw RangeError(`concurrency must be larger than 0`);this.concurrency=e,this.emitter=new Te}addOperation(e){this.operations.push(async()=>{try{this.actives++,await e(),this.actives--,this.completed++,this.parallelExecute()}catch(e){this.emitter.emit(`error`,e)}})}async do(){return this.operations.length===0?Promise.resolve():(this.parallelExecute(),new Promise((e,t)=>{this.emitter.on(`finish`,e),this.emitter.on(`error`,e=>{this.state=cA.Error,t(e)})}))}nextOperation(){return this.offset=this.operations.length){this.emitter.emit(`finish`);return}for(;this.actives{let c=setTimeout(()=>s(Error(`The operation cannot be completed in timeout.`)),1e5);e.on(`readable`,()=>{if(a>=o){clearTimeout(c),r();return}let s=e.read();if(!s)return;typeof s==`string`&&(s=Buffer.from(s,i));let l=a+s.length>o?o-a:s.length;t.fill(s.slice(0,l),n+a,n+a+l),a+=l}),e.on(`end`,()=>{clearTimeout(c),a{clearTimeout(c),s(e)})})}async function dA(e,t){return new Promise((n,r)=>{let i=Ye.createWriteStream(t);e.on(`error`,e=>{r(e)}),i.on(`error`,e=>{r(e)}),i.on(`close`,n),e.pipe(i)})}const fA=Fe.promisify(Ye.stat),pA=Ye.createReadStream;var mA=class e extends lk{blobContext;_name;_containerName;_versionId;_snapshot;get name(){return this._name}get containerName(){return this._containerName}constructor(e,t,n,r){r||={};let i,a;if(Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,n&&typeof n!=`string`&&(r=n),i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),{blobName:this._name,containerName:this._containerName}=this.getBlobAndContainerNamesFromUrl(),this.blobContext=this.storageClientContext.blob,this._snapshot=GO(this.url,zb.Parameters.SNAPSHOT),this._versionId=GO(this.url,zb.Parameters.VERSIONID)}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}withVersion(t){return new e(WO(this.url,zb.Parameters.VERSIONID,t.length===0?void 0:t),this.pipeline)}getAppendBlobClient(){return new hA(this.url,this.pipeline)}getBlockBlobClient(){return new gA(this.url,this.pipeline)}getPageBlobClient(){return new _A(this.url,this.pipeline)}async download(e=0,t,n={}){return n.conditions=n.conditions||{},n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-download`,n,async r=>{let i=ck(await this.blobContext.download({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onDownloadProgress:Fm?void 0:n.onProgress},range:e===0&&!t?void 0:sA({offset:e,count:t}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey,tracingOptions:r.tracingOptions})),a={...i,_response:i._response,objectReplicationDestinationPolicyId:i.objectReplicationPolicyId,objectReplicationSourceProperties:ak(i.objectReplicationRules)};if(!Fm)return a;if((n.maxRetryRequests===void 0||n.maxRetryRequests<0)&&(n.maxRetryRequests=5),i.contentLength===void 0)throw RangeError(`File download response doesn't contain valid content length header`);if(!i.etag)throw RangeError(`File download response doesn't contain valid etag header`);return new kk(a,async t=>{let r={leaseAccessConditions:n.conditions,modifiedAccessConditions:{ifMatch:n.conditions.ifMatch||i.etag,ifModifiedSince:n.conditions.ifModifiedSince,ifNoneMatch:n.conditions.ifNoneMatch,ifUnmodifiedSince:n.conditions.ifUnmodifiedSince,ifTags:n.conditions?.tagConditions},range:sA({count:e+i.contentLength-t,offset:t}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey};return(await this.blobContext.download({abortSignal:n.abortSignal,...r})).readableStreamBody},e,i.contentLength,{maxRetryRequests:n.maxRetryRequests,onProgress:n.onProgress})})}async exists(e={}){return uk.withSpan(`BlobClient-exists`,e,async t=>{try{return Xk(e.customerProvidedKey,this.isHttps),await this.getProperties({abortSignal:e.abortSignal,customerProvidedKey:e.customerProvidedKey,conditions:e.conditions,tracingOptions:t.tracingOptions}),!0}catch(e){if(e.statusCode===404)return!1;if(e.statusCode===409&&(e.details.errorCode===`BlobUsesCustomerSpecifiedEncryption`||e.details.errorCode===`BlobDoesNotUseCustomerSpecifiedEncryption`))return!0;throw e}})}async getProperties(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-getProperties`,e,async t=>{let n=ck(await this.blobContext.getProperties({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,tracingOptions:t.tracingOptions}));return{...n,_response:n._response,objectReplicationDestinationPolicyId:n.objectReplicationPolicyId,objectReplicationSourceProperties:ak(n.objectReplicationRules)}})}async delete(e={}){return e.conditions=e.conditions||{},uk.withSpan(`BlobClient-delete`,e,async t=>ck(await this.blobContext.delete({abortSignal:e.abortSignal,deleteSnapshots:e.deleteSnapshots,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async deleteIfExists(e={}){return uk.withSpan(`BlobClient-deleteIfExists`,e,async e=>{try{let t=ck(await this.delete(e));return{succeeded:!0,...t,_response:t._response}}catch(e){if(e.details?.errorCode===`BlobNotFound`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async undelete(e={}){return uk.withSpan(`BlobClient-undelete`,e,async t=>ck(await this.blobContext.undelete({abortSignal:e.abortSignal,tracingOptions:t.tracingOptions})))}async setHTTPHeaders(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-setHTTPHeaders`,t,async n=>ck(await this.blobContext.setHttpHeaders({abortSignal:t.abortSignal,blobHttpHeaders:e,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}async setMetadata(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-setMetadata`,t,async n=>ck(await this.blobContext.setMetadata({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,metadata:e,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,tracingOptions:n.tracingOptions})))}async setTags(e,t={}){return uk.withSpan(`BlobClient-setTags`,t,async n=>ck(await this.blobContext.setTags({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},blobModifiedAccessConditions:t.conditions,tracingOptions:n.tracingOptions,tags:nk(e)})))}async getTags(e={}){return uk.withSpan(`BlobClient-getTags`,e,async t=>{let n=ck(await this.blobContext.getTags({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},blobModifiedAccessConditions:e.conditions,tracingOptions:t.tracingOptions}));return{...n,_response:n._response,tags:rk({blobTagSet:n.blobTagSet})||{}}})}getBlobLeaseClient(e){return new Dk(this,e)}async createSnapshot(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`BlobClient-createSnapshot`,e,async t=>ck(await this.blobContext.createSnapshot({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,tracingOptions:t.tracingOptions})))}async beginCopyFromURL(e,t={}){let n=new nA({blobClient:{abortCopyFromURL:(...e)=>this.abortCopyFromURL(...e),getProperties:(...e)=>this.getProperties(...e),startCopyFromURL:(...e)=>this.startCopyFromURL(...e)},copySource:e,intervalInMs:t.intervalInMs,onProgress:t.onProgress,resumeFrom:t.resumeFrom,startCopyFromURLOptions:t});return await n.poll(),n}async abortCopyFromURL(e,t={}){return uk.withSpan(`BlobClient-abortCopyFromURL`,t,async n=>ck(await this.blobContext.abortCopyFromURL(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,tracingOptions:n.tracingOptions})))}async syncCopyFromURL(e,t={}){return t.conditions=t.conditions||{},t.sourceConditions=t.sourceConditions||{},uk.withSpan(`BlobClient-syncCopyFromURL`,t,async n=>ck(await this.blobContext.copyFromURL(e,{abortSignal:t.abortSignal,metadata:t.metadata,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions?.ifMatch,sourceIfModifiedSince:t.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions?.ifUnmodifiedSince},sourceContentMD5:t.sourceContentMD5,copySourceAuthorization:ok(t.sourceAuthorization),tier:Yk(t.tier),blobTagsString:tk(t.tags),immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,encryptionScope:t.encryptionScope,copySourceTags:t.copySourceTags,fileRequestIntent:t.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async setAccessTier(e,t={}){return uk.withSpan(`BlobClient-setAccessTier`,t,async n=>ck(await this.blobContext.setTier(Yk(e),{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},rehydratePriority:t.rehydratePriority,tracingOptions:n.tracingOptions})))}async downloadToBuffer(e,t,n,r={}){let i,a=0,o=0,s=r;e instanceof Buffer?(i=e,a=t||0,o=typeof n==`number`?n:0):(a=typeof e==`number`?e:0,o=typeof t==`number`?t:0,s=n||{});let c=s.blockSize??0;if(c<0)throw RangeError(`blockSize option must be >= 0`);if(c===0&&(c=Rb),a<0)throw RangeError(`offset option must be >= 0`);if(o&&o<=0)throw RangeError(`count option must be greater than 0`);return s.conditions||={},uk.withSpan(`BlobClient-downloadToBuffer`,s,async e=>{if(!o){let t=await this.getProperties({...s,tracingOptions:e.tracingOptions});if(o=t.contentLength-a,o<0)throw RangeError(`offset ${a} shouldn't be larger than blob size ${t.contentLength}`)}if(!i)try{i=Buffer.alloc(o)}catch(e){throw Error(`Unable to allocate the buffer of size: ${o}(in bytes). Please try passing your own buffer to the "downloadToBuffer" method or try using other methods like "download" or "downloadToFile".\t ${e.message}`)}if(i.length{let n=a+o;r+c{let a=await this.download(t,n,{...r,tracingOptions:i.tracingOptions});return a.readableStreamBody&&await dA(a.readableStreamBody,e),a.blobDownloadStream=void 0,a})}getBlobAndContainerNamesFromUrl(){let e,t;try{let n=new URL(this.url);if(n.host.split(`.`)[1]===`blob`){let r=n.pathname.match(`/([^/]*)(/(.*))?`);e=r[1],t=r[3]}else if(ek(n)){let r=n.pathname.match(`/([^/]*)/([^/]*)(/(.*))?`);e=r[2],t=r[4]}else{let r=n.pathname.match(`/([^/]*)(/(.*))?`);e=r[1],t=r[3]}if(e=decodeURIComponent(e),t=decodeURIComponent(t),t=t.replace(/\\/g,`/`),!e)throw Error(`Provided containerName is invalid.`);return{blobName:t,containerName:e}}catch{throw Error(`Unable to extract blobName and containerName with provided information.`)}}async startCopyFromURL(e,t={}){return uk.withSpan(`BlobClient-startCopyFromURL`,t,async n=>(t.conditions=t.conditions||{},t.sourceConditions=t.sourceConditions||{},ck(await this.blobContext.startCopyFromURL(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions.ifMatch,sourceIfModifiedSince:t.sourceConditions.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions.ifUnmodifiedSince,sourceIfTags:t.sourceConditions.tagConditions},immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,rehydratePriority:t.rehydratePriority,tier:Yk(t.tier),blobTagsString:tk(t.tags),sealBlob:t.sealBlob,tracingOptions:n.tracingOptions}))))}generateSasUrl(e){return new Promise(t=>{if(!(this.credential instanceof yb))throw RangeError(`Can only generate the SAS when the client is initialized with a shared key credential`);let n=gk({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).toString();t(qO(this.url,n))})}generateSasStringToSign(e){if(!(this.credential instanceof yb))throw RangeError(`Can only generate the SAS when the client is initialized with a shared key credential`);return _k({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).stringToSign}generateUserDelegationSasUrl(e,t){return new Promise(n=>{let r=gk({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},t,this.accountName).toString();n(qO(this.url,r))})}generateUserDelegationSasStringToSign(e,t){return _k({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},t,this.accountName).stringToSign}async deleteImmutabilityPolicy(e={}){return uk.withSpan(`BlobClient-deleteImmutabilityPolicy`,e,async e=>ck(await this.blobContext.deleteImmutabilityPolicy({tracingOptions:e.tracingOptions})))}async setImmutabilityPolicy(e,t={}){return uk.withSpan(`BlobClient-setImmutabilityPolicy`,t,async t=>ck(await this.blobContext.setImmutabilityPolicy({immutabilityPolicyExpiry:e.expiriesOn,immutabilityPolicyMode:e.policyMode,tracingOptions:t.tracingOptions})))}async setLegalHold(e,t={}){return uk.withSpan(`BlobClient-setLegalHold`,t,async t=>ck(await this.blobContext.setLegalHold(e,{tracingOptions:t.tracingOptions})))}async getAccountInfo(e={}){return uk.withSpan(`BlobClient-getAccountInfo`,e,async t=>ck(await this.blobContext.getAccountInfo({abortSignal:e.abortSignal,tracingOptions:t.tracingOptions})))}},hA=class e extends mA{appendBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.appendBlobContext=this.storageClientContext.appendBlob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async create(e={}){return e.conditions=e.conditions||{},Xk(e.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-create`,e,async t=>ck(await this.appendBlobContext.create(0,{abortSignal:e.abortSignal,blobHttpHeaders:e.blobHTTPHeaders,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,immutabilityPolicyExpiry:e.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:e.immutabilityPolicy?.policyMode,legalHold:e.legalHold,blobTagsString:tk(e.tags),tracingOptions:t.tracingOptions})))}async createIfNotExists(e={}){let t={ifNoneMatch:`*`};return uk.withSpan(`AppendBlobClient-createIfNotExists`,e,async e=>{try{let n=ck(await this.create({...e,conditions:t}));return{succeeded:!0,...n,_response:n._response}}catch(e){if(e.details?.errorCode===`BlobAlreadyExists`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async seal(e={}){return e.conditions=e.conditions||{},uk.withSpan(`AppendBlobClient-seal`,e,async t=>ck(await this.appendBlobContext.seal({abortSignal:e.abortSignal,appendPositionAccessConditions:e.conditions,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:t.tracingOptions})))}async appendBlock(e,t,n={}){return n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-appendBlock`,n,async r=>ck(await this.appendBlobContext.appendBlock(t,e,{abortSignal:n.abortSignal,appendPositionAccessConditions:n.conditions,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},transactionalContentMD5:n.transactionalContentMD5,transactionalContentCrc64:n.transactionalContentCrc64,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:r.tracingOptions})))}async appendBlockFromURL(e,t,n,r={}){return r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`AppendBlobClient-appendBlockFromURL`,r,async i=>ck(await this.appendBlobContext.appendBlockFromUrl(e,0,{abortSignal:r.abortSignal,sourceRange:sA({offset:t,count:n}),sourceContentMD5:r.sourceContentMD5,sourceContentCrc64:r.sourceContentCrc64,leaseAccessConditions:r.conditions,appendPositionAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince},copySourceAuthorization:ok(r.sourceAuthorization),cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:i.tracingOptions})))}},gA=class e extends mA{_blobContext;blockBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,n&&typeof n!=`string`&&(r=n),i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.blockBlobContext=this.storageClientContext.blockBlob,this._blobContext=this.storageClientContext.blob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async query(e,t={}){if(Xk(t.customerProvidedKey,this.isHttps),!Fm)throw Error(`This operation currently is only supported in Node.js.`);return uk.withSpan(`BlockBlobClient-query`,t,async n=>new Kk(ck(await this._blobContext.query({abortSignal:t.abortSignal,queryRequest:{queryType:`SQL`,expression:e,inputSerialization:ik(t.inputTextConfiguration),outputSerialization:ik(t.outputTextConfiguration)},leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,tracingOptions:n.tracingOptions})),{abortSignal:t.abortSignal,onProgress:t.onProgress,onError:t.onError}))}async upload(e,t,n={}){return n.conditions=n.conditions||{},Xk(n.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-upload`,n,async r=>ck(await this.blockBlobContext.upload(t,e,{abortSignal:n.abortSignal,blobHttpHeaders:n.blobHTTPHeaders,leaseAccessConditions:n.conditions,metadata:n.metadata,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,immutabilityPolicyExpiry:n.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:n.immutabilityPolicy?.policyMode,legalHold:n.legalHold,tier:Yk(n.tier),blobTagsString:tk(n.tags),tracingOptions:r.tracingOptions})))}async syncUploadFromURL(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-syncUploadFromURL`,t,async n=>ck(await this.blockBlobContext.putBlobFromUrl(0,e,{...t,blobHttpHeaders:t.blobHTTPHeaders,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:t.sourceConditions?.ifMatch,sourceIfModifiedSince:t.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:t.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:t.sourceConditions?.ifUnmodifiedSince,sourceIfTags:t.sourceConditions?.tagConditions},cpkInfo:t.customerProvidedKey,copySourceAuthorization:ok(t.sourceAuthorization),tier:Yk(t.tier),blobTagsString:tk(t.tags),copySourceTags:t.copySourceTags,fileRequestIntent:t.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async stageBlock(e,t,n,r={}){return Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-stageBlock`,r,async i=>ck(await this.blockBlobContext.stageBlock(e,n,t,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,requestOptions:{onUploadProgress:r.onProgress},transactionalContentMD5:r.transactionalContentMD5,transactionalContentCrc64:r.transactionalContentCrc64,cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions})))}async stageBlockFromURL(e,t,n=0,r,i={}){return Xk(i.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-stageBlockFromURL`,i,async a=>ck(await this.blockBlobContext.stageBlockFromURL(e,0,t,{abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,sourceContentMD5:i.sourceContentMD5,sourceContentCrc64:i.sourceContentCrc64,sourceRange:n===0&&!r?void 0:sA({offset:n,count:r}),cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope,copySourceAuthorization:ok(i.sourceAuthorization),fileRequestIntent:i.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async commitBlockList(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`BlockBlobClient-commitBlockList`,t,async n=>ck(await this.blockBlobContext.commitBlockList({latest:e},{abortSignal:t.abortSignal,blobHttpHeaders:t.blobHTTPHeaders,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,tier:Yk(t.tier),blobTagsString:tk(t.tags),tracingOptions:n.tracingOptions})))}async getBlockList(e,t={}){return uk.withSpan(`BlockBlobClient-getBlockList`,t,async n=>{let r=ck(await this.blockBlobContext.getBlockList(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return r.committedBlocks||=[],r.uncommittedBlocks||=[],r})}async uploadData(e,t={}){return uk.withSpan(`BlockBlobClient-uploadData`,t,async t=>{if(Fm){let n;return e instanceof Buffer?n=e:e instanceof ArrayBuffer?n=Buffer.from(e):(e=e,n=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.byteLength,t)}else{let n=new Blob([e]);return this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.size,t)}})}async uploadBrowserData(e,t={}){return uk.withSpan(`BlockBlobClient-uploadBrowserData`,t,async t=>{let n=new Blob([e]);return this.uploadSeekableInternal((e,t)=>n.slice(e,e+t),n.size,t)})}async uploadSeekableInternal(e,t,n={}){let r=n.blockSize??0;if(r<0||r>4194304e3)throw RangeError(`blockSize option must be >= 0 and <= 4194304000`);let i=n.maxSingleShotSize??268435456;if(i<0||i>268435456)throw RangeError(`maxSingleShotSize option must be >= 0 and <= 268435456`);if(r===0){if(t>4194304e3*5e4)throw RangeError(`${t} is too larger to upload to a block blob.`);t>i&&(r=Math.ceil(t/Lb),r<4194304&&(r=Rb))}return n.blobHTTPHeaders||={},n.conditions||={},uk.withSpan(`BlockBlobClient-uploadSeekableInternal`,n,async a=>{if(t<=i)return ck(await this.upload(e(0,t),t,a));let o=Math.floor((t-1)/r)+1;if(o>5e4)throw RangeError(`The buffer's size is too big or the BlockSize is too small;the number of blocks must be <= ${Lb}`);let s=[],c=Pm(),l=0,u=new lA(n.concurrency);for(let i=0;i{let u=XO(c,i),d=r*i,f=(i===o-1?t:d+r)-d;s.push(u),await this.stageBlock(u,e(d,f),f,{abortSignal:n.abortSignal,conditions:n.conditions,encryptionScope:n.encryptionScope,tracingOptions:a.tracingOptions}),l+=f,n.onProgress&&n.onProgress({loadedBytes:l})});return await u.do(),this.commitBlockList(s,a)})}async uploadFile(e,t={}){return uk.withSpan(`BlockBlobClient-uploadFile`,t,async n=>{let r=(await fA(e)).size;return this.uploadSeekableInternal((t,n)=>()=>pA(e,{autoClose:!0,end:n?t+n-1:1/0,start:t}),r,{...t,tracingOptions:n.tracingOptions})})}async uploadStream(e,t=8388608,n=5,r={}){return r.blobHTTPHeaders||={},r.conditions||={},uk.withSpan(`BlockBlobClient-uploadStream`,r,async i=>{let a=0,o=Pm(),s=0,c=[];return await new Xy(e,t,n,async(e,t)=>{let n=XO(o,a);c.push(n),a++,await this.stageBlock(n,e,t,{customerProvidedKey:r.customerProvidedKey,conditions:r.conditions,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions}),s+=t,r.onProgress&&r.onProgress({loadedBytes:s})},Math.ceil(n/4*3)).do(),ck(await this.commitBlockList(c,{...r,tracingOptions:i.tracingOptions}))})}},_A=class e extends mA{pageBlobContext;constructor(e,t,n,r){let i,a;if(r||={},Ub(t))a=e,i=t;else if(Fm&&t instanceof yb||t instanceof fb||Eh(t))a=e,r=n,i=Gb(t,r);else if(!t&&typeof t!=`string`)a=e,i=Gb(new fb,r);else if(t&&typeof t==`string`&&n&&typeof n==`string`){let o=t,s=n,c=VO(e);if(c.kind===`AccountConnString`)if(Fm){let e=new yb(c.accountName,c.accountKey);a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s)),r.proxyOptions||=Wm(c.proxyUri),i=Gb(e,r)}else throw Error(`Account connection string is only supported in Node.js environment`);else if(c.kind===`SASConnString`)a=UO(UO(c.url,encodeURIComponent(o)),encodeURIComponent(s))+`?`+c.accountSas,i=Gb(new fb,r);else throw Error(`Connection string must be either an Account connection string or a SAS connection string`)}else throw Error(`Expecting non-empty strings for containerName and blobName parameters`);super(a,i),this.pageBlobContext=this.storageClientContext.pageBlob}withSnapshot(t){return new e(WO(this.url,zb.Parameters.SNAPSHOT,t.length===0?void 0:t),this.pipeline)}async create(e,t={}){return t.conditions=t.conditions||{},Xk(t.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-create`,t,async n=>ck(await this.pageBlobContext.create(0,e,{abortSignal:t.abortSignal,blobHttpHeaders:t.blobHTTPHeaders,blobSequenceNumber:t.blobSequenceNumber,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,immutabilityPolicyExpiry:t.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:t.immutabilityPolicy?.policyMode,legalHold:t.legalHold,tier:Yk(t.tier),blobTagsString:tk(t.tags),tracingOptions:n.tracingOptions})))}async createIfNotExists(e,t={}){return uk.withSpan(`PageBlobClient-createIfNotExists`,t,async n=>{try{let r={ifNoneMatch:`*`},i=ck(await this.create(e,{...t,conditions:r,tracingOptions:n.tracingOptions}));return{succeeded:!0,...i,_response:i._response}}catch(e){if(e.details?.errorCode===`BlobAlreadyExists`)return{succeeded:!1,...e.response?.parsedHeaders,_response:e.response};throw e}})}async uploadPages(e,t,n,r={}){return r.conditions=r.conditions||{},Xk(r.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-uploadPages`,r,async i=>ck(await this.pageBlobContext.uploadPages(n,e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},requestOptions:{onUploadProgress:r.onProgress},range:sA({offset:t,count:n}),sequenceNumberAccessConditions:r.conditions,transactionalContentMD5:r.transactionalContentMD5,transactionalContentCrc64:r.transactionalContentCrc64,cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:i.tracingOptions})))}async uploadPagesFromURL(e,t,n,r,i={}){return i.conditions=i.conditions||{},i.sourceConditions=i.sourceConditions||{},Xk(i.customerProvidedKey,this.isHttps),uk.withSpan(`PageBlobClient-uploadPagesFromURL`,i,async a=>ck(await this.pageBlobContext.uploadPagesFromURL(e,sA({offset:t,count:r}),0,sA({offset:n,count:r}),{abortSignal:i.abortSignal,sourceContentMD5:i.sourceContentMD5,sourceContentCrc64:i.sourceContentCrc64,leaseAccessConditions:i.conditions,sequenceNumberAccessConditions:i.conditions,modifiedAccessConditions:{...i.conditions,ifTags:i.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:i.sourceConditions?.ifMatch,sourceIfModifiedSince:i.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:i.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:i.sourceConditions?.ifUnmodifiedSince},cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope,copySourceAuthorization:ok(i.sourceAuthorization),fileRequestIntent:i.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async clearPages(e=0,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-clearPages`,n,async r=>ck(await this.pageBlobContext.clearPages(0,{abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:sA({offset:e,count:t}),sequenceNumberAccessConditions:n.conditions,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:r.tracingOptions})))}async getPageRanges(e=0,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-getPageRanges`,n,async r=>Qk(ck(await this.pageBlobContext.getPageRanges({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:sA({offset:e,count:t}),tracingOptions:r.tracingOptions}))))}async listPageRangesSegment(e=0,t,n,r={}){return uk.withSpan(`PageBlobClient-getPageRangesSegment`,r,async i=>ck(await this.pageBlobContext.getPageRanges({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},range:sA({offset:e,count:t}),marker:n,maxPageSize:r.maxPageSize,tracingOptions:i.tracingOptions})))}async*listPageRangeItemSegments(e=0,t,n,r={}){let i;if(n||n===void 0)do i=await this.listPageRangesSegment(e,t,n,r),n=i.continuationToken,yield await i;while(n)}async*listPageRangeItems(e=0,t,n={}){for await(let r of this.listPageRangeItemSegments(e,t,void 0,n))yield*sk(r)}listPageRanges(e=0,t,n={}){n.conditions=n.conditions||{};let r=this.listPageRangeItems(e,t,n);return{next(){return r.next()},[Symbol.asyncIterator](){return this},byPage:(r={})=>this.listPageRangeItemSegments(e,t,r.continuationToken,{maxPageSize:r.maxPageSize,...n})}}async getPageRangesDiff(e,t,n,r={}){return r.conditions=r.conditions||{},uk.withSpan(`PageBlobClient-getPageRangesDiff`,r,async i=>Qk(ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},prevsnapshot:n,range:sA({offset:e,count:t}),tracingOptions:i.tracingOptions}))))}async listPageRangesDiffSegment(e,t,n,r,i={}){return uk.withSpan(`PageBlobClient-getPageRangesDiffSegment`,i,async a=>ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:i?.abortSignal,leaseAccessConditions:i?.conditions,modifiedAccessConditions:{...i?.conditions,ifTags:i?.conditions?.tagConditions},prevsnapshot:n,range:sA({offset:e,count:t}),marker:r,maxPageSize:i?.maxPageSize,tracingOptions:a.tracingOptions})))}async*listPageRangeDiffItemSegments(e,t,n,r,i){let a;if(r||r===void 0)do a=await this.listPageRangesDiffSegment(e,t,n,r,i),r=a.continuationToken,yield await a;while(r)}async*listPageRangeDiffItems(e,t,n,r){for await(let i of this.listPageRangeDiffItemSegments(e,t,n,void 0,r))yield*sk(i)}listPageRangesDiff(e,t,n,r={}){r.conditions=r.conditions||{};let i=this.listPageRangeDiffItems(e,t,n,{...r});return{next(){return i.next()},[Symbol.asyncIterator](){return this},byPage:(i={})=>this.listPageRangeDiffItemSegments(e,t,n,i.continuationToken,{maxPageSize:i.maxPageSize,...r})}}async getPageRangesDiffForManagedDisks(e,t,n,r={}){return r.conditions=r.conditions||{},uk.withSpan(`PageBlobClient-GetPageRangesDiffForManagedDisks`,r,async i=>Qk(ck(await this.pageBlobContext.getPageRangesDiff({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},prevSnapshotUrl:n,range:sA({offset:e,count:t}),tracingOptions:i.tracingOptions}))))}async resize(e,t={}){return t.conditions=t.conditions||{},uk.withSpan(`PageBlobClient-resize`,t,async n=>ck(await this.pageBlobContext.resize(e,{abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},encryptionScope:t.encryptionScope,tracingOptions:n.tracingOptions})))}async updateSequenceNumber(e,t,n={}){return n.conditions=n.conditions||{},uk.withSpan(`PageBlobClient-updateSequenceNumber`,n,async r=>ck(await this.pageBlobContext.updateSequenceNumber(e,{abortSignal:n.abortSignal,blobSequenceNumber:t,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async startCopyIncremental(e,t={}){return uk.withSpan(`PageBlobClient-startCopyIncremental`,t,async n=>ck(await this.pageBlobContext.copyIncremental(e,{abortSignal:t.abortSignal,modifiedAccessConditions:{...t.conditions,ifTags:t.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}},vA=class extends Error{constructor(e){super(e),this.name=`InvalidResponseError`}},yA=class extends Error{constructor(e){let t=`Unable to make request: ${e}\nIf you are using self-hosted runners, please make sure your runner has access to all GitHub endpoints: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github`;super(t),this.code=e,this.name=`NetworkError`}};yA.isNetworkErrorCode=e=>e?[`ECONNRESET`,`ENOTFOUND`,`ETIMEDOUT`,`ECONNREFUSED`,`EHOSTUNREACH`].includes(e):!1;var bA=class extends Error{constructor(){super(`Cache storage quota has been hit. Unable to upload any new cache entries. +More info on storage limits: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#calculating-minute-and-storage-spending`),this.name=`UsageError`}};bA.isUsageErrorMessage=e=>e?e.includes(`insufficient usage`):!1;var xA=class extends Error{constructor(e){super(e),this.name=`RateLimitError`}},SA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},CA=class{constructor(e){this.contentLength=e,this.sentBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}setSentBytes(e){this.sentBytes=e}getTransferredBytes(){return this.sentBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.sentBytes,t=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,r=(e/(1024*1024)/(n/1e3)).toFixed(1);xi(`Sent ${e} of ${this.contentLength} (${t}%), ${r} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setSentBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let t=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(t,e))};this.timeoutHandle=setTimeout(t,e)}stopDisplayTimer(){this.timeoutHandle&&=(clearTimeout(this.timeoutHandle),void 0),this.display()}};function wA(e,t,n){return SA(this,void 0,void 0,function*(){let r=new mA(e),i=r.getBlockBlobClient(),a=new CA(n?.archiveSizeBytes??0),o={blockSize:n?.uploadChunkSize,concurrency:n?.uploadConcurrency,maxSingleShotSize:128*1024*1024,onProgress:a.onProgress()};try{a.startDisplayTimer(),K(`BlobClient: ${r.name}:${r.accountName}:${r.containerName}`);let e=yield i.uploadFile(t,o);if(e._response.status>=400)throw new vA(`uploadCacheArchiveSDK: upload failed with status code ${e._response.status}`);return e}catch(e){throw bi(`uploadCacheArchiveSDK: internal error uploading cache archive: ${e.message}`),e}finally{a.stopDisplayTimer()}})}var TA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function EA(e){return e?e>=200&&e<300:!1}function DA(e){return e?e>=500:!0}function OA(e){return e?[ur.BadGateway,ur.ServiceUnavailable,ur.GatewayTimeout].includes(e):!1}function kA(e){return TA(this,void 0,void 0,function*(){return new Promise(t=>setTimeout(t,e))})}function AA(e,t,n){return TA(this,arguments,void 0,function*(e,t,n,r=2,i=Nd,a=void 0){let o=``,s=1;for(;s<=r;){let c,l,u=!1;try{c=yield t()}catch(e){a&&(c=a(e)),u=!0,o=e.message}if(c&&(l=n(c),!DA(l)))return c;if(l&&(u=OA(l),o=`Cache service responded with ${l}`),K(`${e} - Attempt ${s} of ${r} failed with error: ${o}`),!u){K(`${e} - Error is not retryable`);break}yield kA(i),s++}throw Error(`${e} failed: ${o}`)})}function jA(e,t){return TA(this,arguments,void 0,function*(e,t,n=2,r=Nd){return yield AA(e,t,e=>e.statusCode,n,r,e=>{if(e instanceof gr)return{statusCode:e.statusCode,result:null,headers:{},error:e}})})}function MA(e,t){return TA(this,arguments,void 0,function*(e,t,n=2,r=Nd){return yield AA(e,t,e=>e.message.statusCode,n,r)})}var NA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function PA(e,t){return NA(this,void 0,void 0,function*(){yield Oe.promisify($e.pipeline)(e.message,t)})}var FA=class{constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset+=this.segmentSize,this.segmentIndex+=1,this.segmentSize=e,this.receivedBytes=0,K(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){this.receivedBytes=e}getTransferredBytes(){return this.segmentOffset+this.receivedBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.segmentOffset+this.receivedBytes,t=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,r=(e/(1024*1024)/(n/1e3)).toFixed(1);xi(`Received ${e} of ${this.contentLength} (${t}%), ${r} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setReceivedBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let t=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(t,e))};this.timeoutHandle=setTimeout(t,e)}stopDisplayTimer(){this.timeoutHandle&&=(clearTimeout(this.timeoutHandle),void 0),this.display()}};function IA(e,t){return NA(this,void 0,void 0,function*(){let n=me.createWriteStream(t),r=new vr(`actions/cache`),i=yield MA(`downloadCache`,()=>NA(this,void 0,void 0,function*(){return r.get(e)}));i.message.socket.setTimeout(Pd,()=>{i.message.destroy(),K(`Aborting download, socket timed out after ${Pd} ms`)}),yield PA(i,n);let a=i.message.headers[`content-length`];if(a){let e=parseInt(a),n=Hd(t);if(n!==e)throw Error(`Incomplete download. Expected file size: ${e}, actual file size: ${n}`)}else K(`Unable to validate download, no Content-Length header`)})}function LA(e,t,n){return NA(this,void 0,void 0,function*(){let r=yield me.promises.open(t,`w`),i=new vr(`actions/cache`,void 0,{socketTimeout:n.timeoutInMs,keepAlive:!0});try{let t=(yield MA(`downloadCacheMetadata`,()=>NA(this,void 0,void 0,function*(){return yield i.request(`HEAD`,e,null,{})}))).message.headers[`content-length`];if(t==null)throw Error(`Content-Length not found on blob response`);let a=parseInt(t);if(Number.isNaN(a))throw Error(`Could not interpret Content-Length: ${a}`);let o=[],s=4*1024*1024;for(let t=0;tNA(this,void 0,void 0,function*(){return yield RA(i,e,t,n)})})}o.reverse();let c=0,l=0,u=new FA(a);u.startDisplayTimer();let d=u.onProgress(),f=[],p,m=()=>NA(this,void 0,void 0,function*(){let e=yield Promise.race(Object.values(f));yield r.write(e.buffer,0,e.count,e.offset),c--,delete f[e.offset],l+=e.count,d({loadedBytes:l})});for(;p=o.pop();)f[p.offset]=p.promiseGetter(),c++,c>=(n.downloadConcurrency??10)&&(yield m());for(;c>0;)yield m()}finally{i.dispose(),yield r.close()}})}function RA(e,t,n,r){return NA(this,void 0,void 0,function*(){let i=0;for(;;)try{let i=yield VA(3e4,zA(e,t,n,r));if(typeof i==`string`)throw Error(`downloadSegmentRetry failed due to timeout`);return i}catch(e){if(i>=5)throw e;i++}})}function zA(e,t,n,r){return NA(this,void 0,void 0,function*(){let i=yield MA(`downloadCachePart`,()=>NA(this,void 0,void 0,function*(){return yield e.get(t,{Range:`bytes=${n}-${n+r-1}`})}));if(!i.readBodyBuffer)throw Error(`Expected HttpClientResponse to implement readBodyBuffer`);return{offset:n,count:r,buffer:yield i.readBodyBuffer()}})}function BA(e,t,n){return NA(this,void 0,void 0,function*(){let r=new gA(e,void 0,{retryOptions:{tryTimeoutInMs:n.timeoutInMs}}),i=(yield r.getProperties()).contentLength??-1;if(i<0)K(`Unable to determine content length, downloading file with http-client...`),yield IA(e,t);else{let e=Math.min(134217728,Ze.constants.MAX_LENGTH),a=new FA(i),o=me.openSync(t,`w`);try{a.startDisplayTimer();let t=new AbortController,s=t.signal;for(;!a.isDone();){let c=a.segmentOffset+a.segmentSize,l=Math.min(e,i-c);a.nextSegment(l);let u=yield VA(n.segmentTimeoutInMs||36e5,r.downloadToBuffer(c,l,{abortSignal:s,concurrency:n.downloadConcurrency,onProgress:a.onProgress()}));if(u===`timeout`)throw t.abort(),Error(`Aborting cache download as the download time exceeded the timeout.`);Buffer.isBuffer(u)&&me.writeFileSync(o,u)}}finally{a.stopDisplayTimer(),me.closeSync(o)}}})}const VA=(e,t)=>NA(void 0,void 0,void 0,function*(){let n,r=new Promise(t=>{n=setTimeout(()=>t(`timeout`),e)});return Promise.race([t,r]).then(e=>(clearTimeout(n),e))});function HA(e){let t={useAzureSdk:!1,uploadConcurrency:4,uploadChunkSize:32*1024*1024};return e&&(typeof e.useAzureSdk==`boolean`&&(t.useAzureSdk=e.useAzureSdk),typeof e.uploadConcurrency==`number`&&(t.uploadConcurrency=e.uploadConcurrency),typeof e.uploadChunkSize==`number`&&(t.uploadChunkSize=e.uploadChunkSize)),t.uploadConcurrency=isNaN(Number(process.env.CACHE_UPLOAD_CONCURRENCY))?t.uploadConcurrency:Math.min(32,Number(process.env.CACHE_UPLOAD_CONCURRENCY)),t.uploadChunkSize=isNaN(Number(process.env.CACHE_UPLOAD_CHUNK_SIZE))?t.uploadChunkSize:Math.min(128*1024*1024,Number(process.env.CACHE_UPLOAD_CHUNK_SIZE)*1024*1024),K(`Use Azure SDK: ${t.useAzureSdk}`),K(`Upload concurrency: ${t.uploadConcurrency}`),K(`Upload chunk size: ${t.uploadChunkSize}`),t}function UA(e){let t={useAzureSdk:!1,concurrentBlobDownloads:!0,downloadConcurrency:8,timeoutInMs:3e4,segmentTimeoutInMs:6e5,lookupOnly:!1};e&&(typeof e.useAzureSdk==`boolean`&&(t.useAzureSdk=e.useAzureSdk),typeof e.concurrentBlobDownloads==`boolean`&&(t.concurrentBlobDownloads=e.concurrentBlobDownloads),typeof e.downloadConcurrency==`number`&&(t.downloadConcurrency=e.downloadConcurrency),typeof e.timeoutInMs==`number`&&(t.timeoutInMs=e.timeoutInMs),typeof e.segmentTimeoutInMs==`number`&&(t.segmentTimeoutInMs=e.segmentTimeoutInMs),typeof e.lookupOnly==`boolean`&&(t.lookupOnly=e.lookupOnly));let n=process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS;return n&&!isNaN(Number(n))&&isFinite(Number(n))&&(t.segmentTimeoutInMs=Number(n)*60*1e3),K(`Use Azure SDK: ${t.useAzureSdk}`),K(`Download concurrency: ${t.downloadConcurrency}`),K(`Request timeout (ms): ${t.timeoutInMs}`),K(`Cache segment download timeout mins env var: ${process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS}`),K(`Segment download timeout (ms): ${t.segmentTimeoutInMs}`),K(`Lookup only: ${t.lookupOnly}`),t}function WA(){let e=new URL(process.env.GITHUB_SERVER_URL||`https://github.com`).hostname.trimEnd().toUpperCase(),t=e===`GITHUB.COM`,n=e.endsWith(`.GHE.COM`),r=e.endsWith(`.LOCALHOST`);return!t&&!n&&!r}function GA(){return WA()?`v1`:process.env.ACTIONS_CACHE_SERVICE_V2?`v2`:`v1`}function KA(){let e=GA();switch(e){case`v1`:return process.env.ACTIONS_CACHE_URL||process.env.ACTIONS_RESULTS_URL||``;case`v2`:return process.env.ACTIONS_RESULTS_URL||``;default:throw Error(`Unsupported cache service version: ${e}`)}}var qA=i(((e,t)=>{t.exports={name:`@actions/cache`,version:`6.0.1`,description:`Actions cache lib`,keywords:[`github`,`actions`,`cache`],homepage:`https://github.com/actions/toolkit/tree/main/packages/cache`,license:`MIT`,type:`module`,main:`lib/cache.js`,types:`lib/cache.d.ts`,exports:{".":{types:`./lib/cache.d.ts`,import:`./lib/cache.js`}},directories:{lib:`lib`,test:`__tests__`},files:[`lib`,`!.DS_Store`],publishConfig:{access:`public`},repository:{type:`git`,url:`git+https://github.com/actions/toolkit.git`,directory:`packages/cache`},scripts:{"audit-moderate":`npm install && npm audit --json --audit-level=moderate > audit.json`,test:`echo "Error: run tests from root" && exit 1`,tsc:`tsc && cp src/internal/shared/package-version.cjs lib/internal/shared/`},bugs:{url:`https://github.com/actions/toolkit/issues`},dependencies:{"@actions/core":`^3.0.1`,"@actions/exec":`^3.0.0`,"@actions/glob":`^0.6.1`,"@actions/http-client":`^4.0.1`,"@actions/io":`^3.0.2`,"@azure/core-rest-pipeline":`^1.23.0`,"@azure/storage-blob":`^12.31.0`,"@protobuf-ts/runtime-rpc":`^2.11.1`,semver:`^7.7.4`},devDependencies:{"@protobuf-ts/plugin":`^2.11.1`,"@types/node":`^25.6.0`,"@types/semver":`^7.7.1`,typescript:`^5.9.3`},overrides:{"uri-js":`npm:uri-js-replace@^1.0.1`,"node-fetch":`^3.3.2`}}})),JA=i(((e,t)=>{t.exports={version:qA().version}}))();function YA(){return`@actions/cache-${JA.version}`}var XA=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};function ZA(e){let t=KA();if(!t)throw Error(`Cache Service Url not found, unable to restore cache.`);let n=`${t}_apis/artifactcache/${e}`;return K(`Resource Url: ${n}`),n}function QA(e,t){return`${e};api-version=${t}`}function $A(){return{headers:{Accept:QA(`application/json`,`6.0-preview.1`)}}}function ej(){let e=new xr(process.env.ACTIONS_RUNTIME_TOKEN||``);return new vr(YA(),[e],$A())}function tj(e,t,n){return XA(this,void 0,void 0,function*(){let r=ej(),i=Xd(t,n?.compressionMethod,n?.enableCrossOsArchive),a=`cache?keys=${encodeURIComponent(e.join(`,`))}&version=${i}`,o=yield jA(`getCacheEntry`,()=>XA(this,void 0,void 0,function*(){return r.getJson(ZA(a))}));if(o.statusCode===204)return vi()&&(yield nj(e[0],r,i)),null;if(!EA(o.statusCode))throw Error(`Cache service responded with ${o.statusCode}`);let s=o.result,c=s?.archiveLocation;if(!c)throw Error(`Cache not found.`);return pi(c),K(`Cache Result:`),K(JSON.stringify(s)),s})}function nj(e,t,n){return XA(this,void 0,void 0,function*(){let r=`caches?key=${encodeURIComponent(e)}`,i=yield jA(`listCache`,()=>XA(this,void 0,void 0,function*(){return t.getJson(ZA(r))}));if(i.statusCode===200){let t=i.result,r=t?.totalCount;if(r&&r>0){K(`No matching cache found for cache key '${e}', version '${n} and scope ${process.env.GITHUB_REF}. There exist one or more cache(s) with similar key but they have different version or scope. See more info on cache matching here: https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#matching-a-cache-key \nOther caches with similar key:`);for(let e of t?.artifactCaches||[])K(`Cache Key: ${e?.cacheKey}, Cache Version: ${e?.cacheVersion}, Cache Scope: ${e?.scope}, Cache Created: ${e?.creationTime}`)}}})}function rj(e,t,n){return XA(this,void 0,void 0,function*(){let r=new rt(e),i=UA(n);r.hostname.endsWith(`.blob.core.windows.net`)?i.useAzureSdk?yield BA(e,t,i):i.concurrentBlobDownloads?yield LA(e,t,i):yield IA(e,t):yield IA(e,t)})}function ij(e,t,n){return XA(this,void 0,void 0,function*(){let r=ej(),i={key:e,version:Xd(t,n?.compressionMethod,n?.enableCrossOsArchive),cacheSize:n?.cacheSize};return yield jA(`reserveCache`,()=>XA(this,void 0,void 0,function*(){return r.postJson(ZA(`caches`),i)}))})}function aj(e,t){return`bytes ${e}-${t}/*`}function oj(e,t,n,r,i){return XA(this,void 0,void 0,function*(){K(`Uploading chunk of size ${i-r+1} bytes at offset ${r} with content range: ${aj(r,i)}`);let a={"Content-Type":`application/octet-stream`,"Content-Range":aj(r,i)},o=yield MA(`uploadChunk (start: ${r}, end: ${i})`,()=>XA(this,void 0,void 0,function*(){return e.sendStream(`PATCH`,t,n(),a)}));if(!EA(o.message.statusCode))throw Error(`Cache service responded with ${o.message.statusCode} during upload chunk.`)})}function sj(e,t,n,r){return XA(this,void 0,void 0,function*(){let i=Hd(n),a=ZA(`caches/${t.toString()}`),o=me.openSync(n,`r`),s=HA(r),c=Yd(`uploadConcurrency`,s.uploadConcurrency),l=Yd(`uploadChunkSize`,s.uploadChunkSize),u=[...Array(c).keys()];K(`Awaiting all uploads`);let d=0;try{yield Promise.all(u.map(()=>XA(this,void 0,void 0,function*(){for(;dme.createReadStream(n,{fd:o,start:r,end:s,autoClose:!1}).on(`error`,e=>{throw Error(`Cache upload failed because file read failed with ${e.message}`)}),r,s)}})))}finally{me.closeSync(o)}})}function cj(e,t,n){return XA(this,void 0,void 0,function*(){let r={size:n};return yield jA(`commitCache`,()=>XA(this,void 0,void 0,function*(){return e.postJson(ZA(`caches/${t.toString()}`),r)}))})}function lj(e,t,n,r){return XA(this,void 0,void 0,function*(){if(HA(r).useAzureSdk){if(!n)throw Error(`Azure Storage SDK can only be used when a signed URL is provided.`);yield wA(n,t,r)}else{let n=ej();K(`Upload cache`),yield sj(n,e,t,r),K(`Commiting cache`);let i=Hd(t);xi(`Cache Size: ~${Math.round(i/(1024*1024))} MB (${i} B)`);let a=yield cj(n,e,i);if(!EA(a.statusCode))throw Error(`Cache service responded with ${a.statusCode} during commit cache.`);xi(`Cache saved successfully`)}})}var uj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isJsonObject=e.typeofJsonValue=void 0;function t(e){let t=typeof e;if(t==`object`){if(Array.isArray(e))return`array`;if(e===null)return`null`}return t}e.typeofJsonValue=t;function n(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}e.isJsonObject=n})),dj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.base64encode=e.base64decode=void 0;let t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``),n=[];for(let e=0;e>4,s=o,a=2;break;case 2:r[i++]=(s&15)<<4|(o&60)>>2,s=o,a=3;break;case 3:r[i++]=(s&3)<<6|o,a=0;break}}if(a==1)throw Error(`invalid base64 string.`);return r.subarray(0,i)}e.base64decode=r;function i(e){let n=``,r=0,i,a=0;for(let o=0;o>2],a=(i&3)<<4,r=1;break;case 1:n+=t[a|i>>4],a=(i&15)<<2,r=2;break;case 2:n+=t[a|i>>6],n+=t[i&63],r=0;break}return r&&(n+=t[a],n+=`=`,r==1&&(n+=`=`)),n}e.base64encode=i})),fj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.utf8read=void 0;let t=e=>String.fromCharCode.apply(String,e);function n(e){if(e.length<1)return``;let n=0,r=[],i=[],a=0,o,s=e.length;for(;n191&&o<224?i[a++]=(o&31)<<6|e[n++]&63:o>239&&o<365?(o=((o&7)<<18|(e[n++]&63)<<12|(e[n++]&63)<<6|e[n++]&63)-65536,i[a++]=55296+(o>>10),i[a++]=56320+(o&1023)):i[a++]=(o&15)<<12|(e[n++]&63)<<6|e[n++]&63,a>8191&&(r.push(t(i)),a=0);return r.length?(a&&r.push(t(i.slice(0,a))),r.join(``)):t(i.slice(0,a))}e.utf8read=n})),pj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.WireType=e.mergeBinaryOptions=e.UnknownFieldHandler=void 0,(function(e){e.symbol=Symbol.for(`protobuf-ts/unknown`),e.onRead=(n,r,i,a,o)=>{(t(r)?r[e.symbol]:r[e.symbol]=[]).push({no:i,wireType:a,data:o})},e.onWrite=(t,n,r)=>{for(let{no:t,wireType:i,data:a}of e.list(n))r.tag(t,i).raw(a)},e.list=(n,r)=>{if(t(n)){let t=n[e.symbol];return r?t.filter(e=>e.no==r):t}return[]},e.last=(t,n)=>e.list(t,n).slice(-1)[0];let t=t=>t&&Array.isArray(t[e.symbol])})(e.UnknownFieldHandler||={});function t(e,t){return Object.assign(Object.assign({},e),t)}e.mergeBinaryOptions=t,(function(e){e[e.Varint=0]=`Varint`,e[e.Bit64=1]=`Bit64`,e[e.LengthDelimited=2]=`LengthDelimited`,e[e.StartGroup=3]=`StartGroup`,e[e.EndGroup=4]=`EndGroup`,e[e.Bit32=5]=`Bit32`})(e.WireType||={})})),mj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.varint32read=e.varint32write=e.int64toString=e.int64fromString=e.varint64write=e.varint64read=void 0;function t(){let e=0,t=0;for(let n=0;n<28;n+=7){let r=this.buf[this.pos++];if(e|=(r&127)<>4,!(n&128))return this.assertBounds(),[e,t];for(let n=3;n<=31;n+=7){let r=this.buf[this.pos++];if(t|=(r&127)<>>r,a=!(!(i>>>7)&&t==0),o=(a?i|128:i)&255;if(n.push(o),!a)return}let r=e>>>28&15|(t&7)<<4,i=!!(t>>3);if(n.push((i?r|128:r)&255),i){for(let e=3;e<31;e+=7){let r=t>>>e,i=!!(r>>>7),a=(i?r|128:r)&255;if(n.push(a),!i)return}n.push(t>>>31&1)}}e.varint64write=n;let r=65536*65536;function i(e){let t=e[0]==`-`;t&&(e=e.slice(1));let n=1e6,i=0,a=0;function o(t,o){let s=Number(e.slice(t,o));a*=n,i=i*n+s,i>=r&&(a+=i/r|0,i%=r)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),[t,i,a]}e.int64fromString=i;function a(e,t){if(t>>>0<=2097151)return``+(r*t+(e>>>0));let n=e&16777215,i=(e>>>24|t<<8)>>>0&16777215,a=t>>16&65535,o=n+i*6777216+a*6710656,s=i+a*8147497,c=a*2,l=1e7;o>=l&&(s+=Math.floor(o/l),o%=l),s>=l&&(c+=Math.floor(s/l),s%=l);function u(e,t){let n=e?String(e):``;return t?`0000000`.slice(n.length)+n:n}return u(c,0)+u(s,c)+u(o,1)}e.int64toString=a;function o(e,t){if(e>=0){for(;e>127;)t.push(e&127|128),e>>>=7;t.push(e)}else{for(let n=0;n<9;n++)t.push(e&127|128),e>>=7;t.push(1)}}e.varint32write=o;function s(){let e=this.buf[this.pos++],t=e&127;if(!(e&128)||(e=this.buf[this.pos++],t|=(e&127)<<7,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<14,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<21,!(e&128)))return this.assertBounds(),t;e=this.buf[this.pos++],t|=(e&15)<<28;for(let t=5;e&128&&t<10;t++)e=this.buf[this.pos++];if(e&128)throw Error(`invalid varint`);return this.assertBounds(),t>>>0}e.varint32read=s})),hj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.PbLong=e.PbULong=e.detectBi=void 0;let t=mj(),n;function r(){let e=new DataView(new ArrayBuffer(8));n=globalThis.BigInt!==void 0&&typeof e.getBigInt64==`function`&&typeof e.getBigUint64==`function`&&typeof e.setBigInt64==`function`&&typeof e.setBigUint64==`function`?{MIN:BigInt(`-9223372036854775808`),MAX:BigInt(`9223372036854775807`),UMIN:BigInt(`0`),UMAX:BigInt(`18446744073709551615`),C:BigInt,V:e}:void 0}e.detectBi=r,r();function i(e){if(!e)throw Error(`BigInt unavailable, see https://github.com/timostamm/protobuf-ts/blob/v1.0.8/MANUAL.md#bigint-support`)}let a=/^-?[0-9]+$/,o=4294967296,s=2147483648;var c=class{constructor(e,t){this.lo=e|0,this.hi=t|0}isZero(){return this.lo==0&&this.hi==0}toNumber(){let e=this.hi*o+(this.lo>>>0);if(!Number.isSafeInteger(e))throw Error(`cannot convert to safe number`);return e}},l=class e extends c{static from(r){if(n)switch(typeof r){case`string`:if(r==`0`)return this.ZERO;if(r==``)throw Error(`string is no integer`);r=n.C(r);case`number`:if(r===0)return this.ZERO;r=n.C(r);case`bigint`:if(!r)return this.ZERO;if(rn.UMAX)throw Error(`ulong too large`);return n.V.setBigUint64(0,r,!0),new e(n.V.getInt32(0,!0),n.V.getInt32(4,!0))}else switch(typeof r){case`string`:if(r==`0`)return this.ZERO;if(r=r.trim(),!a.test(r))throw Error(`string is no integer`);let[n,i,s]=t.int64fromString(r);if(n)throw Error(`signed value for ulong`);return new e(i,s);case`number`:if(r==0)return this.ZERO;if(!Number.isSafeInteger(r))throw Error(`number is no integer`);if(r<0)throw Error(`signed value for ulong`);return new e(r,r/o)}throw Error(`unknown value `+typeof r)}toString(){return n?this.toBigInt().toString():t.int64toString(this.lo,this.hi)}toBigInt(){return i(n),n.V.setInt32(0,this.lo,!0),n.V.setInt32(4,this.hi,!0),n.V.getBigUint64(0,!0)}};e.PbULong=l,l.ZERO=new l(0,0);var u=class e extends c{static from(r){if(n)switch(typeof r){case`string`:if(r==`0`)return this.ZERO;if(r==``)throw Error(`string is no integer`);r=n.C(r);case`number`:if(r===0)return this.ZERO;r=n.C(r);case`bigint`:if(!r)return this.ZERO;if(rn.MAX)throw Error(`signed long too large`);return n.V.setBigInt64(0,r,!0),new e(n.V.getInt32(0,!0),n.V.getInt32(4,!0))}else switch(typeof r){case`string`:if(r==`0`)return this.ZERO;if(r=r.trim(),!a.test(r))throw Error(`string is no integer`);let[n,i,c]=t.int64fromString(r);if(n){if(c>s||c==s&&i!=0)throw Error(`signed long too small`)}else if(c>=s)throw Error(`signed long too large`);let l=new e(i,c);return n?l.negate():l;case`number`:if(r==0)return this.ZERO;if(!Number.isSafeInteger(r))throw Error(`number is no integer`);return r>0?new e(r,r/o):new e(-r,-r/o).negate()}throw Error(`unknown value `+typeof r)}isNegative(){return(this.hi&s)!=0}negate(){let t=~this.hi,n=this.lo;return n?n=~n+1:t+=1,new e(n,t)}toString(){if(n)return this.toBigInt().toString();if(this.isNegative()){let e=this.negate();return`-`+t.int64toString(e.lo,e.hi)}return t.int64toString(this.lo,this.hi)}toBigInt(){return i(n),n.V.setInt32(0,this.lo,!0),n.V.setInt32(4,this.hi,!0),n.V.getBigInt64(0,!0)}};e.PbLong=u,u.ZERO=new u(0,0)})),gj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.BinaryReader=e.binaryReadOptions=void 0;let t=pj(),n=hj(),r=mj(),i={readUnknownField:!0,readerFactory:e=>new o(e)};function a(e){return e?Object.assign(Object.assign({},i),e):i}e.binaryReadOptions=a;var o=class{constructor(e,t){this.varint64=r.varint64read,this.uint32=r.varint32read,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t??new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0})}tag(){let e=this.uint32(),t=e>>>3,n=e&7;if(t<=0||n<0||n>5)throw Error(`illegal tag: field no `+t+` wire type `+n);return[t,n]}skip(e){let n=this.pos;switch(e){case t.WireType.Varint:for(;this.buf[this.pos++]&128;);break;case t.WireType.Bit64:this.pos+=4;case t.WireType.Bit32:this.pos+=4;break;case t.WireType.LengthDelimited:let n=this.uint32();this.pos+=n;break;case t.WireType.StartGroup:let r;for(;(r=this.tag()[1])!==t.WireType.EndGroup;)this.skip(r);break;default:throw Error(`cant skip wire type `+e)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw RangeError(`premature EOF`)}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return new n.PbLong(...this.varint64())}uint64(){return new n.PbULong(...this.varint64())}sint64(){let[e,t]=this.varint64(),r=-(e&1);return e=(e>>>1|(t&1)<<31)^r,t=t>>>1^r,new n.PbLong(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return new n.PbULong(this.sfixed32(),this.sfixed32())}sfixed64(){return new n.PbLong(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}};e.BinaryReader=o})),_j=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assertFloat32=e.assertUInt32=e.assertInt32=e.assertNever=e.assert=void 0;function t(e,t){if(!e)throw Error(t)}e.assert=t;function n(e,t){throw Error(t??`Unexpected object: `+e)}e.assertNever=n;function r(e){if(typeof e!=`number`)throw Error(`invalid int 32: `+typeof e);if(!Number.isInteger(e)||e>2147483647||e<-2147483648)throw Error(`invalid int 32: `+e)}e.assertInt32=r;function i(e){if(typeof e!=`number`)throw Error(`invalid uint 32: `+typeof e);if(!Number.isInteger(e)||e>4294967295||e<0)throw Error(`invalid uint 32: `+e)}e.assertUInt32=i;function a(e){if(typeof e!=`number`)throw Error(`invalid float 32: `+typeof e);if(Number.isFinite(e)&&(e>34028234663852886e22||e<-34028234663852886e22))throw Error(`invalid float 32: `+e)}e.assertFloat32=a})),vj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.BinaryWriter=e.binaryWriteOptions=void 0;let t=hj(),n=mj(),r=_j(),i={writeUnknownFields:!0,writerFactory:()=>new o};function a(e){return e?Object.assign(Object.assign({},i),e):i}e.binaryWriteOptions=a;var o=class{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let t=0;t>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(r.assertUInt32(e);e>127;)this.buf.push(e&127|128),e>>>=7;return this.buf.push(e),this}int32(e){return r.assertInt32(e),n.varint32write(e,this.buf),this}bool(e){return this.buf.push(+!!e),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){r.assertFloat32(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){r.assertUInt32(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){r.assertInt32(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return r.assertInt32(e),e=(e<<1^e>>31)>>>0,n.varint32write(e,this.buf),this}sfixed64(e){let n=new Uint8Array(8),r=new DataView(n.buffer),i=t.PbLong.from(e);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(n)}fixed64(e){let n=new Uint8Array(8),r=new DataView(n.buffer),i=t.PbULong.from(e);return r.setInt32(0,i.lo,!0),r.setInt32(4,i.hi,!0),this.raw(n)}int64(e){let r=t.PbLong.from(e);return n.varint64write(r.lo,r.hi,this.buf),this}sint64(e){let r=t.PbLong.from(e),i=r.hi>>31,a=r.lo<<1^i,o=(r.hi<<1|r.lo>>>31)^i;return n.varint64write(a,o,this.buf),this}uint64(e){let r=t.PbULong.from(e);return n.varint64write(r.lo,r.hi,this.buf),this}};e.BinaryWriter=o})),yj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeJsonOptions=e.jsonWriteOptions=e.jsonReadOptions=void 0;let t={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0},n={ignoreUnknownFields:!1};function r(e){return e?Object.assign(Object.assign({},n),e):n}e.jsonReadOptions=r;function i(e){return e?Object.assign(Object.assign({},t),e):t}e.jsonWriteOptions=i;function a(e,t){let n=Object.assign(Object.assign({},e),t);return n.typeRegistry=[...e?.typeRegistry??[],...t?.typeRegistry??[]],n}e.mergeJsonOptions=a})),bj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.MESSAGE_TYPE=void 0,e.MESSAGE_TYPE=Symbol.for(`protobuf-ts/message-type`)})),xj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.lowerCamelCase=void 0;function t(e){let t=!1,n=[];for(let r=0;r{Object.defineProperty(e,"__esModule",{value:!0}),e.readMessageOption=e.readFieldOption=e.readFieldOptions=e.normalizeFieldInfo=e.RepeatType=e.LongType=e.ScalarType=void 0;let t=xj();(function(e){e[e.DOUBLE=1]=`DOUBLE`,e[e.FLOAT=2]=`FLOAT`,e[e.INT64=3]=`INT64`,e[e.UINT64=4]=`UINT64`,e[e.INT32=5]=`INT32`,e[e.FIXED64=6]=`FIXED64`,e[e.FIXED32=7]=`FIXED32`,e[e.BOOL=8]=`BOOL`,e[e.STRING=9]=`STRING`,e[e.BYTES=12]=`BYTES`,e[e.UINT32=13]=`UINT32`,e[e.SFIXED32=15]=`SFIXED32`,e[e.SFIXED64=16]=`SFIXED64`,e[e.SINT32=17]=`SINT32`,e[e.SINT64=18]=`SINT64`})(e.ScalarType||={}),(function(e){e[e.BIGINT=0]=`BIGINT`,e[e.STRING=1]=`STRING`,e[e.NUMBER=2]=`NUMBER`})(e.LongType||={});var n;(function(e){e[e.NO=0]=`NO`,e[e.PACKED=1]=`PACKED`,e[e.UNPACKED=2]=`UNPACKED`})(n=e.RepeatType||={});function r(e){return e.localName=e.localName??t.lowerCamelCase(e.name),e.jsonName=e.jsonName??t.lowerCamelCase(e.name),e.repeat=e.repeat??n.NO,e.opt=e.opt??(e.repeat||e.oneof?!1:e.kind==`message`),e}e.normalizeFieldInfo=r;function i(e,t,n,r){let i=e.fields.find((e,n)=>e.localName==t||n==t)?.options;return i&&i[n]?r.fromJson(i[n]):void 0}e.readFieldOptions=i;function a(e,t,n,r){let i=e.fields.find((e,n)=>e.localName==t||n==t)?.options;if(!i)return;let a=i[n];return a===void 0?a:r?r.fromJson(a):a}e.readFieldOption=a;function o(e,t,n){let r=e.options[t];return r===void 0?r:n?n.fromJson(r):r}e.readMessageOption=o})),Cj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.getSelectedOneofValue=e.clearOneofValue=e.setUnknownOneofValue=e.setOneofValue=e.getOneofValue=e.isOneofGroup=void 0;function t(e){if(typeof e!=`object`||!e||!e.hasOwnProperty(`oneofKind`))return!1;switch(typeof e.oneofKind){case`string`:return e[e.oneofKind]===void 0?!1:Object.keys(e).length==2;case`undefined`:return Object.keys(e).length==1;default:return!1}}e.isOneofGroup=t;function n(e,t){return e[t]}e.getOneofValue=n;function r(e,t,n){e.oneofKind!==void 0&&delete e[e.oneofKind],e.oneofKind=t,n!==void 0&&(e[t]=n)}e.setOneofValue=r;function i(e,t,n){e.oneofKind!==void 0&&delete e[e.oneofKind],e.oneofKind=t,n!==void 0&&t!==void 0&&(e[t]=n)}e.setUnknownOneofValue=i;function a(e){e.oneofKind!==void 0&&delete e[e.oneofKind],e.oneofKind=void 0}e.clearOneofValue=a;function o(e){if(e.oneofKind!==void 0)return e[e.oneofKind]}e.getSelectedOneofValue=o})),wj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ReflectionTypeCheck=void 0;let t=Sj(),n=Cj();e.ReflectionTypeCheck=class{constructor(e){this.fields=e.fields??[]}prepare(){if(this.data)return;let e=[],t=[],n=[];for(let r of this.fields)if(r.oneof)n.includes(r.oneof)||(n.push(r.oneof),e.push(r.oneof),t.push(r.oneof));else switch(t.push(r.localName),r.kind){case`scalar`:case`enum`:(!r.opt||r.repeat)&&e.push(r.localName);break;case`message`:r.repeat&&e.push(r.localName);break;case`map`:e.push(r.localName);break}this.data={req:e,known:t,oneofs:Object.values(n)}}is(e,t,r=!1){if(t<0)return!0;if(typeof e!=`object`||!e)return!1;this.prepare();let i=Object.keys(e),a=this.data;if(i.length!i.includes(e))||!r&&i.some(e=>!a.known.includes(e)))return!1;if(t<1)return!0;for(let i of a.oneofs){let a=e[i];if(!n.isOneofGroup(a))return!1;if(a.oneofKind===void 0)continue;let o=this.fields.find(e=>e.localName===a.oneofKind);if(!o||!this.field(a[a.oneofKind],o,r,t))return!1}for(let n of this.fields)if(n.oneof===void 0&&!this.field(e[n.localName],n,r,t))return!1;return!0}field(e,n,r,i){let a=n.repeat;switch(n.kind){case`scalar`:return e===void 0?n.opt:a?this.scalars(e,n.T,i,n.L):this.scalar(e,n.T,n.L);case`enum`:return e===void 0?n.opt:a?this.scalars(e,t.ScalarType.INT32,i):this.scalar(e,t.ScalarType.INT32);case`message`:return e===void 0?!0:a?this.messages(e,n.T(),r,i):this.message(e,n.T(),r,i);case`map`:if(typeof e!=`object`||!e)return!1;if(i<2)return!0;if(!this.mapKeys(e,n.K,i))return!1;switch(n.V.kind){case`scalar`:return this.scalars(Object.values(e),n.V.T,i,n.V.L);case`enum`:return this.scalars(Object.values(e),t.ScalarType.INT32,i);case`message`:return this.messages(Object.values(e),n.V.T(),r,i)}break}return!0}message(e,t,n,r){return n?t.isAssignable(e,r):t.is(e,r)}messages(e,t,n,r){if(!Array.isArray(e))return!1;if(r<2)return!0;if(n){for(let n=0;nparseInt(e)),n,r);case t.ScalarType.BOOL:return this.scalars(i.slice(0,r).map(e=>e==`true`?!0:e==`false`?!1:e),n,r);default:return this.scalars(i,n,r,t.LongType.STRING)}}}})),Tj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reflectionLongConvert=void 0;let t=Sj();function n(e,n){switch(n){case t.LongType.BIGINT:return e.toBigInt();case t.LongType.NUMBER:return e.toNumber();default:return e.toString()}}e.reflectionLongConvert=n})),Ej=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ReflectionJsonReader=void 0;let t=uj(),n=dj(),r=Sj(),i=hj(),a=_j(),o=Tj();e.ReflectionJsonReader=class{constructor(e){this.info=e}prepare(){if(this.fMap===void 0){this.fMap={};let e=this.info.fields??[];for(let t of e)this.fMap[t.name]=t,this.fMap[t.jsonName]=t,this.fMap[t.localName]=t}}assert(e,n,r){if(!e){let e=t.typeofJsonValue(r);throw(e==`number`||e==`boolean`)&&(e=r.toString()),Error(`Cannot parse JSON ${e} for ${this.info.typeName}#${n}`)}}read(e,n,i){this.prepare();let a=[];for(let[o,s]of Object.entries(e)){let e=this.fMap[o];if(!e){if(!i.ignoreUnknownFields)throw Error(`Found unknown field while reading ${this.info.typeName} from JSON format. JSON key: ${o}`);continue}let c=e.localName,l;if(e.oneof){if(s===null&&(e.kind!==`enum`||e.T()[0]!==`google.protobuf.NullValue`))continue;if(a.includes(e.oneof))throw Error(`Multiple members of the oneof group "${e.oneof}" of ${this.info.typeName} are present in JSON.`);a.push(e.oneof),l=n[e.oneof]={oneofKind:c}}else l=n;if(e.kind==`map`){if(s===null)continue;this.assert(t.isJsonObject(s),e.name,s);let n=l[c];for(let[t,a]of Object.entries(s)){this.assert(a!==null,e.name+` map value`,null);let o;switch(e.V.kind){case`message`:o=e.V.T().internalJsonRead(a,i);break;case`enum`:if(o=this.enum(e.V.T(),a,e.name,i.ignoreUnknownFields),o===!1)continue;break;case`scalar`:o=this.scalar(a,e.V.T,e.V.L,e.name);break}this.assert(o!==void 0,e.name+` map value`,a);let s=t;e.K==r.ScalarType.BOOL&&(s=s==`true`?!0:s==`false`?!1:s),s=this.scalar(s,e.K,r.LongType.STRING,e.name).toString(),n[s]=o}}else if(e.repeat){if(s===null)continue;this.assert(Array.isArray(s),e.name,s);let t=l[c];for(let n of s){this.assert(n!==null,e.name,null);let r;switch(e.kind){case`message`:r=e.T().internalJsonRead(n,i);break;case`enum`:if(r=this.enum(e.T(),n,e.name,i.ignoreUnknownFields),r===!1)continue;break;case`scalar`:r=this.scalar(n,e.T,e.L,e.name);break}this.assert(r!==void 0,e.name,s),t.push(r)}}else switch(e.kind){case`message`:if(s===null&&e.T().typeName!=`google.protobuf.Value`){this.assert(e.oneof===void 0,e.name+` (oneof member)`,null);continue}l[c]=e.T().internalJsonRead(s,i,l[c]);break;case`enum`:if(s===null)continue;let t=this.enum(e.T(),s,e.name,i.ignoreUnknownFields);if(t===!1)continue;l[c]=t;break;case`scalar`:if(s===null)continue;l[c]=this.scalar(s,e.T,e.L,e.name);break}}}enum(e,t,n,r){if(e[0]==`google.protobuf.NullValue`&&a.assert(t===null||t===`NULL_VALUE`,`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} only accepts null.`),t===null)return 0;switch(typeof t){case`number`:return a.assert(Number.isInteger(t),`Unable to parse field ${this.info.typeName}#${n}, enum can only be integral number, got ${t}.`),t;case`string`:let i=t;e[2]&&t.substring(0,e[2].length)===e[2]&&(i=t.substring(e[2].length));let o=e[1][i];return o===void 0&&r?!1:(a.assert(typeof o==`number`,`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} has no value for "${t}".`),o)}a.assert(!1,`Unable to parse field ${this.info.typeName}#${n}, cannot parse enum value from ${typeof t}".`)}scalar(e,t,s,c){let l;try{switch(t){case r.ScalarType.DOUBLE:case r.ScalarType.FLOAT:if(e===null)return 0;if(e===`NaN`)return NaN;if(e===`Infinity`)return 1/0;if(e===`-Infinity`)return-1/0;if(e===``){l=`empty string`;break}if(typeof e==`string`&&e.trim().length!==e.length){l=`extra whitespace`;break}if(typeof e!=`string`&&typeof e!=`number`)break;let c=Number(e);if(Number.isNaN(c)){l=`not a number`;break}if(!Number.isFinite(c)){l=`too large or small`;break}return t==r.ScalarType.FLOAT&&a.assertFloat32(c),c;case r.ScalarType.INT32:case r.ScalarType.FIXED32:case r.ScalarType.SFIXED32:case r.ScalarType.SINT32:case r.ScalarType.UINT32:if(e===null)return 0;let u;if(typeof e==`number`?u=e:e===``?l=`empty string`:typeof e==`string`&&(e.trim().length===e.length?u=Number(e):l=`extra whitespace`),u===void 0)break;return t==r.ScalarType.UINT32?a.assertUInt32(u):a.assertInt32(u),u;case r.ScalarType.INT64:case r.ScalarType.SFIXED64:case r.ScalarType.SINT64:if(e===null)return o.reflectionLongConvert(i.PbLong.ZERO,s);if(typeof e!=`number`&&typeof e!=`string`)break;return o.reflectionLongConvert(i.PbLong.from(e),s);case r.ScalarType.FIXED64:case r.ScalarType.UINT64:if(e===null)return o.reflectionLongConvert(i.PbULong.ZERO,s);if(typeof e!=`number`&&typeof e!=`string`)break;return o.reflectionLongConvert(i.PbULong.from(e),s);case r.ScalarType.BOOL:if(e===null)return!1;if(typeof e!=`boolean`)break;return e;case r.ScalarType.STRING:if(e===null)return``;if(typeof e!=`string`){l=`extra whitespace`;break}return e;case r.ScalarType.BYTES:if(e===null||e===``)return new Uint8Array;if(typeof e!=`string`)break;return n.base64decode(e)}}catch(e){l=e.message}this.assert(!1,c+(l?` - `+l:``),e)}}})),Dj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ReflectionJsonWriter=void 0;let t=dj(),n=hj(),r=Sj(),i=_j();e.ReflectionJsonWriter=class{constructor(e){this.fields=e.fields??[]}write(e,t){let n={},r=e;for(let e of this.fields){if(!e.oneof){let i=this.field(e,r[e.localName],t);i!==void 0&&(n[t.useProtoFieldName?e.name:e.jsonName]=i);continue}let a=r[e.oneof];if(a.oneofKind!==e.localName)continue;let o=e.kind==`scalar`||e.kind==`enum`?Object.assign(Object.assign({},t),{emitDefaultValues:!0}):t,s=this.field(e,a[e.localName],o);i.assert(s!==void 0),n[t.useProtoFieldName?e.name:e.jsonName]=s}return n}field(e,t,n){let r;if(e.kind==`map`){i.assert(typeof t==`object`&&!!t);let a={};switch(e.V.kind){case`scalar`:for(let[n,r]of Object.entries(t)){let t=this.scalar(e.V.T,r,e.name,!1,!0);i.assert(t!==void 0),a[n.toString()]=t}break;case`message`:let r=e.V.T();for(let[o,s]of Object.entries(t)){let t=this.message(r,s,e.name,n);i.assert(t!==void 0),a[o.toString()]=t}break;case`enum`:let o=e.V.T();for(let[r,s]of Object.entries(t)){i.assert(s===void 0||typeof s==`number`);let t=this.enum(o,s,e.name,!1,!0,n.enumAsInteger);i.assert(t!==void 0),a[r.toString()]=t}break}(n.emitDefaultValues||Object.keys(a).length>0)&&(r=a)}else if(e.repeat){i.assert(Array.isArray(t));let a=[];switch(e.kind){case`scalar`:for(let n=0;n0||n.emitDefaultValues)&&(r=a)}else switch(e.kind){case`scalar`:r=this.scalar(e.T,t,e.name,e.opt,n.emitDefaultValues);break;case`enum`:r=this.enum(e.T(),t,e.name,e.opt,n.emitDefaultValues,n.enumAsInteger);break;case`message`:r=this.message(e.T(),t,e.name,n);break}return r}enum(e,t,n,r,a,o){if(e[0]==`google.protobuf.NullValue`)return!a&&!r?void 0:null;if(t===void 0){i.assert(r);return}if(!(t===0&&!a&&!r))return i.assert(typeof t==`number`),i.assert(Number.isInteger(t)),o||!e[1].hasOwnProperty(t)?t:e[2]?e[2]+e[1][t]:e[1][t]}message(e,t,n,r){return t===void 0?r.emitDefaultValues?null:void 0:e.internalJsonWrite(t,r)}scalar(e,a,o,s,c){if(a===void 0){i.assert(s);return}let l=c||s;switch(e){case r.ScalarType.INT32:case r.ScalarType.SFIXED32:case r.ScalarType.SINT32:return a===0?l?0:void 0:(i.assertInt32(a),a);case r.ScalarType.FIXED32:case r.ScalarType.UINT32:return a===0?l?0:void 0:(i.assertUInt32(a),a);case r.ScalarType.FLOAT:i.assertFloat32(a);case r.ScalarType.DOUBLE:return a===0?l?0:void 0:(i.assert(typeof a==`number`),Number.isNaN(a)?`NaN`:a===1/0?`Infinity`:a===-1/0?`-Infinity`:a);case r.ScalarType.STRING:return a===``?l?``:void 0:(i.assert(typeof a==`string`),a);case r.ScalarType.BOOL:return a===!1?l?!1:void 0:(i.assert(typeof a==`boolean`),a);case r.ScalarType.UINT64:case r.ScalarType.FIXED64:i.assert(typeof a==`number`||typeof a==`string`||typeof a==`bigint`);let e=n.PbULong.from(a);return e.isZero()&&!l?void 0:e.toString();case r.ScalarType.INT64:case r.ScalarType.SFIXED64:case r.ScalarType.SINT64:i.assert(typeof a==`number`||typeof a==`string`||typeof a==`bigint`);let o=n.PbLong.from(a);return o.isZero()&&!l?void 0:o.toString();case r.ScalarType.BYTES:return i.assert(a instanceof Uint8Array),a.byteLength?t.base64encode(a):l?``:void 0}}}})),Oj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reflectionScalarDefault=void 0;let t=Sj(),n=Tj(),r=hj();function i(e,i=t.LongType.STRING){switch(e){case t.ScalarType.BOOL:return!1;case t.ScalarType.UINT64:case t.ScalarType.FIXED64:return n.reflectionLongConvert(r.PbULong.ZERO,i);case t.ScalarType.INT64:case t.ScalarType.SFIXED64:case t.ScalarType.SINT64:return n.reflectionLongConvert(r.PbLong.ZERO,i);case t.ScalarType.DOUBLE:case t.ScalarType.FLOAT:return 0;case t.ScalarType.BYTES:return new Uint8Array;case t.ScalarType.STRING:return``;default:return 0}}e.reflectionScalarDefault=i})),kj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ReflectionBinaryReader=void 0;let t=pj(),n=Sj(),r=Tj(),i=Oj();e.ReflectionBinaryReader=class{constructor(e){this.info=e}prepare(){if(!this.fieldNoToField){let e=this.info.fields??[];this.fieldNoToField=new Map(e.map(e=>[e.no,e]))}}read(e,r,i,a){this.prepare();let o=a===void 0?e.len:e.pos+a;for(;e.pos{Object.defineProperty(e,"__esModule",{value:!0}),e.ReflectionBinaryWriter=void 0;let t=pj(),n=Sj(),r=_j(),i=hj();e.ReflectionBinaryWriter=class{constructor(e){this.info=e}prepare(){if(!this.fields){let e=this.info.fields?this.info.fields.concat():[];this.fields=e.sort((e,t)=>e.no-t.no)}}write(e,i,a){this.prepare();for(let t of this.fields){let o,s,c=t.repeat,l=t.localName;if(t.oneof){let n=e[t.oneof];if(n.oneofKind!==l)continue;o=n[l],s=!0}else o=e[l],s=!1;switch(t.kind){case`scalar`:case`enum`:let e=t.kind==`enum`?n.ScalarType.INT32:t.T;if(c)if(r.assert(Array.isArray(o)),c==n.RepeatType.PACKED)this.packed(i,e,t.no,o);else for(let n of o)this.scalar(i,e,t.no,n,!0);else o===void 0?r.assert(t.opt):this.scalar(i,e,t.no,o,s||t.opt);break;case`message`:if(c){r.assert(Array.isArray(o));for(let e of o)this.message(i,a,t.T(),t.no,e)}else this.message(i,a,t.T(),t.no,o);break;case`map`:r.assert(typeof o==`object`&&!!o);for(let[e,n]of Object.entries(o))this.mapEntry(i,a,t,e,n);break}}let o=a.writeUnknownFields;o!==!1&&(o===!0?t.UnknownFieldHandler.onWrite:o)(this.info.typeName,e,i)}mapEntry(e,i,a,o,s){e.tag(a.no,t.WireType.LengthDelimited),e.fork();let c=o;switch(a.K){case n.ScalarType.INT32:case n.ScalarType.FIXED32:case n.ScalarType.UINT32:case n.ScalarType.SFIXED32:case n.ScalarType.SINT32:c=Number.parseInt(o);break;case n.ScalarType.BOOL:r.assert(o==`true`||o==`false`),c=o==`true`;break}switch(this.scalar(e,a.K,1,c,!0),a.V.kind){case`scalar`:this.scalar(e,a.V.T,2,s,!0);break;case`enum`:this.scalar(e,n.ScalarType.INT32,2,s,!0);break;case`message`:this.message(e,i,a.V.T(),2,s);break}e.join()}message(e,n,r,i,a){a!==void 0&&(r.internalBinaryWrite(a,e.tag(i,t.WireType.LengthDelimited).fork(),n),e.join())}scalar(e,t,n,r,i){let[a,o,s]=this.scalarInfo(t,r);(!s||i)&&(e.tag(n,a),e[o](r))}packed(e,i,a,o){if(!o.length)return;r.assert(i!==n.ScalarType.BYTES&&i!==n.ScalarType.STRING),e.tag(a,t.WireType.LengthDelimited),e.fork();let[,s]=this.scalarInfo(i);for(let t=0;t{Object.defineProperty(e,"__esModule",{value:!0}),e.reflectionCreate=void 0;let t=Oj(),n=bj();function r(e){let r=e.messagePrototype?Object.create(e.messagePrototype):Object.defineProperty({},n.MESSAGE_TYPE,{value:e});for(let n of e.fields){let e=n.localName;if(!n.opt)if(n.oneof)r[n.oneof]={oneofKind:void 0};else if(n.repeat)r[e]=[];else switch(n.kind){case`scalar`:r[e]=t.reflectionScalarDefault(n.T,n.L);break;case`enum`:r[e]=0;break;case`map`:r[e]={};break}}return r}e.reflectionCreate=r})),Mj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reflectionMergePartial=void 0;function t(e,t,n){let r,i=n,a;for(let n of e.fields){let e=n.localName;if(n.oneof){let o=i[n.oneof];if(o?.oneofKind==null)continue;if(r=o[e],a=t[n.oneof],a.oneofKind=o.oneofKind,r==null){delete a[e];continue}}else if(r=i[e],a=t,r==null)continue;switch(n.repeat&&(a[e].length=r.length),n.kind){case`scalar`:case`enum`:if(n.repeat)for(let t=0;t{Object.defineProperty(e,"__esModule",{value:!0}),e.reflectionEquals=void 0;let t=Sj();function n(e,n,s){if(n===s)return!0;if(!n||!s)return!1;for(let c of e.fields){let e=c.localName,l=c.oneof?n[c.oneof][e]:n[e],u=c.oneof?s[c.oneof][e]:s[e];switch(c.kind){case`enum`:case`scalar`:let e=c.kind==`enum`?t.ScalarType.INT32:c.T;if(!(c.repeat?a(e,l,u):i(e,l,u)))return!1;break;case`map`:if(!(c.V.kind==`message`?o(c.V.T(),r(l),r(u)):a(c.V.kind==`enum`?t.ScalarType.INT32:c.V.T,r(l),r(u))))return!1;break;case`message`:let n=c.T();if(!(c.repeat?o(n,l,u):n.equals(l,u)))return!1;break}}return!0}e.reflectionEquals=n;let r=Object.values;function i(e,n,r){if(n===r)return!0;if(e!==t.ScalarType.BYTES)return!1;let i=n,a=r;if(i.length!==a.length)return!1;for(let e=0;e{Object.defineProperty(e,"__esModule",{value:!0}),e.MessageType=void 0;let t=bj(),n=Sj(),r=wj(),i=Ej(),a=Dj(),o=kj(),s=Aj(),c=jj(),l=Mj(),u=uj(),d=yj(),f=Nj(),p=vj(),m=gj(),h=Object.getOwnPropertyDescriptors(Object.getPrototypeOf({})),g=h[t.MESSAGE_TYPE]={};e.MessageType=class{constructor(e,t,c){this.defaultCheckDepth=16,this.typeName=e,this.fields=t.map(n.normalizeFieldInfo),this.options=c??{},g.value=this,this.messagePrototype=Object.create(null,h),this.refTypeCheck=new r.ReflectionTypeCheck(this),this.refJsonReader=new i.ReflectionJsonReader(this),this.refJsonWriter=new a.ReflectionJsonWriter(this),this.refBinReader=new o.ReflectionBinaryReader(this),this.refBinWriter=new s.ReflectionBinaryWriter(this)}create(e){let t=c.reflectionCreate(this);return e!==void 0&&l.reflectionMergePartial(this,t,e),t}clone(e){let t=this.create();return l.reflectionMergePartial(this,t,e),t}equals(e,t){return f.reflectionEquals(this,e,t)}is(e,t=this.defaultCheckDepth){return this.refTypeCheck.is(e,t,!1)}isAssignable(e,t=this.defaultCheckDepth){return this.refTypeCheck.is(e,t,!0)}mergePartial(e,t){l.reflectionMergePartial(this,e,t)}fromBinary(e,t){let n=m.binaryReadOptions(t);return this.internalBinaryRead(n.readerFactory(e),e.byteLength,n)}fromJson(e,t){return this.internalJsonRead(e,d.jsonReadOptions(t))}fromJsonString(e,t){let n=JSON.parse(e);return this.fromJson(n,t)}toJson(e,t){return this.internalJsonWrite(e,d.jsonWriteOptions(t))}toJsonString(e,t){let n=this.toJson(e,t);return JSON.stringify(n,null,t?.prettySpaces??0)}toBinary(e,t){let n=p.binaryWriteOptions(t);return this.internalBinaryWrite(e,n.writerFactory(),n).finish()}internalJsonRead(e,t,n){if(typeof e==`object`&&e&&!Array.isArray(e)){let r=n??this.create();return this.refJsonReader.read(e,r,t),r}throw Error(`Unable to parse message ${this.typeName} from JSON ${u.typeofJsonValue(e)}.`)}internalJsonWrite(e,t){return this.refJsonWriter.write(e,t)}internalBinaryWrite(e,t,n){return this.refBinWriter.write(e,t,n),t}internalBinaryRead(e,t,n,r){let i=r??this.create();return this.refBinReader.read(e,i,n,t),i}}})),Fj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.containsMessageType=void 0;let t=bj();function n(e){return e[t.MESSAGE_TYPE]!=null}e.containsMessageType=n})),Ij=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.listEnumNumbers=e.listEnumNames=e.listEnumValues=e.isEnumObject=void 0;function t(e){if(typeof e!=`object`||!e||!e.hasOwnProperty(0))return!1;for(let t of Object.keys(e)){let n=parseInt(t);if(Number.isNaN(n)){let n=e[t];if(n===void 0||typeof n!=`number`||e[n]===void 0)return!1}else{let t=e[n];if(t===void 0||e[t]!==n)return!1}}return!0}e.isEnumObject=t;function n(e){if(!t(e))throw Error(`not a typescript enum object`);let n=[];for(let[t,r]of Object.entries(e))typeof r==`number`&&n.push({name:t,number:r});return n}e.listEnumValues=n;function r(e){return n(e).map(e=>e.name)}e.listEnumNames=r;function i(e){return n(e).map(e=>e.number).filter((e,t,n)=>n.indexOf(e)==t)}e.listEnumNumbers=i})),Lj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=uj();Object.defineProperty(e,"typeofJsonValue",{enumerable:!0,get:function(){return t.typeofJsonValue}}),Object.defineProperty(e,"isJsonObject",{enumerable:!0,get:function(){return t.isJsonObject}});var n=dj();Object.defineProperty(e,"base64decode",{enumerable:!0,get:function(){return n.base64decode}}),Object.defineProperty(e,"base64encode",{enumerable:!0,get:function(){return n.base64encode}});var r=fj();Object.defineProperty(e,"utf8read",{enumerable:!0,get:function(){return r.utf8read}});var i=pj();Object.defineProperty(e,"WireType",{enumerable:!0,get:function(){return i.WireType}}),Object.defineProperty(e,"mergeBinaryOptions",{enumerable:!0,get:function(){return i.mergeBinaryOptions}}),Object.defineProperty(e,"UnknownFieldHandler",{enumerable:!0,get:function(){return i.UnknownFieldHandler}});var a=gj();Object.defineProperty(e,"BinaryReader",{enumerable:!0,get:function(){return a.BinaryReader}}),Object.defineProperty(e,"binaryReadOptions",{enumerable:!0,get:function(){return a.binaryReadOptions}});var o=vj();Object.defineProperty(e,"BinaryWriter",{enumerable:!0,get:function(){return o.BinaryWriter}}),Object.defineProperty(e,"binaryWriteOptions",{enumerable:!0,get:function(){return o.binaryWriteOptions}});var s=hj();Object.defineProperty(e,"PbLong",{enumerable:!0,get:function(){return s.PbLong}}),Object.defineProperty(e,"PbULong",{enumerable:!0,get:function(){return s.PbULong}});var c=yj();Object.defineProperty(e,"jsonReadOptions",{enumerable:!0,get:function(){return c.jsonReadOptions}}),Object.defineProperty(e,"jsonWriteOptions",{enumerable:!0,get:function(){return c.jsonWriteOptions}}),Object.defineProperty(e,"mergeJsonOptions",{enumerable:!0,get:function(){return c.mergeJsonOptions}});var l=bj();Object.defineProperty(e,"MESSAGE_TYPE",{enumerable:!0,get:function(){return l.MESSAGE_TYPE}});var u=Pj();Object.defineProperty(e,"MessageType",{enumerable:!0,get:function(){return u.MessageType}});var d=Sj();Object.defineProperty(e,"ScalarType",{enumerable:!0,get:function(){return d.ScalarType}}),Object.defineProperty(e,"LongType",{enumerable:!0,get:function(){return d.LongType}}),Object.defineProperty(e,"RepeatType",{enumerable:!0,get:function(){return d.RepeatType}}),Object.defineProperty(e,"normalizeFieldInfo",{enumerable:!0,get:function(){return d.normalizeFieldInfo}}),Object.defineProperty(e,"readFieldOptions",{enumerable:!0,get:function(){return d.readFieldOptions}}),Object.defineProperty(e,"readFieldOption",{enumerable:!0,get:function(){return d.readFieldOption}}),Object.defineProperty(e,"readMessageOption",{enumerable:!0,get:function(){return d.readMessageOption}});var f=wj();Object.defineProperty(e,"ReflectionTypeCheck",{enumerable:!0,get:function(){return f.ReflectionTypeCheck}});var p=jj();Object.defineProperty(e,"reflectionCreate",{enumerable:!0,get:function(){return p.reflectionCreate}});var m=Oj();Object.defineProperty(e,"reflectionScalarDefault",{enumerable:!0,get:function(){return m.reflectionScalarDefault}});var h=Mj();Object.defineProperty(e,"reflectionMergePartial",{enumerable:!0,get:function(){return h.reflectionMergePartial}});var g=Nj();Object.defineProperty(e,"reflectionEquals",{enumerable:!0,get:function(){return g.reflectionEquals}});var v=kj();Object.defineProperty(e,"ReflectionBinaryReader",{enumerable:!0,get:function(){return v.ReflectionBinaryReader}});var y=Aj();Object.defineProperty(e,"ReflectionBinaryWriter",{enumerable:!0,get:function(){return y.ReflectionBinaryWriter}});var b=Ej();Object.defineProperty(e,"ReflectionJsonReader",{enumerable:!0,get:function(){return b.ReflectionJsonReader}});var x=Dj();Object.defineProperty(e,"ReflectionJsonWriter",{enumerable:!0,get:function(){return x.ReflectionJsonWriter}});var S=Fj();Object.defineProperty(e,"containsMessageType",{enumerable:!0,get:function(){return S.containsMessageType}});var C=Cj();Object.defineProperty(e,"isOneofGroup",{enumerable:!0,get:function(){return C.isOneofGroup}}),Object.defineProperty(e,"setOneofValue",{enumerable:!0,get:function(){return C.setOneofValue}}),Object.defineProperty(e,"getOneofValue",{enumerable:!0,get:function(){return C.getOneofValue}}),Object.defineProperty(e,"clearOneofValue",{enumerable:!0,get:function(){return C.clearOneofValue}}),Object.defineProperty(e,"getSelectedOneofValue",{enumerable:!0,get:function(){return C.getSelectedOneofValue}});var w=Ij();Object.defineProperty(e,"listEnumValues",{enumerable:!0,get:function(){return w.listEnumValues}}),Object.defineProperty(e,"listEnumNames",{enumerable:!0,get:function(){return w.listEnumNames}}),Object.defineProperty(e,"listEnumNumbers",{enumerable:!0,get:function(){return w.listEnumNumbers}}),Object.defineProperty(e,"isEnumObject",{enumerable:!0,get:function(){return w.isEnumObject}});var T=xj();Object.defineProperty(e,"lowerCamelCase",{enumerable:!0,get:function(){return T.lowerCamelCase}});var E=_j();Object.defineProperty(e,"assert",{enumerable:!0,get:function(){return E.assert}}),Object.defineProperty(e,"assertNever",{enumerable:!0,get:function(){return E.assertNever}}),Object.defineProperty(e,"assertInt32",{enumerable:!0,get:function(){return E.assertInt32}}),Object.defineProperty(e,"assertUInt32",{enumerable:!0,get:function(){return E.assertUInt32}}),Object.defineProperty(e,"assertFloat32",{enumerable:!0,get:function(){return E.assertFloat32}})})),Rj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.readServiceOption=e.readMethodOption=e.readMethodOptions=e.normalizeMethodInfo=void 0;let t=Lj();function n(e,n){let r=e;return r.service=n,r.localName=r.localName??t.lowerCamelCase(r.name),r.serverStreaming=!!r.serverStreaming,r.clientStreaming=!!r.clientStreaming,r.options=r.options??{},r.idempotency=r.idempotency??void 0,r}e.normalizeMethodInfo=n;function r(e,t,n,r){let i=e.methods.find((e,n)=>e.localName===t||n===t)?.options;return i&&i[n]?r.fromJson(i[n]):void 0}e.readMethodOptions=r;function i(e,t,n,r){let i=e.methods.find((e,n)=>e.localName===t||n===t)?.options;if(!i)return;let a=i[n];return a===void 0?a:r?r.fromJson(a):a}e.readMethodOption=i;function a(e,t,n){let r=e.options;if(!r)return;let i=r[t];return i===void 0?i:n?n.fromJson(i):i}e.readServiceOption=a})),zj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ServiceType=void 0;let t=Rj();e.ServiceType=class{constructor(e,n,r){this.typeName=e,this.methods=n.map(e=>t.normalizeMethodInfo(e,this)),this.options=r??{}}}})),Bj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.RpcError=void 0,e.RpcError=class extends Error{constructor(e,t=`UNKNOWN`,n){super(e),this.name=`RpcError`,Object.setPrototypeOf(this,new.target.prototype),this.code=t,this.meta=n??{}}toString(){let e=[this.name+`: `+this.message];this.code&&(e.push(``),e.push(`Code: `+this.code)),this.serviceName&&this.methodName&&e.push(`Method: `+this.serviceName+`/`+this.methodName);let t=Object.entries(this.meta);if(t.length){e.push(``),e.push(`Meta:`);for(let[n,r]of t)e.push(` ${n}: ${r}`)}return e.join(` `)}}})),Vj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeRpcOptions=void 0;let t=Lj();function n(e,n){if(!n)return e;let i={};r(e,i),r(n,i);for(let a of Object.keys(n)){let o=n[a];switch(a){case`jsonOptions`:i.jsonOptions=t.mergeJsonOptions(e.jsonOptions,i.jsonOptions);break;case`binaryOptions`:i.binaryOptions=t.mergeBinaryOptions(e.binaryOptions,i.binaryOptions);break;case`meta`:i.meta={},r(e.meta,i.meta),r(n.meta,i.meta);break;case`interceptors`:i.interceptors=e.interceptors?e.interceptors.concat(o):o.concat();break}}return i}e.mergeRpcOptions=n;function r(e,t){if(!e)return;let n=t;for(let[t,r]of Object.entries(e))r instanceof Date?n[t]=new Date(r.getTime()):Array.isArray(r)?n[t]=r.concat():n[t]=r}})),Hj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.Deferred=e.DeferredState=void 0;var t;(function(e){e[e.PENDING=0]=`PENDING`,e[e.REJECTED=1]=`REJECTED`,e[e.RESOLVED=2]=`RESOLVED`})(t=e.DeferredState||={}),e.Deferred=class{constructor(e=!0){this._state=t.PENDING,this._promise=new Promise((e,t)=>{this._resolve=e,this._reject=t}),e&&this._promise.catch(e=>{})}get state(){return this._state}get promise(){return this._promise}resolve(e){if(this.state!==t.PENDING)throw Error(`cannot resolve ${t[this.state].toLowerCase()}`);this._resolve(e),this._state=t.RESOLVED}reject(e){if(this.state!==t.PENDING)throw Error(`cannot reject ${t[this.state].toLowerCase()}`);this._reject(e),this._state=t.REJECTED}resolvePending(e){this._state===t.PENDING&&this.resolve(e)}rejectPending(e){this._state===t.PENDING&&this.reject(e)}}})),Uj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.RpcOutputStreamController=void 0;let t=Hj(),n=Lj();e.RpcOutputStreamController=class{constructor(){this._lis={nxt:[],msg:[],err:[],cmp:[]},this._closed=!1,this._itState={q:[]}}onNext(e){return this.addLis(e,this._lis.nxt)}onMessage(e){return this.addLis(e,this._lis.msg)}onError(e){return this.addLis(e,this._lis.err)}onComplete(e){return this.addLis(e,this._lis.cmp)}addLis(e,t){return t.push(e),()=>{let n=t.indexOf(e);n>=0&&t.splice(n,1)}}clearLis(){for(let e of Object.values(this._lis))e.splice(0,e.length)}get closed(){return this._closed!==!1}notifyNext(e,t,r){n.assert(+!!e+ +!!t+ +!!r<=1,`only one emission at a time`),e&&this.notifyMessage(e),t&&this.notifyError(t),r&&this.notifyComplete()}notifyMessage(e){n.assert(!this.closed,`stream is closed`),this.pushIt({value:e,done:!1}),this._lis.msg.forEach(t=>t(e)),this._lis.nxt.forEach(t=>t(e,void 0,!1))}notifyError(e){n.assert(!this.closed,`stream is closed`),this._closed=e,this.pushIt(e),this._lis.err.forEach(t=>t(e)),this._lis.nxt.forEach(t=>t(void 0,e,!1)),this.clearLis()}notifyComplete(){n.assert(!this.closed,`stream is closed`),this._closed=!0,this.pushIt({value:null,done:!0}),this._lis.cmp.forEach(e=>e()),this._lis.nxt.forEach(e=>e(void 0,void 0,!0)),this.clearLis()}[Symbol.asyncIterator](){return this._closed===!0?this.pushIt({value:null,done:!0}):this._closed!==!1&&this.pushIt(this._closed),{next:()=>{let e=this._itState;n.assert(e,`bad state`),n.assert(!e.p,`iterator contract broken`);let r=e.q.shift();return r?`value`in r?Promise.resolve(r):Promise.reject(r):(e.p=new t.Deferred,e.p.promise)}}}pushIt(e){let r=this._itState;if(r.p){let i=r.p;n.assert(i.state==t.DeferredState.PENDING,`iterator contract broken`),`value`in e?i.resolve(e):i.reject(e),delete r.p}else r.q.push(e)}}})),Wj=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.UnaryCall=void 0,e.UnaryCall=class{constructor(e,t,n,r,i,a,o){this.method=e,this.requestHeaders=t,this.request=n,this.headers=r,this.response=i,this.status=a,this.trailers=o}then(e,t){return this.promiseFinished().then(t=>e?Promise.resolve(e(t)):t,e=>t?Promise.resolve(t(e)):Promise.reject(e))}promiseFinished(){return t(this,void 0,void 0,function*(){let[e,t,n,r]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,response:t,status:n,trailers:r}})}}})),Gj=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.ServerStreamingCall=void 0,e.ServerStreamingCall=class{constructor(e,t,n,r,i,a,o){this.method=e,this.requestHeaders=t,this.request=n,this.headers=r,this.responses=i,this.status=a,this.trailers=o}then(e,t){return this.promiseFinished().then(t=>e?Promise.resolve(e(t)):t,e=>t?Promise.resolve(t(e)):Promise.reject(e))}promiseFinished(){return t(this,void 0,void 0,function*(){let[e,t,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,status:t,trailers:n}})}}})),Kj=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.ClientStreamingCall=void 0,e.ClientStreamingCall=class{constructor(e,t,n,r,i,a,o){this.method=e,this.requestHeaders=t,this.requests=n,this.headers=r,this.response=i,this.status=a,this.trailers=o}then(e,t){return this.promiseFinished().then(t=>e?Promise.resolve(e(t)):t,e=>t?Promise.resolve(t(e)):Promise.reject(e))}promiseFinished(){return t(this,void 0,void 0,function*(){let[e,t,n,r]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,response:t,status:n,trailers:r}})}}})),qj=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.DuplexStreamingCall=void 0,e.DuplexStreamingCall=class{constructor(e,t,n,r,i,a,o){this.method=e,this.requestHeaders=t,this.requests=n,this.headers=r,this.responses=i,this.status=a,this.trailers=o}then(e,t){return this.promiseFinished().then(t=>e?Promise.resolve(e(t)):t,e=>t?Promise.resolve(t(e)):Promise.reject(e))}promiseFinished(){return t(this,void 0,void 0,function*(){let[e,t,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,status:t,trailers:n}})}}})),Jj=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.TestTransport=void 0;let n=Bj(),r=Lj(),i=Uj(),a=Vj(),o=Wj(),s=Gj(),c=Kj(),l=qj();var u=class e{constructor(e){this.suppressUncaughtRejections=!0,this.headerDelay=10,this.responseDelay=50,this.betweenResponseDelay=10,this.afterResponseDelay=10,this.data=e??{}}get sentMessages(){return this.lastInput instanceof f?this.lastInput.sent:typeof this.lastInput==`object`?[this.lastInput.single]:[]}get sendComplete(){return this.lastInput instanceof f?this.lastInput.completed:typeof this.lastInput==`object`}promiseHeaders(){let t=this.data.headers??e.defaultHeaders;return t instanceof n.RpcError?Promise.reject(t):Promise.resolve(t)}promiseSingleResponse(e){if(this.data.response instanceof n.RpcError)return Promise.reject(this.data.response);let t;return Array.isArray(this.data.response)?(r.assert(this.data.response.length>0),t=this.data.response[0]):t=this.data.response===void 0?e.O.create():this.data.response,r.assert(e.O.is(t)),Promise.resolve(t)}streamResponses(e,i,a){return t(this,void 0,void 0,function*(){let t=[];if(this.data.response===void 0)t.push(e.O.create());else if(Array.isArray(this.data.response))for(let n of this.data.response)r.assert(e.O.is(n)),t.push(n);else this.data.response instanceof n.RpcError||(r.assert(e.O.is(this.data.response)),t.push(this.data.response));try{yield d(this.responseDelay,a)(void 0)}catch(e){i.notifyError(e);return}if(this.data.response instanceof n.RpcError){i.notifyError(this.data.response);return}for(let e of t){i.notifyMessage(e);try{yield d(this.betweenResponseDelay,a)(void 0)}catch(e){i.notifyError(e);return}}if(this.data.status instanceof n.RpcError){i.notifyError(this.data.status);return}if(this.data.trailers instanceof n.RpcError){i.notifyError(this.data.trailers);return}i.notifyComplete()})}promiseStatus(){let t=this.data.status??e.defaultStatus;return t instanceof n.RpcError?Promise.reject(t):Promise.resolve(t)}promiseTrailers(){let t=this.data.trailers??e.defaultTrailers;return t instanceof n.RpcError?Promise.reject(t):Promise.resolve(t)}maybeSuppressUncaught(...e){if(this.suppressUncaughtRejections)for(let t of e)t.catch(()=>{})}mergeOptions(e){return a.mergeRpcOptions({},e)}unary(e,t,n){let r=n.meta??{},i=this.promiseHeaders().then(d(this.headerDelay,n.abort)),a=i.catch(e=>{}).then(d(this.responseDelay,n.abort)).then(t=>this.promiseSingleResponse(e)),s=a.catch(e=>{}).then(d(this.afterResponseDelay,n.abort)).then(e=>this.promiseStatus()),c=a.catch(e=>{}).then(d(this.afterResponseDelay,n.abort)).then(e=>this.promiseTrailers());return this.maybeSuppressUncaught(s,c),this.lastInput={single:t},new o.UnaryCall(e,r,t,i,a,s,c)}serverStreaming(e,t,n){let r=n.meta??{},a=this.promiseHeaders().then(d(this.headerDelay,n.abort)),o=new i.RpcOutputStreamController,c=a.then(d(this.responseDelay,n.abort)).catch(()=>{}).then(()=>this.streamResponses(e,o,n.abort)).then(d(this.afterResponseDelay,n.abort)),l=c.then(()=>this.promiseStatus()),u=c.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(l,u),this.lastInput={single:t},new s.ServerStreamingCall(e,r,t,a,o,l,u)}clientStreaming(e,t){let n=t.meta??{},r=this.promiseHeaders().then(d(this.headerDelay,t.abort)),i=r.catch(e=>{}).then(d(this.responseDelay,t.abort)).then(t=>this.promiseSingleResponse(e)),a=i.catch(e=>{}).then(d(this.afterResponseDelay,t.abort)).then(e=>this.promiseStatus()),o=i.catch(e=>{}).then(d(this.afterResponseDelay,t.abort)).then(e=>this.promiseTrailers());return this.maybeSuppressUncaught(a,o),this.lastInput=new f(this.data,t.abort),new c.ClientStreamingCall(e,n,this.lastInput,r,i,a,o)}duplex(e,t){let n=t.meta??{},r=this.promiseHeaders().then(d(this.headerDelay,t.abort)),a=new i.RpcOutputStreamController,o=r.then(d(this.responseDelay,t.abort)).catch(()=>{}).then(()=>this.streamResponses(e,a,t.abort)).then(d(this.afterResponseDelay,t.abort)),s=o.then(()=>this.promiseStatus()),c=o.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(s,c),this.lastInput=new f(this.data,t.abort),new l.DuplexStreamingCall(e,n,this.lastInput,r,a,s,c)}};e.TestTransport=u,u.defaultHeaders={responseHeader:`test`},u.defaultStatus={code:`OK`,detail:`all good`},u.defaultTrailers={responseTrailer:`test`};function d(e,t){return r=>new Promise((i,a)=>{if(t?.aborted)a(new n.RpcError(`user cancel`,`CANCELLED`));else{let o=setTimeout(()=>i(r),e);t&&t.addEventListener(`abort`,e=>{clearTimeout(o),a(new n.RpcError(`user cancel`,`CANCELLED`))})}})}var f=class{constructor(e,t){this._completed=!1,this._sent=[],this.data=e,this.abort=t}get sent(){return this._sent}get completed(){return this._completed}send(e){if(this.data.inputMessage instanceof n.RpcError)return Promise.reject(this.data.inputMessage);let t=this.data.inputMessage===void 0?10:this.data.inputMessage;return Promise.resolve(void 0).then(()=>{this._sent.push(e)}).then(d(t,this.abort))}complete(){if(this.data.inputComplete instanceof n.RpcError)return Promise.reject(this.data.inputComplete);let e=this.data.inputComplete===void 0?10:this.data.inputComplete;return Promise.resolve(void 0).then(()=>{this._completed=!0}).then(d(e,this.abort))}}})),Yj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.stackDuplexStreamingInterceptors=e.stackClientStreamingInterceptors=e.stackServerStreamingInterceptors=e.stackUnaryInterceptors=e.stackIntercept=void 0;let t=Lj();function n(e,n,r,i,a){if(e==`unary`){let e=(e,t,r)=>n.unary(e,t,r);for(let t of(i.interceptors??[]).filter(e=>e.interceptUnary).reverse()){let n=e;e=(e,r,i)=>t.interceptUnary(n,e,r,i)}return e(r,a,i)}if(e==`serverStreaming`){let e=(e,t,r)=>n.serverStreaming(e,t,r);for(let t of(i.interceptors??[]).filter(e=>e.interceptServerStreaming).reverse()){let n=e;e=(e,r,i)=>t.interceptServerStreaming(n,e,r,i)}return e(r,a,i)}if(e==`clientStreaming`){let e=(e,t)=>n.clientStreaming(e,t);for(let t of(i.interceptors??[]).filter(e=>e.interceptClientStreaming).reverse()){let n=e;e=(e,r)=>t.interceptClientStreaming(n,e,r)}return e(r,i)}if(e==`duplex`){let e=(e,t)=>n.duplex(e,t);for(let t of(i.interceptors??[]).filter(e=>e.interceptDuplex).reverse()){let n=e;e=(e,r)=>t.interceptDuplex(n,e,r)}return e(r,i)}t.assertNever(e)}e.stackIntercept=n;function r(e,t,r,i){return n(`unary`,e,t,i,r)}e.stackUnaryInterceptors=r;function i(e,t,r,i){return n(`serverStreaming`,e,t,i,r)}e.stackServerStreamingInterceptors=i;function a(e,t,r){return n(`clientStreaming`,e,t,r)}e.stackClientStreamingInterceptors=a;function o(e,t,r){return n(`duplex`,e,t,r)}e.stackDuplexStreamingInterceptors=o})),Xj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ServerCallContextController=void 0,e.ServerCallContextController=class{constructor(e,t,n,r,i={code:`OK`,detail:``}){this._cancelled=!1,this._listeners=[],this.method=e,this.headers=t,this.deadline=n,this.trailers={},this._sendRH=r,this.status=i}notifyCancelled(){if(!this._cancelled){this._cancelled=!0;for(let e of this._listeners)e()}}sendResponseHeaders(e){this._sendRH(e)}get cancelled(){return this._cancelled}onCancel(e){let t=this._listeners;return t.push(e),()=>{let n=t.indexOf(e);n>=0&&t.splice(n,1)}}}})),Zj=i((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=zj();Object.defineProperty(e,"ServiceType",{enumerable:!0,get:function(){return t.ServiceType}});var n=Rj();Object.defineProperty(e,"readMethodOptions",{enumerable:!0,get:function(){return n.readMethodOptions}}),Object.defineProperty(e,"readMethodOption",{enumerable:!0,get:function(){return n.readMethodOption}}),Object.defineProperty(e,"readServiceOption",{enumerable:!0,get:function(){return n.readServiceOption}});var r=Bj();Object.defineProperty(e,"RpcError",{enumerable:!0,get:function(){return r.RpcError}});var i=Vj();Object.defineProperty(e,"mergeRpcOptions",{enumerable:!0,get:function(){return i.mergeRpcOptions}});var a=Uj();Object.defineProperty(e,"RpcOutputStreamController",{enumerable:!0,get:function(){return a.RpcOutputStreamController}});var o=Jj();Object.defineProperty(e,"TestTransport",{enumerable:!0,get:function(){return o.TestTransport}});var s=Hj();Object.defineProperty(e,"Deferred",{enumerable:!0,get:function(){return s.Deferred}}),Object.defineProperty(e,"DeferredState",{enumerable:!0,get:function(){return s.DeferredState}});var c=qj();Object.defineProperty(e,"DuplexStreamingCall",{enumerable:!0,get:function(){return c.DuplexStreamingCall}});var l=Kj();Object.defineProperty(e,"ClientStreamingCall",{enumerable:!0,get:function(){return l.ClientStreamingCall}});var u=Gj();Object.defineProperty(e,"ServerStreamingCall",{enumerable:!0,get:function(){return u.ServerStreamingCall}});var d=Wj();Object.defineProperty(e,"UnaryCall",{enumerable:!0,get:function(){return d.UnaryCall}});var f=Yj();Object.defineProperty(e,"stackIntercept",{enumerable:!0,get:function(){return f.stackIntercept}}),Object.defineProperty(e,"stackDuplexStreamingInterceptors",{enumerable:!0,get:function(){return f.stackDuplexStreamingInterceptors}}),Object.defineProperty(e,"stackClientStreamingInterceptors",{enumerable:!0,get:function(){return f.stackClientStreamingInterceptors}}),Object.defineProperty(e,"stackServerStreamingInterceptors",{enumerable:!0,get:function(){return f.stackServerStreamingInterceptors}}),Object.defineProperty(e,"stackUnaryInterceptors",{enumerable:!0,get:function(){return f.stackUnaryInterceptors}});var p=Xj();Object.defineProperty(e,"ServerCallContextController",{enumerable:!0,get:function(){return p.ServerCallContextController}})}))(),$=Lj();const Qj=new class extends $.MessageType{constructor(){super(`github.actions.results.entities.v1.CacheScope`,[{no:1,name:`scope`,kind:`scalar`,T:9},{no:2,name:`permission`,kind:`scalar`,T:3}])}create(e){let t={scope:``,permission:`0`};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posQj}])}create(e){let t={repositoryId:`0`,scope:[]};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.pos$j},{no:2,name:`key`,kind:`scalar`,T:9},{no:3,name:`version`,kind:`scalar`,T:9}])}create(e){let t={key:``,version:``};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.pos$j},{no:2,name:`key`,kind:`scalar`,T:9},{no:3,name:`size_bytes`,kind:`scalar`,T:3},{no:4,name:`version`,kind:`scalar`,T:9}])}create(e){let t={key:``,sizeBytes:`0`,version:``};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.pos$j},{no:2,name:`key`,kind:`scalar`,T:9},{no:3,name:`restore_keys`,kind:`scalar`,repeat:2,T:9},{no:4,name:`version`,kind:`scalar`,T:9}])}create(e){let t={key:``,restoreKeys:[],version:``};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.postM.fromJson(e,{ignoreUnknownFields:!0}))}FinalizeCacheEntryUpload(e){let t=nM.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.CacheService`,`FinalizeCacheEntryUpload`,`application/json`,t).then(e=>rM.fromJson(e,{ignoreUnknownFields:!0}))}GetCacheEntryDownloadURL(e){let t=iM.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.CacheService`,`GetCacheEntryDownloadURL`,`application/json`,t).then(e=>aM.fromJson(e,{ignoreUnknownFields:!0}))}};function sM(e){if(e)try{let t=new URL(e).searchParams.get(`sig`);t&&(pi(t),pi(encodeURIComponent(t)))}catch(t){K(`Failed to parse URL: ${e} ${t instanceof Error?t.message:String(t)}`)}}function cM(e){if(typeof e!=`object`||!e){K(`body is not an object or is null`);return}`signed_upload_url`in e&&typeof e.signed_upload_url==`string`&&sM(e.signed_upload_url),`signed_download_url`in e&&typeof e.signed_download_url==`string`&&sM(e.signed_download_url)}var lM=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},uM=class{constructor(e,t,n,r){this.maxAttempts=5,this.baseRetryIntervalMilliseconds=3e3,this.retryMultiplier=1.5;let i=Zd();this.baseUrl=KA(),t&&(this.maxAttempts=t),n&&(this.baseRetryIntervalMilliseconds=n),r&&(this.retryMultiplier=r),this.httpClient=new vr(e,[new xr(i)])}request(e,t,n,r){return lM(this,void 0,void 0,function*(){let i=new URL(`/twirp/${e}/${t}`,this.baseUrl).href;K(`[Request] ${t} ${i}`);let a={"Content-Type":n};try{let{body:e}=yield this.retryableRequest(()=>lM(this,void 0,void 0,function*(){return this.httpClient.post(i,JSON.stringify(r),a)}));return e}catch(e){throw Error(`Failed to ${t}: ${e.message}`)}})}retryableRequest(e){return lM(this,void 0,void 0,function*(){let t=0,n=``,r=``;for(;t0&&bi(`You've hit a rate limit, your rate limit will reset in ${t} seconds`)}throw new xA(`Rate limited: ${n}`)}}catch(e){if(e instanceof SyntaxError&&K(`Raw Body: ${r}`),e instanceof bA||e instanceof xA)throw e;if(yA.isNetworkErrorCode(e?.code))throw new yA(e?.code);i=!0,n=e.message}if(!i)throw Error(`Received non-retryable error: ${n}`);if(t+1===this.maxAttempts)throw Error(`Failed to make request after ${this.maxAttempts} attempts: ${n}`);let a=this.getExponentialRetryTimeMilliseconds(t);xi(`Attempt ${t+1} of ${this.maxAttempts} failed with error: ${n}. Retrying request in ${a} ms...`),yield this.sleep(a),t++}throw Error(`Request failed`)})}isSuccessStatusCode(e){return e?e>=200&&e<300:!1}isRetryableHttpStatusCode(e){return e?[ur.BadGateway,ur.GatewayTimeout,ur.InternalServerError,ur.ServiceUnavailable].includes(e):!1}sleep(e){return lM(this,void 0,void 0,function*(){return new Promise(t=>setTimeout(t,e))})}getExponentialRetryTimeMilliseconds(e){if(e<0)throw Error(`attempt should be a positive integer`);if(e===0)return this.baseRetryIntervalMilliseconds;let t=this.baseRetryIntervalMilliseconds*this.retryMultiplier**+e,n=t*this.retryMultiplier;return Math.trunc(Math.random()*(n-t)+t)}};function dM(e){return new oM(new uM(YA(),e?.maxAttempts,e?.retryIntervalMs,e?.retryMultiplier))}var fM=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};const pM=process.platform===`win32`;function mM(){return fM(this,void 0,void 0,function*(){switch(process.platform){case`win32`:{let e=yield Jd(),t=Id;if(e)return{path:e,type:Md.GNU};if(ge(t))return{path:t,type:Md.BSD};break}case`darwin`:{let e=yield Qr(`gtar`,!1);return e?{path:e,type:Md.GNU}:{path:yield Qr(`tar`,!0),type:Md.BSD}}default:break}return{path:yield Qr(`tar`,!0),type:Md.GNU}})}function hM(e,t,n){return fM(this,arguments,void 0,function*(e,t,n,r=``){let i=[`"${e.path}"`],a=qd(t),o=`cache.tar`,s=_M(),c=e.type===Md.BSD&&t!==jd.Gzip&&pM;switch(n){case`create`:i.push(`--posix`,`-cf`,c?o:a.replace(RegExp(`\\${W.sep}`,`g`),`/`),`--exclude`,c?o:a.replace(RegExp(`\\${W.sep}`,`g`),`/`),`-P`,`-C`,s.replace(RegExp(`\\${W.sep}`,`g`),`/`),`--files-from`,Rd);break;case`extract`:i.push(`-xf`,c?o:r.replace(RegExp(`\\${W.sep}`,`g`),`/`),`-P`,`-C`,s.replace(RegExp(`\\${W.sep}`,`g`),`/`));break;case`list`:i.push(`-tf`,c?o:r.replace(RegExp(`\\${W.sep}`,`g`),`/`),`-P`);break}if(e.type===Md.GNU)switch(process.platform){case`win32`:i.push(`--force-local`);break;case`darwin`:i.push(`--delay-directory-restore`);break}return i})}function gM(e,t){return fM(this,arguments,void 0,function*(e,t,n=``){let r,i=yield mM(),a=yield hM(i,e,t,n),o=t===`create`?yield yM(i,e):yield vM(i,e,n),s=i.type===Md.BSD&&e!==jd.Gzip&&pM;return r=s&&t!==`create`?[[...o].join(` `),[...a].join(` `)]:[[...a].join(` `),[...o].join(` `)],s?r:[r.join(` `)]})}function _M(){return process.env.GITHUB_WORKSPACE??process.cwd()}function vM(e,t,n){return fM(this,void 0,void 0,function*(){let r=e.type===Md.BSD&&t!==jd.Gzip&&pM;switch(t){case jd.Zstd:return r?[`zstd -d --long=30 --force -o`,Ld,n.replace(RegExp(`\\${W.sep}`,`g`),`/`)]:[`--use-compress-program`,pM?`"zstd -d --long=30"`:`unzstd --long=30`];case jd.ZstdWithoutLong:return r?[`zstd -d --force -o`,Ld,n.replace(RegExp(`\\${W.sep}`,`g`),`/`)]:[`--use-compress-program`,pM?`"zstd -d"`:`unzstd`];default:return[`-z`]}})}function yM(e,t){return fM(this,void 0,void 0,function*(){let n=qd(t),r=e.type===Md.BSD&&t!==jd.Gzip&&pM;switch(t){case jd.Zstd:return r?[`zstd -T0 --long=30 --force -o`,n.replace(RegExp(`\\${W.sep}`,`g`),`/`),Ld]:[`--use-compress-program`,pM?`"zstd -T0 --long=30"`:`zstdmt --long=30`];case jd.ZstdWithoutLong:return r?[`zstd -T0 --force -o`,n.replace(RegExp(`\\${W.sep}`,`g`),`/`),Ld]:[`--use-compress-program`,pM?`"zstd -T0"`:`zstdmt`];default:return[`-z`]}})}function bM(e,t){return fM(this,void 0,void 0,function*(){for(let n of e)try{yield li(n,void 0,{cwd:t,env:Object.assign(Object.assign({},process.env),{MSYS:`winsymlinks:nativestrict`})})}catch(e){throw Error(`${n.split(` `)[0]} failed with error: ${e?.message}`)}})}function xM(e,t){return fM(this,void 0,void 0,function*(){yield bM(yield gM(t,`list`,e))})}function SM(e,t){return fM(this,void 0,void 0,function*(){yield Zr(_M()),yield bM(yield gM(t,`extract`,e))})}function CM(e,t,n){return fM(this,void 0,void 0,function*(){ye(W.join(e,Rd),t.join(` `)),yield bM(yield gM(n,`create`),e)})}var wM=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},TM=class e extends Error{constructor(t){super(t),this.name=`ValidationError`,Object.setPrototypeOf(this,e.prototype)}},EM=class e extends Error{constructor(t){super(t),this.name=`ReserveCacheError`,Object.setPrototypeOf(this,e.prototype)}},DM=class e extends Error{constructor(t){super(t),this.name=`FinalizeCacheError`,Object.setPrototypeOf(this,e.prototype)}};function OM(e){if(!e||e.length===0)throw new TM(`Path Validation Error: At least one directory or file path is required`)}function kM(e){if(e.length>512)throw new TM(`Key Validation Error: ${e} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(e))throw new TM(`Key Validation Error: ${e} cannot contain commas.`)}function AM(e,t,n,r){return wM(this,arguments,void 0,function*(e,t,n,r,i=!1){let a=GA();switch(K(`Cache service version: ${a}`),OM(e),a){case`v2`:return yield MM(e,t,n,r,i);default:return yield jM(e,t,n,r,i)}})}function jM(e,t,n,r){return wM(this,arguments,void 0,function*(e,t,n,r,i=!1){n||=[];let a=[t,...n];if(K(`Resolved Keys:`),K(JSON.stringify(a)),a.length>10)throw new TM(`Key Validation Error: Keys are limited to a maximum of 10.`);for(let e of a)kM(e);let o=yield Kd(),s=``;try{let t=yield tj(a,e,{compressionMethod:o,enableCrossOsArchive:i});if(!t?.archiveLocation)return;if(r?.lookupOnly)return xi(`Lookup only - skipping download`),t.cacheKey;s=W.join(yield Vd(),qd(o)),K(`Archive Path: ${s}`),yield rj(t.archiveLocation,s,r),vi()&&(yield xM(s,o));let n=Hd(s);return xi(`Cache Size: ~${Math.round(n/(1024*1024))} MB (${n} B)`),yield SM(s,o),xi(`Cache restored successfully`),t.cacheKey}catch(e){let t=e;if(t.name===TM.name)throw e;t instanceof gr&&typeof t.statusCode==`number`&&t.statusCode>=500?yi(`Failed to restore: ${e.message}`):bi(`Failed to restore: ${e.message}`)}finally{try{yield Wd(s)}catch(e){K(`Failed to delete archive: ${e}`)}}})}function MM(e,t,n,r){return wM(this,arguments,void 0,function*(e,t,n,r,i=!1){r=Object.assign(Object.assign({},r),{useAzureSdk:!0}),n||=[];let a=[t,...n];if(K(`Resolved Keys:`),K(JSON.stringify(a)),a.length>10)throw new TM(`Key Validation Error: Keys are limited to a maximum of 10.`);for(let e of a)kM(e);let o=``;try{let s=dM(),c=yield Kd(),l={key:t,restoreKeys:n,version:Xd(e,c,i)},u=yield s.GetCacheEntryDownloadURL(l);if(!u.ok){K(`Cache not found for version ${l.version} of keys: ${a.join(`, `)}`);return}if(l.key===u.matchedKey?xi(`Cache hit for: ${u.matchedKey}`):xi(`Cache hit for restore-key: ${u.matchedKey}`),r?.lookupOnly)return xi(`Lookup only - skipping download`),u.matchedKey;o=W.join(yield Vd(),qd(c)),K(`Archive path: ${o}`),K(`Starting download of archive to: ${o}`),yield rj(u.signedDownloadUrl,o,r);let d=Hd(o);return xi(`Cache Size: ~${Math.round(d/(1024*1024))} MB (${d} B)`),vi()&&(yield xM(o,c)),yield SM(o,c),xi(`Cache restored successfully`),u.matchedKey}catch(e){let t=e;if(t.name===TM.name)throw e;t instanceof gr&&typeof t.statusCode==`number`&&t.statusCode>=500?yi(`Failed to restore: ${e.message}`):bi(`Failed to restore: ${e.message}`)}finally{try{o&&(yield Wd(o))}catch(e){K(`Failed to delete archive: ${e}`)}}})}function NM(e,t,n){return wM(this,arguments,void 0,function*(e,t,n,r=!1){let i=GA();switch(K(`Cache service version: ${i}`),OM(e),kM(t),i){case`v2`:return yield FM(e,t,n,r);default:return yield PM(e,t,n,r)}})}function PM(e,t,n){return wM(this,arguments,void 0,function*(e,t,n,r=!1){let i=yield Kd(),a=-1,o=yield Ud(e);if(K(`Cache Paths:`),K(`${JSON.stringify(o)}`),o.length===0)throw Error(`Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.`);let s=yield Vd(),c=W.join(s,qd(i));K(`Archive Path: ${c}`);try{yield CM(s,o,i),vi()&&(yield xM(c,i));let l=Hd(c);if(K(`File Size: ${l}`),l>10737418240&&!WA())throw Error(`Cache size of ~${Math.round(l/(1024*1024))} MB (${l} B) is over the 10GB limit, not saving cache.`);K(`Reserving Cache`);let u=yield ij(t,e,{compressionMethod:i,enableCrossOsArchive:r,cacheSize:l});if(u?.result?.cacheId)a=u?.result?.cacheId;else if(u?.statusCode===400)throw Error(u?.error?.message??`Cache size of ~${Math.round(l/(1024*1024))} MB (${l} B) is over the data cap limit, not saving cache.`);else throw new EM(`Unable to reserve cache with key ${t}, another job may be creating this cache. More details: ${u?.error?.message}`);K(`Saving Cache (ID: ${a})`),yield lj(a,c,``,n)}catch(e){let t=e;if(t.name===TM.name)throw e;t.name===EM.name?xi(`Failed to save: ${t.message}`):t instanceof gr&&typeof t.statusCode==`number`&&t.statusCode>=500?yi(`Failed to save: ${t.message}`):bi(`Failed to save: ${t.message}`)}finally{try{yield Wd(c)}catch(e){K(`Failed to delete archive: ${e}`)}}return a})}function FM(e,t,n){return wM(this,arguments,void 0,function*(e,t,n,r=!1){n=Object.assign(Object.assign({},n),{uploadChunkSize:64*1024*1024,uploadConcurrency:8,useAzureSdk:!0});let i=yield Kd(),a=dM(),o=-1,s=yield Ud(e);if(K(`Cache Paths:`),K(`${JSON.stringify(s)}`),s.length===0)throw Error(`Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.`);let c=yield Vd(),l=W.join(c,qd(i));K(`Archive Path: ${l}`);try{yield CM(c,s,i),vi()&&(yield xM(l,i));let u=Hd(l);K(`File Size: ${u}`),n.archiveSizeBytes=u,K(`Reserving Cache`);let d=Xd(e,i,r),f={key:t,version:d},p;try{let e=yield a.CreateCacheEntry(f);if(!e.ok)throw e.message&&bi(`Cache reservation failed: ${e.message}`),Error(e.message||`Response was not ok`);p=e.signedUploadUrl}catch(e){throw K(`Failed to reserve cache: ${e}`),new EM(`Unable to reserve cache with key ${t}, another job may be creating this cache.`)}K(`Attempting to upload cache located at: ${l}`),yield lj(o,l,p,n);let m={key:t,version:d,sizeBytes:`${u}`},h=yield a.FinalizeCacheEntryUpload(m);if(K(`FinalizeCacheEntryUploadResponse: ${h.ok}`),!h.ok)throw h.message?new DM(h.message):Error(`Unable to finalize cache with key ${t}, another job may be finalizing this cache.`);o=parseInt(h.entryId)}catch(e){let t=e;if(t.name===TM.name)throw e;t.name===EM.name?xi(`Failed to save: ${t.message}`):t.name===DM.name?bi(t.message):t instanceof gr&&typeof t.statusCode==`number`&&t.statusCode>=500?yi(`Failed to save: ${t.message}`):bi(`Failed to save: ${t.message}`)}finally{try{yield Wd(l)}catch(e){K(`Failed to delete archive: ${e}`)}}return o})}function IM(e){return e.replaceAll(`/`,`-`)}function LM(e){let{agentIdentity:t,repo:n,ref:r,os:i}=e;return`${za}-${t}-${IM(n)}-${r}-${i}`}function RM(e){let{agentIdentity:t,repo:n,ref:r}=e,i=IM(n);return[`${za}-${t}-${i}-${r}-`,`${za}-${t}-${i}-`]}function zM(e,t){return`${LM(e)}-${t}`}function BM(){return{agentIdentity:`github`,repo:Z(),ref:Xa(),os:Ya()}}function VM(e,t){let n=We.resolve(e),r=We.resolve(t);return n.startsWith(r+We.sep)}async function HM(e,t,n){if(!VM(e,t)){n.debug(`auth.json is outside storage path - skipping deletion`,{authPath:e,storagePath:t});return}try{await Ue.unlink(e),n.debug(`Deleted auth.json from cache storage`)}catch(e){e.code!==`ENOENT`&&n.warning(`Failed to delete auth.json`,{error:Da(e)})}}async function UM(e,t,n){let r=[e];if(t!=null&&r.push(t),await ka(n??null)){let t=We.join(We.dirname(e),`opencode.db`);r.push(t,`${t}-wal`,`${t}-shm`)}return r}async function WM(e,t,n){let r=[e];if(t!=null&&r.push(t),await ka(n??null)){let t=We.join(We.dirname(e),`opencode.db`);r.push(t);for(let e of[`-wal`,`-shm`])try{await Ue.access(`${t}${e}`),r.push(`${t}${e}`)}catch{}}return r}function GM(){return{restoreCache:async(e,t,n)=>AM(e,t,n),saveCache:async(e,t)=>NM(e,t)}}const KM=GM();async function qM(e,t){try{return(await Ue.stat(e)).isDirectory()===!1?!0:(await Ue.readdir(e),!1)}catch{return t.debug(`Storage path not accessible - treating as corrupted`),!0}}async function JM(e,t){let n=We.join(e,`.version`);try{let e=await Ue.readFile(n,`utf8`),r=Number.parseInt(e.trim(),10);return r===1?!0:(t.info(`Storage version mismatch`,{expected:1,found:r}),!1)}catch{return t.debug(`No version file found - treating as compatible`),!0}}async function YM(e){try{await Ue.rm(e,{recursive:!0,force:!0}),await Ue.mkdir(e,{recursive:!0})}catch{}}async function XM(e){let{storeConfig:t,storeAdapter:n,logger:r,storagePath:i,components:a}=e;if(t?.enabled!==!0)return{hit:!1,key:null,restoredPath:null,corrupted:!1,source:null};let o=await rs(n??Ys(t,r),t,a.agentIdentity,a.repo,i,r);return o.mainDbRestored===!0?(await Ue.mkdir(i,{recursive:!0}),{hit:!0,key:null,restoredPath:i,corrupted:!1,source:`storage`}):(o.downloaded>0&&r.warning(`Object store returned session sidecar files without main DB - treating as miss`,{downloaded:o.downloaded,failed:o.failed}),{hit:!1,key:null,restoredPath:null,corrupted:!1,source:null})}async function ZM(e,t){let n=await XM(e);return n.hit===!0?n:{hit:!1,key:t,restoredPath:null,corrupted:!0,source:null}}async function QM(e){let{components:t,logger:n,storagePath:r,authPath:i,projectIdPath:a,opencodeVersion:o,cacheAdapter:s=KM}=e;if(le.env.SKIP_CACHE===`true`)return n.debug(`Skipping cache restore (SKIP_CACHE=true)`),await Ue.mkdir(r,{recursive:!0}),{hit:!1,key:null,restoredPath:null,corrupted:!1,source:null};let c=LM(t),l=RM(t),u=await UM(r,a,o);n.info(`Restoring cache`,{primaryKey:c,restoreKeys:[...l],paths:u});try{let t=await s.restoreCache(u,c,[...l]);return t==null?(n.info(`Cache miss - starting with fresh state`),await Ue.mkdir(r,{recursive:!0}),await XM(e)):(n.info(`Cache restored`,{restoredKey:t}),await qM(r,n)===!0?(n.warning(`Cache corruption detected - proceeding with clean state`),await YM(r),await ZM(e,t)):await JM(r,n)===!1?(n.warning(`Storage version mismatch - proceeding with clean state`),await YM(r),await ZM(e,t)):(await HM(i,r,n),{hit:!0,key:t,restoredPath:r,corrupted:!1,source:`cache`}))}catch(t){return n.warning(`Cache restore failed`,{error:Da(t)}),XM(e)}}async function $M(e){let t=We.join(e,`.version`);await Ue.mkdir(e,{recursive:!0}),await Ue.writeFile(t,`1`,`utf8`)}async function eN(e){try{return(await Ue.readdir(e)).length>0}catch{return!1}}async function tN(e){let{components:t,runId:n,logger:r,storagePath:i,authPath:a,projectIdPath:o,opencodeVersion:s,cacheAdapter:c=KM}=e;if(le.env.SKIP_CACHE===`true`)return r.debug(`Skipping cache save (SKIP_CACHE=true)`),!0;let l=zM(t,n),u=await WM(i,o,s);r.info(`Saving cache`,{saveKey:l,paths:u});try{if(await HM(a,i,r),await eN(i)===!1)return r.info(`No storage content to cache`),!1;if(await $M(i),e.storeConfig?.enabled===!0)try{let n=await ns(e.storeAdapter??Ys(e.storeConfig,r),e.storeConfig,t.agentIdentity,t.repo,i,r);r.info(`Object store session sync completed`,n)}catch(e){r.warning(`Object store session sync failed (non-fatal)`,{error:Da(e)})}return await c.saveCache(u,l),r.info(`Cache saved`,{saveKey:l}),!0}catch(e){return e instanceof Error&&e.message.includes(`already exists`)?(r.info(`Cache key already exists, skipping save`),!0):(r.warning(`Cache save failed`,{error:Da(e)}),!1)}}function nN(){return 8*1024*1024}function rN(){let e=process.env.ACTIONS_RUNTIME_TOKEN;if(!e)throw Error(`Unable to get the ACTIONS_RUNTIME_TOKEN env variable`);return e}function iN(){let e=process.env.ACTIONS_RESULTS_URL;if(!e)throw Error(`Unable to get the ACTIONS_RESULTS_URL env variable`);return new URL(e).origin}function aN(){let e=new URL(process.env.GITHUB_SERVER_URL||`https://github.com`).hostname.trimEnd().toUpperCase(),t=e===`GITHUB.COM`,n=e.endsWith(`.GHE.COM`),r=e.endsWith(`.LOCALHOST`);return!t&&!n&&!r}function oN(){let e=process.env.GITHUB_WORKSPACE;if(!e)throw Error(`Unable to get the GITHUB_WORKSPACE env variable`);return e}function sN(){let e=de.cpus().length,t=32;if(e>4){let n=16*e;t=n>300?300:n}let n=process.env.ACTIONS_ARTIFACT_UPLOAD_CONCURRENCY;if(n){let e=parseInt(n);if(isNaN(e)||e<1)throw Error(`Invalid value set for ACTIONS_ARTIFACT_UPLOAD_CONCURRENCY env variable`);return eDate.parse(`9999-12-31T23:59:59Z`))throw Error(`Unable to encode Timestamp to JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.`);if(e.nanos<0)throw Error(`Unable to encode invalid Timestamp to JSON. Nanos must not be negative.`);let r=`Z`;if(e.nanos>0){let t=(e.nanos+1e9).toString().substring(1);r=t.substring(3)===`000000`?`.`+t.substring(0,3)+`Z`:t.substring(6)===`000`?`.`+t.substring(0,6)+`Z`:`.`+t+`Z`}return new Date(n).toISOString().replace(`.000Z`,r)}internalJsonRead(e,t,n){if(typeof e!=`string`)throw Error(`Unable to parse Timestamp from JSON `+(0,$.typeofJsonValue)(e)+`.`);let r=e.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!r)throw Error(`Unable to parse Timestamp from JSON. Invalid format.`);let i=Date.parse(r[1]+`-`+r[2]+`-`+r[3]+`T`+r[4]+`:`+r[5]+`:`+r[6]+(r[8]?r[8]:`Z`));if(Number.isNaN(i))throw Error(`Unable to parse Timestamp from JSON. Invalid value.`);if(iDate.parse(`9999-12-31T23:59:59Z`))throw new globalThis.Error(`Unable to parse Timestamp from JSON. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.`);return n||=this.create(),n.seconds=$.PbLong.from(i/1e3).toString(),n.nanos=0,r[7]&&(n.nanos=parseInt(`1`+r[7]+`0`.repeat(9-r[7].length))-1e9),n}create(e){let t={seconds:`0`,nanos:0};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posuN},{no:5,name:`version`,kind:`scalar`,T:5},{no:6,name:`mime_type`,kind:`message`,T:()=>fN}])}create(e){let t={workflowRunBackendId:``,workflowJobRunBackendId:``,name:``,version:0};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posfN}])}create(e){let t={workflowRunBackendId:``,workflowJobRunBackendId:``,name:``,size:`0`};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posfN},{no:4,name:`id_filter`,kind:`message`,T:()=>dN}])}create(e){let t={workflowRunBackendId:``,workflowJobRunBackendId:``};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posyN}])}create(e){let t={artifacts:[]};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posuN},{no:7,name:`digest`,kind:`message`,T:()=>fN}])}create(e){let t={workflowRunBackendId:``,workflowJobRunBackendId:``,databaseId:`0`,name:``,size:`0`};return globalThis.Object.defineProperty(t,$.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,$.reflectionMergePartial)(this,t,e),t}internalBinaryRead(e,t,n,r){let i=r??this.create(),a=e.pos+t;for(;e.posmN.fromJson(e,{ignoreUnknownFields:!0}))}FinalizeArtifact(e){let t=hN.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.ArtifactService`,`FinalizeArtifact`,`application/json`,t).then(e=>gN.fromJson(e,{ignoreUnknownFields:!0}))}ListArtifacts(e){let t=_N.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.ArtifactService`,`ListArtifacts`,`application/json`,t).then(e=>vN.fromJson(e,{ignoreUnknownFields:!0}))}GetSignedArtifactURL(e){let t=bN.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.ArtifactService`,`GetSignedArtifactURL`,`application/json`,t).then(e=>xN.fromJson(e,{ignoreUnknownFields:!0}))}DeleteArtifact(e){let t=SN.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request(`github.actions.results.api.v1.ArtifactService`,`DeleteArtifact`,`application/json`,t).then(e=>CN.fromJson(e,{ignoreUnknownFields:!0}))}};function TN(e){if(!e)return;let t=EN();t&&t`,` Greater than >`],[`|`,` Vertical bar |`],[`*`,` Asterisk *`],[`?`,` Question mark ?`],[`\r`,` Carriage return \\r`],[` diff --git a/dist/licenses.txt b/dist/licenses.txt index f3496d40..e56eab02 100644 --- a/dist/licenses.txt +++ b/dist/licenses.txt @@ -10,7 +10,7 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -@actions/cache@6.0.0 +@actions/cache@6.0.1 MIT The MIT License (MIT) @@ -70,7 +70,7 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -@actions/http-client@4.0.0 +@actions/http-client@4.0.1 MIT Actions Http Client for Node.js diff --git a/dist/main.js b/dist/main.js index 0532962d..8a738889 100644 --- a/dist/main.js +++ b/dist/main.js @@ -1,4 +1,4 @@ -import{o as e}from"./chunk-BTyA9uPd.js";import{$ as t,A as n,B as r,C as i,Ct as a,D as o,E as s,F as c,G as l,H as u,I as d,J as f,K as p,L as m,M as h,N as g,O as _,P as v,Q as y,R as b,S as x,St as S,T as C,U as w,V as T,W as ee,X as te,Y as ne,Z as E,_ as re,_t as ie,a as ae,at as D,bt as O,c as oe,d as k,dt as A,et as se,f as j,ft as M,g as ce,gt as N,h as le,ht as ue,i as P,it as de,k as fe,l as pe,lt as me,m as he,mt as ge,n as _e,nt as ve,o as ye,ot as F,p as be,pt as I,q as xe,r as Se,rt as Ce,s as we,st as L,t as Te,tt as Ee,u as De,ut as Oe,v as ke,vt as Ae,w as je,xt as Me,yt as Ne,z as Pe}from"./artifact-X8n9-E0a.js";import R from"node:process";import*as Fe from"os";import*as Ie from"crypto";import*as z from"fs";import*as B from"path";import{ok as Le}from"assert";import*as Re from"util";import{Buffer as ze}from"node:buffer";import*as Be from"node:crypto";import{createHash as Ve}from"node:crypto";import{pathToFileURL as He}from"node:url";import*as V from"node:fs/promises";import Ue,{mkdir as We,readFile as Ge,writeFile as Ke}from"node:fs/promises";import*as H from"node:path";import U,{join as qe}from"node:path";import*as Je from"node:os";import Ye,{homedir as Xe}from"node:os";import*as Ze from"stream";const Qe=e=>typeof e==`object`&&!!e,W=e=>typeof e==`string`?e:null,$e=e=>typeof e==`number`?e:null;function et(e){if(Array.isArray(e))return e.filter(Qe).map(e=>({file:W(e.file)??``,additions:$e(e.additions)??0,deletions:$e(e.deletions)??0}))}function tt(e){return{id:e.id,version:e.version,projectID:e.projectID,directory:e.directory,parentID:e.parentID,title:e.title,time:{created:e.time.created,updated:e.time.updated,compacting:e.time.compacting,archived:e.time.archived},summary:e.summary==null?void 0:{additions:e.summary.additions,deletions:e.summary.deletions,files:e.summary.files,diffs:et(e.summary.diffs)},share:e.share?.url==null?void 0:{url:e.share.url},permission:e.permission==null?void 0:{rules:e.permission.rules},revert:e.revert==null?void 0:{messageID:e.revert.messageID,partID:e.revert.partID,snapshot:e.revert.snapshot,diff:e.revert.diff}}}function nt(e){let t=U.resolve(U.normalize(e));return t.endsWith(U.sep)&&t.length>1?t.slice(0,-1):t}async function rt(e,t){let n=await e.project.list();if(n.error!=null||n.data==null)return t.warning(`SDK project list failed`,{error:String(n.error)}),[];if(!Array.isArray(n.data))return[];let r=[];for(let e of n.data){if(!Qe(e))continue;let t=W(e.id),n=W(e.worktree),i=W(e.path);t==null||n==null||i==null||r.push({id:t,worktree:n,path:i,vcs:`git`,time:{created:0,updated:0}})}return r}async function it(e,t,n){let r=nt(t),i=await rt(e,n);for(let e of i){if(nt(e.worktree)===r)return e;let t=W(e.path);if(t!=null&&nt(t)===r)return e}return null}function at(e){return e.status===`running`?{status:`running`,input:e.input,time:{start:e.time.start}}:e.status===`error`?{status:`error`,input:e.input,error:e.error,time:{start:e.time.start,end:e.time.end}}:e.status===`pending`?{status:`pending`}:{status:`completed`,input:e.input,output:e.output,title:e.title,metadata:e.metadata,time:{start:e.time.start,end:e.time.end,compacted:e.time.compacted},attachments:void 0}}function ot(e){let t={id:e.id,sessionID:e.sessionID,messageID:e.messageID};if(e.type===`text`)return{...t,type:`text`,text:e.text,synthetic:e.synthetic,ignored:e.ignored,time:e.time,metadata:e.metadata};if(e.type===`reasoning`)return{...t,type:`reasoning`,reasoning:e.reasoning??e.text,time:e.time};if(e.type===`tool`)return{...t,type:`tool`,callID:e.callID,tool:e.tool,state:at(e.state),metadata:e.metadata};if(e.type!==`step-finish`)return{...t,type:`text`,text:`text`in e?e.text:``};let n=e;return{...t,type:`step-finish`,reason:n.reason,snapshot:n.snapshot,cost:n.cost,tokens:{input:n.tokens.input,output:n.tokens.output,reasoning:n.tokens.reasoning,cache:{read:n.tokens.cache.read,write:n.tokens.cache.write}}}}function st(e){if(e.role===`user`){let t=e;return{id:t.id,sessionID:t.sessionID,role:`user`,time:{created:t.time.created},summary:t.summary==null?void 0:{title:t.summary.title,body:t.summary.body,diffs:et(t.summary.diffs)??[]},agent:t.agent,model:{providerID:t.model.providerID,modelID:t.model.modelID},system:t.system,tools:t.tools,variant:t.variant}}let t=e;return{id:t.id,sessionID:t.sessionID,role:`assistant`,time:{created:t.time.created,completed:t.time.completed},parentID:t.parentID,modelID:t.modelID,providerID:t.providerID,mode:t.mode,agent:t.agent??``,path:{cwd:t.path.cwd,root:t.path.root},summary:t.summary,cost:t.cost,tokens:{input:t.tokens.input,output:t.tokens.output,reasoning:t.tokens.reasoning,cache:{read:t.tokens.cache.read,write:t.tokens.cache.write}},finish:t.finish,error:t.error?{name:t.error.name,message:W(t.error.data.message)??``}:void 0}}function ct(e){return[...e.map(e=>{let t=st(`info`in e?e.info:e),n=`parts`in e?e.parts.map(ot):void 0;return n==null||n.length===0?t:{...t,parts:n}})].sort((e,t)=>e.time.created-t.time.created)}async function lt(e,t,n){let r=await e.session.list({query:{directory:t}});return r.error==null&&r.data!=null?Array.isArray(r.data)?r.data.map(tt):[]:(n.warning(`SDK session list failed`,{error:String(r.error)}),[])}async function ut(e,t,n){let r=await e.session.messages({path:{id:t}});return r.error==null&&r.data!=null?ct(r.data):(n.warning(`SDK session messages failed`,{error:String(r.error)}),[])}async function dt(e,t,n,r){let i=await e.session.list({query:{directory:t,start:n,roots:!0,limit:10}});if(i.error!=null||i.data==null)return r.warning(`SDK session list failed`,{error:String(i.error)}),null;if(!Array.isArray(i.data)||i.data.length===0)return null;let a=i.data.map(tt);if(a.length===0)return null;let o=a.reduce((e,t)=>t.time.created>e.time.created?t:e);return{projectID:o.projectID,session:o}}async function ft(e,t,n){let r=await e.session.delete({path:{id:t}});if(r.error!=null){n.warning(`SDK session delete failed`,{sessionID:t,error:String(r.error)});return}n.debug(`Deleted session via SDK`,{sessionID:t})}function G(e,t){return{key:`${e}-${t}`,entityType:e,entityId:t}}function pt(e){return Ve(`sha256`).update(e).digest(`hex`).slice(0,8)}function mt(e){if(e.eventType===`unsupported`)return null;if(e.eventType===`schedule`){let t=typeof e.raw==`object`&&e.raw!=null&&`event`in e.raw?e.raw.event:void 0,n=typeof t==`object`&&t&&`type`in t&&t.type===`schedule`&&`schedule`in t&&typeof t.schedule==`string`?t.schedule:void 0;return G(`schedule`,pt((n!=null&&n.trim().length>0?n:e.action)??`default`))}return e.eventType===`workflow_dispatch`?G(`dispatch`,String(e.runId)):e.target==null?null:e.eventType===`issue_comment`?e.target.kind===`issue`?G(`issue`,String(e.target.number)):e.target.kind===`pr`?G(`pr`,String(e.target.number)):null:e.eventType===`discussion_comment`?e.target.kind===`discussion`?G(`discussion`,String(e.target.number)):null:e.eventType===`issues`?e.target.kind===`issue`?G(`issue`,String(e.target.number)):null:(e.eventType===`pull_request`||e.eventType===`pull_request_review_comment`)&&e.target.kind===`pr`?G(`pr`,String(e.target.number)):null}function ht(e){return`fro-bot: ${e.key}`}function gt(e,t){let n=e.filter(e=>e.title===t);return n.length===0?null:n.reduce((e,t)=>t.time.updated>e.time.updated?t:e)}function _t(e){let t=H.resolve(e);return t.endsWith(H.sep)&&t.length>1?t.slice(0,-1):t}async function vt(e,t,n,r){try{let i=await lt(e,t,r),a=ht(n),o=_t(t),s=gt(i.filter(e=>_t(e.directory)===o),a);if(s==null){let e=gt(i,a);return e!=null&&r.warning(`Session continuity: matching session has different workspace directory, ignoring`,{sessionId:e.id,sessionDirectory:e.directory,workspacePath:t}),{status:`not-found`}}return s.time.archived!=null||s.time.compacting!=null?{status:`not-found`}:{status:`found`,session:s}}catch(e){return{status:`error`,error:e instanceof Error?e.message:String(e)}}}const yt={maxSessions:50,maxAgeDays:30};async function bt(e,n,r,i){let{maxSessions:a,maxAgeDays:o}=r;if(i.info(`Starting session pruning`,{workspacePath:n,maxSessions:a,maxAgeDays:o}),await it(e,n,i)==null)return i.debug(`No project found for pruning`,{workspacePath:n}),{prunedCount:0,prunedSessionIds:[],remainingCount:0,freedBytes:0};let s=await lt(e,n,i),c=s.filter(e=>e.parentID==null);if(c.length===0)return{prunedCount:0,prunedSessionIds:[],remainingCount:0,freedBytes:0};let l=[...c].sort((e,t)=>t.time.updated-e.time.updated),u=new Date;u.setDate(u.getDate()-o);let d=u.getTime(),f=new Set;for(let e of l)e.time.updated>=d&&f.add(e.id);for(let e=0;e!f.has(e.id)),m=new Set;for(let e of p){m.add(e.id);for(let t of s)t.parentID===e.id&&m.add(t.id)}if(m.size===0)return i.info(`No sessions to prune`),{prunedCount:0,prunedSessionIds:[],remainingCount:c.length,freedBytes:0};let h=[];for(let n of m)try{await ft(e,n,i),h.push(n),i.debug(`Pruned session`,{sessionId:n})}catch(e){i.warning(`Failed to prune session`,{sessionId:n,error:t(e)})}let g=c.length-p.length;return i.info(`Session pruning complete`,{prunedCount:h.length,remainingCount:g}),{prunedCount:h.length,prunedSessionIds:h,remainingCount:g,freedBytes:0}}async function xt(e,t,n,r){let{limit:i,fromDate:a,toDate:o}=n;r.debug(`Listing sessions`,{directory:t,limit:i});let s=[...(await lt(e,t,r)).filter(e=>!(e.parentID!=null||a!=null&&e.time.createdo.getTime()))].sort((e,t)=>t.time.updated-e.time.updated),c=[],l=i==null?s:s.slice(0,i);for(let t of l){let n=await ut(e,t.id,r),i=St(n);c.push({id:t.id,projectID:t.projectID,directory:t.directory,title:t.title,createdAt:t.time.created,updatedAt:t.time.updated,messageCount:n.length,agents:i,isChild:!1})}return r.info(`Listed sessions`,{count:c.length,directory:t}),c}function St(e){let t=new Set;for(let n of e)n.agent!=null&&t.add(n.agent);return[...t]}async function Ct(e,t,n,r,i){let{limit:a=20,caseSensitive:o=!1,sessionId:s}=r;i.debug(`Searching sessions`,{query:e,directory:n,limit:a,caseSensitive:o});let c=o?e:e.toLowerCase(),l=[],u=0;if(s!=null){let e=await wt(t,s,c,o,i);return e.length>0&&l.push({sessionId:s,matches:e.slice(0,a)}),l}let d=await xt(t,n,{},i);for(let e of d){if(u>=a)break;let n=await wt(t,e.id,c,o,i);if(n.length>0){let t=a-u;l.push({sessionId:e.id,matches:n.slice(0,t)}),u+=Math.min(n.length,t)}}return i.info(`Session search complete`,{query:e,resultCount:l.length,totalMatches:u}),l}async function wt(e,t,n,r,i){let a=await ut(e,t,i),o=[];for(let e of a){let t=e.parts??[];for(let i of t){let t=Tt(i);if(t==null)continue;let a=r?t:t.toLowerCase();if(a.includes(n)){let r=a.indexOf(n),s=Math.max(0,r-50),c=Math.min(t.length,r+n.length+50),l=t.slice(s,c);o.push({messageId:e.id,partId:i.id,excerpt:`...${l}...`,role:e.role,agent:e.agent})}}}return o}function Tt(e){switch(e.type){case`text`:return e.text;case`reasoning`:return e.reasoning;case`tool`:return e.state.status===`completed`?`${e.tool}: ${e.state.output}`:null;case`step-finish`:return null}}async function Et(e,t,n,r){if(n!=null)try{let i=await e.session.update({path:{id:t},body:{title:n}});i.error!=null&&r.warning(`Best-effort session title re-assertion failed`,{sessionId:t,sessionTitle:n,error:String(i.error)})}catch(e){r.warning(`Best-effort session title re-assertion failed`,{sessionId:t,sessionTitle:n,error:e instanceof Error?e.message:String(e)})}}function Dt(e){let t=[`--- Fro Bot Run Summary ---`,`Event: ${e.eventType}`,`Repo: ${e.repo}`,`Ref: ${e.ref}`,`Run ID: ${e.runId}`,`Cache: ${e.cacheStatus}`,`Duration: ${e.duration}s`];return e.sessionIds.length>0&&t.push(`Sessions used: ${e.sessionIds.join(`, `)}`),e.logicalKey!=null&&t.push(`Logical Thread: ${e.logicalKey}`),e.createdPRs.length>0&&t.push(`PRs created: ${e.createdPRs.join(`, `)}`),e.createdCommits.length>0&&t.push(`Commits: ${e.createdCommits.join(`, `)}`),e.tokenUsage!=null&&t.push(`Tokens: ${e.tokenUsage.input} in / ${e.tokenUsage.output} out`),t.join(` +import{o as e}from"./chunk-BTyA9uPd.js";import{$ as t,A as n,B as r,C as i,Ct as a,D as o,E as s,F as c,G as l,H as u,I as d,J as f,K as p,L as m,M as h,N as g,O as _,P as v,Q as y,R as b,S as x,St as S,T as C,U as w,V as T,W as ee,X as te,Y as ne,Z as E,_ as re,_t as ie,a as ae,at as D,bt as O,c as oe,d as k,dt as A,et as se,f as j,ft as M,g as ce,gt as N,h as le,ht as ue,i as P,it as de,k as fe,l as pe,lt as me,m as he,mt as ge,n as _e,nt as ve,o as ye,ot as F,p as be,pt as I,q as xe,r as Se,rt as Ce,s as we,st as L,t as Te,tt as Ee,u as De,ut as Oe,v as ke,vt as Ae,w as je,xt as Me,yt as Ne,z as Pe}from"./artifact-TLiPkbkg.js";import R from"node:process";import*as Fe from"os";import*as Ie from"crypto";import*as z from"fs";import*as B from"path";import{ok as Le}from"assert";import*as Re from"util";import{Buffer as ze}from"node:buffer";import*as Be from"node:crypto";import{createHash as Ve}from"node:crypto";import{pathToFileURL as He}from"node:url";import*as V from"node:fs/promises";import Ue,{mkdir as We,readFile as Ge,writeFile as Ke}from"node:fs/promises";import*as H from"node:path";import U,{join as qe}from"node:path";import*as Je from"node:os";import Ye,{homedir as Xe}from"node:os";import*as Ze from"stream";const Qe=e=>typeof e==`object`&&!!e,W=e=>typeof e==`string`?e:null,$e=e=>typeof e==`number`?e:null;function et(e){if(Array.isArray(e))return e.filter(Qe).map(e=>({file:W(e.file)??``,additions:$e(e.additions)??0,deletions:$e(e.deletions)??0}))}function tt(e){return{id:e.id,version:e.version,projectID:e.projectID,directory:e.directory,parentID:e.parentID,title:e.title,time:{created:e.time.created,updated:e.time.updated,compacting:e.time.compacting,archived:e.time.archived},summary:e.summary==null?void 0:{additions:e.summary.additions,deletions:e.summary.deletions,files:e.summary.files,diffs:et(e.summary.diffs)},share:e.share?.url==null?void 0:{url:e.share.url},permission:e.permission==null?void 0:{rules:e.permission.rules},revert:e.revert==null?void 0:{messageID:e.revert.messageID,partID:e.revert.partID,snapshot:e.revert.snapshot,diff:e.revert.diff}}}function nt(e){let t=U.resolve(U.normalize(e));return t.endsWith(U.sep)&&t.length>1?t.slice(0,-1):t}async function rt(e,t){let n=await e.project.list();if(n.error!=null||n.data==null)return t.warning(`SDK project list failed`,{error:String(n.error)}),[];if(!Array.isArray(n.data))return[];let r=[];for(let e of n.data){if(!Qe(e))continue;let t=W(e.id),n=W(e.worktree),i=W(e.path);t==null||n==null||i==null||r.push({id:t,worktree:n,path:i,vcs:`git`,time:{created:0,updated:0}})}return r}async function it(e,t,n){let r=nt(t),i=await rt(e,n);for(let e of i){if(nt(e.worktree)===r)return e;let t=W(e.path);if(t!=null&&nt(t)===r)return e}return null}function at(e){return e.status===`running`?{status:`running`,input:e.input,time:{start:e.time.start}}:e.status===`error`?{status:`error`,input:e.input,error:e.error,time:{start:e.time.start,end:e.time.end}}:e.status===`pending`?{status:`pending`}:{status:`completed`,input:e.input,output:e.output,title:e.title,metadata:e.metadata,time:{start:e.time.start,end:e.time.end,compacted:e.time.compacted},attachments:void 0}}function ot(e){let t={id:e.id,sessionID:e.sessionID,messageID:e.messageID};if(e.type===`text`)return{...t,type:`text`,text:e.text,synthetic:e.synthetic,ignored:e.ignored,time:e.time,metadata:e.metadata};if(e.type===`reasoning`)return{...t,type:`reasoning`,reasoning:e.reasoning??e.text,time:e.time};if(e.type===`tool`)return{...t,type:`tool`,callID:e.callID,tool:e.tool,state:at(e.state),metadata:e.metadata};if(e.type!==`step-finish`)return{...t,type:`text`,text:`text`in e?e.text:``};let n=e;return{...t,type:`step-finish`,reason:n.reason,snapshot:n.snapshot,cost:n.cost,tokens:{input:n.tokens.input,output:n.tokens.output,reasoning:n.tokens.reasoning,cache:{read:n.tokens.cache.read,write:n.tokens.cache.write}}}}function st(e){if(e.role===`user`){let t=e;return{id:t.id,sessionID:t.sessionID,role:`user`,time:{created:t.time.created},summary:t.summary==null?void 0:{title:t.summary.title,body:t.summary.body,diffs:et(t.summary.diffs)??[]},agent:t.agent,model:{providerID:t.model.providerID,modelID:t.model.modelID},system:t.system,tools:t.tools,variant:t.variant}}let t=e;return{id:t.id,sessionID:t.sessionID,role:`assistant`,time:{created:t.time.created,completed:t.time.completed},parentID:t.parentID,modelID:t.modelID,providerID:t.providerID,mode:t.mode,agent:t.agent??``,path:{cwd:t.path.cwd,root:t.path.root},summary:t.summary,cost:t.cost,tokens:{input:t.tokens.input,output:t.tokens.output,reasoning:t.tokens.reasoning,cache:{read:t.tokens.cache.read,write:t.tokens.cache.write}},finish:t.finish,error:t.error?{name:t.error.name,message:W(t.error.data.message)??``}:void 0}}function ct(e){return[...e.map(e=>{let t=st(`info`in e?e.info:e),n=`parts`in e?e.parts.map(ot):void 0;return n==null||n.length===0?t:{...t,parts:n}})].sort((e,t)=>e.time.created-t.time.created)}async function lt(e,t,n){let r=await e.session.list({query:{directory:t}});return r.error==null&&r.data!=null?Array.isArray(r.data)?r.data.map(tt):[]:(n.warning(`SDK session list failed`,{error:String(r.error)}),[])}async function ut(e,t,n){let r=await e.session.messages({path:{id:t}});return r.error==null&&r.data!=null?ct(r.data):(n.warning(`SDK session messages failed`,{error:String(r.error)}),[])}async function dt(e,t,n,r){let i=await e.session.list({query:{directory:t,start:n,roots:!0,limit:10}});if(i.error!=null||i.data==null)return r.warning(`SDK session list failed`,{error:String(i.error)}),null;if(!Array.isArray(i.data)||i.data.length===0)return null;let a=i.data.map(tt);if(a.length===0)return null;let o=a.reduce((e,t)=>t.time.created>e.time.created?t:e);return{projectID:o.projectID,session:o}}async function ft(e,t,n){let r=await e.session.delete({path:{id:t}});if(r.error!=null){n.warning(`SDK session delete failed`,{sessionID:t,error:String(r.error)});return}n.debug(`Deleted session via SDK`,{sessionID:t})}function G(e,t){return{key:`${e}-${t}`,entityType:e,entityId:t}}function pt(e){return Ve(`sha256`).update(e).digest(`hex`).slice(0,8)}function mt(e){if(e.eventType===`unsupported`)return null;if(e.eventType===`schedule`){let t=typeof e.raw==`object`&&e.raw!=null&&`event`in e.raw?e.raw.event:void 0,n=typeof t==`object`&&t&&`type`in t&&t.type===`schedule`&&`schedule`in t&&typeof t.schedule==`string`?t.schedule:void 0;return G(`schedule`,pt((n!=null&&n.trim().length>0?n:e.action)??`default`))}return e.eventType===`workflow_dispatch`?G(`dispatch`,String(e.runId)):e.target==null?null:e.eventType===`issue_comment`?e.target.kind===`issue`?G(`issue`,String(e.target.number)):e.target.kind===`pr`?G(`pr`,String(e.target.number)):null:e.eventType===`discussion_comment`?e.target.kind===`discussion`?G(`discussion`,String(e.target.number)):null:e.eventType===`issues`?e.target.kind===`issue`?G(`issue`,String(e.target.number)):null:(e.eventType===`pull_request`||e.eventType===`pull_request_review_comment`)&&e.target.kind===`pr`?G(`pr`,String(e.target.number)):null}function ht(e){return`fro-bot: ${e.key}`}function gt(e,t){let n=e.filter(e=>e.title===t);return n.length===0?null:n.reduce((e,t)=>t.time.updated>e.time.updated?t:e)}function _t(e){let t=H.resolve(e);return t.endsWith(H.sep)&&t.length>1?t.slice(0,-1):t}async function vt(e,t,n,r){try{let i=await lt(e,t,r),a=ht(n),o=_t(t),s=gt(i.filter(e=>_t(e.directory)===o),a);if(s==null){let e=gt(i,a);return e!=null&&r.warning(`Session continuity: matching session has different workspace directory, ignoring`,{sessionId:e.id,sessionDirectory:e.directory,workspacePath:t}),{status:`not-found`}}return s.time.archived!=null||s.time.compacting!=null?{status:`not-found`}:{status:`found`,session:s}}catch(e){return{status:`error`,error:e instanceof Error?e.message:String(e)}}}const yt={maxSessions:50,maxAgeDays:30};async function bt(e,n,r,i){let{maxSessions:a,maxAgeDays:o}=r;if(i.info(`Starting session pruning`,{workspacePath:n,maxSessions:a,maxAgeDays:o}),await it(e,n,i)==null)return i.debug(`No project found for pruning`,{workspacePath:n}),{prunedCount:0,prunedSessionIds:[],remainingCount:0,freedBytes:0};let s=await lt(e,n,i),c=s.filter(e=>e.parentID==null);if(c.length===0)return{prunedCount:0,prunedSessionIds:[],remainingCount:0,freedBytes:0};let l=[...c].sort((e,t)=>t.time.updated-e.time.updated),u=new Date;u.setDate(u.getDate()-o);let d=u.getTime(),f=new Set;for(let e of l)e.time.updated>=d&&f.add(e.id);for(let e=0;e!f.has(e.id)),m=new Set;for(let e of p){m.add(e.id);for(let t of s)t.parentID===e.id&&m.add(t.id)}if(m.size===0)return i.info(`No sessions to prune`),{prunedCount:0,prunedSessionIds:[],remainingCount:c.length,freedBytes:0};let h=[];for(let n of m)try{await ft(e,n,i),h.push(n),i.debug(`Pruned session`,{sessionId:n})}catch(e){i.warning(`Failed to prune session`,{sessionId:n,error:t(e)})}let g=c.length-p.length;return i.info(`Session pruning complete`,{prunedCount:h.length,remainingCount:g}),{prunedCount:h.length,prunedSessionIds:h,remainingCount:g,freedBytes:0}}async function xt(e,t,n,r){let{limit:i,fromDate:a,toDate:o}=n;r.debug(`Listing sessions`,{directory:t,limit:i});let s=[...(await lt(e,t,r)).filter(e=>!(e.parentID!=null||a!=null&&e.time.createdo.getTime()))].sort((e,t)=>t.time.updated-e.time.updated),c=[],l=i==null?s:s.slice(0,i);for(let t of l){let n=await ut(e,t.id,r),i=St(n);c.push({id:t.id,projectID:t.projectID,directory:t.directory,title:t.title,createdAt:t.time.created,updatedAt:t.time.updated,messageCount:n.length,agents:i,isChild:!1})}return r.info(`Listed sessions`,{count:c.length,directory:t}),c}function St(e){let t=new Set;for(let n of e)n.agent!=null&&t.add(n.agent);return[...t]}async function Ct(e,t,n,r,i){let{limit:a=20,caseSensitive:o=!1,sessionId:s}=r;i.debug(`Searching sessions`,{query:e,directory:n,limit:a,caseSensitive:o});let c=o?e:e.toLowerCase(),l=[],u=0;if(s!=null){let e=await wt(t,s,c,o,i);return e.length>0&&l.push({sessionId:s,matches:e.slice(0,a)}),l}let d=await xt(t,n,{},i);for(let e of d){if(u>=a)break;let n=await wt(t,e.id,c,o,i);if(n.length>0){let t=a-u;l.push({sessionId:e.id,matches:n.slice(0,t)}),u+=Math.min(n.length,t)}}return i.info(`Session search complete`,{query:e,resultCount:l.length,totalMatches:u}),l}async function wt(e,t,n,r,i){let a=await ut(e,t,i),o=[];for(let e of a){let t=e.parts??[];for(let i of t){let t=Tt(i);if(t==null)continue;let a=r?t:t.toLowerCase();if(a.includes(n)){let r=a.indexOf(n),s=Math.max(0,r-50),c=Math.min(t.length,r+n.length+50),l=t.slice(s,c);o.push({messageId:e.id,partId:i.id,excerpt:`...${l}...`,role:e.role,agent:e.agent})}}}return o}function Tt(e){switch(e.type){case`text`:return e.text;case`reasoning`:return e.reasoning;case`tool`:return e.state.status===`completed`?`${e.tool}: ${e.state.output}`:null;case`step-finish`:return null}}async function Et(e,t,n,r){if(n!=null)try{let i=await e.session.update({path:{id:t},body:{title:n}});i.error!=null&&r.warning(`Best-effort session title re-assertion failed`,{sessionId:t,sessionTitle:n,error:String(i.error)})}catch(e){r.warning(`Best-effort session title re-assertion failed`,{sessionId:t,sessionTitle:n,error:e instanceof Error?e.message:String(e)})}}function Dt(e){let t=[`--- Fro Bot Run Summary ---`,`Event: ${e.eventType}`,`Repo: ${e.repo}`,`Ref: ${e.ref}`,`Run ID: ${e.runId}`,`Cache: ${e.cacheStatus}`,`Duration: ${e.duration}s`];return e.sessionIds.length>0&&t.push(`Sessions used: ${e.sessionIds.join(`, `)}`),e.logicalKey!=null&&t.push(`Logical Thread: ${e.logicalKey}`),e.createdPRs.length>0&&t.push(`PRs created: ${e.createdPRs.join(`, `)}`),e.createdCommits.length>0&&t.push(`Commits: ${e.createdCommits.join(`, `)}`),e.tokenUsage!=null&&t.push(`Tokens: ${e.tokenUsage.input} in / ${e.tokenUsage.output} out`),t.join(` `)}async function Ot(e,n,r,i){let a=Dt(n);try{let t=await r.session.prompt({path:{id:e},body:{noReply:!0,parts:[{type:`text`,text:a}]}});if(t.error!=null){i.warning(`SDK prompt writeback failed`,{sessionId:e,error:String(t.error)});return}i.info(`Session summary written via SDK`,{sessionId:e})}catch(n){i.warning(`SDK prompt writeback failed`,{sessionId:e,error:t(n)})}}function kt(e){if(e.storeAdapter.conditionalPut==null)throw Error(`Object store adapter does not support conditionalPut`);return e.storeAdapter.conditionalPut}function At(e){if(e.storeAdapter.conditionalDelete==null)throw Error(`Object store adapter does not support conditionalDelete`);return e.storeAdapter.conditionalDelete}function jt(e){if(e.storeAdapter.getObject==null)throw Error(`Object store adapter does not support getObject`);return e.storeAdapter.getObject}function Mt(e){try{return s(kt(e))}catch(e){return C(e instanceof Error?e:Error(String(e)))}}function Nt(e){try{return s(At(e))}catch(e){return C(e instanceof Error?e:Error(String(e)))}}function Pt(e){try{return s(jt(e))}catch(e){return C(e instanceof Error?e:Error(String(e)))}}function Ft(e,t){let n=ce(e.storeConfig,`coordination`,t,`locks`,`repo.json`);return n.success===!1?C(n.error):s(n.data)}function It(e){return/pre-?condition/.test(e.message.toLowerCase())}function Lt(e,t){return new Date(e.acquired_at).getTime()+e.ttl_seconds*1e3<=t.getTime()}function Rt(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.repo==`string`&&typeof t.holder_id==`string`&&(t.surface===`github`||t.surface===`discord`)&&typeof t.acquired_at==`string`&&typeof t.ttl_seconds==`number`&&Number.isFinite(t.ttl_seconds)&&typeof t.run_id==`string`}function zt(e){try{let t=JSON.parse(e);return Rt(t)===!1?C(Error(`Invalid lock record payload`)):s(t)}catch(e){return C(e instanceof Error?e:Error(String(e)))}}function Bt(e,t,n,r,i,a){return{repo:e,holder_id:t,surface:n,acquired_at:a,ttl_seconds:i,run_id:r}}async function Vt(e,t,n,r,i,a){let o=Ft(e,t);if(o.success===!1)return C(o.error);let c=new Date().toISOString(),l=Bt(t,n,r,i,e.lockTtlSeconds,c),u=Mt(e);if(u.success===!1)return C(u.error);let d=Pt(e);if(d.success===!1)return C(d.error);a.debug(`Attempting lock acquisition`,{key:o.data,repo:t,runId:i,surface:r});let f=await u.data(o.data,JSON.stringify(l),{ifNoneMatch:`*`});if(f.success===!0)return s({acquired:!0,etag:f.data.etag,holder:null});if(It(f.error)===!1)return C(f.error);let p=await d.data(o.data);if(p.success===!1)return C(p.error);let m=zt(p.data.data);if(m.success===!1)return C(m.error);if(Lt(m.data,new Date(c))===!1)return s({acquired:!1,etag:null,holder:m.data});let h=await u.data(o.data,JSON.stringify(l),{ifMatch:p.data.etag});return h.success===!1?It(h.error)===!0?s({acquired:!1,etag:null,holder:null}):C(h.error):s({acquired:!0,etag:h.data.etag,holder:null})}async function Ht(e,t,n,r){let i=Ft(e,t);if(i.success===!1)return C(i.error);let a=Nt(e);return a.success===!1?C(a.error):(r.debug(`Releasing lock`,{key:i.data,repo:t}),a.data(i.data,{ifMatch:n}))}const Ut=6e4,Wt={todowrite:[`Todo`,`\x1B[33m\x1B[1m`],todoread:[`Todo`,`\x1B[33m\x1B[1m`],bash:[`Bash`,`\x1B[31m\x1B[1m`],edit:[`Edit`,`\x1B[32m\x1B[1m`],glob:[`Glob`,`\x1B[34m\x1B[1m`],grep:[`Grep`,`\x1B[34m\x1B[1m`],list:[`List`,`\x1B[34m\x1B[1m`],read:[`Read`,`\x1B[35m\x1B[1m`],write:[`Write`,`\x1B[32m\x1B[1m`],websearch:[`Search`,`\x1B[2m\x1B[1m`]},Gt=`\x1B[0m`;function Kt(){return R.env.NO_COLOR==null}function qt(e,t){let[n,r]=Wt[e.toLowerCase()]??[e,`\x1B[36m\x1B[1m`],i=n.padEnd(10,` `);Kt()?R.stdout.write(`\n${r}|${Gt} ${i} ${Gt}${t}\n`):R.stdout.write(`\n| ${i} ${t}\n`)}function Jt(e){R.stdout.write(`\n${e}\n`)}function Yt(e){switch(e){case`hit`:return`✅ hit`;case`miss`:return`🆕 miss`;case`corrupted`:return`⚠️ corrupted (clean start)`}}function Xt(e){let t=Math.round(e/1e3);return t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}async function Zt(e,n){let{eventType:r,repo:i,ref:a,runId:o,runUrl:s,metrics:c,agent:l,resolvedOutputMode:u}=e;try{if(S.addHeading(`Fro Bot Agent Run`,2).addTable([[{data:`Field`,header:!0},{data:`Value`,header:!0}],[`Event`,r],[`Repository`,i],[`Ref`,a],[`Run ID`,`[${o}](${s})`],[`Agent`,l],[`Output Mode`,u??`N/A`],[`Cache Status`,Yt(c.cacheStatus)],[`Duration`,c.duration==null?`N/A`:Xt(c.duration)]]),(c.sessionsUsed.length>0||c.sessionsCreated.length>0)&&(S.addHeading(`Sessions`,3),c.sessionsUsed.length>0&&S.addRaw(`**Used:** ${c.sessionsUsed.join(`, `)}\n`),c.sessionsCreated.length>0&&S.addRaw(`**Created:** ${c.sessionsCreated.join(`, `)}\n`)),c.tokenUsage!=null&&(S.addHeading(`Token Usage`,3),S.addTable([[{data:`Metric`,header:!0},{data:`Count`,header:!0}],[`Input`,c.tokenUsage.input.toLocaleString()],[`Output`,c.tokenUsage.output.toLocaleString()],[`Reasoning`,c.tokenUsage.reasoning.toLocaleString()],[`Cache Read`,c.tokenUsage.cache.read.toLocaleString()],[`Cache Write`,c.tokenUsage.cache.write.toLocaleString()]]),c.model!=null&&S.addRaw(`**Model:** ${c.model}\n`),c.cost!=null&&S.addRaw(`**Cost:** $${c.cost.toFixed(4)}\n`)),(c.prsCreated.length>0||c.commitsCreated.length>0||c.commentsPosted>0)&&(S.addHeading(`Created Artifacts`,3),c.prsCreated.length>0&&S.addList([...c.prsCreated]),c.commitsCreated.length>0&&S.addList(c.commitsCreated.map(e=>`Commit \`${e.slice(0,7)}\``)),c.commentsPosted>0&&S.addRaw(`**Comments Posted:** ${c.commentsPosted}\n`)),c.errors.length>0){S.addHeading(`Errors`,3);for(let e of c.errors){let t=e.recoverable?`🔄 Recovered`:`❌ Failed`;S.addRaw(`- **${e.type}** (${t}): ${e.message}\n`)}}await S.write(),n.debug(`Wrote job summary`)}catch(e){let r=t(e);n.warning(`Failed to write job summary`,{error:r}),ue(`Failed to write job summary: ${r}`)}}function Qt(){let e=0,t=null,n=`miss`,r=null,i=[],a=[],o=[],s=[],c=0,l=null,u=null,d=null,f=[];return{start(){e=Date.now()},end(){t=Date.now()},setCacheStatus(e){n=e},setCacheSource(e){r=e},addSessionUsed(e){i.includes(e)||i.push(e)},addSessionCreated(e){a.includes(e)||a.push(e)},addPRCreated(e){o.includes(e)||o.push(e)},addCommitCreated(e){s.includes(e)||s.push(e)},incrementComments(){c++},setTokenUsage(e,t,n){l=e,u=t,d=n},recordError(e,t,n){f.push({timestamp:new Date().toISOString(),type:e,message:t,recoverable:n})},getMetrics(){let p=t==null?Date.now()-e:t-e;return Object.freeze({startTime:e,endTime:t,duration:p,cacheStatus:n,cacheSource:r,sessionsUsed:Object.freeze([...i]),sessionsCreated:Object.freeze([...a]),prsCreated:Object.freeze([...o]),commitsCreated:Object.freeze([...s]),commentsPosted:c,tokenUsage:l,model:u,cost:d,errors:Object.freeze([...f])})}}}function $t(e){I(`session-id`,e.sessionId??``),I(`resolved-output-mode`,e.resolvedOutputMode??``),I(`cache-status`,e.cacheStatus),I(`duration`,e.duration)}function K(e){let[t,n]=e.split(`/`);if(t==null||n==null||t.length===0||n.length===0)throw Error(`Invalid repository string: ${e}`);return{owner:t,repo:n}}async function en(e,n,r,i,a){try{let{owner:t,repo:o}=K(n),{data:s}=await e.rest.reactions.createForIssueComment({owner:t,repo:o,comment_id:r,content:i});return a.debug(`Created comment reaction`,{commentId:r,content:i,reactionId:s.id}),{id:s.id}}catch(e){return a.warning(`Failed to create comment reaction`,{commentId:r,content:i,error:t(e)}),null}}async function tn(e,n,r,i){try{let{owner:t,repo:i}=K(n),{data:a}=await e.rest.reactions.listForIssueComment({owner:t,repo:i,comment_id:r,per_page:100});return a.map(e=>({id:e.id,content:e.content,userLogin:e.user?.login??null}))}catch(e){return i.warning(`Failed to list comment reactions`,{commentId:r,error:t(e)}),[]}}async function nn(e,n,r,i,a){try{let{owner:t,repo:o}=K(n);return await e.rest.reactions.deleteForIssueComment({owner:t,repo:o,comment_id:r,reaction_id:i}),a.debug(`Deleted comment reaction`,{commentId:r,reactionId:i}),!0}catch(e){return a.warning(`Failed to delete comment reaction`,{commentId:r,reactionId:i,error:t(e)}),!1}}async function rn(e,n,r,i,a,o){let{owner:s,repo:c}=K(n);try{return await e.rest.issues.createLabel({owner:s,repo:c,name:r,color:i,description:a}),o.debug(`Created label`,{name:r,color:i}),!0}catch(e){return e instanceof Error&&`status`in e&&e.status===422?(o.debug(`Label already exists`,{name:r}),!0):(o.warning(`Failed to create label`,{name:r,error:t(e)}),!1)}}async function an(e,n,r,i,a){try{let{owner:t,repo:o}=K(n);return await e.rest.issues.addLabels({owner:t,repo:o,issue_number:r,labels:[...i]}),a.debug(`Added labels to issue`,{issueNumber:r,labels:i}),!0}catch(e){return a.warning(`Failed to add labels to issue`,{issueNumber:r,labels:i,error:t(e)}),!1}}async function on(e,n,r,i,a){try{let{owner:t,repo:o}=K(n);return await e.rest.issues.removeLabel({owner:t,repo:o,issue_number:r,name:i}),a.debug(`Removed label from issue`,{issueNumber:r,label:i}),!0}catch(e){return e instanceof Error&&`status`in e&&e.status===404?(a.debug(`Label was not present on issue`,{issueNumber:r,label:i}),!0):(a.warning(`Failed to remove label from issue`,{issueNumber:r,label:i,error:t(e)}),!1)}}async function sn(e,n,r){try{let{owner:t,repo:r}=K(n),{data:i}=await e.rest.repos.get({owner:t,repo:r});return i.default_branch}catch(e){return r.warning(`Failed to get default branch`,{repo:n,error:t(e)}),`main`}}const cn={admin:`OWNER`,maintain:`MEMBER`,write:`COLLABORATOR`,triage:`COLLABORATOR`};async function ln(e,n,r,i,a){try{let{data:t}=await e.rest.repos.getCollaboratorPermissionLevel({owner:n,repo:r,username:i}),o=cn[t.permission]??null;return a.debug(`Resolved sender permission`,{username:i,permission:t.permission,association:o}),o}catch(e){return a.warning(`Failed to resolve sender permission`,{username:i,error:t(e)}),null}}async function un(e,n,r){try{let{data:t}=await e.rest.users.getByUsername({username:n});return{id:t.id,login:t.login}}catch(e){return r.debug(`Failed to get user by username`,{username:n,error:t(e)}),null}}const dn={maxComments:50,maxCommits:100,maxFiles:100,maxReviews:100,maxBodyBytes:10*1024,maxTotalBytes:100*1024},fn=`…[truncated]`;function pn(e,t){if(e.length===0)return{text:``,truncated:!1};let n=new TextEncoder,r=n.encode(e);if(r.length<=t)return{text:e,truncated:!1};let i=t-n.encode(fn).length;if(i<=0)return{text:fn,truncated:!0};let a=r.slice(0,i),o=new TextDecoder(`utf-8`,{fatal:!1}).decode(a);for(;o.length>0&&o.charCodeAt(o.length-1)===65533;)a=a.slice(0,-1),o=new TextDecoder(`utf-8`,{fatal:!1}).decode(a);return{text:o+fn,truncated:!0}}async function mn(e,n,r,i,a,o){try{let[t,o]=await Promise.all([e.rest.issues.get({owner:n,repo:r,issue_number:i}),e.rest.issues.listComments({owner:n,repo:r,issue_number:i,per_page:a.maxComments})]),s=t.data,c=pn(s.body??``,a.maxBodyBytes),l=o.data.slice(0,a.maxComments).map(e=>({id:e.node_id??String(e.id),author:e.user?.login??null,body:e.body??``,createdAt:e.created_at,authorAssociation:e.author_association,isMinimized:!1})),u=(s.labels??[]).filter(e=>typeof e==`object`&&!!e&&`name`in e).map(e=>({name:e.name??``,color:e.color})),d=(s.assignees??[]).map(e=>({login:e?.login??``}));return{type:`issue`,number:s.number,title:s.title,body:c.text,bodyTruncated:c.truncated,state:s.state,author:s.user?.login??null,createdAt:s.created_at,labels:u,assignees:d,comments:l,commentsTruncated:o.data.length>=a.maxComments,totalComments:o.data.length}}catch(e){return o.warning(`REST issue fallback failed`,{owner:n,repo:r,number:i,error:t(e)}),null}}async function hn(e,n,r,i,a,o){try{let[s,c,l,u,d]=await Promise.all([e.rest.pulls.get({owner:n,repo:r,pull_number:i}),e.rest.pulls.listCommits({owner:n,repo:r,pull_number:i,per_page:a.maxCommits}),e.rest.pulls.listFiles({owner:n,repo:r,pull_number:i,per_page:a.maxFiles}),e.rest.pulls.listReviews({owner:n,repo:r,pull_number:i,per_page:a.maxReviews}),e.rest.issues.listComments({owner:n,repo:r,issue_number:i,per_page:a.maxComments})]),f=await e.rest.pulls.listRequestedReviewers({owner:n,repo:r,pull_number:i}).catch(e=>(o.warning(`Failed to fetch requested reviewers, defaulting to empty`,{owner:n,repo:r,number:i,error:t(e)}),{data:{users:[],teams:[]}})),p=s.data,m=pn(p.body??``,a.maxBodyBytes),h=p.base.repo?.owner.login,g=p.head.repo?.owner.login,_=g==null||h!==g,v=d.data.slice(0,a.maxComments).map(e=>({id:e.node_id??String(e.id),author:e.user?.login??null,body:e.body??``,createdAt:e.created_at,authorAssociation:e.author_association,isMinimized:!1})),y=c.data.slice(0,a.maxCommits).map(e=>({oid:e.sha,message:e.commit.message,author:e.commit.author?.name??null})),b=l.data.slice(0,a.maxFiles).map(e=>({path:e.filename,additions:e.additions,deletions:e.deletions,status:e.status})),x=u.data.slice(0,a.maxReviews).map(e=>({author:e.user?.login??null,state:e.state,body:e.body??``,createdAt:e.submitted_at??``,comments:[]})),S=(p.labels??[]).map(e=>({name:e.name??``,color:e.color})),C=(p.assignees??[]).map(e=>({login:e?.login??``})),w=(f.data.users??[]).map(e=>e.login),T=(f.data.teams??[]).map(e=>e.name);return{type:`pull_request`,number:p.number,title:p.title,body:m.text,bodyTruncated:m.truncated,state:p.state,author:p.user?.login??null,createdAt:p.created_at,baseBranch:p.base.ref,headBranch:p.head.ref,isFork:_,labels:S,assignees:C,comments:v,commentsTruncated:d.data.length>=a.maxComments,totalComments:d.data.length,commits:y,commitsTruncated:c.data.length>=a.maxCommits,totalCommits:c.data.length,files:b,filesTruncated:l.data.length>=a.maxFiles,totalFiles:l.data.length,reviews:x,reviewsTruncated:u.data.length>=a.maxReviews,totalReviews:u.data.length,authorAssociation:p.author_association,requestedReviewers:w,requestedReviewerTeams:T}}catch(e){return o.warning(`REST pull request fallback failed`,{owner:n,repo:r,number:i,error:t(e)}),null}}async function gn(e,n,r,i,a,o){try{return await e.graphql(` query GetIssue($owner: String!, $repo: String!, $number: Int!, $maxComments: Int!) { repository(owner: $owner, name: $repo) { diff --git a/dist/post.js b/dist/post.js index d9ba2101..77da3a76 100644 --- a/dist/post.js +++ b/dist/post.js @@ -1 +1 @@ -import{$ as e,B as t,F as n,I as r,L as i,M as a,N as o,a as s,ct as c,d as l,f as u,h as d,j as f,m as p,n as m,p as h,t as g}from"./artifact-X8n9-E0a.js";function _(e){let t=c(e);return t.length>0?t:void 0}function v(){let e=_(l.S3_ENABLED),t=_(l.S3_BUCKET),n=_(l.S3_PREFIX);if(e==null||t==null||n==null)return;let r=_(l.S3_REGION)??``,i=_(l.S3_ENDPOINT),a=_(l.S3_EXPECTED_BUCKET_OWNER),o=_(l.S3_ALLOW_INSECURE_ENDPOINT),s=_(l.S3_SSE_ENCRYPTION),c=_(l.S3_SSE_KMS_KEY_ID);return{enabled:e===`true`,bucket:t,region:r,prefix:n,endpoint:i,expectedBucketOwner:a,allowInsecureEndpoint:o===`true`,sseEncryption:s===`aws:kms`||s===`AES256`?s:void 0,sseKmsKeyId:c}}async function y(_={}){let y=_.logger??u({phase:`post`}),b=c(l.SHOULD_SAVE_CACHE),x=c(l.CACHE_SAVED),S=c(l.SESSION_ID)||null,C=c(l.OPENCODE_VERSION)||null,w=v();if(y.debug(`Post-action state`,{shouldSaveCache:b,cacheSaved:x,sessionId:S,opencodeVersion:C,hasStoreConfig:w!=null}),b!==`true`){y.info(`Skipping post-action: event was not processed`,{shouldSaveCache:b});return}if(x===`true`)y.info(`Skipping post-action: cache already saved by main action`,{cacheSaved:x});else{let t=String(o());try{await m({components:s(),runId:o(),logger:y,storagePath:i(),authPath:n(),opencodeVersion:C,...w==null?{}:{storeConfig:w}})?y.info(`Post-action cache saved`,{sessionId:S}):y.info(`Post-action: no cache content to save`,{sessionId:S})}catch(t){y.warning(`Post-action cache save failed (non-fatal)`,{error:e(t)})}if(w?.enabled===!0)try{let e=u({phase:`post-object-store`}),n=h(w,e),i=f(),o=a();await d(n,w,`github`,i,t,{runId:t,timestamp:new Date().toISOString(),cleanupSkipped:!0,runAttempt:o},e),await p(n,w,`github`,i,t,r(),e)}catch(t){y.warning(`Post-action object store sync failed (non-fatal)`,{error:e(t)})}}if(t()&&c(l.ARTIFACT_UPLOADED)!==`true`)try{let e=u({phase:`post-artifact-upload`});await g({logPath:r(),runId:o(),runAttempt:a(),logger:e})}catch(t){y.warning(`Post-action artifact upload failed (non-fatal)`,{error:e(t)})}}await y();export{}; \ No newline at end of file +import{$ as e,B as t,F as n,I as r,L as i,M as a,N as o,a as s,ct as c,d as l,f as u,h as d,j as f,m as p,n as m,p as h,t as g}from"./artifact-TLiPkbkg.js";function _(e){let t=c(e);return t.length>0?t:void 0}function v(){let e=_(l.S3_ENABLED),t=_(l.S3_BUCKET),n=_(l.S3_PREFIX);if(e==null||t==null||n==null)return;let r=_(l.S3_REGION)??``,i=_(l.S3_ENDPOINT),a=_(l.S3_EXPECTED_BUCKET_OWNER),o=_(l.S3_ALLOW_INSECURE_ENDPOINT),s=_(l.S3_SSE_ENCRYPTION),c=_(l.S3_SSE_KMS_KEY_ID);return{enabled:e===`true`,bucket:t,region:r,prefix:n,endpoint:i,expectedBucketOwner:a,allowInsecureEndpoint:o===`true`,sseEncryption:s===`aws:kms`||s===`AES256`?s:void 0,sseKmsKeyId:c}}async function y(_={}){let y=_.logger??u({phase:`post`}),b=c(l.SHOULD_SAVE_CACHE),x=c(l.CACHE_SAVED),S=c(l.SESSION_ID)||null,C=c(l.OPENCODE_VERSION)||null,w=v();if(y.debug(`Post-action state`,{shouldSaveCache:b,cacheSaved:x,sessionId:S,opencodeVersion:C,hasStoreConfig:w!=null}),b!==`true`){y.info(`Skipping post-action: event was not processed`,{shouldSaveCache:b});return}if(x===`true`)y.info(`Skipping post-action: cache already saved by main action`,{cacheSaved:x});else{let t=String(o());try{await m({components:s(),runId:o(),logger:y,storagePath:i(),authPath:n(),opencodeVersion:C,...w==null?{}:{storeConfig:w}})?y.info(`Post-action cache saved`,{sessionId:S}):y.info(`Post-action: no cache content to save`,{sessionId:S})}catch(t){y.warning(`Post-action cache save failed (non-fatal)`,{error:e(t)})}if(w?.enabled===!0)try{let e=u({phase:`post-object-store`}),n=h(w,e),i=f(),o=a();await d(n,w,`github`,i,t,{runId:t,timestamp:new Date().toISOString(),cleanupSkipped:!0,runAttempt:o},e),await p(n,w,`github`,i,t,r(),e)}catch(t){y.warning(`Post-action object store sync failed (non-fatal)`,{error:e(t)})}}if(t()&&c(l.ARTIFACT_UPLOADED)!==`true`)try{let e=u({phase:`post-artifact-upload`});await g({logPath:r(),runId:o(),runAttempt:a(),logger:e})}catch(t){y.warning(`Post-action artifact upload failed (non-fatal)`,{error:e(t)})}}await y();export{}; \ No newline at end of file diff --git a/package.json b/package.json index 77b366a7..55fd7556 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "prettier": "@bfra.me/prettier-config/120-proof", "dependencies": { "@actions/artifact": "6.2.1", - "@actions/cache": "6.0.0", + "@actions/cache": "6.0.1", "@actions/core": "3.0.1", "@actions/exec": "3.0.0", "@actions/github": "9.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1c97a99a..15199040 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28,8 +28,8 @@ importers: specifier: 6.2.1 version: 6.2.1 '@actions/cache': - specifier: 6.0.0 - version: 6.0.0 + specifier: 6.0.1 + version: 6.0.1 '@actions/core': specifier: 3.0.1 version: 3.0.1 @@ -173,8 +173,8 @@ packages: '@actions/artifact@6.2.1': resolution: {integrity: sha512-sJGH0mhEbEjBCw7o6SaLhUU66u27aFW8HTfkIb5Tk2/Wy0caUDc+oYQEgnuFN7a0HCpAbQyK0U6U7XUJDgDWrw==} - '@actions/cache@6.0.0': - resolution: {integrity: sha512-+tCs634SyGBQJ3KU1rtAVabmN/gYiT9WgzTSJzWwdPCLmM3zWrdbysaErKv8HyI6OozClrxNvDgPjJimbHZZvw==} + '@actions/cache@6.0.1': + resolution: {integrity: sha512-kcM23yPzDQEME05ZFV/bRzsHS9yDzCe97F7guF9+c/jJwE9ns+gFQt3MmnRXOHh1DsnlNuKcIwXYdnt4kHLGqg==} '@actions/core@3.0.1': resolution: {integrity: sha512-a6d/Nwahm9fliVGRhdhofo40HjHQasUPusmc7vBfyky+7Z+P2A1J68zyFVaNcEclc/Se+eO595oAr5nwEIoIUA==} @@ -191,8 +191,8 @@ packages: '@actions/http-client@3.0.2': resolution: {integrity: sha512-JP38FYYpyqvUsz+Igqlc/JG6YO9PaKuvqjM3iGvaLqFnJ7TFmcLyy2IDrY0bI0qCQug8E9K+elv5ZNfw62ZJzA==} - '@actions/http-client@4.0.0': - resolution: {integrity: sha512-QuwPsgVMsD6qaPD57GLZi9sqzAZCtiJT8kVBCDpLtxhL5MydQ4gS+DrejtZZPdIYyB1e95uCK9Luyds7ybHI3g==} + '@actions/http-client@4.0.1': + resolution: {integrity: sha512-+Nvd1ImaOZBSoPbsUtEhv+1z99H12xzncCkz0a3RuehINE81FZSe2QTj3uvAPTcJX/SCzUQHQ0D1GrPMbrPitg==} '@actions/io@3.0.2': resolution: {integrity: sha512-nRBchcMM+QK1pdjO7/idu86rbJI5YHUKCvKs0KxnSYbVe3F51UfGxuZX4Qy/fWlp6l7gWFwIkrOzN+oUK03kfw==} @@ -5055,7 +5055,7 @@ snapshots: dependencies: '@actions/core': 3.0.1 '@actions/github': 9.1.1 - '@actions/http-client': 4.0.0 + '@actions/http-client': 4.0.1 '@azure/storage-blob': 12.31.0 '@octokit/core': 7.0.6 '@octokit/plugin-request-log': 6.0.0(@octokit/core@7.0.6) @@ -5073,12 +5073,12 @@ snapshots: - react-native-b4a - supports-color - '@actions/cache@6.0.0': + '@actions/cache@6.0.1': dependencies: '@actions/core': 3.0.1 '@actions/exec': 3.0.0 '@actions/glob': 0.6.1 - '@actions/http-client': 4.0.0 + '@actions/http-client': 4.0.1 '@actions/io': 3.0.2 '@azure/core-rest-pipeline': 1.23.0 '@azure/storage-blob': 12.31.0 @@ -5090,7 +5090,7 @@ snapshots: '@actions/core@3.0.1': dependencies: '@actions/exec': 3.0.0 - '@actions/http-client': 4.0.0 + '@actions/http-client': 4.0.1 '@actions/exec@3.0.0': dependencies: @@ -5116,7 +5116,7 @@ snapshots: tunnel: 0.0.6 undici: 6.24.1 - '@actions/http-client@4.0.0': + '@actions/http-client@4.0.1': dependencies: tunnel: 0.0.6 undici: 6.24.1 @@ -5127,7 +5127,7 @@ snapshots: dependencies: '@actions/core': 3.0.1 '@actions/exec': 3.0.0 - '@actions/http-client': 4.0.0 + '@actions/http-client': 4.0.1 '@actions/io': 3.0.2 semver: 7.7.4