@ubec/llms 1.0.51 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/server.cjs +54 -53
- package/dist/cjs/server.cjs.map +4 -4
- package/dist/esm/server.mjs +55 -54
- package/dist/esm/server.mjs.map +4 -4
- package/package.json +1 -1
package/dist/cjs/server.cjs
CHANGED
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
"use strict";var P_=Object.create;var $o=Object.defineProperty;var I_=Object.getOwnPropertyDescriptor;var N_=Object.getOwnPropertyNames;var B_=Object.getPrototypeOf,j_=Object.prototype.hasOwnProperty;var Be=(t,e)=>()=>(t&&(e=t(t=0)),e);var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Cu=(t,e)=>{for(var r in e)$o(t,r,{get:e[r],enumerable:!0})},Pd=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of N_(e))!j_.call(t,s)&&s!==r&&$o(t,s,{get:()=>e[s],enumerable:!(n=I_(e,s))||n.enumerable});return t};var Ue=(t,e,r)=>(r=t!=null?P_(B_(t)):{},Pd(e||!t||!t.__esModule?$o(r,"default",{value:t,enumerable:!0}):r,t)),q_=t=>Pd($o({},"__esModule",{value:!0}),t);var Id=J((YD,zo)=>{zo.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;zo.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;zo.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/});var Eu=J((XD,Nd)=>{var wu=Id();Nd.exports={isSpaceSeparator(t){return typeof t=="string"&&wu.Space_Separator.test(t)},isIdStartChar(t){return typeof t=="string"&&(t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="$"||t==="_"||wu.ID_Start.test(t))},isIdContinueChar(t){return typeof t=="string"&&(t>="a"&&t<="z"||t>="A"&&t<="Z"||t>="0"&&t<="9"||t==="$"||t==="_"||t==="\u200C"||t==="\u200D"||wu.ID_Continue.test(t))},isDigit(t){return typeof t=="string"&&/[0-9]/.test(t)},isHexDigit(t){return typeof t=="string"&&/[0-9A-Fa-f]/.test(t)}}});var Ud=J((QD,Ld)=>{var $e=Eu(),Su,Ze,gr,Wo,Nr,jt,ze,Tu,Cs;Ld.exports=function(e,r){Su=String(e),Ze="start",gr=[],Wo=0,Nr=1,jt=0,ze=void 0,Tu=void 0,Cs=void 0;do ze=L_(),$_[Ze]();while(ze.type!=="eof");return typeof r=="function"?ku({"":Cs},"",r):Cs};function ku(t,e,r){let n=t[e];if(n!=null&&typeof n=="object")if(Array.isArray(n))for(let s=0;s<n.length;s++){let i=String(s),u=ku(n,i,r);u===void 0?delete n[i]:Object.defineProperty(n,i,{value:u,writable:!0,enumerable:!0,configurable:!0})}else for(let s in n){let i=ku(n,s,r);i===void 0?delete n[s]:Object.defineProperty(n,s,{value:i,writable:!0,enumerable:!0,configurable:!0})}return r.call(t,e,n)}var pe,de,bs,mr,be;function L_(){for(pe="default",de="",bs=!1,mr=1;;){be=yr();let t=jd[pe]();if(t)return t}}function yr(){if(Su[Wo])return String.fromCodePoint(Su.codePointAt(Wo))}function H(){let t=yr();return t===`
|
|
2
|
-
`?(Nr++,jt=0):t?jt+=t.length:jt++,t&&(Wo+=t.length),t}var
|
|
3
|
-
`:case"\r":case"\u2028":case"\u2029":H();return;case"/":H(),pe="comment";return;case void 0:return H(),xe("eof")}if($e.isSpaceSeparator(be)){H();return}return
|
|
4
|
-
`:case"\r":case"\u2028":case"\u2029":H(),pe="default";return;case void 0:return H(),xe("eof")}H()},value(){switch(be){case"{":case"[":return xe("punctuator",H());case"n":return H(),en("ull"),xe("null",null);case"t":return H(),en("rue"),xe("boolean",!0);case"f":return H(),en("alse"),xe("boolean",!1);case"-":case"+":H()==="-"&&(mr=-1),pe="sign";return;case".":de=H(),pe="decimalPointLeading";return;case"0":de=H(),pe="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":de=H(),pe="decimalInteger";return;case"I":return H(),en("nfinity"),xe("numeric",1/0);case"N":return H(),en("aN"),xe("numeric",NaN);case'"':case"'":bs=H()==='"',de="",pe="string";return}throw Pe(H())},identifierNameStartEscape(){if(be!=="u")throw Pe(H());H();let t=
|
|
5
|
-
`:case"\r":throw Pe(H());case"\u2028":case"\u2029":
|
|
6
|
-
`;case"r":return H(),"\r";case"t":return H()," ";case"v":return H(),"\v";case"0":if(H(),$e.isDigit(yr()))throw Pe(H());return"\0";case"x":return H()
|
|
1
|
+
"use strict";var I_=Object.create;var $o=Object.defineProperty;var N_=Object.getOwnPropertyDescriptor;var B_=Object.getOwnPropertyNames;var j_=Object.getPrototypeOf,q_=Object.prototype.hasOwnProperty;var Be=(t,e)=>()=>(t&&(e=t(t=0)),e);var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),wu=(t,e)=>{for(var r in e)$o(t,r,{get:e[r],enumerable:!0})},Id=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of B_(e))!q_.call(t,s)&&s!==r&&$o(t,s,{get:()=>e[s],enumerable:!(n=N_(e,s))||n.enumerable});return t};var Ue=(t,e,r)=>(r=t!=null?I_(j_(t)):{},Id(e||!t||!t.__esModule?$o(r,"default",{value:t,enumerable:!0}):r,t)),L_=t=>Id($o({},"__esModule",{value:!0}),t);var Nd=J((XD,zo)=>{zo.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;zo.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;zo.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/});var Au=J((QD,Bd)=>{var Eu=Nd();Bd.exports={isSpaceSeparator(t){return typeof t=="string"&&Eu.Space_Separator.test(t)},isIdStartChar(t){return typeof t=="string"&&(t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="$"||t==="_"||Eu.ID_Start.test(t))},isIdContinueChar(t){return typeof t=="string"&&(t>="a"&&t<="z"||t>="A"&&t<="Z"||t>="0"&&t<="9"||t==="$"||t==="_"||t==="\u200C"||t==="\u200D"||Eu.ID_Continue.test(t))},isDigit(t){return typeof t=="string"&&/[0-9]/.test(t)},isHexDigit(t){return typeof t=="string"&&/[0-9A-Fa-f]/.test(t)}}});var Md=J((ZD,Ud)=>{var $e=Au(),ku,Ze,gr,Wo,Nr,jt,ze,vu,Cs;Ud.exports=function(e,r){ku=String(e),Ze="start",gr=[],Wo=0,Nr=1,jt=0,ze=void 0,vu=void 0,Cs=void 0;do ze=U_(),z_[Ze]();while(ze.type!=="eof");return typeof r=="function"?Du({"":Cs},"",r):Cs};function Du(t,e,r){let n=t[e];if(n!=null&&typeof n=="object")if(Array.isArray(n))for(let s=0;s<n.length;s++){let i=String(s),u=Du(n,i,r);u===void 0?delete n[i]:Object.defineProperty(n,i,{value:u,writable:!0,enumerable:!0,configurable:!0})}else for(let s in n){let i=Du(n,s,r);i===void 0?delete n[s]:Object.defineProperty(n,s,{value:i,writable:!0,enumerable:!0,configurable:!0})}return r.call(t,e,n)}var pe,de,bs,mr,be;function U_(){for(pe="default",de="",bs=!1,mr=1;;){be=yr();let t=qd[pe]();if(t)return t}}function yr(){if(ku[Wo])return String.fromCodePoint(ku.codePointAt(Wo))}function H(){let t=yr();return t===`
|
|
2
|
+
`?(Nr++,jt=0):t?jt+=t.length:jt++,t&&(Wo+=t.length),t}var qd={default(){switch(be){case" ":case"\v":case"\f":case" ":case"\xA0":case"\uFEFF":case`
|
|
3
|
+
`:case"\r":case"\u2028":case"\u2029":H();return;case"/":H(),pe="comment";return;case void 0:return H(),xe("eof")}if($e.isSpaceSeparator(be)){H();return}return qd[Ze]()},comment(){switch(be){case"*":H(),pe="multiLineComment";return;case"/":H(),pe="singleLineComment";return}throw Pe(H())},multiLineComment(){switch(be){case"*":H(),pe="multiLineCommentAsterisk";return;case void 0:throw Pe(H())}H()},multiLineCommentAsterisk(){switch(be){case"*":H();return;case"/":H(),pe="default";return;case void 0:throw Pe(H())}H(),pe="multiLineComment"},singleLineComment(){switch(be){case`
|
|
4
|
+
`:case"\r":case"\u2028":case"\u2029":H(),pe="default";return;case void 0:return H(),xe("eof")}H()},value(){switch(be){case"{":case"[":return xe("punctuator",H());case"n":return H(),en("ull"),xe("null",null);case"t":return H(),en("rue"),xe("boolean",!0);case"f":return H(),en("alse"),xe("boolean",!1);case"-":case"+":H()==="-"&&(mr=-1),pe="sign";return;case".":de=H(),pe="decimalPointLeading";return;case"0":de=H(),pe="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":de=H(),pe="decimalInteger";return;case"I":return H(),en("nfinity"),xe("numeric",1/0);case"N":return H(),en("aN"),xe("numeric",NaN);case'"':case"'":bs=H()==='"',de="",pe="string";return}throw Pe(H())},identifierNameStartEscape(){if(be!=="u")throw Pe(H());H();let t=Tu();switch(t){case"$":case"_":break;default:if(!$e.isIdStartChar(t))throw jd();break}de+=t,pe="identifierName"},identifierName(){switch(be){case"$":case"_":case"\u200C":case"\u200D":de+=H();return;case"\\":H(),pe="identifierNameEscape";return}if($e.isIdContinueChar(be)){de+=H();return}return xe("identifier",de)},identifierNameEscape(){if(be!=="u")throw Pe(H());H();let t=Tu();switch(t){case"$":case"_":case"\u200C":case"\u200D":break;default:if(!$e.isIdContinueChar(t))throw jd();break}de+=t,pe="identifierName"},sign(){switch(be){case".":de=H(),pe="decimalPointLeading";return;case"0":de=H(),pe="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":de=H(),pe="decimalInteger";return;case"I":return H(),en("nfinity"),xe("numeric",mr*(1/0));case"N":return H(),en("aN"),xe("numeric",NaN)}throw Pe(H())},zero(){switch(be){case".":de+=H(),pe="decimalPoint";return;case"e":case"E":de+=H(),pe="decimalExponent";return;case"x":case"X":de+=H(),pe="hexadecimal";return}return xe("numeric",mr*0)},decimalInteger(){switch(be){case".":de+=H(),pe="decimalPoint";return;case"e":case"E":de+=H(),pe="decimalExponent";return}if($e.isDigit(be)){de+=H();return}return xe("numeric",mr*Number(de))},decimalPointLeading(){if($e.isDigit(be)){de+=H(),pe="decimalFraction";return}throw Pe(H())},decimalPoint(){switch(be){case"e":case"E":de+=H(),pe="decimalExponent";return}if($e.isDigit(be)){de+=H(),pe="decimalFraction";return}return xe("numeric",mr*Number(de))},decimalFraction(){switch(be){case"e":case"E":de+=H(),pe="decimalExponent";return}if($e.isDigit(be)){de+=H();return}return xe("numeric",mr*Number(de))},decimalExponent(){switch(be){case"+":case"-":de+=H(),pe="decimalExponentSign";return}if($e.isDigit(be)){de+=H(),pe="decimalExponentInteger";return}throw Pe(H())},decimalExponentSign(){if($e.isDigit(be)){de+=H(),pe="decimalExponentInteger";return}throw Pe(H())},decimalExponentInteger(){if($e.isDigit(be)){de+=H();return}return xe("numeric",mr*Number(de))},hexadecimal(){if($e.isHexDigit(be)){de+=H(),pe="hexadecimalInteger";return}throw Pe(H())},hexadecimalInteger(){if($e.isHexDigit(be)){de+=H();return}return xe("numeric",mr*Number(de))},string(){switch(be){case"\\":H(),de+=M_();return;case'"':if(bs)return H(),xe("string",de);de+=H();return;case"'":if(!bs)return H(),xe("string",de);de+=H();return;case`
|
|
5
|
+
`:case"\r":throw Pe(H());case"\u2028":case"\u2029":H_(be);break;case void 0:throw Pe(H())}de+=H()},start(){switch(be){case"{":case"[":return xe("punctuator",H())}pe="value"},beforePropertyName(){switch(be){case"$":case"_":de=H(),pe="identifierName";return;case"\\":H(),pe="identifierNameStartEscape";return;case"}":return xe("punctuator",H());case'"':case"'":bs=H()==='"',pe="string";return}if($e.isIdStartChar(be)){de+=H(),pe="identifierName";return}throw Pe(H())},afterPropertyName(){if(be===":")return xe("punctuator",H());throw Pe(H())},beforePropertyValue(){pe="value"},afterPropertyValue(){switch(be){case",":case"}":return xe("punctuator",H())}throw Pe(H())},beforeArrayValue(){if(be==="]")return xe("punctuator",H());pe="value"},afterArrayValue(){switch(be){case",":case"]":return xe("punctuator",H())}throw Pe(H())},end(){throw Pe(H())}};function xe(t,e){return{type:t,value:e,line:Nr,column:jt}}function en(t){for(let e of t){if(yr()!==e)throw Pe(H());H()}}function M_(){switch(yr()){case"b":return H(),"\b";case"f":return H(),"\f";case"n":return H(),`
|
|
6
|
+
`;case"r":return H(),"\r";case"t":return H()," ";case"v":return H(),"\v";case"0":if(H(),$e.isDigit(yr()))throw Pe(H());return"\0";case"x":return H(),$_();case"u":return H(),Tu();case`
|
|
7
7
|
`:case"\u2028":case"\u2029":return H(),"";case"\r":return H(),yr()===`
|
|
8
|
-
`&&H(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw Pe(H());case void 0:throw Pe(H())}return H()}function
|
|
8
|
+
`&&H(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw Pe(H());case void 0:throw Pe(H())}return H()}function $_(){let t="",e=yr();if(!$e.isHexDigit(e)||(t+=H(),e=yr(),!$e.isHexDigit(e)))throw Pe(H());return t+=H(),String.fromCodePoint(parseInt(t,16))}function Tu(){let t="",e=4;for(;e-- >0;){let r=yr();if(!$e.isHexDigit(r))throw Pe(H());t+=H()}return String.fromCodePoint(parseInt(t,16))}var z_={start(){if(ze.type==="eof")throw tn();Su()},beforePropertyName(){switch(ze.type){case"identifier":case"string":vu=ze.value,Ze="afterPropertyName";return;case"punctuator":Ho();return;case"eof":throw tn()}},afterPropertyName(){if(ze.type==="eof")throw tn();Ze="beforePropertyValue"},beforePropertyValue(){if(ze.type==="eof")throw tn();Su()},beforeArrayValue(){if(ze.type==="eof")throw tn();if(ze.type==="punctuator"&&ze.value==="]"){Ho();return}Su()},afterPropertyValue(){if(ze.type==="eof")throw tn();switch(ze.value){case",":Ze="beforePropertyName";return;case"}":Ho()}},afterArrayValue(){if(ze.type==="eof")throw tn();switch(ze.value){case",":Ze="beforeArrayValue";return;case"]":Ho()}},end(){}};function Su(){let t;switch(ze.type){case"punctuator":switch(ze.value){case"{":t={};break;case"[":t=[];break}break;case"null":case"boolean":case"numeric":case"string":t=ze.value;break}if(Cs===void 0)Cs=t;else{let e=gr[gr.length-1];Array.isArray(e)?e.push(t):Object.defineProperty(e,vu,{value:t,writable:!0,enumerable:!0,configurable:!0})}if(t!==null&&typeof t=="object")gr.push(t),Array.isArray(t)?Ze="beforeArrayValue":Ze="beforePropertyName";else{let e=gr[gr.length-1];e==null?Ze="end":Array.isArray(e)?Ze="afterArrayValue":Ze="afterPropertyValue"}}function Ho(){gr.pop();let t=gr[gr.length-1];t==null?Ze="end":Array.isArray(t)?Ze="afterArrayValue":Ze="afterPropertyValue"}function Pe(t){return Go(t===void 0?`JSON5: invalid end of input at ${Nr}:${jt}`:`JSON5: invalid character '${Ld(t)}' at ${Nr}:${jt}`)}function tn(){return Go(`JSON5: invalid end of input at ${Nr}:${jt}`)}function jd(){return jt-=5,Go(`JSON5: invalid identifier character at ${Nr}:${jt}`)}function H_(t){console.warn(`JSON5: '${Ld(t)}' in strings is not valid ECMAScript; consider escaping`)}function Ld(t){let e={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(e[t])return e[t];if(t<" "){let r=t.charCodeAt(0).toString(16);return"\\x"+("00"+r).substring(r.length)}return t}function Go(t){let e=new SyntaxError(t);return e.lineNumber=Nr,e.columnNumber=jt,e}});var zd=J((eT,$d)=>{var Ru=Au();$d.exports=function(e,r,n){let s=[],i="",u,c,l="",h;if(r!=null&&typeof r=="object"&&!Array.isArray(r)&&(n=r.space,h=r.quote,r=r.replacer),typeof r=="function")c=r;else if(Array.isArray(r)){u=[];for(let _ of r){let y;typeof _=="string"?y=_:(typeof _=="number"||_ instanceof String||_ instanceof Number)&&(y=String(_)),y!==void 0&&u.indexOf(y)<0&&u.push(y)}}return n instanceof Number?n=Number(n):n instanceof String&&(n=String(n)),typeof n=="number"?n>0&&(n=Math.min(10,Math.floor(n)),l=" ".substr(0,n)):typeof n=="string"&&(l=n.substr(0,10)),d("",{"":e});function d(_,y){let m=y[_];switch(m!=null&&(typeof m.toJSON5=="function"?m=m.toJSON5(_):typeof m.toJSON=="function"&&(m=m.toJSON(_))),c&&(m=c.call(y,_,m)),m instanceof Number?m=Number(m):m instanceof String?m=String(m):m instanceof Boolean&&(m=m.valueOf()),m){case null:return"null";case!0:return"true";case!1:return"false"}if(typeof m=="string")return p(m,!1);if(typeof m=="number")return String(m);if(typeof m=="object")return Array.isArray(m)?S(m):A(m)}function p(_){let y={"'":.1,'"':.2},m={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},D="";for(let E=0;E<_.length;E++){let v=_[E];switch(v){case"'":case'"':y[v]++,D+=v;continue;case"\0":if(Ru.isDigit(_[E+1])){D+="\\x00";continue}}if(m[v]){D+=m[v];continue}if(v<" "){let x=v.charCodeAt(0).toString(16);D+="\\x"+("00"+x).substring(x.length);continue}D+=v}let C=h||Object.keys(y).reduce((E,v)=>y[E]<y[v]?E:v);return D=D.replace(new RegExp(C,"g"),m[C]),C+D+C}function A(_){if(s.indexOf(_)>=0)throw TypeError("Converting circular structure to JSON5");s.push(_);let y=i;i=i+l;let m=u||Object.keys(_),D=[];for(let E of m){let v=d(E,_);if(v!==void 0){let x=R(E)+":";l!==""&&(x+=" "),x+=v,D.push(x)}}let C;if(D.length===0)C="{}";else{let E;if(l==="")E=D.join(","),C="{"+E+"}";else{let v=`,
|
|
9
9
|
`+i;E=D.join(v),C=`{
|
|
10
10
|
`+i+E+`,
|
|
11
|
-
`+y+"}"}}return s.pop(),i=y,C}function R(_){if(_.length===0)return p(_,!0);let y=String.fromCodePoint(_.codePointAt(0));if(!
|
|
11
|
+
`+y+"}"}}return s.pop(),i=y,C}function R(_){if(_.length===0)return p(_,!0);let y=String.fromCodePoint(_.codePointAt(0));if(!Ru.isIdStartChar(y))return p(_,!0);for(let m=y.length;m<_.length;m++)if(!Ru.isIdContinueChar(String.fromCodePoint(_.codePointAt(m))))return p(_,!0);return _}function S(_){if(s.indexOf(_)>=0)throw TypeError("Converting circular structure to JSON5");s.push(_);let y=i;i=i+l;let m=[];for(let C=0;C<_.length;C++){let E=d(String(C),_);m.push(E!==void 0?E:"null")}let D;if(m.length===0)D="[]";else if(l==="")D="["+m.join(",")+"]";else{let C=`,
|
|
12
12
|
`+i,E=m.join(C);D=`[
|
|
13
13
|
`+i+E+`,
|
|
14
|
-
`+y+"]"}return s.pop(),i=y,D}}});var
|
|
15
|
-
`)||n,code:i,status:s},e.data.error)}return Object.assign({message:n,code:i,status:s},e.data.error)}}return{message:n,code:e.status,status:e.statusText}}};At.GaxiosError=Bu;function sb(t,e){switch(t){case"stream":return e;case"json":return JSON.parse(JSON.stringify(e));case"arraybuffer":return JSON.parse(Buffer.from(e).toString("utf8"));case"blob":return JSON.parse(e.text());default:return e}}function _h(t){let e="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function r(i){i&&i.forEach((u,c)=>{(/^authentication$/i.test(c)||/^authorization$/i.test(c)||/secret/i.test(c))&&i.set(c,e)})}function n(i,u){if(typeof i=="object"&&i!==null&&typeof i[u]=="string"){let c=i[u];(/grant_type=/i.test(c)||/assertion=/i.test(c)||/secret/i.test(c))&&(i[u]=e)}}function s(i){!i||typeof i!="object"||(i instanceof FormData||i instanceof URLSearchParams||"forEach"in i&&"set"in i?i.forEach((u,c)=>{(["grant_type","assertion"].includes(c)||/secret/.test(c))&&i.set(c,e)}):("grant_type"in i&&(i.grant_type=e),"assertion"in i&&(i.assertion=e),"client_secret"in i&&(i.client_secret=e)))}return t.config&&(r(t.config.headers),n(t.config,"data"),s(t.config.data),n(t.config,"body"),s(t.config.body),t.config.url.searchParams.has("token")&&t.config.url.searchParams.set("token",e),t.config.url.searchParams.has("client_secret")&&t.config.url.searchParams.set("client_secret",e)),t.response&&(_h({config:t.response.config}),r(t.response.headers),t.response.bodyUsed&&(n(t.response,"data"),s(t.response.data))),t}});var Ch=J(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});qu.getRetryConfig=ob;async function ob(t){let e=bh(t);if(!t||!t.config||!e&&!t.config.retry)return{shouldRetry:!1};e=e||{},e.currentRetryAttempt=e.currentRetryAttempt||0,e.retry=e.retry===void 0||e.retry===null?3:e.retry,e.httpMethodsToRetry=e.httpMethodsToRetry||["GET","HEAD","PUT","OPTIONS","DELETE"],e.noResponseRetries=e.noResponseRetries===void 0||e.noResponseRetries===null?2:e.noResponseRetries,e.retryDelayMultiplier=e.retryDelayMultiplier?e.retryDelayMultiplier:2,e.timeOfFirstRequest=e.timeOfFirstRequest?e.timeOfFirstRequest:Date.now(),e.totalTimeout=e.totalTimeout?e.totalTimeout:Number.MAX_SAFE_INTEGER,e.maxRetryDelay=e.maxRetryDelay?e.maxRetryDelay:Number.MAX_SAFE_INTEGER;let r=[[100,199],[408,408],[429,429],[500,599]];if(e.statusCodesToRetry=e.statusCodesToRetry||r,t.config.retryConfig=e,!await(e.shouldRetry||ib)(t))return{shouldRetry:!1,config:t.config};let s=ab(e);t.config.retryConfig.currentRetryAttempt+=1;let i=e.retryBackoff?e.retryBackoff(t,s):new Promise(u=>{setTimeout(u,s)});return e.onRetryAttempt&&await e.onRetryAttempt(t),await i,{shouldRetry:!0,config:t.config}}function ib(t){let e=bh(t);if(t.config.signal?.aborted&&t.code!=="TimeoutError"||t.code==="AbortError"||!e||e.retry===0||!t.response&&(e.currentRetryAttempt||0)>=e.noResponseRetries||!e.httpMethodsToRetry||!e.httpMethodsToRetry.includes(t.config.method?.toUpperCase()||"GET"))return!1;if(t.response&&t.response.status){let r=!1;for(let[n,s]of e.statusCodesToRetry){let i=t.response.status;if(i>=n&&i<=s){r=!0;break}}if(!r)return!1}return e.currentRetryAttempt=e.currentRetryAttempt||0,!(e.currentRetryAttempt>=e.retry)}function bh(t){if(t&&t.config&&t.config.retryConfig)return t.config.retryConfig}function ab(t){let r=(t.currentRetryAttempt?0:t.retryDelay??100)+(Math.pow(t.retryDelayMultiplier,t.currentRetryAttempt)-1)/2*1e3,n=t.totalTimeout-(Date.now()-t.timeOfFirstRequest);return Math.min(r,n,t.maxRetryDelay)}});var Uu=J(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.GaxiosInterceptorManager=void 0;var Lu=class extends Set{};ti.GaxiosInterceptorManager=Lu});var Eh=J((NT,wh)=>{var In=1e3,Nn=In*60,Bn=Nn*60,sn=Bn*24,ub=sn*7,cb=sn*365.25;wh.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return lb(t);if(r==="number"&&isFinite(t))return e.long?db(t):fb(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function lb(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*cb;case"weeks":case"week":case"w":return r*ub;case"days":case"day":case"d":return r*sn;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Bn;case"minutes":case"minute":case"mins":case"min":case"m":return r*Nn;case"seconds":case"second":case"secs":case"sec":case"s":return r*In;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function fb(t){var e=Math.abs(t);return e>=sn?Math.round(t/sn)+"d":e>=Bn?Math.round(t/Bn)+"h":e>=Nn?Math.round(t/Nn)+"m":e>=In?Math.round(t/In)+"s":t+"ms"}function db(t){var e=Math.abs(t);return e>=sn?ri(t,e,sn,"day"):e>=Bn?ri(t,e,Bn,"hour"):e>=Nn?ri(t,e,Nn,"minute"):e>=In?ri(t,e,In,"second"):t+" ms"}function ri(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var Mu=J((BT,Ah)=>{function hb(t){r.debug=r,r.default=r,r.coerce=l,r.disable=u,r.enable=s,r.enabled=c,r.humanize=Eh(),r.destroy=h,Object.keys(t).forEach(d=>{r[d]=t[d]}),r.names=[],r.skips=[],r.formatters={};function e(d){let p=0;for(let A=0;A<d.length;A++)p=(p<<5)-p+d.charCodeAt(A),p|=0;return r.colors[Math.abs(p)%r.colors.length]}r.selectColor=e;function r(d){let p,A=null,R,S;function _(...y){if(!_.enabled)return;let m=_,D=Number(new Date),C=D-(p||D);m.diff=C,m.prev=p,m.curr=D,p=D,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let E=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(x,$)=>{if(x==="%%")return"%";E++;let V=r.formatters[$];if(typeof V=="function"){let U=y[E];x=V.call(m,U),y.splice(E,1),E--}return x}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return _.namespace=d,_.useColors=r.useColors(),_.color=r.selectColor(d),_.extend=n,_.destroy=r.destroy,Object.defineProperty(_,"enabled",{enumerable:!0,configurable:!1,get:()=>A!==null?A:(R!==r.namespaces&&(R=r.namespaces,S=r.enabled(d)),S),set:y=>{A=y}}),typeof r.init=="function"&&r.init(_),_}function n(d,p){let A=r(this.namespace+(typeof p>"u"?":":p)+d);return A.log=this.log,A}function s(d){r.save(d),r.namespaces=d,r.names=[],r.skips=[];let p=(typeof d=="string"?d:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let A of p)A[0]==="-"?r.skips.push(A.slice(1)):r.names.push(A)}function i(d,p){let A=0,R=0,S=-1,_=0;for(;A<d.length;)if(R<p.length&&(p[R]===d[A]||p[R]==="*"))p[R]==="*"?(S=R,_=A,R++):(A++,R++);else if(S!==-1)R=S+1,_++,A=_;else return!1;for(;R<p.length&&p[R]==="*";)R++;return R===p.length}function u(){let d=[...r.names,...r.skips.map(p=>"-"+p)].join(",");return r.enable(""),d}function c(d){for(let p of r.skips)if(i(d,p))return!1;for(let p of r.names)if(i(d,p))return!0;return!1}function l(d){return d instanceof Error?d.stack||d.message:d}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Ah.exports=hb});var Sh=J((st,ni)=>{st.formatArgs=mb;st.save=gb;st.load=yb;st.useColors=pb;st.storage=_b();st.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();st.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function pb(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function mb(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ni.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}st.log=console.debug||console.log||(()=>{});function gb(t){try{t?st.storage.setItem("debug",t):st.storage.removeItem("debug")}catch{}}function yb(){let t;try{t=st.storage.getItem("debug")||st.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function _b(){try{return localStorage}catch{}}ni.exports=Mu()(st);var{formatters:bb}=ni.exports;bb.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Dh=J((jT,kh)=>{"use strict";kh.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n<s)}});var Rh=J((qT,vh)=>{"use strict";var Cb=require("os"),Th=require("tty"),St=Dh(),{env:He}=process,Br;St("no-color")||St("no-colors")||St("color=false")||St("color=never")?Br=0:(St("color")||St("colors")||St("color=true")||St("color=always"))&&(Br=1);"FORCE_COLOR"in He&&(He.FORCE_COLOR==="true"?Br=1:He.FORCE_COLOR==="false"?Br=0:Br=He.FORCE_COLOR.length===0?1:Math.min(parseInt(He.FORCE_COLOR,10),3));function $u(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function zu(t,e){if(Br===0)return 0;if(St("color=16m")||St("color=full")||St("color=truecolor"))return 3;if(St("color=256"))return 2;if(t&&!e&&Br===void 0)return 0;let r=Br||0;if(He.TERM==="dumb")return r;if(process.platform==="win32"){let n=Cb.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in He)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in He)||He.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in He)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(He.TEAMCITY_VERSION)?1:0;if(He.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in He){let n=parseInt((He.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(He.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(He.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(He.TERM)||"COLORTERM"in He?1:r}function wb(t){let e=zu(t,t&&t.isTTY);return $u(e)}vh.exports={supportsColor:wb,stdout:$u(zu(!0,Th.isatty(1))),stderr:$u(zu(!0,Th.isatty(2)))}});var Fh=J((We,oi)=>{var Eb=require("tty"),si=require("util");We.init=Rb;We.log=Db;We.formatArgs=Sb;We.save=Tb;We.load=vb;We.useColors=Ab;We.destroy=si.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");We.colors=[6,2,3,4,5,1];try{let t=Rh();t&&(t.stderr||t).level>=2&&(We.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}We.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function Ab(){return"colors"in We.inspectOpts?!!We.inspectOpts.colors:Eb.isatty(process.stderr.fd)}function Sb(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
|
|
14
|
+
`+y+"]"}return s.pop(),i=y,D}}});var Ou=J((tT,Hd)=>{var W_=Md(),G_=zd(),J_={parse:W_,stringify:G_};Hd.exports=J_});var Nu=J((OT,hh)=>{"use strict";var ei=Object.prototype.hasOwnProperty,dh=Object.prototype.toString,ih=Object.defineProperty,ah=Object.getOwnPropertyDescriptor,uh=function(e){return typeof Array.isArray=="function"?Array.isArray(e):dh.call(e)==="[object Array]"},ch=function(e){if(!e||dh.call(e)!=="[object Object]")return!1;var r=ei.call(e,"constructor"),n=e.constructor&&e.constructor.prototype&&ei.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!r&&!n)return!1;var s;for(s in e);return typeof s>"u"||ei.call(e,s)},lh=function(e,r){ih&&r.name==="__proto__"?ih(e,r.name,{enumerable:!0,configurable:!0,value:r.newValue,writable:!0}):e[r.name]=r.newValue},fh=function(e,r){if(r==="__proto__")if(ei.call(e,r)){if(ah)return ah(e,r).value}else return;return e[r]};hh.exports=function t(){var e,r,n,s,i,u,c=arguments[0],l=1,h=arguments.length,d=!1;for(typeof c=="boolean"&&(d=c,c=arguments[1]||{},l=2),(c==null||typeof c!="object"&&typeof c!="function")&&(c={});l<h;++l)if(e=arguments[l],e!=null)for(r in e)n=fh(c,r),s=fh(e,r),c!==s&&(d&&s&&(ch(s)||(i=uh(s)))?(i?(i=!1,u=n&&uh(n)?n:[]):u=n&&ch(n)?n:{},lh(c,{name:r,newValue:t(d,u,s)})):typeof s<"u"&&lh(c,{name:r,newValue:s}));return c}});var ph=J((FT,rb)=>{rb.exports={name:"gaxios",version:"7.1.2",description:"A simple common HTTP client specifically for Google APIs and services.",main:"build/cjs/src/index.js",types:"build/cjs/src/index.d.ts",files:["build/"],exports:{".":{import:{types:"./build/esm/src/index.d.ts",default:"./build/esm/src/index.js"},require:{types:"./build/cjs/src/index.d.ts",default:"./build/cjs/src/index.js"}}},scripts:{lint:"gts check --no-inline-config",test:"c8 mocha build/esm/test","presystem-test":"npm run compile","system-test":"mocha build/esm/system-test --timeout 80000",compile:"tsc -b ./tsconfig.json ./tsconfig.cjs.json && node utils/enable-esm.mjs",fix:"gts fix",prepare:"npm run compile",pretest:"npm run compile",webpack:"webpack","prebrowser-test":"npm run compile","browser-test":"node build/browser-test/browser-test-runner.js",docs:"jsdoc -c .jsdoc.js","docs-test":"linkinator docs","predocs-test":"npm run docs","samples-test":"cd samples/ && npm link ../ && npm test && cd ../",prelint:"cd samples; npm link ../; npm install",clean:"gts clean"},repository:"googleapis/gaxios",keywords:["google"],engines:{node:">=18"},author:"Google, LLC",license:"Apache-2.0",devDependencies:{"@babel/plugin-proposal-private-methods":"^7.18.6","@types/cors":"^2.8.6","@types/express":"^5.0.0","@types/extend":"^3.0.1","@types/mocha":"^10.0.10","@types/multiparty":"4.2.1","@types/mv":"^2.1.0","@types/ncp":"^2.0.1","@types/node":"^22.0.0","@types/sinon":"^17.0.0","@types/tmp":"0.2.6",assert:"^2.0.0",browserify:"^17.0.0",c8:"^10.0.0",cors:"^2.8.5",express:"^5.0.0",gts:"^6.0.0","is-docker":"^3.0.0",jsdoc:"^4.0.0","jsdoc-fresh":"^4.0.0","jsdoc-region-tag":"^3.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-remap-coverage":"^0.1.5","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.1",linkinator:"^6.1.2",mocha:"^11.1.0",multiparty:"^4.2.1",mv:"^2.1.1",ncp:"^2.0.0",nock:"^14.0.0-beta.13","null-loader":"^4.0.0","pack-n-play":"^3.0.0",puppeteer:"^24.0.0",sinon:"^21.0.0","stream-browserify":"^3.0.0",tmp:"0.2.5","ts-loader":"^9.5.2",typescript:"^5.8.3",webpack:"^5.35.0","webpack-cli":"^6.0.1"},dependencies:{extend:"^3.0.2","https-proxy-agent":"^7.0.1","node-fetch":"^3.3.2"}}});var gh=J((xT,mh)=>{"use strict";var nb=ph();mh.exports={pkg:nb}});var qu=J(At=>{"use strict";var _h=At&&At.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(At,"__esModule",{value:!0});At.GaxiosError=At.GAXIOS_ERROR_SYMBOL=void 0;At.defaultErrorRedactor=bh;var yh=_h(Nu()),sb=_h(gh()),Bu=sb.default.pkg;At.GAXIOS_ERROR_SYMBOL=Symbol.for(`${Bu.name}-gaxios-error`);var ju=class t extends Error{config;response;code;status;error;[At.GAXIOS_ERROR_SYMBOL]=Bu.version;static[Symbol.hasInstance](e){return e&&typeof e=="object"&&At.GAXIOS_ERROR_SYMBOL in e&&e[At.GAXIOS_ERROR_SYMBOL]===Bu.version?!0:Function.prototype[Symbol.hasInstance].call(t,e)}constructor(e,r,n,s){if(super(e,{cause:s}),this.config=r,this.response=n,this.error=s instanceof Error?s:void 0,this.config=(0,yh.default)(!0,{},r),this.response&&(this.response.config=(0,yh.default)(!0,{},this.response.config)),this.response){try{this.response.data=ob(this.config.responseType,this.response?.bodyUsed?this.response?.data:void 0)}catch{}this.status=this.response.status}s instanceof DOMException?this.code=s.name:s&&typeof s=="object"&&"code"in s&&(typeof s.code=="string"||typeof s.code=="number")&&(this.code=s.code)}static extractAPIErrorFromResponse(e,r="The request failed"){let n=r;if(typeof e.data=="string"&&(n=e.data),e.data&&typeof e.data=="object"&&"error"in e.data&&e.data.error&&!e.ok){if(typeof e.data.error=="string")return{message:e.data.error,code:e.status,status:e.statusText};if(typeof e.data.error=="object"){n="message"in e.data.error&&typeof e.data.error.message=="string"?e.data.error.message:n;let s="status"in e.data.error&&typeof e.data.error.status=="string"?e.data.error.status:e.statusText,i="code"in e.data.error&&typeof e.data.error.code=="number"?e.data.error.code:e.status;if("errors"in e.data.error&&Array.isArray(e.data.error.errors)){let u=[];for(let c of e.data.error.errors)typeof c=="object"&&"message"in c&&typeof c.message=="string"&&u.push(c.message);return Object.assign({message:u.join(`
|
|
15
|
+
`)||n,code:i,status:s},e.data.error)}return Object.assign({message:n,code:i,status:s},e.data.error)}}return{message:n,code:e.status,status:e.statusText}}};At.GaxiosError=ju;function ob(t,e){switch(t){case"stream":return e;case"json":return JSON.parse(JSON.stringify(e));case"arraybuffer":return JSON.parse(Buffer.from(e).toString("utf8"));case"blob":return JSON.parse(e.text());default:return e}}function bh(t){let e="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function r(i){i&&i.forEach((u,c)=>{(/^authentication$/i.test(c)||/^authorization$/i.test(c)||/secret/i.test(c))&&i.set(c,e)})}function n(i,u){if(typeof i=="object"&&i!==null&&typeof i[u]=="string"){let c=i[u];(/grant_type=/i.test(c)||/assertion=/i.test(c)||/secret/i.test(c))&&(i[u]=e)}}function s(i){!i||typeof i!="object"||(i instanceof FormData||i instanceof URLSearchParams||"forEach"in i&&"set"in i?i.forEach((u,c)=>{(["grant_type","assertion"].includes(c)||/secret/.test(c))&&i.set(c,e)}):("grant_type"in i&&(i.grant_type=e),"assertion"in i&&(i.assertion=e),"client_secret"in i&&(i.client_secret=e)))}return t.config&&(r(t.config.headers),n(t.config,"data"),s(t.config.data),n(t.config,"body"),s(t.config.body),t.config.url.searchParams.has("token")&&t.config.url.searchParams.set("token",e),t.config.url.searchParams.has("client_secret")&&t.config.url.searchParams.set("client_secret",e)),t.response&&(bh({config:t.response.config}),r(t.response.headers),t.response.bodyUsed&&(n(t.response,"data"),s(t.response.data))),t}});var wh=J(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.getRetryConfig=ib;async function ib(t){let e=Ch(t);if(!t||!t.config||!e&&!t.config.retry)return{shouldRetry:!1};e=e||{},e.currentRetryAttempt=e.currentRetryAttempt||0,e.retry=e.retry===void 0||e.retry===null?3:e.retry,e.httpMethodsToRetry=e.httpMethodsToRetry||["GET","HEAD","PUT","OPTIONS","DELETE"],e.noResponseRetries=e.noResponseRetries===void 0||e.noResponseRetries===null?2:e.noResponseRetries,e.retryDelayMultiplier=e.retryDelayMultiplier?e.retryDelayMultiplier:2,e.timeOfFirstRequest=e.timeOfFirstRequest?e.timeOfFirstRequest:Date.now(),e.totalTimeout=e.totalTimeout?e.totalTimeout:Number.MAX_SAFE_INTEGER,e.maxRetryDelay=e.maxRetryDelay?e.maxRetryDelay:Number.MAX_SAFE_INTEGER;let r=[[100,199],[408,408],[429,429],[500,599]];if(e.statusCodesToRetry=e.statusCodesToRetry||r,t.config.retryConfig=e,!await(e.shouldRetry||ab)(t))return{shouldRetry:!1,config:t.config};let s=ub(e);t.config.retryConfig.currentRetryAttempt+=1;let i=e.retryBackoff?e.retryBackoff(t,s):new Promise(u=>{setTimeout(u,s)});return e.onRetryAttempt&&await e.onRetryAttempt(t),await i,{shouldRetry:!0,config:t.config}}function ab(t){let e=Ch(t);if(t.config.signal?.aborted&&t.code!=="TimeoutError"||t.code==="AbortError"||!e||e.retry===0||!t.response&&(e.currentRetryAttempt||0)>=e.noResponseRetries||!e.httpMethodsToRetry||!e.httpMethodsToRetry.includes(t.config.method?.toUpperCase()||"GET"))return!1;if(t.response&&t.response.status){let r=!1;for(let[n,s]of e.statusCodesToRetry){let i=t.response.status;if(i>=n&&i<=s){r=!0;break}}if(!r)return!1}return e.currentRetryAttempt=e.currentRetryAttempt||0,!(e.currentRetryAttempt>=e.retry)}function Ch(t){if(t&&t.config&&t.config.retryConfig)return t.config.retryConfig}function ub(t){let r=(t.currentRetryAttempt?0:t.retryDelay??100)+(Math.pow(t.retryDelayMultiplier,t.currentRetryAttempt)-1)/2*1e3,n=t.totalTimeout-(Date.now()-t.timeOfFirstRequest);return Math.min(r,n,t.maxRetryDelay)}});var Mu=J(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.GaxiosInterceptorManager=void 0;var Uu=class extends Set{};ti.GaxiosInterceptorManager=Uu});var Ah=J((BT,Eh)=>{var In=1e3,Nn=In*60,Bn=Nn*60,sn=Bn*24,cb=sn*7,lb=sn*365.25;Eh.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return fb(t);if(r==="number"&&isFinite(t))return e.long?hb(t):db(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function fb(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*lb;case"weeks":case"week":case"w":return r*cb;case"days":case"day":case"d":return r*sn;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Bn;case"minutes":case"minute":case"mins":case"min":case"m":return r*Nn;case"seconds":case"second":case"secs":case"sec":case"s":return r*In;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function db(t){var e=Math.abs(t);return e>=sn?Math.round(t/sn)+"d":e>=Bn?Math.round(t/Bn)+"h":e>=Nn?Math.round(t/Nn)+"m":e>=In?Math.round(t/In)+"s":t+"ms"}function hb(t){var e=Math.abs(t);return e>=sn?ri(t,e,sn,"day"):e>=Bn?ri(t,e,Bn,"hour"):e>=Nn?ri(t,e,Nn,"minute"):e>=In?ri(t,e,In,"second"):t+" ms"}function ri(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var $u=J((jT,Sh)=>{function pb(t){r.debug=r,r.default=r,r.coerce=l,r.disable=u,r.enable=s,r.enabled=c,r.humanize=Ah(),r.destroy=h,Object.keys(t).forEach(d=>{r[d]=t[d]}),r.names=[],r.skips=[],r.formatters={};function e(d){let p=0;for(let A=0;A<d.length;A++)p=(p<<5)-p+d.charCodeAt(A),p|=0;return r.colors[Math.abs(p)%r.colors.length]}r.selectColor=e;function r(d){let p,A=null,R,S;function _(...y){if(!_.enabled)return;let m=_,D=Number(new Date),C=D-(p||D);m.diff=C,m.prev=p,m.curr=D,p=D,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let E=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(x,$)=>{if(x==="%%")return"%";E++;let V=r.formatters[$];if(typeof V=="function"){let U=y[E];x=V.call(m,U),y.splice(E,1),E--}return x}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return _.namespace=d,_.useColors=r.useColors(),_.color=r.selectColor(d),_.extend=n,_.destroy=r.destroy,Object.defineProperty(_,"enabled",{enumerable:!0,configurable:!1,get:()=>A!==null?A:(R!==r.namespaces&&(R=r.namespaces,S=r.enabled(d)),S),set:y=>{A=y}}),typeof r.init=="function"&&r.init(_),_}function n(d,p){let A=r(this.namespace+(typeof p>"u"?":":p)+d);return A.log=this.log,A}function s(d){r.save(d),r.namespaces=d,r.names=[],r.skips=[];let p=(typeof d=="string"?d:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let A of p)A[0]==="-"?r.skips.push(A.slice(1)):r.names.push(A)}function i(d,p){let A=0,R=0,S=-1,_=0;for(;A<d.length;)if(R<p.length&&(p[R]===d[A]||p[R]==="*"))p[R]==="*"?(S=R,_=A,R++):(A++,R++);else if(S!==-1)R=S+1,_++,A=_;else return!1;for(;R<p.length&&p[R]==="*";)R++;return R===p.length}function u(){let d=[...r.names,...r.skips.map(p=>"-"+p)].join(",");return r.enable(""),d}function c(d){for(let p of r.skips)if(i(d,p))return!1;for(let p of r.names)if(i(d,p))return!0;return!1}function l(d){return d instanceof Error?d.stack||d.message:d}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Sh.exports=pb});var kh=J((st,ni)=>{st.formatArgs=gb;st.save=yb;st.load=_b;st.useColors=mb;st.storage=bb();st.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();st.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function mb(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function gb(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ni.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}st.log=console.debug||console.log||(()=>{});function yb(t){try{t?st.storage.setItem("debug",t):st.storage.removeItem("debug")}catch{}}function _b(){let t;try{t=st.storage.getItem("debug")||st.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function bb(){try{return localStorage}catch{}}ni.exports=$u()(st);var{formatters:Cb}=ni.exports;Cb.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Th=J((qT,Dh)=>{"use strict";Dh.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n<s)}});var Oh=J((LT,Rh)=>{"use strict";var wb=require("os"),vh=require("tty"),St=Th(),{env:He}=process,Br;St("no-color")||St("no-colors")||St("color=false")||St("color=never")?Br=0:(St("color")||St("colors")||St("color=true")||St("color=always"))&&(Br=1);"FORCE_COLOR"in He&&(He.FORCE_COLOR==="true"?Br=1:He.FORCE_COLOR==="false"?Br=0:Br=He.FORCE_COLOR.length===0?1:Math.min(parseInt(He.FORCE_COLOR,10),3));function zu(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Hu(t,e){if(Br===0)return 0;if(St("color=16m")||St("color=full")||St("color=truecolor"))return 3;if(St("color=256"))return 2;if(t&&!e&&Br===void 0)return 0;let r=Br||0;if(He.TERM==="dumb")return r;if(process.platform==="win32"){let n=wb.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in He)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in He)||He.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in He)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(He.TEAMCITY_VERSION)?1:0;if(He.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in He){let n=parseInt((He.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(He.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(He.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(He.TERM)||"COLORTERM"in He?1:r}function Eb(t){let e=Hu(t,t&&t.isTTY);return zu(e)}Rh.exports={supportsColor:Eb,stdout:zu(Hu(!0,vh.isatty(1))),stderr:zu(Hu(!0,vh.isatty(2)))}});var xh=J((We,oi)=>{var Ab=require("tty"),si=require("util");We.init=Ob;We.log=Tb;We.formatArgs=kb;We.save=vb;We.load=Rb;We.useColors=Sb;We.destroy=si.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");We.colors=[6,2,3,4,5,1];try{let t=Oh();t&&(t.stderr||t).level>=2&&(We.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}We.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function Sb(){return"colors"in We.inspectOpts?!!We.inspectOpts.colors:Ab.isatty(process.stderr.fd)}function kb(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
|
|
16
16
|
`).join(`
|
|
17
|
-
`+i),t.push(s+"m+"+oi.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=
|
|
18
|
-
`)}function
|
|
19
|
-
`).map(e=>e.trim()).join(" ")};
|
|
20
|
-
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new
|
|
17
|
+
`+i),t.push(s+"m+"+oi.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=Db()+e+" "+t[0]}function Db(){return We.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Tb(...t){return process.stderr.write(si.formatWithOptions(We.inspectOpts,...t)+`
|
|
18
|
+
`)}function vb(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function Rb(){return process.env.DEBUG}function Ob(t){t.inspectOpts={};let e=Object.keys(We.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=We.inspectOpts[e[r]]}oi.exports=$u()(We);var{formatters:Fh}=oi.exports;Fh.o=function(t){return this.inspectOpts.colors=this.useColors,si.inspect(t,this.inspectOpts).split(`
|
|
19
|
+
`).map(e=>e.trim()).join(" ")};Fh.O=function(t){return this.inspectOpts.colors=this.useColors,si.inspect(t,this.inspectOpts)}});var Gu=J((UT,Wu)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Wu.exports=kh():Wu.exports=xh()});var Nh=J(ot=>{"use strict";var Fb=ot&&ot.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),xb=ot&&ot.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Ph=ot&&ot.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fb(e,t,r);return xb(e,t),e};Object.defineProperty(ot,"__esModule",{value:!0});ot.req=ot.json=ot.toBuffer=void 0;var Pb=Ph(require("http")),Ib=Ph(require("https"));async function Ih(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}ot.toBuffer=Ih;async function Nb(t){let r=(await Ih(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}ot.json=Nb;function Bb(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?Ib:Pb).request(t,e),s=new Promise((i,u)=>{n.once("response",i).once("error",u).end()});return n.then=s.then.bind(s),n}ot.req=Bb});var Lh=J(lt=>{"use strict";var jh=lt&<.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),jb=lt&<.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),qh=lt&<.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jh(e,t,r);return jb(e,t),e},qb=lt&<.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&jh(e,t,r)};Object.defineProperty(lt,"__esModule",{value:!0});lt.Agent=void 0;var Lb=qh(require("net")),Bh=qh(require("http")),Ub=require("https");qb(Nh(),lt);var Kt=Symbol("AgentBaseInternalState"),Ju=class extends Bh.Agent{constructor(e){super(e),this[Kt]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(`
|
|
20
|
+
`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new Lb.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?Ub.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},i=this.getName(s),u=this.incrementSockets(i);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(i,u),c instanceof Bh.Agent)try{return c.addRequest(e,s)}catch(l){return n(l)}this[Kt].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(i,u),n(c)})}createConnection(){let e=this[Kt].currentSocket;if(this[Kt].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Kt].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Kt]&&(this[Kt].defaultPort=e)}get protocol(){return this[Kt].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Kt]&&(this[Kt].protocol=e)}};lt.Agent=Ju});var Uh=J(jn=>{"use strict";var Mb=jn&&jn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jn,"__esModule",{value:!0});jn.parseProxyResponse=void 0;var $b=Mb(Gu()),ii=(0,$b.default)("https-proxy-agent:parse-proxy-response");function zb(t){return new Promise((e,r)=>{let n=0,s=[];function i(){let d=t.read();d?h(d):t.once("readable",i)}function u(){t.removeListener("end",c),t.removeListener("error",l),t.removeListener("readable",i)}function c(){u(),ii("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function l(d){u(),ii("onerror %o",d),r(d)}function h(d){s.push(d),n+=d.length;let p=Buffer.concat(s,n),A=p.indexOf(`\r
|
|
21
21
|
\r
|
|
22
22
|
`);if(A===-1){ii("have not received end of HTTP headers yet..."),i();return}let R=p.slice(0,A).toString("ascii").split(`\r
|
|
23
|
-
`),S=R.shift();if(!S)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let _=S.split(" "),y=+_[1],m=_.slice(2).join(" "),D={};for(let C of R){if(!C)continue;let E=C.indexOf(":");if(E===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${C}"`));let v=C.slice(0,E).toLowerCase(),x=C.slice(E+1).trimStart(),$=D[v];typeof $=="string"?D[v]=[$,x]:Array.isArray($)?$.push(x):D[v]=x}ii("got proxy server response: %o %o",S,D),u(),e({connect:{statusCode:y,statusText:m,headers:D},buffered:p})}t.on("error",l),t.on("end",c),i()})}jn.parseProxyResponse
|
|
23
|
+
`),S=R.shift();if(!S)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let _=S.split(" "),y=+_[1],m=_.slice(2).join(" "),D={};for(let C of R){if(!C)continue;let E=C.indexOf(":");if(E===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${C}"`));let v=C.slice(0,E).toLowerCase(),x=C.slice(E+1).trimStart(),$=D[v];typeof $=="string"?D[v]=[$,x]:Array.isArray($)?$.push(x):D[v]=x}ii("got proxy server response: %o %o",S,D),u(),e({connect:{statusCode:y,statusText:m,headers:D},buffered:p})}t.on("error",l),t.on("end",c),i()})}jn.parseProxyResponse=zb});var Gh=J(kt=>{"use strict";var Hb=kt&&kt.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Wb=kt&&kt.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Hh=kt&&kt.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Hb(e,t,r);return Wb(e,t),e},Wh=kt&&kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kt,"__esModule",{value:!0});kt.HttpsProxyAgent=void 0;var ai=Hh(require("net")),Mh=Hh(require("tls")),Gb=Wh(require("assert")),Jb=Wh(Gu()),Vb=Lh(),Kb=require("url"),Yb=Uh(),As=(0,Jb.default)("https-proxy-agent"),$h=t=>t.servername===void 0&&t.host&&!ai.isIP(t.host)?{...t,servername:t.host}:t,ui=class extends Vb.Agent{constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new Kb.URL(e):e,this.proxyHeaders=r?.headers??{},As("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?zh(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(As("Creating `tls.Socket`: %o",this.connectOpts),s=Mh.connect($h(this.connectOpts))):(As("Creating `net.Socket`: %o",this.connectOpts),s=ai.connect(this.connectOpts));let i=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},u=ai.isIPv6(r.host)?`[${r.host}]`:r.host,c=`CONNECT ${u}:${r.port} HTTP/1.1\r
|
|
24
24
|
`;if(n.username||n.password){let A=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;i["Proxy-Authorization"]=`Basic ${Buffer.from(A).toString("base64")}`}i.Host=`${u}:${r.port}`,i["Proxy-Connection"]||(i["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let A of Object.keys(i))c+=`${A}: ${i[A]}\r
|
|
25
|
-
`;let l=(0,
|
|
26
|
-
`);let{connect:h,buffered:d}=await l;if(e.emit("proxyConnect",h),this.emit("proxyConnect",h,e),h.statusCode===200)return e.once("socket",Yb),r.secureEndpoint?(As("Upgrading socket connection to TLS"),Uh.connect({...$h(Mh(r),"host","path","port"),socket:s})):s;s.destroy();let p=new ai.Socket({writable:!1});return p.readable=!0,e.once("socket",A=>{As("Replaying proxy buffer for failed request"),(0,Wb.default)(A.listenerCount("data")>0),A.push(d),A.push(null)}),p}};ui.protocols=["http","https"];kt.HttpsProxyAgent=ui;function Yb(t){t.resume()}function $h(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}});function Xb(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",u=i;for(let d=1;d<r.length;d++)r[d]==="base64"?s=!0:r[d]&&(u+=`;${r[d]}`,r[d].indexOf("charset=")===0&&(n=r[d].substring(8)));!r[0]&&!n.length&&(u+=";charset=US-ASCII",n="US-ASCII");let c=s?"base64":"ascii",l=unescape(t.substring(e+1)),h=Buffer.from(l,c);return h.type=i,h.typeFull=u,h.charset=n,h}var Gh,Jh=Be(()=>{Gh=Xb});var Kh=J((ci,Vh)=>{(function(t,e){typeof ci=="object"&&typeof Vh<"u"?e(ci):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(ci,(function(t){"use strict";function e(){}function r(o){return typeof o=="object"&&o!==null||typeof o=="function"}let n=e;function s(o,a){try{Object.defineProperty(o,"name",{value:a,configurable:!0})}catch{}}let i=Promise,u=Promise.prototype.then,c=Promise.reject.bind(i);function l(o){return new i(o)}function h(o){return l(a=>a(o))}function d(o){return c(o)}function p(o,a,f){return u.call(o,a,f)}function A(o,a,f){p(p(o,a,f),void 0,n)}function R(o,a){A(o,a)}function S(o,a){A(o,void 0,a)}function _(o,a,f){return p(o,a,f)}function y(o){p(o,void 0,n)}let m=o=>{if(typeof queueMicrotask=="function")m=queueMicrotask;else{let a=h(void 0);m=f=>p(a,f)}return m(o)};function D(o,a,f){if(typeof o!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(o,a,f)}function C(o,a,f){try{return h(D(o,a,f))}catch(b){return d(b)}}let E=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(a){let f=this._back,b=f;f._elements.length===E-1&&(b={_elements:[],_next:void 0}),f._elements.push(a),b!==f&&(this._back=b,f._next=b),++this._size}shift(){let a=this._front,f=a,b=this._cursor,T=b+1,q=a._elements,M=q[b];return T===E&&(f=a._next,T=0),--this._size,this._cursor=T,a!==f&&(this._front=f),q[b]=void 0,M}forEach(a){let f=this._cursor,b=this._front,T=b._elements;for(;(f!==T.length||b._next!==void 0)&&!(f===T.length&&(b=b._next,T=b._elements,f=0,T.length===0));)a(T[f]),++f}peek(){let a=this._front,f=this._cursor;return a._elements[f]}}let x=Symbol("[[AbortSteps]]"),$=Symbol("[[ErrorSteps]]"),V=Symbol("[[CancelSteps]]"),U=Symbol("[[PullSteps]]"),X=Symbol("[[ReleaseSteps]]");function re(o,a){o._ownerReadableStream=a,a._reader=o,a._state==="readable"?Ee(o):a._state==="closed"?he(o):se(o,a._storedError)}function ie(o,a){let f=o._ownerReadableStream;return Nt(f,a)}function le(o){let a=o._ownerReadableStream;a._state==="readable"?G(o,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):K(o,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),a._readableStreamController[X](),a._reader=void 0,o._ownerReadableStream=void 0}function ge(o){return new TypeError("Cannot "+o+" a stream using a released reader")}function Ee(o){o._closedPromise=l((a,f)=>{o._closedPromise_resolve=a,o._closedPromise_reject=f})}function se(o,a){Ee(o),G(o,a)}function he(o){Ee(o),ae(o)}function G(o,a){o._closedPromise_reject!==void 0&&(y(o._closedPromise),o._closedPromise_reject(a),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0)}function K(o,a){se(o,a)}function ae(o){o._closedPromise_resolve!==void 0&&(o._closedPromise_resolve(void 0),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0)}let Me=Number.isFinite||function(o){return typeof o=="number"&&isFinite(o)},De=Math.trunc||function(o){return o<0?Math.ceil(o):Math.floor(o)};function W(o){return typeof o=="object"||typeof o=="function"}function ce(o,a){if(o!==void 0&&!W(o))throw new TypeError(`${a} is not an object.`)}function ye(o,a){if(typeof o!="function")throw new TypeError(`${a} is not a function.`)}function Pt(o){return typeof o=="object"&&o!==null||typeof o=="function"}function ve(o,a){if(!Pt(o))throw new TypeError(`${a} is not an object.`)}function Ne(o,a,f){if(o===void 0)throw new TypeError(`Parameter ${a} is required in '${f}'.`)}function g(o,a,f){if(o===void 0)throw new TypeError(`${a} is required in '${f}'.`)}function w(o){return Number(o)}function k(o){return o===0?0:o}function B(o){return k(De(o))}function F(o,a){let b=Number.MAX_SAFE_INTEGER,T=Number(o);if(T=k(T),!Me(T))throw new TypeError(`${a} is not a finite number`);if(T=B(T),T<0||T>b)throw new TypeError(`${a} is outside the accepted range of 0 to ${b}, inclusive`);return!Me(T)||T===0?0:T}function I(o,a){if(!Fr(o))throw new TypeError(`${a} is not a ReadableStream.`)}function L(o){return new z(o)}function O(o,a){o._reader._readRequests.push(a)}function P(o,a,f){let T=o._reader._readRequests.shift();f?T._closeSteps():T._chunkSteps(a)}function j(o){return o._reader._readRequests.length}function N(o){let a=o._reader;return!(a===void 0||!Q(a))}class z{constructor(a){if(Ne(a,1,"ReadableStreamDefaultReader"),I(a,"First parameter"),xr(a))throw new TypeError("This stream has already been locked for exclusive reading by another reader");re(this,a),this._readRequests=new v}get closed(){return Q(this)?this._closedPromise:d(Ie("closed"))}cancel(a=void 0){return Q(this)?this._ownerReadableStream===void 0?d(ge("cancel")):ie(this,a):d(Ie("cancel"))}read(){if(!Q(this))return d(Ie("read"));if(this._ownerReadableStream===void 0)return d(ge("read from"));let a,f,b=l((q,M)=>{a=q,f=M});return Z(this,{_chunkSteps:q=>a({value:q,done:!1}),_closeSteps:()=>a({value:void 0,done:!0}),_errorSteps:q=>f(q)}),b}releaseLock(){if(!Q(this))throw Ie("releaseLock");this._ownerReadableStream!==void 0&&we(this)}}Object.defineProperties(z.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(z.prototype.cancel,"cancel"),s(z.prototype.read,"read"),s(z.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(z.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Q(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readRequests")?!1:o instanceof z}function Z(o,a){let f=o._ownerReadableStream;f._disturbed=!0,f._state==="closed"?a._closeSteps():f._state==="errored"?a._errorSteps(f._storedError):f._readableStreamController[U](a)}function we(o){le(o);let a=new TypeError("Reader was released");Fe(o,a)}function Fe(o,a){let f=o._readRequests;o._readRequests=new v,f.forEach(b=>{b._errorSteps(a)})}function Ie(o){return new TypeError(`ReadableStreamDefaultReader.prototype.${o} can only be used on a ReadableStreamDefaultReader`)}let Ce=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class Ae{constructor(a,f){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=a,this._preventCancel=f}next(){let a=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?_(this._ongoingPromise,a,a):a(),this._ongoingPromise}return(a){let f=()=>this._returnSteps(a);return this._ongoingPromise?_(this._ongoingPromise,f,f):f()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let a=this._reader,f,b,T=l((M,Y)=>{f=M,b=Y});return Z(a,{_chunkSteps:M=>{this._ongoingPromise=void 0,m(()=>f({value:M,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,le(a),f({value:void 0,done:!0})},_errorSteps:M=>{this._ongoingPromise=void 0,this._isFinished=!0,le(a),b(M)}}),T}_returnSteps(a){if(this._isFinished)return Promise.resolve({value:a,done:!0});this._isFinished=!0;let f=this._reader;if(!this._preventCancel){let b=ie(f,a);return le(f),_(b,()=>({value:a,done:!0}))}return le(f),h({value:a,done:!0})}}let qe={next(){return Cn(this)?this._asyncIteratorImpl.next():d(wn("next"))},return(o){return Cn(this)?this._asyncIteratorImpl.return(o):d(wn("return"))}};Object.setPrototypeOf(qe,Ce);function bn(o,a){let f=L(o),b=new Ae(f,a),T=Object.create(qe);return T._asyncIteratorImpl=b,T}function Cn(o){if(!r(o)||!Object.prototype.hasOwnProperty.call(o,"_asyncIteratorImpl"))return!1;try{return o._asyncIteratorImpl instanceof Ae}catch{return!1}}function wn(o){return new TypeError(`ReadableStreamAsyncIterator.${o} can only be used on a ReadableSteamAsyncIterator`)}let ut=Number.isNaN||function(o){return o!==o};var ur,Ke,Le;function Se(o){return o.slice()}function Ff(o,a,f,b,T){new Uint8Array(o).set(new Uint8Array(f,b,T),a)}let cr=o=>(typeof o.transfer=="function"?cr=a=>a.transfer():typeof structuredClone=="function"?cr=a=>structuredClone(a,{transfer:[a]}):cr=a=>a,cr(o)),Tr=o=>(typeof o.detached=="boolean"?Tr=a=>a.detached:Tr=a=>a.byteLength===0,Tr(o));function xf(o,a,f){if(o.slice)return o.slice(a,f);let b=f-a,T=new ArrayBuffer(b);return Ff(T,0,o,a,b),T}function mo(o,a){let f=o[a];if(f!=null){if(typeof f!="function")throw new TypeError(`${String(a)} is not a function`);return f}}function Qy(o){let a={[Symbol.iterator]:()=>o.iterator},f=(async function*(){return yield*a})(),b=f.next;return{iterator:f,nextMethod:b,done:!1}}let Ja=(Le=(ur=Symbol.asyncIterator)!==null&&ur!==void 0?ur:(Ke=Symbol.for)===null||Ke===void 0?void 0:Ke.call(Symbol,"Symbol.asyncIterator"))!==null&&Le!==void 0?Le:"@@asyncIterator";function Pf(o,a="sync",f){if(f===void 0)if(a==="async"){if(f=mo(o,Ja),f===void 0){let q=mo(o,Symbol.iterator),M=Pf(o,"sync",q);return Qy(M)}}else f=mo(o,Symbol.iterator);if(f===void 0)throw new TypeError("The object is not iterable");let b=D(f,o,[]);if(!r(b))throw new TypeError("The iterator method must return an object");let T=b.next;return{iterator:b,nextMethod:T,done:!1}}function Zy(o){let a=D(o.nextMethod,o.iterator,[]);if(!r(a))throw new TypeError("The iterator.next() method must return an object");return a}function e0(o){return!!o.done}function t0(o){return o.value}function r0(o){return!(typeof o!="number"||ut(o)||o<0)}function If(o){let a=xf(o.buffer,o.byteOffset,o.byteOffset+o.byteLength);return new Uint8Array(a)}function Va(o){let a=o._queue.shift();return o._queueTotalSize-=a.size,o._queueTotalSize<0&&(o._queueTotalSize=0),a.value}function Ka(o,a,f){if(!r0(f)||f===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");o._queue.push({value:a,size:f}),o._queueTotalSize+=f}function n0(o){return o._queue.peek().value}function vr(o){o._queue=new v,o._queueTotalSize=0}function Nf(o){return o===DataView}function s0(o){return Nf(o.constructor)}function o0(o){return Nf(o)?1:o.BYTES_PER_ELEMENT}class Gr{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Ya(this))throw tu("view");return this._view}respond(a){if(!Ya(this))throw tu("respond");if(Ne(a,1,"respond"),a=F(a,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Tr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");bo(this._associatedReadableByteStreamController,a)}respondWithNewView(a){if(!Ya(this))throw tu("respondWithNewView");if(Ne(a,1,"respondWithNewView"),!ArrayBuffer.isView(a))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Tr(a.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");Co(this._associatedReadableByteStreamController,a)}}Object.defineProperties(Gr.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(Gr.prototype.respond,"respond"),s(Gr.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Gr.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class lr{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Jr(this))throw ds("byobRequest");return eu(this)}get desiredSize(){if(!Jr(this))throw ds("desiredSize");return Wf(this)}close(){if(!Jr(this))throw ds("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let a=this._controlledReadableByteStream._state;if(a!=="readable")throw new TypeError(`The stream (in ${a} state) is not in the readable state and cannot be closed`);fs(this)}enqueue(a){if(!Jr(this))throw ds("enqueue");if(Ne(a,1,"enqueue"),!ArrayBuffer.isView(a))throw new TypeError("chunk must be an array buffer view");if(a.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(a.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let f=this._controlledReadableByteStream._state;if(f!=="readable")throw new TypeError(`The stream (in ${f} state) is not in the readable state and cannot be enqueued to`);_o(this,a)}error(a=void 0){if(!Jr(this))throw ds("error");wt(this,a)}[V](a){Bf(this),vr(this);let f=this._cancelAlgorithm(a);return yo(this),f}[U](a){let f=this._controlledReadableByteStream;if(this._queueTotalSize>0){Hf(this,a);return}let b=this._autoAllocateChunkSize;if(b!==void 0){let T;try{T=new ArrayBuffer(b)}catch(M){a._errorSteps(M);return}let q={buffer:T,bufferByteLength:b,byteOffset:0,byteLength:b,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(q)}O(f,a),Vr(this)}[X](){if(this._pendingPullIntos.length>0){let a=this._pendingPullIntos.peek();a.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(a)}}}Object.defineProperties(lr.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(lr.prototype.close,"close"),s(lr.prototype.enqueue,"enqueue"),s(lr.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(lr.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Jr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledReadableByteStream")?!1:o instanceof lr}function Ya(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_associatedReadableByteStreamController")?!1:o instanceof Gr}function Vr(o){if(!l0(o))return;if(o._pulling){o._pullAgain=!0;return}o._pulling=!0;let f=o._pullAlgorithm();A(f,()=>(o._pulling=!1,o._pullAgain&&(o._pullAgain=!1,Vr(o)),null),b=>(wt(o,b),null))}function Bf(o){Qa(o),o._pendingPullIntos=new v}function Xa(o,a){let f=!1;o._state==="closed"&&(f=!0);let b=jf(a);a.readerType==="default"?P(o,b,f):g0(o,b,f)}function jf(o){let a=o.bytesFilled,f=o.elementSize;return new o.viewConstructor(o.buffer,o.byteOffset,a/f)}function go(o,a,f,b){o._queue.push({buffer:a,byteOffset:f,byteLength:b}),o._queueTotalSize+=b}function qf(o,a,f,b){let T;try{T=xf(a,f,f+b)}catch(q){throw wt(o,q),q}go(o,T,0,b)}function Lf(o,a){a.bytesFilled>0&&qf(o,a.buffer,a.byteOffset,a.bytesFilled),En(o)}function Uf(o,a){let f=Math.min(o._queueTotalSize,a.byteLength-a.bytesFilled),b=a.bytesFilled+f,T=f,q=!1,M=b%a.elementSize,Y=b-M;Y>=a.minimumFill&&(T=Y-a.bytesFilled,q=!0);let ue=o._queue;for(;T>0;){let te=ue.peek(),fe=Math.min(T,te.byteLength),me=a.byteOffset+a.bytesFilled;Ff(a.buffer,me,te.buffer,te.byteOffset,fe),te.byteLength===fe?ue.shift():(te.byteOffset+=fe,te.byteLength-=fe),o._queueTotalSize-=fe,Mf(o,fe,a),T-=fe}return q}function Mf(o,a,f){f.bytesFilled+=a}function $f(o){o._queueTotalSize===0&&o._closeRequested?(yo(o),_s(o._controlledReadableByteStream)):Vr(o)}function Qa(o){o._byobRequest!==null&&(o._byobRequest._associatedReadableByteStreamController=void 0,o._byobRequest._view=null,o._byobRequest=null)}function Za(o){for(;o._pendingPullIntos.length>0;){if(o._queueTotalSize===0)return;let a=o._pendingPullIntos.peek();Uf(o,a)&&(En(o),Xa(o._controlledReadableByteStream,a))}}function i0(o){let a=o._controlledReadableByteStream._reader;for(;a._readRequests.length>0;){if(o._queueTotalSize===0)return;let f=a._readRequests.shift();Hf(o,f)}}function a0(o,a,f,b){let T=o._controlledReadableByteStream,q=a.constructor,M=o0(q),{byteOffset:Y,byteLength:ue}=a,te=f*M,fe;try{fe=cr(a.buffer)}catch(Te){b._errorSteps(Te);return}let me={buffer:fe,bufferByteLength:fe.byteLength,byteOffset:Y,byteLength:ue,bytesFilled:0,minimumFill:te,elementSize:M,viewConstructor:q,readerType:"byob"};if(o._pendingPullIntos.length>0){o._pendingPullIntos.push(me),Vf(T,b);return}if(T._state==="closed"){let Te=new q(me.buffer,me.byteOffset,0);b._closeSteps(Te);return}if(o._queueTotalSize>0){if(Uf(o,me)){let Te=jf(me);$f(o),b._chunkSteps(Te);return}if(o._closeRequested){let Te=new TypeError("Insufficient bytes to fill elements in the given buffer");wt(o,Te),b._errorSteps(Te);return}}o._pendingPullIntos.push(me),Vf(T,b),Vr(o)}function u0(o,a){a.readerType==="none"&&En(o);let f=o._controlledReadableByteStream;if(ru(f))for(;Kf(f)>0;){let b=En(o);Xa(f,b)}}function c0(o,a,f){if(Mf(o,a,f),f.readerType==="none"){Lf(o,f),Za(o);return}if(f.bytesFilled<f.minimumFill)return;En(o);let b=f.bytesFilled%f.elementSize;if(b>0){let T=f.byteOffset+f.bytesFilled;qf(o,f.buffer,T-b,b)}f.bytesFilled-=b,Xa(o._controlledReadableByteStream,f),Za(o)}function zf(o,a){let f=o._pendingPullIntos.peek();Qa(o),o._controlledReadableByteStream._state==="closed"?u0(o,f):c0(o,a,f),Vr(o)}function En(o){return o._pendingPullIntos.shift()}function l0(o){let a=o._controlledReadableByteStream;return a._state!=="readable"||o._closeRequested||!o._started?!1:!!(N(a)&&j(a)>0||ru(a)&&Kf(a)>0||Wf(o)>0)}function yo(o){o._pullAlgorithm=void 0,o._cancelAlgorithm=void 0}function fs(o){let a=o._controlledReadableByteStream;if(!(o._closeRequested||a._state!=="readable")){if(o._queueTotalSize>0){o._closeRequested=!0;return}if(o._pendingPullIntos.length>0){let f=o._pendingPullIntos.peek();if(f.bytesFilled%f.elementSize!==0){let b=new TypeError("Insufficient bytes to fill elements in the given buffer");throw wt(o,b),b}}yo(o),_s(a)}}function _o(o,a){let f=o._controlledReadableByteStream;if(o._closeRequested||f._state!=="readable")return;let{buffer:b,byteOffset:T,byteLength:q}=a;if(Tr(b))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let M=cr(b);if(o._pendingPullIntos.length>0){let Y=o._pendingPullIntos.peek();if(Tr(Y.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");Qa(o),Y.buffer=cr(Y.buffer),Y.readerType==="none"&&Lf(o,Y)}if(N(f))if(i0(o),j(f)===0)go(o,M,T,q);else{o._pendingPullIntos.length>0&&En(o);let Y=new Uint8Array(M,T,q);P(f,Y,!1)}else ru(f)?(go(o,M,T,q),Za(o)):go(o,M,T,q);Vr(o)}function wt(o,a){let f=o._controlledReadableByteStream;f._state==="readable"&&(Bf(o),vr(o),yo(o),bd(f,a))}function Hf(o,a){let f=o._queue.shift();o._queueTotalSize-=f.byteLength,$f(o);let b=new Uint8Array(f.buffer,f.byteOffset,f.byteLength);a._chunkSteps(b)}function eu(o){if(o._byobRequest===null&&o._pendingPullIntos.length>0){let a=o._pendingPullIntos.peek(),f=new Uint8Array(a.buffer,a.byteOffset+a.bytesFilled,a.byteLength-a.bytesFilled),b=Object.create(Gr.prototype);d0(b,o,f),o._byobRequest=b}return o._byobRequest}function Wf(o){let a=o._controlledReadableByteStream._state;return a==="errored"?null:a==="closed"?0:o._strategyHWM-o._queueTotalSize}function bo(o,a){let f=o._pendingPullIntos.peek();if(o._controlledReadableByteStream._state==="closed"){if(a!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(a===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(f.bytesFilled+a>f.byteLength)throw new RangeError("bytesWritten out of range")}f.buffer=cr(f.buffer),zf(o,a)}function Co(o,a){let f=o._pendingPullIntos.peek();if(o._controlledReadableByteStream._state==="closed"){if(a.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(a.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(f.byteOffset+f.bytesFilled!==a.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(f.bufferByteLength!==a.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(f.bytesFilled+a.byteLength>f.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let T=a.byteLength;f.buffer=cr(a.buffer),zf(o,T)}function Gf(o,a,f,b,T,q,M){a._controlledReadableByteStream=o,a._pullAgain=!1,a._pulling=!1,a._byobRequest=null,a._queue=a._queueTotalSize=void 0,vr(a),a._closeRequested=!1,a._started=!1,a._strategyHWM=q,a._pullAlgorithm=b,a._cancelAlgorithm=T,a._autoAllocateChunkSize=M,a._pendingPullIntos=new v,o._readableStreamController=a;let Y=f();A(h(Y),()=>(a._started=!0,Vr(a),null),ue=>(wt(a,ue),null))}function f0(o,a,f){let b=Object.create(lr.prototype),T,q,M;a.start!==void 0?T=()=>a.start(b):T=()=>{},a.pull!==void 0?q=()=>a.pull(b):q=()=>h(void 0),a.cancel!==void 0?M=ue=>a.cancel(ue):M=()=>h(void 0);let Y=a.autoAllocateChunkSize;if(Y===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Gf(o,b,T,q,M,f,Y)}function d0(o,a,f){o._associatedReadableByteStreamController=a,o._view=f}function tu(o){return new TypeError(`ReadableStreamBYOBRequest.prototype.${o} can only be used on a ReadableStreamBYOBRequest`)}function ds(o){return new TypeError(`ReadableByteStreamController.prototype.${o} can only be used on a ReadableByteStreamController`)}function h0(o,a){ce(o,a);let f=o?.mode;return{mode:f===void 0?void 0:p0(f,`${a} has member 'mode' that`)}}function p0(o,a){if(o=`${o}`,o!=="byob")throw new TypeError(`${a} '${o}' is not a valid enumeration value for ReadableStreamReaderMode`);return o}function m0(o,a){var f;ce(o,a);let b=(f=o?.min)!==null&&f!==void 0?f:1;return{min:F(b,`${a} has member 'min' that`)}}function Jf(o){return new Rr(o)}function Vf(o,a){o._reader._readIntoRequests.push(a)}function g0(o,a,f){let T=o._reader._readIntoRequests.shift();f?T._closeSteps(a):T._chunkSteps(a)}function Kf(o){return o._reader._readIntoRequests.length}function ru(o){let a=o._reader;return!(a===void 0||!Kr(a))}class Rr{constructor(a){if(Ne(a,1,"ReadableStreamBYOBReader"),I(a,"First parameter"),xr(a))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Jr(a._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");re(this,a),this._readIntoRequests=new v}get closed(){return Kr(this)?this._closedPromise:d(wo("closed"))}cancel(a=void 0){return Kr(this)?this._ownerReadableStream===void 0?d(ge("cancel")):ie(this,a):d(wo("cancel"))}read(a,f={}){if(!Kr(this))return d(wo("read"));if(!ArrayBuffer.isView(a))return d(new TypeError("view must be an array buffer view"));if(a.byteLength===0)return d(new TypeError("view must have non-zero byteLength"));if(a.buffer.byteLength===0)return d(new TypeError("view's buffer must have non-zero byteLength"));if(Tr(a.buffer))return d(new TypeError("view's buffer has been detached"));let b;try{b=m0(f,"options")}catch(te){return d(te)}let T=b.min;if(T===0)return d(new TypeError("options.min must be greater than 0"));if(s0(a)){if(T>a.byteLength)return d(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(T>a.length)return d(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return d(ge("read from"));let q,M,Y=l((te,fe)=>{q=te,M=fe});return Yf(this,a,T,{_chunkSteps:te=>q({value:te,done:!1}),_closeSteps:te=>q({value:te,done:!0}),_errorSteps:te=>M(te)}),Y}releaseLock(){if(!Kr(this))throw wo("releaseLock");this._ownerReadableStream!==void 0&&y0(this)}}Object.defineProperties(Rr.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(Rr.prototype.cancel,"cancel"),s(Rr.prototype.read,"read"),s(Rr.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Rr.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Kr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readIntoRequests")?!1:o instanceof Rr}function Yf(o,a,f,b){let T=o._ownerReadableStream;T._disturbed=!0,T._state==="errored"?b._errorSteps(T._storedError):a0(T._readableStreamController,a,f,b)}function y0(o){le(o);let a=new TypeError("Reader was released");Xf(o,a)}function Xf(o,a){let f=o._readIntoRequests;o._readIntoRequests=new v,f.forEach(b=>{b._errorSteps(a)})}function wo(o){return new TypeError(`ReadableStreamBYOBReader.prototype.${o} can only be used on a ReadableStreamBYOBReader`)}function hs(o,a){let{highWaterMark:f}=o;if(f===void 0)return a;if(ut(f)||f<0)throw new RangeError("Invalid highWaterMark");return f}function Eo(o){let{size:a}=o;return a||(()=>1)}function Ao(o,a){ce(o,a);let f=o?.highWaterMark,b=o?.size;return{highWaterMark:f===void 0?void 0:w(f),size:b===void 0?void 0:_0(b,`${a} has member 'size' that`)}}function _0(o,a){return ye(o,a),f=>w(o(f))}function b0(o,a){ce(o,a);let f=o?.abort,b=o?.close,T=o?.start,q=o?.type,M=o?.write;return{abort:f===void 0?void 0:C0(f,o,`${a} has member 'abort' that`),close:b===void 0?void 0:w0(b,o,`${a} has member 'close' that`),start:T===void 0?void 0:E0(T,o,`${a} has member 'start' that`),write:M===void 0?void 0:A0(M,o,`${a} has member 'write' that`),type:q}}function C0(o,a,f){return ye(o,f),b=>C(o,a,[b])}function w0(o,a,f){return ye(o,f),()=>C(o,a,[])}function E0(o,a,f){return ye(o,f),b=>D(o,a,[b])}function A0(o,a,f){return ye(o,f),(b,T)=>C(o,a,[b,T])}function Qf(o,a){if(!An(o))throw new TypeError(`${a} is not a WritableStream.`)}function S0(o){if(typeof o!="object"||o===null)return!1;try{return typeof o.aborted=="boolean"}catch{return!1}}let k0=typeof AbortController=="function";function D0(){if(k0)return new AbortController}class Or{constructor(a={},f={}){a===void 0?a=null:ve(a,"First parameter");let b=Ao(f,"Second parameter"),T=b0(a,"First parameter");if(ed(this),T.type!==void 0)throw new RangeError("Invalid type is specified");let M=Eo(b),Y=hs(b,1);U0(this,T,Y,M)}get locked(){if(!An(this))throw vo("locked");return Sn(this)}abort(a=void 0){return An(this)?Sn(this)?d(new TypeError("Cannot abort a stream that already has a writer")):So(this,a):d(vo("abort"))}close(){return An(this)?Sn(this)?d(new TypeError("Cannot close a stream that already has a writer")):Jt(this)?d(new TypeError("Cannot close an already-closing stream")):td(this):d(vo("close"))}getWriter(){if(!An(this))throw vo("getWriter");return Zf(this)}}Object.defineProperties(Or.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(Or.prototype.abort,"abort"),s(Or.prototype.close,"close"),s(Or.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Or.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function Zf(o){return new fr(o)}function T0(o,a,f,b,T=1,q=()=>1){let M=Object.create(Or.prototype);ed(M);let Y=Object.create(kn.prototype);return ad(M,Y,o,a,f,b,T,q),M}function ed(o){o._state="writable",o._storedError=void 0,o._writer=void 0,o._writableStreamController=void 0,o._writeRequests=new v,o._inFlightWriteRequest=void 0,o._closeRequest=void 0,o._inFlightCloseRequest=void 0,o._pendingAbortRequest=void 0,o._backpressure=!1}function An(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_writableStreamController")?!1:o instanceof Or}function Sn(o){return o._writer!==void 0}function So(o,a){var f;if(o._state==="closed"||o._state==="errored")return h(void 0);o._writableStreamController._abortReason=a,(f=o._writableStreamController._abortController)===null||f===void 0||f.abort(a);let b=o._state;if(b==="closed"||b==="errored")return h(void 0);if(o._pendingAbortRequest!==void 0)return o._pendingAbortRequest._promise;let T=!1;b==="erroring"&&(T=!0,a=void 0);let q=l((M,Y)=>{o._pendingAbortRequest={_promise:void 0,_resolve:M,_reject:Y,_reason:a,_wasAlreadyErroring:T}});return o._pendingAbortRequest._promise=q,T||su(o,a),q}function td(o){let a=o._state;if(a==="closed"||a==="errored")return d(new TypeError(`The stream (in ${a} state) is not in the writable state and cannot be closed`));let f=l((T,q)=>{let M={_resolve:T,_reject:q};o._closeRequest=M}),b=o._writer;return b!==void 0&&o._backpressure&&a==="writable"&&du(b),M0(o._writableStreamController),f}function v0(o){return l((f,b)=>{let T={_resolve:f,_reject:b};o._writeRequests.push(T)})}function nu(o,a){if(o._state==="writable"){su(o,a);return}ou(o)}function su(o,a){let f=o._writableStreamController;o._state="erroring",o._storedError=a;let b=o._writer;b!==void 0&&nd(b,a),!P0(o)&&f._started&&ou(o)}function ou(o){o._state="errored",o._writableStreamController[$]();let a=o._storedError;if(o._writeRequests.forEach(T=>{T._reject(a)}),o._writeRequests=new v,o._pendingAbortRequest===void 0){ko(o);return}let f=o._pendingAbortRequest;if(o._pendingAbortRequest=void 0,f._wasAlreadyErroring){f._reject(a),ko(o);return}let b=o._writableStreamController[x](f._reason);A(b,()=>(f._resolve(),ko(o),null),T=>(f._reject(T),ko(o),null))}function R0(o){o._inFlightWriteRequest._resolve(void 0),o._inFlightWriteRequest=void 0}function O0(o,a){o._inFlightWriteRequest._reject(a),o._inFlightWriteRequest=void 0,nu(o,a)}function F0(o){o._inFlightCloseRequest._resolve(void 0),o._inFlightCloseRequest=void 0,o._state==="erroring"&&(o._storedError=void 0,o._pendingAbortRequest!==void 0&&(o._pendingAbortRequest._resolve(),o._pendingAbortRequest=void 0)),o._state="closed";let f=o._writer;f!==void 0&&fd(f)}function x0(o,a){o._inFlightCloseRequest._reject(a),o._inFlightCloseRequest=void 0,o._pendingAbortRequest!==void 0&&(o._pendingAbortRequest._reject(a),o._pendingAbortRequest=void 0),nu(o,a)}function Jt(o){return!(o._closeRequest===void 0&&o._inFlightCloseRequest===void 0)}function P0(o){return!(o._inFlightWriteRequest===void 0&&o._inFlightCloseRequest===void 0)}function I0(o){o._inFlightCloseRequest=o._closeRequest,o._closeRequest=void 0}function N0(o){o._inFlightWriteRequest=o._writeRequests.shift()}function ko(o){o._closeRequest!==void 0&&(o._closeRequest._reject(o._storedError),o._closeRequest=void 0);let a=o._writer;a!==void 0&&lu(a,o._storedError)}function iu(o,a){let f=o._writer;f!==void 0&&a!==o._backpressure&&(a?V0(f):du(f)),o._backpressure=a}class fr{constructor(a){if(Ne(a,1,"WritableStreamDefaultWriter"),Qf(a,"First parameter"),Sn(a))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=a,a._writer=this;let f=a._state;if(f==="writable")!Jt(a)&&a._backpressure?Oo(this):dd(this),Ro(this);else if(f==="erroring")fu(this,a._storedError),Ro(this);else if(f==="closed")dd(this),G0(this);else{let b=a._storedError;fu(this,b),ld(this,b)}}get closed(){return Yr(this)?this._closedPromise:d(Xr("closed"))}get desiredSize(){if(!Yr(this))throw Xr("desiredSize");if(this._ownerWritableStream===void 0)throw ms("desiredSize");return L0(this)}get ready(){return Yr(this)?this._readyPromise:d(Xr("ready"))}abort(a=void 0){return Yr(this)?this._ownerWritableStream===void 0?d(ms("abort")):B0(this,a):d(Xr("abort"))}close(){if(!Yr(this))return d(Xr("close"));let a=this._ownerWritableStream;return a===void 0?d(ms("close")):Jt(a)?d(new TypeError("Cannot close an already-closing stream")):rd(this)}releaseLock(){if(!Yr(this))throw Xr("releaseLock");this._ownerWritableStream!==void 0&&sd(this)}write(a=void 0){return Yr(this)?this._ownerWritableStream===void 0?d(ms("write to")):od(this,a):d(Xr("write"))}}Object.defineProperties(fr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(fr.prototype.abort,"abort"),s(fr.prototype.close,"close"),s(fr.prototype.releaseLock,"releaseLock"),s(fr.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Yr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_ownerWritableStream")?!1:o instanceof fr}function B0(o,a){let f=o._ownerWritableStream;return So(f,a)}function rd(o){let a=o._ownerWritableStream;return td(a)}function j0(o){let a=o._ownerWritableStream,f=a._state;return Jt(a)||f==="closed"?h(void 0):f==="errored"?d(a._storedError):rd(o)}function q0(o,a){o._closedPromiseState==="pending"?lu(o,a):J0(o,a)}function nd(o,a){o._readyPromiseState==="pending"?hd(o,a):K0(o,a)}function L0(o){let a=o._ownerWritableStream,f=a._state;return f==="errored"||f==="erroring"?null:f==="closed"?0:ud(a._writableStreamController)}function sd(o){let a=o._ownerWritableStream,f=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");nd(o,f),q0(o,f),a._writer=void 0,o._ownerWritableStream=void 0}function od(o,a){let f=o._ownerWritableStream,b=f._writableStreamController,T=$0(b,a);if(f!==o._ownerWritableStream)return d(ms("write to"));let q=f._state;if(q==="errored")return d(f._storedError);if(Jt(f)||q==="closed")return d(new TypeError("The stream is closing or closed and cannot be written to"));if(q==="erroring")return d(f._storedError);let M=v0(f);return z0(b,a,T),M}let id={};class kn{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!au(this))throw cu("abortReason");return this._abortReason}get signal(){if(!au(this))throw cu("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(a=void 0){if(!au(this))throw cu("error");this._controlledWritableStream._state==="writable"&&cd(this,a)}[x](a){let f=this._abortAlgorithm(a);return Do(this),f}[$](){vr(this)}}Object.defineProperties(kn.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(kn.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function au(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledWritableStream")?!1:o instanceof kn}function ad(o,a,f,b,T,q,M,Y){a._controlledWritableStream=o,o._writableStreamController=a,a._queue=void 0,a._queueTotalSize=void 0,vr(a),a._abortReason=void 0,a._abortController=D0(),a._started=!1,a._strategySizeAlgorithm=Y,a._strategyHWM=M,a._writeAlgorithm=b,a._closeAlgorithm=T,a._abortAlgorithm=q;let ue=uu(a);iu(o,ue);let te=f(),fe=h(te);A(fe,()=>(a._started=!0,To(a),null),me=>(a._started=!0,nu(o,me),null))}function U0(o,a,f,b){let T=Object.create(kn.prototype),q,M,Y,ue;a.start!==void 0?q=()=>a.start(T):q=()=>{},a.write!==void 0?M=te=>a.write(te,T):M=()=>h(void 0),a.close!==void 0?Y=()=>a.close():Y=()=>h(void 0),a.abort!==void 0?ue=te=>a.abort(te):ue=()=>h(void 0),ad(o,T,q,M,Y,ue,f,b)}function Do(o){o._writeAlgorithm=void 0,o._closeAlgorithm=void 0,o._abortAlgorithm=void 0,o._strategySizeAlgorithm=void 0}function M0(o){Ka(o,id,0),To(o)}function $0(o,a){try{return o._strategySizeAlgorithm(a)}catch(f){return ps(o,f),1}}function ud(o){return o._strategyHWM-o._queueTotalSize}function z0(o,a,f){try{Ka(o,a,f)}catch(T){ps(o,T);return}let b=o._controlledWritableStream;if(!Jt(b)&&b._state==="writable"){let T=uu(o);iu(b,T)}To(o)}function To(o){let a=o._controlledWritableStream;if(!o._started||a._inFlightWriteRequest!==void 0)return;if(a._state==="erroring"){ou(a);return}if(o._queue.length===0)return;let b=n0(o);b===id?H0(o):W0(o,b)}function ps(o,a){o._controlledWritableStream._state==="writable"&&cd(o,a)}function H0(o){let a=o._controlledWritableStream;I0(a),Va(o);let f=o._closeAlgorithm();Do(o),A(f,()=>(F0(a),null),b=>(x0(a,b),null))}function W0(o,a){let f=o._controlledWritableStream;N0(f);let b=o._writeAlgorithm(a);A(b,()=>{R0(f);let T=f._state;if(Va(o),!Jt(f)&&T==="writable"){let q=uu(o);iu(f,q)}return To(o),null},T=>(f._state==="writable"&&Do(o),O0(f,T),null))}function uu(o){return ud(o)<=0}function cd(o,a){let f=o._controlledWritableStream;Do(o),su(f,a)}function vo(o){return new TypeError(`WritableStream.prototype.${o} can only be used on a WritableStream`)}function cu(o){return new TypeError(`WritableStreamDefaultController.prototype.${o} can only be used on a WritableStreamDefaultController`)}function Xr(o){return new TypeError(`WritableStreamDefaultWriter.prototype.${o} can only be used on a WritableStreamDefaultWriter`)}function ms(o){return new TypeError("Cannot "+o+" a stream using a released writer")}function Ro(o){o._closedPromise=l((a,f)=>{o._closedPromise_resolve=a,o._closedPromise_reject=f,o._closedPromiseState="pending"})}function ld(o,a){Ro(o),lu(o,a)}function G0(o){Ro(o),fd(o)}function lu(o,a){o._closedPromise_reject!==void 0&&(y(o._closedPromise),o._closedPromise_reject(a),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0,o._closedPromiseState="rejected")}function J0(o,a){ld(o,a)}function fd(o){o._closedPromise_resolve!==void 0&&(o._closedPromise_resolve(void 0),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0,o._closedPromiseState="resolved")}function Oo(o){o._readyPromise=l((a,f)=>{o._readyPromise_resolve=a,o._readyPromise_reject=f}),o._readyPromiseState="pending"}function fu(o,a){Oo(o),hd(o,a)}function dd(o){Oo(o),du(o)}function hd(o,a){o._readyPromise_reject!==void 0&&(y(o._readyPromise),o._readyPromise_reject(a),o._readyPromise_resolve=void 0,o._readyPromise_reject=void 0,o._readyPromiseState="rejected")}function V0(o){Oo(o)}function K0(o,a){fu(o,a)}function du(o){o._readyPromise_resolve!==void 0&&(o._readyPromise_resolve(void 0),o._readyPromise_resolve=void 0,o._readyPromise_reject=void 0,o._readyPromiseState="fulfilled")}function Y0(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let hu=Y0();function X0(o){if(!(typeof o=="function"||typeof o=="object")||o.name!=="DOMException")return!1;try{return new o,!0}catch{return!1}}function Q0(){let o=hu?.DOMException;return X0(o)?o:void 0}function Z0(){let o=function(f,b){this.message=f||"",this.name=b||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(o,"DOMException"),o.prototype=Object.create(Error.prototype),Object.defineProperty(o.prototype,"constructor",{value:o,writable:!0,configurable:!0}),o}let e_=Q0()||Z0();function pd(o,a,f,b,T,q){let M=L(o),Y=Zf(a);o._disturbed=!0;let ue=!1,te=h(void 0);return l((fe,me)=>{let Te;if(q!==void 0){if(Te=()=>{let ne=q.reason!==void 0?q.reason:new e_("Aborted","AbortError"),_e=[];b||_e.push(()=>a._state==="writable"?So(a,ne):h(void 0)),T||_e.push(()=>o._state==="readable"?Nt(o,ne):h(void 0)),rt(()=>Promise.all(_e.map(Re=>Re())),!0,ne)},q.aborted){Te();return}q.addEventListener("abort",Te)}function Bt(){return l((ne,_e)=>{function Re(ct){ct?ne():p(Rn(),Re,_e)}Re(!1)})}function Rn(){return ue?h(!0):p(Y._readyPromise,()=>l((ne,_e)=>{Z(M,{_chunkSteps:Re=>{te=p(od(Y,Re),void 0,e),ne(!1)},_closeSteps:()=>ne(!0),_errorSteps:_e})}))}if(hr(o,M._closedPromise,ne=>(b?Et(!0,ne):rt(()=>So(a,ne),!0,ne),null)),hr(a,Y._closedPromise,ne=>(T?Et(!0,ne):rt(()=>Nt(o,ne),!0,ne),null)),Qe(o,M._closedPromise,()=>(f?Et():rt(()=>j0(Y)),null)),Jt(a)||a._state==="closed"){let ne=new TypeError("the destination writable stream closed before all data could be piped to it");T?Et(!0,ne):rt(()=>Nt(o,ne),!0,ne)}y(Bt());function Ir(){let ne=te;return p(te,()=>ne!==te?Ir():void 0)}function hr(ne,_e,Re){ne._state==="errored"?Re(ne._storedError):S(_e,Re)}function Qe(ne,_e,Re){ne._state==="closed"?Re():R(_e,Re)}function rt(ne,_e,Re){if(ue)return;ue=!0,a._state==="writable"&&!Jt(a)?R(Ir(),ct):ct();function ct(){return A(ne(),()=>pr(_e,Re),On=>pr(!0,On)),null}}function Et(ne,_e){ue||(ue=!0,a._state==="writable"&&!Jt(a)?R(Ir(),()=>pr(ne,_e)):pr(ne,_e))}function pr(ne,_e){return sd(Y),le(M),q!==void 0&&q.removeEventListener("abort",Te),ne?me(_e):fe(void 0),null}})}class dr{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Fo(this))throw Po("desiredSize");return pu(this)}close(){if(!Fo(this))throw Po("close");if(!Tn(this))throw new TypeError("The stream is not in a state that permits close");Qr(this)}enqueue(a=void 0){if(!Fo(this))throw Po("enqueue");if(!Tn(this))throw new TypeError("The stream is not in a state that permits enqueue");return Dn(this,a)}error(a=void 0){if(!Fo(this))throw Po("error");It(this,a)}[V](a){vr(this);let f=this._cancelAlgorithm(a);return xo(this),f}[U](a){let f=this._controlledReadableStream;if(this._queue.length>0){let b=Va(this);this._closeRequested&&this._queue.length===0?(xo(this),_s(f)):gs(this),a._chunkSteps(b)}else O(f,a),gs(this)}[X](){}}Object.defineProperties(dr.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(dr.prototype.close,"close"),s(dr.prototype.enqueue,"enqueue"),s(dr.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dr.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function Fo(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledReadableStream")?!1:o instanceof dr}function gs(o){if(!md(o))return;if(o._pulling){o._pullAgain=!0;return}o._pulling=!0;let f=o._pullAlgorithm();A(f,()=>(o._pulling=!1,o._pullAgain&&(o._pullAgain=!1,gs(o)),null),b=>(It(o,b),null))}function md(o){let a=o._controlledReadableStream;return!Tn(o)||!o._started?!1:!!(xr(a)&&j(a)>0||pu(o)>0)}function xo(o){o._pullAlgorithm=void 0,o._cancelAlgorithm=void 0,o._strategySizeAlgorithm=void 0}function Qr(o){if(!Tn(o))return;let a=o._controlledReadableStream;o._closeRequested=!0,o._queue.length===0&&(xo(o),_s(a))}function Dn(o,a){if(!Tn(o))return;let f=o._controlledReadableStream;if(xr(f)&&j(f)>0)P(f,a,!1);else{let b;try{b=o._strategySizeAlgorithm(a)}catch(T){throw It(o,T),T}try{Ka(o,a,b)}catch(T){throw It(o,T),T}}gs(o)}function It(o,a){let f=o._controlledReadableStream;f._state==="readable"&&(vr(o),xo(o),bd(f,a))}function pu(o){let a=o._controlledReadableStream._state;return a==="errored"?null:a==="closed"?0:o._strategyHWM-o._queueTotalSize}function t_(o){return!md(o)}function Tn(o){let a=o._controlledReadableStream._state;return!o._closeRequested&&a==="readable"}function gd(o,a,f,b,T,q,M){a._controlledReadableStream=o,a._queue=void 0,a._queueTotalSize=void 0,vr(a),a._started=!1,a._closeRequested=!1,a._pullAgain=!1,a._pulling=!1,a._strategySizeAlgorithm=M,a._strategyHWM=q,a._pullAlgorithm=b,a._cancelAlgorithm=T,o._readableStreamController=a;let Y=f();A(h(Y),()=>(a._started=!0,gs(a),null),ue=>(It(a,ue),null))}function r_(o,a,f,b){let T=Object.create(dr.prototype),q,M,Y;a.start!==void 0?q=()=>a.start(T):q=()=>{},a.pull!==void 0?M=()=>a.pull(T):M=()=>h(void 0),a.cancel!==void 0?Y=ue=>a.cancel(ue):Y=()=>h(void 0),gd(o,T,q,M,Y,f,b)}function Po(o){return new TypeError(`ReadableStreamDefaultController.prototype.${o} can only be used on a ReadableStreamDefaultController`)}function n_(o,a){return Jr(o._readableStreamController)?o_(o):s_(o)}function s_(o,a){let f=L(o),b=!1,T=!1,q=!1,M=!1,Y,ue,te,fe,me,Te=l(Qe=>{me=Qe});function Bt(){return b?(T=!0,h(void 0)):(b=!0,Z(f,{_chunkSteps:rt=>{m(()=>{T=!1;let Et=rt,pr=rt;q||Dn(te._readableStreamController,Et),M||Dn(fe._readableStreamController,pr),b=!1,T&&Bt()})},_closeSteps:()=>{b=!1,q||Qr(te._readableStreamController),M||Qr(fe._readableStreamController),(!q||!M)&&me(void 0)},_errorSteps:()=>{b=!1}}),h(void 0))}function Rn(Qe){if(q=!0,Y=Qe,M){let rt=Se([Y,ue]),Et=Nt(o,rt);me(Et)}return Te}function Ir(Qe){if(M=!0,ue=Qe,q){let rt=Se([Y,ue]),Et=Nt(o,rt);me(Et)}return Te}function hr(){}return te=ys(hr,Bt,Rn),fe=ys(hr,Bt,Ir),S(f._closedPromise,Qe=>(It(te._readableStreamController,Qe),It(fe._readableStreamController,Qe),(!q||!M)&&me(void 0),null)),[te,fe]}function o_(o){let a=L(o),f=!1,b=!1,T=!1,q=!1,M=!1,Y,ue,te,fe,me,Te=l(ne=>{me=ne});function Bt(ne){S(ne._closedPromise,_e=>(ne!==a||(wt(te._readableStreamController,_e),wt(fe._readableStreamController,_e),(!q||!M)&&me(void 0)),null))}function Rn(){Kr(a)&&(le(a),a=L(o),Bt(a)),Z(a,{_chunkSteps:_e=>{m(()=>{b=!1,T=!1;let Re=_e,ct=_e;if(!q&&!M)try{ct=If(_e)}catch(On){wt(te._readableStreamController,On),wt(fe._readableStreamController,On),me(Nt(o,On));return}q||_o(te._readableStreamController,Re),M||_o(fe._readableStreamController,ct),f=!1,b?hr():T&&Qe()})},_closeSteps:()=>{f=!1,q||fs(te._readableStreamController),M||fs(fe._readableStreamController),te._readableStreamController._pendingPullIntos.length>0&&bo(te._readableStreamController,0),fe._readableStreamController._pendingPullIntos.length>0&&bo(fe._readableStreamController,0),(!q||!M)&&me(void 0)},_errorSteps:()=>{f=!1}})}function Ir(ne,_e){Q(a)&&(le(a),a=Jf(o),Bt(a));let Re=_e?fe:te,ct=_e?te:fe;Yf(a,ne,1,{_chunkSteps:Fn=>{m(()=>{b=!1,T=!1;let xn=_e?M:q;if(_e?q:M)xn||Co(Re._readableStreamController,Fn);else{let xd;try{xd=If(Fn)}catch(bu){wt(Re._readableStreamController,bu),wt(ct._readableStreamController,bu),me(Nt(o,bu));return}xn||Co(Re._readableStreamController,Fn),_o(ct._readableStreamController,xd)}f=!1,b?hr():T&&Qe()})},_closeSteps:Fn=>{f=!1;let xn=_e?M:q,Mo=_e?q:M;xn||fs(Re._readableStreamController),Mo||fs(ct._readableStreamController),Fn!==void 0&&(xn||Co(Re._readableStreamController,Fn),!Mo&&ct._readableStreamController._pendingPullIntos.length>0&&bo(ct._readableStreamController,0)),(!xn||!Mo)&&me(void 0)},_errorSteps:()=>{f=!1}})}function hr(){if(f)return b=!0,h(void 0);f=!0;let ne=eu(te._readableStreamController);return ne===null?Rn():Ir(ne._view,!1),h(void 0)}function Qe(){if(f)return T=!0,h(void 0);f=!0;let ne=eu(fe._readableStreamController);return ne===null?Rn():Ir(ne._view,!0),h(void 0)}function rt(ne){if(q=!0,Y=ne,M){let _e=Se([Y,ue]),Re=Nt(o,_e);me(Re)}return Te}function Et(ne){if(M=!0,ue=ne,q){let _e=Se([Y,ue]),Re=Nt(o,_e);me(Re)}return Te}function pr(){}return te=_d(pr,hr,rt),fe=_d(pr,Qe,Et),Bt(a),[te,fe]}function i_(o){return r(o)&&typeof o.getReader<"u"}function a_(o){return i_(o)?c_(o.getReader()):u_(o)}function u_(o){let a,f=Pf(o,"async"),b=e;function T(){let M;try{M=Zy(f)}catch(ue){return d(ue)}let Y=h(M);return _(Y,ue=>{if(!r(ue))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(e0(ue))Qr(a._readableStreamController);else{let fe=t0(ue);Dn(a._readableStreamController,fe)}})}function q(M){let Y=f.iterator,ue;try{ue=mo(Y,"return")}catch(me){return d(me)}if(ue===void 0)return h(void 0);let te;try{te=D(ue,Y,[M])}catch(me){return d(me)}let fe=h(te);return _(fe,me=>{if(!r(me))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return a=ys(b,T,q,0),a}function c_(o){let a,f=e;function b(){let q;try{q=o.read()}catch(M){return d(M)}return _(q,M=>{if(!r(M))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(M.done)Qr(a._readableStreamController);else{let Y=M.value;Dn(a._readableStreamController,Y)}})}function T(q){try{return h(o.cancel(q))}catch(M){return d(M)}}return a=ys(f,b,T,0),a}function l_(o,a){ce(o,a);let f=o,b=f?.autoAllocateChunkSize,T=f?.cancel,q=f?.pull,M=f?.start,Y=f?.type;return{autoAllocateChunkSize:b===void 0?void 0:F(b,`${a} has member 'autoAllocateChunkSize' that`),cancel:T===void 0?void 0:f_(T,f,`${a} has member 'cancel' that`),pull:q===void 0?void 0:d_(q,f,`${a} has member 'pull' that`),start:M===void 0?void 0:h_(M,f,`${a} has member 'start' that`),type:Y===void 0?void 0:p_(Y,`${a} has member 'type' that`)}}function f_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function d_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function h_(o,a,f){return ye(o,f),b=>D(o,a,[b])}function p_(o,a){if(o=`${o}`,o!=="bytes")throw new TypeError(`${a} '${o}' is not a valid enumeration value for ReadableStreamType`);return o}function m_(o,a){return ce(o,a),{preventCancel:!!o?.preventCancel}}function yd(o,a){ce(o,a);let f=o?.preventAbort,b=o?.preventCancel,T=o?.preventClose,q=o?.signal;return q!==void 0&&g_(q,`${a} has member 'signal' that`),{preventAbort:!!f,preventCancel:!!b,preventClose:!!T,signal:q}}function g_(o,a){if(!S0(o))throw new TypeError(`${a} is not an AbortSignal.`)}function y_(o,a){ce(o,a);let f=o?.readable;g(f,"readable","ReadableWritablePair"),I(f,`${a} has member 'readable' that`);let b=o?.writable;return g(b,"writable","ReadableWritablePair"),Qf(b,`${a} has member 'writable' that`),{readable:f,writable:b}}class Ye{constructor(a={},f={}){a===void 0?a=null:ve(a,"First parameter");let b=Ao(f,"Second parameter"),T=l_(a,"First parameter");if(mu(this),T.type==="bytes"){if(b.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let q=hs(b,0);f0(this,T,q)}else{let q=Eo(b),M=hs(b,1);r_(this,T,M,q)}}get locked(){if(!Fr(this))throw Zr("locked");return xr(this)}cancel(a=void 0){return Fr(this)?xr(this)?d(new TypeError("Cannot cancel a stream that already has a reader")):Nt(this,a):d(Zr("cancel"))}getReader(a=void 0){if(!Fr(this))throw Zr("getReader");return h0(a,"First parameter").mode===void 0?L(this):Jf(this)}pipeThrough(a,f={}){if(!Fr(this))throw Zr("pipeThrough");Ne(a,1,"pipeThrough");let b=y_(a,"First parameter"),T=yd(f,"Second parameter");if(xr(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(Sn(b.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let q=pd(this,b.writable,T.preventClose,T.preventAbort,T.preventCancel,T.signal);return y(q),b.readable}pipeTo(a,f={}){if(!Fr(this))return d(Zr("pipeTo"));if(a===void 0)return d("Parameter 1 is required in 'pipeTo'.");if(!An(a))return d(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let b;try{b=yd(f,"Second parameter")}catch(T){return d(T)}return xr(this)?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):Sn(a)?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):pd(this,a,b.preventClose,b.preventAbort,b.preventCancel,b.signal)}tee(){if(!Fr(this))throw Zr("tee");let a=n_(this);return Se(a)}values(a=void 0){if(!Fr(this))throw Zr("values");let f=m_(a,"First parameter");return bn(this,f.preventCancel)}[Ja](a){return this.values(a)}static from(a){return a_(a)}}Object.defineProperties(Ye,{from:{enumerable:!0}}),Object.defineProperties(Ye.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Ye.from,"from"),s(Ye.prototype.cancel,"cancel"),s(Ye.prototype.getReader,"getReader"),s(Ye.prototype.pipeThrough,"pipeThrough"),s(Ye.prototype.pipeTo,"pipeTo"),s(Ye.prototype.tee,"tee"),s(Ye.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ye.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Ye.prototype,Ja,{value:Ye.prototype.values,writable:!0,configurable:!0});function ys(o,a,f,b=1,T=()=>1){let q=Object.create(Ye.prototype);mu(q);let M=Object.create(dr.prototype);return gd(q,M,o,a,f,b,T),q}function _d(o,a,f){let b=Object.create(Ye.prototype);mu(b);let T=Object.create(lr.prototype);return Gf(b,T,o,a,f,0,void 0),b}function mu(o){o._state="readable",o._reader=void 0,o._storedError=void 0,o._disturbed=!1}function Fr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readableStreamController")?!1:o instanceof Ye}function xr(o){return o._reader!==void 0}function Nt(o,a){if(o._disturbed=!0,o._state==="closed")return h(void 0);if(o._state==="errored")return d(o._storedError);_s(o);let f=o._reader;if(f!==void 0&&Kr(f)){let T=f._readIntoRequests;f._readIntoRequests=new v,T.forEach(q=>{q._closeSteps(void 0)})}let b=o._readableStreamController[V](a);return _(b,e)}function _s(o){o._state="closed";let a=o._reader;if(a!==void 0&&(ae(a),Q(a))){let f=a._readRequests;a._readRequests=new v,f.forEach(b=>{b._closeSteps()})}}function bd(o,a){o._state="errored",o._storedError=a;let f=o._reader;f!==void 0&&(G(f,a),Q(f)?Fe(f,a):Xf(f,a))}function Zr(o){return new TypeError(`ReadableStream.prototype.${o} can only be used on a ReadableStream`)}function Cd(o,a){ce(o,a);let f=o?.highWaterMark;return g(f,"highWaterMark","QueuingStrategyInit"),{highWaterMark:w(f)}}let wd=o=>o.byteLength;s(wd,"size");class Io{constructor(a){Ne(a,1,"ByteLengthQueuingStrategy"),a=Cd(a,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!Ad(this))throw Ed("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!Ad(this))throw Ed("size");return wd}}Object.defineProperties(Io.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Io.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function Ed(o){return new TypeError(`ByteLengthQueuingStrategy.prototype.${o} can only be used on a ByteLengthQueuingStrategy`)}function Ad(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_byteLengthQueuingStrategyHighWaterMark")?!1:o instanceof Io}let Sd=()=>1;s(Sd,"size");class No{constructor(a){Ne(a,1,"CountQueuingStrategy"),a=Cd(a,"First parameter"),this._countQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!Dd(this))throw kd("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!Dd(this))throw kd("size");return Sd}}Object.defineProperties(No.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(No.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function kd(o){return new TypeError(`CountQueuingStrategy.prototype.${o} can only be used on a CountQueuingStrategy`)}function Dd(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_countQueuingStrategyHighWaterMark")?!1:o instanceof No}function __(o,a){ce(o,a);let f=o?.cancel,b=o?.flush,T=o?.readableType,q=o?.start,M=o?.transform,Y=o?.writableType;return{cancel:f===void 0?void 0:E_(f,o,`${a} has member 'cancel' that`),flush:b===void 0?void 0:b_(b,o,`${a} has member 'flush' that`),readableType:T,start:q===void 0?void 0:C_(q,o,`${a} has member 'start' that`),transform:M===void 0?void 0:w_(M,o,`${a} has member 'transform' that`),writableType:Y}}function b_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function C_(o,a,f){return ye(o,f),b=>D(o,a,[b])}function w_(o,a,f){return ye(o,f),(b,T)=>C(o,a,[b,T])}function E_(o,a,f){return ye(o,f),b=>C(o,a,[b])}class Bo{constructor(a={},f={},b={}){a===void 0&&(a=null);let T=Ao(f,"Second parameter"),q=Ao(b,"Third parameter"),M=__(a,"First parameter");if(M.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(M.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Y=hs(q,0),ue=Eo(q),te=hs(T,1),fe=Eo(T),me,Te=l(Bt=>{me=Bt});A_(this,Te,te,fe,Y,ue),k_(this,M),M.start!==void 0?me(M.start(this._transformStreamController)):me(void 0)}get readable(){if(!Td(this))throw Fd("readable");return this._readable}get writable(){if(!Td(this))throw Fd("writable");return this._writable}}Object.defineProperties(Bo.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Bo.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function A_(o,a,f,b,T,q){function M(){return a}function Y(Te){return v_(o,Te)}function ue(Te){return R_(o,Te)}function te(){return O_(o)}o._writable=T0(M,Y,te,ue,f,b);function fe(){return F_(o)}function me(Te){return x_(o,Te)}o._readable=ys(M,fe,me,T,q),o._backpressure=void 0,o._backpressureChangePromise=void 0,o._backpressureChangePromise_resolve=void 0,jo(o,!0),o._transformStreamController=void 0}function Td(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_transformStreamController")?!1:o instanceof Bo}function vd(o,a){It(o._readable._readableStreamController,a),gu(o,a)}function gu(o,a){Lo(o._transformStreamController),ps(o._writable._writableStreamController,a),yu(o)}function yu(o){o._backpressure&&jo(o,!1)}function jo(o,a){o._backpressureChangePromise!==void 0&&o._backpressureChangePromise_resolve(),o._backpressureChangePromise=l(f=>{o._backpressureChangePromise_resolve=f}),o._backpressure=a}class Pr{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!qo(this))throw Uo("desiredSize");let a=this._controlledTransformStream._readable._readableStreamController;return pu(a)}enqueue(a=void 0){if(!qo(this))throw Uo("enqueue");Rd(this,a)}error(a=void 0){if(!qo(this))throw Uo("error");D_(this,a)}terminate(){if(!qo(this))throw Uo("terminate");T_(this)}}Object.defineProperties(Pr.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Pr.prototype.enqueue,"enqueue"),s(Pr.prototype.error,"error"),s(Pr.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Pr.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function qo(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledTransformStream")?!1:o instanceof Pr}function S_(o,a,f,b,T){a._controlledTransformStream=o,o._transformStreamController=a,a._transformAlgorithm=f,a._flushAlgorithm=b,a._cancelAlgorithm=T,a._finishPromise=void 0,a._finishPromise_resolve=void 0,a._finishPromise_reject=void 0}function k_(o,a){let f=Object.create(Pr.prototype),b,T,q;a.transform!==void 0?b=M=>a.transform(M,f):b=M=>{try{return Rd(f,M),h(void 0)}catch(Y){return d(Y)}},a.flush!==void 0?T=()=>a.flush(f):T=()=>h(void 0),a.cancel!==void 0?q=M=>a.cancel(M):q=()=>h(void 0),S_(o,f,b,T,q)}function Lo(o){o._transformAlgorithm=void 0,o._flushAlgorithm=void 0,o._cancelAlgorithm=void 0}function Rd(o,a){let f=o._controlledTransformStream,b=f._readable._readableStreamController;if(!Tn(b))throw new TypeError("Readable side is not in a state that permits enqueue");try{Dn(b,a)}catch(q){throw gu(f,q),f._readable._storedError}t_(b)!==f._backpressure&&jo(f,!0)}function D_(o,a){vd(o._controlledTransformStream,a)}function Od(o,a){let f=o._transformAlgorithm(a);return _(f,void 0,b=>{throw vd(o._controlledTransformStream,b),b})}function T_(o){let a=o._controlledTransformStream,f=a._readable._readableStreamController;Qr(f);let b=new TypeError("TransformStream terminated");gu(a,b)}function v_(o,a){let f=o._transformStreamController;if(o._backpressure){let b=o._backpressureChangePromise;return _(b,()=>{let T=o._writable;if(T._state==="erroring")throw T._storedError;return Od(f,a)})}return Od(f,a)}function R_(o,a){let f=o._transformStreamController;if(f._finishPromise!==void 0)return f._finishPromise;let b=o._readable;f._finishPromise=l((q,M)=>{f._finishPromise_resolve=q,f._finishPromise_reject=M});let T=f._cancelAlgorithm(a);return Lo(f),A(T,()=>(b._state==="errored"?vn(f,b._storedError):(It(b._readableStreamController,a),_u(f)),null),q=>(It(b._readableStreamController,q),vn(f,q),null)),f._finishPromise}function O_(o){let a=o._transformStreamController;if(a._finishPromise!==void 0)return a._finishPromise;let f=o._readable;a._finishPromise=l((T,q)=>{a._finishPromise_resolve=T,a._finishPromise_reject=q});let b=a._flushAlgorithm();return Lo(a),A(b,()=>(f._state==="errored"?vn(a,f._storedError):(Qr(f._readableStreamController),_u(a)),null),T=>(It(f._readableStreamController,T),vn(a,T),null)),a._finishPromise}function F_(o){return jo(o,!1),o._backpressureChangePromise}function x_(o,a){let f=o._transformStreamController;if(f._finishPromise!==void 0)return f._finishPromise;let b=o._writable;f._finishPromise=l((q,M)=>{f._finishPromise_resolve=q,f._finishPromise_reject=M});let T=f._cancelAlgorithm(a);return Lo(f),A(T,()=>(b._state==="errored"?vn(f,b._storedError):(ps(b._writableStreamController,a),yu(o),_u(f)),null),q=>(ps(b._writableStreamController,q),yu(o),vn(f,q),null)),f._finishPromise}function Uo(o){return new TypeError(`TransformStreamDefaultController.prototype.${o} can only be used on a TransformStreamDefaultController`)}function _u(o){o._finishPromise_resolve!==void 0&&(o._finishPromise_resolve(),o._finishPromise_resolve=void 0,o._finishPromise_reject=void 0)}function vn(o,a){o._finishPromise_reject!==void 0&&(y(o._finishPromise),o._finishPromise_reject(a),o._finishPromise_resolve=void 0,o._finishPromise_reject=void 0)}function Fd(o){return new TypeError(`TransformStream.prototype.${o} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=Io,t.CountQueuingStrategy=No,t.ReadableByteStreamController=lr,t.ReadableStream=Ye,t.ReadableStreamBYOBReader=Rr,t.ReadableStreamBYOBRequest=Gr,t.ReadableStreamDefaultController=dr,t.ReadableStreamDefaultReader=z,t.TransformStream=Bo,t.TransformStreamDefaultController=Pr,t.WritableStream=Or,t.WritableStreamDefaultController=kn,t.WritableStreamDefaultWriter=fr}))});var Yh=J(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,Kh())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let c=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=c.byteLength,i.enqueue(new Uint8Array(c)),n===s.size&&i.close()}})})}catch{}});async function*Ju(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,Xh),u=r.buffer.slice(n,n+i);n+=u.byteLength,yield new Uint8Array(u)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let u=await s.slice(n,Math.min(s.size,n+Xh)).arrayBuffer();n+=u.byteLength,yield new Uint8Array(u)}}}var JT,Xh,Qh,Qb,qt,Ss=Be(()=>{JT=Ue(Yh(),1);Xh=65536;Qh=class Vu{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let u;ArrayBuffer.isView(i)?u=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?u=new Uint8Array(i.slice(0)):i instanceof Vu?u=i:u=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(u)?u.byteLength:u.size,this.#e.push(u)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of Ju(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of Ju(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=Ju(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),u=r<0?Math.max(s+r,0):Math.min(r,s),c=Math.max(u-i,0),l=this.#e,h=[],d=0;for(let A of l){if(d>=c)break;let R=ArrayBuffer.isView(A)?A.byteLength:A.size;if(i&&R<=i)i-=R,u-=R;else{let S;ArrayBuffer.isView(A)?(S=A.subarray(i,Math.min(R,u)),d+=S.byteLength):(S=A.slice(i,Math.min(R,u)),d+=S.size),u-=R,h.push(S),i=0}}let p=new Vu([],{type:String(n).toLowerCase()});return p.#r=c,p.#e=h,p}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(Qh.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Qb=Qh,qt=Qb});var Zb,eC,jr,Ku=Be(()=>{Ss();Zb=class extends qt{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof qt&&/^(File)$/.test(e[Symbol.toStringTag])}},eC=Zb,jr=eC});function tp(t,e=qt){var r=`${Zh()}${Zh()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r
|
|
27
|
-
Content-Disposition: form-data; name="`;return t.forEach((i,u)=>typeof i=="string"?n.push(s+
|
|
25
|
+
`;let l=(0,Yb.parseProxyResponse)(s);s.write(`${c}\r
|
|
26
|
+
`);let{connect:h,buffered:d}=await l;if(e.emit("proxyConnect",h),this.emit("proxyConnect",h,e),h.statusCode===200)return e.once("socket",Xb),r.secureEndpoint?(As("Upgrading socket connection to TLS"),Mh.connect({...zh($h(r),"host","path","port"),socket:s})):s;s.destroy();let p=new ai.Socket({writable:!1});return p.readable=!0,e.once("socket",A=>{As("Replaying proxy buffer for failed request"),(0,Gb.default)(A.listenerCount("data")>0),A.push(d),A.push(null)}),p}};ui.protocols=["http","https"];kt.HttpsProxyAgent=ui;function Xb(t){t.resume()}function zh(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}});function Qb(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",u=i;for(let d=1;d<r.length;d++)r[d]==="base64"?s=!0:r[d]&&(u+=`;${r[d]}`,r[d].indexOf("charset=")===0&&(n=r[d].substring(8)));!r[0]&&!n.length&&(u+=";charset=US-ASCII",n="US-ASCII");let c=s?"base64":"ascii",l=unescape(t.substring(e+1)),h=Buffer.from(l,c);return h.type=i,h.typeFull=u,h.charset=n,h}var Jh,Vh=Be(()=>{Jh=Qb});var Yh=J((ci,Kh)=>{(function(t,e){typeof ci=="object"&&typeof Kh<"u"?e(ci):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(ci,(function(t){"use strict";function e(){}function r(o){return typeof o=="object"&&o!==null||typeof o=="function"}let n=e;function s(o,a){try{Object.defineProperty(o,"name",{value:a,configurable:!0})}catch{}}let i=Promise,u=Promise.prototype.then,c=Promise.reject.bind(i);function l(o){return new i(o)}function h(o){return l(a=>a(o))}function d(o){return c(o)}function p(o,a,f){return u.call(o,a,f)}function A(o,a,f){p(p(o,a,f),void 0,n)}function R(o,a){A(o,a)}function S(o,a){A(o,void 0,a)}function _(o,a,f){return p(o,a,f)}function y(o){p(o,void 0,n)}let m=o=>{if(typeof queueMicrotask=="function")m=queueMicrotask;else{let a=h(void 0);m=f=>p(a,f)}return m(o)};function D(o,a,f){if(typeof o!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(o,a,f)}function C(o,a,f){try{return h(D(o,a,f))}catch(b){return d(b)}}let E=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(a){let f=this._back,b=f;f._elements.length===E-1&&(b={_elements:[],_next:void 0}),f._elements.push(a),b!==f&&(this._back=b,f._next=b),++this._size}shift(){let a=this._front,f=a,b=this._cursor,T=b+1,q=a._elements,M=q[b];return T===E&&(f=a._next,T=0),--this._size,this._cursor=T,a!==f&&(this._front=f),q[b]=void 0,M}forEach(a){let f=this._cursor,b=this._front,T=b._elements;for(;(f!==T.length||b._next!==void 0)&&!(f===T.length&&(b=b._next,T=b._elements,f=0,T.length===0));)a(T[f]),++f}peek(){let a=this._front,f=this._cursor;return a._elements[f]}}let x=Symbol("[[AbortSteps]]"),$=Symbol("[[ErrorSteps]]"),V=Symbol("[[CancelSteps]]"),U=Symbol("[[PullSteps]]"),X=Symbol("[[ReleaseSteps]]");function re(o,a){o._ownerReadableStream=a,a._reader=o,a._state==="readable"?Ee(o):a._state==="closed"?he(o):se(o,a._storedError)}function ie(o,a){let f=o._ownerReadableStream;return Nt(f,a)}function le(o){let a=o._ownerReadableStream;a._state==="readable"?G(o,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):K(o,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),a._readableStreamController[X](),a._reader=void 0,o._ownerReadableStream=void 0}function ge(o){return new TypeError("Cannot "+o+" a stream using a released reader")}function Ee(o){o._closedPromise=l((a,f)=>{o._closedPromise_resolve=a,o._closedPromise_reject=f})}function se(o,a){Ee(o),G(o,a)}function he(o){Ee(o),ae(o)}function G(o,a){o._closedPromise_reject!==void 0&&(y(o._closedPromise),o._closedPromise_reject(a),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0)}function K(o,a){se(o,a)}function ae(o){o._closedPromise_resolve!==void 0&&(o._closedPromise_resolve(void 0),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0)}let Me=Number.isFinite||function(o){return typeof o=="number"&&isFinite(o)},De=Math.trunc||function(o){return o<0?Math.ceil(o):Math.floor(o)};function W(o){return typeof o=="object"||typeof o=="function"}function ce(o,a){if(o!==void 0&&!W(o))throw new TypeError(`${a} is not an object.`)}function ye(o,a){if(typeof o!="function")throw new TypeError(`${a} is not a function.`)}function Pt(o){return typeof o=="object"&&o!==null||typeof o=="function"}function ve(o,a){if(!Pt(o))throw new TypeError(`${a} is not an object.`)}function Ne(o,a,f){if(o===void 0)throw new TypeError(`Parameter ${a} is required in '${f}'.`)}function g(o,a,f){if(o===void 0)throw new TypeError(`${a} is required in '${f}'.`)}function w(o){return Number(o)}function k(o){return o===0?0:o}function B(o){return k(De(o))}function F(o,a){let b=Number.MAX_SAFE_INTEGER,T=Number(o);if(T=k(T),!Me(T))throw new TypeError(`${a} is not a finite number`);if(T=B(T),T<0||T>b)throw new TypeError(`${a} is outside the accepted range of 0 to ${b}, inclusive`);return!Me(T)||T===0?0:T}function I(o,a){if(!Fr(o))throw new TypeError(`${a} is not a ReadableStream.`)}function L(o){return new z(o)}function O(o,a){o._reader._readRequests.push(a)}function P(o,a,f){let T=o._reader._readRequests.shift();f?T._closeSteps():T._chunkSteps(a)}function j(o){return o._reader._readRequests.length}function N(o){let a=o._reader;return!(a===void 0||!Q(a))}class z{constructor(a){if(Ne(a,1,"ReadableStreamDefaultReader"),I(a,"First parameter"),xr(a))throw new TypeError("This stream has already been locked for exclusive reading by another reader");re(this,a),this._readRequests=new v}get closed(){return Q(this)?this._closedPromise:d(Ie("closed"))}cancel(a=void 0){return Q(this)?this._ownerReadableStream===void 0?d(ge("cancel")):ie(this,a):d(Ie("cancel"))}read(){if(!Q(this))return d(Ie("read"));if(this._ownerReadableStream===void 0)return d(ge("read from"));let a,f,b=l((q,M)=>{a=q,f=M});return Z(this,{_chunkSteps:q=>a({value:q,done:!1}),_closeSteps:()=>a({value:void 0,done:!0}),_errorSteps:q=>f(q)}),b}releaseLock(){if(!Q(this))throw Ie("releaseLock");this._ownerReadableStream!==void 0&&we(this)}}Object.defineProperties(z.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(z.prototype.cancel,"cancel"),s(z.prototype.read,"read"),s(z.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(z.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Q(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readRequests")?!1:o instanceof z}function Z(o,a){let f=o._ownerReadableStream;f._disturbed=!0,f._state==="closed"?a._closeSteps():f._state==="errored"?a._errorSteps(f._storedError):f._readableStreamController[U](a)}function we(o){le(o);let a=new TypeError("Reader was released");Fe(o,a)}function Fe(o,a){let f=o._readRequests;o._readRequests=new v,f.forEach(b=>{b._errorSteps(a)})}function Ie(o){return new TypeError(`ReadableStreamDefaultReader.prototype.${o} can only be used on a ReadableStreamDefaultReader`)}let Ce=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class Ae{constructor(a,f){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=a,this._preventCancel=f}next(){let a=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?_(this._ongoingPromise,a,a):a(),this._ongoingPromise}return(a){let f=()=>this._returnSteps(a);return this._ongoingPromise?_(this._ongoingPromise,f,f):f()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let a=this._reader,f,b,T=l((M,Y)=>{f=M,b=Y});return Z(a,{_chunkSteps:M=>{this._ongoingPromise=void 0,m(()=>f({value:M,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,le(a),f({value:void 0,done:!0})},_errorSteps:M=>{this._ongoingPromise=void 0,this._isFinished=!0,le(a),b(M)}}),T}_returnSteps(a){if(this._isFinished)return Promise.resolve({value:a,done:!0});this._isFinished=!0;let f=this._reader;if(!this._preventCancel){let b=ie(f,a);return le(f),_(b,()=>({value:a,done:!0}))}return le(f),h({value:a,done:!0})}}let qe={next(){return Cn(this)?this._asyncIteratorImpl.next():d(wn("next"))},return(o){return Cn(this)?this._asyncIteratorImpl.return(o):d(wn("return"))}};Object.setPrototypeOf(qe,Ce);function bn(o,a){let f=L(o),b=new Ae(f,a),T=Object.create(qe);return T._asyncIteratorImpl=b,T}function Cn(o){if(!r(o)||!Object.prototype.hasOwnProperty.call(o,"_asyncIteratorImpl"))return!1;try{return o._asyncIteratorImpl instanceof Ae}catch{return!1}}function wn(o){return new TypeError(`ReadableStreamAsyncIterator.${o} can only be used on a ReadableSteamAsyncIterator`)}let ut=Number.isNaN||function(o){return o!==o};var ur,Ke,Le;function Se(o){return o.slice()}function xf(o,a,f,b,T){new Uint8Array(o).set(new Uint8Array(f,b,T),a)}let cr=o=>(typeof o.transfer=="function"?cr=a=>a.transfer():typeof structuredClone=="function"?cr=a=>structuredClone(a,{transfer:[a]}):cr=a=>a,cr(o)),Tr=o=>(typeof o.detached=="boolean"?Tr=a=>a.detached:Tr=a=>a.byteLength===0,Tr(o));function Pf(o,a,f){if(o.slice)return o.slice(a,f);let b=f-a,T=new ArrayBuffer(b);return xf(T,0,o,a,b),T}function mo(o,a){let f=o[a];if(f!=null){if(typeof f!="function")throw new TypeError(`${String(a)} is not a function`);return f}}function Zy(o){let a={[Symbol.iterator]:()=>o.iterator},f=(async function*(){return yield*a})(),b=f.next;return{iterator:f,nextMethod:b,done:!1}}let Va=(Le=(ur=Symbol.asyncIterator)!==null&&ur!==void 0?ur:(Ke=Symbol.for)===null||Ke===void 0?void 0:Ke.call(Symbol,"Symbol.asyncIterator"))!==null&&Le!==void 0?Le:"@@asyncIterator";function If(o,a="sync",f){if(f===void 0)if(a==="async"){if(f=mo(o,Va),f===void 0){let q=mo(o,Symbol.iterator),M=If(o,"sync",q);return Zy(M)}}else f=mo(o,Symbol.iterator);if(f===void 0)throw new TypeError("The object is not iterable");let b=D(f,o,[]);if(!r(b))throw new TypeError("The iterator method must return an object");let T=b.next;return{iterator:b,nextMethod:T,done:!1}}function e0(o){let a=D(o.nextMethod,o.iterator,[]);if(!r(a))throw new TypeError("The iterator.next() method must return an object");return a}function t0(o){return!!o.done}function r0(o){return o.value}function n0(o){return!(typeof o!="number"||ut(o)||o<0)}function Nf(o){let a=Pf(o.buffer,o.byteOffset,o.byteOffset+o.byteLength);return new Uint8Array(a)}function Ka(o){let a=o._queue.shift();return o._queueTotalSize-=a.size,o._queueTotalSize<0&&(o._queueTotalSize=0),a.value}function Ya(o,a,f){if(!n0(f)||f===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");o._queue.push({value:a,size:f}),o._queueTotalSize+=f}function s0(o){return o._queue.peek().value}function vr(o){o._queue=new v,o._queueTotalSize=0}function Bf(o){return o===DataView}function o0(o){return Bf(o.constructor)}function i0(o){return Bf(o)?1:o.BYTES_PER_ELEMENT}class Gr{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Xa(this))throw ru("view");return this._view}respond(a){if(!Xa(this))throw ru("respond");if(Ne(a,1,"respond"),a=F(a,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Tr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");bo(this._associatedReadableByteStreamController,a)}respondWithNewView(a){if(!Xa(this))throw ru("respondWithNewView");if(Ne(a,1,"respondWithNewView"),!ArrayBuffer.isView(a))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Tr(a.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");Co(this._associatedReadableByteStreamController,a)}}Object.defineProperties(Gr.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(Gr.prototype.respond,"respond"),s(Gr.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Gr.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class lr{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Jr(this))throw ds("byobRequest");return tu(this)}get desiredSize(){if(!Jr(this))throw ds("desiredSize");return Gf(this)}close(){if(!Jr(this))throw ds("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let a=this._controlledReadableByteStream._state;if(a!=="readable")throw new TypeError(`The stream (in ${a} state) is not in the readable state and cannot be closed`);fs(this)}enqueue(a){if(!Jr(this))throw ds("enqueue");if(Ne(a,1,"enqueue"),!ArrayBuffer.isView(a))throw new TypeError("chunk must be an array buffer view");if(a.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(a.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let f=this._controlledReadableByteStream._state;if(f!=="readable")throw new TypeError(`The stream (in ${f} state) is not in the readable state and cannot be enqueued to`);_o(this,a)}error(a=void 0){if(!Jr(this))throw ds("error");wt(this,a)}[V](a){jf(this),vr(this);let f=this._cancelAlgorithm(a);return yo(this),f}[U](a){let f=this._controlledReadableByteStream;if(this._queueTotalSize>0){Wf(this,a);return}let b=this._autoAllocateChunkSize;if(b!==void 0){let T;try{T=new ArrayBuffer(b)}catch(M){a._errorSteps(M);return}let q={buffer:T,bufferByteLength:b,byteOffset:0,byteLength:b,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(q)}O(f,a),Vr(this)}[X](){if(this._pendingPullIntos.length>0){let a=this._pendingPullIntos.peek();a.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(a)}}}Object.defineProperties(lr.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(lr.prototype.close,"close"),s(lr.prototype.enqueue,"enqueue"),s(lr.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(lr.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Jr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledReadableByteStream")?!1:o instanceof lr}function Xa(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_associatedReadableByteStreamController")?!1:o instanceof Gr}function Vr(o){if(!f0(o))return;if(o._pulling){o._pullAgain=!0;return}o._pulling=!0;let f=o._pullAlgorithm();A(f,()=>(o._pulling=!1,o._pullAgain&&(o._pullAgain=!1,Vr(o)),null),b=>(wt(o,b),null))}function jf(o){Za(o),o._pendingPullIntos=new v}function Qa(o,a){let f=!1;o._state==="closed"&&(f=!0);let b=qf(a);a.readerType==="default"?P(o,b,f):y0(o,b,f)}function qf(o){let a=o.bytesFilled,f=o.elementSize;return new o.viewConstructor(o.buffer,o.byteOffset,a/f)}function go(o,a,f,b){o._queue.push({buffer:a,byteOffset:f,byteLength:b}),o._queueTotalSize+=b}function Lf(o,a,f,b){let T;try{T=Pf(a,f,f+b)}catch(q){throw wt(o,q),q}go(o,T,0,b)}function Uf(o,a){a.bytesFilled>0&&Lf(o,a.buffer,a.byteOffset,a.bytesFilled),En(o)}function Mf(o,a){let f=Math.min(o._queueTotalSize,a.byteLength-a.bytesFilled),b=a.bytesFilled+f,T=f,q=!1,M=b%a.elementSize,Y=b-M;Y>=a.minimumFill&&(T=Y-a.bytesFilled,q=!0);let ue=o._queue;for(;T>0;){let te=ue.peek(),fe=Math.min(T,te.byteLength),me=a.byteOffset+a.bytesFilled;xf(a.buffer,me,te.buffer,te.byteOffset,fe),te.byteLength===fe?ue.shift():(te.byteOffset+=fe,te.byteLength-=fe),o._queueTotalSize-=fe,$f(o,fe,a),T-=fe}return q}function $f(o,a,f){f.bytesFilled+=a}function zf(o){o._queueTotalSize===0&&o._closeRequested?(yo(o),_s(o._controlledReadableByteStream)):Vr(o)}function Za(o){o._byobRequest!==null&&(o._byobRequest._associatedReadableByteStreamController=void 0,o._byobRequest._view=null,o._byobRequest=null)}function eu(o){for(;o._pendingPullIntos.length>0;){if(o._queueTotalSize===0)return;let a=o._pendingPullIntos.peek();Mf(o,a)&&(En(o),Qa(o._controlledReadableByteStream,a))}}function a0(o){let a=o._controlledReadableByteStream._reader;for(;a._readRequests.length>0;){if(o._queueTotalSize===0)return;let f=a._readRequests.shift();Wf(o,f)}}function u0(o,a,f,b){let T=o._controlledReadableByteStream,q=a.constructor,M=i0(q),{byteOffset:Y,byteLength:ue}=a,te=f*M,fe;try{fe=cr(a.buffer)}catch(Te){b._errorSteps(Te);return}let me={buffer:fe,bufferByteLength:fe.byteLength,byteOffset:Y,byteLength:ue,bytesFilled:0,minimumFill:te,elementSize:M,viewConstructor:q,readerType:"byob"};if(o._pendingPullIntos.length>0){o._pendingPullIntos.push(me),Kf(T,b);return}if(T._state==="closed"){let Te=new q(me.buffer,me.byteOffset,0);b._closeSteps(Te);return}if(o._queueTotalSize>0){if(Mf(o,me)){let Te=qf(me);zf(o),b._chunkSteps(Te);return}if(o._closeRequested){let Te=new TypeError("Insufficient bytes to fill elements in the given buffer");wt(o,Te),b._errorSteps(Te);return}}o._pendingPullIntos.push(me),Kf(T,b),Vr(o)}function c0(o,a){a.readerType==="none"&&En(o);let f=o._controlledReadableByteStream;if(nu(f))for(;Yf(f)>0;){let b=En(o);Qa(f,b)}}function l0(o,a,f){if($f(o,a,f),f.readerType==="none"){Uf(o,f),eu(o);return}if(f.bytesFilled<f.minimumFill)return;En(o);let b=f.bytesFilled%f.elementSize;if(b>0){let T=f.byteOffset+f.bytesFilled;Lf(o,f.buffer,T-b,b)}f.bytesFilled-=b,Qa(o._controlledReadableByteStream,f),eu(o)}function Hf(o,a){let f=o._pendingPullIntos.peek();Za(o),o._controlledReadableByteStream._state==="closed"?c0(o,f):l0(o,a,f),Vr(o)}function En(o){return o._pendingPullIntos.shift()}function f0(o){let a=o._controlledReadableByteStream;return a._state!=="readable"||o._closeRequested||!o._started?!1:!!(N(a)&&j(a)>0||nu(a)&&Yf(a)>0||Gf(o)>0)}function yo(o){o._pullAlgorithm=void 0,o._cancelAlgorithm=void 0}function fs(o){let a=o._controlledReadableByteStream;if(!(o._closeRequested||a._state!=="readable")){if(o._queueTotalSize>0){o._closeRequested=!0;return}if(o._pendingPullIntos.length>0){let f=o._pendingPullIntos.peek();if(f.bytesFilled%f.elementSize!==0){let b=new TypeError("Insufficient bytes to fill elements in the given buffer");throw wt(o,b),b}}yo(o),_s(a)}}function _o(o,a){let f=o._controlledReadableByteStream;if(o._closeRequested||f._state!=="readable")return;let{buffer:b,byteOffset:T,byteLength:q}=a;if(Tr(b))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let M=cr(b);if(o._pendingPullIntos.length>0){let Y=o._pendingPullIntos.peek();if(Tr(Y.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");Za(o),Y.buffer=cr(Y.buffer),Y.readerType==="none"&&Uf(o,Y)}if(N(f))if(a0(o),j(f)===0)go(o,M,T,q);else{o._pendingPullIntos.length>0&&En(o);let Y=new Uint8Array(M,T,q);P(f,Y,!1)}else nu(f)?(go(o,M,T,q),eu(o)):go(o,M,T,q);Vr(o)}function wt(o,a){let f=o._controlledReadableByteStream;f._state==="readable"&&(jf(o),vr(o),yo(o),Cd(f,a))}function Wf(o,a){let f=o._queue.shift();o._queueTotalSize-=f.byteLength,zf(o);let b=new Uint8Array(f.buffer,f.byteOffset,f.byteLength);a._chunkSteps(b)}function tu(o){if(o._byobRequest===null&&o._pendingPullIntos.length>0){let a=o._pendingPullIntos.peek(),f=new Uint8Array(a.buffer,a.byteOffset+a.bytesFilled,a.byteLength-a.bytesFilled),b=Object.create(Gr.prototype);h0(b,o,f),o._byobRequest=b}return o._byobRequest}function Gf(o){let a=o._controlledReadableByteStream._state;return a==="errored"?null:a==="closed"?0:o._strategyHWM-o._queueTotalSize}function bo(o,a){let f=o._pendingPullIntos.peek();if(o._controlledReadableByteStream._state==="closed"){if(a!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(a===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(f.bytesFilled+a>f.byteLength)throw new RangeError("bytesWritten out of range")}f.buffer=cr(f.buffer),Hf(o,a)}function Co(o,a){let f=o._pendingPullIntos.peek();if(o._controlledReadableByteStream._state==="closed"){if(a.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(a.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(f.byteOffset+f.bytesFilled!==a.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(f.bufferByteLength!==a.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(f.bytesFilled+a.byteLength>f.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let T=a.byteLength;f.buffer=cr(a.buffer),Hf(o,T)}function Jf(o,a,f,b,T,q,M){a._controlledReadableByteStream=o,a._pullAgain=!1,a._pulling=!1,a._byobRequest=null,a._queue=a._queueTotalSize=void 0,vr(a),a._closeRequested=!1,a._started=!1,a._strategyHWM=q,a._pullAlgorithm=b,a._cancelAlgorithm=T,a._autoAllocateChunkSize=M,a._pendingPullIntos=new v,o._readableStreamController=a;let Y=f();A(h(Y),()=>(a._started=!0,Vr(a),null),ue=>(wt(a,ue),null))}function d0(o,a,f){let b=Object.create(lr.prototype),T,q,M;a.start!==void 0?T=()=>a.start(b):T=()=>{},a.pull!==void 0?q=()=>a.pull(b):q=()=>h(void 0),a.cancel!==void 0?M=ue=>a.cancel(ue):M=()=>h(void 0);let Y=a.autoAllocateChunkSize;if(Y===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Jf(o,b,T,q,M,f,Y)}function h0(o,a,f){o._associatedReadableByteStreamController=a,o._view=f}function ru(o){return new TypeError(`ReadableStreamBYOBRequest.prototype.${o} can only be used on a ReadableStreamBYOBRequest`)}function ds(o){return new TypeError(`ReadableByteStreamController.prototype.${o} can only be used on a ReadableByteStreamController`)}function p0(o,a){ce(o,a);let f=o?.mode;return{mode:f===void 0?void 0:m0(f,`${a} has member 'mode' that`)}}function m0(o,a){if(o=`${o}`,o!=="byob")throw new TypeError(`${a} '${o}' is not a valid enumeration value for ReadableStreamReaderMode`);return o}function g0(o,a){var f;ce(o,a);let b=(f=o?.min)!==null&&f!==void 0?f:1;return{min:F(b,`${a} has member 'min' that`)}}function Vf(o){return new Rr(o)}function Kf(o,a){o._reader._readIntoRequests.push(a)}function y0(o,a,f){let T=o._reader._readIntoRequests.shift();f?T._closeSteps(a):T._chunkSteps(a)}function Yf(o){return o._reader._readIntoRequests.length}function nu(o){let a=o._reader;return!(a===void 0||!Kr(a))}class Rr{constructor(a){if(Ne(a,1,"ReadableStreamBYOBReader"),I(a,"First parameter"),xr(a))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Jr(a._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");re(this,a),this._readIntoRequests=new v}get closed(){return Kr(this)?this._closedPromise:d(wo("closed"))}cancel(a=void 0){return Kr(this)?this._ownerReadableStream===void 0?d(ge("cancel")):ie(this,a):d(wo("cancel"))}read(a,f={}){if(!Kr(this))return d(wo("read"));if(!ArrayBuffer.isView(a))return d(new TypeError("view must be an array buffer view"));if(a.byteLength===0)return d(new TypeError("view must have non-zero byteLength"));if(a.buffer.byteLength===0)return d(new TypeError("view's buffer must have non-zero byteLength"));if(Tr(a.buffer))return d(new TypeError("view's buffer has been detached"));let b;try{b=g0(f,"options")}catch(te){return d(te)}let T=b.min;if(T===0)return d(new TypeError("options.min must be greater than 0"));if(o0(a)){if(T>a.byteLength)return d(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(T>a.length)return d(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return d(ge("read from"));let q,M,Y=l((te,fe)=>{q=te,M=fe});return Xf(this,a,T,{_chunkSteps:te=>q({value:te,done:!1}),_closeSteps:te=>q({value:te,done:!0}),_errorSteps:te=>M(te)}),Y}releaseLock(){if(!Kr(this))throw wo("releaseLock");this._ownerReadableStream!==void 0&&_0(this)}}Object.defineProperties(Rr.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(Rr.prototype.cancel,"cancel"),s(Rr.prototype.read,"read"),s(Rr.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Rr.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Kr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readIntoRequests")?!1:o instanceof Rr}function Xf(o,a,f,b){let T=o._ownerReadableStream;T._disturbed=!0,T._state==="errored"?b._errorSteps(T._storedError):u0(T._readableStreamController,a,f,b)}function _0(o){le(o);let a=new TypeError("Reader was released");Qf(o,a)}function Qf(o,a){let f=o._readIntoRequests;o._readIntoRequests=new v,f.forEach(b=>{b._errorSteps(a)})}function wo(o){return new TypeError(`ReadableStreamBYOBReader.prototype.${o} can only be used on a ReadableStreamBYOBReader`)}function hs(o,a){let{highWaterMark:f}=o;if(f===void 0)return a;if(ut(f)||f<0)throw new RangeError("Invalid highWaterMark");return f}function Eo(o){let{size:a}=o;return a||(()=>1)}function Ao(o,a){ce(o,a);let f=o?.highWaterMark,b=o?.size;return{highWaterMark:f===void 0?void 0:w(f),size:b===void 0?void 0:b0(b,`${a} has member 'size' that`)}}function b0(o,a){return ye(o,a),f=>w(o(f))}function C0(o,a){ce(o,a);let f=o?.abort,b=o?.close,T=o?.start,q=o?.type,M=o?.write;return{abort:f===void 0?void 0:w0(f,o,`${a} has member 'abort' that`),close:b===void 0?void 0:E0(b,o,`${a} has member 'close' that`),start:T===void 0?void 0:A0(T,o,`${a} has member 'start' that`),write:M===void 0?void 0:S0(M,o,`${a} has member 'write' that`),type:q}}function w0(o,a,f){return ye(o,f),b=>C(o,a,[b])}function E0(o,a,f){return ye(o,f),()=>C(o,a,[])}function A0(o,a,f){return ye(o,f),b=>D(o,a,[b])}function S0(o,a,f){return ye(o,f),(b,T)=>C(o,a,[b,T])}function Zf(o,a){if(!An(o))throw new TypeError(`${a} is not a WritableStream.`)}function k0(o){if(typeof o!="object"||o===null)return!1;try{return typeof o.aborted=="boolean"}catch{return!1}}let D0=typeof AbortController=="function";function T0(){if(D0)return new AbortController}class Or{constructor(a={},f={}){a===void 0?a=null:ve(a,"First parameter");let b=Ao(f,"Second parameter"),T=C0(a,"First parameter");if(td(this),T.type!==void 0)throw new RangeError("Invalid type is specified");let M=Eo(b),Y=hs(b,1);M0(this,T,Y,M)}get locked(){if(!An(this))throw vo("locked");return Sn(this)}abort(a=void 0){return An(this)?Sn(this)?d(new TypeError("Cannot abort a stream that already has a writer")):So(this,a):d(vo("abort"))}close(){return An(this)?Sn(this)?d(new TypeError("Cannot close a stream that already has a writer")):Jt(this)?d(new TypeError("Cannot close an already-closing stream")):rd(this):d(vo("close"))}getWriter(){if(!An(this))throw vo("getWriter");return ed(this)}}Object.defineProperties(Or.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(Or.prototype.abort,"abort"),s(Or.prototype.close,"close"),s(Or.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Or.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function ed(o){return new fr(o)}function v0(o,a,f,b,T=1,q=()=>1){let M=Object.create(Or.prototype);td(M);let Y=Object.create(kn.prototype);return ud(M,Y,o,a,f,b,T,q),M}function td(o){o._state="writable",o._storedError=void 0,o._writer=void 0,o._writableStreamController=void 0,o._writeRequests=new v,o._inFlightWriteRequest=void 0,o._closeRequest=void 0,o._inFlightCloseRequest=void 0,o._pendingAbortRequest=void 0,o._backpressure=!1}function An(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_writableStreamController")?!1:o instanceof Or}function Sn(o){return o._writer!==void 0}function So(o,a){var f;if(o._state==="closed"||o._state==="errored")return h(void 0);o._writableStreamController._abortReason=a,(f=o._writableStreamController._abortController)===null||f===void 0||f.abort(a);let b=o._state;if(b==="closed"||b==="errored")return h(void 0);if(o._pendingAbortRequest!==void 0)return o._pendingAbortRequest._promise;let T=!1;b==="erroring"&&(T=!0,a=void 0);let q=l((M,Y)=>{o._pendingAbortRequest={_promise:void 0,_resolve:M,_reject:Y,_reason:a,_wasAlreadyErroring:T}});return o._pendingAbortRequest._promise=q,T||ou(o,a),q}function rd(o){let a=o._state;if(a==="closed"||a==="errored")return d(new TypeError(`The stream (in ${a} state) is not in the writable state and cannot be closed`));let f=l((T,q)=>{let M={_resolve:T,_reject:q};o._closeRequest=M}),b=o._writer;return b!==void 0&&o._backpressure&&a==="writable"&&hu(b),$0(o._writableStreamController),f}function R0(o){return l((f,b)=>{let T={_resolve:f,_reject:b};o._writeRequests.push(T)})}function su(o,a){if(o._state==="writable"){ou(o,a);return}iu(o)}function ou(o,a){let f=o._writableStreamController;o._state="erroring",o._storedError=a;let b=o._writer;b!==void 0&&sd(b,a),!I0(o)&&f._started&&iu(o)}function iu(o){o._state="errored",o._writableStreamController[$]();let a=o._storedError;if(o._writeRequests.forEach(T=>{T._reject(a)}),o._writeRequests=new v,o._pendingAbortRequest===void 0){ko(o);return}let f=o._pendingAbortRequest;if(o._pendingAbortRequest=void 0,f._wasAlreadyErroring){f._reject(a),ko(o);return}let b=o._writableStreamController[x](f._reason);A(b,()=>(f._resolve(),ko(o),null),T=>(f._reject(T),ko(o),null))}function O0(o){o._inFlightWriteRequest._resolve(void 0),o._inFlightWriteRequest=void 0}function F0(o,a){o._inFlightWriteRequest._reject(a),o._inFlightWriteRequest=void 0,su(o,a)}function x0(o){o._inFlightCloseRequest._resolve(void 0),o._inFlightCloseRequest=void 0,o._state==="erroring"&&(o._storedError=void 0,o._pendingAbortRequest!==void 0&&(o._pendingAbortRequest._resolve(),o._pendingAbortRequest=void 0)),o._state="closed";let f=o._writer;f!==void 0&&dd(f)}function P0(o,a){o._inFlightCloseRequest._reject(a),o._inFlightCloseRequest=void 0,o._pendingAbortRequest!==void 0&&(o._pendingAbortRequest._reject(a),o._pendingAbortRequest=void 0),su(o,a)}function Jt(o){return!(o._closeRequest===void 0&&o._inFlightCloseRequest===void 0)}function I0(o){return!(o._inFlightWriteRequest===void 0&&o._inFlightCloseRequest===void 0)}function N0(o){o._inFlightCloseRequest=o._closeRequest,o._closeRequest=void 0}function B0(o){o._inFlightWriteRequest=o._writeRequests.shift()}function ko(o){o._closeRequest!==void 0&&(o._closeRequest._reject(o._storedError),o._closeRequest=void 0);let a=o._writer;a!==void 0&&fu(a,o._storedError)}function au(o,a){let f=o._writer;f!==void 0&&a!==o._backpressure&&(a?K0(f):hu(f)),o._backpressure=a}class fr{constructor(a){if(Ne(a,1,"WritableStreamDefaultWriter"),Zf(a,"First parameter"),Sn(a))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=a,a._writer=this;let f=a._state;if(f==="writable")!Jt(a)&&a._backpressure?Oo(this):hd(this),Ro(this);else if(f==="erroring")du(this,a._storedError),Ro(this);else if(f==="closed")hd(this),J0(this);else{let b=a._storedError;du(this,b),fd(this,b)}}get closed(){return Yr(this)?this._closedPromise:d(Xr("closed"))}get desiredSize(){if(!Yr(this))throw Xr("desiredSize");if(this._ownerWritableStream===void 0)throw ms("desiredSize");return U0(this)}get ready(){return Yr(this)?this._readyPromise:d(Xr("ready"))}abort(a=void 0){return Yr(this)?this._ownerWritableStream===void 0?d(ms("abort")):j0(this,a):d(Xr("abort"))}close(){if(!Yr(this))return d(Xr("close"));let a=this._ownerWritableStream;return a===void 0?d(ms("close")):Jt(a)?d(new TypeError("Cannot close an already-closing stream")):nd(this)}releaseLock(){if(!Yr(this))throw Xr("releaseLock");this._ownerWritableStream!==void 0&&od(this)}write(a=void 0){return Yr(this)?this._ownerWritableStream===void 0?d(ms("write to")):id(this,a):d(Xr("write"))}}Object.defineProperties(fr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(fr.prototype.abort,"abort"),s(fr.prototype.close,"close"),s(fr.prototype.releaseLock,"releaseLock"),s(fr.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Yr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_ownerWritableStream")?!1:o instanceof fr}function j0(o,a){let f=o._ownerWritableStream;return So(f,a)}function nd(o){let a=o._ownerWritableStream;return rd(a)}function q0(o){let a=o._ownerWritableStream,f=a._state;return Jt(a)||f==="closed"?h(void 0):f==="errored"?d(a._storedError):nd(o)}function L0(o,a){o._closedPromiseState==="pending"?fu(o,a):V0(o,a)}function sd(o,a){o._readyPromiseState==="pending"?pd(o,a):Y0(o,a)}function U0(o){let a=o._ownerWritableStream,f=a._state;return f==="errored"||f==="erroring"?null:f==="closed"?0:cd(a._writableStreamController)}function od(o){let a=o._ownerWritableStream,f=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");sd(o,f),L0(o,f),a._writer=void 0,o._ownerWritableStream=void 0}function id(o,a){let f=o._ownerWritableStream,b=f._writableStreamController,T=z0(b,a);if(f!==o._ownerWritableStream)return d(ms("write to"));let q=f._state;if(q==="errored")return d(f._storedError);if(Jt(f)||q==="closed")return d(new TypeError("The stream is closing or closed and cannot be written to"));if(q==="erroring")return d(f._storedError);let M=R0(f);return H0(b,a,T),M}let ad={};class kn{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!uu(this))throw lu("abortReason");return this._abortReason}get signal(){if(!uu(this))throw lu("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(a=void 0){if(!uu(this))throw lu("error");this._controlledWritableStream._state==="writable"&&ld(this,a)}[x](a){let f=this._abortAlgorithm(a);return Do(this),f}[$](){vr(this)}}Object.defineProperties(kn.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(kn.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function uu(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledWritableStream")?!1:o instanceof kn}function ud(o,a,f,b,T,q,M,Y){a._controlledWritableStream=o,o._writableStreamController=a,a._queue=void 0,a._queueTotalSize=void 0,vr(a),a._abortReason=void 0,a._abortController=T0(),a._started=!1,a._strategySizeAlgorithm=Y,a._strategyHWM=M,a._writeAlgorithm=b,a._closeAlgorithm=T,a._abortAlgorithm=q;let ue=cu(a);au(o,ue);let te=f(),fe=h(te);A(fe,()=>(a._started=!0,To(a),null),me=>(a._started=!0,su(o,me),null))}function M0(o,a,f,b){let T=Object.create(kn.prototype),q,M,Y,ue;a.start!==void 0?q=()=>a.start(T):q=()=>{},a.write!==void 0?M=te=>a.write(te,T):M=()=>h(void 0),a.close!==void 0?Y=()=>a.close():Y=()=>h(void 0),a.abort!==void 0?ue=te=>a.abort(te):ue=()=>h(void 0),ud(o,T,q,M,Y,ue,f,b)}function Do(o){o._writeAlgorithm=void 0,o._closeAlgorithm=void 0,o._abortAlgorithm=void 0,o._strategySizeAlgorithm=void 0}function $0(o){Ya(o,ad,0),To(o)}function z0(o,a){try{return o._strategySizeAlgorithm(a)}catch(f){return ps(o,f),1}}function cd(o){return o._strategyHWM-o._queueTotalSize}function H0(o,a,f){try{Ya(o,a,f)}catch(T){ps(o,T);return}let b=o._controlledWritableStream;if(!Jt(b)&&b._state==="writable"){let T=cu(o);au(b,T)}To(o)}function To(o){let a=o._controlledWritableStream;if(!o._started||a._inFlightWriteRequest!==void 0)return;if(a._state==="erroring"){iu(a);return}if(o._queue.length===0)return;let b=s0(o);b===ad?W0(o):G0(o,b)}function ps(o,a){o._controlledWritableStream._state==="writable"&&ld(o,a)}function W0(o){let a=o._controlledWritableStream;N0(a),Ka(o);let f=o._closeAlgorithm();Do(o),A(f,()=>(x0(a),null),b=>(P0(a,b),null))}function G0(o,a){let f=o._controlledWritableStream;B0(f);let b=o._writeAlgorithm(a);A(b,()=>{O0(f);let T=f._state;if(Ka(o),!Jt(f)&&T==="writable"){let q=cu(o);au(f,q)}return To(o),null},T=>(f._state==="writable"&&Do(o),F0(f,T),null))}function cu(o){return cd(o)<=0}function ld(o,a){let f=o._controlledWritableStream;Do(o),ou(f,a)}function vo(o){return new TypeError(`WritableStream.prototype.${o} can only be used on a WritableStream`)}function lu(o){return new TypeError(`WritableStreamDefaultController.prototype.${o} can only be used on a WritableStreamDefaultController`)}function Xr(o){return new TypeError(`WritableStreamDefaultWriter.prototype.${o} can only be used on a WritableStreamDefaultWriter`)}function ms(o){return new TypeError("Cannot "+o+" a stream using a released writer")}function Ro(o){o._closedPromise=l((a,f)=>{o._closedPromise_resolve=a,o._closedPromise_reject=f,o._closedPromiseState="pending"})}function fd(o,a){Ro(o),fu(o,a)}function J0(o){Ro(o),dd(o)}function fu(o,a){o._closedPromise_reject!==void 0&&(y(o._closedPromise),o._closedPromise_reject(a),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0,o._closedPromiseState="rejected")}function V0(o,a){fd(o,a)}function dd(o){o._closedPromise_resolve!==void 0&&(o._closedPromise_resolve(void 0),o._closedPromise_resolve=void 0,o._closedPromise_reject=void 0,o._closedPromiseState="resolved")}function Oo(o){o._readyPromise=l((a,f)=>{o._readyPromise_resolve=a,o._readyPromise_reject=f}),o._readyPromiseState="pending"}function du(o,a){Oo(o),pd(o,a)}function hd(o){Oo(o),hu(o)}function pd(o,a){o._readyPromise_reject!==void 0&&(y(o._readyPromise),o._readyPromise_reject(a),o._readyPromise_resolve=void 0,o._readyPromise_reject=void 0,o._readyPromiseState="rejected")}function K0(o){Oo(o)}function Y0(o,a){du(o,a)}function hu(o){o._readyPromise_resolve!==void 0&&(o._readyPromise_resolve(void 0),o._readyPromise_resolve=void 0,o._readyPromise_reject=void 0,o._readyPromiseState="fulfilled")}function X0(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let pu=X0();function Q0(o){if(!(typeof o=="function"||typeof o=="object")||o.name!=="DOMException")return!1;try{return new o,!0}catch{return!1}}function Z0(){let o=pu?.DOMException;return Q0(o)?o:void 0}function e_(){let o=function(f,b){this.message=f||"",this.name=b||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(o,"DOMException"),o.prototype=Object.create(Error.prototype),Object.defineProperty(o.prototype,"constructor",{value:o,writable:!0,configurable:!0}),o}let t_=Z0()||e_();function md(o,a,f,b,T,q){let M=L(o),Y=ed(a);o._disturbed=!0;let ue=!1,te=h(void 0);return l((fe,me)=>{let Te;if(q!==void 0){if(Te=()=>{let ne=q.reason!==void 0?q.reason:new t_("Aborted","AbortError"),_e=[];b||_e.push(()=>a._state==="writable"?So(a,ne):h(void 0)),T||_e.push(()=>o._state==="readable"?Nt(o,ne):h(void 0)),rt(()=>Promise.all(_e.map(Re=>Re())),!0,ne)},q.aborted){Te();return}q.addEventListener("abort",Te)}function Bt(){return l((ne,_e)=>{function Re(ct){ct?ne():p(Rn(),Re,_e)}Re(!1)})}function Rn(){return ue?h(!0):p(Y._readyPromise,()=>l((ne,_e)=>{Z(M,{_chunkSteps:Re=>{te=p(id(Y,Re),void 0,e),ne(!1)},_closeSteps:()=>ne(!0),_errorSteps:_e})}))}if(hr(o,M._closedPromise,ne=>(b?Et(!0,ne):rt(()=>So(a,ne),!0,ne),null)),hr(a,Y._closedPromise,ne=>(T?Et(!0,ne):rt(()=>Nt(o,ne),!0,ne),null)),Qe(o,M._closedPromise,()=>(f?Et():rt(()=>q0(Y)),null)),Jt(a)||a._state==="closed"){let ne=new TypeError("the destination writable stream closed before all data could be piped to it");T?Et(!0,ne):rt(()=>Nt(o,ne),!0,ne)}y(Bt());function Ir(){let ne=te;return p(te,()=>ne!==te?Ir():void 0)}function hr(ne,_e,Re){ne._state==="errored"?Re(ne._storedError):S(_e,Re)}function Qe(ne,_e,Re){ne._state==="closed"?Re():R(_e,Re)}function rt(ne,_e,Re){if(ue)return;ue=!0,a._state==="writable"&&!Jt(a)?R(Ir(),ct):ct();function ct(){return A(ne(),()=>pr(_e,Re),On=>pr(!0,On)),null}}function Et(ne,_e){ue||(ue=!0,a._state==="writable"&&!Jt(a)?R(Ir(),()=>pr(ne,_e)):pr(ne,_e))}function pr(ne,_e){return od(Y),le(M),q!==void 0&&q.removeEventListener("abort",Te),ne?me(_e):fe(void 0),null}})}class dr{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Fo(this))throw Po("desiredSize");return mu(this)}close(){if(!Fo(this))throw Po("close");if(!Tn(this))throw new TypeError("The stream is not in a state that permits close");Qr(this)}enqueue(a=void 0){if(!Fo(this))throw Po("enqueue");if(!Tn(this))throw new TypeError("The stream is not in a state that permits enqueue");return Dn(this,a)}error(a=void 0){if(!Fo(this))throw Po("error");It(this,a)}[V](a){vr(this);let f=this._cancelAlgorithm(a);return xo(this),f}[U](a){let f=this._controlledReadableStream;if(this._queue.length>0){let b=Ka(this);this._closeRequested&&this._queue.length===0?(xo(this),_s(f)):gs(this),a._chunkSteps(b)}else O(f,a),gs(this)}[X](){}}Object.defineProperties(dr.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(dr.prototype.close,"close"),s(dr.prototype.enqueue,"enqueue"),s(dr.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dr.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function Fo(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledReadableStream")?!1:o instanceof dr}function gs(o){if(!gd(o))return;if(o._pulling){o._pullAgain=!0;return}o._pulling=!0;let f=o._pullAlgorithm();A(f,()=>(o._pulling=!1,o._pullAgain&&(o._pullAgain=!1,gs(o)),null),b=>(It(o,b),null))}function gd(o){let a=o._controlledReadableStream;return!Tn(o)||!o._started?!1:!!(xr(a)&&j(a)>0||mu(o)>0)}function xo(o){o._pullAlgorithm=void 0,o._cancelAlgorithm=void 0,o._strategySizeAlgorithm=void 0}function Qr(o){if(!Tn(o))return;let a=o._controlledReadableStream;o._closeRequested=!0,o._queue.length===0&&(xo(o),_s(a))}function Dn(o,a){if(!Tn(o))return;let f=o._controlledReadableStream;if(xr(f)&&j(f)>0)P(f,a,!1);else{let b;try{b=o._strategySizeAlgorithm(a)}catch(T){throw It(o,T),T}try{Ya(o,a,b)}catch(T){throw It(o,T),T}}gs(o)}function It(o,a){let f=o._controlledReadableStream;f._state==="readable"&&(vr(o),xo(o),Cd(f,a))}function mu(o){let a=o._controlledReadableStream._state;return a==="errored"?null:a==="closed"?0:o._strategyHWM-o._queueTotalSize}function r_(o){return!gd(o)}function Tn(o){let a=o._controlledReadableStream._state;return!o._closeRequested&&a==="readable"}function yd(o,a,f,b,T,q,M){a._controlledReadableStream=o,a._queue=void 0,a._queueTotalSize=void 0,vr(a),a._started=!1,a._closeRequested=!1,a._pullAgain=!1,a._pulling=!1,a._strategySizeAlgorithm=M,a._strategyHWM=q,a._pullAlgorithm=b,a._cancelAlgorithm=T,o._readableStreamController=a;let Y=f();A(h(Y),()=>(a._started=!0,gs(a),null),ue=>(It(a,ue),null))}function n_(o,a,f,b){let T=Object.create(dr.prototype),q,M,Y;a.start!==void 0?q=()=>a.start(T):q=()=>{},a.pull!==void 0?M=()=>a.pull(T):M=()=>h(void 0),a.cancel!==void 0?Y=ue=>a.cancel(ue):Y=()=>h(void 0),yd(o,T,q,M,Y,f,b)}function Po(o){return new TypeError(`ReadableStreamDefaultController.prototype.${o} can only be used on a ReadableStreamDefaultController`)}function s_(o,a){return Jr(o._readableStreamController)?i_(o):o_(o)}function o_(o,a){let f=L(o),b=!1,T=!1,q=!1,M=!1,Y,ue,te,fe,me,Te=l(Qe=>{me=Qe});function Bt(){return b?(T=!0,h(void 0)):(b=!0,Z(f,{_chunkSteps:rt=>{m(()=>{T=!1;let Et=rt,pr=rt;q||Dn(te._readableStreamController,Et),M||Dn(fe._readableStreamController,pr),b=!1,T&&Bt()})},_closeSteps:()=>{b=!1,q||Qr(te._readableStreamController),M||Qr(fe._readableStreamController),(!q||!M)&&me(void 0)},_errorSteps:()=>{b=!1}}),h(void 0))}function Rn(Qe){if(q=!0,Y=Qe,M){let rt=Se([Y,ue]),Et=Nt(o,rt);me(Et)}return Te}function Ir(Qe){if(M=!0,ue=Qe,q){let rt=Se([Y,ue]),Et=Nt(o,rt);me(Et)}return Te}function hr(){}return te=ys(hr,Bt,Rn),fe=ys(hr,Bt,Ir),S(f._closedPromise,Qe=>(It(te._readableStreamController,Qe),It(fe._readableStreamController,Qe),(!q||!M)&&me(void 0),null)),[te,fe]}function i_(o){let a=L(o),f=!1,b=!1,T=!1,q=!1,M=!1,Y,ue,te,fe,me,Te=l(ne=>{me=ne});function Bt(ne){S(ne._closedPromise,_e=>(ne!==a||(wt(te._readableStreamController,_e),wt(fe._readableStreamController,_e),(!q||!M)&&me(void 0)),null))}function Rn(){Kr(a)&&(le(a),a=L(o),Bt(a)),Z(a,{_chunkSteps:_e=>{m(()=>{b=!1,T=!1;let Re=_e,ct=_e;if(!q&&!M)try{ct=Nf(_e)}catch(On){wt(te._readableStreamController,On),wt(fe._readableStreamController,On),me(Nt(o,On));return}q||_o(te._readableStreamController,Re),M||_o(fe._readableStreamController,ct),f=!1,b?hr():T&&Qe()})},_closeSteps:()=>{f=!1,q||fs(te._readableStreamController),M||fs(fe._readableStreamController),te._readableStreamController._pendingPullIntos.length>0&&bo(te._readableStreamController,0),fe._readableStreamController._pendingPullIntos.length>0&&bo(fe._readableStreamController,0),(!q||!M)&&me(void 0)},_errorSteps:()=>{f=!1}})}function Ir(ne,_e){Q(a)&&(le(a),a=Vf(o),Bt(a));let Re=_e?fe:te,ct=_e?te:fe;Xf(a,ne,1,{_chunkSteps:Fn=>{m(()=>{b=!1,T=!1;let xn=_e?M:q;if(_e?q:M)xn||Co(Re._readableStreamController,Fn);else{let Pd;try{Pd=Nf(Fn)}catch(Cu){wt(Re._readableStreamController,Cu),wt(ct._readableStreamController,Cu),me(Nt(o,Cu));return}xn||Co(Re._readableStreamController,Fn),_o(ct._readableStreamController,Pd)}f=!1,b?hr():T&&Qe()})},_closeSteps:Fn=>{f=!1;let xn=_e?M:q,Mo=_e?q:M;xn||fs(Re._readableStreamController),Mo||fs(ct._readableStreamController),Fn!==void 0&&(xn||Co(Re._readableStreamController,Fn),!Mo&&ct._readableStreamController._pendingPullIntos.length>0&&bo(ct._readableStreamController,0)),(!xn||!Mo)&&me(void 0)},_errorSteps:()=>{f=!1}})}function hr(){if(f)return b=!0,h(void 0);f=!0;let ne=tu(te._readableStreamController);return ne===null?Rn():Ir(ne._view,!1),h(void 0)}function Qe(){if(f)return T=!0,h(void 0);f=!0;let ne=tu(fe._readableStreamController);return ne===null?Rn():Ir(ne._view,!0),h(void 0)}function rt(ne){if(q=!0,Y=ne,M){let _e=Se([Y,ue]),Re=Nt(o,_e);me(Re)}return Te}function Et(ne){if(M=!0,ue=ne,q){let _e=Se([Y,ue]),Re=Nt(o,_e);me(Re)}return Te}function pr(){}return te=bd(pr,hr,rt),fe=bd(pr,Qe,Et),Bt(a),[te,fe]}function a_(o){return r(o)&&typeof o.getReader<"u"}function u_(o){return a_(o)?l_(o.getReader()):c_(o)}function c_(o){let a,f=If(o,"async"),b=e;function T(){let M;try{M=e0(f)}catch(ue){return d(ue)}let Y=h(M);return _(Y,ue=>{if(!r(ue))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(t0(ue))Qr(a._readableStreamController);else{let fe=r0(ue);Dn(a._readableStreamController,fe)}})}function q(M){let Y=f.iterator,ue;try{ue=mo(Y,"return")}catch(me){return d(me)}if(ue===void 0)return h(void 0);let te;try{te=D(ue,Y,[M])}catch(me){return d(me)}let fe=h(te);return _(fe,me=>{if(!r(me))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return a=ys(b,T,q,0),a}function l_(o){let a,f=e;function b(){let q;try{q=o.read()}catch(M){return d(M)}return _(q,M=>{if(!r(M))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(M.done)Qr(a._readableStreamController);else{let Y=M.value;Dn(a._readableStreamController,Y)}})}function T(q){try{return h(o.cancel(q))}catch(M){return d(M)}}return a=ys(f,b,T,0),a}function f_(o,a){ce(o,a);let f=o,b=f?.autoAllocateChunkSize,T=f?.cancel,q=f?.pull,M=f?.start,Y=f?.type;return{autoAllocateChunkSize:b===void 0?void 0:F(b,`${a} has member 'autoAllocateChunkSize' that`),cancel:T===void 0?void 0:d_(T,f,`${a} has member 'cancel' that`),pull:q===void 0?void 0:h_(q,f,`${a} has member 'pull' that`),start:M===void 0?void 0:p_(M,f,`${a} has member 'start' that`),type:Y===void 0?void 0:m_(Y,`${a} has member 'type' that`)}}function d_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function h_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function p_(o,a,f){return ye(o,f),b=>D(o,a,[b])}function m_(o,a){if(o=`${o}`,o!=="bytes")throw new TypeError(`${a} '${o}' is not a valid enumeration value for ReadableStreamType`);return o}function g_(o,a){return ce(o,a),{preventCancel:!!o?.preventCancel}}function _d(o,a){ce(o,a);let f=o?.preventAbort,b=o?.preventCancel,T=o?.preventClose,q=o?.signal;return q!==void 0&&y_(q,`${a} has member 'signal' that`),{preventAbort:!!f,preventCancel:!!b,preventClose:!!T,signal:q}}function y_(o,a){if(!k0(o))throw new TypeError(`${a} is not an AbortSignal.`)}function __(o,a){ce(o,a);let f=o?.readable;g(f,"readable","ReadableWritablePair"),I(f,`${a} has member 'readable' that`);let b=o?.writable;return g(b,"writable","ReadableWritablePair"),Zf(b,`${a} has member 'writable' that`),{readable:f,writable:b}}class Ye{constructor(a={},f={}){a===void 0?a=null:ve(a,"First parameter");let b=Ao(f,"Second parameter"),T=f_(a,"First parameter");if(gu(this),T.type==="bytes"){if(b.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let q=hs(b,0);d0(this,T,q)}else{let q=Eo(b),M=hs(b,1);n_(this,T,M,q)}}get locked(){if(!Fr(this))throw Zr("locked");return xr(this)}cancel(a=void 0){return Fr(this)?xr(this)?d(new TypeError("Cannot cancel a stream that already has a reader")):Nt(this,a):d(Zr("cancel"))}getReader(a=void 0){if(!Fr(this))throw Zr("getReader");return p0(a,"First parameter").mode===void 0?L(this):Vf(this)}pipeThrough(a,f={}){if(!Fr(this))throw Zr("pipeThrough");Ne(a,1,"pipeThrough");let b=__(a,"First parameter"),T=_d(f,"Second parameter");if(xr(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(Sn(b.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let q=md(this,b.writable,T.preventClose,T.preventAbort,T.preventCancel,T.signal);return y(q),b.readable}pipeTo(a,f={}){if(!Fr(this))return d(Zr("pipeTo"));if(a===void 0)return d("Parameter 1 is required in 'pipeTo'.");if(!An(a))return d(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let b;try{b=_d(f,"Second parameter")}catch(T){return d(T)}return xr(this)?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):Sn(a)?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):md(this,a,b.preventClose,b.preventAbort,b.preventCancel,b.signal)}tee(){if(!Fr(this))throw Zr("tee");let a=s_(this);return Se(a)}values(a=void 0){if(!Fr(this))throw Zr("values");let f=g_(a,"First parameter");return bn(this,f.preventCancel)}[Va](a){return this.values(a)}static from(a){return u_(a)}}Object.defineProperties(Ye,{from:{enumerable:!0}}),Object.defineProperties(Ye.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Ye.from,"from"),s(Ye.prototype.cancel,"cancel"),s(Ye.prototype.getReader,"getReader"),s(Ye.prototype.pipeThrough,"pipeThrough"),s(Ye.prototype.pipeTo,"pipeTo"),s(Ye.prototype.tee,"tee"),s(Ye.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ye.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Ye.prototype,Va,{value:Ye.prototype.values,writable:!0,configurable:!0});function ys(o,a,f,b=1,T=()=>1){let q=Object.create(Ye.prototype);gu(q);let M=Object.create(dr.prototype);return yd(q,M,o,a,f,b,T),q}function bd(o,a,f){let b=Object.create(Ye.prototype);gu(b);let T=Object.create(lr.prototype);return Jf(b,T,o,a,f,0,void 0),b}function gu(o){o._state="readable",o._reader=void 0,o._storedError=void 0,o._disturbed=!1}function Fr(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_readableStreamController")?!1:o instanceof Ye}function xr(o){return o._reader!==void 0}function Nt(o,a){if(o._disturbed=!0,o._state==="closed")return h(void 0);if(o._state==="errored")return d(o._storedError);_s(o);let f=o._reader;if(f!==void 0&&Kr(f)){let T=f._readIntoRequests;f._readIntoRequests=new v,T.forEach(q=>{q._closeSteps(void 0)})}let b=o._readableStreamController[V](a);return _(b,e)}function _s(o){o._state="closed";let a=o._reader;if(a!==void 0&&(ae(a),Q(a))){let f=a._readRequests;a._readRequests=new v,f.forEach(b=>{b._closeSteps()})}}function Cd(o,a){o._state="errored",o._storedError=a;let f=o._reader;f!==void 0&&(G(f,a),Q(f)?Fe(f,a):Qf(f,a))}function Zr(o){return new TypeError(`ReadableStream.prototype.${o} can only be used on a ReadableStream`)}function wd(o,a){ce(o,a);let f=o?.highWaterMark;return g(f,"highWaterMark","QueuingStrategyInit"),{highWaterMark:w(f)}}let Ed=o=>o.byteLength;s(Ed,"size");class Io{constructor(a){Ne(a,1,"ByteLengthQueuingStrategy"),a=wd(a,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!Sd(this))throw Ad("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!Sd(this))throw Ad("size");return Ed}}Object.defineProperties(Io.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Io.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function Ad(o){return new TypeError(`ByteLengthQueuingStrategy.prototype.${o} can only be used on a ByteLengthQueuingStrategy`)}function Sd(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_byteLengthQueuingStrategyHighWaterMark")?!1:o instanceof Io}let kd=()=>1;s(kd,"size");class No{constructor(a){Ne(a,1,"CountQueuingStrategy"),a=wd(a,"First parameter"),this._countQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!Td(this))throw Dd("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!Td(this))throw Dd("size");return kd}}Object.defineProperties(No.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(No.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function Dd(o){return new TypeError(`CountQueuingStrategy.prototype.${o} can only be used on a CountQueuingStrategy`)}function Td(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_countQueuingStrategyHighWaterMark")?!1:o instanceof No}function b_(o,a){ce(o,a);let f=o?.cancel,b=o?.flush,T=o?.readableType,q=o?.start,M=o?.transform,Y=o?.writableType;return{cancel:f===void 0?void 0:A_(f,o,`${a} has member 'cancel' that`),flush:b===void 0?void 0:C_(b,o,`${a} has member 'flush' that`),readableType:T,start:q===void 0?void 0:w_(q,o,`${a} has member 'start' that`),transform:M===void 0?void 0:E_(M,o,`${a} has member 'transform' that`),writableType:Y}}function C_(o,a,f){return ye(o,f),b=>C(o,a,[b])}function w_(o,a,f){return ye(o,f),b=>D(o,a,[b])}function E_(o,a,f){return ye(o,f),(b,T)=>C(o,a,[b,T])}function A_(o,a,f){return ye(o,f),b=>C(o,a,[b])}class Bo{constructor(a={},f={},b={}){a===void 0&&(a=null);let T=Ao(f,"Second parameter"),q=Ao(b,"Third parameter"),M=b_(a,"First parameter");if(M.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(M.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Y=hs(q,0),ue=Eo(q),te=hs(T,1),fe=Eo(T),me,Te=l(Bt=>{me=Bt});S_(this,Te,te,fe,Y,ue),D_(this,M),M.start!==void 0?me(M.start(this._transformStreamController)):me(void 0)}get readable(){if(!vd(this))throw xd("readable");return this._readable}get writable(){if(!vd(this))throw xd("writable");return this._writable}}Object.defineProperties(Bo.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Bo.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function S_(o,a,f,b,T,q){function M(){return a}function Y(Te){return R_(o,Te)}function ue(Te){return O_(o,Te)}function te(){return F_(o)}o._writable=v0(M,Y,te,ue,f,b);function fe(){return x_(o)}function me(Te){return P_(o,Te)}o._readable=ys(M,fe,me,T,q),o._backpressure=void 0,o._backpressureChangePromise=void 0,o._backpressureChangePromise_resolve=void 0,jo(o,!0),o._transformStreamController=void 0}function vd(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_transformStreamController")?!1:o instanceof Bo}function Rd(o,a){It(o._readable._readableStreamController,a),yu(o,a)}function yu(o,a){Lo(o._transformStreamController),ps(o._writable._writableStreamController,a),_u(o)}function _u(o){o._backpressure&&jo(o,!1)}function jo(o,a){o._backpressureChangePromise!==void 0&&o._backpressureChangePromise_resolve(),o._backpressureChangePromise=l(f=>{o._backpressureChangePromise_resolve=f}),o._backpressure=a}class Pr{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!qo(this))throw Uo("desiredSize");let a=this._controlledTransformStream._readable._readableStreamController;return mu(a)}enqueue(a=void 0){if(!qo(this))throw Uo("enqueue");Od(this,a)}error(a=void 0){if(!qo(this))throw Uo("error");T_(this,a)}terminate(){if(!qo(this))throw Uo("terminate");v_(this)}}Object.defineProperties(Pr.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Pr.prototype.enqueue,"enqueue"),s(Pr.prototype.error,"error"),s(Pr.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Pr.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function qo(o){return!r(o)||!Object.prototype.hasOwnProperty.call(o,"_controlledTransformStream")?!1:o instanceof Pr}function k_(o,a,f,b,T){a._controlledTransformStream=o,o._transformStreamController=a,a._transformAlgorithm=f,a._flushAlgorithm=b,a._cancelAlgorithm=T,a._finishPromise=void 0,a._finishPromise_resolve=void 0,a._finishPromise_reject=void 0}function D_(o,a){let f=Object.create(Pr.prototype),b,T,q;a.transform!==void 0?b=M=>a.transform(M,f):b=M=>{try{return Od(f,M),h(void 0)}catch(Y){return d(Y)}},a.flush!==void 0?T=()=>a.flush(f):T=()=>h(void 0),a.cancel!==void 0?q=M=>a.cancel(M):q=()=>h(void 0),k_(o,f,b,T,q)}function Lo(o){o._transformAlgorithm=void 0,o._flushAlgorithm=void 0,o._cancelAlgorithm=void 0}function Od(o,a){let f=o._controlledTransformStream,b=f._readable._readableStreamController;if(!Tn(b))throw new TypeError("Readable side is not in a state that permits enqueue");try{Dn(b,a)}catch(q){throw yu(f,q),f._readable._storedError}r_(b)!==f._backpressure&&jo(f,!0)}function T_(o,a){Rd(o._controlledTransformStream,a)}function Fd(o,a){let f=o._transformAlgorithm(a);return _(f,void 0,b=>{throw Rd(o._controlledTransformStream,b),b})}function v_(o){let a=o._controlledTransformStream,f=a._readable._readableStreamController;Qr(f);let b=new TypeError("TransformStream terminated");yu(a,b)}function R_(o,a){let f=o._transformStreamController;if(o._backpressure){let b=o._backpressureChangePromise;return _(b,()=>{let T=o._writable;if(T._state==="erroring")throw T._storedError;return Fd(f,a)})}return Fd(f,a)}function O_(o,a){let f=o._transformStreamController;if(f._finishPromise!==void 0)return f._finishPromise;let b=o._readable;f._finishPromise=l((q,M)=>{f._finishPromise_resolve=q,f._finishPromise_reject=M});let T=f._cancelAlgorithm(a);return Lo(f),A(T,()=>(b._state==="errored"?vn(f,b._storedError):(It(b._readableStreamController,a),bu(f)),null),q=>(It(b._readableStreamController,q),vn(f,q),null)),f._finishPromise}function F_(o){let a=o._transformStreamController;if(a._finishPromise!==void 0)return a._finishPromise;let f=o._readable;a._finishPromise=l((T,q)=>{a._finishPromise_resolve=T,a._finishPromise_reject=q});let b=a._flushAlgorithm();return Lo(a),A(b,()=>(f._state==="errored"?vn(a,f._storedError):(Qr(f._readableStreamController),bu(a)),null),T=>(It(f._readableStreamController,T),vn(a,T),null)),a._finishPromise}function x_(o){return jo(o,!1),o._backpressureChangePromise}function P_(o,a){let f=o._transformStreamController;if(f._finishPromise!==void 0)return f._finishPromise;let b=o._writable;f._finishPromise=l((q,M)=>{f._finishPromise_resolve=q,f._finishPromise_reject=M});let T=f._cancelAlgorithm(a);return Lo(f),A(T,()=>(b._state==="errored"?vn(f,b._storedError):(ps(b._writableStreamController,a),_u(o),bu(f)),null),q=>(ps(b._writableStreamController,q),_u(o),vn(f,q),null)),f._finishPromise}function Uo(o){return new TypeError(`TransformStreamDefaultController.prototype.${o} can only be used on a TransformStreamDefaultController`)}function bu(o){o._finishPromise_resolve!==void 0&&(o._finishPromise_resolve(),o._finishPromise_resolve=void 0,o._finishPromise_reject=void 0)}function vn(o,a){o._finishPromise_reject!==void 0&&(y(o._finishPromise),o._finishPromise_reject(a),o._finishPromise_resolve=void 0,o._finishPromise_reject=void 0)}function xd(o){return new TypeError(`TransformStream.prototype.${o} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=Io,t.CountQueuingStrategy=No,t.ReadableByteStreamController=lr,t.ReadableStream=Ye,t.ReadableStreamBYOBReader=Rr,t.ReadableStreamBYOBRequest=Gr,t.ReadableStreamDefaultController=dr,t.ReadableStreamDefaultReader=z,t.TransformStream=Bo,t.TransformStreamDefaultController=Pr,t.WritableStream=Or,t.WritableStreamDefaultController=kn,t.WritableStreamDefaultWriter=fr}))});var Xh=J(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,Yh())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let c=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=c.byteLength,i.enqueue(new Uint8Array(c)),n===s.size&&i.close()}})})}catch{}});async function*Vu(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,Qh),u=r.buffer.slice(n,n+i);n+=u.byteLength,yield new Uint8Array(u)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let u=await s.slice(n,Math.min(s.size,n+Qh)).arrayBuffer();n+=u.byteLength,yield new Uint8Array(u)}}}var VT,Qh,Zh,Zb,qt,Ss=Be(()=>{VT=Ue(Xh(),1);Qh=65536;Zh=class Ku{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let u;ArrayBuffer.isView(i)?u=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?u=new Uint8Array(i.slice(0)):i instanceof Ku?u=i:u=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(u)?u.byteLength:u.size,this.#e.push(u)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of Vu(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of Vu(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=Vu(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),u=r<0?Math.max(s+r,0):Math.min(r,s),c=Math.max(u-i,0),l=this.#e,h=[],d=0;for(let A of l){if(d>=c)break;let R=ArrayBuffer.isView(A)?A.byteLength:A.size;if(i&&R<=i)i-=R,u-=R;else{let S;ArrayBuffer.isView(A)?(S=A.subarray(i,Math.min(R,u)),d+=S.byteLength):(S=A.slice(i,Math.min(R,u)),d+=S.size),u-=R,h.push(S),i=0}}let p=new Ku([],{type:String(n).toLowerCase()});return p.#r=c,p.#e=h,p}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(Zh.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Zb=Zh,qt=Zb});var eC,tC,jr,Yu=Be(()=>{Ss();eC=class extends qt{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof qt&&/^(File)$/.test(e[Symbol.toStringTag])}},tC=eC,jr=tC});function rp(t,e=qt){var r=`${ep()}${ep()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r
|
|
27
|
+
Content-Disposition: form-data; name="`;return t.forEach((i,u)=>typeof i=="string"?n.push(s+Xu(u)+`"\r
|
|
28
28
|
\r
|
|
29
29
|
${i.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
|
|
30
30
|
`)}\r
|
|
31
|
-
`):n.push(s+
|
|
31
|
+
`):n.push(s+Xu(u)+`"; filename="${Xu(i.name,1)}"\r
|
|
32
32
|
Content-Type: ${i.type||"application/octet-stream"}\r
|
|
33
33
|
\r
|
|
34
34
|
`,i,`\r
|
|
35
|
-
`)),n.push(`--${r}--`),new e(n,{type:"multipart/form-data; boundary="+r})}var ks,
|
|
36
|
-
`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),on=(t,e,r)=>{if(e.length<r)throw new TypeError(`Failed to execute '${t}' on 'FormData': ${r} arguments required, but only ${e.length} present.`)},qr=class{#e=[];constructor(...e){if(e.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[ks](){return"FormData"}[
|
|
37
|
-
--`+e;let r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n),this.boundaryChars[r[n]]=!0;this.boundary=r,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=Oe.START_BOUNDARY}write(e){let r=0,n=e.length,s=this.index,{lookbehind:i,boundary:u,boundaryChars:c,index:l,state:h,flags:d}=this,p=this.boundary.length,A=p-1,R=e.length,S,_,y=E=>{this[E+"Mark"]=r},m=E=>{delete this[E+"Mark"]},D=(E,v,x,$)=>{(v===void 0||v!==x)&&this[E]($&&$.subarray(v,x))},C=(E,v)=>{let x=E+"Mark";x in this&&(v?(D(E,this[x],r,e),delete this[x]):(D(E,this[x],e.length,e),this[x]=0))};for(r=0;r<n;r++)switch(S=e[r],h){case Oe.START_BOUNDARY:if(l===u.length-2){if(S===Ts)d|=Lr.LAST_BOUNDARY;else if(S!==gi)return;l++;break}else if(l-1===u.length-2){if(d&Lr.LAST_BOUNDARY&&S===Ts)h=Oe.END,d=0;else if(!(d&Lr.LAST_BOUNDARY)&&S===mi)l=0,D("onPartBegin"),h=Oe.HEADER_FIELD_START;else return;break}S!==u[l+2]&&(l=-2),S===u[l+2]&&l++;break;case Oe.HEADER_FIELD_START:h=Oe.HEADER_FIELD,y("onHeaderField"),l=0;case Oe.HEADER_FIELD:if(S===gi){m("onHeaderField"),h=Oe.HEADERS_ALMOST_DONE;break}if(l++,S===Ts)break;if(S===oC){if(l===1)return;C("onHeaderField",!0),h=Oe.HEADER_VALUE_START;break}if(_=uC(S),_<iC||_>aC)return;break;case Oe.HEADER_VALUE_START:if(S===sC)break;y("onHeaderValue"),h=Oe.HEADER_VALUE;case Oe.HEADER_VALUE:S===gi&&(C("onHeaderValue",!0),D("onHeaderEnd"),h=Oe.HEADER_VALUE_ALMOST_DONE);break;case Oe.HEADER_VALUE_ALMOST_DONE:if(S!==mi)return;h=Oe.HEADER_FIELD_START;break;case Oe.HEADERS_ALMOST_DONE:if(S!==mi)return;D("onHeadersEnd"),h=Oe.PART_DATA_START;break;case Oe.PART_DATA_START:h=Oe.PART_DATA,y("onPartData");case Oe.PART_DATA:if(s=l,l===0){for(r+=A;r<R&&!(e[r]in c);)r+=p;r-=A,S=e[r]}if(l<u.length)u[l]===S?(l===0&&C("onPartData",!0),l++):l=0;else if(l===u.length)l++,S===gi?d|=Lr.PART_BOUNDARY:S===Ts?d|=Lr.LAST_BOUNDARY:l=0;else if(l-1===u.length)if(d&Lr.PART_BOUNDARY){if(l=0,S===mi){d&=~Lr.PART_BOUNDARY,D("onPartEnd"),D("onPartBegin"),h=Oe.HEADER_FIELD_START;break}}else d&Lr.LAST_BOUNDARY&&S===Ts?(D("onPartEnd"),h=Oe.END,d=0):l=0;if(l>0)i[l-1]=S;else if(s>0){let E=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);D("onPartData",0,s,E),s=0,y("onPartData"),r--}break;case Oe.END:break;default:throw new Error(`Unexpected state entered: ${h}`)}C("onHeaderField"),C("onHeaderValue"),C("onPartData"),this.index=l,this.state=h,this.flags=d}end(){if(this.state===Oe.HEADER_FIELD_START&&this.index===0||this.state===Oe.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Oe.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function rc(t){if(t[it].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[it].disturbed=!0,t[it].error)throw t[it].error;let{body:e}=t;if(e===null)return ft.Buffer.alloc(0);if(!(e instanceof Dt.default))return ft.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new et(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof _r?s:new et(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?ft.Buffer.from(r.join("")):ft.Buffer.concat(r,n)}catch(s){throw new et(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new et(`Premature close of server response while trying to fetch ${t.url}`)}var Dt,br,ft,fC,it,Xt,qn,dC,yi,_p,bp,_i=Be(()=>{Dt=Ue(require("node:stream"),1),br=require("node:util"),ft=require("node:buffer");Ss();li();Xu();fi();hi();fC=(0,br.promisify)(Dt.default.pipeline),it=Symbol("Body internals"),Xt=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:Qu(e)?e=ft.Buffer.from(e.toString()):Ds(e)||ft.Buffer.isBuffer(e)||(br.types.isAnyArrayBuffer(e)?e=ft.Buffer.from(e):ArrayBuffer.isView(e)?e=ft.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Dt.default||(e instanceof qr?(e=tp(e),n=e.type.split("=")[1]):e=ft.Buffer.from(String(e))));let s=e;ft.Buffer.isBuffer(e)?s=Dt.default.Readable.from(e):Ds(e)&&(s=Dt.default.Readable.from(e.stream())),this[it]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Dt.default&&e.on("error",i=>{let u=i instanceof _r?i:new et(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[it].error=u})}get body(){return this[it].stream}get bodyUsed(){return this[it].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await rc(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new qr,s=new URLSearchParams(await this.text());for(let[i,u]of s)n.append(i,u);return n}let{toFormData:r}=await Promise.resolve().then(()=>(yp(),gp));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[it].body&&this[it].body.type||"",r=await this.arrayBuffer();return new qt([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await rc(this);return new TextDecoder().decode(e)}buffer(){return rc(this)}};Xt.prototype.buffer=(0,br.deprecate)(Xt.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Xt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,br.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});qn=(t,e)=>{let r,n,{body:s}=t[it];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Dt.default&&typeof s.getBoundary!="function"&&(r=new Dt.PassThrough({highWaterMark:e}),n=new Dt.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[it].stream=r,s=n),s},dC=(0,br.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),yi=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":Qu(t)?"application/x-www-form-urlencoded;charset=UTF-8":Ds(t)?t.type||null:ft.Buffer.isBuffer(t)||br.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof qr?`multipart/form-data; boundary=${e[it].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${dC(t)}`:t instanceof Dt.default?null:"text/plain;charset=UTF-8",_p=t=>{let{body:e}=t[it];return e===null?0:Ds(e)?e.size:ft.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},bp=async(t,{body:e})=>{e===null?t.end():await fC(e,t)}});function Cp(t=[]){return new at(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return bi(e),sc(e,String(r)),!0}catch{return!1}}))}var nc,vs,bi,sc,at,Ci=Be(()=>{nc=require("node:util"),vs=Ue(require("node:http"),1),bi=typeof vs.default.validateHeaderName=="function"?vs.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},sc=typeof vs.default.validateHeaderValue=="function"?vs.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},at=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(u=>[s,u]))}else if(e!=null)if(typeof e=="object"&&!nc.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||nc.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return r=r.length>0?r.map(([n,s])=>(bi(n),sc(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(u,c)=>(bi(u),sc(u,String(c)),URLSearchParams.prototype[s].call(n,String(u).toLowerCase(),String(c)));case"delete":case"has":case"getAll":return u=>(bi(u),URLSearchParams.prototype[s].call(n,String(u).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(at.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var hC,Rs,oc=Be(()=>{hC=new Set([301,302,303,307,308]),Rs=t=>hC.has(t)});var Lt,dt,wp=Be(()=>{Ci();_i();oc();Lt=Symbol("Response internals"),dt=class t extends Xt{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new at(r.headers);if(e!==null&&!s.has("Content-Type")){let i=yi(e,this);i&&s.append("Content-Type",i)}this[Lt]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[Lt].type}get url(){return this[Lt].url||""}get status(){return this[Lt].status}get ok(){return this[Lt].status>=200&&this[Lt].status<300}get redirected(){return this[Lt].counter>0}get statusText(){return this[Lt].statusText}get headers(){return this[Lt].headers}get highWaterMark(){return this[Lt].highWaterMark}clone(){return new t(qn(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!Rs(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[Lt].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new at(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(dt.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var Ep,Ap=Be(()=>{Ep=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function Sp(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function vp(t){if(!Dp.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function pC(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,kp.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function Ln(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:pC(t)}function Rp(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=Sp(s),u=Sp(s,!0);i.toString().length>4096&&(i=u),e&&(i=e(i)),r&&(u=r(u));let c=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return u;case"unsafe-url":return i;case"strict-origin":return Ln(i)&&!Ln(c)?"no-referrer":u.toString();case"strict-origin-when-cross-origin":return i.origin===c.origin?i:Ln(i)&&!Ln(c)?"no-referrer":u;case"same-origin":return i.origin===c.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===c.origin?i:u;case"no-referrer-when-downgrade":return Ln(i)&&!Ln(c)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function Op(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&Dp.has(n)&&(r=n);return r}var kp,Dp,Tp,ic=Be(()=>{kp=require("node:net");Dp=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),Tp="strict-origin-when-cross-origin"});var Fp,xp,Ge,Os,mC,Ur,Pp,Ip=Be(()=>{Fp=require("node:url"),xp=require("node:util");Ci();_i();hi();Ap();ic();Ge=Symbol("Request internals"),Os=t=>typeof t=="object"&&typeof t[Ge]=="object",mC=(0,xp.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Ur=class t extends Xt{constructor(e,r={}){let n;if(Os(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!Os(r)&&"data"in r&&mC(),(r.body!=null||Os(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:Os(e)&&e.body!==null?qn(e):null;super(i,{size:r.size||e.size||0});let u=new at(r.headers||e.headers||{});if(i!==null&&!u.has("Content-Type")){let h=yi(i,this);h&&u.set("Content-Type",h)}let c=Os(e)?e.signal:null;if("signal"in r&&(c=r.signal),c!=null&&!rp(c))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let l=r.referrer==null?e.referrer:r.referrer;if(l==="")l="no-referrer";else if(l){let h=new URL(l);l=/^about:(\/\/)?client$/.test(h)?"client":h}else l=void 0;this[Ge]={method:s,redirect:r.redirect||e.redirect||"follow",headers:u,parsedURL:n,signal:c,referrer:l},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[Ge].method}get url(){return(0,Fp.format)(this[Ge].parsedURL)}get headers(){return this[Ge].headers}get redirect(){return this[Ge].redirect}get signal(){return this[Ge].signal}get referrer(){if(this[Ge].referrer==="no-referrer")return"";if(this[Ge].referrer==="client")return"about:client";if(this[Ge].referrer)return this[Ge].referrer.toString()}get referrerPolicy(){return this[Ge].referrerPolicy}set referrerPolicy(e){this[Ge].referrerPolicy=vp(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Ur.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});Pp=t=>{let{parsedURL:e}=t[Ge],r=new at(t[Ge].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let c=_p(t);typeof c=="number"&&!Number.isNaN(c)&&(n=String(c))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=Tp),t.referrer&&t.referrer!=="no-referrer"?t[Ge].referrer=Rp(t):t[Ge].referrer="no-referrer",t[Ge].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=Ep(e),u={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:u}}});var Fs,Np=Be(()=>{fi();Fs=class extends _r{constructor(e,r="aborted"){super(e,r)}}});var qp={};Cu(qp,{AbortError:()=>Fs,Blob:()=>qt,FetchError:()=>et,File:()=>jr,FormData:()=>qr,Headers:()=>at,Request:()=>Ur,Response:()=>dt,blobFrom:()=>lp,blobFromSync:()=>cp,default:()=>ac,fileFrom:()=>fp,fileFromSync:()=>dp,isRedirect:()=>Rs});async function ac(t,e){return new Promise((r,n)=>{let s=new Ur(t,e),{parsedURL:i,options:u}=Pp(s);if(!gC.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let S=Gh(s.url),_=new dt(S,{headers:{"Content-Type":S.typeFull}});r(_);return}let c=(i.protocol==="https:"?jp.default:Bp.default).request,{signal:l}=s,h=null,d=()=>{let S=new Fs("The operation was aborted.");n(S),s.body&&s.body instanceof ht.default.Readable&&s.body.destroy(S),!(!h||!h.body)&&h.body.emit("error",S)};if(l&&l.aborted){d();return}let p=()=>{d(),R()},A=c(i.toString(),u);l&&l.addEventListener("abort",p);let R=()=>{A.abort(),l&&l.removeEventListener("abort",p)};A.on("error",S=>{n(new et(`request to ${s.url} failed, reason: ${S.message}`,"system",S)),R()}),yC(A,S=>{h&&h.body&&h.body.destroy(S)}),process.version<"v14"&&A.on("socket",S=>{let _;S.prependListener("end",()=>{_=S._eventsCount}),S.prependListener("close",y=>{if(h&&_<S._eventsCount&&!y){let m=new Error("Premature close");m.code="ERR_STREAM_PREMATURE_CLOSE",h.body.emit("error",m)}})}),A.on("response",S=>{A.setTimeout(0);let _=Cp(S.rawHeaders);if(Rs(S.statusCode)){let E=_.get("Location"),v=null;try{v=E===null?null:new URL(E,s.url)}catch{if(s.redirect!=="manual"){n(new et(`uri requested responds with an invalid redirect URL: ${E}`,"invalid-redirect")),R();return}}switch(s.redirect){case"error":n(new et(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),R();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new et(`maximum redirect reached at: ${s.url}`,"max-redirect")),R();return}let x={headers:new at(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:qn(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!np(s.url,v)||!sp(s.url,v))for(let V of["authorization","www-authenticate","cookie","cookie2"])x.headers.delete(V);if(S.statusCode!==303&&s.body&&e.body instanceof ht.default.Readable){n(new et("Cannot follow redirect with body being a readable stream","unsupported-redirect")),R();return}(S.statusCode===303||(S.statusCode===301||S.statusCode===302)&&s.method==="POST")&&(x.method="GET",x.body=void 0,x.headers.delete("content-length"));let $=Op(_);$&&(x.referrerPolicy=$),r(ac(new Ur(v,x))),R();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}l&&S.once("end",()=>{l.removeEventListener("abort",p)});let y=(0,ht.pipeline)(S,new ht.PassThrough,E=>{E&&n(E)});process.version<"v12.10"&&S.on("aborted",p);let m={url:s.url,status:S.statusCode,statusText:S.statusMessage,headers:_,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},D=_.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||D===null||S.statusCode===204||S.statusCode===304){h=new dt(y,m),r(h);return}let C={flush:cn.default.Z_SYNC_FLUSH,finishFlush:cn.default.Z_SYNC_FLUSH};if(D==="gzip"||D==="x-gzip"){y=(0,ht.pipeline)(y,cn.default.createGunzip(C),E=>{E&&n(E)}),h=new dt(y,m),r(h);return}if(D==="deflate"||D==="x-deflate"){let E=(0,ht.pipeline)(S,new ht.PassThrough,v=>{v&&n(v)});E.once("data",v=>{(v[0]&15)===8?y=(0,ht.pipeline)(y,cn.default.createInflate(),x=>{x&&n(x)}):y=(0,ht.pipeline)(y,cn.default.createInflateRaw(),x=>{x&&n(x)}),h=new dt(y,m),r(h)}),E.once("end",()=>{h||(h=new dt(y,m),r(h))});return}if(D==="br"){y=(0,ht.pipeline)(y,cn.default.createBrotliDecompress(),E=>{E&&n(E)}),h=new dt(y,m),r(h);return}h=new dt(y,m),r(h)}),bp(A,s).catch(n)})}function yC(t,e){let r=xs.Buffer.from(`0\r
|
|
35
|
+
`)),n.push(`--${r}--`),new e(n,{type:"multipart/form-data; boundary="+r})}var ks,rC,nC,ep,sC,tp,Xu,on,qr,li=Be(()=>{Ss();Yu();({toStringTag:ks,iterator:rC,hasInstance:nC}=Symbol),ep=Math.random,sC="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),tp=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[ks])?[(r=r!==void 0?r+"":e[ks]=="File"?e.name:"blob",t),e.name!==r||e[ks]=="blob"?new jr([e],r,e):e]:[t,e+""]),Xu=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r
|
|
36
|
+
`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),on=(t,e,r)=>{if(e.length<r)throw new TypeError(`Failed to execute '${t}' on 'FormData': ${r} arguments required, but only ${e.length} present.`)},qr=class{#e=[];constructor(...e){if(e.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[ks](){return"FormData"}[rC](){return this.entries()}static[nC](e){return e&&typeof e=="object"&&e[ks]==="FormData"&&!sC.some(r=>typeof e[r]!="function")}append(...e){on("append",arguments,2),this.#e.push(tp(...e))}delete(e){on("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){on("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;s<n;s++)if(r[s][0]===e)return r[s][1];return null}getAll(e,r){return on("getAll",arguments,1),r=[],e+="",this.#e.forEach(n=>n[0]===e&&r.push(n[1])),r}has(e){return on("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){on("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){on("set",arguments,2);var r=[],n=!0;e=tp(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var _r,fi=Be(()=>{_r=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var et,Qu=Be(()=>{fi();et=class extends _r{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var di,Zu,Ds,np,sp,op,hi=Be(()=>{di=Symbol.toStringTag,Zu=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[di]==="URLSearchParams",Ds=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[di]),np=t=>typeof t=="object"&&(t[di]==="AbortSignal"||t[di]==="EventTarget"),sp=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},op=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var ap=J((av,ip)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}ip.exports=globalThis.DOMException});var an,up,cp,ec,lp,fp,dp,hp,pp,mp,pi,tc=Be(()=>{an=require("node:fs"),up=require("node:path"),cp=Ue(ap(),1);Yu();Ss();({stat:ec}=an.promises),lp=(t,e)=>pp((0,an.statSync)(t),t,e),fp=(t,e)=>ec(t).then(r=>pp(r,t,e)),dp=(t,e)=>ec(t).then(r=>mp(r,t,e)),hp=(t,e)=>mp((0,an.statSync)(t),t,e),pp=(t,e,r="")=>new qt([new pi({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),mp=(t,e,r="")=>new jr([new pi({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,up.basename)(e),{type:r,lastModified:t.mtimeMs}),pi=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await ec(this.#e);if(e>this.lastModified)throw new cp.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,an.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var yp={};wu(yp,{toFormData:()=>fC});function lC(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function fC(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new rc(r[1]||r[2]),s,i,u,c,l,h,d=[],p=new qr,A=m=>{u+=y.decode(m,{stream:!0})},R=m=>{d.push(m)},S=()=>{let m=new jr(d,h,{type:l});p.append(c,m)},_=()=>{p.append(c,u)},y=new TextDecoder("utf-8");y.decode(),n.onPartBegin=function(){n.onPartData=A,n.onPartEnd=_,s="",i="",u="",c="",l="",h=null,d.length=0},n.onHeaderField=function(m){s+=y.decode(m,{stream:!0})},n.onHeaderValue=function(m){i+=y.decode(m,{stream:!0})},n.onHeaderEnd=function(){if(i+=y.decode(),s=s.toLowerCase(),s==="content-disposition"){let m=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);m&&(c=m[2]||m[3]||""),h=lC(i),h&&(n.onPartData=R,n.onPartEnd=S)}else s==="content-type"&&(l=i);i="",s=""};for await(let m of t)n.write(m);return n.end(),p}var Yt,Oe,gp,Lr,mi,gi,oC,Ts,iC,aC,uC,cC,un,rc,_p=Be(()=>{tc();li();Yt=0,Oe={START_BOUNDARY:Yt++,HEADER_FIELD_START:Yt++,HEADER_FIELD:Yt++,HEADER_VALUE_START:Yt++,HEADER_VALUE:Yt++,HEADER_VALUE_ALMOST_DONE:Yt++,HEADERS_ALMOST_DONE:Yt++,PART_DATA_START:Yt++,PART_DATA:Yt++,END:Yt++},gp=1,Lr={PART_BOUNDARY:gp,LAST_BOUNDARY:gp*=2},mi=10,gi=13,oC=32,Ts=45,iC=58,aC=97,uC=122,cC=t=>t|32,un=()=>{},rc=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=un,this.onHeaderField=un,this.onHeadersEnd=un,this.onHeaderValue=un,this.onPartBegin=un,this.onPartData=un,this.onPartEnd=un,this.boundaryChars={},e=`\r
|
|
37
|
+
--`+e;let r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n),this.boundaryChars[r[n]]=!0;this.boundary=r,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=Oe.START_BOUNDARY}write(e){let r=0,n=e.length,s=this.index,{lookbehind:i,boundary:u,boundaryChars:c,index:l,state:h,flags:d}=this,p=this.boundary.length,A=p-1,R=e.length,S,_,y=E=>{this[E+"Mark"]=r},m=E=>{delete this[E+"Mark"]},D=(E,v,x,$)=>{(v===void 0||v!==x)&&this[E]($&&$.subarray(v,x))},C=(E,v)=>{let x=E+"Mark";x in this&&(v?(D(E,this[x],r,e),delete this[x]):(D(E,this[x],e.length,e),this[x]=0))};for(r=0;r<n;r++)switch(S=e[r],h){case Oe.START_BOUNDARY:if(l===u.length-2){if(S===Ts)d|=Lr.LAST_BOUNDARY;else if(S!==gi)return;l++;break}else if(l-1===u.length-2){if(d&Lr.LAST_BOUNDARY&&S===Ts)h=Oe.END,d=0;else if(!(d&Lr.LAST_BOUNDARY)&&S===mi)l=0,D("onPartBegin"),h=Oe.HEADER_FIELD_START;else return;break}S!==u[l+2]&&(l=-2),S===u[l+2]&&l++;break;case Oe.HEADER_FIELD_START:h=Oe.HEADER_FIELD,y("onHeaderField"),l=0;case Oe.HEADER_FIELD:if(S===gi){m("onHeaderField"),h=Oe.HEADERS_ALMOST_DONE;break}if(l++,S===Ts)break;if(S===iC){if(l===1)return;C("onHeaderField",!0),h=Oe.HEADER_VALUE_START;break}if(_=cC(S),_<aC||_>uC)return;break;case Oe.HEADER_VALUE_START:if(S===oC)break;y("onHeaderValue"),h=Oe.HEADER_VALUE;case Oe.HEADER_VALUE:S===gi&&(C("onHeaderValue",!0),D("onHeaderEnd"),h=Oe.HEADER_VALUE_ALMOST_DONE);break;case Oe.HEADER_VALUE_ALMOST_DONE:if(S!==mi)return;h=Oe.HEADER_FIELD_START;break;case Oe.HEADERS_ALMOST_DONE:if(S!==mi)return;D("onHeadersEnd"),h=Oe.PART_DATA_START;break;case Oe.PART_DATA_START:h=Oe.PART_DATA,y("onPartData");case Oe.PART_DATA:if(s=l,l===0){for(r+=A;r<R&&!(e[r]in c);)r+=p;r-=A,S=e[r]}if(l<u.length)u[l]===S?(l===0&&C("onPartData",!0),l++):l=0;else if(l===u.length)l++,S===gi?d|=Lr.PART_BOUNDARY:S===Ts?d|=Lr.LAST_BOUNDARY:l=0;else if(l-1===u.length)if(d&Lr.PART_BOUNDARY){if(l=0,S===mi){d&=~Lr.PART_BOUNDARY,D("onPartEnd"),D("onPartBegin"),h=Oe.HEADER_FIELD_START;break}}else d&Lr.LAST_BOUNDARY&&S===Ts?(D("onPartEnd"),h=Oe.END,d=0):l=0;if(l>0)i[l-1]=S;else if(s>0){let E=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);D("onPartData",0,s,E),s=0,y("onPartData"),r--}break;case Oe.END:break;default:throw new Error(`Unexpected state entered: ${h}`)}C("onHeaderField"),C("onHeaderValue"),C("onPartData"),this.index=l,this.state=h,this.flags=d}end(){if(this.state===Oe.HEADER_FIELD_START&&this.index===0||this.state===Oe.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Oe.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function nc(t){if(t[it].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[it].disturbed=!0,t[it].error)throw t[it].error;let{body:e}=t;if(e===null)return ft.Buffer.alloc(0);if(!(e instanceof Dt.default))return ft.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new et(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof _r?s:new et(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?ft.Buffer.from(r.join("")):ft.Buffer.concat(r,n)}catch(s){throw new et(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new et(`Premature close of server response while trying to fetch ${t.url}`)}var Dt,br,ft,dC,it,Xt,qn,hC,yi,bp,Cp,_i=Be(()=>{Dt=Ue(require("node:stream"),1),br=require("node:util"),ft=require("node:buffer");Ss();li();Qu();fi();hi();dC=(0,br.promisify)(Dt.default.pipeline),it=Symbol("Body internals"),Xt=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:Zu(e)?e=ft.Buffer.from(e.toString()):Ds(e)||ft.Buffer.isBuffer(e)||(br.types.isAnyArrayBuffer(e)?e=ft.Buffer.from(e):ArrayBuffer.isView(e)?e=ft.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Dt.default||(e instanceof qr?(e=rp(e),n=e.type.split("=")[1]):e=ft.Buffer.from(String(e))));let s=e;ft.Buffer.isBuffer(e)?s=Dt.default.Readable.from(e):Ds(e)&&(s=Dt.default.Readable.from(e.stream())),this[it]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Dt.default&&e.on("error",i=>{let u=i instanceof _r?i:new et(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[it].error=u})}get body(){return this[it].stream}get bodyUsed(){return this[it].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await nc(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new qr,s=new URLSearchParams(await this.text());for(let[i,u]of s)n.append(i,u);return n}let{toFormData:r}=await Promise.resolve().then(()=>(_p(),yp));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[it].body&&this[it].body.type||"",r=await this.arrayBuffer();return new qt([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await nc(this);return new TextDecoder().decode(e)}buffer(){return nc(this)}};Xt.prototype.buffer=(0,br.deprecate)(Xt.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Xt.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,br.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});qn=(t,e)=>{let r,n,{body:s}=t[it];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Dt.default&&typeof s.getBoundary!="function"&&(r=new Dt.PassThrough({highWaterMark:e}),n=new Dt.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[it].stream=r,s=n),s},hC=(0,br.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),yi=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":Zu(t)?"application/x-www-form-urlencoded;charset=UTF-8":Ds(t)?t.type||null:ft.Buffer.isBuffer(t)||br.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof qr?`multipart/form-data; boundary=${e[it].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${hC(t)}`:t instanceof Dt.default?null:"text/plain;charset=UTF-8",bp=t=>{let{body:e}=t[it];return e===null?0:Ds(e)?e.size:ft.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},Cp=async(t,{body:e})=>{e===null?t.end():await dC(e,t)}});function wp(t=[]){return new at(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return bi(e),oc(e,String(r)),!0}catch{return!1}}))}var sc,vs,bi,oc,at,Ci=Be(()=>{sc=require("node:util"),vs=Ue(require("node:http"),1),bi=typeof vs.default.validateHeaderName=="function"?vs.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},oc=typeof vs.default.validateHeaderValue=="function"?vs.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},at=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(u=>[s,u]))}else if(e!=null)if(typeof e=="object"&&!sc.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||sc.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return r=r.length>0?r.map(([n,s])=>(bi(n),oc(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(u,c)=>(bi(u),oc(u,String(c)),URLSearchParams.prototype[s].call(n,String(u).toLowerCase(),String(c)));case"delete":case"has":case"getAll":return u=>(bi(u),URLSearchParams.prototype[s].call(n,String(u).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(at.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var pC,Rs,ic=Be(()=>{pC=new Set([301,302,303,307,308]),Rs=t=>pC.has(t)});var Lt,dt,Ep=Be(()=>{Ci();_i();ic();Lt=Symbol("Response internals"),dt=class t extends Xt{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new at(r.headers);if(e!==null&&!s.has("Content-Type")){let i=yi(e,this);i&&s.append("Content-Type",i)}this[Lt]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[Lt].type}get url(){return this[Lt].url||""}get status(){return this[Lt].status}get ok(){return this[Lt].status>=200&&this[Lt].status<300}get redirected(){return this[Lt].counter>0}get statusText(){return this[Lt].statusText}get headers(){return this[Lt].headers}get highWaterMark(){return this[Lt].highWaterMark}clone(){return new t(qn(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!Rs(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[Lt].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new at(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(dt.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var Ap,Sp=Be(()=>{Ap=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function kp(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function Rp(t){if(!Tp.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function mC(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,Dp.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function Ln(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:mC(t)}function Op(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=kp(s),u=kp(s,!0);i.toString().length>4096&&(i=u),e&&(i=e(i)),r&&(u=r(u));let c=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return u;case"unsafe-url":return i;case"strict-origin":return Ln(i)&&!Ln(c)?"no-referrer":u.toString();case"strict-origin-when-cross-origin":return i.origin===c.origin?i:Ln(i)&&!Ln(c)?"no-referrer":u;case"same-origin":return i.origin===c.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===c.origin?i:u;case"no-referrer-when-downgrade":return Ln(i)&&!Ln(c)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function Fp(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&Tp.has(n)&&(r=n);return r}var Dp,Tp,vp,ac=Be(()=>{Dp=require("node:net");Tp=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),vp="strict-origin-when-cross-origin"});var xp,Pp,Ge,Os,gC,Ur,Ip,Np=Be(()=>{xp=require("node:url"),Pp=require("node:util");Ci();_i();hi();Sp();ac();Ge=Symbol("Request internals"),Os=t=>typeof t=="object"&&typeof t[Ge]=="object",gC=(0,Pp.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Ur=class t extends Xt{constructor(e,r={}){let n;if(Os(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!Os(r)&&"data"in r&&gC(),(r.body!=null||Os(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:Os(e)&&e.body!==null?qn(e):null;super(i,{size:r.size||e.size||0});let u=new at(r.headers||e.headers||{});if(i!==null&&!u.has("Content-Type")){let h=yi(i,this);h&&u.set("Content-Type",h)}let c=Os(e)?e.signal:null;if("signal"in r&&(c=r.signal),c!=null&&!np(c))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let l=r.referrer==null?e.referrer:r.referrer;if(l==="")l="no-referrer";else if(l){let h=new URL(l);l=/^about:(\/\/)?client$/.test(h)?"client":h}else l=void 0;this[Ge]={method:s,redirect:r.redirect||e.redirect||"follow",headers:u,parsedURL:n,signal:c,referrer:l},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[Ge].method}get url(){return(0,xp.format)(this[Ge].parsedURL)}get headers(){return this[Ge].headers}get redirect(){return this[Ge].redirect}get signal(){return this[Ge].signal}get referrer(){if(this[Ge].referrer==="no-referrer")return"";if(this[Ge].referrer==="client")return"about:client";if(this[Ge].referrer)return this[Ge].referrer.toString()}get referrerPolicy(){return this[Ge].referrerPolicy}set referrerPolicy(e){this[Ge].referrerPolicy=Rp(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Ur.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});Ip=t=>{let{parsedURL:e}=t[Ge],r=new at(t[Ge].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let c=bp(t);typeof c=="number"&&!Number.isNaN(c)&&(n=String(c))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=vp),t.referrer&&t.referrer!=="no-referrer"?t[Ge].referrer=Op(t):t[Ge].referrer="no-referrer",t[Ge].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=Ap(e),u={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:u}}});var Fs,Bp=Be(()=>{fi();Fs=class extends _r{constructor(e,r="aborted"){super(e,r)}}});var Lp={};wu(Lp,{AbortError:()=>Fs,Blob:()=>qt,FetchError:()=>et,File:()=>jr,FormData:()=>qr,Headers:()=>at,Request:()=>Ur,Response:()=>dt,blobFrom:()=>fp,blobFromSync:()=>lp,default:()=>uc,fileFrom:()=>dp,fileFromSync:()=>hp,isRedirect:()=>Rs});async function uc(t,e){return new Promise((r,n)=>{let s=new Ur(t,e),{parsedURL:i,options:u}=Ip(s);if(!yC.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let S=Jh(s.url),_=new dt(S,{headers:{"Content-Type":S.typeFull}});r(_);return}let c=(i.protocol==="https:"?qp.default:jp.default).request,{signal:l}=s,h=null,d=()=>{let S=new Fs("The operation was aborted.");n(S),s.body&&s.body instanceof ht.default.Readable&&s.body.destroy(S),!(!h||!h.body)&&h.body.emit("error",S)};if(l&&l.aborted){d();return}let p=()=>{d(),R()},A=c(i.toString(),u);l&&l.addEventListener("abort",p);let R=()=>{A.abort(),l&&l.removeEventListener("abort",p)};A.on("error",S=>{n(new et(`request to ${s.url} failed, reason: ${S.message}`,"system",S)),R()}),_C(A,S=>{h&&h.body&&h.body.destroy(S)}),process.version<"v14"&&A.on("socket",S=>{let _;S.prependListener("end",()=>{_=S._eventsCount}),S.prependListener("close",y=>{if(h&&_<S._eventsCount&&!y){let m=new Error("Premature close");m.code="ERR_STREAM_PREMATURE_CLOSE",h.body.emit("error",m)}})}),A.on("response",S=>{A.setTimeout(0);let _=wp(S.rawHeaders);if(Rs(S.statusCode)){let E=_.get("Location"),v=null;try{v=E===null?null:new URL(E,s.url)}catch{if(s.redirect!=="manual"){n(new et(`uri requested responds with an invalid redirect URL: ${E}`,"invalid-redirect")),R();return}}switch(s.redirect){case"error":n(new et(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),R();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new et(`maximum redirect reached at: ${s.url}`,"max-redirect")),R();return}let x={headers:new at(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:qn(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!sp(s.url,v)||!op(s.url,v))for(let V of["authorization","www-authenticate","cookie","cookie2"])x.headers.delete(V);if(S.statusCode!==303&&s.body&&e.body instanceof ht.default.Readable){n(new et("Cannot follow redirect with body being a readable stream","unsupported-redirect")),R();return}(S.statusCode===303||(S.statusCode===301||S.statusCode===302)&&s.method==="POST")&&(x.method="GET",x.body=void 0,x.headers.delete("content-length"));let $=Fp(_);$&&(x.referrerPolicy=$),r(uc(new Ur(v,x))),R();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}l&&S.once("end",()=>{l.removeEventListener("abort",p)});let y=(0,ht.pipeline)(S,new ht.PassThrough,E=>{E&&n(E)});process.version<"v12.10"&&S.on("aborted",p);let m={url:s.url,status:S.statusCode,statusText:S.statusMessage,headers:_,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},D=_.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||D===null||S.statusCode===204||S.statusCode===304){h=new dt(y,m),r(h);return}let C={flush:cn.default.Z_SYNC_FLUSH,finishFlush:cn.default.Z_SYNC_FLUSH};if(D==="gzip"||D==="x-gzip"){y=(0,ht.pipeline)(y,cn.default.createGunzip(C),E=>{E&&n(E)}),h=new dt(y,m),r(h);return}if(D==="deflate"||D==="x-deflate"){let E=(0,ht.pipeline)(S,new ht.PassThrough,v=>{v&&n(v)});E.once("data",v=>{(v[0]&15)===8?y=(0,ht.pipeline)(y,cn.default.createInflate(),x=>{x&&n(x)}):y=(0,ht.pipeline)(y,cn.default.createInflateRaw(),x=>{x&&n(x)}),h=new dt(y,m),r(h)}),E.once("end",()=>{h||(h=new dt(y,m),r(h))});return}if(D==="br"){y=(0,ht.pipeline)(y,cn.default.createBrotliDecompress(),E=>{E&&n(E)}),h=new dt(y,m),r(h);return}h=new dt(y,m),r(h)}),Cp(A,s).catch(n)})}function _C(t,e){let r=xs.Buffer.from(`0\r
|
|
38
38
|
\r
|
|
39
|
-
`),n=!1,s=!1,i;t.on("response",u=>{let{headers:c}=u;n=c["transfer-encoding"]==="chunked"&&!c["content-length"]}),t.on("socket",u=>{let c=()=>{if(n&&!s){let h=new Error("Premature close");h.code="ERR_STREAM_PREMATURE_CLOSE",e(h)}},l=h=>{s=xs.Buffer.compare(h.slice(-5),r)===0,!s&&i&&(s=xs.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&xs.Buffer.compare(h.slice(-2),r.slice(3))===0),i=h};u.prependListener("close",c),u.on("data",l),t.on("close",()=>{u.removeListener("close",c),u.removeListener("data",l)})})}var
|
|
39
|
+
`),n=!1,s=!1,i;t.on("response",u=>{let{headers:c}=u;n=c["transfer-encoding"]==="chunked"&&!c["content-length"]}),t.on("socket",u=>{let c=()=>{if(n&&!s){let h=new Error("Premature close");h.code="ERR_STREAM_PREMATURE_CLOSE",e(h)}},l=h=>{s=xs.Buffer.compare(h.slice(-5),r)===0,!s&&i&&(s=xs.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&xs.Buffer.compare(h.slice(-2),r.slice(3))===0),i=h};u.prependListener("close",c),u.on("data",l),t.on("close",()=>{u.removeListener("close",c),u.removeListener("data",l)})})}var jp,qp,cn,ht,xs,yC,Up=Be(()=>{jp=Ue(require("node:http"),1),qp=Ue(require("node:https"),1),cn=Ue(require("node:zlib"),1),ht=Ue(require("node:stream"),1),xs=require("node:buffer");Vh();_i();Ep();Ci();Np();Qu();Bp();ic();li();hi();ac();tc();yC=new Set(["data:","http:","https:"])});var zp=J(Mn=>{"use strict";var bC=Mn&&Mn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Un;Object.defineProperty(Mn,"__esModule",{value:!0});Mn.Gaxios=void 0;var CC=bC(Nu()),wC=require("https"),ln=qu(),EC=wh(),Mp=require("stream"),$p=Mu(),AC=async()=>globalThis.crypto?.randomUUID()||(await import("crypto")).randomUUID(),wi=class{agentCache=new Map;defaults;interceptors;constructor(e){this.defaults=e||{},this.interceptors={request:new $p.GaxiosInterceptorManager,response:new $p.GaxiosInterceptorManager}}fetch(...e){let r=e[0],n=e[1],s,i=new Headers;return typeof r=="string"?s=new URL(r):r instanceof URL?s=r:r&&r.url&&(s=new URL(r.url)),r&&typeof r=="object"&&"headers"in r&&Un.mergeHeaders(i,r.headers),n&&Un.mergeHeaders(i,new Headers(n.headers)),typeof r=="object"&&!(r instanceof URL)?this.request({...n,...r,headers:i,url:s}):this.request({...n,headers:i,url:s})}async request(e={}){let r=await this.#n(e);return r=await this.#t(r),this.#r(this._request(r))}async _defaultAdapter(e){let r=e.fetchImplementation||this.defaults.fetchImplementation||await Un.#u(),n={...e};delete n.data;let s=await r(e.url,n),i=await this.getResponseData(e,s);return Object.getOwnPropertyDescriptor(s,"data")?.configurable||Object.defineProperties(s,{data:{configurable:!0,writable:!0,enumerable:!0,value:i}}),Object.assign(s,{config:e,data:i})}async _request(e){try{let r;if(e.adapter?r=await e.adapter(e,this._defaultAdapter.bind(this)):r=await this._defaultAdapter(e),!e.validateStatus(r.status)){if(e.responseType==="stream"){let s=[];for await(let i of r.data)s.push(i);r.data=s.toString()}let n=ln.GaxiosError.extractAPIErrorFromResponse(r,`Request failed with status code ${r.status}`);throw new ln.GaxiosError(n?.message,e,r,n)}return r}catch(r){let n;r instanceof ln.GaxiosError?n=r:r instanceof Error?n=new ln.GaxiosError(r.message,e,void 0,r):n=new ln.GaxiosError("Unexpected Gaxios Error",e,void 0,r);let{shouldRetry:s,config:i}=await(0,EC.getRetryConfig)(n);if(s&&i)return n.config.retryConfig.currentRetryAttempt=i.retryConfig.currentRetryAttempt,e.retryConfig=n.config?.retryConfig,this.#s(e),this._request(e);throw e.errorRedactor&&e.errorRedactor(n),n}}async getResponseData(e,r){if(e.maxContentLength&&r.headers.has("content-length")&&e.maxContentLength<Number.parseInt(r.headers?.get("content-length")||""))throw new ln.GaxiosError("Response's `Content-Length` is over the limit.",e,Object.assign(r,{config:e}));switch(e.responseType){case"stream":return r.body;case"json":return r.json();case"arraybuffer":return r.arrayBuffer();case"blob":return r.blob();case"text":return r.text();default:return this.getResponseDataFromContentType(r)}}#e(e,r=[]){let n=new URL(e),s=[...r],i=(process.env.NO_PROXY??process.env.no_proxy)?.split(",")||[];for(let u of i)s.push(u.trim());for(let u of s)if(u instanceof RegExp){if(u.test(n.toString()))return!1}else if(u instanceof URL){if(u.origin===n.origin)return!1}else if(u.startsWith("*.")||u.startsWith(".")){let c=u.replace(/^\*\./,".");if(n.hostname.endsWith(c))return!1}else if(u===n.origin||u===n.hostname||u===n.href)return!1;return!0}async#t(e){let r=Promise.resolve(e);for(let n of this.interceptors.request.values())n&&(r=r.then(n.resolved,n.rejected));return r}async#r(e){let r=Promise.resolve(e);for(let n of this.interceptors.response.values())n&&(r=r.then(n.resolved,n.rejected));return r}async#n(e){let r=new Headers(this.defaults.headers);Un.mergeHeaders(r,e.headers);let n=(0,CC.default)(!0,{},this.defaults,e);if(!n.url)throw new Error("URL is required.");if(n.baseURL&&(n.url=new URL(n.url,n.baseURL)),n.url=new URL(n.url),n.params)if(n.paramsSerializer){let u=n.paramsSerializer(n.params);u.startsWith("?")&&(u=u.slice(1));let c=n.url.toString().includes("?")?"&":"?";n.url=n.url+c+u}else{let u=n.url instanceof URL?n.url:new URL(n.url);for(let[c,l]of new URLSearchParams(n.params))u.searchParams.append(c,l);n.url=u}typeof e.maxContentLength=="number"&&(n.size=e.maxContentLength),typeof e.maxRedirects=="number"&&(n.follow=e.maxRedirects);let s=typeof n.data=="string"||n.data instanceof ArrayBuffer||n.data instanceof Blob||globalThis.File&&n.data instanceof File||n.data instanceof FormData||n.data instanceof Mp.Readable||n.data instanceof ReadableStream||n.data instanceof String||n.data instanceof URLSearchParams||ArrayBuffer.isView(n.data)||["Blob","File","FormData"].includes(n.data?.constructor?.name||"");if(n.multipart?.length){let u=await AC();r.set("content-type",`multipart/related; boundary=${u}`),n.body=Mp.Readable.from(this.getMultipartRequest(n.multipart,u))}else s?n.body=n.data:typeof n.data=="object"?r.get("Content-Type")==="application/x-www-form-urlencoded"?n.body=n.paramsSerializer?n.paramsSerializer(n.data):new URLSearchParams(n.data):(r.has("content-type")||r.set("content-type","application/json"),n.body=JSON.stringify(n.data)):n.data&&(n.body=n.data);n.validateStatus=n.validateStatus||this.validateStatus,n.responseType=n.responseType||"unknown",!r.has("accept")&&n.responseType==="json"&&r.set("accept","application/json");let i=n.proxy||process?.env?.HTTPS_PROXY||process?.env?.https_proxy||process?.env?.HTTP_PROXY||process?.env?.http_proxy;if(!n.agent)if(i&&this.#e(n.url,n.noProxy)){let u=await Un.#a();this.agentCache.has(i)?n.agent=this.agentCache.get(i):(n.agent=new u(i,{cert:n.cert,key:n.key}),this.agentCache.set(i,n.agent))}else n.cert&&n.key&&(this.agentCache.has(n.key)?n.agent=this.agentCache.get(n.key):(n.agent=new wC.Agent({cert:n.cert,key:n.key}),this.agentCache.set(n.key,n.agent)));return typeof n.errorRedactor!="function"&&n.errorRedactor!==!1&&(n.errorRedactor=ln.defaultErrorRedactor),n.body&&!("duplex"in n)&&(n.duplex="half"),this.#s(n),Object.assign(n,{headers:r,url:n.url instanceof URL?n.url:new URL(n.url)})}#s(e){if(e.timeout){let r=AbortSignal.timeout(e.timeout);e.signal&&!e.signal.aborted?e.signal=AbortSignal.any([e.signal,r]):e.signal=r}}validateStatus(e){return e>=200&&e<300}async getResponseDataFromContentType(e){let r=e.headers.get("Content-Type");if(r===null)return e.text();if(r=r.toLowerCase(),r.includes("application/json")){let n=await e.text();try{n=JSON.parse(n)}catch{}return n}else return r.match(/^text\//)?e.text():e.blob()}async*getMultipartRequest(e,r){let n=`--${r}--`;for(let s of e){let i=s.headers.get("Content-Type")||"application/octet-stream";yield`--${r}\r
|
|
40
40
|
Content-Type: ${i}\r
|
|
41
41
|
\r
|
|
42
42
|
`,typeof s.content=="string"?yield s.content:yield*s.content,yield`\r
|
|
43
|
-
`}yield n}static#o;static#i;static async#a(){return this.#o||=(await Promise.resolve().then(()=>Ue(Wh()))).HttpsProxyAgent,this.#o}static async#u(){let e=typeof window<"u"&&!!window;return this.#i||=e?window.fetch:(await Promise.resolve().then(()=>(Lp(),qp))).default,this.#i}static mergeHeaders(e,...r){e=e instanceof Headers?e:new Headers(e);for(let n of r)(n instanceof Headers?n:new Headers(n)).forEach((i,u)=>{u==="set-cookie"?e.append(u,i):e.set(u,i)});return e}};Mn.Gaxios=wi;Un=wi});var Ve=J(tt=>{"use strict";var AC=tt&&tt.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),SC=tt&&tt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&AC(e,t,r)};Object.defineProperty(tt,"__esModule",{value:!0});tt.instance=tt.Gaxios=tt.GaxiosError=void 0;tt.request=DC;var zp=$p();Object.defineProperty(tt,"Gaxios",{enumerable:!0,get:function(){return zp.Gaxios}});var kC=ju();Object.defineProperty(tt,"GaxiosError",{enumerable:!0,get:function(){return kC.GaxiosError}});SC(Uu(),tt);tt.instance=new zp.Gaxios;async function DC(t){return tt.instance.request(t)}});var uc=J((Hp,Ei)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",u=i+"Number primitive has more than 15 significant digits: ",c=1e14,l=14,h=9007199254740991,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],p=1e7,A=1e9;function R(v){var x,$,V,U=W.prototype={constructor:W,toString:null,valueOf:null},X=new W(1),re=20,ie=4,le=-7,ge=21,Ee=-1e7,se=1e7,he=!1,G=1,K=0,ae={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},Me="0123456789abcdefghijklmnopqrstuvwxyz",De=!0;function W(g,w){var k,B,F,I,L,O,P,j,N=this;if(!(N instanceof W))return new W(g,w);if(w==null){if(g&&g._isBigNumber===!0){N.s=g.s,!g.c||g.e>se?N.c=N.e=null:g.e<Ee?N.c=[N.e=0]:(N.e=g.e,N.c=g.c.slice());return}if((O=typeof g=="number")&&g*0==0){if(N.s=1/g<0?(g=-g,-1):1,g===~~g){for(I=0,L=g;L>=10;L/=10,I++);I>se?N.c=N.e=null:(N.e=I,N.c=[g]);return}j=String(g)}else{if(!r.test(j=String(g)))return V(N,j,O);N.s=j.charCodeAt(0)==45?(j=j.slice(1),-1):1}(I=j.indexOf("."))>-1&&(j=j.replace(".","")),(L=j.search(/e/i))>0?(I<0&&(I=L),I+=+j.slice(L+1),j=j.substring(0,L)):I<0&&(I=j.length)}else{if(m(w,2,Me.length,"Base"),w==10&&De)return N=new W(g),ve(N,re+N.e+1,ie);if(j=String(g),O=typeof g=="number"){if(g*0!=0)return V(N,j,O,w);if(N.s=1/g<0?(j=j.slice(1),-1):1,W.DEBUG&&j.replace(/^0\.0*|\./,"").length>15)throw Error(u+g)}else N.s=j.charCodeAt(0)===45?(j=j.slice(1),-1):1;for(k=Me.slice(0,w),I=L=0,P=j.length;L<P;L++)if(k.indexOf(B=j.charAt(L))<0){if(B=="."){if(L>I){I=P;continue}}else if(!F&&(j==j.toUpperCase()&&(j=j.toLowerCase())||j==j.toLowerCase()&&(j=j.toUpperCase()))){F=!0,L=-1,I=0;continue}return V(N,String(g),O,w)}O=!1,j=$(j,w,10,N.s),(I=j.indexOf("."))>-1?j=j.replace(".",""):I=j.length}for(L=0;j.charCodeAt(L)===48;L++);for(P=j.length;j.charCodeAt(--P)===48;);if(j=j.slice(L,++P)){if(P-=L,O&&W.DEBUG&&P>15&&(g>h||g!==s(g)))throw Error(u+N.s*g);if((I=I-L-1)>se)N.c=N.e=null;else if(I<Ee)N.c=[N.e=0];else{if(N.e=I,N.c=[],L=(I+1)%l,I<0&&(L+=l),L<P){for(L&&N.c.push(+j.slice(0,L)),P-=l;L<P;)N.c.push(+j.slice(L,L+=l));L=l-(j=j.slice(L)).length}else L-=P;for(;L--;j+="0");N.c.push(+j)}}else N.c=[N.e=0]}W.clone=R,W.ROUND_UP=0,W.ROUND_DOWN=1,W.ROUND_CEIL=2,W.ROUND_FLOOR=3,W.ROUND_HALF_UP=4,W.ROUND_HALF_DOWN=5,W.ROUND_HALF_EVEN=6,W.ROUND_HALF_CEIL=7,W.ROUND_HALF_FLOOR=8,W.EUCLID=9,W.config=W.set=function(g){var w,k;if(g!=null)if(typeof g=="object"){if(g.hasOwnProperty(w="DECIMAL_PLACES")&&(k=g[w],m(k,0,A,w),re=k),g.hasOwnProperty(w="ROUNDING_MODE")&&(k=g[w],m(k,0,8,w),ie=k),g.hasOwnProperty(w="EXPONENTIAL_AT")&&(k=g[w],k&&k.pop?(m(k[0],-A,0,w),m(k[1],0,A,w),le=k[0],ge=k[1]):(m(k,-A,A,w),le=-(ge=k<0?-k:k))),g.hasOwnProperty(w="RANGE"))if(k=g[w],k&&k.pop)m(k[0],-A,-1,w),m(k[1],1,A,w),Ee=k[0],se=k[1];else if(m(k,-A,A,w),k)Ee=-(se=k<0?-k:k);else throw Error(i+w+" cannot be zero: "+k);if(g.hasOwnProperty(w="CRYPTO"))if(k=g[w],k===!!k)if(k)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))he=k;else throw he=!k,Error(i+"crypto unavailable");else he=k;else throw Error(i+w+" not true or false: "+k);if(g.hasOwnProperty(w="MODULO_MODE")&&(k=g[w],m(k,0,9,w),G=k),g.hasOwnProperty(w="POW_PRECISION")&&(k=g[w],m(k,0,A,w),K=k),g.hasOwnProperty(w="FORMAT"))if(k=g[w],typeof k=="object")ae=k;else throw Error(i+w+" not an object: "+k);if(g.hasOwnProperty(w="ALPHABET"))if(k=g[w],typeof k=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(k))De=k.slice(0,10)=="0123456789",Me=k;else throw Error(i+w+" invalid: "+k)}else throw Error(i+"Object expected: "+g);return{DECIMAL_PLACES:re,ROUNDING_MODE:ie,EXPONENTIAL_AT:[le,ge],RANGE:[Ee,se],CRYPTO:he,MODULO_MODE:G,POW_PRECISION:K,FORMAT:ae,ALPHABET:Me}},W.isBigNumber=function(g){if(!g||g._isBigNumber!==!0)return!1;if(!W.DEBUG)return!0;var w,k,B=g.c,F=g.e,I=g.s;e:if({}.toString.call(B)=="[object Array]"){if((I===1||I===-1)&&F>=-A&&F<=A&&F===s(F)){if(B[0]===0){if(F===0&&B.length===1)return!0;break e}if(w=(F+1)%l,w<1&&(w+=l),String(B[0]).length==w){for(w=0;w<B.length;w++)if(k=B[w],k<0||k>=c||k!==s(k))break e;if(k!==0)return!0}}}else if(B===null&&F===null&&(I===null||I===1||I===-1))return!0;throw Error(i+"Invalid BigNumber: "+g)},W.maximum=W.max=function(){return ye(arguments,-1)},W.minimum=W.min=function(){return ye(arguments,1)},W.random=(function(){var g=9007199254740992,w=Math.random()*g&2097151?function(){return s(Math.random()*g)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(k){var B,F,I,L,O,P=0,j=[],N=new W(X);if(k==null?k=re:m(k,0,A),L=n(k/l),he)if(crypto.getRandomValues){for(B=crypto.getRandomValues(new Uint32Array(L*=2));P<L;)O=B[P]*131072+(B[P+1]>>>11),O>=9e15?(F=crypto.getRandomValues(new Uint32Array(2)),B[P]=F[0],B[P+1]=F[1]):(j.push(O%1e14),P+=2);P=L/2}else if(crypto.randomBytes){for(B=crypto.randomBytes(L*=7);P<L;)O=(B[P]&31)*281474976710656+B[P+1]*1099511627776+B[P+2]*4294967296+B[P+3]*16777216+(B[P+4]<<16)+(B[P+5]<<8)+B[P+6],O>=9e15?crypto.randomBytes(7).copy(B,P):(j.push(O%1e14),P+=7);P=L/7}else throw he=!1,Error(i+"crypto unavailable");if(!he)for(;P<L;)O=w(),O<9e15&&(j[P++]=O%1e14);for(L=j[--P],k%=l,L&&k&&(O=d[l-k],j[P]=s(L/O)*O);j[P]===0;j.pop(),P--);if(P<0)j=[I=0];else{for(I=-1;j[0]===0;j.splice(0,1),I-=l);for(P=1,O=j[0];O>=10;O/=10,P++);P<l&&(I-=l-P)}return N.e=I,N.c=j,N}})(),W.sum=function(){for(var g=1,w=arguments,k=new W(w[0]);g<w.length;)k=k.plus(w[g++]);return k},$=(function(){var g="0123456789";function w(k,B,F,I){for(var L,O=[0],P,j=0,N=k.length;j<N;){for(P=O.length;P--;O[P]*=B);for(O[0]+=I.indexOf(k.charAt(j++)),L=0;L<O.length;L++)O[L]>F-1&&(O[L+1]==null&&(O[L+1]=0),O[L+1]+=O[L]/F|0,O[L]%=F)}return O.reverse()}return function(k,B,F,I,L){var O,P,j,N,z,Q,Z,we,Fe=k.indexOf("."),Ie=re,Ce=ie;for(Fe>=0&&(N=K,K=0,k=k.replace(".",""),we=new W(B),Q=we.pow(k.length-Fe),K=N,we.c=w(E(_(Q.c),Q.e,"0"),10,F,g),we.e=we.c.length),Z=w(k,B,F,L?(O=Me,g):(O=g,Me)),j=N=Z.length;Z[--N]==0;Z.pop());if(!Z[0])return O.charAt(0);if(Fe<0?--j:(Q.c=Z,Q.e=j,Q.s=I,Q=x(Q,we,Ie,Ce,F),Z=Q.c,z=Q.r,j=Q.e),P=j+Ie+1,Fe=Z[P],N=F/2,z=z||P<0||Z[P+1]!=null,z=Ce<4?(Fe!=null||z)&&(Ce==0||Ce==(Q.s<0?3:2)):Fe>N||Fe==N&&(Ce==4||z||Ce==6&&Z[P-1]&1||Ce==(Q.s<0?8:7)),P<1||!Z[0])k=z?E(O.charAt(1),-Ie,O.charAt(0)):O.charAt(0);else{if(Z.length=P,z)for(--F;++Z[--P]>F;)Z[P]=0,P||(++j,Z=[1].concat(Z));for(N=Z.length;!Z[--N];);for(Fe=0,k="";Fe<=N;k+=O.charAt(Z[Fe++]));k=E(k,j,O.charAt(0))}return k}})(),x=(function(){function g(B,F,I){var L,O,P,j,N=0,z=B.length,Q=F%p,Z=F/p|0;for(B=B.slice();z--;)P=B[z]%p,j=B[z]/p|0,L=Z*P+j*Q,O=Q*P+L%p*p+N,N=(O/I|0)+(L/p|0)+Z*j,B[z]=O%I;return N&&(B=[N].concat(B)),B}function w(B,F,I,L){var O,P;if(I!=L)P=I>L?1:-1;else for(O=P=0;O<I;O++)if(B[O]!=F[O]){P=B[O]>F[O]?1:-1;break}return P}function k(B,F,I,L){for(var O=0;I--;)B[I]-=O,O=B[I]<F[I]?1:0,B[I]=O*L+B[I]-F[I];for(;!B[0]&&B.length>1;B.splice(0,1));}return function(B,F,I,L,O){var P,j,N,z,Q,Z,we,Fe,Ie,Ce,Ae,qe,bn,Cn,wn,ut,ur,Ke=B.s==F.s?1:-1,Le=B.c,Se=F.c;if(!Le||!Le[0]||!Se||!Se[0])return new W(!B.s||!F.s||(Le?Se&&Le[0]==Se[0]:!Se)?NaN:Le&&Le[0]==0||!Se?Ke*0:Ke/0);for(Fe=new W(Ke),Ie=Fe.c=[],j=B.e-F.e,Ke=I+j+1,O||(O=c,j=S(B.e/l)-S(F.e/l),Ke=Ke/l|0),N=0;Se[N]==(Le[N]||0);N++);if(Se[N]>(Le[N]||0)&&j--,Ke<0)Ie.push(1),z=!0;else{for(Cn=Le.length,ut=Se.length,N=0,Ke+=2,Q=s(O/(Se[0]+1)),Q>1&&(Se=g(Se,Q,O),Le=g(Le,Q,O),ut=Se.length,Cn=Le.length),bn=ut,Ce=Le.slice(0,ut),Ae=Ce.length;Ae<ut;Ce[Ae++]=0);ur=Se.slice(),ur=[0].concat(ur),wn=Se[0],Se[1]>=O/2&&wn++;do{if(Q=0,P=w(Se,Ce,ut,Ae),P<0){if(qe=Ce[0],ut!=Ae&&(qe=qe*O+(Ce[1]||0)),Q=s(qe/wn),Q>1)for(Q>=O&&(Q=O-1),Z=g(Se,Q,O),we=Z.length,Ae=Ce.length;w(Z,Ce,we,Ae)==1;)Q--,k(Z,ut<we?ur:Se,we,O),we=Z.length,P=1;else Q==0&&(P=Q=1),Z=Se.slice(),we=Z.length;if(we<Ae&&(Z=[0].concat(Z)),k(Ce,Z,Ae,O),Ae=Ce.length,P==-1)for(;w(Se,Ce,ut,Ae)<1;)Q++,k(Ce,ut<Ae?ur:Se,Ae,O),Ae=Ce.length}else P===0&&(Q++,Ce=[0]);Ie[N++]=Q,Ce[0]?Ce[Ae++]=Le[bn]||0:(Ce=[Le[bn]],Ae=1)}while((bn++<Cn||Ce[0]!=null)&&Ke--);z=Ce[0]!=null,Ie[0]||Ie.splice(0,1)}if(O==c){for(N=1,Ke=Ie[0];Ke>=10;Ke/=10,N++);ve(Fe,I+(Fe.e=N+j*l-1)+1,L,z)}else Fe.e=j,Fe.r=+z;return Fe}})();function ce(g,w,k,B){var F,I,L,O,P;if(k==null?k=ie:m(k,0,8),!g.c)return g.toString();if(F=g.c[0],L=g.e,w==null)P=_(g.c),P=B==1||B==2&&(L<=le||L>=ge)?C(P,L):E(P,L,"0");else if(g=ve(new W(g),w,k),I=g.e,P=_(g.c),O=P.length,B==1||B==2&&(w<=I||I<=le)){for(;O<w;P+="0",O++);P=C(P,I)}else if(w-=L+(B===2&&I>L),P=E(P,I,"0"),I+1>O){if(--w>0)for(P+=".";w--;P+="0");}else if(w+=I-O,w>0)for(I+1==O&&(P+=".");w--;P+="0");return g.s<0&&F?"-"+P:P}function ye(g,w){for(var k,B,F=1,I=new W(g[0]);F<g.length;F++)B=new W(g[F]),(!B.s||(k=y(I,B))===w||k===0&&I.s===w)&&(I=B);return I}function Pt(g,w,k){for(var B=1,F=w.length;!w[--F];w.pop());for(F=w[0];F>=10;F/=10,B++);return(k=B+k*l-1)>se?g.c=g.e=null:k<Ee?g.c=[g.e=0]:(g.e=k,g.c=w),g}V=(function(){var g=/^(-?)0([xbo])(?=\w[\w.]*$)/i,w=/^([^.]+)\.$/,k=/^\.([^.]+)$/,B=/^-?(Infinity|NaN)$/,F=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(I,L,O,P){var j,N=O?L:L.replace(F,"");if(B.test(N))I.s=isNaN(N)?null:N<0?-1:1;else{if(!O&&(N=N.replace(g,function(z,Q,Z){return j=(Z=Z.toLowerCase())=="x"?16:Z=="b"?2:8,!P||P==j?Q:z}),P&&(j=P,N=N.replace(w,"$1").replace(k,"0.$1")),L!=N))return new W(N,j);if(W.DEBUG)throw Error(i+"Not a"+(P?" base "+P:"")+" number: "+L);I.s=null}I.c=I.e=null}})();function ve(g,w,k,B){var F,I,L,O,P,j,N,z=g.c,Q=d;if(z){e:{for(F=1,O=z[0];O>=10;O/=10,F++);if(I=w-F,I<0)I+=l,L=w,P=z[j=0],N=s(P/Q[F-L-1]%10);else if(j=n((I+1)/l),j>=z.length)if(B){for(;z.length<=j;z.push(0));P=N=0,F=1,I%=l,L=I-l+1}else break e;else{for(P=O=z[j],F=1;O>=10;O/=10,F++);I%=l,L=I-l+F,N=L<0?0:s(P/Q[F-L-1]%10)}if(B=B||w<0||z[j+1]!=null||(L<0?P:P%Q[F-L-1]),B=k<4?(N||B)&&(k==0||k==(g.s<0?3:2)):N>5||N==5&&(k==4||B||k==6&&(I>0?L>0?P/Q[F-L]:0:z[j-1])%10&1||k==(g.s<0?8:7)),w<1||!z[0])return z.length=0,B?(w-=g.e+1,z[0]=Q[(l-w%l)%l],g.e=-w||0):z[0]=g.e=0,g;if(I==0?(z.length=j,O=1,j--):(z.length=j+1,O=Q[l-I],z[j]=L>0?s(P/Q[F-L]%Q[L])*O:0),B)for(;;)if(j==0){for(I=1,L=z[0];L>=10;L/=10,I++);for(L=z[0]+=O,O=1;L>=10;L/=10,O++);I!=O&&(g.e++,z[0]==c&&(z[0]=1));break}else{if(z[j]+=O,z[j]!=c)break;z[j--]=0,O=1}for(I=z.length;z[--I]===0;z.pop());}g.e>se?g.c=g.e=null:g.e<Ee&&(g.c=[g.e=0])}return g}function Ne(g){var w,k=g.e;return k===null?g.toString():(w=_(g.c),w=k<=le||k>=ge?C(w,k):E(w,k,"0"),g.s<0?"-"+w:w)}return U.absoluteValue=U.abs=function(){var g=new W(this);return g.s<0&&(g.s=1),g},U.comparedTo=function(g,w){return y(this,new W(g,w))},U.decimalPlaces=U.dp=function(g,w){var k,B,F,I=this;if(g!=null)return m(g,0,A),w==null?w=ie:m(w,0,8),ve(new W(I),g+I.e+1,w);if(!(k=I.c))return null;if(B=((F=k.length-1)-S(this.e/l))*l,F=k[F])for(;F%10==0;F/=10,B--);return B<0&&(B=0),B},U.dividedBy=U.div=function(g,w){return x(this,new W(g,w),re,ie)},U.dividedToIntegerBy=U.idiv=function(g,w){return x(this,new W(g,w),0,1)},U.exponentiatedBy=U.pow=function(g,w){var k,B,F,I,L,O,P,j,N,z=this;if(g=new W(g),g.c&&!g.isInteger())throw Error(i+"Exponent not an integer: "+Ne(g));if(w!=null&&(w=new W(w)),O=g.e>14,!z.c||!z.c[0]||z.c[0]==1&&!z.e&&z.c.length==1||!g.c||!g.c[0])return N=new W(Math.pow(+Ne(z),O?g.s*(2-D(g)):+Ne(g))),w?N.mod(w):N;if(P=g.s<0,w){if(w.c?!w.c[0]:!w.s)return new W(NaN);B=!P&&z.isInteger()&&w.isInteger(),B&&(z=z.mod(w))}else{if(g.e>9&&(z.e>0||z.e<-1||(z.e==0?z.c[0]>1||O&&z.c[1]>=24e7:z.c[0]<8e13||O&&z.c[0]<=9999975e7)))return I=z.s<0&&D(g)?-0:0,z.e>-1&&(I=1/I),new W(P?1/I:I);K&&(I=n(K/l+2))}for(O?(k=new W(.5),P&&(g.s=1),j=D(g)):(F=Math.abs(+Ne(g)),j=F%2),N=new W(X);;){if(j){if(N=N.times(z),!N.c)break;I?N.c.length>I&&(N.c.length=I):B&&(N=N.mod(w))}if(F){if(F=s(F/2),F===0)break;j=F%2}else if(g=g.times(k),ve(g,g.e+1,1),g.e>14)j=D(g);else{if(F=+Ne(g),F===0)break;j=F%2}z=z.times(z),I?z.c&&z.c.length>I&&(z.c.length=I):B&&(z=z.mod(w))}return B?N:(P&&(N=X.div(N)),w?N.mod(w):I?ve(N,K,ie,L):N)},U.integerValue=function(g){var w=new W(this);return g==null?g=ie:m(g,0,8),ve(w,w.e+1,g)},U.isEqualTo=U.eq=function(g,w){return y(this,new W(g,w))===0},U.isFinite=function(){return!!this.c},U.isGreaterThan=U.gt=function(g,w){return y(this,new W(g,w))>0},U.isGreaterThanOrEqualTo=U.gte=function(g,w){return(w=y(this,new W(g,w)))===1||w===0},U.isInteger=function(){return!!this.c&&S(this.e/l)>this.c.length-2},U.isLessThan=U.lt=function(g,w){return y(this,new W(g,w))<0},U.isLessThanOrEqualTo=U.lte=function(g,w){return(w=y(this,new W(g,w)))===-1||w===0},U.isNaN=function(){return!this.s},U.isNegative=function(){return this.s<0},U.isPositive=function(){return this.s>0},U.isZero=function(){return!!this.c&&this.c[0]==0},U.minus=function(g,w){var k,B,F,I,L=this,O=L.s;if(g=new W(g,w),w=g.s,!O||!w)return new W(NaN);if(O!=w)return g.s=-w,L.plus(g);var P=L.e/l,j=g.e/l,N=L.c,z=g.c;if(!P||!j){if(!N||!z)return N?(g.s=-w,g):new W(z?L:NaN);if(!N[0]||!z[0])return z[0]?(g.s=-w,g):new W(N[0]?L:ie==3?-0:0)}if(P=S(P),j=S(j),N=N.slice(),O=P-j){for((I=O<0)?(O=-O,F=N):(j=P,F=z),F.reverse(),w=O;w--;F.push(0));F.reverse()}else for(B=(I=(O=N.length)<(w=z.length))?O:w,O=w=0;w<B;w++)if(N[w]!=z[w]){I=N[w]<z[w];break}if(I&&(F=N,N=z,z=F,g.s=-g.s),w=(B=z.length)-(k=N.length),w>0)for(;w--;N[k++]=0);for(w=c-1;B>O;){if(N[--B]<z[B]){for(k=B;k&&!N[--k];N[k]=w);--N[k],N[B]+=c}N[B]-=z[B]}for(;N[0]==0;N.splice(0,1),--j);return N[0]?Pt(g,N,j):(g.s=ie==3?-1:1,g.c=[g.e=0],g)},U.modulo=U.mod=function(g,w){var k,B,F=this;return g=new W(g,w),!F.c||!g.s||g.c&&!g.c[0]?new W(NaN):!g.c||F.c&&!F.c[0]?new W(F):(G==9?(B=g.s,g.s=1,k=x(F,g,0,3),g.s=B,k.s*=B):k=x(F,g,0,G),g=F.minus(k.times(g)),!g.c[0]&&G==1&&(g.s=F.s),g)},U.multipliedBy=U.times=function(g,w){var k,B,F,I,L,O,P,j,N,z,Q,Z,we,Fe,Ie,Ce=this,Ae=Ce.c,qe=(g=new W(g,w)).c;if(!Ae||!qe||!Ae[0]||!qe[0])return!Ce.s||!g.s||Ae&&!Ae[0]&&!qe||qe&&!qe[0]&&!Ae?g.c=g.e=g.s=null:(g.s*=Ce.s,!Ae||!qe?g.c=g.e=null:(g.c=[0],g.e=0)),g;for(B=S(Ce.e/l)+S(g.e/l),g.s*=Ce.s,P=Ae.length,z=qe.length,P<z&&(we=Ae,Ae=qe,qe=we,F=P,P=z,z=F),F=P+z,we=[];F--;we.push(0));for(Fe=c,Ie=p,F=z;--F>=0;){for(k=0,Q=qe[F]%Ie,Z=qe[F]/Ie|0,L=P,I=F+L;I>F;)j=Ae[--L]%Ie,N=Ae[L]/Ie|0,O=Z*j+N*Q,j=Q*j+O%Ie*Ie+we[I]+k,k=(j/Fe|0)+(O/Ie|0)+Z*N,we[I--]=j%Fe;we[I]=k}return k?++B:we.splice(0,1),Pt(g,we,B)},U.negated=function(){var g=new W(this);return g.s=-g.s||null,g},U.plus=function(g,w){var k,B=this,F=B.s;if(g=new W(g,w),w=g.s,!F||!w)return new W(NaN);if(F!=w)return g.s=-w,B.minus(g);var I=B.e/l,L=g.e/l,O=B.c,P=g.c;if(!I||!L){if(!O||!P)return new W(F/0);if(!O[0]||!P[0])return P[0]?g:new W(O[0]?B:F*0)}if(I=S(I),L=S(L),O=O.slice(),F=I-L){for(F>0?(L=I,k=P):(F=-F,k=O),k.reverse();F--;k.push(0));k.reverse()}for(F=O.length,w=P.length,F-w<0&&(k=P,P=O,O=k,w=F),F=0;w;)F=(O[--w]=O[w]+P[w]+F)/c|0,O[w]=c===O[w]?0:O[w]%c;return F&&(O=[F].concat(O),++L),Pt(g,O,L)},U.precision=U.sd=function(g,w){var k,B,F,I=this;if(g!=null&&g!==!!g)return m(g,1,A),w==null?w=ie:m(w,0,8),ve(new W(I),g,w);if(!(k=I.c))return null;if(F=k.length-1,B=F*l+1,F=k[F]){for(;F%10==0;F/=10,B--);for(F=k[0];F>=10;F/=10,B++);}return g&&I.e+1>B&&(B=I.e+1),B},U.shiftedBy=function(g){return m(g,-h,h),this.times("1e"+g)},U.squareRoot=U.sqrt=function(){var g,w,k,B,F,I=this,L=I.c,O=I.s,P=I.e,j=re+4,N=new W("0.5");if(O!==1||!L||!L[0])return new W(!O||O<0&&(!L||L[0])?NaN:L?I:1/0);if(O=Math.sqrt(+Ne(I)),O==0||O==1/0?(w=_(L),(w.length+P)%2==0&&(w+="0"),O=Math.sqrt(+w),P=S((P+1)/2)-(P<0||P%2),O==1/0?w="5e"+P:(w=O.toExponential(),w=w.slice(0,w.indexOf("e")+1)+P),k=new W(w)):k=new W(O+""),k.c[0]){for(P=k.e,O=P+j,O<3&&(O=0);;)if(F=k,k=N.times(F.plus(x(I,F,j,1))),_(F.c).slice(0,O)===(w=_(k.c)).slice(0,O))if(k.e<P&&--O,w=w.slice(O-3,O+1),w=="9999"||!B&&w=="4999"){if(!B&&(ve(F,F.e+re+2,0),F.times(F).eq(I))){k=F;break}j+=4,O+=4,B=1}else{(!+w||!+w.slice(1)&&w.charAt(0)=="5")&&(ve(k,k.e+re+2,1),g=!k.times(k).eq(I));break}}return ve(k,k.e+re+1,ie,g)},U.toExponential=function(g,w){return g!=null&&(m(g,0,A),g++),ce(this,g,w,1)},U.toFixed=function(g,w){return g!=null&&(m(g,0,A),g=g+this.e+1),ce(this,g,w)},U.toFormat=function(g,w,k){var B,F=this;if(k==null)g!=null&&w&&typeof w=="object"?(k=w,w=null):g&&typeof g=="object"?(k=g,g=w=null):k=ae;else if(typeof k!="object")throw Error(i+"Argument not an object: "+k);if(B=F.toFixed(g,w),F.c){var I,L=B.split("."),O=+k.groupSize,P=+k.secondaryGroupSize,j=k.groupSeparator||"",N=L[0],z=L[1],Q=F.s<0,Z=Q?N.slice(1):N,we=Z.length;if(P&&(I=O,O=P,P=I,we-=I),O>0&&we>0){for(I=we%O||O,N=Z.substr(0,I);I<we;I+=O)N+=j+Z.substr(I,O);P>0&&(N+=j+Z.slice(I)),Q&&(N="-"+N)}B=z?N+(k.decimalSeparator||"")+((P=+k.fractionGroupSize)?z.replace(new RegExp("\\d{"+P+"}\\B","g"),"$&"+(k.fractionGroupSeparator||"")):z):N}return(k.prefix||"")+B+(k.suffix||"")},U.toFraction=function(g){var w,k,B,F,I,L,O,P,j,N,z,Q,Z=this,we=Z.c;if(g!=null&&(O=new W(g),!O.isInteger()&&(O.c||O.s!==1)||O.lt(X)))throw Error(i+"Argument "+(O.isInteger()?"out of range: ":"not an integer: ")+Ne(O));if(!we)return new W(Z);for(w=new W(X),j=k=new W(X),B=P=new W(X),Q=_(we),I=w.e=Q.length-Z.e-1,w.c[0]=d[(L=I%l)<0?l+L:L],g=!g||O.comparedTo(w)>0?I>0?w:j:O,L=se,se=1/0,O=new W(Q),P.c[0]=0;N=x(O,w,0,1),F=k.plus(N.times(B)),F.comparedTo(g)!=1;)k=B,B=F,j=P.plus(N.times(F=j)),P=F,w=O.minus(N.times(F=w)),O=F;return F=x(g.minus(k),B,0,1),P=P.plus(F.times(j)),k=k.plus(F.times(B)),P.s=j.s=Z.s,I=I*2,z=x(j,B,I,ie).minus(Z).abs().comparedTo(x(P,k,I,ie).minus(Z).abs())<1?[j,B]:[P,k],se=L,z},U.toNumber=function(){return+Ne(this)},U.toPrecision=function(g,w){return g!=null&&m(g,1,A),ce(this,g,w,2)},U.toString=function(g){var w,k=this,B=k.s,F=k.e;return F===null?B?(w="Infinity",B<0&&(w="-"+w)):w="NaN":(g==null?w=F<=le||F>=ge?C(_(k.c),F):E(_(k.c),F,"0"):g===10&&De?(k=ve(new W(k),re+F+1,ie),w=E(_(k.c),k.e,"0")):(m(g,2,Me.length,"Base"),w=$(E(_(k.c),F,"0"),10,g,B,!0)),B<0&&k.c[0]&&(w="-"+w)),w},U.valueOf=U.toJSON=function(){return Ne(this)},U._isBigNumber=!0,v!=null&&W.set(v),W}function S(v){var x=v|0;return v>0||v===x?x:x-1}function _(v){for(var x,$,V=1,U=v.length,X=v[0]+"";V<U;){for(x=v[V++]+"",$=l-x.length;$--;x="0"+x);X+=x}for(U=X.length;X.charCodeAt(--U)===48;);return X.slice(0,U+1||1)}function y(v,x){var $,V,U=v.c,X=x.c,re=v.s,ie=x.s,le=v.e,ge=x.e;if(!re||!ie)return null;if($=U&&!U[0],V=X&&!X[0],$||V)return $?V?0:-ie:re;if(re!=ie)return re;if($=re<0,V=le==ge,!U||!X)return V?0:!U^$?1:-1;if(!V)return le>ge^$?1:-1;for(ie=(le=U.length)<(ge=X.length)?le:ge,re=0;re<ie;re++)if(U[re]!=X[re])return U[re]>X[re]^$?1:-1;return le==ge?0:le>ge^$?1:-1}function m(v,x,$,V){if(v<x||v>$||v!==s(v))throw Error(i+(V||"Argument")+(typeof v=="number"?v<x||v>$?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function D(v){var x=v.c.length-1;return S(v.e/l)==x&&v.c[x]%2!=0}function C(v,x){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(x<0?"e":"e+")+x}function E(v,x,$){var V,U;if(x<0){for(U=$+".";++x;U+=$);v=U+v}else if(V=v.length,++x>V){for(U=$,x-=V;--x;U+=$);v+=U}else x<V&&(v=v.slice(0,x)+"."+v.slice(x));return v}e=R(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof Ei<"u"&&Ei.exports?Ei.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(Hp)});var Vp=J((Vv,Jp)=>{var Wp=uc(),Gp=Jp.exports;(function(){"use strict";function t(h){return h<10?"0"+h:h}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},u;function c(h){return r.lastIndex=0,r.test(h)?'"'+h.replace(r,function(d){var p=i[d];return typeof p=="string"?p:"\\u"+("0000"+d.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+h+'"'}function l(h,d){var p,A,R,S,_=n,y,m=d[h],D=m!=null&&(m instanceof Wp||Wp.isBigNumber(m));switch(m&&typeof m=="object"&&typeof m.toJSON=="function"&&(m=m.toJSON(h)),typeof u=="function"&&(m=u.call(d,h,m)),typeof m){case"string":return D?m:c(m);case"number":return isFinite(m)?String(m):"null";case"boolean":case"null":case"bigint":return String(m);case"object":if(!m)return"null";if(n+=s,y=[],Object.prototype.toString.apply(m)==="[object Array]"){for(S=m.length,p=0;p<S;p+=1)y[p]=l(p,m)||"null";return R=y.length===0?"[]":n?`[
|
|
43
|
+
`}yield n}static#o;static#i;static async#a(){return this.#o||=(await Promise.resolve().then(()=>Ue(Gh()))).HttpsProxyAgent,this.#o}static async#u(){let e=typeof window<"u"&&!!window;return this.#i||=e?window.fetch:(await Promise.resolve().then(()=>(Up(),Lp))).default,this.#i}static mergeHeaders(e,...r){e=e instanceof Headers?e:new Headers(e);for(let n of r)(n instanceof Headers?n:new Headers(n)).forEach((i,u)=>{u==="set-cookie"?e.append(u,i):e.set(u,i)});return e}};Mn.Gaxios=wi;Un=wi});var Ve=J(tt=>{"use strict";var SC=tt&&tt.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),kC=tt&&tt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&SC(e,t,r)};Object.defineProperty(tt,"__esModule",{value:!0});tt.instance=tt.Gaxios=tt.GaxiosError=void 0;tt.request=TC;var Hp=zp();Object.defineProperty(tt,"Gaxios",{enumerable:!0,get:function(){return Hp.Gaxios}});var DC=qu();Object.defineProperty(tt,"GaxiosError",{enumerable:!0,get:function(){return DC.GaxiosError}});kC(Mu(),tt);tt.instance=new Hp.Gaxios;async function TC(t){return tt.instance.request(t)}});var cc=J((Wp,Ei)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",u=i+"Number primitive has more than 15 significant digits: ",c=1e14,l=14,h=9007199254740991,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],p=1e7,A=1e9;function R(v){var x,$,V,U=W.prototype={constructor:W,toString:null,valueOf:null},X=new W(1),re=20,ie=4,le=-7,ge=21,Ee=-1e7,se=1e7,he=!1,G=1,K=0,ae={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},Me="0123456789abcdefghijklmnopqrstuvwxyz",De=!0;function W(g,w){var k,B,F,I,L,O,P,j,N=this;if(!(N instanceof W))return new W(g,w);if(w==null){if(g&&g._isBigNumber===!0){N.s=g.s,!g.c||g.e>se?N.c=N.e=null:g.e<Ee?N.c=[N.e=0]:(N.e=g.e,N.c=g.c.slice());return}if((O=typeof g=="number")&&g*0==0){if(N.s=1/g<0?(g=-g,-1):1,g===~~g){for(I=0,L=g;L>=10;L/=10,I++);I>se?N.c=N.e=null:(N.e=I,N.c=[g]);return}j=String(g)}else{if(!r.test(j=String(g)))return V(N,j,O);N.s=j.charCodeAt(0)==45?(j=j.slice(1),-1):1}(I=j.indexOf("."))>-1&&(j=j.replace(".","")),(L=j.search(/e/i))>0?(I<0&&(I=L),I+=+j.slice(L+1),j=j.substring(0,L)):I<0&&(I=j.length)}else{if(m(w,2,Me.length,"Base"),w==10&&De)return N=new W(g),ve(N,re+N.e+1,ie);if(j=String(g),O=typeof g=="number"){if(g*0!=0)return V(N,j,O,w);if(N.s=1/g<0?(j=j.slice(1),-1):1,W.DEBUG&&j.replace(/^0\.0*|\./,"").length>15)throw Error(u+g)}else N.s=j.charCodeAt(0)===45?(j=j.slice(1),-1):1;for(k=Me.slice(0,w),I=L=0,P=j.length;L<P;L++)if(k.indexOf(B=j.charAt(L))<0){if(B=="."){if(L>I){I=P;continue}}else if(!F&&(j==j.toUpperCase()&&(j=j.toLowerCase())||j==j.toLowerCase()&&(j=j.toUpperCase()))){F=!0,L=-1,I=0;continue}return V(N,String(g),O,w)}O=!1,j=$(j,w,10,N.s),(I=j.indexOf("."))>-1?j=j.replace(".",""):I=j.length}for(L=0;j.charCodeAt(L)===48;L++);for(P=j.length;j.charCodeAt(--P)===48;);if(j=j.slice(L,++P)){if(P-=L,O&&W.DEBUG&&P>15&&(g>h||g!==s(g)))throw Error(u+N.s*g);if((I=I-L-1)>se)N.c=N.e=null;else if(I<Ee)N.c=[N.e=0];else{if(N.e=I,N.c=[],L=(I+1)%l,I<0&&(L+=l),L<P){for(L&&N.c.push(+j.slice(0,L)),P-=l;L<P;)N.c.push(+j.slice(L,L+=l));L=l-(j=j.slice(L)).length}else L-=P;for(;L--;j+="0");N.c.push(+j)}}else N.c=[N.e=0]}W.clone=R,W.ROUND_UP=0,W.ROUND_DOWN=1,W.ROUND_CEIL=2,W.ROUND_FLOOR=3,W.ROUND_HALF_UP=4,W.ROUND_HALF_DOWN=5,W.ROUND_HALF_EVEN=6,W.ROUND_HALF_CEIL=7,W.ROUND_HALF_FLOOR=8,W.EUCLID=9,W.config=W.set=function(g){var w,k;if(g!=null)if(typeof g=="object"){if(g.hasOwnProperty(w="DECIMAL_PLACES")&&(k=g[w],m(k,0,A,w),re=k),g.hasOwnProperty(w="ROUNDING_MODE")&&(k=g[w],m(k,0,8,w),ie=k),g.hasOwnProperty(w="EXPONENTIAL_AT")&&(k=g[w],k&&k.pop?(m(k[0],-A,0,w),m(k[1],0,A,w),le=k[0],ge=k[1]):(m(k,-A,A,w),le=-(ge=k<0?-k:k))),g.hasOwnProperty(w="RANGE"))if(k=g[w],k&&k.pop)m(k[0],-A,-1,w),m(k[1],1,A,w),Ee=k[0],se=k[1];else if(m(k,-A,A,w),k)Ee=-(se=k<0?-k:k);else throw Error(i+w+" cannot be zero: "+k);if(g.hasOwnProperty(w="CRYPTO"))if(k=g[w],k===!!k)if(k)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))he=k;else throw he=!k,Error(i+"crypto unavailable");else he=k;else throw Error(i+w+" not true or false: "+k);if(g.hasOwnProperty(w="MODULO_MODE")&&(k=g[w],m(k,0,9,w),G=k),g.hasOwnProperty(w="POW_PRECISION")&&(k=g[w],m(k,0,A,w),K=k),g.hasOwnProperty(w="FORMAT"))if(k=g[w],typeof k=="object")ae=k;else throw Error(i+w+" not an object: "+k);if(g.hasOwnProperty(w="ALPHABET"))if(k=g[w],typeof k=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(k))De=k.slice(0,10)=="0123456789",Me=k;else throw Error(i+w+" invalid: "+k)}else throw Error(i+"Object expected: "+g);return{DECIMAL_PLACES:re,ROUNDING_MODE:ie,EXPONENTIAL_AT:[le,ge],RANGE:[Ee,se],CRYPTO:he,MODULO_MODE:G,POW_PRECISION:K,FORMAT:ae,ALPHABET:Me}},W.isBigNumber=function(g){if(!g||g._isBigNumber!==!0)return!1;if(!W.DEBUG)return!0;var w,k,B=g.c,F=g.e,I=g.s;e:if({}.toString.call(B)=="[object Array]"){if((I===1||I===-1)&&F>=-A&&F<=A&&F===s(F)){if(B[0]===0){if(F===0&&B.length===1)return!0;break e}if(w=(F+1)%l,w<1&&(w+=l),String(B[0]).length==w){for(w=0;w<B.length;w++)if(k=B[w],k<0||k>=c||k!==s(k))break e;if(k!==0)return!0}}}else if(B===null&&F===null&&(I===null||I===1||I===-1))return!0;throw Error(i+"Invalid BigNumber: "+g)},W.maximum=W.max=function(){return ye(arguments,-1)},W.minimum=W.min=function(){return ye(arguments,1)},W.random=(function(){var g=9007199254740992,w=Math.random()*g&2097151?function(){return s(Math.random()*g)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(k){var B,F,I,L,O,P=0,j=[],N=new W(X);if(k==null?k=re:m(k,0,A),L=n(k/l),he)if(crypto.getRandomValues){for(B=crypto.getRandomValues(new Uint32Array(L*=2));P<L;)O=B[P]*131072+(B[P+1]>>>11),O>=9e15?(F=crypto.getRandomValues(new Uint32Array(2)),B[P]=F[0],B[P+1]=F[1]):(j.push(O%1e14),P+=2);P=L/2}else if(crypto.randomBytes){for(B=crypto.randomBytes(L*=7);P<L;)O=(B[P]&31)*281474976710656+B[P+1]*1099511627776+B[P+2]*4294967296+B[P+3]*16777216+(B[P+4]<<16)+(B[P+5]<<8)+B[P+6],O>=9e15?crypto.randomBytes(7).copy(B,P):(j.push(O%1e14),P+=7);P=L/7}else throw he=!1,Error(i+"crypto unavailable");if(!he)for(;P<L;)O=w(),O<9e15&&(j[P++]=O%1e14);for(L=j[--P],k%=l,L&&k&&(O=d[l-k],j[P]=s(L/O)*O);j[P]===0;j.pop(),P--);if(P<0)j=[I=0];else{for(I=-1;j[0]===0;j.splice(0,1),I-=l);for(P=1,O=j[0];O>=10;O/=10,P++);P<l&&(I-=l-P)}return N.e=I,N.c=j,N}})(),W.sum=function(){for(var g=1,w=arguments,k=new W(w[0]);g<w.length;)k=k.plus(w[g++]);return k},$=(function(){var g="0123456789";function w(k,B,F,I){for(var L,O=[0],P,j=0,N=k.length;j<N;){for(P=O.length;P--;O[P]*=B);for(O[0]+=I.indexOf(k.charAt(j++)),L=0;L<O.length;L++)O[L]>F-1&&(O[L+1]==null&&(O[L+1]=0),O[L+1]+=O[L]/F|0,O[L]%=F)}return O.reverse()}return function(k,B,F,I,L){var O,P,j,N,z,Q,Z,we,Fe=k.indexOf("."),Ie=re,Ce=ie;for(Fe>=0&&(N=K,K=0,k=k.replace(".",""),we=new W(B),Q=we.pow(k.length-Fe),K=N,we.c=w(E(_(Q.c),Q.e,"0"),10,F,g),we.e=we.c.length),Z=w(k,B,F,L?(O=Me,g):(O=g,Me)),j=N=Z.length;Z[--N]==0;Z.pop());if(!Z[0])return O.charAt(0);if(Fe<0?--j:(Q.c=Z,Q.e=j,Q.s=I,Q=x(Q,we,Ie,Ce,F),Z=Q.c,z=Q.r,j=Q.e),P=j+Ie+1,Fe=Z[P],N=F/2,z=z||P<0||Z[P+1]!=null,z=Ce<4?(Fe!=null||z)&&(Ce==0||Ce==(Q.s<0?3:2)):Fe>N||Fe==N&&(Ce==4||z||Ce==6&&Z[P-1]&1||Ce==(Q.s<0?8:7)),P<1||!Z[0])k=z?E(O.charAt(1),-Ie,O.charAt(0)):O.charAt(0);else{if(Z.length=P,z)for(--F;++Z[--P]>F;)Z[P]=0,P||(++j,Z=[1].concat(Z));for(N=Z.length;!Z[--N];);for(Fe=0,k="";Fe<=N;k+=O.charAt(Z[Fe++]));k=E(k,j,O.charAt(0))}return k}})(),x=(function(){function g(B,F,I){var L,O,P,j,N=0,z=B.length,Q=F%p,Z=F/p|0;for(B=B.slice();z--;)P=B[z]%p,j=B[z]/p|0,L=Z*P+j*Q,O=Q*P+L%p*p+N,N=(O/I|0)+(L/p|0)+Z*j,B[z]=O%I;return N&&(B=[N].concat(B)),B}function w(B,F,I,L){var O,P;if(I!=L)P=I>L?1:-1;else for(O=P=0;O<I;O++)if(B[O]!=F[O]){P=B[O]>F[O]?1:-1;break}return P}function k(B,F,I,L){for(var O=0;I--;)B[I]-=O,O=B[I]<F[I]?1:0,B[I]=O*L+B[I]-F[I];for(;!B[0]&&B.length>1;B.splice(0,1));}return function(B,F,I,L,O){var P,j,N,z,Q,Z,we,Fe,Ie,Ce,Ae,qe,bn,Cn,wn,ut,ur,Ke=B.s==F.s?1:-1,Le=B.c,Se=F.c;if(!Le||!Le[0]||!Se||!Se[0])return new W(!B.s||!F.s||(Le?Se&&Le[0]==Se[0]:!Se)?NaN:Le&&Le[0]==0||!Se?Ke*0:Ke/0);for(Fe=new W(Ke),Ie=Fe.c=[],j=B.e-F.e,Ke=I+j+1,O||(O=c,j=S(B.e/l)-S(F.e/l),Ke=Ke/l|0),N=0;Se[N]==(Le[N]||0);N++);if(Se[N]>(Le[N]||0)&&j--,Ke<0)Ie.push(1),z=!0;else{for(Cn=Le.length,ut=Se.length,N=0,Ke+=2,Q=s(O/(Se[0]+1)),Q>1&&(Se=g(Se,Q,O),Le=g(Le,Q,O),ut=Se.length,Cn=Le.length),bn=ut,Ce=Le.slice(0,ut),Ae=Ce.length;Ae<ut;Ce[Ae++]=0);ur=Se.slice(),ur=[0].concat(ur),wn=Se[0],Se[1]>=O/2&&wn++;do{if(Q=0,P=w(Se,Ce,ut,Ae),P<0){if(qe=Ce[0],ut!=Ae&&(qe=qe*O+(Ce[1]||0)),Q=s(qe/wn),Q>1)for(Q>=O&&(Q=O-1),Z=g(Se,Q,O),we=Z.length,Ae=Ce.length;w(Z,Ce,we,Ae)==1;)Q--,k(Z,ut<we?ur:Se,we,O),we=Z.length,P=1;else Q==0&&(P=Q=1),Z=Se.slice(),we=Z.length;if(we<Ae&&(Z=[0].concat(Z)),k(Ce,Z,Ae,O),Ae=Ce.length,P==-1)for(;w(Se,Ce,ut,Ae)<1;)Q++,k(Ce,ut<Ae?ur:Se,Ae,O),Ae=Ce.length}else P===0&&(Q++,Ce=[0]);Ie[N++]=Q,Ce[0]?Ce[Ae++]=Le[bn]||0:(Ce=[Le[bn]],Ae=1)}while((bn++<Cn||Ce[0]!=null)&&Ke--);z=Ce[0]!=null,Ie[0]||Ie.splice(0,1)}if(O==c){for(N=1,Ke=Ie[0];Ke>=10;Ke/=10,N++);ve(Fe,I+(Fe.e=N+j*l-1)+1,L,z)}else Fe.e=j,Fe.r=+z;return Fe}})();function ce(g,w,k,B){var F,I,L,O,P;if(k==null?k=ie:m(k,0,8),!g.c)return g.toString();if(F=g.c[0],L=g.e,w==null)P=_(g.c),P=B==1||B==2&&(L<=le||L>=ge)?C(P,L):E(P,L,"0");else if(g=ve(new W(g),w,k),I=g.e,P=_(g.c),O=P.length,B==1||B==2&&(w<=I||I<=le)){for(;O<w;P+="0",O++);P=C(P,I)}else if(w-=L+(B===2&&I>L),P=E(P,I,"0"),I+1>O){if(--w>0)for(P+=".";w--;P+="0");}else if(w+=I-O,w>0)for(I+1==O&&(P+=".");w--;P+="0");return g.s<0&&F?"-"+P:P}function ye(g,w){for(var k,B,F=1,I=new W(g[0]);F<g.length;F++)B=new W(g[F]),(!B.s||(k=y(I,B))===w||k===0&&I.s===w)&&(I=B);return I}function Pt(g,w,k){for(var B=1,F=w.length;!w[--F];w.pop());for(F=w[0];F>=10;F/=10,B++);return(k=B+k*l-1)>se?g.c=g.e=null:k<Ee?g.c=[g.e=0]:(g.e=k,g.c=w),g}V=(function(){var g=/^(-?)0([xbo])(?=\w[\w.]*$)/i,w=/^([^.]+)\.$/,k=/^\.([^.]+)$/,B=/^-?(Infinity|NaN)$/,F=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(I,L,O,P){var j,N=O?L:L.replace(F,"");if(B.test(N))I.s=isNaN(N)?null:N<0?-1:1;else{if(!O&&(N=N.replace(g,function(z,Q,Z){return j=(Z=Z.toLowerCase())=="x"?16:Z=="b"?2:8,!P||P==j?Q:z}),P&&(j=P,N=N.replace(w,"$1").replace(k,"0.$1")),L!=N))return new W(N,j);if(W.DEBUG)throw Error(i+"Not a"+(P?" base "+P:"")+" number: "+L);I.s=null}I.c=I.e=null}})();function ve(g,w,k,B){var F,I,L,O,P,j,N,z=g.c,Q=d;if(z){e:{for(F=1,O=z[0];O>=10;O/=10,F++);if(I=w-F,I<0)I+=l,L=w,P=z[j=0],N=s(P/Q[F-L-1]%10);else if(j=n((I+1)/l),j>=z.length)if(B){for(;z.length<=j;z.push(0));P=N=0,F=1,I%=l,L=I-l+1}else break e;else{for(P=O=z[j],F=1;O>=10;O/=10,F++);I%=l,L=I-l+F,N=L<0?0:s(P/Q[F-L-1]%10)}if(B=B||w<0||z[j+1]!=null||(L<0?P:P%Q[F-L-1]),B=k<4?(N||B)&&(k==0||k==(g.s<0?3:2)):N>5||N==5&&(k==4||B||k==6&&(I>0?L>0?P/Q[F-L]:0:z[j-1])%10&1||k==(g.s<0?8:7)),w<1||!z[0])return z.length=0,B?(w-=g.e+1,z[0]=Q[(l-w%l)%l],g.e=-w||0):z[0]=g.e=0,g;if(I==0?(z.length=j,O=1,j--):(z.length=j+1,O=Q[l-I],z[j]=L>0?s(P/Q[F-L]%Q[L])*O:0),B)for(;;)if(j==0){for(I=1,L=z[0];L>=10;L/=10,I++);for(L=z[0]+=O,O=1;L>=10;L/=10,O++);I!=O&&(g.e++,z[0]==c&&(z[0]=1));break}else{if(z[j]+=O,z[j]!=c)break;z[j--]=0,O=1}for(I=z.length;z[--I]===0;z.pop());}g.e>se?g.c=g.e=null:g.e<Ee&&(g.c=[g.e=0])}return g}function Ne(g){var w,k=g.e;return k===null?g.toString():(w=_(g.c),w=k<=le||k>=ge?C(w,k):E(w,k,"0"),g.s<0?"-"+w:w)}return U.absoluteValue=U.abs=function(){var g=new W(this);return g.s<0&&(g.s=1),g},U.comparedTo=function(g,w){return y(this,new W(g,w))},U.decimalPlaces=U.dp=function(g,w){var k,B,F,I=this;if(g!=null)return m(g,0,A),w==null?w=ie:m(w,0,8),ve(new W(I),g+I.e+1,w);if(!(k=I.c))return null;if(B=((F=k.length-1)-S(this.e/l))*l,F=k[F])for(;F%10==0;F/=10,B--);return B<0&&(B=0),B},U.dividedBy=U.div=function(g,w){return x(this,new W(g,w),re,ie)},U.dividedToIntegerBy=U.idiv=function(g,w){return x(this,new W(g,w),0,1)},U.exponentiatedBy=U.pow=function(g,w){var k,B,F,I,L,O,P,j,N,z=this;if(g=new W(g),g.c&&!g.isInteger())throw Error(i+"Exponent not an integer: "+Ne(g));if(w!=null&&(w=new W(w)),O=g.e>14,!z.c||!z.c[0]||z.c[0]==1&&!z.e&&z.c.length==1||!g.c||!g.c[0])return N=new W(Math.pow(+Ne(z),O?g.s*(2-D(g)):+Ne(g))),w?N.mod(w):N;if(P=g.s<0,w){if(w.c?!w.c[0]:!w.s)return new W(NaN);B=!P&&z.isInteger()&&w.isInteger(),B&&(z=z.mod(w))}else{if(g.e>9&&(z.e>0||z.e<-1||(z.e==0?z.c[0]>1||O&&z.c[1]>=24e7:z.c[0]<8e13||O&&z.c[0]<=9999975e7)))return I=z.s<0&&D(g)?-0:0,z.e>-1&&(I=1/I),new W(P?1/I:I);K&&(I=n(K/l+2))}for(O?(k=new W(.5),P&&(g.s=1),j=D(g)):(F=Math.abs(+Ne(g)),j=F%2),N=new W(X);;){if(j){if(N=N.times(z),!N.c)break;I?N.c.length>I&&(N.c.length=I):B&&(N=N.mod(w))}if(F){if(F=s(F/2),F===0)break;j=F%2}else if(g=g.times(k),ve(g,g.e+1,1),g.e>14)j=D(g);else{if(F=+Ne(g),F===0)break;j=F%2}z=z.times(z),I?z.c&&z.c.length>I&&(z.c.length=I):B&&(z=z.mod(w))}return B?N:(P&&(N=X.div(N)),w?N.mod(w):I?ve(N,K,ie,L):N)},U.integerValue=function(g){var w=new W(this);return g==null?g=ie:m(g,0,8),ve(w,w.e+1,g)},U.isEqualTo=U.eq=function(g,w){return y(this,new W(g,w))===0},U.isFinite=function(){return!!this.c},U.isGreaterThan=U.gt=function(g,w){return y(this,new W(g,w))>0},U.isGreaterThanOrEqualTo=U.gte=function(g,w){return(w=y(this,new W(g,w)))===1||w===0},U.isInteger=function(){return!!this.c&&S(this.e/l)>this.c.length-2},U.isLessThan=U.lt=function(g,w){return y(this,new W(g,w))<0},U.isLessThanOrEqualTo=U.lte=function(g,w){return(w=y(this,new W(g,w)))===-1||w===0},U.isNaN=function(){return!this.s},U.isNegative=function(){return this.s<0},U.isPositive=function(){return this.s>0},U.isZero=function(){return!!this.c&&this.c[0]==0},U.minus=function(g,w){var k,B,F,I,L=this,O=L.s;if(g=new W(g,w),w=g.s,!O||!w)return new W(NaN);if(O!=w)return g.s=-w,L.plus(g);var P=L.e/l,j=g.e/l,N=L.c,z=g.c;if(!P||!j){if(!N||!z)return N?(g.s=-w,g):new W(z?L:NaN);if(!N[0]||!z[0])return z[0]?(g.s=-w,g):new W(N[0]?L:ie==3?-0:0)}if(P=S(P),j=S(j),N=N.slice(),O=P-j){for((I=O<0)?(O=-O,F=N):(j=P,F=z),F.reverse(),w=O;w--;F.push(0));F.reverse()}else for(B=(I=(O=N.length)<(w=z.length))?O:w,O=w=0;w<B;w++)if(N[w]!=z[w]){I=N[w]<z[w];break}if(I&&(F=N,N=z,z=F,g.s=-g.s),w=(B=z.length)-(k=N.length),w>0)for(;w--;N[k++]=0);for(w=c-1;B>O;){if(N[--B]<z[B]){for(k=B;k&&!N[--k];N[k]=w);--N[k],N[B]+=c}N[B]-=z[B]}for(;N[0]==0;N.splice(0,1),--j);return N[0]?Pt(g,N,j):(g.s=ie==3?-1:1,g.c=[g.e=0],g)},U.modulo=U.mod=function(g,w){var k,B,F=this;return g=new W(g,w),!F.c||!g.s||g.c&&!g.c[0]?new W(NaN):!g.c||F.c&&!F.c[0]?new W(F):(G==9?(B=g.s,g.s=1,k=x(F,g,0,3),g.s=B,k.s*=B):k=x(F,g,0,G),g=F.minus(k.times(g)),!g.c[0]&&G==1&&(g.s=F.s),g)},U.multipliedBy=U.times=function(g,w){var k,B,F,I,L,O,P,j,N,z,Q,Z,we,Fe,Ie,Ce=this,Ae=Ce.c,qe=(g=new W(g,w)).c;if(!Ae||!qe||!Ae[0]||!qe[0])return!Ce.s||!g.s||Ae&&!Ae[0]&&!qe||qe&&!qe[0]&&!Ae?g.c=g.e=g.s=null:(g.s*=Ce.s,!Ae||!qe?g.c=g.e=null:(g.c=[0],g.e=0)),g;for(B=S(Ce.e/l)+S(g.e/l),g.s*=Ce.s,P=Ae.length,z=qe.length,P<z&&(we=Ae,Ae=qe,qe=we,F=P,P=z,z=F),F=P+z,we=[];F--;we.push(0));for(Fe=c,Ie=p,F=z;--F>=0;){for(k=0,Q=qe[F]%Ie,Z=qe[F]/Ie|0,L=P,I=F+L;I>F;)j=Ae[--L]%Ie,N=Ae[L]/Ie|0,O=Z*j+N*Q,j=Q*j+O%Ie*Ie+we[I]+k,k=(j/Fe|0)+(O/Ie|0)+Z*N,we[I--]=j%Fe;we[I]=k}return k?++B:we.splice(0,1),Pt(g,we,B)},U.negated=function(){var g=new W(this);return g.s=-g.s||null,g},U.plus=function(g,w){var k,B=this,F=B.s;if(g=new W(g,w),w=g.s,!F||!w)return new W(NaN);if(F!=w)return g.s=-w,B.minus(g);var I=B.e/l,L=g.e/l,O=B.c,P=g.c;if(!I||!L){if(!O||!P)return new W(F/0);if(!O[0]||!P[0])return P[0]?g:new W(O[0]?B:F*0)}if(I=S(I),L=S(L),O=O.slice(),F=I-L){for(F>0?(L=I,k=P):(F=-F,k=O),k.reverse();F--;k.push(0));k.reverse()}for(F=O.length,w=P.length,F-w<0&&(k=P,P=O,O=k,w=F),F=0;w;)F=(O[--w]=O[w]+P[w]+F)/c|0,O[w]=c===O[w]?0:O[w]%c;return F&&(O=[F].concat(O),++L),Pt(g,O,L)},U.precision=U.sd=function(g,w){var k,B,F,I=this;if(g!=null&&g!==!!g)return m(g,1,A),w==null?w=ie:m(w,0,8),ve(new W(I),g,w);if(!(k=I.c))return null;if(F=k.length-1,B=F*l+1,F=k[F]){for(;F%10==0;F/=10,B--);for(F=k[0];F>=10;F/=10,B++);}return g&&I.e+1>B&&(B=I.e+1),B},U.shiftedBy=function(g){return m(g,-h,h),this.times("1e"+g)},U.squareRoot=U.sqrt=function(){var g,w,k,B,F,I=this,L=I.c,O=I.s,P=I.e,j=re+4,N=new W("0.5");if(O!==1||!L||!L[0])return new W(!O||O<0&&(!L||L[0])?NaN:L?I:1/0);if(O=Math.sqrt(+Ne(I)),O==0||O==1/0?(w=_(L),(w.length+P)%2==0&&(w+="0"),O=Math.sqrt(+w),P=S((P+1)/2)-(P<0||P%2),O==1/0?w="5e"+P:(w=O.toExponential(),w=w.slice(0,w.indexOf("e")+1)+P),k=new W(w)):k=new W(O+""),k.c[0]){for(P=k.e,O=P+j,O<3&&(O=0);;)if(F=k,k=N.times(F.plus(x(I,F,j,1))),_(F.c).slice(0,O)===(w=_(k.c)).slice(0,O))if(k.e<P&&--O,w=w.slice(O-3,O+1),w=="9999"||!B&&w=="4999"){if(!B&&(ve(F,F.e+re+2,0),F.times(F).eq(I))){k=F;break}j+=4,O+=4,B=1}else{(!+w||!+w.slice(1)&&w.charAt(0)=="5")&&(ve(k,k.e+re+2,1),g=!k.times(k).eq(I));break}}return ve(k,k.e+re+1,ie,g)},U.toExponential=function(g,w){return g!=null&&(m(g,0,A),g++),ce(this,g,w,1)},U.toFixed=function(g,w){return g!=null&&(m(g,0,A),g=g+this.e+1),ce(this,g,w)},U.toFormat=function(g,w,k){var B,F=this;if(k==null)g!=null&&w&&typeof w=="object"?(k=w,w=null):g&&typeof g=="object"?(k=g,g=w=null):k=ae;else if(typeof k!="object")throw Error(i+"Argument not an object: "+k);if(B=F.toFixed(g,w),F.c){var I,L=B.split("."),O=+k.groupSize,P=+k.secondaryGroupSize,j=k.groupSeparator||"",N=L[0],z=L[1],Q=F.s<0,Z=Q?N.slice(1):N,we=Z.length;if(P&&(I=O,O=P,P=I,we-=I),O>0&&we>0){for(I=we%O||O,N=Z.substr(0,I);I<we;I+=O)N+=j+Z.substr(I,O);P>0&&(N+=j+Z.slice(I)),Q&&(N="-"+N)}B=z?N+(k.decimalSeparator||"")+((P=+k.fractionGroupSize)?z.replace(new RegExp("\\d{"+P+"}\\B","g"),"$&"+(k.fractionGroupSeparator||"")):z):N}return(k.prefix||"")+B+(k.suffix||"")},U.toFraction=function(g){var w,k,B,F,I,L,O,P,j,N,z,Q,Z=this,we=Z.c;if(g!=null&&(O=new W(g),!O.isInteger()&&(O.c||O.s!==1)||O.lt(X)))throw Error(i+"Argument "+(O.isInteger()?"out of range: ":"not an integer: ")+Ne(O));if(!we)return new W(Z);for(w=new W(X),j=k=new W(X),B=P=new W(X),Q=_(we),I=w.e=Q.length-Z.e-1,w.c[0]=d[(L=I%l)<0?l+L:L],g=!g||O.comparedTo(w)>0?I>0?w:j:O,L=se,se=1/0,O=new W(Q),P.c[0]=0;N=x(O,w,0,1),F=k.plus(N.times(B)),F.comparedTo(g)!=1;)k=B,B=F,j=P.plus(N.times(F=j)),P=F,w=O.minus(N.times(F=w)),O=F;return F=x(g.minus(k),B,0,1),P=P.plus(F.times(j)),k=k.plus(F.times(B)),P.s=j.s=Z.s,I=I*2,z=x(j,B,I,ie).minus(Z).abs().comparedTo(x(P,k,I,ie).minus(Z).abs())<1?[j,B]:[P,k],se=L,z},U.toNumber=function(){return+Ne(this)},U.toPrecision=function(g,w){return g!=null&&m(g,1,A),ce(this,g,w,2)},U.toString=function(g){var w,k=this,B=k.s,F=k.e;return F===null?B?(w="Infinity",B<0&&(w="-"+w)):w="NaN":(g==null?w=F<=le||F>=ge?C(_(k.c),F):E(_(k.c),F,"0"):g===10&&De?(k=ve(new W(k),re+F+1,ie),w=E(_(k.c),k.e,"0")):(m(g,2,Me.length,"Base"),w=$(E(_(k.c),F,"0"),10,g,B,!0)),B<0&&k.c[0]&&(w="-"+w)),w},U.valueOf=U.toJSON=function(){return Ne(this)},U._isBigNumber=!0,v!=null&&W.set(v),W}function S(v){var x=v|0;return v>0||v===x?x:x-1}function _(v){for(var x,$,V=1,U=v.length,X=v[0]+"";V<U;){for(x=v[V++]+"",$=l-x.length;$--;x="0"+x);X+=x}for(U=X.length;X.charCodeAt(--U)===48;);return X.slice(0,U+1||1)}function y(v,x){var $,V,U=v.c,X=x.c,re=v.s,ie=x.s,le=v.e,ge=x.e;if(!re||!ie)return null;if($=U&&!U[0],V=X&&!X[0],$||V)return $?V?0:-ie:re;if(re!=ie)return re;if($=re<0,V=le==ge,!U||!X)return V?0:!U^$?1:-1;if(!V)return le>ge^$?1:-1;for(ie=(le=U.length)<(ge=X.length)?le:ge,re=0;re<ie;re++)if(U[re]!=X[re])return U[re]>X[re]^$?1:-1;return le==ge?0:le>ge^$?1:-1}function m(v,x,$,V){if(v<x||v>$||v!==s(v))throw Error(i+(V||"Argument")+(typeof v=="number"?v<x||v>$?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function D(v){var x=v.c.length-1;return S(v.e/l)==x&&v.c[x]%2!=0}function C(v,x){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(x<0?"e":"e+")+x}function E(v,x,$){var V,U;if(x<0){for(U=$+".";++x;U+=$);v=U+v}else if(V=v.length,++x>V){for(U=$,x-=V;--x;U+=$);v+=U}else x<V&&(v=v.slice(0,x)+"."+v.slice(x));return v}e=R(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof Ei<"u"&&Ei.exports?Ei.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(Wp)});var Kp=J((Kv,Vp)=>{var Gp=cc(),Jp=Vp.exports;(function(){"use strict";function t(h){return h<10?"0"+h:h}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},u;function c(h){return r.lastIndex=0,r.test(h)?'"'+h.replace(r,function(d){var p=i[d];return typeof p=="string"?p:"\\u"+("0000"+d.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+h+'"'}function l(h,d){var p,A,R,S,_=n,y,m=d[h],D=m!=null&&(m instanceof Gp||Gp.isBigNumber(m));switch(m&&typeof m=="object"&&typeof m.toJSON=="function"&&(m=m.toJSON(h)),typeof u=="function"&&(m=u.call(d,h,m)),typeof m){case"string":return D?m:c(m);case"number":return isFinite(m)?String(m):"null";case"boolean":case"null":case"bigint":return String(m);case"object":if(!m)return"null";if(n+=s,y=[],Object.prototype.toString.apply(m)==="[object Array]"){for(S=m.length,p=0;p<S;p+=1)y[p]=l(p,m)||"null";return R=y.length===0?"[]":n?`[
|
|
44
44
|
`+n+y.join(`,
|
|
45
45
|
`+n)+`
|
|
46
46
|
`+_+"]":"["+y.join(",")+"]",n=_,R}if(u&&typeof u=="object")for(S=u.length,p=0;p<S;p+=1)typeof u[p]=="string"&&(A=u[p],R=l(A,m),R&&y.push(c(A)+(n?": ":":")+R));else Object.keys(m).forEach(function(C){var E=l(C,m);E&&y.push(c(C)+(n?": ":":")+E)});return R=y.length===0?"{}":n?`{
|
|
47
47
|
`+n+y.join(`,
|
|
48
48
|
`+n)+`
|
|
49
|
-
`+_+"}":"{"+y.join(",")+"}",n=_,R}}typeof
|
|
50
|
-
`,r:"\r",t:" "},i,u=function(_){throw{name:"SyntaxError",message:_,at:r,text:i}},c=function(_){return _&&_!==n&&u("Expected '"+_+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},l=function(){var _,y="";for(n==="-"&&(y="-",c("-"));n>="0"&&n<="9";)y+=n,c();if(n===".")for(y+=".";c()&&n>="0"&&n<="9";)y+=n;if(n==="e"||n==="E")for(y+=n,c(),(n==="-"||n==="+")&&(y+=n,c());n>="0"&&n<="9";)y+=n,c();if(_=+y,!isFinite(_))u("Bad number");else return Ai==null&&(Ai=uc()),y.length>15?e.storeAsString?y:e.useNativeBigInt?BigInt(y):new Ai(y):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(_):new Ai(_):_},h=function(){var _,y,m="",D;if(n==='"')for(var C=r;c();){if(n==='"')return r-1>C&&(m+=i.substring(C,r-1)),c(),m;if(n==="\\"){if(r-1>C&&(m+=i.substring(C,r-1)),c(),n==="u"){for(D=0,y=0;y<4&&(_=parseInt(c(),16),!!isFinite(_));y+=1)D=D*16+_;m+=String.fromCharCode(D)}else if(typeof s[n]=="string")m+=s[n];else break;C=r}}u("Bad string")},d=function(){for(;n&&n<=" ";)c()},p=function(){switch(n){case"t":return c("t"),c("r"),c("u"),c("e"),!0;case"f":return c("f"),c("a"),c("l"),c("s"),c("e"),!1;case"n":return c("n"),c("u"),c("l"),c("l"),null}u("Unexpected '"+n+"'")},A,R=function(){var _=[];if(n==="["){if(c("["),d(),n==="]")return c("]"),_;for(;n;){if(_.push(A()),d(),n==="]")return c("]"),_;c(","),d()}}u("Bad array")},S=function(){var _,y=Object.create(null);if(n==="{"){if(c("{"),d(),n==="}")return c("}"),y;for(;n;){if(_=h(),d(),c(":"),e.strict===!0&&Object.hasOwnProperty.call(y,_)&&u('Duplicate key "'+_+'"'),TC.test(_)===!0?e.protoAction==="error"?u("Object contains forbidden prototype property"):e.protoAction==="ignore"?A():y[_]=A():vC.test(_)===!0?e.constructorAction==="error"?u("Object contains forbidden constructor property"):e.constructorAction==="ignore"?A():y[_]=A():y[_]=A(),d(),n==="}")return c("}"),y;c(","),d()}}u("Bad object")};return A=function(){switch(d(),n){case"{":return S();case"[":return R();case'"':return h();case"-":return l();default:return n>="0"&&n<="9"?l():p()}},function(_,y){var m;return i=_+"",r=0,n=" ",m=A(),d(),n&&u("Syntax error"),typeof y=="function"?(function D(C,E){var v,x,$=C[E];return $&&typeof $=="object"&&Object.keys($).forEach(function(V){x=D($,V),x!==void 0?$[V]=x:delete $[V]}),y.call(C,E,$)})({"":m},""):m}};Kp.exports=RC});var Zp=J((Yv,Si)=>{var Xp=Vp().stringify,Qp=Yp();Si.exports=function(t){return{parse:Qp(t),stringify:Xp}};Si.exports.parse=Qp();Si.exports.stringify=Xp});var cc=J(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.GCE_LINUX_BIOS_PATHS=void 0;Ut.isGoogleCloudServerless=rm;Ut.isGoogleComputeEngineLinux=nm;Ut.isGoogleComputeEngineMACAddress=sm;Ut.isGoogleComputeEngine=om;Ut.detectGCPResidency=FC;var em=require("fs"),tm=require("os");Ut.GCE_LINUX_BIOS_PATHS={BIOS_DATE:"/sys/class/dmi/id/bios_date",BIOS_VENDOR:"/sys/class/dmi/id/bios_vendor"};var OC=/^42:01/;function rm(){return!!(process.env.CLOUD_RUN_JOB||process.env.FUNCTION_NAME||process.env.K_SERVICE)}function nm(){if((0,tm.platform)()!=="linux")return!1;try{(0,em.statSync)(Ut.GCE_LINUX_BIOS_PATHS.BIOS_DATE);let t=(0,em.readFileSync)(Ut.GCE_LINUX_BIOS_PATHS.BIOS_VENDOR,"utf8");return/Google/.test(t)}catch{return!1}}function sm(){let t=(0,tm.networkInterfaces)();for(let e of Object.values(t))if(e){for(let{mac:r}of e)if(OC.test(r))return!0}return!1}function om(){return nm()||sm()}function FC(){return rm()||om()}});var im=J(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.Colours=void 0;var Xe=class t{static isEnabled(e){return e&&e.isTTY&&(typeof e.getColorDepth=="function"?e.getColorDepth()>2:!0)}static refresh(){t.enabled=t.isEnabled(process==null?void 0:process.stderr),this.enabled?(t.reset="\x1B[0m",t.bright="\x1B[1m",t.dim="\x1B[2m",t.red="\x1B[31m",t.green="\x1B[32m",t.yellow="\x1B[33m",t.blue="\x1B[34m",t.magenta="\x1B[35m",t.cyan="\x1B[36m",t.white="\x1B[37m",t.grey="\x1B[90m"):(t.reset="",t.bright="",t.dim="",t.red="",t.green="",t.yellow="",t.blue="",t.magenta="",t.cyan="",t.white="",t.grey="")}};ki.Colours=Xe;Xe.enabled=!1;Xe.reset="";Xe.bright="";Xe.dim="";Xe.red="";Xe.green="";Xe.yellow="";Xe.blue="";Xe.magenta="";Xe.cyan="";Xe.white="";Xe.grey="";Xe.refresh()});var lm=J(ke=>{"use strict";var xC=ke&&ke.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),PC=ke&&ke.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),am=ke&&ke.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;s<n.length;s++)n[s]!=="default"&&xC(r,e,n[s]);return PC(r,e),r}})();Object.defineProperty(ke,"__esModule",{value:!0});ke.env=ke.DebugLogBackendBase=ke.placeholder=ke.AdhocDebugLogger=ke.LogSeverity=void 0;ke.getNodeBackend=fc;ke.getDebugBackend=NC;ke.getStructuredBackend=BC;ke.setBackend=jC;ke.log=cm;var IC=require("events"),Ps=am(require("process")),um=am(require("util")),pt=im(),Mt;(function(t){t.DEFAULT="DEFAULT",t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR"})(Mt||(ke.LogSeverity=Mt={}));var Is=class extends IC.EventEmitter{constructor(e,r){super(),this.namespace=e,this.upstream=r,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(n,s)=>this.on(n,s)}),this.func.debug=(...n)=>this.invokeSeverity(Mt.DEBUG,...n),this.func.info=(...n)=>this.invokeSeverity(Mt.INFO,...n),this.func.warn=(...n)=>this.invokeSeverity(Mt.WARNING,...n),this.func.error=(...n)=>this.invokeSeverity(Mt.ERROR,...n),this.func.sublog=n=>cm(n,this.func)}invoke(e,...r){if(this.upstream)try{this.upstream(e,...r)}catch{}try{this.emit("log",e,r)}catch{}}invokeSeverity(e,...r){this.invoke({severity:e},...r)}};ke.AdhocDebugLogger=Is;ke.placeholder=new Is("",()=>{}).func;var $n=class{constructor(){var e;this.cached=new Map,this.filters=[],this.filtersSet=!1;let r=(e=Ps.env[ke.env.nodeEnables])!==null&&e!==void 0?e:"*";r==="all"&&(r="*"),this.filters=r.split(",")}log(e,r,...n){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let s=this.cached.get(e);s||(s=this.makeLogger(e),this.cached.set(e,s)),s(r,...n)}catch(s){console.error(s)}}};ke.DebugLogBackendBase=$n;var lc=class extends $n{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(e){return this.enabledRegexp.test(e)}makeLogger(e){return this.enabledRegexp.test(e)?(r,...n)=>{var s;let i=`${pt.Colours.green}${e}${pt.Colours.reset}`,u=`${pt.Colours.yellow}${Ps.pid}${pt.Colours.reset}`,c;switch(r.severity){case Mt.ERROR:c=`${pt.Colours.red}${r.severity}${pt.Colours.reset}`;break;case Mt.INFO:c=`${pt.Colours.magenta}${r.severity}${pt.Colours.reset}`;break;case Mt.WARNING:c=`${pt.Colours.yellow}${r.severity}${pt.Colours.reset}`;break;default:c=(s=r.severity)!==null&&s!==void 0?s:Mt.DEFAULT;break}let l=um.formatWithOptions({colors:pt.Colours.enabled},...n),h=Object.assign({},r);delete h.severity;let d=Object.getOwnPropertyNames(h).length?JSON.stringify(h):"",p=d?`${pt.Colours.grey}${d}${pt.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",u,i,c,l,d?` ${p}`:"")}:()=>{}}setFilters(){let r=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=new RegExp(`^${r}$`,"i")}};function fc(){return new lc}var dc=class extends $n{constructor(e){super(),this.debugPkg=e}makeLogger(e){let r=this.debugPkg(e);return(n,...s)=>{r(s[0],...s.slice(1))}}setFilters(){var e;let r=(e=Ps.env.NODE_DEBUG)!==null&&e!==void 0?e:"";Ps.env.NODE_DEBUG=`${r}${r?",":""}${this.filters.join(",")}`}};function NC(t){return new dc(t)}var hc=class extends $n{constructor(e){var r;super(),this.upstream=(r=e)!==null&&r!==void 0?r:void 0}makeLogger(e){var r;let n=(r=this.upstream)===null||r===void 0?void 0:r.makeLogger(e);return(s,...i)=>{var u;let c=(u=s.severity)!==null&&u!==void 0?u:Mt.INFO,l=Object.assign({severity:c,message:um.format(...i)},s),h=JSON.stringify(l);n?n(s,h):console.log("%s",h)}}setFilters(){var e;(e=this.upstream)===null||e===void 0||e.setFilters()}};function BC(t){return new hc(t)}ke.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};var pc=new Map,mt;function jC(t){mt=t,pc.clear()}function cm(t,e){if(!mt&&!Ps.env[ke.env.nodeEnables]||!t)return ke.placeholder;e&&(t=`${e.instance.namespace}:${t}`);let r=pc.get(t);if(r)return r.func;if(mt===null)return ke.placeholder;mt===void 0&&(mt=fc());let n=(()=>{let s;return new Is(t,(u,...c)=>{if(s!==mt){if(mt===null)return;mt===void 0&&(mt=fc()),s=mt}mt?.log(t,u,...c)})})();return pc.set(t,n),n.func}});var mc=J(fn=>{"use strict";var qC=fn&&fn.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),LC=fn&&fn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qC(e,t,r)};Object.defineProperty(fn,"__esModule",{value:!0});LC(lm(),fn)});var Bs=J(oe=>{"use strict";var dm=oe&&oe.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),UC=oe&&oe.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),MC=oe&&oe.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;s<n.length;s++)n[s]!=="default"&&dm(r,e,n[s]);return UC(r,e),r}})(),$C=oe&&oe.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&dm(e,t,r)};Object.defineProperty(oe,"__esModule",{value:!0});oe.gcpResidencyCache=oe.METADATA_SERVER_DETECTION=oe.HEADERS=oe.HEADER_VALUE=oe.HEADER_NAME=oe.SECONDARY_HOST_ADDRESS=oe.HOST_ADDRESS=oe.BASE_PATH=void 0;oe.instance=VC;oe.project=KC;oe.universe=YC;oe.bulk=XC;oe.isAvailable=ZC;oe.resetIsAvailableCache=ew;oe.getGCPResidency=_c;oe.setGCPResidency=hm;oe.requestTimeout=pm;var gc=Ve(),zC=Zp(),HC=cc(),WC=MC(mc());oe.BASE_PATH="/computeMetadata/v1";oe.HOST_ADDRESS="http://169.254.169.254";oe.SECONDARY_HOST_ADDRESS="http://metadata.google.internal.";oe.HEADER_NAME="Metadata-Flavor";oe.HEADER_VALUE="Google";oe.HEADERS=Object.freeze({[oe.HEADER_NAME]:oe.HEADER_VALUE});var fm=WC.log("gcp-metadata");oe.METADATA_SERVER_DETECTION=Object.freeze({"assume-present":"don't try to ping the metadata server, but assume it's present",none:"don't try to ping the metadata server, but don't try to use it either","bios-only":"treat the result of a BIOS probe as canonical (don't fall back to pinging)","ping-only":"skip the BIOS probe, and go straight to pinging"});function yc(t){return t||(t=process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST||oe.HOST_ADDRESS),/^https?:\/\//.test(t)||(t=`http://${t}`),new URL(oe.BASE_PATH,t).href}function GC(t){Object.keys(t).forEach(e=>{switch(e){case"params":case"property":case"headers":break;case"qs":throw new Error("'qs' is not a valid configuration option. Please use 'params' instead.");default:throw new Error(`'${e}' is not a valid configuration option.`)}})}async function Ns(t,e={},r=3,n=!1){let s=new Headers(oe.HEADERS),i="",u={};if(typeof t=="object"){let p=t;new Headers(p.headers).forEach((A,R)=>s.set(R,A)),i=p.metadataKey,u=p.params||u,r=p.noResponseRetries||r,n=p.fastFail||n}else i=t;typeof e=="string"?i+=`/${e}`:(GC(e),e.property&&(i+=`/${e.property}`),new Headers(e.headers).forEach((p,A)=>s.set(A,p)),u=e.params||u);let c=n?JC:gc.request,l={url:`${yc()}/${i}`,headers:s,retryConfig:{noResponseRetries:r},params:u,responseType:"text",timeout:pm()};fm.info("instance request %j",l);let h=await c(l);fm.info("instance metadata is %s",h.data);let d=h.headers.get(oe.HEADER_NAME);if(d!==oe.HEADER_VALUE)throw new RangeError(`Invalid response from metadata service: incorrect ${oe.HEADER_NAME} header. Expected '${oe.HEADER_VALUE}', got ${d?`'${d}'`:"no header"}`);if(typeof h.data=="string")try{return zC.parse(h.data)}catch{}return h.data}async function JC(t){let e={...t,url:t.url?.toString().replace(yc(),yc(oe.SECONDARY_HOST_ADDRESS))},r=(0,gc.request)(t),n=(0,gc.request)(e);return Promise.any([r,n])}function VC(t){return Ns("instance",t)}function KC(t){return Ns("project",t)}function YC(t){return Ns("universe",t)}async function XC(t){let e={};return await Promise.all(t.map(r=>(async()=>{let n=await Ns(r),s=r.metadataKey;e[s]=n})())),e}function QC(){return process.env.DETECT_GCP_RETRIES?Number(process.env.DETECT_GCP_RETRIES):0}var Di;async function ZC(){if(process.env.METADATA_SERVER_DETECTION){let t=process.env.METADATA_SERVER_DETECTION.trim().toLocaleLowerCase();if(!(t in oe.METADATA_SERVER_DETECTION))throw new RangeError(`Unknown \`METADATA_SERVER_DETECTION\` env variable. Got \`${t}\`, but it should be \`${Object.keys(oe.METADATA_SERVER_DETECTION).join("`, `")}\`, or unset`);switch(t){case"assume-present":return!0;case"none":return!1;case"bios-only":return _c();case"ping-only":}}try{return Di===void 0&&(Di=Ns("instance",void 0,QC(),!(process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST))),await Di,!0}catch(t){let e=t;if(process.env.DEBUG_AUTH&&console.info(e),e.type==="request-timeout"||e.response&&e.response.status===404)return!1;if(!(e.response&&e.response.status===404)&&(!e.code||!["EHOSTDOWN","EHOSTUNREACH","ENETUNREACH","ENOENT","ENOTFOUND","ECONNREFUSED"].includes(e.code.toString()))){let r="UNKNOWN";e.code&&(r=e.code.toString()),process.emitWarning(`received unexpected error = ${e.message} code = ${r}`,"MetadataLookupWarning")}return!1}}function ew(){Di=void 0}oe.gcpResidencyCache=null;function _c(){return oe.gcpResidencyCache===null&&hm(),oe.gcpResidencyCache}function hm(t=null){oe.gcpResidencyCache=t!==null?t:(0,HC.detectGCPResidency)()}function pm(){return _c()?0:3e3}$C(cc(),oe)});var ym=J(Ti=>{"use strict";Ti.byteLength=rw;Ti.toByteArray=sw;Ti.fromByteArray=aw;var Qt=[],Tt=[],tw=typeof Uint8Array<"u"?Uint8Array:Array,bc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(dn=0,mm=bc.length;dn<mm;++dn)Qt[dn]=bc[dn],Tt[bc.charCodeAt(dn)]=dn;var dn,mm;Tt[45]=62;Tt[95]=63;function gm(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function rw(t){var e=gm(t),r=e[0],n=e[1];return(r+n)*3/4-n}function nw(t,e,r){return(e+r)*3/4-r}function sw(t){var e,r=gm(t),n=r[0],s=r[1],i=new tw(nw(t,n,s)),u=0,c=s>0?n-4:n,l;for(l=0;l<c;l+=4)e=Tt[t.charCodeAt(l)]<<18|Tt[t.charCodeAt(l+1)]<<12|Tt[t.charCodeAt(l+2)]<<6|Tt[t.charCodeAt(l+3)],i[u++]=e>>16&255,i[u++]=e>>8&255,i[u++]=e&255;return s===2&&(e=Tt[t.charCodeAt(l)]<<2|Tt[t.charCodeAt(l+1)]>>4,i[u++]=e&255),s===1&&(e=Tt[t.charCodeAt(l)]<<10|Tt[t.charCodeAt(l+1)]<<4|Tt[t.charCodeAt(l+2)]>>2,i[u++]=e>>8&255,i[u++]=e&255),i}function ow(t){return Qt[t>>18&63]+Qt[t>>12&63]+Qt[t>>6&63]+Qt[t&63]}function iw(t,e,r){for(var n,s=[],i=e;i<r;i+=3)n=(t[i]<<16&16711680)+(t[i+1]<<8&65280)+(t[i+2]&255),s.push(ow(n));return s.join("")}function aw(t){for(var e,r=t.length,n=r%3,s=[],i=16383,u=0,c=r-n;u<c;u+=i)s.push(iw(t,u,u+i>c?c:u+i));return n===1?(e=t[r-1],s.push(Qt[e>>2]+Qt[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],s.push(Qt[e>>10]+Qt[e>>4&63]+Qt[e<<2&63]+"=")),s.join("")}});var wc=J(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.fromArrayBufferToHex=uw;function uw(t){return Array.from(new Uint8Array(t)).map(r=>r.toString(16).padStart(2,"0")).join("")}});var _m=J(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.BrowserCrypto=void 0;var zn=ym(),cw=wc(),Ec=class t{constructor(){if(typeof window>"u"||window.crypto===void 0||window.crypto.subtle===void 0)throw new Error("SubtleCrypto not found. Make sure it's an https:// website.")}async sha256DigestBase64(e){let r=new TextEncoder().encode(e),n=await window.crypto.subtle.digest("SHA-256",r);return zn.fromByteArray(new Uint8Array(n))}randomBytesBase64(e){let r=new Uint8Array(e);return window.crypto.getRandomValues(r),zn.fromByteArray(r)}static padBase64(e){for(;e.length%4!==0;)e+="=";return e}async verify(e,r,n){let s={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},i=new TextEncoder().encode(r),u=zn.toByteArray(t.padBase64(n)),c=await window.crypto.subtle.importKey("jwk",e,s,!0,["verify"]);return await window.crypto.subtle.verify(s,c,u,i)}async sign(e,r){let n={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},s=new TextEncoder().encode(r),i=await window.crypto.subtle.importKey("jwk",e,n,!0,["sign"]),u=await window.crypto.subtle.sign(n,i,s);return zn.fromByteArray(new Uint8Array(u))}decodeBase64StringUtf8(e){let r=zn.toByteArray(t.padBase64(e));return new TextDecoder().decode(r)}encodeBase64StringUtf8(e){let r=new TextEncoder().encode(e);return zn.fromByteArray(r)}async sha256DigestHex(e){let r=new TextEncoder().encode(e),n=await window.crypto.subtle.digest("SHA-256",r);return(0,cw.fromArrayBufferToHex)(n)}async signWithHmacSha256(e,r){let n=typeof e=="string"?e:String.fromCharCode(...new Uint16Array(e)),s=new TextEncoder,i=await window.crypto.subtle.importKey("raw",s.encode(n),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return window.crypto.subtle.sign("HMAC",i,s.encode(r))}};vi.BrowserCrypto=Ec});var bm=J(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.NodeCrypto=void 0;var Hn=require("crypto"),Ac=class{async sha256DigestBase64(e){return Hn.createHash("sha256").update(e).digest("base64")}randomBytesBase64(e){return Hn.randomBytes(e).toString("base64")}async verify(e,r,n){let s=Hn.createVerify("RSA-SHA256");return s.update(r),s.end(),s.verify(e,n,"base64")}async sign(e,r){let n=Hn.createSign("RSA-SHA256");return n.update(r),n.end(),n.sign(e,"base64")}decodeBase64StringUtf8(e){return Buffer.from(e,"base64").toString("utf-8")}encodeBase64StringUtf8(e){return Buffer.from(e,"utf-8").toString("base64")}async sha256DigestHex(e){return Hn.createHash("sha256").update(e).digest("hex")}async signWithHmacSha256(e,r){let n=typeof e=="string"?e:fw(e);return lw(Hn.createHmac("sha256",n).update(r).digest())}};Ri.NodeCrypto=Ac;function lw(t){return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}function fw(t){return Buffer.from(t)}});var js=J(Cr=>{"use strict";var dw=Cr&&Cr.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),hw=Cr&&Cr.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&dw(e,t,r)};Object.defineProperty(Cr,"__esModule",{value:!0});Cr.createCrypto=gw;Cr.hasBrowserCrypto=Cm;var pw=_m(),mw=bm();hw(wc(),Cr);function gw(){return Cm()?new pw.BrowserCrypto:new mw.NodeCrypto}function Cm(){return typeof window<"u"&&typeof window.crypto<"u"&&typeof window.crypto.subtle<"u"}});var Wn=J((Sc,Em)=>{var Oi=require("buffer"),Zt=Oi.Buffer;function wm(t,e){for(var r in t)e[r]=t[r]}Zt.from&&Zt.alloc&&Zt.allocUnsafe&&Zt.allocUnsafeSlow?Em.exports=Oi:(wm(Oi,Sc),Sc.Buffer=hn);function hn(t,e,r){return Zt(t,e,r)}hn.prototype=Object.create(Zt.prototype);wm(Zt,hn);hn.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Zt(t,e,r)};hn.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=Zt(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};hn.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Zt(t)};hn.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Oi.SlowBuffer(t)}});var Sm=J((aR,Am)=>{"use strict";function kc(t){var e=(t/8|0)+(t%8===0?0:1);return e}var yw={ES256:kc(256),ES384:kc(384),ES512:kc(521)};function _w(t){var e=yw[t];if(e)return e;throw new Error('Unknown algorithm "'+t+'"')}Am.exports=_w});var Dc=J((uR,Om)=>{"use strict";var Fi=Wn().Buffer,Dm=Sm(),xi=128,Tm=0,bw=32,Cw=16,ww=2,vm=Cw|bw|Tm<<6,Pi=ww|Tm<<6;function Ew(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Rm(t){if(Fi.isBuffer(t))return t;if(typeof t=="string")return Fi.from(t,"base64");throw new TypeError("ECDSA signature must be a Base64 string or a Buffer")}function Aw(t,e){t=Rm(t);var r=Dm(e),n=r+1,s=t.length,i=0;if(t[i++]!==vm)throw new Error('Could not find expected "seq"');var u=t[i++];if(u===(xi|1)&&(u=t[i++]),s-i<u)throw new Error('"seq" specified length of "'+u+'", only "'+(s-i)+'" remaining');if(t[i++]!==Pi)throw new Error('Could not find expected "int" for "r"');var c=t[i++];if(s-i-2<c)throw new Error('"r" specified length of "'+c+'", only "'+(s-i-2)+'" available');if(n<c)throw new Error('"r" specified length of "'+c+'", max of "'+n+'" is acceptable');var l=i;if(i+=c,t[i++]!==Pi)throw new Error('Could not find expected "int" for "s"');var h=t[i++];if(s-i!==h)throw new Error('"s" specified length of "'+h+'", expected "'+(s-i)+'"');if(n<h)throw new Error('"s" specified length of "'+h+'", max of "'+n+'" is acceptable');var d=i;if(i+=h,i!==s)throw new Error('Expected to consume entire buffer, but "'+(s-i)+'" bytes remain');var p=r-c,A=r-h,R=Fi.allocUnsafe(p+c+A+h);for(i=0;i<p;++i)R[i]=0;t.copy(R,i,l+Math.max(-p,0),l+c),i=r;for(var S=i;i<S+A;++i)R[i]=0;return t.copy(R,i,d+Math.max(-A,0),d+h),R=R.toString("base64"),R=Ew(R),R}function km(t,e,r){for(var n=0;e+n<r&&t[e+n]===0;)++n;var s=t[e+n]>=xi;return s&&--n,n}function Sw(t,e){t=Rm(t);var r=Dm(e),n=t.length;if(n!==r*2)throw new TypeError('"'+e+'" signatures must be "'+r*2+'" bytes, saw "'+n+'"');var s=km(t,0,r),i=km(t,r,t.length),u=r-s,c=r-i,l=2+u+1+1+c,h=l<xi,d=Fi.allocUnsafe((h?2:3)+l),p=0;return d[p++]=vm,h?d[p++]=l:(d[p++]=xi|1,d[p++]=l&255),d[p++]=Pi,d[p++]=u,s<0?(d[p++]=0,p+=t.copy(d,p,0,r)):p+=t.copy(d,p,s,r),d[p++]=Pi,d[p++]=c,i<0?(d[p++]=0,t.copy(d,p,r)):t.copy(d,p,r+i),d}Om.exports={derToJose:Aw,joseToDer:Sw}});var $t=J(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.LRUCache=void 0;wr.snakeToCamel=xm;wr.originalOrCamelOptions=vw;wr.removeUndefinedValuesInObject=Rw;wr.isValidFile=Ow;wr.getWellKnownCertificateConfigFileLocation=Fw;var kw=require("fs"),Dw=require("os"),Tc=require("path"),Tw="certificate_config.json",Fm="gcloud";function xm(t){return t.replace(/([_][^_])/g,e=>e.slice(1).toUpperCase())}function vw(t){function e(r){let n=t||{};return n[r]??n[xm(r)]}return{get:e}}var vc=class{capacity;#e=new Map;maxAge;constructor(e){this.capacity=e.capacity,this.maxAge=e.maxAge}#t(e,r){this.#e.delete(e),this.#e.set(e,{value:r,lastAccessed:Date.now()})}set(e,r){this.#t(e,r),this.#r()}get(e){let r=this.#e.get(e);if(r)return this.#t(e,r.value),this.#r(),r.value}#r(){let e=this.maxAge?Date.now()-this.maxAge:0,r=this.#e.entries().next();for(;!r.done&&(this.#e.size>this.capacity||r.value[1].lastAccessed<e);)this.#e.delete(r.value[0]),r=this.#e.entries().next()}};wr.LRUCache=vc;function Rw(t){return Object.entries(t).forEach(([e,r])=>{(r===void 0||r==="undefined")&&delete t[e]}),t}async function Ow(t){try{return(await kw.promises.lstat(t)).isFile()}catch{return!1}}function Fw(){let t=process.env.CLOUDSDK_CONFIG||(xw()?Tc.join(process.env.APPDATA||"",Fm):Tc.join(process.env.HOME||"",".config",Fm));return Tc.join(t,Tw)}function xw(){return Dw.platform().startsWith("win")}});var Pm=J((lR,Pw)=>{Pw.exports={name:"google-auth-library",version:"10.4.0",author:"Google Inc.",description:"Google APIs Authentication Client Library for Node.js",engines:{node:">=18"},main:"./build/src/index.js",types:"./build/src/index.d.ts",repository:"googleapis/google-auth-library-nodejs.git",keywords:["google","api","google apis","client","client library"],dependencies:{"base64-js":"^1.3.0","ecdsa-sig-formatter":"^1.0.11",gaxios:"^7.0.0","gcp-metadata":"^7.0.0","google-logging-utils":"^1.0.0",gtoken:"^8.0.0",jws:"^4.0.0"},devDependencies:{"@types/base64-js":"^1.2.5","@types/jws":"^3.1.0","@types/mocha":"^10.0.10","@types/mv":"^2.1.0","@types/ncp":"^2.0.1","@types/node":"^22.0.0","@types/sinon":"^17.0.0","assert-rejects":"^1.0.0",c8:"^10.0.0",codecov:"^3.0.2",gts:"^6.0.0","is-docker":"^3.0.0",jsdoc:"^4.0.0","jsdoc-fresh":"^4.0.0","jsdoc-region-tag":"^3.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.1",keypair:"^1.0.4",linkinator:"^6.1.2",mocha:"^11.1.0",mv:"^2.1.1",ncp:"^2.0.0",nock:"^14.0.5","null-loader":"^4.0.0",puppeteer:"^24.0.0",sinon:"^21.0.0","ts-loader":"^8.0.0",typescript:"5.8.2",webpack:"^5.21.2","webpack-cli":"^4.0.0"},files:["build/src","!build/src/**/*.map"],scripts:{test:"c8 mocha build/test",clean:"gts clean",prepare:"npm run compile",lint:"gts check --no-inline-config",compile:"tsc -p .",fix:"gts fix",pretest:"npm run compile -- --sourceMap",docs:"jsdoc -c .jsdoc.js","samples-setup":"cd samples/ && npm link ../ && npm run setup && cd ../","samples-test":"cd samples/ && npm link ../ && npm test && cd ../","system-test":"mocha build/system-test --timeout 60000","presystem-test":"npm run compile -- --sourceMap",webpack:"webpack","browser-test":"karma start","docs-test":"linkinator docs","predocs-test":"npm run docs",prelint:"cd samples; npm link ../; npm install"},license:"Apache-2.0"}});var Rc=J(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.USER_AGENT=Mr.PRODUCT_NAME=Mr.pkg=void 0;var Im=Pm();Mr.pkg=Im;var Nm="google-api-nodejs-client";Mr.PRODUCT_NAME=Nm;var Iw=`${Nm}/${Im.version}`;Mr.USER_AGENT=Iw});var gt=J(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.AuthClient=zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=zt.DEFAULT_UNIVERSE=void 0;var Nw=require("events"),Oc=Ve(),Bw=$t(),jw=mc(),Fc=Rc();zt.DEFAULT_UNIVERSE="googleapis.com";zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=300*1e3;var xc=class t extends Nw.EventEmitter{apiKey;projectId;quotaProjectId;transporter;credentials={};eagerRefreshThresholdMillis=zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS;forceRefreshOnFailure=!1;universeDomain=zt.DEFAULT_UNIVERSE;static RequestMethodNameSymbol=Symbol("request method name");static RequestLogIdSymbol=Symbol("request log id");constructor(e={}){super();let r=(0,Bw.originalOrCamelOptions)(e);this.apiKey=e.apiKey,this.projectId=r.get("project_id")??null,this.quotaProjectId=r.get("quota_project_id"),this.credentials=r.get("credentials")??{},this.universeDomain=r.get("universe_domain")??zt.DEFAULT_UNIVERSE,this.transporter=e.transporter??new Oc.Gaxios(e.transporterOptions),r.get("useAuthRequestParameters")!==!1&&(this.transporter.interceptors.request.add(t.DEFAULT_REQUEST_INTERCEPTOR),this.transporter.interceptors.response.add(t.DEFAULT_RESPONSE_INTERCEPTOR)),e.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=e.forceRefreshOnFailure??!1}fetch(...e){let r=e[0],n=e[1],s,i=new Headers;return typeof r=="string"?s=new URL(r):r instanceof URL?s=r:r&&r.url&&(s=new URL(r.url)),r&&typeof r=="object"&&"headers"in r&&Oc.Gaxios.mergeHeaders(i,r.headers),n&&Oc.Gaxios.mergeHeaders(i,new Headers(n.headers)),typeof r=="object"&&!(r instanceof URL)?this.request({...n,...r,headers:i,url:s}):this.request({...n,headers:i,url:s})}setCredentials(e){this.credentials=e}addSharedMetadataHeaders(e){return!e.has("x-goog-user-project")&&this.quotaProjectId&&e.set("x-goog-user-project",this.quotaProjectId),e}addUserProjectAndAuthHeaders(e,r){let n=r.get("x-goog-user-project"),s=r.get("authorization");return n&&e.set("x-goog-user-project",n),s&&e.set("authorization",s),e}static log=(0,jw.log)("auth");static DEFAULT_REQUEST_INTERCEPTOR={resolved:async e=>{if(!e.headers.has("x-goog-api-client")){let n=process.version.replace(/^v/,"");e.headers.set("x-goog-api-client",`gl-node/${n}`)}let r=e.headers.get("User-Agent");r?r.includes(`${Fc.PRODUCT_NAME}/`)||e.headers.set("User-Agent",`${r} ${Fc.USER_AGENT}`):e.headers.set("User-Agent",Fc.USER_AGENT);try{let n=e,s=n[t.RequestMethodNameSymbol],i=`${Math.floor(Math.random()*1e3)}`;n[t.RequestLogIdSymbol]=i;let u={url:e.url,headers:e.headers};s?t.log.info("%s [%s] request %j",s,i,u):t.log.info("[%s] request %j",i,u)}catch{}return e}};static DEFAULT_RESPONSE_INTERCEPTOR={resolved:async e=>{try{let r=e.config,n=r[t.RequestMethodNameSymbol],s=r[t.RequestLogIdSymbol];n?t.log.info("%s [%s] response %j",n,s,e.data):t.log.info("[%s] response %j",s,e.data)}catch{}return e},rejected:async e=>{try{let r=e.config,n=r[t.RequestMethodNameSymbol],s=r[t.RequestLogIdSymbol];n?t.log.info("%s [%s] error %j",n,s,e.response?.data):t.log.error("[%s] error %j",s,e.response?.data)}catch{}throw e}};static setMethodName(e,r){try{let n=e;n[t.RequestMethodNameSymbol]=r}catch{}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};zt.AuthClient=xc});var Ic=J(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.LoginTicket=void 0;var Pc=class{envelope;payload;constructor(e,r){this.envelope=e,this.payload=r}getEnvelope(){return this.envelope}getPayload(){return this.payload}getUserId(){let e=this.getPayload();return e&&e.sub?e.sub:null}getAttributes(){return{envelope:this.getEnvelope(),payload:this.getPayload()}}};Ii.LoginTicket=Pc});var pn=J(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.OAuth2Client=er.ClientAuthentication=er.CertificateFormat=er.CodeChallengeMethod=void 0;var Bm=Ve(),qw=require("querystring"),Lw=require("stream"),Uw=Dc(),jm=$t(),Nc=js(),Gn=gt(),Mw=Ic(),qm;(function(t){t.Plain="plain",t.S256="S256"})(qm||(er.CodeChallengeMethod=qm={}));var Er;(function(t){t.PEM="PEM",t.JWK="JWK"})(Er||(er.CertificateFormat=Er={}));var qs;(function(t){t.ClientSecretPost="ClientSecretPost",t.ClientSecretBasic="ClientSecretBasic",t.None="None"})(qs||(er.ClientAuthentication=qs={}));var Bc=class t extends Gn.AuthClient{redirectUri;certificateCache={};certificateExpiry=null;certificateCacheFormat=Er.PEM;refreshTokenPromises=new Map;endpoints;issuers;clientAuthentication;_clientId;_clientSecret;refreshHandler;constructor(e={},r,n){super(typeof e=="object"?e:{}),typeof e!="object"&&(e={clientId:e,clientSecret:r,redirectUri:n}),this._clientId=e.clientId||e.client_id,this._clientSecret=e.clientSecret||e.client_secret,this.redirectUri=e.redirectUri||e.redirect_uris?.[0],this.endpoints={tokenInfoUrl:"https://oauth2.googleapis.com/tokeninfo",oauth2AuthBaseUrl:"https://accounts.google.com/o/oauth2/v2/auth",oauth2TokenUrl:"https://oauth2.googleapis.com/token",oauth2RevokeUrl:"https://oauth2.googleapis.com/revoke",oauth2FederatedSignonPemCertsUrl:"https://www.googleapis.com/oauth2/v1/certs",oauth2FederatedSignonJwkCertsUrl:"https://www.googleapis.com/oauth2/v3/certs",oauth2IapPublicKeyUrl:"https://www.gstatic.com/iap/verify/public_key",...e.endpoints},this.clientAuthentication=e.clientAuthentication||qs.ClientSecretPost,this.issuers=e.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}static GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";static CLOCK_SKEW_SECS_=300;static DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400;generateAuthUrl(e={}){if(e.code_challenge_method&&!e.code_challenge)throw new Error("If a code_challenge_method is provided, code_challenge must be included.");return e.response_type=e.response_type||"code",e.client_id=e.client_id||this._clientId,e.redirect_uri=e.redirect_uri||this.redirectUri,Array.isArray(e.scope)&&(e.scope=e.scope.join(" ")),this.endpoints.oauth2AuthBaseUrl.toString()+"?"+qw.stringify(e)}generateCodeVerifier(){throw new Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let e=(0,Nc.createCrypto)(),n=e.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),i=(await e.sha256DigestBase64(n)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:n,codeChallenge:i}}getToken(e,r){let n=typeof e=="string"?{code:e}:e;if(r)this.getTokenAsync(n).then(s=>r(null,s.tokens,s.res),s=>r(s,null,s.response));else return this.getTokenAsync(n)}async getTokenAsync(e){let r=this.endpoints.oauth2TokenUrl.toString(),n=new Headers,s={client_id:e.client_id||this._clientId,code_verifier:e.codeVerifier,code:e.code,grant_type:"authorization_code",redirect_uri:e.redirect_uri||this.redirectUri};if(this.clientAuthentication===qs.ClientSecretBasic){let l=Buffer.from(`${this._clientId}:${this._clientSecret}`);n.set("authorization",`Basic ${l.toString("base64")}`)}this.clientAuthentication===qs.ClientSecretPost&&(s.client_secret=this._clientSecret);let i={...t.RETRY_CONFIG,method:"POST",url:r,data:new URLSearchParams((0,jm.removeUndefinedValuesInObject)(s)),headers:n};Gn.AuthClient.setMethodName(i,"getTokenAsync");let u=await this.transporter.request(i),c=u.data;return u.data&&u.data.expires_in&&(c.expiry_date=new Date().getTime()+u.data.expires_in*1e3,delete c.expires_in),this.emit("tokens",c),{tokens:c,res:u}}async refreshToken(e){if(!e)return this.refreshTokenNoCache(e);if(this.refreshTokenPromises.has(e))return this.refreshTokenPromises.get(e);let r=this.refreshTokenNoCache(e).then(n=>(this.refreshTokenPromises.delete(e),n),n=>{throw this.refreshTokenPromises.delete(e),n});return this.refreshTokenPromises.set(e,r),r}async refreshTokenNoCache(e){if(!e)throw new Error("No refresh token is set.");let r=this.endpoints.oauth2TokenUrl.toString(),n={refresh_token:e,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"},s;try{let u={...t.RETRY_CONFIG,method:"POST",url:r,data:new URLSearchParams((0,jm.removeUndefinedValuesInObject)(n))};Gn.AuthClient.setMethodName(u,"refreshTokenNoCache"),s=await this.transporter.request(u)}catch(u){throw u instanceof Bm.GaxiosError&&u.message==="invalid_grant"&&u.response?.data&&/ReAuth/i.test(u.response.data.error_description)&&(u.message=JSON.stringify(u.response.data)),u}let i=s.data;return s.data&&s.data.expires_in&&(i.expiry_date=new Date().getTime()+s.data.expires_in*1e3,delete i.expires_in),this.emit("tokens",i),{tokens:i,res:s}}refreshAccessToken(e){if(e)this.refreshAccessTokenAsync().then(r=>e(null,r.credentials,r.res),e);else return this.refreshAccessTokenAsync()}async refreshAccessTokenAsync(){let e=await this.refreshToken(this.credentials.refresh_token),r=e.tokens;return r.refresh_token=this.credentials.refresh_token,this.credentials=r,{credentials:this.credentials,res:e.res}}getAccessToken(e){if(e)this.getAccessTokenAsync().then(r=>e(null,r.token,r.res),e);else return this.getAccessTokenAsync()}async getAccessTokenAsync(){if(!this.credentials.access_token||this.isTokenExpiring()){if(!this.credentials.refresh_token)if(this.refreshHandler){let n=await this.processAndValidateRefreshHandler();if(n?.access_token)return this.setCredentials(n),{token:this.credentials.access_token}}else throw new Error("No refresh token or refresh handler callback is set.");let r=await this.refreshAccessTokenAsync();if(!r.credentials||r.credentials&&!r.credentials.access_token)throw new Error("Could not refresh access token.");return{token:r.credentials.access_token,res:r.res}}else return{token:this.credentials.access_token}}async getRequestHeaders(e){return(await this.getRequestMetadataAsync(e)).headers}async getRequestMetadataAsync(e){let r=this.credentials;if(!r.access_token&&!r.refresh_token&&!this.apiKey&&!this.refreshHandler)throw new Error("No access, refresh token, API key or refresh handler callback is set.");if(r.access_token&&!this.isTokenExpiring()){r.token_type=r.token_type||"Bearer";let c=new Headers({authorization:r.token_type+" "+r.access_token});return{headers:this.addSharedMetadataHeaders(c)}}if(this.refreshHandler){let c=await this.processAndValidateRefreshHandler();if(c?.access_token){this.setCredentials(c);let l=new Headers({authorization:"Bearer "+this.credentials.access_token});return{headers:this.addSharedMetadataHeaders(l)}}}if(this.apiKey)return{headers:new Headers({"X-Goog-Api-Key":this.apiKey})};let n=null,s=null;try{n=await this.refreshToken(r.refresh_token),s=n.tokens}catch(c){let l=c;throw l.response&&(l.response.status===403||l.response.status===404)&&(l.message=`Could not refresh access token: ${l.message}`),l}let i=this.credentials;i.token_type=i.token_type||"Bearer",s.refresh_token=i.refresh_token,this.credentials=s;let u=new Headers({authorization:i.token_type+" "+s.access_token});return{headers:this.addSharedMetadataHeaders(u),res:n.res}}static getRevokeTokenUrl(e){return new t().getRevokeTokenURL(e).toString()}getRevokeTokenURL(e){let r=new URL(this.endpoints.oauth2RevokeUrl);return r.searchParams.append("token",e),r}revokeToken(e,r){let n={...t.RETRY_CONFIG,url:this.getRevokeTokenURL(e).toString(),method:"POST"};if(Gn.AuthClient.setMethodName(n,"revokeToken"),r)this.transporter.request(n).then(s=>r(null,s),r);else return this.transporter.request(n)}revokeCredentials(e){if(e)this.revokeCredentialsAsync().then(r=>e(null,r),e);else return this.revokeCredentialsAsync()}async revokeCredentialsAsync(){let e=this.credentials.access_token;if(this.credentials={},e)return this.revokeToken(e);throw new Error("No access token to revoke.")}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){try{let n=await this.getRequestMetadataAsync();return e.headers=Bm.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,n.headers),this.apiKey&&e.headers.set("X-Goog-Api-Key",this.apiKey),await this.transporter.request(e)}catch(n){let s=n.response;if(s){let i=s.status,u=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),c=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,l=s.config.data instanceof Lw.Readable,h=i===401||i===403;if(!r&&h&&!l&&u)return await this.refreshAccessTokenAsync(),this.requestAsync(e,!0);if(!r&&h&&!l&&c){let d=await this.processAndValidateRefreshHandler();return d?.access_token&&this.setCredentials(d),this.requestAsync(e,!0)}}throw n}}verifyIdToken(e,r){if(r&&typeof r!="function")throw new Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(r)this.verifyIdTokenAsync(e).then(n=>r(null,n),r);else return this.verifyIdTokenAsync(e)}async verifyIdTokenAsync(e){if(!e.idToken)throw new Error("The verifyIdToken method requires an ID Token");let r=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(e.idToken,r.certs,e.audience,this.issuers,e.maxExpiry)}async getTokenInfo(e){let{data:r}=await this.transporter.request({...t.RETRY_CONFIG,method:"POST",headers:{"content-type":"application/x-www-form-urlencoded;charset=UTF-8",authorization:`Bearer ${e}`},url:this.endpoints.tokenInfoUrl.toString()}),n=Object.assign({expiry_date:new Date().getTime()+r.expires_in*1e3,scopes:r.scope.split(" ")},r);return delete n.expires_in,delete n.scope,n}getFederatedSignonCerts(e){if(e)this.getFederatedSignonCertsAsync().then(r=>e(null,r.certs,r.res),e);else return this.getFederatedSignonCertsAsync()}async getFederatedSignonCertsAsync(){let e=new Date().getTime(),r=(0,Nc.hasBrowserCrypto)()?Er.JWK:Er.PEM;if(this.certificateExpiry&&e<this.certificateExpiry.getTime()&&this.certificateCacheFormat===r)return{certs:this.certificateCache,format:r};let n,s;switch(r){case Er.PEM:s=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case Er.JWK:s=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw new Error(`Unsupported certificate format ${r}`)}try{let h={...t.RETRY_CONFIG,url:s};Gn.AuthClient.setMethodName(h,"getFederatedSignonCertsAsync"),n=await this.transporter.request(h)}catch(h){throw h instanceof Error&&(h.message=`Failed to retrieve verification certificates: ${h.message}`),h}let i=n?.headers.get("cache-control"),u=-1;if(i){let h=/max-age=(?<maxAge>[0-9]+)/.exec(i)?.groups?.maxAge;h&&(u=Number(h)*1e3)}let c={};switch(r){case Er.PEM:c=n.data;break;case Er.JWK:for(let h of n.data.keys)c[h.kid]=h;break;default:throw new Error(`Unsupported certificate format ${r}`)}let l=new Date;return this.certificateExpiry=u===-1?null:new Date(l.getTime()+u),this.certificateCache=c,this.certificateCacheFormat=r,{certs:c,format:r,res:n}}getIapPublicKeys(e){if(e)this.getIapPublicKeysAsync().then(r=>e(null,r.pubkeys,r.res),e);else return this.getIapPublicKeysAsync()}async getIapPublicKeysAsync(){let e,r=this.endpoints.oauth2IapPublicKeyUrl.toString();try{let n={...t.RETRY_CONFIG,url:r};Gn.AuthClient.setMethodName(n,"getIapPublicKeysAsync"),e=await this.transporter.request(n)}catch(n){throw n instanceof Error&&(n.message=`Failed to retrieve verification certificates: ${n.message}`),n}return{pubkeys:e.data,res:e}}verifySignedJwtWithCerts(){throw new Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(e,r,n,s,i){let u=(0,Nc.createCrypto)();i||(i=t.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let c=e.split(".");if(c.length!==3)throw new Error("Wrong number of segments in token: "+e);let l=c[0]+"."+c[1],h=c[2],d,p;try{d=JSON.parse(u.decodeBase64StringUtf8(c[0]))}catch(C){throw C instanceof Error&&(C.message=`Can't parse token envelope: ${c[0]}': ${C.message}`),C}if(!d)throw new Error("Can't parse token envelope: "+c[0]);try{p=JSON.parse(u.decodeBase64StringUtf8(c[1]))}catch(C){throw C instanceof Error&&(C.message=`Can't parse token payload '${c[0]}`),C}if(!p)throw new Error("Can't parse token payload: "+c[1]);if(!Object.prototype.hasOwnProperty.call(r,d.kid))throw new Error("No pem found for envelope: "+JSON.stringify(d));let A=r[d.kid];if(d.alg==="ES256"&&(h=Uw.joseToDer(h,"ES256").toString("base64")),!await u.verify(A,l,h))throw new Error("Invalid token signature: "+e);if(!p.iat)throw new Error("No issue time in token: "+JSON.stringify(p));if(!p.exp)throw new Error("No expiration time in token: "+JSON.stringify(p));let S=Number(p.iat);if(isNaN(S))throw new Error("iat field using invalid format");let _=Number(p.exp);if(isNaN(_))throw new Error("exp field using invalid format");let y=new Date().getTime()/1e3;if(_>=y+i)throw new Error("Expiration time too far in future: "+JSON.stringify(p));let m=S-t.CLOCK_SKEW_SECS_,D=_+t.CLOCK_SKEW_SECS_;if(y<m)throw new Error("Token used too early, "+y+" < "+m+": "+JSON.stringify(p));if(y>D)throw new Error("Token used too late, "+y+" > "+D+": "+JSON.stringify(p));if(s&&s.indexOf(p.iss)<0)throw new Error("Invalid issuer, expected one of ["+s+"], but got "+p.iss);if(typeof n<"u"&&n!==null){let C=p.aud,E=!1;if(n.constructor===Array?E=n.indexOf(C)>-1:E=C===n,!E)throw new Error("Wrong recipient, payload audience != requiredAudience")}return new Mw.LoginTicket(d,p)}async processAndValidateRefreshHandler(){if(this.refreshHandler){let e=await this.refreshHandler();if(!e.access_token)throw new Error("No access token is returned by the refreshHandler callback.");return e}}isTokenExpiring(){let e=this.credentials.expiry_date;return e?e<=new Date().getTime()+this.eagerRefreshThresholdMillis:!1}};er.OAuth2Client=Bc});var qc=J(Ni=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});Ni.Compute=void 0;var $w=Ve(),Lm=Bs(),zw=pn(),jc=class extends zw.OAuth2Client{serviceAccountEmail;scopes;constructor(e={}){super(e),this.credentials={expiry_date:1,refresh_token:"compute-placeholder"},this.serviceAccountEmail=e.serviceAccountEmail||"default",this.scopes=Array.isArray(e.scopes)?e.scopes:e.scopes?[e.scopes]:[]}async refreshTokenNoCache(){let e=`service-accounts/${this.serviceAccountEmail}/token`,r;try{let s={property:e};this.scopes.length>0&&(s.params={scopes:this.scopes.join(",")}),r=await Lm.instance(s)}catch(s){throw s instanceof $w.GaxiosError&&(s.message=`Could not refresh access token: ${s.message}`,this.wrapError(s)),s}let n=r;return r&&r.expires_in&&(n.expiry_date=new Date().getTime()+r.expires_in*1e3,delete n.expires_in),this.emit("tokens",n),{tokens:n,res:null}}async fetchIdToken(e){let r=`service-accounts/${this.serviceAccountEmail}/identity?format=full&audience=${e}`,n;try{let s={property:r};n=await Lm.instance(s)}catch(s){throw s instanceof Error&&(s.message=`Could not fetch ID token: ${s.message}`),s}return n}wrapError(e){let r=e.response;r&&r.status&&(e.status=r.status,r.status===403?e.message="A Forbidden error was returned while attempting to retrieve an access token for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have the correct permission scopes specified: "+e.message:r.status===404&&(e.message="A Not Found error was returned while attempting to retrieve an accesstoken for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have any permission scopes specified: "+e.message))}};Ni.Compute=jc});var Uc=J(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.IdTokenClient=void 0;var Hw=pn(),Lc=class extends Hw.OAuth2Client{targetAudience;idTokenProvider;constructor(e){super(e),this.targetAudience=e.targetAudience,this.idTokenProvider=e.idTokenProvider}async getRequestMetadataAsync(){if(!this.credentials.id_token||!this.credentials.expiry_date||this.isTokenExpiring()){let r=await this.idTokenProvider.fetchIdToken(this.targetAudience);this.credentials={id_token:r,expiry_date:this.getIdTokenExpiryDate(r)}}return{headers:new Headers({authorization:"Bearer "+this.credentials.id_token})}}getIdTokenExpiryDate(e){let r=e.split(".")[1];if(r)return JSON.parse(Buffer.from(r,"base64").toString("ascii")).exp*1e3}};Bi.IdTokenClient=Lc});var Mc=J(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.GCPEnv=void 0;Jn.clear=Ww;Jn.getEnv=Gw;var Um=Bs(),tr;(function(t){t.APP_ENGINE="APP_ENGINE",t.KUBERNETES_ENGINE="KUBERNETES_ENGINE",t.CLOUD_FUNCTIONS="CLOUD_FUNCTIONS",t.COMPUTE_ENGINE="COMPUTE_ENGINE",t.CLOUD_RUN="CLOUD_RUN",t.CLOUD_RUN_JOBS="CLOUD_RUN_JOBS",t.NONE="NONE"})(tr||(Jn.GCPEnv=tr={}));var Ls;function Ww(){Ls=void 0}async function Gw(){return Ls||(Ls=Jw(),Ls)}async function Jw(){let t=tr.NONE;return Vw()?t=tr.APP_ENGINE:Kw()?t=tr.CLOUD_FUNCTIONS:await Zw()?await Qw()?t=tr.KUBERNETES_ENGINE:Yw()?t=tr.CLOUD_RUN:Xw()?t=tr.CLOUD_RUN_JOBS:t=tr.COMPUTE_ENGINE:t=tr.NONE,t}function Vw(){return!!(process.env.GAE_SERVICE||process.env.GAE_MODULE_NAME)}function Kw(){return!!(process.env.FUNCTION_NAME||process.env.FUNCTION_TARGET)}function Yw(){return!!process.env.K_CONFIGURATION}function Xw(){return!!process.env.CLOUD_RUN_JOB}async function Qw(){try{return await Um.instance("attributes/cluster-name"),!0}catch{return!1}}async function Zw(){return Um.isAvailable()}});var $c=J((_R,Mm)=>{var ji=Wn().Buffer,eE=require("stream"),tE=require("util");function qi(t){if(this.buffer=null,this.writable=!0,this.readable=!0,!t)return this.buffer=ji.alloc(0),this;if(typeof t.pipe=="function")return this.buffer=ji.alloc(0),t.pipe(this),this;if(t.length||typeof t=="object")return this.buffer=t,this.writable=!1,process.nextTick(function(){this.emit("end",t),this.readable=!1,this.emit("close")}.bind(this)),this;throw new TypeError("Unexpected data type ("+typeof t+")")}tE.inherits(qi,eE);qi.prototype.write=function(e){this.buffer=ji.concat([this.buffer,ji.from(e)]),this.emit("data",e)};qi.prototype.end=function(e){e&&this.write(e),this.emit("end",e),this.emit("close"),this.writable=!1,this.readable=!1};Mm.exports=qi});var zm=J((bR,$m)=>{"use strict";var Us=require("buffer").Buffer,zc=require("buffer").SlowBuffer;$m.exports=Li;function Li(t,e){if(!Us.isBuffer(t)||!Us.isBuffer(e)||t.length!==e.length)return!1;for(var r=0,n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}Li.install=function(){Us.prototype.equal=zc.prototype.equal=function(e){return Li(this,e)}};var rE=Us.prototype.equal,nE=zc.prototype.equal;Li.restore=function(){Us.prototype.equal=rE,zc.prototype.equal=nE}});var Jc=J((CR,Qm)=>{var Kn=Wn().Buffer,vt=require("crypto"),Wm=Dc(),Hm=require("util"),sE=`"%s" is not a valid algorithm.
|
|
49
|
+
`+_+"}":"{"+y.join(",")+"}",n=_,R}}typeof Jp.stringify!="function"&&(Jp.stringify=function(h,d,p){var A;if(n="",s="",typeof p=="number")for(A=0;A<p;A+=1)s+=" ";else typeof p=="string"&&(s=p);if(u=d,d&&typeof d!="function"&&(typeof d!="object"||typeof d.length!="number"))throw new Error("JSON.stringify");return l("",{"":h})})})()});var Xp=J((Yv,Yp)=>{var Ai=null,vC=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,RC=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,OC=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
50
|
+
`,r:"\r",t:" "},i,u=function(_){throw{name:"SyntaxError",message:_,at:r,text:i}},c=function(_){return _&&_!==n&&u("Expected '"+_+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},l=function(){var _,y="";for(n==="-"&&(y="-",c("-"));n>="0"&&n<="9";)y+=n,c();if(n===".")for(y+=".";c()&&n>="0"&&n<="9";)y+=n;if(n==="e"||n==="E")for(y+=n,c(),(n==="-"||n==="+")&&(y+=n,c());n>="0"&&n<="9";)y+=n,c();if(_=+y,!isFinite(_))u("Bad number");else return Ai==null&&(Ai=cc()),y.length>15?e.storeAsString?y:e.useNativeBigInt?BigInt(y):new Ai(y):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(_):new Ai(_):_},h=function(){var _,y,m="",D;if(n==='"')for(var C=r;c();){if(n==='"')return r-1>C&&(m+=i.substring(C,r-1)),c(),m;if(n==="\\"){if(r-1>C&&(m+=i.substring(C,r-1)),c(),n==="u"){for(D=0,y=0;y<4&&(_=parseInt(c(),16),!!isFinite(_));y+=1)D=D*16+_;m+=String.fromCharCode(D)}else if(typeof s[n]=="string")m+=s[n];else break;C=r}}u("Bad string")},d=function(){for(;n&&n<=" ";)c()},p=function(){switch(n){case"t":return c("t"),c("r"),c("u"),c("e"),!0;case"f":return c("f"),c("a"),c("l"),c("s"),c("e"),!1;case"n":return c("n"),c("u"),c("l"),c("l"),null}u("Unexpected '"+n+"'")},A,R=function(){var _=[];if(n==="["){if(c("["),d(),n==="]")return c("]"),_;for(;n;){if(_.push(A()),d(),n==="]")return c("]"),_;c(","),d()}}u("Bad array")},S=function(){var _,y=Object.create(null);if(n==="{"){if(c("{"),d(),n==="}")return c("}"),y;for(;n;){if(_=h(),d(),c(":"),e.strict===!0&&Object.hasOwnProperty.call(y,_)&&u('Duplicate key "'+_+'"'),vC.test(_)===!0?e.protoAction==="error"?u("Object contains forbidden prototype property"):e.protoAction==="ignore"?A():y[_]=A():RC.test(_)===!0?e.constructorAction==="error"?u("Object contains forbidden constructor property"):e.constructorAction==="ignore"?A():y[_]=A():y[_]=A(),d(),n==="}")return c("}"),y;c(","),d()}}u("Bad object")};return A=function(){switch(d(),n){case"{":return S();case"[":return R();case'"':return h();case"-":return l();default:return n>="0"&&n<="9"?l():p()}},function(_,y){var m;return i=_+"",r=0,n=" ",m=A(),d(),n&&u("Syntax error"),typeof y=="function"?(function D(C,E){var v,x,$=C[E];return $&&typeof $=="object"&&Object.keys($).forEach(function(V){x=D($,V),x!==void 0?$[V]=x:delete $[V]}),y.call(C,E,$)})({"":m},""):m}};Yp.exports=OC});var em=J((Xv,Si)=>{var Qp=Kp().stringify,Zp=Xp();Si.exports=function(t){return{parse:Zp(t),stringify:Qp}};Si.exports.parse=Zp();Si.exports.stringify=Qp});var lc=J(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.GCE_LINUX_BIOS_PATHS=void 0;Ut.isGoogleCloudServerless=nm;Ut.isGoogleComputeEngineLinux=sm;Ut.isGoogleComputeEngineMACAddress=om;Ut.isGoogleComputeEngine=im;Ut.detectGCPResidency=xC;var tm=require("fs"),rm=require("os");Ut.GCE_LINUX_BIOS_PATHS={BIOS_DATE:"/sys/class/dmi/id/bios_date",BIOS_VENDOR:"/sys/class/dmi/id/bios_vendor"};var FC=/^42:01/;function nm(){return!!(process.env.CLOUD_RUN_JOB||process.env.FUNCTION_NAME||process.env.K_SERVICE)}function sm(){if((0,rm.platform)()!=="linux")return!1;try{(0,tm.statSync)(Ut.GCE_LINUX_BIOS_PATHS.BIOS_DATE);let t=(0,tm.readFileSync)(Ut.GCE_LINUX_BIOS_PATHS.BIOS_VENDOR,"utf8");return/Google/.test(t)}catch{return!1}}function om(){let t=(0,rm.networkInterfaces)();for(let e of Object.values(t))if(e){for(let{mac:r}of e)if(FC.test(r))return!0}return!1}function im(){return sm()||om()}function xC(){return nm()||im()}});var am=J(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.Colours=void 0;var Xe=class t{static isEnabled(e){return e&&e.isTTY&&(typeof e.getColorDepth=="function"?e.getColorDepth()>2:!0)}static refresh(){t.enabled=t.isEnabled(process==null?void 0:process.stderr),this.enabled?(t.reset="\x1B[0m",t.bright="\x1B[1m",t.dim="\x1B[2m",t.red="\x1B[31m",t.green="\x1B[32m",t.yellow="\x1B[33m",t.blue="\x1B[34m",t.magenta="\x1B[35m",t.cyan="\x1B[36m",t.white="\x1B[37m",t.grey="\x1B[90m"):(t.reset="",t.bright="",t.dim="",t.red="",t.green="",t.yellow="",t.blue="",t.magenta="",t.cyan="",t.white="",t.grey="")}};ki.Colours=Xe;Xe.enabled=!1;Xe.reset="";Xe.bright="";Xe.dim="";Xe.red="";Xe.green="";Xe.yellow="";Xe.blue="";Xe.magenta="";Xe.cyan="";Xe.white="";Xe.grey="";Xe.refresh()});var fm=J(ke=>{"use strict";var PC=ke&&ke.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),IC=ke&&ke.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),um=ke&&ke.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;s<n.length;s++)n[s]!=="default"&&PC(r,e,n[s]);return IC(r,e),r}})();Object.defineProperty(ke,"__esModule",{value:!0});ke.env=ke.DebugLogBackendBase=ke.placeholder=ke.AdhocDebugLogger=ke.LogSeverity=void 0;ke.getNodeBackend=dc;ke.getDebugBackend=BC;ke.getStructuredBackend=jC;ke.setBackend=qC;ke.log=lm;var NC=require("events"),Ps=um(require("process")),cm=um(require("util")),pt=am(),Mt;(function(t){t.DEFAULT="DEFAULT",t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR"})(Mt||(ke.LogSeverity=Mt={}));var Is=class extends NC.EventEmitter{constructor(e,r){super(),this.namespace=e,this.upstream=r,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(n,s)=>this.on(n,s)}),this.func.debug=(...n)=>this.invokeSeverity(Mt.DEBUG,...n),this.func.info=(...n)=>this.invokeSeverity(Mt.INFO,...n),this.func.warn=(...n)=>this.invokeSeverity(Mt.WARNING,...n),this.func.error=(...n)=>this.invokeSeverity(Mt.ERROR,...n),this.func.sublog=n=>lm(n,this.func)}invoke(e,...r){if(this.upstream)try{this.upstream(e,...r)}catch{}try{this.emit("log",e,r)}catch{}}invokeSeverity(e,...r){this.invoke({severity:e},...r)}};ke.AdhocDebugLogger=Is;ke.placeholder=new Is("",()=>{}).func;var $n=class{constructor(){var e;this.cached=new Map,this.filters=[],this.filtersSet=!1;let r=(e=Ps.env[ke.env.nodeEnables])!==null&&e!==void 0?e:"*";r==="all"&&(r="*"),this.filters=r.split(",")}log(e,r,...n){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let s=this.cached.get(e);s||(s=this.makeLogger(e),this.cached.set(e,s)),s(r,...n)}catch(s){console.error(s)}}};ke.DebugLogBackendBase=$n;var fc=class extends $n{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(e){return this.enabledRegexp.test(e)}makeLogger(e){return this.enabledRegexp.test(e)?(r,...n)=>{var s;let i=`${pt.Colours.green}${e}${pt.Colours.reset}`,u=`${pt.Colours.yellow}${Ps.pid}${pt.Colours.reset}`,c;switch(r.severity){case Mt.ERROR:c=`${pt.Colours.red}${r.severity}${pt.Colours.reset}`;break;case Mt.INFO:c=`${pt.Colours.magenta}${r.severity}${pt.Colours.reset}`;break;case Mt.WARNING:c=`${pt.Colours.yellow}${r.severity}${pt.Colours.reset}`;break;default:c=(s=r.severity)!==null&&s!==void 0?s:Mt.DEFAULT;break}let l=cm.formatWithOptions({colors:pt.Colours.enabled},...n),h=Object.assign({},r);delete h.severity;let d=Object.getOwnPropertyNames(h).length?JSON.stringify(h):"",p=d?`${pt.Colours.grey}${d}${pt.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",u,i,c,l,d?` ${p}`:"")}:()=>{}}setFilters(){let r=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=new RegExp(`^${r}$`,"i")}};function dc(){return new fc}var hc=class extends $n{constructor(e){super(),this.debugPkg=e}makeLogger(e){let r=this.debugPkg(e);return(n,...s)=>{r(s[0],...s.slice(1))}}setFilters(){var e;let r=(e=Ps.env.NODE_DEBUG)!==null&&e!==void 0?e:"";Ps.env.NODE_DEBUG=`${r}${r?",":""}${this.filters.join(",")}`}};function BC(t){return new hc(t)}var pc=class extends $n{constructor(e){var r;super(),this.upstream=(r=e)!==null&&r!==void 0?r:void 0}makeLogger(e){var r;let n=(r=this.upstream)===null||r===void 0?void 0:r.makeLogger(e);return(s,...i)=>{var u;let c=(u=s.severity)!==null&&u!==void 0?u:Mt.INFO,l=Object.assign({severity:c,message:cm.format(...i)},s),h=JSON.stringify(l);n?n(s,h):console.log("%s",h)}}setFilters(){var e;(e=this.upstream)===null||e===void 0||e.setFilters()}};function jC(t){return new pc(t)}ke.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};var mc=new Map,mt;function qC(t){mt=t,mc.clear()}function lm(t,e){if(!mt&&!Ps.env[ke.env.nodeEnables]||!t)return ke.placeholder;e&&(t=`${e.instance.namespace}:${t}`);let r=mc.get(t);if(r)return r.func;if(mt===null)return ke.placeholder;mt===void 0&&(mt=dc());let n=(()=>{let s;return new Is(t,(u,...c)=>{if(s!==mt){if(mt===null)return;mt===void 0&&(mt=dc()),s=mt}mt?.log(t,u,...c)})})();return mc.set(t,n),n.func}});var gc=J(fn=>{"use strict";var LC=fn&&fn.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),UC=fn&&fn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&LC(e,t,r)};Object.defineProperty(fn,"__esModule",{value:!0});UC(fm(),fn)});var Bs=J(oe=>{"use strict";var hm=oe&&oe.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),MC=oe&&oe.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),$C=oe&&oe.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;s<n.length;s++)n[s]!=="default"&&hm(r,e,n[s]);return MC(r,e),r}})(),zC=oe&&oe.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&hm(e,t,r)};Object.defineProperty(oe,"__esModule",{value:!0});oe.gcpResidencyCache=oe.METADATA_SERVER_DETECTION=oe.HEADERS=oe.HEADER_VALUE=oe.HEADER_NAME=oe.SECONDARY_HOST_ADDRESS=oe.HOST_ADDRESS=oe.BASE_PATH=void 0;oe.instance=KC;oe.project=YC;oe.universe=XC;oe.bulk=QC;oe.isAvailable=ew;oe.resetIsAvailableCache=tw;oe.getGCPResidency=bc;oe.setGCPResidency=pm;oe.requestTimeout=mm;var yc=Ve(),HC=em(),WC=lc(),GC=$C(gc());oe.BASE_PATH="/computeMetadata/v1";oe.HOST_ADDRESS="http://169.254.169.254";oe.SECONDARY_HOST_ADDRESS="http://metadata.google.internal.";oe.HEADER_NAME="Metadata-Flavor";oe.HEADER_VALUE="Google";oe.HEADERS=Object.freeze({[oe.HEADER_NAME]:oe.HEADER_VALUE});var dm=GC.log("gcp-metadata");oe.METADATA_SERVER_DETECTION=Object.freeze({"assume-present":"don't try to ping the metadata server, but assume it's present",none:"don't try to ping the metadata server, but don't try to use it either","bios-only":"treat the result of a BIOS probe as canonical (don't fall back to pinging)","ping-only":"skip the BIOS probe, and go straight to pinging"});function _c(t){return t||(t=process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST||oe.HOST_ADDRESS),/^https?:\/\//.test(t)||(t=`http://${t}`),new URL(oe.BASE_PATH,t).href}function JC(t){Object.keys(t).forEach(e=>{switch(e){case"params":case"property":case"headers":break;case"qs":throw new Error("'qs' is not a valid configuration option. Please use 'params' instead.");default:throw new Error(`'${e}' is not a valid configuration option.`)}})}async function Ns(t,e={},r=3,n=!1){let s=new Headers(oe.HEADERS),i="",u={};if(typeof t=="object"){let p=t;new Headers(p.headers).forEach((A,R)=>s.set(R,A)),i=p.metadataKey,u=p.params||u,r=p.noResponseRetries||r,n=p.fastFail||n}else i=t;typeof e=="string"?i+=`/${e}`:(JC(e),e.property&&(i+=`/${e.property}`),new Headers(e.headers).forEach((p,A)=>s.set(A,p)),u=e.params||u);let c=n?VC:yc.request,l={url:`${_c()}/${i}`,headers:s,retryConfig:{noResponseRetries:r},params:u,responseType:"text",timeout:mm()};dm.info("instance request %j",l);let h=await c(l);dm.info("instance metadata is %s",h.data);let d=h.headers.get(oe.HEADER_NAME);if(d!==oe.HEADER_VALUE)throw new RangeError(`Invalid response from metadata service: incorrect ${oe.HEADER_NAME} header. Expected '${oe.HEADER_VALUE}', got ${d?`'${d}'`:"no header"}`);if(typeof h.data=="string")try{return HC.parse(h.data)}catch{}return h.data}async function VC(t){let e={...t,url:t.url?.toString().replace(_c(),_c(oe.SECONDARY_HOST_ADDRESS))},r=(0,yc.request)(t),n=(0,yc.request)(e);return Promise.any([r,n])}function KC(t){return Ns("instance",t)}function YC(t){return Ns("project",t)}function XC(t){return Ns("universe",t)}async function QC(t){let e={};return await Promise.all(t.map(r=>(async()=>{let n=await Ns(r),s=r.metadataKey;e[s]=n})())),e}function ZC(){return process.env.DETECT_GCP_RETRIES?Number(process.env.DETECT_GCP_RETRIES):0}var Di;async function ew(){if(process.env.METADATA_SERVER_DETECTION){let t=process.env.METADATA_SERVER_DETECTION.trim().toLocaleLowerCase();if(!(t in oe.METADATA_SERVER_DETECTION))throw new RangeError(`Unknown \`METADATA_SERVER_DETECTION\` env variable. Got \`${t}\`, but it should be \`${Object.keys(oe.METADATA_SERVER_DETECTION).join("`, `")}\`, or unset`);switch(t){case"assume-present":return!0;case"none":return!1;case"bios-only":return bc();case"ping-only":}}try{return Di===void 0&&(Di=Ns("instance",void 0,ZC(),!(process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST))),await Di,!0}catch(t){let e=t;if(process.env.DEBUG_AUTH&&console.info(e),e.type==="request-timeout"||e.response&&e.response.status===404)return!1;if(!(e.response&&e.response.status===404)&&(!e.code||!["EHOSTDOWN","EHOSTUNREACH","ENETUNREACH","ENOENT","ENOTFOUND","ECONNREFUSED"].includes(e.code.toString()))){let r="UNKNOWN";e.code&&(r=e.code.toString()),process.emitWarning(`received unexpected error = ${e.message} code = ${r}`,"MetadataLookupWarning")}return!1}}function tw(){Di=void 0}oe.gcpResidencyCache=null;function bc(){return oe.gcpResidencyCache===null&&pm(),oe.gcpResidencyCache}function pm(t=null){oe.gcpResidencyCache=t!==null?t:(0,WC.detectGCPResidency)()}function mm(){return bc()?0:3e3}zC(lc(),oe)});var _m=J(Ti=>{"use strict";Ti.byteLength=nw;Ti.toByteArray=ow;Ti.fromByteArray=uw;var Qt=[],Tt=[],rw=typeof Uint8Array<"u"?Uint8Array:Array,Cc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(dn=0,gm=Cc.length;dn<gm;++dn)Qt[dn]=Cc[dn],Tt[Cc.charCodeAt(dn)]=dn;var dn,gm;Tt[45]=62;Tt[95]=63;function ym(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function nw(t){var e=ym(t),r=e[0],n=e[1];return(r+n)*3/4-n}function sw(t,e,r){return(e+r)*3/4-r}function ow(t){var e,r=ym(t),n=r[0],s=r[1],i=new rw(sw(t,n,s)),u=0,c=s>0?n-4:n,l;for(l=0;l<c;l+=4)e=Tt[t.charCodeAt(l)]<<18|Tt[t.charCodeAt(l+1)]<<12|Tt[t.charCodeAt(l+2)]<<6|Tt[t.charCodeAt(l+3)],i[u++]=e>>16&255,i[u++]=e>>8&255,i[u++]=e&255;return s===2&&(e=Tt[t.charCodeAt(l)]<<2|Tt[t.charCodeAt(l+1)]>>4,i[u++]=e&255),s===1&&(e=Tt[t.charCodeAt(l)]<<10|Tt[t.charCodeAt(l+1)]<<4|Tt[t.charCodeAt(l+2)]>>2,i[u++]=e>>8&255,i[u++]=e&255),i}function iw(t){return Qt[t>>18&63]+Qt[t>>12&63]+Qt[t>>6&63]+Qt[t&63]}function aw(t,e,r){for(var n,s=[],i=e;i<r;i+=3)n=(t[i]<<16&16711680)+(t[i+1]<<8&65280)+(t[i+2]&255),s.push(iw(n));return s.join("")}function uw(t){for(var e,r=t.length,n=r%3,s=[],i=16383,u=0,c=r-n;u<c;u+=i)s.push(aw(t,u,u+i>c?c:u+i));return n===1?(e=t[r-1],s.push(Qt[e>>2]+Qt[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],s.push(Qt[e>>10]+Qt[e>>4&63]+Qt[e<<2&63]+"=")),s.join("")}});var Ec=J(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.fromArrayBufferToHex=cw;function cw(t){return Array.from(new Uint8Array(t)).map(r=>r.toString(16).padStart(2,"0")).join("")}});var bm=J(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.BrowserCrypto=void 0;var zn=_m(),lw=Ec(),Ac=class t{constructor(){if(typeof window>"u"||window.crypto===void 0||window.crypto.subtle===void 0)throw new Error("SubtleCrypto not found. Make sure it's an https:// website.")}async sha256DigestBase64(e){let r=new TextEncoder().encode(e),n=await window.crypto.subtle.digest("SHA-256",r);return zn.fromByteArray(new Uint8Array(n))}randomBytesBase64(e){let r=new Uint8Array(e);return window.crypto.getRandomValues(r),zn.fromByteArray(r)}static padBase64(e){for(;e.length%4!==0;)e+="=";return e}async verify(e,r,n){let s={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},i=new TextEncoder().encode(r),u=zn.toByteArray(t.padBase64(n)),c=await window.crypto.subtle.importKey("jwk",e,s,!0,["verify"]);return await window.crypto.subtle.verify(s,c,u,i)}async sign(e,r){let n={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},s=new TextEncoder().encode(r),i=await window.crypto.subtle.importKey("jwk",e,n,!0,["sign"]),u=await window.crypto.subtle.sign(n,i,s);return zn.fromByteArray(new Uint8Array(u))}decodeBase64StringUtf8(e){let r=zn.toByteArray(t.padBase64(e));return new TextDecoder().decode(r)}encodeBase64StringUtf8(e){let r=new TextEncoder().encode(e);return zn.fromByteArray(r)}async sha256DigestHex(e){let r=new TextEncoder().encode(e),n=await window.crypto.subtle.digest("SHA-256",r);return(0,lw.fromArrayBufferToHex)(n)}async signWithHmacSha256(e,r){let n=typeof e=="string"?e:String.fromCharCode(...new Uint16Array(e)),s=new TextEncoder,i=await window.crypto.subtle.importKey("raw",s.encode(n),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return window.crypto.subtle.sign("HMAC",i,s.encode(r))}};vi.BrowserCrypto=Ac});var Cm=J(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.NodeCrypto=void 0;var Hn=require("crypto"),Sc=class{async sha256DigestBase64(e){return Hn.createHash("sha256").update(e).digest("base64")}randomBytesBase64(e){return Hn.randomBytes(e).toString("base64")}async verify(e,r,n){let s=Hn.createVerify("RSA-SHA256");return s.update(r),s.end(),s.verify(e,n,"base64")}async sign(e,r){let n=Hn.createSign("RSA-SHA256");return n.update(r),n.end(),n.sign(e,"base64")}decodeBase64StringUtf8(e){return Buffer.from(e,"base64").toString("utf-8")}encodeBase64StringUtf8(e){return Buffer.from(e,"utf-8").toString("base64")}async sha256DigestHex(e){return Hn.createHash("sha256").update(e).digest("hex")}async signWithHmacSha256(e,r){let n=typeof e=="string"?e:dw(e);return fw(Hn.createHmac("sha256",n).update(r).digest())}};Ri.NodeCrypto=Sc;function fw(t){return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}function dw(t){return Buffer.from(t)}});var js=J(Cr=>{"use strict";var hw=Cr&&Cr.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),pw=Cr&&Cr.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&hw(e,t,r)};Object.defineProperty(Cr,"__esModule",{value:!0});Cr.createCrypto=yw;Cr.hasBrowserCrypto=wm;var mw=bm(),gw=Cm();pw(Ec(),Cr);function yw(){return wm()?new mw.BrowserCrypto:new gw.NodeCrypto}function wm(){return typeof window<"u"&&typeof window.crypto<"u"&&typeof window.crypto.subtle<"u"}});var Wn=J((kc,Am)=>{var Oi=require("buffer"),Zt=Oi.Buffer;function Em(t,e){for(var r in t)e[r]=t[r]}Zt.from&&Zt.alloc&&Zt.allocUnsafe&&Zt.allocUnsafeSlow?Am.exports=Oi:(Em(Oi,kc),kc.Buffer=hn);function hn(t,e,r){return Zt(t,e,r)}hn.prototype=Object.create(Zt.prototype);Em(Zt,hn);hn.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Zt(t,e,r)};hn.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=Zt(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};hn.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Zt(t)};hn.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Oi.SlowBuffer(t)}});var km=J((uR,Sm)=>{"use strict";function Dc(t){var e=(t/8|0)+(t%8===0?0:1);return e}var _w={ES256:Dc(256),ES384:Dc(384),ES512:Dc(521)};function bw(t){var e=_w[t];if(e)return e;throw new Error('Unknown algorithm "'+t+'"')}Sm.exports=bw});var Tc=J((cR,Fm)=>{"use strict";var Fi=Wn().Buffer,Tm=km(),xi=128,vm=0,Cw=32,ww=16,Ew=2,Rm=ww|Cw|vm<<6,Pi=Ew|vm<<6;function Aw(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Om(t){if(Fi.isBuffer(t))return t;if(typeof t=="string")return Fi.from(t,"base64");throw new TypeError("ECDSA signature must be a Base64 string or a Buffer")}function Sw(t,e){t=Om(t);var r=Tm(e),n=r+1,s=t.length,i=0;if(t[i++]!==Rm)throw new Error('Could not find expected "seq"');var u=t[i++];if(u===(xi|1)&&(u=t[i++]),s-i<u)throw new Error('"seq" specified length of "'+u+'", only "'+(s-i)+'" remaining');if(t[i++]!==Pi)throw new Error('Could not find expected "int" for "r"');var c=t[i++];if(s-i-2<c)throw new Error('"r" specified length of "'+c+'", only "'+(s-i-2)+'" available');if(n<c)throw new Error('"r" specified length of "'+c+'", max of "'+n+'" is acceptable');var l=i;if(i+=c,t[i++]!==Pi)throw new Error('Could not find expected "int" for "s"');var h=t[i++];if(s-i!==h)throw new Error('"s" specified length of "'+h+'", expected "'+(s-i)+'"');if(n<h)throw new Error('"s" specified length of "'+h+'", max of "'+n+'" is acceptable');var d=i;if(i+=h,i!==s)throw new Error('Expected to consume entire buffer, but "'+(s-i)+'" bytes remain');var p=r-c,A=r-h,R=Fi.allocUnsafe(p+c+A+h);for(i=0;i<p;++i)R[i]=0;t.copy(R,i,l+Math.max(-p,0),l+c),i=r;for(var S=i;i<S+A;++i)R[i]=0;return t.copy(R,i,d+Math.max(-A,0),d+h),R=R.toString("base64"),R=Aw(R),R}function Dm(t,e,r){for(var n=0;e+n<r&&t[e+n]===0;)++n;var s=t[e+n]>=xi;return s&&--n,n}function kw(t,e){t=Om(t);var r=Tm(e),n=t.length;if(n!==r*2)throw new TypeError('"'+e+'" signatures must be "'+r*2+'" bytes, saw "'+n+'"');var s=Dm(t,0,r),i=Dm(t,r,t.length),u=r-s,c=r-i,l=2+u+1+1+c,h=l<xi,d=Fi.allocUnsafe((h?2:3)+l),p=0;return d[p++]=Rm,h?d[p++]=l:(d[p++]=xi|1,d[p++]=l&255),d[p++]=Pi,d[p++]=u,s<0?(d[p++]=0,p+=t.copy(d,p,0,r)):p+=t.copy(d,p,s,r),d[p++]=Pi,d[p++]=c,i<0?(d[p++]=0,t.copy(d,p,r)):t.copy(d,p,r+i),d}Fm.exports={derToJose:Sw,joseToDer:kw}});var $t=J(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.LRUCache=void 0;wr.snakeToCamel=Pm;wr.originalOrCamelOptions=Rw;wr.removeUndefinedValuesInObject=Ow;wr.isValidFile=Fw;wr.getWellKnownCertificateConfigFileLocation=xw;var Dw=require("fs"),Tw=require("os"),vc=require("path"),vw="certificate_config.json",xm="gcloud";function Pm(t){return t.replace(/([_][^_])/g,e=>e.slice(1).toUpperCase())}function Rw(t){function e(r){let n=t||{};return n[r]??n[Pm(r)]}return{get:e}}var Rc=class{capacity;#e=new Map;maxAge;constructor(e){this.capacity=e.capacity,this.maxAge=e.maxAge}#t(e,r){this.#e.delete(e),this.#e.set(e,{value:r,lastAccessed:Date.now()})}set(e,r){this.#t(e,r),this.#r()}get(e){let r=this.#e.get(e);if(r)return this.#t(e,r.value),this.#r(),r.value}#r(){let e=this.maxAge?Date.now()-this.maxAge:0,r=this.#e.entries().next();for(;!r.done&&(this.#e.size>this.capacity||r.value[1].lastAccessed<e);)this.#e.delete(r.value[0]),r=this.#e.entries().next()}};wr.LRUCache=Rc;function Ow(t){return Object.entries(t).forEach(([e,r])=>{(r===void 0||r==="undefined")&&delete t[e]}),t}async function Fw(t){try{return(await Dw.promises.lstat(t)).isFile()}catch{return!1}}function xw(){let t=process.env.CLOUDSDK_CONFIG||(Pw()?vc.join(process.env.APPDATA||"",xm):vc.join(process.env.HOME||"",".config",xm));return vc.join(t,vw)}function Pw(){return Tw.platform().startsWith("win")}});var Im=J((fR,Iw)=>{Iw.exports={name:"google-auth-library",version:"10.4.0",author:"Google Inc.",description:"Google APIs Authentication Client Library for Node.js",engines:{node:">=18"},main:"./build/src/index.js",types:"./build/src/index.d.ts",repository:"googleapis/google-auth-library-nodejs.git",keywords:["google","api","google apis","client","client library"],dependencies:{"base64-js":"^1.3.0","ecdsa-sig-formatter":"^1.0.11",gaxios:"^7.0.0","gcp-metadata":"^7.0.0","google-logging-utils":"^1.0.0",gtoken:"^8.0.0",jws:"^4.0.0"},devDependencies:{"@types/base64-js":"^1.2.5","@types/jws":"^3.1.0","@types/mocha":"^10.0.10","@types/mv":"^2.1.0","@types/ncp":"^2.0.1","@types/node":"^22.0.0","@types/sinon":"^17.0.0","assert-rejects":"^1.0.0",c8:"^10.0.0",codecov:"^3.0.2",gts:"^6.0.0","is-docker":"^3.0.0",jsdoc:"^4.0.0","jsdoc-fresh":"^4.0.0","jsdoc-region-tag":"^3.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.1",keypair:"^1.0.4",linkinator:"^6.1.2",mocha:"^11.1.0",mv:"^2.1.1",ncp:"^2.0.0",nock:"^14.0.5","null-loader":"^4.0.0",puppeteer:"^24.0.0",sinon:"^21.0.0","ts-loader":"^8.0.0",typescript:"5.8.2",webpack:"^5.21.2","webpack-cli":"^4.0.0"},files:["build/src","!build/src/**/*.map"],scripts:{test:"c8 mocha build/test",clean:"gts clean",prepare:"npm run compile",lint:"gts check --no-inline-config",compile:"tsc -p .",fix:"gts fix",pretest:"npm run compile -- --sourceMap",docs:"jsdoc -c .jsdoc.js","samples-setup":"cd samples/ && npm link ../ && npm run setup && cd ../","samples-test":"cd samples/ && npm link ../ && npm test && cd ../","system-test":"mocha build/system-test --timeout 60000","presystem-test":"npm run compile -- --sourceMap",webpack:"webpack","browser-test":"karma start","docs-test":"linkinator docs","predocs-test":"npm run docs",prelint:"cd samples; npm link ../; npm install"},license:"Apache-2.0"}});var Oc=J(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.USER_AGENT=Mr.PRODUCT_NAME=Mr.pkg=void 0;var Nm=Im();Mr.pkg=Nm;var Bm="google-api-nodejs-client";Mr.PRODUCT_NAME=Bm;var Nw=`${Bm}/${Nm.version}`;Mr.USER_AGENT=Nw});var gt=J(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.AuthClient=zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=zt.DEFAULT_UNIVERSE=void 0;var Bw=require("events"),Fc=Ve(),jw=$t(),qw=gc(),xc=Oc();zt.DEFAULT_UNIVERSE="googleapis.com";zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=300*1e3;var Pc=class t extends Bw.EventEmitter{apiKey;projectId;quotaProjectId;transporter;credentials={};eagerRefreshThresholdMillis=zt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS;forceRefreshOnFailure=!1;universeDomain=zt.DEFAULT_UNIVERSE;static RequestMethodNameSymbol=Symbol("request method name");static RequestLogIdSymbol=Symbol("request log id");constructor(e={}){super();let r=(0,jw.originalOrCamelOptions)(e);this.apiKey=e.apiKey,this.projectId=r.get("project_id")??null,this.quotaProjectId=r.get("quota_project_id"),this.credentials=r.get("credentials")??{},this.universeDomain=r.get("universe_domain")??zt.DEFAULT_UNIVERSE,this.transporter=e.transporter??new Fc.Gaxios(e.transporterOptions),r.get("useAuthRequestParameters")!==!1&&(this.transporter.interceptors.request.add(t.DEFAULT_REQUEST_INTERCEPTOR),this.transporter.interceptors.response.add(t.DEFAULT_RESPONSE_INTERCEPTOR)),e.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=e.forceRefreshOnFailure??!1}fetch(...e){let r=e[0],n=e[1],s,i=new Headers;return typeof r=="string"?s=new URL(r):r instanceof URL?s=r:r&&r.url&&(s=new URL(r.url)),r&&typeof r=="object"&&"headers"in r&&Fc.Gaxios.mergeHeaders(i,r.headers),n&&Fc.Gaxios.mergeHeaders(i,new Headers(n.headers)),typeof r=="object"&&!(r instanceof URL)?this.request({...n,...r,headers:i,url:s}):this.request({...n,headers:i,url:s})}setCredentials(e){this.credentials=e}addSharedMetadataHeaders(e){return!e.has("x-goog-user-project")&&this.quotaProjectId&&e.set("x-goog-user-project",this.quotaProjectId),e}addUserProjectAndAuthHeaders(e,r){let n=r.get("x-goog-user-project"),s=r.get("authorization");return n&&e.set("x-goog-user-project",n),s&&e.set("authorization",s),e}static log=(0,qw.log)("auth");static DEFAULT_REQUEST_INTERCEPTOR={resolved:async e=>{if(!e.headers.has("x-goog-api-client")){let n=process.version.replace(/^v/,"");e.headers.set("x-goog-api-client",`gl-node/${n}`)}let r=e.headers.get("User-Agent");r?r.includes(`${xc.PRODUCT_NAME}/`)||e.headers.set("User-Agent",`${r} ${xc.USER_AGENT}`):e.headers.set("User-Agent",xc.USER_AGENT);try{let n=e,s=n[t.RequestMethodNameSymbol],i=`${Math.floor(Math.random()*1e3)}`;n[t.RequestLogIdSymbol]=i;let u={url:e.url,headers:e.headers};s?t.log.info("%s [%s] request %j",s,i,u):t.log.info("[%s] request %j",i,u)}catch{}return e}};static DEFAULT_RESPONSE_INTERCEPTOR={resolved:async e=>{try{let r=e.config,n=r[t.RequestMethodNameSymbol],s=r[t.RequestLogIdSymbol];n?t.log.info("%s [%s] response %j",n,s,e.data):t.log.info("[%s] response %j",s,e.data)}catch{}return e},rejected:async e=>{try{let r=e.config,n=r[t.RequestMethodNameSymbol],s=r[t.RequestLogIdSymbol];n?t.log.info("%s [%s] error %j",n,s,e.response?.data):t.log.error("[%s] error %j",s,e.response?.data)}catch{}throw e}};static setMethodName(e,r){try{let n=e;n[t.RequestMethodNameSymbol]=r}catch{}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};zt.AuthClient=Pc});var Nc=J(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.LoginTicket=void 0;var Ic=class{envelope;payload;constructor(e,r){this.envelope=e,this.payload=r}getEnvelope(){return this.envelope}getPayload(){return this.payload}getUserId(){let e=this.getPayload();return e&&e.sub?e.sub:null}getAttributes(){return{envelope:this.getEnvelope(),payload:this.getPayload()}}};Ii.LoginTicket=Ic});var pn=J(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.OAuth2Client=er.ClientAuthentication=er.CertificateFormat=er.CodeChallengeMethod=void 0;var jm=Ve(),Lw=require("querystring"),Uw=require("stream"),Mw=Tc(),qm=$t(),Bc=js(),Gn=gt(),$w=Nc(),Lm;(function(t){t.Plain="plain",t.S256="S256"})(Lm||(er.CodeChallengeMethod=Lm={}));var Er;(function(t){t.PEM="PEM",t.JWK="JWK"})(Er||(er.CertificateFormat=Er={}));var qs;(function(t){t.ClientSecretPost="ClientSecretPost",t.ClientSecretBasic="ClientSecretBasic",t.None="None"})(qs||(er.ClientAuthentication=qs={}));var jc=class t extends Gn.AuthClient{redirectUri;certificateCache={};certificateExpiry=null;certificateCacheFormat=Er.PEM;refreshTokenPromises=new Map;endpoints;issuers;clientAuthentication;_clientId;_clientSecret;refreshHandler;constructor(e={},r,n){super(typeof e=="object"?e:{}),typeof e!="object"&&(e={clientId:e,clientSecret:r,redirectUri:n}),this._clientId=e.clientId||e.client_id,this._clientSecret=e.clientSecret||e.client_secret,this.redirectUri=e.redirectUri||e.redirect_uris?.[0],this.endpoints={tokenInfoUrl:"https://oauth2.googleapis.com/tokeninfo",oauth2AuthBaseUrl:"https://accounts.google.com/o/oauth2/v2/auth",oauth2TokenUrl:"https://oauth2.googleapis.com/token",oauth2RevokeUrl:"https://oauth2.googleapis.com/revoke",oauth2FederatedSignonPemCertsUrl:"https://www.googleapis.com/oauth2/v1/certs",oauth2FederatedSignonJwkCertsUrl:"https://www.googleapis.com/oauth2/v3/certs",oauth2IapPublicKeyUrl:"https://www.gstatic.com/iap/verify/public_key",...e.endpoints},this.clientAuthentication=e.clientAuthentication||qs.ClientSecretPost,this.issuers=e.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}static GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";static CLOCK_SKEW_SECS_=300;static DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400;generateAuthUrl(e={}){if(e.code_challenge_method&&!e.code_challenge)throw new Error("If a code_challenge_method is provided, code_challenge must be included.");return e.response_type=e.response_type||"code",e.client_id=e.client_id||this._clientId,e.redirect_uri=e.redirect_uri||this.redirectUri,Array.isArray(e.scope)&&(e.scope=e.scope.join(" ")),this.endpoints.oauth2AuthBaseUrl.toString()+"?"+Lw.stringify(e)}generateCodeVerifier(){throw new Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let e=(0,Bc.createCrypto)(),n=e.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),i=(await e.sha256DigestBase64(n)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:n,codeChallenge:i}}getToken(e,r){let n=typeof e=="string"?{code:e}:e;if(r)this.getTokenAsync(n).then(s=>r(null,s.tokens,s.res),s=>r(s,null,s.response));else return this.getTokenAsync(n)}async getTokenAsync(e){let r=this.endpoints.oauth2TokenUrl.toString(),n=new Headers,s={client_id:e.client_id||this._clientId,code_verifier:e.codeVerifier,code:e.code,grant_type:"authorization_code",redirect_uri:e.redirect_uri||this.redirectUri};if(this.clientAuthentication===qs.ClientSecretBasic){let l=Buffer.from(`${this._clientId}:${this._clientSecret}`);n.set("authorization",`Basic ${l.toString("base64")}`)}this.clientAuthentication===qs.ClientSecretPost&&(s.client_secret=this._clientSecret);let i={...t.RETRY_CONFIG,method:"POST",url:r,data:new URLSearchParams((0,qm.removeUndefinedValuesInObject)(s)),headers:n};Gn.AuthClient.setMethodName(i,"getTokenAsync");let u=await this.transporter.request(i),c=u.data;return u.data&&u.data.expires_in&&(c.expiry_date=new Date().getTime()+u.data.expires_in*1e3,delete c.expires_in),this.emit("tokens",c),{tokens:c,res:u}}async refreshToken(e){if(!e)return this.refreshTokenNoCache(e);if(this.refreshTokenPromises.has(e))return this.refreshTokenPromises.get(e);let r=this.refreshTokenNoCache(e).then(n=>(this.refreshTokenPromises.delete(e),n),n=>{throw this.refreshTokenPromises.delete(e),n});return this.refreshTokenPromises.set(e,r),r}async refreshTokenNoCache(e){if(!e)throw new Error("No refresh token is set.");let r=this.endpoints.oauth2TokenUrl.toString(),n={refresh_token:e,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"},s;try{let u={...t.RETRY_CONFIG,method:"POST",url:r,data:new URLSearchParams((0,qm.removeUndefinedValuesInObject)(n))};Gn.AuthClient.setMethodName(u,"refreshTokenNoCache"),s=await this.transporter.request(u)}catch(u){throw u instanceof jm.GaxiosError&&u.message==="invalid_grant"&&u.response?.data&&/ReAuth/i.test(u.response.data.error_description)&&(u.message=JSON.stringify(u.response.data)),u}let i=s.data;return s.data&&s.data.expires_in&&(i.expiry_date=new Date().getTime()+s.data.expires_in*1e3,delete i.expires_in),this.emit("tokens",i),{tokens:i,res:s}}refreshAccessToken(e){if(e)this.refreshAccessTokenAsync().then(r=>e(null,r.credentials,r.res),e);else return this.refreshAccessTokenAsync()}async refreshAccessTokenAsync(){let e=await this.refreshToken(this.credentials.refresh_token),r=e.tokens;return r.refresh_token=this.credentials.refresh_token,this.credentials=r,{credentials:this.credentials,res:e.res}}getAccessToken(e){if(e)this.getAccessTokenAsync().then(r=>e(null,r.token,r.res),e);else return this.getAccessTokenAsync()}async getAccessTokenAsync(){if(!this.credentials.access_token||this.isTokenExpiring()){if(!this.credentials.refresh_token)if(this.refreshHandler){let n=await this.processAndValidateRefreshHandler();if(n?.access_token)return this.setCredentials(n),{token:this.credentials.access_token}}else throw new Error("No refresh token or refresh handler callback is set.");let r=await this.refreshAccessTokenAsync();if(!r.credentials||r.credentials&&!r.credentials.access_token)throw new Error("Could not refresh access token.");return{token:r.credentials.access_token,res:r.res}}else return{token:this.credentials.access_token}}async getRequestHeaders(e){return(await this.getRequestMetadataAsync(e)).headers}async getRequestMetadataAsync(e){let r=this.credentials;if(!r.access_token&&!r.refresh_token&&!this.apiKey&&!this.refreshHandler)throw new Error("No access, refresh token, API key or refresh handler callback is set.");if(r.access_token&&!this.isTokenExpiring()){r.token_type=r.token_type||"Bearer";let c=new Headers({authorization:r.token_type+" "+r.access_token});return{headers:this.addSharedMetadataHeaders(c)}}if(this.refreshHandler){let c=await this.processAndValidateRefreshHandler();if(c?.access_token){this.setCredentials(c);let l=new Headers({authorization:"Bearer "+this.credentials.access_token});return{headers:this.addSharedMetadataHeaders(l)}}}if(this.apiKey)return{headers:new Headers({"X-Goog-Api-Key":this.apiKey})};let n=null,s=null;try{n=await this.refreshToken(r.refresh_token),s=n.tokens}catch(c){let l=c;throw l.response&&(l.response.status===403||l.response.status===404)&&(l.message=`Could not refresh access token: ${l.message}`),l}let i=this.credentials;i.token_type=i.token_type||"Bearer",s.refresh_token=i.refresh_token,this.credentials=s;let u=new Headers({authorization:i.token_type+" "+s.access_token});return{headers:this.addSharedMetadataHeaders(u),res:n.res}}static getRevokeTokenUrl(e){return new t().getRevokeTokenURL(e).toString()}getRevokeTokenURL(e){let r=new URL(this.endpoints.oauth2RevokeUrl);return r.searchParams.append("token",e),r}revokeToken(e,r){let n={...t.RETRY_CONFIG,url:this.getRevokeTokenURL(e).toString(),method:"POST"};if(Gn.AuthClient.setMethodName(n,"revokeToken"),r)this.transporter.request(n).then(s=>r(null,s),r);else return this.transporter.request(n)}revokeCredentials(e){if(e)this.revokeCredentialsAsync().then(r=>e(null,r),e);else return this.revokeCredentialsAsync()}async revokeCredentialsAsync(){let e=this.credentials.access_token;if(this.credentials={},e)return this.revokeToken(e);throw new Error("No access token to revoke.")}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){try{let n=await this.getRequestMetadataAsync();return e.headers=jm.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,n.headers),this.apiKey&&e.headers.set("X-Goog-Api-Key",this.apiKey),await this.transporter.request(e)}catch(n){let s=n.response;if(s){let i=s.status,u=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),c=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,l=s.config.data instanceof Uw.Readable,h=i===401||i===403;if(!r&&h&&!l&&u)return await this.refreshAccessTokenAsync(),this.requestAsync(e,!0);if(!r&&h&&!l&&c){let d=await this.processAndValidateRefreshHandler();return d?.access_token&&this.setCredentials(d),this.requestAsync(e,!0)}}throw n}}verifyIdToken(e,r){if(r&&typeof r!="function")throw new Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(r)this.verifyIdTokenAsync(e).then(n=>r(null,n),r);else return this.verifyIdTokenAsync(e)}async verifyIdTokenAsync(e){if(!e.idToken)throw new Error("The verifyIdToken method requires an ID Token");let r=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(e.idToken,r.certs,e.audience,this.issuers,e.maxExpiry)}async getTokenInfo(e){let{data:r}=await this.transporter.request({...t.RETRY_CONFIG,method:"POST",headers:{"content-type":"application/x-www-form-urlencoded;charset=UTF-8",authorization:`Bearer ${e}`},url:this.endpoints.tokenInfoUrl.toString()}),n=Object.assign({expiry_date:new Date().getTime()+r.expires_in*1e3,scopes:r.scope.split(" ")},r);return delete n.expires_in,delete n.scope,n}getFederatedSignonCerts(e){if(e)this.getFederatedSignonCertsAsync().then(r=>e(null,r.certs,r.res),e);else return this.getFederatedSignonCertsAsync()}async getFederatedSignonCertsAsync(){let e=new Date().getTime(),r=(0,Bc.hasBrowserCrypto)()?Er.JWK:Er.PEM;if(this.certificateExpiry&&e<this.certificateExpiry.getTime()&&this.certificateCacheFormat===r)return{certs:this.certificateCache,format:r};let n,s;switch(r){case Er.PEM:s=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case Er.JWK:s=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw new Error(`Unsupported certificate format ${r}`)}try{let h={...t.RETRY_CONFIG,url:s};Gn.AuthClient.setMethodName(h,"getFederatedSignonCertsAsync"),n=await this.transporter.request(h)}catch(h){throw h instanceof Error&&(h.message=`Failed to retrieve verification certificates: ${h.message}`),h}let i=n?.headers.get("cache-control"),u=-1;if(i){let h=/max-age=(?<maxAge>[0-9]+)/.exec(i)?.groups?.maxAge;h&&(u=Number(h)*1e3)}let c={};switch(r){case Er.PEM:c=n.data;break;case Er.JWK:for(let h of n.data.keys)c[h.kid]=h;break;default:throw new Error(`Unsupported certificate format ${r}`)}let l=new Date;return this.certificateExpiry=u===-1?null:new Date(l.getTime()+u),this.certificateCache=c,this.certificateCacheFormat=r,{certs:c,format:r,res:n}}getIapPublicKeys(e){if(e)this.getIapPublicKeysAsync().then(r=>e(null,r.pubkeys,r.res),e);else return this.getIapPublicKeysAsync()}async getIapPublicKeysAsync(){let e,r=this.endpoints.oauth2IapPublicKeyUrl.toString();try{let n={...t.RETRY_CONFIG,url:r};Gn.AuthClient.setMethodName(n,"getIapPublicKeysAsync"),e=await this.transporter.request(n)}catch(n){throw n instanceof Error&&(n.message=`Failed to retrieve verification certificates: ${n.message}`),n}return{pubkeys:e.data,res:e}}verifySignedJwtWithCerts(){throw new Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(e,r,n,s,i){let u=(0,Bc.createCrypto)();i||(i=t.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let c=e.split(".");if(c.length!==3)throw new Error("Wrong number of segments in token: "+e);let l=c[0]+"."+c[1],h=c[2],d,p;try{d=JSON.parse(u.decodeBase64StringUtf8(c[0]))}catch(C){throw C instanceof Error&&(C.message=`Can't parse token envelope: ${c[0]}': ${C.message}`),C}if(!d)throw new Error("Can't parse token envelope: "+c[0]);try{p=JSON.parse(u.decodeBase64StringUtf8(c[1]))}catch(C){throw C instanceof Error&&(C.message=`Can't parse token payload '${c[0]}`),C}if(!p)throw new Error("Can't parse token payload: "+c[1]);if(!Object.prototype.hasOwnProperty.call(r,d.kid))throw new Error("No pem found for envelope: "+JSON.stringify(d));let A=r[d.kid];if(d.alg==="ES256"&&(h=Mw.joseToDer(h,"ES256").toString("base64")),!await u.verify(A,l,h))throw new Error("Invalid token signature: "+e);if(!p.iat)throw new Error("No issue time in token: "+JSON.stringify(p));if(!p.exp)throw new Error("No expiration time in token: "+JSON.stringify(p));let S=Number(p.iat);if(isNaN(S))throw new Error("iat field using invalid format");let _=Number(p.exp);if(isNaN(_))throw new Error("exp field using invalid format");let y=new Date().getTime()/1e3;if(_>=y+i)throw new Error("Expiration time too far in future: "+JSON.stringify(p));let m=S-t.CLOCK_SKEW_SECS_,D=_+t.CLOCK_SKEW_SECS_;if(y<m)throw new Error("Token used too early, "+y+" < "+m+": "+JSON.stringify(p));if(y>D)throw new Error("Token used too late, "+y+" > "+D+": "+JSON.stringify(p));if(s&&s.indexOf(p.iss)<0)throw new Error("Invalid issuer, expected one of ["+s+"], but got "+p.iss);if(typeof n<"u"&&n!==null){let C=p.aud,E=!1;if(n.constructor===Array?E=n.indexOf(C)>-1:E=C===n,!E)throw new Error("Wrong recipient, payload audience != requiredAudience")}return new $w.LoginTicket(d,p)}async processAndValidateRefreshHandler(){if(this.refreshHandler){let e=await this.refreshHandler();if(!e.access_token)throw new Error("No access token is returned by the refreshHandler callback.");return e}}isTokenExpiring(){let e=this.credentials.expiry_date;return e?e<=new Date().getTime()+this.eagerRefreshThresholdMillis:!1}};er.OAuth2Client=jc});var Lc=J(Ni=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});Ni.Compute=void 0;var zw=Ve(),Um=Bs(),Hw=pn(),qc=class extends Hw.OAuth2Client{serviceAccountEmail;scopes;constructor(e={}){super(e),this.credentials={expiry_date:1,refresh_token:"compute-placeholder"},this.serviceAccountEmail=e.serviceAccountEmail||"default",this.scopes=Array.isArray(e.scopes)?e.scopes:e.scopes?[e.scopes]:[]}async refreshTokenNoCache(){let e=`service-accounts/${this.serviceAccountEmail}/token`,r;try{let s={property:e};this.scopes.length>0&&(s.params={scopes:this.scopes.join(",")}),r=await Um.instance(s)}catch(s){throw s instanceof zw.GaxiosError&&(s.message=`Could not refresh access token: ${s.message}`,this.wrapError(s)),s}let n=r;return r&&r.expires_in&&(n.expiry_date=new Date().getTime()+r.expires_in*1e3,delete n.expires_in),this.emit("tokens",n),{tokens:n,res:null}}async fetchIdToken(e){let r=`service-accounts/${this.serviceAccountEmail}/identity?format=full&audience=${e}`,n;try{let s={property:r};n=await Um.instance(s)}catch(s){throw s instanceof Error&&(s.message=`Could not fetch ID token: ${s.message}`),s}return n}wrapError(e){let r=e.response;r&&r.status&&(e.status=r.status,r.status===403?e.message="A Forbidden error was returned while attempting to retrieve an access token for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have the correct permission scopes specified: "+e.message:r.status===404&&(e.message="A Not Found error was returned while attempting to retrieve an accesstoken for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have any permission scopes specified: "+e.message))}};Ni.Compute=qc});var Mc=J(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.IdTokenClient=void 0;var Ww=pn(),Uc=class extends Ww.OAuth2Client{targetAudience;idTokenProvider;constructor(e){super(e),this.targetAudience=e.targetAudience,this.idTokenProvider=e.idTokenProvider}async getRequestMetadataAsync(){if(!this.credentials.id_token||!this.credentials.expiry_date||this.isTokenExpiring()){let r=await this.idTokenProvider.fetchIdToken(this.targetAudience);this.credentials={id_token:r,expiry_date:this.getIdTokenExpiryDate(r)}}return{headers:new Headers({authorization:"Bearer "+this.credentials.id_token})}}getIdTokenExpiryDate(e){let r=e.split(".")[1];if(r)return JSON.parse(Buffer.from(r,"base64").toString("ascii")).exp*1e3}};Bi.IdTokenClient=Uc});var $c=J(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.GCPEnv=void 0;Jn.clear=Gw;Jn.getEnv=Jw;var Mm=Bs(),tr;(function(t){t.APP_ENGINE="APP_ENGINE",t.KUBERNETES_ENGINE="KUBERNETES_ENGINE",t.CLOUD_FUNCTIONS="CLOUD_FUNCTIONS",t.COMPUTE_ENGINE="COMPUTE_ENGINE",t.CLOUD_RUN="CLOUD_RUN",t.CLOUD_RUN_JOBS="CLOUD_RUN_JOBS",t.NONE="NONE"})(tr||(Jn.GCPEnv=tr={}));var Ls;function Gw(){Ls=void 0}async function Jw(){return Ls||(Ls=Vw(),Ls)}async function Vw(){let t=tr.NONE;return Kw()?t=tr.APP_ENGINE:Yw()?t=tr.CLOUD_FUNCTIONS:await eE()?await Zw()?t=tr.KUBERNETES_ENGINE:Xw()?t=tr.CLOUD_RUN:Qw()?t=tr.CLOUD_RUN_JOBS:t=tr.COMPUTE_ENGINE:t=tr.NONE,t}function Kw(){return!!(process.env.GAE_SERVICE||process.env.GAE_MODULE_NAME)}function Yw(){return!!(process.env.FUNCTION_NAME||process.env.FUNCTION_TARGET)}function Xw(){return!!process.env.K_CONFIGURATION}function Qw(){return!!process.env.CLOUD_RUN_JOB}async function Zw(){try{return await Mm.instance("attributes/cluster-name"),!0}catch{return!1}}async function eE(){return Mm.isAvailable()}});var zc=J((bR,$m)=>{var ji=Wn().Buffer,tE=require("stream"),rE=require("util");function qi(t){if(this.buffer=null,this.writable=!0,this.readable=!0,!t)return this.buffer=ji.alloc(0),this;if(typeof t.pipe=="function")return this.buffer=ji.alloc(0),t.pipe(this),this;if(t.length||typeof t=="object")return this.buffer=t,this.writable=!1,process.nextTick(function(){this.emit("end",t),this.readable=!1,this.emit("close")}.bind(this)),this;throw new TypeError("Unexpected data type ("+typeof t+")")}rE.inherits(qi,tE);qi.prototype.write=function(e){this.buffer=ji.concat([this.buffer,ji.from(e)]),this.emit("data",e)};qi.prototype.end=function(e){e&&this.write(e),this.emit("end",e),this.emit("close"),this.writable=!1,this.readable=!1};$m.exports=qi});var Hm=J((CR,zm)=>{"use strict";var Us=require("buffer").Buffer,Hc=require("buffer").SlowBuffer;zm.exports=Li;function Li(t,e){if(!Us.isBuffer(t)||!Us.isBuffer(e)||t.length!==e.length)return!1;for(var r=0,n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}Li.install=function(){Us.prototype.equal=Hc.prototype.equal=function(e){return Li(this,e)}};var nE=Us.prototype.equal,sE=Hc.prototype.equal;Li.restore=function(){Us.prototype.equal=nE,Hc.prototype.equal=sE}});var Vc=J((wR,Zm)=>{var Kn=Wn().Buffer,vt=require("crypto"),Gm=Tc(),Wm=require("util"),oE=`"%s" is not a valid algorithm.
|
|
51
51
|
Supported algorithms are:
|
|
52
|
-
"HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,Ms="secret must be a string or buffer",Vn="key must be a string or a buffer",oE="key must be a string, a buffer or an object",Wc=typeof vt.createPublicKey=="function";Wc&&(Vn+=" or a KeyObject",Ms+="or a KeyObject");function Gm(t){if(!Kn.isBuffer(t)&&typeof t!="string"&&(!Wc||typeof t!="object"||typeof t.type!="string"||typeof t.asymmetricKeyType!="string"||typeof t.export!="function"))throw Ht(Vn)}function Jm(t){if(!Kn.isBuffer(t)&&typeof t!="string"&&typeof t!="object")throw Ht(oE)}function iE(t){if(!Kn.isBuffer(t)){if(typeof t=="string")return t;if(!Wc||typeof t!="object"||t.type!=="secret"||typeof t.export!="function")throw Ht(Ms)}}function Gc(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Vm(t){t=t.toString();var e=4-t.length%4;if(e!==4)for(var r=0;r<e;++r)t+="=";return t.replace(/\-/g,"+").replace(/_/g,"/")}function Ht(t){var e=[].slice.call(arguments,1),r=Hm.format.bind(Hm,t).apply(null,e);return new TypeError(r)}function aE(t){return Kn.isBuffer(t)||typeof t=="string"}function $s(t){return aE(t)||(t=JSON.stringify(t)),t}function Km(t){return function(r,n){iE(n),r=$s(r);var s=vt.createHmac("sha"+t,n),i=(s.update(r),s.digest("base64"));return Gc(i)}}var Hc,uE="timingSafeEqual"in vt?function(e,r){return e.byteLength!==r.byteLength?!1:vt.timingSafeEqual(e,r)}:function(e,r){return Hc||(Hc=zm()),Hc(e,r)};function cE(t){return function(r,n,s){var i=Km(t)(r,s);return uE(Kn.from(n),Kn.from(i))}}function Ym(t){return function(r,n){Jm(n),r=$s(r);var s=vt.createSign("RSA-SHA"+t),i=(s.update(r),s.sign(n,"base64"));return Gc(i)}}function Xm(t){return function(r,n,s){Gm(s),r=$s(r),n=Vm(n);var i=vt.createVerify("RSA-SHA"+t);return i.update(r),i.verify(s,n,"base64")}}function lE(t){return function(r,n){Jm(n),r=$s(r);var s=vt.createSign("RSA-SHA"+t),i=(s.update(r),s.sign({key:n,padding:vt.constants.RSA_PKCS1_PSS_PADDING,saltLength:vt.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return Gc(i)}}function fE(t){return function(r,n,s){Gm(s),r=$s(r),n=Vm(n);var i=vt.createVerify("RSA-SHA"+t);return i.update(r),i.verify({key:s,padding:vt.constants.RSA_PKCS1_PSS_PADDING,saltLength:vt.constants.RSA_PSS_SALTLEN_DIGEST},n,"base64")}}function dE(t){var e=Ym(t);return function(){var n=e.apply(null,arguments);return n=Wm.derToJose(n,"ES"+t),n}}function hE(t){var e=Xm(t);return function(n,s,i){s=Wm.joseToDer(s,"ES"+t).toString("base64");var u=e(n,s,i);return u}}function pE(){return function(){return""}}function mE(){return function(e,r){return r===""}}Qm.exports=function(e){var r={hs:Km,rs:Ym,ps:lE,es:dE,none:pE},n={hs:cE,rs:Xm,ps:fE,es:hE,none:mE},s=e.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/);if(!s)throw Ht(sE,e);var i=(s[1]||s[3]).toLowerCase(),u=s[2];return{sign:r[i](u),verify:n[i](u)}}});var Vc=J((wR,Zm)=>{var gE=require("buffer").Buffer;Zm.exports=function(e){return typeof e=="string"?e:typeof e=="number"||gE.isBuffer(e)?e.toString():JSON.stringify(e)}});var og=J((ER,sg)=>{var yE=Wn().Buffer,eg=$c(),_E=Jc(),bE=require("stream"),tg=Vc(),Kc=require("util");function rg(t,e){return yE.from(t,e).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function CE(t,e,r){r=r||"utf8";var n=rg(tg(t),"binary"),s=rg(tg(e),r);return Kc.format("%s.%s",n,s)}function ng(t){var e=t.header,r=t.payload,n=t.secret||t.privateKey,s=t.encoding,i=_E(e.alg),u=CE(e,r,s),c=i.sign(u,n);return Kc.format("%s.%s",u,c)}function Ui(t){var e=t.secret||t.privateKey||t.key,r=new eg(e);this.readable=!0,this.header=t.header,this.encoding=t.encoding,this.secret=this.privateKey=this.key=r,this.payload=new eg(t.payload),this.secret.once("close",function(){!this.payload.writable&&this.readable&&this.sign()}.bind(this)),this.payload.once("close",function(){!this.secret.writable&&this.readable&&this.sign()}.bind(this))}Kc.inherits(Ui,bE);Ui.prototype.sign=function(){try{var e=ng({header:this.header,payload:this.payload.buffer,secret:this.secret.buffer,encoding:this.encoding});return this.emit("done",e),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(r){this.readable=!1,this.emit("error",r),this.emit("close")}};Ui.sign=ng;sg.exports=Ui});var mg=J((AR,pg)=>{var ag=Wn().Buffer,ig=$c(),wE=Jc(),EE=require("stream"),ug=Vc(),AE=require("util"),SE=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function kE(t){return Object.prototype.toString.call(t)==="[object Object]"}function DE(t){if(kE(t))return t;try{return JSON.parse(t)}catch{return}}function cg(t){var e=t.split(".",1)[0];return DE(ag.from(e,"base64").toString("binary"))}function TE(t){return t.split(".",2).join(".")}function lg(t){return t.split(".")[2]}function vE(t,e){e=e||"utf8";var r=t.split(".")[1];return ag.from(r,"base64").toString(e)}function fg(t){return SE.test(t)&&!!cg(t)}function dg(t,e,r){if(!e){var n=new Error("Missing algorithm parameter for jws.verify");throw n.code="MISSING_ALGORITHM",n}t=ug(t);var s=lg(t),i=TE(t),u=wE(e);return u.verify(i,s,r)}function hg(t,e){if(e=e||{},t=ug(t),!fg(t))return null;var r=cg(t);if(!r)return null;var n=vE(t);return(r.typ==="JWT"||e.json)&&(n=JSON.parse(n,e.encoding)),{header:r,payload:n,signature:lg(t)}}function Yn(t){t=t||{};var e=t.secret||t.publicKey||t.key,r=new ig(e);this.readable=!0,this.algorithm=t.algorithm,this.encoding=t.encoding,this.secret=this.publicKey=this.key=r,this.signature=new ig(t.signature),this.secret.once("close",function(){!this.signature.writable&&this.readable&&this.verify()}.bind(this)),this.signature.once("close",function(){!this.secret.writable&&this.readable&&this.verify()}.bind(this))}AE.inherits(Yn,EE);Yn.prototype.verify=function(){try{var e=dg(this.signature.buffer,this.algorithm,this.key.buffer),r=hg(this.signature.buffer,this.encoding);return this.emit("done",e,r),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(n){this.readable=!1,this.emit("error",n),this.emit("close")}};Yn.decode=hg;Yn.isValid=fg;Yn.verify=dg;pg.exports=Yn});var Yc=J($r=>{var gg=og(),Mi=mg(),RE=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];$r.ALGORITHMS=RE;$r.sign=gg.sign;$r.verify=Mi.verify;$r.decode=Mi.decode;$r.isValid=Mi.isValid;$r.createSign=function(e){return new gg(e)};$r.createVerify=function(e){return new Mi(e)}});var Fg=J(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.GoogleToken=void 0;var yg=$i(require("fs")),OE=Ve(),FE=$i(Yc()),xE=$i(require("path")),PE=require("util");function $i(t,e){if(typeof WeakMap=="function")var r=new WeakMap,n=new WeakMap;return($i=function(i,u){if(!u&&i&&i.__esModule)return i;var c,l,h={__proto__:null,default:i};if(i===null||Ar(i)!="object"&&typeof i!="function")return h;if(c=u?n:r){if(c.has(i))return c.get(i);c.set(i,h)}for(var d in i)d!=="default"&&{}.hasOwnProperty.call(i,d)&&((l=(c=Object.defineProperty)&&Object.getOwnPropertyDescriptor(i,d))&&(l.get||l.set)?c(h,d,l):h[d]=i[d]);return h})(t,e)}function Ar(t){"@babel/helpers - typeof";return Ar=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ar(t)}function IE(t,e){Dg(t,e),e.add(t)}function NE(t,e,r){Dg(t,e),e.set(t,r)}function Dg(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _g(t,e,r){return t.set(Wt(t,e),r),r}function bg(t,e){return t.get(Wt(t,e))}function Wt(t,e,r){if(typeof t=="function"?t===e:t.has(e))return arguments.length<3?e:r;throw new TypeError("Private element is not present on this object")}function Cg(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Rg(n.key),n)}}function Tg(t,e,r){return e&&Cg(t.prototype,e),r&&Cg(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function vg(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function BE(t,e,r){return e=Gs(e),jE(t,rl()?Reflect.construct(e,r||[],Gs(t).constructor):e.apply(t,r))}function jE(t,e){if(e&&(Ar(e)=="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return qE(t)}function qE(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function LE(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ws(t,e)}function Xc(t){var e=typeof Map=="function"?new Map:void 0;return Xc=function(n){if(n===null||!ME(n))return n;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(e!==void 0){if(e.has(n))return e.get(n);e.set(n,s)}function s(){return UE(n,arguments,Gs(this).constructor)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),Ws(s,n)},Xc(t)}function UE(t,e,r){if(rl())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,e);var s=new(t.bind.apply(t,n));return r&&Ws(s,r.prototype),s}function rl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(rl=function(){return!!t})()}function ME(t){try{return Function.toString.call(t).indexOf("[native code]")!==-1}catch{return typeof t=="function"}}function Ws(t,e){return Ws=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},Ws(t,e)}function Gs(t){return Gs=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Gs(t)}function yt(t,e,r){return(e=Rg(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Rg(t){var e=$E(t,"string");return Ar(e)=="symbol"?e:e+""}function $E(t,e){if(Ar(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(Ar(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function bt(){var t,e,r=typeof Symbol=="function"?Symbol:{},n=r.iterator||"@@iterator",s=r.toStringTag||"@@toStringTag";function i(R,S,_,y){var m=S&&S.prototype instanceof c?S:c,D=Object.create(m.prototype);return _t(D,"_invoke",(function(C,E,v){var x,$,V,U=0,X=v||[],re=!1,ie={p:0,n:0,v:t,a:le,f:le.bind(t,4),d:function(Ee,se){return x=Ee,$=0,V=t,ie.n=se,u}};function le(ge,Ee){for($=ge,V=Ee,e=0;!re&&U&&!se&&e<X.length;e++){var se,he=X[e],G=ie.p,K=he[2];ge>3?(se=K===Ee)&&(V=he[($=he[4])?5:($=3,3)],he[4]=he[5]=t):he[0]<=G&&((se=ge<2&&G<he[1])?($=0,ie.v=Ee,ie.n=he[1]):G<K&&(se=ge<3||he[0]>Ee||Ee>K)&&(he[4]=ge,he[5]=Ee,ie.n=K,$=0))}if(se||ge>1)return u;throw re=!0,Ee}return function(ge,Ee,se){if(U>1)throw TypeError("Generator is already running");for(re&&Ee===1&&le(Ee,se),$=Ee,V=se;(e=$<2?t:V)||!re;){x||($?$<3?($>1&&(ie.n=-1),le($,V)):ie.n=V:ie.v=V);try{if(U=2,x){if($||(ge="next"),e=x[ge]){if(!(e=e.call(x,V)))throw TypeError("iterator result is not an object");if(!e.done)return e;V=e.value,$<2&&($=0)}else $===1&&(e=x.return)&&e.call(x),$<2&&(V=TypeError("The iterator does not provide a '"+ge+"' method"),$=1);x=t}else if((e=(re=ie.n<0)?V:C.call(E,ie))!==u)break}catch(he){x=t,$=1,V=he}finally{U=1}}return{value:e,done:re}}})(R,_,y),!0),D}var u={};function c(){}function l(){}function h(){}e=Object.getPrototypeOf;var d=[][n]?e(e([][n]())):(_t(e={},n,function(){return this}),e),p=h.prototype=c.prototype=Object.create(d);function A(R){return Object.setPrototypeOf?Object.setPrototypeOf(R,h):(R.__proto__=h,_t(R,s,"GeneratorFunction")),R.prototype=Object.create(p),R}return l.prototype=h,_t(p,"constructor",h),_t(h,"constructor",l),l.displayName="GeneratorFunction",_t(h,s,"GeneratorFunction"),_t(p),_t(p,s,"Generator"),_t(p,n,function(){return this}),_t(p,"toString",function(){return"[object Generator]"}),(bt=function(){return{w:i,m:A}})()}function _t(t,e,r,n){var s=Object.defineProperty;try{s({},"",{})}catch{s=0}_t=function(u,c,l,h){if(c)s?s(u,c,{value:l,enumerable:!h,configurable:!h,writable:!h}):u[c]=l;else{var d=function(A,R){_t(u,A,function(S){return this._invoke(A,R,S)})};d("next",0),d("throw",1),d("return",2)}},_t(t,e,r,n)}function wg(t,e,r,n,s,i,u){try{var c=t[i](u),l=c.value}catch(h){return void r(h)}c.done?e(l):Promise.resolve(l).then(n,s)}function Xn(t){return function(){var e=this,r=arguments;return new Promise(function(n,s){var i=t.apply(e,r);function u(l){wg(i,n,s,u,c,"next",l)}function c(l){wg(i,n,s,u,c,"throw",l)}u(void 0)})}}var Eg=yg.readFile?(0,PE.promisify)(yg.readFile):Xn(bt().m(function t(){return bt().w(function(e){for(;;)switch(e.n){case 0:throw new Hs("use key rather than keyFile.","MISSING_CREDENTIALS");case 1:return e.a(2)}},t)})),Ag="https://oauth2.googleapis.com/token",zE="https://oauth2.googleapis.com/revoke?token=",Hs=(function(t){function e(r,n){var s;return vg(this,e),s=BE(this,e,[r]),yt(s,"code",void 0),s.code=n,s}return LE(e,t),Tg(e)})(Xc(Error)),zs=new WeakMap,rr=new WeakSet,kR=zi.GoogleToken=(function(){function t(e){vg(this,t),IE(this,rr),yt(this,"expiresAt",void 0),yt(this,"key",void 0),yt(this,"keyFile",void 0),yt(this,"iss",void 0),yt(this,"sub",void 0),yt(this,"scope",void 0),yt(this,"rawToken",void 0),yt(this,"tokenExpires",void 0),yt(this,"email",void 0),yt(this,"additionalClaims",void 0),yt(this,"eagerRefreshThresholdMillis",void 0),yt(this,"transporter",{request:function(n){return(0,OE.request)(n)}}),NE(this,zs,void 0),Wt(rr,this,Og).call(this,e)}return Tg(t,[{key:"accessToken",get:function(){return this.rawToken?this.rawToken.access_token:void 0}},{key:"idToken",get:function(){return this.rawToken?this.rawToken.id_token:void 0}},{key:"tokenType",get:function(){return this.rawToken?this.rawToken.token_type:void 0}},{key:"refreshToken",get:function(){return this.rawToken?this.rawToken.refresh_token:void 0}},{key:"hasExpired",value:function(){var r=new Date().getTime();return this.rawToken&&this.expiresAt?r>=this.expiresAt:!0}},{key:"isTokenExpiring",value:function(){var r,n=new Date().getTime(),s=(r=this.eagerRefreshThresholdMillis)!==null&&r!==void 0?r:0;return this.rawToken&&this.expiresAt?this.expiresAt<=n+s:!0}},{key:"getToken",value:function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Ar(r)==="object"&&(n=r,r=void 0),n=Object.assign({forceRefresh:!1},n),r){var s=r;Wt(rr,this,Sg).call(this,n).then(function(i){return s(null,i)},r);return}return Wt(rr,this,Sg).call(this,n)}},{key:"getCredentials",value:(function(){var e=Xn(bt().m(function n(s){var i,u,c,l,h,d,p;return bt().w(function(A){for(;;)switch(A.n){case 0:i=xE.extname(s),p=i,A.n=p===".json"?1:p===".der"||p===".crt"||p===".pem"?4:p===".p12"||p===".pfx"?6:7;break;case 1:return A.n=2,Eg(s,"utf8");case 2:if(u=A.v,c=JSON.parse(u),l=c.private_key,h=c.client_email,!(!l||!h)){A.n=3;break}throw new Hs("private_key and client_email are required.","MISSING_CREDENTIALS");case 3:return A.a(2,{privateKey:l,clientEmail:h});case 4:return A.n=5,Eg(s,"utf8");case 5:return d=A.v,A.a(2,{privateKey:d});case 6:throw new Hs("*.p12 certificates are not supported after v6.1.2. Consider utilizing *.json format or converting *.p12 to *.pem using the OpenSSL CLI.","UNKNOWN_CERTIFICATE_TYPE");case 7:throw new Hs("Unknown certificate type. Type is determined based on file extension. Current supported extensions are *.json, and *.pem.","UNKNOWN_CERTIFICATE_TYPE");case 8:return A.a(2)}},n)}));function r(n){return e.apply(this,arguments)}return r})()},{key:"revokeToken",value:function(r){if(r){Wt(rr,this,kg).call(this).then(function(){return r()},r);return}return Wt(rr,this,kg).call(this)}}])})();function Sg(t){return Qc.apply(this,arguments)}function Qc(){return Qc=Xn(bt().m(function t(e){return bt().w(function(r){for(;;)switch(r.n){case 0:if(!(bg(zs,this)&&!e.forceRefresh)){r.n=1;break}return r.a(2,bg(zs,this));case 1:return r.p=1,r.n=2,_g(zs,this,Wt(rr,this,HE).call(this,e));case 2:return r.a(2,r.v);case 3:return r.p=3,_g(zs,this,void 0),r.f(3);case 4:return r.a(2)}},t,this,[[1,,3,4]])})),Qc.apply(this,arguments)}function HE(t){return Zc.apply(this,arguments)}function Zc(){return Zc=Xn(bt().m(function t(e){var r;return bt().w(function(n){for(;;)switch(n.n){case 0:if(!(this.isTokenExpiring()===!1&&e.forceRefresh===!1)){n.n=1;break}return n.a(2,Promise.resolve(this.rawToken));case 1:if(!(!this.key&&!this.keyFile)){n.n=2;break}throw new Error("No key or keyFile set.");case 2:if(!(!this.key&&this.keyFile)){n.n=4;break}return n.n=3,this.getCredentials(this.keyFile);case 3:r=n.v,this.key=r.privateKey,this.iss=r.clientEmail||this.iss,r.clientEmail||Wt(rr,this,WE).call(this);case 4:return n.a(2,Wt(rr,this,GE).call(this))}},t,this)})),Zc.apply(this,arguments)}function WE(){if(!this.iss)throw new Hs("email is required.","MISSING_CREDENTIALS")}function kg(){return el.apply(this,arguments)}function el(){return el=Xn(bt().m(function t(){var e;return bt().w(function(r){for(;;)switch(r.n){case 0:if(this.accessToken){r.n=1;break}throw new Error("No token to revoke.");case 1:return e=zE+this.accessToken,r.n=2,this.transporter.request({url:e,retry:!0});case 2:Wt(rr,this,Og).call(this,{email:this.iss,sub:this.sub,key:this.key,keyFile:this.keyFile,scope:this.scope,additionalClaims:this.additionalClaims});case 3:return r.a(2)}},t,this)})),el.apply(this,arguments)}function Og(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.keyFile=t.keyFile,this.key=t.key,this.rawToken=void 0,this.iss=t.email||t.iss,this.sub=t.sub,this.additionalClaims=t.additionalClaims,Ar(t.scope)==="object"?this.scope=t.scope.join(" "):this.scope=t.scope,this.eagerRefreshThresholdMillis=t.eagerRefreshThresholdMillis,t.transporter&&(this.transporter=t.transporter)}function GE(){return tl.apply(this,arguments)}function tl(){return tl=Xn(bt().m(function t(){var e,r,n,s,i,u,c,l,h,d;return bt().w(function(p){for(;;)switch(p.n){case 0:return e=Math.floor(new Date().getTime()/1e3),r=this.additionalClaims||{},n=Object.assign({iss:this.iss,scope:this.scope,aud:Ag,exp:e+3600,iat:e,sub:this.sub},r),s=FE.sign({header:{alg:"RS256"},payload:n,secret:this.key}),p.p=1,p.n=2,this.transporter.request({method:"POST",url:Ag,data:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:s}),responseType:"json",retryConfig:{httpMethodsToRetry:["POST"]}});case 2:return i=p.v,this.rawToken=i.data,this.expiresAt=i.data.expires_in===null||i.data.expires_in===void 0?void 0:(e+i.data.expires_in)*1e3,p.a(2,this.rawToken);case 3:throw p.p=3,d=p.v,this.rawToken=void 0,this.tokenExpires=void 0,l=d.response&&(u=d.response)!==null&&u!==void 0&&u.data?(c=d.response)===null||c===void 0?void 0:c.data:{},l.error&&(h=l.error_description?": ".concat(l.error_description):"",d.message="".concat(l.error).concat(h)),d;case 4:return p.a(2)}},t,this,[[1,3]])})),tl.apply(this,arguments)}});var sl=J(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.JWTAccess=void 0;var JE=Yc(),VE=$t(),xg={alg:"RS256",typ:"JWT"},nl=class t{email;key;keyId;projectId;eagerRefreshThresholdMillis;cache=new VE.LRUCache({capacity:500,maxAge:3600*1e3});constructor(e,r,n,s){this.email=e,this.key=r,this.keyId=n,this.eagerRefreshThresholdMillis=s??300*1e3}getCachedKey(e,r){let n=e;if(r&&Array.isArray(r)&&r.length?n=e?`${e}_${r.join("_")}`:`${r.join("_")}`:typeof r=="string"&&(n=e?`${e}_${r}`:r),!n)throw Error("Scopes or url must be provided");return n}getRequestHeaders(e,r,n){let s=this.getCachedKey(e,n),i=this.cache.get(s),u=Date.now();if(i&&i.expiration-u>this.eagerRefreshThresholdMillis)return new Headers(i.headers);let c=Math.floor(Date.now()/1e3),l=t.getExpirationTime(c),h;if(Array.isArray(n)&&(n=n.join(" ")),n?h={iss:this.email,sub:this.email,scope:n,exp:l,iat:c}:h={iss:this.email,sub:this.email,aud:e,exp:l,iat:c},r){for(let S in h)if(r[S])throw new Error(`The '${S}' property is not allowed when passing additionalClaims. This claim is included in the JWT by default.`)}let d=this.keyId?{...xg,kid:this.keyId}:xg,p=Object.assign(h,r),A=JE.sign({header:d,payload:p,secret:this.key}),R=new Headers({authorization:`Bearer ${A}`});return this.cache.set(s,{expiration:l*1e3,headers:R}),R}static getExpirationTime(e){return e+3600}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((r,n)=>{e||n(new Error("Must pass in a stream containing the service account auth settings."));let s="";e.setEncoding("utf8").on("data",i=>s+=i).on("error",n).on("end",()=>{try{let i=JSON.parse(s);this.fromJSON(i),r()}catch(i){n(i)}})})}};Hi.JWTAccess=nl});var il=J(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.JWT=void 0;var Pg=Fg(),KE=sl(),YE=pn(),Wi=gt(),ol=class t extends YE.OAuth2Client{email;keyFile;key;keyId;defaultScopes;scopes;scope;subject;gtoken;additionalClaims;useJWTAccessWithScope;defaultServicePath;access;constructor(e={}){super(e),this.email=e.email,this.keyFile=e.keyFile,this.key=e.key,this.keyId=e.keyId,this.scopes=e.scopes,this.subject=e.subject,this.additionalClaims=e.additionalClaims,this.credentials={refresh_token:"jwt-placeholder",expiry_date:1}}createScoped(e){let r=new t(this);return r.scopes=e,r}async getRequestMetadataAsync(e){e=this.defaultServicePath?`https://${this.defaultServicePath}/`:e;let r=!this.hasUserScopes()&&e||this.useJWTAccessWithScope&&this.hasAnyScopes()||this.universeDomain!==Wi.DEFAULT_UNIVERSE;if(this.subject&&this.universeDomain!==Wi.DEFAULT_UNIVERSE)throw new RangeError(`Service Account user is configured for the credential. Domain-wide delegation is not supported in universes other than ${Wi.DEFAULT_UNIVERSE}`);if(!this.apiKey&&r)if(this.additionalClaims&&this.additionalClaims.target_audience){let{tokens:n}=await this.refreshToken();return{headers:this.addSharedMetadataHeaders(new Headers({authorization:`Bearer ${n.id_token}`}))}}else{this.access||(this.access=new KE.JWTAccess(this.email,this.key,this.keyId,this.eagerRefreshThresholdMillis));let n;this.hasUserScopes()?n=this.scopes:e||(n=this.defaultScopes);let s=this.useJWTAccessWithScope||this.universeDomain!==Wi.DEFAULT_UNIVERSE,i=await this.access.getRequestHeaders(e??void 0,this.additionalClaims,s?n:void 0);return{headers:this.addSharedMetadataHeaders(i)}}else return this.hasAnyScopes()||this.apiKey?super.getRequestMetadataAsync(e):{headers:new Headers}}async fetchIdToken(e){let r=new Pg.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:{target_audience:e},transporter:this.transporter});if(await r.getToken({forceRefresh:!0}),!r.idToken)throw new Error("Unknown error: Failed to fetch ID token");return r.idToken}hasUserScopes(){return this.scopes?this.scopes.length>0:!1}hasAnyScopes(){return!!(this.scopes&&this.scopes.length>0||this.defaultScopes&&this.defaultScopes.length>0)}authorize(e){if(e)this.authorizeAsync().then(r=>e(null,r),e);else return this.authorizeAsync()}async authorizeAsync(){let e=await this.refreshToken();if(!e)throw new Error("No result returned");return this.credentials=e.tokens,this.credentials.refresh_token="jwt-placeholder",this.key=this.gtoken.key,this.email=this.gtoken.iss,e.tokens}async refreshTokenNoCache(){let e=this.createGToken(),n={access_token:(await e.getToken({forceRefresh:this.isTokenExpiring()})).access_token,token_type:"Bearer",expiry_date:e.expiresAt,id_token:e.idToken};return this.emit("tokens",n),{res:null,tokens:n}}createGToken(){return this.gtoken||(this.gtoken=new Pg.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:this.additionalClaims,transporter:this.transporter})),this.gtoken}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((r,n)=>{if(!e)throw new Error("Must pass in a stream containing the service account auth settings.");let s="";e.setEncoding("utf8").on("error",n).on("data",i=>s+=i).on("end",()=>{try{let i=JSON.parse(s);this.fromJSON(i),r()}catch(i){n(i)}})})}fromAPIKey(e){if(typeof e!="string")throw new Error("Must provide an API Key string.");this.apiKey=e}async getCredentials(){if(this.key)return{private_key:this.key,client_email:this.email};if(this.keyFile){let r=await this.createGToken().getCredentials(this.keyFile);return{private_key:r.privateKey,client_email:r.clientEmail}}throw new Error("A key or a keyFile must be provided to getCredentials.")}};Gi.JWT=ol});var ul=J(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.UserRefreshClient=Qn.USER_REFRESH_ACCOUNT_TYPE=void 0;var XE=pn(),QE=gt();Qn.USER_REFRESH_ACCOUNT_TYPE="authorized_user";var al=class t extends XE.OAuth2Client{_refreshToken;constructor(e,r,n,s,i){let u=e&&typeof e=="object"?e:{clientId:e,clientSecret:r,refreshToken:n,eagerRefreshThresholdMillis:s,forceRefreshOnFailure:i};super(u),this._refreshToken=u.refreshToken,this.credentials.refresh_token=u.refreshToken}async refreshTokenNoCache(){return super.refreshTokenNoCache(this._refreshToken)}async fetchIdToken(e){let r={...t.RETRY_CONFIG,url:this.endpoints.oauth2TokenUrl,method:"POST",data:new URLSearchParams({client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token",refresh_token:this._refreshToken,target_audience:e})};return QE.AuthClient.setMethodName(r,"fetchIdToken"),(await this.transporter.request(r)).data.id_token}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the user refresh token");if(e.type!=="authorized_user")throw new Error('The incoming JSON object does not have the "authorized_user" type');if(!e.client_id)throw new Error("The incoming JSON object does not contain a client_id field");if(!e.client_secret)throw new Error("The incoming JSON object does not contain a client_secret field");if(!e.refresh_token)throw new Error("The incoming JSON object does not contain a refresh_token field");this._clientId=e.client_id,this._clientSecret=e.client_secret,this._refreshToken=e.refresh_token,this.credentials.refresh_token=e.refresh_token,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}async fromStreamAsync(e){return new Promise((r,n)=>{if(!e)return n(new Error("Must pass in a stream containing the user refresh token."));let s="";e.setEncoding("utf8").on("error",n).on("data",i=>s+=i).on("end",()=>{try{let i=JSON.parse(s);return this.fromJSON(i),r()}catch(i){return n(i)}})})}static fromJSON(e){let r=new t;return r.fromJSON(e),r}};Qn.UserRefreshClient=al});var ll=J(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.Impersonated=Zn.IMPERSONATED_ACCOUNT_TYPE=void 0;var Ig=pn(),ZE=Ve(),eA=$t();Zn.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";var cl=class t extends Ig.OAuth2Client{sourceClient;targetPrincipal;targetScopes;delegates;lifetime;endpoint;constructor(e={}){if(super(e),console.warn("The `Impersonated` constructor does not validate the credential configuration. A security risk occurs when a credential configuration configured with malicious URLs is used. When the credential configuration is accepted from an untrusted source, you should validate it before using it with this method. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=e.sourceClient??new Ig.OAuth2Client,this.targetPrincipal=e.targetPrincipal??"",this.delegates=e.delegates??[],this.targetScopes=e.targetScopes??[],this.lifetime=e.lifetime??3600,!!!(0,eA.originalOrCamelOptions)(e).get("universe_domain"))this.universeDomain=this.sourceClient.universeDomain;else if(this.sourceClient.universeDomain!==this.universeDomain)throw new RangeError(`Universe domain ${this.sourceClient.universeDomain} in source credentials does not match ${this.universeDomain} universe domain set for impersonated credentials.`);this.endpoint=e.endpoint??`https://iamcredentials.${this.universeDomain}`}async sign(e){await this.sourceClient.getAccessToken();let r=`projects/-/serviceAccounts/${this.targetPrincipal}`,n=`${this.endpoint}/v1/${r}:signBlob`,s={delegates:this.delegates,payload:Buffer.from(e).toString("base64")};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:n,data:s,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){try{await this.sourceClient.getAccessToken();let e="projects/-/serviceAccounts/"+this.targetPrincipal,r=`${this.endpoint}/v1/${e}:generateAccessToken`,n={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},s=await this.sourceClient.request({...t.RETRY_CONFIG,url:r,data:n,method:"POST"}),i=s.data;return this.credentials.access_token=i.accessToken,this.credentials.expiry_date=Date.parse(i.expireTime),{tokens:this.credentials,res:s}}catch(e){if(!(e instanceof Error))throw e;let r=0,n="";throw e instanceof ZE.GaxiosError&&(r=e?.response?.data?.error?.status,n=e?.response?.data?.error?.message),r&&n?(e.message=`${r}: unable to impersonate: ${n}`,e):(e.message=`unable to impersonate: ${e}`,e)}}async fetchIdToken(e,r){await this.sourceClient.getAccessToken();let n=`projects/-/serviceAccounts/${this.targetPrincipal}`,s=`${this.endpoint}/v1/${n}:generateIdToken`,i={delegates:this.delegates,audience:e,includeEmail:r?.includeEmail??!0,useEmailAzp:r?.includeEmail??!0};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:s,data:i,method:"POST"})).data.token}};Zn.Impersonated=cl});var dl=J(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.OAuthClientAuthHandler=void 0;Js.getErrorFromOAuthErrorResponse=nA;var es=Ve(),tA=js(),rA=["PUT","POST","PATCH"],fl=class{#e=(0,tA.createCrypto)();#t;transporter;constructor(e){e&&"clientId"in e?(this.#t=e,this.transporter=new es.Gaxios):(this.#t=e?.clientAuthentication,this.transporter=e?.transporter||new es.Gaxios)}applyClientAuthenticationOptions(e,r){e.headers=es.Gaxios.mergeHeaders(e.headers),this.injectAuthenticatedHeaders(e,r),r||this.injectAuthenticatedRequestBody(e)}injectAuthenticatedHeaders(e,r){if(r)e.headers=es.Gaxios.mergeHeaders(e.headers,{authorization:`Bearer ${r}`});else if(this.#t?.confidentialClientType==="basic"){e.headers=es.Gaxios.mergeHeaders(e.headers);let n=this.#t.clientId,s=this.#t.clientSecret||"",i=this.#e.encodeBase64StringUtf8(`${n}:${s}`);es.Gaxios.mergeHeaders(e.headers,{authorization:`Basic ${i}`})}}injectAuthenticatedRequestBody(e){if(this.#t?.confidentialClientType==="request-body"){let r=(e.method||"GET").toUpperCase();if(!rA.includes(r))throw new Error(`${r} HTTP method does not support ${this.#t.confidentialClientType} client authentication`);let s=new Headers(e.headers).get("content-type");if(s?.startsWith("application/x-www-form-urlencoded")||e.data instanceof URLSearchParams){let i=new URLSearchParams(e.data??"");i.append("client_id",this.#t.clientId),i.append("client_secret",this.#t.clientSecret||""),e.data=i}else if(s?.startsWith("application/json"))e.data=e.data||{},Object.assign(e.data,{client_id:this.#t.clientId,client_secret:this.#t.clientSecret||""});else throw new Error(`${s} content-types are not supported with ${this.#t.confidentialClientType} client authentication`)}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};Js.OAuthClientAuthHandler=fl;function nA(t,e){let r=t.error,n=t.error_description,s=t.error_uri,i=`Error code ${r}`;typeof n<"u"&&(i+=`: ${n}`),typeof s<"u"&&(i+=` - ${s}`);let u=new Error(i);if(e){let c=Object.keys(e);e.stack&&c.push("stack"),c.forEach(l=>{l!=="message"&&Object.defineProperty(u,l,{value:e[l],writable:!1,enumerable:!0})})}return u}});var Vi=J(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.StsCredentials=void 0;var sA=Ve(),oA=gt(),Ng=dl(),iA=$t(),hl=class t extends Ng.OAuthClientAuthHandler{#e;constructor(e={tokenExchangeEndpoint:""},r){(typeof e!="object"||e instanceof URL)&&(e={tokenExchangeEndpoint:e,clientAuthentication:r}),super(e),this.#e=e.tokenExchangeEndpoint}async exchangeToken(e,r,n){let s={grant_type:e.grantType,resource:e.resource,audience:e.audience,scope:e.scope?.join(" "),requested_token_type:e.requestedTokenType,subject_token:e.subjectToken,subject_token_type:e.subjectTokenType,actor_token:e.actingParty?.actorToken,actor_token_type:e.actingParty?.actorTokenType,options:n&&JSON.stringify(n)},i={...t.RETRY_CONFIG,url:this.#e.toString(),method:"POST",headers:r,data:new URLSearchParams((0,iA.removeUndefinedValuesInObject)(s))};oA.AuthClient.setMethodName(i,"exchangeToken"),this.applyClientAuthenticationOptions(i);try{let u=await this.transporter.request(i),c=u.data;return c.res=u,c}catch(u){throw u instanceof sA.GaxiosError&&u.response?(0,Ng.getErrorFromOAuthErrorResponse)(u.response.data,u):u}}};Ji.StsCredentials=hl});var zr=J(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.BaseExternalAccountClient=Rt.CLOUD_RESOURCE_MANAGER=Rt.EXTERNAL_ACCOUNT_TYPE=Rt.EXPIRATION_TIME_OFFSET=void 0;var aA=Ve(),uA=require("stream"),pl=gt(),cA=Vi(),Bg=$t(),lA=Rc(),fA="urn:ietf:params:oauth:grant-type:token-exchange",dA="urn:ietf:params:oauth:token-type:access_token",ml="https://www.googleapis.com/auth/cloud-platform",hA=3600;Rt.EXPIRATION_TIME_OFFSET=300*1e3;Rt.EXTERNAL_ACCOUNT_TYPE="external_account";Rt.CLOUD_RESOURCE_MANAGER="https://cloudresourcemanager.googleapis.com/v1/projects/";var pA="//iam\\.googleapis\\.com/locations/[^/]+/workforcePools/[^/]+/providers/.+",mA="https://sts.{universeDomain}/v1/token",gl=class t extends pl.AuthClient{scopes;projectNumber;audience;subjectTokenType;stsCredential;clientAuth;credentialSourceType;cachedAccessToken;serviceAccountImpersonationUrl;serviceAccountImpersonationLifetime;workforcePoolUserProject;configLifetimeRequested;tokenUrl;cloudResourceManagerURL;supplierContext;#e=null;constructor(e){super(e);let r=(0,Bg.originalOrCamelOptions)(e),n=r.get("type");if(n&&n!==Rt.EXTERNAL_ACCOUNT_TYPE)throw new Error(`Expected "${Rt.EXTERNAL_ACCOUNT_TYPE}" type but received "${e.type}"`);let s=r.get("client_id"),i=r.get("client_secret");this.tokenUrl=r.get("token_url")??mA.replace("{universeDomain}",this.universeDomain);let u=r.get("subject_token_type"),c=r.get("workforce_pool_user_project"),l=r.get("service_account_impersonation_url"),h=r.get("service_account_impersonation"),d=(0,Bg.originalOrCamelOptions)(h).get("token_lifetime_seconds");this.cloudResourceManagerURL=new URL(r.get("cloud_resource_manager_url")||`https://cloudresourcemanager.${this.universeDomain}/v1/projects/`),s&&(this.clientAuth={confidentialClientType:"basic",clientId:s,clientSecret:i}),this.stsCredential=new cA.StsCredentials({tokenExchangeEndpoint:this.tokenUrl,clientAuthentication:this.clientAuth}),this.scopes=r.get("scopes")||[ml],this.cachedAccessToken=null,this.audience=r.get("audience"),this.subjectTokenType=u,this.workforcePoolUserProject=c;let p=new RegExp(pA);if(this.workforcePoolUserProject&&!this.audience.match(p))throw new Error("workforcePoolUserProject should not be set for non-workforce pool credentials.");this.serviceAccountImpersonationUrl=l,this.serviceAccountImpersonationLifetime=d,this.serviceAccountImpersonationLifetime?this.configLifetimeRequested=!0:(this.configLifetimeRequested=!1,this.serviceAccountImpersonationLifetime=hA),this.projectNumber=this.getProjectNumber(this.audience),this.supplierContext={audience:this.audience,subjectTokenType:this.subjectTokenType,transporter:this.transporter}}getServiceAccountEmail(){if(this.serviceAccountImpersonationUrl){if(this.serviceAccountImpersonationUrl.length>256)throw new RangeError(`URL is too long: ${this.serviceAccountImpersonationUrl}`);return/serviceAccounts\/(?<email>[^:]+):generateAccessToken$/.exec(this.serviceAccountImpersonationUrl)?.groups?.email||null}return null}setCredentials(e){super.setCredentials(e),this.cachedAccessToken=e}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async getProjectId(){let e=this.projectNumber||this.workforcePoolUserProject;if(this.projectId)return this.projectId;if(e){let r=await this.getRequestHeaders(),n={...t.RETRY_CONFIG,headers:r,url:`${this.cloudResourceManagerURL.toString()}${e}`};pl.AuthClient.setMethodName(n,"getProjectId");let s=await this.transporter.request(n);return this.projectId=s.data.projectId,this.projectId}return null}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=aA.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof uA.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){this.#e=this.#e||this.#t();try{return await this.#e}finally{this.#e=null}}async#t(){let e=await this.retrieveSubjectToken(),r={grantType:fA,audience:this.audience,requestedTokenType:dA,subjectToken:e,subjectTokenType:this.subjectTokenType,scope:this.serviceAccountImpersonationUrl?[ml]:this.getScopesArray()},n=!this.clientAuth&&this.workforcePoolUserProject?{userProject:this.workforcePoolUserProject}:void 0,s=new Headers({"x-goog-api-client":this.getMetricsHeaderValue()}),i=await this.stsCredential.exchangeToken(r,s,n);return this.serviceAccountImpersonationUrl?this.cachedAccessToken=await this.getImpersonatedAccessToken(i.access_token):i.expires_in?this.cachedAccessToken={access_token:i.access_token,expiry_date:new Date().getTime()+i.expires_in*1e3,res:i.res}:this.cachedAccessToken={access_token:i.access_token,res:i.res},this.credentials={},Object.assign(this.credentials,this.cachedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedAccessToken.expiry_date,access_token:this.cachedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedAccessToken}getProjectNumber(e){let r=e.match(/\/projects\/([^/]+)/);return r?r[1]:null}async getImpersonatedAccessToken(e){let r={...t.RETRY_CONFIG,url:this.serviceAccountImpersonationUrl,method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},data:{scope:this.getScopesArray(),lifetime:this.serviceAccountImpersonationLifetime+"s"}};pl.AuthClient.setMethodName(r,"getImpersonatedAccessToken");let n=await this.transporter.request(r),s=n.data;return{access_token:s.accessToken,expiry_date:new Date(s.expireTime).getTime(),res:n}}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}getScopesArray(){return typeof this.scopes=="string"?[this.scopes]:this.scopes||[ml]}getMetricsHeaderValue(){let e=process.version.replace(/^v/,""),r=this.serviceAccountImpersonationUrl!==void 0,n=this.credentialSourceType?this.credentialSourceType:"unknown";return`gl-node/${e} auth/${lA.pkg.version} google-byoid-sdk source/${n} sa-impersonation/${r} config-lifetime/${this.configLifetimeRequested}`}getTokenUrl(){return this.tokenUrl}};Rt.BaseExternalAccountClient=gl});var jg=J(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.FileSubjectTokenSupplier=void 0;var _l=require("util"),bl=require("fs"),gA=(0,_l.promisify)(bl.readFile??(()=>{})),yA=(0,_l.promisify)(bl.realpath??(()=>{})),_A=(0,_l.promisify)(bl.lstat??(()=>{})),yl=class{filePath;formatType;subjectTokenFieldName;constructor(e){this.filePath=e.filePath,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName}async getSubjectToken(){let e=this.filePath;try{if(e=await yA(e),!(await _A(e)).isFile())throw new Error}catch(s){throw s instanceof Error&&(s.message=`The file at ${e} does not exist, or it is not a file. ${s.message}`),s}let r,n=await gA(e,{encoding:"utf8"});if(this.formatType==="text"?r=n:this.formatType==="json"&&this.subjectTokenFieldName&&(r=JSON.parse(n)[this.subjectTokenFieldName]),!r)throw new Error("Unable to parse the subject_token from the credential_source file");return r}};Ki.FileSubjectTokenSupplier=yl});var qg=J(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.UrlSubjectTokenSupplier=void 0;var bA=gt(),Cl=class{url;headers;formatType;subjectTokenFieldName;additionalGaxiosOptions;constructor(e){this.url=e.url,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName,this.headers=e.headers,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getSubjectToken(e){let r={...this.additionalGaxiosOptions,url:this.url,method:"GET",headers:this.headers};bA.AuthClient.setMethodName(r,"getSubjectToken");let n;if(this.formatType==="text"?n=(await e.transporter.request(r)).data:this.formatType==="json"&&this.subjectTokenFieldName&&(n=(await e.transporter.request(r)).data[this.subjectTokenFieldName]),!n)throw new Error("Unable to parse the subject_token from the credential_source URL");return n}};Yi.UrlSubjectTokenSupplier=Cl});var Lg=J(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.CertificateSubjectTokenSupplier=Ct.InvalidConfigurationError=Ct.CertificateSourceUnavailableError=Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE=void 0;var Xi=$t(),Qi=require("fs"),Zi=require("crypto"),CA=require("https");Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE="GOOGLE_API_CERTIFICATE_CONFIG";var nr=class extends Error{constructor(e){super(e),this.name="CertificateSourceUnavailableError"}};Ct.CertificateSourceUnavailableError=nr;var Ot=class extends Error{constructor(e){super(e),this.name="InvalidConfigurationError"}};Ct.InvalidConfigurationError=Ot;var wl=class{certificateConfigPath;trustChainPath;cert;key;constructor(e){if(!e.useDefaultCertificateConfig&&!e.certificateConfigLocation)throw new Ot("Either `useDefaultCertificateConfig` must be true or a `certificateConfigLocation` must be provided.");if(e.useDefaultCertificateConfig&&e.certificateConfigLocation)throw new Ot("Both `useDefaultCertificateConfig` and `certificateConfigLocation` cannot be provided.");this.trustChainPath=e.trustChainPath,this.certificateConfigPath=e.certificateConfigLocation??""}async createMtlsHttpsAgent(){if(!this.key||!this.cert)throw new Ot("Cannot create mTLS Agent with missing certificate or key");return new CA.Agent({key:this.key,cert:this.cert})}async getSubjectToken(){this.certificateConfigPath=await this.#e();let{certPath:e,keyPath:r}=await this.#t();return{cert:this.cert,key:this.key}=await this.#r(e,r),await this.#n(this.cert)}async#e(){let e=this.certificateConfigPath;if(e){if(await(0,Xi.isValidFile)(e))return e;throw new nr(`Provided certificate config path is invalid: ${e}`)}let r=process.env[Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE];if(r){if(await(0,Xi.isValidFile)(r))return r;throw new nr(`Path from environment variable "${Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" is invalid: ${r}`)}let n=(0,Xi.getWellKnownCertificateConfigFileLocation)();if(await(0,Xi.isValidFile)(n))return n;throw new nr(`Could not find certificate configuration file. Searched override path, the "${Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" env var, and the gcloud path (${n}).`)}async#t(){let e=this.certificateConfigPath,r;try{r=await Qi.promises.readFile(e,"utf8")}catch{throw new nr(`Failed to read certificate config file at: ${e}`)}try{let n=JSON.parse(r),s=n?.cert_configs?.workload?.cert_path,i=n?.cert_configs?.workload?.key_path;if(!s||!i)throw new Ot(`Certificate config file (${e}) is missing required "cert_path" or "key_path" in the workload config.`);return{certPath:s,keyPath:i}}catch(n){throw n instanceof Ot?n:new Ot(`Failed to parse certificate config from ${e}: ${n.message}`)}}async#r(e,r){let n,s;try{n=await Qi.promises.readFile(e),new Zi.X509Certificate(n)}catch(i){let u=i instanceof Error?i.message:String(i);throw new nr(`Failed to read certificate file at ${e}: ${u}`)}try{s=await Qi.promises.readFile(r),(0,Zi.createPrivateKey)(s)}catch(i){let u=i instanceof Error?i.message:String(i);throw new nr(`Failed to read private key file at ${r}: ${u}`)}return{cert:n,key:s}}async#n(e){let r=new Zi.X509Certificate(e);if(!this.trustChainPath)return JSON.stringify([r.raw.toString("base64")]);try{let i=((await Qi.promises.readFile(this.trustChainPath,"utf8")).match(/-----BEGIN CERTIFICATE-----[^-]+-----END CERTIFICATE-----/g)??[]).map((l,h)=>{try{return new Zi.X509Certificate(l)}catch(d){let p=d instanceof Error?d.message:String(d);throw new Ot(`Failed to parse certificate at index ${h} in trust chain file ${this.trustChainPath}: ${p}`)}}),u=i.findIndex(l=>r.raw.equals(l.raw)),c;if(u===-1)c=[r,...i];else if(u===0)c=i;else throw new Ot(`Leaf certificate exists in the trust chain but is not the first entry (found at index ${u}).`);return JSON.stringify(c.map(l=>l.raw.toString("base64")))}catch(n){if(n instanceof Ot)throw n;let s=n instanceof Error?n.message:String(n);throw new nr(`Failed to process certificate chain from ${this.trustChainPath}: ${s}`)}}};Ct.CertificateSubjectTokenSupplier=wl});var Sl=J(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.IdentityPoolClient=void 0;var wA=zr(),El=$t(),EA=jg(),AA=qg(),Ug=Lg(),SA=Vi(),Mg=Ve(),Al=class t extends wA.BaseExternalAccountClient{subjectTokenSupplier;constructor(e){super(e);let r=(0,El.originalOrCamelOptions)(e),n=r.get("credential_source"),s=r.get("subject_token_supplier");if(!n&&!s)throw new Error("A credential source or subject token supplier must be specified.");if(n&&s)throw new Error("Only one of credential source or subject token supplier can be specified.");if(s)this.subjectTokenSupplier=s,this.credentialSourceType="programmatic";else{let i=(0,El.originalOrCamelOptions)(n),u=(0,El.originalOrCamelOptions)(i.get("format")),c=u.get("type")||"text",l=u.get("subject_token_field_name");if(c!=="json"&&c!=="text")throw new Error(`Invalid credential_source format "${c}"`);if(c==="json"&&!l)throw new Error("Missing subject_token_field_name for JSON credential_source format");let h=i.get("file"),d=i.get("url"),p=i.get("certificate"),A=i.get("headers");if(h&&d||d&&p||h&&p)throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.');if(h)this.credentialSourceType="file",this.subjectTokenSupplier=new EA.FileSubjectTokenSupplier({filePath:h,formatType:c,subjectTokenFieldName:l});else if(d)this.credentialSourceType="url",this.subjectTokenSupplier=new AA.UrlSubjectTokenSupplier({url:d,formatType:c,subjectTokenFieldName:l,headers:A,additionalGaxiosOptions:t.RETRY_CONFIG});else if(p){this.credentialSourceType="certificate";let R=new Ug.CertificateSubjectTokenSupplier({useDefaultCertificateConfig:p.use_default_certificate_config,certificateConfigLocation:p.certificate_config_location,trustChainPath:p.trust_chain_path});this.subjectTokenSupplier=R}else throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.')}}async retrieveSubjectToken(){let e=await this.subjectTokenSupplier.getSubjectToken(this.supplierContext);if(this.subjectTokenSupplier instanceof Ug.CertificateSubjectTokenSupplier){let r=await this.subjectTokenSupplier.createMtlsHttpsAgent();this.stsCredential=new SA.StsCredentials({tokenExchangeEndpoint:this.getTokenUrl(),clientAuthentication:this.clientAuth,transporter:new Mg.Gaxios({agent:r})}),this.transporter=new Mg.Gaxios({...this.transporter.defaults||{},agent:r})}return e}};ea.IdentityPoolClient=Al});var Dl=J(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.AwsRequestSigner=void 0;var ta=Ve(),zg=js(),$g="AWS4-HMAC-SHA256",kA="aws4_request",kl=class{getCredentials;region;crypto;constructor(e,r){this.getCredentials=e,this.region=r,this.crypto=(0,zg.createCrypto)()}async getRequestOptions(e){if(!e.url)throw new RangeError('"url" is required in "amzOptions"');let r=typeof e.data=="object"?JSON.stringify(e.data):e.data,n=e.url,s=e.method||"GET",i=e.body||r,u=e.headers,c=await this.getCredentials(),l=new URL(n);if(typeof i!="string"&&i!==void 0)throw new TypeError(`'requestPayload' is expected to be a string if provided. Got: ${i}`);let h=await TA({crypto:this.crypto,host:l.host,canonicalUri:l.pathname,canonicalQuerystring:l.search.slice(1),method:s,region:this.region,securityCredentials:c,requestPayload:i,additionalAmzHeaders:u}),d=ta.Gaxios.mergeHeaders(h.amzDate?{"x-amz-date":h.amzDate}:{},{authorization:h.authorizationHeader,host:l.host},u||{});c.token&&ta.Gaxios.mergeHeaders(d,{"x-amz-security-token":c.token});let p={url:n,method:s,headers:d};return i!==void 0&&(p.body=i),p}};ra.AwsRequestSigner=kl;async function Vs(t,e,r){return await t.signWithHmacSha256(e,r)}async function DA(t,e,r,n,s){let i=await Vs(t,`AWS4${e}`,r),u=await Vs(t,i,n),c=await Vs(t,u,s);return await Vs(t,c,"aws4_request")}async function TA(t){let e=ta.Gaxios.mergeHeaders(t.additionalAmzHeaders),r=t.requestPayload||"",n=t.host.split(".")[0],s=new Date,i=s.toISOString().replace(/[-:]/g,"").replace(/\.[0-9]+/,""),u=s.toISOString().replace(/[-]/g,"").replace(/T.*/,"");t.securityCredentials.token&&e.set("x-amz-security-token",t.securityCredentials.token);let c=ta.Gaxios.mergeHeaders({host:t.host},e.has("date")?{}:{"x-amz-date":i},e),l="",h=[...c.keys()].sort();h.forEach(D=>{l+=`${D}:${c.get(D)}
|
|
52
|
+
"HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,Ms="secret must be a string or buffer",Vn="key must be a string or a buffer",iE="key must be a string, a buffer or an object",Gc=typeof vt.createPublicKey=="function";Gc&&(Vn+=" or a KeyObject",Ms+="or a KeyObject");function Jm(t){if(!Kn.isBuffer(t)&&typeof t!="string"&&(!Gc||typeof t!="object"||typeof t.type!="string"||typeof t.asymmetricKeyType!="string"||typeof t.export!="function"))throw Ht(Vn)}function Vm(t){if(!Kn.isBuffer(t)&&typeof t!="string"&&typeof t!="object")throw Ht(iE)}function aE(t){if(!Kn.isBuffer(t)){if(typeof t=="string")return t;if(!Gc||typeof t!="object"||t.type!=="secret"||typeof t.export!="function")throw Ht(Ms)}}function Jc(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Km(t){t=t.toString();var e=4-t.length%4;if(e!==4)for(var r=0;r<e;++r)t+="=";return t.replace(/\-/g,"+").replace(/_/g,"/")}function Ht(t){var e=[].slice.call(arguments,1),r=Wm.format.bind(Wm,t).apply(null,e);return new TypeError(r)}function uE(t){return Kn.isBuffer(t)||typeof t=="string"}function $s(t){return uE(t)||(t=JSON.stringify(t)),t}function Ym(t){return function(r,n){aE(n),r=$s(r);var s=vt.createHmac("sha"+t,n),i=(s.update(r),s.digest("base64"));return Jc(i)}}var Wc,cE="timingSafeEqual"in vt?function(e,r){return e.byteLength!==r.byteLength?!1:vt.timingSafeEqual(e,r)}:function(e,r){return Wc||(Wc=Hm()),Wc(e,r)};function lE(t){return function(r,n,s){var i=Ym(t)(r,s);return cE(Kn.from(n),Kn.from(i))}}function Xm(t){return function(r,n){Vm(n),r=$s(r);var s=vt.createSign("RSA-SHA"+t),i=(s.update(r),s.sign(n,"base64"));return Jc(i)}}function Qm(t){return function(r,n,s){Jm(s),r=$s(r),n=Km(n);var i=vt.createVerify("RSA-SHA"+t);return i.update(r),i.verify(s,n,"base64")}}function fE(t){return function(r,n){Vm(n),r=$s(r);var s=vt.createSign("RSA-SHA"+t),i=(s.update(r),s.sign({key:n,padding:vt.constants.RSA_PKCS1_PSS_PADDING,saltLength:vt.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return Jc(i)}}function dE(t){return function(r,n,s){Jm(s),r=$s(r),n=Km(n);var i=vt.createVerify("RSA-SHA"+t);return i.update(r),i.verify({key:s,padding:vt.constants.RSA_PKCS1_PSS_PADDING,saltLength:vt.constants.RSA_PSS_SALTLEN_DIGEST},n,"base64")}}function hE(t){var e=Xm(t);return function(){var n=e.apply(null,arguments);return n=Gm.derToJose(n,"ES"+t),n}}function pE(t){var e=Qm(t);return function(n,s,i){s=Gm.joseToDer(s,"ES"+t).toString("base64");var u=e(n,s,i);return u}}function mE(){return function(){return""}}function gE(){return function(e,r){return r===""}}Zm.exports=function(e){var r={hs:Ym,rs:Xm,ps:fE,es:hE,none:mE},n={hs:lE,rs:Qm,ps:dE,es:pE,none:gE},s=e.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/);if(!s)throw Ht(oE,e);var i=(s[1]||s[3]).toLowerCase(),u=s[2];return{sign:r[i](u),verify:n[i](u)}}});var Kc=J((ER,eg)=>{var yE=require("buffer").Buffer;eg.exports=function(e){return typeof e=="string"?e:typeof e=="number"||yE.isBuffer(e)?e.toString():JSON.stringify(e)}});var ig=J((AR,og)=>{var _E=Wn().Buffer,tg=zc(),bE=Vc(),CE=require("stream"),rg=Kc(),Yc=require("util");function ng(t,e){return _E.from(t,e).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function wE(t,e,r){r=r||"utf8";var n=ng(rg(t),"binary"),s=ng(rg(e),r);return Yc.format("%s.%s",n,s)}function sg(t){var e=t.header,r=t.payload,n=t.secret||t.privateKey,s=t.encoding,i=bE(e.alg),u=wE(e,r,s),c=i.sign(u,n);return Yc.format("%s.%s",u,c)}function Ui(t){var e=t.secret||t.privateKey||t.key,r=new tg(e);this.readable=!0,this.header=t.header,this.encoding=t.encoding,this.secret=this.privateKey=this.key=r,this.payload=new tg(t.payload),this.secret.once("close",function(){!this.payload.writable&&this.readable&&this.sign()}.bind(this)),this.payload.once("close",function(){!this.secret.writable&&this.readable&&this.sign()}.bind(this))}Yc.inherits(Ui,CE);Ui.prototype.sign=function(){try{var e=sg({header:this.header,payload:this.payload.buffer,secret:this.secret.buffer,encoding:this.encoding});return this.emit("done",e),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(r){this.readable=!1,this.emit("error",r),this.emit("close")}};Ui.sign=sg;og.exports=Ui});var gg=J((SR,mg)=>{var ug=Wn().Buffer,ag=zc(),EE=Vc(),AE=require("stream"),cg=Kc(),SE=require("util"),kE=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function DE(t){return Object.prototype.toString.call(t)==="[object Object]"}function TE(t){if(DE(t))return t;try{return JSON.parse(t)}catch{return}}function lg(t){var e=t.split(".",1)[0];return TE(ug.from(e,"base64").toString("binary"))}function vE(t){return t.split(".",2).join(".")}function fg(t){return t.split(".")[2]}function RE(t,e){e=e||"utf8";var r=t.split(".")[1];return ug.from(r,"base64").toString(e)}function dg(t){return kE.test(t)&&!!lg(t)}function hg(t,e,r){if(!e){var n=new Error("Missing algorithm parameter for jws.verify");throw n.code="MISSING_ALGORITHM",n}t=cg(t);var s=fg(t),i=vE(t),u=EE(e);return u.verify(i,s,r)}function pg(t,e){if(e=e||{},t=cg(t),!dg(t))return null;var r=lg(t);if(!r)return null;var n=RE(t);return(r.typ==="JWT"||e.json)&&(n=JSON.parse(n,e.encoding)),{header:r,payload:n,signature:fg(t)}}function Yn(t){t=t||{};var e=t.secret||t.publicKey||t.key,r=new ag(e);this.readable=!0,this.algorithm=t.algorithm,this.encoding=t.encoding,this.secret=this.publicKey=this.key=r,this.signature=new ag(t.signature),this.secret.once("close",function(){!this.signature.writable&&this.readable&&this.verify()}.bind(this)),this.signature.once("close",function(){!this.secret.writable&&this.readable&&this.verify()}.bind(this))}SE.inherits(Yn,AE);Yn.prototype.verify=function(){try{var e=hg(this.signature.buffer,this.algorithm,this.key.buffer),r=pg(this.signature.buffer,this.encoding);return this.emit("done",e,r),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(n){this.readable=!1,this.emit("error",n),this.emit("close")}};Yn.decode=pg;Yn.isValid=dg;Yn.verify=hg;mg.exports=Yn});var Xc=J($r=>{var yg=ig(),Mi=gg(),OE=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];$r.ALGORITHMS=OE;$r.sign=yg.sign;$r.verify=Mi.verify;$r.decode=Mi.decode;$r.isValid=Mi.isValid;$r.createSign=function(e){return new yg(e)};$r.createVerify=function(e){return new Mi(e)}});var xg=J(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.GoogleToken=void 0;var _g=$i(require("fs")),FE=Ve(),xE=$i(Xc()),PE=$i(require("path")),IE=require("util");function $i(t,e){if(typeof WeakMap=="function")var r=new WeakMap,n=new WeakMap;return($i=function(i,u){if(!u&&i&&i.__esModule)return i;var c,l,h={__proto__:null,default:i};if(i===null||Ar(i)!="object"&&typeof i!="function")return h;if(c=u?n:r){if(c.has(i))return c.get(i);c.set(i,h)}for(var d in i)d!=="default"&&{}.hasOwnProperty.call(i,d)&&((l=(c=Object.defineProperty)&&Object.getOwnPropertyDescriptor(i,d))&&(l.get||l.set)?c(h,d,l):h[d]=i[d]);return h})(t,e)}function Ar(t){"@babel/helpers - typeof";return Ar=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ar(t)}function NE(t,e){Tg(t,e),e.add(t)}function BE(t,e,r){Tg(t,e),e.set(t,r)}function Tg(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function bg(t,e,r){return t.set(Wt(t,e),r),r}function Cg(t,e){return t.get(Wt(t,e))}function Wt(t,e,r){if(typeof t=="function"?t===e:t.has(e))return arguments.length<3?e:r;throw new TypeError("Private element is not present on this object")}function wg(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Og(n.key),n)}}function vg(t,e,r){return e&&wg(t.prototype,e),r&&wg(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function Rg(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function jE(t,e,r){return e=Gs(e),qE(t,nl()?Reflect.construct(e,r||[],Gs(t).constructor):e.apply(t,r))}function qE(t,e){if(e&&(Ar(e)=="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return LE(t)}function LE(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function UE(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ws(t,e)}function Qc(t){var e=typeof Map=="function"?new Map:void 0;return Qc=function(n){if(n===null||!$E(n))return n;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(e!==void 0){if(e.has(n))return e.get(n);e.set(n,s)}function s(){return ME(n,arguments,Gs(this).constructor)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),Ws(s,n)},Qc(t)}function ME(t,e,r){if(nl())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,e);var s=new(t.bind.apply(t,n));return r&&Ws(s,r.prototype),s}function nl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(nl=function(){return!!t})()}function $E(t){try{return Function.toString.call(t).indexOf("[native code]")!==-1}catch{return typeof t=="function"}}function Ws(t,e){return Ws=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},Ws(t,e)}function Gs(t){return Gs=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Gs(t)}function yt(t,e,r){return(e=Og(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Og(t){var e=zE(t,"string");return Ar(e)=="symbol"?e:e+""}function zE(t,e){if(Ar(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(Ar(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function bt(){var t,e,r=typeof Symbol=="function"?Symbol:{},n=r.iterator||"@@iterator",s=r.toStringTag||"@@toStringTag";function i(R,S,_,y){var m=S&&S.prototype instanceof c?S:c,D=Object.create(m.prototype);return _t(D,"_invoke",(function(C,E,v){var x,$,V,U=0,X=v||[],re=!1,ie={p:0,n:0,v:t,a:le,f:le.bind(t,4),d:function(Ee,se){return x=Ee,$=0,V=t,ie.n=se,u}};function le(ge,Ee){for($=ge,V=Ee,e=0;!re&&U&&!se&&e<X.length;e++){var se,he=X[e],G=ie.p,K=he[2];ge>3?(se=K===Ee)&&(V=he[($=he[4])?5:($=3,3)],he[4]=he[5]=t):he[0]<=G&&((se=ge<2&&G<he[1])?($=0,ie.v=Ee,ie.n=he[1]):G<K&&(se=ge<3||he[0]>Ee||Ee>K)&&(he[4]=ge,he[5]=Ee,ie.n=K,$=0))}if(se||ge>1)return u;throw re=!0,Ee}return function(ge,Ee,se){if(U>1)throw TypeError("Generator is already running");for(re&&Ee===1&&le(Ee,se),$=Ee,V=se;(e=$<2?t:V)||!re;){x||($?$<3?($>1&&(ie.n=-1),le($,V)):ie.n=V:ie.v=V);try{if(U=2,x){if($||(ge="next"),e=x[ge]){if(!(e=e.call(x,V)))throw TypeError("iterator result is not an object");if(!e.done)return e;V=e.value,$<2&&($=0)}else $===1&&(e=x.return)&&e.call(x),$<2&&(V=TypeError("The iterator does not provide a '"+ge+"' method"),$=1);x=t}else if((e=(re=ie.n<0)?V:C.call(E,ie))!==u)break}catch(he){x=t,$=1,V=he}finally{U=1}}return{value:e,done:re}}})(R,_,y),!0),D}var u={};function c(){}function l(){}function h(){}e=Object.getPrototypeOf;var d=[][n]?e(e([][n]())):(_t(e={},n,function(){return this}),e),p=h.prototype=c.prototype=Object.create(d);function A(R){return Object.setPrototypeOf?Object.setPrototypeOf(R,h):(R.__proto__=h,_t(R,s,"GeneratorFunction")),R.prototype=Object.create(p),R}return l.prototype=h,_t(p,"constructor",h),_t(h,"constructor",l),l.displayName="GeneratorFunction",_t(h,s,"GeneratorFunction"),_t(p),_t(p,s,"Generator"),_t(p,n,function(){return this}),_t(p,"toString",function(){return"[object Generator]"}),(bt=function(){return{w:i,m:A}})()}function _t(t,e,r,n){var s=Object.defineProperty;try{s({},"",{})}catch{s=0}_t=function(u,c,l,h){if(c)s?s(u,c,{value:l,enumerable:!h,configurable:!h,writable:!h}):u[c]=l;else{var d=function(A,R){_t(u,A,function(S){return this._invoke(A,R,S)})};d("next",0),d("throw",1),d("return",2)}},_t(t,e,r,n)}function Eg(t,e,r,n,s,i,u){try{var c=t[i](u),l=c.value}catch(h){return void r(h)}c.done?e(l):Promise.resolve(l).then(n,s)}function Xn(t){return function(){var e=this,r=arguments;return new Promise(function(n,s){var i=t.apply(e,r);function u(l){Eg(i,n,s,u,c,"next",l)}function c(l){Eg(i,n,s,u,c,"throw",l)}u(void 0)})}}var Ag=_g.readFile?(0,IE.promisify)(_g.readFile):Xn(bt().m(function t(){return bt().w(function(e){for(;;)switch(e.n){case 0:throw new Hs("use key rather than keyFile.","MISSING_CREDENTIALS");case 1:return e.a(2)}},t)})),Sg="https://oauth2.googleapis.com/token",HE="https://oauth2.googleapis.com/revoke?token=",Hs=(function(t){function e(r,n){var s;return Rg(this,e),s=jE(this,e,[r]),yt(s,"code",void 0),s.code=n,s}return UE(e,t),vg(e)})(Qc(Error)),zs=new WeakMap,rr=new WeakSet,DR=zi.GoogleToken=(function(){function t(e){Rg(this,t),NE(this,rr),yt(this,"expiresAt",void 0),yt(this,"key",void 0),yt(this,"keyFile",void 0),yt(this,"iss",void 0),yt(this,"sub",void 0),yt(this,"scope",void 0),yt(this,"rawToken",void 0),yt(this,"tokenExpires",void 0),yt(this,"email",void 0),yt(this,"additionalClaims",void 0),yt(this,"eagerRefreshThresholdMillis",void 0),yt(this,"transporter",{request:function(n){return(0,FE.request)(n)}}),BE(this,zs,void 0),Wt(rr,this,Fg).call(this,e)}return vg(t,[{key:"accessToken",get:function(){return this.rawToken?this.rawToken.access_token:void 0}},{key:"idToken",get:function(){return this.rawToken?this.rawToken.id_token:void 0}},{key:"tokenType",get:function(){return this.rawToken?this.rawToken.token_type:void 0}},{key:"refreshToken",get:function(){return this.rawToken?this.rawToken.refresh_token:void 0}},{key:"hasExpired",value:function(){var r=new Date().getTime();return this.rawToken&&this.expiresAt?r>=this.expiresAt:!0}},{key:"isTokenExpiring",value:function(){var r,n=new Date().getTime(),s=(r=this.eagerRefreshThresholdMillis)!==null&&r!==void 0?r:0;return this.rawToken&&this.expiresAt?this.expiresAt<=n+s:!0}},{key:"getToken",value:function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Ar(r)==="object"&&(n=r,r=void 0),n=Object.assign({forceRefresh:!1},n),r){var s=r;Wt(rr,this,kg).call(this,n).then(function(i){return s(null,i)},r);return}return Wt(rr,this,kg).call(this,n)}},{key:"getCredentials",value:(function(){var e=Xn(bt().m(function n(s){var i,u,c,l,h,d,p;return bt().w(function(A){for(;;)switch(A.n){case 0:i=PE.extname(s),p=i,A.n=p===".json"?1:p===".der"||p===".crt"||p===".pem"?4:p===".p12"||p===".pfx"?6:7;break;case 1:return A.n=2,Ag(s,"utf8");case 2:if(u=A.v,c=JSON.parse(u),l=c.private_key,h=c.client_email,!(!l||!h)){A.n=3;break}throw new Hs("private_key and client_email are required.","MISSING_CREDENTIALS");case 3:return A.a(2,{privateKey:l,clientEmail:h});case 4:return A.n=5,Ag(s,"utf8");case 5:return d=A.v,A.a(2,{privateKey:d});case 6:throw new Hs("*.p12 certificates are not supported after v6.1.2. Consider utilizing *.json format or converting *.p12 to *.pem using the OpenSSL CLI.","UNKNOWN_CERTIFICATE_TYPE");case 7:throw new Hs("Unknown certificate type. Type is determined based on file extension. Current supported extensions are *.json, and *.pem.","UNKNOWN_CERTIFICATE_TYPE");case 8:return A.a(2)}},n)}));function r(n){return e.apply(this,arguments)}return r})()},{key:"revokeToken",value:function(r){if(r){Wt(rr,this,Dg).call(this).then(function(){return r()},r);return}return Wt(rr,this,Dg).call(this)}}])})();function kg(t){return Zc.apply(this,arguments)}function Zc(){return Zc=Xn(bt().m(function t(e){return bt().w(function(r){for(;;)switch(r.n){case 0:if(!(Cg(zs,this)&&!e.forceRefresh)){r.n=1;break}return r.a(2,Cg(zs,this));case 1:return r.p=1,r.n=2,bg(zs,this,Wt(rr,this,WE).call(this,e));case 2:return r.a(2,r.v);case 3:return r.p=3,bg(zs,this,void 0),r.f(3);case 4:return r.a(2)}},t,this,[[1,,3,4]])})),Zc.apply(this,arguments)}function WE(t){return el.apply(this,arguments)}function el(){return el=Xn(bt().m(function t(e){var r;return bt().w(function(n){for(;;)switch(n.n){case 0:if(!(this.isTokenExpiring()===!1&&e.forceRefresh===!1)){n.n=1;break}return n.a(2,Promise.resolve(this.rawToken));case 1:if(!(!this.key&&!this.keyFile)){n.n=2;break}throw new Error("No key or keyFile set.");case 2:if(!(!this.key&&this.keyFile)){n.n=4;break}return n.n=3,this.getCredentials(this.keyFile);case 3:r=n.v,this.key=r.privateKey,this.iss=r.clientEmail||this.iss,r.clientEmail||Wt(rr,this,GE).call(this);case 4:return n.a(2,Wt(rr,this,JE).call(this))}},t,this)})),el.apply(this,arguments)}function GE(){if(!this.iss)throw new Hs("email is required.","MISSING_CREDENTIALS")}function Dg(){return tl.apply(this,arguments)}function tl(){return tl=Xn(bt().m(function t(){var e;return bt().w(function(r){for(;;)switch(r.n){case 0:if(this.accessToken){r.n=1;break}throw new Error("No token to revoke.");case 1:return e=HE+this.accessToken,r.n=2,this.transporter.request({url:e,retry:!0});case 2:Wt(rr,this,Fg).call(this,{email:this.iss,sub:this.sub,key:this.key,keyFile:this.keyFile,scope:this.scope,additionalClaims:this.additionalClaims});case 3:return r.a(2)}},t,this)})),tl.apply(this,arguments)}function Fg(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.keyFile=t.keyFile,this.key=t.key,this.rawToken=void 0,this.iss=t.email||t.iss,this.sub=t.sub,this.additionalClaims=t.additionalClaims,Ar(t.scope)==="object"?this.scope=t.scope.join(" "):this.scope=t.scope,this.eagerRefreshThresholdMillis=t.eagerRefreshThresholdMillis,t.transporter&&(this.transporter=t.transporter)}function JE(){return rl.apply(this,arguments)}function rl(){return rl=Xn(bt().m(function t(){var e,r,n,s,i,u,c,l,h,d;return bt().w(function(p){for(;;)switch(p.n){case 0:return e=Math.floor(new Date().getTime()/1e3),r=this.additionalClaims||{},n=Object.assign({iss:this.iss,scope:this.scope,aud:Sg,exp:e+3600,iat:e,sub:this.sub},r),s=xE.sign({header:{alg:"RS256"},payload:n,secret:this.key}),p.p=1,p.n=2,this.transporter.request({method:"POST",url:Sg,data:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:s}),responseType:"json",retryConfig:{httpMethodsToRetry:["POST"]}});case 2:return i=p.v,this.rawToken=i.data,this.expiresAt=i.data.expires_in===null||i.data.expires_in===void 0?void 0:(e+i.data.expires_in)*1e3,p.a(2,this.rawToken);case 3:throw p.p=3,d=p.v,this.rawToken=void 0,this.tokenExpires=void 0,l=d.response&&(u=d.response)!==null&&u!==void 0&&u.data?(c=d.response)===null||c===void 0?void 0:c.data:{},l.error&&(h=l.error_description?": ".concat(l.error_description):"",d.message="".concat(l.error).concat(h)),d;case 4:return p.a(2)}},t,this,[[1,3]])})),rl.apply(this,arguments)}});var ol=J(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.JWTAccess=void 0;var VE=Xc(),KE=$t(),Pg={alg:"RS256",typ:"JWT"},sl=class t{email;key;keyId;projectId;eagerRefreshThresholdMillis;cache=new KE.LRUCache({capacity:500,maxAge:3600*1e3});constructor(e,r,n,s){this.email=e,this.key=r,this.keyId=n,this.eagerRefreshThresholdMillis=s??300*1e3}getCachedKey(e,r){let n=e;if(r&&Array.isArray(r)&&r.length?n=e?`${e}_${r.join("_")}`:`${r.join("_")}`:typeof r=="string"&&(n=e?`${e}_${r}`:r),!n)throw Error("Scopes or url must be provided");return n}getRequestHeaders(e,r,n){let s=this.getCachedKey(e,n),i=this.cache.get(s),u=Date.now();if(i&&i.expiration-u>this.eagerRefreshThresholdMillis)return new Headers(i.headers);let c=Math.floor(Date.now()/1e3),l=t.getExpirationTime(c),h;if(Array.isArray(n)&&(n=n.join(" ")),n?h={iss:this.email,sub:this.email,scope:n,exp:l,iat:c}:h={iss:this.email,sub:this.email,aud:e,exp:l,iat:c},r){for(let S in h)if(r[S])throw new Error(`The '${S}' property is not allowed when passing additionalClaims. This claim is included in the JWT by default.`)}let d=this.keyId?{...Pg,kid:this.keyId}:Pg,p=Object.assign(h,r),A=VE.sign({header:d,payload:p,secret:this.key}),R=new Headers({authorization:`Bearer ${A}`});return this.cache.set(s,{expiration:l*1e3,headers:R}),R}static getExpirationTime(e){return e+3600}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((r,n)=>{e||n(new Error("Must pass in a stream containing the service account auth settings."));let s="";e.setEncoding("utf8").on("data",i=>s+=i).on("error",n).on("end",()=>{try{let i=JSON.parse(s);this.fromJSON(i),r()}catch(i){n(i)}})})}};Hi.JWTAccess=sl});var al=J(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.JWT=void 0;var Ig=xg(),YE=ol(),XE=pn(),Wi=gt(),il=class t extends XE.OAuth2Client{email;keyFile;key;keyId;defaultScopes;scopes;scope;subject;gtoken;additionalClaims;useJWTAccessWithScope;defaultServicePath;access;constructor(e={}){super(e),this.email=e.email,this.keyFile=e.keyFile,this.key=e.key,this.keyId=e.keyId,this.scopes=e.scopes,this.subject=e.subject,this.additionalClaims=e.additionalClaims,this.credentials={refresh_token:"jwt-placeholder",expiry_date:1}}createScoped(e){let r=new t(this);return r.scopes=e,r}async getRequestMetadataAsync(e){e=this.defaultServicePath?`https://${this.defaultServicePath}/`:e;let r=!this.hasUserScopes()&&e||this.useJWTAccessWithScope&&this.hasAnyScopes()||this.universeDomain!==Wi.DEFAULT_UNIVERSE;if(this.subject&&this.universeDomain!==Wi.DEFAULT_UNIVERSE)throw new RangeError(`Service Account user is configured for the credential. Domain-wide delegation is not supported in universes other than ${Wi.DEFAULT_UNIVERSE}`);if(!this.apiKey&&r)if(this.additionalClaims&&this.additionalClaims.target_audience){let{tokens:n}=await this.refreshToken();return{headers:this.addSharedMetadataHeaders(new Headers({authorization:`Bearer ${n.id_token}`}))}}else{this.access||(this.access=new YE.JWTAccess(this.email,this.key,this.keyId,this.eagerRefreshThresholdMillis));let n;this.hasUserScopes()?n=this.scopes:e||(n=this.defaultScopes);let s=this.useJWTAccessWithScope||this.universeDomain!==Wi.DEFAULT_UNIVERSE,i=await this.access.getRequestHeaders(e??void 0,this.additionalClaims,s?n:void 0);return{headers:this.addSharedMetadataHeaders(i)}}else return this.hasAnyScopes()||this.apiKey?super.getRequestMetadataAsync(e):{headers:new Headers}}async fetchIdToken(e){let r=new Ig.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:{target_audience:e},transporter:this.transporter});if(await r.getToken({forceRefresh:!0}),!r.idToken)throw new Error("Unknown error: Failed to fetch ID token");return r.idToken}hasUserScopes(){return this.scopes?this.scopes.length>0:!1}hasAnyScopes(){return!!(this.scopes&&this.scopes.length>0||this.defaultScopes&&this.defaultScopes.length>0)}authorize(e){if(e)this.authorizeAsync().then(r=>e(null,r),e);else return this.authorizeAsync()}async authorizeAsync(){let e=await this.refreshToken();if(!e)throw new Error("No result returned");return this.credentials=e.tokens,this.credentials.refresh_token="jwt-placeholder",this.key=this.gtoken.key,this.email=this.gtoken.iss,e.tokens}async refreshTokenNoCache(){let e=this.createGToken(),n={access_token:(await e.getToken({forceRefresh:this.isTokenExpiring()})).access_token,token_type:"Bearer",expiry_date:e.expiresAt,id_token:e.idToken};return this.emit("tokens",n),{res:null,tokens:n}}createGToken(){return this.gtoken||(this.gtoken=new Ig.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:this.additionalClaims,transporter:this.transporter})),this.gtoken}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((r,n)=>{if(!e)throw new Error("Must pass in a stream containing the service account auth settings.");let s="";e.setEncoding("utf8").on("error",n).on("data",i=>s+=i).on("end",()=>{try{let i=JSON.parse(s);this.fromJSON(i),r()}catch(i){n(i)}})})}fromAPIKey(e){if(typeof e!="string")throw new Error("Must provide an API Key string.");this.apiKey=e}async getCredentials(){if(this.key)return{private_key:this.key,client_email:this.email};if(this.keyFile){let r=await this.createGToken().getCredentials(this.keyFile);return{private_key:r.privateKey,client_email:r.clientEmail}}throw new Error("A key or a keyFile must be provided to getCredentials.")}};Gi.JWT=il});var cl=J(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.UserRefreshClient=Qn.USER_REFRESH_ACCOUNT_TYPE=void 0;var QE=pn(),ZE=gt();Qn.USER_REFRESH_ACCOUNT_TYPE="authorized_user";var ul=class t extends QE.OAuth2Client{_refreshToken;constructor(e,r,n,s,i){let u=e&&typeof e=="object"?e:{clientId:e,clientSecret:r,refreshToken:n,eagerRefreshThresholdMillis:s,forceRefreshOnFailure:i};super(u),this._refreshToken=u.refreshToken,this.credentials.refresh_token=u.refreshToken}async refreshTokenNoCache(){return super.refreshTokenNoCache(this._refreshToken)}async fetchIdToken(e){let r={...t.RETRY_CONFIG,url:this.endpoints.oauth2TokenUrl,method:"POST",data:new URLSearchParams({client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token",refresh_token:this._refreshToken,target_audience:e})};return ZE.AuthClient.setMethodName(r,"fetchIdToken"),(await this.transporter.request(r)).data.id_token}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the user refresh token");if(e.type!=="authorized_user")throw new Error('The incoming JSON object does not have the "authorized_user" type');if(!e.client_id)throw new Error("The incoming JSON object does not contain a client_id field");if(!e.client_secret)throw new Error("The incoming JSON object does not contain a client_secret field");if(!e.refresh_token)throw new Error("The incoming JSON object does not contain a refresh_token field");this._clientId=e.client_id,this._clientSecret=e.client_secret,this._refreshToken=e.refresh_token,this.credentials.refresh_token=e.refresh_token,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,r){if(r)this.fromStreamAsync(e).then(()=>r(),r);else return this.fromStreamAsync(e)}async fromStreamAsync(e){return new Promise((r,n)=>{if(!e)return n(new Error("Must pass in a stream containing the user refresh token."));let s="";e.setEncoding("utf8").on("error",n).on("data",i=>s+=i).on("end",()=>{try{let i=JSON.parse(s);return this.fromJSON(i),r()}catch(i){return n(i)}})})}static fromJSON(e){let r=new t;return r.fromJSON(e),r}};Qn.UserRefreshClient=ul});var fl=J(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.Impersonated=Zn.IMPERSONATED_ACCOUNT_TYPE=void 0;var Ng=pn(),eA=Ve(),tA=$t();Zn.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";var ll=class t extends Ng.OAuth2Client{sourceClient;targetPrincipal;targetScopes;delegates;lifetime;endpoint;constructor(e={}){if(super(e),console.warn("The `Impersonated` constructor does not validate the credential configuration. A security risk occurs when a credential configuration configured with malicious URLs is used. When the credential configuration is accepted from an untrusted source, you should validate it before using it with this method. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=e.sourceClient??new Ng.OAuth2Client,this.targetPrincipal=e.targetPrincipal??"",this.delegates=e.delegates??[],this.targetScopes=e.targetScopes??[],this.lifetime=e.lifetime??3600,!!!(0,tA.originalOrCamelOptions)(e).get("universe_domain"))this.universeDomain=this.sourceClient.universeDomain;else if(this.sourceClient.universeDomain!==this.universeDomain)throw new RangeError(`Universe domain ${this.sourceClient.universeDomain} in source credentials does not match ${this.universeDomain} universe domain set for impersonated credentials.`);this.endpoint=e.endpoint??`https://iamcredentials.${this.universeDomain}`}async sign(e){await this.sourceClient.getAccessToken();let r=`projects/-/serviceAccounts/${this.targetPrincipal}`,n=`${this.endpoint}/v1/${r}:signBlob`,s={delegates:this.delegates,payload:Buffer.from(e).toString("base64")};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:n,data:s,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){try{await this.sourceClient.getAccessToken();let e="projects/-/serviceAccounts/"+this.targetPrincipal,r=`${this.endpoint}/v1/${e}:generateAccessToken`,n={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},s=await this.sourceClient.request({...t.RETRY_CONFIG,url:r,data:n,method:"POST"}),i=s.data;return this.credentials.access_token=i.accessToken,this.credentials.expiry_date=Date.parse(i.expireTime),{tokens:this.credentials,res:s}}catch(e){if(!(e instanceof Error))throw e;let r=0,n="";throw e instanceof eA.GaxiosError&&(r=e?.response?.data?.error?.status,n=e?.response?.data?.error?.message),r&&n?(e.message=`${r}: unable to impersonate: ${n}`,e):(e.message=`unable to impersonate: ${e}`,e)}}async fetchIdToken(e,r){await this.sourceClient.getAccessToken();let n=`projects/-/serviceAccounts/${this.targetPrincipal}`,s=`${this.endpoint}/v1/${n}:generateIdToken`,i={delegates:this.delegates,audience:e,includeEmail:r?.includeEmail??!0,useEmailAzp:r?.includeEmail??!0};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:s,data:i,method:"POST"})).data.token}};Zn.Impersonated=ll});var hl=J(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.OAuthClientAuthHandler=void 0;Js.getErrorFromOAuthErrorResponse=sA;var es=Ve(),rA=js(),nA=["PUT","POST","PATCH"],dl=class{#e=(0,rA.createCrypto)();#t;transporter;constructor(e){e&&"clientId"in e?(this.#t=e,this.transporter=new es.Gaxios):(this.#t=e?.clientAuthentication,this.transporter=e?.transporter||new es.Gaxios)}applyClientAuthenticationOptions(e,r){e.headers=es.Gaxios.mergeHeaders(e.headers),this.injectAuthenticatedHeaders(e,r),r||this.injectAuthenticatedRequestBody(e)}injectAuthenticatedHeaders(e,r){if(r)e.headers=es.Gaxios.mergeHeaders(e.headers,{authorization:`Bearer ${r}`});else if(this.#t?.confidentialClientType==="basic"){e.headers=es.Gaxios.mergeHeaders(e.headers);let n=this.#t.clientId,s=this.#t.clientSecret||"",i=this.#e.encodeBase64StringUtf8(`${n}:${s}`);es.Gaxios.mergeHeaders(e.headers,{authorization:`Basic ${i}`})}}injectAuthenticatedRequestBody(e){if(this.#t?.confidentialClientType==="request-body"){let r=(e.method||"GET").toUpperCase();if(!nA.includes(r))throw new Error(`${r} HTTP method does not support ${this.#t.confidentialClientType} client authentication`);let s=new Headers(e.headers).get("content-type");if(s?.startsWith("application/x-www-form-urlencoded")||e.data instanceof URLSearchParams){let i=new URLSearchParams(e.data??"");i.append("client_id",this.#t.clientId),i.append("client_secret",this.#t.clientSecret||""),e.data=i}else if(s?.startsWith("application/json"))e.data=e.data||{},Object.assign(e.data,{client_id:this.#t.clientId,client_secret:this.#t.clientSecret||""});else throw new Error(`${s} content-types are not supported with ${this.#t.confidentialClientType} client authentication`)}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};Js.OAuthClientAuthHandler=dl;function sA(t,e){let r=t.error,n=t.error_description,s=t.error_uri,i=`Error code ${r}`;typeof n<"u"&&(i+=`: ${n}`),typeof s<"u"&&(i+=` - ${s}`);let u=new Error(i);if(e){let c=Object.keys(e);e.stack&&c.push("stack"),c.forEach(l=>{l!=="message"&&Object.defineProperty(u,l,{value:e[l],writable:!1,enumerable:!0})})}return u}});var Vi=J(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.StsCredentials=void 0;var oA=Ve(),iA=gt(),Bg=hl(),aA=$t(),pl=class t extends Bg.OAuthClientAuthHandler{#e;constructor(e={tokenExchangeEndpoint:""},r){(typeof e!="object"||e instanceof URL)&&(e={tokenExchangeEndpoint:e,clientAuthentication:r}),super(e),this.#e=e.tokenExchangeEndpoint}async exchangeToken(e,r,n){let s={grant_type:e.grantType,resource:e.resource,audience:e.audience,scope:e.scope?.join(" "),requested_token_type:e.requestedTokenType,subject_token:e.subjectToken,subject_token_type:e.subjectTokenType,actor_token:e.actingParty?.actorToken,actor_token_type:e.actingParty?.actorTokenType,options:n&&JSON.stringify(n)},i={...t.RETRY_CONFIG,url:this.#e.toString(),method:"POST",headers:r,data:new URLSearchParams((0,aA.removeUndefinedValuesInObject)(s))};iA.AuthClient.setMethodName(i,"exchangeToken"),this.applyClientAuthenticationOptions(i);try{let u=await this.transporter.request(i),c=u.data;return c.res=u,c}catch(u){throw u instanceof oA.GaxiosError&&u.response?(0,Bg.getErrorFromOAuthErrorResponse)(u.response.data,u):u}}};Ji.StsCredentials=pl});var zr=J(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.BaseExternalAccountClient=Rt.CLOUD_RESOURCE_MANAGER=Rt.EXTERNAL_ACCOUNT_TYPE=Rt.EXPIRATION_TIME_OFFSET=void 0;var uA=Ve(),cA=require("stream"),ml=gt(),lA=Vi(),jg=$t(),fA=Oc(),dA="urn:ietf:params:oauth:grant-type:token-exchange",hA="urn:ietf:params:oauth:token-type:access_token",gl="https://www.googleapis.com/auth/cloud-platform",pA=3600;Rt.EXPIRATION_TIME_OFFSET=300*1e3;Rt.EXTERNAL_ACCOUNT_TYPE="external_account";Rt.CLOUD_RESOURCE_MANAGER="https://cloudresourcemanager.googleapis.com/v1/projects/";var mA="//iam\\.googleapis\\.com/locations/[^/]+/workforcePools/[^/]+/providers/.+",gA="https://sts.{universeDomain}/v1/token",yl=class t extends ml.AuthClient{scopes;projectNumber;audience;subjectTokenType;stsCredential;clientAuth;credentialSourceType;cachedAccessToken;serviceAccountImpersonationUrl;serviceAccountImpersonationLifetime;workforcePoolUserProject;configLifetimeRequested;tokenUrl;cloudResourceManagerURL;supplierContext;#e=null;constructor(e){super(e);let r=(0,jg.originalOrCamelOptions)(e),n=r.get("type");if(n&&n!==Rt.EXTERNAL_ACCOUNT_TYPE)throw new Error(`Expected "${Rt.EXTERNAL_ACCOUNT_TYPE}" type but received "${e.type}"`);let s=r.get("client_id"),i=r.get("client_secret");this.tokenUrl=r.get("token_url")??gA.replace("{universeDomain}",this.universeDomain);let u=r.get("subject_token_type"),c=r.get("workforce_pool_user_project"),l=r.get("service_account_impersonation_url"),h=r.get("service_account_impersonation"),d=(0,jg.originalOrCamelOptions)(h).get("token_lifetime_seconds");this.cloudResourceManagerURL=new URL(r.get("cloud_resource_manager_url")||`https://cloudresourcemanager.${this.universeDomain}/v1/projects/`),s&&(this.clientAuth={confidentialClientType:"basic",clientId:s,clientSecret:i}),this.stsCredential=new lA.StsCredentials({tokenExchangeEndpoint:this.tokenUrl,clientAuthentication:this.clientAuth}),this.scopes=r.get("scopes")||[gl],this.cachedAccessToken=null,this.audience=r.get("audience"),this.subjectTokenType=u,this.workforcePoolUserProject=c;let p=new RegExp(mA);if(this.workforcePoolUserProject&&!this.audience.match(p))throw new Error("workforcePoolUserProject should not be set for non-workforce pool credentials.");this.serviceAccountImpersonationUrl=l,this.serviceAccountImpersonationLifetime=d,this.serviceAccountImpersonationLifetime?this.configLifetimeRequested=!0:(this.configLifetimeRequested=!1,this.serviceAccountImpersonationLifetime=pA),this.projectNumber=this.getProjectNumber(this.audience),this.supplierContext={audience:this.audience,subjectTokenType:this.subjectTokenType,transporter:this.transporter}}getServiceAccountEmail(){if(this.serviceAccountImpersonationUrl){if(this.serviceAccountImpersonationUrl.length>256)throw new RangeError(`URL is too long: ${this.serviceAccountImpersonationUrl}`);return/serviceAccounts\/(?<email>[^:]+):generateAccessToken$/.exec(this.serviceAccountImpersonationUrl)?.groups?.email||null}return null}setCredentials(e){super.setCredentials(e),this.cachedAccessToken=e}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async getProjectId(){let e=this.projectNumber||this.workforcePoolUserProject;if(this.projectId)return this.projectId;if(e){let r=await this.getRequestHeaders(),n={...t.RETRY_CONFIG,headers:r,url:`${this.cloudResourceManagerURL.toString()}${e}`};ml.AuthClient.setMethodName(n,"getProjectId");let s=await this.transporter.request(n);return this.projectId=s.data.projectId,this.projectId}return null}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=uA.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof cA.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){this.#e=this.#e||this.#t();try{return await this.#e}finally{this.#e=null}}async#t(){let e=await this.retrieveSubjectToken(),r={grantType:dA,audience:this.audience,requestedTokenType:hA,subjectToken:e,subjectTokenType:this.subjectTokenType,scope:this.serviceAccountImpersonationUrl?[gl]:this.getScopesArray()},n=!this.clientAuth&&this.workforcePoolUserProject?{userProject:this.workforcePoolUserProject}:void 0,s=new Headers({"x-goog-api-client":this.getMetricsHeaderValue()}),i=await this.stsCredential.exchangeToken(r,s,n);return this.serviceAccountImpersonationUrl?this.cachedAccessToken=await this.getImpersonatedAccessToken(i.access_token):i.expires_in?this.cachedAccessToken={access_token:i.access_token,expiry_date:new Date().getTime()+i.expires_in*1e3,res:i.res}:this.cachedAccessToken={access_token:i.access_token,res:i.res},this.credentials={},Object.assign(this.credentials,this.cachedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedAccessToken.expiry_date,access_token:this.cachedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedAccessToken}getProjectNumber(e){let r=e.match(/\/projects\/([^/]+)/);return r?r[1]:null}async getImpersonatedAccessToken(e){let r={...t.RETRY_CONFIG,url:this.serviceAccountImpersonationUrl,method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},data:{scope:this.getScopesArray(),lifetime:this.serviceAccountImpersonationLifetime+"s"}};ml.AuthClient.setMethodName(r,"getImpersonatedAccessToken");let n=await this.transporter.request(r),s=n.data;return{access_token:s.accessToken,expiry_date:new Date(s.expireTime).getTime(),res:n}}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}getScopesArray(){return typeof this.scopes=="string"?[this.scopes]:this.scopes||[gl]}getMetricsHeaderValue(){let e=process.version.replace(/^v/,""),r=this.serviceAccountImpersonationUrl!==void 0,n=this.credentialSourceType?this.credentialSourceType:"unknown";return`gl-node/${e} auth/${fA.pkg.version} google-byoid-sdk source/${n} sa-impersonation/${r} config-lifetime/${this.configLifetimeRequested}`}getTokenUrl(){return this.tokenUrl}};Rt.BaseExternalAccountClient=yl});var qg=J(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.FileSubjectTokenSupplier=void 0;var bl=require("util"),Cl=require("fs"),yA=(0,bl.promisify)(Cl.readFile??(()=>{})),_A=(0,bl.promisify)(Cl.realpath??(()=>{})),bA=(0,bl.promisify)(Cl.lstat??(()=>{})),_l=class{filePath;formatType;subjectTokenFieldName;constructor(e){this.filePath=e.filePath,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName}async getSubjectToken(){let e=this.filePath;try{if(e=await _A(e),!(await bA(e)).isFile())throw new Error}catch(s){throw s instanceof Error&&(s.message=`The file at ${e} does not exist, or it is not a file. ${s.message}`),s}let r,n=await yA(e,{encoding:"utf8"});if(this.formatType==="text"?r=n:this.formatType==="json"&&this.subjectTokenFieldName&&(r=JSON.parse(n)[this.subjectTokenFieldName]),!r)throw new Error("Unable to parse the subject_token from the credential_source file");return r}};Ki.FileSubjectTokenSupplier=_l});var Lg=J(Yi=>{"use strict";Object.defineProperty(Yi,"__esModule",{value:!0});Yi.UrlSubjectTokenSupplier=void 0;var CA=gt(),wl=class{url;headers;formatType;subjectTokenFieldName;additionalGaxiosOptions;constructor(e){this.url=e.url,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName,this.headers=e.headers,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getSubjectToken(e){let r={...this.additionalGaxiosOptions,url:this.url,method:"GET",headers:this.headers};CA.AuthClient.setMethodName(r,"getSubjectToken");let n;if(this.formatType==="text"?n=(await e.transporter.request(r)).data:this.formatType==="json"&&this.subjectTokenFieldName&&(n=(await e.transporter.request(r)).data[this.subjectTokenFieldName]),!n)throw new Error("Unable to parse the subject_token from the credential_source URL");return n}};Yi.UrlSubjectTokenSupplier=wl});var Ug=J(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.CertificateSubjectTokenSupplier=Ct.InvalidConfigurationError=Ct.CertificateSourceUnavailableError=Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE=void 0;var Xi=$t(),Qi=require("fs"),Zi=require("crypto"),wA=require("https");Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE="GOOGLE_API_CERTIFICATE_CONFIG";var nr=class extends Error{constructor(e){super(e),this.name="CertificateSourceUnavailableError"}};Ct.CertificateSourceUnavailableError=nr;var Ot=class extends Error{constructor(e){super(e),this.name="InvalidConfigurationError"}};Ct.InvalidConfigurationError=Ot;var El=class{certificateConfigPath;trustChainPath;cert;key;constructor(e){if(!e.useDefaultCertificateConfig&&!e.certificateConfigLocation)throw new Ot("Either `useDefaultCertificateConfig` must be true or a `certificateConfigLocation` must be provided.");if(e.useDefaultCertificateConfig&&e.certificateConfigLocation)throw new Ot("Both `useDefaultCertificateConfig` and `certificateConfigLocation` cannot be provided.");this.trustChainPath=e.trustChainPath,this.certificateConfigPath=e.certificateConfigLocation??""}async createMtlsHttpsAgent(){if(!this.key||!this.cert)throw new Ot("Cannot create mTLS Agent with missing certificate or key");return new wA.Agent({key:this.key,cert:this.cert})}async getSubjectToken(){this.certificateConfigPath=await this.#e();let{certPath:e,keyPath:r}=await this.#t();return{cert:this.cert,key:this.key}=await this.#r(e,r),await this.#n(this.cert)}async#e(){let e=this.certificateConfigPath;if(e){if(await(0,Xi.isValidFile)(e))return e;throw new nr(`Provided certificate config path is invalid: ${e}`)}let r=process.env[Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE];if(r){if(await(0,Xi.isValidFile)(r))return r;throw new nr(`Path from environment variable "${Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" is invalid: ${r}`)}let n=(0,Xi.getWellKnownCertificateConfigFileLocation)();if(await(0,Xi.isValidFile)(n))return n;throw new nr(`Could not find certificate configuration file. Searched override path, the "${Ct.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" env var, and the gcloud path (${n}).`)}async#t(){let e=this.certificateConfigPath,r;try{r=await Qi.promises.readFile(e,"utf8")}catch{throw new nr(`Failed to read certificate config file at: ${e}`)}try{let n=JSON.parse(r),s=n?.cert_configs?.workload?.cert_path,i=n?.cert_configs?.workload?.key_path;if(!s||!i)throw new Ot(`Certificate config file (${e}) is missing required "cert_path" or "key_path" in the workload config.`);return{certPath:s,keyPath:i}}catch(n){throw n instanceof Ot?n:new Ot(`Failed to parse certificate config from ${e}: ${n.message}`)}}async#r(e,r){let n,s;try{n=await Qi.promises.readFile(e),new Zi.X509Certificate(n)}catch(i){let u=i instanceof Error?i.message:String(i);throw new nr(`Failed to read certificate file at ${e}: ${u}`)}try{s=await Qi.promises.readFile(r),(0,Zi.createPrivateKey)(s)}catch(i){let u=i instanceof Error?i.message:String(i);throw new nr(`Failed to read private key file at ${r}: ${u}`)}return{cert:n,key:s}}async#n(e){let r=new Zi.X509Certificate(e);if(!this.trustChainPath)return JSON.stringify([r.raw.toString("base64")]);try{let i=((await Qi.promises.readFile(this.trustChainPath,"utf8")).match(/-----BEGIN CERTIFICATE-----[^-]+-----END CERTIFICATE-----/g)??[]).map((l,h)=>{try{return new Zi.X509Certificate(l)}catch(d){let p=d instanceof Error?d.message:String(d);throw new Ot(`Failed to parse certificate at index ${h} in trust chain file ${this.trustChainPath}: ${p}`)}}),u=i.findIndex(l=>r.raw.equals(l.raw)),c;if(u===-1)c=[r,...i];else if(u===0)c=i;else throw new Ot(`Leaf certificate exists in the trust chain but is not the first entry (found at index ${u}).`);return JSON.stringify(c.map(l=>l.raw.toString("base64")))}catch(n){if(n instanceof Ot)throw n;let s=n instanceof Error?n.message:String(n);throw new nr(`Failed to process certificate chain from ${this.trustChainPath}: ${s}`)}}};Ct.CertificateSubjectTokenSupplier=El});var kl=J(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.IdentityPoolClient=void 0;var EA=zr(),Al=$t(),AA=qg(),SA=Lg(),Mg=Ug(),kA=Vi(),$g=Ve(),Sl=class t extends EA.BaseExternalAccountClient{subjectTokenSupplier;constructor(e){super(e);let r=(0,Al.originalOrCamelOptions)(e),n=r.get("credential_source"),s=r.get("subject_token_supplier");if(!n&&!s)throw new Error("A credential source or subject token supplier must be specified.");if(n&&s)throw new Error("Only one of credential source or subject token supplier can be specified.");if(s)this.subjectTokenSupplier=s,this.credentialSourceType="programmatic";else{let i=(0,Al.originalOrCamelOptions)(n),u=(0,Al.originalOrCamelOptions)(i.get("format")),c=u.get("type")||"text",l=u.get("subject_token_field_name");if(c!=="json"&&c!=="text")throw new Error(`Invalid credential_source format "${c}"`);if(c==="json"&&!l)throw new Error("Missing subject_token_field_name for JSON credential_source format");let h=i.get("file"),d=i.get("url"),p=i.get("certificate"),A=i.get("headers");if(h&&d||d&&p||h&&p)throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.');if(h)this.credentialSourceType="file",this.subjectTokenSupplier=new AA.FileSubjectTokenSupplier({filePath:h,formatType:c,subjectTokenFieldName:l});else if(d)this.credentialSourceType="url",this.subjectTokenSupplier=new SA.UrlSubjectTokenSupplier({url:d,formatType:c,subjectTokenFieldName:l,headers:A,additionalGaxiosOptions:t.RETRY_CONFIG});else if(p){this.credentialSourceType="certificate";let R=new Mg.CertificateSubjectTokenSupplier({useDefaultCertificateConfig:p.use_default_certificate_config,certificateConfigLocation:p.certificate_config_location,trustChainPath:p.trust_chain_path});this.subjectTokenSupplier=R}else throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.')}}async retrieveSubjectToken(){let e=await this.subjectTokenSupplier.getSubjectToken(this.supplierContext);if(this.subjectTokenSupplier instanceof Mg.CertificateSubjectTokenSupplier){let r=await this.subjectTokenSupplier.createMtlsHttpsAgent();this.stsCredential=new kA.StsCredentials({tokenExchangeEndpoint:this.getTokenUrl(),clientAuthentication:this.clientAuth,transporter:new $g.Gaxios({agent:r})}),this.transporter=new $g.Gaxios({...this.transporter.defaults||{},agent:r})}return e}};ea.IdentityPoolClient=Sl});var Tl=J(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.AwsRequestSigner=void 0;var ta=Ve(),Hg=js(),zg="AWS4-HMAC-SHA256",DA="aws4_request",Dl=class{getCredentials;region;crypto;constructor(e,r){this.getCredentials=e,this.region=r,this.crypto=(0,Hg.createCrypto)()}async getRequestOptions(e){if(!e.url)throw new RangeError('"url" is required in "amzOptions"');let r=typeof e.data=="object"?JSON.stringify(e.data):e.data,n=e.url,s=e.method||"GET",i=e.body||r,u=e.headers,c=await this.getCredentials(),l=new URL(n);if(typeof i!="string"&&i!==void 0)throw new TypeError(`'requestPayload' is expected to be a string if provided. Got: ${i}`);let h=await vA({crypto:this.crypto,host:l.host,canonicalUri:l.pathname,canonicalQuerystring:l.search.slice(1),method:s,region:this.region,securityCredentials:c,requestPayload:i,additionalAmzHeaders:u}),d=ta.Gaxios.mergeHeaders(h.amzDate?{"x-amz-date":h.amzDate}:{},{authorization:h.authorizationHeader,host:l.host},u||{});c.token&&ta.Gaxios.mergeHeaders(d,{"x-amz-security-token":c.token});let p={url:n,method:s,headers:d};return i!==void 0&&(p.body=i),p}};ra.AwsRequestSigner=Dl;async function Vs(t,e,r){return await t.signWithHmacSha256(e,r)}async function TA(t,e,r,n,s){let i=await Vs(t,`AWS4${e}`,r),u=await Vs(t,i,n),c=await Vs(t,u,s);return await Vs(t,c,"aws4_request")}async function vA(t){let e=ta.Gaxios.mergeHeaders(t.additionalAmzHeaders),r=t.requestPayload||"",n=t.host.split(".")[0],s=new Date,i=s.toISOString().replace(/[-:]/g,"").replace(/\.[0-9]+/,""),u=s.toISOString().replace(/[-]/g,"").replace(/T.*/,"");t.securityCredentials.token&&e.set("x-amz-security-token",t.securityCredentials.token);let c=ta.Gaxios.mergeHeaders({host:t.host},e.has("date")?{}:{"x-amz-date":i},e),l="",h=[...c.keys()].sort();h.forEach(D=>{l+=`${D}:${c.get(D)}
|
|
53
53
|
`});let d=h.join(";"),p=await t.crypto.sha256DigestHex(r),A=`${t.method.toUpperCase()}
|
|
54
54
|
${t.canonicalUri}
|
|
55
55
|
${t.canonicalQuerystring}
|
|
56
56
|
${l}
|
|
57
57
|
${d}
|
|
58
|
-
${p}`,R=`${u}/${t.region}/${n}/${
|
|
58
|
+
${p}`,R=`${u}/${t.region}/${n}/${DA}`,S=`${zg}
|
|
59
59
|
${i}
|
|
60
60
|
${R}
|
|
61
|
-
`+await t.crypto.sha256DigestHex(A),_=await DA(t.crypto,t.securityCredentials.secretAccessKey,u,t.region,n),y=await Vs(t.crypto,_,S),m=`${$g} Credential=${t.securityCredentials.accessKeyId}/${R}, SignedHeaders=${d}, Signature=${(0,zg.fromArrayBufferToHex)(y)}`;return{amzDate:e.has("date")?void 0:i,authorizationHeader:m,canonicalQuerystring:t.canonicalQuerystring}}});var Hg=J(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DefaultAwsSecurityCredentialsSupplier=void 0;var na=gt(),Tl=class{regionUrl;securityCredentialsUrl;imdsV2SessionTokenUrl;additionalGaxiosOptions;constructor(e){this.regionUrl=e.regionUrl,this.securityCredentialsUrl=e.securityCredentialsUrl,this.imdsV2SessionTokenUrl=e.imdsV2SessionTokenUrl,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getAwsRegion(e){if(this.#n)return this.#n;let r=new Headers;if(!this.#n&&this.imdsV2SessionTokenUrl&&r.set("x-aws-ec2-metadata-token",await this.#e(e.transporter)),!this.regionUrl)throw new RangeError('Unable to determine AWS region due to missing "options.credential_source.region_url"');let n={...this.additionalGaxiosOptions,url:this.regionUrl,method:"GET",headers:r};na.AuthClient.setMethodName(n,"getAwsRegion");let s=await e.transporter.request(n);return s.data.substr(0,s.data.length-1)}async getAwsSecurityCredentials(e){if(this.#s)return this.#s;let r=new Headers;this.imdsV2SessionTokenUrl&&r.set("x-aws-ec2-metadata-token",await this.#e(e.transporter));let n=await this.#t(r,e.transporter),s=await this.#r(n,r,e.transporter);return{accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,token:s.Token}}async#e(e){let r={...this.additionalGaxiosOptions,url:this.imdsV2SessionTokenUrl,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"300"}};return na.AuthClient.setMethodName(r,"#getImdsV2SessionToken"),(await e.request(r)).data}async#t(e,r){if(!this.securityCredentialsUrl)throw new Error('Unable to determine AWS role name due to missing "options.credential_source.url"');let n={...this.additionalGaxiosOptions,url:this.securityCredentialsUrl,method:"GET",headers:e};return na.AuthClient.setMethodName(n,"#getAwsRoleName"),(await r.request(n)).data}async#r(e,r,n){let s={...this.additionalGaxiosOptions,url:`${this.securityCredentialsUrl}/${e}`,headers:r};return na.AuthClient.setMethodName(s,"#retrieveAwsSecurityCredentials"),(await n.request(s)).data}get#n(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||null}get#s(){return process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY?{accessKeyId:process.env.AWS_ACCESS_KEY_ID,secretAccessKey:process.env.AWS_SECRET_ACCESS_KEY,token:process.env.AWS_SESSION_TOKEN}:null}};sa.DefaultAwsSecurityCredentialsSupplier=Tl});var Rl=J(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.AwsClient=void 0;var vA=Dl(),RA=zr(),OA=Hg(),Wg=$t(),FA=Ve(),vl=class t extends RA.BaseExternalAccountClient{environmentId;awsSecurityCredentialsSupplier;regionalCredVerificationUrl;awsRequestSigner;region;static#e="https://sts.{region}.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15";static AWS_EC2_METADATA_IPV4_ADDRESS="169.254.169.254";static AWS_EC2_METADATA_IPV6_ADDRESS="fd00:ec2::254";constructor(e){super(e);let r=(0,Wg.originalOrCamelOptions)(e),n=r.get("credential_source"),s=r.get("aws_security_credentials_supplier");if(!n&&!s)throw new Error("A credential source or AWS security credentials supplier must be specified.");if(n&&s)throw new Error("Only one of credential source or AWS security credentials supplier can be specified.");if(s)this.awsSecurityCredentialsSupplier=s,this.regionalCredVerificationUrl=t.#e,this.credentialSourceType="programmatic";else{let i=(0,Wg.originalOrCamelOptions)(n);this.environmentId=i.get("environment_id");let u=i.get("region_url"),c=i.get("url"),l=i.get("imdsv2_session_token_url");this.awsSecurityCredentialsSupplier=new OA.DefaultAwsSecurityCredentialsSupplier({regionUrl:u,securityCredentialsUrl:c,imdsV2SessionTokenUrl:l}),this.regionalCredVerificationUrl=i.get("regional_cred_verification_url"),this.credentialSourceType="aws",this.validateEnvironmentId()}this.awsRequestSigner=null,this.region=""}validateEnvironmentId(){let e=this.environmentId?.match(/^(aws)(\d+)$/);if(!e||!this.regionalCredVerificationUrl)throw new Error('No valid AWS "credential_source" provided');if(parseInt(e[2],10)!==1)throw new Error(`aws version "${e[2]}" is not supported in the current build.`)}async retrieveSubjectToken(){this.awsRequestSigner||(this.region=await this.awsSecurityCredentialsSupplier.getAwsRegion(this.supplierContext),this.awsRequestSigner=new vA.AwsRequestSigner(async()=>this.awsSecurityCredentialsSupplier.getAwsSecurityCredentials(this.supplierContext),this.region));let e=await this.awsRequestSigner.getRequestOptions({...t.RETRY_CONFIG,url:this.regionalCredVerificationUrl.replace("{region}",this.region),method:"POST"}),r=[];return FA.Gaxios.mergeHeaders({"x-goog-cloud-target-resource":this.audience},e.headers).forEach((s,i)=>r.push({key:i,value:s})),encodeURIComponent(JSON.stringify({url:e.url,method:e.method,headers:r}))}};oa.AwsClient=vl});var Il=J(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.InvalidSubjectTokenError=je.InvalidMessageFieldError=je.InvalidCodeFieldError=je.InvalidTokenTypeFieldError=je.InvalidExpirationTimeFieldError=je.InvalidSuccessFieldError=je.InvalidVersionFieldError=je.ExecutableResponseError=je.ExecutableResponse=void 0;var ia="urn:ietf:params:oauth:token-type:saml2",Ol="urn:ietf:params:oauth:token-type:id_token",Fl="urn:ietf:params:oauth:token-type:jwt",xl=class{version;success;expirationTime;tokenType;errorCode;errorMessage;subjectToken;constructor(e){if(!e.version)throw new aa("Executable response must contain a 'version' field.");if(e.success===void 0)throw new ua("Executable response must contain a 'success' field.");if(this.version=e.version,this.success=e.success,this.success){if(this.expirationTime=e.expiration_time,this.tokenType=e.token_type,this.tokenType!==ia&&this.tokenType!==Ol&&this.tokenType!==Fl)throw new ca(`Executable response must contain a 'token_type' field when successful and it must be one of ${Ol}, ${Fl}, or ${ia}.`);if(this.tokenType===ia){if(!e.saml_response)throw new Ks(`Executable response must contain a 'saml_response' field when token_type=${ia}.`);this.subjectToken=e.saml_response}else{if(!e.id_token)throw new Ks(`Executable response must contain a 'id_token' field when token_type=${Ol} or ${Fl}.`);this.subjectToken=e.id_token}}else{if(!e.code)throw new la("Executable response must contain a 'code' field when unsuccessful.");if(!e.message)throw new fa("Executable response must contain a 'message' field when unsuccessful.");this.errorCode=e.code,this.errorMessage=e.message}}isValid(){return!this.isExpired()&&this.success}isExpired(){return this.expirationTime!==void 0&&this.expirationTime<Math.round(Date.now()/1e3)}};je.ExecutableResponse=xl;var sr=class extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}};je.ExecutableResponseError=sr;var aa=class extends sr{};je.InvalidVersionFieldError=aa;var ua=class extends sr{};je.InvalidSuccessFieldError=ua;var Pl=class extends sr{};je.InvalidExpirationTimeFieldError=Pl;var ca=class extends sr{};je.InvalidTokenTypeFieldError=ca;var la=class extends sr{};je.InvalidCodeFieldError=la;var fa=class extends sr{};je.InvalidMessageFieldError=fa;var Ks=class extends sr{};je.InvalidSubjectTokenError=Ks});var jl=J(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.PluggableAuthHandler=ts.ExecutableError=void 0;var mn=Il(),xA=require("child_process"),Nl=require("fs"),da=class extends Error{code;constructor(e,r){super(`The executable failed with exit code: ${r} and error message: ${e}.`),this.code=r,Object.setPrototypeOf(this,new.target.prototype)}};ts.ExecutableError=da;var Bl=class t{commandComponents;timeoutMillis;outputFile;constructor(e){if(!e.command)throw new Error("No command provided.");if(this.commandComponents=t.parseCommand(e.command),this.timeoutMillis=e.timeoutMillis,!this.timeoutMillis)throw new Error("No timeoutMillis provided.");this.outputFile=e.outputFile}retrieveResponseFromExecutable(e){return new Promise((r,n)=>{let s=xA.spawn(this.commandComponents[0],this.commandComponents.slice(1),{env:{...process.env,...Object.fromEntries(e)}}),i="";s.stdout.on("data",c=>{i+=c}),s.stderr.on("data",c=>{i+=c});let u=setTimeout(()=>(s.removeAllListeners(),s.kill(),n(new Error("The executable failed to finish within the timeout specified."))),this.timeoutMillis);s.on("close",c=>{if(clearTimeout(u),c===0)try{let l=JSON.parse(i),h=new mn.ExecutableResponse(l);return r(h)}catch(l){return l instanceof mn.ExecutableResponseError?n(l):n(new mn.ExecutableResponseError(`The executable returned an invalid response: ${i}`))}else return n(new da(i,c.toString()))})})}async retrieveCachedResponse(){if(!this.outputFile||this.outputFile.length===0)return;let e;try{e=await Nl.promises.realpath(this.outputFile)}catch{return}if(!(await Nl.promises.lstat(e)).isFile())return;let r=await Nl.promises.readFile(e,{encoding:"utf8"});if(r!=="")try{let n=JSON.parse(r);return new mn.ExecutableResponse(n).isValid()?new mn.ExecutableResponse(n):void 0}catch(n){throw n instanceof mn.ExecutableResponseError?n:new mn.ExecutableResponseError(`The output file contained an invalid response: ${r}`)}}static parseCommand(e){let r=e.match(/(?:[^\s"]+|"[^"]*")+/g);if(!r)throw new Error(`Provided command: "${e}" could not be parsed.`);for(let n=0;n<r.length;n++)r[n][0]==='"'&&r[n].slice(-1)==='"'&&(r[n]=r[n].slice(1,-1));return r}};ts.PluggableAuthHandler=Bl});var Ll=J(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.PluggableAuthClient=rs.ExecutableError=void 0;var PA=zr(),IA=Il(),Gg=jl(),NA=jl();Object.defineProperty(rs,"ExecutableError",{enumerable:!0,get:function(){return NA.ExecutableError}});var BA=30*1e3,Jg=5*1e3,Vg=120*1e3,jA="GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES",Kg=1,ql=class extends PA.BaseExternalAccountClient{command;timeoutMillis;outputFile;handler;constructor(e){if(super(e),!e.credential_source.executable)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(this.command=e.credential_source.executable.command,!this.command)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(e.credential_source.executable.timeout_millis===void 0)this.timeoutMillis=BA;else if(this.timeoutMillis=e.credential_source.executable.timeout_millis,this.timeoutMillis<Jg||this.timeoutMillis>Vg)throw new Error(`Timeout must be between ${Jg} and ${Vg} milliseconds.`);this.outputFile=e.credential_source.executable.output_file,this.handler=new Gg.PluggableAuthHandler({command:this.command,timeoutMillis:this.timeoutMillis,outputFile:this.outputFile}),this.credentialSourceType="executable"}async retrieveSubjectToken(){if(process.env[jA]!=="1")throw new Error("Pluggable Auth executables need to be explicitly allowed to run by setting the GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES environment Variable to 1.");let e;if(this.outputFile&&(e=await this.handler.retrieveCachedResponse()),!e){let r=new Map;r.set("GOOGLE_EXTERNAL_ACCOUNT_AUDIENCE",this.audience),r.set("GOOGLE_EXTERNAL_ACCOUNT_TOKEN_TYPE",this.subjectTokenType),r.set("GOOGLE_EXTERNAL_ACCOUNT_INTERACTIVE","0"),this.outputFile&&r.set("GOOGLE_EXTERNAL_ACCOUNT_OUTPUT_FILE",this.outputFile);let n=this.getServiceAccountEmail();n&&r.set("GOOGLE_EXTERNAL_ACCOUNT_IMPERSONATED_EMAIL",n),e=await this.handler.retrieveResponseFromExecutable(r)}if(e.version>Kg)throw new Error(`Version of executable is not currently supported, maximum supported version is ${Kg}.`);if(!e.success)throw new Gg.ExecutableError(e.errorMessage,e.errorCode);if(this.outputFile&&!e.expirationTime)throw new IA.InvalidExpirationTimeFieldError("The executable response must contain the `expiration_time` field for successful responses when an output_file has been specified in the configuration.");if(e.isExpired())throw new Error("Executable response is expired.");return e.subjectToken}};rs.PluggableAuthClient=ql});var Ml=J(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.ExternalAccountClient=void 0;var qA=zr(),LA=Sl(),UA=Rl(),MA=Ll(),Ul=class{constructor(){throw new Error("ExternalAccountClients should be initialized via: ExternalAccountClient.fromJSON(), directly via explicit constructors, eg. new AwsClient(options), new IdentityPoolClient(options), newPluggableAuthClientOptions, or via new GoogleAuth(options).getClient()")}static fromJSON(e){return console.warn("The `fromJSON` method does not validate the credential configuration. A security risk occurs when a credential configuration configured with malicious URLs is used. When the credential configuration is accepted from an untrusted source, you should validate it before using it with this method. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),e&&e.type===qA.EXTERNAL_ACCOUNT_TYPE?e.credential_source?.environment_id?new UA.AwsClient(e):e.credential_source?.executable?new MA.PluggableAuthClient(e):new LA.IdentityPoolClient(e):null}};ha.ExternalAccountClient=Ul});var Zg=J(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.ExternalAccountAuthorizedUserClient=ns.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=void 0;var Xg=gt(),Yg=dl(),Qg=Ve(),$A=require("stream"),zA=zr();ns.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE="external_account_authorized_user";var HA="https://sts.{universeDomain}/v1/oauthtoken",$l=class t extends Yg.OAuthClientAuthHandler{#e;constructor(e){super(e),this.#e=e.tokenRefreshEndpoint}async refreshToken(e,r){let n={...t.RETRY_CONFIG,url:this.#e,method:"POST",headers:r,data:new URLSearchParams({grant_type:"refresh_token",refresh_token:e})};Xg.AuthClient.setMethodName(n,"refreshToken"),this.applyClientAuthenticationOptions(n);try{let s=await this.transporter.request(n),i=s.data;return i.res=s,i}catch(s){throw s instanceof Qg.GaxiosError&&s.response?(0,Yg.getErrorFromOAuthErrorResponse)(s.response.data,s):s}}},zl=class extends Xg.AuthClient{cachedAccessToken;externalAccountAuthorizedUserHandler;refreshToken;constructor(e){super(e),e.universe_domain&&(this.universeDomain=e.universe_domain),this.refreshToken=e.refresh_token;let r={confidentialClientType:"basic",clientId:e.client_id,clientSecret:e.client_secret};this.externalAccountAuthorizedUserHandler=new $l({tokenRefreshEndpoint:e.token_url??HA.replace("{universeDomain}",this.universeDomain),transporter:this.transporter,clientAuthentication:r}),this.cachedAccessToken=null,this.quotaProjectId=e.quota_project_id,typeof e?.eagerRefreshThresholdMillis!="number"?this.eagerRefreshThresholdMillis=zA.EXPIRATION_TIME_OFFSET:this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis,this.forceRefreshOnFailure=!!e?.forceRefreshOnFailure}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=Qg.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof $A.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){let e=await this.externalAccountAuthorizedUserHandler.refreshToken(this.refreshToken);return this.cachedAccessToken={access_token:e.access_token,expiry_date:new Date().getTime()+e.expires_in*1e3,res:e.res},e.refresh_token!==void 0&&(this.refreshToken=e.refresh_token),this.cachedAccessToken}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};ns.ExternalAccountAuthorizedUserClient=zl});var ny=J(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.GoogleAuth=Gt.GoogleAuthExceptionMessages=void 0;var WA=require("child_process"),Ys=require("fs"),GA=Ve(),Xs=Bs(),JA=require("os"),Hl=require("path"),VA=js(),KA=qc(),YA=Uc(),XA=Mc(),ss=il(),ey=ul(),os=ll(),QA=Ml(),Qs=zr(),Wl=gt(),ty=Zg(),ry=$t();Gt.GoogleAuthExceptionMessages={API_KEY_WITH_CREDENTIALS:"API Keys and Credentials are mutually exclusive authentication methods and cannot be used together.",NO_PROJECT_ID_FOUND:`Unable to detect a Project Id in the current environment.
|
|
61
|
+
`+await t.crypto.sha256DigestHex(A),_=await TA(t.crypto,t.securityCredentials.secretAccessKey,u,t.region,n),y=await Vs(t.crypto,_,S),m=`${zg} Credential=${t.securityCredentials.accessKeyId}/${R}, SignedHeaders=${d}, Signature=${(0,Hg.fromArrayBufferToHex)(y)}`;return{amzDate:e.has("date")?void 0:i,authorizationHeader:m,canonicalQuerystring:t.canonicalQuerystring}}});var Wg=J(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DefaultAwsSecurityCredentialsSupplier=void 0;var na=gt(),vl=class{regionUrl;securityCredentialsUrl;imdsV2SessionTokenUrl;additionalGaxiosOptions;constructor(e){this.regionUrl=e.regionUrl,this.securityCredentialsUrl=e.securityCredentialsUrl,this.imdsV2SessionTokenUrl=e.imdsV2SessionTokenUrl,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getAwsRegion(e){if(this.#n)return this.#n;let r=new Headers;if(!this.#n&&this.imdsV2SessionTokenUrl&&r.set("x-aws-ec2-metadata-token",await this.#e(e.transporter)),!this.regionUrl)throw new RangeError('Unable to determine AWS region due to missing "options.credential_source.region_url"');let n={...this.additionalGaxiosOptions,url:this.regionUrl,method:"GET",headers:r};na.AuthClient.setMethodName(n,"getAwsRegion");let s=await e.transporter.request(n);return s.data.substr(0,s.data.length-1)}async getAwsSecurityCredentials(e){if(this.#s)return this.#s;let r=new Headers;this.imdsV2SessionTokenUrl&&r.set("x-aws-ec2-metadata-token",await this.#e(e.transporter));let n=await this.#t(r,e.transporter),s=await this.#r(n,r,e.transporter);return{accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,token:s.Token}}async#e(e){let r={...this.additionalGaxiosOptions,url:this.imdsV2SessionTokenUrl,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"300"}};return na.AuthClient.setMethodName(r,"#getImdsV2SessionToken"),(await e.request(r)).data}async#t(e,r){if(!this.securityCredentialsUrl)throw new Error('Unable to determine AWS role name due to missing "options.credential_source.url"');let n={...this.additionalGaxiosOptions,url:this.securityCredentialsUrl,method:"GET",headers:e};return na.AuthClient.setMethodName(n,"#getAwsRoleName"),(await r.request(n)).data}async#r(e,r,n){let s={...this.additionalGaxiosOptions,url:`${this.securityCredentialsUrl}/${e}`,headers:r};return na.AuthClient.setMethodName(s,"#retrieveAwsSecurityCredentials"),(await n.request(s)).data}get#n(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||null}get#s(){return process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY?{accessKeyId:process.env.AWS_ACCESS_KEY_ID,secretAccessKey:process.env.AWS_SECRET_ACCESS_KEY,token:process.env.AWS_SESSION_TOKEN}:null}};sa.DefaultAwsSecurityCredentialsSupplier=vl});var Ol=J(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.AwsClient=void 0;var RA=Tl(),OA=zr(),FA=Wg(),Gg=$t(),xA=Ve(),Rl=class t extends OA.BaseExternalAccountClient{environmentId;awsSecurityCredentialsSupplier;regionalCredVerificationUrl;awsRequestSigner;region;static#e="https://sts.{region}.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15";static AWS_EC2_METADATA_IPV4_ADDRESS="169.254.169.254";static AWS_EC2_METADATA_IPV6_ADDRESS="fd00:ec2::254";constructor(e){super(e);let r=(0,Gg.originalOrCamelOptions)(e),n=r.get("credential_source"),s=r.get("aws_security_credentials_supplier");if(!n&&!s)throw new Error("A credential source or AWS security credentials supplier must be specified.");if(n&&s)throw new Error("Only one of credential source or AWS security credentials supplier can be specified.");if(s)this.awsSecurityCredentialsSupplier=s,this.regionalCredVerificationUrl=t.#e,this.credentialSourceType="programmatic";else{let i=(0,Gg.originalOrCamelOptions)(n);this.environmentId=i.get("environment_id");let u=i.get("region_url"),c=i.get("url"),l=i.get("imdsv2_session_token_url");this.awsSecurityCredentialsSupplier=new FA.DefaultAwsSecurityCredentialsSupplier({regionUrl:u,securityCredentialsUrl:c,imdsV2SessionTokenUrl:l}),this.regionalCredVerificationUrl=i.get("regional_cred_verification_url"),this.credentialSourceType="aws",this.validateEnvironmentId()}this.awsRequestSigner=null,this.region=""}validateEnvironmentId(){let e=this.environmentId?.match(/^(aws)(\d+)$/);if(!e||!this.regionalCredVerificationUrl)throw new Error('No valid AWS "credential_source" provided');if(parseInt(e[2],10)!==1)throw new Error(`aws version "${e[2]}" is not supported in the current build.`)}async retrieveSubjectToken(){this.awsRequestSigner||(this.region=await this.awsSecurityCredentialsSupplier.getAwsRegion(this.supplierContext),this.awsRequestSigner=new RA.AwsRequestSigner(async()=>this.awsSecurityCredentialsSupplier.getAwsSecurityCredentials(this.supplierContext),this.region));let e=await this.awsRequestSigner.getRequestOptions({...t.RETRY_CONFIG,url:this.regionalCredVerificationUrl.replace("{region}",this.region),method:"POST"}),r=[];return xA.Gaxios.mergeHeaders({"x-goog-cloud-target-resource":this.audience},e.headers).forEach((s,i)=>r.push({key:i,value:s})),encodeURIComponent(JSON.stringify({url:e.url,method:e.method,headers:r}))}};oa.AwsClient=Rl});var Nl=J(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.InvalidSubjectTokenError=je.InvalidMessageFieldError=je.InvalidCodeFieldError=je.InvalidTokenTypeFieldError=je.InvalidExpirationTimeFieldError=je.InvalidSuccessFieldError=je.InvalidVersionFieldError=je.ExecutableResponseError=je.ExecutableResponse=void 0;var ia="urn:ietf:params:oauth:token-type:saml2",Fl="urn:ietf:params:oauth:token-type:id_token",xl="urn:ietf:params:oauth:token-type:jwt",Pl=class{version;success;expirationTime;tokenType;errorCode;errorMessage;subjectToken;constructor(e){if(!e.version)throw new aa("Executable response must contain a 'version' field.");if(e.success===void 0)throw new ua("Executable response must contain a 'success' field.");if(this.version=e.version,this.success=e.success,this.success){if(this.expirationTime=e.expiration_time,this.tokenType=e.token_type,this.tokenType!==ia&&this.tokenType!==Fl&&this.tokenType!==xl)throw new ca(`Executable response must contain a 'token_type' field when successful and it must be one of ${Fl}, ${xl}, or ${ia}.`);if(this.tokenType===ia){if(!e.saml_response)throw new Ks(`Executable response must contain a 'saml_response' field when token_type=${ia}.`);this.subjectToken=e.saml_response}else{if(!e.id_token)throw new Ks(`Executable response must contain a 'id_token' field when token_type=${Fl} or ${xl}.`);this.subjectToken=e.id_token}}else{if(!e.code)throw new la("Executable response must contain a 'code' field when unsuccessful.");if(!e.message)throw new fa("Executable response must contain a 'message' field when unsuccessful.");this.errorCode=e.code,this.errorMessage=e.message}}isValid(){return!this.isExpired()&&this.success}isExpired(){return this.expirationTime!==void 0&&this.expirationTime<Math.round(Date.now()/1e3)}};je.ExecutableResponse=Pl;var sr=class extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}};je.ExecutableResponseError=sr;var aa=class extends sr{};je.InvalidVersionFieldError=aa;var ua=class extends sr{};je.InvalidSuccessFieldError=ua;var Il=class extends sr{};je.InvalidExpirationTimeFieldError=Il;var ca=class extends sr{};je.InvalidTokenTypeFieldError=ca;var la=class extends sr{};je.InvalidCodeFieldError=la;var fa=class extends sr{};je.InvalidMessageFieldError=fa;var Ks=class extends sr{};je.InvalidSubjectTokenError=Ks});var ql=J(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.PluggableAuthHandler=ts.ExecutableError=void 0;var mn=Nl(),PA=require("child_process"),Bl=require("fs"),da=class extends Error{code;constructor(e,r){super(`The executable failed with exit code: ${r} and error message: ${e}.`),this.code=r,Object.setPrototypeOf(this,new.target.prototype)}};ts.ExecutableError=da;var jl=class t{commandComponents;timeoutMillis;outputFile;constructor(e){if(!e.command)throw new Error("No command provided.");if(this.commandComponents=t.parseCommand(e.command),this.timeoutMillis=e.timeoutMillis,!this.timeoutMillis)throw new Error("No timeoutMillis provided.");this.outputFile=e.outputFile}retrieveResponseFromExecutable(e){return new Promise((r,n)=>{let s=PA.spawn(this.commandComponents[0],this.commandComponents.slice(1),{env:{...process.env,...Object.fromEntries(e)}}),i="";s.stdout.on("data",c=>{i+=c}),s.stderr.on("data",c=>{i+=c});let u=setTimeout(()=>(s.removeAllListeners(),s.kill(),n(new Error("The executable failed to finish within the timeout specified."))),this.timeoutMillis);s.on("close",c=>{if(clearTimeout(u),c===0)try{let l=JSON.parse(i),h=new mn.ExecutableResponse(l);return r(h)}catch(l){return l instanceof mn.ExecutableResponseError?n(l):n(new mn.ExecutableResponseError(`The executable returned an invalid response: ${i}`))}else return n(new da(i,c.toString()))})})}async retrieveCachedResponse(){if(!this.outputFile||this.outputFile.length===0)return;let e;try{e=await Bl.promises.realpath(this.outputFile)}catch{return}if(!(await Bl.promises.lstat(e)).isFile())return;let r=await Bl.promises.readFile(e,{encoding:"utf8"});if(r!=="")try{let n=JSON.parse(r);return new mn.ExecutableResponse(n).isValid()?new mn.ExecutableResponse(n):void 0}catch(n){throw n instanceof mn.ExecutableResponseError?n:new mn.ExecutableResponseError(`The output file contained an invalid response: ${r}`)}}static parseCommand(e){let r=e.match(/(?:[^\s"]+|"[^"]*")+/g);if(!r)throw new Error(`Provided command: "${e}" could not be parsed.`);for(let n=0;n<r.length;n++)r[n][0]==='"'&&r[n].slice(-1)==='"'&&(r[n]=r[n].slice(1,-1));return r}};ts.PluggableAuthHandler=jl});var Ul=J(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.PluggableAuthClient=rs.ExecutableError=void 0;var IA=zr(),NA=Nl(),Jg=ql(),BA=ql();Object.defineProperty(rs,"ExecutableError",{enumerable:!0,get:function(){return BA.ExecutableError}});var jA=30*1e3,Vg=5*1e3,Kg=120*1e3,qA="GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES",Yg=1,Ll=class extends IA.BaseExternalAccountClient{command;timeoutMillis;outputFile;handler;constructor(e){if(super(e),!e.credential_source.executable)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(this.command=e.credential_source.executable.command,!this.command)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(e.credential_source.executable.timeout_millis===void 0)this.timeoutMillis=jA;else if(this.timeoutMillis=e.credential_source.executable.timeout_millis,this.timeoutMillis<Vg||this.timeoutMillis>Kg)throw new Error(`Timeout must be between ${Vg} and ${Kg} milliseconds.`);this.outputFile=e.credential_source.executable.output_file,this.handler=new Jg.PluggableAuthHandler({command:this.command,timeoutMillis:this.timeoutMillis,outputFile:this.outputFile}),this.credentialSourceType="executable"}async retrieveSubjectToken(){if(process.env[qA]!=="1")throw new Error("Pluggable Auth executables need to be explicitly allowed to run by setting the GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES environment Variable to 1.");let e;if(this.outputFile&&(e=await this.handler.retrieveCachedResponse()),!e){let r=new Map;r.set("GOOGLE_EXTERNAL_ACCOUNT_AUDIENCE",this.audience),r.set("GOOGLE_EXTERNAL_ACCOUNT_TOKEN_TYPE",this.subjectTokenType),r.set("GOOGLE_EXTERNAL_ACCOUNT_INTERACTIVE","0"),this.outputFile&&r.set("GOOGLE_EXTERNAL_ACCOUNT_OUTPUT_FILE",this.outputFile);let n=this.getServiceAccountEmail();n&&r.set("GOOGLE_EXTERNAL_ACCOUNT_IMPERSONATED_EMAIL",n),e=await this.handler.retrieveResponseFromExecutable(r)}if(e.version>Yg)throw new Error(`Version of executable is not currently supported, maximum supported version is ${Yg}.`);if(!e.success)throw new Jg.ExecutableError(e.errorMessage,e.errorCode);if(this.outputFile&&!e.expirationTime)throw new NA.InvalidExpirationTimeFieldError("The executable response must contain the `expiration_time` field for successful responses when an output_file has been specified in the configuration.");if(e.isExpired())throw new Error("Executable response is expired.");return e.subjectToken}};rs.PluggableAuthClient=Ll});var $l=J(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.ExternalAccountClient=void 0;var LA=zr(),UA=kl(),MA=Ol(),$A=Ul(),Ml=class{constructor(){throw new Error("ExternalAccountClients should be initialized via: ExternalAccountClient.fromJSON(), directly via explicit constructors, eg. new AwsClient(options), new IdentityPoolClient(options), newPluggableAuthClientOptions, or via new GoogleAuth(options).getClient()")}static fromJSON(e){return console.warn("The `fromJSON` method does not validate the credential configuration. A security risk occurs when a credential configuration configured with malicious URLs is used. When the credential configuration is accepted from an untrusted source, you should validate it before using it with this method. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),e&&e.type===LA.EXTERNAL_ACCOUNT_TYPE?e.credential_source?.environment_id?new MA.AwsClient(e):e.credential_source?.executable?new $A.PluggableAuthClient(e):new UA.IdentityPoolClient(e):null}};ha.ExternalAccountClient=Ml});var ey=J(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.ExternalAccountAuthorizedUserClient=ns.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=void 0;var Qg=gt(),Xg=hl(),Zg=Ve(),zA=require("stream"),HA=zr();ns.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE="external_account_authorized_user";var WA="https://sts.{universeDomain}/v1/oauthtoken",zl=class t extends Xg.OAuthClientAuthHandler{#e;constructor(e){super(e),this.#e=e.tokenRefreshEndpoint}async refreshToken(e,r){let n={...t.RETRY_CONFIG,url:this.#e,method:"POST",headers:r,data:new URLSearchParams({grant_type:"refresh_token",refresh_token:e})};Qg.AuthClient.setMethodName(n,"refreshToken"),this.applyClientAuthenticationOptions(n);try{let s=await this.transporter.request(n),i=s.data;return i.res=s,i}catch(s){throw s instanceof Zg.GaxiosError&&s.response?(0,Xg.getErrorFromOAuthErrorResponse)(s.response.data,s):s}}},Hl=class extends Qg.AuthClient{cachedAccessToken;externalAccountAuthorizedUserHandler;refreshToken;constructor(e){super(e),e.universe_domain&&(this.universeDomain=e.universe_domain),this.refreshToken=e.refresh_token;let r={confidentialClientType:"basic",clientId:e.client_id,clientSecret:e.client_secret};this.externalAccountAuthorizedUserHandler=new zl({tokenRefreshEndpoint:e.token_url??WA.replace("{universeDomain}",this.universeDomain),transporter:this.transporter,clientAuthentication:r}),this.cachedAccessToken=null,this.quotaProjectId=e.quota_project_id,typeof e?.eagerRefreshThresholdMillis!="number"?this.eagerRefreshThresholdMillis=HA.EXPIRATION_TIME_OFFSET:this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis,this.forceRefreshOnFailure=!!e?.forceRefreshOnFailure}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=Zg.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof zA.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){let e=await this.externalAccountAuthorizedUserHandler.refreshToken(this.refreshToken);return this.cachedAccessToken={access_token:e.access_token,expiry_date:new Date().getTime()+e.expires_in*1e3,res:e.res},e.refresh_token!==void 0&&(this.refreshToken=e.refresh_token),this.cachedAccessToken}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};ns.ExternalAccountAuthorizedUserClient=Hl});var sy=J(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.GoogleAuth=Gt.GoogleAuthExceptionMessages=void 0;var GA=require("child_process"),Ys=require("fs"),JA=Ve(),Xs=Bs(),VA=require("os"),Wl=require("path"),KA=js(),YA=Lc(),XA=Mc(),QA=$c(),ss=al(),ty=cl(),os=fl(),ZA=$l(),Qs=zr(),Gl=gt(),ry=ey(),ny=$t();Gt.GoogleAuthExceptionMessages={API_KEY_WITH_CREDENTIALS:"API Keys and Credentials are mutually exclusive authentication methods and cannot be used together.",NO_PROJECT_ID_FOUND:`Unable to detect a Project Id in the current environment.
|
|
62
62
|
To learn more about authentication and Google APIs, visit:
|
|
63
63
|
https://cloud.google.com/docs/authentication/getting-started`,NO_CREDENTIALS_FOUND:`Unable to find credentials in current environment.
|
|
64
64
|
To learn more about authentication and Google APIs, visit:
|
|
65
65
|
https://cloud.google.com/docs/authentication/getting-started`,NO_ADC_FOUND:"Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.",NO_UNIVERSE_DOMAIN_FOUND:`Unable to detect a Universe Domain in the current environment.
|
|
66
66
|
To learn more about Universe Domain retrieval, visit:
|
|
67
|
-
https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};var Gl=class{checkIsGCE=void 0;useJWTAccessWithScope;defaultServicePath;get isGCE(){return this.checkIsGCE}_findProjectIdPromise;_cachedProjectId;jsonContent=null;apiKey;cachedCredential=null;#e=null;defaultScopes;keyFilename;scopes;clientOptions={};constructor(e={}){if(this._cachedProjectId=e.projectId||null,this.cachedCredential=e.authClient||null,this.keyFilename=e.keyFilename||e.keyFile,this.keyFilename&&console.warn("The `keyFilename` option is deprecated. Please use the `credentials` option instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.scopes=e.scopes,this.clientOptions=e.clientOptions||{},this.jsonContent=e.credentials||null,this.jsonContent&&console.warn("The `credentials` option is deprecated. Please use the `auth` object constructor instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.apiKey=e.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw new RangeError(Gt.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);e.universeDomain&&(this.clientOptions.universeDomain=e.universeDomain)}setGapicJWTValues(e){e.defaultServicePath=this.defaultServicePath,e.useJWTAccessWithScope=this.useJWTAccessWithScope,e.defaultScopes=this.defaultScopes}getProjectId(e){if(e)this.getProjectIdAsync().then(r=>e(null,r),e);else return this.getProjectIdAsync()}async getProjectIdOptional(){try{return await this.getProjectId()}catch(e){if(e instanceof Error&&e.message===Gt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw e}}async findAndCacheProjectId(){let e=null;if(e||=await this.getProductionProjectId(),e||=await this.getFileProjectId(),e||=await this.getDefaultServiceProjectId(),e||=await this.getGCEProjectId(),e||=await this.getExternalAccountClientProjectId(),e)return this._cachedProjectId=e,e;throw new Error(Gt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){let e;try{e=await Xs.universe("universe-domain"),e||=Wl.DEFAULT_UNIVERSE}catch(r){if(r&&r?.response?.status===404)e=Wl.DEFAULT_UNIVERSE;else throw r}return e}async getUniverseDomain(){let e=(0,ry.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{e??=(await this.getClient()).universeDomain}catch{e??=Wl.DEFAULT_UNIVERSE}return e}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(e={},r){let n;if(typeof e=="function"?r=e:n=e,r)this.getApplicationDefaultAsync(n).then(s=>r(null,s.credential,s.projectId),r);else return this.getApplicationDefaultAsync(n)}async getApplicationDefaultAsync(e={}){if(this.cachedCredential)return await this.#t(this.cachedCredential,null);let r;if(r=await this._tryGetApplicationCredentialsFromEnvironmentVariable(e),r)return r instanceof ss.JWT?r.scopes=this.scopes:r instanceof Qs.BaseExternalAccountClient&&(r.scopes=this.getAnyScopes()),await this.#t(r);if(r=await this._tryGetApplicationCredentialsFromWellKnownFile(e),r)return r instanceof ss.JWT?r.scopes=this.scopes:r instanceof Qs.BaseExternalAccountClient&&(r.scopes=this.getAnyScopes()),await this.#t(r);if(await this._checkIsGCE())return e.scopes=this.getAnyScopes(),await this.#t(new KA.Compute(e));throw new Error(Gt.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async#t(e,r=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let n=await this.getProjectIdOptional();return r&&(e.quotaProjectId=r),this.cachedCredential=e,{credential:e,projectId:n}}async _checkIsGCE(){return this.checkIsGCE===void 0&&(this.checkIsGCE=Xs.getGCPResidency()||await Xs.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(e){let r=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!r||r.length===0)return null;try{return this._getApplicationCredentialsFromFilePath(r,e)}catch(n){throw n instanceof Error&&(n.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${n.message}`),n}}async _tryGetApplicationCredentialsFromWellKnownFile(e){let r=null;if(this._isWindows())r=process.env.APPDATA;else{let s=process.env.HOME;s&&(r=Hl.join(s,".config"))}return r&&(r=Hl.join(r,"gcloud","application_default_credentials.json"),Ys.existsSync(r)||(r=null)),r?await this._getApplicationCredentialsFromFilePath(r,e):null}async _getApplicationCredentialsFromFilePath(e,r={}){if(!e||e.length===0)throw new Error("The file path is invalid.");try{if(e=Ys.realpathSync(e),!Ys.lstatSync(e).isFile())throw new Error}catch(s){throw s instanceof Error&&(s.message=`The file at ${e} does not exist, or it is not a file. ${s.message}`),s}let n=Ys.createReadStream(e);return this.fromStream(n,r)}fromImpersonatedJSON(e){if(!e)throw new Error("Must pass in a JSON object containing an impersonated refresh token");if(e.type!==os.IMPERSONATED_ACCOUNT_TYPE)throw new Error(`The incoming JSON object does not have the "${os.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!e.source_credentials)throw new Error("The incoming JSON object does not contain a source_credentials field");if(!e.service_account_impersonation_url)throw new Error("The incoming JSON object does not contain a service_account_impersonation_url field");let r=this.fromJSON(e.source_credentials);if(e.service_account_impersonation_url?.length>256)throw new RangeError(`Target principal is too long: ${e.service_account_impersonation_url}`);let n=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(e.service_account_impersonation_url)?.groups?.target;if(!n)throw new RangeError(`Cannot extract target principal from ${e.service_account_impersonation_url}`);let s=this.getAnyScopes()??[];return new os.Impersonated({...e,sourceClient:r,targetPrincipal:n,targetScopes:Array.isArray(s)?s:[s]})}fromJSON(e,r={}){console.warn("The `fromJSON` method is deprecated. Please use the `JWT` constructor instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials.");let n,s=(0,ry.originalOrCamelOptions)(r).get("universe_domain");return e.type===ey.USER_REFRESH_ACCOUNT_TYPE?(n=new ey.UserRefreshClient(r),n.fromJSON(e)):e.type===os.IMPERSONATED_ACCOUNT_TYPE?n=this.fromImpersonatedJSON(e):e.type===Qs.EXTERNAL_ACCOUNT_TYPE?(n=QA.ExternalAccountClient.fromJSON({...e,...r}),n.scopes=this.getAnyScopes()):e.type===ty.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?n=new ty.ExternalAccountAuthorizedUserClient({...e,...r}):(r.scopes=this.scopes,n=new ss.JWT(r),this.setGapicJWTValues(n),n.fromJSON(e)),s&&(n.universeDomain=s),n}_cacheClientFromJSON(e,r){let n=this.fromJSON(e,r);return this.jsonContent=e,this.cachedCredential=n,n}fromStream(e,r={},n){console.warn("The `fromStream` method is deprecated. Please use the `JWT` constructor with a parsed stream instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials.");let s={};if(typeof r=="function"?n=r:s=r,n)this.fromStreamAsync(e,s).then(i=>n(null,i),n);else return this.fromStreamAsync(e,s)}fromStreamAsync(e,r){return new Promise((n,s)=>{if(!e)throw new Error("Must pass in a stream containing the Google auth settings.");let i=[];e.setEncoding("utf8").on("error",s).on("data",u=>i.push(u)).on("end",()=>{try{try{let u=JSON.parse(i.join("")),c=this._cacheClientFromJSON(u,r);return n(c)}catch(u){if(!this.keyFilename)throw u;let c=new ss.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=c,this.setGapicJWTValues(c),n(c)}}catch(u){return s(u)}})})}fromAPIKey(e,r={}){return new ss.JWT({...r,apiKey:e})}_isWindows(){let e=JA.platform();return!!(e&&e.length>=3&&e.substring(0,3).toLowerCase()==="win")}async getDefaultServiceProjectId(){return new Promise(e=>{(0,WA.exec)("gcloud config config-helper --format json",(r,n)=>{if(!r&&n)try{let s=JSON.parse(n).configuration.properties.core.project;e(s);return}catch{}e(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let r=await this.getClient();if(r&&r.projectId)return r.projectId}let e=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return e?e.projectId:null}async getExternalAccountClientProjectId(){return!this.jsonContent||this.jsonContent.type!==Qs.EXTERNAL_ACCOUNT_TYPE?null:await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await Xs.project("project-id")}catch{return null}}getCredentials(e){if(e)this.getCredentialsAsync().then(r=>e(null,r),e);else return this.getCredentialsAsync()}async getCredentialsAsync(){let e=await this.getClient();if(e instanceof os.Impersonated)return{client_email:e.getTargetPrincipal()};if(e instanceof Qs.BaseExternalAccountClient){let r=e.getServiceAccountEmail();if(r)return{client_email:r,universe_domain:e.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[r,n]=await Promise.all([Xs.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:r,universe_domain:n}}throw new Error(Gt.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;this.#e=this.#e||this.#r();try{return await this.#e}finally{this.#e=null}}async#r(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let e=Hl.resolve(this.keyFilename),r=Ys.createReadStream(e);return await this.fromStreamAsync(r,this.clientOptions)}else if(this.apiKey){let e=await this.fromAPIKey(this.apiKey,this.clientOptions);e.scopes=this.scopes;let{credential:r}=await this.#t(e);return r}else{let{credential:e}=await this.getApplicationDefaultAsync(this.clientOptions);return e}}async getIdTokenClient(e){let r=await this.getClient();if(!("fetchIdToken"in r))throw new Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new YA.IdTokenClient({targetAudience:e,idTokenProvider:r})}async getAccessToken(){return(await(await this.getClient()).getAccessToken()).token}async getRequestHeaders(e){return(await this.getClient()).getRequestHeaders(e)}async authorizeRequest(e={}){let r=e.url,s=await(await this.getClient()).getRequestHeaders(r);return e.headers=GA.Gaxios.mergeHeaders(e.headers,s),e}async fetch(...e){return(await this.getClient()).fetch(...e)}async request(e){return(await this.getClient()).request(e)}getEnv(){return(0,XA.getEnv)()}async sign(e,r){let n=await this.getClient(),s=await this.getUniverseDomain();if(r=r||`https://iamcredentials.${s}/v1/projects/-/serviceAccounts/`,n instanceof os.Impersonated)return(await n.sign(e)).signedBlob;let i=(0,VA.createCrypto)();if(n instanceof ss.JWT&&n.key)return await i.sign(n.key,e);let u=await this.getCredentials();if(!u.client_email)throw new Error("Cannot sign data without `client_email`.");return this.signBlob(i,u.client_email,e,r)}async signBlob(e,r,n,s){let i=new URL(s+`${r}:signBlob`);return(await this.request({method:"POST",url:i.href,data:{payload:e.encodeBase64StringUtf8(n)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}};Gt.GoogleAuth=Gl});var sy=J(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.IAMAuth=void 0;var Jl=class{selector;token;constructor(e,r){this.selector=e,this.token=r,this.selector=e,this.token=r}getRequestHeaders(){return{"x-goog-iam-authority-selector":this.selector,"x-goog-iam-authorization-token":this.token}}};pa.IAMAuth=Jl});var oy=J(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.DownscopedClient=or.EXPIRATION_TIME_OFFSET=or.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var ZA=Ve(),eS=require("stream"),Vl=gt(),tS=Vi(),rS="urn:ietf:params:oauth:grant-type:token-exchange",nS="urn:ietf:params:oauth:token-type:access_token",sS="urn:ietf:params:oauth:token-type:access_token";or.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;or.EXPIRATION_TIME_OFFSET=300*1e3;var Kl=class extends Vl.AuthClient{authClient;credentialAccessBoundary;cachedDownscopedAccessToken;stsCredential;constructor(e,r={accessBoundary:{accessBoundaryRules:[]}}){if(super(e instanceof Vl.AuthClient?{}:e),e instanceof Vl.AuthClient?(this.authClient=e,this.credentialAccessBoundary=r):(this.authClient=e.authClient,this.credentialAccessBoundary=e.credentialAccessBoundary),this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length===0)throw new Error("At least one access boundary rule needs to be defined.");if(this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length>or.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw new Error(`The provided access boundary has more than ${or.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let n of this.credentialAccessBoundary.accessBoundary.accessBoundaryRules)if(n.availablePermissions.length===0)throw new Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new tS.StsCredentials({tokenExchangeEndpoint:`https://sts.${this.universeDomain}/v1/token`}),this.cachedDownscopedAccessToken=null}setCredentials(e){if(!e.expiry_date)throw new Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(e),this.cachedDownscopedAccessToken=e}async getAccessToken(){return(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=ZA.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof eS.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){let e=(await this.authClient.getAccessToken()).token,r={grantType:rS,requestedTokenType:nS,subjectToken:e,subjectTokenType:sS},n=await this.stsCredential.exchangeToken(r,void 0,this.credentialAccessBoundary),s=this.authClient.credentials?.expiry_date||null,i=n.expires_in?new Date().getTime()+n.expires_in*1e3:s;return this.cachedDownscopedAccessToken={access_token:n.access_token,expiry_date:i,res:n.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};or.DownscopedClient=Kl});var iy=J(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.PassThroughClient=void 0;var oS=gt(),Yl=class extends oS.AuthClient{async request(e){return this.transporter.request(e)}async getAccessToken(){return{}}async getRequestHeaders(){return new Headers}};ma.PassThroughClient=Yl});var Ql=J(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.GoogleAuth=ee.auth=ee.PassThroughClient=ee.ExecutableError=ee.PluggableAuthClient=ee.DownscopedClient=ee.BaseExternalAccountClient=ee.ExternalAccountClient=ee.IdentityPoolClient=ee.AwsRequestSigner=ee.AwsClient=ee.UserRefreshClient=ee.LoginTicket=ee.ClientAuthentication=ee.OAuth2Client=ee.CodeChallengeMethod=ee.Impersonated=ee.JWT=ee.JWTAccess=ee.IdTokenClient=ee.IAMAuth=ee.GCPEnv=ee.Compute=ee.DEFAULT_UNIVERSE=ee.AuthClient=ee.gaxios=ee.gcpMetadata=void 0;var ay=ny();Object.defineProperty(ee,"GoogleAuth",{enumerable:!0,get:function(){return ay.GoogleAuth}});ee.gcpMetadata=Bs();ee.gaxios=Ve();var uy=gt();Object.defineProperty(ee,"AuthClient",{enumerable:!0,get:function(){return uy.AuthClient}});Object.defineProperty(ee,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return uy.DEFAULT_UNIVERSE}});var iS=qc();Object.defineProperty(ee,"Compute",{enumerable:!0,get:function(){return iS.Compute}});var aS=Mc();Object.defineProperty(ee,"GCPEnv",{enumerable:!0,get:function(){return aS.GCPEnv}});var uS=sy();Object.defineProperty(ee,"IAMAuth",{enumerable:!0,get:function(){return uS.IAMAuth}});var cS=Uc();Object.defineProperty(ee,"IdTokenClient",{enumerable:!0,get:function(){return cS.IdTokenClient}});var lS=sl();Object.defineProperty(ee,"JWTAccess",{enumerable:!0,get:function(){return lS.JWTAccess}});var fS=il();Object.defineProperty(ee,"JWT",{enumerable:!0,get:function(){return fS.JWT}});var dS=ll();Object.defineProperty(ee,"Impersonated",{enumerable:!0,get:function(){return dS.Impersonated}});var Xl=pn();Object.defineProperty(ee,"CodeChallengeMethod",{enumerable:!0,get:function(){return Xl.CodeChallengeMethod}});Object.defineProperty(ee,"OAuth2Client",{enumerable:!0,get:function(){return Xl.OAuth2Client}});Object.defineProperty(ee,"ClientAuthentication",{enumerable:!0,get:function(){return Xl.ClientAuthentication}});var hS=Ic();Object.defineProperty(ee,"LoginTicket",{enumerable:!0,get:function(){return hS.LoginTicket}});var pS=ul();Object.defineProperty(ee,"UserRefreshClient",{enumerable:!0,get:function(){return pS.UserRefreshClient}});var mS=Rl();Object.defineProperty(ee,"AwsClient",{enumerable:!0,get:function(){return mS.AwsClient}});var gS=Dl();Object.defineProperty(ee,"AwsRequestSigner",{enumerable:!0,get:function(){return gS.AwsRequestSigner}});var yS=Sl();Object.defineProperty(ee,"IdentityPoolClient",{enumerable:!0,get:function(){return yS.IdentityPoolClient}});var _S=Ml();Object.defineProperty(ee,"ExternalAccountClient",{enumerable:!0,get:function(){return _S.ExternalAccountClient}});var bS=zr();Object.defineProperty(ee,"BaseExternalAccountClient",{enumerable:!0,get:function(){return bS.BaseExternalAccountClient}});var CS=oy();Object.defineProperty(ee,"DownscopedClient",{enumerable:!0,get:function(){return CS.DownscopedClient}});var cy=Ll();Object.defineProperty(ee,"PluggableAuthClient",{enumerable:!0,get:function(){return cy.PluggableAuthClient}});Object.defineProperty(ee,"ExecutableError",{enumerable:!0,get:function(){return cy.ExecutableError}});var wS=iy();Object.defineProperty(ee,"PassThroughClient",{enumerable:!0,get:function(){return wS.PassThroughClient}});var ES=new ay.GoogleAuth;ee.auth=ES});var $y=J((CF,Cf)=>{"use strict";var MD=/at\s(?:.*\.)?plugin\s.*\n\s*(.*)/,$D=/(\w*(\.\w*)*)\..*/;Cf.exports=function(e){if(e.name.length>0)return e.name;let r=Error.stackTraceLimit;Error.stackTraceLimit=10;try{throw new Error("anonymous function")}catch(n){return Error.stackTraceLimit=r,My(n.stack)}};function My(t){let e=t.match(MD);return e?e[1].split(/[/\\]/).slice(-1)[0].match($D)[1]:"anonymous"}Cf.exports.extractPluginName=My});var Hy=J((wF,zy)=>{"use strict";zy.exports=function(e){return e[0]==="@"&&(e=e.slice(1).replace("/","-")),e.replace(/-(.)/g,function(r,n){return n.toUpperCase()})}});var Wy=J((EF,Ga)=>{"use strict";var zD=$y(),HD=Hy(),WD=0;function wf(t,e={}){let r=!1;if(t.default!==void 0&&(t=t.default),typeof t!="function")throw new TypeError(`fastify-plugin expects a function, instead got a '${typeof t}'`);if(typeof e=="string"&&(e={fastify:e}),typeof e!="object"||Array.isArray(e)||e===null)throw new TypeError("The options object should be an object");if(e.fastify!==void 0&&typeof e.fastify!="string")throw new TypeError(`fastify-plugin expects a version string, instead got '${typeof e.fastify}'`);e.name||(r=!0,e.name=zD(t)+"-auto-"+WD++),t[Symbol.for("skip-override")]=e.encapsulate!==!0,t[Symbol.for("fastify.display-name")]=e.name,t[Symbol.for("plugin-meta")]=e,t.default||(t.default=t);let n=HD(e.name);return!r&&!t[n]&&(t[n]=t),t}Ga.exports=wf;Ga.exports.default=wf;Ga.exports.fastifyPlugin=wf});var co,Af=Be(()=>{"use strict";co=class{type="console";config;colors={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m"};constructor(e={}){this.config={colors:!0,level:"log",...e}}formatData(e,r){let{format:n="text",timestamp:s=!0,prefix:i,metadata:u}=r||{},c="";if(s){let l=new Date().toISOString();c+=this.config.colors?`${this.colors.cyan}[${l}]${this.colors.reset} `:`[${l}] `}switch(i&&(c+=this.config.colors?`${this.colors.bright}${i}${this.colors.reset} `:`${i} `),n){case"json":c+=JSON.stringify(e,null,2);break;case"markdown":typeof e=="object"?c+=this.toMarkdown(e):c+=String(e);break;case"text":default:typeof e=="object"?c+=JSON.stringify(e,null,2):c+=String(e);break}return u&&Object.keys(u).length>0&&(c+=`
|
|
67
|
+
https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};var Jl=class{checkIsGCE=void 0;useJWTAccessWithScope;defaultServicePath;get isGCE(){return this.checkIsGCE}_findProjectIdPromise;_cachedProjectId;jsonContent=null;apiKey;cachedCredential=null;#e=null;defaultScopes;keyFilename;scopes;clientOptions={};constructor(e={}){if(this._cachedProjectId=e.projectId||null,this.cachedCredential=e.authClient||null,this.keyFilename=e.keyFilename||e.keyFile,this.keyFilename&&console.warn("The `keyFilename` option is deprecated. Please use the `credentials` option instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.scopes=e.scopes,this.clientOptions=e.clientOptions||{},this.jsonContent=e.credentials||null,this.jsonContent&&console.warn("The `credentials` option is deprecated. Please use the `auth` object constructor instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials."),this.apiKey=e.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw new RangeError(Gt.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);e.universeDomain&&(this.clientOptions.universeDomain=e.universeDomain)}setGapicJWTValues(e){e.defaultServicePath=this.defaultServicePath,e.useJWTAccessWithScope=this.useJWTAccessWithScope,e.defaultScopes=this.defaultScopes}getProjectId(e){if(e)this.getProjectIdAsync().then(r=>e(null,r),e);else return this.getProjectIdAsync()}async getProjectIdOptional(){try{return await this.getProjectId()}catch(e){if(e instanceof Error&&e.message===Gt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw e}}async findAndCacheProjectId(){let e=null;if(e||=await this.getProductionProjectId(),e||=await this.getFileProjectId(),e||=await this.getDefaultServiceProjectId(),e||=await this.getGCEProjectId(),e||=await this.getExternalAccountClientProjectId(),e)return this._cachedProjectId=e,e;throw new Error(Gt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){let e;try{e=await Xs.universe("universe-domain"),e||=Gl.DEFAULT_UNIVERSE}catch(r){if(r&&r?.response?.status===404)e=Gl.DEFAULT_UNIVERSE;else throw r}return e}async getUniverseDomain(){let e=(0,ny.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{e??=(await this.getClient()).universeDomain}catch{e??=Gl.DEFAULT_UNIVERSE}return e}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(e={},r){let n;if(typeof e=="function"?r=e:n=e,r)this.getApplicationDefaultAsync(n).then(s=>r(null,s.credential,s.projectId),r);else return this.getApplicationDefaultAsync(n)}async getApplicationDefaultAsync(e={}){if(this.cachedCredential)return await this.#t(this.cachedCredential,null);let r;if(r=await this._tryGetApplicationCredentialsFromEnvironmentVariable(e),r)return r instanceof ss.JWT?r.scopes=this.scopes:r instanceof Qs.BaseExternalAccountClient&&(r.scopes=this.getAnyScopes()),await this.#t(r);if(r=await this._tryGetApplicationCredentialsFromWellKnownFile(e),r)return r instanceof ss.JWT?r.scopes=this.scopes:r instanceof Qs.BaseExternalAccountClient&&(r.scopes=this.getAnyScopes()),await this.#t(r);if(await this._checkIsGCE())return e.scopes=this.getAnyScopes(),await this.#t(new YA.Compute(e));throw new Error(Gt.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async#t(e,r=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let n=await this.getProjectIdOptional();return r&&(e.quotaProjectId=r),this.cachedCredential=e,{credential:e,projectId:n}}async _checkIsGCE(){return this.checkIsGCE===void 0&&(this.checkIsGCE=Xs.getGCPResidency()||await Xs.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(e){let r=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!r||r.length===0)return null;try{return this._getApplicationCredentialsFromFilePath(r,e)}catch(n){throw n instanceof Error&&(n.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${n.message}`),n}}async _tryGetApplicationCredentialsFromWellKnownFile(e){let r=null;if(this._isWindows())r=process.env.APPDATA;else{let s=process.env.HOME;s&&(r=Wl.join(s,".config"))}return r&&(r=Wl.join(r,"gcloud","application_default_credentials.json"),Ys.existsSync(r)||(r=null)),r?await this._getApplicationCredentialsFromFilePath(r,e):null}async _getApplicationCredentialsFromFilePath(e,r={}){if(!e||e.length===0)throw new Error("The file path is invalid.");try{if(e=Ys.realpathSync(e),!Ys.lstatSync(e).isFile())throw new Error}catch(s){throw s instanceof Error&&(s.message=`The file at ${e} does not exist, or it is not a file. ${s.message}`),s}let n=Ys.createReadStream(e);return this.fromStream(n,r)}fromImpersonatedJSON(e){if(!e)throw new Error("Must pass in a JSON object containing an impersonated refresh token");if(e.type!==os.IMPERSONATED_ACCOUNT_TYPE)throw new Error(`The incoming JSON object does not have the "${os.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!e.source_credentials)throw new Error("The incoming JSON object does not contain a source_credentials field");if(!e.service_account_impersonation_url)throw new Error("The incoming JSON object does not contain a service_account_impersonation_url field");let r=this.fromJSON(e.source_credentials);if(e.service_account_impersonation_url?.length>256)throw new RangeError(`Target principal is too long: ${e.service_account_impersonation_url}`);let n=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(e.service_account_impersonation_url)?.groups?.target;if(!n)throw new RangeError(`Cannot extract target principal from ${e.service_account_impersonation_url}`);let s=this.getAnyScopes()??[];return new os.Impersonated({...e,sourceClient:r,targetPrincipal:n,targetScopes:Array.isArray(s)?s:[s]})}fromJSON(e,r={}){console.warn("The `fromJSON` method is deprecated. Please use the `JWT` constructor instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials.");let n,s=(0,ny.originalOrCamelOptions)(r).get("universe_domain");return e.type===ty.USER_REFRESH_ACCOUNT_TYPE?(n=new ty.UserRefreshClient(r),n.fromJSON(e)):e.type===os.IMPERSONATED_ACCOUNT_TYPE?n=this.fromImpersonatedJSON(e):e.type===Qs.EXTERNAL_ACCOUNT_TYPE?(n=ZA.ExternalAccountClient.fromJSON({...e,...r}),n.scopes=this.getAnyScopes()):e.type===ry.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?n=new ry.ExternalAccountAuthorizedUserClient({...e,...r}):(r.scopes=this.scopes,n=new ss.JWT(r),this.setGapicJWTValues(n),n.fromJSON(e)),s&&(n.universeDomain=s),n}_cacheClientFromJSON(e,r){let n=this.fromJSON(e,r);return this.jsonContent=e,this.cachedCredential=n,n}fromStream(e,r={},n){console.warn("The `fromStream` method is deprecated. Please use the `JWT` constructor with a parsed stream instead. For more details, see https://cloud.google.com/docs/authentication/external/externally-sourced-credentials.");let s={};if(typeof r=="function"?n=r:s=r,n)this.fromStreamAsync(e,s).then(i=>n(null,i),n);else return this.fromStreamAsync(e,s)}fromStreamAsync(e,r){return new Promise((n,s)=>{if(!e)throw new Error("Must pass in a stream containing the Google auth settings.");let i=[];e.setEncoding("utf8").on("error",s).on("data",u=>i.push(u)).on("end",()=>{try{try{let u=JSON.parse(i.join("")),c=this._cacheClientFromJSON(u,r);return n(c)}catch(u){if(!this.keyFilename)throw u;let c=new ss.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=c,this.setGapicJWTValues(c),n(c)}}catch(u){return s(u)}})})}fromAPIKey(e,r={}){return new ss.JWT({...r,apiKey:e})}_isWindows(){let e=VA.platform();return!!(e&&e.length>=3&&e.substring(0,3).toLowerCase()==="win")}async getDefaultServiceProjectId(){return new Promise(e=>{(0,GA.exec)("gcloud config config-helper --format json",(r,n)=>{if(!r&&n)try{let s=JSON.parse(n).configuration.properties.core.project;e(s);return}catch{}e(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let r=await this.getClient();if(r&&r.projectId)return r.projectId}let e=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return e?e.projectId:null}async getExternalAccountClientProjectId(){return!this.jsonContent||this.jsonContent.type!==Qs.EXTERNAL_ACCOUNT_TYPE?null:await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await Xs.project("project-id")}catch{return null}}getCredentials(e){if(e)this.getCredentialsAsync().then(r=>e(null,r),e);else return this.getCredentialsAsync()}async getCredentialsAsync(){let e=await this.getClient();if(e instanceof os.Impersonated)return{client_email:e.getTargetPrincipal()};if(e instanceof Qs.BaseExternalAccountClient){let r=e.getServiceAccountEmail();if(r)return{client_email:r,universe_domain:e.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[r,n]=await Promise.all([Xs.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:r,universe_domain:n}}throw new Error(Gt.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;this.#e=this.#e||this.#r();try{return await this.#e}finally{this.#e=null}}async#r(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let e=Wl.resolve(this.keyFilename),r=Ys.createReadStream(e);return await this.fromStreamAsync(r,this.clientOptions)}else if(this.apiKey){let e=await this.fromAPIKey(this.apiKey,this.clientOptions);e.scopes=this.scopes;let{credential:r}=await this.#t(e);return r}else{let{credential:e}=await this.getApplicationDefaultAsync(this.clientOptions);return e}}async getIdTokenClient(e){let r=await this.getClient();if(!("fetchIdToken"in r))throw new Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new XA.IdTokenClient({targetAudience:e,idTokenProvider:r})}async getAccessToken(){return(await(await this.getClient()).getAccessToken()).token}async getRequestHeaders(e){return(await this.getClient()).getRequestHeaders(e)}async authorizeRequest(e={}){let r=e.url,s=await(await this.getClient()).getRequestHeaders(r);return e.headers=JA.Gaxios.mergeHeaders(e.headers,s),e}async fetch(...e){return(await this.getClient()).fetch(...e)}async request(e){return(await this.getClient()).request(e)}getEnv(){return(0,QA.getEnv)()}async sign(e,r){let n=await this.getClient(),s=await this.getUniverseDomain();if(r=r||`https://iamcredentials.${s}/v1/projects/-/serviceAccounts/`,n instanceof os.Impersonated)return(await n.sign(e)).signedBlob;let i=(0,KA.createCrypto)();if(n instanceof ss.JWT&&n.key)return await i.sign(n.key,e);let u=await this.getCredentials();if(!u.client_email)throw new Error("Cannot sign data without `client_email`.");return this.signBlob(i,u.client_email,e,r)}async signBlob(e,r,n,s){let i=new URL(s+`${r}:signBlob`);return(await this.request({method:"POST",url:i.href,data:{payload:e.encodeBase64StringUtf8(n)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}};Gt.GoogleAuth=Jl});var oy=J(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.IAMAuth=void 0;var Vl=class{selector;token;constructor(e,r){this.selector=e,this.token=r,this.selector=e,this.token=r}getRequestHeaders(){return{"x-goog-iam-authority-selector":this.selector,"x-goog-iam-authorization-token":this.token}}};pa.IAMAuth=Vl});var iy=J(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.DownscopedClient=or.EXPIRATION_TIME_OFFSET=or.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var eS=Ve(),tS=require("stream"),Kl=gt(),rS=Vi(),nS="urn:ietf:params:oauth:grant-type:token-exchange",sS="urn:ietf:params:oauth:token-type:access_token",oS="urn:ietf:params:oauth:token-type:access_token";or.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;or.EXPIRATION_TIME_OFFSET=300*1e3;var Yl=class extends Kl.AuthClient{authClient;credentialAccessBoundary;cachedDownscopedAccessToken;stsCredential;constructor(e,r={accessBoundary:{accessBoundaryRules:[]}}){if(super(e instanceof Kl.AuthClient?{}:e),e instanceof Kl.AuthClient?(this.authClient=e,this.credentialAccessBoundary=r):(this.authClient=e.authClient,this.credentialAccessBoundary=e.credentialAccessBoundary),this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length===0)throw new Error("At least one access boundary rule needs to be defined.");if(this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length>or.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw new Error(`The provided access boundary has more than ${or.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let n of this.credentialAccessBoundary.accessBoundary.accessBoundaryRules)if(n.availablePermissions.length===0)throw new Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new rS.StsCredentials({tokenExchangeEndpoint:`https://sts.${this.universeDomain}/v1/token`}),this.cachedDownscopedAccessToken=null}setCredentials(e){if(!e.expiry_date)throw new Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(e),this.cachedDownscopedAccessToken=e}async getAccessToken(){return(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),r=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(r)}request(e,r){if(r)this.requestAsync(e).then(n=>r(null,n),n=>r(n,n.response));else return this.requestAsync(e)}async requestAsync(e,r=!1){let n;try{let s=await this.getRequestHeaders();e.headers=eS.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,s),n=await this.transporter.request(e)}catch(s){let i=s.response;if(i){let u=i.status,c=i.config.data instanceof tS.Readable;if(!r&&(u===401||u===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw s}return n}async refreshAccessTokenAsync(){let e=(await this.authClient.getAccessToken()).token,r={grantType:nS,requestedTokenType:sS,subjectToken:e,subjectTokenType:oS},n=await this.stsCredential.exchangeToken(r,void 0,this.credentialAccessBoundary),s=this.authClient.credentials?.expiry_date||null,i=n.expires_in?new Date().getTime()+n.expires_in*1e3:s;return this.cachedDownscopedAccessToken={access_token:n.access_token,expiry_date:i,res:n.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(e){let r=new Date().getTime();return e.expiry_date?r>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};or.DownscopedClient=Yl});var ay=J(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.PassThroughClient=void 0;var iS=gt(),Xl=class extends iS.AuthClient{async request(e){return this.transporter.request(e)}async getAccessToken(){return{}}async getRequestHeaders(){return new Headers}};ma.PassThroughClient=Xl});var Zl=J(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.GoogleAuth=ee.auth=ee.PassThroughClient=ee.ExecutableError=ee.PluggableAuthClient=ee.DownscopedClient=ee.BaseExternalAccountClient=ee.ExternalAccountClient=ee.IdentityPoolClient=ee.AwsRequestSigner=ee.AwsClient=ee.UserRefreshClient=ee.LoginTicket=ee.ClientAuthentication=ee.OAuth2Client=ee.CodeChallengeMethod=ee.Impersonated=ee.JWT=ee.JWTAccess=ee.IdTokenClient=ee.IAMAuth=ee.GCPEnv=ee.Compute=ee.DEFAULT_UNIVERSE=ee.AuthClient=ee.gaxios=ee.gcpMetadata=void 0;var uy=sy();Object.defineProperty(ee,"GoogleAuth",{enumerable:!0,get:function(){return uy.GoogleAuth}});ee.gcpMetadata=Bs();ee.gaxios=Ve();var cy=gt();Object.defineProperty(ee,"AuthClient",{enumerable:!0,get:function(){return cy.AuthClient}});Object.defineProperty(ee,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return cy.DEFAULT_UNIVERSE}});var aS=Lc();Object.defineProperty(ee,"Compute",{enumerable:!0,get:function(){return aS.Compute}});var uS=$c();Object.defineProperty(ee,"GCPEnv",{enumerable:!0,get:function(){return uS.GCPEnv}});var cS=oy();Object.defineProperty(ee,"IAMAuth",{enumerable:!0,get:function(){return cS.IAMAuth}});var lS=Mc();Object.defineProperty(ee,"IdTokenClient",{enumerable:!0,get:function(){return lS.IdTokenClient}});var fS=ol();Object.defineProperty(ee,"JWTAccess",{enumerable:!0,get:function(){return fS.JWTAccess}});var dS=al();Object.defineProperty(ee,"JWT",{enumerable:!0,get:function(){return dS.JWT}});var hS=fl();Object.defineProperty(ee,"Impersonated",{enumerable:!0,get:function(){return hS.Impersonated}});var Ql=pn();Object.defineProperty(ee,"CodeChallengeMethod",{enumerable:!0,get:function(){return Ql.CodeChallengeMethod}});Object.defineProperty(ee,"OAuth2Client",{enumerable:!0,get:function(){return Ql.OAuth2Client}});Object.defineProperty(ee,"ClientAuthentication",{enumerable:!0,get:function(){return Ql.ClientAuthentication}});var pS=Nc();Object.defineProperty(ee,"LoginTicket",{enumerable:!0,get:function(){return pS.LoginTicket}});var mS=cl();Object.defineProperty(ee,"UserRefreshClient",{enumerable:!0,get:function(){return mS.UserRefreshClient}});var gS=Ol();Object.defineProperty(ee,"AwsClient",{enumerable:!0,get:function(){return gS.AwsClient}});var yS=Tl();Object.defineProperty(ee,"AwsRequestSigner",{enumerable:!0,get:function(){return yS.AwsRequestSigner}});var _S=kl();Object.defineProperty(ee,"IdentityPoolClient",{enumerable:!0,get:function(){return _S.IdentityPoolClient}});var bS=$l();Object.defineProperty(ee,"ExternalAccountClient",{enumerable:!0,get:function(){return bS.ExternalAccountClient}});var CS=zr();Object.defineProperty(ee,"BaseExternalAccountClient",{enumerable:!0,get:function(){return CS.BaseExternalAccountClient}});var wS=iy();Object.defineProperty(ee,"DownscopedClient",{enumerable:!0,get:function(){return wS.DownscopedClient}});var ly=Ul();Object.defineProperty(ee,"PluggableAuthClient",{enumerable:!0,get:function(){return ly.PluggableAuthClient}});Object.defineProperty(ee,"ExecutableError",{enumerable:!0,get:function(){return ly.ExecutableError}});var ES=ay();Object.defineProperty(ee,"PassThroughClient",{enumerable:!0,get:function(){return ES.PassThroughClient}});var AS=new uy.GoogleAuth;ee.auth=AS});var zy=J((AF,wf)=>{"use strict";var $D=/at\s(?:.*\.)?plugin\s.*\n\s*(.*)/,zD=/(\w*(\.\w*)*)\..*/;wf.exports=function(e){if(e.name.length>0)return e.name;let r=Error.stackTraceLimit;Error.stackTraceLimit=10;try{throw new Error("anonymous function")}catch(n){return Error.stackTraceLimit=r,$y(n.stack)}};function $y(t){let e=t.match($D);return e?e[1].split(/[/\\]/).slice(-1)[0].match(zD)[1]:"anonymous"}wf.exports.extractPluginName=$y});var Wy=J((SF,Hy)=>{"use strict";Hy.exports=function(e){return e[0]==="@"&&(e=e.slice(1).replace("/","-")),e.replace(/-(.)/g,function(r,n){return n.toUpperCase()})}});var Gy=J((kF,Ja)=>{"use strict";var HD=zy(),WD=Wy(),GD=0;function Ef(t,e={}){let r=!1;if(t.default!==void 0&&(t=t.default),typeof t!="function")throw new TypeError(`fastify-plugin expects a function, instead got a '${typeof t}'`);if(typeof e=="string"&&(e={fastify:e}),typeof e!="object"||Array.isArray(e)||e===null)throw new TypeError("The options object should be an object");if(e.fastify!==void 0&&typeof e.fastify!="string")throw new TypeError(`fastify-plugin expects a version string, instead got '${typeof e.fastify}'`);e.name||(r=!0,e.name=HD(t)+"-auto-"+GD++),t[Symbol.for("skip-override")]=e.encapsulate!==!0,t[Symbol.for("fastify.display-name")]=e.name,t[Symbol.for("plugin-meta")]=e,t.default||(t.default=t);let n=WD(e.name);return!r&&!t[n]&&(t[n]=t),t}Ja.exports=Ef;Ja.exports.default=Ef;Ja.exports.fastifyPlugin=Ef});var co,Sf=Be(()=>{"use strict";co=class{type="console";config;colors={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m"};constructor(e={}){this.config={colors:!0,level:"log",...e}}formatData(e,r){let{format:n="text",timestamp:s=!0,prefix:i,metadata:u}=r||{},c="";if(s){let l=new Date().toISOString();c+=this.config.colors?`${this.colors.cyan}[${l}]${this.colors.reset} `:`[${l}] `}switch(i&&(c+=this.config.colors?`${this.colors.bright}${i}${this.colors.reset} `:`${i} `),n){case"json":c+=JSON.stringify(e,null,2);break;case"markdown":typeof e=="object"?c+=this.toMarkdown(e):c+=String(e);break;case"text":default:typeof e=="object"?c+=JSON.stringify(e,null,2):c+=String(e);break}return u&&Object.keys(u).length>0&&(c+=`
|
|
68
68
|
`+(this.config.colors?`${this.colors.dim}`:""),c+="Metadata: "+JSON.stringify(u,null,2),this.config.colors&&(c+=this.colors.reset)),c}toMarkdown(e,r=0){let n=" ".repeat(r);return Array.isArray(e)?e.map(s=>typeof s=="object"?`${n}-
|
|
69
69
|
${this.toMarkdown(s,r+1)}`:`${n}- ${s}`).join(`
|
|
70
70
|
`):typeof e=="object"&&e!==null?Object.entries(e).map(([s,i])=>typeof i=="object"&&i!==null?`${n}${s}:
|
|
71
71
|
${this.toMarkdown(i,r+1)}`:`${n}${s}: ${i}`).join(`
|
|
72
|
-
`):`${n}${e}`}async output(e,r={}){try{let n=this.formatData(e,r);switch(this.config.level||"log"){case"info":console.info(n);break;case"warn":console.warn(n);break;case"error":console.error(n);break;case"debug":console.debug(n);break;case"log":default:console.log(n);break}return!0}catch(n){return console.error("[ConsoleOutputHandler] Output failed:",n),!1}}}});var lo,Sf=Be(()=>{"use strict";lo=class{type="webhook";config;defaultTimeout=3e4;constructor(e){if(!e.url)throw new Error("Webhook URL is required");this.config={method:"POST",retry:{maxAttempts:3,backoffMs:1e3},silent:!1,...e}}buildHeaders(){let e={"Content-Type":"application/json",...this.config.headers||{}};if(this.config.auth)switch(this.config.auth.type){case"bearer":this.config.auth.token&&(e.Authorization=`Bearer ${this.config.auth.token}`);break;case"basic":if(this.config.auth.username&&this.config.auth.password){let r=Buffer.from(`${this.config.auth.username}:${this.config.auth.password}`).toString("base64");e.Authorization=`Basic ${r}`}break;case"custom":this.config.auth.custom&&(e[this.config.auth.custom.header]=this.config.auth.custom.value);break}return e}buildBody(e,r){let{format:n="json",timestamp:s=!0,prefix:i,metadata:u}=r||{},c={data:e};return s&&(c.timestamp=new Date().toISOString()),i&&(c.prefix=i),u&&Object.keys(u).length>0&&(c.metadata=u),c}async sendRequest(e,r,n,s,i){let u=new AbortController,c=setTimeout(()=>u.abort(),i);try{let l=await fetch(e,{method:r,headers:n,body:JSON.stringify(s),signal:u.signal});if(clearTimeout(c),!l.ok)throw new Error(`HTTP ${l.status}: ${l.statusText}`);return l}catch(l){throw clearTimeout(c),l}}delay(e){return new Promise(r=>setTimeout(r,e))}async sendWithRetry(e,r,n,s,i,u){let c=null;for(let l=1;l<=u.maxAttempts;l++)try{return await this.sendRequest(e,r,n,s,i)}catch(h){if(c=h,l===u.maxAttempts)break;let d=u.backoffMs*Math.pow(2,l-1);console.warn(`[WebhookOutputHandler] Request failed (attempt ${l}/${u.maxAttempts}), retrying in ${d}ms...`,h.message),await this.delay(d)}throw c}async output(e,r={}){let n=r.timeout||this.defaultTimeout;try{let s=this.buildHeaders(),i=this.buildBody(e,r),u=await this.sendWithRetry(this.config.url,this.config.method,s,i,n,this.config.retry);return!0}catch(s){let i=s instanceof Error?s.message:String(s);if(this.config.silent)return console.error(`[WebhookOutputHandler] Failed to send data: ${i}`),!1;throw new Error(`Webhook output failed: ${i}`)}}}});var cs,kf,Gy,fo,Df=Be(()=>{"use strict";cs=require("fs"),kf=require("path"),Gy=require("os"),fo=class{type="temp-file";config;baseDir;constructor(e={}){this.config={subdirectory:"claude-code-router",extension:"json",includeTimestamp:!1,prefix:"session",...e};let r=(0,Gy.tmpdir)();this.baseDir=(0,kf.join)(r,this.config.subdirectory),this.ensureDir()}ensureDir(){try{(0,cs.existsSync)(this.baseDir)||(0,cs.mkdirSync)(this.baseDir,{recursive:!0})}catch{}}extractSessionId(e){try{let r=e.match(/_session_([a-f0-9-]+)/i);return r?r[1]:null}catch{return null}}getFilePath(e){let r=this.config.prefix||"session",n=this.config.extension?`.${this.config.extension}`:"",s;if(this.config.includeTimestamp){let i=Date.now();s=`${r}-${e}-${i}${n}`}else s=`${r}-${e}${n}`;return(0,kf.join)(this.baseDir,s)}async output(e,r={}){try{let n=r.metadata?.sessionId;if(!n)return!1;let s={...e,timestamp:Date.now(),sessionId:n},i=this.getFilePath(n);return(0,cs.writeFileSync)(i,JSON.stringify(s,null,2),"utf-8"),!0}catch{return!1}}getBaseDir(){return this.baseDir}}});var Tf,ls,Jy=Be(()=>{"use strict";Af();Sf();Df();Tf=class{handlers=new Map;defaultOptions={};registerHandler(e,r){this.handlers.set(e,r)}registerHandlers(e){for(let r of e)if(r.enabled!==!1)try{let n=this.createHandler(r),s=r.type+"_"+Date.now();this.registerHandler(s,n)}catch(n){console.error(`[OutputManager] Failed to register ${r.type} handler:`,n)}}createHandler(e){switch(e.type){case"console":return new co(e.config);case"webhook":return new lo(e.config);case"temp-file":return new fo(e.config);default:throw new Error(`Unknown output handler type: ${e.type}`)}}unregisterHandler(e){return this.handlers.delete(e)}getHandler(e){return this.handlers.get(e)}getAllHandlers(){return new Map(this.handlers)}clearHandlers(){this.handlers.clear()}setDefaultOptions(e){this.defaultOptions={...this.defaultOptions,...e}}getDefaultOptions(){return{...this.defaultOptions}}async output(e,r){let n={...this.defaultOptions,...r},s={success:[],failed:[]},i=Array.from(this.handlers.entries()).map(async([u,c])=>{try{await c.output(e,n)?s.success.push(u):s.failed.push(u)}catch(l){console.error(`[OutputManager] Handler ${u} failed:`,l),s.failed.push(u)}});return await Promise.all(i),s}async outputTo(e,r,n){let s={...this.defaultOptions,...n},i={success:[],failed:[]},u=e.map(async c=>{let l=this.handlers.get(c);if(!l){console.warn(`[OutputManager] Handler ${c} not found`),i.failed.push(c);return}try{await l.output(r,s)?i.success.push(c):i.failed.push(c)}catch(h){console.error(`[OutputManager] Handler ${c} failed:`,h),i.failed.push(c)}});return await Promise.all(u),i}async outputToType(e,r,n){let s=Array.from(this.handlers.entries()).filter(([i,u])=>u.type===e).map(([i])=>i);return this.outputTo(s,r,n)}},ls=new Tf});var VD={};Cu(VD,{ConfigService:()=>rn,ProviderService:()=>nn,SSEParserTransform:()=>_n,SSESerializerTransform:()=>uo,TokenizerService:()=>yn,TransformerService:()=>gn,calculateTokenCount:()=>gf,default:()=>JD,pluginManager:()=>bf,rewriteStream:()=>Ef,router:()=>Wa,searchProjectBySession:()=>yf,sessionUsageCache:()=>Ma,tokenSpeedPlugin:()=>Rf});module.exports=q_(VD);var Yy=Ue(require("fastify"),1),Xy=Ue(require("@fastify/cors"),1);var ws=require("fs"),Ou=require("path"),Hd=require("dotenv"),Wd=Ue(Ru(),1),rn=class{config={};options;constructor(e={jsonPath:"./config.json"}){this.options={envPath:e.envPath||".env",jsonPath:e.jsonPath,useEnvFile:!1,useJsonFile:e.useJsonFile!==!1,useEnvironmentVariables:e.useEnvironmentVariables!==!1,...e},this.loadConfig()}loadConfig(){this.options.useJsonFile&&this.options.jsonPath&&this.loadJsonConfig(),this.options.initialConfig&&(this.config={...this.config,...this.options.initialConfig}),this.options.useEnvFile&&this.loadEnvConfig(),this.config.LOG_FILE&&(process.env.LOG_FILE=this.config.LOG_FILE),this.config.LOG&&(process.env.LOG=this.config.LOG)}loadJsonConfig(){if(!this.options.jsonPath)return;let e=this.isAbsolutePath(this.options.jsonPath)?this.options.jsonPath:(0,Ou.join)(process.cwd(),this.options.jsonPath);if((0,ws.existsSync)(e))try{let r=(0,ws.readFileSync)(e,"utf-8"),n=Wd.default.parse(r);this.config={...this.config,...n},console.log(`Loaded JSON config from: ${e}`)}catch(r){console.warn(`Failed to load JSON config from ${e}:`,r)}else console.warn(`JSON config file not found: ${e}`)}loadEnvConfig(){let e=this.isAbsolutePath(this.options.envPath)?this.options.envPath:(0,Ou.join)(process.cwd(),this.options.envPath);if((0,ws.existsSync)(e))try{let r=(0,Hd.config)({path:e});r.parsed&&(this.config={...this.config,...this.parseEnvConfig(r.parsed)})}catch(r){console.warn(`Failed to load .env config from ${e}:`,r)}}loadEnvironmentVariables(){let e=this.parseEnvConfig(process.env);this.config={...this.config,...e}}parseEnvConfig(e){let r={};return Object.assign(r,e),r}isAbsolutePath(e){return e.startsWith("/")||e.includes(":")}get(e,r){let n=this.config[e];return n!==void 0?n:r}getAll(){return{...this.config}}getHttpsProxy(){return this.get("HTTPS_PROXY")||this.get("https_proxy")||this.get("httpsProxy")||this.get("PROXY_URL")}has(e){return this.config[e]!==void 0}set(e,r){this.config[e]=r}reload(){this.config={},this.loadConfig()}getConfigSummary(){let e=[];return this.options.initialConfig&&e.push("Initial Config"),this.options.useJsonFile&&this.options.jsonPath&&e.push(`JSON: ${this.options.jsonPath}`),this.options.useEnvFile&&e.push(`ENV: ${this.options.envPath}`),this.options.useEnvironmentVariables&&e.push("Environment Variables"),`Config sources: ${e.join(", ")}`}};function nt(t,e=500,r="internal_error",n="api_error"){let s=new Error(t);return s.statusCode=e,s.code=r,s.type=n,s}async function Gd(t,e,r){e.log.error(t);let n=t.statusCode||500,s={error:{message:t.message+t.stack||"Internal Server Error",type:t.type||"api_error",code:t.code||"internal_error"}};return r.code(n).send(s)}var Jd=require("undici");function Vd(t,e,r,n,s){let i=new Headers({"Content-Type":"application/json"});r.headers&&Object.entries(r.headers).forEach(([h,d])=>{d&&i.set(h,d)});let u,c=AbortSignal.timeout(r.TIMEOUT??60*1e3*60);if(r.signal){let h=new AbortController,d=()=>h.abort();r.signal.addEventListener("abort",d),c.addEventListener("abort",d),u=h.signal}else u=c;let l={method:"POST",headers:i,body:JSON.stringify(e),signal:u};return r.httpsProxy&&(l.dispatcher=new Jd.ProxyAgent(new URL(r.httpsProxy).toString())),s?.debug({reqId:n.req.id,request:l,headers:Object.fromEntries(i.entries()),requestUrl:typeof t=="string"?t:t.toString(),useProxy:r.httpsProxy},"final request"),fetch(typeof t=="string"?t:t.toString(),l)}var Kd="1.0.51";async function V_(t,e,r,n){let s=t.body,i=t.provider,u=r.providerService.getProvider(i);if(!u)throw nt(`Provider '${i}' not found`,404,"provider_not_found");try{let{requestBody:c,config:l,bypass:h}=await Yd(s,u,n,t.headers,{req:t}),d=await Xd(c,l,u,r,h,n,{req:t}),p=await Qd(c,d,u,n,h,{req:t});return Zd(p,e,s)}catch(c){if(c.code==="provider_response_error"){let l=await K_(t,e,r,n,c);if(l)return l}throw c}}async function K_(t,e,r,n,s){let i=t.scenarioType||"default",u=r.configService.get("fallback");if(!u||!u[i])return null;let c=u[i];if(!Array.isArray(c)||c.length===0)return null;t.log.warn(`Request failed for ${t.scenarioType}, trying ${c.length} fallback models`);for(let l of c)try{t.log.info(`Trying fallback model: ${l}`);let h={...t.body},[d,...p]=l.split(",");h.model=p.join(",");let A={...t,provider:d,body:h},R=r.providerService.getProvider(d);if(!R){t.log.warn(`Fallback provider '${d}' not found, skipping`);continue}let{requestBody:S,config:_,bypass:y}=await Yd(h,R,n,t.headers,{req:A}),m=await Xd(S,_,R,r,y,n,{req:A}),D=await Qd(S,m,R,n,y,{req:A});return t.log.info(`Fallback model ${l} succeeded`),Zd(D,e,h)}catch(h){t.log.warn(`Fallback model ${l} failed: ${h.message}`);continue}return t.log.error(`All fallback models failed for yichu ${i}`),null}async function Yd(t,e,r,n,s){let i=t,u={},c=!1;if(c=Y_(e,r,t),c&&(n instanceof Headers?n.delete("content-length"):delete n["content-length"],u.headers=n),!c&&typeof r.transformRequestOut=="function"){let l=await r.transformRequestOut(i);l.body?(i=l.body,u=l.config||{}):i=l}if(!c&&e.transformer?.use?.length)for(let l of e.transformer.use){if(!l||typeof l.transformRequestIn!="function")continue;let h=await l.transformRequestIn(i,e,s);h.body?(i=h.body,u={...u,...h.config}):i=h}if(!c&&e.transformer?.[t.model]?.use?.length)for(let l of e.transformer[t.model].use)!l||typeof l.transformRequestIn!="function"||(i=await l.transformRequestIn(i,e,s));return{requestBody:i,config:u,bypass:c}}function Y_(t,e,r){return t.transformer?.use?.length===1&&t.transformer.use[0].name===e.name&&(!t.transformer?.[r.model]?.use.length||t.transformer?.[r.model]?.use.length===1&&t.transformer?.[r.model]?.use[0].name===e.name)}async function Xd(t,e,r,n,s,i,u){let c=e.url||new URL(r.baseUrl);if(s&&typeof i.auth=="function"){let d=await i.auth(t,r);if(d.body){t=d.body;let p=e.headers||{};d.config?.headers&&(p={...p,...d.config.headers},delete p.host,delete d.config.headers),e={...e,...d.config,headers:p}}else t=d}let l={Authorization:`Bearer ${r.apiKey}`,...e?.headers||{}};for(let d in l)(l[d]==="undefined"||["authorization","Authorization"].includes(d)&&l[d]?.includes("undefined"))&&delete l[d];let h=await Vd(c,t,{httpsProxy:n.configService.getHttpsProxy(),...e,headers:JSON.parse(JSON.stringify(l))},u,n.log);if(!h.ok){let d=await h.text();throw n.log.error(`[provider_response_error] Error from provider(${r.name},${t.model}: ${h.status}): ${d}`),nt(`Error from provider(${r.name},${t.model}: ${h.status}): ${d}`,h.status,"provider_response_error")}return h}async function Qd(t,e,r,n,s,i){let u=e;if(!s&&r.transformer?.use?.length)for(let c of Array.from(r.transformer.use).reverse())!c||typeof c.transformResponseOut!="function"||(u=await c.transformResponseOut(u,i));if(!s&&r.transformer?.[t.model]?.use?.length)for(let c of Array.from(r.transformer[t.model].use).reverse())!c||typeof c.transformResponseOut!="function"||(u=await c.transformResponseOut(u,i));return!s&&n.transformResponseIn&&(u=await n.transformResponseIn(u,i)),u}function Zd(t,e,r){return t.ok||e.code(t.status),r.stream===!0?(e.header("Content-Type","text/event-stream"),e.header("Cache-Control","no-cache"),e.header("Connection","keep-alive"),e.send(t.body)):t.json()}var Fu=async t=>{t.get("/",async()=>({message:"LLMs API",version:Kd})),t.get("/health",async()=>({status:"ok",timestamp:new Date().toISOString()}));let e=t.transformerService.getTransformersWithEndpoint();for(let{transformer:r}of e)r.endPoint&&t.post(r.endPoint,async(n,s)=>V_(n,s,t,r));t.post("/providers",{schema:{body:{type:"object",properties:{id:{type:"string"},name:{type:"string"},type:{type:"string",enum:["openai","anthropic"]},baseUrl:{type:"string"},apiKey:{type:"string"},models:{type:"array",items:{type:"string"}}},required:["id","name","type","baseUrl","apiKey","models"]}}},async(r,n)=>{let{name:s,baseUrl:i,apiKey:u,models:c}=r.body;if(!s?.trim())throw nt("Provider name is required",400,"invalid_request");if(!i||!X_(i))throw nt("Valid base URL is required",400,"invalid_request");if(!u?.trim())throw nt("API key is required",400,"invalid_request");if(!c||!Array.isArray(c)||c.length===0)throw nt("At least one model is required",400,"invalid_request");if(t.providerService.getProvider(r.body.name))throw nt(`Provider with name '${r.body.name}' already exists`,400,"provider_exists");return t.providerService.registerProvider(r.body)}),t.get("/providers",async()=>t.providerService.getProviders()),t.get("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]}}},async r=>{let n=t.providerService.getProvider(r.params.id);if(!n)throw nt("Provider not found",404,"provider_not_found");return n}),t.put("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]},body:{type:"object",properties:{name:{type:"string"},type:{type:"string",enum:["openai","anthropic"]},baseUrl:{type:"string"},apiKey:{type:"string"},models:{type:"array",items:{type:"string"}},enabled:{type:"boolean"}}}}},async(r,n)=>{let s=t.providerService.updateProvider(r.params.id,r.body);if(!s)throw nt("Provider not found",404,"provider_not_found");return s}),t.delete("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]}}},async r=>{if(!t.providerService.deleteProvider(r.params.id))throw nt("Provider not found",404,"provider_not_found");return{message:"Provider deleted successfully"}}),t.patch("/providers/:id/toggle",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]},body:{type:"object",properties:{enabled:{type:"boolean"}},required:["enabled"]}}},async(r,n)=>{if(!t.providerService.toggleProvider(r.params.id,r.body.enabled))throw nt("Provider not found",404,"provider_not_found");return{message:`Provider ${r.body.enabled?"enabled":"disabled"} successfully`}})};function X_(t){try{return new URL(t),!0}catch{return!1}}var nn=class{constructor(e,r,n){this.configService=e;this.transformerService=r;this.logger=n;this.initializeCustomProviders()}providers=new Map;modelRoutes=new Map;initializeCustomProviders(){let e=this.configService.get("providers");if(e&&Array.isArray(e)){this.initializeFromProvidersArray(e);return}}initializeFromProvidersArray(e){e.forEach(r=>{try{if(!r.name||!r.api_base_url||!r.api_key)return;let n={};r.transformer&&Object.keys(r.transformer).forEach(s=>{s==="use"?Array.isArray(r.transformer.use)&&(n.use=r.transformer.use.map(i=>{if(Array.isArray(i)&&typeof i[0]=="string"){let u=this.transformerService.getTransformer(i[0]);if(u)return new u(i[1])}if(typeof i=="string"){let u=this.transformerService.getTransformer(i);return typeof u=="function"?new u:u}}).filter(i=>typeof i<"u")):Array.isArray(r.transformer[s]?.use)&&(n[s]={use:r.transformer[s].use.map(i=>{if(Array.isArray(i)&&typeof i[0]=="string"){let u=this.transformerService.getTransformer(i[0]);if(u)return new u(i[1])}if(typeof i=="string"){let u=this.transformerService.getTransformer(i);return typeof u=="function"?new u:u}}).filter(i=>typeof i<"u")})}),this.registerProvider({name:r.name,baseUrl:r.api_base_url,apiKey:r.api_key,models:r.models||[],transformer:r.transformer?n:void 0}),this.logger.info(`${r.name} provider registered`)}catch(n){this.logger.error(`${r.name} provider registered error: ${n}`)}})}registerProvider(e){let r={...e};return this.providers.set(r.name,r),e.models.forEach(n=>{let s=`${r.name},${n}`,i={provider:r.name,model:n,fullModel:s};this.modelRoutes.set(s,i),this.modelRoutes.has(n)||this.modelRoutes.set(n,i)}),r}getProviders(){return Array.from(this.providers.values())}getProvider(e){return this.providers.get(e)}updateProvider(e,r){let n=this.providers.get(e);if(!n)return null;let s={...n,...r,updatedAt:new Date};return this.providers.set(e,s),r.models&&(n.models.forEach(i=>{let u=`${n.name},${i}`;this.modelRoutes.delete(u),this.modelRoutes.delete(i)}),r.models.forEach(i=>{let u=`${n.name},${i}`,c={provider:n.name,model:i,fullModel:u};this.modelRoutes.set(u,c),this.modelRoutes.has(i)||this.modelRoutes.set(i,c)})),s}deleteProvider(e){let r=this.providers.get(e);return r?(r.models.forEach(n=>{let s=`${r.name},${n}`;this.modelRoutes.delete(s),this.modelRoutes.delete(n)}),this.providers.delete(e),!0):!1}toggleProvider(e,r){return!!this.providers.get(e)}resolveModelRoute(e){let r=this.modelRoutes.get(e);if(!r)return null;let n=this.providers.get(r.provider);return n?{provider:n,originalModel:e,targetModel:r.model}:null}getAvailableModelNames(){let e=[];return this.providers.forEach(r=>{r.models.forEach(n=>{e.push(n),e.push(`${r.name},${n}`)})}),e}getModelRoutes(){return Array.from(this.modelRoutes.values())}parseTransformerConfig(e){return e?Array.isArray(e)?e.reduce((r,n)=>{if(Array.isArray(n)){let[s,i={}]=n;r[s]=i}else r[n]={};return r},{}):e:{}}async getAvailableModels(){let e=[];return this.providers.forEach(r=>{r.models.forEach(n=>{e.push({id:n,object:"model",owned_by:r.name,provider:r.name}),e.push({id:`${r.name},${n}`,object:"model",owned_by:r.name,provider:r.name})})}),{object:"list",data:e}}};var Je=[];for(let t=0;t<256;++t)Je.push((t+256).toString(16).slice(1));function eh(t,e=0){return(Je[t[e+0]]+Je[t[e+1]]+Je[t[e+2]]+Je[t[e+3]]+"-"+Je[t[e+4]]+Je[t[e+5]]+"-"+Je[t[e+6]]+Je[t[e+7]]+"-"+Je[t[e+8]]+Je[t[e+9]]+"-"+Je[t[e+10]]+Je[t[e+11]]+Je[t[e+12]]+Je[t[e+13]]+Je[t[e+14]]+Je[t[e+15]]).toLowerCase()}var th=require("crypto"),Vo=new Uint8Array(256),Jo=Vo.length;function xu(){return Jo>Vo.length-16&&((0,th.randomFillSync)(Vo),Jo=0),Vo.slice(Jo,Jo+=16)}var rh=require("crypto"),Pu={randomUUID:rh.randomUUID};function Q_(t,e,r){if(Pu.randomUUID&&!e&&!t)return Pu.randomUUID();t=t||{};let n=t.random??t.rng?.()??xu();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(r=r||0,r<0||r+16>e.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let s=0;s<16;++s)e[r+s]=n[s];return e}return eh(n)}var Vt=Q_;var nh=t=>t<=0?"none":t<=1024?"low":t<=8192?"medium":"high";var sh=(t,e)=>(t.includes("base64")&&(t=t.split("base64").pop(),t.startsWith(",")&&(t=t.slice(1))),`data:${e};base64,${t}`);var Ko=class{constructor(e){this.options=e;this.useBearer=this.options?.UseBearer??!1}name="Anthropic";endPoint="/v1/messages";useBearer;logger;async auth(e,r){let n={};return this.useBearer?(n.authorization=`Bearer ${r.apiKey}`,n["x-api-key"]=void 0):(n["x-api-key"]=r.apiKey,n.authorization=void 0),{body:e,config:{headers:n}}}async transformRequestOut(e){let r=[];if(e.system){if(typeof e.system=="string")r.push({role:"system",content:e.system});else if(Array.isArray(e.system)&&e.system.length){let i=e.system.filter(u=>u.type==="text"&&u.text).map(u=>({type:"text",text:u.text,cache_control:u.cache_control}));r.push({role:"system",content:i})}}JSON.parse(JSON.stringify(e.messages||[]))?.forEach(i=>{if(i.role==="user"||i.role==="assistant"){if(typeof i.content=="string"){r.push({role:i.role,content:i.content});return}if(Array.isArray(i.content)){if(i.role==="user"){let u=i.content.filter(l=>l.type==="tool_result"&&l.tool_use_id);u.length&&u.forEach(l=>{let h={role:"tool",content:typeof l.content=="string"?l.content:JSON.stringify(l.content),tool_call_id:l.tool_use_id,cache_control:l.cache_control};r.push(h)});let c=i.content.filter(l=>l.type==="text"&&l.text||l.type==="image"&&l.source);c.length&&r.push({role:"user",content:c.map(l=>l?.type==="image"?{type:"image_url",image_url:{url:l.source?.type==="base64"?sh(l.source.data,l.source.media_type):l.source.url},media_type:l.source.media_type}:l)})}else if(i.role==="assistant"){let u={role:"assistant",content:""},c=i.content.filter(d=>d.type==="text"&&d.text);c.length&&(u.content=c.map(d=>d.text).join(`
|
|
73
|
-
`));let l=i.content.filter(d=>d.type==="tool_use"&&d.id);l.length&&(u.tool_calls=l.map(d=>({id:d.id,type:"function",function:{name:d.name,arguments:JSON.stringify(d.input||{})}})));let h=i.content.find(d=>d.type==="thinking"&&d.signature);h&&(u.thinking={content:h.thinking,signature:h.signature}),r.push(u)}return}}});let s={messages:r,model:e.model,max_tokens:e.max_tokens,temperature:e.temperature,stream:e.stream,tools:e.tools?.length?this.convertAnthropicToolsToUnified(e.tools):void 0,tool_choice:e.tool_choice};return e.thinking?(s.reasoning={effort:
|
|
72
|
+
`):`${n}${e}`}async output(e,r={}){try{let n=this.formatData(e,r);switch(this.config.level||"log"){case"info":console.info(n);break;case"warn":console.warn(n);break;case"error":console.error(n);break;case"debug":console.debug(n);break;case"log":default:console.log(n);break}return!0}catch(n){return console.error("[ConsoleOutputHandler] Output failed:",n),!1}}}});var lo,kf=Be(()=>{"use strict";lo=class{type="webhook";config;defaultTimeout=3e4;constructor(e){if(!e.url)throw new Error("Webhook URL is required");this.config={method:"POST",retry:{maxAttempts:3,backoffMs:1e3},silent:!1,...e}}buildHeaders(){let e={"Content-Type":"application/json",...this.config.headers||{}};if(this.config.auth)switch(this.config.auth.type){case"bearer":this.config.auth.token&&(e.Authorization=`Bearer ${this.config.auth.token}`);break;case"basic":if(this.config.auth.username&&this.config.auth.password){let r=Buffer.from(`${this.config.auth.username}:${this.config.auth.password}`).toString("base64");e.Authorization=`Basic ${r}`}break;case"custom":this.config.auth.custom&&(e[this.config.auth.custom.header]=this.config.auth.custom.value);break}return e}buildBody(e,r){let{format:n="json",timestamp:s=!0,prefix:i,metadata:u}=r||{},c={data:e};return s&&(c.timestamp=new Date().toISOString()),i&&(c.prefix=i),u&&Object.keys(u).length>0&&(c.metadata=u),c}async sendRequest(e,r,n,s,i){let u=new AbortController,c=setTimeout(()=>u.abort(),i);try{let l=await fetch(e,{method:r,headers:n,body:JSON.stringify(s),signal:u.signal});if(clearTimeout(c),!l.ok)throw new Error(`HTTP ${l.status}: ${l.statusText}`);return l}catch(l){throw clearTimeout(c),l}}delay(e){return new Promise(r=>setTimeout(r,e))}async sendWithRetry(e,r,n,s,i,u){let c=null;for(let l=1;l<=u.maxAttempts;l++)try{return await this.sendRequest(e,r,n,s,i)}catch(h){if(c=h,l===u.maxAttempts)break;let d=u.backoffMs*Math.pow(2,l-1);console.warn(`[WebhookOutputHandler] Request failed (attempt ${l}/${u.maxAttempts}), retrying in ${d}ms...`,h.message),await this.delay(d)}throw c}async output(e,r={}){let n=r.timeout||this.defaultTimeout;try{let s=this.buildHeaders(),i=this.buildBody(e,r),u=await this.sendWithRetry(this.config.url,this.config.method,s,i,n,this.config.retry);return!0}catch(s){let i=s instanceof Error?s.message:String(s);if(this.config.silent)return console.error(`[WebhookOutputHandler] Failed to send data: ${i}`),!1;throw new Error(`Webhook output failed: ${i}`)}}}});var cs,Df,Jy,fo,Tf=Be(()=>{"use strict";cs=require("fs"),Df=require("path"),Jy=require("os"),fo=class{type="temp-file";config;baseDir;constructor(e={}){this.config={subdirectory:"claude-code-router",extension:"json",includeTimestamp:!1,prefix:"session",...e};let r=(0,Jy.tmpdir)();this.baseDir=(0,Df.join)(r,this.config.subdirectory),this.ensureDir()}ensureDir(){try{(0,cs.existsSync)(this.baseDir)||(0,cs.mkdirSync)(this.baseDir,{recursive:!0})}catch{}}extractSessionId(e){try{let r=e.match(/_session_([a-f0-9-]+)/i);return r?r[1]:null}catch{return null}}getFilePath(e){let r=this.config.prefix||"session",n=this.config.extension?`.${this.config.extension}`:"",s;if(this.config.includeTimestamp){let i=Date.now();s=`${r}-${e}-${i}${n}`}else s=`${r}-${e}${n}`;return(0,Df.join)(this.baseDir,s)}async output(e,r={}){try{let n=r.metadata?.sessionId;if(!n)return!1;let s={...e,timestamp:Date.now(),sessionId:n},i=this.getFilePath(n);return(0,cs.writeFileSync)(i,JSON.stringify(s,null,2),"utf-8"),!0}catch{return!1}}getBaseDir(){return this.baseDir}}});var vf,ls,Vy=Be(()=>{"use strict";Sf();kf();Tf();vf=class{handlers=new Map;defaultOptions={};registerHandler(e,r){this.handlers.set(e,r)}registerHandlers(e){for(let r of e)if(r.enabled!==!1)try{let n=this.createHandler(r),s=r.type+"_"+Date.now();this.registerHandler(s,n)}catch(n){console.error(`[OutputManager] Failed to register ${r.type} handler:`,n)}}createHandler(e){switch(e.type){case"console":return new co(e.config);case"webhook":return new lo(e.config);case"temp-file":return new fo(e.config);default:throw new Error(`Unknown output handler type: ${e.type}`)}}unregisterHandler(e){return this.handlers.delete(e)}getHandler(e){return this.handlers.get(e)}getAllHandlers(){return new Map(this.handlers)}clearHandlers(){this.handlers.clear()}setDefaultOptions(e){this.defaultOptions={...this.defaultOptions,...e}}getDefaultOptions(){return{...this.defaultOptions}}async output(e,r){let n={...this.defaultOptions,...r},s={success:[],failed:[]},i=Array.from(this.handlers.entries()).map(async([u,c])=>{try{await c.output(e,n)?s.success.push(u):s.failed.push(u)}catch(l){console.error(`[OutputManager] Handler ${u} failed:`,l),s.failed.push(u)}});return await Promise.all(i),s}async outputTo(e,r,n){let s={...this.defaultOptions,...n},i={success:[],failed:[]},u=e.map(async c=>{let l=this.handlers.get(c);if(!l){console.warn(`[OutputManager] Handler ${c} not found`),i.failed.push(c);return}try{await l.output(r,s)?i.success.push(c):i.failed.push(c)}catch(h){console.error(`[OutputManager] Handler ${c} failed:`,h),i.failed.push(c)}});return await Promise.all(u),i}async outputToType(e,r,n){let s=Array.from(this.handlers.entries()).filter(([i,u])=>u.type===e).map(([i])=>i);return this.outputTo(s,r,n)}},ls=new vf});var KD={};wu(KD,{ConfigService:()=>rn,ProviderService:()=>nn,SSEParserTransform:()=>_n,SSESerializerTransform:()=>uo,TokenizerService:()=>yn,TransformerService:()=>gn,calculateTokenCount:()=>yf,default:()=>VD,pluginManager:()=>Cf,rewriteStream:()=>Af,router:()=>Ga,searchProjectBySession:()=>_f,sessionUsageCache:()=>$a,tokenSpeedPlugin:()=>Of});module.exports=L_(KD);var Xy=Ue(require("fastify"),1),Qy=Ue(require("@fastify/cors"),1);var ws=require("fs"),Fu=require("path"),Wd=require("dotenv"),Gd=Ue(Ou(),1),rn=class{config={};options;constructor(e={jsonPath:"./config.json"}){this.options={envPath:e.envPath||".env",jsonPath:e.jsonPath,useEnvFile:!1,useJsonFile:e.useJsonFile!==!1,useEnvironmentVariables:e.useEnvironmentVariables!==!1,...e},this.loadConfig()}loadConfig(){this.options.useJsonFile&&this.options.jsonPath&&this.loadJsonConfig(),this.options.initialConfig&&(this.config={...this.config,...this.options.initialConfig}),this.options.useEnvFile&&this.loadEnvConfig(),this.config.LOG_FILE&&(process.env.LOG_FILE=this.config.LOG_FILE),this.config.LOG&&(process.env.LOG=this.config.LOG)}loadJsonConfig(){if(!this.options.jsonPath)return;let e=this.isAbsolutePath(this.options.jsonPath)?this.options.jsonPath:(0,Fu.join)(process.cwd(),this.options.jsonPath);if((0,ws.existsSync)(e))try{let r=(0,ws.readFileSync)(e,"utf-8"),n=Gd.default.parse(r);this.config={...this.config,...n},console.log(`Loaded JSON config from: ${e}`)}catch(r){console.warn(`Failed to load JSON config from ${e}:`,r)}else console.warn(`JSON config file not found: ${e}`)}loadEnvConfig(){let e=this.isAbsolutePath(this.options.envPath)?this.options.envPath:(0,Fu.join)(process.cwd(),this.options.envPath);if((0,ws.existsSync)(e))try{let r=(0,Wd.config)({path:e});r.parsed&&(this.config={...this.config,...this.parseEnvConfig(r.parsed)})}catch(r){console.warn(`Failed to load .env config from ${e}:`,r)}}loadEnvironmentVariables(){let e=this.parseEnvConfig(process.env);this.config={...this.config,...e}}parseEnvConfig(e){let r={};return Object.assign(r,e),r}isAbsolutePath(e){return e.startsWith("/")||e.includes(":")}get(e,r){let n=this.config[e];return n!==void 0?n:r}getAll(){return{...this.config}}getHttpsProxy(){return this.get("HTTPS_PROXY")||this.get("https_proxy")||this.get("httpsProxy")||this.get("PROXY_URL")}has(e){return this.config[e]!==void 0}set(e,r){this.config[e]=r}reload(){this.config={},this.loadConfig()}getConfigSummary(){let e=[];return this.options.initialConfig&&e.push("Initial Config"),this.options.useJsonFile&&this.options.jsonPath&&e.push(`JSON: ${this.options.jsonPath}`),this.options.useEnvFile&&e.push(`ENV: ${this.options.envPath}`),this.options.useEnvironmentVariables&&e.push("Environment Variables"),`Config sources: ${e.join(", ")}`}};function nt(t,e=500,r="internal_error",n="api_error"){let s=new Error(t);return s.statusCode=e,s.code=r,s.type=n,s}async function Jd(t,e,r){e.log.error(t);let n=t.statusCode||500,s={error:{message:t.message+t.stack||"Internal Server Error",type:t.type||"api_error",code:t.code||"internal_error"}};return r.code(n).send(s)}var Vd=require("undici");function Kd(t,e,r,n,s){let i=new Headers({"Content-Type":"application/json"});r.headers&&Object.entries(r.headers).forEach(([h,d])=>{d&&i.set(h,d)});let u,c=AbortSignal.timeout(r.TIMEOUT??60*1e3*60);if(r.signal){let h=new AbortController,d=()=>h.abort();r.signal.addEventListener("abort",d),c.addEventListener("abort",d),u=h.signal}else u=c;let l={method:"POST",headers:i,body:JSON.stringify(e),signal:u};return r.httpsProxy&&(l.dispatcher=new Vd.ProxyAgent(new URL(r.httpsProxy).toString())),s?.debug({reqId:n.req.id,request:l,headers:Object.fromEntries(i.entries()),requestUrl:typeof t=="string"?t:t.toString(),useProxy:r.httpsProxy},"final request"),fetch(typeof t=="string"?t:t.toString(),l)}var Yd="1.0.52";async function K_(t,e,r,n){let s=t.body,i=t.provider,u=r.providerService.getProvider(i);if(!u)throw nt(`Provider '${i}' not found`,404,"provider_not_found");try{let{requestBody:c,config:l,bypass:h}=await Xd(s,u,n,t.headers,{req:t}),d=await Qd(c,l,u,r,h,n,{req:t}),p=await Zd(c,d,u,n,h,{req:t});return eh(p,e,s)}catch(c){if(c.code==="provider_response_error"){let l=await Y_(t,e,r,n,c);if(l)return l}throw c}}async function Y_(t,e,r,n,s){let i=t.scenarioType||"default",u=r.configService.get("fallback");if(!u||!u[i])return null;let c=u[i];if(!Array.isArray(c)||c.length===0)return null;t.log.warn(`Request failed for ${t.scenarioType}, trying ${c.length} fallback models`);for(let l of c)try{t.log.info(`Trying fallback model: ${l}`);let h={...t.body},[d,...p]=l.split(",");h.model=p.join(",");let A={...t,provider:d,body:h},R=r.providerService.getProvider(d);if(!R){t.log.warn(`Fallback provider '${d}' not found, skipping`);continue}let{requestBody:S,config:_,bypass:y}=await Xd(h,R,n,t.headers,{req:A}),m=await Qd(S,_,R,r,y,n,{req:A}),D=await Zd(S,m,R,n,y,{req:A});return t.log.info(`Fallback model ${l} succeeded`),eh(D,e,h)}catch(h){t.log.warn(`Fallback model ${l} failed: ${h.message}`);continue}return t.log.error(`All fallback models failed for yichu ${i}`),null}async function Xd(t,e,r,n,s){let i=t,u={},c=!1;if(c=X_(e,r,t),c&&(n instanceof Headers?n.delete("content-length"):delete n["content-length"],u.headers=n),!c&&typeof r.transformRequestOut=="function"){let l=await r.transformRequestOut(i);l.body?(i=l.body,u=l.config||{}):i=l}if(!c&&e.transformer?.use?.length)for(let l of e.transformer.use){if(!l||typeof l.transformRequestIn!="function")continue;let h=await l.transformRequestIn(i,e,s);h.body?(i=h.body,u={...u,...h.config}):i=h}if(!c&&e.transformer?.[t.model]?.use?.length)for(let l of e.transformer[t.model].use)!l||typeof l.transformRequestIn!="function"||(i=await l.transformRequestIn(i,e,s));return{requestBody:i,config:u,bypass:c}}function X_(t,e,r){return t.transformer?.use?.length===1&&t.transformer.use[0].name===e.name&&(!t.transformer?.[r.model]?.use.length||t.transformer?.[r.model]?.use.length===1&&t.transformer?.[r.model]?.use[0].name===e.name)}async function Qd(t,e,r,n,s,i,u){let c=e.url||new URL(r.baseUrl);if(s&&typeof i.auth=="function"){let d=await i.auth(t,r);if(d.body){t=d.body;let p=e.headers||{};d.config?.headers&&(p={...p,...d.config.headers},delete p.host,delete d.config.headers),e={...e,...d.config,headers:p}}else t=d}let l={Authorization:`Bearer ${r.apiKey}`,...e?.headers||{}};for(let d in l)(l[d]==="undefined"||["authorization","Authorization"].includes(d)&&l[d]?.includes("undefined"))&&delete l[d];let h=await Kd(c,t,{httpsProxy:n.configService.getHttpsProxy(),...e,headers:JSON.parse(JSON.stringify(l))},u,n.log);if(!h.ok){let d=await h.text();throw n.log.error(`[provider_response_error] Error from provider(${r.name},${t.model}: ${h.status}): ${d}`),nt(`Error from provider(${r.name},${t.model}: ${h.status}): ${d}`,h.status,"provider_response_error")}return h}async function Zd(t,e,r,n,s,i){let u=e;if(!s&&r.transformer?.use?.length)for(let c of Array.from(r.transformer.use).reverse())!c||typeof c.transformResponseOut!="function"||(u=await c.transformResponseOut(u,i));if(!s&&r.transformer?.[t.model]?.use?.length)for(let c of Array.from(r.transformer[t.model].use).reverse())!c||typeof c.transformResponseOut!="function"||(u=await c.transformResponseOut(u,i));return!s&&n.transformResponseIn&&(u=await n.transformResponseIn(u,i)),u}function eh(t,e,r){return t.ok||e.code(t.status),r.stream===!0?(e.header("Content-Type","text/event-stream"),e.header("Cache-Control","no-cache"),e.header("Connection","keep-alive"),e.send(t.body)):t.json()}var xu=async t=>{t.get("/",async()=>({message:"LLMs API",version:Yd})),t.get("/health",async()=>({status:"ok",timestamp:new Date().toISOString()}));let e=t.transformerService.getTransformersWithEndpoint();for(let{transformer:r}of e)r.endPoint&&t.post(r.endPoint,async(n,s)=>K_(n,s,t,r));t.post("/providers",{schema:{body:{type:"object",properties:{id:{type:"string"},name:{type:"string"},type:{type:"string",enum:["openai","anthropic"]},baseUrl:{type:"string"},apiKey:{type:"string"},models:{type:"array",items:{type:"string"}}},required:["id","name","type","baseUrl","apiKey","models"]}}},async(r,n)=>{let{name:s,baseUrl:i,apiKey:u,models:c}=r.body;if(!s?.trim())throw nt("Provider name is required",400,"invalid_request");if(!i||!Q_(i))throw nt("Valid base URL is required",400,"invalid_request");if(!u?.trim())throw nt("API key is required",400,"invalid_request");if(!c||!Array.isArray(c)||c.length===0)throw nt("At least one model is required",400,"invalid_request");if(t.providerService.getProvider(r.body.name))throw nt(`Provider with name '${r.body.name}' already exists`,400,"provider_exists");return t.providerService.registerProvider(r.body)}),t.get("/providers",async()=>t.providerService.getProviders()),t.get("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]}}},async r=>{let n=t.providerService.getProvider(r.params.id);if(!n)throw nt("Provider not found",404,"provider_not_found");return n}),t.put("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]},body:{type:"object",properties:{name:{type:"string"},type:{type:"string",enum:["openai","anthropic"]},baseUrl:{type:"string"},apiKey:{type:"string"},models:{type:"array",items:{type:"string"}},enabled:{type:"boolean"}}}}},async(r,n)=>{let s=t.providerService.updateProvider(r.params.id,r.body);if(!s)throw nt("Provider not found",404,"provider_not_found");return s}),t.delete("/providers/:id",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]}}},async r=>{if(!t.providerService.deleteProvider(r.params.id))throw nt("Provider not found",404,"provider_not_found");return{message:"Provider deleted successfully"}}),t.patch("/providers/:id/toggle",{schema:{params:{type:"object",properties:{id:{type:"string"}},required:["id"]},body:{type:"object",properties:{enabled:{type:"boolean"}},required:["enabled"]}}},async(r,n)=>{if(!t.providerService.toggleProvider(r.params.id,r.body.enabled))throw nt("Provider not found",404,"provider_not_found");return{message:`Provider ${r.body.enabled?"enabled":"disabled"} successfully`}})};function Q_(t){try{return new URL(t),!0}catch{return!1}}var nn=class{constructor(e,r,n){this.configService=e;this.transformerService=r;this.logger=n;this.initializeCustomProviders()}providers=new Map;modelRoutes=new Map;initializeCustomProviders(){let e=this.configService.get("providers");if(e&&Array.isArray(e)){this.initializeFromProvidersArray(e);return}}initializeFromProvidersArray(e){e.forEach(r=>{try{if(!r.name||!r.api_base_url||!r.api_key)return;let n={};r.transformer&&Object.keys(r.transformer).forEach(s=>{s==="use"?Array.isArray(r.transformer.use)&&(n.use=r.transformer.use.map(i=>{if(Array.isArray(i)&&typeof i[0]=="string"){let u=this.transformerService.getTransformer(i[0]);if(u)return new u(i[1])}if(typeof i=="string"){let u=this.transformerService.getTransformer(i);return typeof u=="function"?new u:u}}).filter(i=>typeof i<"u")):Array.isArray(r.transformer[s]?.use)&&(n[s]={use:r.transformer[s].use.map(i=>{if(Array.isArray(i)&&typeof i[0]=="string"){let u=this.transformerService.getTransformer(i[0]);if(u)return new u(i[1])}if(typeof i=="string"){let u=this.transformerService.getTransformer(i);return typeof u=="function"?new u:u}}).filter(i=>typeof i<"u")})}),this.registerProvider({name:r.name,baseUrl:r.api_base_url,apiKey:r.api_key,models:r.models||[],transformer:r.transformer?n:void 0}),this.logger.info(`${r.name} provider registered`)}catch(n){this.logger.error(`${r.name} provider registered error: ${n}`)}})}registerProvider(e){let r={...e};return this.providers.set(r.name,r),e.models.forEach(n=>{let s=`${r.name},${n}`,i={provider:r.name,model:n,fullModel:s};this.modelRoutes.set(s,i),this.modelRoutes.has(n)||this.modelRoutes.set(n,i)}),r}getProviders(){return Array.from(this.providers.values())}getProvider(e){return this.providers.get(e)}updateProvider(e,r){let n=this.providers.get(e);if(!n)return null;let s={...n,...r,updatedAt:new Date};return this.providers.set(e,s),r.models&&(n.models.forEach(i=>{let u=`${n.name},${i}`;this.modelRoutes.delete(u),this.modelRoutes.delete(i)}),r.models.forEach(i=>{let u=`${n.name},${i}`,c={provider:n.name,model:i,fullModel:u};this.modelRoutes.set(u,c),this.modelRoutes.has(i)||this.modelRoutes.set(i,c)})),s}deleteProvider(e){let r=this.providers.get(e);return r?(r.models.forEach(n=>{let s=`${r.name},${n}`;this.modelRoutes.delete(s),this.modelRoutes.delete(n)}),this.providers.delete(e),!0):!1}toggleProvider(e,r){return!!this.providers.get(e)}resolveModelRoute(e){let r=this.modelRoutes.get(e);if(!r)return null;let n=this.providers.get(r.provider);return n?{provider:n,originalModel:e,targetModel:r.model}:null}getAvailableModelNames(){let e=[];return this.providers.forEach(r=>{r.models.forEach(n=>{e.push(n),e.push(`${r.name},${n}`)})}),e}getModelRoutes(){return Array.from(this.modelRoutes.values())}parseTransformerConfig(e){return e?Array.isArray(e)?e.reduce((r,n)=>{if(Array.isArray(n)){let[s,i={}]=n;r[s]=i}else r[n]={};return r},{}):e:{}}async getAvailableModels(){let e=[];return this.providers.forEach(r=>{r.models.forEach(n=>{e.push({id:n,object:"model",owned_by:r.name,provider:r.name}),e.push({id:`${r.name},${n}`,object:"model",owned_by:r.name,provider:r.name})})}),{object:"list",data:e}}};var Je=[];for(let t=0;t<256;++t)Je.push((t+256).toString(16).slice(1));function th(t,e=0){return(Je[t[e+0]]+Je[t[e+1]]+Je[t[e+2]]+Je[t[e+3]]+"-"+Je[t[e+4]]+Je[t[e+5]]+"-"+Je[t[e+6]]+Je[t[e+7]]+"-"+Je[t[e+8]]+Je[t[e+9]]+"-"+Je[t[e+10]]+Je[t[e+11]]+Je[t[e+12]]+Je[t[e+13]]+Je[t[e+14]]+Je[t[e+15]]).toLowerCase()}var rh=require("crypto"),Vo=new Uint8Array(256),Jo=Vo.length;function Pu(){return Jo>Vo.length-16&&((0,rh.randomFillSync)(Vo),Jo=0),Vo.slice(Jo,Jo+=16)}var nh=require("crypto"),Iu={randomUUID:nh.randomUUID};function Z_(t,e,r){if(Iu.randomUUID&&!e&&!t)return Iu.randomUUID();t=t||{};let n=t.random??t.rng?.()??Pu();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(r=r||0,r<0||r+16>e.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let s=0;s<16;++s)e[r+s]=n[s];return e}return th(n)}var Vt=Z_;var sh=t=>t<=0?"none":t<=1024?"low":t<=8192?"medium":"high";var oh=(t,e)=>(t.includes("base64")&&(t=t.split("base64").pop(),t.startsWith(",")&&(t=t.slice(1))),`data:${e};base64,${t}`);var Ko=class{constructor(e){this.options=e;this.useBearer=this.options?.UseBearer??!1}name="Anthropic";endPoint="/v1/messages";useBearer;logger;async auth(e,r){let n={};return this.useBearer?(n.authorization=`Bearer ${r.apiKey}`,n["x-api-key"]=void 0):(n["x-api-key"]=r.apiKey,n.authorization=void 0),{body:e,config:{headers:n}}}async transformRequestOut(e){let r=[];if(e.system){if(typeof e.system=="string")r.push({role:"system",content:e.system});else if(Array.isArray(e.system)&&e.system.length){let i=e.system.filter(u=>u.type==="text"&&u.text).map(u=>({type:"text",text:u.text,cache_control:u.cache_control}));r.push({role:"system",content:i})}}JSON.parse(JSON.stringify(e.messages||[]))?.forEach(i=>{if(i.role==="user"||i.role==="assistant"){if(typeof i.content=="string"){r.push({role:i.role,content:i.content});return}if(Array.isArray(i.content)){if(i.role==="user"){let u=i.content.filter(l=>l.type==="tool_result"&&l.tool_use_id);u.length&&u.forEach(l=>{let h={role:"tool",content:typeof l.content=="string"?l.content:JSON.stringify(l.content),tool_call_id:l.tool_use_id,cache_control:l.cache_control};r.push(h)});let c=i.content.filter(l=>l.type==="text"&&l.text||l.type==="image"&&l.source);c.length&&r.push({role:"user",content:c.map(l=>l?.type==="image"?{type:"image_url",image_url:{url:l.source?.type==="base64"?oh(l.source.data,l.source.media_type):l.source.url},media_type:l.source.media_type}:l)})}else if(i.role==="assistant"){let u={role:"assistant",content:""},c=i.content.filter(d=>d.type==="text"&&d.text);c.length&&(u.content=c.map(d=>d.text).join(`
|
|
73
|
+
`));let l=i.content.filter(d=>d.type==="tool_use"&&d.id);l.length&&(u.tool_calls=l.map(d=>({id:d.id,type:"function",function:{name:d.name,arguments:JSON.stringify(d.input||{})}})));let h=i.content.find(d=>d.type==="thinking"&&d.signature);h&&(u.thinking={content:h.thinking,signature:h.signature}),r.push(u)}return}}});let s={messages:r,model:e.model,max_tokens:e.max_tokens,temperature:e.temperature,stream:e.stream,tools:e.tools?.length?this.convertAnthropicToolsToUnified(e.tools):void 0,tool_choice:e.tool_choice};return e.thinking?(s.reasoning={effort:sh(e.thinking.budget_tokens),enabled:e.thinking.type==="enabled"},s.thinking={type:e.thinking.type,budget_tokens:e.thinking.budget_tokens}):e.reasoning&&(s.reasoning=e.reasoning,s.thinking={type:e.reasoning.enabled?"enabled":"disabled",budget_tokens:e.reasoning.max_tokens||1e4}),e.tool_choice&&(e.tool_choice.type==="tool"?s.tool_choice={type:"function",function:{name:e.tool_choice.name}}:s.tool_choice=e.tool_choice.type),s}async transformResponseIn(e,r){if(e.headers.get("Content-Type")?.includes("text/event-stream")){if(!e.body)throw new Error("Stream response body is null");let s=await this.convertOpenAIStreamToAnthropic(e.body,r);return new Response(s,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}else{let s=await e.json(),i=this.convertOpenAIResponseToAnthropic(s,r);return new Response(JSON.stringify(i),{headers:{"Content-Type":"application/json"}})}}convertAnthropicToolsToUnified(e){return e.map(r=>({type:"function",function:{name:r.name,description:r.description||"",parameters:r.input_schema}}))}async convertOpenAIStreamToAnthropic(e,r){return new ReadableStream({start:async s=>{let i=new TextEncoder,u=`msg_${Date.now()}`,c=null,l="unknown",h=!1,d=!1,p=!1,A=new Map,R=new Map,S=0,_=0,y=0,m=!1,D=!1,C=0,E=-1,v=()=>{let U=C;return C++,U},x=U=>{if(!m)try{s.enqueue(U);let X=new TextDecoder().decode(U);this.logger.debug({reqId:r.req.id,data:X,type:"send data"})}catch(X){if(X instanceof TypeError&&X.message.includes("Controller is already closed"))m=!0;else throw this.logger.debug({reqId:r.req.id,error:X instanceof Error?X.message:String(X),type:"send data error"}),X}},$=()=>{if(!m)try{if(E>=0){let X={type:"content_block_stop",index:E};x(i.encode(`event: content_block_stop
|
|
74
74
|
data: ${JSON.stringify(X)}
|
|
75
75
|
|
|
76
76
|
`)),E=-1}c?(x(i.encode(`event: message_delta
|
|
@@ -134,7 +134,7 @@ data: ${JSON.stringify(ye)}
|
|
|
134
134
|
`))}catch(ce){console.error(ce)}}}}}if(he?.finish_reason&&!m&&!p){if(_===0&&y===0&&console.error("Warning: No content in the stream response!"),E>=0){let G={type:"content_block_stop",index:E};x(i.encode(`event: content_block_stop
|
|
135
135
|
data: ${JSON.stringify(G)}
|
|
136
136
|
|
|
137
|
-
`)),E=-1}m||(c={type:"message_delta",delta:{stop_reason:{stop:"end_turn",length:"max_tokens",tool_calls:"tool_use",content_filter:"stop_sequence"}[he.finish_reason]||"end_turn",stop_sequence:null},usage:{input_tokens:(se.usage?.prompt_tokens||0)-(se.usage?.prompt_tokens_details?.cached_tokens||0),output_tokens:se.usage?.completion_tokens||0,cache_read_input_tokens:se.usage?.prompt_tokens_details?.cached_tokens||0}});break}}catch(se){this.logger?.error(`parseError: ${se.name} message: ${se.message} stack: ${se.stack} data: ${Ee}`)}}}$()}catch(U){if(!m)try{s.error(U)}catch(X){console.error(X)}}finally{if(V)try{V.releaseLock()}catch(U){console.error(U)}}},cancel:s=>{this.logger.debug({reqId:r.req.id},`cancle stream: ${s}`)}})}convertOpenAIResponseToAnthropic(e,r){this.logger.debug({reqId:r.req.id,response:e},"Original OpenAI response");try{let n=e.choices[0];if(!n)throw new Error("No choices found in OpenAI response");let s=[];if(n.message.annotations){let u=`srvtoolu_${Vt()}`;s.push({type:"server_tool_use",id:u,name:"web_search",input:{query:""}}),s.push({type:"web_search_tool_result",tool_use_id:u,content:n.message.annotations.map(c=>({type:"web_search_result",url:c.url_citation.url,title:c.url_citation.title}))})}n.message.content&&s.push({type:"text",text:n.message.content}),n.message.tool_calls&&n.message.tool_calls.length>0&&n.message.tool_calls.forEach(u=>{let c={};try{let l=u.function.arguments||"{}";typeof l=="object"?c=l:typeof l=="string"&&(c=JSON.parse(l))}catch{c={text:u.function.arguments||""}}s.push({type:"tool_use",id:u.id,name:u.function.name,input:c})}),n.message?.thinking?.content?s.push({type:"thinking",thinking:n.message.thinking.content,signature:n.message.thinking.signature}):n.message?.reasoning_content&&s.push({type:"thinking",thinking:n.message.reasoning_content,signature:void 0});let i={id:e.id,type:"message",role:"assistant",model:e.model,content:s,stop_reason:n.finish_reason==="stop"?"end_turn":n.finish_reason==="length"?"max_tokens":n.finish_reason==="tool_calls"?"tool_use":n.finish_reason==="content_filter"?"stop_sequence":"end_turn",stop_sequence:null,usage:{input_tokens:(e.usage?.prompt_tokens||0)-(e.usage?.prompt_tokens_details?.cached_tokens||0),output_tokens:e.usage?.completion_tokens||0,cache_read_input_tokens:e.usage?.prompt_tokens_details?.cached_tokens||0}};return this.logger.debug({reqId:r.req.id,result:i},"Conversion complete, final Anthropic response"),i}catch{throw nt(`Provider error: ${JSON.stringify(e)}`,500,"provider_error")}}};var Pn={TYPE_UNSPECIFIED:"TYPE_UNSPECIFIED",STRING:"STRING",NUMBER:"NUMBER",INTEGER:"INTEGER",BOOLEAN:"BOOLEAN",ARRAY:"ARRAY",OBJECT:"OBJECT",NULL:"NULL"};function
|
|
137
|
+
`)),E=-1}m||(c={type:"message_delta",delta:{stop_reason:{stop:"end_turn",length:"max_tokens",tool_calls:"tool_use",content_filter:"stop_sequence"}[he.finish_reason]||"end_turn",stop_sequence:null},usage:{input_tokens:(se.usage?.prompt_tokens||0)-(se.usage?.prompt_tokens_details?.cached_tokens||0),output_tokens:se.usage?.completion_tokens||0,cache_read_input_tokens:se.usage?.prompt_tokens_details?.cached_tokens||0}});break}}catch(se){this.logger?.error(`parseError: ${se.name} message: ${se.message} stack: ${se.stack} data: ${Ee}`)}}}$()}catch(U){if(!m)try{s.error(U)}catch(X){console.error(X)}}finally{if(V)try{V.releaseLock()}catch(U){console.error(U)}}},cancel:s=>{this.logger.debug({reqId:r.req.id},`cancle stream: ${s}`)}})}convertOpenAIResponseToAnthropic(e,r){this.logger.debug({reqId:r.req.id,response:e},"Original OpenAI response");try{let n=e.choices[0];if(!n)throw new Error("No choices found in OpenAI response");let s=[];if(n.message.annotations){let u=`srvtoolu_${Vt()}`;s.push({type:"server_tool_use",id:u,name:"web_search",input:{query:""}}),s.push({type:"web_search_tool_result",tool_use_id:u,content:n.message.annotations.map(c=>({type:"web_search_result",url:c.url_citation.url,title:c.url_citation.title}))})}n.message.content&&s.push({type:"text",text:n.message.content}),n.message.tool_calls&&n.message.tool_calls.length>0&&n.message.tool_calls.forEach(u=>{let c={};try{let l=u.function.arguments||"{}";typeof l=="object"?c=l:typeof l=="string"&&(c=JSON.parse(l))}catch{c={text:u.function.arguments||""}}s.push({type:"tool_use",id:u.id,name:u.function.name,input:c})}),n.message?.thinking?.content?s.push({type:"thinking",thinking:n.message.thinking.content,signature:n.message.thinking.signature}):n.message?.reasoning_content&&s.push({type:"thinking",thinking:n.message.reasoning_content,signature:void 0});let i={id:e.id,type:"message",role:"assistant",model:e.model,content:s,stop_reason:n.finish_reason==="stop"?"end_turn":n.finish_reason==="length"?"max_tokens":n.finish_reason==="tool_calls"?"tool_use":n.finish_reason==="content_filter"?"stop_sequence":"end_turn",stop_sequence:null,usage:{input_tokens:(e.usage?.prompt_tokens||0)-(e.usage?.prompt_tokens_details?.cached_tokens||0),output_tokens:e.usage?.completion_tokens||0,cache_read_input_tokens:e.usage?.prompt_tokens_details?.cached_tokens||0}};return this.logger.debug({reqId:r.req.id,result:i},"Conversion complete, final Anthropic response"),i}catch{throw nt(`Provider error: ${JSON.stringify(e)}`,500,"provider_error")}}};var Pn={TYPE_UNSPECIFIED:"TYPE_UNSPECIFIED",STRING:"STRING",NUMBER:"NUMBER",INTEGER:"INTEGER",BOOLEAN:"BOOLEAN",ARRAY:"ARRAY",OBJECT:"OBJECT",NULL:"NULL"};function eb(t,e){t.includes("null")&&(e.nullable=!0);let r=t.filter(n=>n!=="null");if(r.length===1){let n=r[0].toUpperCase();e.type=Object.values(Pn).includes(n)?n:Pn.TYPE_UNSPECIFIED}else{e.anyOf=[];for(let n of r){let s=n.toUpperCase();e.anyOf.push({type:Object.values(Pn).includes(s)?s:Pn.TYPE_UNSPECIFIED})}}}function Es(t){let e={},r=["items"],n=["anyOf"],s=["properties"];if(t.type&&t.anyOf)throw new Error("type and anyOf cannot be both populated.");let i=t.anyOf;i!=null&&Array.isArray(i)&&i.length==2&&(i[0]&&i[0].type==="null"?(e.nullable=!0,t=i[1]):i[1]&&i[1].type==="null"&&(e.nullable=!0,t=i[0])),t.type&&Array.isArray(t.type)&&eb(t.type,e);for(let[u,c]of Object.entries(t))if(c!=null)if(u=="type"){if(c==="null")throw new Error("type: null can not be the only possible type for the field.");if(Array.isArray(c))continue;let l=c.toUpperCase();e.type=Object.values(Pn).includes(l)?l:Pn.TYPE_UNSPECIFIED}else if(r.includes(u))e[u]=Es(c);else if(n.includes(u)){let l=[];for(let h of c){if(h.type=="null"){e.nullable=!0;continue}l.push(Es(h))}e[u]=l}else if(s.includes(u)){let l={};for(let[h,d]of Object.entries(c))l[h]=Es(d);e[u]=l}else{if(u==="additionalProperties")continue;e[u]=c}return e}function tb(t){if(t.functionDeclarations)for(let e of t.functionDeclarations)e.parameters&&(Object.keys(e.parameters).includes("$schema")?e.parametersJsonSchema||(e.parametersJsonSchema=e.parameters,delete e.parameters):e.parameters=Es(e.parameters)),e.response&&(Object.keys(e.response).includes("$schema")?e.responseJsonSchema||(e.responseJsonSchema=e.response,delete e.response):e.response=Es(e.response));return t}function Yo(t){let e=[],r=t.tools?.filter(l=>l.function.name!=="web_search")?.map(l=>({name:l.function.name,description:l.function.description,parametersJsonSchema:l.function.parameters}));r?.length&&e.push(tb({functionDeclarations:r})),t.tools?.find(l=>l.function.name==="web_search")&&e.push({googleSearch:{}});let s=[],i=t.messages.filter(l=>l.role==="tool");t.messages.filter(l=>l.role!=="tool").forEach(l=>{let h;l.role==="assistant"?h="model":(["user","system"].includes(l.role),h="user");let d=[];if(typeof l.content=="string"){let p={text:l.content};l?.thinking?.signature&&(p.thoughtSignature=l.thinking.signature),d.push(p)}else Array.isArray(l.content)?d.push(...l.content.map(p=>{if(p.type==="text")return{text:p.text||""};if(p.type==="image_url")return p.image_url.url.startsWith("http")?{file_data:{mime_type:p.media_type,file_uri:p.image_url.url}}:{inlineData:{mime_type:p.media_type,data:p.image_url.url?.split(",")?.pop()||p.image_url.url}}})):l.content&&typeof l.content=="object"&&(l.content.text?d.push({text:l.content.text}):d.push({text:JSON.stringify(l.content)}));if(Array.isArray(l.tool_calls)&&d.push(...l.tool_calls.map((p,A)=>({functionCall:{id:p.id||`tool_${Math.random().toString(36).substring(2,15)}`,name:p.function.name,args:JSON.parse(p.function.arguments||"{}")},thoughtSignature:A===0&&l.thinking?.signature?l.thinking?.signature:void 0}))),d.length===0&&d.push({text:""}),s.push({role:h,parts:d}),h==="model"&&l.tool_calls){let p=l.tool_calls.map(A=>{let R=i.find(S=>S.tool_call_id===A.id);return{functionResponse:{name:A?.function?.name,response:{result:R?.content}}}});s.push({role:"user",parts:p})}});let u={};if(t.reasoning&&t.reasoning.effort&&t.reasoning.effort!=="none")if(u.thinkingConfig={includeThoughts:!0},t.model.includes("gemini-3"))u.thinkingConfig.thinkingLevel=t.reasoning.effort;else{let l=t.model.includes("pro")?[128,32768]:[0,24576],h,d=t.reasoning.max_tokens;typeof d<"u"&&(d>=l[0]&&d<=l[1]?h=d:d<l[0]?h=l[0]:d>l[1]&&(h=l[1]),u.thinkingConfig.thinkingBudget=h)}let c={contents:s,tools:e.length?e:void 0,generationConfig:u};if(t.tool_choice){let l={functionCallingConfig:{}};t.tool_choice==="auto"?l.functionCallingConfig.mode="auto":t.tool_choice==="none"?l.functionCallingConfig.mode="none":t.tool_choice==="required"?l.functionCallingConfig.mode="any":t.tool_choice?.function?.name&&(l.functionCallingConfig.mode="any",l.functionCallingConfig.allowedFunctionNames=[t.tool_choice?.function?.name]),c.toolConfig=l}return c}function Xo(t){let e=t.contents,r=t.tools,n=t.model,s=t.max_tokens,i=t.temperature,u=t.stream,c=t.tool_choice,l={messages:[],model:n,max_tokens:s,temperature:i,stream:u,tool_choice:c};return Array.isArray(e)&&e.forEach(h=>{typeof h=="string"?l.messages.push({role:"user",content:h}):typeof h.text=="string"?l.messages.push({role:"user",content:h.text||null}):h.role==="user"?l.messages.push({role:"user",content:h?.parts?.map(d=>({type:"text",text:d.text||""}))||[]}):h.role==="model"&&l.messages.push({role:"assistant",content:h?.parts?.map(d=>({type:"text",text:d.text||""}))||[]})}),Array.isArray(r)&&(l.tools=[],r.forEach(h=>{Array.isArray(h.functionDeclarations)&&h.functionDeclarations.forEach(d=>{l.tools.push({type:"function",function:{name:d.name,description:d.description,parameters:d.parameters}})})})),l}async function Qo(t,e,r){if(t.headers.get("Content-Type")?.includes("application/json")){let n=await t.json();r?.debug({response:n},`${e} response:`);let s="",i="",u=n.candidates[0]?.content?.parts||[],c=[];for(let p of u)p.text&&p.thought===!0?s+=p.text:c.push(p);i=u.find(p=>p.thoughtSignature)?.thoughtSignature;let l=c?.filter(p=>p.functionCall)?.map(p=>({id:p.functionCall?.id||`tool_${Math.random().toString(36).substring(2,15)}`,type:"function",function:{name:p.functionCall?.name,arguments:JSON.stringify(p.functionCall?.args||{})}}))||[],h=c?.filter(p=>p.text)?.map(p=>p.text)?.join(`
|
|
138
138
|
`)||"",d={id:n.responseId,choices:[{finish_reason:n.candidates[0].finishReason?.toLowerCase()||null,index:0,message:{content:h,role:"assistant",tool_calls:l.length>0?l:void 0,...i&&{thinking:{content:s||"(no content)",signature:i}}}}],created:parseInt(new Date().getTime()/1e3+"",10),model:n.modelVersion,object:"chat.completion",usage:{completion_tokens:n.usageMetadata?.candidatesTokenCount||0,prompt_tokens:n.usageMetadata?.promptTokenCount||0,prompt_tokens_details:{cached_tokens:n.usageMetadata?.cachedContentTokenCount||0},total_tokens:n.usageMetadata?.totalTokenCount||0,output_tokens_details:{reasoning_tokens:n.usageMetadata?.thoughtsTokenCount||0}}};return new Response(JSON.stringify(d),{status:t.status,statusText:t.statusText,headers:t.headers})}else if(t.headers.get("Content-Type")?.includes("stream")){if(!t.body)return t;let n=new TextDecoder,s=new TextEncoder,i=!1,u=!1,c=!1,l="",h=0,d=-1,p=new ReadableStream({async start(A){let R=async(y,m)=>{if(y.startsWith("data: ")){let D=y.slice(6).trim();if(D){r?.debug({chunkStr:D},`${e} chunk:`);try{let C=JSON.parse(D);if(!C.candidates||!C.candidates[0]){r?.debug({chunkStr:D},"Invalid chunk structure");return}let E=C.candidates[0],v=E.content?.parts||[];v.filter(U=>U.text&&U.thought===!0).forEach(U=>{c||(c=!0);let X={choices:[{delta:{role:"assistant",content:null,thinking:{content:U.text}},finish_reason:null,index:h,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:C.responseId||"",model:C.modelVersion||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1"};m.enqueue(s.encode(`data: ${JSON.stringify(X)}
|
|
139
139
|
|
|
140
140
|
`))});let x=v.find(U=>U.thoughtSignature)?.thoughtSignature;if(x&&!i){if(!c){let X={choices:[{delta:{role:"assistant",content:null,thinking:{content:"(no content)"}},finish_reason:null,index:h,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:C.responseId||"",model:C.modelVersion||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1"};m.enqueue(s.encode(`data: ${JSON.stringify(X)}
|
|
@@ -153,10 +153,10 @@ data: ${JSON.stringify(G)}
|
|
|
153
153
|
`)),!u&&V&&(u=!0)}$.length>0&&($.forEach(U=>{h++,d++;let X={choices:[{delta:{role:"assistant",tool_calls:[{...U,index:d}]},finish_reason:E.finishReason?.toLowerCase()||null,index:h,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:C.responseId||"",model:C.modelVersion||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1",usage:{completion_tokens:C.usageMetadata?.candidatesTokenCount||0,prompt_tokens:C.usageMetadata?.promptTokenCount||0,prompt_tokens_details:{cached_tokens:C.usageMetadata?.cachedContentTokenCount||0},total_tokens:C.usageMetadata?.totalTokenCount||0,output_tokens_details:{reasoning_tokens:C.usageMetadata?.thoughtsTokenCount||0}}};E?.groundingMetadata?.groundingChunks?.length&&(X.choices[0].delta.annotations=E.groundingMetadata.groundingChunks.map((re,ie)=>{let le=E?.groundingMetadata?.groundingSupports?.filter(ge=>ge.groundingChunkIndices?.includes(ie));return{type:"url_citation",url_citation:{url:re?.web?.uri||"",title:re?.web?.title||"",content:le?.[0]?.segment?.text||"",start_index:le?.[0]?.segment?.startIndex||0,end_index:le?.[0]?.segment?.endIndex||0}}})),m.enqueue(s.encode(`data: ${JSON.stringify(X)}
|
|
154
154
|
|
|
155
155
|
`))}),!u&&V&&(u=!0))}catch(C){r?.error(`Error parsing ${e} stream chunk`,D,C.message)}}}},S=t.body.getReader(),_="";try{for(;;){let{done:y,value:m}=await S.read();if(y){_&&await R(_,A);break}_+=n.decode(m,{stream:!0});let D=_.split(`
|
|
156
|
-
`);_=D.pop()||"";for(let C of D)await R(C,A)}}catch(y){A.error(y)}finally{A.close()}}});return new Response(p,{status:t.status,statusText:t.statusText,headers:t.headers})}}var Zo=class{name="gemini";endPoint="/v1beta/models/:modelAndAction";async transformRequestIn(e,r){return{body:Yo(e),config:{url:new URL(`./${e.model}:${e.stream?"streamGenerateContent?alt=sse":"generateContent"}`,r.baseUrl),headers:{"x-goog-api-key":r.apiKey,Authorization:void 0}}}}transformRequestOut=Xo;async transformResponseOut(e){return Qo(e,this.name,this.logger)}};async function
|
|
156
|
+
`);_=D.pop()||"";for(let C of D)await R(C,A)}}catch(y){A.error(y)}finally{A.close()}}});return new Response(p,{status:t.status,statusText:t.statusText,headers:t.headers})}}var Zo=class{name="gemini";endPoint="/v1beta/models/:modelAndAction";async transformRequestIn(e,r){return{body:Yo(e),config:{url:new URL(`./${e.model}:${e.stream?"streamGenerateContent?alt=sse":"generateContent"}`,r.baseUrl),headers:{"x-goog-api-key":r.apiKey,Authorization:void 0}}}}transformRequestOut=Xo;async transformResponseOut(e){return Qo(e,this.name,this.logger)}};async function SS(){try{let{GoogleAuth:t}=await Promise.resolve().then(()=>Ue(Zl(),1));return(await(await new t({scopes:["https://www.googleapis.com/auth/cloud-platform"]}).getClient()).getAccessToken()).token||""}catch(t){throw console.error("Error getting access token:",t),new Error(`Failed to get access token for Vertex AI. Please ensure you have set up authentication using one of these methods:
|
|
157
157
|
1. Set GOOGLE_APPLICATION_CREDENTIALS to point to service account key file
|
|
158
158
|
2. Run "gcloud auth application-default login"
|
|
159
|
-
3. Use Google Cloud environment with default service account`)}}var ga=class{name="vertex-gemini";async transformRequestIn(e,r){let n=process.env.GOOGLE_CLOUD_PROJECT,s=process.env.GOOGLE_CLOUD_LOCATION||"us-central1";if(!n&&process.env.GOOGLE_APPLICATION_CREDENTIALS)try{let c=(await import("fs")).readFileSync(process.env.GOOGLE_APPLICATION_CREDENTIALS,"utf8"),l=JSON.parse(c);l&&l.project_id&&(n=l.project_id)}catch(u){console.error("Error extracting project_id from GOOGLE_APPLICATION_CREDENTIALS:",u)}if(!n)throw new Error("Project ID is required for Vertex AI. Set GOOGLE_CLOUD_PROJECT environment variable or ensure project_id is in GOOGLE_APPLICATION_CREDENTIALS file.");let i=await
|
|
159
|
+
3. Use Google Cloud environment with default service account`)}}var ga=class{name="vertex-gemini";async transformRequestIn(e,r){let n=process.env.GOOGLE_CLOUD_PROJECT,s=process.env.GOOGLE_CLOUD_LOCATION||"us-central1";if(!n&&process.env.GOOGLE_APPLICATION_CREDENTIALS)try{let c=(await import("fs")).readFileSync(process.env.GOOGLE_APPLICATION_CREDENTIALS,"utf8"),l=JSON.parse(c);l&&l.project_id&&(n=l.project_id)}catch(u){console.error("Error extracting project_id from GOOGLE_APPLICATION_CREDENTIALS:",u)}if(!n)throw new Error("Project ID is required for Vertex AI. Set GOOGLE_CLOUD_PROJECT environment variable or ensure project_id is in GOOGLE_APPLICATION_CREDENTIALS file.");let i=await SS();return{body:Yo(e),config:{url:new URL(`./v1beta1/projects/${n}/locations/${s}/publishers/google/models/${e.model}:${e.stream?"streamGenerateContent":"generateContent"}`,r.baseUrl.endsWith("/")?r.baseUrl:r.baseUrl+"/"||`https://${s}-aiplatform.googleapis.com`),headers:{Authorization:`Bearer ${i}`,"x-goog-api-key":void 0}}}}async transformRequestOut(e){return Xo(e)}async transformResponseOut(e){return Qo(e,this.name)}};var ya=class{name="deepseek";async transformRequestIn(e){return e.max_tokens&&e.max_tokens>8192&&(e.max_tokens=8192),e}async transformResponseOut(e){if(e.headers.get("Content-Type")?.includes("application/json")){let r=await e.json();return new Response(JSON.stringify(r),{status:e.status,statusText:e.statusText,headers:e.headers})}else if(e.headers.get("Content-Type")?.includes("stream")){if(!e.body)return e;let r=new TextDecoder,n=new TextEncoder,s="",i=!1,u="",c=new ReadableStream({async start(l){let h=e.body.getReader(),d=(A,R,S)=>{let _=A.split(`
|
|
160
160
|
`);for(let y of _)y.trim()&&R.enqueue(S.encode(y+`
|
|
161
161
|
`))},p=(A,R)=>{let{controller:S,encoder:_}=R;if(A.startsWith("data: ")&&A.trim()!=="data: [DONE]")try{let y=JSON.parse(A.slice(6));if(y.choices?.[0]?.delta?.reasoning_content){R.appendReasoningContent(y.choices[0].delta.reasoning_content);let m={...y,choices:[{...y.choices[0],delta:{...y.choices[0].delta,thinking:{content:y.choices[0].delta.reasoning_content}}}]};delete m.choices[0].delta.reasoning_content;let D=`data: ${JSON.stringify(m)}
|
|
162
162
|
|
|
@@ -208,16 +208,16 @@ Examples:
|
|
|
208
208
|
`);c=m.pop()||"";for(let D of m)if(D.trim())try{A(D,{controller:h,encoder:n,hasTextContent:()=>s,setHasTextContent:C=>s=C,reasoningContent:()=>i,appendReasoningContent:C=>i+=C,isReasoningComplete:()=>u,setReasoningComplete:C=>u=C})}catch(C){console.error("Error processing line:",D,C),h.enqueue(n.encode(D+`
|
|
209
209
|
`))}continue}let y=c.split(`
|
|
210
210
|
`);c=y.pop()||"";for(let m of y)if(m.trim())try{A(m,{controller:h,encoder:n,hasTextContent:()=>s,setHasTextContent:D=>s=D,reasoningContent:()=>i,appendReasoningContent:D=>i+=D,isReasoningComplete:()=>u,setReasoningComplete:D=>u=D})}catch(D){console.error("Error processing line:",m,D),h.enqueue(n.encode(m+`
|
|
211
|
-
`))}}}catch(R){console.error("Stream error:",R),h.error(R)}finally{try{d.releaseLock()}catch(R){console.error("Error releasing reader lock:",R)}h.close()}}});return new Response(l,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var Ea=class{name="cleancache";async transformRequestIn(e){return Array.isArray(e.messages)&&e.messages.forEach(r=>{Array.isArray(r.content)?r.content.forEach(n=>{n.cache_control&&delete n.cache_control}):r.cache_control&&delete r.cache_control}),e}};var
|
|
212
|
-
+`.includes(t)}function
|
|
213
|
-
+`.includes(t)}function
|
|
214
|
-
`||t==="\r"||t===" "||t==="\b"||t==="\f"}function Hr(t,e){let r=t.charCodeAt(e);return r===32||r===10||r===9||r===13}function
|
|
215
|
-
`,r:"\r",t:" "};function
|
|
216
|
-
`;)e++;return!0}return!1}function h(G){if(d(G)){if(
|
|
211
|
+
`))}}}catch(R){console.error("Stream error:",R),h.error(R)}finally{try{d.releaseLock()}catch(R){console.error("Error releasing reader lock:",R)}h.close()}}});return new Response(l,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var Ea=class{name="cleancache";async transformRequestIn(e){return Array.isArray(e.messages)&&e.messages.forEach(r=>{Array.isArray(r.content)?r.content.forEach(n=>{n.cache_control&&delete n.cache_control}):r.cache_control&&delete r.cache_control}),e}};var _y=Ue(Ou());var Sr=class extends Error{constructor(e,r){super(`${e} at position ${r}`),this.position=r}};function fy(t){return/^[0-9A-Fa-f]$/.test(t)}function Wr(t){return t>="0"&&t<="9"}function dy(t){return t>=" "}function Zs(t){return`,:[]/{}()
|
|
212
|
+
+`.includes(t)}function ef(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="_"||t==="$"}function tf(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="_"||t==="$"||t>="0"&&t<="9"}var rf=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,nf=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;function sf(t){return`,[]/{}
|
|
213
|
+
+`.includes(t)}function of(t){return eo(t)||kS.test(t)}var kS=/^[[{\w-]$/;function hy(t){return t===`
|
|
214
|
+
`||t==="\r"||t===" "||t==="\b"||t==="\f"}function Hr(t,e){let r=t.charCodeAt(e);return r===32||r===10||r===9||r===13}function py(t,e){let r=t.charCodeAt(e);return r===32||r===9||r===13}function my(t,e){let r=t.charCodeAt(e);return r===160||r>=8192&&r<=8202||r===8239||r===8287||r===12288}function eo(t){return af(t)||Aa(t)}function af(t){return t==='"'||t==="\u201C"||t==="\u201D"}function uf(t){return t==='"'}function Aa(t){return t==="'"||t==="\u2018"||t==="\u2019"||t==="`"||t==="\xB4"}function cf(t){return t==="'"}function is(t,e){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,n=t.lastIndexOf(e);return n!==-1?t.substring(0,n)+(r?"":t.substring(n+1)):t}function Ft(t,e){let r=t.length;if(!Hr(t,r-1))return t+e;for(;Hr(t,r-1);)r--;return t.substring(0,r)+e+t.substring(r)}function gy(t,e,r){return t.substring(0,e)+t.substring(e+r)}function yy(t){return/[,\n][ \t\r]*$/.test(t)}var DS={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},TS={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
215
|
+
`,r:"\r",t:" "};function lf(t){let e=0,r="";h(["```","[```","{```"]),i()||ge(),h(["```","```]","```}"]);let s=p(",");for(s&&u(),of(t[e])&&yy(r)?(s||(r=Ft(r,",")),m()):s&&(r=is(r,","));t[e]==="}"||t[e]==="]";)e++,u();if(e>=t.length)return r;le();function i(){u();let G=_()||y()||D()||E()||v()||$(!1)||V();return u(),G}function u(){let G=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,K=e,ae=c(G);do ae=l(),ae&&(ae=c(G));while(ae);return e>K}function c(G){let K=G?Hr:py,ae="";for(;;)if(K(t,e))ae+=t[e],e++;else if(my(t,e))ae+=" ",e++;else break;return ae.length>0?(r+=ae,!0):!1}function l(){if(t[e]==="/"&&t[e+1]==="*"){for(;e<t.length&&!vS(t,e);)e++;return e+=2,!0}if(t[e]==="/"&&t[e+1]==="/"){for(;e<t.length&&t[e]!==`
|
|
216
|
+
`;)e++;return!0}return!1}function h(G){if(d(G)){if(ef(t[e]))for(;e<t.length&&tf(t[e]);)e++;return u(),!0}return!1}function d(G){c(!0);for(let K of G){let ae=e+K.length;if(t.slice(e,ae)===K)return e=ae,!0}return!1}function p(G){return t[e]===G?(r+=t[e],e++,!0):!1}function A(G){return t[e]===G?(e++,!0):!1}function R(){return A("\\")}function S(){return u(),t[e]==="."&&t[e+1]==="."&&t[e+2]==="."?(e+=3,u(),A(","),!0):!1}function _(){if(t[e]==="{"){r+="{",e++,u(),A(",")&&u();let G=!0;for(;e<t.length&&t[e]!=="}";){let K;if(G?(K=!0,G=!1):(K=p(","),K||(r=Ft(r,",")),u()),S(),!(D()||$(!0))){t[e]==="}"||t[e]==="{"||t[e]==="]"||t[e]==="["||t[e]===void 0?r=is(r,","):Ee();break}u();let Me=p(":"),De=e>=t.length;Me||(of(t[e])||De?r=Ft(r,":"):se()),i()||(Me||De?r+="null":se())}return t[e]==="}"?(r+="}",e++):r=Ft(r,"}"),!0}return!1}function y(){if(t[e]==="["){r+="[",e++,u(),A(",")&&u();let G=!0;for(;e<t.length&&t[e]!=="]";)if(G?G=!1:p(",")||(r=Ft(r,",")),S(),!i()){r=is(r,",");break}return t[e]==="]"?(r+="]",e++):r=Ft(r,"]"),!0}return!1}function m(){let G=!0,K=!0;for(;K;)G?G=!1:p(",")||(r=Ft(r,",")),K=i();K||(r=is(r,",")),r=`[
|
|
217
217
|
${r}
|
|
218
|
-
]`}function D(){let G=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,ae=t[e]==="\\";if(ae&&(e++,ae=!0),eo(t[e])){let Me=
|
|
218
|
+
]`}function D(){let G=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,ae=t[e]==="\\";if(ae&&(e++,ae=!0),eo(t[e])){let Me=uf(t[e])?uf:cf(t[e])?cf:Aa(t[e])?Aa:af,De=e,W=r.length,ce='"';for(e++;;){if(e>=t.length){let ye=U(e-1);return!G&&Zs(t.charAt(ye))?(e=De,r=r.substring(0,W),D(!0)):(ce=Ft(ce,'"'),r+=ce,!0)}if(e===K)return ce=Ft(ce,'"'),r+=ce,!0;if(Me(t[e])){let ye=e,Pt=ce.length;if(ce+='"',e++,r+=ce,u(!1),G||e>=t.length||Zs(t[e])||eo(t[e])||Wr(t[e]))return C(),!0;let ve=U(ye-1),Ne=t.charAt(ve);if(Ne===",")return e=De,r=r.substring(0,W),D(!1,ve);if(Zs(Ne))return e=De,r=r.substring(0,W),D(!0);r=r.substring(0,W),e=ye+1,ce=`${ce.substring(0,Pt)}\\${ce.substring(Pt)}`}else if(G&&sf(t[e])){if(t[e-1]===":"&&rf.test(t.substring(De+1,e+2)))for(;e<t.length&&nf.test(t[e]);)ce+=t[e],e++;return ce=Ft(ce,'"'),r+=ce,C(),!0}else if(t[e]==="\\"){let ye=t.charAt(e+1);if(TS[ye]!==void 0)ce+=t.slice(e,e+2),e+=2;else if(ye==="u"){let ve=2;for(;ve<6&&fy(t[e+ve]);)ve++;ve===6?(ce+=t.slice(e,e+6),e+=6):e+ve>=t.length?e=t.length:he()}else ce+=ye,e+=2}else{let ye=t.charAt(e);ye==='"'&&t[e-1]!=="\\"?(ce+=`\\${ye}`,e++):hy(ye)?(ce+=DS[ye],e++):(dy(ye)||ie(ye),ce+=ye,e++)}ae&&R()}}return!1}function C(){let G=!1;for(u();t[e]==="+";){G=!0,e++,u(),r=is(r,'"',!0);let K=r.length;D()?r=gy(r,K,1):r=Ft(r,'"')}return G}function E(){let G=e;if(t[e]==="-"){if(e++,X())return re(G),!0;if(!Wr(t[e]))return e=G,!1}for(;Wr(t[e]);)e++;if(t[e]==="."){if(e++,X())return re(G),!0;if(!Wr(t[e]))return e=G,!1;for(;Wr(t[e]);)e++}if(t[e]==="e"||t[e]==="E"){if(e++,(t[e]==="-"||t[e]==="+")&&e++,X())return re(G),!0;if(!Wr(t[e]))return e=G,!1;for(;Wr(t[e]);)e++}if(!X())return e=G,!1;if(e>G){let K=t.slice(G,e),ae=/^0\d/.test(K);return r+=ae?`"${K}"`:K,!0}return!1}function v(){return x("true","true")||x("false","false")||x("null","null")||x("True","true")||x("False","false")||x("None","null")}function x(G,K){return t.slice(e,e+G.length)===G?(r+=K,e+=G.length,!0):!1}function $(G){let K=e;if(ef(t[e])){for(;e<t.length&&tf(t[e]);)e++;let ae=e;for(;Hr(t,ae);)ae++;if(t[ae]==="(")return e=ae+1,i(),t[e]===")"&&(e++,t[e]===";"&&e++),!0}for(;e<t.length&&!sf(t[e])&&!eo(t[e])&&(!G||t[e]!==":");)e++;if(t[e-1]===":"&&rf.test(t.substring(K,e+2)))for(;e<t.length&&nf.test(t[e]);)e++;if(e>K){for(;Hr(t,e-1)&&e>0;)e--;let ae=t.slice(K,e);return r+=ae==="undefined"?"null":JSON.stringify(ae),t[e]==='"'&&e++,!0}}function V(){if(t[e]==="/"){let G=e;for(e++;e<t.length&&(t[e]!=="/"||t[e-1]==="\\");)e++;return e++,r+=`"${t.substring(G,e)}"`,!0}}function U(G){let K=G;for(;K>0&&Hr(t,K);)K--;return K}function X(){return e>=t.length||Zs(t[e])||Hr(t,e)}function re(G){r+=`${t.slice(G,e)}0`}function ie(G){throw new Sr(`Invalid character ${JSON.stringify(G)}`,e)}function le(){throw new Sr(`Unexpected character ${JSON.stringify(t[e])}`,e)}function ge(){throw new Sr("Unexpected end of json string",t.length)}function Ee(){throw new Sr("Object key expected",e)}function se(){throw new Sr("Colon expected",e)}function he(){let G=t.slice(e,e+6);throw new Sr(`Invalid unicode character "${G}"`,e)}}function vS(t,e){return t[e]==="*"&&t[e+1]==="/"}function ff(t,e){if(!t||t.trim()===""||t==="{}")return"{}";try{return JSON.parse(t),e?.debug("\u5DE5\u5177\u8C03\u7528\u53C2\u6570\u6807\u51C6JSON\u89E3\u6790\u6210\u529F / Tool arguments standard JSON parsing successful"),t}catch(r){try{let n=_y.default.parse(t);return e?.debug("Tool arguments JSON5 parsing successful"),JSON.stringify(n)}catch(n){try{let s=lf(t);return e?.debug("Tool arguments safely repaired"),s}catch(s){return e?.error(`JSON parsing failed: ${r.message}. JSON5 parsing failed: ${n.message}. JSON repair failed: ${s.message}. Input data: ${JSON.stringify(t)}`),e?.debug("Returning safe empty object as fallback"),"{}"}}}}var Sa=class{name="enhancetool";async transformResponseOut(e){if(e.headers.get("Content-Type")?.includes("application/json")){let r=await e.json();if(r?.choices?.[0]?.message?.tool_calls?.length)for(let n of r.choices[0].message.tool_calls)n.function?.arguments&&(n.function.arguments=ff(n.function.arguments,this.logger));return new Response(JSON.stringify(r),{status:e.status,statusText:e.statusText,headers:e.headers})}else if(e.headers.get("Content-Type")?.includes("stream")){if(!e.body)return e;let r=new TextDecoder,n=new TextEncoder,s={},i=!1,u="",c=!1,l=!1,h="",d=new ReadableStream({async start(p){let A=e.body.getReader(),R=(y,m,D)=>{let C=y.split(`
|
|
219
219
|
`);for(let E of C)E.trim()&&m.enqueue(D.encode(E+`
|
|
220
|
-
`))},S=(y,m,D)=>{let C="";try{C=
|
|
220
|
+
`))},S=(y,m,D)=>{let C="";try{C=ff(s.arguments||"",this.logger)}catch($){console.error(`${$.message} ${$.stack} \u5DE5\u5177\u8C03\u7528\u53C2\u6570\u89E3\u6790\u5931\u8D25: ${JSON.stringify(s)}`),C=s.arguments||""}let E={role:"assistant",tool_calls:[{function:{name:s.name,arguments:C},id:s.id,index:s.index,type:"function"}]},v={...y,choices:[{...y.choices[0],delta:E}]};v.choices[0].delta.content!==void 0&&delete v.choices[0].delta.content;let x=`data: ${JSON.stringify(v)}
|
|
221
221
|
|
|
222
222
|
`;m.enqueue(D.encode(x))},_=(y,m)=>{let{controller:D,encoder:C}=m;if(y.startsWith("data: ")&&y.trim()!=="data: [DONE]"){let E=y.slice(6);try{let v=JSON.parse(E);if(v.choices?.[0]?.delta?.tool_calls?.length){let $=v.choices[0].delta.tool_calls[0];if(typeof s.index>"u"){s={index:$.index,name:$.function?.name||"",id:$.id||"",arguments:$.function?.arguments||""},$.function?.arguments&&($.function.arguments="");let V=`data: ${JSON.stringify(v)}
|
|
223
223
|
|
|
@@ -241,7 +241,7 @@ ${r}
|
|
|
241
241
|
`))}else S.enqueue(_.encode(A+`
|
|
242
242
|
`))};try{for(;;){let{done:A,value:R}=await h.read();if(A){u.trim()&&d(u,l,n);break}let S=r.decode(R,{stream:!0});u+=S;let _=u.split(`
|
|
243
243
|
`);u=_.pop()||"";for(let y of _)if(y.trim())try{p(y,{controller:l,encoder:n,reasoningContent:()=>s,appendReasoningContent:m=>s+=m,isReasoningComplete:()=>i,setReasoningComplete:m=>i=m})}catch(m){console.error("Error processing line:",y,m),l.enqueue(n.encode(y+`
|
|
244
|
-
`))}}}catch(A){console.error("Stream error:",A),l.error(A)}finally{try{h.releaseLock()}catch(A){console.error("Error releasing reader lock:",A)}l.close()}}});return new Response(c,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var Da=class{constructor(e){this.options=e;this.max_tokens=this.options?.max_tokens,this.temperature=this.options?.temperature,this.top_p=this.options?.top_p,this.top_k=this.options?.top_k,this.repetition_penalty=this.options?.repetition_penalty}static TransformerName="sampling";max_tokens;temperature;top_p;top_k;repetition_penalty;async transformRequestIn(e){return e.max_tokens&&e.max_tokens>this.max_tokens&&(e.max_tokens=this.max_tokens),typeof this.temperature<"u"&&(e.temperature=this.temperature),typeof this.top_p<"u"&&(e.top_p=this.top_p),typeof this.top_k<"u"&&(e.top_k=this.top_k),typeof this.repetition_penalty<"u"&&(e.repetition_penalty=this.repetition_penalty),e}};var Ta=class{static TransformerName="maxcompletiontokens";async transformRequestIn(e){return e.max_tokens&&(e.max_completion_tokens=e.max_tokens,delete e.max_tokens),e}};function
|
|
244
|
+
`))}}}catch(A){console.error("Stream error:",A),l.error(A)}finally{try{h.releaseLock()}catch(A){console.error("Error releasing reader lock:",A)}l.close()}}});return new Response(c,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var Da=class{constructor(e){this.options=e;this.max_tokens=this.options?.max_tokens,this.temperature=this.options?.temperature,this.top_p=this.options?.top_p,this.top_k=this.options?.top_k,this.repetition_penalty=this.options?.repetition_penalty}static TransformerName="sampling";max_tokens;temperature;top_p;top_k;repetition_penalty;async transformRequestIn(e){return e.max_tokens&&e.max_tokens>this.max_tokens&&(e.max_tokens=this.max_tokens),typeof this.temperature<"u"&&(e.temperature=this.temperature),typeof this.top_p<"u"&&(e.top_p=this.top_p),typeof this.top_k<"u"&&(e.top_k=this.top_k),typeof this.repetition_penalty<"u"&&(e.repetition_penalty=this.repetition_penalty),e}};var Ta=class{static TransformerName="maxcompletiontokens";async transformRequestIn(e){return e.max_tokens&&(e.max_completion_tokens=e.max_tokens,delete e.max_tokens),e}};function by(t){let e=[];for(let n=0;n<t.messages.length;n++){let s=t.messages[n],i=n===t.messages.length-1,u=s.role==="assistant",c=[];typeof s.content=="string"?c.push({type:"text",text:s.content}):Array.isArray(s.content)&&s.content.forEach(l=>{l.type==="text"?c.push({type:"text",text:l.text||""}):l.type==="image_url"&&c.push({type:"image",source:{type:"base64",media_type:l.media_type||"image/jpeg",data:l.image_url.url}})}),!(!i&&c.length===0&&!s.tool_calls&&!s.content)&&(i&&u&&c.length===0&&s.tool_calls&&c.push({type:"text",text:""}),e.push({role:s.role==="assistant"?"assistant":"user",content:c}))}let r={anthropic_version:"vertex-2023-10-16",messages:e,max_tokens:t.max_tokens||1e3,stream:t.stream||!1,...t.temperature&&{temperature:t.temperature}};return t.tools&&t.tools.length>0&&(r.tools=t.tools.map(n=>({name:n.function.name,description:n.function.description,input_schema:n.function.parameters}))),t.tool_choice&&(t.tool_choice==="auto"||t.tool_choice==="none"?r.tool_choice=t.tool_choice:typeof t.tool_choice=="string"&&(r.tool_choice={type:"tool",name:t.tool_choice})),r}function Cy(t){let e=t,n={messages:e.messages.map(s=>{let i=s.content.map(u=>u.type==="text"?{type:"text",text:u.text||""}:u.type==="image"&&u.source?{type:"image_url",image_url:{url:u.source.data},media_type:u.source.media_type}:{type:"text",text:""});return{role:s.role,content:i}}),model:t.model||"claude-sonnet-4@20250514",max_tokens:e.max_tokens,temperature:e.temperature,stream:e.stream};return e.tools&&e.tools.length>0&&(n.tools=e.tools.map(s=>({type:"function",function:{name:s.name,description:s.description,parameters:{type:"object",properties:s.input_schema.properties,required:s.input_schema.required,additionalProperties:s.input_schema.additionalProperties,$schema:s.input_schema.$schema}}}))),e.tool_choice&&(typeof e.tool_choice=="string"?n.tool_choice=e.tool_choice:e.tool_choice.type==="tool"&&(n.tool_choice=e.tool_choice.name)),n}async function wy(t,e,r){if(t.headers.get("Content-Type")?.includes("application/json")){let n=await t.json(),s;n.tool_use&&n.tool_use.length>0&&(s=n.tool_use.map(u=>({id:u.id,type:"function",function:{name:u.name,arguments:JSON.stringify(u.input)}})));let i={id:n.id,choices:[{finish_reason:n.stop_reason||null,index:0,message:{content:n.content[0]?.text||"",role:"assistant",...s&&{tool_calls:s}}}],created:parseInt(new Date().getTime()/1e3+"",10),model:n.model,object:"chat.completion",usage:{completion_tokens:n.usage.output_tokens,prompt_tokens:n.usage.input_tokens,total_tokens:n.usage.input_tokens+n.usage.output_tokens}};return new Response(JSON.stringify(i),{status:t.status,statusText:t.statusText,headers:t.headers})}else if(t.headers.get("Content-Type")?.includes("stream")){if(!t.body)return t;let n=new TextDecoder,s=new TextEncoder,i=(c,l)=>{if(c.startsWith("data: ")){let h=c.slice(6).trim();if(h){r?.debug({chunkStr:h},`${e} chunk:`);try{let d=JSON.parse(h);if(d.type==="content_block_delta"&&d.delta?.type==="text_delta"){let p={choices:[{delta:{role:"assistant",content:d.delta.text||""},finish_reason:null,index:0,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:d.id||"",model:d.model||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1",usage:{completion_tokens:d.usage?.output_tokens||0,prompt_tokens:d.usage?.input_tokens||0,total_tokens:(d.usage?.input_tokens||0)+(d.usage?.output_tokens||0)}};l.enqueue(s.encode(`data: ${JSON.stringify(p)}
|
|
245
245
|
|
|
246
246
|
`))}else if(d.type==="content_block_delta"&&d.delta?.type==="input_json_delta"){let p={choices:[{delta:{tool_calls:[{index:d.index||0,function:{arguments:d.delta.partial_json||""}}]},finish_reason:null,index:0,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:d.id||"",model:d.model||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1",usage:{completion_tokens:d.usage?.output_tokens||0,prompt_tokens:d.usage?.input_tokens||0,total_tokens:(d.usage?.input_tokens||0)+(d.usage?.output_tokens||0)}};l.enqueue(s.encode(`data: ${JSON.stringify(p)}
|
|
247
247
|
|
|
@@ -254,10 +254,10 @@ ${r}
|
|
|
254
254
|
`));else{let p={choices:[{delta:{role:"assistant",content:d.content?.[0]?.text||""},finish_reason:d.stop_reason?.toLowerCase()||null,index:0,logprobs:null}],created:parseInt(new Date().getTime()/1e3+"",10),id:d.id||"",model:d.model||"",object:"chat.completion.chunk",system_fingerprint:"fp_a49d71b8a1",usage:{completion_tokens:d.usage?.output_tokens||0,prompt_tokens:d.usage?.input_tokens||0,total_tokens:(d.usage?.input_tokens||0)+(d.usage?.output_tokens||0)}};l.enqueue(s.encode(`data: ${JSON.stringify(p)}
|
|
255
255
|
|
|
256
256
|
`))}}catch(d){r?.error(`Error parsing ${e} stream chunk`,h,d.message)}}}},u=new ReadableStream({async start(c){let l=t.body.getReader(),h="";try{for(;;){let{done:d,value:p}=await l.read();if(d){h&&i(h,c);break}h+=n.decode(p,{stream:!0});let A=h.split(`
|
|
257
|
-
`);h=A.pop()||"";for(let R of A)i(R,c)}}catch(d){c.error(d)}finally{c.close()}}});return new Response(u,{status:t.status,statusText:t.statusText,headers:t.headers})}return t}async function
|
|
257
|
+
`);h=A.pop()||"";for(let R of A)i(R,c)}}catch(d){c.error(d)}finally{c.close()}}});return new Response(u,{status:t.status,statusText:t.statusText,headers:t.headers})}return t}async function RS(){try{let{GoogleAuth:t}=await Promise.resolve().then(()=>Ue(Zl(),1));return(await(await new t({scopes:["https://www.googleapis.com/auth/cloud-platform"]}).getClient()).getAccessToken()).token||""}catch(t){throw console.error("Error getting access token:",t),new Error(`Failed to get access token for Vertex AI. Please ensure you have set up authentication using one of these methods:
|
|
258
258
|
1. Set GOOGLE_APPLICATION_CREDENTIALS to point to service account key file
|
|
259
259
|
2. Run "gcloud auth application-default login"
|
|
260
|
-
3. Use Google Cloud environment with default service account`)}}var va=class{name="vertex-claude";async transformRequestIn(e,r){let n=process.env.GOOGLE_CLOUD_PROJECT,s=process.env.GOOGLE_CLOUD_LOCATION||"us-east5";if(!n&&process.env.GOOGLE_APPLICATION_CREDENTIALS)try{let c=(await import("fs")).readFileSync(process.env.GOOGLE_APPLICATION_CREDENTIALS,"utf8"),l=JSON.parse(c);l&&l.project_id&&(n=l.project_id)}catch(u){console.error("Error extracting project_id from GOOGLE_APPLICATION_CREDENTIALS:",u)}if(!n)throw new Error("Project ID is required for Vertex AI. Set GOOGLE_CLOUD_PROJECT environment variable or ensure project_id is in GOOGLE_APPLICATION_CREDENTIALS file.");let i=await
|
|
260
|
+
3. Use Google Cloud environment with default service account`)}}var va=class{name="vertex-claude";async transformRequestIn(e,r){let n=process.env.GOOGLE_CLOUD_PROJECT,s=process.env.GOOGLE_CLOUD_LOCATION||"us-east5";if(!n&&process.env.GOOGLE_APPLICATION_CREDENTIALS)try{let c=(await import("fs")).readFileSync(process.env.GOOGLE_APPLICATION_CREDENTIALS,"utf8"),l=JSON.parse(c);l&&l.project_id&&(n=l.project_id)}catch(u){console.error("Error extracting project_id from GOOGLE_APPLICATION_CREDENTIALS:",u)}if(!n)throw new Error("Project ID is required for Vertex AI. Set GOOGLE_CLOUD_PROJECT environment variable or ensure project_id is in GOOGLE_APPLICATION_CREDENTIALS file.");let i=await RS();return{body:by(e),config:{url:new URL(`/v1/projects/${n}/locations/${s}/publishers/anthropic/models/${e.model}:${e.stream?"streamRawPredict":"rawPredict"}`,`https://${s}-aiplatform.googleapis.com`).toString(),headers:{Authorization:`Bearer ${i}`,"Content-Type":"application/json"}}}}async transformRequestOut(e){return Cy(e)}async transformResponseOut(e){return wy(e,this.name,this.logger)}};var Ra=class{name="cerebras";async transformRequestIn(e,r){let n=JSON.parse(JSON.stringify(e));return n.reasoning?delete n.reasoning:n.disable_reasoning=!1,{body:n,config:{headers:{Authorization:`Bearer ${r.apiKey}`,"Content-Type":"application/json"}}}}async transformResponseOut(e){return e}};var Oa=class{name="streamoptions";async transformRequestIn(e){return e.stream&&(e.stream_options={include_usage:!0}),e}};var Fa=class{name="OpenAI";endPoint="/v1/chat/completions";async transformRequestIn(e){return e.thinking?.type==="enabled"?e.enable_thinking=!0:e.enable_thinking===void 0&&!e.thinking&&(e.enable_thinking=!1),e}};var xa=class{static TransformerName="customparams";options;constructor(e={}){this.options=e}async transformRequestIn(e){let r={...e},n=Object.entries(this.options);for(let[s,i]of n)if(s in r)if(typeof r[s]=="object"&&typeof i=="object"&&!Array.isArray(r[s])&&!Array.isArray(i)&&r[s]!==null&&i!==null)r[s]=this.deepMergeObjects(r[s],i);else continue;else r[s]=this.cloneValue(i);return r}async transformResponseOut(e){return e}deepMergeObjects(e,r){let n={...e};for(let[s,i]of Object.entries(r))s in n&&typeof n[s]=="object"&&typeof i=="object"&&!Array.isArray(n[s])&&!Array.isArray(i)&&n[s]!==null&&i!==null?n[s]=this.deepMergeObjects(n[s],i):n[s]=this.cloneValue(i);return n}cloneValue(e){if(e===null||typeof e!="object")return e;if(Array.isArray(e))return e.map(n=>this.cloneValue(n));let r={};for(let[n,s]of Object.entries(e))r[n]=this.cloneValue(s);return r}};var Pa=class{constructor(e){this.options=e}static TransformerName="vercel";endPoint="/v1/chat/completions";async transformRequestIn(e){return e.model.includes("claude")?e.messages.forEach(r=>{Array.isArray(r.content)&&r.content.forEach(n=>{n.type==="image_url"&&(n.image_url.url.startsWith("http")||(n.image_url.url=`data:${n.media_type};base64,${n.image_url.url}`),delete n.media_type)})}):e.messages.forEach(r=>{Array.isArray(r.content)?r.content.forEach(n=>{n.cache_control&&delete n.cache_control,n.type==="image_url"&&(n.image_url.url.startsWith("http")||(n.image_url.url=`data:${n.media_type};base64,${n.image_url.url}`),delete n.media_type)}):r.cache_control&&delete r.cache_control}),Object.assign(e,this.options||{}),e}async transformResponseOut(e){if(e.headers.get("Content-Type")?.includes("application/json")){let r=await e.json();return new Response(JSON.stringify(r),{status:e.status,statusText:e.statusText,headers:e.headers})}else if(e.headers.get("Content-Type")?.includes("stream")){if(!e.body)return e;let r=new TextDecoder,n=new TextEncoder,s=!1,i="",u=!1,c=!1,l="",h=new ReadableStream({async start(d){let p=e.body.getReader(),A=(S,_,y)=>{let m=S.split(`
|
|
261
261
|
`);for(let D of m)D.trim()&&_.enqueue(y.encode(D+`
|
|
262
262
|
`))},R=(S,_)=>{let{controller:y,encoder:m}=_;if(S.startsWith("data: ")&&S.trim()!=="data: [DONE]"){let D=S.slice(6);try{let C=JSON.parse(D);if(C.usage&&(this.logger?.debug({usage:C.usage,hasToolCall:c},"usage"),C.choices[0].finish_reason=c?"tool_calls":"stop"),C.choices?.[0]?.finish_reason==="error"&&y.enqueue(m.encode(`data: ${JSON.stringify({error:C.choices?.[0].error})}
|
|
263
263
|
|
|
@@ -299,14 +299,14 @@ ${r}
|
|
|
299
299
|
`))}}i.trim()&&h.enqueue(s.encode(i+`
|
|
300
300
|
`)),u||h.enqueue(s.encode(`data: [DONE]
|
|
301
301
|
|
|
302
|
-
`))}catch(S){console.error("Stream error:",S),h.error(S)}finally{try{d.releaseLock()}catch(S){console.error("Error releasing reader lock:",S)}h.close()}}});return new Response(l,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"}})}return e}normalizeRequestContent(e,r){let n={...e};if(delete n.cache_control,e.type==="text")return{type:r==="assistant"?"output_text":"input_text",text:e.text};if(e.type==="image_url"){console.log(e);let s={type:r==="assistant"?"output_image":"input_image"};return typeof e.image_url?.url=="string"&&(s.image_url=e.image_url.url),s}return null}convertResponseToChat(e){let r=e.output?.find(h=>h.type==="message"),n=e.output?.find(h=>h.type==="function_call"),s;r?.content?.length&&r?.content[0].annotations&&(s=r.content[0].annotations.map(h=>({type:"url_citation",url_citation:{url:h.url||"",title:h.title||"",content:"",start_index:h.start_index||0,end_index:h.end_index||0}}))),this.logger.debug({data:s,type:"url_citation"});let i=null,u=null,c=null;if(r&&r.reasoning&&(c={content:r.reasoning}),r&&r.content){let h=[],d=[];if(r.content.forEach(p=>{if(p.type==="output_text")h.push(p.text||"");else if(p.type==="output_image"){let A=this.buildImageContent({url:p.image_url,mime_type:p.mime_type});A&&d.push(A)}else if(p.type==="output_image_base64"){let A=this.buildImageContent({b64_json:p.image_base64,mime_type:p.mime_type});A&&d.push(A)}}),d.length>0){let p=[];h.length>0&&p.push({type:"text",text:h.join("")}),p.push(...d),i=p}else i=h.join("")}return n&&(u=[{id:n.call_id||n.id,function:{name:n.name,arguments:n.arguments},type:"function"}]),{id:e.id||"chatcmpl-"+Date.now(),object:"chat.completion",created:e.created_at,model:e.model,choices:[{index:0,message:{role:"assistant",content:i||null,tool_calls:u,thinking:c,annotations:s},logprobs:null,finish_reason:u?"tool_calls":"stop"}],usage:e.usage?{prompt_tokens:e.usage.input_tokens||0,completion_tokens:e.usage.output_tokens||0,total_tokens:e.usage.total_tokens||0}:null}}buildImageContent(e){return e&&(e.url||e.b64_json)?{type:"image_url",image_url:{url:e.url||"",b64_json:e.b64_json},media_type:e.mime_type}:null}};var
|
|
302
|
+
`))}catch(S){console.error("Stream error:",S),h.error(S)}finally{try{d.releaseLock()}catch(S){console.error("Error releasing reader lock:",S)}h.close()}}});return new Response(l,{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"}})}return e}normalizeRequestContent(e,r){let n={...e};if(delete n.cache_control,e.type==="text")return{type:r==="assistant"?"output_text":"input_text",text:e.text};if(e.type==="image_url"){console.log(e);let s={type:r==="assistant"?"output_image":"input_image"};return typeof e.image_url?.url=="string"&&(s.image_url=e.image_url.url),s}return null}convertResponseToChat(e){let r=e.output?.find(h=>h.type==="message"),n=e.output?.find(h=>h.type==="function_call"),s;r?.content?.length&&r?.content[0].annotations&&(s=r.content[0].annotations.map(h=>({type:"url_citation",url_citation:{url:h.url||"",title:h.title||"",content:"",start_index:h.start_index||0,end_index:h.end_index||0}}))),this.logger.debug({data:s,type:"url_citation"});let i=null,u=null,c=null;if(r&&r.reasoning&&(c={content:r.reasoning}),r&&r.content){let h=[],d=[];if(r.content.forEach(p=>{if(p.type==="output_text")h.push(p.text||"");else if(p.type==="output_image"){let A=this.buildImageContent({url:p.image_url,mime_type:p.mime_type});A&&d.push(A)}else if(p.type==="output_image_base64"){let A=this.buildImageContent({b64_json:p.image_base64,mime_type:p.mime_type});A&&d.push(A)}}),d.length>0){let p=[];h.length>0&&p.push({type:"text",text:h.join("")}),p.push(...d),i=p}else i=h.join("")}return n&&(u=[{id:n.call_id||n.id,function:{name:n.name,arguments:n.arguments},type:"function"}]),{id:e.id||"chatcmpl-"+Date.now(),object:"chat.completion",created:e.created_at,model:e.model,choices:[{index:0,message:{role:"assistant",content:i||null,tool_calls:u,thinking:c,annotations:s},logprobs:null,finish_reason:u?"tool_calls":"stop"}],usage:e.usage?{prompt_tokens:e.usage.input_tokens||0,completion_tokens:e.usage.output_tokens||0,total_tokens:e.usage.total_tokens||0}:null}}buildImageContent(e){return e&&(e.url||e.b64_json)?{type:"image_url",image_url:{url:e.url||"",b64_json:e.b64_json},media_type:e.mime_type}:null}};var df=`Always think before answering. Even if the problem seems simple, always write down your reasoning process explicitly.
|
|
303
303
|
|
|
304
304
|
Output format:
|
|
305
305
|
<reasoning_content>
|
|
306
306
|
Your detailed thinking process goes here
|
|
307
307
|
</reasoning_content>
|
|
308
|
-
Your final answer must follow after the closing tag above.`,
|
|
309
|
-
${s.content}`),delete s.thinking)});let n=e.messages[e.messages.length-1];return n.role==="user"&&(Array.isArray(n.content)?n.content.push({type:"text",text:
|
|
308
|
+
Your final answer must follow after the closing tag above.`,OS=10,Na=class{name="forcereasoning";async transformRequestIn(e){let r=0;e.messages.filter(s=>s.role==="assistant").reverse().forEach(s=>{s.thinking&&(s.thinking.content&&(!s.content||r<OS)&&(r++,s.content=`<reasoning_content>${s.thinking.content}</reasoning_content>
|
|
309
|
+
${s.content}`),delete s.thinking)});let n=e.messages[e.messages.length-1];return n.role==="user"&&(Array.isArray(n.content)?n.content.push({type:"text",text:df}):n.content=[{type:"text",text:df},{type:"text",text:n.content||""}]),n.role==="tool"&&e.messages.push({role:"user",content:[{type:"text",text:df}]}),e}async transformResponseOut(e){let r="<reasoning_content>",n="</reasoning_content>";if(e.headers.get("Content-Type")?.includes("application/json")){let s=await e.json();if(s.choices[0]?.message.content){let i=/<reasoning_content>(.*?)<\/reasoning_content>/s,u=s.choices[0]?.message.content.match(i);u&&u[1]&&(s.thinking={content:u[1]})}return new Response(JSON.stringify(s),{status:e.status,statusText:e.statusText,headers:e.headers})}else if(e.headers.get("Content-Type")?.includes("stream")){if(!e.body)return e;let s=0,i=new TextDecoder,u=new TextEncoder,c=new ReadableStream({async start(l){let h=e.body.getReader(),d="",p="SEARCHING",A="",R="",S=(_,y)=>{if(typeof y!="string"){_.choices?.[0]?.delta&&Object.keys(_.choices[0].delta).length>0&&!_.choices[0].delta.content&&(_.choices[0].index=s,l.enqueue(u.encode(`data: ${JSON.stringify(_)}
|
|
310
310
|
|
|
311
311
|
`)));return}let m=A+y;for(A="";m.length>0;)if(p==="SEARCHING"){let D=m.indexOf(r);if(D!==-1)m=m.substring(D+r.length),p="REASONING";else{for(let C=r.length-1;C>0;C--)if(m.endsWith(r.substring(0,C))){A=m.substring(m.length-C);break}m=""}}else if(p==="REASONING"){let D=m.indexOf(n);if(D!==-1){let C=m.substring(0,D);if(C.length>0){let x={..._.choices[0].delta,thinking:{content:C}};delete x.content;let $={..._,choices:[{..._.choices[0],delta:x,index:s}]};l.enqueue(u.encode(`data: ${JSON.stringify($)}
|
|
312
312
|
|
|
@@ -323,18 +323,19 @@ ${s.content}`),delete s.thinking)});let n=e.messages[e.messages.length-1];return
|
|
|
323
323
|
`))}else l.enqueue(u.encode(C+`
|
|
324
324
|
`))}}}catch(_){console.error("Stream error:",_),l.error(_)}finally{try{h.releaseLock()}catch(_){console.error("Error releasing reader lock:",_)}if(p==="REASONING"){let y={choices:[{delta:{thinking:{signature:new Date().getTime().toString()}}}]};l.enqueue(u.encode(`data: ${JSON.stringify(y)}
|
|
325
325
|
|
|
326
|
-
`))}l.close()}}});return new Response(c,{status:e.status,statusText:e.statusText,headers:{"Content-Type":e.headers.get("Content-Type")||"text/plain","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var
|
|
326
|
+
`))}l.close()}}});return new Response(c,{status:e.status,statusText:e.statusText,headers:{"Content-Type":e.headers.get("Content-Type")||"text/plain","Cache-Control":"no-cache",Connection:"keep-alive"}})}return e}};var Ba=class{static TransformerName="flattenMessage";name="flattenMessage";async transformRequestIn(e){return!e.messages||!Array.isArray(e.messages)||(e.messages=e.messages.map(r=>{if(typeof r.content=="string")return r;if(Array.isArray(r.content)){let n=[];r.content.forEach(i=>{i.type==="text"&&i.text?n.push(i.text):i.type==="image_url"&&i.image_url?.url?n.push(`[Image: ${i.image_url.url}]`):i.type==="image"&&i.source?i.source.type==="base64"?n.push(`[Image: ${i.source.media_type}]`):i.source.type==="url"&&n.push(`[Image: ${i.source.url}]`):i.type==="tool_result"&&(typeof i.content=="string"?n.push(i.content):i.content&&n.push(JSON.stringify(i.content)))});let s=n.join(`
|
|
327
|
+
`);return{...r,content:s||r.content}}return r})),e}};var Ey={AnthropicTransformer:Ko,GeminiTransformer:Zo,VertexGeminiTransformer:ga,VertexClaudeTransformer:va,DeepseekTransformer:ya,TooluseTransformer:_a,OpenrouterTransformer:ba,OpenAITransformer:Fa,MaxTokenTransformer:Ca,GroqTransformer:wa,CleancacheTransformer:Ea,EnhanceToolTransformer:Sa,ReasoningTransformer:ka,SamplingTransformer:Da,MaxCompletionTokens:Ta,CerebrasTransformer:Ra,StreamOptionsTransformer:Oa,CustomParamsTransformer:xa,VercelTransformer:Pa,OpenAIResponsesTransformer:Ia,ForceReasoningTransformer:Na,FlattenMessageTransformer:Ba};var gn=class{constructor(e,r){this.configService=e;this.logger=r}transformers=new Map;registerTransformer(e,r){this.transformers.set(e,r),this.logger.info(`register transformer: ${e}${r.endPoint?` (endpoint: ${r.endPoint})`:" (no endpoint)"}`)}getTransformer(e){return this.transformers.get(e)}getAllTransformers(){return new Map(this.transformers)}getTransformersWithEndpoint(){let e=[];return this.transformers.forEach((r,n)=>{typeof r=="object"&&r.endPoint&&e.push({name:n,transformer:r})}),e}getTransformersWithoutEndpoint(){let e=[];return this.transformers.forEach((r,n)=>{typeof r=="object"&&!r.endPoint&&e.push({name:n,transformer:r})}),e}removeTransformer(e){return this.transformers.delete(e)}hasTransformer(e){return this.transformers.has(e)}async registerTransformerFromConfig(e){try{if(e.path){let r=require(require.resolve(e.path));if(r){let n=new r(e.options);if(n&&typeof n=="object"&&(n.logger=this.logger),!n.name)throw new Error(`Transformer instance from ${e.path} does not have a name property.`);return this.registerTransformer(n.name,n),!0}}return!1}catch(r){return this.logger.error(`load transformer (${e.path})
|
|
327
328
|
error: ${r.message}
|
|
328
329
|
stack: ${r.stack}`),!1}}async initialize(){try{await this.registerDefaultTransformersInternal(),await this.loadFromConfig()}catch(e){this.logger.error(`TransformerService init error: ${e.message}
|
|
329
|
-
Stack: ${e.stack}`)}}async registerDefaultTransformersInternal(){try{Object.values(
|
|
330
|
-
`:case"\r":return!1;default:return new RegExp("^\\p{Cc}|\\p{Cf}|\\p{Co}|\\p{Cs}$","u").test(t)}}clean_text(t){let e=[];for(let r of t){let n=r.charCodeAt(0);n===0||n===65533||this.is_control(r)||(/^\s$/.test(r)?e.push(" "):e.push(r))}return e.join("")}normalize(t){return this.config.clean_text&&(t=this.clean_text(t)),this.config.handle_chinese_chars&&(t=this.tokenize_chinese_chars(t)),this.config.lowercase?(t=t.toLowerCase(),this.config.strip_accents!==!1&&(t=this.strip_accents(t))):this.config.strip_accents&&(t=this.strip_accents(t)),t}},VS=JS,KS=class extends kr{constructor(t){super(t),this.charsmap=t.precompiled_charsmap??null}normalize(t){return t=t.replace(/[\u0001-\u0008\u000B\u000E-\u001F\u007F\u008F\u009F]/gm,""),t=t.replace(/[\u0009\u000A\u000C\u000D\u00A0\u1680\u2000-\u200F\u2028\u2029\u202F\u205F\u2581\u3000\uFEFF\uFFFD]/gm," "),t.includes("\uFF5E")?t=t.split("\uFF5E").map(e=>e.normalize("NFKC")).join("\uFF5E"):t=t.normalize("NFKC"),t}},YS=KS,XS=class extends kr{constructor(t){super(t),this.normalizers=(t.normalizers??[]).map(e=>Fy(e))}normalize(t){return this.normalizers.reduce((e,r)=>r?r.normalize(e):e,t)}},QS=XS,ZS=class extends kr{normalize(t){let e=Ba(this.config.pattern??{});return e===null?t:t.replaceAll(e,this.config.content??"")}},ek=ZS,tk=class extends kr{constructor(){super(...arguments),this.form="NFC"}normalize(t){return t=t.normalize(this.form),t}},ja=tk,rk=class extends ja{constructor(){super(...arguments),this.form="NFC"}},nk=rk,sk=class extends ja{constructor(){super(...arguments),this.form="NFD"}},ok=sk,ik=class extends ja{constructor(){super(...arguments),this.form="NFKC"}},ak=ik,uk=class extends ja{constructor(){super(...arguments),this.form="NFKD"}},ck=uk,lk=class extends kr{normalize(t){return this.config.strip_left&&this.config.strip_right?t=t.trim():(this.config.strip_left&&(t=t.trimStart()),this.config.strip_right&&(t=t.trimEnd())),t}},fk=lk,dk=class extends kr{normalize(t){return Oy(t)}},hk=dk,pk=class extends kr{normalize(t){return t.toLowerCase()}},mk=pk,gk=class extends kr{normalize(t){return t=this.config.prepend+t,t}},yk=gk;function _k(t){if(t===null)return null;switch(t.type){case"BertNormalizer":return new VS(t);case"Precompiled":return new YS(t);case"Sequence":return new QS(t);case"Replace":return new ek(t);case"NFC":return new nk(t);case"NFD":return new ok(t);case"NFKC":return new ak(t);case"NFKD":return new ck(t);case"Strip":return new fk(t);case"StripAccents":return new hk(t);case"Lowercase":return new mk(t);case"Prepend":return new yk(t);default:throw new Error(`Unknown Normalizer type: ${t.type}`)}}var Fy=_k,bk=class extends no{pre_tokenize(t,e){return(Array.isArray(t)?t.map(r=>this.pre_tokenize_text(r,e)):this.pre_tokenize_text(t,e)).flat()}_call(t,e){return this.pre_tokenize(t,e)}},ir=bk,Ck=class extends ir{constructor(t){super(),this.config=t,this.add_prefix_space=this.config.add_prefix_space??!1,this.trim_offsets=this.config.trim_offsets??!1,this.use_regex=this.config.use_regex??!0,this.pattern=new RegExp("'s|'t|'re|'ve|'m|'ll|'d| ?\\p{L}+| ?\\p{N}+| ?[^\\s\\p{L}\\p{N}]+|\\s+(?!\\S)|\\s+","gu"),this.byte_encoder=Ry,this.text_encoder=new TextEncoder}pre_tokenize_text(t,e){return this.add_prefix_space&&!t.startsWith(" ")&&(t=" "+t),(this.use_regex?t.match(this.pattern)||[]:[t]).map(r=>Array.from(this.text_encoder.encode(r),n=>this.byte_encoder[n]).join(""))}},wk=Ck,Ek=class extends ir{pre_tokenize_text(t,e){return t.match(/\w+|[^\w\s]+/g)||[]}},Ak=Ek,Sk=class extends ir{constructor(t){super(),this.replacement=t.replacement??"\u2581",this.str_rep=t.str_rep||this.replacement,this.prepend_scheme=t.prepend_scheme??"always"}pre_tokenize_text(t,e){let{section_index:r=void 0}=e??{},n=t.replaceAll(" ",this.str_rep);return!n.startsWith(this.replacement)&&(this.prepend_scheme==="always"||this.prepend_scheme==="first"&&r===0)&&(n=this.str_rep+n),[n]}},kk=Sk,Dk=class extends ir{constructor(t){super(),this.config=t,this.pattern=Ba(this.config.pattern??{},this.config.invert??!0)}pre_tokenize_text(t){return this.pattern===null?[]:this.config.invert?t.match(this.pattern)||[]:this.config.behavior?.toLowerCase()==="removed"?t.split(this.pattern).filter(e=>e):zS(t,this.pattern)}},Tk=Dk,vk=class extends ir{constructor(t){super(),this.config=t,this.pattern=new RegExp(`[^${ro}]+|[${ro}]+`,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},Rk=vk,Ok=class extends ir{constructor(t){super(),this.config=t;let e=`[^\\d]+|\\d${this.config.individual_digits?"":"+"}`;this.pattern=new RegExp(e,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},Fk=Ok,xk=class extends ir{constructor(){super(),this.pattern=new RegExp(`[^\\s${ro}]+|[${ro}]`,"gu")}pre_tokenize_text(t,e){return t.trim().match(this.pattern)||[]}},Pk=xk,Ik=class extends ir{constructor(t){super(),this.config=t,this.pattern=Ba(this.config.pattern??{}),this.content=this.config.content??""}pre_tokenize_text(t){return this.pattern===null?[t]:[t.replaceAll(this.pattern,this.config.content??"")]}},Nk=Ik,Bk=class extends ir{constructor(t){super(),this.tokenizers=(t.pretokenizers??[]).map(e=>xy(e))}pre_tokenize_text(t,e){return this.tokenizers.reduce((r,n)=>n?n.pre_tokenize(r,e):r,[t])}},jk=Bk,qk=class extends ir{pre_tokenize_text(t){return HS(t)}},Lk=qk;function Uk(t){if(t===null)return null;switch(t.type){case"BertPreTokenizer":return new Pk;case"Sequence":return new jk(t);case"Whitespace":return new Ak;case"WhitespaceSplit":return new Lk;case"Metaspace":return new kk(t);case"ByteLevel":return new wk(t);case"Split":return new Tk(t);case"Punctuation":return new Rk(t);case"Digits":return new Fk(t);case"Replace":return new Nk(t);default:throw new Error(`Unknown PreTokenizer type: ${t.type}`)}}var xy=Uk,Mk=class extends no{constructor(t){super(),this.config=t,this.vocab=[],this.tokens_to_ids=new Map,this.unk_token_id=void 0,this.unk_token=void 0,this.end_of_word_suffix=void 0,this.fuse_unk=this.config.fuse_unk??!1}_call(t){let e=this.encode(t);return this.fuse_unk&&(e=qS(e,this.tokens_to_ids,this.unk_token_id)),e}convert_tokens_to_ids(t){return t.map(e=>this.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(t){return t.map(e=>this.vocab[Number(e)]??this.unk_token)}},qa=Mk,$k=class extends qa{constructor(t){super(t),this.max_input_chars_per_word=100,this.tokens_to_ids=pf(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.max_input_chars_per_word=t.max_input_chars_per_word??100,this.vocab=new Array(this.tokens_to_ids.size);for(let[e,r]of this.tokens_to_ids)this.vocab[r]=e}encode(t){let e=[];for(let r of t){let n=[...r];if(n.length>this.max_input_chars_per_word){e.push(this.unk_token);continue}let s=!1,i=0,u=[];for(;i<n.length;){let c=n.length,l=null;for(;i<c;){let h=n.slice(i,c).join("");if(i>0&&(h=this.config.continuing_subword_prefix+h),this.tokens_to_ids.has(h)){l=h;break}--c}if(l===null){s=!0;break}u.push(l),i=c}s?e.push(this.unk_token):e.push(...u)}return e}},ky=$k,Dy=class Py{constructor(e,r){this.is_leaf=e,this.children=r}static default(){return new Py(!1,new Map)}},zk=class{constructor(){this.root=Dy.default()}extend(t){for(let e of t)this.push(e)}push(t){let e=this.root;for(let r of t){let n=e.children.get(r);n===void 0&&(n=Dy.default(),e.children.set(r,n)),e=n}e.is_leaf=!0}*common_prefix_search(t){let e=this.root;if(e===void 0)return;let r="";for(let n of t){if(r+=n,e=e.children.get(n),e===void 0)return;e.is_leaf&&(yield r)}}},Hk=zk,df=class Iy{constructor(e,r,n,s,i){this.token_id=e,this.node_id=r,this.pos=n,this.length=s,this.score=i,this.prev=null,this.backtrace_score=0}clone(){let e=new Iy(this.token_id,this.node_id,this.pos,this.length,this.score);return e.prev=this.prev,e.backtrace_score=this.backtrace_score,e}},Wk=class{constructor(t,e,r){this.chars=Array.from(t),this.len=this.chars.length,this.bos_token_id=e,this.eos_token_id=r,this.nodes=[],this.begin_nodes=Array.from({length:this.len+1},()=>[]),this.end_nodes=Array.from({length:this.len+1},()=>[]);let n=new df(this.bos_token_id??0,0,0,0,0),s=new df(this.eos_token_id??0,1,this.len,0,0);this.nodes.push(n.clone()),this.nodes.push(s.clone()),this.begin_nodes[this.len].push(s),this.end_nodes[0].push(n)}insert(t,e,r,n){let s=this.nodes.length,i=new df(n,s,t,e,r);this.begin_nodes[t].push(i),this.end_nodes[t+e].push(i),this.nodes.push(i)}viterbi(){let t=this.len,e=0;for(;e<=t;){if(this.begin_nodes[e].length==0)return[];for(let i of this.begin_nodes[e]){i.prev=null;let u=0,c=null;for(let l of this.end_nodes[e]){let h=l.backtrace_score+i.score;(c===null||h>u)&&(c=l.clone(),u=h)}if(c!==null)i.prev=c,i.backtrace_score=u;else return[]}++e}let r=[],n=this.begin_nodes[t][0].prev;if(n===null)return[];let s=n.clone();for(;s.prev!==null;)r.push(s.clone()),s=s.clone().prev.clone();return r.reverse(),r}piece(t){return this.chars.slice(t.pos,t.pos+t.length).join("")}tokens(){return this.viterbi().map(t=>this.piece(t))}token_ids(){return this.viterbi().map(t=>t.token_id)}},Gk=Wk;function Jk(t){if(t.length===0)throw new Error("Array must not be empty");let e=t[0],r=0;for(let n=1;n<t.length;++n)t[n]<e&&(e=t[n],r=n);return[e,r]}var Vk=class extends qa{constructor(t,e){super(t);let r=t.vocab.length;this.vocab=new Array(r),this.scores=new Array(r);for(let n=0;n<r;++n)[this.vocab[n],this.scores[n]]=t.vocab[n];this.unk_token_id=t.unk_id,this.unk_token=this.vocab[t.unk_id],this.tokens_to_ids=new Map(this.vocab.map((n,s)=>[n,s])),this.bos_token=" ",this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.min_score=Jk(this.scores)[0],this.unk_score=this.min_score-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new Hk,this.trie.extend(this.vocab),this.fuse_unk=!0}populate_nodes(t){let e=t.chars,r=1,n=0;for(;n<e.length;){let s=!1,i=[],u=e.slice(n).join(""),c=this.trie.common_prefix_search(u);for(let l of c){i.push(l);let h=this.tokens_to_ids.get(l),d=this.scores[h],p=MS(l);t.insert(n,p,d,h),!s&&p===r&&(s=!0)}s||t.insert(n,r,this.unk_score,this.unk_token_id),n+=r}}tokenize(t){let e=new Gk(t,this.bos_token_id,this.eos_token_id);return this.populate_nodes(e),e.tokens()}encode(t){let e=[];for(let r of t){let n=this.tokenize(r);e.push(...n)}return e}},Ty=Vk,Kk=class{constructor(t=(r,n)=>r>n,e=1/0){this._heap=[],this._comparator=t,this._max_size=e}get size(){return this._heap.length}is_empty(){return this.size===0}peek(){return this._heap[0]}push(...t){return this.extend(t)}extend(t){for(let e of t)if(this.size<this._max_size)this._heap.push(e),this._sift_up();else{let r=this._smallest();this._comparator(e,this._heap[r])&&(this._heap[r]=e,this._sift_up_from(r))}return this.size}pop(){let t=this.peek(),e=this.size-1;return e>0&&this._swap(0,e),this._heap.pop(),this._sift_down(),t}replace(t){let e=this.peek();return this._heap[0]=t,this._sift_down(),e}_parent(t){return(t+1>>>1)-1}_left(t){return(t<<1)+1}_right(t){return t+1<<1}_greater(t,e){return this._comparator(this._heap[t],this._heap[e])}_swap(t,e){let r=this._heap[t];this._heap[t]=this._heap[e],this._heap[e]=r}_sift_up(){this._sift_up_from(this.size-1)}_sift_up_from(t){for(;t>0&&this._greater(t,this._parent(t));)this._swap(t,this._parent(t)),t=this._parent(t)}_sift_down(){let t=0;for(;this._left(t)<this.size&&this._greater(this._left(t),t)||this._right(t)<this.size&&this._greater(this._right(t),t);){let e=this._right(t)<this.size&&this._greater(this._right(t),this._left(t))?this._right(t):this._left(t);this._swap(t,e),t=e}}_smallest(){return 2**Math.floor(Math.log2(this.size))-1}},Yk=Kk,Xk=class{constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}put(t,e){this.cache.has(t)&&this.cache.delete(t),this.cache.set(t,e),this.cache.size>this.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}},Qk=Xk,Zk=class extends qa{constructor(t){super(t),this.tokens_to_ids=pf(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.vocab=new Array(this.tokens_to_ids.size);for(let[r,n]of this.tokens_to_ids)this.vocab[n]=r;let e=Array.isArray(t.merges[0]);this.merges=e?t.merges:t.merges.map(r=>r.split(" ",2)),this.bpe_ranks=new Map(this.merges.map((r,n)=>[JSON.stringify(r),n])),this.end_of_word_suffix=t.end_of_word_suffix,this.continuing_subword_suffix=t.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new Qk(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(t){if(t.length===0)return[];let e=this.cache.get(t);if(e!==void 0)return e;let r=Array.from(t);this.end_of_word_suffix&&(r[r.length-1]+=this.end_of_word_suffix);let n=[];if(r.length>1){let s=new Yk((c,l)=>c.score<l.score),i={token:r[0],bias:0,prev:null,next:null},u=i;for(let c=1;c<r.length;++c){let l={bias:c/r.length,token:r[c],prev:u,next:null};u.next=l,this.add_node(s,u),u=l}for(;!s.is_empty();){let c=s.pop();if(c.deleted||!c.next||c.next.deleted)continue;if(c.deleted=!0,c.next.deleted=!0,c.prev){let h={...c.prev};c.prev.deleted=!0,c.prev=h,h.prev?h.prev.next=h:i=h}let l={token:c.token+c.next.token,bias:c.bias,prev:c.prev,next:c.next.next};l.prev?(l.prev.next=l,this.add_node(s,l.prev)):i=l,l.next&&(l.next.prev=l,this.add_node(s,l))}for(let c=i;c!==null;c=c.next)n.push(c.token)}else n=r;if(this.continuing_subword_suffix)for(let s=0;s<n.length-1;++s)n[s]+=this.continuing_subword_suffix;return t.length<this.max_length_to_cache&&this.cache.put(t,n),n}add_node(t,e){let r=this.bpe_ranks.get(JSON.stringify([e.token,e.next.token]));r!==void 0&&(e.score=r+e.bias,t.push(e))}encode(t){let e=[];for(let r of t){if(this.ignore_merges&&this.tokens_to_ids.has(r)){e.push(r);continue}let n=this.bpe(r);for(let s of n)if(this.tokens_to_ids.has(s))e.push(s);else if(this.byte_fallback){let i=Array.from(this.text_encoder.encode(s)).map(u=>`<0x${u.toString(16).toUpperCase().padStart(2,"0")}>`);i.every(u=>this.tokens_to_ids.has(u))?e.push(...i):e.push(this.unk_token)}else e.push(this.unk_token)}return e}},vy=Zk,eD=class extends qa{constructor(t,e){super(t);let r=t.vocab;this.tokens_to_ids=pf(e.target_lang?r[e.target_lang]:r),this.bos_token=e.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=e.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=e.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=new Array(this.tokens_to_ids.size);for(let[n,s]of this.tokens_to_ids)this.vocab[s]=n}encode(t){return t}},tD=eD;function rD(t,e){switch(t.type){case"WordPiece":return new ky(t);case"Unigram":return new Ty(t,e.eos_token);case"BPE":return new vy(t);default:if(t.vocab)return Array.isArray(t.vocab)?new Ty(t,e.eos_token):Object.hasOwn(t,"continuing_subword_prefix")&&Object.hasOwn(t,"unk_token")?Object.hasOwn(t,"merges")?new vy(t):new ky(t):new tD(t,{target_lang:e.target_lang,bos_token:e.bos_token,eos_token:e.eos_token,pad_token:e.pad_token,unk_token:e.unk_token});throw new Error(`Unknown TokenizerModel type: ${t?.type}`)}}var nD=rD,sD=class extends no{constructor(t){super(),this.config=t}_call(t,...e){return this.post_process(t,...e)}},so=sD,oD=class extends so{post_process(t,e=null,r=!0){let n=e===null?this.config.single:this.config.pair,s=[],i=[];for(let u of n)"SpecialToken"in u?r&&(s.push(u.SpecialToken.id),i.push(u.SpecialToken.type_id)):"Sequence"in u&&(u.Sequence.id==="A"?(s=xt(s,t),i=xt(i,new Array(t.length).fill(u.Sequence.type_id))):u.Sequence.id==="B"&&(s=xt(s,e),i=xt(i,new Array(e.length).fill(u.Sequence.type_id))));return{tokens:s,token_type_ids:i}}},iD=oD,aD=class extends so{post_process(t,e=null){return{tokens:e?xt(t,e):t}}},uD=aD,cD=class extends so{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e=null,r=!0){r&&(t=xt([this.cls[0]],t,[this.sep[0]]));let n=new Array(t.length).fill(0);if(e){let s=[],i=r?[this.sep[0]]:[];t=xt(t,s,e,i),n=xt(n,new Array(e.length+s.length+i.length).fill(1))}return{tokens:t,token_type_ids:n}}},lD=cD,fD=class extends so{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e,r=!0){r&&(t=xt([this.cls[0]],t,[this.sep[0]]));let n=new Array(t.length).fill(0);if(e){let s=r?[this.sep[0]]:[],i=r?[this.sep[0]]:[];t=xt(t,s,e,i),n=xt(n,new Array(e.length+s.length+i.length).fill(1))}return{tokens:t,token_type_ids:n}}},dD=fD,hD=class extends so{constructor(t){super(t),this.processors=(t.processors??[]).map(e=>Ny(e))}post_process(t,e=null,r=!0){let n={tokens:t};for(let s of this.processors)n=s.post_process(n.tokens,e,r);return n}},pD=hD;function mD(t){if(t===null)return null;switch(t.type){case"TemplateProcessing":return new iD(t);case"ByteLevel":return new uD(t);case"BertProcessing":return new lD(t);case"RobertaProcessing":return new dD(t);case"Sequence":return new pD(t);default:throw new Error(`Unknown PostProcessor type: ${t.type}`)}}var Ny=mD,gD=class extends no{constructor(t){super(),this.config=t,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets="trim_offsets"in t?t.trim_offsets:!1}_call(t){return this.decode(t)}decode(t){return this.decode_chain(t).join("")}},ar=gD,yD=class extends ar{constructor(t){super(t),this.byte_decoder=NS,this.text_decoder=new TextDecoder("utf-8",{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(t){let e=t.join(""),r=new Uint8Array([...e].map(n=>this.byte_decoder[n]));return this.text_decoder.decode(r)}decode_chain(t){let e=[],r=[];for(let n of t)this.added_tokens.find(s=>s.content===n)!==void 0?(r.length>0&&(e.push(this.convert_tokens_to_string(r)),r=[]),e.push(n)):r.push(n);return r.length>0&&e.push(this.convert_tokens_to_string(r)),e}},_D=yD,bD=class extends ar{constructor(t){super(t),this.cleanup=t.cleanup}decode_chain(t){return t.map((e,r)=>{if(r!==0){let n=this.config.prefix;n&&e.startsWith(n)?e=e.replace(n,""):e=" "+e}return this.cleanup&&(e=hf(e)),e})}},CD=bD,wD=class extends ar{constructor(t){super(t),this.replacement=t.replacement??"\u2581"}decode_chain(t){let e=[];for(let r=0;r<t.length;++r){let n=t[r].replaceAll(this.replacement," ");r==0&&n.startsWith(" ")&&(n=n.substring(1)),e.push(n)}return e}},ED=wD,AD=class extends ar{constructor(t){super(t),this.suffix=t.suffix??""}decode_chain(t){return t.map((e,r)=>e.replaceAll(this.suffix,r===t.length-1?"":" "))}},SD=AD,kD=class extends ar{constructor(t){super(t),this.pad_token=t.pad_token??"",this.word_delimiter_token=t.word_delimiter_token??"",this.cleanup=t.cleanup}convert_tokens_to_string(t){if(t.length===0)return"";let e=[t[0]];for(let n=1;n<t.length;++n)t[n]!==e.at(-1)&&e.push(t[n]);let r=e.filter(n=>n!==this.pad_token).join("");return this.cleanup&&(r=hf(r).replaceAll(this.word_delimiter_token," ").trim()),r}decode_chain(t){return[this.convert_tokens_to_string(t)]}},DD=kD,TD=class extends ar{constructor(t){super(t),this.decoders=(t.decoders??[]).map(e=>By(e))}decode_chain(t){return this.decoders.reduce((e,r)=>r.decode_chain(e),t)}},vD=TD,RD=class extends ar{decode_chain(t){let e=Ba(this.config.pattern),r=this.config.content??"";return e===null?t:t.map(n=>n.replaceAll(e,r))}},OD=RD,FD=class extends ar{decode_chain(t){return[t.join("")]}},xD=FD,PD=class extends ar{constructor(t){super(t),this.content=t.content??"",this.start=t.start??0,this.stop=t.stop??0}decode_chain(t){return t.map(e=>{let r=0;for(let s=0;s<this.start&&e[s]===this.content;++s)r=s+1;let n=e.length;for(let s=0;s<this.stop;++s){let i=e.length-s-1;if(e[i]===this.content){n=i;continue}else break}return e.slice(r,n)})}},ID=PD,ND=class extends ar{constructor(t){super(t),this.text_decoder=new TextDecoder}decode_chain(t){let e=[],r=[];for(let n of t){let s=null;if(n.length===6&&n.startsWith("<0x")&&n.endsWith(">")){let i=parseInt(n.slice(3,5),16);isNaN(i)||(s=i)}if(s!==null)r.push(s);else{if(r.length>0){let i=this.text_decoder.decode(Uint8Array.from(r));e.push(i),r=[]}e.push(n)}}if(r.length>0){let n=this.text_decoder.decode(Uint8Array.from(r));e.push(n),r=[]}return e}},BD=ND;function jD(t){if(t===null)return null;switch(t.type){case"ByteLevel":return new _D(t);case"WordPiece":return new CD(t);case"Metaspace":return new ED(t);case"BPEDecoder":return new SD(t);case"CTC":return new DD(t);case"Sequence":return new vD(t);case"Replace":return new OD(t);case"Fuse":return new xD(t);case"Strip":return new ID(t);case"ByteFallback":return new BD(t);default:throw new Error(`Unknown Decoder type: ${t.type}`)}}var By=jD,qD=class{constructor(t,e){let r=Sy(t,"Tokenizer",["model","decoder","post_processor","pre_tokenizer","normalizer"]);if(r)throw new Error(r);let n=Sy(e,"Config");if(n)throw new Error(n);this.tokenizer=t,this.config=e,this.normalizer=Fy(this.tokenizer.normalizer),this.pre_tokenizer=xy(this.tokenizer.pre_tokenizer),this.model=nD(this.tokenizer.model,this.config),this.post_processor=Ny(this.tokenizer.post_processor),this.decoder=By(this.tokenizer.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[],this.tokenizer.added_tokens.forEach(s=>{let i=new PS(s);this.added_tokens.push(i),this.model.tokens_to_ids.set(i.content,i.id),this.model.vocab[i.id]=i.content,i.special&&(this.special_tokens.push(i.content),this.all_special_ids.push(i.id))}),(this.config.additional_special_tokens??[]).forEach(s=>{this.special_tokens.includes(s)||this.special_tokens.push(s)}),this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new FS(this.added_tokens.map(s=>s.content)),this.added_tokens_map=new Map(this.added_tokens.map(s=>[s.content,s])),this.remove_space=this.config.remove_space,this.clean_up_tokenization_spaces=this.config.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=this.config.do_lowercase_and_remove_accent??!1}encode(t,{text_pair:e=null,add_special_tokens:r=!0,return_token_type_ids:n=null}={}){let{tokens:s,token_type_ids:i}=this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}),u=this.model.convert_tokens_to_ids(s),c={ids:u,tokens:s,attention_mask:new Array(u.length).fill(1)};return n&&i&&(c.token_type_ids=i),c}decode(t,e={}){if(!Array.isArray(t)||t.length===0||!US(t[0]))throw Error("token_ids must be a non-empty array of integers.");let r=this.model.convert_ids_to_tokens(t);e.skip_special_tokens&&(r=r.filter(s=>!this.special_tokens.includes(s)));let n=this.decoder?this.decoder(r):r.join(" ");return this.decoder&&this.decoder.end_of_word_suffix&&(n=n.replaceAll(this.decoder.end_of_word_suffix," "),e.skip_special_tokens&&(n=n.trim())),(e.clean_up_tokenization_spaces??this.clean_up_tokenization_spaces)&&(n=hf(n)),n}tokenize(t,{text_pair:e=null,add_special_tokens:r=!1}={}){return this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}).tokens}encode_text(t){if(t===null)return null;let e=this.added_tokens_splitter.split(t);return e.forEach((r,n)=>{let s=this.added_tokens_map.get(r);s&&(s.lstrip&&n>0&&(e[n-1]=e[n-1].trimEnd()),s.rstrip&&n<e.length-1&&(e[n+1]=e[n+1].trimStart()))}),e.flatMap((r,n)=>{if(r.length===0)return[];if(this.added_tokens_map.has(r))return[r];if(this.remove_space===!0&&(r=r.trim().split(/\s+/).join(" ")),this.do_lowercase_and_remove_accent&&(r=$S(r)),this.normalizer!==null&&(r=this.normalizer(r)),r.length===0)return[];let s=this.pre_tokenizer!==null?this.pre_tokenizer(r,{section_index:n}):[r];return this.model(s)})}tokenize_helper(t,{text_pair:e=null,add_special_tokens:r=!0}){let n=this.encode_text(t),s=this.encode_text(e||null);return this.post_processor?this.post_processor(n,s,r):{tokens:xt(n??[],s??[])}}token_to_id(t){return this.model.tokens_to_ids.get(t)}id_to_token(t){return this.model.vocab[t]}get_added_tokens_decoder(){let t=new Map;for(let e of this.added_tokens)t.set(e.id,e);return t}},jy=qD;var La=class{type="huggingface";name;modelId;logger;options;tokenizer=null;cacheDir;safeModelName;constructor(e,r,n={}){this.modelId=e,this.logger=r,this.options=n,this.cacheDir=n.cacheDir||(0,oo.join)((0,qy.homedir)(),".claude-code-router",".huggingface"),this.safeModelName=e.replace(/\//g,"_").replace(/[^a-zA-Z0-9_-]/g,"_"),this.name=`huggingface-${e.split("/").pop()}`}getCachePaths(){let e=(0,oo.join)(this.cacheDir,this.safeModelName);return{modelDir:e,tokenizerJson:(0,oo.join)(e,"tokenizer.json"),tokenizerConfig:(0,oo.join)(e,"tokenizer_config.json")}}ensureDir(e){(0,as.existsSync)(e)||(0,as.mkdirSync)(e,{recursive:!0})}async loadFromCache(){try{let e=this.getCachePaths();if(!(0,as.existsSync)(e.tokenizerJson)||!(0,as.existsSync)(e.tokenizerConfig))return null;let[r,n]=await Promise.all([io.promises.readFile(e.tokenizerJson,"utf-8"),io.promises.readFile(e.tokenizerConfig,"utf-8")]);return{tokenizerJson:JSON.parse(r),tokenizerConfig:JSON.parse(n)}}catch(e){return this.logger?.warn(`Failed to load from cache: ${e.message}`),null}}async downloadAndCache(){let e=this.getCachePaths(),r={json:`https://huggingface.co/${this.modelId}/resolve/main/tokenizer.json`,config:`https://huggingface.co/${this.modelId}/resolve/main/tokenizer_config.json`};this.logger?.info(`Downloading tokenizer files for ${this.modelId}`);let n=new AbortController,s=setTimeout(()=>n.abort(),this.options.timeout||3e4);try{let[i,u]=await Promise.all([fetch(r.json,{signal:n.signal}),fetch(r.config,{signal:n.signal})]);if(!i.ok)throw new Error(`Failed to fetch tokenizer.json: ${i.statusText}`);let[c,l]=await Promise.all([i.json(),u.ok?u.json():Promise.resolve({})]);return this.ensureDir(e.modelDir),await Promise.all([io.promises.writeFile(e.tokenizerJson,JSON.stringify(c,null,2)),io.promises.writeFile(e.tokenizerConfig,JSON.stringify(l,null,2))]),{tokenizerJson:c,tokenizerConfig:l}}finally{clearTimeout(s)}}async initialize(){try{this.logger?.info(`Initializing HuggingFace tokenizer: ${this.modelId}`);let e=this.getCachePaths();this.ensureDir(this.cacheDir);let r=await this.loadFromCache()||await this.downloadAndCache();this.tokenizer=new jy(r.tokenizerJson,r.tokenizerConfig),this.logger?.info(`Tokenizer initialized: ${this.name}`)}catch(e){throw this.logger?.error(`Failed to initialize tokenizer: ${e.message}`),new Error(`Failed to initialize HuggingFace tokenizer for ${this.modelId}: ${e.message}`)}}async countTokens(e){if(!this.tokenizer)throw new Error("Tokenizer not initialized");try{let r=this.extractTextFromRequest(e);return this.tokenizer.encode(r).ids.length}catch(r){throw this.logger?.error(`Error counting tokens: ${r.message}`),r}}isInitialized(){return this.tokenizer!==null}encodeText(e){if(!this.tokenizer)throw new Error("Tokenizer not initialized");return this.tokenizer.encode(e).ids}dispose(){this.tokenizer=null}extractTextFromRequest(e){let r=[],{messages:n,system:s,tools:i}=e;if(Array.isArray(n)){for(let u of n)if(typeof u.content=="string")r.push(u.content);else if(Array.isArray(u.content))for(let c of u.content)c.type==="text"&&c.text?r.push(c.text):c.type==="tool_use"&&c.input?r.push(JSON.stringify(c.input)):c.type==="tool_result"&&r.push(typeof c.content=="string"?c.content:JSON.stringify(c.content))}if(typeof s=="string")r.push(s);else if(Array.isArray(s)){for(let u of s)if(u.type==="text"){if(typeof u.text=="string")r.push(u.text);else if(Array.isArray(u.text))for(let c of u.text)c&&r.push(c)}}if(i)for(let u of i)u.name&&r.push(u.name),u.description&&r.push(u.description),u.input_schema&&r.push(JSON.stringify(u.input_schema));return r.join(" ")}};var Ua=class{type="api";name;config;logger;options;constructor(e,r,n={}){if(!e.url||!e.apiKey)throw new Error("API tokenizer requires url and apiKey");this.config={url:e.url,apiKey:e.apiKey,requestFormat:e.requestFormat||"standard",responseField:e.responseField||"token_count",headers:e.headers||{}},this.logger=r,this.options=n;try{let s=new URL(e.url);this.name=`api-${s.hostname}`}catch{this.name=`api-${e.url}`}}async initialize(){try{new URL(this.config.url)}catch{throw new Error(`Invalid API URL: ${this.config.url}`)}}async countTokens(e){try{let r=this.formatRequestBody(e),n={"Content-Type":"application/json",Authorization:`Bearer ${this.config.apiKey}`,...this.config.headers},s=new AbortController,i=setTimeout(()=>s.abort(),this.options.timeout||3e4),u=await fetch(this.config.url,{method:"POST",headers:n,body:JSON.stringify(r),signal:s.signal});if(clearTimeout(i),!u.ok)throw new Error(`API tokenizer request failed: ${u.status} ${u.statusText}`);let c=await u.json();return this.extractTokenCount(c)}catch(r){throw r.name==="AbortError"?new Error("API tokenizer request timed out"):r}}isInitialized(){return!0}dispose(){}formatRequestBody(e){switch(this.config.requestFormat){case"standard":return e;case"openai":return{model:"gpt-3.5-turbo",messages:this.extractMessagesAsOpenAIFormat(e)};case"anthropic":return{messages:e.messages||[],system:e.system,tools:e.tools};case"custom":return{text:this.extractConcatenatedText(e)};default:return e}}extractMessagesAsOpenAIFormat(e){return e.messages?e.messages.map(r=>({role:r.role,content:this.extractTextFromMessage(r)})):[]}extractTextFromMessage(e){return typeof e.content=="string"?e.content:Array.isArray(e.content)?e.content.map(r=>r.type==="text"&&r.text?r.text:r.type==="tool_use"&&r.input?JSON.stringify(r.input):r.type==="tool_result"?typeof r.content=="string"?r.content:JSON.stringify(r.content):"").join(" "):""}extractConcatenatedText(e){let r=[];return e.messages&&e.messages.forEach(n=>{r.push(this.extractTextFromMessage(n))}),typeof e.system=="string"?r.push(e.system):Array.isArray(e.system)&&e.system.forEach(n=>{n.type==="text"&&(typeof n.text=="string"?r.push(n.text):Array.isArray(n.text)&&n.text.forEach(s=>{s&&r.push(s)}))}),e.tools&&e.tools.forEach(n=>{n.name&&r.push(n.name),n.description&&r.push(n.description),n.input_schema&&r.push(JSON.stringify(n.input_schema))}),r.join(" ")}extractTokenCount(e){try{let r=this.config.responseField,n=r.split("."),s=e;for(let i of n){if(s==null)throw new Error(`Field path '${r}' not found in response`);s=s[i]}if(typeof s!="number")throw new Error(`Expected number at field path '${r}', got ${typeof s}`);return s}catch(r){throw this.logger?.error(`Failed to extract token count from API response: ${r.message}. Response: ${JSON.stringify(e)}`),new Error(`Invalid response from API tokenizer: ${r.message}`)}}};var yn=class{tokenizers=new Map;configService;logger;options;fallbackTokenizer;constructor(e,r,n={}){this.configService=e,this.logger=r,this.options={timeout:n.timeout??3e4,...n}}async initialize(){try{this.fallbackTokenizer=new to("cl100k_base"),await this.fallbackTokenizer.initialize(),this.tokenizers.set("fallback",this.fallbackTokenizer),this.logger?.info("TokenizerService initialized successfully")}catch(e){throw this.logger?.error(`TokenizerService initialization error: ${e.message}`),e}}async getTokenizer(e){let r=this.getCacheKey(e);if(this.tokenizers.has(r))return this.tokenizers.get(r);let n;try{switch(e.type){case"tiktoken":n=new to(e.encoding||"cl100k_base");break;case"huggingface":this.logger?.info(`Initializing HuggingFace tokenizer for model: ${e.model}`),n=new La(e.model,this.logger,{timeout:this.options.timeout});break;case"api":n=new Ua(e,this.logger,{timeout:this.options.timeout});break;default:throw new Error(`Unknown tokenizer type: ${e.type}`)}return this.logger?.info(`Calling initialize() on ${e.type} tokenizer...`),await n.initialize(),this.tokenizers.set(r,n),this.logger?.info(`Tokenizer initialized successfully: ${e.type} (${r})`),n}catch(s){return this.logger?.error(`Failed to initialize ${e.type} tokenizer: ${s.message}`),this.logger?.error(`Error stack: ${s.stack}`),this.fallbackTokenizer||await this.initialize(),this.fallbackTokenizer}}async countTokens(e,r){let n=r?await this.getTokenizer(r):this.fallbackTokenizer;return{tokenCount:await n.countTokens(e),tokenizerUsed:n.name,cached:!1}}getTokenizerConfigForModel(e,r){let s=(this.configService.get("providers")||[]).find(i=>i.name===e);if(s?.tokenizer)return s.tokenizer.models?.[r]?s.tokenizer.models[r]:s.tokenizer.default}dispose(){this.tokenizers.forEach(e=>{try{e.dispose()}catch(r){this.logger?.error(`Error disposing tokenizer: ${r}`)}}),this.tokenizers.clear()}getCacheKey(e){switch(e.type){case"tiktoken":return`tiktoken:${e.encoding||"cl100k_base"}`;case"huggingface":return`hf:${e.model}`;case"api":return`api:${e.url}`;default:return`unknown:${JSON.stringify(e)}`}}};var Ly=require("tiktoken");var mf=class{capacity;cache;constructor(e){this.capacity=e,this.cache=new Map}get(e){if(!this.cache.has(e))return;let r=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,r),r}put(e,r){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.capacity){let n=this.cache.keys().next().value;n!==void 0&&this.cache.delete(n)}this.cache.set(e,r)}values(){return Array.from(this.cache.values())}},Ma=new mf(100);var $a=require("fs/promises"),Ha=require("fs/promises"),za=require("path"),us=require("@CCR/shared"),Uy=require("lru-cache"),Dr=(0,Ly.get_encoding)("cl100k_base"),gf=(t,e,r)=>{let n=0;return Array.isArray(t)&&t.forEach(s=>{typeof s.content=="string"?n+=Dr.encode(s.content).length:Array.isArray(s.content)&&s.content.forEach(i=>{i.type==="text"?n+=Dr.encode(i.text).length:i.type==="tool_use"?n+=Dr.encode(JSON.stringify(i.input)).length:i.type==="tool_result"&&(n+=Dr.encode(typeof i.content=="string"?i.content:JSON.stringify(i.content)).length)})}),typeof e=="string"?n+=Dr.encode(e).length:Array.isArray(e)&&e.forEach(s=>{s.type==="text"&&(typeof s.text=="string"?n+=Dr.encode(s.text).length:Array.isArray(s.text)&&s.text.forEach(i=>{n+=Dr.encode(i||"").length}))}),r&&r.forEach(s=>{s.description&&(n+=Dr.encode(s.name+s.description).length),s.input_schema&&(n+=Dr.encode(JSON.stringify(s.input_schema)).length)}),n},LD=async(t,e)=>{if(t.sessionId){let r=await yf(t.sessionId);if(r){let n=(0,za.join)(us.HOME_DIR,r,"config.json"),s=(0,za.join)(us.HOME_DIR,r,`${t.sessionId}.json`);try{let i=JSON.parse(await(0,$a.readFile)(s,"utf8"));if(i&&i.Router)return i.Router}catch{}try{let i=JSON.parse(await(0,$a.readFile)(n,"utf8"));if(i&&i.Router)return i.Router}catch{}}}},UD=async(t,e,r,n)=>{let s=await LD(t,r),i=r.get("providers")||[],u=s||r.get("Router");if(t.body.model.includes(",")){let[p,A]=t.body.model.split(","),R=i.find(_=>_.name.toLowerCase()===p),S=R?.models?.find(_=>_.toLowerCase()===A);return R&&S?{model:`${R.name},${S}`,scenarioType:"default"}:{model:t.body.model,scenarioType:"default"}}let c=u?.longContextThreshold||6e4,l=n&&n.input_tokens>c&&e>2e4,h=e>c;if((l||h)&&u?.longContext)return t.log.info(`Using long context model due to token count: ${e}, threshold: ${c}`),{model:u.longContext,scenarioType:"longContext"};if(t.body?.system?.length>1&&t.body?.system[1]?.text?.startsWith("<CCR-SUBAGENT-MODEL>")){let p=t.body?.system[1].text.match(/<CCR-SUBAGENT-MODEL>(.*?)<\/CCR-SUBAGENT-MODEL>/s);if(p)return t.body.system[1].text=t.body.system[1].text.replace(`<CCR-SUBAGENT-MODEL>${p[1]}</CCR-SUBAGENT-MODEL>`,""),{model:p[1],scenarioType:"default"}}let d=r.get("Router");return t.body.model?.includes("claude")&&t.body.model?.includes("haiku")&&d?.background?(t.log.info(`Using background model for ${t.body.model}`),{model:d.background,scenarioType:"background"}):Array.isArray(t.body.tools)&&t.body.tools.some(p=>p.type?.startsWith("web_search"))&&u?.webSearch?{model:u.webSearch,scenarioType:"webSearch"}:t.body.thinking&&u?.think?(t.log.info(`Using think model for ${t.body.thinking}`),{model:u.think,scenarioType:"think"}):{model:u?.default,scenarioType:"default"}},Wa=async(t,e,r)=>{let{configService:n,event:s}=r;if(t.body.metadata?.user_id){let d=t.body.metadata.user_id.split("_session_");d.length>1&&(t.sessionId=d[1])}let i=Ma.get(t.sessionId),{messages:u,system:c=[],tools:l}=t.body,h=n.get("REWRITE_SYSTEM_PROMPT");if(h&&c.length>1&&c[1]?.text?.includes("<env>")){let d=await(0,$a.readFile)(h,"utf-8");c[1].text=`${d}<env>${c[1].text.split("<env>").pop()}`}try{let[d,p]=t.body.model.split(","),A=r.tokenizerService?.getTokenizerConfigForModel(d,p),R;r.tokenizerService?R=(await r.tokenizerService.countTokens({messages:u,system:c,tools:l},A)).tokenCount:R=gf(u,c,l);let S,_=n.get("CUSTOM_ROUTER_PATH");if(_)try{let y=require(_);t.tokenCount=R,S=await y(t,n.getAll(),{event:s})}catch(y){t.log.error(`failed to load custom router: ${y.message}`)}if(S)t.scenarioType="default";else{let y=await UD(t,R,n,i);S=y.model,t.scenarioType=y.scenarioType}t.body.model=S}catch(d){t.log.error(`Error in router middleware: ${d.message}`);let p=n.get("Router");t.body.model=p?.default,t.scenarioType="default"}},ao=new Uy.LRUCache({max:1e3}),yf=async t=>{if(ao.has(t)){let e=ao.get(t);return!e||e===""?null:e}try{let e=await(0,Ha.opendir)(us.CLAUDE_PROJECTS_DIR),r=[];for await(let i of e)i.isDirectory()&&r.push(i.name);let n=r.map(async i=>{let u=(0,za.join)(us.CLAUDE_PROJECTS_DIR,i,`${t}.jsonl`);try{return(await(0,Ha.stat)(u)).isFile()?i:null}catch{return null}}),s=await Promise.all(n);for(let i of s)if(i)return ao.set(t,i),i;return ao.set(t,""),null}catch(e){return console.error("Error searching for project by session:",e),ao.set(t,""),null}};var _f=class{plugins=new Map;pluginInstances=new Map;registerPlugin(e,r={}){this.pluginInstances.set(e.name,e),this.plugins.set(e.name,{name:e.name,enabled:r.enabled!==!1,options:r})}async enablePlugin(e,r){let n=this.plugins.get(e),s=this.pluginInstances.get(e);if(!n||!s)throw new Error(`Plugin ${e} not found`);n.enabled&&await r.register(s.register,n.options)}async enablePlugins(e){for(let[r,n]of this.plugins)if(n.enabled)try{await this.enablePlugin(r,e)}catch(s){let i=s instanceof Error?s.message:String(s);e.log?.error(`Failed to enable plugin ${r}: ${i}`)}}getPlugins(){return Array.from(this.plugins.values())}getPlugin(e){return this.pluginInstances.get(e)}hasPlugin(e){return this.pluginInstances.has(e)}isPluginEnabled(e){return this.plugins.get(e)?.enabled||!1}setPluginEnabled(e,r){let n=this.plugins.get(e);n&&(n.enabled=r)}removePlugin(e){this.plugins.delete(e),this.pluginInstances.delete(e)}clear(){this.plugins.clear(),this.pluginInstances.clear()}},bf=new _f;var Ky=Ue(Wy(),1);var _n=class extends TransformStream{buffer="";currentEvent={};constructor(){super({transform:(e,r)=>{this.buffer+=e;let n=this.buffer.split(`
|
|
330
|
+
Stack: ${e.stack}`)}}async registerDefaultTransformersInternal(){try{Object.values(Ey).forEach(e=>{if("TransformerName"in e&&typeof e.TransformerName=="string")this.registerTransformer(e.TransformerName,e);else{let r=new e;r&&typeof r=="object"&&(r.logger=this.logger),this.registerTransformer(r.name,r)}})}catch(e){this.logger.error({error:e},"transformer regist error:")}}async loadFromConfig(){let e=this.configService.get("transformers",[]);for(let r of e)await this.registerTransformerFromConfig(r)}};var Ay=require("tiktoken"),to=class{type="tiktoken";name;encoding;constructor(e="cl100k_base"){this.name=`tiktoken-${e}`;try{this.encoding=(0,Ay.get_encoding)(e)}catch{throw new Error(`Failed to initialize tiktoken encoding: ${e}`)}}async initialize(){if(!this.encoding)throw new Error("Tiktoken encoding not initialized")}async countTokens(e){let r=this.encoding;if(!r)throw new Error("Encoding not initialized");let n=0,{messages:s,system:i,tools:u}=e;return Array.isArray(s)&&s.forEach(c=>{typeof c.content=="string"?n+=r.encode(c.content).length:Array.isArray(c.content)&&c.content.forEach(l=>{if(l.type==="text")n+=r.encode(l.text).length;else if(l.type==="tool_use")n+=r.encode(JSON.stringify(l.input)).length;else if(l.type==="tool_result"){let h=typeof l.content=="string"?l.content:JSON.stringify(l.content);n+=r.encode(h).length}})}),typeof i=="string"?n+=r.encode(i).length:Array.isArray(i)&&i.forEach(c=>{c.type==="text"&&(typeof c.text=="string"?n+=r.encode(c.text).length:Array.isArray(c.text)&&c.text.forEach(l=>{n+=r.encode(l||"").length}))}),u&&u.forEach(c=>{c.description&&(n+=r.encode(c.name+c.description).length),c.input_schema&&(n+=r.encode(JSON.stringify(c.input_schema)).length)}),n}isInitialized(){return this.encoding!==void 0}encodeText(e){let r=this.encoding;if(!r)throw new Error("Encoding not initialized");return Array.from(r.encode(e))}dispose(){this.encoding&&(this.encoding.free(),this.encoding=void 0)}};var oo=require("path"),Ly=require("os"),as=require("fs"),io=require("fs");var FS=class{constructor(t){this.trie=this._build_trie(t)}_build_trie(t){let e=Object.create(null);for(let r of t){let n=e;for(let s=0;s<r.length;++s){let i=r[s];n=n[i]??=Object.create(null)}n.end=r}return e}split(t){let e=[],r=t.length,n=0,s=0;for(;s<r;){let i=this.trie,u=null,c=s;for(;c<r&&(i=i[t[c]]);)i.end&&(u=i.end),++c;u?(s>n&&e.push(t.slice(n,s)),e.push(u),s+=u.length,n=s):++s}return n<r&&e.push(t.slice(n)),e}},xS=FS,PS=class{constructor(t){this.content=t.content,this.id=t.id,this.single_word=t.single_word??!1,this.lstrip=t.lstrip??!1,this.rstrip=t.rstrip??!1,this.special=t.special??!1,this.normalized=t.normalized??null}},IS=PS,Oy=(()=>{let t=[...Array.from({length:94},(s,i)=>i+33),...Array.from({length:12},(s,i)=>i+161),...Array.from({length:82},(s,i)=>i+174)],e=t.slice(),r=0;for(let s=0;s<256;++s)t.includes(s)||(t.push(s),e.push(256+r),r+=1);let n=e.map(s=>String.fromCharCode(s));return Object.fromEntries(t.map((s,i)=>[s,n[i]]))})(),NS=t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[r,e])),BS=NS(Oy),Sy=".,!?\u2026\u3002\uFF0C\u3001\u0964\u06D4\u060C",jS=new Map([["(?i:'s|'t|'re|'ve|'m|'ll|'d)","(?:'([sS]|[tT]|[rR][eE]|[vV][eE]|[mM]|[lL][lL]|[dD]))"],["(?i:[sdmt]|ll|ve|re)","(?:[sS]|[dD]|[mM]|[tT]|[lL][lL]|[vV][eE]|[rR][eE])"],["[^\\r\\n\\p{L}\\p{N}]?+","[^\\r\\n\\p{L}\\p{N}]?"],["[^\\s\\p{L}\\p{N}]++","[^\\s\\p{L}\\p{N}]+"],[` ?[^(\\s|[${Sy}])]+`,` ?[^\\s${Sy}]+`]]),ro="\\p{P}\\u0021-\\u002F\\u003A-\\u0040\\u005B-\\u0060\\u007B-\\u007E",uO=new RegExp(`^[${ro}]+$`,"gu"),pf=t=>t.replace(/ \./g,".").replace(/ \?/g,"?").replace(/ \!/g,"!").replace(/ ,/g,",").replace(/ \' /g,"'").replace(/ n't/g,"n't").replace(/ 'm/g,"'m").replace(/ 's/g,"'s").replace(/ 've/g,"'ve").replace(/ 're/g,"'re"),ja=(t,e=!0)=>{if(t.Regex!==void 0){let r=t.Regex.replace(/\\([#&~])/g,"$1");for(let[n,s]of jS)r=r.replaceAll(n,s);return new RegExp(r,"gu")}else if(t.String!==void 0){let r=qS(t.String);return new RegExp(e?r:`(${r})`,"gu")}else return console.warn("Unknown pattern type:",t),null},qS=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),LS=(t,e,r)=>{let n=[],s=0;for(;s<t.length;){if(n.push(t[s]),(e.get(t[s])??r)!==r){++s;continue}for(;++s<t.length&&(e.get(t[s])??r)===r;)e.get(n.at(-1))!==r&&(n[n.length-1]+=t[s])}return n},US=t=>t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=63744&&t<=64255||t>=194560&&t<=195103,MS=t=>Number.isInteger(t)||typeof t=="bigint",$S=t=>{let e=0;for(let r of t)++e;return e},zS=t=>Fy(t.toLowerCase()),xt=(...t)=>Array.prototype.concat.apply([],t),mf=t=>new Map(Object.entries(t)),HS=(t,e)=>{let r=[],n=0;for(let s of t.matchAll(e)){let i=s[0];n<s.index&&r.push(t.slice(n,s.index)),i.length>0&&r.push(i),n=s.index+i.length}return n<t.length&&r.push(t.slice(n)),r},Fy=t=>t.replace(new RegExp("\\p{M}","gu"),""),ky=(t,e,r=[])=>{if(!t||Array.isArray(t)||typeof t!="object")return`${e} must be a valid object`;for(let n of r)if(!(n in t))return`${e} must contain a "${n}" property`;return null},WS=t=>t.match(/\S+/g)||[],GS=class{constructor(){let t=function(...e){return t._call(...e)};return Object.setPrototypeOf(t,new.target.prototype)}},no=GS,JS=class extends no{constructor(t){super(),this.config=t}_call(t){return this.normalize(t)}},kr=JS,VS=class extends kr{tokenize_chinese_chars(t){let e=[];for(let r=0;r<t.length;++r){let n=t[r],s=n.charCodeAt(0);US(s)?(e.push(" "),e.push(n),e.push(" ")):e.push(n)}return e.join("")}strip_accents(t){return t.normalize("NFD").replace(new RegExp("\\p{Mn}","gu"),"")}is_control(t){switch(t){case" ":case`
|
|
331
|
+
`:case"\r":return!1;default:return new RegExp("^\\p{Cc}|\\p{Cf}|\\p{Co}|\\p{Cs}$","u").test(t)}}clean_text(t){let e=[];for(let r of t){let n=r.charCodeAt(0);n===0||n===65533||this.is_control(r)||(/^\s$/.test(r)?e.push(" "):e.push(r))}return e.join("")}normalize(t){return this.config.clean_text&&(t=this.clean_text(t)),this.config.handle_chinese_chars&&(t=this.tokenize_chinese_chars(t)),this.config.lowercase?(t=t.toLowerCase(),this.config.strip_accents!==!1&&(t=this.strip_accents(t))):this.config.strip_accents&&(t=this.strip_accents(t)),t}},KS=VS,YS=class extends kr{constructor(t){super(t),this.charsmap=t.precompiled_charsmap??null}normalize(t){return t=t.replace(/[\u0001-\u0008\u000B\u000E-\u001F\u007F\u008F\u009F]/gm,""),t=t.replace(/[\u0009\u000A\u000C\u000D\u00A0\u1680\u2000-\u200F\u2028\u2029\u202F\u205F\u2581\u3000\uFEFF\uFFFD]/gm," "),t.includes("\uFF5E")?t=t.split("\uFF5E").map(e=>e.normalize("NFKC")).join("\uFF5E"):t=t.normalize("NFKC"),t}},XS=YS,QS=class extends kr{constructor(t){super(t),this.normalizers=(t.normalizers??[]).map(e=>xy(e))}normalize(t){return this.normalizers.reduce((e,r)=>r?r.normalize(e):e,t)}},ZS=QS,ek=class extends kr{normalize(t){let e=ja(this.config.pattern??{});return e===null?t:t.replaceAll(e,this.config.content??"")}},tk=ek,rk=class extends kr{constructor(){super(...arguments),this.form="NFC"}normalize(t){return t=t.normalize(this.form),t}},qa=rk,nk=class extends qa{constructor(){super(...arguments),this.form="NFC"}},sk=nk,ok=class extends qa{constructor(){super(...arguments),this.form="NFD"}},ik=ok,ak=class extends qa{constructor(){super(...arguments),this.form="NFKC"}},uk=ak,ck=class extends qa{constructor(){super(...arguments),this.form="NFKD"}},lk=ck,fk=class extends kr{normalize(t){return this.config.strip_left&&this.config.strip_right?t=t.trim():(this.config.strip_left&&(t=t.trimStart()),this.config.strip_right&&(t=t.trimEnd())),t}},dk=fk,hk=class extends kr{normalize(t){return Fy(t)}},pk=hk,mk=class extends kr{normalize(t){return t.toLowerCase()}},gk=mk,yk=class extends kr{normalize(t){return t=this.config.prepend+t,t}},_k=yk;function bk(t){if(t===null)return null;switch(t.type){case"BertNormalizer":return new KS(t);case"Precompiled":return new XS(t);case"Sequence":return new ZS(t);case"Replace":return new tk(t);case"NFC":return new sk(t);case"NFD":return new ik(t);case"NFKC":return new uk(t);case"NFKD":return new lk(t);case"Strip":return new dk(t);case"StripAccents":return new pk(t);case"Lowercase":return new gk(t);case"Prepend":return new _k(t);default:throw new Error(`Unknown Normalizer type: ${t.type}`)}}var xy=bk,Ck=class extends no{pre_tokenize(t,e){return(Array.isArray(t)?t.map(r=>this.pre_tokenize_text(r,e)):this.pre_tokenize_text(t,e)).flat()}_call(t,e){return this.pre_tokenize(t,e)}},ir=Ck,wk=class extends ir{constructor(t){super(),this.config=t,this.add_prefix_space=this.config.add_prefix_space??!1,this.trim_offsets=this.config.trim_offsets??!1,this.use_regex=this.config.use_regex??!0,this.pattern=new RegExp("'s|'t|'re|'ve|'m|'ll|'d| ?\\p{L}+| ?\\p{N}+| ?[^\\s\\p{L}\\p{N}]+|\\s+(?!\\S)|\\s+","gu"),this.byte_encoder=Oy,this.text_encoder=new TextEncoder}pre_tokenize_text(t,e){return this.add_prefix_space&&!t.startsWith(" ")&&(t=" "+t),(this.use_regex?t.match(this.pattern)||[]:[t]).map(r=>Array.from(this.text_encoder.encode(r),n=>this.byte_encoder[n]).join(""))}},Ek=wk,Ak=class extends ir{pre_tokenize_text(t,e){return t.match(/\w+|[^\w\s]+/g)||[]}},Sk=Ak,kk=class extends ir{constructor(t){super(),this.replacement=t.replacement??"\u2581",this.str_rep=t.str_rep||this.replacement,this.prepend_scheme=t.prepend_scheme??"always"}pre_tokenize_text(t,e){let{section_index:r=void 0}=e??{},n=t.replaceAll(" ",this.str_rep);return!n.startsWith(this.replacement)&&(this.prepend_scheme==="always"||this.prepend_scheme==="first"&&r===0)&&(n=this.str_rep+n),[n]}},Dk=kk,Tk=class extends ir{constructor(t){super(),this.config=t,this.pattern=ja(this.config.pattern??{},this.config.invert??!0)}pre_tokenize_text(t){return this.pattern===null?[]:this.config.invert?t.match(this.pattern)||[]:this.config.behavior?.toLowerCase()==="removed"?t.split(this.pattern).filter(e=>e):HS(t,this.pattern)}},vk=Tk,Rk=class extends ir{constructor(t){super(),this.config=t,this.pattern=new RegExp(`[^${ro}]+|[${ro}]+`,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},Ok=Rk,Fk=class extends ir{constructor(t){super(),this.config=t;let e=`[^\\d]+|\\d${this.config.individual_digits?"":"+"}`;this.pattern=new RegExp(e,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},xk=Fk,Pk=class extends ir{constructor(){super(),this.pattern=new RegExp(`[^\\s${ro}]+|[${ro}]`,"gu")}pre_tokenize_text(t,e){return t.trim().match(this.pattern)||[]}},Ik=Pk,Nk=class extends ir{constructor(t){super(),this.config=t,this.pattern=ja(this.config.pattern??{}),this.content=this.config.content??""}pre_tokenize_text(t){return this.pattern===null?[t]:[t.replaceAll(this.pattern,this.config.content??"")]}},Bk=Nk,jk=class extends ir{constructor(t){super(),this.tokenizers=(t.pretokenizers??[]).map(e=>Py(e))}pre_tokenize_text(t,e){return this.tokenizers.reduce((r,n)=>n?n.pre_tokenize(r,e):r,[t])}},qk=jk,Lk=class extends ir{pre_tokenize_text(t){return WS(t)}},Uk=Lk;function Mk(t){if(t===null)return null;switch(t.type){case"BertPreTokenizer":return new Ik;case"Sequence":return new qk(t);case"Whitespace":return new Sk;case"WhitespaceSplit":return new Uk;case"Metaspace":return new Dk(t);case"ByteLevel":return new Ek(t);case"Split":return new vk(t);case"Punctuation":return new Ok(t);case"Digits":return new xk(t);case"Replace":return new Bk(t);default:throw new Error(`Unknown PreTokenizer type: ${t.type}`)}}var Py=Mk,$k=class extends no{constructor(t){super(),this.config=t,this.vocab=[],this.tokens_to_ids=new Map,this.unk_token_id=void 0,this.unk_token=void 0,this.end_of_word_suffix=void 0,this.fuse_unk=this.config.fuse_unk??!1}_call(t){let e=this.encode(t);return this.fuse_unk&&(e=LS(e,this.tokens_to_ids,this.unk_token_id)),e}convert_tokens_to_ids(t){return t.map(e=>this.tokens_to_ids.get(e)??this.unk_token_id)}convert_ids_to_tokens(t){return t.map(e=>this.vocab[Number(e)]??this.unk_token)}},La=$k,zk=class extends La{constructor(t){super(t),this.max_input_chars_per_word=100,this.tokens_to_ids=mf(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.max_input_chars_per_word=t.max_input_chars_per_word??100,this.vocab=new Array(this.tokens_to_ids.size);for(let[e,r]of this.tokens_to_ids)this.vocab[r]=e}encode(t){let e=[];for(let r of t){let n=[...r];if(n.length>this.max_input_chars_per_word){e.push(this.unk_token);continue}let s=!1,i=0,u=[];for(;i<n.length;){let c=n.length,l=null;for(;i<c;){let h=n.slice(i,c).join("");if(i>0&&(h=this.config.continuing_subword_prefix+h),this.tokens_to_ids.has(h)){l=h;break}--c}if(l===null){s=!0;break}u.push(l),i=c}s?e.push(this.unk_token):e.push(...u)}return e}},Dy=zk,Ty=class Iy{constructor(e,r){this.is_leaf=e,this.children=r}static default(){return new Iy(!1,new Map)}},Hk=class{constructor(){this.root=Ty.default()}extend(t){for(let e of t)this.push(e)}push(t){let e=this.root;for(let r of t){let n=e.children.get(r);n===void 0&&(n=Ty.default(),e.children.set(r,n)),e=n}e.is_leaf=!0}*common_prefix_search(t){let e=this.root;if(e===void 0)return;let r="";for(let n of t){if(r+=n,e=e.children.get(n),e===void 0)return;e.is_leaf&&(yield r)}}},Wk=Hk,hf=class Ny{constructor(e,r,n,s,i){this.token_id=e,this.node_id=r,this.pos=n,this.length=s,this.score=i,this.prev=null,this.backtrace_score=0}clone(){let e=new Ny(this.token_id,this.node_id,this.pos,this.length,this.score);return e.prev=this.prev,e.backtrace_score=this.backtrace_score,e}},Gk=class{constructor(t,e,r){this.chars=Array.from(t),this.len=this.chars.length,this.bos_token_id=e,this.eos_token_id=r,this.nodes=[],this.begin_nodes=Array.from({length:this.len+1},()=>[]),this.end_nodes=Array.from({length:this.len+1},()=>[]);let n=new hf(this.bos_token_id??0,0,0,0,0),s=new hf(this.eos_token_id??0,1,this.len,0,0);this.nodes.push(n.clone()),this.nodes.push(s.clone()),this.begin_nodes[this.len].push(s),this.end_nodes[0].push(n)}insert(t,e,r,n){let s=this.nodes.length,i=new hf(n,s,t,e,r);this.begin_nodes[t].push(i),this.end_nodes[t+e].push(i),this.nodes.push(i)}viterbi(){let t=this.len,e=0;for(;e<=t;){if(this.begin_nodes[e].length==0)return[];for(let i of this.begin_nodes[e]){i.prev=null;let u=0,c=null;for(let l of this.end_nodes[e]){let h=l.backtrace_score+i.score;(c===null||h>u)&&(c=l.clone(),u=h)}if(c!==null)i.prev=c,i.backtrace_score=u;else return[]}++e}let r=[],n=this.begin_nodes[t][0].prev;if(n===null)return[];let s=n.clone();for(;s.prev!==null;)r.push(s.clone()),s=s.clone().prev.clone();return r.reverse(),r}piece(t){return this.chars.slice(t.pos,t.pos+t.length).join("")}tokens(){return this.viterbi().map(t=>this.piece(t))}token_ids(){return this.viterbi().map(t=>t.token_id)}},Jk=Gk;function Vk(t){if(t.length===0)throw new Error("Array must not be empty");let e=t[0],r=0;for(let n=1;n<t.length;++n)t[n]<e&&(e=t[n],r=n);return[e,r]}var Kk=class extends La{constructor(t,e){super(t);let r=t.vocab.length;this.vocab=new Array(r),this.scores=new Array(r);for(let n=0;n<r;++n)[this.vocab[n],this.scores[n]]=t.vocab[n];this.unk_token_id=t.unk_id,this.unk_token=this.vocab[t.unk_id],this.tokens_to_ids=new Map(this.vocab.map((n,s)=>[n,s])),this.bos_token=" ",this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.min_score=Vk(this.scores)[0],this.unk_score=this.min_score-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new Wk,this.trie.extend(this.vocab),this.fuse_unk=!0}populate_nodes(t){let e=t.chars,r=1,n=0;for(;n<e.length;){let s=!1,i=[],u=e.slice(n).join(""),c=this.trie.common_prefix_search(u);for(let l of c){i.push(l);let h=this.tokens_to_ids.get(l),d=this.scores[h],p=$S(l);t.insert(n,p,d,h),!s&&p===r&&(s=!0)}s||t.insert(n,r,this.unk_score,this.unk_token_id),n+=r}}tokenize(t){let e=new Jk(t,this.bos_token_id,this.eos_token_id);return this.populate_nodes(e),e.tokens()}encode(t){let e=[];for(let r of t){let n=this.tokenize(r);e.push(...n)}return e}},vy=Kk,Yk=class{constructor(t=(r,n)=>r>n,e=1/0){this._heap=[],this._comparator=t,this._max_size=e}get size(){return this._heap.length}is_empty(){return this.size===0}peek(){return this._heap[0]}push(...t){return this.extend(t)}extend(t){for(let e of t)if(this.size<this._max_size)this._heap.push(e),this._sift_up();else{let r=this._smallest();this._comparator(e,this._heap[r])&&(this._heap[r]=e,this._sift_up_from(r))}return this.size}pop(){let t=this.peek(),e=this.size-1;return e>0&&this._swap(0,e),this._heap.pop(),this._sift_down(),t}replace(t){let e=this.peek();return this._heap[0]=t,this._sift_down(),e}_parent(t){return(t+1>>>1)-1}_left(t){return(t<<1)+1}_right(t){return t+1<<1}_greater(t,e){return this._comparator(this._heap[t],this._heap[e])}_swap(t,e){let r=this._heap[t];this._heap[t]=this._heap[e],this._heap[e]=r}_sift_up(){this._sift_up_from(this.size-1)}_sift_up_from(t){for(;t>0&&this._greater(t,this._parent(t));)this._swap(t,this._parent(t)),t=this._parent(t)}_sift_down(){let t=0;for(;this._left(t)<this.size&&this._greater(this._left(t),t)||this._right(t)<this.size&&this._greater(this._right(t),t);){let e=this._right(t)<this.size&&this._greater(this._right(t),this._left(t))?this._right(t):this._left(t);this._swap(t,e),t=e}}_smallest(){return 2**Math.floor(Math.log2(this.size))-1}},Xk=Yk,Qk=class{constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}put(t,e){this.cache.has(t)&&this.cache.delete(t),this.cache.set(t,e),this.cache.size>this.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}},Zk=Qk,eD=class extends La{constructor(t){super(t),this.tokens_to_ids=mf(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.vocab=new Array(this.tokens_to_ids.size);for(let[r,n]of this.tokens_to_ids)this.vocab[n]=r;let e=Array.isArray(t.merges[0]);this.merges=e?t.merges:t.merges.map(r=>r.split(" ",2)),this.bpe_ranks=new Map(this.merges.map((r,n)=>[JSON.stringify(r),n])),this.end_of_word_suffix=t.end_of_word_suffix,this.continuing_subword_suffix=t.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new Zk(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(t){if(t.length===0)return[];let e=this.cache.get(t);if(e!==void 0)return e;let r=Array.from(t);this.end_of_word_suffix&&(r[r.length-1]+=this.end_of_word_suffix);let n=[];if(r.length>1){let s=new Xk((c,l)=>c.score<l.score),i={token:r[0],bias:0,prev:null,next:null},u=i;for(let c=1;c<r.length;++c){let l={bias:c/r.length,token:r[c],prev:u,next:null};u.next=l,this.add_node(s,u),u=l}for(;!s.is_empty();){let c=s.pop();if(c.deleted||!c.next||c.next.deleted)continue;if(c.deleted=!0,c.next.deleted=!0,c.prev){let h={...c.prev};c.prev.deleted=!0,c.prev=h,h.prev?h.prev.next=h:i=h}let l={token:c.token+c.next.token,bias:c.bias,prev:c.prev,next:c.next.next};l.prev?(l.prev.next=l,this.add_node(s,l.prev)):i=l,l.next&&(l.next.prev=l,this.add_node(s,l))}for(let c=i;c!==null;c=c.next)n.push(c.token)}else n=r;if(this.continuing_subword_suffix)for(let s=0;s<n.length-1;++s)n[s]+=this.continuing_subword_suffix;return t.length<this.max_length_to_cache&&this.cache.put(t,n),n}add_node(t,e){let r=this.bpe_ranks.get(JSON.stringify([e.token,e.next.token]));r!==void 0&&(e.score=r+e.bias,t.push(e))}encode(t){let e=[];for(let r of t){if(this.ignore_merges&&this.tokens_to_ids.has(r)){e.push(r);continue}let n=this.bpe(r);for(let s of n)if(this.tokens_to_ids.has(s))e.push(s);else if(this.byte_fallback){let i=Array.from(this.text_encoder.encode(s)).map(u=>`<0x${u.toString(16).toUpperCase().padStart(2,"0")}>`);i.every(u=>this.tokens_to_ids.has(u))?e.push(...i):e.push(this.unk_token)}else e.push(this.unk_token)}return e}},Ry=eD,tD=class extends La{constructor(t,e){super(t);let r=t.vocab;this.tokens_to_ids=mf(e.target_lang?r[e.target_lang]:r),this.bos_token=e.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=e.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=e.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=new Array(this.tokens_to_ids.size);for(let[n,s]of this.tokens_to_ids)this.vocab[s]=n}encode(t){return t}},rD=tD;function nD(t,e){switch(t.type){case"WordPiece":return new Dy(t);case"Unigram":return new vy(t,e.eos_token);case"BPE":return new Ry(t);default:if(t.vocab)return Array.isArray(t.vocab)?new vy(t,e.eos_token):Object.hasOwn(t,"continuing_subword_prefix")&&Object.hasOwn(t,"unk_token")?Object.hasOwn(t,"merges")?new Ry(t):new Dy(t):new rD(t,{target_lang:e.target_lang,bos_token:e.bos_token,eos_token:e.eos_token,pad_token:e.pad_token,unk_token:e.unk_token});throw new Error(`Unknown TokenizerModel type: ${t?.type}`)}}var sD=nD,oD=class extends no{constructor(t){super(),this.config=t}_call(t,...e){return this.post_process(t,...e)}},so=oD,iD=class extends so{post_process(t,e=null,r=!0){let n=e===null?this.config.single:this.config.pair,s=[],i=[];for(let u of n)"SpecialToken"in u?r&&(s.push(u.SpecialToken.id),i.push(u.SpecialToken.type_id)):"Sequence"in u&&(u.Sequence.id==="A"?(s=xt(s,t),i=xt(i,new Array(t.length).fill(u.Sequence.type_id))):u.Sequence.id==="B"&&(s=xt(s,e),i=xt(i,new Array(e.length).fill(u.Sequence.type_id))));return{tokens:s,token_type_ids:i}}},aD=iD,uD=class extends so{post_process(t,e=null){return{tokens:e?xt(t,e):t}}},cD=uD,lD=class extends so{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e=null,r=!0){r&&(t=xt([this.cls[0]],t,[this.sep[0]]));let n=new Array(t.length).fill(0);if(e){let s=[],i=r?[this.sep[0]]:[];t=xt(t,s,e,i),n=xt(n,new Array(e.length+s.length+i.length).fill(1))}return{tokens:t,token_type_ids:n}}},fD=lD,dD=class extends so{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e,r=!0){r&&(t=xt([this.cls[0]],t,[this.sep[0]]));let n=new Array(t.length).fill(0);if(e){let s=r?[this.sep[0]]:[],i=r?[this.sep[0]]:[];t=xt(t,s,e,i),n=xt(n,new Array(e.length+s.length+i.length).fill(1))}return{tokens:t,token_type_ids:n}}},hD=dD,pD=class extends so{constructor(t){super(t),this.processors=(t.processors??[]).map(e=>By(e))}post_process(t,e=null,r=!0){let n={tokens:t};for(let s of this.processors)n=s.post_process(n.tokens,e,r);return n}},mD=pD;function gD(t){if(t===null)return null;switch(t.type){case"TemplateProcessing":return new aD(t);case"ByteLevel":return new cD(t);case"BertProcessing":return new fD(t);case"RobertaProcessing":return new hD(t);case"Sequence":return new mD(t);default:throw new Error(`Unknown PostProcessor type: ${t.type}`)}}var By=gD,yD=class extends no{constructor(t){super(),this.config=t,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets="trim_offsets"in t?t.trim_offsets:!1}_call(t){return this.decode(t)}decode(t){return this.decode_chain(t).join("")}},ar=yD,_D=class extends ar{constructor(t){super(t),this.byte_decoder=BS,this.text_decoder=new TextDecoder("utf-8",{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(t){let e=t.join(""),r=new Uint8Array([...e].map(n=>this.byte_decoder[n]));return this.text_decoder.decode(r)}decode_chain(t){let e=[],r=[];for(let n of t)this.added_tokens.find(s=>s.content===n)!==void 0?(r.length>0&&(e.push(this.convert_tokens_to_string(r)),r=[]),e.push(n)):r.push(n);return r.length>0&&e.push(this.convert_tokens_to_string(r)),e}},bD=_D,CD=class extends ar{constructor(t){super(t),this.cleanup=t.cleanup}decode_chain(t){return t.map((e,r)=>{if(r!==0){let n=this.config.prefix;n&&e.startsWith(n)?e=e.replace(n,""):e=" "+e}return this.cleanup&&(e=pf(e)),e})}},wD=CD,ED=class extends ar{constructor(t){super(t),this.replacement=t.replacement??"\u2581"}decode_chain(t){let e=[];for(let r=0;r<t.length;++r){let n=t[r].replaceAll(this.replacement," ");r==0&&n.startsWith(" ")&&(n=n.substring(1)),e.push(n)}return e}},AD=ED,SD=class extends ar{constructor(t){super(t),this.suffix=t.suffix??""}decode_chain(t){return t.map((e,r)=>e.replaceAll(this.suffix,r===t.length-1?"":" "))}},kD=SD,DD=class extends ar{constructor(t){super(t),this.pad_token=t.pad_token??"",this.word_delimiter_token=t.word_delimiter_token??"",this.cleanup=t.cleanup}convert_tokens_to_string(t){if(t.length===0)return"";let e=[t[0]];for(let n=1;n<t.length;++n)t[n]!==e.at(-1)&&e.push(t[n]);let r=e.filter(n=>n!==this.pad_token).join("");return this.cleanup&&(r=pf(r).replaceAll(this.word_delimiter_token," ").trim()),r}decode_chain(t){return[this.convert_tokens_to_string(t)]}},TD=DD,vD=class extends ar{constructor(t){super(t),this.decoders=(t.decoders??[]).map(e=>jy(e))}decode_chain(t){return this.decoders.reduce((e,r)=>r.decode_chain(e),t)}},RD=vD,OD=class extends ar{decode_chain(t){let e=ja(this.config.pattern),r=this.config.content??"";return e===null?t:t.map(n=>n.replaceAll(e,r))}},FD=OD,xD=class extends ar{decode_chain(t){return[t.join("")]}},PD=xD,ID=class extends ar{constructor(t){super(t),this.content=t.content??"",this.start=t.start??0,this.stop=t.stop??0}decode_chain(t){return t.map(e=>{let r=0;for(let s=0;s<this.start&&e[s]===this.content;++s)r=s+1;let n=e.length;for(let s=0;s<this.stop;++s){let i=e.length-s-1;if(e[i]===this.content){n=i;continue}else break}return e.slice(r,n)})}},ND=ID,BD=class extends ar{constructor(t){super(t),this.text_decoder=new TextDecoder}decode_chain(t){let e=[],r=[];for(let n of t){let s=null;if(n.length===6&&n.startsWith("<0x")&&n.endsWith(">")){let i=parseInt(n.slice(3,5),16);isNaN(i)||(s=i)}if(s!==null)r.push(s);else{if(r.length>0){let i=this.text_decoder.decode(Uint8Array.from(r));e.push(i),r=[]}e.push(n)}}if(r.length>0){let n=this.text_decoder.decode(Uint8Array.from(r));e.push(n),r=[]}return e}},jD=BD;function qD(t){if(t===null)return null;switch(t.type){case"ByteLevel":return new bD(t);case"WordPiece":return new wD(t);case"Metaspace":return new AD(t);case"BPEDecoder":return new kD(t);case"CTC":return new TD(t);case"Sequence":return new RD(t);case"Replace":return new FD(t);case"Fuse":return new PD(t);case"Strip":return new ND(t);case"ByteFallback":return new jD(t);default:throw new Error(`Unknown Decoder type: ${t.type}`)}}var jy=qD,LD=class{constructor(t,e){let r=ky(t,"Tokenizer",["model","decoder","post_processor","pre_tokenizer","normalizer"]);if(r)throw new Error(r);let n=ky(e,"Config");if(n)throw new Error(n);this.tokenizer=t,this.config=e,this.normalizer=xy(this.tokenizer.normalizer),this.pre_tokenizer=Py(this.tokenizer.pre_tokenizer),this.model=sD(this.tokenizer.model,this.config),this.post_processor=By(this.tokenizer.post_processor),this.decoder=jy(this.tokenizer.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[],this.tokenizer.added_tokens.forEach(s=>{let i=new IS(s);this.added_tokens.push(i),this.model.tokens_to_ids.set(i.content,i.id),this.model.vocab[i.id]=i.content,i.special&&(this.special_tokens.push(i.content),this.all_special_ids.push(i.id))}),(this.config.additional_special_tokens??[]).forEach(s=>{this.special_tokens.includes(s)||this.special_tokens.push(s)}),this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.added_tokens_splitter=new xS(this.added_tokens.map(s=>s.content)),this.added_tokens_map=new Map(this.added_tokens.map(s=>[s.content,s])),this.remove_space=this.config.remove_space,this.clean_up_tokenization_spaces=this.config.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=this.config.do_lowercase_and_remove_accent??!1}encode(t,{text_pair:e=null,add_special_tokens:r=!0,return_token_type_ids:n=null}={}){let{tokens:s,token_type_ids:i}=this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}),u=this.model.convert_tokens_to_ids(s),c={ids:u,tokens:s,attention_mask:new Array(u.length).fill(1)};return n&&i&&(c.token_type_ids=i),c}decode(t,e={}){if(!Array.isArray(t)||t.length===0||!MS(t[0]))throw Error("token_ids must be a non-empty array of integers.");let r=this.model.convert_ids_to_tokens(t);e.skip_special_tokens&&(r=r.filter(s=>!this.special_tokens.includes(s)));let n=this.decoder?this.decoder(r):r.join(" ");return this.decoder&&this.decoder.end_of_word_suffix&&(n=n.replaceAll(this.decoder.end_of_word_suffix," "),e.skip_special_tokens&&(n=n.trim())),(e.clean_up_tokenization_spaces??this.clean_up_tokenization_spaces)&&(n=pf(n)),n}tokenize(t,{text_pair:e=null,add_special_tokens:r=!1}={}){return this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}).tokens}encode_text(t){if(t===null)return null;let e=this.added_tokens_splitter.split(t);return e.forEach((r,n)=>{let s=this.added_tokens_map.get(r);s&&(s.lstrip&&n>0&&(e[n-1]=e[n-1].trimEnd()),s.rstrip&&n<e.length-1&&(e[n+1]=e[n+1].trimStart()))}),e.flatMap((r,n)=>{if(r.length===0)return[];if(this.added_tokens_map.has(r))return[r];if(this.remove_space===!0&&(r=r.trim().split(/\s+/).join(" ")),this.do_lowercase_and_remove_accent&&(r=zS(r)),this.normalizer!==null&&(r=this.normalizer(r)),r.length===0)return[];let s=this.pre_tokenizer!==null?this.pre_tokenizer(r,{section_index:n}):[r];return this.model(s)})}tokenize_helper(t,{text_pair:e=null,add_special_tokens:r=!0}){let n=this.encode_text(t),s=this.encode_text(e||null);return this.post_processor?this.post_processor(n,s,r):{tokens:xt(n??[],s??[])}}token_to_id(t){return this.model.tokens_to_ids.get(t)}id_to_token(t){return this.model.vocab[t]}get_added_tokens_decoder(){let t=new Map;for(let e of this.added_tokens)t.set(e.id,e);return t}},qy=LD;var Ua=class{type="huggingface";name;modelId;logger;options;tokenizer=null;cacheDir;safeModelName;constructor(e,r,n={}){this.modelId=e,this.logger=r,this.options=n,this.cacheDir=n.cacheDir||(0,oo.join)((0,Ly.homedir)(),".claude-code-router",".huggingface"),this.safeModelName=e.replace(/\//g,"_").replace(/[^a-zA-Z0-9_-]/g,"_"),this.name=`huggingface-${e.split("/").pop()}`}getCachePaths(){let e=(0,oo.join)(this.cacheDir,this.safeModelName);return{modelDir:e,tokenizerJson:(0,oo.join)(e,"tokenizer.json"),tokenizerConfig:(0,oo.join)(e,"tokenizer_config.json")}}ensureDir(e){(0,as.existsSync)(e)||(0,as.mkdirSync)(e,{recursive:!0})}async loadFromCache(){try{let e=this.getCachePaths();if(!(0,as.existsSync)(e.tokenizerJson)||!(0,as.existsSync)(e.tokenizerConfig))return null;let[r,n]=await Promise.all([io.promises.readFile(e.tokenizerJson,"utf-8"),io.promises.readFile(e.tokenizerConfig,"utf-8")]);return{tokenizerJson:JSON.parse(r),tokenizerConfig:JSON.parse(n)}}catch(e){return this.logger?.warn(`Failed to load from cache: ${e.message}`),null}}async downloadAndCache(){let e=this.getCachePaths(),r={json:`https://huggingface.co/${this.modelId}/resolve/main/tokenizer.json`,config:`https://huggingface.co/${this.modelId}/resolve/main/tokenizer_config.json`};this.logger?.info(`Downloading tokenizer files for ${this.modelId}`);let n=new AbortController,s=setTimeout(()=>n.abort(),this.options.timeout||3e4);try{let[i,u]=await Promise.all([fetch(r.json,{signal:n.signal}),fetch(r.config,{signal:n.signal})]);if(!i.ok)throw new Error(`Failed to fetch tokenizer.json: ${i.statusText}`);let[c,l]=await Promise.all([i.json(),u.ok?u.json():Promise.resolve({})]);return this.ensureDir(e.modelDir),await Promise.all([io.promises.writeFile(e.tokenizerJson,JSON.stringify(c,null,2)),io.promises.writeFile(e.tokenizerConfig,JSON.stringify(l,null,2))]),{tokenizerJson:c,tokenizerConfig:l}}finally{clearTimeout(s)}}async initialize(){try{this.logger?.info(`Initializing HuggingFace tokenizer: ${this.modelId}`);let e=this.getCachePaths();this.ensureDir(this.cacheDir);let r=await this.loadFromCache()||await this.downloadAndCache();this.tokenizer=new qy(r.tokenizerJson,r.tokenizerConfig),this.logger?.info(`Tokenizer initialized: ${this.name}`)}catch(e){throw this.logger?.error(`Failed to initialize tokenizer: ${e.message}`),new Error(`Failed to initialize HuggingFace tokenizer for ${this.modelId}: ${e.message}`)}}async countTokens(e){if(!this.tokenizer)throw new Error("Tokenizer not initialized");try{let r=this.extractTextFromRequest(e);return this.tokenizer.encode(r).ids.length}catch(r){throw this.logger?.error(`Error counting tokens: ${r.message}`),r}}isInitialized(){return this.tokenizer!==null}encodeText(e){if(!this.tokenizer)throw new Error("Tokenizer not initialized");return this.tokenizer.encode(e).ids}dispose(){this.tokenizer=null}extractTextFromRequest(e){let r=[],{messages:n,system:s,tools:i}=e;if(Array.isArray(n)){for(let u of n)if(typeof u.content=="string")r.push(u.content);else if(Array.isArray(u.content))for(let c of u.content)c.type==="text"&&c.text?r.push(c.text):c.type==="tool_use"&&c.input?r.push(JSON.stringify(c.input)):c.type==="tool_result"&&r.push(typeof c.content=="string"?c.content:JSON.stringify(c.content))}if(typeof s=="string")r.push(s);else if(Array.isArray(s)){for(let u of s)if(u.type==="text"){if(typeof u.text=="string")r.push(u.text);else if(Array.isArray(u.text))for(let c of u.text)c&&r.push(c)}}if(i)for(let u of i)u.name&&r.push(u.name),u.description&&r.push(u.description),u.input_schema&&r.push(JSON.stringify(u.input_schema));return r.join(" ")}};var Ma=class{type="api";name;config;logger;options;constructor(e,r,n={}){if(!e.url||!e.apiKey)throw new Error("API tokenizer requires url and apiKey");this.config={url:e.url,apiKey:e.apiKey,requestFormat:e.requestFormat||"standard",responseField:e.responseField||"token_count",headers:e.headers||{}},this.logger=r,this.options=n;try{let s=new URL(e.url);this.name=`api-${s.hostname}`}catch{this.name=`api-${e.url}`}}async initialize(){try{new URL(this.config.url)}catch{throw new Error(`Invalid API URL: ${this.config.url}`)}}async countTokens(e){try{let r=this.formatRequestBody(e),n={"Content-Type":"application/json",Authorization:`Bearer ${this.config.apiKey}`,...this.config.headers},s=new AbortController,i=setTimeout(()=>s.abort(),this.options.timeout||3e4),u=await fetch(this.config.url,{method:"POST",headers:n,body:JSON.stringify(r),signal:s.signal});if(clearTimeout(i),!u.ok)throw new Error(`API tokenizer request failed: ${u.status} ${u.statusText}`);let c=await u.json();return this.extractTokenCount(c)}catch(r){throw r.name==="AbortError"?new Error("API tokenizer request timed out"):r}}isInitialized(){return!0}dispose(){}formatRequestBody(e){switch(this.config.requestFormat){case"standard":return e;case"openai":return{model:"gpt-3.5-turbo",messages:this.extractMessagesAsOpenAIFormat(e)};case"anthropic":return{messages:e.messages||[],system:e.system,tools:e.tools};case"custom":return{text:this.extractConcatenatedText(e)};default:return e}}extractMessagesAsOpenAIFormat(e){return e.messages?e.messages.map(r=>({role:r.role,content:this.extractTextFromMessage(r)})):[]}extractTextFromMessage(e){return typeof e.content=="string"?e.content:Array.isArray(e.content)?e.content.map(r=>r.type==="text"&&r.text?r.text:r.type==="tool_use"&&r.input?JSON.stringify(r.input):r.type==="tool_result"?typeof r.content=="string"?r.content:JSON.stringify(r.content):"").join(" "):""}extractConcatenatedText(e){let r=[];return e.messages&&e.messages.forEach(n=>{r.push(this.extractTextFromMessage(n))}),typeof e.system=="string"?r.push(e.system):Array.isArray(e.system)&&e.system.forEach(n=>{n.type==="text"&&(typeof n.text=="string"?r.push(n.text):Array.isArray(n.text)&&n.text.forEach(s=>{s&&r.push(s)}))}),e.tools&&e.tools.forEach(n=>{n.name&&r.push(n.name),n.description&&r.push(n.description),n.input_schema&&r.push(JSON.stringify(n.input_schema))}),r.join(" ")}extractTokenCount(e){try{let r=this.config.responseField,n=r.split("."),s=e;for(let i of n){if(s==null)throw new Error(`Field path '${r}' not found in response`);s=s[i]}if(typeof s!="number")throw new Error(`Expected number at field path '${r}', got ${typeof s}`);return s}catch(r){throw this.logger?.error(`Failed to extract token count from API response: ${r.message}. Response: ${JSON.stringify(e)}`),new Error(`Invalid response from API tokenizer: ${r.message}`)}}};var yn=class{tokenizers=new Map;configService;logger;options;fallbackTokenizer;constructor(e,r,n={}){this.configService=e,this.logger=r,this.options={timeout:n.timeout??3e4,...n}}async initialize(){try{this.fallbackTokenizer=new to("cl100k_base"),await this.fallbackTokenizer.initialize(),this.tokenizers.set("fallback",this.fallbackTokenizer),this.logger?.info("TokenizerService initialized successfully")}catch(e){throw this.logger?.error(`TokenizerService initialization error: ${e.message}`),e}}async getTokenizer(e){let r=this.getCacheKey(e);if(this.tokenizers.has(r))return this.tokenizers.get(r);let n;try{switch(e.type){case"tiktoken":n=new to(e.encoding||"cl100k_base");break;case"huggingface":this.logger?.info(`Initializing HuggingFace tokenizer for model: ${e.model}`),n=new Ua(e.model,this.logger,{timeout:this.options.timeout});break;case"api":n=new Ma(e,this.logger,{timeout:this.options.timeout});break;default:throw new Error(`Unknown tokenizer type: ${e.type}`)}return this.logger?.info(`Calling initialize() on ${e.type} tokenizer...`),await n.initialize(),this.tokenizers.set(r,n),this.logger?.info(`Tokenizer initialized successfully: ${e.type} (${r})`),n}catch(s){return this.logger?.error(`Failed to initialize ${e.type} tokenizer: ${s.message}`),this.logger?.error(`Error stack: ${s.stack}`),this.fallbackTokenizer||await this.initialize(),this.fallbackTokenizer}}async countTokens(e,r){let n=r?await this.getTokenizer(r):this.fallbackTokenizer;return{tokenCount:await n.countTokens(e),tokenizerUsed:n.name,cached:!1}}getTokenizerConfigForModel(e,r){let s=(this.configService.get("providers")||[]).find(i=>i.name===e);if(s?.tokenizer)return s.tokenizer.models?.[r]?s.tokenizer.models[r]:s.tokenizer.default}dispose(){this.tokenizers.forEach(e=>{try{e.dispose()}catch(r){this.logger?.error(`Error disposing tokenizer: ${r}`)}}),this.tokenizers.clear()}getCacheKey(e){switch(e.type){case"tiktoken":return`tiktoken:${e.encoding||"cl100k_base"}`;case"huggingface":return`hf:${e.model}`;case"api":return`api:${e.url}`;default:return`unknown:${JSON.stringify(e)}`}}};var Uy=require("tiktoken");var gf=class{capacity;cache;constructor(e){this.capacity=e,this.cache=new Map}get(e){if(!this.cache.has(e))return;let r=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,r),r}put(e,r){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.capacity){let n=this.cache.keys().next().value;n!==void 0&&this.cache.delete(n)}this.cache.set(e,r)}values(){return Array.from(this.cache.values())}},$a=new gf(100);var za=require("fs/promises"),Wa=require("fs/promises"),Ha=require("path"),us=require("@CCR/shared"),My=require("lru-cache"),Dr=(0,Uy.get_encoding)("cl100k_base"),yf=(t,e,r)=>{let n=0;return Array.isArray(t)&&t.forEach(s=>{typeof s.content=="string"?n+=Dr.encode(s.content).length:Array.isArray(s.content)&&s.content.forEach(i=>{i.type==="text"?n+=Dr.encode(i.text).length:i.type==="tool_use"?n+=Dr.encode(JSON.stringify(i.input)).length:i.type==="tool_result"&&(n+=Dr.encode(typeof i.content=="string"?i.content:JSON.stringify(i.content)).length)})}),typeof e=="string"?n+=Dr.encode(e).length:Array.isArray(e)&&e.forEach(s=>{s.type==="text"&&(typeof s.text=="string"?n+=Dr.encode(s.text).length:Array.isArray(s.text)&&s.text.forEach(i=>{n+=Dr.encode(i||"").length}))}),r&&r.forEach(s=>{s.description&&(n+=Dr.encode(s.name+s.description).length),s.input_schema&&(n+=Dr.encode(JSON.stringify(s.input_schema)).length)}),n},UD=async(t,e)=>{if(t.sessionId){let r=await _f(t.sessionId);if(r){let n=(0,Ha.join)(us.HOME_DIR,r,"config.json"),s=(0,Ha.join)(us.HOME_DIR,r,`${t.sessionId}.json`);try{let i=JSON.parse(await(0,za.readFile)(s,"utf8"));if(i&&i.Router)return i.Router}catch{}try{let i=JSON.parse(await(0,za.readFile)(n,"utf8"));if(i&&i.Router)return i.Router}catch{}}}},MD=async(t,e,r,n)=>{let s=await UD(t,r),i=r.get("providers")||[],u=s||r.get("Router");if(t.body.model.includes(",")){let[p,A]=t.body.model.split(","),R=i.find(_=>_.name.toLowerCase()===p),S=R?.models?.find(_=>_.toLowerCase()===A);return R&&S?{model:`${R.name},${S}`,scenarioType:"default"}:{model:t.body.model,scenarioType:"default"}}let c=u?.longContextThreshold||6e4,l=n&&n.input_tokens>c&&e>2e4,h=e>c;if((l||h)&&u?.longContext)return t.log.info(`Using long context model due to token count: ${e}, threshold: ${c}`),{model:u.longContext,scenarioType:"longContext"};if(t.body?.system?.length>1&&t.body?.system[1]?.text?.startsWith("<CCR-SUBAGENT-MODEL>")){let p=t.body?.system[1].text.match(/<CCR-SUBAGENT-MODEL>(.*?)<\/CCR-SUBAGENT-MODEL>/s);if(p)return t.body.system[1].text=t.body.system[1].text.replace(`<CCR-SUBAGENT-MODEL>${p[1]}</CCR-SUBAGENT-MODEL>`,""),{model:p[1],scenarioType:"default"}}let d=r.get("Router");return t.body.model?.includes("claude")&&t.body.model?.includes("haiku")&&d?.background?(t.log.info(`Using background model for ${t.body.model}`),{model:d.background,scenarioType:"background"}):Array.isArray(t.body.tools)&&t.body.tools.some(p=>p.type?.startsWith("web_search"))&&u?.webSearch?{model:u.webSearch,scenarioType:"webSearch"}:t.body.thinking&&u?.think?(t.log.info(`Using think model for ${t.body.thinking}`),{model:u.think,scenarioType:"think"}):{model:u?.default,scenarioType:"default"}},Ga=async(t,e,r)=>{let{configService:n,event:s}=r;if(t.body.metadata?.user_id){let d=t.body.metadata.user_id.split("_session_");d.length>1&&(t.sessionId=d[1])}let i=$a.get(t.sessionId),{messages:u,system:c=[],tools:l}=t.body,h=n.get("REWRITE_SYSTEM_PROMPT");if(h&&c.length>1&&c[1]?.text?.includes("<env>")){let d=await(0,za.readFile)(h,"utf-8");c[1].text=`${d}<env>${c[1].text.split("<env>").pop()}`}try{let[d,p]=t.body.model.split(","),A=r.tokenizerService?.getTokenizerConfigForModel(d,p),R;r.tokenizerService?R=(await r.tokenizerService.countTokens({messages:u,system:c,tools:l},A)).tokenCount:R=yf(u,c,l);let S,_=n.get("CUSTOM_ROUTER_PATH");if(_)try{let y=require(_);t.tokenCount=R,S=await y(t,n.getAll(),{event:s})}catch(y){t.log.error(`failed to load custom router: ${y.message}`)}if(S)t.scenarioType="default";else{let y=await MD(t,R,n,i);S=y.model,t.scenarioType=y.scenarioType}t.body.model=S}catch(d){t.log.error(`Error in router middleware: ${d.message}`);let p=n.get("Router");t.body.model=p?.default,t.scenarioType="default"}},ao=new My.LRUCache({max:1e3}),_f=async t=>{if(ao.has(t)){let e=ao.get(t);return!e||e===""?null:e}try{let e=await(0,Wa.opendir)(us.CLAUDE_PROJECTS_DIR),r=[];for await(let i of e)i.isDirectory()&&r.push(i.name);let n=r.map(async i=>{let u=(0,Ha.join)(us.CLAUDE_PROJECTS_DIR,i,`${t}.jsonl`);try{return(await(0,Wa.stat)(u)).isFile()?i:null}catch{return null}}),s=await Promise.all(n);for(let i of s)if(i)return ao.set(t,i),i;return ao.set(t,""),null}catch(e){return console.error("Error searching for project by session:",e),ao.set(t,""),null}};var bf=class{plugins=new Map;pluginInstances=new Map;registerPlugin(e,r={}){this.pluginInstances.set(e.name,e),this.plugins.set(e.name,{name:e.name,enabled:r.enabled!==!1,options:r})}async enablePlugin(e,r){let n=this.plugins.get(e),s=this.pluginInstances.get(e);if(!n||!s)throw new Error(`Plugin ${e} not found`);n.enabled&&await r.register(s.register,n.options)}async enablePlugins(e){for(let[r,n]of this.plugins)if(n.enabled)try{await this.enablePlugin(r,e)}catch(s){let i=s instanceof Error?s.message:String(s);e.log?.error(`Failed to enable plugin ${r}: ${i}`)}}getPlugins(){return Array.from(this.plugins.values())}getPlugin(e){return this.pluginInstances.get(e)}hasPlugin(e){return this.pluginInstances.has(e)}isPluginEnabled(e){return this.plugins.get(e)?.enabled||!1}setPluginEnabled(e,r){let n=this.plugins.get(e);n&&(n.enabled=r)}removePlugin(e){this.plugins.delete(e),this.pluginInstances.delete(e)}clear(){this.plugins.clear(),this.pluginInstances.clear()}},Cf=new bf;var Yy=Ue(Gy(),1);var _n=class extends TransformStream{buffer="";currentEvent={};constructor(){super({transform:(e,r)=>{this.buffer+=e;let n=this.buffer.split(`
|
|
331
332
|
`);this.buffer=n.pop()||"";for(let s of n){let i=this.processLine(s);i&&r.enqueue(i)}},flush:e=>{if(this.buffer.trim()){let r=[];this.processLine(this.buffer.trim(),r),r.forEach(n=>e.enqueue(n))}Object.keys(this.currentEvent).length>0&&e.enqueue(this.currentEvent)}})}processLine(e,r){if(!e.trim()){if(Object.keys(this.currentEvent).length>0){let n={...this.currentEvent};return this.currentEvent={},r?(r.push(n),null):n}return null}if(e.startsWith("event:"))this.currentEvent.event=e.slice(6).trim();else if(e.startsWith("data:")){let n=e.slice(5).trim();if(n==="[DONE]")this.currentEvent.data={type:"done"};else try{this.currentEvent.data=JSON.parse(n)}catch{this.currentEvent.data={raw:n,error:"JSON parse failed"}}}else e.startsWith("id:")?this.currentEvent.id=e.slice(3).trim():e.startsWith("retry:")&&(this.currentEvent.retry=parseInt(e.slice(6).trim()));return null}};var uo=class extends TransformStream{constructor(){super({transform:(e,r)=>{let n="";e.event&&(n+=`event: ${e.event}
|
|
332
333
|
`),e.id&&(n+=`id: ${e.id}
|
|
333
334
|
`),e.retry&&(n+=`retry: ${e.retry}
|
|
334
335
|
`),e.data&&(e.data.type==="done"?n+=`data: [DONE]
|
|
335
336
|
`:n+=`data: ${JSON.stringify(e.data)}
|
|
336
337
|
`),n+=`
|
|
337
|
-
`,r.enqueue(n)}})}};var
|
|
338
|
+
`,r.enqueue(n)}})}};var Af=(t,e)=>{let r=t.getReader();return new ReadableStream({async start(n){try{for(;;){let{done:s,value:i}=await r.read();if(s){n.close();break}let u=await e(i,n);u!==void 0&&n.enqueue(u)}}catch(s){n.error(s)}finally{r.releaseLock()}}})};Sf();kf();Tf();Vy();var ho=new Map,Rf=new Map,Of={name:"token-speed",version:"1.0.0",description:"Statistics for streaming response token generation speed",register:(0,Yy.default)(async(t,e)=>{let r={reporter:["console","temp-file"],...e},n=Array.isArray(r.reporter)?r.reporter:[r.reporter];if(r.outputHandlers&&r.outputHandlers.length>0)ls.registerHandlers(r.outputHandlers);else{let i=[];for(let u of n)u==="console"?i.push({type:"console",enabled:!0,config:{colors:!0,level:"log"}}):u==="temp-file"?i.push({type:"temp-file",enabled:!0,config:{subdirectory:"claude-code-router",extension:"json",includeTimestamp:!0,prefix:"session"}}):u==="webhook"&&console.warn("[TokenSpeedPlugin] Webhook reporter requires explicit configuration in outputHandlers");i.length>0&&ls.registerHandlers(i)}r.outputOptions&&ls.setDefaultOptions(r.outputOptions);let s=async i=>{let u=t.tokenizerService;if(!u)return t.log?.warn("TokenizerService not available"),null;if(!i.provider||!i.model)return null;let c=i.provider,l=i.model,h=`${c}:${l}`;if(Rf.has(h))return Rf.get(h);let d=u.getTokenizerConfigForModel(c,l);if(!d)return t.log?.debug(`No tokenizer config for ${c}:${l}, using fallback`),null;try{let p=await u.getTokenizer(d);return Rf.set(h,p),t.log?.info(`Created tokenizer for ${c}:${l} - ${p.name}`),p}catch(p){return t.log?.warn(`Failed to create tokenizer for ${c}:${l}: ${p.message}`),null}};t.addHook("onRequest",async i=>{new URL(`http://127.0.0.1${i.url}`).pathname.endsWith("/v1/messages")&&(i.requestStartTime=performance.now())}),t.addHook("onSend",async(i,u,c)=>{let l=i.requestStartTime;if(!l)return;let h=i.id||Date.now().toString(),d;try{let S=i.body?.metadata?.user_id;if(S&&typeof S=="string"){let _=S.match(/_session_([a-f0-9-]+)/i);d=_?_[1]:void 0}}catch{}if(!d)return;let p=await s(i);if(c instanceof ReadableStream){ho.set(h,{requestId:h,sessionId:d,startTime:l,lastTokenTime:l,tokenCount:0,tokensPerSecond:0,tokenTimestamps:[],stream:!0});let[S,_]=c.tee();return(async()=>{let m=null,D=async C=>{let E=ho.get(h);if(!E)return;let v=performance.now();if(C){let x=(E.lastTokenTime-E.startTime)/1e3;x>0&&(E.tokensPerSecond=Math.round(E.tokenCount/x))}else{let x=v-1e3;E.tokenTimestamps=E.tokenTimestamps.filter($=>$>x),E.tokensPerSecond=E.tokenTimestamps.length}await Ky(E,n,r.outputOptions,C).catch(x=>{t.log?.warn(`Failed to output streaming stats: ${x.message}`)})};try{let E=_.pipeThrough(new TextDecoderStream).pipeThrough(new _n).getReader();for(m=setInterval(async()=>{ho.get(h)&&await D(!1)},1e3);;){let{done:v,value:x}=await E.read();if(v)break;let $=x,V=ho.get(h);if(!V)continue;let U=performance.now();if(!V.firstTokenTime&&($.event==="content_block_start"||$.event==="content_block_delta"||$.event==="text_block"||$.event==="content_block")&&(V.firstTokenTime=U,V.timeToFirstToken=Math.round(U-V.startTime)),$.event==="content_block_delta"&&$.data?.delta){let X=$.data.delta.type,re="";if(X==="text_delta"?re=$.data.delta.text||"":X==="input_json_delta"?re=$.data.delta.partial_json||"":X==="thinking_delta"&&(re=$.data.delta.thinking||""),re){let ie=p&&p.encodeText?p.encodeText(re).length:po(re);V.tokenCount+=ie,V.lastTokenTime=U;for(let le=0;le<ie;le++)V.tokenTimestamps.push(U)}}$.event==="message_stop"&&(m&&(clearInterval(m),m=null),await D(!0),ho.delete(h))}}catch(C){m&&clearInterval(m),C.name!=="AbortError"&&C.code!=="ERR_STREAM_PREMATURE_CLOSE"&&t.log?.warn(`Error processing token stats: ${C.message}`)}})().catch(m=>{console.log(m),t.log?.warn(`Background stats processing failed: ${m.message}`)}),S}let A=performance.now(),R=0;if(c&&typeof c=="string")try{let S=JSON.parse(c);if(S.usage?.output_tokens)R=S.usage.output_tokens;else{let _=S.content||S.message?.content||"";if(p)Array.isArray(_)?R=_.reduce((y,m)=>{if(m.type==="text"){let D=m.text||"";return y+(p.encodeText?p.encodeText(D).length:po(D))}return y},0):typeof _=="string"&&(R=p.encodeText?p.encodeText(_).length:po(_));else{let y=Array.isArray(_)?_.map(m=>m.text).join(""):_;R=po(y)}}}catch{}if(R>0){let S=(A-l)/1e3,_={requestId:h,sessionId:d,startTime:l,lastTokenTime:A,tokenCount:R,tokensPerSecond:S>0?Math.round(R/S):0,timeToFirstToken:Math.round(A-l),stream:!1,tokenTimestamps:[]};await Ky(_,n,r.outputOptions,!0)}return c})})};function po(t){let e=(t.match(/[\u4e00-\u9fa5]/g)||[]).length,r=t.length-e;return Math.ceil(e/1.5+r/4)}async function Ky(t,e,r,n=!1){let s=n?"[Token Speed Final]":"[Token Speed]",i={requestId:t.requestId.substring(0,8),sessionId:t.sessionId,stream:t.stream,tokenCount:t.tokenCount,tokensPerSecond:t.tokensPerSecond,timeToFirstToken:t.timeToFirstToken?`${t.timeToFirstToken}ms`:"N/A",duration:`${((t.lastTokenTime-t.startTime)/1e3).toFixed(2)}s`,timestamp:Date.now()},u={prefix:s,metadata:{sessionId:t.sessionId},...r};for(let c of e)try{await ls.outputToType(c,i,u)}catch(l){console.error(`[TokenSpeedPlugin] Failed to output to ${c}:`,l)}}function JD(t={}){let e=(0,Xy.default)({bodyLimit:52428800,...t});return e.setErrorHandler(Jd),e.register(Qy.default),e}var Ff=class{app;configService;providerService;transformerService;tokenizerService;constructor(e={}){let{initialConfig:r,...n}=e;this.app=JD({...n,logger:n.logger??!0}),this.configService=new rn(e),this.transformerService=new gn(this.configService,this.app.log),this.tokenizerService=new yn(this.configService,this.app.log),this.transformerService.initialize().finally(()=>{this.providerService=new nn(this.configService,this.transformerService,this.app.log)}),this.tokenizerService.initialize().catch(s=>{this.app.log.error(`Failed to initialize TokenizerService: ${s}`)})}async register(e,r){await this.app.register(e,r)}addHook(e,r){this.app.addHook(e,r)}async registerNamespace(e,r){if(!e)throw new Error("name is required");if(e==="/"){await this.app.register(async c=>{c.decorate("configService",this.configService),c.decorate("transformerService",this.transformerService),c.decorate("providerService",this.providerService),c.decorate("tokenizerService",this.tokenizerService),c.addHook("preHandler",async(l,h)=>{new URL(`http://127.0.0.1${l.url}`).pathname.endsWith("/v1/messages")&&await Ga(l,h,{configService:this.configService,tokenizerService:this.tokenizerService})}),await xu(c)});return}if(!r)throw new Error("options is required");let n=new rn({initialConfig:{providers:r.Providers,Router:r.Router}}),s=new gn(n,this.app.log);await s.initialize();let i=new nn(n,s,this.app.log),u=new yn(n,this.app.log);await u.initialize(),await this.app.register(async c=>{c.decorate("configService",n),c.decorate("transformerService",s),c.decorate("providerService",i),c.decorate("tokenizerService",u),c.addHook("preHandler",async(l,h)=>{new URL(`http://127.0.0.1${l.url}`).pathname.endsWith("/v1/messages")&&await Ga(l,h,{configService:n,tokenizerService:u})}),await xu(c)},{prefix:e})}async start(){try{this.app._server=this,this.app.addHook("preHandler",(n,s,i)=>{if(new URL(`http://127.0.0.1${n.url}`).pathname.endsWith("/v1/messages")&&n.body){let c=n.body;n.log.info({data:c,type:"request body"}),c.stream||(c.stream=!1)}i()}),await this.registerNamespace("/"),this.app.addHook("preHandler",async(n,s)=>{if(new URL(`http://127.0.0.1${n.url}`).pathname.endsWith("/v1/messages")&&n.body)try{let u=n.body;if(!u||!u.model)return s.code(400).send({error:"Missing model in request body"});let[c,...l]=u.model.split(",");u.model=l.join(","),n.provider=c,n.model=l;return}catch(u){return n.log.error({error:u},"Error in modelProviderMiddleware:"),s.code(500).send({error:"Internal server error"})}});let e=await this.app.listen({port:parseInt(this.configService.get("PORT")||"3000",10),host:this.configService.get("HOST")||"127.0.0.1"});this.app.log.info(`\u{1F680} LLMs API server listening on ${e}`);let r=async n=>{this.app.log.info(`Received ${n}, shutting down gracefully...`),await this.app.close(),process.exit(0)};process.on("SIGINT",()=>r("SIGINT")),process.on("SIGTERM",()=>r("SIGTERM"))}catch(e){this.app.log.error(`Error starting server: ${e}`),process.exit(1)}}},VD=Ff;0&&(module.exports={ConfigService,ProviderService,SSEParserTransform,SSESerializerTransform,TokenizerService,TransformerService,calculateTokenCount,pluginManager,rewriteStream,router,searchProjectBySession,sessionUsageCache,tokenSpeedPlugin});
|
|
338
339
|
/*! Bundled license information:
|
|
339
340
|
|
|
340
341
|
web-streams-polyfill/dist/ponyfill.es2018.js:
|