eser 4.1.37 → 4.1.39
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/chunks/add-V7YYHLFH.js +8 -0
- package/chunks/{anthropic-2MXDKLNX.js → anthropic-QBGNUIP3.js} +1 -1
- package/chunks/approve-HVIH2A3C.js +2 -0
- package/chunks/ask-PMB64QWG.js +3 -0
- package/chunks/block-JSK5CJPO.js +2 -0
- package/chunks/browser-JGBNWUEQ.js +2 -0
- package/chunks/{build-EJLFNB4I.js → build-HUKFUVPB.js} +2 -2
- package/chunks/bun-HIMXX54I.js +2 -0
- package/chunks/changelog-gen-JV3EHOMV.js +10 -0
- package/chunks/{chunk-GJ4LCA6D.js → chunk-2KKLYXSA.js} +1 -1
- package/chunks/{chunk-JYNHFD6B.js → chunk-2XNFZXHY.js} +1 -1
- package/chunks/{chunk-2EVWKUN6.js → chunk-3AA3RXKD.js} +1 -1
- package/chunks/{chunk-CUIMSX4V.js → chunk-3IZX4OZ7.js} +1 -1
- package/chunks/{chunk-KPWEJXPI.js → chunk-3QF3I2RD.js} +1 -1
- package/chunks/{chunk-K6H7JTIH.js → chunk-4EHAL3NK.js} +1 -1
- package/chunks/chunk-4FGLERUG.js +2 -0
- package/chunks/{chunk-IDMI5OBK.js → chunk-4QDEJUAF.js} +1 -1
- package/chunks/{chunk-4MVO4LD5.js → chunk-5224ZYEW.js} +1 -1
- package/chunks/{chunk-LCG4SK6K.js → chunk-5DWJ7WEE.js} +1 -1
- package/chunks/chunk-5WJ6AUNY.js +2 -0
- package/chunks/chunk-6E6JUBFH.js +2 -0
- package/chunks/chunk-7UASU4NU.js +10 -0
- package/chunks/chunk-A3JJKZ4C.js +4 -0
- package/chunks/chunk-A3MZV73T.js +32 -0
- package/chunks/chunk-A6K5L4SG.js +3 -0
- package/chunks/{chunk-YVIGHK4H.js → chunk-AHKNU2JM.js} +1 -1
- package/chunks/{chunk-BCPCQHDL.js → chunk-BBOEAL63.js} +1 -1
- package/chunks/chunk-BQT5RJZB.js +2 -0
- package/chunks/{chunk-EBCQCAQ7.js → chunk-BWDCKK63.js} +1 -1
- package/chunks/{chunk-FORPNESQ.js → chunk-CMSPX2RN.js} +1 -1
- package/chunks/{chunk-H4SPMUT6.js → chunk-DKFL6XPX.js} +1 -1
- package/chunks/{chunk-HVLKXRPA.js → chunk-DWLFTRZS.js} +1 -1
- package/chunks/{chunk-PVPMHMKP.js → chunk-ECY4MUD3.js} +1 -1
- package/chunks/{chunk-IIIMOOFE.js → chunk-EGMYM4TM.js} +1 -1
- package/chunks/{chunk-I4C675WP.js → chunk-F35K7YVH.js} +1 -1
- package/chunks/{chunk-IZONBJSX.js → chunk-F5HQDZLN.js} +1 -1
- package/chunks/{chunk-A6RDYP6R.js → chunk-FFWPJP7A.js} +1 -1
- package/chunks/chunk-H2O5G3XB.js +2 -0
- package/chunks/{chunk-Y53YTL4C.js → chunk-HLKFDKLZ.js} +1 -1
- package/chunks/{chunk-SOBOSRJB.js → chunk-HP5W5XT6.js} +1 -1
- package/chunks/{chunk-BP3IFAPO.js → chunk-HTJLIAH4.js} +1 -1
- package/chunks/{chunk-7BFBOLLC.js → chunk-HVTJ5LVU.js} +1 -1
- package/chunks/chunk-HZ2ALFWG.js +66 -0
- package/chunks/{chunk-YQVWAWMO.js → chunk-ILROPD5P.js} +1 -1
- package/chunks/{chunk-LKF6GBNU.js → chunk-ISQIZSXN.js} +1 -1
- package/chunks/chunk-JI536JLJ.js +2 -0
- package/chunks/{chunk-UJPVEQX7.js → chunk-K2MKYDPY.js} +1 -1
- package/chunks/{chunk-T2DRBZ4X.js → chunk-KEOTIPA6.js} +1 -1
- package/chunks/chunk-L2E2H7YT.js +2 -0
- package/chunks/chunk-L7UCWRDZ.js +3 -0
- package/chunks/{chunk-4WQGB7NO.js → chunk-LBMJGMDD.js} +1 -1
- package/chunks/{chunk-2VEVVX6U.js → chunk-LFNUSULJ.js} +1 -1
- package/chunks/{chunk-5GGGQJ4P.js → chunk-MBCPGD5L.js} +1 -1
- package/chunks/chunk-MEZCXQAX.js +2 -0
- package/chunks/{chunk-B6EATLKL.js → chunk-MOY4CXAZ.js} +2 -2
- package/chunks/{chunk-P2DMLPKI.js → chunk-MQ4EMT35.js} +1 -1
- package/chunks/chunk-NEHZOG23.js +7 -0
- package/chunks/{chunk-QZ44TAIY.js → chunk-NJUIBCQR.js} +1 -1
- package/chunks/{chunk-5MWX3POX.js → chunk-NZRU3N6C.js} +1 -1
- package/chunks/{chunk-N2VBT43E.js → chunk-O2TA7OHJ.js} +1 -1
- package/chunks/{chunk-ER4ZWF4Y.js → chunk-OAFB4A6D.js} +1 -1
- package/chunks/chunk-OAT2D23A.js +2 -0
- package/chunks/{chunk-3QIPK7NI.js → chunk-OPPOHKNZ.js} +1 -1
- package/chunks/{chunk-ZNGLZECE.js → chunk-OWV223WQ.js} +1 -1
- package/chunks/{chunk-3BEX5FYF.js → chunk-P2MUEKFT.js} +1 -1
- package/chunks/{chunk-455V3AE5.js → chunk-P72TUTYK.js} +1 -1
- package/chunks/{chunk-Q2KSOC32.js → chunk-PPSDIDOI.js} +1 -1
- package/chunks/chunk-PXCM4FHO.js +2 -0
- package/chunks/{chunk-KVTG56GS.js → chunk-QFFGKP3M.js} +1 -1
- package/chunks/{chunk-PZNCE6QK.js → chunk-QXATB6Z5.js} +1 -1
- package/chunks/chunk-RGUPFAEE.js +68 -0
- package/chunks/{chunk-SP43S32B.js → chunk-RVJZFWN7.js} +1 -1
- package/chunks/{chunk-B5IPHVXT.js → chunk-SBAXURB7.js} +1 -1
- package/chunks/{chunk-7NUMDHE2.js → chunk-T4WKRBQZ.js} +1 -1
- package/chunks/{chunk-UJ6LH5FY.js → chunk-TEOMM3RD.js} +1 -1
- package/chunks/{chunk-QOX7VSID.js → chunk-TLVGNOK3.js} +1 -1
- package/chunks/{chunk-HYT26FYU.js → chunk-U5Q5MC74.js} +1 -1
- package/chunks/chunk-ULNEO3RY.js +4 -0
- package/chunks/{chunk-MXGRYONZ.js → chunk-UMKCOU3N.js} +1 -1
- package/chunks/{chunk-536RBSFU.js → chunk-UQ2BC7UA.js} +1 -1
- package/chunks/{chunk-HVOPUZOM.js → chunk-VIQLCQOI.js} +1 -1
- package/chunks/chunk-VWQLQJVX.js +2 -0
- package/chunks/{chunk-CKNA5LIK.js → chunk-WAEXOK7L.js} +1 -1
- package/chunks/{chunk-NP723K5L.js → chunk-WILZ4OR2.js} +1 -1
- package/chunks/chunk-WJKE6XHF.js +2 -0
- package/chunks/{chunk-KQE6FMKW.js → chunk-XYUJCTPP.js} +1 -1
- package/chunks/{chunk-P2TABZ4A.js → chunk-YEWODYET.js} +1 -1
- package/chunks/{chunk-3SXTMY75.js → chunk-YVN2NZL4.js} +1 -1
- package/chunks/{chunk-GBM3TZFD.js → chunk-ZC4F4MYU.js} +1 -1
- package/chunks/{chunk-KBFKBL6A.js → chunk-ZWMJQZQF.js} +1 -1
- package/chunks/claude-code-ELUDT5TV.js +2 -0
- package/chunks/{clone-H3UAEVVP.js → clone-YEBQK7CG.js} +1 -1
- package/chunks/cmd-2DAVTVOF.js +2 -0
- package/chunks/{commitmsg-7XZGGERO.js → commitmsg-FQ3IZ3TH.js} +2 -2
- package/chunks/concern-TIGYH5DX.js +2 -0
- package/chunks/deno-XQHOVHKR.js +2 -0
- package/chunks/dev-BNGJJR2O.js +4 -0
- package/chunks/dist-QVOR7USR.js +13 -0
- package/chunks/done-GGPPHJW2.js +2 -0
- package/chunks/file-tools-shared-KBTCO2FV.js +2 -0
- package/chunks/{gemini-F4KLO5VU.js → gemini-43AWJEWI.js} +1 -1
- package/chunks/gh-Q7VEABJS.js +4 -0
- package/chunks/gh-contributors-4KGARSNL.js +12 -0
- package/chunks/init-45ODFAV3.js +2 -0
- package/chunks/{init-J4IHOVZL.js → init-RV7K5JC4.js} +3 -3
- package/chunks/{install-KNZDCGIB.js → install-6XIQS5E7.js} +2 -2
- package/chunks/invoke-hook-Q3NMJXDO.js +11 -0
- package/chunks/kiro-NZ7LM6HA.js +2 -0
- package/chunks/list-BOLPKAEY.js +2 -0
- package/chunks/{list-N4ZKDFW7.js → list-NYLFIF2U.js} +1 -1
- package/chunks/list-UQMPOF5Y.js +2 -0
- package/chunks/load-config-G4DHKB5K.js +2 -0
- package/chunks/{main-HJQEBLLN.js → main-236QYA7G.js} +2 -2
- package/chunks/manifest-3VJ4O6HR.js +2 -0
- package/chunks/{mod-4ILLF5PK.js → mod-5JT4O5L3.js} +1 -1
- package/chunks/mod-BQJDMCYC.js +2 -0
- package/chunks/mod-DXA25A4J.js +2 -0
- package/chunks/mod-EWLBSEHA.js +2 -0
- package/chunks/mod-GSWVSC2C.js +28 -0
- package/chunks/mod-IHYN4TEM.js +3 -0
- package/chunks/mod-IXVUQHXS.js +2 -0
- package/chunks/mod-P4AVZJNK.js +2 -0
- package/chunks/mod-PZSJGUM7.js +2 -0
- package/chunks/mod-QWYXFGRG.js +2 -0
- package/chunks/{mod-OS3BCM2G.js → mod-SXL6PDQM.js} +1 -1
- package/chunks/mod-YH5Z6G4Q.js +2 -0
- package/chunks/multipart-parser-SSRHOBFH.js +3 -0
- package/chunks/{new-BOGCXTIY.js → new-U5U4E6HR.js} +1 -1
- package/chunks/next-AQ4TIEL7.js +9 -0
- package/chunks/node-IN5OQP4N.js +68 -0
- package/chunks/node-ZGM6SXXI.js +2 -0
- package/chunks/ollama-LHWMXMLY.js +2 -0
- package/chunks/openai-2KONKHWL.js +2 -0
- package/chunks/openai-IRQY5SCR.js +24 -0
- package/chunks/opencode-24O2MW3L.js +2 -0
- package/chunks/purge-RM6OD5PV.js +5 -0
- package/chunks/recipe-applier-TTZEZGSC.js +2 -0
- package/chunks/registry-fetcher-SPENFEOH.js +2 -0
- package/chunks/release-UEX6YK4K.js +9 -0
- package/chunks/release-notes-GA7CTA54.js +4 -0
- package/chunks/release-tag-VJWBXG5G.js +2 -0
- package/chunks/reset-WHYTPTFB.js +2 -0
- package/chunks/rule-ZQOGLQQI.js +3 -0
- package/chunks/run-IX74MQTI.js +4 -0
- package/chunks/run-L35K3KRF.js +5 -0
- package/chunks/scripts-VI2TKQOH.js +2 -0
- package/chunks/sdk-L2SQCWYV.js +41 -0
- package/chunks/serve-AVVEYGQB.js +4 -0
- package/chunks/{server-KNWQV2HW.js → server-R347ON4B.js} +1 -1
- package/chunks/spec-KMKZDLV2.js +2 -0
- package/chunks/src-6SFGTAGT.js +4 -0
- package/chunks/status-MLX4O37A.js +2 -0
- package/chunks/sync-PB4KWB3R.js +2 -0
- package/chunks/system-BXJ2LV5O.js +2 -0
- package/chunks/system-YLXVXRXW.js +2 -0
- package/chunks/{unstable_chmod-GDQI7NKH.js → unstable_chmod-2W47KJY3.js} +1 -1
- package/chunks/update-522VXIKX.js +6 -0
- package/chunks/validate-bom-JCMRVAUT.js +2 -0
- package/chunks/validate-case-conflict-WZQCMKSZ.js +2 -0
- package/chunks/validate-circular-deps-7R4F2YDV.js +2 -0
- package/chunks/validate-commit-msg-PH7Y3JEI.js +2 -0
- package/chunks/validate-docs-WCIOHNYP.js +2 -0
- package/chunks/validate-eof-KRYQLTFQ.js +2 -0
- package/chunks/validate-export-names-OCQ2XSY6.js +2 -0
- package/chunks/validate-filenames-46O7FCXF.js +2 -0
- package/chunks/validate-json-3EZ2L64H.js +2 -0
- package/chunks/validate-large-files-7YX6MSOB.js +2 -0
- package/chunks/validate-licenses-OC7JRVAH.js +2 -0
- package/chunks/validate-line-endings-2DM5UGCJ.js +2 -0
- package/chunks/validate-merge-conflict-UDMWYMJ5.js +2 -0
- package/chunks/validate-mod-exports-W24IV367.js +2 -0
- package/chunks/validate-package-configs-3Y55ZLUY.js +2 -0
- package/chunks/validate-secrets-66VXCCUF.js +2 -0
- package/chunks/validate-shebangs-AMEAHVLB.js +2 -0
- package/chunks/validate-submodules-DYCE27WK.js +2 -0
- package/chunks/validate-symlinks-QN744GUH.js +2 -0
- package/chunks/validate-toml-5K2XNHAE.js +2 -0
- package/chunks/validate-trailing-whitespace-QYWHHIAK.js +2 -0
- package/chunks/validate-yaml-VGKLHEAQ.js +2 -0
- package/chunks/versions-FYALONNL.js +2 -0
- package/chunks/{vertexai-EXTYPVHK.js → vertexai-2F2A3VTE.js} +1 -1
- package/chunks/watch-P56QT3Q2.js +9 -0
- package/chunks/workerd-LOWXXQEU.js +2 -0
- package/eser.js +1 -1
- package/package.json +1 -1
- package/chunks/add-5SDE43IH.js +0 -8
- package/chunks/approve-DNKMQSPX.js +0 -2
- package/chunks/ask-L3N6REQI.js +0 -3
- package/chunks/block-GRKMCTGR.js +0 -2
- package/chunks/browser-SG2DBNGS.js +0 -2
- package/chunks/bun-3AACRJXG.js +0 -2
- package/chunks/changelog-gen-MX6L2Z24.js +0 -10
- package/chunks/chunk-25FUVC3C.js +0 -13
- package/chunks/chunk-2HBVIH7V.js +0 -3
- package/chunks/chunk-32HV3K27.js +0 -2
- package/chunks/chunk-46ZWBKIW.js +0 -2
- package/chunks/chunk-4DOMGQOO.js +0 -2
- package/chunks/chunk-6FNHSIZJ.js +0 -2
- package/chunks/chunk-CBGABZ5E.js +0 -2
- package/chunks/chunk-CDPSH56U.js +0 -2
- package/chunks/chunk-CZS6DCUY.js +0 -61
- package/chunks/chunk-DAK2I7UC.js +0 -2
- package/chunks/chunk-DTO2YJWZ.js +0 -2
- package/chunks/chunk-DYRTLYTU.js +0 -3
- package/chunks/chunk-G6NAG2EK.js +0 -2
- package/chunks/chunk-JOTAKQMZ.js +0 -2
- package/chunks/chunk-MRCBHVSB.js +0 -2
- package/chunks/chunk-PE2TDUXD.js +0 -19
- package/chunks/chunk-RGUETQSC.js +0 -4
- package/chunks/chunk-STI6DX7K.js +0 -2
- package/chunks/chunk-STTKPXTW.js +0 -2
- package/chunks/chunk-TFPT4BDY.js +0 -15
- package/chunks/chunk-V3WALAAO.js +0 -4
- package/chunks/chunk-VD5ZJBSR.js +0 -7
- package/chunks/chunk-W3RVRCUB.js +0 -2
- package/chunks/chunk-Y4ARZGGL.js +0 -2
- package/chunks/claude-code-VUBEU7RR.js +0 -2
- package/chunks/concern-T2NW35XI.js +0 -2
- package/chunks/deno-7BSPHDRG.js +0 -2
- package/chunks/dev-PTMXZEVC.js +0 -4
- package/chunks/done-RZD34AZF.js +0 -2
- package/chunks/file-tools-shared-G36OYF5S.js +0 -2
- package/chunks/fileFromPath-MB3IRZVW.js +0 -7
- package/chunks/gh-L25JQWOY.js +0 -5
- package/chunks/gh-contributors-E7IZ2LFS.js +0 -12
- package/chunks/init-J46SBNIS.js +0 -2
- package/chunks/invoke-hook-YTLAPETS.js +0 -10
- package/chunks/kiro-HQLXD6ZU.js +0 -2
- package/chunks/list-5TGTYMAU.js +0 -2
- package/chunks/list-PY3A762R.js +0 -2
- package/chunks/load-config-FTQMJVEW.js +0 -2
- package/chunks/manifest-NF2EK757.js +0 -2
- package/chunks/mod-FEGQZ3ZY.js +0 -2
- package/chunks/mod-GY6YJWVP.js +0 -2
- package/chunks/mod-HKYPZOU7.js +0 -2
- package/chunks/mod-JI2A2546.js +0 -2
- package/chunks/mod-JZNE2HH6.js +0 -2
- package/chunks/mod-MLRQFSBE.js +0 -2
- package/chunks/mod-NCF6OSXO.js +0 -2
- package/chunks/mod-PFWQZF3T.js +0 -28
- package/chunks/mod-W3DBWTCY.js +0 -11
- package/chunks/mod-YX3JRMSI.js +0 -2
- package/chunks/next-HAAR572Z.js +0 -4
- package/chunks/node-KCQF6QQA.js +0 -60
- package/chunks/node-MFKYO4CY.js +0 -2
- package/chunks/ollama-36F5QAOO.js +0 -2
- package/chunks/openai-EU5TJZ5T.js +0 -2
- package/chunks/openai-IKXRJYI3.js +0 -20
- package/chunks/opencode-7J3JDC44.js +0 -2
- package/chunks/purge-7QJOGWHM.js +0 -5
- package/chunks/recipe-applier-6QZYAZ57.js +0 -2
- package/chunks/registry-fetcher-76ISLGRR.js +0 -2
- package/chunks/release-J3PVDROM.js +0 -9
- package/chunks/release-notes-AARDYXYA.js +0 -4
- package/chunks/release-tag-H2YWUXRU.js +0 -2
- package/chunks/reset-WSJ47SUR.js +0 -2
- package/chunks/rule-J4FRRKOE.js +0 -3
- package/chunks/run-K6PMBZEQ.js +0 -4
- package/chunks/run-RGEZUAPM.js +0 -5
- package/chunks/scripts-JK6W2MCO.js +0 -2
- package/chunks/sdk-MXV452BR.js +0 -19
- package/chunks/serve-XVAIQ37L.js +0 -4
- package/chunks/spec-KTBVG2EX.js +0 -2
- package/chunks/status-3C2T6QAE.js +0 -2
- package/chunks/sync-WLEELRJW.js +0 -2
- package/chunks/system-GTHT75OL.js +0 -2
- package/chunks/system-WTPEDJU6.js +0 -2
- package/chunks/update-4C4WNXCE.js +0 -6
- package/chunks/validate-bom-QVE5HNBO.js +0 -2
- package/chunks/validate-case-conflict-XFS3URQN.js +0 -2
- package/chunks/validate-circular-deps-BMPAT3PF.js +0 -2
- package/chunks/validate-commit-msg-BPESCI7P.js +0 -2
- package/chunks/validate-docs-ITL4L6KY.js +0 -2
- package/chunks/validate-eof-DTFV74VL.js +0 -2
- package/chunks/validate-export-names-HLOH7D73.js +0 -2
- package/chunks/validate-filenames-J4RTDEBD.js +0 -2
- package/chunks/validate-json-KMODGNSU.js +0 -2
- package/chunks/validate-large-files-X5YF7D7T.js +0 -2
- package/chunks/validate-licenses-OZ7DXQTY.js +0 -2
- package/chunks/validate-line-endings-PFF6QJ3W.js +0 -2
- package/chunks/validate-merge-conflict-KB2X6QLW.js +0 -2
- package/chunks/validate-mod-exports-VHK2NVKI.js +0 -2
- package/chunks/validate-package-configs-ZNCAIYRO.js +0 -2
- package/chunks/validate-secrets-RM6DMZVG.js +0 -2
- package/chunks/validate-shebangs-WC66D7RK.js +0 -2
- package/chunks/validate-submodules-SPAXASAG.js +0 -2
- package/chunks/validate-symlinks-4LOWK2MQ.js +0 -2
- package/chunks/validate-toml-SG4IITMN.js +0 -2
- package/chunks/validate-trailing-whitespace-GRE2PJ6T.js +0 -2
- package/chunks/validate-yaml-RA22QNW6.js +0 -2
- package/chunks/versions-ODYWYT7U.js +0 -2
- package/chunks/watch-NEFCEWP5.js +0 -9
- package/chunks/workerd-VVSAKLDZ.js +0 -2
package/chunks/node-KCQF6QQA.js
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
|
|
2
|
-
import{a as Nh,b as kh}from"./chunk-DAK2I7UC.js";import{a as U,b as me,c as M,d as Rh,f as Ph}from"./chunk-G6NAG2EK.js";var mo=M((WS,dl)=>{"use strict";var Er=Object.prototype.hasOwnProperty,fl=Object.prototype.toString,ol=Object.defineProperty,sl=Object.getOwnPropertyDescriptor,al=function(e){return typeof Array.isArray=="function"?Array.isArray(e):fl.call(e)==="[object Array]"},ll=function(e){if(!e||fl.call(e)!=="[object Object]")return!1;var t=Er.call(e,"constructor"),r=e.constructor&&e.constructor.prototype&&Er.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!t&&!r)return!1;var i;for(i in e);return typeof i>"u"||Er.call(e,i)},cl=function(e,t){ol&&t.name==="__proto__"?ol(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},ul=function(e,t){if(t==="__proto__")if(Er.call(e,t)){if(sl)return sl(e,t).value}else return;return e[t]};dl.exports=function n(){var e,t,r,i,o,s,c=arguments[0],f=1,u=arguments.length,d=!1;for(typeof c=="boolean"&&(d=c,c=arguments[1]||{},f=2),(c==null||typeof c!="object"&&typeof c!="function")&&(c={});f<u;++f)if(e=arguments[f],e!=null)for(t in e)r=ul(c,t),i=ul(e,t),c!==i&&(d&&i&&(ll(i)||(o=al(i)))?(o?(o=!1,s=r&&al(r)?r:[]):s=r&&ll(r)?r:{},cl(c,{name:t,newValue:n(d,s,i)})):typeof i<"u"&&cl(c,{name:t,newValue:i}));return c}});var pl=M((JS,hl)=>{"use strict";var Xe=n=>n!==null&&typeof n=="object"&&typeof n.pipe=="function";Xe.writable=n=>Xe(n)&&n.writable!==!1&&typeof n._write=="function"&&typeof n._writableState=="object";Xe.readable=n=>Xe(n)&&n.readable!==!1&&typeof n._read=="function"&&typeof n._readableState=="object";Xe.duplex=n=>Xe.writable(n)&&Xe.readable(n);Xe.transform=n=>Xe.duplex(n)&&typeof n._transform=="function";hl.exports=Xe});var gl=M((KS,bh)=>{bh.exports={name:"gaxios",version:"6.7.1",description:"A simple common HTTP client specifically for Google APIs and services.",main:"build/src/index.js",types:"build/src/index.d.ts",files:["build/src"],scripts:{lint:"gts check",test:"c8 mocha build/test","presystem-test":"npm run compile","system-test":"mocha build/system-test --timeout 80000",compile:"tsc -p .",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:"compodoc src/","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",precompile:"gts clean"},repository:"googleapis/gaxios",keywords:["google"],engines:{node:">=14"},author:"Google, LLC",license:"Apache-2.0",devDependencies:{"@babel/plugin-proposal-private-methods":"^7.18.6","@compodoc/compodoc":"1.1.19","@types/cors":"^2.8.6","@types/express":"^4.16.1","@types/extend":"^3.0.1","@types/mocha":"^9.0.0","@types/multiparty":"0.0.36","@types/mv":"^2.1.0","@types/ncp":"^2.0.1","@types/node":"^20.0.0","@types/node-fetch":"^2.5.7","@types/sinon":"^17.0.0","@types/tmp":"0.2.6","@types/uuid":"^10.0.0","abort-controller":"^3.0.0",assert:"^2.0.0",browserify:"^17.0.0",c8:"^8.0.0",cheerio:"1.0.0-rc.10",cors:"^2.8.5",execa:"^5.0.0",express:"^4.16.4","form-data":"^4.0.0",gts:"^5.0.0","is-docker":"^2.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.0",linkinator:"^3.0.0",mocha:"^8.0.0",multiparty:"^4.2.1",mv:"^2.1.1",ncp:"^2.0.0",nock:"^13.0.0","null-loader":"^4.0.0",puppeteer:"^19.0.0",sinon:"^18.0.0","stream-browserify":"^3.0.0",tmp:"0.2.3","ts-loader":"^8.0.0",typescript:"^5.1.6",webpack:"^5.35.0","webpack-cli":"^4.0.0"},dependencies:{extend:"^3.0.2","https-proxy-agent":"^7.0.1","is-stream":"^2.0.0","node-fetch":"^2.6.9",uuid:"^9.0.1"}}});var ml=M(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.pkg=void 0;vr.pkg=gl()});var Eo=M(Ne=>{"use strict";var Mh=Ne&&Ne.__importDefault||function(n){return n&&n.__esModule?n:{default:n}},yl;Object.defineProperty(Ne,"__esModule",{value:!0});Ne.GaxiosError=Ne.GAXIOS_ERROR_SYMBOL=void 0;Ne.defaultErrorRedactor=El;var Oh=U("url"),yo=ml(),_l=Mh(mo());Ne.GAXIOS_ERROR_SYMBOL=Symbol.for(`${yo.pkg.name}-gaxios-error`);var _o=class n extends Error{static[(yl=Ne.GAXIOS_ERROR_SYMBOL,Symbol.hasInstance)](e){return e&&typeof e=="object"&&Ne.GAXIOS_ERROR_SYMBOL in e&&e[Ne.GAXIOS_ERROR_SYMBOL]===yo.pkg.version?!0:Function.prototype[Symbol.hasInstance].call(n,e)}constructor(e,t,r,i){var o;if(super(e),this.config=t,this.response=r,this.error=i,this[yl]=yo.pkg.version,this.config=(0,_l.default)(!0,{},t),this.response&&(this.response.config=(0,_l.default)(!0,{},this.response.config)),this.response){try{this.response.data=Dh(this.config.responseType,(o=this.response)===null||o===void 0?void 0:o.data)}catch{}this.status=this.response.status}i&&"code"in i&&i.code&&(this.code=i.code),t.errorRedactor&&t.errorRedactor({config:this.config,response:this.response})}};Ne.GaxiosError=_o;function Dh(n,e){switch(n){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 El(n){let e="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function t(o){if(o)for(let s of Object.keys(o))/^authentication$/i.test(s)&&(o[s]=e),/^authorization$/i.test(s)&&(o[s]=e),/secret/i.test(s)&&(o[s]=e)}function r(o,s){if(typeof o=="object"&&o!==null&&typeof o[s]=="string"){let c=o[s];(/grant_type=/i.test(c)||/assertion=/i.test(c)||/secret/i.test(c))&&(o[s]=e)}}function i(o){typeof o=="object"&&o!==null&&("grant_type"in o&&(o.grant_type=e),"assertion"in o&&(o.assertion=e),"client_secret"in o&&(o.client_secret=e))}if(n.config){t(n.config.headers),r(n.config,"data"),i(n.config.data),r(n.config,"body"),i(n.config.body);try{let o=new Oh.URL("",n.config.url);o.searchParams.has("token")&&o.searchParams.set("token",e),o.searchParams.has("client_secret")&&o.searchParams.set("client_secret",e),n.config.url=o.toString()}catch{}}return n.response&&(El({config:n.response.config}),t(n.response.headers),r(n.response,"data"),i(n.response.data)),n}});var Tl=M(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.getRetryConfig=Uh;async function Uh(n){let e=vl(n);if(!n||!n.config||!e&&!n.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 t=[[100,199],[408,408],[429,429],[500,599]];if(e.statusCodesToRetry=e.statusCodesToRetry||t,n.config.retryConfig=e,!await(e.shouldRetry||Fh)(n))return{shouldRetry:!1,config:n.config};let i=Lh(e);n.config.retryConfig.currentRetryAttempt+=1;let o=e.retryBackoff?e.retryBackoff(n,i):new Promise(s=>{setTimeout(s,i)});return e.onRetryAttempt&&e.onRetryAttempt(n),await o,{shouldRetry:!0,config:n.config}}function Fh(n){var e;let t=vl(n);if(n.name==="AbortError"||((e=n.error)===null||e===void 0?void 0:e.name)==="AbortError"||!t||t.retry===0||!n.response&&(t.currentRetryAttempt||0)>=t.noResponseRetries||!n.config.method||t.httpMethodsToRetry.indexOf(n.config.method.toUpperCase())<0)return!1;if(n.response&&n.response.status){let r=!1;for(let[i,o]of t.statusCodesToRetry){let s=n.response.status;if(s>=i&&s<=o){r=!0;break}}if(!r)return!1}return t.currentRetryAttempt=t.currentRetryAttempt||0,!(t.currentRetryAttempt>=t.retry)}function vl(n){if(n&&n.config&&n.config.retryConfig)return n.config.retryConfig}function Lh(n){var e;let r=(n.currentRetryAttempt?0:(e=n.retryDelay)!==null&&e!==void 0?e:100)+(Math.pow(n.retryDelayMultiplier,n.currentRetryAttempt)-1)/2*1e3,i=n.totalTimeout-(Date.now()-n.timeOfFirstRequest);return Math.min(r,i,n.maxRetryDelay)}});import qh from"crypto";function Mn(){return Tr>Cr.length-16&&(qh.randomFillSync(Cr),Tr=0),Cr.slice(Tr,Tr+=16)}var Cr,Tr,To=me(()=>{Cr=new Uint8Array(256),Tr=Cr.length});var Cl,Sl=me(()=>{Cl=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i});function Gh(n){return typeof n=="string"&&Cl.test(n)}var mt,On=me(()=>{Sl();mt=Gh});function kt(n,e=0){return he[n[e+0]]+he[n[e+1]]+he[n[e+2]]+he[n[e+3]]+"-"+he[n[e+4]]+he[n[e+5]]+"-"+he[n[e+6]]+he[n[e+7]]+"-"+he[n[e+8]]+he[n[e+9]]+"-"+he[n[e+10]]+he[n[e+11]]+he[n[e+12]]+he[n[e+13]]+he[n[e+14]]+he[n[e+15]]}function Bh(n,e=0){let t=kt(n,e);if(!mt(t))throw TypeError("Stringified UUID is invalid");return t}var he,wl,Dn=me(()=>{On();he=[];for(let n=0;n<256;++n)he.push((n+256).toString(16).slice(1));wl=Bh});function Vh(n,e,t){let r=e&&t||0,i=e||new Array(16);n=n||{};let o=n.node||Al,s=n.clockseq!==void 0?n.clockseq:Co;if(o==null||s==null){let g=n.random||(n.rng||Mn)();o==null&&(o=Al=[g[0]|1,g[1],g[2],g[3],g[4],g[5]]),s==null&&(s=Co=(g[6]<<8|g[7])&16383)}let c=n.msecs!==void 0?n.msecs:Date.now(),f=n.nsecs!==void 0?n.nsecs:wo+1,u=c-So+(f-wo)/1e4;if(u<0&&n.clockseq===void 0&&(s=s+1&16383),(u<0||c>So)&&n.nsecs===void 0&&(f=0),f>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");So=c,wo=f,Co=s,c+=122192928e5;let d=((c&268435455)*1e4+f)%4294967296;i[r++]=d>>>24&255,i[r++]=d>>>16&255,i[r++]=d>>>8&255,i[r++]=d&255;let h=c/4294967296*1e4&268435455;i[r++]=h>>>8&255,i[r++]=h&255,i[r++]=h>>>24&15|16,i[r++]=h>>>16&255,i[r++]=s>>>8|128,i[r++]=s&255;for(let g=0;g<6;++g)i[r+g]=o[g];return e||kt(i)}var Al,Co,So,wo,xl,Il=me(()=>{To();Dn();So=0,wo=0;xl=Vh});function Hh(n){if(!mt(n))throw TypeError("Invalid UUID");let e,t=new Uint8Array(16);return t[0]=(e=parseInt(n.slice(0,8),16))>>>24,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=e&255,t[4]=(e=parseInt(n.slice(9,13),16))>>>8,t[5]=e&255,t[6]=(e=parseInt(n.slice(14,18),16))>>>8,t[7]=e&255,t[8]=(e=parseInt(n.slice(19,23),16))>>>8,t[9]=e&255,t[10]=(e=parseInt(n.slice(24,36),16))/1099511627776&255,t[11]=e/4294967296&255,t[12]=e>>>24&255,t[13]=e>>>16&255,t[14]=e>>>8&255,t[15]=e&255,t}var Sr,Ao=me(()=>{On();Sr=Hh});function $h(n){n=unescape(encodeURIComponent(n));let e=[];for(let t=0;t<n.length;++t)e.push(n.charCodeAt(t));return e}function Un(n,e,t){function r(i,o,s,c){var f;if(typeof i=="string"&&(i=$h(i)),typeof o=="string"&&(o=Sr(o)),((f=o)===null||f===void 0?void 0:f.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let u=new Uint8Array(16+i.length);if(u.set(o),u.set(i,o.length),u=t(u),u[6]=u[6]&15|e,u[8]=u[8]&63|128,s){c=c||0;for(let d=0;d<16;++d)s[c+d]=u[d];return s}return kt(u)}try{r.name=n}catch{}return r.DNS=Wh,r.URL=Jh,r}var Wh,Jh,xo=me(()=>{Dn();Ao();Wh="6ba7b810-9dad-11d1-80b4-00c04fd430c8",Jh="6ba7b811-9dad-11d1-80b4-00c04fd430c8"});import Kh from"crypto";function Yh(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),Kh.createHash("md5").update(n).digest()}var Rl,Pl=me(()=>{Rl=Yh});var zh,Nl,kl=me(()=>{xo();Pl();zh=Un("v3",48,Rl),Nl=zh});import Xh from"crypto";var Io,bl=me(()=>{Io={randomUUID:Xh.randomUUID}});function jh(n,e,t){if(Io.randomUUID&&!e&&!n)return Io.randomUUID();n=n||{};let r=n.random||(n.rng||Mn)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){t=t||0;for(let i=0;i<16;++i)e[t+i]=r[i];return e}return kt(r)}var Ml,Ol=me(()=>{bl();To();Dn();Ml=jh});import Zh from"crypto";function Qh(n){return Array.isArray(n)?n=Buffer.from(n):typeof n=="string"&&(n=Buffer.from(n,"utf8")),Zh.createHash("sha1").update(n).digest()}var Dl,Ul=me(()=>{Dl=Qh});var ep,Fl,Ll=me(()=>{xo();Ul();ep=Un("v5",80,Dl),Fl=ep});var ql,Gl=me(()=>{ql="00000000-0000-0000-0000-000000000000"});function tp(n){if(!mt(n))throw TypeError("Invalid UUID");return parseInt(n.slice(14,15),16)}var Bl,Vl=me(()=>{On();Bl=tp});var Hl={};Rh(Hl,{NIL:()=>ql,parse:()=>Sr,stringify:()=>wl,v1:()=>xl,v3:()=>Nl,v4:()=>Ml,v5:()=>Fl,validate:()=>mt,version:()=>Bl});var $l=me(()=>{Il();kl();Ol();Ll();Gl();Vl();On();Dn();Ao()});var Po=M(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.GaxiosInterceptorManager=void 0;var Ro=class extends Set{};wr.GaxiosInterceptorManager=Ro});var No=M((Bw,Wl)=>{function np(n){t.debug=t,t.default=t,t.coerce=f,t.disable=s,t.enable=i,t.enabled=c,t.humanize=kh(),t.destroy=u,Object.keys(n).forEach(d=>{t[d]=n[d]}),t.names=[],t.skips=[],t.formatters={};function e(d){let h=0;for(let g=0;g<d.length;g++)h=(h<<5)-h+d.charCodeAt(g),h|=0;return t.colors[Math.abs(h)%t.colors.length]}t.selectColor=e;function t(d){let h,g=null,v,w;function C(...N){if(!C.enabled)return;let k=C,G=Number(new Date),L=G-(h||G);k.diff=L,k.prev=h,k.curr=G,h=G,N[0]=t.coerce(N[0]),typeof N[0]!="string"&&N.unshift("%O");let q=0;N[0]=N[0].replace(/%([a-zA-Z%])/g,(B,J)=>{if(B==="%%")return"%";q++;let Y=t.formatters[J];if(typeof Y=="function"){let D=N[q];B=Y.call(k,D),N.splice(q,1),q--}return B}),t.formatArgs.call(k,N),(k.log||t.log).apply(k,N)}return C.namespace=d,C.useColors=t.useColors(),C.color=t.selectColor(d),C.extend=r,C.destroy=t.destroy,Object.defineProperty(C,"enabled",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(v!==t.namespaces&&(v=t.namespaces,w=t.enabled(d)),w),set:N=>{g=N}}),typeof t.init=="function"&&t.init(C),C}function r(d,h){let g=t(this.namespace+(typeof h>"u"?":":h)+d);return g.log=this.log,g}function i(d){t.save(d),t.namespaces=d,t.names=[],t.skips=[];let h=(typeof d=="string"?d:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let g of h)g[0]==="-"?t.skips.push(g.slice(1)):t.names.push(g)}function o(d,h){let g=0,v=0,w=-1,C=0;for(;g<d.length;)if(v<h.length&&(h[v]===d[g]||h[v]==="*"))h[v]==="*"?(w=v,C=g,v++):(g++,v++);else if(w!==-1)v=w+1,C++,g=C;else return!1;for(;v<h.length&&h[v]==="*";)v++;return v===h.length}function s(){let d=[...t.names,...t.skips.map(h=>"-"+h)].join(",");return t.enable(""),d}function c(d){for(let h of t.skips)if(o(d,h))return!1;for(let h of t.names)if(o(d,h))return!0;return!1}function f(d){return d instanceof Error?d.stack||d.message:d}function u(){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 t.enable(t.load()),t}Wl.exports=np});var Jl=M((Ce,Ar)=>{Ce.formatArgs=ip;Ce.save=op;Ce.load=sp;Ce.useColors=rp;Ce.storage=ap();Ce.destroy=(()=>{let n=!1;return()=>{n||(n=!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`."))}})();Ce.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 rp(){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 n;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&&(n=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(n[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function ip(n){if(n[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+n[0]+(this.useColors?"%c ":" ")+"+"+Ar.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;n.splice(1,0,e,"color: inherit");let t=0,r=0;n[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(r=t))}),n.splice(r,0,e)}Ce.log=console.debug||console.log||(()=>{});function op(n){try{n?Ce.storage.setItem("debug",n):Ce.storage.removeItem("debug")}catch{}}function sp(){let n;try{n=Ce.storage.getItem("debug")||Ce.storage.getItem("DEBUG")}catch{}return!n&&typeof process<"u"&&"env"in process&&(n=process.env.DEBUG),n}function ap(){try{return localStorage}catch{}}Ar.exports=No()(Ce);var{formatters:lp}=Ar.exports;lp.j=function(n){try{return JSON.stringify(n)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Yl=M((ce,Ir)=>{var cp=U("tty"),xr=U("util");ce.init=mp;ce.log=hp;ce.formatArgs=fp;ce.save=pp;ce.load=gp;ce.useColors=up;ce.destroy=xr.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");ce.colors=[6,2,3,4,5,1];try{let n=U("supports-color");n&&(n.stderr||n).level>=2&&(ce.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{}ce.inspectOpts=Object.keys(process.env).filter(n=>/^debug_/i.test(n)).reduce((n,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(i,o)=>o.toUpperCase()),r=process.env[e];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),n[t]=r,n},{});function up(){return"colors"in ce.inspectOpts?!!ce.inspectOpts.colors:cp.isatty(process.stderr.fd)}function fp(n){let{namespace:e,useColors:t}=this;if(t){let r=this.color,i="\x1B[3"+(r<8?r:"8;5;"+r),o=` ${i};1m${e} \x1B[0m`;n[0]=o+n[0].split(`
|
|
3
|
-
`).join(`
|
|
4
|
-
`+o),n.push(i+"m+"+Ir.exports.humanize(this.diff)+"\x1B[0m")}else n[0]=dp()+e+" "+n[0]}function dp(){return ce.inspectOpts.hideDate?"":new Date().toISOString()+" "}function hp(...n){return process.stderr.write(xr.formatWithOptions(ce.inspectOpts,...n)+`
|
|
5
|
-
`)}function pp(n){n?process.env.DEBUG=n:delete process.env.DEBUG}function gp(){return process.env.DEBUG}function mp(n){n.inspectOpts={};let e=Object.keys(ce.inspectOpts);for(let t=0;t<e.length;t++)n.inspectOpts[e[t]]=ce.inspectOpts[e[t]]}Ir.exports=No()(ce);var{formatters:Kl}=Ir.exports;Kl.o=function(n){return this.inspectOpts.colors=this.useColors,xr.inspect(n,this.inspectOpts).split(`
|
|
6
|
-
`).map(e=>e.trim()).join(" ")};Kl.O=function(n){return this.inspectOpts.colors=this.useColors,xr.inspect(n,this.inspectOpts)}});var bo=M((Vw,ko)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?ko.exports=Jl():ko.exports=Yl()});var jl=M(Se=>{"use strict";var yp=Se&&Se.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),_p=Se&&Se.__setModuleDefault||(Object.create?function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}:function(n,e){n.default=e}),zl=Se&&Se.__importStar||function(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)t!=="default"&&Object.prototype.hasOwnProperty.call(n,t)&&yp(e,n,t);return _p(e,n),e};Object.defineProperty(Se,"__esModule",{value:!0});Se.req=Se.json=Se.toBuffer=void 0;var Ep=zl(U("http")),vp=zl(U("https"));async function Xl(n){let e=0,t=[];for await(let r of n)e+=r.length,t.push(r);return Buffer.concat(t,e)}Se.toBuffer=Xl;async function Tp(n){let t=(await Xl(n)).toString("utf8");try{return JSON.parse(t)}catch(r){let i=r;throw i.message+=` (input: ${t})`,i}}Se.json=Tp;function Cp(n,e={}){let r=((typeof n=="string"?n:n.href).startsWith("https:")?vp:Ep).request(n,e),i=new Promise((o,s)=>{r.once("response",o).once("error",s).end()});return r.then=i.then.bind(i),r}Se.req=Cp});var tc=M(Ae=>{"use strict";var Ql=Ae&&Ae.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),Sp=Ae&&Ae.__setModuleDefault||(Object.create?function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}:function(n,e){n.default=e}),ec=Ae&&Ae.__importStar||function(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)t!=="default"&&Object.prototype.hasOwnProperty.call(n,t)&&Ql(e,n,t);return Sp(e,n),e},wp=Ae&&Ae.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&Ql(e,n,t)};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.Agent=void 0;var Ap=ec(U("net")),Zl=ec(U("http")),xp=U("https");wp(jl(),Ae);var je=Symbol("AgentBaseInternalState"),Mo=class extends Zl.Agent{constructor(e){super(e),this[je]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:t}=new Error;return typeof t!="string"?!1:t.split(`
|
|
7
|
-
`).some(r=>r.indexOf("(https.js:")!==-1||r.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let t=new Ap.Socket({writable:!1});return this.sockets[e].push(t),this.totalSocketCount++,t}decrementSockets(e,t){if(!this.sockets[e]||t===null)return;let r=this.sockets[e],i=r.indexOf(t);i!==-1&&(r.splice(i,1),this.totalSocketCount--,r.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?xp.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,t,r){let i={...t,secureEndpoint:this.isSecureEndpoint(t)},o=this.getName(i),s=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,i)).then(c=>{if(this.decrementSockets(o,s),c instanceof Zl.Agent)try{return c.addRequest(e,i)}catch(f){return r(f)}this[je].currentSocket=c,super.createSocket(e,t,r)},c=>{this.decrementSockets(o,s),r(c)})}createConnection(){let e=this[je].currentSocket;if(this[je].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[je].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[je]&&(this[je].defaultPort=e)}get protocol(){return this[je].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[je]&&(this[je].protocol=e)}};Ae.Agent=Mo});var nc=M(Yt=>{"use strict";var Ip=Yt&&Yt.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(Yt,"__esModule",{value:!0});Yt.parseProxyResponse=void 0;var Rp=Ip(bo()),Rr=(0,Rp.default)("https-proxy-agent:parse-proxy-response");function Pp(n){return new Promise((e,t)=>{let r=0,i=[];function o(){let d=n.read();d?u(d):n.once("readable",o)}function s(){n.removeListener("end",c),n.removeListener("error",f),n.removeListener("readable",o)}function c(){s(),Rr("onend"),t(new Error("Proxy connection ended before receiving CONNECT response"))}function f(d){s(),Rr("onerror %o",d),t(d)}function u(d){i.push(d),r+=d.length;let h=Buffer.concat(i,r),g=h.indexOf(`\r
|
|
8
|
-
\r
|
|
9
|
-
`);if(g===-1){Rr("have not received end of HTTP headers yet..."),o();return}let v=h.slice(0,g).toString("ascii").split(`\r
|
|
10
|
-
`),w=v.shift();if(!w)return n.destroy(),t(new Error("No header received from proxy CONNECT response"));let C=w.split(" "),N=+C[1],k=C.slice(2).join(" "),G={};for(let L of v){if(!L)continue;let q=L.indexOf(":");if(q===-1)return n.destroy(),t(new Error(`Invalid header from proxy CONNECT response: "${L}"`));let F=L.slice(0,q).toLowerCase(),B=L.slice(q+1).trimStart(),J=G[F];typeof J=="string"?G[F]=[J,B]:Array.isArray(J)?J.push(B):G[F]=B}Rr("got proxy server response: %o %o",w,G),s(),e({connect:{statusCode:N,statusText:k,headers:G},buffered:h})}n.on("error",f),n.on("end",c),o()})}Yt.parseProxyResponse=Pp});var lc=M(ke=>{"use strict";var Np=ke&&ke.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),kp=ke&&ke.__setModuleDefault||(Object.create?function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}:function(n,e){n.default=e}),sc=ke&&ke.__importStar||function(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)t!=="default"&&Object.prototype.hasOwnProperty.call(n,t)&&Np(e,n,t);return kp(e,n),e},ac=ke&&ke.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(ke,"__esModule",{value:!0});ke.HttpsProxyAgent=void 0;var Pr=sc(U("net")),rc=sc(U("tls")),bp=ac(U("assert")),Mp=ac(bo()),Op=tc(),Dp=U("url"),Up=nc(),Fn=(0,Mp.default)("https-proxy-agent"),ic=n=>n.servername===void 0&&n.host&&!Pr.isIP(n.host)?{...n,servername:n.host}:n,Nr=class extends Op.Agent{constructor(e,t){super(t),this.options={path:void 0},this.proxy=typeof e=="string"?new Dp.URL(e):e,this.proxyHeaders=t?.headers??{},Fn("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let r=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),i=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...t?oc(t,"headers"):null,host:r,port:i}}async connect(e,t){let{proxy:r}=this;if(!t.host)throw new TypeError('No "host" provided');let i;r.protocol==="https:"?(Fn("Creating `tls.Socket`: %o",this.connectOpts),i=rc.connect(ic(this.connectOpts))):(Fn("Creating `net.Socket`: %o",this.connectOpts),i=Pr.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},s=Pr.isIPv6(t.host)?`[${t.host}]`:t.host,c=`CONNECT ${s}:${t.port} HTTP/1.1\r
|
|
11
|
-
`;if(r.username||r.password){let g=`${decodeURIComponent(r.username)}:${decodeURIComponent(r.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(g).toString("base64")}`}o.Host=`${s}:${t.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let g of Object.keys(o))c+=`${g}: ${o[g]}\r
|
|
12
|
-
`;let f=(0,Up.parseProxyResponse)(i);i.write(`${c}\r
|
|
13
|
-
`);let{connect:u,buffered:d}=await f;if(e.emit("proxyConnect",u),this.emit("proxyConnect",u,e),u.statusCode===200)return e.once("socket",Fp),t.secureEndpoint?(Fn("Upgrading socket connection to TLS"),rc.connect({...oc(ic(t),"host","path","port"),socket:i})):i;i.destroy();let h=new Pr.Socket({writable:!1});return h.readable=!0,e.once("socket",g=>{Fn("Replaying proxy buffer for failed request"),(0,bp.default)(g.listenerCount("data")>0),g.push(d),g.push(null)}),h}};Nr.protocols=["http","https"];ke.HttpsProxyAgent=Nr;function Fp(n){n.resume()}function oc(n,...e){let t={},r;for(r in n)e.includes(r)||(t[r]=n[r]);return t}});var Ec=M(ye=>{"use strict";var Lp=ye&&ye.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),qp=ye&&ye.__setModuleDefault||(Object.create?function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}:function(n,e){n.default=e}),Gp=ye&&ye.__importStar||function(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)t!=="default"&&Object.prototype.hasOwnProperty.call(n,t)&&Lp(e,n,t);return qp(e,n),e},Mt=ye&&ye.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},Bp=ye&&ye.__classPrivateFieldSet||function(n,e,t,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?n!==e||!i:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(n,t):i?i.value=t:e.set(n,t),t},Or=ye&&ye.__importDefault||function(n){return n&&n.__esModule?n:{default:n}},zt,bt,cc,gc,mc,yc,kr,uc;Object.defineProperty(ye,"__esModule",{value:!0});ye.Gaxios=void 0;var Vp=Or(mo()),Hp=U("https"),$p=Or(Nh()),Wp=Or(U("querystring")),Jp=Or(pl()),fc=U("url"),br=Eo(),Kp=Tl(),dc=U("stream"),Yp=($l(),Ph(Hl)),hc=Po(),zp=jp()?window.fetch:$p.default;function Xp(){return typeof window<"u"&&!!window}function jp(){return Xp()&&!!window.fetch}function Zp(){return typeof Buffer<"u"}function pc(n,e){return!!_c(n,e)}function _c(n,e){e=e.toLowerCase();for(let t of Object.keys(n?.headers||{}))if(e===t.toLowerCase())return n.headers[t]}var Mr=class{constructor(e){zt.add(this),this.agentCache=new Map,this.defaults=e||{},this.interceptors={request:new hc.GaxiosInterceptorManager,response:new hc.GaxiosInterceptorManager}}async request(e={}){return e=await Mt(this,zt,"m",yc).call(this,e),e=await Mt(this,zt,"m",gc).call(this,e),Mt(this,zt,"m",mc).call(this,this._request(e))}async _defaultAdapter(e){let r=await(e.fetchImplementation||zp)(e.url,e),i=await this.getResponseData(e,r);return this.translateResponse(e,r,i)}async _request(e={}){var t;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 i="";await new Promise(o=>{(r?.data).on("data",s=>{i+=s}),(r?.data).on("end",o)}),r.data=i}throw new br.GaxiosError(`Request failed with status code ${r.status}`,e,r)}return r}catch(r){let i=r instanceof br.GaxiosError?r:new br.GaxiosError(r.message,e,void 0,r),{shouldRetry:o,config:s}=await(0,Kp.getRetryConfig)(i);if(o&&s)return i.config.retryConfig.currentRetryAttempt=s.retryConfig.currentRetryAttempt,e.retryConfig=(t=i.config)===null||t===void 0?void 0:t.retryConfig,this._request(e);throw i}}async getResponseData(e,t){switch(e.responseType){case"stream":return t.body;case"json":{let r=await t.text();try{r=JSON.parse(r)}catch{}return r}case"arraybuffer":return t.arrayBuffer();case"blob":return t.blob();case"text":return t.text();default:return this.getResponseDataFromContentType(t)}}validateStatus(e){return e>=200&&e<300}paramsSerializer(e){return Wp.default.stringify(e)}translateResponse(e,t,r){let i={};return t.headers.forEach((o,s)=>{i[s]=o}),{config:e,data:r,headers:i,status:t.status,statusText:t.statusText,request:{responseURL:t.url}}}async getResponseDataFromContentType(e){let t=e.headers.get("Content-Type");if(t===null)return e.text();if(t=t.toLowerCase(),t.includes("application/json")){let r=await e.text();try{r=JSON.parse(r)}catch{}return r}else return t.match(/^text\//)?e.text():e.blob()}async*getMultipartRequest(e,t){let r=`--${t}--`;for(let i of e){let o=i.headers["Content-Type"]||"application/octet-stream";yield`--${t}\r
|
|
14
|
-
Content-Type: ${o}\r
|
|
15
|
-
\r
|
|
16
|
-
`,typeof i.content=="string"?yield i.content:yield*i.content,yield`\r
|
|
17
|
-
`}yield r}};ye.Gaxios=Mr;bt=Mr,zt=new WeakSet,cc=function(e,t=[]){var r,i;let o=new fc.URL(e),s=[...t],c=((i=(r=process.env.NO_PROXY)!==null&&r!==void 0?r:process.env.no_proxy)===null||i===void 0?void 0:i.split(","))||[];for(let f of c)s.push(f.trim());for(let f of s)if(f instanceof RegExp){if(f.test(o.toString()))return!1}else if(f instanceof fc.URL){if(f.origin===o.origin)return!1}else if(f.startsWith("*.")||f.startsWith(".")){let u=f.replace(/^\*\./,".");if(o.hostname.endsWith(u))return!1}else if(f===o.origin||f===o.hostname||f===o.href)return!1;return!0},gc=async function(e){let t=Promise.resolve(e);for(let r of this.interceptors.request.values())r&&(t=t.then(r.resolved,r.rejected));return t},mc=async function(e){let t=Promise.resolve(e);for(let r of this.interceptors.response.values())r&&(t=t.then(r.resolved,r.rejected));return t},yc=async function(e){var t,r,i,o;let s=(0,Vp.default)(!0,{},this.defaults,e);if(!s.url)throw new Error("URL is required.");let c=s.baseUrl||s.baseURL;if(c&&(s.url=c.toString()+s.url),s.paramsSerializer=s.paramsSerializer||this.paramsSerializer,s.params&&Object.keys(s.params).length>0){let d=s.paramsSerializer(s.params);d.startsWith("?")&&(d=d.slice(1));let h=s.url.toString().includes("?")?"&":"?";s.url=s.url+h+d}if(typeof e.maxContentLength=="number"&&(s.size=e.maxContentLength),typeof e.maxRedirects=="number"&&(s.follow=e.maxRedirects),s.headers=s.headers||{},s.multipart===void 0&&s.data){let d=typeof FormData>"u"?!1:s?.data instanceof FormData;Jp.default.readable(s.data)?s.body=s.data:Zp()&&Buffer.isBuffer(s.data)?(s.body=s.data,pc(s,"Content-Type")||(s.headers["Content-Type"]="application/json")):typeof s.data=="object"?d||(_c(s,"content-type")==="application/x-www-form-urlencoded"?s.body=s.paramsSerializer(s.data):(pc(s,"Content-Type")||(s.headers["Content-Type"]="application/json"),s.body=JSON.stringify(s.data))):s.body=s.data}else if(s.multipart&&s.multipart.length>0){let d=(0,Yp.v4)();s.headers["Content-Type"]=`multipart/related; boundary=${d}`;let h=new dc.PassThrough;s.body=h,(0,dc.pipeline)(this.getMultipartRequest(s.multipart,d),h,()=>{})}s.validateStatus=s.validateStatus||this.validateStatus,s.responseType=s.responseType||"unknown",!s.headers.Accept&&s.responseType==="json"&&(s.headers.Accept="application/json"),s.method=s.method||"GET";let f=s.proxy||((t=process==null?void 0:process.env)===null||t===void 0?void 0:t.HTTPS_PROXY)||((r=process==null?void 0:process.env)===null||r===void 0?void 0:r.https_proxy)||((i=process==null?void 0:process.env)===null||i===void 0?void 0:i.HTTP_PROXY)||((o=process==null?void 0:process.env)===null||o===void 0?void 0:o.http_proxy),u=Mt(this,zt,"m",cc).call(this,s.url,s.noProxy);if(!s.agent)if(f&&u){let d=await Mt(bt,bt,"m",uc).call(bt);this.agentCache.has(f)?s.agent=this.agentCache.get(f):(s.agent=new d(f,{cert:s.cert,key:s.key}),this.agentCache.set(f,s.agent))}else s.cert&&s.key&&(this.agentCache.has(s.key)?s.agent=this.agentCache.get(s.key):(s.agent=new Hp.Agent({cert:s.cert,key:s.key}),this.agentCache.set(s.key,s.agent)));return typeof s.errorRedactor!="function"&&s.errorRedactor!==!1&&(s.errorRedactor=br.defaultErrorRedactor),s},uc=async function(){return Bp(this,bt,Mt(this,bt,"f",kr)||(await Promise.resolve().then(()=>Gp(lc()))).HttpsProxyAgent,"f",kr),Mt(this,bt,"f",kr)};kr={value:void 0}});var qe=M(Te=>{"use strict";var Qp=Te&&Te.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),eg=Te&&Te.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&Qp(e,n,t)};Object.defineProperty(Te,"__esModule",{value:!0});Te.instance=Te.Gaxios=Te.GaxiosError=void 0;Te.request=ng;var vc=Ec();Object.defineProperty(Te,"Gaxios",{enumerable:!0,get:function(){return vc.Gaxios}});var tg=Eo();Object.defineProperty(Te,"GaxiosError",{enumerable:!0,get:function(){return tg.GaxiosError}});eg(Po(),Te);Te.instance=new vc.Gaxios;async function ng(n){return Te.instance.request(n)}});var Oo=M((Tc,Dr)=>{(function(n){"use strict";var e,t=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,r=Math.ceil,i=Math.floor,o="[BigNumber Error] ",s=o+"Number primitive has more than 15 significant digits: ",c=1e14,f=14,u=9007199254740991,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],h=1e7,g=1e9;function v(F){var B,J,Y,D=O.prototype={constructor:O,toString:null,valueOf:null},z=new O(1),Z=20,te=4,de=-7,re=21,Fe=-1e7,Le=1e7,Pt=!1,kn=1,gt=0,co={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},Nt="0123456789abcdefghijklmnopqrstuvwxyz",uo=!0;function O(p,m){var y,x,E,S,P,_,T,R,A=this;if(!(A instanceof O))return new O(p,m);if(m==null){if(p&&p._isBigNumber===!0){A.s=p.s,!p.c||p.e>Le?A.c=A.e=null:p.e<Fe?A.c=[A.e=0]:(A.e=p.e,A.c=p.c.slice());return}if((_=typeof p=="number")&&p*0==0){if(A.s=1/p<0?(p=-p,-1):1,p===~~p){for(S=0,P=p;P>=10;P/=10,S++);S>Le?A.c=A.e=null:(A.e=S,A.c=[p]);return}R=String(p)}else{if(!t.test(R=String(p)))return Y(A,R,_);A.s=R.charCodeAt(0)==45?(R=R.slice(1),-1):1}(S=R.indexOf("."))>-1&&(R=R.replace(".","")),(P=R.search(/e/i))>0?(S<0&&(S=P),S+=+R.slice(P+1),R=R.substring(0,P)):S<0&&(S=R.length)}else{if(k(m,2,Nt.length,"Base"),m==10&&uo)return A=new O(p),Re(A,Z+A.e+1,te);if(R=String(p),_=typeof p=="number"){if(p*0!=0)return Y(A,R,_,m);if(A.s=1/p<0?(R=R.slice(1),-1):1,O.DEBUG&&R.replace(/^0\.0*|\./,"").length>15)throw Error(s+p)}else A.s=R.charCodeAt(0)===45?(R=R.slice(1),-1):1;for(y=Nt.slice(0,m),S=P=0,T=R.length;P<T;P++)if(y.indexOf(x=R.charAt(P))<0){if(x=="."){if(P>S){S=T;continue}}else if(!E&&(R==R.toUpperCase()&&(R=R.toLowerCase())||R==R.toLowerCase()&&(R=R.toUpperCase()))){E=!0,P=-1,S=0;continue}return Y(A,String(p),_,m)}_=!1,R=J(R,m,10,A.s),(S=R.indexOf("."))>-1?R=R.replace(".",""):S=R.length}for(P=0;R.charCodeAt(P)===48;P++);for(T=R.length;R.charCodeAt(--T)===48;);if(R=R.slice(P,++T)){if(T-=P,_&&O.DEBUG&&T>15&&(p>u||p!==i(p)))throw Error(s+A.s*p);if((S=S-P-1)>Le)A.c=A.e=null;else if(S<Fe)A.c=[A.e=0];else{if(A.e=S,A.c=[],P=(S+1)%f,S<0&&(P+=f),P<T){for(P&&A.c.push(+R.slice(0,P)),T-=f;P<T;)A.c.push(+R.slice(P,P+=f));P=f-(R=R.slice(P)).length}else P-=T;for(;P--;R+="0");A.c.push(+R)}}else A.c=[A.e=0]}O.clone=v,O.ROUND_UP=0,O.ROUND_DOWN=1,O.ROUND_CEIL=2,O.ROUND_FLOOR=3,O.ROUND_HALF_UP=4,O.ROUND_HALF_DOWN=5,O.ROUND_HALF_EVEN=6,O.ROUND_HALF_CEIL=7,O.ROUND_HALF_FLOOR=8,O.EUCLID=9,O.config=O.set=function(p){var m,y;if(p!=null)if(typeof p=="object"){if(p.hasOwnProperty(m="DECIMAL_PLACES")&&(y=p[m],k(y,0,g,m),Z=y),p.hasOwnProperty(m="ROUNDING_MODE")&&(y=p[m],k(y,0,8,m),te=y),p.hasOwnProperty(m="EXPONENTIAL_AT")&&(y=p[m],y&&y.pop?(k(y[0],-g,0,m),k(y[1],0,g,m),de=y[0],re=y[1]):(k(y,-g,g,m),de=-(re=y<0?-y:y))),p.hasOwnProperty(m="RANGE"))if(y=p[m],y&&y.pop)k(y[0],-g,-1,m),k(y[1],1,g,m),Fe=y[0],Le=y[1];else if(k(y,-g,g,m),y)Fe=-(Le=y<0?-y:y);else throw Error(o+m+" cannot be zero: "+y);if(p.hasOwnProperty(m="CRYPTO"))if(y=p[m],y===!!y)if(y)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))Pt=y;else throw Pt=!y,Error(o+"crypto unavailable");else Pt=y;else throw Error(o+m+" not true or false: "+y);if(p.hasOwnProperty(m="MODULO_MODE")&&(y=p[m],k(y,0,9,m),kn=y),p.hasOwnProperty(m="POW_PRECISION")&&(y=p[m],k(y,0,g,m),gt=y),p.hasOwnProperty(m="FORMAT"))if(y=p[m],typeof y=="object")co=y;else throw Error(o+m+" not an object: "+y);if(p.hasOwnProperty(m="ALPHABET"))if(y=p[m],typeof y=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(y))uo=y.slice(0,10)=="0123456789",Nt=y;else throw Error(o+m+" invalid: "+y)}else throw Error(o+"Object expected: "+p);return{DECIMAL_PLACES:Z,ROUNDING_MODE:te,EXPONENTIAL_AT:[de,re],RANGE:[Fe,Le],CRYPTO:Pt,MODULO_MODE:kn,POW_PRECISION:gt,FORMAT:co,ALPHABET:Nt}},O.isBigNumber=function(p){if(!p||p._isBigNumber!==!0)return!1;if(!O.DEBUG)return!0;var m,y,x=p.c,E=p.e,S=p.s;e:if({}.toString.call(x)=="[object Array]"){if((S===1||S===-1)&&E>=-g&&E<=g&&E===i(E)){if(x[0]===0){if(E===0&&x.length===1)return!0;break e}if(m=(E+1)%f,m<1&&(m+=f),String(x[0]).length==m){for(m=0;m<x.length;m++)if(y=x[m],y<0||y>=c||y!==i(y))break e;if(y!==0)return!0}}}else if(x===null&&E===null&&(S===null||S===1||S===-1))return!0;throw Error(o+"Invalid BigNumber: "+p)},O.maximum=O.max=function(){return il(arguments,-1)},O.minimum=O.min=function(){return il(arguments,1)},O.random=function(){var p=9007199254740992,m=Math.random()*p&2097151?function(){return i(Math.random()*p)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(y){var x,E,S,P,_,T=0,R=[],A=new O(z);if(y==null?y=Z:k(y,0,g),P=r(y/f),Pt)if(crypto.getRandomValues){for(x=crypto.getRandomValues(new Uint32Array(P*=2));T<P;)_=x[T]*131072+(x[T+1]>>>11),_>=9e15?(E=crypto.getRandomValues(new Uint32Array(2)),x[T]=E[0],x[T+1]=E[1]):(R.push(_%1e14),T+=2);T=P/2}else if(crypto.randomBytes){for(x=crypto.randomBytes(P*=7);T<P;)_=(x[T]&31)*281474976710656+x[T+1]*1099511627776+x[T+2]*4294967296+x[T+3]*16777216+(x[T+4]<<16)+(x[T+5]<<8)+x[T+6],_>=9e15?crypto.randomBytes(7).copy(x,T):(R.push(_%1e14),T+=7);T=P/7}else throw Pt=!1,Error(o+"crypto unavailable");if(!Pt)for(;T<P;)_=m(),_<9e15&&(R[T++]=_%1e14);for(P=R[--T],y%=f,P&&y&&(_=d[f-y],R[T]=i(P/_)*_);R[T]===0;R.pop(),T--);if(T<0)R=[S=0];else{for(S=-1;R[0]===0;R.splice(0,1),S-=f);for(T=1,_=R[0];_>=10;_/=10,T++);T<f&&(S-=f-T)}return A.e=S,A.c=R,A}}(),O.sum=function(){for(var p=1,m=arguments,y=new O(m[0]);p<m.length;)y=y.plus(m[p++]);return y},J=function(){var p="0123456789";function m(y,x,E,S){for(var P,_=[0],T,R=0,A=y.length;R<A;){for(T=_.length;T--;_[T]*=x);for(_[0]+=S.indexOf(y.charAt(R++)),P=0;P<_.length;P++)_[P]>E-1&&(_[P+1]==null&&(_[P+1]=0),_[P+1]+=_[P]/E|0,_[P]%=E)}return _.reverse()}return function(y,x,E,S,P){var _,T,R,A,b,H,$,j,ie=y.indexOf("."),le=Z,X=te;for(ie>=0&&(A=gt,gt=0,y=y.replace(".",""),j=new O(x),H=j.pow(y.length-ie),gt=A,j.c=m(q(C(H.c),H.e,"0"),10,E,p),j.e=j.c.length),$=m(y,x,E,P?(_=Nt,p):(_=p,Nt)),R=A=$.length;$[--A]==0;$.pop());if(!$[0])return _.charAt(0);if(ie<0?--R:(H.c=$,H.e=R,H.s=S,H=B(H,j,le,X,E),$=H.c,b=H.r,R=H.e),T=R+le+1,ie=$[T],A=E/2,b=b||T<0||$[T+1]!=null,b=X<4?(ie!=null||b)&&(X==0||X==(H.s<0?3:2)):ie>A||ie==A&&(X==4||b||X==6&&$[T-1]&1||X==(H.s<0?8:7)),T<1||!$[0])y=b?q(_.charAt(1),-le,_.charAt(0)):_.charAt(0);else{if($.length=T,b)for(--E;++$[--T]>E;)$[T]=0,T||(++R,$=[1].concat($));for(A=$.length;!$[--A];);for(ie=0,y="";ie<=A;y+=_.charAt($[ie++]));y=q(y,R,_.charAt(0))}return y}}(),B=function(){function p(x,E,S){var P,_,T,R,A=0,b=x.length,H=E%h,$=E/h|0;for(x=x.slice();b--;)T=x[b]%h,R=x[b]/h|0,P=$*T+R*H,_=H*T+P%h*h+A,A=(_/S|0)+(P/h|0)+$*R,x[b]=_%S;return A&&(x=[A].concat(x)),x}function m(x,E,S,P){var _,T;if(S!=P)T=S>P?1:-1;else for(_=T=0;_<S;_++)if(x[_]!=E[_]){T=x[_]>E[_]?1:-1;break}return T}function y(x,E,S,P){for(var _=0;S--;)x[S]-=_,_=x[S]<E[S]?1:0,x[S]=_*P+x[S]-E[S];for(;!x[0]&&x.length>1;x.splice(0,1));}return function(x,E,S,P,_){var T,R,A,b,H,$,j,ie,le,X,Q,ge,_r,po,go,ze,bn,Pe=x.s==E.s?1:-1,ve=x.c,oe=E.c;if(!ve||!ve[0]||!oe||!oe[0])return new O(!x.s||!E.s||(ve?oe&&ve[0]==oe[0]:!oe)?NaN:ve&&ve[0]==0||!oe?Pe*0:Pe/0);for(ie=new O(Pe),le=ie.c=[],R=x.e-E.e,Pe=S+R+1,_||(_=c,R=w(x.e/f)-w(E.e/f),Pe=Pe/f|0),A=0;oe[A]==(ve[A]||0);A++);if(oe[A]>(ve[A]||0)&&R--,Pe<0)le.push(1),b=!0;else{for(po=ve.length,ze=oe.length,A=0,Pe+=2,H=i(_/(oe[0]+1)),H>1&&(oe=p(oe,H,_),ve=p(ve,H,_),ze=oe.length,po=ve.length),_r=ze,X=ve.slice(0,ze),Q=X.length;Q<ze;X[Q++]=0);bn=oe.slice(),bn=[0].concat(bn),go=oe[0],oe[1]>=_/2&&go++;do{if(H=0,T=m(oe,X,ze,Q),T<0){if(ge=X[0],ze!=Q&&(ge=ge*_+(X[1]||0)),H=i(ge/go),H>1)for(H>=_&&(H=_-1),$=p(oe,H,_),j=$.length,Q=X.length;m($,X,j,Q)==1;)H--,y($,ze<j?bn:oe,j,_),j=$.length,T=1;else H==0&&(T=H=1),$=oe.slice(),j=$.length;if(j<Q&&($=[0].concat($)),y(X,$,Q,_),Q=X.length,T==-1)for(;m(oe,X,ze,Q)<1;)H++,y(X,ze<Q?bn:oe,Q,_),Q=X.length}else T===0&&(H++,X=[0]);le[A++]=H,X[0]?X[Q++]=ve[_r]||0:(X=[ve[_r]],Q=1)}while((_r++<po||X[0]!=null)&&Pe--);b=X[0]!=null,le[0]||le.splice(0,1)}if(_==c){for(A=1,Pe=le[0];Pe>=10;Pe/=10,A++);Re(ie,S+(ie.e=A+R*f-1)+1,P,b)}else ie.e=R,ie.r=+b;return ie}}();function fo(p,m,y,x){var E,S,P,_,T;if(y==null?y=te:k(y,0,8),!p.c)return p.toString();if(E=p.c[0],P=p.e,m==null)T=C(p.c),T=x==1||x==2&&(P<=de||P>=re)?L(T,P):q(T,P,"0");else if(p=Re(new O(p),m,y),S=p.e,T=C(p.c),_=T.length,x==1||x==2&&(m<=S||S<=de)){for(;_<m;T+="0",_++);T=L(T,S)}else if(m-=P+(x===2&&S>P),T=q(T,S,"0"),S+1>_){if(--m>0)for(T+=".";m--;T+="0");}else if(m+=S-_,m>0)for(S+1==_&&(T+=".");m--;T+="0");return p.s<0&&E?"-"+T:T}function il(p,m){for(var y,x,E=1,S=new O(p[0]);E<p.length;E++)x=new O(p[E]),(!x.s||(y=N(S,x))===m||y===0&&S.s===m)&&(S=x);return S}function ho(p,m,y){for(var x=1,E=m.length;!m[--E];m.pop());for(E=m[0];E>=10;E/=10,x++);return(y=x+y*f-1)>Le?p.c=p.e=null:y<Fe?p.c=[p.e=0]:(p.e=y,p.c=m),p}Y=function(){var p=/^(-?)0([xbo])(?=\w[\w.]*$)/i,m=/^([^.]+)\.$/,y=/^\.([^.]+)$/,x=/^-?(Infinity|NaN)$/,E=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(S,P,_,T){var R,A=_?P:P.replace(E,"");if(x.test(A))S.s=isNaN(A)?null:A<0?-1:1;else{if(!_&&(A=A.replace(p,function(b,H,$){return R=($=$.toLowerCase())=="x"?16:$=="b"?2:8,!T||T==R?H:b}),T&&(R=T,A=A.replace(m,"$1").replace(y,"0.$1")),P!=A))return new O(A,R);if(O.DEBUG)throw Error(o+"Not a"+(T?" base "+T:"")+" number: "+P);S.s=null}S.c=S.e=null}}();function Re(p,m,y,x){var E,S,P,_,T,R,A,b=p.c,H=d;if(b){e:{for(E=1,_=b[0];_>=10;_/=10,E++);if(S=m-E,S<0)S+=f,P=m,T=b[R=0],A=i(T/H[E-P-1]%10);else if(R=r((S+1)/f),R>=b.length)if(x){for(;b.length<=R;b.push(0));T=A=0,E=1,S%=f,P=S-f+1}else break e;else{for(T=_=b[R],E=1;_>=10;_/=10,E++);S%=f,P=S-f+E,A=P<0?0:i(T/H[E-P-1]%10)}if(x=x||m<0||b[R+1]!=null||(P<0?T:T%H[E-P-1]),x=y<4?(A||x)&&(y==0||y==(p.s<0?3:2)):A>5||A==5&&(y==4||x||y==6&&(S>0?P>0?T/H[E-P]:0:b[R-1])%10&1||y==(p.s<0?8:7)),m<1||!b[0])return b.length=0,x?(m-=p.e+1,b[0]=H[(f-m%f)%f],p.e=-m||0):b[0]=p.e=0,p;if(S==0?(b.length=R,_=1,R--):(b.length=R+1,_=H[f-S],b[R]=P>0?i(T/H[E-P]%H[P])*_:0),x)for(;;)if(R==0){for(S=1,P=b[0];P>=10;P/=10,S++);for(P=b[0]+=_,_=1;P>=10;P/=10,_++);S!=_&&(p.e++,b[0]==c&&(b[0]=1));break}else{if(b[R]+=_,b[R]!=c)break;b[R--]=0,_=1}for(S=b.length;b[--S]===0;b.pop());}p.e>Le?p.c=p.e=null:p.e<Fe&&(p.c=[p.e=0])}return p}function ot(p){var m,y=p.e;return y===null?p.toString():(m=C(p.c),m=y<=de||y>=re?L(m,y):q(m,y,"0"),p.s<0?"-"+m:m)}return D.absoluteValue=D.abs=function(){var p=new O(this);return p.s<0&&(p.s=1),p},D.comparedTo=function(p,m){return N(this,new O(p,m))},D.decimalPlaces=D.dp=function(p,m){var y,x,E,S=this;if(p!=null)return k(p,0,g),m==null?m=te:k(m,0,8),Re(new O(S),p+S.e+1,m);if(!(y=S.c))return null;if(x=((E=y.length-1)-w(this.e/f))*f,E=y[E])for(;E%10==0;E/=10,x--);return x<0&&(x=0),x},D.dividedBy=D.div=function(p,m){return B(this,new O(p,m),Z,te)},D.dividedToIntegerBy=D.idiv=function(p,m){return B(this,new O(p,m),0,1)},D.exponentiatedBy=D.pow=function(p,m){var y,x,E,S,P,_,T,R,A,b=this;if(p=new O(p),p.c&&!p.isInteger())throw Error(o+"Exponent not an integer: "+ot(p));if(m!=null&&(m=new O(m)),_=p.e>14,!b.c||!b.c[0]||b.c[0]==1&&!b.e&&b.c.length==1||!p.c||!p.c[0])return A=new O(Math.pow(+ot(b),_?p.s*(2-G(p)):+ot(p))),m?A.mod(m):A;if(T=p.s<0,m){if(m.c?!m.c[0]:!m.s)return new O(NaN);x=!T&&b.isInteger()&&m.isInteger(),x&&(b=b.mod(m))}else{if(p.e>9&&(b.e>0||b.e<-1||(b.e==0?b.c[0]>1||_&&b.c[1]>=24e7:b.c[0]<8e13||_&&b.c[0]<=9999975e7)))return S=b.s<0&&G(p)?-0:0,b.e>-1&&(S=1/S),new O(T?1/S:S);gt&&(S=r(gt/f+2))}for(_?(y=new O(.5),T&&(p.s=1),R=G(p)):(E=Math.abs(+ot(p)),R=E%2),A=new O(z);;){if(R){if(A=A.times(b),!A.c)break;S?A.c.length>S&&(A.c.length=S):x&&(A=A.mod(m))}if(E){if(E=i(E/2),E===0)break;R=E%2}else if(p=p.times(y),Re(p,p.e+1,1),p.e>14)R=G(p);else{if(E=+ot(p),E===0)break;R=E%2}b=b.times(b),S?b.c&&b.c.length>S&&(b.c.length=S):x&&(b=b.mod(m))}return x?A:(T&&(A=z.div(A)),m?A.mod(m):S?Re(A,gt,te,P):A)},D.integerValue=function(p){var m=new O(this);return p==null?p=te:k(p,0,8),Re(m,m.e+1,p)},D.isEqualTo=D.eq=function(p,m){return N(this,new O(p,m))===0},D.isFinite=function(){return!!this.c},D.isGreaterThan=D.gt=function(p,m){return N(this,new O(p,m))>0},D.isGreaterThanOrEqualTo=D.gte=function(p,m){return(m=N(this,new O(p,m)))===1||m===0},D.isInteger=function(){return!!this.c&&w(this.e/f)>this.c.length-2},D.isLessThan=D.lt=function(p,m){return N(this,new O(p,m))<0},D.isLessThanOrEqualTo=D.lte=function(p,m){return(m=N(this,new O(p,m)))===-1||m===0},D.isNaN=function(){return!this.s},D.isNegative=function(){return this.s<0},D.isPositive=function(){return this.s>0},D.isZero=function(){return!!this.c&&this.c[0]==0},D.minus=function(p,m){var y,x,E,S,P=this,_=P.s;if(p=new O(p,m),m=p.s,!_||!m)return new O(NaN);if(_!=m)return p.s=-m,P.plus(p);var T=P.e/f,R=p.e/f,A=P.c,b=p.c;if(!T||!R){if(!A||!b)return A?(p.s=-m,p):new O(b?P:NaN);if(!A[0]||!b[0])return b[0]?(p.s=-m,p):new O(A[0]?P:te==3?-0:0)}if(T=w(T),R=w(R),A=A.slice(),_=T-R){for((S=_<0)?(_=-_,E=A):(R=T,E=b),E.reverse(),m=_;m--;E.push(0));E.reverse()}else for(x=(S=(_=A.length)<(m=b.length))?_:m,_=m=0;m<x;m++)if(A[m]!=b[m]){S=A[m]<b[m];break}if(S&&(E=A,A=b,b=E,p.s=-p.s),m=(x=b.length)-(y=A.length),m>0)for(;m--;A[y++]=0);for(m=c-1;x>_;){if(A[--x]<b[x]){for(y=x;y&&!A[--y];A[y]=m);--A[y],A[x]+=c}A[x]-=b[x]}for(;A[0]==0;A.splice(0,1),--R);return A[0]?ho(p,A,R):(p.s=te==3?-1:1,p.c=[p.e=0],p)},D.modulo=D.mod=function(p,m){var y,x,E=this;return p=new O(p,m),!E.c||!p.s||p.c&&!p.c[0]?new O(NaN):!p.c||E.c&&!E.c[0]?new O(E):(kn==9?(x=p.s,p.s=1,y=B(E,p,0,3),p.s=x,y.s*=x):y=B(E,p,0,kn),p=E.minus(y.times(p)),!p.c[0]&&kn==1&&(p.s=E.s),p)},D.multipliedBy=D.times=function(p,m){var y,x,E,S,P,_,T,R,A,b,H,$,j,ie,le,X=this,Q=X.c,ge=(p=new O(p,m)).c;if(!Q||!ge||!Q[0]||!ge[0])return!X.s||!p.s||Q&&!Q[0]&&!ge||ge&&!ge[0]&&!Q?p.c=p.e=p.s=null:(p.s*=X.s,!Q||!ge?p.c=p.e=null:(p.c=[0],p.e=0)),p;for(x=w(X.e/f)+w(p.e/f),p.s*=X.s,T=Q.length,b=ge.length,T<b&&(j=Q,Q=ge,ge=j,E=T,T=b,b=E),E=T+b,j=[];E--;j.push(0));for(ie=c,le=h,E=b;--E>=0;){for(y=0,H=ge[E]%le,$=ge[E]/le|0,P=T,S=E+P;S>E;)R=Q[--P]%le,A=Q[P]/le|0,_=$*R+A*H,R=H*R+_%le*le+j[S]+y,y=(R/ie|0)+(_/le|0)+$*A,j[S--]=R%ie;j[S]=y}return y?++x:j.splice(0,1),ho(p,j,x)},D.negated=function(){var p=new O(this);return p.s=-p.s||null,p},D.plus=function(p,m){var y,x=this,E=x.s;if(p=new O(p,m),m=p.s,!E||!m)return new O(NaN);if(E!=m)return p.s=-m,x.minus(p);var S=x.e/f,P=p.e/f,_=x.c,T=p.c;if(!S||!P){if(!_||!T)return new O(E/0);if(!_[0]||!T[0])return T[0]?p:new O(_[0]?x:E*0)}if(S=w(S),P=w(P),_=_.slice(),E=S-P){for(E>0?(P=S,y=T):(E=-E,y=_),y.reverse();E--;y.push(0));y.reverse()}for(E=_.length,m=T.length,E-m<0&&(y=T,T=_,_=y,m=E),E=0;m;)E=(_[--m]=_[m]+T[m]+E)/c|0,_[m]=c===_[m]?0:_[m]%c;return E&&(_=[E].concat(_),++P),ho(p,_,P)},D.precision=D.sd=function(p,m){var y,x,E,S=this;if(p!=null&&p!==!!p)return k(p,1,g),m==null?m=te:k(m,0,8),Re(new O(S),p,m);if(!(y=S.c))return null;if(E=y.length-1,x=E*f+1,E=y[E]){for(;E%10==0;E/=10,x--);for(E=y[0];E>=10;E/=10,x++);}return p&&S.e+1>x&&(x=S.e+1),x},D.shiftedBy=function(p){return k(p,-u,u),this.times("1e"+p)},D.squareRoot=D.sqrt=function(){var p,m,y,x,E,S=this,P=S.c,_=S.s,T=S.e,R=Z+4,A=new O("0.5");if(_!==1||!P||!P[0])return new O(!_||_<0&&(!P||P[0])?NaN:P?S:1/0);if(_=Math.sqrt(+ot(S)),_==0||_==1/0?(m=C(P),(m.length+T)%2==0&&(m+="0"),_=Math.sqrt(+m),T=w((T+1)/2)-(T<0||T%2),_==1/0?m="5e"+T:(m=_.toExponential(),m=m.slice(0,m.indexOf("e")+1)+T),y=new O(m)):y=new O(_+""),y.c[0]){for(T=y.e,_=T+R,_<3&&(_=0);;)if(E=y,y=A.times(E.plus(B(S,E,R,1))),C(E.c).slice(0,_)===(m=C(y.c)).slice(0,_))if(y.e<T&&--_,m=m.slice(_-3,_+1),m=="9999"||!x&&m=="4999"){if(!x&&(Re(E,E.e+Z+2,0),E.times(E).eq(S))){y=E;break}R+=4,_+=4,x=1}else{(!+m||!+m.slice(1)&&m.charAt(0)=="5")&&(Re(y,y.e+Z+2,1),p=!y.times(y).eq(S));break}}return Re(y,y.e+Z+1,te,p)},D.toExponential=function(p,m){return p!=null&&(k(p,0,g),p++),fo(this,p,m,1)},D.toFixed=function(p,m){return p!=null&&(k(p,0,g),p=p+this.e+1),fo(this,p,m)},D.toFormat=function(p,m,y){var x,E=this;if(y==null)p!=null&&m&&typeof m=="object"?(y=m,m=null):p&&typeof p=="object"?(y=p,p=m=null):y=co;else if(typeof y!="object")throw Error(o+"Argument not an object: "+y);if(x=E.toFixed(p,m),E.c){var S,P=x.split("."),_=+y.groupSize,T=+y.secondaryGroupSize,R=y.groupSeparator||"",A=P[0],b=P[1],H=E.s<0,$=H?A.slice(1):A,j=$.length;if(T&&(S=_,_=T,T=S,j-=S),_>0&&j>0){for(S=j%_||_,A=$.substr(0,S);S<j;S+=_)A+=R+$.substr(S,_);T>0&&(A+=R+$.slice(S)),H&&(A="-"+A)}x=b?A+(y.decimalSeparator||"")+((T=+y.fractionGroupSize)?b.replace(new RegExp("\\d{"+T+"}\\B","g"),"$&"+(y.fractionGroupSeparator||"")):b):A}return(y.prefix||"")+x+(y.suffix||"")},D.toFraction=function(p){var m,y,x,E,S,P,_,T,R,A,b,H,$=this,j=$.c;if(p!=null&&(_=new O(p),!_.isInteger()&&(_.c||_.s!==1)||_.lt(z)))throw Error(o+"Argument "+(_.isInteger()?"out of range: ":"not an integer: ")+ot(_));if(!j)return new O($);for(m=new O(z),R=y=new O(z),x=T=new O(z),H=C(j),S=m.e=H.length-$.e-1,m.c[0]=d[(P=S%f)<0?f+P:P],p=!p||_.comparedTo(m)>0?S>0?m:R:_,P=Le,Le=1/0,_=new O(H),T.c[0]=0;A=B(_,m,0,1),E=y.plus(A.times(x)),E.comparedTo(p)!=1;)y=x,x=E,R=T.plus(A.times(E=R)),T=E,m=_.minus(A.times(E=m)),_=E;return E=B(p.minus(y),x,0,1),T=T.plus(E.times(R)),y=y.plus(E.times(x)),T.s=R.s=$.s,S=S*2,b=B(R,x,S,te).minus($).abs().comparedTo(B(T,y,S,te).minus($).abs())<1?[R,x]:[T,y],Le=P,b},D.toNumber=function(){return+ot(this)},D.toPrecision=function(p,m){return p!=null&&k(p,1,g),fo(this,p,m,2)},D.toString=function(p){var m,y=this,x=y.s,E=y.e;return E===null?x?(m="Infinity",x<0&&(m="-"+m)):m="NaN":(p==null?m=E<=de||E>=re?L(C(y.c),E):q(C(y.c),E,"0"):p===10&&uo?(y=Re(new O(y),Z+E+1,te),m=q(C(y.c),y.e,"0")):(k(p,2,Nt.length,"Base"),m=J(q(C(y.c),E,"0"),10,p,x,!0)),x<0&&y.c[0]&&(m="-"+m)),m},D.valueOf=D.toJSON=function(){return ot(this)},D._isBigNumber=!0,F!=null&&O.set(F),O}function w(F){var B=F|0;return F>0||F===B?B:B-1}function C(F){for(var B,J,Y=1,D=F.length,z=F[0]+"";Y<D;){for(B=F[Y++]+"",J=f-B.length;J--;B="0"+B);z+=B}for(D=z.length;z.charCodeAt(--D)===48;);return z.slice(0,D+1||1)}function N(F,B){var J,Y,D=F.c,z=B.c,Z=F.s,te=B.s,de=F.e,re=B.e;if(!Z||!te)return null;if(J=D&&!D[0],Y=z&&!z[0],J||Y)return J?Y?0:-te:Z;if(Z!=te)return Z;if(J=Z<0,Y=de==re,!D||!z)return Y?0:!D^J?1:-1;if(!Y)return de>re^J?1:-1;for(te=(de=D.length)<(re=z.length)?de:re,Z=0;Z<te;Z++)if(D[Z]!=z[Z])return D[Z]>z[Z]^J?1:-1;return de==re?0:de>re^J?1:-1}function k(F,B,J,Y){if(F<B||F>J||F!==i(F))throw Error(o+(Y||"Argument")+(typeof F=="number"?F<B||F>J?" out of range: ":" not an integer: ":" not a primitive number: ")+String(F))}function G(F){var B=F.c.length-1;return w(F.e/f)==B&&F.c[B]%2!=0}function L(F,B){return(F.length>1?F.charAt(0)+"."+F.slice(1):F)+(B<0?"e":"e+")+B}function q(F,B,J){var Y,D;if(B<0){for(D=J+".";++B;D+=J);F=D+F}else if(Y=F.length,++B>Y){for(D=J,B-=Y;--B;D+=J);F+=D}else B<Y&&(F=F.slice(0,B)+"."+F.slice(B));return F}e=v(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof Dr<"u"&&Dr.exports?Dr.exports=e:(n||(n=typeof self<"u"&&self?self:window),n.BigNumber=e)})(Tc)});var Ac=M((zw,wc)=>{var Cc=Oo(),Sc=wc.exports;(function(){"use strict";function n(u){return u<10?"0"+u:u}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,t=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r,i,o={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},s;function c(u){return t.lastIndex=0,t.test(u)?'"'+u.replace(t,function(d){var h=o[d];return typeof h=="string"?h:"\\u"+("0000"+d.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function f(u,d){var h,g,v,w,C=r,N,k=d[u],G=k!=null&&(k instanceof Cc||Cc.isBigNumber(k));switch(k&&typeof k=="object"&&typeof k.toJSON=="function"&&(k=k.toJSON(u)),typeof s=="function"&&(k=s.call(d,u,k)),typeof k){case"string":return G?k:c(k);case"number":return isFinite(k)?String(k):"null";case"boolean":case"null":case"bigint":return String(k);case"object":if(!k)return"null";if(r+=i,N=[],Object.prototype.toString.apply(k)==="[object Array]"){for(w=k.length,h=0;h<w;h+=1)N[h]=f(h,k)||"null";return v=N.length===0?"[]":r?`[
|
|
18
|
-
`+r+N.join(`,
|
|
19
|
-
`+r)+`
|
|
20
|
-
`+C+"]":"["+N.join(",")+"]",r=C,v}if(s&&typeof s=="object")for(w=s.length,h=0;h<w;h+=1)typeof s[h]=="string"&&(g=s[h],v=f(g,k),v&&N.push(c(g)+(r?": ":":")+v));else Object.keys(k).forEach(function(L){var q=f(L,k);q&&N.push(c(L)+(r?": ":":")+q)});return v=N.length===0?"{}":r?`{
|
|
21
|
-
`+r+N.join(`,
|
|
22
|
-
`+r)+`
|
|
23
|
-
`+C+"}":"{"+N.join(",")+"}",r=C,v}}typeof Sc.stringify!="function"&&(Sc.stringify=function(u,d,h){var g;if(r="",i="",typeof h=="number")for(g=0;g<h;g+=1)i+=" ";else typeof h=="string"&&(i=h);if(s=d,d&&typeof d!="function"&&(typeof d!="object"||typeof d.length!="number"))throw new Error("JSON.stringify");return f("",{"":u})})})()});var Ic=M((Xw,xc)=>{var Ur=null,rg=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,ig=/(?: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)/,og=function(n){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(n!=null){if(n.strict===!0&&(e.strict=!0),n.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=n.alwaysParseAsBig===!0?n.alwaysParseAsBig:!1,e.useNativeBigInt=n.useNativeBigInt===!0?n.useNativeBigInt:!1,typeof n.constructorAction<"u")if(n.constructorAction==="error"||n.constructorAction==="ignore"||n.constructorAction==="preserve")e.constructorAction=n.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${n.constructorAction}`);if(typeof n.protoAction<"u")if(n.protoAction==="error"||n.protoAction==="ignore"||n.protoAction==="preserve")e.protoAction=n.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${n.protoAction}`)}var t,r,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
24
|
-
`,r:"\r",t:" "},o,s=function(C){throw{name:"SyntaxError",message:C,at:t,text:o}},c=function(C){return C&&C!==r&&s("Expected '"+C+"' instead of '"+r+"'"),r=o.charAt(t),t+=1,r},f=function(){var C,N="";for(r==="-"&&(N="-",c("-"));r>="0"&&r<="9";)N+=r,c();if(r===".")for(N+=".";c()&&r>="0"&&r<="9";)N+=r;if(r==="e"||r==="E")for(N+=r,c(),(r==="-"||r==="+")&&(N+=r,c());r>="0"&&r<="9";)N+=r,c();if(C=+N,!isFinite(C))s("Bad number");else return Ur==null&&(Ur=Oo()),N.length>15?e.storeAsString?N:e.useNativeBigInt?BigInt(N):new Ur(N):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(C):new Ur(C):C},u=function(){var C,N,k="",G;if(r==='"')for(var L=t;c();){if(r==='"')return t-1>L&&(k+=o.substring(L,t-1)),c(),k;if(r==="\\"){if(t-1>L&&(k+=o.substring(L,t-1)),c(),r==="u"){for(G=0,N=0;N<4&&(C=parseInt(c(),16),!!isFinite(C));N+=1)G=G*16+C;k+=String.fromCharCode(G)}else if(typeof i[r]=="string")k+=i[r];else break;L=t}}s("Bad string")},d=function(){for(;r&&r<=" ";)c()},h=function(){switch(r){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}s("Unexpected '"+r+"'")},g,v=function(){var C=[];if(r==="["){if(c("["),d(),r==="]")return c("]"),C;for(;r;){if(C.push(g()),d(),r==="]")return c("]"),C;c(","),d()}}s("Bad array")},w=function(){var C,N=Object.create(null);if(r==="{"){if(c("{"),d(),r==="}")return c("}"),N;for(;r;){if(C=u(),d(),c(":"),e.strict===!0&&Object.hasOwnProperty.call(N,C)&&s('Duplicate key "'+C+'"'),rg.test(C)===!0?e.protoAction==="error"?s("Object contains forbidden prototype property"):e.protoAction==="ignore"?g():N[C]=g():ig.test(C)===!0?e.constructorAction==="error"?s("Object contains forbidden constructor property"):e.constructorAction==="ignore"?g():N[C]=g():N[C]=g(),d(),r==="}")return c("}"),N;c(","),d()}}s("Bad object")};return g=function(){switch(d(),r){case"{":return w();case"[":return v();case'"':return u();case"-":return f();default:return r>="0"&&r<="9"?f():h()}},function(C,N){var k;return o=C+"",t=0,r=" ",k=g(),d(),r&&s("Syntax error"),typeof N=="function"?function G(L,q){var F,B,J=L[q];return J&&typeof J=="object"&&Object.keys(J).forEach(function(Y){B=G(J,Y),B!==void 0?J[Y]=B:delete J[Y]}),N.call(L,q,J)}({"":k},""):k}};xc.exports=og});var Nc=M((jw,Fr)=>{var Rc=Ac().stringify,Pc=Ic();Fr.exports=function(n){return{parse:Pc(n),stringify:Rc}};Fr.exports.parse=Pc();Fr.exports.stringify=Rc});var Do=M(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.GCE_LINUX_BIOS_PATHS=void 0;Ge.isGoogleCloudServerless=Mc;Ge.isGoogleComputeEngineLinux=Oc;Ge.isGoogleComputeEngineMACAddress=Dc;Ge.isGoogleComputeEngine=Uc;Ge.detectGCPResidency=ag;var kc=U("fs"),bc=U("os");Ge.GCE_LINUX_BIOS_PATHS={BIOS_DATE:"/sys/class/dmi/id/bios_date",BIOS_VENDOR:"/sys/class/dmi/id/bios_vendor"};var sg=/^42:01/;function Mc(){return!!(process.env.CLOUD_RUN_JOB||process.env.FUNCTION_NAME||process.env.K_SERVICE)}function Oc(){if((0,bc.platform)()!=="linux")return!1;try{(0,kc.statSync)(Ge.GCE_LINUX_BIOS_PATHS.BIOS_DATE);let n=(0,kc.readFileSync)(Ge.GCE_LINUX_BIOS_PATHS.BIOS_VENDOR,"utf8");return/Google/.test(n)}catch{return!1}}function Dc(){let n=(0,bc.networkInterfaces)();for(let e of Object.values(n))if(e){for(let{mac:t}of e)if(sg.test(t))return!0}return!1}function Uc(){return Oc()||Dc()}function ag(){return Mc()||Uc()}});var Fc=M(Lr=>{"use strict";Object.defineProperty(Lr,"__esModule",{value:!0});Lr.Colours=void 0;var _e=class n{static isEnabled(e){return e.isTTY&&(typeof e.getColorDepth=="function"?e.getColorDepth()>2:!0)}static refresh(){n.enabled=n.isEnabled(process.stderr),this.enabled?(n.reset="\x1B[0m",n.bright="\x1B[1m",n.dim="\x1B[2m",n.red="\x1B[31m",n.green="\x1B[32m",n.yellow="\x1B[33m",n.blue="\x1B[34m",n.magenta="\x1B[35m",n.cyan="\x1B[36m",n.white="\x1B[37m",n.grey="\x1B[90m"):(n.reset="",n.bright="",n.dim="",n.red="",n.green="",n.yellow="",n.blue="",n.magenta="",n.cyan="",n.white="",n.grey="")}};Lr.Colours=_e;_e.enabled=!1;_e.reset="";_e.bright="";_e.dim="";_e.red="";_e.green="";_e.yellow="";_e.blue="";_e.magenta="";_e.cyan="";_e.white="";_e.grey="";_e.refresh()});var Bc=M(ee=>{"use strict";var lg=ee&&ee.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),cg=ee&&ee.__setModuleDefault||(Object.create?function(n,e){Object.defineProperty(n,"default",{enumerable:!0,value:e})}:function(n,e){n.default=e}),Lc=ee&&ee.__importStar||function(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var t in n)t!=="default"&&Object.prototype.hasOwnProperty.call(n,t)&&lg(e,n,t);return cg(e,n),e};Object.defineProperty(ee,"__esModule",{value:!0});ee.env=ee.DebugLogBackendBase=ee.placeholder=ee.AdhocDebugLogger=ee.LogSeverity=void 0;ee.getNodeBackend=Uo;ee.getDebugBackend=fg;ee.getStructuredBackend=dg;ee.setBackend=hg;ee.log=Gc;var ug=U("node:events"),Ln=Lc(U("node:process")),qc=Lc(U("node:util")),xe=Fc(),Be;(function(n){n.DEFAULT="DEFAULT",n.DEBUG="DEBUG",n.INFO="INFO",n.WARNING="WARNING",n.ERROR="ERROR"})(Be||(ee.LogSeverity=Be={}));var qn=class extends ug.EventEmitter{constructor(e,t){super(),this.namespace=e,this.upstream=t,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(r,i)=>this.on(r,i)}),this.func.debug=(...r)=>this.invokeSeverity(Be.DEBUG,...r),this.func.info=(...r)=>this.invokeSeverity(Be.INFO,...r),this.func.warn=(...r)=>this.invokeSeverity(Be.WARNING,...r),this.func.error=(...r)=>this.invokeSeverity(Be.ERROR,...r),this.func.sublog=r=>Gc(r,this.func)}invoke(e,...t){this.upstream&&this.upstream(e,...t),this.emit("log",e,t)}invokeSeverity(e,...t){this.invoke({severity:e},...t)}};ee.AdhocDebugLogger=qn;ee.placeholder=new qn("",()=>{}).func;var Xt=class{constructor(){var e;this.cached=new Map,this.filters=[],this.filtersSet=!1;let t=(e=Ln.env[ee.env.nodeEnables])!==null&&e!==void 0?e:"*";t==="all"&&(t="*"),this.filters=t.split(",")}log(e,t,...r){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let i=this.cached.get(e);i||(i=this.makeLogger(e),this.cached.set(e,i)),i(t,...r)}catch(i){console.error(i)}}};ee.DebugLogBackendBase=Xt;var qr=class extends Xt{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(e){return this.enabledRegexp.test(e)}makeLogger(e){return this.enabledRegexp.test(e)?(t,...r)=>{var i;let o=`${xe.Colours.green}${e}${xe.Colours.reset}`,s=`${xe.Colours.yellow}${Ln.pid}${xe.Colours.reset}`,c;switch(t.severity){case Be.ERROR:c=`${xe.Colours.red}${t.severity}${xe.Colours.reset}`;break;case Be.INFO:c=`${xe.Colours.magenta}${t.severity}${xe.Colours.reset}`;break;case Be.WARNING:c=`${xe.Colours.yellow}${t.severity}${xe.Colours.reset}`;break;default:c=(i=t.severity)!==null&&i!==void 0?i:Be.DEFAULT;break}let f=qc.formatWithOptions({colors:xe.Colours.enabled},...r),u=Object.assign({},t);delete u.severity;let d=Object.getOwnPropertyNames(u).length?JSON.stringify(u):"",h=d?`${xe.Colours.grey}${d}${xe.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",s,o,c,f,d?` ${h}`:"")}:()=>{}}setFilters(){let t=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=new RegExp(`^${t}$`,"i")}};function Uo(){return new qr}var Fo=class extends Xt{constructor(e){super(),this.debugPkg=e}makeLogger(e){let t=this.debugPkg(e);return(r,...i)=>{t(i[0],...i.slice(1))}}setFilters(){var e;let t=(e=Ln.env.NODE_DEBUG)!==null&&e!==void 0?e:"";Ln.env.NODE_DEBUG=`${t}${t?",":""}${this.filters.join(",")}`}};function fg(n){return new Fo(n)}var Lo=class extends Xt{constructor(e){var t;super(),this.upstream=(t=e)!==null&&t!==void 0?t:new qr}makeLogger(e){let t=this.upstream.makeLogger(e);return(r,...i)=>{var o;let s=(o=r.severity)!==null&&o!==void 0?o:Be.INFO,c=Object.assign({severity:s,message:qc.format(...i)},r),f=JSON.stringify(c);t(r,f)}}setFilters(){this.upstream.setFilters()}};function dg(n){return new Lo(n)}ee.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};var qo=new Map,be;function hg(n){be=n,qo.clear()}function Gc(n,e){if(!Ln.env[ee.env.nodeEnables]||!n)return ee.placeholder;e&&(n=`${e.instance.namespace}:${n}`);let r=qo.get(n);if(r)return r.func;if(be===null)return ee.placeholder;be===void 0&&(be=Uo());let i=(()=>{let o;return new qn(n,(c,...f)=>{if(o!==be){if(be===null)return;be===void 0&&(be=Uo()),o=be}be?.log(n,c,...f)})})();return qo.set(n,i),i.func}});var Vc=M(Ot=>{"use strict";var pg=Ot&&Ot.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),gg=Ot&&Ot.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&pg(e,n,t)};Object.defineProperty(Ot,"__esModule",{value:!0});gg(Bc(),Ot)});var Bn=M(W=>{"use strict";var mg=W&&W.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),yg=W&&W.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&mg(e,n,t)};Object.defineProperty(W,"__esModule",{value:!0});W.gcpResidencyCache=W.METADATA_SERVER_DETECTION=W.HEADERS=W.HEADER_VALUE=W.HEADER_NAME=W.SECONDARY_HOST_ADDRESS=W.HOST_ADDRESS=W.BASE_PATH=void 0;W.instance=Sg;W.project=wg;W.universe=Ag;W.bulk=xg;W.isAvailable=Rg;W.resetIsAvailableCache=Pg;W.getGCPResidency=Vo;W.setGCPResidency=$c;W.requestTimeout=Wc;var Go=qe(),_g=Nc(),Eg=Do(),vg=Vc();W.BASE_PATH="/computeMetadata/v1";W.HOST_ADDRESS="http://169.254.169.254";W.SECONDARY_HOST_ADDRESS="http://metadata.google.internal.";W.HEADER_NAME="Metadata-Flavor";W.HEADER_VALUE="Google";W.HEADERS=Object.freeze({[W.HEADER_NAME]:W.HEADER_VALUE});var Hc=vg.log("gcp metadata");W.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 Bo(n){return n||(n=process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST||W.HOST_ADDRESS),/^https?:\/\//.test(n)||(n=`http://${n}`),new URL(W.BASE_PATH,n).href}function Tg(n){Object.keys(n).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 Gn(n,e={},t=3,r=!1){let i="",o={},s={};if(typeof n=="object"){let d=n;i=d.metadataKey,o=d.params||o,s=d.headers||s,t=d.noResponseRetries||t,r=d.fastFail||r}else i=n;typeof e=="string"?i+=`/${e}`:(Tg(e),e.property&&(i+=`/${e.property}`),s=e.headers||s,o=e.params||o);let c=r?Cg:Go.request,f={url:`${Bo()}/${i}`,headers:{...W.HEADERS,...s},retryConfig:{noResponseRetries:t},params:o,responseType:"text",timeout:Wc()};Hc.info("instance request %j",f);let u=await c(f);if(Hc.info("instance metadata is %s",u.data),u.headers[W.HEADER_NAME.toLowerCase()]!==W.HEADER_VALUE)throw new Error(`Invalid response from metadata service: incorrect ${W.HEADER_NAME} header. Expected '${W.HEADER_VALUE}', got ${u.headers[W.HEADER_NAME.toLowerCase()]?`'${u.headers[W.HEADER_NAME.toLowerCase()]}'`:"no header"}`);if(typeof u.data=="string")try{return _g.parse(u.data)}catch{}return u.data}async function Cg(n){var e;let t={...n,url:(e=n.url)===null||e===void 0?void 0:e.toString().replace(Bo(),Bo(W.SECONDARY_HOST_ADDRESS))},r=!1,i=(0,Go.request)(n).then(s=>(r=!0,s)).catch(s=>{if(r)return o;throw r=!0,s}),o=(0,Go.request)(t).then(s=>(r=!0,s)).catch(s=>{if(r)return i;throw r=!0,s});return Promise.race([i,o])}function Sg(n){return Gn("instance",n)}function wg(n){return Gn("project",n)}function Ag(n){return Gn("universe",n)}async function xg(n){let e={};return await Promise.all(n.map(t=>(async()=>{let r=await Gn(t),i=t.metadataKey;e[i]=r})())),e}function Ig(){return process.env.DETECT_GCP_RETRIES?Number(process.env.DETECT_GCP_RETRIES):0}var Gr;async function Rg(){if(process.env.METADATA_SERVER_DETECTION){let n=process.env.METADATA_SERVER_DETECTION.trim().toLocaleLowerCase();if(!(n in W.METADATA_SERVER_DETECTION))throw new RangeError(`Unknown \`METADATA_SERVER_DETECTION\` env variable. Got \`${n}\`, but it should be \`${Object.keys(W.METADATA_SERVER_DETECTION).join("`, `")}\`, or unset`);switch(n){case"assume-present":return!0;case"none":return!1;case"bios-only":return Vo();case"ping-only":}}try{return Gr===void 0&&(Gr=Gn("instance",void 0,Ig(),!(process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST))),await Gr,!0}catch(n){let e=n;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))){let t="UNKNOWN";e.code&&(t=e.code),process.emitWarning(`received unexpected error = ${e.message} code = ${t}`,"MetadataLookupWarning")}return!1}}function Pg(){Gr=void 0}W.gcpResidencyCache=null;function Vo(){return W.gcpResidencyCache===null&&$c(),W.gcpResidencyCache}function $c(n=null){W.gcpResidencyCache=n!==null?n:(0,Eg.detectGCPResidency)()}function Wc(){return Vo()?0:3e3}yg(Do(),W)});var Yc=M(Br=>{"use strict";Br.byteLength=kg;Br.toByteArray=Mg;Br.fromByteArray=Ug;var Ze=[],Me=[],Ng=typeof Uint8Array<"u"?Uint8Array:Array,Ho="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Dt=0,Jc=Ho.length;Dt<Jc;++Dt)Ze[Dt]=Ho[Dt],Me[Ho.charCodeAt(Dt)]=Dt;var Dt,Jc;Me[45]=62;Me[95]=63;function Kc(n){var e=n.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=n.indexOf("=");t===-1&&(t=e);var r=t===e?0:4-t%4;return[t,r]}function kg(n){var e=Kc(n),t=e[0],r=e[1];return(t+r)*3/4-r}function bg(n,e,t){return(e+t)*3/4-t}function Mg(n){var e,t=Kc(n),r=t[0],i=t[1],o=new Ng(bg(n,r,i)),s=0,c=i>0?r-4:r,f;for(f=0;f<c;f+=4)e=Me[n.charCodeAt(f)]<<18|Me[n.charCodeAt(f+1)]<<12|Me[n.charCodeAt(f+2)]<<6|Me[n.charCodeAt(f+3)],o[s++]=e>>16&255,o[s++]=e>>8&255,o[s++]=e&255;return i===2&&(e=Me[n.charCodeAt(f)]<<2|Me[n.charCodeAt(f+1)]>>4,o[s++]=e&255),i===1&&(e=Me[n.charCodeAt(f)]<<10|Me[n.charCodeAt(f+1)]<<4|Me[n.charCodeAt(f+2)]>>2,o[s++]=e>>8&255,o[s++]=e&255),o}function Og(n){return Ze[n>>18&63]+Ze[n>>12&63]+Ze[n>>6&63]+Ze[n&63]}function Dg(n,e,t){for(var r,i=[],o=e;o<t;o+=3)r=(n[o]<<16&16711680)+(n[o+1]<<8&65280)+(n[o+2]&255),i.push(Og(r));return i.join("")}function Ug(n){for(var e,t=n.length,r=t%3,i=[],o=16383,s=0,c=t-r;s<c;s+=o)i.push(Dg(n,s,s+o>c?c:s+o));return r===1?(e=n[t-1],i.push(Ze[e>>2]+Ze[e<<4&63]+"==")):r===2&&(e=(n[t-2]<<8)+n[t-1],i.push(Ze[e>>10]+Ze[e>>4&63]+Ze[e<<2&63]+"=")),i.join("")}});var zc=M(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.BrowserCrypto=void 0;var jt=Yc(),Fg=Zt(),$o=class n{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 t=new TextEncoder().encode(e),r=await window.crypto.subtle.digest("SHA-256",t);return jt.fromByteArray(new Uint8Array(r))}randomBytesBase64(e){let t=new Uint8Array(e);return window.crypto.getRandomValues(t),jt.fromByteArray(t)}static padBase64(e){for(;e.length%4!==0;)e+="=";return e}async verify(e,t,r){let i={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},o=new TextEncoder().encode(t),s=jt.toByteArray(n.padBase64(r)),c=await window.crypto.subtle.importKey("jwk",e,i,!0,["verify"]);return await window.crypto.subtle.verify(i,c,s,o)}async sign(e,t){let r={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},i=new TextEncoder().encode(t),o=await window.crypto.subtle.importKey("jwk",e,r,!0,["sign"]),s=await window.crypto.subtle.sign(r,o,i);return jt.fromByteArray(new Uint8Array(s))}decodeBase64StringUtf8(e){let t=jt.toByteArray(n.padBase64(e));return new TextDecoder().decode(t)}encodeBase64StringUtf8(e){let t=new TextEncoder().encode(e);return jt.fromByteArray(t)}async sha256DigestHex(e){let t=new TextEncoder().encode(e),r=await window.crypto.subtle.digest("SHA-256",t);return(0,Fg.fromArrayBufferToHex)(r)}async signWithHmacSha256(e,t){let r=typeof e=="string"?e:String.fromCharCode(...new Uint16Array(e)),i=new TextEncoder,o=await window.crypto.subtle.importKey("raw",i.encode(r),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return window.crypto.subtle.sign("HMAC",o,i.encode(t))}};Vr.BrowserCrypto=$o});var Xc=M(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.NodeCrypto=void 0;var Qt=U("crypto"),Wo=class{async sha256DigestBase64(e){return Qt.createHash("sha256").update(e).digest("base64")}randomBytesBase64(e){return Qt.randomBytes(e).toString("base64")}async verify(e,t,r){let i=Qt.createVerify("RSA-SHA256");return i.update(t),i.end(),i.verify(e,r,"base64")}async sign(e,t){let r=Qt.createSign("RSA-SHA256");return r.update(t),r.end(),r.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 Qt.createHash("sha256").update(e).digest("hex")}async signWithHmacSha256(e,t){let r=typeof e=="string"?e:qg(e);return Lg(Qt.createHmac("sha256",r).update(t).digest())}};Hr.NodeCrypto=Wo;function Lg(n){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}function qg(n){return Buffer.from(n)}});var Zt=M(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.createCrypto=Vg;Vn.hasBrowserCrypto=jc;Vn.fromArrayBufferToHex=Hg;var Gg=zc(),Bg=Xc();function Vg(){return jc()?new Gg.BrowserCrypto:new Bg.NodeCrypto}function jc(){return typeof window<"u"&&typeof window.crypto<"u"&&typeof window.crypto.subtle<"u"}function Hg(n){return Array.from(new Uint8Array(n)).map(t=>t.toString(16).padStart(2,"0")).join("")}});var Zc=M(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.validate=$g;function $g(n){let e=[{invalid:"uri",expected:"url"},{invalid:"json",expected:"data"},{invalid:"qs",expected:"params"}];for(let t of e)if(n[t.invalid]){let r=`'${t.invalid}' is not a valid configuration option. Please use '${t.expected}' instead. This library is using Axios for requests. Please see https://github.com/axios/axios to learn more about the valid request options.`;throw new Error(r)}}});var Ko=M((lA,Wg)=>{Wg.exports={name:"google-auth-library",version:"9.15.1",author:"Google Inc.",description:"Google APIs Authentication Client Library for Node.js",engines:{node:">=14"},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:"^6.1.1","gcp-metadata":"^6.1.0",gtoken:"^7.0.0",jws:"^4.0.0"},devDependencies:{"@types/base64-js":"^1.2.5","@types/chai":"^4.1.7","@types/jws":"^3.1.0","@types/mocha":"^9.0.0","@types/mv":"^2.1.0","@types/ncp":"^2.0.1","@types/node":"^20.4.2","@types/sinon":"^17.0.0","assert-rejects":"^1.0.0",c8:"^8.0.0",chai:"^4.2.0",cheerio:"1.0.0-rc.12",codecov:"^3.0.2","engine.io":"6.6.2",gts:"^5.0.0","is-docker":"^2.0.0",jsdoc:"^4.0.0","jsdoc-fresh":"^3.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.0",keypair:"^1.0.4",linkinator:"^4.0.0",mocha:"^9.2.2",mv:"^2.1.1",ncp:"^2.0.0",nock:"^13.0.0","null-loader":"^4.0.0",pdfmake:"0.2.12",puppeteer:"^21.0.0",sinon:"^18.0.0","ts-loader":"^8.0.0",typescript:"^5.1.6",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",compile:"tsc -p .",fix:"gts fix",pretest:"npm run compile -- --sourceMap",docs:"jsdoc -c .jsdoc.json","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",precompile:"gts clean"},license:"Apache-2.0"}});var Hn=M(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.DefaultTransporter=void 0;var Jg=qe(),Kg=Zc(),Yg=Ko(),Qc="google-api-nodejs-client",$r=class n{constructor(){this.instance=new Jg.Gaxios}configure(e={}){if(e.headers=e.headers||{},typeof window>"u"){let t=e.headers["User-Agent"];if(t?t.includes(`${Qc}/`)||(e.headers["User-Agent"]=`${t} ${n.USER_AGENT}`):e.headers["User-Agent"]=n.USER_AGENT,!e.headers["x-goog-api-client"]){let r=process.version.replace(/^v/,"");e.headers["x-goog-api-client"]=`gl-node/${r}`}}return e}request(e){return e=this.configure(e),(0,Kg.validate)(e),this.instance.request(e).catch(t=>{throw this.processError(t)})}get defaults(){return this.instance.defaults}set defaults(e){this.instance.defaults=e}processError(e){let t=e.response,r=e,i=t?t.data:null;return t&&i&&i.error&&t.status!==200?typeof i.error=="string"?(r.message=i.error,r.status=t.status):Array.isArray(i.error.errors)?(r.message=i.error.errors.map(o=>o.message).join(`
|
|
25
|
-
`),r.code=i.error.code,r.errors=i.error.errors):(r.message=i.error.message,r.code=i.error.code):t&&t.status>=400&&(r.message=i,r.status=t.status),r}};Wr.DefaultTransporter=$r;$r.USER_AGENT=`${Qc}/${Yg.version}`});var en=M((Yo,tu)=>{var Jr=U("buffer"),Qe=Jr.Buffer;function eu(n,e){for(var t in n)e[t]=n[t]}Qe.from&&Qe.alloc&&Qe.allocUnsafe&&Qe.allocUnsafeSlow?tu.exports=Jr:(eu(Jr,Yo),Yo.Buffer=Ut);function Ut(n,e,t){return Qe(n,e,t)}Ut.prototype=Object.create(Qe.prototype);eu(Qe,Ut);Ut.from=function(n,e,t){if(typeof n=="number")throw new TypeError("Argument must not be a number");return Qe(n,e,t)};Ut.alloc=function(n,e,t){if(typeof n!="number")throw new TypeError("Argument must be a number");var r=Qe(n);return e!==void 0?typeof t=="string"?r.fill(e,t):r.fill(e):r.fill(0),r};Ut.allocUnsafe=function(n){if(typeof n!="number")throw new TypeError("Argument must be a number");return Qe(n)};Ut.allocUnsafeSlow=function(n){if(typeof n!="number")throw new TypeError("Argument must be a number");return Jr.SlowBuffer(n)}});var ru=M((uA,nu)=>{"use strict";function zo(n){var e=(n/8|0)+(n%8===0?0:1);return e}var zg={ES256:zo(256),ES384:zo(384),ES512:zo(521)};function Xg(n){var e=zg[n];if(e)return e;throw new Error('Unknown algorithm "'+n+'"')}nu.exports=Xg});var Xo=M((fA,cu)=>{"use strict";var Kr=en().Buffer,ou=ru(),Yr=128,su=0,jg=32,Zg=16,Qg=2,au=Zg|jg|su<<6,zr=Qg|su<<6;function em(n){return n.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function lu(n){if(Kr.isBuffer(n))return n;if(typeof n=="string")return Kr.from(n,"base64");throw new TypeError("ECDSA signature must be a Base64 string or a Buffer")}function tm(n,e){n=lu(n);var t=ou(e),r=t+1,i=n.length,o=0;if(n[o++]!==au)throw new Error('Could not find expected "seq"');var s=n[o++];if(s===(Yr|1)&&(s=n[o++]),i-o<s)throw new Error('"seq" specified length of "'+s+'", only "'+(i-o)+'" remaining');if(n[o++]!==zr)throw new Error('Could not find expected "int" for "r"');var c=n[o++];if(i-o-2<c)throw new Error('"r" specified length of "'+c+'", only "'+(i-o-2)+'" available');if(r<c)throw new Error('"r" specified length of "'+c+'", max of "'+r+'" is acceptable');var f=o;if(o+=c,n[o++]!==zr)throw new Error('Could not find expected "int" for "s"');var u=n[o++];if(i-o!==u)throw new Error('"s" specified length of "'+u+'", expected "'+(i-o)+'"');if(r<u)throw new Error('"s" specified length of "'+u+'", max of "'+r+'" is acceptable');var d=o;if(o+=u,o!==i)throw new Error('Expected to consume entire buffer, but "'+(i-o)+'" bytes remain');var h=t-c,g=t-u,v=Kr.allocUnsafe(h+c+g+u);for(o=0;o<h;++o)v[o]=0;n.copy(v,o,f+Math.max(-h,0),f+c),o=t;for(var w=o;o<w+g;++o)v[o]=0;return n.copy(v,o,d+Math.max(-g,0),d+u),v=v.toString("base64"),v=em(v),v}function iu(n,e,t){for(var r=0;e+r<t&&n[e+r]===0;)++r;var i=n[e+r]>=Yr;return i&&--r,r}function nm(n,e){n=lu(n);var t=ou(e),r=n.length;if(r!==t*2)throw new TypeError('"'+e+'" signatures must be "'+t*2+'" bytes, saw "'+r+'"');var i=iu(n,0,t),o=iu(n,t,n.length),s=t-i,c=t-o,f=2+s+1+1+c,u=f<Yr,d=Kr.allocUnsafe((u?2:3)+f),h=0;return d[h++]=au,u?d[h++]=f:(d[h++]=Yr|1,d[h++]=f&255),d[h++]=zr,d[h++]=s,i<0?(d[h++]=0,h+=n.copy(d,h,0,t)):h+=n.copy(d,h,i,t),d[h++]=zr,d[h++]=c,o<0?(d[h++]=0,n.copy(d,h,t)):n.copy(d,h,t+o),d}cu.exports={derToJose:tm,joseToDer:nm}});var _t=M(yt=>{"use strict";var Ve=yt&&yt.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},tn,st,jo,Zo;Object.defineProperty(yt,"__esModule",{value:!0});yt.LRUCache=void 0;yt.snakeToCamel=uu;yt.originalOrCamelOptions=rm;function uu(n){return n.replace(/([_][^_])/g,e=>e.slice(1).toUpperCase())}function rm(n){function e(t){var r;let i=n||{};return(r=i[t])!==null&&r!==void 0?r:i[uu(t)]}return{get:e}}var Qo=class{constructor(e){tn.add(this),st.set(this,new Map),this.capacity=e.capacity,this.maxAge=e.maxAge}set(e,t){Ve(this,tn,"m",jo).call(this,e,t),Ve(this,tn,"m",Zo).call(this)}get(e){let t=Ve(this,st,"f").get(e);if(t)return Ve(this,tn,"m",jo).call(this,e,t.value),Ve(this,tn,"m",Zo).call(this),t.value}};yt.LRUCache=Qo;st=new WeakMap,tn=new WeakSet,jo=function(e,t){Ve(this,st,"f").delete(e),Ve(this,st,"f").set(e,{value:t,lastAccessed:Date.now()})},Zo=function(){let e=this.maxAge?Date.now()-this.maxAge:0,t=Ve(this,st,"f").entries().next();for(;!t.done&&(Ve(this,st,"f").size>this.capacity||t.value[1].lastAccessed<e);)Ve(this,st,"f").delete(t.value[0]),t=Ve(this,st,"f").entries().next()}});var et=M(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.AuthClient=He.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=He.DEFAULT_UNIVERSE=void 0;var im=U("events"),fu=qe(),du=Hn(),om=_t();He.DEFAULT_UNIVERSE="googleapis.com";He.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=5*60*1e3;var es=class extends im.EventEmitter{constructor(e={}){var t,r,i,o,s;super(),this.credentials={},this.eagerRefreshThresholdMillis=He.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS,this.forceRefreshOnFailure=!1,this.universeDomain=He.DEFAULT_UNIVERSE;let c=(0,om.originalOrCamelOptions)(e);this.apiKey=e.apiKey,this.projectId=(t=c.get("project_id"))!==null&&t!==void 0?t:null,this.quotaProjectId=c.get("quota_project_id"),this.credentials=(r=c.get("credentials"))!==null&&r!==void 0?r:{},this.universeDomain=(i=c.get("universe_domain"))!==null&&i!==void 0?i:He.DEFAULT_UNIVERSE,this.transporter=(o=e.transporter)!==null&&o!==void 0?o:new du.DefaultTransporter,e.transporterOptions&&(this.transporter.defaults=e.transporterOptions),e.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=(s=e.forceRefreshOnFailure)!==null&&s!==void 0?s:!1}get gaxios(){return this.transporter instanceof fu.Gaxios?this.transporter:this.transporter instanceof du.DefaultTransporter?this.transporter.instance:"instance"in this.transporter&&this.transporter.instance instanceof fu.Gaxios?this.transporter.instance:null}setCredentials(e){this.credentials=e}addSharedMetadataHeaders(e){return!e["x-goog-user-project"]&&this.quotaProjectId&&(e["x-goog-user-project"]=this.quotaProjectId),e}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};He.AuthClient=es});var ns=M(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.LoginTicket=void 0;var ts=class{constructor(e,t){this.envelope=e,this.payload=t}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()}}};Xr.LoginTicket=ts});var Ft=M(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.OAuth2Client=tt.ClientAuthentication=tt.CertificateFormat=tt.CodeChallengeMethod=void 0;var sm=qe(),rs=U("querystring"),am=U("stream"),lm=Xo(),is=Zt(),cm=et(),um=ns(),hu;(function(n){n.Plain="plain",n.S256="S256"})(hu||(tt.CodeChallengeMethod=hu={}));var at;(function(n){n.PEM="PEM",n.JWK="JWK"})(at||(tt.CertificateFormat=at={}));var $n;(function(n){n.ClientSecretPost="ClientSecretPost",n.ClientSecretBasic="ClientSecretBasic",n.None="None"})($n||(tt.ClientAuthentication=$n={}));var nn=class n extends cm.AuthClient{constructor(e,t,r){let i=e&&typeof e=="object"?e:{clientId:e,clientSecret:t,redirectUri:r};super(i),this.certificateCache={},this.certificateExpiry=null,this.certificateCacheFormat=at.PEM,this.refreshTokenPromises=new Map,this._clientId=i.clientId,this._clientSecret=i.clientSecret,this.redirectUri=i.redirectUri,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",...i.endpoints},this.clientAuthentication=i.clientAuthentication||$n.ClientSecretPost,this.issuers=i.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}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()+"?"+rs.stringify(e)}generateCodeVerifier(){throw new Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let e=(0,is.createCrypto)(),r=e.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),o=(await e.sha256DigestBase64(r)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:r,codeChallenge:o}}getToken(e,t){let r=typeof e=="string"?{code:e}:e;if(t)this.getTokenAsync(r).then(i=>t(null,i.tokens,i.res),i=>t(i,null,i.response));else return this.getTokenAsync(r)}async getTokenAsync(e){let t=this.endpoints.oauth2TokenUrl.toString(),r={"Content-Type":"application/x-www-form-urlencoded"},i={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===$n.ClientSecretBasic){let c=Buffer.from(`${this._clientId}:${this._clientSecret}`);r.Authorization=`Basic ${c.toString("base64")}`}this.clientAuthentication===$n.ClientSecretPost&&(i.client_secret=this._clientSecret);let o=await this.transporter.request({...n.RETRY_CONFIG,method:"POST",url:t,data:rs.stringify(i),headers:r}),s=o.data;return o.data&&o.data.expires_in&&(s.expiry_date=new Date().getTime()+o.data.expires_in*1e3,delete s.expires_in),this.emit("tokens",s),{tokens:s,res:o}}async refreshToken(e){if(!e)return this.refreshTokenNoCache(e);if(this.refreshTokenPromises.has(e))return this.refreshTokenPromises.get(e);let t=this.refreshTokenNoCache(e).then(r=>(this.refreshTokenPromises.delete(e),r),r=>{throw this.refreshTokenPromises.delete(e),r});return this.refreshTokenPromises.set(e,t),t}async refreshTokenNoCache(e){var t;if(!e)throw new Error("No refresh token is set.");let r=this.endpoints.oauth2TokenUrl.toString(),i={refresh_token:e,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"},o;try{o=await this.transporter.request({...n.RETRY_CONFIG,method:"POST",url:r,data:rs.stringify(i),headers:{"Content-Type":"application/x-www-form-urlencoded"}})}catch(c){throw c instanceof sm.GaxiosError&&c.message==="invalid_grant"&&(!((t=c.response)===null||t===void 0)&&t.data)&&/ReAuth/i.test(c.response.data.error_description)&&(c.message=JSON.stringify(c.response.data)),c}let s=o.data;return o.data&&o.data.expires_in&&(s.expiry_date=new Date().getTime()+o.data.expires_in*1e3,delete s.expires_in),this.emit("tokens",s),{tokens:s,res:o}}refreshAccessToken(e){if(e)this.refreshAccessTokenAsync().then(t=>e(null,t.credentials,t.res),e);else return this.refreshAccessTokenAsync()}async refreshAccessTokenAsync(){let e=await this.refreshToken(this.credentials.refresh_token),t=e.tokens;return t.refresh_token=this.credentials.refresh_token,this.credentials=t,{credentials:this.credentials,res:e.res}}getAccessToken(e){if(e)this.getAccessTokenAsync().then(t=>e(null,t.token,t.res),e);else return this.getAccessTokenAsync()}async getAccessTokenAsync(){if(!this.credentials.access_token||this.isTokenExpiring()){if(!this.credentials.refresh_token)if(this.refreshHandler){let r=await this.processAndValidateRefreshHandler();if(r?.access_token)return this.setCredentials(r),{token:this.credentials.access_token}}else throw new Error("No refresh token or refresh handler callback is set.");let t=await this.refreshAccessTokenAsync();if(!t.credentials||t.credentials&&!t.credentials.access_token)throw new Error("Could not refresh access token.");return{token:t.credentials.access_token,res:t.res}}else return{token:this.credentials.access_token}}async getRequestHeaders(e){return(await this.getRequestMetadataAsync(e)).headers}async getRequestMetadataAsync(e){let t=this.credentials;if(!t.access_token&&!t.refresh_token&&!this.apiKey&&!this.refreshHandler)throw new Error("No access, refresh token, API key or refresh handler callback is set.");if(t.access_token&&!this.isTokenExpiring()){t.token_type=t.token_type||"Bearer";let c={Authorization:t.token_type+" "+t.access_token};return{headers:this.addSharedMetadataHeaders(c)}}if(this.refreshHandler){let c=await this.processAndValidateRefreshHandler();if(c?.access_token){this.setCredentials(c);let f={Authorization:"Bearer "+this.credentials.access_token};return{headers:this.addSharedMetadataHeaders(f)}}}if(this.apiKey)return{headers:{"X-Goog-Api-Key":this.apiKey}};let r=null,i=null;try{r=await this.refreshToken(t.refresh_token),i=r.tokens}catch(c){let f=c;throw f.response&&(f.response.status===403||f.response.status===404)&&(f.message=`Could not refresh access token: ${f.message}`),f}let o=this.credentials;o.token_type=o.token_type||"Bearer",i.refresh_token=o.refresh_token,this.credentials=i;let s={Authorization:o.token_type+" "+i.access_token};return{headers:this.addSharedMetadataHeaders(s),res:r.res}}static getRevokeTokenUrl(e){return new n().getRevokeTokenURL(e).toString()}getRevokeTokenURL(e){let t=new URL(this.endpoints.oauth2RevokeUrl);return t.searchParams.append("token",e),t}revokeToken(e,t){let r={...n.RETRY_CONFIG,url:this.getRevokeTokenURL(e).toString(),method:"POST"};if(t)this.transporter.request(r).then(i=>t(null,i),t);else return this.transporter.request(r)}revokeCredentials(e){if(e)this.revokeCredentialsAsync().then(t=>e(null,t),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,t){if(t)this.requestAsync(e).then(r=>t(null,r),r=>t(r,r.response));else return this.requestAsync(e)}async requestAsync(e,t=!1){let r;try{let i=await this.getRequestMetadataAsync(e.url);e.headers=e.headers||{},i.headers&&i.headers["x-goog-user-project"]&&(e.headers["x-goog-user-project"]=i.headers["x-goog-user-project"]),i.headers&&i.headers.Authorization&&(e.headers.Authorization=i.headers.Authorization),this.apiKey&&(e.headers["X-Goog-Api-Key"]=this.apiKey),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let s=o.status,c=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),f=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,u=o.config.data instanceof am.Readable,d=s===401||s===403;if(!t&&d&&!u&&c)return await this.refreshAccessTokenAsync(),this.requestAsync(e,!0);if(!t&&d&&!u&&f){let h=await this.processAndValidateRefreshHandler();return h?.access_token&&this.setCredentials(h),this.requestAsync(e,!0)}}throw i}return r}verifyIdToken(e,t){if(t&&typeof t!="function")throw new Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(t)this.verifyIdTokenAsync(e).then(r=>t(null,r),t);else return this.verifyIdTokenAsync(e)}async verifyIdTokenAsync(e){if(!e.idToken)throw new Error("The verifyIdToken method requires an ID Token");let t=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(e.idToken,t.certs,e.audience,this.issuers,e.maxExpiry)}async getTokenInfo(e){let{data:t}=await this.transporter.request({...n.RETRY_CONFIG,method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Authorization:`Bearer ${e}`},url:this.endpoints.tokenInfoUrl.toString()}),r=Object.assign({expiry_date:new Date().getTime()+t.expires_in*1e3,scopes:t.scope.split(" ")},t);return delete r.expires_in,delete r.scope,r}getFederatedSignonCerts(e){if(e)this.getFederatedSignonCertsAsync().then(t=>e(null,t.certs,t.res),e);else return this.getFederatedSignonCertsAsync()}async getFederatedSignonCertsAsync(){let e=new Date().getTime(),t=(0,is.hasBrowserCrypto)()?at.JWK:at.PEM;if(this.certificateExpiry&&e<this.certificateExpiry.getTime()&&this.certificateCacheFormat===t)return{certs:this.certificateCache,format:t};let r,i;switch(t){case at.PEM:i=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case at.JWK:i=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw new Error(`Unsupported certificate format ${t}`)}try{r=await this.transporter.request({...n.RETRY_CONFIG,url:i})}catch(u){throw u instanceof Error&&(u.message=`Failed to retrieve verification certificates: ${u.message}`),u}let o=r?r.headers["cache-control"]:void 0,s=-1;if(o){let d=new RegExp("max-age=([0-9]*)").exec(o);d&&d.length===2&&(s=Number(d[1])*1e3)}let c={};switch(t){case at.PEM:c=r.data;break;case at.JWK:for(let u of r.data.keys)c[u.kid]=u;break;default:throw new Error(`Unsupported certificate format ${t}`)}let f=new Date;return this.certificateExpiry=s===-1?null:new Date(f.getTime()+s),this.certificateCache=c,this.certificateCacheFormat=t,{certs:c,format:t,res:r}}getIapPublicKeys(e){if(e)this.getIapPublicKeysAsync().then(t=>e(null,t.pubkeys,t.res),e);else return this.getIapPublicKeysAsync()}async getIapPublicKeysAsync(){let e,t=this.endpoints.oauth2IapPublicKeyUrl.toString();try{e=await this.transporter.request({...n.RETRY_CONFIG,url:t})}catch(r){throw r instanceof Error&&(r.message=`Failed to retrieve verification certificates: ${r.message}`),r}return{pubkeys:e.data,res:e}}verifySignedJwtWithCerts(){throw new Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(e,t,r,i,o){let s=(0,is.createCrypto)();o||(o=n.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let c=e.split(".");if(c.length!==3)throw new Error("Wrong number of segments in token: "+e);let f=c[0]+"."+c[1],u=c[2],d,h;try{d=JSON.parse(s.decodeBase64StringUtf8(c[0]))}catch(L){throw L instanceof Error&&(L.message=`Can't parse token envelope: ${c[0]}': ${L.message}`),L}if(!d)throw new Error("Can't parse token envelope: "+c[0]);try{h=JSON.parse(s.decodeBase64StringUtf8(c[1]))}catch(L){throw L instanceof Error&&(L.message=`Can't parse token payload '${c[0]}`),L}if(!h)throw new Error("Can't parse token payload: "+c[1]);if(!Object.prototype.hasOwnProperty.call(t,d.kid))throw new Error("No pem found for envelope: "+JSON.stringify(d));let g=t[d.kid];if(d.alg==="ES256"&&(u=lm.joseToDer(u,"ES256").toString("base64")),!await s.verify(g,f,u))throw new Error("Invalid token signature: "+e);if(!h.iat)throw new Error("No issue time in token: "+JSON.stringify(h));if(!h.exp)throw new Error("No expiration time in token: "+JSON.stringify(h));let w=Number(h.iat);if(isNaN(w))throw new Error("iat field using invalid format");let C=Number(h.exp);if(isNaN(C))throw new Error("exp field using invalid format");let N=new Date().getTime()/1e3;if(C>=N+o)throw new Error("Expiration time too far in future: "+JSON.stringify(h));let k=w-n.CLOCK_SKEW_SECS_,G=C+n.CLOCK_SKEW_SECS_;if(N<k)throw new Error("Token used too early, "+N+" < "+k+": "+JSON.stringify(h));if(N>G)throw new Error("Token used too late, "+N+" > "+G+": "+JSON.stringify(h));if(i&&i.indexOf(h.iss)<0)throw new Error("Invalid issuer, expected one of ["+i+"], but got "+h.iss);if(typeof r<"u"&&r!==null){let L=h.aud,q=!1;if(r.constructor===Array?q=r.indexOf(L)>-1:q=L===r,!q)throw new Error("Wrong recipient, payload audience != requiredAudience")}return new um.LoginTicket(d,h)}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}};tt.OAuth2Client=nn;nn.GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";nn.CLOCK_SKEW_SECS_=300;nn.DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400});var ss=M(jr=>{"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.Compute=void 0;var fm=qe(),pu=Bn(),dm=Ft(),os=class extends dm.OAuth2Client{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(e){let t=`service-accounts/${this.serviceAccountEmail}/token`,r;try{let o={property:t};this.scopes.length>0&&(o.params={scopes:this.scopes.join(",")}),r=await pu.instance(o)}catch(o){throw o instanceof fm.GaxiosError&&(o.message=`Could not refresh access token: ${o.message}`,this.wrapError(o)),o}let i=r;return r&&r.expires_in&&(i.expiry_date=new Date().getTime()+r.expires_in*1e3,delete i.expires_in),this.emit("tokens",i),{tokens:i,res:null}}async fetchIdToken(e){let t=`service-accounts/${this.serviceAccountEmail}/identity?format=full&audience=${e}`,r;try{let i={property:t};r=await pu.instance(i)}catch(i){throw i instanceof Error&&(i.message=`Could not fetch ID token: ${i.message}`),i}return r}wrapError(e){let t=e.response;t&&t.status&&(e.status=t.status,t.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:t.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))}};jr.Compute=os});var ls=M(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.IdTokenClient=void 0;var hm=Ft(),as=class extends hm.OAuth2Client{constructor(e){super(e),this.targetAudience=e.targetAudience,this.idTokenProvider=e.idTokenProvider}async getRequestMetadataAsync(e){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:{Authorization:"Bearer "+this.credentials.id_token}}}getIdTokenExpiryDate(e){let t=e.split(".")[1];if(t)return JSON.parse(Buffer.from(t,"base64").toString("ascii")).exp*1e3}};Zr.IdTokenClient=as});var cs=M(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.GCPEnv=void 0;rn.clear=pm;rn.getEnv=gm;var gu=Bn(),lt;(function(n){n.APP_ENGINE="APP_ENGINE",n.KUBERNETES_ENGINE="KUBERNETES_ENGINE",n.CLOUD_FUNCTIONS="CLOUD_FUNCTIONS",n.COMPUTE_ENGINE="COMPUTE_ENGINE",n.CLOUD_RUN="CLOUD_RUN",n.NONE="NONE"})(lt||(rn.GCPEnv=lt={}));var Wn;function pm(){Wn=void 0}async function gm(){return Wn||(Wn=mm(),Wn)}async function mm(){let n=lt.NONE;return ym()?n=lt.APP_ENGINE:_m()?n=lt.CLOUD_FUNCTIONS:await Tm()?await vm()?n=lt.KUBERNETES_ENGINE:Em()?n=lt.CLOUD_RUN:n=lt.COMPUTE_ENGINE:n=lt.NONE,n}function ym(){return!!(process.env.GAE_SERVICE||process.env.GAE_MODULE_NAME)}function _m(){return!!(process.env.FUNCTION_NAME||process.env.FUNCTION_TARGET)}function Em(){return!!process.env.K_CONFIGURATION}async function vm(){try{return await gu.instance("attributes/cluster-name"),!0}catch{return!1}}async function Tm(){return gu.isAvailable()}});var us=M((EA,mu)=>{var Qr=en().Buffer,Cm=U("stream"),Sm=U("util");function ei(n){if(this.buffer=null,this.writable=!0,this.readable=!0,!n)return this.buffer=Qr.alloc(0),this;if(typeof n.pipe=="function")return this.buffer=Qr.alloc(0),n.pipe(this),this;if(n.length||typeof n=="object")return this.buffer=n,this.writable=!1,process.nextTick(function(){this.emit("end",n),this.readable=!1,this.emit("close")}.bind(this)),this;throw new TypeError("Unexpected data type ("+typeof n+")")}Sm.inherits(ei,Cm);ei.prototype.write=function(e){this.buffer=Qr.concat([this.buffer,Qr.from(e)]),this.emit("data",e)};ei.prototype.end=function(e){e&&this.write(e),this.emit("end",e),this.emit("close"),this.writable=!1,this.readable=!1};mu.exports=ei});var _u=M((vA,yu)=>{"use strict";var Jn=U("buffer").Buffer,fs=U("buffer").SlowBuffer;yu.exports=ti;function ti(n,e){if(!Jn.isBuffer(n)||!Jn.isBuffer(e)||n.length!==e.length)return!1;for(var t=0,r=0;r<n.length;r++)t|=n[r]^e[r];return t===0}ti.install=function(){Jn.prototype.equal=fs.prototype.equal=function(e){return ti(this,e)}};var wm=Jn.prototype.equal,Am=fs.prototype.equal;ti.restore=function(){Jn.prototype.equal=wm,fs.prototype.equal=Am}});var gs=M((TA,Iu)=>{var sn=en().Buffer,Oe=U("crypto"),vu=Xo(),Eu=U("util"),xm=`"%s" is not a valid algorithm.
|
|
26
|
-
Supported algorithms are:
|
|
27
|
-
"HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,Kn="secret must be a string or buffer",on="key must be a string or a buffer",Im="key must be a string, a buffer or an object",hs=typeof Oe.createPublicKey=="function";hs&&(on+=" or a KeyObject",Kn+="or a KeyObject");function Tu(n){if(!sn.isBuffer(n)&&typeof n!="string"&&(!hs||typeof n!="object"||typeof n.type!="string"||typeof n.asymmetricKeyType!="string"||typeof n.export!="function"))throw $e(on)}function Cu(n){if(!sn.isBuffer(n)&&typeof n!="string"&&typeof n!="object")throw $e(Im)}function Rm(n){if(!sn.isBuffer(n)){if(typeof n=="string")return n;if(!hs||typeof n!="object"||n.type!=="secret"||typeof n.export!="function")throw $e(Kn)}}function ps(n){return n.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Su(n){n=n.toString();var e=4-n.length%4;if(e!==4)for(var t=0;t<e;++t)n+="=";return n.replace(/\-/g,"+").replace(/_/g,"/")}function $e(n){var e=[].slice.call(arguments,1),t=Eu.format.bind(Eu,n).apply(null,e);return new TypeError(t)}function Pm(n){return sn.isBuffer(n)||typeof n=="string"}function Yn(n){return Pm(n)||(n=JSON.stringify(n)),n}function wu(n){return function(t,r){Rm(r),t=Yn(t);var i=Oe.createHmac("sha"+n,r),o=(i.update(t),i.digest("base64"));return ps(o)}}var ds,Nm="timingSafeEqual"in Oe?function(e,t){return e.byteLength!==t.byteLength?!1:Oe.timingSafeEqual(e,t)}:function(e,t){return ds||(ds=_u()),ds(e,t)};function km(n){return function(t,r,i){var o=wu(n)(t,i);return Nm(sn.from(r),sn.from(o))}}function Au(n){return function(t,r){Cu(r),t=Yn(t);var i=Oe.createSign("RSA-SHA"+n),o=(i.update(t),i.sign(r,"base64"));return ps(o)}}function xu(n){return function(t,r,i){Tu(i),t=Yn(t),r=Su(r);var o=Oe.createVerify("RSA-SHA"+n);return o.update(t),o.verify(i,r,"base64")}}function bm(n){return function(t,r){Cu(r),t=Yn(t);var i=Oe.createSign("RSA-SHA"+n),o=(i.update(t),i.sign({key:r,padding:Oe.constants.RSA_PKCS1_PSS_PADDING,saltLength:Oe.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return ps(o)}}function Mm(n){return function(t,r,i){Tu(i),t=Yn(t),r=Su(r);var o=Oe.createVerify("RSA-SHA"+n);return o.update(t),o.verify({key:i,padding:Oe.constants.RSA_PKCS1_PSS_PADDING,saltLength:Oe.constants.RSA_PSS_SALTLEN_DIGEST},r,"base64")}}function Om(n){var e=Au(n);return function(){var r=e.apply(null,arguments);return r=vu.derToJose(r,"ES"+n),r}}function Dm(n){var e=xu(n);return function(r,i,o){i=vu.joseToDer(i,"ES"+n).toString("base64");var s=e(r,i,o);return s}}function Um(){return function(){return""}}function Fm(){return function(e,t){return t===""}}Iu.exports=function(e){var t={hs:wu,rs:Au,ps:bm,es:Om,none:Um},r={hs:km,rs:xu,ps:Mm,es:Dm,none:Fm},i=e.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/);if(!i)throw $e(xm,e);var o=(i[1]||i[3]).toLowerCase(),s=i[2];return{sign:t[o](s),verify:r[o](s)}}});var ms=M((CA,Ru)=>{var Lm=U("buffer").Buffer;Ru.exports=function(e){return typeof e=="string"?e:typeof e=="number"||Lm.isBuffer(e)?e.toString():JSON.stringify(e)}});var Ou=M((SA,Mu)=>{var qm=en().Buffer,Pu=us(),Gm=gs(),Bm=U("stream"),Nu=ms(),ys=U("util");function ku(n,e){return qm.from(n,e).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Vm(n,e,t){t=t||"utf8";var r=ku(Nu(n),"binary"),i=ku(Nu(e),t);return ys.format("%s.%s",r,i)}function bu(n){var e=n.header,t=n.payload,r=n.secret||n.privateKey,i=n.encoding,o=Gm(e.alg),s=Vm(e,t,i),c=o.sign(s,r);return ys.format("%s.%s",s,c)}function ni(n){var e=n.secret;if(e=e??n.privateKey,e=e??n.key,/^hs/i.test(n.header.alg)===!0&&e==null)throw new TypeError("secret must be a string or buffer or a KeyObject");var t=new Pu(e);this.readable=!0,this.header=n.header,this.encoding=n.encoding,this.secret=this.privateKey=this.key=t,this.payload=new Pu(n.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))}ys.inherits(ni,Bm);ni.prototype.sign=function(){try{var e=bu({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(t){this.readable=!1,this.emit("error",t),this.emit("close")}};ni.sign=bu;Mu.exports=ni});var $u=M((wA,Hu)=>{var Uu=en().Buffer,Du=us(),Hm=gs(),$m=U("stream"),Fu=ms(),Wm=U("util"),Jm=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function Km(n){return Object.prototype.toString.call(n)==="[object Object]"}function Ym(n){if(Km(n))return n;try{return JSON.parse(n)}catch{return}}function Lu(n){var e=n.split(".",1)[0];return Ym(Uu.from(e,"base64").toString("binary"))}function zm(n){return n.split(".",2).join(".")}function qu(n){return n.split(".")[2]}function Xm(n,e){e=e||"utf8";var t=n.split(".")[1];return Uu.from(t,"base64").toString(e)}function Gu(n){return Jm.test(n)&&!!Lu(n)}function Bu(n,e,t){if(!e){var r=new Error("Missing algorithm parameter for jws.verify");throw r.code="MISSING_ALGORITHM",r}n=Fu(n);var i=qu(n),o=zm(n),s=Hm(e);return s.verify(o,i,t)}function Vu(n,e){if(e=e||{},n=Fu(n),!Gu(n))return null;var t=Lu(n);if(!t)return null;var r=Xm(n);return(t.typ==="JWT"||e.json)&&(r=JSON.parse(r,e.encoding)),{header:t,payload:r,signature:qu(n)}}function an(n){n=n||{};var e=n.secret;if(e=e??n.publicKey,e=e??n.key,/^hs/i.test(n.algorithm)===!0&&e==null)throw new TypeError("secret must be a string or buffer or a KeyObject");var t=new Du(e);this.readable=!0,this.algorithm=n.algorithm,this.encoding=n.encoding,this.secret=this.publicKey=this.key=t,this.signature=new Du(n.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))}Wm.inherits(an,$m);an.prototype.verify=function(){try{var e=Bu(this.signature.buffer,this.algorithm,this.key.buffer),t=Vu(this.signature.buffer,this.encoding);return this.emit("done",e,t),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(r){this.readable=!1,this.emit("error",r),this.emit("close")}};an.decode=Vu;an.isValid=Gu;an.verify=Bu;Hu.exports=an});var _s=M(Et=>{var Wu=Ou(),ri=$u(),jm=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];Et.ALGORITHMS=jm;Et.sign=Wu.sign;Et.verify=ri.verify;Et.decode=ri.decode;Et.isValid=ri.isValid;Et.createSign=function(e){return new Wu(e)};Et.createVerify=function(e){return new ri(e)}});var Qu=M(vt=>{"use strict";var We=vt&&vt.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},Ju=vt&&vt.__classPrivateFieldSet||function(n,e,t,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?n!==e||!i:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(n,t):i?i.value=t:e.set(n,t),t},Je,ln,Es,Ku,Yu,vs,Ts,zu;Object.defineProperty(vt,"__esModule",{value:!0});vt.GoogleToken=void 0;var Xu=U("fs"),Zm=qe(),Qm=_s(),ey=U("path"),ty=U("util"),ju=Xu.readFile?(0,ty.promisify)(Xu.readFile):async()=>{throw new Lt("use key rather than keyFile.","MISSING_CREDENTIALS")},Zu="https://www.googleapis.com/oauth2/v4/token",ny="https://accounts.google.com/o/oauth2/revoke?token=",Lt=class extends Error{constructor(e,t){super(e),this.code=t}},Cs=class{get accessToken(){return this.rawToken?this.rawToken.access_token:void 0}get idToken(){return this.rawToken?this.rawToken.id_token:void 0}get tokenType(){return this.rawToken?this.rawToken.token_type:void 0}get refreshToken(){return this.rawToken?this.rawToken.refresh_token:void 0}constructor(e){Je.add(this),this.transporter={request:t=>(0,Zm.request)(t)},ln.set(this,void 0),We(this,Je,"m",Ts).call(this,e)}hasExpired(){let e=new Date().getTime();return this.rawToken&&this.expiresAt?e>=this.expiresAt:!0}isTokenExpiring(){var e;let t=new Date().getTime(),r=(e=this.eagerRefreshThresholdMillis)!==null&&e!==void 0?e:0;return this.rawToken&&this.expiresAt?this.expiresAt<=t+r:!0}getToken(e,t={}){if(typeof e=="object"&&(t=e,e=void 0),t=Object.assign({forceRefresh:!1},t),e){let r=e;We(this,Je,"m",Es).call(this,t).then(i=>r(null,i),e);return}return We(this,Je,"m",Es).call(this,t)}async getCredentials(e){switch(ey.extname(e)){case".json":{let r=await ju(e,"utf8"),i=JSON.parse(r),o=i.private_key,s=i.client_email;if(!o||!s)throw new Lt("private_key and client_email are required.","MISSING_CREDENTIALS");return{privateKey:o,clientEmail:s}}case".der":case".crt":case".pem":return{privateKey:await ju(e,"utf8")};case".p12":case".pfx":throw new Lt("*.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");default:throw new Lt("Unknown certificate type. Type is determined based on file extension. Current supported extensions are *.json, and *.pem.","UNKNOWN_CERTIFICATE_TYPE")}}revokeToken(e){if(e){We(this,Je,"m",vs).call(this).then(()=>e(),e);return}return We(this,Je,"m",vs).call(this)}};vt.GoogleToken=Cs;ln=new WeakMap,Je=new WeakSet,Es=async function(e){if(We(this,ln,"f")&&!e.forceRefresh)return We(this,ln,"f");try{return await Ju(this,ln,We(this,Je,"m",Ku).call(this,e),"f")}finally{Ju(this,ln,void 0,"f")}},Ku=async function(e){if(this.isTokenExpiring()===!1&&e.forceRefresh===!1)return Promise.resolve(this.rawToken);if(!this.key&&!this.keyFile)throw new Error("No key or keyFile set.");if(!this.key&&this.keyFile){let t=await this.getCredentials(this.keyFile);this.key=t.privateKey,this.iss=t.clientEmail||this.iss,t.clientEmail||We(this,Je,"m",Yu).call(this)}return We(this,Je,"m",zu).call(this)},Yu=function(){if(!this.iss)throw new Lt("email is required.","MISSING_CREDENTIALS")},vs=async function(){if(!this.accessToken)throw new Error("No token to revoke.");let e=ny+this.accessToken;await this.transporter.request({url:e,retry:!0}),We(this,Je,"m",Ts).call(this,{email:this.iss,sub:this.sub,key:this.key,keyFile:this.keyFile,scope:this.scope,additionalClaims:this.additionalClaims})},Ts=function(e={}){this.keyFile=e.keyFile,this.key=e.key,this.rawToken=void 0,this.iss=e.email||e.iss,this.sub=e.sub,this.additionalClaims=e.additionalClaims,typeof e.scope=="object"?this.scope=e.scope.join(" "):this.scope=e.scope,this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis,e.transporter&&(this.transporter=e.transporter)},zu=async function(){var e,t;let r=Math.floor(new Date().getTime()/1e3),i=this.additionalClaims||{},o=Object.assign({iss:this.iss,scope:this.scope,aud:Zu,exp:r+3600,iat:r,sub:this.sub},i),s=Qm.sign({header:{alg:"RS256"},payload:o,secret:this.key});try{let c=await this.transporter.request({method:"POST",url:Zu,data:{grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:s},headers:{"Content-Type":"application/x-www-form-urlencoded"},responseType:"json",retryConfig:{httpMethodsToRetry:["POST"]}});return this.rawToken=c.data,this.expiresAt=c.data.expires_in===null||c.data.expires_in===void 0?void 0:(r+c.data.expires_in)*1e3,this.rawToken}catch(c){this.rawToken=void 0,this.tokenExpires=void 0;let f=c.response&&(!((e=c.response)===null||e===void 0)&&e.data)?(t=c.response)===null||t===void 0?void 0:t.data:{};if(f.error){let u=f.error_description?`: ${f.error_description}`:"";c.message=`${f.error}${u}`}throw c}}});var ws=M(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.JWTAccess=void 0;var ry=_s(),iy=_t(),ef={alg:"RS256",typ:"JWT"},Ss=class n{constructor(e,t,r,i){this.cache=new iy.LRUCache({capacity:500,maxAge:60*60*1e3}),this.email=e,this.key=t,this.keyId=r,this.eagerRefreshThresholdMillis=i??5*60*1e3}getCachedKey(e,t){let r=e;if(t&&Array.isArray(t)&&t.length?r=e?`${e}_${t.join("_")}`:`${t.join("_")}`:typeof t=="string"&&(r=e?`${e}_${t}`:t),!r)throw Error("Scopes or url must be provided");return r}getRequestHeaders(e,t,r){let i=this.getCachedKey(e,r),o=this.cache.get(i),s=Date.now();if(o&&o.expiration-s>this.eagerRefreshThresholdMillis)return o.headers;let c=Math.floor(Date.now()/1e3),f=n.getExpirationTime(c),u;if(Array.isArray(r)&&(r=r.join(" ")),r?u={iss:this.email,sub:this.email,scope:r,exp:f,iat:c}:u={iss:this.email,sub:this.email,aud:e,exp:f,iat:c},t){for(let w in u)if(t[w])throw new Error(`The '${w}' property is not allowed when passing additionalClaims. This claim is included in the JWT by default.`)}let d=this.keyId?{...ef,kid:this.keyId}:ef,h=Object.assign(u,t),v={Authorization:`Bearer ${ry.sign({header:d,payload:h,secret:this.key})}`};return this.cache.set(i,{expiration:f*1e3,headers:v}),v}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,t){if(t)this.fromStreamAsync(e).then(()=>t(),t);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((t,r)=>{e||r(new Error("Must pass in a stream containing the service account auth settings."));let i="";e.setEncoding("utf8").on("data",o=>i+=o).on("error",r).on("end",()=>{try{let o=JSON.parse(i);this.fromJSON(o),t()}catch(o){r(o)}})})}};ii.JWTAccess=Ss});var xs=M(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.JWT=void 0;var tf=Qu(),oy=ws(),sy=Ft(),oi=et(),As=class n extends sy.OAuth2Client{constructor(e,t,r,i,o,s){let c=e&&typeof e=="object"?e:{email:e,keyFile:t,key:r,keyId:s,scopes:i,subject:o};super(c),this.email=c.email,this.keyFile=c.keyFile,this.key=c.key,this.keyId=c.keyId,this.scopes=c.scopes,this.subject=c.subject,this.additionalClaims=c.additionalClaims,this.credentials={refresh_token:"jwt-placeholder",expiry_date:1}}createScoped(e){let t=new n(this);return t.scopes=e,t}async getRequestMetadataAsync(e){e=this.defaultServicePath?`https://${this.defaultServicePath}/`:e;let t=!this.hasUserScopes()&&e||this.useJWTAccessWithScope&&this.hasAnyScopes()||this.universeDomain!==oi.DEFAULT_UNIVERSE;if(this.subject&&this.universeDomain!==oi.DEFAULT_UNIVERSE)throw new RangeError(`Service Account user is configured for the credential. Domain-wide delegation is not supported in universes other than ${oi.DEFAULT_UNIVERSE}`);if(!this.apiKey&&t)if(this.additionalClaims&&this.additionalClaims.target_audience){let{tokens:r}=await this.refreshToken();return{headers:this.addSharedMetadataHeaders({Authorization:`Bearer ${r.id_token}`})}}else{this.access||(this.access=new oy.JWTAccess(this.email,this.key,this.keyId,this.eagerRefreshThresholdMillis));let r;this.hasUserScopes()?r=this.scopes:e||(r=this.defaultScopes);let i=this.useJWTAccessWithScope||this.universeDomain!==oi.DEFAULT_UNIVERSE,o=await this.access.getRequestHeaders(e??void 0,this.additionalClaims,i?r:void 0);return{headers:this.addSharedMetadataHeaders(o)}}else return this.hasAnyScopes()||this.apiKey?super.getRequestMetadataAsync(e):{headers:{}}}async fetchIdToken(e){let t=new tf.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 t.getToken({forceRefresh:!0}),!t.idToken)throw new Error("Unknown error: Failed to fetch ID token");return t.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(t=>e(null,t),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(e){let t=this.createGToken(),i={access_token:(await t.getToken({forceRefresh:this.isTokenExpiring()})).access_token,token_type:"Bearer",expiry_date:t.expiresAt,id_token:t.idToken};return this.emit("tokens",i),{res:null,tokens:i}}createGToken(){return this.gtoken||(this.gtoken=new tf.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,t){if(t)this.fromStreamAsync(e).then(()=>t(),t);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((t,r)=>{if(!e)throw new Error("Must pass in a stream containing the service account auth settings.");let i="";e.setEncoding("utf8").on("error",r).on("data",o=>i+=o).on("end",()=>{try{let o=JSON.parse(i);this.fromJSON(o),t()}catch(o){r(o)}})})}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 t=await this.createGToken().getCredentials(this.keyFile);return{private_key:t.privateKey,client_email:t.clientEmail}}throw new Error("A key or a keyFile must be provided to getCredentials.")}};si.JWT=As});var Rs=M(cn=>{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.UserRefreshClient=cn.USER_REFRESH_ACCOUNT_TYPE=void 0;var ay=Ft(),ly=U("querystring");cn.USER_REFRESH_ACCOUNT_TYPE="authorized_user";var Is=class n extends ay.OAuth2Client{constructor(e,t,r,i,o){let s=e&&typeof e=="object"?e:{clientId:e,clientSecret:t,refreshToken:r,eagerRefreshThresholdMillis:i,forceRefreshOnFailure:o};super(s),this._refreshToken=s.refreshToken,this.credentials.refresh_token=s.refreshToken}async refreshTokenNoCache(e){return super.refreshTokenNoCache(this._refreshToken)}async fetchIdToken(e){return(await this.transporter.request({...n.RETRY_CONFIG,url:this.endpoints.oauth2TokenUrl,headers:{"Content-Type":"application/x-www-form-urlencoded"},method:"POST",data:(0,ly.stringify)({client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token",refresh_token:this._refreshToken,target_audience:e})})).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,t){if(t)this.fromStreamAsync(e).then(()=>t(),t);else return this.fromStreamAsync(e)}async fromStreamAsync(e){return new Promise((t,r)=>{if(!e)return r(new Error("Must pass in a stream containing the user refresh token."));let i="";e.setEncoding("utf8").on("error",r).on("data",o=>i+=o).on("end",()=>{try{let o=JSON.parse(i);return this.fromJSON(o),t()}catch(o){return r(o)}})})}static fromJSON(e){let t=new n;return t.fromJSON(e),t}};cn.UserRefreshClient=Is});var Ns=M(un=>{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.Impersonated=un.IMPERSONATED_ACCOUNT_TYPE=void 0;var nf=Ft(),cy=qe(),uy=_t();un.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";var Ps=class n extends nf.OAuth2Client{constructor(e={}){var t,r,i,o,s,c;if(super(e),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=(t=e.sourceClient)!==null&&t!==void 0?t:new nf.OAuth2Client,this.targetPrincipal=(r=e.targetPrincipal)!==null&&r!==void 0?r:"",this.delegates=(i=e.delegates)!==null&&i!==void 0?i:[],this.targetScopes=(o=e.targetScopes)!==null&&o!==void 0?o:[],this.lifetime=(s=e.lifetime)!==null&&s!==void 0?s:3600,!!!(0,uy.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=(c=e.endpoint)!==null&&c!==void 0?c:`https://iamcredentials.${this.universeDomain}`}async sign(e){await this.sourceClient.getAccessToken();let t=`projects/-/serviceAccounts/${this.targetPrincipal}`,r=`${this.endpoint}/v1/${t}:signBlob`,i={delegates:this.delegates,payload:Buffer.from(e).toString("base64")};return(await this.sourceClient.request({...n.RETRY_CONFIG,url:r,data:i,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){var e,t,r,i,o,s;try{await this.sourceClient.getAccessToken();let c="projects/-/serviceAccounts/"+this.targetPrincipal,f=`${this.endpoint}/v1/${c}:generateAccessToken`,u={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},d=await this.sourceClient.request({...n.RETRY_CONFIG,url:f,data:u,method:"POST"}),h=d.data;return this.credentials.access_token=h.accessToken,this.credentials.expiry_date=Date.parse(h.expireTime),{tokens:this.credentials,res:d}}catch(c){if(!(c instanceof Error))throw c;let f=0,u="";throw c instanceof cy.GaxiosError&&(f=(r=(t=(e=c?.response)===null||e===void 0?void 0:e.data)===null||t===void 0?void 0:t.error)===null||r===void 0?void 0:r.status,u=(s=(o=(i=c?.response)===null||i===void 0?void 0:i.data)===null||o===void 0?void 0:o.error)===null||s===void 0?void 0:s.message),f&&u?(c.message=`${f}: unable to impersonate: ${u}`,c):(c.message=`unable to impersonate: ${c}`,c)}}async fetchIdToken(e,t){var r,i;await this.sourceClient.getAccessToken();let o=`projects/-/serviceAccounts/${this.targetPrincipal}`,s=`${this.endpoint}/v1/${o}:generateIdToken`,c={delegates:this.delegates,audience:e,includeEmail:(r=t?.includeEmail)!==null&&r!==void 0?r:!0,useEmailAzp:(i=t?.includeEmail)!==null&&i!==void 0?i:!0};return(await this.sourceClient.request({...n.RETRY_CONFIG,url:s,data:c,method:"POST"})).data.token}};un.Impersonated=Ps});var bs=M(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.OAuthClientAuthHandler=void 0;zn.getErrorFromOAuthErrorResponse=hy;var rf=U("querystring"),fy=Zt(),dy=["PUT","POST","PATCH"],ks=class{constructor(e){this.clientAuthentication=e,this.crypto=(0,fy.createCrypto)()}applyClientAuthenticationOptions(e,t){this.injectAuthenticatedHeaders(e,t),t||this.injectAuthenticatedRequestBody(e)}injectAuthenticatedHeaders(e,t){var r;if(t)e.headers=e.headers||{},Object.assign(e.headers,{Authorization:`Bearer ${t}}`});else if(((r=this.clientAuthentication)===null||r===void 0?void 0:r.confidentialClientType)==="basic"){e.headers=e.headers||{};let i=this.clientAuthentication.clientId,o=this.clientAuthentication.clientSecret||"",s=this.crypto.encodeBase64StringUtf8(`${i}:${o}`);Object.assign(e.headers,{Authorization:`Basic ${s}`})}}injectAuthenticatedRequestBody(e){var t;if(((t=this.clientAuthentication)===null||t===void 0?void 0:t.confidentialClientType)==="request-body"){let r=(e.method||"GET").toUpperCase();if(dy.indexOf(r)!==-1){let i,o=e.headers||{};for(let s in o)if(s.toLowerCase()==="content-type"&&o[s]){i=o[s].toLowerCase();break}if(i==="application/x-www-form-urlencoded"){e.data=e.data||"";let s=rf.parse(e.data);Object.assign(s,{client_id:this.clientAuthentication.clientId,client_secret:this.clientAuthentication.clientSecret||""}),e.data=rf.stringify(s)}else if(i==="application/json")e.data=e.data||{},Object.assign(e.data,{client_id:this.clientAuthentication.clientId,client_secret:this.clientAuthentication.clientSecret||""});else throw new Error(`${i} content-types are not supported with ${this.clientAuthentication.confidentialClientType} client authentication`)}else throw new Error(`${r} HTTP method does not support ${this.clientAuthentication.confidentialClientType} client authentication`)}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};zn.OAuthClientAuthHandler=ks;function hy(n,e){let t=n.error,r=n.error_description,i=n.error_uri,o=`Error code ${t}`;typeof r<"u"&&(o+=`: ${r}`),typeof i<"u"&&(o+=` - ${i}`);let s=new Error(o);if(e){let c=Object.keys(e);e.stack&&c.push("stack"),c.forEach(f=>{f!=="message"&&Object.defineProperty(s,f,{value:e[f],writable:!1,enumerable:!0})})}return s}});var Os=M(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.StsCredentials=void 0;var py=qe(),gy=U("querystring"),my=Hn(),of=bs(),Ms=class n extends of.OAuthClientAuthHandler{constructor(e,t){super(t),this.tokenExchangeEndpoint=e,this.transporter=new my.DefaultTransporter}async exchangeToken(e,t,r){var i,o,s;let c={grant_type:e.grantType,resource:e.resource,audience:e.audience,scope:(i=e.scope)===null||i===void 0?void 0:i.join(" "),requested_token_type:e.requestedTokenType,subject_token:e.subjectToken,subject_token_type:e.subjectTokenType,actor_token:(o=e.actingParty)===null||o===void 0?void 0:o.actorToken,actor_token_type:(s=e.actingParty)===null||s===void 0?void 0:s.actorTokenType,options:r&&JSON.stringify(r)};Object.keys(c).forEach(d=>{typeof c[d]>"u"&&delete c[d]});let f={"Content-Type":"application/x-www-form-urlencoded"};Object.assign(f,t||{});let u={...n.RETRY_CONFIG,url:this.tokenExchangeEndpoint.toString(),method:"POST",headers:f,data:gy.stringify(c),responseType:"json"};this.applyClientAuthenticationOptions(u);try{let d=await this.transporter.request(u),h=d.data;return h.res=d,h}catch(d){throw d instanceof py.GaxiosError&&d.response?(0,of.getErrorFromOAuthErrorResponse)(d.response.data,d):d}}};ai.StsCredentials=Ms});var Tt=M(ue=>{"use strict";var Ds=ue&&ue.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},sf=ue&&ue.__classPrivateFieldSet||function(n,e,t,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?n!==e||!i:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(n,t):i?i.value=t:e.set(n,t),t},Us,fn,lf;Object.defineProperty(ue,"__esModule",{value:!0});ue.BaseExternalAccountClient=ue.DEFAULT_UNIVERSE=ue.CLOUD_RESOURCE_MANAGER=ue.EXTERNAL_ACCOUNT_TYPE=ue.EXPIRATION_TIME_OFFSET=void 0;var yy=U("stream"),_y=et(),Ey=Os(),af=_t(),vy="urn:ietf:params:oauth:grant-type:token-exchange",Ty="urn:ietf:params:oauth:token-type:access_token",Fs="https://www.googleapis.com/auth/cloud-platform",Cy=3600;ue.EXPIRATION_TIME_OFFSET=5*60*1e3;ue.EXTERNAL_ACCOUNT_TYPE="external_account";ue.CLOUD_RESOURCE_MANAGER="https://cloudresourcemanager.googleapis.com/v1/projects/";var Sy="//iam\\.googleapis\\.com/locations/[^/]+/workforcePools/[^/]+/providers/.+",wy="https://sts.{universeDomain}/v1/token",Ay=Ko(),xy=et();Object.defineProperty(ue,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return xy.DEFAULT_UNIVERSE}});var Ls=class n extends _y.AuthClient{constructor(e,t){var r;super({...e,...t}),Us.add(this),fn.set(this,null);let i=(0,af.originalOrCamelOptions)(e),o=i.get("type");if(o&&o!==ue.EXTERNAL_ACCOUNT_TYPE)throw new Error(`Expected "${ue.EXTERNAL_ACCOUNT_TYPE}" type but received "${e.type}"`);let s=i.get("client_id"),c=i.get("client_secret"),f=(r=i.get("token_url"))!==null&&r!==void 0?r:wy.replace("{universeDomain}",this.universeDomain),u=i.get("subject_token_type"),d=i.get("workforce_pool_user_project"),h=i.get("service_account_impersonation_url"),g=i.get("service_account_impersonation"),v=(0,af.originalOrCamelOptions)(g).get("token_lifetime_seconds");this.cloudResourceManagerURL=new URL(i.get("cloud_resource_manager_url")||`https://cloudresourcemanager.${this.universeDomain}/v1/projects/`),s&&(this.clientAuth={confidentialClientType:"basic",clientId:s,clientSecret:c}),this.stsCredential=new Ey.StsCredentials(f,this.clientAuth),this.scopes=i.get("scopes")||[Fs],this.cachedAccessToken=null,this.audience=i.get("audience"),this.subjectTokenType=u,this.workforcePoolUserProject=d;let w=new RegExp(Sy);if(this.workforcePoolUserProject&&!this.audience.match(w))throw new Error("workforcePoolUserProject should not be set for non-workforce pool credentials.");this.serviceAccountImpersonationUrl=h,this.serviceAccountImpersonationLifetime=v,this.serviceAccountImpersonationLifetime?this.configLifetimeRequested=!0:(this.configLifetimeRequested=!1,this.serviceAccountImpersonationLifetime=Cy),this.projectNumber=this.getProjectNumber(this.audience),this.supplierContext={audience:this.audience,subjectTokenType:this.subjectTokenType,transporter:this.transporter}}getServiceAccountEmail(){var e;if(this.serviceAccountImpersonationUrl){if(this.serviceAccountImpersonationUrl.length>256)throw new RangeError(`URL is too long: ${this.serviceAccountImpersonationUrl}`);let r=/serviceAccounts\/(?<email>[^:]+):generateAccessToken$/.exec(this.serviceAccountImpersonationUrl);return((e=r?.groups)===null||e===void 0?void 0:e.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 t={Authorization:`Bearer ${(await this.getAccessToken()).token}`};return this.addSharedMetadataHeaders(t)}request(e,t){if(t)this.requestAsync(e).then(r=>t(null,r),r=>t(r,r.response));else return this.requestAsync(e)}async getProjectId(){let e=this.projectNumber||this.workforcePoolUserProject;if(this.projectId)return this.projectId;if(e){let t=await this.getRequestHeaders(),r=await this.transporter.request({...n.RETRY_CONFIG,headers:t,url:`${this.cloudResourceManagerURL.toString()}${e}`,responseType:"json"});return this.projectId=r.data.projectId,this.projectId}return null}async requestAsync(e,t=!1){let r;try{let i=await this.getRequestHeaders();e.headers=e.headers||{},i&&i["x-goog-user-project"]&&(e.headers["x-goog-user-project"]=i["x-goog-user-project"]),i&&i.Authorization&&(e.headers.Authorization=i.Authorization),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let s=o.status,c=o.config.data instanceof yy.Readable;if(!t&&(s===401||s===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}async refreshAccessTokenAsync(){sf(this,fn,Ds(this,fn,"f")||Ds(this,Us,"m",lf).call(this),"f");try{return await Ds(this,fn,"f")}finally{sf(this,fn,null,"f")}}getProjectNumber(e){let t=e.match(/\/projects\/([^/]+)/);return t?t[1]:null}async getImpersonatedAccessToken(e){let t={...n.RETRY_CONFIG,url:this.serviceAccountImpersonationUrl,method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`},data:{scope:this.getScopesArray(),lifetime:this.serviceAccountImpersonationLifetime+"s"},responseType:"json"},r=await this.transporter.request(t),i=r.data;return{access_token:i.accessToken,expiry_date:new Date(i.expireTime).getTime(),res:r}}isExpired(e){let t=new Date().getTime();return e.expiry_date?t>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}getScopesArray(){return typeof this.scopes=="string"?[this.scopes]:this.scopes||[Fs]}getMetricsHeaderValue(){let e=process.version.replace(/^v/,""),t=this.serviceAccountImpersonationUrl!==void 0,r=this.credentialSourceType?this.credentialSourceType:"unknown";return`gl-node/${e} auth/${Ay.version} google-byoid-sdk source/${r} sa-impersonation/${t} config-lifetime/${this.configLifetimeRequested}`}};ue.BaseExternalAccountClient=Ls;fn=new WeakMap,Us=new WeakSet,lf=async function(){let e=await this.retrieveSubjectToken(),t={grantType:vy,audience:this.audience,requestedTokenType:Ty,subjectToken:e,subjectTokenType:this.subjectTokenType,scope:this.serviceAccountImpersonationUrl?[Fs]:this.getScopesArray()},r=!this.clientAuth&&this.workforcePoolUserProject?{userProject:this.workforcePoolUserProject}:void 0,i={"x-goog-api-client":this.getMetricsHeaderValue()},o=await this.stsCredential.exchangeToken(t,i,r);return this.serviceAccountImpersonationUrl?this.cachedAccessToken=await this.getImpersonatedAccessToken(o.access_token):o.expires_in?this.cachedAccessToken={access_token:o.access_token,expiry_date:new Date().getTime()+o.expires_in*1e3,res:o.res}:this.cachedAccessToken={access_token:o.access_token,res:o.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}});var cf=M(li=>{"use strict";var qs,Gs,Bs;Object.defineProperty(li,"__esModule",{value:!0});li.FileSubjectTokenSupplier=void 0;var Hs=U("util"),$s=U("fs"),Iy=(0,Hs.promisify)((qs=$s.readFile)!==null&&qs!==void 0?qs:()=>{}),Ry=(0,Hs.promisify)((Gs=$s.realpath)!==null&&Gs!==void 0?Gs:()=>{}),Py=(0,Hs.promisify)((Bs=$s.lstat)!==null&&Bs!==void 0?Bs:()=>{}),Vs=class{constructor(e){this.filePath=e.filePath,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName}async getSubjectToken(e){let t=this.filePath;try{if(t=await Ry(t),!(await Py(t)).isFile())throw new Error}catch(o){throw o instanceof Error&&(o.message=`The file at ${t} does not exist, or it is not a file. ${o.message}`),o}let r,i=await Iy(t,{encoding:"utf8"});if(this.formatType==="text"?r=i:this.formatType==="json"&&this.subjectTokenFieldName&&(r=JSON.parse(i)[this.subjectTokenFieldName]),!r)throw new Error("Unable to parse the subject_token from the credential_source file");return r}};li.FileSubjectTokenSupplier=Vs});var uf=M(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.UrlSubjectTokenSupplier=void 0;var Ws=class{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 t={...this.additionalGaxiosOptions,url:this.url,method:"GET",headers:this.headers,responseType:this.formatType},r;if(this.formatType==="text"?r=(await e.transporter.request(t)).data:this.formatType==="json"&&this.subjectTokenFieldName&&(r=(await e.transporter.request(t)).data[this.subjectTokenFieldName]),!r)throw new Error("Unable to parse the subject_token from the credential_source URL");return r}};ci.UrlSubjectTokenSupplier=Ws});var Ys=M(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.IdentityPoolClient=void 0;var Ny=Tt(),Js=_t(),ky=cf(),by=uf(),Ks=class n extends Ny.BaseExternalAccountClient{constructor(e,t){super(e,t);let r=(0,Js.originalOrCamelOptions)(e),i=r.get("credential_source"),o=r.get("subject_token_supplier");if(!i&&!o)throw new Error("A credential source or subject token supplier must be specified.");if(i&&o)throw new Error("Only one of credential source or subject token supplier can be specified.");if(o)this.subjectTokenSupplier=o,this.credentialSourceType="programmatic";else{let s=(0,Js.originalOrCamelOptions)(i),c=(0,Js.originalOrCamelOptions)(s.get("format")),f=c.get("type")||"text",u=c.get("subject_token_field_name");if(f!=="json"&&f!=="text")throw new Error(`Invalid credential_source format "${f}"`);if(f==="json"&&!u)throw new Error("Missing subject_token_field_name for JSON credential_source format");let d=s.get("file"),h=s.get("url"),g=s.get("headers");if(d&&h)throw new Error('No valid Identity Pool "credential_source" provided, must be either file or url.');if(d&&!h)this.credentialSourceType="file",this.subjectTokenSupplier=new ky.FileSubjectTokenSupplier({filePath:d,formatType:f,subjectTokenFieldName:u});else if(!d&&h)this.credentialSourceType="url",this.subjectTokenSupplier=new by.UrlSubjectTokenSupplier({url:h,formatType:f,subjectTokenFieldName:u,headers:g,additionalGaxiosOptions:n.RETRY_CONFIG});else throw new Error('No valid Identity Pool "credential_source" provided, must be either file or url.')}}async retrieveSubjectToken(){return this.subjectTokenSupplier.getSubjectToken(this.supplierContext)}};ui.IdentityPoolClient=Ks});var Xs=M(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.AwsRequestSigner=void 0;var df=Zt(),ff="AWS4-HMAC-SHA256",My="aws4_request",zs=class{constructor(e,t){this.getCredentials=e,this.region=t,this.crypto=(0,df.createCrypto)()}async getRequestOptions(e){if(!e.url)throw new Error('"url" is required in "amzOptions"');let t=typeof e.data=="object"?JSON.stringify(e.data):e.data,r=e.url,i=e.method||"GET",o=e.body||t,s=e.headers,c=await this.getCredentials(),f=new URL(r),u=await Dy({crypto:this.crypto,host:f.host,canonicalUri:f.pathname,canonicalQuerystring:f.search.substr(1),method:i,region:this.region,securityCredentials:c,requestPayload:o,additionalAmzHeaders:s}),d=Object.assign(u.amzDate?{"x-amz-date":u.amzDate}:{},{Authorization:u.authorizationHeader,host:f.host},s||{});c.token&&Object.assign(d,{"x-amz-security-token":c.token});let h={url:r,method:i,headers:d};return typeof o<"u"&&(h.body=o),h}};fi.AwsRequestSigner=zs;async function Xn(n,e,t){return await n.signWithHmacSha256(e,t)}async function Oy(n,e,t,r,i){let o=await Xn(n,`AWS4${e}`,t),s=await Xn(n,o,r),c=await Xn(n,s,i);return await Xn(n,c,"aws4_request")}async function Dy(n){let e=n.additionalAmzHeaders||{},t=n.requestPayload||"",r=n.host.split(".")[0],i=new Date,o=i.toISOString().replace(/[-:]/g,"").replace(/\.[0-9]+/,""),s=i.toISOString().replace(/[-]/g,"").replace(/T.*/,""),c={};Object.keys(e).forEach(L=>{c[L.toLowerCase()]=e[L]}),n.securityCredentials.token&&(c["x-amz-security-token"]=n.securityCredentials.token);let f=Object.assign({host:n.host},c.date?{}:{"x-amz-date":o},c),u="",d=Object.keys(f).sort();d.forEach(L=>{u+=`${L}:${f[L]}
|
|
28
|
-
`});let h=d.join(";"),g=await n.crypto.sha256DigestHex(t),v=`${n.method}
|
|
29
|
-
${n.canonicalUri}
|
|
30
|
-
${n.canonicalQuerystring}
|
|
31
|
-
${u}
|
|
32
|
-
${h}
|
|
33
|
-
${g}`,w=`${s}/${n.region}/${r}/${My}`,C=`${ff}
|
|
34
|
-
${o}
|
|
35
|
-
${w}
|
|
36
|
-
`+await n.crypto.sha256DigestHex(v),N=await Oy(n.crypto,n.securityCredentials.secretAccessKey,s,n.region,r),k=await Xn(n.crypto,N,C),G=`${ff} Credential=${n.securityCredentials.accessKeyId}/${w}, SignedHeaders=${h}, Signature=${(0,df.fromArrayBufferToHex)(k)}`;return{amzDate:c.date?void 0:o,authorizationHeader:G,canonicalQuerystring:n.canonicalQuerystring}}});var gf=M(dn=>{"use strict";var ct=dn&&dn.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},Ke,js,hf,pf,di,Zs;Object.defineProperty(dn,"__esModule",{value:!0});dn.DefaultAwsSecurityCredentialsSupplier=void 0;var Qs=class{constructor(e){Ke.add(this),this.regionUrl=e.regionUrl,this.securityCredentialsUrl=e.securityCredentialsUrl,this.imdsV2SessionTokenUrl=e.imdsV2SessionTokenUrl,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getAwsRegion(e){if(ct(this,Ke,"a",di))return ct(this,Ke,"a",di);let t={};if(!ct(this,Ke,"a",di)&&this.imdsV2SessionTokenUrl&&(t["x-aws-ec2-metadata-token"]=await ct(this,Ke,"m",js).call(this,e.transporter)),!this.regionUrl)throw new Error('Unable to determine AWS region due to missing "options.credential_source.region_url"');let r={...this.additionalGaxiosOptions,url:this.regionUrl,method:"GET",responseType:"text",headers:t},i=await e.transporter.request(r);return i.data.substr(0,i.data.length-1)}async getAwsSecurityCredentials(e){if(ct(this,Ke,"a",Zs))return ct(this,Ke,"a",Zs);let t={};this.imdsV2SessionTokenUrl&&(t["x-aws-ec2-metadata-token"]=await ct(this,Ke,"m",js).call(this,e.transporter));let r=await ct(this,Ke,"m",hf).call(this,t,e.transporter),i=await ct(this,Ke,"m",pf).call(this,r,t,e.transporter);return{accessKeyId:i.AccessKeyId,secretAccessKey:i.SecretAccessKey,token:i.Token}}};dn.DefaultAwsSecurityCredentialsSupplier=Qs;Ke=new WeakSet,js=async function(e){let t={...this.additionalGaxiosOptions,url:this.imdsV2SessionTokenUrl,method:"PUT",responseType:"text",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"300"}};return(await e.request(t)).data},hf=async function(e,t){if(!this.securityCredentialsUrl)throw new Error('Unable to determine AWS role name due to missing "options.credential_source.url"');let r={...this.additionalGaxiosOptions,url:this.securityCredentialsUrl,method:"GET",responseType:"text",headers:e};return(await t.request(r)).data},pf=async function(e,t,r){return(await r.request({...this.additionalGaxiosOptions,url:`${this.securityCredentialsUrl}/${e}`,responseType:"json",headers:t})).data},di=function(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||null},Zs=function(){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}});var ea=M(pn=>{"use strict";var Uy=pn&&pn.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},hi,yf;Object.defineProperty(pn,"__esModule",{value:!0});pn.AwsClient=void 0;var Fy=Xs(),Ly=Tt(),qy=gf(),mf=_t(),hn=class extends Ly.BaseExternalAccountClient{constructor(e,t){super(e,t);let r=(0,mf.originalOrCamelOptions)(e),i=r.get("credential_source"),o=r.get("aws_security_credentials_supplier");if(!i&&!o)throw new Error("A credential source or AWS security credentials supplier must be specified.");if(i&&o)throw new Error("Only one of credential source or AWS security credentials supplier can be specified.");if(o)this.awsSecurityCredentialsSupplier=o,this.regionalCredVerificationUrl=Uy(hi,hi,"f",yf),this.credentialSourceType="programmatic";else{let s=(0,mf.originalOrCamelOptions)(i);this.environmentId=s.get("environment_id");let c=s.get("region_url"),f=s.get("url"),u=s.get("imdsv2_session_token_url");this.awsSecurityCredentialsSupplier=new qy.DefaultAwsSecurityCredentialsSupplier({regionUrl:c,securityCredentialsUrl:f,imdsV2SessionTokenUrl:u}),this.regionalCredVerificationUrl=s.get("regional_cred_verification_url"),this.credentialSourceType="aws",this.validateEnvironmentId()}this.awsRequestSigner=null,this.region=""}validateEnvironmentId(){var e;let t=(e=this.environmentId)===null||e===void 0?void 0:e.match(/^(aws)(\d+)$/);if(!t||!this.regionalCredVerificationUrl)throw new Error('No valid AWS "credential_source" provided');if(parseInt(t[2],10)!==1)throw new Error(`aws version "${t[2]}" is not supported in the current build.`)}async retrieveSubjectToken(){this.awsRequestSigner||(this.region=await this.awsSecurityCredentialsSupplier.getAwsRegion(this.supplierContext),this.awsRequestSigner=new Fy.AwsRequestSigner(async()=>this.awsSecurityCredentialsSupplier.getAwsSecurityCredentials(this.supplierContext),this.region));let e=await this.awsRequestSigner.getRequestOptions({...hi.RETRY_CONFIG,url:this.regionalCredVerificationUrl.replace("{region}",this.region),method:"POST"}),t=[],r=Object.assign({"x-goog-cloud-target-resource":this.audience},e.headers);for(let i in r)t.push({key:i,value:r[i]});return encodeURIComponent(JSON.stringify({url:e.url,method:e.method,headers:t}))}};pn.AwsClient=hn;hi=hn;yf={value:"https://sts.{region}.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15"};hn.AWS_EC2_METADATA_IPV4_ADDRESS="169.254.169.254";hn.AWS_EC2_METADATA_IPV6_ADDRESS="fd00:ec2::254"});var oa=M(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.InvalidSubjectTokenError=ae.InvalidMessageFieldError=ae.InvalidCodeFieldError=ae.InvalidTokenTypeFieldError=ae.InvalidExpirationTimeFieldError=ae.InvalidSuccessFieldError=ae.InvalidVersionFieldError=ae.ExecutableResponseError=ae.ExecutableResponse=void 0;var pi="urn:ietf:params:oauth:token-type:saml2",ta="urn:ietf:params:oauth:token-type:id_token",na="urn:ietf:params:oauth:token-type:jwt",ra=class{constructor(e){if(!e.version)throw new gi("Executable response must contain a 'version' field.");if(e.success===void 0)throw new mi("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!==pi&&this.tokenType!==ta&&this.tokenType!==na)throw new yi(`Executable response must contain a 'token_type' field when successful and it must be one of ${ta}, ${na}, or ${pi}.`);if(this.tokenType===pi){if(!e.saml_response)throw new jn(`Executable response must contain a 'saml_response' field when token_type=${pi}.`);this.subjectToken=e.saml_response}else{if(!e.id_token)throw new jn(`Executable response must contain a 'id_token' field when token_type=${ta} or ${na}.`);this.subjectToken=e.id_token}}else{if(!e.code)throw new _i("Executable response must contain a 'code' field when unsuccessful.");if(!e.message)throw new Ei("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)}};ae.ExecutableResponse=ra;var nt=class extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}};ae.ExecutableResponseError=nt;var gi=class extends nt{};ae.InvalidVersionFieldError=gi;var mi=class extends nt{};ae.InvalidSuccessFieldError=mi;var ia=class extends nt{};ae.InvalidExpirationTimeFieldError=ia;var yi=class extends nt{};ae.InvalidTokenTypeFieldError=yi;var _i=class extends nt{};ae.InvalidCodeFieldError=_i;var Ei=class extends nt{};ae.InvalidMessageFieldError=Ei;var jn=class extends nt{};ae.InvalidSubjectTokenError=jn});var _f=M(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.PluggableAuthHandler=void 0;var Gy=Ti(),qt=oa(),By=U("child_process"),sa=U("fs"),aa=class n{constructor(e){if(!e.command)throw new Error("No command provided.");if(this.commandComponents=n.parseCommand(e.command),this.timeoutMillis=e.timeoutMillis,!this.timeoutMillis)throw new Error("No timeoutMillis provided.");this.outputFile=e.outputFile}retrieveResponseFromExecutable(e){return new Promise((t,r)=>{let i=By.spawn(this.commandComponents[0],this.commandComponents.slice(1),{env:{...process.env,...Object.fromEntries(e)}}),o="";i.stdout.on("data",c=>{o+=c}),i.stderr.on("data",c=>{o+=c});let s=setTimeout(()=>(i.removeAllListeners(),i.kill(),r(new Error("The executable failed to finish within the timeout specified."))),this.timeoutMillis);i.on("close",c=>{if(clearTimeout(s),c===0)try{let f=JSON.parse(o),u=new qt.ExecutableResponse(f);return t(u)}catch(f){return f instanceof qt.ExecutableResponseError?r(f):r(new qt.ExecutableResponseError(`The executable returned an invalid response: ${o}`))}else return r(new Gy.ExecutableError(o,c.toString()))})})}async retrieveCachedResponse(){if(!this.outputFile||this.outputFile.length===0)return;let e;try{e=await sa.promises.realpath(this.outputFile)}catch{return}if(!(await sa.promises.lstat(e)).isFile())return;let t=await sa.promises.readFile(e,{encoding:"utf8"});if(t!=="")try{let r=JSON.parse(t);return new qt.ExecutableResponse(r).isValid()?new qt.ExecutableResponse(r):void 0}catch(r){throw r instanceof qt.ExecutableResponseError?r:new qt.ExecutableResponseError(`The output file contained an invalid response: ${t}`)}}static parseCommand(e){let t=e.match(/(?:[^\s"]+|"[^"]*")+/g);if(!t)throw new Error(`Provided command: "${e}" could not be parsed.`);for(let r=0;r<t.length;r++)t[r][0]==='"'&&t[r].slice(-1)==='"'&&(t[r]=t[r].slice(1,-1));return t}};vi.PluggableAuthHandler=aa});var Ti=M(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.PluggableAuthClient=gn.ExecutableError=void 0;var Vy=Tt(),Hy=oa(),$y=_f(),Ci=class extends Error{constructor(e,t){super(`The executable failed with exit code: ${t} and error message: ${e}.`),this.code=t,Object.setPrototypeOf(this,new.target.prototype)}};gn.ExecutableError=Ci;var Wy=30*1e3,Ef=5*1e3,vf=120*1e3,Jy="GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES",Tf=1,la=class extends Vy.BaseExternalAccountClient{constructor(e,t){if(super(e,t),!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=Wy;else if(this.timeoutMillis=e.credential_source.executable.timeout_millis,this.timeoutMillis<Ef||this.timeoutMillis>vf)throw new Error(`Timeout must be between ${Ef} and ${vf} milliseconds.`);this.outputFile=e.credential_source.executable.output_file,this.handler=new $y.PluggableAuthHandler({command:this.command,timeoutMillis:this.timeoutMillis,outputFile:this.outputFile}),this.credentialSourceType="executable"}async retrieveSubjectToken(){if(process.env[Jy]!=="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 t=new Map;t.set("GOOGLE_EXTERNAL_ACCOUNT_AUDIENCE",this.audience),t.set("GOOGLE_EXTERNAL_ACCOUNT_TOKEN_TYPE",this.subjectTokenType),t.set("GOOGLE_EXTERNAL_ACCOUNT_INTERACTIVE","0"),this.outputFile&&t.set("GOOGLE_EXTERNAL_ACCOUNT_OUTPUT_FILE",this.outputFile);let r=this.getServiceAccountEmail();r&&t.set("GOOGLE_EXTERNAL_ACCOUNT_IMPERSONATED_EMAIL",r),e=await this.handler.retrieveResponseFromExecutable(t)}if(e.version>Tf)throw new Error(`Version of executable is not currently supported, maximum supported version is ${Tf}.`);if(!e.success)throw new Ci(e.errorMessage,e.errorCode);if(this.outputFile&&!e.expirationTime)throw new Hy.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}};gn.PluggableAuthClient=la});var ua=M(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.ExternalAccountClient=void 0;var Ky=Tt(),Yy=Ys(),zy=ea(),Xy=Ti(),ca=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,t){var r,i;return e&&e.type===Ky.EXTERNAL_ACCOUNT_TYPE?!((r=e.credential_source)===null||r===void 0)&&r.environment_id?new zy.AwsClient(e,t):!((i=e.credential_source)===null||i===void 0)&&i.executable?new Xy.PluggableAuthClient(e,t):new Yy.IdentityPoolClient(e,t):null}};Si.ExternalAccountClient=ca});var Sf=M(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.ExternalAccountAuthorizedUserClient=mn.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=void 0;var jy=et(),Cf=bs(),Zy=qe(),Qy=U("stream"),e_=Tt();mn.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE="external_account_authorized_user";var t_="https://sts.{universeDomain}/v1/oauthtoken",fa=class n extends Cf.OAuthClientAuthHandler{constructor(e,t,r){super(r),this.url=e,this.transporter=t}async refreshToken(e,t){let r=new URLSearchParams({grant_type:"refresh_token",refresh_token:e}),i={"Content-Type":"application/x-www-form-urlencoded",...t},o={...n.RETRY_CONFIG,url:this.url,method:"POST",headers:i,data:r.toString(),responseType:"json"};this.applyClientAuthenticationOptions(o);try{let s=await this.transporter.request(o),c=s.data;return c.res=s,c}catch(s){throw s instanceof Zy.GaxiosError&&s.response?(0,Cf.getErrorFromOAuthErrorResponse)(s.response.data,s):s}}},da=class extends jy.AuthClient{constructor(e,t){var r;super({...e,...t}),e.universe_domain&&(this.universeDomain=e.universe_domain),this.refreshToken=e.refresh_token;let i={confidentialClientType:"basic",clientId:e.client_id,clientSecret:e.client_secret};this.externalAccountAuthorizedUserHandler=new fa((r=e.token_url)!==null&&r!==void 0?r:t_.replace("{universeDomain}",this.universeDomain),this.transporter,i),this.cachedAccessToken=null,this.quotaProjectId=e.quota_project_id,typeof t?.eagerRefreshThresholdMillis!="number"?this.eagerRefreshThresholdMillis=e_.EXPIRATION_TIME_OFFSET:this.eagerRefreshThresholdMillis=t.eagerRefreshThresholdMillis,this.forceRefreshOnFailure=!!t?.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 t={Authorization:`Bearer ${(await this.getAccessToken()).token}`};return this.addSharedMetadataHeaders(t)}request(e,t){if(t)this.requestAsync(e).then(r=>t(null,r),r=>t(r,r.response));else return this.requestAsync(e)}async requestAsync(e,t=!1){let r;try{let i=await this.getRequestHeaders();e.headers=e.headers||{},i&&i["x-goog-user-project"]&&(e.headers["x-goog-user-project"]=i["x-goog-user-project"]),i&&i.Authorization&&(e.headers.Authorization=i.Authorization),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let s=o.status,c=o.config.data instanceof Qy.Readable;if(!t&&(s===401||s===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}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 t=new Date().getTime();return e.expiry_date?t>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};mn.ExternalAccountAuthorizedUserClient=da});var Pf=M(pe=>{"use strict";var Ct=pe&&pe.__classPrivateFieldGet||function(n,e,t,r){if(t==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?r:t==="a"?r.call(n):r?r.value:e.get(n)},wf=pe&&pe.__classPrivateFieldSet||function(n,e,t,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?n!==e||!i:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(n,t):i?i.value=t:e.set(n,t),t},St,En,vn,Rf;Object.defineProperty(pe,"__esModule",{value:!0});pe.GoogleAuth=pe.GoogleAuthExceptionMessages=pe.CLOUD_SDK_CLIENT_ID=void 0;var n_=U("child_process"),er=U("fs"),Zn=Bn(),r_=U("os"),pa=U("path"),i_=Zt(),o_=Hn(),s_=ss(),a_=ls(),l_=cs(),yn=xs(),Af=Rs(),_n=Ns(),c_=ua(),Qn=Tt(),ha=et(),xf=Sf(),If=_t();pe.CLOUD_SDK_CLIENT_ID="764086051850-6qr4p6gpi6hn506pt8ejuq83di341hur.apps.googleusercontent.com";pe.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.
|
|
37
|
-
To learn more about authentication and Google APIs, visit:
|
|
38
|
-
https://cloud.google.com/docs/authentication/getting-started`,NO_CREDENTIALS_FOUND:`Unable to find credentials in current environment.
|
|
39
|
-
To learn more about authentication and Google APIs, visit:
|
|
40
|
-
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.
|
|
41
|
-
To learn more about Universe Domain retrieval, visit:
|
|
42
|
-
https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};var wi=class{get isGCE(){return this.checkIsGCE}constructor(e={}){if(St.add(this),this.checkIsGCE=void 0,this.jsonContent=null,this.cachedCredential=null,En.set(this,null),this.clientOptions={},this._cachedProjectId=e.projectId||null,this.cachedCredential=e.authClient||null,this.keyFilename=e.keyFilename||e.keyFile,this.scopes=e.scopes,this.clientOptions=e.clientOptions||{},this.jsonContent=e.credentials||null,this.apiKey=e.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw new RangeError(pe.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(t=>e(null,t),e);else return this.getProjectIdAsync()}async getProjectIdOptional(){try{return await this.getProjectId()}catch(e){if(e instanceof Error&&e.message===pe.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw e}}async findAndCacheProjectId(){let e=null;if(e||(e=await this.getProductionProjectId()),e||(e=await this.getFileProjectId()),e||(e=await this.getDefaultServiceProjectId()),e||(e=await this.getGCEProjectId()),e||(e=await this.getExternalAccountClientProjectId()),e)return this._cachedProjectId=e,e;throw new Error(pe.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){var e;let t;try{t=await Zn.universe("universe-domain"),t||(t=ha.DEFAULT_UNIVERSE)}catch(r){if(r&&((e=r?.response)===null||e===void 0?void 0:e.status)===404)t=ha.DEFAULT_UNIVERSE;else throw r}return t}async getUniverseDomain(){let e=(0,If.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{e??(e=(await this.getClient()).universeDomain)}catch{e??(e=ha.DEFAULT_UNIVERSE)}return e}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(e={},t){let r;if(typeof e=="function"?t=e:r=e,t)this.getApplicationDefaultAsync(r).then(i=>t(null,i.credential,i.projectId),t);else return this.getApplicationDefaultAsync(r)}async getApplicationDefaultAsync(e={}){if(this.cachedCredential)return await Ct(this,St,"m",vn).call(this,this.cachedCredential,null);let t;if(t=await this._tryGetApplicationCredentialsFromEnvironmentVariable(e),t)return t instanceof yn.JWT?t.scopes=this.scopes:t instanceof Qn.BaseExternalAccountClient&&(t.scopes=this.getAnyScopes()),await Ct(this,St,"m",vn).call(this,t);if(t=await this._tryGetApplicationCredentialsFromWellKnownFile(e),t)return t instanceof yn.JWT?t.scopes=this.scopes:t instanceof Qn.BaseExternalAccountClient&&(t.scopes=this.getAnyScopes()),await Ct(this,St,"m",vn).call(this,t);if(await this._checkIsGCE())return e.scopes=this.getAnyScopes(),await Ct(this,St,"m",vn).call(this,new s_.Compute(e));throw new Error(pe.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async _checkIsGCE(){return this.checkIsGCE===void 0&&(this.checkIsGCE=Zn.getGCPResidency()||await Zn.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(e){let t=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!t||t.length===0)return null;try{return this._getApplicationCredentialsFromFilePath(t,e)}catch(r){throw r instanceof Error&&(r.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${r.message}`),r}}async _tryGetApplicationCredentialsFromWellKnownFile(e){let t=null;if(this._isWindows())t=process.env.APPDATA;else{let i=process.env.HOME;i&&(t=pa.join(i,".config"))}return t&&(t=pa.join(t,"gcloud","application_default_credentials.json"),er.existsSync(t)||(t=null)),t?await this._getApplicationCredentialsFromFilePath(t,e):null}async _getApplicationCredentialsFromFilePath(e,t={}){if(!e||e.length===0)throw new Error("The file path is invalid.");try{if(e=er.realpathSync(e),!er.lstatSync(e).isFile())throw new Error}catch(i){throw i instanceof Error&&(i.message=`The file at ${e} does not exist, or it is not a file. ${i.message}`),i}let r=er.createReadStream(e);return this.fromStream(r,t)}fromImpersonatedJSON(e){var t,r,i,o;if(!e)throw new Error("Must pass in a JSON object containing an impersonated refresh token");if(e.type!==_n.IMPERSONATED_ACCOUNT_TYPE)throw new Error(`The incoming JSON object does not have the "${_n.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 s=this.fromJSON(e.source_credentials);if(((t=e.service_account_impersonation_url)===null||t===void 0?void 0:t.length)>256)throw new RangeError(`Target principal is too long: ${e.service_account_impersonation_url}`);let c=(i=(r=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(e.service_account_impersonation_url))===null||r===void 0?void 0:r.groups)===null||i===void 0?void 0:i.target;if(!c)throw new RangeError(`Cannot extract target principal from ${e.service_account_impersonation_url}`);let f=(o=this.getAnyScopes())!==null&&o!==void 0?o:[];return new _n.Impersonated({...e,sourceClient:s,targetPrincipal:c,targetScopes:Array.isArray(f)?f:[f]})}fromJSON(e,t={}){let r,i=(0,If.originalOrCamelOptions)(t).get("universe_domain");return e.type===Af.USER_REFRESH_ACCOUNT_TYPE?(r=new Af.UserRefreshClient(t),r.fromJSON(e)):e.type===_n.IMPERSONATED_ACCOUNT_TYPE?r=this.fromImpersonatedJSON(e):e.type===Qn.EXTERNAL_ACCOUNT_TYPE?(r=c_.ExternalAccountClient.fromJSON(e,t),r.scopes=this.getAnyScopes()):e.type===xf.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?r=new xf.ExternalAccountAuthorizedUserClient(e,t):(t.scopes=this.scopes,r=new yn.JWT(t),this.setGapicJWTValues(r),r.fromJSON(e)),i&&(r.universeDomain=i),r}_cacheClientFromJSON(e,t){let r=this.fromJSON(e,t);return this.jsonContent=e,this.cachedCredential=r,r}fromStream(e,t={},r){let i={};if(typeof t=="function"?r=t:i=t,r)this.fromStreamAsync(e,i).then(o=>r(null,o),r);else return this.fromStreamAsync(e,i)}fromStreamAsync(e,t){return new Promise((r,i)=>{if(!e)throw new Error("Must pass in a stream containing the Google auth settings.");let o=[];e.setEncoding("utf8").on("error",i).on("data",s=>o.push(s)).on("end",()=>{try{try{let s=JSON.parse(o.join("")),c=this._cacheClientFromJSON(s,t);return r(c)}catch(s){if(!this.keyFilename)throw s;let c=new yn.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=c,this.setGapicJWTValues(c),r(c)}}catch(s){return i(s)}})})}fromAPIKey(e,t={}){return new yn.JWT({...t,apiKey:e})}_isWindows(){let e=r_.platform();return!!(e&&e.length>=3&&e.substring(0,3).toLowerCase()==="win")}async getDefaultServiceProjectId(){return new Promise(e=>{(0,n_.exec)("gcloud config config-helper --format json",(t,r)=>{if(!t&&r)try{let i=JSON.parse(r).configuration.properties.core.project;e(i);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 t=await this.getClient();if(t&&t.projectId)return t.projectId}let e=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return e?e.projectId:null}async getExternalAccountClientProjectId(){return!this.jsonContent||this.jsonContent.type!==Qn.EXTERNAL_ACCOUNT_TYPE?null:await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await Zn.project("project-id")}catch{return null}}getCredentials(e){if(e)this.getCredentialsAsync().then(t=>e(null,t),e);else return this.getCredentialsAsync()}async getCredentialsAsync(){let e=await this.getClient();if(e instanceof _n.Impersonated)return{client_email:e.getTargetPrincipal()};if(e instanceof Qn.BaseExternalAccountClient){let t=e.getServiceAccountEmail();if(t)return{client_email:t,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[t,r]=await Promise.all([Zn.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:t,universe_domain:r}}throw new Error(pe.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;wf(this,En,Ct(this,En,"f")||Ct(this,St,"m",Rf).call(this),"f");try{return await Ct(this,En,"f")}finally{wf(this,En,null,"f")}}async getIdTokenClient(e){let t=await this.getClient();if(!("fetchIdToken"in t))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 a_.IdTokenClient({targetAudience:e,idTokenProvider:t})}async getAccessToken(){return(await(await this.getClient()).getAccessToken()).token}async getRequestHeaders(e){return(await this.getClient()).getRequestHeaders(e)}async authorizeRequest(e){e=e||{};let t=e.url||e.uri,i=await(await this.getClient()).getRequestHeaders(t);return e.headers=Object.assign(e.headers||{},i),e}async request(e){return(await this.getClient()).request(e)}getEnv(){return(0,l_.getEnv)()}async sign(e,t){let r=await this.getClient(),i=await this.getUniverseDomain();if(t=t||`https://iamcredentials.${i}/v1/projects/-/serviceAccounts/`,r instanceof _n.Impersonated)return(await r.sign(e)).signedBlob;let o=(0,i_.createCrypto)();if(r instanceof yn.JWT&&r.key)return await o.sign(r.key,e);let s=await this.getCredentials();if(!s.client_email)throw new Error("Cannot sign data without `client_email`.");return this.signBlob(o,s.client_email,e,t)}async signBlob(e,t,r,i){let o=new URL(i+`${t}:signBlob`);return(await this.request({method:"POST",url:o.href,data:{payload:e.encodeBase64StringUtf8(r)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}};pe.GoogleAuth=wi;En=new WeakMap,St=new WeakSet,vn=async function(e,t=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let r=await this.getProjectIdOptional();return t&&(e.quotaProjectId=t),this.cachedCredential=e,{credential:e,projectId:r}},Rf=async function(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let e=pa.resolve(this.keyFilename),t=er.createReadStream(e);return await this.fromStreamAsync(t,this.clientOptions)}else if(this.apiKey){let e=await this.fromAPIKey(this.apiKey,this.clientOptions);e.scopes=this.scopes;let{credential:t}=await Ct(this,St,"m",vn).call(this,e);return t}else{let{credential:e}=await this.getApplicationDefaultAsync(this.clientOptions);return e}};wi.DefaultTransporter=o_.DefaultTransporter});var Nf=M(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.IAMAuth=void 0;var ga=class{constructor(e,t){this.selector=e,this.token=t,this.selector=e,this.token=t}getRequestHeaders(){return{"x-goog-iam-authority-selector":this.selector,"x-goog-iam-authorization-token":this.token}}};Ai.IAMAuth=ga});var kf=M(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.DownscopedClient=rt.EXPIRATION_TIME_OFFSET=rt.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var u_=U("stream"),f_=et(),d_=Os(),h_="urn:ietf:params:oauth:grant-type:token-exchange",p_="urn:ietf:params:oauth:token-type:access_token",g_="urn:ietf:params:oauth:token-type:access_token";rt.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;rt.EXPIRATION_TIME_OFFSET=5*60*1e3;var ma=class extends f_.AuthClient{constructor(e,t,r,i){if(super({...r,quotaProjectId:i}),this.authClient=e,this.credentialAccessBoundary=t,t.accessBoundary.accessBoundaryRules.length===0)throw new Error("At least one access boundary rule needs to be defined.");if(t.accessBoundary.accessBoundaryRules.length>rt.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw new Error(`The provided access boundary has more than ${rt.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let o of t.accessBoundary.accessBoundaryRules)if(o.availablePermissions.length===0)throw new Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new d_.StsCredentials(`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 t={Authorization:`Bearer ${(await this.getAccessToken()).token}`};return this.addSharedMetadataHeaders(t)}request(e,t){if(t)this.requestAsync(e).then(r=>t(null,r),r=>t(r,r.response));else return this.requestAsync(e)}async requestAsync(e,t=!1){let r;try{let i=await this.getRequestHeaders();e.headers=e.headers||{},i&&i["x-goog-user-project"]&&(e.headers["x-goog-user-project"]=i["x-goog-user-project"]),i&&i.Authorization&&(e.headers.Authorization=i.Authorization),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let s=o.status,c=o.config.data instanceof u_.Readable;if(!t&&(s===401||s===403)&&!c&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}async refreshAccessTokenAsync(){var e;let t=(await this.authClient.getAccessToken()).token,r={grantType:h_,requestedTokenType:p_,subjectToken:t,subjectTokenType:g_},i=await this.stsCredential.exchangeToken(r,void 0,this.credentialAccessBoundary),o=((e=this.authClient.credentials)===null||e===void 0?void 0:e.expiry_date)||null,s=i.expires_in?new Date().getTime()+i.expires_in*1e3:o;return this.cachedDownscopedAccessToken={access_token:i.access_token,expiry_date:s,res:i.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 t=new Date().getTime();return e.expiry_date?t>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};rt.DownscopedClient=ma});var bf=M(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.PassThroughClient=void 0;var m_=et(),xi=class extends m_.AuthClient{async request(e){return this.transporter.request(e)}async getAccessToken(){return{}}async getRequestHeaders(){return{}}};Ii.PassThroughClient=xi;var y_=new xi;y_.getAccessToken()});var Uf=M(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.GoogleAuth=V.auth=V.DefaultTransporter=V.PassThroughClient=V.ExecutableError=V.PluggableAuthClient=V.DownscopedClient=V.BaseExternalAccountClient=V.ExternalAccountClient=V.IdentityPoolClient=V.AwsRequestSigner=V.AwsClient=V.UserRefreshClient=V.LoginTicket=V.ClientAuthentication=V.OAuth2Client=V.CodeChallengeMethod=V.Impersonated=V.JWT=V.JWTAccess=V.IdTokenClient=V.IAMAuth=V.GCPEnv=V.Compute=V.DEFAULT_UNIVERSE=V.AuthClient=V.gaxios=V.gcpMetadata=void 0;var Mf=Pf();Object.defineProperty(V,"GoogleAuth",{enumerable:!0,get:function(){return Mf.GoogleAuth}});V.gcpMetadata=Bn();V.gaxios=qe();var Of=et();Object.defineProperty(V,"AuthClient",{enumerable:!0,get:function(){return Of.AuthClient}});Object.defineProperty(V,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return Of.DEFAULT_UNIVERSE}});var __=ss();Object.defineProperty(V,"Compute",{enumerable:!0,get:function(){return __.Compute}});var E_=cs();Object.defineProperty(V,"GCPEnv",{enumerable:!0,get:function(){return E_.GCPEnv}});var v_=Nf();Object.defineProperty(V,"IAMAuth",{enumerable:!0,get:function(){return v_.IAMAuth}});var T_=ls();Object.defineProperty(V,"IdTokenClient",{enumerable:!0,get:function(){return T_.IdTokenClient}});var C_=ws();Object.defineProperty(V,"JWTAccess",{enumerable:!0,get:function(){return C_.JWTAccess}});var S_=xs();Object.defineProperty(V,"JWT",{enumerable:!0,get:function(){return S_.JWT}});var w_=Ns();Object.defineProperty(V,"Impersonated",{enumerable:!0,get:function(){return w_.Impersonated}});var ya=Ft();Object.defineProperty(V,"CodeChallengeMethod",{enumerable:!0,get:function(){return ya.CodeChallengeMethod}});Object.defineProperty(V,"OAuth2Client",{enumerable:!0,get:function(){return ya.OAuth2Client}});Object.defineProperty(V,"ClientAuthentication",{enumerable:!0,get:function(){return ya.ClientAuthentication}});var A_=ns();Object.defineProperty(V,"LoginTicket",{enumerable:!0,get:function(){return A_.LoginTicket}});var x_=Rs();Object.defineProperty(V,"UserRefreshClient",{enumerable:!0,get:function(){return x_.UserRefreshClient}});var I_=ea();Object.defineProperty(V,"AwsClient",{enumerable:!0,get:function(){return I_.AwsClient}});var R_=Xs();Object.defineProperty(V,"AwsRequestSigner",{enumerable:!0,get:function(){return R_.AwsRequestSigner}});var P_=Ys();Object.defineProperty(V,"IdentityPoolClient",{enumerable:!0,get:function(){return P_.IdentityPoolClient}});var N_=ua();Object.defineProperty(V,"ExternalAccountClient",{enumerable:!0,get:function(){return N_.ExternalAccountClient}});var k_=Tt();Object.defineProperty(V,"BaseExternalAccountClient",{enumerable:!0,get:function(){return k_.BaseExternalAccountClient}});var b_=kf();Object.defineProperty(V,"DownscopedClient",{enumerable:!0,get:function(){return b_.DownscopedClient}});var Df=Ti();Object.defineProperty(V,"PluggableAuthClient",{enumerable:!0,get:function(){return Df.PluggableAuthClient}});Object.defineProperty(V,"ExecutableError",{enumerable:!0,get:function(){return Df.ExecutableError}});var M_=bf();Object.defineProperty(V,"PassThroughClient",{enumerable:!0,get:function(){return M_.PassThroughClient}});var O_=Hn();Object.defineProperty(V,"DefaultTransporter",{enumerable:!0,get:function(){return O_.DefaultTransporter}});var D_=new Mf.GoogleAuth;V.auth=D_});var ut=M((XA,qf)=>{"use strict";var Ff=["nodebuffer","arraybuffer","fragments"],Lf=typeof Blob<"u";Lf&&Ff.push("blob");qf.exports={BINARY_TYPES:Ff,CLOSE_TIMEOUT:3e4,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:Lf,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var tr=M((jA,Ri)=>{"use strict";var{EMPTY_BUFFER:U_}=ut(),_a=Buffer[Symbol.species];function F_(n,e){if(n.length===0)return U_;if(n.length===1)return n[0];let t=Buffer.allocUnsafe(e),r=0;for(let i=0;i<n.length;i++){let o=n[i];t.set(o,r),r+=o.length}return r<e?new _a(t.buffer,t.byteOffset,r):t}function Gf(n,e,t,r,i){for(let o=0;o<i;o++)t[r+o]=n[o]^e[o&3]}function Bf(n,e){for(let t=0;t<n.length;t++)n[t]^=e[t&3]}function L_(n){return n.length===n.buffer.byteLength?n.buffer:n.buffer.slice(n.byteOffset,n.byteOffset+n.length)}function Ea(n){if(Ea.readOnly=!0,Buffer.isBuffer(n))return n;let e;return n instanceof ArrayBuffer?e=new _a(n):ArrayBuffer.isView(n)?e=new _a(n.buffer,n.byteOffset,n.byteLength):(e=Buffer.from(n),Ea.readOnly=!1),e}Ri.exports={concat:F_,mask:Gf,toArrayBuffer:L_,toBuffer:Ea,unmask:Bf};if(!process.env.WS_NO_BUFFER_UTIL)try{let n=U("bufferutil");Ri.exports.mask=function(e,t,r,i,o){o<48?Gf(e,t,r,i,o):n.mask(e,t,r,i,o)},Ri.exports.unmask=function(e,t){e.length<32?Bf(e,t):n.unmask(e,t)}}catch{}});var $f=M((ZA,Hf)=>{"use strict";var Vf=Symbol("kDone"),va=Symbol("kRun"),Ta=class{constructor(e){this[Vf]=()=>{this.pending--,this[va]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[va]()}[va](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[Vf])}}};Hf.exports=Ta});var rr=M((QA,Yf)=>{"use strict";var nr=U("zlib"),Wf=tr(),q_=$f(),{kStatusCode:Jf}=ut(),G_=Buffer[Symbol.species],B_=Buffer.from([0,0,255,255]),Ni=Symbol("permessage-deflate"),ft=Symbol("total-length"),Tn=Symbol("callback"),wt=Symbol("buffers"),Cn=Symbol("error"),Pi,Ca=class{constructor(e,t,r){if(this._maxPayload=r|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!Pi){let i=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Pi=new q_(i)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[Tn];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,r=e.find(i=>!(t.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(t.serverMaxWindowBits===!1||typeof t.serverMaxWindowBits=="number"&&t.serverMaxWindowBits>i.server_max_window_bits)||typeof t.clientMaxWindowBits=="number"&&!i.client_max_window_bits));if(!r)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(r.server_no_context_takeover=!0),t.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof t.serverMaxWindowBits=="number"&&(r.server_max_window_bits=t.serverMaxWindowBits),typeof t.clientMaxWindowBits=="number"?r.client_max_window_bits=t.clientMaxWindowBits:(r.client_max_window_bits===!0||t.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(e){let t=e[0];if(this._options.clientNoContextTakeover===!1&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!t.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(t.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return t}normalizeParams(e){return e.forEach(t=>{Object.keys(t).forEach(r=>{let i=t[r];if(i.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(i=i[0],r==="client_max_window_bits"){if(i!==!0){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else if(r==="server_max_window_bits"){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else throw new Error(`Unknown parameter "${r}"`);t[r]=i})}),e}decompress(e,t,r){Pi.add(i=>{this._decompress(e,t,(o,s)=>{i(),r(o,s)})})}compress(e,t,r){Pi.add(i=>{this._compress(e,t,(o,s)=>{i(),r(o,s)})})}_decompress(e,t,r){let i=this._isServer?"client":"server";if(!this._inflate){let o=`${i}_max_window_bits`,s=typeof this.params[o]!="number"?nr.Z_DEFAULT_WINDOWBITS:this.params[o];this._inflate=nr.createInflateRaw({...this._options.zlibInflateOptions,windowBits:s}),this._inflate[Ni]=this,this._inflate[ft]=0,this._inflate[wt]=[],this._inflate.on("error",H_),this._inflate.on("data",Kf)}this._inflate[Tn]=r,this._inflate.write(e),t&&this._inflate.write(B_),this._inflate.flush(()=>{let o=this._inflate[Cn];if(o){this._inflate.close(),this._inflate=null,r(o);return}let s=Wf.concat(this._inflate[wt],this._inflate[ft]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[ft]=0,this._inflate[wt]=[],t&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),r(null,s)})}_compress(e,t,r){let i=this._isServer?"server":"client";if(!this._deflate){let o=`${i}_max_window_bits`,s=typeof this.params[o]!="number"?nr.Z_DEFAULT_WINDOWBITS:this.params[o];this._deflate=nr.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:s}),this._deflate[ft]=0,this._deflate[wt]=[],this._deflate.on("data",V_)}this._deflate[Tn]=r,this._deflate.write(e),this._deflate.flush(nr.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let o=Wf.concat(this._deflate[wt],this._deflate[ft]);t&&(o=new G_(o.buffer,o.byteOffset,o.length-4)),this._deflate[Tn]=null,this._deflate[ft]=0,this._deflate[wt]=[],t&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),r(null,o)})}};Yf.exports=Ca;function V_(n){this[wt].push(n),this[ft]+=n.length}function Kf(n){if(this[ft]+=n.length,this[Ni]._maxPayload<1||this[ft]<=this[Ni]._maxPayload){this[wt].push(n);return}this[Cn]=new RangeError("Max payload size exceeded"),this[Cn].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[Cn][Jf]=1009,this.removeListener("data",Kf),this.reset()}function H_(n){if(this[Ni]._inflate=null,this[Cn]){this[Tn](this[Cn]);return}n[Jf]=1007,this[Tn](n)}});var Sn=M((ex,ki)=>{"use strict";var{isUtf8:zf}=U("buffer"),{hasBlob:$_}=ut(),W_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function J_(n){return n>=1e3&&n<=1014&&n!==1004&&n!==1005&&n!==1006||n>=3e3&&n<=4999}function Sa(n){let e=n.length,t=0;for(;t<e;)if(!(n[t]&128))t++;else if((n[t]&224)===192){if(t+1===e||(n[t+1]&192)!==128||(n[t]&254)===192)return!1;t+=2}else if((n[t]&240)===224){if(t+2>=e||(n[t+1]&192)!==128||(n[t+2]&192)!==128||n[t]===224&&(n[t+1]&224)===128||n[t]===237&&(n[t+1]&224)===160)return!1;t+=3}else if((n[t]&248)===240){if(t+3>=e||(n[t+1]&192)!==128||(n[t+2]&192)!==128||(n[t+3]&192)!==128||n[t]===240&&(n[t+1]&240)===128||n[t]===244&&n[t+1]>143||n[t]>244)return!1;t+=4}else return!1;return!0}function K_(n){return $_&&typeof n=="object"&&typeof n.arrayBuffer=="function"&&typeof n.type=="string"&&typeof n.stream=="function"&&(n[Symbol.toStringTag]==="Blob"||n[Symbol.toStringTag]==="File")}ki.exports={isBlob:K_,isValidStatusCode:J_,isValidUTF8:Sa,tokenChars:W_};if(zf)ki.exports.isValidUTF8=function(n){return n.length<24?Sa(n):zf(n)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let n=U("utf-8-validate");ki.exports.isValidUTF8=function(e){return e.length<32?Sa(e):n(e)}}catch{}});var Ra=M((tx,nd)=>{"use strict";var{Writable:Y_}=U("stream"),Xf=rr(),{BINARY_TYPES:z_,EMPTY_BUFFER:jf,kStatusCode:X_,kWebSocket:j_}=ut(),{concat:wa,toArrayBuffer:Z_,unmask:Q_}=tr(),{isValidStatusCode:e0,isValidUTF8:Zf}=Sn(),bi=Buffer[Symbol.species],De=0,Qf=1,ed=2,td=3,Aa=4,xa=5,Mi=6,Ia=class extends Y_{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||z_[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[j_]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=De}_write(e,t,r){if(this._opcode===8&&this._state==De)return r();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(r)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=new bi(r.buffer,r.byteOffset+e,r.length-e),new bi(r.buffer,r.byteOffset,e)}let t=Buffer.allocUnsafe(e);do{let r=this._buffers[0],i=t.length-e;e>=r.length?t.set(this._buffers.shift(),i):(t.set(new Uint8Array(r.buffer,r.byteOffset,e),i),this._buffers[0]=new bi(r.buffer,r.byteOffset+e,r.length-e)),e-=r.length}while(e>0);return t}startLoop(e){this._loop=!0;do switch(this._state){case De:this.getInfo(e);break;case Qf:this.getPayloadLength16(e);break;case ed:this.getPayloadLength64(e);break;case td:this.getMask();break;case Aa:this.getData(e);break;case xa:case Mi:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<2){this._loop=!1;return}let t=this.consume(2);if(t[0]&48){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(i);return}let r=(t[0]&64)===64;if(r&&!this._extensions[Xf.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._fin=(t[0]&128)===128,this._opcode=t[0]&15,this._payloadLength=t[1]&127,this._opcode===0){if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");e(i);return}if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");e(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(t[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");e(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");e(i);return}this._payloadLength===126?this._state=Qf:this._payloadLength===127?this._state=ed:this.haveLength(e)}getPayloadLength16(e){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){if(this._bufferedBytes<8){this._loop=!1;return}let t=this.consume(8),r=t.readUInt32BE(0);if(r>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");e(i);return}this._payloadLength=r*Math.pow(2,32)+t.readUInt32BE(4),this.haveLength(e)}haveLength(e){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let t=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");e(t);return}this._masked?this._state=td:this._state=Aa}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Aa}getData(e){let t=jf;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3]&&Q_(t,this._mask)}if(this._opcode>7){this.controlMessage(t,e);return}if(this._compressed){this._state=xa,this.decompress(t,e);return}t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage(e)}decompress(e,t){this._extensions[Xf.extensionName].decompress(e,this._fin,(i,o)=>{if(i)return t(i);if(o.length){if(this._messageLength+=o.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let s=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(s);return}this._fragments.push(o)}this.dataMessage(t),this._state===De&&this.startLoop(t)})}dataMessage(e){if(!this._fin){this._state=De;return}let t=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=wa(r,t):this._binaryType==="arraybuffer"?i=Z_(wa(r,t)):this._binaryType==="blob"?i=new Blob(r):i=r,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=De):(this._state=Mi,setImmediate(()=>{this.emit("message",i,!0),this._state=De,this.startLoop(e)}))}else{let i=wa(r,t);if(!this._skipUTF8Validation&&!Zf(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");e(o);return}this._state===xa||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=De):(this._state=Mi,setImmediate(()=>{this.emit("message",i,!1),this._state=De,this.startLoop(e)}))}}controlMessage(e,t){if(this._opcode===8){if(e.length===0)this._loop=!1,this.emit("conclude",1005,jf),this.end();else{let r=e.readUInt16BE(0);if(!e0(r)){let o=this.createError(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");t(o);return}let i=new bi(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!Zf(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(o);return}this._loop=!1,this.emit("conclude",r,i),this.end()}this._state=De;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",e),this._state=De):(this._state=Mi,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=De,this.startLoop(t)}))}createError(e,t,r,i,o){this._loop=!1,this._errored=!0;let s=new e(r?`Invalid WebSocket frame: ${t}`:t);return Error.captureStackTrace(s,this.createError),s.code=o,s[X_]=i,s}};nd.exports=Ia});var ka=M((rx,od)=>{"use strict";var{Duplex:nx}=U("stream"),{randomFillSync:t0}=U("crypto"),rd=rr(),{EMPTY_BUFFER:n0,kWebSocket:r0,NOOP:i0}=ut(),{isBlob:wn,isValidStatusCode:o0}=Sn(),{mask:id,toBuffer:Gt}=tr(),Ue=Symbol("kByteLength"),s0=Buffer.alloc(4),Oi=8*1024,Bt,An=Oi,Ye=0,a0=1,l0=2,Pa=class n{constructor(e,t,r){this._extensions=t||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=Ye,this.onerror=i0,this[r0]=void 0}static frame(e,t){let r,i=!1,o=2,s=!1;t.mask&&(r=t.maskBuffer||s0,t.generateMask?t.generateMask(r):(An===Oi&&(Bt===void 0&&(Bt=Buffer.alloc(Oi)),t0(Bt,0,Oi),An=0),r[0]=Bt[An++],r[1]=Bt[An++],r[2]=Bt[An++],r[3]=Bt[An++]),s=(r[0]|r[1]|r[2]|r[3])===0,o=6);let c;typeof e=="string"?(!t.mask||s)&&t[Ue]!==void 0?c=t[Ue]:(e=Buffer.from(e),c=e.length):(c=e.length,i=t.mask&&t.readOnly&&!s);let f=c;c>=65536?(o+=8,f=127):c>125&&(o+=2,f=126);let u=Buffer.allocUnsafe(i?c+o:o);return u[0]=t.fin?t.opcode|128:t.opcode,t.rsv1&&(u[0]|=64),u[1]=f,f===126?u.writeUInt16BE(c,2):f===127&&(u[2]=u[3]=0,u.writeUIntBE(c,4,6)),t.mask?(u[1]|=128,u[o-4]=r[0],u[o-3]=r[1],u[o-2]=r[2],u[o-1]=r[3],s?[u,e]:i?(id(e,r,u,o,c),[u]):(id(e,r,e,0,c),[u,e])):[u,e]}close(e,t,r,i){let o;if(e===void 0)o=n0;else{if(typeof e!="number"||!o0(e))throw new TypeError("First argument must be a valid error code number");if(t===void 0||!t.length)o=Buffer.allocUnsafe(2),o.writeUInt16BE(e,0);else{let c=Buffer.byteLength(t);if(c>123)throw new RangeError("The message must not be greater than 123 bytes");o=Buffer.allocUnsafe(2+c),o.writeUInt16BE(e,0),typeof t=="string"?o.write(t,2):o.set(t,2)}}let s={[Ue]:o.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==Ye?this.enqueue([this.dispatch,o,!1,s,i]):this.sendFrame(n.frame(o,s),i)}ping(e,t,r){let i,o;if(typeof e=="string"?(i=Buffer.byteLength(e),o=!1):wn(e)?(i=e.size,o=!1):(e=Gt(e),i=e.length,o=Gt.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let s={[Ue]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:o,rsv1:!1};wn(e)?this._state!==Ye?this.enqueue([this.getBlobData,e,!1,s,r]):this.getBlobData(e,!1,s,r):this._state!==Ye?this.enqueue([this.dispatch,e,!1,s,r]):this.sendFrame(n.frame(e,s),r)}pong(e,t,r){let i,o;if(typeof e=="string"?(i=Buffer.byteLength(e),o=!1):wn(e)?(i=e.size,o=!1):(e=Gt(e),i=e.length,o=Gt.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let s={[Ue]:i,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:o,rsv1:!1};wn(e)?this._state!==Ye?this.enqueue([this.getBlobData,e,!1,s,r]):this.getBlobData(e,!1,s,r):this._state!==Ye?this.enqueue([this.dispatch,e,!1,s,r]):this.sendFrame(n.frame(e,s),r)}send(e,t,r){let i=this._extensions[rd.extensionName],o=t.binary?2:1,s=t.compress,c,f;typeof e=="string"?(c=Buffer.byteLength(e),f=!1):wn(e)?(c=e.size,f=!1):(e=Gt(e),c=e.length,f=Gt.readOnly),this._firstFragment?(this._firstFragment=!1,s&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(s=c>=i._threshold),this._compress=s):(s=!1,o=0),t.fin&&(this._firstFragment=!0);let u={[Ue]:c,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:o,readOnly:f,rsv1:s};wn(e)?this._state!==Ye?this.enqueue([this.getBlobData,e,this._compress,u,r]):this.getBlobData(e,this._compress,u,r):this._state!==Ye?this.enqueue([this.dispatch,e,this._compress,u,r]):this.dispatch(e,this._compress,u,r)}getBlobData(e,t,r,i){this._bufferedBytes+=r[Ue],this._state=l0,e.arrayBuffer().then(o=>{if(this._socket.destroyed){let c=new Error("The socket was closed while the blob was being read");process.nextTick(Na,this,c,i);return}this._bufferedBytes-=r[Ue];let s=Gt(o);t?this.dispatch(s,t,r,i):(this._state=Ye,this.sendFrame(n.frame(s,r),i),this.dequeue())}).catch(o=>{process.nextTick(c0,this,o,i)})}dispatch(e,t,r,i){if(!t){this.sendFrame(n.frame(e,r),i);return}let o=this._extensions[rd.extensionName];this._bufferedBytes+=r[Ue],this._state=a0,o.compress(e,r.fin,(s,c)=>{if(this._socket.destroyed){let f=new Error("The socket was closed while data was being compressed");Na(this,f,i);return}this._bufferedBytes-=r[Ue],this._state=Ye,r.readOnly=!1,this.sendFrame(n.frame(c,r),i),this.dequeue()})}dequeue(){for(;this._state===Ye&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][Ue],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][Ue],this._queue.push(e)}sendFrame(e,t){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}};od.exports=Pa;function Na(n,e,t){typeof t=="function"&&t(e);for(let r=0;r<n._queue.length;r++){let i=n._queue[r],o=i[i.length-1];typeof o=="function"&&o(e)}}function c0(n,e,t){Na(n,e,t),n.onerror(e)}});var pd=M((ix,hd)=>{"use strict";var{kForOnEventAttribute:ir,kListener:ba}=ut(),sd=Symbol("kCode"),ad=Symbol("kData"),ld=Symbol("kError"),cd=Symbol("kMessage"),ud=Symbol("kReason"),xn=Symbol("kTarget"),fd=Symbol("kType"),dd=Symbol("kWasClean"),dt=class{constructor(e){this[xn]=null,this[fd]=e}get target(){return this[xn]}get type(){return this[fd]}};Object.defineProperty(dt.prototype,"target",{enumerable:!0});Object.defineProperty(dt.prototype,"type",{enumerable:!0});var Vt=class extends dt{constructor(e,t={}){super(e),this[sd]=t.code===void 0?0:t.code,this[ud]=t.reason===void 0?"":t.reason,this[dd]=t.wasClean===void 0?!1:t.wasClean}get code(){return this[sd]}get reason(){return this[ud]}get wasClean(){return this[dd]}};Object.defineProperty(Vt.prototype,"code",{enumerable:!0});Object.defineProperty(Vt.prototype,"reason",{enumerable:!0});Object.defineProperty(Vt.prototype,"wasClean",{enumerable:!0});var In=class extends dt{constructor(e,t={}){super(e),this[ld]=t.error===void 0?null:t.error,this[cd]=t.message===void 0?"":t.message}get error(){return this[ld]}get message(){return this[cd]}};Object.defineProperty(In.prototype,"error",{enumerable:!0});Object.defineProperty(In.prototype,"message",{enumerable:!0});var or=class extends dt{constructor(e,t={}){super(e),this[ad]=t.data===void 0?null:t.data}get data(){return this[ad]}};Object.defineProperty(or.prototype,"data",{enumerable:!0});var u0={addEventListener(n,e,t={}){for(let i of this.listeners(n))if(!t[ir]&&i[ba]===e&&!i[ir])return;let r;if(n==="message")r=function(o,s){let c=new or("message",{data:s?o:o.toString()});c[xn]=this,Di(e,this,c)};else if(n==="close")r=function(o,s){let c=new Vt("close",{code:o,reason:s.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});c[xn]=this,Di(e,this,c)};else if(n==="error")r=function(o){let s=new In("error",{error:o,message:o.message});s[xn]=this,Di(e,this,s)};else if(n==="open")r=function(){let o=new dt("open");o[xn]=this,Di(e,this,o)};else return;r[ir]=!!t[ir],r[ba]=e,t.once?this.once(n,r):this.on(n,r)},removeEventListener(n,e){for(let t of this.listeners(n))if(t[ba]===e&&!t[ir]){this.removeListener(n,t);break}}};hd.exports={CloseEvent:Vt,ErrorEvent:In,Event:dt,EventTarget:u0,MessageEvent:or};function Di(n,e,t){typeof n=="object"&&n.handleEvent?n.handleEvent.call(n,t):n.call(e,t)}});var Ma=M((ox,gd)=>{"use strict";var{tokenChars:sr}=Sn();function it(n,e,t){n[e]===void 0?n[e]=[t]:n[e].push(t)}function f0(n){let e=Object.create(null),t=Object.create(null),r=!1,i=!1,o=!1,s,c,f=-1,u=-1,d=-1,h=0;for(;h<n.length;h++)if(u=n.charCodeAt(h),s===void 0)if(d===-1&&sr[u]===1)f===-1&&(f=h);else if(h!==0&&(u===32||u===9))d===-1&&f!==-1&&(d=h);else if(u===59||u===44){if(f===-1)throw new SyntaxError(`Unexpected character at index ${h}`);d===-1&&(d=h);let v=n.slice(f,d);u===44?(it(e,v,t),t=Object.create(null)):s=v,f=d=-1}else throw new SyntaxError(`Unexpected character at index ${h}`);else if(c===void 0)if(d===-1&&sr[u]===1)f===-1&&(f=h);else if(u===32||u===9)d===-1&&f!==-1&&(d=h);else if(u===59||u===44){if(f===-1)throw new SyntaxError(`Unexpected character at index ${h}`);d===-1&&(d=h),it(t,n.slice(f,d),!0),u===44&&(it(e,s,t),t=Object.create(null),s=void 0),f=d=-1}else if(u===61&&f!==-1&&d===-1)c=n.slice(f,h),f=d=-1;else throw new SyntaxError(`Unexpected character at index ${h}`);else if(i){if(sr[u]!==1)throw new SyntaxError(`Unexpected character at index ${h}`);f===-1?f=h:r||(r=!0),i=!1}else if(o)if(sr[u]===1)f===-1&&(f=h);else if(u===34&&f!==-1)o=!1,d=h;else if(u===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${h}`);else if(u===34&&n.charCodeAt(h-1)===61)o=!0;else if(d===-1&&sr[u]===1)f===-1&&(f=h);else if(f!==-1&&(u===32||u===9))d===-1&&(d=h);else if(u===59||u===44){if(f===-1)throw new SyntaxError(`Unexpected character at index ${h}`);d===-1&&(d=h);let v=n.slice(f,d);r&&(v=v.replace(/\\/g,""),r=!1),it(t,c,v),u===44&&(it(e,s,t),t=Object.create(null),s=void 0),c=void 0,f=d=-1}else throw new SyntaxError(`Unexpected character at index ${h}`);if(f===-1||o||u===32||u===9)throw new SyntaxError("Unexpected end of input");d===-1&&(d=h);let g=n.slice(f,d);return s===void 0?it(e,g,t):(c===void 0?it(t,g,!0):r?it(t,c,g.replace(/\\/g,"")):it(t,c,g),it(e,s,t)),e}function d0(n){return Object.keys(n).map(e=>{let t=n[e];return Array.isArray(t)||(t=[t]),t.map(r=>[e].concat(Object.keys(r).map(i=>{let o=r[i];return Array.isArray(o)||(o=[o]),o.map(s=>s===!0?i:`${i}=${s}`).join("; ")})).join("; ")).join(", ")}).join(", ")}gd.exports={format:d0,parse:f0}});var qi=M((lx,Id)=>{"use strict";var h0=U("events"),p0=U("https"),g0=U("http"),_d=U("net"),m0=U("tls"),{randomBytes:y0,createHash:_0}=U("crypto"),{Duplex:sx,Readable:ax}=U("stream"),{URL:Oa}=U("url"),At=rr(),E0=Ra(),v0=ka(),{isBlob:T0}=Sn(),{BINARY_TYPES:md,CLOSE_TIMEOUT:C0,EMPTY_BUFFER:Ui,GUID:S0,kForOnEventAttribute:Da,kListener:w0,kStatusCode:A0,kWebSocket:fe,NOOP:Ed}=ut(),{EventTarget:{addEventListener:x0,removeEventListener:I0}}=pd(),{format:R0,parse:P0}=Ma(),{toBuffer:N0}=tr(),vd=Symbol("kAborted"),Ua=[8,13],ht=["CONNECTING","OPEN","CLOSING","CLOSED"],k0=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,ne=class n extends h0{constructor(e,t,r){super(),this._binaryType=md[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Ui,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=n.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,t===void 0?t=[]:Array.isArray(t)||(typeof t=="object"&&t!==null?(r=t,t=[]):t=[t]),Td(this,e,t,r)):(this._autoPong=r.autoPong,this._closeTimeout=r.closeTimeout,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(e){md.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,t,r){let i=new E0({allowSynchronousEvents:r.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation}),o=new v0(e,this._extensions,r.generateMask);this._receiver=i,this._sender=o,this._socket=e,i[fe]=this,o[fe]=this,e[fe]=this,i.on("conclude",O0),i.on("drain",D0),i.on("error",U0),i.on("message",F0),i.on("ping",L0),i.on("pong",q0),o.onerror=G0,e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",wd),e.on("data",Li),e.on("end",Ad),e.on("error",xd),this._readyState=n.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=n.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[At.extensionName]&&this._extensions[At.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=n.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==n.CLOSED){if(this.readyState===n.CONNECTING){Ie(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===n.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=n.CLOSING,this._sender.close(e,t,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),Sd(this)}}pause(){this.readyState===n.CONNECTING||this.readyState===n.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,t,r){if(this.readyState===n.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==n.OPEN){Fa(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.ping(e||Ui,t,r)}pong(e,t,r){if(this.readyState===n.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==n.OPEN){Fa(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.pong(e||Ui,t,r)}resume(){this.readyState===n.CONNECTING||this.readyState===n.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,r){if(this.readyState===n.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"&&(r=t,t={}),typeof e=="number"&&(e=e.toString()),this.readyState!==n.OPEN){Fa(this,e,r);return}let i={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...t};this._extensions[At.extensionName]||(i.compress=!1),this._sender.send(e||Ui,i,r)}terminate(){if(this.readyState!==n.CLOSED){if(this.readyState===n.CONNECTING){Ie(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=n.CLOSING,this._socket.destroy())}}};Object.defineProperty(ne,"CONNECTING",{enumerable:!0,value:ht.indexOf("CONNECTING")});Object.defineProperty(ne.prototype,"CONNECTING",{enumerable:!0,value:ht.indexOf("CONNECTING")});Object.defineProperty(ne,"OPEN",{enumerable:!0,value:ht.indexOf("OPEN")});Object.defineProperty(ne.prototype,"OPEN",{enumerable:!0,value:ht.indexOf("OPEN")});Object.defineProperty(ne,"CLOSING",{enumerable:!0,value:ht.indexOf("CLOSING")});Object.defineProperty(ne.prototype,"CLOSING",{enumerable:!0,value:ht.indexOf("CLOSING")});Object.defineProperty(ne,"CLOSED",{enumerable:!0,value:ht.indexOf("CLOSED")});Object.defineProperty(ne.prototype,"CLOSED",{enumerable:!0,value:ht.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(n=>{Object.defineProperty(ne.prototype,n,{enumerable:!0})});["open","error","close","message"].forEach(n=>{Object.defineProperty(ne.prototype,`on${n}`,{enumerable:!0,get(){for(let e of this.listeners(n))if(e[Da])return e[w0];return null},set(e){for(let t of this.listeners(n))if(t[Da]){this.removeListener(n,t);break}typeof e=="function"&&this.addEventListener(n,e,{[Da]:!0})}})});ne.prototype.addEventListener=x0;ne.prototype.removeEventListener=I0;Id.exports=ne;function Td(n,e,t,r){let i={allowSynchronousEvents:!0,autoPong:!0,closeTimeout:C0,protocolVersion:Ua[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...r,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(n._autoPong=i.autoPong,n._closeTimeout=i.closeTimeout,!Ua.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${Ua.join(", ")})`);let o;if(e instanceof Oa)o=e;else try{o=new Oa(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),n._url=o.href;let s=o.protocol==="wss:",c=o.protocol==="ws+unix:",f;if(o.protocol!=="ws:"&&!s&&!c?f=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:c&&!o.pathname?f="The URL's pathname is empty":o.hash&&(f="The URL contains a fragment identifier"),f){let C=new SyntaxError(f);if(n._redirects===0)throw C;Fi(n,C);return}let u=s?443:80,d=y0(16).toString("base64"),h=s?p0.request:g0.request,g=new Set,v;if(i.createConnection=i.createConnection||(s?M0:b0),i.defaultPort=i.defaultPort||u,i.port=o.port||u,i.host=o.hostname.startsWith("[")?o.hostname.slice(1,-1):o.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":d,Connection:"Upgrade",Upgrade:"websocket"},i.path=o.pathname+o.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(v=new At(i.perMessageDeflate!==!0?i.perMessageDeflate:{},!1,i.maxPayload),i.headers["Sec-WebSocket-Extensions"]=R0({[At.extensionName]:v.offer()})),t.length){for(let C of t){if(typeof C!="string"||!k0.test(C)||g.has(C))throw new SyntaxError("An invalid or duplicated subprotocol was specified");g.add(C)}i.headers["Sec-WebSocket-Protocol"]=t.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(o.username||o.password)&&(i.auth=`${o.username}:${o.password}`),c){let C=i.path.split(":");i.socketPath=C[0],i.path=C[1]}let w;if(i.followRedirects){if(n._redirects===0){n._originalIpc=c,n._originalSecure=s,n._originalHostOrSocketPath=c?i.socketPath:o.host;let C=r&&r.headers;if(r={...r,headers:{}},C)for(let[N,k]of Object.entries(C))r.headers[N.toLowerCase()]=k}else if(n.listenerCount("redirect")===0){let C=c?n._originalIpc?i.socketPath===n._originalHostOrSocketPath:!1:n._originalIpc?!1:o.host===n._originalHostOrSocketPath;(!C||n._originalSecure&&!s)&&(delete i.headers.authorization,delete i.headers.cookie,C||delete i.headers.host,i.auth=void 0)}i.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),w=n._req=h(i),n._redirects&&n.emit("redirect",n.url,w)}else w=n._req=h(i);i.timeout&&w.on("timeout",()=>{Ie(n,w,"Opening handshake has timed out")}),w.on("error",C=>{w===null||w[vd]||(w=n._req=null,Fi(n,C))}),w.on("response",C=>{let N=C.headers.location,k=C.statusCode;if(N&&i.followRedirects&&k>=300&&k<400){if(++n._redirects>i.maxRedirects){Ie(n,w,"Maximum redirects exceeded");return}w.abort();let G;try{G=new Oa(N,e)}catch{let q=new SyntaxError(`Invalid URL: ${N}`);Fi(n,q);return}Td(n,G,t,r)}else n.emit("unexpected-response",w,C)||Ie(n,w,`Unexpected server response: ${C.statusCode}`)}),w.on("upgrade",(C,N,k)=>{if(n.emit("upgrade",C),n.readyState!==ne.CONNECTING)return;w=n._req=null;let G=C.headers.upgrade;if(G===void 0||G.toLowerCase()!=="websocket"){Ie(n,N,"Invalid Upgrade header");return}let L=_0("sha1").update(d+S0).digest("base64");if(C.headers["sec-websocket-accept"]!==L){Ie(n,N,"Invalid Sec-WebSocket-Accept header");return}let q=C.headers["sec-websocket-protocol"],F;if(q!==void 0?g.size?g.has(q)||(F="Server sent an invalid subprotocol"):F="Server sent a subprotocol but none was requested":g.size&&(F="Server sent no subprotocol"),F){Ie(n,N,F);return}q&&(n._protocol=q);let B=C.headers["sec-websocket-extensions"];if(B!==void 0){if(!v){Ie(n,N,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let J;try{J=P0(B)}catch{Ie(n,N,"Invalid Sec-WebSocket-Extensions header");return}let Y=Object.keys(J);if(Y.length!==1||Y[0]!==At.extensionName){Ie(n,N,"Server indicated an extension that was not requested");return}try{v.accept(J[At.extensionName])}catch{Ie(n,N,"Invalid Sec-WebSocket-Extensions header");return}n._extensions[At.extensionName]=v}n.setSocket(N,k,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(w,n):w.end()}function Fi(n,e){n._readyState=ne.CLOSING,n._errorEmitted=!0,n.emit("error",e),n.emitClose()}function b0(n){return n.path=n.socketPath,_d.connect(n)}function M0(n){return n.path=void 0,!n.servername&&n.servername!==""&&(n.servername=_d.isIP(n.host)?"":n.host),m0.connect(n)}function Ie(n,e,t){n._readyState=ne.CLOSING;let r=new Error(t);Error.captureStackTrace(r,Ie),e.setHeader?(e[vd]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(Fi,n,r)):(e.destroy(r),e.once("error",n.emit.bind(n,"error")),e.once("close",n.emitClose.bind(n)))}function Fa(n,e,t){if(e){let r=T0(e)?e.size:N0(e).length;n._socket?n._sender._bufferedBytes+=r:n._bufferedAmount+=r}if(t){let r=new Error(`WebSocket is not open: readyState ${n.readyState} (${ht[n.readyState]})`);process.nextTick(t,r)}}function O0(n,e){let t=this[fe];t._closeFrameReceived=!0,t._closeMessage=e,t._closeCode=n,t._socket[fe]!==void 0&&(t._socket.removeListener("data",Li),process.nextTick(Cd,t._socket),n===1005?t.close():t.close(n,e))}function D0(){let n=this[fe];n.isPaused||n._socket.resume()}function U0(n){let e=this[fe];e._socket[fe]!==void 0&&(e._socket.removeListener("data",Li),process.nextTick(Cd,e._socket),e.close(n[A0])),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",n))}function yd(){this[fe].emitClose()}function F0(n,e){this[fe].emit("message",n,e)}function L0(n){let e=this[fe];e._autoPong&&e.pong(n,!this._isServer,Ed),e.emit("ping",n)}function q0(n){this[fe].emit("pong",n)}function Cd(n){n.resume()}function G0(n){let e=this[fe];e.readyState!==ne.CLOSED&&(e.readyState===ne.OPEN&&(e._readyState=ne.CLOSING,Sd(e)),this._socket.end(),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",n)))}function Sd(n){n._closeTimer=setTimeout(n._socket.destroy.bind(n._socket),n._closeTimeout)}function wd(){let n=this[fe];if(this.removeListener("close",wd),this.removeListener("data",Li),this.removeListener("end",Ad),n._readyState=ne.CLOSING,!this._readableState.endEmitted&&!n._closeFrameReceived&&!n._receiver._writableState.errorEmitted&&this._readableState.length!==0){let e=this.read(this._readableState.length);n._receiver.write(e)}n._receiver.end(),this[fe]=void 0,clearTimeout(n._closeTimer),n._receiver._writableState.finished||n._receiver._writableState.errorEmitted?n.emitClose():(n._receiver.on("error",yd),n._receiver.on("finish",yd))}function Li(n){this[fe]._receiver.write(n)||this.pause()}function Ad(){let n=this[fe];n._readyState=ne.CLOSING,n._receiver.end(),this.end()}function xd(){let n=this[fe];this.removeListener("error",xd),this.on("error",Ed),n&&(n._readyState=ne.CLOSING,this.destroy())}});var kd=M((ux,Nd)=>{"use strict";var cx=qi(),{Duplex:B0}=U("stream");function Rd(n){n.emit("close")}function V0(){!this.destroyed&&this._writableState.finished&&this.destroy()}function Pd(n){this.removeListener("error",Pd),this.destroy(),this.listenerCount("error")===0&&this.emit("error",n)}function H0(n,e){let t=!0,r=new B0({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return n.on("message",function(o,s){let c=!s&&r._readableState.objectMode?o.toString():o;r.push(c)||n.pause()}),n.once("error",function(o){r.destroyed||(t=!1,r.destroy(o))}),n.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(i,o){if(n.readyState===n.CLOSED){o(i),process.nextTick(Rd,r);return}let s=!1;n.once("error",function(f){s=!0,o(f)}),n.once("close",function(){s||o(i),process.nextTick(Rd,r)}),t&&n.terminate()},r._final=function(i){if(n.readyState===n.CONNECTING){n.once("open",function(){r._final(i)});return}n._socket!==null&&(n._socket._writableState.finished?(i(),r._readableState.endEmitted&&r.destroy()):(n._socket.once("finish",function(){i()}),n.close()))},r._read=function(){n.isPaused&&n.resume()},r._write=function(i,o,s){if(n.readyState===n.CONNECTING){n.once("open",function(){r._write(i,o,s)});return}n.send(i,s)},r.on("end",V0),r.on("error",Pd),r}Nd.exports=H0});var Md=M((fx,bd)=>{"use strict";var{tokenChars:$0}=Sn();function W0(n){let e=new Set,t=-1,r=-1,i=0;for(i;i<n.length;i++){let s=n.charCodeAt(i);if(r===-1&&$0[s]===1)t===-1&&(t=i);else if(i!==0&&(s===32||s===9))r===-1&&t!==-1&&(r=i);else if(s===44){if(t===-1)throw new SyntaxError(`Unexpected character at index ${i}`);r===-1&&(r=i);let c=n.slice(t,r);if(e.has(c))throw new SyntaxError(`The "${c}" subprotocol is duplicated`);e.add(c),t=r=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(t===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let o=n.slice(t,i);if(e.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);return e.add(o),e}bd.exports={parse:W0}});var Gd=M((hx,qd)=>{"use strict";var J0=U("events"),Gi=U("http"),{Duplex:dx}=U("stream"),{createHash:K0}=U("crypto"),Od=Ma(),Ht=rr(),Y0=Md(),z0=qi(),{CLOSE_TIMEOUT:X0,GUID:j0,kWebSocket:Z0}=ut(),Q0=/^[+/0-9A-Za-z]{22}==$/,Dd=0,Ud=1,Ld=2,La=class extends J0{constructor(e,t){if(super(),e={allowSynchronousEvents:!0,autoPong:!0,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,closeTimeout:X0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:z0,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=Gi.createServer((r,i)=>{let o=Gi.STATUS_CODES[426];i.writeHead(426,{"Content-Length":o.length,"Content-Type":"text/plain"}),i.end(o)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=eE(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,o,s)=>{this.handleUpgrade(i,o,s,r)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=Dd}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===Ld){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(ar,this);return}if(e&&this.once("close",e),this._state!==Ud)if(this._state=Ud,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(ar,this):process.nextTick(ar,this);else{let t=this._server;this._removeListeners(),this._removeListeners=this._server=null,t.close(()=>{ar(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((t!==-1?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,r,i){t.on("error",Fd);let o=e.headers["sec-websocket-key"],s=e.headers.upgrade,c=+e.headers["sec-websocket-version"];if(e.method!=="GET"){$t(this,e,t,405,"Invalid HTTP method");return}if(s===void 0||s.toLowerCase()!=="websocket"){$t(this,e,t,400,"Invalid Upgrade header");return}if(o===void 0||!Q0.test(o)){$t(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");return}if(c!==13&&c!==8){$t(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(e)){lr(t,400);return}let f=e.headers["sec-websocket-protocol"],u=new Set;if(f!==void 0)try{u=Y0.parse(f)}catch{$t(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let d=e.headers["sec-websocket-extensions"],h={};if(this.options.perMessageDeflate&&d!==void 0){let g=new Ht(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let v=Od.parse(d);v[Ht.extensionName]&&(g.accept(v[Ht.extensionName]),h[Ht.extensionName]=g)}catch{$t(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let g={origin:e.headers[`${c===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(g,(v,w,C,N)=>{if(!v)return lr(t,w||401,C,N);this.completeUpgrade(h,o,u,e,t,r,i)});return}if(!this.options.verifyClient(g))return lr(t,401)}this.completeUpgrade(h,o,u,e,t,r,i)}completeUpgrade(e,t,r,i,o,s,c){if(!o.readable||!o.writable)return o.destroy();if(o[Z0])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>Dd)return lr(o,503);let u=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${K0("sha1").update(t+j0).digest("base64")}`],d=new this.options.WebSocket(null,void 0,this.options);if(r.size){let h=this.options.handleProtocols?this.options.handleProtocols(r,i):r.values().next().value;h&&(u.push(`Sec-WebSocket-Protocol: ${h}`),d._protocol=h)}if(e[Ht.extensionName]){let h=e[Ht.extensionName].params,g=Od.format({[Ht.extensionName]:[h]});u.push(`Sec-WebSocket-Extensions: ${g}`),d._extensions=e}this.emit("headers",u,i),o.write(u.concat(`\r
|
|
43
|
-
`).join(`\r
|
|
44
|
-
`)),o.removeListener("error",Fd),d.setSocket(o,s,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(d),d.on("close",()=>{this.clients.delete(d),this._shouldEmitClose&&!this.clients.size&&process.nextTick(ar,this)})),c(d,i)}};qd.exports=La;function eE(n,e){for(let t of Object.keys(e))n.on(t,e[t]);return function(){for(let r of Object.keys(e))n.removeListener(r,e[r])}}function ar(n){n._state=Ld,n.emit("close")}function Fd(){this.destroy()}function lr(n,e,t,r){t=t||Gi.STATUS_CODES[e],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(t),...r},n.once("finish",n.destroy),n.end(`HTTP/1.1 ${e} ${Gi.STATUS_CODES[e]}\r
|
|
45
|
-
`+Object.keys(r).map(i=>`${i}: ${r[i]}`).join(`\r
|
|
46
|
-
`)+`\r
|
|
47
|
-
\r
|
|
48
|
-
`+t)}function $t(n,e,t,r,i,o){if(n.listenerCount("wsClientError")){let s=new Error(i);Error.captureStackTrace(s,$t),n.emit("wsClientError",s,t,e)}else lr(t,r,i,o)}});var Vd=M((px,Bd)=>{"use strict";var pt=qi();pt.createWebSocketStream=kd();pt.Server=Gd();pt.Receiver=Ra();pt.Sender=ka();pt.WebSocket=pt;pt.WebSocketServer=pt.Server;Bd.exports=pt});var $S=M(I=>{var tE=Uf(),nE=Vd(),rE=U("fs/promises");function uh(n){var e=Object.create(null);return n&&Object.keys(n).forEach(function(t){if(t!=="default"){var r=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return n[t]}})}}),e.default=n,Object.freeze(e)}var iE=uh(nE),Hd=uh(rE);var fh,dh;function oE(n){fh=n.geminiUrl,dh=n.vertexUrl}function sE(){return{geminiUrl:fh,vertexUrl:dh}}function aE(n,e,t){var r,i,o;if(!(!((r=n.httpOptions)===null||r===void 0)&&r.baseUrl)){let s=sE();return n.vertexai?(i=s.vertexUrl)!==null&&i!==void 0?i:e:(o=s.geminiUrl)!==null&&o!==void 0?o:t}return n.httpOptions.baseUrl}var Jt=class{};function K(n,e){let t=/\{([^}]+)\}/g;return n.replace(t,(r,i)=>{if(Object.prototype.hasOwnProperty.call(e,i)){let o=e[i];return o!=null?String(o):""}else throw new Error(`Key '${i}' not found in valueMap.`)})}function l(n,e,t){for(let o=0;o<e.length-1;o++){let s=e[o];if(s.endsWith("[]")){let c=s.slice(0,-2);if(!(c in n))if(Array.isArray(t))n[c]=Array.from({length:t.length},()=>({}));else throw new Error(`Value must be a list given an array path ${s}`);if(Array.isArray(n[c])){let f=n[c];if(Array.isArray(t))for(let u=0;u<f.length;u++){let d=f[u];l(d,e.slice(o+1),t[u])}else for(let u of f)l(u,e.slice(o+1),t)}return}else if(s.endsWith("[0]")){let c=s.slice(0,-3);c in n||(n[c]=[{}]);let f=n[c];l(f[0],e.slice(o+1),t);return}(!n[s]||typeof n[s]!="object")&&(n[s]={}),n=n[s]}let r=e[e.length-1],i=n[r];if(i!==void 0){if(!t||typeof t=="object"&&Object.keys(t).length===0||t===i)return;if(typeof i=="object"&&typeof t=="object"&&i!==null&&t!==null)Object.assign(i,t);else throw new Error(`Cannot set value for an existing key. Key: ${r}`)}else n[r]=t}function a(n,e){try{if(e.length===1&&e[0]==="_self")return n;for(let t=0;t<e.length;t++){if(typeof n!="object"||n===null)return;let r=e[t];if(r.endsWith("[]")){let i=r.slice(0,-2);if(i in n){let o=n[i];return Array.isArray(o)?o.map(s=>a(s,e.slice(t+1))):void 0}else return}else n=n[r]}return n}catch(t){if(t instanceof TypeError)return;throw t}}function se(n,e){if(!e||typeof e!="string")throw new Error("model is required and must be a string");if(n.isVertexAI()){if(e.startsWith("publishers/")||e.startsWith("projects/")||e.startsWith("models/"))return e;if(e.indexOf("/")>=0){let t=e.split("/",2);return`publishers/${t[0]}/models/${t[1]}`}else return`publishers/google/models/${e}`}else return e.startsWith("models/")||e.startsWith("tunedModels/")?e:`models/${e}`}function hh(n,e){let t=se(n,e);return t?t.startsWith("publishers/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}`:t.startsWith("models/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/publishers/google/${t}`:t:""}function ph(n,e){return Array.isArray(e)?e.map(t=>Wi(n,t)):[Wi(n,e)]}function Wi(n,e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Could not parse input as Blob. Unsupported blob type: ${typeof e}`)}function lE(n,e){let t=Wi(n,e);if(t.mimeType&&t.mimeType.startsWith("image/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function cE(n,e){let t=Wi(n,e);if(t.mimeType&&t.mimeType.startsWith("audio/"))return t;throw new Error(`Unsupported mime type: ${t.mimeType}`)}function $d(n,e){if(e==null)throw new Error("PartUnion is required");if(typeof e=="object")return e;if(typeof e=="string")return{text:e};throw new Error(`Unsupported part type: ${typeof e}`)}function gh(n,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("PartListUnion is required");return Array.isArray(e)?e.map(t=>$d(n,t)):[$d(n,e)]}function qa(n){return n!=null&&typeof n=="object"&&"parts"in n&&Array.isArray(n.parts)}function Wd(n){return n!=null&&typeof n=="object"&&"functionCall"in n}function Jd(n){return n!=null&&typeof n=="object"&&"functionResponse"in n}function we(n,e){if(e==null)throw new Error("ContentUnion is required");return qa(e)?e:{role:"user",parts:gh(n,e)}}function mh(n,e){if(!e)return[];if(n.isVertexAI()&&Array.isArray(e))return e.flatMap(t=>{let r=we(n,t);return r.parts&&r.parts.length>0&&r.parts[0].text!==void 0?[r.parts[0].text]:[]});if(n.isVertexAI()){let t=we(n,e);return t.parts&&t.parts.length>0&&t.parts[0].text!==void 0?[t.parts[0].text]:[]}return Array.isArray(e)?e.map(t=>we(n,t)):[we(n,e)]}function xt(n,e){if(e==null||Array.isArray(e)&&e.length===0)throw new Error("contents are required");if(!Array.isArray(e)){if(Wd(e)||Jd(e))throw new Error("To specify functionCall or functionResponse parts, please wrap them in a Content object, specifying the role for them");return[we(n,e)]}let t=[],r=[],i=qa(e[0]);for(let o of e){let s=qa(o);if(s!=i)throw new Error("Mixing Content and Parts is not supported, please group the parts into a the appropriate Content objects and specify the roles for them");if(s)t.push(o);else{if(Wd(o)||Jd(o))throw new Error("To specify functionCall or functionResponse parts, please wrap them, and any other parts, in Content objects as appropriate, specifying the role for them");r.push(o)}}return i||t.push({role:"user",parts:gh(n,r)}),t}function yh(n,e){return e}function _h(n,e){if(typeof e=="object")return e;if(typeof e=="string")return{voiceConfig:{prebuiltVoiceConfig:{voiceName:e}}};throw new Error(`Unsupported speechConfig type: ${typeof e}`)}function so(n,e){return e}function ao(n,e){if(!Array.isArray(e))throw new Error("tool is required and must be an array of Tools");return e}function uE(n,e,t,r=1){let i=!e.startsWith(`${t}/`)&&e.split("/").length===r;return n.isVertexAI()?e.startsWith("projects/")?e:e.startsWith("locations/")?`projects/${n.getProject()}/${e}`:e.startsWith(`${t}/`)?`projects/${n.getProject()}/locations/${n.getLocation()}/${e}`:i?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}/${e}`:e:i?`${t}/${e}`:e}function It(n,e){if(typeof e!="string")throw new Error("name must be a string");return uE(n,e,"cachedContents")}function Eh(n,e){switch(e){case"STATE_UNSPECIFIED":return"JOB_STATE_UNSPECIFIED";case"CREATING":return"JOB_STATE_RUNNING";case"ACTIVE":return"JOB_STATE_SUCCEEDED";case"FAILED":return"JOB_STATE_FAILED";default:return e}}function Rt(n,e){if(typeof e!="string")throw new Error("fromImageBytes must be a string");return e}function vh(n,e){if(typeof e!="string")throw new Error("fromName must be a string");return e.startsWith("files/")?e.split("files/")[1]:e}function fE(n,e){let t={};if(a(e,["videoMetadata"])!==void 0)throw new Error("videoMetadata parameter is not supported in Gemini API.");let r=a(e,["thought"]);r!=null&&l(t,["thought"],r);let i=a(e,["codeExecutionResult"]);i!=null&&l(t,["codeExecutionResult"],i);let o=a(e,["executableCode"]);o!=null&&l(t,["executableCode"],o);let s=a(e,["fileData"]);s!=null&&l(t,["fileData"],s);let c=a(e,["functionCall"]);c!=null&&l(t,["functionCall"],c);let f=a(e,["functionResponse"]);f!=null&&l(t,["functionResponse"],f);let u=a(e,["inlineData"]);u!=null&&l(t,["inlineData"],u);let d=a(e,["text"]);return d!=null&&l(t,["text"],d),t}function Kd(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>fE(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function dE(){return{}}function hE(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function pE(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],hE(n,r)),t}function gE(n,e){let t={};if(a(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");a(e,["googleSearch"])!=null&&l(t,["googleSearch"],dE());let i=a(e,["googleSearchRetrieval"]);i!=null&&l(t,["googleSearchRetrieval"],pE(n,i));let o=a(e,["codeExecution"]);o!=null&&l(t,["codeExecution"],o);let s=a(e,["functionDeclarations"]);return s!=null&&l(t,["functionDeclarations"],s),t}function mE(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["allowedFunctionNames"]);return i!=null&&l(t,["allowedFunctionNames"],i),t}function yE(n,e){let t={},r=a(e,["functionCallingConfig"]);return r!=null&&l(t,["functionCallingConfig"],mE(n,r)),t}function _E(n,e,t){let r={},i=a(e,["ttl"]);t!==void 0&&i!=null&&l(t,["ttl"],i);let o=a(e,["expireTime"]);t!==void 0&&o!=null&&l(t,["expireTime"],o);let s=a(e,["displayName"]);t!==void 0&&s!=null&&l(t,["displayName"],s);let c=a(e,["contents"]);if(t!==void 0&&c!=null){let h=xt(n,c);Array.isArray(h)&&(h=h.map(g=>Kd(n,g))),l(t,["contents"],h)}let f=a(e,["systemInstruction"]);t!==void 0&&f!=null&&l(t,["systemInstruction"],Kd(n,we(n,f)));let u=a(e,["tools"]);if(t!==void 0&&u!=null){let h=u;Array.isArray(h)&&(h=h.map(g=>gE(n,g))),l(t,["tools"],h)}let d=a(e,["toolConfig"]);return t!==void 0&&d!=null&&l(t,["toolConfig"],yE(n,d)),r}function EE(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["model"],hh(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],_E(n,i,t)),t}function vE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function TE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function CE(n,e,t){let r={},i=a(e,["ttl"]);t!==void 0&&i!=null&&l(t,["ttl"],i);let o=a(e,["expireTime"]);return t!==void 0&&o!=null&&l(t,["expireTime"],o),r}function SE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],CE(n,i,t)),t}function wE(n,e,t){let r={},i=a(e,["pageSize"]);t!==void 0&&i!=null&&l(t,["_query","pageSize"],i);let o=a(e,["pageToken"]);return t!==void 0&&o!=null&&l(t,["_query","pageToken"],o),r}function AE(n,e){let t={},r=a(e,["config"]);return r!=null&&l(t,["config"],wE(n,r,t)),t}function xE(n,e){let t={},r=a(e,["videoMetadata"]);r!=null&&l(t,["videoMetadata"],r);let i=a(e,["thought"]);i!=null&&l(t,["thought"],i);let o=a(e,["codeExecutionResult"]);o!=null&&l(t,["codeExecutionResult"],o);let s=a(e,["executableCode"]);s!=null&&l(t,["executableCode"],s);let c=a(e,["fileData"]);c!=null&&l(t,["fileData"],c);let f=a(e,["functionCall"]);f!=null&&l(t,["functionCall"],f);let u=a(e,["functionResponse"]);u!=null&&l(t,["functionResponse"],u);let d=a(e,["inlineData"]);d!=null&&l(t,["inlineData"],d);let h=a(e,["text"]);return h!=null&&l(t,["text"],h),t}function Yd(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>xE(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function IE(){return{}}function RE(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function PE(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],RE(n,r)),t}function NE(n,e){let t={},r=a(e,["retrieval"]);r!=null&&l(t,["retrieval"],r),a(e,["googleSearch"])!=null&&l(t,["googleSearch"],IE());let o=a(e,["googleSearchRetrieval"]);o!=null&&l(t,["googleSearchRetrieval"],PE(n,o));let s=a(e,["codeExecution"]);s!=null&&l(t,["codeExecution"],s);let c=a(e,["functionDeclarations"]);return c!=null&&l(t,["functionDeclarations"],c),t}function kE(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["allowedFunctionNames"]);return i!=null&&l(t,["allowedFunctionNames"],i),t}function bE(n,e){let t={},r=a(e,["functionCallingConfig"]);return r!=null&&l(t,["functionCallingConfig"],kE(n,r)),t}function ME(n,e,t){let r={},i=a(e,["ttl"]);t!==void 0&&i!=null&&l(t,["ttl"],i);let o=a(e,["expireTime"]);t!==void 0&&o!=null&&l(t,["expireTime"],o);let s=a(e,["displayName"]);t!==void 0&&s!=null&&l(t,["displayName"],s);let c=a(e,["contents"]);if(t!==void 0&&c!=null){let h=xt(n,c);Array.isArray(h)&&(h=h.map(g=>Yd(n,g))),l(t,["contents"],h)}let f=a(e,["systemInstruction"]);t!==void 0&&f!=null&&l(t,["systemInstruction"],Yd(n,we(n,f)));let u=a(e,["tools"]);if(t!==void 0&&u!=null){let h=u;Array.isArray(h)&&(h=h.map(g=>NE(n,g))),l(t,["tools"],h)}let d=a(e,["toolConfig"]);return t!==void 0&&d!=null&&l(t,["toolConfig"],bE(n,d)),r}function OE(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["model"],hh(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],ME(n,i,t)),t}function DE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function UE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function FE(n,e,t){let r={},i=a(e,["ttl"]);t!==void 0&&i!=null&&l(t,["ttl"],i);let o=a(e,["expireTime"]);return t!==void 0&&o!=null&&l(t,["expireTime"],o),r}function LE(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],It(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],FE(n,i,t)),t}function qE(n,e,t){let r={},i=a(e,["pageSize"]);t!==void 0&&i!=null&&l(t,["_query","pageSize"],i);let o=a(e,["pageToken"]);return t!==void 0&&o!=null&&l(t,["_query","pageToken"],o),r}function GE(n,e){let t={},r=a(e,["config"]);return r!=null&&l(t,["config"],qE(n,r,t)),t}function Hi(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["model"]);o!=null&&l(t,["model"],o);let s=a(e,["createTime"]);s!=null&&l(t,["createTime"],s);let c=a(e,["updateTime"]);c!=null&&l(t,["updateTime"],c);let f=a(e,["expireTime"]);f!=null&&l(t,["expireTime"],f);let u=a(e,["usageMetadata"]);return u!=null&&l(t,["usageMetadata"],u),t}function BE(){return{}}function VE(n,e){let t={},r=a(e,["nextPageToken"]);r!=null&&l(t,["nextPageToken"],r);let i=a(e,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(s=>Hi(n,s))),l(t,["cachedContents"],o)}return t}function $i(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["model"]);o!=null&&l(t,["model"],o);let s=a(e,["createTime"]);s!=null&&l(t,["createTime"],s);let c=a(e,["updateTime"]);c!=null&&l(t,["updateTime"],c);let f=a(e,["expireTime"]);f!=null&&l(t,["expireTime"],f);let u=a(e,["usageMetadata"]);return u!=null&&l(t,["usageMetadata"],u),t}function HE(){return{}}function $E(n,e){let t={},r=a(e,["nextPageToken"]);r!=null&&l(t,["nextPageToken"],r);let i=a(e,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(s=>$i(n,s))),l(t,["cachedContents"],o)}return t}I.PagedItem=void 0;(function(n){n.PAGED_ITEM_BATCH_JOBS="batchJobs",n.PAGED_ITEM_MODELS="models",n.PAGED_ITEM_TUNING_JOBS="tuningJobs",n.PAGED_ITEM_FILES="files",n.PAGED_ITEM_CACHED_CONTENTS="cachedContents"})(I.PagedItem||(I.PagedItem={}));var Pn=class{constructor(e,t,r,i){this.pageInternal=[],this.paramsInternal={},this.requestInternal=t,this.init(e,r,i)}init(e,t,r){var i,o;this.nameInternal=e,this.pageInternal=t[this.nameInternal]||[],this.idxInternal=0;let s={config:{}};r?typeof r=="object"?s=Object.assign({},r):s=r:s={config:{}},s.config&&(s.config.pageToken=t.nextPageToken),this.paramsInternal=s,this.pageInternalSize=(o=(i=s.config)===null||i===void 0?void 0:i.pageSize)!==null&&o!==void 0?o:this.pageInternal.length}initNextPage(e){this.init(this.nameInternal,e,this.paramsInternal)}get page(){return this.pageInternal}get name(){return this.nameInternal}get pageSize(){return this.pageInternalSize}get params(){return this.paramsInternal}get pageLength(){return this.pageInternal.length}getItem(e){return this.pageInternal[e]}[Symbol.asyncIterator](){return{next:async()=>{if(this.idxInternal>=this.pageLength)if(this.hasNextPage())await this.nextPage();else return{value:void 0,done:!0};let e=this.getItem(this.idxInternal);return this.idxInternal+=1,{value:e,done:!1}},return:async()=>({value:void 0,done:!0})}}async nextPage(){if(!this.hasNextPage())throw new Error("No more pages to fetch.");let e=await this.requestInternal(this.params);return this.initNextPage(e),this.page}hasNextPage(){var e;return((e=this.params.config)===null||e===void 0?void 0:e.pageToken)!==void 0}};I.Outcome=void 0;(function(n){n.OUTCOME_UNSPECIFIED="OUTCOME_UNSPECIFIED",n.OUTCOME_OK="OUTCOME_OK",n.OUTCOME_FAILED="OUTCOME_FAILED",n.OUTCOME_DEADLINE_EXCEEDED="OUTCOME_DEADLINE_EXCEEDED"})(I.Outcome||(I.Outcome={}));I.Language=void 0;(function(n){n.LANGUAGE_UNSPECIFIED="LANGUAGE_UNSPECIFIED",n.PYTHON="PYTHON"})(I.Language||(I.Language={}));I.HarmCategory=void 0;(function(n){n.HARM_CATEGORY_UNSPECIFIED="HARM_CATEGORY_UNSPECIFIED",n.HARM_CATEGORY_HATE_SPEECH="HARM_CATEGORY_HATE_SPEECH",n.HARM_CATEGORY_DANGEROUS_CONTENT="HARM_CATEGORY_DANGEROUS_CONTENT",n.HARM_CATEGORY_HARASSMENT="HARM_CATEGORY_HARASSMENT",n.HARM_CATEGORY_SEXUALLY_EXPLICIT="HARM_CATEGORY_SEXUALLY_EXPLICIT",n.HARM_CATEGORY_CIVIC_INTEGRITY="HARM_CATEGORY_CIVIC_INTEGRITY"})(I.HarmCategory||(I.HarmCategory={}));I.HarmBlockMethod=void 0;(function(n){n.HARM_BLOCK_METHOD_UNSPECIFIED="HARM_BLOCK_METHOD_UNSPECIFIED",n.SEVERITY="SEVERITY",n.PROBABILITY="PROBABILITY"})(I.HarmBlockMethod||(I.HarmBlockMethod={}));I.HarmBlockThreshold=void 0;(function(n){n.HARM_BLOCK_THRESHOLD_UNSPECIFIED="HARM_BLOCK_THRESHOLD_UNSPECIFIED",n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE",n.OFF="OFF"})(I.HarmBlockThreshold||(I.HarmBlockThreshold={}));I.Mode=void 0;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(I.Mode||(I.Mode={}));I.Type=void 0;(function(n){n.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",n.STRING="STRING",n.NUMBER="NUMBER",n.INTEGER="INTEGER",n.BOOLEAN="BOOLEAN",n.ARRAY="ARRAY",n.OBJECT="OBJECT"})(I.Type||(I.Type={}));I.FinishReason=void 0;(function(n){n.FINISH_REASON_UNSPECIFIED="FINISH_REASON_UNSPECIFIED",n.STOP="STOP",n.MAX_TOKENS="MAX_TOKENS",n.SAFETY="SAFETY",n.RECITATION="RECITATION",n.LANGUAGE="LANGUAGE",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT",n.SPII="SPII",n.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",n.IMAGE_SAFETY="IMAGE_SAFETY"})(I.FinishReason||(I.FinishReason={}));I.HarmProbability=void 0;(function(n){n.HARM_PROBABILITY_UNSPECIFIED="HARM_PROBABILITY_UNSPECIFIED",n.NEGLIGIBLE="NEGLIGIBLE",n.LOW="LOW",n.MEDIUM="MEDIUM",n.HIGH="HIGH"})(I.HarmProbability||(I.HarmProbability={}));I.HarmSeverity=void 0;(function(n){n.HARM_SEVERITY_UNSPECIFIED="HARM_SEVERITY_UNSPECIFIED",n.HARM_SEVERITY_NEGLIGIBLE="HARM_SEVERITY_NEGLIGIBLE",n.HARM_SEVERITY_LOW="HARM_SEVERITY_LOW",n.HARM_SEVERITY_MEDIUM="HARM_SEVERITY_MEDIUM",n.HARM_SEVERITY_HIGH="HARM_SEVERITY_HIGH"})(I.HarmSeverity||(I.HarmSeverity={}));I.BlockedReason=void 0;(function(n){n.BLOCKED_REASON_UNSPECIFIED="BLOCKED_REASON_UNSPECIFIED",n.SAFETY="SAFETY",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT"})(I.BlockedReason||(I.BlockedReason={}));I.TrafficType=void 0;(function(n){n.TRAFFIC_TYPE_UNSPECIFIED="TRAFFIC_TYPE_UNSPECIFIED",n.ON_DEMAND="ON_DEMAND",n.PROVISIONED_THROUGHPUT="PROVISIONED_THROUGHPUT"})(I.TrafficType||(I.TrafficType={}));I.Modality=void 0;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.AUDIO="AUDIO"})(I.Modality||(I.Modality={}));I.MediaResolution=void 0;(function(n){n.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",n.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",n.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",n.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(I.MediaResolution||(I.MediaResolution={}));I.JobState=void 0;(function(n){n.JOB_STATE_UNSPECIFIED="JOB_STATE_UNSPECIFIED",n.JOB_STATE_QUEUED="JOB_STATE_QUEUED",n.JOB_STATE_PENDING="JOB_STATE_PENDING",n.JOB_STATE_RUNNING="JOB_STATE_RUNNING",n.JOB_STATE_SUCCEEDED="JOB_STATE_SUCCEEDED",n.JOB_STATE_FAILED="JOB_STATE_FAILED",n.JOB_STATE_CANCELLING="JOB_STATE_CANCELLING",n.JOB_STATE_CANCELLED="JOB_STATE_CANCELLED",n.JOB_STATE_PAUSED="JOB_STATE_PAUSED",n.JOB_STATE_EXPIRED="JOB_STATE_EXPIRED",n.JOB_STATE_UPDATING="JOB_STATE_UPDATING",n.JOB_STATE_PARTIALLY_SUCCEEDED="JOB_STATE_PARTIALLY_SUCCEEDED"})(I.JobState||(I.JobState={}));I.AdapterSize=void 0;(function(n){n.ADAPTER_SIZE_UNSPECIFIED="ADAPTER_SIZE_UNSPECIFIED",n.ADAPTER_SIZE_ONE="ADAPTER_SIZE_ONE",n.ADAPTER_SIZE_TWO="ADAPTER_SIZE_TWO",n.ADAPTER_SIZE_FOUR="ADAPTER_SIZE_FOUR",n.ADAPTER_SIZE_EIGHT="ADAPTER_SIZE_EIGHT",n.ADAPTER_SIZE_SIXTEEN="ADAPTER_SIZE_SIXTEEN",n.ADAPTER_SIZE_THIRTY_TWO="ADAPTER_SIZE_THIRTY_TWO"})(I.AdapterSize||(I.AdapterSize={}));I.FeatureSelectionPreference=void 0;(function(n){n.FEATURE_SELECTION_PREFERENCE_UNSPECIFIED="FEATURE_SELECTION_PREFERENCE_UNSPECIFIED",n.PRIORITIZE_QUALITY="PRIORITIZE_QUALITY",n.BALANCED="BALANCED",n.PRIORITIZE_COST="PRIORITIZE_COST"})(I.FeatureSelectionPreference||(I.FeatureSelectionPreference={}));I.DynamicRetrievalConfigMode=void 0;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(I.DynamicRetrievalConfigMode||(I.DynamicRetrievalConfigMode={}));I.FunctionCallingConfigMode=void 0;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.AUTO="AUTO",n.ANY="ANY",n.NONE="NONE"})(I.FunctionCallingConfigMode||(I.FunctionCallingConfigMode={}));I.SafetyFilterLevel=void 0;(function(n){n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE"})(I.SafetyFilterLevel||(I.SafetyFilterLevel={}));I.PersonGeneration=void 0;(function(n){n.DONT_ALLOW="DONT_ALLOW",n.ALLOW_ADULT="ALLOW_ADULT",n.ALLOW_ALL="ALLOW_ALL"})(I.PersonGeneration||(I.PersonGeneration={}));I.ImagePromptLanguage=void 0;(function(n){n.auto="auto",n.en="en",n.ja="ja",n.ko="ko",n.hi="hi"})(I.ImagePromptLanguage||(I.ImagePromptLanguage={}));I.FileState=void 0;(function(n){n.STATE_UNSPECIFIED="STATE_UNSPECIFIED",n.PROCESSING="PROCESSING",n.ACTIVE="ACTIVE",n.FAILED="FAILED"})(I.FileState||(I.FileState={}));I.FileSource=void 0;(function(n){n.SOURCE_UNSPECIFIED="SOURCE_UNSPECIFIED",n.UPLOADED="UPLOADED",n.GENERATED="GENERATED"})(I.FileSource||(I.FileSource={}));I.MaskReferenceMode=void 0;(function(n){n.MASK_MODE_DEFAULT="MASK_MODE_DEFAULT",n.MASK_MODE_USER_PROVIDED="MASK_MODE_USER_PROVIDED",n.MASK_MODE_BACKGROUND="MASK_MODE_BACKGROUND",n.MASK_MODE_FOREGROUND="MASK_MODE_FOREGROUND",n.MASK_MODE_SEMANTIC="MASK_MODE_SEMANTIC"})(I.MaskReferenceMode||(I.MaskReferenceMode={}));I.ControlReferenceType=void 0;(function(n){n.CONTROL_TYPE_DEFAULT="CONTROL_TYPE_DEFAULT",n.CONTROL_TYPE_CANNY="CONTROL_TYPE_CANNY",n.CONTROL_TYPE_SCRIBBLE="CONTROL_TYPE_SCRIBBLE",n.CONTROL_TYPE_FACE_MESH="CONTROL_TYPE_FACE_MESH"})(I.ControlReferenceType||(I.ControlReferenceType={}));I.SubjectReferenceType=void 0;(function(n){n.SUBJECT_TYPE_DEFAULT="SUBJECT_TYPE_DEFAULT",n.SUBJECT_TYPE_PERSON="SUBJECT_TYPE_PERSON",n.SUBJECT_TYPE_ANIMAL="SUBJECT_TYPE_ANIMAL",n.SUBJECT_TYPE_PRODUCT="SUBJECT_TYPE_PRODUCT"})(I.SubjectReferenceType||(I.SubjectReferenceType={}));I.MediaModality=void 0;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.VIDEO="VIDEO",n.AUDIO="AUDIO",n.DOCUMENT="DOCUMENT"})(I.MediaModality||(I.MediaModality={}));I.StartSensitivity=void 0;(function(n){n.START_SENSITIVITY_UNSPECIFIED="START_SENSITIVITY_UNSPECIFIED",n.START_SENSITIVITY_HIGH="START_SENSITIVITY_HIGH",n.START_SENSITIVITY_LOW="START_SENSITIVITY_LOW"})(I.StartSensitivity||(I.StartSensitivity={}));I.EndSensitivity=void 0;(function(n){n.END_SENSITIVITY_UNSPECIFIED="END_SENSITIVITY_UNSPECIFIED",n.END_SENSITIVITY_HIGH="END_SENSITIVITY_HIGH",n.END_SENSITIVITY_LOW="END_SENSITIVITY_LOW"})(I.EndSensitivity||(I.EndSensitivity={}));I.ActivityHandling=void 0;(function(n){n.ACTIVITY_HANDLING_UNSPECIFIED="ACTIVITY_HANDLING_UNSPECIFIED",n.START_OF_ACTIVITY_INTERRUPTS="START_OF_ACTIVITY_INTERRUPTS",n.NO_INTERRUPTION="NO_INTERRUPTION"})(I.ActivityHandling||(I.ActivityHandling={}));I.TurnCoverage=void 0;(function(n){n.TURN_COVERAGE_UNSPECIFIED="TURN_COVERAGE_UNSPECIFIED",n.TURN_INCLUDES_ONLY_ACTIVITY="TURN_INCLUDES_ONLY_ACTIVITY",n.TURN_INCLUDES_ALL_INPUT="TURN_INCLUDES_ALL_INPUT"})(I.TurnCoverage||(I.TurnCoverage={}));var Ga=class{};function WE(n,e){return{fileData:{fileUri:n,mimeType:e}}}function Ba(n){return{text:n}}function JE(n,e){return{functionCall:{name:n,args:e}}}function KE(n,e,t){return{functionResponse:{id:n,name:e,response:t}}}function YE(n,e){return{inlineData:{data:n,mimeType:e}}}function zE(n,e){return{codeExecutionResult:{outcome:n,output:e}}}function XE(n,e){return{executableCode:{code:n,language:e}}}function zd(n){return typeof n=="object"&&n!==null?"fileData"in n||"text"in n||"functionCall"in n||"functionResponse"in n||"inlineData"in n||"videoMetadata"in n||"codeExecutionResult"in n||"executableCode"in n:!1}function Th(n){let e=[];if(typeof n=="string")e.push(Ba(n));else if(zd(n))e.push(n);else if(Array.isArray(n)){if(n.length===0)throw new Error("partOrString cannot be an empty array");for(let t of n)if(typeof t=="string")e.push(Ba(t));else if(zd(t))e.push(t);else throw new Error("element in PartUnion must be a Part object or string")}else throw new Error("partOrString must be a Part object, string, or array");return e}function jE(n){return{role:"user",parts:Th(n)}}function ZE(n){return{role:"model",parts:Th(n)}}var Va=class{},Ha=class{},Wt=class{get text(){var e,t,r,i,o,s,c,f;if(((i=(r=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning text from the first one.");let u="",d=!1,h=[];for(let g of(f=(c=(s=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content)===null||c===void 0?void 0:c.parts)!==null&&f!==void 0?f:[]){for(let[v,w]of Object.entries(g))v!=="text"&&v!=="thought"&&(w!==null||w!==void 0)&&h.push(v);if(typeof g.text=="string"){if(typeof g.thought=="boolean"&&g.thought)continue;d=!0,u+=g.text}}return h.length>0&&console.warn(`there are non-text parts ${h} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),d?u:void 0}get data(){var e,t,r,i,o,s,c,f;if(((i=(r=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning data from the first one.");let u="",d=[];for(let h of(f=(c=(s=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content)===null||c===void 0?void 0:c.parts)!==null&&f!==void 0?f:[]){for(let[g,v]of Object.entries(h))g!=="inlineData"&&(v!==null||v!==void 0)&&d.push(g);h.inlineData&&typeof h.inlineData.data=="string"&&(u+=atob(h.inlineData.data))}return d.length>0&&console.warn(`there are non-data parts ${d} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),u.length>0?btoa(u):void 0}get functionCalls(){var e,t,r,i,o,s,c,f;if(((i=(r=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning function calls from the first one.");let u=(f=(c=(s=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content)===null||c===void 0?void 0:c.parts)===null||f===void 0?void 0:f.filter(d=>d.functionCall).map(d=>d.functionCall).filter(d=>d!==void 0);if(u?.length!==0)return u}get executableCode(){var e,t,r,i,o,s,c,f,u;if(((i=(r=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning executable code from the first one.");let d=(f=(c=(s=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content)===null||c===void 0?void 0:c.parts)===null||f===void 0?void 0:f.filter(h=>h.executableCode).map(h=>h.executableCode).filter(h=>h!==void 0);if(d?.length!==0)return(u=d?.[0])===null||u===void 0?void 0:u.code}get codeExecutionResult(){var e,t,r,i,o,s,c,f,u;if(((i=(r=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning code execution result from the first one.");let d=(f=(c=(s=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content)===null||c===void 0?void 0:c.parts)===null||f===void 0?void 0:f.filter(h=>h.codeExecutionResult).map(h=>h.codeExecutionResult).filter(h=>h!==void 0);if(d?.length!==0)return(u=d?.[0])===null||u===void 0?void 0:u.output}},ur=class{},fr=class{},dr=class{},hr=class{},Ji=class{},$a=class{},pr=class{},gr=class{},mr=class{},Ki=class{},Kt=class{constructor(e){let t={};for(let r of e.headers.entries())t[r[0]]=r[1];this.headers=t,this.responseInternal=e}json(){return this.responseInternal.json()}},Yi=class{},zi=class{},Wa=class{},Ja=class{},Ka=class{constructor(){this.functionResponses=[]}};var Xi=class extends Jt{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Pn(I.PagedItem.PAGED_ITEM_CACHED_CONTENTS,r=>this.listInternal(r),await this.listInternal(t),t)}async create(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=OE(this.apiClient,e);return c=K("cachedContents",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>$i(this.apiClient,d))}else{let u=EE(this.apiClient,e);return c=K("cachedContents",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>Hi(this.apiClient,d))}}async get(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=DE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>$i(this.apiClient,d))}else{let u=vE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>Hi(this.apiClient,d))}}async delete(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=UE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(()=>{let d=HE(),h=new gr;return Object.assign(h,d),h})}else{let u=TE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(()=>{let d=BE(),h=new gr;return Object.assign(h,d),h})}}async update(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=LE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>$i(this.apiClient,d))}else{let u=SE(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>Hi(this.apiClient,d))}}async listInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=GE(this.apiClient,e);return c=K("cachedContents",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=$E(this.apiClient,d),g=new mr;return Object.assign(g,h),g})}else{let u=AE(this.apiClient,e);return c=K("cachedContents",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=VE(this.apiClient,d),g=new mr;return Object.assign(g,h),g})}}};function Xd(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],r=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ee(n){return this instanceof Ee?(this.v=n,this):new Ee(n)}function ji(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(n,e||[]),i,o=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",s),i[Symbol.asyncIterator]=function(){return this},i;function s(v){return function(w){return Promise.resolve(w).then(v,h)}}function c(v,w){r[v]&&(i[v]=function(C){return new Promise(function(N,k){o.push([v,C,N,k])>1||f(v,C)})},w&&(i[v]=w(i[v])))}function f(v,w){try{u(r[v](w))}catch(C){g(o[0][3],C)}}function u(v){v.value instanceof Ee?Promise.resolve(v.value.v).then(d,h):g(o[0][2],v)}function d(v){f("next",v)}function h(v){f("throw",v)}function g(v,w){v(w),o.shift(),o.length&&f(o[0][0],o[0][1])}}function Ya(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof Xd=="function"?Xd(n):n[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(o){t[o]=n[o]&&function(s){return new Promise(function(c,f){s=n[o](s),i(c,f,s.done,s.value)})}}function i(o,s,c,f){Promise.resolve(f).then(function(u){o({value:u,done:c})},s)}}function QE(n){var e;if(n.candidates==null||n.candidates.length===0)return!1;let t=(e=n.candidates[0])===null||e===void 0?void 0:e.content;return t===void 0?!1:Ch(t)}function Ch(n){if(n.parts===void 0||n.parts.length===0)return!1;for(let e of n.parts)if(e===void 0||Object.keys(e).length===0||e.text!==void 0&&e.text==="")return!1;return!0}function ev(n){if(n.length!==0){if(n[0].role!=="user")throw new Error("History must start with a user turn.");for(let e of n)if(e.role!=="user"&&e.role!=="model")throw new Error(`Role must be user or model, but got ${e.role}.`)}}function tv(n){if(n===void 0||n.length===0)return[];let e=[],t=n.length,r=0,i=n[0];for(;r<t;)if(n[r].role==="user")i=n[r],r++;else{let o=[],s=!0;for(;r<t&&n[r].role==="model";)o.push(n[r]),s&&!Ch(n[r])&&(s=!1),r++;s&&(e.push(i),e.push(...o))}return e}var Zi=class{constructor(e,t){this.modelsModule=e,this.apiClient=t}create(e){return new Qi(this.apiClient,this.modelsModule,e.model,e.config,e.history)}},Qi=class{constructor(e,t,r,i={},o=[]){this.apiClient=e,this.modelsModule=t,this.model=r,this.config=i,this.history=o,this.sendPromise=Promise.resolve(),ev(o)}async sendMessage(e){var t;await this.sendPromise;let r=we(this.apiClient,e.message),i=this.modelsModule.generateContent({model:this.model,contents:this.getHistory(!0).concat(r),config:(t=e.config)!==null&&t!==void 0?t:this.config});return this.sendPromise=(async()=>{var o,s;let f=(s=(o=(await i).candidates)===null||o===void 0?void 0:o[0])===null||s===void 0?void 0:s.content,u=f?[f]:[];this.recordHistory(r,u)})(),await this.sendPromise,i}async sendMessageStream(e){var t;await this.sendPromise;let r=we(this.apiClient,e.message),i=this.modelsModule.generateContentStream({model:this.model,contents:this.getHistory(!0).concat(r),config:(t=e.config)!==null&&t!==void 0?t:this.config});this.sendPromise=i.then(()=>{}).catch(()=>{});let o=await i;return this.processStreamResponse(o,r)}getHistory(e=!1){return e?tv(this.history):this.history}processStreamResponse(e,t){var r,i;return ji(this,arguments,function*(){var s,c,f,u;let d=[];try{for(var h=!0,g=Ya(e),v;v=yield Ee(g.next()),s=v.done,!s;h=!0){u=v.value,h=!1;let w=u;if(QE(w)){let C=(i=(r=w.candidates)===null||r===void 0?void 0:r[0])===null||i===void 0?void 0:i.content;C!==void 0&&d.push(C)}yield yield Ee(w)}}catch(w){c={error:w}}finally{try{!h&&!s&&(f=g.return)&&(yield Ee(f.call(g)))}finally{if(c)throw c.error}}this.recordHistory(t,d)})}recordHistory(e,t){let r=[];t.length>0&&t.every(i=>i.role==="model")?r=t:r.push({role:"model",parts:[]}),this.history.push(e),this.history.push(...r)}};function nv(n,e,t){let r={},i=a(e,["pageSize"]);t!==void 0&&i!=null&&l(t,["_query","pageSize"],i);let o=a(e,["pageToken"]);return t!==void 0&&o!=null&&l(t,["_query","pageToken"],o),r}function rv(n,e){let t={},r=a(e,["config"]);return r!=null&&l(t,["config"],nv(n,r,t)),t}function iv(n,e){let t={},r=a(e,["details"]);r!=null&&l(t,["details"],r);let i=a(e,["message"]);i!=null&&l(t,["message"],i);let o=a(e,["code"]);return o!=null&&l(t,["code"],o),t}function ov(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["mimeType"]);o!=null&&l(t,["mimeType"],o);let s=a(e,["sizeBytes"]);s!=null&&l(t,["sizeBytes"],s);let c=a(e,["createTime"]);c!=null&&l(t,["createTime"],c);let f=a(e,["expirationTime"]);f!=null&&l(t,["expirationTime"],f);let u=a(e,["updateTime"]);u!=null&&l(t,["updateTime"],u);let d=a(e,["sha256Hash"]);d!=null&&l(t,["sha256Hash"],d);let h=a(e,["uri"]);h!=null&&l(t,["uri"],h);let g=a(e,["downloadUri"]);g!=null&&l(t,["downloadUri"],g);let v=a(e,["state"]);v!=null&&l(t,["state"],v);let w=a(e,["source"]);w!=null&&l(t,["source"],w);let C=a(e,["videoMetadata"]);C!=null&&l(t,["videoMetadata"],C);let N=a(e,["error"]);return N!=null&&l(t,["error"],iv(n,N)),t}function sv(n,e){let t={},r=a(e,["file"]);r!=null&&l(t,["file"],ov(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function av(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","file"],vh(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function lv(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","file"],vh(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function cv(n,e){let t={},r=a(e,["details"]);r!=null&&l(t,["details"],r);let i=a(e,["message"]);i!=null&&l(t,["message"],i);let o=a(e,["code"]);return o!=null&&l(t,["code"],o),t}function za(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["mimeType"]);o!=null&&l(t,["mimeType"],o);let s=a(e,["sizeBytes"]);s!=null&&l(t,["sizeBytes"],s);let c=a(e,["createTime"]);c!=null&&l(t,["createTime"],c);let f=a(e,["expirationTime"]);f!=null&&l(t,["expirationTime"],f);let u=a(e,["updateTime"]);u!=null&&l(t,["updateTime"],u);let d=a(e,["sha256Hash"]);d!=null&&l(t,["sha256Hash"],d);let h=a(e,["uri"]);h!=null&&l(t,["uri"],h);let g=a(e,["downloadUri"]);g!=null&&l(t,["downloadUri"],g);let v=a(e,["state"]);v!=null&&l(t,["state"],v);let w=a(e,["source"]);w!=null&&l(t,["source"],w);let C=a(e,["videoMetadata"]);C!=null&&l(t,["videoMetadata"],C);let N=a(e,["error"]);return N!=null&&l(t,["error"],cv(n,N)),t}function uv(n,e){let t={},r=a(e,["nextPageToken"]);r!=null&&l(t,["nextPageToken"],r);let i=a(e,["files"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(s=>za(n,s))),l(t,["files"],o)}return t}function fv(){return{}}function dv(){return{}}var eo=class extends Jt{constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Pn(I.PagedItem.PAGED_ITEM_FILES,r=>this.listInternal(r),await this.listInternal(t),t)}async upload(e){if(this.apiClient.isVertexAI())throw new Error("Vertex AI does not support uploading files. You can share files through a GCS bucket.");return this.apiClient.uploadFile(e.file,e.config).then(t=>za(this.apiClient,t))}async listInternal(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=rv(this.apiClient,e);return o=K("files",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>{let u=uv(this.apiClient,f),d=new Ki;return Object.assign(d,u),d})}}async createInternal(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=sv(this.apiClient,e);return o=K("upload/v1beta/files",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(()=>{let f=fv(),u=new Yi;return Object.assign(u,f),u})}}async get(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=av(this.apiClient,e);return o=K("files/{file}",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>za(this.apiClient,f))}}async delete(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=lv(this.apiClient,e);return o=K("files/{file}",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(()=>{let f=dv(),u=new zi;return Object.assign(u,f),u})}}};function hv(n,e){let t={};if(a(e,["videoMetadata"])!==void 0)throw new Error("videoMetadata parameter is not supported in Gemini API.");let r=a(e,["thought"]);r!=null&&l(t,["thought"],r);let i=a(e,["codeExecutionResult"]);i!=null&&l(t,["codeExecutionResult"],i);let o=a(e,["executableCode"]);o!=null&&l(t,["executableCode"],o);let s=a(e,["fileData"]);s!=null&&l(t,["fileData"],s);let c=a(e,["functionCall"]);c!=null&&l(t,["functionCall"],c);let f=a(e,["functionResponse"]);f!=null&&l(t,["functionResponse"],f);let u=a(e,["inlineData"]);u!=null&&l(t,["inlineData"],u);let d=a(e,["text"]);return d!=null&&l(t,["text"],d),t}function pv(n,e){let t={},r=a(e,["videoMetadata"]);r!=null&&l(t,["videoMetadata"],r);let i=a(e,["thought"]);i!=null&&l(t,["thought"],i);let o=a(e,["codeExecutionResult"]);o!=null&&l(t,["codeExecutionResult"],o);let s=a(e,["executableCode"]);s!=null&&l(t,["executableCode"],s);let c=a(e,["fileData"]);c!=null&&l(t,["fileData"],c);let f=a(e,["functionCall"]);f!=null&&l(t,["functionCall"],f);let u=a(e,["functionResponse"]);u!=null&&l(t,["functionResponse"],u);let d=a(e,["inlineData"]);d!=null&&l(t,["inlineData"],d);let h=a(e,["text"]);return h!=null&&l(t,["text"],h),t}function gv(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>hv(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function mv(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>pv(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function yv(){return{}}function _v(){return{}}function Ev(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function vv(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function Tv(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],Ev(n,r)),t}function Cv(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],vv(n,r)),t}function Sv(n,e){let t={};if(a(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");a(e,["googleSearch"])!=null&&l(t,["googleSearch"],yv());let i=a(e,["googleSearchRetrieval"]);i!=null&&l(t,["googleSearchRetrieval"],Tv(n,i));let o=a(e,["codeExecution"]);o!=null&&l(t,["codeExecution"],o);let s=a(e,["functionDeclarations"]);return s!=null&&l(t,["functionDeclarations"],s),t}function wv(n,e){let t={},r=a(e,["retrieval"]);r!=null&&l(t,["retrieval"],r),a(e,["googleSearch"])!=null&&l(t,["googleSearch"],_v());let o=a(e,["googleSearchRetrieval"]);o!=null&&l(t,["googleSearchRetrieval"],Cv(n,o));let s=a(e,["codeExecution"]);s!=null&&l(t,["codeExecution"],s);let c=a(e,["functionDeclarations"]);return c!=null&&l(t,["functionDeclarations"],c),t}function Av(n,e){let t={},r=a(e,["handle"]);if(r!=null&&l(t,["handle"],r),a(e,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return t}function xv(n,e){let t={},r=a(e,["handle"]);r!=null&&l(t,["handle"],r);let i=a(e,["transparent"]);return i!=null&&l(t,["transparent"],i),t}function Iv(){return{}}function jd(){return{}}function Rv(n,e){let t={},r=a(e,["disabled"]);r!=null&&l(t,["disabled"],r);let i=a(e,["startOfSpeechSensitivity"]);i!=null&&l(t,["startOfSpeechSensitivity"],i);let o=a(e,["endOfSpeechSensitivity"]);o!=null&&l(t,["endOfSpeechSensitivity"],o);let s=a(e,["prefixPaddingMs"]);s!=null&&l(t,["prefixPaddingMs"],s);let c=a(e,["silenceDurationMs"]);return c!=null&&l(t,["silenceDurationMs"],c),t}function Pv(n,e){let t={},r=a(e,["disabled"]);r!=null&&l(t,["disabled"],r);let i=a(e,["startOfSpeechSensitivity"]);i!=null&&l(t,["startOfSpeechSensitivity"],i);let o=a(e,["endOfSpeechSensitivity"]);o!=null&&l(t,["endOfSpeechSensitivity"],o);let s=a(e,["prefixPaddingMs"]);s!=null&&l(t,["prefixPaddingMs"],s);let c=a(e,["silenceDurationMs"]);return c!=null&&l(t,["silenceDurationMs"],c),t}function Nv(n,e){let t={},r=a(e,["automaticActivityDetection"]);r!=null&&l(t,["automaticActivityDetection"],Rv(n,r));let i=a(e,["activityHandling"]);i!=null&&l(t,["activityHandling"],i);let o=a(e,["turnCoverage"]);return o!=null&&l(t,["turnCoverage"],o),t}function kv(n,e){let t={},r=a(e,["automaticActivityDetection"]);r!=null&&l(t,["automaticActivityDetection"],Pv(n,r));let i=a(e,["activityHandling"]);i!=null&&l(t,["activityHandling"],i);let o=a(e,["turnCoverage"]);return o!=null&&l(t,["turnCoverage"],o),t}function bv(n,e){let t={},r=a(e,["targetTokens"]);return r!=null&&l(t,["targetTokens"],r),t}function Mv(n,e){let t={},r=a(e,["targetTokens"]);return r!=null&&l(t,["targetTokens"],r),t}function Ov(n,e){let t={},r=a(e,["triggerTokens"]);r!=null&&l(t,["triggerTokens"],r);let i=a(e,["slidingWindow"]);return i!=null&&l(t,["slidingWindow"],bv(n,i)),t}function Dv(n,e){let t={},r=a(e,["triggerTokens"]);r!=null&&l(t,["triggerTokens"],r);let i=a(e,["slidingWindow"]);return i!=null&&l(t,["slidingWindow"],Mv(n,i)),t}function Uv(n,e,t){let r={},i=a(e,["generationConfig"]);t!==void 0&&i!=null&&l(t,["setup","generationConfig"],i);let o=a(e,["responseModalities"]);t!==void 0&&o!=null&&l(t,["setup","generationConfig","responseModalities"],o);let s=a(e,["temperature"]);t!==void 0&&s!=null&&l(t,["setup","generationConfig","temperature"],s);let c=a(e,["topP"]);t!==void 0&&c!=null&&l(t,["setup","generationConfig","topP"],c);let f=a(e,["topK"]);t!==void 0&&f!=null&&l(t,["setup","generationConfig","topK"],f);let u=a(e,["maxOutputTokens"]);t!==void 0&&u!=null&&l(t,["setup","generationConfig","maxOutputTokens"],u);let d=a(e,["mediaResolution"]);t!==void 0&&d!=null&&l(t,["setup","generationConfig","mediaResolution"],d);let h=a(e,["seed"]);t!==void 0&&h!=null&&l(t,["setup","generationConfig","seed"],h);let g=a(e,["speechConfig"]);t!==void 0&&g!=null&&l(t,["setup","generationConfig","speechConfig"],g);let v=a(e,["systemInstruction"]);t!==void 0&&v!=null&&l(t,["setup","systemInstruction"],gv(n,we(n,v)));let w=a(e,["tools"]);if(t!==void 0&&w!=null){let L=ao(n,w);Array.isArray(L)&&(L=L.map(q=>Sv(n,so(n,q)))),l(t,["setup","tools"],L)}let C=a(e,["sessionResumption"]);if(t!==void 0&&C!=null&&l(t,["setup","sessionResumption"],Av(n,C)),a(e,["inputAudioTranscription"])!==void 0)throw new Error("inputAudioTranscription parameter is not supported in Gemini API.");let N=a(e,["outputAudioTranscription"]);t!==void 0&&N!=null&&l(t,["setup","outputAudioTranscription"],Iv());let k=a(e,["realtimeInputConfig"]);t!==void 0&&k!=null&&l(t,["setup","realtimeInputConfig"],Nv(n,k));let G=a(e,["contextWindowCompression"]);return t!==void 0&&G!=null&&l(t,["setup","contextWindowCompression"],Ov(n,G)),r}function Fv(n,e,t){let r={},i=a(e,["generationConfig"]);t!==void 0&&i!=null&&l(t,["setup","generationConfig"],i);let o=a(e,["responseModalities"]);t!==void 0&&o!=null&&l(t,["setup","generationConfig","responseModalities"],o);let s=a(e,["temperature"]);t!==void 0&&s!=null&&l(t,["setup","generationConfig","temperature"],s);let c=a(e,["topP"]);t!==void 0&&c!=null&&l(t,["setup","generationConfig","topP"],c);let f=a(e,["topK"]);t!==void 0&&f!=null&&l(t,["setup","generationConfig","topK"],f);let u=a(e,["maxOutputTokens"]);t!==void 0&&u!=null&&l(t,["setup","generationConfig","maxOutputTokens"],u);let d=a(e,["mediaResolution"]);t!==void 0&&d!=null&&l(t,["setup","generationConfig","mediaResolution"],d);let h=a(e,["seed"]);t!==void 0&&h!=null&&l(t,["setup","generationConfig","seed"],h);let g=a(e,["speechConfig"]);t!==void 0&&g!=null&&l(t,["setup","generationConfig","speechConfig"],g);let v=a(e,["systemInstruction"]);t!==void 0&&v!=null&&l(t,["setup","systemInstruction"],mv(n,we(n,v)));let w=a(e,["tools"]);if(t!==void 0&&w!=null){let q=ao(n,w);Array.isArray(q)&&(q=q.map(F=>wv(n,so(n,F)))),l(t,["setup","tools"],q)}let C=a(e,["sessionResumption"]);t!==void 0&&C!=null&&l(t,["setup","sessionResumption"],xv(n,C));let N=a(e,["inputAudioTranscription"]);t!==void 0&&N!=null&&l(t,["setup","inputAudioTranscription"],jd());let k=a(e,["outputAudioTranscription"]);t!==void 0&&k!=null&&l(t,["setup","outputAudioTranscription"],jd());let G=a(e,["realtimeInputConfig"]);t!==void 0&&G!=null&&l(t,["setup","realtimeInputConfig"],kv(n,G));let L=a(e,["contextWindowCompression"]);return t!==void 0&&L!=null&&l(t,["setup","contextWindowCompression"],Dv(n,L)),r}function Lv(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["setup","model"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],Uv(n,i,t)),t}function qv(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["setup","model"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],Fv(n,i,t)),t}function Gv(){return{}}function Bv(){return{}}function Vv(){return{}}function Hv(){return{}}function $v(n,e){let t={},r=a(e,["media"]);r!=null&&l(t,["mediaChunks"],ph(n,r));let i=a(e,["audio"]);i!=null&&l(t,["audio"],cE(n,i));let o=a(e,["audioStreamEnd"]);o!=null&&l(t,["audioStreamEnd"],o);let s=a(e,["video"]);s!=null&&l(t,["video"],lE(n,s));let c=a(e,["text"]);return c!=null&&l(t,["text"],c),a(e,["activityStart"])!=null&&l(t,["activityStart"],Gv()),a(e,["activityEnd"])!=null&&l(t,["activityEnd"],Vv()),t}function Wv(n,e){let t={},r=a(e,["media"]);if(r!=null&&l(t,["mediaChunks"],ph(n,r)),a(e,["audio"])!==void 0)throw new Error("audio parameter is not supported in Vertex AI.");let i=a(e,["audioStreamEnd"]);if(i!=null&&l(t,["audioStreamEnd"],i),a(e,["video"])!==void 0)throw new Error("video parameter is not supported in Vertex AI.");if(a(e,["text"])!==void 0)throw new Error("text parameter is not supported in Vertex AI.");return a(e,["activityStart"])!=null&&l(t,["activityStart"],Bv()),a(e,["activityEnd"])!=null&&l(t,["activityEnd"],Hv()),t}function Jv(){return{}}function Kv(){return{}}function Yv(n,e){let t={},r=a(e,["thought"]);r!=null&&l(t,["thought"],r);let i=a(e,["codeExecutionResult"]);i!=null&&l(t,["codeExecutionResult"],i);let o=a(e,["executableCode"]);o!=null&&l(t,["executableCode"],o);let s=a(e,["fileData"]);s!=null&&l(t,["fileData"],s);let c=a(e,["functionCall"]);c!=null&&l(t,["functionCall"],c);let f=a(e,["functionResponse"]);f!=null&&l(t,["functionResponse"],f);let u=a(e,["inlineData"]);u!=null&&l(t,["inlineData"],u);let d=a(e,["text"]);return d!=null&&l(t,["text"],d),t}function zv(n,e){let t={},r=a(e,["videoMetadata"]);r!=null&&l(t,["videoMetadata"],r);let i=a(e,["thought"]);i!=null&&l(t,["thought"],i);let o=a(e,["codeExecutionResult"]);o!=null&&l(t,["codeExecutionResult"],o);let s=a(e,["executableCode"]);s!=null&&l(t,["executableCode"],s);let c=a(e,["fileData"]);c!=null&&l(t,["fileData"],c);let f=a(e,["functionCall"]);f!=null&&l(t,["functionCall"],f);let u=a(e,["functionResponse"]);u!=null&&l(t,["functionResponse"],u);let d=a(e,["inlineData"]);d!=null&&l(t,["inlineData"],d);let h=a(e,["text"]);return h!=null&&l(t,["text"],h),t}function Xv(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>Yv(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function jv(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>zv(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function Zd(n,e){let t={},r=a(e,["text"]);r!=null&&l(t,["text"],r);let i=a(e,["finished"]);return i!=null&&l(t,["finished"],i),t}function Qd(n,e){let t={},r=a(e,["text"]);r!=null&&l(t,["text"],r);let i=a(e,["finished"]);return i!=null&&l(t,["finished"],i),t}function Zv(n,e){let t={},r=a(e,["modelTurn"]);r!=null&&l(t,["modelTurn"],Xv(n,r));let i=a(e,["turnComplete"]);i!=null&&l(t,["turnComplete"],i);let o=a(e,["interrupted"]);o!=null&&l(t,["interrupted"],o);let s=a(e,["generationComplete"]);s!=null&&l(t,["generationComplete"],s);let c=a(e,["inputTranscription"]);c!=null&&l(t,["inputTranscription"],Zd(n,c));let f=a(e,["outputTranscription"]);return f!=null&&l(t,["outputTranscription"],Zd(n,f)),t}function Qv(n,e){let t={},r=a(e,["modelTurn"]);r!=null&&l(t,["modelTurn"],jv(n,r));let i=a(e,["turnComplete"]);i!=null&&l(t,["turnComplete"],i);let o=a(e,["interrupted"]);o!=null&&l(t,["interrupted"],o);let s=a(e,["generationComplete"]);s!=null&&l(t,["generationComplete"],s);let c=a(e,["inputTranscription"]);c!=null&&l(t,["inputTranscription"],Qd(n,c));let f=a(e,["outputTranscription"]);return f!=null&&l(t,["outputTranscription"],Qd(n,f)),t}function eT(n,e){let t={},r=a(e,["id"]);r!=null&&l(t,["id"],r);let i=a(e,["args"]);i!=null&&l(t,["args"],i);let o=a(e,["name"]);return o!=null&&l(t,["name"],o),t}function tT(n,e){let t={},r=a(e,["args"]);r!=null&&l(t,["args"],r);let i=a(e,["name"]);return i!=null&&l(t,["name"],i),t}function nT(n,e){let t={},r=a(e,["functionCalls"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>eT(n,o))),l(t,["functionCalls"],i)}return t}function rT(n,e){let t={},r=a(e,["functionCalls"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>tT(n,o))),l(t,["functionCalls"],i)}return t}function iT(n,e){let t={},r=a(e,["ids"]);return r!=null&&l(t,["ids"],r),t}function oT(n,e){let t={},r=a(e,["ids"]);return r!=null&&l(t,["ids"],r),t}function Bi(n,e){let t={},r=a(e,["modality"]);r!=null&&l(t,["modality"],r);let i=a(e,["tokenCount"]);return i!=null&&l(t,["tokenCount"],i),t}function Vi(n,e){let t={},r=a(e,["modality"]);r!=null&&l(t,["modality"],r);let i=a(e,["tokenCount"]);return i!=null&&l(t,["tokenCount"],i),t}function sT(n,e){let t={},r=a(e,["promptTokenCount"]);r!=null&&l(t,["promptTokenCount"],r);let i=a(e,["cachedContentTokenCount"]);i!=null&&l(t,["cachedContentTokenCount"],i);let o=a(e,["responseTokenCount"]);o!=null&&l(t,["responseTokenCount"],o);let s=a(e,["toolUsePromptTokenCount"]);s!=null&&l(t,["toolUsePromptTokenCount"],s);let c=a(e,["thoughtsTokenCount"]);c!=null&&l(t,["thoughtsTokenCount"],c);let f=a(e,["totalTokenCount"]);f!=null&&l(t,["totalTokenCount"],f);let u=a(e,["promptTokensDetails"]);if(u!=null){let v=u;Array.isArray(v)&&(v=v.map(w=>Bi(n,w))),l(t,["promptTokensDetails"],v)}let d=a(e,["cacheTokensDetails"]);if(d!=null){let v=d;Array.isArray(v)&&(v=v.map(w=>Bi(n,w))),l(t,["cacheTokensDetails"],v)}let h=a(e,["responseTokensDetails"]);if(h!=null){let v=h;Array.isArray(v)&&(v=v.map(w=>Bi(n,w))),l(t,["responseTokensDetails"],v)}let g=a(e,["toolUsePromptTokensDetails"]);if(g!=null){let v=g;Array.isArray(v)&&(v=v.map(w=>Bi(n,w))),l(t,["toolUsePromptTokensDetails"],v)}return t}function aT(n,e){let t={},r=a(e,["promptTokenCount"]);r!=null&&l(t,["promptTokenCount"],r);let i=a(e,["cachedContentTokenCount"]);i!=null&&l(t,["cachedContentTokenCount"],i);let o=a(e,["candidatesTokenCount"]);o!=null&&l(t,["responseTokenCount"],o);let s=a(e,["toolUsePromptTokenCount"]);s!=null&&l(t,["toolUsePromptTokenCount"],s);let c=a(e,["thoughtsTokenCount"]);c!=null&&l(t,["thoughtsTokenCount"],c);let f=a(e,["totalTokenCount"]);f!=null&&l(t,["totalTokenCount"],f);let u=a(e,["promptTokensDetails"]);if(u!=null){let w=u;Array.isArray(w)&&(w=w.map(C=>Vi(n,C))),l(t,["promptTokensDetails"],w)}let d=a(e,["cacheTokensDetails"]);if(d!=null){let w=d;Array.isArray(w)&&(w=w.map(C=>Vi(n,C))),l(t,["cacheTokensDetails"],w)}let h=a(e,["candidatesTokensDetails"]);if(h!=null){let w=h;Array.isArray(w)&&(w=w.map(C=>Vi(n,C))),l(t,["responseTokensDetails"],w)}let g=a(e,["toolUsePromptTokensDetails"]);if(g!=null){let w=g;Array.isArray(w)&&(w=w.map(C=>Vi(n,C))),l(t,["toolUsePromptTokensDetails"],w)}let v=a(e,["trafficType"]);return v!=null&&l(t,["trafficType"],v),t}function lT(n,e){let t={},r=a(e,["timeLeft"]);return r!=null&&l(t,["timeLeft"],r),t}function cT(n,e){let t={},r=a(e,["timeLeft"]);return r!=null&&l(t,["timeLeft"],r),t}function uT(n,e){let t={},r=a(e,["newHandle"]);r!=null&&l(t,["newHandle"],r);let i=a(e,["resumable"]);i!=null&&l(t,["resumable"],i);let o=a(e,["lastConsumedClientMessageIndex"]);return o!=null&&l(t,["lastConsumedClientMessageIndex"],o),t}function fT(n,e){let t={},r=a(e,["newHandle"]);r!=null&&l(t,["newHandle"],r);let i=a(e,["resumable"]);i!=null&&l(t,["resumable"],i);let o=a(e,["lastConsumedClientMessageIndex"]);return o!=null&&l(t,["lastConsumedClientMessageIndex"],o),t}function dT(n,e){let t={};a(e,["setupComplete"])!=null&&l(t,["setupComplete"],Jv());let i=a(e,["serverContent"]);i!=null&&l(t,["serverContent"],Zv(n,i));let o=a(e,["toolCall"]);o!=null&&l(t,["toolCall"],nT(n,o));let s=a(e,["toolCallCancellation"]);s!=null&&l(t,["toolCallCancellation"],iT(n,s));let c=a(e,["usageMetadata"]);c!=null&&l(t,["usageMetadata"],sT(n,c));let f=a(e,["goAway"]);f!=null&&l(t,["goAway"],lT(n,f));let u=a(e,["sessionResumptionUpdate"]);return u!=null&&l(t,["sessionResumptionUpdate"],uT(n,u)),t}function hT(n,e){let t={};a(e,["setupComplete"])!=null&&l(t,["setupComplete"],Kv());let i=a(e,["serverContent"]);i!=null&&l(t,["serverContent"],Qv(n,i));let o=a(e,["toolCall"]);o!=null&&l(t,["toolCall"],rT(n,o));let s=a(e,["toolCallCancellation"]);s!=null&&l(t,["toolCallCancellation"],oT(n,s));let c=a(e,["usageMetadata"]);c!=null&&l(t,["usageMetadata"],aT(n,c));let f=a(e,["goAway"]);f!=null&&l(t,["goAway"],cT(n,f));let u=a(e,["sessionResumptionUpdate"]);return u!=null&&l(t,["sessionResumptionUpdate"],fT(n,u)),t}function pT(n,e){let t={};if(a(e,["videoMetadata"])!==void 0)throw new Error("videoMetadata parameter is not supported in Gemini API.");let r=a(e,["thought"]);r!=null&&l(t,["thought"],r);let i=a(e,["codeExecutionResult"]);i!=null&&l(t,["codeExecutionResult"],i);let o=a(e,["executableCode"]);o!=null&&l(t,["executableCode"],o);let s=a(e,["fileData"]);s!=null&&l(t,["fileData"],s);let c=a(e,["functionCall"]);c!=null&&l(t,["functionCall"],c);let f=a(e,["functionResponse"]);f!=null&&l(t,["functionResponse"],f);let u=a(e,["inlineData"]);u!=null&&l(t,["inlineData"],u);let d=a(e,["text"]);return d!=null&&l(t,["text"],d),t}function lo(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>pT(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function gT(n,e){let t={};if(a(e,["method"])!==void 0)throw new Error("method parameter is not supported in Gemini API.");let r=a(e,["category"]);r!=null&&l(t,["category"],r);let i=a(e,["threshold"]);return i!=null&&l(t,["threshold"],i),t}function mT(){return{}}function yT(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function _T(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],yT(n,r)),t}function ET(n,e){let t={};if(a(e,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");a(e,["googleSearch"])!=null&&l(t,["googleSearch"],mT());let i=a(e,["googleSearchRetrieval"]);i!=null&&l(t,["googleSearchRetrieval"],_T(n,i));let o=a(e,["codeExecution"]);o!=null&&l(t,["codeExecution"],o);let s=a(e,["functionDeclarations"]);return s!=null&&l(t,["functionDeclarations"],s),t}function vT(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["allowedFunctionNames"]);return i!=null&&l(t,["allowedFunctionNames"],i),t}function TT(n,e){let t={},r=a(e,["functionCallingConfig"]);return r!=null&&l(t,["functionCallingConfig"],vT(n,r)),t}function CT(n,e){let t={},r=a(e,["voiceName"]);return r!=null&&l(t,["voiceName"],r),t}function ST(n,e){let t={},r=a(e,["prebuiltVoiceConfig"]);return r!=null&&l(t,["prebuiltVoiceConfig"],CT(n,r)),t}function wT(n,e){let t={},r=a(e,["voiceConfig"]);r!=null&&l(t,["voiceConfig"],ST(n,r));let i=a(e,["languageCode"]);return i!=null&&l(t,["languageCode"],i),t}function AT(n,e){let t={},r=a(e,["includeThoughts"]);r!=null&&l(t,["includeThoughts"],r);let i=a(e,["thinkingBudget"]);return i!=null&&l(t,["thinkingBudget"],i),t}function xT(n,e,t){let r={},i=a(e,["systemInstruction"]);t!==void 0&&i!=null&&l(t,["systemInstruction"],lo(n,we(n,i)));let o=a(e,["temperature"]);o!=null&&l(r,["temperature"],o);let s=a(e,["topP"]);s!=null&&l(r,["topP"],s);let c=a(e,["topK"]);c!=null&&l(r,["topK"],c);let f=a(e,["candidateCount"]);f!=null&&l(r,["candidateCount"],f);let u=a(e,["maxOutputTokens"]);u!=null&&l(r,["maxOutputTokens"],u);let d=a(e,["stopSequences"]);d!=null&&l(r,["stopSequences"],d);let h=a(e,["responseLogprobs"]);h!=null&&l(r,["responseLogprobs"],h);let g=a(e,["logprobs"]);g!=null&&l(r,["logprobs"],g);let v=a(e,["presencePenalty"]);v!=null&&l(r,["presencePenalty"],v);let w=a(e,["frequencyPenalty"]);w!=null&&l(r,["frequencyPenalty"],w);let C=a(e,["seed"]);C!=null&&l(r,["seed"],C);let N=a(e,["responseMimeType"]);N!=null&&l(r,["responseMimeType"],N);let k=a(e,["responseSchema"]);if(k!=null&&l(r,["responseSchema"],yh(n,k)),a(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is not supported in Gemini API.");if(a(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is not supported in Gemini API.");let G=a(e,["safetySettings"]);if(t!==void 0&&G!=null){let z=G;Array.isArray(z)&&(z=z.map(Z=>gT(n,Z))),l(t,["safetySettings"],z)}let L=a(e,["tools"]);if(t!==void 0&&L!=null){let z=ao(n,L);Array.isArray(z)&&(z=z.map(Z=>ET(n,so(n,Z)))),l(t,["tools"],z)}let q=a(e,["toolConfig"]);if(t!==void 0&&q!=null&&l(t,["toolConfig"],TT(n,q)),a(e,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");let F=a(e,["cachedContent"]);t!==void 0&&F!=null&&l(t,["cachedContent"],It(n,F));let B=a(e,["responseModalities"]);B!=null&&l(r,["responseModalities"],B);let J=a(e,["mediaResolution"]);J!=null&&l(r,["mediaResolution"],J);let Y=a(e,["speechConfig"]);if(Y!=null&&l(r,["speechConfig"],wT(n,_h(n,Y))),a(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is not supported in Gemini API.");let D=a(e,["thinkingConfig"]);return D!=null&&l(r,["thinkingConfig"],AT(n,D)),r}function eh(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);if(i!=null){let s=xt(n,i);Array.isArray(s)&&(s=s.map(c=>lo(n,c))),l(t,["contents"],s)}let o=a(e,["config"]);return o!=null&&l(t,["generationConfig"],xT(n,o,t)),t}function IT(n,e,t){let r={},i=a(e,["taskType"]);t!==void 0&&i!=null&&l(t,["requests[]","taskType"],i);let o=a(e,["title"]);t!==void 0&&o!=null&&l(t,["requests[]","title"],o);let s=a(e,["outputDimensionality"]);if(t!==void 0&&s!=null&&l(t,["requests[]","outputDimensionality"],s),a(e,["mimeType"])!==void 0)throw new Error("mimeType parameter is not supported in Gemini API.");if(a(e,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is not supported in Gemini API.");return r}function RT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);i!=null&&l(t,["requests[]","content"],mh(n,i));let o=a(e,["config"]);o!=null&&l(t,["config"],IT(n,o,t));let s=a(e,["model"]);return s!==void 0&&l(t,["requests[]","model"],se(n,s)),t}function PT(n,e,t){let r={};if(a(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(a(e,["negativePrompt"])!==void 0)throw new Error("negativePrompt parameter is not supported in Gemini API.");let i=a(e,["numberOfImages"]);t!==void 0&&i!=null&&l(t,["parameters","sampleCount"],i);let o=a(e,["aspectRatio"]);t!==void 0&&o!=null&&l(t,["parameters","aspectRatio"],o);let s=a(e,["guidanceScale"]);if(t!==void 0&&s!=null&&l(t,["parameters","guidanceScale"],s),a(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");let c=a(e,["safetyFilterLevel"]);t!==void 0&&c!=null&&l(t,["parameters","safetySetting"],c);let f=a(e,["personGeneration"]);t!==void 0&&f!=null&&l(t,["parameters","personGeneration"],f);let u=a(e,["includeSafetyAttributes"]);t!==void 0&&u!=null&&l(t,["parameters","includeSafetyAttributes"],u);let d=a(e,["includeRaiReason"]);t!==void 0&&d!=null&&l(t,["parameters","includeRaiReason"],d);let h=a(e,["language"]);t!==void 0&&h!=null&&l(t,["parameters","language"],h);let g=a(e,["outputMimeType"]);t!==void 0&&g!=null&&l(t,["parameters","outputOptions","mimeType"],g);let v=a(e,["outputCompressionQuality"]);if(t!==void 0&&v!=null&&l(t,["parameters","outputOptions","compressionQuality"],v),a(e,["addWatermark"])!==void 0)throw new Error("addWatermark parameter is not supported in Gemini API.");if(a(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");return r}function NT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["prompt"]);i!=null&&l(t,["instances[0]","prompt"],i);let o=a(e,["config"]);return o!=null&&l(t,["config"],PT(n,o,t)),t}function kT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","name"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function bT(n,e,t){let r={},i=a(e,["displayName"]);t!==void 0&&i!=null&&l(t,["displayName"],i);let o=a(e,["description"]);return t!==void 0&&o!=null&&l(t,["description"],o),r}function MT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","name"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],bT(n,i,t)),t}function OT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","name"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function DT(n,e){let t={};if(a(e,["systemInstruction"])!==void 0)throw new Error("systemInstruction parameter is not supported in Gemini API.");if(a(e,["tools"])!==void 0)throw new Error("tools parameter is not supported in Gemini API.");if(a(e,["generationConfig"])!==void 0)throw new Error("generationConfig parameter is not supported in Gemini API.");return t}function UT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);if(i!=null){let s=xt(n,i);Array.isArray(s)&&(s=s.map(c=>lo(n,c))),l(t,["contents"],s)}let o=a(e,["config"]);return o!=null&&l(t,["config"],DT(n,o)),t}function FT(n,e){let t={};if(a(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");let r=a(e,["imageBytes"]);r!=null&&l(t,["bytesBase64Encoded"],Rt(n,r));let i=a(e,["mimeType"]);return i!=null&&l(t,["mimeType"],i),t}function LT(n,e,t){let r={},i=a(e,["numberOfVideos"]);if(t!==void 0&&i!=null&&l(t,["parameters","sampleCount"],i),a(e,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(a(e,["fps"])!==void 0)throw new Error("fps parameter is not supported in Gemini API.");let o=a(e,["durationSeconds"]);if(t!==void 0&&o!=null&&l(t,["parameters","durationSeconds"],o),a(e,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");let s=a(e,["aspectRatio"]);if(t!==void 0&&s!=null&&l(t,["parameters","aspectRatio"],s),a(e,["resolution"])!==void 0)throw new Error("resolution parameter is not supported in Gemini API.");let c=a(e,["personGeneration"]);if(t!==void 0&&c!=null&&l(t,["parameters","personGeneration"],c),a(e,["pubsubTopic"])!==void 0)throw new Error("pubsubTopic parameter is not supported in Gemini API.");let f=a(e,["negativePrompt"]);if(t!==void 0&&f!=null&&l(t,["parameters","negativePrompt"],f),a(e,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");return r}function qT(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["prompt"]);i!=null&&l(t,["instances[0]","prompt"],i);let o=a(e,["image"]);o!=null&&l(t,["instances[0]","image"],FT(n,o));let s=a(e,["config"]);return s!=null&&l(t,["config"],LT(n,s,t)),t}function GT(n,e){let t={},r=a(e,["videoMetadata"]);r!=null&&l(t,["videoMetadata"],r);let i=a(e,["thought"]);i!=null&&l(t,["thought"],i);let o=a(e,["codeExecutionResult"]);o!=null&&l(t,["codeExecutionResult"],o);let s=a(e,["executableCode"]);s!=null&&l(t,["executableCode"],s);let c=a(e,["fileData"]);c!=null&&l(t,["fileData"],c);let f=a(e,["functionCall"]);f!=null&&l(t,["functionCall"],f);let u=a(e,["functionResponse"]);u!=null&&l(t,["functionResponse"],u);let d=a(e,["inlineData"]);d!=null&&l(t,["inlineData"],d);let h=a(e,["text"]);return h!=null&&l(t,["text"],h),t}function Nn(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>GT(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function BT(n,e){let t={},r=a(e,["featureSelectionPreference"]);return r!=null&&l(t,["featureSelectionPreference"],r),t}function VT(n,e){let t={},r=a(e,["method"]);r!=null&&l(t,["method"],r);let i=a(e,["category"]);i!=null&&l(t,["category"],i);let o=a(e,["threshold"]);return o!=null&&l(t,["threshold"],o),t}function HT(){return{}}function $T(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["dynamicThreshold"]);return i!=null&&l(t,["dynamicThreshold"],i),t}function WT(n,e){let t={},r=a(e,["dynamicRetrievalConfig"]);return r!=null&&l(t,["dynamicRetrievalConfig"],$T(n,r)),t}function Sh(n,e){let t={},r=a(e,["retrieval"]);r!=null&&l(t,["retrieval"],r),a(e,["googleSearch"])!=null&&l(t,["googleSearch"],HT());let o=a(e,["googleSearchRetrieval"]);o!=null&&l(t,["googleSearchRetrieval"],WT(n,o));let s=a(e,["codeExecution"]);s!=null&&l(t,["codeExecution"],s);let c=a(e,["functionDeclarations"]);return c!=null&&l(t,["functionDeclarations"],c),t}function JT(n,e){let t={},r=a(e,["mode"]);r!=null&&l(t,["mode"],r);let i=a(e,["allowedFunctionNames"]);return i!=null&&l(t,["allowedFunctionNames"],i),t}function KT(n,e){let t={},r=a(e,["functionCallingConfig"]);return r!=null&&l(t,["functionCallingConfig"],JT(n,r)),t}function YT(n,e){let t={},r=a(e,["voiceName"]);return r!=null&&l(t,["voiceName"],r),t}function zT(n,e){let t={},r=a(e,["prebuiltVoiceConfig"]);return r!=null&&l(t,["prebuiltVoiceConfig"],YT(n,r)),t}function XT(n,e){let t={},r=a(e,["voiceConfig"]);r!=null&&l(t,["voiceConfig"],zT(n,r));let i=a(e,["languageCode"]);return i!=null&&l(t,["languageCode"],i),t}function jT(n,e){let t={},r=a(e,["includeThoughts"]);r!=null&&l(t,["includeThoughts"],r);let i=a(e,["thinkingBudget"]);return i!=null&&l(t,["thinkingBudget"],i),t}function ZT(n,e,t){let r={},i=a(e,["systemInstruction"]);t!==void 0&&i!=null&&l(t,["systemInstruction"],Nn(n,we(n,i)));let o=a(e,["temperature"]);o!=null&&l(r,["temperature"],o);let s=a(e,["topP"]);s!=null&&l(r,["topP"],s);let c=a(e,["topK"]);c!=null&&l(r,["topK"],c);let f=a(e,["candidateCount"]);f!=null&&l(r,["candidateCount"],f);let u=a(e,["maxOutputTokens"]);u!=null&&l(r,["maxOutputTokens"],u);let d=a(e,["stopSequences"]);d!=null&&l(r,["stopSequences"],d);let h=a(e,["responseLogprobs"]);h!=null&&l(r,["responseLogprobs"],h);let g=a(e,["logprobs"]);g!=null&&l(r,["logprobs"],g);let v=a(e,["presencePenalty"]);v!=null&&l(r,["presencePenalty"],v);let w=a(e,["frequencyPenalty"]);w!=null&&l(r,["frequencyPenalty"],w);let C=a(e,["seed"]);C!=null&&l(r,["seed"],C);let N=a(e,["responseMimeType"]);N!=null&&l(r,["responseMimeType"],N);let k=a(e,["responseSchema"]);k!=null&&l(r,["responseSchema"],yh(n,k));let G=a(e,["routingConfig"]);G!=null&&l(r,["routingConfig"],G);let L=a(e,["modelSelectionConfig"]);L!=null&&l(r,["modelConfig"],BT(n,L));let q=a(e,["safetySettings"]);if(t!==void 0&&q!=null){let re=q;Array.isArray(re)&&(re=re.map(Fe=>VT(n,Fe))),l(t,["safetySettings"],re)}let F=a(e,["tools"]);if(t!==void 0&&F!=null){let re=ao(n,F);Array.isArray(re)&&(re=re.map(Fe=>Sh(n,so(n,Fe)))),l(t,["tools"],re)}let B=a(e,["toolConfig"]);t!==void 0&&B!=null&&l(t,["toolConfig"],KT(n,B));let J=a(e,["labels"]);t!==void 0&&J!=null&&l(t,["labels"],J);let Y=a(e,["cachedContent"]);t!==void 0&&Y!=null&&l(t,["cachedContent"],It(n,Y));let D=a(e,["responseModalities"]);D!=null&&l(r,["responseModalities"],D);let z=a(e,["mediaResolution"]);z!=null&&l(r,["mediaResolution"],z);let Z=a(e,["speechConfig"]);Z!=null&&l(r,["speechConfig"],XT(n,_h(n,Z)));let te=a(e,["audioTimestamp"]);te!=null&&l(r,["audioTimestamp"],te);let de=a(e,["thinkingConfig"]);return de!=null&&l(r,["thinkingConfig"],jT(n,de)),r}function th(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);if(i!=null){let s=xt(n,i);Array.isArray(s)&&(s=s.map(c=>Nn(n,c))),l(t,["contents"],s)}let o=a(e,["config"]);return o!=null&&l(t,["generationConfig"],ZT(n,o,t)),t}function QT(n,e,t){let r={},i=a(e,["taskType"]);t!==void 0&&i!=null&&l(t,["instances[]","task_type"],i);let o=a(e,["title"]);t!==void 0&&o!=null&&l(t,["instances[]","title"],o);let s=a(e,["outputDimensionality"]);t!==void 0&&s!=null&&l(t,["parameters","outputDimensionality"],s);let c=a(e,["mimeType"]);t!==void 0&&c!=null&&l(t,["instances[]","mimeType"],c);let f=a(e,["autoTruncate"]);return t!==void 0&&f!=null&&l(t,["parameters","autoTruncate"],f),r}function eC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);i!=null&&l(t,["instances[]","content"],mh(n,i));let o=a(e,["config"]);return o!=null&&l(t,["config"],QT(n,o,t)),t}function tC(n,e,t){let r={},i=a(e,["outputGcsUri"]);t!==void 0&&i!=null&&l(t,["parameters","storageUri"],i);let o=a(e,["negativePrompt"]);t!==void 0&&o!=null&&l(t,["parameters","negativePrompt"],o);let s=a(e,["numberOfImages"]);t!==void 0&&s!=null&&l(t,["parameters","sampleCount"],s);let c=a(e,["aspectRatio"]);t!==void 0&&c!=null&&l(t,["parameters","aspectRatio"],c);let f=a(e,["guidanceScale"]);t!==void 0&&f!=null&&l(t,["parameters","guidanceScale"],f);let u=a(e,["seed"]);t!==void 0&&u!=null&&l(t,["parameters","seed"],u);let d=a(e,["safetyFilterLevel"]);t!==void 0&&d!=null&&l(t,["parameters","safetySetting"],d);let h=a(e,["personGeneration"]);t!==void 0&&h!=null&&l(t,["parameters","personGeneration"],h);let g=a(e,["includeSafetyAttributes"]);t!==void 0&&g!=null&&l(t,["parameters","includeSafetyAttributes"],g);let v=a(e,["includeRaiReason"]);t!==void 0&&v!=null&&l(t,["parameters","includeRaiReason"],v);let w=a(e,["language"]);t!==void 0&&w!=null&&l(t,["parameters","language"],w);let C=a(e,["outputMimeType"]);t!==void 0&&C!=null&&l(t,["parameters","outputOptions","mimeType"],C);let N=a(e,["outputCompressionQuality"]);t!==void 0&&N!=null&&l(t,["parameters","outputOptions","compressionQuality"],N);let k=a(e,["addWatermark"]);t!==void 0&&k!=null&&l(t,["parameters","addWatermark"],k);let G=a(e,["enhancePrompt"]);return t!==void 0&&G!=null&&l(t,["parameters","enhancePrompt"],G),r}function nC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["prompt"]);i!=null&&l(t,["instances[0]","prompt"],i);let o=a(e,["config"]);return o!=null&&l(t,["config"],tC(n,o,t)),t}function rC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","name"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function iC(n,e,t){let r={},i=a(e,["displayName"]);t!==void 0&&i!=null&&l(t,["displayName"],i);let o=a(e,["description"]);return t!==void 0&&o!=null&&l(t,["description"],o),r}function oC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],iC(n,i,t)),t}function sC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","name"],se(n,r));let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function aC(n,e,t){let r={},i=a(e,["systemInstruction"]);t!==void 0&&i!=null&&l(t,["systemInstruction"],Nn(n,we(n,i)));let o=a(e,["tools"]);if(t!==void 0&&o!=null){let c=o;Array.isArray(c)&&(c=c.map(f=>Sh(n,f))),l(t,["tools"],c)}let s=a(e,["generationConfig"]);return t!==void 0&&s!=null&&l(t,["generationConfig"],s),r}function lC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);if(i!=null){let s=xt(n,i);Array.isArray(s)&&(s=s.map(c=>Nn(n,c))),l(t,["contents"],s)}let o=a(e,["config"]);return o!=null&&l(t,["config"],aC(n,o,t)),t}function cC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["contents"]);if(i!=null){let s=xt(n,i);Array.isArray(s)&&(s=s.map(c=>Nn(n,c))),l(t,["contents"],s)}let o=a(e,["config"]);return o!=null&&l(t,["config"],o),t}function uC(n,e){let t={},r=a(e,["gcsUri"]);r!=null&&l(t,["gcsUri"],r);let i=a(e,["imageBytes"]);i!=null&&l(t,["bytesBase64Encoded"],Rt(n,i));let o=a(e,["mimeType"]);return o!=null&&l(t,["mimeType"],o),t}function fC(n,e,t){let r={},i=a(e,["numberOfVideos"]);t!==void 0&&i!=null&&l(t,["parameters","sampleCount"],i);let o=a(e,["outputGcsUri"]);t!==void 0&&o!=null&&l(t,["parameters","storageUri"],o);let s=a(e,["fps"]);t!==void 0&&s!=null&&l(t,["parameters","fps"],s);let c=a(e,["durationSeconds"]);t!==void 0&&c!=null&&l(t,["parameters","durationSeconds"],c);let f=a(e,["seed"]);t!==void 0&&f!=null&&l(t,["parameters","seed"],f);let u=a(e,["aspectRatio"]);t!==void 0&&u!=null&&l(t,["parameters","aspectRatio"],u);let d=a(e,["resolution"]);t!==void 0&&d!=null&&l(t,["parameters","resolution"],d);let h=a(e,["personGeneration"]);t!==void 0&&h!=null&&l(t,["parameters","personGeneration"],h);let g=a(e,["pubsubTopic"]);t!==void 0&&g!=null&&l(t,["parameters","pubsubTopic"],g);let v=a(e,["negativePrompt"]);t!==void 0&&v!=null&&l(t,["parameters","negativePrompt"],v);let w=a(e,["enhancePrompt"]);return t!==void 0&&w!=null&&l(t,["parameters","enhancePrompt"],w),r}function dC(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["_url","model"],se(n,r));let i=a(e,["prompt"]);i!=null&&l(t,["instances[0]","prompt"],i);let o=a(e,["image"]);o!=null&&l(t,["instances[0]","image"],uC(n,o));let s=a(e,["config"]);return s!=null&&l(t,["config"],fC(n,s,t)),t}function hC(n,e){let t={},r=a(e,["thought"]);r!=null&&l(t,["thought"],r);let i=a(e,["codeExecutionResult"]);i!=null&&l(t,["codeExecutionResult"],i);let o=a(e,["executableCode"]);o!=null&&l(t,["executableCode"],o);let s=a(e,["fileData"]);s!=null&&l(t,["fileData"],s);let c=a(e,["functionCall"]);c!=null&&l(t,["functionCall"],c);let f=a(e,["functionResponse"]);f!=null&&l(t,["functionResponse"],f);let u=a(e,["inlineData"]);u!=null&&l(t,["inlineData"],u);let d=a(e,["text"]);return d!=null&&l(t,["text"],d),t}function pC(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>hC(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function gC(n,e){let t={},r=a(e,["citationSources"]);return r!=null&&l(t,["citations"],r),t}function mC(n,e){let t={},r=a(e,["content"]);r!=null&&l(t,["content"],pC(n,r));let i=a(e,["citationMetadata"]);i!=null&&l(t,["citationMetadata"],gC(n,i));let o=a(e,["tokenCount"]);o!=null&&l(t,["tokenCount"],o);let s=a(e,["finishReason"]);s!=null&&l(t,["finishReason"],s);let c=a(e,["avgLogprobs"]);c!=null&&l(t,["avgLogprobs"],c);let f=a(e,["groundingMetadata"]);f!=null&&l(t,["groundingMetadata"],f);let u=a(e,["index"]);u!=null&&l(t,["index"],u);let d=a(e,["logprobsResult"]);d!=null&&l(t,["logprobsResult"],d);let h=a(e,["safetyRatings"]);return h!=null&&l(t,["safetyRatings"],h),t}function nh(n,e){let t={},r=a(e,["candidates"]);if(r!=null){let c=r;Array.isArray(c)&&(c=c.map(f=>mC(n,f))),l(t,["candidates"],c)}let i=a(e,["modelVersion"]);i!=null&&l(t,["modelVersion"],i);let o=a(e,["promptFeedback"]);o!=null&&l(t,["promptFeedback"],o);let s=a(e,["usageMetadata"]);return s!=null&&l(t,["usageMetadata"],s),t}function yC(n,e){let t={},r=a(e,["values"]);return r!=null&&l(t,["values"],r),t}function _C(){return{}}function EC(n,e){let t={},r=a(e,["embeddings"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>yC(n,s))),l(t,["embeddings"],o)}return a(e,["metadata"])!=null&&l(t,["metadata"],_C()),t}function vC(n,e){let t={},r=a(e,["bytesBase64Encoded"]);r!=null&&l(t,["imageBytes"],Rt(n,r));let i=a(e,["mimeType"]);return i!=null&&l(t,["mimeType"],i),t}function wh(n,e){let t={},r=a(e,["safetyAttributes","categories"]);r!=null&&l(t,["categories"],r);let i=a(e,["safetyAttributes","scores"]);i!=null&&l(t,["scores"],i);let o=a(e,["contentType"]);return o!=null&&l(t,["contentType"],o),t}function TC(n,e){let t={},r=a(e,["_self"]);r!=null&&l(t,["image"],vC(n,r));let i=a(e,["raiFilteredReason"]);i!=null&&l(t,["raiFilteredReason"],i);let o=a(e,["_self"]);return o!=null&&l(t,["safetyAttributes"],wh(n,o)),t}function CC(n,e){let t={},r=a(e,["predictions"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>TC(n,s))),l(t,["generatedImages"],o)}let i=a(e,["positivePromptSafetyAttributes"]);return i!=null&&l(t,["positivePromptSafetyAttributes"],wh(n,i)),t}function SC(n,e){let t={},r=a(e,["baseModel"]);r!=null&&l(t,["baseModel"],r);let i=a(e,["createTime"]);i!=null&&l(t,["createTime"],i);let o=a(e,["updateTime"]);return o!=null&&l(t,["updateTime"],o),t}function rh(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["description"]);o!=null&&l(t,["description"],o);let s=a(e,["version"]);s!=null&&l(t,["version"],s);let c=a(e,["_self"]);c!=null&&l(t,["tunedModelInfo"],SC(n,c));let f=a(e,["inputTokenLimit"]);f!=null&&l(t,["inputTokenLimit"],f);let u=a(e,["outputTokenLimit"]);u!=null&&l(t,["outputTokenLimit"],u);let d=a(e,["supportedGenerationMethods"]);return d!=null&&l(t,["supportedActions"],d),t}function wC(){return{}}function AC(n,e){let t={},r=a(e,["totalTokens"]);r!=null&&l(t,["totalTokens"],r);let i=a(e,["cachedContentTokenCount"]);return i!=null&&l(t,["cachedContentTokenCount"],i),t}function xC(n,e){let t={},r=a(e,["video","uri"]);r!=null&&l(t,["uri"],r);let i=a(e,["video","encodedVideo"]);i!=null&&l(t,["videoBytes"],Rt(n,i));let o=a(e,["encoding"]);return o!=null&&l(t,["mimeType"],o),t}function IC(n,e){let t={},r=a(e,["_self"]);return r!=null&&l(t,["video"],xC(n,r)),t}function RC(n,e){let t={},r=a(e,["generatedSamples"]);if(r!=null){let s=r;Array.isArray(s)&&(s=s.map(c=>IC(n,c))),l(t,["generatedVideos"],s)}let i=a(e,["raiMediaFilteredCount"]);i!=null&&l(t,["raiMediaFilteredCount"],i);let o=a(e,["raiMediaFilteredReasons"]);return o!=null&&l(t,["raiMediaFilteredReasons"],o),t}function PC(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["metadata"]);i!=null&&l(t,["metadata"],i);let o=a(e,["done"]);o!=null&&l(t,["done"],o);let s=a(e,["error"]);s!=null&&l(t,["error"],s);let c=a(e,["response","generateVideoResponse"]);return c!=null&&l(t,["response"],RC(n,c)),t}function NC(n,e){let t={},r=a(e,["videoMetadata"]);r!=null&&l(t,["videoMetadata"],r);let i=a(e,["thought"]);i!=null&&l(t,["thought"],i);let o=a(e,["codeExecutionResult"]);o!=null&&l(t,["codeExecutionResult"],o);let s=a(e,["executableCode"]);s!=null&&l(t,["executableCode"],s);let c=a(e,["fileData"]);c!=null&&l(t,["fileData"],c);let f=a(e,["functionCall"]);f!=null&&l(t,["functionCall"],f);let u=a(e,["functionResponse"]);u!=null&&l(t,["functionResponse"],u);let d=a(e,["inlineData"]);d!=null&&l(t,["inlineData"],d);let h=a(e,["text"]);return h!=null&&l(t,["text"],h),t}function kC(n,e){let t={},r=a(e,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>NC(n,s))),l(t,["parts"],o)}let i=a(e,["role"]);return i!=null&&l(t,["role"],i),t}function bC(n,e){let t={},r=a(e,["citations"]);return r!=null&&l(t,["citations"],r),t}function MC(n,e){let t={},r=a(e,["content"]);r!=null&&l(t,["content"],kC(n,r));let i=a(e,["citationMetadata"]);i!=null&&l(t,["citationMetadata"],bC(n,i));let o=a(e,["finishMessage"]);o!=null&&l(t,["finishMessage"],o);let s=a(e,["finishReason"]);s!=null&&l(t,["finishReason"],s);let c=a(e,["avgLogprobs"]);c!=null&&l(t,["avgLogprobs"],c);let f=a(e,["groundingMetadata"]);f!=null&&l(t,["groundingMetadata"],f);let u=a(e,["index"]);u!=null&&l(t,["index"],u);let d=a(e,["logprobsResult"]);d!=null&&l(t,["logprobsResult"],d);let h=a(e,["safetyRatings"]);return h!=null&&l(t,["safetyRatings"],h),t}function ih(n,e){let t={},r=a(e,["candidates"]);if(r!=null){let u=r;Array.isArray(u)&&(u=u.map(d=>MC(n,d))),l(t,["candidates"],u)}let i=a(e,["createTime"]);i!=null&&l(t,["createTime"],i);let o=a(e,["responseId"]);o!=null&&l(t,["responseId"],o);let s=a(e,["modelVersion"]);s!=null&&l(t,["modelVersion"],s);let c=a(e,["promptFeedback"]);c!=null&&l(t,["promptFeedback"],c);let f=a(e,["usageMetadata"]);return f!=null&&l(t,["usageMetadata"],f),t}function OC(n,e){let t={},r=a(e,["truncated"]);r!=null&&l(t,["truncated"],r);let i=a(e,["token_count"]);return i!=null&&l(t,["tokenCount"],i),t}function DC(n,e){let t={},r=a(e,["values"]);r!=null&&l(t,["values"],r);let i=a(e,["statistics"]);return i!=null&&l(t,["statistics"],OC(n,i)),t}function UC(n,e){let t={},r=a(e,["billableCharacterCount"]);return r!=null&&l(t,["billableCharacterCount"],r),t}function FC(n,e){let t={},r=a(e,["predictions[]","embeddings"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>DC(n,s))),l(t,["embeddings"],o)}let i=a(e,["metadata"]);return i!=null&&l(t,["metadata"],UC(n,i)),t}function LC(n,e){let t={},r=a(e,["gcsUri"]);r!=null&&l(t,["gcsUri"],r);let i=a(e,["bytesBase64Encoded"]);i!=null&&l(t,["imageBytes"],Rt(n,i));let o=a(e,["mimeType"]);return o!=null&&l(t,["mimeType"],o),t}function Ah(n,e){let t={},r=a(e,["safetyAttributes","categories"]);r!=null&&l(t,["categories"],r);let i=a(e,["safetyAttributes","scores"]);i!=null&&l(t,["scores"],i);let o=a(e,["contentType"]);return o!=null&&l(t,["contentType"],o),t}function qC(n,e){let t={},r=a(e,["_self"]);r!=null&&l(t,["image"],LC(n,r));let i=a(e,["raiFilteredReason"]);i!=null&&l(t,["raiFilteredReason"],i);let o=a(e,["_self"]);o!=null&&l(t,["safetyAttributes"],Ah(n,o));let s=a(e,["prompt"]);return s!=null&&l(t,["enhancedPrompt"],s),t}function GC(n,e){let t={},r=a(e,["predictions"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(s=>qC(n,s))),l(t,["generatedImages"],o)}let i=a(e,["positivePromptSafetyAttributes"]);return i!=null&&l(t,["positivePromptSafetyAttributes"],Ah(n,i)),t}function BC(n,e){let t={},r=a(e,["endpoint"]);r!=null&&l(t,["name"],r);let i=a(e,["deployedModelId"]);return i!=null&&l(t,["deployedModelId"],i),t}function VC(n,e){let t={},r=a(e,["labels","google-vertex-llm-tuning-base-model-id"]);r!=null&&l(t,["baseModel"],r);let i=a(e,["createTime"]);i!=null&&l(t,["createTime"],i);let o=a(e,["updateTime"]);return o!=null&&l(t,["updateTime"],o),t}function oh(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["displayName"]);i!=null&&l(t,["displayName"],i);let o=a(e,["description"]);o!=null&&l(t,["description"],o);let s=a(e,["versionId"]);s!=null&&l(t,["version"],s);let c=a(e,["deployedModels"]);if(c!=null){let d=c;Array.isArray(d)&&(d=d.map(h=>BC(n,h))),l(t,["endpoints"],d)}let f=a(e,["labels"]);f!=null&&l(t,["labels"],f);let u=a(e,["_self"]);return u!=null&&l(t,["tunedModelInfo"],VC(n,u)),t}function HC(){return{}}function $C(n,e){let t={},r=a(e,["totalTokens"]);return r!=null&&l(t,["totalTokens"],r),t}function WC(n,e){let t={},r=a(e,["tokensInfo"]);return r!=null&&l(t,["tokensInfo"],r),t}function JC(n,e){let t={},r=a(e,["gcsUri"]);r!=null&&l(t,["uri"],r);let i=a(e,["bytesBase64Encoded"]);i!=null&&l(t,["videoBytes"],Rt(n,i));let o=a(e,["mimeType"]);return o!=null&&l(t,["mimeType"],o),t}function KC(n,e){let t={},r=a(e,["_self"]);return r!=null&&l(t,["video"],JC(n,r)),t}function YC(n,e){let t={},r=a(e,["videos"]);if(r!=null){let s=r;Array.isArray(s)&&(s=s.map(c=>KC(n,c))),l(t,["generatedVideos"],s)}let i=a(e,["raiMediaFilteredCount"]);i!=null&&l(t,["raiMediaFilteredCount"],i);let o=a(e,["raiMediaFilteredReasons"]);return o!=null&&l(t,["raiMediaFilteredReasons"],o),t}function zC(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["metadata"]);i!=null&&l(t,["metadata"],i);let o=a(e,["done"]);o!=null&&l(t,["done"],o);let s=a(e,["error"]);s!=null&&l(t,["error"],s);let c=a(e,["response"]);return c!=null&&l(t,["response"],YC(n,c)),t}var XC="FunctionResponse request must have an `id` field from the response of a ToolCall.FunctionalCalls in Google AI.";async function jC(n,e,t){let r,i;t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data),n.isVertexAI()?r=hT(n,i):r=dT(n,i),e(r)}var to=class{constructor(e,t,r){this.apiClient=e,this.auth=t,this.webSocketFactory=r}async connect(e){var t,r,i,o;let s=this.apiClient.getWebsocketBaseUrl(),c=this.apiClient.getApiVersion(),f,u=eS(this.apiClient.getDefaultHeaders());if(this.apiClient.isVertexAI())f=`${s}/ws/google.cloud.aiplatform.${c}.LlmBidiService/BidiGenerateContent`,await this.auth.addAuthHeaders(u);else{let q=this.apiClient.getApiKey();f=`${s}/ws/google.ai.generativelanguage.${c}.GenerativeService.BidiGenerateContent?key=${q}`}let d=()=>{},h=new Promise(q=>{d=q}),g=e.callbacks,v=function(){var q;(q=g?.onopen)===null||q===void 0||q.call(g),d({})},w=this.apiClient,C={onopen:v,onmessage:q=>{jC(w,g.onmessage,q)},onerror:(t=g?.onerror)!==null&&t!==void 0?t:function(q){},onclose:(r=g?.onclose)!==null&&r!==void 0?r:function(q){}},N=this.webSocketFactory.create(f,QC(u),C);N.connect(),await h;let k=se(this.apiClient,e.model);if(this.apiClient.isVertexAI()&&k.startsWith("publishers/")){let q=this.apiClient.getProject(),F=this.apiClient.getLocation();k=`projects/${q}/locations/${F}/`+k}let G={};this.apiClient.isVertexAI()&&((i=e.config)===null||i===void 0?void 0:i.responseModalities)===void 0&&(e.config===void 0?e.config={responseModalities:[I.Modality.AUDIO]}:e.config.responseModalities=[I.Modality.AUDIO]),!((o=e.config)===null||o===void 0)&&o.generationConfig&&console.warn("Setting `LiveConnectConfig.generation_config` is deprecated, please set the fields on `LiveConnectConfig` directly. This will become an error in a future version (not before Q3 2025).");let L={model:k,config:e.config,callbacks:e.callbacks};return this.apiClient.isVertexAI()?G=qv(this.apiClient,L):G=Lv(this.apiClient,L),delete G.config,N.send(JSON.stringify(G)),new no(N,this.apiClient)}},ZC={turnComplete:!0},no=class{constructor(e,t){this.conn=e,this.apiClient=t}tLiveClientContent(e,t){if(t.turns!==null&&t.turns!==void 0){let r=[];try{r=xt(e,t.turns),e.isVertexAI()?r=r.map(i=>Nn(e,i)):r=r.map(i=>lo(e,i))}catch{throw new Error(`Failed to parse client content "turns", type: '${typeof t.turns}'`)}return{clientContent:{turns:r,turnComplete:t.turnComplete}}}return{clientContent:{turnComplete:t.turnComplete}}}tLiveClienttToolResponse(e,t){let r=[];if(t.functionResponses==null)throw new Error("functionResponses is required.");if(Array.isArray(t.functionResponses)?r=t.functionResponses:r=[t.functionResponses],r.length===0)throw new Error("functionResponses is required.");for(let o of r){if(typeof o!="object"||o===null||!("name"in o)||!("response"in o))throw new Error(`Could not parse function response, type '${typeof o}'.`);if(!e.isVertexAI()&&!("id"in o))throw new Error(XC)}return{toolResponse:{functionResponses:r}}}sendClientContent(e){e=Object.assign(Object.assign({},ZC),e);let t=this.tLiveClientContent(this.apiClient,e);this.conn.send(JSON.stringify(t))}sendRealtimeInput(e){let t={};this.apiClient.isVertexAI()?t={realtimeInput:Wv(this.apiClient,e)}:t={realtimeInput:$v(this.apiClient,e)},this.conn.send(JSON.stringify(t))}sendToolResponse(e){if(e.functionResponses==null)throw new Error("Tool response parameters are required.");let t=this.tLiveClienttToolResponse(this.apiClient,e);this.conn.send(JSON.stringify(t))}close(){this.conn.close()}};function QC(n){let e={};return n.forEach((t,r)=>{e[r]=t}),e}function eS(n){let e=new Headers;for(let[t,r]of Object.entries(n))e.append(t,r);return e}var ro=class extends Jt{constructor(e){super(),this.apiClient=e,this.generateContent=async t=>await this.generateContentInternal(t),this.generateContentStream=async t=>await this.generateContentStreamInternal(t),this.generateImages=async t=>await this.generateImagesInternal(t).then(r=>{var i;let o,s=[];if(r?.generatedImages)for(let f of r.generatedImages)f&&f?.safetyAttributes&&((i=f?.safetyAttributes)===null||i===void 0?void 0:i.contentType)==="Positive Prompt"?o=f?.safetyAttributes:s.push(f);let c;return o?c={generatedImages:s,positivePromptSafetyAttributes:o}:c={generatedImages:s},c})}async generateContentInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=th(this.apiClient,e);return c=K("{model}:generateContent",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=ih(this.apiClient,d),g=new Wt;return Object.assign(g,h),g})}else{let u=eh(this.apiClient,e);return c=K("{model}:generateContent",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=nh(this.apiClient,d),g=new Wt;return Object.assign(g,h),g})}}async generateContentStreamInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=th(this.apiClient,e);c=K("{model}:streamGenerateContent?alt=sse",u._url),f=u._query,delete u.config,delete u._url,delete u._query;let d=this.apiClient;return s=d.requestStream({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}),s.then(function(h){return ji(this,arguments,function*(){var g,v,w,C;try{for(var N=!0,k=Ya(h),G;G=yield Ee(k.next()),g=G.done,!g;N=!0){C=G.value,N=!1;let q=ih(d,yield Ee(C.json())),F=new Wt;Object.assign(F,q),yield yield Ee(F)}}catch(L){v={error:L}}finally{try{!N&&!g&&(w=k.return)&&(yield Ee(w.call(k)))}finally{if(v)throw v.error}}})})}else{let u=eh(this.apiClient,e);c=K("{model}:streamGenerateContent?alt=sse",u._url),f=u._query,delete u.config,delete u._url,delete u._query;let d=this.apiClient;return s=d.requestStream({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}),s.then(function(h){return ji(this,arguments,function*(){var g,v,w,C;try{for(var N=!0,k=Ya(h),G;G=yield Ee(k.next()),g=G.done,!g;N=!0){C=G.value,N=!1;let q=nh(d,yield Ee(C.json())),F=new Wt;Object.assign(F,q),yield yield Ee(F)}}catch(L){v={error:L}}finally{try{!N&&!g&&(w=k.return)&&(yield Ee(w.call(k)))}finally{if(v)throw v.error}}})})}}async embedContent(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=eC(this.apiClient,e);return c=K("{model}:predict",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=FC(this.apiClient,d),g=new ur;return Object.assign(g,h),g})}else{let u=RT(this.apiClient,e);return c=K("{model}:batchEmbedContents",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=EC(this.apiClient,d),g=new ur;return Object.assign(g,h),g})}}async generateImagesInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=nC(this.apiClient,e);return c=K("{model}:predict",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=GC(this.apiClient,d),g=new fr;return Object.assign(g,h),g})}else{let u=NT(this.apiClient,e);return c=K("{model}:predict",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=CC(this.apiClient,d),g=new fr;return Object.assign(g,h),g})}}async get(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=rC(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>oh(this.apiClient,d))}else{let u=kT(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>rh(this.apiClient,d))}}async update(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=oC(this.apiClient,e);return c=K("{model}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>oh(this.apiClient,d))}else{let u=MT(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>rh(this.apiClient,d))}}async delete(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=sC(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(()=>{let d=HC(),h=new dr;return Object.assign(h,d),h})}else{let u=OT(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(()=>{let d=wC(),h=new dr;return Object.assign(h,d),h})}}async countTokens(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=lC(this.apiClient,e);return c=K("{model}:countTokens",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=$C(this.apiClient,d),g=new hr;return Object.assign(g,h),g})}else{let u=UT(this.apiClient,e);return c=K("{model}:countTokens",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=AC(this.apiClient,d),g=new hr;return Object.assign(g,h),g})}}async computeTokens(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI()){let c=cC(this.apiClient,e);return o=K("{model}:computeTokens",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>{let u=WC(this.apiClient,f),d=new Ji;return Object.assign(d,u),d})}else throw new Error("This method is only supported by the Vertex AI.")}async generateVideos(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=dC(this.apiClient,e);return c=K("{model}:predictLongRunning",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>zC(this.apiClient,d))}else{let u=qT(this.apiClient,e);return c=K("{model}:predictLongRunning",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>PC(this.apiClient,d))}}};function tS(n,e){let t={},r=a(e,["operationName"]);r!=null&&l(t,["_url","operationName"],r);let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function nS(n,e){let t={},r=a(e,["operationName"]);r!=null&&l(t,["_url","operationName"],r);let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function rS(n,e){let t={},r=a(e,["operationName"]);r!=null&&l(t,["operationName"],r);let i=a(e,["resourceName"]);i!=null&&l(t,["_url","resourceName"],i);let o=a(e,["config"]);return o!=null&&l(t,["config"],o),t}function iS(n,e){let t={},r=a(e,["video","uri"]);r!=null&&l(t,["uri"],r);let i=a(e,["video","encodedVideo"]);i!=null&&l(t,["videoBytes"],Rt(n,i));let o=a(e,["encoding"]);return o!=null&&l(t,["mimeType"],o),t}function oS(n,e){let t={},r=a(e,["_self"]);return r!=null&&l(t,["video"],iS(n,r)),t}function sS(n,e){let t={},r=a(e,["generatedSamples"]);if(r!=null){let s=r;Array.isArray(s)&&(s=s.map(c=>oS(n,c))),l(t,["generatedVideos"],s)}let i=a(e,["raiMediaFilteredCount"]);i!=null&&l(t,["raiMediaFilteredCount"],i);let o=a(e,["raiMediaFilteredReasons"]);return o!=null&&l(t,["raiMediaFilteredReasons"],o),t}function aS(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["metadata"]);i!=null&&l(t,["metadata"],i);let o=a(e,["done"]);o!=null&&l(t,["done"],o);let s=a(e,["error"]);s!=null&&l(t,["error"],s);let c=a(e,["response","generateVideoResponse"]);return c!=null&&l(t,["response"],sS(n,c)),t}function lS(n,e){let t={},r=a(e,["gcsUri"]);r!=null&&l(t,["uri"],r);let i=a(e,["bytesBase64Encoded"]);i!=null&&l(t,["videoBytes"],Rt(n,i));let o=a(e,["mimeType"]);return o!=null&&l(t,["mimeType"],o),t}function cS(n,e){let t={},r=a(e,["_self"]);return r!=null&&l(t,["video"],lS(n,r)),t}function uS(n,e){let t={},r=a(e,["videos"]);if(r!=null){let s=r;Array.isArray(s)&&(s=s.map(c=>cS(n,c))),l(t,["generatedVideos"],s)}let i=a(e,["raiMediaFilteredCount"]);i!=null&&l(t,["raiMediaFilteredCount"],i);let o=a(e,["raiMediaFilteredReasons"]);return o!=null&&l(t,["raiMediaFilteredReasons"],o),t}function sh(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["metadata"]);i!=null&&l(t,["metadata"],i);let o=a(e,["done"]);o!=null&&l(t,["done"],o);let s=a(e,["error"]);s!=null&&l(t,["error"],s);let c=a(e,["response"]);return c!=null&&l(t,["response"],uS(n,c)),t}var io=class extends Jt{constructor(e){super(),this.apiClient=e}async getVideosOperation(e){let t=e.operation,r=e.config;if(t.name===void 0||t.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){let i=t.name.split("/operations/")[0],o;return r&&"httpOptions"in r&&(o=r.httpOptions),this.fetchPredictVideosOperationInternal({operationName:t.name,resourceName:i,config:{httpOptions:o}})}else return this.getVideosOperationInternal({operationName:t.name,config:r})}async getVideosOperationInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=nS(this.apiClient,e);return c=K("{operationName}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>sh(this.apiClient,d))}else{let u=tS(this.apiClient,e);return c=K("{operationName}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>aS(this.apiClient,d))}}async fetchPredictVideosOperationInternal(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI()){let c=rS(this.apiClient,e);return o=K("{resourceName}:fetchPredictOperation",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>sh(this.apiClient,f))}else throw new Error("This method is only supported by the Vertex AI.")}};var fS="Content-Type",dS="X-Server-Timeout",hS="User-Agent",pS="x-goog-api-client",gS="0.11.0",mS=`google-genai-sdk/${gS}`,yS="v1beta1",_S="v1beta",ah=/^data: (.*)(?:\n\n|\r\r|\r\n\r\n)/,oo=class extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ClientError"}},yr=class extends Error{constructor(e,t){t?super(e,{cause:t}):super(e,{cause:new Error().stack}),this.message=e,this.name="ServerError"}},Xa=class{constructor(e){var t,r;this.clientOptions=Object.assign(Object.assign({},e),{project:e.project,location:e.location,apiKey:e.apiKey,vertexai:e.vertexai});let i={};this.clientOptions.vertexai?(i.apiVersion=(t=this.clientOptions.apiVersion)!==null&&t!==void 0?t:yS,this.getProject()||this.getLocation()?(i.baseUrl=`https://${this.clientOptions.location}-aiplatform.googleapis.com/`,this.clientOptions.apiKey=void 0):(i.baseUrl="https://aiplatform.googleapis.com/",this.clientOptions.project=void 0,this.clientOptions.location=void 0)):(i.apiVersion=(r=this.clientOptions.apiVersion)!==null&&r!==void 0?r:_S,i.baseUrl="https://generativelanguage.googleapis.com/"),i.headers=this.getDefaultHeaders(),this.clientOptions.httpOptions=i,e.httpOptions&&(this.clientOptions.httpOptions=this.patchHttpOptions(i,e.httpOptions))}isVertexAI(){var e;return(e=this.clientOptions.vertexai)!==null&&e!==void 0?e:!1}getProject(){return this.clientOptions.project}getLocation(){return this.clientOptions.location}getApiVersion(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.apiVersion!==void 0)return this.clientOptions.httpOptions.apiVersion;throw new Error("API version is not set.")}getBaseUrl(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.baseUrl!==void 0)return this.clientOptions.httpOptions.baseUrl;throw new Error("Base URL is not set.")}getRequestUrl(){return this.getRequestUrlInternal(this.clientOptions.httpOptions)}getHeaders(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.headers!==void 0)return this.clientOptions.httpOptions.headers;throw new Error("Headers are not set.")}getRequestUrlInternal(e){if(!e||e.baseUrl===void 0||e.apiVersion===void 0)throw new Error("HTTP options are not correctly set.");let r=[e.baseUrl.endsWith("/")?e.baseUrl.slice(0,-1):e.baseUrl];return e.apiVersion&&e.apiVersion!==""&&r.push(e.apiVersion),r.join("/")}getBaseResourcePath(){return`projects/${this.clientOptions.project}/locations/${this.clientOptions.location}`}getApiKey(){return this.clientOptions.apiKey}getWebsocketBaseUrl(){let e=this.getBaseUrl(),t=new URL(e);return t.protocol=t.protocol=="http:"?"ws":"wss",t.toString()}setBaseUrl(e){if(this.clientOptions.httpOptions)this.clientOptions.httpOptions.baseUrl=e;else throw new Error("HTTP options are not correctly set.")}constructUrl(e,t,r){let i=[this.getRequestUrlInternal(t)];return r&&i.push(this.getBaseResourcePath()),e!==""&&i.push(e),new URL(`${i.join("/")}`)}shouldPrependVertexProjectPath(e){return!(this.clientOptions.apiKey||!this.clientOptions.vertexai||e.path.startsWith("projects/")||e.httpMethod==="GET"&&e.path.startsWith("publishers/google/models"))}async request(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let r=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,r);if(e.queryParams)for(let[s,c]of Object.entries(e.queryParams))i.searchParams.append(s,String(c));let o={};if(e.httpMethod==="GET"){if(e.body&&e.body!=="{}")throw new Error("Request body should be empty for GET request, but got non empty request body")}else o.body=e.body;return o=await this.includeExtraHttpOptionsToRequestInit(o,t,e.abortSignal),this.unaryApiCall(i,o,e.httpMethod)}patchHttpOptions(e,t){let r=JSON.parse(JSON.stringify(e));for(let[i,o]of Object.entries(t))typeof o=="object"?r[i]=Object.assign(Object.assign({},r[i]),o):o!==void 0&&(r[i]=o);return r}async requestStream(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let r=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,r);(!i.searchParams.has("alt")||i.searchParams.get("alt")!=="sse")&&i.searchParams.set("alt","sse");let o={};return o.body=e.body,o=await this.includeExtraHttpOptionsToRequestInit(o,t,e.abortSignal),this.streamApiCall(i,o,e.httpMethod)}async includeExtraHttpOptionsToRequestInit(e,t,r){if(t&&t.timeout||r){let i=new AbortController,o=i.signal;t.timeout&&t?.timeout>0&&setTimeout(()=>i.abort(),t.timeout),r&&r.addEventListener("abort",()=>{i.abort()}),e.signal=o}return e.headers=await this.getHeadersInternal(t),e}async unaryApiCall(e,t,r){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:r})).then(async i=>(await lh(i),new Kt(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}async streamApiCall(e,t,r){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:r})).then(async i=>(await lh(i),this.processStreamResponse(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}processStreamResponse(e){var t;return ji(this,arguments,function*(){let i=(t=e?.body)===null||t===void 0?void 0:t.getReader(),o=new TextDecoder("utf-8");if(!i)throw new Error("Response body is empty");try{let s="";for(;;){let{done:c,value:f}=yield Ee(i.read());if(c){if(s.trim().length>0)throw new Error("Incomplete JSON segment at the end");break}let u=o.decode(f);try{let h=JSON.parse(u);if("error"in h){let g=JSON.parse(JSON.stringify(h.error)),v=g.status,w=g.code,C=`got status: ${v}. ${JSON.stringify(h)}`;if(w>=400&&w<500)throw new oo(C);if(w>=500&&w<600)throw new yr(C)}}catch(h){let g=h;if(g.name==="ClientError"||g.name==="ServerError")throw h}s+=u;let d=s.match(ah);for(;d;){let h=d[1];try{let g=new Response(h,{headers:e?.headers,status:e?.status,statusText:e?.statusText});yield yield Ee(new Kt(g)),s=s.slice(d[0].length),d=s.match(ah)}catch(g){throw new Error(`exception parsing stream chunk ${h}. ${g}`)}}}}finally{i.releaseLock()}})}async apiCall(e,t){return fetch(e,t).catch(r=>{throw new Error(`exception ${r} sending request`)})}getDefaultHeaders(){let e={},t=mS+" "+this.clientOptions.userAgentExtra;return e[hS]=t,e[pS]=t,e[fS]="application/json",e}async getHeadersInternal(e){let t=new Headers;if(e&&e.headers){for(let[r,i]of Object.entries(e.headers))t.append(r,i);e.timeout&&e.timeout>0&&t.append(dS,String(Math.ceil(e.timeout/1e3)))}return await this.clientOptions.auth.addAuthHeaders(t),t}async uploadFile(e,t){var r;let i={};t!=null&&(i.mimeType=t.mimeType,i.name=t.name,i.displayName=t.displayName),i.name&&!i.name.startsWith("files/")&&(i.name=`files/${i.name}`);let o=this.clientOptions.uploader,s=await o.stat(e);i.sizeBytes=String(s.size);let c=(r=t?.mimeType)!==null&&r!==void 0?r:s.type;if(c===void 0||c==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");i.mimeType=c;let f=await this.fetchUploadUrl(i,t);return o.upload(e,f,this)}async fetchUploadUrl(e,t){var r;let i={};t?.httpOptions?i=t.httpOptions:i={apiVersion:"",headers:{"Content-Type":"application/json","X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${e.sizeBytes}`,"X-Goog-Upload-Header-Content-Type":`${e.mimeType}`}};let o={file:e},s=await this.request({path:K("upload/v1beta/files",o._url),body:JSON.stringify(o),httpMethod:"POST",httpOptions:i});if(!s||!s?.headers)throw new Error("Server did not return an HttpResponse or the returned HttpResponse did not have headers.");let c=(r=s?.headers)===null||r===void 0?void 0:r["x-goog-upload-url"];if(c===void 0)throw new Error("Failed to get upload url. Server did not return the x-google-upload-url in the headers");return c}};async function lh(n){var e;if(n===void 0)throw new yr("response is undefined");if(!n.ok){let t=n.status,r=n.statusText,i;!((e=n.headers.get("content-type"))===null||e===void 0)&&e.includes("application/json")?i=await n.json():i={error:{message:await n.text(),code:n.status,status:n.statusText}};let o=`got status: ${t} ${r}. ${JSON.stringify(i)}`;throw t>=400&&t<500?new oo(o):t>=500&&t<600?new yr(o):new Error(o)}}var ch="x-goog-api-key",cr="https://www.googleapis.com/auth/cloud-platform",ja=class{constructor(e){if(e.apiKey!==void 0){this.apiKey=e.apiKey;return}let t=ES(e.googleAuthOptions);this.googleAuth=new tE.GoogleAuth(t)}async addAuthHeaders(e){if(this.apiKey!==void 0){this.addKeyHeader(e);return}return this.addGoogleAuthHeaders(e)}addKeyHeader(e){if(e.get(ch)===null){if(this.apiKey===void 0)throw new Error("Trying to set API key header but apiKey is not set");e.append(ch,this.apiKey)}}async addGoogleAuthHeaders(e){if(this.googleAuth===void 0)throw new Error("Trying to set google-auth headers but googleAuth is unset");let t=await this.googleAuth.getRequestHeaders();for(let r in t)e.get(r)===null&&e.append(r,t[r])}};function ES(n){let e;if(n){if(e=n,e.scopes){if(typeof e.scopes=="string"&&e.scopes!==cr||Array.isArray(e.scopes)&&e.scopes.indexOf(cr)<0)throw new Error(`Invalid auth scopes. Scopes must include: ${cr}`)}else return e.scopes=[cr],e;return e}else return e={scopes:[cr]},e}var Za=class{create(e,t,r){return new Qa(e,t,r)}},Qa=class{constructor(e,t,r){this.url=e,this.headers=t,this.callbacks=r}connect(){this.ws=new iE.WebSocket(this.url,{headers:this.headers}),this.ws.onopen=this.callbacks.onopen,this.ws.onerror=this.callbacks.onerror,this.ws.onclose=this.callbacks.onclose,this.ws.onmessage=this.callbacks.onmessage}send(e){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.send(e)}close(){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.close()}};function vS(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],r);let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function TS(n,e,t){let r={},i=a(e,["pageSize"]);t!==void 0&&i!=null&&l(t,["_query","pageSize"],i);let o=a(e,["pageToken"]);t!==void 0&&o!=null&&l(t,["_query","pageToken"],o);let s=a(e,["filter"]);return t!==void 0&&s!=null&&l(t,["_query","filter"],s),r}function CS(n,e){let t={},r=a(e,["config"]);return r!=null&&l(t,["config"],TS(n,r,t)),t}function SS(n,e){let t={},r=a(e,["textInput"]);r!=null&&l(t,["textInput"],r);let i=a(e,["output"]);return i!=null&&l(t,["output"],i),t}function wS(n,e){let t={};if(a(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");let r=a(e,["examples"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>SS(n,o))),l(t,["examples","examples"],i)}return t}function AS(n,e,t){let r={};if(a(e,["validationDataset"])!==void 0)throw new Error("validationDataset parameter is not supported in Gemini API.");let i=a(e,["tunedModelDisplayName"]);if(t!==void 0&&i!=null&&l(t,["displayName"],i),a(e,["description"])!==void 0)throw new Error("description parameter is not supported in Gemini API.");let o=a(e,["epochCount"]);t!==void 0&&o!=null&&l(t,["tuningTask","hyperparameters","epochCount"],o);let s=a(e,["learningRateMultiplier"]);if(s!=null&&l(r,["tuningTask","hyperparameters","learningRateMultiplier"],s),a(e,["adapterSize"])!==void 0)throw new Error("adapterSize parameter is not supported in Gemini API.");let c=a(e,["batchSize"]);t!==void 0&&c!=null&&l(t,["tuningTask","hyperparameters","batchSize"],c);let f=a(e,["learningRate"]);return t!==void 0&&f!=null&&l(t,["tuningTask","hyperparameters","learningRate"],f),r}function xS(n,e){let t={},r=a(e,["baseModel"]);r!=null&&l(t,["baseModel"],r);let i=a(e,["trainingDataset"]);i!=null&&l(t,["tuningTask","trainingData"],wS(n,i));let o=a(e,["config"]);return o!=null&&l(t,["config"],AS(n,o,t)),t}function IS(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["_url","name"],r);let i=a(e,["config"]);return i!=null&&l(t,["config"],i),t}function RS(n,e,t){let r={},i=a(e,["pageSize"]);t!==void 0&&i!=null&&l(t,["_query","pageSize"],i);let o=a(e,["pageToken"]);t!==void 0&&o!=null&&l(t,["_query","pageToken"],o);let s=a(e,["filter"]);return t!==void 0&&s!=null&&l(t,["_query","filter"],s),r}function PS(n,e){let t={},r=a(e,["config"]);return r!=null&&l(t,["config"],RS(n,r,t)),t}function NS(n,e,t){let r={},i=a(e,["gcsUri"]);if(t!==void 0&&i!=null&&l(t,["supervisedTuningSpec","trainingDatasetUri"],i),a(e,["examples"])!==void 0)throw new Error("examples parameter is not supported in Vertex AI.");return r}function kS(n,e){let t={},r=a(e,["gcsUri"]);return r!=null&&l(t,["validationDatasetUri"],r),t}function bS(n,e,t){let r={},i=a(e,["validationDataset"]);t!==void 0&&i!=null&&l(t,["supervisedTuningSpec"],kS(n,i));let o=a(e,["tunedModelDisplayName"]);t!==void 0&&o!=null&&l(t,["tunedModelDisplayName"],o);let s=a(e,["description"]);t!==void 0&&s!=null&&l(t,["description"],s);let c=a(e,["epochCount"]);t!==void 0&&c!=null&&l(t,["supervisedTuningSpec","hyperParameters","epochCount"],c);let f=a(e,["learningRateMultiplier"]);t!==void 0&&f!=null&&l(t,["supervisedTuningSpec","hyperParameters","learningRateMultiplier"],f);let u=a(e,["adapterSize"]);if(t!==void 0&&u!=null&&l(t,["supervisedTuningSpec","hyperParameters","adapterSize"],u),a(e,["batchSize"])!==void 0)throw new Error("batchSize parameter is not supported in Vertex AI.");if(a(e,["learningRate"])!==void 0)throw new Error("learningRate parameter is not supported in Vertex AI.");return r}function MS(n,e){let t={},r=a(e,["baseModel"]);r!=null&&l(t,["baseModel"],r);let i=a(e,["trainingDataset"]);i!=null&&l(t,["supervisedTuningSpec","trainingDatasetUri"],NS(n,i,t));let o=a(e,["config"]);return o!=null&&l(t,["config"],bS(n,o,t)),t}function OS(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["model"],r);let i=a(e,["name"]);return i!=null&&l(t,["endpoint"],i),t}function xh(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["state"]);i!=null&&l(t,["state"],Eh(n,i));let o=a(e,["createTime"]);o!=null&&l(t,["createTime"],o);let s=a(e,["tuningTask","startTime"]);s!=null&&l(t,["startTime"],s);let c=a(e,["tuningTask","completeTime"]);c!=null&&l(t,["endTime"],c);let f=a(e,["updateTime"]);f!=null&&l(t,["updateTime"],f);let u=a(e,["description"]);u!=null&&l(t,["description"],u);let d=a(e,["baseModel"]);d!=null&&l(t,["baseModel"],d);let h=a(e,["_self"]);h!=null&&l(t,["tunedModel"],OS(n,h));let g=a(e,["distillationSpec"]);g!=null&&l(t,["distillationSpec"],g);let v=a(e,["experiment"]);v!=null&&l(t,["experiment"],v);let w=a(e,["labels"]);w!=null&&l(t,["labels"],w);let C=a(e,["pipelineJob"]);C!=null&&l(t,["pipelineJob"],C);let N=a(e,["tunedModelDisplayName"]);return N!=null&&l(t,["tunedModelDisplayName"],N),t}function DS(n,e){let t={},r=a(e,["nextPageToken"]);r!=null&&l(t,["nextPageToken"],r);let i=a(e,["tunedModels"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(s=>xh(n,s))),l(t,["tuningJobs"],o)}return t}function US(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["metadata"]);i!=null&&l(t,["metadata"],i);let o=a(e,["done"]);o!=null&&l(t,["done"],o);let s=a(e,["error"]);return s!=null&&l(t,["error"],s),t}function FS(n,e){let t={},r=a(e,["model"]);r!=null&&l(t,["model"],r);let i=a(e,["endpoint"]);return i!=null&&l(t,["endpoint"],i),t}function el(n,e){let t={},r=a(e,["name"]);r!=null&&l(t,["name"],r);let i=a(e,["state"]);i!=null&&l(t,["state"],Eh(n,i));let o=a(e,["createTime"]);o!=null&&l(t,["createTime"],o);let s=a(e,["startTime"]);s!=null&&l(t,["startTime"],s);let c=a(e,["endTime"]);c!=null&&l(t,["endTime"],c);let f=a(e,["updateTime"]);f!=null&&l(t,["updateTime"],f);let u=a(e,["error"]);u!=null&&l(t,["error"],u);let d=a(e,["description"]);d!=null&&l(t,["description"],d);let h=a(e,["baseModel"]);h!=null&&l(t,["baseModel"],h);let g=a(e,["tunedModel"]);g!=null&&l(t,["tunedModel"],FS(n,g));let v=a(e,["supervisedTuningSpec"]);v!=null&&l(t,["supervisedTuningSpec"],v);let w=a(e,["tuningDataStats"]);w!=null&&l(t,["tuningDataStats"],w);let C=a(e,["encryptionSpec"]);C!=null&&l(t,["encryptionSpec"],C);let N=a(e,["partnerModelTuningSpec"]);N!=null&&l(t,["partnerModelTuningSpec"],N);let k=a(e,["distillationSpec"]);k!=null&&l(t,["distillationSpec"],k);let G=a(e,["experiment"]);G!=null&&l(t,["experiment"],G);let L=a(e,["labels"]);L!=null&&l(t,["labels"],L);let q=a(e,["pipelineJob"]);q!=null&&l(t,["pipelineJob"],q);let F=a(e,["tunedModelDisplayName"]);return F!=null&&l(t,["tunedModelDisplayName"],F),t}function LS(n,e){let t={},r=a(e,["nextPageToken"]);r!=null&&l(t,["nextPageToken"],r);let i=a(e,["tuningJobs"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(s=>el(n,s))),l(t,["tuningJobs"],o)}return t}var tl=class extends Jt{constructor(e){super(),this.apiClient=e,this.get=async t=>await this.getInternal(t),this.list=async(t={})=>new Pn(I.PagedItem.PAGED_ITEM_TUNING_JOBS,r=>this.listInternal(r),await this.listInternal(t),t),this.tune=async t=>{if(this.apiClient.isVertexAI())return await this.tuneInternal(t);{let r=await this.tuneMldevInternal(t),i="";return r.metadata!==void 0&&r.metadata.tunedModel!==void 0?i=r.metadata.tunedModel:r.name!==void 0&&r.name.includes("/operations/")&&(i=r.name.split("/operations/")[0]),{name:i,state:I.JobState.JOB_STATE_QUEUED}}}}async getInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=IS(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>el(this.apiClient,d))}else{let u=vS(this.apiClient,e);return c=K("{name}",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>xh(this.apiClient,d))}}async listInternal(e){var t,r,i,o;let s,c="",f={};if(this.apiClient.isVertexAI()){let u=PS(this.apiClient,e);return c=K("tuningJobs",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),s.then(d=>{let h=LS(this.apiClient,d),g=new pr;return Object.assign(g,h),g})}else{let u=CS(this.apiClient,e);return c=K("tunedModels",u._url),f=u._query,delete u.config,delete u._url,delete u._query,s=this.apiClient.request({path:c,queryParams:f,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),s.then(d=>{let h=DS(this.apiClient,d),g=new pr;return Object.assign(g,h),g})}}async tuneInternal(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI()){let c=MS(this.apiClient,e);return o=K("tuningJobs",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>el(this.apiClient,f))}else throw new Error("This method is only supported by the Vertex AI.")}async tuneMldevInternal(e){var t,r;let i,o="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=xS(this.apiClient,e);return o=K("tunedModels",c._url),s=c._query,delete c.config,delete c._url,delete c._query,i=this.apiClient.request({path:o,queryParams:s,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),i.then(f=>US(this.apiClient,f))}}},Ih=1024*1024*8;async function qS(n,e,t){var r,i;let o=0,s=0,c=new Kt(new Response),f="upload";for(o=n.size;s<o;){let d=Math.min(Ih,o-s),h=n.slice(s,s+d);if(s+d>=o&&(f+=", finalize"),c=await t.request({path:"",body:h,httpMethod:"POST",httpOptions:{apiVersion:"",baseUrl:e,headers:{"X-Goog-Upload-Command":f,"X-Goog-Upload-Offset":String(s),"Content-Length":String(d)}}}),s+=d,((r=c?.headers)===null||r===void 0?void 0:r["x-goog-upload-status"])!=="active")break;if(o<=s)throw new Error("All content has been uploaded, but the upload status is not finalized.")}let u=await c?.json();if(((i=c?.headers)===null||i===void 0?void 0:i["x-goog-upload-status"])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return u.file}async function GS(n){return{size:n.size,type:n.type}}var nl=class{async stat(e){let t={size:0,type:void 0};if(typeof e=="string"){let r=await Hd.stat(e);return t.size=r.size,t.type=this.inferMimeType(e),t}else return await GS(e)}async upload(e,t,r){return typeof e=="string"?await this.uploadFileFromPath(e,t,r):qS(e,t,r)}inferMimeType(e){let t=e.slice(e.lastIndexOf(".")+1);return{aac:"audio/aac",abw:"application/x-abiword",arc:"application/x-freearc",avi:"video/x-msvideo",azw:"application/vnd.amazon.ebook",bin:"application/octet-stream",bmp:"image/bmp",bz:"application/x-bzip",bz2:"application/x-bzip2",csh:"application/x-csh",css:"text/css",csv:"text/csv",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",eot:"application/vnd.ms-fontobject",epub:"application/epub+zip",gz:"application/gzip",gif:"image/gif",htm:"text/html",html:"text/html",ico:"image/vnd.microsoft.icon",ics:"text/calendar",jar:"application/java-archive",jpeg:"image/jpeg",jpg:"image/jpeg",js:"text/javascript",json:"application/json",jsonld:"application/ld+json",kml:"application/vnd.google-earth.kml+xml",kmz:"application/vnd.google-earth.kmz+xml",mjs:"text/javascript",mp3:"audio/mpeg",mp4:"video/mp4",mpeg:"video/mpeg",mpkg:"application/vnd.apple.installer+xml",odt:"application/vnd.oasis.opendocument.text",oga:"audio/ogg",ogv:"video/ogg",ogx:"application/ogg",opus:"audio/opus",otf:"font/otf",png:"image/png",pdf:"application/pdf",php:"application/x-httpd-php",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",rar:"application/vnd.rar",rtf:"application/rtf",sh:"application/x-sh",svg:"image/svg+xml",swf:"application/x-shockwave-flash",tar:"application/x-tar",tif:"image/tiff",tiff:"image/tiff",ts:"video/mp2t",ttf:"font/ttf",txt:"text/plain",vsd:"application/vnd.visio",wav:"audio/wav",weba:"audio/webm",webm:"video/webm",webp:"image/webp",woff:"font/woff",woff2:"font/woff2",xhtml:"application/xhtml+xml",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",xml:"application/xml",xul:"application/vnd.mozilla.xul+xml",zip:"application/zip","3gp":"video/3gpp","3g2":"video/3gpp2","7z":"application/x-7z-compressed"}[t.toLowerCase()]}async uploadFileFromPath(e,t,r){var i,o;let s=0,c=0,f=new Kt(new Response),u="upload",d;try{if(d=await Hd.open(e,"r"),!d)throw new Error("Failed to open file");for(s=(await d.stat()).size;c<s;){let g=Math.min(Ih,s-c);c+g>=s&&(u+=", finalize");let v=new Uint8Array(g),{bytesRead:w}=await d.read(v,0,g,c);if(w!==g)throw new Error(`Failed to read ${g} bytes from file at offset ${c}. bytes actually read: ${w}`);let C=new Blob([v]);if(f=await r.request({path:"",body:C,httpMethod:"POST",httpOptions:{apiVersion:"",baseUrl:t,headers:{"X-Goog-Upload-Command":u,"X-Goog-Upload-Offset":String(c),"Content-Length":String(w)}}}),c+=w,((i=f?.headers)===null||i===void 0?void 0:i["x-goog-upload-status"])!=="active")break;if(s<=c)throw new Error("All content has been uploaded, but the upload status is not finalized.")}let h=await f?.json();if(((o=f?.headers)===null||o===void 0?void 0:o["x-goog-upload-status"])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return h.file}finally{d&&await d.close()}}};var BS="gl-node/",rl=class{constructor(e){var t,r,i,o,s;if((e.project||e.location)&&e.apiKey)throw new Error("Project/location and API key are mutually exclusive in the client initializer.");this.vertexai=(r=(t=e.vertexai)!==null&&t!==void 0?t:VS("GOOGLE_GENAI_USE_VERTEXAI"))!==null&&r!==void 0?r:!1;let c=Rn("GOOGLE_API_KEY"),f=Rn("GOOGLE_CLOUD_PROJECT"),u=Rn("GOOGLE_CLOUD_LOCATION");this.apiKey=(i=e.apiKey)!==null&&i!==void 0?i:c,this.project=(o=e.project)!==null&&o!==void 0?o:f,this.location=(s=e.location)!==null&&s!==void 0?s:u,e.vertexai&&((f||u)&&e.apiKey?(console.debug("The user provided Vertex AI API key will take precedence over the project/location from the environment variables."),this.project=void 0,this.location=void 0):(e.project||e.location)&&c?(console.debug("The user provided project/location will take precedence over the API key from the environment variables."),this.apiKey=void 0):(f||u)&&c&&(console.debug("The project/location from the environment variables will take precedence over the API key from the environment variables."),this.apiKey=void 0));let d=aE(e,Rn("GOOGLE_VERTEX_BASE_URL"),Rn("GOOGLE_GEMINI_BASE_URL"));d&&(e.httpOptions?e.httpOptions.baseUrl=d:e.httpOptions={baseUrl:d}),this.apiVersion=e.apiVersion;let h=new ja({apiKey:this.apiKey,googleAuthOptions:e.googleAuthOptions});this.apiClient=new Xa({auth:h,project:this.project,location:this.location,apiVersion:this.apiVersion,apiKey:this.apiKey,vertexai:this.vertexai,httpOptions:e.httpOptions,userAgentExtra:BS+process.version,uploader:new nl}),this.models=new ro(this.apiClient),this.live=new to(this.apiClient,h,new Za),this.chats=new Zi(this.models,this.apiClient),this.caches=new Xi(this.apiClient),this.files=new eo(this.apiClient),this.operations=new io(this.apiClient),this.tunings=new tl(this.apiClient)}};function Rn(n){var e,t,r;return(r=(t=(e=process==null?void 0:process.env)===null||e===void 0?void 0:e[n])===null||t===void 0?void 0:t.trim())!==null&&r!==void 0?r:void 0}function VS(n){return HS(Rn(n))}function HS(n){return n===void 0?!1:n.toLowerCase()==="true"}I.Caches=Xi;I.Chat=Qi;I.Chats=Zi;I.ComputeTokensResponse=Ji;I.CountTokensResponse=hr;I.CreateFileResponse=Yi;I.DeleteCachedContentResponse=gr;I.DeleteFileResponse=zi;I.DeleteModelResponse=dr;I.EmbedContentResponse=ur;I.Files=eo;I.FunctionResponse=Ga;I.GenerateContentResponse=Wt;I.GenerateContentResponsePromptFeedback=Va;I.GenerateContentResponseUsageMetadata=Ha;I.GenerateImagesResponse=fr;I.GenerateVideosResponse=$a;I.GoogleGenAI=rl;I.HttpResponse=Kt;I.ListCachedContentsResponse=mr;I.ListFilesResponse=Ki;I.ListTuningJobsResponse=pr;I.Live=to;I.LiveClientToolResponse=Ja;I.LiveSendToolResponseParameters=Ka;I.Models=ro;I.Operations=io;I.Pager=Pn;I.ReplayResponse=Wa;I.Session=no;I.createModelContent=ZE;I.createPartFromBase64=YE;I.createPartFromCodeExecutionResult=zE;I.createPartFromExecutableCode=XE;I.createPartFromFunctionCall=JE;I.createPartFromFunctionResponse=KE;I.createPartFromText=Ba;I.createPartFromUri=WE;I.createUserContent=jE;I.setDefaultBaseUrls=oE});export default $S();
|
|
49
|
-
/*! Bundled license information:
|
|
50
|
-
|
|
51
|
-
safe-buffer/index.js:
|
|
52
|
-
(*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
|
|
53
|
-
|
|
54
|
-
@google/genai/dist/node/index.js:
|
|
55
|
-
(**
|
|
56
|
-
* @license
|
|
57
|
-
* Copyright 2025 Google LLC
|
|
58
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
59
|
-
*)
|
|
60
|
-
*/
|